• Tidak ada hasil yang ditemukan

KLASIFIKASI PENYAKIT PADA DAUN MANGROVE MENGGUNAKAN METODE MOBILENET SSD BERBASIS MOBILE SECARA REAL TIME SKRIPSI MUHAMMAD RAIHAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "KLASIFIKASI PENYAKIT PADA DAUN MANGROVE MENGGUNAKAN METODE MOBILENET SSD BERBASIS MOBILE SECARA REAL TIME SKRIPSI MUHAMMAD RAIHAN"

Copied!
67
0
0

Teks penuh

(1)

KLASIFIKASI PENYAKIT PADA DAUN MANGROVE MENGGUNAKAN METODE MOBILENET SSD BERBASIS MOBILE SECARA REAL TIME

SKRIPSI

MUHAMMAD RAIHAN 161402066

PROGRAM STUDI S1 TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2021

(2)

KLASIFIKASI PENYAKIT PADA DAUN MANGROVE MENGGUNAKAN METODE MOBILENET SSD BERBASIS MOBILE SECARA REAL TIME

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Teknologi Informasi

MUHAMMAD RAIHAN 161402066

PROGRAM S1 STUDI TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 202

(3)
(4)

ii

PERNYATAAN

KLASIFIKASI PENYAKIT PADA DAUN MANGROVE MENGGUNAKAN METODE MOBILENET SSD BERBASIS MOBILE SECARA REAL TIME

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 1 Juni 2021

Muhammad Raihan

(5)

UCAPAN TERIMA KASIH

Puji dan syukur penulis panjatkan ke hadirat Allah SWT, karena berkat rahmat dan karunia-Nya penulis dapat menyelesaikan skripsi 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 juga penulis ucapkan kepada seluruh pihak yang terlibat serta telah membantu penulis dalam menyelesaikan skripsi baik. Pada kesempatan ini penulis ingin mengucapkan terima kasih kepada:

1. Keluarga penulis, Ayahanda Raja Inal Siregar dan Ibunda Asmahan Abdul Razzak yang tidak pernah lelah merawat, memberikan semangat, mendoakan, membesarkan, memberikan ilmu, memberikan dukungan moral yang tiada batasnya. Kepada kakak penulis, Eva Soraya Murtaza dan abang ipar penulis, Benny Saputra yang menjadi penyemangat, pelengkap dan sekaligus teman dalam setiap waktu.

2. Bapak Romi Fadillah Rahmat, B.Comp.Sc.,M.Sc. selaku Dosen Pembimbing 1 dan Ibu Sarah Purnamawati ST., MSc. selaku Dosen Pembimbing 2 yang telah memberikan penulis ilmu, kritik yang membangun, saran, dukungan, motivasi, dan juga bimbingan yang tidak ternilai harganya.

3. Ibu Dr. Maya Silvi Lydia B.Sc., M.Sc. selaku Dekan Fasilkom-TI Universitas Sumatera Utara.

4. Bapak Romi Fadillah Rahmat, B.Comp.Sc.,M.Sc., selaku Ketua Program Studi S1 Teknologi Informasi Universitas Sumatera Utara.

5. Ibu Sarah Purnamawati, ST., MSc., selaku Sekretaris Program Studi S1 Teknologi Informasi Universitas Sumatera Utara.

6. Seluruh Dosen Program Studi S1 Teknologi Informasi yang telah memberikan ilmu yang bermanfaat bagi penulis selama masa perkuliahan.

7. Pegawai dan staff Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara yang mendukung segala urusan administrasi selama menyelesaikan skripsi.

(6)

iv

8. Teman-teman seperjuangan hidup dan perkuliahan Beta Tester, Alisiraj Fachreza Siregar, Muhammad Teguh Syahvira Nasution, Muhammad Ramzi Khauri, Riki Ramadhan Syahputra, Bayu Prasetyo, Fahdi Saidi Lubis, Hadhe Panji Kastowo, Muhammad Fadli Lubis yang telah memberikan semangat, dukungan dan bantuan tiada henti kepada penulis serta sebagai tempat berkeluh kesah selama masa perkuliahan.

9. Teman-teman dari masa SMA hingga sekarang Pahlevi Zamzam Roza Harahap, Muhammad Rizki Apriyandi Norfauzan Saragih, yang selalu mendengarkan curhatan hidup dan selalu ada saat dibutuhkan.

10. Teman-teman dan mantan yang selalu setia menyemangati dan mengingatkan untuk mengerjakan skripsi, Febry Muharayani, Feby Morr, Shinta Alifah, Afriyillah.

11. Rekan-rekan kerja WBA Indonesia, bang Ahmad Najam, bang Bayu Asmara, bang Muhammad Irvan Ridho, bang Ahmad Zaki, yang selalu menyemangati dan membimbing penulis dalam menyelesaikan skripsi dan pekerjaan.

12. Kepada senior, junior dan teman 1 angkatan yang telah membantu penulis dalam menyelesaikan tugas akhir serta membantu penulis selama masa perkuliahan yang namanya tidak bisa penulis sebutkan satu persatu.

Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh karena itu, penulis mengharapkan kritik dan saran untuk penyempurnaan skripsi ini.

Medan, 1 Juni 2021

Penulis

(7)

ABSTRAK

Tanaman Mangrove merupakan sebuah komunitas tumbuhan di daerah pantai atau daerah pasang surut, mangrove atau yang sering dikenal sebagai tanaman bakau merupaka wilayah ekosistem pantai yang mempunyai karakter yang unik, serta memiliki potensi kekayaan hayati. Seperti layaknya makhluk hidup pada umumnya yang memiliki penyakit, tanaman mangrove juga memiliki penyakit pada daunnya, seperti yang akan diteliti pada penelitian ini. Daun mangrove bisa terkena penyakit karena serangan hama, namun dampak dari serangan hama tersebut akan berbeda tergantung dari hama jenis apa yang menyerangnya. Pada umumnya hama yang menyerang daun mangrove akan mengakibatkan banyak penyakit pada daunnya, salah satunya daun rusak dan daun berulat, namun sangat sulit membedakan kedua penyakit tersebut karena memiliki persamaan atau ciri-ciri yang sangat serupa. Oleh karena itu, untuk menyelesaikan persamalahan tersebut, dengan memanfaatkan metode MobileNet SSD sebagai Langkah awal untuk membantu membedakan jenis penyakit daun apakah daun tersebut daun rusak atau daun berulat secara realtime. Dengan menggunakan metode MobileNet SSD, penelitian ini mendapatkan tingkat akurasi 93,4% dari total 1390 data.

Kata Kunci: Hutan Mangrove, Penyakit Daun, Tensorflow Lite, MobileNet SSD

(8)

vi

ABSTRACT

Mangrove is a plant community or an individual plant species that forms a community in tidal areas, mangrove forest or often called mangrove forest is part of a coastal ecosystem area that has unique and distinctive characters, and has potential for biological wealth. Like living things in general that have disease, mangrove plants also have diseases on their leaves, as will be investigated in this study. Mangrove leaves can be affected by diseases due to pests, but the impact of these pests will be different depending on what kind of pests attack them. In general, pests that attack mangrove leaves will cause many diseases on the leaves, one of which is damaged leaves and caterpillar leaves, but it is very difficult to distinguish the two diseases because they have similarities or very similar characteristics. Therefore, to solve this problem, using the MobileNet SSD method as a first step to help distinguish the type of leaf disease, whether the leaf is damaged or caterpillar leaves in real time. By using the MobileNet SSD method, this study obtained an accuracy rate of 93.4% from a total of 1390 data.

Keywords: Mangrove Forest, Leaf Disease, Tensorflow Lite, MobileNet SSD

(9)

DAFTAR ISI

PERSETUJUAN Error! Bookmark not defined.

PERNYATAAN ii

UCAPAN TERIMA KASIH iii

ABSTRAK v

ABSTRACT vi

DAFTAR ISI vii

DAFTAR TABEL ix

DAFTAR GAMBAR x

BAB 1 1

PENDAHULUAN 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Tujuan Penelitian 2

1.4 Batasan Masalah 2

1.5 Manfaat Penelitian 3

1.6 Metodologi Penelitian 3

1.7 Sistematika Penulisan 4

BAB 2 7

LANDASAN TEORI 7

2.1 Mangrove 7

2.2 Penyakit Daun Mangrove 7

2.3 MobileNet 8

2.4 Single Shot Multibox Detector (SSD) 9

2.5 Tensorflow Lite 9

2.6 Penelitian Terdahulu 10

BAB 3 14

ANALISIS DAN PERANCANGAN SISTEM 14

3.1 Data yang digunakan 14

3.2 Analisis Sistem 16

3.2.1 Pre-Processing 17

3.2.2 Image Classification 22

3.2.3 Learned Model 23

(10)

viii

3.2.4 TF Lite Model 23

3.2.5 Proses testing 24

3.2.6 Output 24

3.3 Perancangan Antarmuka Sistem 24

BAB 4 26

IMPLEMENTASI DAN PENGUJIAN SISTEM 26

4.1 Implementasi Sistem 26

4.1.1 Perangkat Keras Error! Bookmark not defined.

4.1.2 Implementasi Data 27

4.1.3 Implementasi Perancangan Antarmuka 28

4.3 Pengujian Sistem 29

BAB 5 46

KESIMPULAN DAN SARAN 46

5.1 Kesimpulan 46

5.2 Saran 46

DAFTAR PUSTAKA 48

(11)

DAFTAR TABEL

Tabel 2.1 Ukuran Parameter dan Komputasi pada Depthwise Separable Convolution. 8

Tabel 2. 2 Penelitian Terdahulu 11

Tabel 3.1 Jumlah data latih dan data uji 15

Tabel 4.1 Hasil pengujian identifikasi penyakit daun mangrove 30

Tabel 4.2 Confusion Matrix 44

(12)

x

DAFTAR GAMBAR

Gambar 2.1. Hutan mangrove 7

Gambar 2. 2 Alur Kerja MobileNet 8

Gambar 3.1 Contoh data citra daun rusak 14

Gambar 3.2 Contoh Citra Daun Berulat 15

Gambar 3. 3 Arsitektur Umum 16

Gambar 3.4 Contoh citra data sebelum (kiri) dan setelah di resize (kanan) 17 Gambar 3.5 Membuka directory gambar untuk mengambil data yang akan di label 18

Gambar 3.6 Memberi label pada objek 19

Gambar 3.7 Nama label akan tersimpan sebagai xml 19

Gambar 3.8 Data xml yang sudah di convert menjadi csv 20

Gambar 3.9 Rancangan awal antar muka aplikasi 25

Gambar 4. 1 Data penyakit daun rusak pada daun mangrove 27 Gambar 4. 2 Data penyakit daun berulat pada daun mangrove 28

Gambar 4. 3 Tampilan Utama 28

Gambar 4. 4 Tampilan Halaman Utama 29

(13)

BAB 1 PENDAHULUAN

1.1 Latar Belakang

Hutan Mangrove yang biasa disebut juga hutan payau atau hutan bakau ini tumbuh diatas substrat yang dialiri campuran air laut dan air tawar. Hutan Mangrove juga merupakan bentuk ekosistem yang unik, dikarenakan sebagian tanaman ini dapat ditemukan di seluruh garis pantai yang tanah nya bertekstur lumpur . sampai dengan saat ini spesies tanaman mangrove yang sudah diketahui spesiesnya di Indonesia ada sekitar 202 jenis spesies. Salah satunya yang bernama Avicennia marina yang hidup di pesisir pantai Indonesia(Noor et al., 2006).

Tanaman mangrove juga memiliki kegunaan yang cukup berperan untuk kelangsungan pantai. Antara lain untuk penyambang serta penyeimbang pantai. Sebagai tanaman yang hidup di pesisir pantai, nutrisi yang terdapat pada tanaman mangrove ini akan dialirkan atau diteruskan ke lautan dan daratan. Dilihat dari sudut pandang ekonomi, tanaman ini sangat berperan bagi masyarakat pesisir dalam kegiatan ekonominya (Strategi Nasional Mangrove, 2003). Dan jika dilihat dari segi ekologis, tanaman mangrove ini juga sangat berguna untuk daerah pembesaran dan pemijahan segala jenis hewan (Sediadi, 1991). Selain itu, bagian-bagian tanaman mangrove yang jatuh seperti ranting, daun, dan sebagainya akan berguna untuk bahan makanan hewan(Zamroni & Rohyani, 2008).

Perubahan karakter yang paling menonjol di tanaman mangrove terletak pada daunnya. Daun mangrove sendiri dapat mengalami perubahan fisik tergantung pada kondisi tanamannya (Nurakhman, 2002).

Penelitian terdahulu yang pernah dilakukan terkait penyakit pada daun adalah

“Automatic Grape Leaf Diseases Identification via UnitedModel Based on Multiple Convolutional Neural Networks”. Penelitian ini dilakukan untuk mengidentifikasi penyakit pada daun anggur dengan menggunakan model UnitedModel (Miaomiao et al., 2019).

Ada pula penelitian tentang “Smart mobile application to recognize tomato leaf diseases using Convolutional Neural Networks” penelitian ini juga dilakukan untuk

(14)

2

mengindetifikasi penyakit pada daun tomat dengan menggunakan mobile atau smartphone. (Elhassouny & Smarandache, 2019). Ada pula penelitian tentang

“Identification of Diseases in Corn Leaves using Convolutional Neural

Networks and Boosting” penelitian ini mengindetifikasi penyakit pada tanaman jagung dengan akurasi 98%. (Bhatt P et al., 2019). Ada pula penelitian mengindentifikasi penyakit padi dengan judul “Identifikasi Penyakit Padi dan Hama Menggunakan Metode Convolutional Neural Network” pada penelitian ini peneliti mendapatkan akurasi 97,12% (Chowdhury et al., 2020). Ada pula penelitian yang meneliti penyakit pada daun teh dengan judul “Identifikasi Penyakit Daun Teh Menggunakan Improved Deep Convolutional Neural Network” pada penelitian ini peneliti mendapatkan akurasi 92,25%. (Gensheng et al., 2019).

Penelitian ini bertujuan untuk mengindetifikasi penyakit pada daun mangrove menggunakan metode MobileNet SSD Dengan harapan dapat menghasilkan sistem klasifikasi yang cepat dan akurat.

1.2 Rumusan Masalah

Saat ini untuk mendeteksi penyakit pada daun mangrove masih menggunakan website yang belum bekerja secara real time, sedangkan para petani atau masyarakat membutuhkan hasil yang cepat dan dengan keakuratan yang tinggi agar dapat mengetahui secara pasti penyakit apa yang ada pada daun mangrove tersebut. Oleh karena itu, diperlukannya suatu aplikasi yang bisa menampilkan data penyakit pada daun secara realtime agar bisa dengan mudah membantu para petani mengetahui penyakit pada daun tersebut.

1.3 Tujuan Penelitian

Tujuan dilkakukannya penelitian ini untuk menghasilkan sebuah aplikasi yang mampu mengklasifikasi penyakit pada daun Mangrove menggunakan metode MobileNet SSD berbasis android secara realtime.

1.4 Batasan Masalah

Batasan masalah yang terdapat di penelitian ini adalah:

a. Data uji dan latih diambil di wilayah Sumatera Utara.

(15)

b. Latar belakang citra masih terdapat objek lain seperti pasir, daun, serta tangan peneliti.

c. Spesies mangrove dan penyakitnya yang didapat masih terbatas.

d. Klasifikasi yang dihasilkan berupa penyakit daun rusak dan daun berulat.

e. Jarak pengambilan saat klasifikasi terbatas, tidak bisa terlalu jauh atau pun terlalu dekat.

f. Kondisi cahaya tidak dapat terletak didepan kamera saat akan melakukan klasifikasi.

1.5 Manfaat Penelitian

Manfaat dilakukannya penelitian ini adalah:

a. Membantu para petani mendapatkan data yang dibutuhkan dengan cepat dan akurat.

b. Mempermudah para petani untuk mengetahui penyakit pada daun mangrove.

c. Membantu para petani untuk mengetahui mana daun yang terjangkit penyakit daun rusak ataupun penyakit daun berulat.

1.6 Metodologi Penelitian

Adapun tahap-tahap dalam penelitian ini adalah:

1. Studi Literatur

Pada tahap studi literatur ini merupakan proses pengumpulan data penyakit daun mangrove serta memahami bahan refrensi yang berkaitan dengan penelitian mengenai MobileNet SSD yang diperoleh dari sumber-sumber seperti artikel, buku, jurnal, skripsi, serta refrensi yang berhubungan dengan penelitian ini

2. Analisis Permasalahan

