BAB 3 PENGENALAN KARAKTER DENGAN GABUNGAN METODE STATISTIK DAN FCM

dokumen-dokumen yang mirip
UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007

BAB III METODOLOGI PENELITIAN

BAB III METODE PENELITIAN. Tujuan tugas akhir ini akan membangun suatu model sistem yang

BAB II LANDASAN TEORI

PENGENALAN PLAT NOMOR KENDARAAN MENGGUNAKAN METODE PRINCIPAL COMPONENT ANALYSIS DAN SUPPORT VECTOR MACHINE BERBASIS PENGOLAHAN CITRA DIGITAL

IV. HASIL DAN PEMBAHASAN

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB III METODE PENELITIAN

Pengenalan Plat Nomor Berdasarkan Klasikasi K-Nearest Neighbor (KNN)

IV. RANCANG BANGUN SISTEM. Perangkat lunak bantu yang dibuat adalah perangkat lunak yang digunakan untuk

BAB IV HASIL PENELITIAN DAN PEMBAHASAN. 4.1 Pengembangan Sistem Pengenalan Wajah 2D

BAB III PERANCANGAN SISTEM

Nama : Raden Septiana Faza NPM : Jurusan : Teknik Informatika Pembimbing 1 : Dr. Rodiah Pembimbing 2 : Fitrianingsih, Skom.

BAB II DASAR TEORI. 2.1 Meter Air. Gambar 2.1 Meter Air. Meter air merupakan alat untuk mengukur banyaknya aliran air secara terus

BAB 2 LANDASAN TEORI

Deteksi dan Klasifikasi Citra Berdasarkan Warna Kulit Menggunakan HSV

IDENTIFIKASI AWAL PLAT NOMOR MOBIL MENGGUNAKAN PROGRAM KONVENSIONAL SEBAGAI LANGKAH AWAL PENGGUNAAN JARINGAN SARAF TIRUAN

SISTEM REKOGNISI KARAKTER NUMERIK MENGGUNAKAN ALGORITMA PERCEPTRON

BAB III ANALISIS DAN PERANCANGAN

SAMPLING DAN KUANTISASI

BAB 2 LANDASAN TEORI. dari sudut pandang matematis, citra merupakan fungsi kontinyu dari intensitas cahaya

BAB 3 METODOLOGI PENELITIAN. a. Spesifikasi komputer yang digunakan dalam penelitian ini adalah

Penggunaan Jaringan Syaraf Tiruanuntuk Membaca Karakter pada Formulir Nilai Mata Kuliah

BAB 3 PROSEDUR DAN METODOLOGI. menawarkan pencarian citra dengan menggunakan fitur low level yang terdapat

BAB IV HASIL DAN PEMBAHASAN. Implementasi antar muka dalam tugas akhir ini terdiri dari form halaman

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

... BAB 2 LANDASAN TEORI. 2.1 Citra

BAB II LANDASAN TEORI

Suatu proses untuk mengubah sebuah citra menjadi citra baru sesuai dengan kebutuhan melalui berbagai cara.

1. BAB I PENDAHULUAN Latar Belakang

BAB 2 LANDASAN TEORI

BAB III LANDASAN TEORI. 3.1 Metode GLCM ( Gray Level Co-Occurrence Matrix)

APLIKASI PENGHITUNG JUMLAH WAJAH DALAM SEBUAH CITRA DIGITAL BERDASARKAN SEGMENTASI WARNA KULIT

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

Tabel 6 Skenario pengujian 4

SYSTEM IDENTIFIKASI GANGGUAN STROKE ISKEMIK MENGGUNAKAN METODE OTSU DAN FUZZY C-MEAN (FCM)

BAB III METODE PENELITIAN. menjawab segala permasalahan yang ada dalam penelitian ini.

BAB 3. ANALISIS dan RANCANGAN. eigenfaces dan deteksi muka dengan color thresholding akan mempunyai proses

Pengenalan Bahasa Isyarat Tangan Menggunakan Metode PCA dan Haar-Like Feature

BAB 1 PENDAHULUAN. Perbaikan kualitas citra merupakan sebuah langkah awal dalam proses

BAB 3 ANALISA DAN PERANCANGAN SISTEM

KULIAH 2 TEKNIK PENGOLAHAN CITRA HISTOGRAM CITRA

BAB 3 IMPLEMENTASI SISTEM

1 BAB I PENDAHULUAN. 1.1 Latar Belakang

KLASIFIKASI TELUR AYAM DAN TELUR BURUNG PUYUH MENGGUNAKAN METODE CONNECTED COMPONENT ANALYSIS

BAB IV ANALISA DAN PERANCANGAN

APLIKASI PENGENALAN DAUN UBI JALAR UNTUK JENIS UBI JALAR UNGU, MERAH, PUTIH DAN KUNING MENGGUNAKAN METODE PRINCIPAL COMPONENT ANALYSIS

MKB3383 TEKNIK PENGOLAHAN CITRA Pemrosesan Citra Biner

BAB 2 LANDASAN TEORI

BAB 4 HASIL DAN ANALISA

