Jump to content

Tesseract (Screen OCR) UDF


seangriffin
 Share

Recommended Posts

Yes. As a Java OCR engine, the Java Runtime is required. Something you should have, anyway. It seems almost as ubiquitous as flash, these days.

Link to comment
Share on other sites

  • 4 weeks later...

Nice work again seangriffin!

Note: For english recognition, also need to download http://tesseract-ocr.googlecode.com/files/...2.00.eng.tar.gz

Other language data files also available from http://code.google.com/p/tesseract-ocr/downloads/list

Tesseract seem not to support Chinese recognition,and not to accurately recognite the number when i run TesseractControlCapture.au3

Link to comment
Share on other sites

  • 2 weeks later...

Hi Malakith,

Yes I think anyone with Vista that uses the "$show_capture = 1" parameter will get this error. This code came from another AutoIT forum topic. The code accesses the "Windows Image and Fax Viewer" object that comes with Windows XP. I use this because it supports the TIFF files generated by Tesseract. I believe the "Windows Image and Fax Viewer" has been removed from Windows Vista, and this is why you are getting the error. I use Windows XP myself. If anyone has a TIFF viewer solution for both Win XP and Vista I'd like to know!

HI,

Just want to let you know, I got the same issue with Window 7 RC. Its a nice library, hope you can fix it.

Jerry

Link to comment
Share on other sites

  • 3 weeks later...

Hi,

I have a problem with using this UDF within the loop. It seems to me, that some part of memory is not freed after the functions finishes. Runnig it in the loop causes memory outage and results in error message:

_WinAPI_CreateCompatibleBitmap: W magazynie brak miejsca dla wykonania tego polecenia

wich could be translated like:

_WinAPI_CreateCompatibleBitmap: There is no enough room in the storage to run this task

I've tried to find the place where the memory leak could be possible, but I failed. I'd be greatfull for any clue or help with solving this issue.

Some more explenation:

I have 1GB of RAM, and about 600MB of that memory is free at the script startup. After about 5 minutes and about 500

$tmp = _TesseractScreenCapture(0, "", 1, 3, 690, 168, 900, 750, 0)

function calls, I got the above error. The memory state at this time is about 400MB of free memory.

Link to comment
Share on other sites

REQUIREMENTS:

Java runtime is required?

Nothing happens if I run the sample, it just opens IE page & thats it, it just sits there. i do not have java.

I may have mistakenly had Java in the REQUIREMENTS section of the UDF at one time. I have since corrected that. Java isn't required.

Not sure why the samples are not working for you. I would suspect that Tesseract may not be installed correctly on your computer.

If the Tesseract install worked, you should have the following file on your computer:

"C:\Program Files\tesseract\tesseract.exe"

Check if this file exists.

Cheers, Sean.

See my other UDFs:

Chrome UDF - Automate Chrome | SAP UDF - Automate SAP | Java UDF - Automate Java Applications & Applets | Tesseract (OCR) UDF - Capture text from applications, controls and the desktop | Textract (OCR) UDF - Capture text from applications and controls | FileSystemMonitor UDF - File, Folder, Drive and Shell Monitoring | VLC (Media Player) UDF - Creating and controlling a VLC control in AutoIT | Google Maps UDF - Creating and controlling Google Maps (inc. GE) in AutoIT | SAPIListBox (Speech Recognition) UDF - Speech Recognition via the Microsoft Speech (SAPI) ListBox | eBay UDF - Automate eBay using the eBay API | ChildProc (Parallel Processing) UDF - Parallel processing functions for AutoIT | HyperCam (Screen Recording) UDF - Automate the HyperCam screen recorder | Twitter UDF - Automate Twitter using OAuth and the Twitter API | cURL UDF - a UDF for transferring data with URL syntax

See my other Tools:

Rapid Menu Writer - Add menus to DVDs in seconds | TV Player - Automates the process of playing videos on an external TV / Monitor | Rapid Video Converter - A tool for resizing and reformatting videos | [topic130531]Rapid DVD Creator - Convert videos to DVD fast and for free | ZapPF - A tool for killing processes and recycling files | Sean's eBay Bargain Hunter - Find last minute bargains in eBay using AutoIT | Sean's GUI Inspector - A scripting tool for querying GUIs | TransLink Journey Planner with maps - Incorporating Google Maps into an Australian Journey Planner | Automate Qt and QWidgets | Brisbane City Council Event Viewer - See what's going on in Brisbane, Australia
Link to comment
Share on other sites

  • 2 weeks later...

Sean (or anyone else),

I'm trying to work with the UDF, but I don't seem to be able to make it work. It seems to be broken for me at the base level. I'm testing the CaptureToTIFF() function, and it only outputs a blank .tif file.

I have the latest version of Tesseract installed in my program files directory.

Here's my script:

#include <Tesseract.au3>

$left_indent = 0
$top_indent = 0
$right_indent = 0
$bottom_indent = 0
$show_capture = 1

