Penjelasan Program Uji Coba Aplikasi

4.2 Penjelasan Program

Aplikasi ini dibuat untuk mendeteksi jenis penyakit pada daun cabe serta memberikan solusi penanganannya. Yang dibutuhkan dalam menjalankan aplikasi ini adalah citra. Citra tersebut akan diproses melewati 4 tahapan image processing. Tahap pertama citra diubah menjadi citra grayscale. Tahap kedua, citra grayscale diubah menjadi citra hitam-putih dengan threshold. Tahap selanjutnya yaitu mendeteksi tepi dengan metode Laplacian of Gaussian. Setelah mendeteksi tepi, maka pada tahap akhir dilakukan pencocokan nilai matriks citra dengan nilai String matriks pembanding untuk menentukan jenis penyakit yang diderita.

4.3 Implementasi Image Processing

Untuk mendapatkan hasil deteksi tepi yang baik, dilakukan beberapa tahapan image processing.

4.3.1 Proses Konversi Citra Asli menjadi Grayscale

Dalam aplikasi ini, pada tahap awal sebelum melakukan pendeteksian tepi, citra input akan diubah terlebih dahulu menjadi citra grayscale keabuan. Tahap awal proses grayscale dimulai dengan mencari atau meghitung nilai warna RGB, yaitu nilai Red merah, Green hijau, dan Blue biru dari setiap pixel x,y pada citra input. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Setelah mendapatkan nilai RGB, maka nilai tersebut akan dimasukkan ke dalam rumus sebagai berikut : Y= R+G+B 3 Keterangan : Y = Nilai grayscale; R = Nilai red; G = Nilai green; B = Nilai Blue. Berikut source code untuk mengkonversi citra ke grayscale: int iImageWidth, iImageHeight,red,green,blue,gray,warna; Image1-Canvas-Draw0,0,jpgImage-Graphic; ImageWidth = Image1-Width; iImageHeight = Image1-Height; for int iWhichXPixel = 0; iWhichXPixel iImageWidth; iWhichXPixel++ { for int iWhichYPixel = 0; iWhichYPixel iImageHeight; iWhichYPixel++ { warna = Image1-Canvas-Pixels[iWhichXPixel][iWhichYPixel]; red = GetRValuewarna; green = GetGValuewarna; blue = GetBValuewarna; gray = red+green+blue3; COLORREF ClrMine = RGBgray, gray, gray; Image1-Canvas-Pixels[iWhichXPixel][iWhichYPixel]= ClrMine; } } Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

4.3.2 Proses Threshold

Setelah citra input diubah menjadi citra grayscale, maka tahap selanjutnya citra akan mengalami proses thresholding. Proses threshold merupakan proses di mana citra akan diubah menjadi citra hitam-putih. Selama proses thresholding, individu pixel dalam gambar ditandai sebagai objek pixel jika nilai objek lebih besar dari beberapa nilai threshold asumsi benda menjadi lebih terang daripada latar belakang dan jika sebaliknya maka ditandai sebagai “latar belakang” pixel. Konvensi ini dikenal sebagai ambang atas. Ada juga yang disebut nilai ambang bawah. Apabila nilai pixel berada diantara ambang atas dan bawah, maka pixel ditandai sebagai “objek” sehingga disebut threshold inside. Threshold outside merupakan kebalikan dari threshold inside dimana nilai pixel berada diluar ambang batas Shapiro, et. 2001 al: 83. Biasanya, sebuah pixel objek diberi nilai 1 sementara piksel latar belakang diberikan nilai ”0”. Pada akhirnya, suatu citra biner dibentuk oleh pixel warna putih atau hitam, tergantung pada label pixel. Parameter kunci dalam proses thresholding adalah pilihan dari nilai ambang batas. Ada 2 cara melakukan Threshol, yaitu threshold statis dan threshold dinamis. Threshold statis, pengguna dapat secara Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. manual memilih nilai ambang batas. Sedangkan threshold dinamis terdapat algoritma menghitung ambang batas secara otomatis. Threshold yang digunakan dalam aplikasi ini adalah threshold dinamis. Apabila nilai pixel lebih besar dari nilai ambang batas maka pixel akan berwarna putih, sebaliknya apabila nilai pixel lebih kecil maka pixel akan berwarna hitam. Salah satu metode Threshold dinamis yang relatif sederhana dan tahan terhadap noise adalah metode iteratif. Berikut algoritma metode iteratif : a. Ambang awal T dipilih, hal ini dapat dilakukan secara acak atau sesuai dengan metode lainnya yang diinginkan. b. Gambar akan tersegmentasi ke dalam piksel objek dan latar belakang seperti diuraikan di atas, menciptakan dua set:  G 1 = {f m, n: f m, n T} piksel obyek  G 2 = {f m, n: f m, n =T} piksel latar belakang catatan, f m, n adalah nilai dari pixel yang terletak di kolom m, baris n c. Rata-rata masing-masing set dihitung.  m1 = nilai rata-rata 1 dari G 1  m2 = nilai rata-rata 2 dari G 2 d. Ambang batas baru dibuat yaitu rata-rata m 1 dan m 2 : T = m 1 + m 2 2 Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. e. Kembali ke langkah dua, sekarang menggunakan ambang batas baru dihitung pada langkah empat, terus mengulanginya sampai ambang baru cocok dengan satu sebelum itu yaitu sampai konvergensi telah tercapai. Setelah itu akan didapat nilai ambang batas akhir yang akan menentukan pixel mana yang diubah menjadi hitam, dan mana yang menjadi putih. int iImageWidth, iImageHeight,pixel,T=128,t=0,jmlNNol,jmlNSatu,jmlNol,jmlSatu,warna,gray,m1 ,m2; iImageWidth = Image2-Width; iImageHeight = Image2-Height; do { t=T; jmlNol =1 ; jmlNNol =0; jmlSatu =1; jmlNSatu =0; for int iWhichXPixel = 0; iWhichXPixel iImageWidth; iWhichXPixel++ { for int iWhichYPixel = 0; iWhichYPixel iImageHeight; iWhichYPixel++ { warna = Image1-Canvas-Pixels[iWhichXPixel][iWhichYPixel]; gray = GetRValuewarna+GetGValuewarna+GetBValuewarna3; if gray T { jmlNol +=1; jmlNNol +=gray; } else { jmlSatu +=1; jmlNSatu +=gray; } } } if jmlNol1 jmlNol-=1; ifjmlSatu1 jmlSatu-=1; m1 = jmlNNoljmlNol; m2 = jmlNSatujmlSatu; T = m1+m22; }whilet=T; Edit1-Text = T; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

4.3.3 Implementasi Metode Laplacian of Gaussian

