Abstract:
An image scaling method for calculating a pixel value of a target pixel within a scaled image block is disclosed. The method includes selecting a plurality of reference pixels from the image block, wherein each reference pixel has a pixel value and corresponds to a transparency parameter; respectively setting a corresponding weight value for each reference pixel; adjusting the weight values according to the transparency parameters of the reference pixels; and blending the pixel values of the reference pixels to generate the pixel value of the target pixel according to the adjusted weight values of the reference pixels.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     The present invention relates to an image scaling method and apparatus, and more particularly, to an image scaling method and apparatus in a digital television.  
         [0003]     2. Description of the Prior Art  
         [0004]     As conventional analog video broadcasting is transforming to digital video broadcasting (DVB), digital televisions become more popular.  
         [0005]     The digital television signals include video data and caption data, wherein the caption data is generally a subtitle or a closed caption such as scripts, logos, scrolling banners, etc. Typically, different circuits process the video data and the caption data respectively. The processed video data, processed caption data, and other information are then mixed by a video mixer/blender to form a composite frame.  
         [0006]     When a user enables a television function that changes the size of the pictures (e.g., the picture-in-picture (PIP) function), the sizes of both the video data and the caption data must be scaled. Well known in the art, the foreground pixels and the background pixels of the caption data are represented with a pixel format containing a transparency parameter (e.g., an α value) such as the ARGB or AYC b C r  format during the scaling operations. The foreground pixel and the background pixel have distinct α values, so, the following stages such as the video mixer/blender, can differentiate the foreground and the background of the caption accordingly.  
         [0007]     The conventional art typically scales the caption data by interpolation. Unfortunately, gradient colors, sawtooth phenomenon, and other undesirable problems usually appear on the edge of the foreground of the scaled caption and thereby deteriorate the smoothness and sharpness of the scaled caption data.  
       SUMMARY OF THE INVENTION  
       [0008]     It is therefore an objective of the claimed invention to provide an image scaling method and apparatus to solve the above-mentioned problems.  
         [0009]     It is therefore an objective of the claimed invention to provide an image scaling method and apparatus to improve the smoothness and the sharpness of the foreground of the scaled image.  
         [0010]     It is therefore an objective of the claimed invention to provide an image scaling method and apparatus to eliminate the background color left on the edge of the scaled foreground.  
         [0011]     According to an exemplary embodiment of the present invention, an image scaling method for calculating a pixel value of a target pixel within a scaled image block is disclosed comprising: selecting a plurality of reference pixels from the image block, wherein each reference pixel has a pixel value and corresponds to a transparency parameter; respectively setting a corresponding weight value for each reference pixel; adjusting the weight values according to the transparency parameters of the reference pixels; and blending the pixel values of the reference pixels to generate the pixel value of the target pixel according to the adjusted weight values of the reference pixels.  
         [0012]     According to an exemplary embodiment of the present invention, an image scaling device for calculating a pixel value of a target pixel within a scaled image block is disclosed comprising: a selecting device for selecting a plurality of reference pixels from the image block, wherein each reference pixel has a pixel value and corresponds to a transparency parameter; a weight value setting unit coupled to the selecting device for respectively setting a corresponding weight value for each reference pixel and for adjusting the weight values according to the transparency parameters of the reference pixels; and a computing device coupled to the selecting device and the weight value setting unit for blending the pixel values of the reference pixels to generate the pixel value of the target pixel according to the adjusted weight values of the reference pixels.  
         [0013]     According to an exemplary embodiment of the present invention, an image scaling method for calculating a pixel value of a target pixel within a scaled image block is disclosed comprising: selecting a plurality of reference pixels from the image block, wherein each reference pixel has a pixel value and corresponds to a transparency parameter; respectively setting a corresponding weight value for each reference pixel according to the transparency parameter of the reference pixel; and blending the pixel values of the reference pixels to generate the pixel value of the target pixel according to the weight values of the reference pixels; wherein the reference pixel with a transparency parameter less than or equal to a predetermined value is defined as a background pixel and the reference pixel with a transparency parameter greater than the predetermined value is defined as a foreground pixel.  
         [0014]     According to the exemplary embodiment of the present invention, an image scaling device for calculating a pixel value of a target pixel within a scaled image block is disclosed comprising: a selecting device for selecting a plurality of reference pixels from the image block, wherein each reference pixel has a pixel value and corresponds to a transparency parameter; a weight value setting unit coupled to the selecting device for respectively setting a corresponding weight value for each reference pixel according to the transparency parameter of the reference pixel; and a computing device coupled to the weight value setting unit for blending the pixel values of the reference pixels to generate the pixel value of the target pixel according to the weight values of the reference pixels; wherein the reference pixel with a transparency parameter less than or equal to a predetermined value is defined as a background pixel and the reference pixel with a transparency parameter greater than the predetermined value is defined as a foreground pixel.  
         [0015]     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  
       [0016]      FIG. 1  is a simplified block diagram of an image scaler according to one embodiment of the present invention.  
         [0017]      FIG. 2  is a flowchart illustrating the operations of the image scaler of  FIG. 1  as it scales a caption block according to one embodiment of the present invention.  
         [0018]      FIG. 3  is a schematic diagram of interpolating pixels of a caption block in accordance with the present invention.  
         [0019]      FIG. 4  is schematic diagram of a look-up table of  FIG. 1  according to one embodiment of the present invention. 
     
    
     DETAILED DESCRIPTION  
       [0020]     Please refer to  FIG. 1 , which shows a simplified block diagram of an image scaler  100  according to one embodiment of the present invention. The image scaler  100  scales the caption data such as scripts, TV station logos, scrolling banners and so forth. The scaled data is then transmitted to a video mixer to be mixed with other image data. As shown in  FIG. 1 , the image scaler  100  comprises a selecting device  110 , a weight value setting unit  120 , and a computing device  130 . The operations of the image scaler  100  are described by flowcharts in detail below.  
         [0021]      FIG. 2  depicts a flowchart  200  illustrating the operations of the image scaler  100  as it scales a caption block according to one embodiment of the present invention. For convenient descriptions, a schematic diagram  300  of pixels shown in  FIG. 3  is referred when elaborating the steps of the flowchart  200 .  
         [0022]     Firstly, in Step  202 , the selecting device  110  of the image scaler  100  receives data SUB corresponding to a caption block and selects a plurality of reference pixels from the caption block. For example, the selecting device  110  may select four reference pixels from the caption block such as pixels  310 ,  320 ,  330 , and  340  shown in  FIG. 3 .  
         [0023]     In Step  204 , the weight value setting unit  120  sets weight values W 1 , W 2 , W 3 , and W 4  corresponding to the reference pixels  310 ,  320 ,  330 , and  340 , respectively. Then, in Step  206 , the computing device  1   30  calculates the transparency parameters of the target pixels to be interpolated such as the target pixels  312 ,  314 ,  316 ,  322 ,  324 ,  326 ,  332 ,  334 , and  336  by blending the transparency parameters of the reference pixels  310 ,  320 ,  330 , and  340  according to the weight values W 1 , W 2 , W 3 , and W 4 . In this embodiment, the transparency parameter is the α value of the pixel.  
         [0024]     In order to solve the undesirable results such as gradient colors or the sawtooth phenomenon that appear along the edge of the foreground of the scaled caption in the prior art, the image scaler  100  of this embodiment performs Step  208  before the computing device  130  calculates the RGB values of the target pixel to be interpolated. In Step  208 , the weight value setting unit  120  is utilized for redistributing the weight values of the background pixels to the foreground pixels. As mentioned above, the weight value setting unit  120  can differentiate the foreground pixel and the background pixel according to the α value of the reference pixel. For example, if the α value of the background pixel of the caption data is equal to a predetermined value, such as zero, a reference pixel that has a α value greater than zero is defined as a foreground pixel.  
         [0025]     In a preferred embodiment, the image scaler  100  further comprises a storage unit  140  as shown in  FIG. 1 . The storage unit  140  is utilized for storing a look-up table  142  containing and recording rules for adjusting the weight values of the plurality of reference pixels. As a result, the weight value setting unit  120  can perform Step  208  according to the look-up table  142 .  
         [0026]      FIG. 4  is schematic diagram of a look-up table  142  of  FIG. 1  according to one embodiment of the present invention. The look-up table  142  is stored in the storage unit  140 . In practice, the storage unit  140  may be a volatile memory or a non-volatile memory. In the look-up table  142 , α 1 , α 2 , α 3 , and α 4  are recorded in a first row  410  and respectively correspond to the α value of the reference pixels  310 ,  320 ,  330 , and  340  while W 1 ′, W 2 ′, W 3 ′, and W 4 ′ respectively correspond to the adjusted weight value of the reference pixels  310 ,  320 ,  330 , and  340 . For example, if all the α 1 , α 2 , α 3 , and α 4  are greater than zero, meaning that the reference pixels  310 ,  320 ,  330 , and  340  are located in the foreground of the caption block, the weight value setting unit  120  sets: W 1 ′=W 1 , W 2 ′=W 2 , W 3 ′=W 3 , and W 4 ′=W 4  according to the distribution rules recorded in a row  420  of the look-up table  142  in Step  208 . In other words, the weight values of the reference pixels  310 ,  320 ,  330 , and  340  remain. Suppose that the α 1 , α 2  and α 3  are greater than zero while the ′ 4  is equal to zero, meaning that the reference pixels  310 ,  320  and  330  are located in the foreground of the caption block while the reference pixel  340  is located in the background, then the weight value setting unit  120  redistributes the weight value W 4  of the reference pixel  340  to the reference pixel  330  according to the distributing rules recorded in a row  430  of the look-up table  142 . As a result, the adjusted weight value W 3 ′ of the reference pixel  330  becomes the value W 3 +W 4  while the adjusted weight value W 4 ′ of the reference pixel  340  becomes zero.  
         [0027]     In another situation, suppose that the reference pixels  310  and  320  are located in the foreground, meaning that both the α 1  and ′ 2  are greater than zero while the reference pixels  330  and  340  are located in the background, meaning that both the ′ 3  and ′ 4  are equal to zero. In Step  208 , the weight value setting unit  120  redistributes the weight values W 3  and W 4  of the reference pixels  330  and  340  to the reference pixel  320  according to the distribution rules recorded in a row  450  of the look-up table  142 . Accordingly, the adjusted weight value W 2 ′ of the reference pixel  320  becomes the value  1 -W 1  while both the adjusted values W 3 ′ and W 4 ′ of the reference pixels  330  and  340  become zero.  
         [0028]     In Step  210 , the computing device  130  blends the RGB values of the reference pixels  310 ,  320 ,  330 , and  340  to obtain the RGB values of the plurality of target pixels to be interpolated according to the adjusted weight values W 1 ′, W 2 ′, W 3 ′, and W 4 ′.  
         [0029]     The order of the aforementioned Steps is merely an embodiment and does not limit the application of the present invention. For example, Step  206  can be performed after Step  210  is complete.  
         [0030]     In practice, the computing device  130  can be implemented with a digital filter and the weight values configured by the weight value setting unit  120  in Steps  204  and  208  are the coefficients of the digital filter. The digital filter can use up-sampling to calculate the a value or the RGB values of the plurality of target pixels to be interpolated. Up-sampling operations are well known in the art and further details are therefore omitted. Note that the number of target pixels to be interpolated by the computing device  130  is a design choice and not limited to any specific number. In other embodiments, the computing device  130  may select a proper number of pixels among the plurality of interpolated target pixels and the existing pixels to form a scaled caption data SUB′ according to the scaling ratio.  
         [0031]     As in the foregoing illustrations, the combination of weight values of the plurality of reference pixels utilized by the image scaler  100  when calculating the α value of a target pixel is different from the combination of weight values utilized by the image scaler  100  when calculating the RBG values of the target pixel. When the image scaler  100  calculates the RGB values of a target pixel according to a plurality of reference pixels, the image scaler  100  first redistributes the weight values of the reference pixels located in the background to the reference pixels located in the foreground and then performs a weight blending operation according to the adjusted weight values. In other words, the weights of the foreground pixels are increased during the calculations of the RGB values of the target pixel, meaning that the sum of weight values of the foreground pixels is greater than the sum of weight values of the background pixels. As a result, the undesirable problem that the RGB values of the background pixels mix with the scaled foreground pixels is well solved.  
         [0032]     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. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.