Patent ID: 7428998
Filing Date: 2008-09-30
Classification: G06K

Abstract:
1. An automatic hand-supportable digital imaging-based bar code symbol reading device comprising: a hand-supportable housing; an area image formation and detection subsystem having image formation optics for producing a field of view (FOV) upon an object to be imaged and an area image sensing array for detecting imaged light reflected off the object during illumination operations in a narrow-area image-capture mode in which a few central rows of pixels on said area image sensing array are enabled; a LED-based illumination subsystem for producing a field of narrow-area narrow-band illumination within said FOV during said narrow-area image-capture mode; an automatic object presence detection subsystem for automatically producing an object detection field within said FOV, for detecting an object having a 1D bar code symbol thereon; an image capturing and buffering subsystem for capturing and buffering a narrow-area digital image of said detected object; an image-processing based bar code symbol reading subsystem for automatically and directly processing said narrow-area digital image using decode image-processing based operations applied in an outwardly-directed manner on said narrow-area digital image, referenced from the center of said captured narrow-area digital image so as to attempt to read the 1D bar code symbol graphically represented within the narrow-area digital image of said object; an input/output subsystem for outputting processed image data from said image-processing based bar code symbol reading subsystem, to an external host system or other information receiving or responding device; and a system control subsystem for controlling and coordinating each said subsystem; wherein said imaging-based bar code reading subsystem reads at least one 1D bar code symbol represented in said capture narrow-area digital image by processing said narrow-area digital image using a method that comprises the steps of: (a) calculating the center pixel in said captured narrow-area digital image; (b) starting from said calculated center point, virtually scanning said narrow-area digital image using a spot-size window of pixels, and then processing said narrow-area digital image to determine if a first border in a bar code symbol is found, and if so, storing the pixel data in an image buffer; (c) if a first border is found during step (b), then, once again starting from said calculated center point, scanning said digital image using a spot-size window of pixels, and then processing said narrow-area digital image to determine if a second border in a bar code symbol is found, and if so, buffering the pixel data in said image buffer; (d) if said first and second borders are found, during steps (b) and (c), then processing said captured digital image so as to read a bar code symbol within the scanned line of image data associated with captured narrow-area digital image, and after the bar code symbol is read, then terminate image processing; (e) if a first border of a bar code symbol is not found during step (d), then determining if all possible scan lines within said captured narrow-area digital image have been processed; (f) if all possible scan lines have been processed through said narrow-area digital image, then terminate processing; (g) if all scan lines through said captured narrow-area image have not been processed at step (f), then advance to the next line of scan data in said captured narrow-area digital image and then scanning and processing the image data along the new scan line using a spot-size window of pixels; (h) if the second border of a bar code symbol is not found at step (d), then determining whether all scan lines through said captured narrow-area digital image have been processed; (i) if all scan lines through said captured narrow-area digital image have been processed, then terminate processing; (j) if all scan lines have not been processed at this stage of processing, then advance to the next line of scan data within said captured narrow-area digital image, for processing; (k) if a bar code symbol is not read within the current line of scan data being processed, then determine if all lines of scan data have been processed; (l) if all lines of scan data have not been processed, then advance to the next line of scan data in said captured narrow-area digital image, and then resume scanning and processing along the new scan line using a spot-size window of pixels; (m) if all lines of scan data have been processed, then terminate processing; and (n) for every bar code symbol that is decoded, produce symbol character data and save the same.