(57)【要約】【課題】  ノイズの増加を抑えて、撮像光学系に起因する画質劣化を低減する。【解決手段】  測光部414は、撮像部の露出量を決定する。回復フィルタ生成部429は、撮像部の撮像条件に基づき回復フィルタを生成する。動的露出補正部428は、回復フィルタの特性に応じて露出量を補正する。画像回復部431は、補正された露出量と撮像条件によって撮像部が撮影した撮像データに、回復フィルタによる回復処理を施す。ゲイン調整部432は、回復処理が施された撮像データに前記露出量の補正の分のゲイン調整を施す。【選択図】  図5
2010283527.tif 000002
【特許請求の範囲】
【請求項１】
露出量を決定する決定手段と、
撮像部の撮影条件に基づき回復フィルタを生成する生成手段と、
前記回復フィルタの特性に応じて前記露出量を補正する補正手段と、
前記補正された露出量と前記撮影条件によって前記撮像部が撮影した撮像データに、前記回復フィルタによる回復処理を施す回復手段と、
前記回復処理が施された撮像データに前記露出量の補正の分のゲイン調整を施す調整手段とを有することを特徴とする画像処理装置。
【請求項２】
前記補正手段は、前記回復フィルタの係数の分散に基づき前記露出量を補正することを特徴とする請求項1に記載された画像処理装置。
【請求項３】
前記補正手段は、前記回復フィルタの特性に応じて前記露出量を低減することを特徴とする請求項1に記載された画像処理装置。
【請求項４】
前記補正手段は、撮影対象領域において輝度信号の飽和が発生しないと予測される場合は、前記露出量を補正しないことを特徴とする請求項1から請求項3の何れか一項に記載された画像処理装置。
【請求項５】
露出量を決定し、
撮像部の撮影条件に基づき回復フィルタを生成し、
前記回復フィルタの特性に応じて前記露出量を補正し、
前記補正された露出量と前記撮影条件によって前記撮像部が撮影した撮像データに、前記回復フィルタによる回復処理を施し、
前記回復処理が施された撮像データに前記露出量の補正の分のゲイン調整を施すことを特徴とする画像処理方法。
【請求項６】
コンピュータ装置を制御して、請求項1から請求項4の何れか一項に記載された画像処理装置の各手段として機能させることを特徴とするプログラム。
【請求項７】
請求項6に記載されたプログラムが記録されたことを特徴とするコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像光学系に起因する画質劣化を低減する画像処理に関する。
【背景技術】
【０００２】
ディジタルカメラ、ディジタルビデオカメラなどの撮像装置は、被写体からの光を撮影レンズで構成される撮像光学系によって電荷結合素子(CCD)やCMOSセンサなどの撮像デバイスに導いて、被写体画像に対応する電気信号を取得する。そして、この電気信号をアナログ-ディジタル(AD)変換し、デモザイキング処理することで被写体の画像データが得られる。
【０００３】
撮影レンズは、光の波長によって屈折率が異なり、光の波長によって結像にずれが生じる。この画像劣化は収差と呼ばれる。結像のずれ方により、色のずれ、像の流れ、解像感の低下など様々な画像劣化が生じる。このような画像劣化を補正するために、撮像光学系の特性を予めデータ化して、この特性データに基づき、劣化した画像を補正する方法が知られている（例えば特許文献1）。
【０００４】
劣化した画像の補正処理は、像高ごと、または、画像の部分ごとにレンズ特性値を得て、この特性値に基づく空間フィルタを適用して劣化前の信号値を復元する。この特性値は、例えば点像分布関数(point spread function: PSF)と呼ばれる関数で表現することができる。PSFは、被写体の一点が、どのような広がりをもつ像として写像されるかを示す。例えば、暗黒化で体積が非常に小さい発光体を撮影した場合の撮像センサ面における光の二次元分布が、撮像に使用した撮像光学系のPSFに相当する。PSFを得るには、必ずしも、点光源のような被写体を撮影する必要はなく、例えば白黒のエッジを有するチャートを撮影し、撮影画像からチャートに対応した計算方法によってPSFを求める方法が知られている。また、撮像光学系の設計データからPSFを算出することも可能である。
【０００５】
PSFを用いる復元処理は、サイズの大きな空間フィルタ（以下、回復フィルタ）を適用することが多い。回復フィルタの適用による復元処理では、白飛び領域が問題になる。白飛び領域は、撮像センサの飽和によって本来得られるべき信号値が得られず、階調が白色に飛んだ画像領域である。従って、回復フィルタを適用しても、白飛び領域の周辺では像を正しく復元することはできない。その結果、白飛び領域の周辺に画像の折り返しが発生したり、被写体には存在しない色が発生する（以下、色着き）などの現象が生じる。
【０００６】
この問題に対して、例えば白飛び領域を検出し、その周辺領域に補正処理を施すことで、白飛び領域の周辺領域で発生する復元処理の不具合に対処する方法が知られている（特許文献2）。また、輝度に応じて適用するフィルタを変更し、白飛び領域付近での補正の度合いを下げ、不具合の発生を抑制する方法も提案されている（特許文献3）
【０００７】
しかし、白飛び領域の周辺で補正効果が弱まると画像に違和感が生じる場合がある。また、復元処理に適用する回復フィルタのサイズが大きければ大きいほど、または、回復フィルタの分散が大きいほど色着きが発生する領域が大きくなる問題がある。白飛び領域の周辺の色着きを検出して補正する方法も考えられるが、色着きの幅が大きい場合はグラデーションの一部なのか補正処理に起因する色着きかの判断が難しく、たとえ色着きを正しく検出できたとしても、色着きを適切に補正することは難しい。
【０００８】
従って、像を正しく復元するには、白飛びを抑えることが重要である。白飛びを抑えるために露出を下げて撮影する方法が考えられる。しかし、常に露出を下げれば、適正露出に戻すためのゲイン調整によるノイズの増加が目立つ問題がある。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平4-088765号公報
【特許文献２】特開2007-133591公報
【特許文献３】特開2007-181170公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
本発明は、ノイズの増加を抑えて、撮像光学系に起因する画質劣化を低減することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【００１２】
本発明にかかる画像処理は、露出量を決定し、撮像部の撮影条件に基づき回復フィルタを生成し、前記回復フィルタの特性に応じて前記露出量を補正し、前記補正された露出量と前記撮影条件によって前記撮像部が撮影した撮像データに、前記回復フィルタによる回復処理を施し、前記回復処理が施された撮像データに前記露出量の補正の分のゲイン調整を施すことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ノイズの増加を抑えて、撮像光学系に起因する画質劣化を低減することができる。
【図面の簡単な説明】
【００１４】
【図１】ディジタルカメラの外観図。
【図２】ディジタルカメラの垂直断面図。
【図３】ディジタルカメラの制御、撮影および画像処理に関する構成例を示すブロック図。
【図４】動的露出補正を説明する図。
【図５】画像処理部とその周辺をまとめたブロック図。
【図６】カメラ信号処理部の画像処理に関わる構成例を示すブロック図。
【図７】図5に示すカメラ信号処理部の構成からゲイン調整部を削除した構成例を示すブロック図。
【図８】画像回復部による収差補正を説明するフローチャート。
【図９】色フィルタごとに分割されたプレーンを示す図。
【図１０】回復フィルタの構成方法を説明する図。
【図１１】二次元の回復フィルタの構成方法を説明する図。
【図１２】露出補正量の決定を説明するフローチャート。
【図１３】実施例2の画像データファイルのデータ形式の一例を示す図。
【図１４】外部装置による画像処理を説明するフローチャート。
【図１５】実施例3の画像処理を説明するフローチャート。
【発明を実施するための形態】
【００１５】
以下、本発明にかかる実施例の画像処理を図面を参照して詳細に説明する。
【実施例１】
【００１６】
［カメラの構成］
図1はディジタルカメラの外観図である。カメラボディ100の上部には、ビューファインダの接眼窓111、自動露出(AE)ロックボタン114、自動焦点(AF)の測距点を選択するボタン113、撮影操作をするためのレリーズボタン112がある。また、撮影モード選択ダイヤル117、外部表示部409、電子ダイヤル411などがある。
【００１７】
電子ダイヤル411は、他の操作ボタンと併用してカメラに数値を入力したり、撮影モードを切り換えたりするための多機能信号入力部である。また、LCDパネルの外部表示部409には、シャッタスピード、絞り、撮影モードなどの撮影条件や、その他の情報が表示される。
【００１８】
カメラボディ100の背面には、カメラが捉えた画像、撮影した画像、各種設定画面などを表示するLCDモニタ417、LCDモニタ417の表示をオンオフするためのスイッチ121、十字キー116、メニューボタン124などがある。なお、LCDモニタ417は透過型であるため、LCDモニタ417の駆動だけではユーザが画像を視認することはできない。そのため、LCDモニタ417の裏面には、後述するように、バックライトが必要である。
【００１９】
十字キー116は、上下左右にそれぞれ配置された四つのボタンと、中央部に配置された設定ボタンを有し、LCDモニタ417に表示されるメニュー項目などの選択や実行を指示するために用いられる。
【００２０】
メニューボタン124は、LCDモニタ417にメニュー画面を表示させるためのボタンである。例えば、撮影モードを選択、設定する場合、メニューボタン124を押した後、十字キー116の上下左右のボタンを操作して希望の撮影モードを選択し、希望の撮影モードが選択された状態で設定ボタンを押すことで、撮影モードの設定が完了する。なお、メニューボタン124と十字キー116は、後述するAFモードの設定にも使用される。
【００２１】
図2はディジタルカメラの垂直断面図である。撮像光学系の撮影レンズ200は、レンズマウント202を介して、カメラボディ100に着脱可能である。
【００２２】
撮影光軸201を中心とする撮影光路中に配置されたミラー203は、撮影レンズ200からの被写体光をファインダ光学系に導く位置（斜設位置）と、撮影光路外の退避位置の間でクイックリターンが可能である。
【００２３】
ミラー203によってファインダ光学系に導かれた被写体光は、ピント板204上に結像する。そして、ピント板204を通過した被写体光は、ビューファインダの視認性を向上させるコンデンサレンズ205、正立正像を復元するペンタゴナルダハプリズム206を通り、接眼レンズ208および測光センサ207に導かれる。
【００２４】
後幕209と先幕210は、フォーカルプレーンシャッタ（機械式シャッタ）を構成し、両幕209と210の開閉によって、その後方に配置された、CCDやCMOSセンサである撮像デバイス418を必要時間露光する。撮像デバイス418は、プリント板211に保持されている。プリント板211の後方には、さらにプリント板215が配置され、プリント板215の反対面にLCDモニタ417とバックライト416が配置されている。
【００２５】
さらに、カメラボディ100内には、画像データが記録される記録メディア419aと、携帯用電源である電池217がある。なお、記録メディア419aと電池217は、カメラボディ100に着脱可能である。
【００２６】
図3はディジタルカメラの制御、撮影および画像処理に関する構成例を示すブロック図である。マイクロコンピュータ(CPU)402は、撮像デバイス418が出力する画像データの処理や、LCDモニタ417の表示制御をはじめとし、カメラ全体の動作を制御する。
【００２７】
スイッチ(SW1)405は、レリーズボタン112を半分押した状態（半押し状態）で閉になる。スイッチ(SW1)405が閉になるとカメラは撮影準備状態になる。スイッチ(SW2)406は、レリーズボタン112を最後まで押込んだ状態（全押し状態）で閉になる。スイッチ(SW2)406が閉になるとカメラボディ100は撮影動作を開始する。
【００２８】
レンズ制御部407は、撮影レンズ200と通信し、AF時の撮影レンズ200の駆動制御や絞り羽根の駆動制御を行う。外部表示制御部408は、外部表示部409や、ファインダ内の表示部（不図示）を制御する。スイッチセンス部410は、上述した電子ダイヤル411を含む多数のスイッチやキーから出力される信号をCPU402に伝えるためのインタフェイスである。
【００２９】
ストロボ制御部412は、X接点412aを介して接地されており、外部ストロボの発光および調光制御を行う。記録メディアドライブ419には、例えばハードディスクやメモリカードなどの記録メディア419aが装着される。
【００３０】
測距部413は、AF用に被写体に対するデフォーカス量を検出する。測光部414は、被写体の輝度を測定し、露光時間を制御する。シャッタ制御部415は、撮像デバイス418に対して適正な露光が行われるように、機械式シャッタを制御する。LCDモニタ417とバックライト416は、上述したように表示装置を構成する。
【００３１】
画像処理部425は、ディジタル信号処理プロセッサ(DSP)などから構成される。動き情報検出部426は、ジャイロセンサによって手振れ等によるカメラの動きを検出する。動き情報検出部426の出力は、カメラの振動を打ち消すように撮影レンズ200や撮像デバイス418を駆動するために利用される。
【００３２】
動的露出補正部428は、詳細は後述するが、測光部414が被写体の輝度から計算した露出量を、回復フィルタ生成部429から得られる情報に基づき補正するための露出補正量を計算する。なお、この露出補正は、測光部414の出力を任意の露光量にする調整するために、撮影者が指示する露出補正ではなく、測光部414の出力に対し、レンズ特性値に応じた情報に基づき動的に適用される露出補正である。従って、撮影者が指定する露出補正は、測光部414が計算した露出量を露出補正量で補正した結果に対して適用される。以後、撮影者が行う「露出補正」と区別して「動的露出補正」と呼ぶ。
【００３３】
さらに、CPU402には、アナログ-ディジタル変換器(A/D)423、画像データをバッファするバッファメモリ424などが接続されている。
【００３４】
なお、撮像部である撮像デバイス418から出力された信号をA/D423によりディジタルデータに変換したデモザイキング（現像処理）前のデータを撮像データまたはRAWデータと呼ぶ。なお、少なくとも撮像デバイス418は撮像部を構成するが、撮像デバイス418とA/D423を合わせて、さらに撮影レンズ200を合わせて、撮像部と呼ぶ場合がある。あるいは、カメラボディ100を撮像部と呼ぶ場合がある。
【００３５】
［動的露出補正］
本実施例は、後述する回復フィルタの特性に応じて撮影時の露出を動的露出補正する。回復フィルタは、撮像デバイス418の素子配列（例えばベイヤ配列）のデータに適用する空間フィルタとする。回復フィルタの分散が大きいほど、注目画素から離れた画素の値の影響を強く受け、復元処理後の白飛び領域の周辺領域では、色が大きく滲んだりするなど、正しく復元することができない。つまり、注目画素の値を復元するのに必要な周辺領域の画素の値が撮像デバイス418の飽和（輝度信号の飽和）によって失われ、正しく復元することができない。その結果、色の滲み、解像度の低下、アーチファクト（本来存在しない模様や虚像）の出現など、画像劣化が生じる。なお、以下では、撮影レンズの収差補正処理における飽和による画質劣化を総称して単に「色滲み」と呼ぶことにする。
【００３６】
図4は動的露出補正を説明する図である。本実施例では、回復フィルタの分散が大きいほど白飛び領域の影響を強く受けることから、回復フィルタの分散に応じて露出を下げる補正量を算出する。つまり、白飛びが発生して、白飛び領域の周辺の色滲みが大きくなる撮影条件ほど、白飛びを抑制する設定にして、収差補正処理による弊害を低減する。例えばレンズ特性値、つまり回復フィルタの形状に応じて、最大一段階分露出を下げる。このようにレンズ特性値に応じて露出を下げた撮影を行えば、注目画素の補正に必要な本来の画素値が得られない領域（白飛び領域）をできるだけ減らすことができる。なお、動的露出補正処理の詳細については後述する。
【００３７】
一方、撮像デバイス418が出力するアナログ信号をA/D変換して得たRAWデータには、レンズ補正処理を適用し、動的露出補正で低減した露出量分のゲイン調整を行い、適正露出と同等の明るさに復元した後、カメラ信号処理を実行する。これにより、動的露出補正によって低下させた露出を回復し、適正露出相当の画像データを得ることが可能になる。
【００３８】
図5は画像処理部425とその周辺をまとめたブロック図で、図4に示す動的露光補正の動作を説明する図である。回復フィルタ生成部429は、カメラボディ100および/または撮影レンズ200の撮影条件（例えば、f値、被写体までの距離（撮影距離）、ズーム位置、撮影レンズ200の特性）に応じて回復フィルタを構成する。そして、回復フィルタを動的露出補正部428と画像処理部425の画像回復部431へ送信する。なお、撮影レンズ200の特性は、撮影レンズ200内のROMなどのメモリに記憶されている。
【００３９】
動的露出補正部428は、回復フィルタ生成部429から受信した回復フィルタを用いて露出補正量を決定し、画像処理部425のゲイン調整部432と測光部414へ露出補正量を送信する。ゲイン調整部432は、受信した露光補正量に基づくゲイン調整を画像回復部431が出力する撮像データに施す。
【００４０】
測光部414は、受信した慮出補正量を考慮して露出量を決定し、露出量を画像処理部425のカメラ信号処理部433へ送信する。カメラ信号処理部433は、受信した露出量に基づきシャッタ速度、f値、ISO感度をシャッタ制御部415と撮影レンズ200に送信し、撮影動作の開始をCPU402に通知する。
【００４１】
図6はカメラ信号処理部433の画像処理に関わる構成例を示すブロック図である。ホワイトバランス処理部601は、被写体の照明光源に応じてR信号とB信号を増幅し、画像のホワイトバランス処理する。画素補間部602は、例えばベイヤ配列の撮像データをデモザイキング処理してRGB三成分のビットマップ形式の画像データに補間する。マトリクス演算部603は、撮像デバイス418の色特性を出力色空間（例えばsRGB空間）に合わせて補正する。ガンマ処理部604は、便宜上「ガンマ」と呼ぶが、画像データのトーンカーブを出力色空間や画像の調子（硬調、軟調）に合わせて補正する。
【００４２】
説明を容易にするため、本実施例では、上記のような処理フローとしたが、一般に、カメラ信号処理部433には輝度ゲイン調整（ガンマ調整）が含まれていることが多い。従って、別途、ゲイン調整部432を設けて適正露出に戻す必要がない場合もある。図7は図5に示すカメラ信号処理部433の構成からゲイン調整部432を削除した構成例を示すブロック図である。つまり、カメラ信号処理部433のガンマ処理部604によって、露光補正量に基づくゲイン調整を画像回復部431が出力する撮像データに施せばよい。ガンマ処理部604によってゲイン調整を行えば、単純なゲイン調整よりもより適切な出力結果を得ることができる。例えば、単純にゲイン調整を行えば白飛びするハイライト域を、トーンカーブ調整により白飛びを抑えて階調数を増やすなどが考えられる。
【００４３】
［収差補正処理］
まず、レンズの収差補正処理の概要を説明し、次に、本実施例における収差補正処理の詳細を説明する。
【００４４】
収差補正処理は、予め撮像光学系の収差特性をデータ化して、収差特性データに基づき画像のレンズ収差を補正する処理である。撮像光学系の収差特性をデータ化する方法として、本実施例ではPSFデータを利用する。
【００４５】
PSFデータを用いて収差を補正する方法として、逆フィルタによる方法がよく知られている。説明のため暗黒下で点光源を撮影した場合を想定する。点光源から出て、収差がある撮像光学系を経た光は、撮像デバイス418の面において、ある程度の広がりを有する光分布（暈け）を形成する。光は、撮像デバイス418によってサンプリングされ、電気信号になり、電気信号を画像化することで点光源を撮影したディジタル画像を得ることができる。
【００４６】
収差がある撮像光学系を用いて撮影された点光源の画像は、点光源が結像すべき一画素だけが0ではない有意の値を有するのではなく、点光源が結像すべき画素の周囲画素も0ではない有意の値になる。この画像を一画素だけが0はではない画像に変換する画像処理が逆フィルタである。逆フィルタによって、恰も収差がない撮像光学系で撮影したかのような画像を得ることができる。
【００４７】
上記では説明のために点光源を例としたが、被写体からの光も多数の点光源の集まりと考えれば、被写体の各部分から放たれる光のそれぞれの暈けをなくすことで、点光源以外の被写体においても収差が少ない画像を得ることができる。
【００４８】
次に、逆フィルタの構成方法を説明する。(x, y)を画面上の位置座標とし、劣化した画像（以下、劣化画像）をg(x, y)、劣化がない画像（以下、被写体像）をf(x, y)、PSFをh(x, y)とすると、下式が成り立つ。
g(x, y) = h(x, y)＊f(x, y)      …(1)
ここで、＊はコンボリューション（畳込積分）演算を表す。
【００４９】
式(1)をフーリエ変換して、空間周波数における表示形式に変換すると、下式に示すように、周波数ごとの積の形式になる。
G(u, v) = H(u,v)・F(u, v)      …(2)
ここで、HはPSFのフーリエ変換、つまり光学伝達関数(optical transfer function: OTF)、
(u, v)は二次元周波数の座標、つまり空間周波数。
【００５０】
劣化画像から被写体像を得るには、下式に示すように、式(2)の両辺をHで除算すればよい。
G(u, v)/H(u, v) = F(u, v)      …(3)
【００５１】
式(3)によって得られるF(u, v)を逆フーリエ変換して実空間に戻せば、収差がない回復像としての被写体像f(x, y)が得られる。
【００５２】
ここで、1/Hの逆フーリエ変換をRとすると、下式のように、実空間における画像に対してコンボリューション演算を行うことで、同様に、被写体像を得ることができる。
g(x, y)＊R(x, y) = f(x, y)      …(4)
【００５３】
式(4)のR(x, y)を逆フィルタと呼ぶ。このR（x，y）を逆フィルタと呼ぶ。実際にはH(u, v)が0になる周波数(u, v)で0による除算が発生するため、逆フィルタR(x, y)は多少の変形を行う。
【００５４】
また、通常、OTFの値は高周波ほど小さくなるため、その逆数である逆フィルタの値は高周波ほど大きくなる。従って、劣化画像に逆フィルタを用いたコンボリューション処理を行うと、劣化画像の高周波成分が強調される。実際の画像はノイズ成分を有するため、上記のようにOTFの完全な逆数をとって作成した逆フィルタは劣化画像のノイズ成分を増幅して、一般に、良好な画像は得られない。この点について、例えばWienerフィルタのように、画像信号とノイズ信号の強度比に応じて画像の高周波側の回復率を抑制する方法が知られている。
【００５５】
このように、撮影画像のノイズ、OTFが0になる周波数など理想条件から乖離する部分があり、収差を完全に取り除くことはできない。しかし、上記処理によって画像の収差を低減することは可能である。以降、逆フィルタやWienerフィルタなど収差補正に用いるフィルタを「回復フィルタ」と呼ぶ。
【００５６】
前述したように、本実施例において、回復フィルタは撮像光学系のPSFを用いて計算する。撮像光学系のPSFは、f値、被写体までの距離（撮影距離）、ズーム位置によって変化する。従って、スイッチ(SW2)406が閉（全押し状態）になった時点の撮影設定から回復フィルタを動的に生成する必要がある。また、回復フィルタの適用は、周波数空間ではなく実空間で行う方が計算量を削減することができる。従って、本実施例における回復フィルタは、周波数空間の回復フィルタを逆フーリエ変換して得られる空間フィルタの形式にする。
【００５７】
また、カラー画像は一画素に付き典型的にRGB三色に対応する画素値を有する。カラー画像は、RGB各プレーンの画像に対して個別にレンズの収差補正処理を適用して、収差を低減する。各プレーンの収差補正を行う場合、撮像光学系の収差特性が色ごとに異なるから、RGB各色で別の回復フィルタを用いる。本実施例において、収差補正の対象とするRAWデータについても同様で、ベイヤ配列を構成する各色に応じた回復フィルタを適用することで収差を低減することができる。
【００５８】
図8は画像回復部431による収差補正を説明するフローチャートである。画像回復部431は、RAWデータを色フィルタごとに独立した撮像データ（プレーン）に分割する(S801)。図9は色フィルタごとに分割されたプレーンを示す図である。
【００５９】
次に、画像回復部431は、分割した撮像データの中で値をもたない画素に0を割り当てる(S802)。つまり、ベイヤ配列などの単版式の撮像デバイス418を利用する場合、各プレーンには値をもたない画素が存在し、当該画素の値を0にする。図10に示すように、Rプレーンにおいて、G、Bプレーンの値を有する画素位置に相当する画素は値をもたない。このような画素に0を割り当てる。
【００６０】
次に、画像回復部431は、各プレーンに回復フィルタを適用する(S803)。つまり、各プレーンの撮像データと各プレーン用の回復フィルタの間でコンボリューション演算を行う。なお、回復フィルタは前述したようにプレーンごとに異なる。また、像高によってレンズの特性が異なり、像高によって異なる回復フィルタを適用する。
【００６１】
次に、画像回復部431は、コンボリューション演算後の各プレーンにステップS802と同様の0を割り当てる(S804)。つまり、ステップS802において0を割り当てた画素は、コンボリューション演算によって0以外の値をもつ場合がある。そこで、ステップS804で改めて当該画素の値を0にする。
【００６２】
次に、画像回復部431は、各プレーンの画像を合成してRAWデータに戻す(S805)。従って、プレーン合成後のデータは、デモザイキング処理が行われていないRAWデータと同等の形式になる。
【００６３】
［回復フィルタの構成方法］
次に、Rプレーンの回復フィルタの構成方法を説明するが、ベイヤ配列のRプレーンとBプレーンの画素は垂直、水平方向に一画素おきに配列されているため、Bプレーンの回復フィルタも同様に構成することができる。
【００６４】
図10は回復フィルタの構成方法を説明する図である。図10(a)はカラーフィルタの配列を考慮しない場合の撮像光学系のOTFを示す。言い換えれば、カラーフィルタを取り払った場合の撮像光学系の周波数特性を意味する。撮像デバイス418においてサンプリングが行われるため、ナイキスト周波数fn以上の周波数成分は存在しない。図10(b)は図10(a)に示す特性の逆数をとった回復フィルタを示す。
【００６５】
一般に、撮像光学系のOTFは高周波ほど小さいため、回復フィルタは高周波ほど強調する作用をもつ。しかし、実際はカラーフィルタの配列によってR成分は例えば一画素おきにサンプリングされるとすると、サンプリング後の撮像光学系のOTFは、R成分のナイキスト周波数fnRに関して図10(c)に示すように、撮像光学系のOTFが折り返った形になる。Rプレーン用の回復フィルタの特性は、図10(c)の逆数であるから図10(d)に示すように、R成分のナイキスト周波数fnRでピークをもつ形になる。
【００６６】
ここで、カラーフィルタの配列を考慮せずに回復フィルタを適用する場合を考える。つまり、図10(b)に示す回復フィルタを図10(c)に示す特性に適用した場合である。このような補正を行えば、得られる画像の周波数特性は、図10(e)に示すように、高周波域が過剰に補正された特性になる。つまり、デモザイキング処理前に収差補正を行う場合は、カラーフィルタの配列に依存する各色のナイキスト周波数を考慮した回復フィルタを用いる必要がある。なお、過剰な補正は、リンギングなどのアーチファクトの発生要因となる。
【００６７】
以上では、簡単のために一次元で説明したが、カラーフィルタの配列は二次元であり、二次元のナイキスト周波数による折り返しを考慮する必要がある。
【００６８】
図11は二次元の回復フィルタの構成方法を説明する図である。図11(a)はカラーフィルタの配列を考慮しない場合の撮像光学系のOTFを示し、縦軸はそれぞれ縦方向の周波数、横軸は横方向の周波数を表す。また、周波数応答を等高線で表示し、等高線上の周波数応答は等しい。撮像デバイス418でサンプリングが行われるため、縦方向、横方向ともにナイキスト周波数fn以上の周波数成分は存在しない。
【００６９】
回復フィルタは、図11(a)の各周波数についてOTFの逆数をとり、逆フーリエ変換をすることで得られる。図11(b)はRプレーンの折り返しを考慮した場合の周波数応答を示す。図11(a)に示すカラーフィルタの配列を考慮しない場合に比べ、図11(b)に示す特性は折り返しによって高周波域の応答が強くなる。本実施例においては、図11(b)に示す周波数特性の逆数をとり、フーリエ変換を行って回復フィルタを得る。回復フィルタ生成部429は、サンプリング後の周波数特性の逆数をとって回復フィルタを構成することで、過剰な補正を避け、リンギングなどのアーチファクトの発生を防ぐ。
【００７０】
また、図11(c)はベイヤ配列によりサンプリングされた後のGプレーンの周波数特性を示す。図11(b)に示すRプレーンの周波数特性と比べると、図11(c)に示すGプレーンの周波数特性は折り返しの様子が異なる。Rプレーンは周波数面上でナイキスト周波数fnの四角形を縦横に縮小した形で折り返しが発生するのに対し、Gプレーンは周波数面上でナイキスト周波数fnの四角形を縦横に縮小し、かつ、90度回転した形の折り返しが発生する。つまり、回復フィルタを構成する場合、折り返し方が各フィルタの配列によって変化するため、フィルタの配列に応じて回復フィルタを構成する必要がある。
【００７１】
［動的露出補正］
前述したように、動的露出補正は、レンズの特性値に応じた露出補正を指す。本実施例においては、撮影画像に適用される回復フィルタすべてについて評価値を求め、評価値に応じて露出補正量を算出する。
【００７２】
図12は露出補正量の決定を説明するフローチャートである。動的露出補正部428は、回復フィルタ生成部429から回復フィルタを取得する(S1301)。なお、回復フィルタは像高ごとに異なるため、回復フィルタは、一つの撮影条件に対して複数個のフィルタで構成される。
【００７３】
次に、動的露出補正部428は、各回復フィルタについて、係数の和が1.0になるように各係数の値を正規化する(S1302)。続いて、各回復フィルタの評価値を計算する(S1303)。評価値は、例えばフィルタを構成する係数の分散であり、以下、分散として説明する。続いて、分散の最小値σminを選択し、次式により露出補正量ΔEを算出する(S1304)。
ΔE = (σmin - A)/A      …(5)
ここで、-1 ≦ ΔE ≦0、
Aは次式で表される。
A = {(1 - 1/N)2 + (N - 1)(1/N)2}/N      …(6)
ここで、Nは空間フィルタの要素数。
【００７４】
ΔEは、測光部414が算出した適正露出量に対する露出補正量であり、本実施例では最大-1段階、露出量を補正する。露出量を-1段階補正した場合、RAWデータとして得られる画素の値は、適正露光時の半分の値になる。言い換えれば、通常の撮影に比べて最大二倍の輝度レンジが記録可能になり、白飛びを効果的に抑えることができる。なお、ΔEを最大-1段階としたが、撮像デバイス418の特性に応じて、さらに絶対値が大きいΔEを設定しても構わない。また、式(6)以外の式を用いてΔEを決定しても構わない。さらに、別の撮影時の設定要素、例えばISO感度を考慮して、ΔEの絶対値の最大を決定すれば、より適切な露出補正が可能になる。
【００７５】
このように、撮影画像に適用する回復フィルタに応じて露出量を動的に補正し、撮像データにレンズの収差補正を施し、収差を補正した撮像データの露出が適正になるようにゲイン調整することで、白飛びを抑えて回復処理を施した画像を得る。その結果、回復フィルタの形状に応じた動的露出補正により、ノイズの増加を抑えて、レンズの収差補正に伴う画質劣化を低減した画像を得ることができる。
【実施例２】
【００７６】
以下、本発明にかかる実施例2の画像処理を説明する。なお、実施例2において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【００７７】
実施例1では、カメラボディ100においてレンズの収差補正を実行する例を説明した。実施例2においては、撮像装置で収差補正を行わずに、撮像装置は露光補正量ΔEを画像データに付加して、外部装置（例えばPC）で収差補正する例を説明する。
【００７８】
図13は画像データファイルのデータ形式の一例を示す図である。例えばTIFF(tagged image file format)形式に準拠し、ディジタルスチルカメラ用画像ファイルフォーマット規格(EXIF)に定められたメーカ固有情報（MakerNoteタグ）内に、露光補正量ΔEを記録する。これにより、外部装置においても適正露出と同等の画像を得ることが可能になる。
【００７９】
図14は実施例2の外部装置による画像処理を説明するフローチャートである。外部装置は、画像データファイルのメーカ固有情報から露出補正量ΔEを取得する(S1501)。続いて、画像データファイルに格納されたRAWデータにレンズの収差補正を施し(S1502)、収差補正を施したRAWデータにホワイトバランス処理を施す(S1503)。なお、ホワイトバランス処理と収差補正の順番は任意で、収差補正よりも先にホワイトバランス処理を行ってもよい。ホワイトバランス処理を先に行い、ホワイトバランスに応じた回復フィルタを適用すれば、撮影光源に応じた補正処理が可能になる。
【００８０】
次に、外部装置は、ベイヤ配列のRAWデータをデモザイキング処理して、各画素をRGB三色の画像データに変換する(S1504)。そして、画像データをマトリクス演算して出力色空間（例えばsRGBやAdobeRGB）に変換し(S1505)、露出補正量ΔEに応じたガンマ処理（トーンカーブ処理）を画像データに施す(S1506)。
【００８１】
実施例1では、回復フィルタの分散の最小値σminを用いて露出補正量ΔEを決定した。実施例2では、回復フィルタの中心要素を除く近傍要素の分散σnを用いる。ただし、回復フィルタの中心要素の係数を除く係数の和が1.0になるように正規化する。そして、近傍要素の分散σnの最小値をσnmin、空間フィルタの要素数Nとすると、露出補正量ΔEは次式で表される。
ΔE = (σnmin - N ＋ 1)/(N - 1)      …(7)
ただし、-1 ≦ ΔE ≦0。
【実施例３】
【００８２】
以下、本発明にかかる実施例3の画像処理を説明する。なお、実施例3において、実施例1、2と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【００８３】
実施例1、2では、常に動的露出補正を行う例を説明した。しかし、撮影対象の領域に白飛びが発生する領域がない場合、動的露出補正を行う必要はない。そこで、スイッチ(SW1)405が閉（半押し状態）の間に、ライブビュー撮影によって得た被写体の輝度分布から、撮影画像に飽和領域が発生しないと予測される場合は動的露出補正を行わない実施例3を説明する。
【００８４】
図15は実施例3の画像処理を説明するフローチャートである。動的露出補正部428は、スイッチ(SW1)405が閉（半押し状態）になると露出補正量ΔEを0に初期化し(S1601)、ライブビュー画像から撮影対象領域に含まれる白飛び領域の面積の割合を計算する(S1602)。なお、白飛び領域の面積取得は、次の何れかのタイミングで行う。
・ライブビュー状態、かつ、スイッチ(SW1)405が閉（半押し状態）、
・非ライブビュー状態、かつ、AEロックボタン114が押された状態。
【００８５】
ライブビュー状態は、スイッチ(SW1)405が閉になり、ミラー203が退避位置に移動し、測光部414で得た露出を考慮してLCDモニタ417に撮像デバイス418が撮影した画像を表示している状態を指す。この状態でスイッチ(SW2)406が閉になると、通常の撮影動作が実行される。
【００８６】
一方、AEロックボタン114が押されると、通常、測光部414から得られた露出で撮影条件（絞り、シャッタ速度、ISO感度）が固定される。本実施例においては、AEロックボタン114が押されると、さらに、ミラー203を退避位置に移動し、撮像デバイス418により画像を得た後、ミラー203を斜設位置に戻す。このような動作により、AEロックボタン114が押された時点で白飛び領域の面積を取得することができる。
【００８７】
次に、動的露出補正部428は、動的露出補正を行うか否かを判定する(S1603)。例えば、撮影領域の0.5%以上が白飛び領域の場合は動的露出補正を実行する。そして、動的露出補正を行うと判定した場合は、動的露出補正を実行する(S1604)。
【００８８】
また、実施例1、2では、露出補正量ΔEを回復フィルタの係数の分散を用いて算出する方法を説明したが、分散の代わりに各回復フィルタの係数の絶対値の最大値mを用いて露出補正量ΔEを決定してもよい。例えば、回復フィルタの係数の和が1.0になるように正規化されている場合、例えばΔE=-mとすることが考えられる。このような処理によれば、露出補正量ΔEの算出に必要な演算量を低減することができる。
【００８９】
［他の実施例］
本発明の目的は、次のようにしても達成される。上記実施例の機能または先に説明したフローチャートの処理や制御を実現するプログラムを記録した記録媒体をシステムまたは装置に供給し、そのシステムまたは装置のコンピュータ（CPUやMPU）に前記プログラムを実行させる。この場合、記録媒体から読み出されたソフトウェア自体が上記実施例の機能を実現することになり、そのプログラムと、そのプログラムを記憶する、コンピュータが読み取り可能な記録媒体は本発明を構成する。
【図１】
2010283527.tif 000003
【図２】
2010283527.tif 000004
【図３】
2010283527.tif 000005
【図４】
2010283527.tif 000006
【図５】
2010283527.tif 000007
【図６】
2010283527.tif 000008
【図７】
2010283527.tif 000009
【図８】
2010283527.tif 000010
【図９】
2010283527.tif 000011
【図１０】
2010283527.tif 000012
【図１１】
2010283527.tif 000013
【図１２】
2010283527.tif 000014
【図１３】
2010283527.tif 000015
【図１４】
2010283527.tif 000016
【図１５】
2010283527.tif 000017