(57)【要約】当該画像データ復号化装置に入力された画像データを取得して、取得した画像データを復号化する復号化部を備える画像データ復号化装置において、バンド幅を小さくする。画像のビットストリームを復号化する復号化装置（１００）であって、当該復号化装置（１００）に入力されたビットストリームを、当該ビットストリームが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化されたビットストリームへ変換する符号変換部（１０１）と、符号変換部（１０１）により前記変換がされた後のビットストリームを取得して、取得したビットストリームを復号化する画像デコーダ（１０３）とを備える。
2008129855.tif 000002
【特許請求の範囲】
【請求項１】
画像データを復号化する画像データ復号化装置であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と
を備えることを特徴とする画像データ復号化装置。
【請求項２】
前記画像データは、動きベクトルと、係数値とを含み、
前記符号変換手段は、
画像データに含まれる、前記第３の符号化規則により符号化された動きベクトルを、前記第３の符号化規則よりも最大の符号長が短い第４の符号化規則で符号化された動きベクトルに変換する動きベクトル符号変換手段と、
画像データに含まれる、前記第５の符号化規則により符号化された係数値を、前記第５の符号化規則よりも最大の符号長が短い第６の符号化規則で符号化された係数値に変換する係数値符号変換手段とを備え、
前記動きベクトル符号変換手段と前記係数値符号変換手段とによる変換を画像データに施すことを特徴とする請求項１記載の画像データ復号化装置。
【請求項３】
前記符号変換手段により変換がされた後の画像データを記憶するバッファを更に備え、
前記復号化手段は、前記バッファに記憶された画像データを復号化し、
前記バッファと当該バッファの外部との間で前記画像データが転送されるバンド幅を特定するバンド幅情報を取得するバンド幅情報取得手段を更に備え、
前記符号変換手段は、前記画像データに含まれる、当該画像データの前記転送における各送信単位のうちで、データ長が最大の送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超える場合に、当該画像データの前記変換を行うことを特徴とする請求項１記載の画像データ復号化装置。
【請求項４】
前記符号変換手段により変換がされた後の画像データを記憶するバッファを更に備え、
前記復号化手段は、前記バッファに記憶された画像データを復号化し、
前記バッファと当該バッファの外部との間で前記画像データが転送されるバンド幅を特定するバンド幅情報を取得するバンド幅情報取得手段と、
前記符号変換手段により変換がされた後の画像データに含まれる、当該画像データの前記転送での送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超えるか否かを判定する判定手段と、
前記判定手段により、データ長が前記バンド幅を超えると判定されれば、当該判定がされた前記送信単位のビット数を削減する削減手段とを更に備えることを特徴とする請求項１記載の画像データ復号化装置。
【請求項５】
前記削減手段は、画像データの前記送信単位のなかに、ＡＣ係数、ＤＣ係数のうちでＡＣ係数が含まれない場合にのみ、ＤＣ係数を削除することを特徴とする請求項４記載の画像データ復号化装置。
【請求項６】
前記判定手段は、前記削減手段により輝度係数が削除された前記送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超えるか否かを判定し、
前記削減手段は、輝度係数を削除した前記送信単位のデータ長が前記バンド幅を超えると判定された場合にのみ、当該送信単位の色差係数を削除することを特徴とする請求項４記載の画像データ復号化装置。
【請求項７】
前記第１の符号化規則は、当該第１の符号化規則が値を対応付ける各符号の大きさが不等長であり、
前記第２の符号化規則は、前記第１の符号化規則が予め定められたサイズ以下の小さい符号に対応付ける各値を、それぞれ、当該符号と同じ符号が少なくとも一部に含まれる符号に対応付けると共に、当該サイズよりも大きい符号に対応付ける各値を、それぞれ、いずれも前記予め定められたサイズを有し、互いに等長である予め定められた等長符号が含まれる符号へと対応付けることを特徴とする請求項１記載の画像データ復号化装置。
【請求項８】
前記サイズは、前記第１の符号化規則が対応付けをする全ての値を、等長符号により符号化する場合に必要なビットの最低個数であり、
前記等長符号は、当該最低個数のビットよりなる等長の符号であり、
前記第２の符号化規則の符号は、前記第１の符号化規則の符号と同じ符号、または、当該等長符号のうちの何れか一方を含む本体部と、当該本体部が前記第１の符号化規則の符号と同じ符号が含まれるか、または、前記等長符号が含まれるかを識別する１ビットの識別ビットとを備えることを特徴とする請求項７記載の画像データ復号化装置。
【請求項９】
前記第２の符号化規則は、前記第１の符号化規則の符号が示す値と、前記等長符号が示す等長符号値との値対応関係が含まれ、
前記符号変換手段は、前記第１の符号化規則の符号を前記等長符号を含む符号に変換する場合には、前記第１の符号化規則の符号が示す値に対して前記値対応関係が対応付ける等長符号値の前記等長符号の符号を、含まれる等長符号として選択する
ことを特徴とする請求項８記載の画像データ復号化装置。
【請求項１０】
前記値対応関係は、前記第１の符号化規則の各値を、それぞれ、当該値の絶対値から予め定められた減数を減じた絶対値を有する等長符号値の前記等長符号に対応付ける
ことを特徴とする請求項９記載の画像データ復号化装置。
【請求項１１】
前記変換の前の画像データに基づいて、前記変換の後の画像データの最大の符号長を特定する最大符号長特定手段を更に備え、
前記符号変換手段は、前記最大符号長特定手段により特定された前記最大の符号長が予め定められた大きさを超える場合に前記変換を行い、
前記復号化手段に取得される画像データに対して、前記符号変換手段による前記変換がされたか否かを示す変換有無表示フラグを付加するフラグ付加手段を更に備える
ことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１２】
前記第２の符号化規則は、平均の符号長が前記第１の符号化規則よりも長いことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１３】
前記画像データは、Ｈ．２６４規格による画像データであり、
前記符号変換手段により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号手段を更に備えることを特徴とする請求項１記載の画像データ復号化装置。
【請求項１４】
前記符号変換手段により変換がされた後の画像データを記憶するバッファを更に備え、
前記復号化手段は、前記バッファに記憶された画像データを取得して、取得した画像データを復号化し、
前記バッファと当該バッファの外部との間で前記画像データを転送するバスを更に備え、
前記符号化規則は、値と、当該値を表す符号との対応関係であり、
前記符号は、１ビットのデータが複数個並んだビット列であり、
前記最大の符号長は、符号化規則が値を対応付ける各符号のうちで、前記ビット列が最長である符号の当該ビット列のビットの個数であり、
前記符号変換手段は、画像データに含まれる各符号を、それぞれ、当該符号に前記第１の符号化規則が対応付ける値に対して前記第２の符号化規則が対応付ける符号へ変換する
ことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１５】
画像データを画像データ復号化装置によって復号化する画像データ復号化方法であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換工程と、
前記符号変換工程により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化工程と
を備えることを特徴とする画像データ復号化方法。
【請求項１６】
画像データを復号化する集積回路であって、
当該集積回路に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と
を備えることを特徴とする集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットストリームの伝送に必要なバンド幅を削減するためにデータ変換を行う画像復号化技術に関するもので、より具体的には圧縮された画像データの最大符号長を小さくするためにデータ変換を行う画像復号化方法及び復号化装置に関するものである。
【背景技術】
【０００２】
近年、動画像データにおいて高圧縮を実現するためにＨ．２６４規格（非特許文献１）やＶＣ−１規格（非特許文献２）が画像符号化技術として採用されてきている。これらの技術においては、圧縮された画像データ（以後、ビットストリームと記述）はいったんバッファに蓄えられる。蓄えられたビットストリームは、画像復号のリアルタイム性を保持するため、ある制限時間内で画像デコーダに転送される。近年、画像の高精細化や複数画像の同時伝送のため、この制限時間が短くなりつつあり、その結果、ビットストリームを制限時間内で画像デコーダに転送するために必要となるバンド幅（転送データ量÷転送時間）が増加している。【０００３】
さらに、Ｈ．２６４規格やＶＣ−１規格では、画像を複数のブロックに分割して符号化するが、各ブロック（以後、マクロブロックと記述）の符号化結果が０ビットから数１０００ビットという広い範囲になりうる。このため、ビットストリームを制限時間内で画像デコーダに転送するには、マクロブロックの符号化結果が最大のビット量となる場合を想定する必要があり、ビットストリームを画像デコーダに転送するのに大きなバンド幅が必要となっている。【０００４】
以上のように、近年、ビットストリームを画像デコーダに転送するためのバンド幅が無視できないほどに大きくなっている。しかし、Ｈ．２６４規格やＶＣ−１規格においては、ビットストリームを画像デコーダに転送する方法は実装上の問題として何も制約されていないため、ビットストリームを画像デコーダに転送するためのバンド幅が画像復号装置の構成において課題となっている。【０００５】
この課題を解決するには、ビットストリームを画像デコーダに転送するためのバンド幅を削減する必要がある。このバンド幅は前述のようにマクロブロック符号化結果の最大ビット量で決定されるため、マクロブロック符号化結果の最大ビット量が与えられたバンド幅で転送可能なビット量を超えないようにマクロブロック符号化結果のビット量を削減すればよい。【０００６】
一方、特許文献１では、マクロブロック符号化結果のビット量を削減する手法を示している。特許文献１の手法は、ＭＰＥＧ−２規格で符号化されたマクロブロック内の各符号（符号化手法を示すモード符号、動きベクトル符号、ＤＣＴ係数を示す符号など）をより圧縮率が高い符号に変換することでマクロブロック符号化結果のビット量を削減する。しかし、特許文献１の手法は、マクロブロック符号化結果の平均的なビット量の削減を目的としているため、マクロブロック符号化結果の最大ビット量が削減される保障はない。【０００７】
図１は、特許文献１の符号変換における、変換前の符号の符号化規則を示す図である。【０００８】
図２は、特許文献１の符号変換における、変換後の符号の符号化規則を示す図である。【０００９】
具体的には、特許文献１において、図１の符号を図２の符号のように変換しているが、符号の最大ビット数、つまり、図１の表の最下段の符号のビット数、図２の表の最下段の符号のビット数は、どちらも６ビットで、互いに同一である。
【非特許文献１】Ｈ．２６４  ＩＳＯ／ＩＥＣ１４４９６−１０規格，ＩＴＵ−Ｔ  Ｈ．２６４規格
【非特許文献２】ＳＭＰＴＥ  ４２１Ｍ−２００６  Ｔｅｌｅｖｉｓｉｏｎ  −  ＶＣ−１  Ｃｏｍｐｒｅｓｓｅｄ  Ｖｉｄｅｏ  Ｂｉｔｓｔｒｅａｍ  Ｆｏｒｍａｔ  ａｎｄ  Ｄｅｃｏｄｉｎｇ  Ｐｒｏｃｅｓｓ
【特許文献１】特開２００５−９４６９３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、前記従来の構成のようなマクロブロックのビット量を削減する手法では、マクロブロック符号化結果の最大ビット量ではなく、マクロブロック符号化結果の平均的なビット量の削減だけが課題とされているため、マクロブロック符号化結果の最大ビット量を削減することができない。【００１１】
また、非特許文献１などの画像符号化規格で示される範囲でリアルタイムに画像をデコードする画像デコーダを構成すると、ビットストリームを画像デコーダに転送するためのバンド幅がマクロブロック符号化結果の最大ビット量によって決まる。前記非特許文献１などの画像符号化規格では、マクロブロック符号化結果のビット量が０ビットから数１０００ビットの範囲でマクロブロック毎に変動する。この結果、リアルタイムの画像デコードを行う場合に、ビットストリームを画像デコーダへ転送するためのバンド幅が大きくなり、ビットストリームを蓄えるバッファの高性能化などによる画像デコーダのコストが増加するという問題がある。【００１２】
このように、画像データを復号化する画像データ復号化装置であって、当該復号化装置に入力された画像データを取得して、取得した画像データを復号化する復号化部を備える復号化装置が従来よりある。しかし、規格に係る技術が考えられた当時には、画像の高精細化や、画像の同時伝送のために、画像データを転送するためのバンド幅が無視できないほどに大きくなるとは見通されていなかった。他方、規格を実装した画像データ復号化装置を実際に作っていくうちに、マクロブロック符号化結果の最大ビット量が大きくなり、必要なバス幅が大きくなってしまう問題が生じることが分かった。【００１３】
ここで、例えば、Ｈ．２６４規格のＣＡＢＡＣ符号では、符号化結果のビットストリームが算術符号で圧縮されている。ＣＡＢＡＣ符号で用いられている算術符号は、復号が逐次処理とならざるを得ないため、画像デコーダの処理性能に見合った復号性能を得るのが困難である。そこで、ＣＡＢＡＣ符号に対応する復号化装置は、算術符号の復号結果を規格のＣＰＢに相当するバッファに蓄え、画像デコーダは算術符号を復号した結果をデコードするように構成される。しかし、この構成では、算術符号の圧縮を復元した結果を画像デコーダに転送することになるため、マクロブロックの最大ビット量が約５０００ビットと大きく、バッファから画像デコーダに復号結果を転送するのに必要なバンド幅が非常に大きくなる。例えば、このように、マクロブロック符号化結果の最大ビット量が大きくなり、必要なバス幅が大きくなってしまう問題が生じる。【００１４】
このような課題は、画像データを復号化する画像データ復号化装置に共通する課題である。【００１５】
そこで、本発明は、この課題を解決するものであり、マクロブロック符号化結果の最大ビット量を削減することができる復号化装置を提供することを目的とする。
【課題を解決するための手段】
【００１６】
前記従来の課題を解決するために、本発明における画像データ復号化装置は、次の構成を採る。【００１７】
本発明の画像データ復号化装置は、画像データを復号化する画像データ復号化装置であって、当該復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則より最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と、を備えることを特徴とする画像データ復号化装置である。【００１８】
また、本発明のコンピュータプログラムは、画像データを画像データ復号化装置に復号化させるためのコンピュータプログラムであって、当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則より最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換機能と、前記符号変換ステップにより前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化機能とを前記画像データ復号化装置に実現させるためのコンピュータプログラムである。【００１９】
なお、請求項３における、バンド幅情報により特定されて、前記画像データが転送される「バンド幅」は、バスには画像データ以外のその他のデータも転送される場合には、バンド幅全体から、その他のデータに関する部分を除いた、画像データの転送に関するバンド幅であるものとする。「バンド幅情報」は、例えば、画像データの目標ビット量や、画像データに含まれる送信単位の目標ビット量であるものとしてもよい。また、前記削減手段は、画像データの前記送信単位のなかに、予め定められたＡＣ係数が含まれない場合にのみ、ＤＣ係数を削除するものとしてもよい。【００２０】
他方、本発明の画像データ復号化装置は、次のようにしてもよい。すなわち、本発明の画像データ復号化装置は、第１の符号化規則で符号化された画像データに対して、前記第１の符号化規則よりも最大符号長が短い第２の符号化規則に変換するデータ変換手段と、前記変換手段により変換された画像データを復号する画像デコード手段とを備える画像データ復号化装置であってもよい。【００２１】
この画像データ復号化装置であれば、画像デコーダへ入力するストリームのバンド幅が、マクロブロックの符号化結果の最大ビット量で決まることを利用し、入力ビットストリームに対してマクロブロックの最大ビット量が減少するような符号の変換、もしくは、マクロブロックの最大ビット量が減少するような情報量の削減を適用し、さらに、適用した符号の変換や情報量の削減に対応するように画像デコーダを構成することで、画像デコーダへ入力するストリームのバンド幅を削減できて、画像デコーダへ入力するストリームのバンド幅を削減する復号化装置を提供することができる。【００２２】
なお、前記データ変換手段は、動きベクトル情報と係数値とを別々に符号変換するものとしてもよい。【００２３】
また、前記データ変換手段から出力される画像データを記憶するバッファと、前記バッファに対するバンド幅を取得する取得手段をさらに備え、前記バッファへの送信単位において前記画像データの最大データ長が、前記取得手段により取得されたバンド幅を超える場合には、前記データ変換手段によりデータ変換を行うものとしてもよい。【００２４】
また、前記データ変換手段から出力される画像データを記憶するバッファと、前記バッファに対するバンド幅を取得する取得手段と、前記バッファから出力される画像データに対するバンド幅を取得し、取得したバンド幅に基づいて目標値を設定し、前記符号変換された画像データのビット数を送信単位毎にカウントし、カウントしたビット数が前記目標値を超えた場合にデータ削減指示を出すビット数制御手段と、前記削減指示を受けた場合に、前記符号変換された画像データのビット数を削減する削減手段をさらに備えるものとしてもよい。【００２５】
また、前記削減手段は、輝度ＡＣ、色差ＡＣ、輝度ＤＣ、色差ＤＣの順でビット数を削減するものとしてもよい。【００２６】
また、前記第１の符号化規則は不等長符号へ符号化する符号化規則であり、前記第２の符号化規則は不等長符号と等長符号とを切り替えて符号化し、前記第２の符号化規則の最大符号長は等長符号の符号長とする符号化規則であるものとしてもよい。【００２７】
また、画像データを復号する復号化方法であって、第１の符号化規則で符号化された画像データに対して、前記第１の符号化規則よりも最大符号長が短い第２の符号化規則に変換するデータ変換ステップと、前記変換手段により変換された画像データを復号する画像デコードステップと備える復号化方法を構成してもよい。【００２８】
また、画像データを復号する復号化装置に用いられる集積回路であって、第１の符号化規則で符号化された画像データに対して、前記第１の符号化規則よりも最大符号長が短い第２の符号化規則に変換するデータ変換手段と、前記変換手段により変換された画像データを復号する画像デコード手段とを備える集積回路を構成してもよい。
【発明の効果】
【００２９】
本発明は、画像デコーダへのバンド幅を削減するため、符号長の最大ビット数を削減するような変換手段を設けることにより、ビットストリームをバッファに蓄える前に、ビットストリームをマクロブロックの最大ビット量が減少するように構成された符号に変換し、変換後のビットストリームを変換後のビットストリームに対応した画像デコーダで復号するものである。これにより、マクロブロック符号化結果の最大ビット量が減少するため、リアルタイムの画像デコードのために必要となるビットストリームを画像デコーダに転送するバンド幅を小さくすることができる。また、ビットストリームを蓄えるバッファの高性能化などが不要となるため、より低いコストで画像デコーダを実現することができる。
【図面の簡単な説明】
【００３０】
【図１】図１は、特許文献１の符号変換における、変換前の符号の符号化規則を示す図である。
【図２】図２は、特許文献１の符号変換における、変換後の符号の符号化規則を示す図である。
【図３】図３は、本発明の構成図である。
【図４】図４は、符号変換部の構成図である。
【図５】図５は、符号変換部の動作を示すフローチャートである。
【図６】図６は、符号変換前の動きベクトルの符号化（ＣＡＶＬＣ）を示す図である。
【図７】図７は、符号変換後の動きベクトルの符号化（ＣＡＶＬＣ）を示す図である。
【図８】図８は、符号変換前の係数値の符号化（ＣＡＶＬＣ）を示す図である。
【図９】図９は、符号変換後の係数値の符号化（ＣＡＶＬＣ）を示す図である。
【図１０】図１０は、実施の形態２の構成図である。
【図１１】図１１は、係数削減部の構成図である。
【図１２】図１２は、係数削減部の動作を示すフローチャートである。
【図１３】図１３は、係数削除の動作を示すフローチャートである。
【図１４】図１４は、実施の形態３の構成図である。
【図１５】図１５は、符号変換前の動きベクトルの符号化（ＣＡＢＡＣ）を示す図である。
【図１６】図１６は、符号変換後の動きベクトルの符号化（ＣＡＢＡＣ）を示す図である。
【図１７】図１７は、符号変換前の係数値の符号化（ＣＡＢＡＣ）を示す図である。
【図１８】図１８は、符号変換後の係数値の符号化（ＣＡＢＡＣ）を示す図である。
【図１９】図１９は、符号変換前の参照画像インデックスと量子化パラメータの符号化（ＣＡＢＡＣ）を示す図である。
【図２０】図２０は、符号変換後の参照画像インデックスと量子化パラメータの符号化（ＣＡＢＡＣ）を示す図である。
【図２１】図２１は、実施の形態４に係る復号化装置１００Ｃを示す図である。
【符号の説明】
【００３１】
１００    復号化装置
１０１    符号変換部
１０２    バッファ
１０３    画像デコーダ
１０４    フレームメモリ
２０１    ビットストリーム復号部
２０２    ビットストリーム生成部
２０３    ストリーム符号変換部
２０４    動きベクトル符号変換部
２０５    係数値符号変換部
１００Ａ    復号化装置
８０１    係数削減部
９０１    ビットストリーム復号部
９０２    削減部
９０３    ビットストリーム生成部
９０４    ビット量計測部
９０５    係数削減制御部
１００Ｂ    復号化装置
１２０１    算術符号デコーダ
１２０２    符号変換部
１２０３    係数削減部
１００Ｃ    復号化装置
１３０１    変換後最大符号長特定部
１３０４    切替部
１３０３    規則種類表示フラグ付与部
【発明を実施するための最良の形態】
【００３２】
以下、本発明の実施の形態について、図面を参照しながら説明する。【００３３】
（実施の形態１）
図３は、本発明の実施の形態１における復号化装置１００の構成図である。以下、図３を用いて復号化装置１００の動作について説明する。【００３４】
図３に示す復号化装置１００は、符号の変換を行う符号変換部１０１、符号変換部１０１の出力を蓄えるバッファ１０２、バッファからビットストリームを読み出して画像を復号する画像デコーダ１０３、画像デコーダ１０３によるデコード結果の画像を蓄えるフレームメモリ１０４から構成される。【００３５】
符号変換部１０１は、Ｈ．２６４規格によって符号化されたビットストリームを復号化装置１００の外部から読み込み、その読み込んだビットストリームを後述する符号変換手順（図４〜図９の説明を参照）で処理し、処理結果をビットストリームとしてバッファ１０２に出力する。【００３６】
バッファ１０２は、Ｈ．２６４規格が要求するＣＰＢ（Ｃｏｄｅｄ  Ｐｉｃｔｕｒｅ  Ｂｕｆｆｅｒ）として機能し、符号変換部１０１から出力されたビットストリームをメモリなどの記憶装置に蓄え、画像デコーダ１０３からの読み出し要求に応じて蓄えられたビットストリームを出力する。【００３７】
画像デコーダ１０３は、符号変換部１０１が出力する形式のビットストリームを取得し、取得したビットストリームを復号して、復号結果の画像を出力する。なお、この画像デコーダ１０３は、Ｈ．２６４規格に適合したデコーダの可変長符号復号部を、符号変換部１０１の出力するビットストリームが復号できるように変更したものである。この結果、画像を正しくデコードするために、符号変換部１０１で行う変換は、画像符号化規格の可変長符号化以外の規定に影響を与えないようにされる。なお、このような、画像デコーダ１０３および符号変換部１０１は、一例であり、何らかの限定をするものではない。【００３８】
フレームメモリ１０４は、画像デコーダ１０３が出力する復号結果の画像をメモリなどの記憶装置に蓄える。フレームメモリ１０４が蓄えた画像は、画像デコード時の参照画像や復号結果出力時のバッファなどに用いる。【００３９】
図４は、実施の形態１における符号変換部１０１の構成図である。図４に示す符号変換部１０１は、Ｈ．２６４規格で符号化されたビットストリームを、マクロブロックの最大ビット量が削減するように構成された符号に変換する。【００４０】
ビットストリーム復号部２０１は、画像符号化規格で符号化されたビットストリームを復号し、ストリーム符号変換部２０３（ストリーム符号変換部群２０３ｘ）が変換を行わない場合は入力ビットストリームをそのままビットストリーム生成部２０２へ、変換を行う場合は入力ビットストリームをストリーム符号変換部２０３（ストリーム符号変換部群２０３ｘ）へ送る。【００４１】
ビットストリーム生成部２０２は、ビットストリーム復号部２０１とストリーム符号変換部２０３から出力されたビットストリームを結合し、画像デコーダ１０３が復号可能なビットストリームとして出力する。【００４２】
ストリーム符号変換部２０３は、ビットストリーム復号部２０１が出力した符号を最大ビット量が削減するように構成された符号に変換し、変換した結果の各符号を、ビットストリームとしてビットストリーム生成部２０２に出力する。ストリーム符号変換部群２０３ｘは、ストリーム符号変換部２０３として、動きベクトル符号変換部２０４、係数値符号変換部２０５を備え、つまり、ストリーム符号変換部群２０３ｘが備える複数のストリーム符号変換部２０３のうちには、動きベクトル符号変換部２０４と係数値符号変換部２０５とが含まれる。これらの詳細は後ほど説明する。【００４３】
以後、Ｈ．２６４規格のＣＡＶＬＣ（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）符号における符号変換の手順を説明する。【００４４】
ＣＡＶＬＣ符号に対する本発明の適用では、符号変換部１０１は、マクロブロックに対応するビットストリーム（規格ではｍａｃｒｏｂｌｏｃｋ＿ｌａｙｅｒ（）と記載）が含むパラメータのうち、動きベクトル（以後、ｍｖｄと記述）と係数値（以後、ｌｅｖｅｌと記述）だけを最大符号長が小さくなる符号に変換し、その他は変換を行わずに出力する。この実施例でｍｖｄとｌｅｖｅｌだけを変換する理由は、ビット量が最大となるマクロブロックではビットの多くがｍｖｄとｌｅｖｅｌの符号化に使われるからである。【００４５】
図５は、この実施例におけるビットストリーム復号部２０１（図４）の動作を示すフローチャートである。【００４６】
ビットストリーム復号部２０１は、入力されたビットストリームを規格に従って、復号する（ステップＳ３０１）。次に、ビットストリーム復号部２０１は、先のステップＳ３０１における復号結果を、動きベクトルに対応するｍｖｄ＿ｌ０とｍｖｄ＿ｌ１、係数値に対応するｌｅｖｅｌ＿ｐｒｅｆｉｘとｌｅｖｅｌ＿ｓｕｆｆｉｘ、その他に分類する（ステップＳ３０２）。また、ビットストリーム復号部２０１は、ステップＳ３０２での分類の結果に基づいて、動きベクトルと係数値以外をそのままビットストリーム生成部２０２に出力し（図４参照、ステップＳ３０３）、動きベクトルを動きベクトル符号変換部２０４（図４の上段側のストリーム符号変換部２０３）に出力し（ステップＳ３０４）、係数値を係数値符号変換部２０５（図４の下段側のストリーム符号変換部２０３）に出力する（ステップＳ３０５）。【００４７】
なお、ビットストリーム復号部２０１が、そのままビットストリーム生成部２０２にステップＳ３０３で出力を行う、上述した、動きベクトルと係数値以外のその他は、例えば、１ビットのデータや、固定長符号で符号化されたデータが多い。このようなその他の部分までは符号変換がされないことにより、復号化装置１００であれば、装置の構成を簡単にできる。そして、復号化装置１００であれば、逆に、２ビット以上のデータであり、かつ、可変長符号で符号化されたデータである動きベクトルと係数値は符号変換を行い、構成を簡単にしつつバス幅を十分に小さくできる。【００４８】
図６は、動きベクトル符号変換部２０４による符号変換（図５のステップＳ３０４）がされる前の、動きベクトルの符号化規則を示す図である。【００４９】
動きベクトル符号変換部２０４は、入力された動きベクトルを符号変換する（図５のステップＳ３０４）。次に動きベクトルの符号変換について説明する。Ｈ．２６４規格のＣＡＶＬＣ符号では、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１が図６に示すようなＥｘｐ−Ｇｏｌｏｍｂ符号で符号化されている。規格においてｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の値は−１６３８４〜１６３８３に制限されるため、この符号化におけるｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の最大符号長は３１ビットとなる。規格上、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１は最大で３２回出現するため、最大ビット量は９９２ビットとなる。そのため、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１における最大符号長の短縮はマクロブロックの最大ビット量削減に有効である。【００５０】
図７は、動きベクトル符号変換部２０４（図４）による符号変換（図５のステップＳ３０４）がされた後の、動きベクトルの符号化規則を示す図である。図７に、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の最大ビット量を削減するように構成した符号の一例を示す。【００５１】
この符号は、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の値が１５ビットの符号付き固定長符号で表現できることを利用し、元のＥｘｐ−Ｇｏｌｏｍｂ符号で１５ビット以上が必要となる絶対値１２８以上を固定長符号、その他をＥｘｐ−Ｇｏｌｏｍｂ符号としている。この場合、変換後のビットストリームの復号に符号化手法が固定長符号とＥｘｐ−Ｇｏｌｏｍｂ符号のどちらであるかの判定が必要となるため、固定長符号であれば０、Ｅｘｐ−Ｇｏｌｏｍｂ符号であれば１を符号の先頭に付加している。この符号変換により、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の最大符号長が３１ビットから１６ビットまで削減され、マクロブロックの最大ビット量が９９２ビットから５１２ビットまで削減される。一方、この符号変換では、絶対値が１２７以下の場合に符号長が１ビット大きくなっている。一般に、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の絶対値は小さいことが多いため、この変換によって平均的なマクロブロックのビット数は増加してしまう。しかし、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の絶対値が小さいマクロブロックでは、マクロブロック全体のビット量が最大ビット量より大幅に小さくなることが多いため、絶対値１２７以下で符号長が１ビット増加したことによるマクロブロック最大ビット量の増加は無視できる。【００５２】
図８は、係数値符号変換部２０５（図４）による符号変換（図５のステップＳ３０５）がされる前の、係数値の符号化規則を示す図である。【００５３】
図９は、係数値符号変換部２０５（図４）による符号変換（図５のステップＳ３０５）がされた後の、係数値の符号化規則を示す図である。【００５４】
係数値符号変換部２０５は、係数値を符号変換する（ステップＳ３０５）。次に、係数値の符号変換について説明する。Ｈ．２６４規格のＣＡＶＬＣ符号では、図８に示すように係数値をｌｅｖｅｌ＿ｐｒｅｆｉｘとｌｅｖｅｌ＿ｓｕｆｆｉｘという２個の符号であらわす。なお、規格上は直前に符号化した係数値に応じてｌｅｖｅｌ＿ｓｕｆｆｉｘの長さが異なる７種類のテーブルを切り替えるが、ここで説明する符号変換は同じ考え方で全テーブルに適用できるので、以後、図８に示すｓｕｆｆｉｘ＿ｌｅｎｇｔｈ＝０のテーブルについて説明する。【００５５】
規格において係数値の範囲は−１３１０７２〜１３１０７１と制限されているため、係数値は１８ビットの符号付き固定長符号で表現できる。そこで、図８においてｌｅｖｅｌ＿ｐｒｅｆｉｘとｌｅｖｅｌ＿ｓｕｆｆｉｘの符号長が合計で１８を超える係数値８〜−１２９０３９より下段の符号だけを１８ビット固定長符号にし、その他の符号は元の符号をそのまま用いる。この場合、動きベクトルの場合と同様、変換後のビットストリームの復号時に符号化手法を固定長符号と元の符号から選択する必要がある。そこで、固定長符号の場合は符号の前に１、元の符号の場合は符号の前に０を付加する。係数値にこの変換を適用した結果を図９に示す。この図に示すように、変換の結果、係数値の最大符号長が３８ビットから１９ビットまで減少し、マクロブロックの最大ビット量を大幅に削減できる。一方、この符号変換により、係数の絶対値が７以下において符号長が１ビット大きくなる。一般に係数の絶対値は小さいことが多いため、変換によってマクロブロックの平均ビット数は増加してしまう。しかし、係数の絶対値が小さいマクロブロックでは、マクロブロック全体のビット量が最大ビット量より小さくなるため、符号長が１ビット増加したことによるマクロブロックの最大ビット量の増加は無視できる。【００５６】
復号化装置１００は、図５の処理を終了するまで、繰り返し、以上説明した図５の処理を繰り返し実行する（ステップＳ３０６）。【００５７】
このように、復号化装置１００は、画像データ（ビットストリーム、マクロブロック）を復号化する復号化装置１００であって、当該復号化装置１００に入力された画像データを、当該画像データが符号化された符号化規則（図６、図８）よりも最大の符号長が短い別の符号化規則（図７、図９）で符号化された画像データへ変換する符号変換部１０１と（図３）、符号変換部１０１により前記変換がされた後の画像データを取得して、取得した画像データを復号化する画像デコーダ１０３と（図３）を備える。【００５８】
そして、画像データは、動きベクトルと、係数値とを含み、符号変換部１０１は、画像データに含まれる、図６の符号化規則により符号化された動きベクトルを、図６の符号化規則よりも最大の符号長が短い図７の符号化規則で符号化された動きベクトルに変換する動きベクトル符号変換部２０４と（図４）、画像データに含まれる、図８の符号化規則により符号化された係数値を、図８の符号化規則よりも最大の符号長が短い図９の符号化規則で符号化された係数値に変換する係数値符号変換部２０５と（図４）を備え、動きベクトル符号変換部２０４と係数値符号変換部２０５とによる変換を画像データに施す。【００５９】
なお、このように、請求の範囲の記載における「符号変換手段」は、画像データがｎ個（ｎ≧２）の部分に分かれ、各部分が互いに異なる種類の符号化規則により符号化される場合において、ｋ番目の部分が第ｋ種類の第１の符号化規則で符号化された画像データを（１≦ｋ≦ｎ）、ｋ番目の部分が第ｋ種類の第２の符号化規則で符号化された画像データに変換し（１≦ｋ≦ｎ）、かつ、第ｋ種類の第１の符号化規則の最大の符号長よりも同じ第ｋ種類の第２の符号化規則の最大の符号長の方が短いものとしてもよい。なお、この場合において、画像データは、ｎ個の上記部分のみからなるものではなく、ｎ個の上記部分と他の部分とにより構成されるものであってもよい。【００６０】
また、復号化装置１００は、前記符号変換部１０１により変換がされた後の画像データを記憶するバッファ１０２を更に備え、画像デコーダ１０３は、バッファ１０２に記憶された画像データを取得して、取得した画像データを復号化し、バッファ１０２と当該バッファ１０２の外部との間で画像データを転送するバスＢを更に備え、前記符号化規則とは、図６〜図９に示されるように、値と、当該値を表す符号との対応関係であり、符号は、１ビットのデータが複数個並んだビット列であり、前記最大の符号長は、符号化規則が値を対応付ける各符号のうちで、前記ビット列が最長である符号の当該ビット列のビットの個数であり、符号変換部１０１は、画像データに含まれる各符号を、それぞれ、当該符号に図６や図８の符号化規則が対応付ける値に対して図７や図９の符号化規則が対応付ける符号へ変換する。【００６１】
また、図７の符号化規則は、平均の符号長が図６の符号化規則よりも長く、図９の符号化規則は、平均の符号長が図８の符号化規則よりも長い。【００６２】
また、図７の符号化規則が対応付けをする各符号は、図６の符号化規則が予め定められた切替サイズ（１５ビット）以下の短い符号に対応付ける各値（図６における０〜−１２７の各値）に対応付けられる短符号長側符号（図７における０〜−１２７の各値の符号）と、図６の符号化規則が切替サイズ（１５ビット）より長い符号に対応付ける各値（図６における１２８〜−１６３８４）に対応付けられる長符号長側符号（図７における１２８〜−１６３８４の各値の符号）とを含む。【００６３】
ここで、上述の切替サイズ（１５ビット）は、図６の符号化規則が対応付けをする全ての値（０〜−１６３８４）を、等長符号により符号化する場合に、その等長符号に必要となる最低のビット数である。この等長符号の符号長（１５ビット）は、上述した、対応付けをする全ての値（０〜−１６３８４）の個数をｘとして、２を底としたｘの対数値（ｌｏｇ（ｘ））により求められる。【００６４】
そして、図７の符号化規則が対応付けをする符号は、上記短符号長側符号も、上記長符号長側符号も、いずれの場合でも、符号の冒頭における１ビットのデータであり、当該符号が短符号長側符号か長符号長側符号かを示す識別ビット（０又は１）と、２ビット目以降の本体部とを備える。【００６５】
例えば、図７のｍｖｄ値１に対応する符号「１＿０１０」は、識別ビットとして「１」をもち、本体部として「０１０」を持つ。【００６６】
識別ビットは、その識別ビットが含まれる符号が、上述した短符号長側符号（図７における値０〜−１２７の符号）である場合には、値１を有し、その識別ビットが含まれる符号が長符号長側符号である場合には、値０を有する。【００６７】
他方、本体部は、その本体部を有する符号が、短符号長側符号である場合は、その短符号長側符号が示す値に対して図６の符号化規則が対応付ける符号と同じ符号である。例えば、図７における値１に対応付けられる短符号長符号「１＿０１０」における本体部「０１０」は、図６において同じ値１に対応付けられる「０１０」と同じである。【００６８】
そして、本体部は、その本体部を有する符号が長符号長側符号である場合には、上記した切替サイズの大きさの等長符号である。例えば、図７において、値１２８に対応する長符号長符号「０＿００…０１０００…０」の本体部「００…０１０００…０」は、１５ビットの等長符号であり、かつ、値１２８を示すものである。ここで、長符号長側符号の本体部（「００…０１０００…０」）は、その長符号長側符号が示す値（１２８）を示す等長符号である。【００６９】
こうして、図７の符号化規則は、図６の符号化規則が切替サイズ以下の小さい符号（「０１０」等）に対応付ける各値を、それぞれ、当該符号と同じ符号が少なくとも一部に含まれる短符号長側符号（「０＿０１０」等）に対応付けると共に、当該切替サイズよりも大きい符号に対応付ける各値（１２８等）を、それぞれ、いずれも前記切替サイズ（１５ビットのサイズ）を有し、互いに等長である予め定められた等長符号（「００…０１０００…０」等）が含まれる長符号長側符号（「０＿００…０１０００…０」）へと対応付ける。【００７０】
同じようにして、図９の符号化規則は、図８の符号化規則が切替サイズ１８以下の小さい符号に対応付ける各値（１〜−７）を、それぞれ、当該符号（例えば値２に対応付けられた「００１」）と同じ符号が少なくとも一部に含まれる短符号長符号（例えば図９における「０＿００１」）に対応付けると共に、当該切替サイズよりも大きい符号に対応付ける各値（８〜―１２９０３９）を、それぞれ、いずれも前記切替サイズ（１８ビットのサイズ）を有し、互いに等長である予め定められた等長符号が含まれる符号（図９に示される「１＿ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」）に対応付ける。そして、前記切替サイズは、図８の符号化規則が対応付けをする全ての値（１〜―１２９０３９）を、等長符号により符号化する場合に必要なビットの最低個数１８であり、前記等長符号は、当該最低個数のビットつまり１８個のビットよりなる等長の符号であり、図９の符号化規則の符号は、図８の符号化規則と同じ符号、または、当該等長符号の何れか一方を含む本体部（「１＿ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」における「ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」）と、当該符号が前記第１の符号化規則の符号と同じ符号が含まれるか、または、前記等長符号が含まれるかを識別する識別ビット（「１＿ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」における「１」）とを備える。【００７１】
なお、復号化装置１００は、例えば、上記符号変換部１０１、バッファ１０２、バスＢ、画像デコーダ１０３、フレームメモリ１０４が、当該復号化装置１００の有する集積回路（ＬＳＩ）上に実現された復号化装置であってもよい。【００７２】
なお、符号変換部１０１は、例えば、図６や図８に示される、変換前の符号を入力符号とし、図７や図９に示される、変換後の符号を出力符号とする、入力符号に対応した出力符号を出力する回路として構成される。このような、回路として構成される場合、符号変換部１０１は、図６および図８により示される、入力符号と、その入力符号のｍｖｄ値と同じｍｖｄ値の出力符号との対応関係に基づいた回路構成をとるものとしてもよい。【００７３】
このように、本実施例の符号変換により、マクロブロックの最大ビット量が削減されるため、マクロブロックの最大ビット量から決まるビットストリームをデコーダに転送するバンド幅も削減できる。なお、本実施例における画像デコーダ１０３は、規格が規定する画像復号処理のうち、動きベクトルと係数値に対応する可変長符号復号部を図７と図９の符号に対応するよう変更したものである。【００７４】
このような復号化装置１００であれば、入力された画像データが、符号変換部１０１によって、最大の符号長が短い図７の符号化規則の画像データに変換されて、最大の符号長が短い符号化規則で符号化された画像データが復号化装置１００内で転送されるようにでき、復号化装置１００におけるバス幅を小さくすることができる。【００７５】
ここまで、本発明の実施の形態１について説明したが、本実施の形態は、最大符号長を削減するように符号を変換するという本質を維持した範囲で様々な変形が可能である。変形の例としては、Ｈ．２６４以外のＶＣ−１やＭＰＥＧ−２などの画像符号化規格への適用が考えられる。Ｈ．２６４以外の画像符号化規格においても動きベクトルと係数値がマクロブロックの最大ビット量の多くを占めるため、各々の符号を最大符号長が減少するような符号に変換することで、本実施の形態と同様な効果を得ることができる。【００７６】
なお、図３に示す各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。図３の破線は、ＬＳＩの典型的な構成を示し、符号変換部１０１と画像デコーダ１０３をＬＳＩとして集積し、バッファ１０２とフレームメモリ１０４をＤＲＡＭなどのメモリＬＳＩとして集積することを示している。ただし、集積化の手法については、この例に限定するものではなく、各機能が個別に１チップ化されてもよいし、一部またはすべてを含むように１チップ化されてもよい。さらには、ＬＳＩに置き換わる集積回路化の技術があれば、当然、その技術を用いて集積化を行ってもよい。【００７７】
また、実施の形態１における復号化装置にさらに、バッファに対するバンド幅を取得する取得部を設け、入力したビットストリームの処理単位ごとのビット数が、取得されたバンド幅を超えた場合にのみ、符号変換を行うようにしてもよい。その際、変換前のストリームか変換後のストリームかを識別する識別子をストリームに付与することが好ましい（図２１および図２１の説明を参照）。【００７８】
（実施の形態２）
図１０は、本発明の実施の形態２に係る復号化装置１００Ａの構成図である。以下、図１０を用いて、本発明の実施の形態２に係る本復号化装置１００Ａのについて詳しく説明する。【００７９】
図１０に示す復号化装置１００Ａは、実施の形態１で示した復号化装置１００の符号変換部１０１とバッファ１０２の間に係数削減部８０１を追加した構成となっている。図１０のうち、係数削減部８０１以外は、実施の形態１と同じ構成であり、その機能も同一なので、同じ符号を付しその説明を省略する。【００８０】
係数削減部８０１は、符号変換部１０１が出力するビットストリームを読み込み、読み込んだビットストリームに含まれる各マクロブロックについて、それぞれ、そのマクロブロックに含まれる直交変換（ＤＣＴなど）適用結果の係数値を削除することで、マクロブロックのビット量を削減し、マクロブロックのビット量を指定した値に近づける。実施の形態２では、実施の形態１で示したような符号変換を行ってもマクロブロックのビット量が目標より多い場合に係数削減を実施する。実施の形態２では、ビットストリームのデコーダへの転送に割り当て可能なバンド幅から求めたマクロブロックの最大ビット量を目標ビット量として設定する。このため、実施の形態２では、ビットストリームの転送に必要なバンド幅が想定した値で収まるようにマクロブロックのビット量を削減することができる。なお、目標ビット量は、バスＢのバス幅に対応した、適切にバスＢでの転送ができるビット量が選ばれる。【００８１】
なお、請求の範囲における「バンド幅情報」は、この実施の形態２において、上記目標ビット量によって、一例が示される。【００８２】
図１１は、実施の形態２における係数削減部８０１の構成図である。ビットストリーム復号部９０１は、復号化装置１００Ａに入力された入力ビットストリームを、係数と係数以外の部分に分け、係数部分は削減部９０２、係数以外の部分はビットストリーム生成部９０３に送る。また、ビットストリーム復号部９０１は、入力ビットストリームを複製してビット量計測部９０４に送る。削減部９０２は、係数削減制御部９０５から入力されるコマンドにしたがって、ビットストリーム復号部９０１から入力された係数部分のビットストリームから係数の削除を行い、その結果から係数部分のビットストリームを再構成して出力する。ビットストリーム生成部９０３は、ビットストリーム復号部９０１と削減部９０２から入力されるビットストリームを結合し、ビットストリームとして出力する。ビット量計測部９０４は、入力ビットストリームを復号し、マクロブロックのビット量や係数部に含まれる係数値とそのビット量などを出力する。係数削減制御部９０５は、係数削減部８０１の外部から入力される目標ビット量とビット量計測部９０４から入力されるマクロブロックのビット量との差分を求め、求められた差分の値と、ビット量計測部９０４から入力される係数部に含まれる係数値およびそのビット量とから、係数削除の有無と、削除する係数値を判断し、削減部９０２に対するコマンドを生成する。また、係数削減制御部９０５は、複数のマクロブロックをまたいだ目標ビット量制御などに用いるため、係数削減後のマクロブロックビット量と目標ビット量との差分を求め、係数削減制御部９０５の内部に保持する。なお、上記した、係数削減部８０１の外部から入力される目標ビット量は、例えば、係数削減部８０１の外部にある目標ビット量記憶部に記憶されたものが、係数削減部８０１に入力されてもよいし、係数削減部８０１の外部にある目標ビット量算出部により算出された目標ビット量が入力されるものとしてもよい。【００８３】
以後、係数削減部８０１の動作を説明する。【００８４】
図１２は、係数削減部８０１のマクロブロックに対する動作をフローチャートで示したものである。係数削減部８０１は、はじめにマクロブロックのビット量と目標ビット量とを比較する（ステップＳ１００１）。ステップＳ１００１の比較によって、もし、マクロブロックのビット量が目標ビット量より少ないと判定されれば、係数削減部８０１は、係数削減部８０１に入力されたビットストリームをそのまま出力する（ステップＳ１００６、ステップＳ１００１：達成）。他方、ステップＳ１００１の比較において、マクロブロックのビット量が目標ビット量より多いと判定された場合には（ステップＳ１００１：未達）、ビットストリーム復号部９０１が、ビットストリームを復号する（ステップＳ１００２）。次に、係数削減部８０１は、ステップＳ１００２での復号結果が係数に対応するｒｅｓｉｄｕａｌであるかを調べ、復号結果がｒｅｓｉｄｕａｌでない場合（ステップＳ１００３：その他）、ステップＳ１００２で復号した部分のビットストリームをそのまま出力し（ステップＳ１００４）、ステップＳ１００２に戻る。他方、ステップＳ１００２での復号結果がｒｅｓｉｄｕａｌである場合は係数削除ステップＳ１００５に進み（ステップＳ１００３：ｒｅｓｉｄｕａｌ）、マクロブロックが終了した場合は処理を終了する（ステップＳ１００３：マクロブロック終了）。削減部９０２は、ステップＳ１００３の判定により復号結果がｒｅｓｉｄｕａｌであると判定されると（ステップＳ１００３：ｒｅｉｄｕａｌ）、係数の削除によるビット量の削減を行う（ステップＳ１００５）。なお、削減部９０２は、ビットストリームが続く限り、図１２で示したマクロブロックの処理を繰り返し実施する。【００８５】
図１３は、削減部９０２が行う図１２のステップＳ１００５の係数削除の動作をフローチャートで示したものである。削減部９０２の基本的な動作規則は以下のようになっている。以後、図１３の詳細について説明する。なお、図１３のステップは全て削減部９０２が行なう。【００８６】
（１）ＡＣ係数（直交変換適用結果のうち高周波成分）から削除し、ＡＣ係数がなくなった場合にだけ、ＤＣ係数（直交変換適用結果のうち直流成分）を削除する。
（２）ＡＣ係数、ＤＣ係数の削除は、輝度係数の削除と色差係数の削除を交互に行う。
（３）１係数の削除毎にビット量の判定を行い、目標に到達した時点で終了する。
（４）値が０でない係数について、係数の削除を行う。【００８７】
削減部９０２は、図１２のステップＳ１００５の処理、つまり、図１３の処理を行うに際して、はじめに、係数復号ステップＳ１１０１で、全係数の復号を行う。このステップＳ１１０１により、輝度ＡＣ係数、輝度ＤＣ係数、色差ＡＣ係数、色差ＤＣ係数が係数として復号される。【００８８】
次にＡＣ係数有無判定ステップＳ１１０２で、削減部９０２は、先にステップＳ１１０１で復号されたＡＣ係数に、非０の値が存在するかを調べ、存在しない場合はＤＣ係数判定ステップＳ１１０７に進み（ステップＳ１１０２：無）、存在する場合は輝度ＡＣ係数削除ステップＳ１１０３に進む（ステップＳ１１０２：有）。【００８９】
輝度ＡＣ係数削除ステップＳ１１０３では、削減部９０２は、先にステップＳ１１０１で復号された輝度ＡＣ係数の非０の係数のうち、最も高周波数に対応する係数で値が最大のもの１個を削除し、削除後のマクロブロックのビット量を求める。【００９０】
その後、目標ビット量判定ステップＳ１１０４で、削減部９０２は、ステップＳ１１０３で求められたマクロブロックのビット量が目標に到達したかを調べ、到達していない場合は、色差ＡＣ係数削除ステップＳ１１０５に進み（ステップＳ１１０４：未達）、到達した場合は係数符号化ステップＳ１１１２へ進む（ステップＳ１１０４：達成）。【００９１】
色差ＡＣ係数削除ステップＳ１１０５では、削減部９０２は、先にステップＳ１００５で復号された色差ＡＣ係数の非０の係数のうち、最も高周波数に対応する係数で値が最大のもの１個を削除し、削除後のマクロブロックのビット量を求める。【００９２】
その後、目標ビット量判定ステップＳ１１０６で、削減部９０２は、ステップＳ１１０５で求められたマクロブロックのビット量が目標に到達したかを調べ、到達していない場合は再度ＡＣ係数の削除を行うためにＡＣ係数有無判定ステップＳ１１０２に進み（ステップＳ１１０６：達成）、到達した場合は係数符号化ステップＳ１１１２へ進む（ステップＳ１１０６：未達）。【００９３】
ＤＣ係数判定ステップＳ１１０７では、削減部９０２は、先にステップＳ１１０１で復号されたＤＣ係数に非０の値が存在するかを調べ、存在しない場合は係数符号化ステップＳ１１１２に進み（ステップＳ１１０７：無）、存在する場合は輝度ＤＣ係数削除ステップＳ１１０８へ進む（ステップＳ１１０７：有）。【００９４】
輝度ＤＣ係数削除ステップＳ１１０８では、削減部９０２は、先にステップＳ１１０１で復号された輝度ＤＣ係数の非０係数のうち値が最大のもの１個を削除し、削除後のマクロブロックのビット量を求める。【００９５】
その後、目標ビット量判定ステップＳ１１０９で、ステップＳ１１０８で求められたマクロブロックのビット量が目標に到達したかを調べ、到達していない場合は色差ＤＣ係数削除ステップＳ１１１０に進み（ステップＳ１１０９：未達）、到達した場合は係数符号化ステップＳ１１１２に進む（ステップＳ１１０９：達成）。【００９６】
色差ＤＣ係数削除ステップＳ１１１０では、先にステップＳ１１０１で復号された色差ＤＣ係数の非０係数のうち値が最大のもの１個を削除する。【００９７】
その後、目標ビット量判定ステップＳ１１１１で、マクロブロックのビット量が目標に到達したかを調べ、到達していない場合はＤＣ係数判定ステップＳ１１０７に進み（ステップＳ１１１１：未達）、さらに多くの係数を削除し、到達している場合にはステップＳ１１１２に進む（ステップＳ１１１１：達成）。【００９８】
目標に到達した場合は係数符号化ステップＳ１１１２に進む。最後に係数符号化ステップＳ１１１２では、削減部９０２は、上記した削減処理を行った後の輝度ＡＣ係数、輝度ＤＣ係数、色差ＡＣ係数、色差ＤＣ係数を符号化し、結果をビットストリームとして出力する。符号化は、符号変換部１０１で行う符号変換を適用した後の形式を出力するように構成する。【００９９】
以上のようにして、バッファ１０２と当該バッファ１０２の外部との間でビットストリームが転送されるバンド幅に応じて選択された目標ビット量を取得する係数削減部８０１（係数削減制御部９０５、図１１参照）と、符号変換部１０１により変換がされた後のビットストリームに含まれるマクロブロックのビット量が、取得された前述の目標ビット量を超えるか否かを判定する削減部９０２とを備え（図１３のステップＳ１１０４、Ｓ１１０６、Ｓ１１０９、Ｓ１１１１参照）、その削減部９０２が、データ長が目標ビット量を超えると判定されれば（ステップＳ１１０４：未達、など）、当該判定がされた前記マクロブロックのビット数を削減する復号化装置１００Ａが構成される。【０１００】
そして、このような復号化装置１００Ａにおいて、削減部９０２は、ビットストリームのマクロブロックのなかに、ＡＣ係数、ＤＣ係数のうちでＡＣ係数が含まれない場合に（図１３のステップＳ１１０２：無）、ＤＣ係数を削除する。【０１０１】
また、削減部９０２は、輝度係数が削除されたマクロブロック（ステップＳ１１０３、Ｓ１１０８）のビット量が、目標ビット量に到達しているか否かを判定し（ステップＳ１１０４、Ｓ１１０９）、輝度係数を削除したマクロブロックのビット量が目標ビット量に到達していないと判定された場合にのみ（ステップＳ１１０４：未達、ステップＳ１１０９：未達）、当該マクロブロックの色差係数を削除する（ステップＳ１１０５、ステップＳ１１１０）。【０１０２】
こうして、削減部９０２は、輝度ＡＣ、色差ＡＣ、輝度ＤＣ、色差ＤＣの４種類の係数のうちで、この順序で低くなる削除の優先順位に基づいて、マクロブロックに含まれる種類の係数のうちで、優先度が最も高いものを削除して、マクロブロックのビット量を削減する。【０１０３】
以上の手順で係数を削除しても、マクロブロックのビット量が目標ビット量より大きい場合がある。その場合、係数削減制御部９０５が目標ビット量との差分を保持していることを利用し、後続マクロブロックに対する目標ビット量をその差分だけ削減する。つまり、係数削減制御部９０５は、その場合、後続マクロブロックについて処理を行う際の目標ビット量を、上記した差分だけ小さくする。この操作により、目標ビット量に到達しなかったマクロブロックによるバンド幅の増加を小さくすることができる。【０１０４】
このように、本実施の形態２では、マクロブロックのビット量をマクロブロック単位に増減させることができる。これを用いて、動き補償を行うマクロブロックの目標ビット量を小さくし、その結果削減されたストリーム転送のバンド幅を参照画像転送に用いることで画像デコード全体のバンド幅を削減するといった応用も可能である。【０１０５】
続いて、本実施の形態をＨ．２６４規格のＣＡＶＬＣ（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）符号に対して適用する手法を説明する。まず，係数復号ステップＳ１１０１（図１３）で輝度ＤＣ係数、輝度ＡＣ係数、色差ＤＣ係数、色差ＡＣ係数を再構成する手法を説明する。規格上、直交変換後の係数は、ｒｅｓｉｄｕａｌ＿ｂｌｏｃｋとして符号化されており、以下の５種類がある。【０１０６】
（１）Ｉｎｔｒａ１６ｘ１６ＤＣＬｅｖｅｌ
輝度ＤＣ係数（ブロックサイズ１６ｘ１６、係数１６個）
（２）Ｉｎｔｒａ１６ｘ１６ＡＣＬｅｖｅｌ
輝度ＡＣ係数（ブロックサイズ１６ｘ１６、係数１５個を１６組）
（３）ＬｕｍａＬｅｖｅｌ
輝度係数（ブロックサイズ４ｘ４もしくは８ｘ８、係数１６個を１６組）
（４）ＣｈｒｏｍａＤＣＬｅｖｅｌ
色差ＤＣ係数（４：２：０フォーマットでは、係数４個を２組）
（５）ＣｈｒｏｍａＡＣＬｅｖｅｌ
色差ＡＣ係数（４：２：０フォーマットでは、係数１５個を８組）【０１０７】
再構成する係数のうち、色差ＤＣ係数と色差ＡＣ係数については、そのままで再構成した結果として使用できる。一方、輝度ＤＣ係数と色差ＡＣ係数は、マクロブロックの直交変換ブロックサイズによって、以下の３通りから選択して使用する。【０１０８】
（１）ブロックサイズ１６ｘ１６の場合
輝度ＤＣ係数はＩｎｔｒａ１６ｘ１６ＤＣＬｅｖｅｌを使用。
輝度ＡＣ係数はＩｎｔｒａ１６ｘ１６ＡＣＬｅｖｅｌを使用。
（２）ブロックサイズ８ｘ８の場合
輝度ＤＣ係数はＬｕｍａＬｅｖｅｌ［ｉ］［０］（ｉ＝０、４、８、１２）を使用。
輝度ＡＣ係数は上記以外のＬｕｍａＬｅｖｅｌを使用。
（３）ブロックサイズ４ｘ４の場合
輝度ＤＣ係数はＬｕｍａＬｅｖｅｌ［ｉ］［０］（０≦ｉ≦１５）を使用。
輝度ＡＣ係数は上記以外のＬｕｍａＬｅｖｅｌを使用。【０１０９】
以上の手順により、輝度ＤＣ係数、輝度ＡＣ係数、色差ＤＣ係数、色差ＡＣ係数を再構成することができる。以後の係数削除については、係数削除ステップＳ１００５の説明に記載の手法をそのまま適用できる。係数削除を適用した結果の再符号化においては、係数値を符号化する際のＬｅｖｅｌ＿ＰｒｅｆｉｘとＬｅｖｅｌ＿Ｓｕｆｆｉｘを図９のようにする。これにより、実施の形態１と同じ画像デコーダ１０３で正しい画像を復号することができる。【０１１０】
ここまで、本発明の実施の形態２について説明したが、実施の形態２は係数削除によりマクロブロックのビット数を削減するという特徴を維持したままで様々な変形が可能である。具体的な変形例として、ＭＰＥＧ−２やＶＣ−１といった動画像符号化規格に対する適用や係数削除だけでなく係数値の変更をビット量削減に利用する手法などが考えられる。【０１１１】
なお、図１０に示す各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。図１０の破線は、ＬＳＩの典型的な構成を示し、符号変換部１０１と係数削減部８０１、画像デコーダ１０３をＬＳＩとして集積し、バッファ１０２とフレームメモリ１０４をＤＲＡＭなどのメモリＬＳＩとして集積することを示している。ただし、集積化の手法については、この例に限定するものではなく、各機能が個別に１チップ化されてもよいし、一部またはすべてを含むように１チップ化されてもよい。さらには、ＬＳＩに置き換わる集積回路化の技術があれば、当然、その技術を用いて集積化を行ってもよい。【０１１２】
（実施の形態３）
図１４は、本発明の実施の形態３における復号化装置１００Ｂの構成図である。以下、図１４を用いて実施の形態３における復号化装置１００Ｂの動作について説明する。【０１１３】
図１４に示す復号化装置１００Ｂは、実施の形態２に示した復号化装置１００Ａのビットストリーム入力に算術符号デコーダ１２０１を追加したものである。図１４のうち、算術符号デコーダ１２０１、符号変換部１２０２、係数削減部１２０３以外の部分については、実施の形態２のものと同じ機能であるため、同じ構成要素のものには同じ符号を付し、その説明を省略する。【０１１４】
算術符号デコーダ１２０１は、Ｈ．２６４規格のＣＡＢＡＣ（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍａｔｉｃ  Ｃｏｄｉｎｇ）符号で符号化されたビットストリームを算術復号し、復号結果をビットストリームとして出力する。【０１１５】
ここで、Ｈ．２６４規格のＣＡＢＡＣ符号では、符号化結果のビットストリームが算術符号で圧縮されている。ＣＡＢＡＣ符号で用いられている算術符号は、復号が逐次処理とならざるを得ないため、画像デコーダの処理性能に見合った復号性能を得るのが困難である。そこで、ＣＡＢＡＣ符号に対応する復号化装置は、算術符号の復号結果を規格のＣＰＢに相当するバッファ１０２に蓄え、画像デコーダは算術符号を復号した結果をデコードするように構成される。しかし、この構成では、算術符号の圧縮を復元した結果を画像デコーダに転送することになるため、マクロブロックの最大ビット量が約５０００ビットと大きく、バッファ１０２から画像デコーダに復号結果を転送するのに必要なバンド幅が非常に大きくなる。実施の形態３は、この問題を解決するため、算術符号の復号結果で多くを占める部分に、実施の形態１で説明した符号変換や実施の形態２で説明した係数値の変換を適用する。【０１１６】
以後、Ｈ．２６４規格のＣＡＢＡＣ符号への適用における図１４の符号変換部１２０２と係数削減部１２０３の処理内容について説明する。【０１１７】
まず、符号変換部１２０２で行う符号変換について説明する。符号変換部１２０２では、動きベクトル（ｍｖｄ＿ｌ０、ｍｖｄ＿ｌ１）と係数値（ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１、ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ）に加え、参照画像インデックス（ｒｅｆ＿ｉｄｘ＿ｌ０、ｒｅｆ＿ｉｄｘ＿ｌ１）と量子化パラメータ（ｍｂ＿ｑｐ＿ｄｅｌｔａ）に符号変換を適用する。以後、各要素に対する符号変換について説明する。【０１１８】
図１５は、動きベクトル（ｍｖｄ＿ｌ０、ｍｖｄ＿ｌ１）の変換前の符号である。図１５以降の図にあるｘは、その符号が示す値の正負を示す符号ビットであり、０が正、１が負を示す。この符号を最大符号長が短くなるように変換した符号を図１６に示す。規格上、動きベクトルの値は、−１６３８４〜１６３８３に制限されるため、動きベクトルは１５ビットの固定長符号で表現できる。【０１１９】
そこで、図１６の符号では、元の符号が１５ビットを超える絶対値で１７以上の値は固定長符号、それ以外は元の符号で符号化する。この符号化では、復号時に符号化が固定長符号化と元の符号のどちらであるかを判定する必要があるので、符号化を判定するための１ビットを符号の前に付加する。付加される１ビットは、この実施の形態３における、変換後の符号の識別ビットである。これにより、最大符号長が３４ビットから１６ビットまで削減される。一方、元の符号をそのまま用いる絶対値が１６以下の値については、符号化を判定するためのビット追加により、符号長が１ビット長くなってしまう。しかし、本発明の削減対象であるビットストリームをデコーダに転送するためのバンド幅は、マクロブロックの最大ビット数で決まり、その最大ビット数となるマクロブロックでは、動きベクトルをあらわすビット量が多く、絶対値が１７以上の値であることが多いため、絶対値が１６以下の値に対する符号長の増加は特に問題とならない。【０１２０】
なお、図１６の符号化規則の場合、長符号長側符号は、絶対値が１７以上である各値の符号であり、短符号長符号は、絶対値が１７未満である各値の符号であり、切替サイズは１４ビットである（図１５における値０〜±１６の符号のビット数を参照）。【０１２１】
図１７は、係数値（ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１、ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ）の変換前の符号である。規格上、係数値は−１３１０７２〜１３１０７１に制限されるため、係数値は１８ビットの固定長符号で表現できる。そこで、動きベクトルと同様な考え方で符号を変換すると、図１８のようになり、絶対値が１８以上の値を固定長符号とする。この符号変換により、最大符号長が４８ビットから１９ビットまで削減できる一方、絶対値が１７以下の値では符号長が１ビット長くなってしまう。しかし、動きベクトルと同様、係数値についても、最大ビット数となるマクロブロックでは絶対値が１８以上になることが多いため、絶対値が１７以下の値に対する符号長が増加しても特に問題とならない。【０１２２】
図１９は、参照画像インデックス（ｒｅｆ＿ｉｄｘ＿ｌ０、ｒｅｆ＿ｉｄｘ＿ｌ１）と量子化パラメータ（ｍｂ＿ｑｐ＿ｄｅｌｔａ）の変換前の符号である。変換前の符号は、算術符号の圧縮率を高めるため、０が出現するまでの１の数で値を表すＵｎａｒｙ  Ｂｉｎａｒｉｚａｔｉｏｎとなっており、最大符号長だけでなく、平均符号長も大きい。そこで、参照画像インデックスと量子化パラメータについては、最大符号長と平均符号長の双方が短くなるＥｘｐ−Ｇｏｌｏｍｂ符号で値を符号化する。【０１２３】
図２０は、変換後の符号であり、最大符号長は５３ビットから１１ビットまで削減できる。この変換は値に応じて符号を切り替える方式、つまり、変換後の符号が、長符号長符号と短符号長符号とに分かれる方式ではないので、符号化を判定するためのビット（例えば、上述した各識別ビット）は不要であるが、参照画像インデックスの１と４、量子化パラメータの１と−２において符号長が１ビット長くなる。しかし、最大ビット数となるマクロブロックでは、動きベクトルや係数値がビット数の多くを占めており、それらについては前述の変換によって大幅にビット数が削減されるため、参照画像インデックスや量子化パラメータにおけるビット数の増加は特に問題とならない。【０１２４】
このように、上述の説明では、変換後の符号が、長符号長符号と短符号長符号とに分かれる方式を詳しく説明したが（図７、図９、図１６、図１８参照）、このような長符号長符号と短符号長符号とに分かれる方式に限定されず、そのような方式以外の他の方式が用いられてもよく、例えば、上記図１９、図２０で説明した方式は、そのような他の方式の１つである。【０１２５】
以上、実施の形態３における符号変換部１２０２について説明した。ここで示した符号変換により、マクロブロックの最大ビット量は約５０００ビットから約３５００ビットまで削減できる。なお、ここで示した符号変換はあくまで一例であり、符号変換によって最大符号長を削減するという本質を維持したまま、様々な変形が可能である。具体的には、元の符号をそのまま出力せずにＥｘｐ−Ｇｏｌｏｍｂ符号などに変換する手法などがある。【０１２６】
次に、実施の形態３における係数削減部１２０３について説明する。実施の形態３における係数削減部１２０３は、実施の形態２で説明した係数削減部１２０３と同様に構成されるので、構成に関する説明は省略する。【０１２７】
続いてＨ．２６４規格のＣＡＢＡＣにおける係数削減の手順を説明する。Ｈ．２６４規格のＣＡＢＡＣ符号では、ブロックサイズが８ｘ８の直交変換における輝度ＤＣ係数と輝度ＡＣ係数の扱いが実施の形態２で示したＨ．２６４規格のＣＡＶＬＣ符号とは異なっている。そこで、ブロックサイズが８ｘ８の場合、輝度ＤＣ係数はＬｕｍａＬｅｖｅｌ８ｘ８［０］［０］（０≦ｉ≦３）を使用し、輝度ＡＣ係数は上記以外のＬｕｍａＬｅｖｅｌ８ｘ８を使用する。この点を除き、係数削減部１２０３の動作は、実施の形態２で説明したＨ．２６４規格のＣＡＶＬＣ符号の場合と同じである。【０１２８】
実施の形態３においても、係数削除後のマクロブロックのビット量が目標ビット量より大きくなることがある。この場合、この実施の形態３の係数削減部１２０３が有する係数削減制御部９０５が、目標ビット量との差分を出力することを利用し、後続するマクロブロックに対する目標ビット量をその差分だけ減少させるなどの制御を行うことができる。【０１２９】
このように、本実施の形態３では、ストリームを画像デコーダに転送するためのバンド幅をマクロブロック単位に増減させることができる。これを用いて、動き補償を行うマクロブロックの目標ビット量を小さくして削減されたストリーム転送のバンド幅を参照画像転送に使用し、画像デコードに必要な全体のバンド幅を削減するといった制御も可能である。【０１３０】
以上、Ｈ．２６４規格のＣＡＢＡＣ符号で符号化されたビットストリームを例に実施の形態３について説明した。ここに示した係数削除の手法は、あくまで一例であり、係数などの削除によりマクロブロックの符号長を削減するという本構成の特徴を維持したまま、様々な変形が可能である。変形の例としては、係数を削除するのではなく値を小さくするような手法などが考えられる。【０１３１】
なお、図１４に示す各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。図１４の破線は、ＬＳＩの典型的な構成を示し、算術符号デコーダ１２０１と符号変換部１２０２、係数削減部１２０３、画像デコーダ１０３をＬＳＩとして集積し、バッファ１０２とフレームメモリ１０４をＤＲＡＭなどのメモリＬＳＩとして集積することを示している。ただし、集積化の手法については、この例に限定するものではなく、各機能が個別に１チップ化されてもよいし、一部またはすべてを含むように１チップ化されてもよい。さらには、ＬＳＩに置き換わる集積回路化の技術があれば、当然、その技術を用いて集積化を行ってもよい。【０１３２】
ここで、符号変換部１２０２は、図１６に示される符号化規則の符号に、符号を変換する。【０１３３】
図１６の符号化規則において、例えば、値が±１７つまり絶対値が１７である場合、その値に対応する符号は「１＿０００００００００００００１＿ｘ」である。ここで、この符号の本体部は、「０００００００００００００１＿ｘ」であり、等長符号値±１を示す等長符号である。つまり、ｍｖｄ値の絶対値が１７で、等長符号値の絶対値が１で、互いに異なる。【０１３４】
このように、図１６の符号化規則は、各ｍｖｄ値に対して、それぞれ、そのｍｖｄ値とは異なる等長符号値を有する等長符号の長符号長符号を対応付ける。図１６の符号化規則は、このような、値と、その値に対応付けられる長符号長符号の等長符号値との値対応関係を含む。つまり、図１６の符号化規則は、値と長符号長符号との対応関係をもつことにより、値と、その長符号長符号における等長符号値とを値対応関係をもつ。図１６の符号化規則においては、かかる値対応関係は、ｍｖｄ値に対して、そのｍｖｄ値の絶対値から１６を引いた絶対値の等長符号値を対応付ける。このため、上記のように、値が±１７の場合には、その値に対応する符号は、１７−１６＝１の絶対値の等長符号値±１の等長符号となる。【０１３５】
このようにしてあるので、広い範囲の等長符号値を表すための長いビットの等長符号を用いなくとも、例えば、長符号長符号で表すｍｖｄ値の個数に対応する最小限度のビットの等長符号など、少ないビットの等長符号で、ｍｖｄ値を記録できる。【０１３６】
なお、この点に関しては、図１８の符号化規則においても同様であり、図１８の符号化規則においては、長符号長符号に対応する符号は、その符号の係数値の絶対値から１７を減じた絶対値の等長符号値を有する等長符号である。【０１３７】
なお、この実施の形態３においては、図１６、図１８に示される符号の本体部は、２の補数の方式によって、等長符号値を示すのではなく、上述のように、その等長符号値の正負を示す符号ビットと、その等長符号値の絶対値を示す絶対値等長符号とによって構成される。このため、本体部が示す等長符号値の最小値の絶対値と、最大値の絶対値とは互いに同一である。例えば、本体部がｍビットであれば、絶対値等長符号は、ｍ−１ビットになり、２の（ｍ−１）乗をＬとして、本体部は−（Ｌ−１）〜＋（Ｌ−１）を示し、互いに同一のその絶対値はこのＬ−１である。他方、符号化規則が本体部と識別ビットにより対応付ける値の最小値の絶対値と最大値の絶対値が互いに同一である場合は多いので、上述のよう符号ビットを用いる本体部を用いることにより、上記値対応関係が簡単になる。ひいては、上記値対応関係を処理する符号変換部１２０２を簡単な構成にできる。【０１３８】
（実施の形態４）
実施の形態４として、実施の形態３（図１４等参照）の変形例を説明する。なお、実施の形態３と同じ点については、この実施の形態４で、説明を繰り返さない。【０１３９】
図２１は、実施の形態４に係る復号化装置１００Ｃを示す図である。【０１４０】
復号化装置１００Ｃは、変換後最大符号長特定部１３０１と、規則種類表示フラグ付与部１３０３と、切替部１３０４とを備える。【０１４１】
変換後最大符号長特定部１３０１は、符号変換部１２０２が符号を変換した後のマクロブロックに含まれる符号の符号長のうちで、最大の符号長を特定する。変換後最大符号長特定部１３０１は、より具体的には、３種類の最大の符号長を特定し、すなわち、動きベクトルの符号（図１５参照）のうちでの最大の符号長（以下、動きベクトル符号最大符号長）と、そのマクロブロックに含まれる係数値の符号（図１７参照）の符号長のうちでの最大（以下、係数値符号最大符号長）と、参照画像インデックスと量子化パラメータとの符号（図１８参照）のうちでの最大の符号長（以下、第３の最大符号長）とを特定する。なお、変換後最大符号長特定部１３０１は、例えば、変換前の動きベクトルの符号のうちでｍｖｄ値の絶対値が最大のものを特定することによって、特定された変換前の符号に対応する変換後の符号の符号長を、動きベクトル符号最大符号長と特定する。【０１４２】
切替部１３０４は、変換後最大符号長特定部１３０１により特定された動きベクトル最大符号長が予め定められた動きベクトル閾長さを越える場合にのみ、変換後最大符号長特定部１３０１がその動きベクトル最大符号長を特定したマクロブロックに含まれる動きベクトルの符号変換を符号変換部１２０２に行わせる。【０１４３】
また、切替部１３０４は、変換後最大符号長特定部１３０１により特定された係数値符号最大符号長が予め定められた係数値閾長さを越える場合にのみ、そのマクロブロックに含まれる係数値の符号変換を符号変換部１２０２に行わせる。【０１４４】
また、符号変換部１２０２は、変換後最大符号長特定部１３０１により特定された第３の最大符号長が予め定められた第３の閾長さを越える場合にのみ、そのマクロブロックに含まれる参照画像インデックス等の符号変換を符号変換部１２０２に行わせる。【０１４５】
なお、切替部１３０４は、動きベクトル等を、符号変換部１２０２を介して、規則種類表示フラグ付与部１３０３に入力させるか、又は、符号変換部１２０２を介さずに直接に規則種類表示フラグ付与部１３０３に入力させるかを切り替えることにより、このような切替を行う（図２１参照）。なお、かかる切替部１３０４の構成は一例であり、切替部１３０４は、他の構成を採ってもよい。【０１４６】
規則種類表示フラグ付与部１３０３は、切替部１３０４または符号変換部１２０２が規則種類表示フラグ付与部１３０３に入力するマクロブロックに対して、符号変換部１２０２が符号変換をしたか否かを示す規則種類表示フラグを付与する。規則種類表示フラグは、動きベクトルの符号変換がされたか否かを示す動きベクトルフラグと、係数値が符号変換されたか否かを示す係数値フラグと、参照画像インデックス等が符号変換されたか否かを示す第３のフラグとが含まれる。規則種類表示フラグ付与部１３０３は、これら３つの規則種類表示フラグをマクロブロックに付与する。このとき、例えば、マクロブロックは、３つの規則種類表示フラグのサイズの分だけ３ビット大きくなるものとしてもよいし、付与される前から予め３つの規則種類表示フラグのサイズがマクロブロック内部に存在していて、大きくなることはないものとしてもよい。【０１４７】
この実施の形態４においては、画像デコーダ１０３（図１４）は、規則種類表示フラグに基づいて、その規則種類表示フラグが含まれるマクロブロックを符号化した符号化規則を特定する。画像デコーダ１０３は、動きベクトルフラグが符号変換をしたことを示す場合には、そのマクロブロックの動きベクトルの符号化規則が、図１６の符号化規則であることを特定し、符号変換をしていないことを示す場合には、図１５の符号化規則であることを特定する。また、画像デコーダ１０３は、同様にして、係数値および、参照画像インデックス等の符号化規則も特定する。そして、画像デコーダ１０３は、特定された動きベクトル、係数値、参照画像インデックス等の各符号化規則に対応する復号の処理を行う。【０１４８】
以上、いくつかの実施の形態を例に本発明における実施の形態を説明した。本発明は、ここに記載した実施の形態だけでなく、符号変換や係数値などの情報削除によってマクロブロックの最大ビット数を削減するといった本質を維持したまま、様々な変形が可能である。たとえば、上記で説明したＨ．２６４規格の画像復号装置だけでなく、ＭＰＥＧ−２規格やＶＣ−１規格などに対応した画像復号装置にも同様に適用が可能である。また、符号の変換や係数の削除を独立した回路で行うだけではなく、ストリームから音声と映像を分離する処理を行うデマルチプレクスなどと同時に行うように構成することも可能である。
【産業上の利用可能性】
【０１４９】
本発明に係る復号化装置は、第１の符号化規則で符号化された符号に対して、最大符号長を小さくする第２の符号化規則に変換する変換手段を有し、テレビ、パーソナルコンピュータ、ＤＶＤレコーダーなどに有用である。
【図１】
2008129855.tif 000003
【図２】
2008129855.tif 000004
【図３】
2008129855.tif 000005
【図４】
2008129855.tif 000006
【図５】
2008129855.tif 000007
【図６】
2008129855.tif 000008
【図７】
2008129855.tif 000009
【図８】
2008129855.tif 000010
【図９】
2008129855.tif 000011
【図１０】
2008129855.tif 000012
【図１１】
2008129855.tif 000013
【図１２】
2008129855.tif 000014
【図１３】
2008129855.tif 000015
【図１４】
2008129855.tif 000016
【図１５】
2008129855.tif 000017
【図１６】
2008129855.tif 000018
【図１７】
2008129855.tif 000019
【図１８】
2008129855.tif 000020
【図１９】
2008129855.tif 000021
【図２０】
2008129855.tif 000022
【図２１】
2008129855.tif 000023
【手続補正書】
【提出日】平成20年11月4日(2008.11.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
画像データを復号化する画像データ復号化装置であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により変換がされた後の画像データを記憶するバッファと、
前記バッファから、前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と
を備えることを特徴とする画像データ復号化装置。
【請求項２】
前記画像データは、動きベクトルと、係数値とを含み、
前記符号変換手段は、
画像データに含まれる、前記第３の符号化規則により符号化された動きベクトルを、前記第３の符号化規則よりも最大の符号長が短い第４の符号化規則で符号化された動きベクトルに変換する動きベクトル符号変換手段と、
画像データに含まれる、前記第５の符号化規則により符号化された係数値を、前記第５の符号化規則よりも最大の符号長が短い第６の符号化規則で符号化された係数値に変換する係数値符号変換手段とを備え、
前記動きベクトル符号変換手段と前記係数値符号変換手段とによる変換を画像データに施すことを特徴とする請求項１記載の画像データ復号化装置。
【請求項３】
前記バッファと当該バッファの外部との間で前記画像データが転送されるバンド幅を特定するバンド幅情報を取得するバンド幅情報取得手段を更に備え、
前記符号変換手段は、前記画像データに含まれる、当該画像データの前記転送における各送信単位のうちで、データ長が最大の送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超える場合に、当該画像データの前記変換を行うことを特徴とする請求項１記載の画像データ復号化装置。
【請求項４】
前記バッファと当該バッファの外部との間で前記画像データが転送されるバンド幅を特定するバンド幅情報を取得するバンド幅情報取得手段と、
前記符号変換手段により変換がされた後の画像データに含まれる、当該画像データの前記転送での送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超えるか否かを判定する判定手段と、
前記判定手段により、データ長が前記バンド幅を超えると判定されれば、当該判定がされた前記送信単位のビット数を削減する削減手段とを更に備えることを特徴とする請求項１記載の画像データ復号化装置。
【請求項５】
前記削減手段は、画像データの前記送信単位のなかに、ＡＣ係数、ＤＣ係数のうちでＡＣ係数が含まれない場合にのみ、ＤＣ係数を削除することを特徴とする請求項４記載の画像データ復号化装置。
【請求項６】
前記判定手段は、前記削減手段により輝度係数が削除された前記送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超えるか否かを判定し、
前記削減手段は、輝度係数を削除した前記送信単位のデータ長が前記バンド幅を超えると判定された場合にのみ、当該送信単位の色差係数を削除することを特徴とする請求項４記載の画像データ復号化装置。
【請求項７】
前記第１の符号化規則は、当該第１の符号化規則が値を対応付ける各符号の大きさが不等長であり、
前記第２の符号化規則は、前記第１の符号化規則が予め定められたサイズ以下の小さい符号に対応付ける各値を、それぞれ、当該符号と同じ符号が少なくとも一部に含まれる符号に対応付けると共に、当該サイズよりも大きい符号に対応付ける各値を、それぞれ、いずれも前記予め定められたサイズを有し、互いに等長である予め定められた等長符号が含まれる符号へと対応付けることを特徴とする請求項１記載の画像データ復号化装置。
【請求項８】
前記サイズは、前記第１の符号化規則が対応付けをする全ての値を、等長符号により符号化する場合に必要なビットの最低個数であり、
前記等長符号は、当該最低個数のビットよりなる等長の符号であり、
前記第２の符号化規則の符号は、前記第１の符号化規則の符号と同じ符号、または、当該等長符号のうちの何れか一方を含む本体部と、当該本体部が前記第１の符号化規則の符号と同じ符号が含まれるか、または、前記等長符号が含まれるかを識別する１ビットの識別ビットとを備えることを特徴とする請求項７記載の画像データ復号化装置。
【請求項９】
前記第２の符号化規則は、前記第１の符号化規則の符号が示す値と、前記等長符号が示す等長符号値との値対応関係が含まれ、
前記符号変換手段は、前記第１の符号化規則の符号を前記等長符号を含む符号に変換する場合には、前記第１の符号化規則の符号が示す値に対して前記値対応関係が対応付ける等長符号値の前記等長符号の符号を、含まれる等長符号として選択する
ことを特徴とする請求項８記載の画像データ復号化装置。
【請求項１０】
前記値対応関係は、前記第１の符号化規則の各値を、それぞれ、当該値の絶対値から予め定められた減数を減じた絶対値を有する等長符号値の前記等長符号に対応付ける
ことを特徴とする請求項９記載の画像データ復号化装置。
【請求項１１】
前記変換の前の画像データに基づいて、前記変換の後の画像データの最大の符号長を特定する最大符号長特定手段を更に備え、
前記符号変換手段は、前記最大符号長特定手段により特定された前記最大の符号長が予め定められた大きさを超える場合に前記変換を行い、
前記復号化手段に取得される画像データに対して、前記符号変換手段による前記変換がされたか否かを示す変換有無表示フラグを付加するフラグ付加手段を更に備える
ことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１２】
前記第２の符号化規則は、平均の符号長が前記第１の符号化規則よりも長いことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１３】
前記画像データは、Ｈ．２６４規格による画像データであり、
前記符号変換手段により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号手段を更に備えることを特徴とする請求項１記載の画像データ復号化装置。
【請求項１４】
前記バッファと当該バッファの外部との間で前記画像データを転送するバスを更に備え、
前記符号化規則は、値と、当該値を表す符号との対応関係であり、
前記符号は、１ビットのデータが複数個並んだビット列であり、
前記最大の符号長は、符号化規則が値を対応付ける各符号のうちで、前記ビット列が最長である符号の当該ビット列のビットの個数であり、
前記符号変換手段は、画像データに含まれる各符号を、それぞれ、当該符号に前記第１の符号化規則が対応付ける値に対して前記第２の符号化規則が対応付ける符号へ変換する
ことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１５】
画像データを画像データ復号化装置によって復号化する画像データ復号化方法であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データーへ変換する符号変換工程と、
前記符号変換工程により変換がされた後の画像データをバッファに記憶する工程と、
前記バッファから、前記符号変換工程により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化工程と
を備えることを特徴とする画像データ復号化方法。
【請求項１６】
画像データを復号化する集積回路であって、
当該集積回路に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換し、バッファに記憶する符号変換手段と、
前記バッファから、前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と
を備えることを特徴とする集積回路。
【請求項１７】
Ｈ．２６４規格による画像データを復号化する画像データ復号化装置であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と、
前記符号変換手段により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号手段と
を備えることを特徴とする画像データ復号化装置。
【請求項１８】
Ｈ．２６４規格による画像データを画像データ復号化装置によって復号化する画像データ復号化方法であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換工程と、
前記符号変換工程により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化工程と、
前記符号変換工程により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号工程と
を備えることを特徴とする画像データ復号化方法。
【請求項１９】
Ｈ．２６４規格による画像データを復号化する集積回路であって、
当該集積回路に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と、
前記符号変換手段により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号手段と
を備えることを特徴とする集積回路。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
処理性能に見合った復号性能を得るのが困難である。そこで、ＣＡＢＡＣ符号に対応する復号化装置は、算術符号の復号結果を規格のＣＰＢに相当するバッファに蓄え、画像デコーダは算術符号を復号した結果をデコードするように構成される。しかし、この構成では、算術符号の圧縮を復元した結果を画像デコーダに転送することになるため、マクロブロックの最大ビット量が約５０００ビットと大きく、バッファから画像デコーダに復号結果を転送するのに必要なバンド幅が非常に大きくなる。例えば、このように、マクロブロック符号化結果の最大ビット量が大きくなり、必要なバス幅が大きくなってしまう問題が生じる。
［００１４］
このような課題は、画像データを復号化する画像データ復号化装置に共通する課題である。
［００１５］
そこで、本発明は、この課題を解決するものであり、マクロブロック符号化結果の最大ビット量を削減することができる復号化装置を提供することを目的とする。
課題を解決するための手段
［００１６］
前記従来の課題を解決するために、本発明における画像データ復号化装置は、次の構成を採る。
［００１７］
本発明の画像データ復号化装置は、画像データを復号化する画像データ復号化装置であって、当該復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則より最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、前記符号変換手段により変換がされた後の画像データを記憶するバッファと、前記バッファから、前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と、を備えることを特徴とする画像データ復号化装置である。
［００１８］
また、本発明のコンピュータプログラムは、画像データを画像データ復号化装置に復号化させるためのコンピュータプログラムであって、当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則より最大の符号長が短い第２の符号化規則で符号化された
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
画像データへ変換する符号変換機能と、前記符号変換手段により変換がされた後の画像データをバッファに記憶する記憶機能と、前記バッファから、前記符号変換機能により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化機能とを前記画像データ復号化装置に実現させるためのコンピュータプログラムである。
［００１９］
なお、請求項３における、バンド幅情報により特定されて、前記画像データが転送される「バンド幅」は、バスには画像データ以外のその他のデータも転送される場合には、バンド幅全体から、その他のデータに関する部分を除いた、画像データの転送に関するバンド幅であるものとする。「バンド幅情報」は、例えば、画像データの目標ビット量や、画像データに含まれる送信単位の目標ビット量であるものとしてもよい。また、前記削減手段は、画像データの前記送信単位のなかに、予め定められたＡＣ係数が含まれない場合にのみ、ＤＣ係数を削除するものとしてもよい。
［００２０］
他方、本発明の画像データ復号化装置は、次のようにしてもよい。すなわち、本発明の画像データ復号化装置は、第１の符号化規則で符号化された画像データに対して、前記第１の符号化規則よりも最大符号長が短い第２の符号化規則に変換するデータ変換手段と、前記変換手段により変換された画像データを復号する画像デコード手段とを備える画像データ復号化装置であってもよい。
［００２１］
この画像データ復号化装置であれば、画像デコーダへ入力するストリームのバンド幅が、マクロブロックの符号化結果の最大ビット量で決まることを利用し、入力ビットストリームに対してマクロブロックの最大ビット量が減少するような符号の変換、もしくは、マクロブロックの最大ビット量が減少するような情報量の削減を適用し、さらに、適用した符号の変換や情報量の削減に対応するように画像デコーダを構成することで、画像デコーダへ入力するストリームのバンド幅を削減できて、画像デコーダへ入力するストリームのバンド幅を削減する復号化装置を提供することができる。
［００２２］
なお、前記データ変換手段は、動きベクトル情報と係数値とを別々に符号変換するものとしてもよい。
【手続補正書】
【提出日】平成21年8月31日(2009.8.31)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットストリームの伝送に必要なバンド幅を削減するためにデータ変換を行う画像復号化技術に関するもので、より具体的には圧縮された画像データの最大符号長を小さくするためにデータ変換を行う画像復号化方法及び復号化装置に関するものである。
【背景技術】
【０００２】
近年、動画像データにおいて高圧縮を実現するためにＨ．２６４規格（非特許文献１）やＶＣ−１規格（非特許文献２）が画像符号化技術として採用されてきている。これらの技術においては、圧縮された画像データ（以後、ビットストリームと記述）はいったんバッファに蓄えられる。蓄えられたビットストリームは、画像復号のリアルタイム性を保持するため、ある制限時間内で画像デコーダに転送される。近年、画像の高精細化や複数画像の同時伝送のため、この制限時間が短くなりつつあり、その結果、ビットストリームを制限時間内で画像デコーダに転送するために必要となるバンド幅（転送データ量÷転送時間）が増加している。
【０００３】
さらに、Ｈ．２６４規格やＶＣ−１規格では、画像を複数のブロックに分割して符号化するが、各ブロック（以後、マクロブロックと記述）の符号化結果が０ビットから数１０００ビットという広い範囲になりうる。このため、ビットストリームを制限時間内で画像デコーダに転送するには、マクロブロックの符号化結果が最大のビット量となる場合を想定する必要があり、ビットストリームを画像デコーダに転送するのに大きなバンド幅が必要となっている。
【０００４】
以上のように、近年、ビットストリームを画像デコーダに転送するためのバンド幅が無視できないほどに大きくなっている。しかし、Ｈ．２６４規格やＶＣ−１規格においては、ビットストリームを画像デコーダに転送する方法は実装上の問題として何も制約されていないため、ビットストリームを画像デコーダに転送するためのバンド幅が画像復号装置の構成において課題となっている。
【０００５】
この課題を解決するには、ビットストリームを画像デコーダに転送するためのバンド幅を削減する必要がある。このバンド幅は前述のようにマクロブロック符号化結果の最大ビット量で決定されるため、マクロブロック符号化結果の最大ビット量が与えられたバンド幅で転送可能なビット量を超えないようにマクロブロック符号化結果のビット量を削減すればよい。
【０００６】
一方、特許文献１では、マクロブロック符号化結果のビット量を削減する手法を示している。特許文献１の手法は、ＭＰＥＧ−２規格で符号化されたマクロブロック内の各符号（符号化手法を示すモード符号、動きベクトル符号、ＤＣＴ係数を示す符号など）をより圧縮率が高い符号に変換することでマクロブロック符号化結果のビット量を削減する。しかし、特許文献１の手法は、マクロブロック符号化結果の平均的なビット量の削減を目的としているため、マクロブロック符号化結果の最大ビット量が削減される保障はない。
【０００７】
図１は、特許文献１の符号変換における、変換前の符号の符号化規則を示す図である。
【０００８】
図２は、特許文献１の符号変換における、変換後の符号の符号化規則を示す図である。
【０００９】
具体的には、特許文献１において、図１の符号を図２の符号のように変換しているが、符号の最大ビット数、つまり、図１の表の最下段の符号のビット数、図２の表の最下段の符号のビット数は、どちらも６ビットで、互いに同一である。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】Ｈ．２６４  ＩＳＯ／ＩＥＣ１４４９６−１０規格，ＩＴＵ−Ｔ  Ｈ．２６４規格
【非特許文献２】ＳＭＰＴＥ  ４２１Ｍ−２００６  Ｔｅｌｅｖｉｓｉｏｎ  −  ＶＣ−１  Ｃｏｍｐｒｅｓｓｅｄ  Ｖｉｄｅｏ  Ｂｉｔｓｔｒｅａｍ  Ｆｏｒｍａｔ  ａｎｄ  Ｄｅｃｏｄｉｎｇ  Ｐｒｏｃｅｓｓ
【特許文献】
【００１１】
【特許文献１】特開２００５−９４６９３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、前記従来の構成のようなマクロブロックのビット量を削減する手法では、マクロブロック符号化結果の最大ビット量ではなく、マクロブロック符号化結果の平均的なビット量の削減だけが課題とされているため、マクロブロック符号化結果の最大ビット量を削減することができない。
【００１３】
また、非特許文献１などの画像符号化規格で示される範囲でリアルタイムに画像をデコードする画像デコーダを構成すると、ビットストリームを画像デコーダに転送するためのバンド幅がマクロブロック符号化結果の最大ビット量によって決まる。前記非特許文献１などの画像符号化規格では、マクロブロック符号化結果のビット量が０ビットから数１０００ビットの範囲でマクロブロック毎に変動する。この結果、リアルタイムの画像デコードを行う場合に、ビットストリームを画像デコーダへ転送するためのバンド幅が大きくなり、ビットストリームを蓄えるバッファの高性能化などによる画像デコーダのコストが増加するという問題がある。
【００１４】
このように、画像データを復号化する画像データ復号化装置であって、当該復号化装置に入力された画像データを取得して、取得した画像データを復号化する復号化部を備える復号化装置が従来よりある。しかし、規格に係る技術が考えられた当時には、画像の高精細化や、画像の同時伝送のために、画像データを転送するためのバンド幅が無視できないほどに大きくなるとは見通されていなかった。他方、規格を実装した画像データ復号化装置を実際に作っていくうちに、マクロブロック符号化結果の最大ビット量が大きくなり、必要なバス幅が大きくなってしまう問題が生じることが分かった。
【００１５】
ここで、例えば、Ｈ．２６４規格のＣＡＢＡＣ符号では、符号化結果のビットストリームが算術符号で圧縮されている。ＣＡＢＡＣ符号で用いられている算術符号は、復号が逐次処理とならざるを得ないため、画像デコーダの処理性能に見合った復号性能を得るのが困難である。そこで、ＣＡＢＡＣ符号に対応する復号化装置は、算術符号の復号結果を規格のＣＰＢに相当するバッファに蓄え、画像デコーダは算術符号を復号した結果をデコードするように構成される。しかし、この構成では、算術符号の圧縮を復元した結果を画像デコーダに転送することになるため、マクロブロックの最大ビット量が約５０００ビットと大きく、バッファから画像デコーダに復号結果を転送するのに必要なバンド幅が非常に大きくなる。例えば、このように、マクロブロック符号化結果の最大ビット量が大きくなり、必要なバス幅が大きくなってしまう問題が生じる。
【００１６】
このような課題は、画像データを復号化する画像データ復号化装置に共通する課題である。
【００１７】
そこで、本発明は、この課題を解決するものであり、マクロブロック符号化結果の最大ビット量を削減することができる復号化装置を提供することを目的とする。
【課題を解決するための手段】
【００１８】
前記従来の課題を解決するために、本発明における画像データ復号化装置は、次の構成を採る。
【００１９】
本発明の画像データ復号化装置は、画像データを復号化する画像データ復号化装置であって、当該復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則より最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、前記符号変換手段により変換がされた後の画像データを記憶するバッファと、前記バッファから、前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と、を備えることを特徴とする画像データ復号化装置である。
【００２０】
また、本発明のコンピュータプログラムは、画像データを画像データ復号化装置に復号化させるためのコンピュータプログラムであって、当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則より最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換機能と、前記符号変換手段により変換がされた後の画像データをバッファに記憶する記憶機能と、前記バッファから、前記符号変換機能により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化機能とを前記画像データ復号化装置に実現させるためのコンピュータプログラムである。
【００２１】
なお、請求項３における、バンド幅情報により特定されて、前記画像データが転送される「バンド幅」は、バスには画像データ以外のその他のデータも転送される場合には、バンド幅全体から、その他のデータに関する部分を除いた、画像データの転送に関するバンド幅であるものとする。「バンド幅情報」は、例えば、画像データの目標ビット量や、画像データに含まれる送信単位の目標ビット量であるものとしてもよい。また、前記削減手段は、画像データの前記送信単位のなかに、予め定められたＡＣ係数が含まれない場合にのみ、ＤＣ係数を削除するものとしてもよい。
【００２２】
他方、本発明の画像データ復号化装置は、次のようにしてもよい。すなわち、本発明の画像データ復号化装置は、第１の符号化規則で符号化された画像データに対して、前記第１の符号化規則よりも最大符号長が短い第２の符号化規則に変換するデータ変換手段と、前記変換手段により変換された画像データを復号する画像デコード手段とを備える画像データ復号化装置であってもよい。
【００２３】
この画像データ復号化装置であれば、画像デコーダへ入力するストリームのバンド幅が、マクロブロックの符号化結果の最大ビット量で決まることを利用し、入力ビットストリームに対してマクロブロックの最大ビット量が減少するような符号の変換、もしくは、マクロブロックの最大ビット量が減少するような情報量の削減を適用し、さらに、適用した符号の変換や情報量の削減に対応するように画像デコーダを構成することで、画像デコーダへ入力するストリームのバンド幅を削減できて、画像デコーダへ入力するストリームのバンド幅を削減する復号化装置を提供することができる。
【００２４】
なお、前記データ変換手段は、動きベクトル情報と係数値とを別々に符号変換するものとしてもよい。
【００２５】
また、前記データ変換手段から出力される画像データを記憶するバッファと、前記バッファに対するバンド幅を取得する取得手段をさらに備え、前記バッファへの送信単位において前記画像データの最大データ長が、前記取得手段により取得されたバンド幅を超える場合には、前記データ変換手段によりデータ変換を行うものとしてもよい。
【００２６】
また、前記データ変換手段から出力される画像データを記憶するバッファと、前記バッファに対するバンド幅を取得する取得手段と、前記バッファから出力される画像データに対するバンド幅を取得し、取得したバンド幅に基づいて目標値を設定し、前記符号変換された画像データのビット数を送信単位毎にカウントし、カウントしたビット数が前記目標値を超えた場合にデータ削減指示を出すビット数制御手段と、前記削減指示を受けた場合に、前記符号変換された画像データのビット数を削減する削減手段をさらに備えるものとしてもよい。
【００２７】
また、前記削減手段は、輝度ＡＣ、色差ＡＣ、輝度ＤＣ、色差ＤＣの順でビット数を削減するものとしてもよい。
【００２８】
また、前記第１の符号化規則は不等長符号へ符号化する符号化規則であり、前記第２の符号化規則は不等長符号と等長符号とを切り替えて符号化し、前記第２の符号化規則の最大符号長は等長符号の符号長とする符号化規則であるものとしてもよい。
【００２９】
また、画像データを復号する復号化方法であって、第１の符号化規則で符号化された画像データに対して、前記第１の符号化規則よりも最大符号長が短い第２の符号化規則に変換するデータ変換ステップと、前記変換手段により変換された画像データを復号する画像デコードステップとを備える復号化方法を構成してもよい。
【００３０】
また、画像データを復号する復号化装置に用いられる集積回路であって、第１の符号化規則で符号化された画像データに対して、前記第１の符号化規則よりも最大符号長が短い第２の符号化規則に変換するデータ変換手段と、前記変換手段により変換された画像データを復号する画像デコード手段とを備える集積回路を構成してもよい。
【発明の効果】
【００３１】
本発明は、画像デコーダへのバンド幅を削減するため、符号長の最大ビット数を削減するような変換手段を設けることにより、ビットストリームをバッファに蓄える前に、ビットストリームをマクロブロックの最大ビット量が減少するように構成された符号に変換し、変換後のビットストリームを変換後のビットストリームに対応した画像デコーダで復号するものである。これにより、マクロブロック符号化結果の最大ビット量が減少するため、リアルタイムの画像デコードのために必要となるビットストリームを画像デコーダに転送するバンド幅を小さくすることができる。また、ビットストリームを蓄えるバッファの高性能化などが不要となるため、より低いコストで画像デコーダを実現することができる。
【図面の簡単な説明】
【００３２】
【図１】図１は、特許文献１の符号変換における、変換前の符号の符号化規則を示す図である。
【図２】図２は、特許文献１の符号変換における、変換後の符号の符号化規則を示す図である。
【図３】図３は、本発明の構成図である。
【図４】図４は、符号変換部の構成図である。
【図５】図５は、符号変換部の動作を示すフローチャートである。
【図６】図６は、符号変換前の動きベクトルの符号化（ＣＡＶＬＣ）を示す図である。
【図７】図７は、符号変換後の動きベクトルの符号化（ＣＡＶＬＣ）を示す図である。
【図８】図８は、符号変換前の係数値の符号化（ＣＡＶＬＣ）を示す図である。
【図９】図９は、符号変換後の係数値の符号化（ＣＡＶＬＣ）を示す図である。
【図１０】図１０は、実施の形態２の構成図である。
【図１１】図１１は、係数削減部の構成図である。
【図１２】図１２は、係数削減部の動作を示すフローチャートである。
【図１３】図１３は、係数削除の動作を示すフローチャートである。
【図１４】図１４は、実施の形態３の構成図である。
【図１５】図１５は、符号変換前の動きベクトルの符号化（ＣＡＢＡＣ）を示す図である。
【図１６】図１６は、符号変換後の動きベクトルの符号化（ＣＡＢＡＣ）を示す図である。
【図１７】図１７は、符号変換前の係数値の符号化（ＣＡＢＡＣ）を示す図である。
【図１８】図１８は、符号変換後の係数値の符号化（ＣＡＢＡＣ）を示す図である。
【図１９】図１９は、符号変換前の参照画像インデックスと量子化パラメータの符号化（ＣＡＢＡＣ）を示す図である。
【図２０】図２０は、符号変換後の参照画像インデックスと量子化パラメータの符号化（ＣＡＢＡＣ）を示す図である。
【図２１】図２１は、実施の形態４に係る復号化装置１００Ｃを示す図である。
【発明を実施するための形態】
【００３３】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００３４】
（実施の形態１）
図３は、本発明の実施の形態１における復号化装置１００の構成図である。以下、図３を用いて復号化装置１００の動作について説明する。
【００３５】
図３に示す復号化装置１００は、符号の変換を行う符号変換部１０１、符号変換部１０１の出力を蓄えるバッファ１０２、バッファからビットストリームを読み出して画像を復号する画像デコーダ１０３、画像デコーダ１０３によるデコード結果の画像を蓄えるフレームメモリ１０４から構成される。
【００３６】
符号変換部１０１は、Ｈ．２６４規格によって符号化されたビットストリームを復号化装置１００の外部から読み込み、その読み込んだビットストリームを後述する符号変換手順（図４〜図９の説明を参照）で処理し、処理結果をビットストリームとしてバッファ１０２に出力する。
【００３７】
バッファ１０２は、Ｈ．２６４規格が要求するＣＰＢ（Ｃｏｄｅｄ  Ｐｉｃｔｕｒｅ  Ｂｕｆｆｅｒ）として機能し、符号変換部１０１から出力されたビットストリームをメモリなどの記憶装置に蓄え、画像デコーダ１０３からの読み出し要求に応じて蓄えられたビットストリームを出力する。
【００３８】
画像デコーダ１０３は、符号変換部１０１が出力する形式のビットストリームを取得し、取得したビットストリームを復号して、復号結果の画像を出力する。なお、この画像デコーダ１０３は、Ｈ．２６４規格に適合したデコーダの可変長符号復号部を、符号変換部１０１の出力するビットストリームが復号できるように変更したものである。この結果、画像を正しくデコードするために、符号変換部１０１で行う変換は、画像符号化規格の可変長符号化以外の規定に影響を与えないようにされる。なお、このような、画像デコーダ１０３および符号変換部１０１は、一例であり、何らかの限定をするものではない。
【００３９】
フレームメモリ１０４は、画像デコーダ１０３が出力する復号結果の画像をメモリなどの記憶装置に蓄える。フレームメモリ１０４が蓄えた画像は、画像デコード時の参照画像や復号結果出力時のバッファなどに用いる。
【００４０】
図４は、実施の形態１における符号変換部１０１の構成図である。図４に示す符号変換部１０１は、Ｈ．２６４規格で符号化されたビットストリームを、マクロブロックの最大ビット量が削減するように構成された符号に変換する。
【００４１】
ビットストリーム復号部２０１は、画像符号化規格で符号化されたビットストリームを復号し、ストリーム符号変換部２０３（ストリーム符号変換部群２０３ｘ）が変換を行わない場合は入力ビットストリームをそのままビットストリーム生成部２０２へ、変換を行う場合は入力ビットストリームをストリーム符号変換部２０３（ストリーム符号変換部群２０３ｘ）へ送る。
【００４２】
ビットストリーム生成部２０２は、ビットストリーム復号部２０１とストリーム符号変換部２０３から出力されたビットストリームを結合し、画像デコーダ１０３が復号可能なビットストリームとして出力する。
【００４３】
ストリーム符号変換部２０３は、ビットストリーム復号部２０１が出力した符号を最大ビット量が削減するように構成された符号に変換し、変換した結果の各符号を、ビットストリームとしてビットストリーム生成部２０２に出力する。ストリーム符号変換部群２０３ｘは、ストリーム符号変換部２０３として、動きベクトル符号変換部２０４、係数値符号変換部２０５を備え、つまり、ストリーム符号変換部群２０３ｘが備える複数のストリーム符号変換部２０３のうちには、動きベクトル符号変換部２０４と係数値符号変換部２０５とが含まれる。これらの詳細は後ほど説明する。
【００４４】
以後、Ｈ．２６４規格のＣＡＶＬＣ（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）符号における符号変換の手順を説明する。
【００４５】
ＣＡＶＬＣ符号に対する本発明の適用では、符号変換部１０１は、マクロブロックに対応するビットストリーム（規格ではｍａｃｒｏｂｌｏｃｋ＿ｌａｙｅｒ（）と記載）が含むパラメータのうち、動きベクトル（以後、ｍｖｄと記述）と係数値（以後、ｌｅｖｅｌと記述）だけを最大符号長が小さくなる符号に変換し、その他は変換を行わずに出力する。この実施例でｍｖｄとｌｅｖｅｌだけを変換する理由は、ビット量が最大となるマクロブロックではビットの多くがｍｖｄとｌｅｖｅｌの符号化に使われるからである。
【００４６】
図５は、この実施例におけるビットストリーム復号部２０１（図４）の動作を示すフローチャートである。
【００４７】
ビットストリーム復号部２０１は、入力されたビットストリームを規格に従って、復号する（ステップＳ３０１）。次に、ビットストリーム復号部２０１は、先のステップＳ３０１における復号結果を、動きベクトルに対応するｍｖｄ＿ｌ０とｍｖｄ＿ｌ１、係数値に対応するｌｅｖｅｌ＿ｐｒｅｆｉｘとｌｅｖｅｌ＿ｓｕｆｆｉｘ、その他に分類する（ステップＳ３０２）。また、ビットストリーム復号部２０１は、ステップＳ３０２での分類の結果に基づいて、動きベクトルと係数値以外をそのままビットストリーム生成部２０２に出力し（図４参照、ステップＳ３０３）、動きベクトルを動きベクトル符号変換部２０４（図４の上段側のストリーム符号変換部２０３）に出力し（ステップＳ３０４）、係数値を係数値符号変換部２０５（図４の下段側のストリーム符号変換部２０３）に出力する（ステップＳ３０５）。
【００４８】
なお、ビットストリーム復号部２０１が、そのままビットストリーム生成部２０２にステップＳ３０３で出力を行う、上述した、動きベクトルと係数値以外のその他は、例えば、１ビットのデータや、固定長符号で符号化されたデータが多い。このようなその他の部分までは符号変換がされないことにより、復号化装置１００であれば、装置の構成を簡単にできる。そして、復号化装置１００であれば、逆に、２ビット以上のデータであり、かつ、可変長符号で符号化されたデータである動きベクトルと係数値は符号変換を行い、構成を簡単にしつつバス幅を十分に小さくできる。
【００４９】
図６は、動きベクトル符号変換部２０４による符号変換（図５のステップＳ３０４）がされる前の、動きベクトルの符号化規則を示す図である。
【００５０】
動きベクトル符号変換部２０４は、入力された動きベクトルを符号変換する（図５のステップＳ３０４）。次に動きベクトルの符号変換について説明する。Ｈ．２６４規格のＣＡＶＬＣ符号では、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１が図６に示すようなＥｘｐ−Ｇｏｌｏｍｂ符号で符号化されている。規格においてｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の値は−１６３８４〜１６３８３に制限されるため、この符号化におけるｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の最大符号長は３１ビットとなる。規格上、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１は最大で３２回出現するため、最大ビット量は９９２ビットとなる。そのため、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１における最大符号長の短縮はマクロブロックの最大ビット量削減に有効である。
【００５１】
図７は、動きベクトル符号変換部２０４（図４）による符号変換（図５のステップＳ３０４）がされた後の、動きベクトルの符号化規則を示す図である。図７に、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の最大ビット量を削減するように構成した符号の一例を示す。
【００５２】
この符号は、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の値が１５ビットの符号付き固定長符号で表現できることを利用し、元のＥｘｐ−Ｇｏｌｏｍｂ符号で１５ビット以上が必要となる絶対値１２８以上を固定長符号、その他をＥｘｐ−Ｇｏｌｏｍｂ符号としている。この場合、変換後のビットストリームの復号に符号化手法が固定長符号とＥｘｐ−Ｇｏｌｏｍｂ符号のどちらであるかの判定が必要となるため、固定長符号であれば０、Ｅｘｐ−Ｇｏｌｏｍｂ符号であれば１を符号の先頭に付加している。この符号変換により、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の最大符号長が３１ビットから１６ビットまで削減され、マクロブロックの最大ビット量が９９２ビットから５１２ビットまで削減される。一方、この符号変換では、絶対値が１２７以下の場合に符号長が１ビット大きくなっている。一般に、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の絶対値は小さいことが多いため、この変換によって平均的なマクロブロックのビット数は増加してしまう。しかし、ｍｖｄ＿ｌ０とｍｖｄ＿ｌ１の絶対値が小さいマクロブロックでは、マクロブロック全体のビット量が最大ビット量より大幅に小さくなることが多いため、絶対値１２７以下で符号長が１ビット増加したことによるマクロブロック最大ビット量の増加は無視できる。
【００５３】
図８は、係数値符号変換部２０５（図４）による符号変換（図５のステップＳ３０５）がされる前の、係数値の符号化規則を示す図である。
【００５４】
図９は、係数値符号変換部２０５（図４）による符号変換（図５のステップＳ３０５）がされた後の、係数値の符号化規則を示す図である。
【００５５】
係数値符号変換部２０５は、係数値を符号変換する（ステップＳ３０５）。次に、係数値の符号変換について説明する。Ｈ．２６４規格のＣＡＶＬＣ符号では、図８に示すように係数値をｌｅｖｅｌ＿ｐｒｅｆｉｘとｌｅｖｅｌ＿ｓｕｆｆｉｘという２個の符号であらわす。なお、規格上は直前に符号化した係数値に応じてｌｅｖｅｌ＿ｓｕｆｆｉｘの長さが異なる７種類のテーブルを切り替えるが、ここで説明する符号変換は同じ考え方で全テーブルに適用できるので、以後、図８に示すｓｕｆｆｉｘ＿ｌｅｎｇｔｈ＝０のテーブルについて説明する。
【００５６】
規格において係数値の範囲は−１３１０７２〜１３１０７１と制限されているため、係数値は１８ビットの符号付き固定長符号で表現できる。そこで、図８においてｌｅｖｅｌ＿ｐｒｅｆｉｘとｌｅｖｅｌ＿ｓｕｆｆｉｘの符号長が合計で１８を超える係数値８〜−１２９０３９より下段の符号だけを１８ビット固定長符号にし、その他の符号は元の符号をそのまま用いる。この場合、動きベクトルの場合と同様、変換後のビットストリームの復号時に符号化手法を固定長符号と元の符号から選択する必要がある。そこで、固定長符号の場合は符号の前に１、元の符号の場合は符号の前に０を付加する。係数値にこの変換を適用した結果を図９に示す。この図に示すように、変換の結果、係数値の最大符号長が３８ビットから１９ビットまで減少し、マクロブロックの最大ビット量を大幅に削減できる。一方、この符号変換により、係数の絶対値が７以下において符号長が１ビット大きくなる。一般に係数の絶対値は小さいことが多いため、変換によってマクロブロックの平均ビット数は増加してしまう。しかし、係数の絶対値が小さいマクロブロックでは、マクロブロック全体のビット量が最大ビット量より小さくなるため、符号長が１ビット増加したことによるマクロブロックの最大ビット量の増加は無視できる。
【００５７】
復号化装置１００は、図５の処理を終了するまで、繰り返し、以上説明した図５の処理を繰り返し実行する（ステップＳ３０６）。
【００５８】
このように、復号化装置１００は、画像データ（ビットストリーム、マクロブロック）を復号化する復号化装置１００であって、当該復号化装置１００に入力された画像データを、当該画像データが符号化された符号化規則（図６、図８）よりも最大の符号長が短い別の符号化規則（図７、図９）で符号化された画像データへ変換する符号変換部１０１と（図３）、符号変換部１０１により前記変換がされた後の画像データを取得して、取得した画像データを復号化する画像デコーダ１０３と（図３）を備える。
【００５９】
そして、画像データは、動きベクトルと、係数値とを含み、符号変換部１０１は、画像データに含まれる、図６の符号化規則により符号化された動きベクトルを、図６の符号化規則よりも最大の符号長が短い図７の符号化規則で符号化された動きベクトルに変換する動きベクトル符号変換部２０４と（図４）、画像データに含まれる、図８の符号化規則により符号化された係数値を、図８の符号化規則よりも最大の符号長が短い図９の符号化規則で符号化された係数値に変換する係数値符号変換部２０５と（図４）を備え、動きベクトル符号変換部２０４と係数値符号変換部２０５とによる変換を画像データに施す。
【００６０】
なお、このように、請求の範囲の記載における「符号変換手段」は、画像データがｎ個（ｎ≧２）の部分に分かれ、各部分が互いに異なる種類の符号化規則により符号化される場合において、ｋ番目の部分が第ｋ種類の第１の符号化規則で符号化された画像データを（１≦ｋ≦ｎ）、ｋ番目の部分が第ｋ種類の第２の符号化規則で符号化された画像データに変換し（１≦ｋ≦ｎ）、かつ、第ｋ種類の第１の符号化規則の最大の符号長よりも同じ第ｋ種類の第２の符号化規則の最大の符号長の方が短いものとしてもよい。なお、この場合において、画像データは、ｎ個の上記部分のみからなるものではなく、ｎ個の上記部分と他の部分とにより構成されるものであってもよい。
【００６１】
また、復号化装置１００は、前記符号変換部１０１により変換がされた後の画像データを記憶するバッファ１０２を更に備え、画像デコーダ１０３は、バッファ１０２に記憶された画像データを取得して、取得した画像データを復号化し、バッファ１０２と当該バッファ１０２の外部との間で画像データを転送するバスＢを更に備え、前記符号化規則とは、図６〜図９に示されるように、値と、当該値を表す符号との対応関係であり、符号は、１ビットのデータが複数個並んだビット列であり、前記最大の符号長は、符号化規則が値を対応付ける各符号のうちで、前記ビット列が最長である符号の当該ビット列のビットの個数であり、符号変換部１０１は、画像データに含まれる各符号を、それぞれ、当該符号に図６や図８の符号化規則が対応付ける値に対して図７や図９の符号化規則が対応付ける符号へ変換する。
【００６２】
また、図７の符号化規則は、平均の符号長が図６の符号化規則よりも長く、図９の符号化規則は、平均の符号長が図８の符号化規則よりも長い。
【００６３】
また、図７の符号化規則が対応付けをする各符号は、図６の符号化規則が予め定められた切替サイズ（１５ビット）以下の短い符号に対応付ける各値（図６における０〜−１２７の各値）に対応付けられる短符号長側符号（図７における０〜−１２７の各値の符号）と、図６の符号化規則が切替サイズ（１５ビット）より長い符号に対応付ける各値（図６における１２８〜−１６３８４）に対応付けられる長符号長側符号（図７における１２８〜−１６３８４の各値の符号）とを含む。
【００６４】
ここで、上述の切替サイズ（１５ビット）は、図６の符号化規則が対応付けをする全ての値（０〜−１６３８４）を、等長符号により符号化する場合に、その等長符号に必要となる最低のビット数である。この等長符号の符号長（１５ビット）は、上述した、対応付けをする全ての値（０〜−１６３８４）の個数をｘとして、２を底としたｘの対数値（ｌｏｇ（ｘ））により求められる。
【００６５】
そして、図７の符号化規則が対応付けをする符号は、上記短符号長側符号も、上記長符号長側符号も、いずれの場合でも、符号の冒頭における１ビットのデータであり、当該符号が短符号長側符号か長符号長側符号かを示す識別ビット（０又は１）と、２ビット目以降の本体部とを備える。
【００６６】
例えば、図７のｍｖｄ値１に対応する符号「１＿０１０」は、識別ビットとして「１」をもち、本体部として「０１０」を持つ。
【００６７】
識別ビットは、その識別ビットが含まれる符号が、上述した短符号長側符号（図７における値０〜−１２７の符号）である場合には、値１を有し、その識別ビットが含まれる符号が長符号長側符号である場合には、値０を有する。
【００６８】
他方、本体部は、その本体部を有する符号が、短符号長側符号である場合は、その短符号長側符号が示す値に対して図６の符号化規則が対応付ける符号と同じ符号である。例えば、図７における値１に対応付けられる短符号長符号「１＿０１０」における本体部「０１０」は、図６において同じ値１に対応付けられる「０１０」と同じである。
【００６９】
そして、本体部は、その本体部を有する符号が長符号長側符号である場合には、上記した切替サイズの大きさの等長符号である。例えば、図７において、値１２８に対応する長符号長符号「０＿００…０１０００…０」の本体部「００…０１０００…０」は、１５ビットの等長符号であり、かつ、値１２８を示すものである。ここで、長符号長側符号の本体部（「００…０１０００…０」）は、その長符号長側符号が示す値（１２８）を示す等長符号である。
【００７０】
こうして、図７の符号化規則は、図６の符号化規則が切替サイズ以下の小さい符号（「０１０」等）に対応付ける各値を、それぞれ、当該符号と同じ符号が少なくとも一部に含まれる短符号長側符号（「０＿０１０」等）に対応付けると共に、当該切替サイズよりも大きい符号に対応付ける各値（１２８等）を、それぞれ、いずれも前記切替サイズ（１５ビットのサイズ）を有し、互いに等長である予め定められた等長符号（「００…０１０００…０」等）が含まれる長符号長側符号（「０＿００…０１０００…０」）へと対応付ける。
【００７１】
同じようにして、図９の符号化規則は、図８の符号化規則が切替サイズ１８以下の小さい符号に対応付ける各値（１〜−７）を、それぞれ、当該符号（例えば値２に対応付けられた「００１」）と同じ符号が少なくとも一部に含まれる短符号長符号（例えば図９における「０＿００１」）に対応付けると共に、当該切替サイズよりも大きい符号に対応付ける各値（８〜−１２９０３９）を、それぞれ、いずれも前記切替サイズ（１８ビットのサイズ）を有し、互いに等長である予め定められた等長符号が含まれる符号（図９に示される「１＿ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」）に対応付ける。そして、前記切替サイズは、図８の符号化規則が対応付けをする全ての値（１〜−１２９０３９）を、等長符号により符号化する場合に必要なビットの最低個数１８であり、前記等長符号は、当該最低個数のビットつまり１８個のビットよりなる等長の符号であり、図９の符号化規則の符号は、図８の符号化規則と同じ符号、または、当該等長符号の何れか一方を含む本体部（「１＿ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」における「ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」）と、当該符号が前記第１の符号化規則の符号と同じ符号が含まれるか、または、前記等長符号が含まれるかを識別する識別ビット（「１＿ｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘｘ」における「１」）とを備える。
【００７２】
なお、復号化装置１００は、例えば、上記符号変換部１０１、バッファ１０２、バスＢ、画像デコーダ１０３、フレームメモリ１０４が、当該復号化装置１００の有する集積回路（ＬＳＩ）上に実現された復号化装置であってもよい。
【００７３】
なお、符号変換部１０１は、例えば、図６や図８に示される、変換前の符号を入力符号とし、図７や図９に示される、変換後の符号を出力符号とする、入力符号に対応した出力符号を出力する回路として構成される。このような、回路として構成される場合、符号変換部１０１は、図６および図８により示される、入力符号と、その入力符号のｍｖｄ値と同じｍｖｄ値の出力符号との対応関係に基づいた回路構成をとるものとしてもよい。
【００７４】
このように、本実施例の符号変換により、マクロブロックの最大ビット量が削減されるため、マクロブロックの最大ビット量から決まるビットストリームをデコーダに転送するバンド幅も削減できる。なお、本実施例における画像デコーダ１０３は、規格が規定する画像復号処理のうち、動きベクトルと係数値に対応する可変長符号復号部を図７と図９の符号に対応するよう変更したものである。
【００７５】
このような復号化装置１００であれば、入力された画像データが、符号変換部１０１によって、最大の符号長が短い図７の符号化規則の画像データに変換されて、最大の符号長が短い符号化規則で符号化された画像データが復号化装置１００内で転送されるようにでき、復号化装置１００におけるバス幅を小さくすることができる。
【００７６】
ここまで、本発明の実施の形態１について説明したが、本実施の形態は、最大符号長を削減するように符号を変換するという本質を維持した範囲で様々な変形が可能である。変形の例としては、Ｈ．２６４以外のＶＣ−１やＭＰＥＧ−２などの画像符号化規格への適用が考えられる。Ｈ．２６４以外の画像符号化規格においても動きベクトルと係数値がマクロブロックの最大ビット量の多くを占めるため、各々の符号を最大符号長が減少するような符号に変換することで、本実施の形態と同様な効果を得ることができる。
【００７７】
なお、図３に示す各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。図３の破線は、ＬＳＩの典型的な構成を示し、符号変換部１０１と画像デコーダ１０３をＬＳＩとして集積し、バッファ１０２とフレームメモリ１０４をＤＲＡＭなどのメモリＬＳＩとして集積することを示している。ただし、集積化の手法については、この例に限定するものではなく、各機能が個別に１チップ化されてもよいし、一部またはすべてを含むように１チップ化されてもよい。さらには、ＬＳＩに置き換わる集積回路化の技術があれば、当然、その技術を用いて集積化を行ってもよい。
【００７８】
また、実施の形態１における復号化装置にさらに、バッファに対するバンド幅を取得する取得部を設け、入力したビットストリームの処理単位ごとのビット数が、取得されたバンド幅を超えた場合にのみ、符号変換を行うようにしてもよい。その際、変換前のストリームか変換後のストリームかを識別する識別子をストリームに付与することが好ましい（図２１および図２１の説明を参照）。
【００７９】
（実施の形態２）
図１０は、本発明の実施の形態２に係る復号化装置１００Ａの構成図である。以下、図１０を用いて、本発明の実施の形態２に係る本復号化装置１００Ａについて詳しく説明する。
【００８０】
図１０に示す復号化装置１００Ａは、実施の形態１で示した復号化装置１００の符号変換部１０１とバッファ１０２の間に係数削減部８０１を追加した構成となっている。図１０のうち、係数削減部８０１以外は、実施の形態１と同じ構成であり、その機能も同一なので、同じ符号を付しその説明を省略する。
【００８１】
係数削減部８０１は、符号変換部１０１が出力するビットストリームを読み込み、読み込んだビットストリームに含まれる各マクロブロックについて、それぞれ、そのマクロブロックに含まれる直交変換（ＤＣＴなど）適用結果の係数値を削除することで、マクロブロックのビット量を削減し、マクロブロックのビット量を指定した値に近づける。実施の形態２では、実施の形態１で示したような符号変換を行ってもマクロブロックのビット量が目標より多い場合に係数削減を実施する。実施の形態２では、ビットストリームのデコーダへの転送に割り当て可能なバンド幅から求めたマクロブロックの最大ビット量を目標ビット量として設定する。このため、実施の形態２では、ビットストリームの転送に必要なバンド幅が想定した値で収まるようにマクロブロックのビット量を削減することができる。なお、目標ビット量は、バスＢのバス幅に対応した、適切にバスＢでの転送ができるビット量が選ばれる。
【００８２】
なお、請求の範囲における「バンド幅情報」は、この実施の形態２において、上記目標ビット量によって、一例が示される。
【００８３】
図１１は、実施の形態２における係数削減部８０１の構成図である。ビットストリーム復号部９０１は、復号化装置１００Ａに入力された入力ビットストリームを、係数と係数以外の部分に分け、係数部分は削減部９０２、係数以外の部分はビットストリーム生成部９０３に送る。また、ビットストリーム復号部９０１は、入力ビットストリームを複製してビット量計測部９０４に送る。削減部９０２は、係数削減制御部９０５から入力されるコマンドにしたがって、ビットストリーム復号部９０１から入力された係数部分のビットストリームから係数の削除を行い、その結果から係数部分のビットストリームを再構成して出力する。ビットストリーム生成部９０３は、ビットストリーム復号部９０１と削減部９０２から入力されるビットストリームを結合し、ビットストリームとして出力する。ビット量計測部９０４は、入力ビットストリームを復号し、マクロブロックのビット量や係数部に含まれる係数値とそのビット量などを出力する。係数削減制御部９０５は、係数削減部８０１の外部から入力される目標ビット量とビット量計測部９０４から入力されるマクロブロックのビット量との差分を求め、求められた差分の値と、ビット量計測部９０４から入力される係数部に含まれる係数値およびそのビット量とから、係数削除の有無と、削除する係数値を判断し、削減部９０２に対するコマンドを生成する。また、係数削減制御部９０５は、複数のマクロブロックをまたいだ目標ビット量制御などに用いるため、係数削減後のマクロブロックビット量と目標ビット量との差分を求め、係数削減制御部９０５の内部に保持する。なお、上記した、係数削減部８０１の外部から入力される目標ビット量は、例えば、係数削減部８０１の外部にある目標ビット量記憶部に記憶されたものが、係数削減部８０１に入力されてもよいし、係数削減部８０１の外部にある目標ビット量算出部により算出された目標ビット量が入力されるものとしてもよい。
【００８４】
以後、係数削減部８０１の動作を説明する。
【００８５】
図１２は、係数削減部８０１のマクロブロックに対する動作をフローチャートで示したものである。係数削減部８０１は、はじめにマクロブロックのビット量と目標ビット量とを比較する（ステップＳ１００１）。ステップＳ１００１の比較によって、もし、マクロブロックのビット量が目標ビット量より少ないと判定されれば、係数削減部８０１は、係数削減部８０１に入力されたビットストリームをそのまま出力する（ステップＳ１００６、ステップＳ１００１：達成）。他方、ステップＳ１００１の比較において、マクロブロックのビット量が目標ビット量より多いと判定された場合には（ステップＳ１００１：未達）、ビットストリーム復号部９０１が、ビットストリームを復号する（ステップＳ１００２）。次に、係数削減部８０１は、ステップＳ１００２での復号結果が係数に対応するｒｅｓｉｄｕａｌであるかを調べ、復号結果がｒｅｓｉｄｕａｌでない場合（ステップＳ１００３：その他）、ステップＳ１００２で復号した部分のビットストリームをそのまま出力し（ステップＳ１００４）、ステップＳ１００２に戻る。他方、ステップＳ１００２での復号結果がｒｅｓｉｄｕａｌである場合は係数削除ステップＳ１００５に進み（ステップＳ１００３：ｒｅｓｉｄｕａｌ）、マクロブロックが終了した場合は処理を終了する（ステップＳ１００３：マクロブロック終了）。削減部９０２は、ステップＳ１００３の判定により復号結果がｒｅｓｉｄｕａｌであると判定されると（ステップＳ１００３：ｒｅｉｄｕａｌ）、係数の削除によるビット量の削減を行う（ステップＳ１００５）。なお、削減部９０２は、ビットストリームが続く限り、図１２で示したマクロブロックの処理を繰り返し実施する。
【００８６】
図１３は、削減部９０２が行う図１２のステップＳ１００５の係数削除の動作をフローチャートで示したものである。削減部９０２の基本的な動作規則は以下のようになっている。以後、図１３の詳細について説明する。なお、図１３のステップは全て削減部９０２が行なう。
【００８７】
（１）ＡＣ係数（直交変換適用結果のうち高周波成分）から削除し、ＡＣ係数がなくなった場合にだけ、ＤＣ係数（直交変換適用結果のうち直流成分）を削除する。
（２）ＡＣ係数、ＤＣ係数の削除は、輝度係数の削除と色差係数の削除を交互に行う。
（３）１係数の削除毎にビット量の判定を行い、目標に到達した時点で終了する。
（４）値が０でない係数について、係数の削除を行う。
【００８８】
削減部９０２は、図１２のステップＳ１００５の処理、つまり、図１３の処理を行うに際して、はじめに、係数復号ステップＳ１１０１で、全係数の復号を行う。このステップＳ１１０１により、輝度ＡＣ係数、輝度ＤＣ係数、色差ＡＣ係数、色差ＤＣ係数が係数として復号される。
【００８９】
次にＡＣ係数有無判定ステップＳ１１０２で、削減部９０２は、先にステップＳ１１０１で復号されたＡＣ係数に、非０の値が存在するかを調べ、存在しない場合はＤＣ係数判定ステップＳ１１０７に進み（ステップＳ１１０２：無）、存在する場合は輝度ＡＣ係数削除ステップＳ１１０３に進む（ステップＳ１１０２：有）。
【００９０】
輝度ＡＣ係数削除ステップＳ１１０３では、削減部９０２は、先にステップＳ１１０１で復号された輝度ＡＣ係数の非０の係数のうち、最も高周波数に対応する係数で値が最大のもの１個を削除し、削除後のマクロブロックのビット量を求める。
【００９１】
その後、目標ビット量判定ステップＳ１１０４で、削減部９０２は、ステップＳ１１０３で求められたマクロブロックのビット量が目標に到達したかを調べ、到達していない場合は、色差ＡＣ係数削除ステップＳ１１０５に進み（ステップＳ１１０４：未達）、到達した場合は係数符号化ステップＳ１１１２へ進む（ステップＳ１１０４：達成）。
【００９２】
色差ＡＣ係数削除ステップＳ１１０５では、削減部９０２は、先にステップＳ１００５で復号された色差ＡＣ係数の非０の係数のうち、最も高周波数に対応する係数で値が最大のもの１個を削除し、削除後のマクロブロックのビット量を求める。
【００９３】
その後、目標ビット量判定ステップＳ１１０６で、削減部９０２は、ステップＳ１１０５で求められたマクロブロックのビット量が目標に到達したかを調べ、到達していない場合は再度ＡＣ係数の削除を行うためにＡＣ係数有無判定ステップＳ１１０２に進み（ステップＳ１１０６：達成）、到達した場合は係数符号化ステップＳ１１１２へ進む（ステップＳ１１０６：未達）。
【００９４】
ＤＣ係数判定ステップＳ１１０７では、削減部９０２は、先にステップＳ１１０１で復号されたＤＣ係数に非０の値が存在するかを調べ、存在しない場合は係数符号化ステップＳ１１１２に進み（ステップＳ１１０７：無）、存在する場合は輝度ＤＣ係数削除ステップＳ１１０８へ進む（ステップＳ１１０７：有）。
【００９５】
輝度ＤＣ係数削除ステップＳ１１０８では、削減部９０２は、先にステップＳ１１０１で復号された輝度ＤＣ係数の非０係数のうち値が最大のもの１個を削除し、削除後のマクロブロックのビット量を求める。
【００９６】
その後、目標ビット量判定ステップＳ１１０９で、ステップＳ１１０８で求められたマクロブロックのビット量が目標に到達したかを調べ、到達していない場合は色差ＤＣ係数削除ステップＳ１１１０に進み（ステップＳ１１０９：未達）、到達した場合は係数符号化ステップＳ１１１２に進む（ステップＳ１１０９：達成）。
【００９７】
色差ＤＣ係数削除ステップＳ１１１０では、先にステップＳ１１０１で復号された色差ＤＣ係数の非０係数のうち値が最大のもの１個を削除する。
【００９８】
その後、目標ビット量判定ステップＳ１１１１で、マクロブロックのビット量が目標に到達したかを調べ、到達していない場合はＤＣ係数判定ステップＳ１１０７に進み（ステップＳ１１１１：未達）、さらに多くの係数を削除し、到達している場合にはステップＳ１１１２に進む（ステップＳ１１１１：達成）。
【００９９】
目標に到達した場合は係数符号化ステップＳ１１１２に進む。最後に係数符号化ステップＳ１１１２では、削減部９０２は、上記した削減処理を行った後の輝度ＡＣ係数、輝度ＤＣ係数、色差ＡＣ係数、色差ＤＣ係数を符号化し、結果をビットストリームとして出力する。符号化は、符号変換部１０１で行う符号変換を適用した後の形式を出力するように構成する。
【０１００】
以上のようにして、バッファ１０２と当該バッファ１０２の外部との間でビットストリームが転送されるバンド幅に応じて選択された目標ビット量を取得する係数削減部８０１（係数削減制御部９０５、図１１参照）と、符号変換部１０１により変換がされた後のビットストリームに含まれるマクロブロックのビット量が、取得された前述の目標ビット量を超えるか否かを判定する削減部９０２とを備え（図１３のステップＳ１１０４、Ｓ１１０６、Ｓ１１０９、Ｓ１１１１参照）、その削減部９０２が、データ長が目標ビット量を超えると判定されれば（ステップＳ１１０４：未達、など）、当該判定がされた前記マクロブロックのビット数を削減する復号化装置１００Ａが構成される。
【０１０１】
そして、このような復号化装置１００Ａにおいて、削減部９０２は、ビットストリームのマクロブロックのなかに、ＡＣ係数、ＤＣ係数のうちでＡＣ係数が含まれない場合に（図１３のステップＳ１１０２：無）、ＤＣ係数を削除する。
【０１０２】
また、削減部９０２は、輝度係数が削除されたマクロブロック（ステップＳ１１０３、Ｓ１１０８）のビット量が、目標ビット量に到達しているか否かを判定し（ステップＳ１１０４、Ｓ１１０９）、輝度係数を削除したマクロブロックのビット量が目標ビット量に到達していないと判定された場合にのみ（ステップＳ１１０４：未達、ステップＳ１１０９：未達）、当該マクロブロックの色差係数を削除する（ステップＳ１１０５、ステップＳ１１１０）。
【０１０３】
こうして、削減部９０２は、輝度ＡＣ、色差ＡＣ、輝度ＤＣ、色差ＤＣの４種類の係数のうちで、この順序で低くなる削除の優先順位に基づいて、マクロブロックに含まれる種類の係数のうちで、優先度が最も高いものを削除して、マクロブロックのビット量を削減する。
【０１０４】
以上の手順で係数を削除しても、マクロブロックのビット量が目標ビット量より大きい場合がある。その場合、係数削減制御部９０５が目標ビット量との差分を保持していることを利用し、後続マクロブロックに対する目標ビット量をその差分だけ削減する。つまり、係数削減制御部９０５は、その場合、後続マクロブロックについて処理を行う際の目標ビット量を、上記した差分だけ小さくする。この操作により、目標ビット量に到達しなかったマクロブロックによるバンド幅の増加を小さくすることができる。
【０１０５】
このように、本実施の形態２では、マクロブロックのビット量をマクロブロック単位に増減させることができる。これを用いて、動き補償を行うマクロブロックの目標ビット量を小さくし、その結果削減されたストリーム転送のバンド幅を参照画像転送に用いることで画像デコード全体のバンド幅を削減するといった応用も可能である。
【０１０６】
続いて、本実施の形態をＨ．２６４規格のＣＡＶＬＣ（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）符号に対して適用する手法を説明する。まず、係数復号ステップＳ１１０１（図１３）で輝度ＤＣ係数、輝度ＡＣ係数、色差ＤＣ係数、色差ＡＣ係数を再構成する手法を説明する。規格上、直交変換後の係数は、ｒｅｓｉｄｕａｌ＿ｂｌｏｃｋとして符号化されており、以下の５種類がある。
【０１０７】
（１）Ｉｎｔｒａ１６ｘ１６ＤＣＬｅｖｅｌ
輝度ＤＣ係数（ブロックサイズ１６ｘ１６、係数１６個）
（２）Ｉｎｔｒａ１６ｘ１６ＡＣＬｅｖｅｌ
輝度ＡＣ係数（ブロックサイズ１６ｘ１６、係数１５個を１６組）
（３）ＬｕｍａＬｅｖｅｌ
輝度係数（ブロックサイズ４ｘ４もしくは８ｘ８、係数１６個を１６組）
（４）ＣｈｒｏｍａＤＣＬｅｖｅｌ
色差ＤＣ係数（４：２：０フォーマットでは、係数４個を２組）
（５）ＣｈｒｏｍａＡＣＬｅｖｅｌ
色差ＡＣ係数（４：２：０フォーマットでは、係数１５個を８組）
【０１０８】
再構成する係数のうち、色差ＤＣ係数と色差ＡＣ係数については、そのままで再構成した結果として使用できる。一方、輝度ＤＣ係数と色差ＡＣ係数は、マクロブロックの直交変換ブロックサイズによって、以下の３通りから選択して使用する。
【０１０９】
（１）ブロックサイズ１６ｘ１６の場合
輝度ＤＣ係数はＩｎｔｒａ１６ｘ１６ＤＣＬｅｖｅｌを使用。
輝度ＡＣ係数はＩｎｔｒａ１６ｘ１６ＡＣＬｅｖｅｌを使用。
（２）ブロックサイズ８ｘ８の場合
輝度ＤＣ係数はＬｕｍａＬｅｖｅｌ［ｉ］［０］（ｉ＝０、４、８、１２）を使用。
輝度ＡＣ係数は上記以外のＬｕｍａＬｅｖｅｌを使用。
（３）ブロックサイズ４ｘ４の場合
輝度ＤＣ係数はＬｕｍａＬｅｖｅｌ［ｉ］［０］（０≦ｉ≦１５）を使用。
輝度ＡＣ係数は上記以外のＬｕｍａＬｅｖｅｌを使用。
【０１１０】
以上の手順により、輝度ＤＣ係数、輝度ＡＣ係数、色差ＤＣ係数、色差ＡＣ係数を再構成することができる。以後の係数削除については、係数削除ステップＳ１００５の説明に記載の手法をそのまま適用できる。係数削除を適用した結果の再符号化においては、係数値を符号化する際のＬｅｖｅｌ＿ＰｒｅｆｉｘとＬｅｖｅｌ＿Ｓｕｆｆｉｘを図９のようにする。これにより、実施の形態１と同じ画像デコーダ１０３で正しい画像を復号することができる。
【０１１１】
ここまで、本発明の実施の形態２について説明したが、実施の形態２は係数削除によりマクロブロックのビット数を削減するという特徴を維持したままで様々な変形が可能である。具体的な変形例として、ＭＰＥＧ−２やＶＣ−１といった動画像符号化規格に対する適用や係数削除だけでなく係数値の変更をビット量削減に利用する手法などが考えられる。
【０１１２】
なお、図１０に示す各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。図１０の破線は、ＬＳＩの典型的な構成を示し、符号変換部１０１と係数削減部８０１、画像デコーダ１０３をＬＳＩとして集積し、バッファ１０２とフレームメモリ１０４をＤＲＡＭなどのメモリＬＳＩとして集積することを示している。ただし、集積化の手法については、この例に限定するものではなく、各機能が個別に１チップ化されてもよいし、一部またはすべてを含むように１チップ化されてもよい。さらには、ＬＳＩに置き換わる集積回路化の技術があれば、当然、その技術を用いて集積化を行ってもよい。
【０１１３】
（実施の形態３）
図１４は、本発明の実施の形態３における復号化装置１００Ｂの構成図である。以下、図１４を用いて実施の形態３における復号化装置１００Ｂの動作について説明する。
【０１１４】
図１４に示す復号化装置１００Ｂは、実施の形態２に示した復号化装置１００Ａのビットストリーム入力に算術符号デコーダ１２０１を追加したものである。図１４のうち、算術符号デコーダ１２０１、符号変換部１２０２、係数削減部１２０３以外の部分については、実施の形態２のものと同じ機能であるため、同じ構成要素のものには同じ符号を付し、その説明を省略する。
【０１１５】
算術符号デコーダ１２０１は、Ｈ．２６４規格のＣＡＢＡＣ（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍａｔｉｃ  Ｃｏｄｉｎｇ）符号で符号化されたビットストリームを算術復号し、復号結果をビットストリームとして出力する。
【０１１６】
ここで、Ｈ．２６４規格のＣＡＢＡＣ符号では、符号化結果のビットストリームが算術符号で圧縮されている。ＣＡＢＡＣ符号で用いられている算術符号は、復号が逐次処理とならざるを得ないため、画像デコーダの処理性能に見合った復号性能を得るのが困難である。そこで、ＣＡＢＡＣ符号に対応する復号化装置は、算術符号の復号結果を規格のＣＰＢに相当するバッファ１０２に蓄え、画像デコーダは算術符号を復号した結果をデコードするように構成される。しかし、この構成では、算術符号の圧縮を復元した結果を画像デコーダに転送することになるため、マクロブロックの最大ビット量が約５０００ビットと大きく、バッファ１０２から画像デコーダに復号結果を転送するのに必要なバンド幅が非常に大きくなる。実施の形態３は、この問題を解決するため、算術符号の復号結果で多くを占める部分に、実施の形態１で説明した符号変換や実施の形態２で説明した係数値の変換を適用する。
【０１１７】
以後、Ｈ．２６４規格のＣＡＢＡＣ符号への適用における図１４の符号変換部１２０２と係数削減部１２０３の処理内容について説明する。
【０１１８】
まず、符号変換部１２０２で行う符号変換について説明する。符号変換部１２０２では、動きベクトル（ｍｖｄ＿ｌ０、ｍｖｄ＿ｌ１）と係数値（ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１、ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ）に加え、参照画像インデックス（ｒｅｆ＿ｉｄｘ＿ｌ０、ｒｅｆ＿ｉｄｘ＿ｌ１）と量子化パラメータ（ｍｂ＿ｑｐ＿ｄｅｌｔａ）に符号変換を適用する。以後、各要素に対する符号変換について説明する。
【０１１９】
図１５は、動きベクトル（ｍｖｄ＿ｌ０、ｍｖｄ＿ｌ１）の変換前の符号である。図１５以降の図にあるｘは、その符号が示す値の正負を示す符号ビットであり、０が正、１が負を示す。この符号を最大符号長が短くなるように変換した符号を図１６に示す。規格上、動きベクトルの値は、−１６３８４〜１６３８３に制限されるため、動きベクトルは１５ビットの固定長符号で表現できる。
【０１２０】
そこで、図１６の符号では、元の符号が１５ビットを超える絶対値で１７以上の値は固定長符号、それ以外は元の符号で符号化する。この符号化では、復号時に符号化が固定長符号化と元の符号のどちらであるかを判定する必要があるので、符号化を判定するための１ビットを符号の前に付加する。付加される１ビットは、この実施の形態３における、変換後の符号の識別ビットである。これにより、最大符号長が３４ビットから１６ビットまで削減される。一方、元の符号をそのまま用いる絶対値が１６以下の値については、符号化を判定するためのビット追加により、符号長が１ビット長くなってしまう。しかし、本発明の削減対象であるビットストリームをデコーダに転送するためのバンド幅は、マクロブロックの最大ビット数で決まり、その最大ビット数となるマクロブロックでは、動きベクトルをあらわすビット量が多く、絶対値が１７以上の値であることが多いため、絶対値が１６以下の値に対する符号長の増加は特に問題とならない。
【０１２１】
なお、図１６の符号化規則の場合、長符号長側符号は、絶対値が１７以上である各値の符号であり、短符号長符号は、絶対値が１７未満である各値の符号であり、切替サイズは１４ビットである（図１５における値０〜±１６の符号のビット数を参照）。
【０１２２】
図１７は、係数値（ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｍｉｎｕｓ１、ｃｏｅｆｆ＿ｓｉｇｎ＿ｆｌａｇ）の変換前の符号である。規格上、係数値は−１３１０７２〜１３１０７１に制限されるため、係数値は１８ビットの固定長符号で表現できる。そこで、動きベクトルと同様な考え方で符号を変換すると、図１８のようになり、絶対値が１８以上の値を固定長符号とする。この符号変換により、最大符号長が４８ビットから１９ビットまで削減できる一方、絶対値が１７以下の値では符号長が１ビット長くなってしまう。しかし、動きベクトルと同様、係数値についても、最大ビット数となるマクロブロックでは絶対値が１８以上になることが多いため、絶対値が１７以下の値に対する符号長が増加しても特に問題とならない。
【０１２３】
図１９は、参照画像インデックス（ｒｅｆ＿ｉｄｘ＿ｌ０、ｒｅｆ＿ｉｄｘ＿ｌ１）と量子化パラメータ（ｍｂ＿ｑｐ＿ｄｅｌｔａ）の変換前の符号である。変換前の符号は、算術符号の圧縮率を高めるため、０が出現するまでの１の数で値を表すＵｎａｒｙ  Ｂｉｎａｒｉｚａｔｉｏｎとなっており、最大符号長だけでなく、平均符号長も大きい。そこで、参照画像インデックスと量子化パラメータについては、最大符号長と平均符号長の双方が短くなるＥｘｐ−Ｇｏｌｏｍｂ符号で値を符号化する。
【０１２４】
図２０は、変換後の符号であり、最大符号長は５３ビットから１１ビットまで削減できる。この変換は値に応じて符号を切り替える方式、つまり、変換後の符号が、長符号長符号と短符号長符号とに分かれる方式ではないので、符号化を判定するためのビット（例えば、上述した各識別ビット）は不要であるが、参照画像インデックスの１と４、量子化パラメータの１と−２において符号長が１ビット長くなる。しかし、最大ビット数となるマクロブロックでは、動きベクトルや係数値がビット数の多くを占めており、それらについては前述の変換によって大幅にビット数が削減されるため、参照画像インデックスや量子化パラメータにおけるビット数の増加は特に問題とならない。
【０１２５】
このように、上述の説明では、変換後の符号が、長符号長符号と短符号長符号とに分かれる方式を詳しく説明したが（図７、図９、図１６、図１８参照）、このような長符号長符号と短符号長符号とに分かれる方式に限定されず、そのような方式以外の他の方式が用いられてもよく、例えば、上記図１９、図２０で説明した方式は、そのような他の方式の１つである。
【０１２６】
以上、実施の形態３における符号変換部１２０２について説明した。ここで示した符号変換により、マクロブロックの最大ビット量は約５０００ビットから約３５００ビットまで削減できる。なお、ここで示した符号変換はあくまで一例であり、符号変換によって最大符号長を削減するという本質を維持したまま、様々な変形が可能である。具体的には、元の符号をそのまま出力せずにＥｘｐ−Ｇｏｌｏｍｂ符号などに変換する手法などがある。
【０１２７】
次に、実施の形態３における係数削減部１２０３について説明する。実施の形態３における係数削減部１２０３は、実施の形態２で説明した係数削減部１２０３と同様に構成されるので、構成に関する説明は省略する。
【０１２８】
続いてＨ．２６４規格のＣＡＢＡＣにおける係数削減の手順を説明する。Ｈ．２６４規格のＣＡＢＡＣ符号では、ブロックサイズが８ｘ８の直交変換における輝度ＤＣ係数と輝度ＡＣ係数の扱いが実施の形態２で示したＨ．２６４規格のＣＡＶＬＣ符号とは異なっている。そこで、ブロックサイズが８ｘ８の場合、輝度ＤＣ係数はＬｕｍａＬｅｖｅｌ８ｘ８［０］［０］（０≦ｉ≦３）を使用し、輝度ＡＣ係数は上記以外のＬｕｍａＬｅｖｅｌ８ｘ８を使用する。この点を除き、係数削減部１２０３の動作は、実施の形態２で説明したＨ．２６４規格のＣＡＶＬＣ符号の場合と同じである。
【０１２９】
実施の形態３においても、係数削除後のマクロブロックのビット量が目標ビット量より大きくなることがある。この場合、この実施の形態３の係数削減部１２０３が有する係数削減制御部９０５が、目標ビット量との差分を出力することを利用し、後続するマクロブロックに対する目標ビット量をその差分だけ減少させるなどの制御を行うことができる。
【０１３０】
このように、本実施の形態３では、ストリームを画像デコーダに転送するためのバンド幅をマクロブロック単位に増減させることができる。これを用いて、動き補償を行うマクロブロックの目標ビット量を小さくして削減されたストリーム転送のバンド幅を参照画像転送に使用し、画像デコードに必要な全体のバンド幅を削減するといった制御も可能である。
【０１３１】
以上、Ｈ．２６４規格のＣＡＢＡＣ符号で符号化されたビットストリームを例に実施の形態３について説明した。ここに示した係数削除の手法は、あくまで一例であり、係数などの削除によりマクロブロックの符号長を削減するという本構成の特徴を維持したまま、様々な変形が可能である。変形の例としては、係数を削除するのではなく値を小さくするような手法などが考えられる。
【０１３２】
なお、図１４に示す各機能ブロックは典型的には集積回路であるＬＳＩとして実現される。図１４の破線は、ＬＳＩの典型的な構成を示し、算術符号デコーダ１２０１と符号変換部１２０２、係数削減部１２０３、画像デコーダ１０３をＬＳＩとして集積し、バッファ１０２とフレームメモリ１０４をＤＲＡＭなどのメモリＬＳＩとして集積することを示している。ただし、集積化の手法については、この例に限定するものではなく、各機能が個別に１チップ化されてもよいし、一部またはすべてを含むように１チップ化されてもよい。さらには、ＬＳＩに置き換わる集積回路化の技術があれば、当然、その技術を用いて集積化を行ってもよい。
【０１３３】
ここで、符号変換部１２０２は、図１６に示される符号化規則の符号に、符号を変換する。
【０１３４】
図１６の符号化規則において、例えば、値が±１７つまり絶対値が１７である場合、その値に対応する符号は「１＿０００００００００００００１＿ｘ」である。ここで、この符号の本体部は、「０００００００００００００１＿ｘ」であり、等長符号値±１を示す等長符号である。つまり、ｍｖｄ値の絶対値が１７で、等長符号値の絶対値が１で、互いに異なる。
【０１３５】
このように、図１６の符号化規則は、各ｍｖｄ値に対して、それぞれ、そのｍｖｄ値とは異なる等長符号値を有する等長符号の長符号長符号を対応付ける。図１６の符号化規則は、このような、値と、その値に対応付けられる長符号長符号の等長符号値との値対応関係を含む。つまり、図１６の符号化規則は、値と長符号長符号との対応関係をもつことにより、値と、その長符号長符号における等長符号値とを値対応関係をもつ。図１６の符号化規則においては、かかる値対応関係は、ｍｖｄ値に対して、そのｍｖｄ値の絶対値から１６を引いた絶対値の等長符号値を対応付ける。このため、上記のように、値が±１７の場合には、その値に対応する符号は、１７−１６＝１の絶対値の等長符号値±１の等長符号となる。
【０１３６】
このようにしてあるので、広い範囲の等長符号値を表すための長いビットの等長符号を用いなくとも、例えば、長符号長符号で表すｍｖｄ値の個数に対応する最小限度のビットの等長符号など、少ないビットの等長符号で、ｍｖｄ値を記録できる。
【０１３７】
なお、この点に関しては、図１８の符号化規則においても同様であり、図１８の符号化規則においては、長符号長符号に対応する符号は、その符号の係数値の絶対値から１７を減じた絶対値の等長符号値を有する等長符号である。
【０１３８】
なお、この実施の形態３においては、図１６、図１８に示される符号の本体部は、２の補数の方式によって、等長符号値を示すのではなく、上述のように、その等長符号値の正負を示す符号ビットと、その等長符号値の絶対値を示す絶対値等長符号とによって構成される。このため、本体部が示す等長符号値の最小値の絶対値と、最大値の絶対値とは互いに同一である。例えば、本体部がｍビットであれば、絶対値等長符号は、ｍ−１ビットになり、２の（ｍ−１）乗をＬとして、本体部は−（Ｌ−１）〜＋（Ｌ−１）を示し、互いに同一のその絶対値はこのＬ−１である。他方、符号化規則が本体部と識別ビットにより対応付ける値の最小値の絶対値と最大値の絶対値が互いに同一である場合は多いので、上述のよう符号ビットを用いる本体部を用いることにより、上記値対応関係が簡単になる。ひいては、上記値対応関係を処理する符号変換部１２０２を簡単な構成にできる。
【０１３９】
（実施の形態４）
実施の形態４として、実施の形態３（図１４等参照）の変形例を説明する。なお、実施の形態３と同じ点については、この実施の形態４で、説明を繰り返さない。
【０１４０】
図２１は、実施の形態４に係る復号化装置１００Ｃを示す図である。
【０１４１】
復号化装置１００Ｃは、変換後最大符号長特定部１３０１と、規則種類表示フラグ付与部１３０３と、切替部１３０４とを備える。
【０１４２】
変換後最大符号長特定部１３０１は、符号変換部１２０２が符号を変換した後のマクロブロックに含まれる符号の符号長のうちで、最大の符号長を特定する。変換後最大符号長特定部１３０１は、より具体的には、３種類の最大の符号長を特定し、すなわち、動きベクトルの符号（図１５参照）のうちでの最大の符号長（以下、動きベクトル符号最大符号長）と、そのマクロブロックに含まれる係数値の符号（図１７参照）の符号長のうちでの最大（以下、係数値符号最大符号長）と、参照画像インデックスと量子化パラメータとの符号（図１８参照）のうちでの最大の符号長（以下、第３の最大符号長）とを特定する。なお、変換後最大符号長特定部１３０１は、例えば、変換前の動きベクトルの符号のうちでｍｖｄ値の絶対値が最大のものを特定することによって、特定された変換前の符号に対応する変換後の符号の符号長を、動きベクトル符号最大符号長と特定する。
【０１４３】
切替部１３０４は、変換後最大符号長特定部１３０１により特定された動きベクトル最大符号長が予め定められた動きベクトル閾長さを越える場合にのみ、変換後最大符号長特定部１３０１がその動きベクトル最大符号長を特定したマクロブロックに含まれる動きベクトルの符号変換を符号変換部１２０２に行わせる。
【０１４４】
また、切替部１３０４は、変換後最大符号長特定部１３０１により特定された係数値符号最大符号長が予め定められた係数値閾長さを越える場合にのみ、そのマクロブロックに含まれる係数値の符号変換を符号変換部１２０２に行わせる。
【０１４５】
また、符号変換部１２０２は、変換後最大符号長特定部１３０１により特定された第３の最大符号長が予め定められた第３の閾長さを越える場合にのみ、そのマクロブロックに含まれる参照画像インデックス等の符号変換を符号変換部１２０２に行わせる。
【０１４６】
なお、切替部１３０４は、動きベクトル等を、符号変換部１２０２を介して、規則種類表示フラグ付与部１３０３に入力させるか、又は、符号変換部１２０２を介さずに直接に規則種類表示フラグ付与部１３０３に入力させるかを切り替えることにより、このような切替を行う（図２１参照）。なお、かかる切替部１３０４の構成は一例であり、切替部１３０４は、他の構成を採ってもよい。
【０１４７】
規則種類表示フラグ付与部１３０３は、切替部１３０４または符号変換部１２０２が規則種類表示フラグ付与部１３０３に入力するマクロブロックに対して、符号変換部１２０２が符号変換をしたか否かを示す規則種類表示フラグを付与する。規則種類表示フラグは、動きベクトルの符号変換がされたか否かを示す動きベクトルフラグと、係数値が符号変換されたか否かを示す係数値フラグと、参照画像インデックス等が符号変換されたか否かを示す第３のフラグとが含まれる。規則種類表示フラグ付与部１３０３は、これら３つの規則種類表示フラグをマクロブロックに付与する。このとき、例えば、マクロブロックは、３つの規則種類表示フラグのサイズの分だけ３ビット大きくなるものとしてもよいし、付与される前から予め３つの規則種類表示フラグのサイズがマクロブロック内部に存在していて、大きくなることはないものとしてもよい。
【０１４８】
この実施の形態４においては、画像デコーダ１０３（図１４）は、規則種類表示フラグに基づいて、その規則種類表示フラグが含まれるマクロブロックを符号化した符号化規則を特定する。画像デコーダ１０３は、動きベクトルフラグが符号変換をしたことを示す場合には、そのマクロブロックの動きベクトルの符号化規則が、図１６の符号化規則であることを特定し、符号変換をしていないことを示す場合には、図１５の符号化規則であることを特定する。また、画像デコーダ１０３は、同様にして、係数値および、参照画像インデックス等の符号化規則も特定する。そして、画像デコーダ１０３は、特定された動きベクトル、係数値、参照画像インデックス等の各符号化規則に対応する復号の処理を行う。
【０１４９】
以上、いくつかの実施の形態を例に本発明における実施の形態を説明した。本発明は、ここに記載した実施の形態だけでなく、符号変換や係数値などの情報削除によってマクロブロックの最大ビット数を削減するといった本質を維持したまま、様々な変形が可能である。たとえば、上記で説明したＨ．２６４規格の画像復号装置だけでなく、ＭＰＥＧ−２規格やＶＣ−１規格などに対応した画像復号装置にも同様に適用が可能である。また、符号の変換や係数の削除を独立した回路で行うだけではなく、ストリームから音声と映像を分離する処理を行うデマルチプレクスなどと同時に行うように構成することも可能である。
【産業上の利用可能性】
【０１５０】
本発明に係る復号化装置は、第１の符号化規則で符号化された符号に対して、最大符号長を小さくする第２の符号化規則に変換する変換手段を有し、テレビ、パーソナルコンピュータ、ＤＶＤレコーダーなどに有用である。
【符号の説明】
【０１５１】
１００    復号化装置
１０１    符号変換部
１０２    バッファ
１０３    画像デコーダ
１０４    フレームメモリ
２０１    ビットストリーム復号部
２０２    ビットストリーム生成部
２０３    ストリーム符号変換部
２０４    動きベクトル符号変換部
２０５    係数値符号変換部
１００Ａ    復号化装置
８０１    係数削減部
９０１    ビットストリーム復号部
９０２    削減部
９０３    ビットストリーム生成部
９０４    ビット量計測部
９０５    係数削減制御部
１００Ｂ    復号化装置
１２０１    算術符号デコーダ
１２０２    符号変換部
１２０３    係数削減部
１００Ｃ    復号化装置
１３０１    変換後最大符号長特定部
１３０４    切替部
１３０３    規則種類表示フラグ付与部
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
画像データを復号化する画像データ復号化装置であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により変換がされた後の画像データを記憶するバッファと、
前記バッファから、前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と
を備えることを特徴とする画像データ復号化装置。
【請求項２】
前記画像データは、動きベクトルと、係数値とを含み、
前記符号変換手段は、
画像データに含まれる、前記第３の符号化規則により符号化された動きベクトルを、前記第３の符号化規則よりも最大の符号長が短い第４の符号化規則で符号化された動きベクトルに変換する動きベクトル符号変換手段と、
画像データに含まれる、前記第５の符号化規則により符号化された係数値を、前記第５の符号化規則よりも最大の符号長が短い第６の符号化規則で符号化された係数値に変換する係数値符号変換手段とを備え、
前記動きベクトル符号変換手段と前記係数値符号変換手段とによる変換を画像データに施すことを特徴とする請求項１記載の画像データ復号化装置。
【請求項３】
前記バッファと当該バッファの外部との間で前記画像データが転送されるバンド幅を特定するバンド幅情報を取得するバンド幅情報取得手段を更に備え、
前記符号変換手段は、前記画像データに含まれる、当該画像データの前記転送における各送信単位のうちで、データ長が最大の送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超える場合に、当該画像データの前記変換を行うことを特徴とする請求項１記載の画像データ復号化装置。
【請求項４】
前記バッファと当該バッファの外部との間で前記画像データが転送されるバンド幅を特定するバンド幅情報を取得するバンド幅情報取得手段と、
前記符号変換手段により変換がされた後の画像データに含まれる、当該画像データの前記転送での送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超えるか否かを判定する判定手段と、
前記判定手段により、データ長が前記バンド幅を超えると判定されれば、当該判定がされた前記送信単位のビット数を削減する削減手段とを更に備えることを特徴とする請求項１記載の画像データ復号化装置。
【請求項５】
前記削減手段は、画像データの前記送信単位のなかに、ＡＣ係数、ＤＣ係数のうちでＡＣ係数が含まれない場合にのみ、ＤＣ係数を削除することを特徴とする請求項４記載の画像データ復号化装置。
【請求項６】
前記判定手段は、前記削減手段により輝度係数が削除された前記送信単位のデータ長が、前記バンド幅情報により特定されるバンド幅を超えるか否かを判定し、
前記削減手段は、輝度係数を削除した前記送信単位のデータ長が前記バンド幅を超えると判定された場合にのみ、当該送信単位の色差係数を削除することを特徴とする請求項４記載の画像データ復号化装置。
【請求項７】
前記第１の符号化規則は、当該第１の符号化規則が値を対応付ける各符号の大きさが不等長であり、
前記第２の符号化規則は、前記第１の符号化規則が予め定められたサイズ以下の小さい符号に対応付ける各値を、それぞれ、当該符号と同じ符号が少なくとも一部に含まれる符号に対応付けると共に、当該サイズよりも大きい符号に対応付ける各値を、それぞれ、いずれも前記予め定められたサイズを有し、互いに等長である予め定められた等長符号が含まれる符号へと対応付けることを特徴とする請求項１記載の画像データ復号化装置。
【請求項８】
前記サイズは、前記第１の符号化規則が対応付けをする全ての値を、等長符号により符号化する場合に必要なビットの最低個数であり、
前記等長符号は、当該最低個数のビットよりなる等長の符号であり、
前記第２の符号化規則の符号は、前記第１の符号化規則の符号と同じ符号、または、当該等長符号のうちの何れか一方を含む本体部と、当該本体部が前記第１の符号化規則の符号と同じ符号が含まれるか、または、前記等長符号が含まれるかを識別する１ビットの識別ビットとを備えることを特徴とする請求項７記載の画像データ復号化装置。
【請求項９】
前記第２の符号化規則は、前記第１の符号化規則の符号が示す値と、前記等長符号が示す等長符号値との値対応関係が含まれ、
前記符号変換手段は、前記第１の符号化規則の符号を前記等長符号を含む符号に変換する場合には、前記第１の符号化規則の符号が示す値に対して前記値対応関係が対応付ける等長符号値の前記等長符号の符号を、含まれる等長符号として選択する
ことを特徴とする請求項８記載の画像データ復号化装置。
【請求項１０】
前記値対応関係は、前記第１の符号化規則の各値を、それぞれ、当該値の絶対値から予め定められた減数を減じた絶対値を有する等長符号値の前記等長符号に対応付ける
ことを特徴とする請求項９記載の画像データ復号化装置。
【請求項１１】
前記変換の前の画像データに基づいて、前記変換の後の画像データの最大の符号長を特定する最大符号長特定手段を更に備え、
前記符号変換手段は、前記最大符号長特定手段により特定された前記最大の符号長が予め定められた大きさを超える場合に前記変換を行い、
前記復号化手段に取得される画像データに対して、前記符号変換手段による前記変換がされたか否かを示す変換有無表示フラグを付加するフラグ付加手段を更に備える
ことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１２】
前記第２の符号化規則は、平均の符号長が前記第１の符号化規則よりも長いことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１３】
前記画像データは、Ｈ．２６４規格による画像データであり、
前記符号変換手段により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号手段を更に備えることを特徴とする請求項１記載の画像データ復号化装置。
【請求項１４】
前記バッファと当該バッファの外部との間で前記画像データを転送するバスを更に備え、
前記符号化規則は、値と、当該値を表す符号との対応関係であり、
前記符号は、１ビットのデータが複数個並んだビット列であり、
前記最大の符号長は、符号化規則が値を対応付ける各符号のうちで、前記ビット列が最長である符号の当該ビット列のビットの個数であり、
前記符号変換手段は、画像データに含まれる各符号を、それぞれ、当該符号に前記第１の符号化規則が対応付ける値に対して前記第２の符号化規則が対応付ける符号へ変換する
ことを特徴とする請求項１記載の画像データ復号化装置。
【請求項１５】
画像データを画像データ復号化装置によって復号化する画像データ復号化方法であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換工程と、
前記符号変換工程により変換がされた後の画像データをバッファに記憶する工程と、
前記バッファから、前記符号変換工程により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化工程と
を備えることを特徴とする画像データ復号化方法。
【請求項１６】
画像データを復号化する集積回路であって、
当該集積回路に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換し、バッファに記憶する符号変換手段と、
前記バッファから、前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と
を備えることを特徴とする集積回路。
【請求項１７】
Ｈ．２６４規格による画像データを復号化する画像データ復号化装置であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と、
前記符号変換手段により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号手段と
を備えることを特徴とする画像データ復号化装置。
【請求項１８】
Ｈ．２６４規格による画像データを画像データ復号化装置によって復号化する画像データ復号化方法であって、
当該画像データ復号化装置に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換工程と、
前記符号変換工程により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化工程と、
前記符号変換工程により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号工程と
を備えることを特徴とする画像データ復号化方法。
【請求項１９】
Ｈ．２６４規格による画像データを復号化する集積回路であって、
当該集積回路に入力された画像データを、当該画像データが符号化された第１の符号化規則よりも最大の符号長が短い第２の符号化規則で符号化された画像データへ変換する符号変換手段と、
前記符号変換手段により前記変換がされた後の前記画像データを取得して、取得した画像データを復号化する復号化手段と、
前記符号変換手段により前記変換がされる前の画像データにＨ．２６４規格の算術復号を行う算術復号手段と
を備えることを特徴とする集積回路。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2008129855.tif 000024
【図２】
2008129855.tif 000025
【図３】
2008129855.tif 000026
【図４】
2008129855.tif 000027
【図５】
2008129855.tif 000028
【図６】
2008129855.tif 000029
【図７】
2008129855.tif 000030
【図８】
2008129855.tif 000031
【図９】
2008129855.tif 000032
【図１０】
2008129855.tif 000033
【図１１】
2008129855.tif 000034
【図１２】
2008129855.tif 000035
【図１３】
2008129855.tif 000036
【図１４】
2008129855.tif 000037
【図１５】
2008129855.tif 000038
【図１６】
2008129855.tif 000039
【図１７】
2008129855.tif 000040
【図１８】
2008129855.tif 000041
【図１９】
2008129855.tif 000042
【図２０】
2008129855.tif 000043
【図２１】
2008129855.tif 000044
【国際調査報告】
2008129855.tif 000045
2008129855.tif 000046