Software Study

Digital-imaging based code symbol reading system employing an event-driven multi-tier modular software architecture and supporting automatic operating system login and loading of code symbol reading application

Software Patent Abstract
Digital-imaging based code symbol reading system employing an event-driven multi-tier modular software architecture and supporting automatic operating system login and loading of a bar code symbol reading application.

Software Patent Claims
1. A digital-imaging based code symbol reading system comprising: a housing having a light transmission window; a digital image formation and detection subsystem, disposed in said housing, and having (i) image formation optics for projecting a field of view (FOV) through said light transmission window and upon an object to be imaged in said FOV, and (ii) an area-type image detecting array for detecting imaged light reflected off the object during illumination operations in an image capture mode in which rows of sensor elements in said area-type image detecting array are enabled so as to detect one or more 2D digital images of the object formed on said area-type image detecting array; an illumination subsystem, disposed in said housing, and having an illumination array for producing and projecting a field of illumination through said light transmission window and within said FOV during the image capture mode; an illumination control subsystem disposed in said housing, for controlling the operation of said illumination subsystem during said image capture mode; an image capturing and buffering subsystem disposed in said housing, for capturing and buffering said one or more 2D digital images detected by said image formation and detection subsystem; a digital image processing subsystem disposed in said housing, for processing said one or more 2D digital images captured and buffered by said image capturing and buffering subsystem, so as to read one or more 1D and/or 2D code symbols graphically represented therein, and producing symbol character data representative of said read one or more 1D and/or 2D code symbols; an input/output subsystem for transmitting said output data to an external host system or other information receiving or responding device; a system control system for controlling and/or coordinating the operation of said subsystems above; and a computing platform for supporting the implementation of one or more of said subsystems above, and including (i) memory for storing at least one code symbol reading application, and (ii) a microprocessor for running at least one code symbol reading application; and wherein said memory comprises a memory architecture that supports a multi-tier modular software architecture characterized by an Operating System (OS) Layer having automatic login, and an Application Layer in which at least one said code symbol reading application is automatically run, and being responsive to the generation of a triggering event within said digital-imaging based code symbol reading system.

2. The digital-imaging based code symbol reading system of claim 1, wherein said multi-tier modular software architecture is further characterized a System CORE (SCORE) layer disposed between said Application Layer and said OS Layer.

3. The digital-imaging based code symbol reading system of claim 2, wherein said computing platform further comprises Flash ROM for storing at least one code symbol reading application, and RAM for storing said one or more 2D digital images captured and buffered by said image capturing and buffering subsystem.

4. The digital-imaging based code symbol reading system of claim 1, wherein said FOV is projected through said light transmission window and upon an object to be imaged in said FOV.

5. The digital-imaging based code symbol reading system of claim 1, wherein said housing contains all of said subsystems.

6. The digital-imaging based code symbol reading system of claim 1, wherein said memory maintains system parameters used to configure said functions of said digital image capture and processing system.

7. The digital-imaging based code symbol reading system of claim 1, wherein said computing platform implements said digital image processing subsystem, said input/output subsystem and said system control subsystem.

8. The digital-imaging based code symbol reading system of claim 2, wherein said OS Layer includes one or more software modules selected from the group consisting of an OS kernal module, an OS file system module, and device driver modules; wherein said SCORE Layer includes one or more of software modules selected from the group consisting of a tasks manager module, an events dispatcher module, an input/output manager module, a user commands manager module, the timer subsystem module, an input/output subsystem module and an memory control subsystem module; wherein said Application Layer includes one or more software modules selected from the group consisting of a code symbol decoding module, a function programming module, an application events manager module, a user commands table module, and a command handler module.

9. The digital-imaging based code symbol reading system of claim 2, wherein, prior to capturing one or more digital images of the object, said microprocessor rapidly initializes said micro-computing platform by performing the following operations: (1) accessing one or more software modules from said OS layer and executing code contained therein; (2) accessing one or more software modules from said SCORE layer and executing code contained therein; and (3) accessing one or more software modules from said Application Layer and executing code contained therein.

10. The digital-imaging based code symbol reading system of claim 1, wherein said field illumination comprises narrow-band illumination produced from an array of light emitting diodes (LEDs).

11. The digital-imaging based code symbol reading system of claim 1, wherein said digital image processing subsystem processes said one or more digital images, so as to read one or more code symbols graphically represented therein, and producing output data in the form of symbol character data representative of said read one or more code symbols.

12. The digital-imaging based code symbol reading system of claim 11, wherein each said code symbol is a bar code symbol selected from the group consisting of a 1D bar code symbol, a 2D bar code symbol, and a data matrix type code symbol structure.

13. The digital-imaging based code symbol reading system of claim 1, said computing platform implements said digital image processing subsystem, said input/output subsystem and said system control subsystem, and wherein said Application Layer includes said one or more libraries and said one or more libraries include one or more software modules selected from the group consisting of a code symbol decoding module, a function programming module, an application events manager module, a user commands table module, and a command handler module.

14. The digital-imaging based code symbol reading system of claim 1, which further comprises an automatic object detection subsystem for automatically detecting the presence of the object in said FOV, and in response thereto, generating a trigger signal indicative of a triggering event.

15. The digital-imaging based code symbol reading system of claim 14, wherein an IR object detection software driver, located within said OS Layer, is installed automatically.

16. The digital-imaging based code symbol reading system of claim 1, which further comprises a trigger manually actuatable by an operator of said digital image capturing and processing system so as to generate a trigger signal indicating a triggering event.

Software Patent Description
RELATED CASES

[0001] This application is a Continuation of U.S. application Ser. No. 10/893,800 filed Jul. 16, 2004; which is a Continuation of U.S. application Ser. No. 10/712,787 filed Nov. 13, 2003, now U.S. Pat. No. 7,128,266 B2; each said application being assigned to Metrologic Instruments, Inc. and incorporated herewith.

BACKGROUND OF INVENTION

[0002] 1. Field of Invention

[0003] The present invention relates to hand-supportable and portable area-type digital bar code readers having diverse modes of digital image processing for reading one-dimensional (1D) and two-dimensional (2D) bar code symbols, as well as other forms of graphically-encoded intelligence.

[0004] 2. Brief Description of the State of the Art

[0005] The state of the automatic-identification industry can be understood in terms of (i) the different classes of bar code symbologies that have been developed and adopted by the industry, and (ii) the kinds of apparatus developed and used to read such bar code symbologies in various user environments.

[0006] In general, there are currently three major classes of bar code symbologies, namely: one dimensional (1D) bar code symbologies, such as UPC/EAN, Code 39, etc.; 1D stacked bar code symbologies, Code 49, PDF417, etc.; and two-dimensional (2D) data matrix symbologies.

[0007] One Dimensional optical bar code readers are well known in the art. Examples of such readers include readers of the Metrologic Voyager.RTM. Series Laser Scanner manufactured by Metrologic Instruments, Inc. Such readers include processing circuits that are able to read one dimensional (1D) linear bar code symbologies, such as the UPC/EAN code, Code 39, etc., that are widely used in supermarkets. Such 1D linear symbologies are characterized by data that is encoded along a single axis, in the widths of bars and spaces, so that such symbols can be read from a single scan along that axis, provided that the symbol is imaged with a sufficiently high resolution along that axis.

[0008] In order to allow the encoding of larger amounts of data in a single bar code symbol, a number of 1D stacked bar code symbologies have been developed, including Code 49, as described in U.S. Pat. No. 4,794,239 (Allais), and PDF417, as described in U.S. Pat. No. 5,340,786 (Pavlidis, et al.). Stacked symbols partition the encoded data into multiple rows, each including a respective 1D bar code pattern, all or most of all of which must be scanned and decoded, then linked together to form a complete message. Scanning still requires relatively high resolution in one dimension only, but multiple linear scans are needed to read the whole symbol.

[0009] The third class of bar code symbologies, known as 2D matrix symbologies offer orientation-free scanning and greater data densities and capacities than their 1D counterparts. In 2D matrix codes, data is encoded as dark or light data elements within a regular polygonal matrix, accompanied by graphical finder, orientation and reference structures. When scanning 2D matrix codes, the horizontal and vertical relationships of the data elements are recorded with about equal resolution.

[0010] In order to avoid having to use different types of optical readers to read these different types of bar code symbols, it is desirable to have an optical reader that is able to read symbols of any of these types, including their various subtypes, interchangeably and automatically. More particularly, it is desirable to have an optical reader that is able to read all three of the above-mentioned types of bar code symbols, without human intervention, i.e., automatically. This is turn, requires that the reader have the ability to automatically discriminate between and decode bar code symbols, based only on information read from the symbol itself. Readers that have this ability are referred to as "auto-discriminating" or having an "auto-discrimination" capability.

[0011] If an auto-discriminating reader is able to read only 1D bar code symbols (including their various subtypes), it may be said to have a 1D auto-discrimination capability. Similarly, if it is able to read only 2D bar code symbols, it may be said to have a 2D auto-discrimination capability. If it is able to read both 1D and 2D bar code symbols interchangeably, it may be said to have a 1D/2D auto-discrimination capability. Often, however, a reader is said to have a 1D/2D auto-discrimination capability even if it is unable to discriminate between and decode 1D stacked bar code symbols.

[0012] Optical readers that are capable of 1D auto-discrimination are well known in the art. An early example of such a reader is Metrologic's VoyagerCG.RTM. Laser Scanner, manufactured by Metrologic Instruments, Inc.

[0013] Optical readers, particularly hand held optical readers, that are capable of 1D/2D auto-discrimination and based on the use of an asynchronously moving 1D image sensor, are described in U.S. Pat. Nos. 5,288,985 and 5,354,977, which applications are hereby expressly incorporated herein by reference. Other examples of hand held readers of this type, based on the use of a stationary 2D image sensor, are described in U.S. Pat. Nos. 6,250,551; 5,932,862; 5,932,741; 5,942,741; 5,929,418; 5,914,476; 5,831,254; 5,825,006; 5,784,102, which are also hereby expressly incorporated herein by reference.

