[go: up one dir, main page]

WO2007043609A1 - 画像符号化方法及び、これを用いた装置とコンピュータプログラム - Google Patents

画像符号化方法及び、これを用いた装置とコンピュータプログラム Download PDF

Info

Publication number
WO2007043609A1
WO2007043609A1 PCT/JP2006/320379 JP2006320379W WO2007043609A1 WO 2007043609 A1 WO2007043609 A1 WO 2007043609A1 JP 2006320379 W JP2006320379 W JP 2006320379W WO 2007043609 A1 WO2007043609 A1 WO 2007043609A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
output
entropy
encoding
image block
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
Application number
PCT/JP2006/320379
Other languages
English (en)
French (fr)
Other versions
WO2007043609B1 (ja
Inventor
Keiichi Chono
Yuzo Senda
Yoshihiro Miyamoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to EP06811676.3A priority Critical patent/EP1947862B1/en
Priority to CN2006800380771A priority patent/CN101288313B/zh
Priority to US12/090,054 priority patent/US8416850B2/en
Priority to JP2007539979A priority patent/JP4973871B2/ja
Publication of WO2007043609A1 publication Critical patent/WO2007043609A1/ja
Publication of WO2007043609B1 publication Critical patent/WO2007043609B1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/17Methods 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/176Methods 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
    • 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

  • the present invention relates to an image encoding technique based on an entropy code such as a variable length code or an arithmetic code, and is particularly suitable for application to an image code apparatus.
  • an image encoding device generates encoded data, that is, a bit stream by digitizing a moving image signal input from the outside and performing an encoding process based on a predetermined image encoding method. .
  • a conventional image encoding device includes an original image frame buffer 1000, an MB encoding device 2000, a rate control device 3000, and a decoded image frame buffer 4000.
  • the original image frame buffer 1000 stores image data as shown in FIG.
  • An image frame is divided into 16 ⁇ 16 luminance pixels called MB (Macro Block) and 8 ⁇ 8 pixel Cr and Cb color difference pixels as pixel blocks.
  • the MB encoding device 2000 normally encodes the MBs in the raster scan order from the upper left to the lower right of the image frame.
  • the rate control device 3000 monitors the number of output bits of the bit stream of the MB encoding device 2000, adjusts the quantization parameter supplied to the MB encoding device 2000, and targets the output bit stream. The rate is controlled so as to approach the number of bits. Specifically, if the number of bits in the bitstream exceeds the target number of bits, the quantization parameter that increases the quantization width is set to MB. On the contrary, when the number of bits of the bit stream is smaller than the target number of bits, a quantization parameter for reducing the quantization width is supplied to the MB encoder 2000.
  • the decoded image frame buffer 4000 uses the decoded image of the MB encoding device 2000 for the subsequent encoding (prediction), so that the MB encoding device 2000 completes the 1 MB encoding.
  • the decoded image of the MB encoding device 2000 is read and stored.
  • MB encoding device 2000 includes Read device 2100 (original image MB memory 2110, reference image memory 2120), prediction device 2200, Venc device 2300 (transformation / quantization device 2310, inverse quantifier). Conversion / inverse conversion device 2320, decoded image MB memory 2330), EC device 2400 (entropy coding device 2410, output buffer 2420, control device 2430, context replication memory 2440)
  • Original image MB memory 2110 reads and stores an image of an encoding target MB (hereinafter simply referred to as original image org) from an image frame stored in original image frame buffer 1000.
  • original image org an image of an encoding target MB
  • the reference image memory 2120 reads from the decoded image frame buffer 4000 and stores an image (hereinafter simply referred to as a reference image ref) necessary for predicting and encoding the encoding target MB. .
  • the prediction device 2200 detects a prediction parameter parang that can suitably encode an original image from reference images stored in a decoded image frame buffer 4000 and a decoded image memory 2330 described later, and a predicted image pred described later.
  • a prediction error image pe is generated.
  • the prediction parameters are supplied to an entropy code generator 2410.
  • the prediction error image pe is supplied to a transform / quantization device 2310 described later.
  • the prediction error image pe is added to the output of an inverse quantization / inverse transform device 2320, which will be described later, and stored as a decoded image in the decoded image MB memory 2330.
  • the decoded image MB memory 2330 stores the original image supplied from the original image MB memory 2110 as a decoded image.
  • intra-frame prediction there are two types of prediction, intra-frame prediction and inter-frame prediction.
  • the prediction image and prediction error image in intra-frame prediction / inter-frame prediction are described below.
  • Intraframe prediction refers to a past decoded image having the same display time as the current encoding target image frame, and uses the correlation of pixels in the image frame (in the spatial direction) to predict the predicted image. Generate pred.
  • Fig. 3 shows intra-frame prediction with a 4x4 pixel block size obtained by further subdividing MB.
  • non-patent document 1 ISO / IEC 14496-10 See Advanced Video Coding section 8.3 Intra prediction process).
  • intra_dir is an intra-screen prediction direction parameter indicating the direction of intra-frame prediction.
  • the prediction device 2200 When selecting the intra-frame prediction, the prediction device 2200 generates a predicted image pred according to the intra-screen prediction direction parameter int ra_dir.
  • intra-frame prediction is
  • pred-intra prea iction (ref, intra dir)
  • intra_prediction0 is a function that generates an intra-frame prediction image according to the intra-screen prediction direction parameter intra_dir.
  • the inter-frame prediction is performed by referring to a past decoded image having a display time different from that of the current encoding target image frame and using a correlation between image frames (time direction) to predict the predicted image pr ed. Is generated.
  • inter-frame prediction inter-frame prediction of a 16x16 pixel block is shown in Fig. 4 (For other inter-frame prediction such as pixel block size, refer to Non-Patent Document 1 Section 8.4 of ISO / IEC 14496-10 Advanced Video Coding. See prediction proces s).
  • Motion vectors mv_x and mv_y in FIG. 4 are prediction parameters for inter-frame prediction.
  • inter_prediction0 is a function that generates the reference image r e and the inter-frame prediction image according to the motion vector nore mv_x and mv_y.
  • the pixel accuracy of the motion vector is 1/4 pixel.
  • the prediction device 2200 uses the cost function (prediction evaluation value) of Equation (3) to calculate the predicted image p described above. Detect the prediction parameter param that generates red.
  • the prediction parameters are the intra prediction direction intra_dir for intra-frame prediction, the motion vectors mv_x, mv j for inter-frame prediction, etc. (Ref. 7, ISO / IEC 14496-10 Advanced Video Coding, Section 7 Syntax and semantics).
  • pe idx (y, x) rg (b4y ldx + y, b ⁇ x lJx + x) — pred (by idx +, b4x lcb + x)
  • QP is the MB quantization parameter
  • idx is the 4x4 block number inside the MB in Figure 2
  • the transform / quantization apparatus 2230 frequency-converts the prediction error pe supplied from the prediction apparatus 2200 in units of blocks smaller than MB (hereinafter referred to as “transform blocks”). Convert from the inter-domain to the frequency domain.
  • the prediction error image converted into the frequency domain is called a conversion coefficient T.
  • transform / quantization apparatus 2230 quantizes transform coefficient T with a quantization width corresponding to quantization parameter QP supplied from rate control apparatus 3000.
  • the quantized transform coefficient is generally called a transform quantization value L.
  • the transform quantization value L is supplied to the inverse quantization / inverse transform device 2330 for subsequent encoding and to the EC device 2400 for bit stream formation.
  • the inverse quantization / inverse transform device 2330 performs inverse quantization on the transform quantization value L supplied from the transform / quantization device 2230, and further performs inverse frequency transform to restore the original space region.
  • a prediction error image returned to the original spatial region called the reconstructed predictive error image P e_rec.
  • the reconstructed prediction error image pe_re C supplied from the inverse quantization / inverse transform device 2330 is added with the prediction image pe supplied by the prediction device 2200 (Equation (8), decoded as a decoded image).
  • the decoded image rec stored in the image MB memory 2330.
  • the decoded image rec stored in the MB memory 2330 is subsequently read into the decoded image frame buffer 4000 and becomes a reference image. rec two pred + pe _ rec
  • the EC device 2400 includes an entropy encoding device 2410, an output buffer 2420, a control device 2430,
  • the entropy encoding device 2410 entropy-codes input data and supplies output bits to the output buffer 2420.
  • the control device 2430 monitors the number of output bits of the entropy encoding device 2410 and controls the operation of other devices.
  • the context copy memory 2440 is a memory for storing a copy of context data to be described later.
  • the control device 2430 monitors the number of output bits of the entropy encoding device 2410, and via the control signals (entropy code control signal, output buffer control signal), the entropy code control device 2410 and the output buffer 2420. To control.
  • the control device 2430 causes the bits stored in the output buffer 2420 to be output as MB code data by the output canoffer control signal.
  • the upper limit number of bits per 1 MB defined in the above standard is simply called the specified value.
  • the controller 2430 stops the entropy encoder 2410 according to the entropy code control signal. Therefore, all bits of the output buffer 2420 are discarded by the output buffer control signal (that is, the contents of the output canoffer 2420 at this time are not used as the code data). After discarding the bits, the control device 2430 activates the entropy coding device 2410 with an entropy code control signal, and inputs the number of bits below a specified value. Re-encode the image data.
  • the entropy encoding device 2410 includes a binarization device 24100, an arithmetic coder 2
  • the entropy encoding device 2410 first converts all the Context data stored in the Context Modeling device 24102 immediately before entropy encoding the processing target MB in order to support subsequent re-encoding. Save to duplicate memory 2440. Subsequently, the entropy single encoding device 2410 converts the prediction parameter supplied from the prediction device 2200 via the switch 24103SW and the transformed quantization value supplied from the transformation / quantization device 2310 into the binarization device 24100. The binary number is added by the above (hereinafter, the binarized data will be referred to as bin hereinafter) and supplied to the arithmetic coder 24101.
  • the Context Modeling device 24102 supplies Context data corresponding to the bin to the arithmetic coder 24101.
  • the arithmetic coder 24101 uses the Context data to arithmetically encode the bin, writes the output bits to the output buffer 2420 via the switch 24104SW, and updates the Context data updated by arithmetic encoding to the Context. Return to Modeling device 24102.
  • Context data in AVC is the probability of storing the MPS (Most Probable SyMBol) lbit and LPS (Least Probable SyMBol) probability pLPS value for each symbol (bin) to be entropy encoded.
  • MPS Moving Probable SyMBol
  • LPS east Probable SyMBol probability pLPS value for each symbol (bin) to be entropy encoded.
  • This is 6-bit data of the table index (State) (for details, see Section 9.3 CABA C parsing process for slice data in Non-Patent Document 1 ISO / IEC 14496-10 Advanced Video Coding).
  • the Context data is usually initialized with the first MB in the image frame, and the value continues to be updated with subsequent arithmetic signs.
  • the entropy encoding device 2410 first stops the processing of the entropy code for the input data, and then reads the Context data stored in the Context replication memory 2440 into the Context Modeling device 24102. After that, the binarization device 24100 is PCM (Puls e) Generate a prediction parameter bin indicating the start of (Code Modulation) and supply it to the arithmetic coder 24101. At the same time, the Context Modeling device 24102 supplies the Context data corresponding to the bin to the arithmetic coder 24101.
  • the arithmetic coder 24101 uses the Context data to arithmetically input the bin, writes the output bits to the output buffer 2420 via the switch 24104SW, and updates the Context data updated by arithmetic encoding to the Context Mode ling. Return to device 24102. After completing the arithmetic sign of the prediction parameter bin indicating the start of PCM, switch 24104SW, read the image stored in the original image MB memory 2110, re-encode it as PCM, and output Write to buffer 2420.
  • original image PCM re-encoding a process of re-encoding an original image with PCM without applying the above-described conversion process
  • original image PCM re-encoding for example, Patent Document 1 Japanese Patent Laid-Open No. 2004-200412. 13521). If the original image PCM re-encoding is used, an image for which conversion or prediction is not effective at all can be encoded without distortion and with a certain number of bits below a specified value. It is said that the processing time of the entropy decoding device on the decoding side, which is connected only by the device, can be guaranteed for a certain time.
  • the conventional image encoding device By sequentially executing the above-described MB encoding, the conventional image encoding device generates a bitstream.
  • Patent Document 1 Japanese Patent Laid-Open No. 2004-13521
  • Non-Patent Document 1 ISO / IEC 14496-10 Advanced Video Coding
  • the previous MB (by re-encoding MB (il) for the original image PCM, the reference image of the subsequent MB is replaced with the original value by replacing the decoded image of the previous MB with the original image). Because of the difference, the above-mentioned prediction dependency is broken, so in the pipeline operation, the prediction of the subsequent MB must be executed again.
  • the frequency characteristic power of the MB reconstructed with the original image by the original image PCM re-encoding is different from the peripheral MB reconstructed with the decoded image.
  • image quality There is also a problem in image quality that causes a strange feeling. This problem cannot be avoided only by providing a plurality of MB encoding devices 2000.
  • the present invention has been made in view of the above problems, and guarantees a code delay due to re-encoding without increasing the circuit scale of the encoding device at a fixed time. It is an object of the present invention to provide an image encoding device that can be subjectively and of high image quality. Means for solving the problem
  • a first invention for solving the above-mentioned problem is an image encoding device, and when entropy coding is performed on a transformed quantized value obtained by transforming an image into a frequency domain, the entropy coding When the number of output code bits exceeds a prescribed amount, an image obtained by reconstructing the transform quantization value is used as an output of the image encoding device.
  • a second invention for solving the above-mentioned problems is an entropy code means for entropy coding a quantized transformation value obtained by transforming an image into a frequency domain, and a non-entropy code sign.
  • a non-entropy code key means that outputs an output of the image coding device when the number of output code bits of the enthalpy code code exceeds a specified amount.
  • the image obtained by reconstructing the transform quantized value is code data obtained by the non-entropy coding means performing non-entropy coding.
  • a third invention for solving the above problem is a means for dividing an input image frame into image blocks, a means for predicting the image block, and a prediction error image block obtained by the prediction means.
  • Transform quantizing means for transforming to quantize means for reconstructing a decoded image from output data of the transform quantizing means, means for entropy encoding the output data of the transform quantizing means, and the entropy
  • a fourth invention for solving the above-mentioned problem, in the third invention, means for detecting a parameter for predictively encoding the image block, output data of the prediction parameter detecting means, and a quantization parameter are used. And means for estimating the number of output bits after entropy coding of the processing target image block, and when the estimated number of output bits exceeds a specified amount, the decoded image of the reconstructing means is extracted from the processing target image block. Means for outputting as encoded data.
  • a means for dividing an input image frame into image blocks, a means for predicting the image block, and a parameter for predictively encoding the image block are detected.
  • Means for estimating the number of output bits after entropy coding of the processing target image block using the output data and the quantization parameter of the prediction parameter detection means, and the prediction obtained by the prediction means Error image block in frequency domain An image code comprising: transform quantization means for transforming and quantizing; means for reconstructing a decoded image from output data of the transform quantization means; and means for entropy encoding output data of the transform quantization means And a means for outputting the decoded image of the reconstruction means as the encoded data of the processing target image block when the estimated number of output bits exceeds a prescribed amount.
  • a sixth invention that solves the above problem is that, in the fourth and fifth inventions, the number of output bits after entropy code of the processing target image block is obtained using the estimated number of output bits. Means for setting a quantization parameter to be equal to or less than a predetermined amount is provided.
  • the number of output bits after entropy coding of the processing target image block using the output data of the transform quantization means the number of output bits after entropy coding of the processing target image block using the output data of the transform quantization means.
  • An eighth invention for solving the above problem is a means for dividing an input image frame into image blocks, a means for predicting the image block, and a prediction error image block obtained by the prediction means.
  • Transform quantizing means for transforming to quantize means for reconstructing a decoded image from output data of the transform quantizing means, and means for entropy coding the output data of the transform quantizing means
  • the output data of the transform quantization means is used so that the number of output bits of entropy encoding of the processing target image block is equal to or less than a predetermined amount using the estimated output bit number of
  • a ninth invention for solving the above-mentioned problem is an image encoding method, in which entropy encoding is performed when entropy encoding is performed on a converted quantized value obtained by converting an image into a frequency domain. When the number of output code bits exceeds a specified amount, an image obtained by reconstructing the transform quantization value is used as encoded data.
  • a tenth invention for solving the above problem is an image encoding method, wherein an entropy encoding is performed when an entropy encoding is performed on a converted quantized value obtained by converting an image into a frequency domain and quantizing the image. When the number of encoded output code bits exceeds a specified amount, the image obtained by reconstructing the transform quantization value is subjected to non-entropy encoding to generate encoded data.
  • An eleventh invention for solving the above-mentioned problem is an image encoding method, which is obtained by dividing an input image frame into image blocks, predicting the image block, and the prediction.
  • the output bit is not used as encoded data of the processing target image block, and the reconstructed decoded image is used as encoded data. And an output process.
  • a process for detecting a prediction parameter for predictively encoding the image block, output data of the prediction parameter, and a quantization parameter And a process for estimating the number of output bits after entropy encoding of the processing target image block, and when the estimated output bit number exceeds a predetermined amount, the reconstructed decoded image is processed as the processing target image block. And a process of outputting as encoded data.
  • a thirteenth invention for solving the above-mentioned problem is an image encoding method, wherein the input image frame is divided into image blocks, the image block is predicted, and the image block is predicted.
  • a fourteenth invention for solving the above-described problems is the above-described estimation output in the twelfth and thirteenth inventions.
  • the quantization parameter is set so that the number of output bits after entropy coding of the processing target image block is equal to or less than a specified amount.
  • the number of output bits after entropy coding of the processing target image block is estimated using quantized data.
  • processing for discarding the output data of the quantization processing so that the number of output bits of the entropy code i of the processing target image block is equal to or less than a predetermined amount by using the estimated number of output bits is characterized by comprising.
  • a sixteenth invention for solving the above-described problem is an image encoding method, which is obtained by the process of dividing an input image frame into image blocks, the process of predicting the image block, and the prediction.
  • a process of transforming and quantizing the predicted error image block into a frequency domain a process of reconstructing a decoded image from the quantized data, a process of entropy encoding the quantized data, Processing that estimates the number of output bits after entropy encoding of the processing target image block using the quantized data, and output of entropy encoding of the processing target image block using the estimated output bit number
  • a process of discarding the output data of the quantization process so that the number of bits is equal to or less than a specified amount.
  • a seventeenth aspect of the present invention for solving the above-described problem is a program for image coding, wherein the program performs entropy coding on a transformed quantized value obtained by transforming an image into a frequency domain and quantizing the image.
  • the information processing apparatus is caused to execute processing for using the image obtained by reconstructing the converted quantized value as encoded data.
  • An eighteenth invention for solving the above problem is a program of an image encoding method, wherein the program entropy encodes a transformed quantized value obtained by transforming an image into a frequency domain and quantizing it.
  • the information processing apparatus performs processing to convert the image obtained by reconstructing the transform quantization value into code ⁇ data by non-entropy coding It is made to perform.
  • a nineteenth invention for solving the above-described problem is a program of an image encoding method, wherein the program includes a process of dividing an input image frame into image blocks, and the image block , A process of transforming and quantizing the prediction error image block obtained by the prediction into a frequency domain, a process of reconstructing a decoded image from the quantized data, and the quantized If the number of output bits after entropy coding of the data and the entropy code of the processing target image block exceeds the specified amount, the output bits are not used as the encoded data of the processing target image block.
  • the information processing apparatus is caused to execute processing for outputting the reconstructed decoded image as encoded data.
  • the program detects a prediction parameter for predictive coding of the image block, and output data of the prediction parameter. Processing for estimating the number of output bits after entropy coding of the processing target image block using the quantization parameter, and when the estimated output bit number exceeds a predetermined amount, the reconstructed decoded image is It is characterized in that the information processing apparatus is caused to execute a process of outputting as encoded data of a processing target image block.
  • a twenty-first invention for solving the above-described problem is a program of an image encoding method, wherein the program includes a process of dividing an input image frame into image blocks, a process of predicting the image block, A process of detecting a prediction parameter for predictively encoding the image block; a process of estimating the number of output bits after entropy encoding of the processing target image block using the prediction parameter and the quantization parameter; A process of transforming a prediction error image block obtained by prediction into a frequency domain and quantizing, a process of reconstructing a decoded image from the quantized data, and entropy encoding of the quantized data And when the estimated number of output bits exceeds a specified amount, the reconstructed decoded image is used as encoded data of a processing target image block. Characterized in that to execute a process of outputting to the information processing apparatus Te.
  • the number of output bits after entropy coding of the processing target image block is equal to or less than a predetermined amount using the estimated number of output bits.
  • the quantization parameter is set so that
  • the program estimates the number of output bits after entropy coding of the processing target image block using quantized data. And processing target image using the estimated output bit number It is characterized by causing the information processing apparatus to execute a process of discarding the output data of the quantization process so that the number of output bits of the entropy code of the block is equal to or less than a specified amount.
  • a twenty-fourth invention for solving the above-described problem is a program of an image encoding method, wherein the program includes a process of dividing an input image frame into image blocks, a process of predicting the image block, A process of transforming and quantizing the prediction error image block obtained by the prediction into a frequency domain, a process of reconstructing a decoded image from the quantized data, and entropy encoding the quantized data Processing, a process for estimating the number of output bits after entropy coding of the processing target image block using the quantized data, and an entry port of the processing target image block using the estimated output bit number It is characterized by causing the information processing apparatus to execute a process of discarding the output data of the quantization process so that the number of output bits of the P code is less than a specified amount. To.
  • the image encoding device of the present invention even if a PCM code is generated, the MB image is reconstructed by the decoded image, so the frequency characteristics of the peripheral MB are the same, In principle, problems that cause subjective discomfort do not occur! /.
  • the number of output bits after entropy coding of the processing target MB is predicted before entropy coding, and the number of output bits after entropy coding is coded so that the specified value does not change. In this way, re-encoding can be completely avoided. In other words, since pipe installation does not occur due to re-encoding, the code delay can be guaranteed at a certain time.
  • the present invention is capable of guaranteeing the code delay due to the pipeline installation of the recode key at a fixed time, and also subjectively providing a high-quality image coding device. Can be provided.
  • FIG. 1 is a diagram showing a conventional image encoding device.
  • FIG. 2 is a diagram for explaining the configuration of an image frame (4: 2: 0 format).
  • FIG. 3 is a diagram showing an example of intra-frame prediction.
  • FIG. 4 is a diagram showing an example of inter-frame prediction.
  • FIG. 5 is a diagram showing an entropy code display device.
  • FIG. 6 is a diagram for explaining a sign ⁇ by a pipeline.
  • FIG. 7 is a diagram for explaining pipeline installation.
  • FIG. 8 is a diagram for explaining the image coding apparatus according to the first embodiment.
  • FIG. 9 is an operation flowchart of the EC device according to the first embodiment.
  • FIG. 10 is a diagram for explaining the pipeline operation of the embodiment.
  • FIG. 11 is a diagram for explaining an image coding apparatus according to a second embodiment.
  • FIG. 12 is an EC apparatus operation flowchart of the second embodiment.
  • FIG. 13 is a diagram for explaining the operation of the pipeline in the present embodiment.
  • FIG. 14 is a block diagram of an image encoding device according to a third embodiment.
  • FIG. 15 is an EC apparatus operation flowchart of the third embodiment.
  • FIG. 16 is a block diagram of an image encoding device according to a fourth embodiment.
  • FIG. 17 is an operation flowchart of a rate control apparatus according to the fourth embodiment.
  • FIG. 18 is a block diagram of an image encoding device according to a fifth embodiment.
  • FIG. 19 is an operation flowchart of the block bit estimation apparatus.
  • FIG. 20 is a diagram for explaining a scan position.
  • FIG. 21 is an operation flowchart of the data modulation device.
  • FIG. 22 is a block diagram of an image encoding device according to a fifth embodiment.
  • FIG. 23 is a diagram showing a configuration of an information processing apparatus.
  • FIG. 8 shows the configuration of the image coding apparatus according to the first embodiment of the present invention.
  • the image encoding device of the invention includes a switch SW 5000 that operates according to the entropy code control signal supplied by the control device 2430.
  • the EC device 2400 (entropy encoding device 2410) of the invention uses the decoded image MB memory 2330 or the decoded image frame buffer 4000 via the SW5000 instead of the original image supplied from the original image MB memory 2110 in FIG. Therefore, the operation is different from the conventional EC device 2400.
  • the switch SW5000 is controlled by the entropy code control signal supplied from the controller 2430.
  • the entropy code control signal power is requested to transmit the decoded image
  • the decoded image is transferred to the entropy code. Supplied to device 2410. Specifically, if the decoded image of the current MB subject to entropy encoding remains in the decoded image MB memory 2330! /, The decoded image stored in the decoded image MB memory 2330 is supplied to the entropy encoding device 2410.
  • the decoded image of the current entropy encoding target MB does not remain in the decoded image MB memory 2330, the decoded image of the current entropy encoding target MB stored in the decoded image frame buffer 4000 is entropy encoded. Supply to 2410.
  • step S10000 to cope with the subsequent re-encoding, all the current context data stored in the Context Modeling device 24102 is stored in the Context immediately before the target MB is entropy-encoded. Save to duplicate memory 2440.
  • step S10001 the input data input via the switch 24103SW is binarized by the binarization device 24100 (bin is generated) and supplied to the arithmetic coder 24101.
  • the Context Modeling device 24102 sends the Context data corresponding to bin to the arithmetic coder 24 Supply to 101.
  • the arithmetic coder 24101 uses the context data to arithmetically sign bin, writes the output bits to the output buffer 2420 via the switch 24104SW, and outputs the context data updated by arithmetic coding to the context modeling device 24102.
  • step S10002 it is determined whether entropy coding (arithmetic coding) of all input data of 1 MB is completed.
  • entropy code for all 1MB of input data has been completed, the process ends and the bits stored in the output buffer 2420 are output as an MB bitstream. If the entropy code is not completed, the process proceeds to step S10003.
  • step S10003 it is determined whether or not the current output bit number bit obtained by entropy encoding the input data is equal to or less than a prescribed value MB_bit_th. If it is equal to or less than the prescribed value MB_bit_th, the process proceeds to step S10001. If not, the process proceeds to step S10004. This is called the decoded image PCM re-encoding).
  • step S10004 the Read device 2100, the prediction device 2200, the Venc device 2300, and the entropy coding device 2410 are stopped immediately (the internal state of each device remains the same). Thereafter, the process proceeds to step S10005.
  • step S10005 all the bits of the output buffer 2420 are discarded so that the current contents of the output buffer 2420 are not encoded data. Subsequently, the process proceeds to step S10006.
  • step S10006 the Context data stored in the Context copy memory 2440 is read into the Context Modeling device 24102 for subsequent entropy coding. Subsequently, the flow proceeds to step S 10007.
  • step S10007 the decoded image supplied from SW5000 is re-encoded with PCM.
  • the control device 2430 activates the entropy encoding device 2410.
  • the binarization apparatus 24100 generates a prediction parameter bin indicating the start of the PCM and supplies it to the arithmetic coder 24101.
  • the Context Modeling device 24102 supplies the Context data corresponding to the bin to the arithmetic coder 24101.
  • the arithmetic coder 24101 uses the Context data to arithmetically input bin, and outputs the output bit to the output buffer 2 via the switch 24104SW.
  • the Context data updated by arithmetic coding is returned to the Context Modeling device 24102.
  • the 24104SW is switched, the decoded image supplied from the SW5000 is read, the decoded image is re-encoded as PCM, and written to the output buffer 2420.
  • the decoded image is an image in which the output data force transformed and quantized by the transform / quantization device 2310 is also reconstructed. Then, it progresses to step S10008.
  • step S10008 the emergency stop of the Read device 2100, the prediction device 2200, and the Venc device 2300 is canceled. After that, EC is terminated and the bit stored in the output buffer 2420 is output as an MB bitstream.
  • the image coding apparatus of the present invention in the PCM re-encoding, a decoded image to which transformation and quantization applied to the original image are applied is used. Due to this effect, it is not necessary to re-read the original image, which was necessary in the conventional image encoding device. Furthermore, since the reference image of the subsequent MB is completely identical with that before the PCM re-encoding, there is no need to repeat the prediction with the subsequent MB. As a result, in the image coding apparatus of the present invention, even if PCM re-encoding occurs, the code delay due to pipeline installation becomes much shorter than before (Fig. 10). In addition, since the MB image is reconstructed by the decoded image in the PCM code of the present invention, the frequency characteristics of the peripheral MB are the same, and the problem of subjective discomfort does not occur in principle.
  • the number of MB encoding devices 2000 remains one, and the switch SW5000 hardly affects the circuit scale.
  • the encoding delay due to re-encoding without significantly increasing the circuit scale of the image encoding device is remarkably shortened, and the image encoding quality is high subjectively.
  • a dredging device can be provided.
  • FIG. 11 shows the configuration of the image coding apparatus according to the second embodiment of the present invention that further shortens the coding delay.
  • the image coding apparatus according to the second embodiment of the present invention includes an MB bit estimation apparatus 2450.
  • the EC device 2400 (entropy encoding device 2410) of the invention has an operation different from that of the EC device 2400 of the first embodiment of the invention because the estimated number of bits supplied to the MB bit estimation device 2450 is input.
  • the MB bit estimation device 2450 uses the quantization parameter QP supplied from the rate control device 3000 and the prediction evaluation value Cost of Equation (3) supplied from the prediction device 2200, and the processing target is calculated according to Equation (9). Estimate the number of output bits MB_est_bit after MB entropy coding.
  • MB _ est _ bit a x 3S4 x H (QP, Cost) (9)
  • Equation (9) can be found in the literature (Chouno et al., "A study on quantization characteristics of H.264,” FIT 2004, J-062,
  • F is a number greater than 0 and less than 1.
  • step S 20000 it is determined whether or not the estimated number of bits MB_est_bit is equal to or less than a specified value MB_bit_th. Step S10000 if: Otherwise, go to step S20001.
  • Steps S10000 to S10008 described below are the same as those in the first embodiment of the invention, but will be described again.
  • step S10000 all the current context data stored in the Context Modeling device 24102 is stored in the Context immediately before the target MB is entropy-encoded to support subsequent re-encoding. Save to duplicate memory 2440.
  • step S10001 the input data input via the switch 24103SW is binarized by the binarization apparatus 24100 (bin is generated) and supplied to the arithmetic coder 24101.
  • the Context Modeling device 24102 sends the Context data corresponding to bin to the arithmetic coder 24 Supply to 101.
  • the arithmetic coder 24101 uses the Context data to arithmetically input bin, writes the output bits to the output buffer 2420 via the switch 24104SW, and outputs the Context data updated by arithmetic encoding to the Context Modeling device 24102.
  • step S10002 it is determined whether entropy coding (arithmetic coding) of all 1 MB of input data has been completed.
  • entropy coding Arimetic coding
  • step S10003 it is determined whether or not the current output bit number entropy coding of the input data is less than or equal to the specified value MB_bit_th. If it is equal to or less than the prescribed value MB_bit_th, the process proceeds to step S10001. If not, the process proceeds to step S10004. This is called the decoded image PCM re-encoding).
  • step S10004 the Read device 2100, the prediction device 2200, the Venc device 2300, and the entropy coding device 2410 are instantaneously stopped (the internal state of each device remains the same). Thereafter, the process proceeds to step S10005.
  • step S10005 all the bits of the output buffer 2420 are discarded so that the current contents of the output buffer 2420 are not encoded data. Subsequently, the process proceeds to step S10006.
  • step S10006 the Context data stored in the Context replication memory 2440 is read into the Context Modeling device 24102 for subsequent entropy coding. Subsequently, the flow proceeds to step S 10007.
  • step S10007 the decoded image supplied from SW5000 is re-encoded with PCM.
  • the control device 2430 activates the entropy encoding device 2410.
  • the binarization apparatus 24100 generates a prediction parameter bin indicating the start of the PCM and supplies it to the arithmetic coder 24101.
  • the Context Modeling device 24102 supplies the Context data corresponding to the bin to the arithmetic coder 24101.
  • the arithmetic coder 24101 uses the Context data to arithmetically input bin, and outputs the output bit to the output buffer 2 via the switch 24104SW.
  • the Context data updated by arithmetic coding is returned to the Context Modeling device 24102.
  • the 24104SW is switched, the decoded image supplied from the SW5000 is read, the decoded image is re-encoded as PCM, and written to the output buffer 2420.
  • the decoded image is an image in which the output data force transformed and quantized by the transform / quantization device 2310 is also reconstructed. Then, it progresses to step S10008.
  • step S10008 the emergency stop of the read device 2100, the prediction device 2200, and the Venc device 2300 is cancelled. After that, EC is terminated and the bit stored in the output buffer 2420 is output as an MB bitstream.
  • step S20001 the decoded image supplied from SW5000 is encoded with PCM (because it is not a re-encoded key, it is referred to as a decoded image PCM code).
  • the binarization apparatus 24100 generates a prediction parameter bin indicating the start of the PCM and supplies it to the arithmetic coder 24101.
  • the Context Modeling device 24102 supplies Context data corresponding to the bin to the arithmetic coder 24101.
  • the arithmetic coder 24101 arithmetically encodes bin using the Context data, writes the output bits to the output buffer 2420 via the switch 24104SW, and returns the Context data updated by arithmetic encoding to the Context Modeling device 24102. .
  • the 24104SW is switched, the decoded image supplied from the SW5000 is read, the decoded image is re-encoded with the PCM, and written to the output buffer 2420.
  • the decoded image is an image reconstructed by the output data force transformed and quantized by the transform / quantization device 2310. After that, EC is terminated, and the bits stored in the output buffer 2420 are output as an MB bit stream.
  • the number of bits after entropy coding for the processing target MB is estimated before the entropy code ⁇ , and if the estimated number of bits is likely to exceed the specified value, the entropy code Decoded image PCM encoding that guarantees that the number of bits after the key is always less than the specified value is applied to the processing target MB.
  • the image encoding device of this embodiment can further reduce the encoding delay (FIG. 13).
  • parameter a in equation (9) is set according to the remaining encoding time of the target frame. For example, if the remaining time is short, decrease OC (close to 0), otherwise increase OC (
  • the code delay can be controlled so as to be within a certain period of time by moving it closer to 1.
  • the context duplication memory 2440 in FIG. 11 is unnecessary, and it is not necessary to monitor the number of output bits of the entropy code.
  • the image coding device can be configured more simply (Fig. 14).
  • step S20000 it is determined whether or not the estimated number of bits MB_est_bit is less than or equal to the specified value MB_bit_th. Step S10000 if: Otherwise, go to step S20001.
  • step S10001 the input data input via the switch 24103SW is binarized by the binarization device 24100 (bin is generated) and supplied to the arithmetic coder 24101.
  • the Context Modeling device 24102 supplies Context data corresponding to bin to the arithmetic coder 24101.
  • the arithmetic coder 24101 uses the Context data to input the arithmetic sign of bin, writes the output bits to the output buffer 2420 via the switch 24104SW, and outputs the Context data updated by the arithmetic encoding to the Context Modeling device 24102.
  • step S10002 it is determined whether entropy coding (arithmetic coding) of all 1 MB of input data has been completed.
  • entropy coding Arimetic coding
  • step S20001 the decoded image supplied from SW5000 is encoded with PCM (because it is not a re-encoded key, it is called a decoded image PCM code).
  • the binarization device 24100 is P
  • a prediction parameter bin indicating the start of CM is generated and supplied to the arithmetic coder 24101.
  • the Context Modeling device 24102 supplies Context data corresponding to the bin to the arithmetic coder 24101.
  • the arithmetic coder 24101 arithmetically encodes bin using the Context data, writes the output bits to the output buffer 2420 via the switch 24104SW, and returns the Context data updated by arithmetic encoding to the Context Modeling device 24102.
  • the 24104SW is switched, the decoded image supplied from the SW5000 is read, the decoded image is re-encoded with the PCM, and written to the output buffer 2420.
  • the decoded image is an image reconstructed by the output data force transformed and quantized by the transform / quantization device 2310.
  • EC is terminated, and the bits stored in the output buffer 2420 are output as an MB bit stream.
  • FIG. 16 shows the configuration of an image encoding device according to the fourth embodiment of the present invention, which can prevent the above-described deterioration in image quality.
  • the image coding apparatus of the fourth embodiment of the invention includes an estimation bit from the MB bit estimation apparatus 2450 to the rate control apparatus 3000. Is supplied. For this reason, the operation of the rate control device 3000 is different from the conventional one.
  • Rate control device 3000 changes the quantization parameter using the estimated number of bits supplied from MB bit estimation device 2450 in addition to the number of output bits of the bit stream of MB encoder device 2000. .
  • the MB bit estimation device 2450 uses the changed quantization parameter to estimate the number of bits. Is recalculated using Equation (9), and the recalculated estimated number of bits is supplied to the controller 2430.
  • Rate control device 3000 Devices other than the rate control device 3000 are the same as those in the third embodiment of the invention shown in FIG. Therefore, hereinafter, the operation of the rate control device 3000, which is a feature of the invention, will be described with reference to the flowchart of FIG.
  • step S30000 the quantization parameter QP for the processing target MB is calculated by equation (17).
  • qp_pic is the quantization parameter for the encoding target frame
  • Bitrate is the target bit rate
  • Framerate is the frame rate of the image
  • cur_pic_bit is the number of bits generated at the current encoding of the encoding target frame
  • target_pi bit is The target code amount of the encoding target frame
  • pic_MB_size is the number of MBs included in the encoding target frame
  • MB_nuMBer is the number of MBs encoded so far in the encoding target frame.
  • step S30001 whether the estimated number of bits MB_est_bit for the quantization parameter qp calculated in step S30000 exceeds the specified value MB_bit_th (condition 1), the maximum number of MBs allocated MB_tar_max_bit (Equation (20), Determine whether y is a number greater than or equal to 1) less than the specified value MB_bit_th (Condition 2). If conditions 1 and 2 are satisfied, the process proceeds to step S300002. If not, the quantization parameter qp calculated in step S30000 is supplied to the conversion / quantization device 2310.
  • step S30002 the quantization parameter qp in step S3000 is updated by equation (21), and the updated quantization parameter qp is supplied to the transform / quantization apparatus 2310.
  • qp_th is the minimum value of the quantization parameter QP corresponding to MB_est_bit of Equation (9) that satisfies MB_tar_max_bit or less.
  • the number of bits after entropy coding for the processing target MB is estimated from Equation (9), and the number of bits more than expected by the rate control apparatus 3000 is generated by PCM coding. It can be controlled not to. As a result, it is possible to solve the problem that a PCM code suddenly occurs, the amount of code assigned to the subsequent MB is reduced, and the image quality of the MB to be encoded subsequently deteriorates.
  • FIG. 18 shows the configuration of an image encoding device according to the fifth embodiment of the invention that can cope with this.
  • the image encoding device of the fifth embodiment includes a block bit estimation device 2340 and a data modulation device 2350.
  • devices other than the block bit estimation device 2340 and the data modulation device 2350 are the same as those shown in FIG. 4 is the same as in the fourth embodiment (however, the number of output bits after entropy code input is always less than or equal to the prescribed value MB_bit_th due to the functions of the block bit estimation device 2340 and the data modulation device 2350 described later.
  • the MB bit estimation device 2450 supplies the control device 2430 with the estimated number of bits MB_est_bit that is equal to or less than the specified value MB_bit_th). Therefore, hereinafter, the block bit estimation device 2340 and the data modulation device 2350, which are the features of the invention, will be described.
  • the block bit estimation device 2340 monitors the transform quantization value L supplied from the transform / quantization device 2310, and estimates the number of output bits after entropy coding of the transform block (hereinafter, the estimation This number of bits is called the block estimated bit number block_est_bit).
  • the discard position (disp_scan_pos) of the transform quantization value L is detected using the block estimated bit number block_est_bit.
  • Data modulation apparatus 2350 Block bit discarding position of merit transform quantization supplied from estimator 2340 according to (disp_ SCan _p 0S), the transformed and quantized value L is also supplied transformer / quantizer device 2310 forces A discard process described later is applied, and the transform quantization value L to which the discard process is applied is supplied to the inverse quantization / inverse transform apparatus 2320 and the entropy encoding apparatus 2410.
  • the transformation / quantization device 2230 in the AVC frequency-transforms the prediction error pe supplied from the prediction device 2200 in units of 4x4 blocks (conversion blocks) smaller than MB by the following equation (22). Calculate with the conversion factor T.
  • idx is the number of the 4x4 block inside the MB in Figure 2.
  • fintra in equation (26) is a number between 0 and less than 1, and finter is a number between 0 and less than 1. This is the end of the description of the transform quantization value L.
  • the block estimation bit number block_est_bit 0
  • the scan position scan_pos -l
  • the scan position is the entropy code order of transform quantization values in the transform block shown in FIG.
  • step S40000 scan_pos is incremented by one.
  • abs (x) is a function that returns the absolute value of x
  • int (x) is a function that rounds down to the nearest integer in X
  • pos_x (scan_pos) returns the X coordinate in the block corresponding to scan position scan_pos in Figure 20.
  • the function pos_y (scan_pos) is a function that returns the y coordinate in the block corresponding to the scan position scan_pos in FIG. Note that the processing of equation (29) means calculating the bin number when the converted quantized value L is binary-numbered by the entropy coding device.
  • step S40002 a determination is made as to whether or not the block_est_bit force equation (32) exceeds the number of conversion block upper limit bits block_bit_th h.
  • block Dit—th ax (MB bit—tn—header bit (par am)) / block num where oc is a number greater than 0 but less than 1, header_bit (param) is a prediction parameter supplied by the prediction device 2000 param A function that returns the number of bits when entropy-encoded, block_num is 1
  • the number of conversion blocks included in the MB, block_num 24 in AVC.
  • step S40003 If the block_est_bit force block_bit_th is not exceeded, the process proceeds to step S40003. Otherwise, the process proceeds to step S40004.
  • step S50000 it is determined from the discard position disp_scan_pos supplied from the block bit estimation apparatus 2340 whether or not to discard the transform quantization value. If disp_scan_pos is -1, the process ends without discarding (the value of the transform quantization value L is unchanged). On the other hand, if disp_scan_pos is not ⁇ 1, the process proceeds to step S50001.
  • step S50001 the transformed quantized value is discarded according to equation (33).
  • s_pos (x, y) is a function that returns the scan position corresponding to the coordinates (x, y) in the 4x4 block in FIG.
  • the number of output bits of the entropy code ⁇ per transform block can be reduced to block_bit_th (Equation (32)) or less.
  • the number of output bits of the entropy code per 1MB is always less than the specified value MB_bit_th.
  • the number of output bits after entropy code input is completely set to the specified value MB_bit_th regardless of the quantization parameter set by the rate control apparatus 3000.
  • the rate control device 3000 sets any quantization parameter.
  • the number of output bits after entropy code is completely equal to or less than the prescribed value MB_bit_th, it is not necessary to perform the decoded image PCM code. That is, the function of the decoded image PCM code key can be omitted from the configuration of FIG. 18, and the image code key device can be configured as shown in FIG. In this configuration, there is an advantage that the circuit scale of the image encoding device can be further reduced.
  • the information processing system shown in FIG. 23 includes a processor A1001, a program memory A1002, and storage media A1003 and A1004.
  • the storage media A1003 and A1004 may be separate storage media or storage areas having the same storage medium power.
  • a magnetic storage medium such as a hard disk can be used as the storage medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Abstract

画像を周波数領域に変換して量子化した変換量子化値をエントロピー符号化する際、エントロピー符号化の出力符号ビット数が規定量を超えた場合、前記変換量子化値を再構築して得た画像を、画像符号化装置の出力とする。これにより、符号化装置の回路規模を大きくすることなく、再符号化による符号化遅延を一定の時間に保証することを可能とし、主観的にも高画質な画像符号化装置を提供することができる。  

Description

明 細 書
画像符号化方法及び、これを用いた装置とコンピュータプログラム 技術分野
[0001] 本発明は、可変長符号ィ匕ゃ算術符号ィ匕などのエントロピー符号ィ匕に基づいた画像 符号化技術に関し、特に、画像符号ィ匕装置に適用して好適なものである。
背景技術
[0002] 従来、画像符号化装置は、外部から入力される動画像信号をディジタル化した後、 所定の画像符号化方式に準拠した符号化処理を行うことで符号化データすなわちビ ットストリームを生成する。
[0003] 前記の画像符号化方式として近年規格化された ISO/IEC 14496-10 Advanced Vid eo Codingがあり(非特許文献 1 ISO/IEC 14496-10 Advanced Video Coding)、前記 AVC符号器の参照モデルとして Joint Model方式が知られている(以後、従来の画像 符号化装置とよぶ)。
[0004] 図 1を参照して、ディジタルィ匕された画像フレームを入力とし、ビットストリームを出力 する、従来の画像符号化装置の構成と動作を説明する。
[0005] 図 1を参照すると、従来の画像符号化装置は、原画像フレームバッファ 1000、 MB符 号化装置 2000、レート制御装置 3000、復号画像フレームバッファ 4000で構成される。
[0006] 原画像フレームバッファ 1000は、画像フレームが QCIF(Quarter Common Intermedi ate Format)の場合、図 2に示すような画像データを格納する。画像フレームは、 MB( Macro Block)とよばれる 16x16画素の輝度画素と、 8x8画素の Crと Cbの色差画素を構 成要素とする画素ブロックに分割される。
[0007] MB符号化装置 2000は、通常、画像フレームの左上から右下へのラスタスキャン順 で、前記 MBを符号ィ匕する。
[0008] レート制御装置 3000は、 MB符号化装置 2000のビットストリームの出力ビット数を監 視して、 MB符号ィ匕装置 2000に供給する量子化パラメータを調整し、出力ビットストリ ームが目標のビット数に近づくようにレート制御する。具体的には、ビットストリームの ビット数が目標のビット数よりも多くなると、量子化幅を大とする量子化パラメータを MB 符号化装置 2000に供給し、逆にビットストリームのビット数が目標のビット数よりも少な くなると量子化幅を小とする量子化パラメータを MB符号ィヒ装置 2000に供給する。
[0009] 復号画像フレームバッファ 4000は、 MB符号化装置 2000の復号画像を、以降の符 号化(予測)に利用するために、 MB符号ィ匕装置 2000が 1MBの符号ィ匕を完了したタイ ミングで、 MB符号化装置 2000の復号画像を読み込んで格納する。
[0010] 続いて、 MB符号化装置 2000の内部構成と動作を詳細に説明する。
[0011] 図 1を参照すると、 MB符号化装置 2000は、 Read装置 2100(原画像 MBメモリ 2110、 参照画像メモリ 2120)、予測装置 2200、 Venc装置 2300(変換/量子化装置 2310、逆量 子化/逆変換装置 2320、復号画像 MBメモリ 2330)、 EC装置 2400(エントロピー符号ィ匕 装置 2410、出力バッファ 2420、制御装置 2430、 Context複製メモリ 2440)で構成される
[0012] 原画像 MBメモリ 2110は、原画像フレームバッファ 1000に格納された画像フレームか ら、符号化対象 MBの画像 (以後、単純に原画像 orgと呼ぶ)を読み込んで格納する。
[0013] 参照画像メモリ 2120は、符号ィ匕対象 MBを予測して符号ィ匕するために必要な画像( 以後、単純に参照画像 refと呼ぶ)を、復号画像フレームバッファ 4000から読み込んで 格納する。
[0014] 予測装置 2200は、復号画像フレームバッファ 4000および後述する復号画像メモリ 23 30に格納された参照画像から、原画像を好適に符号ィ匕できる予測パラメータ parang 検出し、後述する予測画像 predと予測誤差画像 peを生成する。前記予測パラメータ は、エントロピー符号ィ匕装置 2410に供給される。予測誤差画像 peは、後述する変換/ 量子化装置 2310に供給される。予測誤差画像 peは、後述する逆量子化/逆変換装 置 2320の出力に加算されて、復号画像 MBメモリ 2330に復号画像として格納される。
[0015] ただし、後述する原画像 PCM再符号化が発生した場合、復号画像 MBメモリ 2330に は、原画像 MBメモリ 2110から供給される原画像が復号画像として格納される。
[0016] ここで、前記予測には、フレーム内予測とフレーム間予測の 2種類がある。フレーム 内予測/フレーム間予測での予測画像と、予測誤差画像を以下で説明する。
[0017] フレーム内予測は、現在の符号ィ匕対象画像フレームと表示時刻が同一の過去の復 号画像を参照し、画像フレーム内(空間方向)での画素の相関を利用して、予測画像 predを生成する。一例として、 MBを更に細力べ分割した 4x4画素ブロックサイズでのフ レーム内予測を図 3に示す (色差やその他の場合でのフレーム内予測については、 非特許文献 1 ISO/IEC 14496-10 Advanced Video Codingの 8.3節 Intra prediction processを 照)。
[0018] 図 3の intra_dirは、フレーム内予測の方向などを示す画面内予測方向パラメータで ある。予測装置 2200は、フレーム内予測を選択すると、画面内予測方向パラメータ int ra_dirに従い予測画像 predを生成する。以後の説明のために、フレーム内予測を、
pred - intra prea iction ( ref , intra dir )
(1 ) と定義する。ここで、 intra_prediction0は、画面内予測方向パラメータ intra_dirに従い、 参照画像 re も、フレーム内予測画像を生成する関数である。
[0019] 一方のフレーム間予測は、現在の符号ィ匕対象画像フレームと表示時刻が異なる過 去の復号画像を参照し、画像フレーム間(時間方向)の相関を利用して、予測画像 pr edを生成する。フレーム間予測の一例として、 16x16画素ブロックのフレーム間予測を 図 4に示す (その他の画素ブロックサイズなどのフレーム間予測については、非特許 文献 1 ISO/IEC 14496-10 Advanced Video Codingの 8.4節 Inter prediction proces sを参照)。
[0020] 図 4の動きベクトル mv_x、 mv_yは、フレーム間予測の予測パラメータである。予測装 置 2200は、フレーム間予測を選択すると、動きベクトル mv_x、 mvjに従い予測画像 pr edを生成する。以後の説明のために、フレーム間予測を、 pred = inter pred iction^ ref , mv x , mv v)
(2)
と定義する。ここで、 inter_prediction0は、動きべクトノレ mv_x、 mv_yに従い、参照画像 r e 、フレーム間予測画像を生成する関数である。なお、 AVCにおいては、動きべ タトルの画素精度は 1/4画素である。
[0021] 予測装置 2200は、式 (3)のコスト関数 (予測評価値)を利用して、上述した予測画像 p redを生成する予測パラメータ paramを検出する。ここで、予測パラメータとは、フレー ム内予測であれば前記の画面内予測方向 intra_dir、フレーム間予測であれば前記の 動きベクトル mv_x、 mv jなどである (その他の予測パラメータについては、非特許文献 1 ISO/IEC 14496-10 Advanced Video Codingの 7節 Syntax and semanticsを参照)。
15
Cost、param ) = > ^ATD(idx) + ^(QP) x R parom )
(3)
SATD(idx) = 0.5x^^| H{idx)xv |)
x=0 y=0
H{idx) =
1 1 1 pe,Am ^,.,(0,1) P (0,2) pe,dx(0,3) 1 1 1
1 1 -1 Pe,dxm pelilx(U) I -1 — 1 (5) 1 一 1 -1 Pe,dx(2,0) pe,dx(2,\) 1 一 1 1
1 一 1 1 pe, ^,,,(3,1) 1 1 — 1
peidx (y, x) = rg(b4yldx + y, b\xlJx + x)— pred (b yidx + , b4xlcb + x)
(6)
Figure imgf000006_0001
ただし、 QPは MBの量子化パラメータ、 idxは図 2の MB内部での 4x4ブロックの番号、
(b4xidx,b4yidx){ ≤b4xidx≤U,0<b4yidx <12} は idxに対応する 4x4ブロックの左上角の MB内部での座標を示す。
[0022] 検出された予測パラメータ paramに対応する予測画像 predと、原画像 orgの差分を 予測誤差画像 peと呼ぶ (式 (6))。
[0023] 以上で、フレーム内予測/フレーム間予測での予測画像と、予測誤差画像の説明を 終わる。
[0024] 続 、て、変換/量子化装置 2230は、前記の予測装置 2200から供給される予測誤差 peを、 MBよりも細かいブロックの単位(以後、変換ブロックとよぶ)で周波数変換し、空 間領域から周波数領域に変換する。前記周波数領域に変換された予測誤差画像を 変換係数 Tと呼ぶ。
[0025] さらに、変換/量子化装置 2230は、前記の変換係数 Tを、レート制御装置 3000から 供給される量子化パラメータ QPに対応する量子化幅で量子化する。前記量子化され た変換係数は、一般的に変換量子化値 Lと呼ばれる。変換量子化値 Lは、以降の符 号化のために逆量子化/逆変換装置 2330へ、ビットストリーム形成のために EC装置 2 400に供給される。
[0026] まず、逆量子化/逆変換装置 2330に供給される変換量子化値 Lに着目して、以降の 動作を説明する。
[0027] 逆量子化/逆変換装置 2330は、変換/量子化装置 2230から供給される前記変換量 子化値 Lを逆量子化し、さらに逆周波数変換して元の空間領域に戻す。前記元の空 間領域に戻された予測誤差画像を再構築予測誤差画像 Pe_recと呼ぶ。
[0028] 逆量子化/逆変換装置 2330から供給される前記再構築予測誤差画像 pe_reCには、 予測装置 2200力 供給される予測画像 peが加算されて (式 (8》、復号画像として復号 画像 MBメモリ 2330に格納される。復号画像 MBメモリ 2330に格納された復号画像 rec は、以降に、予測装置 2200ゃ復号画像フレームバッファ 4000に読み込まれて参照画 像となる。 rec 二 pred + pe _ rec
(8)
続いて、 EC装置 2400に供給される変換量子化値 Lに着目して、以降の動作を説明 する。
[0029] EC装置 2400は、エントロピー符号化装置 2410、出力バッファ 2420、制御装置 2430、
Context複製メモリ 2440で構成される。
[0030] エントロピー符号化装置 2410は、入力データをエントロピー符号ィ匕して、出力ビット を出力バッファ 2420に供給する。制御装置 2430は、エントロピー符号化装置 2410の 出力ビット数を監視して、他の装置の動作を制御する。 Context複製メモリ 2440は、後 述する Contextデータの複製を格納するメモリである。
[0031] 各装置の動作を説明する。
[0032] 制御装置 2430は、エントロピー符号化装置 2410の出力ビット数を監視し、制御信号 (エントロピー符号ィ匕制御信号、出力バッファ制御信号)を介して、エントロピー符号ィ匕 装置 2410および出力バッファ 2420を制御する。
[0033] 1MBすべての入力データをエントロピー符号化して、その出力ビット数が AVC規格 で定められる上限ビット数 (非特許文献 1 ISO/IEC 14496-10 Advanced Video Codin g Annex A A.3 Levelsを参照すると 3200bit))を超えなかった場合、制御装置 2430は 、出カノッファ制御信号によって出力バッファ 2420に格納されたビットを MBの符号ィ匕 データとして出力させる。なお、前記の規格で定められる 1MBあたりの上限ビット数を 単純に規定値と呼ぶ。
[0034] 一方、 1MBの入力データをエントロピー符号ィ匕した出力ビット数が規定値を超えた 瞬間に、制御装置 2430は、エントロピー符号ィ匕制御信号によってエントロピー符号ィ匕 装置 2410をー且停止させて、出力バッファ制御信号によって出力バッファ 2420のビッ トを全て廃棄する(つまり、この時点での出カノッファ 2420の中身を符号ィ匕データとし ない)。前記ビット廃棄の後、制御装置 2430は、エントロピー符号ィヒ制御信号によって エントロピー符号化装置 2410を起動させて、規定値以下のビット数となるように入力 画像データを再符号化させる。
[0035] 続いて、エントロピー符号ィ匕装置 2410の内部構成と動作を説明する。
[0036] 図 5を参照すると、エントロピー符号化装置 2410は、 2進化装置 24100、算術コーダ 2
4101、 Context Modeling装置 24102、スィッチ 24103SW、 24104SWで構成される。
[0037] 再符号化を行わな!/、場合と、再符号ィ匕を行う場合に分けて、エントロピー符号化装 置 2410の動作を説明する。
[0038] まず、再符号化を行わな!/ヽ場合を説明する。
[0039] エントロピー符号化装置 2410は、まず、以降の再符号化に対応するために、処理 対象 MBをエントロピー符号化する直前に、 Context Modeling装置 24102に格納され た Contextデータすベてを、 Context複製メモリ 2440に保存する。続いて、エントロピ 一符号ィ匕装置 2410は、スィッチ 24103SWを経由して予測装置 2200から供給される予 測パラメータ、および変換/量子化装置 2310から供給される変換量子化値を 2進化装 置 24100によって 2進数ィ匕し (以後、前記 2進化されたデータを以後、 binと呼ぶ)、算 術コーダ 24101に供給する。これと同時に、 Context Modeling装置 24102は、前記 bin に対応する Contextデータを算術コーダ 24101に供給する。算術コーダ 24101は、前 記 Contextデータを用 、て前記 binを算術符号化し、スィッチ 24104SWを経由して出 力ビットを出力バッファ 2420に書き出ながら、算術符号化で更新された Contextデー タを Context Modeling装置 24102に返す。
[0040] ここで、 AVCにおける Contextデータとは、エントロピー符号化されるシンボル (bin)ご との MPS(Most Probable SyMBol)の lbitと、 LPS(Least Probable SyMBol)の確率 pLPS の値を格納した確率テーブルのインデックス (State)の 6bitのデータである (詳細につ いては、非特許文献 1 ISO/IEC 14496-10 Advanced Video Codingの 9.3節 CABA C parsing process for slice dataを参照)。 Contextデータは、通常画像フレーム内の 先頭 MBなどで初期化されて、以降の算術符号ィ匕でその値が更新され続ける。
[0041] 続 、て、再符号化を行う場合を説明する。
[0042] エントロピー符号化装置 2410は、まず、入力データに対するエントロピー符号ィ匕の 処理をー且停止させる、続いて、 Context複製メモリ 2440に保存された Contextデータ を Context Modeling装置 24102に読み込む。その後、 2進化装置 24100は、 PCM(Puls e Code Modulation)の開始を示す予測パラメータの binを生成して、算術コーダ 24101 に供給する。これと同時に、 Context Modeling装置 24102は、前記 binに対応する Con textデータを算術コーダ 24101に供給する。算術コーダ 24101は、前記 Contextデータ を用いて前記 binを算術符号ィ匕し、スィッチ 24104SWを経由して出力ビットを出力バッ ファ 2420に書き出しながら、算術符号化で更新された Contextデータを Context Mode ling装置 24102に返す。前記 PCMの開始を示す予測パラメータの binを算術符号ィ匕し 終えた後に、 24104SWを切り換えて、原画像 MBメモリ 2110に格納された画像を読み 込んで PCMのまま再符号ィ匕して、出力バッファ 2420に書き出す。
[0043] 再符号化の処理として、前記の変換処理を適用して 、な 、原画像を PCMで再符号 化する処理を原画像 PCM再符号化と呼ぶ (例えば、特許文献 1 特開 2004-13521)。 前記、原画像 PCM再符号化を利用すれば、変換や予測が全く効力ゝない画像を無歪 みで、規定値以下の一定のビット数で符号ィ匕できるので、符号化装置のエントロピー 符号化装置だけでなぐ復号側のエントロピー復号化装置の処理時間をある一定時 間に保証できると言われて 、る。
[0044] 以上で、 EC装置 2400の動作説明を終わる。
[0045] 以上の説明した MB符号化を逐次実行することで、従来の画像符号化装置は、ビッ トストリームを生成する。
特許文献 1:特開 2004-13521号公報
非特許文献 1 : ISO/IEC 14496-10 Advanced Video Coding
発明の開示
発明が解決しょうとする課題
[0046] 前述した、 AVCなどの MB単位の画像符号化では、以下の図 6のように MB符号化 装置 2000内部の Read装置 2100、予測装置 2200、 Venc装置 2300、 EC装置 2400をパ ィプライン動作させることで、効率的な符号化処理ができる。なお、 AVCのようにフレ ーム内予測を利用する符号ィ匕では、隣接 MBの画素を参照して予測符号ィ匕するので 、隣接 MB間にも予測の依存関係(図 6の"→")がある。
[0047] ところで、エントロピー符号ィ匕 (EC)によって MBのビット数が規定値を超えた場合、そ のビット数を規定値以下にするために、再符号化処理として前記の原画像 PCM再符 号化を実行する。
[0048] しかしながら、パイプライン動作においては、直前 MB(MB(i_l》に対して原画像 PC M再符号化を要求した時点では、後続 MB(MB(0)に対する原画像の読み込みによつ て、直前 MBの原画像が原画像 MBメモリ 2110に存在しない。よって、パイプライン動 作では、直前 MBの原画像を原画像フレームバッファ 1000から原画像 MBメモリ 2100に 再度読み込まなければならな 、。
[0049] また、直前 MB(MB(i-l》が原画像 PCM再符号ィ匕されたことで、後続 MBの参照画像 が(直前 MBの復号画像を原画像に置き換えたことで)元の値と異なるので、上述した 予測の依存関係が崩れる。よって、パイプライン動作では、後続 MBの予測も再度実 行しなければならない。
[0050] これらの結果、従来方式の画像符号ィ匕装置をパイプライン動作させた場合、再符 号ィ匕が発生した瞬間に、図 7のパイプラインインストールが発生する。
[0051] 図 7のパイプラインストールが多発すると、画像フレーム全体の符号化が完了する 時間が、無視できないほど遅延 (以後、符号化遅延と呼ぶ)する。ゆえに、従来の符 号ィ匕装置を単純にパイプライン動作させた場合には、実時間で画像フレームの符号 化を完了させることを保証できない。
[0052] もちろん、 MB符号ィ匕装置 2000を複数備えれば、前記の符号ィ匕遅延を回避できるが 、符号ィ匕装置の回路規模が大きくなるといった別の課題がある。
[0053] また、前記原画像 PCM再符号ィ匕では、原画像 PCM再符号化によって原画像で再 構築された MBの周波数特性力 復号画像で再構築された周辺 MBと異なるために、 主観的な違和感を生じるといった画質上の問題もある。この問題は、 MB符号化装置 2000を複数備えるだけでは、回避できない。
[0054] そこで、本発明は、上記の課題に鑑みてみてなされたものであり、符号化装置の回 路規模を大きくすることなぐ再符号ィ匕による符号ィ匕遅延を一定の時間に保証するこ とが可能で、主観的にも高画質な画像符号化装置を提供することを目的とする。 課題を解決するための手段
[0055] 上記課題を解決する第 1の発明は、画像符号化装置であって、画像を周波数領域 に変換し量子化した変換量子化値をエントロピー符号ィ匕する際、エントロピー符号ィ匕 の出力符号ビット数が規定量を超えた場合、前記変換量子化値を再構築して得た画 像を、前記画像符号化装置の出力とすることを特徴とする。
[0056] 上記課題を解決する第 2の発明は、画像を周波数領域に変換し量子化した変換量 子化値をエントロピー符号ィ匕するエントロピー符号ィ匕手段と、画像を非エントロピー符 号ィ匕する非エントロピー符号ィ匕手段とを備える画像符号ィ匕装置であって、前記ェント 口ピー符号ィ匕の出力符号ビット数が規定量を超えた場合に、前記画像符号化装置の 出力が、前記変換量子化値を再構築して得た画像を前記非エントロピー符号化手段 が非エントロピー符号ィ匕して得た符号ィ匕データであることを特徴とする。
[0057] 上記課題を解決する第 3の発明は、入力画像フレームを画像ブロックに分割する手 段と、前記画像ブロックを予測する手段と、前記予測手段によって得られた予測誤差 画像ブロックを周波数領域に変換して量子化する変換量子化手段と、前記変換量子 化手段の出力データから復号画像を再構築する手段と、前記変換量子化手段の出 力データをエントロピー符号化する手段と、前記エントロピー符号化手段の出力ビッ トを監視する手段とを備える画像符号ィ匕装置であって、処理対象画像ブロックのェン トロピー符号ィ匕後の出力ビット数が規定量を超えた場合には、この出力ビットを処理 対象画像ブロックの符号化データとはせず、前記再構築手段の復号画像を符号ィ匕 データとして出力する再符号化手段を具備することを特徴とする。
[0058] 上記課題を解決する第 4の発明は、上記第 3の発明において、前記画像ブロックを 予測符号化するパラメータを検出する手段と、前記予測パラメータ検出手段の出力 データと量子化パラメータを利用して、処理対象画像ブロックのエントロピー符号ィ匕 後の出力ビット数を推定する手段と、前記推定出力ビット数が規定量を超える場合に は、前記再構築手段の復号画像を処理対象画像ブロックの符号化データとして出力 する手段とを具備することを特徴とする。
[0059] 上記課題を解決する第 5の発明は、入力画像フレームを画像ブロックに分割する手 段と、前記画像ブロックを予測する手段と、前記画像ブロックを予測符号化するパラメ ータを検出する手段と、前記予測パラメータ検出手段の出力データと量子化パラメ一 タを利用して、処理対象画像ブロックのエントロピー符号ィ匕後の出力ビット数を推定 する手段と、前記予測手段によって得られた予測誤差画像ブロックを周波数領域に 変換して量子化する変換量子化手段と、前記変換量子化手段の出力データから復 号画像を再構築する手段と、前記変換量子化手段の出力データをエントロピー符号 化する手段とを備える画像符号ィ匕装置であって、前記推定出力ビット数が規定量を 超える場合には、前記再構築手段の復号画像を処理対象画像ブロックの符号化デ ータとして出力する手段を具備することを特徴とする。
[0060] 上記課題を解決する第 6の発明は、上記第 4、 5の発明において、前記推定出力ビ ット数を利用して、処理対象画像ブロックのエントロピー符号ィ匕後の出力ビット数が規 定量以下となるように量子化パラメータを設定する手段を具備することを特徴とする。
[0061] 上記課題を解決する第 7の発明は、上記第 6の発明において、前記変換量子化手 段の出力データを利用して、処理対象画像ブロックのエントロピー符号化後の出力ビ ット数を推定する第 2のビット数推定手段と、前記第 2のビット数推定手段の推定出力 ビット数を利用して、処理対象画像ブロックのエントロピー符号化の出力ビット数が規 定量以下となるように、前記変換量子化手段の出力データを廃棄する手段とを具備 することを特徴とする。
[0062] 上記課題を解決する第 8の発明は、入力画像フレームを画像ブロックに分割する手 段と、前記画像ブロックを予測する手段と、前記予測手段によって得られた予測誤差 画像ブロックを周波数領域に変換して量子化する変換量子化手段と、前記変換量子 化手段の出力データから復号画像を再構築する手段と、前記変換量子化手段の出 力データをエントロピー符号ィ匕する手段とを備える画像符号ィ匕装置であって、前記変 換量子化手段の出力データを利用して、処理対象画像ブロックのエントロピー符号 化後の出力ビット数を推定するビット数推定手段と、前記ビット数推定手段の推定出 力ビット数を利用して、処理対象画像ブロックのエントロピー符号化の出力ビット数が 規定量以下となるように、前記変換量子化手段の出力データを廃棄する手段とを具 備することを特徴とする。
[0063] 上記課題を解決する第 9の発明は、画像符号ィ匕方法であって、画像を周波数領域 に変換し量子化した変換量子化値をエントロピー符号ィ匕する際に、エントロピー符号 化の出力符号ビット数が規定量を超えた場合、前記変換量子化値を再構築して得た 画像を符号化データとすることを特徴とする。 [0064] 上記課題を解決する第 10の発明は、画像符号ィ匕方法であって、画像を周波数領 域に変換し量子化した変換量子化値をエントロピー符号ィ匕する際に、エントロピー符 号化の出力符号ビット数が規定量を超えた場合、前記変換量子化値を再構築して得 た画像を非エントロピー符号化して符号化データとすることを特徴とする。
[0065] 上記課題を解決する第 11の発明は、画像符号ィ匕方法であって、入力画像フレーム を画像ブロックに分割する処理と、前記画像ブロックを予測する処理と、前記予測に よって得られた予測誤差画像ブロックを周波数領域に変換して量子化する処理と、 前記量子化されたデータから復号画像を再構築する処理と、前記量子化されたデー タをエントロピー符号化する処理と、処理対象画像ブロックのエントロピー符号化後の 出力ビット数が規定量を超えた場合には、出力ビットを処理対象画像ブロックの符号 化データとはせず、前記再構築された復号画像を符号化データとして出力する処理 とを具備することを特徴とする。
[0066] 上記課題を解決する第 12の発明は、上記第 11の発明において、前記画像ブロッ クを予測符号化する予測パラメータを検出する処理と、前記予測パラメータの出力デ ータと量子化パラメータとを利用して、処理対象画像ブロックのエントロピー符号化後 の出力ビット数を推定する処理と、前記推定出力ビット数が規定量を超える場合には 、再構築された復号画像を処理対象画像ブロックの符号化データとして出力する処 理とを具備することを特徴とする。
[0067] 上記課題を解決する第 13の発明は、画像符号ィ匕方法であって、入力画像フレーム を画像ブロックに分割する処理と、前記画像ブロックを予測する処理と、前記画像ブ ロックを予測符号化する予測パラメータを検出する処理と、前記予測パラメータと量 子化パラメータを利用して、処理対象画像ブロックのエントロピー符号ィ匕後の出力ビ ット数を推定する処理と、前記予測によって得られた予測誤差画像ブロックを周波数 領域に変換して量子化する処理と、前記量子化されたデータから復号画像を再構築 する処理と、前記量子化されたデータをエントロピー符号化する処理と、前記推定出 力ビット数が規定量を超える場合には、前記再構築された復号画像を処理対象画像 ブロックの符号化データとして出力する処理とを具備することを特徴とする。
[0068] 上記課題を解決する第 14の発明は、上記第 12、 13の発明において、前記推定出 力ビット数を利用して、処理対象画像ブロックのエントロピー符号化後の出力ビット数 が規定量以下となるように量子化パラメータを設定することを特徴とする。
[0069] 上記課題を解決する第 15の発明は、上記第 14の発明において、量子化されたデ ータを利用して、処理対象画像ブロックのエントロピー符号ィ匕後の出力ビット数を推 定する処理と、前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピ 一符号ィ匕の出力ビット数が規定量以下となるように、量子化処理の出力データを廃 棄する処理とを具備することを特徴とする。
[0070] 上記課題を解決する第 16の発明は、画像符号ィ匕方法であって、入力画像フレーム を画像ブロックに分割する処理と、前記画像ブロックを予測する処理と、前記予測に よって得られた予測誤差画像ブロックを周波数領域に変換して量子化する処理と、 前記量子化されたデータから復号画像を再構築する処理と、前記量子化されたデー タをエントロピー符号化する処理と、前記量子化されたデータを利用して、処理対象 画像ブロックのエントロピー符号化後の出力ビット数を推定する処理と、前記推定出 力ビット数を利用して、処理対象画像ブロックのエントロピー符号化の出力ビット数が 規定量以下となるように、量子化処理の出力データを廃棄する処理とを具備すること を特徴とする。
[0071] 上記課題を解決する第 17の発明は、画像符号ィ匕のプログラムであって、前記プロ グラムは、画像を周波数領域に変換し量子化した変換量子化値をエントロピー符号 化する際に、エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場合、前記変 換量子化値を再構築して得た画像を符号化データとする処理を、情報処理装置に 実行させることを特徴とする。
[0072] 上記課題を解決する第 18の発明は、画像符号ィ匕方法のプログラムであって、前記 プログラムは、画像を周波数領域に変換し量子化した変換量子化値をエントロピー 符号化する際に、エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場合、前 記変換量子化値を再構築して得た画像を非エントロピー符号化して符号ィ匕データと する処理を、情報処理装置に実行させることを特徴とする。
[0073] 上記課題を解決する第 19の発明は、画像符号ィ匕方法のプログラムであって、前記 プログラムは、入力画像フレームを画像ブロックに分割する処理と、前記画像ブロック を予測する処理と、前記予測によって得られた予測誤差画像ブロックを周波数領域 に変換して量子化する処理と、前記量子化されたデータから復号画像を再構築する 処理と、前記量子化されたデータをエントロピー符号化する処理と、処理対象画像ブ ロックのエントロピー符号ィ匕後の出力ビット数が規定量を超えた場合には、出力ビット を処理対象画像ブロックの符号化データとはせず、前記再構築された復号画像を符 号ィ匕データとして出力する処理とを情報処理装置に実行させることを特徴とする。
[0074] 上記課題を解決する第 20の発明は、上記第 19の発明において、前記プログラム は、前記画像ブロックを予測符号ィ匕する予測パラメータを検出する処理と、前記予測 ノ ラメータの出力データと量子化パラメータとを利用して、処理対象画像ブロックのェ ントロピー符号化後の出力ビット数を推定する処理と、前記推定出力ビット数が規定 量を超える場合には、再構築された復号画像を処理対象画像ブロックの符号化デー タとして出力する処理とを情報処理装置に実行させることを特徴とする。
[0075] 上記課題を解決する第 21の発明は、画像符号ィ匕方法のプログラムであって、前記 プログラムは、入力画像フレームを画像ブロックに分割する処理と、前記画像ブロック を予測する処理と、前記画像ブロックを予測符号化する予測パラメータを検出する処 理と、前記予測パラメータと量子化パラメータを利用して、処理対象画像ブロックのェ ントロピー符号化後の出力ビット数を推定する処理と、前記予測によって得られた予 測誤差画像ブロックを周波数領域に変換して量子化する処理と、前記量子化された データから復号画像を再構築する処理と、前記量子化されたデータをエントロピー符 号化する処理と、前記推定出力ビット数が規定量を超える場合には、前記再構築さ れた復号画像を処理対象画像ブロックの符号化データとして出力する処理とを情報 処理装置に実行させることを特徴とする。
[0076] 上記課題を解決する第 22の発明は、上記 20、 21の発明において、前記推定出力 ビット数を利用して、処理対象画像ブロックのエントロピー符号ィ匕後の出力ビット数が 規定量以下となるように量子化パラメータを設定することを特徴とする。
[0077] 上記課題を解決する第 23の発明は、上記第 22の発明において、前記プログラム は、量子化されたデータを利用して、処理対象画像ブロックのエントロピー符号化後 の出力ビット数を推定する処理と、前記推定出力ビット数を利用して、処理対象画像 ブロックのエントロピー符号ィ匕の出力ビット数が規定量以下となるように、量子化処理 の出力データを廃棄する処理とを情報処理装置に実行させることを特徴とする。
[0078] 上記課題を解決する第 24の発明は、画像符号ィ匕方法のプログラムであって、前記 プログラムは、入力画像フレームを画像ブロックに分割する処理と、前記画像ブロック を予測する処理と、前記予測によって得られた予測誤差画像ブロックを周波数領域 に変換して量子化する処理と、前記量子化されたデータから復号画像を再構築する 処理と、前記量子化されたデータをエントロピー符号化する処理と、前記量子化され たデータを利用して、処理対象画像ブロックのエントロピー符号化後の出力ビット数 を推定する処理と、前記推定出力ビット数を利用して、処理対象画像ブロックのェント 口ピー符号ィ匕の出力ビット数が規定量以下となるように、量子化処理の出力データを 廃棄する処理とを情報処理装置に実行させることを特徴とする。
発明の効果
[0079] 本発明の画像符号化装置では、 PCM再符号化において、変換および量子化が適 用された復号画像を用いる。この効果により、 PCM再符号化が発生しても、後続 MB の符号ィヒ処理をやり直す必要がなぐパイプラインストールによる符号ィヒ遅延を従来 よりも格段に短縮できる。
[0080] また、本発明の画像符号化装置では、 PCM符号ィ匕が発生しても、復号画像によつ て MBの画像が再構築されるので、周辺 MBとの周波数特性も同一となり、主観的な違 和感を生じる問題も原理的に生じな!/、。
[0081] さらには、処理対象 MBのエントロピー符号ィ匕後の出力ビット数をエントロピー符号 化の前に予測し、エントロピー符号ィ匕後の出力ビット数が規定値を変えないように符 号化することで、再符号ィ匕を完全に回避することができる。つまり、再符号化によるパ ィプラインストールが発生しないので、符号ィ匕遅延を一定の時間に保証することがで きる。
[0082] 以上の効果により、本発明は、再符号ィ匕のパイプラインストールによる符号ィ匕遅延 を一定の時間に保証することが可能で、なおかつ主観的にも高画質な画像符号ィ匕 装置を提供することができる。
図面の簡単な説明 [0083] [図 1]図 1は従来の画像符号化装置を示す図である。
[図 2]図 2は画像フレーム (4:2:0フォーマット)の構成を説明する為の図である。
[図 3]図 3はフレーム内予測の一例を示す図である。
[図 4]図 4はフレーム間予測の一例を示す図である。
[図 5]図 5はエントロピー符号ィ匕装置を示す図である。
[図 6]図 6はパイプラインによる符号ィ匕を説明する為の図である。
[図 7]図 7はパイプラインストールを説明する為の図である。
[図 8]図 8は第 1の実施の形態の画像符号ィ匕装置を説明する為の図である。
[図 9]図 9は第 1の実施の形態の EC装置動作フローチャートである。
[図 10]図 10は実施の形態のパイプライン動作を説明する為の図である。
[図 11]図 11は第 2の実施の形態の画像符号ィ匕装置を説明する為の図である。
[図 12]図 12は第 2の実施の形態の EC装置動作フローチャートである。
[図 13]図 13は本実施の形態におけるパイプラインの動作を説明する為の図である。
[図 14]図 14は第 3の実施の形態の画像符号ィ匕装置のブロック図である。
[図 15]図 15は第 3の実施の形態の EC装置動作フローチャートである。
[図 16]図 16は第 4の実施の形態の画像符号ィ匕装置のブロック図である。
[図 17]図 17は第 4の実施の形態のレート制御装置動作フローチャートである。
[図 18]図 18は第 5の実施の形態の画像符号ィ匕装置のブロック図である。
[図 19]図 19は Block bit推定装置の動作フローチャートである。
[図 20]図 20はスキャン位置を説明する為の図である。
[図 21]図 21はデータ変調装置の動作フローチャートである。
[図 22]図 22は第 5の実施の形態の画像符号ィ匕装置のブロック図である。
[図 23]図 23は情報処理装置の構成を示す図である。
符号の説明
[0084] 1000 原画像フレームバッファ
2000 MB符号化装置
3000 レート制御装置
4000 復号画像フレームバッファ 5000 スィッチ
発明を実施するための最良の形態
[0085] (1)第 1の実施の形態
本発明の第 1の実施の形態の画像符号ィ匕装置の構成を図 8に示す。
[0086] 図 1の従来の画像符号化装置と比較すると、発明の画像符号化装置は、制御装置 2430が供給するエントロピー符号ィ匕制御信号によって動作するスィッチ SW5000を備 える。また、発明の EC装置 2400 (エントロピー符号化装置 2410)は、図 1の原画像 MB メモリ 2110から供給される原画像の代わりに、復号画像 MBメモリ 2330、もしくは復号 画像フレームバッファ 4000から SW5000を経由して供給される復号画像を入力とする ため、従来の EC装置 2400と動作が異なる。
[0087] スィッチ SW5000は、制御装置 2430力 供給されるエントロピー符号ィ匕制御信号によ つて制御されており、エントロピー符号ィ匕制御信号力 復号画像の伝送を要求された とき、復号画像をエントロピー符号ィ匕装置 2410に供給する。具体的には、復号画像 M Bメモリ 2330に現在のエントロピー符号化対象 MBの復号画像が残って!/、れば、復号 画像 MBメモリ 2330に格納された復号画像をエントロピー符号ィ匕装置 2410に供給し、 復号画像 MBメモリ 2330に現在のエントロピー符号化対象 MBの復号画像が残ってい なければ、復号画像フレームバッファ 4000に格納された現在のエントロピー符号化対 象 MBの復号画像をエントロピー符号ィ匕装置 2410に供給する。
[0088] 発明の画像符号化装置における、その他の装置(原画像フレームバッファ 1000、 Re ad装置 2100、予測装置 2200、 Venc装置 2300、レート制御装置 3000、復号画像フレー ムバッファ 4000)は、図 1の従来と同一である。よって、以下では、発明の特徴部であ る EC装置 2400の動作について図 9のフローチャートを参照して説明する。
[0089] ステップ S10000では、以降の再符号化に対応するために、処理対象 MBをェントロ ピー符号化する直前に、 Context Modeling装置 24102に格納された現時点での Cont extデータすベてを、 Context複製メモリ 2440に保存する。
[0090] ステップ S10001では、スィッチ 24103SWを経由して入力される入力データを 2進化 装置 24100によって 2進数ィ匕し (binを生成し)、算術コーダ 24101に供給する。これと同 時に、 Context Modeling装置 24102は、 binに対応する Contextデータを算術コーダ 24 101に供給する。算術コーダ 24101は、 Contextデータを用いて binを算術符号ィ匕し、ス イッチ 24104SWを経由して出力ビットを出力バッファ 2420に書き出しながら、算術符 号化で更新された Contextデータを Context Modeling装置 24102に返す。入力データ に対応する全ての binを算術符号ィ匕した後、ステップ S10002に進む。
[0091] ステップ S10002では、 1MBすべての入力データのエントロピー符号化(算術符号化 )が完了したかを判断する。 1MBすべての入力データのエントロピー符号ィ匕が完了し た場合、処理を終了して、出力バッファ 2420に格納されたビットを MBのビットストリー ムとして出力する。エントロピー符号ィ匕が完了していない場合には、ステップ S10003 に進む。
[0092] ステップ S10003では、入力データをエントロピー符号化した現時点での出力ビット 数 bitが、規定値 MB_bit_th以下か否かを判断する。規定値 MB_bit_th以下であればス テツプ S10001に進み、以下でなければステップ S 10004に進む(なお、ステップ S10004 カゝら S10008は復号画像を PCMで再符号ィ匕する再符号ィ匕処理なので、以後、復号画 像 PCM再符号化と呼ぶ)。
[0093] ステップ S10004では、瞬時に、 Read装置 2100、予測装置 2200、 Venc装置 2300、ェ ントロピー符号ィ匕装置 2410を緊急停止させる(それぞれの装置の内部状態はそのま ま)。その後、ステップ S10005に進む。
[0094] ステップ S10005では、現時点での出力バッファ 2420の中身を符号化データとしない ように、出力バッファ 2420のビットを全て廃棄する。続いて、ステップ S10006に進む。
[0095] ステップ S10006では、以降のエントロピー符号化のために、 Context複製メモリ 2440 に保存された Contextデータを Context Modeling装置 24102に読み込む。続いて、ス テツプ S 10007に進む。
[0096] ステップ S10007では、 SW5000から供給される復号画像を PCMで再符号化する。ま ず、制御装置 2430は、エントロピー符号化装置 2410を起動させる。その後、 2進化装 置 24100は、 PCMの開始を示す予測パラメータの binを生成して、算術コーダ 24101に 供給する。これと同時に、 Context Modeling装置 24102は、前記の binに対応する Con textデータを算術コーダ 24101に供給する。算術コーダ 24101は、前記 Contextデータ を用いて binを算術符号ィ匕し、スィッチ 24104SWを経由して出力ビットを出力バッファ 2 420に書き出しながら、算術符号化で更新された Contextデータを Context Modeling 装置 24102に返す。その後、 24104SWを切り換えて、 SW5000から供給される復号画 像を読み込んで、復号画像を PCMのまま再符号化して、出力バッファ 2420に書き出 す。前記復号画像は、変換/量子化装置 2310で変換および量子化された出力データ 力も再構築した画像である。続いて、ステップ S10008に進む。
[0097] ステップ S10008では、 Read装置 2100、予測装置 2200、 Venc装置 2300の緊急停止を 解除する。その後、 ECを終了し、出力バッファ 2420に格納されたビットを MBのビットス トリームとして出力する。
[0098] 以上で、発明の特徴部である EC装置 2400の動作説明を終了する。
[0099] 本発明の画像符号化装置では、 PCM再符号ィ匕において、原画像ではなぐ変換お よび量子化が適用された復号画像を用いる。この効果により、従来の画像符号化装 置で必要であった、原画像の再読み込みは不要となる。さら〖こは、 PCM再符号化〖こ 後続する MBの参照画像も PCM再符号ィ匕前と完全一致するので、前記後続 MBで予 測をやり直す必要もない。これらの結果、発明の画像符号化装置では、 PCM再符号 化が発生しても、パイプラインストールによる符号ィ匕遅延が、従来よりも格段に短くな る(図 10)。その上、本発明の PCM符号ィ匕では復号画像によって MBの画像が再構 築されるので、周辺 MBとの周波数特性も同一となり、主観的な違和感を生じる問題も 原理的に生じない。
[0100] また、発明の画像符号化装置では、 MB符号ィ匕装置 2000の数も 1個のままであり、ス イッチ SW5000はほとんど回路規模に影響を与えない。
[0101] 以上の説明から、本発明によって、画像符号ィ匕装置の回路規模を大きくすることな ぐ再符号化による符号化遅延を格段に短縮し、なおかつ主観的にも高画質な画像 符号ィ匕装置を提供することができる。
(2)第 2の実施の形態
処理対象 MBに対するエントロピー符号ィ匕後のビット数をエントロピー符号ィ匕の前に 推定し、推定したビット数が規定値を超そうな場合、後述する復号画像 PCM符号化を 処理対象 MBに適用することで、符号化遅延をさらに短縮する発明の第 2実施形態の 画像符号化装置の構成を図 11に示す。 [0102] 図 8の本発明の第 1の実施形態の画像符号化装置と比較すると、本発明の第 2の 実施形態の画像符号化装置は、 MB bit推定装置 2450を備える。また、発明の EC装 置 2400 (エントロピー符号化装置 2410)は、 MB bit推定装置 2450力 供給される推定 ビット数を入力とするため、発明の第 1実施形態の EC装置 2400と動作が異なる。
[0103] MB bit推定装置 2450は、レート制御装置 3000から供給される量子化パラメータ QP と、予測装置 2200力 供給される式 (3)の予測評価値 Costから、式 (9)によって処理対 象 MBのエントロピー符号化後の出力ビット数 MB_est_bitを推定する。
MB _ est _ bit = a x 3S4 x H(QP, Cost) (9)
H{QP, Cost) = -P0 log2 P0 + be +
Figure imgf000022_0001
/(1 - b) - f) log2 e - be log2 (1 - b)
Figure imgf000022_0002
Figure imgf000022_0003
Figure imgf000022_0004
(13)
Figure imgf000023_0001
Figure imgf000023_0002
PQ = \一 be (16) 式 (9)は、文献 (蝶野他、 " H.264の量子化特性に関する一検討," FIT 2004, J-062,
2004)力も導出した関数である。ただし、 αは 0より大きい 1以下の数、 |8は 1以上の数
、 fは 0より大きい 1未満の数である。
[0104] 本発明の第 2実施の形態の画像符号化装置における、 EC装置 2400以外の装置は
、図 8の発明の第 1の実施形態と同一である。よって、以下では、発明の特徴部であ る EC装置 2400の動作について図 12のフローチャートを参照して説明する。
[0105] ステップ S20000では、推定ビット数 MB_est_bitが規定値 MB_bit_th以下か否かを判断 する。以下であれば、ステップ S10000。以下でなければ、ステップ S20001に進む。
[0106] 以降に記述するステップ S10000からステップ S10008は、発明の第 1実施形態と同一 であるが、再度記述する。
[0107] ステップ S10000では、以降の再符号化に対応するために、処理対象 MBをェントロ ピー符号化する直前に、 Context Modeling装置 24102に格納された現時点での Cont extデータすベてを、 Context複製メモリ 2440に保存する。
[0108] ステップ S10001では、スィッチ 24103SWを経由して入力される入力データを 2進化 装置 24100によって 2進数ィ匕し (binを生成し)、算術コーダ 24101に供給する。これと同 時に、 Context Modeling装置 24102は、 binに対応する Contextデータを算術コーダ 24 101に供給する。算術コーダ 24101は、 Contextデータを用いて binを算術符号ィ匕し、ス イッチ 24104SWを経由して出力ビットを出力バッファ 2420に書き出しながら、算術符 号化で更新された Contextデータを Context Modeling装置 24102に返す。入力データ に対応する全ての binを算術符号ィ匕した後、ステップ S10002に進む。
[0109] ステップ S10002では、 1MBすべての入力データのエントロピー符号化(算術符号化 )が完了したかを判断する。 1MBすべての入力データのエントロピー符号ィ匕が完了し た場合、処理を終了して、出力バッファ 2420に格納されたビットを MBのビットストリー ムとして出力する。エントロピー符号ィ匕が完了していない場合には、ステップ S10003 に進む。
[0110] ステップ S10003では、入力データをエントロピー符号化した現時点での出力ビット 数 bitが、規定値 MB_bit_th以下か否かを判断する。規定値 MB_bit_th以下であればス テツプ S10001に進み、以下でなければステップ S 10004に進む(なお、ステップ S10004 カゝら S10008は復号画像を PCMで再符号ィ匕する再符号ィ匕処理なので、以後、復号画 像 PCM再符号化と呼ぶ)。
[0111] ステップ S10004では、瞬時に、 Read装置 2100、予測装置 2200、 Venc装置 2300、ェ ントロピー符号ィ匕装置 2410を緊急停止させる(それぞれの装置の内部状態はそのま ま)。その後、ステップ S10005に進む。
[0112] ステップ S10005では、現時点での出力バッファ 2420の中身を符号化データとしない ように、出力バッファ 2420のビットを全て廃棄する。続いて、ステップ S10006に進む。
[0113] ステップ S10006では、以降のエントロピー符号化のために、 Context複製メモリ 2440 に保存された Contextデータを Context Modeling装置 24102に読み込む。続いて、ス テツプ S 10007に進む。
[0114] ステップ S10007では、 SW5000から供給される復号画像を PCMで再符号化する。ま ず、制御装置 2430は、エントロピー符号化装置 2410を起動させる。その後、 2進化装 置 24100は、 PCMの開始を示す予測パラメータの binを生成して、算術コーダ 24101に 供給する。これと同時に、 Context Modeling装置 24102は、前記の binに対応する Con textデータを算術コーダ 24101に供給する。算術コーダ 24101は、前記 Contextデータ を用いて binを算術符号ィ匕し、スィッチ 24104SWを経由して出力ビットを出力バッファ 2 420に書き出しながら、算術符号化で更新された Contextデータを Context Modeling 装置 24102に返す。その後、 24104SWを切り換えて、 SW5000から供給される復号画 像を読み込んで、復号画像を PCMのまま再符号化して、出力バッファ 2420に書き出 す。前記復号画像は、変換/量子化装置 2310で変換および量子化された出力データ 力も再構築した画像である。続いて、ステップ S10008に進む。
[0115] ステップ S10008では、 Read装置 2100、予測装置 2200、 Venc装置 2300の緊急停止を 解除する。その後、 ECを終了し、出力バッファ 2420に格納されたビットを MBのビットス トリームとして出力する。
[0116] ステップ S20001では、 SW5000から供給される復号画像を PCMで符号化する(再符 号ィ匕とはならないので、復号画像 PCM符号ィ匕と呼ぶ)。まず、 2進化装置 24100は、 P CMの開始を示す予測パラメータの binを生成して、算術コーダ 24101に供給する。こ れと同時に、 Context Modeling装置 24102は、前記の binに対応する Contextデータを 算術コーダ 24101に供給する。算術コーダ 24101は、前記 Contextデータを用いて bin を算術符号化し、スィッチ 24104SWを経由して出力ビットを出力バッファ 2420に書き 出しながら、算術符号化で更新された Contextデータを Context Modeling装置 24102 に返す。その後、 24104SWを切り換えて、 SW5000から供給される復号画像を読み込 んで、復号画像を PCMのまま再符号ィ匕して、出力バッファ 2420に書き出す。前記復 号画像は、変換/量子化装置 2310で変換および量子化された出力データ力 再構 築した画像である。その後、 ECを終了し、出力バッファ 2420に格納されたビットを MB のビットストリームとして出力する。
[0117] 以上で、本実施形態における EC装置 2400の動作説明を終了する。
[0118] 本実施形態の画像符号化装置では、処理対象 MBに対するエントロピー符号化後 のビット数をエントロピー符号ィ匕の前に推定し、推定ビット数が規定値を超えそうな場 合、エントロピー符号ィ匕後のビット数が必ず規定値以下となることを保証できる復号 画像 PCM符号化を処理対象 MBに適用する。この結果、再符号化が原理的に発生し ないので、本実施形態の画像符号ィ匕装置は、符号ィ匕遅延をさらに短縮できる(図 13
) o
[0119] また、式 (9)のパラメータ aを符号ィ匕対象フレームのエンコードの残り時間に応じて 、例えば、残り時間が短ければ OCを小さく (0に近づける)、そうでなければ OCを大きく(
1に近づける)することで、符号ィ匕遅延を一定時間に収まるように制御できることは言う までもない。
(3)第 3の実施の形態
上述した第 2の実施形態の画像符号化装置において、式 (9)のパラメータ αを小さ く設定して規定値 MB_bit_thに対して十分なマージン見込んだ推定ビット数 MB_est_bit を設定すれば、エントロピー符号ィ匕の出力ビット数が規定値 MB_bit_thを決して超えな い。つまり、再符号ィ匕は不要となる。
[0120] この場合、再符号化が不要になる分、図 11の Context複製メモリ 2440は不要となり、 エントロピー符号ィ匕の出力ビット数を監視する必要もない。この結果、画像符号化装 置をよりシンプルに構成できる(図 14)。
[0121] この構成の場合での、 EC装置 2400の動作を図 15を参照して説明する。
[0122] ステップ S20000では、推定ビット数 MB_est_bitが規定値 MB_bit_th以下か否かを判断 する。以下であれば、ステップ S10000。以下でなければ、ステップ S20001に進む。
[0123] ステップ S10001では、スィッチ 24103SWを経由して入力される入力データを 2進化 装置 24100によって 2進数ィ匕し (binを生成し)、算術コーダ 24101に供給する。これと同 時に、 Context Modeling装置 24102は、 binに対応する Contextデータを算術コーダ 24 101に供給する。算術コーダ 24101は、 Contextデータを用いて binを算術符号ィ匕し、ス イッチ 24104SWを経由して出力ビットを出力バッファ 2420に書き出しながら、算術符 号化で更新された Contextデータを Context Modeling装置 24102に返す。入力データ に対応する全ての binを算術符号ィ匕した後、ステップ S10002に進む。
[0124] ステップ S10002では、 1MBすべての入力データのエントロピー符号化(算術符号化 )が完了したかを判断する。 1MBすべての入力データのエントロピー符号ィ匕が完了し た場合、処理を終了して、出力バッファ 2420に格納されたビットを MBのビットストリー ムとして出力する。エントロピー符号ィ匕が完了していない場合には、ステップ S10001 に進む。
[0125] ステップ S20001では、 SW5000から供給される復号画像を PCMで符号化する(再符 号ィ匕とはならないので、復号画像 PCM符号ィ匕と呼ぶ)。まず、 2進化装置 24100は、 P CMの開始を示す予測パラメータの binを生成して、算術コーダ 24101に供給する。こ れと同時に、 Context Modeling装置 24102は、前記の binに対応する Contextデータを 算術コーダ 24101に供給する。算術コーダ 24101は、前記 Contextデータを用いて bin を算術符号化し、スィッチ 24104SWを経由して出力ビットを出力バッファ 2420に書き 出しながら、算術符号化で更新された Contextデータを Context Modeling装置 24102 に返す。その後、 24104SWを切り換えて、 SW5000から供給される復号画像を読み込 んで、復号画像を PCMのまま再符号ィ匕して、出力バッファ 2420に書き出す。前記復 号画像は、変換/量子化装置 2310で変換および量子化された出力データ力 再構 築した画像である。その後、 ECを終了し、出力バッファ 2420に格納されたビットを MB のビットストリームとして出力する。
[0126] 以上で、本実施形態における EC装置 2400の動作説明を終了する。
[0127] 本実施形態の画像符号化装置においては、再符号化は不要となる。この結果、発 明の第 2実施形態の画像符号ィ匕装置で必要であった Context複製メモリ 2440や、ェン トロピー符号ィ匕の出力ビット数を監視する手段も必要もない。この結果、本実施形態 の画像符号化装置は、従来よりもさらに回路構成をシンプルにできるメリットがある。 (4)第 4の実施の形態
上述した第 3の実施の形態の画像符号化装置では、レート制御装置 3000の想定以 上のビット数が PCM符号ィ匕によって発生した場合に、以降の MBに割り当てる符号量 が減少し、以降に符号ィ匕する MBの画質が低下する可能性がある。そこで、前記の画 質低下を防ぐことが可能な、発明の第 4の実施の形態の画像符号ィ匕装置の構成を図 16に示す。
[0128] 図 14の発明の第 3実施の形態の画像符号化装置と比較すると、発明の第 4実施の 形態の画像符号化装置は、レート制御装置 3000に MB bit推定装置 2450から推定ビ ット数が供給される。このため、レート制御装置 3000と動作が従来と異なる。
[0129] レート制御装置 3000は、 MB符号ィ匕装置 2000のビットストリームの出力ビット数だけ でなぐ MB bit推定装置 2450から供給される推定ビット数も利用して、量子化パラメ一 タを変更する。
[0130] MB bit推定装置 2450は、前記変更された量子化パラメータを利用して推定ビット数 を式 (9)で再計算して、再計算した推定ビット数を制御装置 2430に供給する。
[0131] レート制御装置 3000以外の装置は、図 14の発明の第 3の実施の形態と同一である 。よって、以下では、発明の特徴部であるレート制御装置 3000の動作について図 17 のフローチャートを参照して説明する。
[0132] ステップ S30000では、式 (17)によって処理対象 MBに対する量子化パラメータ QPを 計算する。
Figure imgf000028_0001
react = 2 x Bitrate I Framerate
. , . target pic bit 7 ,
av = cur _pic bit ―—— x mo number (19)
一 pic— mb— size
ここで、 qp_picは符号ィ匕対象フレームに対する量子化パラメータ、 Bitrateは目標の ビットレート、 Framerateは画像のフレームレート、 cur_pic_bitは符号化対象フレームを 符号ィ匕した現時点での発生ビット数、 target_pi bitは符号ィ匕対象フレームの目標符 号量、 pic_MB_sizeは符号化対象フレームに含まれる MBの数、 MB_nuMBerは符号化 対象フレーム内で今まで符号ィ匕した MBの個数である。
[0133] 続いて、ステップ S30001に進む。
[0134] ステップ S30001では、ステップ S30000で計算した量子化パラメータ qpに対する推定 ビット数 MB_est_bitが規定値 MB_bit_thを超えるか否か(条件 1)、 MBの最大割り当てビ ット数 MB_tar_max_bit (式 (20)、 yは 1以上の数)が規定値 MB_bit_th未満か否力 (条件 2)を判断する。前記条件 1と条件 2が成立した場合は、ステップ S300002に進み、成 立しなかった場合はステップ S30000で計算した量子化パラメータ qpを変換/量子化装 置 2310に供給する。
1 target pic bit
MB—tar max bit = γ χ 二—— (20)
— ― ~ pic— mb size
ステップ S30002では、式 (21)によって、ステップ S3000の量子化パラメータ qpを更新し 、更新した量子化パラメータ qpを変換/量子化装置 2310に供給する。
qp - msix(qp, qp _ th) (21 ) ここで、 qp _thは、 MB_tar_max_bit以下を満たす式 (9)の MB_est_bitに対応する量子化 パラメータ QPの最小値である。
[0135] 以上で、本実施形態におけるレート制御装置 3000の動作説明を終了する。
[0136] 本実施形態の画像符号化装置では、式 (9)から処理対象 MBに対するエントロピー 符号ィ匕後のビット数を推定し、レート制御装置 3000の想定以上のビット数が PCM符号 化によって発生しないように制御できる。この結果、 PCM符号ィ匕が突然発生して、以 降の MBに割り当てる符号量が減少し、以降に符号化する MBの画質が低下してしま う課題を解決できる。
(5)第 5の実施の形態
上述した発明の第 4の実施の形態の画像符号化装置において、レート制御装置 30 00が推定ビット数を利用して量子化パラメータを制御しても、エントロピー符号ィ匕後の 出力ビット数を完全に規定値以下にできない場合がある。これに対処可能な、発明 の第 5の実施の形態の画像符号化装置の構成を図 18に示す。
[0137] 図 16の第 4の実施の形態の画像符号化装置と比較すると、第 5の実施の形態の画 像符号化装置は、 Block bit推定装置 2340、データ変調装置 2350を備える。ただし、 B lock bit推定装置 2340およびデータ変調装置 2350以外の装置は、図 16の発明の第 4の実施の形態のと同一である(ただし、後述する Block bit推定装置 2340およびデー タ変調装置 2350の機能により、エントロピー符号ィ匕後の出力ビット数は必ず規定値 M B_bit_th以下となるので、 MB bit推定装置 2450は、規定値 MB_bit_th以下となる値の推 定ビット数 MB_est_bitを制御装置 2430に供給するものとする)。よって、以下では、発 明の特徴部である Block bit推定装置 2340およびデータ変調装置 2350につ 、て説明 する。
[0138] Block bit推定装置 2340は、変換/量子化装置 2310から供給される変換量子化値 L を監視し、変換ブロックのエントロピー符号ィ匕後の出力ビット数を推定する(以後、前 記推定されたビット数をブロック推定ビット数 block_est_bitと呼ぶ)。前記ブロック推定 ビット数 block_est_ bitを利用して、変換量子化値 Lの廃棄位置 (disp_scan_pos)を検出 する。
[0139] データ変調装置 2350は、 Block bit推定装置 2340から供給される変換量子化値しの 廃棄位置 (disp_SCan_p0S)に従って、変換/量子化装置 2310力も供給される変換量子 化値 Lに後述する廃棄処理を適用し、廃棄処理を適用した変換量子化値 Lを逆量子 化/逆変換装置 2320およびエントロピー符号化装置 2410に供給する。
[0140] まず、発明の動作説明のために変換量子化値 Lを説明する。
[0141] AVCにおける変換/量子化装置 2230は、予測装置 2200から供給される予測誤差 pe を、 MBよりも細かい 4x4ブロックの単位(変換ブロック)で、以下の式 (22)によって周波 数変換し、変換係数 Tと計算する。ただし、 idxは図 2の MB内部での 4x4ブロックの番 号である。
Figure imgf000030_0001
さらに、変換係数 Τは、レート制御装置 3000力 供給される量子化パラメータ QPを用 いて式 (23)で量子化し、変換量子化値 Lを得る。 (idx)xy = (T(idx)xy x Q(qp%6, x, y) + f(T(idx)xy ) x 2(15 6) ) / 2 (1 5 " 6) (23) M, 0,m (x, ) = {(0,0),(0,2),(2,0),(2,2)}
Q(m,x,y) = M
Figure imgf000031_0001
= {(l,l),(l,3),(3,l),(3,3)} (24)
Mつ else
13107 5243 8066
11916 4660 7490
10082 4194 6554
M = (25)
9362 3647 5825
8192 3355 5243
7282 2893 4559
Figure imgf000031_0002
ここで、式 (26)の fintraは 0以上 1未満の数、 finterは 0以上 1未満の数である。 以上で、変換量子化値 Lの説明を終了する。
[0142] 図 19のフローチャートを参照して、 Block bit推定装置 2340の動作を説明する。
[0143] まず、 block bit推定処理に先立って、ブロック推定ビット数 block_est_bit=0、スキャン 位置 scan_pos=-l ,変換量子化値 Lの廃棄開始位置を示すスキャン位置 disp_scan_pos =-1とする。ここでスキャン位置とは、図 20に示す変換ブロック内での変換量子化値 のエントロピー符号ィ匕順序である。
[0144] ステップ S40000では、 scan_posを 1インクリメントする。
[0145] ステップ S40001では、 scan_posに対応する変換量子化値 L(idx) から、式 (27)によつ て block_est_bitを更新する。 block _est bit =
(27) block_est_ bit + lev _ bin{abs(L(idx) )) + last― bin{L{idx) , scan
1 .. . if(L == 0)
lev _ bin{L) = L + 2 ... else if (L < 15) (28)
2 x int(log 2 (L - 14)) + 16 otherwise
0 ... if(L == 0 or pos == 15)
last oiniL. pos) = (29)
otherwise
x - pos x(scan pos) (30)
y - pos— y scan一 pos (31 )
ただし、 abs(x)は xの絶対値を返す関数、 int(x)は Xの最も近い整数に切り捨てる関数 、 pos_x(scan_pos)は図 20のスキャン位置 scan_posに対応するブロック内の X座標を返 す関数、 pos_y(scan_pos)は図 20のスキャン位置 scan_posに対応するブロック内の y座 標を返す関数とする。なお、式 (29)の処理は、変換量子化値 Lを、エントロピー符号ィ匕 装置で 2進数ィ匕した際の bin数を計算することを意味する。
ステップ S40002では、 block_est_bit力 式 (32)の変換ブロック上限ビット数 block_bit_t hを超えるカゝ否カゝ判断する。 block Dit—th = a x (MB bit—tn― header bit {par am ) ) /block num ここで、 ocは 0より大きい 1以下の数、 header_bit(param)は予測装置 2000が供給する予 測パラメータ paramをエントロピー符号化した際のビット数を返す関数、 block_numは 1 MBに含まれる変換ブロックの個数で AVCでは block_num =24である。
[0147] block_est_bit力 block_bit_thを超えなかった場合にはステップ S40003に進み、超え た場合にはステップ S40004に進む。
[0148] S40003では、スキャンが終了(scan_pos=15)か否かを判断する。スキャンが終了であ れば処理を終了し、終了でなければステップ S40000に進む。
[0149] S40004では、 disp_scan_pos=scan_posとして、処理を終了する。
[0150] 以上で、 Block bit推定装置 2340の動作説明を終了する。
[0151] 続いて、図 21のフローチャートを参照して、データ変調装置 2350の動作を説明する
[0152] ステップ S50000では、 Block bit推定装置 2340から供給される廃棄位置 disp_scan_po sから、変換量子化値の廃棄を行うか否かを判断する。 disp_scan_posが- 1であれば、 廃棄せずに処理を終了する(変換量子化値 Lの値は不変)。一方、 disp_scan_posが- 1 でなければステップ S50001に進む。
[0153] ステップ S50001では、式 (33)によって変換量子化値の廃棄を行う。
Figure imgf000033_0001
ここで、 s_pos(x,y)は図 20の 4x4ブロック内の座標 (x,y)に対応するスキャン位置を返す 関数である。
[0154] 以上で、データ変調装置 2350の動作説明を終了する。
[0155] 上述した変換量子化値の廃棄によって、 1変換ブロックあたりのエントロピー符号ィ匕 の出力ビット数を block_bit_th (式 (32))以下に出来る。この結果、 1MBあたりのェントロ ピー符号ィ匕の出力ビット数も、必ず規定値 MB_bit_th以下となる。
[0156] 以上の作用により、本実施形態の画像符号化装置では、レート制御装置 3000が如 何なる量子化パラメータを設定しても、エントロピー符号ィ匕後の出力ビット数を完全に 規定値 MB_bit_th以下にできる。
[0157] なお、本実施形態では、レート制御装置 3000が如何なる量子化パラメータを設定し ても、エントロピー符号ィ匕後の出力ビット数を完全に規定値 MB_bit_th以下となるので 、実質的に復号画像 PCM符号ィ匕を行う必要がない。すなわち、図 18の構成から復号 画像 PCM符号ィ匕の機能を省略して、図 22のように画像符号ィ匕装置を構成できる。こ の構成の場合、画像符号ィ匕装置の回路規模をより小さくできるメリットがある。
(6)第 6の実施の形態
さらには上述した実施の形態においては、上述した説明からも明らかなように、ハー ドウエアで構成することも可能である力 コンピュータプログラムにより実現することも 可能である。
図 23に示す情報処理システムは、プロセッサ A1001,プログラムメモリ A1002,記憶 媒体 A1003および A1004からなる。記憶媒体 A1003および A1004は、別個の記憶媒体 であってもよいし、同一の記憶媒体力もなる記憶領域であってもよい。記憶媒体とし ては、ハードディスク等の磁気記憶媒体を用いることができる。

Claims

請求の範囲
[1] 画像符号化装置であって、
画像を周波数領域に変換し量子化した変換量子化値をエントロピー符号ィ匕する際 、エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場合、前記変換量子化 値を再構築して得た画像を、前記画像符号化装置の出力とすることを特徴とする画 像符号化装置。
[2] 画像を周波数領域に変換し量子化した変換量子化値をエントロピー符号ィ匕するェ ントロピー符号ィ匕手段と、画像を非エントロピー符号ィ匕する非エントロピー符号ィ匕手 段とを備える画像符号化装置であって、
前記エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場合に、前記画像 符号化装置の出力が、前記変換量子化値を再構築して得た画像を前記非エントロピ 一符号ィ匕手段が非エントロピー符号ィ匕して得た符号ィ匕データであることを特徴とする 画像符号化装置。
[3] 入力画像フレームを画像ブロックに分割する手段と、前記画像ブロックを予測する 手段と、前記予測手段によって得られた予測誤差画像ブロックを周波数領域に変換 して量子化する変換量子化手段と、前記変換量子化手段の出力データから復号画 像を再構築する手段と、前記変換量子化手段の出力データをエントロピー符号化す る手段と、前記エントロピー符号ィ匕手段の出力ビットを監視する手段とを備える画像 符号化装置であって、
処理対象画像ブロックのエントロピー符号ィ匕後の出力ビット数が規定量を超えた場 合には、この出力ビットを処理対象画像ブロックの符号化データとはせず、前記再構 築手段の復号画像を符号化データとして出力する再符号化手段を具備することを特 徴とする画像符号化装置。
[4] 前記画像ブロックを予測符号ィ匕するパラメータを検出する手段と、
前記予測パラメータ検出手段の出力データと量子化パラメータを利用して、処理対 象画像ブロックのエントロピー符号ィ匕後の出力ビット数を推定する手段と、
前記推定出力ビット数が規定量を超える場合には、前記再構築手段の復号画像を 処理対象画像ブロックの符号化データとして出力する手段と を具備することを特徴とする請求項 3に記載の画像符号化装置。
[5] 入力画像フレームを画像ブロックに分割する手段と、前記画像ブロックを予測する 手段と、前記画像ブロックを予測符号化するパラメータを検出する手段と、前記予測 ノ メータ検出手段の出力データと量子化パラメータを利用して、処理対象画像プロ ックのエントロピー符号化後の出力ビット数を推定する手段と、前記予測手段によつ て得られた予測誤差画像ブロックを周波数領域に変換して量子化する変換量子化 手段と、前記変換量子化手段の出力データから復号画像を再構築する手段と、前記 変換量子化手段の出力データをエントロピー符号ィ匕する手段とを備える画像符号ィ匕 装置であって、
前記推定出力ビット数が規定量を超える場合には、前記再構築手段の復号画像を 処理対象画像ブロックの符号化データとして出力する手段を具備することを特徴とす る画像符号化装置。
[6] 前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピー符号化後 の出力ビット数が規定量以下となるように量子化パラメータを設定する手段を具備す ることを特徴とする請求項 4又は請求項 5に記載の画像符号ィ匕装置。
[7] 前記変換量子化手段の出力データを利用して、処理対象画像ブロックのエントロピ 一符号化後の出力ビット数を推定する第 2のビット数推定手段と、
前記第 2のビット数推定手段の推定出力ビット数を利用して、処理対象画像ブロック のエントロピー符号ィ匕の出力ビット数が規定量以下となるように、前記変換量子化手 段の出力データを廃棄する手段と
を具備することを特徴とする請求項 6に記載の画像符号化装置。
[8] 入力画像フレームを画像ブロックに分割する手段と、前記画像ブロックを予測する 手段と、前記予測手段によって得られた予測誤差画像ブロックを周波数領域に変換 して量子化する変換量子化手段と、前記変換量子化手段の出力データから復号画 像を再構築する手段と、前記変換量子化手段の出力データをエントロピー符号化す る手段とを備える画像符号化装置であって、
前記変換量子化手段の出力データを利用して、処理対象画像ブロックのエントロピ 一符号ィ匕後の出力ビット数を推定するビット数推定手段と、 前記ビット数推定手段の推定出力ビット数を利用して、処理対象画像ブロックのェ ントロピー符号ィ匕の出力ビット数が規定量以下となるように、前記変換量子化手段の 出力データを廃棄する手段と
を具備することを特徴とする画像符号化装置。
[9] 画像符号化方法であって、
画像を周波数領域に変換し量子化した変換量子化値をエントロピー符号ィ匕する際 に、エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場合、前記変換量子 化値を再構築して得た画像を符号化データとすることを特徴とする画像符号化方法
[10] 画像符号化方法であって、
画像を周波数領域に変換し量子化した変換量子化値をエントロピー符号ィ匕する際 に、エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場合、前記変換量子 化値を再構築して得た画像を非エントロピー符号化して符号化データとすることを特 徴とする画像符号化方法。
[11] 入力画像フレームを画像ブロックに分割する処理と、
前記画像ブロックを予測する処理と、
前記予測によって得られた予測誤差画像ブロックを周波数領域に変換して量子化 する処理と、
前記量子化されたデータから復号画像を再構築する処理と、
前記量子化されたデータをエントロピー符号化する処理と、
処理対象画像ブロックのエントロピー符号ィ匕後の出力ビット数が規定量を超えた場 合には、出力ビットを処理対象画像ブロックの符号化データとはせず、前記再構築さ れた復号画像を符号化データとして出力する処理と
を具備することを特徴とする画像符号化方法。
[12] 前記画像ブロックを予測符号ィヒする予測パラメータを検出する処理と、
前記予測パラメータの出力データと量子化パラメータとを利用して、処理対象画像 ブロックのエントロピー符号ィ匕後の出力ビット数を推定する処理と、
前記推定出力ビット数が規定量を超える場合には、再構築された復号画像を処理 対象画像ブロックの符号化データとして出力する処理と
を具備することを特徴とする請求項 11に記載の画像符号化方法。
[13] 入力画像フレームを画像ブロックに分割する処理と、
前記画像ブロックを予測する処理と、
前記画像ブロックを予測符号ィヒする予測パラメータを検出する処理と、 前記予測パラメータと量子化パラメータを利用して、処理対象画像ブロックのェント 口ピー符号ィ匕後の出力ビット数を推定する処理と、
前記予測によって得られた予測誤差画像ブロックを周波数領域に変換して量子化 する処理と、
前記量子化されたデータから復号画像を再構築する処理と、
前記量子化されたデータをエントロピー符号化する処理と、
前記推定出力ビット数が規定量を超える場合には、前記再構築された復号画像を 処理対象画像ブロックの符号化データとして出力する処理と
を具備することを特徴とする画像符号化方法。
[14] 前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピー符号化後 の出力ビット数が規定量以下となるように量子化パラメータを設定することを特徴とす る請求項 12又は請求項 13に記載の画像符号ィ匕方法。
[15] 量子化されたデータを利用して、処理対象画像ブロックのエントロピー符号化後の 出力ビット数を推定する処理と、
前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピー符号化の 出力ビット数が規定量以下となるように、量子化処理の出力データを廃棄する処理と を具備することを特徴とする請求項 14に記載の画像符号化方法。
[16] 入力画像フレームを画像ブロックに分割する処理と、
前記画像ブロックを予測する処理と、
前記予測によって得られた予測誤差画像ブロックを周波数領域に変換して量子化 する処理と、
前記量子化されたデータから復号画像を再構築する処理と、
前記量子化されたデータをエントロピー符号化する処理と、 前記量子化されたデータを利用して、処理対象画像ブロックのエントロピー符号ィ匕 後の出力ビット数を推定する処理と、
前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピー符号化の 出力ビット数が規定量以下となるように、量子化処理の出力データを廃棄する処理と を具備することを特徴とする画像符号化方法。
[17] 画像符号ィ匕のプログラムであって、
前記プログラムは、画像を周波数領域に変換し量子化した変換量子化値をェントロ ピー符号ィ匕する際に、エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場 合、前記変換量子化値を再構築して得た画像を符号化データとする処理を、情報処 理装置に実行させることを特徴とするプログラム。
[18] 画像符号ィ匕方法のプログラムであって、
前記プログラムは、画像を周波数領域に変換し量子化した変換量子化値をェントロ ピー符号ィ匕する際に、エントロピー符号ィ匕の出力符号ビット数が規定量を超えた場 合、前記変換量子化値を再構築して得た画像を非エントロピー符号化して符号ィ匕デ ータとする処理を、情報処理装置に実行させることを特徴とするプログラム。
[19] 画像符号ィ匕方法のプログラムであって、
前記プログラムは、
入力画像フレームを画像ブロックに分割する処理と、
前記画像ブロックを予測する処理と、
前記予測によって得られた予測誤差画像ブロックを周波数領域に変換して量子化 する処理と、
前記量子化されたデータから復号画像を再構築する処理と、
前記量子化されたデータをエントロピー符号化する処理と、
処理対象画像ブロックのエントロピー符号ィ匕後の出力ビット数が規定量を超えた場 合には、出力ビットを処理対象画像ブロックの符号化データとはせず、前記再構築さ れた復号画像を符号化データとして出力する処理と
を情報処理装置に実行させることを特徴とするプログラム。
[20] 前記プログラムは、 前記画像ブロックを予測符号ィヒする予測パラメータを検出する処理と、 前記予測パラメータの出力データと量子化パラメータとを利用して、処理対象画像 ブロックのエントロピー符号ィ匕後の出力ビット数を推定する処理と、
前記推定出力ビット数が規定量を超える場合には、再構築された復号画像を処理 対象画像ブロックの符号化データとして出力する処理と
を情報処理装置に実行させることを特徴とする請求項 19に記載のプログラム。
[21] 画像符号ィ匕方法のプログラムであって、
前記プログラムは、
入力画像フレームを画像ブロックに分割する処理と、
前記画像ブロックを予測する処理と、
前記画像ブロックを予測符号ィヒする予測パラメータを検出する処理と、 前記予測パラメータと量子化パラメータを利用して、処理対象画像ブロックのェント 口ピー符号ィ匕後の出力ビット数を推定する処理と、
前記予測によって得られた予測誤差画像ブロックを周波数領域に変換して量子化 する処理と、
前記量子化されたデータから復号画像を再構築する処理と、
前記量子化されたデータをエントロピー符号化する処理と、
前記推定出力ビット数が規定量を超える場合には、前記再構築された復号画像を 処理対象画像ブロックの符号化データとして出力する処理と
を情報処理装置に実行させることを特徴とするプログラム。
[22] 前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピー符号化後 の出力ビット数が規定量以下となるように量子化パラメータを設定することを特徴とす る請求項 20又は請求項 21に記載のプログラム。
[23] 前記プログラムは、量子化されたデータを利用して、処理対象画像ブロックのェント 口ピー符号ィ匕後の出力ビット数を推定する処理と、
前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピー符号化の 出力ビット数が規定量以下となるように、量子化処理の出力データを廃棄する処理と を情報処理装置に実行させることを特徴とする請求項 22に記載のプログラム。 画像符号ィ匕方法のプログラムであって、
前記プログラムは、
入力画像フレームを画像ブロックに分割する処理と、
前記画像ブロックを予測する処理と、
前記予測によって得られた予測誤差画像ブロックを周波数領域に変換して量子化 する処理と、
前記量子化されたデータから復号画像を再構築する処理と、
前記量子化されたデータをエントロピー符号化する処理と、
前記量子化されたデータを利用して、処理対象画像ブロックのエントロピー符号化 後の出力ビット数を推定する処理と、
前記推定出力ビット数を利用して、処理対象画像ブロックのエントロピー符号化の 出力ビット数が規定量以下となるように、量子化処理の出力データを廃棄する処理と を情報処理装置に実行させることを特徴とするプログラム。
PCT/JP2006/320379 2005-10-14 2006-10-12 画像符号化方法及び、これを用いた装置とコンピュータプログラム Ceased WO2007043609A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP06811676.3A EP1947862B1 (en) 2005-10-14 2006-10-12 Method for re-encoding image blocks, device using the same, and computer program
CN2006800380771A CN101288313B (zh) 2005-10-14 2006-10-12 图像编码方法及使用此方法的装置
US12/090,054 US8416850B2 (en) 2005-10-14 2006-10-12 Image encoding method, device using the same, and computer program
JP2007539979A JP4973871B2 (ja) 2005-10-14 2006-10-12 画像符号化方法及び、これを用いた装置とコンピュータプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005300933 2005-10-14
JP2005-300933 2005-10-14

Publications (2)

Publication Number Publication Date
WO2007043609A1 true WO2007043609A1 (ja) 2007-04-19
WO2007043609B1 WO2007043609B1 (ja) 2007-07-19

Family

ID=37942834

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/320379 Ceased WO2007043609A1 (ja) 2005-10-14 2006-10-12 画像符号化方法及び、これを用いた装置とコンピュータプログラム

Country Status (6)

Country Link
US (1) US8416850B2 (ja)
EP (2) EP1947862B1 (ja)
JP (1) JP4973871B2 (ja)
KR (1) KR100978767B1 (ja)
CN (1) CN101288313B (ja)
WO (1) WO2007043609A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007148596A1 (ja) * 2006-06-21 2007-12-27 Panasonic Corporation 画像符号化装置および画像符号化方法
EP2073555A2 (en) * 2007-12-19 2009-06-24 Sony Corporation Visually lossless video data compression
JP2009171188A (ja) * 2008-01-16 2009-07-30 Nec Corp エントロピ符号化器、映像符号化装置、映像符号化方法および映像符号化プログラム
JPWO2008072592A1 (ja) * 2006-12-14 2010-03-25 日本電気株式会社 映像符号化方法、映像符号化装置および映像符号化プログラム
EP2197215A4 (en) * 2007-09-06 2011-03-23 Nec Corp VIDEO ENCODING DEVICE, VIDEO DECODING DEVICE, VIDEO ENCODING METHOD, VIDEO DECODING METHOD, AND VIDEO ENCODING OR DECODING PROGRAM

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9648325B2 (en) * 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit
US8542748B2 (en) 2008-03-28 2013-09-24 Sharp Laboratories Of America, Inc. Methods and systems for parallel video encoding and decoding
WO2010038212A2 (en) * 2008-10-01 2010-04-08 Nxp B.V. Embedded video compression for hybrid contents
US20120014431A1 (en) * 2010-07-14 2012-01-19 Jie Zhao Methods and Systems for Parallel Video Encoding and Parallel Video Decoding
US9313514B2 (en) 2010-10-01 2016-04-12 Sharp Kabushiki Kaisha Methods and systems for entropy coder initialization
US9300975B2 (en) * 2011-09-11 2016-03-29 Texas Instruments Incorporated Concurrent access shared buffer in a video encoder
US10110892B2 (en) 2011-11-01 2018-10-23 Nec Corporation Video encoding device, video decoding device, video encoding method, video decoding method, and program
TW202516915A (zh) * 2012-04-13 2025-04-16 美商Ge影像壓縮有限公司 用以自資料串流解碼資訊以重構圖像之解碼器及方法、用以將圖像編碼入資料串流之編碼器、及相關非暫時性電腦可讀媒體
TWI737990B (zh) 2012-06-29 2021-09-01 美商Ge影像壓縮有限公司 視訊資料串流概念技術

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09200741A (ja) * 1995-12-27 1997-07-31 Thomson Consumer Electron Inc 画像データ圧縮システムおよび方法
JPH1098710A (ja) * 1996-09-24 1998-04-14 Hitachi Ltd 信号処理装置
JPH10243399A (ja) * 1997-02-25 1998-09-11 Sharp Corp 符号量制御装置及び該符号量制御装置を含む動画像符号化装置
JPH11252563A (ja) * 1998-03-05 1999-09-17 Fuji Xerox Co Ltd 画像符号化装置、画像復号化装置および画像処理装置、並びに画像符号化方法、画像復号化方法および画像処理方法
JP2000244925A (ja) * 1999-02-24 2000-09-08 Fuji Xerox Co Ltd 画像処理装置および画像処理方法
JP2000278687A (ja) * 1999-03-23 2000-10-06 Sanyo Electric Co Ltd エンコーダ
JP2004007475A (ja) * 2002-03-28 2004-01-08 Sony Corp 画像圧縮符号化装置及び方法、プログラム
JP2004135251A (ja) 2002-10-10 2004-04-30 Sony Corp 画像情報符号化方法及び画像情報復号方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3347954B2 (ja) * 1995-11-02 2002-11-20 三菱電機株式会社 動画像符号化装置及び動画像復号化装置
US6628716B1 (en) * 1999-06-29 2003-09-30 Intel Corporation Hardware efficient wavelet-based video compression scheme
JP2003304404A (ja) * 2002-04-09 2003-10-24 Canon Inc 画像符号化装置
US7242713B2 (en) 2002-05-02 2007-07-10 Microsoft Corporation 2-D transforms for image and video coding
US7483488B1 (en) * 2002-05-30 2009-01-27 Intervideo, Inc. Systems and methods for improving bit rate control of video encoding by correcting for the effects of scene changes and bit stuffing in a video buffer verifier (VBV) buffer model
CN1225126C (zh) * 2002-10-09 2005-10-26 中国科学院计算技术研究所 用于视频编码的新型空间预测方法及其装置
US7864839B2 (en) * 2005-04-01 2011-01-04 Broadcom Corporation Method and system for rate control in a video encoder
JPWO2006118288A1 (ja) * 2005-05-03 2008-12-18 松下電器産業株式会社 動画像符号化方法、動画像復号化方法およびその装置
JP2007089035A (ja) * 2005-09-26 2007-04-05 Toshiba Corp 動画像符号化方法、装置及びプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09200741A (ja) * 1995-12-27 1997-07-31 Thomson Consumer Electron Inc 画像データ圧縮システムおよび方法
JPH1098710A (ja) * 1996-09-24 1998-04-14 Hitachi Ltd 信号処理装置
JPH10243399A (ja) * 1997-02-25 1998-09-11 Sharp Corp 符号量制御装置及び該符号量制御装置を含む動画像符号化装置
JPH11252563A (ja) * 1998-03-05 1999-09-17 Fuji Xerox Co Ltd 画像符号化装置、画像復号化装置および画像処理装置、並びに画像符号化方法、画像復号化方法および画像処理方法
JP2000244925A (ja) * 1999-02-24 2000-09-08 Fuji Xerox Co Ltd 画像処理装置および画像処理方法
JP2000278687A (ja) * 1999-03-23 2000-10-06 Sanyo Electric Co Ltd エンコーダ
JP2004007475A (ja) * 2002-03-28 2004-01-08 Sony Corp 画像圧縮符号化装置及び方法、プログラム
JP2004135251A (ja) 2002-10-10 2004-04-30 Sony Corp 画像情報符号化方法及び画像情報復号方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1947862A4

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007148596A1 (ja) * 2006-06-21 2007-12-27 Panasonic Corporation 画像符号化装置および画像符号化方法
JPWO2008072592A1 (ja) * 2006-12-14 2010-03-25 日本電気株式会社 映像符号化方法、映像符号化装置および映像符号化プログラム
EP2124343A4 (en) * 2006-12-14 2012-01-11 Nec Corp METHOD, DEVICE AND VIDEO PROGRAMMING PROGRAM
JP5045950B2 (ja) * 2006-12-14 2012-10-10 日本電気株式会社 映像符号化方法、映像符号化装置および映像符号化プログラム
US8345767B2 (en) 2006-12-14 2013-01-01 Nec Corporation Video encoding method, video encoding device, and video encoding program
EP2197215A4 (en) * 2007-09-06 2011-03-23 Nec Corp VIDEO ENCODING DEVICE, VIDEO DECODING DEVICE, VIDEO ENCODING METHOD, VIDEO DECODING METHOD, AND VIDEO ENCODING OR DECODING PROGRAM
JP5278827B2 (ja) * 2007-09-06 2013-09-04 日本電気株式会社 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法、映像符号化あるいは復号プログラム
US9521433B2 (en) 2007-09-06 2016-12-13 Nec Corporation Video encoding device, video decoding device, video encoding method, video decoding method, video encoding or decoding program
EP2073555A2 (en) * 2007-12-19 2009-06-24 Sony Corporation Visually lossless video data compression
US8401071B2 (en) 2007-12-19 2013-03-19 Sony Corporation Virtually lossless video data compression
RU2504107C2 (ru) * 2007-12-19 2014-01-10 Сони Корпорейшн Сжатие видеоданных без видимых потерь
JP2009171188A (ja) * 2008-01-16 2009-07-30 Nec Corp エントロピ符号化器、映像符号化装置、映像符号化方法および映像符号化プログラム

Also Published As

Publication number Publication date
JPWO2007043609A1 (ja) 2009-04-16
US8416850B2 (en) 2013-04-09
EP2566160A3 (en) 2013-08-21
EP1947862A1 (en) 2008-07-23
CN101288313A (zh) 2008-10-15
EP1947862A4 (en) 2010-12-15
KR20080046237A (ko) 2008-05-26
KR100978767B1 (ko) 2010-08-30
EP2566160A2 (en) 2013-03-06
US20090279604A1 (en) 2009-11-12
EP1947862B1 (en) 2016-04-27
CN101288313B (zh) 2011-09-14
JP4973871B2 (ja) 2012-07-11
WO2007043609B1 (ja) 2007-07-19

Similar Documents

Publication Publication Date Title
US8345767B2 (en) Video encoding method, video encoding device, and video encoding program
JP3132456B2 (ja) 階層的画像符号化方式、及び階層的画像復号方式
JP4249790B2 (ja) ビデオ画像を処理するコンピュータ実行方法及び記録媒体
JP4425563B2 (ja) フェーディング補償のためのパラメータ化
JP4545388B2 (ja) フェーディング推定/補償によりビデオフレームを処理するシステムおよび方法
WO2007043609A1 (ja) 画像符号化方法及び、これを用いた装置とコンピュータプログラム
JP2006304307A5 (ja)
CN101743754A (zh) 视频编码装置及方法、视频代码程序及记录该程序的记录介质
CN101026758A (zh) 视频代码转换方法和设备
KR20090090152A (ko) 영상의 부호화, 복호화 방법 및 장치
KR20140022122A (ko) 율―왜곡 최적화를 이용한 비디오 부호화 방법 및 장치
US8532179B2 (en) Method and device for optimizing the compression of a video stream
JPH11513873A (ja) ブロック・ベースのコード化システムにおいてコード化モードを選択するための装置および方法
KR100813001B1 (ko) 차분신호의 크기와 부호의 분리를 이용한 동영상부호화/복호화 장치 및 그 방법
KR20090037031A (ko) 필터 적용 예측 기능을 가지는 동영상 압축 장치
KR20050003029A (ko) 저전송율 비디오 부호화 장치 및 방법
GB2329544A (en) Image comparison in transform-quantised space
HK1060244B (en) Signaling for fading compensation in video encoding
HK1060464B (en) Fading estimation/compensation in video encoding
KR20110023430A (ko) 움직임 추정방법 및 움직임 추정장치, 이를 이용한 부호화 방법 및 비디오 인코더, 이를 이용한 복호화 방법 및 비디오 디코더

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200680038077.1

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1020087008580

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2007539979

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 12090054

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2006811676

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE