JP2013157667A - 補間フレーム生成装置、方法及びプログラム - Google Patents
補間フレーム生成装置、方法及びプログラム Download PDFInfo
- Publication number
- JP2013157667A JP2013157667A JP2012014413A JP2012014413A JP2013157667A JP 2013157667 A JP2013157667 A JP 2013157667A JP 2012014413 A JP2012014413 A JP 2012014413A JP 2012014413 A JP2012014413 A JP 2012014413A JP 2013157667 A JP2013157667 A JP 2013157667A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- motion vector
- frame
- vector
- candidate
- 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.)
- Pending
Links
Images
Landscapes
- Television Systems (AREA)
Abstract
【課題】前景物体による隠蔽が生じるオクルージョン領域を正確に補間し、画像の乱れのない補間フレーム(Im)を生成すること。
【解決手段】オクルージョン領域内に位置する各画素について、オクルージョン領域外に位置する画素についての動きベクトルを候補ベクトルとして抽出し(54)、抽出された候補ベクトルに対応する、互いに異なるフレーム上の画素の画素値間の差分に基づき、該候補ベクトルが、背景画素についての動きベクトルか否かを判定し、背景画素についての動きベクトルと判定された候補ベクトルを出力する(55)。
【選択図】図1
【解決手段】オクルージョン領域内に位置する各画素について、オクルージョン領域外に位置する画素についての動きベクトルを候補ベクトルとして抽出し(54)、抽出された候補ベクトルに対応する、互いに異なるフレーム上の画素の画素値間の差分に基づき、該候補ベクトルが、背景画素についての動きベクトルか否かを判定し、背景画素についての動きベクトルと判定された候補ベクトルを出力する(55)。
【選択図】図1
Description
本発明は、映像信号に含まれる複数のフレームの画像を用いて、着目フレーム(以下、第1のフレームと呼ぶ)と、それよりも過去のフレーム(以下、第2のフレームと呼ぶ)の間に、新たに補間フレームを生成する装置及び方法に関するものである。本発明はまた、上記の方法をコンピュータに実行させるためのプログラムに関する。
液晶テレビなどのホールド型の画像表示装置は、1フレーム期間同じ画像を表示し続けており、動きがぼやけて見える問題がある。これに対し、フレーム間に、新たに生成した補間フレームを内挿し、表示フレーム数を増やすことで動きがぼやけて見えることを軽減する技術がある。また、解像度の低い複数のフレームから解像度の高いフレームを生成し、より高精細な映像を提供する技術がある。
これらを行うには、フレーム間の画素対応、すなわち、フレーム間における物体の動きを求める必要がある。フレーム間の動きを求める方法として、フレームを所定の大きさに分割し、ブロックごとの動きベクトルを求めるブロックマッチング法が一般的である。
ブロックマッチング法は、一方のフレームを所定の大きさのブロックに分割し、各ブロックについて他方のフレーム上で同じ大きさのブロックを移動させながら、それぞれのフレームのブロック間で、対応する画素の画素値の差分の絶対値の総和を求め、該総和が最小となる位置関係から動きベクトルを求めるものである。
ブロックマッチング法などで求めたフレーム間の動きを用いて補間フレームを生成するには、フレーム間の動きを補間フレーム上に再配置することが必要となる。この際に、前景物体の移動によって隠されていた背景が出現する領域(以下、オクルージョン領域と呼ぶ)には、フレーム間の動きが再配置されないという問題が生じる。
そこで、上記の動きが再配置されない領域の各画素の動きを、周辺の非オクルージョン領域の画素に再配置された動きから推定する必要がある。オクルージョン領域内の処理対象画素の動きを、周辺の非オクルージョン領域の各画素と処理対象画素の画素値の差分を重み係数とし、該各画素の動きの重み付き平均で推定する方法が提案されている(例えば特許文献1)。また、オクルージョン領域内の処理対象画素の動きを、周辺の非オクルージョン領域の各画素から2種類の動きを抽出し、上記の2種類の動きを処理対象画素の位置に平行移動し、移動した動きに対応する前後フレーム上の画素に再配置された動きの関係から推定する方法が提案されている(例えば特許文献2)。
しかし、特許文献1の従来技術では、処理対象画素との画素値の差分では局所的なノイズや同じ領域内での画素値の差に影響され正確な動きの推定はできない場合があるという課題があった。また、特許文献2などの従来技術では、補間フレームを挟む前後のフレームについて双方向での動き推定や全体の動きからの背景の動きの事前推定の必要があることに加え、事前に全体的な背景の動きを推定したとしてもオクルージョン領域周辺の局所的な背景の動きと異なることにより動き推定精度が低下するなどの課題があった。
本発明は、オクルージョン領域の動きの推定にあたり、ノイズや局所的なパターンの変化や動きの変化に影響されない正確な動き推定による補間フレーム生成装置及び方法を提供する。
本発明の補間フレーム生成装置は、
動画を構成する一連のフレームについて、着目する第1のフレームと前記第1のフレームよりも時間的に前の第2のフレームとの間に補間フレームを生成する補間フレーム生成装置において、
前記第1のフレームと第2のフレームの間の動きベクトルを推定する動き推定部と、
前記動き推定部で推定された動きベクトルを前記補間フレーム上に再配置し、前記補間フレーム上の各画素について動きベクトルが再配置されたか否かを示す情報と、再配置された動きベクトルを示す情報を、再配置情報として出力する動きベクトル再配置部と、
前記補間フレーム上の画素のうち、前記再配置情報により動きベクトルが再配置されたことが示されている画素をオクルージョン領域外に位置する画素と判定し、前記再配置情報により動きベクトルが再配置されなかったことが示されている画素をオクルージョン領域内に位置する画素と判定し、前記オクルージョン領域外に位置する画素についての動きベクトルに基づいて、前記オクルージョン領域内に位置する画素についての動きベクトルを補間により生成するオクルージョン領域補正部と、
前記オクルージョン領域補正部により生成された前記オクルージョン領域内の画素についての動きベクトルと、前記再配置部により生成された前記オクルージョン領域外の画素についての動きベクトルを用いて、補間フレーム上の各画素の画素値を求めることで補間フレームの画像を生成する補間フレーム生成部とを備え、
前記オクルージョン領域補正部は、
前記補間フレーム上のオクルージョン領域内に位置する各画素について、オクルージョン領域外に位置する画素についての動きベクトルを候補ベクトルとして抽出する動きベクトル候補抽出部と、
前記動きベクトル候補抽出部により抽出された候補ベクトルに対応する、互いに異なるフレーム上の画素の画素値間の差分に基づき、該候補ベクトルが、背景画素についての動きベクトルか否かを判定し、前記背景画素についての動きベクトルと判定された候補ベクトルを出力する動きベクトル選別部と
を有することを特徴とする。
動画を構成する一連のフレームについて、着目する第1のフレームと前記第1のフレームよりも時間的に前の第2のフレームとの間に補間フレームを生成する補間フレーム生成装置において、
前記第1のフレームと第2のフレームの間の動きベクトルを推定する動き推定部と、
前記動き推定部で推定された動きベクトルを前記補間フレーム上に再配置し、前記補間フレーム上の各画素について動きベクトルが再配置されたか否かを示す情報と、再配置された動きベクトルを示す情報を、再配置情報として出力する動きベクトル再配置部と、
前記補間フレーム上の画素のうち、前記再配置情報により動きベクトルが再配置されたことが示されている画素をオクルージョン領域外に位置する画素と判定し、前記再配置情報により動きベクトルが再配置されなかったことが示されている画素をオクルージョン領域内に位置する画素と判定し、前記オクルージョン領域外に位置する画素についての動きベクトルに基づいて、前記オクルージョン領域内に位置する画素についての動きベクトルを補間により生成するオクルージョン領域補正部と、
前記オクルージョン領域補正部により生成された前記オクルージョン領域内の画素についての動きベクトルと、前記再配置部により生成された前記オクルージョン領域外の画素についての動きベクトルを用いて、補間フレーム上の各画素の画素値を求めることで補間フレームの画像を生成する補間フレーム生成部とを備え、
前記オクルージョン領域補正部は、
前記補間フレーム上のオクルージョン領域内に位置する各画素について、オクルージョン領域外に位置する画素についての動きベクトルを候補ベクトルとして抽出する動きベクトル候補抽出部と、
前記動きベクトル候補抽出部により抽出された候補ベクトルに対応する、互いに異なるフレーム上の画素の画素値間の差分に基づき、該候補ベクトルが、背景画素についての動きベクトルか否かを判定し、前記背景画素についての動きベクトルと判定された候補ベクトルを出力する動きベクトル選別部と
を有することを特徴とする。
なお、本発明は、上記の装置を用いて実施される方法としても成立し、該方法をコンピュータに実行させるプログラムとしても成立し、該プログラムを記録したコンピュータで読み取り可能な記録媒体としても成立する。
本発明によれば、候補ベクトル選別部においてオクルージョン領域の各画素の動きベクトルを、周辺の非オクルージョン領域から適切な候補ベクトルを選別した上で推定することで、補間フレームのオクルージョン領域における画像の乱れを抑制することが可能となる。
実施の形態1.
以下、本発明の実施の形態1を説明する。
図1は、実施の形態1の補間フレーム生成装置のブロック図である。図示の補間フレーム生成装置は、映像入力端子10と、フレームバッファ20と、動き推定部30と、動きベクトル再配置部40と、オクルージョン領域補正部50と、補間フレーム生成部60と、補間フレーム出力端子70とを備える。
以下、本発明の実施の形態1を説明する。
図1は、実施の形態1の補間フレーム生成装置のブロック図である。図示の補間フレーム生成装置は、映像入力端子10と、フレームバッファ20と、動き推定部30と、動きベクトル再配置部40と、オクルージョン領域補正部50と、補間フレーム生成部60と、補間フレーム出力端子70とを備える。
外部から映像入力端子10に映像信号(動画)を構成する一連のフレームの画像データが順次入力され、フレームバッファ20に蓄積され、1フレーム期間後、及びNフレーム期間(Nは2以上の整数)後に読み出される。映像入力端子10に入力される画像データを第1のフレームの画像データI1と言い、1フレーム期間後、及びNフレーム期間後にフレームバッファ20から読み出される画像データをそれぞれ第2のフレームの画像データI2、第3のフレームの画像データI3と言う。なお、上記のNは例えば2である。
以下では、「画像データ」を単に「画像」と言い、各フレームの画像を単に「フレーム」と言うことがある。
また、各フレームの画像の位置(x,y)における画素値をI1(x,y)、I2(x,y)、I3(x,y)で表す。x及びyは、画像の水平方向位置及び垂直方向位置を示す座標値である。
以下では、「画像データ」を単に「画像」と言い、各フレームの画像を単に「フレーム」と言うことがある。
また、各フレームの画像の位置(x,y)における画素値をI1(x,y)、I2(x,y)、I3(x,y)で表す。x及びyは、画像の水平方向位置及び垂直方向位置を示す座標値である。
動き推定部30は、映像入力端子10より第1のフレームの画像I1、フレームバッファ20より第2のフレームI2の画像を受け、
第2のフレームI2上の各画素について、第1及び第2のフレームI1、I2間の動きベクトルV2を推定し、出力する。
第2のフレームI2上の各画素について、第1及び第2のフレームI1、I2間の動きベクトルV2を推定し、出力する。
動きベクトル再配置部40は、動き推定部30より第2のフレームI2上の画像の各画素についての動きベクトルV2を受け、補間フレームImに動きベクトルを再配置し、再配置された動きベクトルを示す情報を生成する。
この再配置は、第1及び第2のフレームI1、I2間における補間フレームImの時間的位置(第1及び第2のフレームI1、I2との時間間隔)に応じて行われる。
この再配置は、第1及び第2のフレームI1、I2間における補間フレームImの時間的位置(第1及び第2のフレームI1、I2との時間間隔)に応じて行われる。
後述のように、補間フレームIm上のすべての画素について動きベクトルが再配置されるわけではなく、動きベクトル再配置部40は、各画素について動きベクトルが再配置されたか否かを示す情報をも生成し、該情報と再配置された動きベクトルとを、再配置情報DVaとして出力する。
再配置により定められた補間フレームIm上の各画素の動きベクトルを符号Va(x,y)で示す。
再配置により定められた補間フレームIm上の各画素の動きベクトルを符号Va(x,y)で示す。
オクルージョン領域補正部50は、動きベクトル再配置部40から、再配置情報DVaを受け、映像入力端子10から第1のフレームI1の画像を受け、フレームバッファ20から第2及び第3のフレームI2、I3の画像を受け、補間フレームIm上の画素のうち、動きベクトルが再配置されていない画素をオクルージョン領域内と画素と判断し、動きベクトルが再配置されている画素をオクルージョン領域外(非オクルージョン領域内)の画素と判断し、オクルージョン領域外の画素についての動きベクトルと、第1、第2及び第3のフレームI1、I2、I3の画素の画素値とに基づいて、オクルージョン領域内の画素についての動きベクトルを補間により生成する。
オクルージョン領域補正部50で生成される、オクルージョン領域内の画素についての動きベクトルを符号Vb(x,y)で示す。
オクルージョン領域補正部50で生成される、オクルージョン領域内の画素についての動きベクトルを符号Vb(x,y)で示す。
オクルージョン領域補正部50は、オクルージョン領域内の画素については、補間により生成した動きベクトルVb(x,y)を、補正後の動きベクトルVd(x,y)として出力し、オクルージョン領域外の画素については、オクルージョン領域補正部50に入力された再配置情報DVaに含まれる、動きベクトルVa(x,y)を、そのまま補正後の動きベクトルVd(x、y)として出力する。
なお、ここで言う「補正」は、補間フレームImの全ての画素についての動きベクトルの集合に対する補正であって、この補正により、オクルージョン領域内の画素については、補間により動きベクトルVb(x,y)が生成されるが、オクルージョン領域外の画素についての動きベクトルVa(x,y)には変更が加えられない。
補正後のオクルージョン領域外の画素についての動きベクトルVd(x,y)=Va(x,y)とオクルージョン領域内の画素についての動きベクトルVd(x,y)=Vb(x,y)は、所定の順序で出力される。
補間フレーム生成部60は、オクルージョン領域補正部50から補正後の動きベクトルVd(x,y)を受け、映像入力端子10から第1のフレームの画像I1を受け、フレームバッファ20から第2のフレームの画像I2を受け、これらに基づいて補間フレームIm上の各画素の画素値を決定することで、補間フレーム上の画像Imを生成し、補間フレーム出力端子70より出力する。
なお、動き推定部30は、第1及び第2のフレームI1、I2に加えて、フレームバッファ20から他の(時間的に異なる)1枚以上のフレームの入力を受け、これを動き推定に用いることとしても良い。
同様に、オクルージョン領域補正部50は、第1、第2及び第3のフレームI1、I2、I3に加えて、フレームバッファ20より他の(時間的に異なる)1枚以上のフレームの入力を受けて、これらをオクルージョン領域における動きベクトルの補間に用いることとしても良く、補間フレーム生成部60は、第1及び第2のフレームI1、I2に加えて、フレームバッファ20より他の(時間的に異なる)1枚以上のフレームの入力を受けて、これらを補間フレームImの生成に用いることとしても良い。
同様に、オクルージョン領域補正部50は、第1、第2及び第3のフレームI1、I2、I3に加えて、フレームバッファ20より他の(時間的に異なる)1枚以上のフレームの入力を受けて、これらをオクルージョン領域における動きベクトルの補間に用いることとしても良く、補間フレーム生成部60は、第1及び第2のフレームI1、I2に加えて、フレームバッファ20より他の(時間的に異なる)1枚以上のフレームの入力を受けて、これらを補間フレームImの生成に用いることとしても良い。
以下、簡単のため、動き推定部30及び補間フレーム生成部60への入力が第1及び第2のフレームI1、I2から成り、オクルージョン領域補正部50への入力が第1、第2及び第3のフレームI1、I2、I3から成るものとして説明する。
図2はオクルージョン領域補正部50の構成例を示すブロック図である。
図示のオクルージョン領域補正部50は、動きベクトル入力端子51と、フレーム画像入力端子52a、52bと、オクルージョン領域検出部53と、動きベクトル候補抽出部54と、候補ベクトル選別部55と、動きベクトル決定部56と、動きベクトル組合せ部57と、動きベクトル出力端子58とを有する。
図示のオクルージョン領域補正部50は、動きベクトル入力端子51と、フレーム画像入力端子52a、52bと、オクルージョン領域検出部53と、動きベクトル候補抽出部54と、候補ベクトル選別部55と、動きベクトル決定部56と、動きベクトル組合せ部57と、動きベクトル出力端子58とを有する。
動きベクトル再配置部40から出力される再配置情報DVaは、動きベクトル入力端子21を介して、オクルージョン領域検出部53、動きベクトル候補抽出部54及び動きベクトル組合せ部57に供給される。
映像入力端子10に入力される第1のフレームI1の画像は、フレーム画像入力端子52aを介して候補ベクトル選別部55に入力され、フレームバッファ20から読み出される、第2及び第3のフレームI2、I3の画像は、フレーム画像入力端子52bを介して候補ベクトル選別部55に入力される。
映像入力端子10に入力される第1のフレームI1の画像は、フレーム画像入力端子52aを介して候補ベクトル選別部55に入力され、フレームバッファ20から読み出される、第2及び第3のフレームI2、I3の画像は、フレーム画像入力端子52bを介して候補ベクトル選別部55に入力される。
オクルージョン領域検出部53は、動きベクトル入力端子21より再配置情報DVaを受け、補間フレームImの画像中のそれぞれの画素についての、上記の再配置情報DVaを基にオクルージョン領域を検出し、補間フレームIm上の各画素がオクルージョン領域に属するか否かを示す情報Dpcを出力する。
動きベクトル候補抽出部54は、動きベクトル入力端子21から、再配置情報DVaを受けるとともに、オクルージョン領域検出部53から、補間フレームIm上の各画素がオクルージョン領域に属するか否かを示す情報Dpcを受け、再配置情報DVaに含まれるオクルージョン領域外の画素についての動きベクトルVaの中から、オクルージョン領域内の各画素についての動きベクトルの補間のための動きベクトルの候補(候補ベクトル)Vcとして抽出する。
候補ベクトル選別部55は、候補ベクトルVcから所定の条件を満たすもののみを選別して出力する。候補ベクトル選別部55は、フレーム入力端子52aを介して、第1のフレームI1の画像を受け、フレーム入力端子52bを介して、第2及び第3のフレームI2、I3の画像を受け、動きベクトル候補抽出部54から、オクルージョン領域内の各画素についての候補ベクトルVcを受け、オクルージョン領域内の各画素についての候補ベクトルVcの各々が所定の条件を満たすか否かの判定を行い、該所定の条件を満たすもののみを選別して出力する。
動きベクトル決定部56は、候補ベクトル選別部55から出力される、オクルージョン領域内の各画素についての1又は2以上の動きベクトルの中から1つを選択して、当該画素についての動きベクトルVb(x,y)として出力する。この処理は、オクルージョン領域外の画素について動きベクトルVaに基づくオクルージョン領域内の画素についての動きベクトルVbの補間とも言える。
動きベクトル決定部56から出力される、オクルージョン領域内の画素についての動きベクトルVb(x,y)は、オクルージョン領域補正部50に入力された再配置情報DVaに含まれる、オクルージョン領域外の画素について動きベクトルVa(x,y)とともに、動きベクトル組合せ部57に供給される。
動きベクトル組合せ部57は、オクルージョン領域内の画素について、補間により求められた動きベクトルVb(x,y)と、オクルージョン領域外の画素についての動きベクトルVa(x,y)とを組合せて補正後の動きベクトルVd(x,y)を出力する。
この処理は、以下の式で表される。即ち、オクルージョン領域内の画素について
Vd(x,y)=Vb〔x,y〕
オクルージョン領域外の画素については、
Vd(x,y)=Va(x,y)
組合せにおいて、動きベクトルVa(x,y)、Vb(x、y)は所定の順に並べ替えられる。
補正後の動きベクトルVd(x,y)は、オクルージョン領域補正部50の出力として補間フレーム生成部60に供給される。
この処理は、以下の式で表される。即ち、オクルージョン領域内の画素について
Vd(x,y)=Vb〔x,y〕
オクルージョン領域外の画素については、
Vd(x,y)=Va(x,y)
組合せにおいて、動きベクトルVa(x,y)、Vb(x、y)は所定の順に並べ替えられる。
補正後の動きベクトルVd(x,y)は、オクルージョン領域補正部50の出力として補間フレーム生成部60に供給される。
オクルージョン領域補正部50のオクルージョン領域検出部53、動きベクトル候補抽出部54、候補ベクトル選別部55、及び動きベクトル決定部56による処理は、一般には、対応する画素のラスタ順に、例えば、画面上に行列を成すように配置された画素を上の行から下方へ、各行においては左の画素から右方へという順で行われる。動き推定部30、動きベクトル再配置部40、補間フレーム生成部56の処理も同様の順序で行われる。また、オクルージョン領域補正部50からの、補間フレームIm上のそれぞれの画素についての動きベクトルVd(x,y)の出力も、上記の順で行われる。
以下で本発明の実施の形態1の各部の処理をより詳細に説明する。
動き推定部30における動きベクトルを求める手法について、ここでは一般的な第1及び第2のフレームI1、I2を入力とするブロックマッチング法について説明する。
動き推定部30における動きベクトルを求める手法について、ここでは一般的な第1及び第2のフレームI1、I2を入力とするブロックマッチング法について説明する。
ブロックマッチング法は、一方のフレームを所定の大きさの複数のブロックに分割し、ブロックごとの動きベクトルを求めるものである。ここでは第2のフレームI2を複数のブロックに分割するものとして説明する。分割されたブロックの各々(以下着目ブロックと呼ぶ)の動きを求めるに当たり、第1のフレームI1上に着目ブロックと同じ大きさで同じ形状のブロック(以下、参照ブロックと呼ぶ)を配置し、着目ブロックと参照ブロックのパターンの類似度を求める。類似度の定義は様々であるが、2つのブロックの対応する画素間の画素値(例えば輝度を表す画素値)の差分の絶対値の総和(以下、SADと呼ぶ)を、所定の値を基準に極性を反転したもの(、例えば該所定の値から上記SADを減算した値)を用いることが一般的である。極性を反転させるのは、値が大きいほど高い類似度を示すものとするためである。
着目ブロックに対して、参照ブロックの位置を変えながら各位置での類似度を求め、最も類似度が高い位置(類似度の最も高い参照ブロックの、着目ブロックに対する相対位置)を着目ブロックの動きベクトルとして求める。
参照ブロックの位置を、画像全体を網羅するように移動させれば、最も正確に動きベクトルを求めることができるが、画像のすべての位置に対して類似度を算出するには、膨大な演算が必要であるため、着目ブロックを中心とする一定の範囲で移動させるのが一般的である。
この処理を第2のフレームI2のすべてのブロックに対して繰り返すことで、第2のフレームI2上の各ブロックについての動きベクトル(ブロック単位の動きベクトル)を求めることができる。
参照ブロックの位置を、画像全体を網羅するように移動させれば、最も正確に動きベクトルを求めることができるが、画像のすべての位置に対して類似度を算出するには、膨大な演算が必要であるため、着目ブロックを中心とする一定の範囲で移動させるのが一般的である。
この処理を第2のフレームI2のすべてのブロックに対して繰り返すことで、第2のフレームI2上の各ブロックについての動きベクトル(ブロック単位の動きベクトル)を求めることができる。
動き推定部30では次に、各ブロックの動きベクトルから、各画素についての動きベクトル(画素単位の動きベクトル)を求める。この処理を動きベクトルの細密化とも言う。
この場合、各ブロックの動きベクトルを当該ブロック内のすべての画素の動きベクトルとして用いても良く、各画素について、当該画素が属するブロックのみならず、当該ブロックの周辺に位置するブロックについての動きベクトルに基づいて、上記各画素についての動きベクトルを求めることとしても良く、さらに前後のフレームの画素値を参照して、上記各画素についての動きベクトルを求めることとしても良い。
この場合、各ブロックの動きベクトルを当該ブロック内のすべての画素の動きベクトルとして用いても良く、各画素について、当該画素が属するブロックのみならず、当該ブロックの周辺に位置するブロックについての動きベクトルに基づいて、上記各画素についての動きベクトルを求めることとしても良く、さらに前後のフレームの画素値を参照して、上記各画素についての動きベクトルを求めることとしても良い。
なお、ブロック単位の動きベクトルを求める手法も、上記のブロックマッチング法に限定されるものではなく、他の手法でも良い。
また、画素単位の動きベクトルをブロック単位の動きベクトルから細密化により求めるのではなく、直接推定する手法を用いても良い。この場合、例えば、第2のフレームI2上の各画素(着目画素)を中心とする所定の大きさの領域(着目領域)と、第1のフレームI1上の同じ形状、同じ大きさの領域(参照領域)とのマッチングを行って、類似度が高い参照領域の着目領域に対する相対位置を上記着目画素についての動きベクトルとして推定する。
また、画素単位の動きベクトルをブロック単位の動きベクトルから細密化により求めるのではなく、直接推定する手法を用いても良い。この場合、例えば、第2のフレームI2上の各画素(着目画素)を中心とする所定の大きさの領域(着目領域)と、第1のフレームI1上の同じ形状、同じ大きさの領域(参照領域)とのマッチングを行って、類似度が高い参照領域の着目領域に対する相対位置を上記着目画素についての動きベクトルとして推定する。
動きベクトル再配置部40は、動きベクトル推定部30から、第2のフレームI2上の各画素についての動きベクトルV2を受け、補間フレームIm上の動きベクトルを求める。
この処理は、第2のフレームI2上の動きベクトルを補間フレームIm上に移動(平行移動)させる処理であるので、再配置と呼ばれる。
簡単のため、補間フレームImは第1のフレームI1及び第2のフレームI2の時間的に中間の位置にあり、動き推定部30は、上記のように、第2のフレーム上の各画素について、第2のフレームI2から第1のフレームI1への動きベクトルを求めるものであるものとする。
この処理は、第2のフレームI2上の動きベクトルを補間フレームIm上に移動(平行移動)させる処理であるので、再配置と呼ばれる。
簡単のため、補間フレームImは第1のフレームI1及び第2のフレームI2の時間的に中間の位置にあり、動き推定部30は、上記のように、第2のフレーム上の各画素について、第2のフレームI2から第1のフレームI1への動きベクトルを求めるものであるものとする。
この場合、第2のフレームI2上の各画素の動きベクトルV2は、式(1)に示すように第2のフレームI2上の各画素の動きベクトルを、動きベクトルの半分の値だけ平行移動することで補間フレームImの位置へ再配置される。
式(1)において、Va(a,b)は補間フレームIm上の位置(a,b)の動きベクトル、
V2(a,b)は第2のフレームI2上の(a,b)の動きベクトル、
V2x(a,b)は第2のフレームI2上の位置(a,b)の動きベクトルV2(a,b)のx成分、
V2y(a,b)は第2のフレームI2上の位置(a,b)の動きベクトルV2(a,b)のy成分を表す。
V2(a,b)は第2のフレームI2上の(a,b)の動きベクトル、
V2x(a,b)は第2のフレームI2上の位置(a,b)の動きベクトルV2(a,b)のx成分、
V2y(a,b)は第2のフレームI2上の位置(a,b)の動きベクトルV2(a,b)のy成分を表す。
以下、動きベクトルの再配置について図3を参照して説明する。図3では、簡単のため画素の配列を1次元としている。
例えば、図3の第2のフレームI2上の画素P21については動き推定部30において第1のフレームI1上の画素P11への動きベクトルV2(P21)が推定されている。この動きベクトルV2(P21)を、その値の半分だけ、即ち動きベクトルV2(P21)と同じ方向に、その絶対値の半分の距離だけ平行移動させ、補間フレームIm上の画素Pm1に再配置する。この再配置により、補間フレームIm上の画素Pm1についての動きベクトルの値Va(Pm1)が
Va(Pm1)=V2(P21)
と推定される。
例えば、図3の第2のフレームI2上の画素P21については動き推定部30において第1のフレームI1上の画素P11への動きベクトルV2(P21)が推定されている。この動きベクトルV2(P21)を、その値の半分だけ、即ち動きベクトルV2(P21)と同じ方向に、その絶対値の半分の距離だけ平行移動させ、補間フレームIm上の画素Pm1に再配置する。この再配置により、補間フレームIm上の画素Pm1についての動きベクトルの値Va(Pm1)が
Va(Pm1)=V2(P21)
と推定される。
なお、第2のフレームI2上の2つ以上の動きベクトルが補間フレームIm上の同一の画素に再配置された場合は、上記2つ以上の動きベクトルの一つを選択し、選択された動きベクトルを再配置後の動きベクトルとして用いる。例えば、動き推定部30で動きベクトルV2を推定した際の類似度などに基づいて上記の選択を行う。例えば類似度の高い方(SADが小さい方)の動きベクトルを選択する。
以上のように、動きベクトル再配置部40による再配置は、第2のフレームI2と第1のフレームI1の間の動きベクトルを、該動きベクトルに沿う直線と補間フレームImとの交点における動きベクトル(補間フレームIm上の動きベクトル)として用いる処理であると言える。
動きベクトル再配置部40は、補間フレームIm上の各画素について上記のような再配置により動きベクトルが再配置された(割り当てられた)か否かを判定し、判定結果を示す情報と、動きベクトルが再配置された画素については、再配置された動きベクトルVa(x,y)を示す情報を生成し、これらを再配置情報DVaとして出力する。
動きベクトル再配置部40から出力される再配置情報DVaは、オクルージョン領域補正部50に供給される。
オクルージョン領域補正部50は、先にも述べたように、動きベクトル再配置部40から出力される再配置情報DVaに基づいて、オクルージョン領域内の画素についての動きベクトルVb(x,y)を補間により生成する。
以下、オクルージョン領域補正部50の動作について図3を用いて説明する。
図3において、第2のフレームI2上に、右へ移動している前景物体FG2と左に動いている背景画素P21、P22b、P23b、P24bが示してある。これらのうち、背景画素P22b、P23b、P24bは、前景物体FG2により隠蔽されており(覆われており)、その値は既知ではない。即ち、該値を示すデータは第2のフレームI2の画像を示すデータに含まれていない。前景物体FG2の左端に位置する画素(前景画素)P25が、背景画素P22bと重ねて示してあり、前景画素P25の値は既知である。背景画素P23b、P24bに重なる前景画素も存在するが、それらの図示は省略されている。
図3において、第2のフレームI2上に、右へ移動している前景物体FG2と左に動いている背景画素P21、P22b、P23b、P24bが示してある。これらのうち、背景画素P22b、P23b、P24bは、前景物体FG2により隠蔽されており(覆われており)、その値は既知ではない。即ち、該値を示すデータは第2のフレームI2の画像を示すデータに含まれていない。前景物体FG2の左端に位置する画素(前景画素)P25が、背景画素P22bと重ねて示してあり、前景画素P25の値は既知である。背景画素P23b、P24bに重なる前景画素も存在するが、それらの図示は省略されている。
第2のフレームI2上の背景画素P21、P22b、P23b、P24bは、第1のフレームI1上では、符号P11、P12、P13、P14で示す位置へ移動しており、第2のフレームI2上の前景物体FG2は、第1のフレームI1上では符号FG1で示す位置へ移動し、前景物体FG2の左端の画素P25は、第1のフレームI1上では符号P15で示す位置へ移動している。
第2のフレームI2上の画素P21、P22b、P23b、P24b、P25は、補間フレームIm上では、それぞれの中間の位置、即ち符号Pm1、Pm2、Pm3、Pm4、及びPm5で示す位置に移動している。
第2のフレームI2上で前景物体FG2により隠蔽されていた画素F22b、F23b、F24bに対応する(これらの画素の動き先に位置する)、補間フレームIm上の画素Fm2b、Fm3b、Fm4bによってオクルージョン領域OCAが形成される。
第2のフレームI2上で前景物体FG2により隠蔽されていた画素F22b、F23b、F24bに対応する(これらの画素の動き先に位置する)、補間フレームIm上の画素Fm2b、Fm3b、Fm4bによってオクルージョン領域OCAが形成される。
動きベクトル再配置部40によって、補間フレームIm上の画素、例えば、背景画素Pm1及び前景物体FGm上の各画素には動きベクトルが再配置されている。
例えば、画素P21の動きベクトル(画素P11に向かうもの)V2(P21)が画素Pm1に再配置されて、補間フレームIm上の再配置された動きベクトルVa(Pm1)となっており、画素P25の動きベクトル(画素P15に向かうもの)V2(P25)が画素Pm5に再配置されて、補間フレームIm上の再配置された動きベクトルVa(Pm5)となっている。
例えば、画素P21の動きベクトル(画素P11に向かうもの)V2(P21)が画素Pm1に再配置されて、補間フレームIm上の再配置された動きベクトルVa(Pm1)となっており、画素P25の動きベクトル(画素P15に向かうもの)V2(P25)が画素Pm5に再配置されて、補間フレームIm上の再配置された動きベクトルVa(Pm5)となっている。
一方、第2のフレームI2上の背景画素P22b、P23b、P24bは前景物体FG2によって隠蔽されているため、動き推定部30において動き推定がされておらず、その結果、これらの背景画素P22b、P23b、P24bに対応する補間フレームIm上の画素Pm2、Pm3、Pm4には動きベクトルが再配置されていない。
このようにオクルージョン領域OCAでは、動きベクトル再配置部40による動きベクトルの再配置処理後も動きベクトルが存在しない(再配置されていない)状態となる。
このことを利用し、オクルージョン領域検出部53は、動きベクトル再配置部40による動きベクトルの再配置処理を受けた後の画像において、動きベクトルが存在しない(再配置されていない)ことが再配置情報DVaにより示されている画素を、オクルージョン領域OCAを構成する画素として検出する。
このことを利用し、オクルージョン領域検出部53は、動きベクトル再配置部40による動きベクトルの再配置処理を受けた後の画像において、動きベクトルが存在しない(再配置されていない)ことが再配置情報DVaにより示されている画素を、オクルージョン領域OCAを構成する画素として検出する。
動きベクトル候補抽出部54は、オクルージョン領域検出部53が検出したオクルージョン領域の画素についての動きベクトルの補間のための候補となる動きベクトル(候補ベクトル)を、周辺の非オクルージョン領域(オクルージョン領域の外部)に位置する画素について動きベクトルから抽出する。
例えば、図3のオクルージョン領域OCAの画素Pm2、Pm3、Pm4の各々について、動きベクトル候補抽出部54は、オクルージョン領域外に位置し、かつこれらの画素に可能な限り近い画素、例えば背景画素Pm1及び前景物体FGm上の画素Pm5の2つの画素に再配置されている動きベクトルVa(Pm1)、Va(Pm5)をそれぞれ候補ベクトルVcとして抽出する。より詳しく言えば、上記2つの画素に再配置されている動きベクトルVa(Pm1)、Va(Pm5)を、画素Pm2のための第1及び第2の候補ベクトルVc(Pm2)1、Vc(Pm2)2として抽出するとともに、画素Pm3のための第1及び第2の候補ベクトルVc(Pm3)1、Vc(Pm3)2として抽出するとともに、画素Pm4のための第1及び第2の候補ベクトルVc(Pm4)1、Vc(Pm4)2として抽出する。
2次元に拡張して考えると、図4に示すように、補間フレームIm上のオクルージョン領域OCA内に位置する補間対象画素の各々PE0を着目画素として、該着目画素PE0について、該オクルージョン領域OCAの外部(非オクルージョン領域内)に位置し、着目画素PE0にできるだけ近い画素、例えば、オクルージョン領域OCA内の着目画素PE0に対し、垂直方向位置(y座標)が同じで且つ着目画素PE0に最も近い左右の画素PE1及びPE2、並びに水平方向位置(x座標)が同じで且つ着目画素PE0に最も近い上下の画素PE3及びPE4についての動きベクトルVa(PE1)、Va(PE2)、Va(PE3)、Va(PE4)を着目画素PE0のための候補ベクトルVc(PE0)1、Vc(PE0)2、Vc(PE0)3、Vc(PE0)4として抽出する。
画素PE1(第1の画素)は、オクルージョン領域内の着目画素PE0と垂直方向位置が同じで、該着目画素よりも左側に位置する画素のうち、該着目画素に最も近い画素であり、画素PE2(第2の画素)は、オクルージョン領域内の着目画素PE0と垂直方向位置が同じで、該着目画素よりも右側に位置する画素のうち、該着目画素に最も近い画素であり、画素PE3(第3の画素)は、オクルージョン領域内の着目画素PE0と水平方向位置が同じで、該着目画素よりも上側に位置する画素のうち、該着目画素に最も近い画素であり、画素PE4(第4の画素)は、オクルージョン領域内の着目画素PE0と水平方向位置が同じで、該着目画素よりも下側に位置する画素のうち、該着目画素に最も近い画素である。
なお、上記の4つの画素のすべてを抽出することは必須ではなく、1つ以上の画素より動きベクトルを抽出すれば良く、1つも抽出できない場合は、事前に決定しておいた所定のベクトルを候補としても良い。ここで、所定のベクトルは例えばゼロベクトル(動きがないことを示す)ものであっても良い。
また、動きベクトルを抽出する画素は、上記のように、オクルージョン領域OCAの外部に位置して、水平方向位置又は垂直方向位置が同じであり、かつ着目画素に最も近い画素、例えば上記の4つの画素に限定されるものではなく、上記外部に位置して着目画素に最も近い画素、例えば上記の4つの画素の各々の周辺の画素を含めても良い。この点については、実施の形態2に関して後述する。
仮に着目画素を中心に所定の距離内の画素のうち非オクルージョン領域の画素を候補とする場合には、オクルージョン領域が広い場合に、上記の所定の距離内に非オクルージョン領域に属する画素がないことがあるが、上記のように、上下左右方向に位置する非オクルージョン領域の画素を参照することにより、オクルージョン領域が広い場合にも確実に非オクルージョン領域の画素の動きベクトルを抽出することができる。
次に、候補ベクトル選別部55の処理を図5及び図6を参照して説明する。
図5は、図3と同様の図であるが、第3のフレームI3が示されている。図示の例では、第3のフレームI3と第2のフレームI2の時間的間隔は第1のフレームI1と第2のフレームI2の時間的間隔と同じとしている。
オクルージョン領域OCAには3つの画素Pm2、Pm3、Pm4が含まれ、オクルージョン領域OCAに隣接する非オクルージョン領域の画素Pm1、Pm5についての動きベクトルVa(Pm1)、Va(Pm5)が、オクルージョン領域OCA内の画素の候補ベクトルVc(Pm2)1、Vc(Pm2)2、Vc(Pm3)1、Vc(Pm3)2、Vc(Pm4)1、Vc(Pm4)2として、動きベクトル候補抽出部54により抽出されているものとする。
図5は、図3と同様の図であるが、第3のフレームI3が示されている。図示の例では、第3のフレームI3と第2のフレームI2の時間的間隔は第1のフレームI1と第2のフレームI2の時間的間隔と同じとしている。
オクルージョン領域OCAには3つの画素Pm2、Pm3、Pm4が含まれ、オクルージョン領域OCAに隣接する非オクルージョン領域の画素Pm1、Pm5についての動きベクトルVa(Pm1)、Va(Pm5)が、オクルージョン領域OCA内の画素の候補ベクトルVc(Pm2)1、Vc(Pm2)2、Vc(Pm3)1、Vc(Pm3)2、Vc(Pm4)1、Vc(Pm4)2として、動きベクトル候補抽出部54により抽出されているものとする。
図6は、候補ベクトル選別部55における処理の手順を示す。
候補ベクトル選別部55は、補間フレームIm上の補間対象画素(即ち、動きベクトルが再配置されていない画素、言い換えるとオクルージョン領域内に位置する画素)Piを順に選択し(ステップS101)、選択した補間対象画素についての1又は2以上の候補ベクトルVc(Pi)j(j=1、2、…)の一つを選択する(ステップS102)。
選択された候補ベクトルについての処理が開始されるとまず、ステップS103において、選択した候補ベクトルVc(Pi)j(図5に示す例では、候補ベクトルVc(Pi)1=Va(Pm1)、Vc(Pi)2=Va(Pm5)のいずれか)に沿う直線と第3及び第2のフレームI3、I2の交点に位置する第3及び第2フレーム上の画素の画素値の差分絶対値DF32(x,y)を下記の式(2)により求める。
候補ベクトル選別部55は、補間フレームIm上の補間対象画素(即ち、動きベクトルが再配置されていない画素、言い換えるとオクルージョン領域内に位置する画素)Piを順に選択し(ステップS101)、選択した補間対象画素についての1又は2以上の候補ベクトルVc(Pi)j(j=1、2、…)の一つを選択する(ステップS102)。
選択された候補ベクトルについての処理が開始されるとまず、ステップS103において、選択した候補ベクトルVc(Pi)j(図5に示す例では、候補ベクトルVc(Pi)1=Va(Pm1)、Vc(Pi)2=Va(Pm5)のいずれか)に沿う直線と第3及び第2のフレームI3、I2の交点に位置する第3及び第2フレーム上の画素の画素値の差分絶対値DF32(x,y)を下記の式(2)により求める。
I2(a,b)は第2のフレームI2上の位置(a,b)の画素の画素値、
I3(a,b)は第3のフレームI3上の位置(a,b)の画素の画素値、
Vax(a,b)、Vay(a,b)はそれぞれ補間フレームIm上の位置(a,b)に再配置された動きベクトルVa(a,b)のx成分とy成分である。
例えば、選択した候補ベクトルVcが図5における補間フレームIm上の画素Pm1についての動きベクトルVa(Pm1)であるときは、
DF32(Pm1)=|I(P31)−I(P21)|
が得られる。選択した候補ベクトルVcが補間フレームIm上の画素Pm5についての動きベクトルVa(Pm5)であるときは、
DF32(Pm5)=|I(P35)−I(P25)|
が得られる。ただし、I(p)は画素pの画素値を表す。
DF32(Pm1)=|I(P31)−I(P21)|
が得られる。選択した候補ベクトルVcが補間フレームIm上の画素Pm5についての動きベクトルVa(Pm5)であるときは、
DF32(Pm5)=|I(P35)−I(P25)|
が得られる。ただし、I(p)は画素pの画素値を表す。
ステップS104では、選択した候補ベクトルVc(Pi)j(図5に示す例では、候補ベクトルVc(Pi)1=Va(Pm1)、Vc(Pi)2=Va(Pm5)のいずれか)に沿う直線と第2及び第1のフレームI2、I1の交点に位置する第2及び第1のフレームI2、I1上の画素の画素値の差分絶対値DF21を下記の式(3)により求める。
I2(a,b)は第2のフレームI2上の位置(a,b)の画素の画素値、
I1(a,b)は第1のフレームI1上の位置(a,b)の画素の画素値、
Vax(a,b)、Vay(a,b)はそれぞれ補間フレームIm上の位置(a,b)に再配置された動きベクトルVa(a,b)のx成分とy成分である。
例えば、選択した候補ベクトルVcが図5における補間フレームIm上の画素Pm1についての動きベクトルVa(Pm1)であるときは、
DF21(Pm1)=|I(P21)−I(P11)|
が得られる。選択した候補ベクトルVcが補間フレームIm上の画素Pm5についての動きベクトルVa(Pm5)であるときは、
DF21(Pm5)=|I(P25)−I(P15)|
が得られる。ただし、I(p)は画素pの画素値を表す。
DF21(Pm1)=|I(P21)−I(P11)|
が得られる。選択した候補ベクトルVcが補間フレームIm上の画素Pm5についての動きベクトルVa(Pm5)であるときは、
DF21(Pm5)=|I(P25)−I(P15)|
が得られる。ただし、I(p)は画素pの画素値を表す。
式(2)及び式(3)では第1、第2及び第3のフレームI1、I2、I3上の単一の画素の画素値の差分を用いているが、各画素の周辺(例えば、各画素を中心とする所定の大きさの矩形領域)の画素値の差分の絶対値の総和を上記の差分DF32、DF21の代わりに求めても良い。
オクルージョン領域OCAに隣接する非オクルージョン領域にある背景画素(非オクルージョン領域内に位置し、オクルージョン領域との境界付近にある背景画素)は第2のフレームI2よりさらに過去の第3のフレームI3では前景物体に隠蔽されている可能性が高い。このため、第2のフレームI2上の画素値と第3のフレームI3上の画素値は大きく異なっていることが多い。すなわち、差分DF32が大きい場合には、対応する候補ベクトルが背景画素についての動きベクトルである(当該候補ベクトルに沿う直線と、それぞれのフレームとの交点に位置する画素が背景画素である)と推定することができる。
そこで、ステップS105において、オクルージョン領域に隣接する非オクルージョン領域の画素Pm1、Pm5の各々について求めた差分DF32(例えばDF32(Pm1)、DF32(Pm5))と、差分DF21(例えばDF21(DF21(Pm1)、DF21(Pm5))に所定の閾値THREを加えたものを比較する。差分DF32の方が大きければ、即ち
DF32>DF21+THRE) (4)
が満たされれば、対応する候補ベクトル(当該差分DF32、DF21を求める際に用いられた画素を通過する直線に沿う候補ベクトル)が背景画素についての動きベクトルであると判断して、判断結果を記憶(登録)する(S106)。
そうでなければ、即ち
DF32≦DF21+THRE) (5)
が満たされれば、対応する候補ベクトル(当該差分DF32、DF21を求める際に用いられた画素を通過する直線に沿う候補ベクトル)が前景画素についての動きベクトルであると判断して、判断結果を記憶する(S107)。
DF32>DF21+THRE) (4)
が満たされれば、対応する候補ベクトル(当該差分DF32、DF21を求める際に用いられた画素を通過する直線に沿う候補ベクトル)が背景画素についての動きベクトルであると判断して、判断結果を記憶(登録)する(S106)。
そうでなければ、即ち
DF32≦DF21+THRE) (5)
が満たされれば、対応する候補ベクトル(当該差分DF32、DF21を求める際に用いられた画素を通過する直線に沿う候補ベクトル)が前景画素についての動きベクトルであると判断して、判断結果を記憶する(S107)。
例えば、選択した候補ベクトルVcが画素Pm1についての動きベクトルVa(Pm1)であるときは、
DF32(Pm1)>DF21(Pm1)+THRE
となり、当該候補ベクトルVcは背景画素についての動きベクトルであると判断される(S106)。また、選択した候補ベクトルVcが画素Pm5についての動きベクトルVa(Pm5)であるときは、
DF32(Pm5)≦DF21(Pm5)+THRE
となり、当該候補ベクトルVcは前景画素についての動きベクトルであると判断される(S107)。
DF32(Pm1)>DF21(Pm1)+THRE
となり、当該候補ベクトルVcは背景画素についての動きベクトルであると判断される(S106)。また、選択した候補ベクトルVcが画素Pm5についての動きベクトルVa(Pm5)であるときは、
DF32(Pm5)≦DF21(Pm5)+THRE
となり、当該候補ベクトルVcは前景画素についての動きベクトルであると判断される(S107)。
ステップS106又はステップS107の次に、ステップS108において、選択されている補間対象画素についての1又は2以上の候補ベクトルVc(Pi)j(j=1、2、…)のすべてについて処理が終わったか否か、即ち選択されている補間対象画素について他の候補ベクトルがあるか否かの判断を行ない、まだ終わっていなければ、即ち他の候補ベクトルがあれば、ステップS102に戻り、次に、それまでに選択されていない候補ベクトルが選択されて、ステップS103以降の処理が行われる。
ステップS108ですべての候補ベクトルについて処理が終わったと判断されたときは、ステップS109に進む。
ステップS108ですべての候補ベクトルについて処理が終わったと判断されたときは、ステップS109に進む。
ステップS109では、背景画素についての動きベクトルと判断された候補ベクトルVcが、補間対象画素についての選別された候補ベクトルVcとして出力される。このようにして、選択されている補間対象画素についての候補ベクトルVcの選別が行われる。
ステップS109の次にステップS110において、補間フレームIm上の補間対象画素(動きベクトルが再配置されていない画素)Piのすべてについて処理(ステップS101からステップS109までの補間処理)が終わったか否か、即ちまだ処理の終わっていない他の補間対象画素が有るか否かの判断が行なわれ、まだ終わっていなければ、即ち他の補間対象画素が有れば、ステップS101に戻り、次にまだ選択されていない補間対象画素を選択して、ステップS102以降の処理を行う。
すべての画素について処理が終わっていると判断されたら、当該補間フレーム上のすべての画素についての候補ベクトルの選別の処理を終了する。
すべての画素について処理が終わっていると判断されたら、当該補間フレーム上のすべての画素についての候補ベクトルの選別の処理を終了する。
以上の処理により、補間フレームIm上の1又は2以上のオクルージョン領域内の各画素について、1つ又は2以上の候補ベクトルVcが選択されて、出力される。
オクルージョン領域は、前景物体によって隠蔽されていた領域が前景物体の移動によって出現した背景領域であるので、周辺の背景領域の動きをオクルージョン領域の動きと推定することが適切である。
同一フレーム上での画素値の差から、オクルージョン領域の画素の画素値が、候補ベクトルが割り当てられた画素のうちのどの画素の画素値と最も近いかによって候補ベクトルを選ぶことも考えられるが、このようにした場合、背景のパターンによっては画素値の差から同じ背景に属する画素であるかどうかの判定が難しい場合がある。
同一フレーム上での画素値の差から、オクルージョン領域の画素の画素値が、候補ベクトルが割り当てられた画素のうちのどの画素の画素値と最も近いかによって候補ベクトルを選ぶことも考えられるが、このようにした場合、背景のパターンによっては画素値の差から同じ背景に属する画素であるかどうかの判定が難しい場合がある。
一方、動きベクトルに沿う直線上に位置する画素は、2つのフレームの双方で隠蔽がなければ、値が同一又は近い値である可能性が高く、一方2つのフレームの一方でのみ隠蔽があれば、値が大きく異なる可能性が高いため、上記のように、差分DF32、DF21による3フレーム間の画素値の変化(差分の絶対値相互の関係)用いることで、背景画素か否かの判定をより正確に行うことができる。
次に、動きベクトル決定部56の動作について説明する。
動きベクトル決定部56は、補間フレームIm上の1又は2以上のオクルージョン領域内の各画素について、候補ベクトル選別部55から出力された1又は2以上の候補ベクトルVc(x,y)1、Vc(x,y)2、…の一つを、当該画素についての動きベクトルVb(x,y)として出力する。
動きベクトル決定部56は、補間フレームIm上の1又は2以上のオクルージョン領域内の各画素について、候補ベクトル選別部55から出力された1又は2以上の候補ベクトルVc(x,y)1、Vc(x,y)2、…の一つを、当該画素についての動きベクトルVb(x,y)として出力する。
各画素について、1つの候補ベクトルVc(x,y)が、候補ベクトル選別部55から出力されている場合には、当該候補ベクトルVc(x,y)を当該画素についての動きベクトル(補間された動きベクトル)Vb(x,y)として出力する。
各画素について、2つ以上の候補ベクトルVc(x,y)1、Vc(x,y)2、…が、候補ベクトル選別部55から出力されている場合には、それら候補ベクトルの一つを選択して当該画素についての動きベクトル(補間された動きベクトル)Vb(x,y)として出力する。
この選択に当たっては、例えばそれぞれの候補ベクトルVc(x,y)1、Vc(x,y)2、…について候補ベクトル選別部55で算出した差分絶対値DF32が最大であった候補ベクトルVc(x,y)jを選択する。
この選択に当たっては、例えばそれぞれの候補ベクトルVc(x,y)1、Vc(x,y)2、…について候補ベクトル選別部55で算出した差分絶対値DF32が最大であった候補ベクトルVc(x,y)jを選択する。
代わりに、候補ベクトル選別部55から出力されている候補ベクトルVcのうち、上記の式(5)が満たされ、その結果前景画素についての動きベクトルであると判断された候補ベクトルVcの平均値、中央値、最頻値などの代表値を求め、該代表値からの差(向きの差を考慮に入れた差、即ちベクトル差)が最も大きい候補ベクトルを選択することとしても良い。
(ここで、平均値、中央値、最頻値を求める場合には、それらの値の水平方向成分と垂直方向成分とを別々に求める。「差が最も大きいベクトル」を求める場合にも同様に、水平方向成分の差、垂直方向成分の差を別々に求めて、それら差を総合する(例えば、差の絶対値の和、或いは差の自乗の和を求める)。
(ここで、平均値、中央値、最頻値を求める場合には、それらの値の水平方向成分と垂直方向成分とを別々に求める。「差が最も大きいベクトル」を求める場合にも同様に、水平方向成分の差、垂直方向成分の差を別々に求めて、それら差を総合する(例えば、差の絶対値の和、或いは差の自乗の和を求める)。
動きベクトル決定部56の出力Vb(x,y)は、動きベクトル組合せ部57に供給される。オクルージョン補正部50に入力された再配置情報DVaも、動きベクトル組合せ部57に供給される。動きベクトル組合せ部57は、再配置情報DVaのうちの各画素がオクルージョン領域内のものかどうかを示す情報を元に、再配置情報DVaに含まれるオクルージョン領域外の画素についての動きベクトルVa(x,y)と、動きベクトル決定部56から出力された、オクルージョン領域内の画素についての動きベクトルVb(x,y)を組合せ、所定の順に並べて、補正後の補間フレームImの動きベクトルVd(x,y)として出力する。
動きベクトル組合せ部57の出力は、オクルージョン領域補正部50の出力として動きベクトル出力端子58を介して補間フレーム生成部60に供給される。
動きベクトル組合せ部57の出力は、オクルージョン領域補正部50の出力として動きベクトル出力端子58を介して補間フレーム生成部60に供給される。
次に補間フレーム生成部60の動作について説明する。
補間フレーム生成部60は、映像入力端子10から第1のフレームI1の画像を受け、フレームバッファ20から第2のフレームI2の画像を受け、オクルージョン領域補正部50から、補間フレームImの各画素についての動きベクトルVd(x,y)を受け、これらに基づいて、補間フレームImの各画素の画素値を求め、これにより、補間フレームImの画像を形成し、出力する。
補間フレーム生成部60は、映像入力端子10から第1のフレームI1の画像を受け、フレームバッファ20から第2のフレームI2の画像を受け、オクルージョン領域補正部50から、補間フレームImの各画素についての動きベクトルVd(x,y)を受け、これらに基づいて、補間フレームImの各画素の画素値を求め、これにより、補間フレームImの画像を形成し、出力する。
補間フレームImの各画素の値Im(x,y)は、下記の式(6)に示すように、補間フレームIm上の各画素についての動きベクトルVd(x,y)を基に、第1及び第2のフレームI1、I2の画素を参照し、両画素の平均を補間フレームImの画素とすることで求めることができる。
式(6)で、
Im(a,b),I1(a,b),I2(a,b)は、それぞれ補間フレームIm、第1のフレームI1、第2のフレームI2の位置(a,b)の画素の画素値、
Vdx(a,b)、Vdy(a,b)はそれぞれ補間フレームIm上の位置(a,b)の画素についての動きベクトルVd(a,b)のx成分とy成分である。
補間フレームImのすべての画素の画素値を算出することで補間フレームImの画像を生成することができる。
Im(a,b),I1(a,b),I2(a,b)は、それぞれ補間フレームIm、第1のフレームI1、第2のフレームI2の位置(a,b)の画素の画素値、
Vdx(a,b)、Vdy(a,b)はそれぞれ補間フレームIm上の位置(a,b)の画素についての動きベクトルVd(a,b)のx成分とy成分である。
補間フレームImのすべての画素の画素値を算出することで補間フレームImの画像を生成することができる。
なお、補間フレームImの画素値は、上記の式(6)のように第1及び第2のフレームI1、I2の画素値の平均を取らず、各フレームの画素値などから算出した係数に応じた重み付き平均を取っても良く、また、第1及び第2のフレームI1、I2の一方の値のみを用いても良い。とりわけ、オクルージョン領域内の画素は第2のフレームI2上では前景物体によって隠蔽されているため参照すべき画素が存在しないので、この場合第1のフレームI1の画素のみを用いて補間フレームImの画素値を算出する方が良い。
以上のように、オクルージョン領域の動きベクトルを周辺の背景画素についての動きベクトルに基づいて決定し、決定された動きベクトルを用いて補間フレームImの画像の画素の画素値を決定することによって、オクルージョン領域における補間フレームImの画像の乱れを抑制することが可能となる。
実施の形態2.
以下、本発明の実施の形態2を説明する。
実施の形態2の補間フレーム生成装置の全体的構成は、実施の形態1に関し図1を参照して説明したのと同じであるが、実施の形態2では、図1のオクルージョン領域補正部50の代わりに図7に示されるオクルージョン領域補正部50bが用いられている。
以下、本発明の実施の形態2を説明する。
実施の形態2の補間フレーム生成装置の全体的構成は、実施の形態1に関し図1を参照して説明したのと同じであるが、実施の形態2では、図1のオクルージョン領域補正部50の代わりに図7に示されるオクルージョン領域補正部50bが用いられている。
図7に示されるオクルージョン領域補正部50bは慨して図2に示されるオクルージョン領域補正部50と同じであるが、探索範囲決定部59が付加され、動きベクトル候補抽出部54の代わりに動きベクトル候補ベクトル抽出部54bが用いられている。
探索範囲決定部59は、オクルージョン領域検出部53から補間フレームIm上の各画素がオクルージョン領域内に位置するか否かを示す情報Dpcを受け、この情報に基づいて、オクルージョン領域内の各画素についての動きベクトルの決定に用いる候補ベクトルを抽出するための探索範囲を決定し、決定した探索範囲を示す情報Drsを出力する。
動きベクトル候補抽出部54bは、オクルージョン領域検出部53から補間フレームIm上の各画素がオクルージョン領域内に位置するか否かを示す情報Dpcを受け、探索範囲決定部59から、探索範囲を示す情報Drsを受け、探索範囲内に位置する画素についての動きベクトルを候補ベクトルVcとして抽出する。
オクルージョン領域検出部53、候補ベクトル選択部55、及び動きベクトル決定部56の動作は、図2の同一の符号で示す部材と同じである。但し、候補ベクトル選別部55は、動きベクトル候補抽出部54の出力の代わりに動きベクトル候補抽出部54bの出力を入力とする。
以下、探索範囲決定部59を設ける理由について説明する。
動きベクトル候補抽出部54bは、実施の形態1の動きベクトル候補抽出部54と同様に、図4に示すような4画素の動きベクトルを候補ベクトルとしても良いが、上記4画素に対して局所的に誤った動きベクトルが再配置されていた場合に後段の候補ベクトル選別部55での選別の結果得られる動きベクトルの、本来あるべき値からの誤差が大きくなってしまう可能性が高まる。この傾向は、オクルージョン領域が広く、その反対側の境界相互間で動きベクトルの差が大きい場合に、著しくなる。
そこで、探索範囲決定部59は、オクルージョン領域の反対側の境界相互間での動きベクトルの差に応じた範囲、従って,オクルージョン領域の大きさに応じた範囲で候補ベクトルを抽出するために、候補ベクトルの抽出のための探索範囲を決定する。
動きベクトル候補抽出部54bは、実施の形態1の動きベクトル候補抽出部54と同様に、図4に示すような4画素の動きベクトルを候補ベクトルとしても良いが、上記4画素に対して局所的に誤った動きベクトルが再配置されていた場合に後段の候補ベクトル選別部55での選別の結果得られる動きベクトルの、本来あるべき値からの誤差が大きくなってしまう可能性が高まる。この傾向は、オクルージョン領域が広く、その反対側の境界相互間で動きベクトルの差が大きい場合に、著しくなる。
そこで、探索範囲決定部59は、オクルージョン領域の反対側の境界相互間での動きベクトルの差に応じた範囲、従って,オクルージョン領域の大きさに応じた範囲で候補ベクトルを抽出するために、候補ベクトルの抽出のための探索範囲を決定する。
この探索範囲は、例えば、図8に示される4つの矩形の領域であり、それぞれの矩形の領域は、各オクルージョン領域内に位置する補間対象画素の各々を着目画素として、該着目画素について、当該オクルージョン領域の外部に位置し、かつ当該オクルージョン領域との境界に最も近い位置にある画素PE1、PE2、PE3、PE4が4つの辺のうち、着目画素に近い側の辺(着目画素と画素PE1、PE2、PE3又はPE4を結ぶ線に垂直な一対の辺のうち、着目画素に近い側の辺)の中央に位置するものである。
矩形の領域の水平方向の辺の長さは、着目画素と垂直方向位置が同じで、オクルージョン領域の外側にある一対の画素PE1、PE2についての動きベクトルの水平方向成分の差の絶対値に応じて定められるものであり、より具体的には、上記の画素PE1、PE2についての動きベクトルの水平方向成分の差の絶対値が大きいほど長く定められ、矩形の領域の垂直方向の辺の長さは、着目画素と水平方向位置が同じで、オクルージョン領域の外側にある一対の画素PE3、PE4についての動きベクトルの垂直方向成分の差の絶対値に応じて定められるものであり、より具体的には、上記の画素PE3、PE4についての動きベクトルの垂直方向成分の差の絶対値が大きいほど長く定められる。
例えば、探索範囲は、下記の式(7A)、(7B)によって算出されるLx(x,y)及びLy(x,y)をそれぞれ水平方向及び垂直方向の辺の長さとする矩形の領域とする。ただし、式(7A)、(7B)で算出されるLx(x,y)ないしはLy(x,y)が1未満となる場合には、1にするなどの措置をとる。0の場合は探索範囲がなくなってしまうためである。
Vax(a,b),Vay(a,b)はそれぞれ補間フレームIm上の位置(a,b)の画素の動きベクトルVa(a,b)のx及びy成分、
hlxp、hlxbはそれぞれ図8に示すように、オクルージョン領域内の着目画素と垂直方向位置が同じでx軸に沿う正の方向及び負の方向に位置し、着目画素に最も近い非オクルージョン領域の画素PE1、PE2と着目画素PE0との距離、
hlyp、hlybはそれぞれ図8に示すように、オクルージョン領域内の着目画素と水平方向位置が同じでy軸に沿う正の方向及び負の方向に位置し、着目画素に最も近い非オクルージョン領域の画素PE3、PE4と着目画素PE0との距離、
Wx,WyはそれぞれLx(a,b)、Ly(a,b)を求めるための重み係数である。
式(7A)、(7B)で表される矩形の範囲は、図8において、画素PE1についての動きベクトルと画素PE2についての動きベクトルとの差の絶対値が大きいほど、水平方向の範囲が広く、画素PE3についての動きベクトルと画素PE4についての動きベクトルとの差の絶対値が大きいほど、垂直方向の範囲が広いものである。
なお、探索範囲決定部59で決定する探索範囲は、矩形領域でなくとも、例えば、式(7A)、(7B)で算出される値を長径及び短径の一方及び他方とする楕円など、他の形状であっても良く、要するに、探索範囲を構成する領域の各々の水平方向の寸法が、画素PE1についての動きベクトルと画素PE2についての動きベクトルとの差の絶対値に応じて定められ、探索範囲を構成する領域の各々の垂直方向の寸法が、画素PE3についての動きベクトルと画素PE4についての動きベクトルとの差の絶対値に応じて定められるものであれば良く、より具体的には、画素PE1についての動きベクトルと画素PE2についての動きベクトルとの差の絶対値が大きいほど、大きく、探索範囲を構成する領域の各々の垂直方向の寸法が、画素PE3についての動きベクトルと画素PE4についての動きベクトルとの差の絶対値が大きいほど大きいものであれば良い。
このように、非オクルージョン領域の動きベクトルを基に、候補ベクトルの探索範囲を決定することでオクルージョン領域の反対側の境界相互間の動きベクトルの差、従って、オクルージョン領域の大きさに応じた最適な候補ベクトルの抽出が可能となる。
動きベクトル候補抽出部54bは、オクルージョン領域検出部53によって検出されたオクルージョン領域内の各画素に対し、オクルージョン領域外の画素から補間対象画素の動きベクトルの補間のための動きベクトルの候補を抽出する。
この場合、図8に示すように、オクルージョン領域内の補間対象画素と水平方向位置または垂直方向位置が同じで補間対象画素と最も近い非オクルージョン領域の4つの画素についての動きベクトルに基づいて、探索範囲決定部59が算出した探索範囲内の画素の動きベクトルを候補ベクトルとして抽出する。
この場合、図8に示すように、オクルージョン領域内の補間対象画素と水平方向位置または垂直方向位置が同じで補間対象画素と最も近い非オクルージョン領域の4つの画素についての動きベクトルに基づいて、探索範囲決定部59が算出した探索範囲内の画素の動きベクトルを候補ベクトルとして抽出する。
なお、上記の実施の形態では、補間フレームImが第1のフレームI1と第2のフレームI2の中間に位置する場合について説明したが、一般化して、第2のフレームI2から補間フレームImまでの時間間隔t2mの、第2のフレームI2から第1のフレームまでの時間間隔t21に対する比がαである場合には、動きベクトルの再配置は上記の式(1)の代わりに下式(1B)により行われる。
また、上記の実施の形態では、第3のフレームI3と第2のフレームI2の時間間隔t32が、上記の時間間隔t21と等しいものとしたが、一般化して、時間間隔t32の時間間隔t21に対する比がβであり、時間間隔t2mの時間間隔t21に対する比がαである場合には、上記の式(2)の代わりに下記の式(2B)によりDF32を求める。
以上のように、非オクルージョン領域より候補ベクトルを抽出して、各候補ベクトルの画素値の時間的変化から補間のための候補ベクトルを選択し、オクルージョン領域の動きベクトルを補間することによって、オクルージョン領域における動きベクトルを適切に補間し、オクルージョン領域における画像の乱れを抑制した補間フレームImを生成することができる。
以上本発明を補間フレーム生成装置として説明したが、上記の装置の各部における処理を実施するステップを有する補間フレーム生成方法もまた本発明の一部を成し、上記補間フレームの各ステップの処理をコンピュータに実行させるプログラムもまた本発明の一部を成す。
10 映像入力端子、 20 フレームバッファ、 30 動き推定部、 40 動きベクトル再配置部、 50、50b オクルージョン領域補正部、 60 補間フレーム生成部、 70 補間フレーム出力端子、 51 動きベクトル入力端子、 52a、52b フレーム入力端子、 53 オクルージョン領域検出部、 54、54b 動きベクトル候補抽出部、 55 候補ベクトル選別部、 56 動きベクトル決定部、 58 動きベクトル出力端子、 59 探索範囲決定部。
Claims (13)
- 動画を構成する一連のフレームについて、着目する第1のフレームと前記第1のフレームよりも時間的に前の第2のフレームとの間に補間フレームを生成する補間フレーム生成装置において、
前記第1のフレームと第2のフレームの間の動きベクトルを推定する動き推定部と、
前記動き推定部で推定された動きベクトルを前記補間フレーム上に再配置し、前記補間フレーム上の各画素について動きベクトルが再配置されたか否かを示す情報と、再配置された動きベクトルを示す情報を、再配置情報として出力する動きベクトル再配置部と、
前記補間フレーム上の画素のうち、前記再配置情報により動きベクトルが再配置されたことが示されている画素をオクルージョン領域外に位置する画素と判定し、前記再配置情報により動きベクトルが再配置されなかったことが示されている画素をオクルージョン領域内に位置する画素と判定し、前記オクルージョン領域外に位置する画素についての動きベクトルに基づいて、前記オクルージョン領域内に位置する画素についての動きベクトルを補間により生成するオクルージョン領域補正部と、
前記オクルージョン領域補正部により生成された前記オクルージョン領域内の画素についての動きベクトルと、前記再配置部により生成された前記オクルージョン領域外の画素についての動きベクトルを用いて、補間フレーム上の各画素の画素値を求めることで補間フレームの画像を生成する補間フレーム生成部とを備え、
前記オクルージョン領域補正部は、
前記補間フレーム上のオクルージョン領域内に位置する各画素について、オクルージョン領域外に位置する画素についての動きベクトルを候補ベクトルとして抽出する動きベクトル候補抽出部と、
前記動きベクトル候補抽出部により抽出された候補ベクトルに対応する、互いに異なるフレーム上の画素の画素値間の差分に基づき、該候補ベクトルが、背景画素についての動きベクトルか否かを判定し、前記背景画素についての動きベクトルと判定された候補ベクトルを出力する動きベクトル選別部と
を有することを特徴とする画像処理装置。 - 前記互いに異なるフレームが、前記第1のフレーム及び第2のフレーム、並びに前記第2のフレームよりも時間的に前の第3のフレームであり、
前記候補ベクトル選別部は、
前記候補ベクトルに沿う直線と前記第3のフレームとの交点に位置する前記第3のフレーム上の画素、及び
前記候補ベクトルに沿う直線と前記第2のフレームとの交点に位置する前記第2のフレーム上の画素の画素値間の第1の差分と、
前記候補ベクトルに沿う直線と前記第2のフレームとの交点に位置する前記第2のフレーム上の画素、及び
前記候補ベクトルに沿う直線と前記第1のフレームとの交点に位置する前記第1のフレーム上の画素の画素値間の第2差分とに基づいて、
前記候補ベクトルが、背景画素についての動きベクトルか否かの判定を行う
ことを特徴とする請求項1に記載の補間フレーム生成装置。 - 前記候補ベクトル選別部は、
前記第1の差分が、前記第2の差分に対し所定の値以上大きい場合に、当該候補を背景画素についての動きベクトルと判定する
ことを特徴とする請求項2に記載の補間フレーム生成装置。 - 前記動きベクトル候補抽出部は、
前記オクルージョン領域の外部に位置する画素のうちで、
前記オクルージョン領域内の着目画素と垂直方向位置が同じで、該着目画素よりも左側に位置し、該着目画素に最も近い第1の画素についての動きベクトル、
前記オクルージョン領域内の着目画素と垂直方向位置が同じで、該着目画素よりも右側に位置し、該着目画素に最も近い第2の画素についての動きベクトル、
前記オクルージョン領域内の着目画素と水平方向位置が同じで、該着目画素よりも上側に位置し、該着目画素に最も近い第3の画素についての動きベクトル、及び
前記オクルージョン領域内の着目画素と水平方向位置が同じで、該着目画素よりも下側に位置し、該着目画素に最も近い第4の画素についての動きベクトル
のうちの1つ以上を前記候補ベクトルとして抽出する
ことを特徴とする請求項1乃至3のいずれかに記載の補間フレーム生成装置。 - 前記オクルージョン領域補正部は、
前記第1の画素についての動きベクトルと前記第2の画素についての動きベクトルとの差分と、前記第3の画素についての動きベクトルと前記第4の画素についての動きベクトルとの差分に基づいて探索範囲を決定する探索範囲決定部をさらに有し、
前記動きベクトル候補抽出部は、前記探索範囲内の画素について動きベクトルを前記候補ベクトルとして抽出する
ことを特徴とする請求項4に記載の補間フレーム生成装置。 - 前記探索範囲は、それぞれ前記第1、第2、第3及び第4の画素を内部に含む第1、第2、第3及び第4の領域から成り、
前記第1乃至第4の領域の各々の水平方向の寸法は、前記第1の画素についての動きベクトルと前記第2の画素についての動きベクトルとの差分の絶対値に応じた値に定められ、
前記第1乃至第4の領域の各々の垂直方向の寸法は、前記第3の画素についての動きベクトルと前記第4の画素についての動きベクトルとの差分の絶対値に応じた値に定められる
ことを特徴とする請求項5に記載の補間フレーム生成装置。 - 動画を構成する一連のフレームについて、着目する第1のフレームと前記第1のフレームよりも時間的に前の第2のフレームとの間に補間フレームを生成する補間フレーム生成方法において、
前記第1のフレームと第2のフレームの間の動きベクトルを推定する動き推定ステップと、
前記動き推定ステップで推定された動きベクトルを前記補間フレーム上に再配置し、前記補間フレーム上の各画素について動きベクトルが再配置されたか否かを示す情報と、再配置された動きベクトルを示す情報を、再配置情報として出力する動きベクトル再配置ステップと、
前記補間フレーム上の画素のうち、前記再配置情報により動きベクトルが再配置されたことが示されている画素をオクルージョン領域外に位置する画素と判定し、前記再配置情報)により動きベクトルが再配置されなかったことが示されている画素をオクルージョン領域内に位置する画素と判定し、前記オクルージョン領域外に位置する画素についての動きベクトルに基づいて、前記オクルージョン領域内に位置する画素についての動きベクトルを補間により生成するオクルージョン領域補正ステップと、
前記オクルージョン領域補正ステップにより生成された前記オクルージョン領域内の画素についての動きベクトルと、前記再配置ステップにより生成された前記オクルージョン領域外の画素についての動きベクトルを用いて、補間フレーム上の各画素の画素値を求めることで補間フレームの画像を生成する補間フレーム生成ステップとを備え、
前記オクルージョン領域補正ステップは、
前記補間フレーム上のオクルージョン領域内に位置する各画素について、オクルージョン領域外に位置する画素についての動きベクトルを候補ベクトルとして抽出する動きベクトル候補抽出ステップと、
前記動きベクトル候補抽出ステップにより抽出された候補ベクトルに対応する、互いに異なるフレーム上の画素の画素値間の差分に基づき、該候補ベクトルが、背景画素についての動きベクトルか否かを判定し、前記背景画素についての動きベクトルと判定された候補ベクトルを出力する動きベクトル選別ステップと
を有することを特徴とする画像処理方法。 - 前記互いに異なるフレームが、前記第1のフレーム及び第2のフレーム、並びに前記第2のフレームよりも時間的に前の第3のフレームであり、
前記候補ベクトル選別ステップは、
前記候補ベクトルに沿う直線と前記第3のフレームとの交点に位置する前記第3のフレーム上の画素、及び
前記候補ベクトルに沿う直線と前記第2のフレームとの交点に位置する前記第2のフレーム上の画素の画素値間の第1の差分と、
前記候補ベクトルに沿う直線と前記第2のフレームとの交点に位置する前記第2のフレーム上の画素、及び
前記候補ベクトルに沿う直線と前記第1のフレームとの交点に位置する前記第1のフレーム上の画素の画素値間の第2差分とに基づいて、
前記候補ベクトルが、背景画素についての動きベクトルか否かの判定を行う
ことを特徴とする請求項7に記載の補間フレーム生成方法。 - 前記候補ベクトル選別ステップは、
前記第1の差分が、前記第2の差分に対し所定の値以上大きい場合に、当該候補を背景画素についての動きベクトルと判定する
ことを特徴とする請求項8に記載の補間フレーム生成方法。 - 前記動きベクトル候補抽出ステップは、
前記オクルージョン領域の外ステップに位置する画素のうちで、
前記オクルージョン領域内の着目画素と垂直方向位置が同じで、該着目画素よりも左側に位置し、該着目画素に最も近い第1の画素についての動きベクトル、
前記オクルージョン領域内の着目画素と垂直方向位置が同じで、該着目画素よりも右側に位置し、該着目画素に最も近い第2の画素についての動きベクトル、
前記オクルージョン領域内の着目画素と水平方向位置が同じで、該着目画素よりも上側に位置し、該着目画素に最も近い第3の画素についての動きベクトル、及び
前記オクルージョン領域内の着目画素と水平方向位置が同じで、該着目画素よりも下側に位置し、該着目画素に最も近い第4の画素についての動きベクトル
のうちの1つ以上を前記候補ベクトルとして抽出する
ことを特徴とする請求項7乃至9のいずれかに記載の補間フレーム生成方法。 - 前記オクルージョン領域補正ステップは、
前記第1の画素についての動きベクトルと前記第2の画素についての動きベクトルとの差分と、前記第3の画素についての動きベクトルと前記第4の画素についての動きベクトルとの差分に基づいて探索範囲を決定する探索範囲決定ステップをさらに有し、
前記動きベクトル候補抽出ステップは、前記探索範囲内の画素について動きベクトルを前記候補ベクトルとして抽出する
ことを特徴とする請求項10に記載の補間フレーム生成方法。 - 前記探索範囲は、それぞれ前記第1、第2、第3及び第4の画素を内部に含む第1、第2、第3及び第4の領域から成り、
前記第1乃至第4の領域の各々の水平方向の寸法は、前記第1の画素についての動きベクトルと前記第2の画素についての動きベクトルとの差分の絶対値に応じた値に定められ、
前記第1乃至第4の領域の各々の垂直方向の寸法は、前記第3の画素についての動きベクトルと前記第4の画素についての動きベクトルとの差分の絶対値に応じた値に定められる
ことを特徴とする請求項11に記載の補間フレーム生成方法。 - 請求項6乃至12のいずれかに記載の方法の各ステップを、コンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012014413A JP2013157667A (ja) | 2012-01-26 | 2012-01-26 | 補間フレーム生成装置、方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012014413A JP2013157667A (ja) | 2012-01-26 | 2012-01-26 | 補間フレーム生成装置、方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013157667A true JP2013157667A (ja) | 2013-08-15 |
Family
ID=49052511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012014413A Pending JP2013157667A (ja) | 2012-01-26 | 2012-01-26 | 補間フレーム生成装置、方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013157667A (ja) |
-
2012
- 2012-01-26 JP JP2012014413A patent/JP2013157667A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4398925B2 (ja) | 補間フレーム生成方法、補間フレーム生成装置および補間フレーム生成プログラム | |
KR101393048B1 (ko) | 이미지들의 수퍼 해상도를 위한 방법 및 장치 | |
JP3898606B2 (ja) | 動きベクトル検出方法及び装置並びにフレーム補間画像作成方法及び装置 | |
US10531093B2 (en) | Method and system for video frame interpolation based on optical flow method | |
JP4198608B2 (ja) | 補間画像生成方法および装置 | |
JP4053490B2 (ja) | フレーム補間のための補間画像作成方法及びこれを用いた画像表示システム、補間画像作成装置 | |
US20080069221A1 (en) | Apparatus, method, and computer program product for detecting motion vector and for creating interpolation frame | |
KR20080008952A (ko) | 초해상도 기술을 이용한 비비월주사의 방법 및 시스템 | |
US8817869B2 (en) | Image processing device and method, and image display device and method | |
JP4385077B1 (ja) | 動きベクトル検出装置および画像処理装置 | |
WO2012066866A1 (ja) | 動きベクトル検出装置、動きベクトル検出方法、フレーム補間装置及びフレーム補間方法 | |
US8830394B2 (en) | System, method, and apparatus for providing improved high definition video from upsampled standard definition video | |
KR20050081730A (ko) | 움직임 보상 기반의 영상 신호 프레임율 변환 방법 | |
JP4355347B2 (ja) | 画像表示装置及び方法、画像処理装置及び方法 | |
JP5448983B2 (ja) | 解像度変換装置及び方法、走査線補間装置及び方法、並びに映像表示装置及び方法 | |
CN105915835B (zh) | 一种可硬件实现的帧频提升方法 | |
JP2006215657A (ja) | 動きベクトル検出方法、動きベクトル検出装置、動きベクトル検出プログラム及びプログラム記録媒体 | |
JP2013157667A (ja) | 補間フレーム生成装置、方法及びプログラム | |
JP2008193730A (ja) | 画像表示装置及び方法、画像処理装置及び方法 | |
JP4354799B2 (ja) | 補間画像生成方法および装置 | |
JP6313588B2 (ja) | フレーム補間装置及びプログラム | |
JP2008109628A (ja) | 画像表示装置及び方法、画像処理装置及び方法 | |
JPH08186802A (ja) | 飛び越し走査画像の補間画素作成方法 | |
JP4157586B2 (ja) | 画像表示装置及び方法、画像処理装置及び方法 | |
JP2006279982A (ja) | 動きベクトル検出方法、フレーム補間画像作成方法及び装置 |