(57)【特許請求の範囲】
【請求項１】
ユーザの操作に応じて１つの撮影画像を選択する選択手段と、
前記選択手段によって選択された１つの撮影画像との相関性に基づいて、ＨＤＲ画像を生成するための多段露出撮影画像を抽出する抽出手段と、
前記選択手段によって選択された１つの撮影画像と前記抽出手段によって抽出された多段露出撮影画像をグループ化して表示部に表示する表示手段と、
前記選択手段によって選択された１つの撮影画像と前記多段露出撮影画像に対し、ダイナミックレンジ拡大処理を行って前記ＨＤＲ画像を生成するダイナミックレンジ拡大処理手段と、
前記ダイナミックレンジ拡大処理手段によって生成されたＨＤＲ画像に対して階調圧縮処理を行う階調圧縮処理手段とを有することを特徴とする画像処理装置。
【請求項２】
前記抽出手段は、前記撮影画像の付加情報に基づいて相関性を判定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記抽出手段は、前記撮影画像の付加情報に含まれるブラケット撮影の情報に基づいて相関性を判定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記抽出手段は、前記撮影画像の付加情報に含まれる撮影時間、ＩＳＯ感度、レンズの絞り、露出時間、画像サイズ、及び撮影場所に基づいて相関性を判定することを特徴とする請求項２に記載の画像処理装置。
【請求項５】
前記抽出手段は、前記撮影画像に付加情報が存在しない場合は、前記撮影画像の比較に基づいて相関性を判定することを特徴とする請求項２乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記抽出手段は、前記撮影画像の画素分布に基づいて相関性を判定することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
ユーザの操作に応じて１つの撮影画像を選択する選択工程と、
前記選択工程によって選択された１つの撮影画像との相関性に基づいて、ＨＤＲ画像を生成するための多段露出撮影画像を抽出する抽出工程と、
前記選択工程によって選択された１つの撮影画像と前記抽出工程によって抽出された多段露出撮影画像をグループ化して表示部に表示する表示工程と、
前記選択工程によって選択された１つの撮影画像と前記多段露出撮影画像に対し、ダイナミックレンジ拡大処理を行って前記ＨＤＲ画像を生成するダイナミックレンジ拡大処理工程と、
前記ダイナミックレンジ拡大処理工程によって生成されたＨＤＲ画像に対して階調圧縮処理を行う階調圧縮処理工程とを有することを特徴とする画像処理方法。
【請求項８】
ユーザの操作に応じて１つの撮影画像を選択する選択工程と、
前記選択工程によって選択された１つの撮影画像との相関性に基づいて、ＨＤＲ画像を生成するための多段露出撮影画像を抽出する抽出工程と、
前記選択工程によって選択された１つの撮影画像と前記抽出工程によって抽出された多段露出撮影画像をグループ化して表示部に表示する表示工程と、
前記選択工程によって選択された１つの撮影画像と前記多段露出撮影画像に対し、ダイナミックレンジ拡大処理を行って前記ＨＤＲ画像を生成するダイナミックレンジ拡大処理工程と、
前記ダイナミックレンジ拡大処理工程によって生成されたＨＤＲ画像に対して階調圧縮処理を行う階調圧縮処理工程とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置、画像処理方法及びプログラムに関し、特に、画像を補正するために用いて好適な技術に関する。
【背景技術】
【０００２】
屋外などにおいてデジタルカメラを用いてあるシーンを撮影するとき、撮影可能な輝度レンジよりも撮影シーンの輝度レンジが広い場合がある。このとき、撮影可能な輝度レンジ外の被写体については、その階調情報を記録することができないため、白飛び・黒潰れが発生する。例えば、晴天時に屋外で人物を撮影する場合、人物に露出を合わせると背景の空や雲が白飛びしたり、木陰が黒潰れしたりするケースがある。このため、シーンを見た際の印象と撮影画像を見た際の印象とが異なっている場合があり、ユーザにとって不満であった。
【０００３】
そこで、このような問題を解決する技術の１つにHigh Dynamic Range Imaging処理（以下、ＨＤＲ処理）が知られている。ＨＤＲ処理は、大きく分けて、ダイナミックレンジ拡大処理と階調圧縮処理とから構成されている。ダイナミックレンジ拡大処理は、撮影可能なダイナミックレンジを拡大し、白飛び・黒潰れ等が発生していた輝度レンジの階調情報を記録する処理であり、一般的な方法としては、同じコンテンツに対し露出を変えて撮影した画像群（多段露出画像群）を合成する。以下、このダイナミックレンジ拡大処理により生成される画像をＨＤＲ画像と呼ぶ。これに対して階調圧縮処理は、ダイナミックレンジの広いＨＤＲ画像をダイナミックレンジの狭い表示／出力機器で好ましく再現するための画像処理であり、ＨＤＲ画像の輝度の低周波成分について、その振幅を圧縮するなどの方法が用いられている。このようにＨＤＲ処理を行うと、白飛び・黒潰れを軽減した好ましい画像を表示または出力することができる。このようなＨＤＲ処理については、例えば特許文献１に開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２１５０７３号公報
【特許文献２】特開２００５−６３４０６号公報
【非特許文献】
【０００５】
【非特許文献１】E.H.Land, J.J.McCann, "Lightness and Retinex Theory", Journal of the Optical Society of America, Vol.61, Num1, January, 1971
【非特許文献２】F.Durand, J.Dorsey, "Fast Bilateral Filtering for the Display of High-Dynamic-Range Images", SIGGRAPH 2002
【発明の概要】
【発明が解決しようとする課題】
【０００６】
通常、ユーザは一度に多くの画像を撮影しており、前述したダイナミックレンジ拡大処理により多段露出画像群を合成する場合には、それらの多数の撮影画像群の中から多段露出画像群を選択する必要がある。このとき、ユーザが多段露出画像群を選択するため、適切なものを選択していない可能性があり、その結果、ユーザの意図とは異なるＨＤＲ画像が生成されてしまうという問題点がある。
【０００７】
本発明は前述の問題点に鑑み、ＨＤＲ処理を行うための多段露出画像群を適切に選択できるようにすることを目的としている。
【課題を解決するための手段】
【０００８】
本発明の画像処理装置は、ユーザの操作に応じて１つの撮影画像を選択する選択手段と、前記選択手段によって選択された１つの撮影画像との相関性に基づいて、ＨＤＲ画像を生成するための多段露出撮影画像を抽出する抽出手段と、前記選択手段によって選択された１つの撮影画像と前記抽出手段によって抽出された多段露出撮影画像をグループ化して表示部に表示する表示手段と、前記選択手段によって選択された１つの撮影画像と前記多段露出撮影画像に対し、ダイナミックレンジ拡大処理を行って前記ＨＤＲ画像を生成するダイナミックレンジ拡大処理手段と、前記ダイナミックレンジ拡大処理手段によって生成されたＨＤＲ画像に対して階調圧縮処理を行う階調圧縮処理手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、多段露出画像の選択ミスを減らすことができる。これにより、適切な多段露出画像群に対してダイナミックレンジ拡大処理、階調圧縮処理を実施することができ、白飛び・黒潰れ等を軽減した撮影画像を取得することができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係る画像処理装置の構成例を示すブロック図である。
【図２】第１の実施形態のＨＤＲ処理の手順の一例を示すフローチャートである。
【図３】露出間隔を設定するための画面の一例を示す図である。
【図４】撮影画像の付加情報の一例を示す図である。
【図５】多段露出画像群及びＨＲＤ処理ＵＩが表示された画面の一例を示す図である。
【図６】全画素の８ビットＲＧＢ値が示されたデータの一例を示す図である。
【図７】ステップＳ２０６の詳細な手順の一例を示すフローチャートである。
【図８】ＨＤＲ画像データを作成する手順の概要を示す図である。
【図９】ステップＳ２０７の詳細な手順の一例を示すフローチャートである。
【図１０】階調圧縮処理におけるパラメータ計算の流れを示す図である。
【図１１】ステップＳ９０５の詳細な手順の一例を示すフローチャートである。
【図１２】輝度照明成分の圧縮特性を示す図である。
【図１３】第２の実施形態のＨＤＲ処理の手順の一例を示すフローチャートである。
【図１４】ステップＳ１３０３の詳細な手順の一例を示すフローチャートである。
【図１５】画素数のヒストグラムの一例を示す図である。
【図１６】第３の実施形態に係る画像処理装置の構成例を示すブロック図である。
【図１７】第３の実施形態のＨＤＲ処理の手順の一例を示すフローチャートである。
【図１８】ＨＤＲ合成できない旨の警告画面の一例を示す図である。
【図１９】ステップＳ１７０３の詳細な手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
以下、本発明の第１の実施形態について、図面を参照しながら詳細に説明する。
図１は、本実施形態に係る画像処理装置１００の構成例を示すブロック図である。
図１において、撮像部１０１は、被写体の光を検知するためのものである。撮像部１０１は、例えば、ズームレンズ、フォーカスレンズ、ぶれ補正レンズ、絞り、シャッター、光学ローパスフィルタ、ｉＲカットフィルタ、カラーフィルタ、及び、ＣＭＯＳやＣＣＤなどのセンサ、から構成されている。Ａ／Ｄ変換部１０２は、被写体の光の検知量をデジタル信号に変換するためのものである。信号処理部１０３は、Ａ／Ｄ変換部１０２で変換されたデジタル信号に信号処理を施し、デジタル画像データを生成するためのものであり、例えば、ガンマ処理などを行う。エンコーダ部１０４は、デジタル画像データに対してデータの圧縮を行うためのものであり、例えばＪＰＥＧ方式に従って圧縮などを行う。
【００１２】
メディアインターフェース部１０５は、例えば、ハードディスク、メモリーカード、ＳＤカード、ＵＳＢメモリなどのメディアにつなぐためのインターフェースである。ＣＰＵ１０６は、画像処理装置１００全体の各構成の処理を制御するためのものである。ＲＯＭ１０７及びＲＡＭ１０８は、各構成の処理に必要なプログラム、データ、作業領域などをＣＰＵ１０６に提供するためのものである。また、後述する処理に必要な制御プログラムがＲＯＭ１０７に格納されている場合には、ＲＡＭ１０８に一旦展開してから実行される。
【００１３】
操作部１０９は、ユーザからの指示を入力するためのものであり、例えば、ボタンやモードダイヤル等が該当する。キャラクタージェネレーション部１１０は、文字やグラフィックを生成するためのものである。Ｄ／Ａ変換部１１１は、デジタル画像データをアナログ信号に変換するためのものである。表示部１１２は、撮影画像やＧＵＩ等の画像を表示するための装置であり、一般的にはＣＲＴや液晶ディスプレイなどである。また、公知のタッチスクリーンであってもよく、その場合、タッチスクリーンによる入力については操作部１０９の入力として扱うことも可能である。また、撮像部コントローラ１１３は、ＣＰＵ１０６から指示された撮像系の制御を行うためのものであり、例えば、フォーカス合わせ、シャッターの開閉、絞り調節などの制御を行う。
【００１４】
図２は、本実施形態に係る画像処理装置１００が実行するＨＤＲ処理の手順を示すフローチャートである。なお、図２に示す各処理は、ＣＰＵ１０６の制御により行われる。
ユーザにより不図示の撮影開始ボタンが押下されると処理を開始し、ステップＳ２０１において、撮像部１０１は、ＣＰＵ１０６からの指示によりユーザにより選択された露出間隔でオートブラケット撮影を行う。ここで、露出間隔を設定する手順としては、まず、図３に示すように表示部１１２に撮影メニューＵＩが表示される。ユーザの選択により「オートブラケット撮影」メニューが選択されると、図３に示すブラケット撮影の露出間隔（露出幅）を設定するＵＩが画面の右側に表示される。これらの露出間隔の中から設定する露出間隔がユーザにより選択される。
【００１５】
また、ステップＳ２０１においては、さらに、ＣＰＵ１０６によりオートブラケット撮影が行われた旨を撮影画像の付加情報に記載する。ここで付加情報とは、図４に示すように、撮影日時や露出時間などの撮影時に関する情報が含まれたデータであり、例えば、公知の画像データフォーマットであるExif形式などのデータである。オートブラケット撮影時には、オートブラケットフラグは「ＯＮ」となり、オートブラケット撮影の回数についてはブラケットグループ番号として情報を保持している。また、これらの撮影された画像には同じブラケット番号が付されることになる。
【００１６】
次に、ステップＳ２０２において、表示部１１２の画面左側に表示された図５（ａ）に示すような撮影メニューＵＩから、ユーザの指示により操作部１０９を介して「撮影画像を表示」メニューが選択されたか否かを判定する。選択されていない場合はそのまま待機する。そして、「撮影画像を表示」メニューが選択された場合は、ステップＳ２０３において、ＣＰＵ１０６は検出手段として機能し、前述の付加情報からオートブラケットフラグ及びグループ番号についての情報を読み出す。そして、ＣＰＵ１０６は、オートブラケットフラグが「ＯＮ」となっており、相関性のある同じブラケットグループ番号の画像を抽出し、表示部１１２に多段露出画像群としてグループ化して表示する。
【００１７】
次に、ステップＳ２０４において、図５（ｂ）に示すパラメータの中から、ユーザの指示により操作部１０９を介して設定すべきＨＤＲ処理パラメータが選択されたか否かを判定する。図５（ｂ）に示すＨＤＲ処理ＵＩは、図５（ａ）に示す画面において、ユーザの指示により操作部１０９を介して、前述のグループ化された多段露出画像群に対して「ＨＤＲ処理」が選択されると表示されるものである。ＨＤＲ処理パラメータが選択されていない場合はそのまま待機し、ＨＤＲ処理パラメータが選択された場合は、ステップＳ２０５において、選択されたＨＤＲ処理パラメータをＲＡＭ１０８に記憶する。次に、ステップＳ２０６において、多段露出画像群の各画像を合成してＨＤＲ画像データを生成する。生成されるＨＤＲ画像データは、図６に示す画像データのように、全画素の８ビットＲＧＢ値が示されたデータである。なお、ステップＳ２０６の詳細については後述する。
【００１８】
次に、ステップＳ２０７において、ＲＡＭ１０８に記憶されたＨＤＲ処理パラメータに基づいて、生成したＨＤＲ画像データに対して階調圧縮処理を行う。なお、ステップＳ２０７の詳細については後述する。そして、ステップＳ２０８において、階調圧縮処理を行ったＨＤＲ画像を表示部１１２に表示するとともに、メディアインターフェース部１０５を介してメディア等にＨＤＲ画像データを記録し、処理を終了する。
【００１９】
次に、図２のステップＳ２０６において実行される処理の詳細について説明する。
図７は、ステップＳ２０６において実行されるＨＤＲ画像データを生成する処理手順の一例を示すフローチャートである。なお、図７に示す各処理は、ＣＰＵ１０６によって行われる。ステップＳ２０６では、図８に示すように、露出の多い画像に合成ゲインを乗じて、露出の少ない画像に順次合成していく。
まず、ステップＳ７０１において、多段露出画像群の各画像の付加情報から露出時間ETの情報を読み出す。次に、ステップＳ７０２において、これらの露出時間ETの中の最大値ETmaxを検出する。
【００２０】
次に、ステップＳ７０３において、露出時間ETが最大の画像について、画素番号１のＲＧＢ値を読み出す。そして、ステップＳ７０４において、読み出したＲＧＢ値が白飛び・黒潰れのない画素値（有効範囲内の画素値）であるか否かを判定する。この判定の結果、白飛び・黒潰れしている画素値である場合は、ステップＳ７０５に進み、白飛び・黒潰れしていない画素値である場合は、ステップＳ７０９に進む。ここで白飛び・黒潰れしていない画素値とは、０＜ＲＧＢ＜２５５を満たす画素値である。
【００２１】
次に、ステップＳ７０５において、露出時間ETが一段階小さい画像について、同じ画素番号のＲＧＢ値を読み出す。そして、ステップＳ７０６において、読み出したＲＧＢ値が白飛び・黒潰れのない画素値であるか否かを判定する。この判定の結果、白飛び・黒潰れしている画素値である場合は、ステップＳ７０５に戻り、白飛び・黒潰れしていない画素値である場合は、ステップＳ７０７に進む。そして、ステップＳ７０７において、以下の数１に示す式に従って、ステップＳ７０６で白飛び・黒潰れのない画素値と判定された画像（以下、選択画像）の露出時間ETと露出時間最大値ETmaxとの露出時間比ETRを算出する。
【００２２】
【数１】
0005483949.tif 000002
【００２３】
次に、ステップＳ７０８において、選択画像のＲＧＢ値と、算出した露出時間比ETRとを用いて、以下の数２に示す式により、ＨＤＲ画像の合成後のＲＧＢ値（RGBHDR）を算出する。
【００２４】
【数２】
0005483949.tif 000003
【００２５】
次に、ステップＳ７０９において、算出したＨＤＲ画像の合成後のＲＧＢ値（RGBHDR）をＲＡＭ１０８に記憶する。そして、ステップＳ７１０において、全画素についてＨＤＲ画像の合成後のＲＧＢ値（RGBHDR）をＲＡＭ１０８に記憶したか否かを判定する。この判定の結果、全画素についてＨＤＲ画像の合成後のＲＧＢ値（RGBHDR）を記憶した場合は、処理を終了する。一方、ステップＳ７１０の判定の結果、まだＲＡＭ１０８に記憶していない画素がある場合は、ステップＳ７１１に進み、露出時間が最大の画像について、次の画素番号のＲＧＢ値を読み出し、ステップＳ７０４に戻る。
【００２６】
次に、ステップＳ２０７において実行される処理の詳細について説明する。
図９は、ステップＳ２０７において実行される階調圧縮の処理手順の一例を示すフローチャートである。なお、図８に示す各処理は、ＣＰＵ１０６によって行われる。また、図１０は、階調圧縮処理におけるパラメータ計算の流れを示す図である。ステップＳ２０７では、例えば非特許文献１に記載されているLandらにより提唱されたRetinexモデルを利用して階調圧縮を行う。Retinexモデルを利用した階調圧縮処理とは、実シーンの輝度成分を、照明成分と反射率成分とに分離し、照明成分は人間の視覚に鈍感であると仮定し、照明成分のみを圧縮するというものである。なお、輝度照明成分は、ＨＤＲ画像にローパスフィルタ処理を行うことで取得される。
【００２７】
まず、ステップＳ９０１において、以下の数３に示す式に従って、ＨＤＲ画像のＲＧＢ値（RGBHDR）から、輝度成分YHDRを算出する。
【００２８】
【数３】
0005483949.tif 000004
【００２９】
次に、ステップＳ９０２において、以下の数４に示す式に従って、ガウシアンフィルタFilter(a,b)を算出する。本実施形態では、ガウシアンフィルタFilter(a,b)の分散Ｓを、画像幅Ｗの１／５の画素数とし、フィルタ処理を行う範囲は、ガウス関数の積分値の約９５％が含まれる−Ｓ〜Ｓとする。
【００３０】
【数４】
0005483949.tif 000005
【００３１】
次に、ステップＳ９０３において、以下の数５に示す式に従って、輝度成分YHDRとガウシアンフィルタFilter(a,b)との離散畳み込み演算を行い、輝度照明成分YIllum_HDRを算出する。
【００３２】
【数５】
0005483949.tif 000006
【００３３】
次に、ステップＳ９０４において、以下の数６に示す式に従って、輝度反射率成分YRefrectanceを算出する。
【００３４】
【数６】
0005483949.tif 000007
【００３５】
次に、ステップＳ９０５において、ステップＳ９０３において算出した輝度照明成分YIllum_HDRを圧縮し、圧縮後の輝度照明成分YIllum_LDRを算出する。なお、ステップＳ９０５の詳細については後述する。次に、ステップＳ９０６において、以下の数７に示す式に従って、圧縮後の輝度照明成分YIllum_LDRと輝度反射率成分YRefrectanceとを合成し、輝度成分YLDRを算出する。
【００３６】
【数７】
0005483949.tif 000008
【００３７】
次に、ステップＳ９０７において、以下の数８に示す式に従って、階調圧縮処理前後の輝度成分YHDR、YLDRを用いて、ＨＤＲ画像のＲＧＢ値（RGBHDR）を調節し、階調圧縮処理後のＲＧＢ値（RGBLDR）を算出する。
【００３８】
【数８】
0005483949.tif 000009
【００３９】
次に、ステップＳ９０８において、以下の数９に示す式に従って、階調圧縮処理後のＲＧＢ値（RGBLDR）にカメラガンマ処理を行い、カメラガンマ処理後のＲＧＢ値（RGBLDR_g）を算出し、ＲＡＭ１０８に記憶する。そして、処理を終了する。図１０に示すように、輝度照明成分のみを圧縮し、ＨＤＲ画像のＲＧＢ値（RGBHDR）からカメラガンマ処理後のＲＧＢ値（RGBLDR_g）を算出する。
【００４０】
【数９】
0005483949.tif 000010
【００４１】
次に、ステップＳ９０５において実行される処理の詳細について説明する。
図１１は、ステップＳ９０５において実行される輝度照明成分YIllum_HDRの圧縮処理手順の一例を示すフローチャートである。なお、図１１に示す各処理は、ＣＰＵ１０６によって行われる。また、図１２（ａ）は、「黒潰れを補正」、「白飛びを補正」、及び「黒潰れ及び白飛びを補正」のそれぞれの場合における輝度照明成分の圧縮特性を示す図である。
まず、ステップＳ１１０１において、ＨＤＲ処理パラメータ（選択画像の基準輝度YRef、補正方法、補正強さ）をＲＡＭ１０８から読み出す。そして、ステップＳ１１０２において、ステップＳ９０３で算出された輝度照明成分YIllum_HDRの中から最大値YIllum_MAXを検出する。
【００４２】
次に、ステップＳ１１０３において、輝度照明成分YIllum_HDRがステップＳ１１０１で読み出した基準輝度YRefより大きいか否かを判定する。この判定の結果、基準輝度YRefより小さい場合は、ステップＳ１１０４に進み、基準輝度YRef以上である場合は、ステップＳ１１０５に進む。
【００４３】
ステップＳ１１０４においては、以下の数１０及び表１に従って輝度照明成分YIllum_HDRを圧縮し、圧縮後の輝度照明成分YIllum_LDRを算出する。なお、数１０に示す式のＳＣＤとは、黒潰れ補正強さ（Shadow Correction Degree）であり、設定された黒潰れ補正強さに応じて、図１２（ｂ）に示すような圧縮特性で補正を行う。
【００４４】
【数１０】
0005483949.tif 000011
【００４５】
【表１】
0005483949.tif 000012
【００４６】
一方、ステップＳ１１０５においては、以下の数１１に示す式に従って輝度照明成分YIllum_HDRを圧縮し、圧縮後の輝度照明成分YIllum_LDRを算出する。ここで、数１１に示す式のＨＣＤとは、白飛び補正強さ（Highlight Correction Degree）であり、設定された白飛び補正強さに応じて、図１２（ｃ）に示すような圧縮特性で補正を行う。
【００４７】
【数１１】
0005483949.tif 000013
【００４８】
【表２】
0005483949.tif 000014
【００４９】
以上のように本実施形態によれば、オートブラケットフラグが「ＯＮ」であって、同じブラケットグループ番号の画像を多段露出画像とし、多段露出画像群をグループ化して表示部１１２に表示するようにした。これにより、ユーザは適切な多段露出画像群を確認することができ、多段露出画像の選択ミスを減らすことができる。したがって、適切な多段露出画像群に対してダイナミックレンジ拡大処理、階調圧縮処理を実施することができ、白飛び・黒潰れ等を軽減した撮影画像を取得することができる。
【００５０】
なお、本実施形態では、図５（ａ）に示すように、多段露出画像群をグループ化して複数のグループを表示する例について説明した。一方、グループ化を行う前に、ユーザが１つのオートブラケット撮影した画像を選択し、その選択した画像の多段露出画像群のみをグループ化して表示するようにしてもよい。
【００５１】
また、本実施形態においては、画像ファイルには、画像データとして、全画素の８ビットのＲＧＢ値が記録されているものとしたが、データの種類、フォーマットはこれに限るものではない。例えば、記録されているＲＧＢ値は１６ビットであってもよい。また、本実施形態においては、露出の多い画像に合成ゲインを乗じて、露出の少ない画像に順次合成していくようにしたが、合成ゲインを用いて露出の異なる画像同士を合成する方法であれば、これに限るものではない。例えば、露出の少ない画像に合成ゲインを乗じて、露出の多い画像に順次合成してもよい。
【００５２】
さらに、本実施形態における階調圧縮処理は、ガウシアンフィルタにより抽出された画像低周波成分を圧縮するものとしたが、Retinexモデルに基づき、画像低周波成分を圧縮するものであればこれに限るものではない。例えば、非特許文献２に記載されているように、バイラテラルフィルタを用いて抽出された周波数成分を圧縮しても構わない。また、基準輝度YRefを階調圧縮処理前後で維持するとしたが、これに限るものではない。例えば、画像から顔などの主要被写体を検出し、検出した主要被写体の輝度Yfaceが階調圧縮処理前後で維持されるように補正しても構わない。この場合、数１０及び数１１に示した式における基準輝度YRefを、検出した主要被写体の輝度Yfaceに置き換える。主要被写体の検出方法は、例えば特許文献２に記されている。
【００５３】
（第２の実施形態）
以下、本発明による第２の実施形態を、図面を参照しながら詳細に説明する。第１の実施形態では、オートブラケット撮影を行った場合の例について説明したが、本実施形態では、通常の撮影により生成された撮影画像を対象とした場合の例について説明する。本実施形態では、ブラケットグループ番号が付されていないそれぞれの撮影画像の撮影条件等から判断して、相関がある撮影画像をＨＤＲ処理に用いている。なお、本実施形態における画像処理装置の構成は、第１の実施形態と同様であるため、説明を省略する。
【００５４】
図１３は、本実施形態における画像処理装置１００が実行するＨＤＲ処理の手順一例を示すフローチャートである。なお、図１３に示す各処理は、ＣＰＵ１０６の制御により行われる。
ユーザにより不図示の撮影開始ボタンが押下されると処理を開始し、ステップＳ１３０１において、撮像部１０１は、ユーザの指示に応じて、撮影ごとに露出時間を変えながら撮影を行う。なお、ステップＳ１３０２は、第１の実施形態における図２のステップＳ２０２と同様である。
【００５５】
次に、ステップＳ１３０２の判定の結果、「撮影画像を表示」メニューが選択された場合は、ステップＳ１３０３において、ピックアップした多段露出画像群をグループ化して表示部１１２に表示する。なお、ステップＳ１３０３の詳細については後述する。また、ステップＳ１３０４〜ステップＳ１３０８については、第１の実施形態の図２のステップＳ２０４〜ステップＳ２０８と同様の処理となるため、説明を省略する。
【００５６】
次に、図１３のステップＳ１３０３において実行される処理の詳細について説明する。図１４は、ステップＳ１３０３において実行される多段露出画像群を表示する処理手順の一例を示すフローチャートである。なお、図１４に示す各処理は、ＣＰＵ１０６によって行われる。
まず、ステップＳ１４０１において、保持している撮影画像群から任意の２枚の画像データをＲＡＭ１０８から読み出す。そして、ステップＳ１４０２において、読み出した２枚の画像データに、図４に示すような撮影時の付加情報が存在するか否かを判定する。この判定の結果、付加情報が存在する場合は、ステップＳ１４０３に進み、付加情報が存在しない場合は、ステップＳ１４０５に進む。
【００５７】
次に、ステップＳ１４０３において、付加情報を参照し、撮影時間がほぼ同時刻（１分差以内）であって、撮影場所・画像幅及び画像高さといった画像サイズ・レンズの絞り値・ＩＳＯ感度が同じであり、さらに、露出時間が異なるか否かを判定する。この判定の結果、条件を満たす場合は、ステップＳ１４０４に進み、条件を満たさない場合は、ステップＳ１４０７に進む。そして、ステップＳ１４０４において、両画像データの付加情報に同じブラケットグループ番号を付加する。なお、いずれか一方の画像データに既にブラケットグループ番号が付加されている場合は、ブラケットグループ番号が記載されていない画像データに同じブラケットグループ番号を付加する。
【００５８】
一方、ステップＳ１４０５においては、２つの画像データから図１５に示すような画素分布のヒストグラムを算出し、以下の数１２に示す式に従って、比較対象としてそれらの相関係数Ｃを算出する。なお、数１２に示す式のHist1、Hist2は読み出した２枚の画像データのヒストグラムを示し、Hist1ave、Hist1aveは両画像データのヒストグラムの平均値を示す。そして、算出した相関係数Ｃが０．９以上であるか否かを判定する。この判定の結果、相関係数Ｃが０．９以上である場合は、ステップＳ１４０６に進み、相関係数が０．９未満である場合は、ステップＳ１４０７に進む。
【００５９】
【数１２】
0005483949.tif 000015
【００６０】
次に、ステップＳ１４０６において、両画像データの付加情報を新規作成し、ブラケット撮影フラグをＯＮにして、同じブラケットグループ番号を付加し、その他の付加情報については付加しないようにする。なお、いずれか一方の画像データに既にブラケットグループ番号が付加されている場合、ブラケットグループ番号が記載されていない画像データに同じブラケットグループ番号を付加する。そして、ステップＳ１４０７において、撮影画像群の中で２枚の組合せ全てについて処理を終了したか否かを判定する。この判定の結果、全ての組合せについて処理を終了した場合は、ステップＳ１４０８に進み、処理を終了していない場合、ステップＳ１４０１に戻る。次に、ステップＳ１４０８において、図５（ａ）に示すように、ブラケットグループ番号が同じ画像群をグループ化して表示し、処理を終了する。
【００６１】
以上のように本実施形態によれば、撮影画像の付加情報、もしくは撮影画像の画素分布から相関性を検出し、相関性のある撮影画像を多段露出画像群としてグループ化して表示部１１２に表示するようにした。これにより、ユーザは適切な多段露出画像群を確認することができ、多段露出画像の選択ミスを減らすことができる。したがって、適切な多段露出画像群に対してダイナミックレンジ拡大処理、階調圧縮処理を実施することができ、白飛び・黒潰れ等を軽減した撮影画像を取得することができる。
【００６２】
なお、本実施形態では、図５（ａ）に示すように、多段露出画像群をグループ化して複数のグループを表示する例について説明した。一方、第１の実施形態と同様に、グループ化を行う前に、ユーザが１つの撮影画像を選択し、その選択した画像の多段露出画像群のみをグループ化して表示するようにしてもよい。
【００６３】
（第３の実施形態）
以下、本発明による第３の実施形態を、図面を参照しながら詳細に説明する。第２の実施形態では、相関のある撮影画像を判断して同じブラケットグループ番号を付し、装置側がＨＤＲ処理に用いる画像を選択した。これに対して本実施形態では、ユーザが選択した撮影画像がＨＤＲ処理に適したものであるか否かを判断して、適していない撮影画像が含まれている場合には、警告表示を行う例について説明する。
【００６４】
図１６は、本実施形態に係る画像処理装置３００の構成例を示すブロック図である。
図１６において、入力部３０１は、ユーザからの指示や、データを入力するためのものであり、例えばキーボードやポインティング装置を含むものである。なお、ポインティング装置としては、マウス、トラックボール、トラックパッド、タブレット等が挙げられる。
【００６５】
データ保存部３０２は、画像データを保持するための記録媒体であり、例えばハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲやＤＶＤ、メモリーカード、スマートメディアＳＤカード、ＵＳＢメモリ等である。データ保存部３０２には、画像データの他にも、プログラムやその他のデータを保持することも可能である。また、後述するＲＡＭ３０６の一部をデータ保存部３０２として用いてもよい。さらには、後述する通信部３０７により接続した先の機器のデータ保存部を通信部３０７を介して利用する、という形態であってもよい。
【００６６】
表示部３０３は、画像処理前、もしくは画像処理後の画像を表示したり、ＧＵＩ等の画像を表示したりする装置であり、一般的にはＣＲＴや液晶ディスプレイなどが用いられる。なお、表示部３０３は、ケーブル等で接続された装置外部のディスプレイ装置であってもよく、公知のタッチスクリーンであってもよい。この場合、タッチスクリーンによる入力については、入力部３０１の入力として扱うことも可能である。
【００６７】
ＣＰＵ３０４は、画像処理装置３００全体の各構成の処理を制御するためのものである。ＲＯＭ３０５及びＲＡＭ３０６は、その処理に必要なプログラム、データ、作業領域などをＣＰＵ３０４に提供するためのものである。また、後述する処理に必要な制御プログラムがデータ保存部３０２やＲＯＭ３０５に格納されている場合には、ＲＡＭ３０６に一旦展開してから実行される。また、通信部３０７を経由して装置がプログラムを受信する場合には、データ保存部３０２に記録した後にＲＡＭ３０６に一旦展開されるか、通信部３０７からＲＡＭ３０６に直接読み出されてから実行される。
【００６８】
通信部３０７は、機器間の通信を行うためのＩ／Ｆであり、例えば、公知のイーサネット（登録商標）、ＵＳＢ、IEEE1284、IEEE1394、電話回線などの有線による通信方式である。また、赤外線（IrDA）、IEEE802.11a、IEEE802.11b、IEEE802.11g、Bluetooth、ＵＷＢ（Ultra Wide Band）等の無線通信方式であってもよい。なお、図１６では、入力部３０１、データ保存部３０２、及び表示部３０３が全て１つの装置内に含まれるような構成を示しているが、これらの構成が公知の通信方式による通信路で接続されており、全体としてこのような構成となっているのであってもよい。また、システム構成については、上記以外にも様々な構成要素が存在するが、本発明の主眼ではないので、その説明は省略する。
【００６９】
図１７は、本実施形態に係る画像処理装置３００が実行するＨＤＲ処理の手順の一例を示すフローチャートである。なお、図１７に示す各処理はＣＰＵ３０４の制御により行われる。
まず、ユーザにより入力部３０１から撮影画像を表示する指示を受けると処理を開始する。そして、ステップＳ１７０１において、表示部３０３に撮影画像群（例えば、サムネイル画像）を表示する。次に、ステップＳ１７０２において、ユーザにより入力部３０１を介して表示された撮影画像群の中から多段露出画像群が選択され、それらの選択された多段露出画像群がＨＤＲ合成に適するか否かを判定する。この判定の結果、ＨＤＲ合成に適する場合は、ステップＳ１７０４に進み、ＨＤＲ合成に適さない場合は、ステップＳ１７０３に進む。なお、ステップＳ１７０２の詳細については後述する。
【００７０】
ステップＳ１７０３においては、表示部３０３に、例えば図１８に示すような警告表示を行い、ステップＳ１７０１に戻る。一方、ステップＳ１７０４においては、多段露出画像群をグループ化して表示部３０３に表示する。なお、ステップＳ１７０５〜ステップＳ１７０８については、第１の実施形態で説明した図２のステップＳ２０３〜ステップＳ２０６と同様の処理であるため、説明は省略する。
【００７１】
図１９は、ステップＳ１７０２において実行される判定の判定基準を生成する処理手順の一例を示すフローチャートである。なお、図１９に示す各処理はＣＰＵ３０４の制御により行われる。
まず、ステップＳ１９０１において、ユーザにより選択された多段露出画像群から任意の２枚の画像データをデータ保存部３０２から読み出す。なお、ステップＳ１９０２〜Ｓ１９０７は、第２の実施形態で説明したステップＳ１４０２〜Ｓ１４０７と同様であるため、説明は省略する。また、本実施形態では、第２の実施形態とは異なり、ユーザにより選択された画像のみが対象となる。
【００７２】
そして、ステップＳ１９０８において、ユーザにより選択されたすべての多段露出画像のブラケットグループ番号を確認し、処理を終了する。このようにブラケットグループ番号を確認し、多段露出画像群の中に、１つでもブラケットグループ番号が異なるもしくは存在しない画像が含まれている場合には、ステップＳ１７０３に進むことになる。また、すべての多段露出画像のブラケットグループ番号が同じ場合には、ステップＳ１７０４に進むことになる。
【００７３】
以上のように本実施形態によれば、ユーザが多段露出画像として選択した撮影画像の付加情報、もしくは撮影画像の画素分布から相関性を検出する。そして、選択したすべての撮影画像において相関性がある場合は、撮影画像を多段露出画像群としてグループ化して表示部１１２に表示するようにし、そうでない場合は警告画面を表示するようにした。これにより、ユーザは適切な多段露出画像群であるか否かを確認することができ、多段露出画像の選択ミスを減らすことができる。したがって、適切な多段露出画像群に対してダイナミックレンジ拡大処理、階調圧縮処理を実施することができ、白飛び・黒潰れ等を軽減した撮影画像を取得することができる。
【００７４】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００７５】
１０６  ＣＰＵ、１１２  表示部
【図１】
0005483949.tif 000016
【図２】
0005483949.tif 000017
【図３】
0005483949.tif 000018
【図４】
0005483949.tif 000019
【図５】
0005483949.tif 000020
【図６】
0005483949.tif 000021
【図７】
0005483949.tif 000022
【図８】
0005483949.tif 000023
【図９】
0005483949.tif 000024
【図１０】
0005483949.tif 000025
【図１１】
0005483949.tif 000026
【図１２】
0005483949.tif 000027
【図１３】
0005483949.tif 000028
【図１４】
0005483949.tif 000029
【図１５】
0005483949.tif 000030
【図１６】
0005483949.tif 000031
【図１７】
0005483949.tif 000032
【図１８】
0005483949.tif 000033
【図１９】
0005483949.tif 000034