Abstract:
Methods and system for automatic identification of repeating patterns of slanted stripe features (marks) on an item. In the initial step of the method of this invention embodiment of the method of this invention a digital image of the item is acquired. Pixel data is then obtained for pixels in the digital image. Line segment data is extracted from the pixel data. A set of collinear line segments is identified from the line segment data. A set of lines intersecting members of the set of collinear line segments is identified from the line segment data. The set of intersecting lines and the set of collinear lines identify a set of marks. In one embodiment of the method of this invention, in identifying the set of collinear line segments, the method also includes constructing a histogram displaying a number of line segments in predetermined angular ranges. Systems of this invention implement the method.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     This invention relates generally to methods and systems for recognizing patterns, and, more particularly, to methods and systems for automatic detection of repeating patterns of features.  
         [0002]     Repeating stripe features (also referred as “chevron marks”) are used in a variety of applications. In one application, edge marks such as alternating red and blue diagonal stripes located at equal intervals around the edge of the envelope are used, in some countries, to indicate that postal material is airmail. Other marks, such as airmail marks, may overlap the striped edge airmail marks. Stamps may also partially overlap the edge marks. This overlapping of airmail marks and edge marks and of stamps and edge marks at times makes the airmail mark and the stamp difficult to distinguish from the edge marks and, therefore, difficult to detect. Separate detection of the edge marks (“chevron” marks) will reduce any difficulty caused by overlapping of other marks and the edge marks.  
         [0003]     While the detection of repeating stripe (“chevron”) marks is not a difficult task for a human observer, the automatic detection of repeating stripe (“chevron”) features (marks) presents unique challenges.  
         [0004]     It is therefore an object of this invention to provide methods and systems for automatic detection of repeating patterns of slanted stripe features.  
         [0005]     It is a further object of this invention to provide methods and systems for automatic detection of repeating patterns of slanted stripe features (marks) on mail items.  
       BRIEF SUMMARY OF THE INVENTION  
       [0006]     The objects set forth above as well as further and other objects and advantages of the present invention are achieved by the embodiments of the invention described hereinbelow.  
         [0007]     A method and system for automatic detection of repeating patterns of slanted stripe features on an item are disclosed.  
         [0008]     In the initial step of the method of this invention a digital image of the item is acquired. Pixel data is then obtained for pixels in the digital image. Line segment data is extracted from the pixel data. A set of collinear line segments is identified from the line segment data. A set of lines intersecting members of the set of collinear line segments is identified from the line segment data. The set of intersecting lines and the set of collinear lines identify a set of features (marks). In one embodiment of the method of this invention, in identifying the set of collinear line segments, the method also includes constructing a histogram displaying a number of line segments in predetermined angular ranges. In another embodiment, the method includes verifying that the identified set of features is located at a preselected location on the item. The method can be applied to identifying and locating slanted stripe marks on mail pieces.  
         [0009]     A system of this invention includes a digital image acquisition module, one or more processors, and one or more computer readable memories having computer readable code that enables the one or more processors to perform the method of this invention. The computer readable code that enables the one or more processors to perform the method of this invention can be embodied in a computer readable medium.  
         [0010]     For a better understanding of the present invention, together with other and further objects thereof, reference is made to the accompanying drawings and detailed description and its scope will be pointed out in the appended claims. 
     
    
     BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING  
       [0011]      FIG. 1  is a flowchart of an embodiment of the method of this invention;  
         [0012]      FIG. 2   a  is an initial section of a flowchart of a detailed embodiment of the method of this invention;  
         [0013]      FIG. 2   b  is a subsequent section of a flowchart of a detailed embodiment of the method of this invention;  
         [0014]      FIG. 3  is a flowchart of another embodiment of the method of this invention;  
         [0015]      FIG. 4  is a graphical schematic representation of an original image of exemplary item including marks;  
         [0016]      FIG. 5  is a graphical schematic representation of the image of  FIG. 4  including partial results of an embodiment of the method of this invention;  
         [0017]      FIG. 6  is a graphical schematic representation of the image of  FIG. 4  including further partial results of an embodiment of the method of this invention;  
         [0018]      FIG. 7  is a graphical schematic representation of the image of  FIG. 4  including final results of an embodiment of the method of this invention; and  
         [0019]      FIG. 8  is a block diagram representative of an embodiment of the system of this invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0020]     Methods and system for automatic detection of repeating patterns of slanted stripe features (hereinafter also referred to as marks) on an item are disclosed herein below.  
         [0021]     A flowchart of an embodiment of the method  10  of this invention is shown in  FIG. 1 . Referring to  FIG. 1 , the first step in the method is the acquisition of a digital image (step  20 ,  FIG. 1 ). Pixel data is obtained for each pixel in the image (step  30 ,  FIG. 1 ). Line segment data is then obtained from the pixel data (step  40 ,  FIG. 1 ) by conventional means. A number of conventional methods have can be utilized for obtaining line segment data from the pixel data. Some examples of methods that can be utilized for obtaining line segment data from the pixel data are, but not limited to, the line finder algorithm of Khan, Kitchen and Riseman (Kahn, P., Kitchen, L., and Riseman, E. M.  A fast line finder for vision - guided robot navigation . IEEE Transactions on Pattern Analysis and Machine Intelligence 12, 3 (1990), 1098-1102) and the line extractor of Aste, Boninsegna and Caprile (M. Aste, M. Boninsegna, and B. Caprile.  A Fast Straight Line Extractor for VisionGuided Robot Navigation , Technical report, Istituto per la Ricerca Scientifica e Tecnologica, 1994 available at http://citeseer.nj.nec.com/aste93fast.html).  
         [0022]     Once the line segment data have been obtained, a group of collinear segments can be identified (step  50 ,  FIG. 1 ). Comparing properties of a collinear line segment to characteristic values (properties) representative of the group of collinear segments, it can be verified whether each collinear line segment from the plurality of collinear line segments is a valid element of the group of collinear line segments (step  70 ,  FIG. 1 ). Those elements that are not deemed to be members of the group are culled from the group (step  80 ,  FIG. 1 ). (In one embodiment, the length of each collinear line segment is compared to the median length for the group of collinear line segments. If the length of the collinear line segment is not within a predetermined threshold of the median length, the line segment is culled.)  
         [0023]     Utilizing the culled group of collinear line segments and the line segment data, a group of lines intersecting the culled group of collinear lines is identified (step  90 ,  FIG. 1 ). The group of intersecting lines and the group of collinear lines identifies a group of marks.  
         [0024]     Utilizing the method described above, a subsequent group of collinear line segments can be identified from the line segment data and a subsequent group of intersecting lines intersecting the subsequent group of collinear lines can be identified. The subsequent group of intersecting lines and the subsequent group of collinear lines identifies a subsequent group of marks.  
         [0025]     From the line segment data, it can be determined whether the group of identified marks  95  ( FIG. 3 ) and the subsequent group of identified marks  105  ( FIG. 3 ) are substantially overlapping (step  115 ,  FIG. 3 ). From the line segment data, it can also be determined whether the group of identified marks and the subsequent group of identified marks have substantially similar collinearity (step  125 ,  FIG. 3 ). If the group of identified marks and the subsequent group of identified marks are substantially overlapping and if the group of identified marks and the subsequent group of identified marks have substantially similar collinearity, the group of identified marks and the subsequent group of identified marks are merged into one group (step  135 ,  FIG. 3 ).  
         [0026]     In order to better understand the method of this invention, a detailed embodiment is given below.  FIG. 4  depicts a mail piece containing marks around the edges of a mail piece  200  that indicates that the mail is airmail. The marks, a repeating pattern of parallelograms or rectangles of alternating colors surrounding the outside of the envelope, are referred to as chevrons. In order to automatically determine whether the mail piece is airmail, the chevron marks have to identified.  
         [0027]     Utilizing the method of  FIG. 1 , a digital image is acquired (step  20 ,  FIG. 1 ). Pixel data is obtained for each pixel in the image (step  30 ,  FIG. 1 ). Line segment data, including line angle data, is then obtained from the pixel data (step  40 ,  FIG. 1 ) by conventional means such as, but not limited to, the line finder algorithm of Khan, Kitchen and Riseman and the line extractor of Aste, Boninsegna and Caprile. A histogram of the angles of the lines is obtained (step  140 ,  FIG. 2   a ). A number of peaks, p peaks, in the line angle histogram are located (step  150 ,  FIG. 2   a ). For each peak in the histogram, the peak is grouped with a number of the neighboring bins, n bins, to the right and left in the histogram (step  160 ,  FIG. 2   a ). The group of line data samples including the histogram peak and the neighboring n bins to the right and left in the histogram constitute the set of line data samples  170  ( FIG. 2   a ) to be utilized in identifying the marks.  
         [0028]     The identifying of the collinear line segments (step  50 ,  FIG. 1 ) in the set of line data samples  170  includes the following steps. The lines in the set of line data samples  170  are rotationally corrected by rotating the lines by the angle of the peak bin in the histogram (step  190 ,  FIG. 2   b ). The rotated lines are projected onto the coordinate representing the edge of the mail item, labeled as the ordinate (step  210 ,  FIG. 2   b ). A histogram of the number of lines projected onto an ordinate axis location is created. The peak value of the histogram of the number of lines projected onto an ordinate axis location is compared to a predetermined threshold. If the peak value is bigger than the threshold, the lines in the histogram bin containing the peak value are identified as a group of collinear lines.  
         [0029]     The process is repeated for the set of line data samples  170  corresponding to each peak in the histogram resulting in a number of groups of collinear lines. For each of these groups, the median line length in the group is found and all lines that are not within a predetermined median line threshold are removed from the group. Any groups that no longer have enough lines to be considered are removed. A group of collinear lines  220  in the mail piece  200  of  FIG. 4  is shown in  FIG. 5 .  
         [0030]     For each group of collinear lines, a group of intersecting lines is identified from the corresponding set of line data samples  170 . The group of collinear lines and the corresponding group of intersecting lines constitute a group of identified marks. The collinear line group  220  of  FIG. 5  and the corresponding group of intersecting lines  230  are shown in  FIG. 6 .  
         [0031]     For any two groups of identified marks, it can be determined whether one group of identified marks and the other group of identified marks overlap within an overlapping threshold. It can be also determined whether the two groups, one group of identified marks and the other group of identified marks, have a similar collinear angle within a collinearity threshold. If one group of identified marks and the other group of identified marks overlap within an overlapping threshold and one group of identified marks and the other group of identified marks have a similar collinear angle within a collinearity threshold, the groups are merged. The determination of whether one group of identified marks and the other group of identified marks overlap can, in one embodiment, be performed by obtaining, for each group of identified marks, a bounding rectangle (box) including the group of collinear lines and the corresponding edge of the mail item  200  shown in  FIG. 4  and bounding the group of intersecting lines. If two bounding rectangles overlap, the two groups of identified lines overlap.  
         [0032]     The thresholds utilized in the various comparisons detailed above can be, but not limited to, obtained by analysis and experimentation on a large database of similar image images.  
         [0033]     The resulting groups of collinear lines and the corresponding groups of intersecting lines constitute the groups of identified marks. An estimated number of marks (Chevron Elements) and the estimated width of each mark can also be obtained.  FIG. 7  depicts the two resulting groups of identified marks  250 ,  260  for the mail item  200  of  FIG. 4 .  
         [0034]     If information is available about the location and size of other blocks on the mail piece  200 , that information can be used to determine if the marks  250 ,  260  are in a location on the mail piece  200  where chevron marks are expected to be (a “valid” or preselected location). Thus, in the embodiment of  FIG. 7 , from location and size of the address block, and/or the stamps, and/or the airmail indicator on the mail piece  200 , it is possible to verify that the identified groups of marks  250 ,  260  are located at a valid location on the item.  
         [0035]     A block diagram representation of an embodiment of the system  300  that implements the method of this invention is shown in  FIG. 8 . Referring to  FIG. 8 , the system  300  includes a digital image acquisition module  310  capable of acquiring a digital image of the item, one or more processors  320 , and one or more computer readable memories  330 . The one or more computer readable memories have computer readable code embodied therein, which is capable of causing the at least one processor to execute the above described methods of this invention. The digital image acquisition module  310  can be, but is not limited to, a video camera, a digital still camera, or an image acquisition sensor with the necessary optics and control and processing electronics. The interface component  315  receives the image data from the digital image acquisition module  310  and provides the image data to the computer readable memories  330 ,  340 . The computer readable memory  340  provides memory for other operational tasks.  
         [0036]     It should also be noted that “mail piece” as used in this invention refers to any addressed object in a package or mail delivery system.  
         [0037]     It should also be noted that although the methods of this invention have been described in detail for the embodiment in which the slanted marks are located on a mail piece, the methods of this invention can be applied to any repeating pattern of slanted stripe features, such as slanted marks.  
         [0038]     In general, the techniques described above may be implemented, for example, in hardware, software, firmware, or any combination thereof. The techniques described above may be implemented in one or more computer programs executing on a programmable computer including a processor, a storage medium readable by the processor (including, for example, volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Program code may be applied to data entered using the input device to perform the functions described and to generate output information. Input device, as used herein, refers to any device, such as, but not limited to, a keyboard, a mouse, voice input, a touch sensitive pad or display, a computer pen, or a writing tablet, that is used to provide input data to provide data to programmable computer. The output information may be applied to one or more output devices.  
         [0039]     Each computer program within the scope of the claims below may be implemented in any programming language, such as assembly language, machine language, a high-level procedural programming language, or an object-oriented programming language. The programming language may be a compiled or interpreted programming language.  
         [0040]     Each computer program may be implemented in a computer program product tangibly embodied in a computer-readable storage device for execution by a computer processor. Method steps of the invention may be performed by a computer processor executing a program tangibly embodied on a computer-readable medium to perform functions of the invention by operating on input and generating output.  
         [0041]     Common forms of computer-readable or usable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CDROM, any other optical medium, punched cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.  
         [0042]     Although the invention has been described with respect to various embodiments, it should be realized this invention is also capable of a wide variety of further and other embodiments within the spirit and scope of the appended claims.