JP2008160402A - Encoding device and method, and image encoding device - Google Patents

Encoding device and method, and image encoding device Download PDF

Info

Publication number
JP2008160402A
JP2008160402A JP2006346074A JP2006346074A JP2008160402A JP 2008160402 A JP2008160402 A JP 2008160402A JP 2006346074 A JP2006346074 A JP 2006346074A JP 2006346074 A JP2006346074 A JP 2006346074A JP 2008160402 A JP2008160402 A JP 2008160402A
Authority
JP
Japan
Prior art keywords
encoding
code amount
generated
quantization
entropy
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.)
Withdrawn
Application number
JP2006346074A
Other languages
Japanese (ja)
Inventor
Fumitaka Nakayama
文貴 中山
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2006346074A priority Critical patent/JP2008160402A/en
Publication of JP2008160402A publication Critical patent/JP2008160402A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To perform suitable quantization control even when CABAC encoding is used. <P>SOLUTION: In an entropy encoding device 20, a CAVLC encoding device 20a performs reversible encoding of a quantization conversion coefficient from a quantizer 18 on a CAVLC basis and at the same time, a CABAC encoding device 20b performs reversible encoding of the quantization conversion coefficient from the quantizer 18 on a CABAC basis. Output code data of the CABAC encoding device 20b are output as the output of an encoding device 10 to the outside, and motion information, information showing CABAC as entropy encoding, etc., are inserted into the header thereof. A code amount correcting device 40 multiplies a generated code amount of the CAVLC encoding device 20a by a correction coefficient α and supplies the result to a qunatization control unit 42. Encoding efficiency of the CAVLC encoding device 20a and encoding efficiency of the CABAC encoding device 20b are previously examined and the correction coefficient α is determined based upon the ratio of them and set in the code amount correcting device 40. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、符号化装置及び方法並びに画像符号化装置に関し、より具体的には、MPEG4−AVC/H.264等で使用されるエントロピー符号化を用いる符号化装置及び方法並びに画像符号化装置に関する。   The present invention relates to an encoding apparatus and method, and an image encoding apparatus, and more specifically, MPEG4-AVC / H. The present invention relates to an encoding apparatus and method using entropy encoding used in H.264 and an image encoding apparatus.

従来、デジタルビデオカメラの符号化方式及びDVD(Digital Versatile Disk)レコーダの符号化方式には、符号化効率の高いMPEG2(Moving Picture Expert Group 2)が一般的に利用されている。しかし、近年、映像信号の高精細化に伴い、更なる高圧縮・高能率符号化方式として、ITU−TRec.H.264|ISO/IEC 14496−10 AVC(以下H.264と呼ぶ)と呼ばれる規格が提唱されている。H.264は、MPEG2及びMPEG4といった従来の符号化方式に比べ、より高い符号化効率を実現できる。   2. Description of the Related Art Conventionally, MPEG2 (Moving Picture Expert Group 2) with high encoding efficiency is generally used as an encoding method for a digital video camera and an encoding method for a DVD (Digital Versatile Disk) recorder. However, in recent years, as video signals have become higher in definition, ITU-TRec. H. A standard called H.264 | ISO / IEC 14496-10 AVC (hereinafter referred to as H.264) has been proposed. H. H.264 can realize higher encoding efficiency than conventional encoding methods such as MPEG2 and MPEG4.

図4は、H.264の従来の符号化装置の概略構成ブロック図を示す。符号化装置110は、カレントピクチャ(を記憶するフレームメモリ)112、加算器114、整数変換装置116、量子化器118、エントロピー符号化装置120、逆量子化器122、逆整数変換装置124、加算器126、ループフィルタ128、参照ピクチャ(を記憶するフレームメモリ)130、動き予測装置132、動き補償装置134、イントラ予測装置136、スイッチ138及び量子化制御装置142からなる。エントロピー符号化装置120は、択一的に利用されるCAVLC(Context-Based Adaptive Variable Length Coding)と呼ばれる可変長符号化を使用するCAVLC符号化装置120aと、CABAC(Context-based Adaptive Binary Arithmetic Coding)と呼ばれる算術符号化を使用するCABAC符号化装置120bを具備する。   FIG. 1 shows a schematic block diagram of a conventional H.264 encoding apparatus. The encoding device 110 includes a current picture (frame memory for storing) 112, an adder 114, an integer transformer 116, a quantizer 118, an entropy encoder 120, an inverse quantizer 122, an inverse integer transformer 124, and an addition. And 126, a loop filter 128, a reference picture (frame memory for storing) 130, a motion prediction device 132, a motion compensation device 134, an intra prediction device 136, a switch 138, and a quantization control device 142. The entropy encoder 120 includes a CAVLC encoder 120a that uses variable length coding called CAVLC (Context-Based Adaptive Variable Length Coding), and CABAC (Context-based Adaptive Binary Arithmetic Coding). A CABAC encoding device 120b that uses arithmetic encoding called as is provided.

イントラ符号化の動作を説明する。イントラ符号化では、スイッチ138は、イントラ予測装置136の出力を選択している。   The operation of intra coding will be described. In intra coding, the switch 138 selects the output of the intra prediction device 136.

画面並べ替えを終えたカレントピクチャ112から画像データがマクロブロック単位で読み出され、加算器114とイントラ予測装置136に供給される。イントラ予測装置136は、先行して符号化及び復号化された同じ画面内の画像データ(例えば、直前の画素値、又は直前ラインの同じ水平位置の画素の画素値等)から予測値を算出する。スイッチ138は、イントラ予測装置136の出力画像データを選択して、加算器114及び加算器126に供給する。   Image data is read in units of macroblocks from the current picture 112 that has undergone screen rearrangement, and is supplied to the adder 114 and the intra prediction device 136. The intra prediction device 136 calculates a prediction value from image data (for example, the previous pixel value or the pixel value of the pixel at the same horizontal position on the previous line) within the same screen that has been encoded and decoded in advance. . The switch 138 selects the output image data of the intra prediction device 136 and supplies it to the adder 114 and the adder 126.

加算器114は、カレントピクチャ112からのカレント画像データからイントラ予測装置36からの予測画像データを減算し、差分画像データを整数変換装置116に供給す。整数変換装置116は、加算器114からの差分画像データを離散コサイン変換し、変換係数を量子化器118に供給する。量子化器118は、整数変換装置116からの変換係数を量子化制御装置142により指定される量子化スケールで量子化する。   The adder 114 subtracts the predicted image data from the intra prediction device 36 from the current image data from the current picture 112, and supplies the difference image data to the integer conversion device 116. The integer transform device 116 performs discrete cosine transform on the difference image data from the adder 114 and supplies transform coefficients to the quantizer 118. The quantizer 118 quantizes the transform coefficient from the integer transform device 116 with a quantization scale specified by the quantization control device 142.

エントロピー符号化装置120は、択一的に動作するCAVLC符号化装置120aとCABAC符号化装置120bを具備する。CAVLC符号化装置120aとCABAC符号化装置120bのどちらを使用するかは、図5に示すPPS(Picture Parameter Set)に含まれるCABAC/CAVLC選択情報により決定される。CABAC/CAVLC選択情報は、スライス単位で切り替え可能である。CABAC/CAVLC選択情報で決定される符号化装置120a又は120bが、量子化器118からの量子化された変換係数データを可逆符号化する。即ち、CAVLC符号化装置120aが選択されときには、CAVLC符号化装置120aが、イントラ符号化のモード情報及び量子化器118からの量子化変換係数をCAVLC方式で可逆符号化する。CABAC符号化装置120bが選択されたときには、CABAC符号化装置120bは、イントラ符号化のモード情報及び量子化器118からの量子化変換係数をCABAC方式で可逆符号化する。   The entropy encoding device 120 includes a CAVLC encoding device 120a and a CABAC encoding device 120b that operate alternatively. Whether to use the CAVLC encoding device 120a or the CABAC encoding device 120b is determined by the CABAC / CAVLC selection information included in the PPS (Picture Parameter Set) shown in FIG. The CABAC / CAVLC selection information can be switched in units of slices. The encoding device 120a or 120b determined by the CABAC / CAVLC selection information performs lossless encoding on the quantized transform coefficient data from the quantizer 118. That is, when the CAVLC encoding device 120a is selected, the CAVLC encoding device 120a performs lossless encoding of the intra encoding mode information and the quantized transform coefficient from the quantizer 118 by the CAVLC method. When the CABAC encoding device 120b is selected, the CABAC encoding device 120b performs lossless encoding of the intra encoding mode information and the quantized transform coefficient from the quantizer 118 by the CABAC method.

局所符号化のために、逆量子化器122は、量子化器118の出力データを逆量子化し、逆整数変換装置124は、逆量子化器122の出力データを逆離散コサイン変換する。加算器126は、逆整数変換装置124の出力にスイッチ138からの予測値を加算する。これにより、符号化された画像データがローカルで復号されて、イントラ予測装置136に供給される。   For local coding, the inverse quantizer 122 inversely quantizes the output data of the quantizer 118, and the inverse integer transformer 124 performs inverse discrete cosine transform on the output data of the inverse quantizer 122. The adder 126 adds the predicted value from the switch 138 to the output of the inverse integer conversion device 124. As a result, the encoded image data is locally decoded and supplied to the intra prediction device 136.

加算器126の出力データは、ループフィルタ128にも供給される。ループフィルタ128はマクロブロック境界及び整数変換ブロック境界のブロック歪を除去する。ループフィルタ128の出力画像は、インター符号化の際の参照ピクチャ130として利用される。   The output data of the adder 126 is also supplied to the loop filter 128. The loop filter 128 removes block distortion at the macroblock boundary and integer transform block boundary. The output image of the loop filter 128 is used as a reference picture 130 for inter coding.

インター符号化の動作を説明する。インター符号化では、スイッチ138は、動き補償装置134の出力を選択している。   The operation of inter coding will be described. In the inter coding, the switch 138 selects the output of the motion compensator 134.

インター符号化の場合、画像並べ替えを終えたカレントピクチャ112から画像データがマクロブロック単位で読み出され、加算器114及び動き予測装置132に供給される。動き予測装置132は、参照ピクチャ130から参照すべき画面の画像データを読み出し、カレントピクチャ112からの画像データと参照ピクチャ411からの画像データからブロック単位で画像の動きを予測する。そして、予測結果、例えば、動きベクトルを動き補償装置134に供給する。動き補償装置134は、動き予測装置132からの動き予測結果に従い、参照ピクチャ411からの参照画像の動きを補償して、予測画像データを生成する。スイッチ138は動き補償装置134からの動き補償された予測画像データを選択し、加算器114及び加算器126に供給する。   In the case of inter coding, image data is read in macroblock units from the current picture 112 that has undergone image rearrangement, and supplied to the adder 114 and the motion prediction device 132. The motion prediction device 132 reads the image data of the screen to be referred from the reference picture 130, and predicts the motion of the image in block units from the image data from the current picture 112 and the image data from the reference picture 411. Then, a prediction result, for example, a motion vector is supplied to the motion compensation device 134. The motion compensation device 134 compensates for the motion of the reference image from the reference picture 411 according to the motion prediction result from the motion prediction device 132, and generates predicted image data. The switch 138 selects the motion-compensated predicted image data from the motion compensator 134 and supplies it to the adder 114 and the adder 126.

加算器114は、カレントピクチャ112からのカレント画像データから動き補償装置134からの予測画像データを減算し、差分画像データを整数変換装置116に供給する。整数変換装置116は、加算器114からの差分画像データを離散コサイン変換し、変換係数を量子化器118に供給する。量子化器118は、整数変換装置116からの変換係数を量子化制御装置142により指定される量子化スケールで量子化する。   The adder 114 subtracts the predicted image data from the motion compensation device 134 from the current image data from the current picture 112 and supplies the difference image data to the integer conversion device 116. The integer transform device 116 performs discrete cosine transform on the difference image data from the adder 114 and supplies transform coefficients to the quantizer 118. The quantizer 118 quantizes the transform coefficient from the integer transform device 116 with a quantization scale specified by the quantization control device 142.

エントロピー符号化装置120では、イントラ符号化の場合と同様に、CABAC/CAVLC選択情報で決定されるCAVLC符号化装置120a又はCABAC符号化装置120bが、量子化器118からの量子化された変換係数データを可逆符号化する。即ち、CAVLC符号化装置120aが選択されたときには、CAVLC符号化装置120aが、インター符号化のモード情報及び量子化器118からの量子化変換係数をCAVLC方式で可逆符号化する。CABAC符号化装置120bが選択されたときには、CABAC符号化装置120bが、インター符号化のモード情報及び量子化器118からの量子化変換係数をCABAC方式で可逆符号化する。エントロピー符号化装置120はまた、動き予測装置132による動き予測値、例えば動きベクトルを出力符号データに多重化して、外部に出力する。動きベクトルは、例えば、画像符号化単位のヘッダに格納される。   In the entropy encoding device 120, the CAVLC encoding device 120a or the CABAC encoding device 120b determined by the CABAC / CAVLC selection information is the quantized transform coefficient from the quantizer 118, as in the case of intra encoding. Data is losslessly encoded. That is, when the CAVLC encoding device 120a is selected, the CAVLC encoding device 120a performs lossless encoding of the inter encoding mode information and the quantized transform coefficient from the quantizer 118 by the CAVLC method. When the CABAC encoding device 120b is selected, the CABAC encoding device 120b performs lossless encoding of the inter encoding mode information and the quantized transform coefficient from the quantizer 118 using the CABAC method. The entropy encoding device 120 also multiplexes the motion prediction value obtained by the motion prediction device 132, for example, a motion vector, into output code data and outputs the multiplexed data to the outside. For example, the motion vector is stored in a header of an image coding unit.

CAVLCの動作を簡単に説明する。図6は、CAVLC符号化装置120aの概略構成ブロック図を示す。符号化モード情報(インター符号化/イントラ符号化等)、量子化器118からの量子化変数係数及び動き予測装置132からの動き情報が、多値シンボルとしてとして、VLC算出装置150とコンテキスト保存装置152に入力される。   The operation of CAVLC will be briefly described. FIG. 6 shows a schematic block diagram of the CAVLC encoding device 120a. The coding mode information (inter coding / intra coding, etc.), the quantization variable coefficient from the quantizer 118, and the motion information from the motion prediction device 132 are converted into multi-valued symbols as a VLC calculation device 150 and a context storage device. 152 is input.

VLC算出装置150は、従来のMPEGなどで採用されている可変長符号化と同様に、入力された多値シンボルに対して可変長符号テーブルを適用し、その結果をビットストリームとして出力する。コンテキスト保存装置152は、VLC算出装置150で符号化された情報、例えば、処理中のブロックだけでなく既に処理されたブロックにおける各ブロック内の非0係数の個数(ゼロラン)、及び直前に符号化された係数の値などを保存する。VLC算出装置150は、コンテキスト保存装置152に保存される情報をもとに、シンボルに適用する可変長符号テーブルを切り替えることが可能である。コンテキスト保存装置152は、リセット時などに用いられるコンテキストの初期状態も保存する。   The VLC calculation device 150 applies the variable length code table to the input multi-level symbol and outputs the result as a bit stream, similarly to the variable length coding adopted in the conventional MPEG or the like. The context storage device 152 encodes the information encoded by the VLC calculation device 150, for example, the number of non-zero coefficients (zero run) in each block in the already processed block as well as the block being processed, and the immediately preceding encoding Save the value of the specified coefficient. The VLC calculation device 150 can switch the variable length code table applied to the symbol based on the information stored in the context storage device 152. The context saving device 152 also saves the initial state of the context used at the time of resetting.

図7は、CABAC符号化装置120bの概略構成ブロック図を示す。符号化モード情報(インター符号化/イントラ符号化等)、量子化器118からの量子化変換係数、及び動き予測装置132からの動き情報が、多値シンボルとして2値化装置160とコンテキスト計算装置164に入力される。2値化装置160は、入力された多値シンボルを、予め決められた一定規則にもとづき任意の長さの2値シンボル列に変換する。   FIG. 7 shows a schematic block diagram of the CABAC encoding apparatus 120b. The coding mode information (inter coding / intra coding, etc.), the quantized transform coefficient from the quantizer 118, and the motion information from the motion prediction device 132 are converted into multi-value symbols, the binarization device 160 and the context calculation device It is input to 164. The binarization device 160 converts the input multi-level symbol into a binary symbol string having an arbitrary length based on a predetermined rule.

コンテキスト計算装置164は、2値化装置160に入力されるシンボル情報と2値化装置160から出力される2値信号をもとにコンテキストを計算し、2値信号の発生確率を2値算術符号化装置162に入力する。コンテキスト計算部164はまた、符号化処理中に随時更新されるコンテキストとリセット時などに用いられるコンテキストの初期状態を保存する。   The context calculation device 164 calculates a context based on the symbol information input to the binarization device 160 and the binary signal output from the binarization device 160, and the occurrence probability of the binary signal is expressed by a binary arithmetic code. Is input to the conversion device 162. The context calculation unit 164 also stores a context that is updated at any time during the encoding process and an initial state of the context that is used when resetting.

2値算術符号化装置162は、コンテキスト計算装置164からの2値信号発生確率に従い、2値化装置160からの2値シンボル列に対して2値算術符号化を適用し、その結果をビットストリームとして出力する。
特開2005−348207号公報
The binary arithmetic coding device 162 applies binary arithmetic coding to the binary symbol sequence from the binarizing device 160 in accordance with the binary signal generation probability from the context calculating device 164, and the result is converted into a bit stream. Output as.
JP 2005-348207 A

CAVLCよりもCABACの方が一般に、画質が良いが、演算量が多く、高速で消費電力の多い演算装置を必要とする。具体的には、エントロピー符号化にCABACを用いた場合、2値シンボル列の1ビットごとに複雑な処理が必要となる。また発生確率をコンテキストの状況に応じて切り替える必要があるので、現ビットの符号化が終わらないと次のビットの符号化を行えない。   CABAC generally has better image quality than CAVLC, but requires a computing device that requires a large amount of computation, high speed and high power consumption. Specifically, when CABAC is used for entropy coding, complicated processing is required for each bit of the binary symbol sequence. In addition, since it is necessary to switch the probability of occurrence according to the context status, the next bit cannot be coded unless the current bit is coded.

マクロブロック単位の発生符号量を基に量子化スケールコードを決定する量子化制御装置142は、量子化対象マクロブロック直前までのCABAC発生符号量を知ることができない状況で、適切な量子化制御を行うことができない。例えば、画面の中央からCABACを適用しようとする場合、前提として、画面上部のCABAC結果から算出された発生確率が分からなければならないので、CABACの並列化が困難となる。   The quantization controller 142 that determines the quantization scale code based on the generated code amount in units of macroblocks performs appropriate quantization control in a situation where the CABAC generated code amount up to immediately before the quantization target macroblock cannot be known. I can't do it. For example, when CABAC is to be applied from the center of the screen, it is necessary to know the probability of occurrence calculated from the CABAC result at the top of the screen, making it difficult to parallelize CABAC.

量子化対象マクロブロック直前までのCABAC発生符号量を算出するには、CABAC自体のクロックを上げることが必要となるが、これは消費電力を増大させる。   In order to calculate the CABAC generated code amount immediately before the quantization target macroblock, it is necessary to raise the clock of the CABAC itself, which increases power consumption.

そこで、本発明は、上記の課題を鑑み、2種類のエントロピー符号化を協調動作させ、画質と量子化制御に関して良好な性能を得ることのできる符号化装置及び方法並びに画像符号化装置を提示することを目的とする。   Therefore, in view of the above problems, the present invention presents an encoding apparatus and method, and an image encoding apparatus that can perform two types of entropy encoding in a coordinated manner and obtain good performance with respect to image quality and quantization control. For the purpose.

上記の目的を達成するために、本発明に係る符号化装置は、入力データ列を量子化パラメータに従い量子化する量子化部と、当該量子化部の出力データ列を第1の符号化方式でエントロピー符号化する第1のエントロピー符号化部と、当該量子化部の出力データ列を当該第1の符号化方式とは異なる第2の符号化方式でエントロピー符号化する第2のエントロピー符号化部と、当該第1のエントロピー符号化部で生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御部とを具備することを特徴とする。   In order to achieve the above object, an encoding device according to the present invention includes a quantization unit that quantizes an input data sequence according to a quantization parameter, and an output data sequence of the quantization unit using a first encoding method. A first entropy encoding unit that performs entropy encoding, and a second entropy encoding unit that performs entropy encoding on the output data string of the quantization unit using a second encoding scheme different from the first encoding scheme And a control unit that controls the quantization parameter according to the generated code amount of the code string generated by the first entropy encoding unit.

本発明に係る画像符号化装置は、上述の符号化装置を具備し、MPEG4/AVC H.264に従い画像データを符号化することを特徴とする。   An image encoding apparatus according to the present invention includes the above-described encoding apparatus, and includes MPEG4 / AVC H.264. H.264 encodes image data.

本発明に係る符号化方法は、入力データ列を量子化パラメータに従い量子化する量子化ステップと、当該量子化ステップで量子化されたデータ列を第1の符号化方式でエントロピー符号化する第1のエントロピー符号化ステップと、当該量子化ステップで量子化されたデータ列を当該第1の符号化方式とは異なる第2の符号化方式でエントロピー符号化する第2のエントロピー符号化ステップと、当該第1のエントロピー符号化ステップで生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御ステップとを具備することを特徴とする。   The encoding method according to the present invention includes a quantization step for quantizing an input data sequence according to a quantization parameter, and a first encoding method for entropy encoding the data sequence quantized in the quantization step using a first encoding method. An entropy encoding step, a second entropy encoding step for entropy encoding the data sequence quantized in the quantization step with a second encoding scheme different from the first encoding scheme, and And a control step of controlling the quantization parameter according to the generated code amount of the code string generated in the first entropy encoding step.

本発明では、CABACを始めとして、発生確率をコンテキストの状況に応じて切り替える必要があるエントロピー符号化を使用する符号化装置においても、適切な量子化制御を行うことができるようになる。   In the present invention, appropriate quantization control can be performed even in an encoding apparatus using entropy encoding in which the occurrence probability needs to be switched according to the context state, including CABAC.

以下、図面を参照して、本発明の実施例を詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本発明の実施例1である符号化装置10の概略構成ブロック図である。実施例1では、CABACの出力符号データを出力用に使用し、CAVLCの出力符号データを量子化制御に使用する。   FIG. 1 is a schematic configuration block diagram of an encoding apparatus 10 that is Embodiment 1 of the present invention. In the first embodiment, output code data of CABAC is used for output, and output code data of CAVLC is used for quantization control.

符号化装置10は、カレントピクチャ(を記憶するフレームメモリ)12、加算器14、整数変換装置16、量子化器18、エントロピー符号化装置20、逆量子化器22、逆整数変換装置24、加算器26、ループフィルタ28、参照ピクチャ(を記憶するフレームメモリ)30、動き予測装置32、動き補償装置34、イントラ予測装置36、スイッチ(又はセレクタ)38、符号量補正装置40及び量子化制御装置42からなる。エントロピー符号化装置20は、CAVLC符号化装置20aとCABAC符号化装置20bを具備する。   The encoding device 10 includes a current picture (frame memory for storing) 12, an adder 14, an integer transform device 16, a quantizer 18, an entropy coding device 20, an inverse quantizer 22, an inverse integer transform device 24, and an addition. 26, loop filter 28, reference picture (frame memory for storing) 30, motion prediction device 32, motion compensation device 34, intra prediction device 36, switch (or selector) 38, code amount correction device 40, and quantization control device 42. The entropy encoding device 20 includes a CAVLC encoding device 20a and a CABAC encoding device 20b.

