Isi kandungan:

Menggunakan Ambang Intensiti Skala Kelabu Bervariasi untuk Memvisualisasikan dan Mengenal Kelainan dalam Imej Mammogram: 9 Langkah
Menggunakan Ambang Intensiti Skala Kelabu Bervariasi untuk Memvisualisasikan dan Mengenal Kelainan dalam Imej Mammogram: 9 Langkah

Video: Menggunakan Ambang Intensiti Skala Kelabu Bervariasi untuk Memvisualisasikan dan Mengenal Kelainan dalam Imej Mammogram: 9 Langkah

Video: Menggunakan Ambang Intensiti Skala Kelabu Bervariasi untuk Memvisualisasikan dan Mengenal Kelainan dalam Imej Mammogram: 9 Langkah
Video: Part 2 - Triplanetary Audiobook by E. E. Smith (Chs 5-8) 2024, November
Anonim
Menggunakan Ambang Intensiti Skala Kelabu Bervariasi untuk Memvisualisasikan dan Mengenal Kelainan dalam Imej Mammogram
Menggunakan Ambang Intensiti Skala Kelabu Bervariasi untuk Memvisualisasikan dan Mengenal Kelainan dalam Imej Mammogram

Tujuan projek ini adalah untuk mengenal pasti dan menggunakan parameter untuk memproses gambar mamogram skala abu-abu dari pelbagai klasifikasi tisu latar belakang: Fatty, Fatty Glandular, & Dense Tissue. Klasifikasi ini digunakan ketika ahli radiologi menganalisis mamogram dan perlu mempertimbangkan apakah ketumpatan tisu akan mengaburkan sebarang kelainan seperti lesi atau tumor. Ini kerana kedua-dua struktur fisiologi normal seperti tisu kelenjar dan tisu penghubung berserat. dan morfologi yang tidak normal seperti kalsifikasi dan tumor akan kelihatan sangat terang pada mamogram sementara tisu lemak yang kurang padat akan kelihatan hitam. Oleh itu, adalah wajar untuk memprogram pengkelasan yang dapat memanipulasi tahap intensiti piksel untuk menggambarkan dan mengenal pasti jisim dengan sebaik-baiknya.

Langkah 1: Menyusun Data Mammogram

Menyusun Data Mammogram
Menyusun Data Mammogram

Salah satu perkara pertama yang saya sedar yang perlu saya atasi ialah menyusun data dengan cara yang sangat jelas, ringkas dan mudah diakses. Ini adalah pemboleh ubah yang saya ekstrak dari pangkalan data mini-MIAS mamogram. Saya mencipta dua tatasusunan. Satu mengandungi 4 lajur:

  1. Nombor Gambar:
  2. x koordinat jisim
  3. y koordinat jisim
  4. Jisim Massa: (Ini menentukan ukuran anggaran untuk jisim

Susunan kedua mengandungi maklumat klasifikasi:

  1. Jenis Latar Belakang Tisu: Lemak (F), Kelenjar Lemak (G), Padat (D)
  2. Keterangan Jisim: Dinyatakan dengan baik (CIRC), spiculated (SPIC), tidak jelas lain (MISC) Penyelewengan seni bina (ARCH), Asimetri (ASYM), Normal (NORM)
  3. Diagnosis: Jinak (B), Malignan (M)

Oleh kerana tujuan projek ini adalah untuk menentukan ambang terbaik untuk setiap jenis tisu latar belakang tidak semua maklumat diperlukan. Walau bagaimanapun, anda boleh mengembangkan projek anda untuk memasukkan analisis tekstur dan menguji pengelasan anda terhadap perihalan massa yang diketahui.

Nota Sampingan: Pangkalan data dari mana saya mendapatkan Gambar Mammogram yang didiagnosis menyusun maklumat mengenai setiap mamogram dalam fail teks yang terpisah dari gambar. Agak sukar bagi saya untuk mengekstrak data dari fail teks dan menyusunnya ke dalam bentuk array, tetapi pautan berikut sangat membantu dalam mengetahui semua itu. Sebagai pilihan, sesuaikan kod yang saya tampal di atas untuk tujuan anda.

Format Fail Mamogram: mdb001 G CIRC B 535 425 197

mdb002 G CIRC B 522 280 69

Bantuan TextScan: https://www.mathworks.com/help/matlab/ref/textsca… Pangkalan Data Mamogram:

Langkah 2: Pemprosesan Imej

Pemprosesan imej
Pemprosesan imej

Nah, perkara kedua yang muncul ketika saya mencari tahu bagaimana mengenal pasti massa adalah bahawa untuk banyak mamogram yang tidak normal saya tidak dapat melihat secara visual di mana kelainan itu atau seberapa besarnya. Jelas sekali, kerana saya bukan ahli radiologi yang berpengalaman, itu diharapkan. Walau bagaimanapun, cara paling mudah untuk mencari kelainan (mengikut carian google saya yang panjang) adalah dengan melihat kepekatan kawasan terang dan gelap. Saya terutamanya menggunakan fungsi adapthisteq untuk meningkatkan kontras gambar dan kemudian memberi imbinari untuk menukar gambar menjadi imej binari untuk bereksperimen dengan tahap ambang yang berbeza.

  1. adapthisteq: Fungsi ini mengubah nilai intensiti gambar skala kelabu dan rgb menggunakan penyamaan histogram adaptif terhad kontras. Dengan kata lain, ia menyesuaikan histogram nilai intensiti dengan jenis taburan yang ditentukan. Pautan kerja matematik untuk fungsi ini dilampirkan di bawah untuk bacaan selanjutnya.
  2. imbinarize: membuat gambar binari dari gambar skala kelabu dengan menetapkan semua piksel di atas intenisti tertentu hingga 1s dan piksel di bawah yang bernilai 0. Saya menggunakan fungsi ini untuk menguji ambang optimum untuk mengurangkan bunyi tisu latar belakang.

Langkah 3: Kod Ambang

Kod Ambang
Kod Ambang

A untuk gelung digunakan untuk membinari mamogram dengan ambang yang berbeza-beza. Untuk memberikan gambaran gambar yang lebih besar, loop untuk mengandungi kod dari Langkah 3 hingga Langkah 7. Oleh itu, setiap gambar binari akan dianalisis untuk mengetahui keabnormalan. Selain itu, ini untuk gelung dibungkus dalam gelung lain yang mengimport imej mamogram baru dari pangkalan data dalam setiap lelaran.

Langkah 4: Mencari Kelainan untuk Setiap Gambar Binari

Mencari Kelainan untuk Setiap Gambar Perduaan
Mencari Kelainan untuk Setiap Gambar Perduaan
Mencari Kelainan untuk Setiap Gambar Perduaan
Mencari Kelainan untuk Setiap Gambar Perduaan

Saya seterusnya memproses gambar binari menggunakan fungsi strel bersama dengan imopen untuk menghilangkan bunyi latar. Imej binari dari langkah sebelumnya dibalikkan dan ditapis menggunakan lingkungan yang ditentukan oleh SE. Kemudian saya menggunakan bwlabel untuk memberi label pada kawasan yang mempunyai sekurang-kurangnya 8 piksel yang bersambung.

Fungsi alat peraga kawasan digunakan untuk mencari sifat-sifat pusat dan kawasan setiap tempat yang dikenal pasti oleh bwlabel.

Kemudian semua titik yang lebih besar daripada 500 piksel dikenal pasti menggunakan ismember. Sentroid untuk bintik-bintik yang dikenal pasti diplotkan pada gambar yang hanya memaparkan bintik-bintik yang lebih besar dari kawasan 500. Area Identified = ismember (Labeled, indicies (disortirAreas> 500)); Tempat = Dikenal pasti> 0;

Langkah 5: Memetakan Lokasi dan Ukuran Jisim Diagnosis untuk Perbandingan Visual

Memetakan Lokasi dan Ukuran Massa Diagnosis untuk Perbandingan Visual
Memetakan Lokasi dan Ukuran Massa Diagnosis untuk Perbandingan Visual
Memetakan Lokasi dan Ukuran Massa Diagnosis untuk Perbandingan Visual
Memetakan Lokasi dan Ukuran Massa Diagnosis untuk Perbandingan Visual
Memetakan Lokasi dan Ukuran Massa Diagnosis untuk Perbandingan Visual
Memetakan Lokasi dan Ukuran Massa Diagnosis untuk Perbandingan Visual

Saya ingin melihat apakah tempat yang dijumpai oleh bwlabel betul. Saya melakukan ini dengan dua cara. Saya mula-mula menganalisis ketepatan pengkelasan saya dengan membuat perbandingan visual. Saya hanya memetakan ukuran dan lokasi sebenar kelainan (bulatan merah) dan lokasi yang ditentukan oleh kod (x biru) pada gambar mamogram yang telah diproses. Keenam gambar di atas menunjukkan kesan peningkatan nilai ambang skala kelabu.

Langkah 6: Melaksanakan Kaedah Perbandingan Kedua

Melaksanakan Kaedah Perbandingan Kedua
Melaksanakan Kaedah Perbandingan Kedua

Cara kedua saya menguji pengkelasan dan nilai ambang adalah dengan menentukan sama ada lokasi yang dijumpai oleh pengkelas berada dalam jarak tertentu dari koordinat kelainan yang didiagnosis. Saya menyimpan ambang di mana sekurang-kurangnya satu titik yang dikenal pasti berada dalam jarak 1,5 * r dari keabnormalan yang diketahui ke fail teks berasingan yang disebut Data Mammogram. Tujuannya adalah untuk mencari ambang minimum yang diperlukan untuk pengkelasan saya untuk mengenal pasti kelainan.

Langkah 7: Menganalisis Data yang Dikumpulkan

Menganalisis Data yang Dikumpulkan
Menganalisis Data yang Dikumpulkan
Menganalisis Data yang Dikumpulkan
Menganalisis Data yang Dikumpulkan

Saya menjalankan program pada semua gambar mamogram yang tidak normal dan saya dibiarkan dengan fail data yang besar. Untuk mencari ambang terbaik untuk setiap jenis tisu, saya menyusun data mengikut jenis tisu dan merancang histogram nilai ambang untuk setiap jenis tisu. Nilai ambang yang tepat diputuskan pada ambang mana yang memberikan hasil yang paling tepat untuk setiap jenis tisu. Saya menyimpan data ini untuk dimuat naik ke pengkelasan saya.

Langkah 8: Membuat Pengelasan Anda Sendiri

Membuat Pengelasan Anda Sendiri!
Membuat Pengelasan Anda Sendiri!
Membuat Pengelasan Anda Sendiri!
Membuat Pengelasan Anda Sendiri!
Membuat Pengelasan Anda Sendiri!
Membuat Pengelasan Anda Sendiri!
Membuat Pengelasan Anda Sendiri!
Membuat Pengelasan Anda Sendiri!

Setelah saya menemui nilai ambang yang paling sesuai untuk setiap jenis tisu, saya mengedit kod asal saya agar pengguna memasukkan nombor gambar dan jenis tisu untuk memilih ambang untuk gambar mamogram. Saya kemudian memetakan lokasi mamogram yang didiagnosis dengan lokasi yang terdapat pada gambar mamogram yang asal. Saya ingin menjadikannya lebih menyeronokkan, jadi saya memprogramkan fungsi untuk memotong kawasan bulat di sekitar ROI. Pengguna akan diarahkan untuk memilih titik tengah dan beberapa titik yang paling baik merangkumi ROI. Saya melampirkan kedua-dua fail matlab di sini.

Langkah 9: Penambahbaikan? Ada idea?

Semasa saya menulis ini, saya mula melihat banyak penambahbaikan yang dapat saya lakukan untuk pengkelasan seperti mencari cara untuk membezakan antara pelbagai jenis jisim yang dikenal pasti berdasarkan analisis tekstur atau meningkatkan pengujian saya untuk bahagian ketepatan SandBoxProject. fail. Oleh kerana ini adalah projek dengan tarikh akhir saya harus berhenti di suatu tempat, tetapi saya berharap dapat menggunakan kemahiran memproses gambar yang saya pelajari dalam aplikasi lain. Juga, saya melampirkan fail yang digunakan untuk mengolah semua gambar mamogram yang tidak normal.

Disyorkan: