• Tidak ada hasil yang ditemukan

IMPLEMENTASI ALGORITMA YOLO DAN TESSERACT OCR PADA SISTEM DETEKSI PLAT NOMOR OTOMATIS

N/A
N/A
Protected

Academic year: 2023

Membagikan "IMPLEMENTASI ALGORITMA YOLO DAN TESSERACT OCR PADA SISTEM DETEKSI PLAT NOMOR OTOMATIS "

Copied!
6
0
0

Teks penuh

(1)

54

IMPLEMENTASI ALGORITMA YOLO DAN TESSERACT OCR PADA SISTEM DETEKSI PLAT NOMOR OTOMATIS

Awan Aprilino

1)

, Imam Husni Al Amin

2)

1,2Teknik Informatikan, Universitas Stikubank Semarang

1,2Jl. Tri Lomba Juang No.1 Semarang, Indonesia Email: 1[email protected], 2[email protected]

Abstract

Currently, vehicle number plate detection systems in general still use the manual method. This will take a lot of time and human effort. Thus, an automatic vehicle number plate detection system is needed because the number of vehicles that continues to increase will burden human labor. In addition, the methods used for vehicle number plate detection still have low accuracy because they depend on the characteristics of the object being used. This study develops a YOLO-based automatic vehicle number plate detection system. The dataset used is a pretrained YOLOv3 model of 700 data. Then proceed with the number plate text extraction process using the Tesseract Optical Character Recognition (OCR) library and the results obtained will be stored in the database. This system is web-based and API so that it can be used online and on the cross-platform. The test results show that the automatic number plate detection system reaches 100% accuracy with sufficient lighting and a threshold of 0.5 and for the results using the Tesseract library, the detection results are 92.32% where the system is successful in recognizing all characters on the license plates of cars and motorcycles. in the form of alphanumeric characters of 7-8 characters.

Keyword: YOLO, Tesseract OCR, Object Detection, Optical Character Recognition

Abstrak

Saat ini sistem deteksi plat nomor kendaraan pada umumnya masih menggunakan metode manual. Hal ini akan memakan banyak waktu dan tenaga manusia. Sehingga, sistem deteksi plat nomor kendaraan otomatis sangat diperlukan karena jumlah kendaraan yang terus bertambah banyak akan membebankan tenaga manusia. Selain itu metode-metode yang digunakan untuk deteksi plat nomor kendaraan masih memiliki akurasi yang rendah karena sangat bergantung pada ciri objek yang digunakan. Penelitian ini mengembangkan sistem deteksi plat nomor kendaraan otomatis berbasis You Only Look Once (YOLO). Dataset yang digunakan merupakan data pretrained model YOLOv3 sebanyak 700 data. Kemudian dilanjutkan proses ekstraksi teks plat nomor menggunakan library Tesseract Optical Character Recognition (OCR) dan hasil yang didapatkan akan disimpan di database. Sistem ini berbasis web dan API sehingga bisa di gunakan secara online dan lintas platform. Hasil pengujian menunjukan bahwa sistem pendeteksian plat nomor otomatis mencapai tingkat akurasi 100% dengan pencahayaan yang cukup serta threshold sebanyak 0.5 dan untuk hasil OCR menggunakan library tesseract di dapatkan hasil deteksi 92,32% dimana sistem berhasil untuk mengenali seluruh karakter pada plat mobil dan motor yang berupa karakter alfanumerik sebanyak 7-8 karakter.

Kata Kunci: YOLO,Tesseract OCR, Deteksi Objek, Optical Character Recognition

1. Pendahuluan

Kendaraan merupakan alat transportasi modern yang saat ini banyak digunakan untuk mempermudah aktivitas perpindahan dari tempat satu ke tempat yang lain dalam waktu yang relatif singkat, dukungan transportasi yang baik membuat kehidupan bernegara menjadi lebih optimal karena seluruh kebutuhan dapat terpenuhi. Identifikasi resmi sebuah kendaraan salah satunya adalah plat nomor yang dikeluarkan oleh lembaga terkait sebagai tanda izin untuk sebuah kendaraan dapat digunakan di jalan umum. Nomor seri pada setiap plat nomor kendaraan berbeda beda dan dikelompokkan berdasarkan provinsi yang terdaftar dalam wilayah Indonesia. Kode huruf sebelum nomor kendaraan menunjukkan wilayah provinsi pendaftaran

kendaraan, sedangkan kode huruf setelah nomor kendaraan menunjukkan sub-wilayah dari provinsi yang terdaftar [1]. Sementara itu, untuk bahan yang digunakan kode plat nomor kendaraan bermotor di indonesia terbuat dari aluminium.

Metode yang digunakan untuk mengambil objek plat nomor dalam sebuah gambar kendaraan adalah metode Deep Learning. Deep Learning menjadi topik hangat dalam beberapa tahun belakangan ini yang beberapa diantaranya digunakan untuk menciptakan sebuah deteksi benda, deteksi wajah [2], dan beberapa jenis lainnya. Beberapa detektor seperti Fast-RCNN, Faster-RCNN dan You Only Look Once (YOLO) menjadi network deteksi yang cukup signifikan dan menjadikan evolusi deteksi yang presisi namun ringan dalam beberapa aspek [3]. Dan untuk penelitian kali ini akan

(2)

55 menggunakan metode YOLO dikarenakan metode ini memiliki kecepatan dan akurasi yang baik dalam melakukan deteksi objek.

Untuk melakukan proses mengambil data plat nomor dari gambar, akan dilakukan menggunakan Optical Character Recognition (OCR) yang menghasilkan sebuah text dari gambar yang diambil.

Pada saat ini implementasi OCR sudah dipermudah dengan adanya bantuan library Tesseract OCR dan tingkat akurasinya juga tergolong tinggi. Proses ini dilakukan untuk mengambil kode seri plat nomor yang nantinya akan di simpan kedalam database.

Pembacaan plat nomor kendaraan yang dirancang dalam penelitian ini berbasis web dan Application Programming Interface (API). Penggunaan web di pilih karena diharapkan aplikasi ini bisa diakses secara online kapan saja dan dimana saja serta mengelola data plat nomor yang terdeteksi. Sedangkan penggunaan API dikarenakan semakin pesatnya perkembangan teknologi itu sendiri yang berkembang pesat di pasaran dengan berbagai tipe dan sistem operasi. Dengan menggunakan API diharapkan sistem pendeteksi plat nomor kendaraan ini juga bisa digunakan di berbagai perangkat. Dengan adanya sistem pendeteksi plat nomor kendaraan ini diharapkan dapat membantu dan memudahkan proses pekerjaan lembaga atau instansi yang didalam melakukan pekerjaannya membutuhkan data informasi tentang kode plat nomor kendaraan.

2. Metode A. Plat Nomor

Plat nomor kendaraan merupakan sebuah pengenal kendaraan yang wajib digunakan oleh setiap kendaraan bermotor. Plat nomor kendaraan telah digunakan sejak zaman Hindia Belanda berdasarkan wilayah karesidenan.

Plat kendaraan bermotor, dibagi berdasarkan wilayah Kabupaten dan Kota tempat kendaraan bermotor berlokasi, dan dibedakan menggunakan huruf alphabet yang berada di depan dan belakang plat nomor [1].

B. You Only Look Once (YOLO)

Algoritma YOLO merupakan algoritma deep learning untuk deteksi objek yang menggunakan pendekatan berbeda dari algoritma lain yaitu menerapkan sebuah jaringan syaraf tunggal pada keseluruhan citra [3]. YOLO membagi citra masukan ke dalam suatu grid berukuran SxS. Ukuran dari grid cell tersebut tergantung pada input size yang digunakan pada suatu arsitektur.

Pada YOLOv3, jika input size 416x416, maka ukuran grid size adalah 13x13, 26x26, dan 52x52. Setiap sel bertugas untuk memprediksi objek yang ada di dalam sel tersebut dengan bounding box beserta confidence yang merupakan nilai probabilitas keberadaan suatu objek pada bounding box tersebut [3].

Kemudian, setelah bounding box dipetakan berdasarkan nilai confidence yang dihasilkan, YOLO akan memprediksi kelas dari objek yang terdapat pada bounding box tersebut beserta kemungkinannya,

sehingga terbentuklah class probability map. Dari sekian banyak bounding box yang dihasilkan, untuk mendapatkan bounding box beserta kelas objek dengan probabilitas yang tinggi, maka dari seluruh hasil prediksi tersebut, hanya yang melampaui threshold saja yang akan digunakan. Jika terdapat duplikasi bounding box, maka Non-max Suppresion (NMS) berperan untuk menghilangkan duplikat tersebut [4]. Ilustrasi algoritma YOLO digambarkan pada Gambar 1.

Gambar 1. Ilustrasi algoritma YOLO [5].

C. OCR

Optical Character Recognition (OCR) adalah proses yang digunakan untuk mengkonversi gambar yang berisikan teks menjadi karakter ASCII yang dapat dikenali oleh komputer. Berbagai pendekatan yang dapat digunakan pada Optical Character Recognition, yaitu matrix matching, fuzzy logic, ekstraksi fitur, analisa struktural, dan jaringan syaraf [6].

D. Tesseract OCR

Tesseract adalah mesin OCR yang dikembangkan di HP (Hewlett-Packard) antara tahun 1984 dan 1994. Pada tahun 2005 tesseract dibuat open source oleh HP [7].

Dari 2006 hingga November 2018 dikembangkan oleh Google. Arsitektur yang digunakan oleh tesseract digambarkan pada Gambar 2.

Gambar 2. Arsitektur tesseract [8].

E. Dataset

Dataset yang akan digunakan dalam penelitan ini akan menggunakan pretrained model YOLOv3 dataset yang sebelumnya ditraining menggunakan model plat nomor kendaraan negara Tunisia dengan hanya 1 label class yaitu plat nomor. Dikarenakan plat nomor negara Tunisia yang memiliki kemiripan dengan plat nomor Indonesia yaitu background warna hitam dan tulisan warna putih, sehingga dataset ini dipilih sebagai model

(3)

56 untuk melakukan deteksi objek plat nomor kendaraan Indonesia.

F. API

API atau Application Programming Interface adalah sebuah antarmuka yang digunakan untuk menghubungkan antara satu aplikasi dengan aplikasi yang lain. Peran dari API adalah sebagai perantara yang menghubungkan aplikasi berbeda, baik dari platform yang sama maupun lintas platform.

G. Tahapan Penelitian

Untuk membuat sistem deteksi plat nomor kendaraan menggunakan metode YOLO dan Tesseract OCR, maka terdapat beberapa tahapan dalam cara kerja sistem ini. Flowchart sistem ini sebagai berikut

Gambar 3. Flowchart Sistem Deteksi Plat Nomor Pada flowchart Gambar 3. Hal pertama yang dilakukan adalah menginput gambar yang akan di dilakukan proses deteksi plat nomor. Selanjutnya sistem akan memproses gambar tersebut menggunakan metode YOLO untuk mendeteksi objek plat nomor. Plat nomor yang terdeteksi kemudian akan di tandai dengan bounding box, pada proses ini dilakukan pemotongan gambar sesuai area bounding box yang di peroleh.

Ilustrasi deteksi objek plat nomor kendaraan menggunakan metode YOLO digambarkan pada Gambar 4.

Gambar 4. Deteksi objek plat nomor pada kendaraan.

Gambar plat nomor yang didapatkan dari Gambar 4.

Selanjutnya akan di proses ke tahap preprocessing.

Metode ini digunakan untuk meningkatkan ketajaman citra untuk mengantisipasi beberapa variasi pencahayaan yang biasa muncul saat pengambilan citra yaitu terdiri

dari grayscaling kemudian dilanjutkan tresholding [9].

Grayscaling sendiri akan mengubah citra rgb menjadi citra grayscale yang selanjutnya akan di proses ke tahap tresholding untuk memisahkan background dengan objek berdasarkan gelap terang citra sehingga akan menghasilkan citra dengan background putih dan warna tulisan hitam untuk memudahkan tesseract dalam mengkonversi citra kedalam bentuk text dan menyimpan text beserta potongan gambar kedalam database.

Gambar 5. Tahap grayscaling dan thresholding citra plat nomor

3. Hasil dan Pembahasan A. Kebutuhan Sistem

Sistem deteksi plat nomor kendaraan otomatis ini terdiri dari dua bagian yaitu bagian Administrator dan bagian User. Kedua bagian ini masing masing mempunyai kebutuhan, seperti:

1. Kebutuhan Administrator a. Mengelola User.

b. Mengelola Apps.

2. Kebutuhan User a. Membuat Apps.

b. Mengelola plat nomor.

c. Deteksi plat nomor menggunakan web.

d. Deteksi plat nomor menggunakan API.

B. Implementasi

Web dari sistem yang diusulkan dapat dilihat pada Gambar di bawah ini. Halaman login User dan Administrator ditunjukkan Gambar 6.

