(57)【特許請求の範囲】
【請求項１】
動画像データのフレームを複数のブロックに分割し、分割したブロック毎に前フレームと現フレームとのマッチングをとる動きベクトル検出装置であって、
各ブロックの前フレームと現フレームの画素データの差分の絶対値の積算値を探索位置毎に求め、前記積算値が最小となる探索位置における前フレームと現フレームのブロックの位置の差を当該ブロックの動きベクトルとし、前記最小となる検索位置の積算値の先鋭度を当該ブロックの動きベクトルの評価値とする処理部を有し、
前記処理部は、
前記各ブロックにおける前記先鋭度は、前記最小となる積算値とその次に小さい積算値の差分とし、
前記各ブロックで求めた前記動きベクトルから画面全体の動きベクトルを決定する際に、対応する前記評価値が所定の閾値以上となる前記動きベクトルのみを有効とする
動きベクトル検出装置。
【請求項２】
前記処理部は、
各ブロックで求めた前記動きベクトルのうち、対応する前記評価値が最も高いものを画面全体の動きベクトルとして採用する
請求項１に記載の動きベクトル検出装置。
【請求項３】
前記処理部は、
前記各ブロックにおける前記先鋭度は、前記積算値の最小値と最大値の差分で正規化したときの、０以外の最も小さい値とする
請求項１または２に記載の動きベクトル検出装置。
【請求項４】
動画像の各フレームを複数のブロックに分割する第１ステップと、
前記各ブロックの前フレームと現フレームの画素データの差分の絶対値の積算値を探索位置毎に求める第２ステップと、
前記積算値が最小となる探索位置における前フレームと現フレームのブロック位置の差を当該ブロックの動きベクトルとすると同時に、前記最小となる探索位置の積算値の先鋭度を当該ブロックの動きベクトルの評価値とする第３ステップと、を有し、
前記第３ステップにおいて、
前記各ブロックにおける前記先鋭度は、前記最小となる積算値とその次に小さい積算値の差分とし、
前記各ブロックで求めた前記動きベクトルから画面全体の動きベクトルを決定する際に、対応する前記評価値が所定の閾値以上となる前記動きベクトルのみを有効とする
動きベクトル検出方法。
【請求項５】
光学系と、
前記光学系を通過した被写体像を撮像する撮像素子と、
前記撮像素子から得られる動画像データのフレームを複数のブロックに分割し、分割したブロック毎に前フレームと現フレームとのマッチングをとる前記請求項１から３のいずれか一に記載の動きベクトル検出装置と
を有する撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像の手ぶれを検出・補正することが可能な動きベクトル検出装置およびその方法、並びに撮像装置に関し、特に動画像データを複数のブロックに分割し、ブロック毎に検出された動きベクトルの信頼性を評価する際の精度の向上に関するものである。
【背景技術】
【０００２】
近年、撮像装置としてカメラの小型化が進み、手振れ補正技術が注目をされてきている。
【０００３】
その要因として、カメラの小型化により、写真撮影においてホールド性の低下したことや、携帯電話に搭載のカメラなどの撮影方法として、片手での撮影など従来の撮影形態とくらべ自由度が広がっていることで手振れが発生し易くなっていることが挙げられる。
【０００４】
このように、撮影する際に、種々の方法や安定性の無い状態で撮影する場合、シャッターボタンを押した際にカメラがぶれて、手振れが発生してしまう。
【０００５】
この問題を解消すべく、専用の機構を設け物理的に手振れ補正する装置が、一眼レフや最近ではコンパクトカメラにも搭載されている。
【０００６】
たとえば、ブレに合わせてレンズを傾斜させ補正する、光学式手振れ補正装置が製品化されているが、近年の小型化や携帯電話カメラへの搭載を考慮するとスペース的にも非常に困難である。
そのため、画像処理によってぶれのない動画像を得ることができる撮像装置などが種々提案されている。
【０００７】
画像処理による手ぶれ補正は、動画像の連続する前後フレーム間の動きベクトルを検出し、画像出力の際に画像を読み出す領域を動きベクトル分だけずらすことで、ぶれのない画像を生成するものである。
【特許文献１】特開平６−１６９４５２号公報
【特許文献２】特開平７−１７７５１９号公報
【特許文献３】特開２００７−３００５９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
動きベクトルの検出は、例えばブロックマッチングなどの方法が一般的であり、画像を複数のブロックに分割し、ブロック毎に画像の相関をとって動きベクトルを求め、最終的に画面全体の動きベクトルを決定するものがある。
【０００９】
しかし、ぶれている画像や平坦な被写体の画像、あるいは縦縞など同じような模様の多い画像などでは誤検出しやすく、多くのブロックで誤検出が発生してしまうと効果的なぶれの補正に支障をきたす場合がある。
【００１０】
特許文献１および２においては、動きベクトルの検出方法に関する技術は開示されているが、その信頼性については言及されていない。動きベクトルは、被写体や撮影の条件によって誤った検出が行われる場合があり、誤った動きベクトルを用いると手ブレ補正に用いる場合にはかえってブレを増長することになりかねない。
【００１１】
また、特許文献３には、残差の積分値をもとにブロックを選択する手法が開示されている。この方法においても、真に信頼性の高い動きベクトルを選択することは困難である。
【００１２】
本発明の目的は、ブロック毎に検出された動きベクトルの信頼性を判定し、検出精度を向上することが可能な動きベクトル検出装置およびその方法、並びに撮像装置を提供することにある。
【課題を解決するための手段】
【００１３】
本発明の第１の観点は、動画像データのフレームを複数のブロックに分割し、分割したブロック毎に前フレームと現フレームとのマッチングをとる動きベクトル検出装置であって、各ブロックの前フレームと現フレームの画素データの差分の絶対値の積算値を探索位置毎に求め、前記積算値が最小となる探索位置における前フレームと現フレームのブロックの位置の差を当該ブロックの動きベクトルとし、前記最小となる検索位置の積算値の先鋭度を当該ブロックの動きベクトルの評価値とする処理部を有し、前記処理部は、前記各ブロックにおける前記先鋭度は、前記最小となる積算値とその次に小さい積算値の差分とし、前記各ブロックで求めた前記動きベクトルから画面全体の動きベクトルを決定する際に、対応する前記評価値が所定の閾値以上となる前記動きベクトルのみを有効とする。
【００１５】
好適には、前記処理部は、各ブロックで求めた前記動きベクトルのうち、対応する前記評価値が最も高いものを画面全体の動きベクトルとして採用する。
【００１７】
好適には、前記処理部は、前記各ブロックにおける前記先鋭度は、前記積算値の最小値と最大値の差分で正規化したときの、０以外の最も小さい値とする。
【００１８】
本発明の第２の観点の動きベクトル検出方法は、動画像の各フレームを複数のブロックに分割する第１ステップと、前記各ブロックの前フレームと現フレームの画素データの差分の絶対値の積算値を探索位置毎に求める第２ステップと、前記積算値が最小となる探索位置における前フレームと現フレームのブロック位置の差を当該ブロックの動きベクトルとすると同時に、前記最小となる探索位置の積算値の先鋭度を当該ブロックの動きベクトルの評価値とする第３ステップと、を有し、前記第３ステップにおいて、前記各ブロックにおける前記先鋭度は、前記最小となる積算値とその次に小さい積算値の差分とし、前記各ブロックで求めた前記動きベクトルから画面全体の動きベクトルを決定する際に、対応する前記評価値が所定の閾値以上となる前記動きベクトルのみを有効とする。
【００１９】
本発明の第３の観点の撮像装置は、各ブロックの前フレームと現フレームの画素データの差分の絶対値の積算値を探索位置毎に求め、前記積算値が最小となる探索位置における前フレームと現フレームのブロックの位置の差を当該ブロックの動きベクトルとし、前記最小となる検索位置の積算値の先鋭度を当該ブロックの動きベクトルの評価値とする処理部を有し、前記処理部は、前記各ブロックにおける前記先鋭度は、前記最小となる積算値とその次に小さい積算値の差分とし、前記各ブロックで求めた前記動きベクトルから画面全体の動きベクトルを決定する際に、対応する前記評価値が所定の閾値以上となる前記動きベクトルのみを有効とする。
【発明の効果】
【００２０】
本発明によれば、フレーム間の動きベクトルを精度良く検出し、ブレを抑えた動画像を得ることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施形態を図面に関連付けて説明する。
【００２２】
図１は、本発明に係る撮像装置の一実施形態を示すブロック図である。
【００２３】
本撮像装置１０は、光学系１１、撮影制御部１２、操作部１３、撮像部１４、画像処理部１５、動きベクトル検出部１６、メモリ１７、および記録部１８を有している。
これらの構成要素のうち、画像処理部１５、動きベクトル検出部１６、メモリ１７等により処理部が構成される。
【００２４】
本撮像装置１０は、ブロックマッチングによる動きベクトル検出方法において、ブロック毎に求めた動きベクトルのうち、どれを画面全体の動きベクトルとして採用するのかの判断材料となる評価値を実現している。
具体的には、フレーム間で探索位置毎に画素データの差分の絶対値の積算値を求め、その最小値とそれ以外の値との差（先鋭度）が大きければ、最小値が得られたときの前フレームと現フレームの位置関係がずれ量として確からしいと判断できる。
この位置関係が示す動きベクトルは信頼性が高いものとなる。
【００２５】
本実施形態の撮像装置１０は、手ブレ補正撮影のＯＮ／ＯＦＦのモード切り換え部を有している。
そして、手ブレ補正撮影ＯＮのときには、撮像装置１０は撮影画像間の位置ズレを補正し、ブレ低減を図った画像を形成する機能を有している。
【００２６】
シャッターボタンなどの操作部１３より撮影指示を受けた撮影制御部１２は、被写体の明るさから最適なシャッタースピード、絞り、ゲインの値を算出し、撮像部１４に制御信号を送る。
【００２７】
撮影制御部１２は、露出制御を行うとともに、操作部１３などの操作入力を持ち、それらの入力に応じて、システム全体の動作を決定し、光学系１１、撮像部１４等を制御し、システム全体の調停制御を司るものである。
【００２８】
撮像部１４は、ＣＣＤやＣＭＯＳセンサなどの撮像素子１４１を含んで形成され、光学系１１を通った被写体の光学像を受けて画像信号に変換し、変換した画像信号からＹＵＶ形式の画像データを生成し、画像処理部１５に出力する。
【００２９】
画像処理部１５では、撮像部１４により供給された画像データをメモリ１７に格納し、メモリ１７に格納された画像信号に対し信号処理を行う。
【００３０】
動きベクトル検出部１６では、現フレームと前フレームの画像間の動きベクトル（位置ズレ量）と相関評価値を検出する。
【００３１】
動きベクトルの検出については、画像を一定の大きさの小領域(ブロック)に分割し、各ブロックが前のフレームのどこに対応するかを探し、対応するブロックの位置の差を動きベクトルとする。
【００３２】
検出した動きベクトルに応じてメモリ中の画像の切り出し位置を変えて、動画像として
記録部１８にて記録媒体に記録する。
【００３３】
動きベクトル検出部１６は、撮像素子から得られる動画像データを複数のブロックに分割し、分割したブロック毎に前フレームと現フレームとのマッチングをとる。
動きベクトル検出部１６は、各ブロックの前フレームと現フレームの画素データの差の絶対値の積算値を探索位置毎に求める。
そして、動きベクトル検出部１６は、積算値が最小となる探索位置における前フレームと現フレームのブロックの位置の差をそのブロックの動きベクトルとし、最小となる部分の積算値の先鋭度をブロックの動きベクトルの評価値とする機能を含む。
【００３４】
動きベクトル検出部１６は、各ブロックで求めた動きベクトルから画面全体の動きベクトルを決定する際に、対応する評価値が所定の閾値以上となる動きベクトルのみを有効とする。
動きベクトル検出部１６は、各ブロックで求めた動きベクトルのうち、対応する評価値が最も高いものを画面全体の動きベクトルとして採用する機能を有する。
【００３５】
動きベクトル検出部１６は、各ブロックにおける先鋭度は、最小となる積算値とその次に小さい積算値の差分とする。
【００３６】
動きベクトル検出部１６は、各ブロックにおける先鋭度は、積算値の最小値と最大値の差分で正規化したときの、０以外の最も小さい値とする。
より具体的には、動きベクトル検出部１６は、最小値の先鋭度は、各ブロックで求めた探索位置毎の差分絶対値の積算値の最小値を０、最大値を１００に正規化したときの、０以外の最も小さい値とする。
【００３７】
以下、ブロック毎に動きベクトルと相関評価値を求める方法についてさらに詳細に説明する。
【００３８】
図２は、連続する画像の基準ブロックと参照ブロックを模式的に示した図である。
【００３９】
図２に示すように、動画像データの連続する前フレーム２１と現フレーム２２において、前フレーム２１を複数ブロックに分割した領域２３である基準画像が、現フレーム２２の探索領域２４である参照画像の中でどの位置に相当するかを画像の相関（画素データの差分）を取りながら１画素単位でマッチングを行う。
【００４０】
図３は、１画素単位でずらした探索位置毎の差分積算値（画素データの差分の絶対値の積分値）を示す図である。
画像間の相関が最も高い位置では差分積算値は極小を示し、このポイントにおける前フレームと現フレームのブロックの位置の差を動きベクトルとする。
【００４１】
図４は、分かりやすくするために図３の極小値を含む１行の差分積算値をグラフにしたものである。
図４において、横軸が水平方向探索位置を、縦軸が差分積算値をそれぞれ示している。
図４において、ある１点において鋭角に極小点を示している。図４では水平方向探索位置が−３の位置で極小点を示している。
【００４２】
しかし、ブロック内に同じような模様が連続する被写体や変化の小さい平坦な画像などがある場合には、図５や図６のように極小点の値に近い値が複数存在することになり、ノイズやぶれの影響により正しい相関ポイントを極小点として検出できなくなってしまう。
【００４３】
これを防ぐために、本実施形態においては、相関の評価値を導入する。
具合的には、本実施形態においては、極小点の値と２番目に小さい値の間の大きさを評価値とし、この評価値が大きいほど検出した動きベクトルの信頼性が高いとする。
【００４４】
また、ブロックによって明るさや被写体の模様が異なることで、差分積算値の大きさ自体が変わってしまうことから、ブロックの差分積算値の最小値を「０」、最大値を「１００」と規格化したときの評価値を求める。
【００４５】
次に、上記構成による動きベクトル検出動作を図７のフローチャートに関連付けて説明する。
【００４６】
＜ステップＳＴ１＞
ステップＳＴ１において、動きベクトル検出部１６は、連続する前フレームと現フレームの画像から縦横の画素を間引いた粗い画像を生成し、複数（ｎ）のブロックに分割する。
【００４７】
＜ステップＳＴ２＞
ステップＳＴ２において、動きベクトル検出部１６は、ブロック毎に基準画像に対する探索範囲の探索位置ごとのフレーム間の差分積算値を求める。
【００４８】
＜ステップＳＴ３＞
ステップＳＴ３において、動きベクトル検出部１６は、たとえばブロック内での差分積算値の最小値を「０」、最大値を「１００」として規格化する。
【００４９】
＜ステップＳＴ４＞
ステップＳＴ４において、動きベクトル検出部１６は、規格化した差分積算値の「０」以外の最小値を求め、この値をブロックの評価値とする。
【００５０】
＜ステップＳＴ５＞
ステップＳＴ５において、動きベクトル検出部１６は、全てのブロックで動きベクトルと評価値を求め、評価値の大きい複数（ｍ [ｍ＜ｎ]）ブロックを有効ブロックとする。
【００５１】
＜ステップＳＴ６＞
ステップＳＴ６において、動きベクトル検出部１６は、間引く前の画像の有効ブロックに対して詳細マッチングを行い、動きベクトルと評価値を求める。
【００５２】
＜ステップＳＴ７＞
ステップＳＴ７において、動きベクトル検出部１６は、評価値の最も大きいブロックの動きベクトルを画面全体の動きベクトルとする。
そして、得られた動きベクトルを用いて動き補償処理等が行われる。
【００５３】
以上説明したように、本実施形態によれば、動きベクトル検出部１６は、撮像素子から得られる動画像データを複数のブロックに分割し、分割したブロック毎に前フレームと現フレームとのマッチングをとる。
動きベクトル検出部１６は、各ブロックの前フレームと現フレームの画素データの差の絶対値の積算値を探索位置毎に求める。
そして、動きベクトル検出部１６は、積算値が最小となる探索位置における前フレームと現フレームのブロックの位置の差をそのブロックの動きベクトルとし、最小となる部分の積算値の先鋭度をブロックの動きベクトルの評価値とする機能を含む。
したがって、本実施形態によれば、以下の効果を得ることができる。
【００５４】
エッジのはっきりした画像をマッチングする場合には差分積算値の極小値は鋭角的に示され評価値も大きく、変化の小さい画像の場合には差分積算値の極小値付近がなだらかになり評価値も小さくなる。
誤りが起こりやすい被写体は画面全体の動きベクトルを決定する対象ブロックから省くことができ、評価値の大きいブロックを有効ブロックとすることができる。
パターンマッチングの２段階探索の場合には、１段階目の粗い画像においてブロック毎の動きベクトルと評価値を求め、評価値の大きい、すなわち信頼性の高いブロックのみピックアップし、２段階目の詳細画像のマッチングを行うことができる。
また、縦縞のような同じ模様の連続する画像に対する誤検出を大幅に減少することに寄与する。
【図面の簡単な説明】
【００５５】
【図１】本発明に係る画像処理装置の一実施形態を示すブロック図である。
【図２】連続する画像の基準ブロックと参照ブロックを模式的に示した図である。
【図３】ブロックでの各探索位置の差分積算値を示した図である。
【図４】ブロックでの各探索位置の差分積算値を示した図である。
【図５】ブロックでの各探索位置の差分積算値を示した図である。
【図６】ブロックでの各探索位置の差分積算値を示した図である。
【図７】本実施形態に係る動きベクトル検出動作を説明するためのフローチャートである。
【符号の説明】
【００５６】
１０・・・撮像装置、１１・・・光学系、１２・・・撮影制御部、１３・・・操作部、１４・・・撮像部、１５・・・画像処理部、１６・・・動きベクトル検出部、１７・・・メモリ、１８・・・記録部。
【図１】
0005177513.tif 000002
【図２】
0005177513.tif 000003
【図４】
0005177513.tif 000004
【図５】
0005177513.tif 000005
【図６】
0005177513.tif 000006
【図７】
0005177513.tif 000007
【図３】
0005177513.tif 000008