Dalam aplikasi ini, yang berperan penting adalah penerapan metode Laplacian of Gaussian LoG. Setelah citra mengalami thresholding, maka tahap selanjutnya adalah menerapkan metode LoG ke dalam program. Metode LoG ini digunakan untuk mendeteksi tepi dari citra hitam-putih. Metode modern ini banyak digunakan karena dapat mendeteksi tepi dengan hasil yang lebih baik. Pada metode LoG, citra akan di filter dahulu sehingga akan mengurangi atau menghilangkan noise pada citra sehingga kualitas detail tepi menjadi lebih baiklebih kelihatan. Metode Log ini membentuk suatu cross-zero section yaitu diagram yang memotong sumbu v yang akan menunjukan perbedaan antara daerah gelap dan terang. Dengan demikian, metode ini akan menghasilkan deteksi tepi yang lebih halus dan sudah menghilangkan noise. for int iWhichXPixel = 0; iWhichXPixel iImageWidth; iWhichXPixel++ { for int iWhichYPixel = 0; iWhichYPixel iImageHeight; iWhichYPixel++ { warna = Image1-Canvas-Pixels[iWhichXPixel][iWhichYPixel]; gray = GetRValuewarna; if grayT gray = 255 ; else gray = 0; COLORREF ClrMine = RGBgray, gray, gray; Image4-Canvas-Pixels[iWhichXPixel][iWhichYPixel]= ClrMine; } } Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Matriks yang digunakan dalam metode ini adalah matriks 5x5 sebagai berikut : Gambar 4.1 Matriks 5x5 LoG Matriks ini diinisialisasikan dalam program menggunakan array 2 dimensi. Matriks LoG ini akan dikalikan dengan matriks yang dihasikan oleh proses Threshold pada citra input. Proses ini disebut proses konvolusi. Pada proses konvolusi, matriks 5x5 LoG ditempatkan di atas matriks citra input. Pada Matriks LoG diambil nilai tengahnya yaitu pada LoG [2][2] untuk dikalikan dengan matriks citra [0][0] begitu pula dengan matriks pixel selanjutnya dikalikan sesuai posisi kedua matriks. Pada tahap awal nilai matriks LoG [0][0] sampai [1][1] diabaikan karena terletak diluar citra. Hasil konvolusi ditempatkan pada pixel citra [0][0]. Proses ini akan dilanjutkan dengan bergeser satu pixel ke arah kanan citra untuk mencari nilai konvolusi dari pixel tersebut. Proses ini akan terus berulang sampai pixel paling Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. bawah sebelah kanan. Hasil perkalian kedua matriks akan menghasilkan deteksi tepi yang halus dan sudah menghilangkan noise. for int iWhichXPixel = -2 ; iWhichXPixel iImageWidth-2; iWhichXPixel++ { for int iWhichYPixel = -2 ; iWhichYPixel iImageHeight-2; iWhichYPixel++ { gray_log=0; for int i=0;i5;i++ { for int j=0;j5;j++ { if i+iWhichXPixel 0 || j+iWhichYPixel 0 gray =0; else{ warna = Image4-Canvas-Pixels[iWhichXPixel+i][iWhichYPixel+j]; gray = GetRValuewarna; } gray_log += log[i][j]gray; } } if gray_log 0 gray_log=0; else if gray_log 255 gray_log = 255; COLORREF ClrMine = RGBgray_log, gray_log, gray_log; Image3-Canvas-Pixels[iWhichXPixel+2][iWhichYPixel+2]= ClrMine; } } int iImageWidth, iImageHeight,gray_log,gray,warna; iImageWidth = Image2-Width; iImageHeight = Image2-Height; int log[5][5]; log[0][0]=0; log[0][1]=0; log[0][2]=-1; log[0][3]=0; log[0][4]=0; log[1][0]=0; log[1][1]=-1; log[1][2]=-2; log[1][3]=-1; log[1][4]=0; log[2][0]=-1; log[2][1]=-2; log[2][2]=16; log[2][3]=-2; log[2][4]=-1; log[3][0]=0; log[3][1]=-1; log[3][2]=-2; log[3][3]=-1; log[3][4]=0; log[4][0]=0; log[4][1]=0; log[4][2]=-1; log[4][3]=0; log[4][4]=0; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

4.3.4 Proses Pembandingan String Matriks dan Hasil

