Tulisan ini saya angkat dari skripsi S1 saya beberapa tahun lalu mengenai Pengenalan plat nomor kendaraan menggunakan Connected Component Labeling dan K-NN (lengkapnya dapat dibaca lewat Academia.edu).
Segmentasi karakter merupakan proses pembagian daerah dalam suatu citra untuk dikelompokan ke dalam segmen-segmen tertentu. Secara umum, segmentasi karakter dilakukan untuk memisahkan karakter dengan background pada suatu citra digital. Citra yang terdiri dari huruf, angka atau kalimat yang utuh akan dipisahkan menjadi karakter-karakter yang akan berdiri sendiri dan tidak menjadi bagian dari kalimat tertentu agar dapat dikenali misalnya seperti gambar dibawah ini
Gambar 1. Hasil segmentasi karakter
Banyak sekali metode deteksi yang ditawarkan dalam melakukan segmentasi, bisa menggunakan deteksi tepi (edge detection), metode thresholding otsu, growing, shapebased, dan sebagainya. CCL sendiri umumnya digunakan dalam computer vision untuk mendeteksi bagian region pada citra digital dalam bentuk biner. Secara umum, connected
component labeling adalah proses pemberian label yang berbeda pada setiap
karakter sehingga karakter yang satu dengan yang lain dapat dipisahkan
berdasarkan label yang dimilikinya. Kelebihan dari metode connected component labeling ini sendiri adalah tidak terpengaruh
pada kemiringan objek sehingga masih bisa memisahkan objek dengan baik walaupun
posisi objek dalam image dalam
keadaan miring (selama proses threshold
berhasil memisahkan objek dengan jelas).
Menurut (Haralick et al, 1992), langkah-langkah dari algoritma iterative dalam CCL sebagai
berikut:
a.
Langkah
1: Memberi label berbeda pada setiap pixel
hitam. Label yang diberikan berupa angka dan diberikan secara berurutan mulai
dari angka satu.
b.
Langkah
2: Penggantian nilai label dengan melakukan scan
pada image secara mendatar dari kiri
ke kanan, yang dimulai dari atas image
hingga ke bawah image. Pada proses
ini apabila ditemukan pixel hitam ,
akan dilakukan pengecekan nilai label dari pixel
hitam tersebut dengan nilai pixel
hitam disebelah kiri dan nilai label pada pixel
hitam disebelah atas. Nilai label yang terkecil akan menggantikan nilai label
dari dua pixel hitam yang lain.
c.
Langkah
3: Penggantian nilai label dengan melakukan scan
pada image secara mendatar dari kanan
ke kiri, yang dimulai dari bawah image hingga
ke atas image. Pada proses ini
apabila ditemukan pixel hitam , akan
dilakukan pengecekan nilai label dari pixel
hitam tersebut dengan nilai pada pixel
hitam disebelah kanan dan nilai label pada pixel
hitam disebelah bawah. Nilai label yang terkecil akan menggantikan nilai label
dari dua pixel hitam yang lain.
d.
Langkah
4: Ulangi langkah 2 dan 3 hingga tidak ada nilai label yang berubah.
e.
Langkah
5: Memisahkan karakter yang satu dengan lainnya berdasarkan label yang dimiliki
oleh karakter tersebut.
f.
Langkah
6: Berhenti.
Bagaimana CCL dapat digunakan untuk melakukan segmentasi? Seperti ini analoginya
CCL mengecek nilai hitam pixel pertama dengan scanline dari kiri kanan atas bawah. Apabila ditemukan nilai hitam berikutnya, maka akan dicek pixel hitam di kiri dan sebelah atas. Jika ditemukan pixel lain berwarna hitam maka masih dianggap dalam 1 region, jika tidak maka dicek lagi mendatar dari kiri ke kanan. Ulangi prosesnya hingga pemeriksaan tidak lagi menemui pixel hitam di bagian kiri atas, kiri kanan, kemudian segmentasi menjadi satu karakter terpisah.
Sekian tulisan dari saya.
SELAMAT MENCOBA, SELAMAT BELAJAR
Sign up here with your email
ConversionConversion EmoticonEmoticon