Triyanto Adi Saputro. 1 , Elha Dhanny H 1 , Andriansyah Ramadhan 1 , Afi Muftihul Situmorang 1 , M Fajar Lazuardi 1 .
1 Teknik Informatika, Fakultas Program Teknologi Informasi dan Ilmu Komputer, Universitas Brawijaya, Malang, Indonesia
Abstrak Seiring dengan pesatnya perkembangan ilmu pengetahuan dan teknologi saat ini menyebabkan banyak bermunculan inovasi yang semakin memudahkan manusia untuk melakukan kegiatan sehari harinya. Salah satu yang mengalami perkembangan pesat adalah Pengolahan Citra. Pada dasarnya Pengolahan Citra Digital merupakan proses untuk melakukan pengolahan atau menganalisis citra digital untuk mengambil informasi yang ada. Pencatatan plat nomor kendaraan di Indonesia pada umumnya masih menggunakan cara konvensional, yaitu dengan mencatat plat nomor kendaraan satu persatu secara manual oleh penjaga parker atau petugas keamanan yang berjaga di tempat tersebut. Pencatatan secara manual dirasa kurang efisien karena sangat bergantung pada kejelian penjaga parkir terlebih saat melakukan pencatatan dalam jumlah besar. . Untuk menghadapai permasalahan ini dikembangkan system Deteksi Posisi Plat Nomor Kendaraan Bermotor Berdasarkan Area Citra. Sistem ini tidak menawarkan proses untuk melakukan pencatatan karakter namun hanya melakukan proses deteksi letak dan pemotongan per karakter pada plat nomor kendaraan yang dapat dijadikan dasar untuk dilakukan pengembangan lebih jauh.
Keywords: pengolahan citra, citra digital, plat nomor kendaraan
I. Pendahuluan Seiring dengan pesatnya perkembangan ilmu pengetahuan dan teknologi saat ini menyebabkan banyak bermunculan inovasi yang semakin memudahkan manusia untuk melakukan kegiatan sehari harinya. Hal ini juga ternyata berimbas pada perilaku konsumennya yang semakin menuntut segalanya serba praktis dan efisien. Salah satu yang mengalami perkembangan pesat adalah Pengolahan Citra. Saat ini banyak sekali produsen alat elektronik yang menanamkan teknologi pengolahan citra pada produknya, seperti teknologi smile detection yang sudah banyak terdapat pada kamera saat kini, atau fitur yang memungkinkan untuk melakukan setting kamera secara otomatis. Pada dasarnya Pengolahan Citra Digital merupakan proses 2
untuk melakukan pengolahan atau menganalisis citra digital untuk mengambil informasi yang ada. Pengolahan ini dapat berarti mengubah bentuk secara visual dari suatu citra tertentu ataupun hanya mengambil informasi atau fitur tertentu dari citra yang nantinya dapat diproses lebih lanjut. Salah satu kasus yang dapat dilakukan modernisasi adalah pencatatan plat nomor kendaraan. Pencatatan plat nomor kendaraan di Indonesia pada umumnya masih menggunakan cara konvensional, yaitu dengan mencatat plat nomor kendaraan satu persatu secara manual oleh penjaga parker atau petugas keamanan yang berjaga di tempat tersebut. Tempat parkir yang sudah menerapkan teknologi saat ini hanya terbatas pada kota - kota besar. Pencatatan secara manual dirasa kurang efisien karena sangat bergantung pada kejelian penjaga parkir terlebih saat melakukan pencatatan dalam jumlah besar. Untuk menghadapai permasalahan ini dikembangkan system Deteksi Posisi Plat Nomor Kendaraan Bermotor Berdasarkan Area Citra. Sistem ini tidak menawarkan proses untuk melakukan pencatatan karakter namun hanya melakukan proses deteksi letak dan pemotongan per karakter pada plat nomor kendaraan yang dapat dijadikan dasar untuk dilakukan pengembangan lebih jauh.
II. Dasar Teori 2.1. Plat Nomor Kendaraan Bermotor Di Indonesia, plat nomor pribadi menggunakan warna dasar hitam dengan karakter berwana putih, sedangkan pola karakter didalamnya memeiliki kesamaan dengan pola kendaraan umum, dengan pola sebagai berikut dimana: KA : Kode Area Kendaraan berupa huruf maksimum jumlah digit adalah 2 digit dan minimum adalah 1 digit. NP: Nomor Plat kendaraan berupa angka angka dengan jumlah digit maksimum adalah 4 digit KT: Karakter Tambahan yang bias ada atau tidak, berupa huruf dengan digit maksimum adalah 2 digit. Pada umumnya karakter tambahan ini menandakan suatu kecamatan atau daerah dari kota tertentu. [1]
2.2. Pengolahan Citra Secara harfiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh alat-alat optik, misalnya mata pada manusia, kamera,pemindai (scanner), dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam.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 3
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 pikselpiksel. Karena itu, berkas yang menyimpan citra biasa disimpan dengan nama BMP. Untuk mengurangi ukuran dari berkas, biasanya berkas citra dimmpatkan dengan menggunakan teknik tertentu, misal yang terkenal yaitu JPEG atau GIF. [2]
III. Metodologi Penelitian 3.1. Metode Pengumpulan Data Metode yang dilakukan dalam penyelesaian permasalahan ini adalah sebagai berikut: 1. Studi Literatur Metode yang dilakukan meliputi pencarian materi dan referensi yang terkait dengan Pengolahan Citra, bahasa penmrograman c#, dan literature lain yang berhubungan dengan system. 2. Perencanaan Sistem Perencanaan system Deteksi Posisi Plat Nomor Kendaraan Bermotor Berdasarkan Area Citra ini menggunakan bahasa pemrograman c#. Masukan system berupa citra yang diambil dengan media optic seperti kamera.
3.2. Proses Pre-processing Citra Tujuan dilakukan proses pre- processing citra adalah untuk menghilangkan fitur fitur yang dirasa tidak dibutuhkan oleh system dengan dilakukan manipulasi parameter - parameter dari citra.
3.2.1. Grayscaling Grayscaling merupakan prose untuk mengubah citra RGB menjadi citra abu abu. Warna RGB pada umumnya dilakukan dengan cara mengisi komponen RGB dengan nilai yang sama. Nilai intensitas grayscale ini sama dengan intensitas RGB biasa yang dari 0 sampai dengan 255. Semakin kecil nilai maka warna yang dihasilkan semakin gelap. Sebaliknya jika nilai semakin besar maka warna yang dihasilkan semakin terang atau putih. Persamaan untuk mengubah citra grayscale adalah sebagai berikut: ! ! !!!!! ! . (i) Atau dapat juga dengan menggunakan persamaan sebagai berikut: Y = 0.229R + 0.587G + 0.114B . (ii)
4
3.2.2. Binerisasi Binerisasi adalah proses untuk mengubah citra RGB menjadi citra biner atau citra 2bit. Pada umumnya pencarian citra biner dilakukan setelah mengubah citra menjadi grayscale agar distribusi warna lebih merata. Prosesnya dilakukan pengubahan sesuai threshold tertentu. Jika nilai greyscale kurang atau sama dengan dari nilai threshold maka diubah menjadi 0 sedangkan jika nilai greyscale lebih dari nilai threshold maka diubah menjadi 255.
3.3. Segmentasi Citra Segmentasi Citra dalam system ini merupakan hal yang vital karena proses ini sangat menentukan keberhasilan dari hasil output system, karena proses ini digunakan untuk menghilangkan fitur - fitur yang bukan merupakan fitur plat dari citra dan membantu untuk menetukan posisi dari plat nomor dari citra.
3.3.1. Edge Detection Tepi merupakan pixel terluar dari suatu objek citra. Tepi biasanya dapat dikenali dari adanya perubahan nilai intensitas secara drastis dalam jarak yang singkat. Tujuan dari dilakukannya edge detection adalah untuk memperjelas garis batas atau boundary dari suatu objek dalam citra
3.3.2. Morfologi Citra Morfologi citra merupakan proses untuk menghasilkan fitur yang lebih presisi ketika dilakukan analisa citra. Morfologi Citra terdiri dari dilasi dan erosi, namun morfologi citra yang digunakan dalam system ini hanya erosi. Erosi adalah proses pengurangan pixel dari objek dalam citra.
3.3.3. Pencarian Posisi Pada proses pencarian posisi ini adalah proses yang dilakukan setelah tahap pre-proscessing dan segmentasi citra. Pencarian posisi dilakukan untuk mencari batasan batasan posisi citra untuk selanjutnya dilakukan cropping. Posisi plat ditandai oleh nilai 255 yang terluar dari objek. Variabel posisi objek plat diwakili oleh xmin, xmax, ymin dan ymax.
3.4. Pemotongan Per Karakter Proses pemotongan per karakter dilakukan dengan menghitung panjang dengan cara mencari jarak dari xmin dan xmax dan kemudian dibagi menjadi 10 bagian sesuai dengan jumlah total karakter dan spasi yang diterapkan dalam pembuatan plat nomor di Indonesia.
IV. Hasil dan Pembahasan Untuk menyelesaikan permasalahan ini dilakukan beberapa tahap yaitu: 4.1. Greyscaling Pada tahap awal citra melalui tahap grayscaling, yaitu perubahan citra RGB 5
menjadi grayscale. Persamaan yang digunakan adalah Y = 0.229R + 0.587G + 0.114B. Adapun penerapannya dalam program adalah sebagai berikut !"# %&' ( )*"+,-#./*0"#1233&451.6,#7!8,93!: ;<.= > ?.@@A< B 3&451.6,#7!8,93!: ;<.6 > ?.CDE< B 3&451.6,#7!8,93!: ;<.F > ?.11G<<H &451.I,#7!8,93!: ;: )*9*-.J-*4K-L&3%&': %&': %&'<<H
4.2. Binerisasi Setelah citra diubah ke greyscale, citra diubah ke bentuk biner dengan threshold tertentu threshold yang digunakan adalah 200, dikarenakan semua plat nomor kendaraan pribadi menggunakan cat dasar hitam dan cata karakter putih. Adapun penerapannya dalam program adalah sebagai berikut: !M 3%&' N @??< %&' ( @CCH ,9O, !M 3%&' P( @??< %&' ( ?H &451.I,#7!8,93!: ;: )*9*-.J-*4K-L&3%&': %&': %&'<<H
4.3. Edge Detection Edge detecktion atau deteksi tepi disini berfungsi menebalkan tepi objek biner pada citra. metode yang digunakan adalah sobel, dengan 2 macam masking yaitu vertical dan horizontal. "# "$ "# % % % # $ #
Adapun penerapannya dalam program adalah sebagai berikut: 4%#%Q?R ( )*"+,-#./*0"#123&451.6,#7!8,93! S 1: ; S 1<.=< > 3S1<H 4%#%Q1R ( )*"+,-#./*0"#123&451.6,#7!8,93!: ; S 1<.=< > 3S@<H 4%#%Q@R ( )*"+,-#./*0"#123&451.6,#7!8,93! B 1: ; S 1<.=< > 3S1<H 4%#%QTR ( 4%#%QGR ( 4%#%QCR ( ?H 4%#%Q2R ( )*"+,-#./*0"#123&451.6,#7!8,93! S 1: ; B 1<.=<H 4%#%QER ( )*"+,-#./*0"#123&451.6,#7!8,93! B 1: ; B 1<.=< > @H 4%#%QDR ( )*"+,-#./*0"#123&451.6,#7!8,93!: ; B 1<.=<H 4%#&Q?R ( )*"+,-#./*0"#123&451.6,#7!8,93! S 1: ; S 1<.=< > 3S1<H 4%#&Q1R ( 4%#&QGR ( 4%#&QER ( ?H 4%#&Q@R ( )*"+,-#./*0"#123&451.6,#7!8,93! B 1: ; S 1<.=<H 4%#&QTR ( )*"+,-#./*0"#123&451.6,#7!8,93! S 1: ;<.=< > 3S@<H 4%#&QCR ( )*"+,-#./*0"#123&451.6,#7!8,93! B 1: ;<.=< > @H 4%#&Q2R ( )*"+,-#./*0"#123&451.6,#7!8,93! S 1: ; B 1<.=< > 3S1<H 4%#&QDR ( )*"+,-#./*0"#123&451.6,#7!8,93!: ; B 1<.=<H !"# U%O!9 ( ?H !"# U%O!9@ ( ?H M*- 3!"# 8 ( ?H 8 P AH 8BB< V U%O!9 ( U%O!9 B 4%#%Q8RH U%O!9@ ( U%O!9@ B 4%#&Q8RH W U%O!9 ( U%O!9 B U%O!9@H !M 3U%O!9 N @CC< U%O!9 ( @CCH ,9O, !M 3U%O!9 P ?< U%O!9 ( ?H &45@.I,#7!8,93!: ;: )*9*-.J-*4K-L&3U%O!9: U%O!9: U%O!9<<H
4.4. Erosi Proses ini menggunakan 2 macam mask yaitu mask horizontal dan mask vertical, Adapun mask yang digunakan "# % # "$ % $ "# % # 6
dalam mask horizontal adalah sebagai berikut # # # # # # # # # Sedangkan mask citra yang digunakan untuk vertical adalah sebagai berikut # # # # # # # # #
Adapun penerapannya dalam program adalah sebagai berikut !M 3! S G N( ? XX ; N( ?< V #,45 ( &45@.6,#7!8,93! S G: ;<H 4%#Q?R ( )*"+,-#./*0"#123#,45.=<H W !M 3! S T N( ? XX ; N( ?< V #,45 ( &45@.6,#7!8,93! S T: ;<H 4%#Q1R ( )*"+,-#./*0"#123#,45.=<H W !M 3! S @ N( ? XX ; N( ?< V #,45 ( &45@.6,#7!8,93! S @: ;<H 4%#Q@R ( )*"+,-#./*0"#123#,45.=<H W !M 3! S 1 N( ? XX ; N( ?< V #,45 ( &45@.6,#7!8,93! S 1: ;<H 4%#QTR ( )*"+,-#./*0"#123#,45.=<H W !M 3; N( ? XX ! N( ?< V #,45 ( &45@.6,#7!8,93!: ;<H 4%#QGR ( )*"+,-#./*0"#123#,45.=<H W !M 3; N( ? XX ! B 1 P &45@.Y!Z#U< V #,45 ( &45@.6,#7!8,93! B 1: ;<H 4%#QCR ( )*"+,-#./*0"#123#,45.=<H W !M 3; N( ? XX ! B @ P &45@.Y!Z#U< V #,45 ( &45@.6,#7!8,93! B @: ;<H 4%#Q2R ( )*"+,-#./*0"#123#,45.=<H W !M 3; N( ? XX ! B T P &45@.Y!Z#U< V #,45 ( &45@.6,#7!8,93! B T: ;<H 4%#QER ( )*"+,-#./*0"#123#,45.=<H W !M 3; N( ? XX ! B G P &45@.Y!Z#U< V #,45 ( &45@.6,#7!8,93! B G: ;<H 4%#QDR ( )*"+,-#./*0"#123#,45.=<H W !M 34%#Q?R N ? XX 4%#Q1R N ? XX 4%#Q@R N ? XX 4%#QTR N ? XX 4%#QGR N ? XX 4%#QCR N ? XX 4%#Q2R N ? XX 4%#QER N ? XX 4%#QDR N ?< ,-*O! ( @CCH ,9O, ,-*O! ( ?H
4.5. Pencarian Posisi Tahapan tahapan dari pencarian posisi adalah: 1. Pencarian koordinat posisi plat yang disimbolkan dengan xmin, xmax, ymin, ymax. 2. Pemotongan Citra Asli berdasarkan koordinat yang telah diperoleh sebelumnya Proses pencarian posisi dapat dilihat dari gambar berikut:
4.6. Pemotongan Karakter Tahapan tahapan dari pemotongan adalah: 1. Greyscaling 2. Pengubahan image menjadi biner 3. Deteksi tepi menggunakan sobel 7
4. Pencarian ulang koordinat posisi karakter dalam citra plat, disimbolkan x1, x2, y1,y2 5. Pencarian area perkarakter dengan cara mencari jarak dari x1 ke x2 lalu dibagi 10 bagian sama besar. Proses pemotongan karakter dapat dilihat dari gambar berikut:
V. Simpulan Berdasarkan percobaan diatas dapat disimpulkan bahwa tingkat akurasi dari system cukup rendah dikarenakan system tidak menerapkan metode dalam pencarian plat nomor dan pemotongan karakter. Penyebab hal ini adalah karena sulitnya mencari referensi yang sesuai dan karena mayoritas referensi yang dihimpun penulis menggunakan plugin dan library dalam implementasi metodenya
DAFTAR PUSTAKA [1] Patardo Marasi Manurung. 2007. Perangkat Lunak Pengenalan Nomor Mobil Menggunakan Jaringan Kompetitif Dan Jaringan Koheren. Universitas Indonesia. Depok [2] Taufiqurrohman. 2013. Pengenalan Plat Nomor Sepeda Motor Dengan Menggunakan Metode Jarak Euclidean. Universitas Diponegoro. Semarang