[0014] Optical readers, whether of the stationary or movable type, usually operate at a fixed scanning rate, which means that the readers are designed to complete some fixed number of scans during a given amount of time. This scanning rate generally has a value that is between 30 and 200 scans/sec for 1D readers. In such readers, the results the successive scans are decoded in the order of their occurrence.

[0015] Imaging-based bar code symbol readers have a number advantages over laser scanning based bar code symbol readers, namely: they are more capable of reading stacked 2D symbologies, such as the PDF 417 symbology; more capable of reading matrix 2D symbologies, such as the Data Matrix symbology; more capable of reading bar codes regardless of their orientation; have lower manufacturing costs; and have the potential for use in other applications, which may or may not be related to bar code scanning, such as OCR, security systems, etc

[0016] Prior art imaging-based bar code symbol readers suffer from a number of additional shortcomings and drawbacks.

[0017] Most prior art hand held optical reading devices can be reprogrammed by reading bar codes from a bar code programming menu or with use of a local host processor as taught in U.S. Pat. No. 5,929,418. However, these devices are generally constrained to operate within the modes in which they have been programmed to operate, either in the field or on the bench, before deployment to end-user application environments. Consequently, the statically-configured nature of such prior art imaging-based bar code reading systems has limited their performance.

[0018] Prior art imaging-based bar code symbol readers with integrated illumination subsystems also support a relatively short range of the optical depth of field. This limits the capabilities of such systems from reading big or highly dense bar code labels.

[0019] Prior art imaging-based bar code symbol readers generally require separate apparatus for producing a visible aiming beam to help the user to aim the camera's field of view at the bar code label on a particular target object.

[0020] Prior art imaging-based bar code symbol readers generally require capturing multiple frames of image data of a bar code symbol, and special apparatus for synchronizing the decoding process with the image capture process within such readers, as required in U.S. Pat. Nos. 5,932,862 and 5,942,741 assigned to Welch Allyn, Inc.

[0021] Prior art imaging-based bar code symbol readers generally require large arrays of LEDs in order to flood the field of view within which a bar code symbol might reside during image capture operations, oftentimes wasting large amounts of electrical power which can be significant in portable or mobile imaging-based readers.

[0022] Prior art imaging-based bar code symbol readers generally require processing the entire pixel data set of capture images to find and decode bar code symbols represented therein.

[0023] Many prior art Imaging-Based Bar Code Symbol Readers require the use of decoding algorithms that seek to find the orientation of bar code elements in a captured image by finding and analyzing the code words of 2-D bar code symbologies represented therein.

[0024] Some prior art imaging-based bar code symbol readers generally require the use of a manually-actuated trigger to actuate the image capture and processing cycle thereof.

[0025] Prior art imaging-based bar code symbol readers generally require separate sources of illumination for producing visible aiming beams and for producing visible illumination beams used to flood the field of view of the bar code reader.

[0026] Prior art imaging-based bar code symbol readers generally utilize during a single image capture and processing cycle, and a single decoding methodology for decoding bar code symbols represented in captured images.

[0027] Some prior art imaging-based bar code symbol readers require exposure control circuitry integrated with the image detection array for measuring the light exposure levels on selected portions thereof.

[0028] Also, many imaging-based readers also require processing portions of captured images to detect the image intensities thereof and determine the reflected light levels at the image detection component of the system, and thereafter to control the LED-based illumination sources to achieve the desired image exposure levels at the image detector.

[0029] Prior art imaging-based bar code symbol readers employing integrated illumination mechanisms control image brightness and contrast by controlling the time the image sensing device is exposed to the light reflected from the imaged objects. While this method has been proven for the CCD-based bar code scanners, it is not suitable, however, for the CMOS-based image sensing devices, which require a more sophisticated shuttering mechanism, leading to increased complexity, less reliability and, ultimately, more expensive bar code scanning systems.

[0030] Prior art imaging-based bar code symbol readers generally require the use of tables and bar code menus to manage which decoding algorithms are to be used within any particular mode of system operation to be programmed by reading bar code symbols from a bar code menu.

[0031] Finally, as a result of limitations in the mechanical, electrical, optical, and software design of prior art imaging-based bar code symbol readers, such prior art readers generally (i) fail to enable users to read high-density 1D bar codes with the ease and simplicity of laser scanning based bar code symbol readers, and also 2D symbologies, such as PDF 417 and Data Matrix, and (ii) are incapable of use in OCR and OCV, security applications, etc.

[0032] Thus, there is a great need in the art for an improved method of and apparatus for reading bar code symbols using image capture and processing techniques which avoid the shortcomings and drawbacks of prior art methods and apparatus.

OBJECTS AND SUMMARY OF THE PRESENT INVENTION

[0033] Accordingly, a primary object of the present invention is to provide a novel method of and apparatus for enabling the reading of 1D and 2D bar code symbologies using image capture and processing based systems and devices, which avoid the shortcomings and drawbacks of prior art methods and apparatus.

[0034] Another object of the present invention is to provide a novel hand-supportable digital Imaging-Based Bar Code Symbol Reader capable of automatically reading 1D and 2D bar code symbologies using the state-of-the art imaging technology, and at the speed and with the reliability achieved by conventional laser scanning bar code symbol readers.

[0035] Another object of the present invention is to provide a novel hand-supportable digital Imaging-Based Bar Code Symbol Reader that is capable of reading stacked 2D symbologies such as PDF417, as well as Data Matrix.

[0036] Another object of the present invention is to provide a novel hand-supportable digital Imaging-Based Bar Code Symbol Reader that is capable of reading bar codes independent of their orientation with respect to the reader.

[0037] Another object of the present invention is to provide a novel hand-supportable digital Imaging-Based Bar Code Symbol Reader that utilizes an architecture that can be used in other applications, which may or may not be related to bar code scanning, such as OCR, OCV, security systems, etc.

[0038] Another object of the present invention is to provide a novel hand-supportable digital Imaging-Based Bar Code Symbol Reader that is capable of reading high-density bar codes, as simply and effectively as "flying-spot" type laser scanners do.

[0039] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader capable of reading 1D and 2D bar code symbologies in a manner as convenient to the end users as when using a conventional laser scanning bar code symbol reader.

[0040] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader having a Multi-Mode Bar Code Symbol Reading Subsystem, which is dynamically reconfigured in response to real-time processing operations carried out on captured images.

[0041] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader having an integrated LED-Based Multi-Mode Illumination Subsystem for generating a visible narrow-area illumination beam for aiming on a target object and illuminating a 1D bar code symbol aligned therewith during a narrow-area image capture mode of the system, and thereafter illuminating randomly-oriented 1D or 2D bar code symbols on the target object during a wide-area image capture mode of the system.

[0042] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing an integrated Multi-Mode Illumination Subsystem which generates a visible narrow-area illumination beam for aiming onto a target object, then illuminates a 1D bar code symbol aligned therewith, captures an image thereof, and thereafter generates a wide-area illumination beam for illuminating 1D or 2D bar code symbols on the object and capturing an image thereof and processing the same to read the bar codes represented therein.

[0043] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing automatic object presence and range detection to control the generation of near-field and far-field wide-area illumination beams during bar code symbol imaging operations.

[0044] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing a CMOS-type image sensing array using global exposure control techniques.

[0045] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing a CMOS-type image sensing array with a band-pass optical filter subsystem integrated within the hand-supportable housing thereof, to allow only narrow-band illumination from the Multi-Mode Illumination Subsystem to expose the CMOS image sensing array.

[0046] Another object of the present invention is to provide a hand-supportable imaging-based auto-discriminating 1D/2D bar code symbol reader employing a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem dynamically reconfigurable in response to real-time image analysis during bar code reading operations.

[0047] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing a continuously operating Automatic Light Exposure Measurement and Illumination Control Subsystem.

[0048] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing a Multi-Mode LED-Based Illumination Subsystem.

[0049] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader having 1D/2D auto-discrimination capabilities.

[0050] Another object of the present invention is to provide a method of performing auto-discrimination of 1D/2D bar code symbologies in an Imaging-Based Bar Code Symbol Reader having both narrow-area and wide-area image capture modes of operation.

[0051] Another object of the present invention is to provide a method of and apparatus for processing captured images within an Imaging-Based Bar Code Symbol Reader in order to read (i.e. recognize) bar code symbols graphically represented therein.

[0052] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing helically-sweeping feature-extraction analysis on captured 2D images of objects, referenced from the center thereof.

[0053] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing simple image processing operations applied in an outwardly-directed manner on captured narrow-area images of objects bearing 1D bar code symbols.

[0054] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing an integrated LED-based Multi-Mode Illumination Subsystem with far-field and near-field illumination arrays responsive to control signals generated by an IR-based Object Presence and Range Detection Subsystem during a first mode of system operation and a System Control Subsystem during a second mode of system operation.

[0055] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reading System employing an integrated LED-Based Multi-Mode Illumination Subsystem driven by an Automatic Light Exposure Measurement and Illumination Control Subsystem responsive to control activation signals generated by a CMOS image sensing array and an IR-based Object Presence and Range Detection Subsystem during object illumination and image capturing operations.

[0056] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing a CMOS image sensing array which activates LED illumination driver circuitry to expose a target object to narrowly-tuned LED-based illumination when all of rows of pixels in said CMOS image sensing array are in a state of integration, thereby capturing high quality images independent of the relative motion between said bar code reader and the target object.

[0057] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Reading System, wherein the exposure time of narrow-band illumination onto its CMOS image sensing array is managed by controlling the illumination time of its LED-based illumination arrays using control signals generated by an Automatic Light Exposure Measurement and Illumination Control Subsystem and a CMOS image sensing array while controlling narrow-band illumination thereto by way of a band-pass optical filter subsystem.

[0058] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Reading System employing a mechanism of controlling the image brightness and contrast by controlling the time the illumination subsystem illuminates the target object, thus, avoiding the need for a complex shuttering mechanism for CMOS-based image sensing arrays employed therein.

[0059] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader employing a Multi-Mode Image-Processing Bar Code Symbol Reading Subsystem that automatically switches its modes of reading during a single bar code symbol reading cycle, and a plurality of different bar code symbology decoding algorithms are applied within each mode of reading.

[0060] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader, wherein the Multi-Mode Image-Processing Symbol Reading Subsystem has a first multi-read (e.g. Omniscan/ROI-Specific) mode of operation, for adaptively processing and decoding a captured high-resolution image in a high-speed manner, applying adaptive learning techniques.

[0061] Another object of the present invention is to provide such a hand-supportable Imaging-Based Bar Code Symbol Reader with a Multi-Mode Image-Processing Bar Code Symbol Reading Subsystem having a first multi-read (e.g. Omniscan/ROI-Specific) mode of operation, wherein if during the Omniscan Mode of operation, code fragments associated with a PDF417 bar code symbol are detected within a ROI in a captured (narrow or wide) area image, but processing thereof is unsuccessful, then the Multi-Mode Image-Processing Symbol Reading Subsystem will automatically (i) enter its ROI-Specific Mode of operation described above, and then (ii) immediately commence processing of the captured image at the ROI specified by ROI coordinates acquired by feature vector analysis during the Omniscan Mode of operation.

[0062] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader with a Multi-Mode Image-Processing Bar Code Symbol Reading Subsystem having a first multi-read (e.g. Omniscan/ROI-Specific) mode of operation, which offers an OmniScan Mode of operation to initially and rapidly read 1D bar code symbologies, and various kinds of 2D bar code symbologies whenever present in the captured image, and whenever a PDF417 symbology is detected (through its code fragments), the Multi-Mode Bar Code Symbol Reading Subsystem of the present invention can automatically switch (on-the-fly) to its ROI-specific Mode of operation to immediately process high-resolution image data at a specific ROI (at which there is a high likelihood of a bar code symbol present).

[0063] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader, wherein its Multi-Mode Image-Processing Symbol Reading Subsystem has a second multi-read (e.g. NoFinder/ROI-Specific) mode of operation, for adaptively processing a captured high-resolution image in a high-speed manner, applying adaptive learning techniques.

[0064] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader, wherein the Multi-Mode Image-Processing Symbol Reading Subsystem has a second multi-read (e.g. NoFinder/ROI-Specific) mode of operation, and wherein if during the NoFinder Mode of operation, code fragments associated with a PDF417 bar code symbol are detected within the captured wide-area image, but decode processing thereof is unsuccessful, then the Multi-Mode Image-Processing Symbol Reading Subsystem will automatically (i) enter its ROI-specific mode of operation described above, and then (ii) immediately commence processing of the captured wide-area image at a ROI specified by y coordinates corresponding to the wide-area image processed during the NoFinder Mode of operation.

[0065] Another object of the present invention is to provide such a hand-supportable Imaging-Based Bar Code Symbol Reader, wherein its Multi-Mode Image-Processing Symbol Reading Subsystem has a second multi-read (e.g. NoFinder/ROI-Specific) mode of operation, and wherein the No-Finder Mode can rapidly read 1D bar code symbologies whenever they are presented to the bar code symbol reader, and then whenever a 2D (e.g. PDF417) symbology is encountered, the bar code symbol reader can automatically switch its method of reading to the ROI-specific Mode and use features collected from a narrow (or wide) area image processed during the No-Finder Mode, so as to immediately process a specific ROI in a captured wide-area image frame, at which there is a high likelihood of a bar code symbol present, and to do so in a highly targeted manner.

[0066] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader, wherein the Multi-Mode Image-Processing Bar Code Reading Subsystem has a third multi-read (e.g. NoFinder/Omniscan/ROI-Specific) mode of operation, for adaptively processing a captured high-resolution image in a high-speed manner, applying adaptive learning techniques.

[0067] Another object of the present invention is to provide such a hand-supportable Imaging-Based Bar Code Symbol Reader, wherein the Multi-Mode Image-Processing Symbol Reading Subsystem has a third multi-read (e.g. NoFinder/Omniscan/ROI-Specific) mode of operation, and wherein if during the NoFinder Mode of operation, code fragments associated with a PDF417 bar code symbol are detected within the captured narrow-area image, but processing thereof is unsuccessful, then the Image Formation and Detection Subsystem (i) automatically captures a wide-area image, while the multi-mode image-processing symbol reading subsystem (ii) automatically enters its Omniscan Mode of operation described above, and then (iii) immediately commences processing of the captured wide-area image at a plurality of parallel spatially-separated (e.g. by 50 pixels) virtual scan lines, beginning at a start pixel and start angle specified by x and/or y coordinates of code fragments detected in the narrow-area image processed during the NoFinder Mode of operation; and, if the Omniscan Mode does not successfully read a bar code symbol within the ROI, then the Multi-Mode Image-Processing Symbol Reading Subsystem (i) automatically enters its ROI-specific mode of operation described above, and then (ii) immediately commences processing of the captured wide-area image at a ROI specified by the x,y coordinates corresponding to code fragments detected in the wide-area image processed during the Omniscan Mode of operation.

[0068] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader, wherein the Multi-Mode Image-Processing Symbol Reading Subsystem has a third multi-read (e.g. NoFinder/Omniscan/ROI-Specific) mode of operation, and wherein the No-Finder Mode can rapidly acquire 1D bar code symbologies whenever they are presented to the bar code symbol reader, and then whenever a 2D symbology is encountered, the bar code symbol reader can automatically switch its method of reading to the OmniScan Mode, collected features on processed image data, and if this reading method is not successful, then the bar code reader can automatically switch its method of reading to the ROI-Specific Mode and use features collected during the Omniscan Mode to immediately process a specific ROI in a captured image frame, at which there is a high likelihood of a bar code symbol present, and to do so in a highly targeted manner.

[0069] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader having an integrated Multi-Mode Illumination Subsystem that supports an optical depth of field larger than conventional imaging-based bar code symbol readers.

[0070] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader having a Depth of Field (DOF) of about 0 mm to 200 mm (face to 8'') for 13.5 mil bar code symbols, wherein the resolution varies as function of object distance, it can decode 5 mil codes somewhere, its optics can resolve 4 mil codes somewhere, and it has a 45.degree. Field of View (FOV).

[0071] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which uses a set of features and constructing a feature vector to determine a region of interest that may contain a bar code.

[0072] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem which uses multiple, adaptive thresholds to determine and mark regions of interest (ROIs).

[0073] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which uses several image processing methods to determine bar code orientation in a hierarchical scheme.

[0074] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having A Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which uses several different scan-data filtering techniques to generate bar-space counts.

[0075] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having A Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem which uses bar and space stitching for correcting perspective and projection transforms, and also decoding damaged labels.

[0076] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which uses incremental processing of image data while an image is being progressively acquired.

[0077] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which uses low-rise histogram analysis to determine bright spots in captured images.

[0078] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which detects all 1D symbologies and PDF417 omnidirectionally.

[0079] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having A Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem which decodes UPC/EAN, 1205, C128, C39, C93, CBR omnidirectionally.

[0080] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which uses low incidence of "false-positives"

[0081] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, which works with images stored in memory during a snap-shot mode of operation.

[0082] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem which works with images acquired progressively during an incremental mode of operation.

[0083] Another object of the present invention is to provide an Imaging-Based Bar Code Symbol Reader having a Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem which operates on captured high-resolution images having an image size of 32768.times.32768 pixels.

[0084] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Symbol Reader which is simple to use, is inexpensive to manufacture, requires as few elements as possible, has a small as possible form factor, employs no moving elements (i.e. no dynamic focus, and no zoom), and employs all spherical surfaces and common glasses.

[0085] Another object of the present invention is to provide a low-cost, high-resolution Imaging-Based Bar Code Symbol Reader for omni-directional reading of regular 1D bar codes and two-dimensional bar codes, such as the PDF417 symbology.

[0086] Another object of the present invention is to provide such an Imaging-Based Bar Code Symbol Reader having target applications at point of sales in convenience stores, gas stations, quick markets, and liquor stores, where 2D bar code reading is required for age verification and the like.

[0087] Another object of the present invention is to provide an improved Imaging-Based Bar Code Symbol Reading Engine for integration into diverse types of information capture and processing systems, such as bar code driven portable data terminals (PDT) having wireless interfaces with their base stations, reverse-vending machines, retail bar code driven kiosks, and the like.

[0088] Another object of the present invention is to provide a novel method of and apparatus for enabling global exposure control in an Imaging-Based Bar Code Symbol Reader using a CMOS image sensing array.

[0089] Another object of the present invention is to provide a hand-supportable Imaging-Based Bar Code Reading System that employs a novel method of illumination, which automatically reduces noise in detected digital images caused by specular reflection during illumination and imaging operations.

[0090] Another object of the present invention is to provide a novel method of and system for producing a composite DOF plot that completely theoretically characterizes the Depth of Field (DOF) of the image formation optics employed in an Imaging-Based Bar Code Symbol Reader.

[0091] These and other objects of the present invention will become more apparently understood hereinafter and in the Claims to Invention appended hereto.

BRIEF DESCRIPTION OF THE DRAWINGS OF PRESENT INVENTION

[0092] For a more complete understanding of how to practice the Objects of the Present Invention, the following Detailed Description of the Illustrative Embodiments can be read in conjunction with the accompanying Drawings, briefly described below.

