JP4304911B2 - Motion vector detection apparatus and method - Google Patents

Motion vector detection apparatus and method Download PDF

Info

Publication number
JP4304911B2
JP4304911B2 JP2002108319A JP2002108319A JP4304911B2 JP 4304911 B2 JP4304911 B2 JP 4304911B2 JP 2002108319 A JP2002108319 A JP 2002108319A JP 2002108319 A JP2002108319 A JP 2002108319A JP 4304911 B2 JP4304911 B2 JP 4304911B2
Authority
JP
Japan
Prior art keywords
pixel
motion vector
adjacent
sum
polarity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002108319A
Other languages
Japanese (ja)
Other versions
JP2003304507A (en
Inventor
幸彦 茂木
幸治 青山
一彦 西堀
隆也 星野
真 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2002108319A priority Critical patent/JP4304911B2/en
Publication of JP2003304507A publication Critical patent/JP2003304507A/en
Application granted granted Critical
Publication of JP4304911B2 publication Critical patent/JP4304911B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Television Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、動きベクトル修正装置及び方法に関し、特にブロックマッチング法において本来の動きに適合させた動きベクトルを検出可能な動きベクトル検出装置及び方法に関する。
0
【0002】
【従来の技術】
テレビ放送の走査方式としては、従来から水平走査線を1本おきに飛越して走査するインタレース走査方式が最も広く採用されている。このインタレース走査方式では、テレビジョン受像機側において、入力画像信号に動き補償型のフィールド周波数変換や走査変換を施すことにより、画面全体がちらついて見える面フリッカ妨害を抑え、動きのスムーズな変換画像を得ることができる。
【0003】
上述の動き補償型の変換を行うためには、入力された画像信号において、現フィールドである参照フィールドと、現フィールドから1フレーム前の基準フィールドとの間で差分を算出し、この算出した差分に基づいて動きベクトルの検出を行う。そして、基準フィールドと参照フィールドの中間に位置する動き補正フィールドにおいて、求めた動きベクトルに基づき画素をシフトさせる。ちなみに、この動きベクトルの検出は、一般に実用化されている方式として、ブロックマッチング法が一般的に用いられている。
【0004】
このブロックマッチング法では、図14に示すように、基準フィールド80を複数の基準ブロック101に分割し、基準フィールド80における基準ブロック101と最も高い相関度を示すブロックを、参照フィールド90における探索範囲104内を移動する探索ブロック103から検出する。そして当該検出された探索ブロック103と基準ブロック101間の位置のずれ(移動の方向と大きさ)を動きベクトルとする。
【0005】
上述の相関度の判定は、先ず探索ブロック103の各画素値について、基準ブロック101の対応する画素値との差分をとり、その差によって示される評価値、例えば差分絶対値和を求める。次に、上述の判定操作を全ての探索ブロック103について行い、それぞれ求めた評価値和、すなわち各差分絶対値和から最小のものを求める。この最小の差分絶対値和を与える探索ブロック103を、基準ブロック101と最も高い相関度を示すブロックとし、かかるブロックの原点の画素113と、基準ブロック101の原点の画素との間で特定することができるベクトルを動きベクトルとする。
【0006】
次に、この求めた動きベクトルのベクトル量、ベクトル方向に基づき、画素をシフトさせる量やシフト方向を決定する。そして基準フィールド80、参照フィールド90の中間に位置する動き補正フィールド100において、基準ブロックの原点の画素位置から決定したシフト量等に応じて画素をシフトさせる(或いは、画素113の画素位置からシフト量の分だけ、シフト方向へ画素をシフトさせる)。ここで、シフト量を、動きベクトルのベクトル量の1/2とすれば、動き補正フィールド100においてシフトさせる画素の画素位置は、基準フィールド80における画素位置と、参照フィールド90における画素位置の中央になる。すなわち、基準フィールド80から参照フィールド90へ続く画素の動きがスムーズになるような、動き補正フィールドを挿入することができるため、画面品質の劣化を防止したインタレース画像を作り出すことが可能となる。
【0007】
【発明が解決しようとする課題】
しかしながら、上述した従来のブロックマッチング法は、画面全体に表示される本来の画像の動きに関係なく、単に基準ブロックと誤差の総和が最小となる探索ブロックを最優先して動きベクトルを求めるため、実際の画像の動きと無関係な動きベクトルが求まり、変換画像の画質が劣化する場合がある。
【0008】
0 また例えば、図15(a)に示すように、殆ど左右対称なラインαと、ラインβの二つの縦ラインを有する”u”の文字を右から左へ水平方向にシフトさせる場合に、原点に存在するラインαを構成する一の画素につき差分絶対値和を求めると、図15(b)に示すように、極小点が2箇所生じる。これは原点に存在するラインαを構成する画素201が、参照フィールド上においてAの位置202と相関度が高く、またラインβを構成する画素が参照フィールド上においてBの位置203と相関度が高いため、A,B2箇所で差分絶対値和が小さくなるためである。
【0009】
このため、”u”の左右対称な文字を右から左へ水平方向にシフトさせる場合に、従来のブロックマッチング同様に動きベクトルを求めると、最小となる差分絶対値和を示す画素としてAの位置にシフトしたラインαを構成する画素以外に、Bの位置にシフトしたラインβの画素が求まる場合もあり、動きベクトルの方向が局所的に逆転する。
【0010】
従って、殆ど左右対称な”u”や”H”等の文字について、動きベクトルの水平成分を揃えることにより、画質の劣化を抑える必要があり、特に情報を水平方向へ随時シフトさせるケースが増えた近年のテレビジョン放送において、かかる画質改善の要請は高まっている。
【0011】
更に、ブロックマッチング法の下、求める動きベクトルを実際の画像の動きに適合するようにしても、全体的に動きベクトルがばらつく場合もあり、領域単位での処理破綻の原因となる。このため、実際の画像の動きと無関係な動きベクトルのベクトル方向を修正することにより、動きベクトルのばらつきを解消する必要があった。
【0012】
そこで本発明は、上述したような実情に鑑みて提案されたものであり、実際の画像の動きに適合した動きベクトルを求めることができる動きベクトル検出装置及び方法を提供することを目的とする。
【0013】
【課題を解決するための手段】
本発明は、上述の課題を解決するため、入力される参照フィールドから1フレーム前の基準フィールドの基準画素につき、ブロックマッチング法により動きベクトルを検出する動きベクトル検出装置において、基準フィールドから切り出した基準画素を原点とする基準ブロックと、参照フィールドから切り出した探索範囲内を移動する探索ブロックとの間で、画素値の差分絶対値和を順次演算する演算手段と、上記演算した差分絶対値和の中から上記探索範囲において最小となる差分絶対値和と画素位置と、ライン極小値と称する上記探索範囲の垂直成分に対応する水平ライン毎に最小となる差分絶対値和と画素位置とを識別し、探索範囲において最小となる上記差分絶対値和と、基準画素の垂直負方向に隣接する画素の動きベクトルの垂直成分に対応するライン極小値との差分絶対値を求め、比較する比較手段と、上記比較手段により求めた上記差分絶対値が閾値より小さい場合に、上記基準画素における動きベクトルの垂直成分を上記隣接する画素の動きベクトルの垂直成分に合致するように特定し、上記基準画素における動きベクトルの水平成分を特定した上記垂直成分に対応するライン極小値をもつ画素位置の水平成分に特定し、上記比較手段により求めた上記差分絶対値が閾値以上の場合は、上記探索範囲において最小となる差分絶対値和の画素位置を動きベクトルと特定する第1の動きベクトル特定手段と、上記演算した差分絶対値和から上記探索範囲内において、上記基準画素を原点とした水平方向の正領域及び負領域毎に差分絶対値和の最小値と画素の座標を識別し、上記探索範囲内において最小となる差分絶対値和を示す画素の座標を識別する識別手段と、上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なるかどうかを判定し、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が小さいかどうかを判定する判定手段と、上記判定手段により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なり、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が閾値以下と判定したとき、上記隣接する画素の動きベクトルの水平成分が正の極性を持つ場合は上記正領域の差分絶対値和の最小値となる画素の座標を上記基準画素の動きベクトルと特定し、上記隣接する画素の動きベクトルの水平成分が負の極性を持つ場合は上記負領域の差分絶対値和の最小値となる画素の座標を上記基準画素の動きベクトルと特定し、上記判定手段により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と同じ、又は、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が閾値よりも大きいと判定したときは上記探索範囲内において最小となる差分絶対値和を示す画素の位置を上記基準画素の動きベクトルと特定する第2の動きベクトル特定手段と、上記第1の動きベクトル特定手段により特定された基準画素の動きベクトルと、上記第2の動きベクトル特定手段により特定された基準画素の動きベクトルのうち、いずれか一の動きベクトルを選択するベクトル選択手段とを備えることを特徴とする。
【0014】
また、本発明は、上述の課題を解決するため、入力される参照フィールドから1フレーム前の基準フィールドの基準画素につき、ブロックマッチング法により動きベクトルを検出する動きベクトル検出方法において、基準フィールドから切り出した基準画素を原点とする基準ブロックと、参照フィールドから切り出した探索範囲内を移動する探索ブロックとの間で、画素値の差分絶対値和を順次演算し、上記演算した差分絶対値和の中から上記探索範囲において最小となる差分絶対値和と画素位置と、ライン極小値と称する上記探索範囲の垂直成分に対応する水平ライン毎に最小となる差分絶対値和と画素位置とを識別し、探索範囲において最小となる上記差分絶対値和と、基準画素の垂直負方向に隣接する画素の動きベクトルの垂直成分に対応するライン極小値との差分絶対値を求め、比較し、上記比較した結果、上記差分絶対値が閾値より小さい場合に、上記基準画素における動きベクトルの垂直成分を、上記隣接する画素の動きベクトルの垂直成分に合致するように特定し、上記基準画素における動きベクトルの水平成分を、特定した当該垂直成分に対応するライン極小値をもつ画素位置の水平成分に特定し、上記比較した結果、上記差分絶対値が閾値以上の場合は、上記探索範囲において最小となる差分絶対値和の画素位置を動きベクトルと特定した第1の動きベクトルと、上記演算した差分絶対値和から上記探索範囲内において、上記基準画素を原点とした水平方向の正領域及び負領域毎に差分絶対値和の最小値と画素の座標を識別し、上記探索範囲内において最小となる差分絶対値和を示す画素の座標を識別し、上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なるかどうかを判定し、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が小さいかどうかを判定し、上記判定により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なり、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が閾値以下と判定したとき、上記隣接する画素の動きベクトルの水平成分が正の極性を持つ場合は上記正領域の差分絶対値和の最小値となる画素の座標を上記基準画素の第2の動きベクトルと特定し、上記隣接する画素の動きベクトルの水平成分が負の極性を持つ場合は上記負領域の差分絶対値和の最小値となる画素の座標を上記基準画素の第2動きベクトルと特定し、上記判定により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と同じ、又は、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が閾値よりも大きいと判定したときは、上記探索範囲内において最小となる差分絶対値和を示す画素の位置を上記基準画素の第2の動きベクトルと特定し、上記特定された第1の動きベクトルと、上記特定された第2の動きベクトルの動きベクトルのうち、いずれか一の動きベクトルを選択することを特徴とする。
【0015】
この動きベクトル検出装置及び方法は、基準ブロックと探索ブロックとの間で演算した差分絶対値和の分布傾向を識別し、基準画素の垂直負方向に隣接する画素について予め識別された差分絶対値和の分布傾向と比較した上で、第1の動きベクトルを隣接する画素の動きベクトルに応じて特定し、また基準ブロックと探索ブロックとの間で演算した差分絶対値和の分布の傾向及び探索範囲内において差分絶対値和が最小となる画素についての基準画素の左側に隣接する画素の動きベクトルに基づく相対的な位置に応じて第2の動きベクトルを特定し、特定された第1の動きベクトル及び第2の動きベクトルの動きベクトルのうちいずれか一の動きベクトルを選択する。
【0016】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。
【0017】
本発明は、例えば入力画像信号に対して補間処理を施すことにより、奇数番目の走査線から構成されるフィールド画像と偶数番目の走査線から構成されるフィールド画像により1枚のインタレース画像を形成するテレビジョン受像機に内蔵される。
【0018】
図1は、本発明を適用した動きベクトル検出装置1の構成図を示している。この動きベクトル検出装置1は、画像格納用メモリ11と、誤差演算部12と、比較処理部13と、第1の動きベクトル検出部14と、識別処理部15と、第2の動きベクトル検出部16と、ベクトル選択部17と、ベクトル格納用メモリ18と、動きベクトル修正部19と、動きベクトル検出装置1全体の制御等を行なう制御部20とを備えている。
【0019】
画像格納用メモリ11は、順次供給される入力画像信号を所定のアドレスに格納する。
【0020】
誤差演算部12は、画像格納用メモリ11に格納されている入力画像信号において制御部20から受け取った座標を原点とする画素ブロックを切り出して、ブロック毎の差分絶対値和を順次演算する。またこの誤差演算部12は、演算した差分絶対値和を比較処理部13及び識別処理部15へ送信する。
【0021】
比較処理部13は、誤差演算部12から送信されたブロック毎の差分絶対値和の分布傾向等を識別する。
【0022】
第1の動きベクトル検出部14は、比較処理部13における識別結果に応じて、一の動きベクトルを特定する。この第1の動きベクトル検出部14により特定された動きベクトルを、以下第1の動きベクトルと称する。
【0023】
識別処理部15は、誤差演算部12から送信されたブロック毎の差分絶対値和の分布傾向等を識別する。
【0024】
第2の動きベクトル検出部16は、識別処理部15における識別結果に応じて、一の動きベクトルを特定する。この第2の動きベクトル検出部16により特定された動きベクトルを、以下第2の動きベクトルと称する。
【0025】
ベクトル選択部17は、第1の動きベクトル検出部14から送信される第1の動きベクトルと、第2の動きベクトル16から送信される第2の動きベクトルのうちいずれか一の動きベクトルを選択する。ベクトル選択部17は、この選択した動きベクトルをベクトル格納用メモリ18へ送信する。
【0026】
ベクトル格納用メモリ18は、ベクトル選択部17により送信された動きベクトルを各画素毎に格納する。ちなみに、このベクトル格納用メモリ18に格納された動きベクトルは、第1の動きベクトルや第2の動きベクトルに読み出される場合もある。
【0027】
動きベクトル修正部19は、画素毎に求められた動きベクトルの中から、動きベクトルのばらつき具合を精査し、実際の画像の動きと無関係な動きベクトルが求められている画素(以下、この画素を修正画素と称する)の動きベクトルを修正する。なお本発明に係る動きベクトル検出装置1は、この動きベクトル修正部19を割愛した構成を採用しても良い。
【0028】
次に本発明を適用した動きベクトル検出装置1の動作について説明する。先ず誤差演算部12の動作について説明をする。図2は、画像格納用メモリ11に書き込まれる画像信号としての現フィールドである参照フィールドと、現フィールドから1フレーム前の基準フィールド30の位置関係を示している。基準フィールド30における基準ブロック51と、参照フィールド40における探索ブロック53はそれぞれ、M×Nの画素のサイズで表される。探索ブロック53の探索範囲54は任意に設定される。
【0029】
誤差演算部12は、基準フィールド30を複数の基準ブロック51に分割し、基準フィールド30における基準ブロック51と、参照フィールド40における探索範囲54内を移動する探索ブロック53との間で相関度を判定する。相関度の判定は、先ず探索ブロック53の各画素値について、基準ブロック51の対応する画素値との差分をとり、その差によって示される評価値、例えば差分絶対値和を求める。次に、上述の判定を探索範囲54内の全ての探索ブロック53について行い、差分絶対値和を順次演算する。
【0030】
次に比較処理部13及び第1の動きベクトル検出部14の動作について説明する。この比較処理部13及び第1の動きベクトル検出部14は、上述のブロックマッチングにより求めた差分絶対値和に基づき、以下のコンセプトから第1の動きベクトルを特定する。
【0031】
図3は、探索範囲54内に割り当てられた全探索ブロック53について求めた差分絶対値和の分布傾向の一例を示している。この図3より、差分絶対値和の大きい領域は、基準ブロック51と探索ブロック53との画素値が著しく異なる領域である。一方、凹部を形成している差分絶対値の小さい領域は、基準ブロック51と探索ブロック53との画素値の相関度が高い領域である。すなわち画素値の相関度が高い領域に対して動きベクトルを特定することで、高画質化、高解像度化を実現することができる。
【0032】
探索範囲54は、垂直成分(ys)に対応した水平ラインが割り当てられている。各水平ラインは、それぞれ差分絶対値の極小値を有し、これらの極小値が上述した差分絶対値の低い領域を形成している。以下、これらの水平ライン毎の極小値をライン極小値と称する。
【0033】
また、通常のブロックマッチング同様に探索範囲54全体の中から特定した差分絶対値和の極小値を領域極小値と称する。すなわち各ライン極小値の中で最小となる差分絶対値和は、この領域極小値に相当する。図3において示されるように、黒丸で示した領域極小値は、他のライン極小値と比較しても大差無い。このため、この領域極小値を示す画素の代わりに、ライン極小値を示す画素について、基準ブロック51の原点の画素との間で動きベクトルを特定しても、画質や解像度にほとんど影響が及ばないことになる。
【0034】
従って、第1の動きベクトル検出部14は、かかる性質に着目し、ライン極小値を有する画素の中から本来の画像の動きに最も適合する画素を選択し、基準ブロック51の原点の画素との間で第1の動きベクトルを特定する。
【0035】
次に、第1の動きベクトルを検出する手順について、図4を用いて詳細に説明する。
【0036】
先ずステップS11において、誤差演算部12において求められた差分絶対値和を順次抽出する。探索範囲54内部を移動する全ての探索ブロック53につき差分絶対値和を抽出した後、ステップS12に移行する。
【0037】
ステップS12では、算出した差分絶対値和の中から先ず領域極小値を選び出し、当該領域極小値を示す画素の座標を特定する。
【0038】
次にステップS13へ移行し、算出した差分絶対値和の中から、水平ライン毎にライン極小値を選び出し、当該ライン極小値を示す画素の座標を特定する。
【0039】
次にステップS14へ移行し、基準ブロック51の原点の画素から垂直負方向に隣接する画素(以下、この画素を隣接画素と称する)に基づいて本来の画像の動きを識別するため、動きベクトルに関する情報を取得する。すなわち、この隣接画素の動きベクトル、及び当該動きベクトルに基づくライン極小値を、隣接画素情報として取得することにより、本来の画像の動きを識別することができる。ちなみに、この隣接画素の動きベクトルに基づくライン極小値は、隣接画素と、隣接画素から動きベクトル分ずらした(参照フィールド40における)水平ラインにおけるライン極小値である。以下このライン極小値を、候補ライン極小値Kと称する。
【0040】
次にステップS15に移行し、先ず候補ライン極小値Kと領域極小値との差分絶対値を求める。基準ブロック51の原点の画素の動きベクトルを、隣接画素の動きベクトルに合わせることにより、本来の画像の動きに適合させるためには、基準ブロック51の原点の画素と隣接画素の動きのパターンが類似している必要がある。このためには、両者のライン極小値の配列傾向(差分絶対値和の分布傾向)が類似していることが条件となる。このライン極小値の配列傾向が類似しているか否か判別するために、候補ライン極小値Kと領域極小値の差分絶対値を求めて比較を行う。
【0041】
このステップS15において、求めた候補ライン極小値Kと領域極小値との差分絶対値が所定の閾値より大きい場合には、隣接画素と、基準ブロック51の原点の画素におけるライン極小値の配列傾向が異なることを示唆しており、かかる場合にはステップS16へ移行する。また求めた候補ライン極小値Kと領域極小値との差分絶対値がが所定の閾値より小さい場合には、隣接画素と、基準ブロック51の原点の画素におけるライン極小値の配列傾向が類似していることを示唆しており、かかる場合にはステップS17に移行する。なお、この所定の閾値は、動きベクトルのばらつき具合を考慮して任意に設定される。
【0042】
ステップS16に移行した場合には、隣接画素の動きベクトルに合わせても本来の画像の動きに適合させることができないため、通常のブロックマッチング法と同様に、基準ブロック51と最も高い相関度を示す探索ブロック53により動きベクトルを求める。すなわち、領域極小値を有する画素と、基準ブロック51の原点の画素との間で求める動きベクトルを特定する。
【0043】
ステップS17に移行した場合に、求める第1の動きベクトルを隣接画素の動きベクトルに合わせる。すなわち、求める第1の動きベクトルの水平成分、垂直成分をそれぞれ(Vx、Vy)とし、また隣接画素の動きベクトルの水平成分、垂直成分をそれぞれ(Vxu、Vyu)としたときに、Vyについては、Vy=Vyuとなるように設定する。すなわち、原点の座標から垂直方向にVyだけ移動させた水平ライン上においてライン極小値を有する画素へ動くように動きベクトルを合わせる。図5に示す例において、Vyu=+1である場合には、原点の座標からVyだけ移動させた水平ラインは、ys=+1の水平ラインである。この水平ラインにおけるライン極小値を有する画素の水平成分は、xs=−2である。従って、動きベクトルは、水平成分Vxが−2であり垂直成分Vyが+1として特定されることとなる。
【0044】
すなわち、第1の動きベクトル検出部14は、求める第1の動きベクトルの垂直成分を隣接画素の動きベクトルに合致させ、求める第1の動きベクトルの水平成分を、特定した垂直成分に対応する水平ライン上においてライン極小値を有する画素に応じて求める。この第1の動きベクトルを求めることにより、動きベクトルそのもののばらつきを解消することにより本来の画像の動きに適合させることができるため、動きベクトルのばらつきを抑えることができ、ひいては変換画像の劣化を防止することができる。
【0045】
次に識別処理部15及び第2の動きベクトル検出部16の動作について説明する。この識別処理部15及び第2の動きベクトル検出部16は、上述のブロックマッチング法により求めた差分絶対値和に基づき、以下のコンセプトから第2の動きベクトルを特定する。
【0046】
本来の画像の動きを識別するために、左隣の画素の動きベクトルを本来の画像の動きを識別するためのパラメータとして読み出す。そして図6に示すように、動きベクトルを求める画素35(基準ブロック51の原点の画素)の左隣に位置する画素34において求められている動きベクトルが正確なものであると仮定する。実際には、画素35の動きベクトルの方向を、該左隣に位置する画素34の動きベクトルに合わせる。このようにして求められた画素35の動きベクトルも正確なものとなるため、さらに画素36の動きベクトルを求める際に、画素35を参酌することができ、動きベクトルの正確性を担保することが可能となる。
【0047】
次に第2の動きベクトルを特定する手順について図7に基づいて詳細に説明する。まずステップS21において、誤差演算部12において求められた差分絶対値和を抽出する。このステップS21において、探索範囲54内部を移動する全ての探索ブロック53につき差分絶対値和を抽出した後、ステップS22に移行する。
【0048】
ステップS22では、探索範囲54において領域極小値を示す画素を選別し、当該画素の座標を特定する。この領域極小値を示す画素の座標を(xs_min、ys_min)とする。
【0049】
次にステップS23へ移行し、図6に示すように、探索範囲54を、基準ブロックの原点の画素35を中心とした正領域56と、負領域57に分割する。そして分割した正領域56と負領域57毎に、差分絶対値和の極小値を選別し、当該画素の座標を特定する。以下、差分絶対値和の正領域における極小値を正領域極小値と称し、また差分絶対値和の負領域の極小値を負領域極小値と称する。すなわち、求めた領域極小値は、正領域極小値或いは負領域極小値のいずれかと一致することとなる。
【0050】
次にステップS24へ移行し、基準ブロック51の原点の画素35の左隣の画素34において求められた動きベクトルの情報を取得する。すなわち、この左隣の画素34の動きベクトル、及び当該動きベクトルに基づく差分絶対値和を、隣接画素情報として取得することにより、本来の画像の動きを識別することができる。
【0051】
次にステップS25へ移行し、領域極小値を示す画素の位置を、画素34において求められた動きベクトルに基づき、相対的に判定する。具体的には、領域極小値を示す画素のx座標(xs_min)と、画素34において求められた動きベクトルの水平成分(以下、Vx_lと称する)との積を求め、正か負かを識別することにより、両者の位置関係を把握する。
【0052】
図8の例は、左隣の画素34の動きベクトルにおける水平成分Vx_lが、負の極性を有する場合について示している。ここで領域極小値を示す画素のxs_minの極性が負の場合には、正確性が担保された左隣の画素34の動きベクトルと水平成分が揃う。このため、かかる領域極小値を示す画素と原点の画素34との間で動きベクトルを特定しても動きベクトルがばらつくことはなくなる。従って、求めた積が0以上の場合は、ステップS26へ移行し、通常のブロックマッチング法と同様に動きベクトルを求める。なお、水平成分Vx_lが、正の極性を有する場合についても同様に積を求めることにより、両者の位置関係を把握することができる。
【0053】
一方、領域極小値を示す画素の水平成分xs_minの極性が正の場合には、図9に示すように、左隣の画素34の動きベクトルと水平成分が逆方向になるため、ステップS28へ移行し、以下に説明するように動きベクトルを特定することで両者の水平成分を揃える。これにより、正領域極小値或いは負領域極小値を有する画素の中から、左隣の画素34における動きベクトルの水平成分に適合する画素を選択し、原点の画素35との間で動きベクトルを特定することができる。
【0054】
すなわち、このステップS28以下に示す動きベクトルの特定において、原点の画素35との間で動きベクトルを求める画素を、正領域極小値或いは負領域極小値を示す画素のいずれから選び出す。そして選び出した負領域極小値或いは正領域極小値を示す画素と、原点の画素35との間で動きベクトルを特定する。なお、正領域極小値を示す画素或いは負領域極小値を示す画素から一の画素を選び出すため、両者間の差分絶対値和の格差が小さいことが望ましい。このため、ステップS27において、正領域極小値と負領域極小値を比較し、格差が小さい場合のみステップS28へ移行し、上述の動きベクトルの特定を行なっても良い。なお、この正領域極小値と負領域極小値の比較は、例えば、正領域極小値と負領域極小値の差分絶対値を求め、当該差分絶対値が閾値を下回る場合のみにステップS28へ移行しても良い。
【0055】
ステップS28以下における動きベクトルの特定は、具体的に次の手順により行う。先ずVx_lが0以上か否か判定する。Vx_lが0以上の場合には、正領域極小値を示す画素の座標を、上述の領域最小値を示す画素の座標(xs_min、ys_min)として定義し直す。一方、Vx_lが0より小さい場合には、負領域極小値を示す画素の座標を、上述の領域最小値を示す画素の座標(xs_min、ys_min)として定義し直す。
【0056】
ステップS29では、定義し直した座標(xs_min、ys_min)と原点の座標との間で動きベクトルを特定する。
【0057】
ちなみに、求めた差分絶対値が閾値を越える場合において上述したステップS28,29の処理を進めると却って画質の低下等の不都合を生じるため、ステップS26へ移行して、通常のブロックマッチング法と同様に動きベクトルを求める。
【0058】
すなわち、この第2の動きベクトル検出部16は、正領域極小値或いは負領域極小値を有する画素の中から、左隣の画素34の水平成分の極性に適合する画素を選択し、当該選択した画素と原点の画素との間で第2の動きベクトルを求める。この第2の動きベクトルを求めることにより、差分絶対値和の極小点が複数生じるような、左右対称な"u"や"H"の文字等についても動きベクトルの水平成分を揃えることができ、画質の劣化を抑えることが可能となり、ひいては情報を水平方向へ随時シフトさせる場合が増えた近年の放送のニーズに応えることができる。
【0059】
ちなみに、ベクトル選択部17は、上述のように求められた第1の動きベクトル及び第2の動きベクトルのうち、所定の優先順位に従って一のベクトルを選択する。この所定の優先順位を、例えば本来の画像の動きに適合するような動きベクトルを優先して選択するようにすれば、更に動きベクトルのばらつきを解消することができ、更なる高画質化を期待することができる。
【0060】
次に、動きベクトル修正部19の処理手順について図10を用いて説明する。すなわち、この図10に示す処理手順では、各画素毎に選択された動きベクトルが格納されているベクトル格納用メモリ18から、実際の画像の動きと無関係な動きベクトルが求められている画素(以下、この画素を修正画素と称する)を抽出し、当該修正画素に隣接する修正隣接画素の動きベクトルに適合させるものである。
【0061】
まず、動きベクトル修正部19は、ステップS31において各変数を初期化し、次にステップS32において、図11に示す隣接画素A〜Hの中から最初の修正隣接画素(例えば修正隣接画素A)における動きベクトルを抽出する。
【0062】
次に、動きベクトル修正部19は、ステップS33において、修正隣接画素における動きベクトルの水平成分の極性Vx_iを識別し、当該極性がプラスであればステップS34へ移行し、当該極性がマイナスであればステップS35へ移行する。
【0063】
ステップS34において、動きベクトル修正部19は、図示しないカウンタCnt_pに1を加算し、また抽出した動きベクトルの水平成分を、修正隣接画素の水平成分の和Vx_ave_pへ、また当該動きベクトルの垂直成分を垂直成分の和Vy_ave_pへ加算し、ステップS36へ移行する。
【0064】
ステップS35において、動きベクトル修正部19は、図示しないカウンタCnt_mに1を加算し、また抽出した動きベクトルの水平成分を、修正隣接画素の水平成分の和Vx_ave_mへ、当該動きベクトルの垂直成分を垂直成分の和Vy_ave_mへ加算し、ステップS36へ移行する。
【0065】
ステップS36において、動きベクトル修正部19は、ステップS33で識別した修正隣接画素が、抽出すべき隣接画素A〜Hのうち最後の修正隣接画素か否か識別する。最後の修正隣接画素であればステップS38へ移行する。最後の修正隣接画素でなければステップS37へ移行する。
【0066】
ステップS37において、動きベクトル修正部19は、次の修正隣接画素の動きベクトル(例えば修正隣接画素B)を抽出し、再度ステップS33へ移行する。このルーチンを組むことにより、図11に示す修正隣接画素A〜H全てについて動きベクトルの識別をすることが可能となる。また修正隣接画素A〜H全てについて動きベクトルを識別して、ステップS38に移行する際には、カウンタCnt_pにおいて、動きベクトルの水平成分の極性がプラスである修正隣接画素の個数が、またカウンタCnt_mにおいて、動きベクトルの水平成分の極性がマイナスである修正隣接画素の個数が示されることとなる。さらに、動きベクトルの水平成分の極性がプラスである修正隣接画素における水平成分の和Vx_ave_p、垂直成分の和Vy_ave_pが求められており、また動きベクトルの水平成分の極性がマイナスである修正隣接画素における水平成分の和Vx_ave_m、垂直成分の和Vy_ave_mが求められることになる。
【0067】
ちなみに、ステップS37において、修正隣接画素A〜Hの抽出する順は時計回り、或いは反時計回りであっても良いし、ランダムであっても良い。また抽出する修正隣接画素は、修正隣接画素A〜H全て抽出しなくても良く、例えば、上段の修正隣接画素A〜C、修正隣接画素B,D,E、又は、修正隣接画素A,B,C,D,Eであっても良い。
【0068】
ステップS38に移行すると、動きベクトル修正部19は、カウンタCnt_pとカウンタCnt_mの数値を比較する。その結果、カウンタCnt_pがより大きい場合には、修正隣接画素のうち、動きベクトル水平成分の極性がプラスである修正隣接画素の方が多いことが示され、ステップS39へ移行する。また、カウンタCnt_mがより大きい場合には、修正隣接画素のうち、動きベクトルの水平成分の極性がマイナスである修正隣接画素の方が多いことが示され、ステップS40へ移行する。
【0069】
ステップS39では、動きベクトルの水平成分の極性がプラスである修正隣接画素に基づき、基準画素における修正動きベクトルを求める。この修正動きベクトルの各成分(Vx_n、Vy_n)は、水平成分の極性がプラスである修正隣接画素の各成分の平均値とする。具体的には以下の式に基づき算出する。
【0070】
Vx_n=Vx_ave_p/Cnt_p
Vy_n=Vy_ave_p/Cnt_p
また、ステップS40では、動きベクトルの水平成分の極性がマイナスである修正隣接画素に基づき、基準画素における修正動きベクトルを求める。この修正動きベクトルの各成分(Vx_n、Vy_n)は、水平成分の極性がマイナスである修正隣接画素の各成分の平均値とする。具体的には以下の式に基づき算出する。
【0071】
Vx_n=Vx_ave_m/Cnt_m
Vy_n=Vy_ave_m/Cnt_m
すなわち、動きベクトル修正部19は、上述した図10に示す処理手順を踏むことにより、修正画素の動きベクトルを、修正隣接画素の動きベクトルのベクトル方向をカウントし、多数の修正隣接画素が示すベクトル方向に合うように修正することができる。換言すれば、修正画素の周囲に位置する修正隣接画素の動きベクトルの方向を多数決し、多い方の動きベクトルの方向を実際の画像の動きであるものと推定して、修正画素の動きベクトルのベクトル方向を修正することができる。また、ベクトル選択部17により、求める動きベクトルを実際の画像の動きに適合するようにしても、全体的に動きベクトルがばらつく場合に、ベクトルの方向を修正することができる。これにより、求められる動きベクトルのばらつきを更に解消することが可能となり、ひいては変換画像の劣化を防止することができる。
【0072】
ちなみに本発明は、画素単位の処理に限定されるものではなく、ブロック単位の処理にも適用可能である。この場合、基準画素位置を所定の画素数からなる基準ブロックに代替し、また隣接画素位置を所定の画素数からなり、基準ブロックに隣接する隣接ブロックに代替しても良い。
【0073】
なお、本発明を適用した動きベクトル検出装置1は、上述した実施の形態に限定されるものではない。例えば図12に示すように、誤差演算部12の代替として、制約項演算部22を設けても良い。
【0074】
制約項演算部22は、画像格納用メモリ11に格納されている入力画像信号から制御部20から受け取った座標を原点とする画素ブロックを切り出し、例えばブロックマッチング法等に基づき、ブロック毎の差分絶対値和を順次演算する。また、この制約項演算部22は、探索ブロック53を構成する画素の位置、及び基準画素に隣接する画素の動きベクトルに基づいて制約項を算出し、当該制約項を差分絶対値和に加算する。
【0075】
ちなみに、この制約項は以下のコンセプトに基づいて求められる。本来の画像の動きを識別するために、左隣の画素の動きベクトルを本来の画像の動きを識別するためのパラメータとして、ベクトル格納用メモリ18から読み出す。そして、図6に示す動きベクトルを求める画素35(基準ブロック51の原点の画素)の左隣に位置する画素34において求められている動きベクトルが正確なものであると仮定する。実際には、画素35の動きベクトルの方向を、該左隣に位置する画素34の動きベクトルに合うように制約項を求める。このようにして求められた画素35の動きベクトルも正確なものとなるため、さらに画素36の動きベクトルを求める際に、画素35を参酌して制約項を設定することができ、動きベクトルの正確性を担保することが可能となる。
【0076】
この制約項演算部22における制約項の演算方法について図13を用いて説明をする。
【0077】
先ずステップS41において、基準フィールド30における基準ブロック51と、参照フィールド40における探索範囲54内部を移動する探索ブロック53との間で、差分絶対値和D(xs、ys)を順次演算する。ちなみにxs、ysは、探索ブロック53の中心座標を示している。
【0078】
ステップS42では、探索ブロック53の中心座標(xs、ys)に応じて、制約項G(xs、ys)を求める。このステップS42において、先ず、動きベクトル格納用メモリ14に格納されている隣接画素情報を読み出し、左隣の画素34の動きベクトルの水平成分Vx_lを抽出する。そして、探索範囲54における画素(xs、ys)を、左隣の画素34において求められた動きベクトルの水平成分Vx_lとの関係において求める。具体的には、探索範囲54における画素の水平成分xsと、画素34において求められた動きベクトルの水平成分(以下、Vx_lとする)との積(=xs×Vx_l)を求め、正か負かを識別することにより、両者の位置関係を把握する。積が正であれば探索範囲54における画素の水平成分xsの極性と、隣接する画素34における動きベクトルの水平成分Vx_lの極性は等しく、積が負であれば両者の極性は異なる。
【0079】
ここでxs×Vx_l<0の場合には、G(xs、ys)=αとする(αは正数とする)。一方、xs×Vx_l≧0の場合は、G(xs、ys)=0とする。この制約項G(xs、ys)を演算した後、ステップS43へ移行する。
【0080】
ステップS43では、以下の(12)式に基づいて、修正差分絶対値和S(xs、ys)を求める。
【0081】
S(xs、ys)=D(xs、ys)+G(xs、ys) (12)
この修正差分絶対値は、差分絶対値和D(xs、ys)に、上述のステップS42において求められた制約項G(xs、ys)が加算されている。制約項G(xs、ys)は、探索範囲54における画素の水平成分が、左隣の画素34において求められた動きベクトルの水平成分Vx_lと極性が異なる場合に正数αとして表される。このため、xsとVx_lの極性が異なる場合には正数αが加算されるため、かかる極性が同一の場合と比較して、修正差分絶対値和S(xs、ys)は大きくなる。
【0082】
このようにして求められた修正差分絶対値和S(xs、ys)は、xsとVx_lの極性が異なる場合において大きく、xsとVx_lの極性が同一になる場合において小さい。このため、探索範囲54において最小となる修正差分絶対値和minS(xs、ys)を求めることにより、修正差分絶対値和が相対的に小さくなる画素、すなわちVx_lと極性が同一となる画素において動きベクトルが与えられる可能性が高くなる。
【0083】
従って、誤差演算部12の代替として、制約項演算部22を設けることにより、求めることができる動きベクトルの水平成分は、左隣の画素34の動きベクトルにおける水平成分Vx_lと同一の極性を示す可能性が高くなる。このため、左隣の画素34の動きベクトルの水平成分に適合した動きベクトルを求めることが可能となる。すなわち、制約項演算部22を備える動きベクトル検出装置1は、実際の画像の動きに更に適合した動きベクトルを求めることができ、動きベクトルのばらつきを更に改善することができ、変換画像の劣化をより改善できる。
【0084】
また本発明は、例えばPAL(Phase Alternation by Line)方式において、フィールド周波数を50Hzから2倍の100Hzの画像信号に変換する、フィールド周波数倍速方式を採用するテレビジョン受像機に対しても適用可能である。このフィールド周波数倍速方式を採用するテレビジョンに本発明を内蔵することにより、更なる面フリッカ妨害の抑制を期しつつ、動きベクトルのばらつきを解消することができるため、相乗的に画質を向上させることができる。
【0085】
本発明は上述したインタレース走査方式における入力画像信号の補間処理に適用される場合に限らず、例えば、MPEG(Moving Picture Expert Group)方式の動き補償予測によるフレーム間符号化にも適用可能である。
【0086】
【発明の効果】
以上詳細に説明したように、本発明に係る動きベクトル検出装置及び方法は、基準ブロックと探索ブロックとの間で演算した差分絶対値和の分布傾向を識別し、基準画素の垂直負方向に隣接する画素について予め識別された差分絶対値和の分布傾向と比較した上で、第1の動きベクトルを隣接する画素の動きベクトルに応じて特定し、また基準ブロックと探索ブロックとの間で演算した差分絶対値和の分布の傾向及び探索範囲内において差分絶対値和が最小となる画素についての基準画素の左側に隣接する画素の動きベクトルに基づく相対的な位置に応じて第2の動きベクトルを特定し、特定された第1の動きベクトル及び第2の動きベクトルの動きベクトルのうちいずれか一の動きベクトルを選択する。
【0087】
これにより、本発明に係る動きベクトル検出装置及び方法は、実際の画像の動きに適合した動きベクトルを求めることができ、動きベクトルのばらつきを解消することができ、ひいては変換画像の劣化を防止することができる。
【図面の簡単な説明】
【図1】本発明を適用した動きベクトル検出装置の内部構成例を示した図である。
【図2】参照フィールドと基準フィールドの位置関係を示した図である。
【図3】探索範囲内に割り当てられた全探索ブロックについて求めた差分絶対値和の分布傾向の一例を示した図である。
【図4】第1の動きベクトルを検出する手順について示したフローチャートである。
【図5】本発明を適用した動きベクトル検出方法において、求める動きベクトルを、隣接画素の動きベクトルに応じて特定する場合について説明するための図である。
【図6】動きベクトルを求める画素の順番について説明するための図である。
【図7】第2の動きベクトルを検出する手順について示したフローチャートである。
【図8】第2の動きベクトルを検出する画素について、左隣の画素の動きベクトルにおける水平成分Vx_lが、負の極性を有する場合について示した図である。
【図9】第2の動きベクトルを求める際に行なう置き換え操作について示した図である。
【図10】動きベクトル修正部における処理手順について示したフローチャートである。
【図11】修正隣接画素について説明するための図である。
【図12】誤差演算部の代替として、制約項演算部を設けた動きベクトル検出装置の構成について示した図である。
【図13】制約項演算部により制約項を演算する手順を示したフローチャートである。
【図14】従来のブロックマッチング法について説明するための図である。
【図15】”u”の文字を右から左へ水平方向にシフトさせる場合において求めた差分絶対値和の分布を示した図である。
【符号の説明】
1 動きベクトル検出装置、11 画像格納用メモリ、12 誤差演算部、13 比較処理部、14 第1の動きベクトル検出部、15 識別処理部、16 第2の動きベクトル検出部、17 ベクトル選択部、18 ベクトル格納用メモリ、19 動きベクトル修正部、20 制御部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a motion vector correction apparatus and method, and more particularly to a motion vector detection apparatus and method capable of detecting a motion vector adapted to an original motion in a block matching method.
0
[0002]
[Prior art]
Conventionally, as a scanning system for television broadcasting, an interlace scanning system that scans every other horizontal scanning line is most widely adopted. In this interlaced scanning method, on the television receiver side, motion-compensated field frequency conversion and scanning conversion are performed on the input image signal to suppress surface flicker interference that makes the entire screen flicker, and smooth conversion of motion An image can be obtained.
[0003]
In order to perform the motion compensation type conversion described above, in the input image signal, a difference is calculated between the reference field that is the current field and the reference field one frame before the current field, and the calculated difference The motion vector is detected based on the above. Then, in the motion correction field located between the base field and the reference field, the pixels are shifted based on the obtained motion vector. Incidentally, the block matching method is generally used for detecting the motion vector as a method which is generally put into practical use.
[0004]
In this block matching method, as shown in FIG. 14, the reference field 80 is divided into a plurality of reference blocks 101, and blocks having the highest correlation with the reference block 101 in the reference field 80 are searched for in the search range 104 in the reference field 90. It detects from the search block 103 which moves inside. Then, a position shift (direction and magnitude of movement) between the detected search block 103 and the reference block 101 is used as a motion vector.
[0005]
In the above-described correlation degree determination, first, for each pixel value in the search block 103, a difference from the corresponding pixel value in the reference block 101 is obtained, and an evaluation value indicated by the difference, for example, a sum of absolute differences is obtained. Next, the above-described determination operation is performed for all the search blocks 103, and the minimum value is obtained from the obtained evaluation value sum, that is, the sum of the absolute differences. The search block 103 that gives the minimum sum of absolute differences is a block that has the highest degree of correlation with the reference block 101, and is specified between the origin pixel 113 of the block and the origin pixel of the reference block 101. A vector that can be used as a motion vector.
[0006]
Next, based on the vector amount and vector direction of the obtained motion vector, an amount and a shift direction for shifting the pixel are determined. Then, in the motion correction field 100 located between the base field 80 and the reference field 90, the pixel is shifted according to the shift amount determined from the pixel position at the origin of the base block (or the shift amount from the pixel position of the pixel 113). The pixel is shifted in the shift direction by that amount). Here, if the shift amount is ½ of the vector amount of the motion vector, the pixel position of the pixel to be shifted in the motion correction field 100 is at the center of the pixel position in the reference field 80 and the pixel position in the reference field 90. Become. In other words, since a motion correction field can be inserted so that the motion of pixels following the base field 80 to the reference field 90 becomes smooth, it is possible to create an interlaced image that prevents deterioration of the screen quality.
[0007]
[Problems to be solved by the invention]
However, the above-described conventional block matching method simply obtains a motion vector by giving the highest priority to a search block that minimizes the sum of the reference block and the error regardless of the motion of the original image displayed on the entire screen. A motion vector unrelated to the actual motion of the image is obtained, and the image quality of the converted image may deteriorate.
[0008]
Further, for example, as shown in FIG. 15 (a), in the case where a letter “u” having two vertically symmetrical lines α and β is shifted horizontally from right to left, the origin When the difference absolute value sum is obtained for one pixel constituting the line α existing in FIG. 15, two minimum points are generated as shown in FIG. This is because the pixel 201 constituting the line α existing at the origin has a high correlation with the A position 202 on the reference field, and the pixel constituting the line β has a high correlation with the B position 203 on the reference field. For this reason, the difference absolute value sum is reduced at the A2 and B2 locations.
[0009]
For this reason, when the symmetrical character of “u” is shifted horizontally from right to left, when the motion vector is obtained in the same manner as in conventional block matching, the position of A as a pixel indicating the minimum sum of absolute differences is obtained. In addition to the pixels constituting the line α shifted to, the pixels of the line β shifted to the position B may be obtained, and the direction of the motion vector is locally reversed.
[0010]
Therefore, for almost symmetrical characters such as “u” and “H”, it is necessary to suppress the deterioration of image quality by aligning the horizontal components of the motion vector, and in particular, the number of cases where information is shifted in the horizontal direction at any time has increased. In recent television broadcasting, there is an increasing demand for such image quality improvement.
[0011]
Furthermore, even if the desired motion vector is adapted to the actual motion of the image under the block matching method, the motion vector may vary as a whole, causing a processing failure in units of regions. For this reason, it has been necessary to correct the motion vector variation by correcting the vector direction of the motion vector unrelated to the actual image motion.
[0012]
Therefore, the present invention has been proposed in view of the above-described circumstances, and an object of the present invention is to provide a motion vector detection apparatus and method capable of obtaining a motion vector suitable for an actual image motion.
[0013]
[Means for Solving the Problems]
The present invention In order to solve the above-described problem, in a motion vector detection apparatus that detects a motion vector by a block matching method for a reference pixel of a reference field one frame before an input reference field, the reference pixel cut out from the reference field is used as an origin. Calculating means for sequentially calculating a sum of absolute differences of pixel values between a reference block to be searched and a search block moving within the search range cut out from the reference field, and the search from the calculated sum of absolute differences The difference absolute value sum and the pixel position that are the smallest in the range, and the difference absolute value sum and the pixel position that are the smallest for each horizontal line corresponding to the vertical component of the search range, which is called a line minimum value, are identified. Corresponds to the minimum sum of absolute differences and the vertical component of the motion vector of the adjacent pixel in the vertical negative direction of the reference pixel Calculates a difference absolute value between the line minimum value that, comparing means to compare, if the difference absolute value obtained by said comparing means is smaller than the threshold value, the vertical component of the motion vector in the reference pixel , The vertical component of the motion vector of the adjacent pixel is specified so as to match the horizontal component of the motion vector of the reference pixel. , When the difference absolute value obtained by the comparison means is specified as the horizontal component of the pixel position having the line minimum value corresponding to the specified vertical component and is greater than or equal to the threshold, the difference absolute value sum that is minimum in the search range First motion vector specifying means for specifying the pixel position of the pixel as a motion vector, and the reference pixel as the origin within the search range from the calculated sum of absolute differences Horizontal Identifying means for identifying the minimum value of the sum of absolute differences and the coordinates of the pixel for each positive region and negative region, identifying the coordinates of the pixel indicating the sum of absolute differences within the search range, and within the search range Determining whether or not the polarity of the horizontal component of the coordinate of the pixel indicating the minimum difference absolute value sum is different from the polarity of the horizontal component of the motion vector of the adjacent pixel of the reference pixel, and Above positive area And the minimum sum of absolute differences the above Determination means for determining whether or not the difference from the minimum difference absolute value sum of the negative area is small, and the polarity of the horizontal component of the pixel coordinates indicating the difference absolute value sum that is minimum within the search range by the determination means Is different from the polarity of the horizontal component of the motion vector of the adjacent pixel of the reference pixel, and Above positive area And the minimum sum of absolute differences the above When the horizontal component of the motion vector of the adjacent pixel has a positive polarity when it is determined that the difference from the minimum value of the sum of absolute differences in the negative region is less than or equal to the threshold, the minimum value of the sum of absolute differences in the positive region If the horizontal coordinate of the motion vector of the adjacent pixel has a negative polarity, the coordinate of the pixel that becomes the minimum value of the sum of absolute differences of the negative region is specified as the motion vector of the reference pixel. Is determined as the motion vector of the reference pixel, and the polarity of the horizontal component of the coordinate of the pixel indicating the sum of absolute differences that is the smallest within the search range by the determination means is the motion vector of the pixel adjacent to the reference pixel. Same as horizontal component polarity, or Above positive area And the minimum sum of absolute differences the above When it is determined that the difference with the minimum sum of absolute differences in the negative region is greater than the threshold , A second motion vector specifying means for specifying a position of a pixel showing the minimum sum of absolute differences within the search range as a motion vector of the reference pixel; and a reference pixel specified by the first motion vector specifying means And a vector selection means for selecting one of the motion vectors of the reference pixels identified by the second motion vector identification means.
[0014]
Also, In order to solve the above-described problem, the present invention provides a reference extracted from a reference field in a motion vector detection method for detecting a motion vector by a block matching method for a reference pixel in a reference field one frame before the input reference field. The difference absolute value sum of the pixel values is sequentially calculated between the reference block having the pixel as the origin and the search block moving within the search range cut out from the reference field, and the above difference absolute value sum is calculated from the above calculated difference absolute value sums. The difference absolute value sum and pixel position that are minimum in the search range, and the difference absolute value sum and pixel position that are minimum for each horizontal line corresponding to the vertical component of the search range, which is called a line minimum value, are identified, and the search range Corresponding to the minimum sum of absolute differences described above and the vertical component of the motion vector of the pixel adjacent in the vertical negative direction of the reference pixel. The absolute value of the difference from the line minimum value is obtained, compared, and if the result of the comparison is that the absolute value of the difference is smaller than a threshold value, the vertical component of the motion vector of the reference pixel is the vertical component of the motion vector of the adjacent pixel. Specify the horizontal component of the motion vector in the reference pixel as the horizontal component of the pixel position having the line minimum corresponding to the specified vertical component, As a result of the comparison, If the difference absolute value is greater than or equal to a threshold value, the first motion vector that identifies the pixel position of the difference absolute value sum that is the smallest in the search range as a motion vector, and the calculated difference absolute value sum within the search range The reference pixel as the origin Horizontal Identify the minimum value of the difference absolute value sum and the pixel coordinate for each positive region and negative region, identify the pixel coordinate indicating the difference absolute value sum that is minimum within the search range, and determine the minimum value within the search range. Determining whether the polarity of the horizontal component of the coordinate of the pixel indicating the sum of absolute differences is different from the polarity of the horizontal component of the motion vector of the adjacent pixel of the reference pixel, and Above positive area And the minimum sum of absolute differences the above It is determined whether the difference from the minimum difference absolute value sum of the negative region is small, and the polarity of the horizontal component of the pixel coordinate indicating the difference absolute value sum that is minimum within the search range by the determination is the reference Different from the polarity of the horizontal component of the motion vector of adjacent pixels of the pixel, and Above positive area And the minimum sum of absolute differences the above When the horizontal component of the motion vector of the adjacent pixel has a positive polarity when it is determined that the difference from the minimum value of the sum of absolute differences in the negative region is less than or equal to the threshold, the minimum value of the sum of absolute differences in the positive region Is specified as the second motion vector of the reference pixel, and when the horizontal component of the motion vector of the adjacent pixel has a negative polarity, it becomes the minimum value of the sum of absolute differences of the negative region. The pixel coordinate is specified as the second motion vector of the reference pixel, and the polarity of the horizontal component of the pixel coordinate indicating the sum of absolute differences that is minimum within the search range by the determination is adjacent to the reference pixel. The same as the polarity of the horizontal component of the motion vector, or Above positive area And the minimum sum of absolute differences the above When it is determined that the difference from the minimum difference absolute value sum in the negative region is larger than the threshold value, the position of the pixel indicating the minimum difference absolute value sum in the search range is set to the second movement of the reference pixel. A vector is specified, and any one of the specified first motion vector and the specified second motion vector is selected.
[0015]
The motion vector detection apparatus and method identify a distribution tendency of a difference absolute value sum calculated between a reference block and a search block, and identify a difference absolute value sum previously identified for pixels adjacent in the vertical negative direction of the reference pixel. The first absolute motion vector is identified according to the motion vector of the adjacent pixel and compared with the distribution tendency of the difference absolute value sum distribution calculated and the search range between the reference block and the search block. The second motion vector is identified according to the relative position based on the motion vector of the pixel adjacent to the left side of the reference pixel for the pixel having the smallest difference absolute value sum in the first motion vector thus identified. And one of the motion vectors of the second motion vector is selected.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below.
[0017]
The present invention forms an interlaced image from a field image composed of odd-numbered scanning lines and a field image composed of even-numbered scanning lines, for example, by performing interpolation processing on the input image signal. Built in a television receiver.
[0018]
FIG. 1 shows a configuration diagram of a motion vector detection apparatus 1 to which the present invention is applied. The motion vector detection device 1 includes an image storage memory 11, an error calculation unit 12, a comparison processing unit 13, a first motion vector detection unit 14, an identification processing unit 15, and a second motion vector detection unit. 16, a vector selection unit 17, a vector storage memory 18, a motion vector correction unit 19, and a control unit 20 that controls the entire motion vector detection device 1.
[0019]
The image storage memory 11 stores the sequentially supplied input image signals at a predetermined address.
[0020]
The error calculation unit 12 cuts out a pixel block whose origin is the coordinate received from the control unit 20 in the input image signal stored in the image storage memory 11, and sequentially calculates the sum of absolute differences for each block. In addition, the error calculation unit 12 transmits the calculated sum of absolute differences to the comparison processing unit 13 and the identification processing unit 15.
[0021]
The comparison processing unit 13 identifies the distribution tendency or the like of the difference absolute value sum for each block transmitted from the error calculation unit 12.
[0022]
The first motion vector detection unit 14 specifies one motion vector according to the identification result in the comparison processing unit 13. The motion vector specified by the first motion vector detection unit 14 is hereinafter referred to as a first motion vector.
[0023]
The identification processing unit 15 identifies the distribution tendency or the like of the sum of absolute differences for each block transmitted from the error calculation unit 12.
[0024]
The second motion vector detection unit 16 specifies one motion vector according to the identification result in the identification processing unit 15. The motion vector specified by the second motion vector detection unit 16 is hereinafter referred to as a second motion vector.
[0025]
The vector selection unit 17 selects one of the first motion vector transmitted from the first motion vector detection unit 14 and the second motion vector transmitted from the second motion vector 16. To do. The vector selection unit 17 transmits the selected motion vector to the vector storage memory 18.
[0026]
The vector storage memory 18 stores the motion vector transmitted by the vector selection unit 17 for each pixel. Incidentally, the motion vector stored in the vector storage memory 18 may be read as the first motion vector or the second motion vector.
[0027]
The motion vector correction unit 19 examines the variation degree of the motion vector from the motion vectors obtained for each pixel, and obtains a pixel for which a motion vector irrelevant to the actual image motion is obtained (hereinafter referred to as this pixel). The motion vector (referred to as correction pixel) is corrected. The motion vector detection device 1 according to the present invention may adopt a configuration in which the motion vector correction unit 19 is omitted.
[0028]
Next, the operation of the motion vector detection apparatus 1 to which the present invention is applied will be described. First, the operation of the error calculator 12 will be described. FIG. 2 shows the positional relationship between the reference field, which is the current field as an image signal written in the image storage memory 11, and the reference field 30 one frame before the current field. The reference block 51 in the reference field 30 and the search block 53 in the reference field 40 are each represented by a size of M × N pixels. The search range 54 of the search block 53 is arbitrarily set.
[0029]
The error calculation unit 12 divides the reference field 30 into a plurality of reference blocks 51, and determines the degree of correlation between the reference block 51 in the reference field 30 and the search block 53 that moves within the search range 54 in the reference field 40. To do. For the determination of the degree of correlation, first, for each pixel value of the search block 53, a difference from the corresponding pixel value of the reference block 51 is taken, and an evaluation value indicated by the difference, for example, a sum of absolute differences is obtained. Next, the above determination is performed for all the search blocks 53 in the search range 54, and the sum of absolute differences is sequentially calculated.
[0030]
Next, operations of the comparison processing unit 13 and the first motion vector detection unit 14 will be described. The comparison processing unit 13 and the first motion vector detection unit 14 specify the first motion vector from the following concept based on the sum of absolute differences obtained by the block matching described above.
[0031]
FIG. 3 shows an example of the distribution tendency of the sum of absolute differences obtained for all search blocks 53 assigned within the search range 54. From FIG. 3, the region where the sum of absolute differences is large is a region where the pixel values of the reference block 51 and the search block 53 are significantly different. On the other hand, a region having a small difference absolute value forming a recess is a region having a high degree of correlation between pixel values of the reference block 51 and the search block 53. That is, by specifying a motion vector for a region having a high degree of correlation between pixel values, high image quality and high resolution can be realized.
[0032]
The search range 54 is assigned a horizontal line corresponding to the vertical component (ys). Each horizontal line has a minimum value of the difference absolute value, and these minimum values form a region where the above-described difference absolute value is low. Hereinafter, the minimum value for each horizontal line is referred to as a line minimum value.
[0033]
Similarly to the normal block matching, the minimum value of the sum of absolute differences specified from the entire search range 54 is referred to as a region minimum value. That is, the difference absolute value sum that is the smallest among the line minimum values corresponds to the region minimum value. As shown in FIG. 3, the region minimum value indicated by the black circle is not much different from the other line minimum values. For this reason, even if the motion vector is specified between the pixel indicating the line minimum value and the pixel at the origin of the reference block 51 instead of the pixel indicating the region minimum value, the image quality and the resolution are hardly affected. It will be.
[0034]
Therefore, the first motion vector detection unit 14 pays attention to such a property, selects a pixel that best matches the motion of the original image from the pixels having the line minimum value, and selects the pixel with the origin pixel of the reference block 51. A first motion vector is specified in between.
[0035]
Next, the procedure for detecting the first motion vector will be described in detail with reference to FIG.
[0036]
First, in step S11, the sum of absolute differences obtained by the error calculator 12 is sequentially extracted. After extracting the sum of absolute differences for all search blocks 53 moving within the search range 54, the process proceeds to step S12.
[0037]
In step S12, an area minimum value is first selected from the calculated sum of absolute differences, and the coordinates of the pixel indicating the area minimum value are specified.
[0038]
Next, the process proceeds to step S13, where a line minimum value is selected for each horizontal line from the calculated sum of absolute differences, and the coordinates of the pixel indicating the line minimum value are specified.
[0039]
Next, the process proceeds to step S14, and in order to identify the motion of the original image on the basis of the pixel adjacent in the vertical negative direction from the pixel at the origin of the reference block 51 (hereinafter referred to as the adjacent pixel), Get information. That is, the motion of the original image can be identified by acquiring the motion vector of the adjacent pixel and the line minimum value based on the motion vector as the adjacent pixel information. Incidentally, the line minimum value based on the motion vector of the adjacent pixel is a line minimum value in the horizontal line (in the reference field 40) shifted from the adjacent pixel by the motion vector. Hereinafter, this line minimum value is referred to as a candidate line minimum value K.
[0040]
Next, the process proceeds to step S15, and first, an absolute difference value between the candidate line minimum value K and the region minimum value is obtained. In order to adapt the motion vector of the pixel at the origin of the reference block 51 to the motion vector of the adjacent pixel to match the motion of the original image, the motion pattern of the pixel at the origin of the reference block 51 and the motion of the adjacent pixel are similar. Need to be. For this purpose, it is a condition that the arrangement tendency of the line minimum values of both of them (the distribution tendency of the sum of absolute differences) is similar. In order to determine whether or not the arrangement tendency of the line minimum values is similar, a difference absolute value between the candidate line minimum value K and the region minimum value is obtained and compared.
[0041]
In this step S15, when the difference absolute value between the obtained candidate line minimum value K and the region minimum value is larger than a predetermined threshold value, the arrangement tendency of the line minimum value in the adjacent pixel and the pixel at the origin of the reference block 51 is increased. In this case, the process proceeds to step S16. In addition, when the difference absolute value between the obtained candidate line minimum value K and the region minimum value is smaller than a predetermined threshold, the arrangement tendency of the line minimum values in the adjacent pixel and the pixel at the origin of the reference block 51 is similar. In such a case, the process proceeds to step S17. The predetermined threshold is arbitrarily set in consideration of the degree of motion vector variation.
[0042]
When the process proceeds to step S16, it cannot be adapted to the motion of the original image even if it matches the motion vector of the adjacent pixel, so that it shows the highest degree of correlation with the reference block 51 as in the normal block matching method. A search block 53 determines a motion vector. That is, the motion vector to be obtained is specified between the pixel having the region minimum value and the pixel at the origin of the reference block 51.
[0043]
When the process proceeds to step S17, the obtained first motion vector is matched with the motion vector of the adjacent pixel. That is, when the horizontal component and the vertical component of the first motion vector to be calculated are (Vx, Vy) and the horizontal component and the vertical component of the motion vector of the adjacent pixel are respectively (Vxu, Vyu), , Vy = Vyu. That is, the motion vector is adjusted so as to move to a pixel having a line minimum value on a horizontal line moved by Vy in the vertical direction from the coordinates of the origin. In the example shown in FIG. 5, when Vyu = + 1, the horizontal line moved by Vy from the coordinates of the origin is the horizontal line of ys = + 1. The horizontal component of the pixel having the line minimum value in this horizontal line is xs = −2. Accordingly, the motion vector is specified with the horizontal component Vx being −2 and the vertical component Vy being +1.
[0044]
In other words, the first motion vector detection unit 14 matches the vertical component of the first motion vector to be obtained with the motion vector of the adjacent pixel, and sets the horizontal component of the first motion vector to be obtained to the horizontal corresponding to the specified vertical component. It is obtained according to the pixel having the line minimum value on the line. By obtaining the first motion vector, it is possible to adapt to the motion of the original image by eliminating the variation of the motion vector itself, so that the variation of the motion vector can be suppressed, and the deterioration of the converted image is consequently reduced. Can be prevented.
[0045]
Next, operations of the identification processing unit 15 and the second motion vector detection unit 16 will be described. The identification processing unit 15 and the second motion vector detection unit 16 specify the second motion vector from the following concept based on the sum of absolute differences obtained by the block matching method described above.
[0046]
In order to identify the original image motion, the motion vector of the pixel on the left is read as a parameter for identifying the original image motion. Then, as shown in FIG. 6, it is assumed that the motion vector obtained in the pixel 34 located to the left of the pixel 35 (the pixel at the origin of the reference block 51) for obtaining the motion vector is accurate. Actually, the direction of the motion vector of the pixel 35 is matched with the motion vector of the pixel 34 located on the left side. Since the motion vector of the pixel 35 thus obtained is also accurate, the pixel 35 can be taken into account when further obtaining the motion vector of the pixel 36, and the accuracy of the motion vector can be ensured. It becomes possible.
[0047]
Next, the procedure for specifying the second motion vector will be described in detail with reference to FIG. First, in step S21, the sum of absolute differences obtained by the error calculator 12 is extracted. In step S21, the sum of absolute differences is extracted for all search blocks 53 moving within the search range 54, and then the process proceeds to step S22.
[0048]
In step S <b> 22, a pixel showing the region minimum value in the search range 54 is selected, and the coordinates of the pixel are specified. The coordinates of the pixel indicating the region minimum value are (xs_min, ys_min).
[0049]
Next, the process proceeds to step S23, and as shown in FIG. 6, the search range 54 is divided into a positive area 56 centered on the pixel 35 at the origin of the reference block and a negative area 57. Then, for each of the divided positive region 56 and negative region 57, the minimum value of the sum of absolute differences is selected and the coordinates of the pixel are specified. Hereinafter, the minimum value in the positive region of the difference absolute value sum is referred to as a positive region minimum value, and the minimum value in the negative region of the difference absolute value sum is referred to as a negative region minimum value. That is, the obtained region minimum value matches either the positive region minimum value or the negative region minimum value.
[0050]
Next, the process proceeds to step S24, and information on the motion vector obtained in the pixel 34 adjacent to the left of the origin pixel 35 of the reference block 51 is acquired. That is, the motion of the original image can be identified by acquiring the motion vector of the pixel 34 adjacent to the left and the sum of absolute differences based on the motion vector as adjacent pixel information.
[0051]
Next, the process proceeds to step S25, and the position of the pixel indicating the region minimum value is relatively determined based on the motion vector obtained in the pixel 34. Specifically, the product of the x coordinate (xs_min) of the pixel indicating the region minimum value and the horizontal component (hereinafter referred to as Vx_l) of the motion vector obtained in the pixel 34 is obtained to identify whether it is positive or negative. Thus, the positional relationship between the two is grasped.
[0052]
The example of FIG. 8 shows a case where the horizontal component Vx_l in the motion vector of the pixel 34 adjacent to the left has a negative polarity. Here, when the polarity of xs_min of the pixel indicating the region minimum value is negative, the motion vector and the horizontal component of the pixel 34 on the left side in which accuracy is ensured are aligned. For this reason, even if the motion vector is specified between the pixel indicating the region minimum value and the pixel 34 at the origin, the motion vector does not vary. Therefore, when the obtained product is 0 or more, the process proceeds to step S26, and a motion vector is obtained in the same manner as in the normal block matching method. In addition, even when the horizontal component Vx_l has a positive polarity, it is possible to grasp the positional relationship between the two by similarly obtaining the product.
[0053]
On the other hand, if the polarity of the horizontal component xs_min of the pixel indicating the region minimum value is positive, as shown in FIG. 9, the motion vector and the horizontal component of the pixel 34 on the left are in the opposite direction, and the process proceeds to step S28. Then, as described below, by specifying the motion vector, both horizontal components are aligned. As a result, a pixel that matches the horizontal component of the motion vector in the pixel 34 adjacent to the left is selected from the pixels having the positive region minimum value or the negative region minimum value, and the motion vector is specified with the pixel 35 at the origin. can do.
[0054]
That is, in the specification of the motion vector shown in step S28 and subsequent steps, the pixel for which the motion vector is obtained with respect to the origin pixel 35 is selected from either a pixel showing a positive region minimum value or a negative region minimum value. Then, a motion vector is specified between the pixel indicating the selected negative region minimum value or positive region minimum value and the pixel 35 at the origin. In addition, in order to select one pixel from the pixel which shows a positive area minimum value, or the pixel which shows a negative area minimum value, it is desirable that the difference of the difference absolute value sum between both is small. For this reason, in step S27, the positive region minimum value and the negative region minimum value may be compared, and only when the disparity is small, the process may proceed to step S28 to specify the motion vector described above. The comparison between the positive region minimum value and the negative region minimum value is performed, for example, by calculating the absolute difference value between the positive region minimum value and the negative region minimum value, and the process proceeds to step S28 only when the difference absolute value is below the threshold value. May be.
[0055]
The identification of the motion vector in step S28 and after is specifically performed by the following procedure. First, it is determined whether Vx_l is 0 or more. When Vx_l is 0 or more, the coordinates of the pixel indicating the positive region minimum value are redefined as the coordinates of the pixel indicating the region minimum value (xs_min, ys_min). On the other hand, when Vx_l is smaller than 0, the coordinates of the pixel indicating the minimum negative region value are redefined as the coordinates (xs_min, ys_min) of the pixel indicating the region minimum value.
[0056]
In step S29, a motion vector is specified between the redefined coordinates (xs_min, ys_min) and the coordinates of the origin.
[0057]
Incidentally, if the calculated difference absolute value exceeds the threshold value, if the processing in steps S28 and 29 described above is advanced, inconvenience such as degradation of image quality occurs. Find the motion vector.
[0058]
That is, the second motion vector detection unit 16 selects a pixel that matches the polarity of the horizontal component of the pixel 34 adjacent to the left from the pixels having the positive region minimum value or the negative region minimum value, and selects the selected pixel. A second motion vector is obtained between the pixel and the origin pixel. By obtaining the second motion vector, the horizontal component of the motion vector can be aligned even for symmetrical characters such as “u” and “H”, where a plurality of minimum points of the sum of absolute differences are generated, It becomes possible to suppress the deterioration of the image quality, and as a result, it is possible to meet the recent broadcasting needs in which the case where information is shifted in the horizontal direction at any time has increased.
[0059]
Incidentally, the vector selection unit 17 selects one vector in accordance with a predetermined priority order from the first motion vector and the second motion vector obtained as described above. If the predetermined priority order is selected with priority given to, for example, motion vectors that match the motion of the original image, motion vector variations can be further eliminated, and further improvement in image quality is expected. can do.
[0060]
Next, the processing procedure of the motion vector correction unit 19 will be described with reference to FIG. That is, in the processing procedure shown in FIG. 10, a pixel for which a motion vector irrelevant to the actual image motion is obtained from the vector storage memory 18 in which the motion vector selected for each pixel is stored (hereinafter referred to as a pixel). , This pixel is referred to as a correction pixel), and is adapted to the motion vector of the correction adjacent pixel adjacent to the correction pixel.
[0061]
First, the motion vector correction unit 19 initializes each variable in step S31, and then in step S32, the motion in the first corrected adjacent pixel (for example, corrected adjacent pixel A) among the adjacent pixels A to H shown in FIG. Extract a vector.
[0062]
Next, in step S33, the motion vector correction unit 19 identifies the polarity Vx_i of the horizontal component of the motion vector in the corrected adjacent pixel. If the polarity is positive, the process proceeds to step S34, and if the polarity is negative. Control goes to step S35.
[0063]
In step S34, the motion vector correction unit 19 adds 1 to a counter Cnt_p (not shown), and extracts the horizontal component of the extracted motion vector to the sum Vx_ave_p of the horizontal components of the corrected adjacent pixels and the vertical component of the motion vector. The vertical component is added to the sum Vy_ave_p, and the process proceeds to step S36.
[0064]
In step S35, the motion vector correction unit 19 adds 1 to a counter Cnt_m (not shown), and the extracted horizontal component of the motion vector is vertical to the sum Vx_ave_m of the horizontal components of the corrected adjacent pixels. It adds to the sum Vy_ave_m of the components, and proceeds to step S36.
[0065]
In step S36, the motion vector correcting unit 19 identifies whether or not the corrected adjacent pixel identified in step S33 is the last corrected adjacent pixel among the adjacent pixels A to H to be extracted. If it is the last corrected adjacent pixel, the process proceeds to step S38. If it is not the last corrected adjacent pixel, the process proceeds to step S37.
[0066]
In step S37, the motion vector correcting unit 19 extracts a motion vector (for example, corrected adjacent pixel B) of the next corrected adjacent pixel, and proceeds to step S33 again. By constructing this routine, it becomes possible to identify motion vectors for all the modified adjacent pixels A to H shown in FIG. When the motion vector is identified for all the corrected adjacent pixels A to H and the process proceeds to step S38, the number of the corrected adjacent pixels whose polarity of the horizontal component of the motion vector is positive in the counter Cnt_p and the counter Cnt_m The number of corrected adjacent pixels in which the polarity of the horizontal component of the motion vector is negative is shown. Further, a horizontal component sum Vx_ave_p and a vertical component sum Vy_ave_p in the corrected adjacent pixels in which the polarity of the horizontal component of the motion vector is positive are obtained, and in the corrected adjacent pixel in which the polarity of the horizontal component of the motion vector is negative. The sum Vx_ave_m of the horizontal components and the sum Vy_ave_m of the vertical components are obtained.
[0067]
Incidentally, in step S37, the order in which the corrected adjacent pixels A to H are extracted may be clockwise, counterclockwise, or random. Further, the correction adjacent pixels to be extracted may not be extracted all of the correction adjacent pixels A to H. For example, the upper correction adjacent pixels A to C, the correction adjacent pixels B, D, and E, or the correction adjacent pixels A and B , C, D, E.
[0068]
In step S38, the motion vector correction unit 19 compares the numerical values of the counter Cnt_p and the counter Cnt_m. As a result, when the counter Cnt_p is larger, it is indicated that there are more corrected adjacent pixels in which the polarity of the motion vector horizontal component is positive among the corrected adjacent pixels, and the process proceeds to step S39. On the other hand, when the counter Cnt_m is larger, it is indicated that there are more corrected adjacent pixels in which the polarity of the horizontal component of the motion vector is negative among the corrected adjacent pixels, and the process proceeds to step S40.
[0069]
In step S39, a corrected motion vector in the reference pixel is obtained based on the corrected adjacent pixel whose polarity of the horizontal component of the motion vector is positive. Each component (Vx_n, Vy_n) of the corrected motion vector is an average value of the components of the corrected adjacent pixels in which the horizontal component has a positive polarity. Specifically, it is calculated based on the following formula.
[0070]
Vx_n = Vx_ave_p / Cnt_p
Vy_n = Vy_ave_p / Cnt_p
In step S40, a corrected motion vector at the reference pixel is obtained based on the corrected adjacent pixel in which the polarity of the horizontal component of the motion vector is negative. Each component (Vx_n, Vy_n) of the corrected motion vector is an average value of the components of the corrected adjacent pixels in which the polarity of the horizontal component is negative. Specifically, it is calculated based on the following formula.
[0071]
Vx_n = Vx_ave_m / Cnt_m
Vy_n = Vy_ave_m / Cnt_m
That is, the motion vector correction unit 19 counts the motion vector of the corrected pixel and the vector direction of the motion vector of the corrected adjacent pixel by following the above-described processing procedure shown in FIG. It can be modified to fit the direction. In other words, the direction of the motion vector of the correction adjacent pixel located around the correction pixel is determined by majority, the direction of the larger motion vector is estimated as the actual image motion, and the motion vector of the correction pixel is estimated. The vector direction can be modified. Even if the motion selection vector is adapted to the actual motion of the image by the vector selection unit 17, the direction of the vector can be corrected when the motion vector varies as a whole. As a result, it is possible to further eliminate the required variation in the motion vector, thereby preventing the conversion image from being deteriorated.
[0072]
Incidentally, the present invention is not limited to pixel unit processing, but can be applied to block unit processing. In this case, the reference pixel position may be replaced with a reference block having a predetermined number of pixels, and the adjacent pixel position may be replaced with an adjacent block having a predetermined number of pixels and adjacent to the reference block.
[0073]
The motion vector detection device 1 to which the present invention is applied is not limited to the above-described embodiment. For example, as shown in FIG. 12, a constraint term calculation unit 22 may be provided as an alternative to the error calculation unit 12.
[0074]
The constraint term calculation unit 22 cuts out a pixel block whose origin is the coordinate received from the control unit 20 from the input image signal stored in the image storage memory 11, and, for example, based on the block matching method or the like, the difference absolute value for each block The value sum is calculated sequentially. Further, the constraint term calculation unit 22 calculates a constraint term based on the position of the pixel constituting the search block 53 and the motion vector of the pixel adjacent to the reference pixel, and adds the constraint term to the sum of absolute differences. .
[0075]
Incidentally, this constraint term is obtained based on the following concept. In order to identify the motion of the original image, the motion vector of the pixel adjacent to the left is read from the vector storage memory 18 as a parameter for identifying the motion of the original image. Then, it is assumed that the motion vector obtained in the pixel 34 located on the left side of the pixel 35 (the pixel at the origin of the reference block 51) for obtaining the motion vector shown in FIG. 6 is accurate. Actually, the constraint term is obtained so that the direction of the motion vector of the pixel 35 matches the motion vector of the pixel 34 located on the left side. Since the motion vector of the pixel 35 obtained in this way is also accurate, when the motion vector of the pixel 36 is further determined, a constraint term can be set with reference to the pixel 35, and the motion vector can be accurately determined. It becomes possible to secure the sex.
[0076]
The constraint term calculation method in the constraint term calculation unit 22 will be described with reference to FIG.
[0077]
First, in step S41, the difference absolute value sum D (xs, ys) is sequentially calculated between the reference block 51 in the reference field 30 and the search block 53 moving within the search range 54 in the reference field 40. Incidentally, xs and ys indicate the center coordinates of the search block 53.
[0078]
In step S42, the constraint term G (xs, ys) is obtained according to the center coordinates (xs, ys) of the search block 53. In step S42, first, adjacent pixel information stored in the motion vector storage memory 14 is read, and a horizontal component Vx_l of the motion vector of the left adjacent pixel 34 is extracted. Then, the pixel (xs, ys) in the search range 54 is obtained in relation to the horizontal component Vx_l of the motion vector obtained in the left adjacent pixel 34. Specifically, the product (= xs × Vx_l) of the horizontal component xs of the pixel in the search range 54 and the horizontal component (hereinafter referred to as Vx_l) of the motion vector obtained in the pixel 34 is obtained and is positive or negative. By identifying, the positional relationship between the two is grasped. If the product is positive, the polarity of the horizontal component xs of the pixel in the search range 54 and the polarity of the horizontal component Vx_l of the motion vector in the adjacent pixel 34 are equal, and if the product is negative, the polarities of the two are different.
[0079]
Here, when xs × Vx_l <0, G (xs, ys) = α (α is a positive number). On the other hand, when xs × Vx_l ≧ 0, G (xs, ys) = 0. After calculating the constraint term G (xs, ys), the process proceeds to step S43.
[0080]
In step S43, a corrected difference absolute value sum S (xs, ys) is obtained based on the following equation (12).
[0081]
S (xs, ys) = D (xs, ys) + G (xs, ys) (12)
The corrected difference absolute value is obtained by adding the constraint term G (xs, ys) obtained in step S42 described above to the difference absolute value sum D (xs, ys). The constraint term G (xs, ys) is expressed as a positive number α when the horizontal component of the pixel in the search range 54 is different in polarity from the horizontal component Vx_l of the motion vector obtained in the left adjacent pixel 34. For this reason, since the positive number α is added when the polarities of xs and Vx_l are different, the corrected difference absolute value sum S (xs, ys) is larger than that when the polarities are the same.
[0082]
The corrected difference absolute value sum S (xs, ys) obtained in this way is large when the polarities of xs and Vx_l are different, and small when the polarities of xs and Vx_l are the same. Therefore, by obtaining the corrected difference absolute value sum minS (xs, ys) that is the smallest in the search range 54, the movement is performed in a pixel in which the corrected difference absolute value sum is relatively small, that is, a pixel having the same polarity as Vx_l. The possibility that a vector is given increases.
[0083]
Therefore, by providing the constraint term calculation unit 22 as an alternative to the error calculation unit 12, the horizontal component of the motion vector that can be obtained can have the same polarity as the horizontal component Vx_l in the motion vector of the left adjacent pixel 34. Increases nature. For this reason, a motion vector suitable for the horizontal component of the motion vector of the pixel 34 on the left side can be obtained. That is, the motion vector detection device 1 including the constraint term calculation unit 22 can obtain a motion vector that is more suitable for the actual motion of the image, can further improve the variation of the motion vector, and can reduce the deterioration of the converted image. It can be improved.
[0084]
The present invention is also applicable to a television receiver that employs a field frequency double speed system that converts a field frequency from 50 Hz to 100 Hz image signal, for example, in a PAL (Phase Alternation by Line) system. is there. By incorporating the present invention in a television that adopts this field frequency double speed system, it is possible to eliminate motion vector variations while further suppressing surface flicker interference, and thus synergistically improve image quality. Can do.
[0085]
The present invention is not limited to the case where it is applied to the interpolation processing of the input image signal in the above-described interlace scanning method, and can also be applied to, for example, interframe coding based on motion compensation prediction in the MPEG (Moving Picture Expert Group) method. .
[0086]
【The invention's effect】
As described above in detail, the motion vector detection apparatus and method according to the present invention identify the distribution tendency of the sum of absolute differences calculated between the reference block and the search block, and are adjacent in the vertical negative direction of the reference pixel. The first motion vector is identified according to the motion vector of the adjacent pixel after comparison with the distribution tendency of the difference absolute value sum identified in advance for the pixel to be calculated, and is calculated between the reference block and the search block The second motion vector is determined in accordance with the distribution trend of the difference absolute value sum and the relative position based on the motion vector of the pixel adjacent to the left side of the reference pixel for the pixel having the smallest difference absolute value sum in the search range. The motion vector is identified and one of the identified first motion vector and second motion vector is selected.
[0087]
As a result, the motion vector detection apparatus and method according to the present invention can obtain a motion vector suitable for the motion of an actual image, can eliminate variations in motion vectors, and prevent deterioration of a converted image. be able to.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an internal configuration example of a motion vector detection device to which the present invention is applied.
FIG. 2 is a diagram showing a positional relationship between a reference field and a reference field.
FIG. 3 is a diagram showing an example of the distribution tendency of the sum of absolute differences obtained for all search blocks assigned within a search range.
FIG. 4 is a flowchart showing a procedure for detecting a first motion vector.
FIG. 5 is a diagram for explaining a case where a motion vector to be obtained is specified according to a motion vector of an adjacent pixel in a motion vector detection method to which the present invention is applied.
FIG. 6 is a diagram for explaining an order of pixels for which a motion vector is obtained.
FIG. 7 is a flowchart showing a procedure for detecting a second motion vector.
FIG. 8 is a diagram showing a case where a horizontal component Vx_l in a motion vector of a pixel adjacent to the left has a negative polarity for a pixel for detecting a second motion vector.
FIG. 9 is a diagram showing a replacement operation performed when obtaining a second motion vector.
FIG. 10 is a flowchart illustrating a processing procedure in a motion vector correction unit.
FIG. 11 is a diagram for explaining a corrected adjacent pixel.
FIG. 12 is a diagram illustrating a configuration of a motion vector detection device provided with a constraint term calculation unit as an alternative to an error calculation unit.
FIG. 13 is a flowchart showing a procedure for calculating a constraint term by a constraint term computing unit.
FIG. 14 is a diagram for explaining a conventional block matching method;
FIG. 15 is a diagram showing the distribution of the sum of absolute differences obtained when the character “u” is shifted horizontally from right to left.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Motion vector detection apparatus, 11 Image storage memory, 12 Error calculating part, 13 Comparison processing part, 14 1st motion vector detection part, 15 Identification processing part, 16 2nd motion vector detection part, 17 Vector selection part, 18 vector storage memory, 19 motion vector correction unit, 20 control unit

Claims (10)

入力される参照フィールドから1フレーム前の基準フィールドの基準画素につき、ブロックマッチング法により動きベクトルを検出する動きベクトル検出装置において、
基準フィールドから切り出した基準画素を原点とする基準ブロックと、参照フィールドから切り出した探索範囲内を移動する探索ブロックとの間で、画素値の差分絶対値和を順次演算する演算手段と、
上記演算した差分絶対値和の中から上記探索範囲において最小となる差分絶対値和と画素位置と、ライン極小値と称する上記探索範囲の垂直成分に対応する水平ライン毎に最小となる差分絶対値和と画素位置とを識別し、探索範囲において最小となる上記差分絶対値和と、基準画素の垂直負方向に隣接する画素の動きベクトルの垂直成分に対応するライン極小値との差分絶対値を求め、比較する比較手段と、
上記比較手段により求めた上記差分絶対値が閾値より小さい場合に、上記基準画素における動きベクトルの垂直成分を上記隣接する画素の動きベクトルの垂直成分に合致するように特定し、上記基準画素における動きベクトルの水平成分を特定した上記垂直成分に対応するライン極小値をもつ画素位置の水平成分に特定し、上記比較手段により求めた上記差分絶対値が閾値以上の場合は、上記探索範囲において最小となる差分絶対値和の画素位置を動きベクトルと特定する第1の動きベクトル特定手段と、
上記演算した差分絶対値和から上記探索範囲内において、上記基準画素を原点とした水平方向の正領域及び負領域毎に差分絶対値和の最小値と画素の座標を識別し、上記探索範囲内において最小となる差分絶対値和を示す画素の座標を識別する識別手段と、
上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なるかどうかを判定し、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が小さいかどうかを判定する判定手段と、
上記判定手段により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なり、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が閾値以下と判定したとき、上記隣接する画素の動きベクトルの水平成分が正の極性を持つ場合は上記正領域の差分絶対値和の最小値となる画素の座標を上記基準画素の動きベクトルと特定し、上記隣接する画素の動きベクトルの水平成分が負の極性を持つ場合は上記負領域の差分絶対値和の最小値となる画素の座標を上記基準画素の動きベクトルと特定し、上記判定手段により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と同じ、又は、上記正領域の差分絶対値和の最小値と負領域の差分絶対値和の最小値との差分が閾値よりも大きいと判定したときは上記探索範囲内において最小となる差分絶対値和を示す画素の位置を上記基準画素の動きベクトルと特定する第2の動きベクトル特定手段と、
上記第1の動きベクトル特定手段により特定された基準画素の動きベクトルと、上記第2の動きベクトル特定手段により特定された基準画素の動きベクトルのうち、いずれか一の動きベクトルを選択するベクトル選択手段と
を備えることを特徴とする動きベクトル検出装置。
In a motion vector detection apparatus that detects a motion vector by a block matching method for a reference pixel in a reference field one frame before the input reference field,
An arithmetic means for sequentially calculating a sum of absolute differences of pixel values sequentially between a reference block whose origin is a reference pixel cut out from the reference field and a search block that moves within a search range cut out from the reference field;
The difference absolute value which becomes the minimum for every horizontal line corresponding to the vertical component of the search range, which is called the minimum value of the difference and the pixel position and the line minimum value among the calculated difference absolute value sum. Identify the sum and pixel position, and calculate the absolute value of the difference between the sum of the absolute differences that is the smallest in the search range and the line minimum corresponding to the vertical component of the motion vector of the pixel adjacent in the vertical negative direction of the reference pixel. A comparison means to obtain and compare;
If the difference absolute value obtained by said comparing means is smaller than the threshold value, the vertical component of the motion vector in the reference pixels, identified to match the vertical component of the motion vector of the pixel to be the next, in the reference pixel When the horizontal component of the motion vector is specified as the horizontal component of the pixel position having the line minimum corresponding to the specified vertical component, and the difference absolute value obtained by the comparing means is equal to or larger than the threshold value, First motion vector specifying means for specifying, as a motion vector, a pixel position of a sum of absolute differences that is minimum;
From the calculated sum of absolute differences, within the search range, the minimum value of the sum of absolute differences and the coordinates of the pixels are identified for each of the positive and negative horizontal areas with the reference pixel as the origin. Identifying means for identifying the coordinates of the pixel indicating the sum of absolute differences that is minimum in
The polarity of the horizontal component of the coordinates of a pixel representing a difference absolute value sum becomes minimum within the search range, to determine whether different from the polarities of the horizontal components of the motion vectors of the neighboring pixels of the reference pixels, and the determination means for determining whether the difference between the minimum value and the minimum value of the difference absolute value sum of the negative area of the sum of absolute differences between the positive region is small,
The polarity of the horizontal component of the pixel coordinate indicating the sum of absolute differences that is the smallest within the search range by the determination means is different from the polarity of the horizontal component of the motion vector of the pixel adjacent to the reference pixel, and the positive when the difference between the minimum value of the minimum value and the difference absolute value sum of the negative area of the sum of absolute differences between regions is determined to the threshold value or less, if the horizontal component of the motion vector of the pixel to the adjacent has a positive polarity The coordinate of the pixel that is the minimum value of the sum of absolute differences of the positive area is specified as the motion vector of the reference pixel, and the difference between the negative areas when the horizontal component of the motion vector of the adjacent pixel has a negative polarity The coordinate of the pixel that is the minimum value of the absolute value sum is specified as the motion vector of the reference pixel, and the polarity of the horizontal component of the coordinate of the pixel that indicates the minimum difference absolute value sum within the search range by the determination means is Up The polarity of the horizontal components of the motion vectors of the neighboring pixels of the reference pixel same, or the difference between the minimum value of the difference absolute value sum of the minimum value and the negative region of the sum of absolute differences between the positive region is larger than the threshold value when it is determined in a second motion vector specifying means for specifying a motion vector of the reference pixel positions of pixels indicating the difference absolute value sum becomes minimum within the search range,
Vector selection for selecting one of the motion vector of the reference pixel specified by the first motion vector specifying means and the motion vector of the reference pixel specified by the second motion vector specifying means And a motion vector detecting device.
上記ベクトル選択手段により選択された動きベクトルを各画素毎に順次格納するベクトル格納手段と、
上記選択された動きベクトルを修正する修正画素について隣接する隣接画素の動きベクトルを上記ベクトル格納手段から読み出し、読み出した隣接画素の動きベクトルにおいて水平成分の極性を識別する識別手段と、
上記識別された水平成分の極性が正である隣接画素位置の個数と、上記識別された水平成分の極性が負である隣接画素位置の個数とを比較する比較手段と、
上記識別手段による識別結果に基づいて、極性が正である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を求め、また、極性が負である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を求める演算手段と、
上記比較手段による水平成分の極性が正である隣接画素位置の個数が水平成分の極性が負である隣接画素位置の個数以上となる場合は、上記演算手段により求められた極性が正である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を、上記修正画素位置の動きベクトルにおける水平成分及び垂直成分とし、また、上記比較手段による水平成分の極性が正である隣接画素位置の個数が水平成分の極性が負である隣接画素位置の個数よりも少ない場合は、極性が負である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を、上記修正画素位置の動きベクトルにおける水平成分及び垂直成分とするベクトル修正手段を備えることを特徴とする請求項1記載の動きベクトル検出装置。
Vector storage means for sequentially storing the motion vector selected by the vector selection means for each pixel;
Identification means for reading out a motion vector of an adjacent pixel adjacent to the corrected pixel for correcting the selected motion vector from the vector storage unit, and identifying a polarity of a horizontal component in the read motion vector of the adjacent pixel;
Comparing means for comparing the number of adjacent pixel positions where the polarity of the identified horizontal component is positive and the number of adjacent pixel positions where the polarity of the identified horizontal component is negative;
Based on the identification result by the identification means, the average value of the horizontal component and vertical component of the motion vector at the adjacent pixel position having a positive polarity is obtained, and the horizontal component of the motion vector at the adjacent pixel position having a negative polarity and Means for calculating an average value of vertical components;
When the number of adjacent pixel positions in which the polarity of the horizontal component is positive by the comparison means is equal to or greater than the number of adjacent pixel positions in which the polarity of the horizontal component is negative, the adjacent value in which the polarity obtained by the calculation means is positive The average value of the horizontal and vertical components of the motion vector at the pixel position is used as the horizontal and vertical components of the motion vector at the corrected pixel position , and the number of adjacent pixel positions where the polarity of the horizontal component by the comparison means is positive. Is less than the number of adjacent pixel positions where the polarity of the horizontal component is negative, the average value of the horizontal and vertical components of the motion vector at the adjacent pixel position where the polarity is negative is calculated in the motion vector of the corrected pixel position . 2. The motion vector detection apparatus according to claim 1 , further comprising vector correction means for making a horizontal component and a vertical component.
上記隣接画素は、上記修正画素の左左上右上左下右下に隣接する画素、又は上記修正画素の左上右上に隣接する画素、又は上記修正画素の左右に隣接する画素、又は上記修正画素の左左上右上右に隣接する画素である
ことを特徴とする請求項記載の動きベクトル検出装置。
The adjacent pixels are pixels adjacent to the left , right , top , bottom , top left , top right , bottom left , bottom right of the correction pixel, pixels adjacent to the top left , top , top right of the correction pixel, or the correction pixel left, top, pixels adjacent to the right or left of the modified pixel, the upper left, upper, upper right, the motion vector detecting apparatus according to claim 2, characterized in that the pixel adjacent to the right.
上記演算手段は、上記隣接画素における動きベクトルの水平成分毎、及び垂直成分毎に総和を算出し、算出した各総和を上記識別された水平成分の極性が正である隣接画素の個数、或いは上記識別された水平成分の極性が負である隣接画素の個数で割ることにより、上記隣接画素における動きベクトルの水平成分及び垂直成分の平均値を求めることを特徴とする請求項記載の動きベクトル検出装置。The calculation means calculates a sum for each horizontal component and vertical component of the motion vector in the adjacent pixel, and calculates the total number of adjacent pixels in which the polarity of the identified horizontal component is positive, or the above 3. The motion vector detection according to claim 2, wherein the average value of the horizontal component and the vertical component of the motion vector in the adjacent pixel is obtained by dividing by the number of adjacent pixels in which the polarity of the identified horizontal component is negative. apparatus. 上記基準画素を原点とした直交座標系での、上記探索ブロックの中心に位置する画素における水平成分の極性と、上記基準画素に隣接する画素の動きベクトルにおける水平成分の極性が異なる場合に、正数となる修正値を算出し、上記探索ブロックの中心に位置する画素における水平成分の極性と、上記基準画素に隣接する画素の動きベクトルにおける水平成分の極性が同じ場合に、0となる修正値を算出し、当該修正値を上記差分絶対値和に加算する修正手段を備える
ことを特徴とする請求項1記載の動きベクトル検出装置。
When the polarity of the horizontal component in the pixel located at the center of the search block and the polarity of the horizontal component in the motion vector of the pixel adjacent to the reference pixel are different in the orthogonal coordinate system with the reference pixel as the origin , A correction value that is a number, and is 0 when the polarity of the horizontal component in the pixel located at the center of the search block is the same as the polarity of the horizontal component in the motion vector of the pixel adjacent to the reference pixel The motion vector detection device according to claim 1, further comprising: a correction unit that calculates the correction value and adds the correction value to the difference absolute value sum.
入力される参照フィールドから1フレーム前の基準フィールドの基準画素につき、ブロックマッチング法により動きベクトルを検出する動きベクトル検出方法において、
基準フィールドから切り出した基準画素を原点とする基準ブロックと、参照フィールドから切り出した探索範囲内を移動する探索ブロックとの間で、画素値の差分絶対値和を順次演算し、
上記演算した差分絶対値和の中から上記探索範囲において最小となる差分絶対値和と画素位置と、ライン極小値と称する上記探索範囲の垂直成分に対応する水平ライン毎に最小となる差分絶対値和と画素位置とを識別し、
探索範囲において最小となる上記差分絶対値和と、基準画素の垂直負方向に隣接する画素の動きベクトルの垂直成分に対応するライン極小値との差分絶対値を求め、比較し、
上記比較した結果、上記差分絶対値が閾値より小さい場合に、上記基準画素における動きベクトルの垂直成分を、上記隣接する画素の動きベクトルの垂直成分に合致するように特定し、
上記基準画素における動きベクトルの水平成分を、特定した当該垂直成分に対応するライン極小値をもつ画素位置の水平成分に特定し、
上記比較した結果、上記差分絶対値が閾値以上の場合は、上記探索範囲において最小となる差分絶対値和の画素位置を動きベクトルと特定した第1の動きベクトルと、上記演算した差分絶対値和から上記探索範囲内において、上記基準画素を原点とした水平方向の正領域及び負領域毎に差分絶対値和の最小値と画素の座標を識別し、上記探索範囲内において最小となる差分絶対値和を示す画素の座標を識別し、上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なるかどうかを判定し、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が小さいかどうかを判定し、
上記判定により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と異なり、かつ、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が閾値以下と判定したとき、上記隣接する画素の動きベクトルの水平成分が正の極性を持つ場合は上記正領域の差分絶対値和の最小値となる画素の座標を上記基準画素の第2の動きベクトルと特定し、
上記隣接する画素の動きベクトルの水平成分が負の極性を持つ場合は上記負領域の差分絶対値和の最小値となる画素の座標を上記基準画素の第2動きベクトルと特定し、
上記判定により上記探索範囲内において最小となる差分絶対値和を示す画素の座標の水平成分の極性が、上記基準画素の隣接する画素の動きベクトルの水平成分の極性と同じ、又は、上記正領域の差分絶対値和の最小値と上記負領域の差分絶対値和の最小値との差分が閾値よりも大きいと判定したときは、上記探索範囲内において最小となる差分絶対値和を示す画素の位置を上記基準画素の第2の動きベクトルと特定し、
上記特定された第1の動きベクトルと、上記特定された第2の動きベクトルの動きベクトルのうち、いずれか一の動きベクトルを選択する
ことを特徴とする動きベクトル検出方法。
In a motion vector detection method for detecting a motion vector by a block matching method for a reference pixel in a reference field one frame before the input reference field,
A difference absolute value sum of pixel values is sequentially calculated between a reference block whose origin is the reference pixel cut out from the reference field and a search block that moves within the search range cut out from the reference field,
The difference absolute value which becomes the minimum for every horizontal line corresponding to the vertical component of the search range, which is called the minimum value of the difference and the pixel position and the line minimum value among the calculated difference absolute value sum. Identify the sum and pixel position,
Find and compare the absolute difference value between the minimum difference value in the search range and the line minimum value corresponding to the vertical component of the motion vector of the pixel adjacent in the vertical negative direction of the reference pixel,
As a result of the comparison, if the difference absolute value is smaller than a threshold, the vertical component of the motion vector at the reference pixel is specified so as to match the vertical component of the motion vector of the adjacent pixel,
The horizontal component of the motion vector in the reference pixel is specified as the horizontal component of the pixel position having the line minimum corresponding to the specified vertical component,
As a result of the comparison , if the difference absolute value is greater than or equal to a threshold value, the first motion vector specifying the pixel position of the difference absolute value sum that is the smallest in the search range as the motion vector, and the calculated difference absolute value sum In the search range, the minimum absolute difference sum and the pixel coordinates are identified for each of the positive and negative horizontal areas with the reference pixel as the origin, and the absolute difference is the minimum within the search range. The coordinates of the pixels indicating the sum are identified, and the polarity of the horizontal component of the coordinates of the pixel indicating the sum of absolute differences that is the smallest within the search range is the polarity of the horizontal component of the motion vector of the pixel adjacent to the reference pixel. determining whether different, and determines whether the difference between the minimum value of the difference absolute value sum of the minimum value and the negative region of the sum of absolute differences between the positive region is small,
The polarity of the horizontal component of the coordinate of the pixel indicating the sum of absolute differences that is minimum within the search range by the determination is different from the polarity of the horizontal component of the motion vector of the pixel adjacent to the reference pixel, and the positive region when the minimum value and the difference between the minimum value of the difference absolute value sum of the negative area of the sum of absolute differences is determined to the threshold value or less, if the horizontal component of the motion vector of the pixel to the adjacent has a positive polarity the above Specify the coordinates of the pixel that is the minimum value of the sum of absolute differences of the positive region as the second motion vector of the reference pixel,
When the horizontal component of the motion vector of the adjacent pixel has a negative polarity, the coordinate of the pixel that is the minimum value of the sum of absolute differences of the negative region is specified as the second motion vector of the reference pixel,
The polarity of the horizontal component of the coordinate of the pixel indicating the sum of absolute differences that is the smallest in the search range by the determination is the same as the polarity of the horizontal component of the motion vector of the pixel adjacent to the reference pixel, or the positive region when the minimum value and the difference between the minimum value of the difference absolute value sum of the negative area of the sum of absolute differences is determined to be greater than the threshold value, the pixel indicating the difference absolute value sum becomes minimum within the search range Identifying the position as the second motion vector of the reference pixel;
A motion vector detection method, wherein one of the identified first motion vector and the identified second motion vector is selected.
上記選択された動きベクトルを各画素毎に順次格納し、
動きベクトルを修正する修正画素について隣接する隣接画素の動きベクトルを読み出し、
読み出した隣接画素の動きベクトルにおいて水平成分の極性を識別し、
上記識別された水平成分の極性が正である隣接画素位置の個数と、上記識別された水平成分の極性が負である隣接画素位置の個数とを比較し、
上記識別結果に基づいて、極性が正である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を求め、また、極性が負である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を求め
上記比較した結果、水平成分の極性が正である隣接画素位置の個数が水平成分の極性が負である隣接画素位置の個数以上となる場合は、上記演算により求められた極性が正である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を、上記修正画素位置の動きベクトルにおける水平成分及び垂直成分とし、また、上記比較した結果水平成分の極性が正である隣接画素位置の個数が水平成分の極性が負である隣接画素位置の個数よりも少ない場合は、極性が負である隣接画素位置における動きベクトルの水平成分及び垂直成分の平均値を、上記修正画素位置の動きベクトルにおける水平成分及び垂直成分とする
ことを特徴とする請求項記載の動きベクトル検出方法。
The selected motion vector is sequentially stored for each pixel,
Read the motion vector of the adjacent pixel adjacent to the corrected pixel that corrects the motion vector,
Identify the polarity of the horizontal component in the read motion vector of adjacent pixels,
Comparing the number of adjacent pixel positions where the polarity of the identified horizontal component is positive with the number of adjacent pixel positions where the polarity of the identified horizontal component is negative;
Based on the identification result, the average value of the horizontal and vertical components of the motion vector at the adjacent pixel position having a positive polarity is obtained, and the horizontal and vertical components of the motion vector at the adjacent pixel position having a negative polarity are obtained. Find the average value ,
As a result of the comparison, if the number of adjacent pixel positions where the polarity of the horizontal component is positive is equal to or greater than the number of adjacent pixel positions where the polarity of the horizontal component is negative, the adjacent number where the polarity obtained by the above calculation is positive The average value of the horizontal and vertical components of the motion vector at the pixel position is used as the horizontal and vertical components of the motion vector at the corrected pixel position , and the number of adjacent pixel positions whose horizontal component is positive as a result of the comparison. Is less than the number of adjacent pixel positions where the polarity of the horizontal component is negative, the average value of the horizontal and vertical components of the motion vector at the adjacent pixel position where the polarity is negative is calculated in the motion vector of the corrected pixel position . The motion vector detection method according to claim 6 , wherein a horizontal component and a vertical component are used.
上記隣接画素は、上記修正画素の左左上右上左下右下に隣接する画素、又は上記修正画素の左上右上に隣接する画素、又は上記修正画素の左右に隣接する画素、又は上記修正画素の左左上右上右に隣接する画素である
ことを特徴とする請求項記載の動きベクトル検出方法。
The adjacent pixels are pixels adjacent to the left , right , top , bottom , top left , top right , bottom left , bottom right of the correction pixel, pixels adjacent to the top left , top , top right of the correction pixel, or the correction pixel left, top, pixels adjacent to the right or left of the modified pixel, the upper left, upper, upper right, the motion vector detecting method according to claim 7, characterized in that the pixel adjacent to the right.
上記隣接画素における動きベクトルの水平成分毎、及び垂直成分毎に総和を算出し、算出した各総和を上記識別された水平成分の極性が正である隣接画素の個数、或いは上記識別された水平成分の極性が負である隣接画素の個数で割ることにより、上記隣接画素における動きベクトルの水平成分及び垂直成分の平均値を求める
ことを特徴とする請求項記載の動きベクトル検出方法。
The sum is calculated for each horizontal component and vertical component of the motion vector in the adjacent pixel, and the calculated sum is the number of adjacent pixels in which the polarity of the identified horizontal component is positive, or the identified horizontal component. The motion vector detection method according to claim 7, wherein an average value of a horizontal component and a vertical component of a motion vector in the adjacent pixel is obtained by dividing by the number of adjacent pixels having a negative polarity.
上記基準画素を原点とした直交座標系での、上記探索ブロックの中心に位置する画素における水平成分の極性と、上記基準画素に隣接する画素の動きベクトルにおける水平成分の極性が異なる場合に、正数となる修正値を算出し、上記探索ブロックの中心に位置する画素における水平成分の極性と、上記基準画素に隣接する画素の動きベクトルにおける水平成分の極性が同じ場合に、0となる修正値を算出し、当該修正値を上記差分絶対値和に加算する
ことを特徴とする請求項記載の動きベクトル検出方法。
When the polarity of the horizontal component in the pixel located at the center of the search block and the polarity of the horizontal component in the motion vector of the pixel adjacent to the reference pixel are different in the orthogonal coordinate system with the reference pixel as the origin , A correction value that is a number, and is 0 when the polarity of the horizontal component in the pixel located at the center of the search block is the same as the polarity of the horizontal component in the motion vector of the pixel adjacent to the reference pixel The motion vector detection method according to claim 6 , wherein the correction value is added to the sum of absolute differences.
JP2002108319A 2002-04-10 2002-04-10 Motion vector detection apparatus and method Expired - Fee Related JP4304911B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002108319A JP4304911B2 (en) 2002-04-10 2002-04-10 Motion vector detection apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002108319A JP4304911B2 (en) 2002-04-10 2002-04-10 Motion vector detection apparatus and method

Publications (2)

Publication Number Publication Date
JP2003304507A JP2003304507A (en) 2003-10-24
JP4304911B2 true JP4304911B2 (en) 2009-07-29

Family

ID=29392130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002108319A Expired - Fee Related JP4304911B2 (en) 2002-04-10 2002-04-10 Motion vector detection apparatus and method

Country Status (1)

Country Link
JP (1) JP4304911B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006186504A (en) * 2004-12-27 2006-07-13 Sony Corp Apparatus and method of image processing, recording medium, and program
JP4412323B2 (en) 2006-12-28 2010-02-10 株式会社日立製作所 Video processing apparatus and video display apparatus
US8395709B2 (en) * 2009-03-04 2013-03-12 ATI Technology ULC 3D video processing

Also Published As

Publication number Publication date
JP2003304507A (en) 2003-10-24

Similar Documents

Publication Publication Date Title
US8446524B2 (en) Apparatus and method for frame rate conversion
US8644387B2 (en) Motion estimation method
JP3226020B2 (en) Motion vector detection device
US8340186B2 (en) Method for interpolating a previous and subsequent image of an input image sequence
US20050232357A1 (en) Motion vector estimation at image borders
US7227897B2 (en) Motion vector detector and motion vector detecting method
EP2011342A1 (en) Motion estimation at image borders
KR20060135177A (en) Motion error detector, motion error compensator comprising the same, method for detecting motion error and method for compensating motion error
JP5669599B2 (en) Image processing apparatus and control method thereof
KR20070074781A (en) Frame rate converter
US7773151B2 (en) Deinterlacing of a sequence of moving images
US8385430B2 (en) Video signal processing apparatus and video signal processing method
JP4304911B2 (en) Motion vector detection apparatus and method
JP4746909B2 (en) Auxiliary data processing of video sequences
JP3175914B2 (en) Image encoding method and image encoding device
JP5448983B2 (en) Resolution conversion apparatus and method, scanning line interpolation apparatus and method, and video display apparatus and method
JP5114290B2 (en) Signal processing device
JP4250598B2 (en) Motion compensation IP conversion processing apparatus and motion compensation IP conversion processing method
JP4092935B2 (en) Motion vector correction apparatus and method
JP4269573B2 (en) Motion vector detection apparatus and method
JP4269571B2 (en) Motion vector detection apparatus and method
US8405767B2 (en) Image processing device
JP4250806B2 (en) Field frequency conversion device and conversion method
JP4304912B2 (en) Motion vector detection apparatus and method
JP4470282B2 (en) Image processing apparatus and image processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071204

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090407

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090420

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees