(57)【特許請求の範囲】
【請求項１】
テレシネ変換された画像を倍速変換することにより生成された１コマが４フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと、該基準フィールドから２フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき、動き補正を行う画素の位置する補正フィールド上において動き補正を行い、又は、テレビジョン信号を倍速変換することにより生成された１コマが２フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと、該基準フィールドから１フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき、動き補正を行う画素の位置する補正フィールド上において動き補正を行う動き補正回路において、
上記基準フィールドの基準画素を中心とした基準ブロックについて、上記参照フィールドに対する動きベクトルを検出する動きベクトル検出手段と、
上記基準ブロックにおいて検出した動きベクトルを、当該基準ブロックを構成する画素毎に割り当てるベクトル割当手段と、
上記ベクトル割当手段により割り当てられた動きベクトルの示す画素が重複する場合に、いずれか一の動きベクトルを選択する選択手段と、
上記補正フィールド上において、動きベクトルの割り当てられた画素の画素値を、上記補正フィールド毎に割り当てた重みに応じて当該動きベクトルのベクトル量の範囲内でベクトル方向へシフトさせた位置の画素値とする画像制御手段と、
上記補正フィールド上で、画素値が存在しない情報不在領域に対して画素値を補間する画素補間手段とを備えることを特徴とする動き補正回路。
【請求項２】
上記動きベクトル検出手段は、上記基準ブロックと、上記参照フィールドから切り出した探索範囲内を移動する探索ブロックとの間で画素値の差分絶対値和を演算し、上記差分絶対値和が最小となる探索ブロックの位置と上記基準ブロックの位置に基づき動きベクトルを検出することを特徴とする請求項１記載の動き補正回路。
【請求項３】
上記動きベクトル検出手段は、ブロックマッチング法に基づいて上記動きベクトルを検出することを特徴とする請求項１記載の動き補正回路。
【請求項４】
上記動きベクトル検出手段は、単方向によるブロックマッチングに基づき、上記動きベクトルを検出することを特徴とする請求項３記載の動き補正回路。
【請求項５】
上記動きベクトル検出手段は、上記基準画素の位置する基準ブロックに隣接するブロックにおいて求められた動きベクトルに応じて、上記動きベクトルを検出することを特徴とする請求項１記載の動き補正回路。
【請求項６】
上記テレシネ変換された画像を倍速変換することにより生成された１コマが４フィールドで構成される画像信号が入力されたとき、１フレーム離れたフィールド間で空間的に同一の画素位置の画素値の差分値を演算し、当該差分値に基づき、該１コマを構成する４フィールドで構成される画像信号から最初に位置する第１のフィールドを特定するシーケンス検出手段を更に備え、
上記画像制御手段は、上記１コマが構成する４フィールドで構成される画像信号に対して、上記第１のフィールドから後へフィールドが続く毎に、検出した上記動きベクトルのベクトル量の範囲内で、上記シフトさせる位置を順次増大させることを特徴とする請求項１記載の動き補正回路。
【請求項７】
テレシネ変換された画像を倍速変換することにより生成された１コマが４フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと、上記基準フィールドから２フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき、動き補正を行う画素の位置する補正フィールド上において動き補正を行い、又は、テレビジョン信号を倍速変換することにより生成された１コマが２フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと、該基準フィールドから１フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき、動き補正を行う画素の位置する補正フィールド上において動き補正を行う動き補正方法において、
上記基準フィールドの基準画素を中心とした基準ブロックについて、上記参照フィールドに対する動きベクトルを検出し、
上記基準ブロックにおいて検出した動きベクトルを、当該基準ブロックを構成する画素毎に割り当て、
上記割り当てられた動きベクトルの示す画素が重複する場合に、いずれか一の動きベクトルを選択し、
上記補正フィールド上において、動きベクトルの割り当てられた画素の画素値を、上記補正フィールド毎に割り当てた重みに応じて当該動きベクトルのベクトル量の範囲内でベクトル方向へシフトさせた位置の画素値とし、また画素値が存在しない情報不在領域に対して画素値を補間することを特徴とする動き補正方法。
【請求項８】
上記基準ブロックと、上記参照フィールドから切り出した探索範囲内を移動する探索ブロックとの間で画素値の差分絶対値和を演算し、上記差分絶対値和が最小となる探索ブロックの位置と上記基準ブロックの位置に基づき動きベクトルを検出することを特徴とする請求項７記載の動き補正方法。
【請求項９】
ブロックマッチング法に基づいて上記動きベクトルを検出することを特徴とする請求項７記載の動き補正方法。
【請求項１０】
単方向によるブロックマッチングに基づき、上記動きベクトルを検出することを特徴とする請求項９記載の動き補正方法。
【請求項１１】
上記基準画素の位置する基準ブロックに隣接するブロックにおいて求められた動きベクトルに応じて、上記動きベクトルを検出することを特徴とする請求項７記載の動き補正方法。
【請求項１２】
上記テレシネ変換された画像を倍速変換することにより生成された１コマが４フィールドで構成される画像信号が入力されたとき、１フレーム離れたフィールド間で空間的に同一の画素位置の画素値の差分値を演算し、当該差分値に基づき、該１コマを構成する４フィールドで構成される画像信号から最初に位置する第１のフィールドを特定し、
上記１コマが構成する４フィールドで構成される画像信号に対して、上記第１のフィールドから後へフィールドが続く毎に、検出した上記動きベクトルのベクトル量の範囲内で、上記シフトさせる位置を順次増大させることを特徴とする請求項７記載の動き補正方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、倍速変換することにより生成された画像信号の各検出画素の位置をシフトさせる動き補正回路及び方法に関する。
【０００２】
【従来の技術】
テレビ放送の走査方式としては、従来から水平走査線を１本おきに飛越して走査するインタレース走査方式が最も広く採用されている。このインタレース走査方式では、奇数番目の走査線から構成されるフィールド画像と、偶数番目の走査線から構成されるフィールド画像により１枚のフレーム画像を形成し、画面全体がちらついて見える面フリッカ妨害を抑え、画面品質の劣化を防止する。
【０００３】
また、このインタレース走査方式は、世界各国のテレビジョン標準方式として採用されており、このうち例えば欧州のテレビジョン放送におけるＰＡＬ(Phase Alternation by Line)方式では、フィールド周波数が５０〔Ｈｚ〕（フレーム画像が２５フレーム／秒、フィールド画像が５０フィールド／秒）で構成される。
【０００４】
特にこのＰＡＬ方式では、更なる面フリッカ妨害の抑制を期すべく、入力画像信号を補間等の処理を行うことにより、フィールド周波数を５０Ｈｚから２倍の１００Ｈｚの画像信号に変換する、フィールド周波数倍速方式が従来より採用されている。
【０００５】
図１８は、このフィールド周波数倍速方式を適用したフィールド倍速変換回路５のブロック構成例を示している。このフィールド倍速変換回路５は、入力端子６１と、水平垂直偏向回路６２と、ＣＲＴ６３とを備えるテレビジョン受像機６に集積化される。このフィールド倍速変換回路５は、倍速変換部５１と、フレームメモリ５２とを備える。
【０００６】
倍速変換部５１は、入力端子６１から入力された、例えばＰＡＬ方式の５０フィールド／秒の画像信号を、フレームメモリ５２へ書き込む。また、この倍速変換部５１は、フレームメモリ５２へ書き込んだ画像信号を、書込み時の２倍の速度で読み出す。これにより、５０フィールド／秒の画像信号の周波数を２倍に変換し、１００フィールド／秒の画像信号を生成することができる。
【０００７】
倍速変換部５１は、倍速変換した画像信号をＣＲＴ６３へ出力する。ＣＲＴ６３は、入力された画像信号を画面上に表示する。なお、ＣＲＴ６３における画像信号の水平、垂直の偏向は、水平垂直偏向回路６２において生成された、入力画像信号の２倍の周波数の水平垂直鋸歯状波に基づいて制御する。
【０００８】
図１９は、倍速変換前後の各画像信号における各フィールドと画素位置との関係を示している。ここで横軸は時間、縦軸は画素の垂直方向の位置を示す。また、図１９(a)の白丸で示した画像信号は、倍速変換前の５０フィールド／秒のインタレース画像信号であり、図１９(b)の黒丸で示した画像信号は、倍速変換した１００フィールド／秒のインタレース画像信号である。
【０００９】
図１９(a)に示す画像信号において、フィールドｆ１とフィールドｆ２は、フィルムの同一のコマから作成された信号となり、以下同様にフィールドｆ３とフィールドｆ４も同一のコマを構成する。これらの画像信号は、インタレース画像信号であるため、隣り合うフィールド間で垂直方向の画素位置が異なる。このため、インタレース性を保ちつつ、各フィールド間に１個ずつのフィールドを新規に生成することはできない。
【００１０】
そこで、図１９(b)に示すように、フィールドｆ１とフィールドｆ２の間に、新規に２枚のフィールドｆ２´、ｆ１´を生成する。そして、フィールドｆ２とフィールドｆ３の間では、フィールドの生成を行わず、フィールドｆ３とフィールドｆ４の間に、新規に２枚のフィールドｆ４´、ｆ３´を生成する。すなわち４フィールド、２フレームで１つのコマを形成する。
【００１１】
この新規に生成したフィールドｆ１´、ｆ２´、・・・は、それぞれの画素値を、各画素の周囲３画素の中間値として、メディアン・フィルタ等を用いて求める場合もある。また、この新規に生成したフィールドｆ１´、ｆ２´、・・・は、それぞれフィールドｆ１、ｆ２、・・と同じ内容となる。
【００１２】
すなわち、フィールド倍速変換回路５は、倍速変換前の画像信号のフィールド間に２枚のフィールドを新規に生成する部分と全く生成しない部分とを交互に配置することで、単位時間当たりの画面枚数を増やすことができ、上述の面フリッカ妨害を抑えることが可能となる。
【００１３】
ところで、２４コマ/秒の静止画で構成される映画のフィルムを通常のテレビで見るためには、インターレースのテレビ信号にするために、テレビシネマ変換（以下、テレシネ変換と称する）を行う。このテレシネ変換後の画像信号において、水平方向へ画像が移動する場合における各フィールドと画像位置の関係を図２０に示す。ここで横軸は画像の水平方向における位置、縦軸は時間を示している。図２０(a)に示す倍速変換前の画像信号において、フィールドｆ１、ｆ２は、同一のコマを構成するため、同じ位置に画像が表示される。この画像は、フィールドｆ３に移行すると水平方向（右方向）へ移動する。フィールドｆ４は、フィールドｆ３と同一のコマを構成するため、フィールドｆ３と同一の位置に表示される。
【００１４】
この図２０(a)に示すテレシネ変換後の画像信号をフィールド周波数倍速方式により倍速変換すると、図２０(b)に示すように、同一のコマを構成するフィールドｆ１、ｆ２´、ｆ１´、ｆ２で、同一位置に同一の画像が表示される。同様に、同一のコマを構成するフィールドｆ３、ｆ４´、ｆ３´、ｆ４で同一位置に同一の画像が表示される。
【００１５】
また、倍速変換前のテレビジョン信号（以下、ＴＶ信号という）において、水平方向へ画像が移動する場合における各フィールドと画像位置の関係を図２１(a)に示す。この図２１(a)において、フィールドｆ１、ｆ２、ｆ３・・・は、それぞれ独立したコマを形成するため、別の位置に画像が表示される。この画像は、フィールドｆ１から、ｆ２、ｆ３・・・と移行する毎に、水平方向（右方向）へ移動する。
【００１６】
この図２１(a)に示すテレビ信号の画像信号をフィールド周波数倍速方式により倍速変換すると、図２１(b)に示すように、同一のコマを構成するフィールドｆ１、ｆ２´において、同一位置に同一の画像が表示される。同様に、同一のコマを構成するフィールドｆ１´、ｆ２において、同一位置に同一の画像が表示される。
【００１７】
ところで、出力画像信号は、１／１００秒の周期で規則的に各フィールドを構成しているため、画像の動作する時間帯が画像の静止する時間帯と比較して短く、実際にＣＲＴを介して番組を視聴すると画像の動きが不連続に見えるという問題があった。このため従来では、かかる動きの不連続性を解消するため、例えばブロックマッチング法に基づき、画面を所定の画素からなるブロックに分割し、各ブロック単位で相似度を評価することにより動きベクトルを求め、当該求めた動きベクトルに応じて各ブロック毎に画素位置をシフトさせて動き補正していた。
【００１８】
ちなみにこのブロックマッチング法は、図２２に示すように、基準フィールドを複数の基準ブロック１０１に分割し、基準フィールド８０における基準ブロック１０１と最も高い相似度を示すブロックを、参照フィールド９０における探索範囲１０４内を移動する探索ブロック１０３から検出する。そして当該検出された探索ブロック１０３と基準ブロック１０１間の位置のずれ（移動の方向と大きさ）を動きベクトルとする。
【００１９】
上述の相似度の判定は、先ず探索ブロック１０３の各画素値について、基準ブロック１０１の対応する画素値との差分をとり、その差によって示される評価値、例えば差分絶対値和を求める。次に、上述の判定操作を全ての探索ブロック１０３について行い、それぞれ求めた評価値和、すなわち各差分絶対値和から最小のものを求める。この最小の差分絶対値和を与える探索ブロック１０３を、基準ブロック１０１と最も高い相似度を示すブロックとし、かかるブロックの原点の画素６３と、基準ブロック１０１の原点の画素との間で特定することができるベクトルを動きベクトルとする。
【００２０】
【発明が解決しようとする課題】
しかしながら、この従来のブロックマッチング法による動き補正では、例えば水平方向へ画像が移動しながら画素値が変化するような、様々な画像のバリエーションにおいて、画像の動きの不連続性を効率よく解消することができないという問題点があった。
【００２１】
また、従来のブロックマッチング法では、画面全体で表現される本来の画像の動きに関係なく、単にブロック同士の誤差の総和の最小値を優先させて動きベクトルを検出するため、動きベクトルのばらつきによる変換画像の劣化が問題となっていた。
【００２２】
また、上記従来のブロックマッチング法では、画像の動きが速いために求められる真の動きベクトル１１１が探索範囲１０４外に存在し得る場合においても、探索範囲１０４内において各ブロック１０１,１０３間の誤差の総和を最優先するため、本来の動きと異なる不規則な動きベクトルが検出されるという問題点もあった。
【００２３】
更に、上記従来のブロックマッチング法に基づいて検出される動きベクトルはバリエーションに富むため、当該検出された動きベクトルに応じて各ブロック毎に画素位置をシフトさせて合成した画像には、画素が書き込まれないアンカバー領域が生じる場合がある。このアンカバー領域が生じると、図２３に示すように孤立点が所々に生成するために画質の劣化が著しくなり、また領域単位での処理破綻が生じて動作環境に悪影響を及ぼしてしまう。
【００２４】
そこで、本発明は上述した問題点に鑑みて案出されたものであり、その目的とするところは、倍速変換することにより生成された画像信号において、特に様々な画像のバリエーションにおいても、面フリッカ妨害を抑えつつ、画像の動きをスムーズにすることにより相乗的に画質の向上を図ることにある。
【００２５】
また他の目的は、本来の画像の動きに適合した動きベクトルを求めることにより、変換画像の劣化を防止することにある。
【００２７】
更に他の目的は、検出された動きベクトルに応じて各ブロック毎に画素位置をシフトさせて画像を合成した結果生じるアンカバー領域に対して、最適な画素値を示す画素を埋めることにより、画質の劣化を防ぎ、ひいては領域単位での処理破綻を改善することにある。
【００２８】
【課題を解決するための手段】
本発明に係る動き補正回路は、上述の課題を解決するため、テレシネ変換された画像を倍速変換することにより生成された１コマが４フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと、該基準フィールドから２フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき、動き補正を行う画素の位置する補正フィールド上において動き補正を行い、又は、テレビジョン信号を倍速変換することにより生成された１コマが２フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと、該基準フィールドから１フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき、動き補正を行う画素の位置する補正フィールド上において動き補正を行う動き補正回路において、上記基準フィールドの基準画素を中心とした基準ブロックについて上記参照フィールドに対する動きベクトルを検出する動きベクトル検出手段と、上記基準ブロックにおいて検出した動きベクトルを当該基準ブロックを構成する画素毎に割り当てるベクトル割当手段と、上記ベクトル割当手段により割り当てられた動きベクトルの示す画素が重複する場合にいずれか一の動きベクトルを選択する選択手段と、上記補正フィールド上において動きベクトルの割り当てられた画素の画素値を上記補正フィールド毎に割り当てた重みに応じて当該動きベクトルのベクトル量の範囲内でベクトル方向へシフトさせた位置の画素値とする画像制御手段と、上記補正フィールド上で画素値が存在しない情報不在領域に対して画素値を補間する画素補間手段とを備えることを特徴とする。
【００２９】
また、本発明に係る動き補正方法は、上述した課題を解決するため、テレシネ変換された画像を倍速変換することにより生成された１コマが４フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと上記基準フィールドから２フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき動き補正を行う画素の位置する補正フィールド上において動き補正を行い、又は、テレビジョン信号を倍速変換することにより生成された１コマが２フィールドで構成される画像信号が入力され、動きベクトルを求める画素の位置する基準フィールドと、該基準フィールドから１フレーム離れた参照フィールドとの間で求めた動きベクトルに基づき、動き補正を行う画素の位置する補正フィールド上において動き補正を行う動き補正方法において、上記基準フィールドの基準画素を中心とした基準ブロックについて上記参照フィールドに対する動きベクトルを検出し、上記基準ブロックにおいて検出した動きベクトルを当該基準ブロックを構成する画素毎に割り当て、上記割り当てられた動きベクトルの示す画素が重複する場合にいずれか一の動きベクトルを選択し、上記補正フィールド上において動きベクトルの割り当てられた画素の画素値を上記補正フィールド毎に割り当てた重みに応じて当該動きベクトルのベクトル量の範囲内でベクトル方向へシフトさせた位置の画素値とし、また画素値が存在しない情報不在領域に対して画素値を補間することを特徴とする。
【００３０】
この動き補正回路及び方法は、基準画素を中心とした基準ブロックについて検出した動きベクトルを当該基準ブロックを構成する画素毎に割り当てる。そして、割り当てられた動きベクトルの示す画素が重複する場合にいずれか一の動きベクトルを選択した上で、動きベクトルの割り当てられた画素の画素値を、当該動きベクトルのベクトル量の範囲内でベクトル方向へシフトさせた位置へ書き込み、また画素値をシフトさせた結果、画素値が存在しない情報不在領域に対して画素値を補間する。
【００３１】
【発明の実施の形態】
以下、本発明を適用した画像信号処理装置及び方法について図面を参照して詳細に説明する。
【００３２】
図１は、本発明の第１の実施の形態における動き補正回路１のブロック構成図である。動き補正回路１は、例えばＰＡＬ(Phase Alternation by Line)方式によるテレビジョン受像機に内蔵され、テレシネ変換した画像信号やテレビジョン信号（以下、ＴＶ信号という）が入力される。またこの動き補正回路１は、図１に示すように、第１の画像メモリ１１と、第２の画像メモリ１２と、シーケンス検出部１３と、データ選択部１４と、動きベクトル検出部１５と、画像シフト部１６を備えている。
【００３３】
第１の画像メモリ１１は、テレシネ変換した画像を倍速変換することにより生成された１コマが４フィールドで構成された、例えば１００フィールド／秒のインタレース画像データが順次供給される。また、この第１の画像メモリ１１は、ＴＶ信号を倍速変換することにより生成された１コマが２フィールドで構成された、例えば１００フィールド／秒のインタレース画像信号が順次供給される。
【００３４】
第１の画像メモリ１１は、供給された画像データを、各フィールド単位で、１フレーム分格納する。すなわち、第１の画像メモリ１１から出力される画像データは、この第１の画像メモリ１１に供給される画像信号より１フレーム後になる。
【００３５】
第２の画像メモリ１２は、第１の画像メモリ１１と同様の内部構成を有し、第１の画像メモリ１１から供給された画像データを、各フィールド単位で、１フレーム分格納する。すなわち、第２の画像メモリ１２から出力される画像データは、この第２の画像メモリ１２に供給される画像データより１フレーム後になり、第１の画像メモリ１１に供給される画像データより２フレーム後になる。この第２の画像メモリ１２に格納された画像データＤ１は、動きベクトル検出部１５及び画像シフト部１６に供給される。
【００３６】
シーケンス検出部１３は、第１の画像メモリ１１に供給される画像データと、第１の画像メモリ１１から出力される画像データを検出し、各画素毎に画像信号レベルを比較し、両者間で差分値を演算する。すなわち、このシーケンス検出部１３は、画面上の同一箇所における画素の画像信号レベルを、１フレーム間隔で比較する。シーケンス検出部１３は、画像信号レベルの差分値の演算結果を画像シフト部１５へ送信する。シーケンス検出部１３は、上述の如く各フィールドの特定に加え、テレシネ変換された信号かＴＶ信号かを判別し、当該判別結果を移動量情報として画像シフト部１６等へ送信する。
【００３７】
データ選択部１４は、第１の画像メモリ１１に供給される画像データと、第１の画像メモリ１１から出力される画像データが入力される。このデータ選択部１４は、シーケンス検出部１３から受信した判別結果に基づき、供給される画像データのうち一方を選択する。すなわち、シーケンス検出部１３によりテレシネ変換された信号であると判別された場合には、第１の画像メモリ１１に供給される画像データを選択する。またシーケンス検出部１３によりＴＶ信号であると判別された場合には、第１の画像メモリ１１から出力される画像データを選択する。データ選択部１４により選択された画像データを以下、画像データＤ２と称する。データ選択部１４は、選択した画像データＤ２を動きベクトル検出部１５へ出力する。
【００３８】
なお、データ選択部１４として、第１の画像メモリ１１から出力される画像データと、第２の画像メモリ１２から出力される画像データのどちらか一方を選択する接続形態にも適用可能である。
【００３９】
動きベクトル検出部１５は、画像データＤ１と画像データＤ２とを検出し、例えばブロックマッチング法に基づき、動きベクトルを検出する。この動きベクトル検出部１５は、双方向から動きベクトルをサーチする場合のみならず、単方向から動きベクトルをサーチすることも可能である。これにより、ハードコストを削減することも可能である。
【００４０】
またこの動きベクトル検出部１５は、検出した動きベクトルの誤差情報を含むフラグＦ１を算出する。すなわち、動きベクトル検出部１５は、画像データＤ１と画像データＤ２との間で動きベクトルを検出することにより、１フレーム又は２フレーム離れた画像信号間の動きベクトルを特定することができる。またこの動きベクトル検出部１５は、動きベクトルを検出するフィールド間隔をシーケンス検出部１３から受信した判別結果に基づき、制御することも可能である。
【００４１】
画像シフト部１６は、画像信号レベルの比較結果を含む移動量情報を、シーケンス検出部１３から受信する。また、画像シフト部１６は、動きベクトル検出部１５が検出した動きベクトルを受信する。更に画像シフト部１６は、第２の画像メモリ１２から画像データＤ１が供給され、またデータ選択部１４から画像データＤ２が供給される。この画像シフト部１６は、供給された画像信号における各画素位置を、受信した上記動きベクトルのベクトル量の範囲内で、かつベクトル方向へシフトさせる。この画像シフト部１６の内部構成例については、後に詳細する。
【００４２】
なお、動き補正回路１には、画像信号のフィールド周波数を倍速変換するフィールド倍速変換回路３が集積される場合もある。フィールド倍速変換回路３は、解像度を向上させることにより、面フリッカ妨害を防止すべく集積されるものであり、例えばＰＡＬ方式において、補間等の処理を行うことにより、フィールド周波数が５０Ｈｚの画像データを２倍の１００Ｈｚの画像データに変換する。
【００４３】
フィールド周波数変換回路３は、図１に示すように、テレビジョン受像機に接続された入力端子３１と、倍速変換部３２と、フレームメモリ３３とを備える。
【００４４】
倍速変換部３２は、テレビジョン受像機から入力端子３１を介して入力された、テレシネ変換後の画像データ、またはテレビジョン信号を、フレームメモリ３３へ書き込む。またこの倍速変換部３２は、フレームメモリ３３へ書き込んだ画像データを、書込み時の２倍の速度で読み出す。これにより、例えば、ＰＡＬ方式の５０フィールド／秒の画像信号の周波数を２倍に変換し、１００フィールド／秒の画像データを生成することができる。倍速変換部３２は、この倍速変換した画像データを動き補正回路１へ供給する。
【００４５】
次に、動きベクトル検出部１５の内部構成例について図２を用いて詳細に説明する。動きベクトル検出部１５は、ブロックマッチング部１５１と、範囲外検出部１５２と、再割り当て部１５３とを備える。
【００４６】
ブロックマッチング部１５１は、入力される画像データＤ１と画像データＤ２を、所定の画素からなるブロックに分割し、各ブロック単位で相似度を評価することにより動きベクトルを求める。
【００４７】
範囲外検出部１５２は、ブロックマッチング法により求められた探索範囲外の動きベクトルを、実際の画像の動きに適合するように修正する。
【００４８】
再割り当て部１５３は、ブロック単位で求められた動きベクトルを画素単位の動きベクトルとして分離する。換言すれば、ブロック単位で求めた動きベクトルを、ブロックを構成する画素毎に割り当てる。ちなみに、再割り当て部１５３は、ブロック内の境界判定、画像エッジの検出、周辺ブロックとの相関判定、ブロック内における領域分割等のステップを経て、周辺ブロックに照らし合わせて最適なベクトル値を選択し、各画素毎に割り当てるものである。
【００４９】
次に画像シフト部１６の内部構成例について説明をする。画像シフト部１６は、図３に示すように、シフトバッファ読出制御部１６１と、シフトバッファ書込制御部１６２と、シフトバッファ１６３と、データバッファ読出制御部１６４と、第１のバッファ１６５と、第２のバッファ１６６と、データ演算部１６７と、アンカバー処理部１６８とを備える。
【００５０】
シフトバッファ読出制御部１６１は、動きベクトル検出部１５から動きベクトルが送信され、シーケンス検出部１３から移動量情報が送信される。シフトバッファ読出制御部１６１は、この動きベクトルと移動量情報及び内蔵されたアドレス計算用カウンタに基づき、シフトバッファ読出制御信号ＲＳ１を生成する。このシフトバッファ読出制御信号ＲＳ１は、シーケンシャルにデータを読み出すためのアドレス信号と、イネーブル信号から構成される。例えば、シフトバッファ１６３がフレームメモリ等で実現される場合において、シフトバッファ読出制御部１６１は、Ｘ座標、Ｙ座標の各アドレス信号を絶対座標として計算する。一方、シフトバッファ１６３がラインメモリ等の必要最小限のメモリで実現される場合において、シフトバッファ読出制御部１６１は、Ｘ座標、Ｙ座標の各アドレス信号を相対座標として計算する。
【００５１】
ここで内蔵されたアドレス計算用カウンタ値においてＸ座標、Ｙ座標がそれぞれ（ＣＸ１、ＣＹ１）であり、また供給された動きベクトルにおいて、Ｘ座標、Ｙ座標がそれぞれ（ＶＸ、ＶＹ）であるときに、シフトバッファ読出制御信号ＲＳ１のアドレスの番号（ＳＸ、ＳＹ）は、以下の式で表される。
ＳＸ＝ＣＸ１＋（ＶＸ×α）    （１.１）
ＳＹ＝ＣＹ１＋（ＶＹ×α）    （１.２）
ここでαは移動量情報であり、０以上かつ１以下の数で表現される。ここで、コマの最初のフィールドを第１のフィールド、以後続くフィールドをそれぞれ第２のフィールド、第３のフィールド、第４のフィールドとしたとき、上述のαは、第１のフィールドにおいて最小とし、その後フィールドが続く毎に順次増大させても良い。またαは、テレシネ変換された信号が入力された場合に、第１のフィールドから第４のフィールドまでそれぞれ、０,１／４,２／４,３／４と、またＴＶ信号が入力された場合にも、第１のフィールドから第２のフィールドまで、０,１／２と、線形に増加させていくことも可能である。
【００５２】
これにより、シフト量を時間に対して線形に増加させることが可能となり、画像の動きを更にスムーズにすることができるため、倍速変換した画像信号特有の動きの不連続感を解消することができ、また倍速変換により面フリッカ妨害を抑制した画像の動きを更にスムーズにすることができるため相乗的に画質を向上させることが可能となる。
【００５３】
シフトバッファ読出制御部１６１は、生成したシフトバッファ読出制御信号ＲＳ１をシフトバッファ書込制御部１６２及びシフトバッファ１６３へ供給する。
【００５４】
シフトバッファ書込制御部１６２は、動きベクトル検出部１５からフラグＦ１が供給され、またシフトバッファ１６３からフラグＦ´が供給され、シフトバッファ読出制御部１６１から、シフトバッファ読出制御信号ＲＳ１が供給される。このシフトバッファ書込制御部１６２は、フラグＦ１とフラグＦ´の大小に基づき、書き込み時の優先順位を判定する。さらにこのシフトバッファ書込制御部１６２は、供給されるシフトバッファ読出制御信号ＲＳ１に基づき、書き込みアドレスを求め、当該書き込みアドレスと上述の通り判定した優先順位を、シフトバッファ書込制御信号ＲＳ２として、シフトバッファ１６３へ供給する。
【００５５】
シフトバッファ１６３は、動きベクトル用バッファとフラグ用バッファから構成される。動きベクトル用バッファは、動きベクトルを蓄積・供給するためのバッファであり、フラグ用バッファは、フラグを蓄積・供給するためのバッファである。これらのバッファは、同一の制御信号に基づき、書き込みや読み出しが行われる。ちなみに、このシフトバッファ１６３は、動きベクトルとフラグのみ格納できれば足りるため、バッファ容量の削減を期待することができる。
【００５６】
また、シフトバッファ１６３は、１フレーム分のデータを蓄積するフレームメモリであっても良いし、動きベクトルの取りうる範囲に従ったラインメモリ等、必要最小限のメモリで構成しても良い。
【００５７】
シフトバッファ１６３は、まずフラグ用バッファの初期化を行う。フラグ用バッファに書き込まれるフラグには、データが書き込まれたか否かを示すマーク情報をも含む。マーク情報は、”ＮＭ”と”ＯＫ”の２種類で表され、”ＮＭ”は、初期化時にデータの書き込みが行われていないことを示し、”ＯＫ”は、データが既に書き込まれていることを示す。またシフトバッファ１６３は、シフトバッファ読出制御信号ＲＳ１のイネーブルが有効である場合に、アドレス対応させてシフトバッファ書込制御部１６２へフラグＦ´を送信する。また、シフトバッファ１６３は、シフトバッファ書込制御信号ＲＳ２のイネーブルが有効な場合に、アドレス値に従って、動きベクトル、フラグＦ１を、それぞれ動きベクトル用バッファ、フラグ用バッファに書き込む。更に、このシフトバッファ１６３は、格納した動きベクトルを番号順に整理し（以下、この番号順に整理した動きベクトルを、移動済動きベクトルという）、また処理フラグＦ２を順次読み出し、それぞれをデータバッファ制御部１６１、データ演算部１６７へ供給する。
【００５８】
データバッファ読出制御部１６４は、シフトバッファ１６３から移動済動きベクトルが供給され、シーケンス検出部１３から移動量情報が送信される。データバッファ読出制御部１６４は、この入力された動きベクトルに基づき、バッファ制御信号Ｓ１１及びバッファ制御信号Ｓ１２を演算する。これらの各バッファ制御信号Ｓ１１,Ｓ１２は、シーケンシャルにデータを読み出すためのアドレス信号と、イネーブル信号から構成される。例えば、第１のバッファ１６５、及び第２のバッファ１６６がフレームメモリ等で実現される場合において、データバッファ読出し制御部１６１は、Ｘ座標、Ｙ座標の各アドレス信号を絶対座標として計算する。一方、第１のバッファ１６５、及び第２のバッファ１６６がラインメモリ等の必要最小限のメモリで実現される場合において、データバッファ読出制御部１６１は、Ｘ座標、Ｙ座標の各アドレス信号を相対座標として計算する。
【００５９】
データバッファ読出制御部１６４は、内蔵されたアドレス計算用カウンタの値と動きベクトルに基づいてバッファ制御信号Ｓ１１を生成する。またデータバッファ読出制御部１６４は、バッファ制御信号Ｓ１１と動きベクトルに基づいてバッファ制御信号Ｓ１２を生成する。
【００６０】
例えばＴＶ信号が入力された場合に、バッファ制御信号Ｓ１１のアドレスにおいて、Ｘ座標、Ｙ座標がそれぞれ（ＡＸ１,ＡＹ１）であり、またバッファ制御信号Ｓ１２のアドレスにおいて、Ｘ座標、Ｙ座標がそれぞれ（ＡＸ２,ＡＹ２）であり、動きベクトルが（ＶＸ,ＶＹ）であり、内部のアドレス計算用カウンタ値を（ＣＸ´,ＣＹ´）とするとき、バッファ制御信号Ｓ１１のアドレスは、以下の式で表される。
ＡＸ１＝ＣＸ´−ＩＮＴ（ＶＸ／２）    （２.１）
ＡＹ１＝ＣＹ´−ＩＮＴ（ＶＹ／２）    （２.２）
ここで関数ＩＮＴは、小数点以下切り捨てを意味する。
【００６１】
また、バッファ制御信号Ｓ１２のアドレス（ＡＸ２,ＡＹ２）は以下の式で表される。
ＡＸ２＝ＡＸ１＋ＶＸ                   （２.３）
ＡＹ２＝ＡＹ１＋ＶＹ                   （２.４）
データバッファ読出制御部１６４は、これらの計算したアドレスを含むバッファ制御信号Ｓ１１を第１のバッファ１６５に供給する。またデータバッファ読出制御部１６４は、同様に計算したアドレスを含むバッファ制御信号Ｓ１２を第２のバッファ１６６に供給する。
【００６２】
第１のバッファ１６５は、第２の画像メモリ１２から送信された画像データＤ１を順次蓄積する。また第１のバッファ１６５は、供給されたバッファ制御信号Ｓ１１に応じて蓄積した画像データＤ１を読み出す。すなわちこの第１のバッファ１６５は、供給されたバッファ制御信号Ｓ１１のイネーブルが有効な時に、当該バッファ制御信号Ｓ１１に含まれるアドレスに従って、第１のバッファ１６５に蓄積した画像データＤ１を読み出す。この読み出された画像データＤ１を以下、シフトデータＳＤ１と称する。第１のバッファ１６５は、シフトデータＳＤ１をデータ演算部１６７へ送信する。
【００６３】
この第１のバッファ１６５は、１フレーム分のデータを蓄積するフレームメモリであっても良いし、また動きベクトルの範囲に基づいたラインメモリ等、必要最小限のメモリで構成しても良い。更にこの第１のバッファでは、データの読出しをシーケンシャルに行うため、ＦＩＦ０メモリ等で実現しても良い。
【００６４】
第２のバッファ１６６は、データ選択部１４から送信された画像データＤ２を順次蓄積する。また第２のバッファ１６６は、供給されたバッファ制御信号Ｓ１２に応じて、蓄積した画像データＤ２を読み出す。すなわち、この第２のバッファ１６６は、供給されたバッファ制御信号Ｓ１２のイネーブルが有効な時に、当該バッファ制御信号Ｓ１２に含まれるアドレスに従って、第２のバッファ１６６に蓄積した画像データＤ２を読み出す。この読み出された画像データＤ２を、以下シフトデータＳＤ２と称する。第２のバッファ１６６は、シフトデータＳＤ２をデータ演算部１６７へ送信する。
【００６５】
この第２のバッファ１６６は、１フレーム分のデータを蓄積するフレームメモリであっても良いし、また動きベクトルの範囲に基づくラインメモリ等、必要最小限のメモリで構成しても良い。かかる場合には、ランダムに与えられるアドレスに対応してランダムにデータを読み出すシステムが構築される。
【００６６】
データ演算部１６７は、供給されたシフトデータＳＤ１と、シフトデータＳＤ２に基づき、シフトバッファ１６３から供給される処理フラグＦ２を参照しながら補正データＨ１を算出する。なお、処理フラグＦ２が”ＯＫ”の場合はデータが確定できるため、データ演算部１６７において所定の演算を行う。一方、処理フラグＦ２が”ＮＭ”の場合はデータを確定することができず、他の領域から画素値が全く書き込まれない領域（以下アンカバー領域と称する）であるものと仮定して、アンカバー処理部１６７へ処理を委ねる。なお、この補正データＨ１は、シフトデータＳＤ１やシフトデータＳＤ２をそのまま出力することによって演算しても良いし、シフトデータＳＤ１とシフトデータＳＤ２の平均値としても良い。更には、動きベクトル等の値を用いて重み付け平均をとる形で移動データＭ１を算出しても良い。アンカバー処理部１６８は、受け取った補正データＨ１に基づき、アンカバー領域に対して画素値を補間する。
【００６７】
次に本発明を適用した動き補正回路１の動作について説明する。図４は、フィールド倍速変換回路３における倍速変換前後の各フィールドと画素位置の関係を示している。ここで横軸は時間、縦軸は画素の垂直方向の位置を示す。
【００６８】
倍速変換前の画像データは、ＰＡＬ方式の５０フィールド／秒のインタレース画像であり、図４(a)に示すように、２フィールドで１つのコマを形成する。
【００６９】
一方、倍速変換後の画像データは、１００フィールド／秒のインタレース画像であるため、図４(b)に示すように、フィールドｔ１とフィールドｔ２の間に、新規に２枚のフィールドｔ２´、ｔ１´を生成する。そして、フィールドｔ２とフィールドｔ３の間では、フィールドの生成を行わず、フィールドｔ３とフィールドｔ４の間に、新規に２枚のフィールドｔ４´、ｔ３´を生成する。すなわち、画像データは、４フィールドで１つのコマを形成することとなる。
【００７０】
この新規に生成したフィールドｔ１´、ｔ２´、・・・は、それぞれの画素値を、各画素の周囲３画素の中間値として、メディアン・フィルタ等を用いて求める場合もある。また、この新規に生成したフィールドｔ１´、ｔ２´、・・・は、それぞれフィールドｔ１、ｔ２、・・と同じ内容となる。これにより、４フィールドで１つのコマを形成することとなり、単位時間当たりの画面枚数を増やすことで解像度を向上させることができ、面フリッカ妨害を抑制することが可能となる。
【００７１】
テレシネ変換後、上述の如き倍速変換された画像データにおいて、水平方向へ画像が移動する場合における各フィールドと画像位置の関係を図５に示す。この図５において、横軸は画像の水平方向における位置、縦軸は時間を表している。既にテレシネ変換された画像は、フィールドｔ１、ｔ２´、ｔ１´、ｔ２の順で、一定の時間間隔で第１の画像メモリ１１に供給され、これらの画像は同一の位置に表示される。またフィールドｔ３に移行すると画像が水平方向（右方向）に移り、フィールドｔ３、ｔ４´、ｔ３´、ｔ４の順で第１の画像メモリに供給される。
【００７２】
ここで、例えば、第１の画像メモリに供給されるフィールド（以下、参照フィールドと称する）が、フィールドｔ３である場合には、第２の画像メモリ１２から出力される、参照フィールドより２フレーム前のフィールド（以下、２フレーム前フィールドと称する）は、フィールドｔ１となる。
【００７３】
また、ＴＶ信号を倍速変換した画像データにおいて、水平方向へ画像が移動する場合における各フィールドと画像位置の関係を図６に示す。同一のコマを構成するフィールドｔ１、ｔ２´において、同一位置に同一の画像が表示される。同様に、同一のコマを構成するフィールドｔ１´、ｔ２において、同一位置に同一の画像が表示される。
【００７４】
動きベクトル検出部１５は、図５に示すテレシネ変換後、倍速変換された信号につき、参照フィールドと２フレーム前フィールド間で、各ブロック単位で動きベクトルを検出する。図５に示す例の場合には、動きベクトルのベクトル方向は、２フレーム前フィールドを基準として水平方向（右方向）となり、ベクトル量はＡとなる。同様に、参照フィールドがｔ５の場合には、２フレーム前フィールドは、ｔ３となり、動きベクトルのベクトル量はＢとなる。この手順を繰り返すことにより、２フレーム前フィールドを基準とした動きベクトルのベクトル方向とベクトル量を順次求めることができる。動きベクトル検出部１５は、この求めた動きベクトルのベクトル量とベクトル方向とを画像シフト部１６へ順次送信する。
【００７５】
また、動きベクトル検出部１５は図６に示すＴＶ信号を倍速変換された信号につき、参照フィールドと参照フィールドより１フレーム前のフィールド（以下、１フレーム前フィールドと称する）との間で、各ブロック単位で動きベクトルを検出する。図６に示す例の場合には、動きベクトルのベクトル方向は、１フレーム前フィールドを基準として水平方向（右方向）となり、参照フィールドがｔ１´のときにベクトル量はＣとなる。同様に、参照フィールドがｔ４´の場合には、１フレーム前フィールドは、ｔ１´となり、動きベクトルのベクトル量はＤとなる。この手順を繰り返すことにより、１フレーム前フィールドを基準とした動きベクトルのベクトル方向とベクトル量を順次求めることができる。動きベクトル検出部７４は、この求めた動きベクトルのベクトル量とベクトル方向とを画像シフト部１５へ順次送信する。
【００７６】
シーケンス検出部１３は、参照フィールドと、第１の画像メモリ１１から出力される１フレーム前フィールドを順次検出し、同一の画素位置における画素信号レベルの差分値をそれぞれ演算する。
【００７７】
すなわち、図７に示すように、テレシネ変換画像の場合には、参照フィールドｔ１´と、１フレーム前フィールドｔ１は、同一のコマを構成するため、例えば画素位置ａ点における画素信号レベルの差分値は０になる。次に参照フィールドとしてフィールドｔ２が供給されると、１フレーム前フィールドはフィールドｔ２´となり、ａ点における画素信号レベルの差分値は同様に０となる。
【００７８】
次に参照フィールドとしてフィールドｔ３が供給されると、１フレーム前フィールドはｔ１´となり、両者はそれぞれ別のコマを形成するため、ａ点における画素信号レベルの差分値は０以外（以下、”１”とする）となる。次に参照フィールドとしてｔ４´が供給されると１フレーム前フィールドはフィールドｔ２となり、ａ点における画素信号レベルの差分値は、同様に”１”となる。
【００７９】
更に参照フィールドとしてｔ３´が供給されると、１フレーム前フィールドは、ｔ３となり、両者は同一のコマを形成するため、ａ点における画素信号レベルの差分値は再び０になる。その後に供給される参照フィールドについても同様の傾向となり、演算した差分値は、４フィールド周期で「００１１」の順で繰り返される。従って、このシーケンスを４フィールド単位で検出することにより、各フィールドの前後関係を特定することが可能となる。
【００８０】
この傾向を１フレーム前フィールドにつき着目すると、差分値は、コマの最初のフィールドから「００１１」の順になる。従って、最初に差分値０を算出したとき、検出した１フレーム前フィールドを、コマの最初のフィールド（第１のフィールド）として特定する。また差分値０が連続したときには、検出した１フレーム前フィールドを第２のフィールドとして特定する。また差分値として最初に１を算出した場合に、検出した１フレーム前フィールドを第３のフィールドとして特定する。また、差分値１が連続したときには、検出した１フレーム前フィールドを第４のフィールドとして特定する。
【００８１】
なお、ＴＶ信号が入力された場合においても、各フィールドが第１のフィールド又は第２のフィールドのいずれに該当するか判別する必要あるが、フィールド倍速変換回路３により倍速変換する際に該当するフィールドは判明するため、上述のようなシーケンス検出の必要性は無い。すなわち、フィールド倍速変換回路３からＴＶ信号が入力される際には、第１のフィールドと、第２のフィールドが特定されていることになる。
【００８２】
次に動きベクトル検出部１５におけるブロックマッチング部１５１の動作例について詳細に説明する。
【００８３】
ブロックマッチング部１５１は、図８に示すように画像データＤ１に相当する基準フィールド３０を複数の基準ブロック５１に分割し、当該画像データＤ１（基準フィールド３０）における基準ブロック５１と最も高い相似度を示すブロックを、画像データＤ２（参照フィールド４０）における探索範囲５４内を移動する探索ブロック５３から検出する。そして当該検出された探索ブロック５３と基準ブロック５１間の位置のずれ（移動の方向と大きさ）を動きベクトルとする。
【００８４】
上述の相似度の判定は、先ず探索ブロック５３の各画素値について、基準ブロック５１の対応する画素値との差分をとり、その差によって示される評価値、例えば差分絶対値和を求める。次に、上述の判定操作を全ての探索ブロック５３について行い、それぞれ求めた評価値和、すなわち各差分絶対値和から最小のものを求める。この最小の差分絶対値和を与える探索ブロック５３を、基準ブロック５１と最も高い相似度を示すブロックとし、かかるブロックの原点の画素６３と、基準ブロック５１の原点の画素との間で特定することができるベクトルを動きベクトルとする。
【００８５】
なお、このブロックマッチング部１５１は、上述したブロックマッチング法に基づく動きベクトルの検出に加えて以下に示す検出方法を適用することにより、本来の画像の動きに適合した動きベクトルを検出しても良い。
【００８６】
先ず、第１の検出方法について説明をする。この第１の検出方法では、上述のブロックマッチング法を利用した動き補正に加えて、更に以下のコンセプトから、動きベクトルの検出を行う。
【００８７】
図９は、探索範囲５４内に割り当てられた全探索ブロック５３について求めた差分絶対値和の分布傾向の一例を示している。この図９より、差分絶対値和の高い領域は、基準ブロック５１と探索ブロック５３との画素値が著しく異なる領域である。一方、凹部を形成している差分絶対値の低い領域は、基準ブロック５１と探索ブロック５３との画素値が近似する領域である。すなわち、画素値が近似する領域に対して動きベクトルを特定することで、高画質化、高解像度化を実現することができる。
【００８８】
探索範囲５４は、垂直成分（ｙｓ）に対応した水平ラインが割り当てられている。各水平ラインは、それぞれ差分絶対値の極小値を有し、これらの極小値が上述した差分絶対値の低い領域を形成している。以下、これらの水平ライン毎の極小値をライン極小値と称する。
【００８９】
また、通常のブロックマッチング同様に探索範囲５４全体の中から特定した差分絶対値和の極小値を領域極小値と称する。すなわち各ライン極小値の中で最小となる差分絶対値和は、この領域極小値に相当する。図９において示されるように、黒丸で示した領域極小値は、他のライン極小値と比較しても大差無い。このため、この領域極小値を示す画素の代わりに、ライン極小値を示す画素について、基準ブロック５１の原点の画素との間で動きベクトルを特定しても、画質や解像度にほとんど影響が及ばないことになる。
【００９０】
このため第１の検出方法では、かかる性質に着目し、ライン極小値を有する画素の中から本来の画像の動きに最も適合する画素を選択し、基準ブロック５１の原点の画素との間で動きベクトルを特定する。
【００９１】
次に第２の検出方法について説明をする。この第２の検出方法では、図１０に示すように、左側の画素（ブロック）から右側の画素（ブロック）へ順に動きベクトルを求めていくことに着目し、上述のブロックマッチング法に加えて、更に以下の動き補正を行なう。
【００９２】
本来の画像の動きを識別するために、左隣の画素の動きベクトルを本来の画像の動きを識別するためのパラメータとして読み出す。そして、動きベクトルを求める画素３５（基準ブロック５１の原点の画素）の左隣に位置する画素３４において求められている動きベクトルが正確なものであると仮定する。実際には、図１１に示すように、画素３５の動きベクトルの方向を、該左隣に位置する画素３４の動きベクトルに合わせる。このようにして求められた画素３５の動きベクトルも正確なものとなるため、さらに画素３６の動きベクトルを求める際に、画素３５を参酌することができ、動きベクトルの正確性を担保することが可能となる。
【００９３】
またブロックマッチング部１５１は、上述したブロックマッチング法に基づいて検出した動きベクトルについて、更に図１２に示す修正処理を施しても良い。
【００９４】
この修正処理では、実際の画像の動きと無関係な動きベクトルが求められている画素（以下、この画素を基準画素と称する）を抽出し、当該基準画素に隣接する隣接画素の動きベクトルに適合させるものである。
【００９５】
まず、ブロックマッチング部１５１は、ステップＳ１１において各変数を初期化し、次にステップＳ１２において、図１３に示す隣接画素Ａ〜Ｈの中から最初の隣接画素（例えば隣接画素Ａ）における動きベクトルを抽出する。
【００９６】
次に、ブロックマッチング部１５１は、ステップＳ１３において、隣接画素における動きベクトルの水平成分の極性Ｖｘ＿ｉを識別し、当該極性がプラスであればステップＳ１４へ移行し、当該極性がマイナスであればステップＳ１５へ移行する。
【００９７】
ステップＳ１４において、ブロックマッチング部１５１は、図示しないカウンタＣｎｔ＿ｐに１を加算し、また抽出した動きベクトルの水平成分を、隣接画素の水平成分の和Ｖｘ＿ａｖｅ＿ｐへ、また当該動きベクトルの垂直成分を垂直成分の和Ｖｙ＿ａｖｅ＿ｐへ加算し、ステップＳ１６へ移行する。
【００９８】
ステップＳ１５において、ブロックマッチング部１５１は、図示しないカウンタＣｎｔ＿ｍに１を加算し、また抽出した動きベクトルの水平成分を、隣接画素の水平成分の和Ｖｘ＿ａｖｅ＿ｍへ、当該動きベクトルの垂直成分を垂直成分の和Ｖｙ＿ａｖｅ＿ｍへ加算し、ステップＳ１６へ移行する。
【００９９】
ステップＳ１６において、ブロックマッチング部１５１は、ステップＳ１３で識別した隣接画素が、抽出すべき隣接画素Ａ〜Ｈのうち最後の隣接画素か否か識別する。最後の隣接画素であればステップＳ１８へ移行する。最後の隣接画素でなければステップＳ１７へ移行する。
【０１００】
ステップＳ１７において、ブロックマッチング部１５１は、次の隣接画素の動きベクトル（例えば隣接画素Ｂ）を抽出し、再度ステップＳ１３へ移行する。このルーチンを組むことにより、図２に示す隣接画素Ａ〜Ｈ全てについて動きベクトルの識別をすることが可能となる。また隣接画素Ａ〜Ｈ全てについて動きベクトルを識別して、ステップＳ１８に移行する際には、カウンタＣｎｔ＿ｐにおいて、動きベクトルの水平成分の極性がプラスである隣接画素の個数が、またカウンタＣｎｔ＿ｍにおいて、動きベクトルの水平成分の極性がマイナスである隣接画素の個数が示されることとなる。さらに、動きベクトルの水平成分の極性がプラスである隣接画素における水平成分の和Ｖｘ＿ａｖｅ＿ｐ、垂直成分の和Ｖｙ＿ａｖｅ＿ｐが求められており、また動きベクトルの水平成分の極性がマイナスである隣接画素における水平成分の和Ｖｘ＿ａｖｅ＿ｍ、垂直成分の和Ｖｙ＿ａｖｅ＿ｍが求められることになる。
【０１０１】
ちなみに、ステップＳ１７において、隣接画素Ａ〜Ｈの抽出する順は時計回り、或いは反時計回りであっても良いし、ランダムであっても良い。また抽出する隣接画素は、隣接画素Ａ〜Ｈ全て抽出しなくても良く、例えば、上段の隣接画素Ａ〜Ｃ、隣接画素Ｂ,Ｄ,Ｅ、又は、隣接画素Ａ,Ｂ,Ｃ,Ｄ,Ｅであっても良い。また、画素単位でなく複数の画素からなるブロック単位で上述の処理を実行しても良い。
【０１０２】
ステップＳ１８に移行すると、ブロックマッチング部１５１は、カウンタＣｎｔ＿ｐとカウンタＣｎｔ＿ｍの数値を比較する。その結果、カウンタＣｎｔ＿ｐがより大きい場合には、隣接画素のうち、動きベクトル水平成分の極性がプラスである隣接画素の方が多いことが示され、ステップＳ１９へ移行する。また、カウンタＣｎｔ＿ｍがより大きい場合には、隣接画素のうち、動きベクトルの水平成分の極性がマイナスである隣接画素の方が多いことが示され、ステップＳ２０へ移行する。
【０１０３】
ステップＳ１９では、動きベクトルの水平成分の極性がプラスである隣接画素に基づき、基準画素における修正動きベクトルを求める。この修正動きベクトルの各成分（Ｖｘ＿ｎ、Ｖｙ＿ｎ）は、水平成分の極性がプラスである隣接画素の各成分の平均値とする。具体的には以下の式に基づき算出する。
Ｖｘ＿ｎ＝Ｖｘ＿ａｖｅ＿ｐ／Ｃｎｔ＿ｐ
Ｖｙ＿ｎ＝Ｖｙ＿ａｖｅ＿ｐ／Ｃｎｔ＿ｐ
【０１０４】
また、ステップＳ２０では、動きベクトルの水平成分の極性がマイナスである隣接画素に基づき、基準画素における修正動きベクトルを求める。この修正動きベクトルの各成分（Ｖｘ＿ｎ、Ｖｙ＿ｎ）は、水平成分の極性がマイナスである隣接画素の各成分の平均値とする。具体的には以下の式に基づき算出する。
Ｖｘ＿ｎ＝Ｖｘ＿ａｖｅ＿ｍ／Ｃｎｔ＿ｍ
Ｖｙ＿ｎ＝Ｖｙ＿ａｖｅ＿ｍ／Ｃｎｔ＿ｍ
【０１０５】
すなわち、ブロックマッチング部１５１は、上述した図１２に示す処理手順を踏むことにより、基準画素の動きベクトルを、隣接画素の動きベクトルのベクトル方向をカウントし、多数の隣接画素が示すベクトル方向に合うように修正することができる。換言すれば、基準画素の周囲に位置する隣接画素の動きベクトルの方向を多数決し、多い方の動きベクトルの方向を実際の画像の動きであるものと推定して、基準画素の動きベクトルのベクトル方向を修正することができる。これにより、動きベクトルのばらつきを解消することが可能となり、ひいては、変換画像の劣化を防止することができる。
【０１０６】
次に範囲外検出部１５２の動作例について説明をする。
【０１０７】
範囲外検出部１５２は、ブロックマッチング部１５１から送信された動きベクトルが例えば図１４に示すように探索範囲５４外に出る場合に補正処理を行なう。
【０１０８】
第１の補正処理は、例えば図１４(a)に示すように、修正する動きベクトルのベクトル方向を、ブロックマッチング演算部１１により求められた動きベクトルのベクトル方向に適合させる。すなわちブロックマッチング演算部１１により求められた動きベクトルの方向を変えずに、ベクトル量のみ探索範囲５４の輪郭部まで縮小させる。
【０１０９】
第２の補正処理は、例えば図１４(b)に示すように、修正する動きベクトルの垂直成分を、ブロックマッチング演算部１１により求められた動きベクトルの垂直成分に適合させ、或いは修正する動きベクトルの水平成分を、ブロックマッチング演算部１１により求められた動きベクトルの水平成分に適合させつつ、ベクトル量を探索範囲５４の輪郭まで縮小させる。
【０１１０】
第３の補正処理は、例えば図１４(c)に示すように、ベクトル量が探索範囲５４内に収まるような複数の動きベクトルの候補を予め設定し、ブロックマッチング演算部１１により求められた動きベクトルのベクトル方向、ベクトル量に応じて（換言すれば差分絶対値和が最小となる画素位置に応じて）、当該動きベクトルの候補から一の動きベクトルを選択する。ちなみに設定する動きベクトルの候補は、図１４(c)に示すように、探索範囲５４の各辺につき、１つずつ設定しても良い。
【０１１１】
このように、本発明に係る動きベクトル検出装置１は、求められる真の動きベクトルが探索範囲５４外に存在する場合においても、従来のブロックマッチング法の如く各ブロック５１,５３の差分絶対値和の最小値を最優先することなく、当該真の動きベクトルを容易に検出することができる。これにより、本発明は、本来の動きと異なる不規則な動きベクトルが求められることは無く、画質の劣化や、領域単位での処理破綻を防止することが可能となる。
【０１１２】
次に、画像シフト部１６の具体的な動作例について説明をする。
【０１１３】
図１５(a)は、１コマ２フィールドで構成されるＴＶ信号が入力された場合における画像シフト部１６の具体的な動作例を一次元のグラフで示している。この動作例は、ＴＶ信号が入力された場合のものであり、０から始まる番号は、画素位置を示すアドレスであり、また縦軸は画素値を表している。
【０１１４】
本発明では、この時間的に異なる画像データＤ１と画像データＤ２の中間に位置する第２のフィールド（動き補正フィールド）に対して、様々な画像のバリエーションにおいても動きがスムーズに見えるように補正データを書き込む。すなわち、この図１５に示す例において、左側に凸部がある画像データＤ１から、中央になだらかな凸部がある画像データＤ２へ移り変わる際に、全体の動きがスムーズに見えるような画像を、上述の動き補正フィールドにおいて作成する。
【０１１５】
図１６は、図１５に示す画像シフト部１６の具体的な動作例を、画素値で表示したものである。図１６(a)は、画像シフト部１６に入力される画像データＤ１と画像データＤ２を表したものであり、番号は、画素位置を示すアドレスである。各画素毎に輝度があることから、供給される画像データＤ１には、番号ごとに画素値が割り振られる。
【０１１６】
すなわち、図１６(a)に示す動作例において、画像データＤ１は、番号０〜１１のアドレスにおいて、順に１００、１００、２００、・・・・と続く画素値で表される。
【０１１７】
画像データＤ１より後に位置する画像データＤ２は、番号０〜１１のアドレスにおいて、順に１００、１００、１００、・・・・と続く画素値で表される。
【０１１８】
図１６(a)に示されている動きベクトルは、この画像データＤ１と、画像データＤ２間との間で、各画素毎の画像データＤ１を基準としたベクトル量を表したものである。例えば、画像データＤ１において番号１のアドレスにある画素値１００の画素は、１フィールド後に位置する画像データＤ２においても番号１のアドレスに位置している。従って動きベクトルは０である。また、例えば画像データＤ１において番号２のアドレスにある画素値２００の画素は、画像データＤ２において、番号４のアドレスに移動する。従って動きベクトルは４−２＝２より、２となる。ちなみに図１５に示す矢印は、この各画素毎の動きベクトルを示したものである。
【０１１９】
図１６(a)に示すフラグＦ１は、画像データＤ１の検出画素と、画像データＤ２における当該検出画素との差分絶対値とした場合の例である。この図１６(a)に示す例において、画像データＤ１において番号２のアドレスにある画素値２００の画素は、画像データＤ２において番号４のアドレスに移動し、画素値は２００と変わらないため、差分絶対値は０である。一方、画像データＤ１において番号７のアドレスにある画素値１１０の画素は、画像データＤ２において番号１０のアドレスに移動し、画素値は１００となるため、差分絶対値は１０となる。
【０１２０】
図１６(b)は、シフトバッファ読出制御信号ＲＳ１について示している。この図１６(b)に示した例では、式（１.１）に基づき、アドレス計算カウンタから、０，１，２、３・・・と、０から１ずつプラスにシフトさせた値をＣＸ１とし、また移動量情報αを１／２とした場合について示している。なお、アドレス計算カウンタの数値ＣＸ１は、画像データＤ１のアドレスを示す番号に対応させて出力している。
【０１２１】
このシフトバッファ制御信号ＲＳ１を生成する際において、例えば、アドレス計算カウンタの番号が”２”である場合には、図１６(a)に基づき、番号２に対応する画素位置の動きベクトルは”２”であるので、式（１.１）に基づき、２＋２×１／２＝３より、シフトバッファ読出制御信号ＲＳ１の番号は”３”となる。同様にアドレス計算カウンタの番号が”３”の場合には、図１６(a)に基づき、番号３に対応する動きベクトルは”２”であるので、式（１.１）に代入して、３＋２×１／２＝４より、シフトバッファ読出制御信号ＲＳ１の番号は”４”となる。
【０１２２】
すなわち、この生成されたシフトバッファ読出制御信号ＲＳ１の番号は、動き補正フィールドにおいて、補正データＨ１を書き込むアドレスの番号を示している。
【０１２３】
算出したシフトバッファ制御信号ＲＳ１のアドレスについて、シフトバッファ１６３への動きベクトルの書き込み状況を検知するべく、フラグＦ´を読み出す。このフラグＦ´は、シフトバッファ１６３にアクセスされたアドレスにおいて、動きベクトルが書き込まれていない場合には、”ＮＭ”が返される。一方、動きベクトルが既に書き込まれたアドレスに対しては、差分絶対値の値が返される。
【０１２４】
例えば図１６(b)に示す例において、シフトバッファ読出制御信号ＲＳ１の番号０〜８のアドレスでは、シフトバッファ１６３からフラグＦ´を介して、データが書き込まれていない旨が表示される。また、番号９のアドレスにおいては、最初はデータが書き込まれていない旨の”ＮＭ”が、次回では差分絶対値が、フラグＦ´として返されている。すなわちシフトバッファ１６３の番号９のアドレスには、複数の動きベクトルが書き込まれることを意味している。これは図１５において、画像データＤ２の番号９のアドレスには、画像データＤ１の番号６並びに番号９に基づく動きベクトルが集中していることからも示される。
【０１２５】
ここで、フラグＦ´が”ＮＭ”で返されたシフトバッファ１６３のアドレスには、当該アドレスの番号に応じて動きベクトルが順次書き込まれる。また、フラグＦ´が数値を持つ場合には、フラグＦ´と当該アドレスの番号に相当するフラグＦとを比較し、数値が小さい方を有効とする。これにより、画像データＤ１から画像データＤ２へ移行するまでに誤差の少ない動きベクトルをシフトバッファ１６３へ書き込むことが可能となり、単一の画素位置に複数の動きベクトルがかかるような、様々なバリエーションの画像についても高精度に動き補正することが可能となる。
【０１２６】
シフトバッファ書込制御部１６２は、供給されるフラグＦ´に基づき、動きベクトルをシフトバッファ１６３上に書き込むためのアドレスを決定する。例えば、番号９において、フラグＦは”１０”であり、またフラグＦ´は”０”である。数値の小さいフラグを優先するため、この番号９では、当初に書き込まれた、番号６のアドレスに基づく動きベクトル”３”が、そのままシフトバッファ１６３に格納され続けることになる。
【０１２７】
またシフトバッファ書込制御部１６２は、アドレスに対応する番号と動きベクトルとを関連付けてシフトバッファ書込制御信号ＲＳ２とし、これをシフトバッファ１６３へ書き込む。書き込まれた後のシフトバッファ１６３には、図１６(b)の下段に示すように、各番号のアドレスに対して動きベクトルが格納されることになる。
【０１２８】
シフトバッファ１６３に格納された動きベクトルを、アドレスの番号の順に再度整理した結果を図１６(c)に示す。また処理フラグＦ２は、各アドレスにおけるマーク情報を示している。この処理フラグＦ２において”ＯＫ”が出力されている場合には、当該番号のアドレスにデータが書き込まれていることを示し、また”ＮＭ”が出力されている場合には、当該番号のアドレスにデータが書き込まれていないことを示している。ちなみに番号２のアドレスには、データが書き込まれていないため、処理フラグＦ２として”ＮＭ”が出力される。
【０１２９】
このシフトバッファ１６３から読み出された移動済動きベクトルは、データバッファ読出制御部１６４へ、処理フラグＦ２は、データ演算部１６７へ供給される。
【０１３０】
データバッファ読出制御部１６４は、供給された移動済動きベクトルに基づき、上述の式（２.１）〜（２.４）を利用してバッファ制御信号Ｓ１１、Ｓ１２を作り出す。例えば、アドレス計算カウンタの値を、シフトバッファ１６３のアドレスに対応する番号とした場合において、番号３のアドレスでは、図１６(c)より、移動済動きベクトルは”２”であるので、バッファ制御信号Ｓ１１は、式（２.１）より”２”となり、またバッファ制御信号Ｓ１２は、式（２.３）より”４”となる。また、番号６のアドレスにおいても同様に、移動済動きベクトルは、”３”であるので、バッファ制御信号Ｓ１１は、”５”となり、またバッファ制御信号Ｓ１２は、”８”となる。
【０１３１】
以上の如く算出されたバッファ制御信号Ｓ１１は、第１のバッファ１６５に供給され、バッファ制御信号Ｓ１１の番号に対応するアドレスの画素値が、第１のバッファ１６５から読み出される。読み出された画素値は、図１６(c)中段に示すように、シフトデータＳＤ１としてアドレスに対応付けられ、データ演算部１６７等に供給されることとなる。
【０１３２】
同様にバッファ制御信号Ｓ１２が第２のバッファ１６６に供給され、バッファ制御信号Ｓ１２の番号に対応するアドレスの画素値が第２のバッファ１６６から読み出される。読み出された画素値は、図８(c)中段に示すようにシフトデータＳＤ２としてアドレスに対応付けられ、データ演算部１６７等に供給されることとなる。
【０１３３】
図１６(c)最下段は、補正データＨ１を、シフトデータＳＤ１とシフトデータＳＤ２の平均値とした場合について示している。データ演算部１６７は、送信される処理フラグＦ２として”ＯＫ”が出力されている番号について、対応するシフトデータＳＤ１、ＳＤ２に基づき、補正データＨ１を算出し、また”ＮＭ”出力されている番号２のアドレスでは、隣接する番号１のアドレスの画素値をそのままホールドしている。但し、”ＮＭ”の部分については、アンカバー処理部１６８で再度演算が行われるため、ここではダミーデータとしてホールド値を代入する。
【０１３４】
この生成した補正データＨ１を、各番号のアドレス毎に動き補正フィールドへ書き込むことにより、図１５(a)に示すような画像を作り出すことができる。
【０１３５】
すなわち、画像シフト部１６は、例えば番号９のように動きベクトルが示す画素が重複する場合にいずれか一の動きベクトルを選択して、補正データＨ１を作成し、これを動き補正フィールド５０へ書き込むことができる。これにより、本発明に係る動き補正回路１は、例えば画像が水平方向へ移動しながら、画素値が変化する場合においても、画像の動きの不連続性を効率よく解消することができる。
【０１３６】
次に、アンカバー処理部１６８の動作例について説明する。
【０１３７】
このアンカバー処理部１６８による画素の補間処理は、アンカバー領域周辺画素の書込処理、静止画像処理、背景処理の３種類に分類される。
【０１３８】
図１７は、アンカバー領域周辺画素の書込処理を行なう場合について説明するための図である。このアンカバー領域内において、画素値を補間する補間画素位置１１０とし、アンカバー領域の水平方向に隣接する画素位置を、左から画素位置１２０、画素位置１３０とする。
【０１３９】
動きベクトル特定部１１は、先ず補間画素位置１１０における動きベクトルを特定する。かかる動きベクトルは、例えば基準フィールド３０と、参照フィールド４０との間で算出した差分に基づいて特定する。
【０１４０】
次に画素選択部１２は、特定した補間画素位置１１０における動きベクトルについて抽出した垂直成分に基づき、アンカバー領域の垂直方向、若しくは水平方向に隣接する画素を選択する。この画素の選択は、動きベクトルの垂直成分が＋２,−２の場合には、垂直方向に隣接する画素１１１,１１２をそれぞれ選択し、また垂直成分が＋１,０,−１のときには、水平方向に隣接する画素１２０,１３０を選択する。
【０１４１】
すなわち、補間画素位置１１０における動きベクトルの垂直成分が＋２,−２の場合には、補間画素位置１１０周辺の画素において垂直成分への動きが水平成分の動きよりも顕著であることを示している。従って、補間画素位置１１０周辺の画素の画素値に適合させるためには、垂直方向に隣接する画素の画素値を書き込む方が好ましいことになる。また、シフト量は、スムーズな動きを実現する観点から、動きベクトルのベクトル量の１／２にすることが多い。このため、＋２,−２を１／２倍すると＋１,−１になるため、補間画素位置の垂直方向へ隣接する画素１１１,１１２の画素値を書き込むことにより、ベクトル量の観点からも、アンカバー領域周辺の画素の画素値と整合をとることができる。
【０１４２】
一方、補間画素位置１１０における動きベクトルの垂直成分が＋１,０,−１の場合には、補間画素位置１１０周辺の画素において水平成分の動きが垂直成分の動きよりも顕著であることを示している。従って、補間画素位置１１０周辺の画素の画素値に整合させるためには、水平方向に隣接する画素１２０,１３０の画素値を書き込む方が好ましいことになる。
【０１４３】
次に、本発明を適用したアンカバー領域の処理方法において、静止画像処理を用いる場合について説明をする。
【０１４４】
この静止画像処理において、以下に説明する静止条件を満たすときに、情報書込部１３は、基準フィールド３０上の補間画素位置１１０における画素値を、そのまま動き補正フィールド５０上の補間画素位置１１０へ書き込む。すなわち、基準フィールド上の画像と、１フレーム後の参照フィールド４０上の画像が静止していれば、基準フィールド３０の画像をそのまま動き補正フィールドに書き込めば足りるからである。
【０１４５】
静止条件Ａは、基準フィールド３０から切り出した補間画素位置１１０を原点とする基準ブロックと、上記参照フィールド４０から切り出した補間画素位置１１０を原点とする参照ブロックとの間で演算した画素値が類似していること、換言すればこれらの画素値の差分絶対値が閾値以下であること、を条件とする。
【０１４６】
また静止条件Ｂは、上述した静止条件Ａに加えて、さらにアンカバー領域の左隣の画素１２０における画素値と、基準フィールド３０から切り出した補間画素位置１１０の画素値が類似していること、換言すればこれらの画素値の差分絶対値が閾値以下であること、を条件とする。
【０１４７】
更に静止条件Ｃは、上述した静止条件Ａに加えて、アンカバー領域の左隣の画素１２０における画素値と、アンカバー領域の右隣の画素１３０における画素値が非類似であり（換言すれば、これらの画素値の差分絶対値が閾値以上であり）、かつ基準フィールド３０上の補間画素位置１１０における画素値が、上記左隣の画素１２０における画素値と上記右隣の画素１３０における画素値との間にあることを条件とする。
【０１４８】
かかる静止条件Ａ,Ｂ,Ｃは、全て基準フィールド３０上の画像と、１フレーム後の参照フィールド４０上の画像が静止状態に近い程、クリアできるものとなっている。ちなみに、内蔵したテレビジョン受像機のスペックに応じて、この静止条件Ａ,Ｂ,Ｃを自由に選択することも可能である。
【０１４９】
次に、本発明を適用したアンカバー領域の処理方法において、背景処理を用いる場合について説明をする。
【０１５０】
この背景処理においては、動きベクトル特定部１１により特定された動きベクトルの垂直成分を識別する。この動きベクトルの垂直成分が−１〜＋１であり、かつアンカバー領域における左隣の画素１２０、又は右隣の画素１３０における動きベクトルの各成分が０である場合に、背景であるものと判別する。そして、参照フィールド４０上の補間画素位置１１０における画素値を、そのまま動き補正フィールド５０上の補間画素位置１１０へ書き込む背景処理を行なう。背景の画像であれば、参照フィールド４０上の画像をそのまま動き補正フィールド５０に書き込めば足りるからである。
【０１５１】
なお、本発明はＰＡＬ方式によるテレビジョン受像機に対して適用される場合に限定されることはなく、例えば、ＮＴＳＣ(National TV System Committee)方式の６０フィールド秒（３０コマ／秒）のインタレース画像信号が入力されるテレビジョン受像機に対しても適用可能である。また、ＳＥＣＡＭ方式によるテレビジョン受像機に対しても適用可能である。
【０１５２】
また本発明は、例えば図３に示す画像シフト部１６において、シフトバッファ読出制御部１６１を除去し、またシフトバッファ読出制御信号ＲＳ１、フラグＦ１、フラグＦ´を省略し、優先順位を判定しない方式にも適用可能である。この画像シフト部１６において、アドレスに書き込むデータが重複する場合には、時間的に後に計算されたデータが、既に書き込まれているデータ上に上書きされることになるが、フラグの読み出し時の制御が不必要になるため、回路を更に簡略化することができる。
【０１５３】
また本発明は、例えばテレビジョン受像機に接続する信号変換器等にも適用でき、また回路やハードウェア等で実現される場合のみならず、プロセッサ上でソフトウェアとしても実現可能である。
【０１５４】
更に本発明は、インターネットで伝送されるような画像信号をＰＣなどで表示する場合や、メディアや画像フォーマットを変換するケースにも応用することができることは勿論である。
【０１５５】
【発明の効果】
以上詳細に説明したように、本発明に係る動き補正回路及び方法は、テレシネ変換した画像を倍速変換することにより生成された１コマが４フィールドで構成される画像信号が入力され、演算した画素信号レベルの差分値に基づいて第１のフィールドを特定し、特定した第１のフィールドから後へフィールドが移行するにつれてシフト量が順次増大するように、動きベクトルのベクトル方向へ検出画素の位置をシフトさせる。このため、本発明に係る動き補正回路及び方法は、テレシネ変換後、倍速変換した画像信号特有の動きの不連続感を解消することができ、倍速変換により面フリッカ妨害を抑制した画像の動きを更にスムーズにすることができ、相乗的に画質を向上させることが可能となる。
【０１５６】
また、本発明に係る動き補正回路及び方法は、時間的に異なる画像データ間において、画像の動きをスムーズにできる最適な補正データを動き補正フィールドに書き込むため、例えば画像が水平方向へ移動しながら、画素値が変化する場合においても、画像の動きの不連続性を効率よく解消することができる。またこの動き補正回路及び方法は、テレシネ変換した画像信号とＴＶ信号とが双方とも入力される場合において、画像の様々なバリエーションに対応させて、動きの不連続性を効率よく解消することができる。これにより、フィルム信号とＴＶ信号の双方が入力されるテレビジョン受像機に内蔵することができ、また既に販売されたテレビジョン受像機に対して新たに内蔵することにより容易にバージョンアップを図ることも可能となり、汎用性をより高めることも可能となる。
【０１５７】
また、本発明に係る動き補正回路及び方法は、実際の画像の動きに適合した動きベクトルを求めることにより、求める動きベクトルのばらつきを解消し、ひいては変換画像の劣化を防止することができる。
【０１５９】
更に、本発明に係る動き補正回路及び方法は、補間画素位置における動きベクトルの垂直成分に基づき、アンカバー領域の垂直方向、又は水平方向に隣接する画素を選択し、該選択された画素を補間画素位置へ書き込む。これにより、アンカバー領域に対して、最適な画素値を示す画素を埋めることができ、動き補正フィールド上において孤立点を無くすことができるため、変換画像の劣化を防ぐことができる。
【図面の簡単な説明】
【図１】本発明を適用した動き補正回路のブロック構成図である。
【図２】動きベクトル検出部の構成を示した図である。
【図３】画像シフト部のブロック構成を示した図である。
【図４】フィールド倍速変換回路における倍速変換前後の各フィールドと画素位置の関係を示した図である。
【図５】テレシネ変換された画像において、水平方向へ画像が移動する場合における各フィールドと画像位置の関係を示した図である。
【図６】ＴＶ信号の画像において、水平方向へ画像が移動する場合における各フィールドと画像位置の関係を示した図である。
【図７】シーケンスの検出方法について説明するための図である。
【図８】ブロックマッチング法について説明するための図である。
【図９】差分絶対値和の分布傾向に照らし合わせて動きベクトルを検出する場合について説明するための図である。
【図１０】左側の画素から右側の画素へ順に動きベクトルを求めていく場合について説明するための図である。
【図１１】隣接画素の動きベクトルに応じて、動きベクトルを求める場合について説明するための図である。
【図１２】動きベクトルの修正処理の手順を示したフローチャートである。
【図１３】動きベクトルの修正処理において、動きベクトルを抽出する隣接画素を示した図である。
【図１４】ブロックマッチング部から送信された動きベクトルが探索範囲外に出る場合について行なう補正処理について説明するための図である。
【図１５】画像シフト部の動作処理過程を１次元で表示した図である。
【図１６】画像シフト部の具体的な動作例を、画素値で表示した図である。
【図１７】アンカバー領域に対して画素を補間する場合について説明するための図である。
【図１８】フィールド周波数倍速方式を適用したフィールド倍速変換回路のブロック構成図である。
【図１９】倍速変換前後の各フィールドと画素位置の関係を示した図である。
【図２０】水平方向へ画像が移動する場合における各フィールドと画像位置の関係を示した図である。
【図２１】ＴＶ信号が入力される場合において、水平方向へ画像が移動するときの各フィールドと画像位置の関係を示した図である。
【図２２】ブロック単位で動きベクトルを検出する例について説明するための図である。
【図２３】アンカバー領域が生じた場合について示した図である。
【符号の説明】
１  画像信号処理装置、２  ＣＲＴ、３  フィールド倍速変換回路、１１  第１の画像メモリ、１２  第２の画像メモリ、１３  シーケンス検出部、１４  データ選択部、１５  動きベクトル検出部、１６  画像シフト部、３１  入力端子、３２  倍速変換部、３３  フレームメモリ、１５１  ブロックマッチング部、１５２  範囲外検出部、１５３  再割り当て部、１６１  シフトバッファ読出制御部、１６２  シフトバッファ書込制御部、１６３  シフトバッファ、１６４  データバッファ読出制御部、１６５  第１のバッファ、１６６  第２のバッファ、１６７  データ演算部、１６８  アンカバー処理部
【図１】
0004337302.tif 000002
【図２】
0004337302.tif 000003
【図３】
0004337302.tif 000004
【図４】
0004337302.tif 000005
【図５】
0004337302.tif 000006
【図６】
0004337302.tif 000007
【図７】
0004337302.tif 000008
【図８】
0004337302.tif 000009
【図９】
0004337302.tif 000010
【図１０】
0004337302.tif 000011
【図１１】
0004337302.tif 000012
【図１２】
0004337302.tif 000013
【図１３】
0004337302.tif 000014
【図１４】
0004337302.tif 000015
【図１５】
0004337302.tif 000016
【図１６】
0004337302.tif 000017
【図１７】
0004337302.tif 000018
【図１８】
0004337302.tif 000019
【図１９】
0004337302.tif 000020
【図２０】
0004337302.tif 000021
【図２１】
0004337302.tif 000022
【図２２】
0004337302.tif 000023
【図２３】
0004337302.tif 000024