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%. Key Words : Two dimensions shape, corner detection, chain code.
I. Pendahuluan 1.1 Latar Belakang
II. Dasar Teori 2.1 Citra Digital
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.
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] .
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
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 subwilayah (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
Dari hasil penelusuran kode rantai pada Gambar 3 didapatkan kode rantai sebagai berikut.
2.6 Deteksi Sudut
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)
Gambar 2 Ilustrasi Penelusuran Kode Rantai
(b)
Gambar 1 (a) Skema 8 arah mata angina (b) Skema 4 arah mata angin
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.
Gambar 5 Tampilan program utama
3.7 Tampilan Tahap Prapengolahan
(a)
(b)
Gambar 4 (a) Skema 8 arah mata angin (b) Ilustrasi penentuan titik awal penelusuran kode rantai
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.
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.
(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.
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 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.
dapat dilihat contoh hasil dari pengujian terhadap variasi ukuran objek. Tabel 2. Contoh hasil pengujian terhadap variasi ukuran objek No
Gambar 8 Citra hasil deteksi tepi
Bentuk Bangun
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 No
1
Bentuk
Nama
Bangun
Bangun
Hasil Deteksi Sudut
Hasil Pengenalan
Segitiga
Segitiga
Sama
Sama Kaki
Jmlh Sudut
3
Ket
Segitiga
Sama
Sama Kaki
3
Jumlah Sudut 3
Ket
Segitiga Sikusiku
2
Segitiga Sikusiku
Segitiga Siku-siku
3
Benar
3
Segitiga Sikusiku
Segitiga Siku-siku
3
Benar
Benar
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 masingmasing 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 No
Segitiga
Hasil Pengenala n Segitiga Siku-siku
Benar
Kaki 2
Hasil Deteksi Sudut
1
IV. Pengujian dan Analisis 4.1 Pengujian Tahap Pengenalan
Nama Bangun
Benar
1
Bentuk
Nama
Bangun
Bangun
Hasil Deteksi Sudut
Hasil Pengenalan
Layang-
Layang-
layang
layang
Layang-
Layang-
layang
layang
Layang-
Layang-
layang
layang
Jumlah Sudut
Ket
4
Benar
4
Benar
4
Benar
Kaki 3
Segitiga
Segitiga
Sama
Sama Kaki
3
Benar
2
Kaki
3
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
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 masingmasing bentuk bangun dua dimensi hasil capture kamera
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
No
1
2
Bentuk
Nama
Bangun
Bangun
Hasil Deteksi Sudut
Hasil Pengenalan
Trapesium
Trapesium
Siku-siku
Siku-siku
Segilima
Segilima
Jmlh Sudut
4
Ket
4.1.6 Pengujian Variasi Warna dan Latar Belakang Objek Pada pengujian ini dilakukan dengan menguji masingmasing 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
Benar No
5
Benar
1
Bentuk Bangun
Hasil Keterangan
Deteksi Sudut
Hasil Pengenalan
Webcam
Bujur
Objek : Putih
Sangkar
Jmlh Sudut
Ket
4
Benar
4
Benar
3
Benar
Latar : Merah
3
Segi
Segi
8
Delapan
Delapan
Benar
2
Webcam
Jajaran
Objek : Putih
Genjang
Latar : Biru
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.
3
Webcam
Segitiga
Objek : Putih
Siku-Siku
Bermotif Latar : Biru
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.
Tabel 5. Contoh hasil pengujian terhadap keakuratan bentuk bangun tidak beraturan No
Bentuk Bangun
Hasil Deteksi
Jumlah
Sudut
Sudut
Keterangan
1
7
Benar
2
10
Benar
3
10
Benar
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%.
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
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).
[6].
[7].
[8].
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]. [2].
[3].
[4].
[5].
Ahmad, Usman. 2005. “Pengolahan Citra Digital & Teknik Pemrogramannya”. Graha Ilmu. Yogyakarta. Arifin, A. Z., B. Bagus, D. A. Navastara, Klasifikasi Online Citra Daun Berdasarkan Fitur Bentuk dan Ruas Daun, Jurusan Teknik Informatika ITS, Surabaya, 2009 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 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 Hakim, A. W., Penghapusan Noise Pada Citra dengan Filter Adaptive-Hierarchical, Skripsi-S1, Fakultas Teknologi Informasi ITS, Surabaya, 2006
[9]. [10].
[11]. [12].
[13]. [14].
[15].
[16].
[17].
[18].
[19]. [20].
[21]. [22].
[23]. [24].
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 Hendry, J., Menghaluskan Citra dengan Filter Spasial Non-Linear: Median, Mean, Max, Min Pada Pengolahan Citra Digital, Jurusan Teknik Elektro UGM, Yogyakarta, 2009 Isnandi, D., Aplikasi Temu-Kembali Poligon Berdasarkan Kemiripan Bentuk, Skripsi-S1, Fakultas Matematika Dan Ilmu Pengetahuan Alam IPB, Bogor, 2009 James, Identifikasi Plat Nomor Mobil dengan Skeletonisasi Menggunakan Jaringan Syaraf Tiruan, Skripsi-S1, Jurusan Teknik Elektro UI, Jakarta, 2008 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 Munir, Rinaldi., “Pengolahan Citra Digital dengan Pendekatan Algoritmik”. Informatika. Bandung. 2004 Murinto, A. H., Segmentasi Citra Menggunakan Watershed Dan Intensitas Filtering Sebagai Pre Processing, Jurusan Ilmu Komputer UPN, Yogyakarta, 2009 Murni, A. D., Chahyati, Segmentasi Citra, Fakultas Ilmu Komputer UI, Jakarta, 2000 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 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 Niam, B., Analisis Deteksi Citra Berdasarkan Perbaikan Kualitas Citra, Skripsi-S1, Jurusan Teknik Elektro UNDIP, Semarang, 2011 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 Nuryuliani, L. C. Munggaran, S. Madenda, dan M. Paindavoine, Pendekatan Kode Rantai Sebagai Dasar Pengenalan Karakter, Fakultas Ilmu Komputer Universitas Gunadarma, Depok, 2009 Purnama, N. D., Implementasi Perhitungan Sudut Rangka Manusia Menggunakan Matlab 7, Skripsi-S1, Fakultas Teknologi Industri Universitas Gunadarma, Depok, 2012 Suharjana, A., Pengenalan Bangun Datar dan SifatSifatnya di SD, Pusat Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependidikan Matematika, Yogyakarta, 2008 Susilawati, I., Teknik Pengolahan Citra: Restorasi Citra, Jurusan Teknik Elektro Universitas Mercu Buana, Yogyakarta, 2009 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 Wicaksana, R. P., Pengenalan Plat Nomor Kendaraan Secara Otomatis Untuk Pelanggaran Lalu Lintas, SkripsiS1, Jurusan Teknik Elektro ITS, Surabaya, 2010 Yuwono, B., Image Smoothing Menggunakan Mean Filtering, Median Filtering, Modus Filtering dan Gaussian Filtering, Jurusan Teknik Informatika UPN, Yogyakarta, 2000.
[25]. [26]. [27].
Bahan Belajar Mandiri 2, http:// file.upi.edu , September 2012 Bangun Datar, http://www.belajar-matematika.com, September 2012 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………….................