JP3910510B2 - Frame interpolation system and frame interpolation method - Google Patents

Frame interpolation system and frame interpolation method Download PDF

Info

Publication number
JP3910510B2
JP3910510B2 JP2002270643A JP2002270643A JP3910510B2 JP 3910510 B2 JP3910510 B2 JP 3910510B2 JP 2002270643 A JP2002270643 A JP 2002270643A JP 2002270643 A JP2002270643 A JP 2002270643A JP 3910510 B2 JP3910510 B2 JP 3910510B2
Authority
JP
Japan
Prior art keywords
pixel
frame
value
interpolation
edge
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 - Lifetime
Application number
JP2002270643A
Other languages
Japanese (ja)
Other versions
JP2004112229A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2002270643A priority Critical patent/JP3910510B2/en
Publication of JP2004112229A publication Critical patent/JP2004112229A/en
Application granted granted Critical
Publication of JP3910510B2 publication Critical patent/JP3910510B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、動画像処理技術に関し、特に、動画像信号におけるフレーム間を補間するフレーム補間システム及びフレーム補間方法に関する。
【0002】
【従来の技術】
フレーム補間方法とは、図17に示すように、複数フレームからなる画像信号に対して、フレーム(参照フレーム)201aと201b間に補間フレーム200a、200bを、フレーム201b、201c間に補間フレーム200c、200dを効率的に補間して時間当たりの表示フレーム数を増大させる方法である。これにより動画像、特に圧縮画像の高画質化を実現することが出来る。また、フレーム補間方法としては、動き推定の基本的技術であるブロックマッチング法が基本となる。ここで、ブロックマッチング法とは、フレーム201a、201b、201cを小ブロックに分割し、それら小ブロックに対して、フレームの画像領域から最も相関度の高いブロックを探索して動きベクトルを求める方法である。このブロックマッチング法により得られた動きベクトルに基づき、補間フレーム200a、200b、200c、200d・・・・・が生成される(以下において「第1の従来技術」という。)。
【0003】
また、特許文献1には、補間フレームの対象ブロックを中心として、幾何対照的に前後のフレームの相関を求めてフレーム補間を行う方法が開示されている(以下において「第2の従来技術」という。)。この方法は、第1の従来技術のように動きベクトルを求めた後の処理が不要な為、直接的に補間フレーム200を求めることが出来る。
【0004】
特許文献2には、ブロックマッチング法をベースにしながら、ブロック内で更に領域を分割することによって、より精度の高いフレーム補間を行う技術が開示されている(以下において「第3の従来技術」という。)。
【0005】
【特許文献1】
特許2528103号公報
【特許文献2】
特開2000−224593公報
【0006】
【発明が解決しようとする課題】
第1の従来技術においては、動き補償を行って補間フレームを生成する際に、動きベクトルの終点を固定し、終点が指す画像データを始点に対して動き補償を行う。しかし、補間を行うために動きベクトルの操作が行われているので、始点の位置が本来の位置と異なる。この為に、第1の従来技術においては、図18に示すように、生成される補間フレームに隙間及び重なりが生じる問題があった。
【0007】
第2の従来技術においては、補間フレーム上に一様格子を考えるため、重なりや隙間が生じないが、ブロックと他のブロックとの間にブロック歪みが生じる問題があった。第3の従来技術においては、ブロック内の3以上の複数の動きに対応できないという問題があった。このように、単純なブロックベースの手法ではブロックの境界においてブロック歪みが発生する問題があった。ブロック歪みを無くす為には、ブロック内を分割し、反復的に一致領域と不一致領域を分けていけばよいが、画像の標本化及び揺らぎによってエッジにノイズが残ってしまう。
【0008】
上記問題点を鑑み、本発明は、隙間や重なりが発生せず、ブロック歪みを抑え、エッジにノイズの発生しないフレーム補間システム及びフレーム補間方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
上記目的を達成するために、本発明の第1の特徴は、第1のフレームの第1画素の各々がエッジ部分の画素であるか否かを示すエッジ情報を求めるエッジ検出手段と、初期値が第1の値である複数の要素を有し、各要素は第1画素の各々に対応づけられている不一致フィルタのデータを記憶する不一致フィルタ記憶手段と、第1の値の要素に対応づけられた第1画素のみを用いて、第1のフレームとこの第1のフレームの次のフレームである第2のフレームとの動きベクトルを求める動き検出手段と、第1の値を有する要素に対応づけられた第1画素と動きベクトルによりこの第1画素に対応付けられた第2のフレーム上の第2画素との対象画素対の画素値の差分値を求める差分計算手段と、第1のフレーム上でエッジ部分の第1画素に関する対象画素対の閾値非エッジ部分の第1画素関する対象画素対の閾値より高くなるようにエッジ情報に基づいて設定された閾値と、対象画素対の画素値の差分値とを比較する比較手段と、画素値の差分値が閾値より小さい対象画素対の第1画素に対応づけられた要素に第1の値とは異なる第2の値を設定する不一致フィルタ更新手段と、動き検出手段、差分計算手段、比較手段及び不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される不一致フィルタ及び動きベクトルを記憶する繰り返し制御手段と、第2の値を有する要素に対応づけられた第1画素に関する対象画素対を用いて、第1のフレームと第2のフレームとの間の補間フレーム上で動きベクトルによって指し示される位置の画素値を求める動き補償手段とを備えるフレーム補間システムであることを要旨とする。
【0010】
本発明の第の特徴は、第1のフレームの各画素のエッジ強度を示す第1エッジ画像を求めるエッジ検出手段と、初期値が第1の値である複数の要素を有し、各要素は第1のフレームと第1のフレームの次のフレームである第2のフレームとの間にある補間フレームの補間画素の各々に対応づけられている不一致フィルタのデータを記憶する不一致フィルタ記憶手段と、補間フレームを分割した複数の補間ブロックの各々を基準にして、第1のフレームと第2のフレームとの間で点対称に、第1のフレームの第1ブロックと第2のフレームの第2ブロックとのブロック対を、第1の値の要素に対応づけられた補間画素の補間ブロック内での相対座標と同じ相対座標を持つ第1及び第2ブロック内の画素のみを用いて探索することにより、第1のフレームと第2のフレームとの間の補間ブロックに関する動きベクトルを検出する動きベクトル検出手段と、補間ブロック内で第1の値の要素に対応づけられた補間画素に関して、動きベクトルによってこの補間画素に対応付けられた第1のフレーム上の第1画素と第2のフレーム上の第2画素の画素値との対象画素対の差分値を求める差分計算手段と、第1エッジ画像を用いて第1画素がエッジ部分であるか非エッジ部分であるかを判定して、第1画素がエッジ部分である場合にはこの第1画素に関する対象画素対がエッジ部分であると判定し、第1画素が非エッジ部分である場合にはこの第1画素に対応する対象画素対が非エッジ部分であると判定するエッジ判定手段と、エッジ部分の対象画素対の閾値が非エッジ部分の対象画素対の閾値よりも高くなるように設定された閾値と、対象画素対の画素値の差分値とを比較する比較手段と、差分値が閾値より小さい対象画素対の第1画素に対応づけられた要素に第1の値とは異なる第2の値を設定する不一致フィルタ更新手段と、動き検出手段、差分計算手段、比較手段及び不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される不一致フィルタ及び動きベクトルを記憶する繰り返し制御手段と、第2の値を有する要素に対応づけられた補間画素に関する動きベクトルによって対応付けられた対象画素対を用いて、補間画素の画素値を求める動き補償手段とを備えるフレーム補間システムであることを要旨とする。
【0011】
本発明の第の特徴は、第1のフレームの第1画素の各々がエッジ部分の画素であるか否かを示すエッジ情報を求めるステップと、初期値が第1の値である複数の要素を有し、各要素は第1画素の各々に対応づけられている不一致フィルタのデータを記憶するステップと、第1の値の要素に対応づけられた第1画素のみを用いて、第1のフレームとこの第1のフレームの次のフレームである第2のフレームとの動きベクトルを求めるステップと、第1の値を有する要素に対応づけられた第1画素と動きベクトルによりこの第1画素に対応付けられた第2のフレーム上の第2画素との対象画素対の画素値の差分値を求めるステップと、第1のフレーム上でエッジ部分の第1画素に関する対象画素対の閾値非エッジ部分の第1画素関する対象画素対の閾値より高くなるようにエッジ情報に基づいて設定された閾値と、対象画素対の画素値の差分値とを比較するステップと、画素値の差分値が閾値より小さい対象画素対の第1画素に対応づけられた要素に第1の値とは異なる第2の値を設定するステップと、動き検出手段、差分計算手段、比較手段及び不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される不一致フィルタ及び動きベクトルを記憶するステップと、第2の値を有する要素に対応づけられた第1画素に関する対象画素対を用いて、第1のフレームと第2のフレームとの間の補間フレーム上で動きベクトルによって指し示される位置の画素値を求めるステップとを備えるフレーム補間方法であることを要旨とする。
【0012】
本発明の第の特徴は、第1のフレームの各画素のエッジ強度を示す第1エッジ画像を求めるステップと、初期値が第1の値である複数の要素を有し、各要素は第1のフレームと第1のフレームの次のフレームである第2のフレームとの間にある補間フレームの補間画素の各々に対応づけられている不一致フィルタのデータを記憶するステップと、補間フレームを分割した複数の補間ブロックの各々を基準にして、第1のフレームと第2のフレームとの間で点対称に、第1のフレームの第1ブロックと第2のフレームの第2ブロックとのブロック対を、第1の値の要素に対応づけられた補間画素の補間ブロック内での相対座標と同じ相対座標を持つ第1及び第2ブロック内の画素のみを用いて探索することにより、第1のフレームと第2のフレームとの間の補間ブロックに関する動きベクトルを検出するステップと、補間ブロック内で第1の値の要素に対応づけられた補間画素に関して、動きベクトルによってこの補間画素に対応付けられた第1のフレーム上の第1画素と第2のフレーム上の第2画素の画素値との対象画素対の差分値を求めるステップと、第1エッジ画像を用いて第1画素がエッジ部分であるか非エッジ部分であるかを判定して、第1画素がエッジ部分である場合にはこの第1画素に関する対象画素対がエッジ部分であると判定し、第1画素が非エッジ部分である場合にはこの第1画素に対応する対象画素対が非エッジ部分であると判定するステップと、エッジ部分の対象画素対の閾値が非エッジ部分の対象画素対の閾値よりも高くなるように設定された閾値と、対象画素対の画素値の差分値とを比較するステップと、差分値が閾値より小さい対象画素対の第1画素に対応づけられた要素に第1の値とは異なる第2の値を設定するステップと、動き検出手段、差分計算手段、比較手段及び不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される不一致フィルタ及び動きベクトルを記憶するステップと、第2の値を有する要素に対応づけられた補間画素に関する動きベクトルによって対応付けられた対象画素対を用いて、補間画素の画素値を求めるステップ
とを備えるフレーム補間方法であることを要旨とする。
【0013】
【発明の実施の形態】
次に、図面を参照して、本発明の第1及び第2の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【0014】
(第1の実施の形態)
本発明の第1の実施の形態に係るフレーム補間システムは、図1に示すように、画像信号を入力するエッジ検出手段11a、エッジ検出手段11aの出力を受け取るフレーム情報生成手段71a、フレーム情報生成手段71aの出力を受け取るベクトルスケール変換手段16、ベクトルスケール変換手段16の出力を受け取り、補間画像を出力する動き補償手段17aを備える。更に、第1の実施の形態に係るフレーム補間システムは、入力された画像信号を一旦記憶するフレームメモリ12aを備える。入力された動画像信号を構成するフレームのうち、現フレームを「第1のフレーム」と呼ぶ。現フレームの次のフレームであり、フレームメモリ12aに一旦蓄えられるフレームを「第2のフレーム」と呼ぶ。エッジ検出手段11aは、画像信号として、図5に示す第1のフレーム21及び第2のフレーム22からエッジ画像を検出する。フレーム情報生成手段71aは、エッジ画像に基づいて動きベクトルを生成する。そして、動きベクトルにより定まる対象画素がエッジか否かにより異なった差分処理を施して不一致フィルタのデータを生成する。ベクトルスケール変換手段16は、動きベクトルのスケールを変換する。動き補償手段17aは、動きベクトルと不一致フィルタのデータとにより、第1のフレームと第2のフレームとの間補間フレームの位置に動き補償をする。
【0015】
フレーム情報生成手段71aは、図1に示すように、エッジ画像を入力するエッジ判定手段13a、エッジ判定手段13aの出力を受け取る動き推定手段14a、動き推定手段14aの出力を受け取る一致判定手段15aを備える。エッジ判定手段13aは、エッジ画像から対象画素がエッジか否かを判定し、エッジ情報を出力する。一致判定手段15aは、動きベクトルに基づいて不一致フィルタのデータを生成する。動き推定手段14aは、エッジ情報に基づき、グループ化された動きベクトル及び不一致フィルタのデータを出力する。一致判定手段15aは、エッジ部分の対象画素に差分処理を施す第1の差分処理手段18a、非エッジ部分の対象画素に差分処理を施す第2の差分処理手段19aを備える。
【0016】
エッジ検出手段11aは、図2(a)に示すようなフレーム情報に基づいて、図2(b)に示すエッジ画像を出力する。図2(a)に示す画像ブロック3a、3bの境界部分がエッジとなる。図3においては、画素の輝度(強度)である画素値が100の画素と画素値が5の画素との境界がエッジとなる。つまり、差分が大きいために、人の目にはエッジと認識される。尚、第1のフレーム21及び第2のフレーム22内の各画素は、0〜255の256段階の画素値を有している。また、第1の小ブロック31と第2の小ブロック32は、それぞれ第1のフレーム21及び第2のフレーム22の同じ画像位置を表しているとする。図1に示すエッジ判定手段13aは、エッジ検出手段11aが出力するエッジ画像に含まれるそれぞれの画素がエッジ部分であるか非エッジ部分であるかを判定する。エッジ判定手段13aには第1の閾値T1が設定されている。第1の閾値T1は、例えば、30〜50程度に設定されている。第1の閾値T1よりも大きな値の画素値の画素をエッジ部分として1を、第1の閾値T1よりも小さな値の画素値の画素を非エッジ部分として0をそれぞれエッジフィルタの行列成分に格納する。尚、エッジフィルタは、行列で表現され、例えば、第1のフレームと等しい大きさを有する論理フィルタで構成される。
【0017】
第1の差分処理手段18a及び第2の差分処理手段19aは、第1の小ブロック31と第2の小ブロック32の対象画素に差分処理を施し、対象画素の一致・不一致を判定する。第1の差分処理手段18a及び第2の差分処理手段19aは、差分処理により得られる差分値が閾値よりも大きい対象画素を不一致と判定する。一方、差分値が閾値よりも小さい対象画素を一致と判定する。画像の量子化、揺らぎ等によって、画像内のエッジにノイズが発生した場合、画像ブロック3aと画像ブロック3bとの境界部分の画素の画素値が微妙に変化することがある。このように、画像内のエッジにノイズが発生した場合、第1の小ブロック31と第2の小ブロック32との差分処理を行うと、図3に示すように、一致判定手段15aは差分値の大きい画素を不一致と判定してしまう。この結果、補間フレーム23のエッジ部分に"虫食い"というノイズが発生する。このような微小な画素変動に対応すべく、第1の差分処理手段18aの閾値は、第2の差分処理手段19aの閾値と比して高く設定されている。
【0018】
次に、図1〜図9を用いて、第1の実施の形態に係るフレーム補間方法について説明する。但し、60Hzのノンインタレースの画像信号を120Hzのノンインタレースの画像信号にアップコンバートする場合の一例を説明する。
【0019】
(イ)先ず、図4に示すステップS111において、図1に示すエッジ検出手段11aは、第1のフレーム21のエッジを検出する。検出されたエッジは、エッジの強度を画像にしたエッジ画像に変換される。ステップS112において、エッジ画像に基づいてエッジの有無が判定される。エッジの有無を表す1、0のエッジ情報は、エッジフィルタの行列成分に格納されて動き推定手段14aに入力される。次に、ステップS113において、図5に示すように、動き推定手段14aは、第1のフレーム21を一様格子の小ブロックに分割する。
その後、ステップS114において、第1のフレーム21内の小ブロックの走査が開始され、図5に示す第1の小ブロック31aが選択されたとする。次に、ステップS115の動き推定サブルーチンに進む。
【0020】
(ロ)図6に示すステップS121において、図7に示す不一致フィルタ41の行列成分にすべて1が代入される。ステップS122において、図5に示す第1の小ブロック31aと最も相関度の高い第2のフレーム22中の第2の小ブロック32aを検索する。相関度の尺度としては、一致画素数和を用いることが出来る。「一致画素数和」とは、第1の小ブロック31a及び第2の小ブロック32aの画素について、ブロック内相対位置が等しい画素同士の差分処理を行い、差分値が閾値以下の画素を一致画素、閾値より大きいものを不一致画素とし、一致画素数の和が大きいものほど相関が高いと判断する方法である。そして、第1の小ブロック31a及び第2の小ブロック32aに基づいて、第1の動きベクトル35aを求める。ステップS122で第1の動きベクトル35aを求めた後は、ステップS301に進む。
【0021】
(ハ)ステップS123において、図1に示す一致判定手段15aは、図7の第1の小ブロック31a及び第2の小ブロック32a内の画素の走査を開始する。次に、ステップS124において、第1の小ブロック31a及び第2の小ブロック32aのそれぞれの画素に差分処理が施される。ステップS124における差分処理は、第1の小ブロック31a及び第2の小ブロック32aのそれぞれのブロック内の相対位置が等しい画素同士に対して行われる。即ち、図7に示すように、第1の小ブロック31aの画素5aは第2の小ブロック32aの画素6aと差分処理が施される。同様に、画素5b〜5iは画素6b〜6iとそれぞれ差分処理が施される。次に、ステップS125において、対象画素位置がエッジであるか否かの判断が行われる。図1に示す第1の差分処理手段18a及び第2の差分処理手段19aは、エッジフィルタの行列成分に格納された0、1の値に基づき、対象画素位置がエッジであるか否か判断する。対象画素位置のエッジフィルタの行列成分の値が0の場合、その画素はエッジではないと判断される。一方、対象画素位置のエッジフィルタの行列成分の値が1の場合、その画素はエッジであると判断される。ステップS125において、対象画素位置がエッジでないと判断された場合はステップS127に進む。一方、対象画素位置がエッジであると判断された場合はステップS126に進む。
【0022】
(ニ)ステップS127においては、第2の差分処理手段19aは、ステップS124で得られた差分値が、第2の閾値Tよりも小さいか否か判定する。第2の閾値Tは、例えば5程度に設定されている。差分値が第2の閾値T以下の画素を一致画素とする。一方、第2の閾値Tより大きい画素を不一致画素とする。差分値が第2の閾値Tよりも小さいと判定された場合、ステップS128に進む。差分値が第2の閾値T以上であると判定された場合、ステップS129に進む。ステップS129においては、図7に示す不一致フィルタ41内の対応するカラムに1が代入される。次に、ステップS130に進む。
【0023】
(ホ)ステップS126においては、第1の差分処理手段18aは、ステップS124で得られた差分値が、第3の閾値T3よりも小さいか否か判定される。第3の閾値T3は、例えば、第2の閾値T2を実数倍(整数倍)することにより算出される。よって、第2の閾値T2の4〜5倍であれば、第3の閾値T3は20〜25程度に設定されることとなる。ステップS124で得られた差分値が第3の閾値T3の値よりも小さいと判定された場合、ステップS128に進む。一方、差分値が第3の閾値T3以上であると判定された場合、ステップS129に進む。ステップS128においては、図7に示す不一致フィルタ41内の対応するカラムに0が代入される。次にステップS130に進む。ステップS130においては、ブロック内を全部走査したか否かの判断が行われる。ブロック内を全部走査したと判断された場合、ステップS131に進む。ブロック内を全部走査していないと判断された場合、ステップS124に処理が戻る。ステップS130でブロック内の画素をすべて走査したと判断された場合は、一致判定処理を終了する。
【0024】
(ヘ)ステップS131においては、1つ前のイテレーションの不一致フィルタ41と、現在のイテレーションの不一致フィルタ41との論理積を取り、それを現在のイテレーションの不一致フィルタ41とする。ステップS131における演算により、相関度の近いもの同士の分割が行えるようになる。ステップS132においては、第1のカウンタiteに1が加算される。ステップS133においては、第1のカウンタiteがnを超えたか否かの判定が行われる。第1のカウンタiteがnを超えない場合は、ステップS122に戻る。ステップS122に処理が戻った場合、第1の小ブロック31aに対して最も相関度の高い第2の小ブロック32aを第2のフレーム22から再帰的に探索する。探索の際には、不一致フィルタ41内で値が0のカラムの位置では相関度演算は行わず、不一致フィルタ内で値が1のカラムの位置で相関度演算を行うようにする。即ち、不一致画素についてのみ再度、相関度演算を行う。このような(ハ)〜(ヘ)の処理を、所望の反復回数nまで、再帰的に行うことによって、第1の動きベクトルグループ(第1の動きベクトル35a[ite m](m=1〜nの整数))及び不一致フィルタグループ(不一致フィルタ41[ite m](m=1〜nの整数))を求める。ステップS133において、動き推定サブルーチンの繰り返し回数がn回を超えたと判断された場合、図4に示すステップS116に進む。
【0025】
(ト)ステップS116においては、図1に示すベクトルスケール変換手段16は、第1の動きベクトルグループを第2のベクトルグループに変換する。具体的には、図9に示すように第1の動きベクトル35aの始点を第1の画像ブロック51と同位置の補間ブロック53に同定し、長さを1/2にして第2の動きベクトル35bを求めることが出来る。これにより、補間フレーム23の時間的な位置を60Hz信号の中央に生成することができる。
【0026】
(チ)次に、図4に示すステップS117において、図1に示す動き補償手段17aは、不一致フィルタグループと第2の動きベクトルグループとを用いて、補間フレーム23を作成する。ステップS117は、具体的には図8に示すような処理を備える。先ず、図8に示すステップS141において第2のカウンタlteが1に設定される。次に、図9に示すように、ステップS143において、第2の動きベクトル35bによって定まる第2のフレーム22上の第2の画像ブロック52を求める。ステップS145においては、第2の動きベクトル35の始点によって定まる補間フレーム23上の補間ブロック53の位置が求められる。ステップS146においては、ブロック内の走査が開始される。ステップS147においては、不一致フィルタ41の値が0であるか否かの判定が行われる。このように、コピーするのは、図7に示すように、画素位置が不一致フィルタ41内で値が0のカラムの位置に対応する画素のみである。ステップS148においては、第2の画像ブロック52の画素が補間フレーム23上にコピーされる。ステップS149においては、ブロック内の全画素を走査したか否かの判断が行われる。ブロック内の全画素を走査したと判断された場合は、ステップS150に進む。一方、ブロック内の全画素を走査していないと判断された場合は、ステップS147に処理が戻る。ステップS150においては、第2のカウンタlteに1が加算される。そして、ステップS151において第2のカウンタlteがnを超えたか否かの判定が行われる。以上の処理を、m=1〜nまで繰り返す。この(ロ)から(チ)の処理を、(イ)で分割した小ブロック全体について行うことで、補間フレーム23を作成する。
【0027】
(リ)動き補償処理が終了すると図4のステップS118に進み、全ブロックを走査したか否かの判断が行われる。全ブロックを走査したと判断された場合は、フレーム補間処理を終了する。一方、未だ全ブロックを走査していないと判断された場合は、ステップS115に処理が戻る。
【0028】
このように、第1の実施の形態によれば、複雑な装置を用いることなく隙間や重なりのできないような補間フレーム23を作成する方法を実現することが出来る。また、ブロック歪みを抑え、エッジ部におけるノイズを除去することが出来るので、画像の高画質化を実現することが出来る。
【0029】
更に、第1の実施の形態においては、補間する時間の間隔を2等分とする一例を示したが、特に2等分に限るわけではない。したがって、n等分してフレーム数がn−1の補間フレーム23を内挿する動き補償を行うことも可能である。このように補間する時間の間隔を短くすることで、更にフレーム間の補間の効率を上げることが出来る。この結果、表示される動画像を、動きが滑らかでより鮮明にすることが出来る。
【0030】
(第2の実施の形態)
本発明の第2の実施の形態に係るフレーム補間システムは、図10に示すように、フレーム情報生成手段71bのエッジ判定手段13bが、一致判定手段15bが出力する第1のエッジ画像ブロック及び第2のエッジ画像ブロックを入力し、エッジ情報を一致判定手段15bに出力する点が図1と異なる。また、ベクトルスケール変換手段16を備えていない点が図1と異なる。その他の構成については、図1と同様である。
【0031】
次に、図10〜図16を用いて、本発明の第2の実施の形態に係るフレーム補間方法について説明する。但し、第1の実施の形態に係るフレーム補間方法と同一の処理については、重複する説明を省略する。
【0032】
(イ)先ず、図11に示すステップ211において、図10に示すエッジ検出手段11bは、図12に示す第1のフレーム21及び第2のフレーム22のエッジを検出し、エッジの強度を画像にした第1のエッジ画像及び第2のエッジ画像をそれぞれ出力する。その後、ステップS400の動き推定処理に進む。ステップS212において、動き推定手段14bは、図12に示すように補間フレーム23を一様格子の小ブロックに分割する。次に、ステップS213において、動き推定手段15bは、補間フレーム23上の小ブロックの走査を開始する。その後、ステップS214に示す動き推定サブルーチンに進む。
【0033】
(ロ)図13に示すステップS221においては、第1のカウンタiteが1に設定される。また、図14に示す不一致フィルタ41のすべてのカラムに1が代入される。ステップS222においては、不一致フィルタ41のカラムの値が1の画素のみを用いて、補間ブロック33を中心として、第1のフレーム21及び第2のフレーム22上を点対象に探索する。そして、図14に示すように、最も相関の高い第1の小ブロック31b及び第2の小ブロック32bを得る。次に、第1の小ブロック31b及び第2の小ブロック32bに基づいて動きベクトル36aを求める。ステップS223においては、第1のエッジ画像から、第1の小ブロック31bの位置に当たるブロックを第1のエッジ画像ブロックとして求める。ステップS224においては、第2のエッジ画像から、第2の小ブロック32bの位置に当たるブロックを第2のエッジ画像ブロックとして求める。次に、ステップS225において、第1のエッジ画像ブロックと第2のエッジ画像ブロックとの平均を求める。ステップS225において平均を求めた後は、ステップS401の一致判定処理に進む。
【0034】
(ハ)一致判定処理においては、ステップS226で、図14に示す第1の小ブロック31bと第2の小ブロック32b内の画素の走査を開始する。次に、ステップS227において、図10に示す第1の差分処理手段18b及び第2の差分処理手段19bは、第1の小ブロック31b中の画素と第2の小ブロック32b中の画素とに差分処理を施し、差分値を求める。次に、ステップS228において、第1のエッジ画像ブロック及び第2のエッジ画像ブロックをエッジ判定手段13bに入力する。エッジ判定手段13bは、第1のエッジ画像ブロック及び第2のエッジ画像ブロック中のエッジの有無をそれぞれ判定する。具体的には、第1の閾値Tを設けて、第1のエッジ画像ブロックと第2のエッジ画像ブロックの画素値の平均を求め、第1の閾値Tより大きな画素をエッジ画素として1を、第1の閾値Tより小さな画素を非エッジ画素として0を出力する。エッジ判定手段13bが出力する1、0のエッジ情報は、一致判定手段15bに入力される。一致判定手段15bは、エッジ判定手段13bが出力するエッジ情報が1の場合、エッジ画素であると判断する。一方、エッジ判定手段13bが出力するエッジ情報が0の場合、非エッジ画素であると判断する。エッジ画素であると判断された場合、ステップS229に進む。非エッジ画素であると判断された場合、ステップS230に進む。
【0035】
(ニ)ステップS230においては、ステップS227で求めた差分値と第2の閾値Tとに基づいて、対象画素の一致及び不一致を判定する。差分値が第2の閾値T以上の場合、ステップS232に進む。差分値が第2の閾値Tよりも小さい場合、ステップS231に進む。また、ステップS229においては、ステップS227で求めた差分値と第3の閾値Tとに基づいて、対象画素の一致及び不一致を判定する。差分値が第3の閾値T以上の場合、ステップS232に進む。差分値が第3の閾値Tよりも小さい場合、ステップS231に進む。ステップS231においては、不一致フィルタ41のカラムに1が格納され、その後ステップS233に進む。ステップS231においては、不一致フィルタ41のカラムに0が格納され、その後ステップS233に進む。ステップS233においては、ブロック内をすべて走査したか否か判定される。
【0036】
(ホ)次に、対象の補間ブロックを再帰的に探索する。探索の際には、不一致フィルタ41の対応するカラムの位置の値が0の位置では相関度演算は行わず、値が1の位置で相関度演算を行うようにする。更に、ステップS234においては、1つ前のイテレーションの不一致フィルタ41と、現在のイテレーションの不一致フィルタ41との論理積を取り、それを現在のイテレーションの不一致フィルタ41とする。ステップS222〜ステップS235の処理を反復回数nまで、再帰的に行うことによって、動きベクトルグループ(動きベクトル36a[ite m](m=1〜nの整数))と不一致フィルタグループ(不一致フィルタ41[ite m](m=1〜nの整数))とを求める。図11のステップS215は、具体的には以下のようになる。
【0037】
(へ)図15に示すステップS241において、第2のカウンタlteが1に設定される。ステップS242においては、動きベクトル36a×(−1)によって定まる第1のフレーム21上の第1の画像ブロック51が求められる。ステップS243においては、動きベクトル36aによって定まる第2のフレーム22上の第2の画像ブロック52が求められる。ステップS244においては、第1の画像ブロック51と第2の画像ブロック52の平均が求められる。ステップS245においては、ブロック内の画素の走査が開始される。ステップS246においては、不一致フィルタ41のカラムの値が0か否か判定される。不一致フィルタ41のカラムの値が0であると判定された場合、ステップS247に進む。一方、不一致フィルタ41のカラムの値が1であると判定された場合、ステップS248に進む。ステップS247においては、平均画像ブロックの画素を補間フレーム23上にコピーする。ステップS248においては、ブロック内の画素をすべて走査したか否か判定される。ブロック内の画素をすべて走査したと判定された場合、ステップS249に進む。ブロック内の画素をすべて走査していないと判定された場合、ステップS246に処理が戻る。ステップS249においては、第2のカウンタlteに1が加算される。ステップS250においては、第2のカウンタlteがnを超えたか否か判定される。第2のカウンタlteがnを超えたと判定された場合、動き補償処理を終了する。一方、第2のカウンタlteがnを超えていないと判定された場合、ステップS242に処理が戻る。
【0038】
(ト)動きベクトル36a[ite m]の終点によって定まる第2の画像ブロック52と、動きベクトル36a[ite m]の終点位置の点対称位置によって定まる第1の画像ブロック51の平均を取り、その平均画像ブロックを、補間フレーム23上にコピーする。実際にコピーするのは、図16のように、画素位置が不一致フィルタ41[ite m]において0の画素のみである。以上の処理を、m=1〜nまで繰り返す。このような処理をブロック全体について行うことで、補間フレーム23を作成する。
【0039】
このように、第2の実施の形態によれば、動きベクトル36aをスケール変換することなく動き補償処理を行うことが出来る。また、ブロック歪みの無い画像が得られ、エッジのノイズが減少する為、画像の高画質化を実現することが出来る。
【0040】
(その他の実施の形態)
上記のように、本発明は第1及び第2の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
【0041】
第1及び第2の実施の形態においては、相関度の尺度として、一致画素数和を用いるとして説明した。しかし、相関度の尺度として、絶対値差分和(Sum of Absolute Difference;SAD)を用いることが出来る。また、第1の実施の形態及び第2の実施の形態においては、ノンインタレース画像にフレーム補間を行う場合の一例を説明した。しかし、インターレス画像にフレーム補間を行う場合においても第1及び第2の実施の形態に係るフレーム補間方法を応用出来ることは言うまでもない。
【0042】
第1及び第2の実施の形態においては、フレームメモリ12a、12bは1つとして説明した。しかし、必ずしも1つに限定されるものではなく、フレームが表示されるまでの処理時間とフレームメモリ12a、12bに蓄積する時間との関係が最適になるようにフレームメモリ12a、12bの個数は調整してかまわない。更に、第1の実施の形態では、時間的に前のフレームから時間的に後のフレームに対する第1の動きベクトル35aを推定する前方動き推定について述べた。しかし、時間的に後のフレームから時間的に前のフレームに対する第1の動きベクトル35aを推定する後方動き推定でも、前方動き推定、後方動き推定におけるより信頼度の高い方を選択する双方向動き推定を用いてもかまわない。或いは、更に動き推定方式選択手段を設けて、入力されるフレーム画像がフレームインしようとしているのか、逆にフレームアウトしようとしているのか等の画像の移動性や移動速度から、"前方動き推定"、"前方動き推定"、"双方向動き推定"のいずれの推定方式を採用し、どれだけの間隔に分割して補間すれば最も最適な画像が得られるかを決定し、それに従って他の手段を制御する。こうすることで、種々の動画像に対して、自動で最適な動き補償をすることができるようになる。
【0043】
このように、本発明はここでは記載していない様々な実施の形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
【0044】
【発明の効果】
本発明によれば、隙間や重なりが発生せず、ブロック歪みを抑え、エッジにノイズの発生しないフレーム補間システム及びフレーム補間方法を提供出来る。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るフレーム補間システムの構成を示すブロック図である。
【図2】本発明の第1の実施の形態に係る一致判定手段の機能を説明する図である。
【図3】本発明の第1の実施の形態に係る一致判定手段の機能を説明する図である。
【図4】本発明の第1の実施の形態に係るフレーム補間方法の全体を示すフローチャート図である。
【図5】本発明の第1の実施の形態に係るフレーム補間方法の原理を示す図である。
【図6】本発明の第1の実施の形態に係る動き推定処理を示すフローチャート図である。
【図7】本発明の第1の実施の形態に係る動き推定処理を説明する図である。
【図8】本発明の第1の実施の形態に係る動き補償処理を示すフローチャート図である。
【図9】本発明の第1の実施の形態に係る動き補償処理を説明する図である。
【図10】本発明の第2の実施の形態に係るフレーム補間システムの構成を示すブロック図である。
【図11】本発明の第2の実施の形態に係るフレーム補間方法の全体のフローチャート図である。
【図12】本発明の第2の実施の形態に係るフレーム補間方法の原理を示す図である。
【図13】本発明の第2の実施の形態に係る動き推定処理のフローチャート図である。
【図14】本発明の第2の実施の形態に係る動き補償処理を説明する図である。
【図15】本発明の第2の実施の形態に係る動き補償処理のフローチャート図である。
【図16】本発明の第2の実施の形態に係る動き補償処理を説明する図である。
【図17】従来のフレーム補間方法を説明する図である。
【図18】従来のフレーム補間方法を説明する図である。
【符号の説明】
1、2…動きベクトルイテレーション
3a、3b…画像ブロック
5a〜5i、6a〜6i…画素
11a、11b…エッジ検出手段
12a、12b…フレームメモリ
13a、13b…エッジ判定手段
15a、15b…一致判定手段
16…ベクトルスケール変換手段
17a、17b…動き補償手段
18a、18b…第1の差分処理手段
19a、19b…第2の差分処理手段
21…第1のフレーム
22…第2のフレーム
23…補間フレーム
31、31a、31b…第1の小ブロック
32、32a、32b…第2の小ブロック
33、53…補間ブロック
35a…第1の動きベクトル
36a…動きベクトル
41…不一致フィルタ
51…第1の画像ブロック
52…第2の画像ブロック
71a、71b…フレーム情報生成手段
200a〜200d…補間フレーム
201a〜201c…フレーム
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a moving image processing technique, and more particularly to a frame interpolation system and a frame interpolation method for interpolating between frames in a moving image signal.
[0002]
[Prior art]
As shown in FIG. 17, the frame interpolation method is a method of interpolating frames 200a and 200b between frames (reference frames) 201a and 201b and an interpolating frame 200c between frames 201b and 201c. This is a method of increasing the number of display frames per time by efficiently interpolating 200d. As a result, it is possible to improve the quality of moving images, particularly compressed images. As a frame interpolation method, a block matching method, which is a basic technique for motion estimation, is fundamental. Here, the block matching method is a method in which the frames 201a, 201b, and 201c are divided into small blocks, and a motion vector is obtained by searching for a block having the highest degree of correlation from the image area of the frame. is there. Interpolated frames 200a, 200b, 200c, 200d,... Are generated based on the motion vector obtained by this block matching method (hereinafter referred to as “first prior art”).
[0003]
Patent Document 1 discloses a method of performing frame interpolation by obtaining a correlation between frames before and after the object block of the interpolation frame in a geometrical contrast (hereinafter referred to as “second prior art”). .) Since this method does not require the processing after obtaining the motion vector as in the first prior art, the interpolation frame 200 can be obtained directly.
[0004]
Patent Document 2 discloses a technique for performing frame interpolation with higher accuracy by further dividing a region in a block while using a block matching method as a base (hereinafter referred to as “third conventional technique”). .)
[0005]
[Patent Document 1]
Japanese Patent No. 2528103
[Patent Document 2]
JP 2000-224593 A
[0006]
[Problems to be solved by the invention]
In the first prior art, when generating an interpolation frame by performing motion compensation, the end point of the motion vector is fixed, and motion compensation is performed on the image data pointed to by the end point. However, since the motion vector is manipulated to perform interpolation, the position of the start point is different from the original position. For this reason, the first prior art has a problem that gaps and overlap occur in the generated interpolation frame as shown in FIG.
[0007]
In the second prior art, since a uniform grid is considered on the interpolation frame, no overlap or gap occurs, but there is a problem that block distortion occurs between the block and another block. The third prior art has a problem that it cannot cope with a plurality of movements of three or more in a block. As described above, the simple block-based method has a problem that block distortion occurs at a block boundary. In order to eliminate block distortion, it is only necessary to divide the inside of the block and repeatedly separate the matching area and the mismatching area, but noise remains at the edge due to sampling and fluctuation of the image.
[0008]
In view of the above problems, an object of the present invention is to provide a frame interpolation system and a frame interpolation method in which no gap or overlap occurs, block distortion is suppressed, and noise is not generated at an edge.
[0009]
[Means for Solving the Problems]
  In order to achieve the above object, a first feature of the present invention is the first frame.Edge information indicating whether or not each of the first pixels is an edge pixelEdge detection means;The initial value has a plurality of elements having a first value, and each element has a mismatch filter storage means for storing mismatch filter data associated with each of the first pixels, and an element of the first value Using only the associated first pixel,FirstAnd the next frame after this first frameSecond frameWithwhileofMotion vectorA motion detection means to be obtained; a first pixel associated with an element having a first value;By motion vectorWith the second pixel on the second frame associated with this first pixelTarget pixelA difference calculating means for obtaining a difference value of a pair of pixel values, and a first pixel of an edge portion on the first frameTarget pixelTwinThresholdButNon-edge partFirstPixelOf the target pixel pairAbove thresholdThe comparison means for comparing the threshold value set based on the edge information with the difference value of the pixel value of the target pixel pair, and the first pixel of the target pixel pair whose pixel value difference value is smaller than the threshold value A mismatch filter update unit that sets a second value different from the first value to the given element, and a control that repeats a series of processes by the motion detection unit, the difference calculation unit, the comparison unit, and the mismatch filter update unit a plurality of times. And a repetitive control means for storing a mismatch filter and a motion vector generated in each processing, and a target pixel pair relating to the first pixel associated with the element having the second value.An interpolated frame between the first frame and the second framePointed by the motion vector abovepositionThe pixel value ofThe gist of the present invention is a frame interpolation system including motion compensation means.
[0010]
  First of the present invention2Features ofHas edge detection means for obtaining a first edge image indicating the edge strength of each pixel of the first frame, and a plurality of elements having an initial value of the first value, and each element includes the first frame and the first frame. A mismatch filter storage means for storing mismatch filter data associated with each of the interpolation pixels of the interpolation frame between the second frame which is the next frame of one frame, and a plurality of divided interpolation frames The block pair of the first block of the first frame and the second block of the second frame is point-symmetric between the first frame and the second frame with respect to each of the interpolation blocks of By searching using only the pixels in the first and second blocks having the same relative coordinates as the relative coordinates in the interpolation block of the interpolation pixel associated with the element of the first value, Second A motion vector detecting means for detecting a motion vector related to the interpolation block between the frame and the interpolation pixel associated with the element of the first value in the interpolation block; A difference calculating means for calculating a difference value of a target pixel pair between a pixel value of a first pixel on one frame and a second pixel on a second frame, and the first pixel is an edge portion using the first edge image. It is determined whether it is a non-edge portion, and if the first pixel is an edge portion, it is determined that the target pixel pair related to the first pixel is an edge portion, and the first pixel is a non-edge portion In this case, the edge determination means for determining that the target pixel pair corresponding to the first pixel is a non-edge portion, and the threshold value of the target pixel pair in the edge portion is higher than the threshold value of the target pixel pair in the non-edge portion. The comparison means for comparing the threshold value set in this way with the difference value of the pixel value of the target pixel pair, and the first value in the element associated with the first pixel of the target pixel pair whose difference value is smaller than the threshold value Inconsistency filter update means for setting different second values, motion detection means, difference calculation means, comparison means, and mismatch filter update means are controlled to repeat a series of processes a plurality of times, and mismatches generated in each process Motion compensation for obtaining a pixel value of an interpolated pixel using a repetitive control means for storing a filter and a motion vector, and a target pixel pair associated with the motion vector related to the interpolated pixel associated with the element having the second value And a frame interpolation system comprising means.
