(57)【要約】【課題】前段の処理において動きベクトルが割り付けられなかった画素に、より確かな動きベクトルを割り付けることができるようにする。【解決手段】評価値演算部８０２は、補償処理対象ブロック毎に、注目画素または隣接画素に割り付けられている動きベクトルについて、相関を示す評価値ＤＦＤを、その動きベクトルのベクトル割付部による割付位置と補償処理対象ブロックの所定の位置との距離に応じた重みを付けて演算する。ベクトル補償部８０１は、補償処理対象ブロックの、動きベクトルが割り付けられていない注目画素に、相関が最も強いことを示す評価値が演算された動きベクトルを補って割り付けるとともに、その動きベクトルに対応させて、動きベクトルのベクトル割付部による割付位置の情報も記憶させる。本発明は、２４Ｐ信号から６０Ｐ信号へのフレーム周波数変換処理を行う信号処理装置に適用できる。【選択図】図２２
2007110461.tif 000002
【特許請求の範囲】
【請求項１】
第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理装置において、
前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付手段と、
前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算手段と、
所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償手段と
を備える画像処理装置。
【請求項２】
前記評価値演算手段は、前記隣接画素に割り付けられている前記動きベクトルを、前記注目ブロック内の所定の位置に移動させ、移動後の前記注目ブロック内の所定の位置における前記動きベクトルについて、前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する
請求項１に記載の画像処理装置。
【請求項３】
前記注目ブロックが複数の前記注目画素で構成される場合、
前記評価値演算手段は、前記隣接画素および前記注目画素に割り付けられている前記動きベクトルについて、前記動きベクトルについて、前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算し、
前記割付補償手段は、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素の内の、前記動きベクトルが割り付けられていない前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける
請求項１に記載の画像処理装置。
【請求項４】
前記評価値演算手段は、前記隣接画素および前記注目画素に付されている優先順位の順に、前記隣接画素または前記注目画素に割り付けられている前記動きベクトルについて、前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する
請求項３に記載の画像処理装置。
【請求項５】
前記割付補償手段は、前記注目画素に、前記動きベクトルを補って割り付ける際に、前記動きベクトルに対応させて、前記ベクトル割付手段により前記動きベクトルが割り付けられていた画素の位置の情報である割付位置情報を記憶させる
請求項１に記載の画像処理装置。
【請求項６】
前記評価値演算手段は、前記割付補償手段により前記隣接画素に補って割り付けられた前記動きベクトルについても、前記動きベクトルに対応させて記憶された前記割付位置情報に基づいて、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて前記評価値を演算する
請求項５に記載の画像処理装置。
【請求項７】
前記評価値を演算しようとする前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置が、前記評価値が既に演算された前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と同じであるか否かを判定する判定手段をさらに備え、
前記評価値演算手段は、前記判定手段により前記評価値を演算しようとする前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置が、前記評価値が既に演算された前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と同じであると判定された場合、前記動きベクトルについての前記評価値の演算をスキップする
請求項１に記載の画像処理装置。
【請求項８】
前記評価値演算手段は、前記第１の領域に属する画素の画素値と前記第２の領域に属する画素の画素値との差分絶対値和である前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する
請求項１に記載の画像処理装置。
【請求項９】
第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理装置の画像処理方法において、
前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付ステップと、
前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付ステップの処理により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算ステップと、
所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償ステップと
を含む画像処理方法。
【請求項１０】
第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理を、コンピュータに行わせるプログラムであって、
前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付ステップと、
前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付ステップの処理により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算ステップと、
所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償ステップと
を含むプログラム。
【請求項１１】
請求項１０に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、プログラム、並びに記録媒体に関し、特に、動きベクトルに基づいて生成される画像の品質を向上することができるようにした画像処理装置および方法、プログラム、並びに記録媒体に関する。
【背景技術】
【０００２】
従来、画像のフレーム周波数を変換する画像処理装置においては、勾配法、またはブロックマッチング法などを用いることにより、動きベクトルの検出が行われ、検出された動きベクトルが、生成される内挿フレームに割り付けられる（例えば、特許文献１）。しかしながら、これらの動きベクトル検出方法においては、常に、動きベクトルが求められるわけではなく、注目画素の動きベクトルを求めることができなかったり、もしくは、求められた動きベクトルが不安定であるなど、動きベクトルの信頼度に問題がある場合があった。
【０００３】
また、検出された動きベクトルを、生成される内挿フレームに割り付ける場合においても、内挿フレーム上のすべての画素に、動きベクトルが割り付けられるわけではなく、このような場合、画像処理装置は、動きベクトルを求まらないままにするか、または、動きベクトルを０ベクトル（すなわち、静止状態）にすることにより対応していた。
【０００４】
【特許文献１】特開平９−１７２６２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、求まらないままの動きベクトルや０ベクトルにされた動きベクトルは、注目画素が属するオブジェクトに適した動きであるとは、必ずしも言えず、これらの動きベクトルを用いて生成された画像に、例えば、不連続性などの視覚劣化を、少なからずもたらしてしまうことがあった。
【０００６】
したがって、前フレームにおいて検出された動きベクトルが割り付けられていない内挿フレームの画素にも、確からしい動きベクトルを割り付けることが求められている。
【０００７】
本発明は、このような状況に鑑みてなされたものであり、前段の処理において動きベクトルが割り付けられなかった画素に、より確からしい動きベクトルを割り付けることができるようにするものである。
【課題を解決するための手段】
【０００８】
本発明の一側面の画像処理装置は、第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理装置において、前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付手段と、前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算手段と、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償手段とを備える。
【０００９】
前記評価値演算手段は、前記隣接画素に割り付けられている前記動きベクトルを、前記注目ブロック内の所定の位置に移動させ、移動後の前記注目ブロック内の所定の位置における前記動きベクトルについて、前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算することができる。
【００１０】
前記注目ブロックが複数の前記注目画素で構成される場合、前記評価値演算手段は、前記隣接画素および前記注目画素に割り付けられている前記動きベクトルについて、前記動きベクトルについて、前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算し、前記割付補償手段は、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素の内の、前記動きベクトルが割り付けられていない前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付けることができる。
【００１１】
前記評価値演算手段は、前記隣接画素および前記注目画素に付されている優先順位の順に、前記隣接画素または前記注目画素に割り付けられている前記動きベクトルについて、前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算することができる。
【００１２】
前記割付補償手段は、前記注目画素に、前記動きベクトルを補って割り付ける際に、前記動きベクトルに対応させて、前記ベクトル割付手段により前記動きベクトルが割り付けられていた画素の位置の情報である割付位置情報を記憶させることができる。
【００１３】
前記評価値演算手段は、前記割付補償手段により前記隣接画素に補って割り付けられた前記動きベクトルについても、前記動きベクトルに対応させて記憶された前記割付位置情報に基づいて、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて前記評価値を演算することができる。
【００１４】
前記評価値を演算しようとする前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置が、前記評価値が既に演算された前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と同じであるか否かを判定する判定手段をさらに備え、前記評価値演算手段は、前記判定手段により前記評価値を演算しようとする前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置が、前記評価値が既に演算された前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と同じであると判定された場合、前記動きベクトルについての前記評価値の演算をスキップすることができる。
【００１５】
前記評価値演算手段は、前記第１の領域に属する画素の画素値と前記第２の領域に属する画素の画素値との差分絶対値和である前記評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算することができる。
【００１６】
本発明の一側面の画像処理方法は、第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理装置の画像処理方法において、前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付ステップと、前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付ステップの処理により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算ステップと、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償ステップとを含む。
【００１７】
本発明の一側面のプログラムは、第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理を、コンピュータに行わせるプログラムであって、前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付ステップと、前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付ステップの処理により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算ステップと、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償ステップとを含む。
【００１８】
本発明の一側面の記録媒体に記録されているプログラムは、第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理を、コンピュータに行わせるプログラムであって、前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付ステップと、前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付ステップの処理により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算ステップと、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償ステップとを含む。
【００１９】
本発明の一側面においては、第１のフレームおよび第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素にその前記動きベクトルが割り付けられる。また、第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値が、前記動きベクトルが前記ベクトル割付ステップの処理により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算される。そして、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルが補って割り付けられる。
【発明の効果】
【００２０】
本発明によれば、前段の処理において動きベクトルが割り付けられなかった画素に、より確かな動きベクトルを割り付けることができる。
【発明を実施するための最良の形態】
【００２１】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない
【００２２】
本発明の一側面の画像処理装置は、第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する画像処理装置（例えば、図２の信号処理装置１）において、前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付手段（例えば、図２のベクトル割付部５４）と、前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算手段（例えば、図２２の評価値演算部８０２）と、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償手段（例えば、図２２のベクトル補償部８０１）とを備える。
【００２３】
前記評価値を演算しようとする前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置が、前記評価値が既に演算された前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と同じであるか否かを判定する判定手段（例えば、図２２の同一ベクトル判定部８０４）をさらに備え、前記評価値演算手段は、前記判定手段により前記評価値を演算しようとする前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置が、前記評価値が既に演算された前記動きベクトルの大きさおよび向き、並びに前記動きベクトルが前記ベクトル割付手段により割り付けられていた画素の位置と同じであると判定された場合、前記動きベクトルについての前記評価値の演算をスキップすることができる。
【００２４】
本発明の一側面の画像処理方法、プログラム、または記録媒体に記録されているプログラムは、第１のフレームおよび第２のフレームを基に検出された動きベクトルを、前記第１のフレームおよび前記第２のフレームの間に配置される第３のフレーム上の画素に割り付けて、割り付けられた前記動きベクトルに基づいて、前記第３のフレームの画素の画素値を生成する、画像処理装置の画像処理方法、または画像処理をコンピュータに行わせるプログラムであって、前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームおよび前記第２のフレームを基に検出された動きベクトルであって、前記第１のフレームを始点とし前記第２のフレームを終点とする動きベクトルと、前記第３のフレームとが交差する点の近傍の、前記第３のフレーム上の画素に前記動きベクトルを割り付けるベクトル割付ステップ（例えば、図６のステップＳ３）と、前記第３のフレーム上の少なくとも１の注目している画素である注目画素からなる注目ブロック毎に、前記注目ブロックに隣接して配置されている画素である隣接画素に割り付けられている前記動きベクトルについて、前記動きベクトルの前記第１のフレームにおける始点を中心とした第１の領域に属する前記第１のフレームの画素の画素値と、前記動きベクトルの前記第２のフレームにおける終点を中心とした第２の領域に属する前記第２のフレームの画素の画素値との相関を示す評価値を、前記動きベクトルが前記ベクトル割付ステップの処理により割り付けられていた画素の位置と前記注目ブロック内の所定の位置との距離に応じた重みを付けて演算する評価値演算ステップ（例えば、図３４のステップＳ８３６）と、所定の数の前記動きベクトルについて前記評価値が演算された場合、前記注目ブロックの前記注目画素に、相関が最も強いことを示す前記評価値が演算された前記動きベクトルを補って割り付ける割付補償ステップ（例えば、図３３のステップＳ８０８）とを含む。
【００２５】
以下、図を参照して本発明の実施の形態について説明する。
【００２６】
図１は、本発明を適用した信号処理装置１の構成例を表している。信号処理装置１は、例えば、パーソナルコンピュータなどで構成される。図１において、CPU（Central Processing Unit）１１は、ROM（Read Only Memory）１２、または記憶部１８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）１３には、CPU１１が実行するプログラムやデータなどが適宜記憶される。これらのCPU１１、ROM１２、およびRAM１３は、バス１４により相互に接続されている。
【００２７】
CPU１１にはまた、バス１４を介して入出力インタフェース１５が接続されている。入出力インタフェース１５には、キーボード、マウス、マイクロフォンなどよりなる入力部１６、ディスプレイ、スピーカなどよりなる出力部１７が接続されている。CPU１１は、入力部１６から入力される指令に対応して各種の処理を実行する。そして、CPU１１は、処理の結果、得られた画像や音声等を出力部１７に出力する。
【００２８】
入出力インタフェース１５に接続されている記憶部１８は、例えばハードディスクなどで構成され、CPU１１が実行するプログラムや各種のデータを記憶する。通信部１９は、インターネット、その他のネットワークを介して外部の装置と通信する。また、通信部１９を介してプログラムを取得し、記憶部１８に記憶してもよい。
【００２９】
入出力インタフェース１５に接続されているドライブ２０は、磁気ディスク３１、光ディスク３２、光磁気ディスク３３、或いは半導体メモリ３４などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部１８に転送され、記憶される。
【００３０】
なお、信号処理装置１は、例えば、テレビジョン受像機、光ディスクプレーヤなど、または、それらの信号処理部とすることもできる。
【００３１】
図２は、信号処理装置１を示すブロック図である。
【００３２】
なお、信号処理装置１の各機能をハードウェアで実現するか、ソフトウェアで実現するかは問わない。つまり、本明細書の各ブロック図は、ハードウェアのブロック図と考えても、ソフトウェアによる機能ブロック図と考えてもよい。
【００３３】
図２に構成を示す信号処理装置１においては、例えば、フレーム周波数２４Ｈｚのプログレッシブ画像信号（以下、２４Ｐ信号と称する）の画像が入力され、入力された画像（入力画像）が、フレーム周波数６０Ｈｚのプログレッシブ画像信号（以下、６０Ｐ信号と称する）の画像に変換されて、出力される。すなわち、図２は、画像処理装置である信号処理装置の構成を示す図である。
【００３４】
信号処理装置１に入力された２４Ｐ信号の入力画像は、フレームメモリ５１、ベクトル検出部５２、ベクトル割付部５４、割付補償部５７、および画像補間部５８に供給される。フレームメモリ５１は、入力画像をフレーム単位で記憶する。フレームメモリ５１は、時刻ｔ＋１の入力画像の１つ前の時刻ｔのフレームを記憶する。フレームメモリ５１に記憶される時刻ｔのフレームは、ベクトル検出部５２、ベクトル割付部５４、割付補償部５７、および画像補間部５８に供給される。なお、以下、フレームメモリ５１上の時刻ｔのフレームをフレームｔと称し、時刻ｔ＋１の入力画像のフレームを、フレームｔ＋１と称する。
【００３５】
ベクトル検出部５２は、フレームメモリ５１上のフレームｔの着目ブロックと、入力画像のフレームｔ＋１の対象ブロックの間で動きベクトルを検出し、検出した動きベクトルを、検出ベクトルメモリ５３に記憶する。この２フレーム間の動きベクトルの検出方法には、勾配法またはブロックマッチング法などが用いられる。ベクトル検出部５２の構成の詳細は、図９を参照して後述する。検出ベクトルメモリ５３は、フレームｔにおいて、ベクトル検出部５２により検出された動きベクトルを記憶する。
【００３６】
ベクトル割付部５４は、２４Ｐ信号のフレームｔ上において求められた動きベクトルを、割付ベクトルメモリ５５上の、補間する６０Ｐ信号のフレーム（以下、６０Ｐ信号のフレームは、２４Ｐ信号のフレームと区別するため、内挿フレームとも称する）上の画素に割り付け、動きベクトルが割り付けられた画素の割付フラグメモリ５６の割付フラグを１(True)に書き換える。ベクトル割付部５４の構成の詳細は、図１３を参照して後述する。
【００３７】
割付ベクトルメモリ５５は、ベクトル割付部５４により割り付けられた動きベクトルを、内挿フレームの各画素に対応させて記憶する。割付フラグメモリ５６は、内挿フレームの画素毎に、割り付けられる動きベクトルの有無を示す割付フラグを記憶している。例えば、True(1)である割付フラグは、対応する画素に動きベクトルが割り付けられていることを示し、False(0)である割付フラグは、対応する画素に動きベクトルが割り付けられていないことを示す。
【００３８】
割付補償部５７は、割付フラグメモリ５６の割付フラグを参照し、ベクトル割付部５４により動きベクトルが割り付けられなかった着目画素に対して、その着目画素の周辺画素の動きベクトルを補い、割付ベクトルメモリ５５の内挿フレーム上に割り付ける。このとき、割付補償部５７は、動きベクトルを割り付けた着目画素の割付フラグを１(True)に書き換える。割付補償部５７の構成の詳細は、図２２を参照して後述する。
【００３９】
画像補間部５８は、割付ベクトルメモリ５５の内挿フレームに割り付けられた動きベクトルと、フレームｔおよび次のフレームｔ＋１の画素値を用いて、内挿フレームの画素値を補間生成する。画像補間部５８の構成の詳細は、図７を参照して後述する。そして、画像補間部５８は、生成された内挿フレームを出力し、その次に、必要に応じて、フレームｔ＋１を出力することにより、６０Ｐ信号の画像を、図示せぬ後段に出力する。なお、以下においては、画素値を、適宜、輝度値とも称する。
【００４０】
図３は、本発明に係る信号処理装置１における処理の原理を説明する図である。図３の例においては、点線が、信号処理装置１に入力される、時刻ｔ，ｔ＋１，およびｔ＋２における２４Ｐ信号のフレームを表しており、実線が、入力された２４Ｐ信号から信号処理装置１により、生成される時刻ｔ，ｔ＋０．４，ｔ＋０．８，ｔ＋１．２，ｔ＋１．６，およびｔ＋２における６０Ｐ信号の内挿フレームを表している。
【００４１】
一般に、２４Ｐ信号を、６０Ｐ信号に変換するためには、５／２倍のフレームが必要になる。すなわち、２枚の２４Ｐ信号の画像から５枚の６０Ｐ信号の画像が生成されなければならない。このとき、生成される６０Ｐ信号の内挿フレームは、そのフレーム間隔を等しくするために、２４Ｐ信号上での時間位相が０．０，０．４，０．８，１．２，および１．６となる位置に配置される。この中で、時間位相が０．０である時刻ｔの１フレームを除く４フレーム（ｔ＋０．４，ｔ＋０．８，ｔ＋１．２，およびｔ＋１．６のフレーム）は、２４Ｐ信号上には存在しない画像である。したがって、信号処理装置１は、２４Ｐ信号の画像が入力されると、２４Ｐ信号の時刻ｔおよび時刻ｔ＋１の２枚のフレームから、４つの内挿フレームを生成する。したがって、信号処理装置１からは、時刻ｔ，ｔ＋０．４，ｔ＋０．８，ｔ＋１．２，およびｔ＋１．６の５枚のフレームからなる６０Ｐ信号の画像が出力される。
【００４２】
以上のようにして、信号処理装置１は、２４Ｐ信号の画像から６０Ｐ信号の画像に、フレーム周波数を変換する処理を実行する。
【００４３】
なお、原理的には、上述したように、２４Ｐ信号の時刻ｔおよび時刻ｔ＋１の２枚のフレームから、時刻ｔ，ｔ＋０．４，ｔ＋０．８，ｔ＋１．２，およびｔ＋１．６の５枚の６０Ｐ信号のフレームが新しく生成されるが、実際には、図３の例の場合、２４Ｐ信号の時刻ｔおよび時刻ｔ＋１の２枚のフレームに基づいて、ｔ，ｔ＋０．４，ｔ＋０．８の６０Ｐ信号のフレームが生成され、２４Ｐ信号の時刻ｔ＋１およびｔ＋２の２枚のフレームに基づいて、ｔ＋１．２，ｔ＋１．６，およびｔ＋２の６０Ｐ信号のフレームが生成される。
【００４４】
図４は、本発明の処理をより具体的に説明する図である。図４の例においては、太線矢印は、各状態への遷移を表しており、矢印Ｔは、状態８１乃至８５における時間の経過方向を表している。また、状態８１乃至８５は、信号処理装置１を構成する各部への入出力時の、２４Ｐ信号の時刻ｔのフレームｔ、時刻ｔの次の時刻ｔ＋１のフレームｔ＋１、または、フレームｔおよびフレームｔ＋１の間に生成される６０Ｐ信号の内挿フレームＦの状態を概念的に表している。すなわち、実際には、例えば、状態８２に示されるような動きベクトルが検出されたフレームがベクトル割付部５４に入力される訳ではなく、フレームと動きベクトルは、別々にベクトル割付部５４に入力される。
【００４５】
状態８１は、ベクトル検出部５２に入力される、２４Ｐ信号のフレームｔおよびフレームｔ＋１の状態を表している。状態８１のフレームｔ上の黒点は、フレームｔ上の画素を表している。ベクトル検出部５２は、状態８１のフレームｔ上の画素が、次の時刻のフレームｔ＋１において、どの位置に移動するかを検出し、その動きを、状態８２のフレームｔ上に示されるように、各画素に対応する動きベクトルとして出力する。この２フレーム間の動きベクトルの検出方法には、ブロックマッチング法または勾配法などが用いられる。なお、このとき、画素に複数の動きベクトルが検出された場合、ベクトル検出部５２は、各動きベクトルについて、図５を参照して後述する評価値を求め、その評価値に基づいて動きベクトルを選択する。
【００４６】
状態８２は、ベクトル割付部５４に入力される、フレームｔおよびフレームｔ＋１の状態を表している。状態８２において、フレームｔの各画素の矢印は、ベクトル検出部５２により検出された動きベクトルを表している。
【００４７】
ベクトル割付部５４は、状態８２のフレームｔの各画素に対して検出された動きベクトルを、次のフレームｔ＋１まで延長させ、予め設定されている時間位相（例えば、図３のｔ＋０．４）にある内挿フレームＦ上のどの位置を通過するかを求める。これは、フレームｔおよびフレームｔ＋１の間が一定動きであると仮定すると、動きベクトルが内挿フレームＦを通過した点が、そのフレームでの画素位置となるためである。したがって、ベクトル割付部５４は、この通過する動きベクトルを、状態８３の内挿フレームＦ上の近傍４画素に割り付ける。また、このとき、内挿フレームの画素によっては、動きベクトルが存在しない場合、あるいは、複数の動きベクトルが、割付候補となりうる場合がある。後者のような場合には、ベクトル割付部５４は、ベクトル検出部５２と同様に、各動きベクトルについての評価値を求め、その評価値に基づいて割り付ける動きベクトルを選択する。
【００４８】
状態８３は、割付補償部５７に入力される、フレームｔおよびフレームｔ＋１、並びに動きベクトルが割り付けられた内挿フレームＦの状態を表している。状態８３の内挿フレームＦにおいては、ベクトル割付部５４により動きベクトルが割り付けられている画素と、動きベクトルが割り付けられなかった画素が示されている。
【００４９】
割付補償部５７は、状態８３の動きベクトルが割り付けられていない画素に対して、その画素の周辺画素に割り付けられている動きベクトルを用いて補う。これは、ある着目画素の近傍領域が同じ動きであるという仮定が成り立つならば、着目画素の周辺画素の動きベクトルと、その着目画素の動きベクトルは似たものであるからである。これにより、動きベクトルが割り付けられなかった画素にも、ある程度正確な動きベクトルが与えられ、状態８４の内挿フレームＦ上のすべての画素に動きベクトルが割り付けられる。
【００５０】
割付補償部５７においても、複数の周辺画素の動きベクトルが候補として存在するため、ベクトル割付部５４と同様に、各動きベクトルについての評価値を求め、その評価値に基づいて割り付ける動きベクトルが選択される。なお、詳細は図２２以降に後述するが、この場合、評価値としては、動きベクトルについての評価値に、さらに、着目画素の位置と、候補となる動きベクトルが割り付けられている画素の位置の距離に応じた重みが付けられたものが用いられる。
【００５１】
状態８４は、画像補間部５８に入力される、フレームｔおよびフレームｔ＋１、並びに、すべての画素に動きベクトルが割り付けられた内挿フレームＦの状態を表している。これらのすべての画素に割り付けられた動きベクトルにより、画像補間部５８は、内挿フレームＦ上の画素と、２枚のフレームｔおよびフレームｔ＋１の画素の位置関係を決定することができる。したがって、画像補間部５８は、内挿フレームＦ上に割り付けられた動きベクトルと、フレームｔおよびフレームｔ＋１の画素値を用いて、状態８５の内挿フレームＦの黒点に示されるように、内挿フレームＦ上の画素値を補間生成する。そして、画像補間部５８は、生成された内挿フレームを出力し、その次に、必要に応じて、フレームｔ＋１を出力することにより、６０Ｐ信号の画像を、図示せぬ後段に出力する。
【００５２】
次に、図５を参照して、本発明に係る信号処理装置１において用いられる動きベクトルの評価値を説明する。図４を参照して上述したように、信号処理装置１の各部（ベクトル検出部５２、ベクトル割付部５４、および割付補償部５７）において、後段の処理に最適な動きベクトルが選択される。このとき、信号処理装置１の各部においては、動きベクトルに対する評価値として、２つのフレームの注目するベクトル量分ずらしたブロック間の相関値を表す差分絶対値和（ＤＦＤ(Displaced Frame Difference)）が用いられる。
【００５３】
図５の例においては、時刻ｔのフレームｔ上の画素位置ｐを中心としたｍ×ｎのブロック、および、時刻ｔ＋１のフレームｔ＋１上の画素位置ｐから注目する動きベクトルｖのベクトル量分ずらした画素位置ｐ＋ｖを中心としたｍ×ｎのブロックの２つのブロックが示されている。これら２つのブロック間において求められる差分絶対値和ＤＦＤt（ｐ）は、次の式（１）で表される。
【００５４】
【数１】
2007110461.tif 000003
【００５５】
ここで、Ｆt（ｐ）は、時刻ｔにおける画素位置ｐの輝度値を表しており、ｍ×ｎは、差分絶対値和を求めるためのＤＦＤ演算範囲（ブロック）を表している。この差分絶対値和は、２つのフレームにおけるＤＦＤ演算範囲（ブロック）間の相関値を表しているため、一般的には、この差分絶対値和が小さいほどフレーム間のブロックの波形が一致しており、差分絶対値和が小さいほど、動きベクトルｖの信頼度が高いと判定される。これにより、この差分絶対値和は、複数の候補の中から、最も確からしい動きベクトルを選ぶ場合などに用いられる。
【００５６】
したがって、以降、信号処理装置１の各部（ベクトル検出部５２、ベクトル割付部５４、および割付補償部５７）においては、動きベクトルが選択される場合の評価値として、特に言及しない場合には、差分絶対値和（以下、評価値ＤＦＤと称する）が用いられることとする。
【００５７】
次に、図６のフローチャートを参照して、信号処理装置１のフレーム周波数を変換する処理を説明する。
【００５８】
ステップＳ１において、ベクトル検出部５２は、時刻ｔ＋１の入力画像のフレームｔ＋１と、フレームメモリ５１の入力画像の１つ前の時刻ｔのフレームｔの画素値を入力する。なお、このとき、ベクトル割付部５４、割付補償部５７および画像補間部５８も、時刻ｔ＋１の入力画像のフレームｔ＋１と、フレームメモリ５１の入力画像の１つ前の時刻ｔのフレームｔの画素値を入力する。
【００５９】
ステップＳ２において、ベクトル検出部５２は、動きベクトル検出処理を実行する。すなわち、ベクトル検出部５２は、フレームメモリ５１上のフレームｔの着目ブロックと、入力画像である次のフレームｔ＋１の対象ブロックの間で動きベクトルを検出し、検出した動きベクトルを、検出ベクトルメモリ５３に記憶し、ステップＳ３に進む。この２フレーム間の動きベクトルの検出方法には、勾配法またはブロックマッチング法などが用いられる。
【００６０】
また、動きベクトルの候補が複数ある場合には、各動きベクトルに対して、評価値ＤＦＤが求められ、求められた評価値ＤＦＤに基づいた信頼度の高い動きベクトルが検出される。すなわち、この場合、動きベクトルを検出する着目ブロックにおいて、最も確からしい動きベクトルが選択され、検出される。ステップＳ２における、動きベクトル検出処理の詳細は、図１２を参照して後述する。
【００６１】
ステップＳ３において、ベクトル割付部５４は、ベクトル割付処理を実行する。すなわち、ベクトル割付部５４は、ステップＳ３において、フレームｔ上において求められた動きベクトルを、割付ベクトルメモリ５５上の、補間する内挿フレーム上の着目画素に割り付け、動きベクトルが割り付けられた画素の割付フラグメモリ５６の割付フラグを１(True)に書き換える。例えば、Trueである割付フラグは、対応する画素に動きベクトルが割り付けられていることを示し、Falseである割付フラグは、対応する画素に動きベクトルが割り付けられていないことを示す。
【００６２】
なお、各画素において、動きベクトルの候補が複数ある場合には、各動きベクトルに対して、評価値ＤＦＤが求められ、求められた評価値ＤＦＤに基づいた信頼度の高い動きベクトルが割り付けられる。すなわち、この場合、動きベクトルを割り付ける着目画素において、最も確からしい動きベクトルが選択され、割り付けられる。ステップＳ３における、ベクトル割付処理の詳細は、図１９を参照して後述する。
【００６３】
ステップＳ４において、割付補償部５７は、割付補償処理を実行する。すなわち、割付補償部５７は、ステップＳ４において、割付フラグメモリ５６の割付フラグを参照し、ベクトル割付部５４により動きベクトルが割り付けられなかった着目画素に対して、その着目画素の周辺画素の動きベクトルを補い、割付ベクトルメモリ５５の内挿フレーム上に割り付ける。このとき、割付補償部５７は、動きベクトルを補い、割付けた着目画素の割付フラグを１(True)に書き換える。
【００６４】
なお、周辺画素の動きベクトルが複数ある場合には、各動きベクトルに対して、評価値が求められ、求められた評価値に基づいた、信頼度の高い動きベクトルが割り付けられる。このとき、評価値としては、各動きベクトルに対して求められた評価値ＤＦＤに、着目画素の位置と、候補となる動きベクトルが割り付けられている画素の位置の距離に応じた重みを付けて演算されたものが用いられる。これにより、動きベクトルを割り付ける着目画素において、最も確からしい動きベクトルが選択され、割り付けられる。ステップＳ４における、割付補償処理の詳細は、図３３を参照して後述する。
【００６５】
ステップＳ５において、画像補間部５８は、画像補間処理を実行する。すなわち、画像補間部５８は、ステップＳ５において、割付ベクトルメモリ５５の内挿フレームに割り付けられた動きベクトルと、フレームｔおよびフレームｔ＋１の画素値を用いて、内挿フレームの画素値を補間生成する。ステップＳ５における、画像補間処理の詳細は図８を参照して後述する。
【００６６】
画像補間部５８は、ステップＳ６において、６０Ｐ信号の画像を出力し（生成された内挿フレームを出力し）、その次に、必要に応じて、フレームｔ＋１を出力することにより、６０Ｐ信号の画像を、図示せぬ後段に出力する。
【００６７】
ステップＳ７において、ベクトル検出部５２は、すべてのフレームの処理が終了したか否かを判定し、すべてのフレームの処理がまだ終了していないと判定した場合、処理は、ステップＳ１に戻り、それ以降の処理が繰り返される。一方、ベクトル検出部５２は、ステップＳ７において、すべてのフレームの処理が終了したと判定した場合、フレーム周波数を変換する処理を終了させる。
【００６８】
以上のように、信号処理装置１においては、基本的に、動きベクトルを検出する処理、検出した動きベクトルを内挿フレーム上の画素に割り付ける処理、動きベクトルが割り付けられていない内挿フレームの画素に動きベクトルを補償する処理、および、割り付けられた動きベクトルと２つのフレームの画素値から内挿フレームを補間生成する処理の４つの処理が行われる。
【００６９】
なお、このとき、信号処理装置１は、各処理において、評価値ＤＦＤ（差分絶対値和）、または、評価値ＤＦＤに所定の重みが付けられた評価値に基づく、より信頼度の高い動きベクトルを選択し、後段に出力する。したがって、信号処理装置１においては、動きが破綻することなどが抑制され、より精度のよい画像を生成することができる。以下、それぞれの処理、および、それを実現する構成の詳細について順に説明する。
【００７０】
まず、画像補間部５８の構成の詳細について説明する。
【００７１】
図７は、画像補間部５８の構成を示すブロック図である。図７に構成を示す画像補間部５８は、割付ベクトルメモリ５５の内挿フレームに割り付けられた動きベクトルと、フレームｔおよびフレームｔ＋１の画素値を用いて、内挿フレームの画素値を補間生成し、６０Ｐ信号の画像を出力する処理を行う。
【００７２】
図７の例において、時刻ｔの画像のフレームｔは、空間フィルタ９２−１に入力され、時刻ｔ＋１の画像のフレームｔ＋１は、空間フィルタ９２−２およびバッファ９５に入力される。
【００７３】
補間制御部９１は、割付ベクトルメモリ５５の内挿フレームの画素を選択し、選択した画素に割り付けられている動きベクトルに基づいて、内挿フレーム上の画素と、２枚のフレームｔおよびフレームｔ＋１の画素との位置関係（空間シフト量）をそれぞれ求める。すなわち、補間制御部９１は、内挿フレームの画素を基準に、その動きベクトルで対応付けられるフレームｔ上の位置と、内挿フレームの画素に対応するフレームｔ上の画素の位置から、それらの空間シフト量を求め、求めた空間シフト量を空間フィルタ９２−１に供給する。同様に、補間制御部９１は、内挿フレームの画素を基準に、その動きベクトルで対応付けられるフレームｔ＋１上の位置と、内挿フレームの画素に対応するフレームｔ＋１上の画素の位置から、それらの空間シフト量を求め、求めた空間シフト量を空間フィルタ９２−２に供給する。
【００７４】
また、補間制御部９１は、予め設定されている内挿フレームの時間位相（時刻）に基づいて、フレームｔとフレームｔ＋１の間における補間重みを求め、求めた補間重みを、乗算器９３−１および９３−２に設定する。例えば、内挿フレームの時刻が、フレームｔ＋１の時刻ｔ＋１から「ｋ」離れた時刻で、かつ、フレームｔの時刻ｔから「１−ｋ」離れた時刻である場合（すなわち、内挿フレームが時刻ｔと時刻ｔ＋１を「１−ｋ」：「ｋ」に内分する時刻に生成される場合）、補間制御部９１は、乗算器９３−１に「１−ｋ」の補間重みを設定し、乗算器９３−２に「ｋ」の補間重みを設定する。
【００７５】
空間フィルタ９２−１および９２−２は、例えば、キュービックフィルタなどにより構成される。空間フィルタ９２−１は、入力されるフレームｔ上の画素の画素値と、補間制御部９１から供給される空間シフト量に基づいて、内挿フレームの画素に対応する、フレームｔ上の画素値を求め、求めた画素値を乗算器９３−１に出力する。空間フィルタ９２−２は、入力されるフレームｔ＋１上の画素の画素値と、補間制御部９１から供給される空間シフト量に基づいて、内挿フレームの画素に対応する、フレームｔ＋１上の画素値を求め、求めた画素値を乗算器９３−２に出力する。
【００７６】
なお、内挿フレームの画素の位置が、フレームｔまたはフレームｔ＋１上の画素の位置と一致しない場合（すなわち、内挿フレームの画素の位置が、フレームｔまたはフレームｔ＋１において画素以下成分である場合）、空間フィルタ９２−１および９２−２は、フレームｔまたはフレームｔ＋１における内挿フレームの画素の位置の周辺４画素の画素値を用いて、周辺４画素の距離の逆比の和を求めることにより、内挿フレームの画素に対応するフレーム上の画素値を求める。すなわち、画素以下位置の画素値は、周辺４画素との距離を基にした線形補間で値が求められる（その詳細は図１８を参照して後述する）。
【００７７】
乗算器９３−１は、空間フィルタ９２−１から入力されるフレームｔ上の画素値に、補間制御部９１により設定された補間重み「１−ｋ」を乗算し、重み付けされた画素値を、加算器９４に出力する。乗算器９３−２は、空間フィルタ９２−２から入力されるフレームｔ＋１上の画素値に、補間制御部９１により設定された補間重み「ｋ」を乗算し、重み付けされた画素値を、加算器９４に出力する。
【００７８】
加算器９４は、乗算器９３−１から入力される画素値と、乗算器９３−２から入力される画素値を加算することにより、内挿フレームの画素の画素値を生成し、生成された内挿フレームの画素値を、バッファ９５に出力する。バッファ９５は、入力されたフレームｔ＋１をバッファしている。バッファ９５は、生成された内挿フレームを出力し、その次に、予め設定されている６０Ｐフレームの時間位相（時刻）に基づいて、必要に応じて、バッファしているフレームｔ＋１を出力することにより、６０Ｐ信号の画像を、図示せぬ後段に出力する。
【００７９】
以上のように構成される画像補間部５８の画像補間処理の詳細を、図８のフローチャートを参照して説明する。
【００８０】
補間制御部９１は、ステップＳ５１において、処理する内挿フレームの時間位相に基づいて、フレームｔとフレームｔ＋１の間における内挿フレームの補間重み（例えば、「ｋ」および「１−ｋ」）を求め、求められた補間重みを、乗算器９３−１および９３−２にそれぞれ設定する。補間制御部９１は、ステップＳ５２において、割付ベクトルメモリ５５の内挿フレームの画素を選択する。なお、内挿フレーム上の画素は、フレームの左上の画素からラスタスキャン順に選択される。
【００８１】
補間制御部９１は、ステップＳ５３において、選択した画素に割り付けられている動きベクトルに基づいて、内挿フレーム上の画素と、２枚のフレームｔおよびフレームｔ＋１の画素との位置関係（空間シフト量）をそれぞれ求め、求められた空間シフト量を、それぞれ空間フィルタ９２−１および９２−２に供給する。具体的には、補間制御部９１は、ステップＳ５３において、内挿フレームの画素を基準に、その動きベクトルで対応付けられるフレームｔ上の位置と、内挿フレームの画素に対応するフレームｔ上の画素の位置から、それらの空間シフト量を求め、求めた空間シフト量を空間フィルタ９２−１に供給する。同様に、補間制御部９１は、内挿フレームの画素を基準に、その動きベクトルで対応付けられるフレームｔ＋１上の位置と、内挿フレームの画素に対応するフレームｔ＋１上の画素の位置から、それらの空間シフト量を求め、求めた空間シフト量を空間フィルタ９２−２に供給する。
【００８２】
時刻ｔの画像のフレームｔの画素値は、空間フィルタ９２−１に入力され、時刻ｔ＋１の画像のフレームｔ＋１の画素値は、空間フィルタ９２−２に入力されている。ステップＳ５４において、空間フィルタ９２−１および９２−２は、入力されるフレームｔおよびｔ＋１上の画素の画素値と、補間制御部９１から供給される空間シフト量に基づいて、内挿フレームの画素に対応する、各フレーム上の画素値を求め、求めた画素値を乗算器９３−１および９３−２にそれぞれ出力する。
【００８３】
乗算器９３−１および９３−２は、ステップＳ５５において、空間フィルタ９２−１または９２−２から入力される各フレーム上の画素値に、補間制御部９１により設定された補間重みを重み付けし、重み付けされた画素値を、加算器９４に出力する。すなわち、乗算器９３−１は、空間フィルタ９２−１から入力されるフレームｔ上の画素値に、補間制御部９１により設定された補間重み「１−ｋ」を乗算し、重み付けされた画素値を、加算器９４に出力する。乗算器９３−２は、空間フィルタ９２−２から入力されるフレームｔ＋１上の画素値に、補間制御部９１により設定された補間重み「ｋ」を乗算し、重み付けされた画素値を、加算器９４に出力する。
【００８４】
加算器９４は、ステップＳ５６において、乗算器９３−１により重み付けされた画素値と、乗算器９３−２により重み付けされた画素値を加算することにより、内挿フレームの画素の画素値を生成し、生成された画素値を、バッファ９５に出力する。補間制御部９１は、ステップＳ５７において、内挿フレーム上のすべての画素についての処理が終了したか否かを判定し、内挿フレーム上のすべての画素についての処理が終了していないと判定した場合、処理は、ステップＳ５２に戻り、それ以降の処理が繰り返される。補間制御部９１は、ステップＳ５７において、内挿フレーム上のすべての画素についての処理が終了したと判定した場合、画像補間処理を終了する。
【００８５】
以上のように、内挿フレームに割り付けられた動きベクトルに基づいて、内挿フレームの画素値が生成され、上述した図６のステップＳ６において、バッファ９５により、内挿フレームが出力され、その次に、必要に応じて、フレームｔ＋１が出力されることにより、６０Ｐ信号の画像が、後段に出力される。したがって、内挿フレームの画素に、最も確からしい動きベクトルが割り付くので、精度のよい内挿フレームを生成することができる。
【００８６】
次に、ベクトル検出部５２の構成の詳細について説明する。
【００８７】
図９は、ベクトル検出部５２の構成を示すブロック図である。図９に構成を示すベクトル検出部５２は、入力される時刻ｔの画像のフレームｔと、時刻ｔ＋１の画像のフレームｔ＋１を用いて、フレームｔ上の動きベクトルを検出する。この動きベクトルを検出する処理は、複数の画素からなる所定のブロック毎に実行される。
【００８８】
初期ベクトル選択部１０１は、所定のブロック毎に、過去の動きベクトルの検出結果から求められる信頼度が高い動きベクトルを、勾配法に用いられる初期値となる初期ベクトルＶ０として、反復勾配法演算部１０３に出力する。具体的には、初期ベクトル選択部１０１は、検出ベクトルメモリ５３に記憶される過去に求められた周辺のブロックの動きベクトルや、シフト初期ベクトルメモリ１０７に記憶されるシフト初期ベクトルを、初期ベクトルの候補ベクトルとして選択する。そして、初期ベクトル選択部１０１は、フレームｔとフレームｔ＋１を用いて、候補ベクトルの評価値ＤＦＤを求め、候補ベクトルの中から、求められた評価値ＤＦＤに基づく、最も信頼度が高いものを選択し、初期ベクトルＶ０として出力する。
【００８９】
プリフィルタ１０２−１および１０２−２は、ローパスフィルタやガウシアンフィルタにより構成され、それぞれ、入力される画像のフレームｔおよびフレームｔ＋１のノイズ成分を除去し、反復勾配法演算部１０３に出力する。
【００９０】
反復勾配法演算部１０３は、初期ベクトル選択部１０１から入力された初期ベクトルＶ０と、プリフィルタ１０２−１および１０２−２を介して入力されるフレームｔおよびフレームｔ＋１を用いて、所定のブロック毎に、勾配法により、動きベクトルＶｎを算出する。反復勾配法演算部１０３は、初期ベクトルＶ０と、算出された動きベクトルＶｎをベクトル評価部１０４に出力する。また、反復勾配法演算部１０３は、ベクトル評価部１０４による動きベクトルの評価結果に基づいて、勾配法の演算を繰り返し行い、動きベクトルＶｎを算出する。
【００９１】
ベクトル評価部１０４は、反復勾配法演算部１０３からの動きベクトルＶｎ−１（または初期ベクトルＶ０）と、動きベクトルＶｎの評価値ＤＦＤを求め、求められた評価値ＤＦＤに基づいて、反復勾配法演算部１０３を制御し、勾配法の演算を繰り返し実行させ、最終的に、評価値ＤＦＤに基づく、信頼性の高いものを選択し、動きベクトルＶとして、検出ベクトルメモリ５３に記憶する。このとき、ベクトル評価部１０４は、動きベクトルＶとともに、その動きベクトルＶに対して求められた評価値ＤＦＤを、シフト初期ベクトル割付部１０５に供給する。
【００９２】
シフト初期ベクトル割付部１０５は、ベクトル評価部１０４より動きベクトルＶおよびその評価値ＤＦＤが供給されると、次のフレーム上の着目ブロックを通過する動きベクトルを、その着目ブロックにシフトさせた、シフト初期ベクトルとして設定する。換言すると、シフト初期ベクトル割付部１０５は、動きベクトルＶの終点のブロックと同じ位置の次のフレーム上の着目ブロックを始点とした、動きベクトルＶと同じ大きさで同じ向きの動きベクトルを、シフト初期ベクトルとして設定する。そして、シフト初期ベクトル割付部１０５は、設定したシフト初期ベクトルを、着目ブロックに対応させて、シフト初期ベクトルメモリ１０７に割り付ける。
【００９３】
具体的には、シフト初期ベクトル割付部１０５は、シフト初期ベクトルとして割り付けられた動きベクトルＶの評価値ＤＦＤを、着目ブロックに対応させて、評価値メモリ１０６に記憶させておき、同じ着目ブロックを通過する（すなわち、着目ブロックと同じ位置の過去のフレームのブロックを終点とする）他の動きベクトルＶの評価値ＤＦＤと比較する。そして、シフト初期ベクトル割付部１０５は、評価値ＤＦＤに基づく、信頼度が高いとされた動きベクトルＶを、着目ブロックにシフトさせ、着目ブロックのシフト初期ベクトルとして、シフト初期ベクトルメモリ１０７に割り付ける。
【００９４】
次に、ベクトル検出部５２において用いられる勾配法の原理について説明する。まず、動画像中において、水平、垂直、時間軸を用いた座標（ｘ，ｙ，ｔ）で表される画素の輝度値をｇ（ｘ，ｙ，ｔ）とする。ここで、着目画素（ｘ0，ｙ0，ｔ0）が、微小時間中に、（ｄｘ，ｄｙ，ｄｔ）だけ変位したとき、水平、垂直、時間軸の勾配（差分差）を、それぞれｇｘ（ｘ0，ｙ0，ｔ0），ｇｙ（ｘ0，ｙ0，ｔ0），ｇｔ（ｘ0，ｙ0，ｔ0）と表すと、変位後の画素の輝度値は、Taylor展開近似を用いて、次の式（２）で表される。
【００９５】
【数２】
2007110461.tif 000004
【００９６】
ここで、動画像中のある着目画素が１フレーム後に水平ｖｘ，垂直ｖｙだけ移動した場合（以降、（ｖｘ，ｖｙ）と表す）、その画素の輝度値は、次の式（３）で表される。
【００９７】
【数３】
2007110461.tif 000005
【００９８】
式（２）を式（３）に代入すると、次の式（４）で表される。
【００９９】
【数４】
2007110461.tif 000006
【０１００】
式（４）は、ｖｘ，ｖｙの２変数の式であるので、着目１画素に対する単独の式では、その解を求めることができない。そこで、次に説明するように、着目画素の周辺領域であるブロックを１つの処理単位として考え、ブロック（周辺領域）内の全画素が同じ動き（ｖｘ，ｖｙ）をすると仮定し、各画素について同様の式を立てる。仮定が前提となるが、２変数に対して周辺画素の個数の式が得られる。したがって、それらの式を連立させ、ブロック内全画素の動き補償フレーム差分の自乗和が最小になるような（ｖｘ，ｖｙ）を求める。
【０１０１】
画素（ｘ，ｙ，ｔ）が１フレーム間に（ｖｘ，ｖｙ）だけ移動したとき、その動き補償フレーム間差分dは、次の式（５）で表される。
【０１０２】
【数５】
2007110461.tif 000007
【０１０３】
式（５）において、Δｘ=ｇｘ（ｘ，ｙ，ｔ）であり、水平方向の勾配を表し、Δｙ＝ｇｙ（ｘ，ｙ，ｔ）であり、垂直方向の勾配を表し、Δｔ＝ｇｔ（ｘ，ｙ，ｔ）であり、時間方向の勾配を表す。これらを用いて、動き補償フレーム間差分の自乗和をＥとすると、式（６）で表される。
【０１０４】
【数６】
2007110461.tif 000008
【０１０５】
ここで、Ｅが最小となる（ｖｘ，ｖｙ）は、各変数における偏微分値が０になるとき、すなわち、δＥ／δｖｘ＝δＥ／δｖｙ＝０の条件が成立するときなので、式（６）から、次の式（７）および式（８）となる。
【０１０６】
【数７】
2007110461.tif 000009
【０１０７】
【数８】
2007110461.tif 000010
【０１０８】
これらの式（７）および式（８）から、求めたい動きである（ｖｘ，ｖｙ）は、次の式（９）を演算することにより求めることができる。
【０１０９】
【数９】
2007110461.tif 000011
【０１１０】
ここで、図１０を参照して、具体的に説明する。図１０の例において、矢印Ｘは、水平方向を示しており、矢印Ｙは、垂直方向を示している。また、矢印Ｔは、図中、右奥の時刻ｔのフレームｔから、左手前の時刻ｔ＋１のフレームｔ＋１への時間の経過方向を示している。なお、図１０の例においては、各フレームは、着目画素ｐの周辺領域（ブロック）として、勾配法演算に用いられる８画素×８画素の領域のみ示されている。
【０１１１】
フレームｔにおいて、左上の画素から下に５番目、右に５番目の画素である着目画素ｐの動きベクトルＶ（ｖｘ，ｖｙ）を、上述した勾配法を用いて求める場合、動きベクトルＶ（ｖｘ，ｖｙ）は、着目画素ｐのｘ，ｙ方向のそれぞれについて求められる隣接画素ｐｘおよびｐｙとの輝度の差分差（すなわち、勾配）ΔｘおよびΔｙ、フレームｔ＋１において求められる着目画素ｐの同位相に位置する画素ｑとの時間方向の輝度の差分差（勾配）Δｔを、着目画素ｐの周辺領域（８画素×８画素）のすべての画素について求め、それらの差分差を、式（９）を用いて演算することにより、求めることができる。
【０１１２】
すなわち、勾配法とは、２フレーム間において、勾配Δｘ，Δｙ，およびΔｔを求め、求められたΔｘ，Δｙ，およびΔｔから、差分自乗和を用いて、統計的に、動きベクトルＶ（ｖｘ，ｖｙ）を算出するものである。
【０１１３】
一般的に、このような勾配法を用いた動きベクトル検出方法においては、微小動きに対して精度の高い結果が得られる。しかしながら、実際の動画像の中で動きを求めようとするとする場合、この勾配法は、その動き量が大きすぎるため実用的とはいえない。これに対応して、この勾配法を複数回反復する方法が考えられる。勾配法を反復して実行することにより、各演算で求められる動き量が収束するため、徐々に正しい動きが求められる。
【０１１４】
しかしながら、ただ、勾配法を反復するだけでは、リアルタイム処理を行おうとした場合、演算時間の面から実用的ではない。そこで、ベクトル検出部５２においては、過去フレームと現在フレームでの周辺画素の動きに基づいて求められる初期ベクトルを、初期値として用いることで、勾配法の繰り返し回数を軽減している。すなわち、動きの起点となる着目画素から、初期ベクトルが指す先へオフセットを予め加えることで大まかな動きを算出し、オフセットが加えられたその位置から勾配法を用いた演算を行うようにすれば、画素以下動きを含めた微調整を行うことができる。これにより、演算時間を増大させることなく、精度のよい動きベクトルを検出することができる。
【０１１５】
図１１は、初期ベクトルを用いて実行される反復勾配法について具体的に説明する図である。図１１の例においては、矢印Ｔは、図中、左手前の時刻ｔのフレームｔから、右奥の時刻ｔ＋１のフレームｔ＋１への時間の経過を示している。なお、各画素ｐ，ｑ０，ｑ１，ｑ２，およびｑ３を中心としたブロックは、その画素の、勾配法演算に用いられる周辺領域（ブロック）を表している。
【０１１６】
図１１の例の場合、フレームｔにおける着目画素ｐに対して、フレームｔ＋１においては、着目画素ｐの同位相に位置する画素ｑ０ではなく、予め求めておいた初期ベクトルｖ０をオフセット（移動）して計算した位置（画素）ｑ１を開始点として１回目の勾配法演算が行われ、その結果、動きベクトルｖ１が得られる。
【０１１７】
次に、画素ｑ０からｖ０＋ｖ１をオフセットして計算した位置（画素）ｑ２を開始点として、２回目の勾配法演算が行われ、その結果、動きベクトルｖ２が得られる。これにより、最終的に動きベクトルＶは、式（１０）として求められる。
【０１１８】
【数１０】
2007110461.tif 000012
【０１１９】
以上のようにして、初期ベクトルを用いて、反復勾配法の演算を実行することにより、演算時間を短縮させつつ、精度の高い動きベクトルを求めることができる。
【０１２０】
次に、図１２のフローチャートを参照して、動きベクトル検出処理の詳細について説明する。ベクトル検出部５２には、入力される時刻ｔの画像のフレームｔと、時刻ｔ＋１の画像のフレームｔ＋１が入力される。
【０１２１】
初期ベクトル選択部１０１は、ステップＳ１０１において、フレームｔ上の処理の対象となるブロックを、着目ブロックとして選択する。なお、フレーム上においては、左上のブロックからラスタスキャン順に処理が実行される。
【０１２２】
ステップＳ１０２において、初期ベクトル選択部１０１は、初期ベクトル選択処理を実行する。初期ベクトル選択部１０１は、ステップＳ１０１において、所定のブロック毎に、過去の動きベクトルの検出結果から、信頼度が高い動きベクトルを選択し、選択した動きベクトルを、勾配法に用いられる初期値となる初期ベクトルＶ０として、反復勾配法演算部１０３に出力する。
【０１２３】
すなわち、初期ベクトル選択部１０１は、過去の勾配法演算評価処理（後述するステップＳ１０３）において求められ、検出ベクトルメモリ５３に記憶された周辺ブロックの動きベクトルや、過去のシフト初期ベクトル割付処理（後述するステップＳ１０４）においてシフト初期ベクトルメモリ１０７に記憶されたシフト初期ベクトルを、初期ベクトルの候補ベクトルとして選択する。そして、初期ベクトル選択部１０１は、フレームｔとフレームｔ＋１を用いて、候補ベクトルの評価値ＤＦＤを求め、候補ベクトルの中から、求められた評価値ＤＦＤに基づいた信頼度が高いものを選択し、選択された候補ベクトルを、初期ベクトルＶ０として出力する。
【０１２４】
ステップＳ１０３において、反復勾配法演算部１０３およびベクトル評価部１０４は、反復勾配法演算評価処理を実行する。具体的には、ステップＳ１０３において、反復勾配法演算部１０３は、初期ベクトル選択部１０１から入力された初期ベクトルＶ０と、プリフィルタ１０２−１および１０２−２を介して入力されるフレームｔおよびフレームｔ＋１を用いて、ベクトル評価部１０４による動きベクトルの評価結果に基づいて、勾配法の演算を繰り返し行い、動きベクトルＶｎを算出する。
【０１２５】
また、ベクトル評価部１０４は、反復勾配法演算部１０３からの動きベクトルＶｎ−１と、動きベクトルＶｎの評価値ＤＦＤを求め、求められた評価値ＤＦＤに基づく、最も信頼性の高いものを選択し、動きベクトルＶとして、検出ベクトルメモリ５３に記憶する。このとき、ベクトル評価部１０４は、動きベクトルＶとともに、その動きベクトルＶに対して求めた評価値ＤＦＤを、シフト初期ベクトル割付部１０５に供給する。
【０１２６】
ステップＳ１０４において、シフト初期ベクトル割付部１０５は、シフト初期ベクトル割付処理を実行する。シフト初期ベクトル割付部１０５は、ベクトル評価部１０４より動きベクトルＶおよびその評価値ＤＦＤが供給されると、ステップＳ１０４において、次のフレーム上の着目ブロックを通過する動きベクトルを、その着目ブロックにシフトさせた、シフト初期ベクトルとして設定する。
【０１２７】
すなわち、換言すると、動きベクトルＶの終点のブロックと同じ位置の次のフレーム上の着目ブロックを始点とした、動きベクトルＶと同じ大きさで同じ向きの動きベクトルが、シフト初期ベクトルとして設定される。そして、シフト初期ベクトル割付部１０５は、設定したシフト初期ベクトルを、着目ブロックに対応させて、シフト初期ベクトルメモリ１０７に割り付ける。
【０１２８】
なお、具体的には、シフト初期ベクトル割付部１０５は、シフト初期ベクトルとして割り付けられた動きベクトルＶの評価値ＤＦＤを、着目ブロックに対応させて、評価値メモリ１０６に記憶させておき、同じ着目ブロックを通過する（すなわち、着目ブロックと同じ位置の過去のフレームのブロックを終点とする）他の動きベクトルＶの評価値ＤＦＤと比較し、評価値ＤＦＤに基づく、信頼度が高いとされた動きベクトルＶを、そのブロックにシフトさせてシフト初期ベクトルと設定し、シフトさせたブロックに対応させて、シフト初期ベクトルメモリ１０７に割り付ける。
【０１２９】
ステップＳ１０５において、初期ベクトル選択部１０１は、フレームｔにおいて、すべてのブロックの処理が終了したか否かを判定し、すべてのブロックの処理が終了していないと判定した場合、処理は、ステップＳ１０１に戻り、それ以降の処理が繰り返される。また、ステップＳ１０５において、初期ベクトル選択部１０１は、フレームｔにおいて、すべてのブロックの処理が終了したと判定した場合、すなわち、フレームｔ上のすべてのブロックにおいて、動きベクトルＶが検出されたと判定し、動きベクトル検出処理を終了させる。
【０１３０】
以上のように、過去に検出された動きベクトルから初期ベクトルが選択され、選択された初期ベクトルに基づいて、反復勾配法の演算が用いられて、繰り返し動きベクトルが算出され、算出された動きベクトルの中から、評価値ＤＦＤに基づく、信頼度が高い（すなわち、最も確からしい）動きベクトルが検出される。この結果、検出ベクトルメモリ５３に、フレームｔ上のすべてのブロックに対応する動きベクトルＶが記憶される。
【０１３１】
次に、ベクトル割付部５４の構成の詳細について説明する。
【０１３２】
図１３は、ベクトル割付部５４の構成を示すブロック図である。図１３に構成を示すベクトル割付部５４は、２４Ｐ信号の入力される時刻ｔの画像のフレームｔと、時刻ｔ＋１の画像のフレームｔ＋１を用いて、フレームｔ上において検出された動きベクトルを、割付ベクトルメモリ５５上の、補間する６０Ｐ信号の内挿フレーム上の画素に割り付ける処理を行う。
【０１３３】
図１３の例において、時刻ｔの画像のフレームｔと、時刻ｔ＋１の画像のフレームｔ＋１は、画素情報演算部７０１、評価値演算部７０２、および着目画素差分演算部７０３に入力される。
【０１３４】
画素情報演算部７０１は、検出ベクトルメモリ５３のフレームｔ上の画素に検出された動きベクトルを、左上の画素からラスタスキャン順に取得し、取得した動きベクトルを、次の時刻のフレームｔ＋１方向に延ばし、延ばした動きベクトルと、内挿フレームとの交点を算出する。そして、画素情報演算部７０１は、算出された動きベクトルと内挿フレームとの交点から、内挿フレーム上において、その動きベクトルの割付対象となる画素（以下、割付対象画素と称する）を設定し、動きベクトルおよび割付対象画素の位置の情報を、ベクトル選択部７０５に出力する。
【０１３５】
また、画像情報演算部７０１は、割付対象画素と、動きベクトルで対応付けられるフレームｔの位置Ｐおよびフレームｔ＋１上の位置Ｑを算出し、算出されたフレームｔおよびフレームｔ＋１上の位置情報を、評価値演算部７０２、および着目画素差分演算部７０３に出力する。
【０１３６】
評価値演算部７０２は、画素情報演算部７０１から、割付対象画素と、動きベクトルで対応付けられるフレームｔおよびフレームｔ＋１上の位置情報を入力すると、フレームｔの位置Ｐおよびフレームｔ＋１の位置Ｑの評価値ＤＦＤを演算するため、位置Ｐおよび位置Ｑを中心とした一定範囲のＤＦＤ演算範囲（ｍ×ｎ）をそれぞれ設定し、それらのＤＦＤ演算範囲が画枠内にあるか否かを判定する。評価値演算部７０２は、ＤＦＤ演算範囲が画枠内にあると判定した場合、このＤＦＤ演算範囲を用いて演算することにより、動きベクトルに対する割付対象画素の評価値ＤＦＤを求め、求めた評価値ＤＦＤを、ベクトル評価部７０４に出力する。
【０１３７】
着目画素差分演算部７０３は、画素情報演算部７０１から、割付対象画素と、動きベクトルで対応付けられるフレームｔおよびフレームｔ＋１上の位置情報を入力すると、フレームｔの位置Ｐおよびフレームｔ＋１の位置Ｑを用いて、割付対象画素に対する輝度差分絶対値を求め、求めた輝度差分絶対値を、ベクトル評価部７０４に出力する。
【０１３８】
ベクトル評価部７０４は、画素差分判定部７１１および評価値判定部７１２により構成される。画素差分判定部７１１は、着目画素差分演算部７０３から入力された割付対象画素に対する輝度差分絶対値が所定のしきい値よりも小さいか否かを判定する。
【０１３９】
評価値判定部７１２は、画素差分判定部７１１により着目画素差分演算部７０３から入力された割付対象画素に対する輝度差分絶対値が所定のしきい値よりも小さいと判定された場合に、評価値演算部７０２から入力された割付対象画素の評価値ＤＦＤが、ベクトル選択部７０５が有するＤＦＤテーブルの最小評価値より小さいか否かを判定する。そして、評価値判定部７１２は、割付対象画素の評価値ＤＦＤが、ＤＦＤテーブルの最小評価値より小さいと判定した場合に、割付対象画素が対応する動きベクトルの信頼度が高いと判定し、ベクトル選択部７０５に、割付対象画素の評価値ＤＦＤを出力する。
【０１４０】
ベクトル選択部７０５は、内挿フレーム上の各画素における最小評価値を保持するＤＦＤテーブルを有しており、内挿フレーム上の各画素に対して、０ベクトルを割り付けた場合の評価値ＤＦＤ０を、内挿フレーム上の各画素における最小評価値としてＤＦＤテーブルに予め保持している。ベクトル選択部７０５は、ベクトル評価部７０４からの割付対象画素の評価値ＤＦＤを入力すると、画素情報演算部７０１からの割付対象画素の位置の情報に基づいて、割付フラグメモリ５６のフラグを１(true)に書き換え、割付対象画素のＤＦＤテーブルの最小評価値を、その割付対象画素の評価値ＤＦＤに書き換える。
【０１４１】
また、ベクトル選択部７０５は、画素情報演算部７０１からの割付対象画素の位置の情報に基づいて、割付ベクトルメモリ５５の割付対象画素に、画素情報演算部７０１からの動きベクトルを割り付ける。
【０１４２】
ここで、図１４乃至図１６を参照して、ベクトル割付処理の概念について説明する。
【０１４３】
例えば、２４Ｐ信号上でオブジェクトが速度Ｖで動いており、任意の２フレーム間で、このオブジェクトの動きについて等速仮定が成り立つと仮定した場合に、２４Ｐ信号のフレーム間に、新しくフレームを内挿することを考える。この場合、２４Ｐ信号のオブジェクトから動きベクトルＶを延ばすと、動きベクトルＶと内挿フレームとの交点は、同じオブジェクトであり、同じ速度Ｖを有する。
【０１４４】
したがって、ベクトル検出部５３で検出された２４Ｐ信号のフレーム（以下、内挿フレームに対して、元フレームとも称する）の動きベクトルを、その動きベクトルと、内挿する６０Ｐ信号の内挿フレーム上との交点に割り付けることで、内挿フレーム上の各画素の動きを求めることができる。
【０１４５】
図１４乃至図１６の例においては、２つの２４Ｐ信号の時刻ｔのフレームｔおよび時刻ｔ＋１のフレームｔ＋１の間に挿入された６０Ｐ信号の内挿フレームＦが１次元で示されている。各フレーム上の丸は画素を表している。
【０１４６】
また、図１４乃至図１６の例においては、前段のベクトル検出部５２によりフレームｔの各画素において検出された動きベクトルＶ１、Ｖ２、Ｖ３、およびＶ４が、フレームｔ＋１方向に延ばされている。
【０１４７】
例えば、フレームｔの左側の画素から、フレームｔ＋１の左から２番目の画素近傍への動きベクトルＶ１は、内挿フレームＦ上の左から１番目と２番目の画素の間を通っている。フレームｔの左から２番目の画素から、フレームｔ＋１の左から３番目の画素近傍への動きベクトルＶ２は、内挿フレームＦ上の左から２番目と３番目の画素の間を通っている。フレームｔの左から４番目の画素から、フレームｔ＋１の左から３，４番目の画素近傍への動きベクトルＶ３は、内挿フレームＦ上の左から３番目と４番目の画素の間を通っている。フレームｔの左から５番目の画素から、フレームｔ＋１の左から４，５番目の画素近傍への動きベクトルＶ４は、内挿フレームＦ上の左から４番目と５番目の画素の間を通っている。
【０１４８】
すなわち、図１４に示されるように、内挿フレームＦと動きベクトルとの交点は、必ずしも、内挿フレームＦ上の画素と一致するとは限らず、一致しない場合、動きベクトルは、図１５に示されるように、内挿フレームＦ上の交点の近傍４画素（図１４の例においては２画素）に対して割り付けられる割付候補ベクトルとして、近傍の４画素上にシフト（平行移動）されて、それぞれの画素に対して割り付けられる。
【０１４９】
ここで、内挿フレームＦ上の左から３番目の画素を、画素Ｐとして、画素Ｐを用いて説明する。
【０１５０】
図１５の例の場合、画素Ｐには、内挿フレームＦ上の左から２番目と３番目の画素を通っている動きベクトルＶ２が、画素Ｐ上にシフト（平行移動）されて、割付候補ベクトルＳＶ２として割り付けられており、さらに、内挿フレームＦ上の左から３番目と４番目の画素を通っている動きベクトルＶ３が、画素Ｐ上にシフト（平行移動）されて、割付候補ベクトルＳＶ３として割り付けられている。
【０１５１】
すなわち、図１４を参照して上述したように、元フレームで検出された１つの動きベクトルが、内挿フレームにおいて、近傍４画素に対して割り付けられる候補となることもあるため、画素によっては、図１５の画素Ｐに示されるように、複数の動きベクトルが割付候補ベクトル（割付候補ベクトルＳＶ２およびＳＶ３）となる場合がある。
【０１５２】
この場合、ベクトル割付部５４は、各割付候補ベクトルＳＶ２およびＳＶ３について、内挿フレームＦ上の画素と、その割付候補ベクトルで対応付けられる元フレームｔおよびｔ＋１上の交点を算出し、その交点を用いて、各割付候補ベクトルＳＶ２およびＳＶ３を評価することで、最終的に、図１６に示されるように、割付候補ベクトルＳＶ３を、内挿フレームＦ上の画素Ｐに割り付ける動きベクトルとして決定する。
【０１５３】
次に、図１７を参照して、ベクトル割付部５４における動きベクトルの評価について説明する。
【０１５４】
図１７は、下から、時刻ｔのフレームｔ、時刻ｔ＋ｐｏｓtの内挿フレームＦ１、および、時刻ｔ＋１のフレームｔ＋１を、１次元的に示している。
【０１５５】
図１７の例において、動きベクトルＳＶaは、フレームｔ上の画素（ｘa，ｙa）において検出された動きベクトルＶaが、近傍の画素Ｇ４の割付候補ベクトルとして、画素Ｇ４上にシフト（平行移動）されたものである。ここで、画素Ｇ４上にシフトされた動きベクトルＳＶaと、フレームｔおよびフレームｔ＋１との交点を、それぞれ点Ｐおよび点Ｑとする。
【０１５６】
ベクトル割付部５４は、動きベクトルＳＶaの第１の評価として、まず、点Ｐおよび点Ｑを中心としたＤＦＤ演算範囲をそれぞれ求め、求めたＤＦＤ演算範囲が画枠をはみ出してしまうか否かを判定する。したがって、点Ｐおよび点Ｑを中心としたＤＦＤ演算範囲が画枠をはみ出てしまった場合には、動きベクトルＳＶaは、候補から除外される。
【０１５７】
また、この点Ｐおよび点Ｑが、例えば、異なるオブジェクトに属する場合、点Ｐの輝度値Ｆt（Ｐ）と、点Ｑの輝度値Ｆt+1（Ｑ）の差は、大きくなってしまう。したがって、ベクトル割付部５４は、動きベクトルＳＶaの第２の評価として、点Ｐと点Ｑを用いて、画素Ｇ４における輝度差分絶対値ｄｐを求め、輝度差分絶対値ｄｐが所定の値より大きいか否かを判定する。輝度差分絶対値ｄｐが所定の値より大きいと判定された場合には、画素Ｇ４における動きベクトルＳＶaの信頼度が低いとされ、動きベクトルＳＶaは、候補から除外される。なお、輝度差分絶対値ｄｐは、次の式（１１）で表される。
【０１５８】
【数１１】
2007110461.tif 000013
【０１５９】
そして、動きベクトルＳＶaの第３の評価として、ベクトル割付部５４は、点Ｐおよび点Ｑを中心としたＤＦＤ演算範囲の相関値を表す差分絶対値による評価判定を行う。すなわち、ベクトル割付部５４は、点Ｐおよび点Ｑを中心としたＤＦＤ演算範囲を用いて、画素Ｇ４における動きベクトルＳＶaの評価値ＤＦＤ（差分絶対値）を求め、求められた評価値ＤＦＤがＤＦＤテーブルの最小評価値よりも小さいか否かを判定する。以上の評価の結果、ベクトル割付部５４は、求められた評価値ＤＦＤの中で最小の評価値ＤＦＤを有する動きベクトルを、画素Ｇ４に割り付ける。
【０１６０】
以上のように、内挿フレームの画素における割付候補の動きベクトルを、割付対象画素の評価値ＤＦＤだけでなく、割付対象画素における輝度差分絶対値を用いて評価するようにしたので、評価値ＤＦＤを用いるだけの場合よりも、確からしい動きベクトルを、割付対象画素に割り付けることができる。この結果、ベクトル割付の精度が向上する。
【０１６１】
次に、動きベクトルの画素以下精度を説明する。
【０１６２】
フレームｔの画素位置ｐをベクトルｖ量分ずらした先のフレームｔ＋１上の位相ｐ＋ｖは、実際には、２４ｐ信号のフレームｔ＋１上の画素位置と一致しない場合があり、その場合の輝度値は定義されていない。したがって、画素以下精度を有する動きベクトルｖに対する評価値ＤＦＤの演算を行うためには、画素以下の位相における輝度値を何らかの方法で生成しなければならず、その輝度値を得るために、例えば、周辺４画素の輝度値による補間処理が用いられる。
【０１６３】
図１８は、本発明の４点補間処理の概念を示す図である。
【０１６４】
図１８においては、矢印Ｘが、フレームｔ＋１における水平方向を示しており、矢印Ｙが、フレームｔ＋１における垂直方向を示している。このフレームｔ＋１において、白丸は、フレームｔ＋１上の画素位置を表しており、黒点は、画素以下の（粒度の）位置を表している。
【０１６５】
また、ウインドウＥに示される画素は、フレームｔ＋１上における最左上の黒点ｐ＋ｖとその周辺４画素を拡大したものである。ウインドウＥにおいて、白丸内のアルファベットは、周辺４画素の輝度値を示している。
【０１６６】
このフレームｔ＋１における最左上の黒点ｐ＋ｖが、図示しないフレームｔの画素位置ｐをベクトルｖ量分ずらした先の位相ｐ＋ｖとすると、位相ｐ＋ｖの輝度値Ｆt+1（ｐ＋ｖ）は、位相ｐ＋ｖの水平方向の画素以下成分αおよび垂直方向の画素以下成分β、並びに、位相ｐ＋ｖの周辺４画素の輝度値Ｌ０乃至Ｌ４を用いて、周辺４画素の距離の逆比の和で求められる。すなわち、輝度値Ｆt+1（ｐ＋ｖ）は、次の式（１２）で表され、その輝度値Ｆt+1（ｐ＋ｖ）が、輝度差分絶対値ｄｐや評価値ＤＦＤの演算に用いられる。
【０１６７】
【数１２】
2007110461.tif 000014
【０１６８】
なお、上述した画素値生成処理の演算や、初期ベクトル選択処理、ベクトル検出処理、または、後述する割付補償処理時の評価値ＤＦＤの演算においても、この４点補間が適用される。
【０１６９】
次に、図１９のフローチャートを参照して、ベクトル割付部５４により行われるベクトル割付処理の全体について説明する。この処理は、図６のステップＳ３において行われる処理である。
【０１７０】
２４Ｐ信号の元フレームである、時刻ｔの画像のフレームｔと、時刻ｔ＋１の画像のフレームｔ＋１は、画素情報演算部７０１、評価値演算部７０２、および着目画素差分演算部７０３に入力される。
【０１７１】
画素情報演算部７０１は、新しい元フレームが入力されると、ベクトル選択部７０５を制御し、ステップＳ７０１において、割付フラグメモリ５６の割付フラグを０(False)で初期化させる。また、画素情報演算部７０１は、割付ベクトルメモリ５５を０ベクトルで初期化させる。これにより、結果的に、動きベクトルが割り付けられない画素に、０ベクトルが割り付けられる。
【０１７２】
画素情報演算部７０１は、ステップＳ７０３において、評価値演算部７０２を制御し、内挿フレーム上のすべての画素に対して、０ベクトルを用いて評価値ＤＦＤ０を算出させる。画素情報演算部７０１は、ベクトル選択部７０５を制御し、評価値演算部７０２により算出された０ベクトルの評価値ＤＦＤ０を、内挿フレームの各画素に対する最小評価値としてＤＦＤテーブルに記憶させる。
【０１７３】
画素情報演算部７０１は、ステップＳ７０４において、検出ベクトルメモリ５３上の元フレームから画素を選択する。なお、この場合、フレームの左上からラスタスキャン順に画素が選択される。
【０１７４】
画素情報演算部７０１は、ステップＳ７０５において、画素位置演算処理を実行する。この画素位置演算処理により、ステップＳ７０４において選択された画素において検出された動きベクトルが割り付けられる対象となる内挿フレーム上の割付対象画素が算出され、算出された割付対象画素を基準に、その動きベクトルで対応付けられる元フレーム上の位置が算出される。画素位置演算処理の詳細については、図２０を参照して後述する。
【０１７５】
画素情報演算部７０１は、ステップＳ７０６において、算出された割付対象画素を選択し、選択した割付対象画素と、その動きベクトルを、ベクトル選択部７０５に出力する。このとき、同時に、画素情報演算部７０１は、選択した割付対象画素を基準に、その動きベクトルで対応付けられる元フレーム上の位置の情報を、評価値演算部７０２および着目画素演算部７０３に出力する。なお、ステップＳ７０６において、画素情報演算部７０１は、割付対象画素が複数存在する場合には、左上の画素から選択する。
【０１７６】
ステップＳ７０７において、画素情報演算部７０１は、選択された割付対象画素に関して、割付ベクトル評価処理を実行する。この割付ベクトル評価処理により、割付対象画素における動きベクトルの評価値ＤＦＤおよび輝度差分絶対値が求められ、割付対象画素における動きベクトルの信頼度が判定され、これらの判定の結果、信頼度が高いとされた動きベクトルで、割付ベクトルメモリ５５の動きベクトルが書き換えられる。割付ベクトル評価処理の詳細については、図２１を参照して後述する。
【０１７７】
画素情報演算部７０１は、ステップＳ７０８において、すべての割付対象画素の処理が終了したか否かを判定し、まだ、すべての割付対象画素の処理が終了していないと判定した場合には、処理は、ステップＳ７０６に戻り、次の割付対象画素が選択され、それ以降の処理を繰り返される。
【０１７８】
ステップＳ７０８において、すべての割付対象画素の処理が終了したと判定された場合、画素情報演算部７０１は、ステップＳ７０９において、検出ベクトルメモリ５３上の元フレームのすべての画素の処理を終了したか否かを判定する。画素情報演算部７０１は、ステップＳ７０９において、検出ベクトルメモリ５３上の元フレームのすべての画素の処理を終了していないと判定した場合、処理は、ステップＳ７０４に戻り、検出ベクトルメモリ５３上の元フレームの次の画素が選択され、それ以降の処理が繰り返される。
【０１７９】
また、画素情報演算部７０１は、ステップＳ７０９において、検出ベクトルメモリ５３のすべての画素についての処理を終了したと判定した場合、処理を終了させる。その後、処理は図６のステップＳ３に戻り、それ以降の処理が行われる。
【０１８０】
次に、図２０のフローチャートを参照して、画素位置演算処理の詳細を説明する。なお、図２０は、図１９のステップＳ７０５の画素位置演算処理の例を示している。
【０１８１】
ステップＳ７２１において、画素情報演算部７０１は、ステップＳ７０４の処理により選択された画素で検出された動きベクトルを、検出メモリベクトル５３から取得する。なお、選択された画素の動きベクトルが０ベクトルである場合、割付ベクトルメモリ５５には、初期値として０ベクトルが予め記憶されているので、以降のステップＳ７２２乃至Ｓ７２４、および、図１９のステップＳ７０６乃至Ｓ７０８の処理はスキップされる。
【０１８２】
画素情報演算部７０１は、ステップＳ７２２において、取得された動きベクトルと内挿フレームの交点を算出する。すなわち、画素情報演算部７０１は、取得した動きベクトルを、次フレームｔ＋１方向に延ばし、延ばした動きベクトルと、内挿フレームとの交点を算出する。
【０１８３】
画素情報演算部７０１は、ステップＳ７２３において、動きベクトルと内挿フレームから算出された交点から、割付対象画素を設定する。このとき、画素情報演算部７０１は、交点が内挿フレーム上の画素位置に一致する場合には、交点を、割付対象画素に設定する。一方、画素情報演算部７０１は、交点が内挿フレーム上の画素位置に一致しない場合には、上述したように、内挿フレーム上の交点の近傍４画素を、割付対象画素に設定する。
【０１８４】
ステップＳ７２４において、画素情報演算部７０１は、それぞれの割付対象画素を基準に、取得した動きベクトルで対応付けた元フレーム上の位置を算出する。例えば、割付対象画素にシフトされた動きベクトルと、元フレーム上の交点の位置が算出される。
【０１８５】
算出された元フレーム上の位置は、評価値演算部７０２が評価値ＤＦＤを求めるために、また、着目画素差分演算部７０３が輝度差分絶対値を求めるために用いられる。その後、図１９のステップＳ７０５に戻り、それ以降の処理が行われる。
【０１８６】
次に、図２１のフローチャートを参照して、割付ベクトル評価処理の詳細を説明する。なお、図２１は、図１９のステップＳ７０７の割付ベクトル評価処理の例を示している。
【０１８７】
図５１のステップＳ７０６において、画素情報演算部７０１により、選択した割付対象画素を基準に、その動きベクトルで対応付けられる元フレーム上の位置が求められ、求められた元フレーム上の位置の情報が、評価値演算部７０２および着目画素差分演算部７０３に入力される。
【０１８８】
評価値演算部７０２は、画素情報演算部７０１から、元フレーム上の位置の情報が入力されると、ステップＳ７４１において、割付対象画素における動きベクトルの評価値ＤＦＤを求めるために、フレームｔおよびフレームｔ＋１上の位置を中心としたＤＦＤ演算範囲（ｍ×ｎ）をそれぞれ求める。
【０１８９】
評価値演算部７０２は、ステップＳ７４２において、求められたＤＦＤ演算範囲が画枠内にあるか否かを判定する。評価値演算部７０２は、ステップＳ７４２において、ＤＦＤ演算範囲が画枠からはみ出していると判定した場合、その動きベクトルは、割付対象画素に割り付ける割付候補ベクトルにはならないと判定し、処理を終了させる。
【０１９０】
評価値演算部７０２は、ステップＳ７４２において、求められたＤＦＤ演算範囲が画枠内にあると判定した場合、ステップＳ７４３において、画枠内にあると判定されたＤＦＤ演算範囲を用いて、割付対象画素の評価値ＤＦＤを演算し、求められた評価値ＤＦＤを、評価値判定部７１２に出力する。なお、このとき、元フレーム上の位置が画素以下であった場合には、上述した４点補間を用いて、元フレーム上の交点の輝度値を求めることにより、割付対象画素の評価値ＤＦＤが演算される。
【０１９１】
一方、着目画素差分演算部７０３は、画素情報演算部７０１から、元フレーム上の位置の情報が入力されると、ステップＳ７４４において、割付対象画素における輝度差分絶対値ｄｐを求め、求められた輝度差分絶対値ｄｐを、画素差分判定部７１１に出力する。なお、このときも、元フレーム上の位置が画素以下であった場合には、着目画素差分演算部７０３は、上述した４点補間を用いて、元フレーム上の交点の輝度値を求めることにより、割付対象画素における輝度差分絶対値ｄｐを演算する。
【０１９２】
画素差分判定部７１１は、ステップＳ７４５において、着目画素差分演算部７０３からの割付対象画素の輝度差分絶対値ｄｐが、所定のしきい値以下であるか否かを判定し、割付対象画素の輝度差分絶対値ｄｐが、所定のしきい値より大きいと判定した場合、フレームｔおよびフレームｔ＋１の交点がそれぞれ異なるオブジェクトに属する可能性が高いと判定し、すなわち、その動きベクトルは、割付対象画素における信頼度が低く、割付対象画素に割り付ける割付候補ベクトルにはならないと判定し、処理を終了させる。
【０１９３】
画素差分判定部７１１は、ステップＳ７４５において、割付対象画素の輝度差分絶対値ｄｐが、所定のしきい値以下であると判定した場合、処理は、ステップＳ７４６に進む。
【０１９４】
評価値判定部７１２は、ステップＳ７４６において、ベクトル選択部７０５のＤＦＤテーブルを参照し、評価値演算部７０２からの割付対象画素の評価値ＤＦＤが、ＤＦＤテーブルに記憶されている割付対象画素の最小評価値（いまの場合、０ベクトルの評価値ＤＦＤ０）よりも小さいか否かを判定し、評価値演算部７０２からの割付対象画素の評価値ＤＦＤが、ＤＦＤテーブルに記憶されている割付対象画素の最小評価値以上であると判定した場合、その動きベクトルは、割付対象画素において、信頼度が高くないと判定し、処理を終了させる。
【０１９５】
一方、評価値判定部７１２は、ステップＳ７４６において、評価値演算部７０２からの割付対象画素の評価値ＤＦＤが、ＤＦＤテーブルに記憶されている割付対象画素の最小評価値よりも小さいと判定した場合、その動きベクトルは、割付対象画素において、いままで比較した動きベクトルの中で最も、評価値ＤＦＤに基づく信頼度が高いと判定し、信頼度が高いと判定された割付対象画素の評価値ＤＦＤを、ベクトル選択部７０５に出力する。
【０１９６】
ベクトル選択部７０５は、評価値判定部７１２からの割付対象画素の評価値ＤＦＤを入力すると、ステップＳ７４７において、割付フラグメモリ５６の割付対象画素の割付フラグを１(True)に書き換える。
【０１９７】
また、ベクトル選択部７０５は、ステップＳ７４８において、ＤＦＤテーブルの割付対象画素が対応する最小評価値を、評価値判定部７１２により信頼度が高いと判定された評価値ＤＦＤに書き換える。
【０１９８】
ベクトル選択部７０５には、ステップＳ７０６において、画素情報演算部７０１から選択した割付対象画素とその動きベクトルが入力されている。したがって、ベクトル選択部７０５は、ステップＳ７４９において、割付ベクトルメモリ５５の割付対象画素に割り付けられている動きベクトルを、信頼度が高いと判定された評価値ＤＦＤに対応する動きベクトルで書き換える。
【０１９９】
ベクトル選択部７０５には、図１９のステップＳ７０６において、割付対象画素とその動きベクトルが画素情報演算部１０１から供給されている。その後、ステップＳ７０７に戻り、それ以降の処理が行われる。
【０２００】
以上のように、内挿フレームの割付対象画素に割り付けられる動きベクトルを選ぶときに、評価値ＤＦＤだけでなく、割付対象画素を基準に動きベクトルで対応付けた元フレーム上の位置に基づいて求められる、割付対象画素の輝度差分絶対値を別扱いにし、評価するようにしたので、評価値ＤＦＤを用いるだけの場合よりも、割付候補ベクトルの中から、最も確からしい動きベクトルを選んで、割付対象画素に割り付けることができる。これにより、ベクトル割付の精度が向上し、後段の画像補間処理において生成される画像の不連続性などを抑制することができ、画像の品質を向上させることができる。
【０２０１】
さらに、評価値ＤＦＤや輝度差分絶対値を求める際などに、画素以下位置の画素値が必要な場合に、その画素以下位置の近傍４画素との距離を基にした線形補間で値を求めるようにしたので、画素以下位置精度の処理が可能になり、さらに、画素以下成分を丸めてしまう方法よりも、輝度差分絶対値ｄｐや評価値ＤＦＤを精度よく求めることができ、これにより、割付候補ベクトルの中から、着目画素により確からしい動きベクトルを割り付けることができる。すなわち、ベクトル割付処理の精度が向上する。
【０２０２】
また、０ベクトルによる評価値ＤＦＤを初期値として、ＤＦＤテーブルに予め保持しておき、動きベクトルを順次処理している間に、ある動きベクトルによる評価値ＤＦＤがその時点で最小評価値となった場合に、ＤＦＤテーブルの最小評価値と、割付ベクトルメモリ５５に割り付けられている動きベクトルを、随時更新するようにしたので、時間とリソースを効率的に使用することができる。
【０２０３】
次に、割付補償部５７の構成の詳細について説明する。
【０２０４】
図２２は、割付補償部５７の構成を示すブロック図である。図２２に構成を示す割付補償部５７は、ベクトル補償部８０１、評価値演算部８０２、補償候補ベクトルメモリ８０３、および同一ベクトル判定部８０４により構成され、ベクトル割付部５４により動きベクトルが割り付けられなかった６０Ｐ信号の内挿フレーム上の画素に、その周辺画素の動きベクトルを補って割り付ける処理を行う。
【０２０５】
前段のベクトル割付部５４により、割付ベクトルメモリ５５上の内挿フレームの画素には動きベクトルが割り付けられている。また、ベクトル割付部５４により動きベクトルが割り付けられた画素の割付フラグメモリ５６の割付フラグには、１(True)が書き込まれており、動きベクトルが割り付けられなかった画素の割付フラグメモリ５６の割付フラグには、０(False)が書き込まれている。
【０２０６】
ベクトル補償部８０１は、フレーム（画面）上の座標（ｘ，ｙ）を基に、処理の対象となるフレーム（内挿フレーム）から、動きベクトルを補って割り付ける処理の単位となる補償処理対象ブロックを選択する。補償処理対象ブロックは、注目ブロックの一例であり、注目画素である、複数の画素を含む。なお、補償処理対象ブロックを１の画素で構成することもできる。ここで、ｘは、フレーム（画面）上の水平方向の位置を示し、ｙは、フレーム（画面）上の垂直方向の位置を示す。
【０２０７】
ベクトル補償部８０１は、処理の対象となるフレームから補償処理対象ブロックを順に選択することにより、フレームの画素の内、動きベクトルが割り付けられていない全ての画素について、動きベクトルを補って割り付ける。
【０２０８】
例えば、ベクトル補償部８０１は、処理の対象となるフレームから、ラスタスキャン順に補償処理対象ブロックを選択する。
【０２０９】
また、ベクトル補償部８０１は、割付フラグメモリ５６の割付フラグを基に、選択した補償処理対象ブロック内に、動きベクトルが割り付けられていない注目画素があるか否かを判定する。選択した補償処理対象ブロック内に、動きベクトルが割り付けられていない注目画素がないと判定された場合には、補償処理対象ブロックに属する注目画素に動きベクトルを割り付ける必要がないので、ベクトル補償部８０１は、その補償処理対象ブロックについて、動きベクトルを補って割り付ける割付補償処理を実行しないで（処理をスキップして）、次の補償処理対象ブロックを選択する。
【０２１０】
選択した補償処理対象ブロック内に、動きベクトルが割り付けられていない注目画素があると判定された場合には、補償処理対象ブロックに属する注目画素に動きベクトルを割り付ける必要があるので、ベクトル補償部８０１は、その補償処理対象ブロックに対して動きベクトルを補って割り付ける割付補償処理を実行する。
【０２１１】
その補償処理対象ブロックに対して動きベクトルの割付補償処理を実行する場合、ベクトル補償部８０１は、さらに、補償処理対象ブロックの周辺の画素であって、補償処理対象ブロックに隣接する画素である隣接画素からなる候補ベクトル選択領域を決定する。
【０２１２】
ベクトル補償部８０１は、補償処理対象ブロックに含まれる注目画素、および隣接画素のそれぞれに優先順位を付する。この優先順位は、補償処理対象ブロックにおける注目画素の位置、補償処理対象ブロックに対する隣接画素の位置、および注目画素および隣接画素の相互の位置関係を基に、注目画素および隣接画素のそれぞれに付される。
【０２１３】
例えば、ベクトル補償部８０１は、ラスタスキャン順を基に、注目画素および隣接画素のそれぞれに、優先順位を付する。より具体的には、例えば、ベクトル補償部８０１は、隣接画素に比較して注目画素が優先する優先順位であって、注目画素のラスタスキャン順に対応する優先順位を注目画素に付して、隣接画素のラスタスキャン順に対応する優先順位を隣接画素に付する。
【０２１４】
ベクトル補償部８０１は、評価値演算部８０２に、評価値の演算を指示する。この場合、まず、ベクトル補償部８０１は、評価値演算部８０２に、０ベクトル（ｘ方向の成分ｖｘが０であって、ｙ方向の成分ｖｙが０であるベクトル（静止ベクトル））について、評価値の演算を指示する。
【０２１５】
次に、ベクトル補償部８０１は、優先順位の順に、評価値演算部８０２に、動きベクトルが割り付けられている注目画素および隣接画素について、その動きベクトルの信頼性を評価する評価値の演算を指示する。この場合、ベクトル補償部８０１は、割付フラグメモリ５６の割付フラグを基に、注目画素および隣接画素について、動きベクトルが割り付けられているか否かを判定し、動きベクトルが割り付けられていると判定された場合、同一ベクトル判定部８０４を制御し、割付ベクトルメモリ５５から、動きベクトルとともに、前段のベクトル割付部５４により動きベクトルが割り付けられていた画素の位置（以下、動きベクトルの割付位置とも称する）の情報（すなわち、内挿フレーム上の座標（ｘ，ｙ）の情報）を、割付位置情報として読み出させる。
【０２１６】
そして、ベクトル補償部８０１は、評価値演算部８０２に、その注目画素および隣接画素に割り付けられている動きベクトルについて、評価値の演算を指示する。なお、詳細は後述するが、評価値演算部８０２においては、入力画像のフレームｔ＋１およびフレームｔを基に、動きベクトルに対する評価値が、補償処理対象ブロックの位置と、動きベクトルの割付位置との距離に応じた重みを付けて演算される。
【０２１７】
評価値演算部８０２に、所定の動きベクトルについて評価値の演算を指示すると、評価値演算部８０２から演算の結果である評価値、その動きベクトル、および動きベクトルの割付位置情報が供給されてくるので、ベクトル補償部８０１は、評価値を基に、動きベクトルが割り付けられていない注目画素に動きベクトルを割り付けるとともに、動きベクトルに対応させて、動きベクトルの割付位置情報も割付ベクトルメモリ５５に記憶させる。
【０２１８】
すなわち、例えば、ベクトル補償部８０１は、０ベクトルまたは注目画素若しくは隣接画素に割り付けられている動きベクトルの中で、評価値演算部８０２から供給された評価値のうち、その動きベクトルが割り付けられていた位置からの距離に応じた重みが加味された上で、最も強い相関を示す評価値に対応する動きベクトルを、補償する動きベクトル（以下、補償ベクトルとも称する）として選択する。そして、ベクトル補償部８０１は、動きベクトルが割り付けられていない注目画素に、補償ベクトルを割り付ける。
【０２１９】
換言すれば、ベクトル補償部８０１は、注目画素または隣接画素に割り付けられている動きベクトルのうち、前段のベクトル割付部５４によりその動きベクトルの割り付けられていた位置からの距離が近く、かつ、入力画像のフレームｔにおける始点の画素の画素値と、入力画像のフレームｔ＋１における終点の画素の画素値との相関が最も強い動きベクトルを、動きベクトルが割り付けられていない注目画素に割り付ける。
【０２２０】
評価値演算部８０２は、ベクトル補償部８０１の演算の指示を受けて、後述するように、対象となる動きベクトルおよび割付位置情報を、同一ベクトル判定部８０４から取得して、入力画像のフレームｔ＋１およびフレームｔを基に、動きベクトルに対する評価値を、補償処理対象ブロックの位置と、動きベクトルの割付位置との距離に応じた重みを付けて演算する。例えば、評価値演算部８０２は、ベクトル補償部８０１の制御の基に、入力画像のフレームｔにおける動きベクトルの始点を中心とした所定のブロックに属する画素の画素値と、入力画像のフレームｔ＋１におけるその動きベクトルの終点を中心とした所定のブロックに属する画素の画素値との差分絶対値和である評価値を、補償処理対象ブロックの位置と、動きベクトルの割付位置との距離に応じた重みを付けて演算する。
【０２２１】
すなわち、割付補償部５７においては、図５を参照して上述した評価値ＤＦＤに、補償処理対象ブロック内の点（位置）と、動きベクトルの割付位置との距離に応じた重みが加味された評価値が用いられる。換言すると、割付補償部５７においては、動きベクトルの割付位置から、補償処理対象ブロック内の位置までの動きベクトルの移動（シフト）量が加味された評価値が用いられる。
【０２２２】
より詳細には、評価値演算部８０２は、動きベクトルの始点をフレームｔとし、動きベクトルの終点をフレームｔ＋１とした場合、評価値を演算する注目画素または隣接画素の動きベクトルと処理の対象となるフレーム（内挿フレーム）とが交差する点が補償処理対象ブロック内の点となるように動きベクトルを移動させ、その位置における動きベクトルのフレームｔの始点を中心としたブロックに属する画素の画素値と、その位置における動きベクトルのフレームｔ＋１の終点を中心としたブロックに属する画素の画素値との相関を示す評価値を、補償処理対象ブロック内の点（位置）と、動きベクトルの割付位置との距離に応じた重みを付けて演算する。
【０２２３】
この場合、移動後の交差する点は、例えば、最も優先順位の高い注目画素の位置、または、補償処理対象ブロックの中心（中央の位置）とすることができる。
【０２２４】
なお、他の例として、評価値演算部８０２は、フレームｔ上の動きベクトルの始点、すなわち、評価値を演算する注目画素または隣接画素を中心としたブロックに属する画素の画素値と、その動きベクトルのフレームｔ＋１の終点を中心としたブロックに属する画素の画素値との相関を示す評価値を、補償処理対象ブロックの位置と、動きベクトルの割付位置との距離に応じた重みを付けて演算することも可能である。
【０２２５】
また、距離に応じた重みを付ける前の評価値は、評価値ＤＦＤに限らず、相関を示すものであれば足り、例えば、分散または差分自乗和などであってもよい。
【０２２６】
評価値演算部８０２は、演算した評価値を、その動きベクトルおよび割付位置情報とともにベクトル補償部８０１に供給する。また、評価値演算部８０２は、評価値を演算した動きベクトルを、補償候補ベクトルとして、割付位置情報とともに、補償候補ベクトルメモリ８０３に供給する。
【０２２７】
補償候補ベクトルメモリ８０３は、評価値演算部８０２から供給された補償候補ベクトルおよび割付位置情報を記憶する。例えば、補償候補ベクトルメモリ８０３は、補償候補ベクトルが評価値演算部８０２から供給された順番に対応させて、評価値が演算された動きベクトルである補償候補ベクトルの大きさと向き、並びに割付位置情報を記憶する。補償候補ベクトルメモリ８０３は、記憶している補償候補ベクトルおよび割付位置情報を同一ベクトル判定部８０４に供給する。
【０２２８】
同一ベクトル判定部８０４は、ベクトル補償部８０１の制御に基づいて、次に評価値を演算しようとする、隣接画素または注目画素に割り付けられている動きベクトルの向きおよび大きさ、並びに動きベクトルの割付位置が、補償候補ベクトルメモリ８０３に記憶されている補償候補ベクトルの向きおよび大きさ、並びに動きベクトルの割付位置と同じであるか否かを判定する。
【０２２９】
例えば、同一ベクトル判定部８０４は、ベクトル補償部８０１の制御に基づいて、割付ベクトルメモリ５５から、隣接画素または注目画素に割り付けられている動きベクトルとその割付位置情報を取得する。
【０２３０】
ここで、ベクトル割付部５４により割付ベクトルメモリ５５に割り付けられた動きベクトルの場合には、例えば、内挿フレーム上の座標位置に基づいて、動きベクトルが割り付けられていた画素の位置の情報が、割付位置情報として読み出される。一方、ベクトル補償部８０１により補って割り付けられた動きベクトルの場合には、ベクトル補償部８０１により割り付けられる際に、その動きベクトルに対応させて記憶された割付位置情報（すなわち、その動きベクトルが、ベクトル割付部５４により割付ベクトルメモリ５５に割り付けられた画素の位置の情報）が読み出される。
【０２３１】
なお、ベクトル割付部５４が動きベクトルを割付ベクトルメモリ５５に割り付ける際にも、割付位置情報が予め記憶されるようにすることもできる。
【０２３２】
そして、同一ベクトル判定部８０４は、ベクトル補償部８０１の制御に基づいて、割付ベクトルメモリ５５から、隣接画素または注目画素に割り付けられている動きベクトルとその割付位置情報を取得し、補償候補ベクトルメモリ８０３から補償候補ベクトルおよびその割付位置情報を取得し、動きベクトルの向きおよび大きさ、並びに動きベクトルの割付位置が、補償候補ベクトルのいずれの向きおよび大きさ、並びに補償候補ベクトルの割付位置と同じであるか否かを判定する。
【０２３３】
より詳細には、同一ベクトル判定部８０４は、割り付けられている動きベクトルのｘ方向の成分およびｙ方向の成分のそれぞれが、補償候補ベクトルのｘ方向の成分およびｙ方向の成分のそれぞれと同じであるか否かを判定し、また、割り付けられている動きベクトルの、ベクトル割付部５４によりもともと割り付けられていた内挿フレーム上の座標（ｘ，ｙ）が、補償候補ベクトルのベクトル割付部５４によりもともと割り付けられていた内挿フレーム上の座標（ｘ，ｙ）と同じであるか否かを判定する。
【０２３４】
同一ベクトル判定部８０４は、動きベクトルの向きおよび大きさ、並びに動きベクトルの割付位置が、補償候補ベクトルのいずれの向きおよび大きさ、並びに補償候補ベクトルの割付位置と同じでないと判定した場合、その動きベクトルについてこれまでと異なる評価値が演算されることが期待されるので、評価値演算部８０２に評価値を演算させるために、その動きベクトルおよび割付位置情報を、評価値演算部８０２に供給する。
【０２３５】
同一ベクトル判定部８０４は、動きベクトルの向きおよび大きさ、並びに動きベクトルの割付位置が、いずれかの補償候補ベクトルの向きおよび大きさ、並びに補償候補ベクトルの割付位置と同じであると判定した場合、同じ動きベクトルについて評価値を演算する必要はなく、評価値演算部８０２における評価値の演算を抑制するために、その動きベクトルおよび割付位置情報を、評価値演算部８０２に供給しない。
【０２３６】
すなわち、評価値を演算しようとする動きベクトルの向きおよび大きさ、並びに動きベクトルの割付位置が、いずれかの補償候補ベクトルの向きおよび大きさ、並びに動きベクトルの割付位置と同じである場合、その動きベクトルについての評価値の演算がスキップされるので、評価値を演算するための演算量をより少なくすることができる。
【０２３７】
ここで、図２３乃至図２５を参照して、割付補償処理の概念について説明する。
【０２３８】
図２３乃至図２５の例においては、２つの２４Ｐ信号の時刻ｔのフレームｔおよび時刻ｔ＋１のフレームｔ＋１の間に挿入された６０Ｐ信号の内挿フレームＦが１次元で示されている。各フレーム上の丸は画素を表している。
【０２３９】
まず、図２３に示される内挿フレームＦ上の中央の画素（以下、着目画素Ｐと称する）以外の画素には、矢印が付されており、これらの矢印は、前段のベクトル割付部５４により内挿フレームＦ上の各画素に割り付けられた動きベクトルＶ１、Ｖ２、Ｖ３、およびＶ４をそれぞれ表している。
【０２４０】
すなわち、前段のベクトル割付部５４は、内挿フレームＦと、ベクトル検出部５２によりフレームｔにおいて検出された動きベクトルをフレームｔ＋１まで延ばした交点に近接する位置の画素のみを処理対象としており、近接する位置に交点が存在しない内挿フレームＦ上の画素については、動きベクトルを割り付ける処理を行わない。
【０２４１】
したがって、図２３の着目画素Ｐに示されるように、内挿フレームＦには、ベクトル割付部５４により動きベクトルが割り付けられない画素（未割付画素）も存在する。
【０２４２】
そこで、割付補償部５７においては、未割付画素に対して、動きベクトルを補償する処理が実行される。このとき、ある同じ時間における空間内（同一フレーム内）における近接位置には、同じオブジェクトが存在し、それらの動きは同じであることが多いことを表す動き相関を利用して、図２４に示されるように、未割付画素（着目画素Ｐ）に対して、同一内挿フレームＦ上における空間方向に近接した位置（画素）に割り付けられている動きベクトルＶ２およびＶ３を、補償候補とする。
【０２４３】
この場合、割付補償部５７は、補償候補である動きベクトルＶ２およびＶ３について、動きベクトルと内挿フレームとが交差する点が、着目画素Ｐとなるように動きベクトルを移動させ、その位置（着目画素Ｐ）における動きベクトルのフレームｔの始点を中心としたブロックと、その位置における動きベクトルのフレームｔ＋１の終点を中心としたブロックを演算ブロックとして評価値をそれぞれ演算し、評価値を用いて、補償候補である動きベクトルＶ２およびＶ３を評価することで、最終的に、図２５に示されるように、動きベクトルＶ２を、補償する動きベクトルとして選択し、内挿フレームＦ上の着目画素Ｐに割り付ける。なお、例えば、この場合、ベクトル割付部５４と同様に、各演算ブロックの画素値の相関を示す評価値である評価値ＤＦＤが用いられる。
【０２４４】
なお、図２３乃至図２５の例においては、１次元の例を用いて説明したため、着目画素Ｐに対する同一内挿フレームＦ上における空間方向に近接した位置（画素）が、左右の２箇所のみが示されていたが、実際には、図２６に示されるように、画素Ｐの周辺８画素が、同一内挿フレームＦ上における空間方向に近接した位置（画素）となる。
【０２４５】
図２６は、上述したフレームｔおよびフレームｔ＋１と、その間に挿入される内挿フレームＦを２次元で示す図である。
【０２４６】
図２６の例において、矢印Ｔは、図中、左前の時刻ｔのフレームｔから、右奥の時刻ｔ＋１のフレームｔ＋１への時間の経過方向を示しており、フレームｔとフレームｔ＋１の間に、内挿フレームＦが挿入されている。内挿フレームＦ上の丸は画素を表している。
【０２４７】
また、図中右に示されるブロックＢは、内挿フレームＦにおける着目画素Ｐと着目画素Ｐの周辺８画素（左上、真上、右上、左横、右横、左下、真下、および右下の画素）からなるブロックを拡大したものであり、矢印Ｘが、内挿フレームＦにおける水平方向を示しており、矢印Ｙが、内挿フレームＦにおける垂直方向を示している。
【０２４８】
図２６に示されるブロックＢの周辺画素に付された矢印は、各周辺画素に割り付けられている動きベクトルを表しており、矢印がない周辺画素は、動きベクトルが割り付けられていない画素を表している。
【０２４９】
図２６の例の場合、着目画素Ｐの周辺画素のうち、左上、真上、右上、左横、左下、真下、および右下の画素に動きベクトルが割り付けられており、前段のベクトル割付部５４により動きベクトルの割り付けられなかった中央の着目画素Ｐに対して、着目画素Ｐの近傍の周辺画素に割り付けられている動きベクトルの中から、例えば、評価値ＤＦＤに基づく、信頼度が高いものが選択される。
【０２５０】
その結果、着目画素Ｐには、例えば、図２７に示されるように、着目画素Ｐの左隣の画素の動きベクトル（太線矢印）が補って割り付けられる。
【０２５１】
しかしながら、これらの着目画素Ｐの周辺画素に割り付けられる動きベクトルは、図２８を参照して説明するように、フレームｔにおいて検出された動きベクトルが、前段のベクトル割付部５４により割り付けられたものだけではない。
【０２５２】
図２８は、着目画素Ｐの周辺画素に割り付けられる動きベクトルの例を示す図である。図２８の例においては、丸は、内挿フレーム上の１つの画素（着目画素および周辺画素も含まれる）を示し、丸に付された矢印は、各画素に割り付けられた動きベクトルを示す。また、図中のａで示される１２の動きベクトルは、その大きさおよび向きを共通にしており、図中のｂで示される６つの動きベクトルは、その大きさおよび向きを共通にしており、図中のｃで示される１つの動きベクトルは、その大きさおよび向きを共通にしている。
【０２５３】
さらに、実線の矢印は、その画素に対してベクトル割付部５４により割り付けられた動きベクトルを表しており、点線の矢印は、その画素の周辺画素に割り付けられた動きベクトルから、割付補償部５７によりその画素に対して補って割り付けられた動きベクトルを表している。なお、割付補償は、通常、ラスタスキャン順に実行される。
【０２５４】
すなわち、図２８の内挿フレーム上の着目画素Ｐの周辺８画素（ブロックＢ内）のうち、着目画素Ｐの右上に位置する画素には、動きベクトルｃが割り付けられており、着目画素Ｐの左上に位置する画素には、動きベクトルｂが割り付けられており、着目画素Ｐの左横に位置する画素には、動きベクトルａが割り付けられており、着目画素Ｐに対して、動きベクトルを補償する処理がなされる場合には、これらの動きベクトルａ，ｂ，およびｃが、着目画素Ｐに対する補償候補となる。
【０２５５】
これらのうち、着目画素Ｐの右上の画素に割り付けられている動きベクトルｃは、その画素に対してベクトル割付部５４により割り付けられたものである。
【０２５６】
しかしながら、着目画素Ｐの左上の画素に割り付けられている動きベクトルｂは、その画素に対してベクトル割付部５４により割り付けられたものではない。すなわち、動きベクトルｂは、着目画素Ｐの左上の画素に対しての割付補償処理において、着目画素Ｐの左上の画素の周辺画素（例えば、左上、真上、または、右上の画素）に割り付けられた動きベクトルｂから補償されたものである。
【０２５７】
したがって、着目画素Ｐの左上の画素に割り付けられている動きベクトルｂは、例えば、左上の画素の真上の画素に割り付けられている動きベクトルｂから補償されたものであり、その真上の画素に割り付けられている動きベクトルｂは、その真上の画素のさらに左上の画素に割り付けられた動きベクトルｂから割り付けられたものであるというように、動きベクトルの元をたどっていくと、実は、この着目画素Ｐの左上の画素に割り付けられている動きベクトルｂは、着目画素Ｐから上に３画素、左に２画素だけ離れた画素に対して割り付けられていたものであるということがあり得る。
【０２５８】
すなわち、着目画素Ｐの左上の画素に割り付けられている動きベクトルｂは、着目画素Ｐから上に３画素、左に２画素だけ離れた画素から伝播してきた可能性がある。
【０２５９】
同様に、着目画素Ｐの左横の画素に割り付けられている動きベクトルａも、その画素に対してベクトル割付部５４により割り付けられたものではない。すなわち、動きベクトルａは、着目画素Ｐの左横の画素に対しての割付補償処理において、着目画素Ｐの周辺画素（例えば、左上、または左横の画素）に割り付けられた動きベクトルａから補償されたものである。
【０２６０】
したがって、着目画素Ｐの左横の画素に割り付けられている動きベクトルａは、例えば、左上の画素の、さらに左上の画素に割り付けられている動きベクトルａから補償されたものであり、その左上の画素に割り付けられている動きベクトルａは、さらに、その左上の画素に割り付けられた動きベクトルａから割り付けられたものであり、その左上の画素に割り付けられている動きベクトルａは、さらに、…というように、動きベクトルの元をたどっていくと、実は、この着目画素Ｐの左横の画素に割り付けられている動きベクトルａは、着目画素Ｐから上に５画素、左に６画素だけ離れた画素に割り付けられていたものであるということがあり得る。
【０２６１】
すなわち、着目画素Ｐの左横の画素に割り付けられている動きベクトルａは、着目画素Ｐから上に５画素、左に６画素だけ離れた画素から伝播してきた可能性がある。
【０２６２】
ここで、図２８の例において、着目画素Ｐに補償する動きベクトルは、ブロックＢに含まれる周辺８画素のうち、３画素の動きベクトルａ，ｂ，およびｃの評価値ＤＦＤを比較し、評価値ＤＦＤの信頼度の高さに応じて、動きベクトルａ，ｂ，およびｃのいずれかから選択される。
【０２６３】
動きベクトルａ，ｂ，およびｃの評価値ＤＦＤの比較の結果、本来であれば、近接位置では、各画素値が同じオブジェクトを表し、それらは同じ動きをしている可能性が高いという動き相関から、図２９に示されるように、注目画素Ｐの位置との距離が最も近い距離ｄ１である画素に割り付けられた動きベクトルｃが、その評価値が最も小さい（信頼度が高い）とされて、着目画素Ｐに補償する動きベクトルとして選択される。
【０２６４】
しかしながら、評価値ＤＦＤは、各候補に対して一律に評価する評価値であり、候補内に、ベクトル割付部５４により割り付けられた動きベクトルと、割付補償部５７により補って割り付けられた動きベクトルが混在していることについて考慮されていないため、比較の結果、偶然、動きベクトルｂや動きベクトルａの評価値の評価値が小さい（信頼度が高い）とされてしまうことがある。
【０２６５】
例えば、動きベクトルａ，ｂ，およびｃの評価値ＤＦＤの比較の結果、偶然、動きベクトルｂの評価値ＤＦＤが最も小さいとされた場合、注目画素Ｐの位置との距離が、距離ｄ１よりも長い距離ｄ２を有する画素に割り付けられた動きベクトルｂが、着目画素Ｐに補償する動きベクトルとして選択されてしまう。
【０２６６】
また、例えば、動きベクトルａ，ｂ，およびｃの評価値ＤＦＤの比較の結果、偶然、動きベクトルａの評価値ＤＦＤが最も小さいとされた場合、注目画素Ｐの位置との距離が、距離ｄ２よりもさらに長い距離ｄ３を有する画素に割り付けられた動きベクトルａが、着目画素Ｐに補償する動きベクトルとして選択されてしまう。
【０２６７】
このように、注目画素Ｐの周辺画素に割り付けられた動きベクトルではなく、実際には、注目画素Ｐから、距離ｄ２や距離ｄ３離れた位置にある画素に対して元々割り付けられた動きベクトルａまたはｂが、着目画素Ｐの動きベクトルとして補償されてしまうと、選択された動きベクトルが近接位置の動きを表しているとは考えにくくなってしまい、取捨選択の結果が、動き相関でなく、偶然に左右される可能性が高くなる。その結果、動きベクトルの検出精度が低下し、さらに、最終的に、生成される画像に破綻が生じてしまう恐れがある。
【０２６８】
以上のように、実際の処理においては、過去の補償処理で割り付けられた補償ベクトルが、以降の補償処理における候補となる処理構造であることから、補償ベクトルは伝播していく可能性がある。そして、その伝播距離が長くなるほど、その補償ベクトルは、補償対象の位置とは別のオブジェクトの動きを表していた可能性が高くなり、近接位置では、各画素値が同じオブジェクトを表し、それらは同じ動きをしている可能性が高いという動き相関を満たすことが困難になってしまう。
【０２６９】
そこで、割付補償部５７においては、動きベクトルを補って割り付ける際に、その動きベクトルがベクトル割付部５４により元々割り付けられていた位置（動きベクトルの割付位置）の情報を、割付位置情報として、割付補償した動きベクトルに対応させて記憶させておき、ある着目画素において、補償候補となった際には、その着目画素の位置と、割付位置情報に基づく画素の位置との距離を、動きベクトルの評価に反映させる。
【０２７０】
つまり、上述した動きベクトルを評価する評価値を用いた候補間での相対評価時に、割付位置情報に基づく画素の位置からの距離に応じた重みを付ける（加味する）。
【０２７１】
具体的には、割付補償部５７において補償候補を比較する際に、ベクトル割付部５４などで用いられる評価値（例えば、評価値ＤＦＤ）をＥusualとし、Ｅusual＝０が最高の評価である（すなわち、値が小さいほど評価が高い）場合に、距離に対応した重みを加味した評価値Ｅpropを用いるようにする。評価値Ｅpropは、次の式（１３）で表される。
【０２７２】
【数１３】
2007110461.tif 000015
【０２７３】
ここで、kは、重み定数、dは、割付位置からの距離を示す。・は、乗算を表す。
【０２７４】
なお、値が大きいほど評価が高い評価値の場合には、距離が長いほど値が小さくなるような重み付けがなされる。
【０２７５】
この評価値Ｅpropを割付候補の評価時に用いることにより、動き相関に基づいて、距離の近い、すなわち、同じオブジェクトである可能性の高い候補を重視する評価が可能となる。したがって、内挿フレーム上での動きベクトル推定の精度向上が可能となり、近接した動き、すなわち、同じオブジェクトの動きを重視した動きベクトルの推定が可能となる。
【０２７６】
なお、上述した図２３乃至図２９においては、注目画素（すなわち、１画素で構成される補償処理対象ブロック）に割り付ける動きベクトルを補償する例を説明したが、上述した説明は、もちろん、複数画素で構成される補償処理対象ブロックについても適用される。
【０２７７】
図３０は、注目画素および隣接画素のそれぞれに付される優先順位の例を示す図である。図３０で示される例において、補償処理対象ブロック８２１は、２×２の４つの注目画素を含む。図３０で示される例において、隣接画素領域８２２は、補償処理対象ブロック８２１の周辺の画素であって、補償処理対象ブロック８２１に隣接して配置されている画素である、１２の隣接画素を含む。すなわち、補償処理対象ブロック８２１または隣接画素領域８２２が候補ベクトル選択領域であり、候補ベクトル選択領域に含まれる４つの注目画素および１２の隣接画素に割り付けられている動きベクトルについて、評価値が演算される。
【０２７８】
候補ベクトル選択領域において、注目画素には、隣接画素に比較して優先する優先順位が付される。すなわち、図３０で示される例において、”１”乃至”４”のいずれかの優先順位が注目画素のそれぞれに付され、”５”乃至”１６”のいずれかの優先順位が隣接画素のそれぞれに付されている。
【０２７９】
この優先順位は、各画素に割り付けられる動きベクトルの評価値を演算する順位であり、さらに、演算された評価値が同じであった場合の動きベクトルを決定する順位でもある。
【０２８０】
図３０で示される例において、補償処理対象ブロック８２１の左上の注目画素に”１”である優先順位が付され、補償処理対象ブロック８２１の右上の注目画素に”２”である優先順位が付され、補償処理対象ブロック８２１の左下の注目画素に”３”である優先順位が付され、補償処理対象ブロック８２１の右下の注目画素に”４”である優先順位が付されている。すなわち、補償処理対象ブロック８２１における注目画素のラスタスキャン順に対応する優先順位が、注目画素に付される。
【０２８１】
図３０で示される例において、隣接画素領域８２２の左上の隣接画素に”５”である優先順位が付され、隣接画素領域８２２の上から１番目の行の左から２番目の隣接画素に”６”である優先順位が付され、隣接画素領域８２２の上から１番目の行の左から３番目の隣接画素に”７”である優先順位が付され、隣接画素領域８２２の右上の隣接画素に”８”である優先順位が付されている。
【０２８２】
図３０で示される例において、隣接画素領域８２２の上から２番目の行の左側の隣接画素に”９”である優先順位が付され、隣接画素領域８２２の上から２番目の行の右側の隣接画素に”１０”である優先順位が付されている。図３０で示される例において、隣接画素領域８２２の上から３番目の行の左側の隣接画素に”１１”である優先順位が付され、隣接画素領域８２２の上から３番目の行の右側の隣接画素に”１２”である優先順位が付されている。
【０２８３】
さらに、図３０で示される例において、隣接画素領域８２２の左下の隣接画素に”１３”である優先順位が付され、隣接画素領域８２２の下から１番目の行の左から２番目の隣接画素に”１４”である優先順位が付され、隣接画素領域８２２の下から１番目の行の左から３番目の隣接画素に”１５”である優先順位が付され、隣接画素領域８２２の右下の隣接画素に”１６”である優先順位が付されている。
【０２８４】
すなわち、隣接画素領域８２２における隣接画素のラスタスキャン順に対応する優先順位が、隣接画素に付される。
【０２８５】
換言すれば、候補ベクトル選択領域である補償処理対象ブロック８２１および隣接画素領域８２２毎に、フレーム上の補償処理対象ブロック８２１が選択される並び（順序）に対応する並び（順序）で、補償処理対象ブロック８２１における注目画素の優先順位が付され、隣接画素領域８２２における隣接画素の優先順位が付される。
【０２８６】
また、図３０の演算領域８２３は、評価値演算部８０２が、内挿フレーム上の評価値を演算する注目画素または隣接画素の動きベクトルを移動（シフト）させた補償処理対象ブロック内の所定の位置（いまの場合、中央の位置）に対応する、フレームｔ上の動きベクトルの始点を中心としたブロックに属する画素の画素値と、動きベクトルのフレームｔ＋１の終点を中心としたブロックに属する画素の画素値との相関を示す評価値を演算する場合に、評価値の演算の対象となる、補償処理対象ブロック内の中央の位置（すなわち、フレームｔにおける始点またはフレームｔ＋１における終点）を中心としたブロックに属する画素の範囲（補償処理対象ブロック８２１を中心とした８×８画素の領域）を、内挿フレーム上で示している。
【０２８７】
この補償処理対象ブロック内の所定の位置は、補償処理対象ブロックの中央の位置に限らず、例えば、最も優先順位の高い注目画素の位置とすることができる。また、演算領域８２３は、８×８画素に限らず、所望の数の画素からなる領域としてもよい。
【０２８８】
なお、図３０の演算領域８２３を、フレームｔ上の動きベクトルの始点、すなわち、評価値を演算する注目画素または隣接画素を中心としたブロックに属する画素の画素値と、その動きベクトルのフレームｔ＋１の終点を中心としたブロックに属する画素の画素値との相関を示す評価値を演算する場合の、評価値の演算の対象となる、注目画素または隣接画素を中心としたブロックに属する画素の範囲を示すものとしてもよい。
【０２８９】
この場合、例えば、評価値演算部８０２は、内挿フレーム上の注目画素または隣接画素に対応するフレームｔ上の動きベクトルの始点を中心とした、５×５画素のブロックに属する画素の画素値と、その動きベクトルのフレームｔ＋１の終点を中心とした、５×５画素のブロックに属する画素の画素値との相関を示す評価値を演算する。
【０２９０】
したがって、隣接画素領域８２２の左上の隣接画素に対して２行上側であって２列左側の画素が評価値の演算の対象となり、隣接画素領域８２２の右上の隣接画素に対して２行上側であって２列右側の画素が評価値の演算の対象となり、隣接画素領域８２２の左下の隣接画素に対して２行下側であって２列左側の画素が評価値の演算の対象となり、隣接画素領域８２２の右下の隣接画素に対して２行下側であって２列右側の画素が評価値の演算の対象となるので、図３０で示されるように、演算領域８２３は、補償処理対象ブロック８２１を中心とした８×８画素の領域となる。
【０２９１】
また、図３０に示される補償処理対象ブロック８２１がラスタスキャン順に選択される場合、選択されている補償処理対象ブロック８２１の上側の行の画素または左側の画素には、ベクトル割付部５４および割付補償部５７のいずれか一方によって動きベクトルが必ず割り付けられている。
【０２９２】
すなわち、補償処理対象ブロック８２１がラスタスキャン順に選択される場合、割付補償部５７は、フレーム上の左側から右側に向かう順であって、フレーム上の上側から下側に向かう順に、画素に動きベクトルを割り付けるので、今、選択されている補償処理対象ブロック８２１の上側の行（いわゆる、画面上のライン）の画素は、それ以前に補償処理対象ブロック８２１として選択されて、割付補償部５７により、動きベクトルが割り付けられる。同様に、今、選択されている補償処理対象ブロック８２１の左側の画素は、それ以前の補償処理対象ブロック８２１として選択されて、割付補償部５７により、動きベクトルが割り付けられる。
【０２９３】
例えば、図３１で示されるように、補償処理対象ブロック８２１が２×２画素のブロックである場合、領域８４１に属する、選択されている補償処理対象ブロック８２１の上側の行の４つの画素（隣接画素）、および選択されている補償処理対象ブロック８２１の左側の２つの画素（隣接画素）について、動きベクトルが必ず割り付けられている。
【０２９４】
逆に、図３１で示されるように、補償処理対象ブロック８２１が２×２画素のブロックである場合、領域８４２に属する、選択されている補償処理対象ブロック８２１の下側の行の４つの画素について、動きベクトルが割り付けられているとは限らない。同様に、選択されている補償処理対象ブロック８２１の右側の２つの画素について、動きベクトルが割り付けられているとは限らない。
【０２９５】
なお、ベクトル割付部５４によって動きベクトルが割り付けられていない注目画素が補償処理対象ブロック８２１に含まれる場合、画像の空間相関が高いので、その補償処理対象ブロック８２１の他の注目画素の動きベクトルが、その注目画素に割り付けられることが多い。
【０２９６】
また、補償処理対象ブロック８２１が２×２画素のブロックであるとして説明したが、補償処理対象ブロック８２１は、２×２画素のブロックとは限らず、所望の数の画素からなるブロックとすることができる。
【０２９７】
図３２は、評価値の演算のスキップを説明する図である。図３２において、丸は、注目画素または隣接画素である１つの画素を示す。
【０２９８】
図３２中の丸に付された矢印は、その注目画素または隣接画素に割り付けられた動きベクトルを示す。例えば、図中のａで示される２つの動きベクトルは、その大きさ、向き、および、ベクトル割付部５４による割付位置（もともとの割付位置）を共通にしている。また、図中のｂで示される２つの動きベクトルは、その大きさ、向き、および、ベクトル割付部５４による割付位置を共通にしている。さらに、図中のｃで示される２つの動きベクトルは、その大きさ、向き、および、ベクトル割付部５４による割付位置を共通にしている。
【０２９９】
従って、図３２で示される例において、注目画素または隣接画素に割り付けられた動きベクトルは、１１存在しているが、他の動きベクトルと大きさおよび向きを共通にする動きベクトルが、６つ存在しているので、他の動きベクトルと大きさおよび向きを共通にする６つの動きベクトルのうち、３つの動きベクトルについては、評価値の演算がスキップされる。従って、このような場合、８つの動きベクトルに対して評価値が演算される。
【０３００】
例えば、図３２で示される注目画素または隣接画素に、図３０で示される優先順位と同じ優先順位が付された場合、右上の隣接画素（優先順位が８である隣接画素）に割り付けられた動きベクトルの大きさ、向き、および、ベクトル割付部５４による割付位置が、１番上の行の左側から２番目の隣接画素（優先順位が６である隣接画素）に割り付けられた動きベクトルの大きさ、向き、および、ベクトル割付部５４による割付位置と共通するので、右上の隣接画素に割り付けられた動きベクトルについては、評価値の演算がスキップされる。
【０３０１】
同様に、図３２で示される注目画素または隣接画素に、図３０で示される優先順位と同じ優先順位が付された場合、上から２番の行の左側の隣接画素（優先順位が９である隣接画素）に割り付けられた動きベクトルの大きさ、向き、および、ベクトル割付部５４による割付位置が、左上の隣接画素（優先順位が５である隣接画素）に割り付けられた動きベクトルの大きさ、向き、および、ベクトル割付部５４による割付位置と共通するので、上から２番の行の左側の隣接画素に割り付けられた動きベクトルについては、評価値の演算がスキップされる。
【０３０２】
さらに、図３２で示される注目画素または隣接画素に、図３０で示される優先順位と同じ優先順位が付された場合、右下の隣接画素（優先順位が１６である隣接画素）に割り付けられた動きベクトルの大きさ、向き、および、ベクトル割付部５４による割付位置が、上から３番の行の右側の隣接画素（優先順位が１２である隣接画素）に割り付けられた動きベクトルの大きさ、向き、および、ベクトル割付部５４による割付位置と共通するので、右下の隣接画素に割り付けられた動きベクトルについては、評価値の演算がスキップされる。
【０３０３】
このように、既に評価値が演算された動きベクトルに対し、その大きさ、向き、および、ベクトル割付部５４による割付位置が共通する動きベクトルについては、評価値の演算がスキップされるので、演算量をより少なくすることができる。
【０３０４】
なお、例えば、評価値の演算数（すなわち、補償候補ベクトル数）の閾値が５に設定されている場合には、優先順位が小さい順に、動きベクトルの大きさ、向き、および、ベクトル割付部５４による割付位置が同じでない５つの画素の動きベクトルの評価値が演算される。
【０３０５】
すなわち、図３２の例において、図３０で示される優先順位と同じ優先順位が付された場合、優先順位が１、４、５、６、７までの画素の動きベクトルの評価値が演算されることになる。
【０３０６】
また、以下、動きベクトルの大きさ、向き、および割付位置が共通すること、すなわち、動きベクトルの大きさが同じであって、向きが同じであって、ベクトル割付部５４によるもともとの割付位置が同じであることを、動きベクトルが同じとも称する。
【０３０７】
次に、図３３のフローチャートを参照して、図６のステップＳ４の処理に対応する、割付補償部５７における割付補償処理を説明する。
【０３０８】
なお、以下、補償処理対象ブロック８２１が２×２画素からなる場合を例に、割付補償処理を説明する。
【０３０９】
ステップＳ８０１において、ベクトル補償部８０１は、補償処理対象ブロック８２１を選択するための座標（ｘ，ｙ）に、初期値として（０，０）を設定する。ステップＳ８０２において、ベクトル補償部８０１は、設定された座標（ｘ，ｙ）を基に、処理の対象となるフレームの補償処理対象ブロック８２１を決定する。ステップＳ８０３において、ベクトル補償部８０１は、補償候補ベクトルメモリ８０３、補償候補ベクトル数、優先度ｎ、および最小評価値に初期値を設定する。
【０３１０】
ここで、補償候補ベクトル数は、評価値を算出した動きベクトルの数を示す。優先度ｎは、注目画素および隣接画素に付されている優先順位から、評価値の演算の対象となる注目画素および隣接画素を特定するための値である。最小評価値は、距離に応じた重みが付けられて演算された評価値のうち、最も強い相関を示す評価値であり、評価値が、例えば、距離に応じた重みが付けられて演算された差分絶対値和である評価値ＤＦＤの場合、距離に応じた重みが付けられて演算された評価値のうち、最小の評価値である。
【０３１１】
例えば、ステップＳ８０３において、ベクトル補償部８０１は、補償候補ベクトルメモリ８０３をクリアし、補償候補ベクトル数に０を設定し、優先度ｎに１を設定し、最小評価値に設定可能な上限値を設定することにより、補償候補ベクトルメモリ８０３、補償候補ベクトル数、優先度ｎ、最小評価値に初期値を設定する。
【０３１２】
ステップＳ８０４において、ベクトル補償部８０１は、割付フラグメモリ５６の割付フラグを基に、補償処理対象ブロック８２１内に、動きベクトルが割り付けられていない注目画素があるか否かを判定し、動きベクトルが割り付けられていない注目画素があると判定された場合、その注目画素に動きベクトルを割り付けるために、ステップＳ８０５に進み、評価値演算部８０２に、０ベクトル（静止ベクトル）を基に、評価値０を演算させる。
【０３１３】
例えば、ステップＳ８０５において、ベクトル補償部８０１は、評価値演算部８０２に、図３０で示される”１”である優先順位が付された注目画素と交わる０ベクトル（静止ベクトル）を基に、評価値０を演算させ、最小評価値に、評価値演算部８０２から供給された評価値０を設定する。
【０３１４】
すなわち、この場合、評価値演算部８０２は、フレームｔにおける、”１”である優先順位が付された注目画素の位置に対応する位置の画素を中心とするブロックに属する画素の画素値と、フレームｔ＋１における、”１”である優先順位が付された注目画素の位置に対応する位置の画素を中心とするブロックに属する画素の画素値との差分絶対値和である評価値を、距離に応じた重みを付けて演算する。なお、このとき、距離は、０で演算される。
【０３１５】
評価値演算部８０２は、０ベクトルと共に演算した評価値０をベクトル補償部８０１に供給する。そして、ベクトル補償部８０１は、最小評価値に、評価値演算部８０２から供給された評価値０を設定する。
【０３１６】
ステップＳ８０６において、ベクトル補償部８０１は、内部的な変数である補償ベクトルに、０ベクトルを設定する。
【０３１７】
ステップＳ８０７において、ベクトル補償部８０１は、補償ベクトル設定処理を実行する。この補償ベクトル設定処理の詳細は、図３４を参照して後述する。この補償ベクトル設定処理により、補償処理対象ブロックの注目画素または周辺画素に割り付けられた動きベクトルの評価値が所定の数だけ演算され、最も相関の高い動きベクトルが補償ベクトルとして設定される。
【０３１８】
ベクトル補償部８０１は、ステップＳ８０８において、補償処理対象ブロック８２１内の動きベクトルが割り付けられていない全ての注目画素に、補償ベクトルを割り付けるとともに、補償ベクトルに対応させて、補償ベクトルの割付位置情報も記憶させる。すなわち、ステップＳ８０８において、ベクトル補償部８０１は、割付ベクトルメモリ５５に、補償ベクトルである動きベクトルとその割付位置情報を、内挿フレームの動きベクトルが割り付けられていない注目画素に対応させて記憶させる。より正確には、割付ベクトルメモリ５５は、補償ベクトルの大きさおよび向きと同じ大きさおよび向きの動きベクトルとその割付位置情報を、内挿フレームの動きベクトルが割り付けられていない注目画素に対応させて記憶させる。
【０３１９】
ステップＳ８０９において、ベクトル補償部８０１は、動きベクトルが割り付けられた画素に対応する、割付フラグメモリ５６の割付フラグを”True”（例えば、”１”）に書き換える。
【０３２０】
一方、ステップＳ８０４において、補償処理対象ブロック８２１内に、動きベクトルが割り付けられていない注目画素がないと判定された場合、その補償処理対象ブロック８２１について、動きベクトルを割り付ける処理を実行する必要がないので、処理は、ステップＳ８１０に進む。すなわち、次の補償処理対象ブロック８２１について、上述した処理が繰り返される。
【０３２１】
ステップＳ８１０において、ベクトル補償部８０１は、補償処理対象ブロック８２１を選択するための座標（ｘ，ｙ）のｘに２を加算する。これにより、次に選択される補償処理対象ブロック８２１は、フレームの右方向に２画素移動することになる。
【０３２２】
ステップＳ８１１において、ベクトル補償部８０１は、ｘが、フレームのｘ方向の画枠を超えたか否かを判定し、ｘが、フレームのｘ方向の画枠を超えていないと判定された場合、処理は、ステップＳ８０２に戻り、フレームにおいてさらに右側の補償処理対象ブロック８２１について、上述した処理が繰り返される。
【０３２３】
ステップＳ８１１において、ｘが、フレームのｘ方向の画枠を超えたと判定された場合、その位置には画素がないので、フレームの左側であって、さらに下側の画素を補償処理対象ブロック８２１として次に選択するために、処理は、ステップＳ８１２に進み、ベクトル補償部８０１は、補償処理対象ブロック８２１を選択するための座標（ｘ，ｙ）のｘに０を設定し、ｙに２を加算する。
【０３２４】
ステップＳ８１３において、ベクトル補償部８０１は、ｙが、フレームのｙ方向の画枠を超えたか否かを判定し、ｙが、フレームのｙ方向の画枠を超えていないと判定された場合、処理は、ステップＳ８０２に戻り、フレームの左側であって、さらに下側の補償処理対象ブロック８２１について、上述した処理が繰り返される。
【０３２５】
すなわち、ステップＳ８１０乃至ステップＳ８１３の処理により、補償処理対象ブロック８２１は、ラスタスキャン順に選択されることになる。
【０３２６】
ステップＳ８１３において、ｙが、フレームのｙ方向の画枠を超えたと判定された場合、フレームの全ての画素について、割付補償処理が実行されたので、処理は終了される。
【０３２７】
次に、図３４のフローチャートを参照して、図３３のステップＳ８０７の補償ベクトル設定処理を説明する。
【０３２８】
ステップＳ８３１において、ベクトル補償部８０１は、優先度ｎで示される優先順位（以下、単に優先度ｎと称する）の注目画素または隣接画素に対応する、割付フラグメモリ５６の割付フラグが”True”であるか否かを判定する。ステップＳ８３１において、優先度ｎの注目画素または隣接画素に対応する、割付フラグメモリ５６の割付フラグが”True”であると判定された場合、優先度ｎの注目画素または隣接画素に動きベクトルが割り付けられているので、その動きベクトルについて評価値を演算するために、処理は、ステップＳ８３２に進み、ベクトル補償部８０１は、変数ｐに、初期値として０を設定する。変数ｐは、既に評価値が演算された動きベクトルである補償候補ベクトルの順番を示す変数である。
【０３２９】
ステップＳ８３３において、ベクトル補償部８０１は、変数ｐが補償候補ベクトル数より大きいか否かを判定する。より正確には、ステップＳ８３２において、ベクトル補償部８０１は、補償候補ベクトル数が０でなく、かつ、変数ｐが補償候補ベクトル数より大きいか否かを判定する。
【０３３０】
ステップＳ８３３において、変数ｐが補償候補ベクトル数より大きくないと判定された場合、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルと同じであるかが比較されていない補償候補ベクトルがあるので、ステップＳ８３４において、ベクトル補償部８０１は、同一ベクトル判定部８０４に、割付ベクトルメモリ５５から、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルとともに、その動きベクトルの割付位置情報を読み出させ、読み出した情報に基づいて、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルが、補償候補ベクトルメモリ８０３に記憶されている補償候補ベクトルのうち、ｐ番目の補償候補ベクトルと大きさ、向き、および割付位置が同じであるか否かを判定させる。
【０３３１】
ステップＳ８３４において、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルが、補償候補ベクトルメモリ８０３に記憶されている補償候補ベクトルのうち、ｐ番目の補償候補ベクトルと大きさ、向き、および割付位置が同じでないと判定された場合、ステップＳ８３５において、ベクトル補償部８０１は、変数ｐをインクリメントする。
【０３３２】
そして、処理は、ステップＳ８３３に戻り、全ての補償候補ベクトルと優先度ｎの優先順位の注目画素または隣接画素に割り付けられている動きベクトルとが比較されたか否かが判定されて、全ての補償候補ベクトルと優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルとが比較されていないと判定された場合、次の補償候補ベクトルと優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルとが比較される。
【０３３３】
このように、ステップＳ８３２乃至ステップＳ８３５において、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルが、いずれかの補償候補ベクトルと大きさ、向き、および割付位置が同じであるか否かが判定される。
【０３３４】
ステップＳ８３３において、変数ｐが補償候補ベクトル数より大きいと判定された場合、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルが、補償候補ベクトルのいずれとも同じでないので、ステップＳ８３６に進み、同一ベクトル判定部８０４は、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルおよびその割付位置情報を評価値演算部８０２に供給して、ベクトル補償部８０１は、評価値演算部８０２に、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルを基に、動きベクトルの割付位置との距離に応じた重みを付けた評価値を演算させる。
【０３３５】
例えば、ステップＳ８３６において、注目画素または隣接画素に割り付けられている動きベクトルが補償処理対象ブロック内の所定の位置に移動され、その位置における動きベクトルのフレームｔの始点を中心としたブロックに属する画素の画素値と、その位置における動きベクトルのフレームｔ＋１の終点を中心としたブロックに属する画素の画素値との相関を示す評価値（例えば、評価値ＤＦＤ）が、その位置と、動きベクトルが割り付けられている位置との距離に応じた重みを付けて演算される。
【０３３６】
なお、例えば、ステップＳ８３６においては、フレームｔ上の動きベクトルの始点、すなわち、評価値を演算する注目画素または隣接画素を中心としたブロックに属する画素の画素値と、その動きベクトルのフレームｔ＋１の終点を中心としたブロックに属する画素の画素値との相関を示す評価値が、その中心の画素の位置と、動きベクトルが割り付けられている位置との距離に応じた重みを付けて演算されるようにしてもよい。
【０３３７】
これらの評価値の演算において、動きベクトルの始点または終点が画素位置と一致しない場合、図１８を参照して上述した周辺４画素の輝度値による４点補間処理が用いられる。
【０３３８】
ステップＳ８３６における評価値の演算後、評価値演算部８０２は、演算した評価値、動きベクトルとともに、割付位置情報を、ベクトル補償部８０１に供給する。そして、評価値演算部８０２は、評価値を演算した動きベクトルである補償候補ベクトルを、その割付位置情報とともに補償候補ベクトルメモリ８０３に供給する。
【０３３９】
ステップＳ８３７において、補償候補ベクトルメモリ８０３は、評価値演算部８０２から供給された補償候補ベクトルとともに割付位置情報を記憶する。すなわち、ステップＳ８３７において、補償候補ベクトルメモリ８０３は、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルを補償候補ベクトルとして割付位置情報とともに記憶する。
【０３４０】
ステップＳ８３８において、ベクトル補償部８０１は、補償候補ベクトル数をインクリメントする。
【０３４１】
ステップＳ８３９において、ベクトル補償部８０１は、ステップＳ８３６の処理で演算された評価値（すなわち、距離に応じた重みを付けて演算された評価値ＤＦＤ）が最小評価値より小さいか否か、すなわち、ステップＳ８３６の処理で距離に応じた重み付けされて演算された評価値で示される相関が最小評価値で示される相関より強いか否かを判定し、演算された評価値が最小評価値より小さいと判定された場合、すなわち、演算された評価値で示される相関が最小評価値で示される相関より強いと判定された場合、ステップＳ８４０に進み、最小評価値に、演算された評価値を設定する。
【０３４２】
ステップＳ８４０において、これまでに演算された評価値（すなわち、距離に応じた重みを付けて演算された評価値ＤＦＤ）のうち、最も強い相関を示す評価値が最小評価値に設定されることになる。
【０３４３】
ステップＳ８４１において、ベクトル補償部８０１は、補償ベクトルに、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルを設定する。これにより、補償ベクトルには、これまでの演算された評価値のうち、相関が最も強いことを示す評価値が演算された動きベクトルが設定される。
【０３４４】
ステップＳ８３１において、優先度ｎの注目画素または隣接画素に対応する、割付フラグメモリ５６の割付フラグが”True”でないと判定された場合、その注目画素または隣接画素には、動きベクトルが割り付けられていないので、処理は、ステップＳ８４２に進む。
【０３４５】
ステップＳ８３４において、優先度ｎの注目画素または隣接画素に割り付けられている動きベクトルが、補償候補ベクトルメモリ８０３に記憶されている補償候補ベクトルのうち、ｐ番目の補償候補ベクトルと大きさおよび割付位置が同じであると判定された場合、すでに評価値が演算されている動きベクトルと大きさおよび割付位置が同じ動きベクトルについて評価値を演算する必要はないので、処理は、ステップＳ８４２に進む。
【０３４６】
ステップＳ８３９において、演算された評価値（すなわち、距離に応じた重みを付けて演算された評価値ＤＦＤ）が最小評価値より小さくないと判定された場合、その動きベクトルより強い相関を示す評価値が演算された他の動きベクトルがあるので、ステップＳ８４０およびステップＳ８４１の処理はスキップされて、処理は、ステップＳ８４２に進む。
【０３４７】
ステップＳ８４２において、ベクトル補償部８０１は、優先度ｎをインクリメントする。ステップＳ８４３において、ベクトル補償部８０１は、優先度ｎが１６を超えたか、または、補償候補ベクトル数が予め定めた閾値を超えたか否かを判定する。
【０３４８】
ステップＳ８４３において、優先度ｎが１６以下で、かつ、補償候補ベクトル数が予め定めた閾値以下であると判定された場合、処理は、ステップＳ８０７に戻り、次の優先順位の注目画素または隣接画素に割り付けられている動きベクトルについて、上述した処理を繰り返す。
【０３４９】
ステップＳ８４３において、優先度ｎが１６を超えたか、または、補償候補ベクトル数が予め定めた閾値を超えたと判定された場合、全ての注目画素および隣接画素について、ステップＳ８３１乃至ステップＳ８４１の処理が実行されたか、閾値で定める所定の数の動きベクトルの中から、最も強い相関を示す評価値が得られた動きベクトルが補償ベクトルとして設定されたので、補償ベクトル設定処理は終了され、処理は、図３３のステップＳ８０７に戻り、それ以降の処理が繰り返される。
【０３５０】
なお、補償候補ベクトル数と比較される閾値は、任意の値とすることができ、例えば、５とされる。
【０３５１】
以上のように、割付補償部５７においては、ベクトル割付部５４により動きベクトルが割り付けられなかった画素に対して、その画素とベクトル割付部５４により割り付けられた動きベクトルの割付位置との距離に応じた重みを付けて、動きベクトルが示す位置の画素の相関を示す評価値が演算される。
【０３５２】
換言すると、割付補償部５７により割り付けられた動きベクトルよりも、ベクトル割付部５４により割り付けられた動きベクトルの方が高く評価されないように評価値が演算されるので、動き相関に基づいて、距離の近い、すなわち、同じオブジェクトである可能性の高い候補を重視する評価を行うことができる。また、内挿フレーム上での動きベクトル推定の精度向上が可能となり、近接した動き、すなわち、同じオブジェクトの動きを重視した動きベクトルの推定が可能となる。
【０３５３】
これにより、割付補償部５７は、ベクトル割付部５４により動きベクトルが割り付けられなかった画素に対して、最も正確であると予測される動きベクトルを割り付けることができる。すなわち、割付補償部５７は、ベクトル割付部５４により動きベクトルが割り付けられなかった画素に対して、内挿フレームの画素値を生成する場合に、画素値を生成において、より破綻の少ない動きベクトルを割り付けることができる。そして、その結果、後段において生成される画像のブロックノイズや粉状ノイズなどを抑制し、品質を向上させることができる。
【０３５４】
なお、上記説明においては、ベクトル割付部５４において割り付けられなかった画素に対してベクトル補償処理を行っているが、ベクトル検出部５２において検出されなかった（０ベクトルが検出された）画素など、何らかの処理において動きベクトルが求められなかった画素に対してベクトル補償処理を行うようにしてもよい。また、さらに、検出された動きベクトル、または、割り付けられた動きベクトルが確からしくない（信頼度が低い）とされる画素に対してベクトル補償処理を行うようにしてもよい。
【０３５５】
本実施の形態においては、動きベクトルを選択する際の評価値として、差分絶対値和である評価値ＤＦＤを用いて説明したが、評価値ＤＦＤに限定されず、動きベクトルの信頼度を評価するものであれば、他のものを用いるようにしてもよい。
【０３５６】
また、本実施の形態においては、各処理を行うブロックを、例えば、８画素×８画素や９画素×９画素などにより構成するようにして説明したが、これらは、一例であり、各処理を行うブロックを構成する画素は、上記画素数に限定されない。
【０３５７】
さらに、本実施の形態においては、２４Ｐ信号から６０Ｐ信号への信号変換を例に、説明を行ったが、本発明は、例えば、動画像のフレーム周波数変換として、インターレース信号や、他のフレームレート変換にも適用することができる。
【０３５８】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０３５９】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図１に示されるように、磁気ディスク３１（フレキシブルディスクを含む）、光ディスク３２（CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む）、光磁気ディスク３３（MD(Mini-Disc)（商標）を含む）、もしくは半導体メモリ３４などよりなるリムーバブル記録媒体（パッケージメディア）、または、プログラムが一時的もしくは永続的に格納されるＲＯＭ１２などにより構成される。
【０３６０】
なお、本明細書において、フローチャートに示されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０３６１】
【図１】本発明の信号処理装置の構成例を示すブロック図である。
【図２】信号処理装置の構成を示すブロック図である。
【図３】本発明の処理の原理を説明する図である。
【図４】本発明の処理を具体的に説明する図である。
【図５】信号処理装置において用いられる動きベクトルの評価値を説明する図である。
【図６】信号処理装置のフレーム周波数変換処理を説明するフローチャートである。
【図７】図２の画像補間部の構成を示すブロック図である。
【図８】図６のステップＳ５の画像補間処理を説明するフローチャートである。
【図９】図２のベクトル検出部の構成を示すブロック図である。
【図１０】ベクトル検出部で用いられる勾配法を説明する図である。
【図１１】初期ベクトルを用いた反復勾配法を説明する図である。
【図１２】図６のステップＳ２の動きベクトル検出処理を説明するフローチャートである。
【図１３】図２のベクトル割付部の構成を示すブロック図である。
【図１４】ベクトル割付処理の概要を説明する図である。
【図１５】ベクトル割付処理の概要を説明する図である。
【図１６】ベクトル割付処理の概要を説明する図である。
【図１７】図１３のベクトル割付部における動きベクトルの評価を説明する図である。
【図１８】本発明の４点補間処理の概念を説明する図である。
【図１９】図６のステップＳ３のベクトル割付処理を説明するフローチャートである。
【図２０】図１９のステップＳ７０５の画素位置演算処理を説明するフローチャートである。
【図２１】図１９のステップＳ７０７の割付ベクトル評価処理を説明するフローチャートである。
【図２２】図２の割付補償部の構成を示すブロック図である。
【図２３】割付補償処理の概念について説明する図である。
【図２４】割付補償処理の概念について説明する図である。
【図２５】割付補償処理の概念について説明する図である。
【図２６】内挿フレームにおける着目画素の周囲画素の構成例を説明する図である。
【図２７】内挿フレームにおける着目画素の周囲画素の構成例を説明する図である。
【図２８】着目画素の周辺画素に割り付けられる動きベクトルの例を示す図である。
【図２９】着目画素の位置と、動きベクトルの割付位置との距離について説明する図である。
【図３０】優先順位の例を示す図である。
【図３１】動きベクトルの割り付けを説明する図である。
【図３２】評価値の演算のスキップを説明する図である。
【図３３】図６のステップＳ４の割付補償処理を説明するフローチャートである。
【図３４】図３３のステップＳ８０７の補償ベクトル設定処理を説明するフローチャートである。
【符号の説明】
【０３６２】
１  信号処理装置，１１  ＣＰＵ，１２  ＲＯＭ，１３  ＲＡＭ，３１  磁気ディスク，３２  光ディスク，３３  光磁気ディスク，３４  半導体メモリ，５１  フレームメモリ，５２  ベクトル検出部，５３  検出ベクトルメモリ，５４  ベクトル割付部，５５  割付ベクトルメモリ，５６  割付フラグメモリ，５７  割付補償部，５８  画像補間部，１０１  初期ベクトル選択部，１０３  反復勾配法演算部，１０４  ベクトル評価部，１０５  シフト初期ベクトル割付部，１０６  評価値メモリ，１０７  シフト初期ベクトルメモリ，７０１  画素情報演算部，７０２  評価値演算部，７０３  着目画素差分演算部，７０４  ベクトル評価部，７０５  ベクトル選択部，７１１  画素差分判定部，７１２  評価値判定部，８０１  ベクトル補償部，８０２  評価値演算部，８０３  補償候補ベクトルメモリ，８０４  同一ベクトル判定部
【図１】
2007110461.tif 000016
【図２】
2007110461.tif 000017
【図３】
2007110461.tif 000018
【図４】
2007110461.tif 000019
【図５】
2007110461.tif 000020
【図６】
2007110461.tif 000021
【図７】
2007110461.tif 000022
【図８】
2007110461.tif 000023
【図９】
2007110461.tif 000024
【図１０】
2007110461.tif 000025
【図１１】
2007110461.tif 000026
【図１２】
2007110461.tif 000027
【図１３】
2007110461.tif 000028
【図１４】
2007110461.tif 000029
【図１５】
2007110461.tif 000030
【図１６】
2007110461.tif 000031
【図１７】
2007110461.tif 000032
【図１８】
2007110461.tif 000033
【図１９】
2007110461.tif 000034
【図２０】
2007110461.tif 000035
【図２１】
2007110461.tif 000036
【図２２】
2007110461.tif 000037
【図２３】
2007110461.tif 000038
【図２４】
2007110461.tif 000039
【図２５】
2007110461.tif 000040
【図２６】
2007110461.tif 000041
【図２７】
2007110461.tif 000042
【図２８】
2007110461.tif 000043
【図２９】
2007110461.tif 000044
【図３０】
2007110461.tif 000045
【図３１】
2007110461.tif 000046
【図３２】
2007110461.tif 000047
【図３３】
2007110461.tif 000048
【図３４】
2007110461.tif 000049