WO2014199566A1 - 動画像符号化装置及び動画像符号化方法並びにプログラムが格納された非一時的なコンピュータ可読媒体 - Google Patents
動画像符号化装置及び動画像符号化方法並びにプログラムが格納された非一時的なコンピュータ可読媒体 Download PDFInfo
- Publication number
- WO2014199566A1 WO2014199566A1 PCT/JP2014/002610 JP2014002610W WO2014199566A1 WO 2014199566 A1 WO2014199566 A1 WO 2014199566A1 JP 2014002610 W JP2014002610 W JP 2014002610W WO 2014199566 A1 WO2014199566 A1 WO 2014199566A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- picture
- macroblock
- quantization step
- target
- complexity
- 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.)
- Ceased
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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/115—Selection of the code volume for a coding unit prior to coding
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- 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
Definitions
- the present invention relates to a moving image processing technique, more specifically, a moving image encoding technique.
- the code amount control is performed so that the bit stream sent to the transmission path has a desired rate. Has been done.
- FIG. 4 shows the layer structure of the MPEG.
- MPEG a hierarchical structure including a sequence layer, a GOP (Group Of Picture) layer, a picture layer, a slice layer, and a macroblock (MB) layer is defined.
- Q scale the quantization step
- the quantization step is increased as the Q scale value is increased.
- the quantization step is denoted by Q.
- FIG. 5 shows the relationship between the generated code amount and the quantization step.
- the quantization step takes 31 values Q1 to Q31.
- the generated code amount has a substantially inversely proportional relationship with the quantization step. Therefore, the larger the quantization step, the coarser the quantization and the smaller the generated code amount. Conversely, the smaller the quantization step, the finer the quantization and the larger the generated code amount.
- control is performed so that the sum of generated code amounts (total code amount) becomes a predetermined code amount for each predetermined equal length unit (predetermined number of pictures).
- TM5 MPEG-2 TEST MODEL 5
- a target code amount of a target picture group (a picture group of equal length units to be encoded) is assigned to each picture in the target picture group.
- the target code amount of the picture group of the equal length unit is expressed as “Sg”
- the target code amount of one picture is expressed as “Sp”.
- a large target code amount Sp is allocated to I pictures and P pictures used as reference pictures, and a B code not used as a reference picture has a smaller target code quantity than I pictures and P pictures. Sp is assigned.
- the encoding of the target picture is repeated, and the reassignment of the target code amount Sp to the remaining pictures in the target picture group according to the generated code amount of the encoded picture is repeated, whereby the code of the picture in the target picture group It will be.
- the quantization step Q of the picture of interest is calculated according to equation (1) using the estimated complexity Xest.
- the complexity is an index indicating the difficulty of encoding the encoding target.
- the product of the generated code amount of the picture of the same picture type as the target picture and the average quantization step that have been encoded so far is estimated as the complexity Xest of the target picture.
- Q Xest / Sp (1)
- One picture is encoded for each macroblock. Specifically, the quantization step Q calculated by Expression (1) is applied to the first macroblock of the current picture. For each of the second and subsequent macroblocks, based on the difference between the sum of the generated code amounts of the already-encoded macroblocks and the target code amount Sp, the total code amount of the picture of interest approaches the target code amount Sp. Then, the quantization step Q is adjusted and applied to the macroblock.
- the quantization step Q calculated according to the equation (1) does not always coincide with any one of Q1 to Q31.
- the quantization step Q calculated according to Equation (1) is between Q5 and Q6, in order to ensure that the total code amount of the picture does not exceed the target code amount Sp, the quantization step Q As the value of Q, the larger Q6 is adopted. This is the same in the following, and the description will not be repeated.
- the technique is not yet encoded in the picture group so that the total code quantity of the picture group of interest substantially matches the target code quantity Sg based on the generated code quantity.
- the target code amount is reassigned to each picture, and the target code amount Sp is corrected.
- the complexity Xest is estimated for the next noticed picture, and the quantization step Q is calculated by the equation (1) using the estimated complexity Xest and the corrected target code amount Sp of the noticed picture. Calculate and encode the picture.
- the code amount control method feeds back the current average rate using the relationship between the past quantization step and the total code amount.
- the average code amount (average rate) per unit time increases or decreases when viewed in a short period, but the average code amount per unit time becomes the target code amount when viewed over a long span.
- the predicted code amount (target code amount) of the picture In order to achieve (corresponding to Sp), the allocated code amount of the subsequent macroblock is reduced, and the image quality is deteriorated.
- the quantization step since the quantization step varies between macroblocks, the coarsely quantized region is conspicuous and the subjective image quality deteriorates.
- the code amount assigned to the subsequent picture decreases is that it is necessary to achieve the target code amount Sg of the picture group.
- the quantization step varies between pictures, coarsely quantized pictures stand out and subjective image quality deteriorates.
- the quantization step obtained for the macroblock by the above method is referred to as “reference quantization step”. That is, the reference quantization step is the quantization step Q calculated by Equation (1) for the first macroblock of the current picture, and the second and subsequent macroblocks are already encoded. The quantization step Q is adjusted based on the generated code amount of the macroblock.
- TM5 uses a technique of “adaptive quantization” that improves image quality by weighting the reference quantization step described above according to human visual characteristics and applying it to the quantization of the macroblock.
- the method uses activity as a parameter indicating visual characteristics so that it is quantized more finely in a portion where deterioration is conspicuous (for example, a flat portion) and coarsely quantized in a portion where deterioration is not conspicuous (for example, a complicated portion of a pattern)
- the subjective image quality can be improved with the same amount of code. Since the quantization step is changed according to the visual characteristics, it is possible to avoid the deterioration of the subjective image quality due to the variation of the quantization step as described above.
- an activity used as a parameter indicating visual characteristics in adaptive quantization is calculated by using, for example, a variance of luminance values of blocks adopted in TM5 as a feature amount.
- the quantization step of each macroblock is determined using an activity as described below.
- Nact_j (2 ⁇ act_j + avg_act) / (act_j + 2 ⁇ avg_act) (3)
- the quantization step Qact_j of the macroblock MBj based on adaptive quantization is calculated according to the equation (4).
- Qbase is the above-described reference quantization step
- Nact_j is the normalization activity of the macroblock MBj calculated by Expression (3).
- Qact _j Qbase ⁇ Nact_j (4)
- the activity is calculated based on the variance of the luminance value.
- the quantization step applied to the macroblock is changed from Qbase to Qact, so that the amount of deviation between the generated code amount and the predicted code amount is smaller than when adaptive quantization is not used. Becomes larger. Therefore, when the generated code amount is larger than the predicted code amount, the code amount assigned to the subsequent area (macroblock or picture) decreases, and the image quality of the subsequent area deteriorates. On the contrary, when the generated code amount is smaller than the predicted code amount, the image quality of the area is lost by the surplus code amount.
- Patent Document 1 discloses a technique for avoiding this problem.
- the technique weights the activity of the target macroblock according to the difference between the generated code amount accumulated in the virtual buffer and the predicted code amount. Specifically, the greater the difference between the generated code amount and the predicted code amount, the smaller the activity weight of the macro block of interest (claim 6, second embodiment, etc.). Then, for the equation (4), the weighted activity is used instead of Nact_j to determine the quantization step of the macroblock.
- the technique can bring the total code amount closer to the target code amount by weighting the activity of the target macroblock according to the difference between the generated code amount and the predicted code amount.
- the activity weight is changed, even macroblocks having the same activity are encoded in different quantization steps, so there is a problem that the effect of adaptive quantization is reduced and the image quality is lowered.
- Patent Document 2 discloses a technique for encoding regions having the same activity using the same quantization step. This technique uses the same value for each macroblock without changing the reference quantization step Qbase in Equation (4) during encoding of one picture. By doing so, in one picture, the macroblocks having the same activity Nact_j have the same quantization step Qact_j.
- Patent Document 2 describes that it is desirable to determine the target code amount with a margin of 20%.
- Patent Document 3 discloses a technique for increasing the estimation accuracy of complexity when controlling the code amount control based on the estimated complexity.
- the product of the generated code amount of the past picture and the average quantization step is estimated as the complexity Xest of the target picture, and the generated code amount of the target picture is predicted. For this reason, when the correlation between the current picture and the past picture is low, such as when the design of the previous picture has changed significantly or when a scene change has occurred, the generated code amount of the current picture is reduced. There is a problem that prediction is greatly deviated, code amount distribution becomes inaccurate, and coding efficiency is lowered.
- the technique disclosed in Patent Document 3 estimates the complexity Xest from the variance value of an I picture that is encoded for the first time after a scene change.
- the complexity Xest is estimated from the prediction error value of the motion vector search result between the picture and its reference picture.
- a, b, and c are fixed values determined for each picture type.
- the feature value F is a variance value of the picture in the case of an I picture, and a prediction error value of a motion vector search result between the picture and its reference picture in the case of a P picture or a B picture. It is.
- the complexity is estimated from the generated code amount of the same type picture and the average quantization step as in the TM5 method.
- Patent Document 3 further describes the complexity estimated according to Equation (5) and the complexity obtained from the encoding result (the product of the generated code amount of the encoded picture and the average quantization step). It is also disclosed that the past several pictures are accumulated for each picture type, and each coefficient in equation (5) is corrected for each picture type from the accumulated data. By this process, the estimation accuracy of the complexity is further improved.
- JP 2007-235828 A Japanese Patent Laid-Open No. 10-224786 JP 2002-247484 A JP 2009-135902 A
- the generated code amount can be brought close to the target code amount.
- the quantization step is different even in the macroblock having the same actual activity, and the difference in the actual activity is not reflected in the difference in the quantization step. There is a problem that decreases.
- Patent Document 2 requires a 20% margin for the target code amount Sp in order to make the generated code amount of the picture coincide with the target code amount Sp.
- an excess of the code amount of 20% causes a large deterioration in image quality that can be visually recognized, and it is difficult to achieve high image quality with this technology.
- the generated code amount in a narrow area such as one frame is not permitted to exceed a certain amount, such as an application premised on editing, it is necessary to increase the margin of the target code amount Sp for safety. Therefore, the image quality is greatly deteriorated.
- Patent Document 3 Although the technique disclosed in Patent Document 3 can increase the estimation accuracy of the complexity of the picture of interest, it cannot solve the above-described problem.
- the present invention has been made in view of the above circumstances, and when performing code amount control so that the bit rate of a bit stream obtained by encoding becomes a predetermined target rate, a moving image is encoded with high image quality. To provide technology.
- the moving picture encoding apparatus includes: an orthogonal transform unit that orthogonally transforms a target picture to obtain orthogonal transform coefficients; a quantization unit that quantizes the orthogonal transform coefficient for each macroblock of the target picture; and the macroblock And a quantization step calculation unit that calculates the quantization step and supplies the quantization step to the quantization unit.
- the quantization step calculation unit calculates a reference quantization step which is a variable for matching the generated code amount of the target picture with the target code amount set for the target picture for the target macroblock in the target picture.
- the calculated reference quantization step is weighted by the activity of the macro block of interest, thereby determining the quantization step applied to the quantization of the macro block and providing it to the quantization unit.
- the quantization step calculation unit includes a complexity estimation unit, a complexity correction unit, and a reference quantization step calculation unit.
- the complexity estimation unit estimates the complexity indicating the difficulty of encoding for each macroblock of the target picture.
- the complexity correction unit corrects the complexity estimated by the complexity estimation unit with the activity of the macroblock so that the correction complexity decreases as the activity increases for each macroblock of the target picture.
- the correction complexity of the macroblock is obtained.
- the reference quantization step calculation unit calculates the reference quantization step by dividing the sum of the correction complexity of each macroblock of the target picture by the target code amount.
- high-quality encoding can be realized when performing code amount control so that the bit rate of a bit stream obtained by encoding a moving image becomes a predetermined target rate.
- FIG. 1 shows the moving image encoder concerning the 1st Embodiment of this invention. It is a figure which shows the quantization step calculation part in the moving image encoder shown in FIG. It is a flowchart which shows the process by the quantization step calculation part shown in FIG. It is a figure which shows the layer structure of MPEG. It is a figure which shows the relationship between a quantum step and the generated code amount. It is a figure which shows allocation of the target code amount of a picture.
- Non-transitory computer readable media include various types of tangible storage media.
- Examples of non-transitory computer-readable media include magnetic recording media (eg, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (eg, magneto-optical disks), CD-ROM (Read Only Memory) CD-R, CD -R / W, including semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)).
- the program may be supplied to the computer by various types of temporary computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves.
- the temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.
- FIG. 1 shows a video encoding apparatus 100 according to the first embodiment of the present invention.
- the moving image encoding apparatus 100 encodes a moving image MP at a variable rate by, for example, the MPEG method to obtain a bit stream BS, and outputs the bit stream BS.
- the data of the moving image MP is input by the computing unit 102.
- the computing unit 102 for each macroblock of the input moving image MP, the data, and the prediction image data of the macroblock input from the intra-frame prediction unit 118 or the inter-frame prediction unit 120 via the switch 122 Is calculated and output to the orthogonal transform unit 104.
- the orthogonal transform unit 104 performs DCT processing on the output of the computing unit 102 and outputs the DCT coefficient obtained as a result thereof to the quantization unit 106.
- the quantization unit 106 quantizes the DCT of the macro block of interest with a quantization step (referred to as “adaptive quantization step”) Qmb from the quantization step calculation unit 200 and outputs the result to the encoding unit 108.
- a quantization step referred to as “adaptive quantization step”
- Qmb quantization step
- the output of the quantization unit 106 is also referred to as a “quantization value”.
- the encoding unit 108 converts the quantized value from the quantization unit 106 into a variable length code such as a Huffman code and outputs the variable length code to the buffer 110.
- the buffer 110 temporarily stores the data from the encoding unit 108 and then outputs it as a bit stream BS. Note that the data accumulation amount in the encoding unit 108 is output to the quantization step calculation unit 200 as the generated code amount Sr.
- the quantization value obtained by the quantization unit 106 is output to the inverse quantization unit 112 in addition to the encoding unit 108.
- the inverse quantization unit 112 obtains a DCT coefficient by dequantizing the quantized value from the quantization unit 106 in the adaptive quantization step Qmb used by the quantization unit 106, and outputs the DCT coefficient to the inverse orthogonal transform unit 114. To do.
- the inverse orthogonal transform unit 114 performs inverse DCT processing on the DCT coefficient from the inverse quantization unit 112, obtains a prediction residual, and outputs the prediction residual to the computing unit 116.
- the calculator 116 receives the prediction residual from the inverse orthogonal transform unit 114 and the same data as the prediction image provided to the calculator 102.
- the computing unit 116 obtains a local decoded image by local decoding that adds them, and outputs them to the intra-frame prediction unit 118 and the inter-frame prediction unit 120.
- the local decoded image is the same as the decoded image obtained on the side receiving the bit stream BS.
- the intra-frame prediction unit 118 obtains a prediction image from pixels of adjacent blocks in the target picture and outputs the prediction image to the switch 122.
- the inter-frame prediction unit 120 performs motion vector detection and motion compensation using the reference picture of the target picture, obtains a reference image, and outputs the reference image to the switch 122.
- the switch 122 selectively calculates the outputs of the intra-frame prediction unit 118 and the inter-frame prediction unit 120 based on the encoding mode set according to the type of picture of interest (I picture, P picture, B picture). To 102.
- each functional block of the video encoding device 100 is the same as the corresponding functional block of this type of video encoding device. Detailed description is omitted.
- the quantization step calculation unit 200 calculates an adaptive quantization step Qmb, which is a quantization step applied to the quantization of the macroblock of interest, and supplies it to the quantization unit 106.
- FIG. 2 shows the quantization step calculation unit 200.
- the quantization step calculation unit 200 includes a complexity estimation unit 202, an activity calculation unit 204, a complexity correction unit 206, a reference quantization step calculation unit 208, and a quantization step adaptation unit 210.
- the complexity estimation unit 202 estimates the complexity Xmb indicating the difficulty of encoding for each macroblock of the picture of interest and outputs it to the complexity correction unit 206.
- the complexity estimation unit 202 for example, as described in MPEG-2 TM5, the generated code amount and the average quantization step of the last type of picture of the same type as the target picture Is estimated as the complexity Xest of the picture of interest.
- the complexity estimation unit 202 divides the estimated complexity Xest by the total number n of macroblocks per picture to obtain the complexity Xmb of each macroblock of the current picture.
- the activity calculation unit 204 obtains a normalized activity ACTmb by calculating and normalizing the activity of each macroblock of the target picture, and sends the normalized activity ACTmb to the complexity correction unit 206 and the quantization step adaptation unit 210. Is output.
- the activity calculation unit 204 calculates the activity using the method of using the variance of the luminance value of each sub-block of the macroblock (equation (2)) described in TM5, or the luminance component and the color difference described in Patent Document 4.
- a conventionally known method such as a method using components may be used.
- the complexity correction unit 206 corrects the complexity Xmb obtained by the complexity estimation unit 202 with the normalized activity ACTmb obtained by the activity calculation unit 204 for each macroblock of the picture of interest to obtain a corrected complexity TXmb.
- the complexity correction unit 206 outputs the obtained result to the reference quantization step calculation unit 208.
- the complexity correction unit 206 corrects the complexity Xmb so that the correction activity TXmb decreases as the normalized activity ACTmb increases.
- the complexity correction unit 206 corrects the complexity Xmb using the following equation (6).
- j is a macroblock number.
- TXmb (j) Xmb (j) / ACTmb (j) (6)
- the reference quantization step calculation unit 208 obtains the sum of the correction complexity TXmb of each macroblock of the target picture obtained by the complexity correction unit 206 as the correction complexity TXp of the target picture according to Expression (7). In addition, the reference quantization step calculation unit 208 calculates a reference quantization step Qbase that is a variable for making the sum of the generated code amounts of the current picture coincide with the target code amount Sp according to Expression (8).
- TXp TXmb (1) + TXmb (2) + ... + TXmb (n) (7)
- the total number of macroblocks in n 1 picture
- equation (8) when calculating the reference quantization step Qbase, the estimated complexity of the encoded picture of the same type of the current picture is calculated.
- the correction complexity TXp is used instead of the degree Xest.
- the reference quantization step calculation unit 208 outputs the reference quantization step Qbase calculated by Expression (8) to the quantization step adaptation unit 210 for all macroblocks of the target picture.
- the reference quantization step calculation unit 208 may output the reference quantization step Qbase to the quantization step adaptation unit 210 as follows.
- the reference quantization step calculation unit 208 outputs the reference quantization step Qbase calculated by Expression (8) for the first macroblock of the current picture.
- the reference quantization step calculation unit 208 sets the target sum of the generated code amounts of the target picture based on the generated code amount Sr of the already-encoded macroblock of the target picture.
- the reference quantization step Qbase calculated by Expression (8) is adjusted and output to the quantization step adaptation unit 210 so as to approach the code amount Sp.
- the quantization step adaptation unit 210 applies the reference quantization step Qbase from the reference quantization step calculation unit 208 to the macro block of interest from the activity calculation unit 204 according to Equation (9) so as to adapt to the visual characteristics. Weight with normalized activity ACTmb. This weighting is in accordance with TM5's “adaptive quantization” technique. Thereby, the quantization step adaptation unit 210 obtains a quantization step (adaptive quantization step Qmb) applied to the quantization of the macro block of interest.
- the reference quantization step Qbase (j) is a reference quantization step of the j-th macroblock that becomes the target macroblock.
- the reference quantization step Qbase (j) is obtained by adjusting the value calculated in Expression (8) based on the value calculated in Expression (8) or the generated code amount Sr of the encoded macroblock.
- Is. Qmb (j) Qbase (j) ⁇ ACTmb (j) (9)
- the quantization step calculation unit 200 first estimates the complexity Xmb by the complexity estimation unit 202 and calculates the normalized activity ACTmb by the activity calculation unit 204 for all macroblocks (MB) of the target picture (S100). , S102).
- the complexity correcting unit 206 corrects the complexity Xmb from the complexity estimating unit 202 with the normalized activity ACTmb from the activity calculating unit 204 to obtain the corrected complexity TXmb (S104). ).
- the reference quantization step calculation unit 208 performs the correction complexity TXp that is the sum of the correction complexity TXmb of each macroblock from the complexity correction unit 206 on the first target macroblock, and the target picture
- the reference quantization step Qbase is calculated according to the equation (8) using the target code amount Sp set for (S106).
- the quantization step adaptation unit 210 calculates the adaptive quantization step Qmb by weighting the reference quantization step Qbase with the normalized activity ACTmb for the first macroblock of interest, and the quantization unit 106 (S108).
- the quantization step calculation unit 200 repeats the processes of steps S112, S106, and S108 until the adaptive quantization step Qmb of the last target macroblock is calculated (S110: Yes) (S110: No, S112, S106, S108). Thus, the adaptive quantization step Qmb of all macroblocks of the target picture is calculated.
- the reference quantization step calculation unit 208 determines the first macroblock for all macroblocks.
- the reference quantization step Qbase calculated for the block is output.
- the quantization step adaptation unit 210 uses the reference quantization step Qbase output from the reference quantization step calculation unit 208 for the first macroblock for all the macroblocks of the target picture. The above process is performed.
- the reference quantization step calculation unit 208 For each block, the reference quantization step Qbase is calculated (or adjusted).
- the moving picture coding apparatus 100 corrects the complexity Xmb estimated for each macroblock with the normalized activity ACTmb to obtain a corrected complexity TXmb.
- the moving picture coding apparatus 100 uses, for each macroblock of the target picture, a reference quantization step that is a variable for matching the generated code amount of the target picture with the target code amount set for the target picture
- the sum of the correction complexity TXmb is estimated and used as the complexity of the picture of interest.
- a change in the generated code amount due to adaptive quantization of the reference quantization step Qbase by the quantization step adaptation unit 210 can be included in the step of determining the reference quantization step Qbase. For this reason, the generated code amount can be brought close to the target code amount, and as a result, deterioration in image quality due to the difference between the generated code amount and the target code amount can be reduced.
- the moving picture coding according to the present embodiment is also applicable to a standard that requires strict code amount control in a narrow area range such as a macroblock unit, such as AVC-Intra in which the upper limit of the bit amount is determined in frame units.
- the margin of the target code amount can be reduced by improving the estimation accuracy of the generated code amount, and high-quality encoding can be realized.
- the complexity estimation unit 202 of the quantization step calculation unit 200 generates a coded code of a coded picture of the same type as the current picture using the TM5 technique.
- the product of the quantity and the average quantization step is estimated as the complexity Xest of the picture of interest.
- the complexity estimation unit 202 calculates the complexity Xmb of each macroblock by dividing the estimated complexity Xest by the total number n of macroblocks.
- a technique disclosed in Patent Document 3 may be used for estimating the complexity of the target picture in the complexity estimation unit 202. Specifically, for an I picture that is encoded for the first time after a scene change, the complexity Xest is estimated from its variance, and for a P picture and a B picture that are encoded for the first time after a scene change, the picture and its reference picture The complexity Xest is estimated from the prediction error value of the motion vector search result during. For these estimations, equation (5) is used. For each picture not corresponding to the above, as in the TM5 technique, the complexity is estimated from the previous coding and the generated code amount of the picture of the same type and the average quantization step.
- Formula (5) is a 2nd order polynomial as an example, it may be a 1st order polynomial or a 3rd order polynomial or more.
- a predetermined fixed value may be used for all the pictures of interest, or may be dynamically adjusted by multiple regression analysis or the like.
- the complexity estimation unit 202 calculates the complexity estimated according to Expression (5) and the complexity obtained from the encoding result (product of the generated code amount of the encoded picture and the average quantization step). The past several pictures are accumulated for each picture type, and each coefficient in equation (5) is corrected for each picture type from the accumulated data.
- the complexity estimation unit 202 can improve the estimation accuracy of the complexity of the noticed picture, so the estimation accuracy of the complexity complexity Xmb of each macroblock of the noticed picture is also improved.
- the reference quantization step Qbase calculated by the reference quantization step calculation unit 208 to the adaptive quantization step Qmb calculated by the quantization step adaptation unit 210 are more adapted to the actual complexity of the target picture. Therefore, the generated code amount can be made closer to the target code amount, and the image quality can be further improved.
- the complexity of the picture of interest is estimated, and the estimated complexity is divided by the total number of macroblocks, whereby the same complexity Xmb is obtained for each macroblock.
- the complexity Xmb may be calculated for each macroblock.
- Xmb a ⁇ (Fmb) 2 + b ⁇ Fmb + c (10)
- Equation (10) is obtained by changing the feature amount F of the entire picture of interest to the feature amount Fmb of the macroblock with respect to Equation (5).
- the feature amount F and the feature amount Fmb are of the same type.
- a predetermined fixed value may be used for each coefficient in equation (10), or may be dynamically adjusted by multiple regression analysis or the like.
- the present invention can be applied to encoding of moving images.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
該手法は、まず、注目ピクチャ群(現在の符号化対象となる、1等長化単位のピクチャ群)の目標符号量を該注目ピクチャ群内の各ピクチャに割り当てる。以下において、1等長化単位のピクチャ群の目標符号量を「Sg」で表記し、1ピクチャの目標符号量を「Sp」で表記する。
複雑度は、符号化対象の符号化の困難さを示す指標である。該手法は、それまでに符号化した、注目ピクチャと同一のピクチャタイプのピクチャの発生符号量と平均量子化ステップとの積を、注目ピクチャの複雑度Xestとして推定する。
Q=Xest/ Sp(1)
act_j=1+min(vblk_1,vblk_2,vblk_3,vblk_4) (2)
Nact_j=(2×act_j+avg_act)/(act_j+2×avg_act) (3)
Qact _j=Qbase×Nact_j(4)
Xest=a×F2+b×F+c (5)
図1は、本発明の第1の実施の形態にかかる動画像符号化装置100を示す。動画像符号化装置100は、動画像MPを例えばMPEG方式で可変レートで符号化してビットストリームBSを得て出力するものであり、演算器102、直交変換部104、量子化部106、符号化部108、バッファ110、逆量子化部112、逆直交変換部114、演算器116、フレーム内予測部118、フレーム間予測部120、スイッチ122、量子化ステップ算出部200を備える。
TXmb(j)=Xmb(j)/ACTmb(j) (6)
但し,n:1ピクチャ内のマクロブロックの総数
Qmb(j)=Qbase(j)×ACTmb(j) (9)
上述した第1の実施の形態の動画像符号化装置100において、量子化ステップ算出部200の複雑度推定部202は、TM5の手法により、注目ピクチャと同一のタイプの符号化済みピクチャの発生符号量と平均量子化ステップとの積を注目ピクチャの複雑度Xestとして推定する。そして、複雑度推定部202は、推定した複雑度Xestをマクロブロックの総数nで除算することにより各マクロブロックの複雑度Xmbを算出している。
上述した第1と第2の実施の形態において、注目ピクチャの複雑度を推定して、推定した複雑度をマクロブロックの総数で除算することにより、各マクロブロックに対して同一の複雑度Xmbを算出しているが、マクロブロック毎に複雑度Xmbを算出するようにしてもよい。
Xmb=a×(Fmb)2+b×Fmb+c(10)
102 演算器
104 直交変換部
106 量子化部
108 符号化部
110 バッファ
112 逆量子化部
114 逆直交変換部
116 演算器
118 フレーム内予測部
120 フレーム間予測部
122 スイッチ
200 量子化ステップ算出部
202 複雑度推定部
204 アクティビティ算出部
206 複雑度補正部
208 基準量子化ステップ算出部
210 量子化ステップ適応化部
ACTmb 正規化アクティビティ
BS ビットストリーム
MP 動画像
Qbase 基準量子化ステップ
Qmb 適応量子化ステップ
Sg 目標符号量
Sp 目標符号量
Sr 発生符号量
TXmb 補正複雑度
TXp 補正複雑度
Xest 複雑度
Xmb 複雑度
Claims (3)
- 出力するビットスストリームが目標レートになるように符号量制御を行う動画像符号化装置であって、
注目ピクチャを直交変換して直交変換係数を得る直交変換手段と、
前記注目ピクチャのマクロブロック毎に、前記直交変換係数を量子化する量子化手段と、
前記注目ピクチャにおける注目マクロブロックに対して、該注目ピクチャに対して設定された目標符号量に該注目ピクチャの発生符号量を一致させるための変数である基準量子化ステップを求めると共に、算出した前記基準量子化ステップを、前記注目マクロブロックのアクティビティで重み付けることにより、該注目マクロブロックの量子化に適用される量子化ステップを決定して前記量子化手段に供する量子化ステップ算出手段とを備え、
前記量子化ステップ算出手段は、
前記注目ピクチャの各マクロブロックに対して、符号化の困難さを示す複雑度を推定する複雑度推定手段と、
各前記マクロブロックについて、アクティビティが大きいほど補正複雑度が小さくなるように、前記アクティビティで前記複雑度を補正して該マクロブロックの前記補正複雑度を求める複雑度補正手段と、
各前記マクロブロックの前記補正複雑度の総和を前記目標符号量で除算することにより前記基準量子化ステップを算出する基準量子化ステップ算出手段とを有する、
動画像符号化装置。 - 出力するビットスストリームが目標レートになるように符号量制御を行う動画像符号化方法において、
注目ピクチャを直交変換して直交変換係数を得て、
前記注目ピクチャのマクロブロック毎に、前記直交変換係数を量子化し、
前記注目ピクチャにおける注目マクロブロックに対して、該注目ピクチャに対して設定された目標符号量に該注目ピクチャの発生符号量を一致させるための変数である基準量子化ステップを求めると共に、算出した前記基準量子化ステップを、前記注目マクロブロックのアクティビティで重み付けることにより、該注目マクロブロックの量子化に適用される量子化ステップを決定して前記直交変換係数を量子化することに供し、
前記量子化ステップの決定においては、
前記注目ピクチャの各マクロブロックに対して、符号化の困難さを示す複雑度を推定すること、
各前記マクロブロックについて、アクティビティが大きいほど補正複雑度が小さくなるように、前記アクティビティで前記複雑度を補正して該マクロブロックの前記補正複雑度を求めること、及び
各前記マクロブロックの前記補正複雑度の総和を前記目標符号量で除算することにより前記基準量子化ステップを算出することを備える、
動画像符号化方法。 - 出力するビットスストリームが目標レートになるように符号量制御を行う動画像符号化に際して、
注目ピクチャを直交変換して直交変換係数を得て、
前記注目ピクチャのマクロブロック毎に、前記直交変換係数を量子化し、
前記注目ピクチャにおける注目マクロブロックに対して、該注目ピクチャに対して設定された目標符号量に該注目ピクチャの発生符号量を一致させるための変数である基準量子化ステップを求めると共に、算出した前記基準量子化ステップを、前記注目マクロブロックのアクティビティで重み付けることにより、該注目マクロブロックの量子化に適用される量子化ステップを決定して前記直交変換係数を量子化することに供することをコンピュータに実行せしめ、
前記量子化ステップの決定においては、
前記注目ピクチャの各マクロブロックに対して、符号化の困難さを示す複雑度を推定すること、
各前記マクロブロックについて、アクティビティが大きいほど補正複雑度が小さくなるように、前記アクティビティで前記複雑度を補正して該マクロブロックの前記補正複雑度を求めること、及び
各前記マクロブロックの前記補正複雑度の総和を前記目標符号量で除算することにより前記基準量子化ステップを算出することを前記コンピュータに実行せしめる、
プログラムが格納された非一時的なコンピュータ可読媒体。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015522495A JP6341202B2 (ja) | 2013-06-13 | 2014-05-19 | 動画像符号化装置、動画像符号化方法、およびプログラム |
| US14/895,028 US10264260B2 (en) | 2013-06-13 | 2014-05-19 | Moving picture encoding in which base quantization is based on corrected macroblock complexity |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013124658 | 2013-06-13 | ||
| JP2013-124658 | 2013-06-13 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2014199566A1 true WO2014199566A1 (ja) | 2014-12-18 |
Family
ID=52021888
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2014/002610 Ceased WO2014199566A1 (ja) | 2013-06-13 | 2014-05-19 | 動画像符号化装置及び動画像符号化方法並びにプログラムが格納された非一時的なコンピュータ可読媒体 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US10264260B2 (ja) |
| JP (1) | JP6341202B2 (ja) |
| WO (1) | WO2014199566A1 (ja) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11346365A (ja) * | 1998-04-03 | 1999-12-14 | Matsushita Electric Ind Co Ltd | 符号化圧縮方法、および符号化圧縮装置 |
| JP2001025016A (ja) * | 1999-07-05 | 2001-01-26 | Victor Co Of Japan Ltd | 動画像符号化装置及びその方法 |
| JP2006086861A (ja) * | 2004-09-16 | 2006-03-30 | Victor Co Of Japan Ltd | 画像符号化装置 |
| US20100316119A1 (en) * | 2009-06-11 | 2010-12-16 | Texas Instruments Incorporated | Preserving text quality in video encoding |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3872849B2 (ja) * | 1996-11-28 | 2007-01-24 | 松下電器産業株式会社 | 動画像符号化装置 |
| JPH10224786A (ja) | 1997-02-06 | 1998-08-21 | Sony Corp | 画像符号化装置および画像符号化方法、画像伝送装置および画像伝送方法、並びに記録媒体 |
| JP2002247584A (ja) | 2001-02-15 | 2002-08-30 | Nippon Telegr & Teleph Corp <Ntt> | 画像符号化方法および装置、並びに、画像符号化処理用プログラム及びそのプログラムの記録媒体 |
| US7095784B2 (en) * | 2003-04-14 | 2006-08-22 | Silicon Intergrated Systems Corp. | Method and apparatus for moving picture compression rate control using bit allocation with initial quantization step size estimation at picture level |
| JP4249672B2 (ja) | 2004-08-16 | 2009-04-02 | Kddi株式会社 | ビデオ情報複数同時符号化装置 |
| JP4795223B2 (ja) | 2006-01-31 | 2011-10-19 | キヤノン株式会社 | 画像処理装置 |
| JP5078837B2 (ja) | 2007-10-29 | 2012-11-21 | キヤノン株式会社 | 符号化装置、符号化装置の制御方法及びコンピュータプログラム |
-
2014
- 2014-05-19 WO PCT/JP2014/002610 patent/WO2014199566A1/ja not_active Ceased
- 2014-05-19 JP JP2015522495A patent/JP6341202B2/ja not_active Expired - Fee Related
- 2014-05-19 US US14/895,028 patent/US10264260B2/en not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11346365A (ja) * | 1998-04-03 | 1999-12-14 | Matsushita Electric Ind Co Ltd | 符号化圧縮方法、および符号化圧縮装置 |
| JP2001025016A (ja) * | 1999-07-05 | 2001-01-26 | Victor Co Of Japan Ltd | 動画像符号化装置及びその方法 |
| JP2006086861A (ja) * | 2004-09-16 | 2006-03-30 | Victor Co Of Japan Ltd | 画像符号化装置 |
| US20100316119A1 (en) * | 2009-06-11 | 2010-12-16 | Texas Instruments Incorporated | Preserving text quality in video encoding |
Also Published As
| Publication number | Publication date |
|---|---|
| US20160127729A1 (en) | 2016-05-05 |
| JPWO2014199566A1 (ja) | 2017-02-23 |
| JP6341202B2 (ja) | 2018-06-13 |
| US10264260B2 (en) | 2019-04-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9071840B2 (en) | Encoder with adaptive rate control for H.264 | |
| CN101518088B (zh) | 针对有效速率控制和增强视频编码质量的ρ域帧级比特分配的方法 | |
| US8532169B2 (en) | Rate control for two-pass encoder using adaptive quantization parameters | |
| US8681858B2 (en) | Rate control for two-pass encoder | |
| JP5411144B2 (ja) | ビデオ・エンコードおよびデコードにおけるレート制御の精度のための方法および装置 | |
| KR101603747B1 (ko) | 비디오 인코딩에서 속도 제어 정확성을 위한 방법 및 장치 | |
| Rehman et al. | SSIM-inspired perceptual video coding for HEVC | |
| JP2007089035A (ja) | 動画像符号化方法、装置及びプログラム | |
| JP2002010259A (ja) | 画像符号化装置及び画像符号化方法及び画像符号化プログラムを記録した記録媒体 | |
| JP5618128B2 (ja) | 符号化装置、符号化方法、およびプログラム | |
| CN112243129A (zh) | 视频数据处理方法、装置、计算机设备及存储介质 | |
| EP2060125B1 (en) | Method and apparatus for analytical and empirical hybrid encoding distortion modeling | |
| JP7343817B2 (ja) | 符号化装置、符号化方法、及び符号化プログラム | |
| KR20040007818A (ko) | 동영상 부호화를 위한 dct연산량 조절 방법 및 그 장치 | |
| JPH07203430A (ja) | 画像符号化装置 | |
| JP6341202B2 (ja) | 動画像符号化装置、動画像符号化方法、およびプログラム | |
| JP5306282B2 (ja) | 動画像符号化装置、動画像符号化方法及びプログラム | |
| JP4942208B2 (ja) | 符号化装置 | |
| KR101197094B1 (ko) | H.264/avc를 위한 통계 모델 기반의 비트율 제어 방법 및 장치 | |
| Wu et al. | A content-adaptive distortion-quantization model for intra coding in H. 264/AVC | |
| Hu | Bit rate control for real-time multipoint video conferencing | |
| Xie et al. | Efficient rate control for H. 264 using RD-cost | |
| Pastuszak et al. | Macroblock-level rate control based on the linear RD model for H. 264/AVC | |
| Pietrasiewicz et al. | Rate Control for Multi-Sequence H. 264/AVC Compression | |
| KR20070033214A (ko) | 화면내-영상 프레임(intra-frame)의 비트량 및왜곡량 추정 장치 및 그 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14810152 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2015522495 Country of ref document: JP Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 14895028 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 14810152 Country of ref document: EP Kind code of ref document: A1 |