説明

動きベクトル検出方法、及び動きベクトル検出プログラム

【課題】動画圧縮処理等に用いるため、ブロックマッチング法を用いて時間的に近接するフレーム間で動きベクトルを検出するに際して、探索のための計算量を削減しながら、視覚的画像劣化が少ない画像符号化のための動きベクトルを検出することができる動きベクトル検出方法、及び動きベクトル検出プログラムを提供する。
【解決手段】光学特性としての画像解像度の方向成分に応じて画像を領域分割し、それぞれの領域でその光学特性の画像解像度方向成分に応じた探索法を設定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画圧縮処理等に用いるため、ブロックマッチング法を用いて時間的に近接するフレーム間で動きベクトルを検出する動きベクトル検出方法、及び動きベクトル検出プログラムに関する。
【背景技術】
【0002】
動画圧縮処理において、時間的に近接するフレーム間で動きベクトルを検出し、検出した動きベクトルを用いて動き補償予測符号化を行う技術が知られている。
【0003】
動きベクトル検出には、いろいろな方法が提案されているが、圧縮処理の対象画像とその対象画像に時間的に近接する参照画像との間で適当な大きさのブロックでの比較を行う方法(ブロックマッチング法)が広く知られている。
【0004】
これは、対象画像をブロックに分割し、対象画像内の注目ブロックと参照画像内の設定された探索範囲内の複数の参照ブロックとの間で比較処理を行って、対象ブロックに最も類似している参照ブロックを探索して求め、それらの位置関係を動きベクトルとして検出するものである。
【0005】
対象ブロックに最も類似している参照ブロックとしては、例えば一般に、対象ブロックとのSAD(Sum of Absolute Differrence:差分絶対値和)が最小となるような参照ブロックが選ばれる。
【0006】
一般に、このようなブロックマッチングの処理は多大な計算量を要する処理となるうえ、検出する動きベクトルは画素精度よりさらに高精度が求められる。
【0007】
MPEG−1、MPEG−2、MPEG−4、あるいはMPEG−4 AVC/H.264といった動画圧縮処理の国際標準方式においては、動きベクトルは1/2画素もしくは1/4画素単位の精度が要求される。
【0008】
特にMPEG−4の一部のプロファイルやMPEG−4 AVC/H.264においては、精度の高い1/2画素精度の画素補間を行うために6タップのFIR(Finite Impulse Response)フィルタを用いることになっている。
【0009】
従って一般に、ブロックマッチング処理は整数画素精度での探索と小数画素精度(1/2画素もしくは1/4画素単位)での探索との二段階で行われる。
【0010】
このように動きベクトルの検出は、非常に計算量の多い処理として知られており、そのため、動きベクトル検出における計算量の削減が重要な技術課題として研究されてきた。
【0011】
例えば、特許文献1には、整数画素精度サーチでの探索結果のSAD(差分絶対値和)と周囲のブロックのSADの平均とを比較し、小数画素精度サーチを行うかどうかを判断し、不要な小数画素精度の探索実行を削減する技術が開示されている。
【0012】
また、特許文献2では、特徴検出部によって得られたブロック内の特徴画素だけを使ったブロックマッチング処理により、計算量を削減する技術が提案されている。
【0013】
一方、光学特性を利用する例として、特許文献3には、人間の視覚特性を利用して画像中心部と周辺部の圧縮率を変える技術が記載されている。
【0014】
また特許文献4には、撮像装置の光学特性に応じて、動きベクトル検出精度を変える技術が記載されている。
【先行技術文献】
【特許文献】
【0015】
【特許文献1】特開2000−278696号公報
【特許文献2】特開2007−134755号公報
【特許文献3】特開平6−334985号公報
【特許文献4】特開2008−193458号公報
【発明の概要】
【発明が解決しようとする課題】
【0016】
上に述べてきたように、動きベクトル検出処理は計算量が非常に多く、その処理を削減する方法が提案されてきた。
【0017】
しかしながら、例えば特許文献1から4に記載の従来の方法では光学系の特性を考慮せず、十分な精度の得られないMTF(Moduler Transfer Function)値の低い(解像度の低い)領域でもMTF値の高い(解像度の高い)領域と同様の検出精度で動きベクトルの探索を行っている。
【0018】
特許文献1で開示される方法では、小数画素精度サーチ部分の計算量は少なくなるが、毎フレームで判断を行わなければならない。
【0019】
特許文献2で開示される方法では、ブロックマッチングの計算量は少なくなるが、毎フレームで特徴点の検出を行わねばならない。
【0020】
特許文献3で開示される方法では、フレーム符号化後の情報サイズは削減されるが、計算量はほとんど変わらない。
【0021】
特許文献4で開示される方法では、中心部と周辺部で検出精度を変える方法により、周辺部で解像度が低下する光学系において演算量の削減を行うことができるが、解像度が方向によって異なる場合、解像度が高い方向の精度も低下する課題があった。
【0022】
本発明は、上記の技術的課題に鑑みてなされたものである。
【0023】
本発明の目的は、動画圧縮処理等に用いるため、ブロックマッチング法を用いて時間的に近接するフレーム間で動きベクトルを検出するに際して、入力画像に依存しない光学特性を利用することで探索のための計算量を削減しながら、視覚的画像劣化が少ない画像符号化のための動きベクトルを検出することができる動きベクトル検出方法、及び動きベクトル検出プログラムを提供することである。
【課題を解決するための手段】
【0024】
上記の課題を解決するために、本発明は以下の特徴を有するものである。
【0025】
1.入力画像において、対象画像の注目ブロックに対して参照画像内の対応するブロックを探索する探索工程を備え、注目ブロックと対応するブロックの入力画像内での位置関係から動きベクトルを検出する動きベクトル検出方法であって、
入力画像における解像度情報の1つ以上の方向成分の値に応じて画像を複数種類の領域に分割する領域分割工程と、
前記領域分割工程で分割された領域の前記解像度情報の方向成分の値に応じて、前記探索工程において用いる探索法をそれぞれ設定する探索法設定工程と、を備える
ことを特徴とする動きベクトル検出方法。
【0026】
2.前記領域分割工程において、
入力画像を撮像した撮像装置の光学特性を、領域分割のための前記解像度情報として用いる
ことを特徴とする前記1に記載の動きベクトル検出方法。
【0027】
3.前記撮像装置の光学特性は、MTF、OTF、PSFの何れかである
ことを特徴とする前記2に記載の動きベクトル検出方法。
【0028】
4.前記領域分割工程において、
入力画像の前処理における画像処理内容により決定される前記解像度情報を用いる
ことを特徴とする前記1に記載の動きベクトル検出方法。
【0029】
5.前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の移動ステップ数を変更する
ことを特徴とする前記1から4の何れか1項に記載の動きベクトル検出方法。
【0030】
6.前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の優先移動方向を変更する
ことを特徴とする前記1から4の何れか1項に記載の動きベクトル検出方法。
【0031】
7.前記探索法設定工程において、
小数画素精度補間による探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の補間方法を変更する
ことを特徴とする前記1から6の何れか1項に記載の動きベクトル検出方法。
【0032】
8.コンピュータに、
入力画像において、対象画像の注目ブロックに対して参照画像内の対応するブロックを探索する探索工程を実行させ、注目ブロックと対応するブロックの入力画像内での位置関係から動きベクトルの検出を実行させる動きベクトル検出プログラムであって、
該コンピュータに、
入力画像における解像度情報の1つ以上の方向成分の値に応じて画像を複数種類の領域に分割する領域分割工程と、
前記領域分割工程で分割された領域の前記解像度情報の方向成分の値に応じて、前記探索工程において用いる探索法をそれぞれ設定する探索法設定工程と、を実行させる
ことを特徴とする動きベクトル検出プログラム。
【0033】
9.前記領域分割工程において、
入力画像を撮像した撮像装置の光学特性を、領域分割のための前記解像度情報として用いる
ことを特徴とする前記8に記載の動きベクトル検出プログラム。
【0034】
10.前記撮像装置の光学特性は、MTF、OTF、PSFの何れかである
ことを特徴とする前記9に記載の動きベクトル検出プログラム。
【0035】
11.前記領域分割工程において、
入力画像の前処理における画像処理内容により決定される前記解像度情報を用いる
ことを特徴とする前記8に記載の動きベクトル検出プログラム。
【0036】
12.前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の移動ステップ数を変更する
ことを特徴とする前記8から11の何れか1項に記載の動きベクトル検出プログラム。
【0037】
13.前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の優先移動方向を変更する
ことを特徴とする前記8から11の何れか1項に記載の動きベクトル検出プログラム。
【0038】
14.前記探索法設定工程において、
小数画素精度補間による探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の補間方法を変更する
ことを特徴とする前記8から13の何れか1項に記載の動きベクトル検出プログラム。
【発明の効果】
【0039】
本発明に係る動きベクトル検出方法、及び動きベクトル検出プログラムによれば、ブロックマッチング法を用いて動きベクトルを検出するに際して、光学特性としての画像解像度の方向成分に応じて画像を領域分割し、それぞれの領域でその光学特性の画像解像度方向成分に応じた探索法を設定する。
【0040】
このように、入力画像に依存しない光学特性を利用することで、動きベクトル検出精度を十分に得ることができない画像領域において計算量を削減しながら、視覚的画像劣化が少ない画像符号化のための動きベクトルを検出することができる。
【図面の簡単な説明】
【0041】
【図1】本実施形態に係る動きベクトルの検出方法の処理手順例を示すフローチャートである。
【図2】フルサーチブロックマッチング方法の処理例を説明するための図である。
【図3】フルサーチブロックマッチング方法の処理手順例を示すフローチャートである。
【図4】ダイヤモンドサーチを説明するための概念図である。
【図5】ダイヤモンドサーチの処理手順例を示すフローチャートである。
【図6】6−TapFIRフィルタを使用する1/2画素精度の補間の説明図である。
【図7】1/4画素精度の補間で用いる単純な線形補間の説明図である。
【図8】MTFと像高の関係の代表的な例を示すグラフである。
【図9】MTFの方向成分間の関係を示すための図である。
【図10】注目ブロックに対する垂直方向及び水平方向のMTFを想定するための図である。
【図11】垂直方向及び水平方向のMTFの算出を説明するための図である。
【図12】(a)水平・垂直方向のMTFに応じた領域分割の分割例と(b)その分割の基準例を示す図である。
【図13】ダイヤモンドサーチの設定変更例(T2>MTFの場合)を示すフローチャートである。
【発明を実施するための形態】
【0042】
本発明に係る動きベクトル検出方法の一実施形態を、以下に図を用いて説明する。
【0043】
(動きベクトルの検出処理例)
図1は、本実施形態に係る動きベクトルの検出方法の処理手順例を示すフローチャートである。図1を用いて、本実施形態に係る動きベクトルの検出方法の処理手順例を説明する。
【0044】
なお、以下に述べる動きベクトルの検出方法の処理手順は、それらを実行するようにプログラムされた動きベクトル検出プログラムをコンピュータ等の情報処理装置に適用することにより実行される。
【0045】
図1において、ステップS1は、領域分割工程であり、入力画像に依存しない撮像時の光学特性、すなわち解像度情報の1つ以上の方向成分に応じて、入力画像を複数種類の領域に分割する。
【0046】
ステップS2は、探索法設定工程であり、ステップS1で分割されたそれぞれの領域の種類に応じて、用いる探索法を設定する。
【0047】
例えば探索法とは、ステップS5の探索工程で用いるブロックマッチング法であり、圧縮処理の対象画像とその対象画像に時間的に近接する参照画像との間で適当な大きさのブロックでの比較を行うものである。
【0048】
その探索法を解像度情報に応じて設定することで、低解像度領域では探索のための計算量を削減することを意図している。
【0049】
ステップS1の領域分割工程とステップS2の探索法設定工程を、次に実行する探索工程に先んじて実行しておき、探索工程では計算量を削減しながら、視覚的画像劣化が少ない画像符号化のための動きベクトルを検出することができるようにしている。
【0050】
ステップS1の領域分割工程とステップS2の探索法設定工程については、具体例を後述して、説明する。
【0051】
ステップS3は探索工程でのブロックマッチング処理実行に備えて、対象画像に処理対象としての注目ブロックを設定する。
【0052】
ステップS4は、設定した注目ブロックに対して、参照画像にサーチエリアを設定する。
【0053】
これらの意味合いについては、後述する探索工程の説明で述べる。
【0054】
ステップS5は探索工程であり、設定した注目ブロックに対応する参照ブロックをサーチエリア内から探索する。探索には後述するブロックマッチング法が一般的に使用される。
【0055】
ブロックマッチング法は、整数画素精度での探索と小数画素精度での探索の二段階で行われる。ここで上記分割されたそれぞれの領域に設定された探索法により、それぞれの探索法が実行される。
【0056】
ステップS5の探索工程については、後で詳細を述べる。
【0057】
ステップS6は、ステップS5の探索の結果により、設定した注目ブロックに対応する参照ブロックを決定する。
【0058】
ステップS7は、設定した注目ブロックと対応する参照ブロックの位置関係として、動きベクトルを検出する。
【0059】
ステップS8は、処理対象の画像に対して、すべての注目ブロックを設定し、動きベクトルの検出を終えたかどうかを判定する。
【0060】
ステップS8で判定がYesの場合は、動きベクトルの検出処理は終了する。
【0061】
ステップS8で判定がNoの場合は、ステップS3へ戻り、次の注目ブロックを設定し、ステップS8までを繰り返す。
【0062】
ステップS3からステップS8の反復は、ステップS8で判定がYesとなり、動きベクトルの検出処理が終了するまで継続する。
【0063】
本実施形態に係る動きベクトル検出方法とそれを実行するための動きベクトル検出プログラムでは、このようにして探索工程の前に、領域分割工程と探索法設定工程を実行することにより、探索のための計算量を削減しながら、視覚的画像劣化が少ない画像符号化のための動きベクトルを検出するよう図っている。
【0064】
以下にまず、従来技術としての探索工程について詳細を述べ、その後で光学特性としてのMTFとその方向成分の算出について述べ、その解像度と方向成分に基づいた領域分割工程と探索法設定工程の処理例を説明する。
【0065】
(探索工程)
上述したステップS5の探索工程について詳細を説明する。
【0066】
探索工程では、ブロックマッチング法による探索が行われる。
【0067】
ブロックマッチング法とは、既述したように圧縮処理の対象画像とその対象画像に時間的に近接する参照画像との間で適当な大きさのブロックでの比較を行う方法であり、以下のように動きベクトルを検出する。
【0068】
すなわち、対象画像をブロックに分割し、対象画像内の注目ブロックと参照画像内の設定された探索範囲内の複数の参照ブロックとの間で比較処理を行って、注目ブロックに最も類似している参照ブロックを探索して求める。
【0069】
対象ブロックに最も類似している参照ブロックとしては、対象ブロックとのSAD(Sum of Absolute Differrence:差分絶対値和)が最小となるような参照ブロックが選ばれる。
【0070】
ブロックマッチングは、動きベクトルの検出精度(例えば1/2画素もしくは1/4画素単位)に応じて、整数画素精度サーチ部と小数画素精度サーチ部の二段階に分けて行われる。
【0071】
整数画素精度サーチ部では、あらかじめ決められた参照ブロックの探索範囲を整数画素単位で探索し、SAD最小等の基準で対応ブロックを決定する。
【0072】
小数画素精度サーチ部では、整数画素精度サーチ部で得られた対応点の周囲で1/2画素、1/4画素などの精度で画素補間を行い、補間画像を用いて小数画素精度で探索し、同様に最適な参照ブロックを決定する。
【0073】
(整数画素精度での探索)
<フルサーチブロックマッチング>
整数画素精度サーチ部で行われるブロックマッチングの基本は、フルサーチブロックマッチングである。フルサーチブロックマッチングについて説明する。
【0074】
図2は、フルサーチブロックマッチングでのフレーム間の注目ブロックと参照ブロックの関係を示す図である。図2を用いて、フルサーチブロックマッチング方法の処理例を説明する。
【0075】
図2において、(a)は参照画像2を示し、(b)は対象画像1を示す。3は対象画像中に設定された注目ブロック4に対応して参照画像2中に設定されたサーチエリアSaである。
【0076】
4は対象画像の注目ブロックBlkcur、5は参照画像の参照ブロックBlkref、V1は参照画像のブロックBlkrefと対象画像のブロックBlkcurの間の動きベクトル情報である。
【0077】
2つのブロック4及び5の類似度合いは、例えば、それぞれのブロックにおける各画素値のSAD(差分絶対値和)から判断される。
【0078】
注目ブロックBlkcurに対する動きベクトルV1は、次のようにして求められる。
【0079】
対象画像の注目ブロックBlkcurに対応して設けた参照画像のサーチエリアSa内において、読み出し位置(参照ブロック)を1画素分ずつずらしてデータを読み出していく。
【0080】
読み出した参照画像上のブロックBlkrefのデータと注目ブロックBlkcurのデータのSADを算出していく。
【0081】
サーチエリアSa中において各参照ブロックを演算した結果得られたSAD値の内、最も小さい値を得た対応ブロックを決定する。
【0082】
決定した対応ブロックから得た動きベクトル情報を、注目ブロックBlkcurに対する参照画像及び対象画像の間の動きベクトルとする。
【0083】
なおここで、ブロック間の類似度合いを求めるためにSADを使用しているが、SSD(Sum of Square Differrence:差分自乗和)など、他の計算方法を用いてもよい。
【0084】
図3には、上記処理手順を実行するための詳細なフローチャート例を示す。
【0085】
この方法では、サーチエリア3内を隈なく探索するので演算量が膨大になる。そのため、高速にマッチング点が得られるよう、後述のダイヤモンドサーチなどの手法が考案されている。
【0086】
<ダイヤモンドサーチ>
フルサーチブロックマッチングを高速化する方法としてダイヤモンドサーチがある。
【0087】
図4にダイヤモンドサーチを説明するための概念図を示す。
【0088】
(a)は、探索開始時の参照画像2上の開始位置(注目画素)と隣接画素を示し、(b)は、その結果に基づく次の探索の注目画素と隣接画素を示す。
【0089】
以下、ダイヤモンドサーチの処理手順を述べる。
【0090】
まず、図4(a)に示すように、参照画像2上の開始位置(注目画素O)及び上下左右の4方向に隣接する画素ABCDにおいてSADを計算する。
【0091】
注目画素のSADが最小であれば、注目画素が動きベクトルの終点となる。注目画素以外が最小の値をとる場合は、最小の値をとる隣接画素を次の注目画素とする。
【0092】
例えば、隣接画素Cが最小の値をとる場合の次の探索を図4(b)に示す。
【0093】
図4(b)に示すように、次の探索も同様に注目画素Oと4方向の隣接画素ABCDのSADを比較し、次の注目画素を決定する。
【0094】
以下同様に、注目画素が最小のSADとなるまで探索を続ける。
【0095】
図5には、上記処理手順を実行するための詳細なフローチャート例を示す。
【0096】
この手法は、開始点の選択や探索の打ち切り条件などが重要である。
【0097】
次の文献では、ダイヤモンドサーチを改良した手法が開示されている。
【0098】
S.Zhu and K.Ma,“A New Diamond Search Algorithm for Fast Block Matching Motion Estimation”,International Conference on Information, Communications and Signal Processing ICICS '97 Singapore, 9-12 September 1997。
【0099】
(小数画素精度での探索)
<小数画素精度の補間方法>
標準方式H.264/MPEG−4 AVCで使用されている小数画素精度補間について述べる。詳細は次の文献に述べられている。
【0100】
ITU-T Recommendation “H264:Advanced video coding for generic audiovisual services”。
【0101】
図6(a)に示すように、一方向に隣接する6画素を用いて、1/2画素精度の補間を行う。
【0102】
計算方法は、図6(b)に示すように6−TapFIRフィルタを使用する。求めたい画素位置を挟む、水平方向または垂直方向の左右(または上下)の3画素ずつ計6点の画素値を使って求める。
【0103】
求める1/2画素での画素値は、式(1)として求められる。
【0104】
1/2=(1/32)(P−5P+20P+20P−5P+P)(1)
また、1/4画素精度の補間では、前記1/2画素精度補間で得られた画素値を使用しさらに1/2ピッチで補間する。図7(a)に示すように、一方向に隣接する2画素を用いて、さらに1/2画素精度の補間を行う。
【0105】
補間は、図7(b)に示すように、上述した6−TapFIRフィルタを使用する1/2画素精度の補間とは異なり、単純な線形補間で行う(式(2))。
【0106】
1/2=(1/2)(P+P) (2)
整数画素精度での探索で得られた参照画像のマッチング点の周囲で、ブロックサイズ+2画素分の領域について補間画像を求め、その領域内でブロックマッチングを行い、SADが最小となる点をマッチングポイントとして動きベクトルを求める。
【0107】
(画像解像度に影響する特性)
上述してきたように、探索工程における注目ブロックと類似した参照ブロックの探索は、多大な計算量を有する。
【0108】
その理由の1つは、画像の解像度に応じた精度で探索する必要から、入力画像の高解像度部分に合わせた精度で探索を行うことにある。
【0109】
すなわち、十分な精度の得られないMTF(Moduler Transfer Function)値の低い(解像度の低い)領域でもMTF値の高い(解像度の高い)領域と同様の検出精度で動きベクトルの探索を行っている。
【0110】
しかしながら、撮像した画像は、撮像装置の光学特性によって解像度が画像の領域によって異なる。また同じ部分でも方向により解像度成分が異なる。
【0111】
本実施形態では、入力画像に依存しない光学特性を利用して、画像解像度の方向成分に応じて画像を領域分割し、それぞれの領域でその光学特性の画像解像度方向成分に応じた探索法を設定する。
【0112】
これにより、動きベクトル探索の精度を十分に得ることができない低解像度の画像領域において計算量を削減し、視覚的画像劣化が少ない画像符号化を実現できる探索処理を図っている。
【0113】
探索は画像の水平方向、垂直方向で行うため、水平方向、垂直方向の光学特性(例えばMTF、MTF)を求め、それに応じて領域分割し、それぞれの領域の光学特性(方向成分)に応じた探索法を設定する。
【0114】
以下に、まず光学特性による解像度(方向成分)の低下について述べる。MTFを例に採っているが、光学特性(解像度情報)としては、OTF、PSFなど、他の特性を用いてもよい。
【0115】
<MTF>
カメラなどの撮像装置における光学系の性能を表す指標の1つにMTF(Moduler Transfer Function)がある。
【0116】
MTFは、被写体の持つコントラストをどの程度忠実に再現できるかを空間周波数特性として表現したものである。空間周波数は、1[mm]当たりに含まれるパターン(正弦波など)数を示す。
【0117】
MTFは一般的に、周波数を固定(60本/mm、100本/mmなど)して、横軸に画像中心からの距離(像高)をとったグラフにおいて、画像中心から放射状の方向(Sagittal)と同心円方向(Tangential)の2方向についてプロットしたものとして表現される。
【0118】
図8は、MTFと像高の関係の代表的な例を示すグラフである。
【0119】
一般に、MTFは像高が高くなるに従って低下する傾向があり、また、放射状の方向(Sagittal)と同心円方向(Tangential)で異なる値をとることがある。その差異は、広角な光学系においては、顕著に現れる。
【0120】
また、MTFを計測する方法として、特許文献(特開2001−324413号公報)のような方法が開示されている。
【0121】
<画像処理>
一方、撮像された画像を動きベクトル検出処理の前に画像処理する場合がある。そのような場合には、画像処理の結果としての解像度情報を用いてもよい。
【0122】
例えば、特許文献(特開2009−284421号公報)では、広角な車載カメラで撮影した画像を歪み補正及び視点変換した画像を表示している。
【0123】
このような画像では、元の撮像系で撮影された画像に対して画像処理による拡大・縮小処理が行われており、特に拡大処理が行われている部分では解像度が低下している。
【0124】
生成される画像解像度は、同じ画像処理を適用している間は、画面のそれぞれの領域で一定である。
【0125】
(MTFの方向成分の算出)
ここでは、画像の解像度特性として撮像系のMTFを用いる場合を説明する。MTFの方向成分に応じて領域分割するために、まず水平・垂直方向のMTF成分を算出する。
【0126】
<光学系の設計データからの算出>
画像上の各座標における垂直及び水平方向のMTFは、光学系の設計データを用いてシミュレーションによって求めることができる。
【0127】
画像上の任意の点におけるスポットダイヤグラム(点光源から瞳面上のN個の格子点を通る光線が画像上に作る点群。光線追跡によって求められる)のN個の点の座標をx、yとする。Sagittal方向と画像の水平面のなす角をαとし、その方向の周波数をl本/mmとすると、Sagittal方向の周波数sとTangential方向の周波数tは、図9からそれぞれ式(3)及び式(4)のようになる。
【0128】
s=lcosα (3)
t=lsinα (4)
MTFの水平及び垂直方向の値、MTF(i,j)及びMTF(i,j)は、それぞれ式(5)及び式(6)のように表すことができ、スポットダイヤグラムから計算できる。
【0129】
【数1】

