Perpustakaan JavaScript Gratis untuk Menganalisis Teks dari Gambar & Formulir Pindai
Perpustakaan JavaScript Open Source Optical Character Recognition (OCR) untuk Menganalisis Teks dari Gambar & Dokumen Pindai Hitam‑Putih dengan Dukungan Pra‑pemrosesan Gambar & Templat di Aplikasi Web atau Node.js.
Di dunia digital modern, teknologi optical character recognition (OCR) memainkan peran penting dalam mengubah gambar pindai, catatan tulisan tangan, atau dokumen cetak menjadi data yang dapat diedit dan dicari. Bagi pengembang JavaScript yang mencari solusi ringan dan open‑source, Guten OCR menawarkan pilihan yang menarik. Mesin OCR berbasis JavaScript ini dirancang dengan kesederhanaan, menjadikannya ideal untuk menyematkan fitur OCR langsung ke aplikasi berbasis browser atau Node.js. Ada beberapa fitur penting dalam perpustakaan ini, seperti pengenalan karakter via templat, ambang batas dan binarisasi gambar, segmentasi karakter, pencocokan templat dan perakitan teks, dukungan basis kode modular, dan sebagainya. Ia berfokus pada pengenalan teks cetak dari dokumen pindai hitam‑putih dan paling cocok untuk teks yang terformat dengan baik, seperti buku atau formulir.
Guten OCR adalah mesin OCR JavaScript open‑source yang dibuat oleh Gutenye. Tidak seperti alat OCR berat yang memerlukan dependensi eksternal atau pengaturan yang rumit, Guten OCR ditulis sepenuhnya dalam JavaScript, artinya dapat dijalankan di peramban web atau di server dengan Node.js. Perpustakaan ini menggunakan teknik pemrosesan gambar dasar untuk menyegmentasi karakter dan mengidentifikasinya menggunakan sistem pengenalan pola karakter. Meskipun belum dapat bersaing dengan mesin OCR komersial seperti Tesseract dalam hal dukungan multibahasa atau tulisan tangan, kesederhanaan dan kemudahannya untuk dimodifikasi menjadikannya pilihan fantastis untuk proyek edukasi, proof‑of‑concept, atau fitur OCR tersemat dalam aplikasi web khusus. Tidak seperti Tesseract atau mesin yang lebih besar lainnya, Guten OCR sengaja dibuat ringan dan terfokus—menjadikannya titik awal yang sangat baik bagi mereka yang ingin memahami cara kerja OCR di balik layar.
Memulai dengan Guten OCR
Cara yang direkomendasikan untuk menginstal Guten OCR adalah menggunakan Brew. Silakan gunakan perintah berikut untuk instalasi yang lancar
Instal Guten OCR via Brew
brew install git-lfs Instal Guten OCR via GitHub
git clone git@github.com:gutenye/ocr.git Anda juga dapat menginstalnya secara manual; unduh file rilis terbaru langsung dari GitHub repository.
Pra‑pemrosesan Gambar Sebelum Operasi OCR
Perpustakaan Guten OCR sumber terbuka ditulis sepenuhnya dalam JavaScript, sehingga kompatibel dengan lingkungan browser maupun Node.js. Ia menyertakan fungsi pra‑pemrosesan gambar bawaan untuk meningkatkan akurasi pengenalan. Ia mendukung Binarisasi gambar (mengubah menjadi hitam‑putih), pengurangan noise, koreksi kemiringan, dan lainnya. Contoh berikut menunjukkan bagaimana pengembang dapat menerapkan beberapa langkah pra‑pemrosesan gambar sebelum melakukan operasi OCR pada gambar.
Cara Menerapkan Pra‑pemrosesan Gambar sebelum Operasi OCR via Perpustakaan JavaScript?
const { preprocess } = require('guten-ocr');
// Apply multiple preprocessing steps
const processedImage = preprocess(imageData, [
'grayscale', // Convert to grayscale
'binarize', // Convert to black and white
'deskew', // Correct skew
'denoise' // Reduce noise
]);
// Then perform OCR on the processed image
ocr.recognize(processedImage).then(/* ... */);
Pengenalan Karakter via Templat
Perpustakaan JavaScript Guten OCR menyediakan dukungan lengkap untuk melakukan operasi OCR menggunakan templat di dalam aplikasi JavaScript. Di jantung Guten OCR terdapat sistem pencocokan templat. Alih‑alih melatih model pembelajaran mesin, ia menggunakan pola karakter yang telah ditentukan sebelumnya. Ini membuat sistem lebih cepat dan lebih mudah dipahami namun lebih sensitif terhadap konsistensi font dan tata letak. Untuk melakukan tugas ini, perpustakaan merender setiap karakter (A–Z, a–z, 0–9, dll.) dalam kanvas dan kemudian matriks biner untuk setiap karakter menjadi templat referensi. Saat menganalisis gambar, perpustakaan membandingkan segmen gambar dengan templat‑templat ini untuk menemukan kecocokan terbaik. Ia melakukan ini menggunakan kombinasi pemindaian garis vertikal dan horizontal untuk menemukan kotak pembatas.
Segmentasi Karakter via Perpustakaan OCR
Perpustakaan JavaScript open‑source Guten OCR memungkinkan pengembang perangkat lunak melakukan segmentasi karakter dengan mudah. Setelah gambar dibinarisasi, langkah selanjutnya adalah menyegmentasikan karakter‑karakter individual. Guten OCR memindai baris dan kolom untuk mendeteksi wilayah dengan kepadatan piksel hitam, memisahkannya menjadi karakter potensial. Contoh berikut memperlihatkan bagaimana pengembang perangkat lunak dapat melakukan segmentasi karakter menggunakan perpustakaan OCR JavaScript.
Cara Melakukan Segmentasi Karakter menggunakan Perpustakaan JavaScript?
const segment = require('guten-ocr/segment');
const boxes = segment(binarized); // returns array of [x, y, width, height]