本実施例によるイントラ符号化時の動作を説明する。イントラ符号化では、スイッチ38は、イントラ予測装置36の出力を選択している。画面並べ替えを終えたカレントピクチャ12から画像データがマクロブロック単位で読み出され、加算器14とイントラ予測装置36に供給される。イントラ予測装置36は、先行して符号化及び復号化された同じ画面内の画像データから予測値(例えば、直前ラインの同じ水平位置の画素のデータ)を抽出又は算出する。スイッチ38は、イントラ予測装置36の出力画像データを選択して、加算器14及び加算器26に供給する。   The operation at the time of intra coding according to the present embodiment will be described. In the intra coding, the switch 38 selects the output of the intra prediction device 36. Image data is read in macroblock units from the current picture 12 that has undergone screen rearrangement, and supplied to the adder 14 and the intra prediction device 36. The intra prediction device 36 extracts or calculates a prediction value (for example, data of pixels at the same horizontal position in the immediately preceding line) from the image data in the same screen that has been previously encoded and decoded. The switch 38 selects the output image data of the intra prediction device 36 and supplies it to the adder 14 and the adder 26.

加算器14は、カレントピクチャ12からのカレント画像からイントラ予測装置36からの予測画像データを減算し、差分画像データを整数変換装置16に供給する。整数変換装置16は、加算器14からの差分画像データを離散コサイン変換し、変換係数を量子化器18に供給する。量子化器18は、整数変換装置16からの変換係数を量子化制御装置42により指定される量子化スケールで量子化する。   The adder 14 subtracts the predicted image data from the intra prediction device 36 from the current image from the current picture 12 and supplies the difference image data to the integer conversion device 16. The integer transform device 16 performs discrete cosine transform on the difference image data from the adder 14 and supplies transform coefficients to the quantizer 18. The quantizer 18 quantizes the transform coefficient from the integer transform device 16 with a quantization scale specified by the quantization control device 42.

エントロピー符号化装置20は、同時に動作可能なCAVLC符号化装置20aとCABAC符号化装置20bを具備する。CAVLC符号化装置20aは、量子化器18からの量子化変換係数をCAVLC方式で可逆符号化し、その生成符号又は発生符号量を符号量補正装置40に供給する。符号量補正装置40は、CAVLC符号化装置20aから発生符号が入力するときには、入力する符号からCAVLC符号化装置20aの発生符号量を算出する。本実施例では、CAVLC符号化装置20aは、量子化器18の量子化スケールの制御のために利用される。CAVLC符号化装置20aの出力符号データによる量子化器18の量子化スケールの制御の詳細は、後述する。   The entropy encoding device 20 includes a CAVLC encoding device 20a and a CABAC encoding device 20b that can operate simultaneously. The CAVLC encoding device 20a performs lossless encoding of the quantized transform coefficient from the quantizer 18 by the CAVLC method, and supplies the generated code or the generated code amount to the code amount correction device 40. When the generated code is input from the CAVLC encoding device 20a, the code amount correction device 40 calculates the generated code amount of the CAVLC encoding device 20a from the input code. In the present embodiment, the CAVLC encoding device 20 a is used for controlling the quantization scale of the quantizer 18. Details of the control of the quantization scale of the quantizer 18 based on the output code data of the CAVLC encoder 20a will be described later.

CAVLC符号化装置20aの符号化と同時に、CABAC符号化装置20bが、量子化器18からの量子化変換係数をCABAC方式で可逆符号化する。CABAC符号化装置20bの出力符号データは、符号化装置10の出力として外部に出力される。エントロピー符号化装置20から外部に出力されるビットストリームのヘッダには、エントロピー符号化としてCABACを示す情報が挿入される。   Simultaneously with the encoding of the CAVLC encoding device 20a, the CABAC encoding device 20b performs lossless encoding of the quantized transform coefficient from the quantizer 18 by the CABAC method. The output code data of the CABAC encoding device 20b is output to the outside as the output of the encoding device 10. Information indicating CABAC as entropy coding is inserted into the header of the bit stream output from the entropy coding device 20 to the outside.

局所符号化のために、逆量子化器22は、量子化器18の出力データを逆量子化し、逆整数変換装置24は、逆量子化器22の出力データを逆離散コサイン変換する。加算器26は、逆整数変換装置24の出力にスイッチ38からの予測値を加算する。これにより、符号化された画像データがローカルで復号されて、イントラ予測装置36に供給される。   For local coding, the inverse quantizer 22 inversely quantizes the output data of the quantizer 18, and the inverse integer transform device 24 performs inverse discrete cosine transform on the output data of the inverse quantizer 22. The adder 26 adds the predicted value from the switch 38 to the output of the inverse integer conversion device 24. Thus, the encoded image data is locally decoded and supplied to the intra prediction device 36.

加算器26の出力データは、ループフィルタ28にも供給される。ループフィルタ28はマクロブロック境界及び整数変換ブロック境界のブロック歪を除去する。ループフィルタ28の出力画像は、インター符号化の際の参照ピクチャ30として、利用される。   The output data of the adder 26 is also supplied to the loop filter 28. The loop filter 28 removes block distortion at the macroblock boundary and integer transform block boundary. The output image of the loop filter 28 is used as a reference picture 30 at the time of inter coding.

インター符号化時の動作を説明する。インター符号化では、スイッチ38は、動き補償装置34の出力を選択している。   The operation at the time of inter coding will be described. In the inter coding, the switch 38 selects the output of the motion compensation device 34.

インター符号化の場合、画像並べ替えを終えたカレントピクチャ12から画像データがマクロブロック単位で読み出され、加算器14及び動き予測装置32に供給される。動き予測装置32は、参照ピクチャ30から参照すべき画面の画像データを読み出し、カレントピクチャ12からの画像データと参照ピクチャ30からの画像データからブロック単位で画像の動きを予測する。そして、予測結果、例えば、動きベクトルを動き補償装置34に供給する。動き補償装置34は、動き予測装置32からの動き予測結果に従い、参照ピクチャ30からの参照画像の動きを補償して、予測画像データを生成する。スイッチ38は動き補償装置34からの予測画像データを選択し、加算器14及び加算器26に供給する。   In the case of inter coding, image data is read from the current picture 12 that has undergone image rearrangement in units of macroblocks and supplied to the adder 14 and the motion prediction device 32. The motion prediction device 32 reads the image data of the screen to be referred from the reference picture 30 and predicts the motion of the image in block units from the image data from the current picture 12 and the image data from the reference picture 30. Then, a prediction result, for example, a motion vector is supplied to the motion compensation device 34. The motion compensation device 34 compensates for the motion of the reference image from the reference picture 30 according to the motion prediction result from the motion prediction device 32, and generates predicted image data. The switch 38 selects the predicted image data from the motion compensation device 34 and supplies it to the adder 14 and the adder 26.

加算器14は、カレントピクチャ12からのカレント画像から動き補償装置34からの予測画像データを減算し、差分画像データを整数変換装置16に供給す。整数変換装置16は、加算器14からの差分画像データを離散コサイン変換し、変換係数を量子化器18に供給する。量子化器18は、整数変換装置16からの変換係数を量子化制御装置42により指定される量子化スケールで量子化する。   The adder 14 subtracts the predicted image data from the motion compensation device 34 from the current image from the current picture 12 and supplies the difference image data to the integer conversion device 16. The integer transform device 16 performs discrete cosine transform on the difference image data from the adder 14 and supplies transform coefficients to the quantizer 18. The quantizer 18 quantizes the transform coefficient from the integer transform device 16 with a quantization scale specified by the quantization control device 42.

