(57)【要約】【課題】  ＣＡＢＡＣ符号化を使用する場合でも、適切な量子化制御を実現する。【解決手段】  エントロピー符号化装置２０では、ＣＡＶＬＣ符号化装置２０ａが、量子化器１８からの量子化変換係数をＣＡＶＬＣ方式で可逆符号化し、同時に、ＣＡＢＡＣ符号化装置２０ｂが、量子化器１８からの量子化変換係数をＣＡＢＡＣ方式で可逆符号化する。ＣＡＢＡＣ符号化装置２０ｂの出力符号データは、符号化装置１０の出力として外部に出力され、そのヘッダには、動き情報と、エントロピー符号化としてＣＡＢＡＣを示す情報等が挿入される。符号量補正装置４０は、ＣＡＶＬＣ符号化装置２０ａの発生符号量に補正係数αを乗算して、量子化制御装置４２に供給する。ＣＡＶＬＣ符号化装置２０ａの符号化効率とＣＡＢＡＣ符号化装置２０ｂの符号化効率を予め調べておき、その比により補正係数αを決定し、符号量補正装置４０にセットしておく。【選択図】  図１
2008160402.tif 000002
【特許請求の範囲】
【請求項１】
入力データ列を量子化パラメータに従い量子化する量子化部（１８）と、
当該量子化部の出力データ列を第１の符号化方式でエントロピー符号化する第１のエントロピー符号化部（２０ａ）と、
当該量子化部の出力データ列を当該第１の符号化方式とは異なる第２の符号化方式でエントロピー符号化する第２のエントロピー符号化部（２０ｂ）と、
当該第１のエントロピー符号化部で生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御部（４０，４２；５０，５２，４２）
とを具備することを特徴とする符号化装置。
【請求項２】
当該制御部は、当該第１のエントロピー符号化部で生成される符号列の発生符号量を、当該第２の符号化方式での発生符号量換算値に補正する符号量補正手段（４０）と、当該符号量補正手段の出力に従い当該量子化パラメータを制御する量子化制御手段（４２）とを具備することを特徴とする請求項１に記載の符号化装置。
【請求項３】
当該制御部は、当該第１のエントロピー符号化部で生成される符号列の発生符号量、及び当該第２のエントロピー符号化部で生成される符号列の発生符号量の比率を算出する比率算出手段（５０）と、当該第１のエントロピー符号化部で生成される符号列の発生符号量を、当該比率算出手段（５０）で算出される比率に従い、第２の符号化方式での発生符号量換算値に補正する符号量補正手段（５２）と、当該符号量補正手段の出力に従い当該量子化パラメータを制御する量子化制御手段（４２）とを具備することを特徴とする請求項１に記載の符号化装置。
【請求項４】
更に、当該第１のエントロピー符号化部で生成される符号列、及び当該第２のエントロピー符号化部で生成される符号列のうち、発生符号量の少ない方を出力用に選択する選択手段（６４，６６）を具備することを特徴とする請求項１乃至３の何れか１項に記載の符号化装置。
【請求項５】
当該第１の符号化方式が、ＣＡＶＬＣ（Context-Based Adaptive Variable Length Coding）であることを特徴とする請求項１乃至４の何れか１項に記載の符号化装置。
【請求項６】
当該第２の符号化方式が、ＣＡＢＡＣ（Context-based Adaptive Binary Arithmetic Coding）であることを特徴とする請求項１乃至５の何れか１項に記載の符号化装置。
【請求項７】
請求項１乃至６の何れか１項に記載の符号化装置を有し、ＭＰＥＧ４／ＡＶＣ  Ｈ．２６４に従い画像データを符号化することを特徴とする画像符号化装置。
【請求項８】
入力データ列を量子化パラメータに従い量子化する量子化ステップ（１８）と、
当該量子化ステップで量子化されたデータ列を第１の符号化方式でエントロピー符号化する第１のエントロピー符号化ステップ（２０ａ）と、
当該量子化ステップで量子化されたデータ列を当該第１の符号化方式とは異なる第２の符号化方式でエントロピー符号化する第２のエントロピー符号化ステップ（２０ｂ）と、
当該第１のエントロピー符号化ステップで生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御ステップ（４０，４２；５０，５２，４２）
とを具備することを特徴とする符号化方法。
【請求項９】
当該制御部ステップは、当該第１のエントロピー符号化ステップで生成される符号列の発生符号量を、当該第２の符号化方式での発生符号量換算値に補正する符号量補正ステップ（４０）と、当該符号量補正ステップの補正結果に従い当該量子化パラメータを制御する量子化制御ステップ（４２）とを具備することを特徴とする請求項８に記載の符号化方法。
【請求項１０】
当該制御ステップは、当該第１のエントロピー符号化ステップで生成される符号列の発生符号量、及び当該第２のエントロピー符号化ステップで生成される符号列の発生符号量の比率を算出する比率算出ステップ（５０）と、当該第１のエントロピー符号化ステップで生成される符号列の発生符号量を、当該比率算出ステップ（５０）で算出される比率に従い、第２の符号化方式での発生符号量換算値に補正する符号量補正ステップ（５２）と、当該符号量補正ステップの出力に従い当該量子化パラメータを制御する量子化制御ステップ（４２）とを具備することを特徴とする請求項８に記載の符号化方法。
【請求項１１】
更に、当該第１のエントロピー符号化ステップで生成される符号列、及び当該第２のエントロピー符号化ステップで生成される符号列のうち、発生符号量の少ない方を出力用に選択する選択ステップ（６４，６６）を具備することを特徴とする請求項８乃至１０の何れか１項に記載の符号化方法。
【請求項１２】
当該第１の符号化方式が、ＣＡＶＬＣ（Context-Based Adaptive Variable Length Coding）であることを特徴とする請求項８乃至１１の何れか１項に記載の符号化方法。
【請求項１３】
当該第２の符号化方式が、ＣＡＢＡＣ（Context-based Adaptive Binary Arithmetic Coding）であることを特徴とする請求項８乃至１２の何れか１項に記載の符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置及び方法並びに画像符号化装置に関し、より具体的には、ＭＰＥＧ４−ＡＶＣ／Ｈ．２６４等で使用されるエントロピー符号化を用いる符号化装置及び方法並びに画像符号化装置に関する。
【背景技術】
【０００２】
従来、デジタルビデオカメラの符号化方式及びＤＶＤ（Digital Versatile Disk）レコーダの符号化方式には、符号化効率の高いＭＰＥＧ２（Moving Picture Expert Group 2）が一般的に利用されている。しかし、近年、映像信号の高精細化に伴い、更なる高圧縮・高能率符号化方式として、ＩＴＵ−ＴＲｅｃ．Ｈ．２６４｜ＩＳＯ／ＩＥＣ  １４４９６−１０  ＡＶＣ（以下Ｈ．２６４と呼ぶ）と呼ばれる規格が提唱されている。Ｈ．２６４は、ＭＰＥＧ２及びＭＰＥＧ４といった従来の符号化方式に比べ、より高い符号化効率を実現できる。
【０００３】
図４は、Ｈ．２６４の従来の符号化装置の概略構成ブロック図を示す。符号化装置１１０は、カレントピクチャ（を記憶するフレームメモリ）１１２、加算器１１４、整数変換装置１１６、量子化器１１８、エントロピー符号化装置１２０、逆量子化器１２２、逆整数変換装置１２４、加算器１２６、ループフィルタ１２８、参照ピクチャ（を記憶するフレームメモリ）１３０、動き予測装置１３２、動き補償装置１３４、イントラ予測装置１３６、スイッチ１３８及び量子化制御装置１４２からなる。エントロピー符号化装置１２０は、択一的に利用されるＣＡＶＬＣ（Context-Based Adaptive Variable Length Coding）と呼ばれる可変長符号化を使用するＣＡＶＬＣ符号化装置１２０ａと、ＣＡＢＡＣ（Context-based Adaptive Binary Arithmetic Coding）と呼ばれる算術符号化を使用するＣＡＢＡＣ符号化装置１２０ｂを具備する。
【０００４】
イントラ符号化の動作を説明する。イントラ符号化では、スイッチ１３８は、イントラ予測装置１３６の出力を選択している。
【０００５】
画面並べ替えを終えたカレントピクチャ１１２から画像データがマクロブロック単位で読み出され、加算器１１４とイントラ予測装置１３６に供給される。イントラ予測装置１３６は、先行して符号化及び復号化された同じ画面内の画像データ（例えば、直前の画素値、又は直前ラインの同じ水平位置の画素の画素値等）から予測値を算出する。スイッチ１３８は、イントラ予測装置１３６の出力画像データを選択して、加算器１１４及び加算器１２６に供給する。
【０００６】
加算器１１４は、カレントピクチャ１１２からのカレント画像データからイントラ予測装置３６からの予測画像データを減算し、差分画像データを整数変換装置１１６に供給す。整数変換装置１１６は、加算器１１４からの差分画像データを離散コサイン変換し、変換係数を量子化器１１８に供給する。量子化器１１８は、整数変換装置１１６からの変換係数を量子化制御装置１４２により指定される量子化スケールで量子化する。
【０００７】
エントロピー符号化装置１２０は、択一的に動作するＣＡＶＬＣ符号化装置１２０ａとＣＡＢＡＣ符号化装置１２０ｂを具備する。ＣＡＶＬＣ符号化装置１２０ａとＣＡＢＡＣ符号化装置１２０ｂのどちらを使用するかは、図５に示すＰＰＳ（Picture Parameter Set）に含まれるＣＡＢＡＣ／ＣＡＶＬＣ選択情報により決定される。ＣＡＢＡＣ／ＣＡＶＬＣ選択情報は、スライス単位で切り替え可能である。ＣＡＢＡＣ／ＣＡＶＬＣ選択情報で決定される符号化装置１２０ａ又は１２０ｂが、量子化器１１８からの量子化された変換係数データを可逆符号化する。即ち、ＣＡＶＬＣ符号化装置１２０ａが選択されときには、ＣＡＶＬＣ符号化装置１２０ａが、イントラ符号化のモード情報及び量子化器１１８からの量子化変換係数をＣＡＶＬＣ方式で可逆符号化する。ＣＡＢＡＣ符号化装置１２０ｂが選択されたときには、ＣＡＢＡＣ符号化装置１２０ｂは、イントラ符号化のモード情報及び量子化器１１８からの量子化変換係数をＣＡＢＡＣ方式で可逆符号化する。
【０００８】
局所符号化のために、逆量子化器１２２は、量子化器１１８の出力データを逆量子化し、逆整数変換装置１２４は、逆量子化器１２２の出力データを逆離散コサイン変換する。加算器１２６は、逆整数変換装置１２４の出力にスイッチ１３８からの予測値を加算する。これにより、符号化された画像データがローカルで復号されて、イントラ予測装置１３６に供給される。
【０００９】
加算器１２６の出力データは、ループフィルタ１２８にも供給される。ループフィルタ１２８はマクロブロック境界及び整数変換ブロック境界のブロック歪を除去する。ループフィルタ１２８の出力画像は、インター符号化の際の参照ピクチャ１３０として利用される。
【００１０】
インター符号化の動作を説明する。インター符号化では、スイッチ１３８は、動き補償装置１３４の出力を選択している。
【００１１】
インター符号化の場合、画像並べ替えを終えたカレントピクチャ１１２から画像データがマクロブロック単位で読み出され、加算器１１４及び動き予測装置１３２に供給される。動き予測装置１３２は、参照ピクチャ１３０から参照すべき画面の画像データを読み出し、カレントピクチャ１１２からの画像データと参照ピクチャ４１１からの画像データからブロック単位で画像の動きを予測する。そして、予測結果、例えば、動きベクトルを動き補償装置１３４に供給する。動き補償装置１３４は、動き予測装置１３２からの動き予測結果に従い、参照ピクチャ４１１からの参照画像の動きを補償して、予測画像データを生成する。スイッチ１３８は動き補償装置１３４からの動き補償された予測画像データを選択し、加算器１１４及び加算器１２６に供給する。
【００１２】
加算器１１４は、カレントピクチャ１１２からのカレント画像データから動き補償装置１３４からの予測画像データを減算し、差分画像データを整数変換装置１１６に供給する。整数変換装置１１６は、加算器１１４からの差分画像データを離散コサイン変換し、変換係数を量子化器１１８に供給する。量子化器１１８は、整数変換装置１１６からの変換係数を量子化制御装置１４２により指定される量子化スケールで量子化する。
【００１３】
エントロピー符号化装置１２０では、イントラ符号化の場合と同様に、ＣＡＢＡＣ／ＣＡＶＬＣ選択情報で決定されるＣＡＶＬＣ符号化装置１２０ａ又はＣＡＢＡＣ符号化装置１２０ｂが、量子化器１１８からの量子化された変換係数データを可逆符号化する。即ち、ＣＡＶＬＣ符号化装置１２０ａが選択されたときには、ＣＡＶＬＣ符号化装置１２０ａが、インター符号化のモード情報及び量子化器１１８からの量子化変換係数をＣＡＶＬＣ方式で可逆符号化する。ＣＡＢＡＣ符号化装置１２０ｂが選択されたときには、ＣＡＢＡＣ符号化装置１２０ｂが、インター符号化のモード情報及び量子化器１１８からの量子化変換係数をＣＡＢＡＣ方式で可逆符号化する。エントロピー符号化装置１２０はまた、動き予測装置１３２による動き予測値、例えば動きベクトルを出力符号データに多重化して、外部に出力する。動きベクトルは、例えば、画像符号化単位のヘッダに格納される。
【００１４】
ＣＡＶＬＣの動作を簡単に説明する。図６は、ＣＡＶＬＣ符号化装置１２０ａの概略構成ブロック図を示す。符号化モード情報（インター符号化／イントラ符号化等）、量子化器１１８からの量子化変数係数及び動き予測装置１３２からの動き情報が、多値シンボルとしてとして、ＶＬＣ算出装置１５０とコンテキスト保存装置１５２に入力される。
【００１５】
ＶＬＣ算出装置１５０は、従来のＭＰＥＧなどで採用されている可変長符号化と同様に、入力された多値シンボルに対して可変長符号テーブルを適用し、その結果をビットストリームとして出力する。コンテキスト保存装置１５２は、ＶＬＣ算出装置１５０で符号化された情報、例えば、処理中のブロックだけでなく既に処理されたブロックにおける各ブロック内の非０係数の個数（ゼロラン）、及び直前に符号化された係数の値などを保存する。ＶＬＣ算出装置１５０は、コンテキスト保存装置１５２に保存される情報をもとに、シンボルに適用する可変長符号テーブルを切り替えることが可能である。コンテキスト保存装置１５２は、リセット時などに用いられるコンテキストの初期状態も保存する。
【００１６】
図７は、ＣＡＢＡＣ符号化装置１２０ｂの概略構成ブロック図を示す。符号化モード情報（インター符号化／イントラ符号化等）、量子化器１１８からの量子化変換係数、及び動き予測装置１３２からの動き情報が、多値シンボルとして２値化装置１６０とコンテキスト計算装置１６４に入力される。２値化装置１６０は、入力された多値シンボルを、予め決められた一定規則にもとづき任意の長さの２値シンボル列に変換する。
【００１７】
コンテキスト計算装置１６４は、２値化装置１６０に入力されるシンボル情報と２値化装置１６０から出力される２値信号をもとにコンテキストを計算し、２値信号の発生確率を２値算術符号化装置１６２に入力する。コンテキスト計算部１６４はまた、符号化処理中に随時更新されるコンテキストとリセット時などに用いられるコンテキストの初期状態を保存する。
【００１８】
２値算術符号化装置１６２は、コンテキスト計算装置１６４からの２値信号発生確率に従い、２値化装置１６０からの２値シンボル列に対して２値算術符号化を適用し、その結果をビットストリームとして出力する。
【特許文献１】特開２００５−３４８２０７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
ＣＡＶＬＣよりもＣＡＢＡＣの方が一般に、画質が良いが、演算量が多く、高速で消費電力の多い演算装置を必要とする。具体的には、エントロピー符号化にＣＡＢＡＣを用いた場合、２値シンボル列の１ビットごとに複雑な処理が必要となる。また発生確率をコンテキストの状況に応じて切り替える必要があるので、現ビットの符号化が終わらないと次のビットの符号化を行えない。
【００２０】
マクロブロック単位の発生符号量を基に量子化スケールコードを決定する量子化制御装置１４２は、量子化対象マクロブロック直前までのＣＡＢＡＣ発生符号量を知ることができない状況で、適切な量子化制御を行うことができない。例えば、画面の中央からＣＡＢＡＣを適用しようとする場合、前提として、画面上部のＣＡＢＡＣ結果から算出された発生確率が分からなければならないので、ＣＡＢＡＣの並列化が困難となる。
【００２１】
量子化対象マクロブロック直前までのＣＡＢＡＣ発生符号量を算出するには、ＣＡＢＡＣ自体のクロックを上げることが必要となるが、これは消費電力を増大させる。
【００２２】
そこで、本発明は、上記の課題を鑑み、２種類のエントロピー符号化を協調動作させ、画質と量子化制御に関して良好な性能を得ることのできる符号化装置及び方法並びに画像符号化装置を提示することを目的とする。
【課題を解決するための手段】
【００２３】
上記の目的を達成するために、本発明に係る符号化装置は、入力データ列を量子化パラメータに従い量子化する量子化部と、当該量子化部の出力データ列を第１の符号化方式でエントロピー符号化する第１のエントロピー符号化部と、当該量子化部の出力データ列を当該第１の符号化方式とは異なる第２の符号化方式でエントロピー符号化する第２のエントロピー符号化部と、当該第１のエントロピー符号化部で生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御部とを具備することを特徴とする。
【００２４】
本発明に係る画像符号化装置は、上述の符号化装置を具備し、ＭＰＥＧ４／ＡＶＣ  Ｈ．２６４に従い画像データを符号化することを特徴とする。
【００２５】
本発明に係る符号化方法は、入力データ列を量子化パラメータに従い量子化する量子化ステップと、当該量子化ステップで量子化されたデータ列を第１の符号化方式でエントロピー符号化する第１のエントロピー符号化ステップと、当該量子化ステップで量子化されたデータ列を当該第１の符号化方式とは異なる第２の符号化方式でエントロピー符号化する第２のエントロピー符号化ステップと、当該第１のエントロピー符号化ステップで生成される符号列の発生符号量に従い、当該量子化パラメータを制御する制御ステップとを具備することを特徴とする。
【発明の効果】
【００２６】
本発明では、ＣＡＢＡＣを始めとして、発生確率をコンテキストの状況に応じて切り替える必要があるエントロピー符号化を使用する符号化装置においても、適切な量子化制御を行うことができるようになる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を参照して、本発明の実施例を詳細に説明する。
【実施例１】
【００２８】
図１は、本発明の実施例１である符号化装置１０の概略構成ブロック図である。実施例１では、ＣＡＢＡＣの出力符号データを出力用に使用し、ＣＡＶＬＣの出力符号データを量子化制御に使用する。
【００２９】
符号化装置１０は、カレントピクチャ（を記憶するフレームメモリ）１２、加算器１４、整数変換装置１６、量子化器１８、エントロピー符号化装置２０、逆量子化器２２、逆整数変換装置２４、加算器２６、ループフィルタ２８、参照ピクチャ（を記憶するフレームメモリ）３０、動き予測装置３２、動き補償装置３４、イントラ予測装置３６、スイッチ（又はセレクタ）３８、符号量補正装置４０及び量子化制御装置４２からなる。エントロピー符号化装置２０は、ＣＡＶＬＣ符号化装置２０ａとＣＡＢＡＣ符号化装置２０ｂを具備する。
【００３０】
本実施例によるイントラ符号化時の動作を説明する。イントラ符号化では、スイッチ３８は、イントラ予測装置３６の出力を選択している。画面並べ替えを終えたカレントピクチャ１２から画像データがマクロブロック単位で読み出され、加算器１４とイントラ予測装置３６に供給される。イントラ予測装置３６は、先行して符号化及び復号化された同じ画面内の画像データから予測値（例えば、直前ラインの同じ水平位置の画素のデータ）を抽出又は算出する。スイッチ３８は、イントラ予測装置３６の出力画像データを選択して、加算器１４及び加算器２６に供給する。
【００３１】
加算器１４は、カレントピクチャ１２からのカレント画像からイントラ予測装置３６からの予測画像データを減算し、差分画像データを整数変換装置１６に供給する。整数変換装置１６は、加算器１４からの差分画像データを離散コサイン変換し、変換係数を量子化器１８に供給する。量子化器１８は、整数変換装置１６からの変換係数を量子化制御装置４２により指定される量子化スケールで量子化する。
【００３２】
エントロピー符号化装置２０は、同時に動作可能なＣＡＶＬＣ符号化装置２０ａとＣＡＢＡＣ符号化装置２０ｂを具備する。ＣＡＶＬＣ符号化装置２０ａは、量子化器１８からの量子化変換係数をＣＡＶＬＣ方式で可逆符号化し、その生成符号又は発生符号量を符号量補正装置４０に供給する。符号量補正装置４０は、ＣＡＶＬＣ符号化装置２０ａから発生符号が入力するときには、入力する符号からＣＡＶＬＣ符号化装置２０ａの発生符号量を算出する。本実施例では、ＣＡＶＬＣ符号化装置２０ａは、量子化器１８の量子化スケールの制御のために利用される。ＣＡＶＬＣ符号化装置２０ａの出力符号データによる量子化器１８の量子化スケールの制御の詳細は、後述する。
【００３３】
ＣＡＶＬＣ符号化装置２０ａの符号化と同時に、ＣＡＢＡＣ符号化装置２０ｂが、量子化器１８からの量子化変換係数をＣＡＢＡＣ方式で可逆符号化する。ＣＡＢＡＣ符号化装置２０ｂの出力符号データは、符号化装置１０の出力として外部に出力される。エントロピー符号化装置２０から外部に出力されるビットストリームのヘッダには、エントロピー符号化としてＣＡＢＡＣを示す情報が挿入される。
【００３４】
局所符号化のために、逆量子化器２２は、量子化器１８の出力データを逆量子化し、逆整数変換装置２４は、逆量子化器２２の出力データを逆離散コサイン変換する。加算器２６は、逆整数変換装置２４の出力にスイッチ３８からの予測値を加算する。これにより、符号化された画像データがローカルで復号されて、イントラ予測装置３６に供給される。
【００３５】
加算器２６の出力データは、ループフィルタ２８にも供給される。ループフィルタ２８はマクロブロック境界及び整数変換ブロック境界のブロック歪を除去する。ループフィルタ２８の出力画像は、インター符号化の際の参照ピクチャ３０として、利用される。
【００３６】
インター符号化時の動作を説明する。インター符号化では、スイッチ３８は、動き補償装置３４の出力を選択している。
【００３７】
インター符号化の場合、画像並べ替えを終えたカレントピクチャ１２から画像データがマクロブロック単位で読み出され、加算器１４及び動き予測装置３２に供給される。動き予測装置３２は、参照ピクチャ３０から参照すべき画面の画像データを読み出し、カレントピクチャ１２からの画像データと参照ピクチャ３０からの画像データからブロック単位で画像の動きを予測する。そして、予測結果、例えば、動きベクトルを動き補償装置３４に供給する。動き補償装置３４は、動き予測装置３２からの動き予測結果に従い、参照ピクチャ３０からの参照画像の動きを補償して、予測画像データを生成する。スイッチ３８は動き補償装置３４からの予測画像データを選択し、加算器１４及び加算器２６に供給する。
【００３８】
加算器１４は、カレントピクチャ１２からのカレント画像から動き補償装置３４からの予測画像データを減算し、差分画像データを整数変換装置１６に供給す。整数変換装置１６は、加算器１４からの差分画像データを離散コサイン変換し、変換係数を量子化器１８に供給する。量子化器１８は、整数変換装置１６からの変換係数を量子化制御装置４２により指定される量子化スケールで量子化する。
【００３９】
エントロピー符号化装置２０では、ＣＡＶＬＣ符号化装置２０ａが、量子化器１８からの量子化変換係数をＣＡＶＬＣ方式で可逆符号化し、同時に、ＣＡＢＡＣ符号化装置２０ｂが、量子化器１８からの量子化変換係数をＣＡＢＡＣ方式で可逆符号化する。ＣＡＶＬＣ符号化装置２０ａは、生成符号又は発生符号量を符号量補正装置４０に供給する。ＣＡＢＡＣ符号化装置２０ｂの出力符号データは、符号化装置１０の出力として外部に出力される。
【００４０】
エントロピー符号化装置２０は更に、動き予測装置３２による動き予測値、例えば動きベクトルを、ＣＡＢＡＣ符号化装置２０ｂの出力符号データに多重化して、外部に出力する。動きベクトルは、例えば、画像符号化単位のヘッダに格納される。エントロピー符号化装置２０から外部に出力されるビットストリームのヘッダには、エントロピー符号化としてＣＡＢＡＣを示す情報が挿入される。
【００４１】
符号量補正装置４０と量子化制御装置４２による量子化器１８の量子化パラメータの制御動作を説明する。
【００４２】
例えば、Ｎ（Ｎは１以上の整数）番目のマクロブロックが符号化装置１０の符号化対象となっているとき、ＣＡＶＬＣ符号化装置２０ａは、直前の（Ｎ−１）番目のマクロブロックの量子化変換係数のＣＡＶＬＣ符号化を完了しており、その発生符号量を符号量補正装置４０に出力している。符号量補正装置４０は、ＣＡＶＬＣ符号化装置２０ａからの発生符号量に所定の正の乗数（補正係数）αを乗算して、量子化制御装置４２に供給する。
【００４３】
符号量補正装置４０の乗数αについては、ＣＡＶＬＣ符号化装置２０ａの符号化効率とＣＡＢＡＣ符号化装置２０ｂの符号化効率を予め調べておき、その比により補正係数αを決定し、符号量補正装置４０にセットしておく。これにより、符号量補正装置４０から量子化制御装置４２に供給される発生符号量は、実質的には、ＣＡＢＡＣ符号化装置２０ｂによる符号化の発生符号量に相当する量を示す。
【００４４】
量子化制御装置４２は、符号量補正装置４０からの発生符号量情報に従い、公知の方法、例えば、ＭＰＥＧ２テストモデル、いわゆるＴＭ５のステップ２で採用される方法、又はその他の方法で、量子化器１８の量子化パラメータを決定する。
【００４５】
ちなみに、ＣＡＢＡＣ符号化装置２０ｂは、コンテキストの状況に応じて発生確率を切り替える必要があるので、直前のマクロブロックの発生符号量が未算出になっている可能性がある。直前のマクロブロックの発生符号量が未定の場合、適切な量子化パラメータを決定できない。
【実施例２】
【００４６】
図２は、本発明の実施例２の符号化装置１０ａの概略構成ブロック図である。図１と同じ構成要素には同じ符号を付してある。符号化装置１０ａでは、ＣＡＶＬＣ符号化の発生符号量の乗数、即ち補正係数αを、同じマクロブロックに対するＣＡＶＬＣとＣＡＢＡＣの直近の発生符号量の比率から求めている点が、符号化装置１０とは異なる。変更部分を詳細に説明する。
【００４７】
比率算出装置５０には、ＣＡＶＬＣ符号化装置２０ａから生成符号又は発生符号量情報が入力し、ＣＡＢＡＣ符号化装置２０ｂから生成符号又は発生符号量情報が入力する。比率算出装置５０は、符号化装置２０ａ，２０ｂから生成符号が入力するときには、その入力生成符号から発生符号量を算出する。そして、比率算出装置５０は、同じ画像に対するＣＡＶＬＣ符号化装置２０ａの発生符号量とＣＡＢＡＣ符号化装置２０ｂの発生符号量の比率を算出し、得られた比率を符号量補正装置５２に供給する。
【００４８】
例えば、Ｎ番目のマクロブロックが符号化対象であるとき、ＣＡＶＬＣ符号化では、（Ｎ−１）番目のマクロブロックまでの発生符号量が確定しているが、ＣＡＢＡＣ符号化に関しては、Ｍ番目のマクロブロックまでの発生符号量子しか確定していない。Ｍは（Ｎ−１）以下である。従って、比率算出装置５０は、ＣＡＢＡＣ符号化で発生符号量が確定している最新のマクロブロック、ここではＭ番目のマクロブロックについて、ＣＡＶＬＣ符号化装置２０ａの発生符号量とＣＡＢＡＣ符号化装置２０ｂの発生符号量の比率を算出する。
【００４９】
符号量補正装置５２には、ＣＡＶＬＣ符号化装置２０ａから生成符号又は発生符号量が入力する。符号量補正装置５２は、符号化装置２０ａから生成符号が入力するときには、その入力生成符号から発生符号量を算出する。符号量補正装置５２は、ＣＡＶＬＣ符号化装置２０ａの発生符号量に比率算出装置５０からの比率αを乗算し、乗算結果を量子化制御装置４２に供給する。量子化制御装置４２は、実施例１で説明したのと同様に、符号量補正装置５２からの制御値（ＣＡＶＬＣ発生符号量×α）に従い、量子化器１８の量子化パラメータを制御する。
【００５０】
本実施例の目的からは、符号化装置２０ａは、発生符号量を示す情報を比率算出装置５０及び符号量補正装置５２に供給し、符号化装置２０ｂは、発生符号量を示す情報を比率算出装置５０に供給するのが好ましいことは明らかである。
【実施例３】
【００５１】
図３は、本発明の実施例３である符号化装置１０ｂの概略構成ブロック図である。図１と同じ構成要素には同じ符号を付してある。符号化装置１０ｂでは、符号化装置１０ａに更に、ＣＡＶＬＣ符号とＣＡＢＡＣ符号の内で、符号量の少ない方を選択して出力する手段を追加してある。変更部分を詳細に説明する。
【００５２】
エントロピー符号化装置６０は、同時に動作可能なＣＡＶＬＣ符号化装置６０ａとＣＡＢＡＣ符号化装置６０ｂを具備する。ＣＡＶＬＣ符号化装置６０ａは、量子化器１８からの量子化変換係数をＣＡＶＬＣ方式で可逆符号化し、その生成符号をバッファ６２ａに供給し、発生符号量を示す情報を比率算出装置６８及び符号量補正装置４０に供給する。ＣＡＶＬＣ符号化装置６０ａの出力には、エントロピー符号化としてＣＡＶＬＣ符号化を示す情報、及びインター符号化の場合の動き情報が含まれる。
【００５３】
ＣＡＶＬＣ符号化装置６０ａの符号化と同時に、ＣＡＢＡＣ符号化装置６０ｂが、量子化器１８からの量子化変換係数をＣＡＢＡＣ方式で可逆符号化し、その生成符号をバッファ６２ｂに供給する。そして、発生符号量を示す情報を比率算出装置６８及び符号量補正装置４０に供給する。ＣＡＢＡＣ符号化装置６０ｂの出力には、エントロピー符号化としてＣＡＢＡＣ符号化を示す情報、及びインター符号化の場合の動き情報が含まれる。
【００５４】
バッファ６２ａ，６２ｂはＦＩＦＯ（Fist-In First-Out）メモリからなり、符号化装置６０ａ，６０ｂの生成符号を一時的に記憶して、スイッチ（又はセレクタ）６６に出力する。バッファ６２ａ，６２ｂの容量は、例えば、１スライス期間以上であればよい。符号量比較回路６４は、バッファ６２ａ，６２ｂに記憶される符号量をマクロブロック単位で比較し、より少ない符号量の符号を選択するようにスイッチ６６を制御する。スイッチ６は、符号量比較回路６４からの切替え制御信号に従い、バッファ６２ａ又は同６２ｂの出力符号を選択する。この符号量比較回路６４及びスイッチ６６により、ＣＡＶＬＣ符号化とＣＡＢＡＣ符号化の内で、発生符号量の少ない方の符号化データを出力できる。
【００５５】
比率算出装置６８及び符号量補正装置７０は、それぞれ、実施例２の比率算出装置５０及び符号量補正装置５２と同様に機能する。実施例２の場合と同様に、比率算出装置６８及び符号量補正装置７０は、符号化装置６０ａ，６０ｂから発生符号量を示す情報ではなく、生成符号が入力する場合には、入力した生成符号からマクロブロック単位の発生符号量を算出する。
【００５６】
比率算出装置６８は、同じ画像に対するＣＡＶＬＣ符号化装置６０ａの発生符号量とＣＡＢＡＣ符号化装置６０ｂの発生符号量の比率を算出し、得られた比率を符号量補正装置７０に供給する。
【００５７】
符号量補正装置７０は、ＣＡＶＬＣ符号化装置６０ａの発生符号量に比率算出装置６８からの比率αを乗算し、乗算結果を量子化制御装置４２に供給する。量子化制御装置４２は、実施例１で説明したのと同様に、符号量補正装置５２からの制御値（ＣＡＶＬＣ発生符号量×α）に従い、量子化器１８の量子化パラメータを制御する。
【００５８】
なお、出力用にＣＡＶＬＣが選択された場合、量子化制御に使用する発生符号量は、実際に出力する符号量を用いているために補正する必要がなくなる。よって、その場合はαを１とする制御を行う。
【００５９】
本実施例３においても、符号化装置６０ａは、発生符号量を示す情報を比率算出装置６８及び符号量補正装置７０に供給し、符号化装置６０ｂは、発生符号量を示す情報を比率算出装置６８に供給するのが好ましいことは明らかである。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施例１の符号化装置の概略構成ブロック図である。
【図２】本発明の実施例２の符号化装置の概略構成ブロック図である。
【図３】本発明の実施例３の符号化装置の概略構成ブロック図である。
【図４】従来の符号化装置の概略構成ブロック図である。
【図５】符号化ストリームの構成図である。
【図６】ＣＡＶＬＣ符号化装置の概略構成ブロック図である。
【図７】ＣＡＢＡＣ符号化装置の概略構成ブロック図である。
【符号の説明】
【００６１】
１０，１０ａ，１０ｂ  符号化装置
１２  カレントピクチャ（を記憶するフレームメモリ）
１４  加算器
１６  整数変換装置
１８  量子化器
２０  エントロピー符号化装置
２０ａ  ＣＡＶＬＣ符号化装置
２０ｂ  ＣＡＢＡＣ符号化装置
２２  逆量子化器
２４  逆整数変換装置
２６  加算器
２８  ループフィルタ
３０  参照ピクチャ（を記憶するフレームメモリ）
３２  動き予測装置
３４  動き補償装置
３６  イントラ予測装置
３８  スイッチ（又はセレクタ）
４０  符号量補正装置
４２  量子化制御装置
５０  比率算出装置
５２  符号量補正装置
６０  エントロピー符号化装置
６０ａ  ＣＡＶＬＣ符号化装置
６０ｂ  ＣＡＢＡＣ符号化装置
６２ａ，６２ｂ  バッファ
６４  符号量比較装置
６６  スイッチ
６８  比率算出装置
７０  符号量補正装置
１１０  符号化装置
１１２  カレントピクチャ（を記憶するフレームメモリ）
１１４  加算器
１１６  整数変換装置
１１８  量子化器
１２０  エントロピー符号化装置
１２０ａ  ＣＡＶＬＣ符号化装置
１２０ｂ  ＣＡＢＡＣ符号化装置
１２２  逆量子化器
１２４  逆整数変換装置
１２６  加算器
１２８  ループフィルタ
１３０  参照ピクチャ（を記憶するフレームメモリ）
１３２  動き予測装置
１３４  動き補償装置
１３６  イントラ予測装置
１３８  スイッチ（又はセレクタ）
１４２  量子化制御装置
１５０  ＶＬＣ算出装置
１５２  コンテキスト保存装置
１６０  ２値化装置
１６２  ２値算出符号化装置
１６４  コンテキスト計算装置
【図１】
2008160402.tif 000003
【図２】
2008160402.tif 000004
【図３】
2008160402.tif 000005
【図４】
2008160402.tif 000006
【図５】
2008160402.tif 000007
【図６】
2008160402.tif 000008
【図７】
2008160402.tif 000009