Bagi kita para pengembang aplikasi perangkat lunak (software), adakalanya barangkali kita mendapat keluhan atau tepatnya request dari pengguna aplikasi kita untuk menyediakan fitur yang dapat memudahkan proses verifikasi data, seperti data KTP pelanggan.Â
Selama ini memang setiap layanan yang mewajibkan penggunanya (dalam hal ini: pelanggan) untuk menginput data KTP seperti NIK, Nama dan Tanggal Lahir, memang mewajibkan pula untuk mengunggah juga foto KTP-nya.Â
Tidak lain digunakan untuk proses verifikasi dan validasi data yang telah diinput. Namun, hal ini tidak menutup kemungkinan juga untuk terjadinya kekeliruan.Â
Terlebih jika data yang mesti diverifikasi tidak sedikit jumlahnya. Tentu waktu yang dibutuhkan menjadi semakin lama. Hal ini tentu dapat berakibat kurang baik juga bagi image pelayanan terhadap pelanggan.
OCR
Guna memecahkan kendala di atas, sebagai pengembang aplikasi kita bisa memanfaatkan sistem Pengenalan Karakter Optis atau Optical Character Regocnition (OCR). OCR akan mengekstrak teks yang ada pada gambar atau dokumen yang telah kita scan atau kita foto menjadi data teks yang dapat diolah atau disimpan.
Dengan OCR, maka proses verifikasi data dan foto KTP Elektronik (KTP-el) yang diinput dapat dilakukan secara otomatis dan tentu saja menjadi lebih akurat.Ketika user menginput data KTP-el dan sekaligus mengunggah foto KTP-el, setelah melakukan ekstraksi data yang ada pada foto KTP-el, sistem kemudian akan melakukan cross-check antara data inputan user dengan data hasil ekstraksi dari foto KTP-el, di mana ketika ada kekeliruan atau ketidaksesuaian data, sistem akan memberikan warning atau penolakan saat itu juga sehingga user dapat seketika memperbaiki data yang diinput.
Tesseract OCR
Untuk menggunakakan OCR, kita bisa melakukannya dengan memasang sendiri sistem OCR pada server yang kita miliki ataupun menggunakan layanan serverless semacam Google Cloud Function dan Cloud Vision API.
Bagi Anda yang ingin menggunakan OCR langsung pada server Anda, atau sekedar untuk mengujicoba, Anda bisa menggunakan aplikasi Tesseract OCR yang salah satunya disediakan oleh Mannheim University Library dan dapat diunduh secara gratis pada halaman GitHub UB Mannheim.Â
Adapun untuk menggunakan Tesseract OCR untuk keperluan aplikasi kita, kita tinggal membuat service atau API untuk melayani dan sebagai jembatan antara aplikasi kita dengan Tesseract OCR. Salah satunya dengan menggunakan PHP.Â
Dokumen yang diunggah oleh user melalui aplikasi akan diteruskan ke service ini yang kemudian akan melakukan pengolahan data (ekstrasi) menggunakan Tesseract OCR. Service dapat dimanfaatkan sekedar untuk melakukan ekstraksi teks yang kemudian hasilnya dikembalikan ke aplikasi atau bisa juga sekaligus untuk memvalidasi inputan user sehingga nantinya aplikasi tinggal beres menerima hasilnya, apakah inputan data dan dokumen dari user valid atau tidak.
Untuk membuat layanan OCR berbasis PHP, kita bisa memanfaatkan antara lain Tesseract OCR for PHP.Â
Mengolah Data Ekstraksi dari KTP-el
Berikut contoh hasil ekstraksi teks dari foto KTP-el yang saya olah menggunakan Teserract OCR.Â
Proses perekaman dari kamera atau scanner tentu saja berperan sangat penting. Semakin jelas gambar yang dihasilkan maka akan semakin akurat teks yang dihasilkan. Termasuk susunannya.Â
Jika kualitas foto yang kita unggah tidak baik, dapat menyebabkan beberapa bagian teks menjadi tidak terbaca dan atau dihasilkan menjadi teks yang berbeda.
Tesseract OCR akan memberikan hasil ekstraksi berupa plain text. Kita mesti membuat algoritma atau rumusan sendiri untuk mengolah plain text tersebut sehingga dapat menghasilkan data yang kita inginkan seperti NIK, Nama, Tempat dan Tanggal Lahir, dan sebagainya.
NIK
Tesseract OCR mendukung berbagai macam teks dan bahasa, termasuk teks atau bahasa Arab, Jepang, India dan China.
KTP-el sendiri menggunakan huruf latin bahasa Indonesia. Namun, khusus untuk penulisan NIK menggunakan huruf atau karakter OCR-A yang memang dibuat untuk keperluan OCR.
Digitalisasi Dokumen
Selain dimanfaatkan untuk keperluan aplikasi seperti untuk membaca data KTP-el tersebut, secara umum Tesseract OCR, sebagaimana fungsinya, dapat kita manfaatkan sebagai tools digitalisasi berbagai macam dokumen, Â seperti untuk menyalin buku cetak menjadi buku digital, memindai tulisan pada poster dan lain sebagainya.
Demikian, mudah-mudahan bermanfaat. Di bagian bawah saya lampirkan juga tautan yang dapat Anda pelajari untuk menggunakan Tesseract OCR. Jika belum cukup, Anda bisa menanyakannya lebih lanjut ke mbah Google.
Salam.
Lampiran tautan:
- Download Tesseract-OCR
- Downlaod Tesseract OCR for PHP
- Download ocr.traineddata
- Tutorial Tesseract OCR
- Tutorial Tesseract OCR
Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H