説明

動きベクトル検出装置及び方法

【課題】回路規模の増大を抑えつつ、前後のフレームのそれぞれを基点として動きベクトルを検出することができる動きベクトル検出装置を提供する。
【解決手段】基点画素生成部5は、フレームf0またはf1内の画素データに基づいて基点画素fctrを生成する。探索範囲画素生成部6は、フレームf1またはf0内の画素データに基づいて探索範囲画素fmvsを生成する。スイッチ3,4によって1ラインごとにフレームf0,f1を交互に切り換える。動きベクトル候補選択部7は、フレームf0を基点とする動きベクトルMV0とフレームf1を基点とする動きベクトルMV1を交互に生成する。相関比較部8は、動きベクトルMV0,MV1の内、相関の高い方を動きベクトルMVとして選択する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像の動きベクトルを検出する動きベクトル検出装置及び方法に関する。
【背景技術】
【0002】
液晶パネルを用いた画像表示装置で動画像を表示すると残像が生じやすい。そこで、残像を低減させて動画特性を向上させるために、映像信号の実フレーム間に補間フレームを内挿してフレーム数を増大させ、例えば垂直周波数60Hzのフレームレート(フレーム周波数)を2倍の120Hzまたはそれ以上のフレームレートに変換して画像表示することが行われている。映像信号のフレームレートを変換して画像表示する画像表示装置においては、画像の動きベクトルを検出し、動きベクトルを用いて各補間画素を生成し、実フレーム間に内挿する補間フレームを生成する。
【0003】
動きベクトルは、連続するフレームの内の限られた複数のフレーム内の画素に基づいた推定によって検出されるものであり、誤検出なく動きベクトルを検出することは難しい。例えば、空間的に前に位置する前景の画像と空間的に後ろに位置する背景の画像との動きが異なる場合には、動きベクトルの誤検出が発生しやすい。このような場合における動きベクトルの検出精度を向上させる一手法が特許文献1に記載されている。特許文献1に記載の動きベクトル検出装置においては、前後のフレームのそれぞれを基点として動きベクトルを検出し、相関の強い方の動きベクトルを最終的な動きベクトルとする。これによって、動きベクトルの誤検出を低減させることができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2011−82846号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載のような前後のフレームのそれぞれを基点として動きベクトルを検出する構成では、動きベクトルを検出するための回路が2つ必要となり、回路規模が増大してコストアップとなってしまう。そこで、回路規模の増大を極力抑えることが求められる。
【0006】
本発明はこのような要望に対応するため、回路規模の増大を抑えつつ、前後のフレームのそれぞれを基点として動きベクトルを検出することができる動きベクトル検出装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、上述した従来の技術の課題を解決するため、時間的に前後する第1のフレーム内または第2のフレーム内の画素データに基づいて、動きベクトルを検出する際の基点画素データ(fctr)を生成する基点画素生成部(5,12)と、前記基点画素生成部が前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第2のフレーム内の画素データに基づいて動きベクトルを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データを生成し、前記基点画素生成部が前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成する探索範囲画素生成部(6)と、前記基点画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを前記基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返すように切り換える第1の切り換え部(3,13)と、前記探索範囲画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインの一方のラインの画素データに基づいて前記探索範囲画素データを生成する状態と、前記第2のフレーム内の奇数ラインまたは偶数ラインの他方のラインの画素データに基づいて前記探索範囲画素データを生成する状態とを交互に繰り返すように切り換える第2の切り換え部(4,14)と、前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第1の動きベクトルとし、前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第2の動きベクトルとする動きベクトル候補選択部(7)と、前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する相関比較部(8)とを備えることを特徴とする動きベクトル検出装置を提供する。
【0008】
また、本発明は、上述した従来の技術の課題を解決するため、時間的に前後する第1のフレーム内または第2のフレーム内の画素データに基づいて、動きベクトルを検出する際の基点画素データ(fctr)を生成する基点画素生成部(5,12)と、前記基点画素生成部が前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第2のフレーム内の画素データに基づいて動きベクトルを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データを生成し、前記基点画素生成部が前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成する探索範囲画素生成部(6)と、前記基点画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを前記基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返すように切り換える第1の切り換え部(3,13)と、前記探索範囲画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態と、前記第2のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態とを交互に繰り返すように切り換える第2の切り換え部(4,14)と、前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第1の動きベクトルとし、前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第2の動きベクトルとする動きベクトル候補選択部(7)と、前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する相関比較部(8)とを備えることを特徴とする動きベクトル検出装置を提供する。
【0009】
上記のそれぞれの動きベクトル検出装置において、前記相関比較部は、前記第1及び第2のフレームにおける2ラインの期間に1回、前記第1の動きベクトルと前記第2の動きベクトルとを比較し、選択した動きベクトルを2ラインの期間連続して出力することが好ましい。
【0010】
さらに、本発明は、上述した従来の技術の課題を解決するため、時間的に前後する第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを、動きベクトルを検出する際の基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返し(S1,S2)、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインの一方のラインの画素データに基づいて、動きベクトルを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データを生成する状態と、前記第2のフレーム内の奇数ラインまたは偶数ラインの他方のラインの画素データに基づいて前記探索範囲画素データを生成する状態とを、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成し、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するよう交互に繰り返し(S3,S4)、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第1の動きベクトルとして選択し(S5)、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第2の動きベクトルとして選択し(S6)、前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する(S7)ことを特徴とする動きベクトル検出方法を提供する。
【0011】
さらにまた、本発明は、上述した従来の技術の課題を解決するため、時間的に前後する第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを、動きベクトルを検出する際の基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返し(S11,S12)、前記第1のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態と、前記第2のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態とを、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成し、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するよう交互に繰り返し(S131,S14)、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第1の動きベクトルとして選択し(S15)、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第2の動きベクトルとして選択し(S16)、前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する(S17)ことを特徴とする動きベクトル検出方法を提供する。
【0012】
上記のそれぞれの動きベクトル検出方法において、前記第1及び第2のフレームにおける2ラインの期間に1回、前記第1の動きベクトルと前記第2の動きベクトルとを比較し、選択した動きベクトルを2ラインの期間連続して出力することが好ましい。
【発明の効果】
【0013】
本発明の動きベクトル検出装置及び方法によれば、回路規模の増大を抑えつつ、前後のフレームのそれぞれを基点として動きベクトルを検出することが可能となる。
【図面の簡単な説明】
【0014】
【図1】本発明の動きベクトル検出装置の第1実施形態を示すブロック図である。
【図2】図1における各部の画素データをライン単位で示す図である。
【図3】図1における基点画素生成部5の具体的な構成例を示すブロック図である。
【図4】図1における探索範囲画素生成部6の具体的な構成例を示すブロック図である。
【図5】図1におけるフレームf0内の画素データに基づいて基点画素データを生成し、フレームf1内の画素データに基づいて探索範囲画素データを生成した場合の各画素データの平面的な位置関係を示す図である。
【図6】図1におけるフレームf1内の画素データに基づいて基点画素データを生成し、フレームf0内の画素データに基づいて探索範囲画素を生成した場合の各画素データの平面的な位置関係を示す図である。
【図7】図1における動きベクトル候補選択部7で動きベクトルMV0,MV1を生成する際の動作を説明するための図である。
【図8】図1における相関比較部8の具体的な構成例を示すブロック図である。
【図9】図8に示す相関比較部8の動作を説明するための図である。
【図10】本発明の動きベクトル検出装置の第2実施形態を示すブロック図である。
【図11】図10における各部の画素データをライン単位で示す図である。
【図12】図10におけるフレームf1内の画素データに基づいて基点画素データを生成し、フレームf0内の画素データに基づいて探索範囲画素データを生成した場合の各画素データの平面的な位置関係を示す図である。
【図13】図10における動きベクトル候補選択部7で動きベクトルMV0,MV1を生成する際の動作を説明するための図である。
【図14】本発明の動きベクトル検出装置の第3,第4実施形態を示す部分ブロック図である。
【図15】図14におけるフレームメモリ12に対する画素データの書き込み動作を示す図である。
【図16】第3実施形態においてフレームf0が偶数フレームの場合の図14の各部の画素データをライン単位で示す図である。
【図17】第3実施形態においてフレームf0が奇数フレームの場合の図14の各部の画素データをライン単位で示す図である。
【図18】第4実施形態においてフレームf0が偶数フレームの場合の図14の各部の画素データをライン単位で示す図である。
【図19】第4実施形態においてフレームf0が奇数フレームの場合の図14の各部の画素データをライン単位で示す図である。
【図20】第1,第3実施形態の動きベクトル検出方法を説明するための概念図である。
【図21】第2,第4実施形態の動きベクトル検出方法を説明するための概念図である。
【発明を実施するための形態】
【0015】
以下、本発明の動きベクトル検出装置及び方法の各実施形態について、添付図面を参照して説明する。図1,図10は、動きベクトル検出装置を備えるフレームレート変換装置を例としている。
【0016】
<第1実施形態>
図1において、入力された映像信号Sinの各画素データは、フレームメモリ1と、スイッチ3,4と、補間画素生成部9と、フレーム周波数変換部10とに順次入力される。フレームメモリ1は、入力された画素データを1フレーム期間遅延させて出力する。映像信号Sinの現在のフレームをフレームf0、フレームメモリ1より出力された1フレーム過去のフレームをフレームf1とする。フレームメモリ1より出力されたフレームf1の各画素データは、ラインメモリ2とスイッチ4と補間画素生成部9とに順次入力される。
【0017】
ラインメモリ2は、入力されたフレームf1の各ラインの画素データを1ライン期間遅延させて、フレームf1’として出力する。フレームf1とフレームf1’とは1ラインずれた状態である。
【0018】
スイッチ3の端子aにはフレームf0の各画素データが入力され、スイッチ3の端子bにはラインメモリ2より出力されたフレームf1’の各画素データが入力される。スイッチ4の端子cにはフレームf0の各画素データが入力され、スイッチ4の端子dにはフレームf1の各画素データが入力される。
【0019】
スイッチ3は、1ラインごとに端子a,bを切り換えて画素データf01を出力する。スイッチ4は、1ラインごとに端子c,dを切り換えて画素データf10を出力する。図1に示すように、スイッチ3がフレームf0の画素データを択して出力する端子aに接続しているときには、スイッチ4はフレームf1の画素データを択して出力する端子dに接続する。スイッチ3がフレームf1’の画素データを択して出力する端子bに接続しているときには、スイッチ4はフレームf0の画素データを択して出力する端子cに接続する。
【0020】
図2を用いて、スイッチ3,4より出力される画素データf01,f10について説明する。図2において、Ta,Tb,Tc…は、それぞれのラインのタイミングを示している。図2(A)に示すf0-1,f0-2,f0-3…はフレームf0の画素データをライン単位で示している。図2(B)に示すf1-1,f1-2,f1-3…はフレームf1の画素データをライン単位で示している。図2(C)に示すフレームf1’の各ラインは、図2(B)に対して1ラインずれている。
【0021】
スイッチ3は端子a,bを1ラインごとに交互に選択するので、それぞれのラインの画素データf01は図2(D)に示すように出力される。スイッチ4は端子c,dを、スイッチ3が端子aに接続するときは端子dに接続し、スイッチ3が端子bに接続するときは端子cに接続するよう、1ラインごとに交互に選択するので、それぞれのラインの画素データf10は図2(E)に示すように出力される。
【0022】
第1実施形態においては、図2(D)より分かるように、スイッチ3より出力される画素データf01は、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となる。また、図2(E)より分かるように、スイッチ4より出力される画素データf10は、フレームf0の偶数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となる。
【0023】
画素データf01を、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列とし、画素データf10を、フレームf0の奇数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列としてもよい。第1実施形態では、画素データf01を生成する際、フレームf0,f1における奇数ラインと偶数ラインの内、奇数ラインを特定のラインとして選択したが、偶数ラインを特定のラインとして選択してもよい。即ち、画素データf01を、フレームf0の偶数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列としてもよい。
【0024】
スイッチ3より出力された画素データf01は基点画素生成部5に入力され、スイッチ4より出力された画素データf10は探索範囲画素生成部6に入力される。基点画素生成部5は、図3に示すように、ラインメモリ51,52と、画素遅延器であるフリップフロップ(FF)53,54とを備える。図2(D)に示すそれぞれのラインの画素データf01は、ラインメモリ51,52によって1ラインずつ順次遅延され、ラインメモリ52の出力がFF53,54によって1画素ずつ順次遅延される。
【0025】
FF54より出力される画素データは、タイミングTeではf0-3-3となり、タイミングTfではf1-3-3となる。FF54より出力される画素データが、動きベクトルを検出する際の基点画素データとなる。f0-3-3,f1-3-3のように示している画素データの最初のf0またはf1は、フレームf0内の画素データであるか、フレームf1内の画素データであるかを示している。1つ目のハイフンに続く数字(ここでは3)は、ラインの位置(垂直方向の位置)を示している。2つ目のハイフンに続く数字(ここでは3)は、画素の位置(水平方向の位置)を示している。
【0026】
探索範囲画素生成部6は、図4に示すように、ラインメモリ601〜604とFF605〜616とを備える。図2(E)に示すそれぞれのラインの画素データf10は、ラインメモリ601〜604によって1ラインずつ順次遅延される。また、画素データf10は、FF605〜608によって1画素ずつ順次遅延される。ラインメモリ602より出力された画素データは、FF609〜612によって1画素ずつ順次遅延される。ラインメモリ604より出力された画素データは、FF613〜616によって1画素ずつ順次遅延される。
【0027】
図4に示す探索範囲画素生成部6は、動きベクトルの探索範囲を水平方向及び垂直方向に5画素ずつ、即ち、25画素を探索範囲とした例を示している。ここでは簡略化のため、水平方向及び垂直方向に5画素ずつを動きベクトルの探索範囲としているが、実際にはさらに多くの画素数が探索範囲となる。水平方向と垂直方向の探索範囲の画素数が異なる場合もある。
【0028】
タイミングTeにおいて、入力された画素データf10を画素データf1-5-5とすると、FF605〜608より出力される画素データはf1-5-4〜f1-5-1となる。ラインメモリ602より出力される画素データはf1-3-5、FF609〜612より出力される画素データはf1-3-4〜f1-3-1となる。ラインメモリ604より出力される画素データはf1-1-5、FF613〜616より出力される画素データはf1-1-4〜f1-1-1となる。
【0029】
タイミングTfにおいては、入力された画素データf10を画素データf0-6-5とすると、FF605〜608より出力される画素データはf0-6-4〜f0-6-1となる。ラインメモリ602より出力される画素データはf0-4-5、FF609〜612より出力される画素データはf0-4-4〜f0-4-1となる。ラインメモリ604より出力される画素データはf0-2-5、FF613〜616より出力される画素データはf0-2-4〜f0-2-1となる。
【0030】
タイミングTeにおいて、図3に示す基点画素生成部5より出力される画素データf0-3-3の平面的な位置は図5(A)に示す位置であり、図4に示す探索範囲画素生成部6より出力される画素データf1-1-1〜f1-1-5,f1-3-1〜f1-3-5,f1-5-1〜f1-5-5の平面的な位置は図5(B)に示す位置である。画素データf0-3-3と画素データf1-3-3とは、同じ平面的な位置にある。
【0031】
タイミングTfにおいて、図3に示す基点画素生成部5より出力される画素データf1-3-3の平面的な位置は図6(A)に示す位置であり、図4に示す探索範囲画素生成部6より出力される画素データf0-2-1〜f0-2-5,f0-4-1〜f0-4-5,f0-6-1〜f0-6-5の平面的な位置は図6(B)に示す位置である。上記のように、動きベクトルの探索範囲は水平方向及び垂直方向に5画素ずつであるので、破線にて囲んだ画素データf0-6-1〜f0-6-5は使用されない。
【0032】
図1に戻り、基点画素生成部5より出力される基点画素となる画素データを基点画素データfctrとし、探索範囲画素生成部6より出力される動きベクトルの探索範囲の画素データを探索範囲画素データfmvsとする。基点画素データfctr及び探索範囲画素データfmvsは、動きベクトル候補選択部7に入力される。動きベクトル候補選択部7は、基点画素データfctrと探索範囲画素データfmvsにおけるそれぞれの画素データとの差分を求め、最も差分の小さい、即ち、最も相関の高い動きベクトル候補を選択する。
【0033】
具体的には、フレームf0内の画素データが基点画素データfctrとなっている場合には、タイミングTaの場合を例にすると、動きベクトル候補選択部7は、図7(A)に示すように、フレームf0の画素データf0-3-3と、フレームf1の画素データf1-1-1〜f1-1-5,f1-3-1〜f1-3-5,f1-5-1〜f1-5-5それぞれとの差分を求める。そして、動きベクトル候補選択部7は、画素データf0-3-3の画素から画素データf1-1-1〜f1-1-5,f1-3-1〜f1-3-5,f1-5-1〜f1-5-5それぞれの画素へと向かう動きベクトル候補MVc0の中から、最も相関の高い動きベクトル候補を選択する。選択した動きベクトル候補を動きベクトルMV0とする。
【0034】
また、フレームf1内の画素データが基点画素データfctrとなっている場合には、タイミングTbの場合を例にすると、動きベクトル候補選択部7は、図7(B)に示すように、フレームf1の画素データf1-3-3と、フレームf0の画素データf0-2-1〜f0-2-5,f0-4-1〜f0-4-5それぞれとの差分を求める。そして、動きベクトル候補選択部7は、画素f1-3-3の画素から画素データf0-2-1〜f0-2-5,f0-4-1〜f0-4-5それぞれの画素へと向かう動きベクトル候補MVc1の中から、最も相関の高い動きベクトル候補を選択する。選択した動きベクトル候補を動きベクトルMV1とする。
【0035】
図7(A),(B)においては、簡略化のため、動きベクトル候補MVc0,MVc1の内の一部のみを示している。また、図7(A),(B)では、フレームf0内の画素データを基点画素データfctrとした場合と、フレームf1内の画素データを基点画素データfctrとした場合とで、探索範囲画素データfmvsがライン方向にずれていることを理解しやすいよう、基点画素データfctrが含まれるフレームを左側に揃えて図示している。図7(A)では時間は左から右へと経過し、図7(B)では時間は右から左へと経過している。
【0036】
図4に示すラインメモリ601〜604は、図7(A),(B)に示す動きベクトル候補MVc0,MVc1の探索範囲の垂直方向のライン数Lvを決める。探索範囲画素生成部6内のラインメモリの数は、動きベクトル候補MVc0,MVc1の探索範囲の垂直方向のライン数Lvに応じて設定する。図3に示すラインメモリ51,52は、基点画素データfctrを探索範囲の垂直方向の半分のラインLctrだけずらして、基点画素データfctrを探索範囲の垂直方向の中央に位置させる。基点画素生成部5内のラインメモリの数も、動きベクトル候補MVc0,MVc1の探索範囲の垂直方向のライン数Lvに応じて設定する。
【0037】
図3と図4とを比較すれば明らかなように、基点画素生成部5内のラインメモリの数は、探索範囲画素生成部6内のラインメモリの数の半分となる。
【0038】
動きベクトル候補選択部7からは動きベクトルMV0と動きベクトルMV1とがラインごとに交互に出力される。動きベクトル候補選択部7より出力された動きベクトルMV0,MV1は、相関比較部8に入力される。
【0039】
図8,図9を用いて、相関比較部8の具体的構成及び動作について説明する。図8において、動きベクトルMV0,MV1は、図9(A)に示すように、ラインごとに交互に出力される。2ラインの期間に1回出力される動きベクトルMV0を順にMV0(1),MV0(2),MV0(3),MV0(4)…とし、2ラインの期間に1回出力される動きベクトルMV1を順にMV1(1),MV1(2),MV1(3),MV1(4)…とする。動きベクトルMV0,MV1は分離部81に入力される。分離部81は、ラインごとに動きベクトルMV0と動きベクトルMV1とを交互に選択して、図9(B)に示すように動きベクトルMV0と動きベクトルMV1とを分離する。
【0040】
分離部81より出力された動きベクトルMV0はラインメモリ82に入力されて1ライン期間遅延されて、比較選択器83に入力される。動きベクトルMV1は比較選択器83に入力される。図9(C)は、比較選択器83に入力される1ライン期間遅延された動きベクトルMV0と、動きベクトルMV1とを示している。比較選択器83に入力される動きベクトルMV0,MV1は両者のタイミングが揃えられている。
【0041】
比較選択器83は、動きベクトルMV0と動きベクトルMV1とを比較して、相関が高い方の動きベクトルを選択して出力する。図9(D)は、比較選択器83が選択して出力した動きベクトルの例を示している。動きベクトルMV0であるMV0(1),MV0(2),MV0(3)が連続して選択された後、動きベクトルMV1であるMV1(4),MV1(5)が連続して選択された状態を示している。比較選択器83より出力された動きベクトルはラインメモリ84及びトグルスイッチ85に入力される。
【0042】
ラインメモリ84は入力された動きベクトルを1ライン期間遅延させる。トグルスイッチ85は、比較選択器83より出力された動きベクトルと、ラインメモリ84より出力された1ライン期間遅延された動きベクトルとを交互に選択して、図9(E)に示す動きベクトルMVを出力する。
【0043】
このように、相関比較部8は、2ラインの期間に1回、動きベクトルMV0と動きベクトルMV1とを比較し、より相関が高いと判断した動きベクトルMV0と動きベクトルMV1との一方の動きベクトルを2ラインの期間連続させて、動きベクトルMVとして出力する。動きベクトルMVは、補間画素生成部9に入力される。
【0044】
補間画素生成部9は、特に図示しないが、複数のラインメモリ及び複数のFFを備え、入力されたフレームf0の画素データとフレームf1の画素データとを水平方向及び垂直方向に遅延させて、補間画素データを生成するための水平及び垂直方向の所定範囲の画素データを生成する。そして、補間画素生成部9は、入力された動きベクトルMVに基づいて、フレームf0内の複数の画素データとフレームf1内の複数の画素データの中からそれぞれ画素データを選択して、両者を平均して補間画素データPiを生成する。
【0045】
補間画素生成部9には、フレームf0,f1における各画素データが順次入力されるので、補間画素生成部9からはフレームf0,f1間に内挿するそれぞれの補間フレームを構成する各補間画素データPiが順次生成されることになる。補間画素生成部9より出力される補間画素データPiより構成される補間フレームを補間フレームf0.5とする。
【0046】
フレーム周波数変換部10には、フレームf0の各画素データと補間フレームf0.5の各画素データ(補間画素データPi)とが入力される。フレーム周波数変換部10は、補間フレームf0.5とフレームf0とをこの順で、入力された映像信号Sinの2倍のフレーム周波数で交互に出力する。これによって、フレーム周波数変換部10は、フレームf0,f1間に補間フレームが内挿され、映像信号Sinの2倍のフレーム周波数である映像信号Soutを出力する。
【0047】
以上説明したように、第1実施形態の動きベクトル検出装置における各構成は次のように動作している。基点画素生成部5は、時間的に前後する第1のフレーム(フレームf0)内または第2のフレーム(フレームf1)内の画素データに基づいて、動きベクトルMVを検出する際の基点画素データfctrを生成する。探索範囲画素生成部6は、基点画素生成部5が第1のフレーム内の画素データに基づいて基点画素fctrを生成する際には、第2のフレーム内の画素データに基づいて、基点画素生成部5が第2のフレーム内の画素データに基づいて基点画素データfctrを生成する際には、第1のフレーム内の画素データに基づいて、動きベクトルMVを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データfmvsを生成する。
【0048】
スイッチ3は、基点画素生成部5が、第1及び第2のフレームにおける1ラインごとに、第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データに基づいて基点画素データfctrを生成する状態と、第2のフレーム内の選択したラインの画素データに基づいて基点画素fctrを生成する状態とを交互に繰り返すように切り換える第1の切り換え部として動作している。
【0049】
スイッチ4は、探索範囲画素生成部6が、第1及び第2のフレームにおける1ラインごとに、第1のフレーム内の奇数ラインまたは偶数ラインの一方のラインの画素データに基づいて探索範囲画素データfmvsを生成する状態と、第2のフレーム内の奇数ラインまたは偶数ラインの他方のラインの画素データに基づいて探索範囲画素データfmvsを生成する状態とを交互に繰り返すように切り換える第2の切り換え部として動作している。
【0050】
動きベクトル候補選択部7は、基点画素生成部5が、第1の切り換え部による切り換えによって、第1のフレーム内の画素データに基づいて基点画素データfctrを生成し、探索範囲画素生成部6が、第2の切り換え部による切り換えによって、第2のフレーム内の画素データに基づいて探索範囲画素fmvsを生成するとき、基点画素データfctrと探索範囲画素データfmvsのそれぞれの画素データとを結ぶ複数の動きベクトル候補MVc0の中から最も相関の高い動きベクトル候補を選択して動きベクトルMV0(第1の動きベクトル)とする。
【0051】
また、動きベクトル候補選択部7は、基点画素生成部5が、第1の切り換え部による切り換えによって、第2のフレーム内の画素データに基づいて基点画素データfctrを生成し、探索範囲画素生成部6が、第2の切り換え部による切り換えによって、第1のフレーム内の画素データに基づいて探索範囲画素データfmvsを生成するとき、基点画素データfctrと探索範囲画データfmvsのそれぞれの画素データとを結ぶ複数の動きベクトル候補MVc1の中から最も相関の高い動きベクトル候補を選択して動きベクトルMV1(第2の動きベクトル)とする。
【0052】
相関比較部8は、動きベクトルMV0と動きベクトルMV1とを比較して相関の高い方の動きベクトルを選択し、動きベクトルMVとして出力する。
【0053】
以上の説明より分かるように、第1実施形態によれば、前後のフレームであるフレームf0,f1のそれぞれを基点として動きベクトルMV0,MV1を検出することができ、相関の強い方の動きベクトルを最終的な動きベクトルMVとすることができる。従って、動きベクトルMVの誤検出を大幅に低減させることができる。第1実施形態によれば、動きベクトルを検出するための回路は1つでよく、回路規模の増大はごくわずかであるので、ほとんどコストアップとなることはない。
【0054】
第1実施形態によれば、垂直方向の動きベクトルMVにおける奇数ベクトルと偶数ベクトルの一方が省かれることになる。しかしながら、画素を垂直方向に1/2に間引いて動きベクトルを検出することは通常よく行われている。第1実施形態は、画素を垂直方向に1/2に間引いて動きベクトルを検出する動きベクトル検出装置と比較すると、動きベクトルの検出能力は同じとなる。従って、奇数ベクトルと偶数ベクトルの一方が省かれることは実質的には問題とならない。
【0055】
<第2実施形態>
図10を用いて第2実施形態について説明する。図10において、図1と同一部分には同一符号を付し、その説明を適宜省略する。図10においては、フレームf0の各画素データがラインメモリ2に入力され、ラインメモリ2は、フレームf0の各ラインの画素データを1ライン期間遅延させて、フレームf0’として出力する。
【0056】
スイッチ3の端子aにはフレームf0の各画素データが入力され、スイッチ3の端子bにはフレームf1の各画素データが入力される。スイッチ4の端子cにはラインメモリ2より出力されたフレームf0’の各画素データが入力され、スイッチ4の端子dにはフレームf1の各画素データが入力される。
【0057】
スイッチ3,4は、図1と同様に、1ラインごとに端子a,bを切り換えて画素データf01を出力し、1ラインごとに端子c,dを切り換えて画素データf10を出力する。図1におけるスイッチ3,4と図10におけるスイッチ3,4とでは、入力される画素データが異なるので、画素データf01,f10として出力される画素データ列が異なることになる。
【0058】
図11を用いて、スイッチ3,4より出力される画素データf01,f10について説明する。図11(A)に示すf0-1,f0-2,f0-3…はフレームf0の画素データをライン単位で示している。図11(B)に示すフレームf0’の各ラインは、図2(A)に対して1ラインずれている。図2(C)に示すf1-1,f1-2,f1-3…はフレームf1の画素データをライン単位で示している。
【0059】
スイッチ3は端子a,bを1ラインごとに交互に選択するので、それぞれのラインの画素データf01は図11(D)に示すように出力される。スイッチ4は端子c,dを、スイッチ3が端子aに接続するときは端子dに接続し、スイッチ3が端子bに接続するときは端子cに接続するよう、1ラインごとに交互に選択するので、それぞれのラインの画素データf10は図11(E)に示すように出力される。
【0060】
第2実施形態においては、図11(D)より分かるように、スイッチ3より出力される画素データf01は、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となる。また、図11(E)より分かるように、スイッチ4より出力される画素データf10は、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となる。
【0061】
画素データf01を、フレームf0の偶数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列とし、画素データf10を、フレームf0の偶数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列としてもよい。
【0062】
図10における基点画素生成部5及び探索範囲画素生成部6以降の各部の動作は図1と同じである。第2実施形態においては、スイッチ3より出力される画素データf01が図11(D)に示す画素データ列、スイッチ4より出力される画素データf10図11(E)に示す画素データ列となるので、基点画素生成部5より出力される基点画素データfctrと探索範囲画素生成部6より出力される探索範囲画素データfmvsとの位置関係は次の通りとなる。
【0063】
例えばタイミングTaでは、第1実施形態と同じ図5(A),(B)に示す位置関係となる。タイミングTbでは、第1実施形態で説明した図6(A),(B)に示す位置関係ではなく、図12(A),(B)に示す位置関係となる。
【0064】
従って、第2実施形態においては、フレームf0内の画素データが基点画素データfctrとなっている場合には、タイミングTaの場合を例にすると、動きベクトル候補選択部7は、図13(A)に示すように、フレームf0の画素データf0-3-3と、フレームf1の画素データf1-1-1〜f1-1-5,f1-3-1〜f1-3-5,f1-5-1〜f1-5-5それぞれとの差分を求める。そして、動きベクトル候補選択部7は、画素データf0-3-3の画素から画素データf1-1-1〜f1-1-5,f1-3-1〜f1-3-5,f1-5-1〜f1-5-5それぞれの画素へと向かう動きベクトル候補MVc0の中から、最も相関の高い動きベクトル候補を選択する。選択した動きベクトル候補を動きベクトルMV0とする。
【0065】
また、フレームf1内の画素データが基点画素データfctrとなっている場合には、タイミングTbの場合を例にすると、動きベクトル候補選択部7は、図13(B)に示すように、フレームf1の画素データf1-3-3と、フレームf1の画素データf0-1-1〜f0-1-5,f0-3-1〜f0-3-5,f0-5-1〜f0-5-5それぞれとの差分を求める。そして、動きベクトル候補選択部7は、画素f1-3-3の画素から画素データf0-1-1〜f0-1-5,f0-3-1〜f0-3-5,f0-5-1〜f0-5-5それぞれの画素へと向かう動きベクトル候補MVc1の中から、最も相関の高い動きベクトル候補を選択する。選択した動きベクトル候補を動きベクトルMV1とする。
【0066】
このように、第2実施形態においては、フレームf0内の画素データを基点画素データfctrとする場合と、フレームf1内の画素データを基点画素データfctrとする場合のいずれの場合も、動きベクトル候補MVc0,MVc1の探索範囲の垂直方向において、奇数ラインまたは偶数ラインの一方のみの画素データを用いて動きベクトルMV0,MV1を検出する。
【0067】
以上説明したように、第2実施形態の動きベクトル検出装置における各構成は次のように動作している。第1実施形態の動きベクトル検出装置と異なる点についてのみ説明すると、スイッチ4は、探索範囲画素生成部6が、基点画素生成部5で選択したラインと同じである第1のフレーム内の選択したラインの画素データに基づいて探索範囲画素データfmvsを生成する状態と、第2のフレーム内の選択したラインの画素データに基づいて探索範囲画素データfmvsを生成する状態とを交互に繰り返すように切り換える第2の切り換え部として動作している。
【0068】
第2実施形態によれば、フレームf0内の画素データを基点画素データfctrとする場合と、フレームf1内の画素データを基点画素データfctrとする場合の双方で、垂直方向の動きベクトルMVにおける奇数ベクトルと偶数ベクトルの一方が省かれることになる。図13の例では、奇数ベクトルが省かれるので、フレームf0内の画素データを基点画素データfctrとする場合と、フレームf1内の画素データを基点画素データfctrとする場合も、垂直方向の奇数の動きを検出することができない。偶数ベクトルを省けば、垂直方向の偶数の動きを検出することができなくなる。
【0069】
しかしながら、第2実施形態によれば、フレームf0内の画素データを基点画素データfctrとする場合と、フレームf1内の画素データを基点画素データfctrとする場合の双方で、垂直方向の偶数または奇数の一方の動きを検出することできる。従って、第2実施形態によれば、垂直方向の偶数または奇数の動きの一方については、第1実施形態よりも精度よく検出することが可能となる。第2実施形態においても、奇数ベクトルと偶数ベクトルの一方が省かれることは実質的には問題とならない。
【0070】
<第3実施形態>
図14を用いて第3実施形態について説明する。図14に示す第3実施形態は、図1におけるフレームメモリ1の代わりに2フレーム分の容量を有するフレームメモリ12を用い、ラインメモリ2を削除して、画素データの読み出し方を工夫することによって、基点画素生成部5を省略するようにしたものである。
【0071】
図14において、フレームf0の各画素データはスイッチ11に入力される。スイッチ11は図14で新たに設けられたものである。フレームメモリ12はそれぞれ1フレーム分の容量を有するエリアAとエリアBとを有する。スイッチ11は、1フレームごとに端子e,fを交互に切り換える。従って、エリアAとエリアBは、2フレームに1回、書き込まれる画素データが更新されることになる。
【0072】
フレームメモリ12の出力段にはスイッチ13,14が設けられている。スイッチ13,14は図1におけるスイッチ3,4の代わりに用いられる。スイッチ13の端子gにはエリアAから出力された画素データfA’が入力され、端子hにはエリアBから出力された画素データfB’が入力される。スイッチ14の端子iにはエリアAから出力された画素データfAが入力され、端子jにはエリアBから出力された画素データfBが入力される。
【0073】
スイッチ13は1ラインごとに端子g,hを交互に選択することにより、フレームf0,f1のいずれも奇数ラインを読み出して画素データf01を出力する。スイッチ14は1ラインごとに端子i,jを交互に選択することにより、フレームf0では偶数ライン、フレームf1では奇数ラインを読み出して画素データf10を出力する。スイッチ13が端子gに接続しているとき、スイッチ14は端子jに接続し、スイッチ13が端子gに接続しているとき、スイッチ14は端子iに接続する。
【0074】
図15は、フレームメモリ12のエリアAとエリアBに書き込まれるフレームの状態を示している。図15(A)に示すようにフレームf0が1,2,3…と進行していく。図15(B)に示すように、フレームf0が1,3,5…のとき、エリアAに画素データが書き込まれる。図15(C)に示すように、フレームf0が2,4,6…のとき、エリアBに画素データが書き込まれる。エリアA,Bは、2フレームの期間、それぞれの画素データを保持している。
【0075】
図14において、画素データfA’,fB’は、エリアA,Bにフレームf0の画素データが書き込まれるタイミングでは、画素データfA,fBと同じラインを出力し、フレームf0の画素データが書き込まれないタイミングでは、画素データfA,fBと1ライン遅延させたラインを出力する。この画素データfA’,fB’の出力制御は、フレームメモリ12に対するアドレス制御や、ラインメモリ及びセレクタを用いることによって容易に実現できる。
【0076】
図16は、フレームf0が2,4,6…のときの画素データfA,fA’,fB,fB’,f01,f10の状態を示している。フレームf0が2,4,6…のときには、図15に示すように、エリアAにはフレームf0の画素データが書き込まれず、エリアBにフレームf0の画素データが書き込まれる。従って、図16(A),(B)に示すように、画素データfA’は画素データfAに対して1ライン遅延されており、図16(C),(D)に示すように、画素データfB’は画素データfBと同じラインとなる。
【0077】
スイッチ13が1ラインごとに端子g,hを交互に選択し、これに合わせて、スイッチ14が端子j,iを交互に選択するので、スイッチ13より出力される画素データf01は図16(E)となり、スイッチ14より出力される画素データf10は図16(F)となる。
【0078】
図17は、フレームf0が3,5,7…のときの画素データfA,fA’,fB,fB’,f01,f10の状態を示している。フレームf0が3,5,7…のときには、図15に示すように、エリアAにフレームf0の画素データが書き込まれ、エリアBにはフレームf0の画素データが書き込まれない。従って、図17(A),(B)に示すように、画素データfA’は画素データfAと同じラインとなり、図17(C),(D)に示すように、画素データfB’は画素データfBに対して1ライン遅延されている。
【0079】
スイッチ13が1ラインごとに端子g,hを交互に選択し、これに合わせて、スイッチ14が端子j,iを交互に選択するので、スイッチ13より出力される画素データf01は図17(E)となり、スイッチ14より出力される画素データf10は図17(F)となる。
【0080】
このように、第3実施形態においては、スイッチ13より出力される画素データf01は、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となり、スイッチ14より出力される画素データf10は、フレームf0の偶数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となる。
【0081】
第3実施形態においても、画素データf01を、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列とし、画素データf10を、フレームf0の奇数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列としてもよい。画素データf01を、フレームf0の偶数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列としてもよい。
【0082】
第3実施形態においては、フレームメモリ12から、図1における基点画素生成部5より出力される基点画素データfctrに相当する画素データを直接読み出すことができるので、基点画素生成部5を省略することができる。探索範囲画素生成部6,動きベクトル候補選択部7,相関比較部8,補間画素生成部9,フレーム周波数変換部10の動作は図1と同じであり、説明を省略する。第3実施形態においても、第1実施形態と同様の効果を奏する。
【0083】
第3実施形態においては、図14に示すフレームメモリ12とを用い、フレームメモリ12からの読み出し制御によって、基点画素生成部5と実質的に同様の動作を行っている。従って、フレームメモリ12が、時間的に前後する第1のフレーム(フレームf0)内または第2のフレーム(フレームf1)内の画素に基づいて、動きベクトルMVを検出する際の基点画素データfctrを生成する基点画素生成部として動作していることになる。
【0084】
スイッチ13が、第1及び第2のフレームにおける1ラインごとに、第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データに基づいて基点画素データfctrを生成する状態と、第2のフレーム内の選択したラインの画素データに基づいて基点画素fctrを生成する状態とを交互に繰り返すように切り換える第1の切り換え部として動作している。
【0085】
スイッチ14が、第1及び第2のフレームにおける1ラインごとに、第1のフレーム内の奇数ラインまたは偶数ラインの一方のラインの画素データに基づいて探索範囲画素データfmvsを生成する状態と、第2のフレーム内の奇数ラインまたは偶数ラインの他方のラインの画素データに基づいて探索範囲画データfmvsを生成する状態とを交互に繰り返すように切り換える第2の切り換え部として動作している。
【0086】
<第4実施形態>
第4実施形態は、回路構成としては第3実施形態と同じであり、スイッチ14による画素データの読み出しを第3実施形態とは異ならせることによって、第2実施形態と実質的に同等の構成にしたものである。第4実施形態においては、図14におけるスイッチ14は、フレームf0,f1のいずれも奇数ラインを読み出して画素データf10を出力する。
【0087】
第4実施形態においては、画素データfA,fB,fA’,fB’は、エリアA,Bにフレームf0の画素データが書き込まれるタイミングでは、画素データfA,fBを1ライン遅延させて出力し、画素データfA’,fB’をライン遅延なしで出力する。エリアA,Bにフレームf0の画素データが書き込まれないタイミングでは、画素データfA,fBをライン遅延なしで出力し、画素データfA’,fB’を1ライン遅延させて出力する。この画素データfA,fB,fA’,fB’の出力制御は、フレームメモリ12に対するアドレス制御や、ラインメモリ及びセレクタを用いることによって容易に実現できる。
【0088】
図18は、フレームf0が2,4,6…のときの画素データfA,fA’,fB,fB’,f01,f10の状態を示している。フレームf0が2,4,6…のときには、図15に示すように、エリアAにはフレームf0の画素データが書き込まれず、エリアBにフレームf0の画素データが書き込まれる。従って、図18(A),(B)に示すように、画素データfA’は画素データfAに対して1ライン遅延されており、図18(C),(D)に示すように、画素データfBは画素データfB’に対して1ライン遅延されている。
【0089】
スイッチ13が1ラインごとに端子g,hを交互に選択し、これに合わせて、スイッチ14が端子j,iを交互に選択するので、スイッチ13より出力される画素データf01は図18(E)となり、スイッチ14より出力される画素データf10は図18(F)となる。
【0090】
図19は、フレームf0が3,5,7…のときの画素データfA,fA’,fB,fB’,f01,f10の状態を示している。フレームf0が3,5,7…のときには、図15に示すように、エリアAにフレームf0の画素データが書き込まれ、エリアBにはフレームf0の画素データが書き込まれない。従って、図18(A),(B)に示すように、画素データfAは画素データfA’に対して1ライン遅延されており、図18(C),(D)に示すように、画素データfB’は画素データfBに対して1ライン遅延されている。
【0091】
スイッチ13が1ラインごとに端子g,hを交互に選択し、これに合わせて、スイッチ14が端子j,iを交互に選択するので、スイッチ13より出力される画素データf01は図18(E)となり、スイッチ14より出力される画素データf10は図18(F)となる。
【0092】
このように、第4実施形態においては、スイッチ13より出力される画素データf01は、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となり、スイッチ14より出力される画素データf10は、フレームf0の奇数ラインの画素データとフレームf1の奇数ラインの画素データとが交互に選択された画素データ列となる。
【0093】
第4実施形態においても、画素データf01を、フレームf0の偶数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列とし、画素データf10を、フレームf0の偶数ラインの画素データとフレームf1の偶数ラインの画素データとが交互に選択された画素データ列としてもよい。
【0094】
第4実施形態においては、フレームメモリ12から、図1における基点画素生成部5より出力される基点画素データfctrに相当する画素データを直接読み出すことができるので、基点画素生成部5を省略することができる。探索範囲画素生成部6,動きベクトル候補選択部7,相関比較部8,補間画素生成部9,フレーム周波数変換部10の動作は図10と同じであり、説明を省略する。第4実施形態においても、第2実施形態と同様の効果を奏する。
【0095】
第4実施形態においても、図14に示すフレームメモリ12とを用い、フレームメモリ12からの読み出し制御によって、基点画素生成部5と実質的に同様の動作を行っている。従って、フレームメモリ12が、時間的に前後する第1のフレーム(フレームf0)内または第2のフレーム(フレームf1)内の画素データに基づいて、動きベクトルMVを検出する際の基点画素データfctrを生成する基点画素生成部として動作している。
【0096】
スイッチ14が、第1のフレーム内の選択したラインの画素データに基づいて探索範囲画素データfmvsを生成する状態と、第2のフレーム内の選択したラインの画素データに基づいて探索範囲画素データfmvsを生成する状態とを交互に繰り返すように切り換える第2の切り換え部として動作している。
【0097】
次に、図20を用いて、第1実施形態及び第3実施形態の動きベクトル検出装置において行われている第1,第3実施形態の動きベクトル検出方法の概略について説明する。図20において、基点画素生成部5またはフレームメモリ12は、ステップS1にて、第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データに基づいて、動きベクトルMVを検出する際の基点画素データfctrを生成する。基点画素生成部5またはフレームメモリ12は、ステップS2にて、第2のフレーム内の選択したラインの画素データに基づいて基点画素データfctrを生成する。
【0098】
ステップS1とステップS2とは、スイッチ3,4または13,14によって1ラインごと交互に繰り返される。
【0099】
探索範囲画素生成部6は、ステップS3にて、第2のフレーム内の奇数ラインまたは偶数ラインの一方のラインの画素データに基づいて、動きベクトルMVを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データfmvsを生成する。探索範囲画素生成部6は、ステップS4にて、第1のフレーム内の奇数ラインまたは偶数ラインの他方のラインの画素データに基づいて探索範囲画素データfmvsを生成する。
【0100】
ステップS3とステップS4とは、スイッチ3,4または13,14によって1ラインごと交互に、ステップS1が実行される場合にはステップS3が、ステップS2が実行される場合にはステップS4が実行されるように繰り返される。
【0101】
動きベクトル候補選択部7は、ステップS5にて、ステップS1にて生成した第1のフレーム内の画素データに基づいた基点画素データfctrと、ステップS3にて生成した第2のフレーム内の画素データに基づいた探索範囲画素データfmvsとを用い、基点画素データfctrの画素と探索範囲画素データfmvsのそれぞれの画素とを結ぶ複数の動きベクトル候補MVc0の中から最も相関の高い動きベクトル候補を動きベクトルMV0(第1の動きベクトル)として選択する。
【0102】
動きベクトル候補選択部7は、ステップS6にて、ステップS2にて生成した第2のフレーム内の画素データに基づいた基点画素データfctrと、ステップS4にて生成した第1のフレーム内の画素データに基づいた探索範囲画素データfmvsとを用い、基点画素データfctrの画素と探索範囲画素データfmvsのそれぞれの画素とを結ぶ複数の動きベクトル候補MVc1の中から最も相関の高い動きベクトル候補を動きベクトルMV1(第2の動きベクトル)として選択する。
【0103】
相関比較部8は、ステップS7にて、動きベクトルMV0と動きベクトルMV1とを比較して、相関の高い方の動きベクトルを選択し、選択した動きベクトルを最終的な動きベクトルMVとして決定する。
【0104】
さらに、図21を用いて、第2実施形態及び第4実施形態の動きベクトル検出装置において実行されている第2,第4実施形態の動きベクトル検出方法の概略について説明する。図21において、ステップS11,S12は図20のステップS1,S2と同じである。
【0105】
探索範囲画素生成部6は、ステップS13にて、ステップS11にて選択したラインと同じ、第2のフレーム内の選択したラインの画素データに基づいて探索範囲画素データfmvsを生成する。探索範囲画素生成部6は、ステップS14にて、ステップS12にて選択したラインと同じ、第1のフレーム内の選択したラインの画素データに基づいて探索範囲画素データfmvsを生成する。ステップS13とステップS14とは、スイッチ3,4または13,14によって1ラインごと交互に、ステップS11が実行される場合にはステップS13が、ステップS12が実行される場合にはステップS14が実行されるように繰り返される。
【0106】
ステップS15〜S17は、図20のステップS5〜S7と同じである。
【0107】
本発明は以上説明した各実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々変更可能である。図1,図10では動きベクトル検出装置を備えるフレームレートを2倍に変換するフレームレート変換装置を例として説明したが、フレームレートを3倍以上に変換するフレームレート変換装置であってもよい。動きベクトル検出装置を搭載する装置としてはフレームレート変換装置に限定されるものではなく、フィルムジャダ除去装置であってもよい。動きベクトル検出装置を搭載する装置は任意の装置でよい。
【符号の説明】
【0108】
1 フレームメモリ
2 ラインメモリ
3,13 スイッチ(第1の切り換え部)
4,14 スイッチ(第2の切り換え部)
5 基点画素生成部
6 探索範囲画素生成部
7 動きベクトル候補選択部
8 相関比較部
9 補間画素生成部
10 フレーム周波数変換部
11 スイッチ
12 フレームメモリ(基点画素生成部)

【特許請求の範囲】
【請求項1】
時間的に前後する第1のフレーム内または第2のフレーム内の画素データに基づいて、動きベクトルを検出する際の基点画素データを生成する基点画素生成部と、
前記基点画素生成部が前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第2のフレーム内の画素データに基づいて動きベクトルを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データを生成し、前記基点画素生成部が前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成する探索範囲画素生成部と、
前記基点画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを前記基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返すように切り換える第1の切り換え部と、
前記探索範囲画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインの一方のラインの画素データに基づいて前記探索範囲画素データを生成する状態と、前記第2のフレーム内の奇数ラインまたは偶数ラインの他方のラインの画素データに基づいて前記探索範囲画素データを生成する状態とを交互に繰り返すように切り換える第2の切り換え部と、
前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第1の動きベクトルとし、前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第2の動きベクトルとする動きベクトル候補選択部と、
前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する相関比較部と、
を備えることを特徴とする動きベクトル検出装置。
【請求項2】
時間的に前後する第1のフレーム内または第2のフレーム内の画素データに基づいて、動きベクトルを検出する際の基点画素データを生成する基点画素生成部と、
前記基点画素生成部が前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第2のフレーム内の画素データに基づいて動きベクトルを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データを生成し、前記基点画素生成部が前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する際には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成する探索範囲画素生成部と、
前記基点画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを前記基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返すように切り換える第1の切り換え部と、
前記探索範囲画素生成部が、前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態と、前記第2のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態とを交互に繰り返すように切り換える第2の切り換え部と、
前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第1の動きベクトルとし、前記基点画素生成部が、前記第1の切り換え部による切り換えによって、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記探索範囲画素生成部が、前記第2の切り換え部による切り換えによって、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を選択して第2の動きベクトルとする動きベクトル候補選択部と、
前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する相関比較部と、
を備えることを特徴とする動きベクトル検出装置。
【請求項3】
前記相関比較部は、前記第1及び第2のフレームにおける2ラインの期間に1回、前記第1の動きベクトルと前記第2の動きベクトルとを比較し、選択した動きベクトルを2ラインの期間連続して出力することを特徴とする請求項1または2に記載の動きベクトル検出装置。
【請求項4】
時間的に前後する第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを、動きベクトルを検出する際の基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返し、
前記第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインの一方のラインの画素データに基づいて、動きベクトルを検出するための水平方向及び垂直方向それぞれ所定の探索範囲に含まれる複数の探索範囲画素データを生成する状態と、前記第2のフレーム内の奇数ラインまたは偶数ラインの他方のラインの画素データに基づいて前記探索範囲画素データを生成する状態とを、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成し、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するよう交互に繰り返し、
前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第1の動きベクトルとして選択し、
前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第2の動きベクトルとして選択し、
前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する
ことを特徴とする動きベクトル検出方法。
【請求項5】
時間的に前後する第1及び第2のフレームにおける1ラインごとに、前記第1のフレーム内の奇数ラインまたは偶数ラインのいずれか一方の選択したラインの画素データを、動きベクトルを検出する際の基点画素データとして生成する状態と、前記第2のフレーム内の前記選択したラインの画素データを前記基点画素データとして生成する状態とを交互に繰り返し、
前記第1のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態と、前記第2のフレーム内の前記選択したラインの画素データに基づいて前記探索範囲画素データを生成する状態とを、前記第1のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成し、前記第2のフレーム内の画素データに基づいて前記基点画素データを生成する場合には、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するよう交互に繰り返し、
前記第1のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第2のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第1の動きベクトルとして選択し、
前記第2のフレーム内の画素データに基づいて前記基点画素データを生成し、前記第1のフレーム内の画素データに基づいて前記探索範囲画素データを生成するとき、前記基点画素データの画素と前記探索範囲画素データのそれぞれの画素とを結ぶ複数の動きベクトル候補の中から最も相関の高い動きベクトル候補を第2の動きベクトルとして選択し、
前記第1の動きベクトルと前記第2の動きベクトルとを比較して、相関の高い方の動きベクトルを選択して出力する
ことを特徴とする動きベクトル検出方法。
【請求項6】
前記第1及び第2のフレームにおける2ラインの期間に1回、前記第1の動きベクトルと前記第2の動きベクトルとを比較し、
選択した動きベクトルを2ラインの期間連続して出力する
ことを特徴とする請求項4または5に記載の動きベクトル検出方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2013−74403(P2013−74403A)
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願番号】特願2011−210985(P2011−210985)
【出願日】平成23年9月27日(2011.9.27)
【出願人】(308036402)株式会社JVCケンウッド (1,152)
【Fターム(参考)】