エントロピー符号化装置20では、CAVLC符号化装置20aが、量子化器18からの量子化変換係数をCAVLC方式で可逆符号化し、同時に、CABAC符号化装置20bが、量子化器18からの量子化変換係数をCABAC方式で可逆符号化する。CAVLC符号化装置20aは、生成符号又は発生符号量を符号量補正装置40に供給する。CABAC符号化装置20bの出力符号データは、符号化装置10の出力として外部に出力される。   In the entropy encoding device 20, the CAVLC encoding device 20 a performs lossless encoding of the quantized transform coefficient from the quantizer 18 by the CAVLC method, and at the same time, the CABAC encoding device 20 b performs the quantizing conversion from the quantizer 18. Coefficients are losslessly encoded by the CABAC method. The CAVLC encoding device 20a supplies the generated code or the generated code amount to the code amount correction device 40. The output code data of the CABAC encoding device 20b is output to the outside as the output of the encoding device 10.

エントロピー符号化装置20は更に、動き予測装置32による動き予測値、例えば動きベクトルを、CABAC符号化装置20bの出力符号データに多重化して、外部に出力する。動きベクトルは、例えば、画像符号化単位のヘッダに格納される。エントロピー符号化装置20から外部に出力されるビットストリームのヘッダには、エントロピー符号化としてCABACを示す情報が挿入される。   The entropy encoding device 20 further multiplexes the motion prediction value obtained by the motion prediction device 32, for example, a motion vector, with the output code data of the CABAC encoding device 20b and outputs the multiplexed data. For example, the motion vector is stored in a header of an image coding unit. Information indicating CABAC as entropy coding is inserted into the header of the bit stream output from the entropy coding device 20 to the outside.

符号量補正装置40と量子化制御装置42による量子化器18の量子化パラメータの制御動作を説明する。   The control operation of the quantization parameter of the quantizer 18 by the code amount correction device 40 and the quantization control device 42 will be described.

例えば、N(Nは1以上の整数)番目のマクロブロックが符号化装置10の符号化対象となっているとき、CAVLC符号化装置20aは、直前の(N−1)番目のマクロブロックの量子化変換係数のCAVLC符号化を完了しており、その発生符号量を符号量補正装置40に出力している。符号量補正装置40は、CAVLC符号化装置20aからの発生符号量に所定の正の乗数(補正係数)αを乗算して、量子化制御装置42に供給する。   For example, when the Nth (N is an integer greater than or equal to 1) macroblock is the encoding target of the encoding device 10, the CAVLC encoding device 20a determines the quantum of the immediately preceding (N−1) th macroblock. CAVLC encoding of the conversion coefficient is completed, and the generated code amount is output to the code amount correction device 40. The code amount correction device 40 multiplies the generated code amount from the CAVLC encoding device 20 a by a predetermined positive multiplier (correction coefficient) α and supplies the result to the quantization control device 42.

符号量補正装置40の乗数αについては、CAVLC符号化装置20aの符号化効率とCABAC符号化装置20bの符号化効率を予め調べておき、その比により補正係数αを決定し、符号量補正装置40にセットしておく。これにより、符号量補正装置40から量子化制御装置42に供給される発生符号量は、実質的には、CABAC符号化装置20bによる符号化の発生符号量に相当する量を示す。   For the multiplier α of the code amount correction device 40, the encoding efficiency of the CAVLC encoding device 20a and the encoding efficiency of the CABAC encoding device 20b are checked in advance, and the correction coefficient α is determined based on the ratio, and the code amount correction device Set to 40. Thereby, the generated code amount supplied from the code amount correction device 40 to the quantization control device 42 substantially indicates an amount corresponding to the generated code amount of encoding by the CABAC encoding device 20b.

量子化制御装置42は、符号量補正装置40からの発生符号量情報に従い、公知の方法、例えば、MPEG2テストモデル、いわゆるTM5のステップ2で採用される方法、又はその他の方法で、量子化器18の量子化パラメータを決定する。   The quantization control device 42 uses a known method, for example, the MPEG2 test model, the method adopted in Step 2 of TM5, or other methods according to the generated code amount information from the code amount correction device 40, and the quantizer Eighteen quantization parameters are determined.

ちなみに、CABAC符号化装置20bは、コンテキストの状況に応じて発生確率を切り替える必要があるので、直前のマクロブロックの発生符号量が未算出になっている可能性がある。直前のマクロブロックの発生符号量が未定の場合、適切な量子化パラメータを決定できない。   Incidentally, since the CABAC encoding apparatus 20b needs to switch the generation probability according to the context state, there is a possibility that the generated code amount of the immediately preceding macroblock has not been calculated. When the generated code amount of the immediately preceding macroblock is undecided, an appropriate quantization parameter cannot be determined.

図2は、本発明の実施例2の符号化装置10aの概略構成ブロック図である。図1と同じ構成要素には同じ符号を付してある。符号化装置10aでは、CAVLC符号化の発生符号量の乗数、即ち補正係数αを、同じマクロブロックに対するCAVLCとCABACの直近の発生符号量の比率から求めている点が、符号化装置10とは異なる。変更部分を詳細に説明する。   FIG. 2 is a schematic configuration block diagram of an encoding device 10a according to the second embodiment of the present invention. The same components as those in FIG. 1 are denoted by the same reference numerals. The encoding device 10a is different from the encoding device 10 in that the multiplier of the generated code amount of CAVLC encoding, that is, the correction coefficient α is obtained from the ratio of the latest generated code amounts of CAVLC and CABAC for the same macroblock. Different. The changed part will be described in detail.

比率算出装置50には、CAVLC符号化装置20aから生成符号又は発生符号量情報が入力し、CABAC符号化装置20bから生成符号又は発生符号量情報が入力する。比率算出装置50は、符号化装置20a,20bから生成符号が入力するときには、その入力生成符号から発生符号量を算出する。そして、比率算出装置50は、同じ画像に対するCAVLC符号化装置20aの発生符号量とCABAC符号化装置20bの発生符号量の比率を算出し、得られた比率を符号量補正装置52に供給する。   The ratio calculation device 50 receives the generated code or generated code amount information from the CAVLC encoding device 20a, and receives the generated code or generated code amount information from the CABAC encoding device 20b. When the generated code is input from the encoding devices 20a and 20b, the ratio calculating device 50 calculates the generated code amount from the input generated code. Then, the ratio calculating device 50 calculates the ratio between the generated code amount of the CAVLC encoding device 20a and the generated code amount of the CABAC encoding device 20b for the same image, and supplies the obtained ratio to the code amount correcting device 52.

例えば、N番目のマクロブロックが符号化対象であるとき、CAVLC符号化では、(N−1)番目のマクロブロックまでの発生符号量が確定しているが、CABAC符号化に関しては、M番目のマクロブロックまでの発生符号量子しか確定していない。Mは(N−1)以下である。従って、比率算出装置50は、CABAC符号化で発生符号量が確定している最新のマクロブロック、ここではM番目のマクロブロックについて、CAVLC符号化装置20aの発生符号量とCABAC符号化装置20bの発生符号量の比率を算出する。   For example, when the Nth macroblock is an encoding target, the generated code amount up to the (N−1) th macroblock is fixed in CAVLC encoding, but for CABAC encoding, the Mth Only the generated code quanta up to the macroblock are determined. M is (N-1) or less. Therefore, the ratio calculation device 50 determines the generated code amount of the CAVLC encoding device 20a and the CABAC encoding device 20b for the latest macroblock in which the generated code amount is determined by CABAC encoding, in this case, the Mth macroblock. The ratio of the generated code amount is calculated.

