(57)【要約】【課題】  複数ビットを一括して復号化処理を行う算術復号化装置、および算術復号化プログラムを提供することを目的とする。【解決手段】  内部状態情報記憶部３は、内部状態情報、および最初のビットからnビット目までのＭＰＳのビット列であるＭＰＳ列を記憶し、初期内部状態情報退避部４は、復号要求がされた際の、内部状態情報記憶部３に記憶されている内部状態情報を記憶し、参照テーブル記憶部５は、テーブル情報を記憶し、一括復号処理管理部２は、一括復号処理が可能であるかどうかを判定し、一括復号が可能である場合には、複数ビット一括復号部６に、復号要求、一括復号の方法を示すためのフラグ値、一括復号ビット数ｎ、およびＭＰＳ列を供給し、複数ビット一括復号部６は、ＭＰＳ列を基に、nビット連続のＭＰＳからなる復号化データを生成、出力、または、n−1ビット連続のＭＰＳの後に1ビットのＬＰＳからなる復号化データを生成、出力する。【選択図】      図１
2005217871.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも現在の領域幅、一つ前の領域幅、復号化すべきデータ系列、およびコンテキストを含む内部状態情報とともに復号要求が供給されると、算術復号化を行い、復号化データを出力する算術復号化装置であって、
前記内部状態情報、および最初のビットからnビット目までの優勢シンボルのビット列である優勢シンボル列を記憶する内部状態情報記憶手段と、
前記復号要求がされた際の、前記内部状態情報記憶手段に記憶されている前記内部状態情報を記憶する初期内部状態情報退避手段と、
前記内部状態情報の更新に必要なテーブル情報を記憶する参照テーブル記憶手段と、
優勢シンボル列を基に、nビット連続の優勢シンボルからなる前記復号化データを生成、出力、または、n−1ビット連続の優勢シンボルの後に1ビットの劣勢シンボルからなる前記復号化データを生成、出力する複数ビット一括復号手段と、
前記初期内部状態情報退避手段に記録しておいた初期の内部状態情報を前記内部状態情報記憶手段に送り、前記内部状態情報記憶手段に記憶された当該初期の内部状態情報を用いて、1ビット毎の算術復号処理を行い、前記復号化データを生成、出力する１ビット復号手段と、
一括復号処理が可能であるかどうかを、前記内部状態情報記憶手段より読み出した前記現在の領域幅、前記一つ前の領域幅、および前記復号化すべきデータ系列を元に判定し、一括復号が可能である場合には、前記複数ビット一括復号手段に対して、前記復号要求、一括復号の方法を示すためのフラグ値、一括復号ビット数ｎ、および前記優勢シンボル列を供給する一括復号処理管理手段と、
を備えることを特徴とする算術復号化装置。
【請求項２】
少なくとも現在の領域幅、一つ前の領域幅、復号化すべきデータ系列、およびコンテキストを含む内部状態情報とともに復号要求が供給されると、算術復号化を行い、復号化データを出力する算術復号化装置としてコンピュータを機能させるための算術復号化プログラムであって、
前記コンピュータを、
前記内部状態情報、および最初のビットからnビット目までの優勢シンボルのビット列である優勢シンボル列を記憶する内部状態情報記憶手段と、
前記復号要求がされた際の、前記内部状態情報記憶手段に記憶されている前記内部状態情報を記憶する初期内部状態情報退避手段と、
前記内部状態情報の更新に必要なテーブル情報を記憶する参照テーブル記憶手段と、
優勢シンボル列を基に、nビット連続の優勢シンボルからなる前記復号化データを生成、出力、または、n−1ビット連続の優勢シンボルの後に1ビットの劣勢シンボルからなる前記復号化データを生成、出力する複数ビット一括復号手段と、
前記初期内部状態情報退避手段に記録しておいた初期の内部状態情報を前記内部状態情報記憶手段に送り、前記内部状態情報記憶手段に記憶された当該初期の内部状態情報を用いて、1ビット毎の算術復号処理を行い、前記復号化データを生成、出力する１ビット復号手段と、
一括復号処理が可能であるかどうかを、前記内部状態情報記憶手段より読み出した前記現在の領域幅、前記一つ前の領域幅、および前記復号化すべきデータ系列を元に判定し、一括復号が可能である場合には、前記複数ビット一括復号手段に対して、前記復号要求、一括復号の方法を示すためのフラグ値、一括復号ビット数ｎ、および前記優勢シンボル列を供給する一括復号処理管理手段と、
して機能させることを特徴とする算術復号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号処理を高速に行う算術復号化装置および算術復号化プログラムに関する。
【背景技術】
【０００２】
算術符号化は、エントロピー符号化のひとつであり、効率的な符号化が可能であるということが知られている。算術符号化は、符号化を行うシンボル系列を0以上1未満の値をもつ符号化系列に対応させることにより符号化する手法であり、符号化系列の値をたどることにより復号化を行う。発生確率の高いシンボル系列や短いシンボル系列に対する符号化系列を表現するためのビット数は少なくてよいが、発生確率の低いシンボル系列や長いシンボル系列に対しては、符号化系列を表現するビット数は大きくなる。
【０００３】
算術符号化は、画像圧縮や音声圧縮等に用いられており、符号化すべきシンボル系列が特徴の異なる複数のシンボル系列の列からなる場合がある。このような場合、予め複数の確率モデルを用意しておき、今符号化しようとする系列の特徴にあう確率モデルに順次切り替えることにより、符号化効率を高めることができるということが知られている。この予め用意しておく確率モデル群をコンテキストと呼び、一般にコンテキストは優勢シンボル（MPS）と、MPSの発生確率を求めるために必要となるステートとから構成される。複数のコンテキストを予め用意しておき、符号化するシンボル、復号化するビットによりコンテキストを切り替えるような算術符号化をマルチコンテキスト型算術符号化と呼ぶ。
【０００４】
ここで、マルチコンテキスト型２値算術符号演算について図９を用いて説明する。
【０００５】
図９中（ｖ）は復号開始時の初期領域幅であり、（ｕ）は復号化すべきデータ系列の初期値である。
【０００６】
まず、復号化を始める前に、所定の初期化処理が行われる。初期化処理は、現在の領域幅、復号化すべきデータ系列、コンテキストに対して行われる。
【０００７】
１ビット目の復号を行う。コンテキストが与えられると、それを元に領域（ｖ）の分割を行う。（ｗ）が劣勢シンボル（LPS）に対応する領域、（ｘ）が優勢シンボル（MPS）に対応する領域である。復号化すべきデータ系列（ｕ）は（ｘ）に含まれるので１ビット目はMPSを出力する。以下、（ｘ）を現在の領域幅として、同様の操作を繰り返すことにより復号が進むが、演算精度を保つための正規化処理を行う必要がある。
【０００８】
具体的に正規化の処理を説明する。ある所定の正規化判定値よりも現在の領域幅が小さくなった場合、現在の領域幅が正規化判定値以上になるまで、現在の領域幅と復号化すべきデータ系列に対し、１ビットの左シフトを繰り返す。現在の領域幅の空いた右側のビットには０が埋められ、復号化すべきデータ系列の空いた右側のビットにはビットストリームから１ビットずつデータがつめられる。現在の領域幅、復号化すべきデータ系列ともに、ビット数が決められ、あふれたビットはともに捨てられる。
【０００９】
正規化は算術符号化の演算精度を保つためのもので、正規化判定値は正規化が必要であるかどうかの判定に用いるものである。一般に正規化判定値は領域幅の最大値の半分の値をとる。
【００１０】
マルチコンテキスト型算術復号化の例として、H.264（非特許文献１）で採用されているCABACの算術復号化装置１０１の構成を図１０に示す。算術復号化装置１０１は、制御部１０２、算術復号化部１０３、内部状態情報記憶部１０４、および参照テーブル記憶部１０５によって構成される。
【００１１】
コンテキストインデックスは、今復号化しようとするビットのコンテキストを指し示すものである。
【００１２】
制御部１０２は、コンテキストインデックスとともに復号要求が入力されると、内部状態情報記憶部１０４、および参照テーブル記憶部１０５から必要なデータを読み出し、内部状態情報記憶部１０４の内部状態情報を更新し、更新した内部状態情報を、復号要求とともに算術復号化部１０３へ送る機能を有する。また、制御部１０２は、算術復号化部１０３から復号終了通知を受け取ると、算術復号化部１０３より内部状態情報を読み出し、正規化が必要であれば正規化を行い、内部状態情報記憶部１０４の更新を行う機能を有する。
【００１３】
算術復号化部１０３は、制御部１０２から内部状態情報とともに復号要求が送られると、算術復号化を行い、復号化データとして出力する機能を有する。また、算術復号化部１０３は、内部状態情報の更新を行い、復号終了通知を制御部１０２に送る機能を有する。
【００１４】
内部状態記憶部１０４は、内部状態情報を記憶する。内部状態情報は、少なくとも現在の領域幅、復号化すべきデータ系列、コンテキストからなる。制御部１０２より要求があれば、制御部１０２へ、内部状態情報記憶部１０４に記憶された内部状態情報を送る。
【００１５】
参照テーブル記憶部１０５は、内部状態情報記憶部１０４の内部状態情報の更新に必要となる参照テーブル情報を記憶する。制御部１０２より要求があれば、制御部１０２に記憶されている参照テーブル情報を送る。
【００１６】
次に、CABAC復号処理時における算術復号化装置１０１の動作を、図１１のフローチャートを用いて説明する。入力としてコンテキストインデックスが与えられることとする。
【００１７】
まず、制御部１０２は、内部状態情報記憶部１０４、および参照テーブル記憶部１０５から、現在の領域幅を更新するために必要なデータを読み出し、現在の領域幅の更新を行う（ステップＳ１０１）。
【００１８】
制御部１０２は、内部状態情報記憶部１０４より現在の領域幅と、復号化すべきデータ系列とを読み出し、両者を比較し、現在の領域幅が復号すべきデータ系列以下であるか否か判定する（ステップＳ１０２）。現在の領域幅が復号すべきデータ系列以下であれば、制御部１０２は、算術復号化部１０３へLPSの復号要求と現在のMPSを送り、そうでなければMPSの復号要求と現在のMPSを送る。
【００１９】
制御部１０２から算術復号化部１０３へLPSの復号要求と、現在のMPSが送られると、算術復号化部１０３は、MPSを反転した値を出力し、制御部１０２は、内部状態情報記憶部１０４の内部状態情報の更新を行う（ステップＳ１０３）。
【００２０】
制御部１０２から算術復号化部１０３へMPSの復号要求と、現在のMPSが送られると、算術復号化部１０３は、MPSの値を出力し、制御部１０２は、内部状態情報記憶部１０４の内部状態情報の更新を行う（ステップＳ１０４）。
【００２１】
次に、制御部１０２は、MPSとLPSの反転が必要であるかどうかの判定を行う（ステップＳ１０５）。
【００２２】
MPSとLPSの反転が必要である場合は、制御部１０２は、コンテキストインデックスに対応するコンテキストを内部状態情報記憶部１０４から読み出し、MPS値の反転を行い、内部状態情報記憶部１０４へ返す（ステップＳ１０６）。
【００２３】
次に、制御部１０２は、内部状態情報記憶部１０４から必要な内部状態情報を読み出し、更新した上、内部状態情報記憶部１０４へ返す（ステップＳ１０７）。
【００２４】
次に、制御部１０２は、正規化を行い（ステップＳ１０８）、処理を終了する。
【００２５】
画像圧縮等ではリアルタイム性が要求され、算術符号化、復号化の演算量の削減、処理の高速化が求められている。算術復号化処理においては、一般に、正規化の処理が必要であり、正規化の判定は１ビット復号する毎に必要であるために、複数のビットを一括して復号することは、非常に困難であった。
【００２６】
ところで、同一コンテキストが連続し、かつ、任意のnビットを復号しても正規化が発生しないことを条件に、nビットの一括復号処理を行うことによって、復号処理を高速化する算術復号化装置（例えば、特許文献１）が開示されている。
【００２７】
特許文献１の手法は、同一コンテキストが連続し、かつ、MPSが連続である場合は、LPS幅が一定である（これをQeとおく）ため、最初の領域幅をAregとおくと、nビット先の領域幅はAreg−n×Qeで計算できる。この値が正規化判定値以上であり、MPSが連続しているという条件を満たした場合に複数ビットの一括復号化処理を行い、そうでなければ1ビット毎の逐次処理を行うものである。
【００２８】
この手法は、２値画素からなる画像の符号化を扱う算術復号化装置の復号化処理を高速化するために考案されたものであり、片方の画素値が連続するような符号化データに対して、非常に高速に復号を行うことが可能である。
【００２９】
特許文献1における算術復号化装置の復号化処理の概要を、図１２のフローチャートを用いて説明する。
【００３０】
算術復号化装置は、復号化処理を開始すると、Areg−n×Qeを算出し、算出結果が正規化判定値以上か否かを判定し（ステップＳ１１１）、算出結果が正規化判定値以上である場合には、コンテキストが連続で、かつ、MPSが連続であるか否かを判定する（ステップＳ１１２）。
【００３１】
コンテキストが連続で、かつ、MPSが連続である場合には、算術復号化装置は、nビットの一括復号化処理を行い（ステップＳ１１３）、算出結果が正規化判定値以上でない場合、またはコンテキストが連続、かつ、MPSが連続でない場合には、1ビット毎の逐次復号化処理を行う（ステップＳ１１４）。
【００３２】
上述のように、特許文献１の算術復号化装置では、同一コンテキストが連続するという条件と、nビットを復号しても正規化が発生しないという条件に従って、一括復号処理が可能かどうかの判定を行っている。
【００３３】
そのためCABACのようなマルチコンテキスト型算術符号化において、頻繁にコンテキストの切り替えが行なわれる符号化系列に対しては、一括復号処理が選択される頻度が激減し、ほとんどのビットが1ビット毎の逐次復号処理により復号されることとなり、結果として復号処理の高速化ができない。
【００３４】
また、nビット復号しても正規化が発生しないという条件では、nビット復号化途中の正規化とnビット復号化直後の正規化を区別することができないため、nビット復号化直後に正規化が発生するような場合に対しても、1ビット毎の逐次処理へ切り替えるため、高速化が困難となる。
【非特許文献１】ＩＴＵ−Ｔ  Ｈ．２６４
【特許文献１】特許第３３５０４８２号公報
【発明の開示】
【発明が解決しようとする課題】
【００３５】
本発明は、上記事情に鑑みてなされたものであり、複数ビットを一括して復号化処理可能かどうか判定し、可能であれば一括復号処理を行うことで高速に算術復号化処理を行う算術復号化装置、および算術復号化プログラムを提供することを目的とする。
【課題を解決するための手段】
【００３６】
上記目的を達成するために、請求項１に記載の算術復号化装置は、少なくとも現在の領域幅、一つ前の領域幅、復号化すべきデータ系列、およびコンテキストを含む内部状態情報とともに復号要求が供給されると、算術復号化を行い、復号化データを出力する算術復号化装置であって、前記内部状態情報、および最初のビットからnビット目までの優勢シンボルのビット列である優勢シンボル列を記憶する内部状態情報記憶手段と、前記復号要求がされた際の、前記内部状態情報記憶手段に記憶されている前記内部状態情報を記憶する初期内部状態情報退避手段と、前記内部状態情報の更新に必要なテーブル情報を記憶する参照テーブル記憶手段と、優勢シンボル列を基に、nビット連続の優勢シンボルからなる前記復号化データを生成、出力、または、n−1ビット連続の優勢シンボルの後に1ビットの劣勢シンボルからなる前記復号化データを生成、出力する複数ビット一括復号手段と、前記初期内部状態情報退避手段に記録しておいた初期の内部状態情報を前記内部状態情報記憶手段に送り、前記内部状態情報記憶手段に記憶された当該初期の内部状態情報を用いて、1ビット毎の算術復号処理を行い、前記復号化データを生成、出力する１ビット復号手段と、一括復号処理が可能であるかどうかを、前記内部状態情報記憶手段より読み出した前記現在の領域幅、前記一つ前の領域幅、および前記復号化すべきデータ系列を元に判定し、一括復号が可能である場合には、前記複数ビット一括復号手段に対して、前記復号要求、一括復号の方法を示すためのフラグ値、一括復号ビット数ｎ、および前記優勢シンボル列を供給する一括復号処理管理手段とを備えることを特徴とする。
【００３７】
また、請求項２に記載の算術復号化プログラムは、少なくとも現在の領域幅、一つ前の領域幅、復号化すべきデータ系列、およびコンテキストを含む内部状態情報とともに復号要求が供給されると、算術復号化を行い、復号化データを出力する算術復号化装置としてコンピュータを機能させるための算術復号化プログラムであって、前記コンピュータを、前記内部状態情報、および最初のビットからnビット目までの優勢シンボルのビット列である優勢シンボル列を記憶する内部状態情報記憶手段と、前記復号要求がされた際の、前記内部状態情報記憶手段に記憶されている前記内部状態情報を記憶する初期内部状態情報退避手段と、前記内部状態情報の更新に必要なテーブル情報を記憶する参照テーブル記憶手段と、優勢シンボル列を基に、nビット連続の優勢シンボルからなる前記復号化データを生成、出力、または、n−1ビット連続の優勢シンボルの後に1ビットの劣勢シンボルからなる前記復号化データを生成、出力する複数ビット一括復号手段と、前記初期内部状態情報退避手段に記録しておいた初期の内部状態情報を前記内部状態情報記憶手段に送り、前記内部状態情報記憶手段に記憶された当該初期の内部状態情報を用いて、1ビット毎の算術復号処理を行い、前記復号化データを生成、出力する１ビット復号手段と、一括復号処理が可能であるかどうかを、前記内部状態情報記憶手段より読み出した前記現在の領域幅、前記一つ前の領域幅、および前記復号化すべきデータ系列を元に判定し、一括復号が可能である場合には、前記複数ビット一括復号手段に対して、前記復号要求、一括復号の方法を示すためのフラグ値、一括復号ビット数ｎ、および前記優勢シンボル列を供給する一括復号処理管理手段として機能させることを特徴とする。
【発明の効果】
【００３８】
本発明により、コンテキストの切り替えが発生した場合に対しても、一括復号を行うことが可能となる。そのため、複数ビットを一括に復号する頻度が高まるため、復号処理を高速化することができる。
【００３９】
また、nビットの一括復号を行う際に正規化が発生した場合、正規化がnビット復号した直後に発生したものかそうでないかを判定することにより、複数ビットを一括に復号する頻度が高まり、復号処理を高速化することができる。
【発明を実施するための最良の形態】
【００４０】
本発明の実施形態を、図１〜図８を用いて説明する。
【００４１】
≪第１の実施形態≫
第１の実施形態では、コンテキストの切り替えが発生するしないにかかわらず、「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」場合について説明する。
【００４２】
図１は、第１の実施形態における算術復号化装置１の機能構成を示す機能ブロック図である。
【００４３】
第１の実施形態における算術復号化装置１は、図１に示すように、一括復号処理管理部２、内部状態情報記憶部３、初期内部状態情報退避部４、参照テーブル記憶部５、複数ビット一括復号部６、および１ビット復号部７によって構成される。
【００４４】
一括復号処理管理部２は、一括復号処理が可能であるかどうかを、内部状態情報記憶部３より読み出した現在の領域幅、一つ前の領域幅、および復号化すべきデータ系列を元に判定し、一括復号が可能である場合には、複数ビット一括復号部６に対して、復号要求、一括復号の方法を示すためのフラグ値、一括復号ビット数ｎ、およびMPS列を供給する機能を有する。また、一括復号が可能でない場合には、一括復号処理管理部２は、１ビット復号部７に対して復号要求を供給する機能を有する。また、一括復号処理管理部２は、内部状態情報記憶部３に対して、内部状態情報の更新を行う機能を有し、内部状態情報記憶部３の現在の領域幅が正規化判定値を下回った場合には、正規化の処理を行う機能を有する。なお、第１の実施形態においては、一括復号処理管理部２は、「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」場合の一括復号の処理方法を示すフラグ値を、複数ビット一括復号部６に対して供給する。
【００４５】
内部状態情報記憶部３は、内部状態情報およびMPS列を記憶する。内部状態情報は少なくとも現在の領域幅、一つ前の領域幅、復号化すべきデータ系列、コンテキストから構成される。また、MPS列は、最初のビットからnビット目までのMPSの列であり、内部状態情報記憶部３にMPS列を記憶しておくことで、MPSの連続を容易に生成することが可能となる。内部状態情報記憶部３内の内部状態情報は、一括復号処理管理部２よって読み出される。
【００４６】
初期内部状態情報退避部４は、本算術復号化装置１に復号要求が送られた際の、内部状態情報記憶部３に記憶されている内部状態情報を記憶する。
【００４７】
参照テーブル記憶部５は、内部状態情報の更新に必要となる参照テーブル情報を記憶する。
【００４８】
複数ビット一括復号部６は、複数ビットの一括復号処理を行う機能を有する。具体的には、複数ビット一括復号部６は、一括復号処理管理部２より送られたフラグ値とMPS列により、nビット連続のMPSからなる復号化データを生成、出力し、または、n−1ビット連続のMPSの後に1ビットのLPSからなる復号化データを生成、出力する。いずれの場合にも、複数ビット一括復号部６は、内部状態情報記憶部３のデータの更新を行う。
【００４９】
１ビット復号部７は、復号化したデータを一時的に記憶しておく一時記憶部を有し（図示しない）、１ビット毎の逐次復号を行い、復号化データを生成、出力する機能を有する。具体的には、１ビット復号部７は、一括復号処理管理部２から１ビット復号部７に復号要求が通知された場合、初期内部状態情報退避部４に記録しておいた初期の内部状態情報を内部状態情報記憶部３に送り、復帰した後、内部状態情報記憶部３のデータを用いて、1ビット毎の算術復号処理をｎ回行う。１ビット復号部７は、1ビット復号する度に復号化データを一時記憶部に１ビットずつ供給する。
【００５０】
次に、第１の実施形態における算術復号化装置１の復号化処理時の動作を、図２のフローチャートを用いて説明する。
【００５１】
一括復号するビット数ｎは一括復号処理管理部２に入力され、ビットストリームおよびコンテキストインデックスは一括復号処理管理部２を介して内部状態情報記憶部３に入力される。
【００５２】
ここでは、一括復号処理を行うビット数ｎ、各ビットに対応するコンテキストインデックスn個、復号すべきビットストリームが算術復号化装置１の入力として既に与えられており、この段階で、すべての内部状態情報は初期化されていることとする。
【００５３】
まず、一括復号処理管理部２は、内部状態情報記憶部３に記憶されている復号化処理開始時のすべての内部状態情報を初期内部状態情報退避部４に記録する（ステップＳ０１）。ここで保存した内部状態情報は、一括復号処理が不可能であるとみなされ、１ビット毎の逐次復号処理を行う場合の初期状態の情報となる。
【００５４】
次に、MPSがn回連続すると仮定した上で、一括復号処理管理部２は、参照テーブル記憶部５に記憶されている参照テーブル情報を読み出し、さらに内部状態情報記憶部３に記憶されている内部状態情報を読み出し、そのうちの領域幅とコンテキストを更新する処理をn回繰り返す（ステップＳ０２）。MPSがn回連続した場合の領域幅が、現在の領域幅として内部状態情報記憶部３に、MPSがn−1回連続した場合の領域幅が、一つ前の領域幅として内部状態情報記憶部３に、それぞれ記録される。また、コンテキストはn−1回MPSが連続した状態が内部状態情報記憶部３に記録される。
【００５５】
この様子を図３に示す。図３の（ａ）〜（ｅ）はMPSが0〜n回まで連続した場合のそれぞれの領域幅を示す。一括復号処理管理部２は、n−1回目の領域幅（ｄ）を一つ前の領域幅として内部状態情報記憶部３に記録し、n回目の領域幅（ｅ）を現在の領域幅として内部状態情報記憶部３に記録する。また、入力されたコンテキストインデックスを基にMPS列を生成し、内部状態情報記憶部３に記録する。
【００５６】
一括復号処理管理部２は、内部状態情報記憶部３から現在の領域幅と復号すべきデータ系列を読み出し、現在の領域幅の方が復号すべきデータ系列より大きいか否かを判定する（ステップＳ０３）。
【００５７】
現在の領域幅の方が復号すべきデータ系列より大きい場合、一括復号処理管理部２は、内部状態情報記憶部３から領域幅を読み出し、領域幅が正規化判定値より大きいか否かを判定し（ステップＳ０４）、領域幅が正規化判定値より大きい場合は、複数ビット一括復号部６へ復号要求を通知し、MPS列を供給する。なお、正規化判定値は、一括復号処理管理部２に予め記憶されていることとする。
【００５８】
複数ビット一括復号部６に一括復号処理管理部２から復号要求が通知され、MPS列が供給されると、複数ビット一括復号部６は、nビット連続のMPSからなる復号化データを生成、出力する（ステップＳ０５）。
【００５９】
内部状態情報記憶部３には、コンテキストとしてn−1回MPSが連続した状態の値が記録されているので、一括復号処理管理部２は、参照テーブル記憶部５に記憶されている参照テーブル情報を読み出し、もう1回MPSが発生した状態に更新する処理を行う（ステップＳ０６）。
【００６０】
また、ステップＳ０３において、現在の領域幅の方が復号すべきデータ系列より大きくなかった場合、または、ステップＳ０４において、領域幅が正規化判定値より大きくなかった場合は、一括復号処理管理部２は、初期内部状態情報退避部４に記録した復号化処理開始時のすべての内部状態情報を読み出し、内部状態情報記憶部３へ記録し（ステップＳ０７）、１ビット復号部７へ復号要求を通知する。
【００６１】
１ビット復号部７は、一括復号処理管理部２から復号要求が通知されると、1ビット毎の逐次復号処理を行い、1ビット復号する毎に、１ビット復号部７内の一時記憶部に復号ビットを供給することで符号化データを生成し、nビットの復号が終了した後、１ビット復号部７は、１ビット復号部内の一時記憶部に記憶された復号化データを出力する（ステップＳ０８）。
【００６２】
このように処理を行うことで、コンテキストの切り替えが発生するしないにかかわらず、「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」符号化系列の一括復号が可能となり、マルチコンテキスト型の算術復号に対しても復号処理を高速に行うことが可能となる。
【００６３】
図４に、「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」場合における領域幅を示す。図４に示すように、初期状態（ｆ）〜nビット（ｊ）までの領域幅が、正規化判定値を下回らなければ、一括復号処理が行われる。
【００６４】
≪第２の実施形態≫
第２の実施形態では、第１の実施形態で説明した一括復号処理に加えて、「MPSがnビット連続」するが、「nビット復号後に正規化が発生する」場合について説明する。
【００６５】
第２の実施形態における算術復号化装置１は、一括復号処理管理部２、内部状態情報記憶部３、初期内部状態情報退避部４、参照テーブル記憶部５、複数ビット一括復号部６、および１ビット復号部７によって構成される。
【００６６】
第２の実施形態における算術復号化装置１は、図１に示す第１の実施形態における算術復号化装置１と同じ機能構成である。なお、第２の実施形態においては、一括復号処理管理部２は、「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」場合、または「MPSがnビット連続」するが、「nビット復号後に正規化が発生する」場合のどちらかの一括復号の処理方法を示すフラグ値を、複数ビット一括復号部６に対して供給する。
【００６７】
次に、第２の実施形態における算術復号化装置１の復号化処理時の動作を、図５のフローチャートを用いて説明する。
【００６８】
一括復号するビット数ｎは一括復号処理管理部２に入力され、ビットストリームおよびコンテキストインデックスは一括復号処理管理部２を介して内部状態情報記憶部３に入力される。
【００６９】
ここでは、一括復号処理を行うビット数ｎ、各ビットに対応するコンテキストインデックスn個、復号すべきビットストリームが算術復号化装置１の入力として既に与えられており、この段階で、すべての内部状態情報は初期化されていることとする。
【００７０】
まず、一括復号処理管理部２は、内部状態情報記憶部３に記憶されている復号化処理開始時のすべての内部状態情報を初期内部状態情報退避部４に記録する（ステップＳ１１）。ここで保存した内部状態情報は、一括復号処理が不可能であるとみなされ、１ビット毎の逐次復号処理を行う場合の初期状態の情報となる。
【００７１】
次に、MPSがn回連続すると仮定した上で、一括復号処理管理部２は、参照テーブル記憶部５に記憶されている参照テーブル情報を読み出し、さらに内部状態情報記憶部３に記憶されている内部状態情報を読み出し、そのうちの領域幅とコンテキストを更新する処理をn回繰り返す（ステップＳ１２）。MPSがn回連続した場合の領域幅が、現在の領域幅として内部状態情報記憶部３に、MPSがn−1回連続した場合の領域幅が、一つ前の領域幅として内部状態情報記憶部３に、それぞれ記録される。また、コンテキストはn−1回MPSが連続した状態が内部状態情報記憶部３に記録される。
【００７２】
一括復号処理管理部２は、内部状態情報記憶部３から現在の領域幅と復号すべきデータ系列を読み出し、現在の領域幅の方が復号すべきデータ系列より大きいか否かを判定する（ステップＳ１３）。
【００７３】
現在の領域幅の方が復号すべきデータ系列より大きい場合、一括復号処理管理部２は、内部状態情報記憶部３から領域幅を読み出し、領域幅が正規化判定値より大きいか否かを判定し（ステップＳ１４）、領域幅が正規化判定値より大きい場合は、複数ビット一括復号部６へ復号要求を通知し、MPS列を供給する。なお、正規化判定値は、一括復号処理管理部２に予め記憶されていることとする。
【００７４】
複数ビット一括復号部６に一括復号処理管理部２から復号要求が通知され、MPS列が供給されると、複数ビット一括復号部６は、nビット連続のMPSからなる復号化データを生成、出力する（ステップＳ１５）。
【００７５】
内部状態情報記憶部３には、コンテキストとしてn−1回MPSが連続した状態の値が記録されているので、一括復号処理管理部２は、参照テーブル記憶部５に記憶されている参照テーブル情報を読み出し、もう1回MPSが発生した状態に更新する処理を行う（ステップＳ１６）。
【００７６】
また、ステップＳ１４において、領域幅が正規化判定値より大きくなかった場合は、一括復号処理管理部２は、内部状態情報記憶部３から一つ前の領域幅を読み出し、一つ前の領域幅が正規化判定値より大きいか否かを判定し（ステップＳ１７）、一つ前の領域幅が正規化判定値より大きい場合は、複数ビット一括復号部６へ復号要求を通知する。
【００７７】
複数ビット一括復号部６に一括復号処理管理部２から復号要求が通知されると、一括復号処理管理部２は、内部状態情報記憶部３に記録されている現在の領域幅と復号化すべきデータ系列に対し、１ビットの正規化処理を行い（ステップＳ１８）、ステップＳ１５の処理へ移行する。
【００７８】
また、ステップＳ１３において、現在の領域幅の方が復号すべきデータ系列より大きくなかった場合、または、ステップＳ１７において、一つ前の領域幅が正規化判定値より大きくなかった場合は、一括復号処理管理部２は、初期内部状態情報退避部４に記録した復号化処理開始時のすべての内部状態情報を読み出し、内部状態情報記憶部３へ記録し（ステップＳ１９）、１ビット復号部７へ復号要求を通知する。
【００７９】
１ビット復号部７は、一括復号処理管理部２から復号要求が通知されると、1ビット毎の逐次復号処理を行い、1ビット復号する毎に、１ビット復号部７内の一時記憶部に復号ビットを供給することで符号化データを生成し、nビットの復号が終了した後、１ビット復号部７は、１ビット復号部内の一時記憶部に記憶された復号化データを出力する（ステップＳ２０）。
【００８０】
このように処理を行うことで、「MPSがnビット連続」し、かつ、「正規化が発生しない」場合に加え、「MPSがnビット連続」するが、「nビット復号直後に正規化が発生する」場合に対しても、符号化系列を一括復号することが可能となる。そのため、一括復号処理を行う頻度が高くなり、復号処理を高速化することができる。
【００８１】
図６に、「MPSがnビット連続」するが、「nビット復号後に正規化が発生する」場合における領域幅を示す。図６に示すように、初期状態（ｋ）〜nビット（ｏ）までの領域幅において、nビット（ｏ）の領域幅が正規化判定値を下回っても、MPSが発生した後の正規化は必ず1ビットであるため、1ビットの正規化を行った上で、一括復号処理が行われる。
【００８２】
≪第３の実施形態≫
第３の実施形態では、第１および第２の実施形態で説明した一括復号処理に加えて、「MPSがn−1ビット連続し、次にLPSが発生する」が、「n−1ビット復号後に正規化が発生しない」場合について説明する。
【００８３】
第３の実施形態における算術復号化装置１は、一括復号処理管理部２、内部状態情報記憶部３、初期内部状態情報退避部４、参照テーブル記憶部５、複数ビット一括復号部６、および１ビット復号部７によって構成される。
【００８４】
第３の実施形態における算術復号化装置１は、図１に示す第１および第２の実施形態における算術復号化装置１と同じ機能構成である。なお、第２の実施形態においては、一括復号処理管理部２は、「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」場合、または「MPSがnビット連続」するが、「nビット復号後に正規化が発生する」場合、「MPSがn−1ビット連続し、次にLPSが発生する」が、「n−1ビット復号後に正規化が発生しない」場合のいずれかの一括復号の処理方法を示すフラグ値を、複数ビット一括復号部６に対して供給する。
【００８５】
次に、第３の実施形態における算術復号化装置１の復号化処理時の動作を、図７のフローチャートを用いて説明する。
【００８６】
一括復号するビット数ｎは一括復号処理管理部２に入力され、ビットストリームおよびコンテキストインデックスは一括復号処理管理部２を介して内部状態情報記憶部３に入力される。
【００８７】
ここでは、一括復号処理を行うビット数ｎ、各ビットに対応するコンテキストインデックスn個、復号すべきビットストリームが算術復号化装置１の入力として既に与えられており、この段階で、すべての内部状態情報は初期化されていることとする。
【００８８】
まず、一括復号処理管理部２は、内部状態情報記憶部３に記憶されている復号化処理開始時のすべての内部状態情報を初期内部状態情報退避部４に記録する（ステップＳ２１）。ここで保存した内部状態情報は、一括復号処理が不可能であるとみなされ、１ビット毎の逐次復号処理を行う場合の初期状態の情報となる。
【００８９】
次に、MPSがn回連続すると仮定した上で、一括復号処理管理部２は、参照テーブル記憶部５に記憶されている参照テーブル情報を読み出し、さらに内部状態情報記憶部３に記憶されている内部状態情報を読み出し、そのうちの領域幅とコンテキストを更新する処理をn回繰り返す（ステップＳ２２）。MPSがn回連続した場合の領域幅が、現在の領域幅として内部状態情報記憶部３に、MPSがn−1回連続した場合の領域幅が、一つ前の領域幅として内部状態情報記憶部３に、それぞれ記録される。また、コンテキストはn−1回MPSが連続した状態が内部状態情報記憶部３に記録される。
【００９０】
一括復号処理管理部２は、内部状態情報記憶部３から現在の領域幅と復号すべきデータ系列を読み出し、現在の領域幅の方が復号すべきデータ系列より大きいか否かを判定する（ステップＳ２３）。
【００９１】
現在の領域幅の方が復号すべきデータ系列より大きい場合、一括復号処理管理部２は、内部状態情報記憶部３から領域幅を読み出し、領域幅が正規化判定値より大きいか否かを判定し（ステップＳ２４）、領域幅が正規化判定値より大きい場合は、複数ビット一括復号部６へ復号要求を通知し、MPS列を供給する。なお、正規化判定値は、一括復号処理管理部２に予め記憶されていることとする。
【００９２】
複数ビット一括復号部６に一括復号処理管理部２から復号要求が通知され、MPS列が供給されると、複数ビット一括復号部６は、nビット連続のMPSからなる復号化データを生成、出力する（ステップＳ２５）。
【００９３】
内部状態情報記憶部３には、コンテキストとしてn−1回MPSが連続した状態の値が記録されているので、一括復号処理管理部２は、参照テーブル記憶部５に記憶されている参照テーブル情報を読み出し、もう1回MPSが発生した状態に更新する処理を行う（ステップＳ２６）。
【００９４】
また、ステップＳ２４において、領域幅が正規化判定値より大きくなかった場合は、一括復号処理管理部２は、内部状態情報記憶部３から一つ前の領域幅を読み出し、一つ前の領域幅が正規化判定値より大きいか否かを判定し（ステップＳ２７）、一つ前の領域幅が正規化判定値より大きい場合は、複数ビット一括復号部６へ復号要求を通知する。
【００９５】
複数ビット一括復号部６に一括復号処理管理部２から復号要求が通知されると、一括復号処理管理部２は、内部状態情報記憶部３に記録されている現在の領域幅と復号化すべきデータ系列に対し、１ビットの正規化処理を行い（ステップＳ２８）、ステップＳ２５の処理へ移行する。
【００９６】
また、ステップＳ２７において、一つ前の領域幅が正規化判定値より大きくなかった場合は、一括復号処理管理部２は、初期内部状態情報退避部４に記録した復号化処理開始時のすべての内部状態情報を読み出し、内部状態情報記憶部３へ記録し（ステップＳ２９）、１ビット復号部７へ復号要求を通知する。
【００９７】
１ビット復号部７は、一括復号処理管理部２から復号要求が通知されると、1ビット毎の逐次復号処理を行い、1ビット復号する毎に、１ビット復号部７内の一時記憶部に復号ビットを供給することで符号化データを生成し、nビットの復号が終了した後、１ビット復号部７は、１ビット復号部内の一時記憶部に記憶された復号化データを出力する（ステップＳ３０）。
【００９８】
また、ステップＳ２３において、現在の領域幅の方が復号すべきデータ系列より大きくなかった場合、一括復号処理管理部２は、内部状態情報記憶部３から一つ前の領域幅と復号化すべきデータ系列をそれぞれ読み出し、一つ前の領域幅が復号化すべきデータ系列より大きく、かつ、一つ前の領域幅が正規化判定値より大きいか否か判定し（ステップＳ３１）、一つ前の領域幅が復号化すべきデータ系列より大きく、かつ、一つ前の領域幅が正規化判定値より大きい場合、複数ビット一括復号部６へ復号要求を通知し、MPS列を供給する。
【００９９】
複数ビット一括復号部６に一括復号処理管理部２から、復号要求が通知され、MPS列が供給されると、複数ビット一括復号部６は、n−1ビット連続のMPSからなる復号化データを生成、出力した後、MPS列の最後のビットを反転して1ビットのLPSからなる復号値を生成し、出力する（ステップＳ３２）。
【０１００】
内部状態情報記憶部３には、コンテキストとしてn−1回MPSが連続した状態の値が記録されているので、一括復号処理管理部２は、参照テーブル記憶部５に記憶されている参照テーブル情報を読み出し、コンテキストを次にLPSが発生した状態に更新する処理を行う（ステップＳ３３）。
【０１０１】
一括復号処理管理部２は、内部状態情報記憶部３から現在の領域幅を読み出し、現在の領域幅が正規化判定値を下回っている間、1ビット正規化の処理を繰り返す（ステップＳ３４）。
【０１０２】
なお、ステップＳ３１において、上記の条件を満たさない場合は、ステップＳ２９の処理へ移行する。
【０１０３】
このように処理を行うことで、「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」場合と、「MPSがnビット連続」するが、「nビット復号後に正規化が発生する」場合と、「MPSがn−1ビット連続し、次にLPSが発生する」が、「n−1ビット復号後に正規化が発生しない」場合のそれぞれに対し、一括復号処理を行うことができる。そのため、一括復号を行う頻度が高くなるため、復号処理を高速に行うことができる。
【０１０４】
図８に示すように、初期状態（ｐ）〜nビット（ｔ）までの領域幅において、nビット先読み後の領域幅（ｔ）がデータ系列以下であり、かつ、n−1ビット先読み後の領域幅（ｓ）がデータ系列より大きく、かつ、n−1ビット先読み後の領域幅（ｔ）が正規化判定値以上である場合は、「MPSがn−1ビット連続し、次にLPSが発生する」、かつ、「n−1ビット復号後に正規化が発生しない」場合であり、それ以外のときは、n−1ビット復号する間に正規化が発生する場合である。
【０１０５】
なお、途中で正規化が発生する場合は、一括復号処理が煩雑になるため、初期状態に戻した上で最初から１ビット毎の逐次復号処理を行うこととする。
【０１０６】
以上、本発明によれば、コンテキストの切り替えが発生した場合に対しても、一括復号を行うことが可能となる。そのため、複数ビットを一括に復号する頻度が高まるため、復号処理を高速化することができる。
【０１０７】
また、nビットの一括復号を行う際に正規化が発生した場合、正規化がnビット復号した直後に発生したものかそうでないかを判定することにより、複数ビットを一括に復号する頻度が高まり、復号処理を高速化することができる。
【図面の簡単な説明】
【０１０８】
【図１】本発明の算術復号化装置の機能構成を示す図である。
【図２】第１の実施形態における算術復号化装置の動作を示すフローチャートである。
【図３】nビットまでの領域幅の推移（MPSが0〜n回まで連続した場合）を示す図である。
【図４】nビットまでの領域幅の推移（「MPSがnビット連続」し、「nビット復号後に正規化が発生しない」場合）を示す図である。
【図５】第２の実施形態における算術復号化装置の動作を示すフローチャートである。
【図６】nビットまでの領域幅の推移（「MPSがnビット連続」するが、「nビット復号後に正規化が発生する」場合）を示す図である。
【図７】第３の実施形態における算術復号化装置の動作を示すフローチャートである。
【図８】nビットまでの領域幅の推移（「MPSがn−1ビット連続し、次にLPSが発生する」、かつ、「n−1ビット復号後に正規化が発生しない」場合）を示す図である。
【図９】nビットまでの領域幅の推移を示す図である。
【図１０】従来の算術復号化装置の機能構成を示す図である。
【図１１】従来の算術復号化装置の動作を示すフローチャートである。
【図１２】特許文献１における算術復号化装置の動作を示すフローチャートである。
【符号の説明】
【０１０９】
１  算術復号化装置
２  一括復号処理管理部
３  内部状態情報記憶部
４  初期内部状態情報退避部
５  参照テーブル記憶部
６  複数ビット一括復号部
７  １ビット復号部
１０１  算術復号化装置
１０２  制御部
１０３  算術復号化部
１０４  内部状態情報記憶部
１０５  参照テーブル記憶部
【図１】
2005217871.tif 000003
【図２】
2005217871.tif 000004
【図３】
2005217871.tif 000005
【図４】
2005217871.tif 000006
【図５】
2005217871.tif 000007
【図６】
2005217871.tif 000008
【図７】
2005217871.tif 000009
【図８】
2005217871.tif 000010
【図９】
2005217871.tif 000011
【図１０】
2005217871.tif 000012
【図１１】
2005217871.tif 000013
【図１２】
2005217871.tif 000014