CaptureToTIFF("Calculator", "", "", "test01.tif", "", $left_indent, $top_indent, $right_indent, $bottom_indent)
Link to comment
Share on other sites

this is an awesome script. it works very well for me.

but, i had some probs with the scaling too.

how di i figure out these ident values from given pixel cords?

as for now im running it over and over again, while adjusting the values, to get the desired part of the screen captured using _TesseractWinCapture.

would it be possible to change the tesseract functions to use normal pixel cords, to become more user friendly?

Link to comment
Share on other sites

  • 2 weeks later...

It seems that my tiff files are stretched out. So it makes it harder for the OCR to be correct. I am trying to use this on Norton Antivirus. I have to put the Scale to like 30... but it is so stretched out there are only a few words that it actually finds. >_

Link to comment
Share on other sites

  • 1 month later...

I would like to use this UDF to do a OCR capture of a customized Tooltips. I cannot directly read the tooltip string using WinGetText()..so I'm thinking of feeding _TesseractControlCapture() with the Tooltip window info. But I only can get the following info from this tooltip. How do I put them into _TesseractControlCapture() parameters?

Window Handle: 0x002E01C6

Window Class: Afx:1da0000:8

Window Title:

Window Text:

Window Process: 1960

My General Help & Support Post

Edited by VAG
Link to comment
Share on other sites

this is an awesome script. it works very well for me.

but, i had some probs with the scaling too.

how di i figure out these ident values from given pixel cords?

as for now im running it over and over again, while adjusting the values, to get the desired part of the screen captured using _TesseractWinCapture.

would it be possible to change the tesseract functions to use normal pixel cords, to become more user friendly?

Been the same today, farting about with trying to get the correct location

It dosent seem to work according to any earthly logic, you change the left indent and it pushes the whole capture area over and does all sorts of bananas things.

I got it right after an hour or so moving 2/2 pixes at a time at either end, it worked great, I went for a crap, come back and it was taking an image of another part of the screen :D

Anyone know how to get this working with human coords ?

Or if not, even explain the indent workings ?

EDIT:

sorry I didnt realize this was in examples :D (came into it via via the aearch)

Edited by JohnOne

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Link to comment
Share on other sites

sorry I didnt realize this was in examples :D (came into it via via the aearch)

Erm, could you point me to the example that helped you figure out how to use coords with this? :D

The Wheel of Time turns, and Ages come and pass, leaving memories that become legend. Legend fades to myth, and even myth is long forgotten when the Age that gave it birth comes again.

Link to comment
Share on other sites

Erm, could you point me to the example that helped you figure out how to use coords with this? :D

Sorry Hawkwing

I only just seen your post

I meant, I didnt realize I had posted in the example scripts forum.

Was too tedious for me so I used simpletesseract which has modified earthling co-ordinates

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Link to comment
Share on other sites

  • 2 weeks later...

The link to the Tesseract installer (.exe) is not working, is there another place we can get it?

Apologies for the long, long, (long), delay in getting back to this topic.

Perhaps the server hosting Tesseract201.exe was down at one point, but it's definitely working at the moment.

http://web.aanet.com.au/seangriffin/Tesseract201.exe

Cheers, Sean.

See my other UDFs:

Chrome UDF - Automate Chrome | SAP UDF - Automate SAP | Java UDF - Automate Java Applications & Applets | Tesseract (OCR) UDF - Capture text from applications, controls and the desktop | Textract (OCR) UDF - Capture text from applications and controls | FileSystemMonitor UDF - File, Folder, Drive and Shell Monitoring | VLC (Media Player) UDF - Creating and controlling a VLC control in AutoIT | Google Maps UDF - Creating and controlling Google Maps (inc. GE) in AutoIT | SAPIListBox (Speech Recognition) UDF - Speech Recognition via the Microsoft Speech (SAPI) ListBox | eBay UDF - Automate eBay using the eBay API | ChildProc (Parallel Processing) UDF - Parallel processing functions for AutoIT | HyperCam (Screen Recording) UDF - Automate the HyperCam screen recorder | Twitter UDF - Automate Twitter using OAuth and the Twitter API | cURL UDF - a UDF for transferring data with URL syntax

See my other Tools:

Rapid Menu Writer - Add menus to DVDs in seconds | TV Player - Automates the process of playing videos on an external TV / Monitor | Rapid Video Converter - A tool for resizing and reformatting videos | [topic130531]Rapid DVD Creator - Convert videos to DVD fast and for free | ZapPF - A tool for killing processes and recycling files | Sean's eBay Bargain Hunter - Find last minute bargains in eBay using AutoIT | Sean's GUI Inspector - A scripting tool for querying GUIs | TransLink Journey Planner with maps - Incorporating Google Maps into an Australian Journey Planner | Automate Qt and QWidgets | Brisbane City Council Event Viewer - See what's going on in Brisbane, Australia
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...