符号量補正装置52には、CAVLC符号化装置20aから生成符号又は発生符号量が入力する。符号量補正装置52は、符号化装置20aから生成符号が入力するときには、その入力生成符号から発生符号量を算出する。符号量補正装置52は、CAVLC符号化装置20aの発生符号量に比率算出装置50からの比率αを乗算し、乗算結果を量子化制御装置42に供給する。量子化制御装置42は、実施例1で説明したのと同様に、符号量補正装置52からの制御値(CAVLC発生符号量×α)に従い、量子化器18の量子化パラメータを制御する。   The code amount correction device 52 receives the generated code or the generated code amount from the CAVLC encoding device 20a. When the generated code is input from the encoding device 20a, the code amount correction device 52 calculates the generated code amount from the input generated code. The code amount correction device 52 multiplies the generated code amount of the CAVLC encoding device 20 a by the ratio α from the ratio calculation device 50 and supplies the multiplication result to the quantization control device 42. The quantization control device 42 controls the quantization parameter of the quantizer 18 according to the control value (CAVLC generated code amount × α) from the code amount correction device 52 as described in the first embodiment.

本実施例の目的からは、符号化装置20aは、発生符号量を示す情報を比率算出装置50及び符号量補正装置52に供給し、符号化装置20bは、発生符号量を示す情報を比率算出装置50に供給するのが好ましいことは明らかである。   For the purpose of this embodiment, the encoding device 20a supplies information indicating the generated code amount to the ratio calculation device 50 and the code amount correction device 52, and the encoding device 20b calculates the ratio of the information indicating the generated code amount. Obviously, it is preferable to supply the device 50.

図3は、本発明の実施例3である符号化装置10bの概略構成ブロック図である。図1と同じ構成要素には同じ符号を付してある。符号化装置10bでは、符号化装置10aに更に、CAVLC符号とCABAC符号の内で、符号量の少ない方を選択して出力する手段を追加してある。変更部分を詳細に説明する。   FIG. 3 is a schematic configuration block diagram of an encoding device 10b that is Embodiment 3 of the present invention. The same components as those in FIG. 1 are denoted by the same reference numerals. In the encoding device 10b, means for selecting and outputting the smaller one of the CAVLC code and the CABAC code from the CAVLC code and the CABAC code is added to the encoding device 10a. The changed part will be described in detail.

エントロピー符号化装置60は、同時に動作可能なCAVLC符号化装置60aとCABAC符号化装置60bを具備する。CAVLC符号化装置60aは、量子化器18からの量子化変換係数をCAVLC方式で可逆符号化し、その生成符号をバッファ62aに供給し、発生符号量を示す情報を比率算出装置68及び符号量補正装置40に供給する。CAVLC符号化装置60aの出力には、エントロピー符号化としてCAVLC符号化を示す情報、及びインター符号化の場合の動き情報が含まれる。   The entropy encoding device 60 includes a CAVLC encoding device 60a and a CABAC encoding device 60b that can operate simultaneously. The CAVLC encoding device 60a losslessly encodes the quantized transform coefficient from the quantizer 18 by the CAVLC method, supplies the generated code to the buffer 62a, and provides information indicating the generated code amount as a ratio calculation device 68 and a code amount correction. Supply to device 40. The output of the CAVLC encoding device 60a includes information indicating CAVLC encoding as entropy encoding and motion information in the case of inter encoding.

CAVLC符号化装置60aの符号化と同時に、CABAC符号化装置60bが、量子化器18からの量子化変換係数をCABAC方式で可逆符号化し、その生成符号をバッファ62bに供給する。そして、発生符号量を示す情報を比率算出装置68及び符号量補正装置40に供給する。CABAC符号化装置60bの出力には、エントロピー符号化としてCABAC符号化を示す情報、及びインター符号化の場合の動き情報が含まれる。   Simultaneously with the encoding of the CAVLC encoding device 60a, the CABAC encoding device 60b performs lossless encoding of the quantized transform coefficient from the quantizer 18 by the CABAC method, and supplies the generated code to the buffer 62b. Then, information indicating the generated code amount is supplied to the ratio calculation device 68 and the code amount correction device 40. The output of the CABAC encoding device 60b includes information indicating CABAC encoding as entropy encoding and motion information in the case of inter encoding.

バッファ62a,62bはFIFO(Fist-In First-Out)メモリからなり、符号化装置60a,60bの生成符号を一時的に記憶して、スイッチ(又はセレクタ)66に出力する。バッファ62a,62bの容量は、例えば、1スライス期間以上であればよい。符号量比較回路64は、バッファ62a,62bに記憶される符号量をマクロブロック単位で比較し、より少ない符号量の符号を選択するようにスイッチ66を制御する。スイッチ6は、符号量比較回路64からの切替え制御信号に従い、バッファ62a又は同62bの出力符号を選択する。この符号量比較回路64及びスイッチ66により、CAVLC符号化とCABAC符号化の内で、発生符号量の少ない方の符号化データを出力できる。   The buffers 62 a and 62 b are composed of FIFO (Fist-In First-Out) memories, temporarily store the generated codes of the encoding devices 60 a and 60 b, and output them to the switch (or selector) 66. The capacity of the buffers 62a and 62b may be, for example, one slice period or more. The code amount comparison circuit 64 compares the code amounts stored in the buffers 62a and 62b in units of macroblocks, and controls the switch 66 so as to select a code with a smaller code amount. The switch 6 selects the output code of the buffer 62a or 62b in accordance with the switching control signal from the code amount comparison circuit 64. The code amount comparison circuit 64 and the switch 66 can output encoded data having a smaller generated code amount of CAVLC coding and CABAC coding.

比率算出装置68及び符号量補正装置70は、それぞれ、実施例2の比率算出装置50及び符号量補正装置52と同様に機能する。実施例2の場合と同様に、比率算出装置68及び符号量補正装置70は、符号化装置60a,60bから発生符号量を示す情報ではなく、生成符号が入力する場合には、入力した生成符号からマクロブロック単位の発生符号量を算出する。   The ratio calculation device 68 and the code amount correction device 70 function similarly to the ratio calculation device 50 and the code amount correction device 52 of the second embodiment, respectively. As in the case of the second embodiment, the ratio calculation device 68 and the code amount correction device 70 receive the generated code when the generated code is input instead of the information indicating the generated code amount from the encoding devices 60a and 60b. The generated code amount for each macroblock is calculated from

比率算出装置68は、同じ画像に対するCAVLC符号化装置60aの発生符号量とCABAC符号化装置60bの発生符号量の比率を算出し、得られた比率を符号量補正装置70に供給する。   The ratio calculation device 68 calculates the ratio between the generated code amount of the CAVLC encoding device 60 a and the generated code amount of the CABAC encoding device 60 b for the same image, and supplies the obtained ratio to the code amount correction device 70.

符号量補正装置70は、CAVLC符号化装置60aの発生符号量に比率算出装置68からの比率αを乗算し、乗算結果を量子化制御装置42に供給する。量子化制御装置42は、実施例1で説明したのと同様に、符号量補正装置52からの制御値(CAVLC発生符号量×α)に従い、量子化器18の量子化パラメータを制御する。   The code amount correction device 70 multiplies the generated code amount of the CAVLC encoding device 60 a by the ratio α from the ratio calculation device 68 and supplies the multiplication result to the quantization control device 42. The quantization control device 42 controls the quantization parameter of the quantizer 18 according to the control value (CAVLC generated code amount × α) from the code amount correction device 52 as described in the first embodiment.

なお、出力用にCAVLCが選択された場合、量子化制御に使用する発生符号量は、実際に出力する符号量を用いているために補正する必要がなくなる。よって、その場合はαを1とする制御を行う。   When CAVLC is selected for output, the generated code amount used for quantization control does not need to be corrected because the code amount actually output is used. Therefore, in this case, control is performed so that α is 1.

本実施例3においても、符号化装置60aは、発生符号量を示す情報を比率算出装置68及び符号量補正装置70に供給し、符号化装置60bは、発生符号量を示す情報を比率算出装置68に供給するのが好ましいことは明らかである。   Also in the third embodiment, the encoding device 60a supplies information indicating the generated code amount to the ratio calculation device 68 and the code amount correction device 70, and the encoding device 60b transmits information indicating the generated code amount to the ratio calculation device. It is clear that it is preferable to supply 68.

