BAB II TINJAUAN PUSTAKA
2.1.
Image Data masukan yang diproses adalah suatu image. Image merupakan
sebuah representasi khusus dari suatu obyek, baik obyek dua dimensi maupun tiga dimensi, dimana representasi tersebut dinyatakan dalam bentuk dua dimensi. Image dapat berbentuk nyata, maya, ataupun dalam bentuk optik. Selain itu, image juga dapat berupa rekaman, seperti video image, digital image, atau sebuah gambar (Haralick dan Shapiro, 1992, p1). Image dapat dikategorikan sebagai : 2.1.1
Analog Image Menurut Shapiro dan Stockman (2001, p29), analog image adalah
image 2D F(x,y) yang
memiliki ketelitian tidak terbatas dalam parameter
spasial x dan y dan ketelitian tak terbatas pada intensitas tiap titik spasial (x,y). 2.1.2 Digital Image Menurut Shapiro dan Stockman (2001, p29), digital image adalah image 2D I[r,c] yang direpresentasikan oleh array diskrit 2D dari intensitas sampel, dimana masing-masing titik direpresentasikan dengan ketelitian terbatas. Digital image juga didefinisikan sebagai representasi dari gambar dua dimensi sebagai himpunan terbatas dari nilai digital yang disebut picture elements atau pixel. Umumnya pixel disimpan dalam komputer sebagai gambar raster, yaitu array
dua dimensi dari integer. Nilai ini kadang disimpan dalam bentuk
11 Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
12
terkompresi. Digital image dapat diperoleh dari berbagai macam alat dan teknik pengambil gambar, seperti kamera digital, scanner, radar, dan sebagainya. Dapat pula disintesis
dari data seperti fungsi matematika dan lain lain. (Anonim,
2005a). Menurut Jain, Kasturi dan Schunck (1995, p12), pixel adalah sampel dari intensitas image yang terkuantisasi ke dalam nilai integer. Sementara Image merupakan array dua dimensi dari pixel-pixel tersebut. Image inilah yang akan menjadi input awal dalam Computer Vision. Beberapa bentuk digital image yang sering digunakan dalam Computer Vision (Shapiro dan Stockman, 2001, p30): • Binary image, yaitu digital image dengan nilai pixel 1 atau 0. • Gray scale image, yaitu digital image monochrom dengan satu nilai intensitas tiap pixel. • Multispectral image, adalah image 2D yang memiliki vektor nilai pada tiap pixel, jika image berwarna maka vektornya memiliki 3 elemen. • Labeled image, adalah digital image dimana nilai pixel adalah simbol dari alfabet terbatas. (Anonim, 1996)
2.2
Pengolahan Citra Digital Secara
dwimatra
harafiah,
citra
(image)
adalah
(dua dimensi). Ditinjau dari sudut
gambar
pandang
pada
matematis,
bidang citra
merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
13
oleh alat-alat optik,
misalnya
mata pada
manusia, kamera, pemindai
(scanner), dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam. (Rinaldi Munir,2010) Citra mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu bahwa citra kaya dengan informasi. Citra juga dapat dikelompokkan menjadi dua yaitu citra tampak (foto, gambar, lukisan, apa yang nampak di layar monitor/televisi, hologram, dan lain-lain) dan citra tidak tampak (data foto/gambar dalam bentuk file, citra yang direpresentasikan dalam fungsi matematis). Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat optik berupa foto, analog berupa sinyal video seperti gambar pada monitor televisi, dan digital yang dapat langsung disimpan pada media penyimpan magnetik. Citra digital adalah citra yang disimpan dalam format digital (dalam bentuk file). Hanya citra digital yang dapat diolah menggunakan komputer. Jenis citra lain jika akan diolah dengan komputer harus diubah dulu menjadi citra digital. Citra digital tersusun atas sejumlah berhingga elemen,
masing-masing memiliki
lokasi
dan
nilai/intensitas
tertentu.
Elemen-elemen ini disebut elemen gambar, elemen citra, pels, dan juga piksel. Pencitraan
(imaging)
adalah
kegiatan
mengubah
informasi
dari
citra
tampak/citra non digital menjadi citra digital. Beberapa alat yang dapat digunakan untuk pencitraan adalah scanner, kamera digital, kamera sinarx/sinar infra merah, dan lain-lain. Jadi, pengolahan citra digital adalah proses yang bertujuan untuk memanipulasi dan menganalisis citra digital dengan bantuan komputer. Masukannya adalah citra dan keluarannya juga citra
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
14
tapi dengan kualitas lebih baik daripada citra masukan. (Lia Amelia, 2012) Pengolahan citra bertujuan untuk memperbaiki kualitas citra agar mudah diinterpretasikan oleh manusia atau mesin. Teknik-teknik pengolahan citra mentransformasikan citra menjadi citra lain. Inputan pada proses ini adalah citra dan keluarannya juga berupa citra dengan kualitas lebih baik daripada citra inputan sebelumnya.
Citra Awal
Pengolahan Citra
Citra Baru
Gambar 2.1 Pengolahan citra (Agung Priyo,2005) Pengenalan Pola, mengelompokkan data numeric dan simbolik (termasuk citra) secara otomatis, oleh mesin (dalam hal ini komputer). Tujuan pengelompokan adalah untuk mengenali suatu objek di dalam citra. Manusia bisa mengenali objek yang dilihatnya karena otak manusia telah belajar mengklasifikasi objek-objek di alam sehingga mampu membedakan suatu objek dengan objek lainnya. Kemampuan sistem visual manusia inilah yang dicoba ditiru oleh mesin. Komputer menerima masukan berupa citra objek yang akan diidentifikasi, memproses citra tersebut dan memberikan keluaran berupa deskripsi objek didalam citra. (Agung Priyo,2005)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
15
Pengenalan Pola
citra
deskripsi objek
Gambar 2.2 Pengenalan Pola (Agung Priyo,2005) Selain dalam dunia fotografi pengolahan citra digunakan juga dalam
dunia kedokteran terutama untuk memperjelas citra hasil sinar-x
organ tubuh manusia, pengolahan citra juga digunakan dalam bidang lain seperti penyiaran,
telekomunikasi
digital,
Sistem
multimedia,
bilogi,
sistem
penginderaan jauh, seni grafis, percetakan, militer, bidang pertanian dan masih banyak bidang lainnya. (Murinto, 2008)
2.3
Computer Vision Terminologi lain yang berkaitan erat dengan pengolahan citra adalah
Computer Vision atau Machine Vision. Pada hakikatnya, Computer Vision mencoba meniru cara kerja sistem visual manusia (Human Vision). Human Vision sesungguhnya sangat kompleks. Manusia melihat objek dengan indera penglihatan (mata), lalu citra objek diteruskan ke otak untuk diinterpretasi sehingga manusia mengerti objek apa yang tampak dalam pandangan matanya. Hasil interpretasi ini mungkin digunakan untuk pengambilan keputusan (misalnya menghindar, jika melihat mobil melaju di depan). Computer vision merupakan proses otomatis yang mengintegrasikan sejumlah besar proses untuk persepsi visual, seperti akuisisi citra, pengolahan citra, klasifikasi, pengenalan (recognition) dan membuat keputusan. Computer vision
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
16
terdiri dari teknik-teknik untuk mengestimasi ciri-ciri objek di dalam citra, pengukuran ciri yang berkaitan dengan geometri objek dan menginterpretasi informasi geometri tersebut.
Proses – proses di dalam computer vision dapat di
golongkan menjadi tiga aktivitas 1. Memperoleh atau mengakuisisi citra digital. 2. Melakukan teknik komputasi untuk memperoses atau memodifikasi data citra (operasi - operasi pengolahan citra). 3. Menganalisis dan menginterpretasi citra dan menggunakan hasil pemrosesan untuk tujuan tertentu, misalnya memandu robot, mengontrol peralatan, memantau proses manufaktur dan lain sebagainya. pengklasifikasian proses - proses
di dalam computer vision dalam hirarkhi
sebagai berikut : Hirarkhi Pemrosesan
Contoh Algoritma
Preprocessing
noise removal contrast enhancement
Lowest level feature extraction
edge detection texture detection
intermediate – level feature identification
connectivity patern matching boundary coding
high – level scene interpretation via images
model – base recognition
Gambar 2.3. Pengklasifikasian proses - proses di dalam computer vision (Agung Priyo, 2005)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
17
Dari penjelasan di atas, dapat kita lihat bahwa pengolahan citra dan pengenalan pola merupakan bagian dari computer vision. Pengolahan citra merupakan proses awal (preprocessing) pada computer vision, sedangkan pengenalan pola merupakan proses untuk menginterpretasi citra. Teknik-teknik di dalam pengenalan pola memainkan peranan penting dalam computer vision untuk mengenali objek. Jika dihubungkan dengan grafika komputer, maka computer vision merupakan kebalikannya. (Agung Priyo,2005)
2.4
Grayscale Mencari tingkat keabuan adalah proses pengubahan warna citra
menjadi format warna yang hanya berdasarkan tingkat keabuan. Proses ini menghilangkan
informasi
hue
dan
saturation
dari
piksel
dan
hanya
meninggalkan nilai brightness. Setiap piksel dari tingkat keabuan citra memiliki nilai brightness antara 0 (hitam) sampai 255 (putih). Foto hitam putih merupakan contoh umum dari model warna tingkat keabuan. Walaupun disebut hitam putih, sesungguhnya foto tersebut terbentuk dari banyak warna abu-abu yang berbeda. Tujuan
perhitungan
tingkat
keabuan
adalah
memudahkan proses selanjutnya yaitu proses thresholding. Dengan algoritma perhitungan tingkat keabuan, piksel dari suatu citra yang mengandung warnawarna RGB (merah, hijau dan biru) diubah menjadi warna dalam berbagai tingkat keabuan dengan menjumlahkan nilai warna merah, hijau dan biru kemudian dibagi tiga sehingga didapatkan nilai rata-rata dari ketiga warna. (Guntur Parikesit,2009)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
18
2.5
Thersholding Thresholding adalah proses untuk mengelompokkan semua piksel pada
citra dengan nilai tertentu menjadi dua bagian dengan nilai gray level yang telah ditentukan. Pembuatan citra biner adalah salah satu bentuk thresholding dengan nilai 0 dan 1, yaitu melakukan perubahan semua nilai piksel yang lebih besar atau sama dengan nilai ambang menjadi 1 dan semua nilai piksel yang lebih kecil dari nilai ambang menjadi 0. Untuk Thresholding tunggal, dapat dilihat melalui fungsi berikut : g( , ) =
0 1
( , )< ( , )≥
.............................................(2.1)
Nilai Thresholding (T) dapat di peroleh dengan berbagai cara, salah satu caranya adalah dengan melakukan perhitungan sederhana, dimana nilai rata-rata jumlah piksel yang memiliki nilai dibawah T sama dengan nilai rata-rata jumlah piksel yang memiliki nilai diatas T. Untuk perhitungan ini, nilai T yang didapat untuk gambar yang memiliki histogram yang telah ter-equalize adalah berkisar antara 127 dan 128. Nilai dari maksimum T adalah nilai tertinggi dari system warna yang digunakan dan nilai minimum dari T adalah nilai terendah dari system warna yang digunakan. Untuk 256 graylevel maka nilai tertinggi T adalah 255 dan nilai terendahnya adalah 0. (Eko Prasetyo, 2011)
2.6
Tepi Yang dimaksud dengan tepi (edge) adalah perubahan nilai intensitas
derajat keabuan yang mendadak (besar) dalam jarak yang singkat (Gambar 2.4).
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
19
Perbedaan intensitas inilah yang menampakkan rincian pada gambar. Tepi biasanya terdapat pada batas antara dua daerah berbeda pada suatu citra. Tepi dapat diorientasikan dengan suatu arah, dan arah ini berbeda-beda pada bergantung pada perubahan intensitas. (Rinaldi Munir,2010)
Gambar 2.4 Model tepi satu matra (Rinaldi Munir, 2010)
2.7
Deteksi Tepi Deteksi tepi merupakan sebuah proses di mana proses tersebut berfungsi
untuk mendeteksi garis tepi yang membatasi dua wilayah citra. Saat ini telah banyak operator – operator yang dapat digunakan dalam pembuatan deteksi tepi, contohnya adalah operator Robert , prewitt, sobel, serta operator turunan seperti laplace. Deteksi tepi itu sendiri bertujuan untuk menandai bagian yang menjadi detail citra, dan memperbaiki serta mengubah citra. (Septian Dwi Cahyo,2010) Pendeteksian tepi merupakan langkah pertama untuk melingkupi informasi di dalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra. Tujuan operasi pendeteksian tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek di dalam citra. Karena tepi termasuk
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
20
ke dalam komponen berfrekuensi tinggi, maka pendeteksian tepi dapat dilakukan dengan penapis lolos-tinggi.(Rinaldi Munir,2010 ) Manfaat yang bisa diperoleh dari deteksi tepi dalam berbagai bidang, misalnya yang paling banyak digunakan dalam bidang kedokteran adalah untuk menentukan stadium kanker, mendeteksi tepi citra USG janin, mendeteksi karies pada gigi, sehingga bentuk citra yang dihasilkan dapat terlihat lebih jelas. Di bidang lainnya, deteksi tepi digunakan untuk aplikasi pengenalan
plat
kendaraan,
aplikasi pengenalan sidik jari, dan untuk
membedakan uang asli dengan uang palsu. (Lia Amelia, 2012) Terdapat beberapa teknik yang digunakan untuk mendeteksi tepi, antara lain: •
Operator gradien pertama (differential gradient) mendeteksi tepi di dalam citra, yaitu operator gradien selisihterpusat, operator Sobel, operator Prewitt, operator Roberts, operator Canny.
•
Operator turunan kedua (Laplacian) Operator Laplace mendeteksi lokasi tepi khususnya pada citra tepi yang curam. Pada tepi yang curam, turunan keduanya mempunyai persilangan nol, yaitu titik di mana terdapat pergantian tanda nilai turunan kedua, sedangkan pada tepi yang
landai tidak terdapat
persilangan nol. Contohnya adalah operator Laplacian Gaussian, operator Gaussian.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
21
•
Operator kompas (compass operator) Digunakan untuk mendeteksi semua tepi dari berbagai arah di dalam citra. Operator kompas yang dipakai untuk deteksi tepi menampilkan tepi dari 8 macam arah mata angin yaitu Utara, Timur Laut, Timur, Tenggara, Selatan, Barat, Barat Daya, dan Barat Laut. Contoh beberapa gradien pertama yang dapat digunakan untuk turunan
pertama menghasilkan tepi yang lebih tebal, sedangkan turunan kedua menghasilkan tepi yang lebih tipis. Ada tiga macam tepi yang terdapat di dalam citra digital. Ketiganya adalah: 1. Tepi curam Tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 90°. 2. Tepi landai Disebut juga tepi lebar, yaitu tepi dengan sudut arah yang kecil. Tepi landau dapat dianggap terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan. 3. Tepi yang mengandung derau (noise) Umumnya tepi yang terdapat pada aplikasi computer vision mengandung derau. Operasi peningkatan kualitas citra (image enhancement) dapat dilakukan terlebih dahulu sebelum pendeteksian tepi. (Rinaldi Munir,2010)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
22
Gambar 2.5 Jenis – jenis tepi (Rinaldi Munir, 2010) 2.7.1 Metode Sobel Algoritma Sobel merupakan salah satu pengembangan dari teknik edge detection sebelumnya, juga pengembangan dari operator Prewit. Algoritma ini termasuk algoritma pemrograman yang berfungsi sebagai filter image. Filter ini mendeteksi keseluruhan edge yang ada. Dalam prosesnya filter ini menggunakan sebuah operator, yang dinamakan operator Sobel. Operator Sobel menggunakan matriks N x N dengan berordo 3 x 3, 5 x 5, 7 x 7, dan sebagainya. Matriks seperti ini digunakan untuk mempermudah mendapatkan piksel tengah sehingga menjadi titik tengah matrik (aij). Piksel tengah ini merupakan piksel yang akan diperiksa. Cara pemanfaatan matrik ini sama seperti pemakaian sebuah grid, yaitu dengan cara memasukkan piksel-piksel disekitar yang sedang
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
23
diperiksa (piksel tengah) ke dalam matrik. Cara yang demikian disebut spatial filtering. Tabel 2.1 Matrik 3x3 pada area image (Lia Amelia,2012)
Didefenisikan Gy sebagai arah penelusuran secara vertical : G = ( 0 − 6) + ( 2 − 4) + 2( 1 − 5).....................................(2.5) G = ( 0 + 2 1 + 2) − ( 5 + 2 4 + 6)......................................(2.6) dan Gx sebagai penulusuran arah secara horizontal : G = ( 0 − 2) + ( 6 − 4) + 2( 7 − 3).....................................(2.7) G = ( 0 + 2 7 + 6) − ( 2 + 4 + 2 3)......................................(2.8) definisi menggunakan nilai mutlak diberikan : G = |Gx| + |Gy|...................................................................................(2.9) Dimana, G : Besar Gradien Operator Sobel. Gx : Gradien Sobel arah horizontal. Gy : Gradien Sobel arah vertical. a0 – a7 : isi dari matrik seperti gambar diatas. Membandingkan area diatas dari persamaan (2.6) kita lihat bahwa Gy berbeda antara baris pertama dan ketiga, dimana elemen terdekat aij yakni (a1 dan a5) lebih besar dua kali dibanding nilai yang disekelilignya (hal ini berdasarkan intusi wilayah/area 0 juga pada persamaan (2.7), Gx
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
24
berbeda antara kolom a3 dan a7. Gx arah dari x dan Gy merupakan arah dari y. persamaan dari (2.6) dan (2.7) dapat diimplementasikan dari operasi sobel didapat nilai hasil dari persamaan (2.8). Teknik spatial filtering menggunakan lagi sebuah matrik yang dinamakan mask. Ukuran matrik mask sama besar dengan matrik piksel yaitu N x N. Didalam mask ini intinya disimpan jenis operasi yang akan dilakukan terhadap matrik piksel, akan tetapi tidak semua filter spatial filtering menggunakan mask untuk menyimpan operasinya. Sobel operator diterapkan dalam dua buah mask, untuk itu perlu diperhatiakn terlebih dahulu. Tabel 2.2 mask vertical
Tabel 2.3 mask horizontal
(Lia Amelia, 2012)
Mask pertama yaitu mask (a) digunakan untuk mengitung selisih titik pada sisi vertical sehingga dihasilkan titik penelusuran arah vertical. Mask kedua yaitu mask (b) digunakan untuk menghitung selisih titik pada sisi horizontal sehingga dihasilkan titik hasil penelusuran arah horizontal. (Lia Amelia, 2011) Didalam Matlab untuk menghitung piksel warna putih dengan menggunakan fungsi nnz (number of nonzero entries). Pada callback edge detectionnya diberi imbuhan nnz kemudian pemanggilan variable dari deteksi tepi metode sobel.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
25
2.7.2 Metode Prewit Metode
prewitt
pengembangan dari gradient operator dengan
menggunakan 2 mask (horizontal dan vertikal) ukuran 3x3. Pada operator ini kekuatan gradient ditinjau dari sudut pandang horizontal dan vertikal (memperhatikan titik disekitar pada posisi horizontal dan vertikal). Selain itu metode Prewitt merupakan pengembangan metode Sobel dengan menggunakan filter HPF (High Pass Filter) yang diberi satu angka nol penyangga. Metode ini mengambil prinsip dari fungsi laplacian yang dikenal sebagai fungsi untuk membangkitkan HPF. Kernel fillter yang digunakan dalam metode Prewitt ini adalah:
Gambar 2.6 Operator Prewitt (Eko Prasetyo, 2011) Didalam Matlab untuk menghitung piksel warna putih dengan menggunakan fungsi nnz (number of nonzero entries). Pada callback edge detectionnya diberi imbuhan nnz kemudian pemanggilan variable dari deteksi tepi metode prewitt.
2.7.3 Metode Canny Salah satu algoritma deteksi tepi modern adalah deteksi tepi dengan menggunakan metode Canny. Deteksi tepi Canny ditemukan oleh
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
26
Marr dan Hildreth yang meneliti pemodelan persepsi visual manusia. Ada beberapa kriteria pendeteksi tepian paling optimum yang dapat dipenuhi oleh algoritma Canny: a. Mendeteksi dengan baik (kriteria deteksi) Kemampuan untuk meletakkan dan menandai semua tepi yang ada sesuai
dengan
pemilihan
parameter-parameter
konvolusi
yang
dilakukan. Sekaligus juga memberikan fleksibilitas yang sangat tinggi dalam hal menentukan tingkat deteksi ketebalan tepi sesuai yang diinginkan. b. Melokalisasi dengan baik (kriteria lokalisasi) Dengan Canny dimungkinkan dihasilkan jarak yang minimum antara tepi yang dideteksi dengan tepi yang asli. c. Respon yang jelas (kriteria respon) Hanya ada satu respon untuk tiap tepi. Sehingga mudah dideteksi dan tidak menimbulkan kerancuan pada pengolahan citra selanjutnya. Pemilihan parameter deteksi tepi Canny sangat mempengaruhi hasil dari tepian yang dihasilkan. Beberapa parameter tersebut antara lain : (Elias Dianta Ginting, 2009)
1. Nilai Standart Deviasi Gaussian 2. Nilai Ambang Didalam Matlab untuk menghitung piksel warna putih dengan menggunakan fungsi nnz (number of nonzero entries). Pada callback edge
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
27
detectionnya diberi imbuhan nnz kemudian pemanggilan variable dari deteksi tepi metode canny.
2.7.4 Metode Roberts Operator Robert adalah nama lain dari teknik differensial yang sedang dikembangkan, yaitu differensial pada arah horisontal dan differensial pada arah vertikal, dengan ditambahkan proses konversi biner setelah dilakukan differensial. Teknik konversi biner yang disarankan adalah konversi biner dengan meratakan distribusi warna hitam d a n p u t i h . Operator Robert ini juga disamakan dengan teknik DPCM (Differential Pulse Code Modulation). Operator Robert Cross merupakan salah satu operator yang menggunakan jendela matrik 2x2, operator
ini
melakukan
perhitungan
dengan
mengambil
arah
diagonal untuk melakukan perhitungan nilai gradiennya.
=
1 0
0 −1
=
0 1 −1 0
Gambar 2.7 Operator Roberts (Lia Amelia, 2012) Sebenarnya operator sedehana ini hanya memeriksa sebuah piksel tambahan pada satu arah gradient tetapi karena yang diperiksa adalah piksel dalam arah diagonal, maka secara keseluruhan pikselpiksel yang terlibat membentuk jendela matrik 2x2. B entuk jendela yang demikian lebih menekankan pemeriksaan pada kedua arah diagonal, dari pada arah horizontal atau arah vertikal. Maka posisi titik
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
28
yang ditinjau tidak berada di pusta mask, sehingga tepi yang dihasilkan berada pada salah satu sisi tepi tersebut (tepi atas atau tepi bawah). Hasil konvolusi biasanya ada disekitar nilai 0 (nilai kecil), sehingga jika ditampilkan citra tepi kebanyakan berwarna hitam. Untuk nilai Gx dan nilai GY dapat dikombinasikan untuk mencari nilai mutlak gradient pada suatu titik dengan persamaan sebagai berikut: (Lia Amelia, 2012) | G | = √ GX 2 + GY 2 dengan, G
= besar gradien operator Roberts = gradien Roberts arah horisontal
= gradien Roberts arah vertical. Didalam Matlab untuk menghitung piksel warna putih dengan menggunakan fungsi nnz (number of nonzero entries). Pada callback edge detectionnya diberi imbuhan nnz kemudian pemanggilan variable dari deteksi tepi metode roberts.
2.8
Precision dan Recall Salah satu penerapan prinsip relevansi yang sejak dahulu digunakan dalam
pengembangan sistem IR adalah penggunaan ukuran recall and precision. Sejak teori tentang IR berkembang di tahun 1940an, para ilmuan selalu memeras otak, bagaimana caranya membuat sistem IR yang benar-benar handal. Bagaimana mengukur keefektifan sebuah sistem IR dalam memenuhi permintaan informasi? Bagaimana mengukur kemampuan sistem dalam menyediakan dokumen yang relevan dengan kebutuhan pemakai? Nah, recall and precision adalah upaya untuk menjawab persoalan itu.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
29
Terjemahan yang pas untuk istilah ini dalam bahasa Indonesia belum ditemukan. Istilah recall digunakan pula dalam psikologi untuk menjelaskan proses mengingat yang dikerjakan otak manusia. Kata lain untuk recall dalam bahasa Inggris adalah remember, recollect, remind. Di bidang IR, recall berkaitan dengan kemampuan menemukan-kembali butir informasi yang sudah tersimpan. Jadi, terjemahan bebasnya mungkin adalah “penemuan-kembali”. Precision dapat diartikan sebagai kepersisan atau kecocokan (antara permintaan informasi dengan jawaban terhadap permintaan itu). Jika seseorang mencari informasi di sebuah sistem, dan sistem menawarkan beberapa dokumen, maka kepersisan ini sebenarnya juga adalah relevansi. Artinya, seberapa persis atau cocok dokumen tersebut untuk keperluan pencari informasi, bergantung pada seberapa relevan dokumen tersebut bagi si pencari. Recall adalah proporsi jumlah dokumen yang dapat ditemukan-kembali oleh sebuah proses pencarian di sistem IR. Rumusnya: Jumlah dokumen relevan yang ditemukan / Jumlah semua dokumen relevan di dalam koleksi. Lalu, precision adalah proporsi jumlah dokumen yang ditemukan dan dianggap relevan untuk kebutuhan si pencari informasi. Rumusnya: Jumlah dokumen relevan yang ditemukan / Jumlah semua dokumen yang ditemukan. Kedua ukuran di atas biasanya diberi nilai dalam bentuk persentase, 1 sampai 100%. Sebuah sistem informasi akan dianggap baik jika tingkat recall maupun precision-nya tinggi. Jika ada seseorang mencari dokumen tentang “Pangeran Diponegoro” pada sebuah sistem, dan jika sistem tersebut memiliki
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
30
100 buku tentang Pangeran Diponegoro, maka kinerja terbaik adalah jika sistem tersebut berhasil menemukan 100 dokumen tentang Pangeran Diponegoro. Kalau sistem tersebut memberikan 100 temuan, dan di temuan tersebut ada 50 dokumen tentang “Pangeran Diponegoro”, maka nilai recall-nya adalah 0,5 (atau 50%) dan nilai precision-nya juga 0,5. Kalau sistem tersebut memberikan 1 dokumen saja, dan dokumen tersebut adalah tentang “Pangeran Diponegoro”, maka recall-nya bernilai 0,01 dan precision-nya bernilai 1. Perhatikan bahwa nilai precision yang tinggi ini sebenarnya terjadi karena sistem memberikan hanya 1 jawaban kepada si pencari informasi. Kalau sistem memberikan 100 dokumen, dan hanya 1 yang relevan, maka nilai recall-nya tetap 0,01 dan precision-nya pun ikut merosot ke 0,01. Dalam perkembangan teori IR, ukuran dan eksperimen terhadap kinerja sebuah sistem semakin diupayakan untuk mengakomodasi berbagai kemungkinan dalam situasi yang sesungguhnya. Misalnya, Lancaster merumuskan matriks terkenal berikut ini sebagai ukuran recall-precision:
Gambar 2.8 Rumus recall – precision 2.9 Matlab MATLAB merupakan suatu sistem interaktif yang memiliki elemen data dalam suatu array sehingga tidak lagi kita dipusingkan dengan masalah dimensi. Hal ini memungkinkan kita untuk memecahkan banyak masalah teknis yang terkait dengan komputasi, kususnya yang berhubungan dengan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
31
matrix dan formulasi vektor, yang mana masalah tersebut merupakan momok apabila kita harus menyelesaikannya dengan menggunakan bahasa level rendah seperti Pascall, C dan Basic. Nama MATLAB merupakan singkatan dari matrix laboratory. MATLAB pada awalnya ditulis untuk memudahkan akses perangkat lunak matrik yang telah dibentuk oleh LINPACK dan EISPACK. Saat ini perangkat MATLAB telah menggabung dengan LAPACK dan BLAS library, yang merupakan satu kesatuan dari sebuah seni tersendiri dalam perangkat lunak untuk komputasi matrix. Dalam lingkungan perguruan tinggi teknik, Matlab merupakan perangkat standar untuk memperkenalkan dan mengembangkan penyajian materi matematika, rekayasa dan kelimuan. Di industri, MATLAB merupakan perangkat pilihan untuk penelitian dengan produktifitas yang tingi, pengembangan dan analisanya. Fitur-fitur MATLAB sudah banyak dikembangkan, dan lebih kita kenal dengan nama toolbox. Sangat penting bagi seorang pengguna Matlab, toolbox mana yang mandukung untuk learn dan apply technologi yang sedang dipelajarinya. Toolbox toolbox ini merupakan kumpulan dari fungsi-fungsi MATLAB (M-files) yang
telah
dikembangkan
ke
suatu lingkungan kerja MATLAB untuk
memecahkan masalah dalam kelas particular. Area-area yang sudah bisa dipecahkan dengan toolbox saat ini meliputi pengolahan sinyal, system kontrol, neural networks, fuzzy logic, wavelets, dan lain-lain. 2.9.1 Lima bagian utama MATLAB: Sebagai sebuah system, MATLAB tersusun dari 5 bagian utama: 1. Development Environment.
Merupakan sekumpulan perangkat dan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
32
fasilitas yang membantuanda untuk menggunakan fungsi-fungsi dan file-file
MATLAB.
graphical
user
Beberapa perangkat
interfaces
(GUI).
ini
merupakan
sebuah
Termasuk
didalamnya
adalah
MATLAB desktop dan Command Window, command history, sebuah editor dan debugger, dan browsers untuk melihat help, workspace, files, dan search path. 2. MATLAB
Mathematical
sekumpulan
Function
Library.
Merupakan
algoritma komputasi mulai dari fungsi-fungsi
dasar
sepertri: sum, sin, cos, dan complex arithmetic, sampai dengan fungsifungsi
yang
lebih
kompek
seperti
matrix
inverse,
matrix
eigenvalues, Bessel functions, dan fast Fourier transforms. 3. MATLAB
Language.
Merupakan
suatu
high-level
matrix/array
language dengan control flow statements, functions, data structures, input/output, memungkinkan
dan
fitur-fitur
bagi
kita
object-oriented untuk
melakukan
programming. kedua
hal
Ini baik
"pemrograman dalam lingkup sederhana" untuk mendapatkan hasil yang cepat, dan "pemrograman dalam lingkup yang lebih besar" untuk memperoleh hasil-hasil dan aplikasi yang komplek. 4. Graphics. MATLAB memiliki fasilitas untuk menampilkan vector dan matrices
sebagai suatu
grafik. Didalamnya melibatkan high-level
functions (fungsi-fungsi level tinggi) untuk visualisasi data dua dikensi dan data tiga dimensi, image processing, animation, dan presentation graphics. Ini juga melibatkan fungsi level rendah yang memungkinkan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
33
bagi anda untuk membiasakan diri untuk memunculkan grafik mulai dari benutk yang n sederhana sampai dengan tingkatan graphical user interfaces pada aplikasi MATLAB anda. 5. MATLAB
Application
Program
Interface
(API).
Merupakan
suatu library yang memungkinkan program yang telah anda tulis dalam bahasa C dan Fortran mampu berinterakasi dengan MATLAB. Ini melibatkan fasilitas untuk pemanggilan routines dari MATLAB (dynamic
linking),
pemanggilan
MATLAB
sebagai
sebuah
computational engine, dan untuk membaca dan menuliskan MAT-files. 2.9.2 Memulai GUI – MATLAB Memulai GUIDE Matlab dapat dilakukan dengan dua cara, yaitu: 1) Melalui command matlab dengan mengetikkan: >> guide 2) Klik tombol Start Matlab dan pilihlah MATLAB, lalu pilih GUIDE (GUI Bulder)
Gambar 2.9 Memulai GUIDE (Teuinsuksa)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
34
Selanjutnya akan muncul tampilan kotak dialog pilihan GUIDE Quick Start.
Gambar 2.10 GUIDE Quick Start (Teuinsuksa) GUIDE Quick Start memiliki dua buah pilihan, yaitu Create New GUI dan Open Existing GUI. Create New GUI digunakan jika kita memang belum pernah membuat aplikasi GUI Matlab atau jika kita memang ingin membuat sebuah figure baru, sedangkan Open Existing GUI digunakan jika kita sudah memiliki file figure matlab atau akan memodifikasi file figure yang telah kita simpan. Pada pilihan Create New GUI terdapat menu GUIDE templates yang memiliki beberapa tipe dasar dari GUI, sehingga kita dapat melakukan modifikasi pada template agar menjadi GUI seperti yang kita harapkan. Sebagai pemula, kita gunakan Blank GUI (Default) yang merupakan sebuah GUI dengan figure kosong dan merupakan kondisi default dari GUIDE dan diplih jika kita memang akan membuat sebuah aplikasi dengan komponen yang layout-nya tidak terdapat pada GUI template yang lain. Setelah kita memilih Blank GUI templates, maka akan muncul tampilan Menu Utama GUIDE.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
35
Gambar 2.11 Tampilan GUIDE (Teuinsuksa) Komponen palet pada GUIDE Matlab terdiri dari beberapa uicontrol (control user interface), seperti pada bahasa pemrograman visual lainnya, yaitu: pushbutton, togglebutton, radiobutton, chexkboxes, edit text, static text, slider, frames, listboxes, popup menu, dan axes. Kita dapat meletakkan semua kontrol pada layout editor dan selanjutnya hanya tinggal mengaturnya melalui property inspector. (Teuinsuksa,2009)
Gambar 2.11 Komponen GUIDE (Teuinsuksa)
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB III METODOLOGI PENELITIAN
Pada bab ini akan dijelaskan mengenai proses pembuatan aplikasi deteksi tepi citra untuk menentukan kualitas image pada kain batik dengan menggunakan emapt metode yaitu : Metode Sobel, Prewitt, Canny dan Roberts. Proses perancangan aplikasi dalam sub-bab ini akan dibagi menjadi beberapa tahap anatara lain : analisis, gambaran aplikasi secara umum, perancangan proses.
3.1
Analisa Sistem Aplikasi untuk deteksi tepi citra untuk menentukan kualitas image pada kain
batik dengan empat metode yaitu Sobel, Prewitt, Canny dan Roberts menggunakan bahasa pemrograman Matlab. Citra diambil dengan menggunakan kamera digital dan proses yang pertama adalah resize image. Proses resize image digunakan untuk mengecilkan gambar, karena ukuran gambar yang tertangkap kamera terlalu besar ukurannya maka akan dikecilkan menjadi ukuran 256 x 256 , kemudian proses selanjutnya adalah grayscale dan setelah itu threshold. Proses awal yang digunakan dalam image processing adalah mengubah citra berwarna ke grayscale. Grayscale merupakan proses pengolahan citra dengan cara mengubah nilai-nilai piksel awal citra menjadi sebuah citra keabuan. Hasil dari proses grayscale yang telah kita lakukan, selanjutnya akan dijadikan citra biner. Citra biner adalah citra yang terdiri dari dua derajat keabuan. Untuk merubah citra
36 Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
37
tersebut menjadi citra biner, maka kita perlu suatu threshold. Setelah kedua proses tersebut selesai, maka akan dideteksi tepi dengan keempat metode yaitu Sobel, Prewitt, Canny dan Roberts. Proses yang terakhir dalam pembuatan aplikasi adalah menampilkan piksel warna putih dan histogram.
3.2
Gambaran Aplikasi secara Umum
Gambar 3.1 Alur pendeteksian tepi pada kain batik.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
38
Secara garis besar untuk melakukan pendeteksian tepi pada kain batik melalui bebarapa proses yaitu meliputi : 1. Citra masukan berupa citra berwarna 2. Baca inputan citra yang akan diproses menjadi : ü Grayscale ü Thresholding 3. Output Melakukan pendeteksian tepi setelah proses grayscale dan threshold. Terdapat empat metode deteksi tepi yang digunakan yaitu Metode Sobel, Metode Prewitt, Metode Canny dan Metode Roberts. Citra keluaran akan berupa tampilan piksel warna putih dan histogram dari masing – masing metode. Terdapat perhitungan Preccion dan Recall dari tiap metode yang akan digunakan untuk perhitungan akurasi.
Pada implementasinya aplikasi ini melakukan pengambilan gambar sample memakai kamera digital secara manual. Gambar sample yang diperoleh ini akan dtransfer ke komputer dengan format file JPEG.
3.3
Perancangan proses Untuk mengetahui proses-proses yang dilakukan maka akan dijelaskan
sebagai berikut : 3.3.1 Grayscale Grayscale merupakan proses pengolahan citra dengan cara mengubah nilainilai piksel awal citra menjadi sebuah citra keabuan.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
39
Gambar 3.2 Flowchart Grayscale Langkah awal pada flowchart grayscale adalah citra masukan berwarna yang kemudian akan diproses menjadi citra grayscale. Citra keabuan adalah citra yang setiap pikselnya mengandung satu layer dimana nilai intensitasnya berada pada interval 0-255, sehingga nilai-nilai piksel pada citra keabuan tersebut dapat direpresentasikan dalam sebuah matriks yang dapat memudahkan proses perhitungan pada operasi berikutnya. Di dalam MATLAB untuk menggubah piksel RGB ( Red Green Blue) menjadi skala keabu – abuan dengan menggunakan fungsi rgb2gray. Gray=rgb2gray(I) Variabel gray berfungsi untuk menampung hasil konversi citra RGB ke citra abu – abu. Citra yang dikonversi adalah citra kain batik yang ditampung dalam variabel I.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
40
3.3.2 Metode Sobel Pada proses ini akan dideteksi tepi. Deteksi tepi yang digunakan adalah sobel. Kelebihan dari metode sobel ini adalah kemampuan untuk mengurangi noise sebelum melakukan perhitungan deteksi tepi.
Gambar 3.3 Flowchart Sobel Setelah proses grayscale langkah selanjutnya dalah deteksi tepi. Metode yang digunakan adalah metode sobel. Operator sobel adalah operator yang paling banyak digunakan sebagai pelacak tepi karena kesederhanaan dan keampuhannya. Matriks yang digunakan adalah 3x3. Proses sobel ini, dilakukan dua penghitungan yaitu vertical dan horizontal. Berikut ini adalah potongan baris program untuk deteksi tepi Sobel. BW=edge(gray,’sobel’);
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
41
Variabel BW berfungsi untuk menampung hasil konversi citra abu – abu menjadi citra hitam putih. Citra yang dikonversi ialah citra abu – abu yang ditampung dalam variabel gray kemudian akan dilakukan deteksi tepi sobel.
3.3.3 Metode Prewitt Pada proses ini akan dideteksi tepi. Deteksi tepi yang digunakan adalah prewitt. Metode ini merupakan perkembangan dari metode roberts.
Gambar 3.4 Flowchart Prewitt Pada flowchart 3.3 adalah proses dari deteksi tepi prewitt. Setelah mendapat nilai citra abu – abu kemudian akan diproses deteksi tepi dengan metode Prewitt.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
42
Di dalam MATLAB operasi pendeteksian tepi menggunakan pemanggilan fungsi. Berikut adalah potongan baris program metode prewitt. BW=edge(gray,’prewitt’);
3.3.4 Metode Canny Pada proses ini akan dideteksi tepi. Deteksi tepi yang digunakan adalah canny.
Gambar 3.5 Flowchart Canny Setelah didapatkan citra yang sudah dikonversi kemudian diberi fungsi operator dengan metode deteksi yang diinginkan. Pada tahap ini deteksi yang digunakan adalah deteksi tepi canny. Berikut adalah potongan baris program deteksi tepi canny.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
43
BW=edge(gray,’canny’);
3.3.5 Metode Roberts Pada proses ini akan dideteksi tepi. Deteksi tepi yang digunakan adalah canny. Berikut adalah proses deteksi tepi dengan menggunakan metode Roberts.
Gambar 3.6 Flowcahrt Roberts Setelah proses grayscale langkah selanjutnya dalah deteksi tepi. Metode yang digunakan adalah metode roberts. Berikut ini adalah potongan baris program untuk deteksi tepi Sobel. BW=edge(gray,’roberts’);
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
44
Variabel BW berfungsi untuk menampung hasil konversi citra abu – abu menjadi citra hitam putih. Citra yang dikonversi ialah citra abu – abu yang ditampung dalam variabel gray kemudian akan dilakukan pemanggilan fungsi deteksi tepi roberts.
3.3.6 Precision dan Recall
Start
I = Image
gray=rgb2gray(I)
Deteksi tepi
Hitung FP, TP, FN,TN
End Gambar 3.7 Flowcahrt Precion dan Recall Cara menghitung tingkat akurasi menggunakan precision dan recall. Kedua ukuran di atas biasanya diberi nilai dalam bentuk persentase, 1 sampai 100%.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
45
Sebuah sistem informasi akan dianggap baik jika tingkat recall maupun precisionnya tinggi.
3.3 Perancangan Tampilan Antarmuka Pada perancangan antar muka yang akan dibuat sedemikian rupa yang nantinya merupakan suatu halamn untuk berinteraksi bagi pemakai/ pengguna program dan diharapkan dapat memahami jalan kerja program dengan mudah. Dalam membuat program deteksi tepi akan dirancang tampilan GUI maka akan menghasilkan 2 file yaitu namafile.fig dimana GUI disimpan dan namafile.m dimana eksekusi program terkumpul. Masing-masing fig-file ini menghasilkan mfile dengan nama yang sama. Berikut adalah table yang berisi perancangan dalam pembuatan program deteksi tepi. Fig-file Deteksi_Batik
Komponen Push button Button Group Button Group Axes (1) Text Text Text Text Text Text Text Text Push button Push button Push button Push button
Nama Deteksi Tepi Citra… Image Image Information Image Size Width Height Format Bit Tipe Colour Date File Load1 Load2 Proses Edge Detection
Push button
Histogram
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Fungsi Judul Inputan Awal Citra Inputan Awal Citra Menampilkan Citra Menampilkan Tulisan Menampilkan Tulisan Menampilkan Tulisan Menampilkan Tulisan Menampilkan Tulisan Menampilkan Tulisan Menampilkan Tulisan Menampilkan Tulisan Membuka File Membuka File Proses Pricision Recall Menjalankan Programdeteksi tepi (Prewiit, Sobel, Canny, Roberts) Menjalankan
46
Histogram (Prewiit, Sobel, Canny, Roberts) Push button Exit Keluar Axes (2) Menampilkan Citra Axes (3) Menampilkan Citra Axes (4) Menampilkan Citra Axes (6) Menampilkan Citra Axes (13) Menampilkan Citra Text Created by Menampilkan Tulisan Gambar 3.8 Tabel Perancangan Program Deteksi Tepi Aplikasi antarmuka tersebut diharapkan dapat memudahkan pengguna dalam memahami dan menggunakan setiap fungsi – fungsi tombol yang tersedia. Dalam tombol Load yang berfungsi untuk menggambil gambar yang tersimpan, gambar yang tersimpan hanyalah format jpg, bmp, png untuk ditampilkan sebelum melanjutkan ke proses selanjutnya.
Gambar 3.9 Tampilan GUI Deteksi Tepi
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB IV HASIL DAN PEMBAHASAN
Pada bab IV ini akan dijelaskan mengenai implementasi, hasil uji coba dan evaluasi dari rancangan program yang telah dibuat pada bab III. Bagian implementasi aplikasi kali ini meliputi : lingkungan implementasi, implementasi data, implementasi antarmuka dan implementasi proses.
4.1
Kebutuhan Hardware dan Software Pada bagian ini akan dijelaskan mengenai perangkat keras dan perangkat
lunak yang digunakan pada implementasi aplikasi ini. Kebutuhan Hardware : •
Komputer dengan processor Intel (R) Core(TM)2Duo CPU P8700 2,5GHz
•
RAM (2048MB)
•
VGA Card share memory up to 1274 MegaByte
•
Monitor 16”
•
Hard Disk 320 GigaByte
Kebutuhan Software : •
Sistem Operasi Windows 7.
•
Matlab 7.0
•
File image JPEG, BMP, PNG.
47
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
48
4.2
Implementasi Data Seperti yang telah dijelaskan secara konseptual pada Bab 3, maka data yang
akan diimplementasikan pada aplikasi ini berupa gambar-gambar kain batik yang telah diambil melalui kamera digital yang nantinya akan diproses melalui beberapa tahapan. Dimana output berupa tampilan piksel warna putih dan histogram dari keempat metode deteksi tepi.
4.3
Implementasi Antarmuka Pada implementasi antarmuka ini merupakan interaksi antara pemakai (user)
dengan sistem. Halaman form utama ini merupakan tampilan awal saat program dijalankan. Pada form utama ini terdapat program secara keseluruhan beserta dengan prosedur-prosedur programnya. Pada masing – masing menu memiliki fungsi yang berbeda – beda pada aplikasi ini. Berikut penjelasan dari setiap form pada menu utama ini : a. Load
: untuk membuka file yang akan diproses.
b. Edge Detection : untuk melakukan proses deteksi tepi. c. Histogram
: untuk menampilkan histogram.
d. Save
: untuk menyimpan hasil dari output edge detection.
e. Exit
: untuk keluar dari aplikasi ini.
Tampilan dari form utama ini dapat dilihat pada gambar 4.1 dibawah ini:
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
49
Gambar 4.1 Tampilan Implementasi Awal Pada tampilan form utama ini terdapat 5 kolom yang mempunyai fungsi berbeda-beda. Kolom pertama dengan nama image berfungsi untuk menampilkan image yang akan diproses. Pada kolom Image yang pertama digunakan untuk menampilkan citra batik yang belum diwarna sedangan yang kedua untuk menampilkan citra batik berwanra. Kolom kedua dengan nama Sobel berfungsi untuk menampilakan hasil deteksi tepi dari metode Sobel. Kolom ketiga adalah kolom dengan nama Prewitt, yaitu sebuah kolom yang menampilkan hasil deteksi tepi dari metode Prewitt. Selanjutnya pada kolom keempat diberi nama Roberts yaitu sebuah kolom yang menampilkan hasil deteksi tepi dari metode Roberts . Kolom kelima adalah Canny sebuah kolom yang menampilkan hasil deteksi tepi dari metode Canny. Pada kolom ke 2 sampai kolom ke 5 masing – masing memiliki hasil jumlah dari piksel warna putih yang telah dihasilkan dari deteksi tepi. Juga Terdapat tampilan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
50
untuk nilai dari precision dan recall dari tiap – tiap metode. Perhitungan itu digunakan untuk mencari nilai akurasi dari masing – masing metode. Pada ke empat kolom yaitu kolom Sobel, Prewitt, Roberts dan Canny tersebut selain menampilkan output deteksi tepi juga dapat menampilkan histogram dari masing – masing metode. Terdapat pula informasi yang ditampilkan sesuai dengan image yang telah dimasukkan. Information image itu berupa file name, size image, format, bit, tipe color dan date file.
4.4
Implementasi Proses Bagian implementasi proses ini menjelaskan mengenai implementasi proses-
proses sesuai dengan konsep yang telah dibuat pada bab 3. Seperti yang telah digambarkan dalam flowchart. 4.4.1 Proses Load
Gambar 4.2 Source code proses load image
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
51
Pada proses load ini, yaitu merupakan sebuah proses yang bertujuan untuk menampilkan inputan berupa gambar. Gambar yang dapat dibuka hanya gambar yang berformat jpg, bmp, png, tif. 4.4.2 Proses Edge Detection Pada proses edge detection ini, image yang berwarna citra RGB akan dirubah menjadi grayscale terlebih dahulu baru setelah itu dilakukan proses mengubah citra menjadi hitam putih dan proses pendeteksian tepi dengan empat metode yaitu Sobel, Prewitt, Canny dan Roberts. Hal demikian dilakukan untuk mempermudah proses pendeteksian tepi.
Gambar 4.3 Source Code proses edge detection
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
52
4.4.3 Proses Histogram Berikut adalah source code dari proses histogram :
Gambar 4.4 Source Code Histogram Pada gambar 4.4 proses yang dilakukan merubah citra menjadi grayscale kemudian membuat image hitam putih dan metode deteksi tepi seperti Sobel, Prewitt, Roberts dan Canny.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
53
4.4.4 Proses Save Pada proses save ini membuat direktori baru untuk tempat penyimpanan hasil proses deteksi tepi. Dan masing – masing image akan tersimpan dengan nama otomatis sesuai metode masing – masing. Seperti kita lihat pada source code berikut :
Gambar 4.5 Source Code Save 4.4.5 Proses Exit Proses exit ini bertujuan untuk mengakhiri atau menutup aplikasi yang telah dibuat. Pada proses ini terdapat statement, untuk mengeksekusi perintah yang dinyatakan dalam statement. Seperti kita lihat pada source code berikut :
Gambar 4.6 Source code exit
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
54
4.5
Uji Coba Program Pada sub bab ini akan dibahas mengenai uji coba terhadap aplikasi yang telah
dibuat dan selanjutnya akan dievaluasi dari hasil uji coba tersebut. Uji coba dilaksanakan untuk mengetahui kemampuan aplikasi dapat berjalan dengan baik sesuai dengan rancangan. Evaluasi dilakukan untuk menentukan tingkat keberhasilan dari aplikasi yang dibuat.
4.5.1
Skenario Uji Coba Untuk memastikan bahwa aplikasi ini berjalan dengan baik, diperlukan
adanya skenario yang akan dicoba, antara lain : a.
Memasukkan beberapa image untuk melihat perbedaan keberhasilan, karena tiaptiap image hasil jepretan kamera digital selalu berbeda, hal itu dipengaruhi oleh jarak ambil, cahaya serta kondisi objek gambar yang akan diambil.
b. Melakukan proses edge detection, menguji tingkat keberhasilan melalui proses yang sudah direncanakan. Karena tidak semua image memiliki kemiripan. c.
Melakukan Save Image, hasil dari edge detection berupa tampilan piksel warna putih akan disimpan, oleh karena itu perlu diuji tingkat keberhasilan pemyimpanannya.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
55
4.5.2
Pelaksanaa Uji Coba Langkah
pertama
dalam
membuat
program
deteksi
tepi
adalah
dengan merancang tampilan program dengan menggunakan GUI pada Matlab. Setelah perancangan program deteksi tepi dibuat dan dimasukkan source code ke dalam program, maka langkah terakhir adalah dengan mencoba program tersebut. Dengan menekan tombol Run, akan diperoleh hasil dari deteksi tepi. Gambar-gambar di bawah ini merupakan tampilan program deteksi tepi.
Gambar 4.7 Tampilan Awal Aplikasi Tombol Load pada tampilan form utama berfungsi untuk mengambil image yang sudah tersimpan dikomputer. Image sebelumnya sudah diambil dengan menggunakan kamera digital dan kemudian disimpan dikomputer. Setelah menekan
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
56
tombol load akan tampil jendela direktori komputer, dan kemudian cari letak image tersebut kemudian klik dua kali pada image. Image yang diambil pada load adalah file image yang berformat JPEG atau BMP. Pada proses load , program hanya bisa menjalankan perintah open atau cancel pada menu direktori komputer. Menu tombol aplikasi lainnya tidak bisa dijalankan sebelum proses direktori load selesai dijalankan.
Gambar 4.8 Tampilan Proses Load Image Apabila pada kolom image masih kosong atau belum terdapat image yang akan siap intuk diproses namun user memilih tombol edge detection maka akan muncul sebuah pesan peringatan seperti berikut “Please Choose Your Picture”.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
57
Gambar 4.9 Tombol Edge Detection dijalankan tidak terdapat Image Upload. Tombol Edge Detection berfungsi untuk menjalankan proses pendeteksian tepi. Image yang akan diproses terlebih dahulu tampil pada kolom Image yang berupa citra berwarna RGB. Setelah tombol Edge Detection diproses maka akan muncul output dari keempat metode deteksi tepi pada kolom edge detection yaitu Sobel, Prewitt, Canny dan Roberts beserta jumlah piksel warna putihnya. Tombol Proses akan berfungsi untuk menampilkan nilai dari T,FP, FN, dan TN. Nilai yang muncul tersebut digunakan untuk menghitung nilai akurasi dari tiap metode. Nilai tersebut diambil dari citra asli yang belum diwarna sedangkan nilai yang menampilkan jumlah pixel warna putih diambil dari citra berwarna yang akan diproses pendeteksian tepi.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
58
Gambar 4.10 Proses Edge Detection Setelah tombol edge detection dijalankan prose selanjutnya adalah tombol histogram. Histogram akan diproses sesuai dengan metode masing – masing. Pada proses ini akan menampilkan grafik apakah 0 (hitam) atau 1 (putih). Berikut adalah tampilan dari histogram.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
59
Gambar 4.11 Proses Histogram. Pada tombol save, berfungsi untuk menyimpan hasil dari tampilan piksel warna putih. Hasil penyimpanan akan disimpan didrive D dengan nama folder TA. Jadi semua data yang tersimpan dari deteksi tepi akan disimpan di folder tersebut. Dalam setiap penyimpanan akan disimpan dama new direktori apabila tidak maka secara otomatis akan berganti dengan yang baru. Nama file image yang tersimpan sesuai dengan metode masing - masing.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
60
Gambar 4.12 Proses Save Image . Tombol exit digunakan untuk mengakhiri suatu aplikasi. Pada proses ini sebelum keluar dari aplikasi akan muncul sebuah pertanyaan untuk meyakinkah apakah user ingin mengakhiri aplikasi atau tidak. Jika user memilih “Yes” maka aplikasi akan tertutup namun jika user memilih “No” maka aplikasi akan tetap berjalan.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
61
Gambar 4.13 Proses Exit
4.6
Analisa Aplikasi Berdasarkan hasil uji coba yang telah dilakukan, maka akan dilakukan analisa,
antara lain sebagai berikut : 4.6.1 Analisis Proses Berdasarkan Gambar Tabel 4.1 Tabel Uji Coba Edge Detection
No
Gambar Asli Sobel
Edge Detection Prewitt Robert
1
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Canny
62
2
3
4
5
6
7
8
9
10
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
63
11
12
13
14
15
Dari percobaan yang telah dilakukan, untuk melihat kemampuan setiap metode deteksi tepi yang telah dibahas, dapat dilihat hasilnya dari setiap metode tersebut terhadap citra yang sama dan membandingkannya satu sama lain secara visual dan dari jumlah piksel warna putih yang terdapat pada citra hasil deteksi tepi. Dapat dilihat berdasarkan tabel diatas keakuratan pendeteksian tepi mencapai hasil akhir yang sangat akurat. Karena dari 15 gambar yang diuji cobakan hasil dari metode Canny yang menghasilkan piksel warna putih paling banyak dibandingkan dengan metode Sobel, Prewit, Roberts.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
64
4.6.2 Analisa Proses Berdasarkan Jumlah Piksel Warna Putih Tabel 4.2 Tabel Uji Coba Jumlah Piksel Warna Putih
Dari percobaan yang telah dilakukan, untuk melihat kemampuan setiap metode deteksi tepi yang telah dibahas, dapat dilihat hasilnya dari setiap metode tersebut terhadap citra yang sama dan membandingkannya satu sama lain secara visual dan dari jumlah piksel warna putih yang terdapat pada citra hasil deteksi tepi. Jumlah piksel warna putih merupakan piksel yang diperoleh dari hasil deteksi tepi. Semakin banyak piksel warna putih, kemungkinan semakin banyak pula tepi yang bisa diperoleh. Oleh karena itu, penulis membandingkan jumlah
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
65
piksel warna putih yang didapat dari penghitungan masing-masing metode deteksi tepi untuk semua citra yang diuji. Untuk menghitung jumlah piksel warna
putih
dengan menggunakan fungsi nnz (number of nonzero entries).
Misalnya, set(handles.txt_sobel,'String',nnz(BW_sobel)); set(handles.txt_prewitt,'String',nnz(BW_prewitt)); set(handles.txt_canny,'String',nnz(BW_canny)); set(handles.txt_roberts,'String',nnz(BW_roberts));
Menurut data yang diperoleh dari Tabel 4.2, maka dapat disimpulkan bahwa metode Canny merupakan metode yang paling baik dalam pendeteksian tepi dibanding ketiga metode lainnya yaitu metode Sobel, Prewitt, Roberts. Karena dari semua data uji, jumlah piksel yang didapat dari metode Canny lebih banyak dibanding metode lainnya sedangkan metode Roberts yang memperoleh jumlah piksel paling sedikit. Dari semua data uji, citra yang diperoleh dari hasil metode Canny lebih jelas dan garis tepi yang diperoleh lebih banyak terhubung dibanding dengan metode Roberts yang masih putus-putus. Yang menduduki peringkat kedua setelah Canny adalah metode Sobel kemudian Prewitt dan yang hasil terendah adalah Roberts.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
66
Operator Canny merupakan deteksi tepi yang optimal. Operator Canny menggunakan Gaussian Derivative Kernel untuk menyaring kegaduhan dari citra awal untuk mendapatkan hasil deteksi tepi yang halus.
Kelebihan dari metode sobel ini adalah kemampuan untuk mengurangi noise sebelum melakukan perhitungan deteksi tepi. Metode Sobel dan Prewitt lebih baik dibanding metode Roberts karena operator dan ukuran kernel yang digunakan
berbeda. Metode Sobel menggunakan operator Sobel, dengan ukuran 3x3 piksel.
Kernel fillter yang digunakan dalam metode Prewitt ini adalah. Persamaan gradien pada operator Prewitt sama seperti operator Sobel, tetapi menggunakan nilai c = 1:
Sedangkan metode Roberts menggunakan operator Roberts, dengan ukuran kernel 2x2 piksel. Metode Roberts lebih menekankan penghitungan gradien arah diagonal
sedangkan
metode
Sobel, Prewitt
lebih
ke
arah
vertikal
dan
horisontalnya. Ukuran kernel yang dipakai dalam deteksi tepi cukup mempengaruhi hasil yang didapat, semakin besar ukuran kernel semakin banyak tepi yang diperoleh.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
67
4.6.3 Perhitungan Precision dan Recall Menurut Abidin (2009), preccion adalah jumlah sampel berkategori positif diklasifikasi benar dibagi dengan total sampel yang diklasifikasi sebagai sample positif. Sedangkan recall merupakan jumlah sampel diklasifikasi positif dibagi total sampel dalam testing set berkategori positif. Dari uji program dilakukan proses perhitungan preccion dan recall untuk mengetahui berapa hasil akurat dari aplikasi yang telah dibuat. Maka dari itu digunakan rumus sebagai berikut: TP = A & B FP = B & A1 FN = B1 & A TN = A1 & B1
Preccion =
Recall =
+
+
Metode Sobel Preccion =
1543 100% 1543 + 257
= 85,7 %
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
100%
100%
68
Recall =
1543 100% 1543 + 58346
= 2,57% Metode Prewitt Preccion =
1551 100% 1551 + 260
= 85,6% Recall =
1551 100% 1551 + 58338
= 2,5% Metode Roberts Preccion =
2005 100% 2005 + 364
= 84,63% Recall =
2005 100% 2005 + 57884
= 3,34% Metode Canny Preccion =
4231 100% 4231 + 743
= 85% Recall =
4231 100% 4231 + 55658
= 7,0%
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
69
Total : Sobel
= 85,7% + 2,57%
= 88,27%
Prewitt
= 85,6% + 2,5%
= 88,1%
Roberts
= 84,63% + 3,34%
= 87,97%
Canny
= 85% + 7,0%
= 92%
Dari gasil peerhitungan diatas maka diperoleh bahwa metode Canny mendapatkan prosentase tertinggi yaitu 92% dibanding dari metode lainnya. Metode Sobel menduduki peringkat kedua 88,27% metiode Prewitt 88,1% dan metode Roberts memperoleh 87,97%. Metode Roberts emndapatkan nilai yang terendah dibandingkan dari ketiga metode lainnya.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
BAB V KESIMPULAN DAN SARAN Setelah dilakukan pembahasan teori, perancangan aplikasi, dan pengujian terhadap aplikasi pada bab-bab sebelumnya, maka pada bab penutup ini akan diambil kesimpulan serta saran pengembangan dari tugas akhir “Perbandingan Dalam Mendeteksi Tepi Pada Kain Batik Dengan Metode Prewitt, Sobel, Canny Dan Roberts” ini. 5.1
Kesimpulan a. Setelah diadakan pengujian program terhadap beberapa citra masukan dan hasilnya dibandingkan, ternyata metode yang paling baik adalah metode Canny, dikarenakan citra yang diperoleh lebih jelas dan garis tepi yang diperoleh lebih banyak terhubung dibanding dengan metode Roberts, Prewitt dan Sobel yang masih putus-putus. b. Dengan menggunakan metode Canny, masih banyak tepi yang bisa terbaca dibanding dengan metode Roberts. Selain itu, deteksi tepi dengan menggunakan metode Canny menghasilkan jumlah piksel warna putih paling banyak. c. Metode Canny mendeteksi tepi untuk mengidentifikasi maksimal local dari gradien pada citra. Gradien pada metode ini didapatkan dengan turunan dari filter Gaussian. Metode ini menggunakan dua nilai ambang/nilai batas untuk mendeteksi tepi yang lemah dan yang
70 Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
71
kuat. Tepi yang lemah akan dihasilkan pada keluaran hanya jika ia terhubung dengan tepi yang kuat. d. Dari 15 uji coba yang dilakukan terlihat bahwa Metode Canny yang menghasilkan jumlah pixel warna putih yang paling banyak. e. Hasil yang terendah adalah metode
Roberts, karena lebih
menekankan penghitungan gradien arah diagonal, sedangkan Sobel dan Prewitt lebih ke arah vertikal dan horisontalnya. Metode Prewitt merupakan pengembangan dari metode Sobel yang diberi satu nol penyangga. Ukuran kernel yang dipakai dalam deteksi tepi cukup mempengaruhi hasil yang didapat, semakin besar ukuran kernel semakin banyak tepi yang diperoleh.
5.2
Saran Dalam penulisan skripsi ini, masih banyak terdapat kekurangan di setiap
segi materinya. Oleh karena itu, diharapkan saran dan kritik dari para pembaca yang bersifat membangun untuk ke depannya sehingga penulisan tentang tugas akhir ini menjadi lebih baik lagi. Diharapkan bagi para pembaca untuk melengkapi dan mengkaji lebih jauh lagi tentang deteksi tepi dalam melakukan penelitian selanjutnya, misalnya dalam studi kasus yang berkaitan dengan bidang kedokteran atau yang lainnya. Selain itu, program yang dibuat diharapkan bisa lebih baik lagi.
Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
DAFTAR PUSTAKA Agung Priyo, (2005), Pengolahan Citra, diakses tanggal 1 Februari 2013. http://elib.unikom.ac.id/download.php?id=4659 Eko Prasetyo, (2011),
Pengolahan Citra Digital Dan Aplikasinya
Menggunakan Matlab Lia Amelia, Perbandingan Metode Roberts dan Sobel Dalam Mendeteksi Tepi Suatu
Citra
Digital,
Universitas
Pendidikan
Indonesia,
2012
repository.upi.edu Morse, B.S., (2002). Thresholding. di download pada tanggal 16 september 2012 http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MORSE /threshold.pdf. Murinto, Analisis Perbandingan Histogram Equalization Dan Model Logarithmic Image Processing (LIP) Untuk Image Enchanment, Univ. Ahmad Dahlan Yogyakarta, Juli 2008 Teuinsuksa, (2009), Guide Matlab, diakses pada tanggal 5 Februari 2013. http://modul-guideuploader-by- Teuinsuksa2009-wordpress-com.pdf Shapiro, L.G. and Stockman, G.C., (2001), Computer Vision, Prentice Hall, New Jersey http://digilib.ittelkom.ac.id/index.php (diakses 2 Februari 2013)
Anonim, (1996), Artificial Intelligence, diakses pada tanggal 10 september 2012. dari http://www.its.bldrdoc.gov/fs-1037/dir-003/_0371.htm
72 Hak Cipta © milik UPN "Veteran" Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.