(57)【特許請求の範囲】
【請求項１】
隣接パーティションの動きベクトルを使用して現在ブロックの動きベクトルを推定するための動きベクトル推定方法において、
前記現在ブロックに対し、現在フレームが分割された一定サイズの各パーティションの各動きベクトルに基づいて全域動きベクトルを推定する段階と、
前記現在ブロックの動きベクトルと前記隣接パーティションの動きベクトルとの第１動きベクトル差、及び前記現在ブロックの動きベクトルと前記推定された全域動きベクトルとの第２動きベクトル差を計算する段階と、
前記第１動きベクトル差及び前記第２動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記現在ブロックの動きベクトルとして推定する段階と、
前記現在ブロックに関連する動き情報を伝送する段階と、
を含み、前記動き情報は、前記現在ブロックの動きベクトルと前記現在ブロックの推定された動きブロックとの動きベクトル差、１フレーム当たり１つの全域動きベクトル及び前記現在ブロックの推定された動きベクトルについての情報を含む、動きベクトル推定方法。
【請求項２】
前記推定段階において、
全域動きベクトルが複数個である場合、各全域動きベクトルと前記現在ブロックの動きベクトルとの動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記全域動きベクトルとして推定することを特徴とする請求項１に記載の動きベクトル推定方法。
【請求項３】
前記推定段階は、
現在フレームを一定サイズのパーティションに分割し、前記分割されたパーティションそれぞれに対して動きベクトルを求める段階と、
前記パーティションそれぞれに対して求めた動きベクトルの中間値を、前記全域動きベクトルとして推定する段階とを含むことを特徴とする請求項１に記載の動きベクトル推定方法。
【請求項４】
前記推定段階は、
現在フレームを一定サイズのパーティションに分割し、前記分割されたパーティションそれぞれに対して動きベクトルを求める段階と、
前記パーティションそれぞれに対して求めた動きベクトルのうち、頻度が高い動きベクトルを、前記全域動きベクトルとして推定する段階とを含むことを特徴とする請求項１に記載の動きベクトル推定方法。
【請求項５】
前記隣接パーティションの動きベクトルは、
前記現在ブロックに隣接したパーティションのうち、いずれか１つの動きベクトル、前記現在ブロックに隣接したパーティションの動きベクトルの中間値、または前記現在ブロックに対する時間的動きベクトルのうち、いずれか一つであることを特徴とする請求項４に記載の動きベクトル推定方法。
【請求項６】
請求項１に記載の方法を動きベクトル推定装置に実行させるためのプログラムが記録されたコンピュータで読み取り可能な記録媒体。
【請求項７】
隣接パーティションの動きベクトルを使用して現在ブロックの動きベクトルを推定する動きベクトル推定装置において、
前記現在ブロックに対し、現在フレームが分割された一定サイズの各パーティションの各動きベクトルに基づいて全域動きベクトルを推定する全域動き推定部と、
前記現在ブロックの動きベクトルと前記隣接パーティションの動きベクトルとの第１動きベクトル差、及び前記現在ブロックの動きベクトルと前記推定された全域動きベクトルとの第２動きベクトル差を計算する動きベクトル差（ＭＶＤ）計算部と、
前記第１動きベクトル差及び前記第２動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記現在ブロックの動きベクトルとして推定し、前記現在ブロックと関連した動き情報を伝送する動きベクトル推定部と
を含み、前記動き情報は、前記現在ブロックの動きベクトルと前記現在ブロックの推定された動きブロックとの動きベクトル差、１フレーム当たり１つの全域動きベクトル及び前記現在ブロックの推定された動きベクトルについての情報を含む、動きベクトル推定装置。
【請求項８】
前記全域動き推定部は、
全域動きベクトルが複数個である場合、各全域動きベクトルと前記現在ブロックの動きベクトルとの動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記全域動きベクトルとして推定することを特徴とする請求項７に記載の動きベクトル推定装置。
【請求項９】
前記全域動き推定部は、
現在フレームを一定サイズのパーティションに分割し、前記分割されたパーティションそれぞれに対して動きベクトルを求める一方、前記パーティションそれぞれに対して求めた動きベクトルの中間値を、前記全域動きベクトルとして推定することを特徴とする請求項７に記載の動きベクトル推定装置。
【請求項１０】
前記全域動き推定部は、
現在フレームを一定サイズのパーティションに分割し、前記分割されたパーティションそれぞれに対して動きベクトルを求める一方、前記パーティションそれぞれに対して求めた動きベクトルのうち、頻度が高い動きベクトルを、前記全域動きベクトルとして推定することを特徴とする動き請求項７に記載の動きベクトル推定装置。
【請求項１１】
前記隣接パーティションの動きベクトルは、
前記現在ブロックに隣接したパーティションのうち、いずれか１つの動きベクトル、前記現在ブロックに隣接したパーティションの動きベクトルの中間値、または前記現在ブロックに対する時間的動きベクトルのうち、いずれか一つであることを特徴とする請求項１０に記載の動きベクトル推定装置。
【請求項１２】
ビデオエンコーダであって、
現在ブロック及び前記現在ブロックに隣接した隣接パーティションそれぞれの動きベクトルを生成する動き推定部と、
前記現在ブロックに対し、現在フレームが分割された一定サイズの各パーティションの各動きベクトルに基づいて全域動きベクトルを推定し、前記生成された現在ブロックの動きベクトルと前記生成された隣接パーティションの動きベクトルとの第１動きベクトル差、及び前記生成された現在ブロックの動きベクトルと前記推定された全域動きベクトルとの第２動きベクトル差を計算し、前記第１動きベクトル差及び前記第２動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記現在ブロックの動きベクトルとして推定し、前記生成された現在ブロックの動きベクトル及び前記現在ブロックの推定された動きベクトルから、動き情報を生成する動きベクトル推定装置と、
前記動き情報をエントロピ符号化するエントロピ符号化部と
を含み、前記動き情報は、前記現在ブロックの動きベクトルと前記現在ブロックの推定された動きブロックとの動きベクトル差、１フレーム当たり１つの全域動きベクトル及び前記現在ブロックの推定された動きベクトルについての情報を含む、ビデオエンコーダ。
【請求項１３】
前記動きベクトル推定装置は、
全域動きベクトルが複数個である場合、それぞれの全域動きベクトルと、前記現在ブロックの動きベクトルとの動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記全域動きベクトルとして推定する、請求項１２に記載のビデオエンコーダ。
【請求項１４】
前記動きベクトル推定装置は、
現在フレームを一定のサイズのパーティションに分割し、前記分割されたパーティションそれぞれについて動きベクトルを求める一方、前記パーティションそれぞれについて求められた動きベクトルの中間値を、前記全域動きベクトルとして推定することを特徴とする請求項１２に記載のビデオエンコーダ。
【請求項１５】
前記動きベクトル推定装置は、
現在フレームを一定サイズのパーティションに分割し、分割されたパーティションそれぞれについて動きベクトルを求める一方、前記パーティションそれぞれについて求められた動きベクトルのうち、頻度が高い動きベクトルを、前記全域動きベクトルとして推定することを特徴とする請求項１２に記載のビデオエンコーダ。
【請求項１６】
前記隣接パーティションの動きベクトルは、
前記現在ブロックに隣接した隣接パーティションのうち、いずれか１つの動きベクトル、前記現在ブロックに隣接したパーティションの動きベクトルの中間値、または前記現在ブロックに係る時間的動きベクトルのうち、いずれか一つであることを特徴とする請求項１２に記載のビデオエンコーダ。
【請求項１７】
ビデオデコーダであって、
ビットストリームから動き情報をエントロピ復号化するエントロピ復号化部と、
前記復号化された動き情報から現在ブロックに対する動きベクトルを再生する動きベクトル推定部と、
前記再生された動きベクトルを利用して現在ブロックを復元するマクロブロック復元部と
を含み、前記動き情報は、前記現在ブロックの動きベクトルと前記現在ブロックの推定された動きベクトルとの動きベクトル差、１フレーム当たり１つの全域動きベクトル及び前記現在ブロックの推定された動きベクトルについての情報を含み、
前記現在ブロックの推定された動きベクトルは、前記現在ブロックに隣接した隣接パーティションの動きベクトルまたは現在フレームが分割された一定サイズの各パーティションの各動きベクトルに基づいて推定された全域動きベクトルのうち、いずれか一つである、ビデオデコーダ。
【請求項１８】
前記現在ブロックに隣接したパーティションの動きベクトルは、
前記現在ブロックに隣接したパーティションのうち、いずれか１つの動きベクトル、前記現在ブロックに隣接したパーティションの動きベクトルの中間値、または前記現在ブロックに係る時間的動きベクトルのうち、いずれか一つであることを特徴とする請求項１７に記載のビデオデコーダ。
【請求項１９】
ビデオデコーダが実行するデコーディング方法であって、
ビットストリームから動き情報をエントロピ復号化する段階と、
前記復号化された動き情報から現在ブロックに係る動きベクトルを再生する段階と、
前記再生された動きベクトルを利用して現在ブロックを復元する段階と
を含み、前記動き情報は、少なくとも現在ブロックの動きベクトルと、前記現在ブロックの推定された動きベクトルとの動きベクトル差、１フレーム当たり１つの全域動きベクトル及び前記現在ブロックの推定された動きベクトルについての情報を含み、
前記現在ブロックの推定された動きベクトルは、前記現在ブロックに隣接した隣接パーティションの動きベクトル、または現在フレームが分割された一定サイズの各パーティションの各動きベクトルに基づいて推定された全域動きベクトルのうち、いずれか一つである、デコーディング方法。
【請求項２０】
前記現在ブロックに隣接した隣接パーティションの動きベクトルは、
前記現在ブロックに隣接したパーティションのうち、いずれか１つの動きベクトル、前記現在ブロックに隣接したパーティションの動きベクトルの中間値、または前記現在ブロックに係る時間的動きベクトルのうち、いずれか一つであることを特徴とする請求項１９に記載のデコーディング方法。
【請求項２１】
請求項１９に記載の方法をビデオデコーダに実行させるためのプログラムが記録されたコンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオコーディングに係り、全域動きベクトルを使用して動きベクトルを推定するための方法、装置、エンコーダ、デコーダ及びデコーディング方法に関する。
【背景技術】
【０００２】
インター・フレーム及びイントラ・フレームの予測は、二種の主なビデオ符号化技術である。イントラ・フレーム予測は、単一フレーム内で隣接したピクセルのグレイレベル間の強い相関度（correlation）に基づいたビデオ符号化技術である。インター・フレーム予測は、ビデオシーケンスにおいて、連続するフレーム間の類似性（similarities）に基づいたビデオ符号化技術である。動く画面で急激な変化がない限り、動き画面の多くの部分は、連続するフレーム間でほとんど変化しない。特に、動きベクトル予測は、インター・フレーム予測で使われるビデオ符号化技術のうちの一つである。動きベクトル予測は、動き予測によって計算された動きベクトルを差別符号化（differentially  encoding）することによって、イメージを処理するための技術である。一般的に、あるブロックの動きベクトルは、隣接パーティションの動きベクトルと密接な相関関係を有する。そのために、隣接パーティションから現在ブロックを予測し、その差分ベクトルだけを符号化することによって、符号化しなければならないビット量を減らすことができる。
【０００３】
図１Ａ及び図１Ｂは、従来技術による、動き予測に使われる隣接パーティションの例示である。
【０００４】
図１Ａは、現在マクロブロックＥと隣接パーティションＡ，Ｂ，Ｃとの形状が同じ場合であり、動きベクトルの予測符号化は、左側ブロックＡ、上端ブロックＢ、右側上端ブロックＣの動きベクトル（ＭＶ：motion  vector）を使用し、水平成分と垂直成分との中央値（median  value）を使用する。
【０００５】
図１Ｂは、現在マクロブロックＥと隣接パーティションＡ，Ｂ，Ｃとの形状が異なる場合であり、次のような方法によって、現在ブロックＥの動きベクトルを予測する。
【０００６】
（１）符号化しようというブロックＥの左側にある隣接パーティションがさまざまなブロックに分けられている場合、そのうち、最も上端に位置したブロックＡを予測に使用する。また、符号化しようというブロックＥの上端にある隣接パーティションがいくつかに分けられている場合、そのうち、最も左側に位置したブロックＢを予測に使用する。その後、動きベクトルの予測符号化のために、左側ブロックＡ、上端ブロックＢ、右側上端ブロックＣ動きベクトル（ＭＶ）を使用し、水平成分と垂直成分との中央値を使用する。
【０００７】
（２）ただし、例外的に、符号化しようというマクロブロックＥが正方形ではない場合（１６×８ピクセルまたは８×１６）、中央値を使用せずに動き補償ブロックサイズによって、次の通り動きベクトルを予測する。
【０００８】
（i）符号化しようというブロックが１６×８ピクセルである場合、上端ブロックはブロックＢを、下端ブロックはブロックＡを予測に使用する。
【０００９】
（ii）符号化しようというブロックが８×１６ピクセルである場合、左側ブロックはブロックＡを、右側ブロックはブロックＣを予測に使用する。
【００１０】
（３）スキップマクロブロック・モードである場合は、上の（１）と同じである。
【００１１】
前述のように、現在ブロックの推定された動きベクトル（動きベクトル・プレディクタともいう）は、隣接パーティションの動きベクトルの中間値として定義される。従って、隣接パーティションと現在ブロックとの動きが異なる場合、現在ブロックの実際の動きベクトルよりＭＶＤ（motion  vector  difference）値がさらに大きい場合が生じることがある。従って、符号化しなければならないビット量がむしろ増えることが起こりうる。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
本発明は、前記のような問題点を解決するために創出されたものであり、隣接パーティションの動きベクトル以外に、全域動きベクトルを使用して動きベクトルを推定するための方法、装置、エンコーダ、デコーダ及びデコーディング方法を提供するところにその目的がある。
【課題を解決するための手段】
【００１３】
前記目的を達成するために、本発明の第１実施形態による動きベクトル推定方法は、隣接パーティションの動きベクトルを使用して現在ブロックの動きベクトルを推定するための方法において、（ａ）前記現在ブロックに対する全域動きベクトルを推定する段階と、（ｂ）前記現在ブロックの動きベクトルと前記隣接パーティションの動きベクトルとの第１動きベクトル差、及び前記現在ブロックの動きベクトルと前記推定された全域動きベクトルとの第２動きベクトル差を計算する段階と、（ｃ）前記第１動きベクトル差及び前記第２動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記現在ブロックの動きベクトルとして推定する段階とを含むことを特徴とする。
【００１４】
望ましくは、前記（ａ）段階で、全域動きベクトルが複数個である場合、各全域動きベクトルと前記現在ブロックの動きベクトルとの動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記全域動きベクトルとして推定することを特徴とする。
【００１５】
望ましくは、前記（ａ）段階は、現在フレームを一定サイズのパーティションに分割し、前記分割されたパーティションそれぞれに対して動きベクトルを求める段階と、前記パーティションそれぞれに対して求めた動きベクトルの中間値を前記全域動きベクトルとして推定する段階とを含むことを特徴とする。
【００１６】
望ましくは、前記（ａ）段階は、現在フレームを一定サイズのパーティションに分割し、前記分割されたパーティションそれぞれに対して動きベクトルを求める段階と、前記パーティションそれぞれに対して求めた動きベクトルのうち、頻度が高い動きベクトルを、前記全域動きベクトルとして推定する段階とを含むことを特徴とする。
【００１７】
望ましくは、前記隣接パーティションの動きベクトルは、前記現在ブロックに隣接したパーティションのうち、いずれか１つの動きベクトル、前記現在ブロックに隣接したパーティションの動きベクトルの中間値、または前記現在ブロックに対する時間的動きベクトルのうち、いずれか一つであることを特徴とする。
【００１８】
望ましくは、前記動きベクトル推定方法は、前記現在ブロックと関連した動き情報を伝送する段階をさらに含むことを特徴とする。
【００１９】
本発明の第２実施形態によれば、前記方法を実行するためのプログラムが記録されたコンピュータで読み取り可能な記録媒体が提供される。
【００２０】
本発明の第３実施形態によれば、動きベクトル推定装置が提供されるが、前記装置は、隣接パーティションの動きベクトルを使用して現在ブロックの動きベクトルを推定するための装置において、（ａ）前記現在ブロックに対する全域動きベクトルを推定する全域動き推定部と、（ｂ）前記現在ブロックの動きベクトルと前記隣接パーティションの動きベクトルとの第１動きベクトル差、及び前記現在ブロックの動きベクトルと前記推定された全域動きベクトルとの第２動きベクトル差を計算するＭＶＤ（motion vector difference）計算部と、（ｃ）前記第１動きベクトル差及び前記第２動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記現在ブロックの動きベクトルとして推定する動きベクトル推定部とを含むことを特徴とする。
【００２１】
本発明の第４実施形態によれば、ビデオエンコーダが提供されるが、前記エンコーダは、現在ブロック及び前記現在ブロックに隣接した隣接パーティションそれぞれの動きベクトルを生成する動き推定部と、前記現在ブロックに対する全域動きベクトルを推定し、前記生成された現在ブロックの動きベクトルと前記生成された隣接パーティションの動きベクトルとの第１動きベクトル差、及び前記生成された現在ブロックの動きベクトルと前記推定された全域動きベクトルとの第２動きベクトル差を計算し、前記第１動きベクトル差または前記第２動きベクトル差から、最小のＲＤコストを有する動きベクトルを、前記現在ブロックの動きベクトルとして推定し、前記生成された現在ブロックの動きベクトル及び前記現在ブロックの推定された動きベクトルから、動き情報を生成する動きベクトル推定装置と、前記動き情報をエントロピ符号化するエントロピ符号化部とを含むことを特徴とする。
【００２２】
本発明の第５実施形態によれば、ビデオデコーダが提供されるが、前記デコーダは、ビットストリームから動き情報をエントロピ復号化するエントロピ復号化部と、前記復号化された動き情報から、現在ブロックに対する動きベクトルを再生する動きベクトル推定部と、前記再生された動きベクトルを利用して現在ブロックを復元するマクロブロック復元部とを含み、前記動き情報は、少なくとも前記現在ブロックの動きベクトルと前記現在ブロックの推定された動きベクトルとの動きベクトル差、及び前記現在ブロックの推定された動きベクトルについての情報を含み、前記現在ブロックの推定された動きベクトルは、前記現在ブロックに隣接した隣接パーティションの動きベクトルまたは全域動きベクトルのうち、いずれか一つであることを特徴とする。
【００２３】
本発明の第６実施形態によれば、デコーディング方法が提供されるが、前記方法は、（ａ）ビットストリームから動き情報をエントロピ復号化する段階と、（ｂ）前記復号化された動き情報から現在ブロックに対する動きベクトルを再生する段階と、（ｃ）前記再生された動きベクトルを利用して現在ブロックを復元するマクロブロック復元部とを含み、前記動き情報は、少なくとも前記現在ブロックの動きベクトルと前記現在ブロックの推定された動きベクトルとの動きベクトル差、及び前記現在ブロックの推定された動きベクトルについての情報を含み、前記現在ブロックの推定された動きベクトルは、前記現在ブロックに隣接した隣接パーティションの動きベクトルまたは全域動きベクトルのうち、いずれか一つであることを特徴とする。
【００２４】
本発明の第７実施形態によれば、前記方法を実行するためのプログラムが記録されたコンピュータで読み取り可能な記録媒体が提供される。
【発明の効果】
【００２５】
全域動きベクトルを、現在ブロックの動きベクトル・プレディクタの一つとして使用することによって、デコーダに伝送される情報量を減らすことができる。また、動き推定は、同じ動きビット量が与えられる場合、さらに望ましいプレディクタを求められる機会を与えることができる。従って、動き予測段階にも影響を及ぼし、ＰＳＮＲ（peak  signal  to  noise  ratio）の観点でも利得を有する。また本発明によれば、現在ブロックと隣接パーティションとの動きが異なる場合に、さらに正確に現在ブロックの動きを推定できる。
【図面の簡単な説明】
【００２６】
【図１Ａ】従来技術による、現在ブロックの動きベクトルを推定するための隣接パーティションを図示する図である。
【図１Ｂ】従来技術による、現在ブロックの動きベクトルを推定するための隣接パーティションを図示する図である。
【図２】本発明の一実施形態による動きベクトルを推定するための方法のフローチャートである。
【図３】本発明の一実施形態による動きベクトルを推定するための装置の構成図である。
【図４】本発明の一実施形態による動きベクトルを推定するための装置を含んだエンコーダの構成図である。
【図５】本発明の一実施形態によるデコーダの構成図である。
【図６】本発明の一実施形態によるデコーディング方法のフローチャートである。
【発明を実施するための形態】
【００２７】
以下、添付した図面を参照しつつ、本発明による全域動きベクトルを使用して動きベクトルを推定するための方法、装置、エンコーダ、デコーダ及びデコーディング方法の望ましい実施形態について詳細に説明する。各図面の構成要素に参照符号を付加するにおいて、同じ構成要素に限っては、たとえ他の図面上に表示されるにしていも、可能な限り同じ符号で表記されていることを明らかにしておく。また、下記の説明では、具体的な回路の構成素子のような多くの特定事項が図示されているが、それらは、本発明のさらに全般的な理解を助けるために提供されてものであり、かような特定事項なしにも本発明が実施可能であることは、当該技術分野で当業者には自明であろう。そして、本発明を説明するにおいて、関連した公知機能または構成に係る具体的な説明が、本発明の要旨を曖昧にすると判断される場合には、その詳細な説明を省略する。
【００２８】
図２は、本発明の一実施形態による動きベクトルを推定するための方法のフローチャートである。図２を参照するに、段階２００では、参照フレームの映像データ及び現在フレームの映像データから、現在ブロックに対する全域動きベクトルを推定する。望ましくは、参照フレームは、時間的に現在フレームの以前フレームであるか、または以後フレームである。
【００２９】
全域動きベクトルを推定するための一方法として、本発明によれば、（i）現在フレームを一定サイズのパーティションに分割し、この分割されたパーティションそれぞれに対して動きベクトルを求める。その後、パーティションそれぞれに対して求めた動きベクトルの中間値（median  value）を全域動きベクトルとして推定する。
【００３０】
全域動きベクトルを求める他の実施形態として、（ii）現在フレームを一定サイズのパーティションに分割し、分割されたパーティションそれぞれに対して動きベクトルを求める。その後、パーティションそれぞれに対して求めた動きベクトルのうち、頻度が高い動きベクトルを全域動きベクトルとして推定する。
【００３１】
全域動きベクトルを求めるさらに他の実施形態として、多様な動きモデル（motion  models）を選定して利用できる。かような動きモデルの例として、translationモデル、Affineモデル、Projectiveモデルなどがある。translationモデルの場合は２個のパラメータ、Affineモデルの場合は６個のパラメータ、Projectiveモデルの場合は８個のパラメータが、全域動きベクトルを生成するための全域動き情報として使われうる。かような動きモデルは１つの例示に過ぎず、前述のような全域動きベクトルを推定する過程は、本発明の理解を助けるための例示にしか過ぎず、本発明は、それらに制限されるものではなく、すでに公知になった既存の方法が使われうることは、当分野の熟練者らには当然なことである。
【００３２】
一方、全域動きベクトルが複数個である場合には、最小のＲＤコストを有する動きベクトルを全域動きベクトルとして推定できる。コストの計算は、率−歪曲コスト（ＲＤ  cost：rate-distortion
cost）、ＳＡＤ（sum  of  absolute  value）、ＳＡＴＤ（sum  of  absolute  transformed  difference）、ＳＳＤ（sum  of  squared  difference）、ＭＡＤ（mean  of  absolute  difference）、ラグランジュ関数（Laglange  function）などを利用できる。一例として、率−歪曲コスト（ＲＤ cost）についてより詳細に説明すれば、次の通りである。率（Ｒ：rate）は、ビット率を意味するものであって、１つのマクロブロックを符号化するのに使われるビット数を示す。すなわち、率（rate）は、インター・プレディクションまたはイントラ・プレディクションが遂行された後の残差信号（residual）が符号化されて得られたビット数と、動きベクトル情報が符号化されて得られたビット数とをいずれも加えた値である。歪曲（Ｄ：distortion）は、符号化が行われた映像を復号化したときの本来のマクロブロックと、復号化されたマクロブロックとの差である。
【００３３】
一方、段階２０１では、隣接パーティションの動きベクトルに対してＭＶＤ（ＭＶＤ：motion  vector  difference）値（第１  ＭＶＤ）を計算する一方、段階２００で推定された全域動きベクトルに対して、ＭＶＤ（第２ＭＶＤ）を計算する。望ましくは、隣接パーティションの動きベクトルは、図１Ａ及び図１Ｂで図示されているように、現在ブロックに隣接したパーティションＡ，Ｂ，Ｃのうち、いずれか１つの動きベクトル、現在ブロックに隣接したパーティションＡ，Ｂ，Ｃそれぞれの動きベクトルの中間値、または現在ブロックに対する時間的動きベクトル（temporal  motion  vector）のうち、いずれか一つでありうる。
【００３４】
段階２０２では、段階２０１で計算したＭＶＤ値から、最小のＲＤコストを有する動きベクトルを、現在ブロックの動きベクトルとして推定する。望ましくは、現在ブロックの推定された動きベクトル、すなわち動きベクトル・プレディクタ（ＭＶｐ：motion  vector  predictor）は、ＭＶＤ値によって、段階２００で求めた全域動きベクトル、現在ブロックに隣接したパーティションＡ，Ｂ，Ｃのうち、いずれか１つの動きベクトル、現在ブロックに隣接したパーティションＡ，Ｂ，Ｃそれぞれの動きベクトルの中間値、または現在ブロックに対する時間的動きベクトルのうち、いずれか一つでありうる。
【００３５】
望ましくは、現在マクロブロックと関連した動き情報は、符号化されてデコーダに伝送される。動き情報は、現在ブロックの動きベクトルから現在ブロックの推定された動きベクトルを差し引いたＭＶＤ、１フレーム当たりの１つの全域動きベクトル、及び現在ブロックの推定された動きベクトルについての情報（すなわち、隣接パーティションの動きベクトルまたは全域動きベクトルを示す１ビットのフラッグ）を含む。
【００３６】
図３は、本発明の一実施形態による動きベクトルを推定するための装置３００の構成図であり、全域動き推定部３０１、ＭＶＤ計算部３０２及び動きベクトル推定部３０３を含んでなる。図３を参照するに、全域動き推定部３０１は、参照フレームの映像データ及び現在フレームの映像データから、全域動きベクトルを推定する。望ましくは、参照フレームは、時間的に現在フレームの以前フレームであるか、または以後フレームである。全域動きベクトルを推定するための方法は、すでに前述の通りである。
【００３７】
ＭＶＤ計算部３０２は、隣接パーティションの動きベクトルに対してＭＶＤ値（第１  ＭＶＤ）を計算する一方、段階２００で推定された全域動きベクトルに対して、ＭＶＤ（第２  ＭＶＤ）を計算する。
【００３８】
動きベクトル推定部３０３は、ＭＶＤ計算部３０２で計算したＭＶＤ値から、最小のＲＤコストを有する動きベクトルを、現在ブロックの動きベクトルとして推定する。
【００３９】
図４は、本発明の一実施形態による動きベクトルを推定するための装置３００を含んだエンコーダ４００の構成図である。図４を参照するに、加算部４０１は、外部で入力された現在フレームの映像データと、動き補償部４０９から受信された動き補償された映像データとの差を計算し、周波数変換部４０２に伝達する。映像データは、ブロック単位の映像データを意味する。現在マクロブロックがインターモード・コーディングによって符号化されるマクロブロックの場合、加算部４０１は、外部から入力された映像データと動き補償された映像データとの差を周波数変換部４０２に出力する。
【００４０】
周波数変換部４０２は、加算部４０１から受信された映像データに離散余弦変換（ＤＣＴ）を適用して空間領域の値を周波数領域の値に変換し、変換された周波数領域の値を量子化部４０３に出力する。
【００４１】
量子化部４０３は、周波数変換部４０２から受信された周波数領域の値を量子化し、量子化された周波数領域の値をエントロピ符号化部４０４に出力する。
【００４２】
エントロピ符号化部４０４は、量子化部４０３から受信された量子化された周波数領域の値、及び動きベクトル推定装置３００から受信された動き情報をエントロピ符号化し、ビットストリームを生成する。動き情報は、現在ブロックの動きベクトルから現在ブロックの推定された動きベクトルを差し引いたＭＶＤ、１フレーム当たりの１つの全域動きベクトル、及び現在ブロックの推定された動きベクトルについての情報（すなわち、隣接パーティションの動きベクトルまたは全域動きベクトルを示す１ビットのフラッグ）を含む。
【００４３】
逆量子化部４０５、逆周波数変換部４０６、フレーム保存部４０７、動き推定部４０８、動き補償部４０９、動きベクトル推定装置３００は、動き補償を遂行するための機能部である。
【００４４】
逆量子化部４０５は、量子化部４０３から受信された量子化された周波数領域の値に対して逆量子化を遂行し、逆量子化された周波数領域の値を逆周波数変換部４０６に出力する。
【００４５】
逆周波数変換部４０６は、逆量子化部４０５で逆量子化された周波数領域の値を空間領域の値に変換し、加算部４０６ａに伝達する。
【００４６】
加算部４０６ａは、動き補償部４０９から受信された映像データに、逆周波数変換部４０６から受信された空間領域の値を加算し、動き補償のために参照される映像データを生成する。生成された参照フレームの映像データは、フレーム保存部４０７に保存される。
【００４７】
フレーム保存部４０７は、加算部４０６ａから受信された映像データを保存する。
【００４８】
動き推定部４０８は、外部から入力された現在フレームの映像データと、フレーム保存部４０７に保存された映像データとの間で、動き予測を遂行することによって、動きベクトルを計算する。動き推定部４０８で計算された動きベクトルは、動き補償部４０９及び動きベクトル推定装置３００に伝送される。
【００４９】
動き補償部４０９は、動き推定部４０８で計算された動きベクトルを使用し、フレーム保存部４０７に保存された参照フレームに対して動き補償を遂行し、動き補償された映像データを生成する。動き補償された映像データは、加算部４０１及び加算部４０６ａに伝えられる。
【００５０】
動きベクトル推定装置３００は、図３に図示されているように、全域動き推定部３０１、ＭＶＤ計算部３０２、動きベクトル推定部３０３を含んでなり、具体的な説明は、図２及び図３ですでに説明した通りである。
【００５１】
図５は、本発明の一実施形態によるデコーダ５００の構成図であり、エントロピ復号化部５０１、逆量子化部５０２、逆周波数変換部５０３、フレーム保存部５０４、動き補償部５０５、加算部５０６、動きベクトル推定部５０７を含んでなる。一方、逆量子化部５０２、逆周波数変換部５０３、フレーム保存部５０４、動き補償部５０５及び加算部５０６は、マクロブロック復元部を構成する。
【００５２】
図５を参照するに、エントロピ復号化部５０１は、エンコーダから受信されたビットストリームをエントロピ復号化し、エントロピ復号化されたビットストリームを、逆量子化部５０２及び動きベクトル推定部５０７に伝達する。特に、インターモード・コーディングの場合、エントロピ復号化部５０１は、現在ブロックと係る動き情報及び残差ブロックを抽出し、抽出された残差ブロックは、逆量子化部５０２に、抽出された動き情報は、動きベクトル推定部５０７に出力する。
【００５３】
一方、動き情報は、現在ブロックの動きベクトルから現在ブロックの推定された動きベクトルを差し引いたＭＶＤ、１フレーム当たりの１つの全域動きベクトル、及び現在ブロックの推定された動きベクトルについての情報（すなわち、隣接パーティションの動きベクトルまたは全域動きベクトルを示す１ビットのフラッグ）を含む。現在ブロックの推定された動きベクトルは、隣接パーティションの動きベクトルまたは全域動きベクトルのうち、一つである。また、隣接パーティションの動きベクトルは、現在ブロックに隣接したパーティションのうち、いずれか１つの動きベクトル、現在ブロックに隣接したパーティションの動きベクトルの中間値、または現在ブロックに対する時間的動きベクトルのうち、いずれか一つである。
【００５４】
逆量子化部５０２は、エントロピ復号化部５０１からエントロピ復号化された残差ブロックを逆量子化し、逆量子化された残差ブロックを逆周波数変換部５０３に出力する。
【００５５】
逆周波数変換部５０３は、逆量子化部から受信された逆量子化された残差ブロックを空間領域の値に変換し、変換された空間領域の値を加算部５０６に出力する。
【００５６】
加算部５０６は、逆周波数変換部５０３から受信された逆量子化された残差ブロックに、動き補償部５０５から受信された動き補償された予測ブロックを加算し、現在ブロックを復元する。
【００５７】
フレーム保存部５０４は、加算部５０６から出力された現在ブロックを保存する。
【００５８】
動きベクトル推定部５０７は、エントロピ復号化部５０１によって抽出された動き情報をもって動きベクトル予測を遂行し、動きベクトルを再生する。再生された動きベクトルは、動き補償部５０５に出力される。
【００５９】
動き補償部５０５は、フレーム保存部５０４に保存された参照フレームの映像データに、動きベクトル推定部５０７から受信された動きベクトルを適用し、動き補償を遂行する。動き補償された映像データは、加算部５０６に出力される。
【００６０】
図６は、本発明の一実施形態によるデコーディング方法のフローチャートである。図６を参照するに、段階６００で、符号化されたビットストリームを受信し、ビットストリームは、現在ブロックと係る動き情報及び残差ブロックを含む。
【００６１】
段階６０１で、受信されたビットストリームをエントロピ復号化する。インターモード・コーディングの場合、現在ブロックと係る動き情報及び映像データ、すなわち、残差ブロックが復号化される。また、図５で記述されたように、残差ブロックは、逆量子化及び逆周波数変換の過程を経る。
【００６２】
段階６０２で、復号化された動き情報から動きベクトルを再生する。
【００６３】
段階６０３では、再生された動きベクトルを参照ブロックに適用し、動き補償された予測ブロックを生成し、生成された予測ブロックと残差ブロックとを加算し、現在ブロックを復元する。
【００６４】
本発明はまた、コンピュータで読み取り可能な記録媒体に、コンピュータで読み取り可能なコードとして具現することが可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取り可能なデータが保存されるあらゆる種類の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ＲＯＭ（read-only  memory）、ＲＡＭ（random-access  memory）、ＣＤ−ＲＯＭ、磁気テープ、フロッピー（登録商標）ディスク、光データ保存装置などがあり、またキャリアウェーブ（例えば、インターネットを介した伝送）の形態で具現されるものも含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散され、分散方式でコンピュータで読み取り可能なコードが保存されて実行されうる。
【００６５】
以上、本発明の望ましい実施形態について詳細に記述したが、本発明が属する技術分野において当業者ならば、特許請求の範囲に定義された本発明の精神及び範囲を外れずに、本発明をさまざまに変形または変更して実施できるということを理解することが可能であろう。よって、本発明の今後の実施形態の変更は、本発明の技術を乗り越えるものではない。
【図１Ａ】
0005620109.tif 000002
【図１Ｂ】
0005620109.tif 000003
【図２】
0005620109.tif 000004
【図３】
0005620109.tif 000005
【図４】
0005620109.tif 000006
【図５】
0005620109.tif 000007
【図６】
0005620109.tif 000008