【0130】
<像高に対するMTF値からの算出>
光学系の設計データが入手できずに、図8のようなSagittal方向及びTangential方向のMTF値のみが得られるときの、MTFの水平及び垂直方向成分の値の求め方について述べる。
【0131】
図10のように画像中心(光軸と画像面の交点)を通る水平な直線と画像中心と注目ブロックの点P(i,j)を結んだ直線とのなす角がθのとき、P(i,j)における垂直方向及び水平方向のMTFを考える。
【0132】
像高lにおける、Sagittal方向及びTangential方向のMTFをS(l)、T(l)とする。
【0133】
図11に示すようにP(i,j)におけるMTFの水平及び垂直方向の値、MTF(i,j)及びMTF(i,j)は、式(7)及び式(8)として求められる。
【0134】
MTF(i,j)=|S(l)cosθ|+|T(l)sinθ| (7)
MTF(i,j)=|S(l)sinθ|+|T(l)cosθ| (8)
このように画像上のすべての点について、水平・垂直方向のMTFを計算によって求めることができる。
【0135】
(領域分割工程)
既述したように、図1の領域分割工程(ステップS1)で水平・垂直方向の解像度に応じて画像の領域を分割する。
【0136】
図12には、(a)水平・垂直方向のMTFに応じた領域分割の分割例と(b)その分割の基準例を示す。
【0137】
図12(b)の分割基準では、画像内の各座標における水平・垂直方向のMTF値と閾値T1及び閾値T2との大小関係により、3×3=9種類の領域(11〜13,21〜23,31〜33)に分けている。
【0138】
閾値T1、T2は、撮像素子の画素ピッチ、画像の符号化後の要求解像度など、及びMTFデータの周波数により決定する。
【0139】
分割された領域の例を、図12(a)に示している。光学特性に応じて画像の中央部ほど高解像度であり、周辺部へ行くほど解像度低下しているが、解像度の方向成分が微妙に異なっている。
【0140】
これらの分割された各領域毎に、それらの解像度成分に応じた探索法を設定するのが、図1の探索法設定工程(ステップS2)である。
【0141】
(探索法設定工程)
図12に示した、分割基準と、それに基づく領域分割例に従って、領域に対する探索法を変えて設定した例を説明する。
【0142】
分割された領域は9種類であり、以降、領域11とか領域33とか、呼称する。
【0143】
9種類の領域に対して、ブロックマッチング法で探索するが、既述したように、整数画素精度サーチ部による探索、小数画素精度サーチ部による探索のそれぞれにおいて、解像度の成分に応じた計算量の削減のための探索法の設定を行う。
【0144】
設定例を以下にリストアップする。
【0145】
<探索法設定例>
(1)領域11(MTF>T1かつMTF>T1)の探索法設定
通常のフルスペック探索を行う。例えば、フルサーチブロックマッチングやダイヤモンドサーチを行った後に小数画素精度(1/2画素または1/4画素など)の補間による探索を行う。
【0146】
(2)領域12、13、22、23、32、33(T1>MTF)の探索法設定
整数画素精度での探索処理後、小数画素精度での探索において水平方向の補間・探索を行わない。
【0147】
(3)領域21、22、23、31、32、33(T1>MTF)の探索法設定
整数画素精度での探索処理後、小数画素精度での探索において垂直方向の補間・探索を行わない。
【0148】
(4)領域13、23、33(T2>MTF)の探索法設定
1.整数画素精度での探索方法において、水平方向探索のステップを大きくする。例えば、図3に示すフローにおいて、iを加算するステップ数を2(通常は1)に変更する。
2.整数画素精度での探索方法において、水平方向探索の優先度を低くする。例えば、図13のフローチャートに示すように、ダイヤモンドサーチにおいて垂直方向のSADを先に計算し、垂直方向の隣接画素におけるSADが注目画素のSADより小さい場合は、水平方向の隣接画素のSADを計算せずにその画素を選択する。それ以外の場合は水平方向の隣接画素のSADも計算し、最も小さいSADの方向を選択して次の探索を行う。
【0149】
(5)領域31、32、33(T2>MTF)の探索法設定
1.整数画素精度での探索方法において、垂直方向探索のステップを大きくする。例えば、図3に示すフローにおいて、jを加算するステップ数を2(通常は1)に変更する。
2.整数画素精度での探索方法において、垂直方向探索の優先度を低くする。例えば、ダイヤモンドサーチにおいて水平方向のSADを先に計算し、水平方向の隣接画素におけるSADが注目画素のSADより小さい場合は、垂直方向の隣接画素のSADを計算せずにその画素を選択する。それ以外の場合は垂直方向の隣接画素のSADも計算し、最も小さいSADの方向を選択して次の探索を行う。
【0150】
上記(1)から(5)の探索法設定を適切に組み合わせて用いることにより、入力画像に依存しない光学特性を利用して、すなわち分割したそれぞれの領域でその画像解像度方向成分に応じた探索法を設定することで、動きベクトル検出精度を十分に得ることができない画像領域において探索のための計算量を削減しながら、結果として視覚的画像劣化が少ない画像符号化のための動きベクトルを検出することができる。
【0151】
<解像度やその方向性が異なる領域間の探索について>
注目ブロック4に対応する参照ブロック5のブロックマッチングによる探索は、注目ブロック4を設定している対象画像1を圧縮符号化するための動きベクトルV1を検出するためであり、注目ブロック4の該当する入力画像領域の光学特性を適用して探索法を設定すればよい。
【0152】
しかしながら、整数画素精度での探索において、解像度の方向性が異なる領域、例えば図12(a)において、対象画像1の処理(注目)ブロック4が右上の領域32にあり、参照画像2のブロック5が右下の領域32にある場合など、では解像度方向性の違いから、ブロックマッチングおけるSADの値が大きくなり、正しい動きベクトルが求められない場合がある。
【0153】
このように、解像度やその方向性が大きく異なるような領域に対しては、対象画像1の注目ブロック4の所属する領域のMTF周波数特性からFIRフィルタを構成し、参照画像2の対象領域に適用することによって、動きベクトルの誤検出を減少させることができる。
【0154】
<その他>
なお、上述の実施形態は、光学特性として撮像系のMTFを用いて説明した。
【0155】
動きベクトル検出の前に画像処理が行われるような場合には、その画像処理に起因する拡大等による画像内の領域ごとの水平・垂直方向の解像度を使用してもよい。
【0156】
また、解像度の算出方向を水平・垂直方向で説明したが、水平・垂直方向に限定する必要はなく、探索にかかわる方向の解像度を利用すればよい。
【0157】
上述のように、本実施形態に係る動きベクトル検出方法、及び動きベクトル検出プログラムによれば、ブロックマッチング法を用いて動きベクトルを検出するに際して、光学特性としての画像解像度の方向成分に応じて画像を領域分割し、それぞれの領域でその光学特性の画像解像度方向成分に応じた探索法を設定する。
【0158】
このように、入力画像に依存しない光学特性を利用することで、動きベクトル検出精度を十分に得ることができない画像領域において計算量を削減しながら、視覚的画像劣化が少ない画像符号化のための動きベクトルを検出することができる。
【0159】
なお、上述の実施形態は、すべての点で例示であって制限的なものではない。本発明の範囲は上記した説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0160】
1 対象画像
2 参照画像
3 サーチエリア
4 注目ブロック
5 参照ブロック

