(57)【特許請求の範囲】
【請求項１】
動画像を構成する複数のピクチャを含むグループ単位で、前記グループ内のピクチャ間予測符号化される複数のピクチャに適用可能な大域的な動きを示す大域動きベクトルの情報を前記動画像の符号化データに含め、前記ピクチャ間予測符号化される複数のピクチャに適用可能な前記大域動きベクトルを前記グループ内のピクチャ毎に補正して適応する場合に、その補正するためのパラメータを前記動画像の前記符号化データに含めることを特徴とすることを特徴とする符号化方法。
【請求項２】
前記グループは、単独で復号可能な単位であることを特徴とする請求項１に記載の符号化方法。
【請求項３】
異なる前記グループの大域動きベクトル間の差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項１または２に記載の符号化方法。
【請求項４】
前記大域動きベクトルは、前記グループ内の前記ピクチャ間予測符号化される複数のピクチャに対して共通に定義される複数の画像の領域の内、少なくとも１つの領域内の大域的な動きを示すものであることを特徴とする請求項１から３のいずれかに記載の符号化方法。
【請求項５】
２つ以上の領域について大域動きベクトルが定義されている場合に、異なる領域の大域動きベクトル間の差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項４に記載の符号化方法。
【請求項６】
前記ピクチャ間予測符号化される複数のピクチャの各々について所定のブロック単位の局所動きベクトルが定義されている場合に、各ピクチャについての前記局所動きベクトルと前記ピクチャ間予測符号化される複数のピクチャに適用可能な前記大域動きベクトルとの差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項１から５のいずれかに記載の符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像を符号化する符号化方法に関する。
【背景技術】
【０００２】
ブロードバンドネットワークが急速に発展しており、高品質な動画像を利用したサービスに期待が集まっている。また、ＤＶＤなど大容量の記録媒体が利用されており、高画質の画像を楽しむユーザ層が広がっている。動画像を通信回線で伝送したり、記録媒体に蓄積するために不可欠な技術として圧縮符号化がある。動画像圧縮符号化技術の国際標準として、ＭＰＥＧ４の規格やＨ．２６４／ＡＶＣ規格がある。また、１つのストリームにおいて高画質のストリームと低画質のストリームを併せもつＳＶＣのような次世代画像圧縮技術がある。
【０００３】
高解像度の動画像をストリーム配信したり、記録媒体に蓄積する場合、通信帯域を圧迫しないように、あるいは、記憶容量が大きくならないように、動画ストリームの圧縮率を高める必要がある。動画像の圧縮効果を高めるために、動き補償フレーム間予測符号化が行われる。動き補償フレーム間予測符号化では、符号化対象フレームをブロックに分割し、既に符号化された参照フレームからの動きをブロック毎に予測して動きベクトルを検出し、差分画像とともに動きベクトル情報を符号化する。
【０００４】
特許文献１には、フレーム内符号化、通常の動き補償、グローバル動きベクトルを用いた各種の動き補償の中から、最も符号化効率が高い方式を選択する動画像符号化技術が開示されている。
【特許文献１】特開２００３−２９９１０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
Ｈ．２６４／ＡＶＣ規格では、動き補償において、よりきめ細かな予測を行うために、動き補償のブロックサイズを可変にしたり、動き補償の画素精度を１／４画素精度まで細かくすることができるようになっており、動きベクトルに関する符号量が多くなる。また、次世代画像圧縮技術であるＳＶＣ（Scalable Video Coding）では、時間的スケーラビリティを高めるために、ＭＣＴＦ（Motion Compensated Temporal Filtering、動き補償時間方向フィルタ）技術が検討されている。これは、時間軸方向のサブバンド分割に動き補償を組み合わせたものであり、階層的な動き補償を行うため、動きベクトルの情報が非常に多くなる。このように最近の動画圧縮符号化技術では、動きベクトルに関する情報量が増えることにより動画ストリーム全体のデータ量が増大する傾向にあり、動きベクトル情報に起因する符号量を削減する技術が一層求められている。
【０００６】
本発明はこうした状況に鑑みてなされたもので、その目的は、符号化効率が高く、また、精度の高い動き予測を行うことのできる動画像の符号化技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様の符号化方法は、動画像を構成する複数のピクチャを含むグループ単位で、前記グループ内のピクチャ間予測符号化される複数のピクチャに適用可能な大域的な動きを示す大域動きベクトルの情報を前記動画像の符号化データに含める。
【０００８】
「大域動きベクトル」は、画像全体の動きを表すベクトルであっても、画像内の所定の領域全体の動きを表すベクトルであってもよい。
【０００９】
「ピクチャ」は、フレーム、フィールド、ＶＯＰ（Video Object Plane）などを含む符号化の単位である。
【００１０】
「グループ内のピクチャ間予測符号化される複数のピクチャに適用可能な大域動きベクトル」とは、その大域動きベクトルがそのまま、グループ内のすべてのピクチャに共通して適用される場合だけでなく、その大域動きベクトルがグループ内のピクチャ毎に補正された上で適用される場合も含む趣旨である。
【００１１】
この態様によると、動画像の符号化に際し、動画像の複数のピクチャにおける大域的な動きを捉えることができる。また、複数のピクチャからなるグループの単位で大域的な動きベクトルが符号化されるため、符号化効率が高い。
【００１２】
前記グループは、単独で復号可能な単位であってもよい。「単独で復号可能な単位」とは、他の単独で復号可能な単位内のピクチャを参照するピクチャを復号しなくても、エラーやコマ落ちが生じることなく表示可能な単位であり、たとえば、ＭＰＥＧ−２におけるＧＯＰ（Group of Picture）やＭＰＥＧ−４におけるＧＯＶ（Group of Video Object Plane）に相当するものであってもよい。
【００１３】
異なる前記グループの大域動きベクトル間の差分情報を前記動画像の前記符号化データに含めてもよい。これによれば、グループ単位で得られた大域動きベクトルについてグループ間で差分を取ることで、大域動きベクトルの符号量を削減することができる。
【００１４】
前記大域動きベクトルは、前記グループ内の前記ピクチャ間予測符号化される複数のピクチャに対して共通に定義される複数の画像の領域の内、少なくとも１つの領域内の大域的な動きを示すものであってもよい。これによれば、たとえば、画像の中心部や人物の顔などが占める重要領域、動きのあるオブジェクトが占める領域などの特定の領域について大域的な動きを捉えることができる。逆に動きの少ない、背景や画像の周辺部などの領域内の大域的な動きを大域動きベクトルによって捉えることもできる。
【００１５】
前記ピクチャ間予測符号化される複数のピクチャに適用可能な前記大域動きベクトルを前記グループ内のピクチャ毎に補正して、各ピクチャの大域動きベクトルとしてもよい。この補正は、大域的な動きの速度変化に応じてなされてもよい。これによれば、複数のピクチャに適用可能な大域動きベクトルを各ピクチャに合わせて補正することで、より精度が高く、符号化効率の良い動画像の符号化を行うことができる。
【００１６】
前記ピクチャ間予測符号化される複数のピクチャの各々について所定のブロック単位の局所動きベクトルが定義されている場合に、各ピクチャについての前記局所動きベクトルと前記ピクチャ間予測符号化される複数のピクチャに適用可能な前記大域動きベクトルとの差分情報を前記動画像の前記符号化データに含めてもよい。これによれば、局所動きベクトルを符号化する際に、複数のピクチャに適用可能な大域動きベクトルとの差分を取ることにより、局所動きベクトルの符号量を削減することができ、動画像の圧縮効率を高めることができる。
【００１７】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１８】
本発明によれば、動画像の符号化効率を向上することができる。
【発明を実施するための最良の形態】
【００１９】
実施の形態１
図１は、実施の形態１に係る符号化装置１００の構成図である。これらの構成は、ハードウエア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウエア的にはメモリにロードされた画像符号化機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【００２０】
本実施の形態の符号化装置１００は、国際標準化機関であるＩＳＯ（International Organization for Standardization）／ＩＥＣ（International Electrotechnical Commission）によって標準化されたＭＰＥＧ（Moving Picture Experts Group）シリーズの規格（ＭＰＥＧ−１、ＭＰＥＧ−２およびＭＰＥＧ−４）、電気通信に関する国際標準機関であるＩＴＵ−Ｔ（International Telecommunication Union-Telecommunication Standardization Sector）によって標準化されたＨ．２６ｘシリーズの規格（Ｈ．２６１、Ｈ．２６２およびＨ．２６３）、もしくは両方の標準化機関によって合同で標準化された最新の動画像圧縮符号化標準規格であるＨ．２６４／ＡＶＣ（両機関における正式勧告名はそれぞれMPEG-4 Part 10: Advanced Video CodingとH.264）に準拠して動画像の符号化を行う。
【００２１】
ＭＰＥＧシリーズの規格では、フレーム内符号化を行う画像フレームをＩ（Intra）フレーム、過去のフレームを参照画像として順方向のフレーム間予測符号化を行う画像フレームをＰ（Predictive）フレーム、過去と未来のフレームを参照画像として双方向のフレーム間予測符号化を行う画像フレームをＢフレームという。
【００２２】
一方、Ｈ．２６４／ＡＶＣでは、参照画像として利用できるフレームは、時間の先後を問わず、過去の２枚のフレームを参照画像としてもよく、未来の２枚のフレームを参照画像としてもよい。また、参照画像として利用できるフレームの枚数も問わず、３枚以上のフレームを参照画像として用いることもできる。したがって、ＭＰＥＧ−１／２／４では、Ｂフレームは双方向予測（Bi-directional prediction）フレームのことを指していたが、Ｈ．２６４／ＡＶＣでは、Ｂフレームは、参照画像の時間の先後は問わないため、双予測（Bi-predictive prediction）フレームのことを指すことに留意する。
【００２３】
なお、本願明細書では、フレームとピクチャを同じ意味で用いており、Ｉフレーム、Ｐフレーム、Ｂフレームは、それぞれＩピクチャ、Ｐピクチャ、Ｂピクチャとも呼ばれている。
【００２４】
符号化装置１００は、フレーム単位で動画像の入力を受け取り、動画像を符号化し、符号化ストリームを出力する。入力された動画フレームはフレームメモリ８０に格納される。
【００２５】
動き補償部６０は、フレームメモリ８０に格納されている過去または未来の画像フレームを参照画像として利用し、ＰフレームまたはＢフレームのマクロブロック毎に動き補償を行い、動きベクトルと予測画像を生成する。動き補償部６０は、符号化対象のＰフレームまたはＢフレームの画像と予測画像の差分を取り、差分画像をＤＣＴ部２０に供給する。また、動き補償部６０は、符号化された動きベクトル情報を多重化部９２に供給する。
【００２６】
ＤＣＴ部２０は、動き補償部６０から供給された画像を離散コサイン変換（ＤＣＴ）し、得られたＤＣＴ係数を量子化部３０に与える。
【００２７】
量子化部３０は、ＤＣＴ係数を量子化し、可変長符号化部９０に与える。可変長符号化部９０は、差分画像の量子化されたＤＣＴ係数を可変長符号化し、多重化部９２に与える。多重化部９２は、可変長符号化部９０から与えられた符号化後のＤＣＴ係数と、動き補償部６０から与えられた符号化後の動きベクトル情報とを多重化し、符号化ストリームを生成する。多重化部９２は、符号化ストリームを生成する際、符号化されたフレームを時間順序に並べ替える処理を行う。
【００２８】
ＰフレームもしくはＢフレームの符号化処理の場合は、上述のように動き補償部６０が動作するが、Ｉフレームの符号化処理の場合は、動き補償部６０は動作せず、ここでは図示しないが、Ｉフレームはフレーム内予測が行われた後、ＤＣＴ部２０に供給される。
【００２９】
図２は、動き補償部６０の構成を説明する図である。動き補償部６０は、符号化対象フレームのマクロブロック単位の動きベクトル（以下、「ローカル動きベクトル」という）を検出するとともに、複数の符号化対象フレームをグループとして扱い、グループ毎に、そのグループ内の符号化対象フレームに共通する大域的な動きを示す動きベクトル（以下、「グローバル動きベクトル」という）を求める。グローバル動きベクトルは、画像全体もしくは画像に設けられた所定の領域全体の動きを表すベクトルである。グローバル動きベクトルは、画像内もしくは所定の領域内の個々のマクロブロック単位のローカル動きベクトルを代表するものである。
【００３０】
動き補償部６０は、ローカル動きベクトルにもとづいて動き予測を行い、差分画像を出力するとともに、ローカル動きベクトルおよびグローバル動きベクトルの差分値を符号化して動きベクトル情報として出力する。
【００３１】
局所動きベクトル検出部６６は、フレームメモリ８０に保持された参照画像を参照し、符号化対象画像の対象マクロブロックに対して誤差の最も小さい予測マクロブロックを参照画像から検出し、対象マクロブロックから予測マクロブロックへの動きを示すローカル動きベクトルＬＭＶを求める。動き検出は、対象マクロブロックとマッチングする参照画像における参照マクロブロックを整数画素単位または小数画素単位で探すことにより行われる。探索は通常、画素領域内で複数回にわたって繰り返し行われ、その複数回の探索の中で対象マクロブロックと最も適合する参照マクロブロックが予測マクロブロックとして選択される。
【００３２】
局所動きベクトル検出部６６は、求めたローカル動きベクトルＬＭＶを大域動きベクトル算出部６８、動き補償予測部７０、および局所動きベクトル差分符号化部７２に与える。
【００３３】
動き補償予測部７０は、ローカル動きベクトルＬＭＶを用いて対象マクロブロックを動き補償して、予測画像を生成し、符号化対象画像と予測画像の差分画像をＤＣＴ部２０に出力する。
【００３４】
ＧＯＰ設定部６４は、動画像の複数のフレームのシーケンスを１つにまとめた単位であるＧＯＰ（Group of Picture）を設定する。ＧＯＰは、一般に、動画像の早送りや逆再生などの単位や、動画像データのランダムアクセスの単位として用いられる。
【００３５】
なお、ＧＯＰは、ＭＰＥＧ−２の用語であり、ＭＰＥＧ−４ではピクチャのことをＶＯＰ（Video Object Plane）と呼ぶ関係で、ＧＯＰの代わりにＧＯＶ（Group of Video Object Plane）という用語が用いられる。本明細書では、特にいずれかの規格に限定する意味ではなく、一般的に複数のフレームから構成されるグループという意味で「ＧＯＰ」という用語を用いることにする。
【００３６】
１つのＧＯＰに含まれるフレームの枚数は所定の値に固定させてもよく、動的に変化させてもよい。ＧＯＰ内のフレーム数を可変にする場合、ＧＯＰ設定部６４は、動画像における大域的な動きの速度に応じてＧＯＰ内のフレーム数を調整してもよい。たとえば、大域的な動きが速いほど、ＧＯＰ内のフレームの枚数を減らし、大域的な動きが遅いほど、ＧＯＰ内のフレームの枚数を増やす。
【００３７】
これにより、大域的な動きが激しい場合は、少ないフレーム数でＧＯＰを構成して、動画像の大域的な動きを各ＧＯＰ内で共通の大域動きベクトルによって正確に捉えることができる。逆に、大域的な動きが比較的ゆっくりしている場合は、フレーム数を多くしてＧＯＰを構成しても、動画像の大域的な動きを各ＧＯＰ内で共通の大域動きベクトルによって十分に捉えることができる。
【００３８】
なお、ＧＯＰは、一般にフレーム間予測符号化されないＩフレームを含むが、動き補償部６０においては、フレーム間予測符号化されるフレームを動き予測の処理の対象とするため、以下では、ＧＯＰ内に含まれるＩフレームについては特に言及せずに、フレーム間予測符号化されるフレームについてのみ言及する。もっとも、動き予測にはＧＯＰ内のＩフレームが参照画像として用いられることにも留意する。
【００３９】
また、大域的な動きを画像全体でなく、画像内の特定の領域について求める場合は、ＧＯＰ設定部６４は、フレーム画像上にグローバル動きベクトルＧＭＶを求めるための領域（以下、「グローバル領域」という）を設定する。このグローバル領域は、ＧＯＰ内のすべてのフレームに共通して設定される。すなわち、ＧＯＰ内のすべてのフレームでグローバル領域は同じ位置にある。
【００４０】
グローバル領域は、画像内に複数設けられてもよい。たとえば、ＧＯＰ設定部６４は、フレーム画像の中央付近を一つのグローバル領域とし、その周辺を別のグローバル領域に設定するなど、あらかじめ定められた領域をグローバル領域に設定してもよい。また、グローバル領域はユーザによって設定されてもよい。
【００４１】
また、ＧＯＰ設定部６４は、画像に人物等のオブジェクトが写っている場合、そのオブジェクトが写っている領域を自動抽出し、グローバル領域に設定してもよい。
【００４２】
ＧＯＰ設定部６４は、局所動きベクトル検出部６６により検出された画像内のローカル動きベクトルＬＭＶを参照して、動きがある程度共通するマクロブロックが占める領域を自動抽出し、その領域をグローバル領域に設定してもよい。
【００４３】
ＧＯＰ設定部６４は、設定されたＧＯＰを構成するフレームの枚数の情報や設定されたグローバル領域の情報などを含むＧＯＰに関する情報を大域動きベクトル算出部６８および大域動きベクトル差分符号化部７４に与える。
【００４４】
大域動きベクトル算出部６８は、ＧＯＰ内のフレーム間予測符号化される複数のフレームに対して共通に適用されるグローバル動きベクトルＧＭＶ（以下、単に「共通グローバル動きベクトルＧＭＶ」という）を算出する。ＧＯＰ設定部６４により共通グローバル動きベクトルＧＭＶを求めるためのグローバル領域が設定されている場合は、大域動きベクトル算出部６８は、そのグローバル領域内の大域的な動きを示す共通グローバル動きベクトルＧＭＶを算出する。グローバル領域が設定されていない場合は、大域動きベクトル算出部６８は、画像全体の大域的な動きを示す共通グローバル動きベクトルＧＭＶを算出する。
【００４５】
大域動きベクトル算出部６８が共通グローバル動きベクトルＧＭＶを求める方法をいくつか説明する。
【００４６】
大域動きベクトル算出部６８は、局所動きベクトル検出部６６からＧＯＰ内の各フレームのマクロブロック単位のローカル動きベクトルＬＭＶを取得し、ＧＯＰ内の各フレームにおいて、マクロブロック毎のローカル動きベクトルＬＭＶを画像全体で平均化することにより、各フレームの画像全体の大域的な動きを示すグローバル動きベクトルＧＭＶを求める。次に、大域動きベクトル算出部６８は、各フレームのグローバル動きベクトルＧＭＶをＧＯＰ内のすべてのフレームについて平均を取ることにより、ＧＯＰ内で平均化されたグローバル動きベクトルＧＭＶを求め、これをそのＧＯＰの共通グローバル動きベクトルＧＭＶとする。これにより、ＧＯＰ内の複数のフレームに共通する大域的な動きを正確に捉えたグローバル動きベクトルＧＭＶを求めることができる。
【００４７】
なお、上記の手順で、グローバル動きベクトルＧＭＶを求めるべきグローバル領域が設定されている場合は、グローバル領域内でローカル動きベクトルＬＭＶを平均化すればよい。
【００４８】
共通グローバル動きベクトルＧＭＶを求める別の方法として、大域動きベクトル算出部６８は、ＧＯＰ内の特定のフレームのマクロブロック毎のローカル動きベクトルＬＭＶをそのフレーム画像全体で平均化して、その特定のフレームのグローバル動きベクトルＧＭＶを求め、これをＧＯＰ内の全フレームに共通して適用する共通グローバル動きベクトルＧＭＶとしてもよい。この場合、ＧＯＰ内の特定のフレームで得られるグローバル動きベクトルＧＭＶをＧＯＰ内の他のフレームにも適用することになり、ＧＯＰ内の全フレームについてローカル動きベクトルＬＭＶの平均を取る方法に比べて、処理量が少ない。
【００４９】
また、大域動きベクトル算出部６８は、動画像の大域的な動きに関する情報を取得し、その情報をもとにＧＯＰ単位の共通グローバル動きベクトルＧＭＶを算出してもよい。たとえば、カメラのズームやパン、画面のスクロールなどが行われた場合に、画面全体の動きに関する情報から、動画像の大域的な動きを判断し、ＧＯＰ単位の共通グローバル動きベクトルＧＭＶを算出することができる。また、大域動きベクトル算出部６８は、画面上の人物等のオブジェクトの動きを自動抽出し、オブジェクトの動きから大域的な動きを判断し、ＧＯＰ単位の共通グローバル動きベクトルＧＭＶを算出することもできる。
【００５０】
大域動きベクトル算出部６８は、求めたＧＯＰ内の共通のグローバル動きベクトルＧＭＶを局所動きベクトル差分符号化部７２と大域動きベクトル差分符号化部７４に与える。
【００５１】
局所動きベクトル差分符号化部７２は、局所動きベクトル検出部６６から各フレームのローカル動きベクトルＬＭＶ、大域動きベクトル算出部６８からＧＯＰ単位の共通グローバル動きベクトルＧＭＶの入力をそれぞれ受け取り、フレーム毎に、ローカル動きベクトルＬＭＶと共通グローバル動きベクトルＧＭＶの差分ΔＬＭＶ＝ＬＭＶ−ＧＭＶを算出し、算出されたローカル動きベクトル差分ΔＬＭＶを可変長符号化する。局所動きベクトル差分符号化部７２は、符号化後のローカル動きベクトル差分ΔＬＭＶを動きベクトル情報として多重化部９２に与える。
【００５２】
大域動きベクトル差分符号化部７４は、必要に応じて共通グローバル動きベクトルＧＭＶの差分情報を符号化する。共通グローバル動きベクトルＧＭＶの差分符号化は、共通グローバル動きベクトルＧＭＶの符号量を削減することを目的として、以下のような場合に行われる。
【００５３】
（１）画像内に複数のグローバル領域が設定されており、グローバル領域毎に共通グローバル動きベクトルＧＭＶが求められている場合、異なるグローバル領域の共通グローバル動きベクトルＧＭＶ間の差分を符号化する。
【００５４】
（２）ＧＯＰ内を複数のサブグループに分けて、ＧＯＰ内でサブグループ単位で共通グローバル動きベクトルＧＭＶが求められている場合、異なるサブグループの共通グローバル動きベクトルＧＭＶ間の差分を符号化する。
【００５５】
（３）動画像が複数のＧＯＰのシーケンスから構成される場合、異なるＧＯＰの共通グローバル動きベクトルＧＭＶ間の差分を符号化する。
【００５６】
このように複数の共通グローバル動きベクトルＧＭＶが求められている場合に、それらの共通グローバル動きベクトルＧＭＶ間で差分を取って符号化する方が、各共通グローバル動きベクトルＧＭＶを個別に符号化するよりも符号量の面で有利であるなら、大域動きベクトル差分符号化部７４は、共通グローバル動きベクトルＧＭＶの差分符号化を行う。
【００５７】
共通グローバル動きベクトルＧＭＶの差分符号化を行う場合、大域動きベクトル差分符号化部７４は、大域動きベクトル算出部６８から複数の共通グローバル動きベクトルＧＭＶの入力を受け取り、少なくとも１つの共通グローバル動きベクトルＧＭＶを基準に選ぶ。基準となる共通グローバル動きベクトルＧＭＶを基準グローバル動きベクトルＧＭＶＢと呼ぶ。大域動きベクトル差分符号化部７４は、基準グローバル動きベクトルＧＭＶＢ以外の共通グローバル動きベクトルＧＭＶと基準グローバル動きベクトルＧＭＶＢの差分ΔＧＭＶ＝ＧＭＶ−ＧＭＶＢを算出し、基準グローバル動きベクトルＧＭＶＢとグローバル動きベクトル差分ΔＧＭＶを可変長符号化する。
【００５８】
大域動きベクトル差分符号化部７４は、符号化後の基準グローバル動きベクトルＧＭＶＢとグローバル動きベクトル差分ΔＧＭＶを動きベクトル情報として多重化部９２に与える。このとき、大域動きベクトル差分符号化部７４は、ＧＯＰ内のフレーム数の情報、グローバル領域についての領域情報、ＧＯＰ内でサブグループを設けた場合のサブグループの情報などをＧＯＰ設定部６４から取得し、動きベクトル情報の一部に付加する。
【００５９】
多重化部９２には、動きベクトル情報として、基準グローバル動きベクトルＧＭＶＢ、グローバル動きベクトル差分ΔＧＭＶ、ローカル動きベクトル差分ΔＬＭＶが与えられることになる。
【００６０】
図３は、動き補償部６０による動きベクトルの差分符号化の手順を説明するフローチャートである。図４〜図６の例を適宜参照しながら符号化の手順を説明する。
【００６１】
符号化装置１００のフレームメモリ８０に符号化対象画像が入力される（Ｓ１０）。動き補償部６０の局所動きベクトル検出部６６は、符号化対象画像においてマクロブロック単位でローカル動きベクトルＬＭＶを検出する（Ｓ１２）。
【００６２】
次に、ＧＯＰ設定部６４は、ＧＯＰを構成するフレーム数や、大域的な動きを求めるべきグローバル領域などのＧＯＰに関する情報を設定し（Ｓ１４）、大域動きベクトル算出部６８は、ＧＯＰ単位で共通グローバル動きベクトルＧＭＶを算出する（Ｓ１６）。
【００６３】
局所動きベクトル差分符号化部７２は、ＧＯＰ内の各フレームのローカル動きベクトルＬＭＶとＧＯＰ内の共通グローバル動きベクトルＧＭＶの差分を求め、求めたローカル動きベクトル差分ΔＬＭＶを符号化する（Ｓ１８）。大域動きベクトル差分符号化部７４は、共通グローバル動きベクトルＧＭＶが複数求められている場合に、それらの間の差分を求め、求めたグローバル動きベクトル差分ΔＧＭＶを符号化する（Ｓ２０）。
【００６４】
図４（ａ）、（ｂ）は、動画像の複数のフレームからなるＧＯＰ単位の共通グローバル動きベクトルＧＭＶの例を説明する図である。図４（ａ）の例では、フレーム１〜フレーム８の８枚のフレームが１つのＧＯＰを構成しており、これら８枚のフレームで共有される１つの共通グローバル動きベクトルＧＭＶが求められる。各フレームのマクロブロックのローカル動きベクトルＬＭＶを符号化する際、この共通グローバル動きベクトルＧＭＶとの差分を符号化する。
【００６５】
たとえば、フレーム２の斜線で示したマクロブロックのローカル動きベクトルＬＭＶを差分符号化する際、符号２２２で示すように、当該マクロブロックのローカル動きベクトルＬＭＶは、フレーム１の点線で示したマクロブロックを参照しており、これが共通グローバル動きベクトルＧＭＶとほぼ一致しているとする。この場合、ローカル動きベクトルＬＭＶと共通グローバル動きベクトルＧＭＶの差分は０に近い値になり、ローカル動きベクトルＬＭＶの符号量が少なくなる。フレーム３の斜線で示したマクロブロックのローカル動きベクトルＬＭＶも共通グローバル動きベクトルＧＭＶとほぼ一致するため、そのローカル動きベクトルＬＭＶの符号量は少なくなる。
【００６６】
フレーム４の斜線で示したマクロブロックのローカル動きベクトルＬＭＶは、共通グローバル動きベクトルＧＭＶに一致せず、差ベクトルαだけずれているとする。すなわち、ＬＭＶ＝ＧＭＶ＋αである。この場合、ローカル動きベクトルＬＭＶと共通グローバル動きベクトルＧＭＶとの差分を取ると、差ベクトルαだけが残る。ローカル動きベクトルＬＭＶは、差ベクトルαの符号情報で符号化されるため、ローカル動きベクトルＬＭＶをそのまま符号化する場合に比べて、符号量は少ない。
【００６７】
フレーム５の斜線で示したマクロブロックのローカル動きベクトルＬＭＶは、符号２２５で示すように、２つ前のフレーム３の点線で示したマクロブロックを参照しているため、このローカル動きベクトルＬＭＶの差分符号化の際は、共通グローバル動きベクトルＧＭＶを２倍したものとの差分を取ることになる。このローカル動きベクトルＬＭＶが、２倍した共通グローバル動きベクトルＧＭＶとほぼ一致する場合、差分値は０に近くなり、ローカル動きベクトルＬＭＶの符号量は少なくなる。
【００６８】
フレーム６の斜線で示したマクロブロックのローカル動きベクトルＬＭＶは、符号２２６で示すように、１つ後のフレーム７のマクロブロックを参照しているため、このローカル動きベクトルＬＭＶの差分符号化の際は、共通グローバル動きベクトルＧＭＶを−１倍したものとの差分を取ることになる。このローカル動きベクトルＬＭＶが、−１倍したグローバル動きベクトルＧＭＶとほぼ一致する場合、差分値は０に近くなり、ローカル動きベクトルＬＭＶの符号量は少なくなる。
【００６９】
フレーム８の斜線で示したマクロブロックのローカル動きベクトルＬＭＶは、符号２２８で示すように、２つ前のフレーム６のマクロブロックを参照しているため、このローカル動きベクトルＬＭＶの差分符号化の際は、共通グローバル動きベクトルＧＭＶを２倍したものとの差分を取ることになる。このローカル動きベクトルＬＭＶは、２倍したグローバル動きベクトルＧＭＶとは一致せず、差ベクトルαだけずれているとする。すなわち、ＬＭＶ＝２ＧＭＶ＋αである。このローカル動きベクトルＬＭＶと２倍した共通グローバル動きベクトルＧＭＶの差分値は、差ベクトルαとなり、ローカル動きベクトルＬＭＶをそのまま符号化する場合に比べて、符号量は少なくなる。
【００７０】
図４（ｂ）は、図４（ａ）の例において、１つのＧＯＰを２つのサブグループに分け、各サブグループで共通グローバル動きベクトルＧＭＶを求める場合を示す。フレーム４とフレーム５の間に大域的な動きに変化があったとする。このとき、ＧＯＰ内の８枚のフレーム１〜８を通じて１つの共通グローバル動きベクトルＧＭＶを求めて、ローカル動きベクトルＬＭＶとの差分を符号化すると、大域的な動きが前半のフレーム１〜４と後半のフレーム５〜８とで異なるため、差分値が小さくならず、符号量の削減効果が減少する。
【００７１】
そこで、大域動きベクトル算出部６８は、ＧＯＰ内で大域的な動きに変化が生じるフレームを検出し、変化が生じる前の前半のフレーム１〜４と、変化が生じた後の後半のフレーム５〜８の２つのサブグループに分けて、各サブグループ内で共通グローバル動きベクトルＧＭＶを求め、ローカル動きベクトルＬＭＶとの差分を符号化する。
【００７２】
大域動きベクトル算出部６８は、前半のサブグループ内の４枚のフレーム１〜４で共有される第１の共通グローバル動きベクトルＧＭＶ１と、後半のサブグループ内の４枚のフレーム５〜８で共有される第２の共通グローバル動きベクトルＧＭＶ２とを求め、局所動きベクトル差分符号化部７２に与える。
【００７３】
局所動きベクトル差分符号化部７２は、前半のサブグループ内の各フレーム１〜４については、ローカル動きベクトルＬＭＶの差分符号化の際、第１の共通グローバル動きベクトルＧＭＶ１との差分を算出して符号化し、後半のサブグループ内の各フレーム５〜８については、ローカル動きベクトルＬＭＶの差分符号化の際、第２の共通グローバル動きベクトルＧＭＶ２との差分を算出して符号化する。
【００７４】
図４（ｂ）の場合、第１の共通グローバル動きベクトルＧＭＶ１と第２の共通グローバル動きベクトルＧＭＶ２をそれぞれ動きベクトル情報として符号化ストリームに多重化してもよいが、第１の共通グローバル動きベクトルＧＭＶ１と第２の共通グローバル動きベクトルＧＭＶ２とが近い値を取る場合は、第１の共通グローバル動きベクトルＧＭＶ１と第２の共通グローバル動きベクトルＧＭＶ２の間で差分を取って符号化すると符号量を削減することができる。
【００７５】
その場合、大域動きベクトル差分符号化部７４は、第１の共通グローバル動きベクトルＧＭＶ１を基準グローバル動きベクトルとして、第２の共通グローバル動きベクトルＧＭＶ２の符号化の際、第１の共通グローバル動きベクトルＧＭＶ１との差分を算出して符号化する。第２の共通グローバル動きベクトルＧＭＶ２が、第１の共通グローバル動きベクトルＧＭＶ１から差ベクトルβだけずれている場合、すなわちＧＭＶ２＝ＧＭＶ１＋βである場合、差分値は差ベクトルβとなり、第１の共通グローバル動きベクトルＧＭＶ１と第２の共通グローバル動きベクトルＧＭＶ２を独立に符号化する場合に比べて、符号量を減らすことができる。
【００７６】
大域動きベクトル差分符号化部７４は、第２の共通グローバル動きベクトルＧＭＶ２をそのまま符号化する場合と、第１の共通グローバル動きベクトルＧＭＶ１との差分値を符号化する場合とで、符号量を比較し、符号量が少ない方を選択してもよい。ＧＯＰ内の前半のフレームと後半のフレームで大域的な動きが大きく異なる場合は、第２の共通グローバル動きベクトルＧＭＶ２について差分を取らないで符号化した方が符号量の面で有利なこともある。
【００７７】
図４（ｂ）の例では、ＧＯＰ内を２つのサブグループに分けたが、必要に応じてＧＯＰを３つ以上のサブグループに分けて各サブグループ内で共通グローバル動きベクトルＧＭＶを求めてもよい。この場合も同様に、大域動きベクトル差分符号化部７４は、異なるサブグループ間、特に隣り合うサブグループ間で共通グローバル動きベクトルＧＭＶの差分を求めて符号化するか、各サブグループの共通グローバル動きベクトルＧＭＶをそのまま符号化するかを選択することができる。
【００７８】
図５は、動画像を複数の空間領域に分けて、領域毎に共通グローバル動きベクトルＧＭＶを求める例を説明する図である。ＧＯＰ設定部６４は、ＧＯＰ内のすべてのフレームに共通する複数のグローバル領域を設ける。ＧＯＰはフレーム１〜８の８枚のフレームから構成され、各フレームは斜線で示した４つのグローバル領域に区切られている。この４つのグローバル領域は、８枚のフレーム１〜８について共通しており、同じ位置にある。大域動きベクトル算出部６８は、各グローバル領域毎に共通グローバル動きベクトルＧＭＶ１〜４を求める。
【００７９】
画像の領域によって、大域的な動きが異なる場合には、領域別に共通グローバル動きベクトルＧＭＶを求め、領域毎に共通グローバル動きベクトルＧＭＶを基準としてローカル動きベクトルＬＭＶの差分符号化を行えば、ローカル動きベクトルＬＭＶの符号量を効果的に減らすことができる。
【００８０】
ＧＯＰ設定部６４により設定されるフレーム上の領域は、一部に重複があったり、包含関係があってもかまわない。また、ＧＯＰ設定部６４は、ＧＯＰ毎に領域の設定を変えてもよく、複数のＧＯＰに対して同一の領域設定を用いてもよい。
【００８１】
図５の場合、大域動きベクトル差分符号化部７４は、４つのグローバル領域の共通グローバル動きベクトルＧＭＶ間で差分を取って符号化することができる。４つの共通グローバル動きベクトルＧＭＶ１〜４が互いに近いものである場合、差分を取って符号化することで４つのグローバル動きベクトルＧＭＶ１〜４の符号量を減らすことができる。
【００８２】
図６は、複数のＧＯＰの間で共通グローバル動きベクトルＧＭＶの差分を符号化する例を説明する図である。
【００８３】
第１のＧＯＰ１、第２のＧＯＰ２は、それぞれ８枚のフレームから構成されるフレームのグループである。大域動きベクトル算出部６８は、第１のＧＯＰ１に対して第１の共通グローバル動きベクトルＧＭＶ１を求め、第２のＧＯＰ２に対して第２の共通グローバル動きベクトルＧＭＶ２を求める。
【００８４】
ここで、第１の共通グローバル動きベクトルＧＭＶ１と第２の共通グローバル動きベクトルＧＭＶ２が近いものである場合、両者を個別に符号化するより、両者の差分を取って符号化する方が符号量を削減できる。たとえば、ＧＭＶ２＝ＧＭＶ１＋αである場合、第１の共通グローバル動きベクトルＧＭＶ１を基準グローバル動きベクトルとして、第２の共通グローバル動きベクトルＧＭＶ２を符号化する際、第１の共通グローバル動きベクトルＧＭＶ１との差分を取ると、差ベクトルαだけが残り、符号量を減らすことができる。
【００８５】
大域動きベクトル差分符号化部７４は、第１の共通グローバル動きベクトルＧＭＶ１と第２の共通グローバル動きベクトルＧＭＶ２を個別に符号化した場合と、いずれか一方を基準として差分を取って符号化した場合とで符号量を比較して、有利な方を選択することもできる。
【００８６】
図６の例では、隣り合う２つのＧＯＰ間で共通グローバル動きベクトルＧＭＶを差分符号化したが、より一般的には、３つ以上のＧＯＰ間で共通グローバル動きベクトルＧＭＶの差分符号化を行ってもよい。たとえば、３つ以上のＧＯＰの内、１つのＧＯＰの共通グローバル動きベクトルＧＭＶを基準として、他のＧＯＰの共通グローバル動きベクトルＧＭＶとの差分を符号化してもよく、３つ以上のＧＯＰのシーケンスにおいて、隣り合う２つのＧＯＰ間で共通グローバル動きベクトルＧＭＶの差分を求めて符号化してもよい。
【００８７】
図７は、実施の形態１に係る復号装置３００の構成図である。これらの機能ブロックもハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現することができる。
【００８８】
復号装置３００は、符号化ストリームの入力を受け取り、符号化ストリームを復号して出力画像を生成する。入力された符号化ストリームはフレームメモリ３８０に格納される。
【００８９】
可変長復号部３１０は、フレームメモリ３８０に格納された符号化ストリームを可変長復号し、復号された画像データを逆量子化部３２０に供給し、復号された動きベクトル情報を動き補償部３６０に供給する。
【００９０】
逆量子化部３２０は、可変長復号部３１０により復号された画像データを逆量子化し、逆ＤＣＴ部３３０に供給する。逆量子化部３２０により逆量子化された画像データはＤＣＴ係数である。逆ＤＣＴ部３３０は、逆量子化部３２０により逆量子化されたＤＣＴ係数を逆離散コサイン変換（ＩＤＣＴ）することにより、元の画像データを復元する。逆ＤＣＴ部３３０により復元された画像データは、動き補償部３６０に供給される。
【００９１】
動き補償部３６０は、過去または未来の画像フレームを参照画像として利用し、可変長復号部３１０から供給される動きベクトル情報を用いて予測画像を生成し、逆ＤＣＴ部３３０から供給される差分画像と加算することにより、元の画像データを復元し、出力する。
【００９２】
図８は、動き補償部３６０の構成を説明する図である。復号装置３００に入力される符号化ストリームは、図１の符号化装置１００により符号化されたものであり、動き補償部３６０に供給される動きベクトル情報として、基準グローバル動きベクトルＧＭＶＢ、グローバル動きベクトル差分ΔＧＭＶ、ローカル動きベクトル差分ΔＬＭＶがある。動き補償部３６０は、これらの動きベクトル情報を参照して、復号対象フレームのローカル動きベクトルＬＭＶを求め、動き補償を行う。
【００９３】
ＧＯＰ情報取得部３６１は、可変長復号部３１０から符号化ストリームに含まれるＧＯＰに関する情報を取得し、大域動きベクトル算出部３６２に与える。ＧＯＰに関する情報には、ＧＯＰを構成するフレームの区切りを示す情報やグローバル動きベクトルＧＭＶを求めるべきグローバル領域の情報などが含まれる。
【００９４】
大域動きベクトル算出部３６２は、ＧＯＰ情報取得部３６１から与えられたＧＯＰに関する情報を参照して、ＧＯＰ単位の共通グローバル動きベクトルＧＭＶを符号化ストリームから取得する。グローバル動きベクトルＧＭＶが差分符号化されている場合、大域動きベクトル算出部３６２は、可変長復号部３１０から基準グローバル動きベクトルＧＭＶＢとグローバル動きベクトル差分ΔＧＭＶの入力を受け取り、ＧＯＰ単位の共通グローバル動きベクトルＧＭＶ＝ΔＧＭＶ＋ＧＭＶＢを求め、局所動きベクトル算出部３６４に与える。
【００９５】
局所動きベクトル算出部３６４は、可変長復号部３１０からローカル動きベクトル差分ΔＬＭＶの入力、大域動きベクトル算出部３６２からＧＯＰ単位の共通グローバル動きベクトルＧＭＶの入力をそれぞれ受け取り、フレーム毎にローカル動きベクトル差分ΔＬＭＶにＧＯＰに共通のグローバル動きベクトルＧＭＶを加算することにより、フレーム単位でローカル動きベクトルＬＭＶ＝ΔＬＭＶ＋ＧＭＶを求める。局所動きベクトル算出部３６４は、各フレームのローカル動きベクトルＬＭＶを画像復元部３６６に与える。
【００９６】
画像復元部３６６は、参照画像と各グローバル領域内のマクロブロック単位のローカル動きベクトルＬＭＶを用いて予測画像を生成し、逆ＤＣＴ部３３０から与えられた差分画像と予測画像を加算して元の画像を復元し、出力する。
【００９７】
以上述べたように、本実施の形態の符号化装置１００によれば、動きベクトルを符号化する際に、複数のフレームからなるグループの単位で共通のグローバル動きベクトルを求め、共通のグローバル動きベクトルの情報を符号化する。グループ単位で大域的な動きに時間的な一貫性がある場合、グループ単位で共通のグローバル動きベクトルを設けることにより、グローバル動きベクトルの符号量を削減することができる。
【００９８】
さらに、グループ内の各フレームのマクロブロック単位のローカル動きベクトル情報をグループ内で共通のグローバル動きベクトルとの差分値で表すことにより、ローカル動きベクトル情報のデータ量を削減し、動画像ストリーム全体の符号量を減らして圧縮効率を高めることができる。
【００９９】
また、本実施の形態の復号装置３００によれば、符号化装置１００により符号化された圧縮効率の高い動画ストリームから、グループ単位で定義された共通のグローバル動きベクトルを取得して、グループ単位で大域的な動きを捉えて動画像の復号を行うことができる。また、各フレームのローカル動きベクトルの差分値と、グループ内で共通のグローバル動きベクトルとを取得し、フレーム毎にローカル動きベクトルの差分値をそのグループ内で共通のグローバル動きベクトルに加算してローカル動きベクトルを求め、動き補償を行うことにより、画質の高い動画像を復元することができる。
【０１００】
実施の形態２
図９は、実施の形態２に係る符号化装置１００の動き補償部６０の構成図である。本実施の形態の符号化装置１００の動き補償部６０は、ＧＯＰ内の共通グローバル動きベクトルＧＭＶをＧＯＰ内の各フレームに適用する際、必要に応じて補正する点が実施の形態１の符号化装置１００の動き補償部６０とは異なる。実施の形態１の符号化装置１００の動き補償部６０と同じ構成については同符号を付して説明を省略し、実施の形態１とは異なる構成と動作を説明する。
【０１０１】
実施の形態１では、ＧＯＰ内で大域的な動きの速度が一定であると仮定して、ＧＯＰ内の共通グローバル動きベクトルＧＭＶを補正することなくＧＯＰ内の各フレームに適用した。たとえば、ＧＯＰ内で大域的な動きの速度が一定でない場合、あるフレームで求めた共通グローバル動きベクトルＧＭＶを他のフレームにそのまま適用すると、共通グローバル動きベクトルＧＭＶとマクロブロック単位のローカル動きベクトルＬＭＶとの誤差が大きくなり、ローカル動きベクトルＬＭＶと共通グローバル動きベクトルＧＭＶの差分が小さくならず、符号量の削減効果が十分に得られないこともある。
【０１０２】
たとえば、動画像に映っているオブジェクトが落下する場合や自動車が速度を加速する場合、ＧＯＰ内で大域的な動きの速度が一定ではなく、加速度をもつ。このような場合には、ＧＯＰ内で共通グローバル動きベクトルＧＭＶに加速度項により補正してＧＯＰ内の各フレームに適用される共通グローバル動きベクトルＧＭＶを調整すれば、補正された共通グローバル動きベクトルＧＭＶは、各フレームのローカル動きベクトルＬＭＶに近いものとなるから、各フレームにおいてローカル動きベクトルＬＭＶを差分符号化した際の符号量をより効果的に削減することができる。
【０１０３】
大域動きベクトル算出部６８は、実施の形態１で述べた方法により求めたＧＯＰ単位の共通グローバル動きベクトルＧＭＶを補正部６９と大域動きベクトル差分符号化部７４に与える。補正部６９は、ＧＯＰ内の各フレームに適用するために共通グローバル動きベクトルＧＭＶを補正する。一例として、大域的な動きが加速度一定の運動である場合、補正部６９は、次式により、共通グローバル動きベクトルＧＭＶを補正する。
【０１０４】
ＧＭＶ［ｎ］＝ＧＭＶ［０］＋ｋｎ
ここで、ＧＭＶ［０］は、共通グローバル動きベクトルＧＭＶの初期値であり、ｎはフレーム番号である。ｋは定数の補正係数である。
【０１０５】
補正部６９は、補正された共通グローバル動きベクトルＧＭＶ＋ｋｎを局所動きベクトル差分符号化部７２に与え、補正係数ｋを大域動きベクトル差分符号化部７４に与える。
【０１０６】
大域動きベクトル差分符号化部７４は、実施の形態１で述べた通り、共通グローバル動きベクトルＧＭＶが複数設けられている場合に、共通グローバル動きベクトルＧＭＶの差分符号化を行う。本実施の形態では、ＧＯＰ内の各フレームに適用される共通グローバル動きベクトルＧＭＶは補正係数ｋにより調整されているため、大域動きベクトル差分符号化部７４は、補正係数ｋの情報も動きベクトル情報の一部に含めて符号化を行い、符号化された補正係数ｋ、基準グローバル動きベクトルＧＭＶＢ、およびグローバル動きベクトル差分ΔＧＭＶを動きベクトル情報として多重化部９２に与える。
【０１０７】
図１０は、ＧＯＰ内で共通グローバル動きベクトルＧＭＶがフレーム毎に補正される様子を説明する図である。
【０１０８】
ＧＯＰ内のフレーム１〜５において、大域的な動きが加速されるとする。画像全体の大域的な動きが加速されてもよく、特定のグローバル領域内の大域的な動きが加速されてもよい。ここでは、説明の簡単のため、黒丸で示したオブジェクトが加速度をもって動く場合を説明するが、画像全体がこの黒丸の動きと同様に加速度をもって動くと考えてもよい。
【０１０９】
フレーム１〜フレーム５において、オブジェクトは符号２３１〜２３５で示す位置に移動する。移動速度は一定ではなく、加速度をもっている。この場合に、大域動きベクトル算出部６８が、ＧＯＰのフレーム１について大域的な動きを検出することにより、共通グローバル動きベクトルＧＭＶの初期値ＧＭＶ［０］を求めたとする。補正部６９は、フレーム２に対しては、この初期値ＧＭＶ［０］を補正係数ｋにより補正したＧＭＶ［０］＋ｋを補正された共通グローバル動きベクトルＧＭＶとして局所動きベクトル差分符号化部７２に供給する。以降、補正部６９は、フレーム３に対してはＧＭＶ［０］＋２ｋを、フレーム４に対してはＧＭＶ［０］＋３ｋを、フレーム５に対してはＧＭＶ［０］＋４ｋをそれぞれ補正された共通グローバル動きベクトルＧＭＶとして局所動きベクトル差分符号化部７２に供給する。
【０１１０】
局所動きベクトル差分符号化部７２は、フレーム１のローカル動きベクトルＬＭＶの差分符号化の際は、グローバル動きベクトルＧＭＶの初期値ＧＭＶ［０］との差分を算出して符号化する。以降、局所動きベクトル差分符号化部７２は、フレーム２〜５のローカル動きベクトルＬＭＶの差分符号化の際は、それぞれグローバル動きベクトルＧＭＶの初期値ＧＭＶ［０］に補正係数ｋの整数倍を加えたＧＭＶ［０］＋ｋ、ＧＭＶ［０］＋２ｋ、ＧＭＶ［０］＋３ｋ、ＧＭＶ［０］＋４ｋとの差分を算出して符号化する。
【０１１１】
ここでは、一例として、大域的な動きが加速度一定の動きと考えた場合の共通グローバル動きベクトルＧＭＶの補正を説明したが、より一般的には、補正部６９は、２次関数で補正するなど動きの速度変化に応じていろいろな補正を行うことができる。その場合、補正部６９は、補正に用いた関数の種類や関数の係数などの補正に関する情報を大域動きベクトル差分符号化部７４に与え、大域動きベクトル差分符号化部７４が補正に関する情報を動きベクトル情報の一部に付加して符号化すればよい。
【０１１２】
実施の形態２に係る復号装置は、実施の形態１の復号装置３００の動き補償部３６０に図９の補正部６９と同様の構成をもたせ、大域動きベクトル算出部３６２により求められた共通グローバル動きベクトルＧＭＶを補正係数ｋを用いて補正してから局所動きベクトル算出部３６４に与えるように処理手順を変更すればよい。
【０１１３】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１１４】
上記の説明では、符号化装置１００および復号装置３００は、ＭＰＥＧシリーズの規格（ＭＰＥＧ−１、ＭＰＥＧ−２およびＭＰＥＧ−４）、Ｈ．２６ｘシリーズの規格（Ｈ．２６１、Ｈ．２６２およびＨ．２６３）、もしくはＨ．２６４／ＡＶＣに準拠して動画像の符号化および復号を行ったが、本発明は、時間的スケーラビリティをもつ階層的な動画像の符号化および復号を行う場合にも適用することができる。特にＭＣＴＦ技術を用いた場合の動きベクトルの符号化において、動きベクトルの符号量を削減するために本発明は有効である。
【図面の簡単な説明】
【０１１５】
【図１】実施の形態１に係る符号化装置の構成図である。
【図２】図１の動き補償部の構成を説明する図である。
【図３】図２の動き補償部による動きベクトルの差分符号化の手順を説明するフローチャートである。
【図４】動画像の複数のフレームからなるグループ単位の共通グローバル動きベクトルの例を説明する図である。
【図５】動画像を複数の空間領域に分けて、領域毎に共通グローバル動きベクトルを求める例を説明する図である。
【図６】複数のグループの間で共通グローバル動きベクトルの差分を符号化する例を説明する図である。
【図７】実施の形態１に係る復号装置の構成図である。
【図８】図７の動き補償部の構成を説明する図である。
【図９】実施の形態２に係る符号化装置の動き補償部の構成図である。
【図１０】動画像の複数のフレームからなるグループ内で共通グローバル動きベクトルがフレーム毎に補正される様子を説明する図である。
【符号の説明】
【０１１６】
２０  ＤＣＴ部、  ３０  量子化部、  ６０  動き補償部、  ６４  ＧＯＰ設定部、  ６６  局所動きベクトル検出部、  ６８  大域動きベクトル算出部、  ６９  補正部、  ７０  動き補償予測部、  ７２  局所動きベクトル差分符号化部、  ７４  大域動きベクトル差分符号化部、  ８０  フレームメモリ、  ９０  可変長符号化部、  ９２  多重化部、  １００  符号化装置、  ３００  復号装置、  ３１０  可変長復号部、  ３２０  逆量子化部、  ３３０  逆ＤＣＴ部、  ３６０  動き補償部、  ３６１  ＧＯＰ情報取得部、  ３６２  大域動きベクトル算出部、  ３６４  局所動きベクトル算出部、  ３６６  画像復元部、  ３８０  フレームメモリ。
【図１】
0004401336.tif 000002
【図２】
0004401336.tif 000003
【図３】
0004401336.tif 000004
【図４】
0004401336.tif 000005
【図５】
0004401336.tif 000006
【図６】
0004401336.tif 000007
【図７】
0004401336.tif 000008
【図８】
0004401336.tif 000009
【図９】
0004401336.tif 000010
【図１０】
0004401336.tif 000011