本発明の実施例1の符号化装置の概略構成ブロック図である。It is a schematic block diagram of the encoding apparatus of Example 1 of this invention. 本発明の実施例2の符号化装置の概略構成ブロック図である。It is a schematic block diagram of the encoding apparatus of Example 2 of this invention. 本発明の実施例3の符号化装置の概略構成ブロック図である。It is a schematic block diagram of the encoding apparatus of Example 3 of this invention. 従来の符号化装置の概略構成ブロック図である。It is a schematic block diagram of the conventional encoding apparatus. 符号化ストリームの構成図である。It is a block diagram of an encoding stream. CAVLC符号化装置の概略構成ブロック図である。It is a schematic block diagram of a CAVLC encoding device. CABAC符号化装置の概略構成ブロック図である。It is a schematic block diagram of a CABAC encoding apparatus.

符号の説明Explanation of symbols

10,10a,10b 符号化装置
12 カレントピクチャ(を記憶するフレームメモリ)
14 加算器
16 整数変換装置
18 量子化器
20 エントロピー符号化装置
20a CAVLC符号化装置
20b CABAC符号化装置
22 逆量子化器
24 逆整数変換装置
26 加算器
28 ループフィルタ
30 参照ピクチャ(を記憶するフレームメモリ)
32 動き予測装置
34 動き補償装置
36 イントラ予測装置
38 スイッチ(又はセレクタ)
40 符号量補正装置
42 量子化制御装置
50 比率算出装置
52 符号量補正装置
60 エントロピー符号化装置
60a CAVLC符号化装置
60b CABAC符号化装置
62a,62b バッファ
64 符号量比較装置
66 スイッチ
68 比率算出装置
70 符号量補正装置
110 符号化装置
112 カレントピクチャ(を記憶するフレームメモリ)
114 加算器
116 整数変換装置
118 量子化器
120 エントロピー符号化装置
120a CAVLC符号化装置
120b CABAC符号化装置
122 逆量子化器
124 逆整数変換装置
126 加算器
128 ループフィルタ
130 参照ピクチャ(を記憶するフレームメモリ)
132 動き予測装置
134 動き補償装置
136 イントラ予測装置
138 スイッチ(又はセレクタ)
142 量子化制御装置
150 VLC算出装置
152 コンテキスト保存装置
160 2値化装置
162 2値算出符号化装置
164 コンテキスト計算装置
10, 10a, 10b Encoder 12 Current picture (frame memory for storing)
14 adder 16 integer converter 18 quantizer 20 entropy encoder 20a CAVLC encoder 20b CABAC encoder 22 inverse quantizer 24 inverse integer transformer 26 adder 28 loop filter 30 frame for storing reference picture memory)
32 motion prediction device 34 motion compensation device 36 intra prediction device 38 switch (or selector)
40 Code amount correction device 42 Quantization control device 50 Ratio calculation device 52 Code amount correction device 60 Entropy encoding device 60a CAVLC encoding device 60b CABAC encoding device 62a, 62b Buffer 64 Code amount comparison device 66 Switch 68 Ratio calculation device 70 Code amount correction device 110 Encoding device 112 Current picture (frame memory for storing)
114 adder 116 integer transform device 118 quantizer 120 entropy encoding device 120a CAVLC encoding device 120b CABAC encoding device 122 inverse quantizer 124 inverse integer transform device 126 adder 128 loop filter 130 frame for storing reference picture memory)
132 motion prediction device 134 motion compensation device 136 intra prediction device 138 switch (or selector)
142 quantization control device 150 VLC calculation device 152 context storage device 160 binarization device 162 binary calculation encoding device 164 context calculation device

Claims (13)

入力データ列を量子化パラメータに従い量子化する量子化部(18)と、
当該量子化部の出力データ列を第1の符号化方式でエントロピー符号化する第1のエントロピー符号化部(20a)と、
当該量子化部の出力データ列を当該第1の符号化方式とは異なる第2の符号化方式でエントロピー符号化する第2のエントロピー符号化部(20b)と、
当該第1のエントロピー符号化部で生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御部(40,42;50,52,42)
とを具備することを特徴とする符号化装置。
A quantization unit (18) for quantizing the input data sequence according to the quantization parameter;
A first entropy encoding unit (20a) for entropy encoding the output data string of the quantization unit with a first encoding method;
A second entropy encoding unit (20b) for entropy encoding the output data string of the quantization unit with a second encoding scheme different from the first encoding scheme;
A control unit (40, 42; 50, 52, 42) that controls the quantization parameter according to the generated code amount of the code string generated by the first entropy coding unit
An encoding device comprising:
当該制御部は、当該第1のエントロピー符号化部で生成される符号列の発生符号量を、当該第2の符号化方式での発生符号量換算値に補正する符号量補正手段(40)と、当該符号量補正手段の出力に従い当該量子化パラメータを制御する量子化制御手段(42)とを具備することを特徴とする請求項1に記載の符号化装置。   The control unit includes a code amount correcting unit (40) that corrects the generated code amount of the code string generated by the first entropy encoding unit to a generated code amount converted value in the second encoding method. The encoding apparatus according to claim 1, further comprising quantization control means (42) for controlling the quantization parameter in accordance with an output of the code amount correction means. 当該制御部は、当該第1のエントロピー符号化部で生成される符号列の発生符号量、及び当該第2のエントロピー符号化部で生成される符号列の発生符号量の比率を算出する比率算出手段(50)と、当該第1のエントロピー符号化部で生成される符号列の発生符号量を、当該比率算出手段(50)で算出される比率に従い、第2の符号化方式での発生符号量換算値に補正する符号量補正手段(52)と、当該符号量補正手段の出力に従い当該量子化パラメータを制御する量子化制御手段(42)とを具備することを特徴とする請求項1に記載の符号化装置。   The control unit calculates the ratio of the generated code amount of the code string generated by the first entropy encoding unit and the ratio of the generated code amount of the code string generated by the second entropy encoding unit The generated code amount of the code string generated by the means (50) and the first entropy encoding unit according to the ratio calculated by the ratio calculating means (50) is the generated code in the second encoding method. The code amount correcting means (52) for correcting to an amount converted value and the quantization control means (42) for controlling the quantization parameter in accordance with the output of the code amount correcting means. The encoding device described. 更に、当該第1のエントロピー符号化部で生成される符号列、及び当該第2のエントロピー符号化部で生成される符号列のうち、発生符号量の少ない方を出力用に選択する選択手段(64,66)を具備することを特徴とする請求項1乃至3の何れか1項に記載の符号化装置。   Furthermore, a selection unit (for selecting, for output, one having a smaller amount of generated codes out of the code string generated by the first entropy encoding unit and the code string generated by the second entropy encoding unit ( 64. The encoding apparatus according to claim 1, further comprising: 64, 66). 当該第1の符号化方式が、CAVLC(Context-Based Adaptive Variable Length Coding)であることを特徴とする請求項1乃至4の何れか1項に記載の符号化装置。   5. The encoding apparatus according to claim 1, wherein the first encoding method is CAVLC (Context-Based Adaptive Variable Length Coding). 6. 当該第2の符号化方式が、CABAC(Context-based Adaptive Binary Arithmetic Coding)であることを特徴とする請求項1乃至5の何れか1項に記載の符号化装置。   The encoding apparatus according to any one of claims 1 to 5, wherein the second encoding method is CABAC (Context-based Adaptive Binary Arithmetic Coding). 請求項1乃至6の何れか1項に記載の符号化装置を有し、MPEG4/AVC H.264に従い画像データを符号化することを特徴とする画像符号化装置。   An encoding apparatus according to any one of claims 1 to 6, comprising MPEG4 / AVC H.264. An image encoding device that encodes image data according to H.264. 入力データ列を量子化パラメータに従い量子化する量子化ステップ(18)と、
当該量子化ステップで量子化されたデータ列を第1の符号化方式でエントロピー符号化する第1のエントロピー符号化ステップ(20a)と、
当該量子化ステップで量子化されたデータ列を当該第1の符号化方式とは異なる第2の符号化方式でエントロピー符号化する第2のエントロピー符号化ステップ(20b)と、
当該第1のエントロピー符号化ステップで生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御ステップ(40,42;50,52,42)
とを具備することを特徴とする符号化方法。
A quantization step (18) for quantizing the input data sequence according to the quantization parameter;
A first entropy encoding step (20a) for entropy encoding the data sequence quantized in the quantization step with a first encoding method;
A second entropy encoding step (20b) for entropy encoding the data sequence quantized in the quantization step with a second encoding scheme different from the first encoding scheme;
Control step (40, 42; 50, 52, 42) for controlling the quantization parameter according to the generated code amount of the code string generated in the first entropy encoding step
An encoding method comprising:
当該制御部ステップは、当該第1のエントロピー符号化ステップで生成される符号列の発生符号量を、当該第2の符号化方式での発生符号量換算値に補正する符号量補正ステップ(40)と、当該符号量補正ステップの補正結果に従い当該量子化パラメータを制御する量子化制御ステップ(42)とを具備することを特徴とする請求項8に記載の符号化方法。   The control unit step corrects the generated code amount of the code string generated in the first entropy encoding step to a generated code amount converted value in the second encoding method (40). The encoding method according to claim 8, further comprising: a quantization control step (42) for controlling the quantization parameter according to a correction result of the code amount correction step. 当該制御ステップは、当該第1のエントロピー符号化ステップで生成される符号列の発生符号量、及び当該第2のエントロピー符号化ステップで生成される符号列の発生符号量の比率を算出する比率算出ステップ(50)と、当該第1のエントロピー符号化ステップで生成される符号列の発生符号量を、当該比率算出ステップ(50)で算出される比率に従い、第2の符号化方式での発生符号量換算値に補正する符号量補正ステップ(52)と、当該符号量補正ステップの出力に従い当該量子化パラメータを制御する量子化制御ステップ(42)とを具備することを特徴とする請求項8に記載の符号化方法。   The control step calculates a ratio for calculating a ratio between the generated code amount of the code string generated in the first entropy encoding step and the generated code amount of the code string generated in the second entropy encoding step. The generated code amount of the code string generated in step (50) and the first entropy encoding step is determined according to the ratio calculated in the ratio calculation step (50). 9. The code amount correction step (52) for correcting to an amount converted value, and a quantization control step (42) for controlling the quantization parameter according to an output of the code amount correction step. The encoding method described. 更に、当該第1のエントロピー符号化ステップで生成される符号列、及び当該第2のエントロピー符号化ステップで生成される符号列のうち、発生符号量の少ない方を出力用に選択する選択ステップ(64,66)を具備することを特徴とする請求項8乃至10の何れか1項に記載の符号化方法。   Further, a selection step for selecting, for output, a code string generated in the first entropy encoding step and a code string generated in the second entropy encoding step with a smaller generated code amount. 64. The encoding method according to claim 8, further comprising: 64, 66). 当該第1の符号化方式が、CAVLC(Context-Based Adaptive Variable Length Coding)であることを特徴とする請求項8乃至11の何れか1項に記載の符号化方法。   12. The encoding method according to claim 8, wherein the first encoding method is CAVLC (Context-Based Adaptive Variable Length Coding). 当該第2の符号化方式が、CABAC(Context-based Adaptive Binary Arithmetic Coding)であることを特徴とする請求項8乃至12の何れか1項に記載の符号化方法。   The encoding method according to any one of claims 8 to 12, wherein the second encoding method is CABAC (Context-based Adaptive Binary Arithmetic Coding).
JP2006346074A 2006-12-22 2006-12-22 Encoding device and method, and image encoding device Withdrawn JP2008160402A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006346074A JP2008160402A (en) 2006-12-22 2006-12-22 Encoding device and method, and image encoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006346074A JP2008160402A (en) 2006-12-22 2006-12-22 Encoding device and method, and image encoding device

