(57)【要約】【課題】  ピント位置の異なる複数の画像に対して、合焦領域を優先的に使い、位置合わせを行う方法が求められる。【解決手段】  画像処理装置はピント位置が異なる第１の画像と第２の画像の位置合わせを行う位置合わせ手段と、第１の画像の距離情報と該距離情報の信頼度とを算出する算出手段と、第１の画像において位置合わせの基準領域を設定する設定手段と、を有し、設定手段は、距離情報と信頼度に基づいて基準領域を設定することを特徴とする。【選択図】  図８
2018074362.tif 000002
【特許請求の範囲】
【請求項１】
ピント位置が異なる第１の画像と第２の画像の位置合わせを行う位置合わせ手段と、
前記第１の画像の距離情報と、前記距離情報の信頼度とを算出する算出手段と、
前記第１の画像において前記位置合わせの基準領域を設定する設定手段と、を有し、
前記設定手段は、前記距離情報と前記信頼度に基づいて前記基準領域を設定することを特徴とする画像処理装置。
【請求項２】
画像の合成手段を有し、
前記画像の合成手段は、前記位置合わせ手段が前記位置合わせを行った後の、前記第１の画像と前記第２の画像の合成処理を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記設定手段は、前記第１の画像における複数の領域の少なくとも一部の領域に、前記距離情報と前記信頼度に応じた優先度を求め、該優先度に基づいて、前記基準領域を設定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記第１の画像の前記少なくとも一部の領域に含まれる画素に対して、評価値を与える評価手段を有し、
前記設定手段は、前記画像の前記少なくとも一部の領域のうち、前記評価値が第１の閾値より高い画素の数に応じて、前記優先度を設定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記評価手段は、前記距離情報と前記信頼度に基づいて、前記評価値を得ることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記評価手段は、前記距離情報に基づく値と前記信頼度に基づく値を用いて、前記評価値を算出することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記設定手段は、前記距離情報が前記第１の画像の合焦範囲に含まれ、かつ、前記信頼度が第２の閾値より高い画素の数に基づいて、前記複数の領域の少なくとも一部の領域に、前記優先度を与えることを特徴とする請求項３に記載の画像処理装置。
【請求項８】
前記設定手段は、焦点深度に基づいて前記合焦範囲を設定することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記設定手段は、前記ピント位置の間隔に基づいて前記合焦範囲を設定することを特徴とする請求項７に記載の画像処理装置。
【請求項１０】
前記設定手段は、前記優先度が第３の閾値より高い領域の中から前記基準領域を設定し、前記第３の閾値より高い優先度が与えられた領域の数が所定数に達しない場合には、前記第３の閾値を下げることを特徴とする請求項７乃至９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記設定手段は、前記優先度が第３の閾値より高い領域の中から前記基準領域を設定し、前記第３の閾値より高い優先度が与えられた領域の数が所定数に達しない場合には、前記合焦範囲を広げることを特徴とする請求項７乃至９のいずれか１項に記載の画像処理装置。
【請求項１２】
前記距離情報は、前記第１の画像の１対の瞳分割信号に基づいて算出されることを特徴とする請求項１乃至１１のいずれか１項に記載の画像処理装置。
【請求項１３】
前記距離情報の信頼度は、前記１対の瞳分割信号の相関演算に基づいて算出されることを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記距離情報の信頼度は、前記画像の１対の瞳分割信号の位相をずらしながら差分を計算することで得られた、前記差分の最小値に基づいて算出されることを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記設定手段は、前記優先度が第３の閾値より高い領域の中から前記基準領域を設定し、前記第３の閾値より高い優先度が与えられた領域の数が所定数に達しない場合には、前記第１の画像の前記複数の領域におけるコントラスト値に基づいて前記基準領域を設定することを特徴とする請求項１０乃至１４のいずれか１項に記載の画像処理装置。
【請求項１６】
前記位置合わせ手段が前記第１の画像と前記２の画像の位置合わせを行った後、前記第２の画像と第３の画像をそれぞれ、新たな前記第１の画像と前記第２の画像として更新することを特徴とする請求項１乃至１５のいずれか１項に記載の画像処理装置。
【請求項１７】
前記位置合わせ手段は、ピント位置が異なる複数の画像のうち、最も至近側あるいは無限遠側にピント位置がある画像を前記第１の画像として選択し、その次に至近側あるいは無限遠側にピント位置がある画像を前記第１の画像として選択し、ピント位置の順に前記複数の画像から前記第３の画像を選択することを特徴とする請求項１６に記載の画像処理装置。
【請求項１８】
ピント位置が異なる第１の画像と第２の画像の位置合わせを行う位置合わせステップと、
前記第１の画像の距離情報と、前記距離情報の信頼度とを算出する算出ステップと、
前記第１の画像において前記位置合わせの基準領域を設定する設定ステップと、を有し、
前記設定ステップにおいて、前記距離情報と前記信頼度に基づいて前記基準領域を設定することを特徴とする画像処理方法。
【請求項１９】
画像処理装置のコンピュータに動作させるプログラムであって、
ピント位置が異なる第１の画像と第２の画像の位置合わせを行う位置合わせステップと、
前記第１の画像の距離情報と、前記距離情報の信頼度とを算出する算出ステップと、
前記第１の画像において前記位置合わせの基準領域を設定する設定ステップと、を行わせ、
前記設定ステップにおいて、前記距離情報と前記信頼度に基づいて前記基準領域を設定することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の位置合わせを行う画像処理装置に関するものである。
【背景技術】
【０００２】
カメラからの距離が異なる複数の被写体を撮像する場合、あるいは、奥行き方向に長い被写体を撮像する場合に、撮像光学系における被写界深度が足りないために、被写体の一部にしかピントを合わせられない場合がある。これを解決するため、特許文献１には、ピント位置を変化させて複数の画像を撮像し、各画像から合焦している領域のみを抽出して１枚の画像に合成し、撮像領域全体に合焦している合成画像を生成する技術が開示されている。
【０００３】
複数の画像を用いて合成を行う場合、手振れなどによって生じた複数の画像間の位置ずれを補正するために、複数の画像間の位置合わせを行う必要がある。ここで、ピントがあっていない領域は、画像がぼけて像が広がっているため、このような領域を用いて位置合わせを行ってしまうと、その精度が低くなってしまう。そのため、画像間の位置合わせを精度良く行うためには、なるべく合焦状態である領域を用いて、画像間の位置合わせを行う必要がある。
【０００４】
そのためには、ピント位置を変化させながら撮像した複数の画像のそれぞれにおいて、どの領域が合焦状態であるかを判定する必要がある。そこで、特許文献２には、コントラストの高い領域を合焦領域とみなして、コントラストの高い領域を優先的に用いて複数の画像間の位置合わせを行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−２１６５３２号公報
【特許文献２】特開２００７−２７４２１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、コントラストの高い領域が、合焦領域であるとは限らない場合がある。例えば、主たる被写体の模様が薄く、その背景の模様が濃い場合、主たる被写体にピントを合わせたとしても、合焦状態ではない背景のコントラスト値のほうが大きくなる場合がある。
【０００７】
本発明は、上記の課題を鑑みてなされたものであり、合焦領域を正しく判定し、判定した合焦領域に基づいて位置合わせを行う画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、ピント位置が異なる第１の画像と第２の画像の位置合わせを行う位置合わせ手段と、前記第１の画像の距離情報と、前記距離情報の信頼度とを算出する算出手段と、前記第１の画像において前記位置合わせの基準領域を設定する設定手段と、を有し、前記設定手段は、前記距離情報と前記信頼度に基づいて前記基準領域を設定することを特徴とする画像処理装置を提供する。
【発明の効果】
【０００９】
本発明の画像処理装置によれば、複数の画像に対して位置合わせを行うとき、合焦領域に基づく位置合わせを行うことができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係るデジタルカメラの構造を示すブロック図である。
【図２】第１の実施形態における撮像部に設けられたセンサの例を示す図である。
【図３】第１の実施形態を説明するためのフローチャートである。
【図４】第１の実施形態における画像の位置合わせを説明するためのフローチャートである。
【図５】第１の実施形態における画像に対するブロックを説明するための図である。
【図６】第１の実施形態における位置合わせの基準領域の設定を説明するためのフローチャートである。
【図７】第１の実施形態におけるブロックの評価を説明するためのフローチャートである。
【図８】第１の実施形態におけるブロックの優先度の設定を説明するための図である。
【図９】第１の実施形態における相関量の算出を説明するための図である。
【図１０】第１の実施形態における距離情報の信頼度の算出を説明するための図である。
【図１１】第１の実施形態における画像の合成を説明するためのフローチャートである。
【図１２】第１の実施形態における手振れ量に応じる画像の距離情報の算出を説明するための図である。
【図１３】第１の実施形態におけるジャイロの動作を説明するための図である。
【図１４】第２の実施形態における位置合わせの基準領域の設定を説明するためのフローチャートである
【図１５】第２の実施形態における距離情報の信頼度の閾値の下限の決定を説明するための図である。
【図１６】第２の実施形態における距離情報の信頼度が全体的に低い被写体を示す図である。
【発明を実施するための形態】
【００１１】
以下では、添付の図面を参照しながら、本発明の好適な実施形態について詳細に説明する。
【００１２】
（第１の実施形態）
図１は本実施形態に係るデジタルカメラの構造を示すブロック図である。
【００１３】
制御部１０１は、例えばＣＰＵやＭＰＵなどのシグナルプロセッサであり、予め後述するＲＯＭ１０５に内蔵されたプログラムを読み出しながら、デジタルカメラ１００の各部分を制御する。たとえば、後述するように、制御部１０１が、後述する撮像部１０４に対して撮像の開始と終了について指令を出す。または、後述する画像処理部１０７に対して、ＲＯＭ１０５に内蔵されたプログラムに基づいて、画像処理の指令を出す。ユーザによる指令は、後述する操作部１１０によってデジタルカメラ１００に入力され、制御部１０１を通して、デジタルカメラ１００の各部分に達する。
【００１４】
駆動部１０２は、モーターなどによって構成され、制御部１０１の指令の下で、後述する光学系１０３を機械的に動作させる。たとえば、制御部１０１の指令に基づいて、駆動部１０２が光学系１０３に含まれるフォーカスレンズの位置を移動させ、光学系１０３の焦点距離を調整する。
【００１５】
光学系１０３は、ズームレンズ、フォーカスレンズ、および絞りなどにより構成される。絞りは、透過する光量を調整する機構である。レンズの位置を変えることによって、ピント位置を変えることができる。
【００１６】
撮像部１０４は、光電変換素子であり、入射された光信号を電気信号に変換する光電変換を行うものである。たとえば、撮像部１０４に、ＣＣＤやＣＭＯＳセンサなどを適用することができる。撮像部１０４は、動画撮像モードを設け、時間的に連続する複数の画像を動画の各々のフレームとして、撮像することができる。
【００１７】
図２は、撮像部１０４を構成する撮像素子の例である。図２（ａ）に示した撮像素子は、１つの画素２１０が、２つの光電変換部２１１と２１２を有する。図２（ｂ）に示した撮像素子は、１つの画素２２０が、４つの光電変換部２２１乃至２２４を有する。図２に示した撮像素子の１つの画素にある、複数の光電変換部のそれぞれから独立に読み出した信号を用いることで、被写体の距離情報を算出することができる。こうした独立に読み出したそれぞれの光電変換部の信号を、瞳分割信号という。瞳分割信号を、画像信号とともに記録すると、制御部１０１は、後述する画像処理部１０７での解析で、各々の領域における被写体のデフォーカス量、すなわち光軸方向の相対位置を算出することができる。ここでいうデフォーカス量は、撮像時のレンズのピント位置と、各画素に対応するそれぞれの被写体におけるピント位置との差を表す量である。したがって、撮像時のピント位置に対応する被写体の距離情報と、各画素におけるデフォーカス量から、各画素に対応する被写体の距離情報を得ることができる。ここでは、デフォーカス量は距離情報の一種であるとして説明を行う。
【００１８】
図２（ｃ）は、１対の瞳分割信号を説明するための図である。１対の瞳分割信号は、その領域における被写体のデフォーカス量に応じた位相ずれを持った、１対の波形信号となる。そのため、この１対の波形信号の位置をずらしながら、この２つの波形信号の差分を求め、この差分が最小値となるときのずらし量から、デフォーカス量を求めることができる。
【００１９】
理想的には、１対の波形信号の形状は完全に一致し、波形信号の差分の最小値はゼロになるはずである。しかしながら、実際にはノイズの影響や光学系におけるケラレの影響などによって、１対の波形信号の差分の最小値はゼロにはならない。この差分の最小値の値が大きくなるほど、１対の波形信号の相関度は低いと言うことができる。
【００２０】
図２（ｄ）は、図２（ａ）に示した素子において、光信号の画素への入射を示す。図２（ｄ）では、撮像素子２４１には、マイクロレンズ２４２と、カラーフィルタ２４３と、光電変換部２４４と２４５とがある。光電変換部２４４と２４５とは、同じ画素に属し、マイクロレンズ２４２とカラーフィルタ２４３に対応する。この図４はデジタルカメラを上から見た図であって、１つの画素に対応する２つの光電変換部２４４と２４５が左右に並んで配置されていることを示している。射出瞳２４６から出る光束のうち、光軸２４９を境にして、上側の光束（領域２４７からの光束に相当）は光電変換部２４５に入射し、下側の光束（領域２４８からの光束に相当）は光電変換部２４４に入射する。つまり、光電変換部２４４と２４５とはそれぞれ撮像レンズの射出瞳の異なる領域の光を受光している。ここで光電変換部２４４が受光した信号をＡ像、光電変換部２４５で受光した信号をＢ像とすると、Ａ像とＢ像は前述する１対の瞳分割信号に該当する。Ａ像とＢ像の位相差に基づいて焦点ズレ量を算出でき、距離情報を取得することができる。
【００２１】
ＲＯＭ１０５は、記録媒体としての読み出し専用の不揮発性メモリであり、デジタルカメラ１００が備える各ブロックの動作プログラムに加え、各ブロックの動作に必要なパラメータ等を記憶している。ＲＡＭ１０６は、書き換え可能な揮発性メモリであり、デジタルカメラ１００が備える各ブロックの動作において出力されたデータの一時的な記憶領域として用いられる。
【００２２】
画像処理部１０７は、撮像部１０４から出力された画像、あるいは後述する内蔵メモリ１０９に記録されている画像信号のデータに対して、ホワイトバランス調整、色補間、フィルタリングなど、様々な画像処理を行う。また、撮像部１０４が撮像した画像信号のデータに対して、ＪＰＥＧなどの規格で、圧縮処理を行う。
【００２３】
画像処理部１０７は、特定の処理を行う回路を集めた集積回路（ＡＳＩＣ）で構成される。あるいは、制御部１０１がＲＯＭ１０５から読み出したプログラムに従って処理することで、制御部１０１が画像処理部１０７の機能の一部または全部を兼用するようにしてもよい。制御部１０１が画像処理部１０７の全ての機能を兼用する場合には、画像処理部１０７をハードウェアとして有する必要はなくなる。
【００２４】
表示部１０８は、ＲＡＭ１０６に一時保存されている画像、または、後述する内蔵メモリ１０９に保存されている画像、あるいは、デジタルカメラ１００の設定画面などを表示するための液晶ディスプレイや有機ＥＬディスプレイなどである。
【００２５】
内蔵メモリ１０９は、撮像部１０４が撮像した画像や画像処理部１０７の処理を得た画像、および、画像撮像時のピント位置の情報などを記録する場所である。内蔵メモリの代わりに、メモリカードなどを用いてもよい。
【００２６】
操作部１１０は、たとえば、デジタルカメラ１００につけるボタンやスイッチ、キー、モードダイアルなど、あるいは、表示部１０８に兼用されるタッチパネルなどである。ユーザによる指令は、操作部１１０を経由して、制御部１０１に達する。
【００２７】
図３は、本実施形態を説明するためのフローチャートである。ユーザが操作部１１０を操作することによって、ピント位置を変化させて複数の画像を撮像し、各画像から合焦している領域のみを抽出して１枚の画像に合成する撮像モードが選択されると、制御部１０１は図３に示す処理を実行する。
【００２８】
ステップＳ３０１では、撮像部１０４は、ピント位置を変更しながら、複数回の撮像を行い、ピント位置を異ならせた複数の画像を得る。ユーザが予め、撮像枚数、最初のピント位置、および、ピント位置のずらし量を設定し、制御部１０１がその設定された値に応じて撮像部１０４を制御するようにしてもよい。
【００２９】
ステップＳ３０２では、制御部１０１は、ステップＳ３０１で撮像した複数の画像の位置合わせを行う。詳細は後述する。
【００３０】
ステップＳ３０３では、画像処理部１０７は、ステップＳ３０２で位置合わせした複数の画像に対して、合成を行う。詳細は後述する。
【００３１】
＜画像の位置合わせの処理＞
次に、ステップＳ３０２での画像の位置合わせの処理について説明する。図４は、本実施形態における画像の位置合わせを説明するためのフローチャートである。
【００３２】
ステップＳ４０１において、制御部１０１は撮像した画像の中から位置合わせの基準となる画像を画像処理部１０７に入力する。一例としては、制御部１０１が複数の画像のうち、ピント位置が最も至近側に設定された画像、あるいは、最も無限遠側に設定した画像を基準画像とする。
【００３３】
ステップＳ４０２において、制御部１０１は撮像した画像の中から位置合わせ対象画像を画像処理部１０７に入力する。ステップＳ４０１でピント位置が最も至近側に設定された画像が基準画像として設定された場合には、基準画像の次にピント位置が至近側に近い画像が、位置合わせ対象画像として選択される。反対に、ステップＳ４０１でピント位置が最も無限遠側に設定された画像が基準画像として設定された場合には、基準画像の次にピント位置が無限遠側に近い画像が、位置合わせ対象画像として選択される。
【００３４】
ステップＳ４０３において、位置合わせ対象画像を基準画像に位置合わせするために、基準画像と位置合わせ対象画像のずれ量をブロック単位で検出する。図５は、本実施形態におけるブロックの配置の一例を説明するための図である。図５では、画像５００に対して所定サイズの矩形ブロックを所定間隔で配置した一例を示す。このブロックの配置処理は、位置合わせ対象すべての画像に対して行い、ブロックのサイズは、想定される画像間の位置のずれに合わせて設定することが良い。また、画像間の位置のずれ量は、基準画像の画素値と、位置合わせ対象画像の画素値の差の絶対値総和（ＳＡＤ：Ｓｕｍ  Ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）が最も小さくなるようにベクトルを求めることで算出できる。
【００３５】
ステップＳ４０４において、位置合わせの画像変形係数を算出するために、位置合わせの基準領域の設定を行う。この処理についての詳細は後述する。
【００３６】
ステップＳ４０５で、画像処理部１０７は、ステップＳ４０４で設定した位置合わせの基準領域に基づいて、アフィン変換もしくは射影変換など公知の方法で、位置合わせのための画像変換係数を算出する。具体的には、後述する優先度の高いブロックから算出された移動量と移動方向とに対して、アフィン変換もしくは射影変換の変換係数を算出する。一例として、射影変換において、以下の（式１）を用いて、任意の画素の座標（ｘ，ｙ）を（ｘ´，ｙ´）へ変換する。
【００３７】
【数１】
2018074362.tif 000003
【００３８】
（式１）では、４点の座標関係が分かれば倍率の自由度を除いて、一意に求めることができる。したがって、一例として、制御部１０１は、優先度の高い順から４つのブロックを選び、射影変換に使われる変換行列を算出することにする。
【００３９】
ステップＳ４０６において、画像処理部１０７がステップＳ４０５で算出した画像変換係数を用いて位置合わせ対象画像の画像変形を行う。
【００４０】
ステップＳ４０７において、全ての位置合わせ対象画像に対する位置合わせを行ったかどうかを判定し、全ての画像に対して位置合わせを行っていれば画像位置合わせ処理を終了し、位置合わせを行っていない画像が存在すれば、ステップＳ４０８に進む。ステップＳ４０８で、制御部１０１は、Ｓ４０６で画像変形を行った位置合わせ対象画像を新たな基準画像として更新し、その後ステップＳ４０２に移行する。
【００４１】
＜位置合わせの基準領域の設定＞
図６は、図４のステップＳ４０４における位置合わせの基準領域の設定を説明するためのフローチャートである。
【００４２】
ステップＳ６０１で、画像処理部１０７は、処理対象の画像の各々のブロックに対して所定の方法で評価を行い、各々のブロックの優先度を算出する。詳細は後述する。
【００４３】
ステップＳ６０２で、制御部１０１は、優先度が予め定められた閾値より高いブロックの数が、予め定められた所定数以上であるかどうかを判断する。所定数以上であれば、ステップＳ６０３に進み、所定数以上でなければ、ステップＳ６０４に進む。
【００４４】
ステップＳ６０３では、画像処理部１０７は、ステップＳ６０１で、距離情報を用いて算出した優先度が高い順から４つのブロックを選択し、この４つのブロックで得られたベクトルを用いて、アフィン変換もしくは射影変換の変換係数を算出する。つまり、この４つのブロックを合焦領域とみなして変換係数を算出している。ステップＳ６０４では、画像処理部１０７は、距離情報を用いて算出した優先度を使用せず、各ブロックにおけるコントラスト値を評価し、コントラスト値で算出した優先度を使用することにする。具体的には、コントラスト値が高い順から４つのブロックを選択し、この４つのブロックで得られたベクトルを用いて、アフィン変換もしくは射影変換の変換係数を算出する。
【００４５】
次に、図６のステップＳ６０１でのブロックの評価について説明する。図７は、ブロックの評価を説明するためのフローチャートである。
【００４６】
ステップＳ７０１において、撮像部１０４が算出した距離情報に対してどのデフォーカス範囲までを合焦とするかの合焦範囲（Ｄｅｆ＿ｆｏｃｕｓ）を設定する。合焦範囲は焦点深度である１Ｆδ（δ：許容錯乱円径）で良いが、ピント位置のふり量によって変更しても良い。例えば、ピント位置を細かい間隔で変化させた場合、ピント領域が重なっている可能性が高いので１Ｆδよりも小さくすることで、小さい合焦範囲にすることが可能である。
【００４７】
ステップＳ７０２で、制御部１０１は、処理対象のブロックを設定する。制御部１０１は、図５に示したブロックの中から、処理していないものを選び、処理対象のブロックとする。
【００４８】
ステップＳ７０３において、処理対象のブロックの各画素に対して距離情報の信頼度が予め定められた閾値より高い合焦状態の画素が多く含まれるかを判定する。ここでいう距離情報の信頼度は、撮像部１０４が算出した距離情報の信頼性を表すパラメータで、その算出方法は、後述する。画素の距離情報の信頼度が低いときは、その画素の信号値はノイズなどの理由で実際の値から乖離する可能性が高く、位置合わせの基準領域から外すことが好ましい。合焦近傍の画素の距離情報の信頼度が予め定められた閾値より高い画素の数が所定数より多い場合は制御部１０１がＳ７０４に移行して着目ブロックの優先度を高くする。一方、合焦近傍の画素の距離情報の信頼度が予め定められた閾値より高い画素の数が所定数より多くない場合は制御部１０１がステップＳ７０５に移行して着目ブロックの優先度を低くする。画像間の位置合わせを行うためには、なるべくシャープなエッジ情報に基づいて画像間の動きベクトルを求めることが望ましいため、距離情報が合焦近傍となっている画素を多く含むブロックを、基準領域となるブロックとして選択することが望ましい。しかしながら、各画素に対応する距離情報自体に誤りがある可能性がある。そこで、本実施形態では、距離情報が合焦近傍であって、かつ、距離情報の信頼度が予め定められた閾値より高い画素の数を多く含むブロックを、基準領域となるブロックとして選択するようにしている。なお、ここでは画素ごとに距離情報を求める構成を例にして説明を行ったが、複数の画素を含むブロックごとに距離情報を求める構成としてもよい。
【００４９】
図８は、ブロックの優先度の設定を説明するための図である。図８（ａ）は画像の距離情報を示し、図８（ｂ）は距離情報の信頼度を示す。なお、図８（ａ）では、明度が低いほど、距離情報が長い（無限遠側に近い）と意味し、図８（ｂ）では、明度が低いほど距離情報の信頼度が高いと意味する。図８（ａ）のブロック８０１と図８（ｂ）のブロック８１１とは同じブロックで、図８（ａ）のブロック８０２と図８（ｂ）のブロック８１２とは同じブロックである。図８（ｃ）はブロック８０１（８１１）での距離情報の信頼度が予め定められた閾値より高い画素の数とピント位置との関係を示す。図８（ｄ）はブロック８０２（８１２）での距離情報の信頼度が予め定められた閾値より高い画素の数とピント位置との関係を示す。図８（ｃ）では、合焦範囲では、閾値より高い距離情報の信頼度をもつ画素が多く、図８（ｄ）では、合焦範囲では、閾値より高い距離情報の信頼度をもつ画素が少ない。したがって、制御部１０１はブロック８０１（８１１）の優先度を高くし、ブロック８０２（８１２）の優先度を低くする。
【００５０】
また、前述したステップＳ７０２での処理の変形の一例として、制御部１０１が以下のような処理することができる。制御部１０１は、ブロック内のデフォーカス量の絶対値（Ｄｉｆｆ＿ｄｅｆ）と距離情報の信頼度（Ｃｏｎｆ＿ｄｅｆ）を掛け合わせた評価値（Ｅｓｔｍ＿ｄｅｆ）を下記（式２）で算出する。なお、Ｄｉｆｆ＿ｄｅｆは、Ｄｅｆ＿ｆｏｃｕｓが１となるように正規化した値であり、Ｃｏｎｆ＿ｄｅｆは、後述するように０．０〜１．０の値を取り、信頼度が高ければ１．０となる。
【００５１】
【数２】
2018074362.tif 000004
【００５２】
制御部１０１は、評価値（Ｅｓｔｍ＿ｄｅｆ）が予め定められた評価値の閾値より大きい画素を数え、その画素数が多ければ優先度を高く設定し、少なければ低く設定する。
【００５３】
ステップＳ７０６で、制御部１０１は、すべてのブロックの評価が終了したかどうかを判断し、終了していなければ、ステップＳ７０２に戻る。かくして、制御部１０１は、ステップＳ６０２で、算出した優先度を予め定められた閾値と比較し、閾値より高いブロックの数を数える。たとえば、図８（ｅ）は、閾値より高い優先度をもつブロック８４１とそうでないブロック８４２とを示し、閾値より高い優先度をもつブロックの数は７である。さらに、前述した通り、閾値より高い優先度をもつブロックの数７と予め定められた所定数と比較し、ステップＳ６０１のブロックの評価で算出した優先度を使うかどうかを決める。
【００５４】
制御部１０１は、優先度の高いブロックが所定数以上と判断した場合、ステップＳ６０３に入り、変換係数を算出する際に、距離情報を用いて算出した優先度情報を使用し、ブロックを選択することにする。制御部１０１は、優先度の高いブロックが所定数以上でないと判断した場合、ステップＳ６０４に入り、変換係数を算出する際に距離情報を用いて算出した優先度情報を使用しないことにする。かわりに、前述したように、一例としてコントラスト値で算出した優先度を使用し、ブロックを選択することにする。
【００５５】
以上では、ステップＳ４０４での位置合わせの基準領域の設定に関して説明した。
【００５６】
＜距離情報の信頼度の算出方法＞
以下では、図７のステップＳ７０３で参照した距離情報の信頼度の算出方法の一例について述べる。制御部１０１は、図２に示した素子を用いて、１対の瞳分割信号を取得し、相関演算を行い、距離情報の信頼度を算出する。図９は、本実施形態における相関量の算出を説明するための図である。図９の各図では、横軸が像ずれ量、縦軸が１対の瞳分割信号の相関量を表す。図９（ａ）は相関度が高い例、（ｂ）、（ｃ）、（ｄ）は相関度が低い例を示している。微小ブロックにおける１対の瞳分割信号の信号値を（Ｅ（１）〜Ｅ（ｍ））、（Ｆ（１）〜Ｆ（ｍ）、ｍはデータ数）と一般化して表現した場合に、データ系列（Ｅ（１）〜Ｅ（ｍ））に対しデータ系列（Ｆ（１）〜Ｆ（ｍ）の位相を相対的にずらしながら（式２）により２つのデータ列間の像ずれ量ｋにおける相関量Ｃ（ｋ）を演算する。
Ｃ（ｋ）＝Σ│Ｅ（ｎ）−Ｆ（ｎ＋ｋ）│……（式３）
【００５７】
（式３）において、Σ演算はｎについて計算される。このΣ演算においてｎ、ｎ＋ｋのとる範囲は１〜ｍの範囲に限定される。また、像ずれ量ｋは整数であり、画像間の相対的シフト量である。
【００５８】
（式３）の演算結果は、図９（ａ）に示すように、シフト量がｘであるとき、相関量Ｃ（ｋ）が最小になる。相関量Ｃ（ｋ）の最小値が小さいほど、１つの瞳分割信号がより似ていて、相関度が高いといえる。続いて下記（式４）乃至（式７）による３点内挿の手法を用い、連続的な相関量に対する最小値Ｃ（ｘ）を与えるシフト量ｘを求める。
ｘ＝ｋｊ＋Ｄ／ＳＬＯＰ……（式４）
Ｃ（ｘ）＝Ｃ（ｋｊ）−│Ｄ│……（式５）
Ｄ＝｛Ｃ（ｋｊ−１）−Ｃ（ｋｊ＋１）｝／２……（式６）
【００５９】
（式７）で求めたシフト量ｘより、被写体像面の予定結像面に対するデフォーカス量ＤＥＦを下記（式８）で求めることができる。
ＤＥＦ＝ＫＸ・ＰＹ・ｘ……（式８）
【００６０】
（式８）において、ＰＹは撮像素子の画素ピッチ（撮像素子を構成する画素間距離）であり、ＫＸは一対の測距瞳を通過する光束の重心の開き角の大きさによって決まる変換係数である。
【００６１】
距離情報の信頼度は以下のように算出される。図１０は、距離情報の信頼度の算出を説明するための図である。図９（ｂ）に示すように、１対の瞳分割信号のデータ系列の相関度が低い場合は、相関度が高い場合の図９（ａ）に比べて、内挿された相関量の最小値Ｃ（ｘ）の値が大きくなる。そこで、制御部１０１はＣ（ｘ）の情報を用いて判定が行う。図１０（ａ）は横軸に相関量の最小値Ｃ（ｘ）、縦軸に距離情報の信頼度（０．０から１．０）をとるグラフであり、Ｃ（ｘ）が閾値ｔｈ１より小さい場合は距離情報の信頼度が最も高い。Ｃ（ｘ）が閾値ｔｈ１からｔｈ２の範囲は、Ｃ（ｘ）が大きくなるにつれて距離情報の信頼度が低くなり、Ｃ（ｘ）が閾値ｔｈ２を超えるとは距離情報の信頼度が最も低くなる。この関係を用いることで距離情報の信頼度を算出することが可能である。なお、Ｃ（ｘ）だけでなく隣接画素との変化量の大きさを加味した値であるＳＬＯＰでＣ（ｘ）を除した値を用いても良く、その関係は図１０（ａ）と同一である。
【００６２】
図９（ｃ）に示したように、１対の瞳分割信号のデータ系列に内挿された相関量の最小値Ｃ（ｘ）の値が存在しない場合、制御部１０１は、距離情報の信頼度が０と判断してもよい。
【００６３】
図９（ｄ）のように、ＳＬＯＰが所定値以下の場合は被写体が低コントラストである可能性が高く、隣接画素との相関量の差分が小さくなるため、ＳＬＯＰを距離情報の信頼度として使用しても良い。ＳＬＯＰを距離情報の信頼度とする場合は、図１０（ｂ）に示すようにＳＬＯＰが閾値ｔｈ１より小さい場合は距離情報の信頼度が最も低い。ＳＬＯＰが閾値ｔｈ１からｔｈ２の範囲は、ＳＬＯＰが大きくなるにつれて距離情報の信頼度が高くなり、ＳＬＯＰが閾値ｔｈ２を超えるとは距離情報の信頼度が最も高くなる。なお、低コントラストに関しては上記手法以外に、画像自体のエッジ強度から判定しても良く、例えばソーベルフィルタやバンドパスフィルタ等のエッジ抽出フィルタの出力値を用いることができる。
【００６４】
さらに、上記の他に遠近競合に関する情報を信頼度として使用することも可能である。具体的には、上記手法で算出した距離情報（画素毎のデフォーカス量）に対してバンドパスフィルタ処理を行い着目画素と隣接画素の距離情報の変化量を算出する。この変化量が大きいと着目画素近傍に距離情報の異なる被写体が存在する可能性が高く、距離の変化量が小さいと距離情報の近い被写体である可能性が高い。被写体の輪郭部以外では、互いに近い着目画素と隣接画素との距離情報が大きく異なることがないと思われる。よって、図１０（ｃ）に示すように、距離情報の変化量が閾値ｔｈ１より小さい場合は、遠近競合が無く距離情報の信頼度が最も高い。距離情報の変化量が閾値ｔｈ１からｔｈ２の範囲は、距離情報の変化量が大きくなるにつれて距離情報の信頼度が低くなり、距離情報の変化量が閾値ｔｈ２を超えると、遠近競合の可能性が高いとして距離情報の信頼度が最も低くなる。
【００６５】
なお、制御部１０１は、複数の距離情報の信頼度を算出した場合、各々の信頼度の乗算結果を最終的な信頼度とする。例えば、制御部１０１は、ある画素においてＣ（ｘ）を用いて算出した信頼度が高くても、遠近競合を用いて算出した信頼度が低い場合は当該画素の距離情報の信頼度は低いと判定する。
【００６６】
以上は距離情報の信頼度の算出に関して説明した。
【００６７】
＜画像の合成＞
以下では、図３のステップＳ３０３での画像の合成について説明する。
【００６８】
図１１は、画像の合成を説明するためのフローチャートである。Ｓ１１０１において、画像処理部１０７は、位置合わせを行った各画像に対して、各画像を複数の細かい領域に分割し、それぞれの分割領域における画像のコントラスト値を算出する。一例としては、画像処理部１０７は、ソーベルフィルタなどを用いてエッジを抽出し、コントラスト値を算出する。なお、使用するフィルタに制限はなく、ラプラシアンフィルタ等のエッジ検出フィルタや所定の帯域を通過するバンドパスフィルタを用いることも可能である。
【００６９】
Ｓ１１０２において、全ての画像に対してコントラスト値を算出したかを判定し、全ての画像のコントラスト値の算出が終了したらＳ１１０４に移行し、コントラスト値を算出していない画像が存在すればＳ１１０３に移行する。制御部１０１は、全ての画像のコントラスト値の算出が終了するまでＳ１１０１からＳ１１０３の処理を繰り返す。
【００７０】
Ｓ１１０４において、各画像に対するコントラスト値を用いて、分割領域ごとに合成ＭＡＰを生成する。具体的には、同一の位置における分割領域において、ピント位置を変えながら撮像した画像のうち、コントラスト値が最も高くなる画像の合成比率を１００％、それ以外の画像は０％とする。この合成比率の設定をそれぞれの分割領域ごとに行う。なお、隣接画素間で合成比率が０％から１００％に変化（あるいは１００％から０％に変化）すると、合成境界での不自然さが目立つようになる。そのため、合成ＭＡＰに対して所定の画素数（タップ数）を持つローパスフィルタをかけることで、隣接画素間で合成比率が急激に変化しないようにする。また、各撮像画像のコントラスト分布から、コントラストの高い領域に対する画像の合成比率が高くなるような合成ＭＡＰを作成してもよい。
【００７１】
Ｓ１１０５において、画像処理部１０７は、合成ＭＡＰに基づき、撮像画像の合成を行い、出力画像を生成し、制御部１０１は、画像の合成処理を終了させる。
【００７２】
なお、以上の実施形態の１つの変形としては、以下に記述する。以上に記述の実施形態では、距離情報は、各々の画像に対して、撮像部１０４が測距して生成するが、手振れ量に応じて基準画像から算出した距離情報を元にそのほかの画像の距離情報を算出してもよい。手振れ量は、動き情報検出部１１１によって検出される。
【００７３】
図１２は、手振れ量に応じる画像の距離情報の算出を説明するための図である。図１２（ａ）は基準画像のピント位置に対する距離情報であり、１２（ｂ）は基準画像に対して＋１Ｆδ、１２（ｃ）は基準画像に対して＋２Ｆδ、１２（ｄ）は基準画像に対して＋３Ｆδのピント位置で撮像した画像の距離情報である。図１２（ａ）乃至（ｄ）において、距離情報が０Ｆδの領域は、領域１２１１、１２２２、１２３３および１２４４である。手振れ量が小さい場合は、各ピン振り画像の位相が大きくずれないため、基準画像の距離情報で＋１Ｆδとなる領域１２１２は、基準画像に対して＋１Ｆδのピント位置の画像において距離情報が０Ｆδの領域１２２２と見なす。同様に、基準画像の距離情報で＋２Ｆδとなる領域１２１３は、基準画像に対して＋２Ｆδのピン振り画像において距離情報が０Ｆδの領域１２３３と見なす。また、基準画像の距離情報で＋３Ｆδとなる領域１２１４は、基準画像に対して＋３Ｆδのピン振り画像において距離情報が０Ｆδの領域１２４４と見なす。そのため、手振れ量が小さい場合は全てのピン振り画像に対して距離情報の算出は行わず、基準画像の距離情報とピン振り量の関係から、各ピン振り画像における距離情報が０Ｆδの領域を算出するようにする。
【００７４】
なお、前述したジャイロを代表とする動き情報検出部１１１の動作について、以下で簡単に述べる。図１３は、ジャイロの動作を説明するための図である。動き情報検出部１１１に相当するジャイロ１３０１は角速度データを検出し電圧として出力する。次に、ＡＤ変換部１３０２は、ジャイロから出力されるデータをデジタルデータに変換する。ハイパスフィルタ（ＨＰＦ）１４０３は、ジャイロのオフセット成分や温度ドリフト成分などを除去する。ローパスフィルタ（ＬＰＦ）１４０４は、角速度データをそのまま積分し、角度データに変換して手振れ量を算出する。
【００７５】
第１の実施形態によれば、複数の画像を用いて位置合わせを行うとき、合焦領域を正しく判定し、判定した合焦領域に基づいて位置合わせを行うことができる。
【００７６】
（第２の実施形態）
第２の実施形態では、第１の実施形態と異なり、優先度の高いブロックが所定数以上でなければ、距離情報の信頼度の閾値を下げたり、合焦範囲を変更したりする。以下では、第１の実施形態との違いを中心に、第２の実施形態について説明する。なお、第１の実施形態と同様な所は省略する。
【００７７】
第２の実施形態では、第１の実施形態と比べ、ステップＳ４０４での位置合わせの基準領域の設定が異なる。図１４は、第２の実施形態における位置合わせの基準領域の設定を説明するためのフローチャートである。
【００７８】
まず、ステップＳ１４０１で、画像処理部１０７はブロックの評価を行う。ステップＳ１４０１での処理は、ステップＳ６０１と同様であるため、説明は省く。
【００７９】
次に、制御部１０１は、ステップＳ１４０２で、優先度の高いブロックが所定数以上かどうかについて判断する。優先度の高いブロックが所定数以上である場合、ステップＳ１４０３に進み、制御部１０１は、ステップＳ６０３と同じように、距離情報を用いて算出した優先度情報に基づいて、変換係数を算出するための合焦領域とみなせるブロックを選択する。一方、優先度の高いブロックが所定数以上でない場合、ステップＳ１４０４に進む。
【００８０】
ステップＳ１４０４では、制御部１０１は、距離情報の信頼度の閾値を下げて条件を緩和する。例えば、距離情報を算出する際の測距枠に対してずれ量検出のブロック枠が大きい場合、測距枠内にはテクスチャが入っていなくても、ずれ量検出ブロックにはテクスチャが入る可能性がある。その場合そのテクスチャの情報を用いて動きを検出できる可能性があるためである。
【００８１】
ステップＳ１４０５において、制御部１０１は、距離情報の信頼度の閾値が予め決められた下限値以下であればステップＳ１４０６に移行し、そうでなければＳ１４０１の処理に移行してブロックを再評価する。閾値の下限値は以下の手法で経験的に決定されるものであり、以下で説明する。図１５は、距離情報の信頼度の閾値の下限の決定を説明するための図である。図１５は、様々なブロックに対して距離情報の信頼度とずれ量検出を行いその関係をグラフ化したものである。黒丸点１５０１が各ブロックの値であり、それらのデータ群を近似曲線でつないだものが近似曲線１５０２である。この近似曲線１５０２を基にずれ量が１画素未満となる距離情報の信頼度を閾値の下限値とすることができる。
【００８２】
ステップＳ１４０６において、距離情報の信頼度の閾値を下げても優先度の高いブロックが所定数以下の場合、制御部１０１は、合焦範囲（Ｄｅｆ＿ｆｏｃｕｓ）の範囲を広げるように合焦範囲の条件を緩和する。第１の実施形態ではでは１Ｆδの範囲を設定していたが、これを２Ｆδ、３Ｆδと広げるようにする。
【００８３】
ステップＳ１４０７において、制御部１０１は、合焦範囲（Ｄｅｆ＿ｆｏｃｕｓ）の範囲が予め決められた上限値以上であればステップＳ１４０８に移行し、そうでなければステップＳ１４０８の処理に移行してブロックを再評価する。
【００８４】
ステップＳ１４０８において、制御部１０１は、距離情報の信頼度や合焦範囲の条件を緩和しても優先度の高いブロックが所定数以下であれば、距離情報からブロックの優先度を選択することはできないと判断する。第１の実施形態のステップＳ６０４と同様に、距離情報を用いて算出した優先度情報ではなく、一例としてコントラスト値に基づいて、変換係数を算出するブロックを選択する。
【００８５】
第２の実施形態の効果について簡単に説明する。図１６は距離情報の信頼度が全体的に低い被写体を示す図である。図１６（ａ）は、被写体に対する距離情報の信頼度であり、図１６（ｂ）はブロックの優先度の設定を説明するための図である。信頼度が低くなる要因の１つとして絞りがあげられる。例えば、被写体の奥行きが長い場合で撮像枚数が予め決められていると、被写体後部までピント位置が移動できない可能性や、ピント位置間が離れて被写界深度外の距離区間が存在してしまう。その際、ノイズの影響を抑えつつ絞りを数段絞ることが考えられるが、図２のような撮像部だと絞ることで基線長が短くなり、視差がつきにくくなるため測距範囲ならびに距離情報の信頼度が低下することになる。そのため、上述した処理では図１６（ｂ）に示すように優先度の高いブロックがブロック１６０１および１６０２のみになり、第１の実施形態でのステップ４０５の変換係数が一意に決まらず、変換係数を算出することができなくなる。
【００８６】
第２の実施形態によれば、第１の実施形態と比べ、距離情報の信頼度の閾値と合焦範囲とを調整することにより、画像の全体の距離情報の信頼度が低くても、合焦領域を優先的に利用して位置合わせを行うことができる。
【００８７】
（その他の実施形態）
以上の実施形態は、デジタルカメラでの実施をもとに説明したが、デジタルカメラに限定するものではない。たとえば、撮像素子が内蔵した携帯機器などで実施してもよく、画像を撮像することができるネットワークカメラなどでもよい。また、瞳分割信号の情報を持つ画像データがあれば、撮像部がなくても、コンピュータのプログラムによって、本発明を実施することが可能である。
【００８８】
なお、本発明は、上述の実施形態の１つ以上の機能を実現するプログラムを、ネットワークまたは記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し作動させる処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2018074362.tif 000005
【図２】
2018074362.tif 000006
【図３】
2018074362.tif 000007
【図４】
2018074362.tif 000008
【図５】
2018074362.tif 000009
【図６】
2018074362.tif 000010
【図７】
2018074362.tif 000011
【図８】
2018074362.tif 000012
【図９】
2018074362.tif 000013
【図１０】
2018074362.tif 000014
【図１１】
2018074362.tif 000015
【図１２】
2018074362.tif 000016
【図１３】
2018074362.tif 000017
【図１４】
2018074362.tif 000018
【図１５】
2018074362.tif 000019
【図１６】
2018074362.tif 000020