
Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net
This Dolphin/Konqueror service menu will give you a possibility to OCR images conveniently in your file manager window.
This is a very simple program. It OCR's a document and puts it into a file that has the same name as the OCRed image file but with a txt extension.
For the menu to be visible and have basic functionality (OCR tif files) you have to have tesseract-ocr installed and in your path, as well as the desired language packages. (The menu is tested against tesseract-ocr v. 2.03 and 2.04).
To be able to OCR png and jpeg images you have to have imagemagick installed. To be able to OCR pdf file you have to have ghostscript installed.
TRANSLATION: Find the translatable strings at: http://pastebin.com/QV7vV7jn, do the translation and forward those to me via a personal message or email.
INSTALLATION: Install through the Dolphin settings menu. If it does not work, LET ME KNOW and see the readme.txt file for alternative installation methods.
KNOWN PROBLEMS: none at present.
TROUBLESHOOTING: If you experience problems, and you get no output:
1. Ensure that you do have tesseract installed, as well as the appropriate language packs that you use. Also, check that you have imagemagick, ghostscript installed if you want it to work with images other than plain tif. In Debian/ubuntu, commands "dpkg -l | grep tesseract" "dpkg -l | grep imagemagick" "dpkg -l | grep ghostscript" will tell you what you have installed.
2. Check if the problem you experience is in the tesseract engine itself. To do this: a) download this image (http://ftp.akl.lt/users/dgvirtual/ocr_using_tesseract/testimage.tif) and run tesseract against it in console first using english ("tesseract testimage.tif testoutput") and then the language you have problems with (say – Spanish: "tesseract testimage.tif testoutput -l spa"). If you get the file testoutput.txt with text in both cases (it should not be nice), then the problem is not in tesseract or your tesseract installation. Otherwise, consult tesseract ocr website and forums for solution.
2. To troubleshoot the problems related to the service menu, test it against the image you downloaded in the previous step. If it works, test against other images in http://ftp.akl.lt/users/dgvirtual/ocr_using_tesseract/ – if it does not, there must be a problem with imagemagick (png, gif, jpg) or ghostscript (pdf) installations.
3. To figure out what problems could there be in the script and to get help from me, please run the shell script from the service menu archive ocr_using_tesseract.sh against the image with a trouble like this "ocr_using_tesseract.sh en image.png" (note the "en" and not "eng" here) and send the image, the output txt file and the output produced by command to me (my email is in readme.txt file).
10 years ago
v. 0.3 – 2010-09-30
- The service menu is now fully localizable
- Limitation for uppercase extensions removed
v. 0.2.1 – 2010-09-27
- removed a bug that prevented the service menu to be displayed for PDF
files
- removed the accidental likewise named file overwrite problem
- got the readme.txt file back
- added German translation to the service menu thanks to Rettich
v. 0.2 – 2010-09-24
- attempted to make it knewstuff3 compatible – must be installible through the Dolphin services.
- siplified operation – a dialog asks to choose language, while there is only one service menu entry now.
- fixed progress bar error.
- it seems that the problem with directory names with spaces is gone.
v. 0.1 – 2010-03-10
- Initial creation of the service menu.
10 years ago
v. 0.3 – 2010-09-30
- The service menu is now fully localizable
- Limitation for uppercase extensions removed
v. 0.2.1 – 2010-09-27
- removed a bug that prevented the service menu to be displayed for PDF
files
- removed the accidental likewise named file overwrite problem
- got the readme.txt file back
- added German translation to the service menu thanks to Rettich
v. 0.2 – 2010-09-24
- attempted to make it knewstuff3 compatible – must be installible through the Dolphin services.
- siplified operation – a dialog asks to choose language, while there is only one service menu entry now.
- fixed progress bar error.
- it seems that the problem with directory names with spaces is gone.
v. 0.1 – 2010-03-10
- Initial creation of the service menu.
conar
10 years ago
dpkg -l | grep tess
ii tesseract-ocr 2.04-2+b1 Command line OCR tool
ii tesseract-ocr-eng 2.00-2 tesseract-ocr language files for English text
ii tesseract-ocr-spa 2.00-2 tesseract-ocr language files for Spanish text
Report
dgvirtual
10 years ago
Re the other problem – could you try simply running "tesseract yourfile.tif youroutput -l spa" (if it is not a tif, convert it to tif somehow) and see if it works. Maybe the problem is in tesseract? if it works on simple tif with spanish, does my service menu work on simple tif? If not, could you please email me the modifications you made in the script and your test image? My email is in readme.txt in the package.
By the way, what is your locale? Does it work if you change your locale to english?
Report
conar
10 years ago
Report
conar
10 years ago
1.- In Debian amd64 (Squeeze) can not be installed via dolphin
2.- INstalling manually only works english lang. Adding spa lang shows next errors:
Tesseract Open Source OCR Engine
tesseract: unicharset.cpp:76: const UNICHAR_ID UNICHARSET::unichar_to_id(const char*, int) const: Assertion `ids.contains(unichar_repr, length)' failed.
/usr/bin/ocr_using_tesseract.sh: line 90: 14225 Aborted tesseract "$INPUTFILE.$time.tif" "$OUTPUTFILE" -l "$LANGUAGE"
Report
stalin2000
10 years ago
123@kanotixkde4:/media/sdb1/Dokumente/Papiere$ ocr_using_tesseract.sh deu diplomanmeldung.jpg
it worked in the console, but it doesn't work if I do it via right-click menu
Report
dgvirtual
10 years ago
And for me it works both in console and through the menu... So I am not sure what the problem is. Maybe you made a mistake when modifying the *.desktop file – try it using english language (the one, I assume, you did not modify) – if it works, then there is a mistake in the german part :) Could you please review it, and if you do not find any fault – post it here?
By the way, the output you get on that file is not the best since the image is not sharp enough for tesseract. I opened it with gimp and applied threshold – i immediately got a sharper picture and consequently – better results.
You can also modify the image using this command:
convert diplomanmeldung.jpg -threshold 45% -monochrome diplomanmeldung45.jpg
The threshold percentages will vary depending on the image...
Here are results with your original file: http://pastebin.ca/1942257
Here is the modified image:
http://imagebin.ca/view/srt5cD.html
And the results with the modified image:
http://pastebin.ca/1942262
Report
stalin2000
10 years ago
123@kanotixkde4:/media/sdb1/Dokumente/Papiere$ ocr_using_tesseract.sh ger diplomanmeldung.jpg
Unable to load unicharset file /usr/share/tesseract-ocr/tessdata/ger.unicharset
File is:
http://www.christopherstark.de/extern/diplomanmeldung.jpg
Report
stalin2000
10 years ago
Report
dgvirtual
10 years ago
First, check if imagemagick is installed – it has a tool "convert" that is used in the script. it can be done in Debian thus: "dpkg -l | grep imagemagick" – if it outputs the name and version of imagemagick, then this is more than a missing dependency problem...
Could you then send me an image that does not work? And also:
1. list of instaled tesseract packages (in Debian can be obtained running: "dpkg -l | grep tesseract")
2. output of running ocr_using_tesseract.sh from the console on the image you send me?
The command should be run this way:
"ocr_using_tesseract.sh eng your_image.png"
my email is in every file of the service menu...
Report
molecule-eye
10 years ago
Report
dgvirtual
10 years ago
However, I am not sure how it is done on command line, therefore – not sure this function can be integrated into these service menus.
Report
dgvirtual
10 years ago
Unfortunately, not all is well with the international characters: the embedded lithuanian is effectively stripped of all specific national characters... But English pretty much works!
Report