Isi kandungan:
- Langkah 1: Memulakan Antara Muka Pengguna Grafik (GUI)
- Langkah 2: Memuat dan Membaca Imej MRI di MATLAB
- Langkah 3: Penapisan Imej
- Langkah 4: Pengasingan Tumor Melalui Topeng Elips
- Langkah 5: Garis Besar Tumor
- Langkah 6: Menganalisis Sifat Fizikal Tumor
Video: Pengesanan MRI Tumor Otak Menggunakan Matlab: 6 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:10
Oleh: Madhumita Kannan, Henry Nguyen, Ashley Urrutia Avila, Mei Jin
Kod MATLAB ini adalah program untuk mengesan ukuran, bentuk, dan lokasi tumor yang tepat yang terdapat dalam imbasan MRI otak pesakit. Program ini dirancang untuk bekerja pada awalnya dengan pengesanan tumor dalam imbasan MRI otak, tetapi juga dapat digunakan untuk diagnostik kanser pada imbasan organ lain juga.
Petunjuk berikut akan menerangkan kaedah analisis gambar terlebih dahulu melalui penyaringan dan membersihkan imbasan MRI, melalui binarizing, penapisan median, dan tingkap gelongsor. Selanjutnya, ia akan memberi petunjuk tentang bagaimana mengasingkan tumor menggunakan topeng elips yang dihasilkan sebelumnya, dan menyaringnya lebih jauh untuk menguraikan perimeter bentuk tumor.
Setelah tumor dikesan, arahan akan menerangkan lebih lanjut bagaimana memasukkan program ini ke dalam antara muka pengguna grafik (GUI). Sepanjang arahan ini, kod dan fail yang sesuai akan dilampirkan untuk membantu menjelaskan bagaimana analisis imbasan MRI ini berfungsi.
Beberapa perkara yang perlu diketahui, muat turun, dan siap sebelum anda meneruskan arahan ini: 1. Pastikan MATLAB versi terkini dimuat turun. Anda boleh memasang R2018b di sini:
2. Untuk menjalankan program ini, anda perlu mempunyai akses ke fail imbasan otak MRI. Walaupun ada yang selalu dijumpai dari gambar Google, analisis menyeluruh dan tepat dapat dilakukan dari gambar yang tepat dari pelbagai lapisan imbasan otak untuk setiap pesakit. Anda boleh mengakses fail untuk 20 pesakit yang berbeza dengan rawatan pra dan pasca glioblastoma dari pangkalan data ini:
3. Fokus program ini dan pelbagai kaedah yang membimbing projek ini dijelaskan dalam makalah penyelidikan ini:
Langkah 1: Memulakan Antara Muka Pengguna Grafik (GUI)
Langkah pertama adalah membuat dan memulakan antara muka pengguna grafik, GUI. Ini dapat dilakukan dengan mengetik panduan ke jendela perintah, menekan enter, dan membuat GUI baru. Setelah langkah ini selesai, anda boleh mula membuat fungsi seperti paksi, teks statik, mengedit teks, dan butang tekan yang akan dipaparkan setelah program dijalankan dan pengguna dapat berinteraksi dengannya. Fungsi-fungsi ini dapat diedit dan dimanipulasi melalui pemeriksa harta tanah, namun ciri terpenting yang harus diubah ketika membuat fungsi ini adalah nama Tag. Penting untuk menukar nama Tag dari setiap fungsi yang dilaksanakan kerana ia akan membolehkan kita membuat fungsi panggilan balik yang dapat dibezakan. Setelah anda berpuas hati dengan tata letak GUI anda, anda dapat terus memuatkan fail DICOM yang akan dipaparkan di dalam GUI.
Langkah 2: Memuat dan Membaca Imej MRI di MATLAB
Untuk memuatkan file DICOM, Anda harus menginisialisasi fungsi panggilan balik dengan betul yang akan dijalankan ketika menekan tombol "Muatkan Gambar MRI." Setelah ini selesai, anda mesti membuat pemboleh ubah global yang akan memaparkan gambar pada sumbu pemegang di mana anda mahu Imej MRI Asal dipaparkan. Imej imbasan MRI yang dimuat turun dari pangkalan data adalah semua fail berformat DICOM yang perlu dimuat ke dalam direktori MATLAB anda. Cari fail menggunakan imgetfile untuk memuatkannya ke dalam program. Gambar dibaca dengan menggunakan fungsi MATLAB 'dicomread', dan gambar mentah pertama untuk setiap fail disisipkan ke paksi GUI kiri menggunakan imshow.
Fungsi MATLAB terbina dalam 'dicominfo' juga sangat berguna dalam menangani semua maklumat setiap fail dicom MRI. Kami menggunakan fungsi ini untuk mengekstrak semua informasi deskriptif pesakit, seperti jenis kelamin, usia, berat badan, dan tinggi badan mereka. Fungsi ini juga memberi anda susunan susunan yang berguna untuk pelaksanaan program di antara muka pengguna grafik. Kami membuat pemboleh ubah untuk setiap informasi deskriptif pesakit yang akan digunakan untuk GUI ketika butang deteksi ditekan.
Langkah 3: Penapisan Imej
Setelah fail DICOM gambar mentah dimuat dan dibaca, gambar perlu ditukar dari skala abu-abu menjadi bentuk binarized yang hanya terdiri dari piksel hitam dan putih. Kami menggunakan fungsi 'imbinarize' untuk membuat gambar binari dari gambar mentah oleh mengawal aspek adaptif ambang pada nilai kepekaan 0.59. Faktor sensitiviti ambang lalai, 0,5 rendah dan tidak dapat mengesan gumpalan dan bintik yang lebih terang dari gambar, jadi kami meningkatkannya menjadi 0.59.
Imej binarized kemudian diproses melalui penapis median menggunakan fungsi ‘medfilt2’ kerana gambar binarized adalah dua dimensi. Kami menetapkan setiap piksel output agar mengandungi nilai median di lingkungan 5 x 5 di sekitar piksel yang sesuai dalam gambar binari input. Ini mengurangkan kebisingan dan menjaga tepi di segiempat sama 5 x 5 di sekitar setiap piksel. Seterusnya, kami menerapkan tetingkap gelangsar menggunakan 'strel', untuk membuat elemen penataan rata berbentuk cakera dengan radius lingkungan 2 untuk mengenal pasti setiap pusat, piksel asal, di setiap lingkungan cakera. Kami menggunakan elemen penstrukturan cakera kerana kami menganalisis setiap titik bulat dan piksel di setiap tempat, jadi elemen bentuk cakera lebih berguna.
Setelah gambar disaring, gambar dapat dibersihkan menggunakan fungsi ‘imclose’ untuk menghilangkan bintik-bintik hitam di antara piksel putih yang disaring dalam gambar, dan menutup semua celah di sekitarnya. Imej yang diproses sepenuhnya kemudian dapat diplot dalam subplot kedua dari angka yang telah diperuntukkan, yang memungkinkan perbandingan antara gambar mentah dan yang disaring.
Langkah 4: Pengasingan Tumor Melalui Topeng Elips
Tompok-tompok tumor yang terang kemudiannya dapat diasingkan dari gambar utama yang disaring melalui topeng elips yang dihasilkan sebelumnya. Untuk membuat topeng ini, anda harus mengetahui ukuran gambar imbasan MRI asli yang asli, dan menggunakannya panjang baris dan lajur, kerana koordinat x dan y masing-masing, peruntukkan koordinat tengah untuk elips. Kami menetapkan paksi-y sebagai paksi utama dengan radius 50 unit dari pusat, dan paksi kecil dengan radius 40 unit dari pusat.
Kami menggunakan fungsi MATLAB 'meshgrid' untuk menghasilkan satah kartesian dengan koordinat grid dua dimensi berdasarkan koordinat yang terdapat dalam vektor dari 1 hingga panjang paksi-x, dan dari 1 hingga panjang paksi-y gambar. Col adalah matriks di mana setiap baris adalah salinan paksi-x, dan Row adalah matriks di mana setiap lajur adalah salinan paksi-y. Grid kartesian yang diwakili oleh koordinat Col dan Row mempunyai panjang (1: Y_Size) baris dan panjang (1: X_Size) lajur. Gunakan indeks Col dan Row yang dihasilkan oleh grid kartesian untuk menentukan persamaan elips bergantung pada koordinat jejari dan tengah yang telah ditentukan. Garis besar elips kini dapat diisi dengan piksel putih yang terdapat dari bintik-bintik tumor.
Dengan menggunakan topeng elips yang telah dihasilkan, kita dapat memangkas tumor tertentu yang ingin anda analisis dari gambar yang disaring. Topeng elips mengesan titik mana yang masuk secara logik dalam garis besar elips dan menerimanya sebagai titik pada gambar yang disaring untuk diterima sebagai tumor. Fungsi 'bwareafilt' kemudian menyaring semua objek lain di luar tumor yang dikesan ini dari gambar. Kami menggunakan tetingkap khusus 500 hingga 4000 secara empirik berdasarkan dimensi semua gambar. Kami kemudian menggunakan tetingkap gelangsar yang lain dengan 'strel' sebagai elemen struktur berbentuk cakera rata dengan radius kejiranan yang lebih besar 6, untuk menutup jurang antara setiap piksel putih tengah dalam tumor yang dikesan. Tempat tumor yang dikesan akan dibersihkan dengan menggunakan ‘imclose’ untuk menghilangkan piksel hitam dan mengisi semua lubang dengan ‘imfill’. Tumor yang diproses ini kemudiannya dapat dipaparkan di subplot ketiga dalam plot pra-dialokasikan untuk memberikan perbandingan antara tumor terpencil dan gambar asal dan gambar yang disaring dari imbasan MRI.
Langkah 5: Garis Besar Tumor
Sekarang tumor diasingkan dengan topeng, tumor dapat digariskan dan ditampilkan pada gambar asli, untuk menunjukkan lokasinya yang tepat. Untuk melakukan ini, kami menggunakan fungsi 'bwboundaries' untuk mengesan tumor yang sebelumnya dikesan dengan garis besar. Kami menentukan garis besar untuk tidak memasukkan lubang di dalam objek tumor seperti yang sedang digariskan. Ini dapat digambarkan ke gambar asli dan asli, menggunakan gelung ‘untuk’ yang memetakan garis besar di sekitar tumor menggunakan indeks garis dengan lebar garis 1,5 piksel. Garis besar ini kemudian diplot ke gambar mentah, menunjukkan ukuran dan lokasi tumor yang tepat, berbanding dengan imbasan MRI yang asli.
Langkah 6: Menganalisis Sifat Fizikal Tumor
Tempat terpencil dan garis besar dapat memberi kita maklumat berguna mengenai ukuran, luas, dan lokasi tumor. Kami menggunakan fungsi ‘regionprops’ untuk mengesan sifat tumor yang berkaitan dengan luas, perimeter, sentroid, dan nilai indeks piksel. Nilai indeks piksel ini memberi kita unit dunia nyata untuk setiap piksel setiap gambar, unik untuk setiap imbasan. Sifat-sifat ini kemudian boleh ditukar menjadi unit milimeter dunia nyata. Maklumat empirik yang disediakan oleh program kepada kami adalah unik untuk setiap imbasan MRI dan sangat berguna dalam menentukan ukuran, lokasi, dan jenis tumor, yang dapat dianalisis dan dimasukkan oleh pengguna ke dalam antara muka pengguna grafik.
Disyorkan:
Cara Membuat Bel Tanpa Sentuhan, Pengesanan Suhu Badan, GY-906, 433MHz Menggunakan Arduino: 3 Langkah
Cara Membuat Bel Tanpa Sentuhan, Pengesanan Suhu Badan, GY-906, 433MHz Menggunakan Arduino: Hari ini kita akan membuat bel pintu Tanpa sentuh, ia akan mengesan suhu badan anda. Dalam keadaan sekarang, sangat penting untuk mengetahui sama ada suhu badan seseorang lebih tinggi daripada biasa, ketika seseorang sedang bergurau. Projek ini akan menunjukkan lampu Merah jika mengesan ada
MATLAB Pengesanan Muka Mudah: 4 Langkah
MATLAB Easy Face Detection: Tujuan utama instruksional ini adalah untuk menunjukkan seberapa mudah, pemprosesan gambar akan dilakukan, Dengan bantuan MATLABFace pengesanan dan pengesanan telah menjadi bidang penyelidikan yang penting dan aktif, jadi itulah sebabnya saya akan menerangkan bagaimana ia dapat dilakukan dengan
Kamera IP Dengan Pengesanan Muka Menggunakan Papan ESP32-CAM: 5 Langkah
Kamera IP Dengan Pengesanan Muka Menggunakan Papan ESP32-CAM: Catatan ini berbeza dengan yang lain dan kami melihat papan ESP32-CAM yang sangat menarik yang sangat murah (kurang dari $ 9) dan mudah digunakan. Kami membuat kamera IP ringkas yang dapat digunakan untuk menstrim suapan video langsung menggunakan 2
Pengesanan Warna Ringkas Menggunakan OpenCV: 6 Langkah
Pengesanan Warna Ringkas Menggunakan OpenCV: Hai! Hari ini saya akan menunjukkan kaedah mudah untuk mengesan warna dari video langsung menggunakan OpenCV dan python. Pada dasarnya saya hanya akan menguji warna yang diperlukan ada di bingkai latar belakang atau tidak dan menggunakan modul OpenCV saya akan menutupi kawasan itu dan
Pengesanan Warna di Python Menggunakan OpenCV: 8 Langkah
Pengesanan Warna di Python Menggunakan OpenCV: Helo! Instruksional ini digunakan untuk membimbing bagaimana mengekstrak warna tertentu dari gambar di python menggunakan perpustakaan openCV. Sekiranya anda baru menggunakan teknik ini, jangan risau, pada akhir panduan ini, anda akan dapat memprogramkan warna anda sendiri