WO2007027004A2 - System, medium, and method encoding and/or decoding image data - Google Patents

System, medium, and method encoding and/or decoding image data Download PDF

Info

Publication number
WO2007027004A2
WO2007027004A2 PCT/KR2006/002744 KR2006002744W WO2007027004A2 WO 2007027004 A2 WO2007027004 A2 WO 2007027004A2 KR 2006002744 W KR2006002744 W KR 2006002744W WO 2007027004 A2 WO2007027004 A2 WO 2007027004A2
Authority
WO
WIPO (PCT)
Prior art keywords
quantization
quantization coefficient
pixel values
image data
variable
Prior art date
Application number
PCT/KR2006/002744
Other languages
French (fr)
Inventor
Woo-Shik Kim
Hyun-Mun Kim
Dae-Sung Cho
Dmitri Birinov
Dae-Hee Kim
Original Assignee
Samsung Electronics Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co., Ltd. filed Critical Samsung Electronics Co., Ltd.
Publication of WO2007027004A2 publication Critical patent/WO2007027004A2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Definitions

  • Embodiments of the present invention relate to encoding and/or decoding of image data, and more particularly, to a system, medium, and method encoding and/or decoding image data using adaptive quantization based on the number of bits per pixel in an input image.
  • An image acquired by a camera may be displayed with an appropriate size, e.g., with a number of pixels, through sampling.
  • the number of bits required to represent the value of each pixel is determined.
  • the number of bits has gradually increased also due to the advancing development of image devices. For example, although 8 bits have been used in many fields, recently, 10 or 12 bits have been used in application fields where high quality images are desired.
  • VC-I Compressed Video Bitstream Format and Decoding Process
  • SMPTE Society of Motion Picture and Television Engineers
  • the number of bits per pixel is fixed to 8 bits per pixel.
  • 8-bit image is popularly used for image coding schemes, the image quality of the 8-bit image is limited.
  • the present inventors have found that it is desirable to provide a quantization scheme suitable even for a images having more than 8 bits per pixel. Disclosure of Invention
  • Embodiments of the present invention provide a system, medium, and method for encoding and/or decoding image data to obtain a high quality image at a high compression ratio by automatically performing adaptive quantization according to the number of bits per pixel.
  • embodiments of the present invention include an image data encoding system, including a quantization co- efficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of an image being encoded by adjusting a quantization variable, a quantization unit to quantize pixel values based on the quantization coefficient, and an entropy encoder generating a bitstream of the quantized pixel values.
  • the system may further include a transformer to transform pixel values of the image in a time domain to the pixel values in a frequency domain and to output the pixel values to the quantization coefficient determiner for determining of the quantization coefficient.
  • the quantization coefficient determiner may adjust a range of quantization variables based on a range of pixel values that is extended according to a change in the number of bits per pixel.
  • the quantization coefficient determiner may determine the quantization coefficient based on the adjusted range of quantization variables.
  • the quantization coefficient determiner may further determine the quantization coefficient so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
  • the quantization coefficient determiner may still further determine the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel value values.
  • the quantization coefficient determiner may determine the quantization coefficient according to the change in the number of bits by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
  • the quantization variable may further be defined by a user.
  • embodiments of the present invention include a system, including a quantization coefficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of an image by adjusting a quantization variable, and a quantization unit to quantize or dequantize pixel values based on the quantization coefficient.
  • the system may further include a transformer to transform pixel values of the image in a time domain to the pixel values in a frequency domain and to output the pixel values to the quantization coefficient determiner for determining of the quantization coefficient.
  • the system may be an encoder system, with the system further including a bitstream generator to generate the bitstream with the quantized pixel values.
  • the system may be a decoder system
  • the quantization unit may be a dequantization unit that dequantizes the pixel values, with the system further including an entropy decoder to decode a bitstream containing the pixel values of the image.
  • embodiments of the present invention include an image data decoding system, including an entropy decoder to decode a bitstream of pixel values of an image, a quantization coefficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of the image by adjusting a quantization variable, and a dequantization unit to dequantize pixel values decoded by the entropy decoder based on the determined quantization coefficient.
  • the system may further include a detransformer to detransform the dequantized pixel values from a frequency domain into a time domain.
  • the quantization coefficient determiner may further adjust a range of quantization variables based on a range of pixel values that is extended according to a change in the number of bits per pixel.
  • the quantization coefficient determiner may determine the quantization coefficient based on the adjusted range of quantization variables.
  • the quantization coefficient determiner may determine the quantization coefficient so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
  • the quantization coefficient determiner may still further determine the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
  • the quantization coefficient determiner may determine the quantization coefficient according to the change in the number of bits by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
  • the dequantization unit may dequantize the pixel values based on the quantization coefficient adjusted according to the number of bits per pixel in the quantization coefficient determiner.
  • the quantization variable may be defined by a user.
  • embodiments of the present invention include an image data encoding method, including determining a quantization coefficient corresponding to a number of bits per pixel of an image by adjusting a quantization variable, quantizing pixel values of the image based on the determined quantization coefficient, and generating a bitstream of the quantized pixel values.
  • the method may further include transforming pixel values of the image in a time domain to the pixel values in a frequency domain for the determining of the quantization coefficient.
  • a range of quantization variables may be adjusted based on a range of pixel values that is extended according to a change in the number of bits per pixel.
  • the quantization coefficient may be determined based on the adjusted range of quantization variables.
  • the quantization coefficient may be determined so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
  • the quantization coefficient may be determined by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
  • the quantization coefficient according to the change in the number of bits may be determined by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
  • the quantization variable may further be defined by a user.
  • embodiments of the present invention include an image data decoding method, including decoding a bitstream of pixel values of an image, determining a quantization coefficient corresponding to a number of bits per pixel of the image by adjusting a quantization variable, and dequantizing the pixel values based on the determined quantization coefficient.
  • the method may further include detransforming the dequantized pixel values from a frequency domain into a time domain.
  • a range of quantization variables may be adjusted based on a range of pixel values that is extended according to a change in the number of bits per pixel.
  • the quantization coefficient may be determined based on the adjusted range of quantization variables.
  • the quantization coefficient may be determined so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
  • the quantization co- efficient may be determined by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
  • the quantization coefficient according to the change in the number of bits may be determined by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
  • the pixel values may be de- quantized based on the quantization coefficient adjusted according to the number of bits per pixel.
  • the quantization variable may further be defined by a user.
  • embodiments of the present invention include at least one medium including computer readable code to implement embodiments of the present invention.
  • adaptive encoding and/or decoding according to the number of bits per pixel can be performed by minimally changing the configuration of conventional systems, such as the aforementioned VC-I standard system.
  • FlG. 1 illustrates an image data encoding system, according to an embodiment of the present invention
  • FlG. 2 illustrates an image data decoding system, according to an embodiment of the present invention
  • FlG. 3 illustrates an image data encoding method, according to an embodiment of the present invention.
  • FlG. 4 illustrates an image data decoding method, according to an embodiment of the present invention.
  • FIG. 1 illustrates an image data encoding system, according to an embodiment of the present invention.
  • the image data encoding system may include a temporal predictor 100, a transformer 110, a quantization coefficient determiner 120, a quantization unit 130, a dequantization unit 140, a detransformer 150, a temporal prediction compensator 160, and an entropy encoder 170, for example.
  • the temporal predictor 100 temporally predicts pixel values of a current block using a previous block, in the time domain, and may output the prediction result to the transformer 110.
  • the temporal predictor 100 predicts the current image frame p. by estimating motion in a previous image frame
  • the temporal predictor 100 searches the previous frame
  • the transformer 110 transforms pixel values of an image in the time domain to pixel values in the frequency domain and outputs the transform result to the quantization coefficient determiner 120.
  • an orthogonal transform encoding method may be used as the transforming method, for example.
  • orthogonal transform encoding methods examples include a fast Fourier transform (FFT) method, a discrete cosine transform (DCT) method, a Karhunen Loeve transform (KLT) method, an Hadamard transform method, and slant transform method, which are widely used.
  • the pixel values transformed into the frequency domain, by the transformer 110 may be classified into a DC component corresponding to a low frequency domain and an AC component corresponding to a high frequency domain.
  • the DC component references a transformed pixel value in the low frequency domain, which corresponds to coordinates (0,0), for example, and the AC component references the other pixel values.
  • the quantization coefficient determiner 120 determines a quantization coefficient corresponding to the number of bits per pixel of the image by adjusting a quantization variable defined by the user and outputs the determination result to the quantization unit 130 and the dequantization unit 140.
  • the quantization variable may be a value defined by the user, and the number
  • the quantization coefficient means a quantization value used for quantization.
  • An objective of embodiments of the present invention is to determine a quantization value based on a change in the number of bits per pixel of an image.
  • the quantization coefficient determiner 120 may adjust the range of quantization variables based on the range of pixel values that is extended based on the change in the number of bits per pixel.
  • the extended range ( 2 ( N a) ) of pixel values means the range of pixel values extended due to the changed pixel values.
  • 'a' corresponds to the number of bits expressing an existing pixel.
  • the quantization coefficient determiner 120 determines a quantization coefficient so that an existing quantization step is maintained constant regardless of a change in the number of bits per pixel, for example.
  • the quantization coefficient determiner 120 may obtain the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable defined by the user, for example.
  • the quantization variable e.g., defined by the user, has a range of [1, 31]. Accordingly, it is desirable to make encoding possible even when the number of bits per pixel of the input image is larger than 8, e.g., through a process of adapting the quantization coefficient according to the number of bits per pixel, according to an embodiment of the present invention.
  • the current embodiment includes an adjusting of the range of the quantization variable based on N to determine the quantization coefficient, where N denotes the number of bits per pixel of the input image.
  • the quantization coefficient may be maintained constant regardless of the variation of N. That is, since the quantization coefficient is maintained constant, the quantization step is constant.
  • the range of the quantization variable should be adjusted according to N. If it is assumed that the range of the quantization variable is [1, 31], when N is 8, and if it is assumed that the minimum value of the quantization variable is 1, with respect to N, the maximum value of the quantization variable can be obtained using the following
  • the quantization coefficient determiner 120 may determine a quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable defined by the user.
  • the value proportional to the extended range of pixel values may be 31 x ( 2 ⁇ N 8) -1), but is not limited thereto.
  • the quantization coefficient determiner 120 may determine a quantization coefficient in the low frequency domain using the below Equation 2, again noting that the low frequency domain indicates the DC component of the transformed pixel values.
  • I QS ⁇ QP + 31 x (2 (A ⁇ - S) - 1 )]/ 2) + 6 ⁇ the other range )
  • QP corresponds to the quantization variable defined by the user
  • N corresponds to the number of bits per pixel
  • the quantization coefficient determiner 120 may determine a quantization coefficient in the high frequency domain using the below Equation 3, again noting the high frequency domain indicates the AC component of the transformed pixel values without the DC component. [72] Equation 3
  • QP corresponds to the quantization variable defined by the user
  • N corresponds to the number of bits per pixel
  • the quantization unit 130 may quantize the pixel values transformed by the transformer 110 based on the quantization coefficient determined by the quantization coefficient determiner 120 and output the quantization result to the dequantization unit
  • the quantization unit 130 may quantizes the pixel values using the below
  • Equation 4 when quantizing the DC component or performing uniform quantization of the AC component. [77] Equation 4:
  • «? corresponds to a quantized pixel value
  • c corresponds to a pixel value transformed by the transformer 110
  • Q ⁇ corresponds to the quantization coefficient
  • the quantization unit 130 may quantize the pixel values transformed by the transformer 110 by adding an offset value for adjusting the accuracy of quantization thereto.
  • the quantization unit 130 quantizes the pixel values transformed by the transformer 110 using the below Equation 5, for example, when performing non-uniform quantization of the AC component.
  • ⁇ ? corresponds to a quantized pixel value
  • c corresponds to a pixel value transformed by the transformer 110
  • QS corresponds to the quantization coefficient, e.g.,
  • the dequantization unit 140 may dequantize the pixel values quantized by the quantization unit 130 based on the quantization coefficient determined by the quantization coefficient determiner 120 and output the dequantization result to the de- transformer 150. [85] In particular, the dequantization unit 140 may dequantize the quantized pixel values using the below Equation 6 when performing dequantization of the DC component or uniform dequantization of the AC component, for example. [86] Equation 6:
  • ⁇ ? corresponds to a quantized pixel value
  • QS corresponds to the quantization coefficient.
  • the dequantization unit 140 may dequantize the quantized pixel values using an offset value for adjusting the accuracy of dequantization.
  • the dequantization unit 140 may dequantize the quantized pixel values using the below Equation 7 when performing non-uniform dequantization of the AC component, for example.
  • c' corresponds to a dequantized pixel value
  • ⁇ ? corresponds to a quantized pixel value
  • QS corresponds to the quantization coefficient, i.e.,
  • the detransformer 150 may detransform the pixel values dequantized by the de- quantization unit 140 and output the detransform result to the temporal prediction compensator 160.
  • the temporal prediction compensator 160 may compensate for the de- transformed pixel values of the pixel values predicted by the temporal predictor 100.
  • the entropy encoder 170 may further generate a bitstream of the pixel values quantized by the quantization unit 130.
  • the entropy encoder 170 generates a bitstream of the quantized pixel values, quantized according to the quantization variable adjusted according to the number of bits per pixel.
  • the DC value is encoded after generating a differential value through Differential Pulse Code Modulation (DPCM) encoding using DC values of neighboring blocks and generating an absolute value DCDifferential of the generated differential value and a sign value DCSign.
  • DPCM Differential Pulse Code Modulation
  • the following illustrates a sequence for performing encoding based on the quantization variable adjusted according to the number of bits per pixel.
  • DCDifferential DCDifferential + 4 x 2 (N 8) -1 ;
  • DCDifferential DCDifferential + 2x 2 (N 8) -1 ;
  • DCDifferential DCDifferential + 2x 2 (N 8) -1 ;
  • vlc_encode indicates variable length coding (VLC) in which a value 'symbol' is transformed to a code corresponding to the value by referring to predefined 'table
  • flc_encode(symbol, num) indicates fixed length coding (FLC) in which the value 'symbol' is transformed to bits corresponding to the number 'num.
  • FIG. 2 illustrates an image data decoding system, according to an embodiment of the present invention.
  • the image data decoding system may include an entropy decoder 200, a quantization coefficient determiner 210, a de- quantizer 220, a detransformer 230, and a temporal prediction compensator 240, for example.
  • the entropy decoder 200 may decode a bitstream of pixel values of an image and output the decoding result to the quantization coefficient determiner 210.
  • the entropy decoder 200 may decode a bitstream of pixel values based on a quantization variable adjusted according to the number of bits per pixel, e.g., by the quantization coefficient determiner 210, and output the decoding result to the de- quantizer 220.
  • the entropy decoder 200 may perform a reverse process as the entropy encoder
  • the following illustrates a sequence for performing decoding based on a quantization variable adjusted according to the number of bits per pixel.
  • DCDifferential DCDifferentialx4x 2 (N 8) + flc_decode(2+N-8) - (4x 2 (N 8) -1);
  • DCDifferential DCDifferentialx2x 2 (N 8) + flc_decode(l+N-8) - (2x 2 (N 8) -1);
  • the quantization coefficient determiner 210 may determine a quantization coefficient according to the number of bits per pixel of the image by adjusting a quantization variable, e.g., as defined by a user.
  • the quantization coefficient determiner 210 may adjust the range of quantization variables based on the range of pixel values that is extended, according to the change in the number of bits per pixel.
  • the quantization coefficient determiner 210 thus, may determine a quantization coefficient so that an existing quantization step is maintained constant regardless of a change in the number of bits per pixel, for example.
  • the quantization coefficient determiner 210 may obtain the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable, e.g., as defined by the user.
  • the quantization coefficient determiner 210 may determine a quantization coefficient in the low frequency domain using Equation 2, for example, and the quantization coefficient determiner 210 may also determine a quantization coefficient in the high frequency domain using Equation 3, for example.
  • the dequantizer 220 may then dequantize the pixel values decoded by the entropy decoder 200 based on the quantization coefficient determined by the quantization coefficient determiner 210 and output the dequantization result to the detransformer 230.
  • the dequantizer 220 may dequantize the pixel values based on the quantization coefficient adjusted according to the number of bits per pixel.
  • the dequantization unit 220 may dequantize the pixel values decoded by the entropy decoder 200 using Equation 6, for example, when performing de- quantization of the DC component and uniform dequantization of the AC component.
  • the de- quantization unit 220 may dequantize the quantized pixel values using an offset value, for example, for adjusting the accuracy of dequantization.
  • the dequantization unit 220 dequantizes the pixel values decoded by the entropy decoder 200, e.g., using Equation 7, when performing non-uniform de- quantization of the AC component.
  • the detransformer 230 may then detransform the pixel values dequantized by the dequantization unit 220 and output the detransform result to the temporal prediction compensator 240.
  • the temporal prediction compensator 240 may compensate for the temporally predicted pixel values of the pixel values detransformed by the de- transformer 230.
  • pixel values of a current block may be temporally predicted using a previous block in the time domain.
  • the temporally predicted pixel values of an image may further be transformed to pixel values in the frequency domain, in operation 302.
  • a quantization coefficient, according to the number of bits per pixel of the image, may be determined, in operation 304, by adjusting a quantization variable defined by a user.
  • the range of quantization variables may be adjusted based on the range of pixel values that is extended according to the change in the number of bits per pixel.
  • the quantization coefficient may be determined so that an existing quantization process is maintained constant regardless of a change in the number of bits per pixel.
  • the quantization coefficient may be obtained by adding a value proportional to the extended range of pixel values to the quantization variable, e.g., as defined by the user.
  • the transformed pixel values may be quantized based on the determined quantization coefficient, in operation 306.
  • the pixel values may further be quantized using Equation 4, for example, when quantization of the DC component or uniform quantization of the AC component is performed.
  • the pixel values may be quantized by adding an offset value for adjusting the accuracy of quantization to the transformed pixel values.
  • the pixel values may be quantized using Equation 5 above, for example.
  • the transformed pixel values may be quantized using Equation 5 above, for example.
  • Equation 5 for example, when non-uniform quantization of the AC component is performed.
  • a bitstream of the quantized pixel values may then be generated, in operation 308.
  • a bitstream of the quantized pixel values can be generated according to a quantization variable adjusted according to the number of bits per pixel. That is, the process of generating the bitstream of the quantized pixel values, e.g., as performed by the above described entropy encoder 170.
  • a bitstream of pixel values of an image may be decoded.
  • a bitstream of pixel values may be decoded according to a quantization variable adjusted according to the number of bits per pixel. That is, a bitstream decoding process, e.g., of the entropy decoder 200 described above, may be performed in operation 400.
  • a quantization coefficient may further be determined according to the number of bits per pixel of the image by adjusting a quantization variable defined by a user, in operation 402.
  • the range of quantization variables may be adjusted based on the range of pixel values that is extended, according to the change in the number of bits per pixel.
  • the quantization coefficient may be determined so that an existing quantization process is maintained constant regardless of a change in the number of bits per pixel, for example.
  • the quantization coefficient may be obtained by adding a value proportional to the extended range of pixel values to the quantization variable, e.g., as defined by the user.
  • the decoded pixel values may be dequantized based on the determined quantization coefficient, in operation 404.
  • the quantized pixel values may be de- quantized using Equation 6, for example, when dequantization of the DC component or uniform dequantization of the AC component is performed.
  • the quantized pixel values may be dequantized using an offset value for adjusting the accuracy of dequantization.
  • the pixel values e.g., as decoded by the aforementioned entropy decoder 200, may be de- quantized using Equation 7, for example.
  • the dequantized pixel values may further be detransformed, in operation 406, and the temporally predicted pixel values of the detransformed pixel values may be compensated for, in operation 408.
  • An image data encoding system according to an embodiment of the present invention, will now be described in greater detail again with reference to FlG. 1.
  • the temporal predictor 100 may temporally predict pixel values of a current block using a previous block in the time domain and output the prediction result to the transformer 110.
  • the transformer 110 may transform pixel values of an image in the time domain to pixel values in the frequency domain and output the transform result to the quantization coefficient determiner 120.
  • the quantization coefficient determiner 120 may determine a quantization coefficient corresponding to the number of bits per pixel of the image by adjusting the quantization variable, e.g., as defined by the user, and output the determination result to the quantization unit 130 and the dequantization unit 140.
  • the quantization coefficient determiner 120 determines the quantization coefficient by multiplying the quantization variable, e.g., defined by the user, by a value proportional to the extended range of pixel values.
  • the quantization coefficient determiner 120 may determine a quantization coefficient according to the changed number of bits per pixel, for example, by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
  • the range of the quantization variable based on N may be adjusted to determine the quantization coefficient, where N denotes the number of bits per pixel of the input image.
  • a quantization process may be adjusted to have similar image quality as an 8-bit decoded image when an N-bit decoded image is divided by
  • the quantization coefficient determiner 120 may determine the quantization coefficient by multiplying the quantization variable, e.g., as defined by the user, by a value proportional to the extended range of pixel values.
  • the value proportional to the extended range of pixel values can be 2 " , but is not limited thereto.
  • the quantization coefficient determiner 120 may determine a quantization coefficient in the low frequency domain using the below Equation 8, for example.
  • the low frequency domain indicates the DC component of the transformed pixel values.
  • QP corresponds to the quantization variable, e.g., as defined by the user, and N corresponds to the number of bits per pixel.
  • the quantization coefficient determiner 120 may determine the quantization coefficient in the high frequency domain using the below Equation 9, for example.
  • the high frequency domain indicates the AC component of the transformed pixel values without the DC component.
  • QS corresponds to the quantization coefficient
  • QP corresponds to the quantization variable defined by the user
  • N corresponds to the number of bits per pixel.
  • the quantization unit 130 may quantize the pixel values transformed by the transformer 110 based on the quantization coefficient determined by the quantization coefficient determiner 120 and output the quantization result to the dequantization unit 140 and the entropy encoder 170.
  • the quantization unit 130 may, thus, quantize the pixel values using Equation 4, for example, when quantizing the DC component or performing uniform quantization of the AC component.
  • the quantization unit 120 may quantize the pixel values transformed by the transformer 110 by adding an offset value for adjusting the accuracy of quantization to the transformed pixel values.
  • the quantization unit 130 may quantize the pixel values transformed by the transformer 110 using the below Equation 10, for example, when performing non-uniform quantization of the AC component.
  • ⁇ ? corresponds to a quantized pixel value
  • c corresponds to a pixel value transformed by the transformer 110
  • QS corresponds to the quantization coefficient, i.e.,
  • the dequantization unit 140 may dequantize the pixel values quantized by the quantization unit 130 based on the quantization coefficient determined by the quantization coefficient determiner 120, for example, and output the dequantization result to the detransformer 150.
  • the dequantization unit 140 may dequantize the quantized pixel values using Equation 6, for example, when performing dequantization of the DC component or uniform dequantization of the AC component.
  • the dequantization unit 140 may, thus, dequantize the quantized pixel values using an offset value for adjusting the accuracy of dequantization.
  • the dequantization unit 140 may dequantize the quantized pixel values using the below Equation 11, for example, when performing the non-uniform de- quantization of the AC component.
  • c l corresponds to a dequantized pixel value
  • ⁇ ? corresponds to a quantized pixel value
  • QS corresponds to the quantization coefficient, i.e.,
  • the detransformer 150 may detransform the pixel values dequantized by the de- quantization unit 140 and output the detransform result to the temporal prediction compensator 160.
  • the temporal prediction compensator 160 may then compensate for the de- transformed pixel values of the pixel values predicted by the temporal predictor 100.
  • the entropy encoder 170 may generate an output bitstream of the pixel values quantized by the quantization unit 130.
  • the entropy encoder 170 generates the bitstream of the quantized pixel values according to the quantization variable adjusted according to the number of bits per pixel.
  • the DC value is encoded after generating a differential value through DPCM encoding using DC values of neighboring blocks and generating an absolute value DCDif- ferential of the generated differential value and a sign value DCSign.
  • the following illustrates a sequence for performing encoding according to the quantization variable adjusted according to the number of bits per pixel.
  • DCDifferential2 (DCDifferential2+offsetl)»offset
  • vlc_encode(symbol) indicates variable length coding (VLC) in which a value
  • flc_encode(symbol, num) indicates fixed length coding (FLC) in which the value 'symbol' is transformed to bits corresponding to the number 'num.
  • the entropy decoder 200 may decode a bitstream of pixel values of an image and output the decoding result to the quantization coefficient determiner 210.
  • the entropy decoder 200 may decode a bitstream of pixel values based on a quantization variable adjusted according to the number of bits per pixel by the quantization coefficient determiner 210 and outputs the decoding result to the de- quantizer 220.
  • the entropy decoder 200 may perform a reverse process as the above described entropy encoder 170, for example.
  • the following illustrates a sequence for performing decoding according to the quantization variable adjusted according to the number of bits per pixel.
  • DCDifferential DCDifferentialx4 + flc_decode(2) - 3 ;
  • DCDifferential DCDiff erentialx2 + flc_decode( I) - I;
  • the quantization coefficient determiner 210 may determine a quantization coefficient according to the number of bits per pixel of the image by adjusting a quantization variable, e.g., as defined by a user, and output the determination result.
  • the quantization coefficient determiner 210 may determine the quantization coefficient by multiplying the quantization variable, e.g., defined by the user, by a value proportional to the extended range of pixel values.
  • the quantization coefficient determiner 210 may further determine the quantization coefficient according to the changed number of bits per pixel by linearly mapping a quantization coefficient for a quantization value before being adjusted with the adjusted quantization variable.
  • the quantization coefficient determiner 210 may determine a quantization coefficient in the low frequency domain using Equation 8, for example.
  • the quantization coefficient determiner 210 may further determine a quantization coefficient in the high frequency domain using Equation 9, for example.
  • the dequantizer 220 may dequantize the pixel values decoded by the entropy decoder 200 based on the quantization coefficient determined by the quantization coefficient determiner 210 and output the dequantization result to the de- transformer 230.
  • the dequantizer 220 may dequantize the pixel values based on the quantization coefficient adjusted according to the number of bits per in the quantization coefficient determiner 210.
  • the dequantization unit 220 may dequantize the pixel values decoded by the entropy decoder 200 using Equation 6, for example, when performing de- quantization of the DC component and uniform dequantization of the AC component.
  • the dequantization unit 220 may dequantizes the pixel values decoded by the entropy decoder 200 using Equation 11, for example, when performing nonuniform dequantization of the AC component.
  • the detransformer 230 may then detransform the pixel values dequantized by the dequantization unit 220 and outputs the detransform result to the temporal prediction compensator 240.
  • the temporal prediction compensator 240 may compensate for the temporally predicted pixel values of the pixel values detransformed by the de- transformer 230.
  • pixel values of a current block may be temporally predicted using a previous block in the time domain.
  • the temporally predicted pixel values of an image may further be transformed to pixel values in the frequency domain, in operation 302.
  • a quantization coefficient according to the number of bits per pixel of the image may be determined by adjusting a quantization variable, e.g., as defined by a user, in operation 304.
  • a quantization coefficient in the low frequency domain may be determined using Equation 8, for example, and a quantization coefficient in the high frequency domain may be determined using Equation 9, for example.
  • the transformed pixel values may further be quantized based on the determined quantization coefficient, in operation 306.
  • the pixel values may be quantized using Equation 4, for example, when quantization of the DC component or uniform quantization of the AC component is performed.
  • the transformed pixel values may be quantized using Equation 10, for example, when non-uniform quantization of the AC component is performed.
  • a bitstream of the quantized pixel values may thereafter be generated, in operation
  • a bitstream of the quantized pixel values may be generated accord ing to a quantization variable adjusted according to the number of bits per pixel. That is, in operation 308, the bitstream of the quantized pixel values, e.g., performed by the above described entropy encoder 170, may be generated.
  • bitstream of pixel values of an image may be decoded.
  • the bitstream of pixel values may be decoded according to a quantization variable adjusted according to the number of bits per pixel. That is, the bitstream decoding process of the above described entropy decoder 200, for example, may be performed.
  • a quantization coefficient may be determined, in operation 402, according to the number of bits per pixel of the image by adjusting a quantization variable, e.g., as defined by a user.
  • a quantization coefficient in the low frequency domain may be determined using Equation 8, for example, and a quantization coefficient in the high frequency domain may be determined using Equation 9, for example.
  • the decoded pixel values may be dequantized based on the determined quantization coefficient, in operation 404.
  • the quantized pixel values may be de- quantized using Equation 6, for example, when dequantization of the DC component or uniform dequantization of the AC component is performed.
  • the decoded pixel values may further be dequantized using Equation 11, for example, when non-uniform de- quantization of the AC component is performed.
  • the dequantized pixel values may then be detransformed, in operation 406, and the temporally predicted pixel values of the detransformed pixel values may then be compensated for, in operation 408.
  • embodiments of the present invention can also be implemented through computer readable code/instructions in/on a medium, e.g., a computer readable medium.
  • the medium can correspond to any medium/media permitting the storing and/or transmission of the computer readable code.
  • the computer readable code can be recorded/transferred on a medium in a variety of ways, with examples of the medium including magnetic storage media (e.g., ROM, floppy disks, hard disks, etc.), optical recording media (e.g., CD-ROMs, or DVDs), and storage/transmission media such as carrier waves, as well as through the Internet, for example.
  • the medium may further be a signal, such as a resultant signal or bitstream, according to embodiments of the present invention.
  • the media may also be a distributed network, so that the computer readable code is stored/transferred and executed in a distributed fashion.