[0093] FIG. 1A is an rear perspective view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0094] FIG. 1B is an front perspective view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0095] FIG. 1C is an elevated left side view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0096] FIG. 1D is an elevated right side view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0097] FIG. 1E is an elevated rear view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0098] FIG. 1F is an elevated front view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention, showing components associated with its illumination subsystem and its image capturing subsystem;

[0099] FIG. 1G is a bottom view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0100] FIG. 1H is a top rear view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0101] FIG. 1I is a first perspective exploded view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0102] FIG. 1J is a second perspective exploded view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0103] FIG. 1K is a third perspective exploded view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention;

[0104] FIG. 2A1 is a schematic block diagram representative of a system design for the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device illustrated in FIGS. 1A through 1L, wherein the system design is shown comprising (1) a Multi-Mode Area-Type Image Formation and Detection (i.e. Camera) Subsystem having image formation (camera) optics for producing a field of view (FOV) upon an object to be imaged and a CMOS or like area-type image sensing array for detecting imaged light reflected off the object during illumination operations in either (i) a narrow-area image capture mode in which a few central rows of pixels on the image sensing array are enabled, or (ii) a wide-area image capture mode in which all rows of the image sensing array are enabled, (2) a Multi-Mode LED-Based Illumination Subsystem for producing narrow and wide area fields of narrow-band illumination within the FOV of the Image Formation And Detection Subsystem during narrow and wide area modes of image capture, respectively, so that only light transmitted from the Multi-Mode Illumination Subsystem and reflected from the illuminated object and transmitted through a narrow-band transmission-type optical filter realized within the hand-supportable housing (i.e. using a red-wavelength high-pass reflecting window filter element disposed at the light transmission aperture thereof and a low-pass filter before the image sensor) is detected by the image sensor and all other components of ambient light are substantially rejected, (3) an IR-based object presence and range detection subsystem for producing an IR-based object detection field within the FOV of the Image Formation and Detection Subsystem, (4) an Automatic Light Exposure Measurement and Illumination Control Subsystem for controlling the operation of the LED-Based Multi-Mode Illumination Subsystem, (5) an Image Capturing and Buffering Subsystem for capturing and buffering 2-D images detected by the Image Formation and Detection Subsystem, (6) a Multimode Image-Processing Based Bar Code Symbol Reading Subsystem for processing images captured and buffered by the Image Capturing and Buffering Subsystem and reading 1D and 2D bar code symbols represented, and (7) an Input/Output Subsystem for outputting processed image data and the like to an external host system or other information receiving or responding device, in which each said subsystem component is integrated about (8) a System Control Subsystem, as shown;

[0105] FIG. 2A2 is a schematic block representation of the multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem, realized using the three-tier computing platform illustrated in FIG. 2B;

[0106] FIG. 2B is schematic diagram representative of a system implementation for the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device illustrated in FIGS. 1A through 2A2, wherein the system implementation is shown comprising (1) an illumination board 33 carrying components realizing electronic functions performed by the Multi-Mode LED-Based Illumination Subsystem and the Automatic Light Exposure Measurement And Illumination Control Subsystem, (2) a CMOS camera board carrying a high resolution (1280.times.1024 8-bit 6 micron pixel size) CMOS image sensor array running at 25 Mhz master clock, at 7 frames/second at 1280*1024 resolution with randomly accessible region of interest (ROI) window capabilities, realizing electronic functions performed by the multi-mode area-type Image Formation and Detection Subsystem, (3) a CPU board (i.e. computing platform) including (i) an Intel Sabinal 32-Bit Microprocessor PXA210 running at 200 Mhz 1.0 core voltage with a 16 bit 100 Mhz external bus speed, (ii) an expandable (e.g. 8+ megabyte) Intel J3 Asynchronous 16-bit Flash memory, (iii) an 16 Megabytes of 100 MHz SDRAM, (iv) an Xilinx Spartan II FPGA FIFO 39 running at 50 Mhz clock frequency and 60 MB/Sec data rate, configured to control the camera timings and drive an image acquisition process, (v) a multimedia card socket, for realizing the other subsystems of the system, (vi) a power management module for the MCU adjustable by the system bus, and (vii) a pair of UARTs (one for an IRDA port and one for a JTAG port), (4) an interface board for realizing the functions performed by the I/O subsystem, and (5) an IR-based object presence and range detection circuit for realizing the IR-based Object Presence And Range Detection Subsystem;

[0107] FIG. 3A is a schematic representation showing the spatial relationships between the near and far and narrow and wide area fields of narrow-band illumination within the FOV of the Multi-Mode Image Formation and Detection Subsystem during narrow and wide area image capture modes of operation;

[0108] FIG. 3B is a perspective partially cut-away view of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment, showing the LED-Based Multi-Mode Illumination Subsystem transmitting visible narrow-band illumination through its narrow-band transmission-type optical filter system and illuminating an object with such narrow-band illumination, and also showing the image formation optics, including the low pass filter before the image sensing array, for collecting and focusing light rays reflected from the illuminated object, so that an image of the object is formed and detected using only the optical components of light contained within the narrow-band of illumination, while all other components of ambient light are substantially rejected before image detection at the image sensing array;

[0109] FIG. 3C is a schematic representation showing the geometrical layout of the optical components used within the hand-supportable Digital Imaging-Based Bar Code Reading Device of the first illustrative embodiment, wherein the red-wavelength reflecting high-pass lens element is positioned at the imaging window of the device before the image formation lens elements, while the low-pass filter is disposed before the image sensor of between the image formation elements, so as to image the object at the image sensing array using only optical components within the narrow-band of illumination, while rejecting all other components of ambient light;

[0110] FIG. 3D is a schematic representation of the image formation optical subsystem employed within the hand-supportable Digital Imaging-Based Bar Code Reading Device of the first illustrative embodiment, wherein all three lenses are made as small as possible (with a maximum diameter of 12 mm), all have spherical surfaces, all are made from common glass, e.g. LAK2 (.about.LaK9), ZF10 (=SF8), LAF2 (.about.LaF3);

[0111] FIG. 3E is a schematic representation of the lens holding assembly employed in the image formation optical subsystem of the hand-supportable Digital Imaging-Based Bar Code Reading Device of the first illustrative embodiment, showing a two-piece barrel structure which holds the lens elements, and a base structure which holds the image sensing array, wherein the assembly is configured so that the barrel structure slides within the base structure so as to focus the assembly;

[0112] FIG. 3F1 is a first schematic representation showing, from a side view, the physical position of the LEDs used in the Multi-Mode Illumination Subsystem, in relation to the image formation lens assembly, the image sensing array employed therein (e.g. a Motorola MCM20027 or National Semiconductor LM9638 CMOS 2-D image sensing array having a 1280.times.1024 pixel resolution (1/2'' format), 6 micron pixel size, 13.5 Mhz clock rate, with randomly accessible region of interest (ROI) window capabilities);

[0113] FIG. 3F2 is a second schematic representation showing, from an axial view, the physical layout of the LEDs used in the Multi-Mode Illumination Subsystem of the Digital Imaging-Based Bar Code Reading Device, shown in relation to the image formation lens assembly, and the image sensing array employed therein;

[0114] FIG. 3G is a flow chart describing the steps involved in determining the Depth of Field (DOF) of the image formation optics assembly employed in the bar code reading system of the present invention;

[0115] FIG. 4A is a schematic representation of the Depth of Field Chart used in the design of the image formation optics in the Digital Imaging-Based Bar Code Reading Device, wherein image formation lens resolution characteristics are plotted against the pixel limits of the image sensing array;

[0116] FIG. 4B is graphical chart illustrating the performance of the image formation optics of the Digital Imaging-Based Bar Code Reading Device of the present invention, plotting object distance (centimeters) against MTF values of image formation optics;

[0117] FIG. 4C is a schematic representation illustrating the Depth of Field of the image formation optics of the Digital Imaging-Based Bar Code Reading Device of the present invention, measured in millimeters, and showing the narrowest bar code element dimension that can be measured over particular regions within its Depth of Field;

[0118] FIG. 4D shows a DOF chart that plots the resolution of the image formation optics, indicating only the optical performance of the subsystem;

[0119] FIG. 4E graphically illustrates how to read off the DOF for a certain mil size code, considering only the optical performance of the image formation optics of the Image Formation and Detection Subsystem;

[0120] FIG. 4F shows the 1.4 and 1.6 pixel sampling limits plotted on the same axes as the optical performance curve for a fixed focal length reader (as they are functions of object distance);

[0121] FIG. 4G graphically illustrates how to determine the composite DOF curve of the Image Formation and Detection Subsystem, considering optical performance and sampling limit together, for the 1.6 pixel case;

[0122] FIG. 4H graphically illustrates how to read off the DOF for a certain mil size code, considering optical performance and sampling limit together, for the 1.6 pixel case;

[0123] FIG. 4I1 through 4I3, taken together, show an exemplary computer program written in ZPL (Zemax Programming Language) and capable of generating the composite DOF chart;

[0124] FIG. 5A1 is a schematic representation specifying the range of narrow-area illumination, near-field wide-area illumination, and far-field wide-area illumination produced from the LED-Based Multi-Mode Illumination Subsystem employed in the hand-supportable Digital Imaging-Based Bar Code Reading Device of the present invention;

[0125] FIG. 5A2 is a table specifying the geometrical properties and characteristics of each illumination mode supported by the LED-Based Multi-Mode Illumination Subsystem employed in the hand-supportable Digital Imaging-Based Bar Code Reading Device of the present invention;