PERANCANGAN SISTEM PENGENAL DIGIT ANGKA METER AIR MENGGUNAKAN JARINGAN SYARAF TIRUAN KOHONEN

BAB III METODE PENELITIAN

BAB III ANALISIS DAN PERANCANGAN SISTEM. Dalam pengerjaan tugas akhir ini memiliki tujuan untuk mengektraksi

Operasi Piksel dan Histogram

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

BAB 2 LANDASAN TEORI

PERANGKAT LUNAK PENGKONVERSI TEKS TULISAN TANGAN MENJADI TEKS DIGITAL

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM APLIKASI

BAB V HASIL PENELITIAN DAN PEMBAHASAN

PRAKTIKUM 2. MATRIK DAN JENIS CITRA

BAB II LANDASAN TEORI

BAB 3 PERANCANGAN. Input Data, Pre-processing, Feature Extraction, Training, dan Verification. Pada tahap

Bab III ANALISIS&PERANCANGAN

PENGOLAHAN CITRA DIGITAL

BAB IV HASIL DAN PEMBAHASAN

DETEKSI POSISI PLAT NOMOR KENDARAAN BERMOTOR BERDASARKAN AREA CITRA

oleh: M BAHARUDIN GHANIY NRP

SISTEM PENGENAL ARAH PANDANG MATA PADA PENGENDARA MOBIL

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI. dilakukan oleh para peneliti, berbagai metode baik ekstraksi fitur maupun metode

3 BAB III METODE PENELITIAN

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

DETEKSI NOMINAL MATA UANG DENGAN JARAK EUCLIDEAN DAN KOEFISIEN KORELASI

Gambar IV-1. Perbandingan Nilai Korelasi Antar Induk Wavelet Pada Daerah Homogen Untuk Level Dekomposisi Pertama

BAB 2 LANDASAN TEORI

ANALISIS DAN PERANCANGAN SISTEM

BAB 3 PERANCANGAN SISTEM

BAB III METODOLOGI PENELITIAN

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 3 PERANCANGAN. ANPR Software. Image. Deteksi Posisi Plat Nomor. Segmentasi Plat Nomor. Neural Network Pengenal Karakter. Hasil

BAB II LANDASAN TEORI

PENERAPAN ALGORITMA K MEANS UNTUK PENENTUAN PENCOCOKAN PEWARNAAN CLUSTERING SECARA OTOMATIS PADA PRODUK FASHION

BAB 2 LANDASAN TEORI

BAB III METODE PENELITIAN. ada beberapa cara yang telah dilakukan, antara lain : akan digunakan untuk melakukan pengolahan citra.

BAB IV ANALISA DAN PERANCANGAN

TEKNIK PENGOLAHAN CITRA. Kuliah 6 Restorasi Citra (Image Restoration) Indah Susilawati, S.T., M.Eng.

BAB 2 LANDASAN TEORI

APLIKASI PENGENALAN PLAT NOMOR KENDARAAN BERMOTOR MENGGUNAKAN METODE LEARNING VECTOR QUANTIZATION

BAB III METODOLOGI PENELITIAN

Gambar 3.1 Contoh Citra yang digunakan

HASIL DAN PEMBAHASAN. Gambar 3 Ilustrasi pencarian titik pusat dan jari-jari pupil. Segmentasi

DETEKSI GERAK BANYAK OBJEK MENGGUNAKAN BACKGROUND SUBSTRACTION DAN DETEKSI TEPI SOBEL

IDENTIFIKASI PERSONAL BERDASAR BENTUK TANGAN

BAB 2 TINJAUAN PUSTAKA

PERBANDINGAN SEGMENTASI CITRA BERWARNA DENGAN FUZZY CMEANS CLUSTERING PADA BEBERAPA REPRESENTASI RUANG WARNA

III. METODE PENELITIAN. Penelitian ini mulai dilaksanakan pada bulan September 2011 s/d bulan Februari

LANDASAN TEORI. 2.1 Citra Digital Pengertian Citra Digital

Operasi-operasi Dasar Pengolahan Citra Digital

BAB IV HASIL PENELITIAN DAN PEMBAHASAN. Rancangan antarmuka (interface) program terdiri dari form cover, form

Pertemuan 2 Representasi Citra

Transkripsi:

BAB 3 PENGENALAN KARAKTER DENGAN GABUNGAN METODE STATISTIK DAN FCM 3.1 Gambaran Umum Gambar 3.1 Gambar Keseluruhan Proses Secara Umum 73