[0011]
  First of the present invention3Features of the first frameEdge information indicating whether or not each of the first pixels is an edge pixelSteps,A plurality of elements having an initial value as a first value, each element storing a mismatch filter data associated with each of the first pixels; and an element of the first value Using only the first pixel,FirstAnd the next frame after this first frameSecond frameWithwhileofMotion vectorObtaining a first pixel associated with an element having a first value;By motion vectorWith the second pixel on the second frame associated with this first pixelTarget pixelA step of obtaining a difference value of a pair of pixel values, and a first pixel of an edge portion on the first frameTarget pixelTwinThresholdButNon-edge partFirstPixelOf the target pixel pairAbove thresholdThe threshold value set based on the edge information is compared with the difference value of the pixel value of the target pixel pair, and the difference value of the pixel value is associated with the first pixel of the target pixel pair smaller than the threshold value. A step of setting a second value different from the first value to the first element, and a series of processes by the motion detection means, the difference calculation means, the comparison means, and the mismatch filter update means are repeated a plurality of times. Stores mismatch filters and motion vectors generated by processingSteps,Using the target pixel pair for the first pixel associated with the element having the second valueAn interpolated frame between the first frame and the second framePointed by the motion vector abovepositionThe pixel value ofAnd a frame interpolation method comprising steps.
