(57)【要約】【課題】動きベクトルの算出精度を高める。【解決手段】動きベクトル測定領域設定部１１は、画像上に、複数枚の画像間の動きベクトルを測定するための動きベクトル測定領域を少なくとも２つ以上設定する。動きベクトル演算部１３は、動きベクトル測定領域の各々において、複数枚の画像間の動きベクトルを求める。動きベクトル信頼性判定部１４は、各動きベクトルの確からしさを示す信頼性を判定する。動きベクトル補正処理部１５は、信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、高信頼性動きベクトルに基づいて、低信頼性動きベクトルと置き換える動きベクトルを求める。【選択図】図２
2011171991.tif 000002
【特許請求の範囲】
【請求項１】
基準画像および位置合わせ画像を含む複数枚の画像間の位置合わせを行う画像処理装置であって、
前記基準画像および位置合わせ画像の少なくとも一方に、前記基準画像および位置合わせ画像間の動きベクトルを測定するための動きベクトル測定領域を複数設定する動きベクトル測定領域設定部と、
前記動きベクトル測定領域の各々において、前記基準画像および位置合わせ画像間の動きベクトルを求める動きベクトル演算部と、
前記動きベクトルの確からしさを示す信頼性を判定する信頼性判定部と、
前記信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に前記信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、前記高信頼性動きベクトルに基づく置換動きベクトルを前記低信頼性動きベクトルと置き換える動きベクトル置換部と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記動きベクトル置換部は、前記置換動きベクトルとして、前記低信頼性動きベクトルの近傍に存在する高信頼性動きベクトルの平均ベクトルを求めることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記動きベクトル置換部は、前記置換動きベクトルとして、前記低信頼性動きベクトルの近傍に存在する高信頼性動きベクトルの中で、最も信頼性の高い動きベクトルを求めることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記動きベクトル置換部は、前記置換動きベクトルとして、前記低信頼性動きベクトルの近傍に存在する高信頼性動きベクトルの信頼性に応じて、前記高信頼性動きベクトルを重み付け平均した動きベクトルを求めることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記動きベクトル置換部は、前記複数枚の画像間の一致度合いを示す一致指標に基づいて、前記動きベクトルを求めるものであって、
前記一致指標と前記動きベクトルの大きさとの関係を定めた相関マップを記憶する相関マップ記憶部と、
前記相関マップに基づいて、前記置換動きベクトルの大きさに対応する一致指標を求める一致指標演算部と、
をさらに備え、
前記動きベクトル置換部は、前記置換動きベクトルの大きさに対応する一致指標に基づいて、前記置換動きベクトルを前記低信頼性動きベクトルと置き換えるか否かを判定することを特徴とする請求項１から請求項４のいずれか一項に記載の画像処理装置。
【請求項６】
前記動きベクトル置換部は、前記置換動きベクトルの大きさに対応する一致指標が所定の一致度より高いことを示している場合に、前記置換動きベクトルを前記低信頼性動きベクトルと置き換え、前記一致指標が前記所定の一致度以下を示している場合には、前記置換動きベクトルを前記低信頼性動きベクトルと置き換えないことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記信頼性判定部は、少なくとも３段階以上のレベルで信頼性を判定するものであって、
前記動きベクトル置換部は、任意の処理対象動きベクトルについて、当該処理対象動きベクトルの信頼性より高い高信頼性動きベクトルが存在する場合、前記高信頼性動きベクトルに基づいて、前記処理対象動きベクトルと置き換える置換動きベクトルを求めることを特徴とする請求項１に記載の画像処理装置。
【請求項８】
前記動きベクトル置換部は、前記置換動きベクトルとして、前記処理対象動きベクトルの近傍に存在する高信頼性動きベクトルの平均ベクトルを求めることを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記動きベクトル置換部は、前記置換動きベクトルとして、前記処理対象動きベクトルの近傍に存在する高信頼性動きベクトルの中で、最も信頼性の高い動きベクトルを前記低信頼性動きベクトルと置換することを特徴とする請求項７に記載の画像処理装置。
【請求項１０】
前記動きベクトル置換部は、前記置換動きベクトルとして、前記処理対象動きベクトルの近傍に存在する高信頼性動きベクトルの信頼性に応じて、前記高信頼性動きベクトルを重み付け平均した動きベクトルを求めることを特徴とする請求項７に記載の画像処理装置。
【請求項１１】
前記動きベクトル置換部は、前記複数枚の画像間の一致度合いを示す一致指標に基づいて、前記動きベクトルを求めるものであって、
前記一致指標と前記動きベクトルの大きさとの関係を定めた相関マップを記憶する相関マップ記憶部と、
前記相関マップに基づいて、前記置換動きベクトルの大きさに対応する一致指標を求める一致指標演算部と、
をさらに備え、
前記動きベクトル置換部は、前記置換動きベクトルの大きさに対応する一致指標に基づいて、前記置換動きベクトルを前記処理対象動きベクトルと置き換えるか否かを判定することを特徴とする請求項７から請求項１０のいずれか一項に記載の画像処理装置。
【請求項１２】
前記動きベクトル置換部は、前記置換動きベクトルの大きさに対応する一致指標が所定の一致度より高いことを示している場合に、前記置換動きベクトルを前記処理対象動きベクトルと置き換え、前記一致指標が前記所定の一致度以下を示している場合には、前記置換動きベクトルを前記処理対象動きベクトルと置き換えないことを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
請求項１から請求項１２のいずれか一項に記載の画像処理装置を有することを特徴とする電子機器。
【請求項１４】
基準画像および位置合わせ画像を含む複数枚の画像間の位置合わせを行う画像処理方法であって、
前記基準画像および位置合わせ画像の少なくとも一方に、前記基準画像および位置合わせ画像間の動きベクトルを測定するための動きベクトル測定領域を複数設定するステップと、
前記動きベクトル測定領域の各々において、前記基準画像および位置合わせ画像間の動きベクトルを求めるステップと、
前記動きベクトルの確からしさを示す信頼性を判定するステップと、
前記信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に前記信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、前記高信頼性動きベクトルに基づく置換動きベクトルを前記低信頼性動きベクトルと置き換えるステップと、
を備えることを特徴とする画像処理方法。
【請求項１５】
基準画像および位置合わせ画像を含む複数枚の画像間の位置合わせを行うための画像処理プログラムであって、
前記基準画像および位置合わせ画像の少なくとも一方に、前記基準画像および位置合わせ画像間の動きベクトルを測定するための動きベクトル測定領域を複数設定するステップと、
前記動きベクトル測定領域の各々において、前記基準画像および位置合わせ画像間の動きベクトルを求めるステップと、
前記動きベクトルの確からしさを示す信頼性を判定するステップと、
前記信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に前記信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、前記高信頼性動きベクトルに基づく置換動きベクトルを前記低信頼性動きベクトルと置き換えるステップと、
をコンピュータに実行させるための画像処理プラグラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数枚の画像間の位置合わせを行う技術に関する。
【背景技術】
【０００２】
画像の高自由度な変形に対応できる位置合わせ手法として、画像を複数の領域に分割し、領域毎に位置合わせする方法が知られている。分割領域には、位置合わせに適した領域と、位置合わせに適さない領域がある。例えば、低コントラストパターンや繰り返しパターン等の領域は、位置合わせに適さない領域であり、求めた動きベクトルの信頼性は低い。位置合わせに適さない領域において正しい動きベクトルを推定し、適切な写像関係を求めることは、位置合わせ処理を安定化させるうえで重要である。
【０００３】
この課題に対して、特許文献１では、領域ごとの動きベクトルについて、それぞれ周囲の平均ベクトルと、対象位置の動きベクトルを比較し、その差が大きいときは、対象位置の動きベクトルを平均ベクトルで置き換えている。これは、確率的に信頼性が高い動きベクトルの方が、信頼性が低い動きベクトルより多いことを仮定しており、局所的に発生した信頼性が低い動きベクトルを、周囲の信頼性が高い動きベクトルで補正する処理と考えることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１２４９５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、実際の撮影環境においては、空や海、壁など、比較的位置合わせの手がかりが少ない背景が写りこむことは頻繁にある。このような画像範囲では、信頼性が低い動きベクトルの方が、信頼性が高い動きベクトルより多くなるため、確率的に信頼性が高い動きベクトルの方が、信頼性が低い動きベクトルより多いという仮定が成り立たない。従って、引用文献１の手法では、位置合わせの手がかりが少ない画像範囲における低信頼性の動きベクトルを補正する場合において、周囲の信頼性が低い動きベクトルを用いて補正用の動きベクトルを算出するため、かえって、当初求めた動きベクトルの指し示す位置より、相関が低いところに写像されてしまう可能性があった。
【０００６】
このことについて図を用いて詳しく説明する。背景に位置合わせの手がかりが多く存在する画像の一例を図１３に示す。この例では、人物１３１の背景領域に多数の木１３２が存在するため、信頼性の高い動きベクトルが多く存在する。従って、位置合わせの手がかりが少ない空や地面などの領域において、信頼性が低い動きベクトルが存在したとしても、周囲の信頼性が高い動きベクトルを用いて修正することで、信頼性の低い動きベクトルを補正することは可能である。
【０００７】
一方、背景に位置合わせの手がかりが少ない画像の一例を図１４（ａ）に示す。このケースは、背景領域において縦方向の筋があるものの、位置合わせの手がかりが少ない。この場合、着目領域１４１では、縦方向の移動量を正しく求めることはできないが、横方向の移動量は正しく求めることは可能である。しかし、この着目領域１４１の動きベクトルについて、周囲の動きベクトルから補正すると、図１４（ｂ）に示すように、本来、正しく移動量を求めることが出来ていた横方向についても、ずれて補正されてしまうことがある。図１４（ｂ）の領域１４２は、補正後の動きベクトルに基づいて、領域１４１を移動させた領域である。これが、位置合わせの不安定要因となっていた。
【０００８】
本発明は、上記課題に鑑みてなされたものであり、位置合わせの手がかりが少ない画像範囲において、相関が低い場所に位置合わせされることを防いで、位置合わせを安定化させることを目的とする。
【課題を解決するための手段】
【０００９】
本発明のある態様に係る画像処理装置は、基準画像および位置合わせ画像を含む複数枚の画像間の位置合わせを行う画像処理装置であって、前記基準画像および位置合わせ画像の少なくとも一方に、前記基準画像および位置合わせ画像間の動きベクトルを測定するための動きベクトル測定領域を複数設定する動きベクトル測定領域設定部と、前記動きベクトル測定領域の各々において、前記基準画像および位置合わせ画像間の動きベクトルを求める動きベクトル演算部と、前記動きベクトルの確からしさを示す信頼性を判定する信頼性判定部と、前記信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に前記信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、前記高信頼性動きベクトルに基づく置換動きベクトルを前記低信頼性動きベクトルと置き換える動きベクトル置換部と、を備えることを特徴とする。
【００１０】
本発明の別の態様に係る画像処理方法は、複数枚の画像間の位置合わせを行う画像処理方法であって、画像上に、前記複数枚の画像間の動きベクトルを測定するための動きベクトル測定領域を少なくとも２つ以上設定するステップと、前記動きベクトル測定領域の各々において、前記複数枚の画像間の動きベクトルを求めるステップと、前記動きベクトルの確からしさを示す信頼性を判定するステップと、前記信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に前記信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、前記高信頼性動きベクトルに基づく置換動きベクトルを前記低信頼性動きベクトルと置き換えるステップと、
を備えることを特徴とする。
【００１１】
本発明のさらに別の態様に係る画像処理プログラムは、複数枚の画像間の位置合わせを行うための画像処理プログラムであって、画像上に、前記複数枚の画像間の動きベクトルを測定するための動きベクトル測定領域を少なくとも２つ以上設定するステップと、前記動きベクトル測定領域の各々において、前記複数枚の画像間の動きベクトルを求めるステップと、前記動きベクトルの確からしさを示す信頼性を判定するステップと、前記信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に前記信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、前記高信頼性動きベクトルに基づく置換動きベクトルを前記低信頼性動きベクトルと置き換えるステップと、をコンピュータに実行させることを特徴とする。
【００１２】
これら態様によれば、低信頼性動きベクトルの近傍に高信頼性の動きベクトルが存在する場合、当該高信頼性動きベクトルに基づいて求めた置換動きベクトルを、低信頼性動きベクトルと置き換えるので、周囲に存在する信頼性の低い動きベクトルの影響を受けて、誤った動きベクトルに置き換えられてしまうのを防ぐことができる。これにより、位置合わせの手がかりが少ない画像領域においても、精度の高い動きベクトルを求めて、位置合わせを安定的に行うことができる。
【発明の効果】
【００１３】
本発明によれば、信頼性が低いと判定された動きベクトルについて、周囲の動きベクトルの信頼性に応じて補正するので、周囲に存在する信頼性の低い動きベクトルの悪影響を抑制することができ、位置合わせ処理を安定化させることができる。
【図面の簡単な説明】
【００１４】
【図１】第１の実施形態における画像処理装置の構成を示す図である。
【図２】第１の実施形態における位置合わせ処理部の構成を示す図である。
【図３】第１の実施形態における画像処理装置によって行われる処理内容を示すフローチャートである。
【図４】図４（ａ）および（ｂ）は、動きベクトル測定領域設定部と位置合わせ基準領域設定部の処理内容を説明するための図である。
【図５】動きベクトル補正処理部で行われる処理内容を示すフローチャートである。
【図６】周囲の高信頼性の動きベクトルに基づいて、処理対象である低信頼性の動きベクトルを補正する方法を説明するための図である。
【図７】動きベクトル補正処理部で行われる変形処理の内容を示すフローチャートである。
【図８】動きベクトル補間処理部の処理内容を説明するための図である。
【図９】第１の実施形態における画像処理装置の効果を説明するための図である。
【図１０】第２の実施形態における動きベクトル補正処理部で行われる処理の内容を示すフローチャートである。
【図１１】第３の実施形態における位置合わせ処理部の構成を示す図である。
【図１２】第３の実施形態における動きベクトル補正処理部のフローチャートを示す図である。
【図１３】背景に位置合わせの手がかりが多く存在する画像例を示す図である。
【図１４】背景に位置合わせの手がかりが少ない画像例を示す図である。
【発明を実施するための形態】
【００１５】
−第１の実施形態−
第１の実施形態は、本発明の位置合わせ方法を、複数枚の画像を利用する方式の電子ブレ補正機能を有する電子撮影機器に対して適用したものである。複数枚の画像を利用する方式の電子ブレ補正とは、連写撮影した複数枚の画像を、画像間の位置合わせを行いながら、画像合成を行うことで、適正露光かつブレを含まない画像を得る技術である。以下、図面を参照しながら、本発明の好適な実施形態を説明する。
【００１６】
図１は、第１の実施形態における画像処理装置の構成を示す図である。図中、矢印はデータの流れを示している。なお、第１の実施形態における画像処理装置は、デジタルカメラ、デジタルビデオカメラや内視鏡など、正しく作動するために電流または電磁界に依存する機器である電子機器に搭載される。
【００１７】
まず、記録部８に蓄積された焦点距離、シャッタ速度、絞り（Ｆ値）などの撮影パラメータを光学系４に設定する。同じく、記録部８に蓄積されたＩＳＯ感度（Ａ／Ｄ変換のゲイン）などの撮影パラメータをＡ／Ｄ変換処理部６に設定する。光学系４で取り込まれた光は、撮像部５で電気信号に変換され、アナログ信号として出力される。Ａ／Ｄ変換処理部６は、アナログ信号をデジタル信号に変換する。
【００１８】
画像処理部７は、デジタル信号に対して、ノイズ除去やデモザイキング処理（画素毎にＲ・Ｇ・Ｂ信号のいずれか１つの信号だけが存在する状態から、画素毎にＲ・Ｇ・Ｂの３つの値を割り当てる処理）などを行い、画像データに変換する。変換された画像データは、記録部８に蓄積される。ここまでの一連のデータフローは撮影ごとに行われる。連写撮影の場合、連写回数分だけ上記のデータフローが行われる。
【００１９】
記録部８に蓄積された複数枚の画像データ、および、画像サイズなどの画像処理パラメータは、位置合わせ処理部９に転送される。位置合わせ処理部９は、後述する方法により、複数枚の画像データ間の動きベクトル（位置ずれ量）を求める。画像合成処理部１０は、複数枚の画像データと動きベクトルに基づいて、複数枚の画像データを合成する処理を行い、ブレを含まない合成画像を出力する。
【００２０】
図２は、位置合わせ処理部９の詳細な処理構成を示す図である。位置合わせ処理部９は、動きベクトル測定領域設定部１１と、位置合わせ基準領域設定部１２と、動きベクトル演算部１３と、動きベクトル信頼性判定部１４と、動きベクトル補正処理部１５と、動きベクトル補間処理部１６とを備える。なお、各処理内容や用語の定義等に関する詳細説明は、後述する。
【００２１】
動きベクトル測定領域設定部１１は、画像サイズ、位置合わせテンプレート数、探索範囲などの画像処理パラメータに基づいて、動きベクトルのテンプレート領域および探索領域を含む動きベクトル測定領域を複数設定する。
【００２２】
位置合わせ基準領域設定部１２は、画像サイズ、領域分割数などの画像処理パラメータに基づいて、基準画像を小領域に分割して、位置合わせ基準ブロックを設定する。
【００２３】
動きベクトル演算部１３は、動きベクトル測定領域と複数枚の画像データに基づいて、各動きベクトル測定領域において、動きベクトルを求める。
【００２４】
動きベクトル信頼性判定部１４は、動きベクトル演算部１３で求められた動きベクトルの確からしさを示す信頼性を判定し、各動きベクトルの信頼性判定結果を出力する。
【００２５】
動きベクトル補正処理部１５は、動きベクトル演算部１３で求められた動きベクトルと、動きベクトル信頼性判定部１４で求められた信頼性判定結果に基づいて、動きベクトルを補正する。
【００２６】
動きベクトル補間処理部１６は、動きベクトル補正処理部１５で補正処理が行われた動きベクトルと、位置合わせ基準領域設定部１２で設定された位置合わせ基準ブロックに基づいて、位置合わせ基準ブロックの座標系に対する画素毎の動きベクトルを演算する。
【００２７】
以下、各処理部１１〜１６で行われる詳しい処理内容について、図３を用いて説明する。図３は、第１の実施形態における画像処理装置によって行われる処理内容を示すフローチャートである。
【００２８】
ステップＳ３０１では、動きベクトル測定領域設定部１１により、動きベクトルを測定するための動きベクトル測定領域を設定する。動きベクトル測定領域には、テンプレート領域および探索領域が含まれる。
【００２９】
図４（ａ）は、位置合わせの基準座標系の画像である基準画像３０を示しており、図４（ｂ）は、基準画像に対して位置合わせする画像である位置合わせ画像３５を示している。動きベクトル測定領域設定部１１は、図４（ａ）に示すように、基準画像３０において、位置合わせの基準領域であるテンプレート領域３１を複数配置する。テンプレート領域３１は、所定の大きさの矩形領域であるが、矩形領域に限定されることはない。
【００３０】
動きベクトル測定領域設定部１１は、また、図４（ｂ）に示すように、位置合わせ画像３５において、基準画像３０のテンプレート領域に対応する領域３３より広い領域を、探索領域３４として設定する。基準画像３０のテンプレート領域に対応する領域３３は、基準画像３０に設定される複数のテンプレート領域３１と同一の座標位置にそれぞれ設定される領域であり、テンプレート領域３１と同一形状の領域である。また、探索領域３４は、各領域３３ごとに設定する。
【００３１】
なお、位置合わせ画像３５にテンプレート領域３１を配置し、基準画像３０に探索領域３４を配置するようにしてもよい。この場合、後述するテンプレートマッチングで求めた動きベクトルの符号を逆転させれば、図４（ａ）、（ｂ）に示す設定で求められる動きベクトルと同一の動きベクトルを求めることができる。
【００３２】
ステップＳ３０２では、位置合わせ基準領域設定部１２により、位置合わせ基準ブロックを設定する。具体的には、図４（ａ）に示すように、隣り合うテンプレート領域３１の中心位置をそれぞれ結んだ矩形領域を、位置合わせ基準ブロック３２として設定する。すなわち、位置合わせ基準ブロック３２は、格子状に配置される。ただし、位置合わせ基準ブロック３２は、必ずしも周期的に配置しなくてもよい。
【００３３】
ステップＳ３０３では、動きベクトル演算部１３により、基準画像３０および位置合わせ画像３５間の動きベクトルを求める。具体的には、動きベクトル演算部１３は、基準画像３０のテンプレート領域３１を用いて、位置合わせ画像３５の探索領域３４内でテンプレートマッチング処理を行うことにより、動きベクトルを求める。テンプレートマッチング処理とは、基準画像３０のテンプレート領域３１を、位置合わせ画像３５の探索領域３４内で走査しながら一致指標を演算し、一致指標が最も高くなる位置を検出する処理である。ここでは、一致指標が最も高くなる位置と、テンプレート領域の対応位置との位置ずれを計算し、動きベクトルとして出力する。
【００３４】
一致指標としては、画素値の差分の絶対値和である誤差絶対値和SAD(Sum of Absolute intensity Difference)、画素値の差分の自乗和である誤差自乗和SSD(Sum of Squared intensity Difference)、正規化相互相関NCC(Normalized Cross-Correlation)など公知の技術を用いてよい。
【００３５】
全てのテンプレート領域３１に対して、動きベクトルを求めると、ステップＳ３０４に進む。ステップＳ３０４では、動きベクトル信頼性判定部１４により、ステップＳ３０３で求めた複数の動きベクトルの信頼性を判定する。
【００３６】
動きベクトル演算部１３で求めた動きベクトルは、低コントラストの画像領域や、繰り返しパターンが存在する領域などでは、正しい画像位置を安定的に求めることは困難である。そこで、動きベクトル信頼性判定部１４は、動きベクトル演算部１３で求めた動きベクトルについて、その演算結果の確からしさを示す信頼性を判定する。具体的には、下記（１）〜（３）の特性を用いて信頼性を定量化する指標を算出し、信頼性を判定する。ここでは、信頼性を定量化する指標と所定のしきい値との大小を比較することにより、信頼性の高低を２段階で判定する。
【００３７】
（１）エッジ構造が鮮鋭な領域の場合、動きベクトルの信頼性が高い。このとき、位置ずれが除去できたときに、一致指標は、一致度が高いことを意味する大きな値(指標値によっては、小さな値)を示すのに対して、位置ずれが残っている場合、一致指標は小さな値(指標値によっては、大きな値)を示す。従って、テンプレートマッチングを行った際に、一致指標の変動が大きい。
【００３８】
（２）テクスチャや平坦な構造の場合、位置ずれが除去できた場合と位置ずれが残っている場合との間で一致指標の変動が少なく、信頼性は低い。
【００３９】
（３）繰り返し構造の場合、一致指標も周期的に変動し、信頼性は低い。
【００４０】
すなわち、動きベクトル信頼性判定部１４は、動きベクトル演算部１３でテンプレートマッチングを行った際の一致指標の特性に基づいて、信頼性を定量化する指標を算出し、信頼性を判定する。ただし、信頼性を判定する指標は、低コントラスト領域や繰り返しパターン領域等のような位置合わせの手がかりが少ない領域を検出できるものであれば、任意の指標でよい。例えば、特許第３１６４１２１号記載の様に、各ブロックのエッジの量に基づいて信頼性の指標を定義してもよい。
【００４１】
ステップＳ３０５において、動きベクトル補正処理部１５は、動きベクトル演算部１３で求めた動きベクトル(補正前)と、動きベクトル信頼性判定部１４で求めた各動きベクトルの信頼性判定結果に基づいて、信頼性の低い動きベクトルを補正し、補正後の動きベクトルを出力する。
【００４２】
図５は、動きベクトル補正処理部１５で行われる処理の内容を示すフローチャートである。ステップＳ５０１からステップＳ５０５の処理は、全ての動きベクトルに対して行われる。ステップＳ５０１では、動きベクトルの信頼性が高信頼性であるか否かを判定する。この判定は、動きベクトル信頼性判定部１４で算出された信頼性を判定する指標が所定のしきい値より高いか否かに基づいて行う。動きベクトルの信頼性が高信頼性であると判定すると、ステップＳ５０２に進む。ステップＳ５０２では、動きベクトル演算部１３で求めた動きベクトルをそのまま出力する。
【００４３】
一方、ステップＳ５０１において、動きベクトルの信頼性が低信頼性であると判定すると、ステップＳ５０３に進む。ステップＳ５０３では、低信頼性と判定された動きベクトルの近傍に、高信頼性の動きベクトルが存在するか否かを判定する。近傍とは、例えば、低信頼性の動きベクトルを中心として、上下左右の隣接する位置に存在する４つの動きベクトルを含む４近傍、または、上下左右および斜め方向の隣接する位置に存在する８つの動きベクトルを含む８近傍である。また、低信頼性の動きベクトルの近傍として、当該低信頼性の動きベクトルを中心として、任意の距離範囲内を設定してもよい。低信頼性の動きベクトルの近傍に、高信頼性の動きベクトルが存在しないと判定すると、ステップＳ５０２に進み、動きベクトル演算部１３で求めた動きベクトルをそのまま出力する。
【００４４】
一方、ステップＳ５０３において、低信頼性の動きベクトルの近傍に、高信頼性の動きベクトルが存在すると判定すると、ステップＳ５０４に進む。ステップＳ５０４では、近傍に位置する高信頼性の動きベクトルの平均ベクトルを求め、求めた平均ベクトルを低信頼性の動きベクトルと置き換える。
【００４５】
図６は、処理対象である低信頼性の動きベクトル６１の８近傍に位置する動きベクトル６２〜６９のうち、上、下、右にそれぞれ位置する動きベクトル６５、６６、６８が高信頼性の動きベクトルである例を示す図である。ここでは、処理対象の低信頼性の動きベクトル６１をVect(m,n)と表記する。ただし、図６の右方向をｘ軸の正方向、下方向をｙ軸の正方向として、ｍはｘ座標、ｎはｙ座標を表す。この場合、低信頼性の動きベクトルVect(m,n)の上に位置する動きベクトル６５は、Vect(m,n-1)、下に位置する動きベクトル６６は、Vect(m,n+1)、右に位置する動きベクトル６８は、Vect(m+1,n)と表せる。従って、低信頼性の動きベクトルVect(m,n)は、近傍に位置する高信頼性の動きベクトルVect(m,n-1)、Vect(m,n+1)、Vect(m+1,n)を用いて、次式（１）で表される。
【００４６】
【数１】
2011171991.tif 000003
【００４７】
なお、低信頼性の動きベクトルを、近傍の高信頼性の動きベクトルの平均ベクトルで置き換える例について説明したが、近傍の高信頼性動きベクトルのうち、最も信頼性が高い動きベクトルで置き換えるようにしてもよい。図７は、動きベクトル補正処理部１５で行われる変形処理の内容を示すフローチャートである。図５に示すフローチャートと同じ処理を行うステップについては、同一の符号を付して、詳しい説明は省略する。
【００４８】
図７に示すフローチャートの処理が図５に示すフローチャートの処理と異なるのは、ステップＳ７００の処理である。ステップＳ７００では、低信頼性の動きベクトルの近傍に存在する高信頼性の動きベクトルの平均ベクトルのうち、最も信頼性の高い動きベクトルを選択して、低信頼性の動きベクトルと置き換える。信頼性の高さは、動きベクトル信頼性判定部１４で求められた信頼性を示す指標に基づいて判定する。
【００４９】
また、次式（２）で示すように、低信頼性の動きベクトルの近傍に存在する高信頼性の動きベクトルの信頼性を示す指標を用いて、低信頼性の動きベクトルを算出するようにしてもよい。式（２）において、Score(m, n-1)、Score(m+1, n)、Score(m, n+1)は、それぞれ高信頼性の動きベクトルVect(m,n-1)、Vect(m+1,n)、Vect(m,n+1)の信頼性を示す指標である。すなわち、信頼性の高い動きベクトルの影響が大きくなるように、複数の高信頼性の動きベクトルを重み付け加算する。
【００５０】
【数２】
2011171991.tif 000004
【００５１】
図３のステップＳ３０６では、動きベクトル補間処理部１６により、各位置合わせ基準ブロック内の各画素について、それぞれ動きベクトルを求める。動きベクトル補間処理部１６で行われる処理内容について、図８を用いて説明する。図８（ａ）は、基準画像を、図８（ｂ）は、位置合わせ画像をそれぞれ示している。図８（ｂ）において、色抜きの領域３３は、基準画像のテンプレート領域３１に対応する領域であり、網掛けの領域３６は、テンプレートマッチングにより、テンプレート領域３１に対して一致指標が最も高くなる位置である。位置合わせ画像における領域３３から領域３６に向かうベクトルが動きベクトルとなる。
【００５２】
動きベクトル補間処理部１６は、各位置合わせ基準ブロック３２について、周囲４点のテンプレート領域の動きベクトルを用いて、動きベクトルを線形補間することにより、位置合わせ基準ブロック内の各画素について、それぞれ動きベクトルを求める。この処理の意味合いとしては、位置合わせ画像において、基準となる位置合わせ基準ブロックと対応する領域を、元の位置合わせ基準ブロックの座標系、すなわち、網掛け領域３６の中心位置をそれぞれ結んで形成される領域に変形することに相当している。この処理は、小領域に分割した位置合わせ基準ブロックごとに実施しているため、局所的な画像変形にも対応可能である。
【００５３】
図３のステップＳ３０７では、画像合成処理部１０により、基準画像および位置合わせ画像の画像データと、各画素の動きベクトルとに基づいて、基準画像および位置合わせ画像の対応する画素位置ごとに画像合成を行う。
【００５４】
図９（ａ）は、位置合わせに用いる基準画像９１および位置合わせ画像９２の一例を示す図である。基準画像９１には、人物９３と建物９４とが写り込んでいる。このような図では、建物９４の縁の領域では、縦方向の筋があることにより、横方向における位置合わせの手がかりはある。
【００５５】
図９（ｂ）は、処理対象の動きベクトルと、周囲の平均ベクトルとの差が大きい場合に、当該動きベクトルを周囲の平均ベクトルに置き換える従来技術によって、画像間の位置合わせを行い、合成処理を行って得られる合成画像の一例を示す図である。従来技術の方法では、図９（ｂ）に示すように、画像横方向のずれた位置９５に、写像されてしまうことがあり、合成画像において、縦筋が歪んだような画像となってしまう。
【００５６】
図９（ｃ）は、第１の実施形態における画像処理装置によって得られる合成画像の一例を示す図である。上述したように、処理対象の動きベクトルの信頼性が低い場合、周囲の高信頼性の動きベクトルに基づいて求めた動きベクトルで置き換えるので、信頼性の低い周囲の動きベクトルの影響を受けることがない。これにより、位置合わせの精度を高くすることができる。
【００５７】
以上、第１の実施形態における画像処理装置によれば、画像上に、複数枚の画像間の動きベクトルを測定するための動きベクトル測定領域を少なくとも２つ以上設定して、動きベクトル測定領域の各々において、複数枚の画像間の動きベクトルを求め、各動きベクトルの確からしさを示す信頼性を判定する。そして、信頼性が所定の信頼性より低いと判定された低信頼性動きベクトルについて、当該低信頼性動きベクトルの近傍に信頼性が所定の信頼性より高い高信頼性動きベクトルが存在する場合、当該高信頼性動きベクトルに基づいて、低信頼性動きベクトルと置き換える動きベクトルを求める。これにより、例えば、信頼性の高い動きベクトルが、周囲に存在する複数の信頼性の低い動きベクトルの影響を受けて、誤った動きベクトルに置き換えられてしまうのを防ぐことができる。また、信頼性の低い動きベクトルについても、周囲の高信頼性動きベクトルに基づいて求めた動きベクトルと置き換えるので、精度の高い動きベクトルを求めて、位置合わせを精度良く行うことができる。これにより、位置合わせの手がかりが少ない画像領域においても、精度の高い動きベクトルを求めて、位置合わせを安定的に行うことができる。
【００５８】
特に、低信頼性動きベクトルの近傍に存在する高信頼性動きベクトルの平均ベクトルを求めて、低信頼性動きベクトルと置き換えるので、精度の高い動きベクトルを求めることができる。
【００５９】
また、低信頼性動きベクトルの近傍に存在する高信頼性動きベクトルの中で、最も信頼性の高い動きベクトルを、低信頼性動きベクトルと置き換える場合には、少ない演算量で簡易に、精度の高い動きベクトルを求めることができる。
【００６０】
また、低信頼性動きベクトルの近傍に存在する高信頼性動きベクトルの信頼性に応じて、高信頼性動きベクトルを重み付け平均した動きベクトルを、低信頼性動きベクトルと置き換える場合には、重み付け平均をしない平均ベクトルと置き換える場合に比べて、さらに精度の高い動きベクトルを求めることができる。
【００６１】
−第２の実施形態−
第１の実施形態における画像処理装置では、動きベクトル演算部１３で求めた動きベクトルについて、動きベクトル信頼性判定部１４において、高信頼性か低信頼性であるかを判定し、その判定結果に基づいて、動きベクトル補正処理部１５において、低信頼性の動きベクトルを補正した。これに対し、第２の実施形態における画像処理装置では、動きベクトル演算部１３で求めた動きベクトルについて、動きベクトル信頼性判定部１４において、その信頼性を３段階以上の多段階に判定する。動きベクトル補正処理部１５は、その多段階の信頼性判定結果に基づいて、低信頼性の動きベクトルを補正する。
【００６２】
画像処理装置の全体的な構成は、第１の実施形態と同じであり、図１、図２に示すものと同一であるが、個別の処理ブロックの処理内容が異なる。以下、第１の実施形態と異なる処理を行う処理部について説明する。
【００６３】
動きベクトル信頼性判定部１４の処理内容について説明する。動きベクトル演算部１３で求めた動きベクトルは、低コントラストの画像領域や、繰り返しパターンが存在する領域などでは、正しい画像位置を安定的に求めることは困難である。そこで、動きベクトル信頼性判定部１４は、動きベクトル演算部１３で求めた動きベクトルの確からしさを示す信頼性を判定する。信頼性を判定するために、第１の実施形態で示した（１）〜（３）の考え方に基づいて、信頼性を指標化する。第１の実施形態では、高信頼性か低信頼性かの２段階で判定したが、実際には、位置合わせの手がかりが少ないけど位置合わせ可能な領域など、中間的な領域が存在する。そこで、本実施形態では、信頼性の指標を複数のしきい値を用いて３段階以上の多段階に判定する。
【００６４】
動きベクトル補正処理部１５の処理内容について説明する。動きベクトル補正処理部１５は、動きベクトル演算部１３で求めた動きベクトル(補正前)と、動きベクトル信頼性判定部１４で求めた各動きベクトルの多段階の信頼性判定結果に基づいて、低信頼性の動きベクトルを補正し、補正後の動きベクトルを出力する。
【００６５】
図１０は、第２の実施形態における動きベクトル補正処理部１５で行われる処理の内容を示すフローチャートである。本処理では、動きベクトル信頼性判定部１４で算出された信頼性を判定する指標に基づいて、１〜Ｎ（Ｎは、３以上の自然数）のＮ段階に信頼度を設定する。なお、信頼度１が最も信頼性が高く、信頼度Ｎが最も信頼性が低いものとする。ここでは、各動きベクトルについて当該動きベクトルの近傍に、より信頼度が高い動きベクトルが存在する場合は、近傍のより信頼度が高い動きベクトルを用いて、当該動きベクトルを補正する。
【００６６】
ステップＳ１００１では、各動きベクトルの信頼度を設定する。ここでは、動きベクトル信頼性判定部１４で算出された信頼性を判定する指標に基づいて、１〜Ｎ（Ｎは、３以上の自然数）のＮ段階に信頼度を設定する。
【００６７】
ステップＳ１００２では、信頼度ｉ（１≦ｉ≦Ｎ）の動きベクトルが、求めた動きベクトルの中に存在するか否かを判定する。なお、ｉの初期値は１とする。信頼度ｉの動きベクトルが存在しないと判定するとステップＳ１００６に進み、信頼度ｉを１段階下げる（信頼度が低い方向へ設定する）とともに、設定した信頼度ｉが最低でない場合は（ステップＳ１００７）、ステップＳ１００２から処理を繰り返す。一方、ステップＳ１００２において、信頼度ｉの動きベクトルが存在すると判定すると、ステップＳ１００３に進む。
【００６８】
ステップＳ１００３では、ステップＳ１００２で求めた信頼度ｉの動きベクトルについて、その動きベクトルを中心とする近傍に、信頼度ｉより信頼性の高い動きベクトルが存在するか否かを判定する。信頼度ｉの動きベクトルを中心とする近傍の概念は、第１の実施形態で説明した近傍の概念と同じである。信頼度ｉの動きベクトルを中心とする近傍に、信頼度ｉより信頼性の高い動きベクトルが存在しないと判定すると、ステップＳ１００４に進む。ステップＳ１００４では、動きベクトル演算部１３で求めた動きベクトルをそのまま出力する。
【００６９】
一方、ステップＳ１００３において、信頼性の高い動きベクトルが存在すると判定すると、ステップＳ１００５に進む。ステップＳ１００５では、近傍に位置する信頼度ｉより信頼性の高い動きベクトルの平均ベクトルを求め、処理対象である信頼度ｉの動きベクトルを、求めた平均ベクトルで置き換える。この処理は、信頼度ｉの全ての動きベクトルを対象として行う。なお、信頼性の高い動きベクトルの平均ベクトルを求めて、処理対象の動きベクトルと置き換える方法は、第１の実施形態と同じである。
【００７０】
ステップＳ１００６では、信頼度ｉに１を加算して、ステップＳ１００７に進む。ステップＳ１００７では、信頼度ｉがＮ（Ｎ段階に信頼度を設定した際のＮ）より大きいか否かを判定する。信頼度ｉがＮ以下であると判定すると、ステップＳ１００２に戻り、上述した処理を行う。一方、信頼度ｉがＮより大きいと判定すると、全ての動きベクトルを対象として処理が完了しているので、フローチャートの処理を終了する。
【００７１】
なお、第１の実施形態で説明したように、ステップＳ１００５の処理において、近傍の信頼性の高い動きベクトルのうち、最も信頼性が高いものを用いて置き換えるようにしてもよいし、複数の信頼性の高い動きベクトルを信頼性に応じた重み付け加算することによって求めた動きベクトルを用いて置き換えるようにしてもよい。
【００７２】
以上、第２の実施形態における画像処理装置によれば、動きベクトルの信頼性を３段階以上の多段階で判定するので、より精度の高い動きベクトルを求めることができる。例えば、信頼性を低、中、高の３段階に分けた場合には、信頼性の低い動きベクトルだけでなく、信頼性が中程度の動きベクトルについても、周囲の信頼性の高い動きベクトルに基づいて求めた動きベクトルと置き換えることができる。
【００７３】
また、第１の実施形態では、信頼性を２段階で判定しているため、信頼性を判定するためのしきい値によって、処理結果が大きく異なる可能性があるが、第２の実施形態のように、信頼性を多段階で判定することにより、信頼性を判定するためのしきい値による処理結果の変動を抑制することができる。
【００７４】
−第３の実施形態−
第３の実施形態は、動きベクトル補正処理部１５の処理内容に特徴がある。すなわち、動きベクトル補正処理部１５は、動きベクトル演算部１３で演算した一致指標の分布情報(相関マップ)を用いて、動きベクトル演算部１３で求めた動きベクトルを補正する。より具体的には、一致指標が極端に低下するような位置へは補正しないようにすることで、位置合わせを安定化させる。以下、図面を用いて説明する。
【００７５】
図１１は、第３の実施形態における画像処理装置の位置合わせ処理部９の詳細な構成を示す図である。図２に示す第１の実施形態における画像処理装置の位置合わせ処理部９との違いは、動きベクトル演算部１３が補正前の動きベクトルに加えて、一致指標の分布情報を示す相関マップを出力する点と、その相関マップを動きベクトル補正処理部１５の入力として使用する点である。
【００７６】
ここで、相関マップとは、動きベクトル演算部１３において、位置をずらしながら、ＳＳＤ、ＳＡＤ、ＮＣＣなどの一致指標を演算する際に、画像のずらし量と一致指標との対応関係を示したものである。ここでは、画像間の一致度が高いほど、大きい値を示す一致指標のＮＣＣと、画像のずらし量との関係を定めた相関マップを動きベクトル演算部１３が記憶しているものとして説明する。
【００７７】
動きベクトル補正処理部１５の処理内容を説明する。動きベクトル補正処理部１５は、動きベクトル演算部１３で求めた動きベクトル(補正前)、相関マップ、および、動きベクトル信頼性判定部１４で求めた各動きベクトルの信頼性判定結果に基づいて、低信頼性の動きベクトルを補正し、補正後の動きベクトルを出力する。
【００７８】
図１２は、動きベクトル補正処理部１５の処理内容を示すフローチャートである。図５に示すフローチャートの処理と同じ処理を行うステップについては、同一の符号を付して詳しい説明は省略する。
【００７９】
ステップＳ５０３において、低信頼性の動きベクトルの近傍に、高信頼性の動きベクトルが存在すると判定すると、ステップＳ１２００に進む。ステップＳ１２００では、近傍に位置する高信頼性の動きベクトルの平均ベクトルを求める。近傍に位置する高信頼性の動きベクトルの平均ベクトルを求める方法は、第１の実施形態で説明した方法と同じである。
【００８０】
ステップＳ１２０１では、動きベクトル演算部１３から出力された相関マップに基づいて、ステップＳ１２００で求めた平均ベクトル（画像のずらし量）を移動ベクトルに基づき位置合わせした場所での一致指標を求め、求めた一致指標が所定のしきい値より大きいか（あるいは小さいか）否かを判定する。一例として、上記平均ベクトルの大きさに対応する一致指標を求め、求めた一致指標としきい値とを比較することが可能である。一致指標としきい値とを比較し、一致指標から判断される一致度合いが所定基準より低いと判断される場合（一致指標が所定のしきい値以下、または、しきい値以上の場合。一致指標に用いる指標値によって変わる）、ステップＳ５０２に進み、動きベクトル演算部１３で求めた動きベクトルをそのまま出力する。一方、ステップＳ１２００で求めた平均ベクトルに対応する一致指標が所定のしきい値より大きいと判定すると、ステップＳ１２０２に進む。
【００８１】
ステップＳ１２０２では、ステップＳ１２００で求めた平均ベクトルを、処理対象の低信頼性の動きベクトルに置き換えて出力する。
【００８２】
以上、第３の実施形態における画像処理装置によれば、低信頼性の動きベクトルの近傍に位置する信頼性の高い動きベクトルの平均ベクトルを求め、求めた平均ベクトルの一致指標が所定のしきい値以下の場合には、低信頼性の動きベクトルと置き換える処理を行わない。これにより、精度の低い平均ベクトルと置き換えられることにより、位置合わせ精度が低下するのを防ぐことができる。
【００８３】
なお、上述した第１〜第３の実施形態の説明では、画像処理装置が行う処理としてハードウェアによる処理を前提としていたが、このような構成に限定される必要はない。例えば、別途ソフトウェアにて処理する構成も可能である。この場合、画像処理装置は、ＣＰＵ、ＲＡＭ等の主記憶装置、上記処理の全て或いは一部を実現させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体を備えている。ここでは、このプログラムを画像処理プログラムと呼ぶ。そして、ＣＰＵが上記記憶媒体に記憶されている画像処理プログラムを読み出して、情報の加工・演算処理を実行することにより、上述の画像処理装置と同様の処理を実現させる。
【００８４】
ここで、コンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、この画像処理プログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該画像処理プログラムを実行するようにしても良い。
【００８５】
本発明は、上述した第１〜第３の実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。例えば、第３の実施形態では、第１の実施形態と同様に、動きベクトルの信頼性を２段階で判定したが、第２の実施形態と同じように、３段階以上の多段階で判定するようにしてもよい。
【００８６】
第３の実施形態では、画像間の一致度が高いほど、大きい値を示す一致指標のＮＣＣと、画像のずらし量との関係を定めた相関マップを動きベクトル演算部１３が記憶しているものとして説明した。しかし、画像間の一致度が高いほど、小さい値を示す一致指標のＳＳＤまたはＳＡＤと、画像のずらし量との関係を定めた相関マップを動きベクトル演算部１３が記憶するようにしてもよい。この場合、図１２に示すフローチャートのステップＳ１２０１では、平均ベクトルの大きさ（画像のずらし量）に対応する一致指標が所定のしきい値より大きいと判定すると、ステップＳ５０２に進み、動きベクトル演算部１３で求めた動きベクトルをそのまま出力する。一方、平均ベクトルに対応する一致指標が所定のしきい値以下であると判定すると、ステップＳ１２０２に進み、求めた平均ベクトルを処理対象の低信頼性の動きベクトルに置き換えて出力する。ただし、この変形例で用いる所定のしきい値と、第３の実施形態で説明した所定のしきい値とは、異なる値である。
【符号の説明】
【００８７】
４…光学系
５…撮像部
６…Ａ／Ｄ変換処理部
７…画像処理部
８…記録部
９…位置合わせ処理部
１０…画像合成処理部
１１…動きベクトル測定領域設定部
１２…位置合わせ基準領域設定部
１３…動きベクトル演算部
１４…動きベクトル信頼性判定部
１５…動きベクトル補正処理部
１６…動きベクトル補間処理部
【図１】
2011171991.tif 000005
【図２】
2011171991.tif 000006
【図３】
2011171991.tif 000007
【図５】
2011171991.tif 000008
【図６】
2011171991.tif 000009
【図７】
2011171991.tif 000010
【図１０】
2011171991.tif 000011
【図１１】
2011171991.tif 000012
【図１２】
2011171991.tif 000013
【図４】
2011171991.tif 000014
【図８】
2011171991.tif 000015
【図９】
2011171991.tif 000016
【図１３】
2011171991.tif 000017
【図１４】
2011171991.tif 000018