74 Secara garis besar, keseluruhan proses dapat dikelompokkan menjadi dua bagian, yaitu proses pembuatan basis data dan proses analisis. Proses pembuatan basis data berguna untuk melatih sistem dengan memasukkan data statistik dari setiap karakter (huruf dan angka) pada berkas yang sesuai dengan klasifikasinya, sehingga akan dihasilkan masukan-masukan yang siap pakai untuk melakukan proses analisis. Proses pembuatan basis data terdiri dari dua bagian, yaitu pembuatan basis data statistik dan pembuatan data awal FCM. Proses analisis dilakukan untuk mengetahui tingkat keberhasilan pengenalan karakter berdasarkan karakteristik dan klasifikasi masing-masing karakter yang telah ditentukan. Dari hasil proses analisis inilah nantinya akan diambil suatu kesimpulan apakah karakteristik yang ditentukan sudah cukup dapat diandalkan untuk pengenalan karakter pada plat nomor kendaraan. 3.2 Proses Pembuatan Basis Data dan Training FCM Pada pembuatan basis data dan training FCM, proses yang pertama dilakukan adalah pengolahan citra dan dilanjutkan dengan cropping atau pemotongan citra. Keduanya merupakan bagian dari pemrosesan awal citra. Setelah proses pemotongan selesai, proses dilanjutkan dengan proses segmentasi dan klasifikasi. Dalam proses segmentasi, citra huruf hasil pemotongan (proses sebelumnya) akan dibagi menjadi 32 segmen kecil berbentuk bujur sangkar. Pada proses klasifikasi, setiap bujur sangkar kecil hasil segmentasi akan dihitung bobot piksel hitamnya

75 terhadap bobot piksel hitam secara keseluruhan pada karakter tersebut. Hasil perhitungan tersebut akan disimpan dalam basis data yang statis. 3.2.1 Pemrosesan Awal Pemrosesan awal yang dilakukan meliputi: pengolahan citra (terdiri dari proses penyekalaan dan binerisasi) dan cropping atau pemotongan (terdiri dari proses penetapan batas atas dan bawah, penetapan batas karakter, pemotongan, dan penyekalaan ulang). Pemrosesan awal ini menghasilkan citra yang siap untuk disegmentasi dan diklasifikasi. 3.2.1.1 Pengolahan Citra Tujuan dari pengolahan citra adalah untuk menghasilkan citra yang lebih mudah untuk diolah, yang akan dipakai dalam proses pemotongan. Setelah melalui proses pengolahan citra, akan didapatkan citra yang lebih sederhana yang sangat signifikan untuk keberhasilan proses-proses berikutnya. 3.2.1.1.1 Penyekalaan Tujuan dari proses penyekalaan adalah untuk menyamakan ukuran citra awal dari banyak citra plat nomor kendaraan yang disimpan, sehingga citra tidak ada yang terlalu besar maupun terlalu kecil. Penyekalaan menjadi penting karena citra yang

76 terlalu besar akan memperlambat proses dan citra yang terlalu kecil akan menyulitkan proses segmentasi. Oleh karena itu, kami menetapkan setiap tinggi citra plat yang masuk akan diubah tingginya menjadi 100 piksel, dimana lebih kurang rata-rata ukuran tinggi karakter pada citra plat menjadi 60 piksel (karena pada basis data menggunakan ukuran tinggi x lebar = 40 x 20), dimana citra masukan tersebut akan mengecil ukurannya karena ukuran citra dari hasil pemotretan yang paling kecil yaitu: tinggi x lebar = 118 x 327, sedangkan yang paling besar yaitu 642 x 1956. Dengan ukuran yang relatif kecil (dengan mengubah tinggi menjadi 100), proses pengolahan citra dapat berlangsung lebih cepat, sedangkan untuk lebarnya akan menyesuaikan dengan mempertahankan aspek rasio dari ukuran citra awal dengan rumus seperti berikut: Lt = 100 / Ta... 3.1 Lt = Lebar citra akhir hasil dari penyekalaan Ta = Tinggi citra awal Proses penyekalaan ini menghasilkan citra plat yang telah diskala dengan ukuran yang sama tanpa terpengaruh pada ukuran citra awal sebelum diskala. Citra plat dengan ukuran yang sama ini akan sangat membantu proses selanjutnya, terutama dalam penentuan nilai-nilai ambang pada proses penetapan batas, pembuatan histogram keseluruhan citra, serta proses segmentasi dan pemotongan. Perbedaan ukuran citra plat dapat menyebabkan proses-proses tadi menjadi tidak akurat.

77 3.2.1.1.2 Binerisasi Proses ini digunakan untuk mengubah warna pada citra plat nomor kendaraan menjadi sebuah citra biner sesuai dengan nilai ambang yang digunakan. Awal prosesnya adalah dengan mengubah nilai tiap piksel dari citra plat menjadi nilai piksel level keabuan, yaitu dengan mengambil nilai rata-rata dari ketiga unsur warna RGB. Proses dapat dilihat dari potongan pseudocode berikut: Ulangi sebanyak tinggi citra Ulangi sebanyak lebar citra Ambil nilai piksel (p) Red = (0xff & (p >> 16)) Green = (0xff & (p >> 8)) Blue = (0xff & p) P = ((red+green+blue)/3)//piksel warna keabuan Setelah semua piksel diubah menjadi nilai keabuan, pencarian nilai ambang pun dilakukan. Ada beberapa cara untuk menentukan nilai ambang, misalnya dengan menentukan langsung berdasarkan nilai tengah dari level keabuan, yaitu 127 dan 128; dengan menentukan suatu nilai tertentu sebagai nilai rata-rata dari total piksel level keabuan dalam citra, dan menjadikannya sebagai nilai ambang rata-rata (mean threshold value). Cara menentukan nilai ambang yang digunakan pada penelitian ini adalah

78 dengan menentukan nilai rata-rata dari total piksel level keabuan dalam citra, dan menjadikannya sebagai nilai ambang rata-rata. Nilai ambang = Σ nilai piksel keabuan / Σ piksel... 3.2 Kemudian setelah didapat nilai ambang tersebut, maka akan dilakukan perbandingan tiap nilai piksel dari citra keabuan tersebut dengan nilai ambangnya. Jika nilai piksel lebih besar dari nilai ambangnya (yang berarti nilai piksel lebih terang dari pada nilai ambang), maka nilai piksel tersebut akan diubah menjadi 0 (nol), yang mempunyai nilai heksadesimal 0xff000000 (piksel berwarna hitam). Sedangkan jika yang terjadi sebaliknya, yaitu nilai pikselnya lebih kecil dari nilai ambang yang ditentukan, maka nilai piksel tersebut akan diubah menjadi 1 (satu), yang mempunyai nilai heksadesimal 0xffffffff. Algoritma untuk fungsi tersebut : Jika (nilai piksel keabuan < nilai ambang) maka Nilai piksel baru = 0xffffffff; //warna putih Jika tidak Nilai piksel baru = 0xff000000; //warna hitam

79 Hasil penggunaan nilai ambang dapat dilihat pada gambar berikut dengan menggunakan citra plat yang ditinjau dari segi pencahayaan maupun keseragaman warnanya cukup baik. (a) (b) (c) Gambar 3.2 (a) Plat awal, (b) Binerisasi dengan nilai 128, (c) Binerisasi dengan nilai rata-rata

80 Hasil yang didapat antara nilai ambang, baik yang bernilai 128 maupun dengan nilai ambang rata-rata tidaklah berbeda banyak. Berdasarkan percobaan yang dilakukan, untuk kondisi plat yang relatif terang (rata-rata piksel keabuannya lebih besar dari 128), perbedaan yang ada memang tidak begitu signifikan. Namun untuk citra plat yang cenderung gelap, hasil binerisasi yang didapat akan sangat jelas perbedaannya dengan menggunakan kedua metode pemilihan nilai ambang di atas, bahkan citra plat hasil binerisasi dapat berupa hanya warna putih saja. Hasilnya dapat dilihat pada contoh berikut: (a) (b) (c) Gambar 3.3 (a) Plat awal, (b) Nilai ambang = 128, (c) Nilai ambang = nilai rata-rata

81 Setelah dilakukan percobaan terhadap contoh plat sebanyak 50, ternyata dengan menggunakan nilai ambang rata-rata tersebut (berkisar antara 30 sampai dengan 79), banyak citra yang setelah dilakukan proses binerisasi masih kurang baik kualitasnnya. Citra yang dihasilkan kadang-kadang mempunyai terlalu banyak derau yang berupa bercak-bercak hitam, selain itu juga menyebabkan karakter terlihat gemuk. Lalu untuk menghilangkan bercak-bercak hitam tersebut sekaligus merampingkan karakterkarakter tersebut, nilai ambang rata-rata tersebut ditambahkan dengan suatu nilai tertentu berdasarka hasil percobaan yang dilakukan, nilai yang paling efektif yaitu sebesar 32. Namun setelah melakukan penambahan nilai tersebut, ada beberapa plat yang dimana setelah mendapatkan penambahan justru merusak karakter-karakternya. Setelah diteliti lebih lanjut, ternyata kerusakan terjadi pada citra yang nilai ambang rata-ratanya 30 38. Olah karena itu ditetapkan sebuah nilai ambang sebesar 40, dimana jika nilai rata-rata ambang dari suatu citra kurang dari atau sama dengan 40, maka nilai ambang citra tersebut akan ditambahkan 32, sedangkan jika nilai rata-rata ambangnya lebih besar dari 40, maka tidak dilakukan penambahan. berikut: Aturan dari pengambilan nilai ambang tersebut dapat dilihat pada pseudocode Jika nilai rata-rata ambang > 40 maka Nilai rata-rata ambang =+ 32 Jika tidak

82 Nilai rata-rata ambang tetap Sedangkan alasan mengapa penambahan yang dipilih adalah 32 adalah karena berdasarkan hasil percobaan kami, nilai 32 merupakan nilai yang terbaik yang sudah kami uji pada 50 contoh citra plat secara acak. 3.2.1.2 Pemotongan (Cropping) Segmentasi merupakan salah satu proses yang sangat penting dalam sistem pengenalan karakter, terutama dalam sistem yang menggunakan pendekatan statistik Karena ketidakakuratan delam mengekstraksi karakter, suatu karakter akan mengubah nilai statistik dari suatu karakter. Dalam proses segmentasi, selain memiashkan karakter-karakter dari citra biner, dilakukan juga pemisahan antara karakter huruf dengan karakter angka. Proses segmentasi dapat dibagi menjadi 4 proses penting, yaitu : 1. Penetapan batas atas dan batas bawah citra plat 2. Penetapan batas karakter 3. Pemotongan 4. Penyekalaan ulang

