IDENTIFIKASI KANKER PARU PADA CITRA CHEST X-RAY DENGAN METODE CONVOLUTIONAL NEURAL NETWORK
SKRIPSI
YOLANDA NATASYA NAIBAHO 141402077
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2021
IDENTIFIKASI KANKER PARU PADA CITRA CHEST X-RAY DENGAN METODE CONVOLUTIONAL NEURAL NETWORK
SKRIPSI
Diajukan untuk memenuhi tugas dan memenuhi syarat memperoleh Ijazah Sarjana Teknologi Informasi
YOLANDA NATASYA NAIBAHO 141402077
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2021
iii
iv PERNYATAAN
IDENTIFIKASI KANKER PARU PADA CITRA CHEST X-RAY DENGAN METODE 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, November 2021
YOLANDA NATASYA NAIBAHO 141402077
v UCAPAN TERIMAKASIH
Puji dan syukur penulis sampaikan kepada Tuhan Yang Maha Esa yang telah memberikan kasih karunia-Nya dan atas izin-Nya sehingga penulis dapat menyelesaikan skripsi sebagai syarat untuk memperoleh gelar sarjana Komputer pada Program Studi S1 Teknologi Informasi Fakultas Ilmu Komputer dan Teknologi Universitas Sumatera Utara.
Penulis juga ingin menyampaikan ucapan terima kasih sedalam-dalamnya kepada semua pihak yang telah membantu dan ikut terlibat dalam masa perkuliahan serta pengerjaan skripsi ini:
1. Bapak Dr. Muryanto Amin S.Sos., M.Si selaku Rektor Universitas Sumatera Utara.
2. Ibu Dr. Maya Silvi Lydia M.Sc selaku Dekan Fasilkom-TI Universitas Sumatera Utara.
3. Ibu Sarah Purnamawati ST., M.Sc. selaku Ketua Program Studi S1 Teknologi Informasi dan Bapak Arisandi ST., M.Sc. selaku sekertaris Program Studi S1 Teknologi Informasi Universitas Sumatera Utara.
4. Bapak Romi Fadillah Rahmat B.Comp.Sc., M.Sc selaku Dosen Pembimbing I dan Ibu Ulfi Andayani S.Kom., M.Kom selaku Dosen Pembimbing II yang telah memberikan bimbingan dan saran kepada penulis sehingga skripsi ini dapat terselesaikan.
5. Orang tua penulis, M. Y. Naibaho dan Rosmaida Sijabat, Paman dan Bibi penulis, J. Sihotang dan Ristauli Sijabat, serta saudara penulis Rouli Natalina S.Agr, Birgita Rani Estika, Martha Tiurma dan Nikolas yang telah memberikan perhatian, saran dan dukungan selama masa perkuliahan hingga selesai.
6. Tama Loy Denis S.Kom, Joceline Wirtjes S.Kom, Astria Silaban S. Kom, yang telah bersedia membagikan ilmunya kepada penulis.
7. Sahabat terkasih penulis Caroline Sihombing S.Kom, Riyan Maria Simamora S.Kom, Devy Iriani Purba S.Kom, Lisa Felicia, Bela Anugrah S.Kom, Veny
vi Apriyanti Manalu S.Kom, Rini Tiurma Silalahi, Ita Purnama Sari Panggabean S.Kom, Joceline Wirtjes S.Kom, Rosmaini Rosmiani Tarigan S.Kom, Sarah Elisabet Nainggolan S.Kom dan Juni Pakpahan S.Kom.
8. Seluruh teman-teman Teknologi Informasi 2014 terutama Kom C.
Semoga Tuhan melimpahkan kasih dan berkat-Nya kepada semua orang yang telah memberikan bantuan, perhatian dan dukungan pada penulis selama ini sehingga penulis dapat menyelesaikan skripsi ini.
Medan, November 2021
Penulis
vii ABSTRAK
Kanker paru-paru adalah salah satu penyakit penyebab kematian paling banyak nomor dua setelah kanker payudara di seluruh dunia dan terhitung hampir 10 juta kematian di tahun 2020 menurut WHO. Salah satu cara untuk mengetahui adanya penyakit ini yaitu dengan memeriksakan diri ke rumah sakit dengan hasil foto rontgen atau disebut juga X-Ray. Walaupun dokter atau pihak rumah sakit mampu memeriksa hasil citra rontgen, namun hal ini masih dilakukan secara kasat mata untuk itu sudah banyak penelitian yang dilakukan dan masih terus berkembang dalam hal pendeteksian adanya kanker pada paru guna mengurangi dampak yang serius serta dapat melakukan penanganan yang terbaik. Untuk itu perlu dilakukan pendekatan untuk mendeteksi kanker paru guna mendapatkan hasil deteksi yang lebih baik.
Penelitian ini bertujuan untuk mendeteksi adanya kanker pada paru melalui citra chest x-ray dengan penerapan deep learning yaitu Convolutional Neural Network (CNN). Langkah-langkah perancangan penelitian dilakukan peneliti dalam melakukan penelitian yaitu pre-processing kemudian identifikasi. Dalam proses pre- processing tahapannya adalah resizing, grayscaling serta upaya perbaikan citra dengan meningkatkan kontras yang merata pada histogram citra dengan Contrast Limited Adaptive Histogram Equalization (CLAHE). Kemudian untuk tahapan identifikasi, model CNN belajar untuk mengenali citra dengan melakukan training menggunakan nilai epoch, jumlah convolution layer, dan fungsi ativasi yang berbeda untuk mendapatkan tingkat akurasi yang terbaik. Untuk menghindari terjadinya overfitting dilakukan data augmentation pada data training. Penelitian yang dilakukan memperoleh hasil yaitu CNN mampu melakukan identifikasi pada citra chest x-ray dengan tingkat akurasi mencapai 87%.
Kata Kunci : Kanker paru, grayscaling, CLAHE dan Convolutional Neural Network
viii ABSTRACT
Lung Cancer is a leading cause of death worldwide, accounting for nearly 10 million deaths in 2020 stated by World Health Organization (WHO). Detecting lung cancer as early as possible will avoid the worst risk and will help to save the patient. The patient can go to the hospital to detect the lung cancer, either using X-ray, CT-Scan or MRI. Most people are using X-ray method for medical check up. Although doctors are able to examine the results of X-ray images with bare eyes, however, there are many studies have been researched and still being developed in terms of detecting lung cancer in order to reduce the serious impact and be able to make decision for appropriate treatment. Therefore, an approachment is needed to detect lung cancer.
This study was conducted to detect lung cancer on chest x-ray images using Convolutional Neural Network (CNN) method. In this study, the processes to identify the lung cancer are pre-processing stage, and identification stage. In the pre- processing process, there are resize, grayscale and Contrast Limited Adaptive Histogram Equalization (CLAHE). Then for identification process, CNN will learn to recognize images by doing training using different epoch values, number of convolution layers, and activation functions to get the best accuracy. To avoid overfitting, data augmentation is performed on training data. This study obtains the result which shows that CNN is able to identify lung cancer with 87% accuracy.
Keywords : Lung Cancer, grayscaling, CLAHE, and Convolutional Neural Network
ix DAFTAR ISI
PERSETUJUAN ii
PERNYATAAN iii
UCAPAN TERIMAKASIH iv
ABSTRAK vi ABSTRACK vii DAFTAR ISI viii DAFTAR TABLE xi
DAFTAR GAMBAR xii
BAB I PENDAHULUAN 1
1.1. Latar Belakang 1
1.2. Rumusan Masalah 3
1.3. Batasan Masalah 3
1.4. Tujuan Penelitian 3
1.5. Manfaat Penelitian 3
1.6. Metodologi Penelitian 4
1.7. Sistematika Penulisan 5
BAB II LANDASAN TEORI 7
2.1. Paru-paru 7
2.2. Kanker Paru 7
x
2.2.1. Gejala Kanker Paru 8
2.2.2. Faktor Penyebab Kanker Paru 8
2.2.3. Diagnosis 8
2.2.4. Pencegahan 9
2.3. Citra 9
2.4. Pengolahan Citra Digital 10
2.4.1. Resizing 10
2.4.2. Grayscaling 10
2.4.3. CLAHE 11
2.5. Machine Learning 11
2.5.1 Artificial Neural Network 12 2.5.2 Convolutional Neural Network 13
2.6. Penelitian Terdahulu 16
2.7. Perbedaan Penelitian 19
BAB III ANALISIS DAN PERANCANGAN SISTEM 20
3.1 Data yang digunakan 20
3.2 Analisis Sistem 21
3.2.1 Image Acquisition 22
3.2.2 Image Preprocessing 22
3.2.2.1 Resizing 22
3.2.2.2 Grayscaling 25
3.2.2.3 Contrast Enhancement 26
3.2.3 Convolutional Neural Network 28
xi
3.3 Perancangan Antarmuka Sistem 31
3.3.1 Rancangan Tampilan Home 31
3.3.2 Rancangan Tampilan Training Data 32
3.3.3 Rancangan Tampilan Testing 33
BAB IV IMPLEMENTASI DAN PENGUJIAN 34
4.1 Implementasi Sistem 34
4.1.1 Perangkat Keras dan Lunak 34
4.1.2 Implementasi Perancangan Antarmuka 35
4.1.3 Implementasi Data 38
4.2 Prosesdur Operasional 39
4.3 Pengujian Sistem 42
BAB V KESIMPULAN DAN SARAN 49
5.1 Kesimpulan 49
5.2 Saran 49
DAFTAR PUSTAKA 52
xii DAFTAR TABLE
Tabel 2.1 Penelitian Terdahulu 18
Tabel 3.1 Pembagian Data yang digunakan 21
Tabel 3.2 Citra Resizing 23
Tabel 3.3 Citra Grayscaling 25
Tabel 3.4 Citra CLAHE 27
Tabel 3.5 Proses Latih Data pada setiap layer 30
Tabel 4.1 Pengujian Model 45
Tabel 4.2 Data Hasil Pengujian 46
xiii DAFTAR GAMBAR
Gambar 2.1 Kanker Paru 7
Gambar 2.2 Neuron pada Otak Manusia 12
Gambar 2.3 Neuron pada ANN 12
Gambar 2.4 Arsitktur ANN 13
Gambar 2.5 Proses Konvolusi layer untuk mendapatkan Feature Map 14
Gambar 2.6 Operasi Pooling Layer dengan Max Pooling 15 Gambar 2.7 Perbedaan Penelitian Terdahulu 19 Gambar 3.1 Arsitektur Umum 21 Gambar 3.2 Citra x-ray Paru-paru 22 Gambar 3.3 Tampilan Home Page 32
Gambar 3.4 Tampilan Training Page 32
Gambar 3.5 Tampilan Testing Page 33
Gambar 4.1 Tampilan Home Page 35 Gambar 4.2 Tampilan Training Page 36
Gambar 4.3 Grafik Akurasi dan Loss 37
Gambar 4.4 Tampilan Testing Page 37
Gambar 4.5 Daftar Citra Traning Noncancer 38
Gambar 4.6 Daftar Citra Training Cancer 38
Gambar 4.7 Tampilan Halaman Home 39
Gambar 4.8 Tampilan Halaman Training 40
Gambar 4.9 Tampilan Halaman Proses Training 40
Gambar 4.10 Tampilan Input Citra 41 Gambar 4.11 Tampilan Halaman Testing dan Hasil Cancer 42 Gambar 4.12 Tampilan Halaman Testing dan Hasil Non Cancer 42 Gambar 4.13 Hasil Percobaan 1 dengan epoch 100 42 Gambar 4.14 Contoh citra asli 43
Gambar 4.15 Citra hasil augmentasi 43
Gambar 4.16 Hasil percobaan kedua dengan epoch 100 44
xiv Gambar 4.17 Hasil percobaan ketiga dengan epoch 200 44 Gambar 4.18 Diagram percobaan model cnn 45
1 BAB 1
PENDAHULUAN
1.1. Latar Belakang Masalah
Di dalam tubuh manusia, paru-paru memegang peran penting dalam pernapasan yaitu bertugas menukar oksigen di udara dengan karbon dioksida dari darah. Kanker merupakan penyakit yang dapat menyerang bagian seluruh tubuh, hal ini tentu perlu diwaspadai terutama jika menyerang paru-paru. Ketika kanker muncul yaitu saat dimana sel di dalam paru-paru bertumbuh secara tidak terkendali. Jika dibiarkan tentu dapat menimbulkan masalah pada tubuh dan fatalnya bisa mengakibatkan kematian.
Kanker paru-paru adalah salah satu penyebab kematian paling banyak nomor dua setelah kanker payudara di seluruh dunia dan terhitung hampir 10 juta kematian menurut World Health Organization (2020). Melakukan pencegahan sedini mungkin dapat menghindari resiko terburuk akibat penyakit kanker paru. Untuk mengetahui adanya penyakit ini perlu dilakukan pemeriksaan diri ke rumah sakit.
Pemeriksaan dapat dilakukan dengan beberapa cara yaitu Foto Rontgen, CT Scan, dan MRI. Umumnya, pasien lebih memilih untuk melakukan pemeriksaan dengan hasil foto rontgen atau disebut juga X-Ray (Sinar-X) karena biaya yang terjangkau.
Walaupun dokter atau pihak rumah sakit mampu memeriksa hasil citra rontgen, namun hal ini masih dilakukan secara kasat mata, untuk itu sudah banyak penelitian yang dilakukan dan masih terus berkembang dalam hal pendeteksian adanya kanker pada paru guna mengurangi dampak yang serius serta dapat melakukan penanganan yang terbaik. Masalah ini banyak mendapat perhatian dari para peneliti dengan menerapkan metode Machine Learning yang diharapkan mampu mendeteksi citra kanker paru lebih baik.
2 Penelitian untuk mendeteksi penyakit kanker paru ini telah dilakukan sebelumnya oleh Lilik Anifah (2017) dengan judul menggunakan Artificial Neural Network Backpropagation dengan fitur ekstraksinya yaitu Gray Level Coocurrence Matrices Feature yang mendeteksi kanker paru pada citra CT Scan dengan tahap pre- processing grayscale dan binary. Kemudian menggunakan median filter untuk mengurangi noise dan melakukan ekstraksi dengan fitur GLCM (Gray Level Coocurrance Matrix) serta mendeteksi dengan metode Backpropagation Neural Network dengan tingkat akurasi sebesar 80%.
Worawate Ausawalaithong, et al. juga melakukan suatu penelitian untuk memprediksi kanker paru menggunakan pendekatan Deep Learning. Pada penelitian ini peneliti menggunakan 121-Layer Convolutional Neural Network yang juga dikenal dengan DenseNet. Penelitian ini berhasil mencapai tingkat akurasi sebesar 74.43%
Emine Cengil dan Ahmet Cinar juga melakukan penelitian untuk mengidentifikasi kanker. Mereka menggunakan citra CT-Scan paru untuk mendeteksi kanker jinak dan kanker ganas dengan metode Convolutional Neural Network dan menggunakan sebanyak 70 data citra CT-Scan pasien. Dari hasil penelitian yang dilakukan mereka berhasil mencapai tingkat akurasi sebesar 70%.
Ioana Mocan et al. melakukan penelitian dengan menggunakan metode yang sama yaitu Convolutional Neural Network untuk mendeteksi adanya tumor pada sel darah merah. Penelitian ini menggunakan citra Microscopic dan hasil akhirnya akan dideteksi menggunakan Convolutional Neural Network. Penelitian ini juga melakukan segmentasi menggunakan Hough Circle Algorithm dan mencapai tingkat akurasi sebesar 99.8%.
Rika Rokhana, dkk, melakukan sebuah penelitian yaitu pendeteksian Patah Tulang Femur melalui Citra Ultrasonik B–Mode dengan Convolutional Neural Network. Penelitian ini melakukan deteksi patah tulang pada sapi serta ayam khususnya tulang femur dan menggunakan Gelombang Ultrasonik (US) sebagai media pendeteksi selain menggunakan X-Ray atau CT-Scan. Penelitian dilakukan
3 dengan melakukan percobaan lima variasi desain arsitektur CNN (CNN1 – CNN5) dan model CNN-4 dapat mengenali kontur tulang serta klasifikasi patah tulang dengan akurasi mencapai 95%.
Berdasarkan pemaparan dari penelitian terdahulu, pada kesempatan ini peneliti mengajukan penelitian menggunakan metode Convolutional Neural Network karena mampu mendeteksi kanker dengan tingkat akurasi yang baik dengan judul penelitian yaitu “Identifikasi kanker paru pada citra chest x-ray dengan Convolutional Neural Network”.
1.2. Rumusan Masalah
Untuk mendiagnosa adanya kanker pada paru, para dokter masih menggunakan pengamatan secara kasat mata untuk mengidentifikasi penyakit kanker paru-paru.
Oleh sebab itu, diperlukan adanya pendekatan metode secara komputasi untuk membantu serta mempermudah bagi dokter untuk mengidentifikasi penyakit kanker paru dengan tingkat akurasi lebih baik pada citra rontgen (x-ray).
1.3. Batasan Masalah
Dalam melakukan penelitian, penulis membatasi ruang lingkup pembahasan yaitu : a. Jenis citra yang dipakai adalah citra hasil foto rontgen (X-ray)
b. Format yang digunakan adalah .jpeg atau .jpg c. Resolusi citra yang digunakan adalah 224 x 224
d. Penelitian yang dilakukan untuk mengidentifikasi adanya kanker pada citra x-ray.
1.4. Tujuan Penelitian
Penelitian dilakukan dengan tujuan mengidentifikasi adanya kanker pada paru-paru pasien dengan metode Convolutional Neural Nerwork.
1.5. Manfaat Penelitian
Dilakukannya penelitian identifikasi pada kanker paru diharapkan dapat membantu dalam bidang medis untuk dapat mendiagnosis kanker paru serta memberikan
4 wawasan mengenai metode Convolutional Neural Network dan menjadi referensi bagi peneliti lainnnya.
1.6. Metodologi Penelitian
Penelitian dilakukan dengan tahapan:
1. Studi Literatur
Studi literatur sebagai tahap awal dalam pengerjaan penelitian untuk mempelajari metode serta informasi yang berhubungan dengan metode yang digunakan yang bisa didapatkan melalui buku, jurnal dari penelitian yang sudah ada serta berbagai sumber lainnya yang dapat dijadikan sebagai referensi dalam pelaksanaan penelitian antara lain penyakit kanker pada paru-paru, grayscale, thresholding, convolutional neural network.
2. Analisis Permasalahan
Analisis permasalahan bertujuan untuk menganalisa berbagai informasi terkait dari studi literature dan dapat memutuskan metode yang digunakan dalam penelitian untuk identifikasi kanker paru dan normal melalui citra foto rontgen.
3. Perancangan Sistem
Perancangan sistem dilakukan berdasarkan hasil tahap analisis yang diperoleh untuk membangun rancangan sistem.
4. Implementasi
Tahapan implementasi dilakukan sesuai dengan rancangan sistem dimana sistem akan dibangun menggunakan media-media yang sudah ditentukan seperti menggunakan Pycharm sebagai media editor dan menggunakan bahasa pemrograman Python untuk membangun sistem.
5. Pengujian
Setelah implementasi dilakukan, maka sistem harus diuji terlebih dahulu serta melakukan evaluasi dari sistem yang telah dirancang.
5 6. Penyusunan Laporan
Setelah dilakukan pengujian, tahapan terakhir dari penelitian ini adalah menyusun laporan sebagai bentuk dokumentasi dari sistem yang dibangun serta menambahkan saran dan kesimpulan sebagai bentuk perbaikan bagi peneliti yang ingin melanjutkan penelitian terkait.
1.7. Sistematika Penulisan Bab 1 : Pendahuluan
Bagian pendahuluan menjelaskan bagaimana latar belakang permasalahan yang ingin diselesaikan kemudian menjelaskan rumusan masalah tersebut, menentukan batasan masalah pada penelitian, tujuan diadakannya penelitian, manfaat penelitian yang dilakukan, metode yang diterapkan dalam penelitian serta bagaimana sistematika penulisan.
Bab 2 : Landasan Teori
Landasa teori berisikan penjelasan teori pendukung dalam penelitian ini serta penjelasan terkait metode penyelesaian permasalahan yang dibahas seperti penyakit kanker paru-paru, pengolahan citra digital dan metode machine learning yaitu convolutional neural network.
Bab 3 : Analisis dan Perancangan Sistem
Dalam melakukan penelitian perlu dilakukan analisa terhadap masalah dan penyelesaiannya serta merancang sistem untuk penyelesaiannya dan di bagian ini menjelaskan tentang arsitektur umum dari rancangan sistem serta tahapan yang dilakukan untuk membangun sistem dimulai dari pengumpulan data, pemrosesan data, tahap training data dan testing data.
6 Bab 4 : Implementasi dan Pengujian Sistem
Sistem yang sudah dibangun akan diimplementasikan serta dilakukan pengujian berdasarkan rancangan sistem pada bagian analisa dan rancang sistem sebelumnya.
Dari hasil yang diperoleh kemudian dijelaskan kelebihan serta kekurangan sistem.
Bab 5 : Kesimpulan dan Saran
Setelah proses penelitian dilakukan dapat diperoleh kesimpulan secara keseluruhan dari penelitian dan memberikan saran-saran membangun untuk peneliti selanjutnya yang ingin melakukan penelitian berkaitan.
7 BAB 2
LANDASAN TEORI
2.1 Paru-paru
Paru-paru adalah dua organ yang berbentuk seperti bunga karang besar yang terletak di dalam torak pada sisi lain jantung dan pembuluh darah besar. Paru-paru memanjang mulai dari akar leher menuju diafragma dan secara kasar berbentuk kerucut dengan puncak di sebelah atas dan alas di sebelah bawah. Fungsi utama paru adalah sebagai alat pernapasan yaitu melakukan pertukaran udara (ventilasi), yang bertujuan untuk menghirup masuknya udara dari atmosfer kedalam paru-paru (inspirasi) dan mengeluarkan udara dari alveolar ke luar tubuh (ekspirasi) (Watson, R. 2002).
2.2 Kanker Paru-paru
Kanker paru-paru merupakan tumor ganas yang berkembang di sistem pernapasan bagian bawah, termasuk sel-sel di dinding bronkus dan bronkiolus. 90% dari kasus kanker paru- paru terkait dengan kegiatan merokok. Merokok merupakan faktor utama yang memicu berkembangnya sel kanker pada paru-paru. Terkena paparan asap rokok yang berkepanjangan dapat meningkatkan resiko terkena kanker paru-paru (Diananda, 2010).
Gambar 2.1. Kanker Paru-paru (https://mediskus.com)
8 2.2.1 Gejala Kanker Paru
Adapun gejala yang timbul pada kanker paru pada fase awal penderita belum menunjukan gejala klinis atau disebut fase subklinis. Namun pada fase klinis ditemukan gejala seperti (Lestariningsih, 2010) :
Adanya keluhan batuk,
Gejala Hemoptysis,
Gejala Dispnea,
Kemudian nyeri pada dada, bahu, dan lengan,
Merasakan mengi (wheezing),
Terjadi kerusakan vena cava superior,
Mengalami Disfagia, Parau atau Hoarseness,
Terjadi efusi pleura,
Mengalami kerusakan pada trakea,
Gejala metastases (otak, tulang, hati, adrenal),
Gejala Anemia, serta terjadi penurunan berat badan.
2.2.2 Faktor Penyebab Kanker Paru
Faktor penyebab pasti adanya kanker yang muncul pada paru tidak dapat dipastikan, namun jika terkena paparan suatu zat yang bersifat karsinogenik secara berkepanjangan dapat menjadi suatu faktor penyebab utama penyakit kanker. Perokok pasif dan aktif juga bisa memicu kanker disamping faktor lainnya seperti genetik, kekebalan tubuh dan faktor lainnya (Amin, 2006).
2.2.3 Diagnosis
Dari kasus yang ada, sekitar 15% kasus terkait kanker paru berhasil dideteksi pada stadium awal (Zhou, et al 2002: 2). Untuk itu penanganan sejak dini untuk kanker stadium awal harus segera cepat ditangani agar mencegah penyebaran kanker ke seluruh tubuh dan mampu mengurangi angka kematian. Ada beberapa cara untuk mendiagnosis kanker seperti pemeriksaan dengan Computed Tomography (CT Scan) atau radiologi dengan sinar X (x- ray) yang mampu menghasilkan citra bagian tubuh, pemeriksaan menggunakan Magnetic
9 Resonance Imaging (MRI) yang memanfaatkan penggunaan medan magnet dan frekuensi radio serta pemeriksaan dengan metode Biopsy yaitu pemeriksaan dengan mikroskopik menggunakan contoh jaringan tubuh paru (Agency for Toxic Subtances and Disease Registry, 2013: 4).
2.2.4 Pencegahan
Pencegahan dapat dilakukan dengan beberapa cara dan dengan mencegahnya sedini mungkin untuk meminimalisir kemungkinan terkena penyakit kanker ini. Berikut adalah beberapa cara yang bisa diterapkan menurut CDC (2010) yaitu:
a. Berhentilah merokok. Merokok merupakan salah satu faktor resiko paling tinggi yang menyebabkan seseorang terkena kanker paru.
b. Bukan hanya perokok aktif, tetapi perokok pasif juga meningkatkan resiko terkena penyakit ini. Hindari perokok aktif di sekitar Anda agar asap rokok tidak terhirup.
c. Pastikan lingkungan sekitar Anda aman dari gas radon seperti di rumah atau lingkungan kerja.
d. Jagalah kesehatan terutama pola makan yang sehat disertai olahraga teratur
2.3 Citra (Image)
Citra adalah gambar pada bidang dua dimensi dan terbagi menjadi 2, citra analog serta citra digital. Citra analog adalah fungsi kontinyu dari intensitas cahaya pada bidang dua dimensi.
Citra harus direpresentasikan secara numerik agar dapat dibaca oleh komputer dan citra yang direpresentasikan secara numerik disebut citra digital. Citra digital merupakan citra yang tersusun dalam bentuk grid/kisi dimana setiap kotaknya disebut piksel (picture element) dan memiliki koordinat (x,y). Setiap piksel memiliki nilai (value) untuk mengindikasikan intensitas warna pada masing-masing piksel (Ricky A. S. dan Bambang H. P, 2017).
10 2.4 Pengolahan Citra Digital
Citra digital merupakan salah satu output dari alat-alat teknologi yang sudah dikembangkan dewasa ini. Namun seringkali citra yang dihasilkan tidak sesuai dengan ekspektasi. Hal ini terjadi dikarenakan adanya hasil gambar yang kurang baik yang disebabkan beberapa hal seperti noise, warna yang terlalu kontras, kualitas gambar yang kabur dan lain sebagainya.
Untuk itu, agar suatu citra dapat dipresentasikan dengan baik perlu adanya manipulasi citra untuk meningkatkan kualitas citra dan mengolah citra dengan Pengolahan Citra Digital (Gonzalez & Woods, 2008).
2.4.1. Resizing
Resizing adalah tahapan dimana citra akan diolah dengan mengubah ukuran citra menjadi lebih kecil untuk mempermudah pada saat melakukan training data hingga identifikasi.
Ukuran citra sangat mempengaruhi proses training data, semakin besar ukuran piksel pada gambar maka semakin lama untuk diproses. Untuk itu, ukuran citra akan diubah menjadi lebih kecil.
2.4.2. Grayscaling
Citra grayscale adalah citra yang memiliki warna tingkat keabuan dimana hasil warna abu berasal dari warna Red (merah), Green (hijau) dan Blue (biru) dengan intensitas yang sama.
Intensitas warna grayscale direperesentasikan dalam 8 bit integer yang memberikan 256 level keabuan yaitu level 0 - 255 dimana 0 untuk intensitas warna hitam dan 255 untuk intensitas warna putih dan nilai diantaranya adalah derajat keabuan. Banyaknya warna pada citra grayscale tergantung pada jumlah bit yang disediakan memori untuk menampung kebutuhan warna ini. Semakin besar jumlah bit warna yang disediakan memori, semakin halus gradiasi warna yang terbentuk (Putra, 2010).
𝐺 =
(𝑟+𝑔+𝑏)3 (2.1)
Keterangan: r = nilai warna merah, g = nilai warna hijau, dan b = nilai warna biru
11 2.4.3. Contrast Limited Adaptive Histogram Equalization (CLAHE)
Kontras merupakan tingkat sebaran piksel dalam intensitas warna citra. Dalam suatu citra, kontras merupakan hal yang penting dalam peningkatan kualitas citra dan CLAHE merupakan salah satu metode untuk perbaikan kontras. CLAHE bekerja dengan memberikan batas (clip limit) pada nilai histogram citra sebagai nilai maksimum histogram sehingga dapat meningkatkan kontras yang merata serta menghindari peningkatan kontras yang berlebihan pada citra. Berikut adalah langkah cara kerja CLAHE pada citra (Ramya, 2012):
1. Citra akan dibagi menjadi bagian-bagian yang berukuran MxN atau disebut tile 2. Setiap tile akan dihitung histogramnya
3. Kemudian dilakukan clipped histogram. Jumlah piksel dari setiap tile didistribusi secara merata pada masing-masing derajat keabuan.
4. Membatasi contrast histogram pada setiap tile, kemudian setiap tile dihubungkan dengan menggunakan interpolasi bilinear. Menghitung clip limit suatu histogram dapat dihitung dengan rumus berikut (persamaan 2.2) :
β =
MN
(1 +
α100
(s − 1)) (2.2)
Dimana : M = Luas Region Size N = Nilai Grayscale α = nilai clip factor
2.5 Machine Learning
Machine Learning merupakan salah satu metode dalam dunia Kecerdasan Buatan (Artificial Intelligence) yang digunakan untuk membantu manusia dalam menyelesaikan masalah dengan menirukan bagaimana manusia belajar dan menggeneralisasi. Contoh masalah yang dapat diselesaikan seperti pengambilan keputusan serta klasifikasi gambar/citra. Metode yang sering dipakai dalam machine learning seperti Support Vector Machine serta Neural Network. (Abu Ahmad, 2017).
12 2.5.1 Artificial Neural Network (ANN)
ANN atau disebut juga Jaringan Saraf Tiruan yang merupakan bagian Machine Learning dimana ANN ini bekerja dengan meniru cara kerja saraf pada otak manusia. ANN ini terdiri dari 3 bagian utama layer yaitu input, hidden dan output. Pada masing-masing layernya terdiri dari satu atau beberapa unit neuron serta memiliki fungsi aktivasi untuk menentukan hasil keluarannya. Untuk dapat menyelesaikan masalah, ANN dilatih menggunakan data training agar ANN dapat belajar mengenali data. Setelah ditraining ANN menghasilkan model yang nantinya dilakukan evaluasi serta testing untuk mendapatkan hasil sebaik mungkin.
Gambar 2.2 Neuron pada otak manusia (Sena, 2017)
Beberapa bagian neuron yaitu dendrit, akson dan synapsis. Dimana dendrit memiliki fungsi untuk mengirim impuls ke badan sel neuron, kemudian akson menerima impuls tersebut dan sinapsis sebagai penghubung antarneuron.
Gambar 2.3 Neuron pada ANN (Sena, 2017)
13 ANN terbagi menjadi dua, yaitu Single Perceptron dan Multilayer Perceptron. Single perceptron merupakan bagian terkecil dari ANN karena hanya memiliki satu neuron dan Multilayer Perceptron (MLP) merupakan model neural network dengan banyak hidden layer yang membantu model semakin baik dalam mengenali data. Namun, semakin banyak jumlah hidden layer, dapat membuat proses training yang lebih lama karena jumlah iterasi yang juga semakin banyak. Maka dari itu, dari multilayer perceptron dikembangkanlah metode Deep Learning untuk mengatasi kekurangan multilayer perceptron. Dengan kata lain deep learning adalah model neural network dengan banyak hidden layer.
2.5.2 Convolutional Neural Network (CNN)
CNN merupakan penerapan metode deep learning yaitu pengembangan lanjut dari MLP dimana MLP bekerja dengan merepresentasikan setiap neuronnya dalam data satu dimensi sedangkan CNN dirancang untuk mengolah gambar/citra. Pada Convolutional Neural Network data yang dipropagasikan pada jaringan adalah data dua dimensi sehingga operasi linear dan parameter bobot pada CNN berbeda. Pada CNN operasi linear menggunakan operasi konvolusi, sedangkan bobot tidak lagi satu dimensi saja, namun berbentuk empat dimensi yang merupakan kumpulan kernel konvolusi (Suartika, et.al, 2016).
Gambar 2.4. Arsitektur CNN (Peng, et al, 2017) Arsitektur CNN memiliki 3 layer utama, yaitu :
a. Convolution Layer
Convolution Layer atau layer konvolusi bekerja dengan mengaplikasikan filter pada citra dimana filter diinisialisasi dengan nilai tertentu dan nilai-nilai itulah yang
14 menjadi parameter dalam proses learning. Kemudian kernel akan bergerak ke seluruh bagian citra (dimulai dari kiri menuju kanan kemudian dari atas ke bawah) dan menghasilkan dot product atau disebut juga activation map atau feature map.
Convolution layer bekerja dengan melakukan ekstraksi fitur terhadap citra dan pergeseran filter ditentukan oleh Padding dan Stride dimana stride merupakan nilai yang ditentukan sebagai acuan pergeseran jumlah pixel baik secara horizontal maupun vertikal, kemudian Padding atau disebut juga Zero Padding merupakan nilai yang ditentukan sebagai parameter untuk menentukan jumlah pixel yang bernilai 0 untuk ditambahkan di setiap sisi gambar (Sena, 2017).
Gambar 2.5 Proses Konvolusi layer untuk mendapatkan Feature Map (Karpathy, 2018)
15 Untuk menghitung dimensi feature map ditunjukkan pada persamaan 2.9:
Output =
(N−F+2P)S
+ 1
(2.9)Keterangan: N = Nilai Panjang Input F = Nilai Panjang Fitur P = Padding
S = Stride b. Pooling Layer
Bagian pooling layer adalah tahapan yang dilakukan pada keluaran hasil convolutional layer dimana dimensi dari feature map akan dikurangi atau disebut juga downsampling untuk mempercepat proses komputasi dan mengatasi overfitting. Pada bagian Pooling layer berisi filter (F) dan stride (S) dengan nilai yang sudah ditentukan untuk bergeser ke seluruh area feature map (Sena, 2017).
Dalam CNN, Average Pooling dan Max Pooling merupakan pooling yang paling sering dipakai. Cara kerja Average pooling yaitu mengambil nilai rata-rata dari pixel yang berada pada posisi filter dengan padding dan stride tertentu, sedangkan Max pooling bekerja dengan membagi outputnya menjadi beberapa grid kemudian setiap pergeseran filter diambil nilai terbesarnya untuk disusun menjadi matriks citra baru yang telah direduksi, proses ini ditunjukkan pada gambar 2.4. Pada gambar ditunjukkan grid-grid dengan warna merah, hijau, biru dan kuning yang kemudian nilai tertingginya dipilih dengan filter 2x2 dan stride 2.
Gambar 2.6 Operasi Pooling Layer dengan Max Pooling (Suartika et al, 2016)
16 c. Fully Connected Layer
Lapisan terakhir untuk melakukan klasifikasi atau identifikasi yaitu fully connected layer. Layer ini akan mengambil input dari output layer sebelumnya yaitu feature map dalam bentuk multidimensional array kemudian dari array tersebut dilakukan
“flatten” atau reshape feature map menjadi sebuah vector yang kemudian menjadi input fully connected layer kedua yang kemudian dibagi sesuai kategori klasifikasi atau identifikasi yang dilakukan (Hakim dan Ednawati, 2019). Proses mendapatkan fully connected layer ditunjukkan pada persamaan berikut:
𝒇𝒄
𝒌= ∑ 𝑿
𝒊𝑾
𝒊,𝒌𝒏
𝒊=𝟎
, 𝒌 = 0,1,2, … . . , 𝑡
(2.10)
Dimana : b = bias
n = banyanya data pada flatten x = nilai flatten
w = bobot
t = banyaknya targetpada layer FC
2.6 Penelitian Terdahulu
Penelitian untuk mendeteksi penyakit kanker paru ini telah dilakukan sebelumnya dengan berbagai metode diantaranya yaitu Lilik Anifah (2017) dengan judul Cancer Lungs Detection on CT Scan Image Using Artificial Neural Network Backpropagation Based Gray Level Coocurrence Matrices Feature yang mendeteksi kanker paru pada citra CT Scan dengan tahap pre-processing grayscale dan binary. Kemudian menggunakan median filter untuk mengurangi noise serta menggunakan Adaptive Histogram Equalization untuk meningkatkan kontras pada citra. Setelah itu dilakukan segmentasi dan ekstraksi fitur dengan fitur GLCM dan deteksi dengan metode Backpropagation dengan tingkat akurasi sebesar 80%.
17 Worawate Ausawalaithong, et al. melakukan suatu penelitian yang berjudul Automatic Lung Cancer Prediction from Chest X-ray Images Using the Deep Learning Approach. Peneliti menggunakan Computed-Aided Diagnosis untuk meningkatkan performa diagnosis kanker pada citra X-ray. Kemudian melakukan Median filter untuk mengurangi noise. Pada penelitian ini peneliti menggunakan 121-Layer Convolutional Neural Network yang juga dikenal dengan DenseNet dan penelitian ini berhasil mencapai tingkat akurasi sebesar 74.43%
Emine Cengil dan Ahmet Cinar juga melakukan penelitian untuk mengidentifikasi kanker dengan judul A Deep Learning Based Approach to Lung Cancer Identification. Para peneliti menggunakan citra CT-Scan paru untuk mendeteksi kanker (benign dan malignant) dengan metode Deep Convolutional NN atau CNN 3D dan menggunakan sebanyak 70 data citra CT-Scan pasien. Dari penelitian tersebut menunjukkan bahwa metode yang digunakan berhasil walaupun data yang digunakan masih sangat sedikit dan mereka berhasil mencapai tingkat akurasi sebesar 70%.
Ioana Mocan et al. melakukan penelitian dengan judul Automatic Detection of Tumor Cells in Microscopic Images of Unstained Blood using Convolutional Neural Networks.
Mendeteksi adanya tumor pada darah dengan citra Microscopic dan menggunakan Convolutional Neural Network. Dengan menggunakan U-NET Architecture untuk proses segmentasi serta proses klasifikasi. Kelebihan arsitektur ini adalah bisa bekerja dengan baik saat menyentuh object pada kelas yang sama serta jumlah data yang sedikit saat proses training. Hasil dari penelitian ini mendapatkan akurasi sebesar 99.8%.
Rika Rokhana, dkk, melakukan sebuah penelitian dengan judul CNN untuk Pendeteksian Patah Tulang Femur pada Citra Ultrasonik B–Mode. Penelitian ini mendeteksi patah tulang pada sapi dan ayam dan menggunakan Gelombang Ultrasonik (US) sebagai pengganti dari penggunaan X-Ray atau CT-Scan. Dalam pendeteksian peneliti menggunakan desain arsitektur CNN yang bervariasi sebanyak 5 yaitu CNN1- CNN5 dan hasil yang didapat yaitu CNN4 dapat mengklasifikasi patah tulang dengan tingkat akurasi mencapai 95%.
18 Table 2.1 Penelitian Terdahulu
No. Peneliti Judul Penelitian Metode Keterangan
1. Lilik Anifah , dkk (2017)
Cancer Lungs Detection on CT
Scan Image
Contrast Limited Adaptive Histogram
Equalization, Gray Level Coocurrence Matrices Feature, Backpropagation
Neural Network
Mendapatkan Akurasi sebesar
80%
2. Worawate Ausawalaithong,
dkk (2018)
Automatic Lung Cancer Prediction from
Chest X-ray Images
Computer-Aided Diagnosis system,
Median Filter, Convolutional Neural
Network (DenseNet)
Mendapatkan Akurasi sebesar
74.4%
3. Emine Cengil dan Ahmet Cinar (2017)
A Deep Learning Based
Approach to Lung Cancer Identification
3D Convolutional Neural Network
Architecture
Tingkat Akurasi sebesar 70%
4. Ioana Mocan, dkk (2018)
Automatic Detection of Tumor Cells in
Microscopic Images of Unstained Blood
Convolutional Neural Networks dengan U-
NET Architecture
Tingkat Akurasi sebesar 99.8%
5. Rika Rokhana, dkk (2019)
Mendeteksi Patah Tulang Femur dengan Citra Ultrasonik
B–Mode.
Convolutional Neural Network
Tingkat Akurasi mencapai 95%
19 2.7 Perbedaan Penelitian Terdahulu
Penelitian tidak menggunakan data latih (dataset) dalam format CT-Scan tetapi menggunakan dataset dengan format X-ray. Dataset diambil dari Database milik Japanese Society Radiological Technology (JSRT). Dalam penelitian ini, proses segmentasi tidak dilakukan seperti penelitian yang dilakukan sebelumnya (Lilik Anifah, dkk, 2017).
Penelitian ini menggunakan Convolutional Neural Network 2D dan tidak menggunakan model DenseNet untuk klasifikasi. Serta tahapan preprocessing yang digunakan yaitu CLAHE, cropping dan resize tidak seperti penelitian sebelumnya (Worawate Ausawalaithong, dkk, 2018) dan (Emine Cengil dan Ahmet Cinar, 2017).
20 BAB 3
ANALISIS DAN PERANCANGAN
Penjelasan rancangan arsitektur aplikasi serta metode Convolutional Neural Network dijelaskan pada bab ini. Terdapat pembahasan mengenai analisis data yang digunakan, tahap pengolahan citra seperti, tahap prepocessing untuk meningkatkan kontras citra dengan Contrast Limited Adaptive Histogram Equalization dan identifikasi menggunakan Convolutional Neural Network serta perancangan tampilan antarmuka.
3.1 Data
Peneliti menggunakan data dengan 3 jenis, yaitu data training, validation dan testing. Data training adalah kumpulan data yang nantinya dilatih untuk belajar mengenali gambar pada mesin, kemudian data validation adalah kumpulan data yang menjadi acuan untuk menguji hasil dari proses belajar yang dilakukan oleh mesin, serta data testing adalah data yang diuji sebagai tahap akhir pembuatan sistem. Dataset yang digunakan merupakan dataset x-ray paru dengan ekstensi JPG dari JSRT Database (Japanese Society of Radiological Technology http://db.jsrt.or.jp). Data terdiri dari dua jenis citra x-ray paru yaitu citra kanker paru yang berjumlah 119 buah dan citra normal yang berjumlah 93 buah. Namun, untuk menghindari terjadinya bias pada saat training, penulis hanya menggunakan 90 citra kanker dan 90 citra normal.
1. Data Training
Data yang digunakan sebagai input proses belajar pada mesin dan digunakan sebanyak 144 citra untuk dua kategori.
2. Data Validation
Data yang digunakan untuk menguji seberapa baik mesin dapat belajar atau training dan untuk validasi digunakan sebanyak 36 citra untuk dua kategori.
21 3. Data Testing
Data yang digunakan untuk menguji sistem sebagai tahap akhir.
Tabel 3.1 Pembagian Data yang Digunakan
No. Citra X-Ray Data Training Data Validation Data Testing
1. Kanker 72 18 29
2. Non Kanker 72 18 3
Total 144 36 32
3.2 Analisis sistem
Metode yang diterapkan untuk penelitian ini yaitu image acquisition, image preprocessing, image segmentation dan identifikasi dengan menggunakan CNN hingga dilakukan tahapan uji data. Berikut arsitektur CNN pada gambar 3.1.
Gambar 3.1 Arsitektur Umum
Image Acquisition
Training Data
X-Ray Lung Image
Testing Dataset
Identification
Convolutional Neural Network Output
Cancer Non Cancer
Image Pre-processing
CLAHE
TRAINING TESTING
Resizing
Grayscaling
22 3.2.1 Image Acquisition
Tahapan pengumpulan data citra x-ray paru-paru yang digunakan sebagai input dalam sistem ini. Data tersebut yaitu data training dan data testing. Citra yang diolah adalah citra dengan ekstensi .JPG dengan ukuran 224 x 224 piksel. Contoh gambar x-ray paru dilihat pada Gambar 3.2
Gambar 3.2 Gambar x-ray Paru-paru
3.2.2 Image Preprocessing
Tahap image preprocessing adalah tahapan dimana citra yang telah dimasukkan sebagai input diolah untuk mendapatkan citra dengan kualitas lebih baik agar mesin dapat belajar lebih baik. Tahap preprocessing terdiri dari Resizing, Grayscaling serta peningkatan kontras dengan CLAHE.
3.2.2.1 Resizing
Tahapan resizing yaitu dimana citra akan diolah dengan mengubah ukuran piksel pada citra menjadi lebih kecil untuk mempermudah pada saat melakukan training data hingga identifikasi serta ukuran citra yang dipakai adalah 224 x 224 piksel
23 Tabel 3.2 Citra Resizing
No. Citra Asli Citra Resizing
1
2
3
4
24 5
6
. . .
31
32
25 3.2.2.2 Grayscaling
Citra x-ray sendiri adalah citra aras keabuan namun dalam tahapan ini grayscale tetap diterapkan pada citra agar tingkat warna keabuan pada setiap citra seragam dan dapat diproses lebih baik.
Tabel 3.3 Citra Grayscale
No. Citra Resizing Citra Grayscaling
1
2
3
4
5
26 6
. . .
31
32
3.2.2.3 Contrast Enhancement
Pada tahapan ini dilakukan contrast enhancement atau peningkatan kontras pada gambar dengan Contrast Limited Adaptive Histogram Equalization (CLAHE).
Hal ini dilakukan agar dapat menampilkan bagian citra yang gelap dengan menambah tingkat kontras pada citra dan menjadi lebih merata.
27 Tabel 3.4 Citra dengan CLAHE
No. Citra Grayscaling Citra dengan CLAHE
1
2
3
4
5
6
28 .
. .
31
32
3.2.3 Convolutional Neural Network
Tahapan identifikasi menggunakan Convolutional Neural Network. Tahapannya awal sebelum memulai proses identifikasi yaitu, persiapkan data terlebih dahulu untuk memulai proses training data. Pastikan folder yang diproses sudah benar, kemudian dilakukan proses Training atau proses latih data dan dilanjutkan dengan proses Testing. Tahapan proses Training dapat kita lihat sebagai berikut:
Tahap 1 : Menentukan filter, stride, dan padding
Pada penelitian ini filter CNN yaitu 3 x 3, stride pada layer pertama adalah 2 dan pada layer selanjutnya yang digunakan adalah 1, serta padding di set dalam keadaan default yaitu 0.
Tahap 2 : Menentukan Pool size
Pool size yang digunakan adalah 2 x 2.
29 Tahap 3 : Mentukan fungsi aktivasi
Fungsi aktivasi yang diterapkan yaitu ReLu pada convolution layer dan sigmoid pada output layer karena hanya memiliki 2 kategori, sedangkan untuk output yang kategoris dapat menggunan fungsi aktivasi softmax.
Tahap 4 : Menentukan Optimizer
Penelitian ini menggunakan optimizer Adam dengan learning rate=0,0001. Optimizer digunakan untuk menetukan weight yang optimal.
Tahap 5 : Menentukan ukuran batch
Batch size merupakan jumlah data citra yang ditraining per satu iterasi. Jumlah seluruh data nantinya akan dibagi dalam batch yang ditentukan dan hasilnya menjadi jumlah komputasi yang dilakukan pada citra per satu epoch. Sebagai contoh, jika total jumlah data yang digunakan adalah 40, dan batch size yang ditentukan adalah 4, maka mesin akan mentraining 4 citra dalam 1 batch, karena datanya ada 40 maka citra akan diproses sebanyak 10 kali per satu epoch.
Tahap 6 : Menentukan jumlah epoch
Epoch merupakan iterasi untuk mengulangi proses belajar dan mengenali data oleh mesin. Jika epoch semakin besar dapat meningkatkan kemampuan mesin dalam belajar mengenali citra dan hasil akurasinya juga akan meningkat. Penelitian ini menggunakan jumlah epoch 100 dan 200.
Tahap 7 : Proses Training
Untuk melakukan proses latih data, citra input yang berukuran 224x224x1 akan diproses oleh Convolution Layer dengan jumlah neuron 16, ukuran kernel 3x3x1 dengan hasil ukuran 112x112x16
30 dan pada Max pooling layer pertama ukuran dimensi berubah menjadi 56.
Hasil Convolution Layer pertama yaitu 56x56x16 dan langsung diproses ke layer kedua dengan jumlah neuron 32, ukuran kernel 3x3x32 dan hasilnya menjadi 56x56x32. Kemudian dimensi diperkecil lagi menjadi 28 dan hasil dari layer kedua menjadi 28x28x32.
Hasil Convolutionl Layer kedua akan diproses pada layer ketiga dengan ukuran 28x28x32 dengan jumlah neuron 32, ukuran kernel 3x3x32 dan hasilnya menjadi 28x28x32 dan pada max pooling layer ketiga berubah menjadi 14x14x32. Hingga pada Convolution layer keempat dan diperkecil pada pooling layetr menjadi 7x7x64. Setelah semua proses selesai, maka akan didapatkan 2 fully connected layer dengan 128 neuron dan 1 neuron pada fully connected layer terakhir.
Summary dari latih data dapat ditunjukkan di tabel 3.2
Tabel 3.5. Tabel Summary Latih Data Layer Pada CNN Ukuran Citra Jumlah Parameter
Input Citra 224x224x16 0
Conv1+ReLu 112x112x16 (3x3x1 + 1) x16 =160
Pool 1 56x56x16 0
Norm 56x56x16 16x4 = 64
Conv2+ReLu 56x56x32 (3x3x16 +1) x 32 = 4,640
Pool 2 28x28x32 0
Norm 28x28x32 32x4 = 128
Conv 3+ReLu 28x28x32 (3x3x32 + 1) x 32 = 9,248
Pool 3 14x14x32 0
Norm 14x14x32 32x4=128
Conv 4+ReLu 14x14x64 (3x3x32 +1) x 64 = 18,496
31
Pool 4 7x7x64 0
Norm 7x7x64 64x4=256
Dropout 7x7x64 0
Flatten 3136 0
Dense 1 128 401,536
ReLu 128 0
Dropout 128 0
Dense 2 1 128 + 1) x 1 = 129
Sigmoid 1 0
Tahap 8 : Proses Testing
CNN yang sudah belajar dari hasil proses training kemudian disimpan dengan ekstensi .h5 dan nantinya model ini yang digunakan dalam menguji efektivitas dari model yang dihasilkan Convolutional neural network terhadap citra kanker paru.
Tahap 9 : Ouput
Output akhir adalah hasil dari proses yang dilakukan untuk mendapatkan informasi keakurasian dan loss dari model yang dihasilkan.
3.3 Rancangan Antarmuka
Rancangan antarmuka bertujuan memberikan penjelasan serta ilustrasi antarmuka sistem identifikasi kanker paru. Dalam perancangan ini terdapat tiga menu utama yaitu home, training dan testing.
3.3.1. Rancangan Tampilan Home
Tampilan Menu Home adalah tampilan utama untuk pembuatan sistem yang dirancang. Dalam menu home menampilkan judul penelitian dan logo universitas. Pada halaman ini pengguna dapat menuju menu Get Started seperti gambar 3.2.
32 Gambar 3.3. Tampilan Home Page
3.3.2. Rancangan Menu Training Data
Menu pada Training Data ini merupakan tampilan untuk melatih data.
Pada halaman ini juga, pengguna memasukkan direktori dari data latih yang akan diproses. Setelah proses training selesai dilakukan makan akan tampil hasil perolehan akurasi dan loss dalam bentuk grafik.
Gambar 3.8. Menu Training Page
33 3.3.3. Rancangan Menu Testing
Menu ini terdiri dari menu testing yang menguji sebuah citra (single data).
Pengguna memasukkan file citra paru yang ingin diidentifikasi oleh sistem dan dapat melihat hasil identifikasi.
Gambar 3.9 Tampilan Testing Page
34 BAB 4
IMPLEMENTASI DAN PENGUJIAN
Pada bab ini dibahas mengenai implementasi dari metode Convolutional Neural Network untuk pengidentifikasian adanya kanker pada paru pada citra x-ray dan melakukan pengujian berdasarkan analisa yang dirancang.
4.1. Implementasi Sistem
Dalam tahap ini dilakukan implementasi untuk penelitian identifikasi kanker paru menggunakan Convolutional Neural Network ini dijelaskan dalam bab ini.
4.1.1. Perangkat Keras dan Lunak
Untuk membangun rancangan sistem, peneliti membutuhkan perangkat keras dan perangkat lunak dengan spesifikasi sebagai berikut:
Laptop Asus X451CAP
Processor Intel® Core™ i7-8700 CPU @ 3.2GHz (12 CPUs), ~3.2GHz
Kapasitas Hard disk 1 TB
Kapasitas RAM 16 GB
Sistem operasi Windows 10 Home Single Language 64bit
Editor Pycharm 2018.2
Anaconda Python Distribution versi custom dan Python 3.7
Library TensorFlow backend.
Flask framework website
35 4.1.2. Perancangan Antarmuka
Implementasi rancangan antarmuka aplikasi ini dirancang untuk mempermudah pengguna dalam menggunakannya dan dijelaskan sebagai berikut:
1. Halaman Home
Halaman ini merupakan tampilan utama ketika sistem dijalankan dan terdapat tombol menu yaitu ‘Get Started’ yang berfungsi untuk menuju halaman training untuk melatih data dan ditampilkan dalam gambar 4.1
Gambar 4.1 Menu Home Page
2. Menu Training
Tampilan ini berisi menu training yang berfungsi melakukan proses latih data dengan memasukkan folder path yang akan digunakan untuk proses training pada tab yang sudah disediakan. Ketika proses training dijalankan maka proses training akan berjalan dan ketika selesai akan menampilkan grafik akurasi dan loss berdasarkan hasil training yang dilakukan. Ditampilkan dalam gambar 4.2
36 Gambar 4.2 Menu Training
3. Hasil Akurasi serta Loss
Halaman ini menampilkan hasil akurasi dan loss yang diperoleh dari proses training yang dilakukan. Grafik ini terdiri dari dua grafik, yaitu grafik akurasi dan loss yang masing-masing grafik menunjukkan perbandingan antara nilai training dan testing yang didapatkan. Garis dengan warna biru mewakili nilai training dan garis oranye mewakili nilai testing.
Pada grafik akurasi, jika nilai grafik naik ini menunjukkan bahwa nilai akurasi yang semakin tinggi dan pada grafik loss, jika nilai grafik turun maka nilai loss semakin rendah, sesuai dengan nilai epoch yang digunakan. Training akan terus dilakuan demi mencapai hasil terbaik yaitu harus mendapatkan akurasi setinggi- tingginya dan loss serendah-rendahnya. Grafik ini bertujuan untuk mengetahui seberapa baik model training yang telah dibangun dan melakukan evaluasi apabila hasil yang didapat masih kurang baik. Ditampilkan di gambar 4.3
37 Gambar 4.3 Gambar Grafik Akurasi dan Loss
4. Tampilan Testing
Halaman ini menampilkan menu testing untuk menguji data citra paru atau proses identifikasi dan akan menampilkan hasilnya. Ditampilkan gambar 4.4
Gambar 4.4 Gambar Halaman Testing
38 4.1.3. Implementasi Pengujian Data
Penggunaan dataset untuk melatih data training yaitu dataset dalam bentuk citra x- ray dari basis data JSRT (Japanese Society of Radiology) yang terdiri dari 212 data pasien dengan 119 data pasien kanker paru dan 93 data pasien non kanker paru. Untuk training citra yang digunakan adalah 72 citra untuk kategori kanker dan 72 untuk kategori nonkanker. Rangkuman data citra dapat dilihat pada tabel 4.5 dan 4.6.
Gambar 4.5 Daftar Kumpulan Data Traning Noncancer
Gambar 4.6 Daftar Data Training Cancer
39 4.2. Prosedur Operasional
Halaman utama berisi menu halaman Home, menu Training Data, dan menu Testing Data. Pada halaman Home terdapat menu menuju halaman lain yaitu menu ‘Get Started’ untuk melakukan training data dan ditampilkan pada gambar 4.8
Gambar 4.7 Gambar Home Page
Pada menu Training terdapat path untuk memilih direktori yang akan diproses untuk latih data menggunakan Convolutional Neural Network. Lokasi default untuk proses training yaitu C:\Users\Image Processing Lab\Pycharm Projects\Lung Cancer\data\dataset, pada path tersebut terdapat folder dengan nama train serta validation yang berisi data citra X-Ray sesuai kategorinya masing-masing.
Ditampilkan dalam gambar 4.10.
40 Gambar 4.8 Gambar Halaman Training
Gambar 4.9 Gambar Halaman Proses Training
Setelah training data selesai, mesin menghasilkan model kemudian disimpan dengan ekstensi .h5 serta menampilkan akurasi serta loss yang didapat berdasarkan hasil training. Selanjutnya di halaman testing, pengguna akan memilih citra yang akan diuji pada path yang disediakan, dengan menekan button ‘TEST IMAGE’ untuk melakukan pengujian. Hasil akan tampil beserta preview dari citra yang diinput.
Seperti dalam gambar 4.12
41 Gambar 4.10 Gambar Input Citra
Gambar 4.11 Halaman Testing dengan output Cancer
42 Gambar 4. 13 Tampilan Testing dengan hasil output Noncancer
4.3. Pengujian Sistem
Tahap pengujian sistem menjelaskan hasil yang didapat berdasarkan proses pengujian yang dilakukan pada 32 citra kanker paru dan citra non kanker paru. Salah satu parameter yang digunakan dalam Pengujan sistem yaitu epoch dengan nilai 100 dan 200. Parameter lainnya yaitu Optimizer, dan yang dipakai peneliti adalah Adam Optimizer. Dalam training data CNN juga menggunakan hyperparameter yaitu Learning Rate (0,0001), dan jumlah ukuran batch yang digunakan adalah 32 secara default. Hasil dari pengujian ditampilkan pada gambar 4.14
Gambar 4.13 Percobaan 1 dengan epoch 100
43 Berdasarkan hasil percobaan pertama sesuai dengan grafik yang ditunjukkan di atas, akurasi yang didapatkan kurang baik karena model dipakai hanya terdapat dua convolution layer dan terjadi overfitting dimana model dapat menghasilkan akurasi yang baik pada saat training namun hasil pengujian masih kurang baik. Hal ini terjadi karena data training tidak banyak, oleh karena itu penulis menerapkan metode augmentasi data pada pengujian kedua dan dengan menambah jumlah layer pada convolution layer. Contoh gambar augmentasi data ditampilkan dalam gambar 4.14 dan 4.15
Gambar 4.14 Contoh citra paru
Gambar 4.15 Hasil augmentasi pada citra
Augmentasi data merupakan teknik untuk melakukan transformasi pada citra dan hasil augmentasi citra digunakan sebagai data latih. Dengan melakukan augmentasi data, model dapat belajar mengenali data dalam jumlah yang lebih banyak sehingga membuat model belajar lebih efisien.
44
Gambar 4.16 Hasil percobaan kedua dengan epoch 100
Berdasarkan hasil percobaan kedua sesuai dengan grafik yang ditunjukkan di atas, model dengan 3 convolutional layer menghasilkan akurasi yang lebih baik dengan jumlah epoch yang digunakan adalah 100. Pada percobaan ini , training mendapatkan akurasi yang cukup baik dan tidak terjadi overfitting namun, model masih belum cukup baik dalam memprediksi citra paru. Oleh karena itu, penulis melakukan pengujian dengan menaikkan jumlah epoch pada training.
Gambar 4.17 Hasil percobaan ketiga dengan epoch 200
45 Berdasarkan hasil percobaan ketiga sesuai dengan grafik di atas menunjukkan bahwa model belajar lebih baik dengan menambahkan jumlah epoch, namun pada saat pengujian data model masih belum dapat memprediksi dengan baik. Oleh karena itu, penulis menambahkan layer convolution menjadi 4.
Gambar 4.18 Hasil percobaan keempat dengan menambah layer
Gambar 4.18 Diagram percobaan model CNN
Dari hasil pengujian yang dilakukan dengan menambah convolution layer menjadi empat dan epoch 200, percobaan di atas mendapatkan akurasi yaitu 85% dan validasi 80%. Di tahap ini, model mampu memprediksi gambar lebih baik dibandingkan dengan model yang sebelumnya. Penulis juga melakukan testing dan mendapatkan hasil testing dan ditunjukkan tabel 4.1 dan 4.2
Tabel 4.1 Tabel Pengujian Model
Cancer Non Cancer
Cancer 26 (TP) 3 (TN)
Non Cancer 1 (FP) 2 (FN)
86 85 83 85
60
70 75 80
0 20 40 60 80 100
Adam Opt, epoch 100, conv 2 layer
RMSprop Opt, epoch 100, conv 3 layer
Adam Opt, epoch 200, conv 3 layer
Adam Opt, epoch 200, conv 4 layer
AKURASI (%)
PARAMETER
Diagram latih Model CNN
training validasi
46 Pada penelitian ini penulis menggunakan standar dari Gold Standar untuk mengevaluasi hasil kerja sistem yang didasarkan pada empat kategori yaitu True Positive (TP) dimana keadaan dimana model dapat memprediksi citra kanker dengan baik karena output sesuai dengan yang diharapkan, kemudian False Positive (FP) adalah keadaan dimana model salah memprediksi citra kanker menjadi citra nonkanker, kemudian True Negative (TN) adalah keadaan dimana model dapat memprediksi citra normal menjadi citra kanker, serta False Negative (FN)adalah keadaan dimana model dapat memprediksi citra normal sesuai dengan output yang diharapkan.
Tabel 4.2 Uji Data Citra
No Label orisinil Citra x-ray Hasil Preprocessing Keluaran
1 Kanker Cancer
2 Kanker Cancer
3 Kanker Non Cancer
4 Kanker Cancer
47
5 Kanker Cancer
6 Kanker Cancer
7 Kanker Cancer
8 Kanker Non Cancer
9 Kanker Cancer
. . .
48
32 Non Kanker Non Cancer
Berdasarkan pengujian yang telah dilakukan pada sistem untuk mengidentifikasi kanker paru dengan metode Convolutional Neural Network untuk melatih data, hasil akurasi yang diperoleh mencapai 87%.
Presentasi Akurasi = 𝑇𝑃+𝐹𝑁
𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁 × 100%
= 28
32 × 100%
= 87%
49 BAB 5
KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan serta saran setelah sistem dibangun dengan penggunaan metode Convolutional Neural Network dalam mengidentifikasi citra x-ray dengan tujuan agar peneliti selanjutnya dapat mengembangkan penelitian ini.
5.1. Kesimpulan
Hasil yang didapat peneliti dalam mengidentifikasi citra paru metode Convolutional Neural Network yaitu CNN dapat mengidentifikasi citra paru (X-ray) dengan akurasi mencapai 87%. Banyaknya jumlah data sangat mempengaruhi tingkat akurasi, untuk itu penulis menerapkan data augmentasi dengan tujuan memperbanyak jumlah data dan menghindari masalah yang paling sering terjadi yaitu overfitting dan meningkatkan keakurasian model. Pemilihan jumlah convolution layer, jumlah neuron pada layer convolution, serta jumlah epoch juga sangat mempengaruhi untuk meningkatkan akurasi. Activation function yang digunakan juga mempengaruhi hasil akhir dalam proses training, dan yang dipakai peneliti adalah activation function relu serta sigmoid.
5.2. Saran
Dari peneliti saran yang ingin disampaikan kepada peneliti lain untuk pengembangan sistem pada penelitian berikutnya yaitu :
50 1. Menambahkan layer pada convolution layer serta memperhatikan jumlah neuron,
epoch yang sesuai untuk meningkatkan ketelitian model dalam belajar dan memprediksi citra dan meningkatkan keakurasian model.
2. Menerapkan Neural Network yang lain sehingga dapat membandingkan dengan Convolution Neural Network untuk kasus yang sama.
3. Memperbanyak jumlah data kanker dan normal dengan variasi yang lebih banyak dalam proses training sehingga dapat meningkatkan kemampuan model mengenali data.
52 DAFTAR PUSTAKA
Amin, Z. (2006). Kanker Paru. Dalam : Sudoyo, A. W. 2006. Buku Ajar Ilmu Penyakit Dalam Edisi IV. Jakarta : Pusat Penerbitan IPD Fakultas Kedokteran Universitas Indonesia.
Anifah, Lilik, dkk. (2017). Cancer Lungs Detection on CT Scan Image Using Artificial Neural Network Backpropagation Based Gray Level Coocurrence Matrices Feature.
Surabaya
Ausawalaithong, Worawate, dkk. (2018). Automatic Lung Cancer Prediction from Chest X-ray Images Using the Deep Learning Approach. The 2018 Biomedical Engineering International Conference (BMEiCON-2018). Kamnoetvidya Science Academy Rayong : Thailand.
CENGİL, Emine dan Ahmet ÇINAR. (2017). Deep Learning Based Approach to Lung Cancer Identification. Computer Engineering Department Firat University : Turkey.
Diananda, Rama. (2009). Mengenal Seluk Beluk Kanker. Penerbit Kata Hati : Yogyakarta.
Hadavi, Nooshin., Nordin, M. J. and Shojaeipour, Ali. (2014). Lung Cancer Diagnosis Using CT-Scan Images Based on Cellular Learning Automata. Center for Artificial Intelligence Technology (CAIT), Malaysia.
Hakim, Dzikry Maulana dan Ednawati Rainarly. (2019).Convolutional Neural Network untuk Pengenalan Citra Notasi Musik. Universitas Komputer Indonesia : Bandung.