DETEKSI SUDUT MENGGUNAKAN KODE RANTAI UNTUK
PENGENALAN BANGUN DATAR DUA DIMENSI
Ahmad Fashiha Hastawan, Achmad Hidayatno, R. Rizal Isnanto
Jurusan Teknik Elektro, Fakultas Teknik, Universitas Diponegoro,Jln. Prof. Sudharto, Tembalang, Semarang, Indonesia
email : [email protected]
ABSTRAK
Sistem computer vision yang handal diperlukan untuk melakukan sistem pengenalan yang konsisten terhadap beberapa kemungkinan gangguan, terutama untuk pengenalan objek yang memiliki karakteristik khusus, seperti bangun datar dua dimensi. Dengan Salah satu metode yang diterapkan adalah dengan menggunakan deteksi sudut (corner detection). Terdapat beberapa macam algoritma deteksi sudut, salah satunya adalah dengan menggunakan kode rantai (chain code).
Dalam Tugas Akhir ini sistem pendeteksian sudut menggunakan kode rantai untuk pengenalan bangun datar dua dimensi ini dibuat dengan menggunakan software Matlab dengan memperhatikan beberapa faktor yang mempengaruhi kehandalan sistem. Perancangan dilakukan dengan membuat sistem pengenalan yang memiliki beberapa tahap diantaranya adalah tahap prapengolahan, tahap ekstraksi ciri, tahap identifikasi ciri,serta tahap pengenalan. Dalam tahap prapengolahan dilakukan proses konversi keabuan dan proses reduksi derau dengan menggunakan tapis median dan Wiener. Pada tahap ekstraksi ciri dilakukan proses binerisasi dengan algoritma pengambangan adaptif dan proses deteksi tepi dengan algoritma Canny. Pada tahap identifikasi ciri dilakukan dengan penelusuran kode rantai dan proses deteksi sudut dengan menggunakan algoritma perhitungan matematika. Pada tahap pengenalan dilakukan proses identifikasi akhir melalui seleksi terhadap bentuk bangun yang telah didefinisikan.
Dari hasil pengujian terhadap sistem, setiap tahap proses dalam sistem pengenalan menghasilkan keluaran sesuai yang diharapkan. Untuk pengujian sistem terhadap data yang diuji, didapatkan persentase pengujian bentuk bangun datar dua dimensi terhadap variasi warna adalah sebesar 100%, pengujian terhadap variasi ukuran adalah sebesar 95,24%, pengujian terhadap variasi posisi adalah sebesar 100%, pengujian terhadap variasi jarak hasil capture kamera webcam sebesar 88,09%, pengujian terhadap keakuratan deteksi sudut bangun tak beraturan sebesar 90%, dan pengujian terhadap variasi warna dan latar objek sebesar 100%.
Kata Kunci : Bangun Datar Dua Dimensi, Deteksi Sudut, Kode Rantai
ABSTRACT
Solid vision computer system is needed to do a consistent recognizing system through some disturbance possibilities, especially for object recognitions which has special characteristic such as two dimensions shape. By this two dimensions shape recognition system, it is approximated can ease robot or shape recognition automatic hardware in doing its job. One of the used method is corner detection. There are some corner detection algorithms. One of them is chain code.
This corner detection system using chain code for two dimensions shape recognition system is built by Matlab software with giving special attention to some factors that influence the system solidity. Designing is done by building recognition system that has some stages, such as pre-processing stage, feature extraction stage, and recognition stage. In the pre-processing stage to convert image to grayscale image and the noise reduction process by using median filter and Wiener. In the feature extraction stage of the process is carried binary image floating adaptive algorithms and processes Canny edge detection algorithm. In the identification phase characteristics is done by tracing the chain code and the detection angle using mathematical algorithms. At this stage of the introduction of the final identification process is done through the selection of the shape that has been defined.
From the system testing, every stage process gives expected results. Testing of two dimensions shape with color varying gives 100%, testing of size varying gives 95.24%, testing of position varying gives 100%, testing of object distance captured by webcam gives 88.09% ,testing the accurancy of the detection angle irregular shape gives 90%, and testing of object and background color variations gives 100%.
I. Pendahuluan
1.1 Latar Belakang
Deteksi sudut atau corner detection merupakan sebuah metode sebagai tahap awal dalam mencari sudut (corner) suatu objek pada citra dua dimensi. Sistem pengenalan bentuk objek dengan menggunakan deteksi sudut merupakan dasar dari computer vision untuk mengekstraksi beberapa jenis fitur dan menyimpulkan isi dari suatu gambar yang kemudian akan digunakan sebagai dasar pengambilan keputusan dari perintah yang diberikan. Pada penelitian sebelumnya oleh Neeta Nain[14][15], deteksi sudut dilakukan dengan menggunakan representasi kode rantai untuk mengetahui efektivitas penggunaan metode kode rantai dibandingkan dengan metode lain. Kode rantai mempresentasikan citra dalam bentuk kode yang mewakili hubungan dua buah piksel berdekatan dengan arah tertentu yang kemudian dapat dianalisa menggunakan suatu metode untuk menentukan bentuk objek yang diamati. Salah satu aplikasi dari kode rantai dapat digunakan sebagai dasar untuk melakukan pengenalan karakter tangan[17][18].
Metode deteksi sudut menggunakan kode rantai sangat bergantung pada proses prapengolahan dan deteksi tepi yang dilakukan terlebih dahulu sebelum proses penelusuran kode rantai. Penelitian sebelumnya memaparkan bahwa deteksi tepi dapat digunakan untuk beberapa hal seperti klasifikasi bentuk ruas daun[2] serta deteksi tepi untuk membedakan antara uang asli dan palsu[4].
Pada tugas akhir ini akan dibahas analisis mengenai pengenalan terhadap hasil pengujian bangun datar dua dimensi menggunakan deteksi sudut berbasis kode rantai sebagai dasar pengenalan objek bangun datar dua dimensi, sehingga dapat diketahui tingkat keakuratan dari sistem yang dibuat.
1.2 Tujuan
Tujuan dari Tugas Akhir ini adalah untuk membuat sistem pengenalan bentuk bangun datar dua dimensi dengan algoritma deteksi sudut menggunakan kode rantai.
1.3 Batasan Masalah
Untuk menyederhanakan pembahasan, masalah pada tugas akhir ini disederhanakan sebagai berikut:
1. Perancangan aplikasi ini menggunakan bahasa pemrograman Matlab
2. Aplikasi ini menentukan nama bangun datar berdasarkan jumlah sudut pada bangun sesuai dengan kriteria yang telah didefinisikan
3. Citra uji yang digunakan merupakan citra bitmap 24 bit dan objek pada citra uji yang digunakan minimal berukuran 60x60 Piksel
4. Citra uji yang digunakan memiliki warna latar belakang hitam atau warna yang lebih gelap daripada objeknya
II. Dasar Teori
2.1 Citra Digital
Suatu citra adalah fungsi intensitas 2 dimensi f(x,y), yang mana x dan y adalah koordinat spasial dan f pada titik (x,y) merupakan tingkat kecerahan (brightness) suatu citra pada suatu titik. Citra digital dapat dibayangkan sebagai suatu matriks yang mana baris dan kolomnya menunjukkan tingkat keabuan di titik tersebut. Elemen-elemen dari citra digital tersebut biasanya disebut dengan pixel, yang merupakan singkatan dari picture elements. Dalam satu bidang gambar, sepenuhnya terdiri dari piksel-piksel. Karena itu, berkas yang menyimpan citra biasa disimpan dengan nama BMP. Untuk mengurangi ukuran dari berkas, biasanya berkas citra dimampatkan dengan menggunakan teknik tertentu, misal yang terkenal yaitu JPEG atau GIF[3]
[9] [22]
.
2.2 Pemulihan Citra
Pemulihan Citra atau restorasi citra adalah proses penghilangan atau pengurangan degradasi pada citra yang terjadi karena proses akuisisi citra. Degradasi yang dimaksud adalah derau atau efek optis misalnya kabur (blur) akibat kamera yang tidak fokus atau karena gerakan kamera. Teknik restorasi citra meliputi operasi ketetanggaan dan juga penggunaan proses-proses pada domain frekuensi. Restorasi citra juga bertujuan menghilangkan atau meminimalkan cacat pada citra. Contoh-contoh operasi restorasi citra[11] [21]:
a. penghilangan kesamaran (deblurring). b. penghilangan derau (noise)
2.3 Segmentasi Citra
Terdapat dua pendekatan utama dalam segmentasi citra yaitu didasarkan pada tepi (edge based) dan didasarkan pada wilayah (region based). Segmentasi didasarkan pada tepi membagi citra berdasarkan diskontinuitas di antara sub-wilayah (sub-region), sedangkan segmentasi yang didasarkan pada wilayah bekerjanya berdasarkan keseragaman yang ada pada sub-wilayah tersebut. Hasil dari segmentasi citra adalah sekumpulan wilayah yang melingkupi citra tersebut, atau sekumpulan kontur yang diekstrak dari citra (pada deteksi tepi). Tiap piksel dalam suatu wilayah mempunyai kesamaan karakteristik atau properti yang dapat dihitung (computed property), seperti: warna (color), intensitas (intensity), dan tekstur (texture)[12].
2.4 Bangun Datar
Bangun datar adalah bangunan geometri yang seluruh bagiannya terletak pada satu bidang[26].
2.4.1 Segitiga
Segitiga adalah bangun datar yang terjadi dari tiga ruas garis dan ujung dari dua ruas garisnya saling bertemu. Tiap ruas garis yang membentuk segitiga disebut sisi[25]. Pertemuan ujung-ujung ruas garis disebut titik sudut[20]. Dalam pengertian lain segitiga adalah suatu bangun datar yang jumlah sudutnya 180˚ dan dibentuk dengan cara menghubungkan tiga buah titik yang tidak segaris dalam satu bidang[26]. Jenis-jenis segitiga antara lain adalah segitiga sama sisi, segitiga sama kaki, segitiga siku-siku, dan segitiga sembarang.
2.4.2 Segiempat
Segiempat Segiempat adalah bangun datar yang dibentuk dengan menghubungkan empat buah titik yang tidak segaris[26]. Jenis-jenis bangun segiempat antara lain adalah sebagai berikut :
a. Bujur Sangkar (Persegi sama sisi) b. Persegi Panjang
c. Jajaran Genjang d. Belah Ketupat e. Layang-Layang f. Trapesium
a) Trapesium Sama Kaki b) Trapesium Siku-Siku
2.4.3 Lingkaran
Lingkaran adalah kurva tertutup sederhana yang bentuknya segi-n beraturan dengan n tak berhingga. Lingkaran didefinisikan sebagai tempat kedudukan titik-titik yang berjarak sama terhadap sebuah titik (pusat lingkaran)[25].
2.4.4 Poligon
Poligon dapat dikelompokan ke dalam poligon beraturan dan poligon tidak beraturan. Poligon beraturan adalah bangun geometri dua dimensi yang panjang sisi-sisinya sama dan besar sudut-sudutnya sama besar. Sedangkan poligon tidak beraturan adalah bangun geometri dua dimensi yang tidak memiliki sifat tersebut. Poligon beraturan misalnya segitiga sama sisi, persegi, segilima beraturan, segienam beraturan dan sebagainya[25].
2.5 Kode Rantai
Algoritma Kode Rantai Freeman (Freeman
Chain Code) pertama kali diperkenalkan oleh Freeman
pada tahun 1974. Tujuan dari Kode Freeman adalah untuk memberitahukan representasi batasan dari suatu obyek. Kode rantai Freeman merupakan algoritma sederhana tetapi memiliki kinerja yang tinggi. Kode rantai didasarkan pada kenyataan bahwa titik berurutan pada kurva kontinyu yang saling berdekatan satu sama lain, dan bahwa masing–masing titik data secara berurutan berbatasan dengan salah satu dari delapan kode rantai yang mengelilingi titik data tersebut. Kode rantai digunakan untuk merepresentasikan batas tepi dengan urutan garis lurus yang terhubung dengan ukuran dan arah tertentu. Biasanya, kode rantai direpresentasikan dengan 4 arah atau 8 arah mata angin. Arah dari suatu mata angin dikodekan dengan menggunakan skema penomoran seperti terlihat di Gambar 1 (a) untuk 4 arah mata angin dan Gambar 1 (b) untuk 8 arah mata angin[6]. Dan untuk ilustrasi penelusuran kode rantai dapat dilihat pada Gambar 2.
(a) (b)
Gambar 1 (a) Skema 8 arah mata angina (b) Skema 4 arah mata angin
Gambar 2 Ilustrasi Penelusuran Kode Rantai
Dari hasil penelusuran kode rantai pada Gambar 3 didapatkan kode rantai sebagai berikut.
2.6 Deteksi Sudut
Deteksi Sudut atau Corner Detection merupakan sebuah metode sebagai tahap awal dalam mencari sudut (Corner) suatu objek pada citra dua dimensi[10].
Metode Deteksi Sudut Menggunakan kode rantai merupakan metode yang digunakan untuk mendeteksi sudut yang ada pada objek dengan menggunakan operasi integer sehingga lebih sederhana dan efisien dalam implementasinya. Metode ini berbasis pada representasi kontur kode rantai (chain code), yang mana hasil dari representasi kode rantai ini yang nantinya akan diolah dengan menggunakan perhitungan tertentu untuk mengetahui posisi sudut yang ada pada objek.
Metode deteksi sudut menggunakan kode rantai memiliki algoritma dengan beberapa tahap yang dikerjakan secara urut. Tahap pertama dari metode ini adalah melakukan penelusuran kode rantai pada objek yang diuji yang sudah melewati proses morfologi citra terlebih dahulu. Hasil dari penulusuran kode rantai ini kemudian akan disebut sebagai Boundary Chain (BC).
Pada tahap penulusuran Boundary Chain ini memiliki beberapa kemungkinan kesalahan akibat hasil dari proses deteksi tepi.
Untuk mengatasi permasalahan yang terjadi maka dilakukan tahap kedua yaitu Smoothing Boundary Chain
(Smoothing BC). Pada tahap penulusuran proses Smoothing BC ini dilakukan dua proses meliputi penggantian kode
dengan ketentuan tertentu.
Pada tahap berikutnya yaitu tahap ketiga, hasil dari
Smoothing Boundary Chain (Smoothing BC) ini akan
dimodifikasi dan dilakukan pembentukan kode baru kemudian hasilnya disebut Modified Chain (MC).
Pada tahap keempat, yaitu tahap perhitungan kurva terhadap perhitungan Difference Codes, dimana Difference
Codes ini diperoleh dari hasil Modified Chain (MC). Tahap
ini merupakan tahap yang dilakukan untuk menghindari kesalahan deteksi sudut serta untuk menentukan letak sudut yang benar. Hasil dari proses ini disebut DC[15].
III. Perancangan Sistem
3.1 Gambaran Umum
Perancangan sistem merupakan tahap yang penting dalam mengaplikasikan suatu konsep, baik dalam bentuk program ataupun alat agar dalam pembuatannya dapat berjalan secara sistematis, terstruktur, dan rapi sehingga hasil program dapat berjalan sesuai dengan apa yang dikehendaki. Dalam perancangan, aspek yang diperhatikan meliputi kemungkinan pengembangan di masa depan, efektifitas dan efisiensi program, kemampuan program dan kemudahan untuk dipahami pengguna (user friendly) yang diwujudkan dalam tampilan grafis (Graphical
User Interface). Secara umum pembuatan program ini
mengikuti alur sesuai yang ditunjukan dalam Gambar 4.
Pada Gambar 3 terlihat bahwa terdapat empat tahap dalam perancangan sistem ini. Tahap pertama yaitu tahap prapengolahan. Pada tahap prapengolahan ini terdapat dua proses yaitu proses konversi citra menjadi citra keabuan (grayscale) dan proses restorasi citra berupa proses reduksi derau. Proses reduksi derau dilakukan dengan menggunakan tapis median dan tapis Wiener.
Tahap kedua adalah tahap ekstraksi ciri. Tahap ini terdiri dari dua proses yaitu proses binerisasi otomatis menggunakan algoritma pengambang lokal adaptif dan proses deteksi tepi menggunakan algoritma deteksi tepi Canny. Algoritma pengambangan lokal adaptif digunakan dengan tujuan untuk meminimalisasi ketidakrataan cahaya pada objek. Untuk deteksi tepi, metode Canny digunakan untuk menghasilkan lebar tepi sebesar satu pikse.
Tahap ketiga adalah tahap identifikasi ciri. Pada tahap ini terdiri dari proses penelusuran kode rantai dan proses deteksi sudut. Proses deteksi sudut meliputi proses identifikasi kode rantai, proses smoothing kode rantai, modifikasi kode rantai, serta perhitungan akhir bentuk kode rantai sebagai dasar penentuan posisi sudut. Kode rantai yang digunakan adalah kode rantai 8 arah mata angin. Proses identifikasi kode rantai diawali dengan melakukan penelusuran posisi awal koordinat penelusuran.
Tahap keempat adalah tahap pengenalan. Tahap pengenalan ini berupa proses identifikasi akhir. Proses identifikasi akhir akan menggunakan jumlah sudut dan koordinat posisi sudut hasil dari proses deteksi, yang kemudian akan dicocokkan dengan karakteristik bangun datar sebagai dasar pengambilan keputusan hasil akhir bentuk objek. Dalam proses identifikasi akhir ini, ada beberapa parameter yang akan dibandingkan antara lain letak posisi/koordinat sudut, panjang diagonal, serta panjang sisi-sisi objek. Sebagai dasar penentuan kemiripan ukuran panjang diagonal, sisi, maupun posisi sudut digunakan nilai toleransi sebesar 10. Bagan umum sistem dapat dilihat pada Gambar 3 berikut.
Gambar 3 Bagan Umum Sistem
3.2 Tahap Prapengolahan (Preprocessing)
Proses prapengolahan perlu dilakukan untuk menyesuaikan hal-hal yang dibutuhkan dalam proses-proses selanjutnya. Langkah pertama dalam tahap prapengolahan ini adalah mengubah citra RGB menjadi citra aras keabuan (grayscale). Proses tersebut dilakukan pada setiap piksel citra, dengan cara ini setiap piksel memiliki satu jenis warna dengan intensitas yang berbeda-beda.Setelah proses ini dilakukan proses selanjutnya adalah proses penapisan terhadap citra hasil konversi aras keabuan. Proses penapisan berguna untuk meminimalisir derau yang terdapat dalam citra masukan serta mengurangi resiko terjadinya pengambangan yang tidak sempurna akibat adanya derau pada citra hasil proses konversi aras keabuan. Pada proses penapisan ini digunakan filter linier rata-rata dan filter adaptif wiener.
3.3 Tahap Ekstraksi Ciri
Proses ekstraksi ciri merupakan proses untuk mencari, menandai, dan menyimpan semua fitur dari segmen bangun datar. Ciri adalah semua informasi atau karakteristik bentuk dari segmen yang bisa dijadikan sebagai tanda pengenal dari bentuk segmen bangun datar tersebut. Oleh karena itu ciri harus unik untuk tiap bentuk bangun datar. Tahap ekstraksi ciri ini berguna untuk memperoleh suatu ciri dari citra bangun datar yang telah mengalami tahap prapengolahan. Metode ekstraksi ciri yang dilakukan adalah proses binerisasi otomatis dan proses deteksi tepi.
3.4 Tahap Identifikasi Ciri
Proses identifikasi ciri merupakan proses mengolah fitur yang telah disimpan pada tahap ekstraksi ciri untuk mendapatkan informasi yang diharapkan.
Proses identifikasi ciri pada tahap ini meliputi dua proses yaitu proses penelusuran kode rantai dan proses deteksi sudut.
Metode penelusuran kode rantai ini menggunakan delapan arah kode rantai dengan arah penandaan berlawanan jarum jam (0 s/d 7). Gambar 4(a) menunjukkan bentuk kode rantai yang digunakan. Untuk penentuan titik awal penelusuran kode rantai ini, dilakukan pelacakan piksel dari kanan ke kiri serta dari bawah ke atas dengan mencari piksel berwarna putih yang pertama kali ditemukan. Gambar 4(b) menunjukkan ilustrasi penentuan titik awal penelusuran kode rantai.
(a) (b)
Gambar 4 (a) Skema 8 arah mata angin
(b) Ilustrasi penentuan titik awal penelusuran kode rantai
3.5 Tahap Pengenalan
Tahap pengenalan ini berupa proses identifikasi akhir. Proses identifikasi akhir akan menggunakan koordinat posisi sudut hasil dari proses deteksi sudut, yang kemudian akan dicocokan dengan karakteristik bangun datar sebagai dasar pengambilan keputusan hasil akhir bentuk objek. Dalam proses identifikasi akhir ini ada beberapa parameter yang akan dibandingkan antara lain letak posisi/koordinat sudut, panjang diagonal, serta panjang sisi-sisi objek. Perhitungan panjang sisi dan diagonal dilakukan dengan proses aritmatika bangun datar. Sebagai dasar penentuan kemiripan ukuran panjang diagonal, sisi, maupun posisi sudut digunakan nilai toleransi sebesar 10. Hasil dari perhitungan yang didapat akan dicocokan dengan aturan kriteria masing-masing bangun untuk menentukan keluaran dari proses pengenalan.
3.6 Tampilan Program Utama
Program yang dibuat hanya memiliki satu bagian utama yaitu GUI Pengenalan dimana dalam GUI Pengenalan tersebut terdiri dari beberapa menu yang digunakan untuk masing-masing tahap. Menu yang disajikan diantaranya adalah menu untuk tahap prapengolahan, menu untuk tahap ekstraksi ciri, menu untuk tahap identifikasi ciri, serta menu untuk tahap pengenalan. Gambar 5 menunjukkan tampilan program utama
Gambar 5 Tampilan program utama
3.7 Tampilan Tahap Prapengolahan
Dalam tahap ini akan dilakukan proses konversi citra masukan menjadi citra keabuan (grayscale) dan proses reduksi derau. Fungsi untuk proses konversi citra masukan menjadi citra keabuan ini sudah terdapat dalam function di Matlab, sehingga cukup menggunakan function rgb2gray dalam pengkodean. Gambar 8 menunjukkan citra masukan sebelum dilakukan proses konversi citra keabuan, dan Gambar 6 menunjukkan citra hasil konversi citra keabuan.
(a) (b)
Gambar 6 (a) Citra Masukan
(b) Citra Hasil Konversi Keabuan
3.8 Pengujian Tahap Identifikasi Ciri
Dalam tahap ini akan dilakukan proses konversi citra hasil proses reduksi derau menjadi citra biner dan proses deteksi tepi. Proses konversi citra biner ini dilakukan dengan menggunakan metode pengambangan adaptif untuk meminimalisasi ketidakrataan cahaya pada gambar. Gambar 7 menunjukkan citra hasil konversi citra biner.
Gambar 7 Citra hasil konversi citra biner
Dalam proses pendeteksian tepi terhadap citra biner, proses konversi pendeteksian tepi ini dilakukan dengan menggunakan metode Canny. Fungsi deteksi tepi ini sudah terdapat dalam function di Matlab, sehingga cukup menggunakan function edge dalam pengkodean. Citra biner sesudah proses deteksi tepi dapat dilihat pada Gambar 8.
Gambar 8 Citra hasil deteksi tepi
IV. Pengujian dan Analisis
4.1 Pengujian Tahap Pengenalan
Dalam tahap ini akan dilakukan pengujian pengenalan bentuk bangun berdasarkan hasil deteksi jumlah sudut. Proses pengenalan ini dilakukan dengan menggunakan metode deteksi sudut hasil penelusuran kode rantai. Pengujian dilakukan terhadap beberapa kriteria diantaranya adalah pengujian terhadap variasi warna objek, pengujian terhadap variasi ukuran objek, pengujian terhadap variasi posisi objek, dan pengujian hasil capture kamera webcam.
4.1.1 Pengujian Terhadap Variasi Warna
Objek
Pada pengujian ini dilakukan dengan menguji masing-masing bentuk bangun dua dimensi dalam tiga warna yang berbeda. Jumlah objek yang diuji sebanyak 42 variasi. Pada Tabel 1 dapat dilihat contoh hasil dari pengujian terhadap variasi warna objek.
Tabel 1. Contoh hasil pengujian terhadap variasi warna objek
Dari hasil pengujian dapat dikalkulasi ternyata banyak bangun datar yang teridentifikasi benar adalah 42 serta banyak seluruh bangun datar yang diuji adalah 42. Maka persentase keberhasilan pengenalan data uji adalah sebesar 100%.
4.1.2 Pengujian Terhadap Variasi Ukuran
Objek
Pada pengujian ini dilakukan dengan menguji masing-masing bentuk bangun dua dimensi dalam tiga ukuran objek yaitu kecil, sedang, dan besar. Jumlah objek yang diuji sebanyak 42 variasi.Pada Tabel 2
dapat dilihat contoh hasil dari pengujian terhadap variasi ukuran objek.
Tabel 2. Contoh hasil pengujian terhadap variasi ukuran objek
Dari hasil pengujian dapat dikalkulasi ternyata banyak bangun datar yang teridentifikasi benar adalah 40 serta banyak seluruh bangun datar yang diuji adalah 42. Maka persentase keberhasilan pengenalan data uji adalah sebesar 95,24%.
4.1.3 Pengujian Terhadap Variasi Posisi Objek
Pada pengujian ini dilakukan dengan menguji masing-masing bentuk bangun dua dimensi dalam tiga warna yang berbeda. Jumlah objek yang diuji sebanyak 42 variasi. Pada Tabel 3 dapat dilihat contoh hasil dari pengujian terhadap variasi posisi objek.Tabel 3. Contoh hasil pengujian terhadap variasi posisi objek
Dari hasil pengujian dapat dikalkulasi ternyata banyak bangun datar yang teridentifikasi benar adalah 42 serta banyak seluruh bangun datar yang diuji adalah 42. Maka persentase keberhasilan pengenalan data uji adalah sebesar 100%.
4.1.4 Pengujian Variasi Jarak Hasil Capture
Kamera Webcam
Pada pengujian ini dilakukan dengan menguji masing-masing bentuk bangun dua dimensi hasil capture kamera
No Bentuk Bangun Nama Bangun Hasil Deteksi Sudut Hasil Pengenalan Jmlh Sudut Ket 1 Segitiga Sama Kaki Segitiga Sama Kaki 3 Benar 2 Segitiga Sama Kaki Segitiga Sama Kaki 3 Benar 3 Segitiga Sama Kaki Segitiga Sama Kaki 3 Benar No Bentuk Bangun Nama Bangun Hasil Deteksi Sudut Hasil Pengenala n Jumlah Sudut Ket 1 Segitiga Siku-siku Segitiga Siku-siku 3 Benar 2 Segitiga Siku-siku Segitiga Siku-siku 3 Benar 3 Segitiga Siku-siku Segitiga Siku-siku 3 Benar No Bentuk Bangun Nama Bangun Hasil Deteksi Sudut Hasil Pengenalan Jumlah Sudut Ket 1 Layang-layang Layang-layang 4 Benar 2 Layang-layang Layang-layang 4 Benar 3 Layang-layang Layang-layang 4 Benar
webcam dengan jarak pengambilan objek yang
berbeda. Jumlah objek yang diuji sebanyak 42 variasi. Pada Tabel 4 dapat dilihat hasil dari pengujian jarak terhadap hasil capture kamera webcam.
Tabel 4. Contoh hasil pengujian terhadap variasi
capture kamera webcam
Dari hasil pengujian dapat dikalkulasi ternyata banyak bangun datar yang teridentifikasi benar adalah 37 serta banyak seluruh bangun datar yang diuji adalah 42. Maka persentase keberhasilan pengenalan data uji adalah sebesar 88.09%.
4.1.5 Pengujian Keakuratan Deteksi Sudut
Terhadap Bangun Tidak Beraturan
Pada pengujian ini dilakukan dengan menguji keakuratan hasil deteksi sudut dari beberapa bentuk bangun dua dimensi yang tidak beraturan. Jumlah objek yang diuji sebanyak 10 variasi. Pada Tabel 5 dapat dilihat hasil dari pengujian terhadap keakuratan dateksi sudut dari beberapa bentuk bangun dua dimensi yang tidak beraturan.Tabel 5. Contoh hasil pengujian terhadap keakuratan bentuk bangun tidak beraturan
Dari hasil pengujian dapat dikalkulasi ternyata banyak bangun datar yang teridentifikasi benar adalah 9 serta banyak seluruh bangun datar yang diuji adalah 10. Maka persentase keberhasilan pengenalan data uji adalah sebesar 90%.
4.1.6 Pengujian Variasi Warna dan Latar
Belakang Objek
Pada pengujian ini dilakukan dengan menguji masing-masing bentuk bangun dua dimensi dengan kombinasi warna objek dan warna latar belakang yang berbeda berbeda. Jumlah objek yang diuji sebanyak 10 variasi. Pada Tabel 6 dapat dilihat hasil dari pengujian variasi warna dan latar belakang objek.
Tabel 6. Contoh hasil pengujian terhadap variasi warna dan latar belakang objek
Dari hasil pengujian dapat dikalkulasi ternyata banyak bangun datar yang teridentifikasi benar adalah 10 serta banyak seluruh bangun datar yang diuji adalah 10. Maka persentase keberhasilan pengenalan data uji adalah sebesar 100%.
4.4 Analisis Terhadap Hasil Pengujian
Dari hasil pengujian diatas dapat ditampilkan grafik perbandingan hasil pengujian seperti pada Gambar 9.
Gambar 9 Grafik hasil pengujian
Terlihat bahwa hasil pengujian pengenalan bangun datar dua dimensi terhadap perubahan warna objek memiliki akurasi pengenalan sebesar 100%, akurasi pengujian terhadap perubahan ukuran objek adalah sebesar 95,24%, akurasi pengujian terhadap perubahan posisi objek adalah sebesar 100%, akurasi pengujian terhadap variasi jarak hasil capture kamera webcam adalah sebesar 88,09%, akurasi pengenalan terhadap keakuratan deteksi sudut bangun tidak beraturan 90%, dan akurasi pengenalan variasi warna dan latar objek adalah 100% . Hal ini menunjukkan bahwa sistem pengenalan yang telah dirancang ini berjalan dengan baik sesuai harapan perancang sistem. Namun tidak dapat dipungkiri terdapat beberapa faktor-faktor yang sangat memengaruhi kesalahan dalam hasil pengenalan terhadap citra bangun datar tersebut. Faktor-faktor yang
No Bentuk Bangun Nama Bangun Hasil Deteksi Sudut Hasil Pengenalan Jmlh Sudut Ket 1 Trapesium Siku-siku Trapesium Siku-siku 4 Benar
2 Segilima Segilima 5 Benar
3 Segi
Delapan
Segi Delapan
8 Benar
No Bentuk Bangun Hasil Deteksi Sudut Jumlah Sudut Keterangan 1 7 Benar 2 10 Benar 3 10 Benar No Bentuk Bangun Keterangan Hasil Deteksi Sudut Hasil Pengenalan Jmlh Sudut Ket 1 Webcam Objek : Putih Latar : Merah Bujur Sangkar 4 Benar 2 Webcam Objek : Putih Latar : Biru Jajaran Genjang 4 Benar 3 Webcam Objek : Putih Bermotif Latar : Biru Segitiga Siku-Siku 3 Benar
mempengaruhi kesalahan hasil pengenalan citra bangun datar diantaranya adalah tingkat kecerahan, kurang maksimalnya hasil deteksi tepi citra, ketidakakuratan hasil penelusuran kode rantai, algoritma modifikasi kode rantai untuk deteksi sudut, serta faktor penentuan parameter toleransi perbedaan piksel dan panjang toleransi kode rantai (l).
V. Penutup
Dari hasil penelitian dan pembahasan pada bab sebelumnya dapat ditarik beberapa kesimpulan antara lain adalah pada Tahap Prapengolahan, dengan penambahan beberapa derau seperti derau Gaussian,
speckle, dan salt-and-pepper, dapat diatasi dengan
menggunakan tapis median dan tapis Wiener. Kemudian pada tahap pengujian pengenalan bangun datar berdasarkan variasi warna menghasilkan persentase pengenalan 100% untuk keseluruhan data yang diuji. Pada tahap pengujian pengenalan bangun datar berdasarkan variasi ukuran menghasilkan persentase pengenalan 95,24% untuk keseluruhan data yang diuji. Pada tahap pengujian pengenalan bangun datar berdasarkan variasi posisi menghasilkan persentase pengenalan 100% untuk keseluruhan data yang diuji. Dan pada tahap pengujian pengenalan bangun datar berdasarkan variasi citra hasil capture kamera webcam menghasilkan persentase pengenalan 88,09% untuk keseluruhan data yang diuji.
Adapun saran yang dapat diberikan sehubungan dengan pelaksanaan penelitian ini antara lainadalah dalam hal untuk meningkatkan efektivitas penggunaan sistem deteksi sudut menggunakan kode rantai untuk pengenalan bangun datar dua dimensi ini, sebaiknya dilakukan pengembangan lebih lanjut menggunakan
software tertentu yang dapat diintegrasikan dalam
perangkat sederhana seperti handphone berkamera. Kemudian dalam hal meminimalisir pengaruh tingkat kecerahan pada citra bangun datar terutama pada pengujian terhadap hasil capture kamera webcam, sebaiknya membuat tempat pengujian objek yang permanen semacam kotak uji dengan pencahayaan yang merata terhadap objek yang akan diamati.
DAFTAR PUSTAKA
[1]. Ahmad, Usman. 2005. “Pengolahan Citra Digital &
Teknik Pemrogramannya”. Graha Ilmu. Yogyakarta.
[2]. Arifin, A. Z., B. Bagus, D. A. Navastara, Klasifikasi
Online Citra Daun Berdasarkan Fitur Bentuk dan Ruas Daun, Jurusan Teknik Informatika ITS,
Surabaya, 2009
[3]. Gea, K. N., Pengenalan Plat Nomor Polisi
Kendaraan Bermotor dengan Menggunakan Metode Jaringan Syaraf Tiruan, Skripsi-S1, Jurusan Teknik
Informatika Universitas Komputer Indonesia, Bandung, 2006
[4]. Ginting, E. D., Deteksi Tepi Menggunakan Metode
Canny dengan Matlab Untuk Membedakan Uang Asli dan Uang Palsu, Skripsi-S1, Jurusan Teknik
Informatika Universitas Gunadarma, Depok, 2012 [5]. Hakim, A. W., Penghapusan Noise Pada Citra
dengan Filter Adaptive-Hierarchical, Skripsi-S1,
Fakultas Teknologi Informasi ITS, Surabaya, 2006
[6]. Handariningsih, R. P., Application Of Recognation And
Analysis Of Handwriting Character Using Freeman Chain
Code Method, Skripsi-S1, Faculty of Industrial
Engineering Gunadarma University, Depok, 2011
[7]. Hendry, J., Menghaluskan Citra dengan Filter Spasial
Non-Linear: Median, Mean, Max, Min Pada Pengolahan Citra Digital, Jurusan Teknik Elektro UGM, Yogyakarta,
2009
[8]. Isnandi, D., Aplikasi Temu-Kembali Poligon Berdasarkan
Kemiripan Bentuk, Skripsi-S1, Fakultas Matematika Dan
Ilmu Pengetahuan Alam IPB, Bogor, 2009
[9]. James, Identifikasi Plat Nomor Mobil dengan Skeletonisasi
Menggunakan Jaringan Syaraf Tiruan, Skripsi-S1, Jurusan
Teknik Elektro UI, Jakarta, 2008
[10]. Marsetio, S. A., Deteksi Sudut Pada Gambar 2D
Berurutan dengan Menggunakan Metode Harris/Plessey Corner Detector, Skripsi-S1, Jurusan Teknik Informatika
Politeknik Elektronika Negeri Surabaya ITS, Surabaya [11]. Munir, Rinaldi., “Pengolahan Citra Digital dengan
Pendekatan Algoritmik”. Informatika. Bandung. 2004
[12]. Murinto, A. H., Segmentasi Citra Menggunakan
Watershed Dan Intensitas Filtering Sebagai Pre Processing, Jurusan Ilmu Komputer UPN, Yogyakarta,
2009
[13]. Murni, A. D., Chahyati, Segmentasi Citra, Fakultas Ilmu Komputer UI, Jakarta, 2000
[14]. Nain, N., V. Laxmi, A. K. Jain, and R. Agarwal,
Morphological Edge Detection and Corner Detection Algorithm Using Chain-Encoding, Departement of
Computer Engineering Malaviya National Institute of Technology, India, 2006
[15]. Nain, N., V. Laxmi, B. Bhadviya, and C. Singh, Corner
Detection Using Difference Chain Code as Curvature,
International MultiConference of Engineers and Computer Scientists 2008 Vol 1, Hongkong, 19-21 March 2008 [16]. Niam, B., Analisis Deteksi Citra Berdasarkan Perbaikan
Kualitas Citra, Skripsi-S1, Jurusan Teknik Elektro
UNDIP, Semarang, 2011
[17]. Nuryuliani, L. C. Munggaran, S. Madenda, dan M. Paindavoine, Pengkodean Bentuk Segmen Menggunakan
Kode Rantai Sebagai Dasar Pengenalan Bentuk Karakter Tulisan Tangan Secara On-Line, Seminar on Application
and Research in Industrial Technology (SMART), Yogyakarta 22 Juli 2009
[18]. Nuryuliani, L. C. Munggaran, S. Madenda, dan M. Paindavoine, Pendekatan Kode Rantai Sebagai Dasar
Pengenalan Karakter, Fakultas Ilmu Komputer
Universitas Gunadarma, Depok, 2009
[19]. Purnama, N. D., Implementasi Perhitungan Sudut Rangka
Manusia Menggunakan Matlab 7, Skripsi-S1, Fakultas
Teknologi Industri Universitas Gunadarma, Depok, 2012 [20]. Suharjana, A., Pengenalan Bangun Datar dan
Sifat-Sifatnya di SD, Pusat Pengembangan dan Pemberdayaan
Pendidik dan Tenaga Kependidikan Matematika, Yogyakarta, 2008
[21]. Susilawati, I., Teknik Pengolahan Citra: Restorasi Citra, Jurusan Teknik Elektro Universitas Mercu Buana, Yogyakarta, 2009
[22]. Utami, S. E., Pembacaan Plat Nomor Kendaraan
Menggunakan Metode Jaringan Syaraf Tiruan (JST) Backpropagation Berbasis Image Processing, Proyek
Akhir, Jurusan Teknik Telekomunikasi, PENS ITS, Surabaya, 2009
[23]. Wicaksana, R. P., Pengenalan Plat Nomor Kendaraan
Secara Otomatis Untuk Pelanggaran Lalu Lintas,
Skripsi-S1, Jurusan Teknik Elektro ITS, Surabaya, 2010
[24]. Yuwono, B., Image Smoothing Menggunakan Mean
Filtering, Median Filtering, Modus Filtering dan Gaussian Filtering, Jurusan Teknik Informatika UPN, Yogyakarta,
[25]. Bahan Belajar Mandiri 2, http:// file.upi.edu , September 2012
[26]. Bangun Datar, http://www.belajar-matematika.com,
September 2012
[27]. Pengantar Pengolahan Citra, http://informatika.stei.itb.ac.id, September 2012
BIODATA PENULIS
Ahmad Fashiha Hastawan (L2F008003) Lahir di Semarang, 10 Februari 1988, Menempuh pendidikan di SD Negeri Banyumanik 02, SMP N 21 Semarang, SMA N 4 Semarang, dan melanjutkan pendidikan Strata-1 di jurusan Teknik Elektro
Universitas Diponegoro
Semarang, konsentrasi Elektronika dan Telekomunikasi.
Menyetujui dan Mengesahkan, Pembimbing I, Achmad Hidayatno, S.T., M.T. NIP. 196912211995121001 Tanggal…………... Pembimbing II, R. Rizal Isnanto, S.T., M.M., M.T. NIP. 197007272006121001 Tanggal…………...