Mohon tunggu...
Usman Didi Khamdani
Usman Didi Khamdani Mohon Tunggu... Programmer - Menulislah dengan benar. Namun jika tulisan kita adalah hoaks belaka, lebih baik jangan menulis

Kompasianer Brebes | KBC-43

Selanjutnya

Tutup

Gadget Pilihan

Membaca Data KTP Elektronik dengan Tesseract OCR

5 November 2020   07:09 Diperbarui: 5 November 2020   07:18 8198
+
Laporkan Konten
Laporkan Akun
Kompasiana adalah platform blog. Konten ini menjadi tanggung jawab bloger dan tidak mewakili pandangan redaksi Kompas.
Lihat foto
KTP Elektronik | sumber: indonesia.go.id

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.

lustrasi memasukkan data teks dari gambar atau hasil scanning ke dalam database menggunakan OCR | sumber: xpertup.com
lustrasi memasukkan data teks dari gambar atau hasil scanning ke dalam database menggunakan OCR | sumber: xpertup.com

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. 

membaca data KTP-el dengan Tesseract OCR | dokpri
membaca data KTP-el dengan Tesseract OCR | dokpri

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.

mengekstraksi teks dari gambar dengan Tesseract OCR | dokpri
mengekstraksi teks dari gambar dengan Tesseract OCR | dokpri

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:

HALAMAN :
  1. 1
  2. 2
  3. 3
Mohon tunggu...

Lihat Konten Gadget Selengkapnya
Lihat Gadget Selengkapnya
Beri Komentar
Berkomentarlah secara bijaksana dan bertanggung jawab. Komentar sepenuhnya menjadi tanggung jawab komentator seperti diatur dalam UU ITE

Belum ada komentar. Jadilah yang pertama untuk memberikan komentar!
LAPORKAN KONTEN
Alasan
Laporkan Konten
Laporkan Akun