(57)【特許請求の範囲】
【請求項１】
２つのリファイン手段に継承動きベクトルがそれぞれ入力されるかを検出する検出手段と、
前記２つのリファイン手段のいずれか一方に前記継承動きベクトルが入力されない場合、所定の選択方法に従って補填動きベクトル選択する補填ベクトル選択手段と、
前記２つのリファイン手段のうち前記継承動きベクトルが入力されないリファイン手段に、選択した前記補填動きベクトルを送信する送信手段と、
を備え、
前記２つのリファイン手段は、それぞれ、入力された前記継承動きベクトル又は前記補填動きベクトルを基準として、符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルを検出する
映像符号化装置。
【請求項２】
前記補填ベクトル選択手段は、前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルのいずれか、前記補填動きベクトルとして選択する
請求項１に記載の映像符号化装置。
【請求項３】
前記補填ベクトル選択手段は、前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルに加えて、前記符号化対象映像における前記ピクチャの直前ピクチャの時間予測動きベクトルと、ゼロベクトルとのいずれかを、前記補填動きベクトルとして選択する
請求項２に記載の映像符号化装置。
【請求項４】
複数の前記選択方法のいずれかを示す補填モードを受信する受信手段をさらに備え、
前記補填ベクトル選択手段は、前記補填モードが示す前記選択方法に従って前記補填動きベクトルを選択する
請求項１乃至３のいずれか１項に記載の映像符号化装置。
【請求項５】
前記２つのリファイン手段の一方に前記継承動きベクトルが入力され前記２つのリファイン手段の他方に前記補填動きベクトルが入力された場合、前記２つのリファイン手段のうち前記継承動きベクトルが入力されたリファイン手段は、受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲において符号化対象ブロックを最もよく予測する、第１の予測画像を検出し、前記２つのリファイン手段のうち前記補填動きベクトルが入力されたリファイン手段は、当該補填動きベクトルに基づく第２の参照画像の探索範囲において前記符号化対象ブロックを最もよく予測する、第２の予測画像を検出し、
前記映像符号化装置は、
前記２つのリファイン手段と、
前記第１の予測画像及び前記第２の予測画像から、１つの予測画像を選択する予測選択手段と、
をさらに備える請求項１乃至４のいずれか１項に記載の映像符号化装置。
【請求項６】
受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲における領域と、前記補填動きベクトルに基づく第２の参照画像の探索範囲における領域との平均画像のうち、前記符号化対象ブロックを最もよく予測する前記平均画像を、第３の予測画像として検出する双予測生成手段を備え、
前記予測選択手段は、前記第１の予測画像、前記第２の予測画像及び前記第３の予測画像から、１つの予測画像を選択する
請求項５に記載の映像符号化装置。
【請求項７】
２つのリファイン手段に継承動きベクトルがそれぞれ入力されるかを検出し、
前記２つのリファイン手段のいずれか一方に前記継承動きベクトルが入力されない場合、所定の選択方法に従って補填動きベクトル選択し、
前記２つのリファイン手段のうち前記継承動きベクトルが入力されないリファイン手段に、前記リファイン手段に、選択した前記補填動きベクトルを送信し、
前記２つのリファイン手段 は、それぞれ、入力され前記継承動きベクトル又は前記補填動きベクトルを基準として、符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルを検出する
映像符号化方法。
【請求項８】
前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルのいずれか、前記補填動きベクトルとして選択する
請求項７に記載の映像符号化方法。
【請求項９】
前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルに加えて、前記符号化対象映像における前記ピクチャの直前ピクチャの時間予測動きベクトルと、ゼロベクトルとのいずれかを、前記補填動きベクトルとして選択する
請求項８に記載の映像符号化方法。
【請求項１０】
コンピュータに、
２つのリファイン手段に継承動きベクトルがそれぞれ入力されるかを検出する検出処理と、
前記２つのリファイン手段のいずれか一方に前記継承動きベクトルが入力されない場合、所定の選択方法に従って補填動きベクトル選択する補填ベクトル選択処理と、
前記２つのリファイン手段のうち前記継承動きベクトルを受信しないリファイン手段に、選択した前記補填動きベクトルを送信する送信処理と、
を実行させ、
前記２つのリファイン手段 は、それぞれ、入力された前記継承動きベクトル又は前記補填動きベクトルを基準として、符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルを検出する
映像符号化プログラム。
【請求項１１】
前記補填ベクトル選択処理は、前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルのいずれか、前記補填動きベクトルとして選択する
請求項１０に記載の映像符号化プログラム。
【請求項１２】
前記補填ベクトル選択処理は、前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルに加えて、前記符号化対象映像における前記ピクチャの直前ピクチャの時間予測動きベクトルと、ゼロベクトルとのいずれかを、前記補填動きベクトルとして選択する
請求項１１に記載の映像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像を符号化する技術に関する。
【背景技術】
【０００２】
特許文献１及び２には、ビデオをコード化する技術の一例が記載されている。特許文献１に記載されているビデオコード化装置は、２つの参照ピクチャに関する双方向予測、及び、１つの参照ピクチャに関する単方向予測のうちの１つを使用して、ビデオブロックをコード化する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１４−５０６０８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の技術では、参照ピクチャが１つである場合、単方向予測のみが使用される。そのため、必ずしも精度よく予測を行えるとは限らない。
【０００５】
本発明の目的の１つは、参照ピクチャが１つである場合であっても、予測の精度を向上させることができる映像符号化装置などを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る映像符号化装置は、符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルの探索の基準としてリファイン手段が受信する継承動きベクトルの数が、１つであるか又は２つであるかを検出する検出手段と、前記継承動きベクトルの数が１つである場合、所定の選択方法に従って補填動きベクトル選択する補填ベクトル選択手段と、前記継承動きベクトルと受信した前記補填ベクトルとに基づいて、処理対象ブロックの予測動きベクトルを検出する前記リファイン手段に、選択した前記補填動きベクトルを送信する送信手段と、を備える。
【０００７】
本発明の一態様に係る映像符号化方法は、符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルの探索の基準としてリファイン手段が受信する継承動きベクトルの数が、１つであるか又は２つであるかを検出し、前記継承動きベクトルの数が１つである場合、所定の選択方法に従って補填動きベクトル選択し、前記継承動きベクトルと受信した前記補填ベクトルとに基づいて、処理対象ブロックの予測動きベクトルを検出する前記リファイン手段に、選択した前記補填動きベクトルを送信する。
【０００８】
本発明の一態様に係る映像符号化プログラムは、コンピュータを、符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルの探索の基準としてリファイン手段が受信する継承動きベクトルの数が、１つであるか又は２つであるかを検出する検出手段と、前記継承動きベクトルの数が１つである場合、所定の選択方法に従って補填動きベクトル選択する補填ベクトル選択手段と、前記継承動きベクトルと受信した前記補填ベクトルとに基づいて、処理対象ブロックの予測動きベクトルを検出する前記リファイン手段に、選択した前記補填動きベクトルを送信する送信手段と、して動作させる。
【発明の効果】
【０００９】
本発明には、参照ピクチャが１つである場合であっても、予測の精度を向上させることができるという効果がある。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の第１の実施形態の映像符号化装置１の全体像を表すブロック図である。
【図２】図２は、本発明の第１の実施形態の映像符号化装置１全体の実装例を表すブロック図である。
【図３】図３は、本発明の第１の実施形態の映像符号化装置１の動き補償部１００の構成の例を表すブロック図である。
【図４】図４は、本発明の第１の実施形態の映像符号化装置１の動き補償部１００の実装例である、動き補償回路２００の構成の例を表すブロック図である。
【図５】図５は、ＡＭＶＰ生成回路２６０によって動きベクトルが選択されるブロックの位置を模式的に表す図である。
【図６】図６は、本発明の第１の実施形態の動きベクトル補填部１０の構成の例を表すブロック図である。
【図７】図７は、本発明の第１の実施形態の動きベクトル補填部１０の実装例である動きベクトル補填回路２１０の構成の例を表すブロック図である。
【図８】図８は、本発明の第１の実施形態の映像符号化装置１の、符号化対象画像の予測画像を生成する動作の例を表すフローチャートである。
【図９】図９は、本発明の第１の実施形態の映像符号化装置１の、動きベクトル補填処理の動作の例を表すフローチャートである。
【図１０】図１０は、本発明の第２の実施形態の映像符号化装置１Ａの構成の例を表すブロック図である。
【図１１】図１１は、本発明の各実施形態に係る映像符号化装置を実現することができる、コンピュータ１０００のハードウェア構成の一例を表す図である。
【図１２】図１２は、本発明の比較例の映像符号化装置１Ｃの全体像の例を表すブロック図である。
【図１３】図１３は、本発明の比較例の動き補償回路３００の構成の例を表すブロック図である。
【発明を実施するための形態】
【００１１】
次に、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１２】
＜比較例＞
まず、本発明の実施の形態と比較する対象としての比較例について、図面を参照して詳細に説明する。
【００１３】
図１２は、本発明の比較例の映像符号化装置１Ｃの全体像の例を表すブロック図である。映像符号化装置１Ｃは、受信した映像を符号化する装置である。具体的には、映像符号化装置１Ｃは、映像を受信し、受信した映像を、例えば、いずれかの符号化の方式に従って符号化する。そして、映像符号化装置１Ｃは、映像が符号化されたビットストリームを出力する装置である。符号化の方式は、例えば、Ｈ．２６５／ＨＥＶＣ（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）である。符号化の方式は、例えば、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ））であってもよい。以下では、符号化の方式がＨ．２６５／ＨＥＶＣである場合について説明する。
【００１４】
図１２を参照すると、映像符号化装置１Ｃは、ブロック分割回路２０１と、事前解析回路２０２と、動き補償回路３００と、イントラ予測回路２０３と、切替回路２０４と、整数変換回路２０５と、量子化回路２０６と、逆量子化回路２０７と、逆変換回路２０８と、符号化回路２０９とを含む。映像符号化装置１Ｃは、さらに、フィルタ回路２１６と、フレームバッファ２１７と、減算回路２１８と、加算回路２１９とを含む。
【００１５】
ブロック分割回路２０１は、デジタル化された映像のピクチャをブロックに分割する。イントラ予測回路２０３は、イントラ予測を行う。切替回路２０４は、後述される動き補償回路３００からの出力と、イントラ予測回路２０３からの出力とを切り替える。減算回路２１８は、入力された映像と、切替回路２０４による切替によって選択された、動き補償回路３００からの出力又はイントラ予測回路２０３からの出力との差分を計算する。整数変換回路２０５は、整数変換を行う。量子化回路２０６は、量子化を行う。符号化回路２０９は、符号化を行い、符号化によって得られるビットストリームを出力する。逆量子化回路２０７は、逆量子化を行う。逆整数変換回路２０８は、逆整数変換を行う。加算回路２１９は、逆整数変換回路２０８の出力と、切替回路２０４による切替によって選択された、動き補償回路３００からの出力又はイントラ予測回路２０３からの出力とを加算する。フィルタ回路２１６は、デブロッキングフィルタなどによるフィルタリングを行う。フレームバッファ２１７は、符号化済みのピクチャを記憶する。以上の各要素は、上述の規格に応じた動作を行う。従って、以上の各要素についての詳細な説明を省略する。
【００１６】
事前解析回路２０２は、例えば、フレームバッファ２１７に格納されている符号化済みのピクチャを使用して、入力されたピクチャ（すなわち符号化対象ピクチャ）における動きベクトルを検出する。例えば、符号化対象ピクチャがＰピクチャである場合、事前解析回路２０２は、１つの動きベクトルを、動き補償回路３００に送信する。符号化対象ピクチャがＢピクチャである場合、事前解析回路２０２は、１つ又は２つの動きベクトルを、動き補償回路３００に送信する。符号化対象ピクチャがＢピクチャである場合、事前解析回路２０２は、例えば、２つの動きベクトルを導出する。事前解析回路２０２は、いずれかの動きベクトルが、所定の判定基準に基づいて最適であると判定した場合、最適であると判定された動きベクトルのみを、動き補償回路３００に送信してもよい。その場合、事前解析回路２０２は、１つの動きベクトルを、動き補償回路３００に送信する。事前解析回路２０２によって最適であると判定された動きベクトルが存在しない場合、事前解析回路２０２は、２つの動きベクトルを動き補償回路３００に送信する。
【００１７】
２つの動きベクトルに関する参照画像は、符号化対象画像より後のピクチャと前のピクチャの組み合わせであっても、符号化対象画像より前の２枚のピクチャの組み合わせであっても、符号化対象画像より後の２枚のピクチャの組み合わせであってもよい。以下の説明において、事前解析回路２０２から動き補償回路３００に送信される動きベクトルを、継承動きベクトルと表記する。
【００１８】
事前解析回路２０２と動き補償回路３００との間には、２つの継承動きベクトルを別々に送信できる、２つの信号線が設けられていてもよい。そして、２つの継承動きベクトルは、異なる信号線によって、動き補償回路３００に送信されてもよい。事前解析回路２０２は、１つの継承動きベクトルを動き補償回路３００に送信する場合、いずれか一方の信号線によって継承動きベクトルを送信すればよい。そして、事前解析回路２０２は、継承動きベクトルの送信に使用する信号線の系統を表す信号を、動き補償回路３００に送信してもよい。例えば、２つの信号線を、第１の信号線及び第２の信号線と表記する。以下の説明では、第１の信号線を介して送信される継承動きベクトルを、「ｍＭＶ０」と表記する。同様に、第２の信号線を介して送信される継承動きベクトルを「ｍＭＶ１」と表記する。
【００１９】
事前解析回路２０２は、例えば、ｍＭＶ０を送信し、ｍＭＶ１を送信しない場合、ｍＭＶ０を送信し、ｍＭＶ１を送信しないことを表す信号を、動き補償回路３００に送信する。事前解析回路２０２は、例えば、ｍＭＶ０を送信せず、ｍＭＶ１を送信する場合、ｍＭＶ０を送信せず、ｍＭＶ１を送信することを表す信号を、動き補償回路３００に送信する。事前解析回路２０２は、例えば、ｍＭＶ０とｍＭＶ１とを送信する場合、ｍＭＶ０とｍＭＶ１とを送信することを表す信号を、動き補償回路３００に送信する。以下の説明では、送信される継承動きベクトルを表す信号を、「ｍＤｉｒ」（または信号「ｍＤｉｒ」）と表記する。さらに、信号ｍＤｉｒを、「予測方向」とも表記する。本発明の各実施形態の説明では、信号ｍＤｉｒの、ｍＭＶ０を送信し、ｍＭＶ１を送信しないことを表す値を、「Ｌ０」とも表記する。信号ｍＤｉｒの、ｍＭＶ０を送信せず、ｍＭＶ１を送信することを表す値を、に「Ｌ１」とも表記する。さらに、信号ｍＤｉｒの、ｍＭＶ０とｍＭＶ１とを送信することを表す値を、「Ｂｉ」とも表記する。
【００２０】
一般に、Ｌ０及びＬ１は、それぞれ、Ｂピクチャにおける２つの参照画像リストを指す。上述の継承動きベクトルｍＭＶ０は、例えば、参照画像リストＬ０の参照画像における動きベクトルであってもよい。継承動きベクトルｍＭＶ１は、例えば、参照画像リストＬ１の参照画像における動きベクトルであってもよい。
【００２１】
図１３は、本比較例の動き補償回路３００の構成の例を表すブロック図である。
【００２２】
図１３を参照すると、本変形例の動き補償回路３００は、スイッチ回路２２０と、リファイン回路２３０と、双予測生成回路２４０と、予測選択回路２５０とを含む。スイッチ回路３２０は、第１スイッチ回路３２１と第２スイッチ回路３２２とを含む。リファイン回路２３０は、第１リファイン回路２３１と第２リファイン回路２３２とを含む。リファイン回路２３０は、図１３においては明示されていないが、図１２に示すように、フレームバッファ２１７に格納されている、符号化済みのピクチャを読み出すことができる。
【００２３】
第１スイッチ回路３２１の入力には、第１の信号線が接続される。そして、第１スイッチ回路３２１の入力には、第１の信号線を介してｍＭＶ０が入力される。第１スイッチ回路３２１の出力は、第１リファイン回路２３１に接続されている。第２スイッチ回路３２２の入力には、第２の信号線が接続される。そして、第２スイッチ回路３２２の入力には、第２の信号線を介してｍＭＶ１が入力される。第２スイッチ回路３２２の出力は、第２リファイン回路２３２に接続されている。第１スイッチ回路３２１及び第２スイッチ回路３２２には、信号ｍＤｉｒが入力される。
【００２４】
第１スイッチ回路３２１及び第２スイッチ回路３２２は、信号ｍＤｉｒの値に応じて、入力と出力との間が接続されている状態であるオン状態と、入力と接続との間が切断されている状態であるオフ状態との間で切り替わるよう設計されている。具体的には、ｍＤｉｒの値がＬ０である場合、第１スイッチ回路３２１は、オン状態になり、第２スイッチ回路３２２、オフ状態になる。ｍＤｉｒの値がＬ１である場合、第１スイッチ回路３２１は、オフ状態になり、第２スイッチ回路３２２、オン状態になる。ｍＤｉｒの値がＢｉである場合、第１スイッチ回路３２１及び第２スイッチ回路３２２は、共にオン状態になる。
【００２５】
第１リファイン回路２３１は、入力された動きベクトルｍＭＶ０によって参照される参照画像の、動きベクトルｍＭＶ０に基づく所定の範囲において、符号化対象ブロックの符号化コストが最小になる領域（すなわち予測画像）を示す点を検出する。符号化コストは、既存の符号化コストから選択された符号化コストであればよい。符号化コストは、例えば、符号化対象ブロックと予測画像との誤差の絶対値の和（ＳＡＤ；Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）と、動きベクトルの重み付きビット量との和であってもよい。動きベクトルｍＭＶ０に基づく所定の範囲は、例えば、動きベクトルｍＭＶ０が示す位置を中心とする所定半径の円の内部であってもよい。動きベクトルｍＭＶ０に基づく所定の範囲は、例えば、動きベクトルｍＭＶ０が示す位置を中心とする所定形状の図形の内部であってもよい。動きベクトルｍＭＶ０に基づく所定の範囲は、例えば、動きベクトルｍＭＶ０が参照する参照画像全体であってもよい。第１リファイン回路２３１は、符号化対象ブロックが含まれるピクチャにおける符号化対象ブロックの座標から、その符号化対象コストが最小になる領域を示す点の座標へのベクトルを、予測動きベクトルｒＭＶ０として検出する。第１リファイン回路２３１は、検出した符号化対象コストが最小になる領域の画像を、符号化対象領域の予測を表す予測信号「ｐｒｅｄ（ｒＭＶ０）」として、予測選択回路２５０に出力する。なお、第１リファイン回路２３１は、信号ｍＤｉｒがＬ１である場合、すなわち、継承動きベクトルｍＭＶ０が入力されない場合、動作しない。
【００２６】
第２リファイン回路２３２は、入力された動きベクトルｍＭＶ１によって参照される参照画像の、動きベクトルｍＭＶ１に基づく所定の範囲において、符号化対象ブロックの符号化コストが最小になる領域（すなわち予測画像）を示す点を検出する。動きベクトルｍＭＶ１に基づく所定の範囲は、例えば、動きベクトルｍＭＶ１が示す位置を中心とする所定半径の円の内部であってもよい。動きベクトルｍＭＶ１に基づく所定の範囲は、例えば、動きベクトルｍＭＶ１が示す位置を中心とする所定形状の図形の内部であってもよい。動きベクトルｍＭＶ１に基づく所定の範囲は、例えば、動きベクトルｍＭＶ１が参照する参照画像全体であってもよい。第２リファイン回路２３２は、符号化対象ブロックが含まれるピクチャにおける符号化対象ブロックの座標から、その符号化対象コストが最小になる領域を示す点の座標へのベクトルを、予測動きベクトルｒＭＶ１として検出する。第２リファイン回路２３２は、検出した符号化対象コストが最小になる領域の画像を、符号化対象領域の予測を表す予測信号「ｐｒｅｄ（ｒＭＶ１）」として、予測選択回路２５０に出力する。なお、第２リファイン回路２３２は、信号ｍＤｉｒがＬ２である場合、すなわち、継承動きベクトルｍＭＶ１が入力されない場合、動作しない。
【００２７】
双予測生成回路２４０は、信号ｍＤｉｒの値がＢｉである場合、すなわち、継承動きベクトルｍＭＶ０及びｍＭＶ１が入力される場合、継承動きベクトルｍＭＶ０及びｍＭＶ１に基づく双予測を生成する。双予測生成回路２４０は、生成した双予測を表す双予測信号ｂｉｐｒｅｄ（ｒＭＶ０，ｒＭＶ１）を予測選択回路２５０に出力する。次の説明において、入力された継承動きベクトルｍＭＶ０によって参照される参照画像の、継承動きベクトルｍＭＶ０に基づく所定の範囲から選択された点が示す領域、第１参照領域と表記する。入力された継承動きベクトルｍＭＶ１によって参照される参照画像の、継承動きベクトルｍＭＶ１に基づく所定の範囲から選択された点が示す領域、第２参照領域と表記する。双予測生成回路２４０は、符号化対象ブロックの符号化コストが最小である、第１参照領域及び第２参照領域の平均画像のうち、上述の符号化コストが最小である平均画像を、上述の双予測として検出する。そして、双予測生成回路２４０は、符号化コストが最小である平均画像が算出される、第１参照領域及び第２参照領域を特定する。さらに、双予測生成回路２４０は、符号化対象ブロックを示す座標から、特定された第１参照領域を示す座標への動きベクトルを、予測動きベクトルｒＭＶ０とする。同様に、双予測生成回路２４０は、符号化対象ブロックを示す座標から、特定された第２参照領域を示す座標への動きベクトルを、予測動きベクトルｒＭＶ１とする。双予測生成回路２４０は、継承動きベクトルｍＭＶ０又は継承動きベクトルｍＭＶ１が入力されない場合、動作しない。
【００２８】
なお、継承動きベクトルｍＭＶ０及びｍＭＶ１のいずれか一方の参照画像が、符号化対象画像より時間的に前のピクチャであり、他方の参照画像が符号化対象画像より時間的に前のピクチャであってもよい。その場合、上述の、符号化対象ブロックの符号化コストが最小である、第１参照領域及び第２参照領域の平均画像のうち、符号化コストが最小である平均画像は、双方向予測と呼ばれる。言い換えると、双予測生成回路２４０は、双予測ではなく双方向予測を導出し、導出した双方向予測を出力してもよい。
【００２９】
予測選択回路２５０は、予測信号ｐｒｅｄ（ｒＭＶ０）が表す予測画像、予測信号ｐｒｅｄ（ｒＭＶ１）が表す予測画像、及び双予測信号ｂｉｐｒｅｄ（ｒＭＶ０，ｒＭＶ１）が表す予測画像のうち、符号化対象コストが最も小さくなる予測画像を特定する。そして、特定した予測画像を表す予測信号ｐｒｅｄと、その予測信号ｐｒｅｄが表す予測画像を示す予測動きベクトルとを出力する。予測選択回路２５０は、さらに、信号ｍＤｉｒを信号ｒＤｉｒとして出力する。以下の説明では、信号ｒＤｉｒも、「予測方向」と表記することがある。選択された予測画像を表す信号が予測信号ｐｒｅｄ（ｒＭＶ０）である場合、予測選択回路２５０は、予測動きベクトルとして、ｒＭＶ０を出力する。選択された予測画像を表す信号が予測信号ｐｒｅｄ（ｒＭＶ１）である場合、予測選択回路２５０は、予測動きベクトルとして、ｒＭＶ１を出力する。択された予測画像を表す信号が双予測信号ｂｉｐｒｅｄ（ｒＭＶ０，ｒＭＶ１）である場合、予測選択回路２５０は、予測動きベクトルとして、ｒＭＶ０とｒＭＶ１とを出力する。
【００３０】
以上で説明した比較例では、符号化対象ブロックがＰピクチャに含まれる場合、第２リファイン回路２３２及び双予測生成回路２４０は動作せず、休眠状態となる。さらに、符号化対象ブロックがＢピクチャに含まれる場合であっても、２つではなく１つの継承動きベクトルが入力されれば、第２リファイン回路２３２及び双予測生成回路２４０は動作せず、休眠状態となる。
【００３１】
＜第１の実施形態＞
次に、本発明の第１の実施形態について、図面を参照して詳細に説明する。
【００３２】
図１は、本実施形態の映像符号化装置１の全体像を表すブロック図である。図１を参照すると、本実施形態の映像符号化装置１は、ブロック分割部１０１と、事前解析部１０２と、イントラ予測部１０３と、切替部１０４と、整数変換部１０５と、量子化部１０６と、逆量子化部１０７と、逆整数変換部１０８と、符号化部１０９とを含む。本実施形態の符号化装置１は、さらに、フィルタ部１１６と、フレーム記憶部１１７と、減算部１１８と、加算部１１９とを含む。本実施形態の映像符号化装置１は、さらに、動き補償部１００を含む。
【００３３】
図２は、本実施形態の映像符号化装置１全体の実装例を表すブロック図である。図２と図１２とを比較すると、本実施形態の実装例の映像符号化装置１は、動き補償回路３００の代わりに動き補償回路２００を含む。本実施形態の実装例の映像符号化装置１の他の構成要素は、前述の比較例の映像符号化装置１Ｃの、同じ符号が付与されている構成要素と同じである。従って、以下では、図２に示す映像符号化装置１の構成要素のうち、動き補償回路２００以外の構成要素の説明を省略する。
【００３４】
そして、図２に示す例では、ブロック分割回路２０１が、ブロック分割部１０１として動作する。事前解析回路２０２が、事前解析部１０２として動作する。イントラ予測回路２０３が、イントラ予測部１０３として動作する。切替回路２０４が、切替部１０４として動作する。整数変換回路２０５が、整数変換部１０５として動作する。量子化回路２０６が、量子化部１０６として動作する。逆量子化回路２０７が、逆量子化部１０７として動作する。逆整数変換回路２０８が、逆整数変換部１０８として動作する。符号化回路２０９が、符号化部１０９として動作する。フィルタ回路２１６が、フィルタ部１１６として動作する。フレームバッファ２１７が、フレーム記憶部１１７として動作する。減算回路２１８が、減算部１１８として動作する。加算回路２１９が、加算部１１９として動作する。動き補償回路２００が、動き補償部１００として動作する。従って、以下では、図１に示す映像符号化装置１の構成要素のうち、動き補償部１００以外の構成要素の説明を省略する。
【００３５】
図３は、本実施形態の映像符号化装置１の動き補償部１００の構成の例を表すブロック図である。図３を参照すると、動き補償部１００は、動きベクトル補填部１０と、スイッチ部２０と、リファイン部３０と、双予測生成部４０と、予測選択部５０と、ＡＭＶＰ生成部６０（Ａｄｖａｎｃｅｄ  Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ  Ｐｒｅｄｉｃｔｉｏｎ）と、モード決定部７０とを含む。以下の説明ではＡＭＶＰ生成部６０を、「高度動きベクトル予測部６０」と表記することもある。
【００３６】
ＡＭＶＰ生成部６０は、符号化対象ブロックの周辺のブロックにおける予測動きベクトル、又は、符号化対象ブロックが含まれるピクチャの直前ピクチャの予測動きベクトルを選択し、選択した動きベクトルを、動きベクトル補填部１０に送信する。
【００３７】
モード決定部７０は、後述される補填モードを表す信号を、動きベクトル補填部１０に送信する。補填モードは、あらかじめ実験的に定められていてもよい。その場合、モード決定部７０は、あらかじめ実験的に定められている補填モードを表す信号を、動きベクトル補填部１０に送信してもよい。補填モードは、ピクチャのタイプ毎に、あらかじめ決められていてもよい。その場合、モード決定部７０は、符号化対象ブロックが含まれるピクチャのタイプについて決められている補填モードを表す信号を、動きベクトル補填部１０に送信してもよい。補填モードは、符号化処理を実行中に、動的に決められてもよい。その場合、例えばモード決定部７０が、例えば、ピクチャと、そのピクチャが符号化され、復号された画像とを比較することによって、符号化の誤差を評価してもよい。そしてモード決定部７０が、誤差の評価の結果を使用して、誤差が減少するように補填モードを動的に選択してもよい。
【００３８】
動きベクトル補填部１０は、ＡＭＶＰ生成部６０から受信した動きベクトルから、受信した補填モードにおける選択方法に従って、補填動きベクトルを選択する。補填モードとその選択方法については、後で詳細に説明する。動きベクトル補填部１０は、継承動きベクトルｍＭＶ０及び継承動きベクトルｍＭＶ０のいずれか一方が入力されない場合補填動きベクトルを選択すればよい。
【００３９】
スイッチ部２０は、継承動きベクトルｍＭＶ０が入力されない場合、継承動きベクトルｍＭＶ０の代わりに、補填動きベクトルをリファイン部３０に入力する。スイッチ部２０は、継承動きベクトルｍＭＶ１が入力されない場合、継承動きベクトルｍＭＶ１の代わりに、補填動きベクトルをリファイン部３０に入力する。
【００４０】
リファイン部３０は、上述の比較例のリファイン回路２３０と同様に動作する。双予測生成部４０は、上述の比較例の双予測生成回路２４０と同様に動作する。予測選択部５０は、上述の比較例の予測選択回路２５０と同様に動作する。
【００４１】
図４は、本実施形態の映像符号化装置１の動き補償部１００の実装例である、動き補償回路２００の構成の例を表すブロック図である。本実装例の動き補償回路２００は、動きベクトル補填回路２１０と、スイッチ回路２２０と、リファイン回路２３０と、双予測生成回路２４０と、予測選択回路２５０と、ＡＭＶＰ生成回路２６０と、モード決定回路２７０とを含む。スイッチ回路２２０は、第１スイッチ回路２２１と、第２スイッチ回路２２２とを含む。リファイン回路２３０は、第１リファイン回路２３１と、第２リファイン回路２３２とを含む。図４と図１３とを比較すると、本実施形態の映像符号化装置１の実装例のリファイン回路２３０、双予測生成回路２４０、及び、予測選択回路２５０は、それぞれ、前述の比較例の動き補償回路３００の、同じ名前及び符号が付与された構成要素と同じである。動きベクトル補填部１０は、例えば、図４に示す動きベクトル補填回路２１０によって実現される。スイッチ部２０は、例えば、図４に示すスイッチ回路２２０によって実現される。ＡＭＶＰ生成部６０は、例えば、図４に示すＡＭＶＰ生成回路２６０によって実現される。モード決定部７０は、例えば、図４に示すモード決定回路２７０によって実現される。以下では、主に、動きベクトル補填回路２１０、スイッチ回路２２０、ＡＭＶＰ生成回路２６０、及び、モード決定回路２７０について、詳細に説明する。
【００４２】
ＡＭＶＰ生成回路２６０は、周辺ベクトルを受信し、受信した周辺ベクトルから予測動きベクトルを選択する。周辺ベクトルは、符号化対象ブロックの隣接ブロックの予測動きベクトル、又は、符号化対象ブロックの直前ピクチャのブロックの予測動きベクトルである。符号化方式が、例えば、ＨＥＶＣである場合、ＡＭＶＰ生成回路２６０は、２つの予測動きベクトルを選択する。ＡＭＶＰ生成回路２６０が予測動きベクトルを選択する方法は、映像符号化装置１が行う映像符号化の符号化方式における選択方法であればよい。ＡＭＶＰ生成回路２６０は、選択した予測動きベクトルを、動きベクトル補填回路２１０に送信する。
【００４３】
図５は、ＡＭＶＰ生成回路２６０によって動きベクトルが選択されるブロックの位置を模式的に表す図である。ＡＭＶＰ生成回路２６０は、例えば、Ａ０、Ａ１、Ｂ０、Ｂ１、Ｂ２、Ｃ０、及び、Ｃ１の、いずれか２つのブロックの予測動きベクトルを選択する。以下の説明では、Ｃ０、及び、Ｃ１の、２つのブロックの予測動きベクトルを、特に「時間予測動きベクトル」と表記する。また、Ａ０、Ａ１、Ｂ０、Ｂ１、及び、Ｂ２、のブロックの予測動きベクトルを、特に「ＡＭＶＰ予測動きベクトル」と表記する。ＡＭＶＰ生成回路２６０は、例えば、Ａ０、Ａ１、Ｂ０、Ｂ１、及び、Ｂ２、のブロックの予測動きベクトルから、２つのＡＭＶＰ予測動きベクトルを選択してもよい。Ａ０、Ａ１、Ｂ０、Ｂ１、及び、Ｂ２、のブロックの予測動きベクトルに、ＡＭＶＰ予測動きベクトルとして選択できる予測動きベクトルが存在しない場合、ＡＭＶＰ生成回路２６０は、Ｃ０のブロックの予測動きベクトルを、時間予測動きベクトルとして選択してもよい。さらに、Ｃ０のブロックの予測動きベクトルを時間予測動きベクトルとして選択できない場合、ＡＭＶＰ生成回路２６０は、Ｃ１のブロックの予測動きベクトルを、時間予測動きベクトルとして選択してもよい。そして、ＡＭＶＰ生成回路２６０は、選択したＡＭＶＰ予測動きベクトル又は時間予測動きベクトルを、動きベクトル補填回路２１０に送信すればよい。ＡＭＶＰ生成回路２６０は、選択された２つのＡＭＶＰ予測動きベクトルと、時間予測動きベクトルとを、動きベクトル補填回路２１０に送信してもよい。ＡＭＶＰ生成回路２６０は、ＡＭＶＰ予測動きベクトル及び時間予測動きベクトルを、選択せずに、動きベクトル補填回路２１０に送信してもよい。
【００４４】
モード決定回路２７０は、後述される、動きベクトルの補填モードを決定し、決定された補填モードを示す信号を、動きベクトル補填回路２１０に送信する。
【００４５】
動きベクトル補填回路２１０は、信号ｍＤｉｒの値と、補填モード（例えば図４におけるｃＭｏｄｅ）とに基づいて、ＡＭＶＰ生成回路２６０から受信した、ＡＭＶＰ予測動きベクトル又は時間予測動きベクトルから、補填ベクトルｃＭＶを選択する。補填モードｃＭｏｄｅは、例えば、モード決定回路２７０から入力される。補填モードｃＭｏｄｅは、例えば、あらかじめ実験的に定められ、動き補償回路２００の外部にある記憶部（図示されない）に格納されていてもよい。動きベクトル補填回路２１０は、動き補償回路２００の外部にあるその記憶部から補填モードｃＭｏｄｅを読み出しても。動きベクトル補填回路２１０の出力は、スイッチ回路２２０に含まれる、第１スイッチ回路２２１の２つの入力端子の一方と、第２スイッチ回路２２２の２つの入力端子の一方とに接続される。
【００４６】
第１スイッチ回路２２１の２つの入力端子の一方は、動きベクトル補填回路２１０に接続されている。第１スイッチ回路２２１の２つの入力端子の他方は、動きベクトルｍＭＶ０が入力される信号線に接続されている。さらに、第１スイッチ回路２２１の制御端子は、信号ｍＤｉｒに接続される。第１スイッチ回路２２１は、信号ｍＤｉｒの値に応じて、出力端子に接続される入力端子を、動きベクトルｍＭＶ０が入力される信号線に接続されている入力端子と、動きベクトル補填回路２１０に接続されている信号線との間で切り替える。具体的には、信号ｍＤｉｒの値が、上述のＬ０又はＢｉである場合、第１スイッチ回路２２１は、動きベクトルｍＭＶ０が入力される信号線に接続されている入力端子と、出力端子との間を接続する。信号ｍＤｉｒの値が上述のＬ１である場合、第１スイッチ回路２２１は、動きベクトル補填回路２１０に接続されている入力端子と、出力端子との間を接続する。第１スイッチ回路２２１の出力端子は、リファイン回路２３０の第１リファイン回路２３１に接続されている。
【００４７】
第２スイッチ回路２２２の２つの入力端子の一方は、動きベクトル補填回路２１０に接続されている。第２スイッチ回路２２２の２つの入力端子の他方は、動きベクトルｍＭＶ１が入力される信号線に接続されている。さらに、第２スイッチ回路２２２の制御端子は、信号ｍＤｉｒに接続される。第２スイッチ回路２２２は、信号ｍＤｉｒの値に応じて、出力端子に接続される入力端子を、動きベクトルｍＭＶ０が入力される信号線に接続されている入力端子と、動きベクトル補填回路２１０に接続されている信号線との間で切り替える。具体的には、信号ｍＤｉｒの値が、上述のＬ１又はＢｉである場合、第１スイッチ回路２２１は、動きベクトルｍＭＶ１が入力される信号線に接続されている入力端子と、出力端子との間を接続する。信号ｍＤｉｒの値が上述のＬ０である場合、第２スイッチ回路２２２は、動きベクトル補填回路２１０に接続されている入力端子と、出力端子との間を接続する。第２のスイッチ回路２２２の出力端子は、リファイン回路２３０の第２リファイン回路２３２に接続されている。
【００４８】
動き補償回路２００が以上の構成を備えることによって、継承動きベクトルｍＭＶ０が第１リファイン回路２３１に入力されない場合、補填動きベクトルｃＭＶが第１リファイン回路２３１に入力される。さらに、継承動きベクトルｍＭＶ１が第２リファイン回路２３２に入力されない場合、補填動きベクトルｃＭＶが第２リファイン回路２３２に入力される。
【００４９】
本実施形態では、第１リファイン回路２３１及び第２リファイン回路２３２に、２つのベクトルが入力される。第１リファイン回路２３１及び第２リファイン回路２３２は、符号化対象ブロックが含まれるピクチャが、Ｂピクチャであっても、Ｐピクチャであっても、休止状態にならずに動作する。また、本実施形態では、双予測生成回路２４０は、符号化対象ブロックが含まれるピクチャがＢピクチャである場合、休止状態にならずに動作する。本実施形態では、双予測生成回路２４０は、符号化対象ブロックが含まれるピクチャがＰピクチャである場合、休止状態になる
次に、本実施形態の動きベクトル補填部１０について、図面を参照して詳細に説明する。
【００５０】
図６は、本実施形態の動きベクトル補填部１０の構成の例を表すブロック図である。図６を参照すると、動きベクトル補填部１０は、検出部１１と、補填ベクトル選択部１２と、送信部１３と、受信部１４とを含む。
【００５１】
検出部１１は、リファイン部３０に入力される継承動きベクトルが２つであるか１つであるかを検出する。例えば、検出部１１は、事前解析部１０２から、信号ｍＤｉｒを受信する。そして、信号ｍＤｉｒの値がＬ０又はＬ１である場合、検出部１１は、リファイン部３０に入力される継承動きベクトルが１つであることを検出する。信号ｍＤｉｒの値がＢｉである場合、検出部１１は、リファイン部３０に入力される継承動きベクトルが２つであることを検出する。
【００５２】
受信部１４は、事前解析部１０２から、継承動きベクトルｍＭＶ０及び継承動きベクトルｍＭＶ１の少なくとも一方を受信する。受信部１４は、さらに、モード決定部７０から、補填モードｃＭｏｄｅを受信する。受信部１４は、さらに、ＡＭＶＰ生成部６０から、例えば、選択された２つの予測動きベクトル（以下、「ＡＭＶＰ０」及び「ＡＭＶＰ１」と表記）と、時間予測動きベクトルとを受信する。
【００５３】
補填ベクトル選択部１２は、例えば入力される継承動きベクトルが１つである場合、補填モードｃＭｏｄｅにおける選択方法に従って、予測動きベクトル及び時間予測動きベクトルから、補填動きベクトルを選択する。その際、補填ベクトル選択部１２は、入力された継承動きベクトル（すなわち、継承動きベクトルｍＭＶ０又は継承動きベクトルｍＭＶ１）に基づいて、補填動きベクトルを選択してもよい。以下では、補填モードとその補填モードにおける選択方法の例について詳細に説明する。
【００５４】
（１）補填モード０
補填ベクトル選択部１２は、補填ベクトルを生成しなくてもよい。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード０」である場合、補填ベクトルを生成しない。
【００５５】
（２）補填モード１
補填ベクトル選択部１２は、継承動きベクトルとの距離が最小であるＡＭＶＰ予測動きベクトルを、補填ベクトルとして選択してもよい。ＡＭＶＰ予測動きベクトルの数が２つである場合、補填ベクトル選択部１２は、２つのＡＭＶＰ予測動きベクトルのうち、承継動きベクトルとの距離が小さいＡＭＶＰ予測動きベクトルを、補填ベクトルとして選択してもよい。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード１」である場合、継承動きベクトルとの距離が最小であるＡＭＶＰ予測動きベクトルを、補填ベクトルとして選択する。
【００５６】
（３）補填モード２
補填ベクトル選択部１２は、継承動きベクトルとの距離が最も大きいＡＭＶＰ予測動きベクトルを、補填ベクトルとして選択してもよい。ＡＭＶＰ予測動きベクトルの数が２つである場合、補填ベクトル選択部１２は、２つのＡＭＶＰ予測動きベクトルのうち、承継動きベクトルとの距離が大きいＡＭＶＰ予測動きベクトルを、補填ベクトルとして選択してもよい。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード２」である場合、継承動きベクトルとの距離が最も大きいＡＭＶＰ予測動きベクトルを、補填ベクトルとして選択する。
【００５７】
（４）補填モード３
補填ベクトル選択部１２は、補填ベクトルとして、ゼロベクトルを選択してもよい。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード３」である場合、ゼロベクトルを、補填ベクトルとして選択する。
【００５８】
以上で説明した、補填モード０から補填モード３までの補填モードは、符号化対象ブロックが含まれるピクチャが、Ｂピクチャであっても、Ｐピクチャであっても、選択可能である。
【００５９】
以下で説明する補填モード４から補填モード７までの補填モードは、符号化対象ブロックが含まれるピクチャが、Ｂピクチャである場合に選択可能である。補填モード４から補填モード７までの補填モードでは、補填ベクトルは、継承動きベクトルと異なる予測方向における動きベクトルとして補填される。
【００６０】
（５）補填モード４
補填ベクトル選択部１２は、補填ベクトルとして、インデックスが０であるＡＭＶＰ予測動きベクトルを選択してもよい。ＡＭＶＰ生成部６０は、２つのＡＭＶＰ予測動きベクトルの一方に、インデックスとして０を付与し、他方に、インデックスとして１を付与すればよい。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード４」である場合、補填ベクトルとして、インデックスが０であるＡＭＶＰ予測動きベクトルを選択する。
【００６１】
（６）補填モード５
補填ベクトル選択部１２は、補填ベクトルとして、インデックスが１であるＡＭＶＰ予測動きベクトルを選択してもよい。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード５」である場合、補填ベクトルとして、インデックスが１であるＡＭＶＰ予測動きベクトルを選択する。
【００６２】
（７）補填モード６
補填ベクトル選択部１２は、補填ベクトルとして、ゼロベクトルを選択してもよい。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード６」である場合、填ベクトルとして、ゼロベクトルを選択する。
【００６３】
（８）補填モード７
補手ベクトル選択部１２は、補填ベクトルとして、時間予測動きベクトルを選択する。上述のように、例えば図５に示す例におけるＣ０のブロックにおける予測動きベクトルが存在する場合、ＡＭＶＰ生成部６０は、時間予測動きベクトルとして、Ｃ０のブロックにおける予測動きベクトルを選択する。Ｃ０のブロックにおける予測動きベクトルが存在しない場合、ＡＭＶＰ生成部６０は、時間予測動きベクトルとして、Ｃ１のブロックにおける予測動きベクトルを選択する。本実施形態では、補填ベクトル選択部１２は、補填モードが「補填モード７」である場合、補填ベクトルとして、時間予測動きベクトルを選択する。
【００６４】
図７は、本実施形態の動きベクトル補填回路２１０の構成の例を表すブロック図である。動きベクトル補填回路２１０は、動きベクトル補填部１０が回路として実装されている実装例である。動きベクトル補填回路２１０は、動きベクトル補填部１０として動作する回路である。図７を参照すると、動きベクトル補填回路２１０は、検出回路２１１と、補填ベクトル選択回路２１２と、送信回路２１３と、受信回路２１４とを含む。検出回路２１１は、上述の検出部１１として動作する。補填ベクトル選択回路２１２は、上述の補填ベクトル選択部１２として動作する。送信回路２１３は、上述の送信部１３として動作する。受信回路２１４は、上述の受信部１４として動作する。従って、動きベクトル補填回路２１０についての詳細な説明は省略する。
【００６５】
次に、本実施形態の動作について、図面を参照して詳細に説明する。
【００６６】
図８は、本実施形態の映像符号化装置１の、符号化対象画像の予測画像を生成する動作の例を表すフローチャートである。
【００６７】
図８を参照すると、まず、事前解析部１０２が、継承動きベクトルを生成する（ステップＳ１０１）。次に、ＡＭＶＰ生成部６０が、ＡＭＶＰ予測動きベクトルと時間予測動きベクトルとを生成する（ステップＳ１０２）。次に、動きベクトル補填部１０が、動きベクトル補填処理を実行する（ステップＳ１０３）。動きベクトル補填処理については、後で詳細に説明する。次に、リファイン部３０が、動きベクトルをリファインする（ステップＳ１０４）。すなわち、リファイン部３０は、受信した動きベクトル（すなわち、２つの継承動きベクトル、又は、継承動きベクトル及び補填動きベクトル）に基づいて、予測動きベクトルを検出する。リファイン部３０は、さらに、予測動きベクトルに基づく予測画像を生成する（ステップＳ１０５）。
【００６８】
符号化対象ブロックが含まれるピクチャがＰピクチャである場合（ステップＳ１０６においてＮＯ）、映像符号化装置１は、次に、ステップＳ１０８の動作を行う。この場合、予測選択部５０は、２つの予測画像から、例えば符号化コストがより小さい、１つの予測画像を選択する。
符号化対象ブロックが含まれるピクチャがＢピクチャである場合（ステップＳ１０６においてＹＥＳ）、次に、双予測生成部４０が、双予測画像を生成する（ステップＳ１０７）。そして、予測選択部５０は、予測画像を選択する（ステップＳ１０８）。この場合、予測選択部５０は、２つの予測画像と、１つの双予測画像とから、１つの画像を予測画像として選択する。
【００６９】
次に、本実施形態の映像符号化装置１の、動きベクトル補填処理の動作について、図面を参照して詳細に説明する。
【００７０】
図９は、本実施形態の映像符号化装置１の、動きベクトル補填処理の動作の例を表すフローチャートである。
【００７１】
図９を参照すると、まず、検出部１１が、スイッチ部２０を介してリファイン部３０に入力される継承動きベクトルの数を検出する（ステップＳ２０１）。具体的には、検出部１１は、信号ｍＤｉｒの値を検出する。そして、検出部１１は、信号ｍＤｉｒの値によって、継承動きベクトルの数が１つであるか２つであるかを検出する。検出部１１は、信号ｍＤｉｒの値がＬ０又はＬ１である場合、継承動きベクトルの数は１つであることを検出する。検出部１１は、信号ｍＤｉｒの値がＢｉである場合、継承動きベクトルの数は２つであることを検出する。
【００７２】
継承動きベクトルの数が１つではない場合（ステップＳ２０２においてＮＯ）、すなわち、信号ｍＤｉｒの値が、Ｂｉである場合、映像符号化装置１は、図９に示す動きベクトル補填処理を終了する。
【００７３】
継承動きベクトルの数が１つである場合（ステップＳ２０２においてＹＥＳ）、すなわち、信号ｍＤｉｒの値が、Ｌ０又はＬ１である場合、受信部１４は、補填モードを受信する（ステップＳ２０３）。なお、補填モードがあらかじめ定められている場合、受信部１４は、補填モードを受信しなくてよい。次に、受信部１４は、ＡＭＶＰ予測動きベクトル及び時間予測動きベクトルの少なくともいずれかを受信する（ステップＳ２０４）。受信部１４は、さらに、継承動きベクトルを受信する（ステップＳ２０５）。
【００７４】
次に、補填ベクトル選択部１２は、受信した補填モードに基づいて、受信した、ＡＭＶＰ予測動きベクトル及び時間予測動きベクトルと、ゼロベクトルとの少なくともいずれかから、補填動きベクトルを選択する（ステップＳ２０６）。
【００７５】
送信部１３は、選択された補填動きベクトルを、スイッチ部２０を介して、リファイン部３０に送信する（ステップＳ２０７）。そして、映像符号化装置１は、図９に示す動作を終了する。
【００７６】
以上で説明した本実施形態には、参照ピクチャが１つである場合であっても、予測の精度を向上させることができるという第１の効果がある。
【００７７】
その理由は、参照ピクチャが１つである場合、すなわち、継承動きベクトルが１つである場合、補填ベクトル選択部１２によって選択された補填動きベクトルが、リファイン部３０に供給されるからである。その場合、予測選択部５０は、継承動きベクトルに基づく予測画像と、補填動きベクトルに基づく予測画像とから、例えば符号化コストが最も小さい画像が選択する。又は、予測選択部５０は、継承動きベクトルに基づく予測画像と、補填動きベクトルに基づく予測画像と、双予測画像とから、例えば符号化コストが最も小さい画像が選択する。従って、選択された画像の符号化対象ブロックに対する予測精度が向上する。
【００７８】
また、事前解析器が利用できなかった動きベクトルの追加評価による動き補償予測の高精度化が期待できる。なぜならば、事前解析器が決定する継承動きベクトルｍＭＶ０及びｍＭＶ１の予測方向や成分は必ずしも最適とならないためである。特にＢピクチャにおいて時間ダイレクトモードを考慮した動きベクトル探索がなされていないため、予測方向の選定が最適でない可能性が高い。
【００７９】
ＨＥＶＣ規格における動きベクトルの時空間適応予測（すなわちＡＭＶＰとマージ予測）に適した動きベクトル選択によるオーバヘッド削減が期待できる。なぜならば、中央値予測に基づいて事前解析器が決定する継承動きベクトルｍＭＶ０及びｍＭＶ１は、必ずしもＡＭＶＰとマージ予測に最適な動きベクトルとならないためである。
【００８０】
本実施形態には、さらに、演算器（すなわち、図４に示す第１リファイン回路２３１、第２リファイン回路２３２、及び、双予測生成回路２４０）を活用することができるという第２の効果がある。その理由は、継承動きベクトルが１つである場合に、補填ベクトル選択部１２によって選択された補填動きベクトルが、第１リファイン回路２３１及び第２のリファイン回路２３２のうち継承動きベクトルが入力されていない方に入力されるからである。さらに、符号化対象ブロックが含まれるピクチャがＢピクチャであれば、継承動きベクトルの数が１である場合であっても、双予測生成回路２４０が双予測を生成するからである。
【００８１】
＜第２の実施形態＞
次に、本発明の第２の実施形態について、図面を参照して詳細に説明する。
【００８２】
図１０は、本実施形態の映像符号化装置１Ａの構成の例を表すブロック図である。
【００８３】
図１０を参照すると、本実施形態の映像符号化装置１Ａは、検出部１１と、補填ベクトル選択部１２と、送信部１３と、を備える。検出部１１は、リファイン部３０が受信する継承動きベクトルの数が、１つであるか又は２つであるかを検出する。リファイン部３０は、符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルの探索の基準として継承動きベクトルを受信する。補填ベクトル選択部１２は、前記継承動きベクトルの数が１つである場合、所定の選択方法に従って補填動きベクトル選択する。送信部１３は、前記リファイン部３０に、選択した前記補填動きベクトルを送信する。前記リファイン部３０は、前記継承動きベクトルと受信した前記補填ベクトルとに基づいて、処理対象ブロックの予測動きベクトルを検出する。
【００８４】
以上で説明した本実施形態には、第１の実施形態の第１の効果と同じ効果がある。その理由は、第１の実施形態の第１の効果が生じる理由と同じである。
【００８５】
＜他の実施形態＞
上述の映像符号化装置１及び１Ａは、それぞれ、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。
【００８６】
図１１は、上述の映像符号化装置１及び１Ａを実現することができる、コンピュータ１０００のハードウェア構成の一例を表す図である。図１１を参照すると、コンピュータ１０００は、プロセッサ１００１と、メモリ１００２と、記憶装置１００３と、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）インタフェース１００４とを含む。また、コンピュータ１０００は、記録媒体１００５にアクセスすることができる。メモリ１００２と記憶装置１００３は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスクなどの記憶装置である。記録媒体１００５は、例えば、ＲＡＭ、ハードディスクなどの記憶装置、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、可搬記録媒体である。記憶装置１００３が記録媒体１００５であってもよい。プロセッサ１００１は、メモリ１００２と、記憶装置１００３に対して、データやプログラムの読み出しと書き込みを行うことができる。プロセッサ１００１は、Ｉ／Ｏインタフェース１００４を介して、例えば、映像の送信元及びビットストリームの送信先にアクセスすることができる。プロセッサ１００１は、記録媒体１００５にアクセスすることができる。記録媒体１００５には、コンピュータ１０００を、映像符号化装置１又は映像符号化装置１Ａとして動作させるプログラムが格納されている。
【００８７】
プロセッサ１００１は、記録媒体１００５に格納されている、コンピュータ１０００を、映像符号化装置１又は映像符号化装置１Ａとして動作させるプログラムを、メモリ１００２にロードする。そして、プロセッサ１００１が、メモリ１００２にロードされたプログラムを実行することにより、コンピュータ１０００は、映像符号化装置１又は映像符号化装置１Ａとして動作する。
【００８８】
以下の第１リストに含まれる部は、例えば、プログラムを記憶する記録媒体１００５からメモリ１００２に読み込まれた、各部の機能を実現することができる専用のプログラムと、そのプログラムを実行するプロセッサ１００１により実現することができる。第１リストは、検出部１１と、補填ベクトル選択部１２と、送信部１３と、受信部１４とを含む。第１リストは、さらに、動きベクトル補填部１０と、スイッチ部２０と、リファイン部３０と、双予測生成部４０と、予測選択部５０と、ＡＭＶＰ生成部６０と、モード決定部７０とを含む。第１リストは、さらに、動き補償部１００と、ブロック分割部１０１と、事前解析部１０２と、イントラ予測部１０３と、切替部１０４と、整数変換部１０５と、量子化部１０６と、逆量子化部１０７と、逆整数変換部１０８と、符号化部１０９とを含む。第１リストは、さらに、フィルタ部１１６と、減算部１１８と、加算部１１９とを含む。また、以下の第２リストに含まれる部は、コンピュータ１０００が含むメモリ１００２やハードディスク装置等の記憶装置１００３により実現することができる。第２リストは、フレーム記憶部１１７を含む。あるいは、第１リストに含まれる部及び第２リストに含まれる部の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
【００８９】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【００９０】
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００９１】
（付記１）
符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルの探索の基準としてリファイン手段が受信する継承動きベクトルの数が、１つであるか又は２つであるかを検出する検出手段と、
前記継承動きベクトルの数が１つである場合、所定の選択方法に従って補填動きベクトル選択する補填ベクトル選択手段と、
前記継承動きベクトルと受信した前記補填ベクトルとに基づいて、処理対象ブロックの予測動きベクトルを検出する前記リファイン手段に、選択した前記補填動きベクトルを送信する送信手段と、
を備える映像符号化装置。
【００９２】
（付記２）
前記補填ベクトル選択手段は、前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルのいずれか、前記補填動きベクトルとして選択する
付記１に記載の映像符号化装置。
【００９３】
（付記３）
前記補填ベクトル選択手段は、前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルに加えて、前記符号化対象映像における前記ピクチャの直前ピクチャの前記時間予測動きベクトルと、ゼロベクトルとのいずれかを、前記補填動きベクトルとして選択する
付記２に記載の映像符号化装置。
【００９４】
（付記４）
複数の前記選択方法のいずれかを示す補填モードを受信する受信手段をさらに備え、
前記補填ベクトル選択手段は、前記補填モードが示す前記選択方法に従って前記補填動きベクトルを選択する
付記１乃至３のいずれか１項に記載の映像符号化装置。
【００９５】
（付記５）
受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲において前記符号化対象ブロックを最もよく予測する、第１の予測画像を検出し、前記補填ベクトルに基づく第２の参照画像の探索範囲において前記符号化対象ブロックを最もよく予測する、第２の予測画像を検出する前記リファイン手段と、
前記第１の予測画像及び前記第２の予測画像から、１つの予測画像を選択する予測選択手段と、
をさらに備える付記１乃至４のいずれか１項に記載の映像符号化装置。
【００９６】
（付記６）
受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲における領域と、前記補填ベクトルに基づく第２の参照画像の探索範囲における領域との平均画像のうち、前記符号化対象ブロックを最もよく予測する前記平均画像を、第３の予測画像として検出する双予測生成手段を備え、
前記予測選択手段は、前記第１の予測画像、前記第２の予測画像及び前記第３の予測画像から、１つの予測画像を選択する
付記５に記載の映像符号化装置。
【００９７】
（付記７）
符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルの探索の基準としてリファイン手段が受信する継承動きベクトルの数が、１つであるか又は２つであるかを検出し、
前記継承動きベクトルの数が１つである場合、所定の選択方法に従って補填動きベクトル選択し、
前記継承動きベクトルと受信した前記補填ベクトルとに基づいて、処理対象ブロックの予測動きベクトルを検出する前記リファイン手段に、選択した前記補填動きベクトルを送信する、
映像符号化方法。
【００９８】
（付記８）
前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルのいずれか、前記補填動きベクトルとして選択する
付記７に記載の映像符号化方法。
【００９９】
（付記９）
前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルに加えて、前記符号化対象映像における前記ピクチャの直前ピクチャの前記時間予測動きベクトルと、ゼロベクトルとのいずれかを、前記補填動きベクトルとして選択する
付記８に記載の映像符号化方法。
【０１００】
（付記１０）
複数の前記選択方法のいずれかを示す補填モードを受信し、
前記補填モードが示す前記選択方法に従って前記補填動きベクトルを選択する
付記７乃至９のいずれか１項に記載の映像符号化方法。
【０１０１】
（付記１１）
受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲において前記符号化対象ブロックを最もよく予測する、第１の予測画像を検出し、前記補填ベクトルに基づく第２の参照画像の探索範囲において前記符号化対象ブロックを最もよく予測する、第２の予測画像を検出し、
前記第１の予測画像及び前記第２の予測画像から、１つの予測画像を選択する、
付記７乃至１０のいずれか１項に記載の映像符号化方法。
【０１０２】
（付記１２）
受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲における領域と、前記補填ベクトルに基づく第２の参照画像の探索範囲における領域との平均画像のうち、前記符号化対象ブロックを最もよく予測する前記平均画像を、第３の予測画像として検出し、
前記第１の予測画像、前記第２の予測画像及び前記第３の予測画像から、１つの予測画像を選択する
付記１１に記載の映像符号化方法。
【０１０３】
（付記１３）
コンピュータを、
符号化対象映像に含まれるピクチャにおける処理対象ブロックの動きの予測を表す予測動きベクトルの探索の基準としてリファイン手段が受信する継承動きベクトルの数が、１つであるか又は２つであるかを検出する検出手段と、
前記継承動きベクトルの数が１つである場合、所定の選択方法に従って補填動きベクトル選択する補填ベクトル選択手段と、
前記継承動きベクトルと受信した前記補填ベクトルとに基づいて、処理対象ブロックの予測動きベクトルを検出する前記リファイン手段に、選択した前記補填動きベクトルを送信する送信手段と、
して動作させる映像符号化プログラム。
【０１０４】
（付記１４）
コンピュータを、
前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルのいずれか、前記補填動きベクトルとして選択する前記補填ベクトル選択手段と
して動作させる付記１３に記載の映像符号化プログラム。
【０１０５】
（付記１５）
コンピュータを、
前記処理対象ブロックの隣接ブロックにおける前記予測動きベクトルに加えて、前記符号化対象映像における前記ピクチャの直前ピクチャの前記時間予測動きベクトルと、ゼロベクトルとのいずれかを、前記補填動きベクトルとして選択する前記補填ベクトル選択手段と
して動作させる付記１４に記載の映像符号化プログラム。
【０１０６】
（付記１６）
コンピュータを、
複数の前記選択方法のいずれかを示す補填モードを受信する受信手段と、
前記補填モードが示す前記選択方法に従って前記補填動きベクトルを選択する前記補填ベクトル選択手段と、
して動作させる付記１３乃至１５のいずれか１項に記載の映像符号化プログラム。
【０１０７】
（付記１７）
コンピュータを、
受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲において前記符号化対象ブロックを最もよく予測する、第１の予測画像を検出し、前記補填ベクトルに基づく第２の参照画像の探索範囲において前記符号化対象ブロックを最もよく予測する、第２の予測画像を検出する前記リファイン手段と、
前記第１の予測画像及び前記第２の予測画像から、１つの予測画像を選択する予測選択手段と、
して動作させる付記１３乃至１６のいずれか１項に記載の映像符号化プログラム。
【０１０８】
コンピュータを、
（付記１８）
受信した前記継承動きベクトルに基づく第１の参照画像の探索範囲における領域と、前記補填ベクトルに基づく第２の参照画像の探索範囲における領域との平均画像のうち、前記符号化対象ブロックを最もよく予測する前記平均画像を、第３の予測画像として検出する双予測生成手段と、
前記第１の予測画像、前記第２の予測画像及び前記第３の予測画像から、１つの予測画像を選択する前記予測選択手段と
して動作させる付記１７に記載の映像符号化プログラム。
【０１０９】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１１０】
１    映像符号化装置
１Ａ    映像符号化装置
１Ｃ    映像符号化装置
１０    動きベクトル補填部
１１    検出部
１２    補填ベクトル選択部
１３    送信部
１４    受信部
２０    スイッチ部
３０    リファイン部
４０    双予測生成部
５０    予測選択部
６０    ＡＭＶＰ生成部
７０    モード決定部
１００    動き補償部
１０１    ブロック分割部
１０２    事前解析部
１０３    イントラ予測部
１０４    切替部
１０５    整数変換部
１０６    量子化部
１０７    逆量子化部
１０８    逆整数変換部
１０９    符号化部
１１６    フィルタ部
１１７    フレーム記憶部
１１８    減算部
１１９    加算部
２００    動き補償回路
２１０    動きベクトル補填回路
２１１    検出回路
２１２    補填ベクトル選択回路
２１３    送信回路
２１４    受信回路
２１６    フィルタ回路
２１７    フレームバッファ
２１８    減算回路
２１９    加算回路
２２０    スイッチ回路
２２１    第１スイッチ回路
２２２    第２スイッチ回路
２３０    リファイン回路
２３１    第１リファイン回路
２３２    第２リファイン回路
２４０    双予測生成回路
２５０    予測選択回路
２６０    ＡＭＶＰ生成回路
２７０    モード決定回路
３００    動き補償回路
３２０    スイッチ回路
３２１    第１スイッチ回路
３２２    第２スイッチ回路
１０００    コンピュータ
１００１    プロセッサ
１００２    メモリ
１００３    記憶装置
１００４    Ｉ／Ｏインタフェース
１００５    記録媒体
【図１】
0006596864.tif 000002
【図２】
0006596864.tif 000003
【図３】
0006596864.tif 000004
【図４】
0006596864.tif 000005
【図５】
0006596864.tif 000006
【図６】
0006596864.tif 000007
【図７】
0006596864.tif 000008
【図８】
0006596864.tif 000009
【図９】
0006596864.tif 000010
【図１０】
0006596864.tif 000011
【図１１】
0006596864.tif 000012
【図１２】
0006596864.tif 000013
【図１３】
0006596864.tif 000014