[0012]
  First of the present invention4Features ofHas a step of obtaining a first edge image indicating an edge strength of each pixel of the first frame, and a plurality of elements having an initial value of the first value, and each element includes the first frame and the first frame. Storing data of a mismatch filter associated with each of the interpolation pixels of the interpolation frame between the second frame, which is the next frame of the frame, and each of the plurality of interpolation blocks obtained by dividing the interpolation frame With respect to the block pair of the first block of the first frame and the second block of the second frame in a point-symmetric manner between the first frame and the second frame. By using only the pixels in the first and second blocks having the same relative coordinates as the relative coordinates in the interpolation block of the interpolated pixels associated with the element, the first frame and the second frame are searched. Interpolation between Detecting a motion vector associated with the lock, and for an interpolated pixel associated with an element of the first value in the interpolation block, a first pixel on the first frame associated with the interpolated pixel by the motion vector; A step of obtaining a difference value of a target pixel pair with a pixel value of a second pixel on the second frame, and determining whether the first pixel is an edge portion or a non-edge portion using the first edge image When the first pixel is an edge portion, it is determined that the target pixel pair related to the first pixel is an edge portion. When the first pixel is a non-edge portion, the target corresponding to the first pixel is determined. A step of determining that the pixel pair is a non-edge portion, a threshold value set so that a threshold value of the target pixel pair in the edge portion is higher than a threshold value of the target pixel pair in the non-edge portion, and a pixel value of the target pixel pair A step of comparing the difference value, a step of setting a second value different from the first value to an element associated with the first pixel of the target pixel pair whose difference value is smaller than a threshold value, motion detection means, A step of repeating a series of processes by the difference calculation means, the comparison means, and the mismatch filter update means a plurality of times, a step of storing the mismatch filter and motion vector generated by each process, and an element having a second value A step of obtaining a pixel value of an interpolation pixel using a target pixel pair associated with a motion vector relating to the associated interpolation pixel
And a frame interpolation method comprising:
[0013]
DETAILED DESCRIPTION OF THE INVENTION
Next, first and second embodiments of the present invention will be described with reference to the drawings. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals.
[0014]
  (First embodiment)
  As shown in FIG. 1, the frame interpolation system according to the first embodiment of the present invention includes an edge detection unit 11a that receives an image signal, a frame information generation unit 71a that receives the output of the edge detection unit 11a, and a frame information generation unit. A vector scale conversion unit 16 that receives the output of the unit 71a and a motion compensation unit 17a that receives the output of the vector scale conversion unit 16 and outputs an interpolation image are provided. Furthermore, the frame interpolation system according to the first embodiment includes a frame memory 12a that temporarily stores an input image signal. Of the frames constituting the input moving image signal, the current frame is referred to as a “first frame”. The frame that is the next frame after the current frame and is temporarily stored in the frame memory 12a is referred to as a “second frame”. The edge detection unit 11a detects an edge image from the first frame 21 and the second frame 22 shown in FIG. 5 as an image signal. The frame information generation unit 71a generates a motion vector based on the edge image. Then, different difference processing is performed depending on whether the target pixel determined by the motion vector is an edge or not.Filter dataIs generated. The vector scale conversion means 16 converts the scale of the motion vector. The motion compensation means 17a does not match the motion vectorFilter dataBetween the first frame and the second frameofInterpolated frameMotion compensation at the positionTo do.
[0015]
  As shown in FIG. 1, the frame information generation means 71a includes an edge determination means 13a that receives an edge image, a motion estimation means 14a that receives the output of the edge determination means 13a, and a coincidence determination means 15a that receives the output of the motion estimation means 14a. Prepare. The edge determination unit 13a determines whether the target pixel is an edge from the edge image, and outputs edge information. The coincidence determination means 15a does not match based on the motion vectorFilter dataIs generated. The motion estimator 14a uses the grouped motion vectors and mismatch based on the edge information.Filter dataIs output. The coincidence determination unit 15a includes a first difference processing unit 18a that performs a difference process on a target pixel in an edge portion and a second difference processing unit 19a that performs a difference process on a target pixel in a non-edge portion.
[0016]
  The edge detection unit 11a outputs the edge image shown in FIG. 2B based on the frame information as shown in FIG. The boundary portions of the image blocks 3a and 3b shown in FIG. In FIG. 3, the boundary between a pixel having a pixel value of 100, which is the luminance (intensity) of the pixel, and a pixel having a pixel value of 5 is an edge. That is, since the difference is large, it is recognized as an edge by human eyes. Each pixel in the first frame 21 and the second frame 22 has 256-level pixel values from 0 to 255. Further, it is assumed that the first small block 31 and the second small block 32 represent the same image position of the first frame 21 and the second frame 22, respectively. The edge determination means 13a shown in FIG. 1 is an edge image output from the edge detection means 11a.Whether each pixel contained in is an edge or non-edge partDetermine. A first threshold T1 is set in the edge determination means 13a. The first threshold T1 is set to about 30 to 50, for example. A pixel having a pixel value greater than the first threshold T1 is 1 as an edge portion, and a pixel having a pixel value smaller than the first threshold T1 is a non-edge portion and 0 is an edge.Matrix component of the filterTo store. The edge filter isRepresented by a matrix,For example, it is composed of a logical filter having the same size as the first frame.
[0017]
The first difference processing means 18a and the second difference processing means 19a perform difference processing on the target pixels of the first small block 31 and the second small block 32, and determine whether or not the target pixels match. The first difference processing unit 18a and the second difference processing unit 19a determine that the target pixel whose difference value obtained by the difference processing is larger than the threshold value is inconsistent. On the other hand, the target pixel whose difference value is smaller than the threshold value is determined as matching. When noise occurs at the edge in the image due to image quantization, fluctuation, or the like, the pixel value of the pixel at the boundary between the image block 3a and the image block 3b may slightly change. As described above, when noise is generated at the edge in the image, when the difference process between the first small block 31 and the second small block 32 is performed, the coincidence determination unit 15a displays the difference value as shown in FIG. A pixel having a large size is determined to be inconsistent. As a result, noise “worm-eaten” is generated at the edge portion of the interpolation frame 23. In order to cope with such minute pixel fluctuations, the threshold value of the first difference processing unit 18a is set higher than the threshold value of the second difference processing unit 19a.
[0018]
Next, a frame interpolation method according to the first embodiment will be described with reference to FIGS. However, an example of up-converting a 60 Hz non-interlaced image signal to a 120 Hz non-interlaced image signal will be described.
[0019]
  (A) First, in step S111 shown in FIG. 4, the edge detection means 11a shown in FIG. 1 detects the edge of the first frame 21. The detected edge is converted into an edge image having an edge strength as an image. In step S112, the presence or absence of an edge is determined based on the edge image. 1 and 0 edge information indicating the presence or absence of an edge is an edge filter.Matrix components ofAnd input to the motion estimation means 14a. Next, in step S113, as shown in FIG. 5, the motion estimation means 14a divides the first frame 21 into small blocks of a uniform grid.
Thereafter, in step S114, it is assumed that scanning of the small block in the first frame 21 is started and the first small block 31a shown in FIG. 5 is selected. Next, the process proceeds to the motion estimation subroutine of step S115.
[0020]
  (B) In step S121 shown in FIG. 6, the mismatch filter 41 shown in FIG.Matrix components of1 is assigned to all. In step S122, the second small block 32a in the second frame 22 having the highest correlation with the first small block 31a shown in FIG. 5 is searched. As a measure of the degree of correlation, the number of coincident pixels can be used. “Same number of coincidence pixels” means that for the pixels of the first small block 31a and the second small block 32a, a difference process between pixels having the same relative position in the block is performed, and pixels whose difference values are equal to or less than a threshold value are matched pixels. In this method, pixels that are larger than the threshold value are set as unmatched pixels, and the larger the sum of the number of matching pixels is, the higher the correlation is determined. Then, the first motion vector 35a is obtained based on the first small block 31a and the second small block 32a. After obtaining the first motion vector 35a in step S122, the process proceeds to step S301.
[0021]
  (C) In step S123, the coincidence determination unit 15a shown in FIG. 1 starts scanning the pixels in the first small block 31a and the second small block 32a in FIG. Next, in step S124, difference processing is performed on each pixel of the first small block 31a and the second small block 32a. The difference processing in step S124 is performed on pixels having the same relative position in each of the first small block 31a and the second small block 32a. That is, as shown in FIG. 7, the pixel 5a of the first small block 31a is subjected to difference processing with the pixel 6a of the second small block 32a. Similarly, the pixels 5b to 5i are subjected to difference processing with the pixels 6b to 6i, respectively. Next, in step S125, it is determined whether the target pixel position is an edge. The first difference processing means 18a and the second difference processing means 19a shown in FIG.Matrix components ofWhether or not the target pixel position is an edge is determined based on the values of 0 and 1 stored in. Edge filter at target pixel positionMatrix components ofIf the value of is 0, it is determined that the pixel is not an edge. On the other hand, the edge filter at the target pixel positionMatrix components ofIf the value of is 1, the pixel is determined to be an edge. If it is determined in step S125 that the target pixel position is not an edge, the process proceeds to step S127. On the other hand, if it is determined that the target pixel position is an edge, the process proceeds to step S126.
[0022]
(D) In step S127, the second difference processing means 19a determines that the difference value obtained in step S124 is the second threshold T2Or less. Second threshold T2Is set to about 5, for example. The difference value is the second threshold T2The following pixels are designated as matching pixels. On the other hand, the second threshold T2A larger pixel is set as a non-matching pixel. The difference value is the second threshold T2If it is determined that the value is smaller, the process proceeds to step S128. The difference value is the second threshold T2When it determines with it being above, it progresses to step S129. In step S129, 1 is assigned to the corresponding column in the mismatch filter 41 shown in FIG. Next, the process proceeds to step S130.
[0023]
  (E) In step S126, the first difference processing means 18a determines whether or not the difference value obtained in step S124 is smaller than the third threshold T3. The third threshold T3 is calculated, for example, by multiplying the second threshold T2 by a real number (integer multiple). Therefore, if it is 4 to 5 times the second threshold value T2, the third threshold value T3 is set to about 20 to 25. When it is determined that the difference value obtained in step S124 is smaller than the value of the third threshold value T3, the process proceeds to step S128. On the other hand, if it is determined that the difference value is greater than or equal to the third threshold T3, the process proceeds to step S129. In step S128, 0 is assigned to the corresponding column in the mismatch filter 41 shown in FIG. Next, the process proceeds to step S130. In step S130, it is determined whether or not the entire block has been scanned. If it is determined that the entire block has been scanned, the process proceeds to step S131. If it is determined that the entire block has not been scanned, the process returns to step S124.In step S130If it is determined that all the pixels in the block have been scanned, the match determination process ends.
[0024]
  (F) In step S131, the logical product of the mismatch filter 41 of the previous iteration and the mismatch filter 41 of the current iteration is obtained and set as the mismatch filter 41 of the current iteration. By the calculation in step S131, it is possible to divide those having close correlations. In step S132, 1 is added to the first counter it. In step S133, it is determined whether or not the first counter it has exceeded n.If the first counter it does not exceed n, the process returns to step S122. When the process returns to step S122, the second small block 32a having the highest degree of correlation with the first small block 31a is recursively searched from the second frame 22. In the search, the correlation degree calculation is not performed at the column position where the value is 0 in the mismatch filter 41, and the correlation degree calculation is performed at the column position where the value is 1 in the mismatch filter. That is, the correlation degree calculation is performed again only for the mismatched pixels.By performing the processes (c) to (f) recursively up to a desired number of iterations n, the first motion vector group (first motion vector 35a [item m] (m = 1 to m) n integer))) and mismatch filter group (mismatch filter 41 [item m] (m = 1 to n)). If it is determined in step S133 that the number of repetitions of the motion estimation subroutine has exceeded n, the process proceeds to step S116 shown in FIG.
[0025]
(G) In step S116, the vector scale conversion means 16 shown in FIG. 1 converts the first motion vector group into the second vector group. Specifically, as shown in FIG. 9, the start point of the first motion vector 35a is identified as the interpolation block 53 at the same position as the first image block 51, the length is halved, and the second motion vector is set. 35b can be obtained. Thereby, the temporal position of the interpolation frame 23 can be generated at the center of the 60 Hz signal.
[0026]
  (H) Next, in step S117 shown in FIG. 4, the motion compensation means 17a shown in FIG. 1 creates an interpolation frame 23 using the mismatch filter group and the second motion vector group. Step S117 specifically includes processing as shown in FIG. First, the second counter lte is set to 1 in step S141 shown in FIG. Next, as shown in FIG. 9, in step S143, the second image block 52 on the second frame 22 determined by the second motion vector 35b is obtained. In step S145, the position of the interpolation block 53 on the interpolation frame 23 determined by the start point of the second motion vector 35 is obtained. In step S146, scanning within the block is started. In step S147, it is determined whether or not the value of the mismatch filter 41 is zero. Thus, as shown in FIG. 7, only the pixel corresponding to the position of the column whose value is 0 in the mismatching filter 41 is copied. In step S148,Second imageblock52Are copied onto the interpolation frame 23. In step S149, it is determined whether or not all the pixels in the block have been scanned. If it is determined that all the pixels in the block have been scanned, the process proceeds to step S150. On the other hand, if it is determined that all the pixels in the block have not been scanned, the process returns to step S147. In step S150, 1 is added to the second counter lte. In step S151, it is determined whether or not the second counter lte has exceeded n. The above processing is repeated from m = 1 to n. The interpolation frame 23 is created by performing the processing from (B) to (H) for the entire small block divided in (A).
[0027]
(I) When the motion compensation process is completed, the process proceeds to step S118 in FIG. 4 to determine whether or not all blocks have been scanned. If it is determined that all blocks have been scanned, the frame interpolation process is terminated. On the other hand, if it is determined that all the blocks have not been scanned yet, the process returns to step S115.
[0028]
As described above, according to the first embodiment, it is possible to realize a method of creating the interpolation frame 23 that does not allow gaps and overlaps without using a complicated device. In addition, since block distortion can be suppressed and noise at the edge portion can be removed, high image quality can be achieved.
[0029]
Furthermore, in the first embodiment, an example in which the interval of interpolation time is divided into two equal parts has been shown, but it is not particularly limited to two equal parts. Therefore, it is also possible to perform motion compensation by interpolating the interpolation frame 23 in which the number of frames is equal to n and the number of frames is n-1. By shortening the time interval for interpolation in this way, the efficiency of interpolation between frames can be further increased. As a result, the displayed moving image can be made clearer and clearer.
[0030]
(Second Embodiment)
As shown in FIG. 10, in the frame interpolation system according to the second exemplary embodiment of the present invention, the edge determination unit 13b of the frame information generation unit 71b outputs the first edge image block output from the match determination unit 15b and the first edge image block. 2 is different from FIG. 1 in that two edge image blocks are input and edge information is output to the coincidence determination means 15b. Moreover, the point which is not provided with the vector scale conversion means 16 differs from FIG. Other configurations are the same as those in FIG.
[0031]
Next, a frame interpolation method according to the second embodiment of the present invention will be described with reference to FIGS. However, overlapping description of the same processing as that of the frame interpolation method according to the first embodiment is omitted.
[0032]
(A) First, in step 211 shown in FIG. 11, the edge detecting means 11b shown in FIG. 10 detects the edges of the first frame 21 and the second frame 22 shown in FIG. The first edge image and the second edge image are output. Thereafter, the process proceeds to the motion estimation process in step S400. In step S212, the motion estimation means 14b divides the interpolation frame 23 into small blocks of a uniform grid as shown in FIG. Next, in step S213, the motion estimation unit 15b starts scanning a small block on the interpolation frame 23. Thereafter, the process proceeds to a motion estimation subroutine shown in step S214.
[0033]
(B) In step S221 shown in FIG. 13, the first counter ite is set to 1. Further, 1 is assigned to all the columns of the mismatch filter 41 shown in FIG. In step S222, a search is performed on the first frame 21 and the second frame 22 with the interpolation block 33 as a center, using only the pixels whose column value of the mismatch filter 41 is 1. Then, as shown in FIG. 14, the first small block 31b and the second small block 32b having the highest correlation are obtained. Next, a motion vector 36a is obtained based on the first small block 31b and the second small block 32b. In step S223, a block corresponding to the position of the first small block 31b is obtained as a first edge image block from the first edge image. In step S224, a block corresponding to the position of the second small block 32b is obtained as a second edge image block from the second edge image. Next, in step S225, an average of the first edge image block and the second edge image block is obtained. After obtaining the average in step S225, the process proceeds to the match determination process in step S401.
[0034]
(C) In the coincidence determination process, scanning of the pixels in the first small block 31b and the second small block 32b shown in FIG. 14 is started in step S226. Next, in step S227, the first difference processing means 18b and the second difference processing means 19b shown in FIG. 10 make a difference between the pixels in the first small block 31b and the pixels in the second small block 32b. Processing is performed to obtain a difference value. Next, in step S228, the first edge image block and the second edge image block are input to the edge determination unit 13b. The edge determination unit 13b determines whether or not there is an edge in the first edge image block and the second edge image block. Specifically, the first threshold T1To obtain an average of the pixel values of the first edge image block and the second edge image block, and a first threshold value T11 for a larger pixel as an edge pixel, the first threshold T10 is output with a smaller pixel as a non-edge pixel. The 1 and 0 edge information output by the edge determination unit 13b is input to the coincidence determination unit 15b. When the edge information output from the edge determination unit 13b is 1, the coincidence determination unit 15b determines that the pixel is an edge pixel. On the other hand, when the edge information output by the edge determination unit 13b is 0, it is determined that the pixel is a non-edge pixel. If it is determined that the pixel is an edge pixel, the process proceeds to step S229. If it is determined that the pixel is a non-edge pixel, the process proceeds to step S230.
[0035]
(D) In step S230, the difference value obtained in step S227 and the second threshold T2Based on the above, it is determined whether the target pixel matches or does not match. The difference value is the second threshold T2In the above case, the process proceeds to step S232. The difference value is the second threshold T2If smaller, the process proceeds to step S231. In step S229, the difference value obtained in step S227 and the third threshold T3Based on the above, it is determined whether the target pixel matches or does not match. The difference value is the third threshold T3In the above case, the process proceeds to step S232. The difference value is the third threshold T3If smaller, the process proceeds to step S231. In step S231, 1 is stored in the column of the mismatch filter 41, and then the process proceeds to step S233. In step S231, 0 is stored in the column of the mismatch filter 41, and then the process proceeds to step S233. In step S233, it is determined whether the entire block has been scanned.
[0036]
(E) Next, the target interpolation block is recursively searched. In the search, the correlation calculation is not performed at the position where the value of the corresponding column of the mismatch filter 41 is 0, and the correlation calculation is performed at the position where the value is 1. Further, in step S234, the logical product of the mismatch filter 41 of the previous iteration and the mismatch filter 41 of the current iteration is obtained, and this is set as the mismatch filter 41 of the current iteration. By performing the processing of step S222 to step S235 recursively up to the number of iterations n, a motion vector group (motion vector 36a [item m] (m = integer of 1 to n)) and a mismatch filter group (mismatch filter 41 [ ite m] (m = integer from 1 to n)). Step S215 in FIG. 11 is specifically as follows.
[0037]
(F) In step S241 shown in FIG. 15, the second counter lte is set to 1. In step S242, the first image block 51 on the first frame 21 determined by the motion vector 36a × (−1) is obtained. In step S243, the second image block 52 on the second frame 22 determined by the motion vector 36a is obtained. In step S244, the average of the first image block 51 and the second image block 52 is obtained. In step S245, scanning of the pixels in the block is started. In step S246, it is determined whether or not the column value of the mismatch filter 41 is zero. If it is determined that the column value of the mismatch filter 41 is 0, the process proceeds to step S247. On the other hand, when it is determined that the column value of the mismatch filter 41 is 1, the process proceeds to step S248. In step S247, the pixels of the average image block are copied onto the interpolation frame 23. In step S248, it is determined whether all the pixels in the block have been scanned. If it is determined that all the pixels in the block have been scanned, the process proceeds to step S249. If it is determined that all the pixels in the block have not been scanned, the process returns to step S246. In step S249, 1 is added to the second counter lte. In step S250, it is determined whether the second counter lte has exceeded n. If it is determined that the second counter lte has exceeded n, the motion compensation process is terminated. On the other hand, if it is determined that the second counter lte does not exceed n, the process returns to step S242.
[0038]
(G) An average of the second image block 52 determined by the end point of the motion vector 36a [ite m] and the first image block 51 determined by the point symmetry position of the end point position of the motion vector 36a [ite m] The average image block is copied onto the interpolation frame 23. As shown in FIG. 16, only the pixel whose pixel position is 0 in the mismatching filter 41 [item] is actually copied. The above processing is repeated until m = 1 to n. By performing such processing for the entire block, the interpolation frame 23 is created.
[0039]
Thus, according to the second embodiment, motion compensation processing can be performed without scaling the motion vector 36a. Further, since an image without block distortion is obtained and edge noise is reduced, the image quality can be improved.
[0040]
(Other embodiments)
As described above, the present invention has been described according to the first and second embodiments. However, it should not be understood that the description and drawings constituting a part of this disclosure limit the present invention. From this disclosure, various alternative embodiments, examples and operational techniques will be apparent to those skilled in the art.
[0041]
In the first and second embodiments, it has been described that the sum of coincidence pixel numbers is used as a measure of the degree of correlation. However, Sum of Absolute Difference (SAD) can be used as a measure of the degree of correlation. In the first embodiment and the second embodiment, an example in which frame interpolation is performed on a non-interlaced image has been described. However, it goes without saying that the frame interpolation methods according to the first and second embodiments can be applied even when frame interpolation is performed on an interlaced image.
[0042]
In the first and second embodiments, the frame memories 12a and 12b are described as one. However, the number of frame memories 12a and 12b is not limited to one, and the number of frame memories 12a and 12b is adjusted so that the relationship between the processing time until a frame is displayed and the time accumulated in the frame memories 12a and 12b is optimized. It doesn't matter. Furthermore, in the first embodiment, the forward motion estimation for estimating the first motion vector 35a for the temporally subsequent frame from the temporally previous frame has been described. However, in the backward motion estimation in which the first motion vector 35a is estimated from the temporally subsequent frame to the temporally previous frame, the bidirectional motion that selects the more reliable one in the forward motion estimation and the backward motion estimation. An estimation may be used. Alternatively, a motion estimation method selection means is further provided, and from the mobility and moving speed of the image such as whether the input frame image is going to be framed in or vice versa, "forward motion estimation", Use either “forward motion estimation” or “bidirectional motion estimation” to determine how many intervals you want to interpolate to determine the most optimal image, and use other means accordingly. Control. This makes it possible to automatically perform optimal motion compensation for various moving images.
[0043]
Thus, it should be understood that the present invention includes various embodiments and the like not described herein. Therefore, the present invention is limited only by the invention specifying matters in the scope of claims reasonable from this disclosure.
[0044]
【The invention's effect】
According to the present invention, it is possible to provide a frame interpolation system and a frame interpolation method in which gaps and overlaps do not occur, block distortion is suppressed, and noise is not generated at edges.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a frame interpolation system according to a first embodiment of the present invention.
FIG. 2 is a diagram for explaining a function of a coincidence determination unit according to the first embodiment of the present invention.
FIG. 3 is a diagram for explaining a function of a coincidence determination unit according to the first embodiment of the present invention.
FIG. 4 is a flowchart showing the entire frame interpolation method according to the first embodiment of the present invention.
FIG. 5 is a diagram showing the principle of a frame interpolation method according to the first embodiment of the present invention.
FIG. 6 is a flowchart showing motion estimation processing according to the first embodiment of the present invention.
FIG. 7 is a diagram illustrating motion estimation processing according to the first embodiment of the present invention.
FIG. 8 is a flowchart showing motion compensation processing according to the first embodiment of the present invention.
FIG. 9 is a diagram illustrating motion compensation processing according to the first embodiment of the present invention.
FIG. 10 is a block diagram showing a configuration of a frame interpolation system according to a second embodiment of the present invention.
FIG. 11 is an overall flowchart of a frame interpolation method according to a second embodiment of the present invention.
FIG. 12 is a diagram illustrating the principle of a frame interpolation method according to a second embodiment of the present invention.
FIG. 13 is a flowchart of motion estimation processing according to the second embodiment of the present invention.
FIG. 14 is a diagram illustrating motion compensation processing according to the second embodiment of the present invention.
FIG. 15 is a flowchart of motion compensation processing according to the second embodiment of the present invention.
FIG. 16 is a diagram illustrating motion compensation processing according to the second embodiment of the present invention.
FIG. 17 is a diagram illustrating a conventional frame interpolation method.
FIG. 18 is a diagram illustrating a conventional frame interpolation method.
[Explanation of symbols]
1, 2, ... motion vector iteration
3a, 3b ... image blocks
5a-5i, 6a-6i ... Pixel
11a, 11b ... edge detection means
12a, 12b ... Frame memory
13a, 13b ... edge determination means
15a, 15b ... coincidence determining means
16: Vector scale conversion means
17a, 17b ... motion compensation means
18a, 18b ... 1st difference processing means
19a, 19b ... second difference processing means
21 ... 1st frame
22 ... 2nd frame
23 ... Interpolation frame
31, 31a, 31b ... 1st small block
32, 32a, 32b ... 2nd small block
33, 53 ... Interpolation block
35a ... first motion vector
36a ... motion vector
41 ... Mismatch filter
51. First image block
52 ... Second image block
71a, 71b ... Frame information generating means
200a to 200d ... interpolation frame
201a-201c ... Frame

Claims (8)

第1のフレームの第1画素の各々がエッジ部分の画素であるか否かを示すエッジ情報を求めるエッジ検出手段と、
初期値が第1の値である複数の要素を有し、前記各要素は前記第1画素の各々に対応づけられている不一致フィルタのデータを記憶する不一致フィルタ記憶手段と、
前記第1の値の前記要素に対応づけられた前記第1画素のみを用いて、前記第1のフレームと該第1のフレームの次のフレームである第2のフレームとの動きベクトルを求める動き検出手段と、
前記第1の値を有する前記要素に対応づけられた前記第1画素と前記動きベクトルにより当該第1画素に対応付けられた第2のフレーム上の第2画素との対象画素対の画素値の差分値を求める差分計算手段と、
前記第1のフレーム上でエッジ部分の前記第1画素に関する対象画素対の閾値前記非エッジ部分の前記第1画素関する対象画素対の閾値より高くなるように前記エッジ情報に基づいて設定された閾値と、前記対象画素対の前記画素値の差分値とを比較する比較手段と、
前記画素値の差分値が前記閾値より小さい前記対象画素対の前記第1画素に対応づけられた前記要素に前記第1の値とは異なる第2の値を設定する不一致フィルタ更新手段と、
前記動き検出手段、前記差分計算手段、前記比較手段及び前記不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される前記不一致フィルタ及び前記動きベクトルを記憶する繰り返し制御手段と、
第2の値を有する前記要素に対応づけられた前記第1画素に関する前記対象画素対を用いて、前記第1のフレームと前記第2のフレームとの間の補間フレーム上で前記動きベクトルによって指し示される位置の画素値を求める動き補償手段
とを備えることを特徴とするフレーム補間システム。
Edge detection means for obtaining edge information indicating whether or not each of the first pixels of the first frame is a pixel of an edge portion ;
A mismatch filter storage means for storing a plurality of elements whose initial values are first values, each element storing data of a mismatch filter associated with each of the first pixels;
Using only the first pixel associated with the element of the first value, a motion vector between the first frame and a second frame that is the next frame of the first frame is obtained. A desired motion detection means;
The pixel value of the target pixel pair of the first pixel associated with the element having the first value and the second pixel on the second frame associated with the first pixel by the motion vector A difference calculation means for obtaining a difference value;
Set based on the first frame on the said first pixel relates target pixel to said edge information to be higher than the threshold value of the threshold the non-edge portion of the pixel pair for the first pixel of an edge portion Comparing means for comparing a threshold value and a difference value of the pixel values of the target pixel pair;
A mismatch filter update unit that sets a second value different from the first value to the element associated with the first pixel of the target pixel pair whose difference value of the pixel value is smaller than the threshold;
A control that repeats a series of processes by the motion detection unit, the difference calculation unit, the comparison unit, and the mismatch filter update unit a plurality of times, and stores the mismatch filter and the motion vector generated in each process. Control means;
Pointed by the motion vector on the interpolated frame between the first frame and the second frame, using the target pixel pair for the first pixel associated with the element having a second value. A frame interpolation system comprising: motion compensation means for obtaining a pixel value at the indicated position.
第1のフレームの各画素のエッジ強度を示す第1エッジ画像を求めるエッジ検出手段と、  Edge detecting means for obtaining a first edge image indicating the edge intensity of each pixel of the first frame;
初期値が第1の値である複数の要素を有し、前記各要素は前記第1のフレームと前記第1のフレームの次のフレームである第2のフレームとの間にある補間フレームの補間画素の各々に対応づけられている不一致フィルタのデータを記憶する不一致フィルタ記憶手段と、  Interpolating an interpolated frame having a plurality of elements whose initial values are first values, each element being between the first frame and a second frame that is the next frame of the first frame Mismatch filter storage means for storing mismatch filter data associated with each of the pixels;
前記補間フレームを分割した複数の補間ブロックの各々を基準にして、前記第1のフレームと前記第2のフレームとの間で点対称に、前記第1のフレームの第1ブロックと前記第2のフレームの第2ブロックとのブロック対を、前記第1の値の前記要素に対応づけられた前記補間画素の前記補間ブロック内での相対座標と同じ相対座標を持つ前記第1及び第2ブロック内の画素のみを用いて探索することにより、前記第1のフレームと前記第2のフレームとの間の前記補間ブロックに関する動きベクトルを検出する動きベクトル検出手段と、  The first block of the first frame and the second block are symmetrical with respect to each of the plurality of interpolation blocks obtained by dividing the interpolation frame between the first frame and the second frame. In the first and second blocks, the block pair with the second block of the frame has the same relative coordinates as the relative coordinates in the interpolation block of the interpolation pixel associated with the element of the first value. Motion vector detection means for detecting a motion vector related to the interpolation block between the first frame and the second frame by searching using only the pixels of
前記補間ブロック内で前記第1の値の前記要素に対応づけられた前記補間画素に関して、前記動きベクトルによって当該補間画素に対応付けられた前記第1のフレーム上の第1画素と前記第2のフレーム上の第2画素の画素値との対象画素対の差分値を求める差分計算手段と、  With respect to the interpolation pixel associated with the element of the first value in the interpolation block, the first pixel on the first frame and the second pixel associated with the interpolation pixel by the motion vector A difference calculating means for obtaining a difference value of a target pixel pair with a pixel value of a second pixel on the frame;
前記第1エッジ画像を用いて前記第1画素がエッジ部分であるか非エッジ部分であるかを判定して、前記第1画素がエッジ部分である場合には当該第1画素に関する前記対象画素対がエッジ部分であると判定し、前記第1画素が非エッジ部分である場合には当該第1画素に対応する前記対象画素対が非エッジ部分であると判定するエッジ判定手段と、  The first edge image is used to determine whether the first pixel is an edge portion or a non-edge portion, and when the first pixel is an edge portion, the target pixel pair related to the first pixel Edge determination means for determining that the target pixel pair corresponding to the first pixel is a non-edge portion when the first pixel is a non-edge portion,
エッジ部分の前記対象画素対の閾値が非エッジ部分の前記対象画素対の閾値よりも高くなるように設定された閾値と、前記対象画素対の前記画素値の差分値とを比較する比較手段と、  Comparison means for comparing a threshold value set so that a threshold value of the target pixel pair in the edge portion is higher than a threshold value of the target pixel pair in the non-edge portion and a difference value of the pixel value of the target pixel pair; ,
前記差分値が前記閾値より小さい前記対象画素対の前記第1画素に対応づけられた前記要素に前記第1の値とは異なる第2の値を設定する不一致フィルタ更新手段と、  A mismatch filter update unit that sets a second value different from the first value to the element associated with the first pixel of the target pixel pair whose difference value is smaller than the threshold;
前記動き検出手段、前記差分計算手段、前記比較手段及び前記不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される前記不一致フィルタ及び前記動きベクトルを記憶する繰り返し制御手段と、  A control that repeats a series of processes by the motion detection unit, the difference calculation unit, the comparison unit, and the mismatch filter update unit a plurality of times, and stores the mismatch filter and the motion vector generated in each process. Control means;
前記第2の値を有する前記要素に対応づけられた前記補間画素に関する前記動きベクトルによって対応付けられた前記対象画素対を用いて、前記補間画素の画素値を求める動き補償手段  Motion compensation means for obtaining a pixel value of the interpolation pixel using the target pixel pair associated with the motion vector related to the interpolation pixel associated with the element having the second value
とを備えることを特徴とするフレーム補間システム。  A frame interpolation system comprising:
前記エッジ検出手段は、更に第2フレームの各画素のエッジ強度を示す第2エッジ画像を求め、  The edge detection means further obtains a second edge image indicating the edge intensity of each pixel of the second frame,
前記第1エッジ画像上で前記対象画素の前記第1画素に対応する画素の画素値と前記第2エッジ画像上で前記対象画素の前記第2画素に対応する画素の画素値との平均値に基づいて、前記対象画素対がエッジ部分であるか非エッジ部分であるかを判定するエッジ判定手段  An average value of a pixel value of the pixel corresponding to the first pixel of the target pixel on the first edge image and a pixel value of the pixel corresponding to the second pixel of the target pixel on the second edge image. Edge determining means for determining whether the target pixel pair is an edge portion or a non-edge portion based on
を更に備えることを特徴とする請求項2に記載のフレーム補間システム。  The frame interpolation system according to claim 2, further comprising:
前記動きベクトルのスケールを変換して前記補間フレームの動きベクトルを求めるベクトルスケール変換手段を更に備え、
前記動き補償手段は、前記ベクトルスケール変換手段で求められた前記補間フレームの動きベクトルを用いることを特徴とする請求項1〜3のいずれか1項に記載のフレーム補間システム。
A vector scale converting means for converting the scale of the motion vector to obtain a motion vector of the interpolated frame;
The frame interpolation system according to any one of claims 1 to 3, wherein the motion compensation means uses a motion vector of the interpolation frame obtained by the vector scale conversion means.
第1のフレームの第1画素の各々がエッジ部分の画素であるか否かを示すエッジ情報を求めるステップと、
初期値が第1の値である複数の要素を有し、前記各要素は前記第1画素の各々に対応づけられている不一致フィルタのデータを記憶するステップと、
前記第1の値の前記要素に対応づけられた前記第1画素のみを用いて、前記第1のフレームと該第1のフレームの次のフレームである第2のフレームとの動きベクトルを求めるステップと、
前記第1の値を有する前記要素に対応づけられた前記第1画素と前記動きベクトルにより当該第1画素に対応付けられた第2のフレーム上の第2画素との対象画素対の画素値の差分値を求めるステップと、
前記第1のフレーム上でエッジ部分の前記第1画素に関する対象画素対の閾値前記非エッジ部分の前記第1画素関する対象画素対の閾値より高くなるように前記エッジ情報に基づいて設定された閾値と、前記対象画素対の前記画素値の差分値とを比較するステップと、
前記画素値の差分値が前記閾値より小さい前記対象画素対の前記第1画素に対応づけられた前記要素に前記第1の値とは異なる第2の値を設定するステップと、
前記動き検出手段、前記差分計算手段、前記比較手段及び前記不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される前記不一致フィルタ及び前記動きベクトルを記憶するステップと、
第2の値を有する前記要素に対応づけられた前記第1画素に関する前記対象画素対を用いて、前記第1のフレームと前記第2のフレームとの間の補間フレーム上で前記動きベクトルによって指し示される位置の画素値を求めるステップ
とを備えることを特徴とするフレーム補間方法。
Obtaining edge information indicating whether each of the first pixels of the first frame is a pixel of an edge portion ;
Storing a plurality of elements whose initial values are first values, each element storing data of a mismatch filter associated with each of the first pixels;
Using only the first pixel associated with the element of the first value, a motion vector between the first frame and a second frame that is the next frame of the first frame is obtained. Seeking steps,
The pixel value of the target pixel pair of the first pixel associated with the element having the first value and the second pixel on the second frame associated with the first pixel by the motion vector Obtaining a difference value;
Set based on the first frame on the said first pixel relates target pixel to said edge information to be higher than the threshold value of the threshold the non-edge portion of the pixel pair for the first pixel of an edge portion Comparing a threshold value and a difference value of the pixel values of the target pixel pair;
Setting a second value different from the first value to the element associated with the first pixel of the target pixel pair whose difference value of the pixel value is smaller than the threshold;
A step of performing a control of repeating a series of processes by the motion detection unit, the difference calculation unit, the comparison unit, and the mismatch filter update unit a plurality of times, and storing the mismatch filter and the motion vector generated in each process. When,
Pointed by the motion vector on the interpolated frame between the first frame and the second frame, using the target pixel pair for the first pixel associated with the element having a second value. Obtaining a pixel value at the indicated position. A frame interpolation method comprising:
第1のフレームの各画素のエッジ強度を示す第1エッジ画像を求めるステップと、  Obtaining a first edge image indicating the edge strength of each pixel of the first frame;
初期値が第1の値である複数の要素を有し、前記各要素は前記第1のフレームと前記第  A plurality of elements having an initial value of a first value, wherein each element includes the first frame and the first value; 1のフレームの次のフレームである第2のフレームとの間にある補間フレームの補間画素の各々に対応づけられている不一致フィルタのデータを記憶するステップと、Storing mismatch filter data associated with each of the interpolated pixels of the interpolated frame between the second frame which is the next frame of the one frame;
前記補間フレームを分割した複数の補間ブロックの各々を基準にして、前記第1のフレームと前記第2のフレームとの間で点対称に、前記第1のフレームの第1ブロックと前記第2のフレームの第2ブロックとのブロック対を、前記第1の値の前記要素に対応づけられた前記補間画素の前記補間ブロック内での相対座標と同じ相対座標を持つ前記第1及び第2ブロック内の画素のみを用いて探索することにより、前記第1のフレームと前記第2のフレームとの間の前記補間ブロックに関する動きベクトルを検出するステップと、  The first block of the first frame and the second block are symmetrical with respect to each of the plurality of interpolation blocks obtained by dividing the interpolation frame between the first frame and the second frame. In the first and second blocks, the block pair with the second block of the frame has the same relative coordinates as the relative coordinates in the interpolation block of the interpolation pixel associated with the element of the first value. Detecting a motion vector for the interpolated block between the first frame and the second frame by searching using only the pixels of
前記補間ブロック内で前記第1の値の前記要素に対応づけられた前記補間画素に関して、前記動きベクトルによって当該補間画素に対応付けられた前記第1のフレーム上の第1画素と前記第2のフレーム上の第2画素の画素値との対象画素対の差分値を求めるステップと、  With respect to the interpolation pixel associated with the element of the first value in the interpolation block, the first pixel on the first frame and the second pixel associated with the interpolation pixel by the motion vector Obtaining a difference value of a target pixel pair from a pixel value of a second pixel on the frame;
前記第1エッジ画像を用いて前記第1画素がエッジ部分であるか非エッジ部分であるかを判定して、前記第1画素がエッジ部分である場合には当該第1画素に関する前記対象画素対がエッジ部分であると判定し、前記第1画素が非エッジ部分である場合には当該第1画素に対応する前記対象画素対が非エッジ部分であると判定するステップと、  The first edge image is used to determine whether the first pixel is an edge portion or a non-edge portion, and when the first pixel is an edge portion, the target pixel pair related to the first pixel Determining that the target pixel pair corresponding to the first pixel is a non-edge portion when the first pixel is a non-edge portion;
エッジ部分の前記対象画素対の閾値が非エッジ部分の前記対象画素対の閾値よりも高くなるように設定された閾値と、前記対象画素対の前記画素値の差分値とを比較するステップと、  Comparing a threshold value set so that a threshold value of the target pixel pair in the edge portion is higher than a threshold value of the target pixel pair in the non-edge portion, and a difference value of the pixel value of the target pixel pair;
前記差分値が前記閾値より小さい前記対象画素対の前記第1画素に対応づけられた前記要素に前記第1の値とは異なる第2の値を設定するステップと、  Setting a second value different from the first value to the element associated with the first pixel of the target pixel pair whose difference value is smaller than the threshold;
前記動き検出手段、前記差分計算手段、前記比較手段及び前記不一致フィルタ更新手段による一連の処理を複数回繰り返す制御を行うとともに、各回の処理で生成される前記不一致フィルタ及び前記動きベクトルを記憶するステップと、  A step of performing a control of repeating a series of processes by the motion detection unit, the difference calculation unit, the comparison unit, and the mismatch filter update unit a plurality of times, and storing the mismatch filter and the motion vector generated in each process. When,
前記第2の値を有する前記要素に対応づけられた前記補間画素に関する前記動きベクトルによって対応付けられた前記対象画素対を用いて、前記補間画素の画素値を求めるステップ  Obtaining a pixel value of the interpolated pixel using the target pixel pair associated with the motion vector associated with the interpolated pixel associated with the element having the second value.
とを備えることを特徴とするフレーム補間方法。  A frame interpolation method comprising:
第2フレームの各画素のエッジ強度を示す第2エッジ画像を求めるステップと、  Obtaining a second edge image indicating the edge strength of each pixel of the second frame;
前記第1エッジ画像上で前記対象画素の前記第1画素に対応する画素の画素値と前記第2エッジ画像上で前記対象画素の前記第2画素に対応する画素の画素値との平均値に基づいて、前記対象画素対がエッジ部分であるか非エッジ部分であるかを判定するステップ  An average value of a pixel value of the pixel corresponding to the first pixel of the target pixel on the first edge image and a pixel value of the pixel corresponding to the second pixel of the target pixel on the second edge image. And determining whether the target pixel pair is an edge portion or a non-edge portion based on
を更に備えることを特徴とする請求項6に記載のフレーム補間方法。  The frame interpolation method according to claim 6, further comprising:
前記動きベクトルのスケールを変換して前記補間フレームの動きベクトルを求めるステップを更に備え、
前記補間画素の画素値を求めるステップでは、前記前記補間フレームの動きベクトルを用いることを特徴とする請求項5〜7のいずれか1項に記載のフレーム補間方法。
Converting the motion vector scale to obtain a motion vector of the interpolated frame;
The frame interpolation method according to any one of claims 5 to 7 , wherein a step of obtaining a pixel value of the interpolation pixel uses a motion vector of the interpolation frame.
JP2002270643A 2002-09-17 2002-09-17 Frame interpolation system and frame interpolation method Expired - Lifetime JP3910510B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002270643A JP3910510B2 (en) 2002-09-17 2002-09-17 Frame interpolation system and frame interpolation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002270643A JP3910510B2 (en) 2002-09-17 2002-09-17 Frame interpolation system and frame interpolation method

Publications (2)

Publication Number Publication Date
JP2004112229A JP2004112229A (en) 2004-04-08
JP3910510B2 true JP3910510B2 (en) 2007-04-25

Family

ID=32268210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002270643A Expired - Lifetime JP3910510B2 (en) 2002-09-17 2002-09-17 Frame interpolation system and frame interpolation method

Country Status (1)

Country Link
JP (1) JP3910510B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005109899A1 (en) * 2004-05-04 2005-11-17 Qualcomm Incorporated Method and apparatus for motion compensated frame rate up conversion
CN101010964B (en) 2004-07-01 2012-01-04 高通股份有限公司 Method and apparatus for using frame rate up conversion techniques in scalable video coding
MX2007000810A (en) 2004-07-20 2007-04-02 Qualcomm Inc Method and apparatus for encoder assisted-frame rate up conversion (ea-fruc) for video compression.
US8553776B2 (en) 2004-07-21 2013-10-08 QUALCOMM Inorporated Method and apparatus for motion vector assignment
US8472524B2 (en) 2006-04-03 2013-06-25 Intel Corporation Motion compensated frame rate conversion with protection against compensation artifacts
US8750387B2 (en) 2006-04-04 2014-06-10 Qualcomm Incorporated Adaptive encoder-assisted frame rate up conversion
US8634463B2 (en) 2006-04-04 2014-01-21 Qualcomm Incorporated Apparatus and method of enhanced frame interpolation in video compression
JP5100495B2 (en) 2008-05-09 2012-12-19 株式会社東芝 Image processing device

Also Published As

Publication number Publication date
JP2004112229A (en) 2004-04-08

Similar Documents

Publication Publication Date Title
US11809975B2 (en) System and method for end-to-end-differentiable joint image refinement and perception
JP4080951B2 (en) Frame interpolation method and apparatus, and image display system
JP4666706B2 (en) Moving image real-time conversion method, key frame selection method, and moving image conversion system
Giachetti Matching techniques to compute image motion
US6628715B1 (en) Method and apparatus for estimating optical flow
US7403234B2 (en) Method for detecting bisection pattern in deinterlacing
US20020093587A1 (en) Image processing apparatus and method, program, and recording medium
JPH08307820A (en) System and method for generating high image quality still picture from interlaced video
JPH0884321A (en) Video data processing method
US9014490B2 (en) Method to measure local image similarity and its application in image processing
JP2000032465A (en) Nonlinear adaptive image filter eliminating noise such as blocking artifact or the like
KR20030029933A (en) Methods of and units for motion or depth estimation and image processing apparatus provided with such motion estimation unit
JP3910510B2 (en) Frame interpolation system and frame interpolation method
CN113269086A (en) Vilog editing method and system
JPH06326971A (en) Method and equipment for animation evaluation
JPH11203483A (en) Image processor, its method and providing medium
JP4550398B2 (en) Method for representing movement of objects appearing in a sequence of images, method for identifying selection of objects in images in a sequence of images, method for searching a sequence of images by processing signals corresponding to the images, and apparatus
JP4463171B2 (en) Autocorrelation value calculation method, interpolation pixel generation method, apparatus thereof, and program thereof
JP5309097B2 (en) Motion estimation apparatus and program
JP4378801B2 (en) Image processing method and image processing apparatus
JP4161440B2 (en) Motion vector estimation method and motion vector estimation apparatus
JP3408141B2 (en) Camera parameter estimation method using order statistics and its program recording medium
KR100318065B1 (en) Method for generating a corrected motion video output in an interlaced frame
GB2407886A (en) Signal enhancement by finding an optimal mapping.
JP3524261B2 (en) Image processing device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061218

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: 20070116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070124

R151 Written notification of patent or utility model registration

Ref document number: 3910510

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20100202

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110202

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120202

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120202

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130202

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140202

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

Free format text: JAPANESE INTERMEDIATE CODE: R313121

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term