(57)【要約】【課題】露光時間のわずかなばらつきなどの撮像装置由来の輝度差が生じる場合や、照明の変動による輝度差が生じる場合に、複数の画像間における同一被写体位置の輝度レベルが一致しない。【解決手段】画像処理装置は、第一の画像上に設定された複数の領域ごとに、第一の画像と第二の画像との間の第一の動きベクトルを算出する第一動きベクトル算出部１０１と、第一の動きベクトルの信頼性を判定する信頼性判定部１０２と、第一の動きベクトルの信頼性が高いと判定された領域内の画素について、画像間の輝度差を算出する輝度差算出部１０４と、輝度差に基づいて、第一の画像および第二の画像間の輝度差を補正する輝度補正部１５０と、輝度差が補正された第一の画像および第二の画像を、輝度情報に基づいて合成する合成部１３とを備える。【選択図】図１
2012070168.tif 000002
【特許請求の範囲】
【請求項１】
第一の画像および第二の画像を合成して、合成画像を生成する画像処理装置であって、
前記第一の画像上に設定された複数の領域ごとに、前記第二の画像上で相関性の高い領域を求めることによって、前記第一の画像と前記第二の画像との間の第一の動きベクトルを算出する第一動きベクトル算出部と、
前記第一の動きベクトルの信頼性を判定する信頼性判定部と、
前記第一の動きベクトルの信頼性が高いと判定された領域内の画素について、前記第一の画像と前記第二の画像との間の輝度差を算出する輝度差算出部と、
前記輝度差に基づいて、前記第一の画像および前記第二の画像間の輝度差を補正する輝度補正部と、
前記輝度補正部によって輝度差が補正された第一の画像および第二の画像を、輝度情報に基づいて合成する合成部と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記合成部は、前記輝度補正部によって輝度差が補正された第一の画像および第二の画像を、前記第一の動きベクトルに基づいて位置合わせしてから合成する、
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記合成部は、前記輝度差の大きさに基づいて、前記第一の画像および前記第二の画像を合成する際の合成比を決定し、決定した合成比に基づいて前記第一の画像および前記第二の画像を合成する、
ことを特徴とする請求項１または請求項２に記載の画像処理装置。
【請求項４】
前記輝度補正部は、前記第一の画像と前記第二の画像との間の輝度差とともに、画像上の画素位置に基づいて、前記第一の画像および前記第二の画像の輝度差を補正する、
ことを特徴とする請求項１から請求項３のいずれか一項に記載の画像処理装置。
【請求項５】
前記輝度補正部は、前記第一の動きベクトルの信頼性が高いと判定された領域の画像上の分布、および、前記第一の動きベクトルの信頼性が高いと判定された領域の輝度値の分布のうちの少なくとも一方の分布に基づいて、前記第一の画像および前記第二の画像間の輝度差の補正を行う、
ことを特徴とする請求項１から請求項４のいずれか一項に記載の画像処理装置。
【請求項６】
前記輝度補正部によって輝度差が補正された第一の画像および第二の画像間の第二の動きベクトルを算出する第二動きベクトル算出部をさらに備え、
前記合成部は、前記輝度補正部によって輝度差が補正された第一の画像および第二の画像を、前記第二の動きベクトルに基づいて位置合わせしてから合成する、
ことを特徴とする請求項１から請求項５のいずれか一項に記載の画像処理装置。
【請求項７】
第一の画像および第二の画像を合成して、合成画像を生成する画像処理方法であって、
前記第一の画像上に設定された複数の領域ごとに、前記第二の画像上で相関性の高い領域を求めることによって、前記第一の画像と前記第二の画像との間の第一の動きベクトルを算出するステップと、
前記第一の動きベクトルの信頼性を判定するステップと、
前記第一の動きベクトルの信頼性が高いと判定された領域内の画素について、前記第一の画像と前記第二の画像との間の輝度差を算出するステップと、
前記輝度差に基づいて、前記第一の画像および前記第二の画像間の輝度差を補正するステップと、
前記輝度差が補正された第一の画像および第二の画像を、輝度情報に基づいて合成するステップと、
を備えることを特徴とする画像処理方法。
【請求項８】
第一の画像および第二の画像を合成して合成画像を生成するための画像処理プログラムであって、
前記第一の画像上に設定された複数の領域ごとに、前記第二の画像上で相関性の高い領域を求めることによって、前記第一の画像と前記第二の画像との間の第一の動きベクトルを算出するステップと、
前記第一の動きベクトルの信頼性を判定するステップと、
前記第一の動きベクトルの信頼性が高いと判定された領域内の画素について、前記第一の画像と前記第二の画像との間の輝度差を算出するステップと、
前記輝度差に基づいて、前記第一の画像および前記第二の画像間の輝度差を補正するステップと、
前記輝度差が補正された第一の画像および第二の画像を、輝度情報に基づいて合成するステップと、
をコンピュータに実行させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の画像を合成する技術に関する。
【背景技術】
【０００２】
時間的に連続する画像間で、一方の画像上に配置したブロック領域が、他方の画像上のどの領域に対応するかを示す動きベクトルを求めるブロックマッチング法が知られている。また、求めた動きベクトルに基づいて複数の画像間の位置合わせを行い、位置合わせ後の画像を合成することによって、画像のノイズを低減させたり、画像の解像度を高める技術が知られている（特許文献１参照）。
【０００３】
また、商用電源で駆動される照明下で撮影された画像は、画像間や画像内でフリッカによる輝度変化が発生することがあるため、フリッカ補正を行ってから、画像を合成する技術も知られている（特許文献２参照）。
【０００４】
さらに、被写体や撮像装置に動きがあっても精度良くフリッカを補正するために、画像上に複数のフリッカ検出枠を設定して、各枠のフリッカ成分と信頼度を検出し、信頼度の高い枠のフリッカ成分に基づいて、フリッカ補正を行う技術も知られている（特許文献３参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−９９２６０号公報
【特許文献２】特開２００９−２７６３４号公報
【特許文献３】特開２００９−１３０８４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術では、画像間の同一被写体位置において、光軸のずれや照明の変動、また、シャッター速度のバラツキ等によって、画像全体でのわずかな輝度変化が生じた場合に、同一被写体位置の輝度レベルが一致しないという問題が生じる。また、特許文献２および特許文献３に記載の技術では、露光時間のわずかなばらつきなどの撮像装置由来の輝度変化が生じる場合や、照度変化の周期を検出できないわずかな照度差による輝度変化が存在する場合には、輝度補正を精度良く行うことができず、同一被写体位置の輝度レベルが一致しないという問題が生じる。
【０００７】
本発明は、露光時間のわずかなばらつきなどの撮像装置由来の輝度変化が生じる場合や、照明の変動による輝度変化が生じる場合でも、複数の画像間における同一被写体位置の輝度レベルを精度良く合わせてから合成画像を生成する技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のある態様に係る画像処理装置は、第一の画像および第二の画像を合成して、合成画像を生成する画像処理装置であって、前記第一の画像上に設定された複数の領域ごとに、前記第二の画像上で相関性の高い領域を求めることによって、前記第一の画像と前記第二の画像との間の第一の動きベクトルを算出する第一動きベクトル算出部と、前記第一の動きベクトルの信頼性を判定する信頼性判定部と、前記第一の動きベクトルの信頼性が高いと判定された領域内の画素について、前記第一の画像と前記第二の画像との間の輝度差を算出する輝度差算出部と、前記輝度差に基づいて、前記第一の画像および前記第二の画像間の輝度差を補正する輝度補正部と、前記輝度補正部によって輝度差が補正された第一の画像および第二の画像を、輝度情報に基づいて合成する合成部と、
を備える。
【０００９】
本発明の別の態様に係る画像処理方法は、第一の画像および第二の画像を合成して、合成画像を生成する画像処理方法であって、前記第一の画像上に設定された複数の領域ごとに、前記第二の画像上で相関性の高い領域を求めることによって、前記第一の画像と前記第二の画像との間の第一の動きベクトルを算出するステップと、前記第一の動きベクトルの信頼性を判定するステップと、前記第一の動きベクトルの信頼性が高いと判定された領域内の画素について、前記第一の画像と前記第二の画像との間の輝度差を算出するステップと、前記輝度差に基づいて、前記第一の画像および前記第二の画像間の輝度差を補正するステップと、前記輝度差が補正された第一の画像および第二の画像を、輝度情報に基づいて合成するステップと、を備える。
【００１０】
本発明のさらに別の態様に係る画像処理プログラムは、第一の画像および第二の画像を合成して合成画像を生成するための画像処理プログラムであって、前記第一の画像上に設定された複数の領域ごとに、前記第二の画像上で相関性の高い領域を求めることによって、前記第一の画像と前記第二の画像との間の第一の動きベクトルを算出するステップと、前記第一の動きベクトルの信頼性を判定するステップと、前記第一の動きベクトルの信頼性が高いと判定された領域内の画素について、前記第一の画像と前記第二の画像との間の輝度差を算出するステップと、前記輝度差に基づいて、前記第一の画像および前記第二の画像間の輝度差を補正するステップと、前記輝度差が補正された第一の画像および第二の画像を、輝度情報に基づいて合成するステップと、をコンピュータに実行させる。
【発明の効果】
【００１１】
本発明によれば、露光時間のわずかなばらつきなどの撮像装置由来の輝度差が生じる場合や、照明の変動による輝度差が生じる場合でも、複数の画像間における同一被写体位置の輝度レベルを精度良く合わせてから合成画像を生成するので、合成画像の画質を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態における画像処理装置を搭載した撮像装置の構成を示すブロック図である。
【図２】第１の実施形態における画像処理装置によって行われる処理の流れを示すフローチャートである。
【図３】図３（ａ）は、基準画像上に設定された複数のブロックの一例を示す図であり、図３（ｂ）は、探索画像上で、ブロックの動きベクトルを求める方法を説明するための図である。
【図４】再配置探索画像の重みＷを決定するための関数の一例を示す図である。
【図５】第４の実施形態における画像処理装置を搭載した撮像装置の構成を示すブロック図である。
【図６】第４の実施形態における画像処理装置によって行われる処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
−第１の実施形態−
図１は、第１の実施形態における画像処理装置を搭載した撮像装置の構成を示すブロック図である。この撮像装置は、例えば、デジタルカメラであって、画像取得部１０と、フレームメモリ１１と、動きベクトル検出部１２と、合成部１３と、メインコントローラ１４と、画像処理部１５と、輝度補正部１５０とを備える。なお、画像処理装置は、動きベクトル検出部１２、合成部１３、および、輝度補正部１５０により構成される。
【００１４】
画像取得部１０は、図示しないレンズや撮像素子等を含み、撮影によって、時間的に連続した複数の画像を取得し、画像の座標位置に応じた画素値をデジタルデータとしてフレームメモリ１１に格納する。このとき、オプティカルブラック減算処理など、撮像装置で一般的に行われる処理も行われる。
【００１５】
フレームメモリ１１に格納される複数の画像には、動きベクトルを検出するための基準となる画像(以下、基準画像と呼ぶ)と、基準画像に対して動きベクトルを検出するための画像（以下、探索画像と呼ぶ）がある。
【００１６】
フレームメモリ１１に画像を格納する前に、必要に応じて、基準画像および探索画像間における輝度レベル合わせを行っておく。例えば、露光時間の異なる複数の画像を合成することによって、ダイナミックレンジの広い合成画像を生成する場合等のように、意図的に露光レベルが大きく異なる画像間で動きベクトルを求める場合には、意図した露光レベル差に基づいて輝度レベルを合わせる補正処理を行っておく。
【００１７】
なお、フレームメモリ１１に画像を格納する前に、商用電源を用いた照明の周期的な照度変動によるフリッカを補正するために、既知のフリッカ補正処理を行うようにしてもよい。
【００１８】
動きベクトル検出部１２は、フレームメモリ１１から基準画像および探索画像を読み出して、両画像間の動きベクトルを算出する。このため、動きベクトル検出部１２は、ブロック設定部１００と、第一ベクトル算出部１０１と、第一ベクトル信頼性判定部１０２と、ブロック輝度差算出部１０４とを備える。各部で行われる処理の詳細については後述する。
【００１９】
合成部１３は、動きベクトル検出部１２で検出される動きベクトルに基づいて、基準画像および探索画像の位置合わせを行った後、位置合わせ後の両画像の合成を行う。
【００２０】
画像処理部１５は、合成部１３から出力される合成画像に対して、動きベクトルを利用しない一般的な処理を行う。画像処理部１５による処理後の画像は、図示しない記録装置に記録される。記録装置は、例えばカメラ本体に着脱可能なメモリカードからなる記録媒体であるが、これに限定されるものではない。
【００２１】
メインコントローラ１４は、ＤＳＰやＣＰＵ等によって構成され、撮像装置内部の処理を制御する。
【００２２】
図２は、第１の実施形態における画像処理装置によって行われる処理の流れを示すフローチャートである。
【００２３】
ステップＳ１０では、画像取得部１０によって取得された基準画像および探索画像をフレームメモリ１１に格納する。
【００２４】
ステップＳ２０からステップＳ６０までの処理は、動きベクトル検出部１２によって行われる。ステップＳ２０において、ブロック設定部１００は、基準画像上に、動きベクトルを検出するための複数のブロックを設定する。
【００２５】
図３（ａ）は、基準画像３０上に設定された複数のブロック３１の一例を示す図であり、図３（ｂ）は、探索画像４０上で、ブロックの動きベクトルを求める方法を説明するための図である。図３（ａ）に示すように、ブロック３１は、所定の大きさの矩形領域であり、格子状に設定される。図３（ａ）に示す例では、画素数がｘ軸方向にｐ、ｙ軸方向にｑの基準画像３０上に、ブロック３１をｍ列ｎ行に配置している。図３（ａ）において、（ｘ、ｙ）は、各画素の座標を表しており、［ｉ，ｊ］はブロックの位置を表している。
【００２６】
なお、ブロック設定部１００が設定する領域は、図３（ａ）に示すような矩形のブロックに限定されることはない。
【００２７】
ステップＳ３０において、第一ベクトル算出部１０１は、ブロック設定部１００で設定されたブロックごとに、既知のブロックマッチング法を用いて第一の動きベクトルを算出する。ブロックマッチング法は、基準画像３０に設定された各ブロック３１について、探索画像の対応箇所から一定範囲内において相関値を計算し、相関が最も高い位置を求める手法である。ここでは、相関値として、基準画像および探索画像間の画素値（輝度値）の差分の絶対値和であるＳＡＤを算出する。基準画像３０上のあるブロックから（Ｖｘ，Ｖｙ）だけずれた位置における探索画像上の同一サイズのブロック（図３（ｂ）に示す探索画像４０上のブロック４１）との間のＳＡＤは、次式（１）より求まる。
【００２８】
ＳＡＤ（Ｖｘ，Ｖｙ）＝Σ｜Ｌｓ（ｂｅｘ＋Ｖｘ＋ｘ，ｂｅｙ＋Ｖｙ＋ｙ）−Ｌｅ（ｂｅｘ＋ｘ，ｂｅｙ＋ｙ）｜  （ただし、ｘ＝−ｂｈ／２〜＋ｂｈ／２、ｙ＝−ｂｖ／２〜＋ｂｖ／２）                （１）
【００２９】
式（１）において、ｂｈ、ｂｖは、ブロック３１の水平方向、垂直方向の画素数である。（ｂｅｘ，ｂｅｙ）は、基準画像上の指定ブロックの中心位置を示す。Ｌｅ（ｘ，ｙ）は、基準画像における座標（ｘ，ｙ）の輝度値、Ｌｓ（ｘ，ｙ）は、探索画像における座標（ｘ，ｙ）の輝度値である。
【００３０】
探索画像４０において、基準画像３０のブロック３１と対応する位置を中心とする一定範囲内における全ての（Ｖｘ，Ｖｙ）について、式（１）よりＳＡＤを算出し、ＳＡＤが最小となる（Ｖｘ，Ｖｙ）を求める。この（Ｖｘ，Ｖｙ）が第一の動きベクトルとなる。第一ベクトル算出部１０１は、ブロック設定部１００で設定された全てのブロックについて、第一の動きベクトルを算出する。
【００３１】
なお、第一ベクトル算出部１０１は、相関値としてＳＡＤを算出したが、画素値の差分の自乗和である誤差自乗和ＳＳＤや、正規化相互相関ＮＣＣ等を相関値として算出することもできる。
【００３２】
ステップＳ４０において、第一ベクトル信頼性判定部１０２は、第一ベクトル算出部１０１で算出された第一の動きベクトルの確からしさを示す信頼性を判定する。動きベクトルの信頼性を判定する方法には、様々な方法があるが、ここでは、ブロックマッチング法で算出した相関値を利用して、動きベクトルの信頼性を判定する。具体的には、下記（ｉ）、（ｉｉ）の基準により、動きベクトルの信頼性が高いか低いかを判定する。
【００３３】
（ｉ）ブロック内の画像の模様が一様なパターンの場合、異なる（Ｖｘ，Ｖｙ）ごとのＳＡＤの差は小さい。従って、ＳＡＤの最小値と、値が小さい所定数のＳＡＤの平均値（例えば、２番目〜８番目に小さいＳＡＤの平均値）との差が所定の閾値より小さい場合には、信頼性が低いと判断する。
【００３４】
（ｉｉ）画像の模様が繰り返しパターンの場合、一致するパターン位置ごとに、ＳＡＤが極小値をとる。従って、極小値となる各ＳＡＤの差が小さい（所定値より小さい）場合には、信頼性が低いと判断する。
【００３５】
動きベクトルの信頼性を判定する方法は、上記（ｉ）、（ｉｉ）の方法に限定されることはない。第一ベクトル信頼性判定部１０２は、相関値を用いた他の方法により信頼性を判定してもよいし、相関値を用いない方法、例えば、処理対象の動きベクトルと近傍の動きベクトルの類似度によって信頼性を判定することもできる。
【００３６】
ここで、第一ベクトル信頼性判定部１０２によって信頼性が高いと判定された動きベクトルが１つ以下の場合には、ステップＳ４０より後の処理を行わないようにする。
【００３７】
ステップＳ５０において、ブロック輝度差算出部１０４は、基準画像と探索画像において、信頼性が高いと判定されたブロック内の輝度平均値Ｌｂｍ＿ｅ［ｉ，ｊ］、Ｌｂｍ＿ｓ［ｉ，ｊ］を求める。ただし、Ｌｂｍ＿ｅ［ｉ，ｊ］は、基準画像のブロック［ｉ，ｊ］内の輝度平均値を表し、Ｌｂｍ＿ｓ［ｉ，ｊ］は、基準画像のブロック［ｉ，ｊ］に対応する探索画像のブロックの位置から、動きベクトル（Ｖｘ，Ｖｙ）だけずらした位置のブロック内、すなわち、基準画像のブロック［ｉ，ｊ］と最も相関の高い探索画像のブロック内の輝度平均値を表している。
【００３８】
なお、ここでは、ブロック内の輝度の単純な平均値を算出するようにしているが、ブロック内の輝度を正確に反映できる値であれば、単純な平均値に限定されることはない。例えば、ブロックの中央からの距離に応じた加重平均によって被写体の動きの影響を軽減するようにしてもよい。
【００３９】
ステップＳ６０において、ブロック輝度差算出部１０４は、ステップＳ５０で算出した探索画像の輝度平均値Ｌｂｍ＿ｓ［ｉ，ｊ］を用いて、探索画像の輝度補正式を算出する。このため、まず始めに、基準画像の輝度値と探索画像の輝度値との間の近似式を求める。ここでは、回帰分析を利用して、次式（２）による一次式にて、ステップＳ５０で求めた基準画像の輝度平均値Ｌｂｍ＿ｅ［ｉ，ｊ］と探索画像の輝度平均値Ｌｂｍ＿ｓ［ｉ，ｊ］との関係式を定義する。
【００４０】
Ｌｂｍ＿ｅ［ｉ，ｊ］＝ａ＋ｂ×Ｌｂｍ＿ｓ［ｉ，ｊ］          （２）
【００４１】
式（２）において、係数ａ、ｂは、最小二乗法によって求めることができる。探索画像の輝度補正式は、係数ａ，ｂを用いて、次式（３）のように表せる。ただし、式（３）において、Ｌ’ｓ（ｘ，ｙ）は、探索画像における座標（ｘ，ｙ）の画素の補正後の輝度値であり、Ｌｓ（ｘ，ｙ）は、探索画像における座標（ｘ，ｙ）の画素の補正前の輝度値である。
【００４２】
Ｌ’ｓ（ｘ，ｙ）＝ａ＋ｂ×Ｌｓ（ｘ，ｙ）                    （３）
【００４３】
式（３）で表される補正式は、同一被写体と推定される位置の基準画像と探索画像との間の輝度の変化量のみから得られるため、被写体の動きに影響を受けず、基準画像と探索画像との間の露光量のばらつきや、外部照明のわずかな変動による輝度変化のみを補正することが可能となる。
【００４４】
なお、式（２）で表される回帰式、および、式（３）で表される補正式は、一次式に限定されることはなく、例えば、二次以上の多項式で表してもよい。
【００４５】
ステップＳ７０において、輝度補正部１５０は、式（３）より、探索画像において、基準画像と探索画像との間における輝度差を補正した輝度値を算出して、輝度補正後探索画像を生成する。
【００４６】
ステップＳ８０からステップＳ１００までの処理は、合成部１３によって行われる。ステップＳ８０において、位置補正部１６０は、基準画像と探索画像の同一被写体の位置が合致するように、ステップＳ３０で算出した第一の動きベクトルに基づいて、輝度補正後探索画像の各領域内の画素を配置しなおした再配置探索画像を生成する。動きベクトルに基づいて、画像内の領域を配置しなおした再配置画像を生成する方法は、既知の方法であるため、詳しい説明は省略する。
【００４７】
ステップＳ９０において、加算平均部１６１は、基準画像と再配置探索画像の同一座標位置の画素の輝度値を、全ての画素について加重平均を行い、合成画像を生成する。
【００４８】
ここで、加重平均の重みについて説明する。位置合わせに失敗した位置では、被写体が異なるため、基準画像および探索画像間の輝度差が大きくなる場合が多い。従って、位置合わせ後の画像間の輝度差が大きいほど、加算する再配置探索画像の重みを小さくして、異なる被写体部位の輝度の加算を抑制し、合成画像上での多重像やエッジのボケなど、位置合わせの失敗に起因する画質の劣化を抑制する。
【００４９】
基準画像の重みを１に固定した場合、再配置探索画像の重みＷは、輝度差の絶対値が十分小さい場合に１、輝度差の絶対値が十分大きい場合に０となるような関数により定義する。上述した関数の一例を図４に示す。図４において、横軸は、基準画像と再配置探索画像の同一座標位置における画素の輝度値の差の絶対値ΔＬであり、縦軸は、再配置探索画像の重みＷである。
【００５０】
図４に示すように、画像の輝度差の絶対値ΔＬが第１の閾値ＴＨ１より小さい場合には、再配置探索画像の重みＷを１とする。また、画像の輝度差の絶対値ΔＬが第２の閾値ＴＨ２より大きい場合には、再配置探索画像の重みＷを０とする。画像の輝度差の絶対値ΔＬが第１の閾値ＴＨ１以上、かつ、第２の閾値ＴＨ２以下の場合には、ΔＬが大きくなるにしたがって、再配置探索画像の重みＷが小さくなるようにする。
【００５１】
ここで、第１の閾値ＴＨ１および第２の閾値ＴＨ２は、位置合わせが成功した部位のノイズ低減量と、位置合わせが失敗した部位の多重像の程度のバランスがとれるように、実験的に適切な値を求めておく。また、処理画素の輝度値から推定されるノイズレベルを考慮することによって、より適切な閾値を設定することができる。
【００５２】
基準画像と再配置探索画像の同一座標位置における画素の輝度値の差の絶対値ΔＬは、次式（４）により表される。ただし、式（４）において、Ｌｅ（ｘ，ｙ）は、基準画像の座標（ｘ，ｙ）の輝度値であり、Ｌｓ’（ｘ，ｙ）は、再配置探索画像の座標（ｘ，ｙ）の輝度値である。
【００５３】
ΔＬ（ｘ，ｙ）＝｜Ｌｅ（ｘ，ｙ）−Ｌｓ’（ｘ，ｙ）｜        （４）
【００５４】
なお、画像間の輝度差の絶対値ΔＬを求める際に、ノイズの影響を軽減するため、処理中の１画素の輝度値ではなく、その周辺の画素との平均輝度値を用いるようにしてもよい。
【００５５】
再配置探索画像の座標（ｘ，ｙ）の重みＷ（ｘ，ｙ）は、次式（５）により表される。
【００５６】
【数１】
2012070168.tif 000003
【００５７】
なお、探索画像の重みＷを設定する際に、処理画素の近傍に位置するブロックの動きベクトルの信頼性に応じた値を設定するようにしてもよい。例えば、処理画素の近傍に位置するブロックの動きベクトルの信頼性が高ければ、重みＷを大きくし、信頼性が低ければ、重みＷを小さくする。
【００５８】
合成画像の座標（ｘ，ｙ）の輝度Ｌｍ（ｘ，ｙ）は、次式（６）により求めることができる。
【００５９】
Ｌｍ（ｘ，ｙ）＝（Ｌｅ（ｘ，ｙ）＋Ｗ（ｘ，ｙ）×Ｌｓ’（ｘ，ｙ））／（１＋Ｗ（ｘ，ｙ））                        （６）
【００６０】
ここで、仮に、画像の輝度差の絶対値ΔＬに被写体の動き等によらない露光時間のバラツキや照明のわずかな変動等による画像間の輝度差が含まれていると、重みＷ（ΔＬ）は誤差を含むことになる。この場合、基準画像と探索画像を合成する際に、異なる被写体同士なのに、探索画像の重みが大きくなって、生成される合成画像上に多重像が発生したり、また、同一被写体同士なのに、探索画像の重みが小さくなって、生成される合成画像のノイズがあまり低減しない、というような事態が起こりえる。しかし、第１の実施形態における画像処理装置では、画像の輝度差の絶対値ΔＬに、露光時間のバラツキや照明のわずかな変動等による画像間の輝度差が含まれないため、正確な重みＷ（ΔＬ）を算出することができる。これにより、異なる被写体同士の合成なのに、探索画像の重みが大きく設定されるという事態や、同一被写体同士の合成なのに、探索画像の重みが小さく設定されるという事態が起こるのを防ぐことができる。
【００６１】
図２のステップＳ１００において、加算平均部１６１は、基準画像と再配置探索画像の加重平均によって生成された合成画像を画像処理部１５に出力する。
【００６２】
以上、第１の実施形態における画像処理装置によれば、第一の画像上に、動きベクトルを検出するための複数の領域を設定し、設定した複数の領域ごとに、第二の画像上で相関性の高い領域を求めることによって、第一の画像と第二の画像との間の第一の動きベクトルを算出する。続いて、第一の動きベクトルの確からしさを示す信頼性を判定し、第一の動きベクトルの信頼性が高いと判定した領域内の画素について、第一の画像と第二の画像との間の輝度差を算出する。そして、算出した輝度差に基づいて、第一の画像および第二の画像間の輝度差を補正し、輝度差を補正した第一の画像および第二の画像を、輝度情報に基づいて合成する。信頼性が高いと判定された領域、すなわち、同一被写体部位と考えられる位置の画像間の輝度差に基づいて、画像間の輝度差を補正するので、画像全体における、露光時間のバラツキや照明のわずかな変動等による画像間の輝度変化を精度良く補正することができ、同一被写体位置の輝度レベルを正確に一致させることができる。また、輝度差を補正した画像を輝度情報に基づいて合成することによって、合成画像の画質を向上させることができる。
【００６３】
特に、第１の実施形態における画像処理装置によれば、輝度差を補正した第一の画像および第二の画像を、第一の動きベクトルに基づいて位置合わせしてから合成するので、より正確に重ね合わせ合成することができる。
【００６４】
なお、上述した説明では、各画素の輝度値を加重平均することによるノイズ低減処理について説明したが、超解像技術など、複数の画像を合成する他の手法にも、本発明の技術を適用することができる。
【００６５】
−第２の実施形態−
第１の実施形態における画像処理装置では、式（２）および式（３）より、補正後の探索画像の輝度値を算出した。第２の実施形態における動きベクトル検出装置では、輝度が画像の座標位置に応じて変化する場合に、画像の座標位置も考慮して、補正後の探索画像の輝度値を算出する。
【００６６】
例えば、輝度変化が画像の座標位置に線形に依存する場合には、図３に示す座標系を用いて、基準画像のブロック［ｉ，ｊ］内の輝度平均値Ｌｂｍ＿ｅ［ｉ，ｊ］と、探索画像のブロック［ｉ，ｊ］内の輝度平均値Ｌｂｍ＿ｓ［ｉ，ｊ］との関係を次式（７）によって近似する。
【００６７】
Ｌｂｍ＿ｅ［ｉ，ｊ］＝ａ＋ｂ×Ｌｂｍ＿ｓ［ｉ，ｊ］＋ｃ×（ｈ×ｉ＋ｂｅｘ［０，０］）＋ｄ×（ｖ×ｊ＋ｂｅｙ［０，０］）                （７）
【００６８】
ただし、式（７）において、ｈおよびｖは、各ブロックの横および縦の配置間隔を画素座標単位で示したものである（図３（ａ）参照）。また、ｂｅｘ［０，０］およびｂｅｙ［０，０］はそれぞれ、ブロック［０，０］の中心のｘ軸方向における画素座標値およびｙ軸方向における画素座標値である。
【００６９】
式（７）において、係数ａ、ｂ、ｃ、ｄは、最小二乗法によって求めることができる。探索画像の輝度補正式は、係数ａ，ｂ，ｃ，ｄを用いて、次式（８）のように表せる。ただし、式（８）において、Ｌ’ｓ（ｘ，ｙ）は、探索画像における座標（ｘ，ｙ）の画素の補正後の輝度値であり、Ｌｓ（ｘ，ｙ）は、探索画像における座標（ｘ，ｙ）の画素の補正前の輝度値である。
【００７０】
Ｌ’ｓ（ｘ，ｙ）＝ａ＋ｂ×Ｌｓ（ｘ，ｙ）＋ｃ×ｘ＋ｄ×ｙ        （８）
【００７１】
なお、上述した説明では、画像間の輝度差が画像の座標位置に線形に依存する場合について説明したが、像高シェーディングが生じる場合等のように、輝度差が画像の中心からの距離に依存する場合等についても、適切な関係式を設定することにより、補正後の基準画像の輝度値を求めることができる。
【００７２】
また、ブロックを複数含むいくつかの領域に画像を分割し、分割した領域ごとに式（２）および式（３）を適用することによって、領域ごとに、輝度値の補正式を求めるようにしてもよい。この方法でも、画像の座標位置に応じた輝度差に基づいて、補正後の輝度値を求めることができる。
【００７３】
以上、第２の実施形態における画像処理装置によれば、第一の画像と第二の画像との間の輝度差とともに、画像上の画素位置に基づいて、第一の画像および第二の画像の輝度差を補正するので、画像間の輝度差が画像上の位置に依存している場合に、正確に輝度差を補正することができる。
【００７４】
−第３の実施形態−
第３の実施形態における画像処理装置では、信頼性の高いブロックの画像上での位置分布、または、信頼性の高いブロックの輝度値の分布も考慮して、補正後の探索画像の輝度値を算出する。
【００７５】
第３の実施形態における画像処理装置において、輝度補正部１５０は、信頼性が高いと判定されたブロックの画像上の分布の指数として、画像の水平座標と垂直座標の各々で、ブロックの位置座標の平均値と標準偏差を求める。
【００７６】
ここで、信頼性の高いブロックが画像の一隅のみに存在している場合、ブロックの位置座標の平均値は画像の中心座標から外れた位置となり、かつ、標準偏差が画像のサイズに比べて、かなり小さくなる。すなわち、信頼性の高いブロックの位置座標の平均値と画像の中心座標との距離が所定距離以上であり、かつ、信頼性の高いブロックの位置座標の標準偏差が画像のサイズを考慮するとかなり小さい場合に、式（２）および式（３）から求まる補正式では、画像全体の輝度を正しく補正することはできないと判断して、例えば、輝度補正を行わないこととする。
【００７７】
輝度補正部１５０は、また、信頼性が高いと判定されたブロックの平均輝度値から、画像の全輝度を範囲とするヒストグラムを作成する。このヒストグラムで度数が０のクラスが規定の数以上連続して存在していたら、その輝度領域の輝度補正式を正しく求めることができない可能性がある。従って、ヒストグラムで度数が０のクラスが規定の数以上存在しなくなるまで、各ブロックをサブブロックに分割して、輝度補正式を再度算出することを繰り返す。
【００７８】
このように、信頼性の高いブロックの画像上の分布や、信頼性の高いブロックの輝度値の分布を確認することによって、正しくない輝度補正が行われることに起因する合成画像の画質の劣化を防ぐことができる。
【００７９】
なお、信頼性の高いブロックの画像上の分布を考慮した輝度補正式の算出、および、信頼性の高いブロックの輝度値の分布を考慮した輝度補正式の算出は、両方行ってもよいし、どちらか一方を行うようにしてもよい。
【００８０】
以上、第３の実施形態における画像処理装置によれば、第一の動きベクトルの信頼性が高いと判定された領域の画像上の分布、および、第一の動きベクトルの信頼性が高いと判定された領域の輝度値の分布のうちの少なくとも一方の分布に基づいて、第一の画像および第二の画像間の輝度差の補正を行う。信頼性が高いと判定された領域の少ない画像領域や、信頼性が高いと判定された領域の輝度が存在しない画像領域が広範囲な場合、その領域の輝度補正が正しく行えない可能性があるが、第３の実施形態における画像処理装置によれば、そのような問題が生じるのを防いで、輝度補正を精度良く行うことができる。
【００８１】
−第４の実施形態−
第４の実施形態における画像処理装置では、輝度補正後の探索画像と基準画像との間の動きベクトルを求め、求めた動きベクトルに基づいて、輝度補正後探索画像と基準画像との間の位置合わせを行ってから合成処理を行う。
【００８２】
図５は、第４の実施形態における画像処理装置を搭載した撮像装置の構成を示すブロック図である。図１に示す第１の実施形態における画像処理装置を搭載した撮像装置と同じ構成ブロックについては、同一の符号を付して詳しい説明は省略する。なお、図では省略しているが、第１の実施形態と同様に、合成部１３は、位置補正部１６０および加算平均部１６１を備えている。
【００８３】
第二ベクトル算出部１７０は、輝度補正部１５０で生成された輝度補正後探索画像と、基準画像との間で、動きベクトルを算出する。ここでは、輝度補正後探索画像と基準画像との間の動きベクトルを第二の動きベクトルと呼ぶ。
【００８４】
図６は、第４の実施形態における画像処理装置によって行われる処理の流れを示すフローチャートである。図２に示すフローチャートの処理と同一の処理を行うステップについては、同一の符号を付して詳しい説明は省略する。
【００８５】
ステップＳ７０に続くステップＳ６００において、第二ベクトル算出部１７０は、ステップＳ７０で生成された輝度補正後探索画像と基準画像とに基づいて、第二の動きベクトルを算出する。第二の動きベクトルの算出では、第一の動きベクトルの算出方法と同じ方法を用いてもよいし、輝度レベルの相違に基づいて動きベクトルを算出する別の方法を用いてもよい。第二の動きベクトルは、輝度補正後の探索画像と基準画像との間の動きベクトルであるため、ベクトル算出時に求める相関値（ＳＡＤ値）に、輝度差に起因する誤差が含まれず、第一の動きベクトルより精度が高い。
【００８６】
なお、第二ベクトル算出部１７０は、全てのブロックを対象として、第二の動きベクトルを算出するのではなく、第一ベクトル信頼性判定部１０２で判定された信頼性が低いブロックのみを対象として、第二の動きベクトルを算出するようにしてもよい。
【００８７】
また、第一ベクトル算出部１０１と第二ベクトル算出部１７０は、それぞれ別の機能ブロックとしているが、ハードウェア規模の縮小のために、共用するようにしてもよい。
【００８８】
ステップＳ６１０において、合成部１３の位置補正部１６０は、基準画像と探索画像の同一被写体の位置が合致するように、ステップＳ６００で算出した第二の動きベクトルに基づいて、輝度補正後探索画像の各領域内の画素を配置しなおした再配置探索画像を生成する。動きベクトルに基づいて、画像内の領域を配置しなおした再配置画像を生成する方法は、既知の方法であるため、詳しい説明は省略する。
【００８９】
ステップＳ６１０に続くステップＳ９０およびステップＳ１００の処理は、図２に示すフローチャートのステップＳ９０およびステップＳ１００の処理と同じである。
【００９０】
なお、第１の実施形態で説明したように、ステップＳ９０において、加算平均部１６１が探索画像の重みＷを設定する際に、処理画素の近傍に位置するブロックの信頼性に応じた値を設定するようにしてもよい。ただし、ブロックの信頼性、すなわち、動きベクトルの信頼性は、第二ベクトル算出部１７０で算出される第二の動きベクトルの信頼性を算出して用いる。この場合、第二の動きベクトルの信頼性を判定する機能ブロックは、別途設けてもよいし、第一ベクトル信頼性判定部１０２と共用するようにしてもよい。
【００９１】
第二の動きベクトルの信頼性は、例えば、周辺ブロックの動きベクトルとの相関に基づいて、または、相関値の大きさに基づいて判定する。周辺ブロックの動きベクトルとの相関に基づいて信頼性を判定する場合には、周辺ブロックの動きベクトルとの相関が低ければ、その動きベクトルの信頼性は低いと判定する。また、相関値の大きさに基づいて信頼性を判定する場合には、相関値ＳＡＤが所定の判定値より大きい場合に、その動きベクトルの信頼性は低いと判定する。ただし、第二の動きベクトルの信頼性を判定する方法は、上述した方法に限定されることはない。
【００９２】
以上、第４の実施形態における画像処理装置によれば、輝度差が補正された第一の画像および第二の画像間の第二の動きベクトルを算出し、輝度差が補正された第一の画像および第二の画像を、第二の動きベクトルに基づいて位置合わせしてから合成する。輝度差が補正された画像間で算出される第二の動きベクトルは、輝度差が補正される前の画像間で算出される第一の動きベクトルよりも精度が高いので、輝度差が補正された画像を第二の動きベクトルに基づいて位置合わせしてから合成することによって生成される合成画像の画質を向上させることができる。
【００９３】
なお、上述した第１〜第４の実施形態の説明では、画像処理装置が行う処理としてハードウェアによる処理を前提としていたが、このような構成に限定される必要はない。例えば、別途ソフトウェアにて処理する構成も可能である。この場合、画像処理装置は、ＣＰＵ、ＲＡＭ等の主記憶装置、上記処理の全て或いは一部を実現させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体を備えている。ここでは、このプログラムを画像処理プログラムと呼ぶ。そして、ＣＰＵが上記記憶媒体に記憶されている画像処理プログラムを読み出して、情報の加工・演算処理を実行することにより、上述の画像処理装置と同様の処理を実現させる。
【００９４】
ここで、コンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、この画像処理プログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該画像処理プログラムを実行するようにしても良い。
【００９５】
本発明は、上述した第１〜第４の実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【符号の説明】
【００９６】
１０…画像取得部
１３…合成部
１００…ブロック設定部
１０１…第一ベクトル算出部（第一動きベクトル算出部）
１０２…第一ベクトル信頼性判定部（信頼性判定部）
１０４…ブロック輝度差算出部（輝度差算出部）
１５０…輝度補正部
１７０…第二ベクトル算出部（第二動きベクトル算出部）
【図１】
2012070168.tif 000004
【図２】
2012070168.tif 000005
【図３】
2012070168.tif 000006
【図４】
2012070168.tif 000007
【図５】
2012070168.tif 000008
【図６】
2012070168.tif 000009