Pembandingan matriks digunakan untuk mendapatkan hasil akhir berupa jenis-jenis penyakit beserta cara pengendaliannya. Untuk pembandingan matriks ini, digunakan Fuzzy String Matching. Fungsi Fuzzy String Matching untuk menbandingkan antara matriks citra dengan String matriks pembanding. Dengan metode ini, akan dilakukan pengecekan satu per satu matriks dari koordinat pixel 0,0 hingga koordinat pixel terakhir. Dengan demikian akan menghasilkan baik. Untuk mendeteksi penyakit yang diderita, digunakan String pembanding. String pembanding ini menggambarkan ciri dari jenis penyakit yang ada pada daun cabe. String pembanding didapatkan dengan proses yang sama yaitu melewati tahap grayscaling, thresholding, dan LoG. String pembanding ini sudah dijalankan terlebih dahulu dan di simpan dalam array pada source code sehingga mendapatkan hasil string untuk dibandingkan dengan string citra input. Citra pembanding yang digunakan untuk penyakit Bercak Daun Cercospora capsici sebanyak 3 citra yang telah diproses dengan tahap grayscaling, thresholding, dan LoG sehingga menghasilkan string pembanding sebagai berikut : Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. a. Bercak Daun Pembanding 1 Gambar 4.2 menunjukan citra pembanding yang pertama untuk penyakit bercak daun. Gambar 4.2 Bercak Daun Pembanding 1 String pembanding yang dihasilkan dari citra di atas setelah melalui tahap grayscaling, thresholding, dan LoG adalah : Boolean cocok=false; int iImageWidth, iImageHeight,gray,warna; String bd[3],bb[2],et[2]; String buf=; bd[0] = 1111111111111111111111111111100011111111111111111111111111111000110 00000000000000000000000011000110000000000000001100000000110001100000 00011000011111000000110001100000001111111100111000001100011000000110 01111000001100000111111000001100000000000001100000111110000110000000 00000001100000000110000110000000010000001100000001100011000000011111 00000110000001100011000000011111000001100000011000110000000011110000 00110000011000011000000000000000001100000110000110000000000000000110 00000110000011000000000000000110000001100000011110000000000011000000 01100000001111110000000110000000011000000000011111100111000000000110 00000000000011111110000000000110000000000000000110000000000001100000 00000000000000000000000001100000000000000000000000000000011000000000 00000000000000000000011000000000000000000000000000000110000000000000 00000000000000000110000000000000000000000000000001100000000000000000 00000000000001100000000000000000000000000000011000000000000000000000 00000000011000000000000000000000000000000; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. b. Bercak Daun pembanding 2 Gambar 4.3 menunjukan citra pembanding yang kedua untuk penyakit bercak daun. Gambar 4.3 Bercak Daun Pembanding 2 String pembanding yang dihasilkan dari citra di atas setelah melalui tahap grayscaling, thresholding, dan LoG adalah : Boolean cocok=false; int iImageWidth, iImageHeight,gray,warna; String bd[3],bb[2],et[2]; String buf=; bd[1] = 0000000000000000000000000000000011000000000000000000000000000000001 10000000000000000000000000000000011000000000000000000000000000000001 10000000000000000000000000001000011000000000000000000000000000000001 10000000000000000000000000000000011000000000000000000000000000000001 10000000000000000000000000000000011000000000011111100000000000000001 10000000001111111100000000000000011000000001100000011000000000000001 10000000011000000110000000000000011000000011000000001100000000000001 10000000110000010011000000000000011000000001100011111000000000000001 10000000011001101100010000000000011000000000110110110000000000000001 10000000000111111110000000000000011000000000001111110000000000000001 10000000000000000000000000000000011000000000000000000000000000000001 10000000000000000000000000000000011000000000000000000000000000000001 10000000000000000000000000000000011000000000000000000000000000000001 10000000000000000000000000000000011000000000000000000000000000000001 100000000000000000000000000000000110000; bd[1]=bd[1] +000000000000000000000000000011000000000000000000000000000000001111 11111111111111111111111111111110111111111111111111111111111111110011 000000000000000000000000000000001100000000000000000000000000000000; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. c. Bercak Daun Pembanding 3 Gambar 4.4 menunjukan citra pembanding yang ketiga untuk penyakit bercak daun. Gambar 4.4 Bercak Daun Pembanding 3 String pembanding yang dihasilkan dari citra di atas setelah melalui tahap grayscaling, thresholding, dan LoG adalah : Boolean cocok=false; int iImageWidth, iImageHeight,gray,warna; String bd[3],bb[2],et[2]; String buf=; bd[2]=0000000000000000000000111111111110000000000000000000000011111 11111000000000000000000000001111001101000000000000000000000000011111 10100000000000000000000000000011100100000000000000000000000000000000 10000000000000000000000000000000010000000000010000000000000000000010 00000000010000000000000000000001000000000011000011100000000000001100 00000000001111111000000000000111000000000011110001100000000000100000 00000001100000011100000000010000000000001100000001110000000010000000 00000110000000011000000001000000000000110000000011000000001000000000 00011000000000110000000100000000000011000000000110000000100000000000 01100000000011000000010000000000011100000001111100000010000000000010 11111111111100000001000000000000001111111000000000001000000000000001 00000000000000000100000000000000000000000000000000100000000000000000 00000000000000010000000000000000000000000000000010000000000000000000 00000000000001000000000000000000000000000000001000000000000000000000 00000000000100000000000000000000000000000000100; bd[2]=bd[2]+ 0000000000000000000000000000001111111111111111111111111111111111111 11111111111111111111111111111011000000000000000000000000000000011000 00000000000000000000000000001100000000000000000000000000000001100000 00000000000000000000000000; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Citra pembanding yang digunakan untuk penyakit Bercak Bakteri Xanthomonas campestris pv. vesicatoria sebanyak 2 citra yang telah diproses dengan tahap grayscaling, thresholding, dan LoG sehingga menghasilkan string pembanding sebagai berikut : a. Bercak Bakteri Pembanding 1 Gambar 4.5 menunjukan citra pembanding yang pertama untuk penyakit bercak bakteri. Gambar 4.5 Bercak Bakteri Pembanding 1 String pembanding yang dihasilkan dari citra di atas setelah melalui tahap grayscaling, thresholding, dan LoG adalah : bb[0]=0000000000000000000000000000000011111111100000000000000000000 00000000000011111111100000000000000000000000000000000110000000000000 00000000000000000000001001100000000000000000000000000000000000000001 10000000000000000000000000000000000000001100000000000000000000000000 00000000000001100000000000000000000000000000110000000011000000000000 00000000000000001000000000011000000000000000000000000000000000000000 11000000000000000000000000000000000011000110000000000000000000000000 00000001110000110000000000000000000000000111001111100001100000000000 00000000000000001111111100001100000000000000000000000000011111111100 01100000000000000000000000011111001011100110000000000000000000000000 11101111111100011000000000000000000000000110001101110000110000000000 00000000000111100000011000000110000000000000000000001011000000110001 00110000000000000000000001011000001100001001100000000000000000000111 10000011100000001100000000000000000000111000001111000000011000000000 00000000000011010011000000000011000000000010000; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. b. Bercak Bakteri Pembanding 2 Pada Gambar 4.6 akan menunjukan citra pembanding yang kedua yang digunakan sebagai pembanding untuk penyakit bercak bakteri. Gambar 4.6 Bercak Bakteri Pembanding 2 String pembanding yang dihasilkan dari citra di atas setelah melalui tahap grayscaling, thresholding, dan LoG adalah : bb[0]=bb[0]+0000011111101100000000001100000000000000000000110101111 00010000001100000000000000000000000011110000000000011000000000001000 00000000011110010000000011000000000000000000000001111000000000000110 00000000000000000000011110000000000000110000000000000000000000001100 00000000000110000000111111111111111111111111111111111000000001111111 11111111110011111111111110000000001100000000000000000000000000000000 00000001100000000000000000000000000000000000000011000000000000000000 00000000000000000000011000000000000000000000000000000000000000110000 00000000000000000000000000000000000110000000000000000000000000000000 00000000110000000000000000000000000000000000000001100000000000000000 000000000000000000000011000000000000000000000000000000000000000; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Sedangkan untuk penyakit Embun Tepung Powdery Mildew Leveillula taurica Citra pembanding yang digunakan sebanyak 2 citra yang telah diproses dengan tahap grayscaling, thresholding, dan LoG sehingga menghasilkan string pembanding sebagai berikut : a. Embun Tepung Pembanding 1 Citra pembanding yang pertama untuk jenis penyakit embun tepung dapat dilihat pada gambar 4.7 berikut : Boolean cocok=false; int iImageWidth, iImageHeight,gray,warna; String bd[3],bb[2],et[2]; String buf=; bb[1]=0000000000000000000000000000000011111000000000000000000000000 00000000111110000000000000000000000000000000011000000000000000000000 00000000000000110000000000000000000000000000000000011000000000000000 11000000000000000000110000000000000011100000000000000000011000001000 00000000000000000000000000110000000000000000000000000000000000011000 00000000000000000001000000011000110000000000001100000000000000001100 01100000000000011100000000000000011000110000000000001111110000000000 00000001100000000000011001100000001000000110110000000000011000000000 00000000001101100000000001100000000000000100000100110000000000011000 00000011001100011001100000000000010000000011110000000110110000000000 01000000000111100000000111000000000000100000001110011111110011000000 00000000000000111000011111100110000000000000000000011100110000110011 00000000000000000001111111110000110110000000000000000000111011001100 01101100000000000000000000000011011001110110000000000000000000000000 10011110001100000000000000000000000001100111000; bb[1]=bb[1]+1100000000000000000000000000011110011100000000000000000 00000000000000100111000000000000000000000000000000001000110000000000 00000000000000000000000000110000111111111111111111111111111111110000 01111111111111111111111111111111000000110000000000000000000000000000 00000001100000000000000000000000000000000000110000000000000000000000 0000000000000; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Gambar 4.7 Embun Tepung Pambanding 1 String pembanding yang dihasilkan dari citra di atas adalah : et[0] = et[0] +000000000000000000000000000110000000000111100000000000000000000000 00001100000000011111000000000000000000000000000110000000000011100000 00000000000000000000001100000000000011110000000000000000000000000110 00000000000001100000000000000000000000001100000000000000111000000000 00000000000000011000000000000001110000000000000000000000001100000000 01111110111111111111111111111111110000000000111110001111111111111111 11111111000000000001100000000000000000000000000000000000000000110000 00000000000000000000000000000000000001100000000000000000000000000000 00000000000011000000000000000000000000000000000000000001100000000000 00000000000000000000000000000011000000000000000000000000000000000000 00000110000000000000000000000000000000000000000011000000000000000000 00000000000000000000000; et[0] =000000000000000000000000000000001111111111100000000000000000000000 00000000011111111111000000000000000000000000000000001100000000000000 00000000000000000000000000011000000000000000000000000000000000000000 00110000000000000000000000000000000000110000011000000000000000000000 00000000000011100000110000000000000000000000000000000001100000011000 00000000000000000000000000000110000000110000000000000000000000000000 00000000000001100000000000000000000000000000000000000000110000000000 00000000000000000000000000000001100000000000000000000000000000000000 00000011000000000000000000000000000000000000000001100000000000000000 00000000000000000000000011000000000000000000000000000000000000000001 10000000000000000000000000000000000000000011000000000000000000000000 00000000000000000110000000000000000000000000000000000000000011000000 00000000000000000000000000000000000110000000001100000000000000000000 00000000011000000000011000000000000000000000000000001100000000001110 00000000000000000000000000011000000000011100; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. b. Embun Tepung Pembanding 2 Citra pembanding yang pertama untuk jenis penyakit embun tepung dapat dilihat pada gambar 4.8 berikut : Gambar 4.8 Embun Tepung Pembanding 2 Berikut hasil string pembangding yang didapatkan dari citra di atas melalui tahap grayscaling, thresholding, dan LoG : et[1] = 1111111101100000111111110000000000000000000011111111111100011111111 10000000000000000000011000000111111110011111100000001110000000000110 00001100110011111110000000000111110000000110011110000000111000000010 00000001100000000110111111100000111000000000000000000000000001111001 11110000111000000000000000000111000001110001111000000000111111000000 00000111000001100001100000000000011111000000011001111011000000000000 00000000011011000000000000000011001000000000000000000111110000010000 00000010000000000000000000010011110000110000000001000000000000001000 00111000010000110001100000000001100000011100001100000001100000111000 00000000000000001111001000110011100011101100000000000000000000111100 00100110110011000110000000000100000100111110110001110111100000111111 11000000000111100011111111111011000000011111110000000000110000010011 10001100000000100000000010000000011000000011000011000010011100000001 10000000011000000001100011000111110110000000100000111100000000001111 100011011111000000000000011110000000000001110011; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. String Matriks dari citra yang telah di-LoG akan dibandingan dengan String matriks pembanding untuk mendapatkan hasil jenis penyakit yang diderita. Pembandingan String ini menggunakan metode Fuzzy String Matching. Dari beberapa referensi menyatakan Fuzzy String Matching merupakan metode pembandingan matriks yang dapat menghasilkan tingkat kecocokan yang cukup akurat dibanding metode lainnya. et[1] = et[1] +111100100000000000000110000000000000000001111111111110011100000001 10000000000000000011000111111111111100000011000000000000000001100011 00000001100100000011000000000000000011111111111111111111000000110000 00000000000110111100111111100111000001100000000000000001111111000011 00000001100011000000000000000011111101100111100000001111111110000000 00000110111100111100110000000011111111000000000011000111011110000110 00010000000001100000000011000001110011111100000111111111110000000001 10000000110001111000000111111111100000000001100000001100011000001110 00111111100110000001100000001110111100011110000000111111111111001100 00000011100110110000000000100110011111100111111111101111011000000000 01111100000000110011111111000110001111101001011111001111111001111000 00000000011111111111110011000011110011001100000000001101100111101000 01111111100111100110000000000111000110000000001110001111000011000000 00000010000110000000000110000111110011000000000000000001100000000001 1011011011001100000000000000000; Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. for int iWhichXPixel = 0; iWhichXPixel iImageWidth; iWhichXPixel++ { for int iWhichYPixel = 0; iWhichYPixel iImageHeight; iWhichYPixel++ { warna = Image3-Canvas-Pixels[iWhichXPixel][iWhichYPixel]; gray= GetRValuewarna; if gray==255 gray=1; else gray=0; buf = buf + gray; } } float h; int bnr=0; if bnr==0{ for int j=0;j2;j++ { h=fuzzymatchet[j],buf; if h 0.69f { bnr=3; break; } } } if bnr==0{ for int i=0;i3;i++{ h=fuzzymatchbd[i],buf; if h 0.54f { bnr=1; break; } } } if bnr==0{ for int j=0;j2;j++ { h=fuzzymatchbb[j],buf; if h 0.51f { bnr=2; break; } } } Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 67 BAB V UJI COBA DAN EVALUASI

5.1 Uji Coba Aplikasi

Untuk mengetahui sejauh mana kemampuan aplikasi ini bekerja dalam mendeteksi penyakit pada daun cabe, maka perlu dilakukan pengujian. Pengujian ini dilakukan dengan memberikan beberapa contoh citra penyakit daun cabe. Citra-citra yang dijadikan contoh tersebut merupakan citra yang diambil dari bagian daun yang mempunyai ciri penyakit. Ketika aplikasi berjalan, citra diinputkan ke dalam Picturebox. Dengan OpenFile, citra secara otomatis muncul di Picturebox pada aplikasi Gambar 5.1. Gambar 5.1 Open file picture Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Setelah citra berhasil diinputkan, proses selanjutnya adalah proses mengkonversi citra asli menjadi citra grayscale keabuan dengan meng-klik button “Grayscale”. Kemudian klik button “Threshold” untuk menjalankan fungsi thresholding. Citra hitam-putih dari proses threshold akan diproses dengan metode Laplacian of Gaussian dengan menekan button “Laplacian of Gaussian”. Tahap akhir, klik button “Hasil” untuk mendapatkan hasil deteksi jenis penyakit beserta pengobatan atau pengendaliannya Gambar 5.2. Gambar 5.2 Hasil Proses Deteksi Penyakit Proses pengujian dilakukan pula pada 25 citra yang mempunyai struktur penyakit yang berbeda. Dari hasil pengujian terhadap 25 citra tersebut, dapat diketahui 20 dari 25 citra berhasil dideteksi dengan Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. benar. Dengan kata lain tingkat keberhasilan mencapai 80, diperoleh dengan perhitungan sebagai berikut : Jumlah Citra Benar Jumlah Pengujian Jadi diperoleh persentasi keberhasilan = 20 25 = 0.8 X 100 = 80 Berikut hasil uji coba yang telah dilakukan terhadap 25 citra input daun tanaman cabe yang terserang penyakit dapat dilihat pada tabel 5.1: Tabel 5.1 Hasil Uji Coba No Citra Input Grayscale Threshold LoG Hasil akhir Penyakit sebenarnya 1 Bercak Bakteri Bercak Daun 2 Bercak Daun Bercak Daun 3 Tidak diketahui Embun Tepung X 100 X 100 Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. No Citra Input Grayscale Threshold LoG Hasil akhir Penyakit sebenarnya 4 Bercak Bakteri Bercak Daun 5 Embun Tepung Embun Tepung 6 Bercak Daun Bercak Daun 7 Embun Tepung Embun Tepung 8 Bercak Bakteri Bercak Bakteri 9 Embun Tepung Bercak Daun 10 Bercak Daun Bercak Daun 11 Bercak Daun Bercak Daun 12 Bercak Bakteri Bercak Bakteri Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. No Citra Input Grayscale Threshold LoG Hasil akhir Penyakit sebenarnya 13 Bercak Daun Bercak Daun 14 Embun Tepung Embun Tepung 15 Bercak Bakteri Bercak Bakteri 16 Tidak diketahui Embun Tepung 17 Bercak Daun Bercak Daun 18 Bercak Bakteri Bercak Bakteri 19 Embun Tepung Embun Tepung 20 Embun Tepung Embun Tepung Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. No Citra Input Grayscale Threshold LoG Hasil akhir Penyakit sebenarnya 21 Bercak Bakteri Bercak Bakteri 22 Bercak Daun Bercak Daun 23 Embun Tepung Embun Tepung 24 Bercak Daun Bercak Daun 25 Embun Tepung Embun Tepung

5.2 Evaluasi