[0126] FIG. 5B is a schematic representation illustrating the physical arrangement of LED light sources associated with the narrow-area illumination array and the near-field and far-field wide-area illumination arrays employed in the Digital Imaging-Based Bar Code Reading Device of the present invention, wherein the LEDs in the far-field wide-area illuminating arrays are located behind spherical lenses, the LEDs in the narrow-area illuminating array are disposed behind cylindrical lenses, and the LEDs in the near-field wide-area illuminating array are unlensed in the first illustrative embodiment of the Digital Imaging-Based Bar Code Reading Device;

[0127] FIG. 5C1 is graphical representation showing the Lambertian emittance versus wavelength characteristics of the LEDs used to implement the narrow-area illumination array in the Multi-Mode Illumination Subsystem of the present invention;

[0128] FIG. 5C2 is graphical representation showing the Lambertian emittance versus polar angle characteristics of the LEDs used to implement the narrow-area illumination array in the Multi-Mode Illumination Subsystem of the present invention;

[0129] FIG. 5C3 is schematic representation of the cylindrical lenses used before the LEDs in the narrow-area (linear) illumination arrays in the Digital Imaging-Based Bar Code Reading Device of the present invention, wherein the first surface of the cylindrical lens is curved vertically to create a narrow-area (i.e. linear) illumination pattern, and the second surface of the cylindrical lens is curved horizontally to control the height of the of the narrow-area illumination pattern to produce a narrow-area (i.e. linear) illumination field;

[0130] FIG. 5C4 is a schematic representation of the layout of the pairs of LEDs and two cylindrical lenses used to implement the narrow-area (linear) illumination array employed in the Digital Imaging-Based Bar Code Reading Device of the present invention;

[0131] FIG. 5C5 is a set of six illumination profiles for the narrow-area (linear) illumination fields produced by the narrow-area (linear) illumination array employed in the Digital Imaging-Based Bar Code Reading Device of the illustrative embodiment, taken at 30, 40, 50, 80, 120, and 220 millimeters along the field away from the imaging window (i.e. working distance) of the Digital Imaging-Based Bar Code Reading Device, illustrating that the spatial intensity of the narrow-area illumination field begins to become substantially uniform at about 80 millimeters;

[0132] FIG. 5D1 is graphical representation showing the Lambertian emittance versus wavelength characteristics of the LEDs used to implement the wide area illumination arrays employed in the Digital Imaging-Based Bar Code Reading Device of the present invention;

[0133] FIG. 5D2 is graphical representation showing the Lambertian emittance versus polar angle characteristics of the LEDs used to implement the far-field and near-field wide-area illumination arrays employed in the Digital Imaging-Based Bar Code Reading Device of the present invention;

[0134] FIG. 5D3 is schematic representation of the piano-convex lenses used before the LEDs in the far-field wide-area illumination arrays in the illumination subsystem of the present invention,

[0135] FIG. 5D4 is a schematic representation of the layout of LEDs and plano-convex lenses used to implement the far and narrow wide-area illumination array employed in the Digital Imaging-Based Bar Code Reading Device of the present invention, wherein the illumination beam produced therefrom is aimed by positioning the lenses at angles before the LEDs in the near-field (and far-field) wide-area illumination arrays employed therein;

[0136] FIG. 5D5 is a set of six illumination profiles for the near-field wide-area illumination fields produced by the near-field wide-area illumination arrays employed in the Digital Imaging-Based Bar Code Reading Device of the illustrative embodiment, taken at 10, 20, 30, 40, 60, and 100 millimeters along the field away from the imaging window (i.e. working distance) of the Digital Imaging-Based Bar Code Reading Device, illustrating that the spatial intensity of the near-field wide-area illumination field begins to become substantially uniform at about 40 millimeters;

[0137] FIG. 5D6 is a set of three illumination profiles for the far-field wide-area illumination fields produced by the far-field wide-area illumination arrays employed in the Digital Imaging-Based Bar Code Reading Device of the illustrative embodiment, taken at 100, 150 and 220 millimeters along the field away from the imaging window (i.e. working distance) of the Digital Imaging-Based Bar Code Reading Device, illustrating that the spatial intensity of the far-field wide-area illumination field begins to become substantially uniform at about 100 millimeters;

[0138] FIG. 5D7 is a table illustrating a preferred method of calculating the pixel intensity value for the center of the far-field wide-area illumination field produced from the Multi-Mode Illumination Subsystem employed in the Digital Imaging-Based Bar Code Reading Device of the present invention, showing a significant signal strength (greater than 80 DN);

[0139] FIG. 6A1 is a schematic representation showing the red-wavelength reflecting (high-pass) imaging window integrated within the hand-supportable housing of the Digital Imaging-Based Bar Code Reading Device, and the low-pass optical filter disposed before its CMOS image sensing array therewithin, cooperate to form a narrow-band optical filter subsystem for transmitting substantially only the very narrow band of wavelengths (e.g. 620-700 nanometers) of visible illumination produced from the Multi-Mode Illumination Subsystem employed in the Digital Imaging-Based Bar Code Reading Device, and rejecting all other optical wavelengths outside this narrow optical band however generated (i.e. ambient light sources);

[0140] FIG. 6A2 is schematic representation of transmission characteristics (energy versus wavelength) associated with the low-pass optical filter element disposed after the red-wavelength reflecting high-pass imaging window within the hand-supportable housing of the Digital Imaging-Based Bar Code Reading Device, but before its CMOS image sensing array, showing that optical wavelengths below 620 nanometers are transmitted and wavelengths above 620 nm are substantially blocked (e.g. absorbed or reflected);

[0141] FIG. 6A3 is schematic representation of transmission characteristics (energy versus wavelength) associated with the red-wavelength reflecting high-pass imaging window integrated within the hand-supportable housing of the Digital Imaging-Based Bar Code Reading Device of the present invention, showing that optical wavelengths above 700 nanometers are transmitted and wavelengths below 700 nm are substantially blocked (e.g. absorbed or reflected);

[0142] FIG. 6A4 is a schematic representation of the transmission characteristics of the narrow-based spectral filter subsystem integrated within the hand-supportable Imaging-Based Bar Code Symbol Reading Device of the present invention, plotted against the spectral characteristics of the LED-emissions produced from the Multi-Mode Illumination Subsystem of the illustrative embodiment of the present invention;

[0143] FIG. 7A is a schematic representation showing the geometrical layout of the spherical/parabolic light reflecting/collecting mirror and photodiode associated with the Automatic Light Exposure Measurement and Illumination Control Subsystem, and arranged within the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the illustrative embodiment, wherein incident illumination is collected from a selected portion of the center of the FOV of the system using a spherical light collecting mirror, and then focused upon a photodiode for detection of the intensity of reflected illumination and subsequent processing by the Automatic Light Exposure Measurement and Illumination Control Subsystem, so as to then control the illumination produced by the LED-based Multi-Mode Illumination Subsystem employed in the Digital Imaging-Based Bar Code Reading Device of the present invention;

[0144] FIG. 7B is a schematic diagram of the Automatic Light Exposure Measurement and Illumination Control Subsystem employed in the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, wherein illumination is collected from the center of the FOV of the system and automatically detected so as to generate a control signal for driving, at the proper intensity, the narrow-area illumination array as well as the far-field and narrow-field wide-area illumination arrays of the Multi-Mode Illumination Subsystem, so that the CMOS image sensing array produces digital images of illuminated objects of sufficient brightness;

[0145] FIGS. 7C1 and 7C2 set forth a schematic diagram of a hybrid analog/digital circuit designed to implement the Automatic Light Exposure Measurement and Illumination Control Subsystem of FIG. 7B employed in the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention;

[0146] FIG. 7D is a schematic diagram showing that, in accordance with the principles of the present invention, the CMOS image sensing array employed in the Digital Imaging-Based Bar Code Reading Device of the illustrative embodiment, once activated by the System Control Subsystem (or directly by the trigger switch), and when all rows in the image sensing array are in a state of integration operation, automatically activates the Automatic Light Exposure Measurement and Illumination Control Subsystem which, in response thereto, automatically activates the LED illumination driver circuitry to automatically drive the appropriate LED illumination arrays associated with the Multi-Mode Illumination Subsystem in a precise manner and globally expose the entire CMOS image detection array with narrowly tuned LED-based illumination when all of its rows of pixels are in a state of integration, and thus have a common integration time, thereby capturing high quality images independent of the relative motion between the bar code reader and the object;

[0147] FIGS. 7E1 and 7E2, taken together, set forth a flow chart describing the steps involved in carrying out the global exposure control method of the present invention, within the Digital Imaging-Based Bar Code Reading Device of the illustrative embodiment;

[0148] FIG. 8 is a schematic block diagram of the IR-based automatic Object Presence and Range Detection Subsystem employed in the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, wherein a first range indication control signal is generated upon detection of an object within the near-field region of the Multi-Mode Illumination Subsystem, and wherein a second range indication control signal is generated upon detection of an object within the far-field region of the Multi-Mode Illumination Subsystem;

[0149] FIG. 9 is a schematic representation of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, showing that its CMOS image sensing array is operably connected to its microprocessor through a FIFO (realized by way of a FPGA) and a system bus, and that its SDRAM is also operably connected to the microprocessor by way of the system bus, enabling the mapping of pixel data captured by the imaging array into the SDRAM under the control of the direct memory access (DMA) module within the microprocessor;

[0150] FIG. 10 is a schematic representation showing how the bytes of pixel data captured by the CMOS imaging array within the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, are mapped into the addressable memory storage locations of its SDRAM during each image capture cycle carried out within the device;

[0151] FIG. 11 is a schematic representation showing the software modules associated with the three-tier software architecture of the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, namely: the Main Task module, the CodeGate Task module, the Metroset Task module, the Application Events Manager module, the User Commands Table module, and the Command Handler module residing with the Application layer of the software architecture; the Tasks Manager module, the Events Dispatcher module, the Input/Output Manager module, the User Commands Manager module, the Timer Subsystem module, the Input/Output Subsystem module and the Memory Control Subsystem module residing with the System Core (SCORE) layer of the software architecture; and the Linux Kernal module, the Linux File System module, and Device Drivers modules residing within the Linux Operating System (OS) layer of the software architecture;

