Abstract:
An image processing apparatus receives n-bit image data, carries out an α-bit bit extension, and outputs (n+α)-bit image data, where n and α are positive integers. The apparatus also performs an epsilon filtering operation that uses the additional gray levels provided by the bit extension to smooth out false edges caused by the bit extension without smoothing out real edges. The output image preserves both the smoothness of regions of gradual change and the sharpness of abrupt changes in the input image.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    The present invention relates to an image processing apparatus, an image processing method, and an image display apparatus. In particular, it relates to methods of reducing the occurrence of false edges in a digital image by gray scale interpolation when the gray scale of a digital image is expanded by bit extension. 
         [0003]    2. Description of the Related Art 
         [0004]    In recent years, the brightness of the display screens of television sets and monitors has been increasing. As brightness increases, the amount of change in brightness per gray level in the gray scale increases. Ten-bit liquid crystal panels and other display devices with high gray-scale resolution are being developed, but digital television broadcasting uses an eight-bit gray scale, so despite the ten-bit resolution of the latest display devices, the effective resolution of the gray scale in a television picture remains eight bits. Not only does this prevent full utilization of the features of these new display devices; picture signals that should grade smoothly in color or brightness, such as pictures of a sunset or the surface of the sea, may instead grade in a staircase pattern, skipping one or more intermediate gray levels at each step and thereby producing visible false edges. 
         [0005]    When only one level is skipped, the false edge can be eliminated by an averaging process. To deal with jumps between two gray levels that differ by N levels, where N is any integer greater than one, Japanese Patent Application Publication No. 10-84481 (Paras. 0002 to 0006 and 0025 to 0028, FIGS. 1 and 2) defines an interpolation region around the jump, separates the interpolation region into (N+1) discrete subregions, and assigns sequential gray levels to the subregions. 
         [0006]    A general problem of such methods is that they fail to distinguish between true image edges and false edges caused by bit extension. If used to smooth out false edges, these methods also smooth out real edges, leading to a loss of sharpness, as if the picture were slightly out of focus. 
       SUMMARY OF THE INVENTION 
       [0007]    An object of the present invention is to provide an image processing apparatus that eliminates false edges due to bit extension of image data without impairing the sharpness of real edges. 
         [0008]    The invention provides an image processing apparatus comprising a bit extender and an edge-preserving smoothing filter. The bit extender receives n-bit image data, carries out an α-bit bit extension, and outputs resulting basic (n+α)-bit image data, where n and α are positive integers. The edge-preserving smoothing filter smoothes the basic (n+α)-bit image data by using the additional gray levels provided by the bit extension. The edge-preserving smoothing filter may be an epsilon filter with a threshold value ε equal to 2 α . Such a filter smoothes out jumps of 2 α  gray levels caused by the bit extension without smoothing out larger jumps, thereby eliminating false edges from regions of gradual change while preserving the sharpness of real edges. 
         [0009]    The bit extender and the edge-preserving smoothing filter may be combined into a bit-extending edge-preserving smoothing filter. 
         [0010]    The invention also provides an image display apparatus including the above image processing apparatus. One example is a television receiver that receives an eight-bit digital broadcast picture signal and displays a smooth, vivid, and sharp picture on a ten-bit display unit. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0011]    In the attached drawings: 
           [0012]      FIG. 1  is a block diagram illustrating the structure of the image display apparatus in a first embodiment of the present invention; 
           [0013]      FIG. 2  is a graph illustrating the function f(u) in equation (1); 
           [0014]      FIGS. 3A to 3C  are graphs illustrating the operations of the epsilon filter; 
           [0015]      FIG. 4  is a block diagram illustrating the structure of the image display apparatus in the first embodiment when n-bit image data are extended to (n+2)-bit image data; 
           [0016]      FIGS. 5A and 5B  are graphs illustrating the operation of the receiver in the first embodiment; 
           [0017]      FIGS. 6A and 6B  are graphs illustrating the operation of the bit extender in the first embodiment; 
           [0018]      FIG. 7  illustrates an exemplary structure of the data storage unit in the first embodiment; 
           [0019]      FIG. 8  is a graph illustrating the output of the data storage unit in the first embodiment; 
           [0020]      FIG. 9  is a table summarizing the data generated by the four difference calculators, the four epsilon decision units, and the conditional weighted averager in  FIG. 4 ; 
           [0021]      FIGS. 10A and 10B  are graphs illustrating the operation of the four epsilon decision units and the conditional weighted averager in  FIG. 4 ; 
           [0022]      FIG. 11  is a graph showing the weighted average value EM corresponding to the image data DM; 
           [0023]      FIGS. 12A to 12C  are graphs illustrating the operation of the data adder in the first embodiment; 
           [0024]      FIGS. 13A to 13E  are graphs illustrating operations when a signal with a large abrupt change in gray level is input to the image display apparatus in the first embodiment; 
           [0025]      FIG. 14  is a table showing data generated by the four difference calculators, the four epsilon decision units, and the conditional weighted averager in the first embodiment; 
           [0026]      FIG. 15  is a block diagram illustrating the structure of the image display apparatus in the first embodiment when m equals three; 
           [0027]      FIGS. 16A to 16E  are graphs illustrating the operation of the image display apparatus in  FIG. 15 ; 
           [0028]      FIG. 17  is a table showing data generated by the three difference calculators, the three epsilon-decision units, and the conditional weighted averager in  FIG. 15 ; 
           [0029]      FIG. 18  is a block diagram illustrating the structure of the image display apparatus in the first embodiment when m equals eight; 
           [0030]      FIGS. 19A to 19E  are graphs illustrating the operation of the image display apparatus in  FIG. 18 ; 
           [0031]      FIG. 20  is a table showing data generated by the eight difference calculators, the eight epsilon-decision units, and the conditional weighted averager in  FIG. 18 ; 
           [0032]      FIG. 21  is a flowchart illustrating the processing carried out by the image display apparatus in the first embodiment; 
           [0033]      FIG. 22  is a block diagram illustrating another exemplary structure of the image display apparatus in the first embodiment; 
           [0034]      FIG. 23  is a block diagram illustrating the structure of the image display apparatus in the second embodiment; 
           [0035]      FIG. 24  is a block diagram illustrating the structure of the image display apparatus in the second embodiment when n-bit image data are extended to (n+2)-bit image data; 
           [0036]      FIGS. 25A and 25B  illustrate the operation of the bit extender in the second embodiment; 
           [0037]      FIGS. 26A and 26B  illustrate the structure of the data storage unit in the second embodiment; 
           [0038]      FIG. 27  illustrates the output of the data storage unit in the second embodiment; 
           [0039]      FIG. 28  illustrates the weighted average values EM corresponding to the image data DM in  FIG. 23 ; 
           [0040]      FIG. 29  illustrates the operation of the data adder in the second embodiment; 
           [0041]      FIG. 30A  and  FIG. 30B  illustrate the operation of the bit extender in the second embodiment; 
           [0042]      FIG. 31  illustrates the output of the bit extender in the second embodiment; 
           [0043]      FIG. 32  illustrates the weighted average values EM corresponding to the image data DM in  FIG. 23 ; 
           [0044]      FIG. 33  illustrates the operation of the data adder in the second embodiment; 
           [0045]      FIG. 34  is a flowchart illustrating the processing steps carried out by the image display apparatus in the second embodiment; 
           [0046]      FIG. 35  is a block diagram illustrating another exemplary structure of the image display apparatus in the second embodiment; 
           [0047]      FIG. 36  is a block diagram illustrating the structure of the image display apparatus in the third embodiment; 
           [0048]      FIG. 37  is a block diagram illustrating an exemplary structure of the one-dimensional v-order vertical epsilon filter in  FIG. 36 ; 
           [0049]      FIG. 38  is a block diagram illustrating an exemplary structure of the one-dimensional h-order horizontal epsilon filter in  FIG. 36 ; 
           [0050]      FIG. 39  is a block diagram illustrating the structure of the image display apparatus in the third embodiment when n-bit image data are expanded to (n+2)-bit image data; 
           [0051]      FIG. 40  is a block diagram illustrating an exemplary structure of the one-dimensional v-order vertical epsilon filter in  FIG. 39 ; 
           [0052]      FIG. 41  is a block diagram illustrating an exemplary structure of the one-dimensional h-order horizontal epsilon filter in  FIG. 39 ; 
           [0053]      FIGS. 42A and 42B  illustrate the operation of the bit extender in the third embodiment; 
           [0054]      FIGS. 43A and 43B  illustrate the structure of the vertical data storage unit in  FIG. 40 ; 
           [0055]      FIG. 44  illustrates the output of the vertical data storage unit in  FIG. 40 ; 
           [0056]      FIG. 45  is a table summarizing the data generated by the four vertical difference calculators, the four vertical epsilon-decision units, and the vertical conditional weighted averager in  FIG. 40 ; 
           [0057]      FIG. 46  illustrates the weighted average data VEM corresponding to the image data VDM; 
           [0058]      FIG. 47  illustrates the operation of the horizontal data adder in  FIG. 41 ; 
           [0059]      FIG. 48  illustrates the operation of the basic data storage unit in  FIG. 41 ; 
           [0060]      FIG. 49  is a table summarizing the data generated by the four basic data difference calculators and the four horizontal epsilon-decision units in  FIG. 41 ; 
           [0061]      FIG. 50  illustrates the operation of the horizontal data storage unit in  FIG. 41 ; 
           [0062]      FIG. 51  is a table summarizing the data HDM output by the horizontal data storage unit, the decision data HEE output by the four horizontal epsilon-decision units, and the corresponding data generated by the four basic data difference calculators and the horizontal conditional weighted averager in  FIG. 41 ; 
           [0063]      FIG. 52  illustrates the weighted average value HEM corresponding to the image data HDM; 
           [0064]      FIG. 53  illustrates the operation of the horizontal data adder in  FIG. 41 ; 
           [0065]      FIG. 54  is a flowchart illustrating the processing steps carried out by the image display apparatus in the third embodiment; 
           [0066]      FIG. 55  is a block diagram illustrating another exemplary structure of the image display apparatus in the third embodiment; and 
           [0067]      FIG. 56  is a block diagram illustrating an exemplary structure of the bit-extending one-dimensional v-order vertical epsilon filter in  FIG. 55 . 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0068]    Embodiments of the invention will now be described with reference to the attached drawings, in which like elements are indicated by like reference characters. 
       First Embodiment 
       [0069]    Referring to  FIG. 1 , the image display apparatus in the first embodiment of the invention comprises an input terminal  1 , a receiver  2 , a gray scale expansion processor  3 , and a display unit  4 . The receiver  2  and gray scale expansion processor  3  constitute the image processing apparatus. 
         [0070]    In this embodiment, the receiver  2  will be described as an analog-to-digital converter for converting an analog image signal to n-bit digital image data, but this is not a restriction; the receiver  2  may include a tuner, in which a composite signal may be demodulated into luminance and chrominance signals and then converted to digital image data, or the receiver  2  may be a digital interface that receives digital data through the input terminal  1  and outputs n-bit image data DI. 
         [0071]    An analog image signal SA is input from the input terminal  1  to the receiver  2 , converted to n-bit image data DI, and output to the gray scale expansion processor  3 . The gray scale expansion processor  3  converts the n-bit image data to (n+α)-bit data, filters the data, and outputs the filtered data to the display unit  4 . The gray scale expansion processor  3  includes a bit extender  5  and a one-dimensional m-order epsilon filter (ε-filter)  6 . The bit extender  5  outputs (n+α)-bit image data obtained by extending the n-bit image data DI by a bits to the one-dimensional m-order epsilon filter  6 . 
         [0072]    The image data DS (and image data DI) represent the values of pixels arranged in a matrix; pixel position is represented by a pair of coordinates (i, j) with the origin (0, 0) at the upper left corner of the display; the value of increases in the horizontal direction in steps of one per column to the right; the value of j increases in the vertical direction in steps of one per one row downward. The image data DS thus represent a row-column matrix of data representing the values of the pixels aligned from top to bottom and from left to right on the display screen. 
         [0073]    The conversion of the image signal SA to the image data DI in the receiver  2 , the supplying of image data DI from the receiver  2  to the bit extender  5 , the bit extension in the bit extender  5 , the supply of the image data D from the bit extender  5  to the one-dimensional m-order epsilon filter  6 , and the operation of the one-dimensional m-order epsilon filter  6  are synchronized with a pixel clock signal supplied by a control unit (not shown). 
         [0074]    The one-dimensional m-order epsilon filter  6  is an edge-preserving smoothing filter that processes pixels aligned one-dimensionally so as to preserve large abrupt changes (edges) while smoothing out small abrupt changes as if they were noise. The one-dimensional m-order epsilon filter  6  in  FIG. 1  includes a data storage unit  7 , a plurality of difference calculators (DIF CALC)  8 - 1  to  8 - m , a plurality of epsilon decision (ε-DCSN) units  9 - 1  to  9 - m , a conditional weighted averager  10 , and a data adder  11 . The one-dimensional m-order epsilon filter  6  eliminates gray scale jumps in the expanded gray scale produced by the bit extender  5 , thereby increasing the number of effective gray scale levels in the output image data DO. 
         [0075]    The image data DO are output to the display unit  4 , which is capable of displaying (n+α)-bit image data. 
         [0076]    The epsilon filter is a known device described in, for example,  Hisenkei dijitaru shingo shori  (Non-linear signal processing) by Hinamoto et al., Asakura shoten, 1999, pp. 106-107 (in Japanese). 
         [0077]    The one-dimensional processing by the epsilon filter is represented by equation (1), where x(i) indicates an input gray level, y(i) indicates an output gray level, a k  is a coefficient, k indicates pixel position relative to the pixel of interest, and ε is a threshold value. 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       y 
                        
                       
                         ( 
                         i 
                         ) 
                       
                     
                     = 
                     
                       
                         x 
                          
                         
                           ( 
                           i 
                           ) 
                         
                       
                       + 
                       
                         
                           ∑ 
                           
                             k 
                             = 
                             
                               
                                 
                                   - 
                                   m 
                                 
                                 / 
                                 2 
                               
                               + 
                               1 
                             
                           
                           
                             m 
                             / 
                             2 
                           
                         
                          
                         
                             
                         
                          
                         
                           
                             a 
                             k 
                           
                            
                           f 
                            
                           
                             { 
                             
                               
                                 x 
                                  
                                 
                                   ( 
                                   
                                     i 
                                     - 
                                     k 
                                   
                                   ) 
                                 
                               
                               - 
                               
                                 x 
                                  
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                             
                             } 
                           
                         
                       
                     
                   
                    
                   
                     
 
                   
                    
                   
                     
                       f 
                        
                       
                         ( 
                         u 
                         ) 
                       
                     
                     = 
                     
                       { 
                       
                         
                           
                             u 
                           
                           
                             
                               ( 
                               
                                 u 
                                 ≤ 
                                 ɛ 
                               
                               ) 
                             
                           
                         
                         
                           
                             0 
                           
                           
                             
                               ( 
                               
                                 u 
                                 &gt; 
                                 ɛ 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0078]    The function f(u) in equation (1) is represented by the graph in  FIG. 2 . When the absolute value of u is equal to or less than the threshold value ε, f(u) equals u (f(u)=u); when the absolute value of u is greater than the threshold value ε, f(u) equals zero (f(u)=0). 
         [0079]    In the example above, u is equal to x(i−k)−x(i), that is, the difference between the gray level x(i) at pixel position i and the gray level x(i−k) at a pixel position (i−k) near pixel position i. When the difference x(i−k)−x(i) is small, f(u)=f{x(i−k)−x(i)} is the identity function, and if the sum of the coefficients a k  is unity, equation (1) can be replaced with equation (2), which is the equation of a weighted-average filter. 
         [0000]    
       
         
           
             
               
                 
                   
                     y 
                      
                     
                       ( 
                       i 
                       ) 
                     
                   
                   = 
                   
                     
                       ∑ 
                       
                         k 
                         = 
                         
                           
                             
                               - 
                               m 
                             
                             / 
                             2 
                           
                           + 
                           1 
                         
                       
                       
                         m 
                         / 
                         2 
                       
                     
                      
                     
                         
                     
                      
                     
                       
                         a 
                         k 
                       
                        
                       
                         x 
                          
                         
                           ( 
                           
                             i 
                             - 
                             k 
                           
                           ) 
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
         [0080]    When the sum of the coefficients a k  is unity, equation (1) can also be rewritten as equation (3). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         
                           y 
                            
                           
                             ( 
                             i 
                             ) 
                           
                         
                         = 
                           
                          
                         
                           
                             ∑ 
                             
                               k 
                               = 
                               
                                 
                                   
                                     - 
                                     m 
                                   
                                   / 
                                   2 
                                 
                                 + 
                                 1 
                               
                             
                             
                               m 
                               / 
                               2 
                             
                           
                            
                           
                               
                           
                            
                           
                             
                               a 
                               k 
                             
                             [ 
                             
                               
                                 x 
                                  
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                               + 
                               
                                 f 
                                  
                                 
                                   { 
                                   
                                     
                                       x 
                                        
                                       
                                         ( 
                                         
                                           i 
                                           - 
                                           k 
                                         
                                         ) 
                                       
                                     
                                     - 
                                     
                                       x 
                                        
                                       
                                         ( 
                                         i 
                                         ) 
                                       
                                     
                                   
                                   } 
                                 
                               
                             
                             ] 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             ∑ 
                             
                               k 
                               = 
                               
                                 
                                   
                                     - 
                                     m 
                                   
                                   / 
                                   2 
                                 
                                 + 
                                 1 
                               
                             
                             
                               m 
                               / 
                               2 
                             
                           
                            
                           
                             
                               a 
                               k 
                             
                              
                             
                               
                                 x 
                                 ′ 
                               
                                
                               
                                 ( 
                                 
                                   i 
                                   - 
                                   k 
                                 
                                 ) 
                               
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
         [0081]    The quantity x′(i−k) is defined by the expression in brackets in equation (3). From this expression and  FIG. 2 , when the difference x(i−k)−x(i) is equal to or less than the threshold value ε, x′(i−k) is equal to x(i−k); when the difference x(i−k)−x(i) is greater than the threshold value ε, x′(i−k) is equal to x(i), as in equation (4). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       x 
                       ′ 
                     
                      
                     
                       ( 
                       
                         i 
                         - 
                         k 
                       
                       ) 
                     
                   
                   = 
                   
                     { 
                     
                       
                         
                           
                             x 
                              
                             
                               ( 
                               
                                 i 
                                 - 
                                 k 
                               
                               ) 
                             
                           
                         
                         
                           
                             : 
                             
                               
                                  
                                 
                                   
                                     x 
                                      
                                     
                                       ( 
                                       
                                         i 
                                         - 
                                         k 
                                       
                                       ) 
                                     
                                   
                                   - 
                                   
                                     x 
                                      
                                     
                                       ( 
                                       i 
                                       ) 
                                     
                                   
                                 
                                  
                               
                               ≤ 
                               ɛ 
                             
                           
                         
                       
                       
                         
                           
                             x 
                              
                             
                               ( 
                               i 
                               ) 
                             
                           
                         
                         
                           
                             : 
                             
                               
                                  
                                 
                                   
                                     x 
                                      
                                     
                                       ( 
                                       
                                         i 
                                         - 
                                         k 
                                       
                                       ) 
                                     
                                   
                                   - 
                                   
                                     x 
                                      
                                     
                                       ( 
                                       i 
                                       ) 
                                     
                                   
                                 
                                  
                               
                               &gt; 
                               ɛ 
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   4 
                   ) 
                 
               
             
           
         
       
     
         [0082]    The operation of the epsilon filter will be described with reference to  FIGS. 3A to 3C .  FIG. 3A  illustrates an input signal including a large abrupt change or edge; FIG.  3 B illustrates the operation of the epsilon filter on this input signal at point A;  FIG. 3C  illustrates the operation at point B. The horizontal axis represents pixel position i; the vertical axis represents the gray level of the input x(i). 
         [0083]    When the pixel at point A in  FIG. 3A  is processed, the epsilon filter takes the weighted average of the pixels in a neighborhood surrounding and including point A, first using the function in  FIG. 2  to replace all gray levels that differ from the gray level at point A by more than ±ε with the gray level at point A, as shown in  FIG. 3B . The weighted average therefore excludes the large-amplitude change at the nearby edge, and the value at point A is smoothed without being distorted by the edge. Similarly, when the edge pixel at point B is processed its value changes only slightly, because all values included in the weighted average are within ε of the value at the edge, as shown in  FIG. 3C . Therefore, the sharpness of the edge is not lost. The epsilon filter can accordingly smooth out low-level noise and other minor changes in the data while retaining large abrupt signal changes at edges and similar features. 
         [0084]    In this embodiment, the epsilon filter is designed to treat jumps caused by the bit extension process as noise. That is, when n-bit data are extended to (n+α)-bit data, the threshold value ε is set equal to 2 α . This enables the epsilon filter to increase the number of effective gray levels while retaining abrupt changes at edges and other such points in an image. 
         [0085]    The case in which α equals two (α=2), so that n-bit image data are expanded to (n+2)-bit image data, will now be described with reference to  FIG. 4 . 
         [0086]    In  FIG. 1 , the data input to the difference calculators  8 - 1  to  8 - m  are denoted DM( 1 ) to DM(m), while in  FIG. 4 , the data input to the calculators  8 - 1  to  8 - 4  are denoted DM(l 2 ), DM(l 1 ), DM(c), DM(r 1 ), which are the same as DM( 1 ), DM( 2 ), DM( 3 ), DM( 4 ) when m equals four (m=4). Likewise, the output signals of the difference calculators  8 - 1  to  8 - 4  will be denoted ED(l 2 ), ED(l 1 ), ED(c), ED(r 1 ) and sometimes referred to as ED(l 2 ) to ED(r 1 ), and the output signals of the epsilon decision units  9 - 1  to  9 - 4  will be denoted EE(l 2 ), EE(l 1 ), EE(c), EE(r 1 ), and referred to as EE(l 2 ) to EE(r 1 ). 
         [0087]    The operation of the receiver  2  will be described with reference to  FIGS. 5A and 5B , in which the horizontal axis represents pixel position.  FIG. 5A  illustrates the waveform of the analog image signal SA;  FIG. 5B  illustrates the corresponding values of the digital image data DI. The analog image signal SA shown in  FIG. 5A  is input through the input terminal  1  to the receiver  2 . The receiver  2  converts the analog image signal SA to n-bit image data DI and outputs these data DI to the gray scale expansion processor  3 , more specifically to the bit extender  5 . 
         [0088]    The image signal SA shown in  FIG. 5A  has a gradually rising gray level, but because the quantization resolution is low (n is small), the signal is converted to the two gray levels (Y and Y+1) in the image data DI shown in  FIG. 5B . 
         [0089]      FIG. 6A  shows the gray levels of the n-bit image data DI;  FIG. 6B  shows the gray levels of the (n+2)-bit image data DS. The bit extender  5  carries out a two-bit extension of the n-bit image data DI shown in  FIG. 6A  and outputs the (n+2)-bit image data DS shown in  FIG. 6B  to the one-dimensional m-order epsilon filter  6 . Since a two-bit extension is equivalent to multiplication by four, the gray levels Y and Y+1 of the image data DI in  FIG. 6A  are converted to 4Y and 4(Y+1), respectively. 
         [0090]    The data storage unit  7  in  FIG. 4  is configured as shown in  FIG. 7 , for example, using four cascaded flip-flops FF_ 1  to FF_ 4  that operate in synchronization with the pixel clock. The input image data DS are transferred through the four flip-flops so that a pixel value is held in each of the four flip-flops FF_ 1 , FF_ 2 , FF_ 3 , FF_ 4  for one clock period in turn. As a result, the data for four consecutive input pixels are held simultaneously in and output simultaneously from the four flip-flops FF_ 1  to FF_ 4 . 
         [0091]    More specifically, the data held by-flip-flop FF_ 2  are output as the gray level DM(c) of the pixel of interest c; the data held by flip-flop FF_ 3  are output as the gray level DM(l 1 ) of the pixel l 1  immediately preceding the pixel of interest c, that is, the first adjacent pixel to the left of pixel c (with a difference of one in the horizontal coordinate value i); the data held by flip-flop FF_ 4  are output as the gray level DM(l 2 ) of the pixel l 2  preceding pixel l 1 , that is, the second pixel to the left of the pixel of interest (with a difference of two in the horizontal coordinate value i); the data held by flip-flop FF_ 1  are output as the gray level DM(r 1 ) of the pixel r 1  immediately following the pixel of interest c, that is, the first adjacent pixel to the right of pixel c (with a difference of one in the horizontal coordinate value i). 
         [0092]    The operation of the data storage unit  7  is illustrated in  FIG. 8 , in which the horizontal axis represents pixel position i and the vertical axis represents the gray level of the image data DS input to the data storage unit  7  and the image data DM output from the data storage. In the example shown in the graph, the data storage unit  7  outputs DM(l 2 )=4Y, DM(l 1 )=4Y, DM(c)=4Y, and DM(r 1 )=4Y+4 to the difference calculators  8 - 1  to  8 - 4 . In this way, the data storage unit  7  simultaneously outputs the image data DM(c) of the pixel of interest at pixel position ic together with image data DM(l 2 ), DM(l 1 ), and DM(r 1 ) of pixels positioned near the pixel of interest. 
         [0093]    The first difference calculator  8 - 1  in  FIG. 4  generates the difference ED(l 2 ) between the gray level DM(l 2 ) of pixel l 2  and the gray level DM(c) of the pixel of interest c and outputs the difference data to the first epsilon decision unit  9 - 1  and the conditional weighted averager  10 . Similarly, difference calculators  8 - 2  to  8 - 4  generate difference data ED(l 1 ), ED(c), ED(r 1 ) from the gray levels DM(l 1 ), DM(c), and DM(r 1 ) and output the generated difference data to epsilon decision units  9 - 2  to  9 - 4  and the conditional weighted averager  10 . ED(c) is always zero. ED(l 2 ), ED(l 1 ), and ED(r 1 ) represent the differences in gray level between the pixel of interest and three neighboring pixels. 
         [0094]      FIG. 9  shows the data DM(k) output from the data storage unit  7 , the corresponding difference data ED(k) generated by the difference calculators  8 - 1  to  8 - 4 , the decision data generated by the epsilon decision units  9 - 1  to  9 - 4 , and the value EM generated by the conditional weighted averager  10 , together with the value f{ED(k)} obtained in the operation of the conditional weighted averager  10 . 
         [0095]    The output of the first difference calculator  8 - 1  is: 
         [0000]        ED ( l 2)= DM ( l 2)− DM ( c )=4 Y− 4 Y =0 
         [0000]    The output of the second difference calculator  8 - 2  is: 
         [0000]        ED ( l 1)= DM ( l 1)− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the third difference calculator  8 - 3  is: 
         [0000]        ED ( c )= DM ( c )− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the fourth difference calculator  8 - 4  is: 
         [0000]        ED ( r 1)= DM ( r 1)− DM ( c )=(4 Y+ 4)−4 Y= 4 
         [0096]    The epsilon decision units  9 - 1  to  9 - 4  receive the difference values ED(k), decide whether each value is greater than ε or not, and output the decision results as the decision data EE(k) shown in  FIG. 10A  to the conditional weighted averager  10 . When the difference value ED(k) is greater than ε, the decision value EE(k) is zero (‘0’); when the difference value ED(k) is equal to or less than ε, the decision value EE(k) is one (‘1’). 
         [0097]    The first epsilon decision unit  9 - 1  thus generates ‘0’ output when the difference ED(l 2 ) is greater than ε, and generates ‘1’ output when the difference ED(l 2 ) is equal to or less than the ε. 
         [0098]    Epsilon decision units  9 - 2  to  9 - 4  generate similar decision data EE(l 1 ) to EE(r 1 ) based on the difference data ED(l 1 ) to ED(r 1 ). The generated decision data are supplied to the conditional weighted averager  10 . In this example, since a equals two (α=2), the threshold value ε is set to four (ε=4). 
         [0099]    In the example shown in  FIG. 9 , zero (0) is input to epsilon decision units  9 - 1 ,  9 - 2 , and  9 - 3  as difference data ED(l 2 ), ED(l 1 ), and ED(c); four (4) is input to the second epsilon decision unit  9 - 4  as difference data ED(r 1 ). The difference data ED(l 2 ) to ED(r 1 ) are all equal to or less than ε, so the decision data EE(l 2 ) to EE(r 1 ) are all ‘1’. 
         [0100]    The conditional weighted averager  10  calculates the weighted average of the difference data ED(l 2 ) to ED(r 1 ) conditional on the decision data EE(l 2 ) to EE(r 1 ) and outputs the resulting weighted average value. When the decision data are ‘1’, the difference data are multiplied by respective coefficients a k  and the products are summed; when the decision data are ‘0’, the products are not included in the sum. In effect, the conditional weighted averager  10  transforms the difference data ED(k) according to the function f{ED(k)} shown in  FIG. 10B  and then takes the weighted average. 
         [0101]    If the coefficients a k  (a l2 , a l1 , a c , a r1 ) are all one-fourth (0.25), then since the decision data EE(l 2 ) to EE(r 1 ) are all ‘1’, the output EM of the conditional weighted averager  10  is given by equation (5). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                         
                           
                             
                               a 
                               12 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 12 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               11 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 11 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               c 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 c 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               
                                 r 
                                  
                                 
                                     
                                 
                                  
                                 1 
                               
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 
                                   r 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                                 ) 
                               
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                         
                           
                             0.25 
                             × 
                             0 
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                           + 
                           
                             0.25 
                             × 
                             4 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                         1 
                       
                     
                   
                 
               
               
                 
                   ( 
                   5 
                   ) 
                 
               
             
           
         
       
     
         [0102]    The above processing is carried out sequentially on the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (5) is carried out for each successive pixel. 
         [0103]      FIG. 11  shows the weighted average value EM output for each pixel in the image data DM in  FIG. 8 . The horizontal axis in  FIG. 11  represents the position i of the pixel of interest; the vertical axis represents the weighted average gray level difference EM. The conditional weighted averager  10  outputs the weighted average EM to the data adder  11 . 
         [0104]    The operation of the data adder  11  will now be described with reference to  FIGS. 12A to 12C .  FIG. 12A  shows the gray level of the image data DS;  FIG. 12B  shows the weighted average gray level difference value EM;  FIG. 12C  shows the gray level of the output image data DO. The data adder  11  adds the image data DS shown in  FIG. 12A  to the weighted average EM shown in  FIG. 12B  and outputs the image data DO shown in  FIG. 12C . For example, at pixel position ia in  FIGS. 12A to 12C , DS(ia)=4Y and EM(ia)=1, so the output value DO(ia) is: 
         [0000]        DO ( ia )= DS ( ia )+ EM ( ia )=4 Y +1 
         [0105]    As described above, this embodiment can increase the number of effective gray levels in a region with gradually changing gray levels. When n-bit image data are converted to (n+2)-bit image data, if the analog image signal SA changes gradually and the gray level of the bit-extended image data DS jumps from 4Y to (4Y+4), changing abruptly by four gray levels (4=2 2 ) as shown in  FIG. 12A , gray levels with levels of (4Y+1), (4Y+2), and (4Y+3) are interpolated to smooth out the jump as shown in  FIG. 12C . 
         [0106]    The operation when the epsilon filter receives a signal with a large jump in gray level will now be described with reference to  FIGS. 13A to 13E . In these figures, the horizontal axis represents pixel position i and the vertical axis indicates gray level.  FIG. 13A  shows the analog image signal SA;  FIG. 13B  shows the n-bit image data DI;  FIG. 13C  shows the (n+α)-bit image data DS and DM;  FIG. 13D  shows the weighted average data EM;  FIG. 13E  show the (n+α)-bit output image data DO. 
         [0107]    The analog image signal SA illustrated in  FIG. 13A  is input through the input terminal  1  to the receiver  2 . The receiver  2  converts SA to n-bit digital image data DI expressing two gray levels (Y and Y+4) as shown in  FIG. 13B  and outputs the result to the bit extender  5 . 
         [0108]    The bit extender  5  converts the gray level Y in the image data DI in  FIG. 13B to 4Y , converts gray level (Y+4) to 4(Y+4), and outputs the image data DS shown in  FIG. 13C  to the one-dimensional m-order epsilon filter  6 . 
         [0109]      FIG. 14  shows the data DM(k) output by the data storage unit  7  when the pixel at pixel position ic in  FIG. 13C  is the pixel of interest P(c), and the corresponding data ED(k) generated by the difference calculators  8 - 1  to  8 - 4 , data EE(k) generated by the epsilon decision units  9 - 1  to  9 - 4 , and data EM generated by the conditional weighted averager  10 , together with the values of f{EK(k)} obtained in the operation of the conditional weighted averager  10 . 
         [0110]    The data storage unit  7  outputs DM(l 2 )=4Y, DM(l 1 )=4Y, DM(c)=4Y, and DM(r 1 )=4Y+16 to the difference calculators  8 - 1  to  8 - 4 . 
         [0000]    The output of the first difference calculator  8 - 1  is: 
         [0000]        ED ( l 2)= DM ( l 2)− DM ( c )=4 Y− 4 Y =0 
         [0000]    The output of the second difference calculator  8 - 2  is: 
         [0000]        ED ( l 1)= DM ( l 1)− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the third difference calculator  8 - 3  is: 
         [0000]        ED ( c )= DM ( c )− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the fourth difference calculator  8 - 4  is: 
         [0000]        ED ( r 1)= DM ( r 1)− DM ( c )=(4 Y+ 16)−4 Y= 16. 
         [0111]    Accordingly, zero (0) is input to the epsilon decision units  9 - 1  to  9 - 3  and sixteen ( 16 ) is input to the second epsilon decision unit  9 - 4 . If the threshold value ε is equal to four (ε=4), since ED(l 2 ), ED(l 1 ), and ED(c) are equal to or less than ε, the corresponding decision data EE(l 2 ), EE(l 1 ), and EE(c) are ‘1’; since ED(r 1 ) is greater than ε, EE(r 1 ) is ‘0’. 
         [0112]    The conditional weighted averager  10  multiplies the difference data having decision data of ‘1’ by coefficients a k  and sums the results, excluding difference data with decision data of ‘0’ from the sum. 
         [0113]    If the coefficients a k  (a l2 , a l1 , a c , a r1 ) are all one-fourth (0.25), then since only the decision data EE(l 2 ), EE(l 1 ), and EE(r 1 ) are ‘1’, the output EM of the conditional weighted averager  10  is given by equation (5). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                         
                           
                             
                               a 
                               12 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 12 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               11 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 11 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               c 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 c 
                                 ) 
                               
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                         
                           
                             0.25 
                             × 
                             0 
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                         0 
                       
                     
                   
                 
               
               
                 
                   ( 
                   6 
                   ) 
                 
               
             
           
         
       
     
         [0114]    The above processing is carried out sequentially on the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (6) is carried out for each successive pixel. 
         [0115]      FIG. 13D  shows the weighted average value EM output for each pixel in the image data DM in  FIG. 13C . The horizontal axis in  FIG. 13D  represents the position i of the pixel of interest; the vertical axis represents the weighted average gray level EM. The conditional weighted averager  10  outputs the weighted average EM to the data adder  11 . 
         [0116]    The data adder  11  adds the image data DS shown in  FIG. 13C  to the weighted average data EM shown in  FIG. 13D  and outputs the image data DO shown in  FIG. 13E . 
         [0117]    As shown in  FIG. 13E , the output image data DO include an abrupt change similar to the abrupt change in the input signal SA and image data DI, demonstrating that the epsilon filter preserves the sharpness of large abrupt changes in gray level. 
         [0118]    As described above, when n-bit image data are extended to (n+α)-bit data, if changes in lower a bits are treated as small-amplitude noise and the threshold value ε is set equal to 2 α , gray level jumps due to the difference in bit resolution between the input and output image are eliminated by increasing the number of gray levels represented in regions with gradually changing gray levels, while the sharpness of the image is preserved by leaving larger jumps unchanged. That is, the number of effective gray levels is increased without blurring the image. 
         [0119]    In the above example, the order m of the epsilon filter is set equal to 2 α . This is not a limitation, but the use of values of m less than 2 α  raises the problem described below, so m is preferably equal to or greater than 2 α . The case where m equals 2 α −1, a equals two, and accordingly m equals three (m=2 α −1, α=2, m=3) will now be described.  FIG. 15  illustrates an exemplary structure of the image display apparatus in the first embodiment when m equals three. 
         [0120]    The operation of the image display apparatus in  FIG. 15  will be described with reference to  FIGS. 16A to 16E . The horizontal axis represents pixel position i and the vertical axis indicates gray level.  FIG. 16A  shows the analog image signal SA;  FIG. 16B  shows the n-bit image data DI;  FIG. 16C  shows the (n+2)-bit image data DS and DM; FIG.  16 BD shows the weighted average data EM;  FIG. 16E  shows the (n+2)-bit output image data DO. 
         [0121]    The analog image signal SA illustrated in  FIG. 16A  is input through the input terminal  1  to the receiver  2 . The receiver  2  converts SA to n-bit digital image data DI expressing two gray levels (Y and Y+1) as shown in  FIG. 16B  and outputs the result to the bit extender  5 . 
         [0122]    The bit extender  5  converts the gray level Y in the image data DI in  FIG. 16B to 4Y , converts gray level (Y+1) to 4(Y+1), and outputs the image data DS shown in FIG.  16 BC to the one-dimensional m-order epsilon filter  6 . 
         [0123]      FIG. 17  shows the data DM(k) output by the data storage unit  7  when the pixel at pixel position ic in FIG.  16 BC is the pixel of interest P(c), and the corresponding data ED(k) generated by the difference calculators  8 - 1  to  8 - 3 , data EE(k) generated by the epsilon decision units  9 - 1  to  9 - 3 , and data EM generated by the conditional weighted averager  10 , together with the values of f{EK(k)} obtained in the operation of the conditional weighted averager  10 . 
         [0124]    The data storage unit  7  in  FIG. 15  has a configuration similar to that in  FIG. 7  but using only three cascaded flip-flops, and outputs DM(l 1 )=4Y, DM 8 ( c )=4Y, DM(r 1 )=4Y+4 to the difference calculators  8 - 1  to  8 - 3 . 
         [0125]    The output of the first difference calculator  8 - 1  is: 
         [0000]        ED ( l 1)= DM ( l 1)− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the second difference calculator  8 - 2  is: 
         [0000]        ED ( c )= DM ( c )− DM ( c )=4 Y− 4 Y =0 
         [0000]    The output of the third difference calculator  8 - 3  is: 
         [0000]        ED ( r 1)= DM ( r 1)− DM ( c )=(4 Y+ 4)−4 Y= 4 
         [0126]    Accordingly, zero (0) is input to the epsilon decision units  9 - 1  to  9 - 2  and four (4) is input to the third epsilon decision unit  9 - 3 . If the threshold value ε is equal to four (ε=4), then ED(l 1 ), ED(c), and ED(r 1 ) are all equal to or less than the threshold value ε, and the decision data EE(l 1 ), EE(c), and EE(r 1 ) are all ‘1’. 
         [0127]    The conditional weighted averager  10  multiplies the difference data having decision data of ‘1’ by coefficients a k  and sums the results, excluding difference data with decision data of ‘0’ from the sum. 
         [0128]    If the coefficients a k  (a l2 , a c , a r1 ) are all one-third (approximated as 0.3325), then the output EM of the conditional weighted averager  10  is given by equation (7). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                           
                          
                         
                           
                             
                               a 
                               11 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 11 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               c 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 c 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               
                                 r 
                                  
                                 
                                     
                                 
                                  
                                 1 
                               
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 
                                   r 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                                 ) 
                               
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             0.3325 
                             × 
                             0 
                           
                           + 
                           
                             0.3325 
                             × 
                             0 
                           
                           + 
                           
                             0.3325 
                             × 
                             4 
                           
                         
                       
                     
                   
                   
                     
                       
                         ≈ 
                           
                          
                         1.33 
                       
                     
                   
                 
               
               
                 
                   ( 
                   7 
                   ) 
                 
               
             
           
         
       
     
         [0129]    The above processing is carried out sequentially on the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (7) is carried out for each successive pixel. 
         [0130]    The data adder  11  adds the image data DS shown in FIG.  16 BC to the weighted average data EM shown in FIG.  16 BD and outputs the image data DO shown in  FIG. 16E . 
         [0131]    As described above, when n-bit image data are extended to (n+2)-bit data, producing gray level jumps of size 22 from 4Y to (4Y+4) in regions with gradually changing gray levels, a third-order epsilon filter (m=3) cannot produce the middle gray level (4Y+2), leaving a gap between gray levels (4Y+1) and (4Y+3), resulting in insufficient smoothing. 
         [0132]    Therefore, it is necessary to set the number of taps of the epsilon filter to 2 α  or more (m≧2 α ). 
         [0133]    The operation of an eighth-order order epsilon filter (m=8), shown in  FIG. 18 , will now be described with reference to  FIGS. 19A to 19E , in which the horizontal axis represents pixel position i and the vertical axis indicates gray level.  FIG. 19A  shows the analog image signal SA;  FIG. 19B  shows the n-bit image data DI;  FIG. 19C  shows the bit-extended (n+α)-bit image data DS and DM;  FIG. 19D  shows the weighted average values EM;  FIG. 19E  shows the output (n+α)-bit image data DO. 
         [0134]    The analog image signal SA illustrated in  FIG. 19A  is input through the input terminal  1  to the receiver  2 . The receiver  2  converts SA to n-bit digital image data DI expressing two gray levels (Y and Y+1) as shown in  FIG. 19B  and outputs these data DI to the bit extender  5 . 
         [0135]    The bit extender  5  converts the gray level Y in the image data DI in  FIG. 19B to 4Y , converts gray level (Y+1) to 4(Y+1), and outputs the image data DS shown in  FIG. 19C  to the one-dimensional m-order epsilon filter  6 . 
         [0136]      FIG. 20  shows data DM(k) output by the data storage unit  7  when the pixel at pixel position ic in  FIG. 19C  is the pixel of interest P(c), and the corresponding data ED(k) generated by the difference calculators  8 - 1  to  8 - 8 , data EE(k) generated by the epsilon decision units  9 - 1  to  9 - 8 , and data EM generated by the conditional weighted averager  10 , together with the values of f{EK(k)} obtained in the operation of the conditional weighted averager  10 . 
         [0137]    The data storage unit  7  in  FIG. 18  has a configuration similar to that in  FIG. 7  but uses eight cascaded flip-flops and outputs DM(l 4 )=4Y, DM(l 3 )=4Y, DM(l 2 )=4Y, DM(c)=4Y, DM(r 1 )=4Y+4, DM(r 2 )=4Y+4, DM(r 3 )=4Y+4 to the difference calculators  8 - 1  to  8 - 8 . 
         [0138]    The output of the first difference calculator  8 - 1  is: 
         [0000]        ED ( l 4)= DM ( l 4)− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the second difference calculator  8 - 2  is: 
         [0000]        ED ( l 3)= DM ( l 3)− DM ( c )=4 Y− 4 Y =0 
         [0000]    The output of the third difference calculator  8 - 3  is: 
         [0000]        ED ( l 2)= DM ( l 2)− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the fourth difference calculator  8 - 4  is: 
         [0000]        ED ( l 1)= DM ( l 1)− DM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the fifth difference calculator  8 - 5  is: 
         [0000]        ED ( c )= DM ( c )− DM ( c )=4 Y− 4 Y= 0 
         [0139]    The output of the sixth difference calculator  8 - 6  is: 
         [0000]        ED ( r 1)= DM ( r 1)− DM ( c )=(4 Y+ 4)−4 Y= 4 
         [0000]    The output of the seventh difference calculator  8 - 7  is: 
         [0000]        ED ( r 2)= DM ( r 2)− DM ( c )=(4 Y+ 4)−4 Y= 4 
         [0000]    The output of the eighth difference calculator  8 - 8  is: 
         [0000]        ED ( r 3)= DM ( r 3)− DM ( c )=(4 Y+ 4)−4 Y= 4 
         [0140]    Accordingly, zero (0) is input to epsilon decision units  9 - 1  to  9 - 5  and four (4) is input to epsilon decision units  9 - 6  to  9 - 8 . If the threshold value ε is equal to four (ε=4), then the difference data ED(l 4 ) to ED(r 3 ) are all equal to or less than the threshold value ε, so the corresponding decision data EE(l 4 ) to EE(r 3 ) are all ‘1’. 
         [0141]    The conditional weighted averager  10  multiplies the difference data having decision data of ‘1’ by coefficients a k  and sums the results, excluding difference data with decision data of ‘0’ from the sum. If the coefficients a k  (a l4 , a l3 , a l2 , a l1 , a c , a r1 , a r2 , a r3 ) are all one-eighth (0.125), then the output EM of the conditional weighted averager  10  is given by equation (8). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                           
                          
                         
                           
                             
                               a 
                               14 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 14 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               13 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 13 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               12 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 12 
                                 ) 
                               
                             
                           
                           + 
                         
                       
                     
                   
                   
                     
                       
                           
                          
                         
                           
                             
                               a 
                               11 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 11 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               c 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 c 
                                 ) 
                               
                             
                           
                           + 
                         
                       
                     
                   
                   
                     
                       
                           
                          
                         
                           
                             
                               a 
                               rl 
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 
                                   r 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               
                                 r 
                                  
                                 
                                     
                                 
                                  
                                 2 
                               
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 
                                   r 
                                    
                                   
                                       
                                   
                                    
                                   2 
                                 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               
                                 r 
                                  
                                 
                                     
                                 
                                  
                                 3 
                               
                             
                             × 
                             
                               ED 
                                
                               
                                 ( 
                                 
                                   r 
                                    
                                   
                                       
                                   
                                    
                                   3 
                                 
                                 ) 
                               
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             0.125 
                             × 
                             0 
                             × 
                             5 
                           
                           + 
                           
                             0.125 
                             × 
                             4 
                             × 
                             3 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         1.5 
                       
                     
                   
                   
                     
                       
                         ≈ 
                           
                          
                         1 
                       
                     
                   
                 
               
               
                 
                   ( 
                   8 
                   ) 
                 
               
             
           
         
       
     
         [0142]    The above processing is carried out sequentially on the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (8) is carried out for each successive pixel. 
         [0143]      FIG. 19D  shows the weighted average value EM output for each pixel in the image data DM in  FIG. 19C . The horizontal axis in  FIG. 19D  represents the position i of the pixel of interest; the vertical axis represents the weighted average gray level EM. The conditional weighted averager  10  outputs the weighted average EM to the data adder  11 . 
         [0144]    The data adder  11  adds the image data DS shown in  FIG. 19C  to the weighted average data EM shown in  FIG. 19D  and outputs the image data DO shown in  FIG. 19E . 
         [0145]    As described above, when n-bit image data are converted to (n+2)-bit image data, an epsilon filter of order eight (m=8), like an epsilon filter of order four (m=4), can interpolate gray levels with values of (4Y+1), (4Y+2), and (4Y+3) to fill in a jump (of size 2 2 ) from a gray level 4Y to a gray level (4Y+4) produced by bit extension in a region with gradually changing gray levels, but as shown in  FIG. 19E , the slope of the interpolated data is only half as great, producing an image with gray levels that change more gradually. 
         [0146]    Cases in which the orders of the epsilon filter were four and eight (m=4 and m=8) have been described. As the order m is increased from 2 α  to 2×2 α , and then to 2 2 ×2 α , an image with gray levels that change increasingly gradually is obtained. When m is a power of two (such as 2 α , 2×2 α , or 2 2 ×2 α ), the epsilon filter can carry out division by bit shifting, which eliminates the need for a divider circuit. 
         [0147]    The processing steps carried out by the image display apparatus in the first embodiment will be described with reference to the flowchart in  FIG. 21 . It will be assumed in the following description that the order of the epsilon filter is m, and the notation in  FIG. 1  will be used. 
         [0148]    First, an image signal SA is input to the input terminal  1 ; the receiver  2  receives the image signal SA and outputs the n-bit image data DI (step ST 1 ). 
         [0149]    The image data DI output from the receiver  2  are input to the bit extender  5  in the gray scale expansion processor  3 . The bit extender  5  extends the image data DI by a bits and outputs (n+α)-bit image data DS to the data storage unit  7  (step ST 2 ). 
         [0150]    The data storage unit  7  receives the (n+α)-bit image data DS, holds the data for m horizontally consecutive pixels, and outputs the pixel data as DM( 1 ) to DM(m) to the difference calculators  8 - 1  to  8 - m  (step ST 3 ). 
         [0151]    The difference calculators  8 - 1  to  8 - m  receive the successive pixel data DM( 1 ) to DM(m), take differences between the m successive pixels and the pixel of interest DM(c), and output the difference data ED( 1 ) to ED(m) to the epsilon decision units  9 - 1  to  9 - m  (step ST 4 ). 
         [0152]    The epsilon decision units  9 - 1  to  9 - m  receive the difference data ED( 1 ) to ED(m), and output decision data EE( 1 ) to EE(m) that indicate which difference data to select (step ST 5 ). 
         [0153]    The conditional weighted averager  10  receives the difference data ED( 1 ) to ED(m) and the decision data EE( 1 ) to EE(m), takes a weighted average of the difference data selected by the decision data, and outputs the weighted average value EM (step ST 6 ). 
         [0154]    The data adder  11  receives the weighted average value EM and the basic (n+α)-bit data DM(c) for the pixel of interest, adds EM and DM(c), and outputs the result as the image data DO (step ST 7 ). The output image data DO are input to the display unit  4 , which displays the image (step ST 8 ). 
         [0155]    Another exemplary structure of the image display apparatus in the first embodiment will be described with reference to  FIG. 22 . The image display apparatus in  FIG. 22  is generally similar to the image display apparatus in  FIG. 1 , but does not include the bit extender  5  in  FIG. 1 , and has a bit-extending one-dimensional m-order epsilon filter  27  with a different conditional weighted averager  30  and data adder  31 . 
         [0156]    The difference calculators  8 - 1  to  8 - m  and the epsilon decision units  9 - 1  to  9 - m  process n-bit data. The threshold value for the epsilon decision units  9 - 1  to  9 - m  is set to ‘1’, because there is no bit extender preceding the epsilon filter  27 . 
         [0157]    The conditional weighted averager  30  calculates a conditional weighted average as described in the examples above (e.g.,  FIGS. 4-14 ), but also calculates bits following the radix point and outputs a of these bits in the weighted average data EM, which accordingly have (n+α) bits. 
         [0158]    The data adder  31  extends the n-bit input data DM(c) to (n+α) bits and adds the result to the EM data. 
         [0159]    Although the image display apparatus in  FIG. 22  carries out a bit extension as part of the operation of the epsilon filter  27  instead of at a stage preceding the epsilon filter, this structure can produce the same effect as the structure in  FIG. 1 . 
       Second Embodiment 
       [0160]    Referring to  FIG. 23 , the image display apparatus in the second embodiment of the invention comprises an input terminal  1 , a receiver  2 , a gray scale expansion processor  3 , and a display unit  4 . The receiver  2  and the gray scale expansion processor  3  constitute the image processing apparatus. 
         [0161]    An analog image signal SA is input from the input terminal  1  to the receiver  2 , converted to n-bit image data DI, and output to the gray scale expansion processor  3 . The gray scale expansion processor  3  includes a bit extender  5  and a two-dimensional m-order epsilon filter  12 , which convert the n-bit image data to (n+α)-bit data and output the data to the display unit  4 . The bit extender  5  outputs (n+α)-bit image data obtained by extending the n-bit image data DI by a bits to the two-dimensional m-order epsilon filter  12 . 
         [0162]    The two-dimensional m-order epsilon filter  12  carries out processing on a two-dimensional region measuring h pixels horizontally by v pixels vertically (where h and v are integers equal to or greater than 2 α . The two-dimensional m-order epsilon filter  12  is an edge-preserving smoothing filter that processes pixels aligned two-dimensionally so as to preserve large abrupt changes (edges) while smoothing out small abrupt changes as if they were noise. The two-dimensional m-order epsilon filter  12  in  FIG. 23  includes a data storage unit  37 , a plurality of difference calculators  8 - 1  to  8 - m , a plurality of epsilon decision units  9 - 1  to  9 - m , a conditional weighted averager  10 , and a data adder  11 . The two-dimensional m-order epsilon filter  12  eliminates gray scale jumps in the expanded gray scale produced by the bit extender  5 , thereby increasing the number of effective gray scale levels in the output image data DO. 
         [0163]    The image data DO are output to the display unit  4 , which is capable of displaying (n+α)-bit image data. 
         [0164]    The two-dimensional processing carried out by the epsilon filter  12  is described by equation (9). 
         [0165]    In this equation, x(i, j) is the gray level of the input; y(i, j) is the gray level of the output; a k  is a coefficient; k indicates relative horizontal pixel position from the pixel of interest (i, j); k′ indicates relative vertical pixel position from the pixel of interest (i, j); ε is a threshold value. 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       y 
                        
                       
                         ( 
                         
                           i 
                           , 
                           j 
                         
                         ) 
                       
                     
                     = 
                     
                       
                         x 
                          
                         
                           ( 
                           
                             i 
                             , 
                             j 
                           
                           ) 
                         
                       
                       + 
                       
                         
                           ∑ 
                           
                             k 
                             = 
                             
                               
                                 
                                   - 
                                   h 
                                 
                                 / 
                                 2 
                               
                               + 
                               1 
                             
                           
                           
                             h 
                             / 
                             2 
                           
                         
                          
                         
                             
                         
                          
                         
                           
                             ∑ 
                             
                               
                                 k 
                                 ′ 
                               
                               = 
                               
                                 
                                   
                                     - 
                                     v 
                                   
                                   / 
                                   2 
                                 
                                 + 
                                 1 
                               
                             
                             
                               v 
                               / 
                               2 
                             
                           
                            
                           
                               
                           
                            
                           
                             
                               a 
                               
                                 hv 
                                  
                                 
                                     
                                 
                               
                             
                              
                             f 
                              
                             
                               { 
                               
                                 
                                   x 
                                    
                                   
                                     ( 
                                     
                                       
                                         i 
                                         - 
                                         k 
                                       
                                       , 
                                       
                                         j 
                                         - 
                                         
                                           k 
                                           ′ 
                                         
                                       
                                     
                                     ) 
                                   
                                 
                                 - 
                                 
                                   x 
                                    
                                   
                                     ( 
                                     
                                       i 
                                       , 
                                       j 
                                     
                                     ) 
                                   
                                 
                               
                               } 
                             
                           
                         
                       
                     
                   
                    
                   
                     
 
                   
                    
                   
                     
                       f 
                        
                       
                         ( 
                         u 
                         ) 
                       
                     
                     = 
                     
                       { 
                       
                         
                           
                             u 
                           
                           
                             
                               ( 
                               
                                 u 
                                 ≤ 
                                 ɛ 
                               
                               ) 
                             
                           
                         
                         
                           
                             0 
                           
                           
                             
                               ( 
                               
                                 u 
                                 &gt; 
                                 ɛ 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   9 
                   ) 
                 
               
             
           
         
       
     
         [0166]    A case in which α equals two (α=2) and n-bit image data are expanded to the (n+2)-bit data will now be described.  FIG. 24  illustrates the structure of the image display apparatus in this case when the order m is sixteen (m=4×4=16). 
         [0167]    First, the operation when a signal with gray levels that change gradually in the horizontal direction is input to the epsilon filter  12  will be described. 
         [0168]    The receiver  2  converts the analog image signal SA to n-bit image data DI and outputs the image data DI to the bit extender  5  in the gray scale expansion processor  3 . 
         [0169]    The operation of the bit extender  5  will be described with reference to  FIGS. 25A and 25B . Each square represents a pixel position, in which the gray level of the corresponding pixel is indicated.  FIG. 25A  represents the gray levels of the n-bit image data DI;  FIG. 25B  represents the gray levels of the (n+2)-bit image data DS. 
         [0170]    The bit extender  5  extends the n-bit image data as shown in  FIG. 25A  by two bits and outputs the resulting (n+2)-bit image data DS as shown in  FIG. 25B  to the two-dimensional m-order epsilon filter  12 . 
         [0171]    The two-bit extension of the image data DI in  FIG. 25A  converts gray level Y to 4Y and converts gray level (Y+1) to 4(Y+1) in the (n+2)-bit image data DS as shown in  FIG. 25B . 
         [0172]    The data storage unit  37  in  FIG. 24  is structured as shown in  FIG. 26A , for example. 
         [0173]    The data storage unit  37  includes four line memories LM 1  to LM 4  and four sets of four cascaded flip-flops FFt 2 _ 1  to FFt 2 _ 4 , FFt 1 _ 1  to FFt 1 _ 4 , FFc_ 1  to FFc_ 4 , and FFb 1 _ 1  to FFb 1 _ 4 . The image signal DS is input through the line memories LM 1  to LM 4  to the four sets of flip-flops. 
         [0174]    Each of the line memories LM 1  to LM 4  can store one horizontal line of image data; the four line memories LM 1  to LM 4  hold four consecutive lines of data. 
         [0175]    Starting from the left ends of the lines and proceeding in sequence to the right, data for pixels aligned vertically in the same column are simultaneously read from the line memories LM 1  to LM 4  and supplied to the first flip-flops FFt 2 _ 1 , FFt 1 _ 1 , FFc_ 1 , and FFr 1 _ 1  in the four sets of flip-flops. The supplied data are then transferred sequentially through the four flip-flops in each set. 
         [0176]    As a result, data in a (4×4)-pixel region as illustrated in  FIG. 26B  are held in the flip-flops FFt 2 _ 1  to FFt 2 _ 4 , FFt 1 _ 1  to FFt 1 _ 4 , FFc_ 1  to FFc_ 4 , and FFb 1 _ 1  to FFb 1 _ 4 , and are output simultaneously as data DM(l 2 , t 2 ) (for the top left pixel in the region) to DM(r 1 , b 1 ) (for the bottom right pixel in the region). 
         [0177]    The data storage unit  37  outputs data in the region TL surrounded by the bold line in  FIG. 27 , for example, as DM(l 2 , t 2 ) to DM(r 1 , b 1 ). The pixel in the third row from the top and the third column from the left in the region TL is the pixel of interest, and its coordinates represented as (c, c). In the example shown, 4Y is output in the left half of region TL, as DM(l 2 , t 2 ) to DM(l 1 , b 1 ), and (4Y+4) is output in the right half, as DM(c, t 2 ) to DM(r 1 , b 1 ). The output data are supplied to the difference calculators  8 - 1  to  8 - 16 . 
         [0178]    The first difference calculator  8 - 1  takes the difference ED(l 2 , t 2 ) between the value of the pixel of interest DM(c, c) and the value of the data of the left-top neighboring pixel DM(l 2 , t 2 ), and outputs the difference data to the first epsilon decision unit  9 - 1  and the conditional weighted averager  10 . Difference calculators  8 - 2  to  8 - 16  similarly generate difference data ED(l 2 , t 1 ) to ED(r 1 , b 1 ) based on neighboring pixel data DM(l 2 , t 1 ) to DM(r 1 , b 1 ), and output the difference data to epsilon decision units  9 - 2  to  9 - 16  and the conditional weighted averager  10 . 
         [0179]    The output of the first difference calculator  8 - 1  is: 
         [0000]        ED ( l 2 ,t 2)=4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the second difference calculator  8 - 2  is: 
         [0000]        ED ( l 2 ,t 1)=4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the third difference calculator  8 - 3  is: 
         [0000]        ED ( l 2 ,c )=4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the fourth difference calculator  8 - 4  is: 
         [0000]        ED ( l 2 ,b 1)=4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the fifth difference calculator  8 - 5  is: 
         [0000]        ED ( l 1 ,t 2)=4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the sixth difference calculator  8 - 6  is: 
         [0000]        ED ( l 1 ,t 1)=4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the seventh difference calculator  8 - 7  is: 
         [0000]        ED ( l 1 ,c )4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the eighth difference calculator  8 - 8  is: 
         [0000]        ED ( l 1 ,b 1)=4 Y −(4 Y+ 4)=−4 
         [0000]    The output of the ninth difference calculator  8 - 9  is: 
         [0000]        ED ( c,t 2)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the tenth difference calculator  8 - 10  is: 
         [0000]        ED ( c,t 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the eleventh difference calculator  8 - 11  is: 
         [0000]        ED ( c,c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the twelfth difference calculator  8 - 12  is: 
         [0000]        ED ( c,b 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the thirteenth difference calculator  8 - 13  is: 
         [0000]        ED ( r 1 ,t 2)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the fourteenth difference calculator  8 - 14  is: 
         [0000]        ED ( r 1 ,t 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the fifteenth difference calculator  8 - 15  is: 
         [0000]        ED ( r 1 ,c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the sixteenth difference calculator  8 - 16  is: 
         [0000]        ED ( r 1 ,b 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0180]    The detailed operation of the epsilon decision units is the same as in the first embodiment. The first epsilon decision unit  9 - 1  generates ‘1’ when the difference ED( 12 , t 2 ) is greater than ε, and generates ‘0’ when the difference ED(l 2 , t 2 ) is equal to or less than E. Epsilon decision units  9 - 2  to  9 - 16  similarly generate decision data EE(l 1 , t 2 ) to EE(r 1 , b 1 ) conditional on the difference data ED(l 1 , t 2 ) to ED(r 1 , b 1 ), and output the decision data to the conditional weighted averager  10 . 
         [0181]    In the example shown in  FIG. 27 , epsilon decision units  9 - 1  to  9 - 8  receive difference data equal to minus four (−4) and epsilon decision units  9 - 9  to  9 - 16  receive difference data equal to zero (0). Accordingly, if ε is equal to four (ε=4), the difference data ED(l 1 , t 2 ) to ED(r 1 , b 1 ) are all equal to or less than ε; thus the decision data EE(l 2 , t 2 ) to EE(r 1 , b 1 ) are all ‘1’. 
         [0182]    The conditional weighted averager  10  calculates the weighted average of the difference data ED(l 2 , t 2 ) to ED(r 1 , b 1 ) conditional on the decision data EE(l 2 , t 2 ) to EE(r 1 , b 1 ). When the decision data are ‘1’, the difference data are multiplied by respective coefficients a k  and the products are summed; when the decision data are ‘0’, the products are not included in the sum. 
         [0183]    If the coefficients a k  (a l2t2 , a l1t2 , . . . , a r1b1 ) are all one-sixteenth (0.0625), then since the decision data EE(l 2 , t 2 ) to EE(r 1 , b 1 ) are all ‘1’ in the example above, the output EM of the conditional weighted averager  10  is given by equation (10). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                           
                          
                         
                           
                             
                               
                                 
                                   a 
                                   
                                     12 
                                      
                                     t2 
                                   
                                 
                                 × 
                                 
                                   ED 
                                    
                                   
                                     ( 
                                     
                                       12 
                                       , 
                                       
                                         t 
                                          
                                         
                                             
                                         
                                          
                                         2 
                                       
                                     
                                     ) 
                                   
                                 
                               
                               + 
                               
                                 
                                   a 
                                   
                                     11 
                                      
                                     t 
                                      
                                     
                                         
                                     
                                      
                                     2 
                                   
                                 
                                 × 
                                 
                                   ED 
                                    
                                   
                                     ( 
                                     
                                       11 
                                       , 
                                       
                                         t 
                                          
                                         
                                             
                                         
                                          
                                         2 
                                       
                                     
                                     ) 
                                   
                                 
                               
                               + 
                             
                             ... 
                           
                            
                           
                               
                           
                           + 
                         
                       
                     
                   
                   
                     
                       
                           
                          
                         
                           
                             a 
                             
                               r 
                                
                               
                                   
                               
                                
                               1 
                                
                               b 
                                
                               
                                   
                               
                                
                               1 
                             
                           
                           × 
                           
                             ED 
                              
                             
                               ( 
                               
                                 
                                   r 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                                 , 
                                 
                                   b 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             0.0625 
                             × 
                             
                               ( 
                               
                                 - 
                                 4 
                               
                               ) 
                             
                             × 
                             8 
                           
                           + 
                           
                             0.0625 
                             × 
                             0 
                             × 
                             8 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           - 
                           2 
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   10 
                   ) 
                 
               
             
           
         
       
     
         [0184]    The above processing is carried out sequentially on the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (10) is carried out for each consecutive pixel. 
         [0185]      FIG. 28  shows the weighted average value EM output for each pixel in the image data DM in  FIG. 27 . The conditional weighted averager  10  outputs the weighted average EM to the data adder  11 . 
         [0186]    The data adder  11  adds the image data DS shown in  FIG. 25B  to the weighted averages EM shown in  FIG. 28 , and outputs the resulting image data DO shown in  FIG. 29 .  FIG. 29  shows the gray levels of the data DO output from the data adder  11 . The values indicated in the pixel positions represent the gray levels of the data DO. 
         [0187]    The operation when the epsilon filter  12  receives a signal with gray levels that change gradually in the vertical direction will now be described. 
         [0188]    The receiver  2  converts the analog input signal SA to n-bit digital image data DI and outputs the result to the gray scale expansion processor  3 , more specifically to the bit extender  5  in the gray scale expansion processor  3 . 
         [0189]    The operation of the bit extender  5  will be described with reference to  FIGS. 30A and 30B . Each square represents a pixel position, in which the gray level of the corresponding pixel is indicated.  FIG. 30A  represents the gray levels of the n-bit image data DI;  FIG. 30B  represents the gray levels of the (n+2)-bit image data DS. 
         [0190]    The bit extender  5  extends the n-bit image data shown in  FIG. 30A  by two bits and outputs the resulting (n+2)-bit image data DS shown in  FIG. 30B  to the two-dimensional m-order epsilon filter  12 . 
         [0191]    The two-bit extension of the image data DI in  FIG. 30A  converts gray level Y to 4Y and converts gray level (Y+1) to 4(Y+1) or 4Y+4 in the (n+2)-bit image data DS shown in  FIG. 30B . 
         [0192]      FIG. 31  shows the output of the data storage unit  37  when the pixel at pixel position (c, c) is the pixel of interest. The data storage unit  37  outputs the data below, which are shown in the region within the bold line TL, to the difference calculators  8 - 1  to  8 - 16 . 
         [0000]        DM ( l 2 ,t 2)=4 Y,    
         [0000]        DM ( l 2 ,t 1)=4 Y,    
         [0000]        DM ( l 2 ,c )=4 Y+ 4, 
         [0000]        DM ( l 2 ,b 1)=4 Y+ 4, 
         [0000]        DM ( l 1, t 2)=4 Y,    
         [0000]        DM ( l 1 ,t 1)=4 Y,    
         [0000]        DM ( l 1 ,c )=4 Y+ 4, 
         [0000]        DM ( l 1 ,b 1)=4 Y+ 4, 
         [0000]        DM ( c,t 2)=4 Y,    
         [0000]        DM ( c,t 1)=4 Y,    
         [0000]        DM ( c,c )=4 Y+ 4, 
         [0000]        DM ( c,b 1)=4 Y+ 4, 
         [0000]        DM ( r 1 ,t 2)=4 Y,    
         [0000]        DM ( r 1 ,t 1)=4 Y,    
         [0000]        DM ( r 1 ,c )=4 Y+ 4, 
         [0000]        DM ( r 1 ,b 1)=4 Y+ 4. 
         [0193]    The output of the first difference calculator  8 - 1  is: 
         [0000]        ED ( l 2 ,t 2)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the second difference calculator  8 - 2  is: 
         [0000]        ED ( l 2 ,t 1)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the third difference calculator  8 - 3  is: 
         [0000]        ED ( l 2 ,c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the fourth difference calculator  8 - 4  is: 
         [0000]        ED ( l 2 ,b 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the fifth difference calculator  8 - 5  is: 
         [0000]        ED ( l 1 ,t 2)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the sixth difference calculator  8 - 6  is: 
         [0000]        ED ( l 1 ,t 1)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the seventh difference calculator  8 - 7  is: 
         [0000]        ED ( l 1 ,c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the eighth difference calculator  8 - 8  is: 
         [0000]        ED ( l 1 ,b 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the ninth difference calculator  8 - 9  is: 
         [0000]        ED ( c,t 2)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the tenth difference calculator  8 - 10  is: 
         [0000]        ED ( c,t 1)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the eleventh difference calculator  8 - 11  is: 
         [0000]        ED ( c,c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the twelfth difference calculator  8 - 12  is: 
         [0000]        ED ( c,b 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the thirteenth difference calculator  8 - 13  is: 
         [0000]        ED ( r 1 ,t 2)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the fourteenth difference calculator  8 - 14  is: 
         [0000]        ED ( r 1 ,t 1)=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the fifteenth difference calculator  8 - 15  is: 
         [0000]        ED ( r 1 ,c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the sixteenth difference calculator  8 - 16  is: 
         [0000]        ED ( r 1 ,b 1)=(4 Y+ 4)−(4 Y+ 4)=0 
         [0194]    The first epsilon decision unit  9 - 1  generates ‘1’ when the difference ED(l 2 , t 2 ) is greater than ε, and generates ‘0’ when the difference ED(l 2 , t 2 ) is equal to or less than ε. Epsilon decision units  9 - 2  to  9 - 16  generate similar decision data EE(l 1 , t 2 ) to EE(r 1 , b 1 ) conditional on the difference data ED(l 1 , t 2 ) to ED(r 1 , b 1 ). The decision data are output to the conditional weighted averager  10 . 
         [0195]    In the example shown in  FIG. 32 , the difference data ED(l 2 , t 2 ) to ED(r 1 , b 1 ) are all −4 or 0, so if the threshold ε is four (ε=4), the difference data are all equal to or less than ε and the decision data EE(l 2 , t 2 ) to EE(r 1 , b 1 ) are all ‘1’. 
         [0196]    The conditional weighted averager  10  calculates the weighted average of the difference data ED(l 2 , t 2 ) to ED(r 1 , b 1 ) conditional on the decision data EE(l 2 , t 2 ) to EE(r 1 , b 1 ). When the decision data are ‘1’, the difference data are multiplied by respective coefficients a k  and the products are summed; when the decision data are ‘0’, the products are not included in the sum. 
         [0197]    If the coefficients a k  (a l2t2 , a l1t2 , . . . a r1b1 ) are all one-sixteenth (0.0625), then since the decision data EE(l 2 , t 2 ) to EE(r 1 , b 1 ) are all ‘1’ in the example above, the output EM of the conditional weighted averager  10  is given by equation (11). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                           
                          
                         
                           
                             
                               
                                 
                                   a 
                                   
                                     12 
                                      
                                     t 
                                      
                                     
                                         
                                     
                                      
                                     2 
                                   
                                 
                                 × 
                                 
                                   ED 
                                    
                                   
                                     ( 
                                     
                                       12 
                                       , 
                                       
                                         t 
                                          
                                         
                                             
                                         
                                          
                                         2 
                                       
                                     
                                     ) 
                                   
                                 
                               
                               + 
                               
                                 
                                   a 
                                   
                                     11 
                                      
                                     t 
                                      
                                     
                                         
                                     
                                      
                                     2 
                                   
                                 
                                 × 
                                 
                                   ED 
                                    
                                   
                                     ( 
                                     
                                       11 
                                       , 
                                       
                                         t 
                                          
                                         
                                             
                                         
                                          
                                         2 
                                       
                                     
                                     ) 
                                   
                                 
                               
                               + 
                             
                             ... 
                           
                            
                           
                               
                           
                           + 
                         
                       
                     
                   
                   
                     
                       
                           
                          
                         
                           
                             a 
                             
                               r 
                                
                               
                                   
                               
                                
                               1 
                                
                               b 
                                
                               
                                   
                               
                                
                               1 
                             
                           
                           × 
                           
                             ED 
                              
                             
                               ( 
                               
                                 
                                   r 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                                 , 
                                 
                                   b 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             0.0625 
                             × 
                             
                               ( 
                               
                                 - 
                                 4 
                               
                               ) 
                             
                             × 
                             8 
                           
                           + 
                           
                             0.0625 
                             × 
                             0 
                             × 
                             8 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           - 
                           2 
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   11 
                   ) 
                 
               
             
           
         
       
     
         [0198]    The above processing is carried out sequentially on the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (11) is carried out for each consecutive pixel. 
         [0199]      FIG. 28  shows the weighted average value EM output for each pixel in the image data DM in  FIG. 31 . The conditional weighted averager  10  outputs the weighted average EM to the data adder  11 . 
         [0200]    The data adder  11  adds the image data DS shown in  FIG. 30B  to the weighted average values EM shown in  FIG. 32 , and outputs the resulting image data DO shown in  FIG. 33 .  FIG. 33  shows the gray levels of the data DO output from the data adder  11 . The values indicated in the pixel positions represent the gray levels of the output data DO. 
         [0201]    As described above, this embodiment can increase the number of gray levels in a region in which the gray levels change gradually in at least the horizontal or vertical direction. That is, when the order m of the epsilon filter  12  is sixteen (2 2 ×2 2 ), jumps by four (a power of two) gray levels from 4Y to (4Y+4) in a region with gradually changing gray levels as shown in  FIGS. 29 and 33  can be smoothed out by interpolating levels of (4Y+1), (4Y+2), and (4Y+3). 
         [0202]    As in the first embodiment, if the order m of the epsilon filter  12  is greater than (2 α ×2 α ), an image with gray levels that change more gradually can be obtained. If m is a power of two such as 2 α ×2 α , (2×2 α )×2 α , 2 + ×(2×2 α ), or (2×2 α )×(2×2 α ), the epsilon filter  12  can carry out division by bit shifting, which eliminates the need for a divider circuit. 
         [0203]    The processing steps carried out by the image display apparatus in the second embodiment will be described with reference to the flowchart in  FIG. 34 . It will be assumed in the following description that the order of the epsilon filter  12  is m, and the notation in  FIG. 23  will be used. 
         [0204]    First, an image signal SA is input to the input terminal  1 ; the receiver  2  receives the image signal SA and outputs n-bit image data DI (step ST 11 ). 
         [0205]    The image data DI output from the receiver  2  are input to the bit extender  5  in the gray scale expansion processor  3 . The bit extender  5  extends the image data DI by a bits and outputs (n+α)-bit image data DS to the data storage unit  37  (step ST 12 ). 
         [0206]    The data storage unit  37  receives the (n+α)-bit image data DS, holds pixels in an (h×v)-pixel (an m-pixel) region (where h≧2 α , v≧2 α , h×v=m, m≧2 α ×2 α ), and outputs the pixel data as DM( 1 ) to DM(m) to the difference calculators  8 - 1  to  8 - m  (step ST 13 ). 
         [0207]    The difference calculators  8 - 1  to  8 - m  receive the consecutive pixel data DM( 1 ) to DM(m) in the (h×v)-pixel region, take differences between the m pixels and the pixel of interest DM(c), and output the difference data ED( 1 ) to ED(m) to the epsilon decision units  9 - 1  to  9 - m  (step ST 14 ). 
         [0208]    The epsilon decision units  9 - 1  to  9 - m  receive the difference data ED( 1 ) to ED(m) and output decision data EE( 1 ) to EE(m) that indicate which difference data to select (step ST 15 ). 
         [0209]    The conditional weighted averager  10  receives the difference data ED( 1 ) to ED(m) and the decision data EE( 1 ) to EE(m), takes a weighted average of the difference data selected by the decision data, and outputs the weighted average value EM (step ST 16 ). 
         [0210]    The data adder  11  receives the weighted average value EM and the basic (n+α)-bit data DM(c) for the pixel of interest, adds EM and DM(c), and outputs the result as the image data DO (step ST 17 ). The image data DO are input to the display unit  4 , which displays the image (step ST 18 ). 
         [0211]    Another exemplary structure of the image display apparatus in the second embodiment will be described with reference to  FIG. 35 . The image display apparatus in  FIG. 35  is generally similar to the image display apparatus in  FIG. 23 , but does not include the bit extender  5  in  FIG. 23 , and has a bit-extending two-dimensional m-order epsilon filter  28  with a different conditional weighted averager  30  and data adder  31 . 
         [0212]    The difference calculators  8 - 1  to  8 - m  and the epsilon decision units  9 - 1  to  9 - m  process n-bit data. The threshold value for the epsilon decision units  9 - 1  to  9 - m  is set to ‘1’, because there is no bit extender preceding the epsilon filter  28 . 
         [0213]    The conditional weighted averager  30  calculates a conditional weighted average as described in the examples above ( FIGS. 24-34 ), but also calculates bits following the radix point and outputs a of these bits in the weighted average data EM, which accordingly have (n+α) bits. 
         [0214]    The data adder  31  extends the n-bit input data DM(c) to (n+α) bits and adds the result to the EM data. 
         [0215]    Although the image display apparatus in  FIG. 35  carries out a bit extension as part of the operation of the epsilon filter  28  instead of at a stage preceding the epsilon filter, this structure can produce the same effect as the structure in  FIG. 23 . 
       Third Embodiment 
       [0216]    Referring to  FIG. 36 , the image display apparatus in the third embodiment of the invention comprises an input terminal  1 , a receiver  2 , a gray scale expansion processor  3 , and a display unit  4 . The receiver  2  and the gray scale expansion processor  3  constitute the image processing apparatus. 
         [0217]    An analog image signal SA is input from the input terminal  1  to the receiver  2 , converted to n-bit image data DI, and output to the gray scale expansion processor  3 . The gray scale expansion processor  3  includes a bit extender  5 , a one-dimensional v-order vertical epsilon filter  13 , and a one-dimensional h-order horizontal epsilon filter  14 , which convert the n-bit image data to (n+α)-bit data and output the data to the display unit  4 . 
         [0218]    The bit extender  5  outputs (n+α)-bit image data DS obtained by extending the n-bit image data DI by a bits to the one-dimensional v-order vertical epsilon filter  13  and one-dimensional h-order horizontal epsilon filter  14 . 
         [0219]    The one-dimensional v-order vertical epsilon filter  13  carries out processing on the basic (n+α)-bit data in the vertical direction, operating as an edge-preserving smoothing filter that processes pixels aligned vertically with the pixel of interest so as to preserve large abrupt changes (edges) while smoothing out small abrupt changes as if they were noise. The one-dimensional v-order vertical epsilon filter  13  shown in  FIG. 36  has the structure shown in  FIG. 37 , for example, including a vertical data storage unit  15 , a plurality of vertical difference calculators  16 - 1  to  16 - v , a plurality of vertical epsilon decision units  17 - 1  to  17 - v , a vertical conditional weighted averager  18 , and a vertical data adder  19 . The one-dimensional v-order vertical epsilon filter  13  increases the number of effective gray levels in the vertical direction of the image data DS and outputs data with the increased number of gray levels as image data VDO to the one-dimensional h-order horizontal epsilon filter  14 . 
         [0220]    The one-dimensional h-order horizontal epsilon filter  14  carries out processing on the (n+α)-bit data VDO received from the one-dimensional v-order vertical epsilon filter  13  in the horizontal direction, operating as an edge-preserving smoothing filter that processes pixels aligned in the horizontal direction with the pixel of interest so as to preserve large abrupt changes (edges) while smoothing out small abrupt changes as if they were noise. The one-dimensional h-order horizontal epsilon filter  14  shown in  FIG. 36  has the structure shown in  FIG. 38 , for example, including a basic data storage unit  20 , a plurality of basic data difference calculators  21 - 1  to  21 - h , a plurality of horizontal epsilon decision units  22 - 1  to  22 - h , a horizontal data storage unit  23 , a plurality of horizontal difference calculators  24 - 1  to  24 - h , a horizontal conditional weighted averager  25 , and a horizontal data adder  26 . The one-dimensional h-order horizontal epsilon filter  14  increases the number of effective gray levels of the image data VDO conditional on horizontal gray level changes of the image data DS and outputs (n+α)-bit data with the increased number of gray levels as the image data DO to the display unit  4 . The display unit  4  displays the (n+α)-bit output image data DO. 
         [0221]    The case in which α equals two (α=2), so that n-bit image data are expanded to (n+2)-bit data, will now be described.  FIGS. 39 ,  40 , and  41  illustrate the structure of the image display apparatus according to the third embodiment when h and v both equal four (h=4, v=4); these drawings correspond to  FIGS. 36 ,  37 , and  38 . 
         [0222]    First, the operation when a signal with gray levels that change gradually in the horizontal direction is input to the epsilon filter will be described. 
         [0223]    The receiver  2  converts the analog image signal SA to n-bit image data DI and outputs the image data DI to the bit extender  5  in the gray scale expansion processor  3 . 
         [0224]    The operation of the bit extender  5  will be described with reference to  FIGS. 42A and 42B . Each square represents a pixel position, in which the gray level of the corresponding pixel is indicated.  FIG. 42A  represents the gray levels of the n-bit image data DI;  FIG. 42B  represents the gray levels of the (n+2)-bit image data DS. 
         [0225]    The bit extender  5  extends the n-bit image data shown in  FIG. 42A  by two bits and outputs the resulting (n+2)-bit image data DS, shown in  FIG. 42B , to the one-dimensional v-order vertical epsilon filter  13  and the one-dimensional h-order horizontal epsilon filter  14 . 
         [0226]    The two-bit extension of the image data DI in  FIG. 42A  converts gray level Y to 4Y and converts gray level (Y+1) to 4(Y+1), producing the (n+2)-bit image data DS shown in  FIG. 42B . 
         [0227]    The operation of the one-dimensional v-order vertical epsilon filter  13  will now be described. 
         [0228]    The vertical data storage unit  15  in  FIG. 40  is configured as shown in  FIG. 43A , for example. 
         [0229]    The vertical data storage unit  15  in  FIG. 40  includes four line memories LM 1  to LM 4  and four flip-flops FFt 2 _ 1 , FFt 1 _ 1 , FFc_ 1 , and FFb 1 _ 1 . The image signal DS is input through the line memories LM 1  to LM 4  to the four flip-flops. 
         [0230]    Each of the line memories LM 1  to LM 4  can store one horizontal line of image data; the four line memories LM 1  to LM 4  hold four consecutive lines of data. 
         [0231]    Starting from the left ends of the lines and proceeding in sequence to the right, data for pixels aligned vertically in the same column are simultaneously read from the line memories LM 1  to LM 4  and supplied to the flip-flops FFt 2 _ 1 , FFt 1 _ 1 , FFc_ 1 , FFb 1 _ 1 . Accordingly, data for a region consisting of four vertically consecutive pixels as shown in  FIG. 43B  are held simultaneously in the flip-flops FFt 2 _ 1 , FFt 1 _ 1 , FFc_ 1 , FFb 1 _ 1 . 
         [0232]    The data held by the flip-flops FFt 2 _ 1 , FFt 1 _ 1 , FFc_ 1 , and FFb 1 _ 1  are output simultaneously as data VDM(t 2 ), VDM(t 1 ), VDM(c), and VDM (b 1 ). 
         [0233]    For example, the vertical data storage unit  15  holds the data for the region surrounded by the bold line TL in  FIG. 44 , consisting of four vertically aligned consecutive pixels, and outputs the data VDM(t 2 ), VDM(t 1 ), VDM(c), VDM(b 1 ) for these four pixels all at once. In this case, the third pixel from the top in the region within the bold line TL (the pixel in the third row in region TL) is the pixel of interest (the pixel on the line of interest), and its (vertical) coordinate value is represented as c. In the example in  FIG. 44 , the following data are output and supplied to the vertical difference calculators  16 - 1  to  16 - 4 . 
         [0000]        VDM ( t 2)=4 Y+ 4 
         [0000]        VDM ( t 1)=4 Y+ 4 
         [0000]        VDM ( c )=4 Y    
         [0000]        VDM ( b 1)=4 Y    
         [0000]    In this way, the vertical data storage unit  15  simultaneously outputs the image data VDM(c) of the pixel of interest P(c) at pixel position c together with the image data VDM(t 2 ), VDM(t 1 ), and VDM(b 1 ) of three adjacent pixels aligned vertically with the pixel of interest. 
         [0234]    The first vertical difference calculator  16 - 1  generates the difference VED(t 2 ) between the value of the pixel of interest VDM(c) and the value of the data of the top neighboring pixel VDM(t 2 ), and outputs the difference data to the first epsilon decision unit  9 - 1  and the conditional weighted averager  10 . The difference calculators  8 - 2  to  8 - 16  generate similar differences VED(t 1 ), VED(c), and VED(b 1 ) from the pixel data VDM(t 1 ), VDM(c), and VDM(b 1 ), and output the difference data to the epsilon decision units  9 - 2  to  9 - 16  and the conditional weighted averager  10 . 
         [0235]      FIG. 45  shows the data VDM(k) output from the vertical data storage unit  15 , the data VED(k) generated by the vertical difference calculators  16 - 1  to  16 - 4 , the data. VEE(k) generated by the vertical epsilon decision units  17 - 1  to  17 - 4 , and the data VEM generated by the vertical conditional weighted averager  18 , together with the value of f{ED(k)} obtained in the operation in the vertical conditional weighted averager  18 , when the pixel of interest is P(c) in  FIG. 44 . 
         [0236]    The output of the first vertical difference calculator  16 - 1  is: 
         [0000]        VED ( t 2)= VDM ( t 2)− VDM ( c )=(4 Y+ 4)−4 Y= 4. 
         [0000]    The output of the second vertical difference calculator  16 - 2  is: 
         [0000]        VED ( t 1)= VDM ( t 1)− VDM ( c )=(4 Y+ 4)−4 Y= 4. 
         [0000]    The output of the third vertical difference calculator  16 - 3  is: 
         [0000]        VED ( c )= VDM ( c )− VDM ( c )=4 Y− 4 Y= 0 
         [0000]    The output of the fourth vertical difference calculator  16 - 4  is: 
         [0000]        VED ( b 1)= VDM ( b 1)− VDM ( c )=4 Y− 4 Y= 0 
         [0237]    Like the epsilon decision units described in the first embodiment, the first vertical epsilon decision unit  17 - 1  generates ‘0’ when the difference VED(t 2 ) is greater than ε and generates ‘1’ when the difference VED(t 2 ) is equal to or less than ε. The vertical epsilon decision units  17 - 2  to  17 - 4  generate similar decision data VEE(t 1 ), VEE(c), and VEE(b 1 ) based on the difference data VED(t 1 ), VED(c), and VED(b 1 ). The generated decision data are output to the vertical conditional weighted averager  18 . 
         [0238]    In the example shown in  FIG. 44 , since four (4) is input to the vertical epsilon decision units  17 - 1  and  17 - 2  and zero (0) is input to the vertical epsilon decision units  17 - 3  and  17 - 4 , if ε is equal to four (ε=4), the difference data VED(t 2 ) to VED(b 1 ) are all equal to or less than ε and the decision data VEE(t 2 ) to VEE(b 1 ) are all ‘1’. 
         [0239]    The vertical conditional weighted averager  18  calculates the weighted average of the difference data VED(t 2 ) to VED(b 1 ) conditional on the decision data VEE(t 2 ) to VEE(b 1 ). When the decision data are ‘1’, the difference data are multiplied by respective coefficients a k  and the products are summed; when the decision data are ‘0’, the products are not included in the sum. 
         [0240]    If the coefficients a k  (a t2 , a t1 , a c , a b1 ) are all one-fourth (0.25), then since the decision data VEE(t 2 ) to VEE(b 1 ) are all ‘1’, the output VEM of the vertical conditional weighted averager  18  is given by equation (12). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                           
                          
                         
                           
                             
                               a 
                               
                                 t 
                                  
                                 
                                     
                                 
                                  
                                 2 
                               
                             
                             × 
                             
                               VED 
                                
                               
                                 ( 
                                 
                                   t 
                                    
                                   
                                       
                                   
                                    
                                   2 
                                 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               
                                 t 
                                  
                                 
                                     
                                 
                                  
                                 1 
                               
                             
                             × 
                             
                               VED 
                                
                               
                                 ( 
                                 
                                   t 
                                    
                                   
                                       
                                   
                                    
                                   1 
                                 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               c 
                             
                             × 
                             
                               VED 
                                
                               
                                 ( 
                                 c 
                                 ) 
                               
                             
                           
                           + 
                         
                       
                     
                   
                   
                     
                       
                           
                          
                         
                           
                             a 
                             
                               b 
                                
                               
                                   
                               
                                
                               1 
                             
                           
                           × 
                           
                             VED 
                              
                             
                               ( 
                               
                                 b 
                                  
                                 
                                     
                                 
                                  
                                 1 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             0.25 
                             × 
                             4 
                           
                           + 
                           
                             0.25 
                             × 
                             4 
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         2 
                       
                     
                   
                 
               
               
                 
                   ( 
                   12 
                   ) 
                 
               
             
           
         
       
     
         [0241]    The above processing is carried out sequentially on the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (12) is carried out for each successive pixel. 
         [0242]      FIG. 46  shows the weighted average data VEM corresponding to the image data VDM in  FIG. 44 , that is, the weighted average values VEM when the pixel at each position (i, j) is the pixel of interest. The value at each pixel position represents a gray level. The vertical conditional weighted averager  18  outputs the weighted value VEM to the vertical data adder  19 . 
         [0243]    The vertical data adder  19  adds the image data DS shown in  FIG. 44  to the weighted average values VEM shown in  FIG. 46 , and outputs the resulting image data VDO shown in  FIG. 47 . The value at each pixel position represents the gray level of the data VDO. 
         [0244]    The operation of the one-dimensional h-order horizontal epsilon filter  14  will now be described. The basic data storage unit  20  in the one-dimensional h-order horizontal epsilon filter  14  has the same structure as the data storage unit  7  in the first embodiment, holds data for four horizontally consecutive pixels such as the data in the region surrounded by the bold line TL in  FIG. 48 , for example, and outputs the data simultaneously as BDM(l 2 ), BDM(l 1 ), BDM(c), and BDM(r 1 ). In this example, the third pixel from the left end of the region within the bold line TL in the second line from the top is the pixel of interest, and its horizontal coordinate value is denoted c. 
         [0245]      FIG. 49  shows the data BDM(k) output from the basic data storage unit  20 , the corresponding difference data BED(k) generated by the basic data difference calculators  21 - 1  to  21 - 4 , and the decision data HEE(k) generated by the horizontal epsilon decision units  22 - 1  to  22 - 4  when the pixel P(c) in  FIG. 48  is the pixel of interest. 
         [0246]    In the example shown, the basic data storage unit  20  outputs 4Y as BDM(l 2 ) and BDM(l 1 ), and (4Y+4) as BDM(c) and BDM(r 1 ), to the basic data difference calculators  21 - 1  to  21 - 4 . In this way, the basic data storage unit  20  simultaneously outputs the image data BDM(c) of the pixel of interest P(c) and the image data BDM(l 2 ), BDM(l 1 ), and BDM(r 1 ) of neighboring pixels aligned horizontally and consecutively with the pixel of interest. 
         [0247]    The output of the first basic data difference calculator  21 - 1  is: 
         [0000]        BED ( l 2)= BDM ( l 2)− BDM ( c )=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the second basic data difference calculator  21 - 2  is: 
         [0000]        BED ( l 1)= BDM ( l 1)− BDM ( c )=4 Y −(4 Y+ 4)=−4. 
         [0000]    The output of the third basic data difference calculator  21 - 3  is: 
         [0000]        BED ( c )= BDM ( c )− BDM ( c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0000]    The output of the fourth basic data difference calculator  21 - 4  is: 
         [0000]        BED ( r 1)= BDM ( r 1)− BDM ( c )=(4 Y+ 4)−(4 Y+ 4)=0 
         [0248]    In this way, the basic data difference calculators  21 - 1  to  21 - 4  calculate the differences between the image data BDM(c) for the pixel of interest and the image data for the four horizontally consecutive pixels surrounding and including the pixel of interest, and output the results to the horizontal epsilon decision units  22 - 1  to  22 - 4 . 
         [0249]    Like the epsilon decision units described in the first embodiment, the first horizontal epsilon decision unit  22 - 1  generates ‘0’ when the difference BED(l 2 ) is greater than ε and generates ‘1’ when the difference BED(l 2 ) is equal to or less than ε. Horizontal epsilon decision units  22 - 2  to  22 - 4  generate similar decision data HEE(l 1 ), HEE(c), and HEE(r 1 ) from the difference data BED(l 1 ), BED(c), and BED(r 1 ). The generated decision data are output to the horizontal conditional weighted averager  25 . 
         [0250]    In the example shown in  FIG. 49 , minus four (−4) is input to horizontal epsilon decision units  22 - 1  and  22 - 2  as difference data BED(l 2 ) and BED(l 1 ); zero (0) is input to horizontal epsilon decision units  22 - 3  and  22 - 4  as difference data BED(c) and BED(r 1 ). The difference data BED(l 2 ) to BED(r 1 ) are all equal to or less than ε, so the decision data HEE(l 2 ) to HEE(r 1 ) are all ‘1’. The decision data HEE(l 2 ) to HEE(r 1 ) output from the horizontal epsilon decision units  22 - 1  to  22 - 4  are supplied to the horizontal conditional weighted averager  25 . 
         [0251]    The operation of the horizontal data storage unit  23  will be described with reference to  FIG. 50 . The horizontal data storage unit  23  has the same structure as the data storage unit  7  in the first embodiment, holds data (not the basic data VDM, but vertically filtered data output from the vertical data adder  19 ) for horizontally consecutive pixels in the region surrounded by the bold line TL in  FIG. 50 , for example, and outputs the data simultaneously as HDM(l 2 ), HDM(l 1 ), HDM(c), and HDM(r 1 ). In this example, the third pixel from the left end of the region within the bold line TL in the second line from the top is the pixel of interest, and its horizontal coordinate value is denoted c. In this way, the horizontal data storage unit  23  simultaneously outputs the image data HDM(c) for the pixel of interest P(c), and the image data HDM(l 2 ), HDM(l 1 ), and HDM(r 1 ) for neighboring pixels horizontally consecutive with the pixel of interest. 
         [0252]      FIG. 51  shows the data HDM(k) output from the horizontal data storage unit  23 , the corresponding difference data HED(k) generated by the horizontal difference calculators  24 - 1  to  24 - 4 , and the decision data HEE(k) generated by the horizontal epsilon decision units  22 - 1  to  22 - 4  when the pixel P(c) in  FIG. 50  is the pixel of interest, together with the values of f{ED(k)} obtained in the operation of the horizontal conditional weighted averager  25 . 
         [0253]    In the example shown, the horizontal data storage unit  23  outputs 4Y as HDM(l 2 ) and HDM(l 1 ), and (4Y+3) as HDM(c) and HDM(r 1 ), to the horizontal difference calculators  24 - 1  to  24 - 4 . 
         [0254]    The output of the first horizontal difference calculator  24 - 1  is: 
         [0000]        HED ( l 2)= HDM ( l 2)− HDM ( c )=4 Y −(4 Y+ 3)=−3. 
         [0000]    The output of the second horizontal difference calculator  24 - 2  is: 
         [0000]        HED ( l 1)= HDM ( l 1)− HDM ( c )=4 Y −(4 Y+ 3)=−3. 
         [0000]    The output of the third horizontal difference calculator  24 - 3  is: 
         [0000]        HED ( c )= HDM ( c )− HDM ( c )=(4 Y+ 3)−(4 Y+ 3)=0 
         [0000]    The output of the fourth horizontal difference calculator  24 - 4  is: 
         [0000]        HED ( r 1)= HDM ( r 1)− HDM ( c )=(4 Y+ 3)−(4 Y+ 3)=0 
         [0255]    In this way, the horizontal difference calculators  24 - 1  to  24 - 4  calculate the differences between the image data HDM(c) for the pixel of interest and the image data for four horizontally consecutive pixels surrounding and including the pixel of interest, and output the difference data as HED(l 2 ), HED(l 1 ), HED(c), and HED(r 1 ) to the horizontal conditional weighted averager  25 . 
         [0256]    Concurrent with the output of the difference data with respect of the pixel of interest, the horizontal epsilon decision units  22 - 1  to  22 - 4  output horizontal epsilon decision data HEE(l 2 ), HEE(l 1 ), HEE(c), and HEE(r 1 ) with respect to the same pixel of interest to the horizontal conditional weighted averager  25 . 
         [0257]    The horizontal conditional weighted averager  25  calculates the weighted average of the difference data HED(l 2 ) to HED(r 1 ) conditional on the decision data HEE(l 2 ) to HEE(r 1 ). When the decision data are ‘1’, the difference data are multiplied by respective coefficients a k  and the products are summed; when the decision data are ‘0’, the products are not included in the sum. 
         [0258]    If the coefficients a k  (a l2 , a l1 , a c , a r1 ) are all one-fourth (0.25), then since the decision data HEE(l 2 ) to HEE(r 1 ) are all ‘1’, the output HEM of the horizontal conditional weighted averager  25  is given by equation (13). 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         EM 
                         = 
                           
                          
                         
                           
                             
                               a 
                               12 
                             
                             × 
                             
                               HED 
                                
                               
                                 ( 
                                 12 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               11 
                             
                             × 
                             
                               HED 
                                
                               
                                 ( 
                                 11 
                                 ) 
                               
                             
                           
                           + 
                           
                             
                               a 
                               c 
                             
                             × 
                             
                               HED 
                                
                               
                                 ( 
                                 c 
                                 ) 
                               
                             
                           
                           + 
                         
                       
                     
                   
                   
                     
                       
                           
                          
                         
                           
                             a 
                             
                               r 
                                
                               
                                   
                               
                                
                               1 
                             
                           
                           × 
                           
                             HED 
                              
                             
                               ( 
                               
                                 r 
                                  
                                 
                                     
                                 
                                  
                                 1 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                          
                         
                           
                             0.25 
                             × 
                             
                               - 
                               3 
                             
                           
                           + 
                           
                             0.25 
                             × 
                             
                               - 
                               3 
                             
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                           + 
                           
                             0.25 
                             × 
                             0 
                           
                         
                       
                     
                   
                   
                     
                       
                         ≈ 
                           
                          
                         2 
                       
                     
                   
                 
               
               
                 
                   ( 
                   13 
                   ) 
                 
               
             
           
         
       
     
         [0259]    The above processing is carried out sequentially on the image data VDO supplied from the vertical data adder  19  and the image data DS supplied from the bit extender  5 , each pixel becoming the pixel of interest in turn, so an operation similar to equation (13) is carried out for each successive pixel. 
         [0260]      FIG. 52  shows the weighted average data HEM corresponding to the image data HDM in  FIG. 50 , that is, the weighted average values HEM when the pixel at each pixel position (i, j) is the pixel of interest. The value at each pixel position represents a gray level. The horizontal conditional weighted averager  25  outputs the weighted value HEM to the horizontal data adder  26 . 
         [0261]    The horizontal data adder  26  adds the image data VDO shown in  FIG. 47  to the weighted average HEM shown in  FIG. 52 , and outputs the image data DO shown in  FIG. 53 . The value at each pixel position represents the gray level of the data DO. 
         [0262]    As described above, this embodiment can increase the number of effective gray levels in a region with gradually changing gray levels in at least the horizontal or vertical direction. When the order h of the horizontal epsilon filter is equal to 2 2  (h=4) and the order v of the vertical epsilon filter is equal to 2 2  (h=4), jumps by four (a power of two) gray levels from 4Y to (4Y+4) in a region with gradually changing gray levels as shown in  FIG. 48  can be smoothed out by interpolating levels of (4Y+1), (4Y+2), and (4Y+3). 
         [0263]    As in the first embodiment, if the orders h and v of the epsilon filters are set to values greater than 2 α , an image with gray levels that change more gradually can be obtained. If h and v are powers of two such as 2 α , (2×2 α ) or (2 2 ×2 α ), the epsilon filters can carry out division by bit shifting, which eliminates the need for a divider circuit. 
         [0264]    In the above description, the thresholds ε of the epsilon filters were equal to 2 α , but this is not a limitation. Using thresholds ε greater than 2 α  can not only increase the number of gray levels but also reduce noise. 
         [0265]    The processing steps carried out by the image display apparatus in the third embodiment will be described with reference to the flowchart in  FIG. 54 . It will be assumed in the following description that the order of the epsilon filter is m, and the notation in  FIGS. 36 ,  37 , and  38  will be used. 
         [0266]    First, an image signal SA is input to the input terminal  1 ; the receiver  2  receives the image signal SA and outputs n-bit image data DI (step ST 21 ). 
         [0267]    The image data DI output from the receiver  2  are input to the bit extender  5  in the gray scale expansion processor  3 . The bit extender  5  extends the image data DI by a bits and outputs (n+α)-bit image data DS to the data storage unit  37  (step ST 22 ). 
         [0268]    The vertical data storage unit  15  in the one-dimensional v-order vertical epsilon filter  13  receives the (n+α)-bit image data DS, holds data for v vertically consecutive pixels (v≧2 α ), and outputs the pixel data as VDM( 1 ) to VDM(v) to the vertical difference calculators  16 - 1  to  16 - v  (step ST 23 ). 
         [0269]    The vertical difference calculators  16 - 1  to  16 - v  receive the vertically consecutive pixel data VDM( 1 ) to VDM(v), take differences between the v pixels and the pixel of interest VDM(c), and output the difference data VED( 1 ) to VED(v) to the vertical epsilon decision units  17 - 1  to  17 - v  (step ST 24 ). 
         [0270]    The vertical epsilon decision units  17 - 1  to  17 - v  receive the difference data VED( 1 ) to VED(v) and output decision data VEE( 1 ) to VEE(v) that indicate which difference data to select (step ST 25 ). 
         [0271]    The vertical conditional weighted averager  18  in the one-dimensional v-order vertical epsilon filter  13  receives the difference data VED( 1 ) to VED(v) and the decision data VEE( 1 ) to VEE(v), takes a weighted average of the difference data selected by the decision data, and outputs the weighted average value VEM (step ST 26 ). 
         [0272]    The vertical data adder  19  in one-dimensional v-order vertical epsilon filter  13  receives the weighted average value VEM and the basic data VDM(c) for the pixel of interest, adds VEM and VDM(c), and outputs the result as image data VDO (step ST 27 ). 
         [0273]    The basic data storage unit  20  in the one-dimensional h-order horizontal epsilon filter  14  receives the (n+α)-bit image data DS, holds data for h horizontally consecutive pixels (h≧2 α ), and outputs the data as BDM( 1 ) to BDM(h) (step ST 28 ). 
         [0274]    The basic data difference calculators  21 - 1  to  21 - h  in the one-dimensional h-order horizontal epsilon filter  14  receive the horizontally consecutive data BDM( 1 ) to BDM(h), take differences between the h pixels and the pixel of interest BDM(c), and output the difference data BED( 1 ) to BED(h) (step ST 29 ). 
         [0275]    The horizontal epsilon decision units  22 - 1  to  22 - h  in the one-dimensional h-order horizontal epsilon filter  14  receive the difference data BED( 1 ) to BED(h) and output decision data HEE( 1 ) to HEE(h) that indicate which difference data to select (step ST 30 ). 
         [0276]    The horizontal data storage unit  23  in the one-dimensional h-order horizontal epsilon filter  14  receives the (n+α)-bit image data VDO, holds data for h horizontally consecutive pixels (h≧2 α ), and outputs the data as HDM( 1 ) to HDM(h) (step ST 31 ). 
         [0277]    The horizontal difference calculators  24 - 1  to  24 - h  in the one-dimensional h-order horizontal epsilon filter  14  receive the horizontally consecutive data HDM( 1 ) to HDM(h), take differences between the h pixels and the pixel of interest HDM(c), and output the difference data HED( 1 ) to HED(h) (step ST 32 ). 
         [0278]    The horizontal conditional weighted averager  25  in the one-dimensional h-order horizontal epsilon filter  14  receives the difference data HED( 1 ) to HED(h) and the decision data HEE( 1 ) to HEE(h), takes a weighted average of the difference data selected by the decision data, and outputs the weighted average value HEM (step ST 33 ). 
         [0279]    The horizontal data adder  26  in the one-dimensional h-order horizontal epsilon filter  14  receives the weighted average value HEM and the basic (n+α)-bit data HDM(c) for the pixel of interest, adds HEM and HDM(c), and outputs the result as the image data DO (step ST 34 ). 
         [0280]    The output image data DO are input to the display unit  4 , which displays the image (step ST 18 ). 
         [0281]    Another exemplary structure of the image display apparatus in the third embodiment will be described with reference to  FIG. 55 . The image display apparatus in  FIG. 55  is generally similar to the image display apparatus in  FIG. 36 , but does not include the bit extender  5  in  FIG. 36  and has a bit-extending one-dimensional v-order vertical epsilon filter  29  in place of the one-dimensional v-order vertical epsilon filter  13 . The bit-extending one-dimensional v-order vertical epsilon filter  29  has, for example, the structure shown in  FIG. 56 . 
         [0282]    The bit-extending one-dimensional v-order vertical epsilon filter  29  shown in  FIG. 56  is generally similar to the one-dimensional v-order vertical epsilon filter  13  in  FIG. 37 , but has a different vertical conditional weighted averager  38  and vertical data adder  39 . 
         [0283]    The vertical difference calculators  16 - 1  to  16 - v  and the vertical epsilon decision units  17 - 1  to  17 - v  process n-bit data. The threshold value for vertical epsilon decision units  17 - 1  to  17 - v  is set to ‘1’, because there is no bit extender preceding the epsilon filter  29 . 
         [0284]    The vertical conditional weighted averager  38  calculates a conditional weighted average as described in the example above ( FIG. 45 ), but also calculates bits following the radix point and outputs a of these bits in the weighted average data VEM, which accordingly have (n+α) bits. 
         [0285]    The vertical data adder  39  extends the n-bit input data VDM(c) to (n+α) bits and adds the result to the VEM data. 
         [0286]    The one-dimensional h-order horizontal epsilon filter  14  in  FIG. 55  may be identical to the one-dimensional h-order horizontal epsilon filter  14  shown in  FIG. 38 . 
         [0287]    Although the image display apparatus in  FIG. 55  carries out a bit extension as part of the operation of the vertical epsilon filter  29  instead of at a stage preceding the vertical epsilon filter, this structure can produce the same effect as the structure in  FIG. 36 . 
         [0288]    Examples in which a was equal to two (α=2) and n-bit image data were extended to (n+2) bits were described in the first to third embodiments. These examples are useful when eight-bit digital broadcast television pictures are displayed on a display unit with ten-bit gray-scale resolution, but the present invention is not limited to any particular value of the parameter α. 
         [0289]    Similarly, it was assumed that the threshold ε is 2 α  in the first to third embodiments, but the present invention is not limited to this threshold value. Using values of ε greater than 2 α  can improve the interpolation performance at edges that are not perfectly sharp, and enables the image processing apparatus to remove more noise that may have been present in the original image. 
         [0290]    Since the differences ED(c), ED(c, c), VED(c), and BED(c) between the pixel of interest and itself are always zero and accordingly the results of the epsilon decisions EE(c), EE(c, c), VEE(c), and HEE(c) based on these differences are always ‘1’, it is possible to omit the difference calculators (such as the third difference calculator  8 - 3  in  FIG. 4 , the eleventh difference calculator  8 - 11  in  FIG. 24 , the third vertical difference calculator  16 - 3  in  FIG. 40 , and the third basic data difference calculator  21 - 3  in  FIG. 41 ) for obtaining the differences between the pixel of interest and itself and the epsilon decision units (the third epsilon decision unit  9 - 3  in  FIG. 4 , the eleventh epsilon decision unit  9 - 11  in  FIG. 24 , the third vertical epsilon decision unit  17 - 3  in  FIG. 40 , and the third horizontal epsilon decision unit  22 - 3  in  FIG. 41 ) for determining whether the outputs ED(c), ED(c, c), VED(c), and BED(c) are greater than the threshold ε, and zero (0) may be added unconditionally instead of ED(c), ED(c, c), VED(c), and HED(c) in the conditional weighted averagers  10 ,  18 , and  25 . 
         [0291]    Similarly, the third horizontal difference calculator  24 - 3  in  FIG. 41 , which calculates the difference between identical data HDM(c) and always obtains zero, may be omitted and zero may be added unconditionally instead of HED(c) in the horizontal conditional weighted averager  25 . 
         [0292]    The present invention can be applied to image display apparatus in a liquid crystal, plasma, or other type of television set. 
         [0293]    The conditional weighted averages in the examples above were all simple conditional averages, that is, all weights were equal, but unequal weights may also be used. 
         [0294]    Those skilled in the art will recognize that further variations are possible within the scope of the invention, which is defined in the appended claims.