Pada tahap analisis permasalahan, akan menganalisis informasi yang didapat dari tahapan sebelumnya, agar peneliti dapat memahami mengenai metode yang digunakan yaitu MobileNet SSD untuk mengklasifikasi penyakit pada daun mangrove

3. Perancangan Sistem

(16)

4

Tahap ini merupakan alur rancangan arsitektur. Rancangan metode dan algoritma yang digunakan dari permasalahan analisi yang didapat pada tahap sebelumnya

4. Implementasi

Tahap ini merupakan implementasi yang didapat dari hasil analisis dalam bentuk codingan menggunakan bahasa python dan java

5. Pengujian

Pada tahap pengujian ini merupakan tahapan pengujian untuk dapat melihat tingkat akurasi yang diperoleh dari penerapan metode MobileNet SSD dan melihat apakah sistem ini dapat berjalan menggunakan teori, algoritma, serta tujuan yang sudah diterapkan dari penelitian ini.

6. Dokumentasi dan Penyusunan Laporan

Tahap ini merupakan tahapan untuk Menyusun dokumentasi serta laporan yang sudah dibuat agar dapat dengan mudah dipahami serta bisa dijadikan refrensi pada penelitian selanjutnya.

1.7 Sistematika Penulisan

Sistematika penulisan dari skripsi ini terdiri dari lima bagian utama sebagai berikut:

BAB 1. PENDAHULUAN

Pada bab pendahuluan akan berisi tentang latar belakang pilihan judul skripsi

“Klasifikasi Penyakit Pada Daun Mangrove Menggunakan Metode MobileNet SSD Berbasis Mobile Secara Real Time", rumusan masalah, tujuan penelitian, batasan masalah, manfaat penelitian, metodologi penelitian dan sistematika penulisan.

BAB 2. LANDASAN TEORI

Bab ini berisi teori mengenai MobileNet, SSD, Mangrove, Penyakit Daun, Tensorflow Lite, Android Studio dan pada penelitian yang telah dilakukan dahulu.

(17)

BAB 3. ANALISIS DAN PERANCANGAN SISTEM

Bab ini membahas tentang analisis arsitektur umum dari metode MobileNet-SSD yang digunakan pada Citra daun untuk mengklasifikasi penyakit pada daun mangrove menjadi 2 clasess.

BAB 4. IMPLEMENTASI DAN PENGUJIAN SISTEM

Pada bab ini akan membahas soal implementasi sistem yang sudah dirancang untuk memaparkan hasil dari pengujian sistem.

BAB 5. KESIMPULAN DAN SARAN

Pada bab ini akan membahas tentang kesimpulan beserta saran yang dapat digunakan untuk penelitian selanjutnya.

(18)

BAB 2

LANDASAN TEORI

2.1 Mangrove

mangrove atau yang dikenal juga sebagai tanaman bakau mempunyai karakter yang unik, dimana tanaman ini memiliki akar yang melengkung serta pohon yang jumlahnya relative sedikit. Ekosistem yang dimiliki tanaman mangrove cukup kompleks, dikarenakan hutan mangrove ini menjadi habitat para satwa (kusmana,2010).

Gambar 2.1. Hutan mangrove

Daun mangrove merupakan salah satu bagian dari tumbuh-tumbuhan yang memiliki berbagai manfaat yang salah satunya adalah sebagai bahan makanan, pakan ternak, bahan obat-obatan seperti untuk sakit paru-paru, batuk, bahkan kanker. Daun mangrove juga memiliki karateristik yang mampu mengandung air serta memiliki jaringan internal dan kandungan garam yang tinggi (Nybakken,1998).

2.2 Penyakit Daun Mangrove

Penyakit pada daun mangrove terbagi dari 2 penyakit, yaitu daun rusak, dan daun yang terkena hama. Daun rusak dapat ditandai dengan adanya bercak atau lubang pada daun.

Sedangkan daun yang terkena hama mempunyai gejala yang hampir sama dengan daun rusak, namun dibelakang daun yang terkena hama terdapat adanya kepompong ulat

(19)

yang berbentuk kerucut. Penyebab penyakit pada daun mangrove ini juga disebabkan oleh serangan serangga.

Khusunya di kawasan Asia Tenggara ada beberapa jenis hama dari ordo Lepidoptera yang bisa menyerang tanaman mangrove, antara lain Streblote lipara, Zeuzera conferta, Bagworms, dan Leaf miners (Su Ping et al., 2010). Hama-hama tersebut akan menyerang buah, daun dan batang pada tanaman mangrove.

2.3 MobileNet

MobileNet adalah metode yang termasuk dalam salah satu bagian arsitektur Convolutional Neural Network yang biasa digunakan untuk komputasi berlebih.

MobileNet sendiri dibangun oleh para peneliti untuk kebutuhan memasukkan arsitektur CNN ke dalam ponsel. Perbedaan diantara kedua arsitektur MobileNet dan CNN ini terletak pada penggunaan layernya. MobileNet juga terbagi menjadi 2 konvolusi yaitu pointwise convolution dan depthwise convolution. Arsitektur MobileNet memanfaatkan Batch Normalization (BN) dan Reactified-Linier unit (ReLU) untuk depthwise convolution dan pointwise convolution. MobileNet dibangun di atas arsitektur jaringan yang efisien dengan menggunakan konvolusi yang dapat dipisahkan secara mendalam untuk menghasilkan Deep Neural Network yang ringan.

Gambar 2. 2 Alur Kerja MobileNet

DSC menyebabkan jalur konvolusi menjadi jauh lebih efesien dengan menggunakan parameter yang jauh lebih sedikit. Penggunaan parameter dan daya komputasi dapat dilihat pada Tabel 2.

Tabel 2.1 Ukuran Parameter dan Komputasi pada Depthwise Separable Convolution

(20)

9

Reduksi ukuran komputasi yang didapat adalah sebaga berikut :

𝐹 × 𝐹 ×𝐷𝑀 × 𝐷𝑀 ×𝐶1 + 𝐶1× 𝐶2× 𝐷𝑁× 𝐷𝑁 𝐹 ×𝐹 × 𝐷𝑀 × 𝐷𝑀 × 𝐶1 × 𝐶2× 𝐷𝑁 = 1

𝑁 + 1

𝐹2 (2.1)

Dengan begitu, maka reduksi parameter menjadi :

𝐹 × 𝐹 × 𝐶1 + 1 ×1 ×𝐶1× 𝐶2

𝐹 ×𝐹 × 𝐷𝑀 × 𝐷𝑀 × 𝐶1 × 𝐶2× 𝐷𝑁 = 1

𝐶2 + 1

𝐹2 (2.2)

Model Deep Learning pada penelitian ini menggunakan konvolusi 3x3 dan mampu menghemat daya komputasi dan ukuran model hingga 9 kali lebih efesien (Zhang et al., 2017)

2.4 Single Shot Multibox Detector (SSD)

Perbedaan utama antara pelatihan detektor klasik seperti R-CNN dengan pelatihan SSD adalah detektor objek klasik menggunakan proposal wilayah dan metode SSD menggunakan data groundtruth yang harus ditetapkan untuk hasil yang ditentukan dalam rangkaian hasil detektor yang jelas. Setelah penugasan ini ditentukan, loss function dilakukan dari ujung ke ujung. Metode SSD melakukan pencocokan terhadap objek dengan default bounding box melalui beragam skala dan rasio untuk setiap feature map location. Setiap elemen dari feature map memiliki sejumlah kotak yang saling berhubungan. Setiap bounding box dengan IoU lebih besar dari 0,5 dianggap cocok terhadap objek dan akan diproses.

2.5 Tensorflow Lite

Tensorflow Lite merupakan sebuah library yang berguna untuk membantu developer sehingga mampu menjalankan mode Tensorflow pada perangkat mobile. Tensorflow Lite akan memanggil sebuah model Tensorflow yang sudah dibuat sebelumnya dan akan diubah kedalam format tflite.

(21)

2.6 Penelitian Terdahulu

Pada penelitian ini, belum pernah dilakukannya penelitian terhadap penyakit pada daun mangrove, namun beberapa peneliti banyak yang melakukan penilitian terhadap penyakit pada daun tumbuhan serta sayur sayuran, seperti yang diteliti oleh (Bhatt P et al., 2019) terkait “Identification of Diseases in Corn Leaves using Convolutional Neural Networks and Boosting”. Pada penelitian ini melalui system yang diusulkan memanfaatkan metode CNN peneliti mendapatkan akurasi 98% dengan skor klasifikasi {precision, recall, f1-score} = {0.97, 0.98, 0.97}.

