ReadText
Reads a text string in an image region using character models in a user-trainedfont.
- The TrainFont, ReadText and VerifyText functions are only available on In-Sight vision systems using In-Sight firmware 4.x.x, and are not available on In-Sight vision systems running In-Sight firmware 5.1.0 and later. For a complete list of models and supported firmware versions, see Firmware Versions.
- Cognex recommends that the OCRMax function be used instead of the ReadText, TrainFont and VerifyText functions, which are legacy functions. The OCRMax function has enhanced performance capabilities.
- Always use VerifyTextif the string is known.The string will be read faster and be more accurate.For more information, see VerifyText.
- If speed is notneeded for your application, enable ScaleTolerance parameter, since minor variations in size can degrade results significantly.
- If your stringis found in the wrong location or not found at all, retry with Confusing Background parameter enabled.
- If the wrong characteris being read, switch the Reading Mode parameter from Speed to Accuracy.Accuracy is better at distinguishing between charactersand gives a more accurate score.If the character is still being misread,open your trained fontand investigate the two confusing characters; they may have been trainedpoorly.For more information, see OCV/OCR Font Training Dialog.
- If you are readinga string that always has spaces in the same place then add spaces to theField String.
ReadTextInputs
Syntax: ReadText(Image,Fixture.Row,Fixture.Column,Fixture.Theta,Region.X,Region.Y,Region.High,Region.Wide,Region.Angle,Region.Curve,Font,Field String,FieldDefinitions,AcceptThresh,DifferenceAccept,Tune,Reading Mode,Confusing Background,Scale Tolerance,Timeout,Show))
Parameter | Description | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
This argument must reference a spreadsheetcell that contains a valid Image data structure.By default, the cell referenced isA0 which contains the Image data structure returned by AcquireImage.For more information, see AcquireImage. |
|||||||||||||||||||||||||
Specifies the image coordinate system inwhich the input region is defined.
|
|||||||||||||||||||||||||
Specifies the rectangular image region thatcan be translated and rotated.
|
|||||||||||||||||||||||||
Cell reference to a Font datastructure containing a trained font. |
|||||||||||||||||||||||||
Specifies the number of characters containedin the character string.A Field Stringentry can be any alphanumeric character found in the text entry dialog,including:
Each character in the FieldString corresponds to an indexed field position between 0 and 31.The Field String must containthe same number of positions as there are characters in the string forthe read to pass.By default, each position in the FieldString is represented as an asterisk (*) character, or alphanumeric"wildcard."This means that any character is valid at any positionin the string.However, an individual position in theField String can be limited toconsider only a subset of possible characters at that position.This increasesoverall performance and reliability because characters that are not possibleat a position will not be considered during a read. The pre-defined FieldString entries are:
Note:
|
|||||||||||||||||||||||||
Note: Using one of the predefined entries (*, A, a, N, H, h, O) in theField Definitions parameter willremap the list of valid characters in the new definition.
|
|||||||||||||||||||||||||
Specifies the minimum acceptable match score(0 to 100; default = 70) for eachcharacter.ReadText will fail any character with a match score below Accept Thresh and fail the string. |
|||||||||||||||||||||||||
The minimum difference required between thematch scores of the highest scoring character and the second highest scoringcharacter (0 to 20; default = 0).
|
|||||||||||||||||||||||||
Adjusts the scale of the character modelsin the referenced Font data structure from 50% to 200%.Matchscores are maximized when the character models are as close as possibleto the size of the characters to read.Enable Tuneonly when the difference between the size of the character models andthe characters to be read exceeds ±5%. Tuning is a one-time operation that usessignificant processing time.After running the jobonce with Tune enabled, openthe spreadsheet and disable Tuneto save processing time during subsequent job runs.
|
|||||||||||||||||||||||||
Specifies whether an advanced algorithm isused to improve reading accuracy. Note: Because ofbackground variations, occasionally selecting Speed will produce higherscores than when Accuracy is selected.Base selection on application.
Tip: The AcceptThresh parameter value may need to be lowered when Accuracy is selected due to strictscoring.
|
|||||||||||||||||||||||||
Specifies if other features within the imageare being confused with the text string.This is especially useful ifother features within the image are being mistaken for the beginning ofthe string.
|
|||||||||||||||||||||||||
Specifies a tolerance of ± 10% to compensate for small variationsin character size.
|
|||||||||||||||||||||||||
Specifies the amount of time, in milliseconds(0 to 30000), that the functionwill search for a valid text string before execution is halted and an#ERR is returned. Setting the value to 0 disables the setting and a timeout is not applied. |
|||||||||||||||||||||||||
Specifies which ReadText graphics overlaythe image.
|
ReadTextOutputs
Returns |
A Text data structure containingthe character string that was read, or #ERR if any of the input parametersare invalid. |
Results |
When ReadText is initially inserted intoa cell, a result table is created in the spreadsheet. |
ReadTextVision Data Access Functions
The following Vision Data Access functions are automatically inserted into the spreadsheet to create the result table. For more information, see VerifyText.
String |
GetString(Text) |
Returns the text string in the referencedText data structure. |
StringPass |
GetPassed(Text) |
Returns the pass/fail status of the entirestring in the referenced Text data structure. |
Char |
GetChar(Text, Index0, [Index1]) |
Returns the indexed character in the referencedText data structure.When an optional Index1parameter is 1, returns the secondhighest scoring character. |
Score |
GetScore(Text, Index0, [Index1]) |
Returns the match score (0to 100) for the indexed character in the referenced Text data structure.If the optional Index1parameter is 1, returns the scoreof the second highest scoring character. |
Passed |
GetPassed(Text, Index) |
Returns the pass/fail status of the indexedcharacter in the referenced Text data structure.If no Index parameter is specified, returnsthe pass/fail status of the entire string. |
The following data elements can also be accessedusing Text Vision Data Access functions:
Angle |
GetAngle(Text) |
Returns the angle between the text stringin the Text data structure and the horizontal axis of the Image data structure. |
Col |
GetCol(Text,Index) |
Returns the column coordinate (in pixels)of the indexed character in the referenced Text data structure. |
High |
GetHigh(Text,Index) |
Returns the height (in pixels) of the indexedcharacter in the referenced Text data structure. |
Row |
GetRow(Text,Index) |
Returns the row coordinate (in pixels) ofthe indexed character in the referenced Text data structure. |
Wide |
GetWide(Text,Index) |
Returns the width (in pixels) of the indexedcharacter in the referenced Text data structure. |