(57)【要約】【課題】複数の参照フレームから動き補償予測を行うのに必要な動きベクトルの符号量を低減できる動画像復号化方法を提供する。【解決手段】（ａ）参照フレームの符号化データ、（ｂ）選択されたフレームを参照フレームを用いて動き補償予測符号化して得られた符号化データ、および、（ｃ）符号化対象フレームの符号化対象小領域を選択されたフレーム内の空間的同位置にある符号化済み小領域の参照動きベクトルをスケーリングした予測動きベクトルを用いて動き補償予測符号化して得られた符号化データを入力し、参照フレームの符号化データを復号化して参照フレームを生成し、選択されたフレームの符号化データを復号化して符号化済み小領域の参照動きベクトルを生成し、参照動きベクトルをスケーリングして予測動きベクトルを生成し、予測動きベクトルと前記参照フレームを用いた動き補償により符号化対象フレームの符号化対象小領域を復号化する。【選択図】図２
2006304350.tif 000002
【特許請求の範囲】
【請求項１】
動画像を動き補償予測符号化して得られた符号化データを復号化する方法であって、
（ａ）参照フレームの符号化データ、（ｂ）選択されたフレームを前記参照フレームを用いて動き補償予測符号化して得られた符号化データ、および、（ｃ）符号化対象フレームの符号化対象小領域を前記選択されたフレーム内の空間的同位置にある符号化済み小領域の参照動きベクトルをスケーリングした予測動きベクトルを用いて動き補償予測符号化して得られた符号化データを入力し、
前記参照フレームの符号化データを復号化して前記参照フレームを生成し、
前記選択されたフレームの符号化データを復号化して前記符号化済み小領域の参照動きベクトルを生成し、
前記参照動きベクトルをスケーリングして前記予測動きベクトルを生成し、
前記予測動きベクトルと前記参照フレームを用いた動き補償により前記符号化対象フレームの前記符号化対象小領域を復号化する、動画像復号化方法。
【請求項２】
動画像を動き補償予測符号化して得られた符号化データを復号化する装置であって、
（ａ）参照フレームの符号化データ、（ｂ）選択されたフレームを前記参照フレームを用いて動き補償予測符号化して得られた符号化データ、および、（ｃ）符号化対象フレームの符号化対象小領域を前記選択されたフレーム内の空間的同位置にある符号化済み小領域の参照動きベクトルをスケーリングした予測動きベクトルを用いて動き補償予測符号化して得られた符号化データを入力する手段と、
前記参照フレームの符号化データを復号化して前記参照フレームを生成する手段と、
前記選択されたフレームの符号化データを復号化して前記符号化済み小領域の参照動きベクトルを生成する手段と、
前記参照動きベクトルをスケーリングして前記予測動きベクトルを生成する手段と、
前記予測動きベクトルと前記参照フレームを用いた動き補償により前記符号化対象フレームの前記符号化対象小領域を復号化する手段と、を具備する動画像復号化装置。
【請求項３】
動画像を動き補償予測符号化して得られた符号化データを復号化する処理をコンピュータに行わせるためのプログラムであって、
（ａ）参照フレームの符号化データ、（ｂ）選択されたフレームを前記参照フレームを用いて動き補償予測符号化して得られた符号化データ、および、（ｃ）符号化対象フレームの符号化対象小領域を前記選択されたフレーム内の空間的同位置にある符号化済み小領域の参照動きベクトルをスケーリングした予測動きベクトルを用いて動き補償予測符号化して得られた符号化データを入力する処理と、
前記参照フレームの符号化データを復号化して前記参照フレームを生成する処理と、
前記選択されたフレームの符号化データを復号化して前記符号化済み小領域の参照動きベクトルを生成する処理と、
前記参照動きベクトルをスケーリングして前記予測動きベクトルを生成する手段と、
前記予測動きベクトルと前記参照フレームを用いた動き補償により前記符号化対象フレームの前記符号化対象小領域を復号化する処理と、を含む復号化処理を前記コンピュータに行わせるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像信号の圧縮符号化されたデータを復号化して元の動画像信号を再生する動画像復号化方法及び装置に関する。
【背景技術】
【０００２】
動画像の圧縮符号化方式として、ＭＰＥＧ−１(ISO/IEC11172-2)、ＭＰＥＧ−２(ISO/IEC13818-2)、ＭＰＥＧ−４(ISO/IEC14496-2)及びＩＴＵ−ＴＨ．２６３などが広く実用化されている。これらの符号化方式では、フレーム内符号化ピクチャ（Ｉピクチャ）、前方予測フレーム間符号化ピクチャ（Ｐピクチャ）及び両方向予測フレーム間符号化ピクチャ（Ｂピクチャ）の組み合わせによる動き補償予測符号化が行われる。Ｐピクチャは、直前のＰピクチャまたはＩピクチャを参照フレームとして符号化され、Ｂピクチャは、直前及び直後のＰピクチャまたはＩピクチャを参照フレームとして符号化される。
【０００３】
ＭＰＥＧ方式では、動画像の一つまたは複数のフレームからマクロブロック毎に選択的に予測画像を生成することが可能である。Ｐピクチャでは、通常は一つの参照フレームからマクロブロック単位に予測画像を生成する。Ｂピクチャでは、前方あるいは後方のピクチャを参照フレームとしてそれらの参照フレームの何れか一つから予測画像を生成する場合と、前方及び後方の参照フレームからそれぞれ参照マクロブロックを切り出し、その平均値から予測画像を生成する場合とがある。予測画像をどの方法で生成したかを示す予測モードの情報は、マクロブロック毎に符号化データに埋め込まれる。
【０００４】
Ｂピクチャの両方向予測においては、前方及び後方の参照フレームからそれぞれ動き補償予測を行うため、動き補償を行う単位領域（例えば、マクロブロックやそれをさらに分割した小領域）毎に前方及び後方のピクチャのそれぞれに対応した２本の動きベクトルが必要であり、１本の動きベクトルを用いる前方予測に比べて動きベクトルの符号量が多いという問題がある。同様に、Ｂピクチャにおいて前方あるいは後方の複数の参照フレームから動き補償予測を行う場合も、それぞれの参照フレームに対応した動きベクトルが必要となり、動きベクトルの符号量が増大するという問題がある。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述したように、従来のＢピクチャにおける両方向予測のように複数の参照フレームからの動き補償予測を行う動画像符号化方式においては、複数の参照フレームのそれぞれに対応した動きベクトルが必要となるため、これらの動きベクトルを符号化すると動きベクトルの符号量が多くなるという問題がある。
【０００６】
本発明は、複数の参照フレームから動き補償予測を行うのに必要な動きベクトルの符号量を低減できる動画像復号化方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するため、本発明による一つの態様では、動画像を動き補償予測符号化して得られた符号化データを復号化するに際して、（ａ）参照フレームの符号化データ、（ｂ）選択されたフレームを前記参照フレームを用いて動き補償予測符号化して得られた符号化データ、および、（ｃ）符号化対象フレームの符号化対象小領域を前記選択されたフレーム内の空間的同位置にある符号化済み小領域の参照動きベクトルをスケーリングした予測動きベクトルを用いて動き補償予測符号化して得られた符号化データを入力し、前記参照フレームの符号化データを復号化して前記参照フレームを生成し、前記選択されたフレームの符号化データを復号化して前記符号化済み小領域の参照動きベクトルを生成し、前記参照動きベクトルをスケーリングして前記予測動きベクトルを生成し、前記予測動きベクトルと前記参照フレームを用いた動き補償により前記符号化対象フレームの前記符号化対象小領域を復号化する。
【０００８】
さらに、上述した動画像復号化の処理をコンピュータに行わせるためのプログラムを提供することができる。
【発明の効果】
【０００９】
本発明によると、複数の参照フレームから動き補償予測を行って動画像の復号化を行う場合、各参照フレームに対応した動きベクトルの情報を送出する必要がなく、動きベクトルのための符号量が大きく低減される。
【００１０】
すなわち、前方及び後方のフレームからの動き補償予測を行う両方向予測や、前方あるいは後方の複数のフレームからの動き補償予測など、複数の動きベクトルが必要となる動き補償において、動きベクトルを直接符号化せず、既に符号化された動きベクトルを用いて符号化対象の動きベクトルを予測符号化することにより、動きベクトルの伝送に必要な符号量を削減して、より少ない符号量で符号化された動画像信号の復号化を行うことができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の実施の形態について説明する。  
（符号化側について）  
図１は、本実施形態に係る動画像符号化装置の構成を示すブロック図である。図１に示す動画像符号化装置は、ハードウェアで実現してもよいし、コンピュータを用いてソフトウェアにより実行してもよい。一部の処理をハードウェアで実現し、他の処理をソフトウェアにより行ってもよい。
【００１２】
図１において、フレーム単位で入力される入力画像信号１００は減算器１１０に入力され、入力動画像信号１００に対する予測画像信号１０４の誤差である予測誤差信号１０１が生成される。予測画像信号１０４は、参照フレームメモリセット（ＦＭＡ）１１８に一時保存された少なくとも一つの参照フレーム画像信号から、動き補償予測器（ＭＣ）１１１により生成される。動き補償予測器１１１においては、参照フレームの選択と予測ベクトルの生成及び動き補償予測が行われる。
【００１３】
予測誤差信号１０１は、離散コサイン変換器（ＤＣＴ）１１２、量子化器（Ｑ）１１３及び可変長符号化器（ＶＬＣ）１１４を経て符号化される。可変長符号化器１１４から出力される符号化データ１０６には、量子化ＤＣＴ係数の符号化データ１０２に加えて、動き補償予測に使用した参照フレームを特定するインデックス、及び動き補償予測に用いた動きベクトルを予測して生成される予測ベクトルの生成に関わる情報をマクロブロック毎に符号化したデータ１０５（以下、サイドデータという）も付加される。符号化データ１０６は、図示しない蓄積系または伝送系へ送出される。
【００１４】
量子化器１１３の出力は、逆量子化器（ＩＱ）１１５にも入力され、逆量子化器１１５及び逆離散コサイン変換器（ＩＤＣＴ）１１６を経た後、予測画像信号１０４と加算されることによって、復号化画像信号１０３が生成される。復号化画像信号１０３は、複数のフレームメモリによって構成される参照フレームメモリセット１１８に参照フレームとして一時保存される。
【００１５】
参照フレームメモリセット１１８においては、例えば新しい復号化画像信号が参照フレームとして順次書き込まれ、また既に保存されている参照フレームのうち時間的に最も古い参照フレームから順次削除される、いわゆるＦＩＦＯ(First-InFirst-Out)型の制御が行われる。復号化画像信号１０３に対して、フレーム単位、またはマクロブロックを１ないし複数まとめた単位（スライスなど）、あるいはフレームやスライスを複数まとめた単位毎に、参照フレームとして用いるかどうかを示すフラグなどの付加情報を付加してもよい。この場合、付加情報により参照フレームとして用いることが示された復号化画像信号のみを参照フレームメモリセット１１８に参照フレームの画像信号として書き込み、後続のフレームの動き補償予測に用いるようにする。
【００１６】
（復号化側について）  
図２は、本実施形態に係る図１に示した動画像符号化装置に対応する動画像復号化装置の構成を示すブロック図である。この動画像復号化装置も、ハードウェアで実現してもよいし、コンピュータを用いてソフトウェアにより実行してもよく、また一部の処理をハードウェアで実現し、他の処理をソフトウェアにより行ってもよい。
【００１７】
図２に示す動画像復号化装置には、図１に示した動画像符号化装置から出力された符号化データが図示しない蓄積系または伝送系を経て入力される。入力された符号化データ２００は、可変長復号化器（ＶＬＤ）２１４により可変長符号の復号化が行われ、量子化ＤＣＴ係数データ２０１とサイドデータ２０２が出力される。可変長復号化器２１４からの出力のうち、量子化ＤＣＴ係数データ２０１は逆量子化器（ＩＱ）２１５及び逆離散コサイン変換器（ＩＤＣＴ）２１６を経て復号され、予測誤差信号２０４が生成される。
【００１８】
可変長復号化器２１４からの出力のうち、マクロブロック毎に符号化された動きベクトル及び動き補償予測に使用した参照フレームを特定するインデックスを含むサイドデータ２０２は、動き補償予測器（ＭＣ）２１１に入力される。動き補償予測器２１１では、サイドデータ２０２に従って符号化時と同様に参照フレームの選択、予測ベクトルの生成及び動き補償予測が行われることにより、予測画像信号２０３が生成される。この予測画像信号と逆離散コサイン変換器２１６から出力される予測誤差信号２０４が加算され、復号化画像信号２０５が生成される。
【００１９】
復号化画像信号２０５は、参照フレームメモリセット（ＦＭＡ）２１８に参照フレームとして一時保存される。参照フレームメモリセット２１８では、符号化時と同様にＦＩＦＯ型の制御が行われてもよいし、復号化画像信号２０５に付加されている、参照フレームとして用いるかどうかを示す前述のフラグなどの付加情報に従って、参照フレームメモリセット２０８に書き込まれた復号化画像信号２０５を後続の復号化対象フレームの動き補償予測に用いるか否かが制御されてもよい。
【００２０】
本実施形態に係る動画像符号化装置及び復号化装置では、前方及び後方のフレームからの動き補償予測を行う両方向予測や、前方あるいは後方の複数のフレームからの動き補償予測のように、複数の動きベクトルを用いて動き補償予測を行う際に、動きベクトルを直接符号化せず、その動きベクトルを予測符号化することによって符号量を削減する。
【００２１】
ここで、動きベクトルの予測符号化方法には、大別して［Ｉ］符号化済みフレームの動きベクトルを参照ベクトルとする予測符号化方法と、［II］符号化対象フレーム内の符号化対象ブロックの周囲の符号化済みマクロブロックの動きベクトルを参照ベクトルとする予測符号化方法、の二つがある。
【００２２】
［Ｉ］の予測符号化方法では、動き補償予測器１１１において選択された参照フレーム内の小領域を符号化する際に動き補償予測に用いられた動きベクトルを参照ベクトルとして用いて符号化対象動きベクトルを予測することにより予測ベクトルを生成する。
【００２３】
一方、図２に示した動画像復号化装置においては、動き補償予測器２１１において選択された参照フレーム内の小領域を符号化する際に動き補償予測に用いられた動きベクトルを参照ベクトルとして用いて符号化対象動きベクトルを予測することにより予測ベクトルを生成する。
【００２４】
［II］の予測符号化方法では、動き補償予測器１１１において符号化対象フレーム内の符号化対象小領域の周囲の複数の符号化済み小領域を符号化する際に動き補償予測に用いられた複数の動きベクトルを参照ベクトルとして用いて第１及び第２の符号化対象動きベクトルを予測することにより予測ベクトルを生成する。
【００２５】
一方、図２に示した動画像復号化装置においては、動き補償予測器２１１において符号化対象フレーム内の符号化対象小領域の周囲の複数の符号化済み小領域を符号化する際に動き補償予測に用いられた複数の動きベクトルを参照ベクトルとして用いて第１及び第２の符号化対象動きベクトルを予測することにより予測ベクトルを生成する。
【００２６】
以下、［Ｉ］の予測符号化方法について図３〜図８を用いて説明し、［II］の予測符号化方法について図９〜図１１を用いて説明する。  
［Ｉ］符号化済みフレームの動きベクトルを参照ベクトルとする動きベクトルの予測符号化方法について：  
図３〜図６は、既に符号化されたフレームで用いられた動きベクトル（参照ベクトルと呼ぶ）を基にスケーリングを行って予測ベクトルを生成する例を示している。この場合、参照ベクトルと予測ベクトルとの差分ベクトルを符号化することにより、動きベクトルに関する符号量を削減できる。予測ベクトルをそのまま用いることにより、動きベクトルの符号化を省略してもよく、これにより動きベクトルに関する符号量をさらに削減できる。上述の差分ベクトルを符号化したデータ（第４のデータ）を図１に示した動画像符号化装置から出力される符号化データ１０６に含ませる場合には、図２に示した動画像復号化装置において入力される符号化データ２００から可変長復号化器２１４を介してサイドデータ２０２の一部として差分ベクトルのデータを復号化する。そして、差分ベクトルを予測ベクトルに加算した動きベクトルを用いて動き補償予測を行う。
【００２７】
図３〜図６において、currentは現在符号化しようとしている現フレームすなわち符号化対象フレーム、rf0，rf1，rf2，rb0は符号化済みフレームである参照フレームであり、rf0，rf1は符号化対象フレームより時間的に過去の参照フレーム、rb0は符号化対象フレームに対して時間的に未来の参照フレームである。curMBは符号化対象フレーム内の現在符号化しようとしているマクロブロック（符号化対象マクロブロック）、coMBは参照フレームrb0の中でcurMBと空間的に同位置にある符号化済みマクロブロック（参照マクロブロックという）である。
【００２８】
複数の参照フレームrf0，rf1，rf2，rb0のうちどれを動き補償予測に用いるかは、各参照フレームrf0，rf1，rf2，rb0を指し示すインデックス（参照フレームインデックス）を符号化することにより示される。図３〜図６の例では２枚の参照フレームrf0及びrf2を予測に用いているため、これらの参照フレームrf0，及びrf2に対応した２つの参照フレームインデックスref_idx_f及びref_idx_bの組み合わせを表すインデックス値を符号化する。参照フレームインデックスref_idx_f及びref_idx_bに対応する動きベクトルは、それぞれMV(ref_idx_f)及びMV(ref_idx_b)で表されており、これらが本実施形態において予測符号化されるべき符号化対象動きベクトルである。
【表１】
2006304350.tif 000003
【００２９】
表１は、参照フレームインデックスref_idx_f及びref_idx_bと参照フレーム及びインデックス値の対応関係の例を示している。インデックス値を以下のように設定することにより、予測に用いられる参照フレームrf0及びrf2を指し示す。  
ref_idx_f=0  
ref_idx_b=3
なお、表１の例では２つの参照フレームインデックスref_idx_fとref_idx_bとで、対応する参照フレームが異なる例を示したが、表２のように、参照フレームインデックスに対する参照フレームの対応付けを２つのインデックスref_idx_fとref_idx_bとで同一としてもよい。
【表２】
2006304350.tif 000004
【００３０】
＜同一の参照フレームインデックスに対応した参照ベクトルを動きベクトルの予測に用いる例＞  
図３の例では、同一の参照フレームインデックスに対応した参照フレームからの動きベクトル（参照ベクトル）をスケーリングして予測動きベクトルを生成する。ここで、参照ベクトルRMV(ref_idx_f)及びRMV(ref_idx_b)は、それぞれ参照マクロブロックcoMBを符号化する際に用いられた、参照フレームインデックスref_idx_f及びref_idx_bに対応する参照フレームからの動きベクトルである。
【００３１】
また、図３では符号化対象フレーム(current)から、参照フレームインデックスref_idx_f及びref_idx_bで示される参照フレームrf0及びrf2までの時間距離をFD1及びFD2とする。参照マクロブロックcoMBのある参照フレームrb0から、参照フレームインデックスref_idx_f及びref_idx_bで示される参照フレームrf1及びrf0までの時間距離をRFD1及びRFD2とする。なお、以下の説明では上述の時間距離FD1，FD2，RFD1，RFD2をフレーム間距離とも呼ぶ。  
この場合、動きベクトルMV(ref_idx_f)及びMV(ref_idx_b)は、参照ベクトルRMV(ref_idx_f)及びRMV(ref_idx_b)からフレーム間距離に応じて以下のようにスケーリングすることにより予測ベクトルとして求められる。  
MV(ref_idx_f)=S1*RMV(ref_idx_f)  ，S1=FD1/RFD1  
MV(ref_idx_b)=S2*RMV(ref_idx_b)  ，S2=FD2/RFD2  
ここで、S1，S2をスケーリングファクタという。
【００３２】
同一の参照フレームインデックスに対応する参照フレームの中で、同じ空間位置にある参照マクロブロックcoMBの符号化に用いた２本の動きベクトルのうち、一方の動きベクトルをスケーリングして予測ベクトルを生成してもよい。図４及び図５を用いて、このような予測ベクトルの生成法について説明する。
【００３３】
＜同一の参照フレームインデックスに対応する参照ベクトルのうち、予め決められた一方の参照ベクトルを動きベクトルの予測に用いる用いる例＞  
図４に示すように、参照フレームインデックスref_idx_bに対応する参照ベクトルRMV(ref_idx_b)をスケーリングして、以下の予測ベクトルを生成する。  
MV(ref_idx_f)=S1*RMV(ref_idx_b)  ，S1=FD1/RFD1  
MV(ref_idx_b)=S2*RMV(ref_idx_b)  ，S2=FD2/RFD2  
同様に、参照フレームインデックスref_idx_fに対応する参照ベクトルRMV(ref_idx_f)をスケーリングして、以下のように予測ベクトルを生成してもよい。  
MV(ref_idx_f)=S1*RMV(ref_idx_f)  ，S1=FD1/RFD1  
MV(ref_idx_b)=S2*RMV(ref_idx_f)  ，S2=FD2/RFD2
＜同一の参照フレームインデックスに対応する参照ベクトルのうち符号化対象フレームとの時間距離が近い参照ベクトルを動きベクトルの予測に用いる例＞  
図５に示すように、２本の参照ベクトルのうち符号化済みフレームから時間的に近い参照フレームの予測に用いられた方の参照ベクトルをスケーリングして予測ベクトルを生成する。図５の例では、参照マクロブロックcoMBの符号化の際に２枚の参照フレームrf1とrf0が予測に用いられているが、参照フレームrf0の方がcoMBのある参照フレームrb0により時間的に近いため、対応する参照ベクトルRMV(ref_idx_b)をスケーリングして予測ベクトルを生成する。
【００３４】
図５の変形として、よりインデックス値が小さい参照ベクトルを予測に用いてもよい。表２の参照フレームインデックスを用いた場合、参照マクロブロックcoMBにおいてはインデックス値はref_idx_b=0，ref_idx_b=2であり、ref_idx_bの方が値が小さいため、これに対応する参照ベクトルRMV(ref_idx_b)をスケーリングして予測ベクトルを生成する。
【００３５】
また、符号化順がより近い参照フレーム内の参照ベクトルを予測に用いてもよい。各フレームの符号化順序がrf2，rf1，rf0，rb0，currentであるとすれば、参照マクロブロックcoMBの符号化に用いられた２枚の参照フレームrf0及びrf1のうち、rf0の方がcoMBのある参照フレームrb0に近いため、これに対応する参照ベクトルRMV(ref_idx_b)を予測に用いる。
【００３６】
＜２本の参照ベクトルの平均値を動きベクトルの予測に用いる例＞  
図６に示すように、２本の参照ベクトルの平均値をスケーリングして予測ベクトルを生成する。２本の参照ベクトルの平均値（平均参照ベクトル）及び符号化済みフレームrb0と２枚の参照フレームとの時間距離の平均値（平均フレーム間距離）を以下のように計算する。  
平均参照ベクトル：MRMV=(RMV(ref_idx_f)+RMV(ref_idx_b))/2  
平均フレーム間距離：MRFD=(RFD1+RFD2/2)  
このように計算された平均参照ベクトルMRMVをそのまま予測ベクトルとして用いても良い。あるいは、これらの平均参照ベクトル及び平均フレーム間距離から、予測ベクトルを以下の計算により生成する。  
MV(ref_idx_f)=S1*MRMV  ，S1=FD1/MRFD  
MV(ref_idx_b)=S2*MRMV  ，S2=FD2/MRFD
変形として、以下のように計算を簡略化しても同一の予測ベクトルを生成することができる。
【００３７】
MRMV=RMV(ref_idx_f)+RMV(ref_idx_b)  
MRFD=MFD1+MFD2  
MV(ref_idx_f)=S1*MRMV  ，S1=FD1/MRFD  
MV(ref_idx_b)=S2*MRMV  ，S2=FD2/MRFD
また、以下のように、２本の参照ベクトルの重み付け加算値を予測ベクトルとしても良い。
【００３８】
重み付け加算参照ベクトル：WSRMV=w1×RMV(ref_idx_f)+w2×MV(ref_idx_b)
重み付け加算フレーム間距離：WSRFD= w1×RFD1+ w2×RFD2  
ここで、w1，w2は重み係数であり、これらは、あらかじめ定められた定数としてもよいし、サイド情報として符号化しても良い。計算された重み付け加算参照ベクトルWSRMVをそのまま予測ベクトルとして用いても良いし、以下のように予測ベクトルを計算しても良い。
【００３９】
MV(ref_idx_f)=S1*WSRMV  ，S1=FD1/WSRFD  
MV(ref_idx_b)=S2*WSRMV  ，S2=FD2/WSRFD
あるいは、以下のように、符号化対象フレームと参照フレームとのフレーム間距離をもとに重み付け加算を行い、計算されたベクトルWSRMVを予測ベクトルとして用いても良い。  
WSRMV=w1×RMV(ref_idx_f)+w2×MV(ref_idx_b)  
w1=FD1/(FD1+FD2), w2=FD1/(FD1+FD2)
＜フレーム間距離及びスケーリングファクタについて＞  
図３〜図６の例において、フレーム間距離FD1，FD2及びRFD1，RFD2は、別途示される各フレームの時間的位置から計算してもよい。例えば、rf2，rf1，rf0，current，rb1の各フレームの時間位置をそれぞれTRf2，TRf1，TRf0，TRc，TRb1とすれば、  
FD1=TRc-TRf0，FD2=TRf2，RFD1=TRb0-TRf1，RFD2=TRb0-TRf0  
として計算される。あるいは、フレーム間距離を明示的に符号化してもよい。  
さらに、スケーリングファクタS1，S2を直接符号化してもよいし、スケーリングファクタS1，S2と符号化済みフレームで用いられたスケーリングファクタとの差分を符号化してもよい。
【００４０】
これらのフレームの時間位置（TRf2，TRf1，TRf0，TRc，TRb1）、フレーム間距離（FD1，FD2，RFD1，RFD2）及びスケーリングファクタS1，S2を符号化する際、マクロブロック毎に符号化するのではなく、ピクチャ毎、フレーム毎あるいはフィールド毎、複数のピクチャ毎、あるいはスライス毎といった、まとまった所定の単位毎に符号化するようにしてもよい。また、動画像符号化の最初に示される符号化モード等を示す情報と共に符号化してもよい。さらに、伝送レイヤやファイルフォーマットなど他の手段で伝えられる各フレームの時間情報を基に、フレームの時間位置やフレーム間距離を求め、スケーリングに用いてもよい。
【００４１】
図３〜図６の例のように、多くの参照フレームの候補の中から符号化に用いる参照フレームを選択する場合には、これら全ての参照フレームの候補について同一のフレーム間距離あるいはスケーリングファクタを用いても良い、あるいは、参照フレームそれぞれについて別々に符号化してもよい。また参照フレームの候補の中からいくつかを選択し、これらの情報を符号化してもよい。この場合、上述のように、ピクチャ毎、フレーム毎あるいはフィールド毎、複数のピクチャ毎、あるいはスライス毎といった、まとまった所定の単位毎に符号化を行うことにより、符号量を削減できる。
【００４２】
＜双方予測の動きベクトルについて＞  
図３〜図６では、参照マクロブロックcoＭＢ及び現マクロブロックcurMBの両者に対して、２枚の参照フレームが時間的に過去にある例を示したが、以下のようにすることにより、参照フレームが時間的に未来にある場合や、過去と未来両方にある場合（双方向予測）にも対応可能である。  
（ａ）フレーム間距離FD1，FD2，RFD1，RFD2を符号化し、これらの正負により参照フレームが時間的に過去・未来どちらにあるかを区別する。
【００４３】
（ｂ）スケーリングファクタS1，S2を符号化し、これらの正負により参照フレームが時間的に過去・未来どちらにあるかを区別する。
【００４４】
図８は、これらの動作を説明するための図である。図８の例では、符号化対象マクロブロックcurMBは双方向予測が用いられ、参照マクロブロックcoMBは過去２枚の参照フレームからの予測が用いられており、符号化対象マクロブロックcurMに対して参照フレームインデックスref_idx_fに対応する参照フレームrb0は、符号化対象フレームcurrentより時間的に未来にある。図３と同様、同様の参照フレームインデックスに対応する参照ベクトルをスケーリングする例について、この処理を説明する。
【００４５】
上記（ａ）の場合：参照フレームインデックスref_idx_fに対応する参照フレームrb0と符号化対象フレームcurrentとのフレーム間距離FD1に負の値を用いることにより、動きベクトルMV(ref_idx_f)＝FD1/RFD1*RMV(ref_idx_f)は、参照ベクトルRMV(ref_idx_f)と反対の方向を示すことになり、図８のように未来参照フレームからの予測に対応した予測ベクトルが求められる。
【００４６】
上記（ｂ）の場合：スケーリングファクタS1を負の値にすれば、動きベクトルMV(ref_idx_f)＝S1*RMV(ref_idx_f)はRMV(ref_idx_f)と反対の方向を示すことになり、図８のように未来の参照フレームからの予測に対応した予測ベクトルが求められる。
【００４７】
＜動き量補償ファクタをスケーリングに用いる例＞  
上述の例では、予測ベクトルを生成する際の参照ベクトルのスケーリングに、フレームの時間位置やフレーム間距離（時間距離）を用いたが、フレーム間の動き量に関わる情報（動き補償ファクタ）を用いて参照ベクトルをスケーリングすることで予測ベクトルを生成してもよい。図７は、このような例を説明する図である。
【００４８】
図７（ａ）には、符号化対象フレームcurrentと参照フレームrf，rbでの物体位置を実線円で示している。各フレームの下には、そのフレームの時刻（ディスプレイ時刻）を示している。実線円で示される物体はフレーム内左上から右下に動いており、その動きは非等速運動、すなわち、動き量が時間に比例しないものであるとする。
【００４９】
図７（ｂ）は、図７（ａ）中に示される各フレームの時刻で与えられるフレーム間の時間間隔に基づいて参照ベクトルをスケーリングする例を示したものである。図７（ｂ）において、符号Ｃ，Ｆ，Ｂはそれぞれ符号化対象フレームcurrent、参照フレームrf、参照フレームrbにおける物体位置を示している。符号化対象フレームの動きベクトルMVは、参照フレームrbを符号化した際に参照rfからの予測に用いた参照ベクトルRMVを上記時間間隔に基づいてスケーリングすることにより予測ベクトルとして求められる。図７（ａ）の例では、符号化対象フレームcurrentの時刻は200msec、参照フレームのrf及びrbの時刻はそれぞれ100msec及び300msecであるため、MVはRMVから以下のように計算される。  
MV=RMV*(300-100)/200=RMV/2
図７（ｂ）において、符号Ｒは動きベクトルを時間間隔に基づいてスケーリングして求めた物体位置を示している。図７（ａ）に示したように、物体の動きは非等速運動をしているため、動き補償予測された物体Ｒは、実際の物体Ｃと位置がずれており、正確な動き補償予測を行うことができない。
【００５０】
図７（ｃ）は、フレーム間の動き量を考慮した情報を用いて動きベクトルのスケーリングを行った例である。符号Ｃ，Ｆ，Ｂ，Ｒの意味は図７（ｂ）と同じである。図７（ｂ）と同様、参照フレームrbの符号化時に参照フレームrfからの予測に用いた動きベクトルRMVを参照ベクトルとしてスケーリングすることにより、符号化対象フレームcurrentの符号化時に参照フレームrfからの動きベクトルMVを予測ベクトルとして生成する。この場合、動き量に応じてスケーリングを行うことで、より正確な予測ベクトルを求めることができる。
【００５１】
ここで、フレーム間の動き量に関わる情報については、これを直接符号化してもよいし、フレーム毎に動き位置情報を符号化してもよい。さらに、フレーム毎の動き位置と規則的に決められた基準の動き位置各フレームの差分を符号化しても良い。以下、これらの処理を説明する。
【００５２】
（ａ）フレーム間の動き量に関わる情報を直接符号化する：  
符号化すべきフレーム間の動き量に関わる情報は、以下の通りである。  
MFcf：フレームrfからフレームcurrentへの動き量  
MFbf：フレームrfからフレームrbへの動き量  
動きベクトルMVは、参照ベクトルRMVから以下の計算により予測ベクトルとして用いられる。  
MV=RMV*MFcf/MFbf
あるいは、フレームの時刻を基に動き量情報を決定してもよい。この場合、スケーリングにより生成されるベクトルの精度は落ちるが、動き量を求める必要がないため処理が簡略化される。フレームrf，current，rbの時刻をそれぞれTRf，TRc，TRbとすれば、以下のように設定してもよい。  
MFcf=a*(TRc-TRf)，MFcf=a*(TRb-TRf)  
ここで、aは定数である。a=1とすれば、以下のように動き量情報はフレーム間隔と同一になる。  
MFcf=TRc-TRf，MFcf=TRb-TRf
同様に、フレーム間距離から動き量情報を決定してもよい。符号化対象フレームcurrentとフレームrfの時間距離をFDcf、フレームbとフレームf間の時間距離をFDbfとすれば、動き量情報を以下のように計算する。  
MFcf=a*FDcf，MFcf=a*FDbf
フレームrbはフレームrfを参照フレームとして既に符号化されているため、フレームrfからフレームrbへの動き量MFbfはフレームrb符号化の際に符号化された値を使ってもよい。これにより、符号化対象フレームで動き量MFbfを符号化する必要が無くなり、符号量が削減される。
【００５３】
参照フレーム（あるいはその候補）が１枚ではなく複数ある場合には、そのそれぞれ、あるいは、いくつか選択された参照フレームに対応するフレーム間動き量を符号化してもよい。
【００５４】
（ｂ）フレーム毎に動き位置情報を符号化する：  
各フレームで、物体の動き位置に相当する情報（これを動き位置情報という）を符号化する。すなわち、フレームrf，rb，currentを符号化する際に、それぞれ動き位置情報MTf，MTb，MTcを符号化する。動きベクトルMVは、参照ベクトルから以下の計算により予測ベクトルとして生成される。  
MV=RMV*(MTf-MTc)/(MTf-MTb)  
ここで、MTf，MTb，MTcは、各フレーム符号化時に、参照フレームからの動き量を求めて、下式のように設定してもよい。  
MTc=MTf+MFcf  
MTb=MTf+MFrb  
ここで、  
MFcf：フレームrfからフレームcurrentへの動き量  
MFbf：フレームrfからフレームrbへの動き量  
である。
【００５５】
符号化する動き位置情報に対して、ディスプレイ時間が後方（未来）にあるフレームの動き位置情報は、前方（過去）にあるフレームの動き位置情報より小さくする、という制約条件をつけてもよい。図７（ａ）の例では、フレームrf，rb，currentのディスプレイ時刻の位置関係から、各フレームrf，rb，currentのディスプレイ時刻TRf，TRb，TRcには、次式の関係が成り立つ。  
TRf<TRc<TRb  
この場合、各フレームの動き位置情報には以下の制約を課すことになる。  
MTf<MTc<MTb  
このような条件をつけることにより、スケーリングのための動き情報だけでなく、動き位置情報の大小関係から符号化対象フレームの（ディスプレイ時間の）時間的前後関係を表すこともできるようになる。あるいは、フレームの時刻を基に動き位置情報を決定してもよい。この場合、動き量を基に動き位置情報を決定する場合に比べスケーリングされた動きベクトルの精度は落ちるが、動き量を求める必要がないため処理が簡略化される。フレームrf，current，rbの時刻をそれぞれTRf，TRc，TRbとすれば、以下のように設定してもよい。  
MTf=a*TRf  
MTc=a*TRc  
MTb=a*TRb  
ここで、aは定数であり、例えばa=1とすれば以下のように動き位置情報は各フレームの時刻と同一になる。  
MTf=TRf，MTc=TRc，MTb=TRb  
あるいは、各フレームの時刻を動き位置により補正した情報を用いてもよい。
【００５６】
（ｃ）規則的に決められた基準の動き位置との差分を符号化する：  
各フレームの動き位置は、フレームのディスプレイ時刻との相関が強い。このため、ディスプレイ時間から動き位置を予測して、それを基準の動き位置とし、その予測残差（各フレームの動き位置と基準の動き位置との差分）を符号化してもよい。具体的には、フレームrf，rb，currentの動き情報をそれぞれMTf，MTb，MTcとし、ディスプレイ時間をTRf，TRb，TRcとすると、以下の残差情報DMTf，DMTb，DMTcを符号化する。  
DMTf=MTf-r*TRf  
DMTb=MTb-r*TRb  
DMTc=MTc-r*TRc  
ここで、ｒは予め定められた定数である。
【００５７】
動きベクトルMVは、参照ベクトルから以下の計算により予測ベクトルとして生成される。  
MV=RMV*((DMTf+r*TRf)-(DMTc+r*TRc))/((DMTf+r*TRf)-(DMTb+r*TRb))
時間情報としては、伝送路やシステムなど他の手段で得られた時間情報や、予め定められた規則に従い計算された時間情報を用いてもよい。あるいは、フレーム間の動き量情報をディスプレイ時刻の間隔から予測し、その予測残差を符号化してもよい。
【００５８】
＜スケーリング禁止モードについて＞  
上述のように、参照マクロブロックcoMBの動きベクトルをスケーリングして符号化対象マクロブロックcurMBの動きベクトルの予測ベクトルに用いると、動きベクトルの符号量は削減される反面、符号化済みフレームの動きベクトルを記憶しておく必要があり、必要な記憶メモリ容量が増加する。特に、符号化済みマクロブロックにおいて、双方動き補償や過去あるいは未来複数の動きベクトルを用いて動き補償を行った場合には、これら複数の動きベクトルを記憶しておく必要がある。
【００５９】
このため、符号化済みマクロブロックにおいて、例えば２本以上など、予め定められた数以上の動きベクトルを用いる符号化モードが選択されていた場合には、このようなスケーリングを禁止してもよい。これにより常にスケーリングを行って予測ベクトルを生成する場合に比較して、符号化効率は低下するものの、記憶メモリ容量の増加を防ぐことができる。
【００６０】
［II］符号化対象フレーム内の符号化対象ブロックの周囲の符号化済みマクロブロックの動きベクトルを参照ベクトルとする動きベクトルの予測符号化方法について：  
上述した［Ｉ］の予測符号化方法では、符号化済みフレームの動きベクトルを参照ベクトルとして動きベクトルを予測符号化したが、符号化対象フレーム内で既に符号化されたマクロブロックで用いられた動きベクトルを参照ベクトルとして用いて予測ベクトルを生成してもよい。
【００６１】
この場合においても、参照ベクトルと予測ベクトルとの差分ベクトルを符号化することにより、動きベクトルに関する符号量を削減してもよいし、予測ベクトルをそのまま用いることにより、動きベクトルの符号化を省略し、さらに動きベクトルに関する符号量を削減するようにしてもよい。前述したように、差分ベクトルを符号化したデータ（第４のデータ）を図１に示した動画像符号化装置から出力される符号化データ１０６に含ませる場合には、図２に示した動画像復号化装置において入力される符号化データ２００から可変長復号化器２１４を介してサイドデータ２０２の一部として差分ベクトルのデータを復号化し、差分ベクトルを予測ベクトルに加算した動きベクトルを用いて動き補償予測を行う。以下、図９〜図１１を用いて説明する。
【００６２】
図９は、このように符号化対象ブロックの周囲の符号化済みマクロブロックの動きベクトルを参照ベクトルとして符号化対象マクロブロックの動きベクトルを予測する第１の例を説明する図である。図９中、currentは符号化対象フレーム、rf0，rf1及びrf2は参照フレーム、Ｅは符号化対象マクロブロックである。MV(ref_idx_f)及びMV(ref_idx_b)は、それぞれ参照フレームインデックスref_idx_f及びref_idx_bで指し示される参照フレームrf0及びrf1からの符号化対象マクロブロックＥの動きベクトルであり、予測符号化されるべき符号化対象ベクトルである。Ａ，Ｂ，Ｃ，Ｄは、符号化対象マクロブロックＥの周囲にある符号化済みマクロブロックである。図１０は、各マクロブロックＡ，Ｂ，Ｃ，Ｄ，Ｅの空間的位置関係を示したものである。
【００６３】
符号化対象マクロブロックＥの周囲の符号化済みマクロブロックＡ，Ｂ，Ｃ，Ｄが動き補償予測を用いて符号化された場合には、これらの各マクロブロックＡ，Ｂ，Ｃ，Ｄの動きベクトルを参照ベクトルとして用いて符号化対象マクロブロックＥの動きベクトルを予測して予測ベクトルを生成する。予測ベクトルには、例えば符号化済みマクロブロックＡ，Ｂ，Ｃ，Ｄの動きベクトル（参照ベクトル）の平均値を用いてもよいし、中央値を予測ベクトルとしてもよい。
【００６４】
符号化対象マクロブロックＥに対する２本の動きベクトルMV(ref_idx_f)及びMV(ref_idx_b)は、それぞれ符号化済みマクロブロックＡ，Ｂ，Ｃ，Ｄの同じ参照フレームインデックスref_idx_f及びref_idx_bに対応する参照ベクトル（参照フレームインデックスref_idx_f及びref_idx_bで指し示される参照フレームからの動きベクトル）を用いて予測される。
【００６５】
図９の例では、マクロブロックＡは１本の参照ベクトルRAMV(ref_idx_f)を用いて符号化され、マクロブロックＣは２本の参照ベクトルRCMV(ref_idx_f)及びRCMV(ref_idx_b)を用いて符号化され、マクロブロックＢ及びＤは動きベクトルを用いない符号化モード（例えばフレーム内符号化モード）により符号化されている。ここで、参照フレームインデックスref_idx_fに対応する参照ベクトルはRAMV(ref_idx_f)及びRCMV(ref_idx_f)であるから、これら２本の参照ベクトルを用いて動きベクトルMV(ref_idx_f)の予測を行う。一方、参照フレームインデックスref_idx_bに対応する参照ベクトルはRCMV(ref_idx_b)だけであるから、この１本の参照ベクトルを用いて動きベクトルMV(ref_idx_b)を予測する。
【００６６】
図１１は、符号化対象マクロブロックの周囲の符号化済みマクロブロックの動きベクトルを用いて符号化対象マクロブロックの動きベクトルの予測を行う第２の例を示している。この例では、時間的に過去のフレームだけでなく、未来のフレームも用いる双方向動き補償が用いられている。図中、MV(ref_idx_b)及びRCMV(ref_idx_b)は、未来のフレームrf0からの動きベクトルである。
【００６７】
このように双方向動き補償を用いる場合でも、参照フレームが時間的に過去か未来かに関係なく、図９と同様、参照フレームインデックスの対応付けにより動きベクトルの予測を行う。すなわち、動きベクトルMV(ref_idx_f)は周囲の符号化済みマクロブロックの参照フレームインデックスref_idx_fに対応する動きベクトル（図中RAMV(ref_idx_f)及びRCMV(ref_idx_f)）から予測を行い、動きベクトルMV(ref_idx_b)は周囲マクロブロックのref_idx_bに対応する動きベクトル（図中RCMV(ref_idx_b)）から予測を行う。
【００６８】
このような動きベクトルの予測を行うと、参照フレームが符号化対象フレームより時間的に過去か未来かを判定する必要がなく、処理が簡略化される。また、各フレームの時間的位置関係を示す情報が符号化されず、伝送レイヤやファイルフォーマットなど他の手段からもこの情報を得ることが困難な場合にも、参照フレームが過去か未来かの判定を必要とすることなく、動きベクトルの予測を行うことが可能である。
【００６９】
図９及び図１１の例において、符号化対象マクロブロックの周囲の符号化済みマクロブロックがフレーム内符号化されていたり、空間的にフレーム外に位置するなどして、対応する参照ベクトルが存在しなければ、例えばそれをゼロベクトルとして予測ベクトルを生成してもよいし、代わりに隣接する他のマクロブロックの動きベクトルを用いてもよい。
【００７０】
また、図９及び図１１の例において、隣接する複数のマクロブロックの参照ベクトルのうち、参照フレームインデックスで示される値や、対応する参照フレームによって、参照ベクトルを選別し、予測動きベクトルを生成しても良い。例えば、予測符号化する動きベクトルと同じ参照フレームを動き補償予測に用いている参照ベクトルのみを動きベクトルの予測に用いてもよい。あるいは、対応する参照フレームインデックス（ref_idx_f及びrer_idx_bで示される）の値が同じ参照ベクトルのみを動きベクトルの予測に用いてもよい。あるいは、参照動きベクトルに対応する参照フレームインデックスがある特定の値（例えばインデックス値＝０など）であった場合のみ予測に用いても良い。逆に、参照フレームインデックスがある特定の値であった場合には予測に用いないようにしても良い。あるいは、参照動きベクトルに対応する参照フレームが、直前に符号化したフレーム、時間的に未来のフレーム、時間的に１枚前のフレームなど、特定のものの場合のみ予測に用いる、あるいは逆に予測に用いないなどしても良い。
【００７１】
図１１を例としてこれを説明する。符号化する動きベクトル及び参照ベクトルと参照フレームとの対応関係は、表３の通りである。
【表３】
2006304350.tif 000005
【００７２】
表３によると、動きベクトルMV(ref_idx_f)と同じ参照フレームインデックス(ref_idx_f)が用いられ、かつ同じ参照フレーム(rf0)が用いられた参照ベクトルはRCMV(ref_idx_f)であるから、動きベクトルMV(ref_idx_f)はRCMV(ref_idx_f)を用いて予測符号化される。また、動きベクトルMV(ref_idx_b)と同じ参照フレームインデックス(ref_idx_b)が用いられ、かつ同じ参照フレーム(rb0)が用いられた参照ベクトルはRCMV(ref_idx_b)であるから、動きベクトルMV(ref_idx_b)はRCMV(ref_idx_b)を用いて予測符号化される。
【００７３】
図９及び図１１において、符号化対象マクロブロックの周囲の符号化済みマクロブロックの参照ベクトルを例えば参照フレームからの時間距離などに応じてスケーリングし、予測ベクトルに用いてもよい。図９の例では、符号化対象マクロブロックの動きベクトルMV(ref_idx_f)は、１フレーム前の参照画像rf0からの予測であるのに対し、マクロブロックＡの動きベクトルRAMV(ref_idx_f)は３フレーム前の参照フレームrf2からの予測であり、マクロブロックＣの動きベクトルRCMV(ref_idx_f)は２フレーム前の参照フレームrf2からの予測である。
【００７４】
このように、符号化対象フレームと周囲マクロブロックで動き補償予測に用いられた参照フレームが異なる場合には、動きベクトルのスケーリングの効果がある。この動きベクトルのスケーリングに際しては、スケーリングファクタを明示的に符号化してもよいし、参照フレームとの時間距離を示す情報を符号化し、これを基に計算してもよいし、あるいは、別途与えられる各フレームの時間位置を示す情報を基に計算してもよい。図９を例にこの処理を説明すると、以下のようになる。
【００７５】
（１）スケーリングファクタを符号化する場合：  
（ステップＳ１１）RAMV(ref_idx_f)及びRCMV(ref_idx_f)からのスケーリングファクタSAf及びSCfを明示的に符号化する  
（ステップＳ１２）参照ベクトルを以下のようにスケーリングする：  
RAMV(ref_idx_f)*SAf  
RCMV(ref_idx_f)*SCf  
（ステップＳ１３）これらのスケーリングされた動きベクトルを基に予測ベクトルを求める。
【００７６】
（２）参照フレームとの時間距離を符号化する場合：  
（ステップＳ２１）MV(ref_idx_f)，RAMV(ref_idx_f)及びRCMV(ref_idx_f)に対応する参照フレームrf0，rf2及びrf0と符号化対象フレームcurrentとのフレーム間距離FDf0，FDf2及びFDf2を符号化する。  
（ステップＳ２２）参照ベクトルを以下のようにフレーム間距離に応じてスケーリングする：  
RAMV(ref_idx_f)*FDf2/FDf0  
RCMV(ref_idx_f)*FDf1/FDf0  
（ステップＳ２３）これらのスケーリングされた動きベクトルを基に予測ベクトルを求める。
【００７７】
（３）各フレームの時間位置からスケーリングファクタを用いる場合：  
（ステップＳ３１）フレームcurrent，rf0，rf1，rf2の時間位置をそれぞれTRc，TRf0，TRf1，TRf2とする。  
（ステップＳ３２）参照ベクトルを時間位置から計算されるフレーム間距離に応じて以下のようにスケーリングする：  
RAMV(ref_idx_f)*(TRc-TRf2)/(TRc-TRf0)  
RCMV(ref_idx_f)*(TRc-TRf1)/(TRc-TRf0)  
（ステップＳ３３）これらのスケーリングされた動きベクトルを基に予測ベクトルを求める。
【００７８】
上記処理において、スケーリングファクタSAf，SCf、フレーム間距離FDf0，FDf2，FDf2、及び時間位置TRc，TRf0，TRf1，TRf2については、各マクロブロック毎に符号化してもよいが、例えばフレーム毎、スライス毎など、まとまった符号化単位毎に符号化することによって、より情報量を削減するようにしてもよい。
【図面の簡単な説明】
【００７９】
【図１】本発明の一実施形態に係る動画像符号化装置の構成を示すブロック図。
【図２】同実施形態に係る動画像復号化装置の構成を示すブロック図
【図３】同実施形態における動きベクトルの予測符号化方法の第１の例を示す図
【図４】同実施形態における動きベクトルの予測符号化方法の第２の例を示す図
【図５】同実施形態における動きベクトルの予測符号化方法の第３の例を示す図
【図６】同実施形態における動きベクトルの予測符号化方法の第４の例を示す図
【図７】同実施形態におけるフレーム間の動き量を符号化する方法を説明する図
【図８】同実施形態における動きベクトルの予測符号化方法の第５の例を示す図
【図９】同実施形態における動きベクトルの予測符号化方法の第６の例を示す図
【図１０】符号化対象のマクロブロックと周囲のマクロブロックの位置関係を説明する図
【図１１】同実施形態における動きベクトルの予測符号化方法の第７の例を示す図
【符号の説明】
【００８０】
１１１，２１１…動き補償予測器
１１２…離散コサイン変換器
１１３…量子化器
１１４…可変長符号化器
２１４…可変長符号復号化器
１１５、２１５…逆量子化器
１１６、２１６…逆離散コサイン変換器
１１８、２１８…参照フレームメモリセット
ｃｕｒｒｅｎｔ…符号化対象フレーム
ｒｆ…参照フレーム
ｃｕｒＭＢ…符号化対象マクロブロック
ｃｏＭＢ…参照マクロブロック
ＭＶ…符号化対象動きベクトル（予測ベクトル）
ＲＭＶ，ＲＡＭＶ，ＲＣＭＶ…参照ベクトル
Ｅ…符号化対象マクロブロック
Ａ，Ｂ，Ｃ，Ｄ…周囲の符号化済みマクロブロック
【図１】
2006304350.tif 000006
【図２】
2006304350.tif 000007
【図３】
2006304350.tif 000008
【図４】
2006304350.tif 000009
【図５】
2006304350.tif 000010
【図６】
2006304350.tif 000011
【図７】
2006304350.tif 000012
【図８】
2006304350.tif 000013
【図９】
2006304350.tif 000014
【図１０】
2006304350.tif 000015
【図１１】
2006304350.tif 000016