Abstract:
Provided are an image compression method and apparatus for differentially encoding digital image signals based on a Joint Photographic Experts Group (JPEG) image compression standard. RGB image signals are converted to luminance and chrominance data. Pixels of converted chrominance components are compared, difference values between the compared pixels are obtained, and representative pixel values are determined by comparing the obtained difference value and an allowable error. The representative pixel values are encoded. A data compression ratio can be improved by discrete-cosine-transforming only portions of an image having different colors from a background color.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    This application claims the priority of Korean Patent Application No. 2002-34876 filed Jun. 21, 2002, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.  
           [0002]    1. Field of the Invention  
           [0003]    The present invention relates to an image compression system, and more particularly, to an image compression method and apparatus for differentially encoding digital image signals based on a Joint Photographic Experts Group (JPEG) image compression standard.  
           [0004]    2. Description of the Related Art  
           [0005]    A variety of compression and decompression techniques have been suggested in order to increase transmission efficiency and to easily record/reproduce and process digital image signals when storing the digital image signals in a recording medium or transmitting the digital image signals using a communication cable.  
           [0006]    Representative techniques for compressing and decompressing image signals include Motion Picture Experts Group (MPEG) techniques related to compression and decompression of motion pictures and JPEG techniques widely used for compressing and decompressing stationary pictures.  
           [0007]    A JPEG standard is used to compress stationary pictures and transmit user images in image telephones using a public switched telephone network (PSTN) in which transmission bandwidth is limited and enables dynamic telecommunication by sequentially transmitting and displaying several image frames.  
           [0008]    Also, in digital video recorders (DVRs), a compression method using JPEG compression is employed. Although the compression method using JPEG, which compresses stationary pictures, is simple and efficient, greater improvements in data compression ratio is required to store and sequentially display several frames and to transmit the frames because the compression is for stationary pictures.  
           [0009]    [0009]FIG. 1 is a block diagram illustrating an image compression method using general JPEG compression. Referring to FIG. 1, a color mode converter  110  converts RGB image data to luminance (Y) and chrominance (Cb, Cr) data. A down sampler  120  leaves luminance components as they are and down samples only chrominance components (Cb, Cr). A discrete cosine transformer (DCT)  130  discrete-cosine-transforms the down sampled image data. A quantizer  140  quantizes the discrete-cosine-transformed image data (DCT coefficients). A Huffman coder  150  variable-length-codes the quantized image data.  
           [0010]    Accordingly, stationary images are compressed using such a JPEG format. Here, a predetermined background color exists in a natural image. For example, a background color in an image in which a skier glides down a mountain covered with snow is white. Also, the entire background color in an image showing a sea landscape is blue. However, since an existing JPEG encoding algorithm performs discrete cosine transformation (DCT) of all pixel values representing images, the existing JPEG encoding algorithm is computationally complex, which results in a long encoding time.  
         SUMMARY OF THE INVENTION  
         [0011]    Accordingly, the present invention provides a method and apparatus for differentially encoding images by which a data compression ratio can be improved by performing DCT only for portions of the images having different colors from a background color.  
           [0012]    According to an aspect of the present invention, there is provided a method of compressing image data. RGB image signals are converted to luminance and chrominance data. Chrominance components of converted pixels are compared, difference values between the chrominance components of compared pixels are obtained, and representative pixel values are determined by comparing the obtained difference value and an allowable error. The representative pixel values are encoded.  
           [0013]    According to another aspect of the present invention, there is also provided an apparatus for compressing image data. The apparatus includes a color mode converter, a representative value determiner, a discrete cosine transformer, a quantizer, and a Huffman coder. The color mode converter converts RGB data to luminance and chrominance data. The representative value determiner compares chrominance components of pixels converted by the color mode converter, obtains difference values between the chrominance components of compared pixels, and determines representative pixel values by comparing the obtained difference value and an allowable error. The discrete cosine transformer discrete-cosine-transforms the representative pixel values of the chrominance data determined by the representative value determiner in each block. The quantizer quantizes the image data discrete-cosine-transformed by the discrete cosine transformer. The Huffman coder variable-length-codes the image data quantized by the quantizer. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0014]    The above aspects and advantages of the present invention will become more apparent by describing in detail preferred embodiments thereof with reference to the attached drawings in which:  
         [0015]    [0015]FIG. 1 is a block diagram illustrating a method for compressing an image using a general Joint Photographic Experts Group (JPEG) image compression standard;  
         [0016]    [0016]FIG. 2 is a block diagram of a JPEG-based differential encoder according to the present invention;  
         [0017]    [0017]FIG. 3 is a detailed diagram of a representative value generator;  
         [0018]    [0018]FIG. 4 is a view illustrating chrominance data in an 8×8 block to which an encoding method of the present invention is applied; and  
         [0019]    [0019]FIG. 5 is a flowchart illustrating a JPEG-based differential encoding method according to the present invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0020]    Hereinafter, a preferred embodiment of the present invention will now be described with reference to the attached drawings.  
         [0021]    [0021]FIG. 2 is a block diagram of a differential encoder according to the present invention. The differential encoder includes a color mode converter  210 , a down sampler  220 , a representative value determiner  230 , a discrete cosine transformer (DCT)  240 , a quantizer  250 , and a Huffman coder  260 .  
         [0022]    Referring to FIG. 2, the color mode converter  210  coverts RGB data to luminance (Y) and chrominance (Cb, Cr) data.  
         [0023]    The down sampler  220  leaves luminance components as they are and down samples only chrominance (Cb, Cr) components. In other words, the down sampling of image data reduces chrominance (Cb, Cr) values to which a human being&#39;s vision is not sensitive, to half and leaves luminance (Y) information to which a human being&#39;s vision is sensitive and which influences image quality, as it is.  
         [0024]    The representative value determiner  230  compares the down sampled chrominance data of pixels, obtains difference values between the chrominance data of the compared pixels, and determines representative pixel values by comparing the obtained difference value and an allowable error.  
         [0025]    The DCT  240  performs discrete cosine transformation of luminance data and chrominance data determined as representative values in each 8×8 block.  
         [0026]    The quantizer  250  quantizes the discrete-cosine-transformed image data (DCT coefficients). Here, quantization is a process of replacing the discrete-cosine-transformed image data with appropriate representative values within a range of an image signal.  
         [0027]    The Huffman coder  260  variable-length-codes the quantized image data. This Huffman coding is a type of an entropy lossless compression method in which relatively short code words are assigned to frequently appearing data symbols and long code words are assigned to other data symbols based on statistical information of the data symbols so as to reduce the entire size of the image data.  
         [0028]    [0028]FIG. 3 is a detailed diagram illustrating a representative value determiner. Referring to FIG. 3, a pixel comparator  310  compares chrominance components of pixels. Here, the pixel comparator  310  determines an allowable error suitable for color response sensitivity according to a human being&#39;s visual sensation characteristics. For example, when pixel values are compared by determining an allowable error of 3, if a first pixel value is 35, a next pixel value within a range of 35-37 is regarded as 35. Here, as the determined allowable error increases, both an image compression ratio and image loss increases. Therefore, the allowable error is determined in consideration of a trade-off between the image compression ratio and the image loss.  
         [0029]    A representative value generator  320  compares the chrominance components of pixels, obtains difference values between the chrominance components of compared pixels, and determines representative pixel values by comparing the obtained difference value and an allowable error. For example, it is assumed that the allowable error is  3  and values of chrominance signals are arranged in the order of “35, 36, 37, 42, 44, 56, 71, 72, 73, . . . ” as shown in FIG. 4( a ). As such, a first representative value is 35. Next values 36 and 37 may be replaced with the representative value 35. Then, a next representative value is 42 and a value 44 may be replaced with the representative value 42.  
         [0030]    A representative value table generator  330  generates a table representing the representative values generated by the representative value generator  320  and information on representative values constituting an image. For example, a table representing the representative values may be generated in the order of “35, 42, 56, and 71” as shown in FIG. 4( b ) and a table representing information on the representative values of the image may be generated in the order of “(35, 3), (42, 2), (56, 1), and (71, 58)” as shown in FIG. 4( c ). Also, new representative values are added to the tables in ascending order.  
         [0031]    [0031]FIG. 5 is a flowchart illustrating a JPEG-based differential encoding method according to the present invention. First, representative tables RT are stored in the form of “V 1 , V 2 , V 3  . . . ” and representative information tables are stored in the form of “(V 1 , a), (V 2 , b), (V 3 , c), (V 2 , d) . . . ” 
         [0032]    If chrominance data is input, in step  510 , a first pixel value V 1  is stored in a representative value table RT and simultaneously used to set a reference pixel value V b  which will be compared with a next pixel value.  
         [0033]    Next, in step  520 , an allowable error x is determined so as to be suitable for color response sensitivity according to a human being&#39;s visual sensation characteristics.  
         [0034]    In step  530 , a next pixel value is compared with the reference value V b  to determine whether a difference value between the next pixel value and the reference value V b  is within the allowable error x. Here, if it is determined that the difference value between the next pixel value and the reference value V b  is within the allowable error x, in step  532 , the reference value V b  is regarded as the next pixel value and the number, or the count, of reference value V b  increases.  
         [0035]    In step  530 , if it is determined that the difference value between the next pixel value and the reference value V b  is not within the allowable error x, in step  540 , representative values in a current representative value table RT are compared with the next pixel to search for representative values within the allowable error x.  
         [0036]    Here, if it is found by the comparison of the representative values of the current representative value table RT and the next pixel value that the representative values are not within the allowable error x, in step  550 , the next pixel value is stored in the current representative value table RT in ascending order. For example, if the next pixel value is greater than the reference value V b , the next pixel value is stored after a current reference value V b  in the current representative value table RT. If the next pixel value is smaller than the reference value V b , the next pixel value is stored before the current reference value V b  in the current representative value table RT. Also, the stored next pixel value is regarded as a new reference value (V b+1  or V b−1 ). The number of the new reference value (V b+1  or V b−1 ) is initialized to 1 and information on the number of new reference value (V b+1  or V b−1 ) is stored in the current representative value table RT.  
         [0037]    In contrast, if in step  540 , it is found by the comparison of the representative values of the current representative value table RT and the next pixel value that a representative value is within the allowable error x, in step  542 , the representative value stored in the current representative value table RT is regarded as the next pixel value, and the representative value becomes a new reference value V T  and is compared with next pixel values. The number of new reference value V T  is initialized to 1.  
         [0038]    Accordingly, in step  560 , the representative values of the chrominance data and information related to the representative values are stored in the current representative value table RT until the end of an image block is detected.  
         [0039]    Finally, after the end of the image block is detected, in step  570 , the representative values of the completed representative value table are discrete-cosine-transformed.  
         [0040]    As described above, according to the present invention, a JPEG image has a predetermined background color tone. Also, in an existing JPEG encoding algorithm, DCT operation accounts for 30%-40% of the entire operation time. Accordingly, by discrete-cosine-transforming only portions of an image having different colors from a background color using a differential encoding method according to the present invention, a data compression ratio of the entire image data can be increased and the number of times that DCT is performed can be reduced.  
         [0041]    The present invention is not limited to the above-described embodiment and it will be apparent to one of ordinary skill in the art that modifications of the described embodiment may be made without departing from the spirit and scope of the invention. Also, the present invention can be realized as computer-readable code in a computer-readable recording medium. Computer-readable recording media include all kinds of recording apparatuses which store computer-readable data. Computer-readable recording media include ROMs, RAMs, CD-ROMs, magnetic tapes, hard discs, floppy discs, flash memory, optical data storing apparatus, and so forth. Computer-readable recording media also includes apparatuses realized in the form of a carrier wave (e.g., transmission via the Internet). Furthermore, computer-readable recording media can store data distributed in computers connected to each other via a network as code that the computers can read according to a distribution method and execute the code.