Abstract

A system, medium, and method encoding and/or decoding image data. The image data encoding may include a transformer transforming pixel values of an image in the time domain to pixel values in the frequency domain, a quantization coefficient determiner determining a quantization coefficient corresponding to the number of bits per pixel of the image by adjusting a quantization variable defined by a user, a quantization unit quantizing the pixel values transformed by the transformer based on the quantization coefficient determined by the quantization coefficient determiner, and an entropy encoder generating a bitstream of the quantized pixel values.

Description

Description SYSTEM, MEDIUM, AND METHOD ENCODING AND/OR
DECODING IMAGE DATA
Technical Field
[1] Embodiments of the present invention relate to encoding and/or decoding of image data, and more particularly, to a system, medium, and method encoding and/or decoding image data using adaptive quantization based on the number of bits per pixel in an input image.
Background Art
[2] An image acquired by a camera may be displayed with an appropriate size, e.g., with a number of pixels, through sampling. When the image is displayed, the number of bits required to represent the value of each pixel is determined. Here, to display the image with high image quality, there has been a requirement to increase of the number of representable values, thereby increasing the number of bits per pixel. The number of bits has gradually increased also due to the advancing development of image devices. For example, although 8 bits have been used in many fields, recently, 10 or 12 bits have been used in application fields where high quality images are desired.
[3] For conventional image compression, compression schemes for 8-bit images have been generally developed. For example, VC-I (VC-I Compressed Video Bitstream Format and Decoding Process), corresponding to a compression video codec standardized by the Society of Motion Picture and Television Engineers (SMPTE), provides effective quantization schemes suitable for every case using various kinds of image information. However, in the conventional quantization schemes used in VC-I, the number of bits per pixel is fixed to 8 bits per pixel. Although an 8-bit image is popularly used for image coding schemes, the image quality of the 8-bit image is limited. Thus, considering the gradual increase in the demand for images having higher image quality, the present inventors have found that it is desirable to provide a quantization scheme suitable even for a images having more than 8 bits per pixel. Disclosure of Invention
Technical Solution
[4] Embodiments of the present invention provide a system, medium, and method for encoding and/or decoding image data to obtain a high quality image at a high compression ratio by automatically performing adaptive quantization according to the number of bits per pixel.
[5] To achieve the above and/or other aspects and advantages, embodiments of the present invention include an image data encoding system, including a quantization co- efficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of an image being encoded by adjusting a quantization variable, a quantization unit to quantize pixel values based on the quantization coefficient, and an entropy encoder generating a bitstream of the quantized pixel values.
[6] The system may further include a transformer to transform pixel values of the image in a time domain to the pixel values in a frequency domain and to output the pixel values to the quantization coefficient determiner for determining of the quantization coefficient.
[7] The quantization coefficient determiner may adjust a range of quantization variables based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[8] In addition, the quantization coefficient determiner may determine the quantization coefficient based on the adjusted range of quantization variables.
[9] The quantization coefficient determiner may further determine the quantization coefficient so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[10] The quantization coefficient determiner may still further determine the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel value values.
[11] In addition, the quantization coefficient determiner may determine the quantization coefficient according to the change in the number of bits by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[12] The quantization variable may further be defined by a user.
[13] To achieve the above and/or other aspects and advantages, embodiments of the present invention include a system, including a quantization coefficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of an image by adjusting a quantization variable, and a quantization unit to quantize or dequantize pixel values based on the quantization coefficient.
[14] The system may further include a transformer to transform pixel values of the image in a time domain to the pixel values in a frequency domain and to output the pixel values to the quantization coefficient determiner for determining of the quantization coefficient.
[15] The system may be an encoder system, with the system further including a bitstream generator to generate the bitstream with the quantized pixel values.
[16] In addition, the system may be a decoder system, and the quantization unit may be a dequantization unit that dequantizes the pixel values, with the system further including an entropy decoder to decode a bitstream containing the pixel values of the image.
[17] To achieve the above and/or other aspects and advantages, embodiments of the present invention include an image data decoding system, including an entropy decoder to decode a bitstream of pixel values of an image, a quantization coefficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of the image by adjusting a quantization variable, and a dequantization unit to dequantize pixel values decoded by the entropy decoder based on the determined quantization coefficient.
[18] The system may further include a detransformer to detransform the dequantized pixel values from a frequency domain into a time domain.
[19] The quantization coefficient determiner may further adjust a range of quantization variables based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[20] The quantization coefficient determiner may determine the quantization coefficient based on the adjusted range of quantization variables.
[21] In addition, the quantization coefficient determiner may determine the quantization coefficient so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[22] The quantization coefficient determiner may still further determine the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
[23] The quantization coefficient determiner may determine the quantization coefficient according to the change in the number of bits by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[24] In addition, the dequantization unit may dequantize the pixel values based on the quantization coefficient adjusted according to the number of bits per pixel in the quantization coefficient determiner.
[25] Here, the quantization variable may be defined by a user.
[26] To achieve the above and/or other aspects and advantages, embodiments of the present invention include an image data encoding method, including determining a quantization coefficient corresponding to a number of bits per pixel of an image by adjusting a quantization variable, quantizing pixel values of the image based on the determined quantization coefficient, and generating a bitstream of the quantized pixel values.
[27] The method may further include transforming pixel values of the image in a time domain to the pixel values in a frequency domain for the determining of the quantization coefficient.
[28] In the determining of the quantization coefficient, a range of quantization variables may be adjusted based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[29] Here, in the determining of the quantization coefficient, the quantization coefficient may be determined based on the adjusted range of quantization variables.
[30] Further, in the determining of the quantization coefficient, the quantization coefficient may be determined so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[31] Still further, in the determining of the quantization coefficient, the quantization coefficient may be determined by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
[32] In the determining of the quantization coefficient, the quantization coefficient according to the change in the number of bits may be determined by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[33] The quantization variable may further be defined by a user.
[34] To achieve the above and/or other aspects and advantages, embodiments of the present invention include an image data decoding method, including decoding a bitstream of pixel values of an image, determining a quantization coefficient corresponding to a number of bits per pixel of the image by adjusting a quantization variable, and dequantizing the pixel values based on the determined quantization coefficient.
[35] The method may further include detransforming the dequantized pixel values from a frequency domain into a time domain.
[36] In the determining of the quantization coefficient, a range of quantization variables may be adjusted based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[37] Further, in the determining of the quantization coefficient, the quantization coefficient may be determined based on the adjusted range of quantization variables.
[38] Still further, in the determining of the quantization coefficient, the quantization coefficient may be determined so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[39] In addition, in the determining of the quantization coefficient, the quantization co- efficient may be determined by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
[40] In the determining of the quantization coefficient, the quantization coefficient according to the change in the number of bits may be determined by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[41] Here, in the dequantizing of the decoded pixel values, the pixel values may be de- quantized based on the quantization coefficient adjusted according to the number of bits per pixel.
[42] The quantization variable may further be defined by a user.
[43] To achieve the above and/or other aspects and advantages, embodiments of the present invention include at least one medium including computer readable code to implement embodiments of the present invention.
Advantageous Effects
[44] As described above, in a system, medium, and method for encoding and/or decoding image data according to embodiments of the present invention, by automatically performing adaptive quantization according to the number of bits per pixel, a high quality image can be obtained with a high compression ratio.
[45] In addition, adaptive encoding and/or decoding according to the number of bits per pixel can be performed by minimally changing the configuration of conventional systems, such as the aforementioned VC-I standard system.
Description of Drawings
[46] FlG. 1 illustrates an image data encoding system, according to an embodiment of the present invention;
[47] FlG. 2 illustrates an image data decoding system, according to an embodiment of the present invention;
[48] FlG. 3 illustrates an image data encoding method, according to an embodiment of the present invention; and
[49] FlG. 4 illustrates an image data decoding method, according to an embodiment of the present invention.
Mode for Invention
[50] Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. Embodiments are described below to explain the present invention by referring to the figures.
[51] FIG. 1 illustrates an image data encoding system, according to an embodiment of the present invention. Referring to FlG. 1, the image data encoding system may include a temporal predictor 100, a transformer 110, a quantization coefficient determiner 120, a quantization unit 130, a dequantization unit 140, a detransformer 150, a temporal prediction compensator 160, and an entropy encoder 170, for example.
[52] The temporal predictor 100 temporally predicts pixel values of a current block using a previous block, in the time domain, and may output the prediction result to the transformer 110.
[53] Further, the temporal predictor 100 predicts the current image frame p. by estimating motion in a previous image frame
. That is, the temporal predictor 100 searches the previous frame
for a block similar to a current block, having a predetermined size, to be currently encoded and then subtracts pixel values of the previous block from pixel values of the current block. When a first frame is processed, this procedure is omitted since the previous block does not exist. In another way, the procedure can be omitted by a user to prevent random access and error propagation.
[54] The transformer 110 transforms pixel values of an image in the time domain to pixel values in the frequency domain and outputs the transform result to the quantization coefficient determiner 120. Here, an orthogonal transform encoding method may be used as the transforming method, for example. Among orthogonal transform encoding methods, examples include a fast Fourier transform (FFT) method, a discrete cosine transform (DCT) method, a Karhunen Loeve transform (KLT) method, an Hadamard transform method, and slant transform method, which are widely used.
[55] The pixel values transformed into the frequency domain, by the transformer 110, may be classified into a DC component corresponding to a low frequency domain and an AC component corresponding to a high frequency domain. Thus, the DC component references a transformed pixel value in the low frequency domain, which corresponds to coordinates (0,0), for example, and the AC component references the other pixel values.
[56] According to an embodiment of the present invention, the quantization coefficient determiner 120 determines a quantization coefficient corresponding to the number of bits per pixel of the image by adjusting a quantization variable defined by the user and outputs the determination result to the quantization unit 130 and the dequantization unit 140. [57] Here, the quantization variable may be a value defined by the user, and the number
(N) of bits per pixel of an image corresponds to the number of bits used to express a single pixel. The quantization coefficient means a quantization value used for quantization.
[58] An objective of embodiments of the present invention is to determine a quantization value based on a change in the number of bits per pixel of an image. To this end, in an embodiment of the present invention, the quantization coefficient determiner 120 may adjust the range of quantization variables based on the range of pixel values that is extended based on the change in the number of bits per pixel. The extended range ( 2( N a) ) of pixel values means the range of pixel values extended due to the changed pixel values. Here, in the extended range (2 "a ), 'a' corresponds to the number of bits expressing an existing pixel. In an embodiment, the quantization coefficient determiner 120 determines a quantization coefficient so that an existing quantization step is maintained constant regardless of a change in the number of bits per pixel, for example.
[59] When determining a new quantization coefficient based on the adjusted range of quantization variables and the change in the number of bits per pixel, the quantization coefficient determiner 120 may obtain the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable defined by the user, for example.
[60] Hereinafter, the aforementioned VC-I quantization will be used to explain an embodiment of the present invention. However, embodiments of the present invention are not limited thereto, noting that alternative embodiments are equally available.
[61] As noted above, the quantization process of VC-I is limited in that the number of bits per pixel of an input image is always 8 (i.e., a=8). In this case, the quantization variable, e.g., defined by the user, has a range of [1, 31]. Accordingly, it is desirable to make encoding possible even when the number of bits per pixel of the input image is larger than 8, e.g., through a process of adapting the quantization coefficient according to the number of bits per pixel, according to an embodiment of the present invention.
[62] Thus, the current embodiment includes an adjusting of the range of the quantization variable based on N to determine the quantization coefficient, where N denotes the number of bits per pixel of the input image. In this case, the quantization coefficient may be maintained constant regardless of the variation of N. That is, since the quantization coefficient is maintained constant, the quantization step is constant. To quantize a pixel value indicated by N, under the condition of the same quantization step, the range of the quantization variable should be adjusted according to N. If it is assumed that the range of the quantization variable is [1, 31], when N is 8, and if it is assumed that the minimum value of the quantization variable is 1, with respect to N, the maximum value of the quantization variable can be obtained using the following
Equation 1.
[63] Equation 1:
[64]
[65] Here, the range of the quantization variable with respect to N is [1,
]. If the range of the quantization variable is adjusted so that the maximum value of the quantization variable, with respect to N, is 31, the range of the quantization variable with respect to N would be [ l - 31 x (2(Λr^ - l)
, 31]. In this case, to determine a value of the quantization coefficient, based on the quantization variable with respect to N, the further below equations may be used.
[66] Accordingly, the quantization coefficient determiner 120 may determine a quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable defined by the user. For example, the value proportional to the extended range of pixel values may be 31 x ( 2<N 8) -1), but is not limited thereto.
[67] The quantization coefficient determiner 120 may determine a quantization coefficient in the low frequency domain using the below Equation 2, again noting that the low frequency domain indicates the DC component of the transformed pixel values.
[68] Equation 2:
[69]
(QS =
Figure imgf000009_0001
+ 31 x (2(ΛΓ"8) - 1)] x 2 [QP < (3 - 31 x {2υ'~B) - 1))) βS = 8 fop = (3 - 31x (2C/ir-8) - l)) or QP = {A - 31 x (2(/""s) - 1
I QS = ^QP + 31 x (2(AΓ-S) - 1 )]/ 2) + 6 {the other range )
[70] Here,
Qβ corresponds to the quantization coefficient,
QP corresponds to the quantization variable defined by the user, N corresponds to the number of bits per pixel, and
[QP + 31 x (2(iV-S) - I)] corresponds to the quantization variable adjusted according to the number of bits per pixel. [71] Additionally, the quantization coefficient determiner 120 may determine a quantization coefficient in the high frequency domain using the below Equation 3, again noting the high frequency domain indicates the AC component of the transformed pixel values without the DC component. [72] Equation 3
[73]
QS = [QP + 31 x (2<^> - I)] x 2 [74] Here,
QS corresponds to the quantization coefficient,
QP corresponds to the quantization variable defined by the user, N corresponds to the number of bits per pixel, and
[QP + 31 x (2iN-S) - I)] corresponds to the quantization variable adjusted according to the number of bits per pixel. [75] The quantization unit 130 may quantize the pixel values transformed by the transformer 110 based on the quantization coefficient determined by the quantization coefficient determiner 120 and output the quantization result to the dequantization unit
140 and the entropy encoder 170. [76] Further, the quantization unit 130 may quantizes the pixel values using the below
Equation 4 when quantizing the DC component or performing uniform quantization of the AC component. [77] Equation 4:
[78] q = c !QS
[79] Here,
«? corresponds to a quantized pixel value, c corresponds to a pixel value transformed by the transformer 110, and
Qβ corresponds to the quantization coefficient.
[80] When performing non-uniform quantization on the high frequency domain, the quantization unit 130 may quantize the pixel values transformed by the transformer 110 by adding an offset value for adjusting the accuracy of quantization thereto. Here, the quantization unit 130 quantizes the pixel values transformed by the transformer 110 using the below Equation 5, for example, when performing non-uniform quantization of the AC component. [81] Equation 5:
[82] q = (c + {sign (c) x [ QP + 31 x (2iN~S) - 1)] x r})f QS
[83] Here,
<? corresponds to a quantized pixel value, c corresponds to a pixel value transformed by the transformer 110,
QS corresponds to the quantization coefficient, e.g.,
QS = [QP + 31 x (2{N-Z) - 1)] x 2
, and
[sign (c) x [QP + 31 x (2^"S) - 1)] x r] corresponds to an offset for the non-uniform quantization, wherein εign(c) = 1 when
sιgn(c) = 0 when c = ϋ , and sιgn(c) = -1 when c{Q , and r is a constant within a range
0 < r < l
[84] The dequantization unit 140 may dequantize the pixel values quantized by the quantization unit 130 based on the quantization coefficient determined by the quantization coefficient determiner 120 and output the dequantization result to the de- transformer 150. [85] In particular, the dequantization unit 140 may dequantize the quantized pixel values using the below Equation 6 when performing dequantization of the DC component or uniform dequantization of the AC component, for example. [86] Equation 6:
[87] c'~ q x QS [88] Here, c' corresponds to a dequantized pixel value,
<? corresponds to a quantized pixel value, and
QS corresponds to the quantization coefficient.
[89] When performing non-uniform dequantization on the high frequency domain, the dequantization unit 140 may dequantize the quantized pixel values using an offset value for adjusting the accuracy of dequantization. Here, the dequantization unit 140 may dequantize the quantized pixel values using the below Equation 7 when performing non-uniform dequantization of the AC component, for example.
[90] c = q x QS + (sign (c) x [ QP + 31 x (2(ΛM) - 1)]}
[91] Here, c' corresponds to a dequantized pixel value,
<? corresponds to a quantized pixel value,
QS corresponds to the quantization coefficient, i.e.,
QS = [QP + 31 x (2(*-8) - 1)] x 2
, and
Figure imgf000012_0001
corresponds to an offset value for non-uniform quantization.
[92] The detransformer 150 may detransform the pixel values dequantized by the de- quantization unit 140 and output the detransform result to the temporal prediction compensator 160. [93] Thereafter, the temporal prediction compensator 160 may compensate for the de- transformed pixel values of the pixel values predicted by the temporal predictor 100.
[94] The entropy encoder 170 may further generate a bitstream of the pixel values quantized by the quantization unit 130.
[95] That is, the entropy encoder 170 generates a bitstream of the quantized pixel values, quantized according to the quantization variable adjusted according to the number of bits per pixel.
[96] Since a characteristic of values quantized when entropy encoding and decoding is performed has a close relationship with the quantization variable, in such a VC-I system, the DC value is encoded after generating a differential value through Differential Pulse Code Modulation (DPCM) encoding using DC values of neighboring blocks and generating an absolute value DCDifferential of the generated differential value and a sign value DCSign.
[97] According to an embodiment of the present invention, the following illustrates a sequence for performing encoding based on the quantization variable adjusted according to the number of bits per pixel.
[98] if(DCDifferential != 0) {
[99] if(DCDifferential does not present in VLC table) {
[100] vlc_encode(ESCAPECODE);
[101] if(QP+31x( 2^8' -1) == 1)
[102] flc_encode(DCDifferential, 2+N);
[103] else if(QP+31x( 2(N 8) -l) == 2)
[104] flc_encode(DCDifferential , 1+N);
[105] else // QP+31x( 2(N 8) -1) is > 2
[ 106] flc_encode(DCDiff erential, N) ;
[107] }
[108] else { // DCDifferential is present in VLC table
[109] if(QP+31x( 2^8' -1) == 1){
[110] DCDifferential = DCDifferential + 4 x 2(N 8) -1 ;
[111] vlc_encode((DCDifferential)/(4x 2(N 8) ));
[112] flc_encode(DCDifferential-(DCDifferential/(4x 2(N 8) ))x4
[113] x 2(N 8) , 2+N-8);
[114] }
[115] else if(QP+31x( 2^8' -1) == 2){
[116] DCDifferential = DCDifferential + 2x 2(N 8) -1 ;
[117] if(QP+31x( 2^8' -1) == 1){
[118] DCDifferential = DCDifferential + 2x 2(N 8) -1 ;
[119] vlc_encode((DCDifferential)/(2x 2(N 8) ));
[ 120] flc_encode(DCDifferential-(DCDifferential/(2x 2(N 8) ))x2 [121] x 2(N 8) , l+N-8);
[122] }
[123] }
[124] flc_encode(DCSign, 1); // DCSIGN
[125] }
[126] else
[127] vlc_encode(DCDifferential);
[128] Here, vlc_encode (symbol) indicates variable length coding (VLC) in which a value 'symbol' is transformed to a code corresponding to the value by referring to predefined 'table,' and flc_encode(symbol, num) indicates fixed length coding (FLC) in which the value 'symbol' is transformed to bits corresponding to the number 'num.'
[129] As shown in the above encoding sequence, the encoding with adjusted quantization variable is different from the conventional systems.
[130] An image data decoding system, according to an embodiment of the present invention, will now be described in greater detail with reference to FIG. 2.
[131] FIG. 2 illustrates an image data decoding system, according to an embodiment of the present invention. Referring to FIG. 2, the image data decoding system may include an entropy decoder 200, a quantization coefficient determiner 210, a de- quantizer 220, a detransformer 230, and a temporal prediction compensator 240, for example.
[132] The entropy decoder 200 may decode a bitstream of pixel values of an image and output the decoding result to the quantization coefficient determiner 210.
[133] Here, the entropy decoder 200 may decode a bitstream of pixel values based on a quantization variable adjusted according to the number of bits per pixel, e.g., by the quantization coefficient determiner 210, and output the decoding result to the de- quantizer 220.
[134] The entropy decoder 200 may perform a reverse process as the entropy encoder
170 described above, for example.
[135] According to an embodiment of the present invention, the following illustrates a sequence for performing decoding based on a quantization variable adjusted according to the number of bits per pixel.
[136] DCDifferential = vlc_decode( ) ;
[137] if(DCDifferential != 0) {
[138] if(DCDifferential == ESCAPECODE) {
[139] if(QP+31x( 2^8' -1) == 1)
[140] DCDifferential = flc_decode(2+N); // DCCOEF_ESC
[141] else if(QP+31x( 2(N 8) -l) == 2)
[142] DCDifferential = flc_decode(l+N); // DCCOEF_ESC [143] else // QP+31x( 2(N 8) -1) is > 2
[144] DCDifferential = flc_decode(N); // DCCOEF_ESC
[145] }
[146] else { // DCDifferential is not ESCAPECODE
[147] if(QP+31x( 2^8' -1) == 1)
[148] DCDifferential = DCDifferentialx4x 2(N 8) + flc_decode(2+N-8) - (4x 2(N 8) -1);
[149] else if(QP+31x( 2(N 8) -l) == 2)
[150] DCDifferential = DCDifferentialx2x 2(N 8) + flc_decode(l+N-8) - (2x 2(N 8) -1);
[151] }
[152] DCSign = flc_decode(l); // DCSIGN
[153] if (DCSign == 1)
[154] DCDifferential = -DCDifferential
[155] }
[156] As shown in this decoding sequence, the decoding with the adjusted quantization variable is different from the conventional systems.
[157] Thus, the quantization coefficient determiner 210 may determine a quantization coefficient according to the number of bits per pixel of the image by adjusting a quantization variable, e.g., as defined by a user.
[158] The quantization coefficient determiner 210 may adjust the range of quantization variables based on the range of pixel values that is extended, according to the change in the number of bits per pixel. The quantization coefficient determiner 210, thus, may determine a quantization coefficient so that an existing quantization step is maintained constant regardless of a change in the number of bits per pixel, for example. When determining a new quantization coefficient based on the adjusted range of quantization variables and the change in the number of bits per pixel, the quantization coefficient determiner 210 may obtain the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable, e.g., as defined by the user.
[159] The quantization coefficient determiner 210 may determine a quantization coefficient in the low frequency domain using Equation 2, for example, and the quantization coefficient determiner 210 may also determine a quantization coefficient in the high frequency domain using Equation 3, for example.
[160] The dequantizer 220 may then dequantize the pixel values decoded by the entropy decoder 200 based on the quantization coefficient determined by the quantization coefficient determiner 210 and output the dequantization result to the detransformer 230. Thus, the dequantizer 220 may dequantize the pixel values based on the quantization coefficient adjusted according to the number of bits per pixel.
[161] In particular, the dequantization unit 220 may dequantize the pixel values decoded by the entropy decoder 200 using Equation 6, for example, when performing de- quantization of the DC component and uniform dequantization of the AC component. When performing non-uniform dequantization on the high frequency domain, the de- quantization unit 220 may dequantize the quantized pixel values using an offset value, for example, for adjusting the accuracy of dequantization.
[162] Meanwhile, the dequantization unit 220 dequantizes the pixel values decoded by the entropy decoder 200, e.g., using Equation 7, when performing non-uniform de- quantization of the AC component.
[163] The detransformer 230 may then detransform the pixel values dequantized by the dequantization unit 220 and output the detransform result to the temporal prediction compensator 240.
[164] Thereafter, the temporal prediction compensator 240 may compensate for the temporally predicted pixel values of the pixel values detransformed by the de- transformer 230.
[165] An image data encoding method, according to an embodiment of the present invention, will now be described in greater detail with reference to FIG. 3.
[166] Referring to FIG. 3, in operation 300, pixel values of a current block may be temporally predicted using a previous block in the time domain.
[167] The temporally predicted pixel values of an image may further be transformed to pixel values in the frequency domain, in operation 302.
[168] A quantization coefficient, according to the number of bits per pixel of the image, may be determined, in operation 304, by adjusting a quantization variable defined by a user. In particular, the range of quantization variables may be adjusted based on the range of pixel values that is extended according to the change in the number of bits per pixel. The quantization coefficient may be determined so that an existing quantization process is maintained constant regardless of a change in the number of bits per pixel. When determining a new quantization coefficient based on the adjusted range of quantization variables and a change in the number of bits per pixel, for example, the quantization coefficient may be obtained by adding a value proportional to the extended range of pixel values to the quantization variable, e.g., as defined by the user.
[169] The transformed pixel values may be quantized based on the determined quantization coefficient, in operation 306. The pixel values may further be quantized using Equation 4, for example, when quantization of the DC component or uniform quantization of the AC component is performed. In particular, when performing nonuniform quantization on the high frequency domain, the pixel values may be quantized by adding an offset value for adjusting the accuracy of quantization to the transformed pixel values. When performing non-uniform quantization on the AC component, the pixel values may be quantized using Equation 5 above, for example. [170] Here, in operation 306, the transformed pixel values may be quantized using
Equation 5, for example, when non-uniform quantization of the AC component is performed.
[171] A bitstream of the quantized pixel values may then be generated, in operation 308.
In particular, a bitstream of the quantized pixel values can be generated according to a quantization variable adjusted according to the number of bits per pixel. That is, the process of generating the bitstream of the quantized pixel values, e.g., as performed by the above described entropy encoder 170.
[172] An image data decoding method, according to an embodiment of the present invention, will now be described in greater detail with reference to FIG. 4.
[173] Referring to FIG. 4, in operation 400, a bitstream of pixel values of an image may be decoded. In particular, a bitstream of pixel values may be decoded according to a quantization variable adjusted according to the number of bits per pixel. That is, a bitstream decoding process, e.g., of the entropy decoder 200 described above, may be performed in operation 400.
[174] A quantization coefficient may further be determined according to the number of bits per pixel of the image by adjusting a quantization variable defined by a user, in operation 402. In particular, the range of quantization variables may be adjusted based on the range of pixel values that is extended, according to the change in the number of bits per pixel. The quantization coefficient may be determined so that an existing quantization process is maintained constant regardless of a change in the number of bits per pixel, for example. When determining a new quantization coefficient based on the adjusted range of quantization variables and the change in the number of bits per pixel, the quantization coefficient may be obtained by adding a value proportional to the extended range of pixel values to the quantization variable, e.g., as defined by the user.
[175] The decoded pixel values may be dequantized based on the determined quantization coefficient, in operation 404. Here, the quantized pixel values may be de- quantized using Equation 6, for example, when dequantization of the DC component or uniform dequantization of the AC component is performed. When performing nonuniform dequantization on the high frequency domain, the quantized pixel values may be dequantized using an offset value for adjusting the accuracy of dequantization. Further, when performing non-uniform dequantization on the AC component, the pixel values, e.g., as decoded by the aforementioned entropy decoder 200, may be de- quantized using Equation 7, for example.
[176] The dequantized pixel values may further be detransformed, in operation 406, and the temporally predicted pixel values of the detransformed pixel values may be compensated for, in operation 408. [177] An image data encoding system, according to an embodiment of the present invention, will now be described in greater detail again with reference to FlG. 1.
[178] As discussed above, the temporal predictor 100 may temporally predict pixel values of a current block using a previous block in the time domain and output the prediction result to the transformer 110.
[179] Further, the transformer 110 may transform pixel values of an image in the time domain to pixel values in the frequency domain and output the transform result to the quantization coefficient determiner 120.
[180] Here, the quantization coefficient determiner 120 may determine a quantization coefficient corresponding to the number of bits per pixel of the image by adjusting the quantization variable, e.g., as defined by the user, and output the determination result to the quantization unit 130 and the dequantization unit 140. In an embodiment, the quantization coefficient determiner 120 determines the quantization coefficient by multiplying the quantization variable, e.g., defined by the user, by a value proportional to the extended range of pixel values. Here, the quantization coefficient determiner 120 may determine a quantization coefficient according to the changed number of bits per pixel, for example, by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[181] As described above, to make encoding possible even when the number of bits per pixel of the input image is larger than 8 bits per pixel, a process of adapting the quantization coefficient according to the number of bits per pixel is necessary. According to an embodiment, the range of the quantization variable based on N may be adjusted to determine the quantization coefficient, where N denotes the number of bits per pixel of the input image. In particular, a quantization process may be adjusted to have similar image quality as an 8-bit decoded image when an N-bit decoded image is divided by
corresponding to the extended bits, for example. That is, when N=IO, an image obtained by dividing all pixels of a 10-bit decoded image by
2αo-s) = 4 has similar image quality to the 8-bit decoded image. Accordingly, if an 8-bit quantization variable is 1, a 10-bit quantization variable corresponding to the 8-bit quantization variable would be 4, and if the 8-bit quantization variable is 2, the 10-bit quantization variable corresponding to the 8-bit quantization variable would be 8, and if the 8-bit quantization variable is 3, the 10-bit quantization variable corresponding to the 8-bit quantization variable would be 12, and if the 8-bit quantization variable is 4, the 10-bit quantization variable corresponding to the 8-bit quantization variable would be 16. Herein, 10-bit quantization variables, which does not correspond to the 8-bit quantization variable, linearly increase such as 1, 2, 3, 5, 6, 7, 9, 10, 11, 13, 14, 15, ...etc., for example.
[182] Here, if it is assumed that the range of the quantization variable is [ 1 , 31 ] when N is 8, and if it is further assumed that the minimum value of the quantization variable is 1 with respect to N, the maximum value of the quantization variable can be obtained using Equation 1, for example.
[183] In this case, to determine a value of the quantization coefficient based on the quantization variable with respect to N, the below equations may be used.
[184] As described above, the quantization coefficient determiner 120 may determine the quantization coefficient by multiplying the quantization variable, e.g., as defined by the user, by a value proportional to the extended range of pixel values. For example, the value proportional to the extended range of pixel values can be 2 " , but is not limited thereto.
[185] The quantization coefficient determiner 120 may determine a quantization coefficient in the low frequency domain using the below Equation 8, for example. The low frequency domain indicates the DC component of the transformed pixel values.
[186] Equation 8:
[187]
^
Figure imgf000019_0001
[188] Here,
QS corresponds to the quantization coefficient,
QP corresponds to the quantization variable, e.g., as defined by the user, and N corresponds to the number of bits per pixel.
[189] The quantization coefficient determiner 120 may determine the quantization coefficient in the high frequency domain using the below Equation 9, for example. The high frequency domain indicates the AC component of the transformed pixel values without the DC component.
[190] Equation 9:
[191]
QS = QP ^ 2
[192] Here, QS corresponds to the quantization coefficient,
QP corresponds to the quantization variable defined by the user, and N corresponds to the number of bits per pixel.
[193] The quantization unit 130 may quantize the pixel values transformed by the transformer 110 based on the quantization coefficient determined by the quantization coefficient determiner 120 and output the quantization result to the dequantization unit 140 and the entropy encoder 170.
[194] The quantization unit 130 may, thus, quantize the pixel values using Equation 4, for example, when quantizing the DC component or performing uniform quantization of the AC component. When performing non-uniform quantization on the high frequency domain, the quantization unit 120 may quantize the pixel values transformed by the transformer 110 by adding an offset value for adjusting the accuracy of quantization to the transformed pixel values. Further, the quantization unit 130 may quantize the pixel values transformed by the transformer 110 using the below Equation 10, for example, when performing non-uniform quantization of the AC component.
[195] Equation 10:
[196] q = {c + {sιgn{c)x QP *r})l QS
[197] Here,
<? corresponds to a quantized pixel value, c corresponds to a pixel value transformed by the transformer 110,
QS corresponds to the quantization coefficient, i.e.,
QS = QP * 2
, and
{ειg»{c) x QPx r} corresponds to an offset for the non-uniform quantization, wherein ειgn{c) = 1 when c)Q sign(c) = 0 when c = 0 , and εign(c) = -1 when c{0 , and r is a constant within a range
0 < r < 1
[198] Thereafter, the dequantization unit 140 may dequantize the pixel values quantized by the quantization unit 130 based on the quantization coefficient determined by the quantization coefficient determiner 120, for example, and output the dequantization result to the detransformer 150.
[199] In particular, the dequantization unit 140 may dequantize the quantized pixel values using Equation 6, for example, when performing dequantization of the DC component or uniform dequantization of the AC component. When performing nonuniform dequantization on the high frequency domain, the dequantization unit 140 may, thus, dequantize the quantized pixel values using an offset value for adjusting the accuracy of dequantization.
[200] Further, the dequantization unit 140 may dequantize the quantized pixel values using the below Equation 11, for example, when performing the non-uniform de- quantization of the AC component.
[201] Equation 11:
[202] c'= q * QS + {ειgκ(c) x QP)
[203] Here, cl corresponds to a dequantized pixel value, <? corresponds to a quantized pixel value,
QS corresponds to the quantization coefficient, i.e.,
QS = QP * 2 , and
corresponds to an offset value for non-uniform quantization.
[204] The detransformer 150 may detransform the pixel values dequantized by the de- quantization unit 140 and output the detransform result to the temporal prediction compensator 160.
[205] The temporal prediction compensator 160 may then compensate for the de- transformed pixel values of the pixel values predicted by the temporal predictor 100.
[206] Accordingly, the entropy encoder 170 may generate an output bitstream of the pixel values quantized by the quantization unit 130.
[207] That is, the entropy encoder 170 generates the bitstream of the quantized pixel values according to the quantization variable adjusted according to the number of bits per pixel.
[208] Since a characteristic of values quantized when entropy encoding and decoding is performed has a close relationship with the quantization variable, such a VC-I system, the DC value is encoded after generating a differential value through DPCM encoding using DC values of neighboring blocks and generating an absolute value DCDif- ferential of the generated differential value and a sign value DCSign.
[209] According to an embodiment of the present invention, the following illustrates a sequence for performing encoding according to the quantization variable adjusted according to the number of bits per pixel.
[210] if(DCDifferential != 0) {
[211] if(QS = 4 x 2^8' ) {
[212] offset2 = N-8;
[213] if(QS > 2x 2(N 8) ){
[214] offset = offsetl = l;
[215] }
[216] else{
[217] offset = 2;
[218] offsetl = 3;
[219] }
[220] DCDifferential2 = (DCDifferential2+offsetl)»offset;
[221] if(DCDifferential2 does not present in VLC table) {
[222] vlc_encode(ESCAPECODE);
[223] flc_encode(DCDifferential, 8+offset+offset2);
[224] else {
[225] vlc_encode(DCDifferential2) ; [226] flc_encode(DCDifferential+offsetl - DCDifferential2«offset,offset);
[227] }
[228] else {
[229] if (DCDifferential does not present in VLC table) {
[230] vlc_encode(ESCAPECODE);
[231] flc_encode(DCDifferential, 8);
[232] }
[233] else{
[234] vlc_encode(DCDifferential);
[235] }
[236] flc_encode(DCSign, 1); // DCSIGN
[237] }
[238] else
[239] vlc_encode(DCDifferential);
[240] Here, vlc_encode(symbol) indicates variable length coding (VLC) in which a value
'symbol' is transformed to a code corresponding to the value by referring to pre-defined 'table,' and flc_encode(symbol, num) indicates fixed length coding (FLC) in which the value 'symbol' is transformed to bits corresponding to the number 'num.'
[241] As shown in the encoding sequence described above, the encoding of the adjusted quantization variable is different from the conventional decoding systems.
[242] An image data decoding system, according to an embodiment of the present invention, will now be described in greater detail again with reference to FIG. 2.
[243] Again, the entropy decoder 200 may decode a bitstream of pixel values of an image and output the decoding result to the quantization coefficient determiner 210.
[244] Further, the entropy decoder 200 may decode a bitstream of pixel values based on a quantization variable adjusted according to the number of bits per pixel by the quantization coefficient determiner 210 and outputs the decoding result to the de- quantizer 220.
[245] Thus, the entropy decoder 200 may perform a reverse process as the above described entropy encoder 170, for example.
[246] According to an embodiment of the present invention, the following illustrates a sequence for performing decoding according to the quantization variable adjusted according to the number of bits per pixel.
[247] DCDifferential = vlc_decode( );
[248] if(DCDifferential != 0) {
[249] if(DCDifferential == ESCAPECODE) {
[250] if(QS = 2 x 2^8' )
[251] DCDifferential = flc_decode(2+N); // DCCOEF_ESC [252] else if (QS = 4 x 2(N 8) )
[253] DCDifferential = flc_decode(l+N); // DCCOEF_ESC
[254] else // QS > 4x 2(N 8)
[255] DCDifferential = flc_decode(8); // DCCOEF_ESC
[256] }
[257] else { // DCDifferential is not ESCAPECODE
[258] if(QS = 2 x 2^8' )
[259] DCDifferential = DCDifferentialx4 + flc_decode(2) - 3 ;
[260] else if (QS = 4 x 2(N 8) )
[261 ] DCDifferential = DCDiff erentialx2 + flc_decode( I) - I;
[262] }
[263] DCSign = flc_decode(l); // DCSIGN
[264] if (DCSign == 1)
[265] DCDifferential = -DCDifferential
[266] }
[267] As shown in the above decoding sequence, the decoding according to the adjusted quantization variable is different from conventional systems.
[268] Here, the quantization coefficient determiner 210 may determine a quantization coefficient according to the number of bits per pixel of the image by adjusting a quantization variable, e.g., as defined by a user, and output the determination result. The quantization coefficient determiner 210 may determine the quantization coefficient by multiplying the quantization variable, e.g., defined by the user, by a value proportional to the extended range of pixel values. Here, the quantization coefficient determiner 210 may further determine the quantization coefficient according to the changed number of bits per pixel by linearly mapping a quantization coefficient for a quantization value before being adjusted with the adjusted quantization variable.
[269] In addition, the quantization coefficient determiner 210 may determine a quantization coefficient in the low frequency domain using Equation 8, for example. The quantization coefficient determiner 210 may further determine a quantization coefficient in the high frequency domain using Equation 9, for example.
[270] Thereafter, the dequantizer 220 may dequantize the pixel values decoded by the entropy decoder 200 based on the quantization coefficient determined by the quantization coefficient determiner 210 and output the dequantization result to the de- transformer 230. Thus, the dequantizer 220 may dequantize the pixel values based on the quantization coefficient adjusted according to the number of bits per in the quantization coefficient determiner 210.
[271] In particular, the dequantization unit 220 may dequantize the pixel values decoded by the entropy decoder 200 using Equation 6, for example, when performing de- quantization of the DC component and uniform dequantization of the AC component.
[272] Further, the dequantization unit 220 may dequantizes the pixel values decoded by the entropy decoder 200 using Equation 11, for example, when performing nonuniform dequantization of the AC component.
[273] The detransformer 230 may then detransform the pixel values dequantized by the dequantization unit 220 and outputs the detransform result to the temporal prediction compensator 240.
[274] Thereafter, the temporal prediction compensator 240 may compensate for the temporally predicted pixel values of the pixel values detransformed by the de- transformer 230.
[275] Accordingly, an image data encoding method, according to an embodiment of the present invention, will now be described in detail again with reference to FIG. 3.
[276] Referring to FIG. 3, in operation 300, pixel values of a current block may be temporally predicted using a previous block in the time domain.
[277] The temporally predicted pixel values of an image may further be transformed to pixel values in the frequency domain, in operation 302.
[278] A quantization coefficient according to the number of bits per pixel of the image may be determined by adjusting a quantization variable, e.g., as defined by a user, in operation 304. In particular, a quantization coefficient in the low frequency domain may be determined using Equation 8, for example, and a quantization coefficient in the high frequency domain may be determined using Equation 9, for example.
[279] The transformed pixel values may further be quantized based on the determined quantization coefficient, in operation 306. Here, the pixel values may be quantized using Equation 4, for example, when quantization of the DC component or uniform quantization of the AC component is performed. Further, the transformed pixel values may be quantized using Equation 10, for example, when non-uniform quantization of the AC component is performed.
[280] A bitstream of the quantized pixel values may thereafter be generated, in operation
308. In particular, a bitstream of the quantized pixel values may be generated accord ing to a quantization variable adjusted according to the number of bits per pixel. That is, in operation 308, the bitstream of the quantized pixel values, e.g., performed by the above described entropy encoder 170, may be generated.
[281] An image data decoding method, according to an embodiment of the present invention, will now be described in detail again with reference to FIG. 4.
[282] Referring to FIG. 4, in operation 400, a bitstream of pixel values of an image may be decoded. In particular, the bitstream of pixel values may be decoded according to a quantization variable adjusted according to the number of bits per pixel. That is, the bitstream decoding process of the above described entropy decoder 200, for example, may be performed.
[283] A quantization coefficient may be determined, in operation 402, according to the number of bits per pixel of the image by adjusting a quantization variable, e.g., as defined by a user. In particular, a quantization coefficient in the low frequency domain may be determined using Equation 8, for example, and a quantization coefficient in the high frequency domain may be determined using Equation 9, for example.
[284] The decoded pixel values may be dequantized based on the determined quantization coefficient, in operation 404. Here, the quantized pixel values may be de- quantized using Equation 6, for example, when dequantization of the DC component or uniform dequantization of the AC component is performed. The decoded pixel values may further be dequantized using Equation 11, for example, when non-uniform de- quantization of the AC component is performed.
[285] The dequantized pixel values may then be detransformed, in operation 406, and the temporally predicted pixel values of the detransformed pixel values may then be compensated for, in operation 408.
[286] In addition to the above described embodiments, embodiments of the present invention can also be implemented through computer readable code/instructions in/on a medium, e.g., a computer readable medium. The medium can correspond to any medium/media permitting the storing and/or transmission of the computer readable code.
[287] The computer readable code can be recorded/transferred on a medium in a variety of ways, with examples of the medium including magnetic storage media (e.g., ROM, floppy disks, hard disks, etc.), optical recording media (e.g., CD-ROMs, or DVDs), and storage/transmission media such as carrier waves, as well as through the Internet, for example. Here, the medium may further be a signal, such as a resultant signal or bitstream, according to embodiments of the present invention. The media may also be a distributed network, so that the computer readable code is stored/transferred and executed in a distributed fashion.
[288] Although a few embodiments of the present invention have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the claims and their equivalents.

Claims

Claims
[1] 1. An image data encoding system, comprising: a quantization coefficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of an image being encoded by adjusting a quantization variable; a quantization unit to quantize pixel values based on the quantization coefficient; and an entropy encoder generating a bitstream of the quantized pixel values.
[2] 2. The image data encoding system of claim 1, further comprising a transformer to transform pixel values of the image in a time domain to the pixel values in a frequency domain and to output the pixel values to the quantization coefficient determiner for determining of the quantization coefficient.
[3] 3. The image data encoding system of claim 1, wherein the quantization coefficient determiner adjusts a range of quantization variables based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[4] 4. The image data encoding system of claim 3, wherein the quantization coefficient determiner determines the quantization coefficient based on the adjusted range of quantization variables.
[5] 5. The image data encoding system of claim 4, wherein the quantization coefficient determiner determines the quantization coefficient so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[6] 6. The image data encoding system of claim 5, wherein the quantization coefficient determiner determines the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
[7] 7. The image data encoding system of claim 5, wherein the quantization coefficient determiner determines the quantization coefficient according to the change in the number of bits by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[8] 8. The image data encoding system of claim 1, wherein the quantization variable is defined by a user.
[9] 9. A system, comprising: a quantization coefficient determiner to determine a quantization coefficient cor- responding to a number of bits per pixel of an image by adjusting a quantization variable; and a quantization unit to quantize or dequantize pixel values based on the quantization coefficient.
[10] 10. The system of claim 9, further comprising a transformer to transform pixel values of the image in a time domain to the pixel values in a frequency domain and to output the pixel values to the quantization coefficient determiner for determining of the quantization coefficient.
[11] 11. The system of claim 9, wherein the system is an encoder system, with the system further comprising a bitstream generator to generate the bitstream with the quantized pixel values.
[12] 12. The system of claim 9, wherein the system is a decoder system, and the quantization unit is a dequantization unit that dequantizes the pixel values, with the system further comprising an entropy decoder to decode a bitstream containing the pixel values of the image.
[13] 13. An image data decoding system, comprising: an entropy decoder to decode a bitstream of pixel values of an image; a quantization coefficient determiner to determine a quantization coefficient corresponding to a number of bits per pixel of the image by adjusting a quantization variable; and a dequantization unit to dequantize pixel values decoded by the entropy decoder based on the determined quantization coefficient.
[14] 14. The image data decoding system of claim 13, further comprising a de- transformer to detransform the dequantized pixel values from a frequency domain into a time domain.
[15] 15. The image data decoding system of claim 13, wherein the quantization coefficient determiner adjusts a range of quantization variables based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[16] 16. The image data decoding system of claim 15, wherein the quantization coefficient determiner determines the quantization coefficient based on the adjusted range of quantization variables.
[17] 17. The image data decoding system of claim 16, wherein the quantization coefficient determiner determines the quantization coefficient so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[18] 18. The image data decoding system of claim 17, wherein the quantization coefficient determiner determines the quantization coefficient by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
[19] 19. The image data decoding system of claim 17, wherein the quantization coefficient determiner determines the quantization coefficient according to the change in the number of bits by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[20] 20. The image data decoding system of claim 13, wherein the dequantization unit dequantizes the pixel values based on the quantization coefficient adjusted according to the number of bits per pixel in the quantization coefficient determiner.
[21] 21. The image data decoding system of claim 13, wherein the quantization variable is defined by a user.
[22] 22. An image data encoding method, comprising: determining a quantization coefficient corresponding to a number of bits per pixel of an image by adjusting a quantization variable; quantizing pixel values of the image based on the determined quantization coefficient; and generating a bitstream of the quantized pixel values.
[23] 23. The image data encoding method of claim 22, further comprising transforming pixel values of the image in a time domain to the pixel values in a frequency domain for the determining of the quantization coefficient.
[24] 24. The image data encoding method of claim 22, wherein, in the determining of the quantization coefficient, a range of quantization variables is adjusted based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[25] 25. The image data encoding method of claim 24, wherein, in the determining of the quantization coefficient, the quantization coefficient is determined based on the adjusted range of quantization variables.
[26] 26. The image data encoding method of claim 25, wherein, in the determining of the quantization coefficient, the quantization coefficient is determined so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[27] 27. The image data encoding method of claim 26, wherein, in the determining of the quantization coefficient, the quantization coefficient is determined by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
[28] 28. The image data encoding method of claim 26, wherein, in the determining of the quantization coefficient, the quantization coefficient according to the change in the number of bits is determined by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable.
[29] 29. The image data encoding method of claim 22, wherein the quantization variable is defined by a user.
[30] 30. At least one medium comprising computer readable code to implement the method of claim 22.
[31] 31. An image data decoding method, comprising: decoding a bitstream of pixel values of an image; determining a quantization coefficient corresponding to a number of bits per pixel of the image by adjusting a quantization variable; and dequantizing the pixel values based on the determined quantization coefficient.
[32] 32. The image data decoding method of claim 31, further comprising de- transforming the dequantized pixel values from a frequency domain into a time domain.
[33] 33. The image data decoding method of claim 31, wherein, in the determining of the quantization coefficient, a range of quantization variables is adjusted based on a range of pixel values that is extended according to a change in the number of bits per pixel.
[34] 34. The image data decoding method of claim 33, wherein, in the determining of the quantization coefficient, the quantization coefficient is determined based on the adjusted range of quantization variables.
[35] 35. The image data decoding method of claim 34, wherein, in the determining of the quantization coefficient, the quantization coefficient is determined so that an existing quantization step, according to the number of bits per pixel, is maintained constant regardless of the change in the number of bits per pixel.
[36] 36. The image data decoding method of claim 35, wherein, in the determining of the quantization coefficient, the quantization coefficient is determined by adding a value proportional to the extended range of pixel values to the quantization variable or by multiplying the quantization variable by a value proportional to the extended range of pixel values.
[37] 37. The image data decoding method of claim 35, wherein, in the determining of the quantization coefficient, the quantization coefficient according to the change in the number of bits is determined by linearly mapping a quantization coefficient for a quantization variable before being adjusted with the adjusted quantization variable. [38] 38. The image data decoding method of claim 31, wherein, in the dequantizing of the decoded pixel values, the pixel values are dequantized based on the quantization coefficient adjusted according to the number of bits per pixel. [39] 39. The image data decoding method of claim 31, wherein the quantization variable is defined by a user. [40] 40. At least one medium comprising computer readable code to implement the method of claim 31.
PCT/KR2006/002744 2005-07-12 2006-07-12 System, medium, and method encoding and/or decoding image data WO2007027004A2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2005-0062932 2005-07-12
KR20050062932 2005-07-12
KR1020060063532A KR100813258B1 (en) 2005-07-12 2006-07-06 Apparatus and method for encoding and decoding of image data
KR10-2006-0063532 2006-07-06

Publications (1)

Publication Number Publication Date
WO2007027004A2 true WO2007027004A2 (en) 2007-03-08

Family

ID=38010607

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2006/002744 WO2007027004A2 (en) 2005-07-12 2006-07-12 System, medium, and method encoding and/or decoding image data

Country Status (3)

Country Link
US (1) US7848586B2 (en)
KR (1) KR100813258B1 (en)
WO (1) WO2007027004A2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107547899B (en) * 2011-04-22 2020-03-17 杜比国际公司 Lossy compression coding data method and device and corresponding data reconstruction method and device
KR101874100B1 (en) * 2011-12-02 2018-07-04 삼성전자주식회사 Method and apparatus for encoding and decoding image
US10194147B2 (en) * 2017-01-19 2019-01-29 Google Llc DC coefficient sign coding scheme
US11190810B2 (en) 2018-01-26 2021-11-30 Samsung Electronics Co., Ltd. Device and method for compressing image data using quantization parameter and entropy tables
KR20200065367A (en) 2018-11-30 2020-06-09 삼성전자주식회사 Image processing device and frame buffer compressor

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5115309A (en) * 1990-09-10 1992-05-19 At&T Bell Laboratories Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders
KR100287624B1 (en) * 1992-09-28 2001-04-16 야스카와 히데아키 Image data compression, decompression method and device
WO1996002895A1 (en) 1994-07-14 1996-02-01 Johnson Grace Company Method and apparatus for compressing images
KR0170937B1 (en) * 1994-12-14 1999-03-20 배순훈 Image data encoder
JP3170193B2 (en) * 1995-03-16 2001-05-28 松下電器産業株式会社 Image signal encoding apparatus and decoding apparatus
JPH1079940A (en) 1996-09-05 1998-03-24 Mitsubishi Electric Corp Image encoder
CN1145363C (en) * 1997-02-08 2004-04-07 松下电器产业株式会社 Static picture and cartoon cooding quantization matrix
US6111991A (en) * 1998-01-16 2000-08-29 Sharp Laboratories Of America Method and apparatus for optimizing quantizer values in an image encoder
US6532262B1 (en) * 1998-07-22 2003-03-11 Matsushita Electric Industrial Co., Ltd. Coding method and apparatus and recorder
GB2346282B (en) * 1999-01-28 2003-02-19 Snell & Wilcox Ltd Bit rate control in compression encoding
US6738423B1 (en) 2000-01-21 2004-05-18 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
US6501739B1 (en) * 2000-05-25 2002-12-31 Remoteability, Inc. Participant-controlled conference calling system
US7130876B2 (en) 2001-11-30 2006-10-31 General Instrument Corporation Systems and methods for efficient quantization
US7295609B2 (en) * 2001-11-30 2007-11-13 Sony Corporation Method and apparatus for coding image information, method and apparatus for decoding image information, method and apparatus for coding and decoding image information, and system of coding and transmitting image information
US6763068B2 (en) 2001-12-28 2004-07-13 Nokia Corporation Method and apparatus for selecting macroblock quantization parameters in a video encoder
US7054497B2 (en) 2002-06-14 2006-05-30 Koninklijke Philips Electronics N.V. Method and system for optimizing image sharpness during coding and image enhancement
JP4462823B2 (en) 2002-11-20 2010-05-12 ソニー株式会社 Image signal processing apparatus and processing method, coefficient data generating apparatus and generating method used therefor, and program for executing each method
KR100540349B1 (en) * 2002-12-30 2006-01-11 에스케이 텔레콤주식회사 An adaptive method for selecting quantizers
KR20040076034A (en) * 2003-02-24 2004-08-31 삼성전자주식회사 Method and apparatus for encoding video signal with variable bit rate
US7403561B2 (en) * 2003-04-04 2008-07-22 Avid Technology, Inc. Fixed bit rate, intraframe compression and decompression of video
US7580584B2 (en) 2003-07-18 2009-08-25 Microsoft Corporation Adaptive multiple quantization
US7492820B2 (en) * 2004-02-06 2009-02-17 Apple Inc. Rate control for video coder employing adaptive linear regression bits modeling
US8045614B2 (en) * 2005-05-11 2011-10-25 Dolby Laboratories Licensing Corporation Quantization control for variable bit depth
US7499592B2 (en) 2004-06-15 2009-03-03 Canon Kabushiki Kaisha Image decoding apparatus and its control method
US20080075166A1 (en) * 2004-07-13 2008-03-27 Dolby Laboratories Licensing Corporation Unbiased Rounding for Video Compression
US20070147510A1 (en) 2005-12-27 2007-06-28 Islam Asad Method and module for altering color space parameters of video data stream in compressed domain

Also Published As

Publication number Publication date
US20070019871A1 (en) 2007-01-25
US7848586B2 (en) 2010-12-07
KR20070008401A (en) 2007-01-17
KR100813258B1 (en) 2008-03-13

Similar Documents

Publication Publication Date Title
US20230052841A1 (en) Video decoder with reduced dynamic range transform with inverse transform shifting memory
US20130114685A1 (en) Video decoder with constrained dynamic range
EP2227907A1 (en) Method and apparatus for quantization, and method and apparatus for inverse quantization
AU2012207827A1 (en) Video decoder with reduced dynamic range transform with inverse transform shifting memory
WO2007027004A2 (en) System, medium, and method encoding and/or decoding image data
US9602830B2 (en) Video decoder with constrained dynamic range
US7995847B2 (en) Apparatus and method for encoding and decoding image data with selected quantization based on pixel bit depth
US20130114688A1 (en) Video Decoder with Constrained Dynamic Range
US20120183045A1 (en) Video decoder with reduced dynamic range transform including clipping
US20120230395A1 (en) Video decoder with reduced dynamic range transform with quantization matricies
US20150365673A1 (en) Video Decoder with Reduced Dynamic Range Transform with Inverse Transform Clipping
US20120183048A1 (en) Video decoder with reduced dynamic range transform with multiple clipping
US20120183044A1 (en) Video decoder with reduced dynamic range transform with memory storing
KR101088374B1 (en) Apparatus and method for encoding and decoding of image data
AU2016219700B2 (en) Video decoder with reduced dynamic range transform with inverse transform shifting memory

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06823586

Country of ref document: EP

Kind code of ref document: A2