(57)【要約】【課題】  画角の違う画像同士を合成してノイズ低減を行う場合の解像度の劣化を抑制する。【解決手段】  画角の異なる画像同士を合成する際に、被写体像のエッジに基づいて各画像の合成の重みを決定し、決定された重みを用いて画像を合成する。この際、被写体像のエッジ周辺では、画角の大きい画像の重みを小さくする。【選択図】  図７
2018078461.tif 000002
【特許請求の範囲】
【請求項１】
第１の画角を有する第１の撮像部により撮像された第１の画像と、前記第１の画角よりも小さい第２の画角を有する第２の撮像部により撮像された、前記第１の画像と同一の被写体の像を含む第２の画像とを取得する取得手段と、
前記第１の画像と前記第２の画像とを、前記同一の被写体の像が重なるように位置合わせおよび変形する変形手段と、
前記第１の画像と前記第２の画像とが重なる領域において、被写体像のエッジを検出するエッジ検出処理を行う検出手段と、
前記変形手段により位置合わせおよび変形された前記第１の画像と前記第２の画像とを重みづけ合成する際の重みを決定する決定手段と、
前記変形手段により位置合わせ及び変形された前記第１の画像と前記第２の画像とを、前記決定手段により決定された前記重みを用いて重みづけ合成する合成手段とを有し、
前記決定手段は、前記検出手段によってエッジとして検出された領域を含む一部の領域における前記第２の画像の重みに対する前記第１の画像の重みが、前記一部の領域以外の領域における前記第２の画像に対する前記第１の画像の重みよりも小さくなるように、前記重みを決定することを特徴とする画像処理装置。
【請求項２】
前記決定手段は、前記一部の領域における前記第１の画像の重みを０とし、前記一部の領域以外の領域における前記第１の画像の重みを０以外の値とすることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記第１の画像と前記第２の画像とが重なる領域において、前記一部の領域以外の領域における前記第１の画像の重みと前記第２の画像の重みとの比を１対１にすることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記決定手段は、前記第１の画像の各画素における重みを示す重みマップを生成し、前記生成した重みマップにローパスフィルタを作用させ、
前記合成手段は、前記ローパスフィルタを作用させた前記重みマップを用いて前記重みづけ合成を行うことを特徴とする請求項１乃至３のいずれか一項に記載の画像処理装置。 
【請求項５】
前記検出手段は、前記第１の画像及び前記第２の画像において、被写体像のエッジ強度を導出し、
前記決定手段は、前記エッジ強度が大きい画像領域ほど重みが大きくなるように前記第１の画像と前記第２の画像との重みを決定することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記第１の画角よりも小さく前記第２の画角よりも大きい仮想画角を入力する入力手段を更に有し、
前記変形手段は更に、前記第１の画像の、前記入力手段により入力された前記仮想画角に対応する画像領域よりも外側の画像領域をトリミングし、
前記合成手段は、前記変形手段により位置合わせおよび変形された前記第１の画像と前記第２の画像とを合成することで、前記仮想画角に対応する画像データを生成することを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
前記取得手段は、前記第１の画角よりも大きい第３の画角を有する第３の撮像部により撮像され、前記第１の画像および前記第２の画像と同一の被写体を含む第３の画像を更に取得し、
前記変形手段は、前記第３の画像を、前記同一の被写体の像が前記第１の画像及び前記第２の画像と重なるように更に位置合わせおよび変形し、
前記検出手段は、前記第１の画像と前記第３の画像とが重なる領域において、被写体像のエッジを検出するエッジ検出処理を更に行い、
前記決定手段は前記第１の画像と前記第２の画像と前記第３の画像とを重みづけ合成する際の前記第３の画像の重みを更に決定し、
前記合成手段は前記変形手段により位置合わせ及び変形された前記第１の画像と前記第２の画像と前記第３の画像とを、前記決定手段により決定された前記重みを用いて重みづけ合成し、
前記決定手段は、前記第１の画像と前記第３の画像とが重なりかつ前記第２の画像が重ならない画像領域において、前記検出手段によってエッジとして検出された領域を含む一部の領域における前記第１の画像の重みに対する前記第３の画像の重みが、前記一部の領域以外の領域における前記第１の画像に対する前記第３の画像の重みよりも小さくなるように、前記重みを決定することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記決定手段は、前記第１の画像と前記第２の画像と前記第３の画像とが重なる領域において、前記検出手段によってエッジとして検出された領域を含む一部の領域における前記第２の画像の重みに対する前記第３の画像の重みが、前記一部の領域以外の領域における前記第２の画像に対する前記第３の画像の重みよりも小さくなるように、前記重みを決定することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記検出手段は、前記第１の画像および前記第２の画像において、被写体像のエッジ強度を導出し、
前記導出したエッジ強度が所定の閾値を超える領域をエッジとして検出することを特徴とする請求項１乃至８のいずれか一項に記載の画像処理装置。
【請求項１０】
前記一部の領域は、前記検出手段によってエッジとして検出された領域を、所定の画素数分拡張した領域であることを特徴とする請求項１乃至９のいずれか一項に記載の画像処理装置。
【請求項１１】
前記検出手段は、ソーベルフィルタを用いて前記エッジ検出処理を行うことを特徴とする請求項１乃至１０のいずれか一項に記載の画像処理装置。
【請求項１２】
同一の被写体を互いに異なる焦点距離の撮像部を用いて撮像することで得られた複数の画像を取得する取得手段と、
前記複数の画像を、前記同一の被写体の像が重なるように位置合わせおよび変形する変形手段と、
前記複数の画像が重なる領域において、被写体像のエッジを検出し、前記検出されたエッジのエッジ強度を導出する導出手段と、
前記変形手段により位置合わせおよび変形された前記複数の画像を重みづけ合成する際の重みを決定する決定手段と、
前記変形手段により位置合わせ及び変形された前記複数の画像を、前記決定手段により決定された前記重みを用いて重みづけ合成する合成手段とを有し、
前記決定手段は、前記導出手段によってエッジとして検出された領域を含む一部の領域において、前記複数の画像の前記エッジ強度を比較し、前記一部の領域における、前記エッジ強度が最も大きい画像の重みに対する前記エッジ強度が最も大きい画像以外の画像の重みが、前記一部の領域以外の領域における、前記エッジ強度が最も大きい画像の重みに対する前記エッジ強度が最も大きい画像以外の画像の重みよりも小さくなるように、前記重みを決定することを特徴とする画像処理装置。
【請求項１３】
前記決定手段は、前記一部の領域における前記エッジ強度が最も大きい画像以外の画像の重みを０とし、前記一部の領域以外の領域における前記エッジ強度が最も大きい画像以外の画像の重みを０以外の値とすることを特徴とする請求項１２に記載の画像処理装置。 
【請求項１４】
前記決定手段は、前記複数の画像が重なる領域において、前記一部の領域以外の領域における前記複数の画像の重みを等しくすることを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
第１の画角を有する第１の撮像部により撮像された第１の画像と、前記第１の画角よりも小さい第２の画角を有する第２の撮像部により撮像された、前記第１の画像と同一の被写体の像を含む第２の画像とを取得する取得工程と、
前記第１の画像と前記第２の画像とを、前記同一の被写体の像が重なるように位置合わせおよび変形する変形工程と、
前記第１の画像と前記第２の画像とが重なる領域において、被写体像のエッジを検出するエッジ検出処理を行う検出工程と、
前記変形工程で位置合わせおよび変形された前記第１の画像と前記第２の画像とを重みづけ合成する際の重みを決定する決定工程と、
前記変形手段により位置合わせ及び変形された前記第１の画像と前記第２の画像とを、前記決定手段により決定された前記重みを用いて重みづけ合成する合成工程とを含み、
前記決定工程では、前記検出工程でエッジとして検出された領域を含む一部の領域における前記第２の画像の重みに対する前記第１の画像の重みが、前記一部の領域以外の領域における前記第２の画像に対する前記第１の画像の重みよりも小さくなるように、前記重みが決定されることを特徴とする画像処理方法。
【請求項１６】
同一の被写体を互いに異なる焦点距離の撮像部を用いて撮像することで得られた複数の画像を取得する取得工程と、
前記複数の画像を、前記同一の被写体の像が重なるように位置合わせおよび変形する変形工程と、
前記複数の画像が重なる領域において、被写体像のエッジを検出し、前記検出されたエッジのエッジ強度を導出する導出工程と、
前記変形工程で位置合わせおよび変形された前記複数の画像を重みづけ合成する際の重みを決定する決定工程と、
前記変形工程で位置合わせ及び変形された前記複数の画像を、前記決定手段により決定された前記重みを用いて重みづけ合成する合成工程とを有し、
前記決定工程は、前記導出工程でエッジとして検出された領域を含む一部の領域において、前記複数の画像の前記エッジ強度を比較し、前記一部の領域における、前記エッジ強度が最も大きい画像の重みに対する前記エッジ強度が最も大きい画像以外の画像の重みが、前記一部の領域以外の領域における、前記エッジ強度が最も大きい画像の重みに対する前記エッジ強度が最も大きい画像以外の画像の重みよりも小さくなるように、前記重みを決定する工程であることを特徴とする画像処理装置。
【請求項１７】
コンピュータを請求項１乃至１４のいずれか一項に記載の画像処理装置として機能させるプログラム。
【請求項１８】
請求項１乃至請求項１２のいずれか一項に記載の画像処理装置であって、前記被写体像のエッジを検出する対象領域を決定する判定領域決定手段を有することを特徴とする画像処理装置。
【請求項１９】
前記判定領域決定手段は、前記一部の領域における前記エッジ強度が最も大きい画像以外の画像に対し、前記一部の領域を前記エッジを検出する対象領域から除外することを特徴とする請求項１８に記載の画像処理装置。
【請求項２０】
前記判定領域決定手段は、前記一部の領域における前記エッジ強度が最も大きい画像以外の画像に対し、前記一部の領域において、重みが１の画素の集合を前記エッジを検出する対象領域から除外することを特徴とする請求項１８に記載の画像処理装置。
【請求項２１】
請求項１乃至請求項１２のいずれか一項に記載の画像処理装置であって、前記一部の領域の大きさを前記撮像部のパラメータに基づいて決定する範囲決定手段を有することを特徴とする画像処理装置
【請求項２２】
請求項２１に記載の画像処理装置であって、前記パラメータは、前記撮像部におけるレンズの焦点距離、主点位置座標、前記撮像部間の基線長、前記撮像部の位置座標、前記撮像部の向きや姿勢を表す方向ベクトルのいずれかであることを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画角の異なる画像同士の合成処理に関する。
【背景技術】
【０００２】
画像のノイズ低減を行う方法として、同じシーンを撮影した複数の画像を合成する技術が知られている。また、複数の画像を同時に撮像する撮像装置として、画角の異なる複数の撮像部を有する撮像装置がある（特許文献１）。特許文献１には、画像の拡大による仮想的なズーム処理（電子ズーム）を行う際に、広角で撮影された画像と望遠で撮影された画像とを仮想画角に応じて切り替えながら電子ズームを行うことが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４３４１０１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像合成によるノイズ低減の効果を最大限まで高めようとした場合、撮像された複数の画像の全てを合成することが理想である。しかしながら、特許文献１に記載の技術のように、撮像された複数の画像の中に互いに画角の異なる画像が含まれている場合、そのまま全ての画像を合成してしまうと、望遠画像で得られた解像度が合成により劣化してしまうと言う課題があった。そこで、本発明は、画角の違う画像同士を合成してノイズ低減を行う場合の解像度の劣化を抑制することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係る画像処理装置は、第１の画角を有する第１の撮像部により撮像された第１の画像と、前記第１の画角よりも小さい第２の画角を有する第２の撮像部により撮像された、前記第１の画像と同一の被写体の像を含む第２の画像とを取得する取得手段と、前記第１の画像と前記第２の画像とを、前記同一の被写体の像が重なるように位置合わせおよび変形する変形手段と、前記第１の画像と前記第２の画像とが重なる領域において、被写体像のエッジを検出するエッジ検出処理を行う検出手段と、前記変形手段により位置合わせおよび変形された前記第１の画像と前記第２の画像とを重みづけ合成する際の重みを決定する決定手段と、前記変形手段により位置合わせ及び変形された前記第１の画像と前記第２の画像とを、前記決定手段により決定された前記重みを用いて重みづけ合成する合成手段とを有し、前記決定手段は、前記検出手段によってエッジとして検出された領域を含む一部の領域における前記第２の画像の重みに対する前記第１の画像の重みが、前記一部の領域以外の領域における前記第２の画像に対する前記第１の画像の重みよりも小さくなるように、前記重みを決定することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、画角の違う画像同士を合成してノイズリダクションを行う場合の解像度の劣化を抑制することができる。
【図面の簡単な説明】
【０００７】
【図１】実施例１に係る複数の撮像部を備えた多眼方式の撮像装置の一例を示す図。
【図２】撮像装置の内部構成の一例を示すブロック図。
【図３】撮像部の内部構成の一例を示す図。
【図４】実施例１に係る撮像装置の機能構成を示すブロック図。
【図５】実施例１に係る撮像装置で行われる処理の流れを示すフローチャート。
【図６】画像変形処理の概念図。
【図７】実施例１の決定部で行われる重み決定処理の流れを示すフローチャート。
【図８】実施例１に係る重みの決定方法の概念図。
【図９】実施例２に係る複数の撮像部を備えた多眼方式の撮像装置の一例を示す図。
【図１０】実施例２の決定部で行われる重み決定処理の流れを示すフローチャート。
【図１１】実施例２に係る重みの決定方法の概念図。
【図１２】実施例３に係る重みの決定方法の概念図。
【図１３】実施例４に係る重みの決定方法の概念図。
【図１４】実施例５の決定部で行われる重み決定処理の流れを示すフローチャート。
【図１５】実施例５のエッジ強度を比較に基づく重み決定処理の流れを示すフローチャート。
【図１６】実施例６に係る決定部の機能構成を示すブロック図。
【図１７】実施例６の決定部で行われるエッジ強度の比較処理、重み決定処理の流れを示すフローチャート。
【図１８（ａ）】実施例６に係る重み決定方法、エッジ強度の比較方法の概念図。
【図１８（ｂ）】実施例６に係る重み決定方法、エッジ強度の比較方法の概念図。
【図１９】実施例６に係る重み決定方法の概念図。
【図２０】実施例７に係る決定部の機能構成を示すブロック図。
【図２１】実施例７に係る周辺領域の決定方法の概念図
【発明を実施するための形態】
【０００８】
以下に図面を参照して、発明の実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【０００９】
＜実施例１＞
本実施例では、画角の異なる２枚の撮像画像データとユーザの指定した仮想画角とを基に、仮想画角に対応する仮想画角画像データを生成する電子ズーム処理を行う撮像装置について説明する。この際、仮想画角を大きくすることでズーム倍率が小さい広角の仮想画角画像データが得られ、仮想画角を小さくすることでズーム倍率が大きい望遠の仮想画角画像データが得られる。すなわち、ユーザは仮想画角を変えることで、仮想画角画像データのズーム倍率を変えることができる。本実施例に記載の処理は、撮像の際のプレビュー画像データを生成する処理や撮像後に任意のズーム倍率の画像データを生成する処理として利用可能である。
【００１０】
図１は、本実施例に係る撮像装置の構成の一例を示す図である。図１に示すように、撮像装置１００はカラー画像データを取得する２個の撮像部１０１〜１０２及び撮像ボタン１０３を備えている。撮像部１０１と撮像部１０２は、それぞれの光軸が平行になるように配置されている。本実施例では、撮像部１０１と撮像部１０２との間の水平方向における間隔をＲ、撮像部１０１の画角をθ１、撮像部１０２の画角をθ２とする。なお、θ１＞θ２であり、撮像部１０２よりも撮像部１０１の方が画角が大きいものとする。
【００１１】
ユーザが撮像ボタン１０３を押下すると、撮像部１０１〜１０２が被写体の光情報をセンサ（撮像素子）で受光し、受光した信号がＡ／Ｄ変換され、複数のデジタルデータ（撮像画像データ）が同時に得られる。なお、ここでは撮像部の数を２個としたが撮像部の数は２個に限定されず、撮像装置が複数の撮像部を有する限りにおいてその数によらず本実施例は適用可能である。
【００１２】
図２は、撮像装置１００の内部構成を示すブロック図である。中央処理装置（ＣＰＵ）２０１は、以下に述べる各部を統括的に制御する処理回路である。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能するメモリである。ＲＯＭ２０３は、ＣＰＵ２０１で実行される制御プラグラム等を格納しているメモリである。バス２０４は、各種データの転送経路であり、例えば、撮像部１０１〜１０２によって取得された撮像画像データは、このバス２０４を介して撮像装置１００内の各処理部に送られる。
【００１３】
操作部２０５は、ボタンやモードダイヤル等の、ユーザの指示を受け取るための操作ユニットであり、ユーザは操作部２０５の操作により撮像装置１００に撮像指示やズーム指示を行うことができる。表示部２０６は撮像した画像や文字の表示を行うディスプレイである。表示部２０６はタッチスクリーン機能を有していても良く、その場合にはタッチスクリーンを用いた撮像指示やズーム指示などのユーザ指示を操作部２０５の入力として扱ってもよい。
【００１４】
表示制御部２０７は、表示部２０６に表示される画像や文字の表示制御を行う処理回路である。撮像制御部２０８は、フォーカスを合わせる、シャッターを開く・閉じる、絞りを調節するなどの、ＣＰＵ２０１からの指示に基づいた撮像部の制御を行う処理回路である。デジタル信号処理部２０９は、バス２０４を介して受け取った撮像画像データに対し、ホワイトバランス処理、ガンマ処理、ノイズ低減処理などの各種処理を行う処理回路である。
【００１５】
エンコード部２１０は、撮像画像データをＪＰＥＧやＭＰＥＧなどのファイルフォーマットに変換する処理を行う処理回路である。外部メモリ制御部２１１は、撮像装置１００を、外部メモリ２１３（例えば、ＰＣ、ハードディスク、メモリーカード、ＣＦカード、ＳＤカード、ＵＳＢメモリなどの記憶媒体）に接続するためのインターフェースである。画像処理部２１２は、撮像部１０１〜１０２で取得された撮像画像データ群或いは、デジタル信号処理部２０９から出力される撮像画像データ群を用いて画像合成などの画像処理を行う。
【００１６】
例えば、画角の異なる複数の画像データとユーザのズーム指示によって設定された仮想画角とを用いて、仮想画角に対応した仮想画角画像データを生成する。なお、撮像装置の構成要素は上記以外にも存在するが、本実施例の主眼ではないので、説明を省略する。
【００１７】
図３は、撮像部１０１の内部構成を示す図である。撮像部１０１は、レンズ３０１〜３０２、絞り３０３、シャッター３０４、光学ローパスフィルタ３０５、ｉＲカットフィルタ３０６、カラーフィルタ３０７、センサ３０８及びＡ／Ｄ変形部３０９で構成される。レンズ３０１〜３０２は夫々、フォーカスレンズ３０１、ぶれ補正レンズ３０２である。センサ３０８は、例えばＣＭＯＳやＣＣＤなどのセンサであり、上記の各レンズでフォーカスされた被写体の光量を検知する。
【００１８】
検知された光量はアナログ値としてセンサ３０８から出力され、Ａ／Ｄ変形部３０９によってデジタル値に変換されて、デジタルデータとなってバス２０４に出力される。なお、撮像部１０２の構成はレンズ３０１〜３０２の焦点距離以外は撮像部１０１と同様であるので、説明を省略する。
【００１９】
次に、本実施例の撮像装置１００で行われる処理の流れについて図４および図５を参照して説明する。図４は画像処理部２１２の機能ブロック図である。ＣＰＵ２０１がＲＯＭ２０３から読み出したプログラムをＲＡＭ２０２をワークメモリとして実行し、画像処理部２１２を制御することで、画像処理部２１２は図４に示す各機能ブロックとしての機能を果たす。なお、図４に示す各機能ブロックに対応する専用の処理回路を撮像装置１００が有するようにしても良い。
【００２０】
図５は画像処理部２１２によって実行される処理の流れを示すフローチャートである。以下では、仮想画角θ’はθ２≦θ’≦θ１の範囲にあるものとして説明する。
【００２１】
ステップＳ５０１では、画像取得部４０１が、撮像部１０１〜１０２から入力された撮像画像データを取得し、位置合わせ部４０４に出力する。以下、撮像部１０１で撮像された画像をＩ１（ｘ，ｙ）、撮像部１０２で撮像された画像をＩ２（ｘ，ｙ）とする。まず、ステップ５０１の画像データ取得処理において、撮像データ入力部４０１は撮像部１０１、１０２によって撮像された複数の撮像画像データＩ１（ｘ，ｙ）、Ｉ２（ｘ，ｙ）を撮像部１０１、１０２から取得する。
【００２２】
撮像画像データは撮像部１０１、１０２から直接取得してもよいし、ＲＡＭ２０２や外部メモリ２１３に記憶されたものを読み出してもよい。画像取得部４０１は、取得した撮像画像データを位置合わせ部４０４に出力する。
【００２３】
ステップＳ５０２では、撮像パラメータ取得部４０２が、撮像部１０１の画角θ１と、撮像部１０２の画角θ２と、撮像部１０１と撮像部１０２との間隔Ｒと、を含む撮像パラメータを、ＲＯＭ２０３や外部メモリ２１３などの記憶装置から取得する。撮像パラメータ取得部４０２は、取得した撮像パラメータを位置合わせ部４０４、変形部４０５、決定部４０６に出力する。
【００２４】
ステップＳ５０３では、処理パラメータ取得部４０３が仮想画角θ’を含む処理パラメータを操作部２０５からの出力に基づいて取得する。なお、ユーザは仮想画角θ’操作部２０５の走査により入力する。例えば撮像装置のズームボタンの操作に伴って画角の変化を推定しても良いし、ユーザが所望の画角の数値を直接入力するようにしてもよい。処理パラメータ取得部４０３は、取得した処理パラメータを位置合わせ部４０４、変形部４０５、決定部４０６に出力する。
【００２５】
ステップＳ５０４では位置合わせ部４０４が、画像取得部４０１から入力された撮像画像データと撮像パラメータ取得部４０２から入力された撮像パラメータと処理パラメータ取得部４０３から入力された処理パラメータとを用いて、画像の位置合わせを行う。位置合わせが行われた後の画像Ｉ１（ｘ，ｙ）、Ｉ２（ｘ，ｙ）を画像Ｊ１（ｘ，ｙ）、Ｊ２（ｘ，ｙ）とする。なお、ここで行われる位置合わせ処理の詳細については後述する。位置合わせ部４０４は位置合わせが終了した画像Ｊ１（ｘ，ｙ）とＪ２（ｘ，ｙ）を変形部４０５に出力する。
【００２６】
ステップＳ５０５では、変形部４０５が、位置合わせ部４０４から入力された画像Ｊ１（ｘ，ｙ）、Ｊ２（ｘ，ｙ）に対して、仮想画角θ’に応じた拡大（縮小）処理を行う。この処理の概念を図６に示す。図６において、画像６０１は視点位置合わせ後の画像Ｊ１であり、画像６０２は視点位置合わせ後の画像Ｊ２である。先に仮定したように、撮像部１０１の画角θ１は、仮想画角θ’以上であり、撮像部１０２の画角θ２は、仮想画角θ’以下である。
【００２７】
画像６０３は画像６０１をｔａｎθ１／ｔａｎθ’倍に拡大したものであり、その中で画角θ’に対応する領域をトリミングしたものが画像６０４である。また、画像６０２をｔａｎθ２／ｔａｎθ’倍に縮小したものが画像６０５であり、画角θ’に対応するように画像６０５の周辺を０で埋めた画像が画像６０６である。変形部４０５は、位置合わせ部４０４から入力された画像Ｊ１（ｘ，ｙ）、Ｊ２（ｘ，ｙ）を画像６０１および画像６０２とした場合の画像６０４および画像６０６を生成する。以下では、画像６０４をＫ１（ｘ，ｙ）、画像６０６をＫ２（ｘ，ｙ）と表すものとする。
【００２８】
変形部４０５は、生成した画像Ｋ１（ｘ，ｙ）、Ｋ２（ｘ，ｙ）を決定部４０６と合成部４０７とに出力する。
【００２９】
ステップＳ５０６では、決定部４０６が撮像部１０１の画角θ１、撮像部１０２の画角θ２、および処理パラメータに含まれる仮想画角θ’、変形後の撮像画像データＫ１（ｘ，ｙ）、Ｋ２（ｘ，ｙ）の特性を元に合成に用いる重み係数を決定する。ここで行われる処理の詳細については後述する。決定部４０６は、ここで決定した画像Ｋ１（ｘ，ｙ）に対応する重み係数ｗ１（ｘ，ｙ）と、画像Ｋ１（ｘ，ｙ）に対応する重み係数ｗ２（ｘ，ｙ）とを合成部４０７に出力する。
【００３０】
最後にステップＳ５０７では、合成部４０７がＫ１（ｘ，ｙ）、Ｋ２（ｘ，ｙ）に重み係数ｗ１（ｘ，ｙ）、ｗ２（ｘ，ｙ）を乗算し、以下の式に従って加算合成する。
Ｉｓｙｎｔｈ（ｘ，ｙ）＝［ｗ１（ｘ，ｙ）Ｋ１（ｘ，ｙ）＋ｗ２（ｘ，ｙ）Ｋ２（ｘ，ｙ）］／［ｗ１（ｘ，ｙ）＋ｗ２（ｘ，ｙ）］      （１）
合成部４０７は、生成した合成画像データＩｓｙｎｔｈ（ｘ，ｙ）をＲＡＭ２０２などの記憶装置に出力して処理を終了する。
【００３１】
以上が本実施例の撮像装置１００で行われる処理の流れである、次に、各工程における処理の詳細について説明する。
【００３２】
〔位置合わせ部４０４の処理〕
まず、位置合わせ部４０４で行われる処理（ステップＳ５０４）の詳細について説明する。位置合わせ部４０４は、撮像画像Ｉ１と撮像画像Ｉ２との位置合わせを行う。本実施例では、撮像部１０１の画角の方が撮像部１０２の画角に比べて大きいので、撮像部１０２の画像を撮像部１０１の視点位置に合わせるものとする。位置合わせ部４０４は、撮像部１０１の画像Ｉ１を図６の画像６０１と画像６０３の関係のように、ｔａｎθ１／ｔａｎθ２に拡大してトリミングし、この画像をＩ１’とする。
【００３３】
次に、画像Ｉ２（ｘ，ｙ）と画像Ｉ１’（ｘ，ｙ）の各画素（領域）における視差を求める。このとき視差を求めるのは、図６に示す例では、画像６０４の領域のみである。視差を求める方法としては、公知のブロックマッチング手法を用いる。ブロックマッチングは、基準画像のある画像領域との類似度が最も高い画像ブロックを、参照画像から導出する手法である。導出された対応する画像領域同士の画像中での位置の差から、各画素位置に対応するＩ１’から見たＩ２の視差（ｄｘ（ｘ，ｙ），ｄｙ（ｘ，ｙ））を求めることができる。
【００３４】
画素（領域）ごとに視差を求めることができる方法であれば、ブロックマッチングに限らず、例えばグラフカットなどの手法を用いてもよい。最後に画像Ｉ２（ｘ，ｙ）を視差（−ｄｘ（ｘ，ｙ），−ｄｙ（ｘ，ｙ））だけずらし、
Ｉ’２（ｘ，ｙ）＝Ｉ２（ｘ＋ｄｘ（ｘ，ｙ），ｙ＋ｄｙ（ｘ，ｙ））      （２）
とし、撮像部１０２の画像の視点位置を撮像部１０１に合わせた画像を得る。
【００３５】
なお、画像の位置合わせの方法は上記に限られず、例えば赤外線を用いた距離センサを使って被写体の距離を取得し、取得した距離と各撮像部の間の間隔とに基づいて画像をずらすようにしても良い。以上により、視点位置を合わせた画像をそれぞれ、Ｊ１（ｘ，ｙ）、Ｊ２（ｘ，ｙ）とする。以上が位置合わせ部４０４で行われる処理である。
【００３６】
〔決定部４０６の処理〕
次に、決定部４０６における処理（ステップＳ５０６）の詳細について説明する。図７は決定部４０６の処理を示すフローチャートである。ステップＳ７０１では、決定部４０６が、入力された各画像について、撮像された際の画角が仮想画角θ’より大きいかどうか判定する。撮像された際の画角が仮想画角θ’より大きい場合（本実施例では、撮像部１０１で撮像された場合）には、ステップＳ７０２に進む。撮像された際の画角が仮想画角θ’よりも小さい場合には、ステップＳ７０４に進む。
【００３７】
ステップＳ７０２では、決定部４０６が、画像のエッジの検出処理を行う。ここでは、エッジは以下のソーベルフィルタ
【００３８】
【数１】
2018078461.tif 000003
【００３９】
を用いて
【００４０】
【数２】
2018078461.tif 000004
【００４１】
の式によって強度を算出する。＊は畳みこみ、Ｉは画像を表すものとする。式（４）の値が閾値Ｔ以上のときは、対象の画素をエッジに対応する画素であると判定する。画素値の範囲が［０，２５５］の場合、閾値Ｔとしては、例えばＴ＝２０を用いる。なお、エッジ検出の方法は以上のソーベルフィルタに限られず画像の画素値に対して微分演算を行ってエッジ検出を行うなどの処理を行っても良い。
【００４２】
ステップＳ７０３では、決定部４０６が、ステップＳ７０２で検出されたエッジ情報に基づいて、画像の各画素について合成の重みを決定する。ここでは、画角θ２の範囲に含まれる、ステップＳ７０２でエッジとして検出された画素を中心としたｓ×ｓのサイズのブロックに含まれる画素の重みを０とし、その他の画素の重みは１とする。例えばブロックサイズｓはｓ＝１０を用いることができる。すなわち、エッジとして検出された画素を所定の画素数分拡張した一部の領域の重みが０として決定される。そして、決定部４０６は、決定した重みを合成部４０７に出力して処理を終了する。
【００４３】
ステップＳ７０４では、決定部４０６が、重み決定の対象の画像の撮像時の画角（θ２）に対応する画像領域の重みは１とし、画角θ２の範囲に含まれない画像領域の重みを０とする。そして、決定部４０６は、決定した重みを合成部４０７に出力して処理を終了する。
【００４４】
ステップＳ７０３およびＳ７０４における重みの決め方の概念図を図８に示す。図８において、領域８０２は、撮像部１０２の画角θ２の範囲を表したものであり、画像８０１は画像６０４の各画素に対応する重み係数を示した重みマップである、画像８０３は画像６０６の各画素に対応する重み係数を示した重みマップである。画像８０１および画像８０３において、白い領域には重み係数１が、黒い部分には重み係数０が格納されている。
【００４５】
撮像された際の画角が仮想画角θ’よりも大きい場合には、領域８０２に含まれる画素のうち、エッジとして検出された画素を含むエッジ領域の重みが０となり、その他の画素の重みが１となっている。すなわち、領域８０２の中のエッジ領域以外の領域においては、望遠側の画像と広角側の画像の重みは１対１となっている。また、撮像された際の画角が仮想画角θ’よりも小さい場合には、領域８０２に含まれる画素全ての重みが１となり、領域８０２の外側の画素全ての重みが０となっている。
【００４６】
このように、画像のエッジ領域には広角の画像の画素値を用いずに、画像のエッジ領域以外の領域では広角の画像の画素値も用いて最終的な画像の画素値を決定することにより、ノイズが低減されつつも望遠の画像の解像感が残った画像を生成することができる。
【００４７】
なお、本実施例において、画像取得部４０１は、第１の画角を有する第１の撮像部により撮像された第１の画像と、前記第１の画角よりも小さい第２の画角を有する第２の撮像部により撮像された第２の画像とを取得する取得手段として機能する。また、位置合わせ部４０４と変形部４０５は前記第１の画像と前記第２の画像とを、前記同一の被写体の像が重なるように位置合わせおよび変形する変形手段として機能する。また、決定部４０６は、前記第１の画像と前記第２の画像とが重なる領域において、被写体像のエッジを検出するエッジ検出処理を行う検出手段として機能する。
【００４８】
また、決定部４０６は、前記変形手段により位置合わせおよび変形された前記第１の画像と前記第２の画像とを重みづけ合成する際の重みを決定する決定手段としても機能する。また、合成部４０７は、前記変形手段により位置合わせ及び変形された前記第１の画像と前記第２の画像とを、前記決定手段により決定された前記重みを用いて重みづけ合成する合成手段として機能する。
【００４９】
＜実施例２＞
実施例１では、撮像部の画角が２種類の場合について説明したが、本実施例では、画角が互いに異なる撮像部を３種類以上有する場合について説明する。図９は、本実施例に係る撮像装置の一例を示す図である。図９に示すように、撮像装置９００はカラー画像データを取得する４個の撮像部９０１〜９０４を備えている。撮像部９０１〜撮像部９０４は、それぞれの光軸が平行になるように配置されている。本実施例では、撮像部９０１〜撮像部９０４の画角をθ１〜θ４とし、画角の大小関係は、θ１＞θ２＞θ３＞θ４とする。
【００５０】
すなわち、撮像部９０１が最も画角が大きく、撮像部９０４が最も画角が小さい。また、仮想画角θ’は、θ１＞θ２＞θ’＞θ３＞θ４の関係を満たすものとする。本実施例における基本的な処理は実施例１と同様であるが、ステップＳ５０６における重み決定の処理の内容が異なる。図１０は、本実施例におけるステップＳ５０６の処理の流れを示したフローチャートである。実施例１と同様の処理については図７と同様の符号を付し、説明を省略する。
【００５１】
ステップＳ１００１では、決定部４０６が、重み決定の対象である画像の撮像時の画角が、撮像部９０１〜９０４の画角のうち、仮想画角より広角の画角の中で仮想画角に最も近いかどうかを判定する。本実施例の場合、仮想画角よりも広角でかつ仮想画角に最も近い画角は、θ２である。重み決定の対象である画像の撮像時の画角がθ２であるときは、ステップＳ１００２に進む。そして、重み決定の対象である画像の撮像時の画角がθ２ではない場合は、ステップＳ１００３に進む。
【００５２】
ステップＳ１００２では、決定部４０６が、ステップＳ７０２で検出されたエッジ情報に基づいて、画像の各画素について合成の重みを決定する。ここでは、重み決定の対象の画像において、撮像部９０１〜９０４の画角のうち、重み決定の対象である画像の撮像時の画角よりも一段階小さい画角（本実施例ではθ３）に含まれない領域の重みが１として決定される。そして、画角θ３の範囲に含まる、ステップＳ７０２でエッジとして検出された画素を中心としたｓ×ｓのサイズのブロックに含まれる画素の重みを０とし、その他の画素の重みは１として決定される。
【００５３】
そして、決定部４０６は、決定した重み係数を合成部４０７に出力して処理を終了する。ステップＳ１００３では、決定部４０６が、ステップＳ７０２で検出されたエッジ情報に基づいて、画像の各画素について合成の重みを決定する。このステップでは、画像中の全領域において、エッジとして検出された画素を中心としたｓ×ｓのサイズのブロックに含まれる画素の重みを０とし、その他の画素の重みを１として決定する処理が行われる。そして、決定部４０６は、決定した重み係数を合成部４０７に出力して処理を終了する。
【００５４】
図１１は、ステップＳ１００２およびステップＳ１００３で行われる重み決定処理の概念を示す図である。図１１において、画像１１０１は撮像部９０２により撮像された画像（画角θ２）に変形処理を行ったものを、画像１１０３は撮像部９０１により撮像された画像（画角θ１）に変形処理を行ったものを示す。領域１１０２は、撮像部９０１〜９０４の撮像画角のうち仮想画角よりも小さい画角の中で、最も仮想画角に近い画角θ３の画角範囲を表している。画像１１０４は、画像１１０１の各画素に対応する重み係数を示した重みマップである。
【００５５】
重み決定の対象である画像が撮像された際の画角が、仮想画角よりも大きな画角の中で最も仮想画角に近い場合（画角がθ２の場合）、領域１１０２に含まれない範囲では最も解像感の高い画像が得られている。そこで、エッジ領域の重みを０にするのは領域１１０２内のみに限定されており、領域１１０２に含まれない範囲の重みはエッジ領域においても１となっている。
【００５６】
一方、重み決定の対象である画像が撮像された際の画角が、仮想画角よりも大きな画角の中で最も仮想画角に近いわけではない場合、仮想画角内の全ての領域において解像感が他の画像に比べて劣っている。そのため、画像内の全域でエッジ領域の重みが０となっている。
【００５７】
以上が本実施例における重み決定処理の概要である。以上の処理によれば、合成する画像の画角の種類が３種類以上である場合においても、解像感の低下を抑制しつつ画像合成によるノイズ低減を行うことができる。
【００５８】
＜実施例３＞
実施例１および実施例２では、決定部４０６が、撮像時の画角が仮想画角より小さい画像に対する重み係数を図８の重みマップ８０３のように決定した。しかし、このようにある領域の内側と外側で重みが０から１に急激に変化するように重みを決定すると、合成に用いる画像の枚数が切り替わる境界でノイズ量が急激に変化し、ノイズ段差が発生する。例えば実施例１の場合では、領域８０２の内側では加算される画像枚数が２枚であり、領域８０２の外側では加算される画像枚数が１枚であるため、領域８０２の外側では領域８０２の内側に比べてノイズ量が大きくなり、ノイズ段差が発生する。
【００５９】
そこで、本実施例では、撮像時の画角が仮想画角よりも小さい場合の重み係数を以下のように決める。図１２において、グラフ１２０１は重みマップ８０３の水平方向における断面図である。グラフ１２０１では、領域８０２の内側は重み係数が１、領域８０２の外側は重み係数が０となるように決定されている。これに対し、グラフ１２０２は本実施例における重みの決定方法により重み係数が決定された重みマップの水平方向における断面図である。グラフ１２０２では、領域８０２の内側において、領域８０２の境界に向かって重み係数が１から０になめらかに変化するように決定されている。
【００６０】
なお、図１２の例では、重み係数が直線に沿って変化するように重み値を決定しているが、重み係数が境界に向かってなめらかに変化するように決定されていれば、重み係数を直線にそって変化するように決定する必要はない。例えば、スプライン曲線やシグモイド関数にそって重み値が変化するように決定してもよい。また、図１２では、水平方向における重みマップの断面図のみ図示しているが、垂直方向に関しても同様に重みが滑らかに変化するように重みを決定する。
【００６１】
以上のように、撮像時の画角が仮想画角よりも小さい画像に対する重みを決定する際に、重み係数が０になる領域と重み係数が１になる領域との境界で重みが滑らかに変化するように重みを決定することで、ノイズ段差を軽減することができる。
【００６２】
＜実施例４＞
実施例１および実施例２では、撮像時の画角が仮想画角よりも大きい画像の重み係数を、エッジ領域の重み係数が０になるように決定した。しかし、エッジ領域の重み係数を単純に０にしてしまうと、実施例３で述べたようにエッジ領域の周辺でノイズ段差が発生してしまう。
【００６３】
そこで、本実施例では、撮像時の画角が仮想画角よりも大きい画像について決定された重みマップに対してローパスフィルタを作用させ、重み係数が滑らかに変化するようにし、ノイズ段差を緩和する。図１３は、本実施例における重みマップの補正処理の概要を示す図である。図１３において、画像１３０１は、重みマップ１１０５にローパスフィルタを作用させたものである。このように、重みマップに対してローパスフィルタを作用させることでエッジ領域における重みの急激な変化を緩和でき、エッジ領域におけるノイズ段差を軽減することができる。
【００６４】
なお、ここでは重みマップに対してローパスフィルタを作用させることにより、エッジ周辺部における重み係数の急激な変化を緩和したが、別の手法を用いてもよい。例えば、重み係数ｗ（ｘ，ｙ）を式（４）で定義されるようなエッジ強度の関数として表してもよい。このとき、エッジ強度の関数としては、エッジ強度が強いほど、重み係数が小さくなり、ベタ部（エッジ強度が０）では重み係数が１に近づく関数を採用する。例えば以下の関数を考えることができる。
【００６５】
【数３】
2018078461.tif 000005
【００６６】
式（５）において、Ｇ（ｘ，ｙ）は式（４）で定義されるエッジ強度である。この式に従ってエッジ領域における重みを決定すれば、重みマップにローパスフィルタを作用させなくても、エッジ領域におけるノイズ段差を軽減することができる。
【００６７】
＜実施例５＞
実施例１〜４では、画角が小さい画像の方が被写体像の解像度が高いという前提を置いた。しかし、実際には撮像部の画角が小さくなると被写界深度が浅くなるため、望遠側の画像ではピント面から外れた被写体にボケが発生し、広角側の画像よりも解像度が劣化している可能性がある。このような画像を実施例１〜４の手法に従って合成すると、望遠側の暈けが反映されて解像感のよくない画像が生成されてしまうため、画像の自然なボケよりも被写体の解像感を優先したい場合には課題となる。
【００６８】
そこで、本実施例では、合成する各画像のエッジ強度を比較し、エッジ強度の大きい方の領域の重みを大きくすることで、解像感を維持する例について説明する。ここで用いる撮像装置の撮像部の構成は実施例２と同様であるとする。図１４は、本実施例における決定部４０６の処理の流れを示すフローチャートである。実施例１および実施例２と同様の処理については同様の符号を付して説明を省略する。
【００６９】
ステップＳ１４０１およびステップＳ１４０２では、決定部４０６が、ステップＳ７０２と同様に画像のエッジの検出処理を行う。ステップＳ７０２と異なる点は、エッジとして検出された画素について、その画素のエッジ強度も保持しておく点である。ステップＳ１４０１を行った場合はステップＳ１００１に進み、ステップＳ１４０２を行った場合はステップＳ１４０３に進む。ステップＳ１４０３では、決定部４０６が、ステップＳ１４０１とステップＳ１４０２とで算出したエッジ強度を比較し、重みを決定する。この処理について詳細に説明する。
【００７０】
図１５はステップＳ１４０３の処理の流れを表したフローチャートである。ステップ１５０３では、画像を重なりのない複数のブロックに分割し、各ブロックに対し、処理を行うものとする。処理対象のブロックの順番は、画像の左上から開始し、左上から右下へ順次移動していくものとする。また、ステップＳ１４０３で処理の対象とする画像は、撮像時の画角が仮想画角よりも小さい画像と、撮像時の画角が仮想画角よりも大きくかつ最も仮想画角に近い画角の画像である。
【００７１】
ステップＳ１５０１では、決定部４０６が、重みを計算するブロックを初期位置に設定する。ここでは、画像の左上端に設定するものとする。ステップＳ１５０２では、決定部４０６が、ステップＳ１４０３での重み決定の対象である画像の中に、ステップＳ１４０１またはＳ１４０２でエッジとして検出された領域が対象のブロックに含まれる画像があるかどうかを判定する。ステップＳ１４０１またはＳ１４０２でエッジとして検出された領域が対象のブロックに含まれる画像がないと判定された場合は、ステップＳ１５０３に進む。
【００７２】
ステップＳ１４０１またはＳ１４０２でエッジとして検出された領域が対象のブロックに含まれる画像があると判定された場合は、ステップＳ１５０４に進む。ステップＳ１５０３では、決定部４０６が、ステップＳ１４０３での重み決定の対象となっている画像の、対象のブロックに含まれる全ての画素の重みを１にしてステップＳ１５０７に進む。
【００７３】
ステップＳ１５０４では、決定部４０６が、対象のブロックにエッジが含まれる画像が複数あるかどうかを判定する。対象のブロックにエッジが含まれる画像が複数あると判定された場合はステップＳ１５０５に進む。対象のブロックにエッジが含まれる画像が複数ないと判定された場合はステップＳ１５０６に進む。
【００７４】
ステップＳ１５０５では、決定部４０６が、対象のブロックにエッジが含まれるとして判定された複数の画像の、対象のブロックに含まれるエッジのエッジ強度を比較する。決定部４０６は、例えば対象のブロック内でエッジとして検出された画素のエッジ強度の平均同士を比較し、ブロック内でのエッジ強度の平均が最も大きい画像を判定する。
【００７５】
ステップＳ１５０６では、決定部４０６が、エッジに基づいて対象のブロックの重みを決定する。決定部４０６は、対象ブロックにエッジが含まれる唯一の画像、又は、対象ブロックにエッジが含まれる複数の画像の中で最もエッジ強度が大きい画像の対象ブロックの画素の重みを全て１に設定する。そして、重みが１に設定された画像以外の画像の対象ブロックの画素の重みを全て０に設定する。
【００７６】
ステップＳ１５０７では、決定部４０６が、画像中の全てのブロックについて重み決定の処理が終了したかどうかを判定する。画像中の全てのブロックについて重み決定の処理が終了したと判定された場合は、決定した重み値を合成部４０７に出力して処理を終了する。画像中の全てのブロックについて重み決定の処理が終了していないと判定された場合は、ステップＳ１５０８に進む。ステップＳ１５０８では、対象ブロックを更新してステップＳ１５０２に戻る。
【００７７】
以上が本実施例の決定部４０６で行われる処理である。以上の処理によれば、望遠側の画像に暈けが発生している場合であっても、合成による解像感の低下を抑制することができる。
【００７８】
＜実施例６＞
実施例１および実施例２では、撮像装置１００、９００において同一画角を有する撮像部が一台のみの場合について説明した。本実施例では、ある画角を有する撮像部が複数台ある場合について実施例１、２との差異のみ説明する。
【００７９】
図９に示すように、撮像装置９００はカラー画像データを取得する４個の撮像部９０１〜９０４を備えている。撮像部９０１〜撮像部９０４は、それぞれの光軸が平行になるように配置されている。本実施例では、撮像部９０１、９０２の画角をθ１とし、撮像部９０３、９０４の画角をθ２とする。画角の大小関係は、θ１＞θ２とする。すなわち、撮像部９０１、９０２の画角の方が撮像部９０３、９０４より大きい。
【００８０】
基本的な処理フローと機能ブロック図は、実施例１、２と同様である。実施例１では、位置合わせ処理（ステップＳ５０４）を行う際、画角の異なる画像同士で視差を推定したが、撮像部９０１と９０２、９０３と９０４のように、同一画角を有する画像同士で視差を推定してもよい。位置合わせ処理により、視点位置を合わせた画像をそれぞれ、Ｊ１（ｘ，ｙ）、Ｊ２（ｘ，ｙ）、Ｊ3（ｘ，ｙ）、Ｊ4（ｘ，ｙ）とする。
【００８１】
同画角同士の視点位置合わせ画像を合成する場合、例えば、Ｊ１'（ｘ，ｙ）=(Ｊ１（ｘ，ｙ）+Ｊ２（ｘ，ｙ）)  / ２、Ｊ２'（ｘ，ｙ）=(Ｊ３（ｘ，ｙ）+Ｊ４（ｘ，ｙ）)  / ２のように重みづけ加算合成を行い、変形部４０５に出力する。なお、ここでは合成時の重みを１/２にしたが、この値に限らない。
【００８２】
一方、同画角同士の合成を行わない場合は、Ｊ１（ｘ，ｙ）、Ｊ２（ｘ，ｙ）、Ｊ3（ｘ，ｙ）、Ｊ4（ｘ，ｙ）を変形部４０５に出力する。この場合は、望遠側の画像であるＪ3（ｘ，ｙ）もしくは、Ｊ4（ｘ，ｙ）のエッジに基づいて図５、図１０と同様の処理で重みを決定し、４枚の画像を合成する。ここでは、２種類の画角について説明したが、画角が３種類以上の場合も実施例２に基づいて同様に処理を行うことが可能である。
【００８３】
以上の処理によれば、同画角の複数の画像を利用して、さらなるノイズ低減を行うことができる。
【００８４】
＜実施例７＞
本実施例では、位置合わせ後の画像間に位置ずれが発生した場合に、合成後の画像における解像度の低下を抑制する。そのため、画素ごとにエッジ強度の判定を行い、エッジ強度の小さい画像における着目画素の周辺領域を合成対象から除外する。
基本的な処理フローと機能ブロック図は、実施例１、２と同様であるため、実施例１、２との差異のみ説明する。本実施例では、決定部４０６は、画素ごとに重みを格納した重みマップと、画素ごとにエッジ強度判定を行うかどうかのフラグを格納した判定マップを更新する。
【００８５】
決定部４０６で行われる処理の流れについて図１６および図１７を参照して説明する。図１６は決定部４０６の機能ブロック図である。図１７は、本実施例における決定部４０６の処理の流れを示すフローチャートである。実施例１および実施例２と同様の処理については同様の符号を付して説明を省略する。
【００８６】
ステップＳ１７０１では、全ての画角の重みマップと判定マップを初期化する。初期状態では、重みマップ・判定マップは、全ての画角の画像で各画素に１が格納されているものとする。判定マップは２値のデータであり、対象画素の画素値が１の場合は、対象画素におけるエッジ判定を行い、画素値が０の場合は、エッジ判定を行わないものとする。
【００８７】
ステップＳ１７０２で、着目画素選択部１６０１が着目画素の座標を初期化する。ここでは、画像の左上隅の画素を着目画素の初期位置とする。また、着目画素は、位置合わせ後の各画角の画像に対して、全て同一座標を有するものとする。ステップＳ１７０３でエッジ判定部１６０２が判定マップを読み込む。着目画素における判定マップの画素値が０の場合は、ステップＳ１７０９において、着目画素選択部１６０１が着目画素を更新し、ステップＳ１７０３に戻る。本実施例では、着目画素の座標は、画像の左上から右下に向かって１画素ずつ更新していくものとする。
【００８８】
判定マップの画素値が１の場合は、ステップＳ１７０４において、エッジ判定部１６０２が各画角の画像において、着目画素に対し、エッジの判定を行う。エッジと判定された画角が存在する場合は、最大エッジ強度と判定された画像の画角を保持し、ステップＳ１７０５に進む。以下、この画角を選択画角と呼称するものとする。
【００８９】
一般的に、選択画角は、画素によって変化する。エッジと判定されなかった場合は、ステップＳ１７０９に進み、着目画素を更新しステップＳ１７０３に戻る。ステップＳ１７０５で、周辺領域選択部１６０３が各画角の画像において、着目画素の周辺領域を選択する。ここでは、周辺領域として、着目画素の座標を(ｘ,ｙ)としたとき、[ｘ - 5, ｘ + 5]× [ｙ - 5, ｙ + 5]の１１×１１画素の正方形を採用するものとするが、周辺領域の画素数、領域形状はこれに限らない。ステップＳ１７０６で、重みマップ更新部１６０４が選択画角以外の画角における重みマップの周辺領域の画素値を０にする。
【００９０】
なお、重み値が１に比べて相対的に小さい値であれば、０以外の値でもよい。ステップＳ１７０７で、判定マップ更新部１６０５が選択画角以外の画角における判定マップの周辺領域の画素値を０にする。ステップＳ１７０８で、すべての画素に対して処理したかどうかを判定し、すべての画素に対して処理が終了している場合は、ステップＳ５０６の処理を終了する。すべての画素に対して処理が終了していない場合は、ステップＳ１７０９において、着目画素選択部１６０１が着目画素の座標を更新し、ステップＳ１７０３に戻る。
【００９１】
以上が本実施例の決定部４０６で行われる処理の流れである、次に、各工程における処理の詳細について説明する。
【００９２】
図１８は、各画角の画像、エッジ強度マップ、重みマップ、判定マップについての概念図であり、図１８を用いて各マップがどのように更新されていくかを説明する。図１８(a)において、１８０１〜１８０３は撮影シーン中の被写体を表している。画像１８０４〜１８０６は、それぞれ広角画像のエッジ強度マップ、重みマップ、判定マップを表している。画像１８１１〜１８１３は、それぞれ望遠画像のエッジ強度マップ、重みマップ、判定マップを表している。
【００９３】
エッジ強度マップ・重みマップ・判定マップにおいて、白い領域は画素値１、黒い領域は画素値０が格納されており、エッジ強度マップにおける白い領域はエッジ強度が閾値を超えた画素を表している。１８０７と１８１４は対応画素であり、領域１８０９、１８１０は、画素１８０７を中心とした周辺領域である。画素１８０７と１８１４は画像６０４と６０５において対応する画素であるが、一般的には、広角画像と望遠画像の解像度の違いや、レンズの主点位置の違いによる被写体距離ごとの倍率ずれ、位置合わせ誤差などの影響により、エッジにずれが発生する。
【００９４】
そのため、画素１８１４はエッジ上に位置するが、画素１８０７はエッジから少し離れた場所に位置する。この場合、単純に加算合成を行うと、エッジ部の解像度が劣化したり、二重線になるという弊害が発生する。そこで、本実施例では、エッジと判定された画素の周辺領域の重み値を０にし、判定マップにおいて、周辺領域をエッジ判定対象から除外する。
【００９５】
以下、着目画素が１８０７の場合について、図１８(a)を用いて説明する。まず、着目画素１８０７と、対応画素１８１４に対し、エッジ強度の比較を行う。この場合は、点１８１４の方がエッジ強度が大きく、かつ閾値を超えているので、重みマップ１８０５、判定マップ１８０６において、点１８０７に対応する周辺領域１８０９、１８１０の値を０にする。
【００９６】
次に、着目画素が１８０８になった場合を図１８(b)を用いて説明する。このとき、着目画素は、周辺領域１８１０以外の画素から選択する必要がある。まず、着目画素１８０８と、対応画素１８１５に対し、エッジ強度の比較を行う。この場合は、点１８０８の方がエッジ強度が大きく、かつ閾値を超えているので、重みマップ１８１２、判定マップ１８１３において、点１８１５に対応する周辺領域１８１６、１８１７の値を０にする。
【００９７】
以上のように、重みマップ、判定マップの更新を行う。焦点距離の種類が３種類以上の場合も最大エッジ強度以外の画角に対応する重みマップ、判定マップの周辺領域の値を０にする。
【００９８】
ただし、単純に周辺画素領域の重み値を０にしてしまうと、全画角の重みマップの合計値が０となり、合成後の画素値を算出できない場合がある。その例を図１９に示す。図１９において、点１９０２は、エッジ強度マップ１８１１でエッジ強度が閾値以上と判定された画素であり、点１９０１は、点１９０２に対応する画素である。点１９０３はエッジ強度マップ１８０４で、エッジ強度が閾値以上と判定された画素である。領域１９０４は、画素１９０１の周辺領域であり、領域１９０７は、画素１９０２の周辺領域である。
【００９９】
領域１９０５、１９０６は、それぞれ領域１９０７、１９０４に対応する周辺領域である。重みマップ１８０５と１８１２を加算すると、領域１９０６と１９０７（もしくは、領域１９０４と１９０５）が重なった領域において、広角画像と望遠画像の合計の重み値が０となってしまう。そこで、重みマップ１８１２の重み値を変更する際に、領域１９０８で示したように、領域１９０６以外の領域の重み値を０にする。
【０１００】
このことで、重みマップの合計値が０になる画素が発生することを避けることができる。なお、全画角の重み値の合計が小さくなることを避けることができれば、別の手法を用いても構わない。
【０１０１】
なお、各画素で最大となるエッジ強度を選択するのではなく、ある画角の画像に対し、各画素のエッジ強度が閾値を超えるかどうかを判定し、全画素処理が終わったら、別の画角の画像に対して各画素のエッジ強度を判定するような処理でも構わない。例えば望遠側の画像６０５からエッジ強度判定する場合は、図１８(a)において、エッジ強度マップ１８１１で画素値が１の画素に対して、それぞれ重みマップ１８０５、判定マップ１８０６における対応画素の周辺領域を０にする。
【０１０２】
次に広角画像６０４に対して、エッジ強度マップ１８０４と判定マップ１８０６の画素値が１の画素に対し、それぞれ重みマップ１８１２、判定マップ１８１３における対応画素の周辺領域を０にする。
【０１０３】
以上の処理によれば、位置合わせ後の画像間に位置ずれが発生している場合においても、合成後による解像度の低下を抑制することができる。
【０１０４】
＜実施例８＞
実施例７では、周辺画素選択部１６０３が周辺画素領域を選択する際に、予め決められた領域を選択していた。本実施例では、合成画像の位置ずれ対するロバスト性を向上させるため、レンズの焦点距離や主点位置など、撮像部のパラメータに基づいて、周辺領域の範囲を決定する場合について説明する。
【０１０５】
実際に、異なる画角の画像を合成する際は、解像度の違いや、レンズの主点位置の違いによる被写体距離ごとの倍率ずれ（以下、パースずれ）、位置合わせ誤差などの影響により、画像間に位置ずれが発生する。
【０１０６】
図２０は決定部４０６の機能ブロック図であり、実施例７との差異のみ説明する。周辺領域決定部２００１は、撮像パラメータ取得部４０２が取得した撮像部のパラメータ、距離情報、着目画素位置に基づいて、着目画素における周辺画素領域の範囲を決定する。距離情報は、ステップＳ５０４で説明したように、画像の対応関係から求めてもよいし、赤外線センサなどを用いて取得してもよい。処理の流れは、実施例７と同様である。
【０１０７】
ここでは、パースずれが発生した場合に、周辺領域の範囲を決定する例を説明する。図２１は、パースずれが発生する状況を表した図である。図２１は、図１で説明した二台の撮像部が並んだ様子を横から見た図である。レンズ２１０１、２１０２は、レンズ３０１〜３０２を１枚で模式的に表したものである。２０１３は、レンズ２１０１、２１０２の主点の距離を表しており、以下この距離をｄとする。レンズ２１０１の主点位置から被写体１８０３までの距離をｚ１、被写体１８０２までの距離をｚ２とする。
【０１０８】
以下、図６において、被写体１８０３の倍率を合わせるように、画像６０１を拡大、画像６０２を縮小する場合について説明する。仮想画角をθ’とすると、画像６０３は画像６０１をｔａｎθ１／ｔａｎθ’倍に拡大したものであり、その中で画角θ’に対応する領域をトリミングしたものが画像６０４である。
【０１０９】
一方、画像６０４における被写体１８０３の大きさが一致するように、画像６０２を縮小する際には、主点の間隔ｄを考慮して、画像６０２をｔａｎθ２／ｔａｎθ’（１−ｄ/ｚ1）倍に縮小する必要がある。画像６０５は画像６０２を前記の倍率で縮小したものであり、画角θ’に対応するように画像６０５の周辺を０で埋めた画像が画像６０６である。
【０１１０】
このとき、被写体１８０２に対して、画像６０４と６０５では、
【０１１１】
【数４】
2018078461.tif 000006
【０１１２】
だけ倍率ずれが発生する。２番目の式は、主点間の距離ｄが被写体距離に比べて十分小さいとしたときの近似式であり、Δ≡ｄ（１/ｚ1  −１/ｚ2）である。例えば画像６０４において、座標（ｘ,ｙ）にある被写体は、画像６０５では、（ｘ,ｙ）からΔ×（ｘ,ｙ）だけずれた位置にマッピングされる。
【０１１３】
そこで、周辺領域決定部２００１は、位置ずれした画素を含むように周辺領域を設定する。例えば、周辺領域を[ｘ - ｓ, ｘ+ ｓ]× [ｙ - ｓ, ｙ + ｓ]の正方形と仮定すると、主点間の距離、被写体距離、着目画素位置に基づきｓ=Δとする。なお、位置ずれした画素が周辺領域内に収まれば、sの値は２Δ以外の値でも構わない。また、周辺領域の形状も円など正方形以外の領域を用いてよい。なお、解像度の違いや、位置合わせ誤差の要因で位置ずれが発生する場合においても、画角などの情報に基づいて位置ずれ量Δを算出し、パースずれの場合と同様に周辺領域を決定する。その他の要因によって位置ずれが発生する場合についても同様である。
【０１１４】
以上の処理によれば、実際に発生する画像間の位置ずれを撮像部のパラメータに基づいて算出し、その領域をエッジ判定対象から除外することで、位置ずれに対して合成後の画質劣化を抑制することができる。
【０１１５】
＜その他の実施例＞
本発明の実施の形態は、上記の実施例に限られるものではない。例えば、上記の実施例では被写体像のエッジに基づいて画像の重みを１か０にするように重みを決定したが、重みの大小関係が上記の実施例と同じであれば、別の重みを用いるようにしてもよい。例えば、解像感とノイズ感のそれぞれをどれだけ重視するかに応じて、エッジにおける広角側の画像の重みを０以外の値としてもよい。また、エッジ強度に応じて重みを段階的に決定するようにしてもよい。
【０１１６】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１７】
４０１  画像取得部
４０４  位置合わせ部
４０５  変形部
４０６  決定部
４０７  合成部
【図１】
2018078461.tif 000007
【図２】
2018078461.tif 000008
【図３】
2018078461.tif 000009
【図４】
2018078461.tif 000010
【図５】
2018078461.tif 000011
【図６】
2018078461.tif 000012
【図７】
2018078461.tif 000013
【図８】
2018078461.tif 000014
【図９】
2018078461.tif 000015
【図１０】
2018078461.tif 000016
【図１１】
2018078461.tif 000017
【図１２】
2018078461.tif 000018
【図１３】
2018078461.tif 000019
【図１４】
2018078461.tif 000020
【図１５】
2018078461.tif 000021
【図１６】
2018078461.tif 000022
【図１７】
2018078461.tif 000023
【図１８（ａ）】
2018078461.tif 000024
【図１８（ｂ）】
2018078461.tif 000025
【図１９】
2018078461.tif 000026
【図２０】
2018078461.tif 000027
【図２１】
2018078461.tif 000028