【特許請求の範囲】
【請求項1】
入力画像において、対象画像の注目ブロックに対して参照画像内の対応するブロックを探索する探索工程を備え、注目ブロックと対応するブロックの入力画像内での位置関係から動きベクトルを検出する動きベクトル検出方法であって、
入力画像における解像度情報の1つ以上の方向成分の値に応じて画像を複数種類の領域に分割する領域分割工程と、
前記領域分割工程で分割された領域の前記解像度情報の方向成分の値に応じて、前記探索工程において用いる探索法をそれぞれ設定する探索法設定工程と、を備える
ことを特徴とする動きベクトル検出方法。
【請求項2】
前記領域分割工程において、
入力画像を撮像した撮像装置の光学特性を、領域分割のための前記解像度情報として用いる
ことを特徴とする請求項1に記載の動きベクトル検出方法。
【請求項3】
前記撮像装置の光学特性は、MTF、OTF、PSFの何れかである
ことを特徴とする請求項2に記載の動きベクトル検出方法。
【請求項4】
前記領域分割工程において、
入力画像の前処理における画像処理内容により決定される前記解像度情報を用いる
ことを特徴とする請求項1に記載の動きベクトル検出方法。
【請求項5】
前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の移動ステップ数を変更する
ことを特徴とする請求項1から4の何れか1項に記載の動きベクトル検出方法。
【請求項6】
前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の優先移動方向を変更する
ことを特徴とする請求項1から4の何れか1項に記載の動きベクトル検出方法。
【請求項7】
前記探索法設定工程において、
小数画素精度補間による探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の補間方法を変更する
ことを特徴とする請求項1から6の何れか1項に記載の動きベクトル検出方法。
【請求項8】
コンピュータに、
入力画像において、対象画像の注目ブロックに対して参照画像内の対応するブロックを探索する探索工程を実行させ、注目ブロックと対応するブロックの入力画像内での位置関係から動きベクトルの検出を実行させる動きベクトル検出プログラムであって、
該コンピュータに、
入力画像における解像度情報の1つ以上の方向成分の値に応じて画像を複数種類の領域に分割する領域分割工程と、
前記領域分割工程で分割された領域の前記解像度情報の方向成分の値に応じて、前記探索工程において用いる探索法をそれぞれ設定する探索法設定工程と、を実行させる
ことを特徴とする動きベクトル検出プログラム。
【請求項9】
前記領域分割工程において、
入力画像を撮像した撮像装置の光学特性を、領域分割のための前記解像度情報として用いる
ことを特徴とする請求項8に記載の動きベクトル検出プログラム。
【請求項10】
前記撮像装置の光学特性は、MTF、OTF、PSFの何れかである
ことを特徴とする請求項9に記載の動きベクトル検出プログラム。
【請求項11】
前記領域分割工程において、
入力画像の前処理における画像処理内容により決定される前記解像度情報を用いる
ことを特徴とする請求項8に記載の動きベクトル検出プログラム。
【請求項12】
前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の移動ステップ数を変更する
ことを特徴とする請求項8から11の何れか1項に記載の動きベクトル検出プログラム。
【請求項13】
前記探索法設定工程において、
ブロックマッチングによる探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の優先移動方向を変更する
ことを特徴とする請求項8から11の何れか1項に記載の動きベクトル検出プログラム。
【請求項14】
前記探索法設定工程において、
小数画素精度補間による探索を設定し、分割された領域の前記解像度情報の方向成分の値に応じて探索時の補間方法を変更する
ことを特徴とする請求項8から13の何れか1項に記載の動きベクトル検出プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2011−197727(P2011−197727A)
【公開日】平成23年10月6日(2011.10.6)
【国際特許分類】
【出願番号】特願2010−60575(P2010−60575)
【出願日】平成22年3月17日(2010.3.17)
【出願人】(000001270)コニカミノルタホールディングス株式会社 (4,463)
【Fターム(参考)】