[0152] FIG. 12A is a schematic representation of the Events Dispatcher software module which provides a means of signaling and delivering events to the Application Events Manager, including the starting of a new task, stopping a currently running task, doing something, or doing nothing and ignoring the event;

[0153] FIG. 12B is a Table listing examples of System-Defined Events which can occur and be dispatched within the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, namely: SCORE_EVENT_POWER_UP which signals the completion of system start-up and involves no parameters;_SCORE_EVENT_TIMEOUT which signals the timeout of the logical timer, and involves the parameter "pointer to timer id"; SCORE_EVENT_UNEXPECTED_INPUT which signals that the unexpected input data is available and involves the parameter "pointer to connection id"; SCORE_EVENT_TRIG_ON which signals that the user pulled the trigger switch and involves no parameters; SCORE_EVENT_TRIG_OFF which signals that the user released the trigger switch and involves no parameters; SCORE_EVENT_OBJECT_DETECT_ON which signals that the object is positioned under the bar code reader and involves no parameters; SCORE_EVENT_OBJECT_DETECT_OFF which signals that the object is removed from the field of view of the bar code reader and involves no parameters; SCORE_EVENT_EXIT_TASK which signals the end of the task execution and involves the pointer UTID; and SCORE_EVENT_ABORT_TASK which signals the aborting of a task during execution;

[0154] FIG. 12C is a schematic representation of the Tasks Manager software module which provides a means for executing and stopping application specific tasks (i.e. threads);

[0155] FIG. 12D is a schematic representation of the Input/Output Manager software module (i.e Input/Output Subsystem), which runs in the background and monitors activities of external devices and user connections, and signals appropriate events to the Application Layer, which such activities are detected;

[0156] FIGS. 12E1 and 12E2 set forth a schematic representation of the Input/Output Subsystem software module which provides a means for creating and deleting input/output connections, and communicating with external systems and devices;

[0157] FIGS. 12F1 and 12F2 set forth a schematic representation of the Timer Subsystem which provides a means for creating, deleting, and utilizing logical timers;

[0158] FIGS. 12G1 and 12G2 set forth a schematic representation of the Memory Control Subsystem which provides an interface for managing the thread-level dynamic memory with the device, fully compatible with standard dynamic memory management functions, as well as a means for buffering collected data;

[0159] FIG. 12H is a schematic representation of the User Commands Manager which provides a standard way of entering user commands, and executing application modules responsible for handling the same;

[0160] FIG. 12I is a schematic representation of the Device Driver software modules, which includes trigger switch drivers for establishing a software connection with the hardware-based manually-actuated trigger switch employed on the Digital Imaging-Based Bar Code Reading Device, an image acquisition driver for implementing image acquisition functionality aboard the Digital Imaging-Based Bar Code Reading Device, and an IR driver for implementing object detection functionality aboard the Imaging-Based Bar Code Symbol Reading Device;

[0161] FIG. 13A is an exemplary flow chart representation showing how when the user points the bar code reader towards a bar code symbol, the IR device drivers detect that object within the field, and then wakes up the Input/Output Manager software module at the System Core Layer;

[0162] FIG. 13B is an exemplary flow chart representation showing how upon detecting an object, the Input/Output Manager posts the SCORE_OBJECT_DETECT_ON event to the Events Dispatcher software module;

[0163] FIG. 13C is an exemplary flow chart representation showing how, in response to detecting an object, the Events Dispatcher software module passes the SCORE_OBJECT_DETECT_ON event to the Application Layer;

[0164] FIG. 13D is an exemplary flow chart representation showing how upon receiving the SCORE_OBJECT_DETECT_ON event at the Application Layer, the Application Events Manager executes an event handling routine which activates the narrow-area illumination array associated with the Multi-Mode Illumination Subsystem, and executes the CodeGate Task described in FIG. 13E;

[0165] FIG. 13E is an exemplary flow chart representation showing how what operations are carried out when the CodeGate Task is executed within the Application Layer;

[0166] FIG. 13F is an exemplary flow chart representation showing how, when the user pulls the trigger switch on the bar code reader while the Code Task is executing, the trigger device driver wakes up the Input/Output Manager at the System Core Layer;

[0167] FIG. 13G is an exemplary flow chart representation showing how, in response to waking up, the Input/Output Manager posts the SCORE_TRIGGER_ON event to the Events Dispatcher;

[0168] FIG. 13H is an exemplary flow chart representation showing how the Events Dispatcher passes on the SCORE_TRIGGER_ON event to the Application Events Manager at the Application Layer;

[0169] FIG. 13I is an exemplary flow chart representation showing how the Application Events Manager responds to the SCORE_TRIGGER_ON event by invoking a handling routine within the Task Manager at the System Core Layer which deactivates the narrow-area illumination array associated with the Multi-Mode Illumination Subsystem, cancels the CodeGate Task, and executes the Main Task;

[0170] FIG. 13J is an exemplary flow chart representation showing what operations are carried out when the Main Task is executed within the Application Layer;

[0171] FIG. 13K is an exemplary flow chart representation showing what operations are carried out when the Data Output Procedure, called in the Main Task, is executed within the Input/Output Subsystem software module in the Application Layer;

[0172] FIG. 13L is an exemplary flow chart representation showing decoded symbol character data being sent from the Input/Output Subsystem to the Device Drivers within the Linux OS Layer of the system;

[0173] FIG. 13M is a flow chart describing a novel method of generating wide-area illumination, for use during the Main Task routine so as to illuminate objects with a wide-area illumination field in a manner, which substantially reduces specular-type reflection at the CMOS image sensing array in the Digital Imaging-Based Bar Code Reading Device of the present invention;

[0174] FIG. 14 is a table listing various bar code symbologies supported by the Multi-Mode Bar Code Symbol Reading Subsystem module employed within the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention;

[0175] FIG. 15 is a table listing the four primary modes in which the Multi-Mode Bar Code Symbol Reading Subsystem module can be programmed to operate, namely: the Automatic Mode wherein the Multi-Mode Bar Code Symbol Reading Subsystem is configured to automatically process a captured frame of digital image data so as to search for one or more bar codes represented therein in an incremental manner, and to continue searching until the entire image is processed; the Manual Mode wherein the Multi-Mode Bar Code Symbol Reading Subsystem is configured to automatically process a captured frame of digital image data, starting from the center or sweep spot of the image at which the user would have aimed the bar code reader, so as to search for (i.e. find) one or more bar code symbols represented therein, by searching in a helical manner through frames or blocks of extracted image feature data and marking the same and processing the corresponding raw digital image data until a bar code symbol is recognized/read within the captured frame of image data; the ROI-Specific Mode wherein the Multi-Mode Bar Code Symbol Reading Subsystem is configured to automatically process a specified "region of interest" (ROI) in a captured frame of digital image data so as to search for one or more bar codes represented therein, in response to coordinate data specifying the location of the bar code within the field of view of the multi-mode image formation and detection system; the NoFinder Mode wherein the Multi-Mode Bar Code Symbol Reading Subsystem is configured to automatically process a captured narrow-area (linear) frame of digital image data, without feature extraction and marking operations used in the Automatic and Manual Modes, so as read one or more bar code symbols represented therein; and the Omniscan Mode, wherein the Multi-Mode Bar Code Symbol Reading Subsystem is configured to automatically process a captured frame of digital image data along any one or more predetermined virtual scan line orientations, without feature extraction and marking operations used in the Automatic and Manual Modes, so as to read one or more bar code symbols represented therein;

[0176] FIG. 16 is a exemplary flow chart representation showing the steps involved in setting up and cleaning up the software sub-Application entitled "Multi-Mode Image-Processing Based Bar Code Symbol Reading Subsystem", once called from either (i) the CodeGate Task software module at the Block entitled READ BAR CODE(S) IN CAPTURED NARROW-AREA IMAGE indicated in FIG. 13E, or (ii) the Main Task software module at the Block entitled "READ BAR CODE(S) IN CAPTURED WIDE-AREA IMAGE" indicated in FIG. 13J;

[0177] FIG. 17A is a summary of the steps involved in the decode process carrying out by the Multi-Mode Bar Code Symbol Reading Subsystem of the present invention during its Automatic Mode of operation, wherein (1) the first stage of processing involves searching for (i.e. finding) regions of interest (ROIs) by processing a low resolution image of a captured frame of high-resolution image data, partitioning the low-resolution image into N.times.N blocks, and creating a feature vector for each block using spatial-derivative based image processing techniques, (2) the second stage of processing involves marking ROIs by examining the feature vectors for regions of high-modulation, calculating bar code orientation and marking the four corners of a bar code as a ROI, and (3) the third stage of processing involves reading any bar code symbols represented within the ROI by traversing the bar code and updating the feature vectors, examining the zero-crossings of filtered images, creating bar and space patterns, and decoding the bar and space patterns using conventional decoding algorithms;

[0178] FIG. 17B is an exemplary flow chart representation of the steps involved in the image-processing method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem during its Automatic Mode of operation;

[0179] FIG. 18A is a graphical representation illustrating the generation of a low-resolution image of a package label from an original high-resolution image thereof during the first finding stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem configured in its Automatic Mode of operation;

[0180] FIG. 18B is a graphical representation illustrating the partitioning of the low-resolution image of the package label, the calculation of feature vectors using the same, and the analysis of these feature vectors for parallel lines, during the first finding stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem during its Automatic Mode of operation;

