(57)【要約】課題  コンテキスト適応符号化においてシンボル生起確率の急激な変動による圧縮効率低下を防止できる映像符号化装置、映像符号化方法、映像符号化プログラム、また、対応する映像復号装置、映像復号方法、復号プログラムを得ること。解決手段  映像データ１０１をマクロブロック単位で入力され、量子化した後の符号データ１２３はＰＣＭ判定器１３９でＰＣＭモードであるか判定される。コンテキスト更新器３０１はＰＣＭ選択時にコンテキスト更新処理を行い、２値算術符号化の効率が改善される。第３のスイッチ１４８はＰＣＭモード非選択の有無によって２値算術符号化あるいはＰＣＭ符号化後の出力を切り替える。
2009031648.tif 000002
【特許請求の範囲】
【請求項１】
画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化手段と、
前記画像ブロックを前記第１の符号化手段と異なる符号化手法で符号化する第２の符号化手段と、
前記第１の符号化手段の出力する第１の出力データと、前記第２の符号化手段の出力する第２の出力データのいずれかを選択する出力データ選択手段と、
この出力データ選択手段が前記第２の出力データを選択したときに前記変換量子化値の２値算術符号化に用いるコンテキストを更新するコンテキスト更新手段と
を具備することを特徴とする映像符号化装置。
【請求項２】
前記コンテキスト更新手段は、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新する手段であることを特徴とする請求項１記載の映像符号化装置。
【請求項３】
前記コンテキスト更新手段は、前記変換量子化値の２値算術符号化に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とする手段であることを特徴とする請求項１記載の映像符号化装置。
【請求項４】
前記コンテキスト更新手段は、予め格納された所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術符号化に用いるコンテキストに上書きする手段であることを特徴とする請求項１記載の映像符号化装置。
【請求項５】
前記所定値の確率は、等確率であることを特徴とする請求項４記載の映像符号化装置。
【請求項６】
前記第１の符号化手段と異なる符号化手法は、ＰＣＭ符号化、ハフマン符号化あるいは２値算術符号化のいずれかであることを特徴とする請求項１記載の映像符号化装置。
【請求項７】
入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号手段と、
前記入力画像データを前記第１の復号手段と異なる復号手法で復号する第２の復号手段と、
前記第１の復号手段と第２の復号手段のいずれかを前記入力画像データの復号のために選択する復号選択手段と、
この復号選択手段が前記第２の復号手段を用いて復号することを選択したときに前記変換量子化値の２値算術復号に用いるコンテキストを更新するコンテキスト更新手段とを具備することを特徴とする映像復号装置。
【請求項８】
前記コンテキスト更新手段は、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新する手段であることを特徴とする請求項７記載の映像復号装置。
【請求項９】
前記コンテキスト更新手段は、前記変換量子化値の２値算術復号に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とする手段であることを特徴とする請求項７記載の映像復号装置。
【請求項１０】
前記コンテキスト更新手段は、予め格納された所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術復号に用いるコンテキストに上書きする手段であることを特徴とする請求項７記載の映像復号装置。
【請求項１１】
前記所定値の確率は、等確率であることを特徴とする請求項１０記載の映像復号装置。
【請求項１２】
前記第１の復号手段と異なる復号手法は、ＰＣＭ復号、ハフマン復号あるいは２値算術復号のいずれかであることを特徴とする請求項７記載の映像復号装置。
【請求項１３】
画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化ステップと、
前記画像ブロックを前記第１の符号化ステップと異なる符号化手法で符号化する第２の符号化ステップと、
前記第１の符号化ステップで出力する第１の出力データと、前記第２の符号化ステップで出力する第２の出力データのいずれかを選択する出力データ選択ステップと、
この出力データ選択ステップで前記第２の出力データを選択したときに前記変換量子化値の２値算術符号化に用いるコンテキストを更新するコンテキスト更新ステップとを具備することを特徴とする映像符号化方法。
【請求項１４】
前記第１の符号化ステップと異なる符号化手法は、ＰＣＭ符号化、ハフマン符号化あるいは２値算術符号化のいずれかの手法であることを特徴とする請求項１３記載の映像符号化方法。
【請求項１５】
入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号ステップと、
前記入力画像データを前記第１の復号ステップと異なる手法で復号する第２の復号ステップと、
前記第１の復号ステップと第２の復号ステップのいずれかを前記入力画像データの復号のために選択する復号選択ステップと、
この復号選択ステップで前記第２の復号ステップによって復号することを選択したときに前記変換量子化値の２値算術復号に用いるコンテキストを更新するコンテキスト更新ステップとを具備することを特徴とする映像復号方法。
【請求項１６】
前記第１の復号ステップと異なる復号手法は、ＰＣＭ復号、ハフマン復号あるいは２値算術復号のいずれかの手法であることを特徴とする請求項１５記載の映像復号方法。
【請求項１７】
コンピュータに、
画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化処理と、
前記画像ブロックを前記第１の符号化処理とは異なる符号化手法で符号化する第２の符号化処理と、
前記第１の符号化処理で出力する第１の出力データと、前記第２の符号化処理で出力する第２の出力データのいずれかを選択する出力データ選択処理と、
この出力データ選択処理で前記第２の出力データを選択したときに前記変換量子化値の２値算術符号化に用いるコンテキストを更新するコンテキスト更新処理とを実行させることを特徴とする映像符号化プログラム。
【請求項１８】
前記第１の符号化処理と異なる符号化手法は、ＰＣＭ符号化、ハフマン符号化あるいは２値算術符号化のいずれかの手法であることを特徴とする請求項１７記載の映像符号化プログラム。
【請求項１９】
コンピュータに、
入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号処理と、
前記入力画像データを前記第１の復号処理と異なる復号手法で復号する第２の復号処理と、
前記第１の復号処理と第２の復号処理のいずれかを前記入力画像データの復号のために選択する復号選択処理と、
この復号選択処理で前記第２の復号処理を用いて復号することを選択したときに前記変換量子化値の２値算術復号に用いるコンテキストを更新するコンテキスト更新処理とを実行させることを特徴とする映像復号プログラム。
【請求項２０】
前記第１の復号処理と異なる復号手法は、ＰＣＭ復号、ハフマン復号あるいは２値算術復号のいずれかの処理であることを特徴とする請求項１９記載の映像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえばハイビジョン放送等の高画質の映像符号化装置や映像復号装置に好適に使用することができる映像符号化装置、映像復号装置、映像符号化方法、映像復号方法、映像符号化あるいは復号プログラムに係わり、特にコンテキスト適応算術符号化に基づいた映像符号化装置、映像復号装置、映像符号化方法、映像復号方法、映像符号化あるいは復号プログラムに関する。
【背景技術】
【０００２】
映像処理装置のうちで、映像符号化装置は外部から映像データを入力して、これに対して所定の映像符号化方式に準拠した符号化処理を行うことで、ビットストリームを生成するようになっている。映像符号化装置に使用される映像符号化方式の代表的なものとして、Ｈ．２６４規格が存在している。Ｈ．２６４規格は、動画データの圧縮符号化方式の標準的な方式の一つとして、２００３年５月にＩＴＵ（International Telecommunication Union：国際電気通信連合）によって勧告されている。【０００３】
このＨ．２６４方式では、その参照モデルとしてジョイントモデル（Joint Model：ＪＭ）方式が知られている。このジョイントモデル方式を採り入れた映像符号化装置が、本発明に関連する技術として提案されている（たとえば特許文献１参照）。本明細書ではこの提案による映像符号化装置を関連技術の映像符号化装置と呼ぶことにする。【０００４】
図１７は、関連技術の映像符号化装置の構成を示したものである。関連技術の映像符号化装置１００は、入力画像としての映像データ１０１をマクロブロック単位で順次入力する予測・変換・量子化器１０２と、ＰＣＭ（Pulse Code Modulation）符号化器１０３および第１のスイッチ１０４を備えている。【０００５】
この図１７に示した関連技術の映像符号化装置１００に入力される映像データ１０１の映像信号フォーマットが、ＱＣＩＦ（Quarter Common Intermediate Format）であるものとする。ＱＣＩＦは、ＩＴＵの定めた映像信号フォーマットの１つである。【０００６】
図１８は、ＱＣＩＦの映像フォーマットの画像フレームを表わしたものである。ＱＣＩＦの画像フレームは、横１１個、縦９個のマクロブロックからなる。１枚の画像フレームは、順走査の場合に１枚のフレームピクチャで構成される。また、飛び越し走査の場合は２枚のフィールドピクチャで構成される。以後の説明では、これらのフレームピクチャを単純に「ピクチャ」と呼ぶことにする。【０００７】
ピクチャを構成する単位としてのマクロブロックは、それぞれ１６×１６画素の輝度画素と、８×８画素のＣｒ（色差信号）とＣｂ（色差信号）の色差画素で構成されている。図では、１６×１６画素のマクロブロックを１６分割した場合の４×４の画素ブロックについて輝度位置（ｘ）と色差位置（ｏ）を画素単位で表わしている。ピクチャ内のマクロブロックは、通常、ピクチャの左上から右下へのラスタスキャン順で符号化される。【０００８】
図１７に戻って説明する。マクロブロック単位で画像データ１０１を入力する予測・変換・量子化器１０２は、デコードピクチャバッファ１２１に格納されたデコード画像１２２から予測画像を生成し、入力画像としての画像データ１０１から予測画像を減じる処理を行う。この予測画像が減じられた入力画像は、周波数変換が適用されて、空間領域から周波数領域に変換された後、量子化され、符号データ１２３として出力されるようになっている。【０００９】
ここで、予測・変換・量子化器１０２には、レート制御器１２５からマクロブロック量子化パラメータ１２６Ｍが供給されるようになっている。予測・変換・量子化器１０２における前記した周波数領域に変換された入力画像の変換係数は、このレート制御器１２５から供給されるマクロブロック量子化パラメータ１２６Ｍに対応する量子化ステップサイズで、量子化されることになる。【００１０】
本明細書では、予測・変換・量子化器１０２における前記した周波数領域に変換された入力画像の変換係数を「レベル値」と呼ぶことにする。この「レベル値」は、特許請求の範囲における「変換量子化値」に対応するものである。【００１１】
ところで、レート制御器１２５は、多重化器１２７が関連技術の映像符号化装置１００から出力するビットストリーム１２８を監視する。そして、ビットストリーム１２８のビット数を目標のビット数に近づけるように量子化パラメータ１２６を制御する。具体的には、現在のビット数が目標のビット数よりも多ければ、量子化ステップサイズを大とする量子化パラメータ１２６を計算し、逆に現在のビット数が目標のビット数よりも少なければ、量子化ステップサイズを小とする量子化パラメータ１２６を計算する。【００１２】
このようにして計算された量子化パラメータ１２６は、スライスと呼ばれるマクロブロックの集合単位の先頭ではスライス量子化パラメータ１２６Ｓとして出力される。また、量子化パラメータ１２６は、マクロブロックの先頭でマクロブロック量子化パラメータ１２６Ｍとして出力されることになる。【００１３】
このうちのスライス量子化パラメータ１２６Ｓは、多重化器１２７に供給されると共に、コンテキスト初期値計算器１２９に供給されるようになっている。また、関連技術の映像符号化装置１００の外部に配置された図示しないモデル計算器から供給されるモデル・アイディ（model_id）１３１も、同様に多重化器１２７に供給されると共にコンテキスト初期値計算器１２９に供給されるようになっている。【００１４】
コンテキスト初期値計算器１２９は、レート制御器１２５から供給されるスライス量子化パラメータ１２６Ｓと外部のモデル計算器から供給されるモデル・アイディ１３１とに基づいて、２値算術符号化のコンテキストの初期値を計算する。そして、このコンテキストの初期値１３２をメモリ１３３に設定する。【００１５】
なお、スライス量子化パラメータ１２６Ｓは、前記した「ＩＴＵ−Ｔ  Ｈ．２６４  ｜  ＩＳＯ／ＩＥＣ  １４４９６−１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」における７．３．３節の「Ｓｌｉｃｅ  ｈｅａｄｅｒ  ｓｙｎｔａｘ」の「ｓｌｉｃｅ＿ｑｐ＿ｄｅｌｔａ」と、同７．３．２節の「Ｐｉｃｔｕｒｅ  ｐａｒａｍｅｔｅｒ  ｓｅｔ  ＲＢＳＰ  ｓｙｎｔａｘ」の「ｐｉｃ＿ｉｎｔ＿ｑｐ＿ｍｉｎｕｓ２６」に「２６」を加えた和に対応する。また、モデル・アイディ１３１は、同７．３．３節の「Ｓｌｉｃｅ  ｈｅａｄｅｒ  ｓｙｎｔａｘ」における「ｃａｂａｃ＿ｉｎｉｔ＿ｉｄｃ」に対応するものである。【００１６】
ところで、コンテキストとは、後に説明する２値シンボルに対する、優勢シンボル（Most Probable Symbol（ＭＰＳ））と、劣勢シンボル（Least Probable Symbol（ＬＰＳ））生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）の組である。また、２値算術符号化では、次の（１）式の関係が成り立つ。【００１７】
ＭＰＳ＝１−ＬＰＳ    ……（１）【００１８】
映像符号化方式のＨ．２６４規格では、コンテキストの「ｐＳｔａｔｅｉｄｘ」の数は６４である。２値算術符号化処理の過程で、この「ｐＳｔａｔｅｉｄｘ」に応じた劣勢シンボル生起確率（ｒＬＰＳ）がテーブルルックアップに基づいて設定される。これについての詳細は、前記した「ＩＴＵ−Ｔ  Ｈ．２６４  ｜  ＩＳＯ／ＩＥＣ  １４４９６−１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」における「９．３  ＣＡＢＡＣ  ｐａｒｓｉｎｇ  ｐｒｏｃｅｓｓ  ｆｏｒ  ｓｌｉｃｅ  ｄａｔａ」に記載されている。【００１９】
予測・変換・量子化器１０２から出力される符号データ１２３は２値化器１３５に供給されるようになっている。ここで、符号データ１２３は、予測画像の生成に係わる予測パラメータ、マクロブロック量子化パラメータおよび量子化された変換係数から構成されている。【００２０】
この説明を補足する。厳密には、マクロブロック量子化パラメータについて、直前マクロブロックのマクロブロック量子化パラメータが減じられた差分値が、符号データとして２値化器１３５に供給される。ただし、量子化パラメータの値がそのまま２値化されるか、あるいは差分値が２値化されるかということは、本発明にとってそれ程重要なことではない。そこでマクロブロック量子化パラメータ等の符号データ１２３が２値化器１３５に供給されるものとして説明を行った。【００２１】
一方、予測・変換・量子化器１０２から出力される前記したレベル値１３６は、局所デコーダ１３７に供給される。局所デコーダ１３７は、このレベル値１３６を逆量子化する。そして、逆周波数変換を適用して、レベル値１３６を元の空間領域の画像に戻す。ただし、通常、予測・変換・量子化器１０２の量子化の影響により非可逆な変換となる。最後に、局所デコーダ１３７は、前記した元の空間領域に戻された画像に、予測・変換・量子化器１０２から供給される予測画像を加えることで、局所デコード画像１３８を計算する。この局所デコード画像１３８は、第１のスイッチ１０４に供給される。【００２２】
ところで、符号データ１２３の供給を受けた２値化器１３５は、Ｈ．２６４規格で定められた手順に従って、これを２進列に変換し、２進列の各ビットを逐次出力する。以下の説明では、この２進列の各ビットを２値シンボル（ビン）と呼ぶことにする。なお、２値化器１３５の行う２進列変換の詳細は、前記した「ＩＴＵ−Ｔ  Ｈ．２６４  ｜  ＩＳＯ／ＩＥＣ  １４４９６−１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」における９．３節の「ＣＡＢＡＣ  ｐａｒｓｉｎｇ  ｐｒｏｃｅｓｓ  ｆｏｒ  ｓｌｉｃｅ  ｄａｔａ」に開示がある。【００２３】
ＰＣＭ判定器１３９は、２値化器１３５に供給される符号データ１２３を監視するようになっている。そして、１マクロブロックの符号データに対応するビン数が、予め定めた所定ビン数を超えるか否かを判断する。なお、２値化器１３５に供給される符号データ１２３を監視することは、２値化器１３５の出力側に接続された２値算術符号化器１４１へ入力されるビン数１４２を監視することと等価である。このビン数１４２は、前記した１マクロブロックの符号データ１２３に対応するビン数を２値算術符号化したビット数が、非圧縮の入力１マクロブロックのビット数を超える場合のビンの個数である。【００２４】
本明細書では、以後、この非圧縮の入力１マクロブロックに相当するビット数を、所定ビット数と呼ぶ。Ｈ．２６４規格では、入力映像データが４：２：０の場合、この所定ビット数は３２００ビットである。【００２５】
ＰＣＭ判定器１３９は、監視の結果として、１マクロブロックの符号データ１２３に対応するビン数が所定ビン数を超えない場合、ＰＣＭモード非選択を制御信号１４４として出力する。これに対して、１マクロブロックの符号データ１２３に対応するビン数が所定ビン数を超える場合、ＰＣＭモード選択をこの制御信号１４４に出力する。【００２６】
制御信号１４４は、第１のスイッチ１０４と、２値算術符号化器１４１と、コンテキストモデリング器１４６と、第２および第３のスイッチ１４７、１４８のそれぞれに供給されるようになっている。このうち２値算術符号化器１４１は、制御信号１４４によってＰＣＭモード選択が通知された場合と、ＰＣＭモード非選択が通知された場合でその動作が異なるようになっている。【００２７】
まず、制御信号１４４によってＰＣＭモード選択が通知された場合、２値算術符号化器１４１は、これに接続された第１バッファ１５１と第２バッファ１５２のうちの第１バッファ１５１に対してデータ１５３を出力する。すなわち、まず、ＰＣＭモードに対応する予測パラメータのビンを、コンテキストモデリング器１４６から供給されるコンテキスト１５４に基づいて２値算術符号化する。次に、現在の２値算術符号化器１４１のレンジをフラッシュして、第１バッファ１５１に出力する。最後に、必要な分だけの「０」のビットを出力することで、第１バッファ１５１に出力されたビット列をバイトアラインする。なお、ＰＣＭモードに対応する予測パラメータのビンは一意に定まる値であるため、２値算術符号化器１４１自身がそのビンを生成して２値算術符号化するものとしている。【００２８】
一方、制御信号１４４によってＰＣＭモード非選択が通知された場合、２値算術符号化器１４１は、第２バッファ１５２に対して出力を行う。２値算術符号化器１４１は、２値化器１３５から逐次供給されるビン１４２を、コンテキストモデリング器１４６から供給されるコンテキスト１５４に基づいて２値算術符号化する。そして、そのビット出力１５６を第２バッファ１５２に書き込む。【００２９】
なお、２値算術符号化器１４１による前記した２値算術符号化で、コンテキストモデリング器１４６から供給されるコンテキスト１５４は、２値算術符号化対象のビン１４２に応じて逐次更新される。おおまかには、Ｈ．２６４規格で優勢シンボル（ＭＰＳ）とビンが等しい場合、劣勢シンボル生起確率（ｒＬＰＳ）が下がるように劣勢シンボル生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）を更新する。また、優勢シンボル（ＭＰＳ）とビンが等しくない場合には、劣勢シンボル生起確率（ｒＬＰＳ）が上がるように劣勢シンボル生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）を更新する。また、優勢シンボル（ＭＰＳ）とビンが等しくない場合で、なおかつ、劣勢シンボル生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）が「０」、すなわち劣勢シンボル生起確率（ｒＬＰＳ）が最大となっている場合には、優勢シンボル（ＭＰＳ）を反転する。この点についての詳細は、前記した「ＩＴＵ−Ｔ  Ｈ．２６４  ｜  ＩＳＯ／ＩＥＣ  １４４９６−１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」における「９．３  ＣＡＢＡＣ  ｐａｒｓｉｎｇ  ｐｒｏｃｅｓｓ  ｆｏｒ  ｓｌｉｃｅ  ｄａｔａ」に記載されている。【００３０】
このように２値算術符号化器１４１は、入力ビンに応じて各コンテキスト１５４を更新（学習）することで、入力ビンの生起確率に合致したエントロピ符号化が可能になる。【００３１】
コンテキストモデリング器１４６は、２値算術符号化器１４１に供給されるビン１４２に対応するコンテキスト１５４をメモリ１３３から逐次、読み出す。そして、このコンテキスト１５４を２値算術符号化器１４１に供給する、２値算術符号化器１４１によって学習されたコンテキストはメモリ１３３に格納される。【００３２】
一方、ＰＣＭ符号化器１０３は、映像データ１０１をマクロブロック単位で入力して、この入力マクロブロックの画素値をＰＣＭ符号化（非エントロピ符号化）する。このＰＣＭ符号化出力１５７は第３バッファ１５８に出力される。【００３３】
なお１マクロブロックについてのＰＣＭ符号化のビット数は、その画素値を８ビットとすると、３８４（画素）と８ビットの積であり、３０７２ビットとなる。厳密には、ＰＣＭ符号化を指定するためのヘッダビット数がこの３０７２ビットに加算されるが、これによる合計ビット数は前記した所定ビット数以下となる。また、ヘッダビット数は、Ｈ．２６４規格のＢスライスにおける８ビン分のビット数が最大値となる。【００３４】
第１のスイッチ１０４は、制御信号１４４によってＰＣＭモード選択が通知された場合、デコードピクチャバッファ１２１に入力画像としての映像データ１０１を供給する。一方、制御信号１４４によってＰＣＭモード非選択が通知された場合、第１のスイッチ１０４は、局所デコーダ１３７から出力される局所デコード画像１３８を選択して、これをデコードピクチャバッファ１２１に供給する。デコードピクチャバッファ１２１は、第１のスイッチ１０４を介して入力される画像を、以後の符号化のためにデコード画像として格納することになる。【００３５】
第２のスイッチ１４７の方は、制御信号１４４によってＰＣＭモード選択が通知された場合にのみ、多重化器１２７に、第１バッファ１５１の出力データ１６１を供給する。すなわち制御信号１４４によってＰＣＭモード非選択が通知された場合には、第１バッファ１５１の出力データ１６１を多重化器１２７に供給しない。【００３６】
第３のスイッチ１４８は、制御信号１４４によってＰＣＭモード非選択が通知された場合、第２バッファ１５２の出力データ１６２を多重化器１２７に供給する。また、制御信号１４４によってＰＣＭモード選択が通知された場合には、第３バッファ１５８の出力データ１６３を多重化器１２７に供給することになる。【００３７】
多重化器１２７は、スライス量子化パラメータ１２６Ｓ、外部のモデル計算器から供給されるモデル・アイディ（model_id）１３１、ならびに第２および第３のスイッチ１４７、１４８を介して入力される出力データ１６１と出力データ１６２、１６３のうちの一方を多重化して、ビットストリーム１２８として出力することになる。
【特許文献１】特開２００４−１３５２５１号公報（第０００５段落）
【発明の開示】
【発明が解決しようとする課題】
【００３８】
以上説明した関連技術の映像符号化装置１００では、２値算術符号化あるいは、ＰＣＭ符号化をマクロブロック単位で選択して符号化することができる。したがって、あるマクロブロックの符号データに対する２値算術符号化のビット数が前記した所定ビット数を超えても、ＰＣＭ符号化を選択することによって、マクロブロックの出力ビット数をこの所定ビット数以下とすることを保証することができる。【００３９】
ところで、あるマクロブロックの符号データに対する２値算術符号化のビット数が前記した所定ビット数を超える要因の一つは、過去に学習されたコンテキストのシンボル生起確率がこのマクロブロックの符号データのビンの生起確率に合致しないことにある。すなわち、あるマクロブロックでシンボル生起確率が急激に変動したとする。この場合、このマクロブロックの符号データに対する２値算術符号化のビット数が前記した所定ビット数を超えるため、これがシンボル生起確率とビンの生起確率の合致しない要因の一つとなる。具体的には、変換係数の最高周波数成分のみに有意なレベル値を持つマクロブロックが連続して２値算術符号化された後に、変換係数のすべての周波数成分に有意なレベル値を持つマクロブロックが入力された場合を一例として挙げることができる。ここで、有意なレベル値とは、零よりも大きな値の絶対値を持つレベル値をいう。【００４０】
関連技術の映像符号化装置１００では、ＰＣＭ符号化を選択した場合に、レベル値に関するコンテキストを学習することができない。このため、変換係数のすべての周波数成分に有意なレベル値を持つマクロブロックが突如入力されてＰＣＭ符号化を選択したとし、その後に、再び変換係数のすべての周波数成分に有意なレベル値が発生するマクロブロックが入力されても、コンテキストが未学習である。この結果、後者のマクロブロックについても効率的に２値算術符号化をすることができない。【００４１】
このように関連技術の映像符号化装置１００では、シンボル生起確率の急激な変動を原因として符号化効率が低下するという問題があった。また、以上の説明では映像符号化についての考察を行ったが、シンボル生起確率の急激な変動が生じたときの画像データを復号する際にも同様の問題があった。【００４２】
そこで本発明の目的は、コンテキスト適応符号化においてシンボル生起確率の急激な変動による圧縮効率低下を防止できる映像符号化装置、映像符号化方法、映像符号化プログラム、また、対応する映像復号装置、映像復号方法、復号プログラムを提供することにある。
【課題を解決するための手段】
【００４３】
本発明による映像符号化装置は、画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化手段と、前記した画像ブロックを前記した第１の符号化手段とは異なる符号化手法で符号化する第２の符号化手段と、第１の符号化手段の出力する第１の出力データと、第２の符号化手段の出力する第２の出力データのいずれかを選択する出力データ選択手段と、この出力データ選択手段が第２の出力データを選択したときに変換量子化値の２値算術符号化に用いるコンテキストを更新するコンテキスト更新手段とを含む。【００４４】
すなわち本発明では、画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化手段と、これ以外の符号化を行う第２の符号化手段を設けておき、出力データ選択手段が第２の出力データを選択したときに変換量子化値の２値算術符号化に用いるコンテキストを更新する。これによって、シンボル生起確率の急激な変動に起因する符号化効率低下を回避することができる。【００４５】
また、本発明による映像復号装置は、入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号手段と、入力画像データを第１の復号手段と異なる復号手法で復号する第２の復号手段と、第１の復号手段と第２の復号手段のいずれかを入力画像データの復号のために選択する復号選択手段と、この復号選択手段が第２の復号手段を用いて復号することを選択したときに変換量子化値の２値算術復号に用いるコンテキストを更新するコンテキスト更新手段とを含む。【００４６】
すなわち本発明では、入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号手段とこれ以外の復号を行う第２の復号手段を設けておき、復号選択手段が第２の復号手段を用いて復号することを選択したときに変換量子化値の２値算術復号に用いるコンテキストを更新するようにしている。これにより、シンボル生起確率の急激な変動によってマクロブロックを符号化した際に、変動したシンボル生起確率に合致するようなコンテキスト更新を適用しながら、符号化されたビットストリームを復号することができる。【００４７】
また、本発明による映像符号化方法は、画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化ステップと、画像ブロックを第１の符号化ステップとは異なる符号化手法で符号化する第２の符号化ステップと、第１の符号化ステップで出力する第１の出力データと、第２の符号化ステップで出力する第２の出力データのいずれかを選択する出力データ選択ステップと、この出力データ選択ステップで第２の出力データを選択したときに変換量子化値の２値算術符号化に用いるコンテキストを更新するコンテキスト更新ステップとを有する。【００４８】
すなわち本発明では、画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化ステップと、これ以外の符号化を行う第２の符号化ステップを設けておき、出力データ選択ステップで第２の出力データを選択したときに変換量子化値の２値算術符号化に用いるコンテキストを更新する。これによって、シンボル生起確率の急激な変動に起因する符号化効率低下を回避することができる。【００４９】
また、本発明による映像復号方法は、入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号ステップと、入力画像データを第１の復号ステップと異なる復号手法で復号する第２の復号ステップと、第１の復号ステップと第２の復号ステップのいずれかを入力画像データの復号のために選択する復号選択ステップと、この復号選択ステップで第２の復号ステップによって復号することを選択したときに変換量子化値の２値算術復号に用いるコンテキストを更新するコンテキスト更新ステップとを有する。【００５０】
すなわち本発明では、入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号ステップとこれ以外の復号を行う第２の復号ステップを設けておき、復号選択ステップで第２の復号ステップを用いて復号することを選択したときに変換量子化値の２値算術復号に用いるコンテキストを更新するようにしている。これにより、シンボル生起確率の急激な変動によってマクロブロックを符号化した際に、変動したシンボル生起確率に合致するようなコンテキスト更新を適用しながら、符号化されたビットストリームを復号することができる。【００５１】
また、本発明による映像符号化プログラムは、コンピュータに、画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化処理と、画像ブロックを第１の符号化処理とは異なる符号化手法で符号化する第２の符号化処理と、第１の符号化処理で出力する第１の出力データと、第２の符号化処理で出力する第２の出力データのいずれかを選択する出力データ選択処理と、この出力データ選択処理で第２の出力データを選択したときに変換量子化値の２値算術符号化に用いるコンテキストを更新するコンテキスト更新処理とを実行させる。【００５２】
すなわち本発明では、コンピュータの実行する映像符号化プログラムとして、入力画像データをコンテキストに基づいて２値算術符号化して変換量子化値を符号化する第１の符号化処理と、これ以外の符号化を行う第２の符号化処理を設けておき、出力データ選択処理で第２の出力データを選択したときに変換量子化値の２値算術符号化に用いるコンテキストを更新する。これによって、シンボル生起確率の急激な変動に起因する符号化効率低下を回避することができる。【００５３】
また、本発明による映像復号プログラムは、コンピュータに、入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号処理と、入力画像データを第１の復号処理と異なる復号手法で復号する第２の復号処理と、第１の復号処理と第２の復号処理のいずれかを入力画像データの復号のために選択する復号選択処理と、この復号選択処理で第２の復号処理を用いて復号することを選択したときに変換量子化値の２値算術復号に用いるコンテキストを更新するコンテキスト更新処理とを実行させる。【００５４】
すなわち本発明では、コンピュータの実行する映像復号プログラムとして、入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号処理とこれ以外の復号を行う第２の復号処理を実行できるようにしておき、復号選択処理で第２の復号処理を用いて復号することを選択したときに変換量子化値の２値算術復号に用いるコンテキストを更新するようにしている。これにより、シンボル生起確率の急激な変動によってマクロブロックを符号化した際に、変動したシンボル生起確率に合致するようなコンテキスト更新を適用しながら、符号化されたビットストリームを復号することができる。
【発明の効果】
【００５５】
以上説明したように、本発明によれば、シンボル生起確率の急激な変動による圧縮効率低下を防止できる映像符号化および復号化が可能となる。
【図面の簡単な説明】
【００５６】
【図１】本発明の第１の実施の形態における映像符号化装置の構成を表わしたブロック図である。
【図２】第１の実施の形態におけるレベル値を示した説明図である。
【図３】図２に示したレベル値をフレームスキャンする順序を表わした説明図である。
【図４】図２に示したレベル値を図３に示したスキャン順に従って計算した結果を表わした説明図である。
【図５】「ｌｅｖｅｌ＿ｍｉｎｕｓ１」と対応する２進列の一例を表わした説明図である。
【図６】コンテキスト更新器によるコンテキストの更新処理の様子を表わした流れ図である。
【図７】状態インデックス遷移テーブルの内容を表わした説明図である。
【図８】ステップＳ４０５で説明した「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ」の更新処理の様子を表わした説明図である。
【図９】第１の実施の形態による効果を関連技術の装置と比較して示した特性図である。
【図１０】本発明の第１の実施の形態の映像符号化装置の変形例を表わしたブロック図である。
【図１１】本発明の第２の実施の形態の映像復号装置の構成を表わしたブロック図である。
【図１２】本発明の第３の実施の形態による映像符号化装置の構成を表わしたブロック図である。
【図１３】ＰＣＭ選択時のコンテキスト等確率更新器の処理の流れを示した流れ図である。
【図１４】本発明の第３の実施の形態の変形例の映像符号化装置の構成を表わしたブロック図である。
【図１５】本発明の第４の実施の形態の映像復号装置の構成を表わしたブロック図である。
【図１６】本発明の映像符号化装置と映像復号装置を備えた映像処理装置をソフトウェアで構成した場合のハードウェアの概略構成図である。
【図１７】本発明に関連する関連技術の映像符号化装置の構成を示したブロック図である。
【図１８】ＱＣＩＦの映像フォーマットの画像フレームを表わした説明図である。
【図１９】劣勢シンボル生起確率状態インデックスと劣勢シンボル生起確率の関係を表わした特性図である。
【図２０】劣勢シンボル生起確率状態インデックスとビット数の関係を表わした特性図である。
【発明を実施するための最良の形態】
【００５７】
本発明の実施の形態を説明する前に、本発明の原理を説明する。本発明では、シンボル生起確率の急激な変動によってマクロブロックをＰＣＭ符号化した際に、この変動したシンボル生起確率に合致するように、次マクロブロックの符号化開始前にレベル値に関する符号データのシンボルに対するコンテキストを更新するようにする。具体的には、コンテキストの劣勢シンボル生起確率状態インデックスを現在の番号よりも小さな番号にする。【００５８】
図１９は、劣勢シンボル生起確率状態インデックスと劣勢シンボル生起確率の関係を表わしたものである。この図１９から了解されるように、劣勢シンボル生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）をより小さな番号に更新することは、劣勢シンボル生起確率（ｒＬＰＳ）を高くすることと等価である。言い換えれば、劣勢シンボル生起確率を高くすることは、優勢シンボル生起確率を低くすることと等価である。【００５９】
更に、劣勢シンボル（Least Probable Symbol（ＬＰＳ））の定義により、劣勢シンボル生起確率（ｒＬＰＳ）は優勢シンボル生起確率よりも高くならない。このため、これらが等確率となることが劣勢シンボル生起確率の最大確率である。このため、本発明では、ＰＣＭ符号化した際に、レベル値に関する符号データのシンボルに対するコンテキストの劣勢シンボル生起確率を等確率に近づくように更新する。【００６０】
本発明では、このようにコンテキストを更新するので、変換係数のすべての周波数成分に有意なレベル値を持つマクロブロックが突如入力されてＰＣＭ符号化を選択した後に、再び変換係数のすべての周波数成分に有意なレベル値が発生するマクロブロックが後続して入力された場合であっても、コンテキストが学習されている。したがって、後続して入力されたマクロブロックをＰＣＭ符号化よりも少ないビット数の２値算術符号化によって符号化できることになる。【００６１】
図２０は、劣勢シンボル生起確率状態インデックスとビット数の関係を表わしたものである。図２０では、優勢シンボル（ＭＰＳ）を曲線２０１で表わし、劣勢シンボル（ＬＰＳ）を曲線２０２で表わしている。劣勢シンボル生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）を、より小さな番号に更新（学習）しておくことで、同じＬＰＳが入力されても少ないビット数となることになる。【００６２】
一方、変換係数のすべての周波数成分に有意なレベル値を持つマクロブロックが突如入力されてＰＣＭ符号化を選択した後に、変換係数の最高高周波数成分のみに有意なレベル値を持つマクロブロックが後続して入力されたとする。この場合であっても、後続マクロブロックのシンボル数が少ないので、コンテキストを学習しながら、ＰＣＭ符号化よりも少ないビット数の２値算術符号化によって符号化できる。【００６３】
＜第１の実施の形態＞
図１は、本発明の第１の実施の形態における映像符号化装置の構成を表わしたものである。図１に示す映像符号化装置３００で図１７と同一部分には同一の符号を付しており、これらの部分の説明を適宜省略する。映像符号化装置３００は、図１７に示した関連技術の映像符号化装置１００にコンテキスト更新器３０１を新たに配置した構成となっている。コンテキスト更新器３０１は、ＰＣＭ判定器１３９による符号データ１２３の監視の結果としての制御信号１４４を入力するようになっている。そして、これにより、１マクロブロックの符号データ１２３に対応するビン数が所定ビン数を超えることで、ＰＣＭモード選択が行われたことを制御信号１４４によって通知されると、コンテキスト更新器３０１はコンテキストを更新する処理を行う。すなわち、コンテキスト更新器３０１はＰＣＭモード選択の通知を受けると、コンテキストモデリング器１４６Ａを介して、メモリ１３３に格納されたレベル値に関する符号データのコンテキストを更新する。【００６４】
この実施の形態におけるレベル値に関する符号データとは、Ｈ．２６４規格における「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ、ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ、ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」である。それぞれを次に説明する。【００６５】
Ｈ．２６４規格では、４×４ブロックサイズの周波数変換を利用する。したがって、図１８に示した画像フレームを構成する１つ１つのマクロブロックについて見てみると、１つの４×４ブロックに対して、各周波数成分に対応する、１６個のレベル値がある。【００６６】
図２はレベル値の分布例を示したものである。４×４ブロックについて、水平成分をｕとし、垂直成分をｖとしている。また、図３は図２に示したレベル値をフレームスキャンする順序を表わしたものである。この図３で「０」〜「１５」はスキャン番号を示している。【００６７】
Ｈ．２６４規格で定められたスキャン順に従って、最高周波数成分「ｉ＝１５」を除いたスキャン番号（０≦ｉ≦１４）における小さいものから順に、スキャン番号「ｉ」に対応する周波数成分に有意なレベル値が存在するか否かを示すフラグを、「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｉ］」として符号化する。ただし、「ｉ＝０」は直流成分（ＤＣ）である。また、図２で「１」は有意なレベル値が存在することを示し、「０」は有意なレベル値が存在しないことを示す。更に、スキャン番号「ｉ」に対応する周波数成分の有意なレベル値がブロック中で最後の有意なレベル値であるか否かを示すフラグを、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｉ］」として符号化する。ただし、「１」はブロック中で最後の有意なレベル値であることを示し、「０」はブロック中で最後の有意なレベル値ではないことを示す。【００６８】
以上のような符号化を行った後、続いて、スキャン番号（０≦ｉ≦１５）の大きいものから順に、有意なレベル値が存在する周波数成分の有意なレベル値の絶対値から「１」を減じた値を「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」として符号化する。このとき、有意なレベル値の符合「ｓｉｇｎ」も、同時に符号化される。【００６９】
図４は、一例として、図２に示したレベル値を図３に示したスキャン順に従って計算した結果を表わしたものである。ここでは、「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」についての計算結果を示す欄を「ｓｉｇ」として表示し、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」についての計算結果を示す欄を「ｌａｓｔ」として表示している。また、「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」についての計算結果を示す欄を「ｌｅｖｅｌ＿ｍｉｎｕｓ１」として表示している。「ｓｉｇｎ（レベル値の±の符合）」の計算結果を示す欄は、そのまま「ｓｉｇｎ」と表示している。本明細書では、以後も、この簡略化された表記を利用する。この図４に示した計算結果で「−」と示されている箇所は、値が無効であることを示している。【００７０】
図４から明らかなように、「ｓｉｇ」、「ｌａｓｔ」および「ｓｉｇｎ」は２値シンボル（ビン）である。このうち「ｓｉｇ」と「ｌａｓｔ」のビンは、最高周波数成分を除くスキャン番号（０≦ｉ≦１４）に対応したコンテキストに基づいて２値算術符号化される。スキャン番号「ｉ」の「ｓｉｇ［ｉ］」に対応するコンテキストを「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」とし、「ｌａｓｔ［ｉ］」に対応するコンテキストを「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」とする。なお、「ｓｉｇｎ」は±の符合であるため、コンテキストを用いず、等確率の生起確率で２値算術符号化される。【００７１】
一方、「ｌｅｖｅｌ＿ｍｉｎｕｓ１」は、Ｈ．２６４規格の「ＵＥＧｋ  ｂｉｎａｒｉｚａｔｉｏｎ」に従って、２進列に変換される。「ＵＥＧｋ  ｂｉｎａｒｉｚａｔｉｏｎ」の詳細については、前記した「ＩＴＵ−Ｔ  Ｈ．２６４  ｜  ＩＳＯ／ＩＥＣ  １４４９６−１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」における「９．３  ＣＡＢＡＣ  ｐａｒｓｉｎｇ  ｐｒｏｃｅｓｓ  ｆｏｒ  ｓｌｉｃｅ  ｄａｔａ」に記載されている。【００７２】
図５は、「ｌｅｖｅｌ＿ｍｉｎｕｓ１」と対応するこのような２進列の一例を表わしたものである。この図５から、「ｌｅｖｅｌ＿ｍｉｎｕｓ１」の２進列の１番目のビンでは、コンテキスト番号が「０」から「４」の５種類のコンテキストに基づいて２値算術符号化されることが分かる。また、２番目から１４番目では別の５種類のコンテキストであるコンテキスト番号が「５」から「９」の５種類のコンテキストに基づいて２値算術符号化されることが分かる。ただし、図５では３番目から１４番目までのビンについては、２進列の２番目のビンに対して設定したコンテキストで２値算術符号化することを省略して示すために「←」という記号を使用している。【００７３】
また、「ｌｅｖｅｌ＿ｍｉｎｕｓ１」の２進列の１５番目以降のビンについては、コンテキストを用いず、等確率の生起確率で２値算術符号化することにしている。図５では、これを示すためにコンテキスト番号の欄に「ｅｑ」の文字を記している。以下の記述では、「ｌｅｖｅｌ＿ｍｉｎｕｓ１」の１番目から１４番目のビンの２値算術符号化に利用されるコンテキストを「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｉ］（０≦ｉ≦９）」と表記することにする。本発明に関連するＨ．２６４規格関係の説明は、ひとまず終了する。【００７４】
ところで、第１の実施の形態の映像符号化装置３００は、先に説明したようにコンテキスト更新器３０１を新たに配置した構成となっており、このコンテキスト更新器３０１とこれに関与する装置以外の動作は図１７に示した関連技術の映像符号化装置１００と同一である。そこで、ＰＣＭ選択時のコンテキスト更新器３０１の動作を次に説明し、関連技術の映像符号化装置１００と重複する動作の説明は省略することにする。【００７５】
図６は、コンテキスト更新器によるコンテキストの更新処理の様子を表わしたものである。ただし、コンテキストの更新に関して、図示しないデコーダ側の装置は、エンコーダとしてのこの映像符号化装置３００がＰＣＭ符号化を選択したときの各４×４ブロックでのレベル値の分布は分からない。そこで、ＰＣＭ符号化時には、エンコーダおよびデコーダ共に、すべての４×４ブロックの全周波数成分に有意なレベル値が発生したものと仮定する。【００７６】
コンテキストの更新開始に際して、４×４ブロックインデックス番号「ｂ４」を「０」に設定しておく。ここで４×４ブロックインデックス番号とは、図１８に示すマクロブロック内の４×４ブロック符号化順の番号である。説明を簡略化するために、輝度画素のみに着目することにする。【００７７】
ステップＳ４０１では、スキャン番号「ｉ」を「１５」と設定し、連続する絶対値が「１」のレベル値の個数である「ｃ１」を「１」に設定する。また、連続する絶対値が「２」以上のレベル値の個数「ｃ２」を「０」と設定し、次のステップＳ４０２に進む。なお、「ｃ１」および「ｃ２」は、最大で４個までカウントされる。【００７８】
次のステップＳ４０３以降の説明に際して、第１の実施の形態では、各４×４ブロックの最高周波数成分の「ｉ＝１５」から直流成分（ＤＣ）の「ｉ＝０」に向かって、「ｉ」成分のレベル値に対応する「ｃｏｎｔｅｘｔ＿ｓｉｇ」、「ｃｏｎｔｅｘｔ＿ｌａｓｔ」および「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」の各コンテキストを更新していることに注意すべきである。「ｉ＝０」から「ｉ＝１５」の昇順で行う通常の方向と異なり、降順である。【００７９】
このように第１の実施の形態で降順で「ｃｏｎｔｅｘｔ＿ｓｉｇ」および「ｃｏｎｔｅｘｔ＿ｌａｓｔ」を「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」と同時にコンテキスト更新できる原理は、次の条件が満足されているからである。
（ａ）すべての４×４ブロックの全周波数成分に有意なレベル値が発生したと仮定していること。
（ｂ）「ｓｉｇ［ｉ］」と「ｌａｓｔ［ｉ］」とが周波数成分別にコンテキストを保有していること。
これによって、「ｉ＝１５」から「ｉ＝０」の降順処理であっても、あるいは、通常の「ｉ＝０」から「ｉ＝１５」の昇順処理であっても、コンテキスト「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」および「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」を同様に更新することができる。【００８０】
ステップＳ４０２では、最高周波数成分でないか否かを判断するために、スキャン番号「ｉ」が１５未満であるか否かを判断する。最高周波数成分でなければ、すなわちスキャン番号「ｉ」が１５未満であれば（Ｙ）、ステップＳ４０３に進む。最高周波数成分であり、スキャン番号「ｉ」が１５あるいはそれ以上であれば、ステップＳ４０５に進むことになる。【００８１】
ステップＳ４０３では、スキャン番号「ｉ」に対する「ｓｉｇ［ｉ］」に対応するコンテキスト「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」を次の（２）式を用いて更新する。【００８２】
【数１】
2009031648.tif 000003
【００８３】
ただし、「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］．ｐＳｔａｔｅｉｄｘ」は「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」の劣勢シンボル生起確率状態インデックスであり、「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］．ＭＰＳ」は「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」の優勢シンボルである。また、「ｔｒａｎｓＩｄｘＬＰＳ［］」は、次に図７に示すＨ．２６４規格で定められる状態インデックス遷移テーブルであり、「ｔｒａｎｓＩｄｘＬＰＳ［ｘ］」は、図７の「ｐＳｔａｔｅｉｄｘ」行の値「ｘ」に対応する列の「ｔｒａｎｓＩｄｘＬＰＳ」の値を返すものとする。【００８４】
図７は、状態インデックス遷移テーブルの内容を表わしたものである。この図７から明らかなように、「ｔｒａｎｓＩｄｘＬＰＳ［ｘ］」は現在の「ｘ」以下の値を返す。【００８５】
図６に戻って説明を続ける。ステップＳ４０３における（２）式を用いた「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」の更新によって、優勢シンボル（ＭＰＳ）が「０」の場合には、「ｐＳｔａｔｅｉｄｘ」が小さな番号に近づくように更新される。つまり、劣勢シンボル（ＬＰＳ＝１）に対するコンテキストの劣勢シンボル生起確率が従来よりも高くなるように更新される。これによって、ＰＣＭ符号化されたマクロブロックの次マクロブロックの符号化で、劣勢シンボル（ＬＰＳ＝１）となる「ｓｉｇ＝１」の２値シンボルが大量に入力されても、劣勢シンボル生起確率を高く更新している分だけ、すなわち、シンボル生起確率の急激な変動に対応するだけ、２値算術符号化の効率が改善される。【００８６】
次のステップＳ４０４では、スキャン番号「ｉ」に対する「ｌａｓｔ［ｉ］」に対応するコンテキスト「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」を次の（３）式で更新する。【００８７】
【数２】
2009031648.tif 000004
【００８８】
ただし、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］．ｐＳｔａｔｅｉｄｘ」は「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」の劣勢シンボル生起確率状態インデックスであり、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］．ＭＰＳ」は「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」の優勢シンボルである。【００８９】
この（３）式による「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」の更新によって、優勢シンボル（ＭＰＳ）が「１」の場合には、「ｐＳｔａｔｅｉｄｘ」が小さな番号に近づくように更新される。つまり、劣勢シンボル（ＬＰＳ＝０）に対するコンテキストの劣勢シンボル生起確率が従来よりも高くなるように更新される。これによって、ＰＣＭ符号化されたマクロブロックの次マクロブロックの符号化で、劣勢シンボル（ＬＰＳ＝０）となる「ｌａｓｔ＝０」の２値シンボルが大量に入力されても、劣勢シンボル生起確率を高く更新している分だけ、すなわち、シンボル生起確率の急激な変動に対応するだけ、２値算術符号化の効率が改善される。【００９０】
次のステップＳ４０５では、前記した連続する絶対値が「１」のレベル値の個数「ｃ１」を「１」とし、連続する絶対値が２以上のレベル値の個数「ｃ２」、および、スキャン番号「ｉ」に対応する周波数成分のレベル値の絶対値から「１」を減じた値「ｌｅｖｅｌ＿ｍｉｎｕｓ１［ｉ］」とに基づいて、「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ」を更新する。【００９１】
図８は、ステップＳ４０５で説明した「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ」の更新処理の様子を表わしたものである。ただし、この処理では、ＰＣＭ符号化時に、デコーダ側には、エンコーダがＰＣＭ符号化を選択したときの各４×４ブロックでの各スキャン番号「ｉ」の「ｌｅｖｅｌ＿ｍｉｎｕｓ１［ｉ］」が分からないことを配慮している。すなわち、ＰＣＭ符号化時にはエンコーダおよびデコーダ共に、すべての４×４ブロックの各スキャン番号「ｉ」の「ｌｅｖｅｌ＿ｍｉｎｕｓ１［ｉ］」が「１４」であると仮定して図８の処理を行う。【００９２】
まず、ステップＳ４５１では、「ｘ＝Ｃ１」に対応するコンテキスト「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］」を、次の（４）式で更新する。【００９３】
【数３】
2009031648.tif 000005
【００９４】
ただし、「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］．ｐＳｔａｔｅｉｄｘ」は「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］」の劣勢シンボル生起確率状態インデックスであり、「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］．ＭＰＳ」は「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］」の優勢シンボルである。【００９５】
この（４）式による「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］」の更新によって、優勢シンボル（ＭＰＳ）が「０」の場合には、「ｐＳｔａｔｅｉｄｘ」が小さな番号に近づくように更新される。つまり、劣勢シンボル（ＬＰＳ＝１）に対するコンテキストの劣勢シンボル生起確率が従来よりも高くなるように更新される。これによって、ＰＣＭ符号化されたマクロブロックの次マクロブロックの符号化で、劣勢シンボル（ＬＰＳ＝１）となる「ビン＝１」の「ｌｅｖｅｌ＿ｍｉｎｕｓ１」の２進列の１番目の２値シンボルが大量に入力されても、劣勢シンボル生起確率を高く更新している分だけ、すなわち、シンボル生起確率の急激な変動に対応するだけ、２値算術符号化の効率が改善される。【００９６】
続くステップＳ４５２では、「ｌｅｖｅｌ＿ｍｉｎｕｓ１［ｉ］」が「０」よりも大きいか否かを判断する。「０」よりも大きければ（Ｙ）、ステップＳ４５３に進む。「０」であれば（ステップＳ４５２：Ｎ）、ステップＳ４５４に進む。ステップＳ４５３では、ループカウンタｌを次の（５）式で設定する。【００９７】
ｌ＝ｍｉｎ（１３，ｌｅｖｅｌ＿ｍｉｎｕｓ１［ｉ］−１）    ……（５）【００９８】
ただし、この（５）式の右辺の「１３」は、「ｌｅｖｅｌ＿ｍｉｎｕｓ１［ｉ］」の２進列の２番目から１４番目までのビンが同じコンテキストを利用することと、１５番目以降のビンではコンテキストを利用しないことを考慮した値である。ｌを「１３」よりも大きな値に設定しても意味がない。【００９９】
このステップＳ４５３の処理の次に行われるステップＳ４５５の処理では、「ｘ＝ｃ２＋５」に対応するコンテキスト「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］」を（４）式で更新する。ステップＳ４５５の「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｘ］」の更新によって、ＰＣＭ符号化されたマクロブロックの次マクロブロックの符号化で、劣勢シンボル（ＬＰＳ＝１）となる「ビン＝１」の「ｌｅｖｅｌ＿ｍｉｎｕｓ１」の２進列の２番目以降の２値シンボルが大量に入力されても、劣勢シンボル生起確率を高く更新している分だけ、すなわち、シンボル生起確率の急激な変動に対応するだけ、２値算術符号化の効率が改善される。【０１００】
続いて、ステップＳ４５６に進む。ステップＳ４５６では、ループカウンタｌが「０」であるか否かを判断する。「０」であれば（Ｙ）、ステップＳ４５７に進む。「０」でなければ（ステップＳ４５６：Ｎ）、ステップＳ４５８に進み、ループカウンタｌを１デクリメントして、ステップＳ４５５に戻る。【０１０１】
ステップＳ４５７では、「ｃ１」を「０」にリセットし、「ｃ２」については次の（６）式で更新して、図６のステップＳ４０５に関する処理を終了する（エンド）。。【０１０２】
ｃ２＝ｍｉｎ（４，ｃ２＋＋）      ……（６）【０１０３】
一方、ステップＳ４５４では、「ｃ２」を「０」にリセットし、更に「ｃ１」を次の（７）式で更新する。そして、図６のステップＳ４０５に関する処理を終了することになる（エンド）。【０１０４】
ｃ１＝ｍｉｎ（４，ｃ１＋＋）      ……（７）【０１０５】
なお、図８の処理では、（６）式や（７）式のように連続する絶対値が「１」のレベル値の個数「ｃ１」および連続する絶対値が２以上のレベル値の個数「ｃ２」を切り替えることによって、過去に処理をした「ｌｅｖｅｌ＿ｍｉｎｕｓ１」に応じたコンテキストモデリングが行われる。【０１０６】
図６に戻って説明を続ける。ステップＳ４０５の処理が終了したら、ステップＳ４０６の処理が行われる。ステップＳ４０６では、スキャン番号「ｉ」が「０」であるか否かを判断する。「０」であれば（Ｙ）、ステップＳ４０７に進む。これは現４×４ブロックの処理終了を意味する。「０」でなければ（ステップＳ４０６：Ｎ）、ステップＳ４０８に進み、スキャン番号「ｉ」を１デクリメントして、ステップＳ４０２に戻る。【０１０７】
ところで、ステップＳ４０７では、４×４ブロックインデックス番号「ｂ４」が「１５」であるか否かを判断する。「１５」であれば（Ｙ）、コンテキスト更新を終了する（エンド）。「１５」でなければ（ステップＳ４０７：Ｎ）、ステップＳ４０９に進み、４×４ブロックインデックス番号「ｂ４」を「１」インクリメントして、ステップＳ４０１に戻る。これは、マクロブロック内の次の４×４ブロックの処理に進むことを意味する。【０１０８】
以上、詳細に説明したようにコンテキスト更新器３０１がＰＣＭ選択時にコンテキスト更新処理を行う。これにより、ＰＣＭ符号化されたマクロブロックの次マクロブロックの符号化で、急激に変動した「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」および「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」に対応する２値シンボルの生起確率に適合するように、「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」にそれぞれ対応するコンテキストの劣勢シンボル生起確率状態インデックス「ｐＳｔａｔｅｉｄｘ」が更新される。【０１０９】
具体的には、「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」の各コンテキスト（ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］、０≦ｉ≦１４）については、その優勢シンボル（ＭＰＳ）が「０」の場合、その「ｐＳｔａｔｅｉｄｘ」が小さな番号に近づくように更新される。また、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」の各コンテキスト（ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］、０≦ｉ≦１４）については、その優勢シンボル（ＭＰＳ）が「１」の場合、その「ｐＳｔａｔｅｉｄｘ」が小さな番号に近づくように更新される。更に、「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」の各コンテキスト（ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］、０≦Ｃ≦９）については、その優勢シンボル（ＭＰＳ）が「０」の場合、その「ｐＳｔａｔｅｉｄｘ」が小さな番号に近づくように更新される。すなわち、コンテキスト更新器３０１は、「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」、「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」それぞれの劣勢シンボル生起確率を等確率に近づけるように更新する。この結果、次マクロブロックの符号化開始時に、コンテキストの優勢シンボルとは異なる劣勢シンボルの２値シンボルが大量に入力されても、劣勢シンボル生起確率を高く更新している分だけ、２値算術符号化の効率が改善される。【０１１０】
図９は、第１の実施の形態による効果を関連技術の装置と比較して示したものである。この図は、マクロブロック量子化パラメータ（ＱＰ）を横軸で表わし、２値算術符号化ビット数を縦軸で表わしている。マクロブロック量子化パラメータ（ＱＰ）は、Ｈ．２６４を用いるアプリケーションで多用される値である。【０１１１】
この図では、変換係数の最高周波数成分のみに有意なレベル値を持つマクロブロックが連続して２値算術符号化された後における、変換係数のすべての周波数成分に有意なレベル値を持つマクロブロックが入力されてＰＣＭ符号化を選択した場合を示している。すなわち、この図では、変換係数のすべての周波数成分に有意なレベル値を持つマクロブロックでの２値算術符号化ビット数を、マクロブロック量子化パラメータ（ＱＰ）ごとに示している。本実施の形態では、ＰＣＭ符号化を選択したときにコンテキストの更新を行うようになっている。この結果、本実施の形態では、急激に変動したシンボル生起確率に合致するようにコンテキストが更新されるので、前記した所定ビット数を表わした上限値３３１を超えることなく、曲線３３２で示したように２値算術符号化のビット数が達成される。【０１１２】
この図９では、参考のために関連技術の映像符号化装置１００（図１７）を用いた場合の２値算術符号化のビット数を曲線３３３で表わしている。関連技術の映像符号化装置１００を使用した場合には、ＰＣＭ符号化の選択時にコンテキストの更新を行なわない。すなわち、関連技術の映像符号化装置１００では、急激に変動したシンボル生起確率に合致するようにコンテキストが更新されないので、２値算術符号化のビット数が所定ビット数を越えてしまうことになる。両曲線３３２、３３３を対比すると、本発明によって、シンボル生起確率の急激な変動に起因するＰＣＭ符号化による符号化効率低下を回避することができることが分かる。【０１１３】
＜第１の実施の形態の変形例＞【０１１４】
図１０は、本発明の第１の実施の形態の映像符号化装置の変形例を表わしたものである。図１０に示す映像符号化装置３００Ｂで図１と同一部分には同一の符号を付しており、これらの部分の説明を適宜省略する。映像符号化装置３００Ｂは、図１に示した映像符号化装置３００と同様にコンテキスト更新器３０１を配置する一方、ＰＣＭ判定器１３９Ｂは符号データ１２３を監視せず、代わりに２値算術符号化器１４１のビット出力１５６としてのビット数を監視して前記した所定ビン数を超えるか否かを判断することでＰＣＭモードか否かの判定を行うようになっている。また、映像符号化装置３００Ｂでは、メモリ１３３が他のメモリとしての整合用メモリ５０１とデータの入出力を行うようになっている。【０１１５】
このような構成の映像符号化装置３００Ｂは、２値算術符号化器１４１、ＰＣＭ判定器１３９Ｂ、整合用メモリ５０１およびコンテキスト更新器３０１の動作のみが、図１に示した映像符号化装置３００と異なる。そこで、これらを中心に説明を行う。【０１１６】
２値算術符号化器１４１は、マクロブロックの最初のビンが入力された時点で、この最初のビンを２値算術符号化する直前の算術符号化器の状態を記憶して、２値算術符号化器１４１の内部の図示しないローカルメモリに保持する。これら記憶および保持する内容は、たとえば２値算術符号化器１４１のレンジや下限値である。２値算術符号化器１４１は、ＰＣＭ判定器１３９ＢからＰＣＭモードの選択が通知されない限り、マクロブロックのビンを絶えず２値算術符号化して、第２バッファ１５２に出力する。【０１１７】
このような処理が行われているとき、ＰＣＭ判定器１３９ＢからＰＣＭモードの選択を示す制御信号１４４Ｂが２値算術符号化器１４１に通知されたとする。この時点に２値算術符号化器１４１は、第２バッファ１５２を空にする。そして、これに記憶していた直前のビット出力１５６の状態を現在の２値算術符号化器１４１に格納する。【０１１８】
続いて、ＰＣＭモードに対応する予測パラメータのビンを、コンテキストモデリング器１４６Ｂから供給されるコンテキストに基づいて２値算術符号化して、第１バッファ１５１に出力する。ＰＣＭモードに対応する予測パラメータのビンを２値算術符号化した後、その時点での２値算術符号化器１４１のレンジをフラッシュして、第１バッファ１５１に出力する。最後に、必要な分だけの「０」のビットを出力することで、第１バッファ１５１に出力されたビット列をバイトアラインする。なお、ＰＣＭモードに対応する予測パラメータのビンは一意に定まる値である。このため、以上の説明では２値算術符号化器１４１自身がそのビンを生成して２値算術符号化するものとしている。【０１１９】
ＰＣＭ判定器１３９Ｂは、２値算術符号化器１４１から第２バッファ１５２に出力されるマクロブロックのビット数を監視している。そして、ビット数が前記した所定ビット数を越えた時点で、ＰＣＭモードの選択を制御信号１４４Ｂに出力する。ＰＣＭモードの選択を制御信号１４４Ｂに出力した後、現マクロブロックの符号化が完了した時点で、ＰＣＭ判定器１３９ＢはＰＣＭモード非選択を制御信号１４４Ｂに出力する。【０１２０】
整合用メモリ５０１は、マクロブロックの最初のビンが入力されたときに、この最初のビンが２値算術符号化される直前のメモリ１３３のコンテキストをコピーして、次のマクロブロックの符号化開始まで保持する。ただし、整合用メモリ５０１は、ＰＣＭ判定器１３９Ｂから制御信号１４４ＢによってＰＣＭモードの選択が通知された時点で、先にコピーしたコンテキストをメモリ１３３に上書きする。こうすることによって、メモリ１３３に上書きされたコンテキストが直前のマクロブロックの符号化終了時のコンテキストに一致し、デコーダ間とのコンテキストの整合性を保つことができる。【０１２１】
コンテキスト更新器３０１は、ＰＣＭ判定器１３９Ｂから制御信号１４４ＢによってＰＣＭモードの選択を通知されて整合用メモリ５０１のコンテキストがメモリ１３３に上書きされると、このメモリ１３３に格納されたレベル値に関する符号データのコンテキストを更新する。なお、このような更新手順を採る代わりに、整合用メモリ５０１のコンテキストがメモリ１３３に上書きされる前の時点で、コンテキスト更新器３０１が整合用メモリ５０１のコンテキストに格納されたレベル値に関する符号データのコンテキストを更新するようにしてもよい。【０１２２】
このように第１の実施の形態の変形例による映像符号化装置３００Ｂでは、コンテキスト更新器３０１の作用のみで、シンボル生起確率の急激な変動に起因してマクロブロックがＰＣＭ符号化されたときに、変動したシンボル生起確率に合致するようにコンテキストを更新することができる。なお、整合用メモリ５０１は、直前マクロブロックのコンテキストを保持するだけであり、未学習コンテキストを保持するだけなので、シンボル生起確率の急激な変動に起因してマクロブロックがＰＣＭ符号化されたとしても、急激な変動したシンボル生起確率に合致するようにコンテキストを更新することはできない。【０１２３】
＜第２の実施の形態＞【０１２４】
図１１は、本発明の第２の実施の形態の映像復号装置の構成を表わしたものである。この映像復号装置６００は、図１に示す映像符号化装置３００から出力されるビットストリーム１２８を入力する分離器６０１を備えている。この分離器６０１はビットストリーム１２８を、スライスの先頭情報とマクロブロック情報に分離する。この詳細については、前記したＩＴＵ−Ｔ  Ｈ．２６４  ｜  ＩＳＯ／ＩＥＣ  １４４９６−１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」における「７  Ｓｙｎｔａｘ  ａｎｄ  ｓｅｍａｎｔｉｃｓ」を参照されたい。スライスの先頭情報は、前記した「Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」の７．３．３節に記載されたＳｌｉｃｅ  ｈｅａｄｅｒ  ｓｙｎｔａｘに対応する。また、マクロブロック情報は、前記した「Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」の７．３．５節に記載された「ａｃｒｏｂｌｏｃｋ  ｌａｙｅｒ  ｓｙｎｔａｘ［ｍｕｎｉ］」を参照されたい。【０１２５】
分離器６０１は、コンテキスト初期値計算器６１１と第４のスイッチ６１２の入力側に接続されている。分離器６０１からコンテキスト初期値計算器６１１には、スライス量子化パラメータとモデル・アイディ（model_id）からなるスライスの先頭情報６１３が供給される。コンテキスト初期値計算器６１１はこのライス量子化パラメータとモデル・アイディに基づいて、２値算術復号のコンテキストの初期値を計算し、この計算結果としての値６１４をメモリ６１５に設定するようになっている。【０１２６】
一方、分離器６０１から出力されるマクロブロック情報のビット６１６は、第４のスイッチ６１２を介して、２値算術復号器６１７あるいはＰＣＭ復号器６１８に供給されるようになっている。２値算術復号器６１７とメモリ６１５の間には、コンテキストモデリング器６１９が接続されている。また、コンテキストモデリング器６１９はコンテキスト更新器６２１と接続されている。２値算術復号器６１７は、入力ビットに対して、コンテキストモデリング器６１９から供給されるコンテキスト６２２に基づいて２値算術復号を行う。２値算術復号器６１７によって復号された２値シンボル（ビン）６２３は、符号データ復号器６２４に供給される。【０１２７】
２値算術復号器６１７は、ＰＣＭ検出器６２５とも接続されている。２値算術復号器６１７は、ＰＣＭ検出器６２５から現マクロブロックがＰＣＭモードであることを通知された場合には、現在の２値算術復号器６１７のレンジを所定の値にリセットする。そして、２値算術復号器６１７は、ＰＣＭモードである現マクロブロックがＰＣＭ復号器６１８による復号が完了するまでの間、２値算術復号を停止する。【０１２８】
一方、符号データ復号器６２４の方は、入力されるビン６２３の２進列から、元の符号データを復号する。復号された符号データの予測パラメータ６２６は、符号データ復号器６２４に接続されているＰＣＭ検出器６２５および予測器６２７に供給される。また、復号された符号データのマクロブロック量子化パラメータとレベル値６２８は、符号データ復号器６２４に接続された逆量子化・逆変換器６２９に供給される。【０１２９】
ＰＣＭ検出器６２５は、入力された予測パラメータ６２６によって、現マクロブロックがＰＣＭモードであるかを検出する。現マクロブロックがＰＣＭモードである場合には、その出力する制御信号６３１を介して、現マクロブロックがＰＣＭモードであることを、２値算術復号器６１７、コンテキスト更新器６２１、第４のスイッチ６１２および第５のスイッチ６３２に通知する。【０１３０】
逆量子化・逆変換器６２９と予測器６２７の出力としての予測画像６３４、６３５はそれぞれ加算器６３６に入力されて加算され、その加算結果としての予測復号画像６３７が第５のスイッチ６３２に入力されるようになっている。第５のスイッチ６３２は、この予測復号画像６３７とＰＣＭ復号器６１８の復号結果としてのＰＣＭ復号画像６３８とを択一的に選択し、選択出力６３９をデコード画像バッファ６４１に入力するようになっている。デコード画像バッファ６４１から出力されるデコード画像６４２は予測器６２７に入力され、また映像復号装置６００からデコード画像６４２として出力される。【０１３１】
ここで逆量子化・逆変換器６２９に入力されたマクロブロック量子化パラメータとレベル値６２８のうちのレベル値は、マクロブロック量子化パラメータに対応する量子化ステップサイズで逆量子化される。この逆量子化されたレベル値（変換係数）には、逆周波数変換が適用されて、周波数領域から空間領域に戻される。この空間領域に戻された変換係数が、予測画像６３４である。【０１３２】
予測画像６３４は、加算器６３６の一方に入力される。この加算器６３６の他方には、予測器６２７によって生成された予測画像６３５が入力される。後者の予測画像６３５は、予測パラメータ６２６と、デコード画像バッファ６４１から出力されるデコード画像６４２を予測器６２７が入力して生成したものである。加算器６３６から出力される加算結果としての予測復号画像６３７は、マクロブロックのデコード画像として第５のスイッチ６３２に供給されることになる。【０１３３】
第４のスイッチ６１２はＰＣＭ検出器６２５から出力される制御信号６３１がＰＣＭモードであることを通知してきた場合、分離器６０１から出力されるマクロブロック情報のビット６１６をＰＣＭ復号器６１８に供給する。ＰＣＭ復号器６１８は現マクロブロックがＰＣＭモードであるときに供給されるこのマクロブロック情報のビット６１６に対してＰＣＭ復号を行う。ＰＣＭ復号器６１８からこれにより出力されるＰＣＭ復号画像６３８は、該当するマクロブロックのデコード画像として第５のスイッチ６３２に供給されることになる。【０１３４】
第４のスイッチ６１２は、通常の場合、分離器６０１の出力を２値算術復号器６１７の入力に接続している。この第４のスイッチ６１２は、ＰＣＭ検出器６２５からその制御信号６３１によって現マクロブロックがＰＣＭモードであることを通知されると、現マクロブロックのＰＣＭ復号が終わるまで、分離器６０１の出力をＰＣＭ復号器６１８の入力に接続する。【０１３５】
したがって、第５のスイッチ６３２は、前記した通常の場合、予測復号画像６３７をデコード画像バッファ６４１に供給する。そして、ＰＣＭ検出器６２５から現マクロブロックがＰＣＭモードであることを通知されたときには、デコード画像バッファ６４１にＰＣＭ復号画像６３８を供給することになる。【０１３６】
コンテキスト更新器６２１は、ＰＣＭ検出器６２５から制御信号６３１によって現マクロブロックがＰＣＭモードであることを通知された時点で、コンテキストモデリング器６１９を介して、メモリ６１５に格納されたレベル値に関する符号データのコンテキストを更新する。この第２の実施の形態におけるレベル値に関する符号データとは、第１の実施の形態と同様に、Ｈ．２６４規格における「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」および「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕs1」である。【０１３７】
デコード画像バッファ６４１は、格納されたデコード画像６４２を適切な表示タイミングで外部に出力する。【０１３８】
このような第２の実施の形態の映像復号装置６００では、コンテキスト更新器６２１が重要な特徴を持っている。このコンテキスト更新器６２１は第１の実施の形態で説明したコンテキスト更新器３０１と同一の動作を行うため、その説明を省略する。【０１３９】
第２の実施の形態の映像復号装置６００では、第１の実施の形態の映像符号化装置３００によって作成した、符号化されたビットストリームを復号することができる。すなわち、シンボル生起確率の急激な変動によってマクロブロックをＰＣＭ符号化した際に、変動したシンボル生起確率に合致するようなコンテキスト更新を適用しながら、符号化されたビットストリームを復号することができる。【０１４０】
＜第３の実施の形態＞【０１４１】
ところで、図１および図１０で説明した第１の実施の形態あるいはその変形例としての映像符号化装置３００、３００Ｂでは、マクロブロックがＰＣＭ符号化された際、コンテキスト更新器３０１が、「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」の各コンテキスト（ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］、０≦ｉ≦１４）、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」の各コンテキスト（ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］、０≦ｉ≦１４）、「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」の各コンテキスト（ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］、０≦ｃ≦９）の劣勢シンボル生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）を小さな番号に更新するようにしている。すなわち、コンテキスト更新器３０１は、「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」および「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」のそれぞれの劣勢シンボル生起確率を等確率に近づけるように更新している。【０１４２】
しかしながら、コンテキストの劣勢シンボル生起確率を等確率にする目的であれば、これら第１の実施の形態あるいはその変形例のような逐次更新は必要ない。すなわち、コンテキストの優勢シンボル（ＭＰＳ）と劣勢シンボル生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）を適切な値に設定すればよい。具体的には、各「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」に関しては「ＭＰＳ＝１」、「ｐＳｔａｔｅｉｄｘ＝０」として、各「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」に関しては「ＭＰＳ＝０」、「ｐＳｔａｔｅｉｄｘ＝０」とし、各「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」に関しては「ＭＰＳ＝１」、「ｐＳｔａｔｅｉｄｘ＝０」と設定すればよい。【０１４３】
なお、この設定は、優勢シンボルの生起確率を等確率にすることと等価である。また、コンテキストの劣勢シンボル生起確率を等確率に設定すると、該当するコンテキストを用いて最初に符号化される１ビンに対する２値算術符号化の出力は１ビットとなり、２値算術符号化による符号化ロスがない状態にリセットされる。【０１４４】
本発明の第３の実施の形態では、「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」および「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」のそれぞれの劣勢シンボル生起確率を等確率に近づけるように逐次更新するのではなく、劣勢シンボル生起確率を等確率に瞬時に更新するようにしている。【０１４５】
図１２は、本発明の第３の実施の形態による映像符号化装置の構成を表わしたものである。図１２に示した第３の実施の形態の映像符号化装置３００Ｃで、図１と同一部分には同一の符号を付しており、これらの説明を適宜省略する。この映像符号化装置３００Ｃを第１の実施の形態の映像符号化装置３００と比較すると、図１に存在したコンテキスト更新器３０１の代わりにコンテキスト等確率更新器７０１が備えられている。【０１４６】
コンテキスト等確率更新器７０１は、ＰＣＭ判定器１３９から出力される制御信号１４４によってＰＣＭモード選択が通知された場合、メモリ１３３に格納されたレベル値に関する符号データのコンテキストとしての「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」および「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」を前記した値に更新する。すなわち、劣勢シンボル生起確率を等確率に設定する。なお、メモリ１３３に格納されたデータに対して直接更新を行うので、コンテキスト等確率更新器７０１による前記した更新処理は、メモリ１３３に対する上書き処理と等価である。【０１４７】
第３の実施の形態の映像符号化装置３００Ｃでコンテキスト等確率更新器７０１以外の部分は第１の実施の形態の映像符号化装置３００と同一である。そこで、ＰＣＭ選択時のコンテキスト等確率更新器７０１の動作のみを説明することにする。【０１４８】
図１３は、ＰＣＭ選択時のコンテキスト等確率更新器の処理の流れを示したものである。まず、ＰＣＭ選択時にステップＳ８０１で、すべての「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」（０≦ｉ≦１４）の生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）と優勢シンボル（ＭＰＳ）を次の（８）式と（９）式で更新する。【０１４９】
ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］ｐＳｔａｔｅｉｄｘ＝０    ……（８）【０１５０】
ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］ＭＰＳ＝１    ……（９）【０１５１】
なお、（８）式によって劣勢シンボル生起確率が等確率となる。したがって、（９）式の右辺が「１」ではなく「０」としても、該当するコンテキストを用いて符号化される最初の１ビンに対する２値算術符号化の出力は１ビットとなる。【０１５２】
次のステップＳ８０２では、すべての「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」（０≦ｉ≦１４）の生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）と優勢シンボル（ＭＰＳ）を次の（１０）式と（１１）式で更新する。【０１５３】
ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］ｐＳｔａｔｅｉｄｘ＝０    ……（１０）【０１５４】
ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］ＭＰＳ＝０    ……（１１）【０１５５】
なお、「ｃｏｎｔｅｘｔ＿ｓｉｇ」と同様に、（１０）式によって劣勢シンボル生起確率が等確率となるので、（１１）式の右辺が「０」ではなく「１」としても、該当するコンテキストを用いて符号化される最初の１ビンに対する２値算術符号化の出力は１ビットとなる。【０１５６】
次のステップＳ８０３では、すべての「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」（０≦ｃ≦９）の生起確率状態インデックス（ｐＳｔａｔｅｉｄｘ）と優勢シンボル（ＭＰＳ）を（１２）式と（１３）式で更新する。【０１５７】
ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］ｐＳｔａｔｅｉｄｘ＝０    ……（１２）【０１５８】
ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］ＭＰＳ＝１    ……（１３）【０１５９】
なお、「ｃｏｎｔｅｘｔ＿ｓｉｇ」や「ｃｏｎｔｅｘｔ＿ｌａｓｔ」と同様に、（８）式によって劣勢シンボル生起確率が等確率となるので、（１３）式の右辺が「１」ではなく「０」としても、該当するコンテキストを用いて符号化される最初の１ビンに対する２値算術符号化の出力は１ビットとなる。【０１６０】
以上の処理でコンテキスト等確率の更新を終了する。【０１６１】
以上説明した第３の実施の形態の映像符号化装置３００Ｃでは、マクロブロックがＰＣＭ符号化された際に、第１の実施の形態のような逐次的なコンテキスト更新ではなく、瞬時的なコンテキスト更新が可能になる。したがって、第１の実施の形態よりも単純な演算によって、急激に変動したシンボル生起確率に合致するようにコンテキストの更新ができる。【０１６２】
＜第３の実施の形態の変形例＞【０１６３】
図１４は、本発明の第３の実施の形態の変形例の映像符号化装置の構成を表わしたものである。図１４に示した第３の実施の形態の変形例の映像符号化装置３００Ｄで、図１２と同一部分には同一の符号を付しており、これらの部分の説明を適宜省略する。この変形例の映像符号化装置３００ＤでＰＣＭ判定器１３９Ｄは、符号データ１２３を監視せず、代わりに２値算術符号化器１４１のビット出力１５６としてのビット数を監視して前記した所定ビン数を超えるか否かを判断することでＰＣＭモードか否かの判定を行うようになっている。この点は、図１に示した映像符号化装置３００に対する図１０に示した映像符号化装置３００Ｂの関係と同様である。【０１６４】
このような構成の映像符号化装置３００Ｄは、２値算術符号化器１４１、ＰＣＭ判定器１３９Ｄおよびコンテキストモデリング器１４６Ｄの動作のみが、図１２に示した映像符号化装置３００と異なる。そこで、これらを中心に説明を行う。【０１６５】
２値算術符号化器１４１は、マクロブロックの最初のビンが入力された時点で、この最初のビンを２値算術符号化する直前の算術符号化器の状態を記憶して、２値算術符号化器１４１の内部の図示しないローカルメモリに保持する。これら記憶および保持する内容は、たとえば２値算術符号化器１４１のレンジや下限値である。２値算術符号化器１４１は、ＰＣＭ判定器１３９ＤからＰＣＭモードの選択が通知されない限り、マクロブロックのビンを絶えず２値算術符号化して、第２バッファ１５２に出力する。【０１６６】
このような処理が行われているとき、ＰＣＭ判定器１３９ＤからＰＣＭモードの選択を示す制御信号１４４Ｄが２値算術符号化器１４１に通知されたとする。この時点に２値算術符号化器１４１は、第２バッファ１５２を空にする。そして、これに記憶していた直前のビット出力１５６の状態を現在の２値算術符号化器１４１に格納する。【０１６７】
続いて、ＰＣＭモードに対応する予測パラメータのビンを、コンテキストモデリング器１４６Ｄから供給されるコンテキストに基づいて２値算術符号化して、第１バッファ１５１に出力する。ＰＣＭモードに対応する予測パラメータのビンを２値算術符号化した後、その時点での２値算術符号化器１４１のレンジをフラッシュして、第１バッファ１５１に出力する。最後に、必要な分だけの「０」のビットを出力することで、第１バッファ１５１に出力されたビット列をバイトアラインする。なお、ＰＣＭモードに対応する予測パラメータのビンは一意に定まる値である。このため、以上の説明では２値算術符号化器１４１自身がそのビンを生成して２値算術符号化するものとしている。【０１６８】
ところで、ＰＣＭモードに対応する予測パラメータのビンに利用するコンテキストは、Ｈ．２６４規格で３種類程度と少ない。このため、２値算術符号化器１４１自身が、マクロブロックの最初のビンが入力されたときに、この最初のビンを２値算術符号化する直前のコンテキストを逐次保存しておくようにしている。そして、ＰＣＭ判定器１３９Ｄから制御信号１４４ＤによってＰＣＭモードの選択が通知された時点に、２値算術符号化器１４１はこの保存したコンテキストをコンテキストモデリング器１４６Ｄを介してメモリ１３３に書き戻すものとした。【０１６９】
ＰＣＭ判定器１３９Ｄは、２値算術符号化器１４１から第２バッファ１５２に出力されるマクロブロックのビット数を監視している。そして、ビット数が前記した所定ビット数を越えた時点で、ＰＣＭモードの選択を制御信号１４４Ｄに出力する。ＰＣＭモードの選択を制御信号１４４Ｄに出力した後、現マクロブロックの符号化が完了した時点で、ＰＣＭ判定器１３９ＤはＰＣＭモード非選択を制御信号１４４Ｄに出力する。【０１７０】
以上説明した第３の実施の形態の変形例の映像符号化装置３００Ｄを、図１０に示した第１の実施の形態の変形例の映像符号化装置３００Ｂと比較する。図１４に示した映像符号化装置３００Ｄでは、図１０に示した映像符号化装置３００Ｂと異なり、整合用メモリ５０１が不要となっていることが分かる。これは、マクロブロックがＰＣＭ符号化された際に、映像符号化装置３００Ｄのメモリ１３３に格納されたレベル値に関する符号データのコンテキスト（「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」および「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」）を前記した所定値で上書きするだけで、そのコンテキストが更新されるからである。すなわち、図１４に示した映像符号化装置３００Ｄでは、図１０に示した映像符号化装置３００Ｂの構成のように、整合用メモリ５０１に格納されたコンテキストを元に逐次更新をする必要がない。したがって、コンテキスト等確率更新器７０１に基づく図１４に示した映像符号化装置３００Ｄは、より単純な装置構成となるメリットもある。【０１７１】
＜第４の実施の形態の変形例＞【０１７２】
図１５は、本発明の第４の実施の形態の映像復号装置の構成を表わしたものである。図１５に示す映像復号装置６００Ｅで図１１と同一部分には同一の符号を付しており、これらの部分の説明を適宜省略する。本実施の形態の映像復号装置６００Ｅでは、図１１に示した映像復号装置６００と比較すると、コンテキスト更新器６２１（図１１）の代わりにコンテキスト等確率更新器９０１が備えられている。【０１７３】
第４の実施の形態の映像復号装置６００Ｅのコンテキスト等確率更新器９０１は、ＰＣＭ検出器６２５からＰＣＭモードであることを通知された場合、メモリ６１５に格納されたレベル値に関する符号データのコンテキストである「ｃｏｎｔｅｘｔ＿ｓｉｇ［ｉ］」、「ｃｏｎｔｅｘｔ＿ｌａｓｔ［ｉ］」および「ｃｏｎｔｅｘｔ＿ｌｅｖｅｌ［ｃ］」のそれぞれの劣勢シンボル生起確率を等確率に更新する。なお、メモリ１３３に格納されたデータに対して直接更新を行うので、コンテキスト等確率更新器９０１は、メモリ６１５に対する上書き処理と等価である。【０１７４】
映像復号装置６００Ｅにおけるこのコンテキスト等確率更新器９０１以外の回路装置は、第２の実施の形態の映像復号装置６００と同一である。本実施の形態の映像復号装置６００Ｅでは、図１２に示した第３の実施の形態の映像符号化装置３００Ｃによって、符号化されたビットストリームを復号することができる。すなわち、シンボル生起確率の急激な変動によってＰＣＭ符号化されたマクロブロックに対して、変動したシンボル生起確率に合致するようなコンテキスト等確率更新を適用しながら、符号化されたビットストリームを復号することができる。【０１７５】
以上説明した発明の実施の形態では、ＰＣＭ符号化した場合における「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」および「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」のコンテキストの更新について説明した。ＰＣＭ符号化の代わりにハフマン符号化、あるいは、コンテキストを用いない２値算術符号化を利用した映像処理装置に対しても、本発明の技術思想が同様に適用できることはいうまでもない。【０１７６】
また、以上説明した発明の実施の形態やそれらの変形例では、４×４ブロックサイズの周波数変換を利用する場合での「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」および「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」のコンテキスト更新を説明したが、これに限るものではない。たとえばＨ．２６４規格の「Ｈｉｇｈ  ｐｒｏｆｉｌｅ」等の８×８ブロックサイズの周波数変換を利用する映像符号化・復号においても、８×８ブロックサイズの周波数変換によって生成された画像ブロック（８×８周波数ブロック）のレベル値は、４×４ブロックサイズの周波数変換によって生成された画像ブロック（４×４周波数ブロック）のレベル値と同様に、「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」および「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」に基づいて２値算術符号化・復号が適用される。したがって、このような８×８周波数ブロックでも、すでに説明した４×４周波数ブロックのコンテキスト更新の手法を適用できることはいうまでもない。【０１７７】
この場合、８×８周波数ブロックにおける第１の実施の形態および第２の実施の形態のコンテキスト更新器３０１の動作は、ＤＣ成分から高周波数成分の順で「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａg」のコンテキストを一旦更新する。その後、高周波数成分からＤＣ成分の順で「ｃｏｅｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１」のコンテキストを更新する。ただし、第３の実施の形態および第４の実施の形態におけるコンテキスト等確率更新器７０１、９０１については、処理順序の変更は不要である。【０１７８】
更には、以上説明した本発明の各実施の形態では、ピクチャの符号化構造としてＭＢＡＦＦ（Macro Block Adaptive Frame Field）符号化を利用する場合、ＰＣＭ符号化を行う際のコンテキスト更新時で、現在のマクロブロックの符号化構造（フレーム構造あるいはフィールド構造）の「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」と「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」のコンテキストだけでなく、現在のマクロブロックの符号化構造でない「ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」と「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ」も同じタイミングで更新してもよい。たとえば、現在のマクロブロックの符号化構造がフレーム構造であれば、フィールド構造の前記コンテキストも更新するようにする。こうすることによって、発明のコンテキスト更新に起因する、マクロブロック符号化構造の偏りを回避することができる。【０１７９】
更にまた、本発明の各実施の形態では、ＰＣＭ符号化時のコンテキスト更新を行うか否かを、ＰＣＭモードマクロブロックのヘッダ情報に埋め込む構造としてもよい。これによって、映像符号化器側にはコンテキスト更新を行うか否かを判断するコンテキスト更新判断手段が必要となる一方で、ＰＣＭモードマクロブロックに後続するマクロブロックにおけるシンボル生起確率により合致した算術符号化が可能になる。【０１８０】
また、本発明では、ＰＣＭモードマクロブロックのヘッダ情報に埋め込む構造とする代わりに、所定の数のＰＣＭモードマクロブロックが連続して発生した場合にのみ、コンテキスト更新を行うよう構造としてもよい。これによって、映像符号化器側でのコンテキスト更新判断手段が不要となる。【０１８１】
以上説明した各実施の形態では、映像符号化装置あるいは映像復号装置をハードウェアのみで構成したが、コンピュータプログラムをＣＰＵ（Central Processing Unit；中央演算処理ユニット）が実行して、構成回路装置の一部をソフトウェアで実現するようにしてもよい。【０１８２】
図１６は、一例として映像符号化装置と映像復号装置を備えた映像処理装置をソフトウェアで構成した場合のハードウェアの構成を表わしたものである。映像処理装置１０００は、映像データ格納用の第１の記憶媒体１００１と、ビットストリーム格納用の第２の記憶媒体１００２を備えている。また、映像処理装置１０００は図示しないＣＰＵや作業用のメモリを半導体チップとして集積したプロセッサ１００３を備えており、ＣＰＵが実行する制御プログラムを格納したプログラムメモリ１００４と接続されている。プロセッサ１００３には、映像処理装置１０００をユーザや保守担当者が操作するための操作部１０００５と、操作の状態や符号化前または復号後の映像等の各種情報を表示あるいはプリントアウトするための出力装置１００６が接続されている。【０１８３】
プロセッサ１００３は、第１の記憶媒体１００１から映像データ１０１１を読み出して、符号化し、ビットストリーム１０１２を第２の記憶媒体１００２に格納する。また、第２の記憶媒体１００２からビットストリーム１０１３を読み出して映像データ１０１４に複合して、第１の記憶媒体１００１に格納することになる。ここでのプロセッサ１００３は、ＣＰＵが制御プロセッサを実行することで、仮想的に各実施の形態データ説明した各種の回路装置を実現することになる。【０１８４】
なお、第１の記憶媒体１００１や第２の記憶媒体１００２あるいはプログラムメモリ１００４の一部または全部を図示しないインターネット等のネットワーク上に配置することも可能であることはいうまでもない。【０１８５】
以上好ましい実施の形態（及び実施例）を参照して本願発明を説明したが、本願発明は上記実施の形態（及び実施例）に限定されるものでない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。【０１８６】
この出願は、２００７年９月６日に出願された日本出願特願２００７−２３１４７８を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2009031648.tif 000006
【図２】
2009031648.tif 000007
【図３】
2009031648.tif 000008
【図４】
2009031648.tif 000009
【図５】
2009031648.tif 000010
【図６】
2009031648.tif 000011
【図７】
2009031648.tif 000012
【図８】
2009031648.tif 000013
【図９】
2009031648.tif 000014
【図１０】
2009031648.tif 000015
【図１１】
2009031648.tif 000016
【図１２】
2009031648.tif 000017
【図１３】
2009031648.tif 000018
【図１４】
2009031648.tif 000019
【図１５】
2009031648.tif 000020
【図１６】
2009031648.tif 000021
【図１７】
2009031648.tif 000022
【図１８】
2009031648.tif 000023
【図１９】
2009031648.tif 000024
【図２０】
2009031648.tif 000025
【手続補正書】
【提出日】平成21年1月28日(2009.1.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化手段と、
前記画像ブロックを前記第１の符号化手段と異なる符号化手法で符号化する第２の符号化手段と、
前記第１の符号化手段の出力する第１の出力データと、前記第２の符号化手段の出力する第２の出力データのいずれかを選択する出力データ選択手段と、
この出力データ選択手段が前記第２の出力データを選択したときに前記変換量子化値の２値算術符号化に用いるコンテキストを優勢シンボルの生起確率を低くするように更新するコンテキスト更新手段と
を具備することを特徴とする映像符号化装置。
【請求項２】
前記コンテキスト更新手段は、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新する手段であることを特徴とする請求項１記載の映像符号化装置。
【請求項３】
前記コンテキスト更新手段は、前記変換量子化値の２値算術符号化に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とする手段であることを特徴とする請求項１記載の映像符号化装置。
【請求項４】
前記コンテキスト更新手段は、予め定められた所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術符号化に用いるコンテキストに上書きする手段であることを特徴とする請求項１記載の映像符号化装置。
【請求項５】
前記所定値の確率は、等確率であることを特徴とする請求項４記載の映像符号化装置。
【請求項６】
前記第１の符号化手段と異なる符号化手法は、ＰＣＭ符号化、ハフマン符号化あるいは２値算術符号化のいずれかであることを特徴とする請求項１記載の映像符号化装置。
【請求項７】
入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号手段と、
前記入力画像データを前記第１の復号手段と異なる復号手法で復号する第２の復号手段と、
前記第１の復号手段と第２の復号手段のいずれかを前記入力画像データの復号のために選択する復号選択手段と、
この復号選択手段が前記第２の復号手段を用いて復号することを選択したときに前記変換量子化値の２値算術復号に用いるコンテキストを優勢シンボルの生起確率を低くするように更新するコンテキスト更新手段とを具備することを特徴とする映像復号装置。
【請求項８】
前記コンテキスト更新手段は、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新する手段であることを特徴とする請求項７記載の映像復号装置。
【請求項９】
前記コンテキスト更新手段は、前記変換量子化値の２値算術復号に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とする手段であることを特徴とする請求項７記載の映像復号装置。
【請求項１０】
前記コンテキスト更新手段は、予め定められた所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術復号に用いるコンテキストに上書きする手段であることを特徴とする請求項７記載の映像復号装置。
【請求項１１】
前記所定値の確率は、等確率であることを特徴とする請求項１０記載の映像復号装置。
【請求項１２】
前記第１の復号手段と異なる復号手法は、ＰＣＭ復号、ハフマン復号あるいは２値算術復号のいずれかであることを特徴とする請求項７記載の映像復号装置。
【請求項１３】
画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化ステップと、
前記画像ブロックを前記第１の符号化ステップと異なる符号化手法で符号化する第２の符号化ステップと、
前記第１の符号化ステップで出力する第１の出力データと、前記第２の符号化ステップで出力する第２の出力データのいずれかを選択する出力データ選択ステップと、
この出力データ選択ステップで前記第２の出力データを選択したときに前記変換量子化値の２値算術符号化に用いるコンテキストを優勢シンボルの生起確率を低くするように更新するコンテキスト更新ステップとを具備することを特徴とする映像符号化方法。
【請求項１４】
前記第１の符号化ステップと異なる符号化手法は、ＰＣＭ符号化、ハフマン符号化あるいは２値算術符号化のいずれかの手法であることを特徴とする請求項１３記載の映像符号化方法。
【請求項１５】
入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号ステップと、
前記入力画像データを前記第１の復号ステップと異なる手法で復号する第２の復号ステップと、
前記第１の復号ステップと第２の復号ステップのいずれかを前記入力画像データの復号のために選択する復号選択ステップと、
この復号選択ステップで前記第２の復号ステップによって復号することを選択したときに前記変換量子化値の２値算術復号に用いるコンテキストを優勢シンボルの生起確率を低くするように更新するコンテキスト更新ステップとを具備することを特徴とする映像復号方法。
【請求項１６】
前記第１の復号ステップと異なる復号手法は、ＰＣＭ復号、ハフマン復号あるいは２値算術復号のいずれかの手法であることを特徴とする請求項１５記載の映像復号方法。
【請求項１７】
コンピュータに、
画像ブロックを周波数領域に変換して量子化した変換量子化値をコンテキストに基づいて２値算術符号化する第１の符号化処理と、
前記画像ブロックを前記第１の符号化処理とは異なる符号化手法で符号化する第２の符号化処理と、
前記第１の符号化処理で出力する第１の出力データと、前記第２の符号化処理で出力する第２の出力データのいずれかを選択する出力データ選択処理と、
この出力データ選択処理で前記第２の出力データを選択したときに前記変換量子化値の２値算術符号化に用いるコンテキストを優勢シンボルの生起確率を低くするように更新するコンテキスト更新処理とを実行させることを特徴とする映像符号化プログラム。
【請求項１８】
前記第１の符号化処理と異なる符号化手法は、ＰＣＭ符号化、ハフマン符号化あるいは２値算術符号化のいずれかの手法であることを特徴とする請求項１７記載の映像符号化プログラム。
【請求項１９】
コンピュータに、
入力画像データをコンテキストに基づいて２値算術復号して変換量子化値を復号する第１の復号処理と、
前記入力画像データを前記第１の復号処理と異なる復号手法で復号する第２の復号処理と、
前記第１の復号処理と第２の復号処理のいずれかを前記入力画像データの復号のために選択する復号選択処理と、
この復号選択処理で前記第２の復号処理を用いて復号することを選択したときに前記変換量子化値の２値算術復号に用いるコンテキストを優勢シンボルの生起確率を低くするように更新するコンテキスト更新処理とを実行させることを特徴とする映像復号プログラム。
【請求項２０】
前記第１の復号処理と異なる復号手法は、ＰＣＭ復号、ハフマン復号あるいは２値算術復号のいずれかの処理であることを特徴とする請求項１９記載の映像復号プログラム。
【請求項２１】
前記コンテキスト更新ステップで、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新することを特徴とする請求項１３記載の映像符号化方法。
【請求項２２】
前記コンテキスト更新ステップで、前記変換量子化値の２値算術符号化に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とすることを特徴とする請求項１３記載の映像符号化方法。
【請求項２３】
前記コンテキスト更新ステップで、予め定められた所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術符号化に用いるコンテキストに上書きすることを特徴とする請求項１３記載の映像符号化方法。
【請求項２４】
前記所定値の確率は、等確率であることを特徴とする請求項２３記載の映像符号化方法。
【請求項２５】
前記コンテキスト更新ステップで、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新することを特徴とする請求項１５記載の映像復号方法。
【請求項２６】
前記コンテキスト更新ステップで、前記変換量子化値の２値算術復号に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とすることを特徴とする請求項１５記載の映像復号方法。
【請求項２７】
前記コンテキスト更新ステップで、予め定められた所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術復号に用いるコンテキストに上書きすることを特徴とする請求項１５記載の映像復号方法。
【請求項２８】
前記所定値の確率は、等確率であることを特徴とする請求項２７記載の映像復号方法。
【請求項２９】
前記コンテキスト更新処理で、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新することを特徴とする請求項１７記載の映像符号化プログラム。
【請求項３０】
前記コンテキスト更新処理で、前記変換量子化値の２値算術符号化に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とすることを特徴とする請求項１７記載の映像符号化プログラム。
【請求項３１】
前記コンテキスト更新処理で、予め定められた所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術符号化に用いるコンテキストに上書きすることを特徴とする請求項１７記載の映像符号化プログラム。
【請求項３２】
前記所定値の確率は、等確率であることを特徴とする請求項３１記載の映像符号化プログラム。
【請求項３３】
前記コンテキスト更新処理で、低い劣勢シンボル生起確率のコンテキスト数を減らすように、前記変換量子化値の２値算術符号化に用いるコンテキストを更新することを特徴とする請求項１９記載の映像符号化プログラム。
【請求項３４】
前記コンテキスト更新処理で、前記変換量子化値の２値算術復号に用いるコンテキストの劣勢シンボル生起確率をより高い生起確率とすることを特徴とする請求項１９記載の映像符号化プログラム。
【請求項３５】
前記コンテキスト更新処理で、予め定められた所定値の確率のシンボル生起確率のコンテキストを、前記変換量子化値の２値算術復号に用いるコンテキストに上書きすることを特徴とする請求項１９記載の映像符号化プログラム。
【請求項３６】
前記所定値の確率は、等確率であることを特徴とする請求項３５記載の映像符号化プログラム。
【国際調査報告】
2009031648.tif 000026
2009031648.tif 000027
2009031648.tif 000028