Instal Tesseract OCR di Linux

Tutorial ini menjelaskan cara menginstal Tesseract di Linux menggunakan manajer paket apt Debian dan repositori git untuk distribusi Linux lainnya.

Tesseract adalah solusi OCR gratis dan mungkin terbaik di pasar. Sejak tahun 2006 telah disponsori oleh Google; sebelumnya, dikembangkan oleh Hewlett Packard dalam C dan C++ antara 1985 dan 1998. Sistem ini dapat mengidentifikasi bahkan tulisan tangan; itu dapat dipelajari, meningkatkan akurasinya, dan termasuk yang paling berkembang dan lengkap di pasar.

Jika dilatih dengan benar, ia dapat mengalahkan pesaing komersial seperti ABBY; jika Anda mencari solusi serius untuk OCR, Tesseract adalah yang paling akurat, tetapi jangan berharap solusi besar: ia menggunakan inti per proses, yang berarti prosesor 8 inti (diterima hyperthreading) akan dapat memproses 8 atau 16 gambar secara bersamaan.

Tesseract adalah solusi yang bagus, tetapi sebelum memikirkannya, Anda harus tahu bahwa versi Tesseract terakhir membawa peningkatan besar, beberapa di antaranya berarti kerja keras. Meskipun pelatihan dapat berlangsung selama berjam-jam atau berhari-hari, pelatihan versi Tesseract terbaru mungkin berhari-hari, berminggu-minggu, atau bahkan berbulan-bulan, terutama jika Anda mencari solusi OCR multibahasa.

Menginstal Tesseract di Debian dan Ubuntu:

Untuk menginstal Tesseract pada distribusi Debian atau Ubuntu Linux, gunakan apt seperti yang ditunjukkan pada gambar di bawah.

sudo apt install tesseract-ocr -y

Ini akan menginstal Tesseract di bawah /usr/share/tesseract-ocr/4.00/tessdata.

Catatan : Untuk distribusi Linux lainnya, lompat ke Instal Tesseract dari Sumber.

Secara default, Tesseract akan menginstal paket bahasa Inggris. Untuk menginstal bahasa tambahan, sintaksnya adalah sebagai berikut. Pada contoh di bawah ini, saya akan menginstal paket bahasa Ibrani.

sudo apt install tesseract-ocr-heb

Untuk menginstal semua bahasa yang tersedia, jalankan:

sudo apt install tesseract-ocr-all -y

Agar Tesseract berfungsi dengan baik, kita perlu menggunakan perintah “convert”. Perintah ini berguna untuk mengkonversi antara format gambar dan mengubah ukuran gambar, blur, crop, despeckle, gentar, draw on, flip, join, re-sample, dan banyak lagi. Alat ini disediakan oleh Imagemagick:

sudo apt install imagemagick

Sekarang mari kita uji Tesseract, temukan gambar yang berisi teks dan jalankan:

tesseract <image_name> <output file_name>

Tesseract akan mengekstrak teks dari gambar.

Ketika saya bekerja dengan Tesseract, yang kami butuhkan hanyalah menghitung dokumen. Seperti program lainnya, Anda dapat, dan harus, melatihnya untuk memahami tulisan tanga
n.

Dalam editor teks tingkat lanjut, kita dapat menentukan beberapa simbol yang dapat dihitung atau tidak, apakah untuk menghitung atau tidak angka, dll, sama dengan kemungkinan yang tersedia di Tesseract.

Mengoptimalkan Tesseract:

  • Size Optimization: Menurut sumber resmi, ukuran piksel optimal agar gambar berhasil diproses oleh Tesseract adalah 300DPI. Kita perlu memproses gambar apa pun menggunakan parameter -r untuk menerapkan DPI ini. Meningkatkan DPI juga akan meningkatkan waktu pemrosesan.
  • Page rotation: Jika, saat dipindai, halaman tidak diposisikan dengan benar dan tetap 180° atau 45°, akurasi Tesseract akan berkurang, jadi Anda dapat menggunakan skrip Python untuk mendeteksi dan memperbaiki masalah rotasi secara otomatis.
  • Border Removal: Menurut orang resmi Tesseract, perbatasan dapat salah dipilih sebagai karakter, terutama perbatasan gelap dan di mana ada variasi gradasi. Menghapus batas mungkin merupakan langkah yang baik untuk mencapai akurasi maksimal dengan Tesseract.
  • Removing Noise: Menurut sumber Tesseract, noise “adalah variasi acak dari kecerahan atau warna dalam sebuah gambar”. Kita dapat menghapus variasi ini dalam langkah binarisasi, yang berarti mempolarisasi warnanya.

Pengantar proses pelatihan Tesseract:

Sebelumnya artikel ini membahas proses pelatihan Tesseract, yang berkembang menjadi proses yang lebih manual yang membutuhkan artikel khusus. Oleh karena itu, bagian ini hanya mencakup informasi teoretis tentang proses pelatihan dan instruksi untuk menginstal alat pelatihan Tesseract dan meluncurkannya.

Menurut wiki resmi Tesseract, kami memiliki 3 opsi saat ini untuk melatih sistem OCR kami:

  • “Setelan bagus. Dimulai dengan bahasa terlatih yang ada, latih data tambahan spesifik Anda. Ini mungkin bekerja untuk masalah yang dekat dengan data pelatihan yang ada tetapi berbeda dalam beberapa cara yang halus, seperti font yang sangat tidak biasa. Dapat bekerja bahkan dengan sejumlah kecil data pelatihan.
  • Potong lapisan atas (atau sejumlah lapisan yang berubah-ubah) dari jaringan dan latih kembali lapisan atas baru menggunakan data baru. Jika penyetelan halus tidak berhasil, kemungkinan besar ini adalah opsi terbaik berikutnya. Jika Anda memulai dengan skrip yang paling mirip, memotong lapisan atas masih dapat berfungsi untuk melatih bahasa atau skrip yang sama sekali baru.
  • Latih kembali dari awal. Kecuali Anda memiliki set pelatihan yang sangat representatif dan cukup besar untuk masalah Anda, ini adalah tugas yang menakutkan. Jika tidak, kemungkinan besar Anda akan berakhir dengan jaringan yang terlalu pas yang bekerja dengan sangat baik pada data pelatihan tetapi tidak pada data aktual.

Sebelum melanjutkan ke instruksi pelatihan Tesseract, kita perlu menginstal library tambahan:

sudo apt install libicu-dev libicu-dev libcairo2-dev

Pada distribusi Linux berbasis Debian, instal paket pengembangan Tesseract, termasuk alat pelatihan Tesseract menggunakan apt seperti yang ditunjukkan di bawah ini. Jika Anda tidak menggunakan distribusi Linux berbasis Debian, baca instruksi untuk menginstal alat pelatihan Tesseract dari sumber.

sudo apt install libtesseract-dev -y

Setelah instalasi, Anda akan dapat melihat alat pelatihan di bawah /usr/share/tesseract-ocr/ seperti yang ditunjukkan di bawah ini.

ls /usr/share/tesseract-ocr

Sebelum mulai melatih bahasa, Anda perlu menyediakan konten untuk dipelajari Tesseract.

Untuk ini, Anda perlu membuat direktori langdata dan subdirektori eng di dalam direktori utama instalasi Tesseract. Kemudian buat file teks pelatihan seperti yang ditunjukkan di bawah ini.

sudo mkdir /usr/share/tesseract-ocr/langdata/
sudo mkdir /usr/share/tesseract-ocr/langdata/eng/
sudo nano /usr/share/tesseract-ocr/langdata/eng/eng.training_text

Catatan : Ingatlah untuk menambahkan konten ke file eng.training_text.

Setelah file teks pelatihan ditambahkan, sintaks untuk memulai pelatihan bahasa adalah sebagai berikut. Perintah berikut adalah untuk melatih bahasa Inggris yang didefinisikan sebagai “ eng ”.

./tesstrain.sh --lang eng --langdata_dir /usr/share/tesseract-ocr/langdata --tessdata_dir /usr/share/tesseract-ocr/tessdata

Proses ini mungkin memakan waktu lama. Tentu saja, ini juga tergantung pada file teks pelatihan Anda. Ini adalah pengantar proses pelatihan Tesseract. Kami akan menerbitkan artikel baru yang berfokus pada proses pelatihan saja.

Memecahkan masalah font yang hilang:

Dalam kasus saya, saya mendapatkan error saat mencoba melatih Tesseract. Font Arial Bold tidak ada. Saya memecahkan ini dengan menjalankan perintah di bawah ini.

sudo apt install ttf-mscorefonts-installer

Instal Tesseract dari Sumber di Linux:

Pada distribusi Linux yang berbeda, Anda bisa mendapatkan Tesseract menggunakan git, seperti yang ditunjukkan di bawah ini.

git clone https://github.com/tesseract-ocr/tesseract.git

Setelah dikloning, masuk ke direktori tesseract dengan menjalankan menggunakan cd.

cd tesseract

Kemudian jalankan script autogen.sh seperti gambar dibawah ini.

sudo./autogen.sh

Perintah di atas membuat file instalasi; sekarang jalankan perintah berikut untuk memulai proses instalasi.

sudo./configure

Jalankan make untuk mulai mengkompilasi Tesseract.

sudo make

Kemudian jalankan make install, seperti yang ditunjukkan pada gambar di bawah.

sudo make install

Jalankan ldconfig seperti gambar di bawah ini.

sudo ldconfig

Untuk mengkompilasi alat pelatihan, jalankan perintah berikut.

sudo make training

Lalu lari:

sudo make training-install

Sekarang Anda dapat mengikuti instruksi untuk memulai proses pelatihan.

Kesimpulan:

Seperti yang Anda lihat, menginstal Tesseract di Linux cukup mudah, terutama pada distribusi Linux berbasis Debian. Ketika saya menggunakan Tesseract, kami mengelola ribuan calon pelanggan yang mengunggah konten tulisan tangan, gambar dengan teks, dll. Kami menggunakan 48 server inti, dengan DatabaseByDesign dan kemudian dengan AWS; kami tidak pernah memiliki masalah sumber daya.

Kami memiliki pengunggah yang membedakan antara file teks seperti file Microsoft Office atau Open Office dan gambar atau dokumen yang dipindai. Pengunggah menentukan skrip OCR atau PHP apa pun yang akan memproses pesanan di bidang pengenalan teks.

Dalam pengalaman saya, Tesseract adalah solusi OCR terbaik yang tersedia di pasar, dan bersifat open-source.

Terima kasih telah membaca tutorial ini yang menjelaskan cara menginstal dan mengkonfigurasi Tesseract OCR di Linux. Terus ikuti kami untuk tips dan tutorial Linux tambahan.

Related Posts