(57)【要約】【課題】符号化効率を向上させることができるようにする。【解決手段】長方形スキップ・ダイレクト符号化部１３４は、拡張マクロブロックのサブマクロブロックの中の長方形のサブマクロブロックを動きパーティションとし、スキップモードやダイレクトモードで動きベクトル情報を生成する。長方形スキップ・ダイレクト符号化部１３４は、必要な周辺ブロックの動きベクトル情報を動きベクトルバッファ１３７に要求し、取得する。コスト関数算出部１３１は、block_skip_direct_flagを生成し、その値を１にし、そのblock_skip_direct_flagも含めてコスト関数を算出する。本発明は、例えば、画像処理装置に適用することができる。【選択図】図８
2012019447.tif 000002
【特許請求の範囲】
【請求項１】
符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成する、生成した前記動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償を行う動き予測・補償手段と、
前記動き予測・補償手段による動き予測・補償により生成された予測画像と、前記画像との差分情報を符号化する符号化手段と
を備える画像処理装置。
【請求項２】
前記動き予測・補償手段が前記非正方形の動きパーティションに対して動き予測・補償を行う場合、前記予測モードで動き予測・補償を行ったか否かを示すフラグ情報を生成するフラグ生成手段をさらに備える
請求項１に記載の画像処理装置。
【請求項３】
前記フラグ生成手段は、前記動き予測・補償手段が前記非正方形の動きパーティションに対して前記予測モードで動き予測・補償を行う場合、前記フラグ情報の値を１とし、前記予測モード以外のモードで動き予測・補償を行う場合、前記フラグ情報値を０とする
請求項２に記載の画像処理装置。
【請求項４】
前記符号化手段は、前記フラグ生成手段により生成された前記フラグ情報を、前記差分情報とともに符号化する
請求項２に記載の画像処理装置。
【請求項５】
前記動きパーティションは、所定のサイズより大きな、前記画像の符号化処理単位とする部分領域であるマクロブロックを複数に分割する非正方形のサブマクロブロックである
請求項１に記載の画像処理装置。
【請求項６】
前記所定のサイズは１６×１６画素である
請求項５に記載の画像処理装置。
【請求項７】
前記サブマクロブロックは、長方形である
請求項５に記載の画像処理装置。
【請求項８】
前記サブマクロブロックは、前記マクロブロックを２分割する領域である
請求項５に記載の画像処理装置。
【請求項９】
前記サブマクロブロックは、前記マクロブロックを非対称に２分割する領域である
請求項８に記載の画像処理装置。
【請求項１０】
前記サブマクロブロックは、前記マクロブロックを斜め方向に２分割する領域である
請求項８に記載の画像処理装置。
【請求項１１】
画像処理装置の画像処理方法であって、
動き予測・補償手段が、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成し、生成した動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償を行い、
符号化手段が、前記動き予測・補償により生成された予測画像と、前記画像との差分情報を符号化する
画像処理方法。
【請求項１２】
符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成する、生成した前記動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償が行われ、生成された予測画像と、前記画像との差分情報が符号化されたコードストリームを復号する復号手段と、
前記非正方形の動きパーティションに対して、前記予測モードで動き予測・補償を行い、前記復号手段により前記コードストリームが復号されて得られた前記周辺の動きパーティションの動きベクトル情報を用いて前記動きベクトルを生成し、前記予測画像を生成する動き予測・補償手段と、
前記復号手段により前記コードストリームが復号されて得られた差分情報と、前記動き予測・補償手段により生成された前記予測画像を加算して復号画像を生成する生成手段と
を備える画像処理装置。
【請求項１３】
前記動き予測・補償手段は、前記復号手段により復号された、前記予測モードで動き予測・補償が行われたか否かを示すフラグ情報により、前記非正方形の動きパーティションが前記予測モードで動き予測・補償されていることが示されている場合、前記非正方形の動きパーティションを、前記予測モードで動き予測・補償する
請求項１２に記載の画像処理装置。
【請求項１４】
前記動きパーティションは、所定のサイズより大きな、前記画像の符号化処理単位とする部分領域であるマクロブロックを複数に分割する非正方形のサブマクロブロックである
請求項１２に記載の画像処理装置。
【請求項１５】
前記所定のサイズは１６×１６画素である
請求項１４に記載の画像処理装置。
【請求項１６】
前記サブマクロブロックは、長方形である
請求項１４に記載の画像処理装置。
【請求項１７】
前記サブマクロブロックは、前記マクロブロックを２分割する領域である
請求項１４に記載の画像処理装置。
【請求項１８】
前記サブマクロブロックは、前記マクロブロックを非対称に２分割する領域である
請求項１７に記載の画像処理装置。
【請求項１９】
前記サブマクロブロックは、前記マクロブロックを斜め方向に２分割する領域である
請求項１７に記載の画像処理装置。
【請求項２０】
画像処理装置の画像処理方法であって、
復号手段が、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成する、生成した前記動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償が行われ、生成された予測画像と、前記画像との差分情報が符号化されたコードストリームを復号し、
動き予測・補償手段が、前記非正方形の動きパーティションに対して、前記予測モードで動き予測・補償を行い、前記コードストリームが復号されて得られた前記周辺の動きパーティションの動きベクトル情報を用いて前記動きベクトルを生成し、前記予測画像を生成し、
生成手段が、前記コードストリームが復号されて得られた差分情報と、生成された前記予測画像を加算して復号画像を生成する
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法に関し、特に、符号化効率を向上させることができるようにした画像処理装置および方法に関する。
【背景技術】
【０００２】
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG（Moving Picture Experts Group）などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。
【０００３】
特に、MPEG2（ISO（International Organization for Standardization）/IEC（International Electrotechnical Commission） 13818-2）は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば７２０×４８０画素を持つ標準解像度の飛び越し走査画像であれば４〜８Ｍｂｐｓ、１９２０×１０８８画素を持つ高解像度の飛び越し走査画像であれば１８〜２２Ｍｂｐｓの符号量（ビットレート）を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
【０００４】
MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量（ビットレート）、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、１９９８年１２月にISO/IEC 14496-2としてその規格が国際標準に承認された。
【０００５】
更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L （ITU-T（International Telecommunication Union Telecommunication Standardization Sector） Q6/16 VCEG（Video Coding Expert Group））という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。
【０００６】
標準化のスケジュールとしては、２００３年３月にはH.264及びMPEG-4 Part10 （Advanced Video Coding、以下AVCと記す）という名の元に国際標準となった。
【０００７】
ところで、従来のように、マクロブロックサイズを１６画素×１６画素とするのは、次世代符号化方式の対象となるような、UHD（Ultra High Definition；４０００画素×２０００画素）といった大きな画枠に対しては、最適ではない。そこで、非特許文献１などにおいては、マクロブロックサイズを、６４×６４画素、３２画素×３２画素といった大きさにすることが提案されている。
【０００８】
すなわち、非特許文献１においては、階層構造を採用することにより、１６×１６画素ブロック以下に関しては、現在のAVCにおけるマクロブロックと互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。
【０００９】
これらのブロック（マクロブロックや、そのマクロブロックを複数の領域に分割したサブマクロブロック）は、動き予測・補償処理の単位である動きパーティションとして利用される。
【００１０】
ところで、AVC符号化方式においては、スキップモードやダイレクトモードが用意されている。このスキップモード及びダイレクトモードは、動きベクトル情報を伝送する必要がなく、特に、より大きな領域に適用されることで、符号化効率の向上に寄与する。
【先行技術文献】
【非特許文献】
【００１１】
【非特許文献１】Peisong Chenn,Yan Ye,Marta Karczewicz,”Video Coding Using Extended Block Sizes”, COM16-C123-E, Qualcomm Inc,2009年1月,
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、非特許文献１において提案されている手法においては、動きパーティションとされるブロックの内、正方形のブロックについてのみしか、スキップモード及びダイレクトモードが適用されないため、符号化効率が向上しない恐れがあった。
【００１３】
本発明は、このような状況に鑑みてなされたものであり、長方形のブロックについても、スキップモード及びダイレクトモードを適用することができるようにし、符号化効率を向上させることができるようにすることを目的とする。
【課題を解決するための手段】
【００１４】
本発明の一側面は、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成する、生成した前記動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償を行う動き予測・補償手段と、前記動き予測・補償手段による動き予測・補償により生成された予測画像と、前記画像との差分情報を符号化する符号化手段とを備える画像処理装置である。
【００１５】
前記動き予測・補償手段が前記非正方形の動きパーティションに対して動き予測・補償を行う場合、前記予測モードで動き予測・補償を行ったか否かを示すフラグ情報を生成するフラグ生成手段をさらに備えることができる。
【００１６】
前記フラグ生成手段は、前記動き予測・補償手段が前記非正方形の動きパーティションに対して前記予測モードで動き予測・補償を行う場合、前記フラグ情報の値を１とし、前記予測モード以外のモードで動き予測・補償を行う場合、前記フラグ情報値を０とすることができる。
【００１７】
前記符号化手段は、前記フラグ生成手段により生成された前記フラグ情報を、前記差分情報とともに符号化することができる。
【００１８】
前記動きパーティションは、所定のサイズより大きな、前記画像の符号化処理単位とする部分領域であるマクロブロックを複数に分割する非正方形のサブマクロブロックであるようにすることができる。
【００１９】
前記所定のサイズは１６×１６画素であるようにすることができる。
【００２０】
前記サブマクロブロックは、長方形であるようにすることができる。
【００２１】
前記サブマクロブロックは、前記マクロブロックを２分割する領域であるようにすることができる。
【００２２】
前記サブマクロブロックは、前記マクロブロックを非対称に２分割する領域であるようにすることができる。
【００２３】
前記サブマクロブロックは、前記マクロブロックを斜め方向に２分割する領域であるようにすることができる。
【００２４】
本発明の一側面は、また、画像処理装置の画像処理方法であって、動き予測・補償手段が、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成し、生成した動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償を行い、符号化手段が、前記動き予測・補償により生成された予測画像と、前記画像との差分情報を符号化する画像処理方法である。
【００２５】
本発明の他の側面は、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成する、生成した前記動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償が行われ、生成された予測画像と、前記画像との差分情報が符号化されたコードストリームを復号する復号手段と、前記非正方形の動きパーティションに対して、前記予測モードで動き予測・補償を行い、前記復号手段により前記コードストリームが復号されて得られた前記周辺の動きパーティションの動きベクトル情報を用いて前記動きベクトルを生成し、前記予測画像を生成する動き予測・補償手段と、前記復号手段により前記コードストリームが復号されて得られた差分情報と、前記動き予測・補償手段により生成された前記予測画像を加算して復号画像を生成する生成手段とを備える画像処理装置である。
【００２６】
前記動き予測・補償手段は、前記復号手段により復号された、前記予測モードで動き予測・補償が行われたか否かを示すフラグ情報により、前記非正方形の動きパーティションが前記予測モードで動き予測・補償されていることが示されている場合、前記非正方形の動きパーティションを、前記予測モードで動き予測・補償することができる。
【００２７】
前記動きパーティションは、所定のサイズより大きな、前記画像の符号化処理単位とする部分領域であるマクロブロックを複数に分割する非正方形のサブマクロブロックであるようにすることができる。
【００２８】
前記所定のサイズは１６×１６画素であるようにすることができる。
【００２９】
前記サブマクロブロックは、長方形であるようにすることができる。
【００３０】
前記サブマクロブロックは、前記マクロブロックを２分割する領域であるようにすることができる。
【００３１】
前記サブマクロブロックは、前記マクロブロックを非対称に２分割する領域であるようにすることができる。
【００３２】
前記サブマクロブロックは、前記マクロブロックを斜め方向に２分割する領域であるようにすることができる。
【００３３】
本発明の他の側面は、また、画像処理装置の画像処理方法であって、復号手段が、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成する、生成した前記動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償が行われ、生成された予測画像と、前記画像との差分情報が符号化されたコードストリームを復号し、動き予測・補償手段が、前記非正方形の動きパーティションに対して、前記予測モードで動き予測・補償を行い、前記コードストリームが復号されて得られた前記周辺の動きパーティションの動きベクトル情報を用いて前記動きベクトルを生成し、前記予測画像を生成し、生成手段が、前記コードストリームが復号されて得られた差分情報と、生成された前記予測画像を加算して復号画像を生成する画像処理方法である。
【００３４】
本発明の一側面においては、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルが生成され、生成された動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償が行われ、動き予測・補償により生成された予測画像と、画像との差分情報が符号化される。
【００３５】
本発明の他の側面においては、符号化する画像の、非正方形の、動き予測・補償の処理単位とする部分領域である動きパーティションに対して、既に生成されている周辺の動きパーティションの動きベクトルを用いて動きベクトルを生成する、生成した動きベクトルを復号側に伝送する必要がない予測モードで動き予測・補償が行われ、生成された予測画像と、画像との差分情報が符号化されたコードストリームが復号され、非正方形の動きパーティションに対して、予測モードで動き予測・補償が行われ、コードストリームが復号されて得られた周辺の動きパーティションの動きベクトル情報を用いて動きベクトルが生成され、予測画像が生成され、コードストリームが復号されて得られた差分情報と、生成された予測画像が加算されて復号画像が生成される。
【発明の効果】
【００３６】
本発明によれば、画像を処理することができる。特に、符号化効率を向上させることができる。
【図面の簡単な説明】
【００３７】
【図１】小数点画素精度の動き予測・補償処理の例を示す図である。
【図２】マクロブロックの例を示す図である。
【図３】メディアンオペレーションの様子の例を説明する図である。
【図４】マルチ参照フレームの例を説明する図である。
【図５】テンポラルダイレクトモードの様子の例を説明する図である。
【図６】マクロブロックの他の例を示す図である。
【図７】本発明を適用した画像符号化装置の主な構成例を示すブロック図である。
【図８】動き予測・補償部の詳細な構成例を示すブロック図である。
【図９】コスト関数算出部の詳細な構成例を示すブロック図である。
【図１０】長方形スキップ・ダイレクト符号化部の詳細な構成例を示すブロック図である。
【図１１】符号化処理の流れの例を説明するフローチャートである。
【図１２】インター動き予測処理の流れの例を説明するフローチャートである。
【図１３】長方形スキップ・ダイレクト動きベクトル情報生成処理の流れの例を説明するフローチャートである。
【図１４】本発明を適用した画像復号装置の主な構成例を示すブロック図である。
【図１５】動き予測・補償部の詳細な構成例を示すブロック図である。
【図１６】長方形スキップ・ダイレクト復号部の詳細な構成例を示すブロック図である。
【図１７】復号処理の流れの例を説明するフローチャートである。
【図１８】予測処理の流れの例を説明するフローチャートである。
【図１９】インター予測処理の流れの例を説明するフローチャートである。
【図２０】非特許文献２において提案されている手法を説明するための図である。
【図２１】非特許文献３において提案されている手法を説明するための図である。
【図２２】非特許文献４において提案されている手法を説明するための図である。
【図２３】本発明を適用したパーソナルコンピュータの主な構成例を示すブロック図である。
【図２４】本発明を適用したテレビジョン受像機の主な構成例を示すブロック図である。
【図２５】本発明を適用した携帯電話機の主な構成例を示すブロック図である。
【図２６】本発明を適用したハードディスクレコーダの主な構成例を示すブロック図である。
【図２７】本発明を適用したカメラの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００３８】
以下、発明を実施するための形態（以下実施の形態とする）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態（画像符号化装置）
２．第２の実施の形態（画像復号装置）
３．第３の実施の形態（パーソナルコンピュータ）
４．第４の実施の形態（テレビジョン受像機）
５．第５の実施の形態（携帯電話機）
６．第６の実施の形態（ハードディスクレコーダ）
７．第７の実施の形態（カメラ）
【００３９】
＜１．第１の実施の形態＞
［少数画素精度の動き予測・補償処理］
MPEG-2等の符号化方式においては、線形内挿処理により、１／２画素精度の動き予測・補償処理を行っているが、AVC符号化方式においては、これが、６タップのFIRフィルタを用いた１／４画素精度の動き予測・補償処理を行っており、これにより、符号化効率が向上している。
【００４０】
図１は、AVC符号化方式において規定されている、１／４画素精度の動き予測・補償処理の様子の例を説明する図である。図１において、各四角は、画素を示している。その内、Ａはフレームメモリ１１２に格納されている整数精度画素の位置を示し、b,c,dは、１／２画素精度の位置を示し、e1,e2,e3は１／４画素精度の位置を示している。
【００４１】
以下においては、関数Clip1()を以下の式（１）のように定義する。
【００４２】
【数１】
2012019447.tif 000003
・・・（１）
【００４３】
例えば、入力画像が８ビット精度である場合、式（１）のmax_pixの値は２５５となる。
【００４４】
b及びdの位置における画素値は、６tapのFIRフィルタを用いて、以下の式（２）および式（３）のように生成される。
【００４５】
【数２】
2012019447.tif 000004
・・・（２）
【数３】
2012019447.tif 000005
・・・（３）
【００４６】
cの位置における画素値は、水平方向及び垂直方向に６tapのFIRフィルタを適用し、以下の式（４）乃至式（６）のように生成される。
【００４７】
【数４】
2012019447.tif 000006
・・・（４）
もしくは、
【数５】
2012019447.tif 000007
・・・（５）
【数６】
2012019447.tif 000008
・・・（６）
【００４８】
なお、Clip処理は、水平方向及び垂直方向の積和処理の両方を行なった後、最後に１度のみ行われる。
【００４９】
e1〜e3は、以下の式（７）乃至式（９）のように、線形内挿により生成される。
【００５０】
【数７】
2012019447.tif 000009
・・・（７）
【数８】
2012019447.tif 000010
・・・（８）
【数９】
2012019447.tif 000011
・・・（９）
【００５１】
［動き予測・補償処理］
また、MPEG-2においては、動き予測・補償処理の単位は、フレーム動き補償モードの場合には１６×１６画素、フィールド動き補償モードの場合には第一フィールド、第二フィールドのそれぞれに対し、１６×８画素を単位として動き予測・補償処理が行なわれる。
【００５２】
これに対し、AVCにおいては、図２に示されるように、１６×１６画素により構成される１つのマクロブロックを、１６×１６、１６×８、８×１６若しくは８×８のいずれかのパーティションに分割し、サブマクロブロック毎に、互いに独立した動きベクトル情報を持つことが可能である。更に、８×８パーティションに関しては、図３に示されるとおり、８×８、８×４、４×８、４×４のいずれかのサブマクロブロックに分割し、それぞれ独立した動きベクトル情報を持つことが可能である。
【００５３】
しかしながら、AVC画像符号化方式において、MPEG-2の場合と同様に、かかるような動き予測・補償処理が行なわれるようにすると、膨大な動きベクトル情報が生成されてしまう恐れがあった。そして、その生成された動きベクトル情報をこのまま符号化することは、符号化効率の低下を招く恐れがあった。
【００５４】
かかる問題を解決する手法として、AVC画像符号化においては、以下のような手法により、動きベクトルの符号化情報の低減が実現されている。
【００５５】
図３に示される各直線は、動き補償ブロックの境界を示している。また、図３において、Ｅはこれから符号化されようとしている当該動き補償ブロックを示し、Ａ乃至Ｄは、それぞれ、既に符号化済の、Ｅに隣接する動き補償ブロックを示す。
【００５６】
今、Ｘ＝Ａ，Ｂ，Ｃ，Ｄ，Ｅとして、Ｘに対する動きベクトル情報を、mvxとする。
【００５７】
まず、動き補償ブロックＡ，Ｂ、およびＣに関する動きベクトル情報を用い、動き補償ブロックＥに対する予測動きベクトル情報pmvEを、メディアンオペレーションにより、以下の式（１０）のように生成する。
【００５８】
【数１０】
2012019447.tif 000012
・・・（１０）
【００５９】
動き補償ブロックＣに関する情報が、画枠の端である等の理由により“unavailable”である場合、動き補償ブロックＤに関する情報で代用される。
【００６０】
画像圧縮情報に、動き補償ブロックＥに対する動きベクトル情報として符号化されるデータmvdEは、pmvEを用いて、以下の式（１１）のように生成される。
【００６１】
【数１１】
2012019447.tif 000013
・・・（１１）
【００６２】
なお、実際の処理は、動きベクトル情報の水平方向および垂直方向のそれぞれの成分に対して、独立に処理が行なわれる。
【００６３】
また、AVCにおいては、Multi-Reference Frame（マルチ（複数）参照フレーム）という、MPEG-2やH.263等、従来の画像符号化方式では規定されていなかった方式が規定されている。
【００６４】
図４を用いて、AVCにおいて規定されている、マルチ参照フレーム（Multi-Reference Frame）を説明する。
【００６５】
すなわち、MPEG-2やH.263においては、Ｐピクチャの場合、フレームメモリに格納された参照フレーム１枚のみを参照することにより動き予測・補償処理が行われていたが、AVCにおいては、図４に示されるように、複数の参照フレームがメモリに格納され、マクロブロック毎に、異なるメモリを参照することが可能である。
【００６６】
ところで、Ｂピクチャにおける動きベクトル情報における情報量は膨大であるが、AVCにおいては、Direct Mode（ダイレクトモード）と称されるモードが用意されている。
【００６７】
このダイレクトモード（Direct Mode）において、動きベクトル情報は、画像圧縮情報中には格納されない。画像復号装置においては、周辺ブロックの動きベクトル情報、若しくは、参照フレームにおける処理対象ブロックと同じ位置のブロックであるco-locatedブロックの動きベクトル情報から、当該ブロックの動きベクトル情報が算出される。
【００６８】
ダイレクトモード（Direct Mode）には、Spatial Direct Mode（空間ダイレクトモード）と、Temporal Direct Mode（時間ダイレクトモード）の２種類が存在し、スライス毎に切り替えることが可能である。
【００６９】
空間ダイレクトモード（Spatial Direct Mode）においては、以下の式（１２）に示されるように、処理対象動き補償ブロックＥの動きベクトル情報mvEが算出される。
【００７０】
mvE = pmvE  ・・・（１２）
【００７１】
すなわち、Median（メディアン）予測により生成された動きベクトル情報が、当該ブロックに適用される。
【００７２】
以下においては、図５を用いて、時間ダイレクトモード（Temporal Direct Mode）を説明する。
【００７３】
図５において、L0参照ピクチャにおける、当該ブロックと同じ空間上のアドレスにあるブロックを、Co-Locatedブロックとし、Co-Locatedブロックにおける動きベクトル情報を、mvcolとする。また、当該ピクチャとL0参照ピクチャの時間軸上の距離をTDBとし、L0参照ピクチャとL1参照ピクチャの時間軸上の距離をTDDとする。
【００７４】
この時、当該ピクチャにおける、L0の動きベクトル情報mvL0及びL1の動きベクトル情報mvL1は、以下の式（１３）および式（１４）のように算出される。
【００７５】
【数１２】
2012019447.tif 000014
・・・（１３）
【数１３】
2012019447.tif 000015
・・・（１４）
【００７６】
なお、AVC画像圧縮情報においては、時間軸上の距離を表す情報TDが存在しないため、POC（Picture Order Count）を用いて、上述した式（１２）および式（１３）の演算が行われるものとする。
【００７７】
また、AVC画像圧縮情報においては、ダイレクトモード（Direct Mode）は、16×16画素マクロブロック単位、若しくは、8×8画素ブロック単位で定義することが可能である。
【００７８】
［予測モードの選択］
ところで、AVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
【００７９】
かかる選択方式の例として、JM（Joint Model）と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエア（http://iphome.hhi.de/suehring/tml/index.htm において公開されている）に実装されている方法を挙げることが出来る。
【００８０】
JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの２通りのモード判定方法を選択することができる。どちらも、それぞれの予測モードに関するコスト関数値を算出し、これを最小にする予測モードを当該サブマクロブロック、または、当該マクロブロックに対する最適モードとして選択する。
【００８１】
High Complexity Modeにおけるコスト関数は、以下の式（１５）のように示される。
【００８２】
Cost(Mode  ) = D + λ*R  ・・・（１５）
【００８３】
ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Ｄは、当該予測モードで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Ｒは、直交変換係数を含んだ、当該モードで符号化した場合の総符号量である。
【００８４】
つまり、High Complexity Modeでの符号化を行うには、上記パラメータＤ及びＲを算出するため、全ての候補モードにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
【００８５】
Low Complexity Modeにおけるコスト関数は、以下の式（１６）のように示される。
【００８６】
Cost(Mode  ) = D + QP2Quant(QP) * HeaderBit  ・・・（１６）
【００８７】
ここで、Ｄは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP)は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
【００８８】
すなわち、Low Complexity Modeにおいては、それぞれの候補モードに関して、予測処理を行う必要があるが、復号画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
【００８９】
ところで、マクロブロックサイズを１６画素×１６画素とするのは、次世代符号化方式の対象となるような、UHD（Ultra High Definition；４０００画素×２０００画素）といった大きな画枠に対しては、最適ではない。そこで、非特許文献１などにおいては、マクロブロックサイズを、図６に示されるように、６４×６４画素、３２画素×３２画素といった大きさにすることが提案されている。
【００９０】
すなわち、非特許文献１においては、図６のような、階層構造を採用することにより、１６×１６画素ブロック以下に関しては、現在のAVCにおけるマクロブロックと互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。
【００９１】
ところで、また、AVC符号化方式においては、ダイレクトモードと同様に動きベクトル情報を送る必要がないモードとして、スキップモードが用意されている。このスキップモード及びダイレクトモードは、動きベクトル情報を伝送する必要がなく、特に、より大きな領域に適用されることで、符号化効率の向上に寄与する。
【００９２】
しかしながら、非特許文献１において提案されている手法においては、動きパーティションとされるブロックの内、正方形のブロックについてのみしか、スキップモード及びダイレクトモードが適用されないため、符号化効率が向上しない恐れがあった。
【００９３】
そこで、長方形のブロックについても、スキップモード及びダイレクトモードを適用することができるようにし、符号化効率を向上させることができるようにする。
【００９４】
［画像符号化装置］
図７は、本発明を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
【００９５】
図７に示される画像符号化装置１００は、例えば、H．264及びMPEG（Moving Picture Experts Group）４ Part１０（AVC（Advanced Video Coding））（以下H．264/AVCと称する）方式と同様に画像を符号化する符号化装置である。ただし、画像符号化装置１００は、正方形ブロックだけでなく長方形ブロックにおいても、スキップモード及びダイレクトモードを適用する。このようにすることにより、画像符号化装置１００は、符号化効率を向上させることができる。
【００９６】
図７の例において、画像符号化装置１００は、A/D（Analog / Digital）変換部１０１、画面並べ替えバッファ１０２、演算部１０３、直交変換部１０４、量子化部１０５、可逆符号化部１０６、および蓄積バッファ１０７を有する。また、画像符号化装置１００は、逆量子化部１０８、逆直交変換部１０９、演算部１１０、デブロックフィルタ１１１、フレームメモリ１１２、選択部１１３、イントラ予測部１１４、動き予測・補償部１１５、選択部１１６、およびレート制御部１１７を有する。
【００９７】
A/D変換部１０１は、入力された画像データをA/D変換し、画面並べ替えバッファ１０２に出力し、記憶させる。
【００９８】
画面並べ替えバッファ１０２は、記憶した表示の順番のフレームの画像を、GOP（Group of Picture）構造に応じて、符号化のためのフレームの順番に並べ替える。画面並べ替えバッファ１０２は、フレームの順番を並び替えた画像を、演算部１０３に供給する。また、画面並べ替えバッファ１０２は、フレームの順番を並び替えた画像を、イントラ予測部１１４および動き予測・補償部１１５にも供給する。
【００９９】
演算部１０３は、画面並べ替えバッファ１０２から読み出された画像から、選択部１１６を介してイントラ予測部１１４若しくは動き予測・補償部１１５から供給される予測画像を減算し、その差分情報を直交変換部１０４に出力する。
【０１００】
例えば、イントラ符号化が行われる画像の場合、演算部１０３は、画面並べ替えバッファ１０２から読み出された画像から、イントラ予測部１１４から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部１０３は、画面並べ替えバッファ１０２から読み出された画像から、動き予測・補償部１１５から供給される予測画像を減算する。
【０１０１】
直交変換部１０４は、演算部１０３から供給される差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を量子化部１０５に供給する。
【０１０２】
量子化部１０５は、直交変換部１０４が出力する変換係数を量子化する。量子化部１０５は、レート制御部１１７から供給される情報に基づいて量子化パラメータを設定し、量子化を行う。量子化部１０５は、量子化された変換係数を可逆符号化部１０６に供給する。
【０１０３】
可逆符号化部１０６は、その量子化された変換係数に対して、可変長符号化、算術符号化等の可逆符号化を施す。
【０１０４】
可逆符号化部１０６は、イントラ予測を示す情報などをイントラ予測部１１４から取得し、インター予測モードを示す情報や動きベクトル情報などを動き予測・補償部１１５から取得する。なお、イントラ予測（画面内予測）を示す情報は、以下、イントラ予測モード情報とも称する。また、インター予測（画面間予測）を示す情報モードを示す情報は、以下、インター予測モード情報とも称する。
【０１０５】
可逆符号化部１０６は、量子化された変換係数を符号化するとともに、フィルタ係数、イントラ予測モード情報、インター予測モード情報、および量子化パラメータなどの各種情報を、符号化データのヘッダ情報の一部とする（多重化する）。可逆符号化部１０６は、符号化して得られた符号化データを蓄積バッファ１０７に供給して蓄積させる。
【０１０６】
例えば、可逆符号化部１０６においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H．264/AVC方式で定められているCAVLC（Context-Adaptive Variable Length Coding）などがあげられる。算術符号化としては、CABAC（Context-Adaptive Binary Arithmetic Coding）などがあげられる。
【０１０７】
蓄積バッファ１０７は、可逆符号化部１０６から供給された符号化データを、一時的に保持し、所定のタイミングにおいて、H．264/AVC方式で符号化された符号化画像として、例えば、後段の図示せぬ記録装置や伝送路などに出力する。
【０１０８】
また、量子化部１０５において量子化された変換係数は、逆量子化部１０８にも供給される。逆量子化部１０８は、その量子化された変換係数を、量子化部１０５による量子化に対応する方法で逆量子化する。逆量子化部１０８は、得られた変換係数を、逆直交変換部１０９に供給する。
【０１０９】
逆直交変換部１０９は、供給された変換係数を、直交変換部１０４による直交変換処理に対応する方法で逆直交変換する。逆直交変換された出力（復元された差分情報）は、演算部１１０に供給される。
【０１１０】
演算部１１０は、逆直交変換部１０９より供給された逆直交変換結果、すなわち、復元された差分情報に、選択部１１６を介してイントラ予測部１１４若しくは動き予測・補償部１１５から供給される予測画像を加算し、局部的に復号された画像（復号画像）を得る。
【０１１１】
例えば、差分情報が、イントラ符号化が行われる画像に対応する場合、演算部１１０は、その差分情報にイントラ予測部１１４から供給される予測画像を加算する。また、例えば、差分情報が、インター符号化が行われる画像に対応する場合、演算部１１０は、その差分情報に動き予測・補償部１１５から供給される予測画像を加算する。
【０１１２】
その加算結果は、デブロックフィルタ１１１またはフレームメモリ１１２に供給される。
【０１１３】
デブロックフィルタ１１１は、適宜デブロックフィルタ処理を行うことにより復号画像のブロック歪を除去するとともに、例えばウィナーフィルタ（Wiener Filter）を用いて適宜ループフィルタ処理を行うことにより画質改善を行う。デブロックフィルタ１１１は、各画素をクラス分類し、クラスごとに適切なフィルタ処理を施す。デブロックフィルタ１１１は、そのフィルタ処理結果をフレームメモリ１１２に供給する。
【０１１４】
フレームメモリ１１２は、所定のタイミングにおいて、蓄積されている参照画像を、選択部１１３を介してイントラ予測部１１４または動き予測・補償部１１５に出力する。
【０１１５】
例えば、イントラ符号化が行われる画像の場合、フレームメモリ１１２は、参照画像を、選択部１１３を介してイントラ予測部１１４に供給する。また、例えば、インター符号化が行われる場合、フレームメモリ１１２は、参照画像を、選択部１１３を介して動き予測・補償部１１５に供給する。
【０１１６】
選択部１１３は、フレームメモリ１１２から供給される参照画像がイントラ符号化を行う画像である場合、その参照画像をイントラ予測部１１４に供給する。また、選択部１１３は、フレームメモリ１１２から供給される参照画像がインター符号化を行う画像である場合、その参照画像を動き予測・補償部１１５に供給する。
【０１１７】
イントラ予測部１１４は、画面内の画素値を用いて予測画像を生成するイントラ予測（画面内予測）を行う。イントラ予測部１１４は、複数のモード（イントラ予測モード）によりイントラ予測を行う。
【０１１８】
イントラ予測部１１４は、全てのイントラ予測モードで予測画像を生成し、各予測画像を評価し、最適なモードを選択する。イントラ予測部１１４は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、選択部１１６を介して演算部１０３や演算部１１０に供給する。
【０１１９】
また、上述したように、イントラ予測部１１４は、採用したイントラ予測モードを示すイントラ予測モード情報等の情報を、適宜可逆符号化部１０６に供給する。
【０１２０】
動き予測・補償部１１５は、インター符号化が行われる画像について、画面並べ替えバッファ１０２から供給される入力画像と、選択部１１３を介してフレームメモリ１１２から供給される参照画像とを用いて、動き予測を行い、検出された動きベクトルに応じて動き補償処理を行い、予測画像（インター予測画像情報）を生成する。
【０１２１】
動き予測・補償部１１５は、候補となる全てのインター予測モードのインター予測処理を行い、予測画像を生成する。その際、動き予測・補償部１１５は、例えば非特許文献１等において提案されている１６×１６画素よりも大きな拡張マクロブロックにおいて、長方形のサブマクロブロックを動きパーティションとする場合も、スキップモードやダイレクトモードを適用する。動き予測・補償部１１５は、このようなスキップモードやダイレクトモードも候補に含め、各モードのコスト関数値を算出し、最適なモードを選択する。
【０１２２】
動き予測・補償部１１５は、このように選択されたインター予測モードで生成された予測画像を、選択部１１６を介して演算部１０３や演算部１１０に供給する。
【０１２３】
また、動き予測・補償部１１５は、採用されたインター予測モードを示すインター予測モード情報や、算出した動きベクトルを示す動きベクトル情報を可逆符号化部１０６に供給する。
【０１２４】
なお、詳細については後述するが、動き予測・補償部１１５は、拡張マクロブロックの長方形のサブマクロブロックを動きパーティションとする場合、スキップモードやダイレクトモードであるか否かを示すblock_skip_direct_flagというフラグを生成する。動き予測・補償部１１５は、このフラグも含めてコスト関数を算出する。なお、コスト関数に基づいたモード選択の結果、長方形ブロックを動きパーティションとするモードが採用された場合、動き予測・補償部１１５は、このblock_skip_direct_flagを可逆符号化部１０６に供給して符号化させ、復号側に伝送させる。
【０１２５】
選択部１１６は、イントラ符号化を行う画像の場合、イントラ予測部１１４の出力を演算部１０３や演算部１１０に供給し、インター符号化を行う画像の場合、動き予測・補償部１１５の出力を演算部１０３や演算部１１０に供給する。
【０１２６】
レート制御部１１７は、蓄積バッファ１０７に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部１０５の量子化動作のレートを制御する。
【０１２７】
［動き予測・補償部］
図８は、図７の動き予測・補償部１１５の詳細な構成例を示すブロック図である。
【０１２８】
図８に示されるように、動き予測・補償部１１５は、コスト関数算出部１３１、動き探索部１３２、正方形スキップ・ダイレクト符号化部１３３、長方形スキップ・ダイレクト符号化部１３４、モード判定部１３５、動き補償部１３６、および動きベクトルバッファ１３７を有する。
【０１２９】
コスト関数算出部１３１は、各インター予測モードについて（全候補モードについて）コスト関数を算出する。コスト関数の算出方法は任意であるが、例えば、上述したAVC符号化方式の場合と同様に行われるようにしてもよい。
【０１３０】
例えば、コスト関数算出部１３１は、動き探索部１３２が生成した各モードについて動きベクトル情報や予測画像情報を取得し、コスト関数を算出する。動き探索部１３２は、画面並べ替えバッファ１０２から取得した入力画像情報と、フレームメモリ１１２から取得した参照画像情報とを用いて、各候補モード（各動きパーティションの各イントラ予測モード）について、動きベクトル情報および予測画像情報を生成する。
【０１３１】
動き探索部１３２は、AVC符号化方式等において規定される１６×１６画素以下のマクロブロック（以下、通常マクロブロックと称する）だけでなく、非特許文献１等において提案されている１６×１６画素より大きなサイズのマクロブロック（以下、拡張マクロブロックと称する）についても動きベクトル情報および予測画像情報を生成する。ただし、動き探索部１３２は、スキップモードとダイレクトモードについては処理しない。
【０１３２】
コスト関数算出部１３１は、動き探索部１３２から供給された動きベクトル情報や予測画像情報を用いて各候補モードのコスト関数を算出する。なお、拡張マクロブロックの長方形のサブマクロブロックを動きパーティションとするモードの場合、コスト関数算出部１３１は、そのモードがスキップモードやダイレクトモードであるか否かを示すフラグ情報であるblock_skip_direct_flagを生成する。
【０１３３】
上述したように、動き探索部１３２がスキップモードとダイレクトモードを処理しない。つまり、この場合、コスト関数算出部１３１は、block_skip_direct_flagの値を０にする。なお、コスト関数算出部１３１は、このblock_skip_direct_flagも含めてコスト関数を算出する。
【０１３４】
また、コスト関数算出部１３１は、正方形スキップ・ダイレクト符号化部１３３が生成したスキップモードやダイレクトモードについての動きベクトル情報である正方形スキップ・ダイレクト動き情報を取得し、コスト関数を算出する。
【０１３５】
正方形スキップ・ダイレクト符号化部１３３は、通常マクロブロック若しくはそのサブマクロブロック、または、拡張マクロブロック若しくはそのサブマクロブロックの中の正方形のサブマクロブロックを動きパーティションとし（以下、正方形動きパーティションと称する）、スキップモードやダイレクトモードで動きベクトル情報を生成する。
【０１３６】
スキップモードやダイレクトモードの場合、動きベクトルは、既に生成されている周辺ブロックの動きベクトルを用いて生成される。正方形スキップ・ダイレクト符号化部１３３は、必要な周辺ブロックの動きベクトル情報を動きベクトルバッファ１３７に要求し、取得する。正方形スキップ・ダイレクト符号化部１３３は、このように生成した正方形スキップ・ダイレクト動きベクトル情報をコスト関数算出部１３１に供給する。
【０１３７】
さらに、コスト関数算出部１３１は、長方形スキップ・ダイレクト符号化部１３４が生成したスキップモードやダイレクトモードについての動きベクトル情報である長方形スキップ・ダイレクト動き情報を取得し、コスト関数を算出する。
【０１３８】
長方形スキップ・ダイレクト符号化部１３４は、拡張マクロブロックのサブマクロブロックの中の長方形のサブマクロブロックを動きパーティションとし（以下、長方形動きパーティションと称する）、スキップモードやダイレクトモードで動きベクトル情報を生成する。
【０１３９】
正方形の場合と同様に、スキップモードやダイレクトモードの場合、動きベクトルは、周辺ブロックの動きベクトルを用いて生成される。長方形スキップ・ダイレクト符号化部１３４は、必要な周辺ブロックの動きベクトル情報を動きベクトルバッファ１３７に要求し、取得する。スキップモードやダイレクトモードでの動きベクトルの求め方は、長方形動きパーティションの場合も、正方形動きパーティションの場合と基本的に同様である。ただし、形状によって参照する周辺ブロックの位置が変わる。
【０１４０】
長方形スキップ・ダイレクト符号化部１３４は、このように生成した長方形スキップ・ダイレクト動きベクトル情報をコスト関数算出部１３１に供給する。
【０１４１】
この場合、コスト関数算出部１３１は、上述したように、block_skip_direct_flagを生成し、その値を１にし、そのblock_skip_direct_flagも含めてコスト関数を算出する。
【０１４２】
コスト関数算出部１３１は、算出した各候補モードのコスト関数値を、予測画像、動きベクトル情報、およびblock_skip_direct_flag等とともにモード判定部１３５に供給する。
【０１４３】
モード判定部１３５は、候補モードの中から、コスト関数値が最小のモードを最適なイントラ予測モードを判定し、それを動き補償部１３６に通知する。モード判定部１３５は、選択した候補モードのモード情報とともに、そのモードの予測画像、動きベクトル情報、およびblock_skip_direct_flag等を必要に応じて動き補償部１３６に供給する。
【０１４４】
動き補償部１３６は、最適なイントラ予測モードに選択されたモードの予測画像を選択部１１６に供給する。また、動き補償部１３６は、選択部１１６により、イントラ予測モードが選択された場合、そのモードのモード情報、動きベクトル情報、およびblock_skip_direct_flag等の必要な情報を可逆符号化部１０６に供給する。
【０１４５】
また、動き補償部１３６は、最適なイントラ予測モードに選択されたモードの動きベクトル情報を、動きベクトルバッファ１３７に供給し、保持させる。動きベクトルバッファ１３７に保持された動きベクトル情報は、それ以降に行われる動きパーティションについての処理において、周辺ブロックの動きベクトル情報として参照される。
【０１４６】
スキップモードやダイレクトモードは、動きベクトル情報を伝送する必要がないため、より大きな領域に適用されるほど符号化効率の向上により大きく寄与することになる。近年においては画像の高解像度化が進んでおり、それとともに、非特許文献１の拡張マクロブロックのようなより大きな領域が提案されている。つまり、このような拡張マクロブロックにおいてスキップモードやダイレクトモードを適用することができれば、符号化効率の向上にとって望ましい。
【０１４７】
しかしながら、領域が大きくなるほど、１つの領域に含まれる要素の種類が多くなり、スキップモードやダイレクトモードに不向きな要素が含まれる可能性も高くなる。AVC符号化方式等の従来の方式においては、スキップモードやダイレクトモードは、正方形の動きパーティションについてのみ規定されているのみであるので、拡張マクロブロックの一部にスキップモードやダイレクトモードに不向きな画像が含まれている場合、その他の部分がスキップモードやダイレクトモードに好適な画像であっても、スキップモードやダイレクトモードが選択されないか、若しくは、不要に小さな動きパーティションに分ける必要があった。いずれにしても符号化効率の向上への寄与度が低減する恐れがあった。
【０１４８】
これに対して、動き予測・補償部１１５は、長方形スキップ・ダイレクト符号化部１３４によって、長方形動きパーティションに対してもスキップモードやダイレクトモードを適用し、候補モードの１つとして動きベクトル情報を算出し、コスト関数を評価する。
【０１４９】
このようにすることにより、動き予測・補償部１１５は、より大きな領域にスキップモードやダイレクトモードを適用させることができ、符号化効率を向上させることができる。
【０１５０】
［コスト関数算出部］
図９は、図８のコスト関数算出部１３１の主な構成例を示すブロック図である。
【０１５１】
図９に示されるように、コスト関数算出部１３１は、動きベクトル取得部１５１、フラグ生成部１５２、およびコスト関数算出部１５３を有する。
【０１５２】
動きベクトル取得部１５１は、動き探索部１３２、正方形スキップ・ダイレクト符号化部１３３、および長方形スキップ・ダイレクト符号化部１３４のそれぞれから、各候補モードについて動きベクトル情報等を取得する。動きベクトル取得部１５１は、取得した情報を、コスト関数算出部１５３に供給する。
【０１５３】
ただし、動き探索部１３２や長方形スキップ・ダイレクト符号化部１３４から、動きベクトル情報を取得した場合、動きベクトル取得部１５１は、フラグ生成部１５２にその旨を通知し、block_skip_direct_flagを生成させる。
【０１５４】
フラグ生成部１５２は、拡張マクロブロックの長方形のサブマクロブロックを動きパーティションとするモードについて、block_skip_direct_flagを生成する。フラグ生成部１５２は、スキップモード若しくはダイレクトモードの場合、block_skip_direct_flagの値を１とし、それ以外のモードの場合、block_skip_direct_flagの値を０とする。フラグ生成部１５２は、生成したblock_skip_direct_flagをコスト関数算出部１５３に供給する。
【０１５５】
コスト関数算出部１５３は、動きベクトル取得部１５１から供給された情報に基づいて、各候補モードのコスト関数を算出する。フラグ生成部１５２よりblock_skip_direct_flagが供給された場合、そのblock_skip_direct_flagも含めてコスト関数を算出する。
【０１５６】
コスト関数算出部１５３は、算出したコスト関数値やその他の情報をモード判定部１３５に供給する。
【０１５７】
非特許文献１では、図７に示される拡張マクロブロックの第一階層の６４×６４の動きパーティション、６４×３２の動きパーティション、３２×６４の動きパーティション、及び、３２×３２の動きパーティションのそれぞれのcode_numberに、０若しくは１、２、３、８が割り当てられている。６４×６４の動きパーティションについて、スキップモード若しくはダイレクトモードとして符号化される場合、code_numberは０となり、そうでない場合、code_numberは１となる。
【０１５８】
これに対して、フラグ生成部１５２は、６４×３２の動きパーティションと、３２×６４の動きパーティションとについては、block_skip_direct_flagを生成し、シンタクス要素に付加する。それらの動きパーティションをスキップモード若しくはダイレクトモードとして符号化する場合、フラグ生成部１５２は、block_skip_direct_flagの値を１とする。この時、Ｐスライスなら、当該長方形動き補償パーティションについては、動きベクトル情報も、直交変換係数も持たず、スキップモードとなり、また、Ｂスライスなら、動きベクトル情報を持たず、ダイレクトモードとして符号化することになる。
【０１５９】
なお、図７に示された、第一階層と、第二階層の、長方形の動きパーティションに対して、block_skip_direct_flagを用いるようにしてもよい。
【０１６０】
このような符号化処理を可能とすることにより、非特許文献１では用いることが不可能であった、長方形動きパーティションでのスキップモードやダイレクトモードが、拡張されたサイズのブロックにおいて使用可能となり、より高い符号化効率の実現を可能とする。
【０１６１】
なお、モード情報の一部として、スキップモードやダイレクトモードを指定することも可能であるが、例えば、図８の６４×３２動きパーティションに注目すると、上下両方の動きパーティションがスキップモード若しくはダイレクトモードである場合、上部のみの動きパーティションがスキップモード若しくはダイレクトモードである場合、下部のみの動きパーティションがスキップモード若しくはダイレクトモードである場合、どちらの動きパーティションもスキップモード若しくはダイレクトモードではない場合と、現在、１つのcode_numberにより表現されているモードを、４つのcode_numberで表現することになり、出力となる画像圧縮情報におけるビットの増大を招く恐れがある。
【０１６２】
動き予測・補償部１１５は、上述したように、モード情報とは別途、スキップモード若しくはダイレクトモードであるか否かを示すblock_skip_direct_flagを生成し、復号側に伝送させるので、このような不要なビット量の増大を抑制し、符号化効率を向上させることができる。
【０１６３】
［長方形スキップ・ダイレクト符号化部］
図１０は、図８の長方形スキップ・ダイレクト符号化部１３４の主な構成例を示すブロック図である。
【０１６４】
図１０に示されるように長方形スキップ・ダイレクト符号化部１３４は、隣接パーティション定義部１７１および動きベクトル生成部１７２を有する。
【０１６５】
隣接パーティション定義部１７１は、動きベクトルを生成する動きパーティションを決定し、その動きパーティションに隣接する隣接パーティションを定義する。
【０１６６】
上述したように、スキップモードやダイレクトモードにおいては、動きベクトルの生成に、周辺ブロック（隣接パーティション）の動きベクトルが必要になる。動きパーティションが長方形の場合、その位置や形状によって隣接するブロックが異なる。
【０１６７】
隣接パーティション定義部１７１は、処理対象の動きパーティションの位置や形状に関する情報を動きベクトルバッファ１３７に供給し、隣接パーティションの動きベクトル情報を要求する。
【０１６８】
動きベクトルバッファ１３７は、処理対象の動きパーティションの位置や形状に基づいて、その処理対象の動きパーティションに隣接する隣接パーティションの動きベクトル情報を隣接パーティション定義部１７１に供給する。
【０１６９】
隣接パーティション定義部１７１は、動きベクトルバッファ１３７から隣接パーティション動きベクトル情報を取得すると、その隣接パーティション動きベクトル情報と、処理対象の動きパーティションの位置や形状に関する情報を動きベクトル生成部１７２に供給する。
【０１７０】
動きベクトル生成部１７２は、隣接パーティション定義部１７１から供給された各種情報に基づいて、処理対象の動きパーティションの動きベクトルを生成する。動きベクトル生成部１７２は、生成した動きベクトル情報（長方形スキップ・ダイレクト動きベクトル情報）をコスト関数算出部１３１に供給する。
【０１７１】
以上のように、隣接パーティション定義部１７１は、動きパーティションの形状に応じて、正しい隣接パーティションの動きベクトル情報を動きベクトルバッファ１３７から取得するので、長方形スキップ・ダイレクト符号化部１３４は、正しい動きベクトル情報を生成することができる。
【０１７２】
［符号化処理の流れ］
次に、以上のような画像符号化装置１００により実行される各処理の流れについて説明する。最初に、図１１のフローチャートを参照して、符号化処理の流れの例を説明する。
【０１７３】
ステップＳ１０１において、A/D変換部１０１は入力された画像をA/D変換する。ステップＳ１０２において、画面並べ替えバッファ１０２は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
【０１７４】
ステップＳ１０３において、演算部１０３は、ステップＳ１０２の処理により並び替えられた画像と、予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部１１５から、イントラ予測する場合はイントラ予測部１１４から、選択部１１６を介して演算部１０３に供給される。
【０１７５】
差分データは元の画像データに較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
【０１７６】
ステップＳ１０４において、直交変換部１０４は，ステップＳ１０３の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。
【０１７７】
ステップＳ１０５において、量子化部１０５は、ステップＳ１０４の処理により得られた直交変換係数を量子化する。
【０１７８】
ステップＳ１０５の処理により量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップＳ１０６において、逆量子化部１０８は、ステップＳ１０５の処理により生成された量子化された直交変換係数（量子化係数とも称する）を量子化部１０５の特性に対応する特性で逆量子化する。ステップＳ１０７において、逆直交変換部１０９は、ステップＳ１０６の処理により得られた直交変換係数を、直交変換部１０４の特性に対応する特性で逆直交変換する。
【０１７９】
ステップＳ１０８において、演算部１１０は、予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像（演算部１０３への入力に対応する画像）を生成する。ステップＳ１０９においてデブロックフィルタ１１１は、ステップＳ１０８の処理により生成された画像をフィルタリングする。これによりブロック歪みが除去される。
【０１８０】
ステップＳ１１０において、フレームメモリ１１２は、ステップＳ１０９の処理によりブロック歪みが除去された画像を記憶する。なお、フレームメモリ１１２にはデブロックフィルタ１１１によりフィルタ処理されていない画像も演算部１１０から供給され、記憶される。
【０１８１】
ステップＳ１１１において、イントラ予測部１１４は、イントラ予測モードのイントラ予測処理を行う。ステップＳ１１２において、動き予測・補償部１１５は、インター予測モードでの動き予測や動き補償を行うインター動き予測処理を行う。
【０１８２】
ステップＳ１１３において、選択部１１６は、イントラ予測部１１４および動き予測・補償部１１５から出力された各コスト関数値に基づいて、最適予測モードを決定する。つまり、選択部１１６は、イントラ予測部１１４により生成された予測画像と、動き予測・補償部１１５により生成された予測画像のいずれか一方を選択する。
【０１８３】
また、このいずれの予測画像が選択されたかを示す選択情報は、イントラ予測部１１４および動き予測・補償部１１５のうち、予測画像が選択された方に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部１１４は、最適イントラ予測モードを示す情報（すなわち、イントラ予測モード情報）を、可逆符号化部１０６に供給する。
【０１８４】
最適インター予測モードの予測画像が選択された場合、動き予測・補償部１１５は、最適インター予測モードを示す情報と、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部１０６に出力する。最適インター予測モードに応じた情報としては、動きベクトル情報やフラグ情報、参照フレーム情報などがあげられる。
【０１８５】
ステップＳ１１４において、可逆符号化部１０６は、ステップＳ１０５の処理により量子化された変換係数を符号化する。すなわち、差分画像（インターの場合、２次差分画像）に対して、可変長符号化や算術符号化等の可逆符号化が行われる。
【０１８６】
なお、可逆符号化部１０６は、ステップＳ１０５において算出された量子化パラメータを符号化し、符号化データに付加する。
【０１８７】
また、可逆符号化部１０６は、ステップＳ１１３の処理により選択された予測画像の予測モードに関する情報を符号化し、差分画像を符号化して得られる符号化データに付加する。つまり、可逆符号化部１０６は、イントラ予測部１１４から供給されるイントラ予測モード情報、または、動き予測・補償部１１５から供給される最適インター予測モードに応じた情報なども符号化し、符号化データに付加する。
【０１８８】
ステップＳ１１５において蓄積バッファ１０７は、可逆符号化部１０６から出力される符号化データを蓄積する。蓄積バッファ１０７に蓄積された符号化データは、適宜読み出され、伝送路を介して復号側に伝送される。
【０１８９】
ステップＳ１１６においてレート制御部１１７は、ステップＳ１１５の処理により蓄積バッファ１０７に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部１０５の量子化動作のレートを制御する。
【０１９０】
ステップＳ１１６の処理が終了すると、符号化処理が終了される。
【０１９１】
［インター動き予測処理の流れ］
次に、図１２のフローチャートを参照して、図１１のステップＳ１１２において実行されるインター動き予測処理の流れの例を説明する。
【０１９２】
インター動き予測処理が開始されると、動き探索部１３２は、ステップＳ１３１において、正方形動きパーティションの各モードのうち、スキップモードやダイレクトモード以外のモードについて、動き探索を行い、動きベクトル情報を生成する。
【０１９３】
コスト関数算出部１３１の動きベクトル取得部１５１がその動きベクトル情報を取得すると、ステップＳ１３２において、コスト関数算出部１５３は、正方形動きパーティションの、スキップモードおよびダイレクトモードを除く各モードについてコスト関数を算出する。
【０１９４】
ステップＳ１３３において、動き探索部１３２は、長方形動きパーティションの各モードのうち、スキップモードやダイレクトモード以外のモードについて、動き探索を行い、動きベクトル情報を生成する。
【０１９５】
コスト関数算出部１３１の動きベクトル取得部１５１がその動きベクトル情報を取得すると、ステップＳ１３４において、フラグ生成部１５２は、block_skip_direct_flagの値を０として生成する（block_skip_direct_flag = ０）。ステップＳ１３５において、コスト関数算出部１５３は、そのフラグ値も含めてコスト関数を算出する。
【０１９６】
ステップＳ１３６において、正方形スキップ・ダイレクト符号化部１３３は、正方形動きパーティションについて、スキップモードおよびダイレクトモードで動きベクトル情報を生成する。
【０１９７】
コスト関数算出部１３１の動きベクトル取得部１５１がその動きベクトル情報を取得すると、ステップＳ１３７において、コスト関数算出部１５３は、正方形動きパーティションの、スキップモードおよびダイレクトモードについてコスト関数を算出する。
【０１９８】
ステップＳ１３８において、コスト関数算出部１３１は、処理対象のマクロブロックが拡張マクロブロックであるか否かを判定し、拡張マクロブロックであると判定した場合、処理をステップＳ１３９に進める。
【０１９９】
ステップＳ１３９において、長方形スキップ・ダイレクト符号化部１３４は、長方形動きパーティションについて、スキップモードおよびダイレクトモードで動きベクトル情報を生成する。
【０２００】
コスト関数算出部１３１の動きベクトル取得部１５１がその動きベクトル情報を取得すると、ステップＳ１４０において、フラグ生成部１５２は、block_skip_direct_flagの値を１として生成する（block_skip_direct_flag = １）。ステップＳ１４１において、コスト関数算出部１５３は、そのフラグ値も含めてコスト関数を算出する。
【０２０１】
ステップＳ１４１の処理を終了すると、コスト関数算出部１３１は、モード判定部１３５にコスト関数値等を提供し、処理をステップＳ１４２に進める。また、ステップＳ１３８において、処理対象が拡張マクロブロックでないと判定された場合、コスト関数算出部１３１は、ステップＳ１３９乃至ステップＳ１４１の処理を省略し、モード判定部１３５にコスト関数値等を提供し、処理をステップＳ１４２に進める。
【０２０２】
ステップＳ１４２において、モード判定部１３５は、算出された各モードのコスト関数値に基づいて最適なインター予測モードを選択する。ステップＳ１４３において、動き補償部１３６は、選択されたモード（最適インター予測モード）で動き補償を行う。また、動き補償部１３６は、選択されたモードの動きベクトル情報を動きベクトルバッファ１３７に保持させ、インター動き予測処理を終了し、処理を図１１のステップＳ１１２に戻し、それ以降の処理を実行させる。
【０２０３】
［長方形スキップ・ダイレクト動きベクトル情報生成処理の流れ］
次に、図１３のフローチャートを参照して、図１２のステップＳ１３９において実行される長方形スキップ・ダイレクト動きベクトル情報生成処理の流れの例を説明する。
【０２０４】
長方形スキップ・ダイレクト動きベクトル情報生成処理が開始されると、長方形スキップ・ダイレクト符号化部１３４の隣接パーティション定義部１７１は、動きベクトルバッファ１３７と連携して、ステップＳ１６１において隣接パーティションを特定し、ステップＳ１６２においてその動きベクトル情報を取得する。
【０２０５】
ステップＳ１６３において、動きベクトル生成部１７２は、ステップＳ１６２において取得された動きベクトルを用いて、スキップモード若しくはダイレクトモードで動きベクトル情報（長方形スキップ・ダイレクト動きベクトル情報）を生成する。ステップＳ１６３の処理を終了すると、長方形スキップ・ダイレクト符号化部１３４は、長方形スキップ・ダイレクト動きベクトル情報生成処理を終了し、処理を図１２のステップＳ１３９に戻し、それ以降の処理を実行させる。
【０２０６】
以上のように、画像符号化装置１００は、動き予測・補償部１１５において、イントラ予測モードの１つとして、拡張マクロブロックの長方形のサブマクロブロックを動きパーティションとし、スキップモードやダイレクトモードで動き予測・補償を行う。
【０２０７】
このようにすることにより、より大きな領域でスキップモードやダイレクトモードを適用することができ、符号化効率を向上させることができる。
【０２０８】
また、画像符号化装置１００は、このように拡張マクロブロックの長方形のサブマクロブロックを動きパーティションとする場合、code_numberとは別に、スキップモードやダイレクトモードであるか否かを示すblock_skip_direct_flagを生成し、それをコードストリームの復号側に提供する。
【０２０９】
このようにすることにより、code_numberのビットの増大による符号化効率の低減を抑制することができる。
【０２１０】
＜２．第２の実施の形態＞
［画像復号装置］
図１４は、本発明を適用した画像復号装置の主な構成例を示すブロック図である。図１４に示される画像復号装置２００は、図７の画像符号化装置１００に対応する復号装置である。
【０２１１】
画像符号化装置１００より符号化された符号化データは、所定の伝送路を介して、この画像符号化装置１００に対応する画像復号装置２００に伝送され、復号されるものとする。
【０２１２】
図１４に示されるように、画像復号装置２００は、蓄積バッファ２０１、可逆復号部２０２、逆量子化部２０３、逆直交変換部２０４、演算部２０５、デブロックフィルタ２０６、画面並べ替えバッファ２０７、およびD/A変換部２０８を有する。また、画像復号装置２００は、フレームメモリ２０９、選択部２１０、イントラ予測部２１１、動き予測・補償部２１２、および選択部２１３を有する。
【０２１３】
蓄積バッファ２０１は、伝送されてきた符号化データを蓄積する。この符号化データは、画像符号化装置１００により符号化されたものである。可逆復号部２０２は、蓄積バッファ２０１から所定のタイミングで読み出された符号化データを、図７の可逆符号化部１０６の符号化方式に対応する方式で復号する。
【０２１４】
逆量子化部２０３は、可逆復号部２０２により復号されて得られた係数データ（量子化係数）を、図７の量子化部１０５の量子化方式に対応する方式で逆量子化する。
【０２１５】
逆量子化部２０３は、逆量子化された係数データ、つまり、直交変換係数を、逆直交変換部２０４に供給する。逆直交変換部２０４は、図７の直交変換部１０４の直交変換方式に対応する方式で、その直交変換係数を逆直交変換し、画像符号化装置１００において直交変換される前の残差データに対応する復号残差データを得る。
【０２１６】
逆直交変換されて得られた復号残差データは、演算部２０５に供給される。また、演算部２０５には、選択部２１３を介して、イントラ予測部２１１若しくは動き予測・補償部２１２から予測画像が供給される。
【０２１７】
演算部２０５は、その復号残差データと予測画像とを加算し、画像符号化装置１００の演算部１０３により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部２０５は、その復号画像データをデブロックフィルタ２０６に供給する。
【０２１８】
デブロックフィルタ２０６は、供給された復号画像のブロック歪を除去した後、画面並べ替えバッファ２０７に供給する。
【０２１９】
画面並べ替えバッファ２０７は、画像の並べ替えを行う。すなわち、図７の画面並べ替えバッファ１０２により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部２０８は、画面並べ替えバッファ２０７から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
【０２２０】
デブロックフィルタ２０６の出力は、さらに、フレームメモリ２０９に供給される。
【０２２１】
フレームメモリ２０９、選択部２１０、イントラ予測部２１１、動き予測・補償部２１２、および選択部２１３は、図７の画像符号化装置１００のフレームメモリ１１２、選択部１１３、イントラ予測部１１４、動き予測・補償部１１５、および選択部１１６にそれぞれ対応する。
【０２２２】
選択部２１０は、インター処理される画像と参照される画像をフレームメモリ２０９から読み出し、動き予測・補償部２１２に供給する。また、選択部２１０は、イントラ予測に用いられる画像をフレームメモリ２０９から読み出し、イントラ予測部２１１に供給する。
【０２２３】
イントラ予測部２１１には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部２０２から適宜供給される。イントラ予測部２１１は、この情報に基づいて、フレームメモリ２０９から取得した参照画像から予測画像を生成し、生成した予測画像を選択部２１３に供給する。
【０２２４】
動き予測・補償部２１２は、ヘッダ情報を復号して得られた情報（予測モード情報、動きベクトル情報、参照フレーム情報、フラグ、および各種パラメータ等）を可逆復号部２０２から取得する。
【０２２５】
動き予測・補償部２１２は、可逆復号部２０２から供給されるそれらの情報に基づいて、フレームメモリ２０９から取得した参照画像から予測画像を生成し、生成した予測画像を選択部２１３に供給する。
【０２２６】
選択部２１３は、動き予測・補償部２１２またはイントラ予測部２１１により生成された予測画像を選択し、演算部２０５に供給する。
【０２２７】
［動き予測・補償部］
図１５は、図１４の動き予測・補償部２１２の主な構成例を示すブロック図である。
【０２２８】
図１５に示されるように、動き予測・補償部２１２は、動きベクトルバッファ２３１、モードバッファ２３２、正方形スキップ・ダイレクト復号部２３３、長方形スキップ・ダイレクト復号部２３４、および動き補償部２３５を有する。
【０２２９】
動きベクトルバッファ２３１は、可逆復号部２０２において復号された動きベクトル情報を取得し、保持する。モードバッファ２３２は、可逆復号部２０２において復号されたモード情報やblock_skip_direct_flag等を保持する。
【０２３０】
モードバッファ２３２は、取得したモード情報やblock_skip_direct_flagに基づいて、スキップモード若しくはダイレクトモードでない場合、動きベクトルバッファ２３１に動きベクトル情報を動き補償部２３５に供給するように指示を行う。動きベクトルバッファ２３１は、その指示に従って処理対象の動きパーティションの動きベクトル情報を動き補償部２３５に供給する。
【０２３１】
また、取得したモード情報やblock_skip_direct_flagに基づいて、正方形動きパーティションのスキップモード若しくはダイレクトモードである場合、モードバッファ２３２は、その旨を通知する正方形スキップ・ダイレクトモード情報を正方形スキップ・ダイレクト復号部２３３に供給する。
【０２３２】
正方形スキップ・ダイレクト復号部２３３は、正方形スキップ・ダイレクトモード情報に含まれる処理対象の動きパーティションの位置や形状を動きベクトルバッファ２３１に供給し、その処理対象の動きパーティションの動きベクトルを生成するのに必要な隣接パーティションの動きベクトル情報を要求する。
【０２３３】
動きベクトルバッファ２３１は、要求に従って隣接パーティションを特定し、その動きベクトル情報を正方形スキップ・ダイレクト復号部２３３に供給する。正方形スキップ・ダイレクト復号部２３３は、動きベクトルバッファ２３１から取得した動きベクトルを用いて、スキップモード若しくはダイレクトモードで処理対象の動きパーティションの動きベクトルを生成し、その正方形スキップ・ダイレクト動きベクトル情報を動き補償部２３５に供給する。
【０２３４】
さらに、取得したモード情報やblock_skip_direct_flagに基づいて、長方形動きパーティションのスキップモード若しくはダイレクトモードである場合、モードバッファ２３２は、その旨を通知する長方形スキップ・ダイレクトモード情報を長方形スキップ・ダイレクト復号部２３４に供給する。
【０２３５】
長方形スキップ・ダイレクト復号部２３４は、長方形スキップ・ダイレクトモード情報に含まれる処理対象の動きパーティションの位置や形状を動きベクトルバッファ２３１に供給し、その処理対象の動きパーティションの動きベクトルを生成するのに必要な隣接パーティションの動きベクトル情報を要求する。
【０２３６】
動きベクトルバッファ２３１は、要求に従って隣接パーティションを特定し、その動きベクトル情報を長方形スキップ・ダイレクト復号部２３４に供給する。長方形スキップ・ダイレクト復号部２３４は、動きベクトルバッファ２３１から取得した動きベクトルを用いて、スキップモード若しくはダイレクトモードで処理対象の動きパーティションの動きベクトルを生成し、その長方形スキップ・ダイレクト動きベクトル情報を動き補償部２３５に供給する。
【０２３７】
動き補償部２３５は、供給された動きベクトル情報を用いてフレームメモリ２０９から参照画像情報を取得し、それを用いて予測画像を生成する。動き補償部２３５は、生成した予測画像を、インター予測モードの予測画像として選択部２１３に供給する（予測画像情報）。
【０２３８】
［長方形スキップ・ダイレクト復号部］
図１６は、図１５の長方形スキップ・ダイレクト復号部２３４の主な構成例を示すブロック図である。図１６に示されるように長方形スキップ・ダイレクト復号部２３４は、隣接パーティション定義部２５１および動きベクトル生成部２５２を有する。
【０２３９】
隣接パーティション定義部２５１は、モードバッファ２３２から長方形スキップ・ダイレクトモード情報を取得すると、処理対象の動きパーティションの位置や形状に関する情報を動きベクトルバッファ２３１に供給し、処理対象の動きパーティションの動きベクトル情報を生成するのに必要な、隣接パーティションの動きベクトル情報を要求する。
【０２４０】
隣接パーティション定義部２５１は、動きベクトルバッファ２３１から隣接パーティション動きベクトル情報を取得すると、それを動きベクトル生成部２５２に供給する。
【０２４１】
動きベクトル生成部２５２は、供給された隣接パーティションの動きベクトルを用いて、スキップモード若しくはダイレクトモードで、処理対象の動きパーティションの動きベクトル情報を生成する。
【０２４２】
動きベクトル生成部２５２は、生成した動きベクトルを含む長方形スキップ・ダイレクト動きベクトル情報を動き補償部２３５に供給する。
【０２４３】
以上のように、画像復号装置２００は、画像符号化装置１００が符号化したコードストリームを、画像符号化装置１００の符号化方法に対応する方法で復号する。動き予測・補償部２１２は、モード情報やblock_skip_direct_flagに基づいて、長方形動きパーティションのスキップモードやダイレクトモードを検出し、長方形スキップ・ダイレクト復号部２３４において動きベクトルを生成する。つまり、画像復号装置２００は、長方形動きパーティションに対してもスキップモードやダイレクトモードを適用したコードストリームを正しく復号することができる。
【０２４４】
これにより、画像復号装置２００は、符号化効率を向上させることができる。
【０２４５】
［復号処理の流れ］
次に、以上のような画像復号装置２００により実行される各処理の流れについて説明する。最初に、図１７のフローチャートを参照して、復号処理の流れの例を説明する。
【０２４６】
復号処理が開始されると、ステップＳ２０１において、蓄積バッファ２０１は、伝送されてきた符号化データを蓄積する。ステップＳ２０２において、可逆復号部２０２は、蓄積バッファ２０１から供給される符号化データを復号する。すなわち、図７の可逆符号化部１０６により符号化されたＩピクチャ、Ｐピクチャ、並びにＢピクチャが復号される。
【０２４７】
このとき、動きベクトル情報、参照フレーム情報、予測モード情報（イントラ予測モード、またはインター予測モード）、並びに、フラグや量子化パラメータ等の情報も復号される。
【０２４８】
予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部２１１に供給される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報は、動き予測・補償部２１２に供給される。
【０２４９】
ステップＳ２０３において、逆量子化部２０３は、可逆復号部２０２により復号されて得られた、量子化された直交変換係数を、図７の量子化部１０５による量子化処理に対応する方法で逆量子化する。ステップＳ２０４において逆直交変換部２０４は逆量子化部２０３により逆量子化されて得られた直交変換係数を、図７の直交変換部１０４による直交変換処理に対応する方法で逆直交変換する。これにより図７の直交変換部１０４の入力（演算部１０３の出力）に対応する差分情報が復号されたことになる。
【０２５０】
ステップＳ２０５において、演算部２０５は、ステップＳ２０４の処理により得られた差分情報に、予測画像を加算する。これにより元の画像データが復号される。
【０２５１】
ステップＳ２０６において、デブロックフィルタ２０６は、ステップＳ２０５の処理により得られた復号画像を適宜フィルタリングする。これにより適宜復号画像からブロック歪みが除去される。
【０２５２】
ステップＳ２０７において、フレームメモリ２０９は、フィルタリングされた復号画像を記憶する。
【０２５３】
ステップＳ２０８において、イントラ予測部２１１、または動き予測・補償部２１２は、可逆復号部２０２から供給される予測モード情報に対応して、それぞれ画像の予測処理を行う。
【０２５４】
すなわち、可逆復号部２０２からイントラ予測モード情報が供給された場合、イントラ予測部２１１は、イントラ予測モードのイントラ予測処理を行う。また、可逆復号部２０２からインター予測モード情報が供給された場合、動き予測・補償部２１２は、インター予測モードの動き予測処理を行う。
【０２５５】
ステップＳ２０９において、選択部２１３は予測画像を選択する。すなわち、選択部２１３には、イントラ予測部２１１により生成された予測画像、若しくは、動き予測・補償部２１２により生成された予測画像が供給される。選択部２１３は、その予測画像が供給された側を選択し、その予測画像を演算部２０５に供給する。この予測画像は、ステップＳ２０５の処理により差分情報に加算される。
【０２５６】
ステップＳ２１０において、画面並べ替えバッファ２０７は、復号画像データのフレームの並べ替えを行う。すなわち、復号画像データの、画像符号化装置１００の画面並べ替えバッファ１０２（図７）により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
【０２５７】
ステップＳ２１１において、D/A変換部２０８は、画面並べ替えバッファ２０７においてフレームが並べ替えられた復号画像データをD/A変換する。この復号画像データが図示せぬディスプレイに出力され、その画像が表示される。
【０２５８】
［予測処理の流れ］
次に、図１８のフローチャートを参照して、図１７のステップＳ２０８において実行される予測処理の詳細な流れの例を説明する。
【０２５９】
予測処理が開始されると、可逆復号部２０２は、ステップＳ２３１において、復号した予測モード情報に基づいて、符号化データがイントラ符号化されているか否かを判定する。
【０２６０】
イントラ符号化されていると判定された場合、可逆復号部２０２は、処理をステップＳ２３２に進める。
【０２６１】
ステップＳ２３２において、イントラ予測部２１１は、可逆復号部２０２より、イントラ予測モード情報等、予測画像の生成に必要な情報を取得する。ステップＳ２３３において、イントラ予測部２１１は、フレームメモリ２０９から参照画像を取得し、イントラ予測モードのイントラ予測処理を行って、予測画像を生成する。
【０２６２】
予測画像を生成すると、イントラ予測部２１１は、生成した予測画像を、選択部２１３を介して演算部２０５に供給し、予測処理を終了して、処理を図１７のステップＳ２０８に戻し、ステップＳ２０９以降の処理を実行させる。
【０２６３】
また、図１８のステップＳ２３１において、インター符号化されていると判定された場合、可逆復号部２０２は、処理をステップＳ２３４に進める。
【０２６４】
ステップＳ２３４において、動き予測・補償部２１２は、インター予測処理を行い、符号化の際に採用されたインター予測モードで予測画像を生成する。
【０２６５】
予測画像を生成すると、動き予測・補償部２１２は、生成した予測画像を、選択部２１３を介して演算部２０５に供給し、予測処理を終了して、処理を図１７のステップＳ２０８に戻し、ステップＳ２０９以降の処理を実行させる。
【０２６６】
［インター予測処理の流れ］
次に、図１９のフローチャートを参照して、図１８のステップＳ２３４において実行されるインター予測処理の流れの例を説明する。
【０２６７】
インター予測処理が開始されると、ステップＳ２５１において可逆復号部２０２はモード情報を復号する。ステップＳ２５２において、モードバッファ２３２は、復号されたモード情報から、処理対象が長方形動きパーティションであるか否かを判定する。長方形動きパーティションであると判定された場合、モードバッファ２３２は、処理をステップＳ２５３に進める。
【０２６８】
ステップＳ２５３において、可逆復号部２０２は、block_skip_direct_flagを復号する。ステップＳ２５４において、モードバッファ２３２は、block_skip_direct_flagの値が１であるか否かを判定する。block_skip_direct_flagが１であると判定した場合、モードバッファ２３２は、処理をステップＳ２５５に進める。
【０２６９】
ステップＳ２５５において、長方形スキップ・ダイレクト復号部２３４は、隣接パーティションの動きベクトルから動きベクトルを生成する長方形スキップ・ダイレクト動きベクトル情報生成処理を行う。この長方形スキップ・ダイレクト動きベクトル情報生成処理は、図１３のフローチャートを参照して説明した場合と同様に行われる。
【０２７０】
長方形スキップ・ダイレクト動きベクトル情報を生成すると、長方形スキップ・ダイレクト復号部２３４は、処理をステップＳ２５７に進める。
【０２７１】
また、ステップＳ２５２において、処理対象が長方形動きパーティションでないと判定された場合、モードバッファ２３２は、処理をステップＳ２５６に進める。さらに、ステップＳ２５４において、block_skip_direct_flagが０であると判定した場合、モードバッファ２３２は、処理をステップＳ２５６に進める。
【０２７２】
ステップＳ２５６において、動きベクトルバッファ２３１若しくは正方形スキップ・ダイレクト復号部２３３は、指定されたモードで動きベクトル情報を生成する。実際には、スキップモード若しくはダイレクトモード以外の場合、動きベクトルバッファ２３１が、復号された処理対象の動きパーティションの動きベクトル情報を選択し、スキップモード若しくはダイレクトモードの場合、正方形スキップ・ダイレクト復号部２３３が、隣接パーティションの動きベクトルから、処理対象の動きパーティションの動きベクトル情報を生成する。
【０２７３】
ステップＳ２５６の処理を終了すると、動きベクトルバッファ２３１若しくは正方形スキップ・ダイレクト復号部２３３は、処理をステップＳ２５７に進める。
【０２７４】
ステップＳ２５７において、動き補償部２３５は、用意された動きベクトル情報を用いて予測画像を生成する。
【０２７５】
ステップＳ２５７の処理を終了すると、動き補償部２３５は、インター予測処理を終了し、処理を図１８のステップＳ２３４に戻し、予測処理を終了させ、図１７のステップＳ２０８に処理を戻させ、それ以降の処理を実行させる。
【０２７６】
以上のようにすることにより、画像復号装置２００は、画像符号化装置１００により符号化されたコードストリームを正しく復号することができる。したがって、画像復号装置２００は、符号化効率を向上させることができる。
【０２７７】
なお、第１の実施の形態および第２の実施の形態においては、拡張マクロブロックについてのみ、長方形の動きパーティションにスキップモードやダイレクトモードを適用するように説明したが、これに限らない。
【０２７８】
例えば、３２×３２画素や６４×６４画素以上のサイズのマクロブロックにのみ、長方形の動きパーティションにスキップモードやダイレクトモードを適用するようにしてもよいし、８×８画素や４×４画素以上のサイズのマクロブロックにのみ、長方形の動きパーティションにスキップモードやダイレクトモードを適用するようにしてもよいし、全てのサイズのマクロブロックにおいて、長方形の動きパーティションにスキップモードやダイレクトモードを適用するようにしてもよい。
【０２７９】
また、第１の実施の形態および第２の実施の形態においては、マクロブロックを２分割する長方形のサブマクロブロックを動きパーティションとする場合のみ、スキップモードやダイレクトモードを適用するように説明したが、これに限らない。マクロブロックを３分割以上する長方形のサブマクロブロックを動きパーティションとする場合についても、スキップモードやダイレクトモードを適用するようにしてもよい。
【０２８０】
更に、非正方形の動きパーティションであれば、どのような形状のパーティションにも適用することができる。例えば、Ken McCann, Woo-Jin Han, Il-Koo Kim "Samsung’s Response to the Call for Proposals on Video Compression Technology", JCTVC-A124, 2010年4月（以下、非特許文献２と称する）においては、図２０に示されるような、非対称分割による動きパーティションモードが提案されている。このような非対称分割による２分割動きパーティションを、上述した長方形動きパーティションとし、スキップモードやダイレクトモードを適用するようにしてもよい。
【０２８１】
また、Marta Karczewicz, Peisong Chen, Rajan Joshi, Xianglin Wang, Wei-Jung Chien, Rahul Panchal,"Video coding technology proposal by Qualcomm Inc.", JCTVC-A121, 2010年4月（以下、非特許文献３と称する）においては、図２１に示されるように、θとρを符号化パラメータとして、斜めに分割する動き補償パーティションモードが提案されている。このような斜め分割による２分割動きパーティションを、上述した長方形動きパーティションとし、スキップモードやダイレクトモードを適用するようにしてもよい。
【０２８２】
なお、上述したように、一般的には、スキップモードやダイレクトモードはより大きな領域に適用するほど、符号化効率の向上により大きく寄与することになる。換言するに、あまり小さい領域にスキップモードやダイレクトモードを適用しても符号化効率の向上にあまり寄与しない。そこで、スキップモードやダイレクトモードを適用する領域の大きさに制限を設け、所定の閾値より大きな領域についてのみ適用するようにしてもよい。
【０２８３】
特に、図２０や図２１に示されるような分割方法の場合、極めて小さい領域が生成されることが考えられる。したがって、長方形動きパーティションとする領域の大きさに制限（最小値）を設けることにより、そのような領域にスキップモードやダイレクトモードを適用しないようにし、符号化処理の負荷を低減させるようにすることができる。
【０２８４】
ところで、図３に示されたような、メディアン予測を用いた動きベクトルの符号化を改善するため、Jungyoup Yang, Kwanghyun Won, Byeungwoo Jeon, Hayoon Kim, ”Motion Vector Coding with Optimal PMV Selection”, VCEG-AI22, 2008年7月（以下、非特許文献４と称する）では、以下に述べるような方法が提案されている。
【０２８５】
すなわち、AVC符号化方式において定義されている、メディアン予測により求められる”Spatial Predictor（空間予測）”に加え、以下に述べる”Temporal Predictor（時間予測）”及び”Spatio-Temporal Predictor（時間と空間の予測）”のどれかを、予測動きベクトル情報として、適応的に用いることが可能にするものである。
【０２８６】
すなわち、図２２において、”mvcol”を、当該ブロックに対するco-locatedブロック（参照画像において、xy座標が、当該ブロックと同じであるブロック）に対する動きベクトル情報、mvtk（ｋ＝０乃至８）をその周辺ブロックの動きベクトル情報であるとして、それぞれの予測動きベクトル情報(Predictor)は、以下の式（１７）乃至（１９）により定義される。
【０２８７】
Temporal Predictor：
【数１４】
2012019447.tif 000016
・・・（１７）
【数１５】
2012019447.tif 000017
・・・（１８）
Spatio-Temporal Predictor：
【数１６】
2012019447.tif 000018
・・・（１９）
【０２８８】
画像符号化装置１００においては、それぞれのブロックに関して、それぞれの予測動きベクトル情報を用いた場合のコスト関数が算出され、最適な予測動きベクトル情報の選択が行われる。画像圧縮情報においては、それぞれのブロックに対し、どの予測動きベクトル情報が用いられたかに関する情報を示すflagが伝送される。
【０２８９】
このような、図２２に示されたような、Motion Vector Competitionによる動きベクトル符号化を行う際に、本発明を適用することも可能である。
【０２９０】
以上においては、AVCに準ずる方式による符号化を行う画像符号化装置、並びに、AVCに準ずる方式による復号を行う画像復号装置を例にして説明してきたが、本発明の適用範囲はこれに限らず、スキップモードやダイレクトモードの動き予測・補償を伴う符号化処理を行うあらゆる画像符号化装置並びに画像復号装置に適用することが可能である。
【０２９１】
また、以上に説明したblock_skip_direct_flag等の情報は、例えば、符号化データの任意の位置に付加されるようにしてもよいし、符号化データとは別に復号側に伝送されるようにしてもよい。例えば、可逆符号化部１０６が、これらの情報を、ビットストリームにシンタックスとして記述するようにしてもよい。また、可逆符号化部１０６が、これらの情報を、補助情報として所定の領域に格納して伝送するようにしてもよい。例えば、これらの情報が、SEI（Suplemental Enhancement Information）等のパラメータセット（例えばシーケンスやピクチャのヘッダ等）に格納されるようにしてもよい。
【０２９２】
また、可逆符号化部１０６が、これらの情報を、符号化データとは別に（別のファイルとして）、画像符号化装置１００から画像復号装置２００に伝送させるようにしてもよい。その場合、これらの情報と符号化データとの対応関係を明確にする（復号側で把握することができるようにする）必要があるが、その方法は任意である。例えば、別途、対応関係を示すテーブル情報を作成してもよいし、対応先のデータを示すリンク情報を互いのデータに埋め込むなどしてもよい。
【０２９３】
＜３．第３の実施の形態＞
［パーソナルコンピュータ］
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図２２に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
【０２９４】
図２２において、パーソナルコンピュータ５００のCPU（Central Processing Unit）５０１は、ROM（Read Only Memory）５０２に記憶されているプログラム、または記憶部５１３からRAM（Random Access Memory）５０３にロードされたプログラムに従って各種の処理を実行する。RAM５０３にはまた、CPU５０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０２９５】
CPU５０１、ROM５０２、およびRAM５０３は、バス５０４を介して相互に接続されている。このバス５０４にはまた、入出力インタフェース５１０も接続されている。
【０２９６】
入出力インタフェース５１０には、キーボード、マウスなどよりなる入力部５１１、CRT（Cathode Ray Tube）やLCD（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部５１２、ハードディスクなどより構成される記憶部５１３、モデムなどより構成される通信部５１４が接続されている。通信部５１４は、インターネットを含むネットワークを介しての通信処理を行う。
【０２９７】
入出力インタフェース５１０にはまた、必要に応じてドライブ５１５が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア５２１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部５１３にインストールされる。
【０２９８】
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０２９９】
この記録媒体は、例えば、図２２に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc - Read Only Memory）,DVD（Digital Versatile Disc）を含む）、光磁気ディスク（MD（Mini Disc）を含む）、若しくは半導体メモリなどよりなるリムーバブルメディア５２１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM５０２や、記憶部５１３に含まれるハードディスクなどで構成される。
【０３００】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０３０１】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３０２】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表すものである。
【０３０３】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。つまり、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【０３０４】
例えば、上述した画像符号化装置や画像復号装置は、任意の電子機器に適用することができる。以下にその例について説明する。
【０３０５】
＜４．第４の実施の形態＞
［テレビジョン受像機］
図２３は、本発明を適用した画像復号装置２００を用いるテレビジョン受像機の主な構成例を示すブロック図である。
【０３０６】
図２３に示されるテレビジョン受像機１０００は、地上波チューナ１０１３、ビデオデコーダ１０１５、映像信号処理回路１０１８、グラフィック生成回路１０１９、パネル駆動回路１０２０、および表示パネル１０２１を有する。
【０３０７】
地上波チューナ１０１３は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ１０１５に供給する。ビデオデコーダ１０１５は、地上波チューナ１０１３から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路１０１８に供給する。
【０３０８】
映像信号処理回路１０１８は、ビデオデコーダ１０１５から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路１０１９に供給する。
【０３０９】
グラフィック生成回路１０１９は、表示パネル１０２１に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路１０２０に供給する。また、グラフィック生成回路１０１９は、項目の選択などにユーザにより利用される画面を表示するための映像データ（グラフィック）を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路１０２０に供給するといった処理も適宜行う。
【０３１０】
パネル駆動回路１０２０は、グラフィック生成回路１０１９から供給されたデータに基づいて表示パネル１０２１を駆動し、番組の映像や上述した各種の画面を表示パネル１０２１に表示させる。
【０３１１】
表示パネル１０２１はLCD（Liquid Crystal Display）などよりなり、パネル駆動回路１０２０による制御に従って番組の映像などを表示させる。
【０３１２】
また、テレビジョン受像機１０００は、音声A/D（Analog/Digital)変換回路１０１４、音声信号処理回路１０２２、エコーキャンセル／音声合成回路１０２３、音声増幅回路１０２４、およびスピーカ１０２５も有する。
【０３１３】
地上波チューナ１０１３は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ１０１３は、取得した音声信号を音声A/D変換回路１０１４に供給する。
【０３１４】
音声A/D変換回路１０１４は、地上波チューナ１０１３から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路１０２２に供給する。
【０３１５】
音声信号処理回路１０２２は、音声A/D変換回路１０１４から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル／音声合成回路１０２３に供給する。
【０３１６】
エコーキャンセル／音声合成回路１０２３は、音声信号処理回路１０２２から供給された音声データを音声増幅回路１０２４に供給する。
【０３１７】
音声増幅回路１０２４は、エコーキャンセル／音声合成回路１０２３から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ１０２５から出力させる。
【０３１８】
さらに、テレビジョン受像機１０００は、デジタルチューナ１０１６およびMPEGデコーダ１０１７も有する。
【０３１９】
デジタルチューナ１０１６は、デジタル放送（地上デジタル放送、BS（Broadcasting Satellite）／CS（Communications Satellite）デジタル放送）の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS（Moving Picture Experts Group-Transport Stream）を取得し、それをMPEGデコーダ１０１７に供給する。
【０３２０】
MPEGデコーダ１０１７は、デジタルチューナ１０１６から供給されたMPEG-TSに施されているスクランブルを解除し、再生対象（視聴対象）になっている番組のデータを含むストリームを抽出する。MPEGデコーダ１０１７は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路１０２２に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路１０１８に供給する。また、MPEGデコーダ１０１７は、MPEG-TSから抽出したEPG（Electronic Program Guide)データを図示せぬ経路を介してCPU１０３２に供給する。
【０３２１】
テレビジョン受像機１０００は、このように映像パケットをデコードするMPEGデコーダ１０１７として、上述した画像復号装置２００を用いる。なお、放送局等より送信されるMPEG-TSは、画像符号化装置１００によって符号化されている。
【０３２２】
MPEGデコーダ１０１７は、画像復号装置２００の場合と同様に、モード情報やblock_skip_direct_flagに基づいて、長方形動きパーティションのスキップモードやダイレクトモードを検出し、それぞれのモードで復号処理を行うことができる。したがって、MPEGデコーダ１０１７は、長方形動きパーティションに対してスキップモードやダイレクトモードを適用したコードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０３２３】
MPEGデコーダ１０１７から供給された映像データは、ビデオデコーダ１０１５から供給された映像データの場合と同様に、映像信号処理回路１０１８において所定の処理が施され、グラフィック生成回路１０１９において、生成された映像データ等が適宜重畳され、パネル駆動回路１０２０を介して表示パネル１０２１に供給され、その画像が表示される。
【０３２４】
MPEGデコーダ１０１７から供給された音声データは、音声A/D変換回路１０１４から供給された音声データの場合と同様に、音声信号処理回路１０２２において所定の処理が施され、エコーキャンセル／音声合成回路１０２３を介して音声増幅回路１０２４に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ１０２５から出力される。
【０３２５】
また、テレビジョン受像機１０００は、マイクロホン１０２６、およびA/D変換回路１０２７も有する。
【０３２６】
A/D変換回路１０２７は、音声会話用のものとしてテレビジョン受像機１０００に設けられるマイクロホン１０２６により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル／音声合成回路１０２３に供給する。
【０３２７】
エコーキャンセル／音声合成回路１０２３は、テレビジョン受像機１０００のユーザ（ユーザＡ）の音声のデータがA/D変換回路１０２７から供給されている場合、ユーザＡの音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路１０２４を介してスピーカ１０２５より出力させる。
【０３２８】
さらに、テレビジョン受像機１０００は、音声コーデック１０２８、内部バス１０２９、SDRAM（Synchronous Dynamic Random Access Memory)１０３０、フラッシュメモリ１０３１、CPU１０３２、USB（Universal Serial Bus) I/F１０３３、およびネットワークI/F１０３４も有する。
【０３２９】
A/D変換回路１０２７は、音声会話用のものとしてテレビジョン受像機１０００に設けられるマイクロホン１０２６により取り込まれたユーザの音声の信号を受信し、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック１０２８に供給する。
【０３３０】
音声コーデック１０２８は、A/D変換回路１０２７から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス１０２９を介してネットワークI/F１０３４に供給する。
【０３３１】
ネットワークI/F１０３４は、ネットワーク端子１０３５に装着されたケーブルを介してネットワークに接続される。ネットワークI/F１０３４は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック１０２８から供給された音声データを送信する。また、ネットワークI/F１０３４は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子１０３５を介して受信し、それを、内部バス１０２９を介して音声コーデック１０２８に供給する。
【０３３２】
音声コーデック１０２８は、ネットワークI/F１０３４から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル／音声合成回路１０２３に供給する。
【０３３３】
エコーキャンセル／音声合成回路１０２３は、音声コーデック１０２８から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路１０２４を介してスピーカ１０２５より出力させる。
【０３３４】
SDRAM１０３０は、CPU１０３２が処理を行う上で必要な各種のデータを記憶する。
【０３３５】
フラッシュメモリ１０３１は、CPU１０３２により実行されるプログラムを記憶する。フラッシュメモリ１０３１に記憶されているプログラムは、テレビジョン受像機１０００の起動時などの所定のタイミングでCPU１０３２により読み出される。フラッシュメモリ１０３１には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
【０３３６】
例えば、フラッシュメモリ１０３１には、CPU１０３２の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ１０３１は、例えばCPU１０３２の制御により、そのMPEG-TSを、内部バス１０２９を介してMPEGデコーダ１０１７に供給する。
【０３３７】
MPEGデコーダ１０１７は、デジタルチューナ１０１６から供給されたMPEG-TSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機１０００は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ１０１７を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
【０３３８】
また、テレビジョン受像機１０００は、リモートコントローラ１０５１から送信される赤外線信号を受光する受光部１０３７も有する。
【０３３９】
受光部１０３７は、リモートコントローラ１０５１からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU１０３２に出力する。
【０３４０】
CPU１０３２は、フラッシュメモリ１０３１に記憶されているプログラムを実行し、受光部１０３７から供給される制御コードなどに応じてテレビジョン受像機１０００の全体の動作を制御する。CPU１０３２とテレビジョン受像機１０００の各部は、図示せぬ経路を介して接続されている。
【０３４１】
USB I/F１０３３は、USB端子１０３６に装着されたUSBケーブルを介して接続される、テレビジョン受像機１０００の外部の機器との間でデータの送受信を行う。ネットワークI/F１０３４は、ネットワーク端子１０３５に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
【０３４２】
テレビジョン受像機１０００は、MPEGデコーダ１０１７として画像復号装置２００を用いることにより、アンテナを介して受信する放送波信号や、ネットワークを介して取得するコンテンツデータが、長方形動きパーティションに対してスキップモードやダイレクトモードを適用して符号化されている場合であっても、コードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０３４３】
＜５．第５の実施の形態＞
［携帯電話機］
図２４は、本発明を適用した画像符号化装置１００および画像復号装置２００を用いる携帯電話機の主な構成例を示すブロック図である。
【０３４４】
図２４に示される携帯電話機１１００は、各部を統括的に制御するようになされた主制御部１１５０、電源回路部１１５１、操作入力制御部１１５２、画像エンコーダ１１５３、カメラI/F部１１５４、LCD制御部１１５５、画像デコーダ１１５６、多重分離部１１５７、記録再生部１１６２、変復調回路部１１５８、および音声コーデック１１５９を有する。これらは、バス１１６０を介して互いに接続されている。
【０３４５】
また、携帯電話機１１００は、操作キー１１１９、CCD（Charge Coupled Devices）カメラ１１１６、液晶ディスプレイ１１１８、記憶部１１２３、送受信回路部１１６３、アンテナ１１１４、マイクロホン（マイク）１１２１、およびスピーカ１１１７を有する。
【０３４６】
電源回路部１１５１は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機１１００を動作可能な状態に起動する。
【０３４７】
携帯電話機１１００は、CPU、ROMおよびRAM等でなる主制御部１１５０の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
【０３４８】
例えば、音声通話モードにおいて、携帯電話機１１００は、マイクロホン（マイク）１１２１で集音した音声信号を、音声コーデック１１５９によってデジタル音声データに変換し、これを変復調回路部１１５８でスペクトラム拡散処理し、送受信回路部１１６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機１１００は、その変換処理により得られた送信用信号を、アンテナ１１１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（音声信号）は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
【０３４９】
また、例えば、音声通話モードにおいて、携帯電話機１１００は、アンテナ１１１４で受信した受信信号を送受信回路部１１６３で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部１１５８でスペクトラム逆拡散処理し、音声コーデック１１５９によってアナログ音声信号に変換する。携帯電話機１１００は、その変換して得られたアナログ音声信号をスピーカ１１１７から出力する。
【０３５０】
更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機１１００は、操作キー１１１９の操作によって入力された電子メールのテキストデータを、操作入力制御部１１５２において受け付ける。携帯電話機１１００は、そのテキストデータを主制御部１１５０において処理し、LCD制御部１１５５を介して、画像として液晶ディスプレイ１１１８に表示させる。
【０３５１】
また、携帯電話機１１００は、主制御部１１５０において、操作入力制御部１１５２が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機１１００は、その電子メールデータを、変復調回路部１１５８でスペクトラム拡散処理し、送受信回路部１１６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機１１００は、その変換処理により得られた送信用信号を、アンテナ１１１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（電子メール）は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
【０３５２】
また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機１１００は、基地局から送信された信号を、アンテナ１１１４を介して送受信回路部１１６３で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機１１００は、その受信信号を変復調回路部１１５８でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機１１００は、復元された電子メールデータを、LCD制御部１１５５を介して液晶ディスプレイ１１１８に表示する。
【０３５３】
なお、携帯電話機１１００は、受信した電子メールデータを、記録再生部１１６２を介して、記憶部１１２３に記録する（記憶させる）ことも可能である。
【０３５４】
この記憶部１１２３は、書き換え可能な任意の記憶媒体である。記憶部１１２３は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
【０３５５】
さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機１１００は、撮像によりCCDカメラ１１１６で画像データを生成する。CCDカメラ１１１６は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。CCDカメラ１１１６は、その画像データを、カメラI/F部１１５４を介して、画像エンコーダ１１５３で符号化し、符号化画像データに変換する。
【０３５６】
携帯電話機１１００は、このような処理を行う画像エンコーダ１１５３として、上述した画像符号化装置１００を用いる。画像エンコーダ１１５３は、画像符号化装置１００の場合と同様に、長方形動きパーティションに対してもスキップモードやダイレクトモードを適用し、候補モードの１つとして動きベクトル情報を算出し、コスト関数を評価する。したがって、画像エンコーダ１１５３は、より大きな領域にスキップモードやダイレクトモードを適用させることができ、符号化効率を向上させることができる。
【０３５７】
なお、携帯電話機１１００は、このとき同時に、CCDカメラ１１１６で撮像中にマイクロホン（マイク）１１２１で集音した音声を、音声コーデック１１５９においてアナログデジタル変換し、さらに符号化する。
【０３５８】
携帯電話機１１００は、多重分離部１１５７において、画像エンコーダ１１５３から供給された符号化画像データと、音声コーデック１１５９から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機１１００は、その結果得られる多重化データを、変復調回路部１１５８でスペクトラム拡散処理し、送受信回路部１１６３でデジタルアナログ変換処理および周波数変換処理する。携帯電話機１１００は、その変換処理により得られた送信用信号を、アンテナ１１１４を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号（画像データ）は、ネットワーク等を介して、通信相手に供給される。
【０３５９】
なお、画像データを送信しない場合、携帯電話機１１００は、CCDカメラ１１１６で生成した画像データを、画像エンコーダ１１５３を介さずに、LCD制御部１１５５を介して液晶ディスプレイ１１１８に表示させることもできる。
【０３６０】
また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機１１００は、基地局から送信された信号を、アンテナ１１１４を介して送受信回路部１１６３で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機１１００は、その受信信号を変復調回路部１１５８でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機１１００は、多重分離部１１５７において、その多重化データを分離して、符号化画像データと音声データとに分ける。
【０３６１】
携帯電話機１１００は、画像デコーダ１１５６において符号化画像データをデコードすることにより、再生動画像データを生成し、これを、LCD制御部１１５５を介して液晶ディスプレイ１１１８に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ１１１８に表示される。
【０３６２】
携帯電話機１１００は、このような処理を行う画像デコーダ１１５６として、上述した画像復号装置２００を用いる。つまり、画像デコーダ１１５６は、画像復号装置２００の場合と同様に、長方形動きパーティションのスキップモードやダイレクトモードを検出し、それぞれのモードで復号処理を行うことができる。したがって、画像デコーダ１１５６は、長方形動きパーティションに対してもスキップモードやダイレクトモードを適用したコードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０３６３】
このとき、携帯電話機１１００は、同時に、音声コーデック１１５９において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ１１１７より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
【０３６４】
なお、電子メールの場合と同様に、携帯電話機１１００は、受信した簡易ホームページ等にリンクされたデータを、記録再生部１１６２を介して、記憶部１１２３に記録する（記憶させる）ことも可能である。
【０３６５】
また、携帯電話機１１００は、主制御部１１５０において、撮像されてCCDカメラ１１１６で得られた２次元コードを解析し、２次元コードに記録された情報を取得することができる。
【０３６６】
さらに、携帯電話機１１００は、赤外線通信部１１８１で赤外線により外部の機器と通信することができる。
【０３６７】
携帯電話機１１００は、画像エンコーダ１１５３として画像符号化装置１００を用いることにより、例えばCCDカメラ１１１６において生成された画像データを符号化して伝送する際に、その画像データの長方形動きパーティションに対してスキップモードやダイレクトモードを適用し、符号化することができ、符号化効率を向上させることができる。
【０３６８】
また、携帯電話機１１００は、画像デコーダ１１５６として画像復号装置２００を用いることにより、例えば、簡易ホームページ等にリンクされた動画像ファイルのデータ（符号化データ）が、長方形動きパーティションに対してスキップモードやダイレクトモードを適用して符号化されている場合であっても、コードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０３６９】
なお、以上において、携帯電話機１１００が、CCDカメラ１１１６を用いるように説明したが、このCCDカメラ１１１６の代わりに、CMOS（Complementary Metal Oxide Semiconductor）を用いたイメージセンサ（CMOSイメージセンサ）を用いるようにしてもよい。この場合も、携帯電話機１１００は、CCDカメラ１１１６を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
【０３７０】
また、以上においては携帯電話機１１００として説明したが、例えば、PDA（Personal Digital Assistants）、スマートフォン、UMPC（Ultra Mobile Personal Computer）、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機１１００と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機１１００の場合と同様に、本発明を適用した画像符号化装置および画像復号装置を適用することができる。
【０３７１】
＜６．第６の実施の形態＞
［ハードディスクレコーダ］
図２５は、本発明を適用した画像符号化装置および画像復号装置を用いるハードディスクレコーダの主な構成例を示すブロック図である。
【０３７２】
図２５に示されるハードディスクレコーダ（HDDレコーダ）１２００は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号（テレビジョン信号）に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。
【０３７３】
ハードディスクレコーダ１２００は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ１２００は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
【０３７４】
さらに、ハードディスクレコーダ１２００は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ１２６０に供給し、モニタ１２６０の画面にその画像を表示させ、モニタ１２６０のスピーカよりその音声を出力させることができる。また、ハードディスクレコーダ１２００は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ１２６０に供給し、モニタ１２６０の画面にその画像を表示させ、モニタ１２６０のスピーカよりその音声を出力させることもできる。
【０３７５】
もちろん、この他の動作も可能である。
【０３７６】
図２５に示されるように、ハードディスクレコーダ１２００は、受信部１２２１、復調部１２２２、デマルチプレクサ１２２３、オーディオデコーダ１２２４、ビデオデコーダ１２２５、およびレコーダ制御部１２２６を有する。ハードディスクレコーダ１２００は、さらに、EPGデータメモリ１２２７、プログラムメモリ１２２８、ワークメモリ１２２９、ディスプレイコンバータ１２３０、OSD（On Screen Display）制御部１２３１、ディスプレイ制御部１２３２、記録再生部１２３３、D/Aコンバータ１２３４、および通信部１２３５を有する。
【０３７７】
また、ディスプレイコンバータ１２３０は、ビデオエンコーダ１２４１を有する。記録再生部１２３３は、エンコーダ１２５１およびデコーダ１２５２を有する。
【０３７８】
受信部１２２１は、リモートコントローラ（図示せず）からの赤外線信号を受信し、電気信号に変換してレコーダ制御部１２２６に出力する。レコーダ制御部１２２６は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ１２２８に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部１２２６は、このとき、ワークメモリ１２２９を必要に応じて使用する。
【０３７９】
通信部１２３５は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部１２３５は、レコーダ制御部１２２６により制御され、チューナ（図示せず）と通信し、主にチューナに対して選局制御信号を出力する。
【０３８０】
復調部１２２２は、チューナより供給された信号を、復調し、デマルチプレクサ１２２３に出力する。デマルチプレクサ１２２３は、復調部１２２２より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ１２２４、ビデオデコーダ１２２５、またはレコーダ制御部１２２６に出力する。
【０３８１】
オーディオデコーダ１２２４は、入力されたオーディオデータをデコードし、記録再生部１２３３に出力する。ビデオデコーダ１２２５は、入力されたビデオデータをデコードし、ディスプレイコンバータ１２３０に出力する。レコーダ制御部１２２６は、入力されたEPGデータをEPGデータメモリ１２２７に供給し、記憶させる。
【０３８２】
ディスプレイコンバータ１２３０は、ビデオデコーダ１２２５またはレコーダ制御部１２２６より供給されたビデオデータを、ビデオエンコーダ１２４１により、例えばNTSC（National Television Standards Committee）方式のビデオデータにエンコードし、記録再生部１２３３に出力する。また、ディスプレイコンバータ１２３０は、ビデオデコーダ１２２５またはレコーダ制御部１２２６より供給されるビデオデータの画面のサイズを、モニタ１２６０のサイズに対応するサイズに変換し、ビデオエンコーダ１２４１によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部１２３２に出力する。
【０３８３】
ディスプレイ制御部１２３２は、レコーダ制御部１２２６の制御のもと、OSD（On Screen Display）制御部１２３１が出力したOSD信号を、ディスプレイコンバータ１２３０より入力されたビデオ信号に重畳し、モニタ１２６０のディスプレイに出力し、表示させる。
【０３８４】
モニタ１２６０にはまた、オーディオデコーダ１２２４が出力したオーディオデータが、D/Aコンバータ１２３４によりアナログ信号に変換されて供給されている。モニタ１２６０は、このオーディオ信号を内蔵するスピーカから出力する。
【０３８５】
記録再生部１２３３は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
【０３８６】
記録再生部１２３３は、例えば、オーディオデコーダ１２２４より供給されるオーディオデータを、エンコーダ１２５１によりエンコードする。また、記録再生部１２３３は、ディスプレイコンバータ１２３０のビデオエンコーダ１２４１より供給されるビデオデータを、エンコーダ１２５１によりエンコードする。記録再生部１２３３は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部１２３３は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
【０３８７】
記録再生部１２３３は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部１２３３は、デコーダ１２５２によりオーディオデータおよびビデオデータをデコードする。記録再生部１２３３は、復号したオーディオデータをD/A変換し、モニタ１２６０のスピーカに出力する。また、記録再生部１２３３は、復号したビデオデータをD/A変換し、モニタ１２６０のディスプレイに出力する。
【０３８８】
レコーダ制御部１２２６は、受信部１２２１を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ１２２７から最新のEPGデータを読み出し、それをOSD制御部１２３１に供給する。OSD制御部１２３１は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部１２３２に出力する。ディスプレイ制御部１２３２は、OSD制御部１２３１より入力されたビデオデータをモニタ１２６０のディスプレイに出力し、表示させる。これにより、モニタ１２６０のディスプレイには、EPG（電子番組ガイド）が表示される。
【０３８９】
また、ハードディスクレコーダ１２００は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
【０３９０】
通信部１２３５は、レコーダ制御部１２２６に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部１２２６に供給する。レコーダ制御部１２２６は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部１２３３に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部１２２６および記録再生部１２３３が、必要に応じて再エンコード等の処理を行うようにしてもよい。
【０３９１】
また、レコーダ制御部１２２６は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ１２３０に供給する。ディスプレイコンバータ１２３０は、ビデオデコーダ１２２５から供給されるビデオデータと同様に、レコーダ制御部１２２６から供給されるビデオデータを処理し、ディスプレイ制御部１２３２を介してモニタ１２６０に供給し、その画像を表示させる。
【０３９２】
また、この画像表示に合わせて、レコーダ制御部１２２６が、復号したオーディオデータを、D/Aコンバータ１２３４を介してモニタ１２６０に供給し、その音声をスピーカから出力させるようにしてもよい。
【０３９３】
さらに、レコーダ制御部１２２６は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ１２２７に供給する。
【０３９４】
以上のようなハードディスクレコーダ１２００は、ビデオデコーダ１２２５、デコーダ１２５２、およびレコーダ制御部１２２６に内蔵されるデコーダとして画像復号装置２００を用いる。つまり、ビデオデコーダ１２２５、デコーダ１２５２、およびレコーダ制御部１２２６に内蔵されるデコーダは、画像復号装置２００の場合と同様に、長方形動きパーティションのスキップモードやダイレクトモードを検出し、それぞれのモードで復号処理を行うことができる。したがって、ビデオデコーダ１２２５、デコーダ１２５２、およびレコーダ制御部１２２６に内蔵されるデコーダは、長方形動きパーティションに対してスキップモードやダイレクトモードを適用したコードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０３９５】
したがって、ハードディスクレコーダ１２００は、例えば、チューナや通信部１２３５が受信するビデオデータ（符号化データ）や、記録再生部１２３３が再生するビデオデータ（符号化データ）が、長方形動きパーティションに対してスキップモードやダイレクトモードを適用して符号化されている場合であっても、コードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０３９６】
また、ハードディスクレコーダ１２００は、エンコーダ１２５１として画像符号化装置１００を用いる。したがって、エンコーダ１２５１は、画像符号化装置１００の場合と同様に、長方形動きパーティションに対してもスキップモードやダイレクトモードを適用し、候補モードの１つとして動きベクトル情報を算出し、コスト関数を評価する。したがって、エンコーダ１２５１は、より大きな領域にスキップモードやダイレクトモードを適用させることができ、符号化効率を向上させることができる。
【０３９７】
したがって、ハードディスクレコーダ１２００は、例えば、ハードディスクに記録する符号化データを生成する際に、記録する画像データの長方形動きパーティションに対してスキップモードやダイレクトモードを適用し、符号化することができ、符号化効率を向上させることができる。
【０３９８】
なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ１２００について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ１２００の場合と同様に、本発明を適用した画像符号化装置１００および画像復号装置２００を適用することができる。
【０３９９】
＜７．第７の実施の形態＞
［カメラ］
図２６は、本発明を適用した画像符号化装置および画像復号装置を用いるカメラの主な構成例を示すブロック図である。
【０４００】
図２６に示されるカメラ１３００は、被写体を撮像し、被写体の画像をLCD１３１６に表示させたり、それを画像データとして、記録メディア１３３３に記録したりする。
【０４０１】
レンズブロック１３１１は、光（すなわち、被写体の映像）を、CCD/CMOS１３１２に入射させる。CCD/CMOS１３１２は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部１３１３に供給する。
【０４０２】
カメラ信号処理部１３１３は、CCD/CMOS１３１２から供給された電気信号を、Ｙ，Ｃｒ，Ｃｂの色差信号に変換し、画像信号処理部１３１４に供給する。画像信号処理部１３１４は、コントローラ１３２１の制御の下、カメラ信号処理部１３１３から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ１３４１で符号化したりする。画像信号処理部１３１４は、画像信号を符号化して生成した符号化データを、デコーダ１３１５に供給する。さらに、画像信号処理部１３１４は、オンスクリーンディスプレイ（OSD）１３２０において生成された表示用データを取得し、それをデコーダ１３１５に供給する。
【０４０３】
以上の処理において、カメラ信号処理部１３１３は、バス１３１７を介して接続されるDRAM（Dynamic Random Access Memory）１３１８を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM１３１８に保持させる。
【０４０４】
デコーダ１３１５は、画像信号処理部１３１４から供給された符号化データを復号し、得られた画像データ（復号画像データ）をLCD１３１６に供給する。また、デコーダ１３１５は、画像信号処理部１３１４から供給された表示用データをLCD１３１６に供給する。LCD１３１６は、デコーダ１３１５から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
【０４０５】
オンスクリーンディスプレイ１３２０は、コントローラ１３２１の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス１３１７を介して画像信号処理部１３１４に出力する。
【０４０６】
コントローラ１３２１は、ユーザが操作部１３２２を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス１３１７を介して、画像信号処理部１３１４、DRAM１３１８、外部インタフェース１３１９、オンスクリーンディスプレイ１３２０、およびメディアドライブ１３２３等を制御する。FLASH ROM１３２４には、コントローラ１３２１が各種処理を実行する上で必要なプログラムやデータ等が格納される。
【０４０７】
例えば、コントローラ１３２１は、画像信号処理部１３１４やデコーダ１３１５に代わって、DRAM１３１８に記憶されている画像データを符号化したり、DRAM１３１８に記憶されている符号化データを復号したりすることができる。このとき、コントローラ１３２１は、画像信号処理部１３１４やデコーダ１３１５の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部１３１４やデコーダ１３１５が対応していない方式により符号化・復号処理を行うようにしてもよい。
【０４０８】
また、例えば、操作部１３２２から画像印刷の開始が指示された場合、コントローラ１３２１は、DRAM１３１８から画像データを読み出し、それを、バス１３１７を介して外部インタフェース１３１９に接続されるプリンタ１３３４に供給して印刷させる。
【０４０９】
さらに、例えば、操作部１３２２から画像記録が指示された場合、コントローラ１３２１は、DRAM１３１８から符号化データを読み出し、それを、バス１３１７を介してメディアドライブ１３２３に装着される記録メディア１３３３に供給して記憶させる。
【０４１０】
記録メディア１３３３は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア１３３３は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
【０４１１】
また、メディアドライブ１３２３と記録メディア１３３３を一体化し、例えば、内蔵型ハードディスクドライブやSSD（Solid State Drive）等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
【０４１２】
外部インタフェース１３１９は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ１３３４と接続される。また、外部インタフェース１３１９には、必要に応じてドライブ１３３１が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア１３３２が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM１３２４にインストールされる。
【０４１３】
さらに、外部インタフェース１３１９は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ１３２１は、例えば、操作部１３２２からの指示に従って、DRAM１３１８から符号化データを読み出し、それを外部インタフェース１３１９から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ１３２１は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース１３１９を介して取得し、それをDRAM１３１８に保持させたり、画像信号処理部１３１４に供給したりすることができる。
【０４１４】
以上のようなカメラ１３００は、デコーダ１３１５として画像復号装置２００を用いる。つまり、デコーダ１３１５は、画像復号装置２００の場合と同様に、長方形動きパーティションのスキップモードやダイレクトモードを検出し、それぞれのモードで復号処理を行うことができる。したがって、デコーダ１３１５は、長方形動きパーティションに対してスキップモードやダイレクトモードを適用したコードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０４１５】
したがって、カメラ１３００は、例えば、CCD/CMOS１３１２において生成される画像データや、DRAM１３１８または記録メディア１３３３から読み出すビデオデータの符号化データや、ネットワークを介して取得するビデオデータの符号化データが、長方形動きパーティションに対してスキップモードやダイレクトモードを適用して符号化されている場合であっても、コードストリームを正しく復号することができ、符号化効率を向上させることができる。
【０４１６】
また、カメラ１３００は、エンコーダ１３４１として画像符号化装置１００を用いる。エンコーダ１３４１は、画像符号化装置１００の場合と同様に、長方形動きパーティションに対してもスキップモードやダイレクトモードを適用し、候補モードの１つとして動きベクトル情報を算出し、コスト関数を評価する。したがって、エンコーダ１３４１は、より大きな領域にスキップモードやダイレクトモードを適用させることができ、符号化効率を向上させることができる。
【０４１７】
したがって、カメラ１３００は、例えば、DRAM１３１８や記録メディア１３３３に記録する符号化データや、他の装置に提供する符号化データを生成する際に、記録または提供する画像データの長方形動きパーティションに対してスキップモードやダイレクトモードを適用し、符号化することができ、符号化効率を向上させることができる。
【０４１８】
なお、コントローラ１３２１が行う復号処理に画像復号装置２００の復号方法を適用するようにしてもよい。同様に、コントローラ１３２１が行う符号化処理に画像符号化装置１００の符号化方法を適用するようにしてもよい。
【０４１９】
また、カメラ１３００が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
【０４２０】
もちろん、本発明を適用した画像符号化装置および画像復号装置は、上述した装置以外の装置やシステムにも適用可能である。
【０４２１】
本発明は、例えば、MPEG,H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報（ビットストリーム）を、衛星放送、ケーブルＴＶ、インターネット、携帯電話などのネットワークメディアを介して受信する際に、若しくは光、磁気ディスク、フラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置や画像復号装置に適用することができる。
【符号の説明】
【０４２２】
１００  画像符号化装置，  １１５  動き予測・補償部，  １３１  コスト関数算出部，  １３２  動き探索部，  １３３  正方形スキップ・ダイレクト符号化部，  １３４  長方形スキップ・ダイレクト符号化部，  １３５  モード判定部，  １３６  動き補償部，  １３７  動きベクトルバッファ，  １５１  動きベクトル取得部，  １５２  フラグ生成部，  １５３  コスト関数算出部，  １７１  隣接パーティション定義部，  １７２  動きベクトル生成部，  ２００  画像復号装置，  ２１２  動き予測・補償部，  ２３１  動きベクトルバッファ，  ２３２  モードバッファ，  ２３３  正方形スキップ・ダイレクト復号部，  ２３４  長方形スキップ・ダイレクト復号部，  ２３５  動き補償部，  ２５１  隣接パーティション定義部，  ２５２  動きベクトル生成部
【図１】
2012019447.tif 000019
【図２】
2012019447.tif 000020
【図３】
2012019447.tif 000021
【図４】
2012019447.tif 000022
【図５】
2012019447.tif 000023
【図６】
2012019447.tif 000024
【図７】
2012019447.tif 000025
【図８】
2012019447.tif 000026
【図９】
2012019447.tif 000027
【図１０】
2012019447.tif 000028
【図１１】
2012019447.tif 000029
【図１２】
2012019447.tif 000030
【図１３】
2012019447.tif 000031
【図１４】
2012019447.tif 000032
【図１５】
2012019447.tif 000033
【図１６】
2012019447.tif 000034
【図１７】
2012019447.tif 000035
【図１８】
2012019447.tif 000036
【図１９】
2012019447.tif 000037
【図２０】
2012019447.tif 000038
【図２１】
2012019447.tif 000039
【図２２】
2012019447.tif 000040
【図２３】
2012019447.tif 000041
【図２４】
2012019447.tif 000042
【図２５】
2012019447.tif 000043
【図２６】
2012019447.tif 000044
【図２７】
2012019447.tif 000045