Identifikasi Karakter pada Citra Plat No
USULAN PENELITIAN
IDENTIFIKASI KARAKTER PADA PLAT NOMOR KENDARAAN
MENGGUNAKAN EKSTRAKSI FITUR ICZ DAN ZCZ
DENGAN METODE KLASIFIKASI K-NN
oleh:
R. Putri Ayu Pramesti
G64104010
Pembimbing:
Mushthofa, S.Kom., M.Sc
PENDAHULUAN
Latar Belakang
Plat nomor merupakan kode unik yang
terdiri dari susunan huruf dan nomor. Setiap
kendaraan memiliki satu plat nomor yang
dijadikan sebagai kode identitas dari
kendaraan itu sendiri. Karena plat nomor dari
setiap kendaraan bersifat unik, maka plat
nomor sering digunakan dalam setiap
pencatatan identitas kendaraan untuk berbagai
macam keperluan seperti pencataan di tempat
parkir.
Semakin meningkatnya jumlah
kendaraan di Indonesia maka dibutuhkan
suatu aplikasi yang bisa mendeteksi dan
mengenali plat nomor kendaraan secara
otomatis
dan
cepat
sehingga
dapat
memudahkan dalam pencataan plat nomor
kendaraan yang masuk dan keluar dari area
parkir. Aplikasi ini merupakan pengenalan
pola sinyal digital yang terdapat pada gambar.
Terdapat beberapa tahapan dalam proses
pengenalan nomor plat kendaraan. Input citra
plat nomor dirubah dahulu menjadi citra biner,
kemudian dilakukan segmentasi untuk
memisahkan
objek
karakter
dengan
background . Setelah itu, tiap karakter dari plat
nomor disegmentasi dan masing-masing
karakter dilakukan ekstraksi ciri. Kemudian,
dilakukan klasifikasi tiap karakter satu per
satu dengan menggunakan metode klasifikasi
tertentu.
Sampai saat ini telah dilakukan banyak
penelitian mengenai hal ini dan masih terus
dikembangkan untuk mencari metode terbaik
dalam memecahkan permasalahan. Salah
satunya yaitu penelitian yang dilakukan oleh
(Lesmana 2012) yang melakukan pengenalan
plat nomor dengan input gambar digital yang
diambil dari depan atau belakang kendaraan
secara
lurus.
Gambar
diekstraksi
menggunakan Image Centroid and Zone
(ICZ). Kemudian diolah dan diklasifikasi
menggunakan metode klasifikasi jaringan
syaraf tiruan back-propagation . Akurasi yang
didapat dari penelitian ini belum begitu baik
yaitu 55.50% untuk deteksi terhadap 40 buah
plat nomor dan 84.06% untuk pendeteksian
masing-masing karakter.
Oleh karena itu penelitian ini dilakukan
menggunakan metode klasifikasi K-NN.
Ekstraksi ciri yang digunakan adalah ICZ,
ZCZ dan gabungan dari keduanya. Seperti
mengacu pada penelitian yang telah dilakukan
oleh (Mulia 2012) yang melakukan
pengenalan aksara sunda menggunakan
metode ekstraksi ciri ICZ, dan gabungan
keduanya. Pada penelitian sebelumnya juga
telah dilakukan pengenalan tulisan tangan
India dengan menggunakan zone based
projection distance feature extraction akurasi
yang
didapat
yaitu
94.70
%
(Rajashekararadhya 2008). Pada penelitian ini
akan
dilakukan
percobaan
dengan
menggabungkan metode ekstraksi ciri ICZ,
ICZ+ZCZ dan metode klasifikasi K-NN untuk
melihat keberhasilan dari kedua metode
tersebut dan mendapatkan jumlah zona yang
terbaik dalam pengenalan plat nomor.
Tujuan
Tujuan dilakukannya penelitian ini adalah
untuk :
1. Menentukan metode ekstraksi ciri yang
paling efektif di antara metode ekstraksi
ciri yang digunakan dan menentukan
jumlah zona yang paling baik untuk
pengenalan plat nomor kendaraan.
2. Mengetahui kinerja dari metode klasifikasi
K-Nearest Neighbor
(KNN) dalam
melakukan pengenalan plat nomor
kendaraan.
konversinya ke citra grayscale dapat dilihat
pada Gambar 1.
Ruang Lingkup
Ruang lingkup dari penelitian ini terbatas
pada :
1. Plat nomor yang dikenali hanya plat
nomor dengan format standar (bukan
format TNI/POLRI).
2. Data yang diolah berasal dari citra dengan
format JPEG.
3. Karakter yang dikenali adalah huruf
alphabet kapital (A sampai Z) dan angka
(0 sampai 9).
4. Pemotretan plat dilakukan dari depan atau
belakang kendaraan secara berhadapan
lurus.
5. Hanya bagian plat nomor yang akan
digunakan sebagai data yang diteliti.
Manfaat
Manfaat penelitian ini adalah untuk
mempermudah dan mempercepat proses
pencatatan plat nomor kendaraan yang masuk
ke suatu area parkir sehingga diharapkan akan
mengurangi antrian dan human error dalam
pengetikan.
TINJAUAN PUSTAKA
Pengolahan Citra Digital
Citra merupakan suatu fungsi kontinyu
dari intensitas cahaya dalam bidang dua
dimensi. Dengan proses sampling dan
kuantisasi, fungsi kontinyu dari citra dirubah
menjadi fungsi diskret. Pada aplikasi ini akan
diterapkan beberapa proses pengolahan citra
yaitu:
Grayscale Image
Pada citra berwarna satu nilai pixel terdiri
dari 3 layer yaitu red, green dan blue. Rentang
nilai dari tiap layer berkisar antara 0-255.
Sedangkan pada citra grayscale representasi
citranya bernilai sama untuk tiap layer . Citra
yang dihasilkan dari grayscale berupa citra
abu-abu. Citra grayscale sangat berbeda dari
citra biner, karena citra biner merupakan citra
hanya memiliki dua variasi nilai yaitu gelap
dengan nilai piksel 0 dan terang dengan nilai
piksel 255 (Shapiro dan Stockman 2001).
sedangkan citra grayscale warnanya beragam
yang merupakan rentang antara putih dan
hitam. Perbandingan gambar RGB dan hasil
Gambar 1. Citra RGB dan grayscale
Edge Detection
Edge detection adalah operasi yang
bertujuan untuk mereduksi citra dan hanya
menampilkan tepi dari citra itu sendiri (Baxes
1984). Deteksi ini dilaku-kan dengan cara
menemukan perbedaan yang signifikan antara
satu piksel dengan piksel tetangganya. Deteksi
ini dilakukan secara vertikal dan horizontal.
Perbedaan proses antara deteksi tepi vertikal
dan horizontal hanya terletak pada filter yang
digunakan.
Image Segmentation
Segmentasi merupakan proses mengklaster
citra menjadi beberapa bagian objek sehingga
akan memudahkan untuk mengidentifikasi
objek yang bermakna dari suatu citra (Deng et
al. 1999). Ada dua pen-dekatan umum dalam
melakukan segmentasi citra yaitu pendekatan
discontinuity dan pendekatan similarity.
Pendekatan dis-continuity memprartisi citra
berdasarkan perubahan intensitas cahaya
secara tiba-tiba, sedangkan pendekatan
similarity
membagi
citra
berdasarkan
kesamaan sifat-sifat tertentu (region based ).
Cany Detection
Algoritma deteksi tepi canny dikenal
sebagai algoritma yang optimal dalam
melakukan pendeteksian tepi (Acharya 2005).
Ada beberapa tahapan dalam deteksi tepi
cany, yaitu :
1.
2.
3.
4.
Smoothing : menghilangkan noise
dengan efek blurring
Finding Gradient: Menandai tepi dari
gambar
yang
memiliki
nilai
magnitute yang besar.
Non-maximum suppression : Menghilangkan nilai-nilai yang tidak
maksimum.
Double Thresholding : Dua buah
thershold dipilih untuk menentukan
jalur tepi.
5.
Metode Ekstraksi Ciri Zoning
6.
Sampai saat ini ada banyak metode
ekstraksi ciri yang digunakan. Beberapa
metode ekstraksi ciri yang sering digunakan
adalah Template matching , Unitary transform
Zoning .
Zoning merupakan salah satu metode
ekstraksi ciri yang populer dan seberhana
yang digunakan dalam ekstraksi fitur. Metode
ekstraksi zoning akan membagi citra menjadi
beberapa zona yang berukuran sama, untuk
kemudian dari setiap zona akan diambil
cirinya. Ada beberapa algoritma untuk metode
ekstraksi ciri zoning , diantaranya metode
ekstraksi ciri jarak metrik ICZ (image
centroid and zone ), metode ekstraksi ciri jarak
metrik ZCZ (zone centroid and zone ), dan
metode ekstraksi ciri gabungan (ICZ + ZCZ).
Ketiga algoritma tersebut menggunakan citra
digital sebagai input dan menghasilkan fitur
untuk klasifikasi dan pengenalan sebagai
outputnya. Berikut merupakan tahapan dalam
proses ekstraksi ciri ICZ, ZCZ dan ICZ+ZCZ
(Rajashekararadhya 2008) .
7.
Algoritma 3 : ICZ+ZCZ berdasarkan
jarak metrik.
1.
2.
3.
4.
5.
6.
7.
8.
9.
Algoritma 1: Image Centroid and Zone (ICZ)
berdasarkan jarak metrik.
10.
Tahapan
11.
1.
2.
Hitung centroid dari citra masukkan.
Bagi citra masukkan kedalam n zona
yang sama
3. Hitung jarak antara centroid citra
dengan masing-masing piksel yang
ada dalam zona
4. Ulangi langkah ke 3 untuk setiap
piksel yang ada di zona
5. Hitung rata-rata jarak antara titik-titik
tersebut
6. Ulangi langkah-langkah tersebut
untuk keseluruhan zona
7. Hasilnya adalah n fitur yang akan
digunakan dalam klasifikasi dan
pengenalan
Algoritma 2 : Zone Centroid Zone (ZCZ)
berdasarkan jarak metrik.
1.
2.
3.
4.
Bagi citra masukkan ke dalam
sejumlah n bagian yang sama
Hitung centroid dari masing-masing
zona
Hitung jarak antara centroid masingmasing zona dengan piksel yang ada
di zona.
Ulangi langkah ke 3 untuk seluruh
piksel yang ada di zona
Hitung rata-rata jarak antara titik-titik
tersebut
Ulangi langkah 3-7 untuk setiap zona
secara berurutan
Hasilnya adalah n fitur yang akan
digunakan dalam klasifikasi dan
pengenalan
Hitung centroid dari citra masukan
Bagi citra masukkan ke dalam
sejumlah n bagian yang sama
Hitung jarak antara centroid citra
dengan setiap piksel yang ada dalam
zona
Ulangi langkah 3 untuk semua piksel
yang ada dalam zona
Hitung jarak rata-rata antara titik-titik
tersebut
Hitung centroid tiap zona
Hitung jarak antara centroid zona
dengan setiap piksel yang ada dalam
zona
Ulangi langkah 7 untuk semua pixel
yang ada dalam zona
Hitung jarak rata-rata antara titik-titik
tersebut
Ulangi langkah 3-9 untuk semua
zona secara berurutan
Hasilnya akan didapatkan 2n ciri
untuk klasifikasi dan pengenalan
K-Nearest Neighbor (K-NN)
K-NN merupakan algoritma supervised
dalam klasifikasi dimana hasil dari kueri
instance
yang
baru
diklasifikasikan
berdasarkan mayoritas kategori pada k
tetangga terdekat. Secara umum ada beberapa
tahap dalam proses klasifikasi K-NN. Pertama
tentukan nilai k, k merupakan jumlah tetangga
terdekat yang akan menentukan kueri baru
masuk ke kelas mana. Kemudian cari k
tetangga terdekat dengan cara menghitung
jarak titik kueri dengan titik training. Setelah
mengetahui jarak masing-masing titik training
dengan titik kueri, kemudian lihat nilai yang
paling kecil. Ambil k nilai terkecil selanjutnya
lihat kelasnya. Kelas yang paling banyak
merupakan kelas dari kueri baru (Kozma
2008).
Dekat atau jauhnya jarak titik dengan
tetangganya bisa dihitung dengan menggunakan Euclidean distance . Euclidean
distance direpresentasi-kan sebagai berikut :
(1)
D(a,b) merupakan jarak antara vektor a
yang merupakan titik yang telah diketahui
kelasnya dan b berupa titik baru dari matriks
berukuran d dimensi. Jarak antara vektor baru
dengan titik-titik training dihitung dan
diambil k buah vektor terdekat. Titik baru
diprediksi masuk ke kelas dengan klasifikasi
terbanyak dari titik-titik tersebut.
METODE PENELITIAN
Untuk dapat melakukan penelitian baik,
diperlukan sebuah metode penelitian yang
baik serta terencana. Skema penelitian yang
akan dilakukan dapat dilihat pada Gambar 2.
sebesar 5 MP (Lesmana 2012). Citra yang
dikumpulkan harus memperhatikan jumlah
kemunculan masing-masing karakter, dimana
sebaran frekuensinya merata untuk setiap
karkter. Hal tersebut dilakukan agar data latih
yang dimiliki dapat lebih akurat untuk setiap
karakter yang ada.
Selain itu perlu citra yang dikumpulkan
harus memiliki resolusi yang sama. Dengan
demikian pemrosesan citra yang akan
dilakukan dapat lebih cepat.
Pra-proses citra
Pra-processing dilakukan agar citra plat
nomor bisa diekstraksi. Gambar plat nomor
yang didapat dari hasil pengumpulan data
merupakan gambar RGB. Gambar tersebut
kemudian dirubah mencadi citra grayscale
agar proses komputasi bisa lebih efisien.
Proses perubahan citra RGB menjadi
grayscale dapat menggunakan rumus :
Piksel = 0.2989 * R + 0.5870 * G + 0.1140 * B
Dimana R, G, dan B merupakan intensitas
dari masing-masing warna merah, hijau, dan
biru pada citra. Setelah dilakukan konversi
citra RGB ke grayscale kemudian citra
dibersihkan dari noise dengan menggunakan
median filter.
Deteksi Tepi
Deteksi
tepi
dilakukan
untuk
mendapatkan tepi dari tiap karakter yang ada
pada citra. Deteksi tepi yang digunakan dalam
penelitian ini adalah deteksi tepi canny.
Contoh hasil dari proses deteksi tepi pada plat
nomor menggunakan canny dapat dilihat pada
Gambar 3.
Gambar 3. Gambar grayscale dari plat nomor
(kiri) dan hasil deteksi tepi dengan canny
(kanan)
Gambar 2 Skema metode penelitian
Pengumpulan Data
Citra yang digunakan merupakan hasil
tangkapan kamera handphone dengan resolusi
Agar hasil dari deteksi tepi bisa lebih baik
dan tidak memunculkan tepi yang tidak
penting, maka pada saat proses deteksi
digunakan satu parameter yang akan menjadi
batas atau threshold dalam pendeteksian.
Segmentasi Citra
pn = Nilai pixel ke-n
Agar karakter pada cita plat nomor bisa
dikenali satu per satu maka harus dilakukan
segmentasi pada citra masukkan. Selain itu
segmentasi dilakukan agar bisa mengeliminasi
objek-objek yang tidak diperlukan. Hal ini
dilakukan dengan cara mensegmentasi citra
berdasarkan area. Objek yang memiliki citra
yang terhubung akan dianggap sebagai satu
area. Pada penelitian ini, untuk mendeteksi
piksel-piksel yang terhubung digunakan
metode 8-connected . Tiap area yang didapat
kemudian dihitung luasnya. Kemudian luas
area tersebut dibandingkan dengan batas
minimum luas area. Jika luas area lebih dari
batas minimum maka area tersebut akan
diaggap sebagai satu karakter. Contoh hasil
segmentasi citra plat nomor bisa dilihat pada
Gambar 4.
Citra plat nomor akan dibagi menjadi
beberapa bagian sama besar. Pada penelitian
ini digunakan jumlah zone sebanyak 5, 10, 15,
20 dan 25. Untuk mencari jarak antara
centroid dengan koordinat pixel digunakan
metode Euclidean dua dimensi. Berikut ini
rumus jarak menggunakan Euclidean.
Gambar 4. Hasil segmentasi citra plat nomor
Citra diatas memiliki ukuran yang sama
karena dilakukan resize pada masing-masing
citra hasil proses segmentasi.
Ekstrasi Ciri
Pada tahapan ini akan dilakukan proses
ektraksi untuk mendapatkan fitur yang akan
digunakan dalam klasifikasi dan pengenalan.
Metode ektraksi ciri yang digunakan dalam
penelitian ini adalah ketiga variasi algoritma
metode zoning, yaitu Image Centroid and
Zone (ICZ) dan gabungan dari ICZ dan Zone
Centroid and Zone (ZCZ).
Sebelum proses ekstraksi dilakukan,
harus dapat dipastikan bahwa dimensi dari
setiap karakter berukuran sama. Untuk
menghitung nilai centroid bisa menggunakan
rumus sebagai berikut :
Xc = x 1.p 1 + x 2.p 2 + ... + xn.pn
p 1 + p 2 + ... + pn
Yc = y 1.p 1 + y 2.p 2 + ... + yn.pn
p 1 + p 2 + ... + pn
dimana,
Xc = Centroid koordinat x
Yc = Centroid koordinat y
Xn = Koordinat x dari pixel ke-n
Yn = Koordinat y dari pixel ke-n
Metode ekstraksi ciri ICZ dan ZCZ
menggunakan rumus yang sama dalam
menghitung centroid. Perbedaan antara ICZ
dan ZCZ terletak pada perbedaan alur dari
algoritma proses ekstraksi. Pada metode ICZ
perhitungan nilai centroid dari citra dilakukan
sebelum citra dibagi ke dalam beberapa area
yang sama besar sehingga nilai centroid pada
proses ekstraksi ICZ hanya ada satu,
sedangkan pada metode ektraksi ZCZ
perhitungan centroid dilakukan setelah citra
dibagi ke dalam beberapa daerah yang sama
besar. Perhitungan centroid pada metode
ekstraksi ZCZ akan menghasilkan sejumlah
nilai centroid, banyak nilai centroid
tergantung pada jumlah daerah pembagian
citra.
Pada metode ekstraksi ICZ+ZCZ fitur yang
dihasilkan sejumlah 2n. Hal ini disebabkan
karena perhitungan centroid dan jarak antara
tiap titik piksel dengan centroid dilakukan
sebanyak dua kali yaitu sebelum citra dibagi
ke dalam sejumlah daerah yang sama besar
dan setelah citra dibagi ke dalam sejumlah
daerah yang sama besar.
Klasifikasi menggunakan K-NN
K-NN merupakan metode klasifikasi citra
dengan cara menghitung kedekatan antara titik
baru dengan titik training yang telah diketahui
kelasnya. Kelas yang ada dalam pengenalan
plat nomor ini ada 36 kelas (26 huruf dan 9
angka). Dalam proses klasifikasi sebelumnya
harus ditentukan dahulu nilai k, yaitu jumlah
tetangga terdekat yang akan dilihat kelasnya
untuk menentukan kelas terbanyak yang
merupakan kelas dari titik baru. Nilai k akan
sangat berpengaruh pada akurasi hasil
klasifikasi. Nilai k yang terlalu kecil akan
menyebabkan
ketidakstabilan
hasil.
Sedangkan nilai k yang terlalu besar akan
menyebabkan bias. Nilai k pada penelitian ini
adalah 3, 5, dan 7.
Evaluasi dan Analisis Hasil
Tahap ini merupakan tahap terakhir untuk
mengevaluasi kekurangan dan kelebihan dari
metode yang digunakan. Hal tersebut dilihat
dari perbandingan hasil klasifikasi citra
dengan nomor polisi aslinya. Hasil yang tidak
sesuai maupun sesuai dicatat untuk
menentukan seberapa besar akurasi dari
metode ini. Untuk menghitung akurasi dapat
menggunakan rumus
: Jumlah citra yang berhasil terdekteksi
N
: Jumlah data yang ada.
Lingkungan Pengembangan Sistem
Proses
pengerjaan
penelitian
ini
menggunakan perangkat keras dan perangkat
lunak dengan spesifikasi sebagai berikut :
Perangkat keras berupa notebook:
Processor Intel Pentium Core2Duo
@1.99GHz,
RAM kapasitas 2 GB,
Harddisk kapasitas 250GB,
Monitor dengan resolusi 1280x800 piksel.
Perangkat lunak berupa:
Sistem operasi Microsoft Windows 7
Service Pack 1x.
Aplikasi pemrograman Matlab R200b.
HASIL DAN PEMBAHASAN
Pengumpulan Data
Dalam penelitian ini data yang diperlukan
adalah citra dari plat nomor kendaraan. Data
yang digunakan merupakan data yang diambil
dari proses pemotretan sebanyak 100 plat
mobil kendaraan.
Dari 100 buah plat nomor kendaraan
kemudian diambil potongan karakter yang
mewakili seluruh kelas yaitu huruf sebanyak
26 dan angka sebanyak 10, jadi keseluruhan
karakter ada 36. Untuk masing-masing
karakter diambil sebanyak 50 citra, artinya
kita akan mendapatkan citra karakter
sebanyak 1800 buah. Citra tersebut nantinya
akan digunakan sebagai data uji dan data latih.
Contoh data karakter dapat dilihat pada
Gambar 5.
Gambar 5. Data Karakter
Pra-proses Citra
Tidak semua citra yang didapat dari hasil
pengumpulan data berkualitas baik, terkadang
karena pencahayaan dan lain-lain kualitas
citra menjadi kurang baik dan terdapat noise.
Hal ini sebaiknya tidak terjadi, karena dengan
adanya noise akurasi pendeteksian karakter
akan berkurang. Oleh karena itu, sebelum
dilakukan ekstraksi ciri, terlebih dahulu
dilakukan reduksi noise dengan menggunakan
median filter.
Langkah pertama yang dilakukan adalah
mengubah citra RGB menjadi citra grayscale
untuk mempercepat komputasi. Kemudian
dilakukan reduksi noise dengan median filter.
Median filter dipilih karena merupakan
metode yang cocok untuk menghilangkan
noise berupa salt&paper . Median filter yang
digunakan dalam penelitian ini adalah matriks
dua dimensi dengan batas matriks 3x3. Nilai
piksel akan dirubah menjadi nilai tengah dari
piksel tersebut dibandingkan dengan delapan
piksel tetangganya yang telah diurutkan.
Deteksi Tepi
Proses deteksi tepi dilakukan dengan
menggunakan metode canny’s edge detection .
Nilai threshold yang terlalu rendah akan
menyebabkan garis yang bukan tepi dari objek
muncul, sedangkan nilai threshold yang
terlalu tinggi akan menyebabkan sebagian dari
objek menghilang, sehingga nilai 0,5 dipilih
sebagai threshold untuk deteksi tepi.
Pada tahap ini citra yang dihasilkan berupa
citra biner yang merepresentasikan garis tepi
untuk setiap objek. Garis tepi inilah yang
memisahkan objek yang diperlukan dengan
objek lainnya. Contoh hasil deteksi
menggunakan canny’s detection bisa dilihat
pada Gambar 6.
Gambar 6 Hasil Deteksi Canny
Segmentasi Citra
Setelah melalui proses deteksi tepi
menggunakan canny’s edge detection,
kemudian
citra
disegmentasi
untuk
memisahkan objek-objek yang akan diamati.
Dalam penelitian ini objek yang diamati
adalah karakter huruf dan angka yang terdapat
pada plat nomor. Dalam hal ini perlu
identifikasi mana simbol yang merupakan
huruf, angka dan mana yang bukan
merupakan keduanya.
Proses ini dilakukan dengan menggunakan
metode 8-connected . Setiap piksel yang
terhubung akan diberi label yang sama dengan
memperhatikan 8 piksel tetangganya. Proses
ini dilakukan satu per satu untuk setiap piksel
yang ada pada citra hasil deteksi tepi sehingga
akan terbentuk kelompok piksel dengan
masing-masing label yang berbeda.
Setelah terbentuk kelompok piksel
berdasarkan label, maka akan dihitung
panjang dan lebar untuk masing-masing
kelompok.
Untuk mengetahui apakah
kelompok piksel tersebut adalah suatu
karakter angka dan huruf atau bukan, maka
dilakukan seleksi kondisi berdasarkan panjang
dan lebar dari kelompok piksel tersebut
dengan kondisi :
Jika Panjang > 150 dan Panjang < 140 dan
Lebar >20 dan Lebar < 100
Maka kelompok piksel =Karakter
Kelompok piksel yang memenuhi kondisi
diatas akan diprediksi sebagai suatu karakter.
Permasalahan
yang
muncul
dengan
melakukan pelabelan menggunakan 8connected adalah pada saat pelabelan untuk
karakter-karakter tertentu yang memiliki lebih
dari satu tepian yang tidak terputus.
Contohnya karakter 0 (nol), pada saat
pelabelan karakter tersebut akan memuliki dua
kelompok label yang berbeda, karena secara
visual karakter 0(nol) terdiri dari dua buah
elips yang terpisah. Bisa dilihat ilustrasinya
pada Gambar 7.
Gambar 7 Pelabelan Karakter 0 (nol)
Setiap karakter yang memiliki karakteristik
seperti angka 0 (nol), akan mengalami
permasalahan yang sama. Untuk mengatasi
hal tersebut maka dilakukan pemeriksaan
posisi masing-masing label, apabila suatu
label ada dalam area label yang lain, maka
label tersebut akan dijadikan satu. Dengan
begini maka masing-masing label akan
mewakili karakter yang teridentifikasi pada
citra plat kendaraan. Contoh hasil segmentasi
bias dilihat pada Gambar 8.
Gambar 8 Hasil Segmentasi Citra
Citra yang telah melalui proses segmentasi
telah terpisah per karakter dengan ukuran
yang beragam sesuai dengan ukuran karakternya masing-masing.
Normalisasi Citra
Gambar citra yang dihasilkan pada proses
segmentasi memiliki ukuran yang berbedabeda, oleh karena itu diperlukan proses
normalisasi agar ekstraksi ciri menjadi
konsisten. Proses normalisasi ini dilakukan
dengan cara menyamakan ukuran citra tiap
karakter menjadi 150x150 piksel. Setiap
karakter akan diubah menjadi ukuran tersebut
secara paksa, sehingga bentuk dari karakter
menjadi tidak proporsional, akan tetapi karena
proses ini dilakukan pada setiap citra sehingga
tidak akan merusak informasi yang
diperlukan. Gambar hasil normalisasi terlihat
pada Gambar 9.
Gambar 9 Hasil Normalisasi Citra
Ekstraksi Ciri
Metode yang digunakan untuk ektraksi ciri
dalam penelitian ini ada dua, yaitu ekstraksi
ciri ICZ dan ICZ+ZCZ. Untuk ektraksi ciri
dengan metode ICZ tahapan yang pertama
adalah dengan menghitung centroid dari citra
karakter hasil segmentasi. Kemudian citra
karakter tersebut dibagi kedalam n bagian
yang sama. Nilai n pada penelitian ini
5,10,15,20,25 dan 30. Setelah citra dibagi
kedalam n bagian yang sama, untuk setiap
piksel berwarna putih yang ada di masingmasing zona dihitung jaraknya terhadap
centroid dengan menggunakan jarak euclid,
kemudian dihitung rata-rata piksel yang ada di
zona tersebut. Hal ini dilakukan terhadap
keseluruhan zona pada citra karakter tersebut.
Nilai rata-rata inilah merupakan ciri dari
karakter tersebut. Hasil dari perhitungan ini
akan berjumlah n ciri. Pembagian jumlah yang
tepat akan sangat berpengaruh terhadap proses
identifikasi.
Tabel 1 Persentasi akurasi pengujian karakter
dengan zona bernilai 5
K=3
K=5
K=7
Fold1
87.78%
85.83%
85.28%
Fold2
85.56%
81.67%
77.78%
Fold3
83.33%
80.28%
77.50%
73.89%
Klasifikasi Citra
Fold4
77.78%
75.28%
Pada proses ini terlebih dahulu dilakukan
pembagian data latih dan data uji terhadap
seluruh citra karakter yang berjumlah 1800
citra. Masing-masing karakter yang berjumlah
36 diwakili oleh 50 citra. Data latih diambil
40 citra untuk masing-masing karakter, dan
sisanya 10 citra masing-masing karakter
merupakan data uji.
Fold5
78.33%
74.72%
72.50%
Rata-Rata
82.56%
79.56%
77.39%
Pembagian data uji dan data latih ini
menggunakan K-Fold Cross Validation
dengan k bernilai 5. Hasilnya berupa 5 variasi
data latih dan data uji.
Untuk setiap data latih akan terbentuk
matriks berukuran n x 1440. Nilai n
merupakan jumlah zona yang ditentukan
dalam ekstraksi ciri. Sedangkan data latih
akan terbentuk matriks berukuran n x 360.
Jumlah kelas dalam klasifikasi citra ini
berjumlah 36 sesuai dengan karakter yang
ada.
Matriks
yang
terbentuk
tersebut
merupakan matriks ciri masing-masing
karakter yang disatukan secara berurutan
sehingga memudahkan dalam penentuan grup.
Grup merupakan label kelas untuk masingmasing baris matriks dari data latih. Label ini
dibutuhkan dalam proses klasifikasi dengan
menggunakan K-NN. Grup yang terbentuk
berupa matriks dengan ukuran 1 x 1440.
Pengujian Karakter
Pengujian karakter dilakukan dengan KNN. Untuk pengujian pertama, akan dilakukan
dengan menggunakan input hasil ekstraksi ciri
dengan zona 5. Pengujian ini dilakukan
dengan menggunakan nilai k atau tetangga
terdekat berjumlah 3, 5 dan 7. Pengujian
menggunakan 5 variasi data uji dan data latih
yang telah dihasilkan pada proses K-Fold
Cross Validation . Pengujian ini menghasilkan
nilai akurasinya berbeda-beda. Berikut tabel
akurasi yang didapat pada pengujian karakter
hasil ekstraksi ciri dengan zona bernilai 5.
Dari Tabel 1 terlihat bahwa hasil pengujian
karakter dengan 3 tetangga terdekat
menghasilkan rata-rata akurasi paling tinggi
yaitu 82.56%. Maka untuk percobaan
selanjutnya hanya akan dilakukan dengan nilai
k
berjumlah
3.Selanjutnya
dilakukan
percobaan yang sama dengan zona yang
berbeda yaitu 10, 15 20 dan 25. Rata-rata
akurasi dari percobaan dengan variasi zona
tersebut terlihat pada Tabel 2.
Tabel 2 Persentasi akurasi pengujian dengan
variasi zona
Zona
Rata-Rata Akurasi
5
82.56%
10
92.72%
15
93.78%
20
93.06%
25
93.24%
Dari hasil percobaan tersebut terlihat
bahwa akurasi dengan jumlah zona 15
menghasilkan nilai tertinggi yaitu 93.78%.
Maka untuk identifikasi plat nomor kendaraan
akan dilakukan pengujian menggunakan hasil
ektrasi ciri dengan zona 15 dan nilai 3 sebagai
jumlah tetangga terdekat.
Pengujian Plat
Berbeda dengan pengujian karakter,
pengujian plat menggunakan data latih tidak
menggunakan data hasil K-Fold tapi
menggunakan keseluruhan hasil dari ekstraksi
ciri dengan menggunakan zona berjumlah 15.
Pengujian dilakukan pada citra plat nomor
kendaraan secara utuh. Plat yang digunakan
dalam proses pengujian ini menggunakan 40
citra plat kendaraan.
Hasil akurasi yang akan didapat tentu saja
akan lebih kecil dibandingkan dengan
pengujian
karakter.
Karena
pada
kenyataannya apabila dalam pengujian
terdapat satu saja karakter yang salah
teridentifikasi, maka hasil identifikasi karakter
akan dianggap salah secara keseluruhan.
Pengujian pertama dilakukan dengan data
latih hasil ekstraksi ciri menggunakan
algoritma ICZ. Setelah dilakukan pengujian
terhadap 40 citra tersebut ternyata terdapat 4
pengujian dengan hasil identifikasi yang
salah. Sehingga akurasi yang didapat dalam
pengujian plat nomor menggunakan ekstraksi
ciri ICZ adalah 85%.
Kesalahan pada identifikasi plat nomor
bukan saja karena klasifikasi yang tidak
akurat akan tetapi juga karena gagal pada saat
proses segmentasi, sehingga beberapa simbol
yang seharusnya dikenali sebagai karakter
tidak masuk ke dalam proses klasifikasi.
Kesalahan identifikasi plat nomor pada
pengujian ini dapat dilihat pada Tabel 3.
Tabel 3 Kesalahan identifikasi plat nomor
B560XV
B1003WFB
B2228LL
B8375NW
F1206CS
F8766AJ
6560XV
B1DD8
B2238LL
3375NW
F1Z06CS
F6J
Pada pengujian plat nomor F8766AJ
terlihat kesalahan dengan jelas. Pada plat
nomor tersebut seharusnya teridentifikasi
jumlah karakter sebanyak 7, akan tetapi pada
proses segmentasi hanya dikenali 3 karakter.
Hal ini terjadi karena kualitas pencahayaan
yang buruk dan kondisi platnya sendiri yang
kurang baik. Telihat pada Gambar 8 Contoh
dari plat nomor kendaraan yang gagal
teridentifikasi.
Gambar 8 Plat Yang Gagal Teridentifikasi
DAFTAR PUSTAKA
Acharya T, Ray A K.. 2005. Image Processing
Principles and Applications. Canada:
Willey Interscene.
IDENTIFIKASI KARAKTER PADA PLAT NOMOR KENDARAAN
MENGGUNAKAN EKSTRAKSI FITUR ICZ DAN ZCZ
DENGAN METODE KLASIFIKASI K-NN
oleh:
R. Putri Ayu Pramesti
G64104010
Pembimbing:
Mushthofa, S.Kom., M.Sc
PENDAHULUAN
Latar Belakang
Plat nomor merupakan kode unik yang
terdiri dari susunan huruf dan nomor. Setiap
kendaraan memiliki satu plat nomor yang
dijadikan sebagai kode identitas dari
kendaraan itu sendiri. Karena plat nomor dari
setiap kendaraan bersifat unik, maka plat
nomor sering digunakan dalam setiap
pencatatan identitas kendaraan untuk berbagai
macam keperluan seperti pencataan di tempat
parkir.
Semakin meningkatnya jumlah
kendaraan di Indonesia maka dibutuhkan
suatu aplikasi yang bisa mendeteksi dan
mengenali plat nomor kendaraan secara
otomatis
dan
cepat
sehingga
dapat
memudahkan dalam pencataan plat nomor
kendaraan yang masuk dan keluar dari area
parkir. Aplikasi ini merupakan pengenalan
pola sinyal digital yang terdapat pada gambar.
Terdapat beberapa tahapan dalam proses
pengenalan nomor plat kendaraan. Input citra
plat nomor dirubah dahulu menjadi citra biner,
kemudian dilakukan segmentasi untuk
memisahkan
objek
karakter
dengan
background . Setelah itu, tiap karakter dari plat
nomor disegmentasi dan masing-masing
karakter dilakukan ekstraksi ciri. Kemudian,
dilakukan klasifikasi tiap karakter satu per
satu dengan menggunakan metode klasifikasi
tertentu.
Sampai saat ini telah dilakukan banyak
penelitian mengenai hal ini dan masih terus
dikembangkan untuk mencari metode terbaik
dalam memecahkan permasalahan. Salah
satunya yaitu penelitian yang dilakukan oleh
(Lesmana 2012) yang melakukan pengenalan
plat nomor dengan input gambar digital yang
diambil dari depan atau belakang kendaraan
secara
lurus.
Gambar
diekstraksi
menggunakan Image Centroid and Zone
(ICZ). Kemudian diolah dan diklasifikasi
menggunakan metode klasifikasi jaringan
syaraf tiruan back-propagation . Akurasi yang
didapat dari penelitian ini belum begitu baik
yaitu 55.50% untuk deteksi terhadap 40 buah
plat nomor dan 84.06% untuk pendeteksian
masing-masing karakter.
Oleh karena itu penelitian ini dilakukan
menggunakan metode klasifikasi K-NN.
Ekstraksi ciri yang digunakan adalah ICZ,
ZCZ dan gabungan dari keduanya. Seperti
mengacu pada penelitian yang telah dilakukan
oleh (Mulia 2012) yang melakukan
pengenalan aksara sunda menggunakan
metode ekstraksi ciri ICZ, dan gabungan
keduanya. Pada penelitian sebelumnya juga
telah dilakukan pengenalan tulisan tangan
India dengan menggunakan zone based
projection distance feature extraction akurasi
yang
didapat
yaitu
94.70
%
(Rajashekararadhya 2008). Pada penelitian ini
akan
dilakukan
percobaan
dengan
menggabungkan metode ekstraksi ciri ICZ,
ICZ+ZCZ dan metode klasifikasi K-NN untuk
melihat keberhasilan dari kedua metode
tersebut dan mendapatkan jumlah zona yang
terbaik dalam pengenalan plat nomor.
Tujuan
Tujuan dilakukannya penelitian ini adalah
untuk :
1. Menentukan metode ekstraksi ciri yang
paling efektif di antara metode ekstraksi
ciri yang digunakan dan menentukan
jumlah zona yang paling baik untuk
pengenalan plat nomor kendaraan.
2. Mengetahui kinerja dari metode klasifikasi
K-Nearest Neighbor
(KNN) dalam
melakukan pengenalan plat nomor
kendaraan.
konversinya ke citra grayscale dapat dilihat
pada Gambar 1.
Ruang Lingkup
Ruang lingkup dari penelitian ini terbatas
pada :
1. Plat nomor yang dikenali hanya plat
nomor dengan format standar (bukan
format TNI/POLRI).
2. Data yang diolah berasal dari citra dengan
format JPEG.
3. Karakter yang dikenali adalah huruf
alphabet kapital (A sampai Z) dan angka
(0 sampai 9).
4. Pemotretan plat dilakukan dari depan atau
belakang kendaraan secara berhadapan
lurus.
5. Hanya bagian plat nomor yang akan
digunakan sebagai data yang diteliti.
Manfaat
Manfaat penelitian ini adalah untuk
mempermudah dan mempercepat proses
pencatatan plat nomor kendaraan yang masuk
ke suatu area parkir sehingga diharapkan akan
mengurangi antrian dan human error dalam
pengetikan.
TINJAUAN PUSTAKA
Pengolahan Citra Digital
Citra merupakan suatu fungsi kontinyu
dari intensitas cahaya dalam bidang dua
dimensi. Dengan proses sampling dan
kuantisasi, fungsi kontinyu dari citra dirubah
menjadi fungsi diskret. Pada aplikasi ini akan
diterapkan beberapa proses pengolahan citra
yaitu:
Grayscale Image
Pada citra berwarna satu nilai pixel terdiri
dari 3 layer yaitu red, green dan blue. Rentang
nilai dari tiap layer berkisar antara 0-255.
Sedangkan pada citra grayscale representasi
citranya bernilai sama untuk tiap layer . Citra
yang dihasilkan dari grayscale berupa citra
abu-abu. Citra grayscale sangat berbeda dari
citra biner, karena citra biner merupakan citra
hanya memiliki dua variasi nilai yaitu gelap
dengan nilai piksel 0 dan terang dengan nilai
piksel 255 (Shapiro dan Stockman 2001).
sedangkan citra grayscale warnanya beragam
yang merupakan rentang antara putih dan
hitam. Perbandingan gambar RGB dan hasil
Gambar 1. Citra RGB dan grayscale
Edge Detection
Edge detection adalah operasi yang
bertujuan untuk mereduksi citra dan hanya
menampilkan tepi dari citra itu sendiri (Baxes
1984). Deteksi ini dilaku-kan dengan cara
menemukan perbedaan yang signifikan antara
satu piksel dengan piksel tetangganya. Deteksi
ini dilakukan secara vertikal dan horizontal.
Perbedaan proses antara deteksi tepi vertikal
dan horizontal hanya terletak pada filter yang
digunakan.
Image Segmentation
Segmentasi merupakan proses mengklaster
citra menjadi beberapa bagian objek sehingga
akan memudahkan untuk mengidentifikasi
objek yang bermakna dari suatu citra (Deng et
al. 1999). Ada dua pen-dekatan umum dalam
melakukan segmentasi citra yaitu pendekatan
discontinuity dan pendekatan similarity.
Pendekatan dis-continuity memprartisi citra
berdasarkan perubahan intensitas cahaya
secara tiba-tiba, sedangkan pendekatan
similarity
membagi
citra
berdasarkan
kesamaan sifat-sifat tertentu (region based ).
Cany Detection
Algoritma deteksi tepi canny dikenal
sebagai algoritma yang optimal dalam
melakukan pendeteksian tepi (Acharya 2005).
Ada beberapa tahapan dalam deteksi tepi
cany, yaitu :
1.
2.
3.
4.
Smoothing : menghilangkan noise
dengan efek blurring
Finding Gradient: Menandai tepi dari
gambar
yang
memiliki
nilai
magnitute yang besar.
Non-maximum suppression : Menghilangkan nilai-nilai yang tidak
maksimum.
Double Thresholding : Dua buah
thershold dipilih untuk menentukan
jalur tepi.
5.
Metode Ekstraksi Ciri Zoning
6.
Sampai saat ini ada banyak metode
ekstraksi ciri yang digunakan. Beberapa
metode ekstraksi ciri yang sering digunakan
adalah Template matching , Unitary transform
Zoning .
Zoning merupakan salah satu metode
ekstraksi ciri yang populer dan seberhana
yang digunakan dalam ekstraksi fitur. Metode
ekstraksi zoning akan membagi citra menjadi
beberapa zona yang berukuran sama, untuk
kemudian dari setiap zona akan diambil
cirinya. Ada beberapa algoritma untuk metode
ekstraksi ciri zoning , diantaranya metode
ekstraksi ciri jarak metrik ICZ (image
centroid and zone ), metode ekstraksi ciri jarak
metrik ZCZ (zone centroid and zone ), dan
metode ekstraksi ciri gabungan (ICZ + ZCZ).
Ketiga algoritma tersebut menggunakan citra
digital sebagai input dan menghasilkan fitur
untuk klasifikasi dan pengenalan sebagai
outputnya. Berikut merupakan tahapan dalam
proses ekstraksi ciri ICZ, ZCZ dan ICZ+ZCZ
(Rajashekararadhya 2008) .
7.
Algoritma 3 : ICZ+ZCZ berdasarkan
jarak metrik.
1.
2.
3.
4.
5.
6.
7.
8.
9.
Algoritma 1: Image Centroid and Zone (ICZ)
berdasarkan jarak metrik.
10.
Tahapan
11.
1.
2.
Hitung centroid dari citra masukkan.
Bagi citra masukkan kedalam n zona
yang sama
3. Hitung jarak antara centroid citra
dengan masing-masing piksel yang
ada dalam zona
4. Ulangi langkah ke 3 untuk setiap
piksel yang ada di zona
5. Hitung rata-rata jarak antara titik-titik
tersebut
6. Ulangi langkah-langkah tersebut
untuk keseluruhan zona
7. Hasilnya adalah n fitur yang akan
digunakan dalam klasifikasi dan
pengenalan
Algoritma 2 : Zone Centroid Zone (ZCZ)
berdasarkan jarak metrik.
1.
2.
3.
4.
Bagi citra masukkan ke dalam
sejumlah n bagian yang sama
Hitung centroid dari masing-masing
zona
Hitung jarak antara centroid masingmasing zona dengan piksel yang ada
di zona.
Ulangi langkah ke 3 untuk seluruh
piksel yang ada di zona
Hitung rata-rata jarak antara titik-titik
tersebut
Ulangi langkah 3-7 untuk setiap zona
secara berurutan
Hasilnya adalah n fitur yang akan
digunakan dalam klasifikasi dan
pengenalan
Hitung centroid dari citra masukan
Bagi citra masukkan ke dalam
sejumlah n bagian yang sama
Hitung jarak antara centroid citra
dengan setiap piksel yang ada dalam
zona
Ulangi langkah 3 untuk semua piksel
yang ada dalam zona
Hitung jarak rata-rata antara titik-titik
tersebut
Hitung centroid tiap zona
Hitung jarak antara centroid zona
dengan setiap piksel yang ada dalam
zona
Ulangi langkah 7 untuk semua pixel
yang ada dalam zona
Hitung jarak rata-rata antara titik-titik
tersebut
Ulangi langkah 3-9 untuk semua
zona secara berurutan
Hasilnya akan didapatkan 2n ciri
untuk klasifikasi dan pengenalan
K-Nearest Neighbor (K-NN)
K-NN merupakan algoritma supervised
dalam klasifikasi dimana hasil dari kueri
instance
yang
baru
diklasifikasikan
berdasarkan mayoritas kategori pada k
tetangga terdekat. Secara umum ada beberapa
tahap dalam proses klasifikasi K-NN. Pertama
tentukan nilai k, k merupakan jumlah tetangga
terdekat yang akan menentukan kueri baru
masuk ke kelas mana. Kemudian cari k
tetangga terdekat dengan cara menghitung
jarak titik kueri dengan titik training. Setelah
mengetahui jarak masing-masing titik training
dengan titik kueri, kemudian lihat nilai yang
paling kecil. Ambil k nilai terkecil selanjutnya
lihat kelasnya. Kelas yang paling banyak
merupakan kelas dari kueri baru (Kozma
2008).
Dekat atau jauhnya jarak titik dengan
tetangganya bisa dihitung dengan menggunakan Euclidean distance . Euclidean
distance direpresentasi-kan sebagai berikut :
(1)
D(a,b) merupakan jarak antara vektor a
yang merupakan titik yang telah diketahui
kelasnya dan b berupa titik baru dari matriks
berukuran d dimensi. Jarak antara vektor baru
dengan titik-titik training dihitung dan
diambil k buah vektor terdekat. Titik baru
diprediksi masuk ke kelas dengan klasifikasi
terbanyak dari titik-titik tersebut.
METODE PENELITIAN
Untuk dapat melakukan penelitian baik,
diperlukan sebuah metode penelitian yang
baik serta terencana. Skema penelitian yang
akan dilakukan dapat dilihat pada Gambar 2.
sebesar 5 MP (Lesmana 2012). Citra yang
dikumpulkan harus memperhatikan jumlah
kemunculan masing-masing karakter, dimana
sebaran frekuensinya merata untuk setiap
karkter. Hal tersebut dilakukan agar data latih
yang dimiliki dapat lebih akurat untuk setiap
karakter yang ada.
Selain itu perlu citra yang dikumpulkan
harus memiliki resolusi yang sama. Dengan
demikian pemrosesan citra yang akan
dilakukan dapat lebih cepat.
Pra-proses citra
Pra-processing dilakukan agar citra plat
nomor bisa diekstraksi. Gambar plat nomor
yang didapat dari hasil pengumpulan data
merupakan gambar RGB. Gambar tersebut
kemudian dirubah mencadi citra grayscale
agar proses komputasi bisa lebih efisien.
Proses perubahan citra RGB menjadi
grayscale dapat menggunakan rumus :
Piksel = 0.2989 * R + 0.5870 * G + 0.1140 * B
Dimana R, G, dan B merupakan intensitas
dari masing-masing warna merah, hijau, dan
biru pada citra. Setelah dilakukan konversi
citra RGB ke grayscale kemudian citra
dibersihkan dari noise dengan menggunakan
median filter.
Deteksi Tepi
Deteksi
tepi
dilakukan
untuk
mendapatkan tepi dari tiap karakter yang ada
pada citra. Deteksi tepi yang digunakan dalam
penelitian ini adalah deteksi tepi canny.
Contoh hasil dari proses deteksi tepi pada plat
nomor menggunakan canny dapat dilihat pada
Gambar 3.
Gambar 3. Gambar grayscale dari plat nomor
(kiri) dan hasil deteksi tepi dengan canny
(kanan)
Gambar 2 Skema metode penelitian
Pengumpulan Data
Citra yang digunakan merupakan hasil
tangkapan kamera handphone dengan resolusi
Agar hasil dari deteksi tepi bisa lebih baik
dan tidak memunculkan tepi yang tidak
penting, maka pada saat proses deteksi
digunakan satu parameter yang akan menjadi
batas atau threshold dalam pendeteksian.
Segmentasi Citra
pn = Nilai pixel ke-n
Agar karakter pada cita plat nomor bisa
dikenali satu per satu maka harus dilakukan
segmentasi pada citra masukkan. Selain itu
segmentasi dilakukan agar bisa mengeliminasi
objek-objek yang tidak diperlukan. Hal ini
dilakukan dengan cara mensegmentasi citra
berdasarkan area. Objek yang memiliki citra
yang terhubung akan dianggap sebagai satu
area. Pada penelitian ini, untuk mendeteksi
piksel-piksel yang terhubung digunakan
metode 8-connected . Tiap area yang didapat
kemudian dihitung luasnya. Kemudian luas
area tersebut dibandingkan dengan batas
minimum luas area. Jika luas area lebih dari
batas minimum maka area tersebut akan
diaggap sebagai satu karakter. Contoh hasil
segmentasi citra plat nomor bisa dilihat pada
Gambar 4.
Citra plat nomor akan dibagi menjadi
beberapa bagian sama besar. Pada penelitian
ini digunakan jumlah zone sebanyak 5, 10, 15,
20 dan 25. Untuk mencari jarak antara
centroid dengan koordinat pixel digunakan
metode Euclidean dua dimensi. Berikut ini
rumus jarak menggunakan Euclidean.
Gambar 4. Hasil segmentasi citra plat nomor
Citra diatas memiliki ukuran yang sama
karena dilakukan resize pada masing-masing
citra hasil proses segmentasi.
Ekstrasi Ciri
Pada tahapan ini akan dilakukan proses
ektraksi untuk mendapatkan fitur yang akan
digunakan dalam klasifikasi dan pengenalan.
Metode ektraksi ciri yang digunakan dalam
penelitian ini adalah ketiga variasi algoritma
metode zoning, yaitu Image Centroid and
Zone (ICZ) dan gabungan dari ICZ dan Zone
Centroid and Zone (ZCZ).
Sebelum proses ekstraksi dilakukan,
harus dapat dipastikan bahwa dimensi dari
setiap karakter berukuran sama. Untuk
menghitung nilai centroid bisa menggunakan
rumus sebagai berikut :
Xc = x 1.p 1 + x 2.p 2 + ... + xn.pn
p 1 + p 2 + ... + pn
Yc = y 1.p 1 + y 2.p 2 + ... + yn.pn
p 1 + p 2 + ... + pn
dimana,
Xc = Centroid koordinat x
Yc = Centroid koordinat y
Xn = Koordinat x dari pixel ke-n
Yn = Koordinat y dari pixel ke-n
Metode ekstraksi ciri ICZ dan ZCZ
menggunakan rumus yang sama dalam
menghitung centroid. Perbedaan antara ICZ
dan ZCZ terletak pada perbedaan alur dari
algoritma proses ekstraksi. Pada metode ICZ
perhitungan nilai centroid dari citra dilakukan
sebelum citra dibagi ke dalam beberapa area
yang sama besar sehingga nilai centroid pada
proses ekstraksi ICZ hanya ada satu,
sedangkan pada metode ektraksi ZCZ
perhitungan centroid dilakukan setelah citra
dibagi ke dalam beberapa daerah yang sama
besar. Perhitungan centroid pada metode
ekstraksi ZCZ akan menghasilkan sejumlah
nilai centroid, banyak nilai centroid
tergantung pada jumlah daerah pembagian
citra.
Pada metode ekstraksi ICZ+ZCZ fitur yang
dihasilkan sejumlah 2n. Hal ini disebabkan
karena perhitungan centroid dan jarak antara
tiap titik piksel dengan centroid dilakukan
sebanyak dua kali yaitu sebelum citra dibagi
ke dalam sejumlah daerah yang sama besar
dan setelah citra dibagi ke dalam sejumlah
daerah yang sama besar.
Klasifikasi menggunakan K-NN
K-NN merupakan metode klasifikasi citra
dengan cara menghitung kedekatan antara titik
baru dengan titik training yang telah diketahui
kelasnya. Kelas yang ada dalam pengenalan
plat nomor ini ada 36 kelas (26 huruf dan 9
angka). Dalam proses klasifikasi sebelumnya
harus ditentukan dahulu nilai k, yaitu jumlah
tetangga terdekat yang akan dilihat kelasnya
untuk menentukan kelas terbanyak yang
merupakan kelas dari titik baru. Nilai k akan
sangat berpengaruh pada akurasi hasil
klasifikasi. Nilai k yang terlalu kecil akan
menyebabkan
ketidakstabilan
hasil.
Sedangkan nilai k yang terlalu besar akan
menyebabkan bias. Nilai k pada penelitian ini
adalah 3, 5, dan 7.
Evaluasi dan Analisis Hasil
Tahap ini merupakan tahap terakhir untuk
mengevaluasi kekurangan dan kelebihan dari
metode yang digunakan. Hal tersebut dilihat
dari perbandingan hasil klasifikasi citra
dengan nomor polisi aslinya. Hasil yang tidak
sesuai maupun sesuai dicatat untuk
menentukan seberapa besar akurasi dari
metode ini. Untuk menghitung akurasi dapat
menggunakan rumus
: Jumlah citra yang berhasil terdekteksi
N
: Jumlah data yang ada.
Lingkungan Pengembangan Sistem
Proses
pengerjaan
penelitian
ini
menggunakan perangkat keras dan perangkat
lunak dengan spesifikasi sebagai berikut :
Perangkat keras berupa notebook:
Processor Intel Pentium Core2Duo
@1.99GHz,
RAM kapasitas 2 GB,
Harddisk kapasitas 250GB,
Monitor dengan resolusi 1280x800 piksel.
Perangkat lunak berupa:
Sistem operasi Microsoft Windows 7
Service Pack 1x.
Aplikasi pemrograman Matlab R200b.
HASIL DAN PEMBAHASAN
Pengumpulan Data
Dalam penelitian ini data yang diperlukan
adalah citra dari plat nomor kendaraan. Data
yang digunakan merupakan data yang diambil
dari proses pemotretan sebanyak 100 plat
mobil kendaraan.
Dari 100 buah plat nomor kendaraan
kemudian diambil potongan karakter yang
mewakili seluruh kelas yaitu huruf sebanyak
26 dan angka sebanyak 10, jadi keseluruhan
karakter ada 36. Untuk masing-masing
karakter diambil sebanyak 50 citra, artinya
kita akan mendapatkan citra karakter
sebanyak 1800 buah. Citra tersebut nantinya
akan digunakan sebagai data uji dan data latih.
Contoh data karakter dapat dilihat pada
Gambar 5.
Gambar 5. Data Karakter
Pra-proses Citra
Tidak semua citra yang didapat dari hasil
pengumpulan data berkualitas baik, terkadang
karena pencahayaan dan lain-lain kualitas
citra menjadi kurang baik dan terdapat noise.
Hal ini sebaiknya tidak terjadi, karena dengan
adanya noise akurasi pendeteksian karakter
akan berkurang. Oleh karena itu, sebelum
dilakukan ekstraksi ciri, terlebih dahulu
dilakukan reduksi noise dengan menggunakan
median filter.
Langkah pertama yang dilakukan adalah
mengubah citra RGB menjadi citra grayscale
untuk mempercepat komputasi. Kemudian
dilakukan reduksi noise dengan median filter.
Median filter dipilih karena merupakan
metode yang cocok untuk menghilangkan
noise berupa salt&paper . Median filter yang
digunakan dalam penelitian ini adalah matriks
dua dimensi dengan batas matriks 3x3. Nilai
piksel akan dirubah menjadi nilai tengah dari
piksel tersebut dibandingkan dengan delapan
piksel tetangganya yang telah diurutkan.
Deteksi Tepi
Proses deteksi tepi dilakukan dengan
menggunakan metode canny’s edge detection .
Nilai threshold yang terlalu rendah akan
menyebabkan garis yang bukan tepi dari objek
muncul, sedangkan nilai threshold yang
terlalu tinggi akan menyebabkan sebagian dari
objek menghilang, sehingga nilai 0,5 dipilih
sebagai threshold untuk deteksi tepi.
Pada tahap ini citra yang dihasilkan berupa
citra biner yang merepresentasikan garis tepi
untuk setiap objek. Garis tepi inilah yang
memisahkan objek yang diperlukan dengan
objek lainnya. Contoh hasil deteksi
menggunakan canny’s detection bisa dilihat
pada Gambar 6.
Gambar 6 Hasil Deteksi Canny
Segmentasi Citra
Setelah melalui proses deteksi tepi
menggunakan canny’s edge detection,
kemudian
citra
disegmentasi
untuk
memisahkan objek-objek yang akan diamati.
Dalam penelitian ini objek yang diamati
adalah karakter huruf dan angka yang terdapat
pada plat nomor. Dalam hal ini perlu
identifikasi mana simbol yang merupakan
huruf, angka dan mana yang bukan
merupakan keduanya.
Proses ini dilakukan dengan menggunakan
metode 8-connected . Setiap piksel yang
terhubung akan diberi label yang sama dengan
memperhatikan 8 piksel tetangganya. Proses
ini dilakukan satu per satu untuk setiap piksel
yang ada pada citra hasil deteksi tepi sehingga
akan terbentuk kelompok piksel dengan
masing-masing label yang berbeda.
Setelah terbentuk kelompok piksel
berdasarkan label, maka akan dihitung
panjang dan lebar untuk masing-masing
kelompok.
Untuk mengetahui apakah
kelompok piksel tersebut adalah suatu
karakter angka dan huruf atau bukan, maka
dilakukan seleksi kondisi berdasarkan panjang
dan lebar dari kelompok piksel tersebut
dengan kondisi :
Jika Panjang > 150 dan Panjang < 140 dan
Lebar >20 dan Lebar < 100
Maka kelompok piksel =Karakter
Kelompok piksel yang memenuhi kondisi
diatas akan diprediksi sebagai suatu karakter.
Permasalahan
yang
muncul
dengan
melakukan pelabelan menggunakan 8connected adalah pada saat pelabelan untuk
karakter-karakter tertentu yang memiliki lebih
dari satu tepian yang tidak terputus.
Contohnya karakter 0 (nol), pada saat
pelabelan karakter tersebut akan memuliki dua
kelompok label yang berbeda, karena secara
visual karakter 0(nol) terdiri dari dua buah
elips yang terpisah. Bisa dilihat ilustrasinya
pada Gambar 7.
Gambar 7 Pelabelan Karakter 0 (nol)
Setiap karakter yang memiliki karakteristik
seperti angka 0 (nol), akan mengalami
permasalahan yang sama. Untuk mengatasi
hal tersebut maka dilakukan pemeriksaan
posisi masing-masing label, apabila suatu
label ada dalam area label yang lain, maka
label tersebut akan dijadikan satu. Dengan
begini maka masing-masing label akan
mewakili karakter yang teridentifikasi pada
citra plat kendaraan. Contoh hasil segmentasi
bias dilihat pada Gambar 8.
Gambar 8 Hasil Segmentasi Citra
Citra yang telah melalui proses segmentasi
telah terpisah per karakter dengan ukuran
yang beragam sesuai dengan ukuran karakternya masing-masing.
Normalisasi Citra
Gambar citra yang dihasilkan pada proses
segmentasi memiliki ukuran yang berbedabeda, oleh karena itu diperlukan proses
normalisasi agar ekstraksi ciri menjadi
konsisten. Proses normalisasi ini dilakukan
dengan cara menyamakan ukuran citra tiap
karakter menjadi 150x150 piksel. Setiap
karakter akan diubah menjadi ukuran tersebut
secara paksa, sehingga bentuk dari karakter
menjadi tidak proporsional, akan tetapi karena
proses ini dilakukan pada setiap citra sehingga
tidak akan merusak informasi yang
diperlukan. Gambar hasil normalisasi terlihat
pada Gambar 9.
Gambar 9 Hasil Normalisasi Citra
Ekstraksi Ciri
Metode yang digunakan untuk ektraksi ciri
dalam penelitian ini ada dua, yaitu ekstraksi
ciri ICZ dan ICZ+ZCZ. Untuk ektraksi ciri
dengan metode ICZ tahapan yang pertama
adalah dengan menghitung centroid dari citra
karakter hasil segmentasi. Kemudian citra
karakter tersebut dibagi kedalam n bagian
yang sama. Nilai n pada penelitian ini
5,10,15,20,25 dan 30. Setelah citra dibagi
kedalam n bagian yang sama, untuk setiap
piksel berwarna putih yang ada di masingmasing zona dihitung jaraknya terhadap
centroid dengan menggunakan jarak euclid,
kemudian dihitung rata-rata piksel yang ada di
zona tersebut. Hal ini dilakukan terhadap
keseluruhan zona pada citra karakter tersebut.
Nilai rata-rata inilah merupakan ciri dari
karakter tersebut. Hasil dari perhitungan ini
akan berjumlah n ciri. Pembagian jumlah yang
tepat akan sangat berpengaruh terhadap proses
identifikasi.
Tabel 1 Persentasi akurasi pengujian karakter
dengan zona bernilai 5
K=3
K=5
K=7
Fold1
87.78%
85.83%
85.28%
Fold2
85.56%
81.67%
77.78%
Fold3
83.33%
80.28%
77.50%
73.89%
Klasifikasi Citra
Fold4
77.78%
75.28%
Pada proses ini terlebih dahulu dilakukan
pembagian data latih dan data uji terhadap
seluruh citra karakter yang berjumlah 1800
citra. Masing-masing karakter yang berjumlah
36 diwakili oleh 50 citra. Data latih diambil
40 citra untuk masing-masing karakter, dan
sisanya 10 citra masing-masing karakter
merupakan data uji.
Fold5
78.33%
74.72%
72.50%
Rata-Rata
82.56%
79.56%
77.39%
Pembagian data uji dan data latih ini
menggunakan K-Fold Cross Validation
dengan k bernilai 5. Hasilnya berupa 5 variasi
data latih dan data uji.
Untuk setiap data latih akan terbentuk
matriks berukuran n x 1440. Nilai n
merupakan jumlah zona yang ditentukan
dalam ekstraksi ciri. Sedangkan data latih
akan terbentuk matriks berukuran n x 360.
Jumlah kelas dalam klasifikasi citra ini
berjumlah 36 sesuai dengan karakter yang
ada.
Matriks
yang
terbentuk
tersebut
merupakan matriks ciri masing-masing
karakter yang disatukan secara berurutan
sehingga memudahkan dalam penentuan grup.
Grup merupakan label kelas untuk masingmasing baris matriks dari data latih. Label ini
dibutuhkan dalam proses klasifikasi dengan
menggunakan K-NN. Grup yang terbentuk
berupa matriks dengan ukuran 1 x 1440.
Pengujian Karakter
Pengujian karakter dilakukan dengan KNN. Untuk pengujian pertama, akan dilakukan
dengan menggunakan input hasil ekstraksi ciri
dengan zona 5. Pengujian ini dilakukan
dengan menggunakan nilai k atau tetangga
terdekat berjumlah 3, 5 dan 7. Pengujian
menggunakan 5 variasi data uji dan data latih
yang telah dihasilkan pada proses K-Fold
Cross Validation . Pengujian ini menghasilkan
nilai akurasinya berbeda-beda. Berikut tabel
akurasi yang didapat pada pengujian karakter
hasil ekstraksi ciri dengan zona bernilai 5.
Dari Tabel 1 terlihat bahwa hasil pengujian
karakter dengan 3 tetangga terdekat
menghasilkan rata-rata akurasi paling tinggi
yaitu 82.56%. Maka untuk percobaan
selanjutnya hanya akan dilakukan dengan nilai
k
berjumlah
3.Selanjutnya
dilakukan
percobaan yang sama dengan zona yang
berbeda yaitu 10, 15 20 dan 25. Rata-rata
akurasi dari percobaan dengan variasi zona
tersebut terlihat pada Tabel 2.
Tabel 2 Persentasi akurasi pengujian dengan
variasi zona
Zona
Rata-Rata Akurasi
5
82.56%
10
92.72%
15
93.78%
20
93.06%
25
93.24%
Dari hasil percobaan tersebut terlihat
bahwa akurasi dengan jumlah zona 15
menghasilkan nilai tertinggi yaitu 93.78%.
Maka untuk identifikasi plat nomor kendaraan
akan dilakukan pengujian menggunakan hasil
ektrasi ciri dengan zona 15 dan nilai 3 sebagai
jumlah tetangga terdekat.
Pengujian Plat
Berbeda dengan pengujian karakter,
pengujian plat menggunakan data latih tidak
menggunakan data hasil K-Fold tapi
menggunakan keseluruhan hasil dari ekstraksi
ciri dengan menggunakan zona berjumlah 15.
Pengujian dilakukan pada citra plat nomor
kendaraan secara utuh. Plat yang digunakan
dalam proses pengujian ini menggunakan 40
citra plat kendaraan.
Hasil akurasi yang akan didapat tentu saja
akan lebih kecil dibandingkan dengan
pengujian
karakter.
Karena
pada
kenyataannya apabila dalam pengujian
terdapat satu saja karakter yang salah
teridentifikasi, maka hasil identifikasi karakter
akan dianggap salah secara keseluruhan.
Pengujian pertama dilakukan dengan data
latih hasil ekstraksi ciri menggunakan
algoritma ICZ. Setelah dilakukan pengujian
terhadap 40 citra tersebut ternyata terdapat 4
pengujian dengan hasil identifikasi yang
salah. Sehingga akurasi yang didapat dalam
pengujian plat nomor menggunakan ekstraksi
ciri ICZ adalah 85%.
Kesalahan pada identifikasi plat nomor
bukan saja karena klasifikasi yang tidak
akurat akan tetapi juga karena gagal pada saat
proses segmentasi, sehingga beberapa simbol
yang seharusnya dikenali sebagai karakter
tidak masuk ke dalam proses klasifikasi.
Kesalahan identifikasi plat nomor pada
pengujian ini dapat dilihat pada Tabel 3.
Tabel 3 Kesalahan identifikasi plat nomor
B560XV
B1003WFB
B2228LL
B8375NW
F1206CS
F8766AJ
6560XV
B1DD8
B2238LL
3375NW
F1Z06CS
F6J
Pada pengujian plat nomor F8766AJ
terlihat kesalahan dengan jelas. Pada plat
nomor tersebut seharusnya teridentifikasi
jumlah karakter sebanyak 7, akan tetapi pada
proses segmentasi hanya dikenali 3 karakter.
Hal ini terjadi karena kualitas pencahayaan
yang buruk dan kondisi platnya sendiri yang
kurang baik. Telihat pada Gambar 8 Contoh
dari plat nomor kendaraan yang gagal
teridentifikasi.
Gambar 8 Plat Yang Gagal Teridentifikasi
DAFTAR PUSTAKA
Acharya T, Ray A K.. 2005. Image Processing
Principles and Applications. Canada:
Willey Interscene.