Symbol-controlled image data reading system

Abstract: The invention relates to a system for imaging a scene comprising an optical reader and a specially structured symbol configured complementarily with the reader so that when the reader reads the symbol, the reader reads image data in an image data reading region. The image reading instruction symbol of the system may include indicators for controlling various aspects of the image reading process such as the dimension of the image capture region, the relative position of the image reading region. If the image reading instruction symbol is of a type whose actual size, orientation, and distortion can be determined, scaling, orientation, and distortion characteristics determined from the image reading instruction symbol can be used to improve the image reading process. A feedback feature may be included in the reader for indicating to a user whether the reader should be moved in order to improve image reading.

Description: Background of the Invention: 1. Field of the Invention: The invention relates generally to imager based data collection devices and methods for using such devices, and particularly to a system including an optical reader and a specially structured symbol adapted to cause the reader to commence image data reading according to a protocol determined in part by at least one indicator of the symbol. 2. Background of the Prior Art: With increasing sophistication of imaging assemblies used in optical readers there has been a growing effort to utilize information from captured images representing indicia in areas surrounding a bar code symbol being decoded. Various suggestions have been made in the prior art to capture and read image data representing extraneous indicia in addition to image data representing a bar code symbol subject to decoding. For example, in some applications a signature field in a known location in relation to a bar code symbol is captured, read, and output in addition to a bar code symbol. A major drawback of existing optical reader systems which suggest utilization of non-symbol image data is that these readers, generally speaking, can successfully process non-symbol images data only in the case where the nonsymbol image data reading region is of a prescribed orientation and location in relation to a symbol. Furthermore, readers in such systems in general can process image data according to only one established protocol for each symbol that is read. U. S. Patent No. 5,262,623 represents the basis for the preamble of claim 1 and describes a bar code decoding system in which a predetermined pattern is disposed in a predetermined position in a scene proximate a bar code. When the bar code representation is located in a captured image, predetermined positions in the image are checked for representations of the pattern. If a representation of the pattern is detected, decoding of the bar code symbol proceeds. If a representation of the predetermined pattern is not found, decoding of the bar code symbol is avoided. There is a need for a large area image capture image data reading system which can capture and process image data from an image data reading region which may be in a location in relation to a symbol that is unknown by the reader prior to reading, and which can flexibly process image data according to various types of protocols. Summary of the Invention: According to its major aspects and broadly stated the present invention is a system including a bar code reader and a specially structured image reading instruction symbol adapted to cause the reader to commence a reading of image data according to a protocol determined in part by at least one indicator of the symbol. The bar code reader of the system may include a 2D image sensor and is preferably of a type whose operating program may be changed by capturing with the reader a specially structured bar code symbol. The symbol of the system is a 1D or 2D symbol including encoded indicia which when read by a complementarily programmed reader results in the reader processing image data according to a protocol controlled in part by at least one indicator structure of the symbol. In one embodiment of the invention, the symbol of the system includes a plurality of image data reading indicators. A first type of image data reading indicator in the image reading instruction symbol may indicate that the symbol is an image reading instruction symbol and that there is region in space in relation to the symbol that is to be imaged by the reader; and a second type of image capture indicator at least partially encoded in the system's symbol may indicate image data reading parameters such as the dimension of the image data reading region, and the position of the image data reading region in relation to the image reading instruction symbol. When the reader reads an image data reading indicator of the first type from the capture instruction symbol, the reader reads data in an image data reading region in accordance with the parameters encoded by image data reading indicators of the second type. In other aspects of the invention, the image reading symbol being read must be of a symbology type adapted so that the reader capturing and reading the image reading instruction symbol can determine imaging characteristics relating to the image reading instruction symbol. Such imaging characteristics which may be determined by the reader may involve, for example, the scaling of a captured symbol; an orientation of the symbol; and/or distortion characteristics of the captured image as revealed in the captured symbol. If the image reading instruction symbol and the reader of the system are appropriately configured, the reader may determine a scaling factor, an orientation factor, and distortion characteristics from the captured image reading instruction symbol. The scaling, orientation, and distortion characteristics determined for the image reading instruction symbol can be used to determine which pixels in an original bit map representation of a scene to read in the constructing of a secondary bit map representation of a scene in which an image in a data reading region is represented in a true size and in which distortions apparent in an original bit map representation are corrected for. In addition to reading image data reading parameters from the image reading instruction symbol, and determining from the captured image reading instruction symbol imaging characteristics pertaining to the orientation, scaling, and distortion of the captured images, an optical reader in the system of the invention may read indicator structures from the image reading instruction symbol of a type which control an aspect of outputting image data. When read by a complementarily programmed reader, such image data output parameters may control at least one aspect of image data output. An image data output parameter may control, for example, the output location of the image data, the data formatting of outputted image data, and can also control certain aspects of processing the outputted image data. For example, an output parameter indicator may control an aspect of a character recognition algorithm in an OCR application. These and other details, advantages and benefits of the present invention will become apparent from the detailed description of the preferred embodiment hereinbelow. Brief Description of the Drawings: The preferred embodiment of the invention will now be described, by way of example only, with reference to the accompanying Figures wherein like members bear like reference numerals and wherein: FIG. 1 is a schematic diagram of the system of the invention including an image reading symbol and a complementarily configured optical reader; FIG. 2 is a block diagram of an optical reader of the type which may be implemented in the system of the present invention; FIG. 3 is a flow diagram illustrating operation of a main program in accordance with the invention configured to commence image data reading in an image data reading region in relation to a symbol after reading the symbol; FIGS. 4A, 4B and 4C show various bit map representation graphs illustrating construction of a secondary bit map representation of an image data reading region. FIG. 5 illustrates a possible embodiment of a feature of the invention wherein image data reading parameters are provided in a decoded message of a menu symbol. FIGS. 6A, 6B, and 6C illustrate various implementations of the invention. Detailed Description of the Preferred Embodiment: A schematic diagram of the system of the invention is shown in Fig. 1. Image data reading system 2 includes an optical reader 10 such as a bar code reader and a specially configured symbol, or indicia which shall be referred to herein as an image reading instruction symbol 6. Optical reader 10 and image reading instruction symbol are complementarily configured so that optical reader 10 reads image data representing a scene region 8 in a space after reading capture instruction symbol 6. Image reading instruction symbol 6 may take on a variety of forms. In one embodiment, for example, the image reading instruction symbol includes a first indicator of a first type which indicates to the reader that the symbol is an image reading instruction symbol and that this reader is to commence image data reading; and at least one indicator structure of a second type indicating an image reading parameter for controlling an aspect of the image data reading process such as the dimension or position of an image data reading region. Additional operating parameter indicators may be provided to control aspects of the image capture process unrelated to the size and location of the image capture region. For example, image data reading parameter indicators may be provided to control such aspects of the image capture process as pixel resolution, gray scale depth, and color. The image reading instruction symbol may also include an output control parameter indicator structure for controlling an aspect of outputting image data. For example, an output control parameter may control the destination of outputted image data (i.e to a display device or a memory space), a data format of outputted image data, features of a displayed image such as orientation and/or size, compression algorithms utilized, and video preprocessing processes (gamma correction, contrast enhancement, edge peaking, etc.). An output control parameter may also control an aspect of image data processing subsequent to decoding. For example, an output control parameter may control an aspect of an OCR (optical character recognition) algorithm. A plurality of image reading and/or image data reading indicator structures incorporated into an image reading instruction symbol may be substituted for by a single identification indicator structure identifying an identity of the symbol. A memory space of a reader configured to read such a symbol may have incorporated therein a lookup table including various image data reading and output parameters, which are caused to be read from memory space when the reader reads and decodes an image reading instruction symbol including an identifier indicator. In further aspects of the image reading instruction symbol, the image reading instruction symbol may be of a symbology type adapted so that a reader reading the symbol can determine imaging characteristics relating to the image reading instruction symbol, such as the scaling of the symbol, an orientation of the symbol; and/or a distortion of the symbol. It should be well understood to skilled artisans that the capture instruction symbol need not be of a specific symbology type or be of a symbol type at all, and that some embodiments of the invention can be practiced wherein the image reading instruction symbol can comprise virtually any combination of at least one relatively darker indicia of any shape with a relatively lighter space so long as the reader is complementary configured to respond in accordance with the invention to the reading of the image reading instruction symbol. An optical reader of a type which may be implemented in the system of the invention is shown in Fig. 2. Optical reader 10 includes an illumination assembly 20 for illuminating a target object T, such as a 1D or 2D bar code symbol, and an imaging assembly 30 for receiving an image of object T and generating an electrical output signal indicative of the data optically encoded therein. Illumination assembly 20 may, for example, include an illumination source assembly 22, such as one or more LEDs, together with an illuminating optics assembly 24, such as one or more reflectors, for directing light from light source 22 in the direction of target object T. Illumination assembly 20 may be eliminated if ambient light levels are certain to be high enough to allow high quality images of object T to be taken. Imaging assembly 30 may include an image sensor 32, such as a 2D CCD or CMOS solid state image sensor, together with an imaging optics assembly 34 for receiving and focusing an image of object T onto image sensor 32. The array-based imaging assembly shown in Fig. 2 may be replaced by a laser scanning based imaging assembly comprising a laser source, a scanning mechanism, emit and receive optics, a photodetector and accompanying signal processing circuitry. The field of view of the imaging assembly 30 will depend on the application. In general, the field of view should be large enough so that the imaging assembly can capture a bit map representation of a scene including an image data reading region at close reading range. The image data reading region which is read in accordance with the invention can be read from the same bit map representation which includes the image reading instruction symbol. Alternatively, reader 10 may be caused to capture a supplementary bit map representation of a scene after decoding symbol 6 at block 118. Such a supplementary bit map representation may be useful in the case, for example, where symbol 6 is captured at block 117 in monochromatic light and it is desired to process a color image in an image data reading region. At least one additional imaging assembly (not shown) may be provided for increasing the image capture range and/or enhancing imaging capabilities of system 2. Optical reader 10 of Fig. 2 also includes programmable controller 40 which preferably comprises an integrated circuit microprocessor 42 and an application specific integrated circuit or ASIC 44. Processor 42 and ASIC 44 are both programmable control devices which are able to receive, output and process data in accordance with a stored program stored in either or both of a read/write random access memory or RAM 45 and an erasable read only memory or EROM 46. Processor 42 and ASIC 44 are also both connected to a common bus 48 through which program data and working data, including address data, may be received and transmitted in either direction to any circuitry that is also connected thereto. Processor 42 and ASIC 44 differ from one another, however, in how they are made and how they are used. More particularly, processor 42 is preferably a general purpose, off-the-shelf VLSI integrated circuit microprocessor which has overall control of the circuitry of Fig.2, but which devotes most of its time to decoding image data stored in RAM 45 in accordance with program data stored in EROM 46. Processor 44, on the other hand, is preferably a special purpose VLSI integrated circuit, such as a programmable logic or gate array, which is programmed to devote its time to functions other than decoding image data, and thereby relieve processor 42 from the burden of performing these functions. The actual division of labor between processors 42 and 44 will naturally depend on the type of off-the-shelf microprocessors that are available, the type of image sensor which is used, the rate at which image data is output by imaging assembly 30, etc. There is nothing in principle, however, that requires that any particular division of labor be made between processors 42 and 44, or even that such a division be made at all. This is because special purpose processor 44 may be eliminated entirely if general purpose processor 42 is fast enough and powerful enough to perform all of the functions contemplated by the present invention. It will, therefore, be understood that neither the number of processors used, nor the division of labor therebetween, is of any fundamental significance for purposes of the present invention. With processor architectures of the type shown in Fig. 2, a typical division of labor between processors 42 and 44 will be as follows. Processor 42 is preferably devoted primarily to the tasks of decoding image data, once such data has been stored in RAM 45, handling the menuing options and reprogramming functions, and providing overall system level coordination. Processor 44 is preferably devoted primarily to controlling the image acquisition process, the A/D conversion process and the storage of image data, including the ability to access memories 45 and 46 via a DMA channel. Processor 44 may also perform many timing and communication operations. Processor 44 may, for example, control the illumination of LEDs 22, the timing of image sensor 32 and an analog-to-digital (A/D) converter 36, the transmission and reception of data to and from a processor external to reader 10, through an RS-232 (or other) compatible I/O device 37 and the outputting of user perceptible data via an output device 38, such as a beeper, a good read LED and/or a liquid crystal display. Control of output, display and I/O functions may also be shared between processors 42 and 44, as suggested by bus driver I/O and output/display devices 37' and 38' or may be duplicated, as suggested by microprocessor serial I/O ports 42A and 42B and I/O and display devices 37" and 38'. As explained earlier, the specifics of this division of labor is of no significance to the present invention. Fig. 3 shows a flow diagram of a reader operating program configured in accordance with the invention. Steps 105 through 120 and steps 145 through 170 apply generally to one type of reader in which steps of the invention may be implemented, while steps 121 through 125 are steps that apply specifically to the symbol-controlled image data reading system of the invention. Steps 105-120 and 145-170 apply specifically to a reader sold under the tradename WELCH ALLYN 4400, and are described in detail in a copending application assigned to the assignee of the present invention entitled "Optical Readers Having Improved Reading Features", filed September 3, 1996, and identified by serial number 08/697,977, incorporated by reference herein. It should be understood that the operating program described herein is provided only to show, by way of example, a type operating program which may be modified in accordance with the invention and should not be taken as limiting of the varying types of optical readers in which the invention may be incorporated. Referring to the general operational steps of the operation program shown, the operation program begins with block 105 which causes the reader to wait in a low power state until a reader trigger is pulled. When the trigger is pulled, the controller is directed to block 110 which causes it to power up and initialize the reader hardware. The controller is then directed to blocks 115 and 116 which cause it to define the image data memory space that will be used and to initialize the reader with the default values of various operating parameters governing various aspects of the operation of the reader. Examples of such operating parameters may include, for example, the frame rate of the image sensor, the codes that will be enabled during decoding, the I/O communication protocols, beeper pitch or volume, among others. The default values of these parameters correspond to a combination of parameters which are suitable for use under most operating conditions. Additional operating parameters may control specialized functions if the reader shown such as a multiple symbol decoding function (block 143) or a repeat until done function (block 147). After the reader has been initialized, in block 116, the processor proceeds to blocks 117 and 118, which call for it to capture and attempt to decode an image of a target symbol. The term "capturing" herein shall generally refer to a process involving processing analog signals from imaging assembly 30, converting these signals into digital form, presenting them to controller 40 and generating therefrom an initial bit map representation or other memory stored representation of the captured image. The term "reading" shall refer generally to transfers of data involving memory stored image data subsequent to a memory stored representation being initially generated in the capture step. If a decoding is not successful (that is, if the controller is unable to determine the symbology type or information encoded in the message) then controller 40 is directed to block 117 and captures a next frame unless the reader is has been previously programmed not to repeat image capture (block 142) or receives a command to cease capturing images (135, 140). If controller 40 is successful in decoding the symbol (block 120), then the controller 40 will be able to determine if the symbol is an image reading instruction symbol in accordance with the invention. Block 122 illustrates an operation step in the program of the invention in the case that an image reading instruction symbol includes data reading indicators indicating the dimension of the image capture region and the position in relation to the symbol of the image capture region. If the controller 40 at block 121 determines that the symbol is an image reading instruction symbol and that the reader is to commence an image data reading step according to the invention then controller 40 proceeds to block 122 and reads image reading parameters from the symbol which in the case shown pertain to the dimension and relative position of the invention. In a simplified embodiment, such as may be the case if the image reading instruction symbol is provided in a 1D symbology then the controller at this point may be caused to capture an image in space based only on the dimension and relative position data read from the image reading instruction symbol. In one simplified embodiment of the invention, the dimension and relative position indicators read from the image reading instruction symbol correspond to pixel values. That is, dimension parameter indicators may indicate the number of pixels of image data to read in the x and y dimensions of the pixel array, and the relative position indicator parameter may indicate a pixel distance between the center of an image reading parameter and the center of an image data reading region. In this simplified embodiment, an output image data step according to the invention (block 125) would comprise reading and outputting image data from an original bit map representation of an image captured at block 125. However, such a simplified embodiment of the invention is normally significantly useful only in the case where an optical reader is positioned in a fixed position, orientation and distance form an image reading instruction symbol. In a highly useful and versatile embodiment of the invention, the dimension and relative position indicators of the image reading instruction symbol indicate the actual dimension and relative distance, in distance units, of an image data reading region, and the reader is configured to read image data at a specific location in reference to symbol regardless the orientation or symbol to reader distance during reading. Fig. 4A shows a graph corresponding to bit map image data of a captured scene including a captured image reading instruction symbol 202 captured with a reader positioned at an angle, and at an unknown distance with respect to a symbol. The symbol in the example shown includes image reading parameter indicators indicating the dimension and relative position of an image data reading region, in actual distance units. After reading at block 122 the dimension and relative position indicators determined from the decoded symbol (decoded at block 118, the reader may determine from the bit map image data, scaling characteristics, orientation characteristics, and distances characteristics for the captured image reading instruction symbol (block 123). A scaling factor for the captured symbol can be determined, in general, by taking into account the number of modules captured, the type of symbol to determine the actual size of the modules which are normally of a standard size, and the number pixels representing the captured image. The symbol may also include a data message corresponding to the actual size of the symbol. The orientation of the symbol can be determined based on a method which may vary depending on the symbology type. In several symbologies, at least two symbol edges include distinguishing indica so that the relative position of the edges and orientation of the symbol can be determined. In the Aztec symbol shown, corners of central bullseye structure comprise specialized indica (orientation patterns) for indicating the orientation of the symbol. Distortion characteristics of captured symbol 202 may be determined, for example, by taking account the relative position of corner points A, B, C, D of the captured symbol. In many applications, data pertaining to the scale, orientation, and/or distortion characteristics of captured symbol may be previously determined by controller 40 at block 118 when controller 40 attempts to decode the image reading instruction symbol. In the case that such data has been previously determined, it would of course be unnecessary to determine the data again from the bit map representation. Instead, if scaling, orientation or distortion data has been previously determined the required data at block 122 can be determined by reading the data from a memory space of reader 10. The substrate on which a symbol 6 may be formed may be provided by, for example, a sheet of paper, an object, or a body part. The scene region(s) desired to be captured and processed need not be located on the same substrate as symbol 6. It will be recognized that substantially all available symbologies have predetermined geometries (normally rectangular) including corner points allowing scaling, orientation, and distortion characteristics to be determined for virtually any symbology selected for use as an image reading instruction symbol. Features of the Aztec symbology shown the various specific examples of the invention discussed herein are described in detail in U.S. Pat. No. 5,591,956 issued to the assignee of the present invention, and incorporated by reference herein. When the scale and orientation of the captured image reading instruction symbol are determined, the reader may determine, at block 123 the boundaries of an image data reading region utilizing the dimension and relative position parameter of the image data region read from the symbol, and the scaling factor and orientation factors determined for the symbol. A method for reading image data of a data reading region in the case that image distortion is corrected for is described with reference to the bit map image representation graphs of Figs. 4B and 4C. The image data region 206 determined in the example provided for the bit map representation graphs of Figs. 4B and 4C is required by the image data reading parameters of captured symbol 202 to be above symbol 202 and of the same orientation as symbol. However, it will be recognized that an image data reading region 206 may be of any orientation, size, or shape with respect to symbol, and may include pixel values representing all or part of symbol 202. In the example provided, image data reading region 206 is defined by a dimension parameter including a height parameter and a width parameter, and a relative position parameter indicating the position of the center of the image data reading region relative to the center of symbol 202. In order to calculate the pixel location of corner point Q defining a boundary of the data reading region, an infinite imaginary line 210 is drawn through top corner points A and B for the symbol, and infinite imaginary line 212 is drawn between bottom corner point D and C for the symbol. Temporary points G and H are then determined along imaginary lines 210 and 212 respectively, based on the scale of the symbol, the width dimension of the image reading region, and the relative position indicator of the image reading region, and infinite imaginary line 216 is drawn between the temporary points G and H. First corner mark Q for the image reading region can then be drawn along imaginary line 216 based on the relative position indicator for the image reading region and the height dimension of the image reading region. Remaining boundary points R, S, T for the image reading region are determined utilizing the same method. When boundary points Q, R, S, and T for an image data reading region are determined (block 123), a secondary bit map representative of indicia in the image data reading region is constructed (block 124). Construction of a secondary bit map image representative of an image data reading region is described with reference specifically to Fig. 4C. The required resolution of the secondary bit map image can be encoded in an image data reading parameter of the image reading instruction symbol, or else may be encoded in the operating program of the reader. In constructing the secondary bit map image, equally spaced points 220 in the number of the resolution in the y dimension are plotted along line Q-T, and along line R-S. Imaginary pixel locator lines such as line 222 are then drawn between opposing points, for example, points 224 and 226). For determining pixel locator lines in the y dimension, equally spaced points in the number of the required resolution in the x dimension are plotted along lines Q-S, and lines T-S, and y dimension pixel locator lines are drawn between opposing points on the Q-R and T-S lines. When the imaginary pixel locator lines are drawn, a grid is formed comprising a plurality of intersecting imaginary pixel locator lines. Each point of intersection 228 of the pixel locator lines corresponds to a pixel of the constructed secondary bit map image. The value of each individual pixel in the secondary bit map image is interpolated according to one of several well known methods utilizing the pixel values from the original bit map representation of the captured image bordering the location of the intersecting lines. It is seen that a secondary bit map representation of indicia in a data reading region can be constructed so that the secondary bit map better represents the actual size and appearance of the indicia. In accordance with further aspects of the invention, reader 10 can be configured with a feedback function which provides an indicia to a user in the event controller at block 123 determines that the reader needs to be moved into a certain position in order for the reader to capture a scene that includes an image data reading region of the size, shape and position required by symbol 6. For example, if the most recently captured original bit map representation of a scene does not include pixels required to represent the image data reading region, then controller 40 may issue a command to a component of reader 10 which emits a tone or other understandable indicator to a user to move the reader away from the target in order to expand the reader's field of view. Controller 40 can be configured to emit audible or visual indicators that correspond to the direction (x, y, or z axis) in which the reader should be moved in order to capture an image of sufficient characteristics to include image data reading region. After the captured image of the image capture region is output at block 125, controller 40 proceeds to block 146 and outputs the encoded message of remaining data encoded in symbol, if any. Image reading instruction symbol 6 may include an encoded message or else may include no encoded message and may be provided only to cause and possibly control aspects of an image data read in accordance with the invention. Further, the image reading instruction symbol may include a single message whose only purpose is to control an image data reading according to the invention. If at block 121, the controller determines that the symbol is not an image reading instruction symbol then the controller proceeds to block 145 and, in accordance with the specific reader operating program shown, may determine whether the symbol is a menu symbol. A reader in which the invention may be incorporated may include a menuing feature whereby aspects of reader control can be altered by reading specialized menu symbols. Menu symbols include a special flag which indicates to the reader that the symbol being read is a menu symbol. In the case that a menu symbol is read, controller 40 proceeds to block 160 and executes a menu routine. Menu symbols of the type which an image reading instruction symbol according to the invention may be embodied are described in detail in a copending application entitled "Optical Readers Having Improved Menuing Features," identified by serial number 08/687,977, and incorporated by reference herein. One embodiment of the invention, a reader can be configured to provide data read image function according to the invention by providing a menu symbol that is complementarily configured with the reader to result in an image data read. If a symbol being read includes a flag indicating that the symbol being read is a menu symbol, then the data message of the symbol will indicate the type of menu symbol being read and possibly, data required to carry out the instruction of the operation caused to be performed by the reading of the menu symbol. The basic format of a menu symbol of which one type may be a image reading instruction menu symbol is shown in Fig. 5. The image reading instruction may be provided in a message 305 separated into a plurality of sequential fields or bytes of data. In the Aztec code, data fields or bytes are read in order of concentric rings about a center bullseye. A first data field 310 may include a character or characters which indicate that the symbol is an image reading instruction symbol which when read by reader 10, result in the reader commencing an image data reading in accordance with the invention. A second data field 312 may indicate an image reading parameter such as pixel resolution of a constructed secondary bit map representation of an image reading region. A third field 314 may indicate another image reading parameter such as image depth. For example, the number 0 encoded in field 314 may indicate a binary image depth, while the number 3 encoded in field 314 may indicate an 8 bit gray scale. Fourth and fifth data fields 316 may indicate the relative position of the center of the data reading region to the center of the image reading instruction symbol. For example, field 318 may indicate a signed distance in the x dimension between the center of the symbol and the center of the image reading region, while field 320 may indicate a signed distance in the y dimension between the center of the symbol and the center of the image reading region. Sixth and seventh fields 322 may indicate the dimension of the image data reading region. For example, field 324 may indicate a height of an image data reading region, while field 326 may indicate a width of an image data reading region. Further data fields may be provided to indicate additional image data reading parameters or image data output parameters. Figs. 6A through 6C illustrate possible uses of the present invention. Fig. 6A illustrates an implementation of the invention for use in capturing a signature field. In this embodiment, an image reading instruction symbol 6 is disposed on a substrate, and reading of the symbol causes image data corresponding to scene region 8 containing a signature field 9 to be read. In this embodiment, it is typical to output the image data from or calculated from an image data reading region for optical character recognition (OCR) processing, or for a validity check processing wherein the validity of the signature contained in the image data reading region is verified. Fig. 5B illustrates implementation of the invention for fingerprint capture. In this embodiment, reading of image reading instruction symbol 6 formed on a substrate causes image data pertaining to a region of a scene containing a fingerprint field to be read. The image data reading region including the fingerprint representation is then either output to a display apparatus for visual analysis, or else output to a memory space for use in a processing algorithm for determining the identity of a person making the fingerprint. In the embodiment of Fig. 5C reading of image reading instruction symbol 6 causes image data corresponding to various scene regions 8 contained in a lottery game board having scratch regions to be read. The image data corresponding to regions 8 can then be output, for example, to determine if any of the scratch regions have been played. An important advantage of the present invention in certain embodiments is that captured images of image data reading regions can be output to actual size, to a proper orientation, and with distortion of the captured image corrected, regardless of the distance, orientation, or angle of a reader to an image reading instruction symbol formed in accordance with the invention, and regardless the position of the symbol 6 in relation to a scene region desired to be captured and output. While the present invention has been described with reference to a number of specific embodiments in order to set forth the best mode thereof, it will be understood that the scope of the present invention should be determined with reference to the following claims.

Claims: A system for processing image data corresponding to a scene, said system comprising an imaging assembly (30) having a 2D image sensor for outputting image information, a controller (40) for controlling said imaging assembly (30), said controller (40) being in communication with a memory space (45, 46), a portable housing encapsulating said imaging assembly (30), and an image reading instruction symbol (6) including bar code indicia, wherein said controller (40) is adapted to capture into said memory space (45, 46) an electronic representation of a scene including said image reading instruction symbol (6), said system being characterized in that said controller (40) is adapted to determine at least a distortion characteristic of a representation of said image reading instruction symbol (6) within said electronic representation, wherein said controller (40) is adapted to utilize said determined distortion characteristic to correct a distortion of at least one image data reading region (206) within said electronic representation, and wherein said image data reading region (206) includes image data that does not represent said image reading instruction symbol (6). The system of claim 1, wherein said system is further characterized in that said image reading instruction symbol (6) includes a dimension indicator means for indicating a dimension of said at least one image data reading region. The system of claim 2, wherein said dimension indicating means includes a decodable graphic of said symbol (6) which is decoded by said controller to determine a dimension indicator value. The system of claim 2, wherein said dimension indicating means includes a decodable graphic of said symbol which is decoded by said controller to determine a symbol identifier, wherein said controller determines a dimension indicator value from said symbol identifier by referencing a lookup table stored in said memory space correlating symbol identifiers with dimension indicator values. The system of claim 1, wherein said system is further characterized in that said image reading instruction symbol (6) includes a position indicator means for indicating a position of said at least one image data reading region (206). The system of claim 5, wherein said position indicating means of said symbol (6) includes a decodable graphic of said symbol which is decoded by said controller to determine a position indicator value. The system of claim 5, wherein said dimension indicating means includes a graphic of said symbol which is decoded by said controller to determine a symbol identifier, wherein said controlled determines a position indicator value from said symbol identifier by referencing a lookup table stored in said memory space correlating symbol identifiers with position indicator values. The system of claim 1, wherein said image reading instruction symbol (6) includes dimension indicator means for indicating a dimension of said at least one image data reading region in actual distance units that express a size of a scene region of said scene. The system of claim 1, wherein said image reading instruction symbol (6) includes position indicator means for indicating a position of said at least one image data reading region in actual distance units that express a position of a scene region (8) of a scene relative to a position of said image reading instruction symbol (6) in said scene. The system of claim 1, wherein said image reading instruction symbol (6) includes a dimension indicator means and a position indicating means. The system of claim 1, wherein said image reading instruction symbol (6) includes an image data output parameter indicator means for indicating an aspect of outputting image data of said at least one image data reading region. The system of claim 11, wherein said output parameter indicating means of said symbol includes decodable graphical structure of said symbol which is decoded by said controller (40) to determine at least one output parameter. The system of claim 11, wherein said output parameter indicating means includes a graphical structure of said symbol which is decoded by said controller to determine a symbol identifier, wherein said controller determines an output parameter from said symbol identifier by referencing a lookup table stored in said memory space (45,56) correlating symbol identifiers with output parameter values of at least once type. The system of claim 11, wherein said output parameter indicators means indicates an output destination to which said image data of said at least one image data reading region (206) is to be output. The system of claim 14, wherein said output destination is a particular memory location of said memory space (45, 46). The system of claim 11, wherein said output parameter indicator structure indicates that image data of said at least one image data reading region (206) is to be output to a display. The system of claim 11, wherein said output parameter indicator structure indicates that image data of said at least one image data reading region (206) is to be subjected to OCR processing. The system of claim 11, wherein said output parameter indicator structure indicates that image data of said at least one image data reading region (206) is to be subjected to OCR processing in accordance with a particular OCR decoding algorithm. The system of claim 11, wherein said output parameter indicator structure indicates a compression algorithm in accordance with which image data of said at least one image data reading region is to be output. The system of claim 11, wherein said output parameter indicator means indicates a data format in which data from said at least one image data reading region is to be output. The system of claim 11, wherein said output parameter indicator means indicates a video preprocessing process with said image data from said at least one image data reading region is to be processed. The system of claim 1, wherein said system is further characterized in that said controller (40) is adapted to evaluate data from said electronic representation and to provide a feedback indicator to a user if said controller (40) determines that said at least one image data reading region is represented within said electronic representation. The system of claim 22, wherein said feedback indicator includes an aural feedback indicator. The system of claim 22, wherein said feedback indicator includes a visually perceivable feedback indicator. The system of claim 22, wherein said feedback indicator indicates a direction of suggested movement of said imaging assembly (30) so that a next electronic representation corresponding to said scene is more likely to comprise a representation of said at least one image data reading region within said electronic representation. The system of claim 1, wherein said at least one image data reading region (206) comprises at least two image data reading regions (206). The system of claim 1, wherein said image reading instruction symbol (6) is formed on a lottery game card, and wherein said system is adapted so that said one at least one image data reading region (206) represents a play area of said lottery game card. The system of claim 1, wherein said system is adapted so that said image data reading region (206) includes image data representing a signature capture area proximate an image reading instruction symbol (6) disposed on a substrate bearing said signature capture area. The system of claim 22, wherein said system is adapted so that said image data reading region (206) includes image data representing a signature capture area proximate an image reading instruction symbol (6) disposed on a substrate bearing said signature capture area. The system of claim 1, wherein said system being further characterized in that said image reading instruction symbol (6) includes a subsequent capture indicator means provided by a decodable graphic which when decoded by said controller results in said controller automatically capturing a second electronic image representation into said memory space. The system of claim 30, wherein said system includes first and second imaging assemblies, wherein said controller (40) controls said first imaging assembly (30) when capturing said first electronic image representation into said memory space and controls said second imaging assembly when capturing said second electronic image representation. The system of claim 1, wherein said controller (40) constructs a secondary bit map of said image data reading region (240) while correcting a distortion of said image data reading region (240) utilizing said distortion characteristic. The system of claim 1, wherein said controller (40) draws imaginary pixel locator lines (222) while correcting a distortion of said image data reading region (240) utilizing said distortion characteristic. The system of claim 1, wherein said controller (40) finds corner points A, B, C, D of said representation of said image reading instruction symbol (6) while determining said distortion characteristic of said representation of said image reading instruction symbol (6). The system of claim 1, wherein said controller decodes said image reading instruction symbol (6) to generate a message. The system of claim 1, wherein said controller decodes said image reading instruction symbol (6) to generate a message separated into a plurality of sequential fields. The system of claim 1, wherein said image reading instruction symbol (6) is formed proximate a fingerprint, and wherein said system is adapted so that said at least one image data reading region (206) represents said fingerprint. The system of claim 1, wherein said image reading instruction symbol is provided by a single bar code symbol. The system of claim 1, wherein said image reading instruction symbol (6) is provided by a 2D bar code symbol. The system of claim 1, wherein said image reading instruction symbol (6) is provided by a 1D bar code symbol.

Inventors: HUSSEY ROBERT M, LONGACRE ANDREW JR, HUSSEY, ROBERT M., LONGACRE, ANDREW, JR.
Applicants: WELCH ALLYN DATA COLLECTION IN, WELCH ALLYN DATA COLLECTION, INC.
Application year: 1998
Main classification: G06K7
IPC codes: G06T1, H04N1, G06K7