[0181] FIG. 18C is a graphical representation showing that the calculation of feature vectors within each block of low-resolution image data, during the second marking stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem, can involve the use of gradient vectors, edge density measures, the number of parallel edge vectors, centroids of edgels, intensity variance, and the histogram of intensities captured from the low-resolution image;

[0182] FIG. 18D is a graphical representation of the examination of feature vectors looking for high edge density, large number of parallel edge vectors and large intensity variance, during the second marking stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem during its Automatic Mode of operation;

[0183] FIGS. 18E and 18F set forth graphical representations of calculating bar code orientation during the second marking stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem operating in its Automatic Mode, wherein each feature vector block, the bar code is traversed (i.e. sliced) at different angles, the slices are matched with each other based on "least mean square error", and the correct orientation is determined to be that angle which matches the mean square error sense through every slice of the bar code symbol represented within the captured image;

[0184] FIG. 18F is a graphical representation of calculating bar code orientation, during the second marking stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem operating in its Automatic Mode;

[0185] FIG. 18G is a graphical representation of the marking of the four corners of the detected bar code symbol during the second marking stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem operating in its Automatic Mode, wherein such marking operations are performed on the full high-resolution image of the parcel, the bar code is traversed in either direction starting from the center of the block, the extent of modulation is detected using the intensity variance, and the x,y coordinates (pixels) of the four corners of the bar code are detected starting from 1 and 2 and moving perpendicular to the bar code orientation, and define the ROI by the detected four corners of the bar code symbol within the high-resolution image;

[0186] FIG. 18H is a graphical representation of updating the feature vectors during the third stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem operating in its Automatic Mode, wherein the histogram component of the feature vector Fv is updated while traversing the bar code symbol, the estimate of the black-to-white transition is calculated, and an estimate of narrow and wide elements of the bar code symbol are calculated;

[0187] FIG. 18I is a graphical representation of the search for zero crossings during the third stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem operating in its Automatic Mode, wherein the high-resolution bar code image is median filtered in a direction perpendicular to bar code orientation, the second derivative zero crossings define edge crossings, the zero-crossing data is used only for detecting edge transitions, and the black/white transition estimates are used to put upper and lower bounds on the grey levels of the bars and spaces of the bar code symbol represented within the captured image;

[0188] FIG. 18J is a graphical representation of creating bar and space pattern during the third stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem operating in its Automatic Mode, wherein the edge transition is modeled as a ramp function, the edge transition is assumed to be 1 pixel wide, the edge transition location is determined at the subpixel level, and the bar and space counts are gathered using edge transition data;

[0189] FIG. 18K is a graphical representation of the decode bar and space pattern during the third stage of processing within the Multi-Mode Bar Code Symbol Reading Subsystem operating in its Automatic Mode, wherein the bar and space data is framed with borders, and the bar and space data is decoded using existing laser scanning bar code decoding algorithms;

[0190] FIG. 19A is a summary of the steps involved in the image-processing method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem during its Manual Mode of operation, wherein (1) the first stage of processing involves searching for (i.e. finding) regions of interest (ROIs) by processing a low resolution image of a captured frame of high-resolution image data, partitioning the low-resolution image into N.times.N blocks, and creating a feature vector for the middle block using spatial-derivative based image processing techniques, (2) the second stage of processing involves marking ROIs by examining the feature vectors for regions of high-modulation and returning to the first stage to create feature vectors for other blocks surrounding the middle block (in a helical manner), calculating bar code orientation and marking the four corners of a bar code as a ROI, and (3) the third stage of processing involves reading any bar code symbols represented within the ROI by traversing the bar code and updating the feature vectors, examining the zero-crossings of filtered images, creating bar and space patterns, and decoding the bar and space patterns using conventional decoding algorithms;

[0191] FIG. 19B is an exemplary flow chart representation of the steps involved in the image-processing method carrying out by the Multi-Mode Bar Code Symbol Reading Subsystem during its Manual Mode of operation;

[0192] FIG. 20A is a summary of the steps involved in the image processing method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem during its NoFinder Mode of operation, wherein the Decoder Module does not employ bar code element finding or marking techniques (i.e. Finder Module and Marker Module) and directly processes a narrow-area portion of a captured high-resolution image, starting from the middle thereof, examines the zero-crossings of the filtered image, creates bar and space patterns therefrom, and then decodes the bar and space patterns using conventional decoding algorithms;

[0193] FIG. 20B is an exemplary flow chart representation of the steps involved in the image-processing method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem during its NoFinder Mode of operation;

[0194] FIG. 21A is a summary of the steps involved in the image-processing method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem during its OmniScan Mode of operation, wherein the Decoder Module does not employ bar code element finding or marking techniques (i.e. Finder Module and Marker Module), assumes the imaged bar code symbol resides at the center of the captured wide-area high-resolution image with about a 1:1 aspect ratio, and directly processes the high-resolution image along a set of parallel spaced-apart (e.g. 50 pixels) virtual scan lines, examines the zero-crossings along the virtual scan lines, creates bar and space patterns therefrom, and then decodes the bar and space patterns, with the option of reprocessing the high-resolution image along a different set of parallel spaced-apart virtual scan lines oriented at a different angle from the previously processed set of virtual scan lines (e.g. 0, 30, 60, 90, 120 or 150 degrees);

[0195] FIG. 21B is an exemplary flow chart representation of the steps involved in the image-processing method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem during its OmniScan Mode of operation;

[0196] FIG. 22A is a summary of the steps involved in the image-processing based bar code reading method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem of the present invention during its "ROI-Specific" Mode of operation, designed for use in combination with the Omniscan Mode of operation, wherein (1) the first stage of processing involves receiving region of interest (ROI) coordinates (x1, x2) obtained during the Omniscan Mode of operation (after the occurrence of a failure to decode), re-partitioning the captured low-resolution image (from the Omniscan Mode) into N.times.N blocks, and creating a feature vector for the ROI-specified block(s) using spatial-derivative based image processing techniques, (2) the second stage of processing involves marking additional ROIs by examining the feature vectors for regions of high-modulation and returning to the first stage to create feature vectors for other blocks surrounding the middle block (in a helical manner), calculating bar code orientation and marking the four corners of a bar code as a ROI, and (3) the third stage of processing involves reading any bar code symbols represented within the ROI by traversing the bar code symbol and updating the feature vectors, examining the zero-crossings of filtered images, creating bar and space patterns, and decoding the bar and space patterns using conventional decoding algorithms;

[0197] FIG. 22B is an exemplary flow chart representation of the steps involved in the image-processing method carried out by the Multi-Mode Bar Code Symbol Reading Subsystem of the present invention during its ROI-specific Mode of operation;

[0198] FIG. 23 is a specification of Multi-Mode Bar Code Symbol Reading Subsystem operated during its first multi-read (Omniscan/ROI-Specific) mode of operation;

[0199] FIG. 24 is a specification of Multi-Mode Bar Code Symbol Reading Subsystem operated during its second multi-read (No-Finder/ROI-Specific) mode of operation;

[0200] FIG. 25 is a specification of Multi-Mode Bar Code Symbol Reading Subsystem operated during its third multi-read (No-Finder/Omniscan/ROI-Specific) mode of operation; and

[0201] FIGS. 26A and 26B, taken together, provide a table listing the primary Programmable Modes of Bar Code Reading Operation within the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, namely: Programmed Mode of System Operation No. 1--Manually-Triggered Single-Attempt 1D Single-Read Mode Employing the No-Finder Mode of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode Of System Operation No. 2--Manually-Triggered Multiple-Attempt 1D Single-Read Mode Employing the No-Finder Mode of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode Of System Operation No. 3--Manually-Triggered Single-Attempt 1D/2D Single-Read Mode Employing the No-Finder Mode And The Automatic Or Manual Modes of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode of System Operation No. 4--Manually-Triggered Multiple-Attempt 1D/2D Single-Read Mode Employing the No-Finder Mode And The Automatic Or Manual Modes of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode of System Operation No. 5--Manually-Triggered Multiple-Attempt 1D/2D Multiple-Read Mode Employing the No-Finder Mode And The Automatic Or Manual Modes of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode of System Operation No. 6--Automatically-Triggered Single-Attempt 1D Single-Read Mode Employing The No-Finder Mode Of the Multi-Mode Bar Code Reading Subsystem Programmed Mode of System Operation No. 7--Automatically-Triggered Multi-Attempt 1D Single-Read Mode Employing The No-Finder Mode Of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode of System Operation No. 8--Automatically-Triggered Multi-Attempt 1D/2D Single-Read Mode Employing The No-Finder Mode and Manual and/or Automatic Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode of System Operation No. 9--Automatically-Triggered Multi-Attempt 1D/2D Multiple-Read Mode Employing The No-Finder Mode and Manual and/or Automatic Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmable Mode of System Operation No. 10--Automatically-Triggered Multiple-Attempt 1D/2D Single-Read Mode Employing The Manual, Automatic or Omniscan Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmed Mode of System Operation No. 11--Semi-Automatic-Triggered Single-Attempt 1D/2D Single-Read Mode Employing The No-Finder Mode And The Automatic Or Manual Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmable Mode of System Operation No. 12--Semi-Automatic-Triggered Multiple-Attempt 1D/2D Single-Read Mode Employing The No-Finder Mode And The Automatic Or Manual Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmable Mode of Operation No. 13--Semi-Automatic-Triggered Multiple-Attempt 1D/2D Multiple-Read Mode Employing The No-Finder Mode And The Automatic Or Manual Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmable Mode of Operation No. 14--Semi-Automatic-Triggered Multiple-Attempt 1D/2D Multiple-Read Mode Employing The No-Finder Mode And The Omniscan Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmable Mode of Operation No. 15--Continuously-Automatically-Triggered Multiple-Attempt 1D/2D Multiple-Read Mode Employing The Automatic, Manual Or Omniscan Modes Of the Multi-Mode Bar Code Reading Subsystem; Programmable Mode of System Operation No. 16--Diagnostic Mode Of Imaging-Based Bar Code Reader Operation; and Programmable Mode of System Operation No. 17--Live Video Mode Of Imaging-Based Bar Code Reader Operation;