83 3.2.1.2.1 Penetapan Batas Atas dan Batas Bawah Citra Plat Pada proses pertama dari proses segmentasi ini, dilakukan scanning terhadap baris-baris piksel yang terdapat pada citra tersebut. Penentuan batas atas dan bawah dilakukan dengan menghitung jumlah piksel hitam yang terdapat pada satu baris piksel. Batas atas dan batas bawah yang diperoleh akan digunakan untuk membantu keakuratan proses penentuan batas masing-masing karakter. Batas akan ditentukan dengan menggunakan algoritma: Ulangi dari baris ke-0 sampai baris ke-5 Cek setiap piksel pada baris tersebut Jika jumlah piksel hitam = 0maka Batas atas = baris piksel tersebut Jika pseudocode di atas gagal menemukan batas atas citra, maka digunakan pseudocode berikut: X = lebar citra / 3 Ulangi dari baris ke-0 sampai baris ke-10 Cek setiap piksel pada baris tersebut Jika jumlah piksel htam <=x maka Batas atas = baris piksel

84 X = jumlah piksel hitam Sedangkan penentuan batas bawah dilakukan dengan menggunakan algoritma yang memanfaatkan karakteristik plat nomor di Indonesia yang memiliki garis putih pada bagian bawah plat: Ulangi dari baris piksel ke-tinggi citra/2 sampai baris piksel ke-tinggi citra Cek setiap piksel pada baris tersebut Jika jumlah piksel hitam >= ¾ lebar citra maka Batas bawah = baris piksel Jika pada citra plat nomor yang akan ditentukan batas bawahnya tidak ditemukan garis putih pada bagian bawah plat, maka algoritma yang digunakan adalah: Ulangi dari baris piksel ke-tinggi citra/2 sampai baris piksel ke-tinggi citra Cek setiap piksel pada baris tersebut Jika jumlah piksel putih >= ¾ lebar citra maka Batas bawah = baris piksel Proses penentuan batas atas dan batas bawah ini cukup sulit dilakukan terutama apabila citra plat yang dijadikan masukan memiliki banyak derau atau distorsi.

85 Penentuan batas atas dan batas bawah ini membantu pembuatan histogram keseluruhan yang akan digunakan untuk menetapkan batas-batas tiap karakter. 3.2.1.2.2 Penetapan Batas Karakter Dalam proses ini akan dihitung posisi batas kiri, kanan, atas, bawah serta lebar dan tinggi dari masing-masing karakter. Batas kiri dari setiap karakter dilakukan dengan melakukan pengecekan terhadap piksel hitam dari karakter. Penetapan batas karakter pada plat ini dihitung dengan menggunakan batas atas dan batas bawah citra plat, sehingga memiliki tingkat keakuratan yang baik. Berikut adalah pseudocode yang digunakan untuk menghitung histogram keseluruhan citra: For(int index=0;index<((batas bawah-batas atas)x lebar citra);index++) If(nilai piksel yang ke-index=0xff000000); //warna hitam Nilai piksel yang ke-[index % lebar citra] = nilai piksel yang ke- [index % lebar citra] + 1; Batas kiri dan batas kanan ditentukan bergantian, yaitu jika jumlah piksel hitam yang terdapat pada suatu kolom bernilai lebih besar dari nilai ambang, maka kolom tersebut adalah batas kiri karakter. Kemudian jika jumlah piksel hitam pada suatu kolom bernilai nilai ambang, maka kolom tersebut adalah batas kanan karakter. Proses pengecekan tersebut dilakukan terus sampai semua karakter berhasil dihitung batas kiri

86 dan kanannya. Berikut adalah pseudocode yang digunakan untuk menentukan batas kiri dan kana tiap karakter: For(int index = 0; index < panjang histogram keseluruhan;index++) If(i%2==0) If(nilai piksel hitam keseluruhan pada kolom ke-index > nilai ambang) Batas yang ke-i = index; Temp++; Else if(nilai piksel hitam keseluruhan pada kolom ke-index < nilai ambang) Batas yang ke-i = index; Temp++; Nilai ambang yang akan dipakai diberi nilai 5, namun pada saat dilakukan pengecekan dan ternyata batas yang dicari tidak didapat, maka nilai ambang akan ditambah untuk memperoleh batas-batas yang dicari. Nilai ambang sebesar 5 tersebut hanya digunakan untuk proses penentuan batas pada citra plat mobil, sedangkan pada citra plat motor digunakan nilai ambang sebesar 3. Perbedaan nilai ambang ini dilakukan karena karakter pada plat motor lebih kecil daripada karakter pada plat mobil.

