IDENTIFIKASI EFUSI PLEURA BERDASARKAN CITRA CHEST X – RAY DENGAN MENGGUNAKAN CONVOLUTIONAL NEURAL NETWORK
SKRIPSI
RYAN FACHROZY 151402044
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
2020
IDENTIFIKASI EFUSI PLEURA BERDASARKAN CITRA CHEST X – RAY DENGAN MENGGUNAKAN CONVOLUTIONAL NEURAL NETWORK
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Teknologi Informasi
RYAN FACHROZY 151402044
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
2020
i
PERNYATAAN
IDENTIFIKASI EFUSI PLEURA BERDASARKAN CITRA CHEST X – RAY DENGAN MENGGUNAKAN CONVOLUTIONAL
NEURAL NETWORK
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing – masing telah disebutkan sumbernya.
Medan, 27 Januari 2020
Ryan Fachrozy 151402044
iii
UCAPAN TERIMA KASIH
Puji dan syukur kehadirat Tuhan Yang Maha Esa, karena atas berkat dan izin-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Teknologi Informasi Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Ucapan terima kasih penulis sampaikan kepada :
1. Bapak Prof. Runtung Sitepu, SH., M.Hum selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Opim Salim Sitompul selaku Dekan Fasilkom-TI USU.
3. Bapak Romi Fadillah Rahmat B.Comp.Sc., M.Sc selaku Ketua Program Studi S1 Teknologi Informasi Universitas Sumatera Utara.
4. Bapak Ivan Jaya, S.Si., M.Kom. selaku Dosen Pembimbing I dan ibu Sarah Purnamawati, ST., MSc. selaku Dosen Pembimbing II yang telah banyak
meluangkan waktu dan pikiran beliau, membimbing, memberikan arahan, kritik dan saran kepada penulis.
5. Seluruh dosen, staff dan pegawai di Program Studi Teknologi Informasi serta Fakultas Ilmu Komputer dan Teknologi Informasi yang tidak dapat saya sebutkan satu-persatu.
6. Bapak Mardian yang selalu sabar membantu penulis dalam menyelesaikan adminstrasi perkuliahan penulis.
7. Keluarga Penulis Ayahanda Isma Adri dan Ibunda Nurmala dan adik tercinta Zahra Azizah yang selalu memberikan doa, kasih sayang, nasehat, dan semangat yang tiada putusnya kepada penulis.
8. Alm. Ir. Edi Hidayat dan Ismi Delfi beserta keluarga (Perdana Abdi, Ayu Rizki Ramadhani dan Dandy permana abdi) selaku keluarga asuh penulis yang telah memberikan kasih sayang yang begitu besar dan kesabaran dalam mendidik dan memberi dukungan kepada penulis.
9. Terkhusus Kiki Nuraini Ginting S.Kom yang selalu membantu, menemani, memberikan semangat dan penghiburan kepada penulis.
10. Fatodadar yang terdiri dari Muhammad Fahmi, Thomy Fauzi Rayendra Nasution, Afdhalul Ihsan Nasution, Muhammad Aulia Ramadhan Nasution, Dody Praska Jaya, Habibi Alkhairi Daulay dan Anjas Subhanuari yang senantiasa menemani ,
membantu dan menghibur penulis.
11. Teman – teman seperjuangan terkhusus Marissa Dinda Audia S.Kom , Trisna Ira Novasari S.Kom , Desi Fiolita S.Kom yang telah banyak membantu penulis.
12. Adik – adik Nek Endut tersayang, Zahra Azizah, Muhaskha Haspul Ruddin, Daffa Muhammad Lubis dan Addira Suha Ruddin yang selalu menemani dan memberikan semangat kepada penulis.
13. Sahabat terkasih Qasthari As Sudeis, Dodi Darmawan dan Qasthari al hazmi yang senantiasa menemani dan menghibur penulis.
14. Semua pihak yang terlibat secara langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu persatu yang telah membantu dalam penyelesaian skripsi ini.
Semoga Tuhan yang Maha Esa melimpahkan berkah kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.
Medan, 27 Januari 2020
Penulis
v
ABSTRAK
Efusi Pleura adalah pengumpulan cairan berlebih dalam ruang pleura yang terletak diantara permukaan visceral dan parietal pada organ paru – paru. Efusi pleura membuat pengidapnya mengalami batuk dan sesak napas. Efusi pleura juga dapat menjadi tanda akan kehadiran penyakit primer lainnya. Pasien yang mengidap efusi pleura dapat dideteksi dengan melakukan pemeriksaan pada X- Ray paru. Hasil dari X – Ray paru - paru tersebut juga harus dianalisis kembali oleh ahli pulmonology yang dianalisis secara manual sehingga memakan waktu yang banyak dan membutuhkan tingkat konsentrasi yang lebih tinggi untuk dapat memastikan hasil dari diagnosa.Untuk mengatasi masalah tersebut, maka dibutuhkan metode untuk mengidentifikasi efusi pleura secara otomatis.
Pada penelitian ini, metode yang digunakan adalah Convolutional Neural Network untuk identifikasi penyakit efusi pleura. tahapan yang dilakukan sebelum identifikasi adalaha pra-pengolahan (grayscale, scaling dan thresholding). Hasil penelitian ini menunjukkan bahwa metode yang diajukan mampu melakukan identifikasi citra efusi pleura dengan akurasi sebesar 94%.
Kata Kunci : Efusi pleura, grayscale, scaling, thresholding, Convolutional Neural Network
THE IDENTIFICATION OF PLEURAL EFUSSION BASED ON CHEST X- RAY IMAGE USING CONVOLUTIONAL NEURAL NETWORK
ABSTRACT
Pleural effusion is excess fluid in the pleura which is located on the visceral and parietal surfaces in the lung organs. The effect of Pleural effusion for the sufferer is coughing and shortness of breath. Pleural Effusion can be the sign of another primer disease. The patient who is suffering from pleural effusion can be detected with the X – Ray check on the lung. The result of the X-Ray can be analyzed again by pulmonology expert which is manually which can take a long time and need higher concentration for getting sure the result of the diagnose correctly. To get rid the problem, the automatic method to identify pleural effusion needed. In this research, the method that will be used is Convolutional Neural Network to identify the disease. The stage that needed before the identification is pre-processing (grayscale, scaling and thresholding). The result shows that the method can identify the pleura effusion with the 94% of accuracy.
Keywords: pleural effusion, grayscale, scaling, thresholding, Convolutional Neural Network.
vii
DAFTAR ISI
Halaman
PERSETUJUAN i.
PERNYATAAN ii
UCAPAN TERIMA KASIH iii
ABSTRAK v
ABSTRACT vi
DAFTAR ISI vii
DAFTAR TABEL x
DAFTAR GAMBAR xi
Bab 1 Pendahuluan
1.1 Latar Belakang 1
1.2 Rumusan Masalah 3
1.3 Tujuan Penelitian 3
1.4 Batasan Masalah 3
1.5 Manfaat Penelitian 4
1.6 Metode Penelitian 4
1.7 Sistematika Penulisan 5
Bab 2 Landasan Teori
2.1 Paru – Paru 7
2.2 Efusi Pleura 7
2.3 Citra Digital
2.3.1 RGB Image 9
2.3.2 Grayscale Image 9
2.3.3 Binary Image 10
2.4 Pengolahan Citra Digital 11
2.5 Scaling 11
2.6 Thresholding 11
2.7 Convolutional Neural Network 12
2.8 Penelitian Terdahulu 14
Bab 3 Analisis dan Perancangan Sistem
3.1 Arsitektur Umum 20
3.2 Dataset
3.2.1 Image Acquisition 22
3.2.2 Testing Dataset dan Training Dataset 22 3.3 Preprocessing
3.3.1 Scaling 23
3.3.2 Grayscale 23
3.4 Image Segmentation
3.4.1 Thresholding 29
3.5 Identifikasi 30
3.6 Perancangan Sistem
3.6.1 Rancangan Tahapan Awal 35
3.6.2 Rancangan Tampilan Halaman Training 36 3.6.3 Rancangan Tampilan Halaman Testing 37 Bab 4 Implementasi dan Pengujian Sistem
4.1 Kebutuhan Aplikasi
4.1.1 Perangkat Keras 39
4.1.2 Implementasi Perancangan Antarmuka
4.1.2.1 Tampilan Halaman Home 39
4.1.2.2 Tampilan Halaman Training 40
4.1.2.3 Tampilan Halaman Testing 41
4.1.3 Implementasi Data 42
4.2 Prosedur Operasional 42
4.3 Pengujian Sistem 43
Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan 50
5.2 Saran 51
ix
DAFTAR PUSTAKA 52
DAFTAR TABEL
Halaman
Tabel 2.1 Penelitian Terdahulu 16
Tabel 3.1 Data Latih dan Data Uji 22
Tabel 4.1 Pembagian Data 42
Tabel 4.2 Confussion Matrix pada bobot Epoch 1200 44 Tabel 4.3 Hasil Pengujian Menggunakan Epoch 1000, 1100, 1200 45
xi
DAFTAR GAMBAR
Halaman
Gambar 2.1 X – Ray Paru – Paru Normal 7
Gambar 2.2 X – Ray Paru – Paru Efusi Pleura 8
Gambar 2.3 RGB Image 9
Gambar 2.4 Grayscale Image 10
Gambar 2.5 Binary Image 10
Gambar 2.6 Citra Thresholding 11
Gambar 2.7 Convolutional Neural Network 12
Gambar 2.8 Proses Pooling Layer 13
Gambar 2.9 Proses Fully Connected Layer 14
Gambar 3.1 Arsitektur Umum 21
Gambar 3.2 Representasi Piksel Citra Paru 23
Gambar 3.3 Representasi Citra 5 x 5 Piksel 23
Gambar 3.4 Representasi Nilai Grayscale pada Setiap Piksel 28 Gambar 3.5 Proses Citra Grayscale, (a) Citra Asli (b) Citra Grayscale 28 Gambar 3.5 Proses Citra Thresholding, (a) Citra Asli (b) Citra Grayscale 29
Gambar 3.7 Representasi Nilai Thresholding 30
Gambar 3.8 Representasi Konvolusi Pengujian : (a) Gambar Input;
(b) Feature Detector; (c) Feature map 31
Gambar 3.9 Representasi Pergeseran Matriks 32 Gambar 3.10 Representasi Hasil Akhir Konvousi 33
Gambar 3.11 Representasi Proses Max Pooling 34
Gambar 3.12 Representasi Proses Flattening 34
Gambar 3.13 Rancangan Tampilan Halaman Home 35
Gambar 3.14 Rancangan Tampilan Halaman Training 36 Gambar 3.15 Rancangan Tampilan Halaman Testing 37
Gambar 4.1 Tampilan Halaman Home 40
Gambar 4.2 Tampilan Halaman Training 41
Gambar 4.3 Tampilan Halaman Testing 41
Gambar 4.4 Tampilan Halaman Pemilihan Citra 42
Gambar 4.5 Tampilan Halaman Melakukan Testing 43 Gambar 4.6 Hasil Testing dengan Bobot Epoch Berbeda 44
BAB 1 PENDAHULUAN
Bab ini membahas tentang hal-hal yang berkaitan dengan pembuatan tugas akhir. Bab ini dibagi menjadi bebapa baguan yaitu latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian, dan sistematika penulisan.
1.1 Latar Belakang
Efusi pleura adalah pengumpulan cairan berlebih dalam ruang pleura yang terletak diantara permukaan visceral dan parietal, proses penyakit primer jarang terjadi tetapi biasanya merupakan penyakit sekunder terhadap penyakit lain. Secara normal, ruang pleural mengandung sejumlah kecil cairan (5 sampai 15ml) berfungsi sebagai pelumas yang memungkinkan permukaan pleural bergerak tanpa adanya friksi (Smeltzer, 2002).
Efusi pleura memang tidak merusak organ paru – paru, tetapi kehadiran efusi pleura pada paru – paru dapat menjadi petanda adanya penyakit lain seperti gagal jantung kongesif, tuberkulosis (TBC), emboli paru dan kanker paru – paru.
Ada beberapa cara untuk diagnosa penyakit Efusi pleura, cara awal biasanya dengan pemeriksaan fisik sederhana menggunakan stetoskop atau mengetuk – ngetuk dada penderita. Biasanya cara ini diikuti dengan pemeriksan lanjutan seperti rontgen dada, USG dan CT - Scan pada dada.
Beberapa penelitian di bidang informatika telah dikembangkan untuk mengidentifkasi penyakit efusi pleura berdasarkan citra Chest X - Ray. Seperti penelitian yang dilakukan Bhuvaneswari (2014) melalui penelitian yang berjudul
“Classification of Lung Diseases by Image Processing Techniques Using Computed Tomography Images” membandingkan metode pohon keputusan dan metode naïve bayes untuk melakukan klasifikasi kelainan paru – paru berdasarkan citra CT – Scan paru. Pada penelitian ini metode pohon keputusan mendapatkan nilai lebih baik dibandingkan metode naïve bayes. Dari 7 data testing, metode pohon keputusan dapat
mengklasifikasi 7 data dengan benar sementara metode naïve bayes hanya 6.
Fibrianto (2018) dengan judul “Klasifikasi kondisi Paru – Paru normal, Penyakit Tuberkulosis dan Efusi Pleura pada Manusia Menggunakan Jaringan Syaraf Tiruan Propagasi Balik” mengidentifikasi keadaan paru – paru normal , paru – paru yang terkena tuberkulosis dan paru paru yang terkena efusi pleura dengan menggunakan Gray Level Co-Occurrence Matrix (GLCM) sebagai ekstraksi ciri dan metode Back- Propagation neural network untuk klasifikasi keadaan paru – paru. Akurasi yang didapatkan adalah 85% untuk kondisi paru – paru yang terkena efusi pleura, 70% untuk kondisi paru – paru normal dan 55 % untuk keadaan paru – paru yang terkena tuberkulosis.
Iswanto (2014) melalui penelitiannya yang berjudul “Diagnosa Penyakit Paru Efusi Pleura dengan Pendekatan Possibilistic Fuzzy Learning Vector Quantization”
melakukan perbandingan Possibilistic Fuzzy Learning Vector Quantization dengan Fuzzy Learning Vector Quantization untuk mengidentifikasi penyakit paru – paru efusi pleura. Citra Chest X - Ray sebelumnya melalui tahapan Discrete Cosine Transform sebagai ekstraksi ciri. Pada penelitian ini sistem yang menggunakan Fuzzy Learning Vector Quantization memiliki akurasi 83% sementara itu sistem yang menggunakan Fuzzy Learning Vector Quantization memiliki akurasi 77%.
Penelitian yang dilakukan oleh Lubis (2018) yang berjudul Identifikasi “ Penyakit Kanker Paru-Paru Pada Citra Medis Chest X-Ray (CXR) Menggunakan Metode Backpropagation Neural Network “ mengidentifikasi kanker paru – paru pada citra medis chest x – ray menggunakan algoritma K – Mean Clustering untuk segmentasi paru – paru dan menggunakan Gray Level Co-Occurrence Matrix (GLCM) sebagai ekstraksi ciri. Penelitian ini menggunakan metode backpropagnation neural network untuk klasifikasi dan memiliki akurasi 75%.
Penelitian yang dilakukan oleh Wulan (2012) yang berjudul “Deteksi Kanker Paru - Paru dari Citra Rontgen menggunakan Jaringan Syaraf Tiruan” mendeteksi kanker paru – paru dengan menggunakan transformasi Wavelet Haar dan metode backpropagnation neural network untuk klasifikasi keadaan paru - paru. Tingkat akurasi penelitian ini sebesar 86,7% dalam mendeteksi keabnormalan paru dari citra foto rontgen paru.
Pada penelitian ini, input dari sistem ini adalah citra Chest X - Ray yang diperoleh dari Rumah Sakit Zainal Abidin. Citra Chest X - Ray yang di ambil sebanyak
3
2400 citra Chest X - Ray. Penulis akan menggunakan metode Convolutional Neural Network (CNN) untuk mengidentifikasi paru – paru terkena efusi pleura dan paru - paru yang tidak terkena efusi pleura.
Convolutional Neural Network (CNN) adalah pengembangan dari Multilayer Perceptron (MLP) yang didesain untuk mengolah data dua dimensi. Pada CNN, setiap neuron direpresentasikan dalam bentuk dua dimensi, tidak seperti MLP yang setiap neuron hanya berukuran satu dimensi. CNN termasuk dalam Deep Neural Network karena kedalaman jaringan yang tinggi. Convolutional Neural Network ( CNN ) sebelumnya juga telah digunakan untuk identifikasi gambar CT - Scan.
Marbun (2017) melakukan Klasifikasi jenis Stroke menggunakan Convolutional Neural Network berdasarkan hasil CT - Scan otak. Pada penelitiannya peneliti menggunakan Contrast Limited Adaptive Histogram Equalization pada tahap preprocessing. Hasil dari penelitian ini memiliki akurasi yang cukup baik yaitu 90%.
Berdasarkan latar belakang diatas, penulis mengajukan penelitian yang berjudul
“ Identifikasi Penyakit Efusi pleura berdasarkan Citra Chest X - Ray dengan Menggunakan Metode Convolutional neural network ” dengan harapan dapat meningkatkan akurasi dalam klasifikasi penyakit Efusi pleura pada citra Chest X – Ray.
1.2 Rumusan Masalah
Diagnosa Efusi pleura biasanya dilakukan dengan pengambilan gambar keadaan paru - paru pasien melalui X – Ray paru - paru. Hasil dari X – Ray paru - paru tersebut juga harus dianalisis kembali oleh ahli pulmonology dan dianalisis secara manual sehingga memakan waktu yang banyak untuk dapat memastikan hasil dari diagnosa. Oleh karna itu diperlukan pendekatan teknologi untuk mengatasi masalah seperti ini.
1.3 Tujuan Penelitian
Tujuan dari penelitian ini adalah ientifikasi efusi pleura pada citra X – Ray paru - paru dengan menggunakan Convolutional neural network.
1.4 Batasan Masalah
Pada penelitian ini dilakukan beberapa batasan masalah, agar nantinya pembahasan yang terkait dengan penelitian dapat lebih terfokus. Berikut adalah batasan masalah yang ada :
1. Data citra yang dipakai merupakan hasil digitalisasi citra X – Ray paru - paru.
2. Citra latih dan citra uji memiliki ukuran 200 x 200 piksel.
3. Citra latih dan citra uji harus berekstensi jpeg atau jpg.
4. Identifikasi terdiri dari paru – paru normal dan efusi pleura.
1.5 Manfaat Penelitian Manfaat penelitian ini yaitu:
1. Membantu tenaga medis dalam diagnosa awal penyakit Efusi pleura pada pasien.
2. Menjadi referensi dalam penelitian akademik, khususnya penelitian implementasi Convolutional neural network.
1.6 Metodologi Penelitian
Adapun tahap-tahap yang dilakukan pada penelitian ini:
1.6.1 Studi Literatur
Pada Tahap ini dilakukan pengumpulan bahan referensi yang berkaitan dengan citra digital, paru – paru, Efusi pleura, Convolutional neural network dari berbagai jurnal, skripsi, buku dan berbagai sumber referensi lainnya.
1.6.2 Pengumpulan Data
Setelah studi literatur dilakukan, penelitian akan dilanjutkan dengan pengumpulan data.
1.6.3 Analisis Permasalahan
Pada tahap ini dilakukan analisis berdasarkan data yang akan dipakai dan berbagai informasi yang terkait dengan penelitian dari berbagai sumber yang didapatkan agar dapat memilih metode yang tepat untuk menyelesaikan masalah pada penelitian ini.
1.6.4 Pembangunan Program
Pada tahap ini program akan dibangun dengan mengimplementasikan Convolutional neural network (CNN) untuk mendapatkan hasil identifikasi yang sesuai diharapkan.
5
1.6.5 Uji Coba Sistem
Pada tahap ini dilakukan pengujian terhadap aplikasi yang telah dibuat untuk menguji kemampuan metode Convolutional neural network (CNN) dalam melakukan klasifikasi citra.
1.6.6 Penyusunan Laporan
Pada tahap ini dilakukan penyusunan laporan hasil evaluasi dan analisis serta implementasi metode Convolutional Neural Network (CNN) pada penelitian ini.
1.7 Sistematika Penulisan
Sistematika penulisan dari skripsi ini terdiri dari lima bagian, yaitu sebagai berikut :
Bab 1 : Pendahuluan
Bab ini terdiri dari latar belakang penelitian, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian, dan sistematika penulisan.
Bab 2 : Landasan Teori
Bab ini berisi teori-teori pendukung yang diperlukan untuk dapat memahami permasalahan yang dibahas dalam penelitian ini. Teori-teori tersebut berhubungan dengan efusi pleura, grayscale, thresholding, Convolutional Neural Network untuk identifikasi objek.
Bab 3 : Analisis dan Perancangan
Bab ini berisi tentang analisis dari arsitektur umum dan analisis dari metode Convolutional Neural Network serta penerapannya dalam mengidentifikasi citra efusi pleura dan perancangan sistem yang dibuat.
Bab 4 : Implementasi dan Pengujian
Bab ini berisi pembahasan tentang implementasi dari metode yang digunakan serta analisis dan perancangan yang telah dilakukan sebelumnya serta pengujian terhadap hasil yang didapatkan apakah sesuai dengan yang diharapkan.
Bab 5 : Kesimpulan dan Saran
Bab ini berisi kesimpulan dari keseluruhan penelitian yang telah dibahas pada bab-bab sebelumnya serta saran yang diajukan guna pengembangan untuk penelitian
selanjutnya.
BAB 2
LANDASAN TEORI
Bab ini membahas tentang teori penunjang dan penelitian sebelumnya yang berhubungan dengan penerapan metode Convolutional Neural Network untuk mengidentifikasi penyakit efusi pleura.
2.1 Paru - Paru
Paru - paru adalah organ pada sistem pernapasan dan sistem pendarahan. Paru – paru terletak di rongga dada bagian atas berdekatan dengan jantung dan dilindungi oleh tulang rusuk. Pada umumnya berat paru – paru bagian kanan pada orang dewasa adalah 375 – 600 gram sementara di bagian kiri memiliki berat 325 – 550 gram.
Gambar 2.1 X- Ray Paru – Paru Normal (Lubis, 2018)
Salah satu aktivitas paru – paru yang sangat penting bagi manusia adalah aktivitas respirasi. Respirasi adalah proses pertukaran oksigen dengan karbondioksida dalam darah. Aktivitas ini biasanya disebut dengan bernapas.
2.2 Efusi Pleura
Efusi pleura adalah pengumpulan cairan berlebih dalam ruang pleura yang terletak diantara permukaan visceral dan parietal, proses penyakit primer jarang terjadi tetapi
biasanya merupakan penyakit sekunder terhadap penyakit lain. Secara normal, ruang pleural
mengandung sejumlah kecil cairan (5 sampai 15ml) berfungsi sebagai pelumas yang memungkinkan permukaan pleural bergerak tanpa adanya friksi (Smeltzer, 2002).
Gambar 2.2 X – Ray Paru – Paru Terkena Efusi Pleura (Smeltzer, 2002) Efusi dapat berupa cairan jernih, yang mungkin merupakan transudat, eksudat, atau dapat berupa darah. Meskipun tidak merusak organ, cairan berlebih pada paru – paru haruslah segera dibuang karna dapat menyebabkan sesak napas bagi pengidapnya.
2.3 Citra Digital
Citra digital adalah representasi dari gambar nyata yang terdiri dari sekumpulan angka yang dapat disimpan dan ditangani oleh komputer digital. Gambar digital terdiri dari area kecil atau dikenal sebagai piksel.Sebuah citra digital dapat mewakili oleh sebuah matriks yang terdiri dari M : kolom N : baris, dimana perpotongan antara kolom dan baris disebut piksel (piksel = picture element) yaitu elemen terkecil dari sebuah citra.
Piksel mempunyai dua parameter, yaitu koordinat dan intensitas atau warna. Nilai yang terdapat pada koordinat (x,y) adalah f(x,y) yaitu besar intensitas atau warna di piksel di titik itu. Oleh sebab itu, sebuah citra digital dapat ditulis dalam bentuk maktriks berikut.
𝑓(𝑥, 𝑦) = [
𝑓(0,0) 𝑓(0,1) ⋯ 𝑓(0, 𝑀 − 1) 𝑓(1,0) … … 𝑓(1, 𝑀 − 1)
…
𝑓(𝑁 − 1,0) ⋯ … 𝑓(𝑁 − 1,1) …
…
𝑓(𝑁 − 1 , 𝑀 − 1 )
] (2.1)
9
Citra digital dibagi menjadi 3 jenis yaitu RGB image, grayscale image dan binary image.
2.3.1 RGB image
RGB Image adalah citra yang terdiri dari Merah (Red), Hijau (Green) dan Biru (Blue) sebagai komponen warna utamanya. Total penyimpanan sebuah piksel dalam RGB image adalah 24 bit dengan masing - masing komponen warna menggunakan penyimpanan 8 bit.
Gambar 2.3 RGB Image (Kumar & Verma, 2010)
2.3.2 Grayscale Image
Grayscale adalah suatu citra yang hanya memiliki warna tingkat keabuan. Grayscale image hanya membutuhkan nilai intensitas tunggal dibandingkan dengan RGB image yang membutuhkan tiga intensitas untuk tiap pikselnya. Pada umumnya citra grayscale memiliki penyimpanan 8 bit sehingga dapat menampung 256 tingkatan skala abu-abu dimana tiap piksel memiliki intensitas 0 hingga 255 dengan 0 menjadi hitam dan 255 menjadi putih. Contoh dari grayscale image dapat dilihat pada gambar 2.4. Proses konversi bisa dilihat dalam Persamaan (2.2)
𝐼 =
𝑅+𝐺+𝐵3 (2.2)
Dimana : I = Tingkat keabuan
R = Tingkat intensivitas warna merah
G = Tingkat intensivitas warna hijau B = Tingkat intensivitas warna biru
Gambar 2.4 Grayscale Image (Christanto, 2018)
2.3.3 Binary Image
Binary Image adalah suatu citra yang hanya terdiri dari warna hitam dan putih sehingga nilai intensitasnya hanya memiliki nilai 0 dan 255. Binary image sangat cocok digunakan untuk teks (dicetak atau tulisan tangan), sidik jari (fingerprint), atau gambar arsitektur (Kusumanto & Tompunu, 2011). Contoh dari binary image dapat dilihat pada gambar 2.5.
Gambar 2.5 Binary Image (Kim & Xie, 2015)
11
2.4 Pengolahan Citra Digital
Pengolahan citra digital adalah sebuah disiplin ilmu yang mempelajari tentang teknik- teknik mengolah citra seperti . Citra yang dimaksud disini adalah gambar diam (foto) maupun gambar bergerak. Sedangkan digital disini mempunyai maksud adalah pengolahan citra/gambar dilakukan secara digital menggunakan komputer (Kusumanto
& Tompunu, 2011). Pengolahan citra merupakan salah satu cara untuk mendapatkan data atau informasi yang di dapatkan pada suatu citra. Proses analisis data sering digunakan dalam pengambilan data pada suatu citra.
2.5 Scaling
Scaling bertujuan untuk mengubah ukuran piksel suatu citra. Hal ini dilakukan karena setiap citra belum tentu memiliki ukuran yang sama. Scaling juga digunakan untuk memperkecil citra digital agar jumlah piksel yang akan diolah tidak terlalu banyak.
Besarnya jumlah piksel mempengaruhi waktu komputasi. Semaki banyak piksel maka semakin besar juga waktu yang dilakukan untuk komputasi
2.6 Thresholding
Thresholding adalah proses mengubah citra berderajat keabuan menjadi citra biner atau hitam putih sehingga dapat diketahui daerah mana yang termasuk objek dan background dari citra secara jelas. Region citra yang semakin gelap akan dibuat semakin gelap, sedangkan region yang terang akan dibuat semakin terang (purnomo et al, 2010).
Gambar 2.6 Citra Thresholding (Christianto, 2018)
Input untuk proses thresholding adalah Grayscale Image dan output dari proses ini adalah Binary Image. Thresholding membutuhkan suatu nilai yang digunakan sebagai nilai ambang batas antara intensitas objek utama dengan latar belakang, dan nilai
tersebut dinamakan dengan Threshold. Thresholding dalam penelitian ini penulis menggunakan rumus local thresholding yang diformulasikan oleh Bensen’s Technique.
𝑇 =
fmaks+fmin2 (2.3)
Keterangan :
T = Nilai threshold
fmaks = Nilai piksel maksimum fmin = Nilai piksel minimum
2.7 Convolutional Neural Network
Convolutional Neural Network (CNN) adalah pengembangan dari Multilayer Perceptron (MLP) yang didesain untuk mengolah data dua dimensi. Pada CNN, setiap neuron direpresentasikan dalam bentuk dua dimensi, tidak seperti MLP yang setiap neuron hanya berukuran satu dimensi. CNN termasuk dalam Deep Neural Network karena kedalaman jaringan yang tinggi.
Gambar 2.7 Convolutional Neural Network (Hattori, 2017)
Convolutional Neural Network memiliki 4 layer utama (Christianto, 2018), yaitu : 1. Convolutional Layer
Convolutional Layer adalah sebuah inti utama dari CNN, dimana layer ini memiliki sebuah kumpulan filter yang dapat digunakan untuk mempelajari citra masukan. Pada layer ini, akan dilakukan operasi konvolusi terhadap input ataupun output dari layer sebelumnya. Konvolusi adalah suatu istilah matematis yang berarti mengaplikasikan sebuah fungsi pada output fungsi lain secara berulang. Tujuan dilakukannya konvolusi
13
pada data citra adalah untuk mengekstraksi fitur dari citra input. Konvolusi akan menghasilkan transformasi linear dari data input sesuai informasi spasial pada data.
Bobot pada layer tersebut menspesifisikasikan kernel konvolusi yang digunakan, sehingga kernel konvolusi dapat dilatih berdasarkan input pada CNN (Suartika et al, 2016).Berikut Persamaan yang digunakan untuk menghitung pergeseran matriks : h(i,j) = A*P1 + B*P2 +C*P3 + D*P4 + E*P5 + F*P6 + G*P7 + H*P8 + I*P9 (2.4)
Keterangan :
h(i,j) = hasil dari perkalian matriks kernel A dengan input P A-I = nilai matriks input yang dikalikan dengan matriks kernel
P1-9 = nilai matriks kernel yang dikalikan dengan matriks input image P
2. Max Pooling
Max Pooling adalah proses untuk meningkatkan invariansi posisi dari fitur menggunakan operasi Max (Christianto,2018). Max Pooling membagi output dari Convolutional Layer menjadi beberapa grid kecil lalu mengambil nilai maksimal dari setiap grid untuk menyusun matriks citra yang telah direduksi seperti pada gambar 2.8.
Grid yang berwarna merah, hijau, kuning dan biru merupakan kelompok grid yang akan dipilih nilai maksimumnya. Sehingga hasil proses tersebut dapat dilihat pada kumpulan grid disebelah kanannya.
Gambar 2.8 Proses Pooling Layer (suartika et al, 2016)
Proses tersebut memastikan fitur yang didapatkan akan sama meskipun objek citra mengalami translasi (pergeseran). Hal ini bertujuan untuk membantu mengurangi jumlah parameter dan waktu perhitungan yang dibutuhkan saat melatih network.
3. ReLu (Rectified Linear Units)
Layer ini mengaplikasikan fungsi aktivasi tak jenuh pada node 𝑓(𝑥) = 𝑥+ = 𝑚𝑎𝑥 (0,𝑥).
Layer ini meningkatkan sifat non-linier dari fungsi pengambil keputusan dan semua jaringan tanpa mempengaruhi bidang reseptif dari Convolutional Layer (Christianto,2018). ReLu juga banyak digunakan karena dapat melatih neural network lebih cepat. Namun pada penelitian ini, penulis menggunakan fungsi aktivasi sigmoid.
4. Fully Connected
Layer Neuron pada Fully Connected Layer memiliki hubungan yang lengkap pada semua aktivasi dalam layer sebelumnya. Aktivasi tersebut kemudian di komputasi dengan sebuah perkalian matriks diikuti oleh bias offset.
Layer ini mengaplikasikan fungsi aktivasi tak jenuh pada node 𝑓(𝑥) = 𝑥+ = 𝑚𝑎𝑥 (0,𝑥).
Layer ini meningkatkan sifat non-linier dari fungsi pengambil keputusan dan semua jaringan tanpa mempengaruhi bidang reseptif dari Convolutional Layer.
Gambar 2.9 Proses Fully Connected Layer (SuperDataScience, 2018)
2.8 Penelitian Terdahulu
Beberapa penelitian telah dilakukan untuk mengidentifikasi efusi pleura pada citra Chest X – Ray. Penelitian yang dilakukan Bhuvaneswari (2014) melalui penelitian yang berjudul “Classification of Lung Diseases by Image Processing Techniques Using Computed Tomography Images” membandingkan metode pohon keputusan dan metode naïve bayes untuk melakukan klasifikasi kelainan paru – paru berdasarkan citra CT –
15
Scan paru. Pada penelitian ini metode pohon keputusan mendapatkan nilai lebih baik dibandingkan metode naïve bayes. Dari 7 data testing, metode pohon keputusan dapat mengklasifikasi 7 data dengan benar sementara metode naïve bayes hanya 6.
Fibrianto (2018) mengidentifikasi keadaan paru – paru normal , paru – paru yang terkena 15eknik15losis dan paru paru yang terkena efusi pleura dengan menggunakan Gray Level Co-Occurrence Matrix (GLCM) sebagai ekstraksi ciri dan metode Back-Propagation neural network untuk klasifikasi keadaan paru – paru.
Akurasi yang didapatkan adalah 85% untuk kondisi paru – paru yang terkena efusi pleura, 70% untuk kondisi paru – paru normal dan 55 % untuk keadaan paru – paru yang terkena 15eknik15losis.
Penelitian yang dilakukan oleh Lubis (2018) yang berjudul Identifikasi “ Penyakit Kanker Paru-Paru Pada Citra Medis Chest X-Ray (CXR) Menggunakan Metode Backpropagation Neural Network “ mengidentifikasi kanker paru – paru pada citra medis chest x – ray menggunakan algoritma K – Mean Clustering untuk segmentasi paru – paru dan menggunakan Gray Level Co-Occurrence Matrix (GLCM) sebagai ekstraksi ciri. Penelitian ini menggunakan metode backpropagnation neural network untuk klasifikasi dan memiliki akurasi 75%.
Iswanto (2014) melalui penelitiannya yang berjudul “Diagnosa Penyakit Paru Efusi Pleura dengan Pendekatan Possibilistic Fuzzy Learning Vector Quantization”
melakukan perbandingan Possibilistic Fuzzy Learning Vector Quantization dengan Fuzzy Learning Vector Quantization untuk mengidentifikasi penyakit paru – paru efusi pleura. Citra Chest X – Ray sebelumnya melalui tahapan Discrete Cosine Transform sebagai ekstraksi ciri. Pada penelitian ini sistem yang menggunakan Fuzzy Learning Vector Quantization memiliki akurasi 83% sementara itu sistem yang menggunakan Fuzzy Learning Vector Quantization memiliki akurasi 77%.
Penelitian yang dilakukan oleh Wulan (2012) yang berjudul “Deteksi Kanker Paru – Paru dari Citra Rontgen menggunakan Jaringan Syaraf Tiruan” mendeteksi kanker paru – paru dengan menggunakan transformasi Wavelet Haar dan metode back propagnation neural network untuk klasifikasi keadaan paru – paru. Tingkat akurasi penelitian ini sebesar 86,7% dalam mendeteksi keabnormalan dari citra foto rontgen paru.
Marbun (2018) melakukan Klasifikasi jenis Stroke menggunakan Convolutional Neural Network berdasarkan hasil CT Scan otak. pada penelitiannya peneliti
menggunakan Contrast Limited Adaptive Histogram Equalization pada tahap preprocessing. Hasil dari penelitian ini memiliki akurasi yang cukup baik yaitu 90%.
Rangkuman beberapa penelitian terdahulu dapat dilihat pada 16ekni 1.
Tabel 2.1 Penelitian Terdahulu
No Peneliti Judul Tahun Keterangan
1. • C.
Bhuvaneswari
• P. Aruna
• D.
Loganathan
Classification of Lung Diseases by Image Processing Techniques Using Computed
Tomography Images
2014 Peneliti
membandingkan metode pohon keputusan dan metode naïve bayes untuk melakukan klasifikasi kelainan paru – paru
berdasarkan citra CT – Scan paru.
Metode pohon keputusan dapat mengklasifikasi 7 data dengan benar sementara metode naïve bayes hanya 6.
2 • Ardhi Fibrianto
• Rita Magdalena
• Yunendah Nur Fuadah
Klasifikasi kondisi Paru – Paru normal, Penyakit
Tuberkulosis dan Efusi Pleura pada Manusia
Menggunakan
2018 Penelitian ini menggunakan metode Gray Level Co – Occurance Matrix ( GLCM ) untuk ekstraksi ciri dan menggunakan jaringan syaraf
17
Jaringan Syaraf Tiruan Propagasi Balik.
tiruan propagasi balik untuk menklasifikasi keadaan paru – paru . dengan tingkat akurasi 85 % dari 20 citra uji.
3 • Rudi
Iswanto
Diagnosa Penyakit Paru Efusi Pleura dengan Pendekatan Possibilistic Fuzzy
LearningVector Quantization.
2014 Dalam penelitian ini menggunakan pendekatan Possibilitic Fuzzy Learning Vector Quantization untuk klasifikasi paru – paru yang terkena efusi pleura dan menggunakan metode Discrete Cosine Transform sebagai ekstraksi ciri. Penelitian memiliki akurasi sebesar 83%
4 • Afriani Lubis
Penyakit Kanker Paru-Paru Pada Citra Medis Chest X-Ray (CXR) Menggunakan Metode
Backpropagation Neural Network
2018 Penelitian ini menggunakan metode k – mean clustering untuk segmentasi paru paru dan metode Gray Level Co – Occurance Matrix ( GLCM ) sebagai
ekstraksi ciri.
Penelitian ini memakai metode Backpropagnatio Neural Network untuk
mengklasifikasi keadaan paru – paru. Akurasi dari penelitian ini adalah 75%
5 • Tri
Deviasari Wulan
Deteksi Kanker Paru- Paru dari Citra Rontgen menggunakan Jaringan Syaraf Tiruan.
2012 Penelitian ini menggunakan metode wavelet haar untuk
menyeleksi bentuk paru – paru dan menggunakan Backpropagation Neural Network untuk
mengklasifikasi kondisi paru – paru.
Akurasi yang didapatkan dari penelitian ini adalah 86,7%.
19
6 • Jodiaman Tua Marbun
Klasifikasi Stroke Menggunakan Convolutional Neural Network
2018 Penulis menggunakan Convolutional Neural Network untuk
mengklasifikasi jenis stroke berdasarkan citra CT – Scan Otak.
akurasi dari
penelitian ini adalah 90%
Pada penelitian ini, tidak dilakukan identifikasi citra dengan menggunakan naïve bayes seperti pada penelitian (Bhuvaneswari et al., 2014). Penelitian ini tidak menggunakan metode Gray Level Co – Occurance Matrix ( GLCM ) untuk ekstraksi ciri seperti yang dilakukan pada penelitian ( Ardhi Fibrianto, Rita Magdalena dan Yunendah Nur Fuadah, 2018). Penelitian ini menggunakan thresholding untuk segmentasi paru – paru tidak menggunakan metode k – mean seperti penelitian ( Afriani Lubis, 2018 ) dan juga tidak menggunakan wavelet haar seperti yang dilakukan pada penelitian ( Tri Deviasari Wulan, 2012).
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Bab ini akan membahas tentang analisis dan perancangan aplikasi klasifikasi efusi pleura. Tahap pertama yaitu analisis data yang akan digunakan, analisis dengan menggnakan beberapa tahapan pengolahan citra yang digunakan, kemudian implementasi metode Convolutional Neural Network dalam mengidentifikasi efusi pleura. Pada bab ini juga membahas perancangan tampilan antarmuka sistem.
3.1 Arsitektur Umum
Metode yang diajukan untuk melakukan identifikasi efusi pleura yang terdiri dari beberapa tahapan. Tahapan – tahapan tersebut dimulai dari pengumpulan data citra yang terdiri dari citra normal dan efusi pleura yang akan digunakan untuk citra latih dan citra uji, kemudian masuk ke tahap preprocessing yang terdiri atas Scaling yang digunakan untuk menentukan ukuran piksel yang seragam untuk citra uji dan citra latih. Kemudian dilakukan penyeragaman citra keabuan dengan menggunakan grayscale. Tahapan berikutnya adalah segmentasi. Pada penelitian ini proses segmentasi menggunakan 20eknik Thresholding. Setelah itu masuk ke tahapan klasifikasi dengan menggunakan Convolutional Neural Network. Setelah tahapan – tahapan tersebut dilakukan akan didapatkan hasil klasifikasi penyakit efusi pleura. Adapun arsitektur umum yang menggambarkan metodologi pada penelitian ini dapat ditunjukkan pada gambar 3.1.
21
Gambar 3.1 Arsitektur umum
3.2. Dataset
Pada tahapan ini dilakukan pengumpulan data yang nantinya akan digunakan sebagai testing dataset dan training dataset. Ada 2 tahap pada tahap dataset yaitu, image acquisition dan pemisahan testing dataset dan training dataset.
3.2.1. Image Acquisition
Tahapan ini merupakan tahap pengumpulan data citra paru – paru normal dan paru – paru yang terkena efusi pleura. Data yang digunakan di dalam penelitian ini didapatkan dari Rumah Sakit Umum Daerah Meuraxa Aceh ,situs https://data.mendeley.com dan situs http://www.jsrt.or.jp. Citra dikumpulkan penulis mulai dari tanggal 7 agustus 2019 sampai dengan 15 september 2019. Jumlah gambar yang didapatkan penulis adalah sebanyak 570 citra. File diterima penulis dalam format JPEG dengan ukuran piksel yang berbeda – beda.
3.2.2. Testing Dataset dan Training Dataset
Data citra paru normal yang telah dikumpulkan penulis berjumlah 300 citra dan Data citra paru yang teridentifikasi efusi pleura berjumlah 270 citra. Dari masing – masing jenis citra paru yang telah dikumpulkan, penulis menggunakan 75 % dari citra yang telah dikumpulkan sebagai training dataset dan 25 % dari citra yang telah dikumpulkan sebagai testing dataset. Pembagian testing dataset dan training dataset untuk sistem identifikasi efusi pleura dapat dilihat pada Tabel 3.1
Tabel 3.1 Data Latih dan Data Uji
Data Set Data Pelatihan Data Pengujian Jumlah Data
Paru Normal 225 75 300
Paru Sakit 202 68 270
3.3. Preprocessing
Pada tahap preprocessing citra yang sudah ada diproses kembali agar menghasilkan citra yang lebih baik dan selaras untuk diproses pada tahap selanjutnya. Tahapan preprocessing ini adalah scaling dan grayscale.
23
3.3.1. Scaling
Tahapan yang pertama pada tahap Preprocessing adalah Scaling. Tahapan ini ditujukan untuk menyelaraskan ukuran piksel pada citra. Penetuan piksel juga berpengaruh pada waktu untuk proses pengolahan citra. Penulis menggunakan nilai scaling 200 x 200 piksel.
3.3.2. Grayscale
Tahapan berikutnya adalah grayscale. Grayscale adalah tahapan yang bertujuan untuk mengubah citra menjadi keabuan. Pada tahapan ini nilai RGB ( Red, Green, Blue) pada setiap piksel diambil dan dijumlahkan lalu hasilnya dibagi tiga.
Gambar 3.2 Representasi Piksel Citra Paru
Gambar yang direpresentasikan pada Gambar 3.2 merupakan citra paru yang berukuran 800 x 600 piksel dan potongan citra paru yang berukuran 5 x 5 piksel. Proses perhitungan nilai grayscale akan direpresentasikan pada Gambar 3.3.
1 2 3 4 5
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
Gambar 3.3. Representasi Citra 5 x 5 Piksel
Adapun nilai red, green, blue pada citra yang memiliki 25 piksel adalah : P1 = R, G, B (121, 121, 121)
P2 = R, G, B (152, 152, 152) P3 = R, G, B (156, 156, 156) P4 = R, G, B (115, 115, 115) P5 = R, G, B (110, 110, 110) P6 = R, G, B (95, 95, 95) P7 = R, G, B (149, 149, 149) P8 = R, G, B (123, 123, 123) P9 = R, G, B (170, 170, 170) P10 = R, G, B (145, 145, 145) P11 = R, G, B (72, 72, 72) P12 = R, G, B (81, 81, 81) P13 = R, G, B (163, 163, 163) P14 = R, G, B (142, 142, 142) P15 = R, G, B (62, 62, 62) P16 = R, G, B (37, 37, 37) P17 = R, G, B (87, 87, 87) P18 = R, G, B (188, 188, 188) P19 = R, G, B (116, 116, 116) P20 = R, G, B (29, 29, 29) P21 = R, G, B (93, 93, 93) P22 = R, G, B (225, 225, 225) P23 = R, G, B (219, 219, 219)
25
P24 = R, G, B (176, 176, 176) P25 = R, G, B (40, 40, 40)
Dengan menggunakan Persamaan (2.2) maka nilai grayscale yang akan didapatkan antara lain sebagai berikut :
P1 = R, G, B (121, 121, 121)
= (121 + 121 + 121) / 3
= 121
P2 = R, G, B (152, 152, 152)
= (152 + 152 + 152) / 3
= 152
P3 = R, G, B (156, 156, 156)
= (156 + 156 + 156) / 3
= 156
P4 = R, G, B (115, 115, 115)
= (115, 115, 115) / 3
= 115
P5 = R, G, B (110, 110, 110)
= (110 + 110 + 110) / 3
= 110
P6 = R, G, B (95, 95, 95)
= (95 + 95 + 95) / 3
= 95
P7 = R, G, B (149, 149, 149)
= (149 + 149 + 149) / 3
= 149
P8 = R, G, B (123, 123, 123)
= (123 + 123 + 123) / 3
= 123
P9 = R, G, B (170, 170, 170)
= (170 + 170 + 170) / 3
= 170
P10 = R, G, B (145, 145, 145)
= (145 + 145 + 145) / 3
= 145
P11 = R, G, B (72, 72, 72)
= (72 + 72 + 72) / 3
= 72
P12 = R, G, B (81, 81, 81)
= (81 + 81 + 81) / 3
= 81
P13 = R, G, B (163, 163, 163)
= (163 + 163 + 163) / 3
= 163
P14 = R, G, B (142, 142, 142)
= (142 + 142 + 142) / 3
= 142
P15 = R, G, B (62, 62, 62)
= (62 + 62 + 62) / 3
= 62
P16 = R, G, B (37, 37, 37)
= (37 + 37 + 37) / 3
= 37
P17 = R, G, B (87, 87, 87)
= (87 + 87 + 87) / 3
= 87
P18 = R, G, B (188, 188, 188)
= (188 + 188 + 188) / 3
= 188
27
P19 = R, G, B (116, 116, 116)
= (116 + 116 + 116) / 3
= 116
P20 = R, G, B (29, 29, 29)
= (29 + 29 + 29) / 3
= 29
P21 = R, G, B (93, 93, 93)
= (93 + 93 + 93) / 3
= 93
P22 = R, G, B (225, 225, 225)
= (225 + 225 + 225) / 3
= 225
P23 = R, G, B (219, 219, 219)
= (219 + 219 + 219) / 3
= 219
P24 = R, G, B (176, 176, 176)
= (176 + 176 + 176) / 3
= 176
P25 = R, G, B (40, 40, 40)
= (40 + 40 + 40) / 3
= 40
Setelah didapatkan nilai grayscale setiap piksel sesuai Persamaan (2.2) maka nilai piksel akan diubah sesuai dengan nilai grayscale sehingga didapatkan nilai grayscale pada setiap piksel dapat dilihat pada Gambar 3.4.
121 152 156 115 110
95 149 123 170 145
72 81 163 42 62
37 87 188 116 29
93 225 219 176 40
Gambar 3.4 Representasi Nilai Grayscale Pada Setiap Piksel
Proses perhitungan nilai grayscale pada citra paru 25 piksel (5 x 5) piksel dapat dilakukan juga pada citra paru 200 x 200. Contoh citra paru yang telah dilakukan grayscale pada ukuran 200 x 200 piksel ditunjukkan pada Gambar 3.5
(a) (b)
Gambar 3.5 Proses Citra Grayscale, (a) Citra Asli (b) Citra Grayscale
3.4. Image Segmentation
Tahapan selanjutnya adalah image segmentation. Tahapan ini bertujuan untuk memisahkan bagian citra yang dipakai dengan bagian citra yang tidak dipakai. Adapun tahapan yang dilakukan adalah thresholding.
29
3.4.1. Thresholding
Tahapan selanjutnya dilakukan proses thresholding, dalam tahapan ini menggunakan metode local thresholding tujuannya untuk merepresentasikan gambar untuk menghasilkan citra yang lebih bermakna dan mudah dianilisis. Pada tahapan ini, yang dilakukan yaitu mencari nilai maksimum dan minimum pada suatu citra. Setelah didapat nilai maksimum dan minimum nilai grayscale, lalu dijumlahkan dan kemudian dibagi dua. Gambar citra thresholding dapat diliat pada Gambar 3.6
(a) (b)
Gambar 3.6 Proses Citra Thresholding, (a) Citra Asli (b) Citra Thresholding Dengan menggunakan Persamaan (2.5) maka nilai threshold yang akan didapatkan adalah :
Nilai maksimum = 225 Nilai minimum = 29 T = 225+29
2 = 127 121 < 127 = 0 152 >127 = 255 156 >127 = 255 115 < 127 = 0 110 < 127 = 0 95 < 127 = 0 149 > 127 = 255
123 < 127 = 0 170 > 127 = 255 145 > 127 = 255 72 < 127 = 0 81 < 127 = 0 163 > 127 = 255 42 < 127 = 0 62 < 127 = 0 37 < 127 = 0 87 < 127 = 0 188 > 127 = 255 116 < 127 = 0 29 < 127 = 0 93 < 127 = 0 225 > 127 = 255 219 > 127 = 255 176 > 127 = 255 40 < 127 = 0
Gambar 3.7 Representasi Nilai Thresholding 3.5. Identifikasi
Tahapan selanjutnya adalah tahapan mengidentifikasi citra. Pada tahap ini penulis menggunakan metode Convolutional Neural Network ( CNN ). CNN sendiri terdiri dari beberapa tahapan yaitu convolutional, maxpooling, flattening dan fully connected.
255 255 255 0 0 0 255 255 255 0 0 255 255 0 0 0 255 255 0 0
0 0 0 0 0
31
Pada convolutional layer, konvolusi akan menghasilkan transformasi linear dari data sesuai dengan informasi spasial pada data. Weight yang merupakan koneksi antar neuron (layer) akan melakukan spesifikasi matriks konvolusi yang digunakan sehingga matriks konvolusi dapat dilatih berdasarkan input pada CNN. Proses konvolusi dapat dilihat pada Gambar 3.8
(a) (b) (c)
Gambar 3.8 Representasi Konvolusi Pengujian: (a) Gambar Input; (b) Feature Detector; (c) Feature Map
Gambar 3.8 merupakan salah satu contoh input image yang telah direpresentasikan ke dalam bentuk 5 x 5 piksel, feature detector 3 x 3 sebagai detektor proses konvolusi. Matriks 3x3 bergerak dari sudut kiri atas dari input image dan bergerser ke kanan sebanyak 1 piksel hingga semua piksel dari baris pertama input image dilalui. Setelah semua baris pertama dari input image dimulai dari kiri menuju ke kanan seperti yang dilakukan di baris pertama. Begitu juga dengan baris-baris selanjutnya hingga semua piksel yang dimiliki input image dilalui yang kemudian disimpan dalam matriks yang baru. Pergeseran matriks tersebut dapat dilihat dalam Gambar 3.9
127 136 133 127 120
121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
0 0 1
1 0 0
0 1 1
C1,1 C2,1 C3,1 C2,1 C2,2 C3,2 C3,1 C2,3 C3,3
127 136 133 127 120 121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
127 136 133 127 120 121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
Gambar 3.9 Representasi Pergeseran Matriks
Untuk setiap posisi, kita menghitung jumlah elemen perkalian antara matriks feature detector dan matriks pada input image. Hasil dari jumlah perkalian matriks tersebut akan menghasilkan feature map. Berdasarkan Persamaan (2.6) yaitu perhitungan tahap convolutional, untuk menghitung nilai pergeseran matriks menggunakan feature map adalah sebagai berikut :
127 136 133 127 120 121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117 127 136 133 127 120
121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
127 136 133 127 120 121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
127 136 133 127 120 121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
127 136 133 127 120 121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
127 136 133 127 120 121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117 127 136 133 127 120
121 136 133 127 125 118 136 134 121 126 121 129 131 127 124 118 119 125 127 117
33
C1,1 = (0*127) + (0*136) + (1*133) + (1*121) + (0*136) + (0*133) + (0*118) + (1*136) + (1*134) = 524
C2,1 = (0*136) + (0*133) + (1*127) + (1*136) + (0*133) + (0*127) + (0*136) + (1*134) + (1*134) = 518
C3,1 = (0*133) + (0*127) + (1*120) + (1*133) + (0*127) + (0*125) + (0*134) + (1*121) + (1*126) = 500
C2,1 = (0*121) + (0*136) + (1*133) + (1*118) + (0*136) + (0*134) + (0*121) + (1*129) + (1*131) = 511
C2,2 = (0*136) + (0*133) + (1*127) + (1*136) + (0*134) + (0*121) + (0*129) + (1*131) + (1*127) = 521
C3,2 = (0*133) + (0*127) + (1*125) + (1*134) + (0*121) + (0*126) + (0*131) + (1*127) + (1*124) = 517
C1,3 = (0*118) + (0*136) + (1*134) + (1*121) + (0*129) + (0*131) + (0*118) + (1*129) + (1*125) = 499
C2,3 = (0*136) + (0*134) + (1*121) + (1*129) + (0*131) + (0*127) + (0*119) + (1*125) + (1*127) = 502
C3,3 = (0*134) + (0*121) + (1*126) + (1*131) + (0*127) + (0*124) + (0*125) + (1*127) + (1*117) = 501
Apabila proses konvolusi telah selesai, Gambar 3.10 adalah hasil akhir konvolusi nilai input image.
Gambar 3.10 Representasi Hasil Akhir Konvolusi
524 518 500
511 521 517
499 502 501
Hasil dari jumlah perkalian matriks antara matriks input dan matriks feature detector tersebut akan menghasilkan feature map.
Pada tahapan selanjutnya adalah max pooling yang membagi output dari convolutional layer menjadi beberapa grid kecil, kemudian mengambil nilai maksimal dari setiap grid tersebut untuk menyusun matriks citra yang telah direduksi. Hasil dari konvolusi tersebut selanjutnya masuk ke proses max pooling. Max pooling akan menghasilkan output yang lebih kecil dari convolution tetapi mengambil nilai maksimal dari matriks tersebut. Proses ini ditunjukkan pada Gambar 3.11.
Gambar 3.11 Representasi Proses Max Pooling
Gambar tersebut menjelaskan tentang proses Max polling layer. Pada gambar diatas menggunakan ukuran pooling 2×2 piksel dan mencari nilai maksimum yang ada pada matriks tersebut. Matriks 2×2 bergerak dari sudut kiri atas pada feature map dan bergeser ke matriks 2×2 selanjutnya sampai melalui semua nilai yang terdapat pada feature map. Setiap matriks akan diambil nilai yang ada pada matriks tersebut sehingga menghasilkan pooled feature map yang ada seperti gambar di atas.
Proses selanjutnya flattening, pada proses ini setiap hasil yang dihasilkan di maxpooling layer harus ditransformasilan menjadi array satu dimensi sebelum dimasukkan ke proses fully connected layer. Hasil transformasi dari maxpooling ditunjukkan pada Gambar 3.12.
Gambar 3.12 Representasi proses Flattening 524 518 500
511 521 517 499 502 501
524 518 521 517
524 518 521 517
524 518 521 517
35
Pada Gambar 3.12 merupakan hasil dari maxpooling dengan mentransformasikan array tiga dimensi menjadi array satu dimensi. Proses ini bertujuan agar data tidak kehilangan informasi spasial dan reversible. Selanjutnya adalah proses fully connected layer. Fully connected layer menghubungkan setiap neuron dari layer ke layer lainnya.
4.3 Perancangan Sistem
Tahapan perancangan sistem berisi tentang berisi tentang perancangan menu sistem dan perancangan antarmuka aplikasi identifikasi penyakit efusi pleura. Perancangan ini bertujuan agar pengguna dapat lebih mudah menjalankan aplikasi.
3.6.1 Rancangan Tampilan Halaman Awal
Tampilan halaman awal terdiri dari judul penelitian pada bagian atas, dan dibawahnya terdapat nama peneliti, nim, serta nama institusi. Terdapat tombol button ‘pengujian’
untuk masuk dan memulai aplikasi dan ‘Keluar’ untuk keluar dari aplikasi. Rancangan tampilan halaman awal dapat dilihat pada Gambar 3.13.
Gambar 3.13 Rancangan Tampilan Halaman Home
3.6.2 Rancangan Tampilan Halaman Training
Tampilan halaman training terdiri dari beberapa bagian yaitu memilih file data latih masing-masing jenis citra paru. Selanjutnya menentukan nilai epoch, learning rate, hidden node, melakukan inisialisasi dan melakukan latih data. Rancangan tampilan halaman training dapat dilihat pada Gambar 3.14.
Gambar 3.14 Rancangan Tampilan Halaman Training Rincian menu yang digunakan pada aplikasi adalah sebagai berikut : 1. Bagian ini akan menampilkan citra data yang di input
2. Tombol ini berfungsi untuk membuka dan memilih data latih berupa file data normal yang akan digunakan sebagai data latih.
3. Tombol ini berfungsi untuk membuka dan memilih data latih berupa file data efusi pleura yang akan digunakan sebagai data latih.
4. Bagian ini berfungsi untuk menampilkan jumlah data citra normal yang sudah di input.
5. Bagian ini berfungsi untuk menampilkan jumlah data citra efusi pleura yang sudah di input.
6. Bagian ini berfungsi untuk menampilkan jumlah citra efusi pleura dan citra normal yang sudah di input.
37
7. Bagian ini menampilkan waktu yang digunakan dalam proses latih data.
8. Bagian ini digunakan untuk mengatur nilai dari epoch.
9. Bagian ini digunakan untuk mengatur nilai learning rate.
10. Bagian ini digunakan untuk mengatur nilai hidden node.
11. Tombol ini berfungsi untuk melakukan training pada data yang sudah di input.
12. Tombol ini berfungsi untuk menghapus data latih yang ada di halaman training.
3.6.3. Rancangan Tampilan halaman Testing
Rancangan tampilan halaman testing terdiri dari berapa bagian yaitu memilih file data uji dari masing-masing jenis citra paru. Selanjutnya dilakukan proses 37able37cessing dan segmentation. Selanjutnya dilakukan identifikasi. Rancangan tampilan halaman testing dapat dilihat pada Gambar 3.15
Gambar 3.15 Rancangan Tampilan Halaman Testing Rincian menu yang digunakan pada aplikasi adalah sebagai berikut:
1. Bagian ini berfungsi untuk menampilkan data uji berupa citra yang akan di uji.
2. Tombol ini berfungsi untuk membuka dan memilih citra yang akan diuji.
3. Bagian ini digunakan untuk melihan nama dan direktori gambar yang akan diuji 4. Tombol ini berfungsi untuk menjalankan proses grayscale
5. Tombol ini berfungsi untuk menyimpan gambar yang sudah melalui proses grayscale
6. Tombol ini berfungsi untuk menjalankan proses scaling
7. Tombol ini berfungsi untuk menyimpan gambar yang sudah melalui proses scaling 8. Bagian ini berfungsi untuk memasukkan nilai thresholding yang akan digunakan 9. Tombol ini berfungsi untuk menyimpan gambar yang sudah melalui proses
thresholding
10. Tombol ini berfungsi untuk menjalankan proses thresholding
11. Bagian ini berfungsi untuk melihat berapa lama waktu yang diperlukan untuk menjalani proses identifikasi
12. Bagian ini berfungsi untuk melihat hasil identifikasi.
13. Tombol ini berfungsi untuk menjalankan proses identifikasi.
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi implementasi dan pengujian aplikasi berdasarkan analisis dan perancangan aplikasi yang telah dibahas pada bab sebelumnya. Pada tahap ini, bertujuan untuk menampilkan hasil perancangan aplikasi yang telah dibangun dan proses pengujian aplikasi dalam melakukan idenntifikasi penyakit efusi pleura.
4.1. Kebutuhan Aplikasi
Dalam perancangan aplikasi identifikasi penyakit efusi pleura melalui citra chest X-ray menggunakan Convolutional Neural Network ( CNN ) menggunakan perangkat keras dan perangkat lunak pendukung antara lain :
4.1.1. Perangkat Keras
Spesifikasi perangkat keras yang digunakan pada aplikasi ini antara lain : 1. IntelI CoreI i-7-8750H CPU @ 2.20 GHz 2.50 GHz
2. Memori RAM 8 GB
3. Kapasitas harddisk 1000 GB
4. Sistem operasi Windows 10 Pro 64 bit 5. Microsoft Visual Studio 2019
4.1.2. Implementasi Perancangan Antarmuka
Implementasi perancangan antarmuka sistem berdasarkan analisi dan rancangan yang telah dilakukan di Bab 3, sebagai berikut :
4.1.2.1. Tampilan Halaman Home
Halaman home adalah halaman yang muncul pertama kali saat aplikasi dijalankan.
Tampilan halaman home dapat dilihat pada gambar 4.1.
Gambar 4.1 Tampilan Halaman Home 4.1.2.2 Tampilan Halaman Training
Tampilan halaman training merupakan halaman untuk melakukan pelatihan data identifikasi efusi pleura. Terdapat dua bagian pada halaman ini yaitu bagian pengaturan parameter dan proses latih data. Tampilan tersebut dapat dilihat pada Gambar 4.2.
41
Gambar 4.2 Tampilan Halaman training 4.1.2.3 Tampilan Halaman Testing
Tampilan halaman testing merupakan halaman untuk melakukan pengujian data identifikasi efusi pleura dengan menggunakan metode Convolutional Neural Network.
Terdapat dua bagian utama pada halaman ini yaitu bagian prepocessing, dan proses pengujian data. Tampilan tersebut dapat dilihat pada Gambar 4.3.
Gambar 4.3 Tampilan Halaman Testing.
4.1.3. Implementasi Data
Data yang dimasukkan ke dalam sistem adalah citra X-ray paru (normal dan efusi pleura) yang bersumber dari Rumah Sakit Umum Daerah Meuraxa Aceh, situs https://data.mendeley.com dan situs http://www.jsrt.or.jp. Rangkuman data yang digunakan sebagai dapat dilihat pada tabel 4.1.
Tabel 4.1 Pembagian data
Data Set Data Pelatihan Data Pengujian Jumlah Data
Paru Normal 225 75 300
Paru Sakit 202 68 270
4.2 Prosedur Operasional
Ketika aplikasi dijalankan pengguna masuk kehalaman home. Selanjutnya pengguna memilih menu “pengujian”. Selanjutnya, pada menu training terdapat dua select button untuk memilih file citra paru – paru normal dan paru – paru yang terkena efusi pleura.
Kemudian akan muncul tampilan seperti Gambar 4.4untuk memilih citra yang akan dilatih.
Gambar 4.4 Tampilan Halaman Pemilihan Citra
43
Kemudian ada juga button train untuk melatih data file citra yang sudah di masukkan. Lalu button Reset merupakan button untuk kembali ke pengaturan awal.
Tampilan training sistem ditunjukkan pada Gambar 4.2. Selanjutnya, setelah data citra di train lalu data citra di testing seperti yang ditunjukkan pada Gambar 4.3. Di dalam menu testing ada open image yang merupakan select button yang dapat diklik sehingga akan menampilkan kotak dialog untuk memilih file citra jenis mobil. Lalu ada button scale untuk mengubah ukuran piksel citra. Kemudian ada button grayscale untuk mengubah file citra awal menjadi keabuan, button threshold untuk mengkonversi citra gray-level ke citra bilevel (binary image), textfield yang merupakan tempat hasil url location file, dan button identifikasi untuk mengidentifikasi efusi pleura dengan menggunakan metode Convolutional Neural Network (CNN). Hasil yang akan tertampil seperti Gambar 4.5.
Gambar 4.5 Tampilan Halaman Setelah Melakukan Testing.
4.3. Pengujian Sistem
Pengujian sistem dilakukan untuk mengetahui kinerja dari metode Convolutional Neural Network dalam mengidentifikasi penyakit efusi pleura. Pengujian data dilakukan terhadap 143 citra X – Ray paru – paru. Data uji terbagi menjadi 75 citra X – Ray paru – paru normal dan 68 citra X – Ray paru – paru yang terkena efusi pleura.
Pada penelitian ini sistem diuji degan menggunakan parameter EPOCH yang berbeda – beda tetapi menggunakan parameter Learning Rate dan Hidden Node yang
sama. Pada pengujian sistem menggunakan parameter EPOCH 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400. Pengujian dilakukan dengan parameter Learning Rate = 1 dan Hidden Node = 50. Pengujian nilai parameter yang berbeda-beda bertujuan untuk mendapatkan nilai EPOCH yang mampu mengidentifikasi efusi pleura dengan akurasi yang lebih tinggi. Hasilnya ditunjukkan pada Gambar 4.6.
Gambar 4.6 Hasil Testing dengan Bobot Epoch berbeda Tabel 4.2 Confussion Matrix pada bobot Epoch 1200
Normal Efusi Total
Normal 74 1 75
Efusi 2 66 68
Total 76 67 143
Berdasarkan hasil pengujian sistem, sistem menyentuh akurasi terbaiknya di angka 94,4% dengan menggunakan bobot epoch 1200. Sementara itu pada epoch 100 memiliki akurasi hanya 17,4% yang dimana angka tersebut merupakan akurasi terendah. Pengujian dengan bobot epoch 1200 dapat mengidetifikasi secara tepat dengan total 135 gambar dari 148 gambar yang digunakan sebagai citra uji.
17.4 26.5
39.1
29.3 32.8 43.3
54.5 52.4 64.3
76.9 88.8
94.4 86
69.9
0 10 20 30 40 50 60 70 80 90 100
epoch 100
epoch 200
epoch 300
epoch 400
epoch 500
epoch 600
epoch 700
epoch 800
epoch 900
epoch 1000
epoch 1100
epoch 1200
epoch 1300
epoch 1400
Persentase
Jumlah Epoch