(57)【要約】【課題】  効率的な計算量で各スライスに最適な初期化テーブルを選択し、これにより画像の符号化効率を高め、高画質な画像圧縮を可能とする算術符号化装置及び算術符号化方法を提供する。【解決手段】  すべての初期化テーブルインデックスを使用してビットカウント部４０８に予め記憶された所定のビット数に対応するシンボルを符号化するまでスライスを符号化した場合の発生ビット数を初期化テーブルインデックスとともに初期化テーブルインデックス記憶部４０９に記憶させる。スライス符号化部２０６はこの発生ビット数に基づいてコンテキストの初期化に使用する初期化テーブルインデックスを決定し、決定した初期化テーブルインデックスに基づいてコンテキストの初期化に使用する初期化テーブルを決定する。【選択図】  図１
2006279333.tif 000002
【特許請求の範囲】
【請求項１】
画像データから生成された算術符号化用のシンボルを、このシンボルの状態を示すコンテキストを用いてスライス単位で算術符号化する算術符号化装置において、
符号化すべき画像のスライス開始位置を記憶するスライス開始位置記憶手段と、
前記算術符号化に用いるＣＡＢＡＣ法におけるすべての初期化テーブルインデックスを使用して、所定のビット数に対応するシンボルを符号化するまでスライスを符号化した場合の発生ビット数を計算するビットカウント手段と、
前記発生ビット数と前記初期化テーブルインデックスとを記憶する初期化テーブルインデックス記憶手段と、
前記コンテキストを初期化する際に使用する初期化テーブルを決定するために用いる１つの初期化テーブルインデックスを、前記初期化テーブルインデックスの中から前記発生ビット数に基づいて決定する初期化テーブルインデックス決定手段とを有し、
前記初期化テーブルインデックス決定手段で決定した前記初期化テーブルインデックスに基づいて初期化テーブルを決定してコンテキストの初期化を行い、前記スライス開始位置記憶手段に記憶された前記スライス開始位置に基づいてスライスを開始位置に復帰させてから算術符号化を行うことを特徴とする算術符号化装置。
【請求項２】
画像データから生成された算術符号化用のシンボルを、このシンボルの状態を示すコンテキストを用いてスライス単位で算術符号化する算術符号化方法において、
符号化すべき画像のスライス開始位置を記憶するスライス開始位置記憶工程と、
前記算術符号化に用いるＣＡＢＡＣ法におけるすべての初期化テーブルインデックスを使用して、所定のビット数に対応するシンボルを符号化するまでスライスを符号化した場合の発生ビット数を計算するビットカウント工程と、
前記発生ビット数と前記初期化テーブルインデックスとを記憶する初期化テーブルインデックス記憶工程と、
前記コンテキストを初期化する際に使用する初期化テーブルを決定するために用いる１つの初期化テーブルインデックスを、前記初期化テーブルインデックスの中から前記発生ビット数に基づいて決定する初期化テーブルインデックス決定工程とを有し、
前記初期化テーブルインデックス決定工程で決定した前記初期化テーブルインデックスに基づいて初期化テーブルを決定してコンテキストの初期化を行い、前記スライス開始位置記憶工程で記憶された前記スライス開始位置に基づいてスライスを開始位置に復帰させてから算術符号化を行うことを特徴とする算術符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化技術で使用される算術符号化装置及び算術符号化方法に関する。
【背景技術】
【０００２】
近年、ＭＰＥＧ−２やＭＰＥＧ−４に代表される動画像符号化方式が、ビデオカメラやディスクレコーダ等、一般家庭用機器にも幅広く使用されている。
【０００３】
しかし、これらの方法は割り当てる符号量が圧縮画像の質を大きく左右し、特に低ビットレートで激烈な画像の劣化を伴う。今後、高解像度の動画像符号化はより一般的になると考えられ、より高い符号化効率を持つ符号化方式が強く求められている。
【０００４】
国際標準として規格化が進んでいるＭＰＥＧ４−ＡＶＣ（ＩＳＯ／ＩＥＣ  １４４９６−１０  ＭＰＥＧ−４  Ｐａｒｔ１０  Ａｄｖａｎｃｅｄ Ｖｉｄｅｏ Ｃｏｒｄｉｎｇ）／Ｈ．２６４もその一つである。ＭＰＥＧ４−ＡＶＣ／Ｈ．２６４は、ＭＰＥＧ−２と比べ２倍から３倍の符号化効率を持つことが知られており、今後普及が期待されている。
【０００５】
ＭＰＥＧ４−ＡＶＣ／Ｈ．２６４は、ＭＰＥＧ−２等と同様、直交変換と量子化に基づく圧縮を行うものであるが、エントロピー符号化法として、算術符号化法の一種であるＣＡＢＡＣ（Ｃｏｎｔｅｘｔ−ｂａｓｅｄ Ａｄａｐｔｉｖｅ Ｂｉｎａｒｙ Ａｒｉｔｈｍｅｔｉｃ Ｃｏｄｉｎｇ）が採用されている点が大きく異なる（非特許文献１参照）。
【０００６】
算術符号化法は、０から１の領域をシンボルの発生確率に応じて分割するという操作を再帰的に行うものである。
【０００７】
図３は算術符号化の過程を示す説明図である。現在注目している領域中の値を符号化データとする。初期状態１０１において、０から１の範囲を持つ領域がシンボルＡ，Ｂ，Ｃそれぞれの発生確率で分割される。ｐ（Ｘ）をシンボルＸの発生確率とすると、シンボルＡには０からｐ（Ａ）の範囲の領域が、シンボルＢにはｐ（Ａ）からｐ（Ａ＋Ｂ）の範囲の領域が、シンボルＣにはｐ（Ａ＋Ｂ）から１（＝ｐ（Ａ＋Ｂ＋Ｃ））の範囲の領域が対応する。
【０００８】
ここで、シンボルＡを符号化すると、処理は範囲０からｐ（Ａ）の領域１０２へと移る。そして、次のシンボルの符号化に移る前に、領域１０２をシンボルＡ，Ｂ，Ｃの発生確率に応じて分割する。シンボルＡには０からｐ（Ａ）×ｐ（Ａ）の範囲の領域が、シンボルＢにはｐ（Ａ）×ｐ（Ａ）からｐ（Ａ）×ｐ（Ａ＋Ｂ）の範囲の領域が、シンボルＣにはｐ（Ａ）×ｐ（Ａ＋Ｂ）からｐ（Ａ）（＝ｐ（Ａ）×ｐ（Ａ＋Ｂ＋Ｃ））の範囲の領域がそれぞれ対応する。
【０００９】
ここで、シンボルＢを符号化すると、処理は範囲ｐ（Ａ）×ｐ（Ａ）からｐ（Ａ）×ｐ（Ａ＋Ｂ）の領域１０３に移る。ここで符号化を終了する場合は領域１０３に含まれる値、例えば最小値ｐ（Ａ）×ｐ（Ａ）を符号化データとする。符号化を続ける場合も以上と同様の動作を再帰的に行う。
【００１０】
算術符号化法で高圧縮するためにはシンボルの発生確率を正確に捉える必要がある。ＣＡＢＡＣではコンテキストと呼ばれる変数を複数個用意し、符号化する系列に応じてコンテキストを切り替えることによりシンボルの発生確率の予測精度を向上させ、符号化効率を向上させている。
【００１１】
図４（ａ）は系列が切り替わるときのコンテキストの切り替えを示す図、図４（ｂ）は同じ系列内でのコンテキストの変化を示す図である。
【００１２】
図４（ａ）に示すように、発生シンボルはシンボルＡ，Ｂ，Ｃの３種類とする。系列Ａ１，Ａ２はシンボルＡの発生確率が飛びぬけて高い系列、系列Ｂ１，Ｂ２はシンボルＢの発生確率が飛びぬけて高い系列、系列Ｃ１はシンボルＣの発生確率が飛びぬけて高い系列である。
【００１３】
それぞれの系列に対応したコンテキストｃｔｘＡ、ｃｔｘＢ、ｃｔｘＣを用意する。系列Ａ１，Ａ２に対してはコンテキストｃｔｘＡを使用し、系列Ｂ１，Ｂ２に対してはコンテキストｃｔｘＢを使用し、系列Ｃ１に対してはコンテキストｃｔｘＣを使用して符号化を行う。こうすることにより、系列が切り替わる時に符号化効率が低下することを防ぐことができる。
【００１４】
また、同じ系列内では各シンボルの発生確率を適応的に変化させる。図４（ｂ）に示すように、系列Ａ３を符号化しているとし、ある時点でコンテキストｃｔｘＡがｐ（Ａ）＝７４／１００，ｐ（Ｂ）＝１５／１００，ｐ（Ｃ）＝１１／１００の状態であったとする。ここでシンボルＡを符号化した場合のコンテキストｃｔｘＡはｐ（Ａ）＝７５／１０１，ｐ（Ｂ）＝１５／１０１，ｐ（Ｃ）＝１１／１０１の状態に推移する。
【００１５】
次に、ＣＡＢＡＣの動作を簡単に説明する。図５は従来のＣＡＢＡＣ周辺の構成図である。図５に示すように、ＣＡＢＡＣ部２００は、コンテキスト初期化部２０１と、算術符号化部２０２と、コンテキストメモリ２０３と、状態推移部２０４と、確率推定部２０５とからなる。ＣＡＢＡＣ部２００はスライス符号化部２０６により制御される。
【００１６】
コンテキスト初期化部２０１はコンテキストメモリ２０３の初期化を行う。コンテキスト初期化部２０１は３種類の初期化テーブル０，１，２を有し、算術符号化部２０２から入力された初期化テーブルインデックスを使用して、コンテキストメモリ２０３の初期化に用いる初期化テーブルを決定する。図６は実際にＣＡＢＡＣで使用されている初期化テーブルの一部である。
【００１７】
算術符号化部２０２は符号化すべきシンボル算術符号化し、符号化データをスライス符号化部２０６に出力する。
【００１８】
コンテキストメモリ２０３は、各コンテキストインデックスに対して、ＭＰＳ（Ｍｏｓｔ Ｐｒｏｂａｂｌｅ Ｓｙｍｂｏｌ：優勢シンボル）値、状態を記憶しておく。
【００１９】
状態推移部２０４は、算術符号化部２０２がひとつシンボルを符号化するたびにコンテキストの更新を行う。
【００２０】
確率推定部２０５は、コンテキストメモリ２０３から入力された状態に基づいてＬＰＳ（Ｌｅａｓｔ Ｐｒｏｂａｂｌｅ Ｓｙｍｂｏｌ：劣勢シンボル）幅を求め、算術符号化部２０２へ出力する。
【００２１】
スライス符号化部２０６はＣＡＢＡＣ部２００を制御し、ＣＡＢＡＣ部２００が符号化を行うために必要な情報（初期化テーブルインデックス等）を保持している。ＣＡＢＡＣ部２００に符号化要求を出力し、ＣＡＢＡＣ部２００から符号化データを受け取る。
【００２２】
まず、コンテキストの初期化の動作を説明する。コンテキストの初期化は算術符号化部２０２にスライス符号化部２０６から初期化要求が入力されることにより行われる。算術符号化部２０２は、初期化要求が入力されるとコンテキスト初期化部２０１に対して初期化要求と、スライス符号化部２０６から入力された初期化テーブルインデックスと、SliceQP_Yとを出力する。
【００２３】
それに対し、コンテキスト初期化部２０１は初期化テーブルインデックスに基づいてコンテキストの初期化に使用する初期化テーブルを選択し、後述する図７に示すコンテキスト初期化プロセスに従いコンテキストの初期化を行う。コンテキストの初期値はコンテキストメモリ２０３に記憶される。
【００２４】
次に、ＣＡＢＡＣの符号化の動作を説明する。算術符号化部２０２に符号化すべきシンボルと、符号化に使用するコンテキストインデックスとがスライス符号化部２０６から入力されると、符号化プロセスが開始される。
【００２５】
算術符号化部２０２はコンテキストインデックスでコンテキストメモリ２０３をアドレッシングする。そして、算術符号化部２０２はコンテキストメモリ２０３からコンテキストインデックスに対応するＭＰＳ値を受け取り、コンテキストメモリ２０３は状態を確率推定部２０５へ出力する。
【００２６】
確率推定部２０５はコンテキストメモリ２０３から入力された状態に基づいてＬＰＳ幅を求め、これを算術符号化部２０２へ出力する。
【００２７】
算術符号化部２０２は、算術符号化部２０２の内部状態、符号化すべきシンボル、ＬＰＳ幅、ＭＰＳ値に基づいて算術符号化を行い、生成した符号化データを出力する。そして、算術符号化部２０２は、ひとつシンボルを符号化するたびに状態推移部２０４に更新指示を出力し、状態推移部２０４はこの更新指示に従いコンテキストメモリを更新する。
【００２８】
ところで、ＣＡＢＡＣではスライスと呼ばれる単位で処理を行う。図８（ａ）はスライスの説明図、図８（ｂ）はスライスの先頭でのコンテキストの初期化の説明図である。
【００２９】
図８（ａ）に示すように、各スライス中にはmb_type，mvd，coeff等、それぞれ特徴の異なる系列が複数存在し、各系列に対応したコンテキスト群を使用して符号化を進める。
【００３０】
図８（ａ）において、スライスｎ中の系列mb_type３０１，３０４，３０６に対しては、コンテキスト群ctx_mb_type３０９が、系列mvd３０２，３０７に対しては、コンテキスト群ctx_mvd３１０が、系列coeff３０３，３０５，３０８に対してはコンテキスト群ctx_coeff３１１が使用される。その他の系列に対してもそれぞれ対応するコンテキスト群を用いて符号化を進める。
【００３１】
各スライスの先頭では各コンテキストの初期化を行う。コンテキストの初期化には図６に示す初期化テーブルを使用する。
【００３２】
図６において、ctxIdxはコンテキストインデックスであり、value of cabac_init_idcは初期化テーブルインデックスである。ＣＡＢＡＣでは３種類の初期化テーブル０，１，２が用意されており、それぞれのスライスに対し、使用する初期化テーブルを選択することができる。例えば図８（ｂ）に示すように、スライス３，４のコンテキスト初期化には初期化テーブル０を、スライス５，７のコンテキスト初期化には初期化テーブル１を、スライス６のコンテキスト初期化には初期化テーブル２を使用する。
【００３３】
図７はＣＡＢＡＣのコンテキスト初期化プロセスを示す図である。ここでClip（min，max，value）は、valueの値をmin以上max以下に制限するという操作である。もしvalue＜minであればvalueの値をminで置き換え、value＞maxであればvalueの値をmaxで置き換える。
【００３４】
SliceQP_y、cabac_init_idc（初期化テーブルインデックス）はスライス固有の値である。cabac_init_idcに基づいて初期化テーブル０，１，２を参照し、変数ｍ，ｎを取り出し、図７に示すコンテキスト初期化プロセスを実行し、変数valMPSとpStateIdxとを得る。valMPSはＭＰＳ値の初期値であり、pStateIdxは状態の初期値である。以上の操作をすべてのコンテキストに対して行う。
【非特許文献１】ＩＳＯ／ＩＥＣ  １４４９６−１０  ２００２
【発明の開示】
【発明が解決しようとする課題】
【００３５】
スライスのコンテキスト初期値（ＭＰＳ値の初期値、状態の初期値）は参照する初期化テーブルにより変化するため、初期化テーブルの選択はスライスの符号化効率に大きく影響する。このため、スライスで最大限の符号化効率を得るためには、そのスライスの性質に最も適した初期化テーブルを選択する必要がある。
【００３６】
しかしながら、スライスの性質は実際にそのスライスを符号化しなければ得ることができないため、スライスの性質に最も近い初期化テーブルを選択するためには、すべての初期化テーブルを用いてスライスすべてを符号化し、最も符号化効率に優れたテーブルを採用する必要がある。しかし、スライスの性質を得るためにスライス一つひとつをすべて符号化すると時間計算量及び空間計算量が多くなりすぎ、符号化効率の低下を招くという問題があった。
【００３７】
そこで本発明は、効率的な計算量で各スライスに最適な初期化テーブルを選択することができ、これにより画像の符号化効率を高め、高画質な画像圧縮を可能とする算術符号化装置及び算術符号化方法を提供することを目的とする。
【課題を解決するための手段】
【００３８】
本発明の算術符号化装置は、画像データから生成された算術符号化用のシンボルを、このシンボルの状態を示すコンテキストを用いてスライス単位で算術符号化する算術符号化装置において、符号化すべき画像のスライス開始位置を記憶するスライス開始位置記憶手段と、前記算術符号化に用いるＣＡＢＡＣ法におけるすべての初期化テーブルインデックスを使用して、所定のビット数に対応するシンボルを符号化するまでスライスを符号化した場合の発生ビット数を計算するビットカウント手段と、前記発生ビット数と前記初期化テーブルインデックスとを記憶する初期化テーブルインデックス記憶手段と、前記コンテキストを初期化する際に使用する初期化テーブルを決定するために用いる１つの初期化テーブルインデックスを、前記初期化テーブルインデックスの中から前記発生ビット数に基づいて決定する初期化テーブルインデックス決定手段とを有し、前記初期化テーブルインデックス決定手段で決定した前記初期化テーブルインデックスに基づいて初期化テーブルを決定してコンテキストの初期化を行い、前記スライス開始位置記憶手段に記憶された前記スライス開始位置に基づいてスライスを開始位置に復帰させてから算術符号化を行うことを特徴とする。
【００３９】
本発明の算術符号化方法は、画像データから生成された算術符号化用のシンボルを、このシンボルの状態を示すコンテキストを用いてスライス単位で算術符号化する算術符号化方法において、符号化すべき画像のスライス開始位置を記憶するスライス開始位置記憶工程と、前記算術符号化に用いるＣＡＢＡＣ法におけるすべての初期化テーブルインデックスを使用して、所定のビット数に対応するシンボルを符号化するまでスライスを符号化した場合の発生ビット数を計算するビットカウント工程と、前記発生ビット数と前記初期化テーブルインデックスとを記憶する初期化テーブルインデックス記憶工程と、前記コンテキストを初期化する際に使用する初期化テーブルを決定するために用いる１つの初期化テーブルインデックスを、前記初期化テーブルインデックスの中から前記発生ビット数に基づいて決定する初期化テーブルインデックス決定工程とを有し、前記初期化テーブルインデックス決定工程で決定した前記初期化テーブルインデックスに基づいて初期化テーブルを決定してコンテキストの初期化を行い、前記スライス開始位置記憶工程で記憶された前記スライス開始位置に基づいてスライスを開始位置に復帰させてから算術符号化を行うことを特徴とする。
【発明の効果】
【００４０】
本発明によれば、すべての初期化テーブルインデックスを用いて所定のビット数に対応するシンボルを符号化するまでスライスを符号化した場合の発生ビット数と初期化テーブルインデックスとを記憶し、この発生ビット数に基づいてコンテキストの初期化に使用する初期化テーブルインデックスを決定し、決定した初期化テーブルインデックスに基づいてコンテキストの初期化に使用する初期化テーブルを選択するので、比較的効率的な計算量で各スライスに最適な初期化テーブルを選択することができる。これにより、画像の符号化効率を高め、高画質な画像圧縮が可能となる。
【００４１】
また、スライス開始位置を記憶するので、実際に符号化すべき画像データを損なうことなく初期化テーブルの選択が可能となる。
【発明を実施するための最良の形態】
【００４２】
以下、本発明の算術符号化装置及び算術符号化方法を実施するための最良の形態について図面を参照して説明する。図１は本発明の一実施の形態の算術符号化装置の構成を示すブロック図である。本実施の形態の算術符号化装置は、ＣＡＢＡＣ部２００と、スライス符号化部２０６と、スライス開始位置記憶部４０７と、ビットカウント部４０８と、初期化テーブルインデックス記憶部４０９とからなり、ＣＡＢＡＣ部２００及びスライス符号化部２０６は、図５に示す従来のＣＡＢＡＣ周辺と同様の構成である。
【００４３】
スライス開始位置記憶部４０７は、符号化すべき画像の先頭位置を記憶する。本実施の形態では初期化テーブルを決定するためにスライスを符号化するという前処理を行うが、スライス開始位置記憶部４０７は、一度符号化したスライスを初期状態に復帰させるために、記憶した先頭位置をスライス符号化部２０６に出力する。
【００４４】
ビットカウント部４０８は前処理の長さを決定する。ビットカウント部４０８は予め前処理で符号化するシンボル数を所定値として保持している。また、前処理としてＣＡＢＡＣ部２００で符号化されたシンボルによる発生ビット数を計算して記憶し、スライス符号化部２０６に出力する。前処理は発生ビット数が所定値を上回るまで行われる。
【００４５】
初期化テーブルインデックス記憶部４０９には、ビットカウント部４０８に保持された所定の長さのシンボルが符号化された後、スライス符号化部２０６から発生符号化ビット数が入力される。すべての初期化テーブルインデックスに対して前処理が行われた後、一番発生符号化ビット数が少なかった初期化テーブルインデックスをそのスライスで使用する初期化テーブルインデックスとしてスライス符号化部２０６へ出力する。
【００４６】
ここで、図２を参照してコンテキストの初期化の動作を説明する。図２は図１に示す算術符号化装置のコンテキストの初期化の動作を示すフローチャートである。
【００４７】
まず、ステップＳ１０では、スライス符号化部２０６はスライス開始位置記憶部４０７にスライス開始位置情報を出力し、スライス開始位置を記憶させる。
【００４８】
ここで記憶されたスライス開始位置は、初期化テーブルインデックスが更新されて新たにスライスの先頭から符号化を開始するときにスライス開始位置記憶部４０７からスライス符号化部２０６に出力される。
【００４９】
次に、ステップＳ２０では、スライス符号化部２０６は初期化テーブルインデックスの初期化を行う。
【００５０】
次いで、ステップＳ３０では、スライス符号化部２０６は、後述のステップＳ４０，Ｓ５０で行う前処理が終了していない初期化テーブルインデックスがあるか否かの判定を行う。前処理が終了していない初期化テーブルインデックスがある（ＹＥＳ）場合はステップＳ４０に進み、ない（ＮＯ）場合はステップＳ８０に進む。
【００５１】
次に、ステップＳ４０では、コンテキストの初期化を行う。スライス符号化部２０６は算術符号化部２０２に初期化テーブルインデックスを出力し、算術符号化部２０２はこの初期化テーブルインデックスをコンテキスト初期化部２０１へ出力する。コンテキスト初期化部２０１は入力された初期化テーブルインデックスに基づいてコンテキストの初期化に使用する初期化テーブルを選択し、図７に示すコンテキスト初期化プロセスを実行し、コンテキストの初期値を求め、コンテキストメモリ２０３に出力する。
【００５２】
そして、ステップＳ５０では、スライス符号化部２０６は、ビットカウント部４０８に記憶されている所定数のシンボルを符号化するまで算術符号化部２０２にスライスの符号化を行わせ、生成された符号化データを受け取る。また、スライス符号化部２０６は、符号化されたシンボル数情報をビットカウント部４０８に出力して発生ビット数を計算させる。計算された発生ビット数は、ビットカウント部４０８からスライス符号化部２０６に出力される。そして、スライス符号化部２０６は、ビットカウント部４０８から入力された発生ビット数を初期化テーブルインデックスとともに初期化テーブルインデックス記憶部４０９に出力し、記憶させる。
【００５３】
次いで、ステップＳ６０では、スライス符号化部２０６は初期化テーブルインデックスの更新を行う。
【００５４】
そして、ステップＳ７０では、スライス開始位置を復帰する。スライス符号化部２０６は、ステップＳ１０でスライス開始位置記憶部４０７に記憶されたスライス開始位置を読み出す。その後、ステップＳ２０に戻り以降の処理を繰り返す。
【００５５】
ステップＳ８０では、スライス符号化部２０６は初期化テーブルインデックス記憶部４０９を参照し、最も発生ビットの少ない初期化テーブルインデックスをスライスの符号化で使用する初期化テーブルインデックスとして決定する。そして、スライス符号化部２０６は算術符号化部２０２に前処理終了指示を出力し、前処理を終了する。
【００５６】
この後、従来と同様に、ＣＡＢＡＣ部２００によりスライスの符号化を行う。
【００５７】
スライスの符号化において、初期化テーブルの違いが影響するのはコンテキストの初期値のみであるため、ある程度スライスが長ければコンテキストの最終状態は初期化テーブルの違いによる差はほとんどないと考えられる。コンテキストの初期状態はコンテキストの推移とは独立であるためである。
【００５８】
したがって、初期化テーブルの選択による初期状態の違いによって発生する符号化効率の差はコンテキストの推移が収束しきっていないスライス先頭付近での符号化効率の差による影響が大半であり、その影響の大きさはスライスの先頭からの距離が近いほど大きいと考えられる。
【００５９】
以上を考慮すると、初期化テーブルの選択による符号化効率の差はスライス先頭付近の符号化効率の差で近似できるといえる。
【００６０】
各初期化テーブルに対し、スライス先頭付近を符号化し、その符号化効率を比較するという初期化処理を組み込むことにより、比較的効率的な計算量でスライスの符号化効率を高めることができる。また、時間、空間的に制約がある場合であっても、その中で十分な効果を得ることが可能である。
【００６１】
初期化テーブルインデックス記憶部４０９には、それぞれの初期化テーブルインデックスを用いた際の発生ビット数が記憶されており、最も発生ビット数の少ない初期化テーブルインデックスを符号化に最適な初期化テーブルインデックスとして決定し、この初期化テーブルインデックスに基づいて最適な初期化テーブルを選択することが可能となる。
【００６２】
また、スライス開始位置記憶部４０７にスライス開始位置を記憶しておくことにより、実際に符号化すべき画像データを損なうことなく初期化テーブルの選択が可能となる。
【００６３】
なお、ビットカウント部４０８には任意のビット数を記憶させておくことができる。時間的、または空間的に余裕があれば大きな数値を記憶させておくことで、より正確な初期化テーブルの選択が可能となる。
【００６４】
初期化テーブルの選択によるスライスの符号化効率は、スライス先頭に近い部分ほど大きいという性質から、ビットカウント部４０８に大きな数値を記憶させておくことができない場合でも、比較的よい初期化テーブルを選択できる。
【００６５】
このように本実施の形態によれば、実際にスライスの一部を符号化したときの発生ビット数を使ってスライスで使用する初期化テーブルを選択することが可能となる。したがって、スライスの符号化に最適な初期化テーブルの選択が可能となり、符号化効率改善、または高画質化の効果を得ることができる。
【図面の簡単な説明】
【００６６】
【図１】本発明の一実施の形態の算術符号化装置の構成を示すブロック図である。
【図２】図１に示す算術符号化装置のコンテキストの初期化の動作を示すフローチャートである。
【図３】算術符号化の過程を示す説明図である。
【図４】（ａ）は系列が切り替わるときのコンテキストの切り替えを示す図、（ｂ）は同じ系列内でのコンテキストの変化を示す図である。
【図５】従来のＣＡＢＡＣ周辺の構成図である。
【図６】実際にＣＡＢＡＣで使用されている初期化テーブルの一部である。
【図７】ＣＡＢＡＣのコンテキスト初期化プロセスを示す図である。
【図８】（ａ）はスライスの説明図、（ｂ）はスライスの先頭でのコンテキストの初期化の説明図である。
【符号の説明】
【００６７】
２００    ＣＡＢＡＣ部
２０１    コンテキスト初期化部
２０２    算術符号化部
２０３    コンテキストメモリ
２０４    状態推移部
２０５    確率推定部
２０６    スライス符号化部
４０７    スライス開始位置記憶部
４０８    ビットカウント部
４０９    初期化テーブルインデックス記憶部
【図１】
2006279333.tif 000003
【図２】
2006279333.tif 000004
【図３】
2006279333.tif 000005
【図４】
2006279333.tif 000006
【図５】
2006279333.tif 000007
【図６】
2006279333.tif 000008
【図７】
2006279333.tif 000009
【図８】
2006279333.tif 000010