Sadržaj:

MRI otkrivanje tumora mozga pomoću Matlaba: 6 koraka
MRI otkrivanje tumora mozga pomoću Matlaba: 6 koraka

Video: MRI otkrivanje tumora mozga pomoću Matlaba: 6 koraka

Video: MRI otkrivanje tumora mozga pomoću Matlaba: 6 koraka
Video: МРТ головного мозга при эпилепсии 2024, Srpanj
Anonim
MRI otkrivanje tumora mozga pomoću Matlaba
MRI otkrivanje tumora mozga pomoću Matlaba

Napisali: Madhumita Kannan, Henry Nguyen, Ashley Urrutia Avila, Mei Jin

Ovaj MATLAB kôd je program za otkrivanje točne veličine, oblika i mjesta tumora koji se nalazi u MR snimci pacijenta. Ovaj je program osmišljen tako da izvorno radi s otkrivanjem tumora u MRI snimkama mozga, ali se također može koristiti za dijagnostiku raka i kod drugih organa.

Sljedeće upute prvo će opisati metode za analizu slike filtriranjem i čišćenjem MRI skeniranja, binarniziranjem, medijanskim filtriranjem i kliznim prozorima. Zatim će uputiti kako izolirati tumor pomoću unaprijed generirane eliptične maske, te ga dodatno filtrirati kako bi ocrtao opseg oblika tumora.

Nakon što se tumor otkrije, upute će dodatno opisati kako ovaj program uključiti u grafičko korisničko sučelje (GUI). Kroz ove upute bit će priloženi odgovarajući kôd i datoteke koje će vam pomoći objasniti kako ova analiza MRI skeniranja funkcionira.

Neke stvari morate znati, preuzeti i pripremiti prije nego nastavite s ovim uputama: 1. Obavezno preuzmite najnoviju verziju programa MATLAB. R2018b možete instalirati ovdje:

2. Da biste pokrenuli ovaj program, morate imati pristup datotekama za skeniranje mozga MRI. Iako se neke uvijek mogu pronaći na Google slikama, temeljita i točna analiza može se provesti na temelju odgovarajućih slika različitih slojeva skeniranja mozga za svakog pacijenta. Datotekama za 20 različitih pacijenata s glioblastomom prije i poslije liječenja možete pristupiti iz ove baze podataka:

3. Fokus ovog programa i različite metode koje vode ovaj projekt navedene su u ovom istraživačkom radu:

Korak 1: Pokrenite grafičko korisničko sučelje (GUI)

Pokretanje grafičkog korisničkog sučelja (GUI)
Pokretanje grafičkog korisničkog sučelja (GUI)
Pokretanje grafičkog korisničkog sučelja (GUI)
Pokretanje grafičkog korisničkog sučelja (GUI)

Prvi korak bio bi stvaranje i pokretanje grafičkog korisničkog sučelja, grafičkog sučelja. To se može učiniti upisivanjem vodiča u naredbeni prozor, pritiskom na enter i stvaranjem novog grafičkog sučelja. Nakon što je ovaj korak dovršen, možete početi stvarati funkcije poput osi, statičkog teksta, uređivati tekst i gumbe koji će se prikazati nakon pokretanja programa i interakcije s korisnikom. Ovim se funkcijama može uređivati i upravljati putem inspektora svojstava, no najvažnija značajka koja se mora promijeniti pri stvaranju ovih funkcija je naziv oznake. Važno je promijeniti naziv oznake svake implementirane funkcije jer će nam omogućiti stvaranje prepoznatljive funkcije povratnog poziva. Nakon što ste zadovoljni izgledom svog grafičkog sučelja, možete prijeći na učitavanje datoteka DICOM koje će se prikazati unutar grafičkog sučelja.

Korak 2: Učitavanje i čitanje MRI slika u MATLAB -u

Učitavanje i čitanje MRI slika u MATLAB -u
Učitavanje i čitanje MRI slika u MATLAB -u
Učitavanje i čitanje MRI slika u MATLAB -u
Učitavanje i čitanje MRI slika u MATLAB -u

Da biste učitali DICOM datoteke, morate ispravno inicijalizirati funkciju povratnog poziva koja bi se izvršila pritiskom na gumb "Učitaj MRI sliku". Nakon što je ovo dovršeno, morate stvoriti globalnu varijablu koja bi sliku prikazivala na osama ručica na kojoj želite prikazati izvornu MRI sliku. Slike MR skeniranja preuzete iz baze podataka sve su datoteke u DICOM formatu koje je potrebno učitati u vaš MATLAB imenik. Pronađite datoteku pomoću imgetfile kako biste ih učitali u program. Slike se čitaju pomoću ugrađene MATLAB funkcije 'dicomread', a prva neobrađena slika za svaku datoteku ugrađuje se u lijeve osi grafičkog sučelja pomoću imshow -a.

Ugrađena MATLAB funkcija ‘dicominfo’ također je iznimno korisna u adresiranju svih informacija svake MRI dicom datoteke. Koristili smo ovu funkciju za izdvajanje svih opisnih podataka pacijenata, kao što su njihov spol, dob, težina i visina. Ova funkcija vam također pruža redoslijed slaganja koji je koristan za implementaciju programa unutar grafičkog korisničkog sučelja. Za svaku opisnu informaciju o pacijentima stvorili smo varijable koje će se koristiti za grafičko sučelje kad se pritisne tipka za otkrivanje.

Korak 3: Filtriranje slike

Filtriranje slike
Filtriranje slike
Filtriranje slike
Filtriranje slike

Nakon što se DICOM datoteka neobrađene slike učita i pročita, sliku je potrebno pretvoriti iz sive u binarni oblik koji se sastoji samo od crno -bijelih piksela Koristili smo funkciju 'imbinarize' za izradu binarne slike od neobrađene slike pomoću kontroliranje aspekata adaptivnog praga pri vrijednosti osjetljivosti 0,59. Zadani prag osjetljivosti faktor 0,5 bio je nizak i nije mogao otkriti svjetlije mrlje i mrlje sa slike pa smo ga povećali na 0,59.

Binarna slika zatim se obrađuje kroz medijanski filter pomoću funkcije 'medfilt2' jer je binarna slika dvodimenzionalna. Postavili smo svaki izlazni piksel tako da sadrži medijansku vrijednost u susjedstvu 5 x 5 oko odgovarajućeg piksela na ulaznoj binarnoj slici. Time se smanjuje šum i zadržavaju rubovi u kvadratu 5 x 5 oko svakog piksela. Zatim primjenjujemo klizni prozor pomoću "strela" kako bismo stvorili ravni strukturirajući element u obliku diska s polumjerom susjedstva 2 za identifikaciju svakog središnjeg piksela polazišta u svakom susjedstvu diska. Koristili smo element za strukturiranje diska jer analiziramo svako kružno mjesto i piksele unutar svakog mjesta, pa je element oblika diska korisniji.

Kad se slika filtrira, može se očistiti pomoću funkcije 'imclose' kako bi se uklonile crne mrlje između filtriranih bijelih piksela na slici i zatvorile sve praznine oko nje. Potpuno obrađena slika tada se može iscrtati u drugom podcrtu unaprijed dodijeljene slike, dopuštajući usporedbu između neobrađene i filtrirane slike.

Korak 4: Izolacija tumora eliptičnom maskom

Izolacija tumora putem eliptične maske
Izolacija tumora putem eliptične maske
Izolacija tumora putem eliptične maske
Izolacija tumora putem eliptične maske
Izolacija tumora putem eliptične maske
Izolacija tumora putem eliptične maske

Svijetle točke tumora tada se mogu izolirati iz glavne filtrirane slike putem unaprijed generirane eliptične maske. Da biste stvorili ovu masku, trebali biste znati veličinu izvorne, neobrađene slike skeniranja magnetskom rezonancom, a koristeći duljinu retka i stupca, po x i y koordinatama, dodijelite središnje koordinate za eliptičnu. Os Y smo postavili kao glavnu os s radijusom od 50 jedinica od središta, a sporednu os s radijusom od 40 jedinica od središta.

