(57)【要約】【課題】  撮影画像データの動きのある領域の画素値の補正を効率的に実行することを可能とする。【解決手段】  動きあり領域などの特定領域の画素値の補正処理において、ホワイトバランス調整のなされた画像データと、フラッシュ発光あり画像データとの差分あるいは比率の初期値を設定し、平滑化フィルタ、またはフラッシュ発光あり画像データに基づいて重みを設定した変換式に従って初期値の変換を行って、動きあり領域における画像差分または画像比率の推定値を算出し、該推定値を適用して動きあり領域の画素値補正を実行する。また、低解像度画像を適用したホワイトバランス調整や動きあり部分の画素値補正後、補正画像と低解像度画像データとの対応に基づいて、高解像度補正画像を生成する。【選択図】  図１８
2005102116.tif 000002
【特許請求の範囲】
【請求項１】
画像処理方法であって、
異なる画素値を持つ第１画像データと第２画像データの対応画素値に基づいて画像差分または画像比率を算出するステップと、
画像データの特定領域において、前記画像差分または画像比率に基づく推定値を算出する推定値算出ステップと、
前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成する補正画像生成ステップと、
を有することを特徴とする画像処理方法。
【請求項２】
前記画像差分ｄ（ｘ，ｙ）は、
前記第１画像データの各画素（ｘ，ｙ）の画素値ベクトルをＡ（ｘ，ｙ）、前記第２画像データの対応画素（ｘ，ｙ）の画素値ベクトルをＢ（ｘ，ｙ）としたとき、
ｄ（ｘ，ｙ）＝Ａ（ｘ，ｙ）−Ｂ（ｘ，ｙ）
として算出されるベクトルであり、
前記画像比率ｄ（ｘ，ｙ）は、
ｄ（ｘ，ｙ）＝Ａ（ｘ，ｙ）／（Ｂ（ｘ，ｙ）＋ｅ）
ただし、ｅは、固定値、
として算出されるベクトルであることを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記第１画像データは、フラッシュ発光なし撮影画像とフラッシュ発光あり撮影画像とに基づいて画素値調整の施されたホワイトバランス調整画像Ｒであり、前記第２画像データは、フラッシュ発光画像Ｉ２であり、前記特定領域は、被写体の動きが検出された動きあり領域であり、
前記画像差分ｄ（ｘ，ｙ）は、
前記ホワイトバランス調整画像Ｒの各画素（ｘ，ｙ）の画素値ベクトルをＲ（ｘ，ｙ）、前記フラッシュ発光画像Ｉ２の対応画素（ｘ，ｙ）の画素値ベクトルをＩ２（ｘ，ｙ）としたとき、
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）−Ｉ２（ｘ，ｙ）
として算出されるベクトルであり、
前記画像比率ｄ（ｘ，ｙ）は、
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）／（Ｉ２（ｘ，ｙ）＋ｅ）
ただし、ｅは、固定値、
として算出されるベクトルであり、
前記補正画像生成ステップは、
前記推定値算出ステップにおいて算出した前記動きあり領域における画像差分または画像比率の推定値と、前記フラッシュ発光画像Ｉ２とに基づいて前記動きあり領域の補正画像を生成するステップであることを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記推定値算出ステップは、
画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定ステップと、
前記初期値設定ステップにおいて設定した初期値に対して平滑フィルタに基づく平滑処理を実行する平滑処理実行ステップと、
を含むことを特徴とする請求項１に記載の画像処理方法。
【請求項５】
前記初期値設定ステップは、
初期値設定対象画素の近傍にある画像差分または画像比率設定済み画素に設定された画像差分または画像比率に基づいて、初期値設定対象画素の初期値を設定するステップであることを特徴とする請求項４に記載の画像処理方法。
【請求項６】
前記初期値設定ステップは、
初期値設定対象画素および、画像差分または画像比率設定済み画素の判別のために、マスク画像を適用するステップを含むことを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記補正画像生成ステップは、
前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成するステップであり、
画像差分を適用した処理においては、
前記特定領域における前記第２画像データに対して、前記推定値算出ステップにおいて算出した前記特定領域における画像差分の推定値を加算するステップとして実行し、
画像比率を適用した処理においては、
前記特定領域における前記第２画像データに対して、前記推定値算出ステップにおいて算出した前記特定領域における画像比率の推定値を乗算するステップとして実行することを特徴とする請求項１に記載の画像処理方法。
【請求項８】
前記第１画像データは、フラッシュ発光なし撮影画像とフラッシュ発光あり撮影画像とに基づいて画素値調整の施されたホワイトバランス調整画像Ｒであり、前記第２画像データは、フラッシュ発光画像Ｉ２であり、前記特定領域は、被写体の動きが検出された動きあり領域であり、
前記補正画像生成ステップは、
画像差分を適用した処理においては、
前記動きあり領域における前記フラッシュ発光画像Ｉ２に対して、前記推定値算出ステップにおいて算出した前記特定領域における画像差分の推定値を加算するステップとして実行し、
画像比率を適用した処理においては、
前記動きあり領域における前記フラッシュ発光画像Ｉ２に対して、前記推定値算出ステップにおいて算出した前記特定領域における画像比率の推定値を乗算するステップとして実行することを特徴とする請求項１に記載の画像処理方法。
【請求項９】
前記推定値算出ステップは、
画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定ステップと、
前記初期値設定ステップにおいて設定した初期値に対して、前記第２画像データに基づく重み設定のなされたフィルタを適用したフィルタリング処理に相当する画素値変換式に従った画素値変換処理を実行して前記特定領域の画像差分または画像比率の値を補正するフィルタリング処理ステップと、
を含むことを特徴とする請求項１に記載の画像処理方法。
【請求項１０】
前記初期値設定ステップは、
初期値設定対象画素の近傍にある画像差分または画像比率設定済み画素に設定された画像差分または画像比率に基づいて、初期値設定対象画素の初期値を設定するステップであることを特徴とする請求項９に記載の画像処理方法。
【請求項１１】
前記初期値設定ステップは、
初期値設定対象画素および、画像差分または画像比率設定済み画素の判別のために、マスク画像を適用するステップを含むことを特徴とする請求項１０に記載の画像処理方法。
【請求項１２】
前記第１画像データは、フラッシュ発光なし撮影画像とフラッシュ発光あり撮影画像とに基づいて画素値調整の施されたホワイトバランス調整画像Ｒであり、前記第２画像データは、フラッシュ発光あり撮影画像Ｉ２であり、前記特定領域は、被写体の動きが検出された動きあり領域であり、
前記フィルタリング処理ステップは、
前記フラッシュ発光あり撮影画像Ｉ２の画像データを構成する画素の画素値に応じて重みを設定した関数を含む変換式を適用した画素値変換処理を実行するステップであることを特徴とする請求項９に記載の画像処理方法。
【請求項１３】
前記フィルタリング処理ステップは、下記変換式、
【数１】
2005102116.tif 000016
ただし、ｄ（ｘ，ｙ，ｃｈ）、Ｉ２（ｘ，ｙ，ｃｈ）は、画素位置（ｘ，ｙ）の各チャンネル［ｃｈ］の画像差分または画像比率ｄに対応する値、ならびに、フラッシュ光あり撮影画像Ｉ２の画素値、ｄ'（ｘ，ｙ，ｃｈ）は、画素位置（ｘ，ｙ）におけるチャンネル［ｃｈ］の差分画像ｄの更新値、ｉ，ｊは、画素位置（ｘ，ｙ）の値ｄの更新値ｄ'を算出するために適用する参照画素位置であり、ｋを任意の自然数としたとき、ｘ−ｋ≦ｉ≦ｘ＋ｋ、ｙ−ｋ≦ｊ≦ｙ＋ｋ、ｗ（ｘ）は、前記フラッシュ発光あり撮影画像Ｉ２の画像データを構成する画素の画素値に応じた重みを設定する重み付け関数である、
上記変換式を適用した画素値変換処理を実行するステップであることを特徴とする請求項１２に記載の画像処理方法。
【請求項１４】
前記変換式における重み付け関数ｗ（ｘ）は、下記式、
【数２】
2005102116.tif 000017
によって示される関数であることを特徴とする請求項１３に記載の画像処理方法。
【請求項１５】
前記変換式における画素位置（ｘ，ｙ）の値ｄの更新値ｄ'を算出するために適用する参照画素位置ｉ，ｊは、ｋを任意の自然数としたとき、ｘ−ｋ≦ｉ≦ｘ＋ｋ、ｙ−ｋ≦ｊ≦ｙ＋ｋであり、ｋは、１，２、３のいずれかの値であることを特徴とする請求項１３に記載の画像処理方法。
【請求項１６】
画像処理方法であって、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ１Ｌをメモリに格納するステップと、
フラッシュ発光あり撮影画像に基づくフラッシュあり高解像度画像データＩ２Ｈ、およびフラッシュあり解像度画像データＩ２Ｌをメモリに格納するステップと、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ３Ｌをメモリに格納するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュなし低解像度画像データＩ３Ｌとに基づいて動きあり領域を検出するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュあり解像度画像データＩ２Ｌとに基づいてホワイトバランス調整処理および動き部分画素値補正処理を含む画素値調整画像Ｒを生成するステップと、
前記画素値調整画像Ｒと、フラッシュあり高解像度画像データＩ２Ｈと、フラッシュあり解像度画像データＩ２Ｌとの対応画素値に基づいて、高解像度最終補正画像ＲＨを生成する高解像度最終補正画像生成ステップと、
を有することを特徴とする画像処理方法。
【請求項１７】
前記高解像度最終補正画像生成ステップは、
フラッシュあり解像度画像データＩ２Ｌに対する前記画素値調整画像Ｒの対応画素の画素値変換情報を取得するステップと、
前記画素値変換情報に基づいて、フラッシュあり高解像度画像データＩ２Ｈの画素値変換を実行するステップと、
を有することを特徴とする請求項１６に記載の画像処理方法。
【請求項１８】
画像処理装置であって、
異なる画素値を持つ第１画像データと第２画像データの対応画素値に基づいて画像差分または画像比率を算出する手段と、
画像データの特定領域において、前記画像差分または画像比率に基づく推定値を算出する推定値算出手段と、
前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成する補正画像生成手段と、
を有することを特徴とする画像処理装置。
【請求項１９】
前記推定値算出手段は、
画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定部と、
前記初期値設定部において設定した初期値に対して平滑フィルタに基づく平滑処理を実行する平滑処理部と、
を含むことを特徴とする請求項１８に記載の画像処理装置。
【請求項２０】
前記推定値算出手段は、
画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定部と、
前記初期値設定部において設定した初期値に対して、前記第２画像データに基づく重み設定のなされたフィルタを適用したフィルタリング処理に相当する画素値変換式に従った画素値変換処理を実行して前記特定領域の画像差分または画像比率の値を補正するフィルタ処理部と、
を含むことを特徴とする請求項１８に記載の画像処理装置。
【請求項２１】
画像処理を実行するコンピュータ・プログラムであって、
異なる画素値を持つ第１画像データと第２画像データの対応画素値に基づいて画像差分または画像比率を算出するステップと、
画像データの特定領域において、前記画像差分または画像比率に基づく推定値を算出する推定値算出ステップと、
前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成する補正画像生成ステップと、
を有することを特徴とするコンピュータ・プログラム。
【請求項２２】
画像処理を実行するコンピュータ・プログラムであって、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ１Ｌをメモリに格納するステップと、
フラッシュ発光あり撮影画像に基づくフラッシュあり高解像度画像データＩ２Ｈ、およびフラッシュあり解像度画像データＩ２Ｌをメモリに格納するステップと、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ３Ｌをメモリに格納するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュなし低解像度画像データＩ３Ｌとに基づいて動きあり領域を検出するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュあり解像度画像データＩ２Ｌとに基づいてホワイトバランス調整処理および動き部分画素値補正処理を含む画素値調整画像Ｒを生成するステップと、
前記画素値調整画像Ｒと、フラッシュあり高解像度画像データＩ２Ｈと、フラッシュあり解像度画像データＩ２Ｌとの対応画素値に基づいて、高解像度最終補正画像ＲＨを生成する高解像度最終補正画像生成ステップと、
を有することを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、および画像処理装置、並びにコンピュータ・プログラムに関する。さらに詳細には、複数の画像を用いて外光とフラッシュ光の色温度の違いに起因する不自然さを解消する画像調整を可能とするとともに、画像調整に適用した複数の画像間での像ぶれが生じた場合においても、効率的な高速補正処理を可能とした画像処理方法、および画像処理装置、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００２】
フラッシュ（ｅｌｅｃｔｒｉｃａｌ  ｆｌａｓｈ，ｓｔｒｏｂｅ）は、カメラ撮影時に補助光源として用いられる。近年ＤＳＣ（Ｄｉｇｉｔａｌ  Ｓｔｉｌｌ  Ｃａｍｅｒａ）が急速に普及しているが、ＤＳＣにおいても、しばしば、フラッシュ撮影が行われる。フラッシュを使うことにより、フィルインライト（人物の顔に影がきつく出過ぎるときなどに影を弱める技法）、逆光補正（太陽を背にした人物を撮る場合などに顔が黒くつぶれるのを防ぐ技法）、キャッチライト（眼の瞳にきらりと光る「光の点」を入れ、瞳を美しく撮影する技法）、あるいは日中シンクロ（デイライトシンクロ、昼間や夕方に補助光線として使うテクニック）等、様々な写真撮影を行うことができる。一方で、フラッシュ撮影を行うと、色バランスが崩れたり、白飛びが生じたりする場合がある。本発明は、このようなフラッシュ撮影で生じる良くない現象を補正可能な適切な手段を提供することを１つの目的とする。
【０００３】
一般的に、デジタルカメラでは、白い被写体が白く撮影されるようにホワイトバランス（ＷＢ）調整が行われる。例えば自然光、照明光、フラッシュ（ストロボ）等の被写体に対して照射される光の色温度が高くブルー（Ｂ）の光が強い光成分環境で撮影する場合は、ブルーの光に対する感度を抑制し、レッド（Ｒ）の光に対する感度を相対的に高くし、逆に被写体に対して照射される光の色温度が低くレッド（Ｒ）の光が強い光成分環境で撮影する場合は、レッドの光に対する感度を抑制し、ブルー（Ｂ）の光に対する感度を相対的に高くするなどのホワイトバランス調整が行われる。
【０００４】
ホワイトバランス調整は、通常、撮影時に用いる光源に応じた調整パラメータを設定した調整処理が実行される。例えばフラッシュ撮影を行う場合は、適用するフラッシュ光の持つ光成分に応じたパラメータに従ってホワイトバランス調整が行われる。
【０００５】
しかし、フラッシュ光以外の外光がある状態で、フラッシュ撮影を行うと、フラッシュ光、外光の２種類の光が被写体に照射されてその反射光がカメラの撮像素子に到達し、撮影が行われることになる。このような撮影が行われる場合、ホワイトバランス調整をフラッシュ光に合わせて実施すると、フラッシュ光が多く当たっている被写体部分は自然な色に調整されるが、フラッシュ光が届かず外光のみの反射光として撮影される領域、例えば背景画像領域などは、フラッシュ光の光成分に合わせたパラメータ設定に従ったホワイトバランス調整を行ってしまうと、適切なホワイトバランス調整が実行されず不自然な色を持つ領域として出力されることになる。
【０００６】
逆に、背景部分にあわせたホワイトバランス調整、すなわち外光のみによって撮影されたものとして、撮影画像全体のホワイトバランス調整を実行するとフラッシュ光の多くあたった部分が不自然な色に調整されることになる。
【０００７】
このような問題に対処するための構成がいくつか提案されている。例えば特許文献１は、フラッシュを発光せず撮影した画像と、フラッシュを発光させた撮影画像を取得し、この撮影された２つの画像をブロックに分割し、各ブロック毎に輝度値の比較を行い、輝度値の比較結果に基づいて、フラッシュを発光して撮影した画像について各ブロック毎に異なるホワイトバランス調整を行う構成を示している。
【０００８】
ホワイトバランス調整は、各ブロック毎にフラッシュ光に合わせたホワイトバランス調整、またはフラッシュ光と外光の中間にあわせたホワイトバランス調整、または外光にあわせたホワイトバランス調整のいづれかを選択して実行する。しかし、このような構成では、処理をブロック単位で行うことが必要となり、ブロック歪みを生ずる問題や被写体が動いた場合などには正しい処理ができない問題などがある。
【０００９】
また、特許文献２には、以下の処理構成を開示している。すなわち、まず絞りを開放し露出時間を短くした上でフラッシュを発光させて撮影し、その後、本来意図した露光条件でフラッシュを発光せずに撮影を行う。ここで、前者を第１画像、後者を第２画像とする。さらに第１画像において所定のレベル以上の画素を主要被写体領域、それ以外を背景領域として登録する。その後、第１画像をフラッシュに合わせてホワイトバランス調整、第２画像を外光に合わせてホワイトバランス調整し、第１画像の主要被写体領域と第２画像の背景領域を組み合わせて最終的な記録画像とする構成である。
【００１０】
しかし、本構成では、外光とフラッシュ光の両方が当たった被写体のホワイトバランス調整は正しく行うことができない。
【００１１】
また、特許文献３は、上述の特許文献２の構成に加えて、像ぶれ検出手段を付加した構成を開示している。ぶれがあると判断された場合は、前述の第１画像をそのまま記録画像とし、第１画像と第２画像の組み合わせ処理を実行しない構成としている。従ってぶれが検出された場合は、フラッシュ光と外光の色温度の違いに起因する不自然さが解消されないことになる。
【００１２】
さらに、特許文献４は、フラッシュを発光させて撮影した画像と、フラッシュ発光なしで撮影した画像の対応画素の輝度値を割り算し、フラッシュ光の寄与率を求め、この寄与率に基づき、フラッシュを発光させて撮影した画像に対してホワイトバランス調整を行う構成を開示している。
【００１３】
しかし、本構成では、フラッシュ光、外光からの反射光が混合され撮像された画像に対し、フラッシュの寄与率に基づきフラッシュ光と外光用のホワイトバランスパラメータを、単純に補間し、最終的な画像を生成する。しかし、物理的な光の反射モデルを考慮した場合、フラッシュ光による成分と外光による成分は独立に処理されるべきであり、フラッシュ光、外光からの反射光が混合され撮像された画像を処理するだけでは、最適な結果画像を生成することは出来ない。
【特許文献１】特開平８−５１６３２号公報
【特許文献２】特開２０００−３０８０６８号公報
【特許文献３】特開２０００−３０７９４０号公報
【特許文献４】特開平８−３４０５４２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明は、上述の従来技術の問題点に鑑みてなされたものであり、外光とフラッシュ光が混在する環境下で撮影した画像の最適なホワイトバランス調整を可能とし、また像ぶれが検出された場合も破綻することなく効率的にかつ高速に最適なホワイトバランス調整等の画素値補正を行うことができる画像処理方法、および画像処理装置、並びにコンピュータ・プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の第１の側面は、
画像処理方法であって、
異なる画素値を持つ第１画像データと第２画像データの対応画素値に基づいて画像差分または画像比率を算出するステップと、
画像データの特定領域において、前記画像差分または画像比率に基づく推定値を算出する推定値算出ステップと、
前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成する補正画像生成ステップと、
を有することを特徴とする画像処理方法にある。
【００１６】
さらに、本発明の画像処理方法の一実施態様において、前記画像差分ｄ（ｘ，ｙ）は、前記第１画像データの各画素（ｘ，ｙ）の画素値ベクトルをＡ（ｘ，ｙ）、前記第２画像データの対応画素（ｘ，ｙ）の画素値ベクトルをＢ（ｘ，ｙ）としたとき、
ｄ（ｘ，ｙ）＝Ａ（ｘ，ｙ）−Ｂ（ｘ，ｙ）
として算出されるベクトルであり、
前記画像比率ｄ（ｘ，ｙ）は、
ｄ（ｘ，ｙ）＝Ａ（ｘ，ｙ）／（Ｂ（ｘ，ｙ）＋ｅ）
ただし、ｅは、固定値、として算出されるベクトルであることを特徴とする。
【００１７】
さらに、本発明の画像処理方法の一実施態様において、前記第１画像データは、フラッシュ発光なし撮影画像とフラッシュ発光あり撮影画像とに基づいて画素値調整の施されたホワイトバランス調整画像Ｒであり、前記第２画像データは、フラッシュ発光画像Ｉ２であり、前記特定領域は、被写体の動きが検出された動きあり領域であり、
前記画像差分ｄ（ｘ，ｙ）は、
前記ホワイトバランス調整画像Ｒの各画素（ｘ，ｙ）の画素値ベクトルをＲ（ｘ，ｙ）、前記フラッシュ発光画像Ｉ２の対応画素（ｘ，ｙ）の画素値ベクトルをＩ２（ｘ，ｙ）としたとき、
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）−Ｉ２（ｘ，ｙ）
として算出されるベクトルであり、
前記画像比率ｄ（ｘ，ｙ）は、
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）／（Ｉ２（ｘ，ｙ）＋ｅ）
ただし、ｅは、固定値、
として算出されるベクトルであり、
前記補正画像生成ステップは、前記推定値算出ステップにおいて算出した前記動きあり領域における画像差分または画像比率の推定値と、前記フラッシュ発光画像Ｉ２とに基づいて前記動きあり領域の補正画像を生成するステップであることを特徴とする。
【００１８】
さらに、本発明の画像処理方法の一実施態様において、前記推定値算出ステップは、画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定ステップと、前記初期値設定ステップにおいて設定した初期値に対して平滑フィルタに基づく平滑処理を実行する平滑処理実行ステップと、を含むことを特徴とする。
【００１９】
さらに、本発明の画像処理方法の一実施態様において、前記初期値設定ステップは、初期値設定対象画素の近傍にある画像差分または画像比率設定済み画素に設定された画像差分または画像比率に基づいて、初期値設定対象画素の初期値を設定するステップであることを特徴とする。
【００２０】
さらに、本発明の画像処理方法の一実施態様において、前記初期値設定ステップは、初期値設定対象画素および、画像差分または画像比率設定済み画素の判別のために、マスク画像を適用するステップを含むことを特徴とする。
【００２１】
さらに、本発明の画像処理方法の一実施態様において、前記補正画像生成ステップは、前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成するステップであり、画像差分を適用した処理においては、前記特定領域における前記第２画像データに対して、前記推定値算出ステップにおいて算出した前記特定領域における画像差分の推定値を加算するステップとして実行し、画像比率を適用した処理においては、前記特定領域における前記第２画像データに対して、前記推定値算出ステップにおいて算出した前記特定領域における画像比率の推定値を乗算するステップとして実行することを特徴とする。
【００２２】
さらに、本発明の画像処理方法の一実施態様において、前記第１画像データは、フラッシュ発光なし撮影画像とフラッシュ発光あり撮影画像とに基づいて画素値調整の施されたホワイトバランス調整画像Ｒであり、前記第２画像データは、フラッシュ発光画像Ｉ２であり、前記特定領域は、被写体の動きが検出された動きあり領域であり、前記補正画像生成ステップは、画像差分を適用した処理においては、前記動きあり領域における前記フラッシュ発光画像Ｉ２に対して、前記推定値算出ステップにおいて算出した前記特定領域における画像差分の推定値を加算するステップとして実行し、画像比率を適用した処理においては、前記動きあり領域における前記フラッシュ発光画像Ｉ２に対して、前記推定値算出ステップにおいて算出した前記特定領域における画像比率の推定値を乗算するステップとして実行することを特徴とする。
【００２３】
さらに、本発明の画像処理方法の一実施態様において、前記推定値算出ステップは、画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定ステップと、前記初期値設定ステップにおいて設定した初期値に対して、前記第２画像データに基づく重み設定のなされたフィルタを適用したフィルタリング処理に相当する画素値変換式に従った画素値変換処理を実行して前記特定領域の画像差分または画像比率の値を補正するフィルタリング処理ステップと、を含むことを特徴とする。
【００２４】
さらに、本発明の画像処理方法の一実施態様において、前記初期値設定ステップは、初期値設定対象画素の近傍にある画像差分または画像比率設定済み画素に設定された画像差分または画像比率に基づいて、初期値設定対象画素の初期値を設定するステップであることを特徴とする。
【００２５】
さらに、本発明の画像処理方法の一実施態様において、前記初期値設定ステップは、初期値設定対象画素および、画像差分または画像比率設定済み画素の判別のために、マスク画像を適用するステップを含むことを特徴とする。
【００２６】
さらに、本発明の画像処理方法の一実施態様において、前記第１画像データは、フラッシュ発光なし撮影画像とフラッシュ発光あり撮影画像とに基づいて画素値調整の施されたホワイトバランス調整画像Ｒであり、前記第２画像データは、フラッシュ発光あり撮影画像Ｉ２であり、前記特定領域は、被写体の動きが検出された動きあり領域であり、前記フィルタリング処理ステップは、前記フラッシュ発光あり撮影画像Ｉ２の画像データを構成する画素の画素値に応じて重みを設定した関数を含む変換式を適用した画素値変換処理を実行するステップであることを特徴とする。
【００２７】
さらに、本発明の画像処理方法の一実施態様において、前記フィルタリング処理ステップは、下記変換式、
【数３】
2005102116.tif 000003
ただし、ｄ（ｘ，ｙ，ｃｈ）、Ｉ２（ｘ，ｙ，ｃｈ）は、画素位置（ｘ，ｙ）の各チャンネル［ｃｈ］の画像差分または画像比率ｄに対応する値、ならびに、フラッシュ光あり撮影画像Ｉ２の画素値、ｄ'（ｘ，ｙ，ｃｈ）は、画素位置（ｘ，ｙ）におけるチャンネル［ｃｈ］の差分画像ｄの更新値、ｉ，ｊは、画素位置（ｘ，ｙ）の値ｄの更新値ｄ'を算出するために適用する参照画素位置であり、ｋを任意の自然数としたとき、ｘ−ｋ≦ｉ≦ｘ＋ｋ、ｙ−ｋ≦ｊ≦ｙ＋ｋ、ｗ（ｘ）は、前記フラッシュ発光あり撮影画像Ｉ２の画像データを構成する画素の画素値に応じた重みを設定する重み付け関数である、上記変換式を適用した画素値変換処理を実行するステップであることを特徴とする。
【００２８】
さらに、本発明の画像処理方法の一実施態様において、前記変換式における重み付け関数ｗ（ｘ）は、下記式、
【数４】
2005102116.tif 000004
によって示される関数であることを特徴とする。
【００２９】
さらに、本発明の画像処理方法の一実施態様において、前記変換式における画素位置（ｘ，ｙ）の値ｄの更新値ｄ'を算出するために適用する参照画素位置ｉ，ｊは、ｋを任意の自然数としたとき、ｘ−ｋ≦ｉ≦ｘ＋ｋ、ｙ−ｋ≦ｊ≦ｙ＋ｋであり、ｋは、１，２、３のいずれかの値であることを特徴とする。
【００３０】
さらに、本発明の第２の側面は、
画像処理方法であって、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ１Ｌをメモリに格納するステップと、
フラッシュ発光あり撮影画像に基づくフラッシュあり高解像度画像データＩ２Ｈ、およびフラッシュあり解像度画像データＩ２Ｌをメモリに格納するステップと、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ３Ｌをメモリに格納するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュなし低解像度画像データＩ３Ｌとに基づいて動きあり領域を検出するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュあり解像度画像データＩ２Ｌとに基づいてホワイトバランス調整処理および動き部分画素値補正処理を含む画素値調整画像Ｒを生成するステップと、
前記画素値調整画像Ｒと、フラッシュあり高解像度画像データＩ２Ｈと、フラッシュあり解像度画像データＩ２Ｌとの対応画素値に基づいて、高解像度最終補正画像ＲＨを生成する高解像度最終補正画像生成ステップと、
を有することを特徴とする画像処理方法にある。
【００３１】
さらに、本発明の画像処理方法の一実施態様において、前記高解像度最終補正画像生成ステップは、フラッシュあり解像度画像データＩ２Ｌに対する前記画素値調整画像Ｒの対応画素の画素値変換情報を取得するステップと、前記画素値変換情報に基づいて、フラッシュあり高解像度画像データＩ２Ｈの画素値変換を実行するステップと、を有することを特徴とする。
【００３２】
さらに、本発明の第３の側面は、
画像処理装置であって、
異なる画素値を持つ第１画像データと第２画像データの対応画素値に基づいて画像差分または画像比率を算出する手段と、
画像データの特定領域において、前記画像差分または画像比率に基づく推定値を算出する推定値算出手段と、
前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成する補正画像生成手段と、
を有することを特徴とする画像処理装置にある。
【００３３】
さらに、本発明の画像処理装置の一実施態様において、前記推定値算出手段は、画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定部と、前記初期値設定部において設定した初期値に対して平滑フィルタに基づく平滑処理を実行する平滑処理部とを含むことを特徴とする。
【００３４】
さらに、本発明の画像処理装置の一実施態様において、前記推定値算出手段は、画像データの特定領域において、該特定領域の隣接領域において決定された画像差分または画像比率に基づいて、特定領域の画像差分または画像比率の初期値を設定する初期値設定部と、前記初期値設定部において設定した初期値に対して、前記第２画像データに基づく重み設定のなされたフィルタを適用したフィルタリング処理に相当する画素値変換式に従った画素値変換処理を実行して前記特定領域の画像差分または画像比率の値を補正するフィルタ処理部とを含むことを特徴とする。
【００３５】
さらに、本発明の第４の側面は、
画像処理を実行するコンピュータ・プログラムであって、
異なる画素値を持つ第１画像データと第２画像データの対応画素値に基づいて画像差分または画像比率を算出するステップと、
画像データの特定領域において、前記画像差分または画像比率に基づく推定値を算出する推定値算出ステップと、
前記推定値算出ステップにおいて算出した前記特定領域における画像差分または画像比率の推定値と、前記第２画像データとに基づいて前記特定領域の補正画像を生成する補正画像生成ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００３６】
さらに、本発明の第５の側面は、
画像処理を実行するコンピュータ・プログラムであって、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ１Ｌをメモリに格納するステップと、
フラッシュ発光あり撮影画像に基づくフラッシュあり高解像度画像データＩ２Ｈ、およびフラッシュあり解像度画像データＩ２Ｌをメモリに格納するステップと、
フラッシュ発光なし撮影画像に基づくフラッシュなし低解像度画像データＩ３Ｌをメモリに格納するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュなし低解像度画像データＩ３Ｌとに基づいて動きあり領域を検出するステップと、
前記フラッシュなし低解像度画像データＩ１Ｌとフラッシュあり解像度画像データＩ２Ｌとに基づいてホワイトバランス調整処理および動き部分画素値補正処理を含む画素値調整画像Ｒを生成するステップと、
前記画素値調整画像Ｒと、フラッシュあり高解像度画像データＩ２Ｈと、フラッシュあり解像度画像データＩ２Ｌとの対応画素値に基づいて、高解像度最終補正画像ＲＨを生成する高解像度最終補正画像生成ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００３７】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００３８】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づく、より詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００３９】
本発明の構成によれば、例えば動きあり領域などの特定領域の画素値の補正処理を、動きなし領域の画素値、たとえばホワイトバランス調整のなされた画像データと、動きあり領域などの特定領域のフラッシュ発光あり画像データとに基づいて、効率的に実行可能であり、ホワイトバランス調整のなされた画像データと滑らかに接続された画像を生成することが可能となるとともに、動きあり領域におけるフラッシュ発光あり画像データのテクスチャ情報を反映した画像を生成することができる。
【００４０】
本発明の構成によれば、動きあり領域における画素値補正処理において、ホワイトバランス調整のなされた画像データと、フラッシュ発光あり画像データとの差分あるいは比率の初期値を動きあり領域に設定した後、平滑化フィルタによって平滑化し、動きあり領域における画像差分または画像比率の推定値を算出し、該推定値によって動きあり領域の画素値補正を実行する構成としたので、計算量の少ない高速処理が実現される。
【００４１】
さらに、本発明の構成によれば、動きあり部分画素領域における補正をフラッシュ光あり撮影画像Ｉ２の画素値を考慮して決定された係数を用いた画素値変換式に従ったフィルタリング処理を行なう構成としたので、フラッシュ光あり撮影画像Ｉ２のテクスチャを反映した画素値補正が行なわれることとなり、動きあり領域においてもエッジ部のぼやけ、色のにじみなどが解消され、フラッシュ光あり撮影画像Ｉ２のテクスチャを反映した画像を生成することが可能となる。
【００４２】
さらに、本発明によれば、低解像度画像を適用したホワイトバランス調整や動きあり部分の画素値補正を実行した後、補正画像データと低解像度画像データとの対応関係に基づいて、高解像度補正画像を生成することが可能となり、少ないメモリ量で、高速な処理が可能となり、最終的に高解像度の補正画像を取得することが可能となる。
【発明を実施するための最良の形態】
【００４３】
以下、図面を参照しながら、本発明の画像処理方法、および画像処理装置の複数の実施例について説明する。
【実施例１】
【００４４】
まず、外光とフラッシュ光が混在する環境下における撮影の最適なホワイトバランス調整処理を実行する画像処理方法、および画像処理装置の実施例１について説明する。
【００４５】
図１は、本実施例に係る撮像装置の構成を示すブロック図である。図１に示すように、本実施例に係る撮像装置は、レンズ１０１、絞り１０２、固体撮像素子１０３、相関２重サンプリング回路１０４、Ａ／Ｄコンバータ１０５、ＤＳＰブロック１０６、タイミングジェネレータ１０７、Ｄ／Ａコンバータ１０８、ビデオエンコーダ１０９、ビデオモニタ１１０、コーデック（ＣＯＤＥＣ）１１１、メモリ１１２、ＣＰＵ１１３、入力デバイス１１４、フラッシュ制御装置１１５、フラッシュ発光装置１１６から構成される。
【００４６】
ここで、入力デバイス１１４はカメラ本体にある録画ボタンなどの操作ボタン類をさす。また、ＤＳＰブロック１０６は信号処理用プロセッサと画像用ＲＡＭを持つブロックで、信号処理用プロセッサが画像用ＲＡＭに格納された画像データに対してあらかじめプログラムされた画像処理をおこなうことができるようになっている。以下ＤＳＰブロックを単にＤＳＰと呼ぶ。
【００４７】
本実施例の全体的な動作を以下に説明する。
光学系を通過して固体撮像素子１０３に到達した入射光は、まず撮像面上の各受光素子に到達し、受光素子での光電変換によって電気信号に変換され、相関２重サンプリング回路１０４によってノイズ除去され、Ａ／Ｄコンバータ１０５によってデジタ。信号に変換された後、デジタル信号処理部（ＤＳＰ）１０６中の画像メモリに一時格納される。なお、必要があれば、撮影の際に、フラッシュ制御装置１１５を介して、フラッシュ発光装置１１６を発光させることができる。
【００４８】
撮像中の状態においては、一定のフレームレートによる画像取り込みを維持するようにタイミングジェネレータ１０７が信号処理系を制御する。デジタル信号処理部（ＤＳＰ）１０６へも一定のレートで画素のストリームが送られ、そこで適切な画像処理がおこなわれた後、画像データはＤ／Ａコンバータ１０８もしくはコーデック（ＣＯＤＥＣ）１１１あるいはその両方に送られる。Ｄ／Ａコンバータ１０８はデジタル信号処理部（ＤＳＰ）１０６から送られる画像データをアナログ信号に変換し、それをビデオエンコーダ１０９がビデオ信号に変換し、そのビデオ信号をビデオモニタ１１０でモニタできるようになっていて、このビデオモニタ１１０は本実施例においてカメラのファインダの役割を担っている。また、コーデック（ＣＯＤＥＣ）１１１はデジタル信号処理部（ＤＳＰ）１０６から送られる画像データに対する符号化をおこない、符号化された画像データはメモリ１１２に記録される。ここで、メモリ１１２は半導体、磁気記録媒体、光磁気記録媒体、光記録媒体などを用いた記録装置などであってよい。
【００４９】
以上が本実施例のデジタルビデオカメラのシステム全体の説明であるが、本実施例中で本発明が実現されているのは、デジタル信号処理部（ＤＳＰ）１０６における画像処理である。以下その画像処理の部分を詳細に説明する。
【００５０】
前述のように、本実施例の画像処理部は実際には、デジタル信号処理部（ＤＳＰ）１０６で実現されている。したがって本実施例の構成においては、画像処理部の動作は、デジタル信号処理部（ＤＳＰ）１０６内部において、入力された画像信号のストリームに対して演算ユニットが所定のプログラムコードに記述された演算を順次実行するようにして実現されている。以降の説明では、そのプログラム中の各処理が実行される順序をフローチャートで説明する。しかしながら、本発明は本実施例で説明するようなプログラムという形態以外にも、以降で説明する機能と同等の処理を実現するハードウェア回路を実装して構成してもよい。
【００５１】
図２はデジタル信号処理部（ＤＳＰ）１０６内部において、入力された画像信号のストリームに対して実行するホワイトバランス（ＷＢ）調整処理の手順を説明するフローチャートである。
【００５２】
ステップＳ１０１では、事前に設定された絞り、シャッタースピードを用いて、フラッシュ発光なしで撮影し、ステップＳ１０２でこのフラッシュ発光なし撮影画像を画像データＩ１としてメモリに格納する。ステップＳ１０３では、ステップＳ１０１と同様に事前に設定された絞り、シャッタースピードを用いて、フラッシュ発光を行って撮影し、ステップＳ１０４でこのフラッシュ発光あり撮影画像を画像データＩ２としてメモリに格納する。
【００５３】
次にステップＳ１０５では、ステップＳ１０１と同様に事前に設定された絞り、シャッタースピードを用いて、フラッシュ発光なしで、再度撮影し、ステップＳ１０６でこのフラッシュ発光なし撮影画像を画像データＩ３としてメモリに格納する。
【００５４】
なお、ステップＳ１０１，Ｓ１０３，Ｓ１０５の撮影は、連続した撮影、例えば約１／１００秒間隔の連続撮影として実行される。それぞれの撮影ステップから得られた複数の画像を用いて、ホワイトバランス（ＷＢ）の調整処理を行い、１つのホワイトバランス（ＷＢ）の調整された画像データを生成する。
【００５５】
また、ステップＳ１０２、Ｓ１０４、Ｓ１０６においてメモリに格納される画像データＩ１、Ｉ２、Ｉ３は手ぶれ補正が行われた画像とする。すなわち、３枚の画像Ｉ１、Ｉ２、Ｉ３の撮影時に手ぶれがおきている場合には、それらをあらかじめ補正してからメモリに格納する。すなわち、撮影画像が手ぶれの発生画像である場合には、ステップＳ１０１とＳ１０２の間、ステップＳ１０３とＳ１０４の間、およびステップＳ１０５とＳ１０６の間において、手ぶれの補正を実行し補正後の画像をメモリに格納する。したがってメモリに格納される画像データＩ１、Ｉ２、Ｉ３は三脚にカメラを固定した状態で連続撮影したかのような画像となる。
【００５６】
なお手ぶれの補正処理は、従来から知られた処理が適用可能である。例えば、加速度センサを用いてずれを検出し、レンズをずらす方法、または目的の解像度より大きい解像度の画像を撮像素子を用いて撮影してずれが生じないように適切な部分を読み出す方法、さらにはセンサを用いず画像処理だけで手ぶれを補正する方法など、従来から広く用いられている方法が適用される。
【００５７】
次にステップＳ１０７において、ステップＳ１０１、Ｓ１０３、Ｓ１０５の３枚の画像の撮影の間に、被写体自体の動きに起因する像ぶれがあったか否かを検出する。この被写体自体の動きに起因する像ぶれがあったか否かの検出処理は、３枚の画像から２つの画像を比較して行われる。たとえば、画像Ｉ１と画像Ｉ３を用いて、動き部分を検出することができる。一例として、画像Ｉ１と画像Ｉ３の各画素に関して差分をとり、ある閾値以上である場合は、動きがあった部分として登録するという方法がある。被写体自体の動きに起因する像ぶれがなかったと判定した場合（ステップＳ１０８：Ｎｏ）は、ステップＳ１１２に進む。動きが検出された場合（ステップＳ１０８：Ｙｅｓ）は、ステップＳ１０９に進む。
【００５８】
ステップＳ１０９において、ステップＳ１０７で検出された動き部分に関して、適切なホワイトバランス（ＷＢ）調整を行うための補正処理が可能かどうか判定を行う。この判定処理はたとえば、ステップＳ１０７において動き部分として登録された画素数の画像全体の画素数に対する比率に基づいて行う方法が適用される。例えば、動き部分として登録された画素数の画像全体の画素数に対する比率［ｒａｔｉｏＡ］が、予め定めたある一定の閾値［Ｔｈｒｅｓｈｏｌｄ］以上である場合には補正が不可能と判定し、閾値未満である場合には補正可能と判定する。
【００５９】
ステップＳ１０９で、補正不可能であると判定された場合、ステップＳ１１３に進み、補正可能であると判定された場合は、ステップＳ１１０に進む。
【００６０】
ステップＳ１１３においては、フラッシュ発光ありの撮影画像データＩ２に対して、ホワイトバランス（ＷＢ）調整を行い、出力画像Ｒを生成し、処理を終了する。ホワイトバランス調整に使用するパラメータ値としては、外光成分にあわせて設定されたパラメータ、フラッシュ光成分にあわせて設定されたパラメータ、または、外光とフラッシュ光の中間成分に基づいて設定されるパラメータのいずれかであり、これらのパラメータを設定したホワイトバランス（ＷＢ）調整を実行する。なお、このホワイトバランス調整法は、従来から行われている方法であり、その詳細説明は省略する。なお、適用するパラメータは、３×３行列によって示されるパラメータであり、各画素の色を構成する色成分の変換に適用する行列である。３×３行列は、対角成分以外を０として設定した行列が適用される。
【００６１】
次に、ステップＳ１１０およびステップＳ１１２における複数画像データに基づくホワイトバランス（ＷＢ）調整処理について説明する。ステップＳ１１０およびステップＳ１１２における処理は同一の処理である。この処理の詳細について、図３を参照して説明する。
【００６２】
ステップＳ２０１おいて、フラッシュ光あり撮影画像データＩ２の成分とフラッシュ光なし撮影画像Ｉ１の画素の各色の成分の差をとり、差分画像Ｆ＝Ｉ２−Ｉ１を生成してメモリに格納する。フラッシュ光なしの撮影を行ったステップＳ１０１とフラッシュ光ありの撮影を行ったステップＳ１０３の間に、被写体が動かなかったとすれば、差分画像Ｆ＝Ｉ２−Ｉ１は、外光がまったく無い状態でフラッシュ光のみを照射しフラッシュ光のみが被写体に反射して、カメラの固体撮像素子に入射し撮像される画像と等価なものとなる。次にステップＳ２０２において、画像Ｆに対して、フラッシュ光の色温度にあわせたホワイトバランス（ＷＢ）調整を実行する。すなわち、差分画像データＦをフラッシュ光に合わせて設定したパラメータに基づいてホワイトバランス（ＷＢ）調整を実行する。さらにフラッシュ光が明るすぎるまたは暗すぎる場合に、画像の明るさが最適になるようにレベル調整し、補正画像Ｆ'を生成する。
【００６３】
次にステップＳ２０３において、フラッシュ光なし撮影画像データＩ１に対して、外光に合わせたホワイトバランス（ＷＢ）調整を実行する。すなわち、フラッシュ光なし撮影画像データＩ１を外光に合わせて設定したパラメータに基づいてホワイトバランス（ＷＢ）調整を実行し、補正画像Ｉ１'を生成する。
【００６４】
これは、従来から広く知られているホワイトバランス（ＷＢ）調整によって実行される。例えば、特開２００１−７８２０２に述べられている技術を適用可能である。特開２００１−７８２０２では、フラッシュ発光ありで撮影した画像Ｉ２とフラッシュなしで撮影した画像Ｉ１の差分画像Ｆと既知のフラッシュの分光特性から、物体色成分データおよび外光の分光分布を照明成分データとして求める。この照明成分データを用いて、画像Ｉ１のホワイトバランス（ＷＢ）調整を実行する。
【００６５】
次にステップＳ２０４において、差分画像Ｆ'と補正画像Ｉ１'を加算することによりホワイトバランス（ＷＢ）調整画像Ｒを生成する。以上のステップにより、動きが無い部分に関してホワイトバランス（ＷＢ）調整画像Ｒは、フラッシュ光による成分、外光による成分が独立にホワイトバランス（ＷＢ）調整されたものとなる。
【００６６】
図４は、図３のフローに従って実行する２つの画像に基づくホワイトバランス（ＷＢ）調整画像Ｒの生成原理を説明する図である。すなわち、フラッシュ光なし撮影画像データＩ１とフラッシュ光あり撮影画像データＩ２とに基づくホワイトバランス（ＷＢ）調整画像Ｒの生成原理を説明する図である。
【００６７】
図４（ａ）は、フラッシュ光あり撮影画像データＩ２のある座標位置（ｘ，ｙ）における画素をＲＧＢ空間上でベクトルＶ３として示した図である。ベクトルＶ３は、（Ｒ，Ｇ，Ｂ）の値として、（ｉｒ，ｉｇ，ｉｂ）を持つ。このベクトルＶ３は、外光成分とフラッシュ光成分両者を含む照射光に基づいて取得された画素値である。
【００６８】
従って、このベクトルＶ３は、外光成分のみの撮影によって取得された同じ座標（ｘ，ｙ）における画素値、すなわち、フラッシュ光なし撮影画像データＩ１の画素値に基づくベクトルＶ１と、外光のないフラッシュ光のみの仮想条件で撮影した場合に取得される画像の画素値成分からなるベクトルＶ２の加算値に相当する。
【００６９】
従って、ベクトルＶ３からベクトルＶ１の示す画素値を減算することで、ベクトルＶ２の画素値、すなわち、外光のないフラッシュ光のみの仮想条件で撮影した場合に取得される画像の画素値が取得される。この結果を示すのが、図４（ｂ）のベクトルＶ２である。ベクトルＶ２によって示されるフラッシュ光のみの照射条件の画素値をフラッシュ光成分に基づいて設定されたパラメータに従って、ホワイトバランス調整を実行して、補正画素値を求め、補正画素値からなるベクトルＶ２'が求められる。このベクトルＶ２'の示す画素値によって構成される画像が、図３のステップＳ２０２におけるホワイトバランス調整の結果として得られる補正画像Ｆ'に相当する。すなわち、図４（ａ），（ｂ）の処理は、図３のフローにおけるステップＳ２０１、２０２に相当する。
【００７０】
図４（ｃ）は、フラッシュ光なし撮影画像データＩ１の画素値に基づくベクトルＶ１に対応する画素値を外光成分に基づいて設定されたパラメータに従って、ホワイトバランスの調整を実行して、補正画素値を求め、補正画素値からなるベクトルＶ１'を求める処理であり、このベクトルＶ１'の示す画素値によって構成される画像が図３のステップＳ２０３におけるホワイトバランス調整の結果として得られる補正画像Ｉ１'に相当する。すなわち、図４（ｃ）の処理は、図３のフローにおけるステップＳ２０３に相当する。
【００７１】
図４（ｄ）は、図４（ｂ）に示される補正画像Ｆ'に相当するベクトルＶ２'の示す画素値と、図４（ｃ）に示される補正画像Ｉ１'に相当するベクトルＶ１'の示す画素値とを加算し、最終的なホワイトバランス調整画素値を持つホワイトバランス調整画像データＲを生成する処理を示している。すなわち、ある座標（ｘ，ｙ）におけるホワイトバランス調整画素値は図４（ｂ）に示される補正画像Ｆ'に相当するベクトルＶ２'の示す画素値と、図４（ｃ）に示される補正画像Ｉ１'に相当するベクトルＶ１'の示す画素値とを加算した結果得られる画素値である。すなわち、図４（ｄ）の処理は、図３のフローにおけるステップＳ２０４に相当する。
【００７２】
このように、本実施例におけるホワイトバランス調整処理は、外光成分とフラッシュ光成分の両者が含まれる画像について外光成分のみで撮影された画像とフラッシュ光成分のみで撮影された画像の２つの画像に分離し、外光成分のみで撮影された画像については外光成分に基づいて設定されたパラメータに従ってホワイトバランスの調整を実行し、フラッシュ光成分のみで撮影された画像についてはフラッシュ光成分に基づいて設定されたパラメータに従ってホワイトバランスの調整を実行し、再度これらの補正画素値を加算して最終的なホワイトバランス調整画像Ｒを求める構成である。このように、２つの光成分に対して独立にそれぞれの光成分に適合したパラメータでホワイトバランス調整を行うことになり、適正なホワイトバランス調整が実行される。すなわち、あたかも外光とフラッシュ光が同一色である状況の下で撮影されたような調整画像の生成が可能となる。
【００７３】
図２のフローに戻りステップの説明を続ける。ステップＳ１１２で上述した複数画像に基づくホワイトバランス調整処理が行われると、そのホワイトバランス調整画像Ｒが、最終的な出力画像として設定され、処理が終了する。
【００７４】
一方、ステップＳ１１０で上述した複数画像に基づくホワイトバランス調整処理が行われる場合は、被写体自体の動きに起因する像ぶれがあると判定され、その像ぶれについての補正が可能と判定された場合であり、ステップＳ１１０で生成したホワイトバランス調整画像Ｒ中、被写体自体の動きに起因する像ぶれの画像領域、すなわち動き部分領域については、ステップＳ１１１において画素値補正処理を実行する。すなわち、ステップＳ１０７で検出した動き部分の画素値に対して例外処理を行い、ホワイトバランス調整画像Ｒを修正する。修正処理は、例えば、動きが検出された部分に対応するフラッシュ発光あり撮影画像データＩ２の画素値を入力として、ホワイトバランス調整画像Ｒにおける動きが無かった部分の画素値を参照して、動きが検出された部分の画素値を決定し、最終的な画像を合成する方法がある。
【００７５】
この合成手法について説明する。画像にあらわれる物体の色は、光がその物体に反射し撮像素子に入射し撮像されたものである。たとえば、白色光源下で、ある物体が画像上で赤色である場合、その物体は、赤色に相当する周波数の可視光をよく反射し、それ以外の色に相当する周波数の光は吸収する特性を持っている。つまり、物体には、各周波数の光に関して固有の反射率を持っていると言える。いま、物体の各ＲＧＢ色成分に関する光の反射率を（ｏｒ，ｏｇ，ｏｂ）として、ある色温度の光を（ｌｒ，ｌｇ，ｌｂ）であらわす。光（ｌｒ，ｌｇ，ｌｂ）が物体（ｏｒ，ｏｇ，ｏｂ）に反射した光がカメラによって撮像される時、撮像された画像を構成する画素の値（ｉｒ，ｉｇ，ｉｂ）は、以下に示す式（式１）で表現することができる。
【００７６】
（ｉｒ，ｉｇ，ｉｂ）＝（ｋ＊ｌｒ＊ｏｒ，ｋ＊ｌｇ＊ｏｇ，ｋ＊ｌｂ＊ｏｂ）
・・・・・（式１）
【００７７】
上記式において、ｋは光の強さを表すスカラー値である。
いま、例えば外光とフラッシュ光のように２つの照射光として、光源１（ｌ１ｒ，ｌ１ｇ，ｌ１ｂ），と、光源２（ｌ２ｒ，ｌ２ｇ，ｌ２ｂ）があり、これらの２つの光が、ある物体（ｏｒ，ｏｇ，ｏｂ）に反射した光をカメラで撮像する場合、カメラの撮影画像の画素値（ｉｒ，ｉｇ，ｉｂ）は、以下に示す式（式２）で表現することができる。
（ｉｒ，ｉｇ，ｉｂ）＝（（ｋ１＊ｌ１ｒ＋ｋ２＊ｌ２ｒ）＊ｏｒ，（ｋ１＊ｌ１ｇ＋ｋ２＊ｌ２ｇ）＊ｏｇ，（ｋ１＊ｌ１ｂ＋ｋ２＊ｌ２ｂ）＊ｏｂ）
・・・・・（式２）
ここで、ｋ１は光源１の強さ、ｋ２は光源２の強さを表すスカラー値である。
【００７８】
いまｏｒ'＝ｋ１＊ｏｒ、ｏｇ'＝ｋ１＊ｏｇ、ｏｂ'＝ｋ１＊ｏｂとおくと上記式（式２）は、以下に示す式（式３）のように変換できる。
（ｉｒ，ｉｇ，ｉｂ）＝（（ｌ１ｒ＋ｋ'＊ｌ２ｒ）＊ｏｒ'，（ｌ１ｇ＋ｋ'＊ｌ２ｇ）＊ｏｇ'，（ｌ１ｂ＋ｋ'＊ｌ２ｂ）＊ｏｂ'）
・・・・・（式３）
【００７９】
ここでｋ'＝ｋ２／ｋ１であり、ｋ'は、２つの光源の光強度スカラー比である。すなわち、ｋ'は、注目する画素に撮像された被写体の部分における、光源１と光源２から照射される光の強度スカラー比である。
【００８０】
ここで外光とフラッシュ光の２種類の光が物体に反射されて撮像された画像Ｉ２上でのある画素値（ｉｒ，ｉｇ，ｉｂ）に関して考える。上記式（式３）における光源１を外光、光源２をフラッシュ光とする。外光の色（ｌ１ｒ，ｌ１ｇ，ｌ１ｂ）は、従来から行われているオートホワイトバランス調整で用いられる方法により計測することができる。またフラッシュ光の色（ｌ２ｒ，ｌ２ｇ，ｌ２ｂ）は、フラッシュ装置に固有のものであるので、既知でありあらかじめ設定することが可能である。さらにｋ'が既知である場合、画素（ｉｒ，ｉｇ，ｉｂ）は、外光成分（ｌ１ｒ＊ｏｒ'，ｌ１ｇ＊ｏｇ'，ｌ１ｂ＊ｏｂ'）、フラッシュ光成分（ｋ'＊ｌ２ｒ＊ｏｒ'，ｋ'＊ｌ２ｇ＊ｏｇ'，ｋ'＊ｌ２ｂ＊ｏｂ'）に分解することができる。外光成分、フラッシュ光成分それぞれを分離して独立にＷＢ処理し、足し合わせ画像を再構成すると、外光とフラッシュ光の色温度の違いによる画像の不自然さを解消することができる。
【００８１】
図２を参照して説明したフロー中の、ステップＳ１０７において検出された動き部分に対して、ステップＳ１１１の画素値補正を上述した処理に従って実行する。以下、具体的な処理例について説明する。
【００８２】
前述したように、ステップＳ１０７では、ステップＳ１０１、Ｓ１０３、Ｓ１０５の３枚の画像の撮影の間に、被写体自体の動きに起因する像ぶれがあったか否かを検出する。この被写体自体の動きに起因する像ぶれがあったか否かの検出処理は、３枚の画像から２つの画像を比較して行われる。
【００８３】
たとえば、図５に示すように、（ａ）フラッシュ光なし画像Ｉ１と、（ｂ）フラッシュ光あり画像Ｉ２と、（ｃ）フラッシュ光なし画像Ｉ３を連続撮影している間にボール２００が転がっている場合、（ａ）の画像Ｉ１と（ｃ）の画像Ｉ３の差分画像（ｄ）Ｉ３−Ｉ１を取得し、被写体自体の動きに起因する像ぶれの発生領域２１０を検出する。
【００８４】
図６、および図７を参照して、動き部分の画素値補正処理の具体的処理手順について説明する。図６は動き部分の画素値補正処理の具体的処理手順を示すフローチャートであり、図７は、補正対象となる動き部分を含む画素領域を示している。すなわち、図５における領域２１０の部分である。
【００８５】
図７に示すように、動いていると判定された画像領域中、動いていないと判定された画像領域の隣接画素（周囲８画素に含まれる位置の画素）を、動きあり部分の内周画素２５０と定義する。また、動いていると判定された画像領域中、内周画素２５０以外の画素を動きあり非内周画素２５２とする。
【００８６】
また、動いていないと判定された画像領域において、動いていると判定された画像領域の隣接位置の画素（周囲８画素に含まれる位置の画素）を、動きあり部分の外周画素２５１と定義する。また、動いていないと判定された部分において、動きあり部分の外周画素２５１以外の画素を動きなし非外周画素２５３とする。
【００８７】
動きあり部分の画素に関して、光源１（外光）の強さ（スカラー値）ｋ１と、光源２（フラッシュ光）の強さ（スカラー値）ｋ２の比率、すなわち、光強度スカラー比ｋ'＝ｋ２／ｋ１の値は未知である。ここで目標とする正しくホワイトバランス（ＷＢ）調整が行われ、かつ動き部分の補正がなされた画像は、動きあり部分と、動きなし部分の画素値が滑らかに変化する画素構成を持つと仮定する。
【００８８】
この仮定の下、動きあり部分外周画素２５１に関して光強度スカラー比ｋ'の値を求める。これらの動きあり部分外周画素２５１画素に関しては、前述の式（式３）における外光成分（ｌ１ｒ＊ｏｒ'，ｌ１ｇ＊ｏｇ'，ｌ１ｂ＊ｏｂ'）は、フラッシュなし撮影画像データＩ１における対応する画素の値と等しいので、光強度スカラー比ｋ'＝ｋ２／ｋ１の値は、フラッシュあり撮影画像データＩ２の画素値（ｉｒ，ｉｇ，ｉｂ）ならびに式（式３）に基づいて、求めることができる。この動きあり部分外周画素２５１についての、光源１（外光）の強さ（スカラー値）ｋ１と、光源２（フラッシュ光）の強さ（スカラー値）ｋ２の比率：ｋ'＝ｋ２／ｋ１の算出処理が図６のステップＳ３０１の処理である。
【００８９】
このステップＳ３０１の処理により、動きあり部分外周画素２５１に関しては、光強度スカラー比ｋ'が求まる。しかし、動きあり部分に含まれる画素に対応する光強度スカラー比ｋ'の値は不明である。これらの動きあり部分に含まれる画素に対応する光強度スカラー比ｋ'の値を、動きあり部分外周画素２５１に対応して算出したｋ'の値から補間する。補間方法の一例として挙げられるのが、放射基底関数（ＲＢＦ：Ｒａｄｉａｌ  Ｂａｓｉｓ  Ｆｕｎｃｔｉｏｎ）を適用した処理である。
【００９０】
放射基底関数（ＲＢＦ）を用いたデータの補間に関する参考文献として、たとえば、Ｊ．Ｃ．Ｃａｒｒ，ｅｔ ａｌ，"Ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ  ａｎｄ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ  ｏｆ  ３Ｄ  Ｏｂｊｅｃｔｓ  ｗｉｔｈ  Ｒａｄｉａｌ  Ｂａｓｉｓ  Ｆｕｎｃｔｉｏｎ，"  ＡＣＭ  ＳＩＧＧＲＡＰＨ  ２００１，  Ｌｏｓ  Ａｎｇｅｌｅｓ，  ＣＡ，  ｐｐ６７−７６，  １２−１７  Ａｕｇｕｓｔ  ２００１  が挙げられる。
【００９１】
Ｒａｄｉａｌ  Ｂａｓｉｓ  Ｆｕｎｃｔｉｏｎ（放射基底関数）とは，中心点から距離が離れるにつれて，値が単調に減少（または増加）し，その等高線が超球（２次元の場合，円または楕円）になる関数のことをいう。高さのわかっているサンプル地点を通過し、かつ、できるだけ滑らかになるような関数を構成することによって未知の地点の高さの値をも見積もるという問題を解決するためには、既知のサンプル地点を中心とするＲＢＦを重ね合わせればよい、ということが分かっている。
【００９２】
具体的には、サンプル点が２次元空間上にある場合には、サンプル点を、
【数５】
2005102116.tif 000005
とする。ｃｉｘ，ｃｉｙはそれぞれ、サンプル点ｉにおけるｘ座標値、ｙ座標値を表す）、それぞれの地点での高さを｛ｈｉ｝（１≦ｉ≦ｎ）としたとき、求めたい関数
【数６】
2005102116.tif 000006
は、ＲＢＦを用いて以下の式（式４）のようにあらわされる。
【数７】
2005102116.tif 000007
ここで、
【数８】
2005102116.tif 000008
である。
【００９３】
なお基底関数
【数９】
2005102116.tif 000009
の例としては、
【数１０】
2005102116.tif 000010
などがある。
【００９４】
しかし上記式（式４）のみでは｛ｄｉ｝（１≦ｉ≦ｎ），｛ｐｉ｝（０≦ｉ≦２）を特定することができない。そこで、以下の式（式５）を満たす｛ｄｉ｝（１≦ｉ≦ｎ），｛ｐｉ｝（０≦ｉ≦２）を求める。
【数１１】
2005102116.tif 000011
【００９５】
したがって、下式、
【数１２】
2005102116.tif 000012
ならびに式（式５）から（未知数の数ｎ＋３、式の数ｎ＋３）｛ｄｉ｝（１≦ｉ≦ｎ），｛ｐｉ｝（０≦ｉ≦２）を求めることができる。
【００９６】
動きあり部分外周画素２５１における光強度スカラー比ｋ'をサンプルとして、
【数１３】
2005102116.tif 000013
を構築すれば、任意の位置における光強度スカラー比ｋ'を求めることができる。
【００９７】
この処理が図６におけるステップＳ３０２のサンプル点の光強度スカラー比ｋ'（動きあり部分外周画素２５１におけるｋ'）に基づくＲＢＦ構築処理である。
【００９８】
このＲＢＦ構築処理により、動いていると判定された部分のフラッシュあり撮影画像データＩ２上での各画素に対応する光源１（外光）の強さ（スカラー値）ｋ１と、光源２（フラッシュ光）の強さ（スカラー値）ｋ２の比率、すなわち、動きあり部分に含まれる画素各々に対応する光強度スカラー比ｋ'：ｋ'＝ｋ２／ｋ１を推定する。推定された各画素対応の光強度スカラー比ｋ'を用いて、画像Ｉ２の動きあり領域部分を外光成分とフラッシュ成分に分解し、それぞれの光の色温度にあわせて個々にホワイトバランス（ＷＢ）調整処理を実行する。
【００９９】
即ち、動きあり部分の各画素位置において、光強度スカラー比ｋ'が求まるので、このｋ'と、フラッシュあり撮影画像データＩ２の各画素位置における画素値（ｉｒ，ｉｇ，ｉｂ）、および既知である光源１（外光）の光成分（ｌ１ｒ，ｌ１ｇ，ｌ１ｂ）と光源２（フラッシュ光）の光成分（ｌ２ｒ，ｌ２ｇ，ｌ２ｂ）を、上述の式（式３）に代入し、光源１（外光）にのみ基づく被写体の反射率、（ｏｒ'，ｏｇ'，ｏｂ'）が求まる。
【０１００】
さらに、外光成分のみが照射された場合の被写体の画素値：（ｌ１ｒ＊ｏｒ'，ｌ１ｇ＊ｏｇ'，ｌ１ｂ＊ｏｂ'）と、フラッシュ光成分のみが照射された場合の被写体の画素値：（ｋ'＊ｌ２ｒ＊ｏｒ'，ｋ'＊ｌ２ｇ＊ｏｇ'，ｋ'＊ｌ２ｂ＊ｏｂ'）と求め、それぞれに対して、先に図３、図４を参照して説明したそれぞれの光成分に応じた独立したパラメータの設定による２つのホワイトバランス調整を実行し、それらの調整データを再合成する処理により、最終的なホワイトバランス調整画素値を算出する。
【０１０１】
動きあり部分の画素値の補正の手順をまとめると以下のａ〜ｆ処理となる。
ａ．まず、動きあり部分に隣接する動きなし部分の画素に対応するデータとして、その画素に撮像された被写体の部分における、前記第１光源のみから照射される光と、前記第１光源なしで外光のみから照射される光の２種類の光源の光強度スカラー比を算出する。
ｂ．放射基底関数（ＲＢＦ：Ｒａｄｉａｌ  Ｂａｓｉｓ  Ｆｕｎｃｔｉｏｎ）を適用して、動きあり部分の各画素対応の光強度スカラー比を算出する。
ｃ．動きあり部分の各画素対応の光強度スカラー比に基づいて、第１光源のみの照射環境下での撮影画像に相当する画像における動きあり部分の各画素の画素値を第１画素値として算出する。
【０１０２】
ｄ．動きあり部分の各画素対応の光強度スカラー比に基づいて、第１光源を含まない外光照射環境での撮影画像に相当する画像における動きあり部分の各画素の画素値を第２画素値として算出する。
ｅ．第１画素値に基づいて画素値調整処理（ホワイトバランス調整）を実行し、第２画素値に基づいて画素値調整処理（ホワイトバランス調整）を実行する。
ｆ．生成した２つの調整画素値を加算する。
【０１０３】
このように動き部分に含まれる画素についてのホワイトバランス（ＷＢ）調整画素値を図２のステップＳ１１０において生成した画像データＲに上書きし、第１補正画像データＲ'を求める。すなわち、撮影画像に被写体の動きに起因する動き領域についての画素値のみが、ステップＳ１１１において再設定されて、ステップＳ１１０において生成したホワイトバランス調整画像Ｒに上書きを行い、第１補正画像データＲ'を求める。
【０１０４】
なお、先に、図３の処理フローにおいて説明したように、フラッシュ光のレベル補正（Ｓ２０２）を行った場合は、動き部分の画素値算出の際にも同等のレベル補正を行った後に、外光成分とフラッシュ光成分に基づくホワイトバランス調整画素値の足し合わせを行う。
【０１０５】
このようにして動き部分の画素値が再設定され、画像Ｒの動き部分領域に相当する画素を書き換える。この処理が、図６におけるステップＳ３０３の処理である。
【０１０６】
しかし、上述の動きあり領域において再設定した画素値を、ステップＳ１１０において生成済みのホワイトバランス調整画像Ｒに上書きして求めた第１補正画像Ｒ'において、元々の画像Ｒの動きなし部分の画素と、動きあり部分の再設定画素の境界が滑らかにつながらない場合がある。原因としては、外光の色を正しく測定できなかった場合や、フラッシュあり撮影画像Ｉ２で白抜けが起こっている場合などが考えられる。そこで、そのような場合に対応するために、境界部分を滑らかに設定する、さらなる色変換処理を実行する。
【０１０７】
具体的には、図６のステップＳ３０４〜３０６の処理を行う。ステップＳ３０４において、まず、第１補正画像Ｒ'の動きあり部分内周画素２５０のうちのある画素ａ２５４（図７参照）についての画素値と、画素ａ２５４の隣接画素（周囲８画素に含まれる位置の画素）のうち動きあり部分外周画素（図７における画素２５５）の第１補正画像Ｒ'における値の平均値とについての各色成分の比（αｒ，αｇ，αｂ）を求める。この比を画素ａ２５４に対応する色成分比データとして保存する。
【０１０８】
同様に、動きあり部分内周画素２５０のすべての位置の各画素に対応する各色成分の比（αｒ，αｇ，αｂ）を画素対応色成分比データとして算出し、各画素に対応する色成分比データとして保存する。
【０１０９】
次に、ステップＳ３０５において、動きあり部分内周画素２５０のすべてをサンプル点として用いて色成分比データに基づくＲＢＦを構築する。最後に、ステップＳ３０６において、動きあり部分の各画素に関して、構築した色成分比データに基づくＲＢＦに基づいて、動きあり部分の各画素に対応する色成分比データ（αｒ，αｇ，αｂ）を求め、第１補正画像Ｒ'において設定されている各画素の画素値に対応画素の色成分比データ（αｒ，αｇ，αｂ）を乗算することにより、新たな画素値を算出し、この画素値を動きあり部分の画素とした第２の色変換を実行する。この第２の色変換処理を実行して得られた第２補正画像Ｒ"を出力画像とする。この処理が図６のステップＳ３０６の処理である。
【０１１０】
なお、図６におけるステップＳ３０３までの処理を行って得られる第１補正画像Ｒ'において、動きあり部分画像と動きなし部分画像の境界が滑らかにつながっている場合には、ステップＳ３０４からステップＳ３０６の処理は省略して良い。
【０１１１】
以上の説明では、サンプル点で与えられた値をほかの点において補間する方法に関して、ＲＢＦを用いる方法を述べたが、これに限らず別の方法で補間してもよい。以上の処理が、図２のステップＳ１１１の具体的な処理例である。このように、連続撮影画像から、被写体自身の動きに基づく像ぶれが検出された場合には、図６に示すフローに従った処理が実行され、前述した処理によって生成される第２補正画像Ｒ"または第１補正画像Ｒ'が最終出力画像とされる。
【０１１２】
なお、予め被写体自身の動きがないことが分かっている場合は、図２のステップＳ１０７から１１１の処理は不要となる。また、ステップＳ１０８の判定も常にＮｏであるので、ステップＳ１０８の判定処理を行う必要はなく、従ってステップＳ１０８の判定のために使うデータを作成し格納するステップＳ１０５、１０６も不用である。
【０１１３】
このように、予め被写体自身の動きがないことが分かっている場合は、ステップＳ１０５で撮影するフラッシュなし撮影画像Ｉ３は不用な画像であり、この場合には、フラッシュなし撮影画像Ｉ１とフラッシュあり撮影画像Ｉ２の２枚の画像のみを撮影すればよい。
【０１１４】
なお、ここでは、被写体が暗い場合に発光する照明装置としてフラッシュという用語を用いて説明したが、このほかに、ストロボと呼ばれることもあり、フラッシュに限定されるわけではなく、一般的に被写体が暗い場合に発光する照明装置において本発明は適用される。
【０１１５】
以上、説明したように、本実施例においてはフラッシュと外光等、複数の異なる光照射の下に撮影される画像について、単一の照射光環境下での撮影画像を取得または生成し、それぞれの単一の照射光環境下の画像について、それぞれの照射光の色成分（色温度）に基づいて設定されるパラメータに従ったホワイトバランス調整を実行し、それらを合成することにより、フラッシュと外光との色温度の差を軽減させた適格なホワイトバランス調整処理を実現することができる。
【０１１６】
図８は、本実施例に従った処理を実行するデジタル信号処理部（ＤＳＰ）（図１のＤＳＰ１０６に相当）の機能構成を示すブロック図である。
【０１１７】
図２に示すフローチャートと対比しながら、図８に示すデジタル信号処理部（ＤＳＰ）における処理について説明する。
【０１１８】
図２のステップＳ１０１〜１０６において、撮影されたフラッシユなし画像Ｉ１、フラッシユあり画像Ｉ２、およびフラッシユなし画像Ｉ３は、それぞれフレームメモリ３０１，３０２，３０３に格納される。なお、画像格納用のフレームメモリとしてはデジタル信号処理部（ＤＳＰ）内に構成したメモリを適用してもバス接続されたメモリ（図１のメモリ１１２）を適用してもよい。
【０１１９】
ステップＳ１０７の動き検出処理は、動き検出部３０９において実行される。これは、先に図５を参照して説明したようにフラッシユなし画像Ｉ１と、フラッシユなし画像Ｉ３に基づく差分データによる検出処理として実行する。
【０１２０】
ステップＳ１１２の複数画像データに基づくホワイトバランス調整処理は、先に図３、図４を参照して説明した処理である。
【０１２１】
まず、フラッシユなし画像Ｉ１と、フラッシユあり画像Ｉ２に基づいて、差分画像算出部３０４において差分画像データＦ＝Ｉ２−Ｉ１を求める（図３，Ｓ２０１）。次に、差分画像データＦ＝Ｉ２−Ｉ１、すなわちフラッシユ光のみの照射条件で撮影した画像に相当する画像Ｆに対して、ホワイトバランス調整部３０７でフラッシュ光の成分に基づいて設定されるパラメータに従ったホワイトバランス調整処理を実行する（図３，Ｓ２０２）。さらに、外光成分推定部３０６で推定した外光成分の推定値に基づいて設定されるパラメータに従ったホワイトバランス調整処理をフラッシユなし画像Ｉ１に対してホワイトバランス調整部３０５で実行する（図３，Ｓ２０３）。
【０１２２】
さらに、これらの２つのホワイトバランス調整処理によって取得した２つの画像の画素値を画素値加算部３０８において加算する（図３，Ｓ２０４）。
【０１２３】
撮影画像に動き部分が含まれない場合は、動き部分補正画素値算出部３１０において処理を実行することなく、画素値加算部３０８において加算した画素値を持つ画像データがホワイトバランス調整画像として出力切り替え部３１２を介して出力される。出力先はデジタルアナログ変換を実行するＤ／Ａ変換器１０８（図１参照）や、符号化処理を実行するコーデック１１１などである。
【０１２４】
一方、動き検出部３０９においてフラッシユなし画像Ｉ１と、フラッシユなし画像Ｉ３に基づく差分データによる動き検出の結果、被写体自身の動き領域が検出された場合は、さらに、動き部分補正画素値算出部３１０において、先に図６、図７を参照して説明した動きあり部分の画素値の補正（変換）がなされ、動きあり部分が、補正画素値によって置き換えられた画素値データを持つ画像が出力切り替え部３１２を介して出力される。
【０１２５】
ホワイトバランス調整部３１１は、図２の処理フローにおけるステップＳ１１３の処理を実行する。すなわち、動き検出部３０９において動き領域が検出されたものの、動き領域の画像全体に占める割合が高いなど、補正不可能と判断された場合に、フラッシユあり画像Ｉ２を入力し、予め定めたパラメータに従ったホワイトバランス調整を実行し、これを出力切り替え部３１２を介して出力する。
【０１２６】
なお、図８に示す構成は、機能を説明するために各処理部を区別して示してあるが、実際の処理としては、上述した各処理フローに従った処理を実行するプログラムに従って、ＤＳＰ内のプロセッサによって実行可能である。
【０１２７】
上述したホワイトバランス調整処理では、図３、図４を参照して説明したように、外光成分、フラッシュ光成分各々についての単一照射光画像データを求め、これらの画像データについて、外光成分、フラッシュ光成分に基づいて設定されるパラメータに従ったホワイトバランス調整処理を実行する構成例を説明した。
【０１２８】
次に、フラッシュ光のみの照射光条件に相当する差分画像データＦ＝Ｉ２−Ｉ１に対して、外光成分に基づいて設定されるパラメータに従ったホワイトバランス調整処理を実行する構成例について説明する。
【０１２９】
図９に、先の実施例における図３のフローに相当する本実施例の複数画像データに基づくホワイトバランス調整処理フローを示す。
【０１３０】
ステップ４０１おいて、フラッシュ光あり撮影画像データＩ２の成分とフラッシュ光なし撮影画像Ｉ１の画素の各色の成分の差をとり、差分画像Ｆ＝Ｉ２−Ｉ１を生成してメモリに格納する。差分画像Ｆ＝Ｉ２−Ｉ１は、外光がまったく無い状態でフラッシュ光のみを照射しフラッシュ光のみが被写体に反射して、カメラの固体撮像素子に入射し撮像される画像と等価なものとなる。次にステップ４０２において、画像Ｆに対して、外光の色温度にあわせたホワイトバランス（ＷＢ）調整を実行し、補正画像Ｆ'を生成する。すなわち、差分画像データＦを外光の色温度に合わせて設定したパラメータに基づいてホワイトバランス（ＷＢ）調整を実行して、補正画像Ｆ'を生成する。
【０１３１】
この際、差分画像Ｆとフラッシュ光なし撮影画像Ｉ１の各画素を直接比較することにより、フラッシュ光が外光の色に合うようにホワイトバランス調整処理を行う。このＷＢ処理の具体的な例としては、差分画像Ｆの画素（ｒｆ，ｇｆ，ｂｆ）と同じ位置のフラッシュ光なし撮影画像Ｉ１の画素（ｒｉ，ｇｉ，ｂｉ）を用いて、差分画像Ｆの画素のＲ、Ｂの成分を、フラッシュ光なし撮影画像Ｉ１の画素のＧ信号のレベルに合わせて、以下の（式６）（式７）を用いた画素値変換を実行する。
ｒｆ'＝ｒｆ＊（ｇｉ／ｇｆ）  ・・・（式６）
ｂｆ'＝ｂｆ＊（ｇｉ／ｇｆ）  ・・・（式７）
【０１３２】
次に、ｒｆ'とｒｉ、ｂｆ'とｂｉを比較して次の値を得る。
ａｒ＝ｒｉ／ｒｆ'＝（ｒｉ＊ｇｆ）／（ｒｆ＊ｇｉ）
・・・（式８）
ａｂ＝ｂｉ／ｂｆ'＝（ｂｉ＊ｇｆ）／（ｂｆ＊ｇｉ）
・・・（式９）
【０１３３】
上記（式８）ならびに（式９）を用いて求めたａｒとａｂを全画素に関して平均することによりＷＢパラメータを求める。求めたパラメータを画像Ｆの各画素のＲ成分、Ｂ成分に掛け合わせることによりホワイトバランス調整が行われる。この処理により、画像Ｆは、あたかも外光と同じ色のフラッシュが発光されて撮影されたかのような画像に変換され画像Ｆ'として保存される。
【０１３４】
さらに、ステップ４０３において、差分画像Ｆ'とフラッシュ光なし撮影画像Ｉ１を合成し第１ホワイトバランス調整画像Ｒ１を生成する。第１ホワイトバランス調整画像Ｒ１は、外光とフラッシュ光の色温度が一致した画像となる。
【０１３５】
最後にステップ４０４において、第１ホワイトバランス調整画像Ｒ１に対してさらに、ホワイトバランス調整を行い、第２ホワイトバランス調整画像Ｒ２を生成する。
【０１３６】
ステップ４０４におけるＷＢのパラメータに関しては、ユーザーが設定した値を用いても良いし、公知のオートホワイトバランス技術を用いて、最終的な第２ホワイトバランス調整画像Ｒ２が自然な色合いになるように変換しても良い。
【０１３７】
この実施例に従った処理により、外光の成分をより尊重したホワイトバランス調整が可能になる。具体的には、外光が夕焼け当により赤みがかった、すなわちＲ成分の多い場合には、全体を赤みがかった色合いで調整するなど、外光に応じた調整が可能となる。
【０１３８】
図１０は、本実施例に従った処理を実行するデジタル信号処理部（ＤＳＰ）（図１のＤＳＰ１０６に相当）の機能構成を示すブロック図である。
【０１３９】
図９に示すフローチャートと対比しながら、図１０に示すデジタル信号処理部（ＤＳＰ）における処理について説明する。
【０１４０】
図２のステップＳ１０１〜Ｓ１０６において、撮影されたフラッシユなし画像Ｉ１、フラッシユあり画像Ｉ２、およびフラッシユなし画像Ｉ３は、それぞれフレームメモリ４０１，４０２，４０３に格納される。
【０１４１】
フラッシユなし画像Ｉ１と、フラッシユあり画像Ｉ２に基づいて、差分画像算出部４０４において差分画像データＦ＝Ｉ２−Ｉ１を求める（図９，Ｓ４０１）。次に、差分画像データＦ＝Ｉ２−Ｉ１、すなわちフラッシユ光のみの照射条件で撮影した画像に相当する画像Ｆに対して、ホワイトバランス調整部４０５で外光成分に基づいて設定されるパラメータに従ったホワイトバランス調整処理を実行する（図９，Ｓ４０２）。さらに、このホワイトバランス調整処理によって取得した補正画像Ｆ'とフラッシユなし画像Ｉ１との画素値を画素値加算部４０６において加算し、第１ホワイトバランス調整画像Ｒ１を生成する（図９，Ｓ４０３）。さらに、ホワイトバランス調整部４０７において、第１ホワイトバランス調整画像Ｒ１に対してホワイトバランス調整を行い、第２ホワイトバランス調整画像Ｒ２を生成する。
【０１４２】
撮影画像に動き部分が含まれない場合は、動き部分補正画素値算出部４０９において処理を実行することなく、第２ホワイトバランス調整画像Ｒ２をホワイトバランス調整画像として出力切り替え部４１１を介して出力する。出力先はデジタルアナログ変換を実行するＤ／Ａ変換器１０８（図１参照）や、符号化処理を実行するコーデック１１１などである。
【０１４３】
一方、動き検出部４０８においてフラッシユなし画像Ｉ１と、フラッシユなし画像Ｉ３に基づく差分データによる動き検出の結果、被写体自身の動き領域が検出された場合は、さらに、動き部分補正画素値算出部４０９において、先に図６、図７を参照して説明した動きあり部分の画素値の補正（変換）がなされ、動きあり部分が、補正画素値によって置き換えられた画素値データを持つ画像を出力切り替え部４１１を介して出力する。
【０１４４】
ホワイトバランス調整部４１０は、図２の処理フローにおけるステップＳ１１３の処理を実行する。すなわち、動き検出部４０８において動き領域が検出されたものの、動き領域の画像全体に占める割合が高いなど、補正不可能と判断された場合に、フラッシユあり画像Ｉ２を入力し、予め定めたパラメータに従ったホワイトバランス調整を実行し、これを出力切り替え部４１１を介して出力する。
【０１４５】
なお、図１０に示す構成は、機能を説明するために各処理部を区別して示してあるが、実際の処理としては、上述した各処理フローに従った処理を実行するプログラムに従って、ＤＳＰ内のプロセッサによって実行可能である。
【０１４６】
本実施例に従えば、外光の成分をより尊重したホワイトバランス調整が可能になる。
【実施例２】
【０１４７】
次に、本発明の実施例２として、上述したと同様、外光とフラッシュ光が混在する環境下における撮影の最適なホワイトバランス調整処理を実行する画像処理方法、および画像処理装置において、図２のフローにおけるステップＳ１１１の処理、すなわち、動き部分の画素値補正処理方法として実施例１の手法と異なる手法を採用した構成について説明する。本方法は、例えば高解像度画像の高速処理を可能とするものである。
【０１４８】
上述した実施例１においては、フラッシュ光と外光との色温度の差を解消することの出来る構成を説明した。その構成の概要は、まず、フラッシュを発光して撮影した画像と、フラッシュを発光しないで撮影した画像との差分画像から、フラッシュ光のみ成分を抽出し、その後、この差分画像とフラッシュを発光しないで撮影した画像に対して、独立に色変換を施し再合成することにより、外光とフラッシュ光との色温度の差を解消するものである。
【０１４９】
この構成によれば、複数枚の画像を連射する必要があるが、その間に被写体などの動きがあった場合にも対応することができる。すなわち、フラッシュ発光なし、あり、なしの順序で３枚の画像を連射し、２枚のフラッシュ発光なし画像の差分から、被写体の動き部分を検出し、動き部分に含まれる画素に関して、フラッシュ光反射成分の外光反射成分に対する比率を、動き部分以外の画素におけるデータから、放射基底関数を用いて、補間処理を行うものである。
【０１５０】
すなわち、実施例１では、図１に示すステップＳ１１１の処理、すなわち、ホワイトバランス調整画像Ｒにおける動き部分の画素値補正処理を図６に示す処理フローに従って実行した。
【０１５１】
しかし、上述した動き部分の補償方法は、必要なメモリサイズが大きくなり、計算コストが高くなる場合がある。特に補正対象となる画像の解像度が高ければ高いほど、必要なメモリサイズ、計算コストの増大を招くという問題がある。
【０１５２】
実施例２は、以上のような問題点を解決するものであり、フラッシュを発光して行われる撮影において、外光とフラッシュ光の色温度の違いに起因する不自然さを解消することが出来、さらに像ぶれが検出された場合においても、破綻することなく最適にかつ効率よく処理を行うことができ、対象画像の解像度が高い場合にも、効率よく高速に処理を行うことが可能な構成例である。
【０１５３】
実施例２の画像処理装置は、先に実施例１において図１を参照して説明した構成と同様の構成を有する。デジタル信号処理部（ＤＳＰ）１０６における処理に特徴を有する。以下、本実施例２に係る画像処理の詳細について説明する。
【０１５４】
画像処理は、ＤＳＰ１０６内部において、入力された画像信号のストリームに対して演算ユニットが所定のプログラムコードに記述された演算を順次実行するようにして実現される。以降の説明では、そのプログラム中の各処理が実行される順序をフローチャートで説明する。しかしながら、本発明は本実施例で説明するようなプログラムという形態以外にも、以降で説明する機能と同等の処理を実現するハードウェア回路を実装して構成してもよい。
【０１５５】
本実施例におけるホワイトバランス（ＷＢ）補正処理の手順の基本処理は、上述した実施例１において説明した図２に示すフローチャートに従って実行される。すなわち、フラッシュ発光なし、あり、なしの順序で３枚の画像を連続撮影し、これらの画像に基づいてホワイトバランス調整を行う。
【０１５６】
本実施例においては、図２に示すステップＳ１１１の動き部分の画素値補正処理をより効率的に高速化して実行可能としたものである。特に高解像度画像データの処理に際して、少ないメモリ容量を持つ装置であっても高速に適切な画素値補正処理が可能となる。
【０１５７】
図２に示すステップＳ１１０で上述した複数画像に基づくホワイトバランス調整処理が行われる場合は、被写体自体の動きに起因する像ぶれがあると判定され、その像ぶれについての補正が可能と判定された場合であり、ステップＳ１１０で生成したホワイトバランス調整画像Ｒ中、被写体自体の動きに起因する像ぶれの画像領域、すなわち動き部分領域については、ステップＳ１１１において画素値補正処理を実行する。すなわち、ステップＳ１０７で検出した動き部分の画素値に対して例外処理を行い、ホワイトバランス調整画像Ｒを修正する。修正処理は、例えば、動きが検出された部分に対応するフラッシュ発光あり撮影画像データＩ２の画素値を入力として、ホワイトバランス調整画像Ｒにおける動きが無かった部分の画素値を参照して、動きが検出された部分の画素値を決定し、最終的な画像を合成する。
【０１５８】
本実施例に従った画素値補正処理の詳細について、以下説明する。
【０１５９】
図１１に、図２のステップＳ１０７において実行される動き検出処理の結果として取得されるデータの一例を表す模式図を示す。
【０１６０】
図１１において、図２に示すフローのステップＳ１０７において動いていると判定された部分を動きあり部分画素領域５５０、動いていないと判定された部分を、動きなし部分画素領域５５１と呼ぶ。
【０１６１】
なお、先に図３を参照して説明したステップＳ２０４で得られた画像、すなわちホワイトバランス調整画像Ｒの動きなし部分画素領域５５１の構成画素は、図２に示すステップＳ１０３、Ｓ１０４において、フラッシュ光ありで撮影し、メモリに格納した画像Ｉ２に対してフラッシュ光と外光の色の違いが軽減されるように正しく色変換が施されたものであると言える。一方、ホワイトバランス調整画像Ｒの動きあり部分画素領域５５０の構成画素については、被写体の動きが画素値に影響を及ぼしているので、正しく色変換がなされていない可能性が高いと言える。
【０１６２】
そこで、動きあり部分画素領域５５０の画素に関しては、フラッシュ光あり撮影画像Ｉ２に直接色変換を施し、最終的なホワイトバランス調整画像Ｒを求める処理を行う。
【０１６３】
実施例１では、図１に示すステップＳ１１１の処理、すなわち、ホワイトバランス調整画像Ｒにおける動き部分の画素値補正処理を図６に示す処理フローに従って、放射基底関数を用いた補間処理として実行した。
【０１６４】
本実施例では、実施例１とは異なるシーケンスでホワイトバランス調整画像Ｒにおける動き部分の画素値補正処理を実行する。本実施例２に係る動き部分の画素値補正処理のシーケンスについて、図１２に示すフローチャートを参照して説明する。
【０１６５】
図１２は、図２に示すステップＳ１１１の処理、すなわち、ホワイトバランス調整画像Ｒにおける動き部分の画素値補正処理の詳細を示すフローチャートである。各ステップの処理について説明する。
【０１６６】
まずステップＳ５０１において、図２に示すステップＳ１１０、すなわち、図３の処理フローに従って生成したホワイトバランス調整画像Ｒと、図２に示すステップＳ１０３、Ｓ１０４において、フラッシュ光ありで撮影し、メモリに格納した画像Ｉ２を用いて、以下に示す式（式２１）に基づき、画像差分ｄを求める。
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）−Ｉ２（ｘ，ｙ）
・・・（式２１）
【０１６７】
ここで、ｄ（ｘ，ｙ），Ｒ（ｘ，ｙ），Ｉ２（ｘ，ｙ）はすべて、画素位置（ｘ，ｙ）における画像の色に対応したベクトルであり、上記式はベクトル計算として実行される。
【０１６８】
上記式（式２１）においては、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分ｄを求めているが、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の差分の変わりにホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の比率、すなわち下記式（式２２）のように、画像比率ｄを算出して適用してもよい。
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）／（Ｉ２（ｘ，ｙ）＋ｅ）
・・・（式２２）
【０１６９】
上記式（式２２）において、ｅは十分に小さな固定の値を各要素に設定したベクトル、例えばｆｌｏｏｒ  ｖａｌｕｅである。（式２２）の記号"／"は、ベクトルの各要素をそれぞれ除算し、その結果をベクトルの各要素とする演算である。ｅは、Ｉ２（ｘ，ｙ）の要素が０になった場合に、ｄ（ｘ，ｙ）を計算できなくなるのを防ぐ目的で使われる。
【０１７０】
いま、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の画像差分または画像比率ｄ（ｘ，ｙ）が画像全体に渡って正しく求まれば、フラッシュ光あり撮影画像Ｉ２を基準として、最終的なホワイトバランス調整画像Ｒを算出できる。すなわち、Ｒ（ｘ，ｙ）＝ｄ（ｘ，ｙ）＋Ｉ２（ｘ，ｙ）あるいは、Ｒ（ｘ，ｙ）＝（Ｉ２（ｘ，ｙ）＋ｅ）＊ｄ（ｘ，ｙ）として算出することができる。ここで、記号"＊"は、ベクトルの各要素を乗算し、結果をベクトルの各要素とする演算である。
【０１７１】
しかし、動きあり部分画素領域５５０に関しては、動き画像として現れている可能性があるので、上記式（式２１）または（式２２）によって算出される画像差分または画像比率ｄ（ｘ，ｙ）をそのまま適用すると、最適な色味を実現することができない。
【０１７２】
そこで、本実施例においては、動きあり部分画素領域５５０に関しての最終補正画素値、すなわち最終的なホワイトバランス調整画像Ｒを動きなし部分画素領域５５１の領域において求めた画像差分または画像比率ｄ（ｘ，ｙ）を用いて滑らかに補間することにより算出する。または画像比率ｄ（ｘ，ｙ）を用いた補間フィルタリング処理を使い滑らかに補間算出することにより算出する。補間フィルタリング処理には、以下に記載するような、例えば、画素領域５５０部分で実際に観測される画素値の遷移状況や領域５５０周辺の画素値に従い、領域５５０周辺から徐々に画素値を補間して行き、さらに低域透過フィルタリング処理を行う、というような方法によって、実現することができる。なお、本発明の補間フィルタリング処理は、これに限定されるものではない。
【０１７３】
本手法によれば、動きあり部分画素領域５５０においても、動きあり部分画素領域５５０のフラッシュ光あり撮影画像Ｉ２のテクスチャを保持しつつ、色味を、最終的なホワイトバランス調整画像Ｒと同じにしたような画像を生成することが出来る。
【０１７４】
図１３は、上述の（式２１）、すなわち、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分ｄの算出式を用いて、動きあり部分画素領域５５０に関しての最終補正画素値を求める補間処理を説明する図である。
【０１７５】
図１３においては、説明を分かりやすくするため、データが１次元上に並んでいるものとして、その処理を説明するが、実際は、２次元平面において処理が実行される。図１３（ａ）〜（ｃ）とも、横軸が画素位置を示し、縦軸が画素値（輝度またはＲ，Ｇ，Ｂ値）を示している。
【０１７６】
図１３（ａ）は、動きなし部分画素領域５５１および、動きあり部分画素領域５５０におけるホワイトバランス調整画像Ｒ５６０と、フラッシュ光あり撮影画像Ｉ２５６１の画素値推移を示している。
【０１７７】
図１３（ｂ）は、動きなし部分画素領域５５１において、動きあり部分画素領域５５０に近接する部分の画像差分ｄの値５６２を示している。すなわち、上述の（式２１）、すなわち、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分ｄの値５６２を示している。
【０１７８】
さらに、図１３（ｂ）に示す動きなし部分画素領域５５１に示す点線は、画像差分ｄの値５６２を滑らかに補間することにより得られる動きあり部分画素領域５５０における画像差分ｄの推測値５６３を示している。この画像差分ｄの推測値５６３の算出処理手法については後述する。
【０１７９】
さらに図１３（ｃ）は、図１３（ａ）に示す動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２５６１の値に対して、図１３（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ５６３を加算した結果を、動きあり部分画素領域５５０における最終的なホワイトバランス調整画像Ｒ５６４として点線で示した図である。
【０１８０】
この図１３（ｃ）の動きあり部分画素領域５５０に点線で示すホワイトバランス調整画像Ｒ５６４と、動きなし部分画素領域５５１におけるホワイトバランス調整画像Ｒ５６０とが最終的なホワイトバランス調整画像Ｒとして出力される。最終出力画像は、図１３（ｃ）に示す動きあり部分画素領域５５０に点線で示すホワイトバランス調整画像Ｒ５６４と動きなし部分画素領域５５１におけるホワイトバランス調整画像Ｒ５６０と滑らかに接続された画像となる。この出力画像は、動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２５６１のテクスチャを保持したものとなる。
【０１８１】
なお、ｄ（ｘ，ｙ）として、上述の式（式２１）による画像差分ｄではなく、上述の式（式２２）を用いた画像比率ｄを適用した場合も、上述の方法と同様の補正方法が実行可能である。すなわち、図１３（ｂ）に示す画像差分ｄの代わりに画像比率ｄを用い、図１３（ｂ）に示す動きなし部分画素領域５５１に示す点線と同様、画像比率ｄの値を、動きあり部分画素領域５５０において滑らかに補間することにより動きあり部分画素領域５５０における画像比率ｄの推測値を算出し、そののち、画像比率ｄを、動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２５６１の画素に掛け合わせることにより、動きあり部分画素領域５５０のホワイトバランス調整画像Ｒを算出することが出来る。
【０１８２】
次に、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分または画像比率ｄを適用した補間方法の詳細について述べる。
【０１８３】
図１２に示すフローにおけるステップＳ５０１の実行の後、ステップＳ５０２において、補間の前処理として、動きあり部分画素領域５５０の各画素における画像差分または画像比率ｄ（ｘ，ｙ）の初期値を求める。なお、以下の説明では、画像差分ｄ（ｘ，ｙ）を求める方法について説明するが、画像比率ｄ（ｘ，ｙ）を求める場合も同様の手法が適用される。
【０１８４】
最初に、各画素２値のマスク画像Ｍを用意し、動きなし部分画素領域５５１の画素（ｘ，ｙ）については、Ｍ（ｘ，ｙ）＝１とし、動きあり部分画素領域５５０についてはＭ（ｘ，ｙ）＝０とする。
【０１８５】
画像の各画素を調べ、いまＭ（ｘ，ｙ）＝０の画素、すなわち動きあり部分画素領域５５０の画素のうち、Ｍ（ｘ，ｙ）＝１である画素、すなわち、動きなし部分画素領域５５１に隣接する（８近傍または４近傍）画素に注目する。
【０１８６】
そして、注目した画素に隣接したＭ（ｘ，ｙ）＝１である画素の画像差分ｄ（ｘ，ｙ）の平均を算出する。この平均値を、注目する画素の位置（ｘ，ｙ）における画像差分ｄ（ｘ，ｙ）の初期値として設定する。
【０１８７】
具体的処理について、図１４を参照して説明する。例えば図１４に示すような動きあり部分画素領域５５０と動きなし部分画素領域５５１を持つ画像の場合、動きあり部分画素領域５５０中、動きなし部分画素領域５５１に隣接する画素５８１の画像差分ｄ（ｘ，ｙ）の初期値は、画素５８１に隣接する動きなし部分画素領域５５１の画素５８２，５８３，５８４の平均値として設定される。
【０１８８】
動きあり部分画素領域５５０に含まれる画素中、動きなし部分画素領域５５１に隣接する画素についての初期値が、同様の手法で決定される。次に、初期値が新たに設定された画素に関してマスク画像Ｍ（ｘ，ｙ）の値を１に変更する。その後再び、Ｍ（ｘ，ｙ）＝０の画素、すなわち動きあり部分画素領域５５０に含まれる画素中、Ｍ（ｘ，ｙ）＝１である画素に隣接する（８近傍または４近傍）すべての画素の初期値を設定した後、新たに初期値が設定された画素に関してＭ（ｘ，ｙ）＝１とする。すなわち、図１４に示す動きあり部分画素領域５５０の周辺部から中央部に向けて、順に動きあり部分画素領域５５０の画像差分ｄ（ｘ，ｙ）の初期値を決定していく。この処理を、すべての画素がＭ（ｘ，ｙ）＝１になるまで、繰り返し行う。
【０１８９】
この処理により、動きあり部分画素領域５５０に含まれるすべての画素の画像差分ｄ（ｘ，ｙ）の初期値が決定する。この処理が、図１２に示すフローにおけるステップＳ５０２の処理である。
【０１９０】
上述の処理により、動きあり部分画素領域５５０における画像差分ｄ（ｘ，ｙ）の初期値が求まった後、図１２に示すフローにおけるステップＳ５０３の処理を実行する。
【０１９１】
ステップＳ５０３では、画像差分ｄの中で動きあり部分画素領域５５０の画素のみに対して、平滑化フィルタを施す。平滑化フィルタとしては、ｎ×ｎの正方形の近傍に含まれる画素値を平均する移動平均フィルタなどを用いればよい。この平滑化処理により、動きなし部分画素領域５５１の画像差分ｄの値は固定されたまま、動きあり部分画素領域５５０の画像差分ｄの値のみが滑らかにつながるような効果を得ることが出来る。
【０１９２】
なお、このステップＳ５０３で実行する平滑化処理において、平滑化フィルタによって、各画素において画像差分ｄ（ｘ，ｙ）の各色成分がどのように変化したかチェックし、画像差分ｄ（ｘ，ｙ）の各色成分の変化の最大値（画素値変化最大値）をメモリに保存する。
【０１９３】
次にステップＳ５０４において、ステップＳ５０２の平滑化処理において保存した画像差分ｄ（ｘ，ｙ）の各色成分の変化の最大値（画素値変化最大値）が、あらかじめ定めた閾値より大きいかどうかを判定し、小さかった場合はステップＳ５０６に進み、平滑化処理を完了する。
【０１９４】
テップＳ５０２の平滑化処理において保存した画像差分ｄ（ｘ，ｙ）の各色成分の変化の最大値（画素値変化最大値）が、あらかじめ定めた閾値より大きい場合は、まだ、動きあり部分画素領域５５０の画像差分ｄが滑らかに補間されていないと判断し、ステップＳ５０５に進む。
【０１９５】
ステップＳ５０５では、これまで、平滑化フィルタを画像差分ｄの動きあり部分画素領域５５０の画素に施した回数が、あらかじめ定めた閾値より大きいかどうかを判定し、大きかった場合は、ステップＳ５０６に進む。小さかった場合は、ステップ５０３に戻り、再び、平滑化フィルタを施し、動きあり部分画素領域５５０の平滑化処理を再度、実行する。
【０１９６】
なお、平滑化フィルタを画像差分ｄの動きあり部分画素領域５５０の画素に施した回数が、あらかじめ定めた閾値より大きい場合は、繰り返し実行しても画像差分ｄの変化が得られないため、所定の平滑処理の最大実行回数を予め閾値として定め、この閾値に達した場合は、その時点で平滑化処理は終了させて、次のステップに進む。
【０１９７】
ステップＳ５０６では、上述の平滑化処理において求めた動きあり部分画素領域５５０における画像差分ｄを、推定された画像差分ｄ５６３として決定する。すなわち図１３（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ５６３として決定する。
【０１９８】
次に、ステップＳ５０７においては、上述の処理により算出された画像差分ｄとフラッシュあり撮影画像Ｉ２を用いて、動きあり部分画素領域５５０の最終的なホワイトバランス調整画像Ｒを生成する。
【０１９９】
すなわち、図１３に示す（ｃ）の動きあり部分画素領域５５０の最終的なホワイトバランス調整画像Ｒを生成する。図１３（ａ）に示す動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２５６１の値に対して、図１３（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ５６３を加算した結果を、動きあり部分画素領域５５０における最終的なホワイトバランス調整画像Ｒ５６４として設定する。
【０２００】
上述した処理例は、前述した式（式２１）に従って求めたホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分ｄを用いた例であるが、前述した式（式２２）に従って求めたホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像比率ｄを用いた場合は、ステップＳ５０７では、動きあり画素領域５５０における画像比率ｄとフラッシュ光あり撮影画像Ｉ２の各画素の要素同士を乗算し、最終的なホワイトバランス調整画像Ｒを生成する。
【０２０１】
上述した処理によって、最終的な出力画像Ｒを生成することが出来る。
【０２０２】
図１５を参照して、本実施例における動き部分補正画素値算出部の構成について説明する。
【０２０３】
本実施例における動き部分補正画素値算出部は、先の実施例１において説明した図８における動き部分補正画素値算出部３１０、あるいは、図１０における動き部分補正画素値算出部４０９に対応して設定される。
【０２０４】
図１５の構成について説明する。動き部分補正画素値算出部７１０は、画像差分（画像比率）算出部７１１、動きあり画素領域画像差分（画像比率）ｄ初期値算出部７１２、平滑化処理部７１３、および動き部分最終補正画素値算出部７１４を有する。
【０２０５】
画像差分（画像比率）算出部７１１は、動きなし部分画素領域ホワイトバランス調整画像Ｒ７０１と、フラッシュ光あり撮影画像Ｉ２の各画像データを入力し、前述の式（式２１）または、式（式２２）に従って、動きなし部分画素領域における画像差分ｄまたは、画像比率ｄを算出する。これは、図１３（ａ）に示すｄに相当する。
【０２０６】
動きあり画素領域画像差分（画像比率）ｄ初期値算出部７１２は、動きあり画素領域における画像差分（画像比率）ｄの初期値を設定する。この処理は、先に図１４を参照して説明したように、まず、動きあり画素領域における動きなし画素領域に隣接する部分において、動きなし画素領域の隣接画素の画像差分（画像比率）ｄの平均値を初期値として設定し、順に動きあり画素領域の内側にむかって画像差分（画像比率）ｄの初期値を決定する処理を実行する。
【０２０７】
平滑化処理部７１３は、動きあり画素領域画像差分（画像比率）ｄ初期値算出部７１２において設定された動きあり画素領域画像差分（画像比率）ｄの初期値に基づいて、例えば平滑フィルタ等を適用した平滑化処理を実行し、動きあり画素領域における画像差分（画像比率）の推定値ｄを決定する。すなわち図１３（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ５６３として決定する。
【０２０８】
動き部分最終補正画素値算出部７１４は、平滑化処理部７１３における平滑化された画像差分（画像比率）の推定値ｄと、フラッシュ光あり撮影画像Ｉ２を入力し、動きあり部分画素領域５５０の最終的なホワイトバランス調整画像Ｒを生成する。すなわち、図１３（ｃ）の動きあり部分画素領域５５０の最終的なホワイトバランス調整画像Ｒを生成する。
【０２０９】
図１３（ａ）に示す動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２５６１の値に対して、図１３（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ５６３を加算した結果を、動きあり部分画素領域５５０における最終的なホワイトバランス調整画像Ｒ５６４として設定し出力する。
【０２１０】
式（式２２）に従って求めたホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像比率ｄを用いた場合は、ステップＳ５０７では、動きあり画素領域５５０における画像比率ｄとフラッシュ光あり撮影画像Ｉ２の各画素の要素同士を乗算し、最終的なホワイトバランス調整画像Ｒを生成して出力する。
【０２１１】
上述したように、本実施例の画素値補正処理によれば、平滑化フィルタを適用した簡単な処理により、動きあり部分画素領域の適切な色変換を行うことが出来る。
【０２１２】
なお、本実施例では、ホワイトバランス調整処理として実行する例について説明したが、ここで説明した手法は、ホワイトバランス調整処理のみならず一般的なデータ処理の問題を解くのに用いることが出来る。
【０２１３】
すなわち、図１３に示すように、あるデータがある領域（図１３の領域５５１）において、確定（図１３中のデータ５６０）しており、それ以外の領域（図１３の５５０）において、データを確定させたい場合について、本発明の処理が有効である。
【０２１４】
図１３に示す領域５５０で示される領域と、それに隣接するデータ領域５５１において、参照データ５６１が与えられているとする。このとき、参照データ５６１の特徴（画像で言えばテクスチャ）と同じ特徴を有する補間データ（図１３の補間データ５６４）を作成できる。
【０２１５】
このデータ処理は上述した実施例における画像テータのホワイトバランス調整処理のみならず、一般的なデータ処理においても適用可能である。即ち、本発明は、ホワイトバランス調整の問題に限定されるものではない。
【実施例３】
【０２１６】
次に、本発明の実施例３として、上述したと同様、外光とフラッシュ光が混在する環境下における撮影の最適なホワイトバランス調整処理を実行する画像処理方法、および画像処理装置において、図２のフローにおけるステップＳ１１１の処理、すなわち、動き部分の画素値補正処理方法として実施例１および実施例２の手法と異なる手法を採用した構成について説明する。
【０２１７】
実施例１では、２枚のフラッシュ発光なし画像の差分から、被写体の動き部分を検出し、動き部分に含まれる画素に関して、フラッシュ光反射成分の外光反射成分に対する比率を、動き部分以外の画素におけるデータから、放射基底関数を用いて、補間処理を行う構成について説明した。また実施例２では、平滑化フィルタを用いて簡易化した処理により、動き部分の画素値補正を行なう構成を説明した。
【０２１８】
本実施例３は、フラッシュ光あり撮影画像Ｉ２の画像データに応じて動的に重みを決定したフィルタを設定し、設定したフィルタ用いて動きあり画素の画素値補正を行なう構成例である。
【０２１９】
実施例３の画像処理装置は、先に図１を参照して説明した構成と同様の構成を有し、実施例３におけるフラッシュ光あり撮影画像Ｉ２の画像データに応じたフィルタの設定処理
およびフィルタを適用した画素値補正処理は、デジタル信号処理部（ＤＳＰ）１０６において実行される。以下、本実施例３に係る画像処理の詳細について説明する。
【０２２０】
画像処理は、ＤＳＰ１０６内部において、入力された画像信号のストリームに対して演算ユニットが所定のプログラムコードに記述された演算を順次実行するようにして実現される。以降の説明では、そのプログラム中の各処理が実行される順序をフローチャートで説明する。しかしながら、本発明は本実施例で説明するようなプログラムという形態以外にも、以降で説明する機能と同等の処理を実現するハードウェア回路を実装して構成してもよい。
【０２２１】
本実施例におけるホワイトバランス（ＷＢ）補正処理の手順の基本的なシーケンスは、上述した実施例１、実施例２と同様、図２に示すフローチャートに従った処理である。すなわち、フラッシュ発光なし、あり、なしの順序で３枚の画像を連続撮影し、これらの画像に基づいてホワイトバランス調整を行う。
【０２２２】
本実施例においては、図２に示すステップＳ１１１の動き部分の画素値補正処理を効率的にかつ高精度に実行可能としたものである。図２に示すステップＳ１１０で上述した複数画像に基づくホワイトバランス調整処理が行われる場合は、被写体自体の動きに起因する像ぶれがあると判定され、その像ぶれについての補正が可能と判定された場合であり、ステップＳ１１０で生成したホワイトバランス調整画像Ｒ中、被写体自体の動きに起因する像ぶれの画像領域、すなわち動き部分領域については、ステップＳ１１１において画素値補正処理を実行する。すなわち、ステップＳ１０７で検出した動き部分の画素値に対して例外処理を行い、ホワイトバランス調整画像Ｒを修正する。修正処理は、例えば、動きが検出された部分に対応するフラッシュ発光あり撮影画像データＩ２の画素値を入力として、ホワイトバランス調整画像Ｒにおける動きが無かった部分の画素値を参照して、動きが検出された部分の画素値を決定し、最終的な画像を合成する。
【０２２３】
本実施例に従った画素値補正処理の詳細について、以下説明する。
【０２２４】
先の実施例においても説明したように、図２のステップＳ１０７において実行される動き検出処理の結果として取得されるデータは、図１６に示す模式図に相当するデータとなる。
【０２２５】
図１６において、図２に示すフローのステップＳ１０７において動いていると判定された部分が動きあり部分画素領域５５０、動いていないと判定された部分が動きなし部分画素領域５５１である。
【０２２６】
なお、先に図３を参照して説明したステップＳ２０４で得られた画像、すなわちホワイトバランス調整画像Ｒの動きなし部分画素領域５５１の構成画素は、図２に示すステップＳ１０３、Ｓ１０４において、フラッシュ光ありで撮影し、メモリに格納した画像Ｉ２に対してフラッシュ光と外光の色の違いが軽減されるように正しく色変換が施されたものであると言える。一方、ホワイトバランス調整画像Ｒの動きあり部分画素領域５５０の構成画素については、被写体の動きが画素値に影響を及ぼしているので、正しく色変換がなされていない可能性が高いと言える。
【０２２７】
そこで、動きあり部分画素領域５５０の画素に関しては、フラッシュ光あり撮影画像Ｉ２に直接色変換を施し、最終的なホワイトバランス調整画像Ｒを求める処理を行う。
【０２２８】
実施例１では、図１に示すステップＳ１１１の処理、すなわち、ホワイトバランス調整画像Ｒにおける動き部分の画素値補正処理を図６に示す処理フローに従って、放射基底関数を用いた補間処理として実行した。また、実施例２では、図１２に示す処理フローに従って平滑フィルタを用いた補正処理を実行した。
【０２２９】
本実施例では、実施例１、実施例２とは異なるシーケンスでホワイトバランス調整画像Ｒにおける動き部分の画素値補正処理を実行する。本実施例３に係る動き部分の画素値補正処理のシーケンスについて、図１６に示すフローチャートを参照して説明する。
【０２３０】
図１６は、図２に示すステップＳ１１１の処理、すなわち、ホワイトバランス調整画像Ｒにおける動き部分の画素値補正処理を本実施例３に従って実行する場合の詳細シーケンスを示すフローチャートである。各ステップの処理について説明する。
【０２３１】
まずステップＳ６０１において、図２に示すステップＳ１１０、すなわち、図３の処理フローに従って生成したホワイトバランス調整画像Ｒと、図２に示すステップＳ１０３、Ｓ１０４において、フラッシュ光ありで撮影し、メモリに格納した画像Ｉ２を用いて、以下に示す式（式３１）に基づき、画像差分ｄを求める。
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）−Ｉ２（ｘ，ｙ）
・・・（式３１）
【０２３２】
ここで、ｄ（ｘ，ｙ），Ｒ（ｘ，ｙ），Ｉ２（ｘ，ｙ）はすべて、画素位置（ｘ，ｙ）における画像の色に対応したベクトルであり、上記式はベクトル計算として実行される。
【０２３３】
上記式（式３１）においては、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分ｄを求めているが、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の差分の変わりにホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の比率、すなわち下記式（式３２）のように、画像比率ｄを算出して適用してもよい。
ｄ（ｘ，ｙ）＝Ｒ（ｘ，ｙ）／（Ｉ２（ｘ，ｙ）＋ｅ）
・・・（式３２）
【０２３４】
上記式（式３２）において、ｅは十分に小さな固定の値を各要素に設定したベクトル、例えばｆｌｏｏｒ  ｖａｌｕｅである。（式３２）の記号"／"は、ベクトルの各要素をそれぞれ除算し、その結果をベクトルの各要素とする演算である。ｅは、Ｉ２（ｘ，ｙ）の要素が０になった場合に、ｄ（ｘ，ｙ）を計算できなくなるのを防ぐ目的で使われる。
【０２３５】
いま、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の画像差分または画像比率ｄ（ｘ，ｙ）が画像全体に渡って正しく求まれば、フラッシュ光あり撮影画像Ｉ２を基準として、最終的なホワイトバランス調整画像Ｒを算出できる。すなわち、Ｒ（ｘ，ｙ）＝ｄ（ｘ，ｙ）＋Ｉ２（ｘ，ｙ）あるいは、Ｒ（ｘ，ｙ）＝（Ｉ２（ｘ，ｙ）＋ｅ）＊ｄ（ｘ，ｙ）として算出することができる。ここで、記号"＊"は、ベクトルの各要素を乗算し、結果をベクトルの各要素とする演算である。
【０２３６】
しかし、動きあり部分画素領域５５０に関しては、動き画像として現れている可能性があるので、上記式（式３１）または（式３２）によって算出される画像差分または画像比率ｄ（ｘ，ｙ）をそのまま適用すると、最適な色味を実現することができない。
【０２３７】
そこで、本実施例においては、動きあり部分画素領域５５０に関しての最終補正画素値、すなわち最終的なホワイトバランス調整画像Ｒを動きなし部分画素領域５５１の領域において求めた画像差分または画像比率ｄ（ｘ，ｙ）を用いて補間することにより算出する。こうして推定された画像差分または画像比率ｄ（ｘ，ｙ）を用いて動きあり部分５５０の画素値補正を行なう。
【０２３８】
本手法によれば、動きあり部分画素領域５５０においても、動きあり部分画素領域５５０のフラッシュ光あり撮影画像Ｉ２のテクスチャを保持しつつ、色味を、最終的なホワイトバランス調整画像Ｒと同じにしたような画像を生成することが出来る。
【０２３９】
図１８は、上述の（式３１）、すなわち、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分ｄの算出式を用いて、動きあり部分画素領域５５０に関しての最終補正画素値を求める補間処理を説明する図である。
【０２４０】
図１８においては、説明を分かりやすくするため、データが１次元上に並んでいるものとして、その処理を説明するが、実際は、２次元平面において処理が実行される。図１８（ａ）〜（ｃ）とも、横軸が画素位置を示し、縦軸が画素値（輝度またはＲ，Ｇ，Ｂ値）を示している。
【０２４１】
図１８（ａ）は、動きなし部分画素領域５５１および、動きあり部分画素領域５５０におけるホワイトバランス調整画像Ｒ８６０と、フラッシュ光あり撮影画像Ｉ２８６１の画素値推移を示している。
【０２４２】
図１８（ｂ）は、動きなし部分画素領域５５１において、動きあり部分画素領域５５０に近接する部分の画像差分ｄの値８６２を示している。すなわち、上述の（式３１）を適用して算出されるホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分ｄの値８６２を示している。
【０２４３】
さらに、図１８（ｂ）に示す動きあり画素領域５５０に示す点線は、動きあり部分画素領域５５０に近接する動きなし部分画素領域５５１の画像差分ｄ値８６２ａおよび画像差分ｄ値８６２ｂに基づいて推測された値、すなわち、動きなし部分画素領域５５１の画像差分ｄの値８６２ａ，８６２ｂを滑らかに補間することにより得られる動きあり部分画素領域５５０における画像差分ｄの推測値８６３を示している。
【０２４４】
動きあり部分画素領域５５０における画像差分ｄの推測値８６３は、
（１）初期画像差分ｄの設定ステップ、
（２）フラッシュ光あり撮影画像Ｉ２の画像データに応じて動的に重みを決定したフィルタを適用した初期画像差分ｄの補正ステップ、
これら（１）と（２）のステップを実行することによって決定される推測値である。この動きあり部分画素領域５５０における画像差分ｄの推測値８６３の算出処理手法については後述する。
【０２４５】
図１８（ｃ）は、図１８（ａ）に示す動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２８６１の値に対して、図１８（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ８６３を加算した結果を、動きあり部分画素領域５５０における最終的なホワイトバランス調整画像Ｒ８６４として点線で示した図である。
【０２４６】
この図１８（ｃ）の動きあり部分画素領域５５０に点線で示すホワイトバランス調整画像Ｒ８６４と、動きなし部分画素領域５５１におけるホワイトバランス調整画像Ｒ８６０とが最終的なホワイトバランス調整画像Ｒとして出力される。最終出力画像は、図１８（ｃ）に示す動きあり部分画素領域５５０に点線で示すホワイトバランス調整画像Ｒ８６４と動きなし部分画素領域５５１におけるホワイトバランス調整画像Ｒ８６０と滑らかに接続された画像となる。さらに、この出力画像は、動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２８６１のテクスチャを保持したものとなる。
【０２４７】
なお、ｄ（ｘ，ｙ）として、上述の式（式３１）による画像差分ｄではなく、上述の式（式３２）を用いた画像比率ｄを適用した場合も、上述の方法と同様の補正方法が実行可能である。すなわち、図１８（ｂ）に示す画像差分ｄの代わりに画像比率ｄを用い、図１８（ｂ）に示す動きなし部分画素領域５５１に示す点線と同様、画像比率ｄの値を、動きあり部分画素領域５５０において滑らかに補間することにより動きあり部分画素領域５５０における画像比率ｄの推測値を算出し、そののち、画像比率ｄを、動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２８６１の画素に掛け合わせる、すなわち加算処理ではなく乗算処理を行なうことにより、動きあり部分画素領域５５０のホワイトバランス調整画像Ｒを算出することが出来る。
【０２４８】
次に、ホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像差分または画像比率ｄを適用した補間方法の詳細について述べる。
【０２４９】
上述したように、動きあり部分画素領域５５０における画像差分ｄの推測値８６３は、
（１）初期画像差分ｄの設定ステップ、
（２）フラッシュ光あり撮影画像Ｉ２の画像データに応じて動的に重みを決定したフィルタを適用した初期画像差分ｄの補正ステップ、
これら（１）と（２）のステップを実行することによって決定される。
まず、（１）動きあり部分画素領域５５０における画像差分ｄの初期値の設定処理について説明する。
【０２５０】
図１７に示すフローにおけるステップＳ６０１の実行の後、ステップＳ６０２において、動きあり部分画素領域５５０の各画素における画像差分または画像比率ｄ（ｘ，ｙ）の初期値を求める。なお、以下の説明では、画像差分ｄ（ｘ，ｙ）を求める方法について説明するが、画像比率ｄ（ｘ，ｙ）を求める場合も同様の手法が適用される。
【０２５１】
最初に、各画素２値のマスク画像Ｍを用意し、動きなし部分画素領域５５１の画素（ｘ，ｙ）については、Ｍ（ｘ，ｙ）＝１とし、動きあり部分画素領域５５０についてはＭ（ｘ，ｙ）＝０とする。
【０２５２】
画像の各画素を調べ、いまＭ（ｘ，ｙ）＝０の画素、すなわち動きあり部分画素領域５５０の画素のうち、Ｍ（ｘ，ｙ）＝１である画素に隣接する画素、すなわち、動きなし部分画素領域５５１に隣接する（８近傍または４近傍）画素に注目する。
【０２５３】
そして、注目した画素に隣接したＭ（ｘ，ｙ）＝１である画素の画像差分ｄ（ｘ，ｙ）の平均を算出する。この平均値を、注目する画素の位置（ｘ，ｙ）における画像差分ｄ（ｘ，ｙ）の初期値として設定する。
【０２５４】
具体的処理について、図１６を参照して説明する。例えば図１６に示すような動きあり部分画素領域５５０と動きなし部分画素領域５５１を持つ画像の場合、動きあり部分画素領域５５０中、動きなし部分画素領域５５１に隣接する画素８２１の画像差分ｄ（ｘ，ｙ）の初期値は、画素８２１に隣接する動きなし部分画素領域５５１の画素８２２，８２３，８２４の平均値として設定される。
【０２５５】
動きあり部分画素領域５５０に含まれる画素中、動きなし部分画素領域５５１に隣接する画素についての初期値が、同様の手法で決定される。次に、初期値が新たに設定された画素に関してマスク画像Ｍ（ｘ，ｙ）の値を１に変更する。その後再び、Ｍ（ｘ，ｙ）＝０の画素、すなわち動きあり部分画素領域５５０に含まれる画素中、Ｍ（ｘ，ｙ）＝１である画素に隣接する（８近傍または４近傍）すべての画素の初期値を設定した後、新たに初期値が設定された画素に関してＭ（ｘ，ｙ）＝１とする。すなわち、図１６に示す動きあり部分画素領域５５０の周辺部から中央部に向けて、順に動きあり部分画素領域５５０の画像差分ｄ（ｘ，ｙ）の初期値を決定していく。この処理を、すべての画素がＭ（ｘ，ｙ）＝１になるまで、繰り返し行う。
【０２５６】
この処理により、動きあり部分画素領域５５０に含まれるすべての画素の画像差分ｄ（ｘ，ｙ）の初期値が決定する。この処理が、図１７に示すフローにおけるステップＳ６０２の処理である。
【０２５７】
上述の処理により、動きあり部分画素領域５５０における画像差分ｄ（ｘ，ｙ）の初期値が求まった後、図１６に示すフローにおけるステップＳ６０３〜Ｓ６０６の処理を実行する。この処理が、前述した
（２）フラッシュ光あり撮影画像Ｉ２の画像データに応じて動的に重みを決定したフィルタを適用した初期画像差分ｄの補正ステップ、
の処理である。
【０２５８】
ステップＳ６０３では、画像差分ｄの中で動きあり部分画素領域５５０の画素のみに対してフィルタによるフィルタリング処理によって初期画像差分ｄの補正値ｄ'を算出する。
【０２５９】
本実施例において、初期画像差分ｄの補正値ｄ'を算出するフィルタリング処理に適用するフィルタは、実施例２で適用した平滑フィルタではなく、フラッシュ光あり撮影画像Ｉ２の画像データに応じて動的に重みを決定したフィルタである。
【０２６０】
例えば、動きあり部分画素領域５５０における画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値を１回の画素値補正処理に相当するフィルタリング処理によって更新画素値を求める算出式として、以下の式を適用する。
【数１４】
2005102116.tif 000014
【０２６１】
上記式（式３３）において、ｄ（ｘ，ｙ，ｃｈ）、Ｉ２（ｘ，ｙ，ｃｈ）は、画素位置（ｘ，ｙ）の各チャンネル［ｃｈ］の差分画像ｄならびに、フラッシュ光あり撮影画像Ｉ２の画素値である。チャンネルとは、カラー画像である場合の各チャンネル、具体的には、赤、緑、青（ＲＧＢ）各チャンネルを意味する。また、ｄ'（ｘ，ｙ，ｃｈ）は、画素位置（ｘ，ｙ）におけるチャンネル［ｃｈ］の差分画像ｄの新しい画素値、すなわち更新画素値である。
【０２６２】
また、上記式（式３３）のｉ，ｊは、画素位置（ｘ，ｙ）の画素差分値ｄの更新値ｄ'を算出するために適用する参照画素の位置を示している。ｉ，ｊの値の範囲は、ｘ−ｋ≦ｉ≦ｘ＋ｋ、ｙ−ｋ≦ｊ≦ｙ＋ｋである。ここで、ｋは自然数であり、ｋとして１から３程度の比較的小さな値を設定する。
【０２６３】
ｋ＝１とした場合は、画素位置（ｘ，ｙ）の画素差分値ｄの更新値ｄ'を算出するために適用する参照画素が、画素位置（ｘ，ｙ）の隣接画素のみとなり、ｋ＝３とした場合は、画素位置（ｘ，ｙ）の画素差分値ｄの更新値ｄ'を算出するために適用する参照画素が、画素位置（ｘ，ｙ）の周囲の左右および上下各方向の３画素を含む領域として設定されることになる。ｋの値は予め定めた値を適用する。
【０２６４】
上記式（式３３）において、関数ｗ（ｘ）は、重み付け関数であり、例えば、下記式（式３４）によって示される関数が適用される。
【数１５】
2005102116.tif 000015
【０２６５】
上記式（式３４）において、σはパラメータであり、あらかじめ設定された値を用いる。
【０２６６】
動きあり部分画素領域５５０における画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値を、上記式(式３４)示す重み付け関数ｗ（ｘ）を用いて、上記式（式３３）によって算出する。
【０２６７】
なお、図１７のフローに示すように、上記式（式３３）を適用した動きあり部分画素領域５５０における画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値更新処理、すなわち、フィルタリング処理は、所定条件（ステップＳ６０４またはＳ６０５で規定する条件）を満足するまで、繰り返し実行する。すなわち、上記式（式３３）を適用した算出した更新画素値ｄ'（ｘ，ｙ，ｃｈ）を、次のフィルタリング処理において、式（式３３）のｄ（ｘ，ｙ，ｃｈ）の値として設定し、新たな更新画素値ｄ'（ｘ，ｙ，ｃｈ）を算出する処理を繰り返し実行する。
【０２６８】
上記式（式３３）による画素値更新（フィルタリング処理）を繰り返し実行して、動きあり部分画素領域５５０における画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値を補正することで、動きなし部分画素領域５５１の画像差分ｄ（ｘ，ｙ）の値を変更することなく、動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値が補正され、動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値がフラッシュ光あり撮影画像Ｉ２８６１のテクスチャ、エッジに従って平滑化されるような効果を得ることが出来る。
【０２６９】
このフィルタリング処理において、動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値の各色成分（各チャンネル）がどのように変化したかチェックし、その最大値を保存する。
【０２７０】
図１７のフローにおけるステップＳ６０４では、上記式（式３３）による画素値更新（フィルタリング処理）によって、画像差分ｄ（ｘ，ｙ）の値の各色成分（各チャンネル）の変化量の最大値と、あらかじめ定めた閾値との比較を実行する。すなわち、１回あたりのフィルタリング処理（式３３による画素値更新処理）によって得られた更新値ｄ'と更新前の画素値ｄとの差分ｄ'−ｄが、あらかじめ定めた閾値より小さい場合は、フィルタリング処理（式３３による画素値更新処理）を繰り返し実行しても画素値の変更量が小さく、処理を継続する効果が小さいと判断して式３３による画素値更新処理を終了してステップＳ６０６に進む。
【０２７１】
すなわち、ステップＳ６０４において、
画素値変化量最大値＞閾値
が成立しないと判定した場合は、ステップＳ６０６に進み、動きあり部分画素領域５５０に対する画像差分（画像比率）ｄ推定値を決定する処理を実行する。
【０２７２】
ステップＳ６０４において、
画素値変化量最大値＞閾値
が成立すると判定した場合は、まだ、動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）が滑らかに補正されていないと判断し、ステップＳ６０５に進む。
【０２７３】
ステップＳ６０５では、ステップＳ６０３において上記式（式３３）を適用して実行した画素値更新処理（フィルタリング処理）の実行回数が、あらかじめ定めた閾値回数より大きいかどうかを判定し、
画素値更新処理（フィルタリング処理）実行回数＞閾値回数
が成立する場合は、ステップＳ６０６に進む。
【０２７４】
画素値更新処理（フィルタリング処理）実行回数＞閾値回数
が成立しない場合は、ステップＳ６０３に戻り、上記式（式３３）に従った、動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の補正処理（フィルタリング処理）を繰り返し実行する。
【０２７５】
ステップＳ６０４において、画素値変化量最大値＞閾値が成立しないと判定されるか、あるいは、ステップＳ６０５において、画素値更新処理（フィルタリング処理）実行回数＞閾値回数が成立すると判定された場合、上記式（式３３）に従った、動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の補正処理（フィルタリング処理）を完了し、ステップＳ６０６に進み、動きあり部分画素領域５５０に対する画像差分（画像比率）ｄの推定値を決定する処理を実行する。
【０２７６】
ステップＳ６０６では、上述のフィルタリング処理において求めた動きあり部分画素領域５５０における画像差分ｄを、推定された画像差分ｄとして決定する。この処理ステップによって算出された動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）が、図１８（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ８６３に相当する。
【０２７７】
次に、ステップＳ６０７において、上述の式（式３３）を適用したフィルタリング処理により算出された動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像差分ｄ（ｘ，ｙ）の値（図１８（ｂ）に示す画像差分ｄ８６３）と、フラッシュ光あり撮影画像Ｉ２（図１８（ａ）に示すフラッシュ光あり撮影画像Ｉ２８６１）との加算処理を実行して動きあり部分画素領域５５０におけるホワイトバランス調整画像Ｒを生成する。すなわち、
Ｒ＝Ｉ２＋ｄ
により動きあり部分画素領域５５０におけるホワイトバランス調整画像Ｒの画素値を算出する。
【０２７８】
この結果が、図１８（ｃ）の動きあり部分画素領域５５０に点線で示すホワイトバランス調整画像Ｒ８６４である。最終的な補正画像、すなわちホワイトバランス調整画像Ｒは、動きなし部分画素領域５５１におけるホワイトバランス調整画像Ｒ８６０と、動きあり部分画素領域５５０に点線で示すホワイトバランス調整画像Ｒ８６４の連結画像である。
【０２７９】
最終ホワイトバランス調整画像Ｒは、図１８（ｃ）に示すように、動きあり部分画素領域５５０に点線で示すホワイトバランス調整画像Ｒ８６４と動きなし部分画素領域５５１におけるホワイトバランス調整画像Ｒ８６０と滑らかに接続された画像となる。さらに、この出力画像は、動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２８６１のテクスチャを保持したものとなる。
【０２８０】
なお、前述したように、上述の式（式３１）による画像差分ｄではなく、上述の式（式３２）を用いた画像比率ｄを適用した場合も、上述の方法と同様の補正方法が実行可能であり、この場合は、ステップＳ６０７において、画像比率ｄを適用したフィルタリング処理により算出された動きあり部分画素領域５５０の画素位置（ｘ，ｙ）の画像比率ｄ（ｘ，ｙ）の値と、フラッシュ光あり撮影画像Ｉ２との乗算処理を実行して動きあり部分画素領域５５０におけるホワイトバランス調整画像Ｒを生成する。すなわち、
Ｒ＝Ｉ２×ｄ
により動きあり部分画素領域５５０におけるホワイトバランス調整画像Ｒの画素値を算出する。
【０２８１】
すなわち、図１８（ｂ）に示す画像差分ｄの代わりに画像比率ｄを用い、図１８（ｂ）に示す動きなし部分画素領域５５１に示す点線と同様、画像比率ｄの値を、動きあり部分画素領域５５０において滑らかに補間することにより動きあり部分画素領域５５０における画像比率ｄの推測値を算出し、そののち、画像比率ｄを、動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２８６１の画素に乗算して動きあり部分画素領域５５０のホワイトバランス調整画像Ｒを算出することが出来る。
【０２８２】
次に、図１９を参照して、本実施例における動き部分補正画素値算出部の構成について説明する。
【０２８３】
本実施例における動き部分補正画素値算出部は、先の実施例１において説明した図８における動き部分補正画素値算出部３１０、あるいは、図１０における動き部分補正画素値算出部４０９に対応して設定される。
【０２８４】
図１９の構成について説明する。動き部分補正画素値算出部９１０は、画像差分（画像比率）算出部９１１、動きあり画素領域画像差分（画像比率）ｄ初期値算出部９１２、フィルタ処理部９１３、および動き部分最終補正画素値算出部９１４を有する。
【０２８５】
画像差分（画像比率）算出部９１１は、動きなし部分画素領域ホワイトバランス調整画像Ｒ９０１と、フラッシュ光あり撮影画像Ｉ２格納フレームメモリ９０２に格納されたフラッシュ光あり撮影画像Ｉ２の各画像データを入力し、前述の式（式３１）または、式（式３２）に従って、動きなし部分画素領域における画像差分ｄまたは、画像比率ｄを算出する。これは、図１８（ｂ）に示す動きなし部分画素領域５５１における画像差分ｄ８６２に相当する。
【０２８６】
動きあり画素領域画像差分（画像比率）ｄ初期値算出部９１２は、動きあり画素領域における画像差分（画像比率）ｄの初期値を設定する。この処理は、先に図１６を参照して説明したように、まず、動きあり画素領域における動きなし画素領域に隣接する部分において、動きなし画素領域の隣接画素の画像差分（画像比率）ｄの平均値を初期値として設定し、順に動きあり画素領域の内側にむかって画像差分（画像比率）ｄの初期値を決定する処理を実行する。
【０２８７】
フィルタ処理部９１３は、動きあり画素領域画像差分（画像比率）ｄ初期値算出部９１２において設定された動きあり画素領域画像差分（画像比率）ｄの初期値を、前述の式（式３３）に従って更新するフィルタリング処理を実行する。このフィルタリング処理はフラッシュ光あり撮影画像Ｉ２に基づいて生成したフィルタによるフィルタ処理、すなわち、前述の式（式３３）に従って更新するフィルタリング処理である。
【０２８８】
フィルタ処理部９１３は、図１７に示すフローを参照して説明したように、１回のフィルタリング処理による画素値の最大変化が予め定めた閾値より小さいか、またはフィルタリング処理回数が、予め定めた閾値回数より多くなったことを条件として、式（式３３）を適用したフィルタリング処理を終了して動きあり画素領域における画像差分（画像比率）の推定値ｄを決定する。すなわち図１８（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ８６３として決定する。
【０２８９】
動き部分最終補正画素値算出部９１４は、フィルタ処理部９１３においてフィルタリング処理のなされた画像差分（画像比率）の推定値ｄと、画像Ｉ２格納フレームメモリ９０２からフラッシュ光あり撮影画像Ｉ２を入力し、動きあり部分画素領域５５０の最終的なホワイトバランス調整画像Ｒを生成する。すなわち、図１８（ｃ）の動きあり部分画素領域５５０の最終的なホワイトバランス調整画像Ｒを生成する。
【０２９０】
図１８（ａ）に示す動きあり部分画素領域５５０におけるフラッシュ光あり撮影画像Ｉ２８６１の値に対して、図１８（ｂ）に示す動きあり部分画素領域５５０における推定された画像差分ｄ８６３を加算した結果を、図１８（ｃ）に示す動きあり部分画素領域５５０における最終的なホワイトバランス調整画像Ｒ８６４として設定し出力する。
【０２９１】
なお、式（式３２）に従って求めたホワイトバランス調整画像Ｒと、フラッシュ光あり撮影画像Ｉ２の各画素値の画像比率ｄを用いた場合は、動きあり画素領域５５０における画像比率ｄとフラッシュ光あり撮影画像Ｉ２の各画素の要素同士を乗算し、最終的なホワイトバランス調整画像Ｒを生成して出力する。
【０２９２】
上述したように、本実施例の画素値補正処理によれば、フィルタを適用した処理により、動きあり部分画素領域の適切な色変換を行うことが可能となり、動きあり部分画素領域における補正画素値は、フラッシュ光あり撮影画像Ｉ２のテクスチャを保持した画素値となり、より自然な画像を生成することが可能となる。
【０２９３】
第２実施例で適用した平滑フィルタを用いた処理を実行した場合には、オリジナル画像の画像差分または画像比率に対応した画素値補正が行いにくく、画像の種類によっては、エッジ部のぼやけ、色のにじみなどが発生する場合があるが、本実施例では、第２の画像、すなわち、フラッシュ光あり撮影画像Ｉ２の画素値を考慮して決定された係数を用いた画素値変換式を式３３に従って設定して、フィルタリング処理を行なう構成としたので、フラッシュ光あり撮影画像Ｉ２のテクスチャを反映した画素値補正が行なわれることとなり、動きあり領域においてもエッジ部のぼやけ、色のにじみなどが解消され、フラッシュ光あり撮影画像Ｉ２のテクスチャを反映した画像を生成することが可能となる。
【０２９４】
なお、本実施例では、ホワイトバランス調整処理として実行する例について説明したが、ここで説明した手法は、ホワイトバランス調整処理以外にも、例えばある画像の一部分の画素値を変更する画像処理において、別の画像の特徴に似せて変更をしたい場合に、本発明は適用できる。つまり、第２の画像の特徴を用いて決定された係数を用いた画素値変換式を式３３に従って設定して、フィルタリング処理を行なうことにより、第１の画像の一部分の画素値を変更することで第１の画像の色味を保持しつつ第２の画像の特徴を持つ画像を生成することが可能となる。
【実施例４】
【０２９５】
上述した実施例１〜実施例３では、３枚の画像、すなわちフラッシュなし画像、フラッシュあり画像、フラッシュなし画像の３枚の画像を連写して１つの出力画像を生成する構成である。上記実施例では、それらの３枚の画像はすべて同じ解像であると仮定している。しかし、例えば数百万画素の解像度を持つ画像を対象とした処理を実行することを想定すると、これらの処理を実行するためには、３枚の画像データを格納するため、さらには、様々な処理画像データを格納する大容量のメモリが必要となり、画素数の増大に伴い、実行すべき計算量が膨大になる。
【０２９６】
図１に示す装置構成において、固体撮像素子１０３として例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）を用いた場合、数百万画素の画像を、高速で連写することは難しい。ここで、一般的なデジタルカメラにおいては、撮影時に、例えば３０分の１秒ごとに、解像度の低い画像を固体撮像素子１０３から高速に読み出し、カメラ付属のディスプレイに随時表示する機能を備えている。
【０２９７】
本実施例は、このようにして撮像した低解像度の画像を用いることにより、効率よく高速に、外光とフラッシュ光との色温度の違いを解消することが出来る構成例である。
【０２９８】
本実施例の画像処理装置および撮像装置の構成を示すブロックダイアグラムは図１と同様であり、その説明は前述と同様であるので、ここでは省略する。
【０２９９】
図２０は、本実施例の処理手順を説明するフローチャートである。図２０に示すフローチャートの各ステップについて説明する。
【０３００】
まず、ステップＳ７０１において事前に設定された絞り、シャッタースピードを用いて、フラッシュ発光なしで撮影し、ステップＳ７０２において、ステップＳ７０１で撮影した画像に基づく低解像度画像Ｉ１Ｌをメモリに格納する。ここで、低解像度画像Ｉ１Ｌは、固体撮像素子１０３（図１参照）の本来の撮影画像の解像度より低い解像度の画像である。撮像された高解像度画像から低解像度である画像Ｉ１Ｌを生成する方法は、さまざまな方法が考えられる。例えば、単純に画素を間引く方法、近接する複数の画素の平均をとって、ひとつの新しい画素とする方法などがある。前述の通り一般的なデジタルカメラでは、撮影時に固体撮像素子１０３で撮像される画像を、低解像度のディスプレイに例えば毎秒３０フレームなどの速さで表示する機能が付いており、このときに使われる方法をそのまま適用することが可能である。
【０３０１】
ステップＳ７０１で撮影した画像に基づくフラッシュ発光なし低解像度画像Ｉ１Ｌをメモリに格納する場合、低解像度画像データの格納処理として実行することになり、メモリ格納データ量が少ないため、データのメモリ格納処理時間が短縮される。このため、高速に次のステップに移ることが出来る。
【０３０２】
次に、ステップＳ７０３においてフラッシュを発光した上で画像を撮影し、ステップＳ７０４おいて、ステップＳ７０３で撮影した画像に基づくフラッシュ発光あり高解像度画像Ｉ２Ｈと、フラッシュ発光あり低解像度画像Ｉ２Ｌとの２画像をメモリに格納する。ここで、フラッシュ発光あり低解像度画像Ｉ２Ｌは、フラッシュ発光なし低解像度画像Ｉ１Ｌと同じ解像度の低解像度の画像で、前述した方法と同じ方法で求める。フラッシュ発光あり高解像度画像Ｉ２Ｈは最終的に出力として得たい解像度を持つ画像で、フラッシュ発光なし低解像度画像Ｉ１Ｌやフラッシュ発光あり低解像度画像Ｉ２Ｌより高解像度の画像である。
【０３０３】
次に、ステップＳ７０５において、再度フラッシュを発光せずに撮影し、ステップＳ７０６において、ステップＳ７０５で撮影した画像に基づくフラッシュ発光なし低解像度画像Ｉ３Ｌをメモリに格納する。ここで、フラッシュ発光なし低解像度画像Ｉ３Ｌは、フラッシュ発光なし低解像度画像Ｉ１Ｌや、フラッシュ発光あり低解像度画像Ｉ２Ｌと同じ解像度の低解像度の画像で、前述した方法と同じ方法で求める。
【０３０４】
次のステップＳ７０７〜Ｓ７１３までの処理は、前記の実施例において説明した図２のフローチャートのステップＳ１０７〜Ｓ１１３と全く同じ処理であるので説明は省略する。
【０３０５】
ただし、Ｓ７０７〜Ｓ７１３までの処理における処理対象画像データは、低解像度画像、すなわち、フラッシュ発光なし低解像度画像Ｉ１Ｌと、フラッシュ発光あり低解像度画像Ｉ２Ｌと、フラッシュ発光なし低解像度画像Ｉ３Ｌである。これらの低解像度画像に基づいてホワイトバランス調整画像Ｒを生成する。なお、動き部分については、前述した実施例１で説明したＲａｄｉａｌ  Ｂａｓｉｓ  Ｆｕｎｃｔｉｏｎ（放射基底関数）を適用した処理、あるいは実施例２で説明した平滑フィルタを適用した平滑化処理に基づく処理、あるいは実施例３で説明したフラッシュあり撮影画像に基づく重みを設定したフィルタを適用した処理などにより、補正された画素値が算出されたホワイトバランス調整画像Ｒを生成する。
【０３０６】
最後にステップＳ７１４において、低解像度画像に基づいて生成したホワイトバランス調整画像Ｒと、フラッシュ発光あり低解像度画像Ｉ２Ｌと、フラッシュ発光あり高解像度画像Ｉ２Ｈとに基づいて、高解像度の最終画像ＲＨを生成する。
【０３０７】
まず、フラッシュ発光あり高解像度画像Ｉ２Ｈの各画素Ｉ２Ｈ（ｘ，ｙ）に対して、それに対応するフラッシュ発光あり低解像度画像Ｉ２Ｌと、ホワイトバランス調整画像Ｒの位置（ｘ'，ｙ'）における、画素位置Ｉ２Ｌ（ｘ'，ｙ'）、Ｒ（ｘ'，ｙ'）の画素値を求める。
【０３０８】
なお、ｘ'とｙ'は、整数になるとは限らない。（ｘ'，ｙ'）における画素値を求める方法としては、Ｎｅａｒｅｓｔ  Ｎｅｉｇｈｂｏｒ法、ｂｉｌｉｎｅａｒ法、ｂｉｃｕｂｉｃ法など、一般に広く用いられている画像補間手法を用いる。
【０３０９】
次に、低解像度画像に基づいて生成したホワイトバランス調整画像Ｒの画素Ｒ（ｘ'，ｙ'）の画素値に対するフラッシュ発光あり低解像度画像Ｉ２Ｌの対応画素Ｉ２Ｌ（ｘ'，ｙ'）の画素値の比を求める。
【０３１０】
この低解像度画像データに基づく画素値比：
Ｒ（ｘ'，ｙ'）：Ｉ２Ｌ（ｘ'，ｙ'）に対応させて、
高解像度画像データに基づく画素値比：
ＲＨ（ｘ，ｙ）：Ｉ２Ｈ（ｘ，ｙ）を設定する。
ここで、フラッシュ発光あり高解像度画像Ｉ２Ｈの各画素値は既知であるので、画素Ｉ２Ｈ（ｘ，ｙ）と、低解像度画像データに基づく画素値比：Ｒ（ｘ'，ｙ'）：Ｉ２Ｌ（ｘ'，ｙ'）とを乗算することにより、高解像度の最終画像ＲＨの画素ＲＨ（ｘ，ｙ）を算出する。
【０３１１】
これを、すべてのフラッシュ発光あり高解像度画像Ｉ２Ｈの画素に関して計算し、最終的な高解像度ホワイトバランス調整画像ＲＨを生成する。すなわち、低解像度の画像上において、フラッシュ発光あり低解像度画像Ｉ２Ｌをホワイトバランス調整画像Ｒに変換する場合の変換情報を取得し、この変換情報に基づいて、高解像度画像、すなわち、フラッシュ発光あり高解像度画像Ｉ２Ｈの各画素値の変換処理を実行して、高解像度ホワイトバランス調整画像ＲＨを生成する。
【０３１２】
この処理方法によれば、ステップＳ７０７〜Ｓ７１３までの処理における処理対象画像データは、低解像度画像、すなわち、フラッシュ発光なし低解像度画像Ｉ１Ｌと、フラッシュ発光あり低解像度画像Ｉ２Ｌと、フラッシュ発光なし低解像度画像Ｉ３Ｌであり、低解像度画像に基づくホワイトバランス調整画像Ｒの生成処理として実行されることになり、画素数が少なく計算量が少なくて済み、高速な処理が可能となる。動き部分の補正処理においても、前述した実施例１で説明したＲａｄｉａｌ  Ｂａｓｉｓ  Ｆｕｎｃｔｉｏｎ（放射基底関数）を適用した処理、あるいは実施例２で説明した平滑フィルタを適用した平滑化処理に基づく処理、あるいは実施例３で説明したフラッシュあり撮影画像に基づく重みを設定したフィルタを適用した処理、いずれの処理においても高速処理が可能となる。
【０３１３】
また、２つのフラッシュ光なしの撮影画像データは、いずれも低解像度画像データのみをメモリに格納すればよいので、メモリ容量の少ない装置、機種においても適用可能となる。
【０３１４】
このように、本実施例の処理は、プロセッサの処理能力が比較的低く、またメモリ容量の小さな機種、装置においても実行可能であり、最終的に得られる画像データを高解像度のホワイトバランス調整画像データとして出力することが可能となる。
【０３１５】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。なお、上述した実施例では、被写体が暗い場合に発光する照明装置としてフラッシュという用語を用いて説明したが、このほかに、ストロボと呼ばれることもあり、フラッシュに限定されるわけではなく、一般的に被写体が暗い場合に発光する照明装置において本発明は適用される。
【０３１６】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０３１７】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ（Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【０３１８】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０３１９】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０３２０】
以上、説明したように、本発明の構成によれば、例えば動きあり領域などの特定領域の画素値の補正処理を、動きなし領域の画素値、たとえばホワイトバランス調整のなされた画像データと、動きあり領域などの特定領域のフラッシュ発光あり画像データとに基づいて、効率的に実行可能であり、ホワイトバランス調整のなされた画像データと滑らかに接続された画像を生成することが可能となるとともに、動きあり領域におけるフラッシュ発光あり画像データのテクスチャ情報を反映した画像を生成することができ、動きのある画像を撮影するデジタルカメラなどに適用できる。
【０３２１】
本発明の構成によれば、動きあり領域における画素値補正処理において、ホワイトバランス調整のなされた画像データと、フラッシュ発光あり画像データとの差分あるいは比率の初期値を動きあり領域に設定した後、平滑化フィルタによって平滑化し、動きあり領域における画像差分または画像比率の推定値を算出し、該推定値によって動きあり領域の画素値補正を実行する構成としたので、計算量の少ない高速処理が実現され、動きのある画像を撮影するデジタルカメラなどに適用できる。
【０３２２】
さらに、本発明の第３実施例として説明した画素値補正処理によれば、フィルタを適用した処理により、動きあり部分画素領域の適切な色変換を行うことが可能となり、動きあり部分画素領域における補正画素値は、フラッシュ光あり撮影画像Ｉ２のテクスチャを保持した画素値となり、より自然な画像を生成することが可能となる。平滑フィルタを用いた処理を実行した場合には、オリジナル画像の画像差分または画像比率に対応した画素値補正が行いにくく、画像の種類によっては、エッジ部のぼやけ、色のにじみなどが発生する場合があるが、第３実施例として説明した画素値補正処理によれば、フラッシュ光あり撮影画像Ｉ２の画素値を考慮して決定された係数を用いた画素値変換式に従ったフィルタリング処理を行なう構成としたので、フラッシュ光あり撮影画像Ｉ２のテクスチャを反映した画素値補正が行なわれることとなり、動きあり領域においてもエッジ部のぼやけ、色のにじみなどが解消され、フラッシュ光あり撮影画像Ｉ２のテクスチャを反映した画像を生成することが可能となる。
【０３２３】
さらに、本発明によれば、低解像度画像を適用したホワイトバランス調整や動きあり部分の画素値補正を実行した後、補正画像データと低解像度画像データとの対応関係に基づいて、高解像度補正画像を生成することが可能となり、少ないメモリ量で、高速な処理が可能となり、最終的に高解像度の補正画像を取得することが可能となり、メモリ量の制限されたデジタルカメラなどに最適である。
【図面の簡単な説明】
【０３２４】
【図１】本発明の画像処理装置の構成を示す図である。
【図２】本発明の画像処理方法の手順を説明するフローチャートである。
【図３】本発明の画像処理方法における複数の画像データに基づくホワイトバランス調整処理の手順を説明するフローチャートである。
【図４】本発明の画像処理方法における複数の画像データに基づくホワイトバランス調整処理の原理を説明する図である。
【図５】本発明の画像処理における複数の画像データに基づく動き部分の検出処理について説明する図である。
【図６】本発明の画像処理における動き部分の画素値調整処理について説明するフロー図である。
【図７】本発明の画像処理における動き部分の画素値調整処理について説明する図である。
【図８】本発明の画像処理における複数の画像データに基づく画素値調整処理を実行する機構を説明する図である。
【図９】本発明の画像処理方法における複数の画像データに基づくホワイトバランス調整処理の手順を説明するフローチャートである。
【図１０】本発明の画像処理における複数の画像データに基づく画素値調整処理を実行する機構を説明する図である。
【図１１】本発明の画像処理における動き部分の画素値調整処理について説明する図である。
【図１２】本発明の第２実施例における動き部分の画素値調整処理について説明するフロー図である。
【図１３】本発明の第２実施例における動き部分の画素値調整処理について説明する図である。
【図１４】本発明の第２実施例における動き部分の画素値調整処理において実行する画像差分ｄの初期値設定方法について説明する図である。
【図１５】本発明の第２実施例における動き部分補正画素値算出部の構成および処理について説明する図である。
【図１６】本発明の第３実施例における動き部分の画素値調整処理、画像差分ｄの初期値設定方法について説明する図である。
【図１７】本発明の第３実施例における動き部分の画素値調整処理について説明するフロー図である。
【図１８】本発明の第３実施例における動き部分の画素値調整処理について説明する図である。
【図１９】本発明の第３実施例における動き部分補正画素値算出部の構成および処理について説明する図である。
【図２０】本発明の第４実施例における処理について説明するフロー図である。
【符号の説明】
【０３２５】
１０１  レンズ
１０２  絞り
１０３  固体撮像素子
１０４  相関２重サンプリング回路
１０５  Ａ／Ｄコンバータ
１０６  ＤＳＰブロック
１０７  タイミングジェネレータ
１０８  Ｄ／Ａコンバータ
１０９  ビデオエンコーダ
１１０  ビデオモニタ
１１１  コーデック（ＣＯＤＥＣ）
１１２  メモリ
１１３  ＣＰＵ
１１４  入力デバイス
１１５  フラッシュ制御装置
１１６  フラッシュ発光装置
２００  ボール
２１０  像ぶれの発生領域
２５０  動きあり部分内周画素
２５１  動きあり部分外周画素
２５２  動きあり部分非内周画素
２５３  動きあり部分非外周画素
２５４  画素ａ
２５５  ａの隣接画素
３０１，３０２，３０３  フレームメモリ
３０４  差分画像算出部
３０５  ホワイトバランス調整部
３０６  外光成分推定部
３０７  ホワイトバランス調整部
３０８  画素値加算部
３０９  動き検出部
３１０  動き部分補正画素値算出部
３１１  ホワイトバランス調整部
３１２  出力切り替え部
４０１，４０２，４０３  フレームメモリ
４０４  差分画像算出部
４０５  ホワイトバランス調整部
４０６  画素値加算部
４０７  ホワイトバランス調整部
４０８  動き検出部
４０９  動き部分補正画素値算出部
４１０  ホワイトバランス調整部
４１１  出力切り替え部
５５０  動きあり部分画素領域
５５１  動きなし部分画素領域
５６０  ホワイトバランス調整画像Ｒ
５６１  フラッシュあり画像Ｉ２
５６４  ホワイトバランス調整画像Ｒ
５８１  動きあり部分画素領域の画素
５８２〜５８４  動きなし部分画素領域の画素
７０１  動きなし部分画素領域ホワイトバランス調整画像Ｒ
７０２  画像Ｉ２格納メモリ
７１０  動き部分補正画素値算出部
７１１  画像差分（画像比率）ｄ算出部
７１２  動きあり画素領域画像差分（画像比率）ｄ初期値設定部
７１３  平滑化処理部
７１４  動き部分最終補正画素値算出部
８２１  動きあり部分画素領域の画素
８２２〜８２４  動きなし部分画素領域の画素
８６０  ホワイトバランス調整画像Ｒ
８６１  フラッシュ光あり撮影画像Ｉ２
８６２  動きあり部分画素領域近接部分の画像差分ｄ
８６３  動きあり部分画素領域画像差分ｄ推測値
８６４  ホワイトバランス調整画像Ｒ
９０１  動きなし部分画素領域ホワイトバランス調整画像Ｒ
９０２  画像Ｉ２格納メモリ
９１０  動き部分補正画素値算出部
９１１  画像差分（画像比率）ｄ算出部
９１２  動きあり画素領域画像差分（画像比率）ｄ初期値設定部
９１３  フィルタ処理部
９１４  動き部分最終補正画素値算出部
【図１】
2005102116.tif 000018
【図２】
2005102116.tif 000019
【図３】
2005102116.tif 000020
【図４】
2005102116.tif 000021
【図５】
2005102116.tif 000022
【図６】
2005102116.tif 000023
【図７】
2005102116.tif 000024
【図８】
2005102116.tif 000025
【図９】
2005102116.tif 000026
【図１０】
2005102116.tif 000027
【図１１】
2005102116.tif 000028
【図１２】
2005102116.tif 000029
【図１３】
2005102116.tif 000030
【図１４】
2005102116.tif 000031
【図１５】
2005102116.tif 000032
【図１６】
2005102116.tif 000033
【図１７】
2005102116.tif 000034
【図１８】
2005102116.tif 000035
【図１９】
2005102116.tif 000036
【図２０】
2005102116.tif 000037