87 Jumlah batas kiri dan batas kanan juga dapat digunakan untuk menghitung jumlah karakter yang terdapat pada citra plat tersebut. Selain itu, posisi dari batas kiri dan kanan tadi juga akan digunakan untuk menentukan apakah karakter tertentu pada citra plat adalah huruf atau angka, yaitu dengan menentukan 2 jarak karakter terbesar den membagi plat berdasarkan 2 posisi jarak tersebut. Karakter di sebelah kiri jarak terbesar pertama adalah huruf, karakter-karakter di antara kedua jarak terbesar tersebut adalah angka, dan karakter di sebelah kanan jarak terbesar kedua adalah huruf. Selain itu juga dilakukan pengecekan apakah jumlah karakter pada sebuah plat nomor berjumlah 8, karena plat yang memiliki 8 karakter akan terdiri dari 2 huruf 4 angka 2 huruf. Sedangkan penentuan batas bawah dan batas atas masing-masing karakter dilakukan dengan algoritma yang sama dengan penentuan batas atas dan batas bawah citra plat pada proses sebelumnya, hanya saja pengecekan dilakukan di antara batas kiri dan kanan masing-masing karakter. 3.2.1.2.3 Pemotongan Setelah batas dan posisi masing-masing karakter berhasil ditentukan, dilakukan proses pemotongan sesuai dengan batas-batas dan posisi masing-masing karakter yang telah didapat. Proses pemotongan bertujuan untuk memisahkan karakter-karakter yang telah disegmentasi. Jumlah proses pemotongan sesuai dengan jumlah karakter yang

88 terdeteksi pada proses penentuan batas kiri dan batas kanan dari masing-masing karakter. 3.2.1.2.4 Penyekalaan Ulang Selanjutnya, proses terakhir dari proses segmentasi ini adalah proses penyekalaan ulang, dimana sejumlah karakter yang telah diekstraksi dari citra plat akan diatur ulang ukurannya menjadi ukuran yang telah kita tetapkan sebelumnya, yaitu: Lebar x tinggi = 20 piksel x 40 piksel Tujuan dari penyekalaan ulang gambar ini adalah untuk mendapatkan bentuk karakter yang seragam, sehingga data statistik yang akan didapat akan lebih konsisten dan universal untuk setiap karakternya. Hal ini sangat berguna pada proses pembuatan basis data dan analisis karena ukuran karakter yang berbeda-beda sangat menyulitkan proses analisis. Ukuran 20 piksel x 40 piksel yang dipilih juga dimaksudkan agar proses pembuatan basis data dan pengujian tidak terlalu lama karena semakin besar ukuran karakter, semakin lama pula prosesnya. Namun ukuran karakter juga tidak boleh terlalu kecil karena akan menyebabkan banyak karakteristik histogram karakter tersebut yang hilang.

89 3.2.2 Segmentasi dan Klasifikasi Proses ini dilakukan dengan cara mengelompokkan karakter-karekter tersebut sesuai dengan kemiripan antar karakter berdasarkan nilai statistik mereka. 3.2.2.1 Segmentasi Dalam proses segmentasi, tiap karakter akan dibagi menjadi 32 bagian bujur sangkar yang sama besar. Tiap bujur sangkar (segmen) berukuran 5 piksel x 5 piksel = 25 piksel. Berikut gambaran proses segmentasi karakter: Gambar 3.4 Segmentasi Karakter

90 3.2.2.2 Klasifikasi Pada proses ini setiap bujur sangkar kecil hasil segmentasi akan dihitung bobot piksel hitamnya terhadap bobot piksel hitam secara keseluruhan pada karakter tersebut. Metode pembacaan piksel hitam tiap segmennya sama seperti pembacaan piksel hitam pada saat akan memotong karakter. Tiap segmen yang berbentuk bujur sangkar akan memiliki nilai masing-masing. Nilai tersebut didapat dari: Bobot segmen [x,y] = Jumlah piksel hitam pada segmen [x,y] x 100% Jumlah piksel hitam yang terdapat pada karakter tersebut Setelah semua segmen dihitung bobotnya, maka akan terdapat matriks bobot berukuran 4 x 8 seperti berikut: (1,1) (1,2) (1,3) (1,4) (2,1) (2,2) (2,3) (2,4) (3,1) (3,2) (3,3) (3,4) 4,1) (4,2) (4,3) (4,4) (5,1) (5,2) (5,3) (5,4) (6,1) (6,2) (6,3) (6,4) (7,1) (7,2) (7,3) (7,4) (8,1) (8,2) (8,3) (8,4) Gambar 3.5 Matriks Bobot Segmen

91 Tiap nilai segmen akan disimpan dalam basis data yang statis untuk proses pengenalan karakter dengan pendekatan statistik. Selain itu, nilai-nilai tersebut juga akan dipetakan dalam ruang FCM sebagai training nilai. perhitungan: Data-data tiap segmen dihitung dalam MATLAB. Berikut gambaran hasil Gambar 3.6 Hasil Perhitungan Bobot Segmen pada MATLAB