[0202] FIG. 27A is a schematic representation specifying the four modes of illumination produced from the Multi-Mode Illumination Subsystem employed in the second illustrative embodiment of the Digital Imaging-Based Bar Code Symbol Reader of the present invention, which supports both near and far fields of narrow-area illumination generated during the narrow-area image capture mode of its Multi-Mode Image Formation and Detection Subsystem;

[0203] FIG. 27B is a schematic representation specifying how the cylindrical beam shaping optics employed within near-field and far-field narrow-area illumination arrays can be easily tailored to generate near and far narrow-area illumination fields having geometrical characteristics that enables (i) simple reading of extended-length bar code symbols within the far-field region of the FOV of the system, and also (ii) simple reading of bar code menus with a great degree of control within the near-field region of the FOV, preferably during a "Semi-Automatic-Triggered" programmed mode of system operation;

[0204] FIG. 28 is a schematic representation illustrating the physical arrangement of LEDs and light focusing lenses associated with the near and far field narrow-area and wide-area illumination arrays employed in the Digital Imaging-Based Bar Code Symbol Reading Device according to the second illustrative embodiment of the present invention;

[0205] FIG. 29A is a first perspective view of a second illustrative embodiment of the portable POS Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, shown having a hand-supportable housing of a different form factor than that of the first illustrative embodiment, and configured for use in its hands-free/presentation mode of operation, supporting primarily wide-area image capture;

[0206] FIG. 29B is a second perspective view of the second illustrative embodiment of the portable POS Digital Imaging-Based Bar Code Reading Device of the present invention, shown configured and operated in its hands-free/presentation mode of operation, supporting primarily wide-area image capture;

[0207] FIG. 29C is a third perspective view of the second illustrative embodiment of the portable Digital Imaging-Based Bar Code Reading Device of the present invention, showing configured and operated in a hands-on type mode, supporting both narrow and wide area modes of image capture;

[0208] FIG. 30 is a perspective view of a third illustrative embodiment of the Digital Imaging-Based Bar Code Symbol Reading Device of the present invention, realized in the form of a Multi-Mode Image Capture And Processing Engine that can be readily integrated into various kinds of information collection and processing systems, including wireless portable data terminals (PDTs), reverse-vending machines, retail product information kiosks and the like;

[0209] FIG. 31 is a schematic representation of a Wireless Bar Code-Driven Portable Data Terminal embodying the Imaging-Based Bar Code Symbol Reading Engine of the present invention, shown configured and operated in a hands-on mode;

[0210] FIG. 32 is a perspective view of the Wireless Bar Code Driven Portable Data Terminal of FIG. 31 shown configured and operated in a hands-on mode, wherein the Imaging-Based Bar Code Symbol Reading Engine embodied therein is used to read a bar code symbol on a package and the symbol character data representative of the read bar code is being automatically transmitted to its cradle-providing base station by way of an RF-enabled 2-way data communication link;

[0211] FIG. 33 is a side view of the Wireless Bar Code Driven Portable Data Terminal of FIGS. 31 and 32 shown configured and operated in a hands-free mode, wherein the Imaging-Based Bar Code Symbol Reading Engine is configured in a wide-area image capture mode of operation, suitable for presentation-type bar code reading at point of sale (POS) environments; and

[0212] FIG. 34 is a block schematic diagram showing the various subsystem blocks associated with a design model for the Wireless Hand-Supportable Bar Code Driven Portable Data Terminal System of FIGS. 31, 32 and 33, shown interfaced with possible host systems and/or networks.

DETAILED DESCRIPTION OF THE ILLUSTRATIVE EMBODIMENTS OF THE PRESENT INVENTION

[0213] Referring to the figures in the accompanying Drawings, the various illustrative embodiments of the hand-supportable imaging-based bar code symbol reading system of the present invention will be described in great detail, wherein like elements will be indicated using like reference numerals.

Hand-Supportable Digital Imaging-Based Bar Code Reading Device of the First Illustrative Embodiment of the Present Invention

[0214] Referring to FIGS. 1A through 1K, the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device of the first illustrative embodiment of the present invention 1 is shown in detail comprising a hand-supportable housing 2 having a handle portion 2A and a head portion 2B that is provided with a light transmission window 3 with a high-pass (red-wavelength reflecting) optical filter element 4A having light transmission characteristics set forth in FIG. 6A2, in the illustrative embodiment. As will be described in greater detail hereinafter, high-pass optical filter element 4A cooperates within an interiorly mounted low-pass optical filter element 4B characterized in FIG. 6A1, which cooperates with the high-pass optical filter element 4A. These high and low pass filter elements 4A and 4B cooperate to provide a narrow-band optical filter system 4 that integrates with the head portion of the housing and permits only a narrow band of illumination (e.g. 633 nanometers) to exit and enter the housing during imaging operations.

[0215] As best shown in FIGS. 1I, 1J, and 1K, the hand-supportable housing 2 of the illustrative embodiment comprises: left and right housing handle halves 2A1 and 2A2; a foot-like structure 2A3 which is mounted between the handle halves 2A1 and 2A2; a trigger switch structure 2C which snap fits within and pivots within a pair of spaced apart apertures 2D1 and 2D2 provided in the housing halves; a light transmission window panel 5 through which light transmission window 3 is formed and supported within a recess formed by handle halves 2A1 and 2A2 when they are brought together, and which supports all LED illumination arrays provided by the system; an optical bench 6 for supporting electro-optical components and operably connected an orthogonally-mounted PC board 7 which is mounted within the handle housing halves; a top housing portion 2B1 for connection with the housing handle halves 2A1 and 2A2 and enclosing the head portion of the housing; light pipe lens element 8 for mounting over an array of light emitting diodes (LEDs) 9 and light pipe structures 10 mounted within the rear end of the head portion of the hand-supportable housing; and a front bumper structure 2E for holding together the top housing portion 2B1 and left and right handle halves 2A1 and 2A2 with the light transmission window panel 5 sandwiched therebetween, while providing a level of shock protection thereto.

[0216] In other embodiments of the present invention shown in FIGS. 27 through 33 the form factor of the hand-supportable housing might be different. In yet other applications, the housing need not even be hand-supportable, but rather might be designed for stationary support on a desktop or countertop surface, or for use in a commercial or industrial application.

Schematic Block Functional Diagram as System Design Model for the Hand-Supportable Digital Image-Based Bar Code Reading Device of the Present Invention

[0217] As shown in the system design model of FIG. 2A1, the hand-supportable Digital Imaging-Based Bar Code Symbol Reading Device 1 of the illustrative embodiment comprises: an IR-based Object Presence and Range Detection Subsystem 12; a Multi-Mode Area-type Image Formation and Detection (i.e. camera) Subsystem 13 having narrow-area mode of image capture, near-field wide-area mode of image capture, and a far-field wide-area mode of image capture; a Multi-Mode LED-Based Illumination Subsystem 14 having narrow-area mode of illumination, near-field wide-area mode of illumination, and a far-field wide-area mode of illumination; an Automatic Light Exposure Measurement and Illumination Control Subsystem 15; an Image Capturing and Buffering Subsystem 16; a Multi-Mode Image-Processing Bar Code Symbol Reading Subsystem 17 having five modes of image-processing based bar code symbol reading indicated in FIG. 2A2 and to be described in detail hereinabove; an Input/Output Subsystem 18; a manually-actuatable trigger switch 2C for sending user-originated control activation signals to the device; a System Mode Configuration Parameter Table 70; and a System Control Subsystem 18 integrated with each of the above-described subsystems, as shown.

[0218] The primary function of the IR-based Object Presence and Range Detection Subsystem 12 is to automatically produce an IR-based object detection field 20 within the FOV of the Multi-Mode Image Formation and Detection Subsystem 13, detect the presence of an object within predetermined regions of the object detection field (20A, 20B), and generate control activation signals A1 which are supplied to the System Control Subsystem 19 for indicating when and where an object is detected within the object detection field of the system.

[0219] In the first illustrative embodiment, the Multi-Mode Image Formation And Detection (I.E. Camera) Subsystem 13 has image formation (camera) optics 21 for producing a field of view (FOV) 23 upon an object to be imaged and a CMOS area-image sensing array 22 for detecting imaged light reflected off the object during illumination and image acquisition/capture operations.

[0220] In the first illustrative embodiment, the primary function of the Multi-Mode LED-Based Illumination Subsystem 14 is to produce a narrow-area illumination field 24, near-field wide-area illumination field 25, and a far-field wide-area illumination field 25, each having a narrow optical-bandwidth and confined within the FOV of the Multi-Mode Image Formation And Detection Subsystem 13 during narrow-area and wide-area modes of imaging, respectively. This arrangement is designed to ensure that only light transmitted from the Multi-Mode Illumination Subsystem 14 and reflected from the illuminated object is ultimately transmitted through a narrow-band transmission-type optical filter subsystem 4 realized by (1) high-pass (i.e. red-wavelength reflecting) filter element 4A mounted at the light transmission aperture 3 immediately in front of panel 5, and (2) low-pass filter element 4B mounted either before the image sensing array 22 or anywhere after panel 5 as shown in FIG. 3C. FIG. 6A4 sets forth the resulting composite transmission characteristics of the narrow-band transmission spectral filter subsystem 4, plotted against the spectral characteristics of the emission from the LED illumination arrays employed in the Multi-Mode Illumination Subsystem 14.

[0221] The primary function of the narrow-band integrated optical filter subsystem 4 is to ensure that the CMOS image sensing array 22 only receives the narrow-band visible illumination transmitted