Toon posts:

[OCR]Commandline tekst uit een plaatje halen

Pagina: 1
Acties:

  • van.der.schulting
  • Registratie: Juli 2002
  • Laatst online: 21-06-2021
Probleem:
Uit een plaatje wil ik het telefoonnummer omzetten naar tekst. Het plaatje bevat alleen het telefoonnummer.
In Ruby wil ik met behulp van OCR het telefoonnummer uitlezen. Ik had gehoopt dat me dat lukte met alleen ImageMagick, maar dat gaat niet lukken vrees ik.

Al snel kwam ik hierop uit: Tesseract en ImageMasgick.
Als ik doe wat hiier staat krijg ik allerlei foutmeldingen: http://ubuntuforums.org/showthread.php?t=1370827

Een andere optie is gocr gebruiken, maar dat werkt niet helemaakl foutloos. gocr maakt af en toe een foutje en leest een teken verkeerd. Dat kan ik wel handmatig corrigeren, maar dat is niet zo netjes. Dus liever geen gocr.

Afijn, omdat Tesseract o.a. een Segmentation fault geeft, dan Tesser-act maar even zelf compileren aan de hand van deze handleiding: http://code.google.com/p/tesseract-ocr/wiki/ReadMe
code:
1
2
3
4
5
6
7
8
9
10
11
12
Ik volg de volgende stappen:
 1. wget http://tesseract-ocr.googlecode.com/files/tesseract-3.00.tar.gz
 2. tar xvfz tesseract-3.00.tar.gz
 3. cd tesseract-3.00
 4. ./configure
 5. make
 6. sudo make install
 7. sudo ldconfig
 8. wget http://tesseract-ocr.googlecode.com/files/eng.traineddata.gz
 9. gzip -d eng.traineddata.gz
 10. sudo mv eng.traineddata /usr/local/share/tessdata/
 11. sudo apt-get install libpng12-dev libjpeg62-dev libtiff4-dev libtiff4 zlib1g-dev liblept


Dan ben ik in ieder geval van de segmentation fault af, maar nu krijg ik deze meldingen:
code:
1
Warning - no liblept or libtiff - cannot read compressed tiff files

Huh?? Ik heb die libs toch gewoon geinstalleerd? (stap 11)

En ook krijg ik deze foutmelding:
code:
1
2
3
name_to_image_type:Error:Unrecognized image type:test.gif
IMAGE::read_header:Error:Can't read this image type:test.gif
Read of file test.gif failed.

Van deze foutmelding en een zoektocht via Google word ik niet veel wijzer.

Mijn vragen:
1. Kan iemand mij vertellen wat ik fout doe met Tesseract?
2. Weet iemand misschien een andere library voor OCR die goed werkt (behalve gocr)?
3. Zoals ik aangaf schrijf ik het uiteindelijk in Ruby, dus als iemand een oplossing weet waarbij ik alles meteen in Ruby kan coden zonder gebruik te maken van commandline tools, dan hoor ik dat ook graag.

  • van.der.schulting
  • Registratie: Juli 2002
  • Laatst online: 21-06-2021
OK, voor stap 5 ben ik het commando './runautoconf' vergeten...

Anyhow, nu werkt het in zoverre dat liblept begint te miepen dat 'ie de formaten niet snapt. Liblept erafgegooid en nu geeft 'libtiff' de volgende melding:
code:
1
2
Tesseract Open Source OCR Engine
test.tif: Not a TIFF or MDI file, bad magic number 18759 (0x4947).


Als ik in de file manager kijk geeft Ubuntu keurig aan dat het een TIFF-file is en ook krijg ik gewoon het plaatje te zien. Het probleem lijkt dus niet echt te liggen aan het plaatje, maar meer dat libtiff het niet begrijpt.

Voor imagemagick voer ik overigens het volgende commando uit: 'convert <sourcefile> test.tif'

Iewmand enig idee waar ik deze fout moet zoeken??

  • sam.vimes
  • Registratie: Januari 2007
  • Laatst online: 22-05 13:20
Je moet de dev-versies van liblept en/of libtiff installeren. In Debian krijg ik de volgende mogelijkheden:
p   libleptonica-dev                - image processing library                  
v   libtiff-dev                     -                                           
p   libtiff4-dev                    - Tag Image File Format library (TIFF), deve

Daarna opnieuw configure draaien; als het goed is vindt hij de libs vanzelf, anders even uitzoeken met welke configure-optie ze kunnen worden opgepikt.

  • van.der.schulting
  • Registratie: Juli 2002
  • Laatst online: 21-06-2021
Helaas, het werkt niet
code:
1
2
3
jeroen@ubuntu:~/Documents$ tesseract test.tiff test.txt
Tesseract Open Source OCR Engine with LibTiff
Empty page


Krijg dus een lege pagina :(

Weet iemand toevallig hoe en of ik het met een JPG, GIF of PNG oid aan de praat krijg?


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee