US8194740B2 - Apparatus and method for compression-encoding moving picture - Google Patents
Apparatus and method for compression-encoding moving picture Download PDFInfo
- Publication number
- US8194740B2 US8194740B2 US11/774,948 US77494807A US8194740B2 US 8194740 B2 US8194740 B2 US 8194740B2 US 77494807 A US77494807 A US 77494807A US 8194740 B2 US8194740 B2 US 8194740B2
- Authority
- US
- United States
- Prior art keywords
- mode
- prediction bit
- linear
- calculating
- specific
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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 an image region, e.g. an object
- H04N19/176—Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Definitions
- the present invention relates to an apparatus for compression-encoding a moving picture on the basis of H.264, etc., and more particularly, to an apparatus and method for compression-encoding a moving picture directed to preventing image quality deterioration while minimizing the amount of calculation performed for rate-distortion optimization (RDO).
- RDO rate-distortion optimization
- Digital image data is used in video conferencing, high-definition televisions (HDTVs), video-on-demand (VOD) receivers, moving picture experts group (MPEG) image-supporting personal computers, video game systems, digital ground wave broadcast receivers, digital satellite broadcast receivers, cable TVs (CATVs), and so on.
- HDTVs high-definition televisions
- VOD video-on-demand
- MPEG moving picture experts group
- characteristics of images and conversion of an analog signal into a digital signal yield a large amount of digital image data.
- the digital image data is not used as is but rather is compressed by an efficient compression method.
- Three main compression methods are used to compress digital image data. These are a method of reducing temporal redundancy, a method of reducing spatial redundancy, and a compression method using stochastic properties of generation codes.
- a representative method of reducing temporal redundancy is a motion estimation and compensation method, which is used in most moving picture compression standards such as MPEG, H.263, etc.
- the motion estimation and compensation method is used to search for the portion of a previous or next reference screen that is most similar to a particular portion of a current screen, and transmit only difference components between the two portions.
- the more precisely motion vectors are searched for the less difference component data there is to transmit, thus providing a way to efficiently reduce the amount of data.
- searching for the most similar portion of the previous or next screen requires a considerably long estimation time and a large amount of calculation.
- An H.264 codec performs the search using a cost function based on RDO instead of using a conventional sum of absolute difference (SAD)-based method.
- the cost function employed in H.264 uses a rate-distortion (RD) cost calculated by adding the number of encoded coefficients multiplied by a Lagrangian multiplier to a conventional SAD value.
- RD rate-distortion
- the number of encoded coefficients is replaced with a value proportional to a quantized coefficient and then multiplied by a fixed Lagrangian multiplier to determine a compensation cost in order to perform the search.
- encoding is performed in 16 ⁇ 16 or 8 ⁇ 8 large block units in conventional moving picture encoding, but a mode having the lowest value among eight different block modes is selected in H.264 moving picture encoding.
- FIG. 1 is a block diagram showing the constitution of a general H.264 moving picture encoder.
- a motion estimator comprises an integer-pixel estimator for estimating an integer-pixel-specific motion vector, and a sub-pixel estimator for estimating optimum half-pixel and quarter-pixel-specific motion vectors on the basis of the estimated integer-pixel-specific motion vector.
- the illustrated conventional H.264 encoder comprises a motion estimation (ME) module 22 , a motion compensation (MC) module 24 , an intra mode estimation (IME) module 32 , an intra prediction (IP) module 34 , a de-quantization (IQ) module 58 , an inverse discrete cosine transform (IDCT) module 56 , an entropy encoding module 64 , a deblocking filter 92 , frame memories 12 , 14 and 18 , and so on.
- ME motion estimation
- MC motion compensation
- IME intra mode estimation
- IP intra prediction
- IQ de-quantization
- IDCT inverse discrete cosine transform
- the motion estimation module 22 performs a function of detecting a motion vector from several reference images and a macroblock mode determination function of searching for the optimum macroblock type having the minimum bit rate and errors.
- the motion compensation module 24 functions to obtain a compensation image from a reference image according to the motion vector and macroblock mode type detected by the motion estimation module 22 .
- the motion compensation module 24 is limited to obtaining differences between two compared images, and the following process for obtaining a compensation image is resumed by a discrete cosine transform (DCT) block 52 and a quantization module 54 .
- DCT discrete cosine transform
- the intra mode estimation module 32 functions to select the optimum intra prediction mode by performing prediction on adjacent blocks.
- the intra prediction module 34 functions to obtain an intra-predicted compensation image from previously coded adjacent blocks using the selected intra prediction mode.
- the intra mode estimation module 32 performs a similar function to the motion estimation module 22 in inter mode and thus is referred to as a motion estimation module in intra mode.
- the intra prediction module 34 performs a similar function to the motion compensation module 24 in inter mode and thus is referred to as a motion compensation module in intra mode.
- the DCT module 52 perfumes 4 ⁇ 4 DCT, the quantization module 54 quantizes coefficients transformed by the DCT 52 , and the IDCT module 56 and the dequantization module 58 respectively perform the reverse of operations performed by the DCT module 52 and the quantization module 54 .
- the operation result Dn′ of the IDCT module 56 is restored images that have not passed through the deblocking filter 92 .
- the entropy encoding module 64 performs entropy coding using bit allocation based on the probability of the occurrence of quantized DCT coefficients.
- the deblocking filter module 92 functions to improve the quality of the restored images obtained through the IDCT module 56 , and the improved-quality images are stored in the frame memory module 18 to be used as references for subsequently input images.
- the H.264 standard has several reference images, and a plurality of previously encoded images as well as an immediately previous frame can be used as the reference images. This is called multiple reference frames.
- the H.264 standard performs encoding in slices including an I_slice, a P_slice, a B_slice, an SI_slice and an SP slice.
- a slice can be regarded as a single frame. That is, the I_slice, the P_slice and the B_slice are almost the same as an I_picture, a P_picture and a B_picture of the conventional MPEG standards.
- the H.264 standard defines an inter mode representing each macroblock making up currently input frame data by a moving vector and difference value with respect to previous frame data, and an intra mode representing each macroblock by a moving vector and a difference value with respect to the same frame data.
- macroblock size P16 ⁇ 16, P16 ⁇ 8, P8 ⁇ 16, P8 ⁇ 8, P8 ⁇ 4, P4 ⁇ 8 and P4 ⁇ 4 modes exist in the inter mode, and I16 ⁇ 16 and I4 ⁇ 4 modes exist in the intra mode.
- An H.264 encoding apparatus selects a mode providing high compression efficiency due to a low cost.
- the method of selecting an optimal block mode is an RDO technique.
- a motion estimation and mode decision algorithm using RDO can improve a bit rate by 5 to 10% at a cost of 30 to 40% encoding speed.
- the H.264 standard performs motion estimation and compensation for all the modes in the sequence illustrated in FIG. 2 (alternatively, an I16 ⁇ 16 mode may be processed after B-slice check), calculates compensation costs, and compares the calculated compensation costs to determine an optimum mode for received frame data.
- FIG. 3 is a conceptual diagram illustrating an encoding process performed by an H.264 moving picture encoding apparatus using conventional RDO. All the blocks illustrated in FIG. 3 can be embodied as separate pieces of hardware, but this increases hardware load. Generally, at least two of blocks 1200 to 1700 for mode decision are embodied as sequential operations of one piece of hardware. In this sense, FIG. 3 is merely a conceptual diagram. In FIG. 3 , a motion estimation block and a motion compensation block may have structures shown in FIGS. 4 and 5 , and an encoding block 1100 may have the structure of the H.264 encoder shown in FIG. 1 .
- a B_slice check block 1200 is directed to calculating an estimation value in a skip mode processing a previous frame and a next frame by division blocks having the zero vector for a moving vector.
- Three inter mode prediction blocks 1300 , 1400 and 1500 respectively operating according to P16 ⁇ 16, P16 ⁇ 8/P8 ⁇ 16 and P8 ⁇ 8 or less modes are directed to calculating inter mode-specific prediction bit values from the continuous parts of a moving picture.
- Two intra prediction blocks 1600 and 1700 respectively operating according to I16 ⁇ 16 and I4 ⁇ 4 modes are directed to calculating intra mode-specific prediction bit values from the non-continuous parts of a moving picture.
- the P8 ⁇ 8 mode may be further classified into P8 ⁇ 8, P8 ⁇ 4, P4 ⁇ 8 and P4 ⁇ 4 modes to be processed.
- the 6 prediction bit calculators 1200 to 1700 calculate prediction bit values for 7 modes, respectively (the 16 ⁇ 8/8 ⁇ 16 mode integer-predictor calculates two prediction bit values for 16 ⁇ 8 and 8 ⁇ 16 modes).
- a mode decision block 1900 examines the 7 prediction bit values and selects the most appropriate mode, and the final encoding block 1100 converts input frame data according to the determined mode.
- each block is embodied as a separate hardware module
- hardware cost goes up.
- the blocks are embodied in one hardware module for prediction value calculation
- the hardware module performs predicted value calculation 8 times (once for each of the 7 modes and once for a determined mode). Consequently, it can be seen that the amount of calculation for moving picture encoding is considerably large.
- the present invention is directed to an apparatus and method for compression-encoding a moving picture, capable of minimizing the amount of calculation while efficiently performing rate-distortion optimization (RDO) during moving picture compression-encoding operation.
- RDO rate-distortion optimization
- One aspect of the present invention provides an apparatus for compression-encoding a moving picture, comprising: a B-slice checker for performing a B-slice check for current frame data; a maximum inter mode prediction bit calculator for performing motion estimation and motion compensation for an inter mode using the maximum division block and calculating a prediction bit value; a minimum intra mode prediction bit calculator for performing motion estimation and motion compensation for an intra mode using the minimum division block and calculating a prediction bit value; a linear prediction bit estimator for calculating prediction bit values for modes other than the inter mode using the maximum division block and the intra mode using the minimum division block, using linear parameters and stochastic values; a mode determiner for comparing the prediction bit values calculated by the maximum inter mode prediction bit calculator, the minimum intra mode prediction bit calculator and the linear prediction bit estimator, and determining an appropriate encoding mode; and an encoder for encoding the current frame data in the mode determined by the mode determiner.
- Another aspect of the present invention provides a method of compression-encoding a moving picture, comprising the steps of: (a) performing a B-slice check for input current frame data; (b) performing motion estimation and motion compensation for an inter mode using the maximum division block, and calculating a prediction bit value; (c) performing motion estimation for inter modes other than the mode using the maximum division block and intra modes other than a mode using the minimum division block; (d) applying linear parameters to the motion estimation result of step (c) and calculating mode-specific prediction bit values; (f) performing motion estimation and motion compensation for the intra mode using the minimum division block and calculating a linear prediction bit value; (g) comparing the linear prediction bit values with each other and determining the optimum mode; and (h) encoding the current frame data in the determined optimum mode.
- the present invention includes a separate rate-distortion (RD) estimator capable of easily estimating an RD value by calculation employing a linear parameter which is updated in real time through a feedback process.
- RD rate-distortion
- FIG. 1 is a block diagram showing the constitution of a general H.264 encoder
- FIG. 2 is a flowchart showing the sequence of determining mode-specific prediction values according to a general H.264 moving picture encoding method
- FIG. 3 is a conceptual diagram illustrating an H.264 moving picture compression-encoding method according to conventional art
- FIG. 4 is a block diagram showing the detailed constitution of a motion estimator among the components of a general H.264 moving picture compression-en-coding apparatus
- FIG. 5 is a block diagram showing the detailed constitution of a motion compensator among the components of a general H.264 moving picture compression-encoding apparatus
- FIG. 6 is a block diagram showing the constitution of an H.264 moving picture compression-encoding apparatus according to an exemplary embodiment of the present invention.
- FIG. 7 is a block diagram showing the constitution of a linear feedback calculator among the components of the H.264 moving picture compression-encoding apparatus of FIG. 6 .
- an H.264 encoding apparatus employing a feedback structure for fast encoding according to the present invention will be described in detail. Therefore, in this exemplary embodiment conforming to the H.264 standard, an inter mode of the maximum division block is a P16 ⁇ 16 mode, an intra mode of the minimum division block is an I4 ⁇ 4 mode, and a compensation cost is a rate-distortion (RD) value.
- RD rate-distortion
- FIG. 6 illustrates the constitution of an H.264 moving picture compression-encoding apparatus according to an exemplary embodiment of the present invention.
- the moving picture compression-encoding apparatus of this exemplary embodiment comprises a B-slice checker 200 , a maximum inter mode prediction bit calculator 300 , a minimum intra mode prediction bit calculator 500 , a linear prediction bit estimator 400 , a mode determiner 600 , and an H.264 encoder 100 .
- the B-slice checker 200 performs a B-slice check for current frame data.
- the maximum inter mode prediction bit calculator 300 performs motion estimation (ME) and motion compensation (MC) for a P16 ⁇ 16 mode and calculates a prediction bit value.
- ME motion estimation
- MC motion compensation
- the minimum intra mode prediction bit calculator 500 performs estimation and compensation for pixels in the same frame in an I4 ⁇ 4 mode and calculates a compensation cost.
- the linear prediction bit estimator 400 calculates prediction bit values with respect to modes other than the P16 ⁇ 16 mode and the I4 ⁇ 4 mode using linear parameters and stochastic values.
- the mode determiner 600 compares prediction bit values Y 0 to Y 6 calculated by the maximum inter mode prediction bit calculator 300 , the minimum intra mode prediction bit calculator 500 and the linear prediction bit estimator 400 , and determines an appropriate encoding mode.
- the H.264 encoder 100 encodes the current frame data in the mode determined by the mode determiner 600 .
- the B-slice checker 200 may be a conventional kind, but, in order to reduce hardware load, may calculate the prediction bit value Y 0 by performing a B-slice check for only luminance component data.
- the maximum inter mode prediction bit calculator 300 and the minimum intra mode prediction bit calculator 500 may be the same as in the conventional art, but, in order to reduce the hardware load, may perform motion estimation, motion compensation and compensation cost calculation for only luminance component data.
- the maximum inter mode prediction bit calculator 300 and the minimum intra mode prediction bit calculator 500 may comprise luminance motion estimators 310 and 510 , luminance motion compensators 320 and 520 , and writers 350 and 550 , respectively.
- the writers 350 and 550 output not an encoding sequence but the linear prediction values Y 1 and Y 6 only, unlike a writer 150 of the encoder 100 .
- the linear prediction bit estimator 400 comprises a first motion estimator 411 , a first stochastic value calculator 471 , a second motion estimator 412 , a second stochastic value calculator 472 , a third motion estimator 413 , a third stochastic value calculator 473 , and a linear feedback calculator 460 .
- the first motion estimator 411 performs motion estimation for an inter I6 ⁇ 8 mode.
- the first stochastic value calculator 471 calculates a stochastic vector (E dY2 , E dUV2 , ⁇ dY2 , ⁇ dUV2 ) required for linear prediction value estimation using values obtained by the first motion estimator 411 .
- the second motion estimator 412 performs motion estimation for an inter 8 ⁇ 16 mode.
- the second stochastic value calculator 472 calculates a stochastic vector (E dY3 , E dUV3 , ⁇ dY3 , ⁇ dUV3 ) required for linear prediction value estimation using values obtained by the second motion estimator 412 .
- the third motion estimator 413 performs motion estimation for inter 8 ⁇ 8 or less modes.
- the third stochastic value calculator 473 calculates a stochastic vector (E dY4 , E dUV4 , ⁇ dY4 , ⁇ dUV4 ) required for linear prediction value estimation using values obtained by the third motion estimator 413 .
- the linear feedback calculator 460 respectively applies linear parameters to four stochastic vectors (E dY2 , E dUV2 , ⁇ dY2 , ⁇ dUV2 ), (E dY3 , E dUV3 , ⁇ dY3 , ⁇ dUV3 ), (E dY4 , E dUV4 , ⁇ dY4 , ⁇ dUV4 ) and (E dY5 , E dUV5 , ⁇ dY5 , ⁇ dUV5 ) and calculates linear prediction values according to Formula 1 given below.
- the linear feedback calculator 460 comprises a linear calculator 462 , a subtracter 466 , a parameter updater 464 , and a parameter storage 468 .
- the subtracter 466 calculates an error E ⁇ between the calculated linear prediction bit value Y and an actual linear prediction bit value Y r output from the encoder 100 of FIG. 6 .
- the parameter updater 464 calculates an update value of the linear parameter using the error E ⁇ between the linear prediction bit values.
- the parameter storage 468 stores the updated parameter .
- stochastic value calculators 471 to 474 are respectively prepared for the modes.
- stochastic vectors with respect to 4 modes may be calculated in sequence by one stochastic value calculator.
- the linear feedback calculator 460 is illustrated as one module in FIG. 6 but may also be embodied as several modules separately prepared for each mode.
- the mode determiner 600 receives the 7 linear prediction values Y 0 to Y 6 , applies each of them to Formula 4 given below to calculate an RD value, and selects a mode having the minimum cost (RD value).
- An encoding method performed by the moving picture compression-encoding apparatus constituted as described above comprises the steps of: (a) performing a B-slice check for input current frame data; (b) performing motion estimation and motion compensation for an inter mode (P16 ⁇ 16 in H.264) using the maximum division block, and calculating a prediction bit value; (c) performing motion estimation for inter modes other than the mode using the maximum division block and intra modes other than a mode using the minimum division block; (d) applying linear parameters to the motion estimation result of step (c) and calculating mode-specific prediction bit values; (f) performing motion estimation and motion compensation for the intra mode (I4 ⁇ 4 in H.264) using the minimum division block and calculating a linear prediction bit value; (g) comparing the linear prediction bit values with each other and determining the optimum mode; and (h) encoding the current frame data in the determined optimum mode.
- Step (a) is performed by the B-slice checker 200 of FIG. 6 .
- Step (a) may be performed according to conventional art, but, in order to further reduce the amount of calculation, may be implemented to perform a B-slice check for only luminance component data among the current frame data.
- Step (b) is performed by the maximum inter mode prediction bit calculator 300 of FIG. 6 .
- step (b) motion estimation is performed, and the corresponding macroblock data is discrete cosine transform (DCT)-converted and quantized according to a motion estimation value.
- DCT discrete cosine transform
- a compensation cost with respect to the inter mode using the maximum division block may be calculated by performing motion estimation and motion compensation only for a luminance frame formed according to luminance component pixel values and not for a chrominance frame formed according to chrominance component pixel values.
- Steps (c) to (g) are main parts of the present invention performed by the linear prediction bit estimator 400 of FIG. 6 .
- step (c) motion estimation between a reference frame and a current frame is performed for each inter mode (16 ⁇ 8, 8 ⁇ 16, 8 ⁇ 8, 8 ⁇ 4, 4 ⁇ 8, 4 ⁇ 4 in H.264), and motion estimation between pixel values in the same frame is performed for each intra mode (16 ⁇ 16 in H.264).
- Step (d) comprises the sub-steps of (d1) calculating mode-specific averages and variances of luminance errors and mode-specific averages and variances of chrominance errors from mode-specific motion estimation results of step (c), and (d2) calculating mode-specific linear prediction bit values using mode-specific linear parameters, the mode-specific averages and variances of luminance errors, and the mode-specific averages and variances of chrominance errors.
- step (d2) the mode-specific prediction bit values are calculated by Formula 1 given below.
- step (g) the mode-specific prediction bit values calculated in step (d2) are applied to Formula 2 given below so that mode-specific prediction bit values of step (c) may be calculated.
- Step (f) is performed by the minimum intra mode prediction bit calculator 500 of FIG. 6 .
- Step (f) may be performed according to conventional art, but, in order to further reduce the amount of calculation, motion estimation and motion compensation between the pixel values of the same frame may be performed only for a luminance frame formed according to luminance component pixel values and not for a chrominance frame formed according to chrominance component pixel values, to calculate a prediction bit value for the intra mode using the minimum division block.
- the step of updating the linear parameters may be further included.
- the update of a linear parameter may be made in macroblock units for which steps (c) to (g) are performed once. However, since it is preferable that the same linear parameter is applied while one frame is being processed, it is better to update the linear parameter after processing one frame.
- linear feedback calculator 460 which is an important part of the present invention, will be described in detail below.
- the linear, feedback calculator 460 In order to calculate an RD value as described above, the linear, feedback calculator 460 must estimate block-specific prediction bit values very accurately.
- the linear feedback calculator 460 uses as an input a DCT value obtained during a motion compensation process, or the average and variance of errors which are information corresponding to the DCT value, and so on.
- the linear feedback calculator 460 stores parameters corresponding to the input value and calculates a prediction bit value by linearly or non-linearly combining the input value with a stored linear parameter.
- FIG. 7 is a conceptual diagram illustrating such an operation.
- an input is the averages and variances of block errors in luminance and chrominance components
- a parameter is denoted by a value corresponding to the input
- an input stochastic vector is denoted by X
- a linear parameter vector is denoted by P.
- linear feedback calculator 460 The principal of operation of the linear feedback calculator 460 will be described in detail with reference to formulas and input examples.
- the motion estimators 411 to 414 in the linear prediction bit estimator 400 calculate errors (errors between blocks) between pixels of macroblocks divided from the current frame data and pixels of a window region defined by the moving vector of the current frame.
- a inter-block variance of luminance components is denoted by ⁇ dY
- a variance of chrominance components is denoted by ⁇ dUV
- a parameter is presented in a 6 ⁇ 4 matrix form.
- a fixed value corresponding to the header information of the corresponding block mode is b
- the linear prediction bit value Y is defined by Formula 1.
- Y X ⁇ P T +b
- Y denotes a linear prediction value of a rate value for RD value calculation.
- E ⁇ a rate value actually obtained by the motion compensation process
- t is an adaptive gain calculated according to the stochastic Armijo's rule.
- the updated parameter ⁇ circumflex over (P) ⁇ is substituted by P in the next part and used as a parameter for the next input to predict a rate value.
- An initial linear prediction bit estimation operation for the current frame data is performed by applying an initial value to the linear parameter P.
- initial values may be the same fixed value of about 20, any values between 10 and 20, or determined by referring to previous encoding results.
- a Lagrangian Multiplier ⁇ is formed using the linearly estimated rate value Y and a previously calculated sum of absolute difference (SAD) or sum of squared difference (SSD) value, a desired RD value is obtained.
- the coefficient ⁇ is for translating the bits (or rate R) which is generated from encoding, to the domain of the distortion D.
Abstract
Description
Y=X·P T +
E ε =Y R −Y Formula 2
RD=SAD+λY n Formula 4
Claims (19)
Y=X·P T +b,
E ε =Y R −Y.
RD=SAD+λY n,
Y=X·P T +b,
RD=SAD+λY n,
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2006-0095244 | 2006-09-29 | ||
KR1020060095244A KR100845303B1 (en) | 2006-09-29 | 2006-09-29 | Video compressing encoding device based on feed-back structure for a fast encoding and Decision method of optimal mode |
Publications (2)
Publication Number | Publication Date |
---|---|
US20080080616A1 US20080080616A1 (en) | 2008-04-03 |
US8194740B2 true US8194740B2 (en) | 2012-06-05 |
Family
ID=39261183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/774,948 Expired - Fee Related US8194740B2 (en) | 2006-09-29 | 2007-07-09 | Apparatus and method for compression-encoding moving picture |
Country Status (2)
Country | Link |
---|---|
US (1) | US8194740B2 (en) |
KR (1) | KR100845303B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150169422A1 (en) * | 2013-12-13 | 2015-06-18 | Metal Industries Research & Development Centre | Evaluation method for calibration of processing equipment |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BRPI0822986A2 (en) * | 2008-08-08 | 2015-06-23 | Thomson Licensing | Methods and apparatus for detection of inconsistencies in the form of obscure interference |
KR101221874B1 (en) | 2008-12-03 | 2013-01-15 | 한국전자통신연구원 | Image processing device |
EP2594613B1 (en) | 2010-07-12 | 2016-09-21 | Hanwha Chemical Corporation | Conductive coating composition and method for manufacturing a conductive layer using same |
WO2012018242A2 (en) | 2010-08-05 | 2012-02-09 | 한화케미칼 주식회사 | High-efficiency heat-dissipating paint composition using a carbon material |
US9172960B1 (en) * | 2010-09-23 | 2015-10-27 | Qualcomm Technologies, Inc. | Quantization based on statistics and threshold of luminanceand chrominance |
CN103262542A (en) * | 2010-10-26 | 2013-08-21 | 数码士有限公司 | Adaptive intra-prediction encoding and decoding method |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005625A (en) | 1994-08-22 | 1999-12-21 | Nec Corporation | Method and system for processing data on motion pictures by motion compensation combined with image segmentation |
US20030007563A1 (en) * | 1998-10-28 | 2003-01-09 | Chul Ryu | Video signal coding method |
KR20040035139A (en) | 2002-10-18 | 2004-04-29 | 주식회사 엠플러스텍 | Method for Motion Searching of Image Compression |
EP1431917A2 (en) | 2002-12-20 | 2004-06-23 | Lsi Logic Corporation | Motion estimation engine with parallel interpolation and search hardware |
US20040131121A1 (en) | 2003-01-08 | 2004-07-08 | Adriana Dumitras | Method and apparatus for improved coding mode selection |
WO2004064398A1 (en) | 2003-01-10 | 2004-07-29 | Thomson Licensing S.A. | Fast mode decision making for interframe encoding |
KR20040093604A (en) | 2003-04-30 | 2004-11-06 | 삼성전자주식회사 | Method of determining reference picture and block mode, the apparatus therefor, method of determining block mode, and the apparatus therefor for fast motion estimation |
KR20050061762A (en) | 2003-12-18 | 2005-06-23 | 학교법인 대양학원 | Method of encoding mode determination and motion estimation, and encoding apparatus |
US20050276331A1 (en) | 2004-06-11 | 2005-12-15 | Samsung Electronics Co., Ltd. | Method and apparatus for estimating motion |
US20060039470A1 (en) * | 2004-08-19 | 2006-02-23 | Korea Electronics Technology Institute | Adaptive motion estimation and mode decision apparatus and method for H.264 video codec |
KR20060057993A (en) | 2004-11-24 | 2006-05-29 | 한국전자통신연구원 | Fast determining method of block mode, and the apparatus therefor motion estimation |
US7751476B2 (en) * | 2003-12-24 | 2010-07-06 | Kabushiki Kaisha Toshiba | Moving picture coding method and moving picture coding apparatus |
-
2006
- 2006-09-29 KR KR1020060095244A patent/KR100845303B1/en not_active IP Right Cessation
-
2007
- 2007-07-09 US US11/774,948 patent/US8194740B2/en not_active Expired - Fee Related
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6005625A (en) | 1994-08-22 | 1999-12-21 | Nec Corporation | Method and system for processing data on motion pictures by motion compensation combined with image segmentation |
US20030007563A1 (en) * | 1998-10-28 | 2003-01-09 | Chul Ryu | Video signal coding method |
KR20040035139A (en) | 2002-10-18 | 2004-04-29 | 주식회사 엠플러스텍 | Method for Motion Searching of Image Compression |
EP1431917A2 (en) | 2002-12-20 | 2004-06-23 | Lsi Logic Corporation | Motion estimation engine with parallel interpolation and search hardware |
US20040131121A1 (en) | 2003-01-08 | 2004-07-08 | Adriana Dumitras | Method and apparatus for improved coding mode selection |
WO2004064414A2 (en) | 2003-01-08 | 2004-07-29 | Apple Computer, Inc. | Method and apparatus for improved coding mode selection |
WO2004064398A1 (en) | 2003-01-10 | 2004-07-29 | Thomson Licensing S.A. | Fast mode decision making for interframe encoding |
KR20040093604A (en) | 2003-04-30 | 2004-11-06 | 삼성전자주식회사 | Method of determining reference picture and block mode, the apparatus therefor, method of determining block mode, and the apparatus therefor for fast motion estimation |
KR20050061762A (en) | 2003-12-18 | 2005-06-23 | 학교법인 대양학원 | Method of encoding mode determination and motion estimation, and encoding apparatus |
US20050135484A1 (en) | 2003-12-18 | 2005-06-23 | Daeyang Foundation (Sejong University) | Method of encoding mode determination, method of motion estimation and encoding apparatus |
US7751476B2 (en) * | 2003-12-24 | 2010-07-06 | Kabushiki Kaisha Toshiba | Moving picture coding method and moving picture coding apparatus |
US20050276331A1 (en) | 2004-06-11 | 2005-12-15 | Samsung Electronics Co., Ltd. | Method and apparatus for estimating motion |
US20060039470A1 (en) * | 2004-08-19 | 2006-02-23 | Korea Electronics Technology Institute | Adaptive motion estimation and mode decision apparatus and method for H.264 video codec |
KR20060057993A (en) | 2004-11-24 | 2006-05-29 | 한국전자통신연구원 | Fast determining method of block mode, and the apparatus therefor motion estimation |
Non-Patent Citations (3)
Title |
---|
Bede Liu et al; "New Fast Algorithms for the Estimation of Block Motion Vectors";IEEE Transactions on Circuits and Systems for Video Technology,vol.3,No. 2,Apr. 1993. |
Chung J. Kuo et al; "Polynomial Search Algorithms for Motion Estimation"; IEEE Transactions on Circuits and Systems for Video Technology, vol. 10,No. 5,Aug. 2000. |
Paul Delogne et al; "Improved Interpolation, Motion Estimation, and Compensation for Interlaced Pictures"; IEEE Transactions on Image Processing,vol. 3. No. 5,Sep. 1994. |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150169422A1 (en) * | 2013-12-13 | 2015-06-18 | Metal Industries Research & Development Centre | Evaluation method for calibration of processing equipment |
Also Published As
Publication number | Publication date |
---|---|
KR100845303B1 (en) | 2008-07-10 |
US20080080616A1 (en) | 2008-04-03 |
KR20080029333A (en) | 2008-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100955152B1 (en) | Multi-dimensional neighboring block prediction for video encoding | |
US7764738B2 (en) | Adaptive motion estimation and mode decision apparatus and method for H.264 video codec | |
US8059721B2 (en) | Estimating sample-domain distortion in the transform domain with rounding compensation | |
US9386322B2 (en) | Scalable video encoding method and decoding method, apparatuses therefor, programs therefor, and storage media which store the programs | |
US8184716B2 (en) | Image coding apparatus, image coding method and image coding program | |
US8396311B2 (en) | Image encoding apparatus, image encoding method, and image encoding program | |
US7764740B2 (en) | Fast block mode determining method for motion estimation, and apparatus thereof | |
US20050069211A1 (en) | Prediction method, apparatus, and medium for video encoder | |
US20100316118A1 (en) | Adaptive motion informaiton cost estimation with dynamic look-up table updating | |
US8194740B2 (en) | Apparatus and method for compression-encoding moving picture | |
US8149918B2 (en) | Method of estimating coded block pattern and method of determining block mode using the same for moving picture encoder | |
US20090274213A1 (en) | Apparatus and method for computationally efficient intra prediction in a video coder | |
JP5133290B2 (en) | Video encoding apparatus and decoding apparatus | |
JP2001145113A (en) | Device and method for image information conversion | |
JPH09261662A (en) | Method and device for estimating motion in digital video encoder | |
KR100460950B1 (en) | Transcoder and transcoding method | |
US20090046779A1 (en) | Method and apparatus for determining block mode using bit-generation probability estimation in moving picture coding | |
JP4494803B2 (en) | Improved noise prediction method and apparatus based on motion compensation, and moving picture encoding method and apparatus using the same | |
KR100681258B1 (en) | Method for selecting output motion vector based on motion vector refinement and transcoder using the same | |
JP5649296B2 (en) | Image encoding device | |
KR20030020466A (en) | Stochastic sampling based pel motion estimation method | |
US7991048B2 (en) | Device and method for double-pass encoding of a video data stream | |
US20030081676A1 (en) | Methods and systems for video transcoding in DCT domain with low complexity | |
US20060146932A1 (en) | Method and apparatus for providing motion estimation with weight prediction | |
JP2009284058A (en) | Moving image encoding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTIT Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SEOK, JIN WUK;CHO, CHANG SIK;LEE, JEONG WOO;REEL/FRAME:019532/0330 Effective date: 20070620 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |