(57)【要約】  本発明は、複数の画像の動きを検出する際に、画像中のブロックから探索された部分動きベクトルを正当に評価することが可能な画像処理方法、画像処理プログラム、画像処理装置、及び撮像装置を提供することを目的とする。そのために、本発明の画像処理方法は、複数の画像間の動きを検出する画像処理方法であって、前記画像の特徴量に基づき、前記画像中の各ブロックから部分動きベクトルを探索する探索手順と、前記探索された前記部分動きベクトルから１又は複数の評価値を算出する算出手順とを含み、前記評価値の１つを、前記部分動きベクトルでその探索元ブロックを試験的に位置合わせしたときの位置合わせ精度とする。
2007074605.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像間の動きを検出する画像処理方法であって、
前記画像の特徴量に基づき、前記画像中の各ブロックから部分動きベクトルを探索する探索手順と、
前記探索された前記部分動きベクトルから１又は複数の評価値を算出する算出手順とを含み、
前記評価値の１つは、
前記部分動きベクトルでその探索元ブロックを試験的に位置合わせしたときの位置合わせ精度である
ことを特徴とする画像処理方法。
【請求項２】
請求項１に記載の画像処理方法において、
前記位置合わせ精度は、
前記部分動きベクトルでその探索元ブロックの一部を試験的に位置合わせしたときの位置合わせ精度である
ことを特徴とする画像処理方法。
【請求項３】
請求項１又は請求項２に記載の画像処理方法において、
前記評価値に基づき前記部分動きベクトルを補正する補正手順をさらに含む
ことを特徴とする画像処理方法。
【請求項４】
請求項３に記載の画像処理方法において、
前記補正手順では、
前記補正の対象となった部分動きベクトルと、その周辺の部分動きベクトルとを前記評価値で相対評価し、そのうち高評価を得た部分動きベクトルの値で、前記補正の対象となった部分動きベクトルの値を補正する
ことを特徴とする画像処理方法。
【請求項５】
請求項４に記載の画像処理方法において、
前記評価値の他の１つは、
前記部分動きベクトルの探索元ブロックに含まれるエッジ量であり、
前記相対評価では、
前記補正の対象となった部分動きベクトルと、その周辺の部分動きベクトルとのうち前記エッジ量が小さいものを排除してから、残りの部分動きベクトルを前記位置合わせ精度で順位付けする
ことを特徴とする画像処理方法。
【請求項６】
請求項３〜請求項５の何れか一項に記載の画像処理方法において、
前記補正の対象となった部分動きベクトルの探索元ブロックが前記画像の隅に位置していた場合は、
前記補正手順では、
前記部分動きベクトルの前記評価値に拘わらず、その部分動きベクトルの水平成分と垂直成分とを、その垂直方向に隣接する部分動きベクトルの水平成分と、その水平方向に隣接する部分動きベクトルの垂直成分とでそれぞれ補正する
ことを特徴とする画像処理方法。
【請求項７】
請求項３〜請求項６の何れか一項に記載の画像処理方法において、
前記部分動きベクトルの全体に関する前記算出手順及び前記補正手順を、複数回繰り返す
ことを特徴とする画像処理方法。
【請求項８】
請求項３〜請求項７の何れか一項に記載の画像処理方法において、
前記補正後の前記部分動きベクトルに基づき前記複数の画像を位置合わせして合成する合成手順を更に含む
ことを特徴とする画像処理方法。
【請求項９】
請求項１〜請求項８の何れか一項に記載の画像処理方法をコンピュータに実行させる
ことを特徴とする画像処理プログラム。
【請求項１０】
請求項１〜請求項８の何れか一項に記載の画像処理方法を実行する演算手段を備えた
ことを特徴とする画像処理装置。
【請求項１１】
被写体を連続的に撮像して複数の画像を取得する撮像手段と、
請求項１０に記載の画像処理装置と
を備えたことを特徴とする撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルカメラ、画像処理ソフトウエアなどに適用される画像処理方法、画像処理プログラムに関する。また、本発明は、ディジタルカメラなどに適用される画像処理装置、ディジタルカメラなどの撮像装置に関する。
【背景技術】
【０００２】
ディジタル処理による手振れ補正は、連続して撮影された画像の動きベクトルを検出し、それに応じて画像を位置合わせ合成するものである。
動きベクトルの検出方法としては、複数の画像の各ブロックから動きベクトル（部分動きベクトル）を探索し、それら部分動きベクトルに基づき画像全体の動きベクトル１つを求めるものがある（特許文献１，特許文献２などを参照）。【０００３】
但し、部分動きベクトルの中には、誤検出されたものも混在するので、部分動きベクトルの各々を評価し、必要に応じて補正（ベクトル補正）しておくことが望ましい。
因みに、ベクトル補正方法は、特許文献２にも開示されており、そこでは、各部分動きベクトルを周辺の部分動きベクトルと比較し、仮に、それが極端に異なっていた場合には、その部分動きベクトルの値を周辺の部分動きベクトルと同じ値に置き換えている。
【特許文献１】特開平７−３８８００号公報
【特許文献２】特開平７−２３１４４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、このベクトル補正方法では、少数派の部分動きベクトルを多数派の部分動きベクトルに近づけているに過ぎないので、部分動きベクトルの分布を滑らかにすることはできるものの、仮に、正確に検出された部分動きベクトルが少数だった場合は、多くの部分動きベクトルが誤った方向へ補正されることになる。
そこで本発明は、部分動きベクトルを正当に評価することが可能な画像処理方法、画像処理プログラム、画像処理装置、及び撮像装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の画像処理方法は、複数の画像間の動きを検出する画像処理方法であって、前記画像の特徴量に基づき、前記画像中の各ブロックから部分動きベクトルを探索する探索手順と、前記探索された前記部分動きベクトルから１又は複数の評価値を算出する算出手順とを含み、前記評価値の１つは、前記部分動きベクトルでその探索元ブロックを試験的に位置合わせしたときの位置合わせ精度であることを特徴とする。【０００６】
なお、前記位置合わせ精度は、前記部分動きベクトルでその探索元ブロックの一部を試験的に位置合わせしたときの位置合わせ精度であってもよい。
また、本発明の画像処理方法は、前記評価値に基づき前記部分動きベクトルを補正する補正手順をさらに含んでもよい。
また、前記補正手順では、前記補正の対象となった部分動きベクトルと、その周辺の部分動きベクトルとを前記評価値で相対評価し、そのうち高評価を得た部分動きベクトルの値で、前記補正の対象となった部分動きベクトルの値を補正してもよい。【０００７】
また、前記評価値の他の１つは、前記部分動きベクトルの探索元ブロックに含まれるエッジ量であり、前記相対評価では、前記補正の対象となった部分動きベクトルと、その周辺の部分動きベクトルとのうち前記エッジ量が小さいものを排除してから、残りの部分動きベクトルを前記位置合わせ精度で順位付けしてもよい。
また、前記補正の対象となった部分動きベクトルの探索元ブロックが前記画像の隅に位置していた場合は、前記補正手順では、前記部分動きベクトルの前記評価値に拘わらず、その部分動きベクトルの水平成分と垂直成分とを、その垂直方向に隣接する部分動きベクトルの水平成分と、その水平方向に隣接する部分動きベクトルの垂直成分とでそれぞれ補正してもよい。【０００８】
また、前記部分動きベクトルの全体に関する前記算出手順及び前記補正手順は複数回繰り返されてもよい。
また、本発明の画像処理方法は、前記補正後の前記部分動きベクトルに基づき前記複数の画像を位置合わせして合成する合成手順を更に含んでもよい。
また、本発明の画像処理プログラムは、本発明の何れかに記載の画像処理方法をコンピュータに実行させることを特徴とする。【０００９】
また、本発明の画像処理装置は、本発明の何れかに記載の画像処理方法を実行する演算手段を備えたことを特徴とする。
また、本発明の撮像装置は、被写体を連続的に撮像して複数の画像を取得する撮像手段と、本発明の画像処理装置とを備えたことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、部分動きベクトルを正当に評価することが可能な画像処理方法、画像処理プログラム、画像処理装置、及び撮像装置が実現する。
【図面の簡単な説明】
【００１１】
【図１】実施形態の電子スチルカメラの構成を示すブロック図である。
【図２】手振れ補正処理の流れを示すフローチャートである。
【図３】ステップＳ３を説明する図である。
【図４】ステップＳ４を説明する図である。
【図５】評価値Ａiを説明する図である。
【図６】評価値Ｂiを説明する図である。
【図７】ベクトル補正の対象が画像の中央に位置する場合を説明する図である。
【図８】ベクトル補正の対象が画像の端部に位置する場合を説明する図である。
【図９】ベクトル補正の対象が画像の四隅に位置する場合を説明する図である。
【図１０】ベクトル補正方法を詳しく説明する図である（画像中央の場合）。
【図１１】ベクトル補正方法を詳しく説明する図である（画像四隅の場合）。
【図１２】位置合わせ対象の変形例を示す図である。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態を説明する。本実施形態は、手振れ補正機能付きの電子スチルカメラの実施形態である。
図１は、電子スチルカメラの構成を示すブロック図である。図１に示すとおり、電子スチルカメラ１０には、撮像素子１２、信号処理回路１３、メモリ１４、圧縮・伸張回路１５、記録部１６、画像処理回路１７などが配置される。【００１３】
電子スチルカメラ１０に装着された撮影レンズ１１は、撮像素子１２上に被写体の像を形成する。撮像素子１２は、その被写体の像を撮像して画像を取得する。その画像は、信号処理回路１３において処理された後、メモリ１４へ一時的に格納される。画像処理回路１７は、その画像に対し画像処理を施し、画像処理後の画像は、圧縮・伸張回路１５において圧縮処理が施された後、記録部１６において記録される。【００１４】
ここで、電子スチルカメラ１０が手振れ補正モードに設定されているときには、撮像素子１２は、適正露光時間、又は予め設定された露光時間に対してｎ段アンダーかつ微小時間間隔で２×ｎ枚の画像を取得する。画像処理回路１７は、それら複数枚の画像を入力し、手振れ補正処理を実行して補正画像を取得する。その補正画像が、圧縮・伸張回路１５を介して記録部１６に記録される。【００１５】
次に、画像処理回路１７による手振れ補正処理の全体の流れを説明する。
図２は、手振れ補正処理の流れを示すフローチャートである。図２に示すとおり、画像処理回路１７は、複数枚の画像を入力すると（ステップＳ１）、それら画像の各々からエッジ抽出を行い（ステップＳ２）、取得したエッジ画像に基づき、複数枚の画像の各ブロックの部分動きベクトルを探索する（ステップＳ３）。【００１６】
その後、画像処理回路１７は、各部分動きベクトルの評価値を算出し（ステップＳ４）、ベクトル補正を行う（ステップＳ５）。これらステップＳ３，Ｓ４の処理は、予め決められた回数だけ繰り返される（ステップＳ６参照）。
なお、評価値算出（ステップＳ４）及びベクトル補正（ステップＳ５）は、直列に実行されるとは限らず、並列に実行されてもよい。因みに、詳細は後述するが、ベクトル補正において全ての評価値が必要になるとは限らないので、ベクトル補正を実行しつつ、その際に必要となった評価値のみを適宜算出することとしてもよい。【００１７】
その後、画像処理回路１７は、最終的に得られた部分動きベクトルに基づき、複数枚の画像を位置合わせ合成し（ステップＳ７）、合成後の画像を補正画像として出力する（ステップＳ８）。
次に、ステップＳ３，ステップＳ４，ステップＳ５，ステップＳ７を詳細に説明する。ここでは、簡単のため、画像の枚数を２とする。【００１８】
（ステップＳ３）
図３は、ステップＳ３を説明する図である。本ステップでは、２枚のエッジ画像の各々が、図３に示すとおり、複数のブロックＲ1，Ｒ2，…に分割される。ここでは、エッジ画像の分割数を、縦方向６、横方向４の合計２４とする。
続いて、ブロックＲ1，Ｒ2，…，Ｒ24の各々から、部分動きベクトルが探索される。以下、ｉ番目のブロックＲiの部分動きベクトルを、そのブロックと同じ添え字を付してＶiとおく。この探索には、ブロックマッチングなど様々な公知の探索手法が適用可能である。但し、探索された部分動きベクトルＶ1，Ｖ2，…，Ｖ24には、探索精度の低いものも混在していると考えられる。【００１９】
（ステップＳ４）
図４は、ステップＳ４を説明する図である。本ステップでは、部分動きベクトルＶ1，Ｖ2，…，Ｖ24の評価値が２つずつ算出される。ここでは、２つの評価値をＡ，Ｂとおき、ｉ番目の部分動きベクトルＶiの評価値を、それと同じ添え字を付してＡi，Ｂiとおく。【００２０】
図５は、評価値Ａiを説明する図である。
評価値Ａiは、部分動きベクトルＶiの探索元となったブロックＲiを、その部分動きベクトルＶiで試験的に位置合わせしたときの位置合わせ精度である。
但し、この位置合わせの対象は、エッジ画像のブロックＲiではなく、エッジ抽出前の画像のブロックＲiである。また、ここでは、位置合わせ精度さえ算出できればよいので、試験的な位置合わせは、演算量を抑えるため、ブロックＲiの一部、例えば、両端及び中央の代表３ラインＬ1，Ｌ2，Ｌ3のみについて行われる。【００２１】
したがって、評価値Ａiの算出では、例えば、２枚の画像の一方のブロックＲiの代表３ラインＬ1，Ｌ2，Ｌ3を抽出すると共に、２枚の画像の他方の同じブロックＲiの代表３ラインＬ1'，Ｌ2'，Ｌ3'を抽出する。このとき、試験的な位置合わせをするため、ラインＬ1，Ｌ2，Ｌ3の抽出元領域Ｅiと、ラインＬ1’，Ｌ2’，Ｌ3’の抽出元領域Ｅiと間には、部分動きベクトルＶiの分だけ座標ずれが与えられる。そして、位置合わせ精度として、ラインＬ1，Ｌ2，Ｌ3とラインＬ1'，Ｌ2'，Ｌ3'との相関値（例えば、画素値の差の絶対値の総和）を算出し、それを評価値Ａiとおけばよい。この評価値Ａiが低いほど、部分動きベクトルＶiの信頼性を高いとみなせる。【００２２】
図６は、評価値Ｂiを説明する図である。
評価値Ｂiは、部分動きベクトルＶiの探索元となったブロックＲiのエッジ量である。エッジ量抽出の対象は、２枚のエッジ画像の何れか一方のブロックＲiのみでよい。
例えば、エッジ画像が縦方向のエッジ成分と横方向のエッジ成分との２成分からなる場合、評価値Ｂiの算出では、それら２成分の絶対値の総和を算出し、それを評価値Ｂiとすればよい。この評価値Ｂiが高いほど、部分動きベクトルＶiの信頼性を高いとみなせる。なお、ブロックＲiのエッジ量を示す評価値が得られるのであれば、他の算出方法を適用することも可能である。【００２３】
（ステップＳ５）
本ステップでは、評価値Ａ，Ｂに基づき、部分動きベクトルＶ1，Ｖ2，…，Ｖ24の各々をベクトル補正する。
但し、図７中に強調して示した部分動きベクトルＶ8をベクトル補正する場合、その補正には、太線で囲ったとおり、その周辺の部分動きベクトルＶ7，Ｖ2，Ｖ9，Ｖ14を関係させる。因みに、部分動きベクトルＶ8の探索元ブロックは、画像の端部の何れにも接していないので、周辺の部分動きベクトルの数は、４となる。これと同じことが、部分動きベクトルＶ9〜Ｖ11，Ｖ14〜Ｖ17をベクトル補正する場合にも当てはまる。【００２４】
一方、図８中に強調して示した部分動きベクトルＶ7をベクトル補正する場合、その補正には、太線で囲ったとおり、その周辺の部分動きベクトルＶ1，Ｖ8，Ｖ13を関係させる。因みに、部分動きベクトルＶ7の探索元ブロックは、画像の一端に接するので、周辺の部分動きベクトルの数は、３となる。これと同じことが、部分動きベクトルＶ2〜Ｖ5，Ｖ12，Ｖ8，Ｖ13，Ｖ20〜Ｖ23をベクトル補正する場合にも当てはまる。【００２５】
また、図９中に強調して示した部分動きベクトルＶ1をベクトル補正する場合、その補正には、太線で囲ったとおり、その周辺の部分動きベクトルＶ2，Ｖ7を関係させる。因みに、部分動きベクトルＶ1の探索元ブロックは、画像の四隅に位置するので、周辺の部分動きベクトルの数は、２となる。これと同じことが、部分動きベクトルＶ6，Ｖ19，Ｖ24をベクトル補正する場合にも当てはまる。【００２６】
次に、図１０を参照してベクトル補正の対象が画像中央に位置する場合（図７参照）のベクトル補正方法を詳しく説明する。因みに、ベクトル補正の対象が画像の一端に接していた場合（図８参照）は、この方法において周辺の部分動きベクトルの数が１つ少なくなるだけなので、説明を省略する。
このベクトル補正では、先ず、図１０（Ａ）に示すように、ベクトル補正の対象を含む５つの部分動きベクトルＶi，Ｖi+1，Ｖi-1，Ｖi-6，Ｖi+6の評価値Ｂi，Ｂi+1，Ｂi-1，Ｂi-6，Ｂi+6を参照し、それらの平均値ＢAを算出する。そして、それを閾値とし、５つの評価値Ｂi，Ｂi+1，Ｂi-1，Ｂi-6，Ｂi+6の各々を比較し、閾値以上となったものに対応する部分動きベクトルを、信頼性有りと判断し、閾値未満となったものに対応する部分動きベクトルを、信頼性無しと判断して排除する。ここでは、３つの部分動きベクトルＶi，Ｖi+1，Ｖi+6が信頼性有りと判断されたとする。【００２７】
次に、図１０（Ｂ）に示すように、信頼性有りと判断された部分動きベクトルＶi，Ｖi+1，Ｖi+6の評価値Ａi，Ａi+1，Ａi+6を参照し、それら評価値Ａi，Ａi+1，Ａi+6を比較する。そして、評価値Ａの最も低かった部分動きベクトルを、信頼性最高と判断する。ここでは、部分動きベクトルＶi+1が信頼性最高と判断されたとする。
次に、図１０（Ｃ）に示すように、信頼性最高と判断された部分動きベクトルＶi+1の値を参照し、ベクトル補正の対象である部分動きベクトルＶiの値を、その部分動きベクトルＶi+1の値に置換する。これによって、部分動きベクトルＶiのベクトル補正は完了である。因みに、ベクトル補正の対象である部分動きベクトルＶiの信頼性が最高と判断された場合には、ベクトル補正が不要となる。【００２８】
以上のベクトル補正方法では、部分動きベクトルの信頼性評価に前述した評価値Ａ（試験的に位置合わせしたときの位置合わせ精度）を利用するので、部分動きベクトルが多数派であるか否かに拘わらず、正当に評価される。したがって、ベクトル補正に失敗することも無い。
次に、図１１を参照してベクトル補正の対象が画像の四隅に位置する場合（図９参照）のベクトル補正方法を詳しく説明する。このベクトル補正は、他のベクトル補正が完了した後に行われる。ここでは、代表して１番目の部分動きベクトルＶ1のベクトル補正を説明する。【００２９】
このベクトル補正は、評価値Ａ，Ｂを参照することなく行われる。ベクトル補正の対象である部分動きベクトルＶ1のＹ成分は、Ｘ方向に隣接する部分動きベクトルＶ2のＹ成分Ｖ2Yに置換される。また、部分動きベクトルＶ1のＸ成分は、Ｙ方向に隣接する部分動きベクトルＶ7のＸ成分Ｖ7Xに置換される。
（ステップＳ７）
本ステップでは、ベクトル補正後の部分動きベクトルＶ1，Ｖ2，…Ｖ24に応じて、２枚の画像のブロックＲ1，Ｒ2，…Ｒ24の各々が位置合わせされ、合成される。これによって、１枚の補正画像が完成する。この合成の際には、画像の必要な箇所が画素補間される。【００３０】
このように、画像の位置合わせをブロック毎に行えば、ベクトル補正後の部分動きベクトルＶ1，Ｖ2，…Ｖ24の全てが有効利用されることになり、２枚の画像間の動きに回転成分が生じていた場合や、拡大／縮小成分が生じていた場合などにも対処できる。
また、ベクトル補正後の部分動きベクトルＶ1，Ｖ2，…Ｖ24の各々は、周辺の部分動きベクトルとの整合がとれているので、補正後の画像上ではブロック間の継ぎ目は殆ど目立たない（ステップＳ７終了）。【００３１】
以上、本実施形態の手振れ補正処理では、探索された部分動きベクトルを、前述した評価値Ａ（試験的に位置合わせしたときの位置合わせ精度）に基づきベクトル補正するので、ベクトル補正に失敗することは無い。その結果、画像の位置合わせ精度、すなわち手振れ補正精度は、高まる。
また、本実施形態の手振れ補正処理では、評価値Ａに基づくベクトル補正（ステップＳ４，Ｓ５）が繰り返されるので、手振れ補正精度をより高めることができる。【００３２】
すなわち、本実施形態のベクトル補正方法では、多数派・小数派に拘わらず個々の部分動きベクトルが正しい方向へ補正されるので、ベクトル補正を繰り返すと、部分動きベクトルの画像上の分布が、その真値に向けて収束する。
因みに、特許文献２のベクトル補正方法では、少数派の部分動きベクトルが多数派の部分動きベクトルに近づく傾向にあるので、ベクトル補正を繰り返してしまうと、部分動きベクトルの画像上の分布が、その真値に拘わらず平坦化される傾向にあった。【００３３】
（その他）
なお、本実施形態の手振れ補正処理では、評価値Ａの算出時における位置合わせ対象を、ブロック中の代表３ラインとしたが、ラインの本数を代えてもよい。また、異なる形状の部分領域としてもよい。部分領域の形状は、例えば、図１２に示すような十字状、×字状や、さらにはＬ字状など、様々な形状にすることが可能である。さらには、ブロックの部分領域を用いる代わりに、ブロックを低解像度変換したものを用いてもよい。【００３４】
また、本実施形態の手振れ補正では、ベクトル補正（ステップＳ４，Ｓ５）の繰り返し回数が予め設定されていたが、画像処理回路１７が自己判断してもよい。その場合、画像処理回路１７は、置換される部分動きベクトルの個数が閾値以下となった時点で、繰り返し終了の判断をすればよい。
また、本実施形態の手振れ補正処理では、各回のベクトル補正（ステップＳ４，Ｓ５）の判断基準を、全く同じに設定する必要は無く、適当に変更しても構わない。【００３５】
また、本実施形態の手振れ補正処理では、ベクトル補正（ステップＳ４，Ｓ５）が繰り返されたが、補正精度よりも演算量低減を優先させる場合は、繰り返しを省略してもよい。
また、本実施形態の手振れ補正処理では、部分動きベクトルの探索に当たり、画像の特徴量としてエッジ情報を抽出したが（ステップＳ２）、エッジ情報以外の他の特徴量を抽出してもよい。【００３６】
また、本実施形態の手振れ補正処理では、位置合わせ合成（ステップＳ７）に先立ち、部分動きベクトルの分布を滑らかにするための平均化処理が行われてもよい。但し、平均化処理は、部分動きベクトルの分布が平坦化され過ぎないよう、適切な強度に設定される必要がある。
また、本実施形態では、手振れ補正処理を電子スチルカメラの回路（画像処理回路１７）に実行させたが、手振れ補正処理の一部又は全部を、ビデオカメラなどの他の撮像装置、各種の画像入力装置、コンピュータなどに実行させてもよい。なお、コンピュータに処理を実行させる場合、その処理を実行させるためのプログラムを用意し、それをコンピュータにインストールすればよい。
【図１】
2007074605.tif 000003
【図２】
2007074605.tif 000004
【図３】
2007074605.tif 000005
【図４】
2007074605.tif 000006
【図５】
2007074605.tif 000007
【図６】
2007074605.tif 000008
【図７】
2007074605.tif 000009
【図８】
2007074605.tif 000010
【図９】
2007074605.tif 000011
【図１０】
2007074605.tif 000012
【図１１】
2007074605.tif 000013
【図１２】
2007074605.tif 000014
【国際調査報告】
2007074605.tif 000015
2007074605.tif 000016
2007074605.tif 000017
2007074605.tif 000018