(57)【要約】【課題】複数の画像データを合成する際に、ノイズを効果的に低減可能な画像処理装置を提供すること。【解決手段】本発明に係る画像処理装置（撮像装置）は、複数の画像データを合成する画像処理装置であって、合成に使用する画素数を設定する合成画素数設定手段と、前記複数の画像データのうち１つを基準画像とし、当該基準画像を除いた前記複数の画像データを対象画像としたとき、前記基準画像の処理画素位置における画素に類似する合成候補画素を前記対象画像から算出する合成候補画素算出手段と、前記合成候補画素算出手段によって算出された前記合成候補画素の中から合成に使用する画素を選択する合成画素選択手段と、前記合成画素選択手段によって選択した画素を合成する合成処理手段とを備えたことを特徴とする。【選択図】図６
2015055988.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像データを合成する画像処理装置であって、
合成に使用する画素数を設定する合成画素数設定手段と、
前記複数の画像データのうち１つを基準画像とし、当該基準画像を除いた前記複数の画像データを対象画像としたとき、前記基準画像の処理画素位置における画素に類似する合成候補画素を前記対象画像から算出する合成候補画素算出手段と、
前記合成候補画素算出手段によって算出された前記合成候補画素の中から合成に使用する画素を選択する合成画素選択手段と、
前記合成画素選択手段によって選択した画素を合成する合成処理手段と
を備えたことを特徴とする画像処理装置。
【請求項２】
前記合成候補画素算出手段により前記対象画像から算出された前記合成候補画素の数が、前記合成画素数設定手段により設定された前記合成に使用する画素数より少ないとき、前記合成候補画素算出手段は、前記基準画像から前記合成候補画素を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記合成候補画素算出手段は、前記基準画像の処理画素位置を中心とした複数の画素から構成されるブロックを基準ブロックとし、前記対象画像の特定領域の複数の画素から構成されるブロックを対象ブロックとしたとき、前記基準ブロックと、当該対象ブロックとを比較することで前記合成候補画素を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記合成候補画素算出手段は、前記基準画像の処理画素位置を中心とした複数の画素から構成されるブロックを基準ブロックとし、前記基準画像の特定領域の複数の画素から構成されるブロックを対象ブロックとしたとき、前記基準ブロックと、当該対象ブロックとを比較することで前記合成候補画素を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記合成画素選択手段は、前記合成候補画素の中から合成に使用する画素をランダムに選択することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記合成処理手段は、前記合成候補画素の画素値と、当該合成候補画素に対する重み及び類似度とを用いて出力値を算出し、
前記対象画像から算出された前記合成候補画素に対する重みは、前記基準画像から算出された前記合成候補画素に対する重みより大きいことを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記合成処理手段により合成された画像データに対して、現像処理を実行する現像処理手段を更に備えたことを特徴とする請求項１に記載の画像処理装置。
【請求項８】
複数の画像データを合成する画像処理装置により実行される画像処理方法であって、
合成に使用する画素数を設定する設定ステップと、
前記複数の画像データのうち１つを基準画像とし、当該基準画像を除いた前記複数の画像データを対象画像としたとき、前記基準画像の処理画素位置における画素に類似する合成候補画素を前記対象画像から算出する算出ステップと、
前記算出ステップにおいて算出された前記合成候補画素の中から合成に使用する画素を選択する選択ステップと、
前記選択ステップにおいて選択した画素を合成する合成ステップと
を備えたことを特徴とする画像処理方法。
【請求項９】
コンピュータを請求項１乃至７のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、及びプログラムに関する。具体的には、本発明は、複数の画像を合成する際にノイズを低減する画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
デジタルスチルカメラやデジタルビデオカメラなどのデジタル撮像装置が広く普及し一般に利用されている。これらのデジタル撮像装置は、ＣＣＤやＣＭＯＳセンサなどの光電荷変換素子（撮像素子）で受光した光をデジタル信号に変換することでデジタル画像データを生成する。デジタル画像データを生成する過程では、撮像素子や回路の特性により暗電流ノイズ、熱雑音、及びショットノイズなどが発生し、デジタル画像データにランダムなノイズ（ランダムノイズ）が混入する。近年の撮像素子の小型化、高画素化に伴い画素ピッチが極小化しているため、ランダムノイズが目立ちやすくなっている。特に撮影感度を高くした場合などはランダムノイズが顕著に発生し、画質劣化の大きな要因になっている。そのため、高画質化を実現するためにはランダムノイズの除去が必要不可欠となっている。
【０００３】
ランダムノイズ除去の最も原理的な方法として、同一被写体を同撮影条件で連続撮影し、それらを平均する方法がある。この方法では平均枚数に応じてランダムノイズ成分のみを除去することが可能である。しかし、この方法では、連続撮影間で被写体の移動やカメラの移動があった場合には各画像間で位置ずれが発生してしまい、そのまま平均すると多重像やボケなどの画質劣化を引き起こすことが知られている。そのため、動被写体の撮影や手持ちによる撮影を行う場合には、連続撮影した各画像間の位置ズレを考慮する必要がある。
【０００４】
例えば、特許文献１では、連続撮影した画像のうち１枚を基準画像として、基準画像と、基準画像以外の画像との画像間の移動ベクトルを算出し、移動ベクトルに基づいて合成する画素を決定する。その際、合成する画素領域の類似度に応じて合成比率を変化させることで、誤った画素領域を合成することによる多重像やボケを軽減する方法が提案されている。また、非特許文献１では、同一被写体ではなくても、他の画像中に、着目画素と、その周辺の複数の画素とからなる領域（以下、ブロック領域）に類似するパターンが存在する場合があることを利用する。非特許文献１では、他の画像からブロック領域の類似するパターンを探索し、類似度に応じた重みを用いて合成する手法が提案されている。
【０００５】
しかしながら、特許文献１の方法では、ノイズの影響が大きい場合、類似度の算出に誤差が生じ、間違った画素を足し込んでしまい、多重像やボケを引き起こしてしまう。また、特許文献１の方法では、正しい移動ベクトルが算出できない場合には、合成する領域の類似度が低下してしまい合成比率が低下するので、移動ベクトルの算出が難しい動被写体などではノイズを低減できないという問題もあった。
【０００６】
また、非特許文献１の方法では、類似度に応じた重みに基づいて平均値を計算すると、その平均値は着目画素の画素値に含まれるノイズの影響を受ける。そのため、合成したとしても着目画素の真の画素値には収束せず、ノイズのない真の画素値からずれた値に収束し、ノイズの影響が計算結果の画素値において残留ノイズとして現れてしまう。また、非特許文献１に記載の方法では、すべての画像領域において対象画像中に基準画像と類似する場所があるとは限らず、領域ごとに低減されるノイズ量が異なる。従って、領域ごとに低減されるノイズ量にムラが発生してしまうという問題もあった。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−１９９７８６号公報
【非特許文献】
【０００８】
【非特許文献１】A. Danielyan， V. Katkovnik, and K. Egiazarian， “BM3D Frames and Variational Image Deblurring”， IEEE Trans. Image Process.， vol. 21, no. 4， pp. 1715-1728， April 2012
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、上記の問題を鑑みてなされたものである。本発明は、複数の画像データを合成する際に、従来技術と比較してノイズをより効果的に低減可能な画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、複数の画像データを合成する画像処理装置であって、合成に使用する画素数を設定する合成画素数設定手段と、前記複数の画像データのうち１つを基準画像とし、当該基準画像を除いた前記複数の画像データを対象画像としたとき、前記基準画像の処理画素位置における画素に類似する合成候補画素を前記対象画像から算出する合成候補画素算出手段と、前記合成候補画素算出手段によって算出された前記合成候補画素の中から合成に使用する画素を選択する合成画素選択手段と、前記合成画素選択手段によって選択した画素を合成する合成処理手段とを備えたことを特徴とする。
【発明の効果】
【００１１】
本発明により、複数の画像データを合成する際に、従来技術と比較してノイズをより効果的に低減可能な画像処理装置を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】実施例１の撮像装置の構成を示す図である。
【図２】実施例１の撮像装置の内部構成を示すブロック図である。
【図３】実施例１の画像処理部の内部構成を示すブロック図である。
【図４】実施例１の合成処理部の内部構成を示すブロック図である。
【図５】実施例１の全体処理の流れを示すフローチャートである。
【図６】実施例１の合成処理の流れを示すフローチャートである。
【図７】実施例１の対象画像内からの合成候補画素の算出処理の流れを示すフローチャートである。
【図８】実施例１の対象画像内から合成候補画素を算出する方法を説明するための図である。
【図９】実施例１の合成候補画素リストを説明するための図である。
【図１０】実施例１の基準画像内から合成候補画素を算出する方法を説明するための図である。
【図１１】実施例２の全体処理の流れを示すフローチャートである。
【図１２】実施例２の対象画像内から合成候補画素を算出する方法を説明するための図である。
【図１３】実施例２の基準画像内から合成候補画素を算出する方法を説明するための図である。
【発明を実施するための形態】
【００１３】
［実施例１］
＜概要＞
まず、実施例１の概要について説明する。実施例１では、連続撮影で得た画像データのうち一つを「基準画像」とし、それ以外を「対象画像」とする。実施例１では、基準画像内を画素単位で走査しながら、処理画素位置を中心としたブロック領域を用いて、対象画像中から類似する画素（以下、「合成候補画素」とする）群を探索し出力する。その際、出力した画素群の画素数が予め設定した合成に使用する画素数（以下、「合成画素数」とする）より少ない場合のみ基準画像内を走査し、合成候補画素を補充する。さらに、合成に使用する画素を合成候補画素群からランダムに合成画素数分だけ選択し合成を実現する。以下、実施例１の詳細について述べる。
【００１４】
＜撮像装置の構成＞
図１は本実施例における画像処理装置、具体的には、撮像装置の構成を示す図である。具体的には、図１（ａ）は撮像装置の正面図であり、図１（ｂ）は撮像装置の背面図である。撮像装置１０１は、光学部１０２と、撮影ボタン１０３と、表示部１０４と、操作ボタン１０５とからなる。光学部１０２は、ズームレンズと、フォーカスレンズと、ブレ補正レンズと、絞りと、シャッターとから構成され、被写体の光情報を集める。撮影ボタン１０３は、ユーザが撮影の開始を撮像装置１０１に指示するためのボタンである。表示部１０４は、液晶ディスプレイなどが用いられて構成されており、撮像装置１０１にて処理された画像データや各種データなどを表示する。操作ボタン１０５は、ユーザが撮影条件のパラメータなどを撮像装置１０１に指示するためのボタンである。
【００１５】
＜撮像装置の内部構成＞
図２は本実施例における撮像装置１０１の内部構成を示すブロック図である。カラー撮像素子部２０１は、光学部１０２にて集められた光情報を電流値へと変換する素子であり、カラーフィルタなどと組み合わせて構成されることで色情報を取得する。ＣＰＵ２０２は、各構成の処理すべてに関わり、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０３や、ＲＡＭ（Ｒｏｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４に格納された命令を順次に読み込み、解釈し、その結果に従って処理を実行する。また、撮像系制御部２０５は、光学部１０２に対して、フォーカスを合わせる、シャッターを開く、絞りを調整するなどのＣＰＵ２０２から指示された制御を行う。制御部２０６は、撮影ボタン１０３や操作ボタン１０５からのユーザ指示によって、撮影動作の開始及び終了の制御を行う。キャラクタージェネレーション部２０７は、文字やグラフィックなどを生成する。Ａ／Ｄ変換部２０８は、光学部１０２にて検知した被写体の光量をデジタル信号値に変換する。画像処理部２０９は、Ａ／Ｄ変換部２０８にて変換されたデジタル信号の画像データに対して、画像処理を行う。エンコーダ部２１０は、画像処理部２０９にて処理した画像データをＪｐｅｇなどのファイルフォーマットに変換する処理を行う。メディアＩ／Ｆ２１１は、ＰＣ／メディア２１３（例えば、ハードディスク、メモリカード、ＣＦカード、ＳＤカードなど）に画像データを送受信するためのインタフェースである。システムバス２１２は、データを送受信するためのバスである。
【００１６】
図３は本実施例における画像処理部２０９の内部構成を示すブロック図である。ＲＡＷ画像データ記憶部３０１は、撮影したＲＡＷ画像データを記憶する。現像画像データ記憶部３０２は、ＲＡＷ画像データ記憶部３０１に記憶しているＲＡＷ画像データを現像した画像データを記憶する。合成画像データ記憶部３０３は、合成した画像データを記憶する。現像処理部３０４は、ＲＡＷ画像データ記憶部３０１に記憶しているＲＡＷ画像データに対して、ホワイトバランス、デモザイク、ノイズリダクション、ガンマ、シャープネスなどの現像処理を行う。次いで、現像処理部３０４は、現像処理結果の画像データを現像画像データ記憶部３０２に記憶する。合成処理部３０５は、複数の画像データを合成し、合成結果の画像データを合成画像データ記憶部３０３に記憶する。パラメータ記憶部３０６は、現像処理部３０４や合成処理部３０５において用いるパラメータを記憶する。
【００１７】
また、図４は本実施例における合成処理部３０５の内部構成を示すブロック図である。合成候補画素リスト記憶部４０１は、合成に使用する画素の候補リストを記憶する。合成候補画素算出部４０２は、基準画像の処理画素位置の画素に対して、合成候補画素を対象画像の特定領域から算出し、算出した合成候補画素を合成候補画素リストに追加することで合成候補画素リスト記憶部４０１に記憶する。合成画素選択部４０３は、合成候補画素リスト記憶部４０１に記憶している合成候補画素の中から合成に使用する画素を選択する。合成画素数設定部４０４は、合成に使用する画素数を設定する。
【００１８】
＜処理フロー＞
次に、本実施例における全体処理の流れを図５のフローチャートを用いて説明する。
【００１９】
ステップＳ５０１では、ユーザが撮影枚数、絞り、シャッタースピード、ＩＳＯ感度などの撮影条件を設定する。次いで、処理はステップＳ５０２に進む。
【００２０】
ステップＳ５０２では、撮影ボタン１０３が押されたかどうかを判定する。撮影ボタン１０３が押されたと判定された場合には処理はステップＳ５０３に進み、撮影ボタン１０３が押されていないと判定された場合には処理はステップＳ５０１に戻る。
【００２１】
ステップＳ５０３では、ステップＳ５０１において設定した撮影条件で連続撮影を行い複数のＲＡＷ画像データを取得し、取得したＲＡＷ画像データをＲＡＷ画像データ記憶部３０１に記憶する。次いで、処理はステップＳ５０４に進む。
【００２２】
ステップＳ５０４では、ＲＡＷ画像データ記憶部３０１に記憶しているＲＡＷ画像データに対して現像処理を行い、現像された画像データを現像画像データ記憶部３０２に記憶する。次いで、処理はステップＳ５０５に進む。
【００２３】
ステップＳ５０５では、現像画像データ記憶部３０２に記憶している現像後の画像データを合成処理し、合成した画像データを合成画像データ記憶部３０３に記憶する（詳細は後述する）。次いで、処理はステップＳ５０６に進む。
【００２４】
ステップＳ５０６では、合成画像データ記憶部３０３に記憶している合成画像データをメディアＩ／Ｆ２１１を介して、ＰＣ／メディア２１３に出力する。
【００２５】
＜合成処理＞
図５のステップＳ５０５の合成処理について詳細に説明する。
【００２６】
本実施例における合成処理の概要について説明する。本実施例における合成処理では、まず、合成画素数を設定する。本実施例では、合成画素数は、合成に使用する画像データ数とし、例えば、４枚の連続撮影した画像データを入力する場合には合成画素数に４を設定する。次に、基準画像の処理画素位置の画素に対して、合成候補画素となる画素を対象画像から複数抽出する。すべての対象画像に対して合成候補画素を抽出した結果、合成候補画素の数が設定した合成画素数に満たない場合には、基準画像内からも合成候補画素を抽出する。最後に、抽出したすべての合成候補画素の中ら合成画素数分だけ合成画素を選択し、加重加算することで合成を行う。
【００２７】
以下、図６を用いて合成処理の流れを説明する。
【００２８】
ステップＳ６０１において、合成画素数設定部４０４は、合成画素数をセットする。本実施例では、合成画素数として連続撮影により取得した複数の画像データの数を設定する。次いで、処理はステップＳ６０２に進む。
【００２９】
ステップＳ６０２において、合成処理部３０５は、連続撮影により取得した複数の画像データの中から一つを選択して基準画像を設定する。例えば、連続撮影した際の最初の１枚目を基準画像とすることができる。次いで、処理はステップＳ６０３に進む。
【００３０】
ステップＳ６０３において、合成処理部３０５は、処理画素位置の初期化を行う。次いで、処理はステップＳ６０４に進む。
【００３１】
ステップＳ６０４において、合成処理部３０５は、ステップＳ６０２で設定した基準画像を除く画像データの中から１つの画像データを選択し、初期の対象画像とする。次いで、処理はステップＳ６０５に進む。
【００３２】
ステップＳ６０５において、合成処理部３０５は、合成候補となる画素値を出力する合成候補画素リストを初期化する。図９に、合成候補画素リストの一例を示す。図９に例示するように、合成候補画素リストは、合成候補画素の画素値と、重みと、後述する類似度とを含む。次いで、処理はステップＳ６０６に進む。
【００３３】
ステップＳ６０６において、合成候補画素算出部４０２は、処理対象画像内から合成候補画素を抽出し、合成候補画素リスト記憶部４０１に記憶している合成候補画素リストを更新する（詳細は後述する）。次いで、処理はステップＳ６０７に進む。
【００３４】
ステップＳ６０７において、合成処理部３０５は、すべての対象画像に対して、ステップＳ６０６の処理を行ったかどうかを判定する。すべての対象画像に対してステップＳ６０６の処理を行ったと判定された場合には、処理はステップＳ６０９に進み、そうでない場合には、処理はステップＳ６０８に進む。
【００３５】
ステップＳ６０８において、合成処理部３０５は、対象画像の更新を行う。次いで、処理はステップＳ６０６に戻る。
【００３６】
ステップＳ６０９において、合成処理部３０５は、ステップＳ６０６にて合成候補画素リストに出力した合成候補画素の数がステップＳ６０１にて設定した合成画素数以上かどうかを判定する。合成候補画素リストに出力した合成候補画素の数が設定した合成画素数以上と判定された場合には、処理はステップＳ６１１に進み、そうでない場合には、処理はステップＳ６１０に進む。
【００３７】
ステップＳ６１０において、合成候補画素算出部４０２は、基準画像内から合成候補画素を抽出し、合成候補画素リスト記憶部４０１に記憶している合成候補画素リストを更新する。次いで、処理はステップＳ６１１に進む。尚、ステップＳ６１０の処理はステップＳ６０６の処理とほぼ同様の処理であるが、合成時の重みと、探索対象となる画像データが基準画像自身である点とが異なる。図１０は、基準画像内から合成候補画素を算出する方法を説明するための図である。図１０中の符号１００１は基準画像を、符号１００２は処理画素位置を、符号１００３は基準ブロック領域を、符号１００４は探索領域を、符号１００５は現在探索している対象ブロック領域を示す。基準ブロック領域１００３及び対象ブロック１００５を用いて、ステップＳ６０６と同様にして合成候補画素を抽出し、合成候補画素リストを更新する。ただし、合成時に使用する重みパラメータについては、ステップＳ６０６で対象画像内を探索する場合と異なりより小さい値を設定する。例えば、本実施例では、ステップＳ６１０において、重みとして０．５を設定する。再度図９を参照すると、Ｎｏ．３〜Ｎｏ．５の合成候補画素に対する重みが０．５であることから、これらの合成候補画素はステップＳ６１０により合成候補画素リストに追加されたことが分かる。
【００３８】
ステップＳ６１１において、合成画素選択部４０３は、合成候補画素リストの中から合成画素を合成画素数分ランダムに選択する。次いで、処理はステップＳ６１２に進む。
【００３９】
ステップＳ６１２において、合成処理部３０５は、ステップＳ６１１で選択した合成画素を用いて出力値を算出する。処理画素位置（ｘ、ｙ）におけるi番目の合成候補画素の画素値をIiとし、重みをｗｉ、類似度をＳiとすると出力値Ｏ（ｘ、ｙ）は次の（式１）によって算出される。
【００４０】
【数１】
2015055988.tif 000003
【００４１】
ただし、
【００４２】
【数２】
2015055988.tif 000004
【００４３】
である。次いで、処理はステップＳ６１３に進む。
【００４４】
ステップＳ６１３において、合成処理部３０５は、ステップＳ６０４〜ステップＳ６１２までの処理をすべての画素位置に対して行ったかどうかを判定する。ステップＳ６０４〜ステップＳ６１２までの処理をすべての画素位置に対して行っていないと判定された場合には、処理はステップＳ６１４に進み、そうでない場合には、合成処理ステップＳ５０５は完了してステップＳ５０６に進む。
【００４５】
ステップＳ６１４において、合成処理部３０５は、処理画素位置の更新を行う。次いで、処理はステップＳ６０４に戻る。
【００４６】
＜処理対象画像内から合成候補画素を抽出する方法＞
図６のステップＳ６０６における処理対象画像内から合成候補画素を抽出（算出）し、合成候補リストに出力する方法について説明する。尚、ステップＳ６０６の処理では、基準画像の処理画素位置を中心とするブロック領域と、対象画像の任意の探索範囲内のブロック領域とを比較（ブロックマッチング）することで、合成候補画素を算出する。
【００４７】
図７は、処理対象画像内から合成候補画素を算出し、算出した合成候補画素を合成候補リストに出力する処理のフローチャートである。また、図８は、ブロックマッチングを用いて合成候補画素を算出する方法を説明するための図である。
【００４８】
ステップＳ７０１において、合成候補画素算出部４０２は、図８に例示する探索を行う際のブロック領域８０４のサイズと、探索範囲８０５とを設定する。例えば、図８に示すように、５×５画素のブロック領域を設定し、対象画像内で処理画素位置と同位置を中心に７×７画素の領域を探索範囲として設定する。次いで、処理はステップＳ７０２に進む。
【００４９】
ステップＳ７０２において、合成候補画素算出部４０２は、類似度の閾値Ｔを設定する。例えば、類似度の閾値ＴとしてＴ＝０．９０を設定する。次いで、処理はステップＳ７０３に進む。
【００５０】
ステップＳ７０３において、合成候補画素算出部４０２は、合成時の重みｗを設定する。例えば、合成時の重みｗとしてｗ＝１．０を設定する。次いで、処理はステップＳ７０４に進む。
【００５１】
ステップＳ７０４において、合成候補画素算出部４０２は、探索位置を初期化する。たとえば、探索位置を初期化して探索範囲の左上とすることができる。次いで、処理はステップＳ７０５に進む。
【００５２】
ステップＳ７０５において、合成候補画素算出部４０２は、類似度Ｓを算出する。類似度Ｓは、基準画像のブロック領域をbr、対象画像の探索位置iにおけるブロック領域をbt,i、ブロック領域内の各画素の画素値をb (j)(j=0〜Ｎｂ)とすると、次の（式３）によって算出される。
【００５３】
【数３】
2015055988.tif 000005
【００５４】
ただし、
【００５５】
【数４】
2015055988.tif 000006
【００５６】
であり、ｈは類似度を制御するためのパラメータである。次いで、処理はステップＳ７０６に進む。
【００５７】
ステップＳ７０６において、合成候補画素算出部４０２は、ステップＳ７０５にて算出した類似度が閾値Ｔ以上かどうかを判定する。類似度が閾値Ｔ以上であると判定された場合には、処理はステップＳ７０７に進み、そうでない場合には、処理はステップＳ７０８に進む。
【００５８】
ステップＳ７０７において、合成候補画素算出部４０２は、対象画像の探索画素位置の画素値、重み、及び、ステップＳ７０５にて算出した類似度を合成候補画素リストに追加する。次いで、処理はステップＳ７０８に進む。
【００５９】
ステップＳ７０８において、合成候補画素算出部４０２は、すべての探索位置で処理を行ったかどうかを判定する。すべての探索位置で処理を行ったと判定された場合には、処理はステップＳ６０７に進み、そうでない場合には、処理はステップＳ７０９に進む。
【００６０】
ステップＳ７０９において、合成候補画素算出部４０２は、探索位置の更新を行う。次いで、処理はステップＳ７０５に戻る。
【００６１】
本実施例では、上述した処理制御を行うことで、動被写体などが映り込むことによって画像全体での均一な合成が困難な場合であっても、画像全体での均一なノイズ低減を実現することが可能となる。
【００６２】
なお、本実施例では、連続撮影により取得した画像データの数と、合成画素数とを同じにするとして説明したが、所定の合成画素数を設定し、この所定の合成画素数を満足するように処理が行われれば、合成画素数は上述したものに限定されない。
【００６３】
また、本実施例では、基準画像を連続撮影で得た画像データのうちの最初に得た画像データとしたが、基準画像はこれに限定されない。例えば、連続撮影により得た画像データのうち、最も主被写体を捉えた画像データを基準画像としても構わない。
【００６４】
また、本実施例では、対象画像を探索する際に、基準画像と同様の処理画素位置を中心に探索するとした。本実施例によれば、ブロックマッチングにより合成候補画素を算出するため、基準画像と対象画像との位置合わせが難しい場合でも十分適切な合成画素を探索することができる。つまり本実施例が示す通り、位置合わせをしなくてもノイズ低減効果を得ることができる。しかしながら、探索方法はこれに限定されない。例えば、基準画像と、対象画像とを射影変換やアフィン変換で大まかに位置合わせを行った後に探索する方法であっても構わないし、特徴点やブロック領域を用いて移動ベクトルを算出し、その算出した移動ベクトルを用いて探索領域を決定する方法でも構わない。
【００６５】
また、本実施例では、合成に使用する画素を合成候補画素の中からランダムに選択したが、予め作成した疑似乱数テーブルを用いて合成に使用する画素を選択しても構わない。つまり、特定の画素が常に選択されなければ良いのであり、合成に使用する画素を選択する方法は上述したものに限定されない。
【００６６】
［実施例２］
実施例１では、現像後の画像データを用いて合成する方法について説明した。これに対し、実施例２では、現像する前のＲＡＷ画像データを合成する。デジタルカメラのＲＡＷ画像データは、各画素についてＲ、Ｇ，Ｂのいずれかの色しか持たずＧが市松模様、ＲとＢとが縦横に一つ置きに配置されるベイヤー配置であることが一般的であり、以下に説明する例ではベイヤー配置であるＲＡＷ画像データの合成を行う。
【００６７】
本実施例における全体処理の流れを図１１のフローチャートを用いて説明する。
【００６８】
ステップＳ１１０１では、ユーザが撮影枚数、絞り、シャッタースピード、ＩＳＯ感度などの撮影条件を設定する。次いで、処理はステップＳ１１０２に進む。
【００６９】
ステップＳ１１０２では、撮影ボタン１０３が押されたかどうかを判定する。撮影ボタン１０３が押されたと判定された場合にはステップＳ１１０３に進み、撮影ボタン１０３が押されていないと判定された場合にはステップＳ１１０１に戻る。
【００７０】
ステップＳ１１０３では、ステップＳ１１０１において設定した撮影条件で連続撮影を行い複数のＲＡＷ画像データを取得し、取得したＲＡＷ画像データをＲＡＷ画像データ記憶部３０１に記憶する。次いで、処理はステップＳ１１０４に進む。
【００７１】
ステップＳ１１０４では、ＲＡＷ画像データ記憶部３０１に記憶しているＲＡＷ画像データを合成処理し、合成画像データ記憶部３０３に記憶する。次いで、処理はステップＳ１１０５に進む。尚、本実施例における合成処理は実施例１の合成処理とほぼ同様であるが、合成候補画素算出部４０２における類似度の算出方法のみ異なる。図１２及び図１３を用いて本実施例における類似度の算出方法を説明する。図１２中の符号１２０１は基準画像を、符号１２０２は対象画像を、符号１２０３は処理画素位置を、符号１２０４は探索領域を、符号１２０５は基準画像のブロック領域を、符号１２０６は現在探索している対象画像のブロック領域を示す。図１３中の符号１３０１は基準画像を、符号１３０２は処理画素位置を、符号１３０３は基準画像のブロック領域を、符号１３０４は探索領域を、符号１３０５は探索対象のブロック領域を示す。図１３に示すように、取得したＲＡＷ画像データがベイヤー配置のＲＡＷ画像データの場合、探索対象のブロック領域の中心にある画素の色は、処理画素位置の画素の色と同じ色にする。また、基準画像内を探索する場合も同様に、処理画素位置の画素の色と同じ色のみを探索する。
【００７２】
ステップＳ１１０５では、ステップＳ１１０４にて合成した合成画像データ記憶部３０３に記憶している合成画像データに対して現像処理を行い、現像画像データ記憶部３０２に記憶する。次いで、処理はステップＳ１１０６に進む。
【００７３】
ステップＳ１１０６では、現像画像データ記憶部３０２に記憶している現像後の画像データをメディアＩ／Ｆ２１１を介して、ＰＣ／メディア２１３に出力する。
【００７４】
以上、説明したように、本実施例により、ベイヤー配列であるＲＡＷ画像データに対しても画像全体で均一なノイズ低減を実現することが可能となる。また、本実施例では、各撮影画像データに対して現像処理は１度しか行わないので、処理負荷を軽減することが可能となる。
【００７５】
＜その他の実施例＞
前述の実施例では、全ての基準画像に対して同様の処理を施す形態を例に説明した。しかしながら、本実施例によるノイズ低減処理と従来方法のノイズ低減処理とを画素ごとに切り替えるような形態にすることも可能である。複数の画像データ間の位置合わせをした後、対応する画素の画素値を平均する従来方法は、前述のとおり、平面に近似できない奥行きのあるシーンや移動被写体を撮影した場合など、適切に位置合わせができずに、多重像やボケを発生させてしまうことがある。そこで例えば、連続撮影によって得られる複数の画像データ間において位置合わせが可能な場合は、位置合わせをした後に従来方法の平均処理を施す。さらに、複数の画像データ間において位置合わせができない場合は、位置合わせはせずに本実施例によるノイズ低減処理を施す。このように画素毎、あるいは領域毎に切り替えることによって、適応的なノイズ低減処理を実行することも可能である。
【００７６】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【図１】
2015055988.tif 000007
【図２】
2015055988.tif 000008
【図３】
2015055988.tif 000009
【図４】
2015055988.tif 000010
【図５】
2015055988.tif 000011
【図６】
2015055988.tif 000012
【図７】
2015055988.tif 000013
【図８】
2015055988.tif 000014
【図９】
2015055988.tif 000015
【図１０】
2015055988.tif 000016
【図１１】
2015055988.tif 000017
【図１２】
2015055988.tif 000018
【図１３】
2015055988.tif 000019