92 3.2.3 Penulisan Data Histogram Setelah proses segmentasi dan klasifikasi selesai, data matriks bobot tiap segmen pada suatu karakter akan disimpan dalan sebuah file, sesuai dengan pengklasifikasian yang sudah ditentukan sebelumnya. Matriks bobot yang telah disimpan akan dijadikan tolak ukur dan mewakili ciri dan nilai karakter tersebut. Proses penulisan matriks bobot segmen akan dimulai dari kiri ke kanan, dari baris atas ke bawah. Dengan kata lain, nilai-nilai bobot akan dituliskan dalam satu baris tiap karakternya. Penulisan akan dimulai dengan jumlah piksel secara keseluruhan, kemudian diikuti dengan nilai bobot tiap segmen, dan diakhiri dengan identitas karakter. Setiap nilai akan dipisahkan dengan spasi. Berikut format penulisan nilai bobot: Jumlah piksel (1,1) (1,2) (1,3) (1,4) (2,1) (2,2) (2,3) (2,4) (3,1) (3,2) (3,3) (3,4) (4,1) (4,2) (4,3) (4,4) (5,1) (5,2) (5,3) (5,4) (6,1) (6,2) (6,3) (6,4) (7,1 ) (7,2) (7,3) (7,4) (8,1) (8,2) (8,3) (8,4) Karakter Format penulisan ini akan dimasukkan ke dalam file.txt yang akan menampung semua data, baik hasil training maupun data pengujian. Penulisan akan dilakukan per baris, tiap data akan dituliskan dalam satu baris. Untuk keperluan pembangunan basis data analisis secara statistik, rata-rata penulisan setiap karakter dilakukan sebanyak 30 kali karena terdapat perbedaan nilai bobot karakter dengan identitas yang sama. Selain itu, semakin banyak data yang ada, maka nilai keakuratannya akan semakin mendekati sempurna. Karakter yang datanya dimasukkan ke dalam basis data adalah karakter-karakter dengan bentuk yang unik, bukan karakter yang terkena noise atau distorsi. Karakter-karekter tersebut diambil dari

93 200 plat nomor mobil den berbeda dengan plat-plat nomor kendaraan yang digunakan pada pengujian, sedangkan untuk basis data motor, digunakan 40 plat nomor yang juga berbeda dengan yang digunakan pada waktu pengujian. Banyaknya data yang dimasukkan ke dalam basis data juga diperhatikan sebab semakin banyak data, proses pengenalan karakter lebih lambat. Sedangkan untuk keperluan pembelajaran pada FCM, tiap karakter yang masuk akan langsung diproses nilainya, sehingga lingkungan FCM dapat menyempurnakan letak titik pusat tiap cluster-nya. Semakin banyak data yang dimasukkan, FCM akan lebih mudah menentukan cluster data selanjutnya. Proses pembuatan basis data untuk mobil dan motor tidak mempunyai perbedaan kecuali data masukkannya. 3.3 Proses Analisis Pada proses analisis, pemrosesan awal dan klasifikasi yang dilakukan terhadap citra sama persis dengan saat dilakukan proses pembuatan basis data. Jika karakter sudah terklasifikasi, dilakukan proses analisis pengenalan karakter dengan pendekatan statistik. Apabila analisis pengenalan karakter dengan pendekatan statistik gagal mengenali satu atau lebih karakter dari suatu plat nomor kendaraan, satu atau lebih karakter tersebut akan dianalisis dengan menggunakan pendekatan FCM.

94 3.3.1 Analisis Pengenalan Karakter dengan Pendekatan Statistik Setelah melalui proses pengolahan citra, pemotongan, segmentasi, dan klasifikasi, nilai bobot yang sudah diperoleh melalui proses-proses tersebut akan dibandingkan dengan nilai bobot yang ada di basis data. Untuk menemukan suatu karakter, digunakan cara sebagai berikut: Jika selisih antara nilai bobot dari data-data yang ada pada basis data dengan data yang akan dianalisis dan selisih dari posisi nilai maksimum tersebut kurang dari nilai ambang, maka cek dan bandingkan data-data yang ada pada basis data dengan data dari plat yang dianalisi. Nilai ambang adalah batasan nilai yang digunakan, besar awalnya adalah dua dan bertambah satu bila pada pengecekan sebelumnya tidak diperoleh nilai kesamaan yang sesuai (antara 15-20). Jika nilai data pada kolom yang sama bernilai sama atau berselisih satu, maka nilai kesamaannya bertambah satu. Setelah semua data dicek, akan didapat nilai kesamaan keseluruhan (maksimum nilai kesamaan = 20). Jika nilai kesamaannya mempunyai nilai antara 15-20, maka karakter yang dianalisis kemungkinan sama dengan karakter yang datanya digunakan pada proses ini. Kemungkinan tersebut dapat terjadi karena data yang dianalisis tidak dibandingkan hanya dengan satu set data saja, tetapi lebih dari satu set data yang berasal dari karakter yang berbeda, sehingga akan didapatkan beberapa kesamaan. Untuk penentuan terakhir, nilai kesamaan yang telah diperoleh dibandingkan satu sama lain hingga didapatkan nilai kesamaan yang paling besar.

