A method of identifying regions of an input image that contain human-readable, printable characters, said method comprising the following steps;
- (1) providing a plurality of training images, said training images having printable character regions containing examples of said printable characters and non-character regions not containing examples of said printable characters;
- (2) for each of said training image, applying the following steps:
- (a) identifying printable-character regions and non-printable regions, each identified printable-character region and identified non-printing region being designated a training region;
- (b) constructing a connected components (CC) region for each training region by constructing connected components of the foreground pixels in each training region, each CC region and its corresponding training region from which it is constructed constituting a training sample pair;
- (c) computing a plurality of image feature characteristic statistics for each training sample pair, wherein each image feature characteristic statistic provides distinguishing information of each sample pair;
- (3) defining a character classifier block using said image feature characteristic statistics, said character classifier block including at least a level 1 classifier sub-block, a level 2 classifier sub-block and level 3 classifier sub-block, each classifier sub-block classifying a received image region as a printable-character region or as a non-printable regions, wherein said level 2 classifier sub-block has a greater computational cost than said level 1 classifier sub-block, and said level 3 classifier sub-block has a greater computational cost than said level 2 classifier sub-block;
- (4) extracting a plurality of test sample pairs from said input image, each test sample pair including a test image region of said input image and a test CC region constructed from the test image region;
- (5) submitting said plurality of test sample pairs to said character classifier block, wherein:
- the level 1 classifier sub-block receives for classification all of said plurality of test sample pairs;
- the level 2 classifier sub-block receives for classification test sample pairs classified as printable-character regions by the level 1 classifier sub-block and does not receive any test sample pairs classified as non-character regions by the level 1 classifier sub-block;
- and
- the level 3 classifier sub-block receives for classification test sample pairs classified as printable-character regions by the level 2 classifier sub-block and does not receive any test sample pairs classified as non-character regions by the level 2 or level 1 classifier sub-blocks;
- and
- (6) designating the test image regions of the test sample pairs classified as printable-character regions by the level 3 classifier sub-block as the regions of the input image that contain human-readable, printable characters.