Talaan ng mga Nilalaman:

Paggamit ng Varying Gray Scale Intensity Thresholds upang Mailarawan at Makilala ang Mga Hindi Karaniwan sa Mga Larawan ng Mammogram: 9 Mga Hakbang
Paggamit ng Varying Gray Scale Intensity Thresholds upang Mailarawan at Makilala ang Mga Hindi Karaniwan sa Mga Larawan ng Mammogram: 9 Mga Hakbang

Video: Paggamit ng Varying Gray Scale Intensity Thresholds upang Mailarawan at Makilala ang Mga Hindi Karaniwan sa Mga Larawan ng Mammogram: 9 Mga Hakbang

Video: Paggamit ng Varying Gray Scale Intensity Thresholds upang Mailarawan at Makilala ang Mga Hindi Karaniwan sa Mga Larawan ng Mammogram: 9 Mga Hakbang
Video: According to Promise. Of Salvation, Life, and Eternity | Charles H. Spurgeon | Free Audiobook 2024, Hulyo
Anonim
Paggamit ng Varying Grey Scale Intensity Thresholds upang Mailarawan at Makilala ang Mga Hindi Karaniwan sa Mga Larawan ng Mammogram
Paggamit ng Varying Grey Scale Intensity Thresholds upang Mailarawan at Makilala ang Mga Hindi Karaniwan sa Mga Larawan ng Mammogram

Ang layunin ng proyektong ito ay upang makilala at gumamit ng isang parameter upang maproseso ang mga grayscale mammogram na imahe ng iba't ibang mga pag-uuri ng background tissue: Fatty, Fatty Glandular, & Dense Tissue. Ginagamit ang pag-uuri na ito kapag pinag-aaralan ng mga radiologist ang mga mammogram at kailangang isaalang-alang kung maitatakpan ng density ng tisyu ang anumang mga abnormalidad tulad ng mga sugat o tumor. Ito ay sapagkat ang parehong normal na mga istrakturang pisyolohikal tulad ng glandular tissue at fibrous connective tissue. at mga abnormal na morpolohiya tulad ng mga calipikasyon at mga bukol ay lilitaw na napakaliwanag sa mammogram habang ang hindi gaanong siksik na fatty tissue ay lilitaw na itim. Samakatuwid, angkop na mag-program ng isang classifier na maaaring manipulahin ang mga antas ng lakas ng pixel upang pinakamahusay na mailarawan at makilala ang mga masa.

Hakbang 1: Pagsasaayos ng Data ng Mammogram

Pagsasaayos ng Data ng Mammogram
Pagsasaayos ng Data ng Mammogram

Isa sa mga unang bagay na napagtanto kong kailangan kong hawakan ay ang pag-aayos ng data sa isang napakalinaw, maikli, at madaling ma-access na paraan. Ito ang mga variable na nakuha ko mula sa mini-MIAS Database ng mammograms. Gumawa ako ng dalawang arrays. Isa na naglalaman ng 4 na haligi:

  1. Numero ng Larawan:
  2. x coordinate ng masa
  3. y coordinate ng misa
  4. Mass Radius: (Tinukoy nito ang isang tinatayang laki para sa masa

Naglalaman ang pangalawang array ng impormasyon sa pag-uuri:

  1. Uri ng Background Tissue: Fatty (F), Fatty Glandular (G), Dense (D)
  2. Paglalarawan ng Mass: Maayos na tinukoy (CIRC), spikulado (SPIC), hindi tinukoy na iba pang (MISC) Architectural distortion (ARCH), Asymmetry (ASYM), Normal (NORM)
  3. Mga Diagnosis: Benign (B), Malignant (M)

Dahil ang layunin ng proyektong ito ay upang matukoy ang pinakamahusay na threshold para sa bawat uri ng background tissue hindi lahat ng impormasyon ay kinakailangan. Gayunpaman, maaari mong palawakin ang iyong proyekto upang isama ang pagtatasa ng texture at subukan ang iyong classifier laban sa mga kilalang paglalarawan ng masa.

Paalala: Ang database kung saan nakuha ko ang na-diagnose na Mammogram Images na inayos ang impormasyon tungkol sa bawat mammogram sa isang text file na hiwalay sa mga imahe. Medyo mahirap para sa akin na kunin ang data mula sa isang text file at ayusin sa mga form ng array, ngunit ang sumusunod na link ay lubos na kapaki-pakinabang sa pag-alam sa lahat ng iyon. Bilang kahalili, ayusin lamang ang code na na-paste ko sa itaas para sa iyong mga layunin.

Format ng File ng Mammogram: mdb001 G CIRC B 535 425 197

mdb002 G CIRC B 522 280 69

Tulong sa TextScan: https://www.mathworks.com/help/matlab/ref/textsca…Mammogram Database:

Hakbang 2: Pagpoproseso ng Larawan

Pagpoproseso ng Larawan
Pagpoproseso ng Larawan

Sa gayon, ang pangalawang bagay na nagmula noong naisip ko kung paano makilala ang masa ay para sa maraming mga abnormal na mammogram na hindi ko masabi kung saan ang abnormalidad o kung gaano ito kalaki. Malinaw na, dahil hindi ako isang bihasang radiologist, inaasahan ito. Gayunpaman, ang pinaka-prangkang paraan upang makahanap ng mga abnormalidad (ayon sa aking mahabang paghahanap sa google) ay ang pagtingin sa mga konsentrasyon ng maliwanag at madilim na mga lugar. Pangunahin kong ginamit ang pagpapaandar ng adapthisteq upang mapahusay ang kaibahan ng imahe at pagkatapos ay i-imbinarize upang i-convert ang imahe sa isang binary na imahe upang mag-eksperimento sa iba't ibang mga antas ng threshold.

  1. adapthisteq: Ang pagpapaandar na ito ay nagbabago ng mga halaga ng intensity ng grayscale at rgb na mga imahe gamit ang kaibahan na limitadong adaptive histogram equalization. Sa madaling salita, inaayos nito ang histogram ng mga halaga ng intensity sa isang tinukoy na uri ng pamamahagi. Ang link ng matematika para sa pagpapaandar na ito ay nakakabit sa ibaba para sa karagdagang pagbabasa.
  2. imbinarize: lumilikha ng isang binary na imahe mula sa isang kulay-abo na imahe ng scale sa pamamagitan ng pagtatalaga ng lahat ng mga pixel sa itaas ng isang tiyak na intenisty sa 1s at ang mga pixel sa ibaba na nagkakahalaga ng isang 0. Ginamit ko ang pagpapaandar na ito upang subukan ang pinakamainam na threshold upang mabawasan ang ingay ng background tissue.

Hakbang 3: Thresholding Code

Code ng Threshold
Code ng Threshold

Ang isang para sa loop ay ginagamit upang mai-binarize ang mammogram na may iba't ibang mga threshold. Upang magbigay ng isang mas malaking pagtingin sa larawan, ang for loop ay naglalaman ng code mula Hakbang 3 hanggang Hakbang 7. Kaya't ang bawat imaheng binary ay susuriin para sa mga abnormalidad. Bilang karagdagan, ito para sa loop ay nakapaloob sa isa pang para sa loop na nag-import ng isang bagong imahe ng mammogram mula sa database sa bawat pag-ulit.

Hakbang 4: Paghanap ng Mga Hindi Karaniwan para sa Bawat Imahe ng Binary

Paghanap ng Mga Abnormalidad para sa Bawat Imahe ng Binary
Paghanap ng Mga Abnormalidad para sa Bawat Imahe ng Binary
Paghanap ng Mga Abnormalidad para sa Bawat Imahe ng Binary
Paghanap ng Mga Abnormalidad para sa Bawat Imahe ng Binary

Pinroseso ko pa ang mga binary na imahe gamit ang strel function kasabay ng imopen upang alisin ang ingay sa background. Ang binary na imahe mula sa nakaraang hakbang ay baligtad at nasala gamit ang kapitbahayan na tinukoy ng SE. Pagkatapos ay ginamit ko ang bwlabel upang lagyan ng label ang anumang mga lugar na mayroong hindi bababa sa 8 na konektadong mga pixel.

Ang pagpapaandar ng props ng rehiyon ay ginamit upang hanapin ang centroid at mga katangian ng lugar ng bawat lugar na kinilala ng bwlabel.

Pagkatapos lahat ng mga spot na mas malaki sa 500 pixel ay nakilala gamit ang ismember. Ang mga centroids para sa mga natukoy na spot ay naka-plot sa isang imahe na ipinakita lamang ang mga spot na mas malaki sa lugar kaysa sa 500. Area Identified = ismember (Labeled, nagpapahiwatig (sortedAreas> 500)); Mga Spot = Nakilala> 0;

Hakbang 5: Plotting ang Diagnosed Mass Lokasyon at Laki para sa Visual Comparison

Plotting the Diagnosed Mass Location and Size for Visual Comparison
Plotting the Diagnosed Mass Location and Size for Visual Comparison
Plotting the Diagnosed Mass Location and Size for Visual Comparison
Plotting the Diagnosed Mass Location and Size for Visual Comparison
Plotting the Diagnosed Mass Location and Size for Visual Comparison
Plotting the Diagnosed Mass Location and Size for Visual Comparison

Nais kong makita kung ang mga spot na natagpuan ng bwlabel ay tama. Ginawa ko ito sa dalawang paraan. Una kong sinuri ang kawastuhan ng aking classifier sa pamamagitan ng paggawa ng isang visual na paghahambing. Plot ko lang ang aktwal na laki at lokasyon ng abnormalidad (pulang bilog) at ang lokasyon na tinukoy ng code (asul x) sa paunang proseso na imaheng mammogram. Ang anim na imahe sa itaas ay nagpapakita ng mga epekto ng pagtaas ng grayscale threshold na halaga.

Hakbang 6: Pagpapatupad ng Pangalawang Pamamaraan ng Paghahambing

Pagpapatupad ng Pangalawang Pamamaraan ng Paghahambing
Pagpapatupad ng Pangalawang Pamamaraan ng Paghahambing

Ang pangalawang paraan ng pagsubok sa klase at mga halaga ng threshold ay sa pamamagitan ng pagtukoy kung ang mga lokasyon na natagpuan ng tagapag-uri ay nasa loob ng isang tiyak na distansya mula sa mga na-diagnose na koordinasyon ng abnormalidad. Nai-save ko ang mga threshold kung saan hindi bababa sa isa sa mga natukoy na puntos ay nasa loob ng 1.5 * r mula sa kilalang abnormalidad hanggang sa isang hiwalay na file ng teksto na tinatawag na Mammogram Data. Ang layunin para dito ay upang mahanap ang minimum na threshold na kinakailangan para makilala ng aking classifier ang abnormalidad.

Hakbang 7: Pagsusuri sa Nakolektang Data

Sinusuri ang Nakolektang Data
Sinusuri ang Nakolektang Data
Sinusuri ang Nakolektang Data
Sinusuri ang Nakolektang Data

Pinatakbo ko ang programa sa lahat ng mga hindi normal na imahe ng mammogram at naiwan ako ng isang malaking file ng teksto ng data. Upang makahanap ng pinakamahusay na threshold para sa bawat uri ng tisyu ay inayos ko ang data sa pamamagitan ng uri ng tisyu at nagplano ng isang histogram ng mga halagang threshold para sa bawat uri ng tisyu. Ang tamang halaga ng threshold ay napagpasyahan kung aling threshold ang nagbigay ng pinaka tumpak na mga resulta para sa bawat uri ng tisyu. Nai-save ko ang data na ito upang mai-upload sa aking classifier.

Hakbang 8: Paggawa ng Iyong Sariling Classifier

Paggawa ng Iyong Sariling Classifier!
Paggawa ng Iyong Sariling Classifier!
Paggawa ng Iyong Sariling Classifier!
Paggawa ng Iyong Sariling Classifier!
Paggawa ng Iyong Sariling Classifier!
Paggawa ng Iyong Sariling Classifier!
Paggawa ng Iyong Sariling Classifier!
Paggawa ng Iyong Sariling Classifier!

Matapos kong makita ang pinakaangkop na mga halaga ng threshold para sa bawat uri ng tisyu, na-edit ko ang aking orihinal na code upang maipasok ng isang gumagamit ang numero ng imahe at uri ng tisyu upang mapili ang threshold para sa imahe ng mammogram. Pagkatapos ay nagplano ako ng na-diagnose na lokasyon ng mammogram na may mga nahanap na lokasyon sa orihinal na mga imahe ng mammogram. Nais kong gawin itong mas masaya kaya nagprograma ako ng isang function upang mag-crop ng isang bilog na rehiyon na nakapalibot sa ROI. Aatasan ang gumagamit na pumili ng isang gitnang punto at maraming mga puntos na pinakamahusay na sumasaklaw sa ROI. Ikinabit ko dito ang parehong mga file ng matlab.

Hakbang 9: Mga Pagpapabuti? May Mga Saloobin Ka Ba?

Habang sinusulat ko ang itinuturo na ito nagsisimula akong makakita ng maraming mga pagpapabuti na magagawa ko sa tagapag-uri tulad ng paghahanap ng mga paraan upang makilala ang pagitan ng iba't ibang mga uri ng masa na nakilala batay sa pagtatasa ng texture o pagpapabuti ng aking pagsubok para sa seksyon ng kawastuhan ng SandBoxProject. file Dahil ito ay isang proyekto na may isang deadline kailangan kong huminto sa kung saan, ngunit inaasahan kong magagamit ko ang mga kasanayan sa pagproseso ng imahe na natutunan ko sa iba pang mga application. Gayundin, ikinabit ko ang file na ginamit upang iproseso ng batch ang lahat ng mga hindi normal na imaheng mammogram.

Inirerekumendang: