Pipeline OCR Lengkap dengan Keras dan TensorFlow
Gunakan Keras-OCR untuk pengenalan teks yang sederhana namun powerful dengan Python.
Apa itu API Keras-OCR?
Keras-OCR adalah library Python open-source tingkat tinggi yang dirancang untuk menyederhanakan tugas pengenalan karakter optik (OCR) menggunakan kekuatan Keras dan TensorFlow. Berbeda dengan sistem OCR tradisional yang membutuhkan konfigurasi ekstensif, Keras-OCR menawarkan pipeline lengkap dengan model pra-latih untuk deteksi teks (menggunakan algoritma CRAFT) dan pengenalan teks (melalui model CRNN). Kombinasi ini memungkinkan pengembang mengekstrak teks dari gambar, dokumen pindaian, atau bahkan catatan tulisan tangan hanya dengan beberapa baris kode.
Library ini dioptimalkan untuk kasus penggunaan dunia nyata, termasuk:
- Digitalisasi dokumen: Konversi dokumen kertas atau PDF menjadi teks yang dapat dicari.
- Entri data otomatis: Ekstraksi teks dari faktur, kwitansi, atau formulir.
- Alat aksesibilitas: Membuat teks alternatif untuk gambar dalam aplikasi web.
- Analisis media sosial: Memproses teks yang tertanam dalam meme atau konten buatan pengguna.
Dengan dukungan bawaan untuk pemrosesan batch dan akselerasi GPU opsional, Keras-OCR menyeimbangkan kemudahan penggunaan dengan performa, menjadikannya ideal untuk prototyping maupun implementasi produksi.
Fitur Utama Keras-OCR
- Model Pra-latih: Termasuk CRAFT (detektor) dan CRNN (pengenal) untuk penggunaan langsung.
- Setup Mudah: Ketergantungan minimal (Keras, TensorFlow, OpenCV).
- Pemrosesan Batch: Proses beberapa gambar secara paralel untuk efisiensi.
- Pelatihan Kustom: Sempurnakan model dengan dataset Anda sendiri.
- Tidak Membutuhkan GPU: Berjalan di CPU tetapi lebih cepat dengan GPU.
- Output Bounding Box: Mengembalikan teks beserta koordinat untuk analisis spasial.
- Open Source: Gratis, dikembangkan komunitas, dan berlisensi MIT.
Instalasi
Pasang Keras-OCR melalui pip (membutuhkan Python 3.6+):
Instal Keras-OCR
pip install keras-ocr
Untuk dukungan GPU, pastikan TensorFlow dengan GPU terinstal:
Instal TensorFlow GPU
pip install tensorflow-gpu
Contoh Kode
Berikut adalah contoh praktis untuk mengekstrak teks dari gambar menggunakan Keras-OCR.
Contoh 1: Deteksi dan Pengenalan Teks Dasar
Contoh ini menunjukkan cara menggunakan pipeline pra-latih untuk mengekstrak teks dari gambar:
Pipeline OCR Dasar
import keras_ocr
pipeline = keras_ocr.pipeline.Pipeline()
images = ["receipt.jpg"]
predictions = pipeline.recognize(images)
print(predictions)
Contoh 2: Pemrosesan Batch
Proses beberapa gambar sekaligus untuk efisiensi:
Pemrosesan Batch
import keras_ocr
pipeline = keras_ocr.pipeline.Pipeline()
images = ["image1.jpg", "image2.jpg", "image3.jpg"]
batch_predictions = pipeline.recognize(images)
for prediction in batch_predictions:
print(prediction)
Contoh 3: Visualisasi Bounding Box
Gambar kotak teks yang terdeteksi pada gambar asli:
Visualisasi Hasil
import matplotlib.pyplot as plt
import keras_ocr
pipeline = keras_ocr.pipeline.Pipeline()
image = keras_ocr.tools.read("document.jpg")
predictions = pipeline.recognize([image])
keras_ocr.tools.drawAnnotations(image, predictions[0])
plt.imshow(image)
plt.show()
Kesimpulan
Keras-OCR menyederhanakan ekstraksi teks dengan pipeline siap pakainya, menjadikannya pilihan tepat untuk pengembang yang membutuhkan OCR cepat dan akurat tanpa setup rumit. Integrasinya dengan Keras dan TensorFlow memungkinkan kustomisasi, sementara pemrosesan batch memastikan skalabilitas.
Baik Anda membangun pemindai dokumen, mengotomatiskan entri data, atau menganalisis konten media sosial, Keras-OCR menyediakan solusi ringan namun powerful.