Abstract:
A method and apparatus for preventing or inhibiting effective reproduction of documents such as currency, checks, stock certificates, and any other printed document including a pre-defined security mark printed therein. The method and apparatus operate to effect a multi-step review of all digital image data acquired from a printed document to be reproduced for purposes of locating any potential security marks and further examining same for purposes of positively identifying a potential security mark as an actual security mark. If a mark is located and verified to be an authentic security mark, effective reproduction of the printed document will not be permitted and/or other security measures will be taken. Processing speed is improved by using run profile analysis to limit the image features that are subjected to computationally intensive template matching operations. Run profiles are tracked using a finite automaton.

Description:
BACKGROUND  
       [0001]     The present application relates to the digital image processing arts. More particularly, the application relates to a method and apparatus for preventing or inhibiting effective reproduction of documents such as currency, checks, stock certificates, and any other printed document having a pre-defined security mark printed therein. The method and apparatus operate to provide a multi-step review of digital image data derived from a printed document to be reproduced in order to locate any potential security marks and to examine the potential security mark(s) further in an effort to identify a potential security mark as an actual security mark. If an actual security mark is identified, effective reproduction of the printed document is not permitted and/or other security measures are taken.  
         [0002]     The proliferation of digital image processing systems, such as digital color copiers, that are able to make very high quality reproductions or “copies” of color documents at a low cost has led to use of these machines by criminals for reproduction of currency, checks, stock certificates, legal documents, and other printed documents not legally reproducible. Obviously, any reproductions of these documents are counterfeit and illegal.  
         [0003]     U.S. Pat. No. 6,580,820 and U.S. Pat. No. 6,542,629 are hereby expressly incorporated by reference into this specification. These patents disclose a method for detecting Security Circle (SC) Common Marks and other security marks in order to prevent counterfeiting. The security marks are defined according to standards and, as such, the color and dimensions of the mark components, as well as the position of each mark component relative to the other mark components, are known. According to these patents, the detection comprises four main steps: binarization; micro-detection, macro-detection; and, verification. The binarization step extracts a bitmap from the input image data based upon color, with pixels of the bitmap set to “on” if they are close to the known color of the security mark. The micro-detection step operates on the bitmap data to identify potential mark constituents. The macro-detection step examines the relationship of the potential mark constituents to each other to determine if a potential security mark is present. The verification step provides a final check of potential security marks for added certainty of mark detection, in an effort to prevent false positives.  
         [0004]     In a typical case, digital image processing functions of an image printing/reproduction apparatus are performed by a programmed general purpose computer in combination with some special purpose hardware. The former is referred to as “software” while the latter is referred to as “hardware.” The hardware is mainly implemented for computationally intensive functions to enhance performance in terms of processing speed. The hardware is typically operated in “video” fashion, where only a few scanlines of data are buffered, to minimize use of expensive data storage hardware. For low speed (lower priced) machines, pure software processing can be used, but mid/high range machines require hardware implementation of computationally intensive image processing operations in order to meet the speed specifications demanded by users.  
         [0005]     With reference again to the U.S. Pat. Nos. 6,580,820 and 6,542,629 patents, the most computationally intensive aspects of the security mark detection technique are the two steps of the micro-detection phase, i.e., connected component extraction and template matching. Furthermore, each of these steps are expensive to implement in hardware, as both require substantial scanline buffering storage (in the case of SC Common Marks, at least D scanlines, where D is the diameter of the circles to be detected). Consequently, in mid/high range machines, in which a pure software solution cannot meet required speed specifications, implementing the micro-detection phase can be expensive.  
         [0006]     In light of these limitations associated with known methods and apparatus, it has been deemed desirable to provide a method and apparatus for the detection of document security marks that combines hardware and software processing in a cost-effective manner while meeting all speed performance specifications.  
       SUMMARY  
       [0007]     In accordance with a first aspect of the present development, a method of digital image processing is defined for a printed document potentially including a security mark defined by a plurality of actual mark constituents each having a known color, size, shape, and run profile, and the actual mark constituents having a select spatial arrangement relative to each other. The method includes: (a) scanning the printed document to obtain digital image data corresponding to the printed document, the digital image data defined in terms of a plurality of color input pixel values; (b) processing the digital image data to identify all portions representing potential mark constituents of a security mark, wherein the processing includes: (i) determining a run profile for features represented in the digital image data; (ii) comparing the run profile for each feature to the known run profile of an actual mark constituent to identify suspect components, wherein only features having the known run profile are identified as suspect components; and, (iii) examining each suspect component to identify any suspect components that are potential mark constituents; (c) for each potential mark constituent represented by the digital image data, determining if the potential mark constituent, together with at least one other potential mark constituent represented by the digital image data, defines a potential security mark; (d) for each potential security mark represented in the digital image data, determining if the potential security mark represents an actual security mark present in the printed document.  
         [0008]     In accordance with another aspect of the present development, a digital image processing method for preventing unauthorized reproduction of a printed document is provided, when the document includes a security mark defined in terms of a plurality of actual mark constituents having a known quantity, a known color, known dimensions, a known run profile, and arranged in a known pattern relative to each other. The method includes scanning the printed document to derive color digital data representing the printed document. The color digital data is defined in terms of a plurality of pixels each having a color value. All pixels of the color digital data having a color value representing a color at least approximating the known color of the plurality of actual mark constituents are identified. A binary map of the color digital data defined in terms of “on” and “off” pixels is constructed, the “on” pixels corresponding to the identified pixels of the color digital data having color values at least approximating the known color of the plurality of actual mark constituents. The binary map is processed to identify all suspect components, wherein a suspect component is an image feature having the known run profile of a security mark. Each suspect component is examined to determine if the suspect component is a potential mark constituent. The binary map is used to identify at least one neighborhood of plural potential mark constituents together defining a potential security mark. The potential security mark is identified as an actual security mark if the potential mark constituents thereof are uniform relative to each other. Effective duplication of the printed document is prevented if an actual security mark is identified.  
         [0009]     In accordance with another aspect of the present development, a document reproduction apparatus includes: means for scanning a printed document to derive color digital image data representative of the printed document; means for identifying all features represented by the digital image data as having a color encompassed by a select color range used to define a security mark in the printed document; means for identifying the features as suspect component features only if the features define a select run profile; means for identifying a suspect component feature as a potential mark constituent if the suspect component feature has both a size and shape corresponding to a known size and shape of an actual mark constituent used to define the security mark in the printed document; means for establishing a neighborhood of a select size about each potential mark constituent; means for identifying as a potential security mark all neighborhoods comprising a number of potential mark constituents greater than or equal to a minimum number of the actual mark constituents required to define a security mark, with the potential mark constituents arranged relative to each other in a manner corresponding to the actual mark constituents defining the security mark in said printed document; means for processing the digital image data of each neighborhood identified as a potential security mark to identify the potential security mark as an actual security mark if the potential mark constituents in the neighborhood are uniform in terms of at least size and color; and, means for preventing effective reproduction of the printed document if the digital image data includes an actual security mark. 
     
    
     BRIEF DESCRIPTION OF DRAWINGS  
       [0010]     The development may take form in various steps and arrangements of steps, and in various components and arrangements of components. The drawings are only for purposes of illustrating preferred embodiments, and it is not intended that they be construed to limit the development in any way.  
         [0011]      FIG. 1  is a block diagram illustrating an image processing system in accordance with the present development;  
         [0012]      FIG. 2A  illustrates a printed document such as a currency note, including a security mark;  
         [0013]      FIGS. 2B and 2C  show enlarged portions of the document illustrated in  FIG. 2A  for purposes of showing the features of the security mark;  
         [0014]      FIG. 3  is a flow-chart illustrating an overall digital image processing method for detecting document security marks in accordance with the present development;  
         [0015]      FIG. 4  is a more detailed flow-chart illustrating a digital image processing method of detecting document security marks in accordance with the present development;  
         [0016]      FIG. 5A  is a flow-chart illustrating the binarization step of a digital image processing method for detection of document security marks in accordance with the present development;  
         [0017]      FIG. 5B  illustrates the binary data (bitmap) resulting from application of the binarization method of  FIG. 5A  to the digital image data obtained from the printed document of  FIG. 2A ;  
         [0018]      FIG. 6A  is a flow-chart illustrating the micro-detection step of a digital image processing method for detecting document security marks in accordance with the present development;  
         [0019]      FIG. 6B  diagrammatically illustrates evaluation of suspect component size in accordance with the present development;  
         [0020]      FIG. 6C  diagrammatically illustrates a suspect component template matching operation in accordance with the present development;  
         [0021]      FIG. 6D  illustrates a run profile analysis used to identify suspect components;  
         [0022]      FIG. 6E  illustrates a finite automaton (finite state machine) useable to perform the run profile analysis;  
         [0023]      FIG. 6F  illustrates the portions of the bitmap of  FIG. 5B  that have been identified as potential constituents of a security mark in the printed document of  FIG. 2A ;  
         [0024]      FIG. 7A  is a flow-chart illustrating a macro-detection operation of a digital image processing method for detecting document security marks in accordance with the present development;  
         [0025]      FIG. 7B  illustrates the portions of the bitmap of  FIG. 5B  that correspond to potential security marks in the printed document of  FIG. 2A ;  
         [0026]      FIG. 8  illustrates a verification operation of a digital imaging method for detecting document security marks in accordance with the present development;  
         [0027]      FIG. 9  is a flow-chart illustrating control of the digital image processing system to prevent effective duplication of a document including a security mark. 
     
    
     DETAILED DESCRIPTION  
       [0028]     A digital image processing system  10  in accordance with the present development is shown in  FIG. 1 . An image input scanner  12  derives and delivers digital image data in the form of one or more monochromatic separations, wherein the picture elements or pixels of each separation are defined at a depth of d bits per pixel where d is an integer. Accordingly, each pixel of each separation is defined in terms of d bits per pixel (bit depth=d), and each pixel has some gray value between full off and full on. Regardless of the depth d at which each pixel is defined, the location of each pixel in each separation bitmap is also defined, typically in terms of a row “n” and a column “m.” When the digital image data is provided in terms of a single monochromatic separation, the image is monochromatic, for example, so called black-and-white image data. On the other hand, when the digital image data is provided in terms of two or more monochromatic separations, a color image results when the data from the separations are combined, e.g., red-green-blue (RGB) separations or cyan-magenta-yellow (CMY) separations.  
         [0029]     The image signals are input from the scanner  12  to an image processing unit  14  wherein digital image processing, such as security mark identification in accordance with the present development, is performed. The image processing unit  14  may be provided by any suitable electronic computing apparatus such as an electronic computer, a dedicated electronic circuit, and/or any other suitable electronic circuit means including the hardware and software processing structures and methods discussed above. The image processing unit  14  outputs data in a suitable format to an image output terminal  16  such as a digital printer and/or visual display.  
         [0030]      FIG. 2A  illustrates a printed currency note including a security mark SM imprinted or otherwise included thereon. The illustrated currency note and security mark are for ease of illustrating the development only, and those of ordinary skill in the art will recognize that the development is equally applicable to any type of document including any suitable security mark thereon. As noted, checks, stock certificates, bonds, and legal documents are some other examples of documents that may include security marks and that may, consequently, be protected from unauthorized reproduction according to the present development. The currency note  20  is printed on paper  22  or other suitable substrate and comprises various markings, such as denomination markings  24 , text  26 , various decorative images and designs  28 , and a security mark SM used to identify the currency note  20  as an authentic document. As illustrated and described herein, the security mark SM is printed in the same or similar manner on the document  20  as the information  24 ,  26 ,  28 , using ink having the color required by the security mark definition.  
         [0031]     With reference now to  FIGS. 2B and 2C , the portion of the currency note  20  including the security mark SM is illustrated and greatly enlarged to show the characteristics of the security mark SM used in the present example. As noted, in practice, the security mark will likely take any one of a wide variety of alternative forms, and the invention is not to be limited to the illustrated or any other particular security mark. In the present example, the security mark SM is defined on the note  20  (according to a definition promulgated by the appropriate authorities) by three identical mark constituents MC (the mark constituents MC are circular in the illustrated example), each having identical size, shape, color and run profile according to the security mark definition. Also, the mark constituents MC are arranged in a select pattern or arrangement as required by the definition of the security mark SM. As illustrated herein, the mark constituents MC are circular and arranged at the vertices of a right triangle. The mark constituents MC are separated from each other by the distances D 1 , D 2 , D 3 , to define the security mark SM further as having a select overall size and shape.  
         [0032]     The apparatus and method in accordance with the present development operate the image processing unit  14  to detect the existence of a security mark SM in a document such as the note  20  scanned by the image input scanner  12  so that the image processing unit  14  can prevent or inhibit unauthorized reproduction of the note  20  or other document being scanned. Those of ordinary skill in the art will also recognize that the subject method and apparatus may be used to determine the authenticity of a document even if no copy of the document is desired.  
         [0033]     With reference now to  FIG. 3 , a preferred digital image processing method for detection of document security marks is illustrated in accordance with the present invention. The security mark detection method as implemented using the digital imaging processing system  10  comprises: S 1 —obtaining a digital input image, typically through use of the image input scanner  12 ; S 2 —binarization of the digital input image; S 3 —micro-detection; S 4 —macro-detection; S 5 —verification; and S 6 —prevention of the effective reproduction of the input document if a security mark is found. The operations S 2  through S 6  are preferably carried out in the image processing unit  14 .  
         [0034]     The operations S 1 -S 6  are illustrated in further detail in  FIG. 4 . The step S 1  comprises scanning a printed document, such as the currency note  20 , using the input image scanner  12  to derive color digital image data in terms of one or more multiple color separations in a suitable color space, e.g., red, green, blue (RGB), or the like. The scanner  12  may derive or deliver the digital image data in terms of any other suitable color space.  
         [0035]     The binarization step S 2  comprises a first sub-step S 2   a  of identifying all pixels in the input digital image as derived by the scanner  12  having, i.e., representing, a color in a select range. A second sub-step S 2   b  constructs a bitmap  30  corresponding to all pixels of the input digital image identified as having a color in the select range.  
         [0036]     The micro-detection operation S 3  comprises sub-steps S 3   a -S 3   c . More particularly, in a step S 3   a , a run profile detection operation is performed on the bitmap  30  derived from the binarization operation S 2  to identify all image features of the bitmap (where a “feature” is a group of spatially neighboring “on” pixels as explained further below) having a run profile corresponding to the known run profile of mark constituent MC. Only the image features identified in step S 3   a  (referred to below as “suspect components”) are further analyzed. In a step S 3   b , suspect components that have a size or shape not corresponding to the known size and shape a mark constituent MC are discarded. Remaining suspect components are identified as potential mark constituents PMC ( FIG. 6F ) in a step S 3   c.    
         [0037]     The remaining aspects of the security mark detection method/apparatus correspond to the method/apparatus disclosed in the aforementioned U.S. Pat. Nos. 6,580,820 and 6,542,629 as described above. In particular, in a macro-detection operation S 4 , neighborhoods of potential mark constituents that are over-populated or under-populated relative to the required number of mark constituents MC that define a security mark SM are disregarded (step S 4   a ). All remaining neighborhoods having potential mark constituents that are not properly spaced from or arranged relative to their neighbor potential mark constituents, as required to define an actual security mark SM, are also disregarded (step S 4   b ), and only those neighborhoods still remaining are identified as potential security marks (step S 4   c ).  
         [0038]     The verification step S 5  is then performed. In particular, all potential security marks are further analyzed for uniformity, e.g., uniformity of color, uniformity of size, and those that are not sufficiently uniform are discarded (step S 5   a ). Any remaining potential security marks are positively identified as actual security marks SM (step S 5   b ). If an actual security mark SM is identified, the image processing unit  14 , in a step S 6 , prevents effective duplication of the document scanned on the image input scanner  12 , e.g., by completely terminating the digital image processing operation, outputting a black or blank printed page, inserting a “VOID” or “COPY” watermark or the like in the output data sent to the image output device  16 , or by otherwise failing to output an exact replica of the input document, such as the currency note  20 .  
         [0039]     The operations S 1 -S 6  will now be described in further detail with reference to the currency note  20  and  FIGS. 5A-9 . In accordance with the operation S 1 , the currency note  20  is scanned to obtain digital image data representing same in a suitable color space, e.g., RGB data. This digital image data is fed to the image processing unit  14  for carrying out the operations S 2 -S 6  in accordance with the present development.  
         [0040]     With reference to  FIGS. 5A and 5B , the binarization operation S 2  comprises constructing a bitmap  30  defined by a plurality of pixels corresponding respectively in location to the plurality of pixels defining the input digital image of the currency note  20 . To construct the bitmap  30 , the color of each pixel defined by the input digital image is examined by the sub-step S 2   a  to identify each pixel having the same color as the known color used to define the actual mark constituents MC. This is typically implemented using a range of color values that approximate the known color used to define the actual mark constituents MC, where any color value that falls within the range is deemed to have the same color as the known color value used to define the actual mark constituents MC. For each pixel of input image data in the proper color range, a sub-step S 2   b - 1  sets the correspondingly located pixel in the bitmap to 1 or “on.” All other pixels in the bitmap are set to 0 or “off” by the sub-step S 2   b - 2  (an initialization sub-step can be used to set all pixels in the bitmap  30  “off” prior to the color-checking sub-step S 2   a  in which case the step S 2   b - 2  can be skipped). Using the binary digits “1” and “0” to represent “on” and “off” conditions corresponds with conventional computer science notation. Of course, the binary digits “0” and “1” may alternatively represent “on” and “off,” respectively, and the invention is not intended to be limited to either notation.  
         [0041]     Those of ordinary skill in the art will also recognize that many different methods exist for determining if a color of a pixel defined by values selected from a particular color space falls within a select color range, i.e., whether the color defined for a pixel in a particular color space is “close enough” to a desired color in accordance with step S 2   a . If the distance of the actual color from the desired color is greater than a color range threshold T, then the actual color is outside of the range and not “close enough” to the desired color. For example, if the pixels of the input digital image representing the currency note  20  are each defined by the actual red, green, and blue values (R,G,B), and if a pixel of a desired color is defined by desired red, green, blue values (R′, G′, B′), then the distance of the color defined by the actual red, green, blue values R,G,B from the desired color defined by the red, green blue values (R′,G′,B′) may be calculated and compared to the threshold T according to: 
 
 T ≧√{square root over (( R−R ′) 2 +( G−G ′) 2 +( B−B ′) 2 )}
 
 Of course, those of ordinary skill in the art will recognize that alternative methods exist for determining whether a color value of a pixel of a digital image is within a select color range. The preferred method will vary depending upon the particular color space by which the pixel is defined. It is not intended that the present application be limited to any particular color comparison method or any particular color space. 
 
         [0042]     Referring now more particularly to  FIG. 5B , the bitmap  30  resulting from binarization S 2  of the input digital image derived by the scanner  12  for the currency note  20  is illustrated. For each pixel of the input digital image derived by the scanner that represents a color in a select color range encompassing the color used to print the security mark SM, the bitmap  30  is defined by a correspondingly located “on” pixel. One or more of these “on” pixels are generally identified at  34  in  FIG. 5B . Likewise, all other pixels defining the bitmap remain or are set to an “off” condition. These “off” pixels are collectively identified at  32  in  FIG. 5B . Accordingly, the bitmap  30  includes or identifies only those pixels from the input digital image that represent a color in the select color range that approximates the known actual color of the constituents MC of the security mark SM.  
         [0043]     The bitmap  30  is further processed according to the micro-detection operation S 3  as illustrated in  FIGS. 6A-6D . A first sub-step S 3   a  identifies all image features that have a known run profile as defined in the bitmap  30 , where the known run profile is the known run profile of the mark constitutes MC of the security mark SM. Each identified image feature having the known run profile is referred to herein as a “suspect component” SC (examples of suspect components SC are shown in  FIG. 5B ). Once each suspect component SC in the bitmap  30  has been identified, each suspect component SC is further examined by sub-steps S 3   b - 1 ,S 3   b - 2  to determine if the suspect component is a potential mark constituent. Referring also now to  FIG. 6B , the sub-step S 3   b - 1  performs a size-checking operation on each suspect component SC to determine if either its column width X or row height Y either exceeds or fails to meet the size of a mark constituent MC. If the suspect component SC under consideration by the sub-step S 3   b - 1  is too large or too small in either dimension, it is bypassed. Preferably, the size checking sub-step S 3   b - 1  compares the width/height dimensions of each suspect component SC to acceptable width/height size ranges rather than a select fixed value to account for printing, scanning, and other minor size variations.  
         [0044]     Each suspect component SC that satisfies the size requirements of the sub-step S 3   b - 1  must also survive a template-matching sub-step S 3   b - 2  wherein the suspect component SC is compared to and must match at least one template of an actual mark constituent MC in order for the suspect component to be deemed a potential mark constituent PMC. This template-matching operation is diagrammatically illustrated in  FIG. 6C . Both of the suspect components SC 1  and SC 2  satisfy the size checking sub-step S 3   b - 1 . Thus, each is then compared to a template  40  including a plurality of cells  42 . Certain cells  42  of the template  40  are target cells  44 , arranged in the shape and size of a mark constituent MC. In order for a connected component SC 1 ,SC 2  to match a template, the template compared with the suspect component, and at least a minimum percentage of the target cells  44  must match or correspond to the pixels  34  defining the suspect component SC 1 ,SC 2 . Again, to account for printing, scanning, and other noise and variations, a perfect template match is typically not required. In  FIG. 6C , the suspect component SC 1  matches the template  40 , while the suspect component SC 2  does not. Accordingly, the sub-step S 3   c  identifies only the suspect component SC 1  (and all other suspect components that satisfy the template-matching operation S 3   b - 2 ) as a potential mark constituent PMC.  FIG. 6F  shows all suspect components SC of the example bitmap  30  that have been identified as potential mark constituents PMC.  
         [0045]     As just noted, the step S 3   a  identifies all features  34  of the bitmap  30  that have a specific “run profile.” A “run profile” is an analysis of each consecutive scanline of an image feature to determine the number of uninterrupted runs of “on” pixels. As a default setting, a run must have at least one “on” pixel to be counted, but more stringent noise filtering settings can be used, e.g., a minimum run length of two or more “on” pixels in order to be counted as a “run.” The run profile detection operation S 3   a  is illustrated with reference to  FIG. 6D  as an example.  FIG. 6D  shows eleven consecutive partial (13 pixel) scanlines S 0 -S 10  of digital image data that define an image feature F 1 . The corresponding run profile RP 1  for the image feature F 1  is also shown and includes lines R 0 -R 10  that correspond respectively to the scanlines S 0 -S 10  of the image feature F 1 . The scanlines S 0  and S 10  have zero runs of “on” pixels and, thus, the corresponding lines R 0  and R 10  show zero “on” pixels. The scanlines S 1  and S 2  and S 8  and S 9  each have only one run of “on” pixels and, thus, the corresponding lines R 1 ,R 2 ,R 8 ,R 9  show one “on” pixel. The scanlines S 3 -S 7  each have two separate runs of “on” pixels and, thus, the corresponding lines R 3 -R 7  show two “on” pixels. The run profile RP 1  thus has the illustrated shape.  
         [0046]     The run profile analysis can be implemented using a variety of different techniques. One suitable technique involves using a finite automaton FA as shown in L  FIG. 6E . The finite automaton FA is set to identify all image features of the bitmap that have a run profile RP 1  as shown, i.e., 0,1,1,2,2,2,2,2,1,1,0, but any other run profile can be detected by altering the rules of the finite automaton as will be well understood by those of ordinary skill in the art. Each scanline S 0 -Sn of the bitmap  30  is processed by overlapping windows W 1 -Wn and each window is associated with a finite automaton FA as shown, to track the contents of the window as the window processes successive scanlines of data. Each window W 1 -Wn has only a single scanline height, but a has width that encompasses N pixels of the bitmap scanline. Also, each window W 1 -Wn is used to examine the same N pixels in each successive scanline, i.e., each window W 1 -Wn processes a column of multiple pixels in a row-by-row fashion.  
         [0047]     Operation of all windows W 1 -Wn and their respective associated finite automatons are described with reference to the window W 1 , and its associated finite automaton FA. The state of the window W 1 /finite automaton FA is initialized to “a” at the beginning of processing. The window W 1  moves from its position in the first scanline S 0  to the same position in the next consecutive scanline S 1 , and so on from scanline to scanline for the entire bitmap  30 , and the pixel contents of the window W 1  are examined at each position. The state for the window W 1 /finite automaton FA remains at the initial “a” level until the window includes pixels with zero runs, at which time the state of the window advances to “b” as shown. The state remains as “b” as the window position progresses from scanline to scanline as long as zero pixel runs are detected in the window. The state advances to “c” if one pixel run is detected in the window and, for any other number of pixel runs detected in the window except zero or one, the state fails and returns to “a”, e.g., if two pixel runs are detected in the window W 1 . The state will advance from “c” to “d” only when the window W 1  includes two pixel runs (assuming no prior failure), and will then advance from “d” to “e” only when one pixel run is again detected in the window and, finally, the state will advance to “f” if zero pixel runs are again detected in the window W 1 . In each case, the state returns to “a” for any change in the window contents other than the change required to advance the state. As such, the state can only advance fully to “f” if the window W 1  encounters a successive group of scanlines S 0 -Sn in the bitmap in which a group of “on” pixels are found that define the run profile RP 1 .  
         [0048]     As noted, the windows W 1 -Wn have a size of 1×N where N is the number of pixels from a scanline S 0 -Sn. The windows W 1 -Wn are sized and centered to overlap to ensure that a mark constituent MC represented in the bitmap  30  will not be improperly analyzed in terms of its run profile by being partially analyzed in one window and partially analyzed in another window and to ensure that a window is not too large so as to contain any neighboring data that would alter the run profile. For example, if the mark constituents MC are known to be circular and have a maximum diameter D and are spaced (edge-to-edge) at least a minimum number of pixels p from each other, the window size N and center-spacing M of the windows can be expressed according to: 
 
 D+M− 1 ≦N≦D−M+ 1+2 p  
 
         [0049]     As noted,  FIG. 6F  shows all potential mark constituents identified in the bitmap  30  using the above methods. Referring now to  FIGS. 7A and 7B , the bitmap  30  is further processed according to the macro-detection operation S 4  in an effort to determine which, if any, of the potential mark constituents PMC, together with other potential mark constituents PMC, defines a potential security mark PSM. As noted with reference to  FIG. 2C , an actual security mark SM is defined by mark constituents MC arranged in a specific pattern and spaced from each other by the distances D 1 ,D 2 ,D 3 .  
         [0050]     Using this information, which is obtained from the definition of the security mark SM, and for each potential mark constituent PMC, the sub-step S 4   a - 1  establishes a neighborhood about the potential mark constituent having a radius equal to or minimally larger than the maximum of the distances D 1 ,D 2 ,D 3 . A sub-step S 4   a - 2  determines the number of potential mark constituents PMC in the neighborhood, including the central or main potential mark constituent about which the neighborhood is established. The sub-step S 4   a - 2  compares the number of potential mark constituents in the neighborhood to the number required to define a security mark. If a neighborhood has too many or too few potential mark constituents compared to the number required to define a security mark (allowing for the possibility that some potential mark constituents are erroneous or noise), a sub-step S 4   a - 3  disregards or bypasses the potential mark constituent about which the neighborhood is based, and another potential mark constituent PMC is examined beginning at the sub-step S 4   a - 1 .  
         [0051]     On the other hand, if the neighborhood established about a potential mark constituent PMC includes the number of potential mark constituents required to define a security mark SM, the neighborhood is further examined by the sub-step S 4   b - 1 . To account for the presence of “noise” potential mark constituents PMC, a neighborhood with one or two extra potential mark constituents relative to the number required to define a security mark SM is deemed to satisfy the sub-step S 4   a - 2  so as to be further processed by the sub-step S 4   b - 1  rather than discarded.  
         [0052]     For neighborhoods having an acceptable number of potential mark constituents PMC, the sub-step S 4   b - 1  determines the distances between each potential mark constituent and its neighbors. The sub-step S 4   b - 1  then compares these distances to the predefined distances D 1 ,D 2 ,D 3  of the security mark SM. The distances between potential mark constituents PMC in a neighborhood must equal or be a superset of the distances D 1 ,D 2 ,D 3  plus or minus a margin of error to account for printing, scanning, or other variations. If not, the sub-step S 4   a - 3  disregards or bypasses the potential mark constituent PMC about which the neighborhood is based, and the next potential mark constituent is examined beginning with the sub-step S 4   a - 1 .  
         [0053]     However, if the distances between potential mark constituents PMC in a neighborhood equal or are a superset of the distances D 1 ,D 2 ,D 3 , a sub-step S 4   b - 2  discards any noise potential mark constituents PMC in the neighborhood and determines the position of the remaining potential mark constituents PMC in the neighborhood relative to each other and compares same to the relative position of the mark constituents MC defining an actual security mark SM. More particularly, the sub-step S 4   b - 2  identifies and then discards noise potential mark constituents PMC from a neighborhood based upon the distances determined by the sub-step S 4   b - 1 . Any potential mark constituents PMC not relevant to the result of obtaining the distances D 1 ,D 2 ,D 3  is deemed to be noise and discarded.  
         [0054]     The sub-step S 4   b - 2  determines the relative positions of the potential mark constituents PMC in a neighborhood, and compares same to the security mark SM using any other wide variety of methods. A preferred method, which operates independent of any rotation or other shift due to scanning variations at the image input scanner  12  is to use the distances as determined by the sub-step S 4   b - 1 . In such case, the potential mark constituents PMC in the neighborhood are examined to determine if the distances separating the potential mark constituents are arranged in the same sequence as the distances D 1 ,D 2 ,D 3  of a security mark SM. Such a method operates independently of the vertical, lateral, or rotational placement of the potential mark constituents PMC in the bitmap  30 . By way of example, two neighborhoods  50 , 52  ( FIG. 6F ) of potential mark constituents PMC satisfy the distance requirements of the sub-step S 4   b - 1 . However, when the sub-step S 4   b - 2  examines the relative positions of the potential mark constituents PMC of each neighborhood  50 , 52 , only the neighborhood  50  satisfies the requirement that the potential mark constituents PMC be positioned relative to each other as illustrated in  FIG. 2C —with the distances D 1 ,D 2 ,D 3  encountered sequentially when the potential mark constituents PMC are examined in a clockwise order. In an alternative embodiment, each potential security mark PSM is matched against a series of security mark templates, wherein the templates are devised so that, if the potential security mark represents an actual security mark, one template will be matched regardless of any rotational shift of the constituents of the potential security mark—i.e., the entire potential security mark will be compared to a template of an actual security mark, wherein the templates encompass every possible rotational arrangement in which the constituents of the potential security mark could define an actual security mark.  
         [0055]     If a neighborhood does not satisfy the sub-step S 4   b - 2 , the sub-step S 4   a - 3  bypasses the potential mark constituent PMC about which the neighborhood is established and another potential mark constituent PMC is processed beginning with the sub-step S 4   a - 1 . On the other hand, if a neighborhood satisfies the sub-step S 4   b - 2 , the sub-step S 4   c  identifies the neighborhood as a potential security mark PSM ( FIG. 7B ), and processing in accordance with the macro-detection operation S 4  continues at S 4   a - 1  for the next potential mark constituent PMC not already part of a potential security mark PSM.  
         [0056]     If the macro-detection operation S 4  results in the identification of any potential security marks PSM, processing continues with a verification operation S 5  in accordance with the present invention as illustrated in  FIG. 8 . Because the binarization S 2 , micro-detection S 3 , and macro-detection S 4  operations all preferably rely upon “ranges” or otherwise allow some variation in connection with the identification of potential mark constituents and potential security marks in terms of color, size, shape, and the like, it is possible that one or more of the potential mark constituents PMC defining a potential security mark PSM are not actual mark constituents MC. Of course, in such case, the potential security mark PSM would not be an actual security mark SM. Thus, to ensure that a potential security mark PSM is an actual security mark SM, the potential security mark is subjected to a verification operation S 5  in accordance with the present development. More particularly, for each potential security mark PSM, a verification sub-step S 5   a - 1  examines the color of each potential mark constituent PMC defining the potential security mark PSM, and determines if the color of each potential mark constituent is sufficiently close to or uniform with the color of the other potential mark constituents PMC defining the potential security mark PSM. It is preferred that the potential mark constituents have a color that is equal or close to each other. For example, if two potential mark constituents PMC have respective colors that fall within the color range used in the binarization color-checking sub-step S 2   a , but the respective colors thereof are found at extreme opposite ends of the acceptable color range, such potential mark constituents will not be deemed to exhibit sufficient color uniformity relative to each other to be actual mark constituents MC. Any potential security marks PSM not satisfying the color uniformity verification sub-step S 5   a - 1  are discarded by the sub-step S 5   c.    
         [0057]     For potential security marks PSM satisfying the color uniformity verification sub-step S 5   a - 1 , a dimensional uniformity verification sub-step S 5   a - 2  examines the potential mark constituents PMC for dimensional uniformity relative to each other. The dimensional uniformity verification sub-step S 5   a - 2  examines the column width and/or row height of each potential mark constituent PMC defining the potential security mark PSM for purposes of ensuring that the dimensions of the potential mark constituents are consistent relative to each other. Again, for example, if one potential mark constituent PMC exhibits dimensional characteristics relative to other potential mark constituents that vary by +/−5%, the potential mark constituent will fail the dimensional uniformity verification sub-step S 5   a - 2 , and the sub-step S 5   c  will discard the relevant potential security mark PSM. If the potential mark constituents PMC defining a potential security mark PSM satisfy the verification operation S 5 , a sub-step S 5 B identifies the potential security mark PSM as an actual security mark SM.  
         [0058]     Subsequent to the verification operation S 5 , a prevention operation S 6  operates to prevent effective reproduction of the document scanned by the image input scanner  12 . A sub-step S 6   a  determines if an actual security mark SM has been identified as present in the document being scanned by the input scanner  12 . If no security mark SM has been found, reproduction of the document is permitted. If, on the other hand, a security mark SM is identified, a prevention sub-step S 6   b  prevents effective duplication of the document scanned by the input scanner  12 . This is accomplished using one or more suitable prevention operations such as disabling the image output device  16 , not sending output data from the image processing unit  14  to the image output device  16 , embedding or otherwise including a message (such as VOID) in the image data sent to the image output device  16  so that the message is visible in the document reproduction, or by any other suitable method that prevents an effective reproduction of the document scanned by the input scanner  12 .  
         [0059]     The development has been described with reference to preferred embodiments. Modifications and alterations will occur to others upon reading and understanding the preceding specification. It is intended that the development be construed as including all such modifications and alterations insofar as they fall within the scope of the appended claims or equivalents thereof.