1. Produk
  2.   OCR
  3.   JavaScript
  4.   Guten OCR
 
  

Perpustakaan JavaScript Gratis untuk Menganalisis Teks dari Gambar & Formulir Pindai

Perpustakaan JavaScript OCR (Optical Character Recognition) sumber terbuka untuk mengurai teks dari gambar dan dokumen hasil pemindaian hitam-putih dengan dukungan pra-pemrosesan gambar & templat dalam aplikasi Web atau Node.js.

Di dunia digital modern, teknologi pengenalan karakter optik (OCR) memainkan peran penting dalam mengubah gambar yang dipindai, catatan tulisan tangan, atau dokumen cetak menjadi data yang dapat diedit dan dapat dicari. Bagi pengembang JavaScript yang mencari solusi ringan dan sumber terbuka, Guten OCR menawarkan pilihan yang menarik. Mesin OCR berbasis JavaScript ini dirancang dengan kesederhanaan, menjadikannya ideal untuk menyematkan fitur OCR langsung ke dalam aplikasi berbasis browser atau Node.js. Ada beberapa fitur penting dalam perpustakaan ini, seperti pengenalan karakter melalui templat, ambang batas gambar dan binarisasi, segmentasi karakter, pencocokan templat dan perakitan teks, dukungan basis kode modular, dan sebagainya. Ia fokus pada pengenalan teks cetak dari dokumen yang dipindai berwarna hitam-putih dan paling cocok untuk teks yang terformat dengan baik, seperti buku atau formulir.

Guten OCR adalah mesin OCR open-source berbasis JavaScript 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 memsegmentasi karakter dan mengidentifikasinya menggunakan sistem pengenalan pola karakter. Meskipun belum dapat bersaing dengan mesin OCR komersial seperti Tesseract dalam hal dukungan teks multibahasa atau tulisan tangan, kesederhanaan dan kemudahan modifikasinya menjadikannya pilihan fantastis untuk proyek edukasi, proof-of-concept, atau fitur OCR terintegrasi 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.

Previous Next

Memulai dengan Guten OCR

Cara yang disarankan 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 repositori.

Pra-pemrosesan Gambar Sebelum Operasi OCR

Perpustakaan Guten OCR sumber terbuka ditulis sepenuhnya dalam JavaScript, sehingga kompatibel dengan lingkungan browser dan 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 melalui 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 melalui Templat

Perpustakaan JavaScript Guten OCR telah menyediakan dukungan lengkap untuk melakukan operasi OCR menggunakan templat di dalam aplikasi JavaScript. Di inti Guten OCR terdapat sistem pencocokan templat. Alih-alih melatih model pembelajaran mesin, ia menggunakan pola karakter yang telah ditentukan sebelumnya. Hal ini membuat sistem lebih cepat dan lebih mudah dipahami tetapi lebih sensitif terhadap konsistensi font dan tata letak. Untuk melakukan tugas ini, perpustakaan merender setiap karakter (A–Z, a–z, 0–9, dll.) dalam sebuah 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 dengan menggunakan kombinasi pemindaian garis vertikal dan horizontal untuk menemukan kotak pembatas.

Segmentasi Karakter melalui Perpustakaan OCR

Perpustakaan JavaScript sumber terbuka Guten OCR memungkinkan pengembang perangkat lunak melakukan segmentasi karakter dengan mudah. Setelah gambar dibinarisasi, langkah selanjutnya adalah segmentasi karakter individu. Guten OCR memindai baris dan kolom untuk mendeteksi wilayah dengan piksel hitam yang padat, memisahkannya menjadi karakter potensial. Contoh berikut menunjukkan 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]
 Indonesia