Reproduction of halftone original with reduced moire
BACKGROUND OF THE INVENTION 
     This invention relates to halftone artwork and, in particular, to a method and apparatus for reproducing such artwork. 
     Halftone artwork is used in many applications. This type of artwork employs halftone dots (i.e., darkened or black dots) to provide an image. In particular, by changing the size of the dots, different gray levels can be produced so as to simulate the grey levels of the image. The halftone dots are typically situated along a screen direction and the dot spatial frequency and period in the screen direction, called the &#34;screen frequency&#34; f SCR  and &#34;screen period&#34; P SCR , are kept constant. 
     In some applications, it is desirable to be able to reproduce halftone artwork. In present day reproduction systems, a scanner typically scans the elemental areas (i.e., &#34;pixels&#34;) of the original halftone artwork in orthogonal first and second directions. The scanner operates in these directions at corresponding first and second spatial scanning frequencies f SCA1 , f SCA2  having associated periods P SCA1 , P SCA2 . These frequencies and, thus, their resultant periods, are usually equal. 
     As a result of this scanning, digital signals are developed corresponding to the gray level values of the orthogonal array of pixels. These digital signals are then thresholded at a threshold gray level value which typically might be at the mid-point of the gray tone range which extends from 255 (black) to 0 (white). This thresholding provides a corresponding set of thresholded or binary gray level values. 
     More particularly, each digital signal representing a gray level equal to or above the threshold gray level value, e.g., above 128, results in a corresponding binary signal indicative of a first gray level value, typically a 255 (black) gray level value. Each digital signal representing a gray level value less than the 128 threshold, in turn, results in a corresponding binary signal indicative of a second gray level value, typically a 0 (white) gray level value. The resultant set of binary signals are then used to control a printer. The latter generates reproduction pixels corresponding to the signals and, therefore, to the scanned array of pixels of the original halftone. The printer prints in the orthogonal first and second directions at respective spatial print frequencies f PRI1 , f PRI2  having corresponding print periods P PRI1 , P PRI2 . Again, these frequencies and thus their respective periods are usually equal. 
     More specifically, the printer darkens each reproduction pixel whose corresponding binary signal is indicative of a 255 (black) gray level value and leaves blank or undarkened each reproduction pixel whose corresponding binary signal is indicative of a 0 (white) gray level value. These black and white reproduction pixels then combine to produce the reproduction of the halftone original. 
     While the above method results in reproducing the halftone original with some degree of success, it has been found to generate so called &#34;Moire patterns&#34; in the reproduction. These patterns represent beat patterns of the screen and scan frequencies and are undesirable in most applications. 
     Accordingly, research efforts have been underway to develop practices for reproducing halftone originals which generate little or no Moire patterns in the reproduction. Copending patent application Ser. No. 241,073, assigned to the same assignee hereof, discloses one such reproduction method. In the case of the method of &#39;073 application, the scanning frequency of the system scanner is selected to have a preselected relationship with respect to the screen frequency of the original. Additionally, an adaptive threshold processing technique is utilized in developing the thresholded binary gray level signals from the gray level digital signals of the scanned pixels. 
     This processing makes use of a scanning window which enables processing of sub-arrays of the pixel digital signals. The size of the scanning window is appropriately selected to be equal to the screen period translated to the scanning direction. Moreover, the processing is such that the average gray levels of the resultant binary signals associated with a given sub-array of pixels is equal to the average gray level of the corresponding digital signals over the sub-array. 
     The method of the &#39;073 application has been found to provide a significant reduction in the Moire patterns evidenced in the reproduction. However, efforts are still underway to develop other alternative methods which can also provide reproduction of halftone originals with reduced Moire. 
     It is, therefore, an object of the present invention to provide a method and apparatus for reproducing halftone originals having a reduced amount of Moire patterns. 
     SUMMARY OF THE INVENTION 
     In accordance with the principles of the present invention, the above and other objectives are realized in a practice in which the thresholded gray level values of the array of scanned pixels are utilized to determine in the first direction of the array, pairs of adjacent pixels whose thresholded gray level values differ. For each determined pair of adjacent pixels, an approximate edge error to the closest edge of the adjacent halftone dot is determined. Specifically, the edge error is determined by the expression d 1  /P SCA1 , where d 1  is the distance along the first direction between the center of the pixel of the pair whose thresholded gray level value is the first gray level value and the aforesaid closest edge of the adjacent halftone dot. 
     These edge errors are then utilized in the further processing of the thresholded gray level values of the array. This further processing is via a two dimensional processing window which defines sub-arrays of pixels whose thresholded gray level values are to be processed. For each sub-array, such processing comprises adding the edge errors of the determined adjacent pairs of pixels included in the sub-array to form a sum S 1 . Then, starting with the pairs of pixels having the highest edge error and continuing with pairs in descending order of edge error, the pixel of each pair having the second thresholded gray value has the latter changed to the first thresholded value. This continues for M pixels, where M is the closest integer to the sum S 1 . 
     Once the aforesaid processing is complete for all sub-arrays, the resultant thresholded gray level value signals are then used in usual manner to address a printer which darkens reproduction pixels corresponding to the first thresholded gray level values and leaves blank reproduction pixels corresponding to the second thresholded gray level values. The resultant reproduction is found to provide a good approximation of the halftone original with little or no Moire in the first direction. 
     In the embodiment of the invention to be disclosed hereinafter, the method of the invention is extended to reduce Moire patterns in the second direction by repeating the method in that direction. Thus, further adjacent pairs of pixels in the second direction are determined, edge errors are developed for the further adjacent pairs of pixels and a window is used to process the thresholded gray level values of sub-arrays of pixels using the further pairs of pixels and edge errors following the processing procedure followed for the first direction. 
     Once this additional second direction processing is completed, the resultant thresholded gray level values are then utilized to form the reproduction. With this additional processing Moire is substantially eliminated in both the first and second directions of the reproduction. 
     Also disclosed are expressions for calculated the approximate edge error for the pairs of pixels. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The above and other features and aspects of the present invention will become more apparent upon reading the following detailed description in conjunction with the accompanying drawings, in which: 
     FIG. 1 shows a reproduction system designed in accordance with the principles of the present invention; and 
     FIGS. 2 and 3 show pairs of pixels of a halftone original being reproduced by the system of FIG. 1. 
    
    
     Detailed Description 
     FIG. 1 shows a reproduction system in accordance with the principles of the present invention. The system 1 is to reproduce a halftone original 2 having extent in the x and y directions and whose image is formed by halftone dots 2A. The dots 2A are aligned along a screen direction S which, in the present case, it at a 45° angle to the x,y directions. Moreover, the dots 2A have a spatial frequency f SCR  and a corresponding period P SCR  in the direction S. 
     A scanner 3 scans elemental areas or pixels p of the original 2 in the orthogonal x and y directions at spatial scanning frequencies f SCAx , f SCAy  having associated periods (i.e., pixel center-to-center spacings) P SCAx , P SCAy . In the present illustrate case, the frequencies f SCAx  and f SCAy  are assumed to be equal and can be represented by the frequency f SCA . The periods P SCAx  and P SCAy  are thus also equal and given by P SCA . 
     The scanned pixels p represent an array of pixels in the x and y direction. Accordingly, the elements of the pixel array can be represented by p(i,j), where i and j are integers which identify the pixel positions in the array. The corresponding x and y positions of the pixels are given by ##EQU1## 
     As a result of the scanning by the scanner 3, a signal G i  (i,j) is developed for each pixel p(i,j) corresponding to the gray level value of the pixel. The signals G i  (i,j) may typically be 8 bit digital signals to accommodate gray levels over the entire gray level range of 0 (white) to 255 (black). 
     The digital gray level signals G i  (i,j) are then introduced into a signal processor 4 where they first undergo threshold processing in a threshold processor 4a. The latter processor develops binary gray level signals G b  (i,j) in response to the digital input signals G i  (i,j). Each signal G b  (i,j) is thus a 1 bit signal and corresponds to an associated pixel p(i,j). 
     More particularly, for each input signal G i  (i,j) indicative of gray level equal to above the threshold G TH , the threshold processor 4 a  generates a first digital signal (e.g., a &#34;1&#34; level signal) indicative of a first gray level value. For each input signal G i  (i,j) which is below the threshold, the processor 4a generates a second digital signal (e.g., a &#34;0&#34; level signal) indicative of a second gray level value. In the present illustrative case, the threshold value G TH  is assumed to be at the gray level value of 128 and the first and second gray level values at 255 (black) and 0 (white), respectively. 
     The binary signals G b  (i,j) are further processed in a Moire reduction processor 4b to develop a processed set of binary signals G b  &#39; (i, j). As can be appreciated and as will be more fully discussed below, the processing by the processor 4b  causes modification of the signals G b  (i,j) which are associated with pixels p(i,j) bordering the halftone dots 2A. This results in the modified digital signals G b  &#39; (i, j) which when used to generate the reproduction 6 result in little or no Moire patterns being evidenced in the reproduction. 
     The processed signals G&#39;  b  (i,j) are fed to a printer 5 which addresses the reproduction 6 at reproduction pixels r(i,j) along the x and y directions. The printer 5 operates in these directions at spatial frequencies f PRIx , f PRIy  having associated spatial periods P PRIx , P PRIy . In the present case, the frequencies f PRIx  and f PRIy  are assumed to be equal and are given as f PRI . The periods P PRIx  and P PRIy  are, therefore, also equal and given as P PRI . 
     At each of the reproduction pixels r(i,j), the printer 5 either darkens the pixel area or leaves in undarkened, depending upon the gray level value of associated binary signal G&#39;  b  (i,j). For signals G&#39;  b  (i,j) which are at a &#34;1&#34; level indicative of a 255 (black) gray level, the reproduction pixels r(i,j) are darkened. For signals G b  &#39; (i,j) which are at a &#34;0&#34; level indicative of a 0 (white) gray level, on the other hand, the reproduction pixels r(i,j) are left blank. 
     Accordingly, the printing operation of the printer 5 results in an array of darkened and undarkened areas at the reproduction pixels r(i,j) which correspond to the pixels p(i,j) of the original. These reproduction pixels, in turn, combine to approximate the halftone dots of the original and, therefore, to create the desired halftone reproduction 6. As indicated above, as a result of the processing which occurs in the processor 4b, the reproduction 6 developed from the binary signals G&#39;  b  (i,j) is found to be substantially free of Moire patterns. 
     Turning now to the operation of the the processor 4b, the processor is configured to process the binary signals G b  (i,j) first in one of the x,y directions and then, if desired, in the other of these directions. In the present illustration case, x direction processing is first carried out. 
     More particularly, in processing the G b  (i,j) signals in the x direction, the processor 4b initially determines from the array of signals, each adjacent pair of pixels A x , B x  in the x direction whose corresponding signals G b  (i,j) differ. These pixel pairs occur at the edges of the halftone dots 2A as illustrated in FIG. 2. In the present case, the A x  pixel is the pixel in a pair whose corresponding G b  (i,j) value is a &#34;1&#34; indicative of a 255 gray level, while the B x  pixel is the pixel in a pair whose corresponding G b  (i,j) value is a &#34;0&#34; indicative of a 0 gray level. 
     As the illustration in FIG. 2 shows, the size of the halftone dot 2A is considerably larger than that of the pixels p(i,j) so that when a pixel is centered on the edge of the halftone, the scanner 3 registers a gray level value G i  (i,j) of about 128. Pixels whose centers are off the edge toward halftone dot center, in turn, result in gray levels G i  (i,j) greater than 128, while pixels whose centers are off the edge away from the halftone dot center register gray level signals G i  (i,j) of less than 128. In FIG. 2, the leftmost pixel thus has a gray level value less than 128 and a corresponding G b  (i,j) signal whose value is &#34;0&#34;. It is therefore a B x  pixel. Its adjacent pixel, in turn, has a corresponding G b  (i,j) signal whose value is &#34;1&#34; and, hence, is an A x  pixel. In the next pair of x adjacent pixels shown in FIG. 3, the leftmost pixel has a G b  (i,j) signal whose value is &#34;1&#34; and it is, therefore, an A x  pixel, while its adjacent pixel has a G b  (i,j) value of &#34;0&#34; and is a B x  pixel. 
     Once the pairs of pixels A x , B x  have been determined, the processor 4b then determines an edge error e 1  for each pair. The edge error e 1  is the relative distance of the A x  pixel in each pair from the closest edge of the corresponding halftone dot. Thus, e 1  is given as 
     
         e.sub.1 =d.sub.1 /P.sub.SCA                                (1) 
    
     The value d 1 , in turn, can be estimated based on the scanned gray level values G i  (i,j) of the A x  and B x  pixels and on the threshold value G TH  as follows: 
     
         d.sub.1 =P.sub.SCA.[1-(G.sub.TH -G.sub.B)/(G.sub.A -G.sub.B)](2) 
    
     The relative error e 1 , therefor, becomes 
     
         e.sub.1 =1-(G.sub.TH -G.sub.B)/(G.sub.A -G.sub.B)          (3) 
    
     which for the present case of G TH  equal to 128 is 
     
         e.sub.1 =1-(128-G.sub.B)/(G.sub.A -G.sub.B)                (4) 
    
     Having determined the edge errors e 1  for the x direction pixel pairs A x , B x , the processor 4 b  then processes the binary signals G b  (i,j) based on these values. This processing is accomplished utilizing a processing window W to define sub-arrays of pixels whose corresponding G b  (i,j) signals are to be processed. 
     The processing window W is shown in FIG. 1 and is selected to have x and y dimensions W x , W y . These dimensions are based on the halftone dot spacing or period P SCR  and are equal to the latter translated to the respective x and y directions. In the present case, since the screen direction S is at 45° to the x,y directions, W x  and W y  are the same and equal to √2 P SCR . With the dimensions of the processing window W so selected, the window will encompasses at least the equiavlent of two halftone dots as can be seen in FIG. 1. 
     Once the processing window is positioned by the processor 4b to define a given sub-array of pixels, the processor then adds the edge errors e 1  of each pair of adjacent pixels A x , B x  included in the sub-array to develop a sum S 1 . The processor 4b then proceeds to process the digital signals G b  (i,j) associated with these pixel pairs. It does so by starting with the digital signal G b  (i,j) of the pixel pair A x , B x  with highest edge error and then continues with the digital signals G b  (i,j) of pixel pairs A x , B x  in the order of pairs having descending or decreasing edge error. Specifically, the processor processes the binary signals G b  (i,j) of of each pair of pixels A x , B x  by changing the G b  (i,j) signal of the A x  pixel from a &#34;0&#34; to a &#34;1&#34; value so that the pixel becomes indicative of a 255 (black) gray level instead of a 0 (white) gray level. 
     The processor 4b continues the aforesaid processing until the binary signals G b  (i,j) of M pixels have been changed where M is the closest integer to the sum S 1 . At this time, the processing of the sub-array in the window W is complete and the processor 4b then moves the window W by the width of the window to encompass further sub-arrays of pixels. At these sub-arrays, the digital signals G b  (i,j) of the A x , B x  pairs of pixels in the sub-array are processed similarly as in the first array. This continues until the entire array of pixels p(i,j) have been processed. 
     The resultant processed signals from the aforesaid processing represent the binary signals G b  &#39; (i,j), if only x direction processing is to be carried out. However, as indicated above, it is preferable to follow the aforesaid x direction processing with y direction processing of the G b  (i,j) signals, after the signals have been changed or modified by the x direction processing. The y direction processing is exactly the same as the x direction processing, except that, in this case, pairs of adjacent pixels A y , B y  in the y direction, as shown in FIGS. 2 and 3 having different digital signals G b  (i,j) are determined and processed exactly as was done for the A x , B x  pixel pairs. 
     When the x direction processing is followed by the aforesaid y direction processing, the result of this combined processing is the binary signals G b  &#39;(i,j). These signals, as above-described, cause the printer 5 to print the reproduction 6 in such a way that the reproduction evidences little or no Moire patterns in the x and y directions. 
     In all cases, it is understood that the above-identified arrangements are merely illustrative of the many possible specific embodiments which represent applications of the present invention. Numerous and varied other arrangements can readily be devised in accordance with the principles of the present invention without departing from the spirit and scope of the invention.