Publications (1)

Publication Number Publication Date
JP2008160402A true JP2008160402A (en) 2008-07-10

Family

ID=39660828

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006346074A Withdrawn JP2008160402A (en) 2006-12-22 2006-12-22 Encoding device and method, and image encoding device

Country Status (1)

Country Link
JP (1) JP2008160402A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011109390A (en) * 2009-11-17 2011-06-02 Jvc Kenwood Holdings Inc Device and method for encoding image, and device and method for decoding image
WO2016158401A1 (en) * 2015-03-30 2016-10-06 ソニー株式会社 Image encoding device and method
CN106851278A (en) * 2011-07-12 2017-06-13 日本电气株式会社 Image quantization parameter coding/decoding method
CN106878714A (en) * 2011-06-28 2017-06-20 日本电气株式会社 To the method for video quantizing parameter decoding

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011109390A (en) * 2009-11-17 2011-06-02 Jvc Kenwood Holdings Inc Device and method for encoding image, and device and method for decoding image
CN106878714A (en) * 2011-06-28 2017-06-20 日本电气株式会社 To the method for video quantizing parameter decoding
CN106878714B (en) * 2011-06-28 2019-08-02 日本电气株式会社 To the decoded method of video quantizing parameter
CN106851278A (en) * 2011-07-12 2017-06-13 日本电气株式会社 Image quantization parameter coding/decoding method
CN106851279A (en) * 2011-07-12 2017-06-13 日本电气株式会社 Image quantization parameter coding/decoding method
CN107105249A (en) * 2011-07-12 2017-08-29 日本电气株式会社 Image quantization parameter coding/decoding method
CN106851279B (en) * 2011-07-12 2019-10-15 日本电气株式会社 Image quantization parameter coding/decoding method
CN106851278B (en) * 2011-07-12 2019-12-10 日本电气株式会社 Image quantization parameter decoding method and decoder
CN107105249B (en) * 2011-07-12 2020-01-03 日本电气株式会社 Image quantization parameter decoding method
WO2016158401A1 (en) * 2015-03-30 2016-10-06 ソニー株式会社 Image encoding device and method
JPWO2016158401A1 (en) * 2015-03-30 2018-01-25 ソニー株式会社 Image coding apparatus and method

Similar Documents

Publication Publication Date Title
JP6212345B2 (en) Video encoding apparatus and operation method thereof
JP6158802B2 (en) Decoding device and decoding method
JP4915350B2 (en) Entropy encoder, video encoding device, video encoding method, and video encoding program
US8396311B2 (en) Image encoding apparatus, image encoding method, and image encoding program
KR101106086B1 (en) Encoding apparatus and encoding method
JP5893002B2 (en) Rate control in video coding.
KR101362590B1 (en) Image processing device and method
US20060176953A1 (en) Method and system for video encoding with rate control
JP2007166039A (en) Image coding equipment
US10021409B2 (en) Apparatuses and methods for estimating bitstream bit counts
JP4616057B2 (en) Image coding apparatus and image coding method
JP2008160402A (en) Encoding device and method, and image encoding device
JP2010233263A (en) Device and method of image processing, program and recording medium
WO2016194380A1 (en) Moving image coding device, moving image coding method and recording medium for storing moving image coding program
JP2008271213A (en) Image encoding device
US7573406B2 (en) System and method for decoding context adaptive variable length coding
JP2008289105A (en) Image processing device and imaging apparatus equipped therewith
JP2010213187A (en) Video coding transmission apparatus
JP4847423B2 (en) Moving picture encoding apparatus and computer program
JP4561701B2 (en) Video encoding device
JP2008153802A (en) Moving picture encoding device and moving picture encoding program
JP4926912B2 (en) Video encoding apparatus and method
JP2003125417A (en) Image coder and its method
JPH06244736A (en) Encoder
JP2009081728A (en) Moving image coding apparatus, method of controlling moving image coding apparatus, and computer program

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100302