Selanjutnya pada penelitian (Miaomiao et al., 2019) terkait “Identifikasi Penyakit Daun Anggur Otomatis Menggunakan UnitedModel Mutiple Convolutional Neural Network”. Berdasarkan penelitian ini peneliti telah mengembangkan solusi efektif untuk identifikasi penyakit pada daun anggur menggunakan UnitedModel yang merupakan gabungan arsitektur dari CNN. Gambar daun anggur akan dibagi menjadi 4 kelas, termasuk 3 gambar gejala yang berbeda yaitu busuk hitam, esca, bercak daun isariopsis, dan gambar daun yang sehat. Akurasi dari metode ini mencapai rata-rata akurasi validasi 99,17% dan akurasi uji 98,57%.

Selanjutnya pada penelitian oleh (Chowdhury et al., 2020) terkait Identifikasi Penyakit Padi dan Hama Menggunakan Metode Convolutional Neural Netwok. Pada penelitian ini dibagi 2 arsitektur, dimana arsitektur pertama untuk skala besar seperti VGG16 dan InceptionV3. Dan yang kedua arsitektur untuk perangkat mobile dengan menggunakan model seperti MobileNet, Nasnet Mobile, dan SqueezeNet. Tingkat akurasi pada penelitian ini mencapai 97,12%.

Selanjutnya pada penelitian yang dilakukan (Gensheng et al., 2019) terkait Identifikasi Penyakit Daun Teh Menggunakan Improved Deep Convolutional Neural Network. Dalam penelitian ini peneliti menggunakan modul ekstraksi yang ditambahkan ke DCNN yang lebih baik dari model CIFAR10 untuk meningkatkan kemampuan secara otomatis mengekstrak daun teh yang berpenyakit. Akurasi pada penelitian ini mencapai 92,25%

Selanjutnya pada penelitian yang dilakukan oleh (Sharma et al., 2019) terkait Analisis Kinerja Model Pembelajaran CNN untuk Mendeteksi Penyakit yang Mendalam pada Tanaman Menggunakan Image Segmentation. Dalam penelitian ini peneliti melakukan penelitian untuk meningkatkan metode yang dilakukan para peneliti sebelumnya dari FCNN menjadi SCNN, menurut peneliti, SCNN mendapatkan akurasi mencapai 98,6%.

(22)

11

Selanjutnya pada penelitian yang dilakukan oleh (Azeddine & Florentine, 2019) terkait

“Smart Mobile Application to Recognize Tomato Leaf Disease Using Convolutional Neural Network”. Dalam penelitian ini peneliti membuat model yang terinspirasi dari MobileNet Model CNN yang dimana bisa membuat akurasi dari penelitian ini jauh meningkat. Peneliti juga mengupulkan data sebanyak 7176 gambar daun tomat untuk di training. Serta akurasi yang didapat dari penelitian ini 88,4% .

Penelitian terdahulu yang telah dijelaskan diatas dapat dilihat pada Tabel 2.2.

Tabel 2. 2 Penelitian Terdahulu No Peneliti,

Tahun

Metode/Teknik Keterangan

1 (Miomiao ji et.al 2019)

Convolutional Neural Network (CNN)

Peneliti menggunakan metode terintegrasi UnitedModel yang dirancang untuk membedakan daun dengan penyakit anggur yang umum seperti bercak hitam, dan bercak daun esca. Serta memiliki akurasi 98,57%

2 (Chowdhury et al., 2020)

Convolutional Neural Network (CNN).

Peneliti menggunakan 2 arsitektur, untuk skala besar dan untuk perangkat mobile. serta mendapatkan akurasi 97,12%

3 (Bhatt et al., 2019)

Convolutional Neural Network (CNN).

Penelitian ini menggunakan data sebanyak 2000 citra dengan score klasifikasi {precision, recall, f1- score} = {0.97,0.98,0.97} dan mendapatkan akurasi 98%

(23)

4 (Gensheng et al., 2019)

Deep Convolutional Neural Network (DCNN).

Penelitian ini menggunakan model CIFAR10-quick model, dan mendapatkan akurasi 92,25%

5 (Sharma et al., 2019)

Convolutional Neural Network (CNN).

Penelitian ini membandingkan 2 model F-CNN dan S-CNN dan mendapatkan akurasi yang awalnya 42,3% menjadi 98,6%

6 (Azeddine &

Florentin, 2019)

Convolutional Neural Network (CNN).

Penelitian ini menggunakan data sebanyak 7176 data dan mendapatkan akurasi 88,4%.

Perbedaan penelitian yang dilakukan oleh (Miaomiao et al., 2019) dengan (Chowdhury et al., 2020) terletak pada metode penelitiannya, dimana penelitian (Miaomiao et al., 2019) menggunakan metode UnitedModel Multiple Convolutional Neural Network yang dimana metode ini sebenarnya adalah gabungan dari metode Convolutional Neural Network itu sendiri. Sedangkan penelitian yang dilakukan (Chowdhury et al., 2019) menggunakan metode CNN biasa namun penelitiannya di implementasikan ke perangkat mobile menggunakan 3 metode, yaitu MobileNet, Nasnet Mobile, dan Squeeze Net.

Selanjutnya, perbedaan pada penelitian (Bhatt et al., 2019) dengan (Gensheng et al., 2019) terletak pada metodenya juga, yang dimana pada penelitian (Bhatt et al., 2019) menggunakan metode Contvolutional Neural Network, sendangkan penelitian (Gensheng et al., 2019) menggunakan metode Deep Convolutional Neural Network.

Dan pada penelitian (Gensheng et al.,2019) juga menggunakan model CIFAR10-quick.

Sedangkan, perbedaan keseluruhan dari penelitian terdahulu dengan penelitian ini terletak dari objek yang di teliti, seperti pada yang dilakukan oleh (Miaomiao et al., 2020) peneliti tersebut meneliti penyakit pada daun anggur, dan (Bhatt et al., 2019) meneliti penyakit pada tanaman jagung, dan (Gensheng et al., 2019) meneliti penyakit pada daun teh. Sedangkan yang objek yang diteliti pada penelitian ini adalah mengklasifikasi penyakit pada daun mangrove. Perbedaan juga terletak pada metode

(24)

13

penelitian yang digunakan, dimana rata-rata penelitian terdahulu menggunakan metode Convolutional Neural Network (CNN) dan Deep Convolutional Neural Network (DCNN). Sedangkan pada penelitian ini, peneliti menggunakan metode MobileNet SSD karena penelitian ini akan di implementasikan pada perangkat mobile android.

Hasil akurasi yang diperoleh pada penelitian terdahulu yang sama sama menggunakan mobile seperti yang diteliti oleh (Azeddin & Florentin, 2019) sebesar 88,4 %, yang dimana penelitian ini meneliti penyakit pada daun tomat menggunakan metode Convolutional Neural Network. Sedangkan pada penelitian ini akurasi yang berhasil diraih sebesar 93,1 % dengan menggunakan metode MobileNet SSD.

Kelebihan dan kekurangan penelitian ini dengan penelitian terdahulu dapat dilihat dari hasil implementasi yang didapat. Dimana pada penelitian terdahulu belum menggunakan perangkat mobile dan masih menggunakan website, dan kelebihan dari penelitian ini juga dapat dilihat dari hasil akurasi yang lebih tinggi dari penelitian terdahulu yang sama-sama menggunakan perangkat mobile juga. Kelebihan pada penelitian ini juga penelitian ini mampu mengklasifikasi penyakit pada daun mangrove secara realtime. Sedangkan kekurangan dari penelitian ini terletak pada hasil akurasi yang masih tergolong rendah yaitu hanya 93,1 % dan kelemahan pada penelitian ini juga masih bisa di impelementasikan pada perangkat android.

(25)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1 Data yang digunakan

Data yang digunakan pada penelitian ini adalah berupa citra daun mangrove dengan format file JPG yang diperoleh dari Pantai Wisata Mangrove di Kecamatan Perbaungan Kabupaten Serdang Bedagai Sumatera Utara. Data citra daun mangrove diambil menggunakan kamera pada perangkat Samsung Galaxy S9 dengan spesifikasi sebagai berikut :

1. Chipset Exynos 9810 .

2. OS Android 10 (Quince Tart).

3. RAM 4 GB.

4. Kamera Belakang 12 MegaPixel.

Pengambilan data dilakukan dengan rentang jarak 7-45 cm, dengan jarak terdekat dari kamera sekitar 7 cm dan jarak terjauh sekitar 45 cm. Pengambilan data dilakukan dengan tidak menghadap ke sumber cahaya untuk hasil yang lebih optimal, Sehingga jarak dan cahaya cukup berpengaruh pada tingkat akurasi saat sistem ini diimplementasikan.

Terdapat dua penyakit pada daun yang digunakan pada penelitian ini yaitu penyakit daun rusak dan penyakit daun berulat yang berjumlah 1390 data citra.

Contoh dari data citra yang diperoleh dapat dilihat pada Gambar 3.1 dan Gambar 3.2.

Gambar 3.1 Contoh data citra daun rusak

(26)

15

Gambar 3.2 Contoh Citra Daun Berulat

Dari total 1390 jumlah data citra, terdapat 653 data penyakit dan rusak dan 463 data penyakit daun berulat. Pembagian data tersebut dapat dilihat pada Tabel 3.1.

Tabel 3.1 Jumlah data latih dan data pengujian

Dataset Data Pelatihan Proses Pengujian

Daun Rusak 807 154

Daun Berulat 583 120

Jumlah Seluruh

Data 1390 274

Pemabagian dataset menjadi data latih bertujuan untuk melatih tingkat akurasi dengan merubah parameter yang ada untuk menyesuaikan dengan data yang diberikan sehingga dapat memahami informasi-informasi pada data tersebut. Sedangkan, data uji bertujuan untuk melakukan pengujian terhadap performa algoritma yang telah dilatih.

Tetapi data pengujian sendiri tidak diambil dari jumlah dataset, dikarenakan penelitian ini realtime, sehingga data pengujian langsung diambil saat implentasi ke objeknya langsung.

(27)

3.2 Analisis Sistem

adapun proses klasifikasi yang dilakukan pada penelitian ini memiliki beberapa tahap.

Beberapa tahapannya yaitu Image Pre-Processing, Image Classification menggunakan MobileNet SSD, convert to TFLite, dan output yang dihasilkan dari penyakit pada daun mangrove berupa daun rusak atau daun berulat. Tahapan diatas dapat dilihat di arsitektur umum pada Gambar 3.3.

Gambar 3. 3 Arsitektur Umum

Data Training

Testing

Resizing Images Image Acquisition

Labeling Images

Convert

Image Pre-Processing

MobileNet SSD

Image Classification

TFLite Model Learned Model

Hasil Klasifikasi Penyakit Daun

Mangrove Output Data Training

Testing

(28)

17

3.2.1 Pre-Processing

Sebelum memasuki proses klasifikasi, data penyakit daun mangrove perlu dilakukannya proses pre-processing yang dimana proses ini akan melewati 3 tahap yaitu

3.2.1.1 Resizing Images

Pada tahap ini, dilakukannya Resizing Images pada data daun mangrove menjadi 640 x 640. Dikarenakan saat data diambil, hasil gambar memiliki ukuran 1440 x 2560 atau 16:9 dikarenakan data diambil menggunakan ponsel. Maka dari itu, data yang diambil harus di resize terlebih dahulu agar nantinya data yang dimiliki bisa masuk kedalam TF-Lite Model.

Gambar 3.4 Contoh citra data sebelum (kiri) dan setelah di resize (kanan) Kemudian, Langkah-langkah dalam proses Resizing Image dapat dilihat pada pseudocode berikut.

Langkah pertama yang dilakukan adalah mengambil data dari folder path data_train yang berisi data yang akan di resize. Kemudian data yang sudah diambil tersebut akan di resize menjadi ukuran 1:1 atau 640x640 menggunakan OpenCV untuk meringankan

(29)

saat proses training data. Kemudian hasil data yang sudah di resize akan dimasukkan kedalam path folder bernama train.

3.2.1.2 Labeling Images

Pada tahap ini, setelah data berhasil di resize, selanjutnya akan dilakukan proses Labeling Images menggunakan aplikasi LabelImg yang berfungsi untuk memberikan label kalsifikasi pada citra berdasarkan penyakitnya. Hasil pelabelan tersebut akan tersimpan dalam format xml. Informasi yang terdapat dalam file tersebut berupa koordinat label pada citra dan nama label yang nantinya akan berguna pada proses selanjutnya. Contoh proses Labeling Images menggunakan aplikasi LabelImg dapat dilihat pada gambar 3.5, gambar 3.6 dan gambar 3.7.

Gambar 3.5 Membuka directory gambar untuk mengambil data yang akan di label

(30)

19

Gambar 3.6 Memberi label pada objek

Gambar 3.7 Nama label akan tersimpan sebagai xml

Gambar 3.5 menjelaskan proses bagaimana kita mengambil folder tempat dimana data kita berada, yang kemudian dilanjutkan di gambar 3.6 saat gambar berhasil dibuka, akan dilanjutkan dengan proses labeling objek, dan memberi nama label pada objek. Hal ini nantinya akan berguna untuk mengenali nama dari hasil klasifikasi. Kemudian dilanjutkan dengan gambar 3.7 setelah gambar di save, akan memunculkan nama label

(31)

dan xmlnya yang telah dibuat. Dan hasil xml yang sudah dibuat dapat dilihat di folder yang sama dimana data tersebut diambil.

3.2.1.3 Convert TF Records

Pada tahap ini, setelah data selesai di label, proses selanjutnya yaitu melakukan proses Convert TF Record dimana data yang sudah selesai di label akan di convert menjadi file berformat Tensorflow Record File (TFRecord). Seluruh data xml dan citra yang telah kita dapatkan dari proses sebelumnya akan di convert menjadi file TFRecord dengan nama train.record. namun sebelumnya, seluruh data xml akan diconvert terlebih dahulu ke dalam format csv seperti yang dapat dilihat pada gambar 3.8.

Gambar 3.8 Data xml yang sudah di convert menjadi csv

Kemudian data csv inilah yang nantinya akan di convert lagi ke TFRecord. TFRecord menyimpan data sebagai urutan string biner yang berguna untuk mengurangi besarnya data yang digunakan dan mempercepat performa pipeline.

Langkah-langkah proses convert ke TFRecord dapat dilihat pada pseudocode berikut.

(32)

21

(33)

Langkah Langkah yang dilalui saat mengconvert yaitu image yang akan di proses akan dipanggil melalui path dimana folder image berada, kemudian menyimpan berapa tinggi dan lebar dari gambar tersebut serta menghitung koordinat label yang sudah dibuat sebelumnya, yang kemudian akan disimpan dalam file bernama tfrecord.

3.2.2 Image Classification

Pada tahap ini file yang sudah terbagi sebelumnya akan dimasukkan ke dalam model MobileNet SSD untuk diklasifikasi. SSD akan berperan untuk mengatur pendeteksian objek melalui bounding box, sedangan MobileNet akan berperan untuk mengklasifikasi objek yang sudah terdeteksi.

3.2.2.1 Training Model

Pada tahap ini, sebelum memulai tahap training, pipeline yang ada dalam model MobileNet SSD v2 FPNLite 640x640 harus dikonfigurasi terlebih dahulu. Yang dimana didalam konfigurasi tersebut dapat mengatur berapa banyak epoch serta batch yang dibutuhkan saat men-training data.

Sebelum menkonfirgursi pipeline, pembuatan labelmap diperlukan sebagai label klasifikasi objek yang nantinya akan digunakan saat output di aplikasi. File tersebut bernama labelmap.txt yang berisi banyaknya kategori data yang dimiliki dari kategori sistem. Dalam penelitian ini file labelmap.txt berisi id 1 daun rusak dan id 2 daun berulat. Lalu sistem akan menilai setiap kelas dari objek daun mangrove menjadi 2 kategori yaitu daun rusak dan daun berulat.

Setelah pembuatan labelmap usai, selanjutnya mengkonfigurasi pipeline yang berisi berapa jumlah steps, batch size, serta epoch. Dan mengatur beberapa lokasi data seperti labelmap dan TFRecords. Lalu pipeline akan dijalankan di dalam anaconda untuk memulai proses training.

(34)

23

Proses training pada penelitian ini menggunakan metode MobileNet SSD serta Tensorflow. Proses training memerlukan waktu lebih kuran 8-9 jam dengan jumlah citra 1390 data.

3.2.3 Learned Model

Hasil dari training yang didapat pada proses sebelumnya akan menjadi sebuah file Bernama savemodel dengan format PB. PB merupakan singkatan dari protobuf pada tensorflow. File tersebut berisi weight(bobot) model hasil training dimana objek daun mempunyai 2 klasifikasi yaitu daun rusak dan daun berulat. Hasil klasifikasi data training akan menjadi learned model sebagai data latih. Nantinya output yang dihasilkan dari proses Image Classification disebut dengan learned model. Dan data tersebut akan di convert ke TFLite Model agar bisa digunakan ke dalam ponsel android.

3.2.4 TF Lite Model

Pada tahap ini, savedmodel yang sudah kita dapatkan pada proses sebelumya akan diubah menjadi Tensorflow Lite. Tensorflow Lite menyediakan framework untuk model tensorflow yang sudah dilatih untuk dikompresi dan diterapkan pada perangkat ponsel android agar nantinya model tersebut bisa masuk kedalam ponsel android.

(35)

3.2.5 Proses Pengujian

Tahap ini merupakan tahap pengujian yang sudah melewati tahap training. Proses ini dilakukan untuk mengetahui apakah sistem yang datanya sudah ditraining sebelumnya dapat mengklasifikasi objek menjadi 2 kategori, yaitu daun rusak dan daun berulat.

Serta untuk menghitung akurasi yang didapat setelah menggunakan metode MobileNet SSD.

3.2.6 Output

Output merupakan tahap terakhir dari dari sistem. Yang dimana pada tahap ini akan menampilkan boundingbox serta akurasi dari objek yang sedang disorot, dan mengklasifikasi apakah daun tersebut terjangkit penyakit daun rusak atau daun berulat.

3.3 Perancangan Antarmuka Sistem

Pada tahap ini menjelaskan tentang perancangan antarmuka sistem aplikasi klasifikasi penyakit pada daun mangrove yang bertujuan untuk memberikan gambaran umum dan memudahkan pengguna dalam mengoperasikan aplikasi. Sistem dalam aplikasi ini menggunakan aplikasi Tensorflow Lite sehingga hanya terdiri dari 1 tampilan utama saja. Pada tampilan utama ini aplikasi akan langsung mengklasifikasi objek saat diarahkan ke objek yang dituju beserta munculnya bounding box yang berisi informasi penyakit dari daun mangrove yang di sorot. Perancangan antar muka aplikasi dapat dilihat pada Gambar 3.5.

(36)

25

Gambar 3.9 Rancangan awal antar muka aplikasi

(37)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

Proses implementasi klasifikasi penyakit pada daun mangrove menggunakan metode MobileNet SSD memerlukan beberapa perangkat pendukung untuk melakukan penelitian ini, yaitu :

4.1 Implementasi Sistem

Pada tahap ini, klasifikasi penyakit pada daun mangrove menggunakan metode MobileNet SSD memerlukan perangkat keras dan perangkat lunak, yaitu:

4.1.1 Spesifikasi Perangkat

Berikut spesifikasi yang diperlukan untuk training penelitian ini adalah:

1. Processor Intel Core i5-6200U CPU 2. RAM 4 GB

3. Windows 10 64 bit 4. Python versi 3.6.8

5. Library Bahasa pemrograman python, antara lain:

a. Pandas b. Numpy

c. Matplotlib.pyplot d. Keras dari Tensorflow e. Cython

f. Future g. Google API h. Keras Nightly i. Open CV j. Protobuff k. Pyqt5 l. Tensorflow m. Tensorflow Lite 6. Android studio

(38)

27

Berikut spesifikasi perangkat mobile yang digunakan pada penelitian ini 1. Chipset Exynos 9810 .

2. OS Android 10.0 (Quince Tart).

3. RAM 4 GB.

4. Resolusi Kamera Belakang 12 MegaPixel.

4.1.2 Implementasi Data

Citra data daun mangrove yang diperoleh menggunakan Samsung Galaxy S9 ini dibagi menjadi 2 jenis klasifikasi, yaitu daun rusak dan daun berulat. Beberapa contoh data pada masing-masing jenis klasifikasi dapat dilihat secara berurut pada Gambar 4.1, 4.2.

Gambar 4. 1 Data penyakit daun rusak pada daun mangrove

(39)

Gambar 4. 2 Data penyakit daun berulat pada daun mangrove

4.1.3 Implementasi Perancangan Antarmuka

Hasil rancangan yang dilakukan berdasarkan hasil yang sebelumnya sudah dibahas di bab 3, yaitu:

4.1.3.1 Tampilan Utama

Halaman awal aplikasi akan menjadi tampilan utama dari aplikasi ini. Dimana pada tampilan utama akan menampilkan kamera pada ponsel. Tampilan utama dapat dilihat pada Gambar 4.3.

Gambar 4. 3 Tampilan Utama 4.1.3.2 Prosedur Operasional

Tampilan sistem yang dibangun berupa halaman utama yang berisi informasi mengenai objek daun beserta tingkat akurasi keakuratan penyakit yang dialami daun mangrove tersebut.

(40)

29

Tahap awal, user akan memasuki aplikasi dengan menekan ikon aplikasi pada ponsel. Lalu user perlu mengarahkan ponsel kearah daun mangrove yang ingin di deteksi. Lalu aplikasi akan mengeluarkan bounding box beserta informasi penyakit daun tersebut dan akurasi nya.

Gambar 4. 4 Tampilan Halaman Utama 4.3 Pengujian Sistem

Proses pengujian sistem akan dilakukan untuk melihat hasil kinerja dari klasifikasi menggunakan metode MobileNet SSD dalam mengklasifikasikan penyakit pada daun mangrove menjadi 2 kategori yaitu penyakit daun rusak dan penyakit daun berulat.

Beberapa hasil dapat dilihat dari Tabel 4.1.

(41)

Tabel 4.1 Hasil pengujian identifikasi penyakit daun mangrove

No Data EKG Actual Output Desired Output Status

1 Daun Rusak Daun Rusak Berhasil

2

Daun Rusak

& Daun Berulat

Daun Rusak &

Daun Berulat Berhasil

(42)

31

3 Daun Rusak Daun Rusak Berhasil

4 Daun Rusak Daun Rusak Berhasil

5 Daun Rusak Daun Rusak Berhasil

(43)

6 Daun Rusak Daun Rusak Berhasil

7 Daun Rusak Daun Rusak Berhasil

8 Daun Rusak Daun Rusak Berhasil

(44)

33

9 Daun Rusak Daun Rusak Berhasil

10 Daun Rusak Daun Rusak Berhasil

11 Daun Rusak Daun Rusak Berhasil

(45)

12 Daun Rusak Daun Rusak Berhasil

13 Daun Rusak Daun Rusak Berhasil

14 Daun Rusak Daun Rusak Berhasil

(46)

35

15 Daun Rusak Daun Rusak Berhasil

16

Daun Rusak Daun Janda

Bolong Gagal

17

Daun Rusak

& Daun Berulat

Daun Berulat Berhasil

(47)

18 Daun Berulat Daun Berulat Berhasil

19

Daun Rusak

& Daun Berulat

Daun Berulat Berhasil

20 Daun Berulat Daun Berulat Berhasil

(48)

37

21 Daun Berulat Daun Berulat Berhasil

22 Daun Berulat Daun Berulat Berhasil

23

Daun Rusak

& Daun Berulat

Daun Berulat Berhasil

(49)

24 Daun Berulat Daun Berulat Berhasil

25 Daun Berulat Daun Berulat Berhasil

26 Daun Berulat Daun Berulat Berhasil

(50)

39

27 Daun Berulat Daun Berulat Berhasil

28 Daun Berulat Daun Berulat Berhasil

29 Daun Berulat Daun Berulat Berhasil

(51)

30 Daun Berulat Daun Berulat Berhasil

31 Daun Rusak Daun Rusak Berhasil

32 Daun Rusak Daun Rusak Berhasil

(52)

41

33 Tidak Terklasifikasi Daun Rusak Gagal

34 Daun Rusak Daun Rusak Berhasil

35 Tidak Terklasifikasi Daun Rusak Gagal

(53)

36 Daun Rusak Daun Rusak Berhasil

37 Tidak Terklasifikasi Daun Rusak Gagal

38 Daun Rusak Daun Rusak Berhasil

(54)

43

39 Daun Rusak Daun Rusak Berhasil

40 Daun Rusak Daun Rusak Berhasil

Berdasarkan pengujian sistem yang dilakukan pada penelitian ini, klasifikasi penyakit pada daun mangrove menggunakan metode MobileNet SSD terdapat 11 kesalahan sistem dalam mengklasifikasi penyakit pada daun mangrove dari total 274 data pengujian. Adapun penyebab kesalahan tersebut dikarenakan dataset daun berulat yang diperoleh tidak sebanyak dataset daun rusak. Dan juga pengaruh jarak yang terlalu jauh dari kamera. Penyebab lain kesalahan sistem disebabkan oleh banyaknya kemiripan bentuk antara daun rusak dengan daun berulat sehingga sistem terkadang salah mendeteksi apakah objek tersebut daun berulat atau daun rusak. Oleh sebab itu keakuratan aplikasi yang didapat tidak terlalu sempurna yaitu 93,4 %.

(55)

Untuk menghitung persentase akurasi secara manual dapat dilihat pada persamaan 4.1.

𝑃𝑒𝑟𝑠𝑒𝑛𝑡𝑎𝑠𝑒 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 𝐽𝑢𝑚𝑙𝑎ℎ 𝑑𝑎𝑡𝑎 𝑢𝑗𝑖 𝑏𝑒𝑛𝑎𝑟

𝐽𝑢𝑚𝑙𝑎ℎ 𝑘𝑒𝑠𝑒𝑙𝑢𝑟𝑢ℎ𝑎𝑛 𝑑𝑎𝑡𝑎 𝑢𝑗𝑖∗ 100%

(4.1) 𝑃𝑒𝑟𝑠𝑒𝑛𝑡𝑎𝑠𝑒 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 256

274∗ 100%

(4.2) 𝑃𝑒𝑟𝑠𝑒𝑛𝑡𝑎𝑠𝑒 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 = 93,4%

(4.3)

Tabel 4.2 Confusion Matrix

Daun Rusak Daun Berulat Total

Daun Rusak 150 4 154

Daun Berulat 14 106 120

Total 164 110 274

Tabel 4.2 menjelaskan bahwa Citra daun rusak tidak mempunyai kesalahan dalam mendeteksi, sedangkan daun berulat mengalami beberapa kesalahan dalam mendeteksi objek.

Penelitian dengan judul Klasifikasi Penyakit Daun Mangrove Menggunakan Metode MobileNet SSD Berbasis Mobile Secara Realtime ini mampu mengklasifikasi penyakit daun dengan akurasi 93,4%. Sistem dapat mengklasifikasi penyakit daun mangrove secara real time menggunakan ponsel android. Adapun penyebab kesalahan tersebut dikarenakan dataset daun berulat yang diperoleh tidak sebanyak dataset daun rusak. Penyebab lain kesalahan sistem disebabkan oleh banyaknya kemiripan bentuk antara daun rusak dengan daun berulat sehingga sistem terkadang salah mendeteksi apakah objek tersebut daun berulat atau daun rusak.

Setelah melakukan percobaan lain dengan menggunakan 2 perangkat yaitu Samsung J3 Pro dan Samsung A32 didapatkan hasil yang berbeda saat menjalankan aplikasi, dimana di perangkat Samsung J3 pro yang memiliki RAM 2GB dan resolusi

(56)

45

kamera 8 MP, aplikasi dapat terbuka dengan baik namun proses klasifikasi tidak dapat berjalan. Sedangkan percobaan menggunakan perangkat Samsung A32 yang memiliki RAM 6 GB dan resolusi kamera 64 MP mampu berjalan dengan sangat baik dan mengklasifikasi dengan sangat baik. Maka dengan hasil ini dapat disimpulkan bahwasannya spesifikasi minimum untuk aplikasi ini harus memiliki RAM 4 GB dan resolusi kamera 12 MP.

(57)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Kesimpulan dari keseluruhan penerapan metode MobileNet SSD berdasarkan hasil implementasi yang sudah dilakukan adalah

1. Metode MobileNet SSD mampu mengklasifikasi penyakit daun mangrove dengan 2 klasifikasi yaitu Daun Rusak dan Daun Berulat dengan akurasi 93,4%.

2. Adapun faktor yang membuat tingkat akurasi tidak maksimal pada penelitian ini disebabkan kesalahan dalam mengklasifikasi daun berulat. Hal ini bisa terjadi karena banyaknya kemiripan antara daun rusak dengan daun berulat.

3. Proses pengujian dilakukan terhadap objek yang berupa citra daun mangrove, dimana objek tersebut dapat ditangkap oleh kamera ponsel secara Real Time.

4. Dalam proses pengujian dan implementasi jarak yang diperlukan untuk mengklasifikasi objek cukup dekat dengan kamera untuk mendapatkan akurasi yang maksimal.

5. Jarak maksimal saat pengujian data adalah 45 cm.

6. Intensitas cahaya dikategorikan cukup, selama penyakit pada daun masih bisa terlihat di kamera.

5.2 Saran

Adapun beberapa saran yang diberikan sebagai refrensi penelitian berikutnya adalah :

1. Dapat menemukan penyakit lain pada daun mangrove.

2. Dapat mencari lokasi tanaman mangrove ditempat lain, agar jenis penyakit yang terdapat pada daun bisa bertambah.

3. Menggunakan metode yang berbeda pada penelitian ini.

4. Dapat melakukan klasifikasi melebihi jarak 45 cm.

5. Menambahkan fitur night mode atau dapat menggunakan flash saat dikeadaan gelap atau kekurangan cahaya.

6. Dapat digunakan di perangkat yang memiliki spesifikasi minim.

(58)

47

7. Dapat mengoptimalkan penggunaan baterai saat aplikasi dijalankan.

8. Dapat mengetahui penyakit daun tersebut berdasarkan jenis daunnya.

(59)

DAFTAR PUSTAKA

Anna Ida Sunaryo Purwiyanto. (2013). Daya Serap Akar dan Daun Mangrove Terhadap Logam Tembaga (Cu) di Tanjung Api-Api, Sumatera Selatan. Jurnal Maspari, 5 (1)(1), 1–5.

Bhatt, P., Sarangi, S., Shivhare, A., Singh, D., & Pappula, S. (2019). Identification of diseases in corn leaves using convolutional neural networks and boosting.

ICPRAM 2019 - Proceedings of the 8th International Conference on Pattern Recognition Applications and Methods, Icpram, 894–899.

https://doi.org/10.5220/0007687608940899

Elhassouny, A., & Smarandache, F. (2019). Smart mobile application to recognize tomato leaf diseases using Convolutional Neural Networks. Proceedings of 2019 International Conference of Computer Science and Renewable Energies, ICCSRE 2019, 1–4. https://doi.org/10.1109/ICCSRE.2019.8807737

Hu, G., Yang, X., Zhang, Y., & Wan, M. (2019). Identification of tea leaf diseases by using an improved deep convolutional neural network. Sustainable Computing:

Informatics and Systems, 24, 100353.

https://doi.org/10.1016/j.suscom.2019.100353

Ji, M., Zhang, L., & Wu, Q. (2019). Automatic grape leaf diseases identification via UnitedModel based on multiple convolutional neural networks. Information Processing in Agriculture. https://doi.org/10.1016/j.inpa.2019.10.003

Purnobasuki, H., Pengajar, S., Fmipa, B., Airlangga, U., Mulyorejo, J., & Unair, K. C.

(2001). Potensi Mangrove Sebagai Tanaman Obat Prospect of Mangrove as Herbal Medicine Daftar Pustaka. 1998.

Rahman, C. R., Arko, P. S., Ali, M. E., Iqbal Khan, M. A., Apon, S. H., Nowrin, F., &

Wasif, A. (2020). Identification and recognition of rice diseases and pests using convolutional neural networks. Biosystems Engineering, 194, 112–120.

https://doi.org/10.1016/j.biosystemseng.2020.03.020

Sardogan, M., Tuncer, A., & Ozen, Y. (2018). Plant Leaf Disease Detection and Classification Based on CNN with LVQ Algorithm. UBMK 2018 - 3rd International Conference on Computer Science and Engineering, 382–385.

https://doi.org/10.1109/UBMK.2018.8566635

Sharma, P., Berwal, Y. P. S., & Ghai, W. (2019). Performance analysis of deep learning

(60)

49

CNN models for disease detection in plants using image segmentation. Information Processing in Agriculture. https://doi.org/10.1016/j.inpa.2019.11.001

Sladojevic, S., Arsenovic, M., Anderla, A., Culibrk, D., & Stefanovic, D. (2016). Deep Neural Networks Based Recognition of Plant Diseases by Leaf Image Classification. Computational Intelligence and Neuroscience, 2016.

https://doi.org/10.1155/2016/3289801

Zhang, S., Zhang, S., Zhang, C., Wang, X., & Shi, Y. (2019). Cucumber leaf disease identification with global pooling dilated convolutional neural network.

Computers and Electronics in Agriculture, 162(April), 422–430.

https://doi.org/10.1016/j.compag.2019.03.012.

(61)

LAMPIRAN SOURCE CODE 1. Resizing

# Importing os and cv2 module import cv2

import os

# path of the folder whose images is to be resized.

path = 'daun'

for i in os.listdir(path):

print(i)

img = cv2.imread(path + '/' + i) # Reading images

r_img = cv2.resize(img, (640, 640)) # resizing image :(150,150)==(image_height,image_width)

cv2.imwrite('train/{}'.format(i), r_img) # saving the resized image in other folder

# replace 'resize_folder' with the path of the folder # in which you want to save the resized images.

2. XML To CSV import os import glob

import pandas as pd

import xml.etree.ElementTree as ET

def xml_to_csv(path):

xml_list = []

for xml_file in glob.glob(path + '/*.xml'):

tree = ET.parse(xml_file) root = tree.getroot()

for member in root.findall('object'):

value = (root.find('filename').text, int(root.find('size')[0].text), int(root.find('size')[1].text),

(62)

51

member[0].text,

int(member[4][0].text), int(member[4][1].text), int(member[4][2].text), int(member[4][3].text) )

xml_list.append(value)

column_name = ['filename', 'width', 'height', 'class', 'xmin', 'ymin', 'xmax', 'ymax']

xml_df = pd.DataFrame(xml_list, columns=column_name) return xml_df

def main(): # this is the part we change to work with our setup

for directory in ['train', 'test']:

image_path = os.path.join(os.getcwd(), 'images/{}'.format(directory))

xml_df = xml_to_csv(image_path)

xml_df.to_csv('images/data/{}_labels.csv'.format(directory), index=None)

print('Successfully converted xml to csv.')

main()

3. Generate TFRecord

from __future__ import division

from __future__ import print_function from __future__ import absolute_import import os

import io

import pandas as pd

import tensorflow.compat.v1 as tf import sys

import os.path

sys.path.append("D:\\foto\\models\\research\\")

sys.path.append("D:\\foto\\models\\research\\object_detectio n\\utils")

from PIL import Image

from object_detection.utils import dataset_util from collections import namedtuple, OrderedDict flags = tf.app.flags

(63)

flags.DEFINE_string('csv_input', '', 'D:\\foto\\images\\data')

flags.DEFINE_string('output_path', '', 'D:\\foto\\images\\data')

flags.DEFINE_string('image_dir', '', 'D:\\foto\\images\\test')

FLAGS = flags.FLAGS

# replace row_label with the name you annotated your images as

def class_text_to_int(row_label):

if row_label == 'daun_rusak':

print('row_label====' + row_label) return 1

elif row_label == 'daun_berulat':

print('row_label====' + row_label) return 2

else:

None

def split(df, group):

data = namedtuple('data', ['filename', 'object']) gb = df.groupby(group)

return [data(filename, gb.get_group(x)) for filename, x in zip(gb.groups.keys(), gb.groups)]

def create_tf_example(group, path):

with tf.gfile.GFile(os.path.join(path, '{}'.format(group.filename)), 'rb') as fid:

encoded_jpg = fid.read()

encoded_jpg_io = io.BytesIO(encoded_jpg) image = Image.open(encoded_jpg_io)

width, height = image.size

filename = group.filename.encode('utf8') height = 640

width = 640

image_format = b'jpg' xmins = []

xmaxs = []

ymins = []

ymaxs = []

classes_text = []

classes = [2]

(64)

53

for index, row in group.object.iterrows():

xmins.append(row['xmin'] / width) xmaxs.append(row['xmax'] / width) ymins.append(row['ymin'] / height) ymaxs.append(row['ymax'] / height)

classes_text.append(row['class'].encode('utf8')) classes.append(class_text_to_int(row['class'])) tf_example =

tf.train.Example(features=tf.train.Features(feature={

'image/height': dataset_util.int64_feature(height), 'image/width': dataset_util.int64_feature(width), 'image/filename':

dataset_util.bytes_feature(filename), 'image/source_id':

dataset_util.bytes_feature(filename), 'image/encoded':

dataset_util.bytes_feature(encoded_jpg), 'image/format':

dataset_util.bytes_feature(image_format), 'image/object/bbox/xmin':

dataset_util.float_list_feature(xmins), 'image/object/bbox/xmax':

dataset_util.float_list_feature(xmaxs), 'image/object/bbox/ymin':

dataset_util.float_list_feature(ymins), 'image/object/bbox/ymax':

dataset_util.float_list_feature(ymaxs), 'image/object/class/text':

dataset_util.bytes_list_feature(classes_text), 'image/object/class/label':

dataset_util.int64_list_feature(classes), }))

return tf_example

def main(_):

writer = tf.python_io.TFRecordWriter(FLAGS.output_path) path = os.path.join(FLAGS.image_dir)

examples = pd.read_csv(FLAGS.csv_input) grouped = split(examples, 'filename') for group in grouped:

tf_example = create_tf_example(group, path) writer.write(tf_example.SerializeToString()) writer.close()

(65)

output_path = os.path.join(os.getcwd(), FLAGS.output_path)

print('Successfully created the TFRecords:

{}'.format(output_path))

if __name__ == '__main__':

tf.app.run() 4. Data Training

from absl import flags

import tensorflow.compat.v2 as tf

from object_detection import model_lib_v2

flags.DEFINE_string('pipeline_config_path', None, 'Path to pipeline config '

'file.')

flags.DEFINE_integer('num_train_steps', None, 'Number of train steps.')

flags.DEFINE_bool('eval_on_train_data', False, 'Enable evaluating on train '

'data (only supported in distributed training).')

flags.DEFINE_integer('sample_1_of_n_eval_examples', None, 'Will sample one of '

'every n eval input examples, where n is provided.')

flags.DEFINE_integer('sample_1_of_n_eval_on_train_examples', 5, 'Will sample '

'one of every n train input examples for evaluation, '

'where n is provided. This is only used if '

'`eval_training_data` is True.') flags.DEFINE_string(

'model_dir', None, 'Path to output model directory ' 'where event and checkpoint files will be written.')

flags.DEFINE_string(

'checkpoint_dir', None, 'Path to directory holding a checkpoint. If '

'`checkpoint_dir` is provided, this binary operates in eval-only mode, '

'writing resulting metrics to `model_dir`.') flags.DEFINE_integer('eval_timeout', 3600, 'Number of seconds to wait for an'

(66)

55

'evaluation checkpoint before exiting.')

flags.DEFINE_bool('use_tpu', False, 'Whether the job is executing on a TPU.')

flags.DEFINE_string(

'tpu_name', default=None,

help='Name of the Cloud TPU for Cluster Resolvers.') flags.DEFINE_integer(

'num_workers', 1, 'When num_workers > 1, training uses ' 'MultiWorkerMirroredStrategy. When num_workers = 1 it uses '

'MirroredStrategy.') flags.DEFINE_integer(

'checkpoint_every_n', 1000, 'Integer defining how often we checkpoint.')

flags.DEFINE_boolean('record_summaries', True,

('Whether or not to record summaries during'

' training.')) FLAGS = flags.FLAGS

def main(unused_argv):

flags.mark_flag_as_required('model_dir')

flags.mark_flag_as_required('pipeline_config_path') tf.config.set_soft_device_placement(True)

if FLAGS.checkpoint_dir:

model_lib_v2.eval_continuously(

pipeline_config_path=FLAGS.pipeline_config_path, model_dir=FLAGS.model_dir,

train_steps=FLAGS.num_train_steps,

sample_1_of_n_eval_examples=FLAGS.sample_1_of_n_eval_example s,

sample_1_of_n_eval_on_train_examples=(

FLAGS.sample_1_of_n_eval_on_train_examples), checkpoint_dir=FLAGS.checkpoint_dir,

wait_interval=300, timeout=FLAGS.eval_timeout) else:

if FLAGS.use_tpu:

# TPU is automatically inferred if tpu_name is None and

# we are running under cloud ai-platform.

Gambar

Gambar 2.1. Hutan mangrove
Gambar 2. 2 Alur Kerja MobileNet
Gambar 3.1 Contoh data citra daun rusak
Gambar 3.2 Contoh Citra Daun Berulat
+7

Referensi

Dokumen terkait