(57)【要約】【課題】従来の動画像符号化／復号では、予め用意された形状パターンで動き補償予測をするため、符号化効率の向上に限界がある。【解決手段】第１動きベクトル検出部１０８は、符号化対象ブロックに垂直方向または水平方向に隣接した局所復号済みのテンプレート領域の第１動きベクトルを検出する。仮領域分割部１０１は符号化対象ブロックを２つの仮領域に分割する。第２動きベクトル検出部１０２は、テンプレート領域に隣接する部分が少ない方の仮領域に対して、符号化対象ブロックの原画像を用いて、第２動きベクトルを検出する。本領域分割・動き補償部１０３は、第１および第２動きベクトルを用いて、参照画像から符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、各予測ブロックを本境界で分割して得た領域を結合して合成予測ブロックを生成する。【選択図】図１
2011254395.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象ブロックに隣接した局所復号済みの所定領域の第１動きベクトルを決定する第１動きベクトル決定部と、
前記符号化対象ブロックを所定の仮境界で２つの仮領域に分割する仮領域分割部と、
２つの仮領域の内、前記所定領域に隣接する部分が少ない方の仮領域に対して、符号化対象ブロックの原画像を用いて、第２動きベクトルを検出する第２動きベクトル検出部と、
前記第１動きベクトルおよび前記第２動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する動き補償部と、
前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部とを備えることを特徴とする動画像符号化装置。
【請求項２】
符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域の第１動きベクトルと、前記符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域の第２動きベクトルとを決定する動きベクトル決定部と、
前記第１動きベクトルおよび前記第２動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する動き補償部と、
前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部とを備えることを特徴とする動画像符号化装置。
【請求項３】
符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域に対する第１動きベクトルと、符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域に対する第２動きベクトルを決定し、第１動きベクトルおよび第２動きベクトルの内、いずれか一方の動きベクトルを採用する第１・第２動きベクトル決定部と、
前記符号化対象ブロックを所定の仮境界で２つの仮領域に分割する仮領域分割部と、
２つの仮領域の内、前記第１・第２動きベクトル決定部により採用された動きベクトルが決定された所定領域に隣接しない仮領域に対して、符号化対象ブロックの原画像を用いて、第３動きベクトルを検出する第３動きベクトル検出部と、
前記第１・第２動きベクトル決定部により採用された動きベクトルおよび前記第３動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する動き補償部と、
前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部とを備えることを特徴とする動画像符号化装置。
【請求項４】
符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域の第１動きベクトルと、符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域の第２動きベクトルとを決定するとともに、第１動きベクトルおよび第２動きベクトルの内、一方の動きベクトルを主動きベクトル、他方の動きベクトルを副動きベクトルとして選択する第１・第２動きベクトル決定部と、
前記第１動きベクトルおよび前記第２動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した第１および第２予測ブロックを生成し、第１および第２予測ブロックのアクティビティに基づいて第１の本境界を決定する動き補償部と、
前記第１の本境界により２つの分割された本領域の内、前記第１・第２動きベクトル決定部により副動きベクトルとして選択された動きベクトルが決定された所定領域に隣接する部分の多い方の本領域を選択し、選択された本領域を所定の仮境界でさらに２つの仮領域に分割する仮領域分割部と、
２つの仮領域の内、前記副動きベクトルとして選択された動きベクトルが決定された所定領域に隣接しない仮領域に対して、符号化対象ブロックの原画像を用いて、第３動きベクトルを検出する第３動きベクトル検出部とを含み、
前記動き補償部は、前記副動きベクトルとして選択された動きベクトルおよび前記第３動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した第３および第４予測ブロックを生成し、第３および第４予測ブロックのアクティビティに基づいて第２の本境界を決定し、前記第１または第２予測ブロックを前記第１の本境界で分割して得た領域と、第３および第４予測ブロックを前記第２の本境界で分割して得た領域とを前記各予測ブロック間で結合させることにより、合成予測ブロックを生成し、
前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部を備えることを特徴とする動画像符号化装置。
【請求項５】
符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域に対する第１動きベクトルと、符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域に対する第２動きベクトルを決定し、第１動きベクトルおよび第２動きベクトルの内、いずれか一方の動きベクトルを採用するステップと、
前記符号化対象ブロックを所定の仮境界で２つの仮領域に分割するステップと、
２つの仮領域の内、前記第１・第２動きベクトル決定部により採用された動きベクトルが決定された所定領域に隣接しない仮領域に対して、符号化対象ブロックの原画像を用いて、第３動きベクトルを検出するステップと、
前記第１・第２動きベクトル決定部により採用された動きベクトルおよび前記第３動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成するステップと、
前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化するステップとを備えることを特徴とする動画像符号化方法。
【請求項６】
符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域に対する第１動きベクトルと、符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域に対する第２動きベクトルを決定し、第１動きベクトルおよび第２動きベクトルの内、いずれか一方の動きベクトルを採用する機能と、
前記符号化対象ブロックを所定の仮境界で２つの仮領域に分割する機能と、
２つの仮領域の内、前記第１・第２動きベクトル決定部により採用された動きベクトルが決定された所定領域に隣接しない仮領域に対して、符号化対象ブロックの原画像を用いて、第３動きベクトルを検出する機能と、
前記第１・第２動きベクトル決定部により採用された動きベクトルおよび前記第３動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する機能と、
前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する機能とをコンピュータに実現させることを特徴とする動画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像の符号化技術に関し、特に動き補償予測を利用した動画像の符号化技術に関する。
【背景技術】
【０００２】
ＭＰＥＧ（Moving Picture Experts Group）に代表される動画像の圧縮符号化では、画面間の相関を利用して符号量を圧縮する動き補償予測が多く用いられる。ＭＰＥＧ等で用いられる動き補償予測では、所定サイズのブロック毎に、既に復号済の参照画像から、符号化対象画像と参照画像の相対位置関係を示す動きベクトルを用いて予測画像を生成する。その後、符号化側では、符号化対象原画像と動き補償予測により生成された予測画像との差分である予測誤差を算出し、予測誤差のみを復号側に伝送する。これにより、動き補償予測を用いない場合と比較して伝送する符号量を大幅に削減できる。
【０００３】
一般に、符号化・復号処理はマクロブロック（所定ブロックサイズの画素群、例えば１６×１６）単位で行われる。動き補償予測もマクロブロック単位で行われることが多いが、この場合、マクロブロックよりも小さな物体等の動きを捉えることが難しく、結果として符号化効率が低下する。そこで、動き補償予測をさらに効率良く機能させる方法として、マルチブロックパターン動き補償予測が用いられる。
【０００４】
マルチブロックパターン動き補償予測では、マクロブロック内をさらにサブブロックに分割し、サブブロック毎に異なる動きベクトルを用いて動き補償予測を行うことが可能である。使用する動き補償予測ブロックの分割パターンは、符号化側と復号側の同一規則として予め定義しておく。符号化側では定義されたブロックパターンの中から動き補償予測のブロックパターンを選択し、ブロックパターンの選択情報を復号側に伝送する。復号側では、受信したブロックパターンの選択情報に基づき動き補償予測を行う。マルチブロックパターン動き補償予測では、符号化側で動き補償予測に最適なブロックパターンを選択すると、動き補償予測後の予測誤差が減少し、符号化効率が向上する。
【０００５】
具体的なブロックパターンの例として、ＩＳＯ／ＩＥＣとＩＴＵ−Ｔの合同ビデオチーム（ＪＶＴ）が国際標準化したＭＰＥＧ−４  ＡＶＣ(Advanced Video Coding)では、マクロブロック（１６×１６ブロック）内をさらに１６×８／８×１６／８×８／８×４／４×８／４×４のブロックパターンに分割して動き補償予測を行うことが可能である。符号化側では、ブロックパターンを選択し、ブロックパターンの選択情報をビットストリーム内に符号化する。復号側では、ビットストリーム内に符号化されているブロックパターンに応じてマクロブロックを領域分割し、分割された領域毎に動き補償予測を行う。
【０００６】
更に、特許文献１や特許文献２には、さまざまな動き補償予測形状パターンを定義し、より柔軟な形状で動き補償予測を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第４０２５５７０号公報
【特許文献２】再公表特許第ＷＯ２００３−０２６３１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１や特許文献２に開示された方法では、定義する動き補償予測形状パターンを増やした場合、形状パターン数が増加するにつれ、伝送する形状パターンの選択情報に費やす符号量が多くなってしまう。つまり、形状パターンが増加したことによる予測誤差の減少と、形状パターン選択に関する符号量増加はトレードオフ関係にあるため、単に形状パターン数を増やすだけでは全体的な符号化効率を向上させることは難しい。
【０００９】
このように従来の動画像符号化／復号では、予め定義した形状パターンの動き補償予測しか行えないため、最適な形状で動き補償予測を行うことができず、符号化効率を向上させることができない。また、定義する動き補償予測形状パターンを増やした場合、動き補償予測形状パターンの選択に関する付加情報の符号量が増加するため、全体的な符号化効率が向上するとは限らない。
【００１０】
本発明はこうした状況に鑑みてなされたものであり、その目的は、動き補償予測のブロックパターンに関する付加情報の符号量を増加させることなく、さまざまなブロックパターンでの動き補償予測を可能にすることで、予測誤差を減少させて符号化効率を向上させる技術を提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明のある態様の動画像符号化装置は、符号化対象ブロックに隣接した局所復号済みの所定領域の第１動きベクトルを決定する第１動きベクトル決定部（１０８）と、前記符号化対象ブロックを所定の仮境界で２つの仮領域に分割する仮領域分割部（１０１）と、２つの仮領域の内、前記所定領域に隣接する部分が少ない方の仮領域に対して、符号化対象ブロックの原画像を用いて、第２動きベクトルを検出する第２動きベクトル検出部（１０２）と、前記第１動きベクトルおよび前記第２動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する動き補償部（１０３）と、前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部（１０５）とを備える。
【００１２】
本発明の別の態様もまた、動画像符号化装置である。この装置は、符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域の第１動きベクトルと、前記符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域の第２動きベクトルとを決定する動きベクトル決定部（１０８）と、前記第１動きベクトルおよび前記第２動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する動き補償部（１０３）と、前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部（１０５）とを備える。
【００１３】
本発明のさらに別の態様もまた、動画像符号化装置である。この装置は、符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域に対する第１動きベクトルと、符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域に対する第２動きベクトルを決定し、第１動きベクトルおよび第２動きベクトルの内、いずれか一方の動きベクトルを採用する第１・第２動きベクトル決定部（１０８）と、前記符号化対象ブロックを所定の仮境界で２つの仮領域に分割する仮領域分割部と、２つの仮領域の内、前記第１・第２動きベクトル決定部により採用された動きベクトルが決定された所定領域に隣接しない仮領域に対して、符号化対象ブロックの原画像を用いて、第３動きベクトルを検出する第３動きベクトル検出部（１０２）と、前記第１・第２動きベクトル決定部により採用された動きベクトルおよび前記第３動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する動き補償部（１０３）と、前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部（１０５）とを備える。
【００１４】
本発明のさらに別の態様もまた、動画像符号化装置である。この装置は、符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域の第１動きベクトルと、符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域の第２動きベクトルとを決定するとともに、第１動きベクトルおよび第２動きベクトルの内、一方の動きベクトルを主動きベクトル、他方の動きベクトルを副動きベクトルとして選択する第１・第２動きベクトル決定部（１０８）と、前記第１動きベクトルおよび前記第２動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した第１および第２予測ブロックを生成し、第１および第２予測ブロックのアクティビティに基づいて第１の本境界を決定する動き補償部（１０３）と、前記第１の本境界により２つの分割された本領域の内、前記第１・第２動きベクトル決定部により副動きベクトルとして選択された動きベクトルが決定された所定領域に隣接する部分の多い方の本領域を選択し、選択された本領域を所定の仮境界でさらに２つの仮領域に分割する仮領域分割部（１０１）と、２つの仮領域の内、前記副動きベクトルとして選択された動きベクトルが決定された所定領域に隣接しない仮領域に対して、符号化対象ブロックの原画像を用いて、第３動きベクトルを検出する第３動きベクトル検出部（１０２）とを含む。前記動き補償部は、前記副動きベクトルとして選択された動きベクトルおよび前記第３動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した第３および第４予測ブロックを生成し、第３および第４予測ブロックのアクティビティに基づいて第２の本境界を決定し、前記第１または第２予測ブロックを前記第１の本境界で分割して得た領域と、第３および第４予測ブロックを前記第２の本境界で分割して得た領域とを前記各予測ブロック間で結合させることにより、合成予測ブロックを生成する。この装置は、前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化する符号化部（１０５）をさらに備える。
【００１５】
本発明のさらに別の態様は、動画像符号化方法である。この方法は、符号化対象ブロックに水平方向に隣接した局所復号済みの第１所定領域に対する第１動きベクトルと、符号化対象ブロックに垂直方向に隣接した局所復号済みの第２所定領域に対する第２動きベクトルを決定し、第１動きベクトルおよび第２動きベクトルの内、いずれか一方の動きベクトルを採用するステップと、前記符号化対象ブロックを所定の仮境界で２つの仮領域に分割するステップと、２つの仮領域の内、前記第１・第２動きベクトル決定部により採用された動きベクトルが決定された所定領域に隣接しない仮領域に対して、符号化対象ブロックの原画像を用いて、第３動きベクトルを検出するステップと、前記第１・第２動きベクトル決定部により採用された動きベクトルおよび前記第３動きベクトルを用いて、参照画像から前記符号化対象ブロックに対応した２つの予測ブロックを生成し、２つの予測ブロックのアクティビティに基づいて本境界を決定し、前記各予測ブロックを前記本境界で分割して得た領域を前記各予測ブロック間で結合させることにより、合成予測ブロックを生成するステップと、前記合成予測ブロックを前記符号化対象ブロックより減算した予測差分ブロックと、各仮領域の動きベクトルとを符号化するステップとを備える。
【００１６】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１７】
本発明によれば、動き補償予測のブロックパターンに関する付加情報の符号量を増加させることなく、さまざまなブロックパターンでの動き補償予測を可能にすることで、予測誤差を減少させて符号化効率を向上させることができる。
【図面の簡単な説明】
【００１８】
【図１】実施の形態１の動画像符号化装置の構成を示すブロック図である。
【図２】実施の形態１の動画像復号装置の構成を示すブロック図である。
【図３】水平境界で分割されたマクロブロックの仮領域毎に検出される動きベクトルを示す図である。
【図４】垂直境界で分割されたマクロブロックの仮領域毎に検出される動きベクトルを示す図である。
【図５】テンプレートを利用した動きベクトル検出方法を説明する図である。
【図６】仮領域毎に検出された動きベクトルから生成される動き補償予測画像を示す図である。
【図７】各仮領域の動きベクトルから生成される動き補償予測画像を合成して得られる合成動き補償予測画像を示す図である。
【図８】各仮領域の動きベクトルから生成される動き補償予測画像を合成して合成動き補償予測画像を生成する方法を説明する図である。
【図９】仮領域分割および本境界決定の手順を示すフローチャートである。
【図１０】符号化対象ブロックの仮分割の好適な方法を説明する図である。
【図１１】図１の本領域分割・動き補償部による本境界の決定手順を説明するフローチャートである。
【図１２】動き補償予測画像についての本境界決定に関するアクティビティを説明する図である。
【図１３】実施の形態の動画像符号化装置により符号化される動画像のビットストリームの第１のシンタックスパターンを示す図である。
【図１４】スライス単位で動き補償予測の形状を復号側で自動的に決定するかどうかを示すフラグがＯＮ／ＯＦＦそれぞれの場合のマクロブロックタイプmb_typeのセマンティックスを示す図である。
【図１５】実施の形態２の動画像符号化装置の構成を示すブロック図である。
【図１６】実施の形態２の動画像復号装置の構成を示すブロック図である。
【図１７】実施の形態２における本境界決定手順を示すフローチャートである。
【図１８】各テンプレート領域から算出された動きベクトルを利用して本境界が決定される様子を示す図である。
【図１９】スライス単位で動き補償予測の形状を復号側で自動的に決定するかどうかを示すフラグがＯＮ／ＯＦＦそれぞれの場合のマクロブロックタイプmb_typeのセマンティックスを示す図である。
【図２０】実施の形態３における本境界決定手順を示すフローチャートである。
【図２１】各テンプレート領域から算出された動きベクトルを利用して本境界が決定される様子を示す図である。
【図２２】実施の形態４の動画像符号化装置の構成を示すブロック図である。
【図２３】実施の形態４の動画像復号装置の構成を示すブロック図である。
【図２４】実施の形態４における本境界決定手順を示すフローチャートである。
【図２５】各テンプレート領域から算出された動きベクトルを利用して本境界が決定される様子を示す図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について図面を参照して説明する。
【００２０】
（実施の形態１）
図１は、実施の形態１の動画像符号化装置の構成を示すブロック図である。実施の形態１の動画像符号化装置は、仮領域分割部１０１、第２動きベクトル検出部１０２、本領域分割・動き補償部１０３、直交変換・量子化部１０４、可変長符号化部１０５、逆量子化・逆直交変換部１０６、参照画像メモリ１０７、第１動きベクトル検出部１０８、加算部１０９、および減算部１１０を備える。
【００２１】
第１動きベクトル検出部１０８は、符号化対象ブロックに隣接する局所復号済領域の画素群（以下、「テンプレート」と呼ぶ）を用いて、テンプレート領域の動きベクトルを検出する。第１動きベクトル検出部１０８は、動きベクトルを伝送せずに復号側で自動的に動きベクトルを算出できることに特長がある。そのため、動きベクトルの符号量を削減でき、総合的な符号化効率を向上させることが可能である。
【００２２】
テンプレートを用いた動きベクトル検出（以下、「テンプレートＭＥ」と呼ぶ）は、符号化／復号対象領域の動きは隣接領域の動きと非常に近いという動画像の特性を利用して、動きベクトルを伝送せずに符号化／復号対象領域の動きベクトルを得る技術である。よって、テンプレートとして使用する領域として、符号化／復号対象領域にできるだけ隣接している領域を選択すると、精度の高い動きベクトルを得ることができる。
【００２３】
仮領域分割部１０１は、例えば１６×１６マクロブロックなどの符号化対象となっている画素群について、任意の境界で領域を分割する。この領域分割は動きベクトル検出のための符号化側の独自手法であり、どのような境界で領域分割しても構わないが、動き補償予測の効率が向上する境界で領域分割するのが望ましい。
【００２４】
好適には、仮領域分割部１０１は、第１動きベクトル検出部１０８により検出された第１動きベクトルによってマクロブロックを動き補償予測したときの予測誤差や境界アクティビティを評価して、マクロブロックを仮分割する。
【００２５】
仮領域分割部１０１により決められるマクロブロックの境界を「仮境界」（provisional boundary）と呼び、仮境界により分割されたマクロブロック内の各領域を「仮領域」（provisional region）と呼ぶ。
【００２６】
仮領域分割部１０１により決定された仮境界により、マクロブロックは、第１動きベクトルの検出に用いられたテンプレート領域に隣接する仮領域と、テンプレート領域に隣接する部分がより少ない（あるいはテンプレート領域に隣接しない）仮領域に分割される。
【００２７】
第２動きベクトル検出部１０２は、仮領域分割部１０１により分割された仮領域のいずれか一方、好適には、テンプレート領域に隣接する部分が少ない方の仮領域について、符号化対象の原画像を用いて、通常の動き検出によって動きベクトルを検出する。第２動きベクトル検出部１０２により検出された仮領域の動きベクトルは、復号側に伝送が必要である。
【００２８】
図３は、マクロブロックの仮領域毎に検出される動きベクトルを示す図である。仮領域分割部１０１が、マクロブロックを水平境界で仮分割する場合を例に取る。第１動きベクトル検出部１０８は、符号化対象ブロック３００の水平方向の仮境界３０２よりも上側の領域について、テンプレート領域３０４を用いて、復号側で算出可能で伝送不要な動きベクトル３１０を検出する。一方、第２動きベクトル検出部１０２は、符号化対象ブロック３００の仮境界３０２より下側の領域について通常の動きベクトル探索アルゴリズムを用いて、伝送を要する動きベクトル３２０を検出する。
【００２９】
図４は、マクロブロックを垂直境界で仮分割する場合に、マクロブロックの仮領域毎に検出される動きベクトルを示す図である。第１動きベクトル検出部１０８は、符号化対象ブロック３００の垂直方向の仮境界３０２よりも左側の領域について、テンプレート領域３０６を用いて、復号側で算出可能で伝送不要な動きベクトル３３０を検出する。一方、第２動きベクトル検出部１０２は、符号化対象ブロック３００の仮境界３０２より右側の領域について通常の動きベクトル探索アルゴリズムを用いて、伝送を要する動きベクトル３２０を検出する。
【００３０】
図５（ａ）〜（ｃ）は、テンプレートを利用した動きベクトル検出方法を説明する図である。符号化側／復号側のどちらでも同じ検出方法が用いられる。図５（ａ）に示すように、符号化／復号対象ブロック３００の上辺または左辺、あるいはその両方に隣接する既に符号化／復号が済んだ領域をテンプレート領域３０４として設定し、予め定めた手法で動きベクトルを検出する。ここでは所定サーチ範囲内のすべての候補をサーチするフルサーチに基づいて説明する。
【００３１】
図５（ｂ）および図５（ｃ）に示すように、フルサーチでは、サーチ範囲内のすべての候補動きベクトルについて、符号化／復号対象画像５００内のテンプレート領域３０４と参照画像５１０内の同一テンプレート形状の領域３１４との間でブロックマッチングを行い、ＳＡＤなどの評価値が最小となる最適な領域を動きベクトル３１０とする。このように決定した動きベクトル３１０はテンプレート領域３０４について最適なベクトルであり、符号化／復号対象ブロック３００の動きがテンプレート領域３０４の動きと同一である場合は、符号化／復号対象ブロック３００においても最適動きベクトルとなる。ただし、テンプレート領域３０４が符号化／復号対象ブロック３００よりも離れすぎている場合や、符号化／復号対象ブロック３００で異なる動きが発生している場合は、必ずしも最適動きベクトルにはならない。そのためテンプレートを適切に選択することが重要である。
【００３２】
テンプレートＭＥを利用すると動きベクトルを伝送せずに、復号側で動きベクトルを算出可能なため、動きベクトルの符号量を削減できる。本発明では、テンプレートＭＥを用いて算出した動きベクトルを利用して、動き補償予測の形状を復号側で自動決定する。
【００３３】
本領域分割・動き補償部１０３は、第１動きベクトル検出部１０８および第２動きベクトル検出部１０２で検出された各仮領域の動きベクトルを用いて、参照画像メモリ１０７に蓄積されている参照画像から動き補償予測を行う。本領域分割・動き補償部１０３は、後述の手順で、各仮領域の動きベクトルから生成される複数の動き補償予測画像を合成して合成動き補償予測画像を生成する。
【００３４】
図６（ａ）、（ｂ）は、仮領域毎に検出された動きベクトルから生成される動き補償予測画像を示す。図７（ａ）〜（ｃ）は、各仮領域の動きベクトルから生成される動き補償予測画像を合成して得られる合成動き補償予測画像を示す。
【００３５】
仮領域分割部１０１が、マクロブロックを水平境界で仮分割した場合を例に説明する。図３に示すように、仮境界より上側の領域に対して第１動きベクトル、仮境界より下側の領域に対して第２動きベクトルが検出されている。本領域分割・動き補償部１０３は、図６（ａ）、（ｂ）に示すように、検出された動きベクトル毎に、参照画像を用いて、仮に当該マクロブロックの大きさ（ここでは１６×１６）で動き補償予測した場合の画像を生成する。図６（ａ）は、上側領域の第１動きベクトルを用いて生成された第１動き補償予測画像であり、図６（ｂ）は、下側領域の第２動きベクトルを用いて生成された第２動き補償予測画像である。
【００３６】
本領域分割・動き補償部１０３は、図６（ａ）、（ｂ）に示す第１、第２動き補償予測画像を、図７に示す（ａ）〜（ｃ）のいずれかのパターンに合成して合成動き補償予測画像を生成する。第１、第２動き補償予測画像は符号化対象マクロブロックと同一の大きさであり、合成動き補償予測画像を生成するために、ある境界で分割される。本領域分割・動き補償部１０３により決められるマクロブロックの境界を「本境界」（actual boundary）と呼び、本境界により分割されたマクロブロックの領域を「本領域」（actual region）と呼び、仮領域分割部１０１により決められる「仮境界」、「仮領域」と区別する。
【００３７】
図７（ａ）〜（ｃ）は、本領域分割・動き補償部１０３が決定する本境界の候補を示したものである。図７（ａ）は上から４画素目の水平境界を本境界とし、図７（ｂ）は上から８画素目の水平境界を本境界とし、図７（ｃ）は上から１２画素目の水平境界を本境界として、それぞれ、本境界より上側の本領域は第１動き補償予測画像の対応する領域、本境界より下側の本領域は第２動き補償予測画像の対応する領域で表したものである。
【００３８】
本領域分割・動き補償部１０３は、エッジ強度などを表す評価値にもとづいて、本境界を決定し、決定された本境界で第１、第２動き補償予測画像を分割して合成する。
【００３９】
図８（ａ）〜（ｃ）は、各仮領域の動きベクトルから生成される動き補償予測画像を合成して合成動き補償予測画像を生成する方法を説明する図である。本領域分割・動き補償部１０３は、本境界決定後、図８（ａ）の第１動きベクトルに対応する第１動き補償予測画像と図８（ｂ）の第２動きベクトルに対応する第２動き補償予測画像を用いて、本境界より上の領域を第１動き補償予測画像として動き補償予測し、本境界より下の領域を第２動き補償予測画像として動き補償予測する。この例では、本境界より上の１６×４の領域には、第１動き補償予測画像の対応する領域が複製され、本境界より下の１６×１２の領域には、第２動き補償予測画像の対応する領域が複製される。
【００４０】
ここでは水平方向の領域分割を例に説明したが垂直方向の領域分割の場合も同様の方法で実施可能である。また、今回は本境界候補を図７（ａ）〜（ｃ）の３通りとする場合を説明したが、本境界の候補をさらに増やしてもよい。ただし、後述するように、直交変換・量子化部１０４の直交変換サイズとの関係を十分に考慮しておく必要がある。
【００４１】
図１に戻り、減算部１１０は、符号化対象原画像と本領域分割・動き補償部１０３で算出した動き補償予測画像との差分により、予測残差成分を算出し、直交変換・量子化部１０４に与える。直交変換・量子化部１０４は、予測残差成分の直交変換・量子化を行う。
【００４２】
ここで、直交変換・量子化部１０４は、動き補償予測のサイズに対応した直交変換サイズを使用して直交変換を行う。つまり、動き補償予測のサイズとして１６×４／１６×８／１６×１２（垂直方向に４の倍数）が許容されている場合、少なくとも１６×４又は８×４又は４×４（垂直方向に４の倍数）の直交変換サイズを使用できるようにする。他の例として、動き補償予測のサイズとして１６×２／１６×４／１６×６／１６×８／１６×１０／１６×１２（垂直方向に２の倍数）が許容されている場合、少なくとも１６×２又は８×２又は４×２（垂直方向に２の倍数）の直交変換サイズを使用できるようにする。これにより、動き補償予測の予測誤差を直交変換する際に、直交変換する予測誤差集合の中に動き補償予測の境界が含まれることがなくなる。これにより、動き補償予測の境界をまたいだ画素を予測誤差として一緒に直交変換することによる直交変換効率の低下を防止することができ、符号化効率を一層向上させる効果を奏する。
【００４３】
可変長符号化部１０５は、直交変換・量子化部１０４で直交変換・量子化された予測残差成分を可変長符号化するとともに、動きベクトル検出部１０２で検出した動きベクトルを可変長符号化する。従来のようにマクロブロックを固定境界で分割する場合は、動きベクトルはラスタ順（すなわち、左上のブロックから右下のブロックへの順）で伝送する。本実施の形態のように動き補償予測の形状を復号側で自動的に決定する場合は、動き補償予測の各領域内の一番左上画素の位置がラスタ順で先のものから順に動きベクトルを伝送する。これにより、従来技術と同様、複数の動きベクトルを伝送する順序によって、動き補償予測の対象領域を一意的に表現することが可能である。
【００４４】
逆量子化・逆直交変換部１０６は、直交変換・量子化部１０４によって直交変換・量子化された予測残差成分に対して、逆量子化及び逆直交変換を行う。直交変換・量子化部１０４と同様に、動き補償予測のサイズに対応したサイズで逆直交変換できるようにしておく。
【００４５】
加算部１０９は、逆量子化・逆直交変換部１０６により復号された予測残差成分と、本領域分割・動き補償部１０３により算出された動き補償予測画像とを加算することで参照画像を生成し、参照画像メモリ１０７に格納する。
【００４６】
図２は、実施の形態１の動画像復号装置の構成を示すブロック図である。実施の形態１の動画像復号装置は、可変長復号部２０１、本領域分割・動き補償部２０３、逆量子化・逆直交変換部２０６、第１動きベクトル検出部２０８、加算部２０９、および参照画像メモリ２０７を備える。
【００４７】
可変長復号部２０１は、直交変換・量子化されている予測残差成分信号及び動きベクトルを可変長復号する。図１の動画像符号化装置により符号化されたビットストリームでは、マクロブロックを分割した領域毎に動きベクトルが符号化されているため、可変長復号部２０１により、分割領域毎に動きベクトルが復号される。ここで、マクロブロック内の動きベクトルが復号された順序によって、動き補償予測の対象領域を一意に決定することができる。
【００４８】
第１動きベクトル検出部２０８は、図１の動画像符号化装置の第１動きベクトル検出部１０８と同一の機能を持ち、復号対象ブロックに隣接する復号済領域の画素群（「テンプレート」）を用いて、テンプレート領域の動きベクトルを検出する。
【００４９】
本領域分割・動き補償部２０３は、図１の動画像符号化装置の本領域分割・動き補償部１０３と同一の機能を持ち、可変長復号部２０１で復号された動きベクトルと、第１動きベクトル検出部２０８により検出された動きベクトルとを用いて参照画像メモリ２０７に蓄積されている参照画像から動き補償予測を行う。ここで、動きベクトルはマクロブロックの分割領域毎に取得または検出されている。本領域分割・動き補償部２０３は、図１の動画像符号化装置の本領域分割・動き補償部１０３と同様の手順で、各分割領域の動きベクトルから生成される複数の動き補償予測画像を合成して合成動き補償予測画像を生成する。
【００５０】
逆量子化・逆直交変換部２０６は、図１の動画像符号化装置の逆量子化・逆直交変換部１０６と同一の機能を持ち、可変長復号部２０１で復号された予測残差成分に対して逆量子化及び逆直交変換を行う。
【００５１】
加算部２０９は、逆量子化・逆直交変換部２０６により復号された予測残差成分と、本領域分割・動き補償部２０３により算出された動き補償予測画像とを加算することにより、画像信号を復号する。参照画像メモリ２０７は、図１の動画像符号化装置の参照画像メモリ１０７と同一であり、復号された参照画像を蓄積する。
【００５２】
以上の構成による動画像符号化装置の動作を説明する。まず、図９および図１０を参照して、テンプレート領域を用いて検出された動きベクトルをもとに仮領域分割し、本境界を決定する処理を説明する。次に、図１１および図１２を参照して、本境界決定処理を詳細に説明する。
【００５３】
図９は、仮領域分割および本境界決定の手順を示すフローチャートである。ここでは、水平方向に領域分割する場合を説明する。
【００５４】
まず、第１動きベクトル検出部１０８は、所定のテンプレート領域を用いて第１動きベクトルを検出する（Ｓ１０１）。動きベクトル検出のアルゴリズムは指定した探索領域内の候補ベクトルをすべて評価するフルサーチの他、さまざまな動き特性から探索する候補ベクトルを絞り込んで探索する高速サーチなどいろいろな方法が存在する。所定のテンプレート領域を用いて動きベクトルを検出し、符号化／復号対象領域の動きベクトルとすることができるものであれば、どのような動きベクトル検出アルゴリズムを用いることも可能である。また、テンプレート領域の定義は図３や図４で例示したものに限定されず、符号化対象ブロックに隣接する領域であれば、さまざまな形状で定義することが可能である。
【００５５】
次に、仮領域分割部１０１は、第１動きベクトル検出部１０８が検出した第１の動きベクトルを用いて符号化対象領域の動き補償予測を行い、予測誤差や境界アクティビティを用いて符号化対象ブロックを仮分割する（Ｓ１０２）。
【００５６】
ここで、画像信号のアクティビティとは、画素に対して何らかの演算を施した値のことである。マクロブロックを領域分割する境界に関するアクティビティとして、たとえば、境界をまたぐ２画素間の絶対差分和（ＳＡＤ）を用いることができる。例えば、マクロブロック内のX座標をｉ、Y座標をｊとして、点（ｉ，ｊ）における画素値をＡｉ，ｊとすると、上からｊ画素目の水平境界ｊの水平アクティビティは以下のように定義される。
水平アクティビティ＝Σｉ＝０１５｜Ａｉ，ｊ−Ａｉ，ｊー１｜
ここで、Σｉ＝０１５は、添え字ｉを０から１５まで動かした場合の総和である。
【００５７】
ただし、アクティビティは絶対差分和（ＳＡＤ）でなくてもよい。以下に示すような絶対二乗和（ＳＳＤ）であってもよい。
水平アクティビティ＝Σｉ＝０１５（Ａｉ，ｊ−Ａｉ，ｊー１）２
【００５８】
同様に、マクロブロックの左からｉ画素目の垂直境界ｉの垂直アクティビティは以下のように定義される。
垂直アクティビティ＝Σｊ＝０１５｜Ａｉ，ｊ−Ａｉー１，ｊ｜
【００５９】
アクティビティは物体のエッジなどで大きい値になる。符号化対象ブロックの仮分割の１つの方法として、仮領域分割部１０１は、アクティビティ値が最も大きい境界でマクロブロックの領域を仮分割する。
【００６０】
符号化対象ブロックの仮分割の方法は、符号化側のみの手法であるため、どのようなアルゴリズムも適用可能であるが、できるだけ本領域分割に近づくような仮分割を行った方が符号化効率の高い動きベクトルを検出可能である。
【００６１】
図１０は、符号化対象ブロックの仮分割の好適な方法を説明する図である。第１動きベクトルを用いて符号化対象領域の全体について動き補償予測を行った時の動き補償予測画像３６０と符号化対象原画像３００との間の誤差を絶対差分和（ＳＡＤ）等で評価した結果に基づいて仮境界３０２を決定する。つまり、この誤差が大きい領域については、他の動きベクトルで動き補償予測した方が予測効率が向上するため、誤差が所定の閾値以上の領域と閾値未満の領域とで符号化対象ブロックを仮分割し、予測効率の低い領域（ここではテンプレート領域に隣接しない下側領域）については符号化側で動きベクトルを検出して伝送するようにする。
【００６２】
図９のフローチャートに戻る。テンプレート領域に隣接しない仮分割された下側領域について、第２動きベクトル検出部１０２は、通常の動き検出によって第２の動きベクトルを検出する（Ｓ１０３）。最後に、本領域分割・動き補償部１０３は、第１の動きベクトルと第２の動きベクトルを用いて動き補償予測した画像の境界アクティビティに基づき、符号化対象領域の本領域分割を行う（Ｓ１０４）。本領域分割処理の詳細については次に説明する。
【００６３】
図１１は、本領域分割・動き補償部１０３による本領域の決定手順を説明するフローチャートである。
【００６４】
本領域分割・動き補償部１０３は、第１動きベクトル検出部１０８で検出した第１動きベクトルを用いて、マクロブロックと同一の大きさで動き補償予測し、第１動き補償予測画像を生成する（Ｓ０１）。同様に、第２動きベクトル検出部１０２で検出した第２動きベクトルを用いて、マクロブロックと同一の大きさで動き補償予測し、第２動き補償予測画像を生成する（Ｓ０２）。
【００６５】
次に、本境界の各候補について、図１２（ａ）〜（ｄ）に示す第１〜第４アクティビティを算出する（Ｓ０３〜Ｓ０６）。ただし、ステップＳ０３〜Ｓ０６は順不同で行うことが可能である。また、ステップＳ０３〜Ｓ０６のすべてを行わずに、境界評価に使用したいアクティビティだけを算出することももちろん可能である。
【００６６】
まず、図１２（ａ）のように、第１動き補償予測画像について、本境界候補に関する境界アクティビティ（第１アクティビティ）を算出する（Ｓ０３）。ここで、アクティビティには本境界候補をまたぐ２画素間の絶対差分和（ＳＡＤ）を用いる。第１アクティビティは物体のエッジなどで値が大きくなるため、値が大きいほど該当境界で領域を分割した方が動き補償予測の予測効率が向上する。同様に、図１２（ｂ）のように、第２動き補償予測画像について、本境界候補に関する境界アクティビティ（第２アクティビティ）を算出する（Ｓ０４）。第２アクティビティは第１アクティビティと同様に、値が大きいほど該当境界で領域を分割した方が動き補償予測の予測効率が向上する。
【００６７】
続いて、図１２（ｃ）のように、マクロブロック内の本境界候補より上の領域を第１動き補償予測画像として動き補償予測し、本境界候補より下の領域を第２動き補償予測画像として合成した合成動き補償予測画像について、本境界候補に関する境界アクティビティ（第３アクティビティ）を算出する（Ｓ０５）。第３アクティビティは本境界候補をまたぐ２画素間の絶対差分和であるから、本境界候補の上下に位置する第１動き補償予測画像の画素と第２動き補償予測画像の画素の値の絶対差分の和になる。したがって、第３アクティビティは値が小さいほど、合成動き補償予測画像の境界が滑らかになり、予測誤差信号に高周波成分が発生しにくいため、動き補償予測の予測効率が向上する。
【００６８】
最後に、図１２（ｄ）のように、第１動き補償予測画像と第２動き補償予測画像の差分画像について、本境界候補に関する境界アクティビティ（第４アクティビティ）を算出する（Ｓ０６）。第４アクティビティは、物体の境界などで値が大きくなるため、値が大きいほど該当境界で領域を分割した方が動き補償予測の予測効率が向上する。
【００６９】
境界評価に使用するアクティビティをすべて算出した後に、予め定義した評価値を用いて本境界候補を評価する（Ｓ０７）。例えば、評価値は以下のように定義する。
評価値＝−Ａ＊ＡＣＴ１−Ｂ＊ＡＣＴ２＋Ｃ＊ＡＣＴ３−Ｄ＊ＡＣＴ４
ここで、ＡＣＴ１は第１アクティビティ値を表し、ＡＣＴ２は第２アクティビティ値を表し、ＡＣＴ３は第３アクティビティ値を表し、ＡＣＴ４は第４アクティビティ値を表す。また、Ａ，Ｂ，Ｃ，Ｄはそれぞれ０以上の定数である。
【００７０】
上記評価値をすべての本境界候補について算出し、最小値を持つ本境界候補を最終的な本境界に決定する（Ｓ０８）。
【００７１】
ここで、本境界と仮境界は同一になることが望ましいが、決定された本境界は必ずしも仮境界とは同一にならない。動きベクトル検出用の仮境界は、符号化側で最適な動きベクトルを求めるための境界であり、符号化側のみ利用可能な符号化対象原画像も使用して算出することができる。一方、本境界は符号化側・復号側共に一意的に算出可能でなければならず、算出した（復号側では伝送されてきた）複数の動きベクトルと、その動き補償予測画像（すなわち予測残差成分が加算される前の画像）で判断している。そのため、本境界と仮境界は同一でなくても符号化側と復号側のミスマッチなどは発生しない。
【００７２】
しかしながら、本境界と仮境界が異なることは、本境界決定後の合成動き補償予測画像に対して最適な動きベクトルを検出できていないことを意味し、予測効率が必ずしも向上しないことがある。そのため、仮領域分割部１０１により設定される仮領域を調整するか、第１動きベクトル検出部１０８および第２動きベクトル検出部１０２により検出される動きベクトルを調整することで、最適な仮境界あるいは最適な動きベクトルと、最適な本境界との双方を同時に実現すれば、符号化効率を更に向上させることができる。
【００７３】
具体的には、本領域分割・動き補償部１０３により決定される本境界が仮境界と異なる場合は、第１動きベクトル検出部１０８または第２動きベクトル検出部１０２、あるいはその両方は、動きベクトル検出をやり直す。やり直しの方法はどのような方法でも良いが、例えば動きベクトル探索時の誤差評価値の内、２番目に小さい値（第２最小値）を残しておき、第２最小値の位置から動きベクトル検出を続行するなどの手法が可能である。動きベクトル検出部１０２によって再検出された動きベクトルを用いて、本領域分割・動き補償部１０３は、本境界決定処理を再度行う。本境界が仮境界に一致するか、十分に近いものとなるまで、動きベクトル検出部１０２による動きベクトル検出処理と本領域分割・動き補償部１０３による本境界決定処理を繰り返す。
【００７４】
あるいは、別の方法として、仮領域分割部１０１が複数の仮境界候補を設定し、仮境界候補毎に、第１動きベクトル検出部１０８および第２動きベクトル検出部１０２が動きベクトルを検出し、本領域分割・動き補償部１０３は仮境界毎に本境界決定処理を行う。そして、本領域分割・動き補償部１０３は、複数の仮境界の中で合成動き補償予測画像の予測効率が最も良いものを選ぶ。
【００７５】
いずれの方法を取っても、結果的に、本領域分割・動き補償部１０３が最終決定する本境界は、仮領域分割部１０１が設定する仮境界と一致するか、十分に近いものとなり、予測効率が向上する。
【００７６】
次に、実施の形態１の動画像符号化装置により符号化される動画像のビットストリームのシンタックスについて説明する。
【００７７】
図１３は、ＭＰＥＧ−４  ＡＶＣのシンタックスをベースとした第１のシンタックスパターンを示す。図１３（ａ）のように、まず、スライス単位で予測画像の特徴量を用いて動き補償予測の形状を復号側で自動的に決定するかどうかを示すフラグ（use_auto_mc_size）を伝送する。フラグuse_auto_mc_sizeがＯＦＦの場合は、従来通り図１３（ｂ）に示すマクロブロックタイプmb_typeに基づきマクロブロックを固定的に分割して動き補償予測を行う。フラグuse_auto_mc_sizeがＯＮの場合、予測画像の特徴量を用いて動き補償予測の形状を復号側で自動的に決定して動き補償予測を行う。マクロブロック単位では、ＭＰＥＧ−４  ＡＶＣと同様にmb_typeを伝送することに加えてdec_me_flagを伝送する。
【００７８】
図１４は、フラグuse_auto_mc_sizeがＯＮ／ＯＦＦそれぞれの場合のマクロブロックタイプmb_typeのセマンティックスを示す。マクロブロックタイプmb_type＝０の場合は１６×１６のマクロブロックを領域分割せずに動き補償予測を行う。マクロブロックタイプmb_type＝１の場合、フラグuse_auto_mc_sizeがＯＦＦの場合は１６×８で動き補償予測を行うが、フラグuse_auto_mc_sizeがＯＮの場合、マクロブロックを１６×Ａと１６×（１６−Ａ）の２つの領域に自動分割して動き補償予測を行う。ここで、dec_me_flagがＯＮの場合は１６×Ａの領域の動きベクトルは伝送されずに１６×（１６−Ａ）の動きベクトルのみ伝送されることが特長である。同様に、マクロブロックタイプmb_type＝２の場合、フラグuse_auto_mc_sizeがＯＦＦの場合は８×１６ブロックで動き補償予測を行うが、フラグuse_auto_mc_sizeがＯＮの場合、マクロブロックをＡ×１６と（１６−Ａ）×１６の２つの領域に自動分割して動き補償予測を行う。これも同様に、dec_me_flagがＯＮの場合はＡ×１６の領域の動きベクトルは伝送されずに（１６−Ａ）×１６の動きベクトルのみ伝送される。マクロブロックタイプmb_type＝３の場合は８×８ブロックで動き補償予測を行う。このように、dec_me_flagがＯＮの場合は、伝送する動きベクトルは１本であり、dec_me_flagがＯＦＦの場合の２本と比較して減少するため、動きベクトルの符号量が減少し、全体の符号化効率が向上する。
【００７９】
（実施の形態２）
本発明の実施の形態２の動画像符号化装置および動画像復号装置を説明する。実施の形態１では、テンプレート領域を用いて第１動きベクトルを取得することで、第１動きベクトルを復号側に伝送不要とする一方、符号化側で独自に検出する第２動きベクトルについては復号側に伝送を要した。実施の形態２では、２つのテンプレート領域を利用することで、第１および第２動きベクトルの双方を復号側に伝送不要とする。２つのテンプレート形状から得られる２本の動きベクトルを用いて動き補償予測の形状を決定することで、動きベクトルを全く伝送せずに動き補償予測の形状を復号側で自動的に決定可能である。
【００８０】
図１５は、実施の形態２の動画像符号化装置の構成を示すブロック図である。実施の形態１とは異なり、実施の形態２の動画像符号化装置は、仮領域分割部１０１と第２動きベクトル検出部１０２の構成をもたず、第１・第２動きベクトル検出部１０８が、２つのテンプレート領域から第１および第２動きベクトルを検出する。実施の形態２では、符号化対象ブロックに対して２つのテンプレート領域を定めれば、２本の動きベクトルを検出できるため、符号化対象ブロックを仮領域に分割する処理は不要である。
【００８１】
本領域分割・動き補償部１０３は、第１・第２動きベクトル検出部１０８で検出された第１および第２動きベクトルを用いて、本境界を決定し、参照画像メモリ１０７に蓄積されている参照画像から動き補償予測を行う。本領域分割・動き補償部１０３は、各本領域の動きベクトルから生成される複数の動き補償予測画像を合成して合成動き補償予測画像を生成する。
【００８２】
図１６は、実施の形態２の動画像復号装置の構成を示すブロック図である。実施の形態１と異なる構成と動作について説明する。第１・第２動きベクトル検出部２０８は、図１５の動画像符号化装置の第１・第２動きベクトル検出部１０８と同一の機能を持ち、復号対象ブロックに隣接する復号済領域の画素群（「テンプレート」）を用いて、テンプレート領域の動きベクトルを検出する。
【００８３】
本領域分割・動き補償部２０３は、図１５の動画像符号化装置の本領域分割・動き補償部１０３と同一の機能を持ち、第１・第２動きベクトル検出部２０８により検出された第１および第２動きベクトルを用いて参照画像メモリ２０７に蓄積されている参照画像から動き補償予測を行う。本領域分割・動き補償部２０３は、図１５の動画像符号化装置の本領域分割・動き補償部１０３と同様の手順で、各分割領域の動きベクトルから生成される複数の動き補償予測画像を合成して合成動き補償予測画像を生成する。
【００８４】
図１７は、実施の形態２における本境界決定手順を示すフローチャートである。
【００８５】
まず、図１８（ａ）に示すように、符号化対象ブロック３００に水平方向に隣接する第１テンプレート領域３０４を用いて第１動きベクトル３１０を検出する（Ｓ１１）。これは実施の形態１で説明した手順と同様である。同様に、図１８（ｂ）に示すように、符号化対象ブロック３００に垂直方向に隣接する第２テンプレート領域３０６を用いて第２動きベクトル３３０を検出する（Ｓ１２）。ここで、各テンプレート領域３０４、３０６は図１８（ａ）、（ｂ）の形状に限定されない。符号化対象ブロックに隣接する領域ならばどのような形状に定義してもよい。
【００８６】
次に、本領域分割・動き補償部１０３は、第１動きベクトルと第２動きベクトルを用いて動き補償予測した画像の境界アクティビティに基づき、符号化対象領域の本領域分割を行う（Ｓ１３）。図１８（ｃ）に示すように本境界４００を垂直方向に定めた場合と、図１８（ｄ）に示すように本境界４００を水平方向に定めた場合の両方について、境界アクティビティを求め、評価値の良い方の本境界を選択する。
【００８７】
ここでは、２つのテンプレート領域から２つの動きベクトルを求め、符号化対象領域を２つの本領域に分割したが、３以上のテンプレート領域から３以上の動きベクトルを求め、符号化対象領域を３以上の本領域に分割してもよい。このように、複数のテンプレートの形状から複数の動きベクトルを算出して動き補償予測を復号側で自動的に決定することで、動きベクトルを全く伝送せずに、任意の形状での動き補償予測が可能になる。
【００８８】
テンプレートマッチングの形状を変えた時に得られる複数の動きベクトルを用いて動き補償予測の形状を決定する場合のシンタックスについて説明する。シンタックスは実施の形態１と同様であり、mb_typeのセマンティックスのみが異なる。
【００８９】
図１９は、フラグuse_auto_mc_sizeがＯＮ／ＯＦＦそれぞれの場合のマクロブロックタイプmb_typeのセマンティックスを示す。図１９（ａ）は、フラグuse_auto_mc_sizeがＯＦＦの場合であり、実施の形態１と同じである。図１９（ｂ）は、フラグuse_auto_mc_sizeがＯＮの場合であり、mb_typeのセマンティックスは、１６×Ａと１６×（１６−Ａ）の水平方向に領域分割するのと、Ａ×１６と（１６−Ａ）×１６の垂直方向に領域分割するのが、mb_type＝１として区別されずに扱われる。
【００９０】
実施の形態２では、２つのテンプレート領域を用いて得られる第１および第２動きベクトルは、復号側でも同じ処理で得られるため、動きベクトルを復号側に伝送する必要は全くない。
【００９１】
（実施の形態３）
本発明の実施の形態３の動画像符号化装置および動画像復号装置を説明する。実施の形態３は、実施の形態１と同一の構成を取るが、第１動きベクトル検出部１０８は、２つのテンプレート形状から得られる第１および第２動きベクトルの内、１本の動きベクトルを採用する点が実施の形態１とは異なる。
【００９２】
図２０は、実施の形態３における本境界決定手順を示すフローチャートである。
【００９３】
まず、図２１（ａ）に示すように、符号化対象ブロック３００に水平方向に隣接する第１テンプレート領域３０４を用いて第１動きベクトル３１０を検出する（Ｓ２１）。これは実施の形態１で説明した手順と同様である。同様に、図２１（ｂ）に示すように、符号化対象ブロック３００に垂直方向に隣接する第２テンプレート領域３０６を用いて第２動きベクトル３３０を検出する（Ｓ２２）。
【００９４】
次に、本領域分割・動き補償部１０３は、第１動きベクトル３１０を検出した際の評価値（たとえば、ＳＡＤ等により評価された予測誤差）と第２動きベクトル３３０を検出した際の評価値を比較し、小さい方のＳＡＤを持つ動きベクトルをより信頼できる動きとみなし、第１動きベクトルとして採用する（Ｓ２３）。ここで、第１テンプレート領域３０４と第２テンプレート領域３０６の面積（画素数）が同一の場合は評価値をそのまま比較することができるが、各領域の画素数が異なる場合は、画素数の違いを吸収するために重みをつけて比較する。すなわち、評価値を一画素当たりの値に換算して使用する。また、動きベクトル検出の際の評価値はＳＡＤに限らずＳＳＤやＳＡＴＤ（Sum of Absolute Transfered Difference）を用いることができる。
【００９５】
第１動きベクトル３１０が採用された場合、第１テンプレート領域３０４に隣接するのは符号化／復号対象ブロックの左側領域であるため、本境界の方向を垂直方向に決定する。第２動きベクトル３３０が採用された場合、第２テンプレート領域３０６に隣接するのは符号化／復号対象ブロックの上側領域であるため、本境界の方向を水平方向に決定する。
【００９６】
以降の処理は実施の形態１と同様であり、符号化側では、仮境界を決定し（Ｓ２４）、テンプレート領域に隣接していないか、隣接している部分が少ない予測効率の低い側の領域に対して、通常の動き検出により、第３動きベクトル３５０を検出する（Ｓ２５）。図２１（ａ）の第１動きベクトル３１０を採用した場合は、仮領域分割された下側領域について、第３動きベクトル３５０を検出し、図２１（ｂ）の第２動きベクトル３３０を採用した場合は、仮領域分割された右側領域について、第３動きベクトル３５０を検出する。
【００９７】
最後に、ステップＳ２３で採用された動きベクトルと、第３動きベクトル３５０とを用いて、実施の形態１と同様の方法で本境界を決定する（Ｓ２６）。図２１（ａ）の第１動きベクトル３１０を採用した場合は、図２１（ｃ）に示すように、垂直方向の本境界４００が決定され、図２１（ｂ）の第２動きベクトル３３０を採用した場合は、図２１（ｄ）に示すように、水平方向の本境界４００が決定される。
【００９８】
実施の形態３では、２つのテンプレート領域を用いて得られた第１および第２動きベクトルの内、最終的に採用された方の動きベクトルは復号側でも得られるため、伝送する必要はないが、符号化側の通常の動き検出により検出された第３動きベクトルは符号化側でしか得られない情報であるため、復号側に伝送する。復号側では、２つのテンプレート領域を用いて得られる第１および第２動きベクトルの内、符号化側と同じ方法で選択される動きベクトルと、符号化側から伝送された第３動きベクトルとを用いて動き補償予測する。
【００９９】
実施の形態３では、２本の動きベクトル候補から採用する動きベクトルを自動判断する際に領域分割の方向も同時に決定することができるため、実施の形態２と同様に図２１に示すシンタックスパターンを用いることができる。
【０１００】
（実施の形態４）
本発明の実施の形態４の動画像符号化装置および動画像復号装置を説明する。実施の形態４は、実施の形態２と同様に、２つのテンプレート領域を利用することで、第１および第２動きベクトルの双方を復号側に伝送不要とすることに加えて、符号化側で独自に検出する第３動きベクトルについては復号側に伝送することで、領域を３分割する。
【０１０１】
図２２は、実施の形態４の動画像符号化装置の構成を示すブロック図である。実施の形態２と同様、第１・第２動きベクトル検出部１０８は、２つのテンプレート領域から第１および第２動きベクトルを検出する。実施の形態４は、実施の形態２とは違い、仮領域分割部１０１と第３動きベクトル検出部１０２の構成を有する。第３動きベクトル検出部１０２は、第１および第２テンプレート領域のいずれにも隣接しない予測効率の低い第３の領域（サブ領域）に対して、通常の動き検出によって第３動きベクトルを検出する。
【０１０２】
仮領域分割部１０１は、第１・第２動きベクトル検出部１０８により得られた第１および第２動きベクトルにもとづいて、符号化対象ブロックを３分割する際の仮境界を定める。
【０１０３】
本領域分割・動き補償部１０３は、第１・第２動きベクトル検出部１０８で検出された第１および第２動きベクトルと、第３動きベクトル検出部１０２により検出された第３動きベクトルとを用いて、実施の形態１と同様の方法で本境界を決定し、参照画像メモリ１０７に蓄積されている参照画像から動き補償予測を行う。
【０１０４】
図２３は、実施の形態４の動画像復号装置の構成を示すブロック図である。実施の形態１と異なる構成と動作について説明する。第１・第２動きベクトル検出部２０８は、図２２の動画像符号化装置の第１・第２動きベクトル検出部１０８と同一の機能を持ち、復号対象ブロックに隣接する復号済領域の画素群（「テンプレート」）を用いて、テンプレート領域の動きベクトルを検出する。
【０１０５】
本領域分割・動き補償部２０３は、図２２の動画像符号化装置の本領域分割・動き補償部１０３と同一の機能を持ち、可変長復号部２０１で復号された第３動きベクトルと、第１・第２動きベクトル検出部２０８により検出された第１および第２動きベクトルとを用いて参照画像メモリ２０７に蓄積されている参照画像から動き補償予測を行う。本領域分割・動き補償部２０３は、図２２の動画像符号化装置の本領域分割・動き補償部１０３と同様の手順で、各分割領域の動きベクトルから生成される複数の動き補償予測画像を合成して合成動き補償予測画像を生成する。
【０１０６】
図２４は、実施の形態４における本境界決定手順を示すフローチャートである。
【０１０７】
まず、図２５（ａ）に示すように、符号化／復号対象ブロック３００に水平方向に隣接する第１テンプレート領域３０４を用いて第１動きベクトル３１０を検出する（Ｓ３１）。これは実施の形態１で説明した手順と同様である。同様に、図２５（ｂ）に示すように、符号化対象ブロック３００に垂直方向に隣接する第２テンプレート領域３０６を用いて第２動きベクトル３３０を検出する（Ｓ３２）。
【０１０８】
ここで、第１テンプレート領域３０４は、符号化／復号対象ブロック３００の左下半分だけに隣接し、第２テンプレート領域３０６は、符号化／復号対象ブロック３００の右上半分だけに隣接している。このようなテンプレート形状の設定は、精度の高い動きベクトルを算出するために重要である。すなわち、最終的に３分割される領域が図２５（ｃ）、（ｄ）のような形状になることを想定して、予め動き補償予測に使用される領域と隣接しなくなることが予想される領域をテンプレート領域から除外しておくことで、検出される動きベクトルの精度を高めている。
【０１０９】
次に、実施の形態３と同様の方法で、第１動きベクトル３１０を検出した際の評価値と第２動きベクトル３３０を検出した際の評価値を比較し、評価値が良い方の動きベクトルをメイン動きベクトルとし、評価値が悪い方の動きベクトルをサブ動きベクトルとする（Ｓ３３）。第１動きベクトル３１０がメイン動きベクトルとなった場合、第１テンプレート領域３０４に隣接する符号化／復号対象ブロック３００の領域は左側であるため、ブロック３００を最初に分割する垂直方向の本境界４００を決定する。また、第２動きベクトル３３０がメイン動きベクトルとなった場合、第２テンプレート領域３０６に隣接する符号化／復号対象ブロック３００の領域は上側であるため、ブロック３００を最初に分割する水平方向の本境界４００を決定する（Ｓ３４）。ブロック３００の最初の分割は、２つのテンプレートを利用して得られる２つの動きベクトルにもとづいてなされるため、第２の実施の形態と同様、仮境界を定める必要はなく、最初から本境界が定まる。
【０１１０】
次に、最初の本境界４００によって分割された領域のうち、メイン動きベクトルに対応するテンプレート領域に直接隣接していない方の領域、すなわちサブ動きベクトルに対応する方の領域について、サブ動きベクトルと第３動きベクトルを用いて本境界の方向を決定する（Ｓ３５）。ステップＳ３５ではメイン動きベクトルで動き補償予測した領域の方がサブ動きベクトルで動き補償予測した領域よりも信頼できるため、サブ動きベクトルで動き補償予測した領域についてさらに領域分割する。実施の形態１と同様、符号化側では、まず仮境界を決定し、テンプレート領域に隣接していないか、隣接している部分が少ない予測効率の低い側の領域に対して、通常の動き検出により、第３動きベクトル３５０を検出する。ブロック３００が垂直方向の本境界４００で最初に分割された場合、右側領域をさらに上下に仮領域分割された第３の右下領域について、第３動きベクトル３５０を検出する。ブロック３００が水平方向の本境界４００で最初に分割された場合、下側領域をさらに左右に仮領域分割した第３の右下領域について、第３動きベクトル３５０を検出する。
【０１１１】
そして、最後に、サブ動きベクトルと第３動きベクトル３５０とを用いて、実施の形態１と同様の方法で本境界を決定する。ブロック３００が垂直方向の第１の本境界４００で最初に分割された場合は、図２５（ｃ）に示すように、右側領域についてさらに上下に分割する水平方向の第２の本境界４０２が決定され、ブロック３００が水平方向の第１の本境界４００で最初に分割された場合は、図２５（ｄ）に示すように、下側領域についてさらに左右に分割する垂直方向の第２の本境界４０２が決定される。
【０１１２】
実施の形態４では、２つのテンプレート領域を用いて得られた第１および第２動きベクトルは復号側でも得られるため、伝送する必要はないが、符号化側の通常の動き検出により検出された第３動きベクトルは符号化側でしか得られない情報であるため、復号側に伝送する。
【０１１３】
実施の形態４では、２本の動きベクトルの中で、より効率の高い動きベクトルを基準として第１の本境界４００を決定し、基準動きベクトルよりは信頼度が低い残りの動きベクトルで動き補償予測する領域の方を第２の本境界４０２でさらに領域分割して動き補償予測するため、効率の高い動き補償予測を行うことが可能である。
【０１１４】
このように、実施の形態４では、実施の形態１より柔軟な形状で動き補償予測を行えるため、更に符号化効率が向上する。
【０１１５】
ここまでは、ＭＰＥＧのＰピクチャなどで用いられる片方向予測について本発明の実施の形態を説明してきたが、本発明の実施の形態をＢピクチャなどで用いられる双方向予測（通常は前方向予測と後方向予測）に対して適用することもできる。双方向予測とは、２つの参照画像から動き補償予測を行うことで得た２つの画像を平均化又は重みづけ平均化することにより、予測画像を得る技術である。各領域について各予測方向（前方向、後方向）に動きベクトルがある点を除けば、片方向予測の場合と同様に、双方向予測に対して本発明の実施の形態を適用することができる。双方向予測により予測誤差を削減しつつ、適切な領域分割により更に予測誤差を削減可能である。
【０１１６】
また、本発明の実施の形態は、自動算出する動きベクトルとして、テンプレートＭＥを利用した動きベクトルの自動算出だけでなく、予測動きベクトル（ＰＭＶ）を用いることや、周辺ブロックの動きベクトルをそのまま利用することももちろん可能である。この場合も動きベクトルの符号量を削減しつつ動き補償予測の形状を自動的に決定するが可能である。
【０１１７】
また、ここまでは単一の画像コンポーネント（輝度）について説明したが、ＹＵＶ４：４：４／ＹＵＶ４：２：２／ＹＵＶ４：２：０などの複数コンポーネント（輝度及び色差）にも適用することが可能である。ただし、動き補償予測では輝度と色差を同時に行うため、ＹＵＶ４：２：２やＹＵＶ４：２：０などの輝度と色差のサンプル数が異なるフォーマットでは、サンプル数の多い輝度を基準に領域を分割した場合、色差の領域分割位置があいまいになる可能性がある。例えば、ＹＵＶ４：２：０フォーマットの時に、輝度を１６×５と１６×１１に分割する場合に色差の領域分割が８×２なのか８×３なのか不明になどである。このあいまいさを防止する対策としては、あらかじめサンプル数の少ない色差を基準にして領域を分割することや、あいまいな位置での色差の分割規則を予め決めておく（ブロックの中心を基準に切り捨てる）方法や、境界上の画素は両動き補償予測画像の平均値（フィルタリング）を用いる方法などがある。
【０１１８】
以上述べたように、本発明の実施の形態によれば、複数の動きベクトルから得られる複数の予測画像の特徴量を用いて、動き補償予測の形状を復号側で自動的に決定することによって、動き補償予測形状パターンの情報を伝送せずに、動き補償予測の形状を可変にすることができる。したがって、さまざまな形状での柔軟な動き補償予測が可能となり、その結果、付加情報の符号量を増加させることなく、動き補償予測の予測誤差を減少させることができ、符号化効率が向上する。
【０１１９】
また、符号化側の動きベクトル検出過程において、復号側で決定される本境界を算出しながら動きベクトルを評価することで、最適な動きベクトルと最適な本境界の双方を同時に実現した。これにより、動き補償予測の予測効率が向上する。また、復号側では伝送されてきた動きベクトルから算出される本境界を用いて動き補償予測を行うだけで、動画像を復号することができる。
【０１２０】
符号化／復号対象領域に隣接する復号済領域をテンプレートとして復号側で自動算出される動きベクトルを用いて、復号側で自動的に動き補償予測の形状を決定するため、動き補償予測の形状に関する付加情報符号量を削減できる。それに加えて、動きベクトルを伝送する必要がないので、動きベクトルの符号量も削減可能である。これにより、符号化効率を向上させることが可能である。
【０１２１】
また、複数のテンプレートの形状から複数の動きベクトルを算出して動き補償予測の形状を復号側で自動的に決定するため、動きベクトルを全く伝送せずに、任意の形状での動き補償予測が可能である。これにより、符号化効率を更に向上させることが可能である。
【０１２２】
さらに、複数のテンプレートの形状から精度の高い動きベクトルを採用し、符号化／復号対象領域の予測効率の低い領域については動きベクトルを伝送することもできる。これにより、予測効率の高い領域にのみ復号側で自動的に算出する動きベクトルを適用可能となり、さらに符号化効率を向上させることが可能である。
【０１２３】
以上の符号化及び復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ＲＯＭ（リード・オンリ・メモリ）やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【０１２４】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０１２５】
１０１  仮領域分割部、  １０２  第２動きベクトル検出部、  １０３  本領域分割・動き補償部、  １０４  直交変換・量子化部、  １０５  可変長符号化部、  １０６  逆量子化・逆直交変換部、  １０７  参照画像メモリ、  １０８  第１動きベクトル検出部、  １０９  加算部、  １１０  減算部、  ２０１  可変長復号部、  ２０３  本領域分割・動き補償部、  ２０６  逆量子化・逆直交変換部、  ２０７  参照画像メモリ、  ２０８  第１動きベクトル検出部、  ２０９  加算部。
【図１】
2011254395.tif 000003
【図２】
2011254395.tif 000004
【図３】
2011254395.tif 000005
【図４】
2011254395.tif 000006
【図５】
2011254395.tif 000007
【図６】
2011254395.tif 000008
【図７】
2011254395.tif 000009
【図８】
2011254395.tif 000010
【図９】
2011254395.tif 000011
【図１０】
2011254395.tif 000012
【図１１】
2011254395.tif 000013
【図１２】
2011254395.tif 000014
【図１３】
2011254395.tif 000015
【図１４】
2011254395.tif 000016
【図１５】
2011254395.tif 000017
【図１６】
2011254395.tif 000018
【図１７】
2011254395.tif 000019
【図１８】
2011254395.tif 000020
【図１９】
2011254395.tif 000021
【図２０】
2011254395.tif 000022
【図２１】
2011254395.tif 000023
【図２２】
2011254395.tif 000024
【図２３】
2011254395.tif 000025
【図２４】
2011254395.tif 000026
【図２５】
2011254395.tif 000027