Gambar 6. Halaman login User dan Administrator Untuk menggunakan sistem, User diwajibkan untuk mendaftar terlebih dahulu. Halaman pendaftaran

ditunjukkan pada Gambar 7.

(4)

57 Gambar 7. Halaman registrasi user

Dasbor Administrator berfungsi untuk melihat ringkasan jumlah apps, jumlah User dan jumlah plat nomor yang terdaftar dalam sistem. Halaman dasbor ditunjukkan pada Gambar 8.

Gambar 8. Halaman dasbor admin

Apps dalam sistem ini berfungsi untuk mendeteksi plat nomor, setiap apps mempunyai kode token unik yang digunakan untuk endpoint API sehingga apps bisa digunakan untuk perangkat lain. Halaman manajemen apps ditunjukkan pada Gambar 9.

Gambar 9. Halaman manajemen apps Administrator juga bisa melihat dan mengelola User yang terdaftar dalam sistem. Halaman manajemen User ditunjukkan pada Gambar 10.

Gambar 10. Halaman manajemen user Dasbor User berfungsi untuk melihat ringkasan total apps yang dibuat dan rincian total plat nomor yang terdeteksi di semua apps. User juga bisa menambah apps untuk melakukan deteksi objek. User bisa membuat lebih dari satu apps sesuai keperluan. Halaman dasbor User ditunjukkan pada Gambar 11.

Gambar 11. Dashboard user

Setelah membuat apps, User bisa melakukan proses deteksi plat nomor dengan mengunggah gambar yang ingin dilakukan deteksi plat nomor. Plat nomor yang terdeteksi akan disimpan di database. Proses deteksi plat nomor ditunjukkan pada Gambar 12.

Gambar 12. Deteksi plat nomor menggunakan web

Setiap apps mempunyai endpoint API masing- masing dengan menggunakan kode token unik. Endpoint ini secara langsung bisa dilihat di halaman API jika User membutuhkan untuk digunakan di perangkat lain.

Halaman API ditunjukkan pada Gambar 13.

(5)

58 Gambar 13. Halaman API

API yang tersedia bisa digunakan untuk mendeteksi plat nomor kendaraan dengan menggunakan perangkat lain tanpa harus login ke web. Gambar 14. merupakan contoh penggunakan API menggunakan aplikasi Postman.

Gambar 14. Deteksi plat nomor dengan API menggunakan aplikasi Postman

C. Pengujian

Pengujian sistem akan mengambil sampel data sebanyak 10 gambar yang didapatkan dari kamera smarthpone dengan resolusi 1600x1200 pixel kemudian pengujian ini akan dibagia menjadi dua bagian yaitu pengujian deteksi objek dan pengujian optical character recognition. Hasil pengujian ditunjukkan pada Gambar 15 dan Tabel 1.

Gambar 15. Hasil pengujian YOLOv3

Pada Gambar 15. YOLOv3 berhasil mendeteksi semua plat nomor dengan confident threshold sebanyak 0.5 dengan pencahayaan yang cukup menggunakna objek motor dan mobil.

Tabel 1. Hasil pengujian Tesseract OCR

No Data Asli Hasil Pengujian

Tesseract OCR Akurasi

1 AE1938BY AE1938BY 100%

2 B1308RFO B1908RFO 87,5%

3 H1260WA H1260WA 100%

4 H8990FF H9990FF 85,7%

5 H9176EQ H9176E0 87,5%

6 H8955MS H8955MS 100%

7 H8408LF H8408LF 100%

8 H9489QF H9489OF 87,5%

9 H8826GP H8826GP 100%

10 H3189BAE 3189BA 75%

Pada proses ekstraksi di Tabel 1. pengujian tesseract dengan menggunakan mode page segmentation ke-10 yaitu memperlakukan gambar sebagai karakter tunggal, masih terdapat beberapa karakter yang berbeda antara data asli dengan data hasil ekstraksi. Perbedaan ini dikarenakan tesseract gagal mengenali karakter yang dimaksudkan. Kegagalan ini dapat disebabkan oleh banyaknya noise yang terdapat di dalam gambar, sehingga proses analisis connected component memberikan hasil yang salah. Analisis connected component merupakan proses awal dari Tesseract Tess- Two sehingga jika proses ini mengalami kegagalan, maka akan mempengaruhi proses berikutnya [10].

4. Kesimpulan

Berdasarkan hasil pengamatan dan pengujian pada sistem, dapat disimpulkan bahwa YOLOv3 dapat mendeteksi objek plat nomor dengan sangat baik meskipun dalam keadaan gambar potrait atau landscape dengan pencahayaan yang cukup di confident threshold 0.5 pada objek kendaraan mobil dan motor. Tesseract sangat bergantung pada tahap pre-processing yaitu proses grayscaling dan thresholding gambar sebelum melakukan proses OCR. Kemiringan pada gambar plat nomor yang terdeteksj sangat berpengaruh pada mode page segmentation tesseract OCR ke-10 yaitu memperlakukan gambar sebagai karakter tunggal dan hanya membaca satu baris pertama yang terdeteksi, sehigga tesseract akan mengabaikan posisi karakter selanjutnya dan memasukkannya kebaris yang berbeda.

Sistem dapat bekerja dengan baik dan di akses menggunakan web browser dan API secara online.

5. Daftar Pustaka

[1] R. Efendi, “Aplikasi Pembacaan Plat Nomor Kendaraan Menggunakan Optical Character Recognition (OCR),” Semin. Nas. Teknol. Inf.,

(6)

59 pp. 81–86, 2017.

[2] E. Winarno, I. H. Al Amin, S. Hartati, and P. W.

Adi, “Face recognition based on cnn 2d-3d reconstruction using shape and texture vectors combined,” Indones. J. Electr. Eng. Informatics, vol. 8, no. 2, pp. 378–384, Jun. 2020, doi:

10.11591/ijeei.v8i2.1369.

[3] J. Redmon, S. Divvala, R. Girshick, and A.

Farhadi, “You Only Look Once: Unified, Real- Time Object Detection,” in 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016, pp. 779–788, doi:

10.1109/CVPR.2016.91.

[4] H. Hammam, A. Asyhar1, S. A. Wibowo2, and G. Budiman3, “Implementasi Dan Analisis Performansi Metode You Only Look Once (Yolo) Sebagai Sensor Pornografi Pada Video Implementation And Performance Analysis Of You Only Look Once (Yolo) Method As Porn Censorship In Video,” e-Proceeding Eng., vol. 7, no. 2, pp. 3631–3638, 2020.

[5] R. Khandelwal, “Computer Vision - A journey from CNN to Mask R-CNN and YOLO - Part 2,”

2019. https://towardsdatascience.com/computer- vision-a-journey-from-cnn-to-mask-r-cnn-and- yolo-part-2-b0b9e67762b1 (accessed Nov. 30, 2021).

[6] R. Mithe, S. Indalkar, and N. Divekar, “Optical Character Recognition,” Int. J. Recent Technol.

Eng., vol. 2, no. 1, pp. 72–75, 2013, [Online].

Available: http://code.google.com/p/tesseract- ocr.

[7] K. Apriyanti and T. W. Widodo, “Implementasi Optical Character Recognition Berbasis Backpropagation untuk Text to Speech Perangkat Android,” Indones. J. Electron. Instrum. Syst., vol. 6, no. 1, pp. 13–23, 2016.

[8] Smith R,

“docs/2ArchitectureAndDataStructures.pdf at main · tesseract-ocr/docs,” 2016.

https://github.com/tesseract-

ocr/docs/blob/main/das_tutorial2016/2Architectu reAndDataStructures.pdf (accessed Dec. 05, 2021).

[9] E. Winarno, I. M. Al Amin, H. Februariyanti, P.

W. Adi, W. Hadikurniawati, and T. M. Anwar,

“Attendance System Based on Face Recognition System Using CNN-PCA Method and Real-time Camera,” Int. Semin. Res. Inf. Technol. Intell.

Syst., pp. 301–304, 2019.

[10] R. Smith, “An Overview of the Tesseract OCR Engine,” Proc 9th Int.Conf.on Doc. Anal.

Recognit., 2007, [Online]. Available:

http://code.google.com/p/tesseract-ocr.

Referensi

Dokumen terkait

Ditemui beberapa gejala-gejala atau fenomena dalam proses belajar mengajar antara lain : Guru kurang memberikan kata-kata yang dapat membangkitkan semangat belajar siswa, sebagian siswa

Berkaitan dengan proses penyusunan portofolio Guru dan diperoleh dari hasil wawancara kepada bagian Guru terdapat beberapa jenis dokumen yang harus diasiapkan, dokumen tesebut seperti