Optical character recognition localization tool
First Claim
1. An image processor system, comprising:
- at least one processor; and
at least one nontransitory processor-readable storage medium communicatively coupled to the at least one processor and which stores at least one of processor-executable instructions or data, wherein in use the at least one processor;
receives an image file from the at least one nontransitory processor-readable storage medium, the image file comprising a two-dimensional array of pixels, each of the pixels having a pixel value;
partitions the image file into a two-dimensional array of regions comprising a plurality of rows and a plurality of columns, each of the regions comprising a plurality of the pixels;
for each region, determines a characteristic value indicative of whether the region contains foreground or background;
analyzes the determined characteristic values of the regions to identify a number of candidate directions or orientations for straight lines of characters in the image;
selects one of the number of candidate directions or orientations for straight lines of characters in the image based at least in part on the analyzed determined characteristic values of the regions to identify one or more lines of characters;
for each line of the identified one or more lines of characters,analyzes the determined characteristic values for the regions within the line to determine a probable inter-character spacing, wherein, to analyze the determined characteristic values, the at least one processor;
sums the characteristic values of the regions within each column within the line to generate an intensity profile for the line; and
analyzes the intensity profile to determine the probable inter-character spacing, wherein to analyze the intensity profile, the at least one processor;
analyzes the intensity profile to identify transitions between foreground and background;
determines a most frequent distance between the identified transitions between foreground and background; and
selects the determined most frequent distance as the probable inter-character spacing;
identifies a starting character region based at least in part on the determined characteristic values and the determined probable inter-character spacing; and
recognizes a character within the starting character region.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for processing images to recognize characters. Such may include locating background in an image which separate lines of characters, and then locating background which separate characters. The inter-character spaces within a line may be used to determine a probable inter-character spacing for the characters. Within each detected line, the character having an inter-character spacing most similar to the probable inter-character spacing may be set as a starting character for classification. Using the probable inter-character spacing and the location of the starting character, the location of a character adjacent to the starting character in a first direction may be determined and the character classified. Such process may repeat in the first direction until a first end of the line is reached. The process may then move to a character adjacent the starting character in a second direction and repeat until a second end of the line is reached.
63 Citations
18 Claims
-
1. An image processor system, comprising:
-
at least one processor; and at least one nontransitory processor-readable storage medium communicatively coupled to the at least one processor and which stores at least one of processor-executable instructions or data, wherein in use the at least one processor; receives an image file from the at least one nontransitory processor-readable storage medium, the image file comprising a two-dimensional array of pixels, each of the pixels having a pixel value; partitions the image file into a two-dimensional array of regions comprising a plurality of rows and a plurality of columns, each of the regions comprising a plurality of the pixels; for each region, determines a characteristic value indicative of whether the region contains foreground or background; analyzes the determined characteristic values of the regions to identify a number of candidate directions or orientations for straight lines of characters in the image; selects one of the number of candidate directions or orientations for straight lines of characters in the image based at least in part on the analyzed determined characteristic values of the regions to identify one or more lines of characters; for each line of the identified one or more lines of characters, analyzes the determined characteristic values for the regions within the line to determine a probable inter-character spacing, wherein, to analyze the determined characteristic values, the at least one processor; sums the characteristic values of the regions within each column within the line to generate an intensity profile for the line; and analyzes the intensity profile to determine the probable inter-character spacing, wherein to analyze the intensity profile, the at least one processor;
analyzes the intensity profile to identify transitions between foreground and background;
determines a most frequent distance between the identified transitions between foreground and background; and
selects the determined most frequent distance as the probable inter-character spacing;identifies a starting character region based at least in part on the determined characteristic values and the determined probable inter-character spacing; and recognizes a character within the starting character region. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of operation in an image processor system for recognizing one or more characters in an image file, the image file comprising a two-dimensional array of pixels, each of the pixels having a pixel value, the method comprising:
-
receiving, by at least one processor, the image file from at least one nontransitory processor-readable storage medium communicatively coupled to the at least one processor; partitioning, by the at least one processor, the image file into a two-dimensional array of regions comprising a plurality of rows and a plurality of columns, each of the regions comprising a plurality of the pixels; for each region, determining, by the at least one processor, a characteristic value indicative of whether the region contains foreground or background; analyzing, by the at least one processor, the determined characteristic values of the regions to identify a number of candidate directions or orientations for straight lines of characters in the image; selecting, by the at least one processor, one of the number of candidate directions or orientations for straight lines of characters in the image based at least in part on the analyzed determined characteristic values of the regions to identify one or more lines of characters; for each line of the identified one or more lines of characters, analyzing, by the at least one processor, the determined characteristic values for the regions within the line to determine a probable inter-character spacing, wherein analyzing the determined characteristic values comprises; summing, by the at least one processor, the characteristic values of the regions within each column within the line to generate an intensity profile for the line; and analyzing, by the at least one processor, the intensity profile to determine the probable inter-character spacing, wherein analyzing the intensity profile comprises; analyzing, by the at least one processor, the intensity profile to identify transitions between foreground and background; determining, by the at least one processor, a most frequent distance between the identified transitions between foreground and background; and selecting, by the at least one processor, the determined most frequent distance as the probable inter-character spacing; identifying, by the at least one processor, a starting character region based at least in part on the determined characteristic values and the determined probable inter-character spacing; and recognizing, by the at least one processor, a character within the starting character region. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An image processing system, comprising:
-
at least one processor; and at least one nontransitory processor-readable storage medium communicatively coupled to the at least one processor and which stores at least one of processor-executable instructions or data, wherein in use the at least one processor; partitions an image file into a two-dimensional array of regions comprising a plurality of rows and a plurality of columns, each of the regions comprising a plurality of pixels each including a pixel value; for each region, determines a characteristic value indicative of whether the region contains foreground or background; for each column, analyzes the determined characteristic values of the regions in the column to identify transitions between foreground and background; compares the identified transitions in adjacent columns to identify one or more candidate directions or orientations for straight lines of characters in the image; analyzes the identified transitions in adjacent columns to select one of the one or more candidate directions or orientations for straight lines of characters in the image to identify one or more lines of characters; for each line of the identified one or more lines of characters, analyzes the determined characteristic values to detect transitions between foreground and background, the transitions being horizontal with respect to the identified probable angle of orientation for the identified one or more lines of characters; analyzes the transitions between foreground and background to determine a probable inter-character spacing, wherein, to analyze the transitions, the at least one processor; sums the characteristic values of the regions within each column within the line to generate an intensity profile for the line; and analyzes the intensity profile to determine the probable inter-character spacing, wherein, to analyze the intensity profile, the at least one processor;
analyzes the intensity profile to identify transitions between foreground and background;
determines a most frequent distance between the identified transitions between foreground and background; andselects the determined most frequent distance as the probable inter-character spacing; compares the detected transitions with the determined probable inter-character spacing to identify a starting character region; and recognizes a character within the starting character region. - View Dependent Claims (16, 17, 18)
-
Specification