Koristili smo MATLAB funkciju 'meshgrid' za generiranje kartezijanske ravnine s dvodimenzionalnom koordinatom mreže na temelju koordinata sadržanih u vektorima od 1 do duljine osi x i od 1 do duljine osi y slike. Col je matrica u kojoj je svaki redak kopija osi x, a Row je matrica u kojoj je svaki stupac kopija osi y. Dekartova mreža predstavljena koordinatama Col i Row ima redove duljine (1: Y_Size) i duljinu (1: X_Size). Pomoću indeksa Col i Row koje generira kartezijanska mreža odredite jednadžbu elipse ovisno o unaprijed određenom radijusu i središnjim koordinatama. Eliptični obris sada se može ispuniti bijelim pikselima pronađenim na tumorskim mrljama.

Korištenjem unaprijed generirane eliptične maske možemo iz filtrirane slike izrezati određeni tumor koji želite analizirati. Eliptična maska detektira koja se mjesta logički uklapaju u obris elipse i prihvaća to kao mjesto na filtriranoj slici da bi bilo prihvatljivo kao tumor. Funkcija "bwareafilt" zatim filtrira sve ostale objekte izvan ovog otkrivenog tumora sa slike. Koristili smo određeni prozor dimenzija 500 x 4000 empirijski na temelju dimenzija svih slika. Zatim smo primijenili još jedan klizni prozor sa "strelom" kao elementom za strukturiranje u obliku ravnog diska većeg radijusa susjedstva od 6, kako bismo zatvorili praznine između svakog središnjeg bijelog piksela unutar otkrivenog tumora. Otkriveno mjesto tumora dodatno se čisti pomoću „imclose“kako bi se dodatno uklonili crni pikseli i sve rupe ispunile „imfill“. Ovaj obrađeni tumor tada se može prikazati u trećoj podcrti na unaprijed dodijeljenoj plohi kako bi se pružila usporedba između izoliranog tumora i izvornih i filtriranih slika MRI skeniranja.

Korak 5: Opis tumora

Pregled tumora
Pregled tumora
Pregled tumora
Pregled tumora

Sada kada je tumor izoliran maskom, može se ocrtati i prikazati na izvornoj slici, kako bi se pokazalo njegovo točno mjesto. Da bismo to učinili, upotrijebili smo funkciju 'bwboundaries' za ocrtavanje prethodno otkrivenog tumora s obrisom. Naveli smo da nacrt ne uključuje rupe unutar tumorskog objekta kako se ocrtava. To se može iscrtati na izvornoj, sirovoj slici, pomoću "for" petlje koja iscrtava obris oko tumora pomoću indeksa linije s širinom crte od 1,5 piksela. Ovaj se obris zatim iscrtava na sirovoj slici, prikazujući točnu veličinu i mjesto tumora, u odnosu na izvorno snimanje magnetskom rezonancom.

Korak 6: Analiza fizikalnih svojstava tumora

Analiza fizikalnih svojstava tumora
Analiza fizikalnih svojstava tumora
Analiza fizikalnih svojstava tumora
Analiza fizikalnih svojstava tumora

Izolirano i ocrtano mjesto može nam pružiti korisne informacije o veličini, površini i lokaciji tumora. Koristili smo funkciju "regionprops" za otkrivanje svojstava tumora koja se odnose na područje, obod, centroide i vrijednost indeksa piksela. Ova vrijednost indeksa piksela daje nam jedinice stvarnog svijeta za svaki piksel svake slike, jedinstvene za svako skeniranje. Ta se svojstva tada mogu pretvoriti u jedinice milimetara u stvarnom svijetu. Empirijske informacije koje nam program pruža jedinstvene su za svako snimanje magnetskom rezonancom i iznimno su korisne u određivanju veličine, lokacije i vrste tumora koje korisnici mogu analizirati i uključiti u grafičko korisničko sučelje.

Preporučeni: