Obsah:
- Krok 1: Organizace údajů z mamogramu
- Krok 2: Zpracování obrazu
- Krok 3: Prahový kód
- Krok 4: Hledání abnormalit pro každý binární obrázek
- Krok 5: Vykreslení diagnostikované hmotnosti a umístění pro vizuální srovnání
- Krok 6: Implementace druhé srovnávací metody
- Krok 7: Analýza shromážděných dat
- Krok 8: Vytvoření vlastního klasifikátoru
- Krok 9: Vylepšení? Nějaké nápady?
Video: Použití různých prahových hodnot intenzity šedé stupnice k vizualizaci a identifikaci abnormalit na mamografických obrázcích: 9 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Účelem tohoto projektu bylo identifikovat a použít parametr ke zpracování obrazů mamogramu ve stupních šedi různých klasifikací tkáně pozadí: mastné, mastné žlázové a husté tkáně. Tato klasifikace se používá, když radiologové analyzují mamografy a musí zvážit, zda hustota tkáně zakryje jakékoli abnormality, jako jsou léze nebo nádory. Důvodem je, že jak normální fyziologické struktury, jako je žlázová tkáň, tak vláknitá pojivová tkáň. a abnormální morfologie, jako jsou kalcifikace a nádory, budou na mamografu vypadat velmi jasně, zatímco méně hustá tuková tkáň bude vypadat černá. Proto bylo vhodné naprogramovat klasifikátor, který dokáže manipulovat s úrovněmi intenzity pixelů, aby co nejlépe vizualizoval a identifikoval masy.
Krok 1: Organizace údajů z mamogramu
Jedna z prvních věcí, které jsem si uvědomil, že musím zvládnout, byla organizace dat velmi jasným, stručným a přístupným způsobem. Toto jsou proměnné, které jsem extrahoval z databáze mammogramů mini-MIAS. Vytvořil jsem dvě pole. Jeden obsahující 4 sloupce:
- Číslo obrázku:
- x souřadnice hmotnosti
- y souřadnice hmotnosti
- Hmotnostní poloměr: (Toto definovalo přibližnou velikost hmotnosti
Druhé pole obsahovalo informace o klasifikaci:
- Typ tkáně na pozadí: Mastný (F), Mastný žlázový (G), Hustý (D)
- Popis hmoty: Dobře definovaný (CIRC), spiculated (SPIC), špatně definovaný jiný (MISC) Architektonické zkreslení (ARCH), Asymetrie (ASYM), Normální (NORM)
- Diagnózy: Benigní (B), Maligní (M)
Jelikož cílem tohoto projektu bylo určit nejlepší prahovou hodnotu pro každý typ tkáně pozadí, nebyly všechny informace nutné. Svůj projekt však můžete rozšířit o analýzu textur a otestovat svůj klasifikátor proti známým hromadným popisům.
Boční poznámka: Databáze, ze které jsem získal diagnostikované obrázky mamografu, uspořádala informace o každém mamografu do textového souboru odděleného od obrázků. Bylo pro mě mírně obtížné extrahovat data z textového souboru a organizovat je do polí, ale následující odkaz byl velmi užitečný při zjišťování toho všeho. Případně stačí upravit kód, který jsem vložil výše, pro vaše účely.
Formát souboru mamogramu: mdb001 G CIRC B 535 425 197
mdb002 G CIRC B 522 280 69
Nápověda TextScan: https://www.mathworks.com/help/matlab/ref/textsca…Mammogramová databáze:
Krok 2: Zpracování obrazu
Druhá věc, která přišla, když jsem zjišťoval, jak identifikovat masy, bylo to, že u mnoha abnormálních mamografů jsem nemohl vizuálně zjistit, kde je ta abnormalita nebo jak velká je. Vzhledem k tomu, že nejsem zkušený radiolog, se to očividně očekávalo. Nejjednodušší způsob, jak najít abnormality (podle mého dlouhého vyhledávání na Googlu), bylo podívat se na koncentrace světlých a tmavých oblastí. Primárně jsem použil funkci adapthisteq k vylepšení kontrastu obrazu a poté imbinarizaci k převodu obrazu na binární obraz k experimentování s různými prahovými úrovněmi.
- adapthisteq: Tato funkce transformuje hodnoty intenzity obrázků ve stupních šedi a rgb pomocí adaptivního vyrovnávání histogramu s omezeným kontrastem. Jinými slovy, upravuje histogram hodnot intenzity na určený typ distribuce. Odkaz na mathworks pro tuto funkci je přiložen níže pro další čtení.
- imbinarize: vytvoří binární obraz z obrázku v šedém měřítku přiřazením všech pixelů nad určitou intenzitou k 1 s a pixelů pod touto hodnotou a 0. Tuto funkci jsem použil k testování optimálního prahu pro snížení šumu pozadí tkáně.
Krok 3: Prahový kód
K binarizaci mamografu s různými prahovými hodnotami se používá smyčka for. Aby byl obraz větší, smyčka for obsahuje kód od kroku 3 do kroku 7. Takže každý binární obraz bude analyzován na abnormality. Tato smyčka for je navíc uzavřena v jiné smyčce for, která importuje nový obrázek mamografu z databáze v každé iteraci.
Krok 4: Hledání abnormalit pro každý binární obrázek
Dále jsem zpracoval binární obrázky pomocí funkce strel ve spojení s imopen, abych odstranil šum pozadí. Binární obraz z předchozího kroku je invertován a filtrován pomocí sousedství definovaného SE. Pak jsem použil bwlabel k označení všech oblastí, které měly alespoň 8 připojených pixelů.
Funkce regionálních rekvizit byla použita k nalezení těžiště a plošných vlastností každého místa identifikovaného bwlabelem.
Poté byla pomocí ismember identifikována všechna místa větší než 500 pixelů. Centroidy pro identifikovaná místa byly vyneseny na obrázek, který zobrazoval pouze skvrny větší v ploše než 500. Plocha identifikována = ismember (Označeno, indicies (tříděné oblasti> 500)); Spots = Identified> 0;
Krok 5: Vykreslení diagnostikované hmotnosti a umístění pro vizuální srovnání
Chtěl jsem zjistit, zda jsou skvrny nalezené bwlabelem správné. Udělal jsem to dvěma způsoby. Nejprve jsem analyzoval přesnost svého klasifikátoru vizuálním porovnáním. Jednoduše jsem do předem zpracovaného mamografického obrázku zakreslil skutečnou velikost a umístění abnormality (červený kruh) a místo určené kódem (modré x). Šest výše uvedených obrázků ukazuje účinky zvýšení prahové hodnoty ve stupních šedi.
Krok 6: Implementace druhé srovnávací metody
Druhým způsobem, jak jsem testoval klasifikátor a prahové hodnoty, bylo zjistit, zda umístění nalezená klasifikátorem byla v určité vzdálenosti od diagnostikovaných souřadnic abnormality. Prahové hodnoty, pro které byl alespoň jeden z identifikovaných bodů v rozmezí 1,5*r, jsem uložil ze známé abnormality do samostatného textového souboru s názvem Mammogram Data. Účelem bylo najít minimální práh potřebný pro můj klasifikátor k identifikaci abnormality.
Krok 7: Analýza shromážděných dat
Spustil jsem program na všech abnormálních mamografických obrázcích a zůstal mi obrovský textový soubor dat. Abych našel nejlepší práh pro každý typ tkáně, uspořádal jsem data podle typu tkáně a vynesl histogram prahových hodnot pro každý typ tkáně. Bylo rozhodnuto o správné prahové hodnotě, která prahová hodnota poskytuje nejpřesnější výsledky pro každý typ tkáně. Tato data jsem uložil k nahrání do mého klasifikátoru.
Krok 8: Vytvoření vlastního klasifikátoru
Poté, co jsem našel nejvhodnější prahové hodnoty pro každý typ tkáně, upravil jsem svůj původní kód tak, aby uživatel zadal číslo obrázku a typ tkáně a vybral prahovou hodnotu pro snímek mamografu. Poté jsem vykreslil diagnostikovanou polohu mamografu s nalezenými místy na původních mamografických obrázcích. Chtěl jsem to udělat zábavnějším, proto jsem naprogramoval funkci oříznutí kruhové oblasti kolem ROI. Uživatel bude instruován, aby si vybral středový bod a několik bodů, které nejlépe pokrývají ROI. Zde jsem připojil oba soubory matlabu.
Krok 9: Vylepšení? Nějaké nápady?
Když jsem psal tento instruktáž, začínám vidět mnoho vylepšení, která bych mohl udělat pro klasifikátor, jako je hledání způsobů, jak rozlišovat mezi různými typy hmot identifikovaných na základě analýzy textur nebo zlepšení mého testování sekce přesnosti SandBoxProject. soubor. Protože se jednalo o projekt s konečným termínem, musel jsem se někde zastavit, ale doufám, že budu schopen využít dovednosti zpracování obrazu, které jsem se naučil v jiných aplikacích. Také jsem připojil soubor, který byl použit k dávkovému zpracování všech abnormálních obrazů mamografu.
Doporučuje:
Jak převést jakýkoli mediální soubor do různých formátů: 6 kroků
Jak převést jakýkoli mediální soubor do různých formátů: Existují různé převaděče mediálních souborů, které můžeme použít. Na webu je můj oblíbený online převodník médií: http: //www.mediaconverter.orgV tomto jednoduchém tutoriálu použijeme „Format Factory“, což je úžasný univerzální převaděč multimediálních souborů
Stolní reproduktor Bluetooth se zvukovou vizualizací, dotykovými tlačítky a NFC: 24 kroků (s obrázky)
Stolní reproduktor Bluetooth se zvukovou vizualizací, dotykovými tlačítky a NFC: Dobrý den! V tomto Instructables ukážu, jak jsem vyrobil tento stolní Bluetooth reproduktor, který má úžasnou vizualizaci zvuku s dotykovými tlačítky a NFC. Lze snadno spárovat se zařízeními podporujícími NFC pouhým klepnutím. Neexistují žádná fyzická tlačítka
Stolní zesilovač se zvukovou vizualizací, binárními hodinami a FM přijímačem: 8 kroků (s obrázky)
Stolní zesilovač se zvukovou vizualizací, binárními hodinami a FM přijímačem: Mám rád zesilovače a dnes se podělím o svůj nízkoenergetický stolní zesilovač, který jsem nedávno vyrobil. Zesilovač, který jsem navrhl, má několik zajímavých funkcí. Má integrované binární hodiny a může udávat čas a datum a může vizualizovat zvuk často nazývaný audio
Vytvořte vyskakovací text na instruktabilních obrázcích: 7 kroků
Vytvořit vyskakovací text na obrázcích s instrukcemi: Obrázky na instruktážích mají funkci, ve které vysunou text, když přesunete myš nad vyznačené oblasti obrázků. Toto se používá k označení zvláště zajímavých částí obrázku. Je to docela příjemná funkce a někdo se přesně zeptal
Docela dobrá poštovní stupnice ze starých CD: 8 kroků (s obrázky)
Docela dobrá poštovní váha ze starých disků CD: Se čtyřmi starými disky CD můžete vytvořit docela dobrou poštovní váhu, která dokáže přečíst až 85 gramů. Jedná se o adaptaci designu pro měřítko vyrobené z pohlednice, kancelářské sponky, a mince od Arvinda Gupty. K vidění je zde. Můžete si prohlédnout