Abstract:
A method of frame interpolation for frame rate up conversion method is provided. The method includes: determining a first adjusting value and a second adjusting value according to a target pixel in at least one of a first frame and a second frame; determining an interpolated pixel value of the target pixel in an interpolated frame between the first frame and the second frame according to the first adjusting value and a pixel value of the target pixel in one of the first and second frames; and adjusting a pixel value of the target pixel in one of the first and second frames according to the second adjusting value.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    The present invention relates to image processing, and more particularly, to a method of frame interpolation for frame rate up-conversion. 
         [0003]    2. Description of the Prior Art 
         [0004]    In order to meet low-bandwidth requirements, video display applications such as video players or mobile video systems have been limited to low frame rates. But from these sources, some image quality issues such as motion blur and flicker can be improved by increasing the frame rate. Therefore, increasing the frame rate by way of a method of frame interpolation for frame rate up-conversion (FRUC)—that is, interpolating an image frame between two original image frames—is a useful method of improving image quality from low frame rate sources. 
         [0005]    In the prior art method of frame interpolation for frame rate up-conversion, an interpolated pixel value is directly determined to be the same value as that pixel in the previous frame, or is determined as the average of two pixel values from the two adjacent frames. When the prior method of frame interpolation is applied to an LCD display using the pixel value of a previous frame as an interpolated pixel value, however, it is unable to improve motion blur and flicker artifacts, and also fails to shorten the response time of the LCD. When the prior method of frame interpolation is applied to an LCD display using the average pixel value of two adjacent frames as an interpolated pixel value, however, it is capable of improving motion blur and flicker artifacts but still fails to shorten the response time of the LCD. 
         [0006]    Therefore, a novel method of frame interpolation for frame rate up-conversion is required to both improve the motion blur and flicker issues and to shorten the LCD&#39;s response time. 
       SUMMARY OF THE INVENTION 
       [0007]    It is an objective of the claimed invention to provide a method for performing frame interpolation for frame rate up-conversion to solve the above-mentioned problems and enhance image quality. 
         [0008]    According to one embodiment of the claimed invention, a method of frame interpolation for frame rate up-conversion comprises: determining a first adjusting value and a second adjusting value according to a target pixel in at least one of a first frame and a second frame; determining an interpolated pixel value of the target pixel in an interpolated frame between the first frame and the second frame according to the first adjusting value and a pixel value of the target pixel in one of the first and second frames; and adjusting a pixel value of the target pixel in one of the first and second frames according to the second adjusting value. 
         [0009]    These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0010]      FIG. 1  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to a first embodiment of the present invention. 
           [0011]      FIG. 2  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to a second embodiment of the present invention. 
           [0012]      FIG. 3  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to a third embodiment of the present invention. 
           [0013]      FIG. 4  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to a fourth embodiment of the present invention. 
           [0014]      FIG. 5  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to a fifth embodiment of the present invention. 
           [0015]      FIG. 6  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to a sixth embodiment of the present invention. 
           [0016]      FIG. 7  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to a seventh embodiment of the present invention. 
           [0017]      FIG. 8  is a diagram illustrating calculations of the interpolated frame data and the current frame data according to an eighth embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0018]    Please refer to  FIG. 1 .  FIG. 1  is a diagram illustrating calculations of an interpolated pixel value V i     —     1  and an adjusted pixel value in a current frame V c     —     1 ′ according to a first embodiment of the present invention. As shown in  FIG. 1  for a given target pixel, the interpolated pixel value V c     —     1  in an interpolated frame is the sum of a pixel value V c     —     1  in the current frame and a first adjusting value. Additionally, the first adjusting value is a product of a first scaling factor r 1     —     1  and a pixel value difference V d     —     1  between the pixel value V c     —     1  in the current frame and a pixel value V p     —     1  in a previous frame. The calculation is as follows: 
         [0000]        V   i     —     1   =V   c     —     1 +( V   c     —     1   −V   p     —     1 )* r   1     —     1   (1) 
         [0019]    As shown in  FIG. 1  for the given target pixel, the pixel value V c     —     1  in the current frame is greater than the pixel value V p     —     1  in the previous frame, therefore the interpolated pixel value V i     —     1  is greater than the pixel value V c     —     1  in the current frame. In this embodiment, the greater interpolated pixel value V i     —     1  means that the target pixel is operating similar to an LCD overdrive mode. That is, the greater the pixel value difference between the pixel value V p     —     1  in the previous frame and the interpolated pixel value V i     —     1 , the greater the change in the driving voltage of the target pixel. From this, the liquid crystal in the LCD can rotate more rapidly and lead to a faster response time, and thus LCD motion blur can also be reduced accordingly. 
         [0020]    Regarding the given target pixel, however, the above-mentioned interpolated pixel value V i     —     1  is greater than the pixel value V c     —     1  in the current frame, and the average of the interpolated pixel value V i     —     1  and the pixel value in the current frame V c     —     1  is greater than the pixel value in the current frame V c     —     1 , which may result in an improper pixel value displayed on the LCD. To solve this problem, the pixel value V c     —     1  in the current frame needs to be reduced to make the average of the interpolated pixel value V i     —     1  and the adjusted pixel value in the current frame V c     —     1 ′ closer or equal to the pixel value in the current frame V c     —     1 . The adjusted pixel value V c     —     1 ′ in the current frame is determined as follows: 
         [0000]        V   c     —     1   ′=V   c     —     1 −( V   c     —     1   −V   p     —     1 )* r   2     —     1   (2) 
         [0021]    In the above formula (2), r 2     —     1  is a second scaling factor and the adjusted pixel value V c     —     1 ′ in the current frame is utilized to replace the original pixel value V c     —     1  in the current frame as the output pixel value in the current frame. If the second scaling factor r 2     —     1  is set at the same value as the first scaling factor r 1     —     1 , then the average of the interpolated pixel value V i     —     1  and the adjusted pixel value V c     —     1 ′ in the current frame is equal to the original pixel value V c     —     1  in the current frame. 
         [0022]    In practice, the second scaling factor r 2     —     1  can be a product of the first scaling factor r 1     —     1  and a third scaling factor r 3     —     1 . The third scaling factor r 3     —     1  is utilized to adjust the pixel value in the current frame and to further control the luminance of the displayed image. 
         [0023]    Please refer to  FIG. 2 .  FIG. 2  is a diagram illustrating calculations for the interpolated frame data and the current frame data according to a second embodiment of the present invention. The calculations for the interpolated pixel value V i     —     1  and the adjusted pixel value in the current frame V c     —     1 ′ shown in  FIG. 2  are the same as those shown in  FIG. 1 , but applied to the condition where the pixel value in the current frame V c     —     1  is lower than the pixel value V p     —     1  in the previous frame. As shown in  FIG. 2 , the pixel value V c     —     1  in the current frame is lower than the pixel value V p     —     1  in the previous frame, and the interpolated pixel value V i     —     1  is therefore lower than the pixel value V c     —     1  in the current frame. In this embodiment, the greater pixel value difference between the pixel value in the previous frame V c     —     1  and an interpolated pixel value V i     —     1  indicates that the target pixel is operating similar to an LCD overdrive method. 
         [0024]    Additionally, in this embodiment, the adjusted pixel value in the current frame V c     —     1 ′ is set to be greater than the pixel value V c     —     1  in the current frame, so as to make the average of the interpolated pixel value V i     —     1  and the pixel value V c     —     1  in the current frame closer or equal to the original pixel value in the current frame V c     —     1 . 
         [0025]    Please refer to  FIG. 3 .  FIG. 3  is a diagram illustrating calculations for an interpolated pixel value V i     —     2  and an adjusted pixel value in a current frame V c     —     2 ′ according to a third embodiment of the present invention. As shown in  FIG. 3 , for a given target pixel, the interpolated pixel value V i     —     2  in an interpolated frame is the difference between a pixel value V c     —     2  in the current frame and a first adjusting value. Additionally, the first adjusting value is a product of a first scaling factor r 1     —     2  and a pixel value difference V d     —     2  between the pixel value V c     —     2  in the current frame and a pixel value V p     —     2  in the previous frame. The interpolated pixel value V i     —     2  is determined as follows: 
         [0000]        V   i     —     2   =V   c     —     2 −( V   c     —     2   −V   p     —     2 )* r   1     —     2   (3) 
         [0026]    For the given target pixel shown in  FIG. 3 , the pixel value V c     —     2  in the current frame is greater than the pixel value V p     —     2  in the previous frame. The interpolated pixel value V i     —     2  is between the pixel value V c     —     2  in the current frame and the pixel value V p     —     2  in the previous frame. In this embodiment, the interpolated pixel value V i     —     2  is in the middle of the pixel value V C     —     2  in the current frame and the pixel value V p     —     2  in the previous frame, and the displayed image becomes smoother as a result. 
         [0027]    However, the average of the interpolated pixel value V i     —     2  and the pixel value V c     —     2  in the current frame still may be different from the pixel value V c     —     2  in the current frame. Therefore, the pixel value V c     —     2  in the current frame needs to be adjusted, and the adjusted pixel value V c     —     2 ′ in the current frame is determined as follows: 
         [0000]        V   c     —     2   ′=V   c     —     2 +( V   c     —     2   −V   p     —     2 )* r   2     —     2   (4) 
         [0028]    In the above formula (4), r 2     —     2  is a second scaling factor, and the adjusted pixel value V c     —     2 ′ in the current frame is utilized to replace the original pixel value V c     —     2  in the current frame to act as the output pixel value in the current frame. Similarly, if the second scaling factor r 2     —     2  is set as the same value as the first scaling factor r 1     —     2 , the average of the interpolated pixel value V i     —     2  and the adjusted pixel value V c     —     2 ′ in the current frame is equal to the pixel value in the current frame V c     —     2 . 
         [0029]    In practice, the second scaling factor r 2     —     2  can be a product of the first scaling factor r i     —     2  and a third scaling factor r 3     —     2 . The third scaling factor r 3     —     2  is utilized to adjust the pixel value in the current frame and to further control the luminance of the image. 
         [0030]    Please refer to  FIG. 4 .  FIG. 4  is a diagram illustrating calculations for the interpolated frame data and the current frame data according to a fourth embodiment of the present invention. The calculations for the interpolated pixel value V i     —     2  and the adjusted pixel value V c     —     2 ′ in the current frame shown in  FIG. 4  are the same as those shown in  FIG. 3  but applied to a condition whereby the pixel value in the current frame is lower than the pixel value in the previous frame. Further description is omitted here for brevity. 
         [0031]    Please refer to  FIG. 5 .  FIG. 5  is a diagram illustrating calculations for an interpolated pixel value V i     —     3  and an adjusted pixel value V c     —     3 ′ in a current frame according to a fifth embodiment of the present invention. As shown in  FIG. 5 , for a given target pixel, the interpolated pixel value V i     —     3  in an interpolated frame is set by a pixel value V c     —     3  in a previous frame less a first adjusting value. Additionally, the first adjusting value is a product of a first scaling factor r i     —     3  and a pixel value difference V d     —     3  between the pixel value V c     —     3  in the current frame and a pixel value V p     —     3  in a previous frame. The interpolated pixel value V i     —     3  is determined as follows: 
         [0000]        V   i     —     3   =V   p     —     3 −( V   c     —     3   −V   p     —     3 )* r   1     —     3   (5) 
         [0032]    As shown in  FIG. 5 , the pixel value V c     —     3  in the current frame is greater than pixel value V p     —     3  in the previous frame; therefore, the interpolated pixel value V i     —     3  is lower than the pixel value V c     —     3  in the previous frame. 
         [0033]    However, the above-mentioned interpolated pixel value V i     —     3  is lower than the pixel value V p     —     3  in the current frame, and is also much lower than the pixel value V c     —     3  in the current frame. Therefore, the average of the interpolated pixel value V i     —     3  and the pixel value V c     —     3  in the current frame would also be much lower than the pixel value V c     —     3  in the current frame, which may result in an improper pixel value displayed from the LCD. To solve this problem, the pixel value V c     —     3  in the current frame needs to be increased to make the average of the interpolated pixel value V i     —     3  and the pixel value V c     —     3  in the current frame closer or equal to the original pixel value V c     —     3  in the current frame. The adjusted pixel value V c     —     3 ′ in the current frame is calculated as follows: 
         [0000]      V c     —     3 ′=V c     —     3 +(V c     —     3 −V p     —     3 )*r 2     —     3   (6) 
         [0034]    In the above formula (6), r 2     —     3  is a second scaling factor and the adjusted pixel value V c     —     3 ′ in the current frame is utilized to replace the original pixel value V c     —     3  in the current frame to act as the output pixel value in the current frame. If the second scaling factor r 2     —     3  is set as the same value as the first scaling factor r 1     —     3 , the average of the interpolated pixel value V i     —     3  and the adjusted pixel value V c     —     3 ′ in the current frame will be equal to the pixel value V c     —     3  in the current frame. 
         [0035]    In practice, the second scaling factor r 2     —     3  can be a product of the first scaling factor r 1     —     3  and a third scaling factor r 3     —     3 . The third scaling factor r 3     —     3  is utilized to adjust the pixel value in the current frame and to further control the luminance of the image. 
         [0036]    According to the calculations for the interpolated pixel value V i     —     3  and the adjusted pixel value V c     —     3 ′ in the current frame, the difference between the interpolated pixel value V i     —     3  and the adjusted pixel value V c     —     3 ′ in the current frame is greater than the difference between the pixel values V p     —     3  and V c     —     3  in the previous and current frames, respectively. That is, the change in the driving voltage of the target pixel becomes greater, thereby driving the liquid crystal to rotate more rapidly, resulting in a faster response time. 
         [0037]    Please refer to  FIG. 6 .  FIG. 6  is a diagram illustrating calculations for the interpolated frame data and the current frame data according to a sixth embodiment of the present invention. The calculations for the interpolated pixel value V i     —     3  and the adjusted pixel value V c     —     3 ′ in the current frame shown in  FIG. 6  are the same as the calculations shown in  FIG. 5 , but applied to the scenario where the pixel value V c     —     3  in the current frame is lower than the pixel value V p     —     3  in the previous frame. 
         [0038]    For the given target pixel shown in  FIG. 6 , the pixel value V c     —     3  in the current frame is lower than the pixel value V p     —     3  in the previous frame while the interpolated pixel value V i     —     3  is greater than the pixel value V p     —     3  in the previous frame, and the adjusted pixel value V c     —     3 ′ in the current frame is lower than the pixel value V c     —     3  in the current frame. Thus, the difference between the interpolated pixel value V i     —     3  and the adjusted pixel value V c     —     3 ′ in the current frame is greater than the difference between the pixel value V p     —     3  in the previous frame and the original pixel value V c     —     3  in the current frame, resulting in fast response time. 
         [0039]    According to the above-mentioned embodiments of the present invention, the interpolated pixel value and the adjusted pixel value in the current frame are determined by the formulas with fixed parameters (i.e., the first scaling factor r 1     —     1 , r 1     —     2 , r 1     —     3  and the second scaling factor r 2     —     1 , r 2     —     2 , r 2     —     3 ). However, for the varying pixel values in the previous and current frames, the appropriate interpolated pixel values and the adjusted pixel values in the current frame may not be simply determined by the formula with fixed parameters. To solve this problem, the adjusting values can be determined according to a look-up table. 
         [0040]    Please refer to  FIG. 7 .  FIG. 7  is a diagram illustrating calculations of an interpolated pixel value V i     —     4  and an adjusted pixel value V c     —     4 ′ in a current frame according to a seventh embodiment of the present invention. As shown in  FIG. 7 , for a given target pixel, the interpolated pixel value V i     —     4  in an interpolated frame is a sum of a pixel value V p     —     4  in a previous frame and a first adjusting value. The first adjusting value is determined via a look-up table LUT having a plurality of entries. Each entry of the look-up table LUT has two parameters V p     —     4  and V c     —     4  serving as index parameters, where V p     —     4  is a pixel value in the previous frame and V c     —     4  is a pixel value in the current frame. The interpolated pixel value V i     —     4  is determined as follows: 
         [0000]        V   i     —     4   =V   p     —     4   +LUT ( V   p     —     4 ,V c     —     4 )  (7) 
         [0041]    As shown in  FIG. 7  for the given target pixel, the pixel value V c     —     4  in the current frame is greater than the pixel value V p     —     4  in the previous frame. The interpolated pixel value can be properly determined according to the look-up table to achieve better image quality. Additionally, an adjusted pixel value in the current frame V c     —     4 ′ can be determined using the look-up table similarly: 
         [0000]        V   c     —     4   ′=V   c     —     4   −LUT ( V   p     —     4 ,V c     —     4 )  (8) 
         [0042]    The adjusted pixel value V c     —     4 ′ in the current frame is utilized to replace the pixel value in the current frame V c     —     4 , in order to make the average of the interpolated pixel value V i     —     4  and the adjusted pixel value V c     —     4 ′ in the current frame equal to the original pixel value in the current frame V c     —     4 . 
         [0043]    Please refer to  FIG. 8 .  FIG. 8  is a diagram illustrating calculations for the interpolated frame data and the current frame data according to an eighth embodiment of the present invention. The calculations for the interpolated pixel value V i     —     4  and the adjusted pixel value V c     —     4 ′ in the current frame shown in  FIG. 8  are the same as those shown in  FIG. 7 , but applied in a scenario where the pixel value in the current frame is lower than the pixel value in the previous frame. Similarly, the interpolated pixel value V i     —     4  and the adjusted pixel value V c     —     4 ′ are both determined by using the look-up table LUT. Further description is omitted here for brevity. 
         [0044]    Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention.