(57)【要約】【課題】圧縮率の高い符号化方式を適用した複数種類のビデオストリームを規定の処理期間内に復号する画像復号装置を小さな回路規模で実現する。【解決手段】本発明は、異なる符号化方式で符号化された複数種類のビデオストリームを復号する画像復号装置であって、入力されたビデオストリームをその符号化方式に対応した復号方式で復号することによって、符号化方式毎に固有の形式の画素係数情報を含んだ中間情報を生成する入力情報復号手段と、画素係数情報を複数種類のビデオストリームに実施された符号化方式とは異なる方式で再符号化し、画素係数情報の形式に依存しない共通形式の中間ストリームを生成する再符号化手段と、中間ストリームを復号し、この復号結果に基づいて、入力されたビデオストリームを生成する際の符号化処理において削減された情報を復元する復元手段と、を備えている。【選択図】        図１
2009017472.tif 000002
【特許請求の範囲】
【請求項１】
異なる符号化方式で符号化された複数種類のビデオストリームを復号する画像復号装置であって、
入力されたビデオストリームをその符号化方式に対応した復号方式で復号することによって、当該符号化方式毎に固有の形式の画素係数情報を含んだ中間情報を生成する入力情報復号手段と、
前記画素係数情報を前記複数種類のビデオストリームに実施された符号化方式とは異なる方式で再符号化し、当該画素係数情報の形式に依存しない共通形式の中間ストリームを生成する再符号化手段と、
前記中間ストリームを復号し、この復号結果に基づいて、前記入力されたビデオストリームを生成する際の符号化処理において削減された情報を復元する復元手段と、
を備えることを特徴とする画像復号装置。
【請求項２】
前記再符号化手段は、前記画素係数情報を係数値０が連続する回数を示すＲＵＮと、０以外の係数値を示すＬＥＶＥＬと、を組み合わせた情報へ変換し、さらに当該変換処理を実行して得られた情報を可変長符号化して中間ストリームを生成することを特徴とする請求項１に記載の画像復号装置。
【請求項３】
周波数の高い画素係数から順番に符号化して生成されたビデオストリームを復号する場合、
前記再符号化手段は、前記変換処理において、変換後の情報を構成する最初のＲＵＮの値を直流成分の位置から数えた値とすることを特徴とする請求項２に記載の画像復号装置。
【請求項４】
前記入力情報復号手段への入力ビデオストリームを可変長符号化されたビデオストリームとすることを特徴とする請求項１、２または３に記載の画像復号装置。
【請求項５】
異なる符号化方式で符号化された複数種類のビデオストリームを復号する画像復号装置が行う画像復号方法であって、
入力されたビデオストリームをその符号化方式に対応した復号方式で復号することによって、当該符号化方式毎に固有の形式の画素係数情報を含んだ中間情報を生成する入力情報復号ステップと、
前記画素係数情報を前記複数種類のビデオストリームに実施された符号化方式とは異なる方式で再符号化し、当該画素係数情報の形式に依存しない共通形式の中間ストリームを生成する再符号化ステップと、
前記中間ストリームを復号し、この復号結果に基づいて、前記入力されたビデオストリームを生成する際の符号化処理において削減された情報を復元する復元ステップと、
を含むことを特徴とする画像復号方法。
【請求項６】
前記再符号化ステップでは、前記画素係数情報を係数値０が連続する回数を示すＲＵＮと、０以外の係数値を示すＬＥＶＥＬと、を組み合わせた情報へ変換し、さらに当該変換処理を実行して得られた情報を可変長符号化して中間ストリームを生成することを特徴とする請求項５に記載の画像復号方法。
【請求項７】
周波数の高い画素係数から順番に符号化して生成されたビデオストリームを復号する場合、
前記再符号化ステップでは、前記変換処理において、変換後の情報を構成する最初のＲＵＮの値を直流成分の位置から数えた値とすることを特徴とする請求項６に記載の画像復号方法。
【請求項８】
前記入力情報復号ステップにおける復号対象のビデオストリームを可変長符号化されたビデオストリームとすることを特徴とする請求項５、６または７に記載の画像復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異なる符号化方式で符号化された複数種類のビデオストリームを復号可能な復号装置に関するものであり、特に、圧縮率の高い符号化方式が適用されたビデオストリームを復号可能な復号装置に関するものである。
【背景技術】
【０００２】
ＭＰＥＧ等の動画像符号化方式では、２次元の画像データを１６画素×１６画素や８画素×８画素といったマクロブロック（ＭＢ）と呼ばれる細かいブロックに分割し、１マクロブロックを処理単位として符号化／復号化処理を行う。また、各処理においては、マクロブロック単位にパイプラインを組んでパイプライン処理を行うことにより高速化を図っている。
【０００３】
一般的なパイプライン動作においては、２マクロブロック分のデータが格納可能なメモリを確保し、その１マクロブロック分を書き込み面に、もう片方の１マクロブロック分を読み出し面に割り当てる。そして、１マクロブロック処理期間単位に交互に書き込み面と読み出し面を切り替えて使用する。
【０００４】
このようなマクロブロック単位でのパイプライン動作は、各処理が何れも数百から数千サイクルといった一定のクロックサイクル数内で完了する事が保証されている必要がある。そして、ＭＰＥＧ−２やＭＰＥＧ−４等の従来の符号化方式を使用する場合については現在の半導体技術で十分に保証出来る。
【０００５】
ところが昨今、より圧縮率の高いＨ.２６４（ＭＰＥＧ−４  ＡＶＣ(Advanced  Video  Coding)）やＶＣ−１といった符号化方式が規格化され、これらの方式を適用した動画像を扱う場合の各処理が複雑になっている。特に、可変長復号に関しては最大処理サイクル数が数百や数千サイクルでは収まらなくなってきており、ＣＡＢＡＣ（Context-based  Adaptive  Binary  Arithmetic  Coding）を使用する場合においては、１フレームの情報量が大きい場合、現在の半導体技術では１フレームあたりの処理期間の間に１フレーム分のストリームを処理する事が難しい。
【０００６】
そのため従来の復号装置では、可変長復号後のデータを一時格納用メモリへ一旦格納し、その後段となるループ内復号処理において、メモリに格納されている可変長復号後の読み出し、処理を実行することにより、可変長復号におけるフレームあるいはマクロブロック毎の処理サイクルのゆらぎを吸収させていた（たとえば下記特許文献１参照）。
【０００７】
なお、上記一時格納用メモリには完全に可変長復号したデータを格納するのが最も簡単な方法であるが、この場合には膨大なメモリ容量が必要となる。そのため、ある程度まで可変長復号を行うか、一旦可変長復号したデータを再度異なるフォーマットの中間ストリームに再符号化する事により、データを圧縮しつつ後段において一定サイクル数内で可変長復号可能なストリームを格納するなどしてメモリ容量を抑えていた。
【０００８】
【特許文献１】特開２００３−２５９３７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、復号装置が異なる符号化方式で符号化された複数種類のビデオストリームを復号可能な場合、回路規模が増大する、という問題があった。すなわち、上述した可変長復号したデータを中間ストリームに再符号化する方式を適用しつつ複数種類のビデオストリームを復号可能な復号装置は、中間ストリームの様式が各符号化方式によって異なるため、後段の中間ストリームを復号するための構成が複雑になり、回路規模が増大する、という問題があった。
【００１０】
本発明は、上記に鑑みてなされたものであって、回路規模が増大するのを抑えつつ規定の処理期間内（たとえば、上記１マクロブロック処理期間内）に１マクロブロックの復号化処理を終了することが可能な画像復号装置および画像復号方法を得ることを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、本発明は、異なる符号化方式で符号化された複数種類のビデオストリームを復号する画像復号装置であって、入力されたビデオストリームをその符号化方式に対応した復号方式で復号することによって、当該符号化方式毎に固有の形式の画素係数情報を含んだ中間情報を生成する入力情報復号手段と、前記画素係数情報を前記複数種類のビデオストリームに実施された符号化方式とは異なる方式で再符号化し、当該画素係数情報の形式に依存しない共通形式の中間ストリームを生成する再符号化手段と、前記中間ストリームを復号し、この復号結果に基づいて、前記入力されたビデオストリームを生成する際の符号化処理において削減された情報を復元する復元手段と、を備えることを特徴とする。
【発明の効果】
【００１２】
この発明によれば、複数の符号化方式で符号化されたビデオストリームの一部を共通様式の中間ストリームに再符号化し、再符号化後のデータを可変長復号することとしたので、中間ストリームの可変長復号を行う回路の構成が単純になる。その結果、複数の符号化方式に対応し、各符号化方式のビデオストリームについて規定の処理期間内に１マクロブロックの復号化処理を終了することが可能な画像復号装置の回路規模を削減することができる、という効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下に、本発明にかかる画像復号装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１４】
図１は、本発明にかかる画像復号装置の構成例を示す図である。この画像復号装置は、受信画像データである受信ビットストリームを復号化し、復号画像データを出力する復号装置１と、受信ビットストリーム，中間ビットストリームなどを蓄積しておく記憶装置２と、により構成させる。
【００１５】
復号装置１は、ＶＬＤ（Variable  Length  Decoding）部１０と、再符号化部１１と、中間ストリーム復号部１２と、ループ内復号部１３と、を備え、さらに、ＶＬＤ部１０は、ＣＡＢＡＣ復調（CABAC  Decode）部１０１、ＣＡＶＬＣ復号（CAVLC  Decode）部１０２およびＶＣ−１復号（VC-1  VLD）部１０３を備えている。また、記憶装置２は、ストリームバッファ２０および中間ストリームバッファ２１により構成される。なお、図１に示した例においては復号装置と記憶装置が独立した構成としているが、記憶装置に相当する構成要素（たとえば記憶部）を復号装置内部に備える構成としてもよい。
【００１６】
つづいて、本発明にかかる画像復号装置によるビデオストリーム（ビットストリーム）の復号動作について説明する。一旦記憶装置２のストリームバッファ２０は、外部より入力されたビデオストリームを保持しておく。
【００１７】
入力情報復号手段に相当するＶＬＤ部１０は、ストリームバッファ２０が保持しているビデオストリームを読み出し、読み出したビデオストリームに適用されている符号化方式に従い、ＣＡＢＡＣ復号部１０１、ＣＡＶＬＣ復号部１０２およびＶＣ−１復号部１０３のいずれか一つにおいて復号を行う。具体的には、読み出したビデオストリームがＨ.２６４規格のＣＡＢＡＣ（Context-based  Adaptive  Binary  Arithmetic  Coding）で符号化されている場合、ＣＡＢＡＣ復号部１０１で可変長復号を行う。また、Ｈ.２６４規格のＣＡＶＬＣ（Context-based  Adaptive  Variable  Length  Coding）で符号化されていた場合、ＣＡＶＩＣ復号部１０２で可変長復号を行う。さらに、ＶＣ−１規格で符号化されていた場合はＶＣ−１復号部１０３で可変長復号を行う。
【００１８】
再符号化部１１は、ＶＬＤ部１０から可変長復号されたデータを受け取り、そのうちの画素係数部分を再符号化し、中間ストリームとして記憶装置２の中間ストリームバッファ２１へ格納する。
【００１９】
中間ストリーム復号部１２は、中間ストリームバッファ２１に格納されている中間ストリームを読み出し、可変長復号を行う。ループ内復号部１３は、中間ストリーム復号部１２から可変長復号されたデータを受け取り、逆量子化，逆直交変換，フレーム間予測，フレーム内フィルタ等の復号処理を実行し、その結果得られた復号画像を外部へ出力する。なお、中間ストリーム復号部１２およびループ内復号部１３が復元手段を構成する。
【００２０】
つづいて、上記再符号化部１１において生成される中間ストリームについて説明する。図２は、ＣＡＢＡＣ復号部１０１においてデコードされた画素係数部分を再符号化する際の中間ストリームの様式を示す図である。ここで、Ｈ.２６４のＣＡＢＡＣでは算術復号を行うと、まず各々の係数が存在するか否かを表すsignificant＿coeff＿flagと、係数が存在した場合更に係数がブロックの最終係数か否かを表すlast＿significant＿coeff＿flagが連続で送信され、その後に存在する係数の個数分の係数の絶対値を表すcoeff＿abs＿level＿minus1と符号coeff＿sign＿flagが連続で現れる。なお、coeff＿abs＿level＿minus1はＧｏｌｏｍｂ符号化されている。
【００２１】
再符号化部１１は、これらの情報を解析し、連続する０係数の数（ＲＵＮ）とその直後に存在する０以外の係数値（ＬＥＶＥＬ）に変換する。そして、再符号化部１１は、図３および図４の様式に従ってＲＵＮをＧｏｌｏｍｂ符号化し、図３および図５の様式に従ってＬＥＶＥＬをＧｏｌｏｍｂ符号化する。また、ＲＵＮ値０とＬＥＶＥＬ値０のセットはＥＯＢ（End  of  Block）とし、これ以降に係数が存在しない事を示す。ブロック内の係数の有無を表すcoded＿block＿flagが０の場合、ＥＯＢのみを出力する。
【００２２】
図６はＣＡＶＬＣ復号部１０２においてデコードされた画素係数部分を再符号化する際の中間ストリームの様式を示す図である。ここで、Ｈ.２６４のＣＡＶＬＣでは、まずブロック内の係数の総個数を示す（TotalCoeff）と先頭３個までの連続する絶対値１の係数の個数（TrailingOnes）を組み合わせた符号coeff＿tokenが送信される。次に、絶対値１の係数の符号を表すtrailing＿ones＿sign＿flagが送信され、さらに、係数値を算出する為のlevel＿prefixおよびlevel＿suffixがTotalCoeff分送信される。次に、ブロック内における０係数の総数total＿zerosが送信され、最後に各係数の前にある連続する０係数の個数run＿beforeが（TotalCoeff−１）個送信される。
【００２３】
再符号化部１１は、これらの情報を解析し、ＲＵＮとＬＥＶＥＬに変換する。そして、再符号化部１１は、図３および図４の様式に従ってＲＵＮをＧｏｌｏｍｂ符号化し、図３および図５の様式に従ってＬＥＶＥＬをＧｏｌｏｍｂ符号化する。また、ＲＵＮ値０とＬＥＶＥＬ値０のセットはＥＯＢ（End  of  Block）とし、これ以降に係数が存在しない事を示す。TotalCoeffが０の場合、ＥＯＢのみを出力する。
【００２４】
Ｈ.２６４を適用したビデオストリームにおいて、符号化方式としてＣＡＢＡＣを使用する場合、係数そのものを表すcoeff＿abs＿level＿minus1およびcoeff＿sign＿flagは周波数成分の高いものから順番に送信される。また、ＣＡＶＬＣを使用する場合、level＿prefix、level＿suffixおよびrun＿beforeが周波数成分の高いものから順番に送信される。図７−１および図７−２は、４×４のマクロブロックを例にとった場合のマクロブロックの送信順序を示している。図７−１はフレームを送信する場合の送信順序を示し、図７−２はフィールドを送信する場合の送信順序を示す。これらは、直流成分（ＤＣ成分）から順に送信する他の符号化方式とは逆の送信順番となる。従ってＲＵＮも同様に逆の順番に数える事になる。
【００２５】
しかしながら、本発明にかかる画像復号装置（再符号化部１１）では、ブロックで最初に現れるＲＵＮ（first  RUN）を特殊な方法を用いて算出する。具体的には、ＣＡＢＡＣの場合、significant＿coeff＿flagの数を累算する事で得られるnumCoeffからＲＵＮを計算し、ＣＡＶＬＣの場合、TotalCoeffとtotal＿zerosを加算した値からＲＵＮを計算する。すなわち「ｆｉｒｓｔ  ＲＵＮ」は、ＤＣ成分からの位置を示す。なお、図８はサイズが４×４の場合のＺｉｇ−ｚａｇスキャンのブロックにおけるＲＵＮとＬＥＶＥＬの一例を示す図である。
【００２６】
図９および図１０は、ＶＣ−１復号部１０３においてデコードされた画素係数部分を再符号化する際の中間ストリームの様式を示す図である。図９は、ＩＮＴＥＲブロックについての中間ストリームの様式を示し、図１０は、ＩＮＴＲＡブロックについての中間ストリームの様式を示している。
【００２７】
ＶＣ−１のＩＮＴＥＲブロックでは、ＲｕｎとＬＥＶＥＬを組み合わせたＡＣ係数コード(ＡＣＣＯＥＦ１)が係数の個数分送信される。ＶＣ−１復号部１０３は、ＡＣＣＯＥＦ１をＶＣ−１で規格化された所定の参照テーブルに基づいて可変長復号する。ＡＣＣＯＥＦ１には３種類のエスケープコードが存在する。ＡＣＣＯＥＦ１がエスケープコードの場合、まずエスケープコードの種類を表すＥＳＣＭＯＤＥが存在し、その後に係数用のパラメータがエスケープコードの種類に応じて続く構成となる。
【００２８】
ＶＣ−１のＩＮＴＲＡブロックでは、ＡＣ係数コードの前に１個のＤＣ係数差分値コード（ＤＣＣＯＥＦ）が送信される。ＶＣ−１復号部１０３は、ＤＣＣＯＥＦをＶＣ−１で規格化された所定の参照テーブルに基づいて可変長復号する。また、ＤＣＣＯＥＦにはエスケープコードが存在する。ＤＣＣＯＥＦがエスケープコードの場合、ＤＣＣＯＥＦにＤＣ係数差分値そのものを表すＤＣＣＯＥＦＥＳＣが続く構成となる。ＡＣ係数コードに関しては上述したＩＮＴＥＲブロックと同様である。
【００２９】
再符号化部１１は、これらの情報を解析し、ＲＵＮとＬＥＶＥＬに変換する。但しＩＮＴＲＡブロックのＤＣ係数はＬＥＶＥＬ値のみとなる。そして、再符号化部１１は、図３および図４の様式に従ってＲＵＮをＧｏｌｏｍｂ符号化し、図３および図５の様式に従ってＬＥＶＥＬをＧｏｌｏｍｂ符号化する。ＲＵＮ値０とＬＥＶＥＬ値０のセットはＥＯＢ（End  of  Block）とし、これ以降に係数が存在しない事を示す。
【００３０】
以上のように、再符号化部１１において生成された中間ストリームは、その元となるＶＬＤ部１０からの出力（可変長復号データ）フォーマットによらず共通の形式となる。
【００３１】
このように、本実施の形態においては、複数の符号化方式で符号化されたビデオストリームの一部を共通様式の中間ストリームに再符号化し、再符号化後のデータを可変長復号することとした。これにより、後段の可変長復号を行う中間ストリーム復号部の構成が単純になり、回路規模の増大を抑えつつ複数の符号化方式に対応する画像復号装置を実現することができる。
【００３２】
また、単純なＲＵＮとＬＥＶＥＬを用いて符号化することにより中間ストリームを生成することとしたので、後段の中間ストリーム復号部において、一定の短いサイクル以内に１マクロブロック分のデータを可変長復号できる。
【００３３】
また、係数を周波数の高い方から順番に符号化するような符号化形式のストリームを復号する際に、各ブロックにおける最初のＲＵＮの値を直流成分の位置から数えた値としたので、中間ストリームの様式を統一した事に起因する再符号化の圧縮率低下を抑えることができる。
【００３４】
なお、本実施の形態では画素係数部分のみを再符号化することとしたが、動きベクトル等の各符号化方式に渡って共通に存在するパラメータを再符号化する対象に加えても同様の効果が得られる。また、本発明ではＲＵＮとＬＥＶＥＬをＧｏｌｏｍｂ符号で可変長符号化しているが、可変長テーブルを用いて符号化するようにしても同様の効果が得られる。
【産業上の利用可能性】
【００３５】
以上のように、本発明にかかる画像復号装置は、可変長符号化された画像を復号する場合に有用であり、特に、異なる方式を用いて可変長符号化された複数種類の動画像（ストリーム）を一旦中間ストリームに再符号化してから復号する場合に適している。
【図面の簡単な説明】
【００３６】
【図１】本発明にかかる画像復号装置の構成例を示す図である。
【図２】ＣＡＢＡＣ復号部においてデコードされた画素係数部分を再符号化する際の中間ストリームの様式を示す図である。
【図３】再符号化部がＲＵＮまたはＬＥＶＥＬをＧｏｌｏｍｂ符号化する際に使用する符号と要素の対応関係を示す図である。
【図４】再符号化部がＲＵＮをＧｏｌｏｍｂ符号化する際の様式を示す図である。
【図５】再符号化部がＬＥＶＥＬをＧｏｌｏｍｂ符号化する際の様式を示す図である。
【図６】ＣＡＶＬＣ復号部においてデコードされた画素係数部分を再符号化する際の中間ストリームの様式を示す図である。
【図７−１】Ｈ.２６４を適用したビデオストリームにおいて４×４のマクロブロックを送信する場合の送信順序を示す図である。
【図７−２】Ｈ.２６４を適用したビデオストリームにおいて４×４のマクロブロックを送信する場合の送信順序を示す図である。
【図８】サイズが４×４のマクロブロックに対するＺｉｇ−ｚａｇスキャン時のＲＵＮとＬＥＶＥＬの一例を示す図である。
【図９】ＶＣ−１復号部においてデコードされた画素係数部分を再符号化する際の中間ストリームの様式を示す図である。
【図１０】ＶＣ−１復号部においてデコードされた画素係数部分を再符号化する際の中間ストリームの様式を示す図である。
【符号の説明】
【００３７】
１  復号装置
２  記憶装置
１０  ＶＬＤ（Variable  Length  Decoding）部
１１  再符号化部
１２  中間ストリーム復号部
１３  ループ内復号部
２０  ストリームバッファ
２１  中間ストリームバッファ
１０１  ＣＡＢＡＣ復調（CABAC  Decode）部
１０２  ＣＡＶＬＣ復号（CAVLC  Decode）部
１０３  ＶＣ−１復号（VC-1  VLD）部
【図１】
2009017472.tif 000003
【図２】
2009017472.tif 000004
【図３】
2009017472.tif 000005
【図４】
2009017472.tif 000006
【図５】
2009017472.tif 000007
【図６】
2009017472.tif 000008
【図７−１】
2009017472.tif 000009
【図７−２】
2009017472.tif 000010
【図８】
2009017472.tif 000011
【図９】
2009017472.tif 000012
【図１０】
2009017472.tif 000013