Abstract:
A produce recognition method which determines an optimal number of candidate identifications in a candidate identification list. The method includes the steps of obtaining produce data associated with a produce item, determining distances between the produce data and reference produce data, determining confidence values from the distances, determining first confidence values which are greater than a threshold confidence value, displaying candidate identifications associated with the first confidence values, and recording an operator choice of one of the candidate identifications.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present invention is related to the following commonly assigned and co-pending U.S. applications: 
     “A Produce data collector And A Produce Recognition System”, filed Nov. 10, 1998, invented by Gu, and having a Ser. No. 09/189,783; and 
     “Produce Recognition System and Method”, filed Jul. 28, 1999, invented by Gu, and having a Ser. No. 09/362,488. 
    
    
     BACKGROUND OF THE INVENTION 
     The present invention relates to product checkout devices and more specifically to a produce recognition method. 
     Bar code readers are well known for their usefulness in retail checkout and inventory control. Bar code readers are capable of identifying and recording most items during a typical transaction since most items are labeled with bar codes. 
     Items which are typically not identified and recorded by a bar code reader are produce items, since produce items are typically not labeled with bar codes. Bar code readers may include a scale for weighing produce items to assist in determining the price of such items. But identification of produce items is still a task for the checkout operator, who must identify a produce item and then manually enter an item identification code. Operator identification methods are slow and inefficient because they typically involve a visual comparison of a produce item with pictures of produce items, or a lookup of text in table. Operator identification methods are also prone to error, on the order of fifteen percent. 
     A produce recognition system is disclosed in the cited co-pending application. A produce item is placed over a window in a spectral data collector, the produce item is illuminated, and the spectrum of the diffuse reflected light from the produce item is measured. A terminal compares the spectrum to reference spectra in a library to determine a list of candidate identifications. 
     Finding an appropriate length for the list is important in order to achieve optimal speed without sacrificing accuracy. If the list is too long, the operator may take longer than necessary to find a matching candidate. If the list is too short, the matching candidate could be left out, leaving the operator unable to find it. The operator may also choose incorrectly. 
     Therefore, it would be desirable to provide a produce recognition method with improved selection speed and accuracy. 
     SUMMARY OF THE INVENTION 
     In accordance with the teachings of the present invention, a produce recognition method is provided. 
     The method includes the steps of obtaining produce data associated with a produce item, determining distances between the produce data and reference produce data, determining confidence values from the distances, determining first confidence values which are greater than a threshold confidence value, displaying candidate identifications associated with the first confidence values, and recording an operator choice of one of the candidate identifications. 
     It is accordingly an object of the present invention to provide a produce recognition method. 
     It is another object of the present invention to provide a method of improving selection speed and accuracy of produce choices in a produce recognition system. 
     It is another object of the present invention to determine an optimal number of candidate identifications in a candidate identification list. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Additional benefits and advantages of the present invention will become apparent to those skilled in the art to which this invention relates from the subsequent description of the preferred embodiments and the appended claims, taken in conjunction with the accompanying drawings, in which: 
     FIG. 1 is a block diagram of a transaction processing system including a produce recognition system; 
     FIG. 2 is a block diagram of a type of produce data collector; and 
     FIG. 3 is a flow diagram illustrating the produce recognition method of the present invention. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Referring now to FIG. 1, transaction processing system  10  includes bar code data collector  12 , produce data collector  14 , and scale  16 . 
     Bar code data collector  12  reads bar code  22  on merchandise item  32  to obtain an item identification number, also know as a price look-up (PLU) number, associated with item  32 . Bar code data collector  12  may be any bar code data collector, including an optical bar code scanner which uses laser beams to read bar codes. Bar code data collector  12  may be located within a checkout counter or mounted on top of a checkout counter. 
     Produce data collector  14  collects data for produce item  18 . Such data may include color and color distribution data, size data, shape data, surface texture data, and aromatic data. Reference produce data is collected and stored within produce database  30 . 
     Transaction terminal  20  and produce data collector  14  are the primary components of the produce recognition system. 
     During a transaction, produce data collector  14  may be self-activated upon a drop of ambient light, or operation may be initiated by placement of produce item  18  on scale  16  or by operator commands. 
     Scale  16  determines a weight for produce item  18 . Scale  16  works in connection with bar code data collector  12 , but may be designed to operate and be mounted separately. Scale  16  sends weight information for produce item  18  to transaction terminal  20  so that transaction terminal  20  can determine a price for produce item  18  based upon the weight information. 
     Bar code data collector  12  and produce data collector  14  operate separately from each other, but may be integrated together. Bar code data collector  12  works in conjunction with transaction terminal  20  and transaction server  24 . Scale  16  may also work in connection with bar code data collector  12 , but may be designed to operate and be mounted separately. 
     Storage medium  26  preferably includes one or more hard disk drives. Produce database  30  is preferably stored within storage medium  26 , but may also be located instead at transaction terminal  20 . PLU data file  28  is stored within storage medium  26 , but may be located instead at transaction terminal  20  or bar code data collector  12 . 
     Display  34  and input device  36  may be part of a touch screen or located separately. 
     In the case of bar coded items, transaction terminal  20  obtains the item identification number from bar code data collector  12  and retrieves a corresponding price from PLU data file  28  through transaction server  24 . 
     In the case of non-bar coded produce items, transaction terminal  20  executes produce recognition software  21  which obtains produce characteristics of produce item  18  from produce data collector  14 , identifies produce item  18  by comparing produce data in produce database  30  with collected produce data, and retrieves an item identification number from produce database  30  and passes it to transaction software  25 , which obtains a corresponding price from PLU data file  28 . 
     In an alternative embodiment, preliminary identification of produce item  18  may be handled by transaction server  24 . Transaction server  24  receives collected produce characteristics and compares them with produce data in produce database  30 . Transaction server  24  provides a candidate list to transaction terminal  20  for display and final selection. Following identification, transaction server  24  obtains a price for produce item  18  and forwards it to transaction terminal  20 . 
     To assist in proper identification of produce items, produce recognition software  21  additionally displays candidate identifications in list  38  for operator selection and verification. Produce recognition software  21  preferably arranges the candidate identifications in terms of probability of match and displays their images in predetermined locations on operator display  34  of transaction terminal  20 . The operator may accept the most likely candidate returned by produce recognition software  21  or override it with a different choice using input device  36 . 
     Turning now to FIG. 2, an example produce data collector  14  which relies on spectroscopic analysis is illustrated. Other types of produce data collectors are also envisioned. 
     Example produce data collector  14  primarily includes light source  40 , spectrometer  51 , control circuitry  56 , transparent window  60 , and housing  62 . 
     Light source  40  produces light  70 . Light source  40  preferably produces a white light spectral distribution, and preferably has a range from four hundred 400 nm to 700 nm, which corresponds to the visible wavelength region of light. 
     Light source  40  preferably includes one or more light emitting diodes (LEDs). A broad-spectrum white light producing LED, such as the one manufactured by Nichia Chemical Industries, Ltd., is preferably employed because of its long life, low power consumption, fast turn-on time, low operating temperature, good directivity. Alternate embodiments include additional LEDs having different colors in narrower wavelength ranges and which are preferably used in combination with the broad-spectrum white light LED to even out variations in the spectral distribution and supplement the spectrum of the broad-spectrum white light LED. 
     Other types of light sources  40  are also envisioned by the present invention, although they may be less advantageous than the broad spectrum white LED. For example, a tungsten-halogen light may be used because of its broad spectrum, but produces more heat. 
     A plurality of different-colored LEDs having different non-overlapping wavelength ranges may be employed, but may provide less than desirable collector performance if gaps exist in the overall spectral distribution. 
     Ambient light sensor  48  senses the level of ambient light through windows  60  and  61  and sends ambient light level signals  81  to control circuitry  56 . Ambient light sensor  48  is mounted anywhere within a direct view of window  61 . 
     Spectrometer  51  includes light separating element  52  and photodetector array  54 . 
     Light separating element  52  splits light  74  in the preferred embodiment into light  80  of a continuous band of wavelengths. Light separating element  52  is preferably a linear variable filter (LVF), such as the one manufactured by Optical Coating Laboratory, Inc., or may be any other functionally equivalent component, such as a prism or a grating. 
     Photodetector array  54  produces waveform signals  82  containing spectral data. The pixels of the array spatially sample the continuous band of wavelengths produced by light separating element  52 , and produce a set of discrete signal levels. Photodetector array  54  is preferably a complimentary metal oxide semiconductor (CMOS) array, but could be a Charge Coupled Device (CCD) array. 
     Control circuitry  56  controls operation of produce data collector  14  and produces digitized produce data waveform signals  84 . For this purpose, control circuitry  56  includes an analog-to-digital (A/D) converter. A twelve bit A/D converter with a sampling rate of 22-44 kHz produces acceptable results. 
     Transparent window  60  is mounted above auxiliary transparent window  61 . Windows  60  and  61  include an anti-reflective surface coating to prevent light  72  reflected from windows  60  and  61  from contaminating reflected light  74 . 
     Housing  62  contains light source  40 , ambient light sensor  48 , spectrometer  51 , photodetector array  54 , control circuitry  56 , auxiliary transparent window  61 , and transparent window  60 . 
     Turning now to FIG. 3, the produce recognition method of the present invention begins with START  90 . 
     In step  92 , produce recognition software  21  waits for produce data from produce data collector  14 . Produce data may include spectral or other types of data and may include combinations of different types of data. Operation proceeds to step  94  following produce data collection. 
     In step  94 , produce recognition software  21  uses an appropriate distance measure to determine distance values d j  between the sampled produce data and reference produce data for each reference class of produce item. 
     For example, using a nearest neighbor algorithm, a distance is computed from the sampled produce data to each matching template of a class of produce item. 
     Another example distance measure is the distance measure of likeness (DML) defined in the second-listed co-pending application by Gu. A DML value provides a distance between an unknown instance and a class of produce item, with the smallest DML value yielding the most likely candidate:            DML   ≡     d   ij       =           ∑     k   =   1       n   j                         (       x   ijk     -     x   tik       )     2         n   j           ,                          
     where n j  is the number of instances in the j-th class, k is an integer from 1 to n j , distance is measured in the i-th dimension, X ijk  are the coordinates of a sampled instance, and X tik  are the coordinates of a typical reference instance. 
     In step  96 , produce recognition software  21  converts distance measures d j  to confidence values C i :            C   i     =       1     d   i           ∑     j   =   1     N                     1     d   j             ,                          
     where N is the total number of classes of reference produce items. 
     In step  98 , produce recognition software  21  sorts the confidence values C i . 
     In step  100 , produce recognition software  21  computes number N out of all reference produce items to be included as part of list  38  so that:              ∑     i   =   1     N                     C   i       ≥   T     ,                          
     where T is a threshold, so that there is a T probability that produce item  18  is within list  38 . List  38  is a truncated list of all reference produce items. 
     In step  102 , produce recognition software  21  displays images of the candidates in list  38 . 
     In step  104 , produce recognition software  21  records an operator choice for produce item  18  through input device  36 . 
     Transaction terminal  20  uses the identification information to obtain a unit price for produce item  18  from transaction server  24 . Transaction terminal  20  then determines a total price by multiplying the unit price by weight information from scale  16 . Operation returns to step  92  to prepare for another produce item. 
     Although the invention has been described with particular reference to certain preferred embodiments thereof, variations and modifications of the present invention can be effected within the spirit and scope of the following claims.