2011-09-03 29 views
15

Bir görüntüden sayıları taramak için bir uygulama yazıyorum.Tesseract iki sayıyı karıştırıyor

Numaralar OCR-B yazı tipini kullanıyor ve + ve > karakterleri içerebilir. bahsedilen karakterlerin karakter kümesini sınırlayan bile tesseract kullanılarak

source image

taramaları, çok iyi değildi:

Bu benim kaynak görüntüdür. Tesseract için herhangi bir OCRB eğitim dosyası bulamadığımdan, kendimi eğitmeye karar verdim.

this training image'u oluşturdum ve bir kutu dosyası oluşturdum. Kutu dosyası doğru, tüm harfler doğru şekilde eşleştirildi.

Diğer gerekli dosyaları oluşturmak için tüm adımları described here yaptım.

Bu yeni eğitilmiş OCR-B tessdata kümesini kullanarak, küçük bir hata ile kaynak görüntüde oldukça iyi sonuçlar elde ediyorum: Tüm 1 s 8 s ve vice-versa ile karıştırılmıştır. Görüntüyü işlemek için kullanılan komut oldu

$ tesseract esr2c.tif ocrb-esr2c -l ocrb 

ve tüm 1 takas olursa kaynak görüntü için çıkış> 8 00000195731208 8 01050008 023+ 08 0301226> 20

0800000001456 oldu s ve 8 s ve bunu kaynak görüntüyle karşılaştır, çıktı doğru olurdu (göz ardı edemeyeceğim son iki harf hariç).

Bu nasıl olabilir? Eğitim sürecinde hata yaptım mı? Bunu nasıl düzeltebilirim?

+0

Bu verinin gönderilmesinde güvenlikle ilgili bir etkisi yok mu? –

+0

@andrew gerçekten değil. referans kimliğinde hiçbir kişisel bilgi olmadan sadece eski, geçersiz bir fatura. –

+0

@DaniloBargen: Mümkünse, OCRB yazı tipi için eğitim verilerini paylaşır mısınız? –

cevap

6

Kutu dosyanızın herhangi bir yerinde 1 ve 8 için yanlış değerler (karakterler) olması olasıdır. jTessBoxEditor programını kullanarak doğrulayabilirsiniz. Öyleyse, dil veri dosyasını yeniden oluşturun ve tekrar deneyin.

+0

Çalışmak için jTessBoxEditor'ı alamıyorum (imageio kütüphanesiyle ilgili bazı sorunlar), ancak kutu dosyasını [OwlBoxer] ile kontrol ettim (http://code.google.com/p/owlboxer/) (Aslında dosyayı işledim bu aracı kullanarak) ve her şey doğru görünüyor. –

+0

Ayrıca tesseractTrainer.py kullanarak kutu dosyasını iki kez kontrol ettim ve hala herhangi bir hata bulamadım. –

+0

Kutu dosyanızın bir bağlantısını gönderir misiniz? Hangi Tesseract sürümünü eğitiyorsunuz? – nguyenq

2

OCR A genişletilmiş yazı tipi için 1 ay çalıştıktan sonra 2.04 tesseract eğitimi aldım. Çalışması çok iyi ve 90'ın üzerinde gösterme doğruluğu Yazı boyutu 14'tedir.

Eğitim görüntüsü yüksek kontrastlı resim olmalıdır. Kullanım "GIMP" resim düzenleyici ve Menü aşağıdakileri yapın Colors-> Bilgi-> Histgram- Oku Std Sapma değeri renkler-> Threshould -> Threshould değeri kaydet görüntüsü eğitim için kullanın olarak "Std Sapma değeri" yazın.

"qt-box-editor-1.06.exe" kullanarak kutu dosyanızı kontrol edin ve düzenleyin. Kullanımı çok kolaydır. Tüm kutuları ve içindeki karakterleri işaretleyin. Bu çok önemlidir. Kutu dosyanızın bir yerinde 1 ve 8 için yanlış karakterler var.

Diğer cmleri çalıştırın.

+0

Sorunu zaten çözdüm (diğer cevap hakkındaki yoruma bakın). Kutuların sırası jTessBoxEditor'da yanlıştı. Yine de teşekkürler. –

+0

OCR-B için 3.02 tesseract tesseract eğitimi aldım. Aynı antrenman setinde% 100 hassasiyet gibi geri dönüyor. Ama gerçek hayat resimlerini kontrol ettiğimde neredeyse sıfır doğrulukta. Senin için çalışıyor muydu? – Masri