95 3.3.2 Proses Switching Proses switching yang dimaksud adalah proses penggantian metode pengenalan karakter dari metode statistik menjadi metode FCM. Apabila analisis dengan pendakatan statistik gagal mengenali satu atau lebih karakter pada plat nomor kendaraan (pada program aplikasi akan terlihat karakter? ), maka plat tersebut akan dianalisis kembali dengan menggunakan pendekatan FCM. Semua karakter pada plat akan kembali dianalisis dengan pendekatan FCM, tidak hanya karakter yang gagal dikenali. Hal ini juga berlaku ketika pendekatan statistik secara bersamaan gagal dan salah mengenali karakter pada plat nomor yang dianalisis. Namun, apabila analisis pendekatan statistik hanya salah dalam mengenali karakter pada plat nomor kendaraan (misalnya: karakter 8 dikenali sebagai karakter 3 ), maka proses tidak akan menganalisis kembali plat tersebut dengan pendekatan FCM. 3.3.3 Analisis Pengenalan Karakter dengan Pendekatan FCM Apabila dengan menggunakan pendekatan statistik karakter masih belum dapat dikenali, analisis akan dilanjutkan dengan pendekatan FCM. Dengan data histogram yang sudah diperoleh melalui proses sebelumnya, setiap karakter akan diperiksa dan dihitung nilai keanggotaannya terhadap cluster-cluster yang mewakili masing-masing karakter plat nomor kendaraan.

96 Alasan dipilihnya algoritma FCM, bukan algoritma Substractive Clustering adalah karena dalam permasalahan yang dihadapi, jumlah cluster dapat ditentukan sebelumnya, yaitu 36 cluster. 36 cluster tersebut tersebut terdiri dari 26 cluster karakter huruf (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, dan Z) dan 10 cluster karakter angka (0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9). Untuk menemukan suatu karakter, digunakan cara sebagai berikut: Masukkan data berupa matriks yang terdiri dari rangkaian angka yang menunjukkan nilai bobot tiap segmen dari karakter yang akan dicari. Setelah itu, nilai bobot karakter akan dimasukkan sebagai input proses FCM. Proses ini tentunya telah mendapatkan training dan akan melatih dirinya sendiri setiap kali menerima input. Karakter akan menemukan selisih jarak terdekatnya dengan pusat cluster. Cluster inilah yang menjadi identitas karakter yang dicari. Setelah proses training selesai, tiap data karakter pada plat kendaraan bermotor yang gagal dikenali akan menjadi masukan dalam proses FCM ini. Pertama, data karakter yang berupa rangkaian nilai matriks bobot akan dipetakan dalam bentuk titik data pada variabel lingkungan FCM yang telah di-train sebelumnya. Setelah itu, titik data tersebut akan dihitung jarak euclidean dengan masing-masing pusat cluster. Selanjutnya, akan didapat nilai-nilai jarak dengan masing-masing pusat cluster. Data akan memiliki identitas sebagai suatu karakter yang jarak euclidean-nya paling kecil. Dapat pula dikatakan data akan memiliki identitas pusat cluster terdekat. Setelah semua proses tersebut, proses dilanjutkan dengan menghitung pusat cluster baru.

97 Sebagai contoh, berikut plat dengan karakter yang gagal dikenali dengan menggunakan pendekatan statistik: Gambar 3.7 Plat yang memiliki karakter yang gagal dikenali dengan pendekatan statistik Dengan menggunakan pendekatan statistik, tidak semua karakter pada plat nomor di atas dapat dikenali. Karakter 2 pada plat di atas tidak mampu dikenali oleh analisis semantik. Seperti yang telah ditentukan, karakter yang gagal dikenali dengan pendekatan semantik, akan dikenali dengan pendekatan FCM. Karakter 2 di atas tentunya telah melewati proses-proses sebelumnya. Oleh karena itu, karakter 2 tersebut tentunya telah memiliki matriks nilai bobot. Matriks nilai bobot sebagai representasi karakter angka 2 tersebut akan dijadikan input dalam lingkungan FCM. Dari seluruh nilai bobot yang dimiliki oleh karakter 2, karakter ini akan dipetakan dalam lingkungan FCM sebagai sebuah titik. Kemudian, titik tersebut akan dihitung selisih jaraknya dengan setiap titik pusat cluster yang telah terbentuk dalam lingkungan FCM tersebut. Setelah jarak titik data yang baru (data karakter 2 ) dihitung dengan tiap pusat cluster dan mendapatkan nilai terdekat, karakter 2 akan

98 dikenali sebagai angka 2. Hal ini disebabkan oleh karena letak titik data karakter 2 dalam FCM paling dekat dengan pusat cluster karakter 2. Akibat banyaknya nilai bobot yang mewakili tiap karakter (32 nilai bobot untuk masing-masing karakter), sebaran titik-titik data dan pusat cluster karakter pada lingkungan FCM tidak mungkin dipetakan. 3.4 Hasil Pengujian Setelah proses analisis selesai, maka akan didapatkan hasil pengujian,seperti dapat dilihat pada gambar berikut: (a) (b)

99 (c) Gambar 3.8 (a) Citra Plat yang telah diskala ulang (b) Citra Plat yang telah dibinerisasi (c) Citra karakter yang telah melalui proses pemotongan