(57)【特許請求の範囲】
【請求項１】
ＸＹアドレス走査型の撮像素子によって撮影された画像データを入力し、行単位の信号量の積分値を算出する積分処理部と、
前記行単位の信号量の積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出するフリッカ成分算出部と、
前記フリッカ成分算出部の算出したフリッカ成分の逆相パターンからなるフリッカ補正係数を算出するフリッカ補正係数算出部と、
前記フリッカ補正係数算出部の算出したフリッカ補正係数を適用した補正処理を実行する補正部を有し、
前記フリッカ成分算出部は、
フリッカ成分検出対象とする画像フレームの行単位の信号量の積分値ＲＰａと、
同一位相のフリッカが発生するフレーム周期の一単位に含まれる複数の画像フレームとして定義される基準フレームの対応画素の信号値を加算した積分フレームの行単位の信号量である複数フレーム積分信号量ＲＰｂとに基づくフリッカ成分ＦＬの算出式、
フリッカ成分：ＦＬ＝ＲＰａ／Ｒｐｂ、
上記算出式に従って、フリッカ成分検出対象とする画像フレームの各行に含まれるフリッカ成分ＦＬを検出する処理を行い、
前記フリッカ補正係数算出部は、
前記フリッカ成分算出部の算出したフリッカ成分ＦＬの逆相パターンからなるフリッカ補正係数を、
補正係数＝２−ＦＬ
上記算出式に従って算出する画像処理装置。
【請求項２】
前記画像処理装置は、さらに、
連続する画像フレームから被写体動きのない静止フレームを検出する静止フレーム検出部を有し、
前記フリッカ成分算出部は、
前記静止フレーム検出部の検出した静止フレームから、前記基準フレームを選択する請求項１に記載の画像処理装置。
【請求項３】
前記フリッカ補正係数算出部は、
フリッカ補正対象とする画像フレームのフリッカ位相情報を位相シフト量算出部から入力し、フリッカ位相情報に応じて位相を調整した画像フレーム対応のフリッカ補正係数を算出する請求項１〜２いずれかに記載の画像処理装置。
【請求項４】
前記画像処理装置は、さらに、
前記フリッカ成分算出部の算出したフレーム単位のフリッカ成分から信頼度の高いフリッカ成分のみを選択し、複数フレームのフリッカ成分を合成して合成フリッカ成分を生成するフリッカ成分合成部を有し、
前記フリッカ補正係数算出部は、前記合成フリッカ成分の逆相パターンからなるフリッカ補正係数を算出する請求項１〜３いずれかに記載の画像処理装置。
【請求項５】
前記フリッカ成分合成部は、
フレーム単位のフリッカ成分の信頼度を画像フレームの輝度情報にもとづいて判定し、予め規定した輝度閾値以上の輝度を持つ画素対応のフリッカ成分のみを信頼度の高いフリッカ成分として選択する処理を行う請求項４に記載の画像処理装置。
【請求項６】
前記積分処理部は、色信号（カラーチャンネル）個別に前記行単位の信号量の積分値を算出し、
前記フリッカ成分算出部は、前記色信号個別のフリッカ成分を検出し、
前記フリッカ補正係数算出部は、前記色信号個別のフリッカ補正係数を算出し、
前記補正部は、フリッカ補正係数算出部の算出した色信号個別のフリッカ補正係数を適用した補正処理を実行する請求項１〜５いずれかに記載の画像処理装置。
【請求項７】
前記画像処理装置は、さらに、
入力画像がフリッカを発生する照明環境下で撮影されたかどうかの判定を行うフリッカシーン判定部を有し、
前記フリッカシーン判定部において、画像がフリッカを発生する照明環境下で撮影された場合にフリッカ補正係数を算出して補正処理を実行する請求項１〜６いずれかに記載の画像処理装置。
【請求項８】
前記画像処理装置は、
複数の異なる露光時間の画像を合成して広ダイナミックレンジ画像の生成前の処理として、
同一露光時間の連続撮影画像のセット単位で、前記フリッカ補正係数を適用した補正処理を実行する請求項１〜７いずれかに記載の画像処理装置。
【請求項９】
前記ＸＹアドレス走査型の撮像素子はＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅｓ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）撮像素子である請求項１〜８いずれかに記載の画像処理装置。
【請求項１０】
撮像部と、
請求項１〜９いずれかに記載の画像処理を実行する信号処理部を備えた撮像装置。
【請求項１１】
画像処理装置において実行する信号処理方法であり、
積分処理部が、ＸＹアドレス走査型の撮像素子によって撮影された画像データを入力し、行単位の信号量の積分値を算出する積分処理ステップと、
フリッカ成分算出部が、前記行単位の信号量の積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出するフリッカ成分算出ステップと、
フリッカ補正係数算出部が、前記フリッカ成分算出ステップにおいて算出したフリッカ成分の逆相パターンからなるフリッカ補正係数を算出するフリッカ補正係数算出ステップと、
補正部が、前記フリッカ補正係数算出ステップにおいて算出したフリッカ補正係数を適用した補正処理を実行する補正ステップを実行し、
前記フリッカ成分算出ステップは、
フリッカ成分検出対象とする画像フレームの行単位の信号量の積分値ＲＰａと、
同一位相のフリッカが発生するフレーム周期の一単位に含まれる複数の画像フレームとして定義される基準フレームの対応画素の信号値を加算した積分フレームの行単位の信号量である複数フレーム積分信号量ＲＰｂとに基づくフリッカ成分ＦＬの算出式、
フリッカ成分：ＦＬ＝ＲＰａ／Ｒｐｂ、
上記算出式に従って、フリッカ成分検出対象とする画像フレームの各行に含まれるフリッカ成分ＦＬを検出する処理を行うステップであり、
前記フリッカ補正係数算出ステップは、
前記フリッカ成分算出部の算出したフリッカ成分ＦＬの逆相パターンからなるフリッカ補正係数を、
補正係数＝２−ＦＬ
上記算出式に従って算出するステップである信号処理方法。
【請求項１２】
画像処理装置において信号処理を実行させるプログラムであり、
積分処理部に、ＸＹアドレス走査型の撮像素子によって撮影された画像データを入力し、行単位の信号量の積分値を算出させる積分処理ステップと、
フリッカ成分算出部に、前記行単位の信号量の積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出させるフリッカ成分算出ステップと、
フリッカ補正係数算出部に、前記フリッカ成分算出ステップにおいて算出したフリッカ成分の逆相パターンからなるフリッカ補正係数を算出させるフリッカ補正係数算出ステップと、
補正部に、前記フリッカ補正係数算出ステップにおいて算出したフリッカ補正係数を適用した補正処理を実行させる補正ステップを実行させ、
前記フリッカ成分算出ステップは、
フリッカ成分検出対象とする画像フレームの行単位の信号量の積分値ＲＰａと、
同一位相のフリッカが発生するフレーム周期の一単位に含まれる複数の画像フレームとして定義される基準フレームの対応画素の信号値を加算した積分フレームの行単位の信号量である複数フレーム積分信号量ＲＰｂとに基づくフリッカ成分ＦＬの算出式、
フリッカ成分：ＦＬ＝ＲＰａ／Ｒｐｂ、
上記算出式に従って、フリッカ成分検出対象とする画像フレームの各行に含まれるフリッカ成分ＦＬを検出する処理を行わせるステップであり、
前記フリッカ補正係数算出ステップは、
前記フリッカ成分算出部の算出したフリッカ成分ＦＬの逆相パターンからなるフリッカ補正係数を、
補正係数＝２−ＦＬ
上記算出式に従って算出させるステップであるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、および信号処理方法、並びにプログラムに関する。さらに詳細には、カメラの撮影画像に発生するフリッカを抑制した画像を生成する画像処理装置、および信号処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
蛍光灯の照明の下で、ＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅｓ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）撮像素子などＸＹアドレス走査型の撮像素子を備えたカメラで画像を撮影すると、映像信号に縞状の輝度ムラや色ムラが発生する。この現象はフリッカと呼ばれる。これは、商用電源（交流）に接続された蛍光灯が基本的に電源周波数の２倍の周期で点滅を繰り返していることと撮像素子の動作原理に起因する。
【０００３】
図１を参照してＣＭＯＳイメージセンサによる撮影画像におけるフリッカ発生原理について説明する。図１には、以下のデータを示している。
（ａ）蛍光灯の輝度変化
（ｂ）ＣＭＯＳイメージセンサの撮像（露光）シーケンスの模式図
（ｃ）ＣＭＯＳイメージの読み出しタイミング
（ｄ）出力画像のイメージ
図１において時間（ｔ）は左から右に経過している。
【０００４】
蛍光灯は、５０Ｈｚの商用電源地域で動作していることを想定している。この場合蛍光灯は電源周波数（５０Ｈｚ）の２倍の周波数１００Ｈｚで点滅を繰り返している。（ａ）に示す円弧状のカーブは蛍光灯の輝度変化を示している。１００ＨＺ、すなわち１／１００秒単位の周期で輝度変化を発生させている。
【０００５】
このような照明環境下で毎秒６０フレームのフレームレートでローリングシャッタを有するＣＭＯＳイメージセンサで画像撮影を行う。露光処理は時間経過に伴い、各撮影フレームの上端行（ＲＯＷ）から下端行（ＲＯＷ）に向かって順次、行われる。
【０００６】
（ｂ）に示すＣＭＯＳイメージセンサの撮像模式図において、斜め点線がイメージセンサのリセットのタイミングを示すラインであり、斜めの実線が読み出しのタイミングを示すラインである。点線で示すリセット後に露光が開始され、実線で示す読み出しタイミングまでの期間が露光時間となる。ローリングシャッタによりフレームの上部のスキャンラインから下部のスキャンラインに向かって露光が行われている。
【０００７】
隣り合う２本の斜めの実線に囲まれた領域がイメージセンサの１フレームを示している。点線と実線とではさまれた露光時間には、照明の輝度変化に対応する輝度変化が発生している。すなわち、画像フレームを構成する各行ごとに露光タイミングが異なるため、輝度変化のある光源の影響により、図１の（ｄ）出力画像に示すように横縞状のムラ、いわゆるフリッカが発生する。
【０００８】
図１の（ｄ）出力画像にはフレーム＃１〜フレーム＃４の４枚の連続撮影画像を示している。毎秒６０フレームのフレームレート（６０ｆｐｓ）で撮影された動画を構成する画像フレーム＃１〜＃４である。
フレーム＃３には上端部ｐ，中間部ｑ，下端部ｒをそれぞれ示している。これらは、（ｂ）に示すＣＭＯＳイメージセンサの撮像模式図における露光時間ｐ，ｑ，ｒとの対応位置を明示するために示している。
フレーム＃３の上端部ｐは、蛍光灯の輝度が明るい期間に露光された行部分である。
フレーム＃３の中間部ｑは、蛍光灯の輝度が暗い期間から明るい期間に変化する期間に露光された行部分である。
フレーム＃３の下端部ｒは、蛍光灯の輝度が暗い期間に露光された行部分に対応する。
このように各行（Ｒｏｗ）の露光期間の蛍光灯輝度が一致しないため輝度ムラや色ムラに基づく縞模様が発生する。
【０００９】
なお、一般的な撮像素子は、撮像素子の構成画素単位で例えばＲＧＢ各波長光のいずれかを選択的に入力する構成を有している。このＲＧＢ配列としては例えばベイヤ（Ｂａｙｅｒ）配列が知られている。例えばベイヤ（Ｂａｙｅｒ）配列等を有するカラーのイメージセンサで撮像を行った場合、蛍光灯の蛍光体の残光特性の波長依存性により、色信号（カラーチャンネル）ごとにフリッカの影響度が異なり、振幅や位相の相違により色ムラが発生することになる。
【００１０】
このようなフリッカを防止または抑制する技術を開示した従来技術として例えば特許文献１（特開２００７−１７４５３７号公報）がある。特許文献１（特開２００７−１７４５３７号公報）は、撮像素子の露光時間を電子シャッタ等の設定により制御することで、１つの撮影画像の各行の露光時間を調整して行間の明暗差を少なくする処理を開示している。しかし、この手法は、撮像素子の露光時間に制約を設けることになり、撮影環境に応じて任意の電子シャッタ設定が行えず、撮影の自由度が低下するという問題がある。
【００１１】
また、特許文献２（特開２００５−３４７９３９号公報）は、上記の問題を回避するため、撮影処理により得られた画像信号に対する補正処理を行い、映像信号中の蛍光灯フリッカの影響を抑制する構成を提案している。
この特許文献２（特開２００５−３４７９３９号公報）は、蛍光灯の点灯波形（フリッカ波形）を正弦波で近似モデル化した上で、カメラの撮影した画像信号に対する補正処理時の補正ゲインを近似モデルに対応させて変更して補正処理を行うものである。この補正処理により蛍光灯の点灯波形（フリッカ波形）に応じた画像信号の補正が行われ、撮影画像の行間の明暗差を抑制する構成を実現している。
【００１２】
しかし、実際の蛍光灯の輝度変化は、特許文献２において利用している近似モデルである正弦波に一致するとは限らない。図２に正弦波の近似モデルと実際の蛍光灯の輝度変化の一例との対比図を示す。例えば商用電源にリップルがのっているような状況下では、図２に示すように実際の蛍光灯の点灯波形（実線）とモデル波形（点線）とは異なる輝度変化となる。
一般的な蛍光灯の輝度変化は、正弦波の近似モデルに一致することはなく、多くの場合、図２に示す実線のように複雑な輝度変化を発生させる。
【００１３】
上述の特許文献２の処理では、この正弦波の近似モデルと現実との乖離を考慮しておらず、モデル波形を利用したフリッカ補正処理を行っても、補正処理結果として得られる画像には現実の蛍光灯の輝度変化に基づくフリッカの影響が残存してしまうという問題がある。
【００１４】
現実の蛍光灯の輝度変化に基づくフリッカの影響は、露光時間が短くなるとより顕著となる。露光時間が短くなると図１（ｂ）に示す斜めの実線および点線ラインの間隔が小さくなり、その結果として実際の蛍光灯の輝度変化の影響をより強く受けることになる。
図３、および図４に撮像素子（イメージセンサ）の露光時間の相違によるフリッカ波形の変化を示す。なお、ここでフリッカ波形とは撮影画像に出現する各行の輝度ムラを示す波形である。
【００１５】
図３、図４とも、ローリングシャッタを有するＣＭＯＳイメージセンサによって６０フレーム／秒（６０ｆｐｓ）で撮影を行ったときの映像信号中のフリッカ波形を示している。連続する４枚のフレームであるフレーム＃１〜＃４のフリッカ波形を示している。
各グラフにおいて、横読がイメージセンサの行番号であり、縦軸が各行の正規化輝度（フリッカ輝度）である。なお、正規化輝度は、被写体の輝度の影響を除外して生成される行単位の相対的な輝度の対比情報である。
【００１６】
図３は、イメージセンサの露光時間が長い１／６０［ｓｅｃ］の場合のフレーム＃１〜＃４のフリッカ波形を示している。
図４は、イメージセンサの露光時間が短い１／５００［ｓｅｃ］の場合のフレーム＃１〜＃４のフリッカ波形を示している。
【００１７】
図３に示す露光時間の長い１／６０［ｓｅｃ］の場合、各画像フレーム＃１〜＃４に出現するフリッカ波形は、なだらかな曲線を示している。これは、先に図２を参照して説明したモデル波形としての正弦波に近いラインである。
一方、図４に示す露光時間の短い１／５００［ｓｅｃ］の場合、各画像フレーム＃１〜＃４に出現するフリッカ波形は、図３に示す正弦波に近い曲線とは異なり、先に図２を参照して説明した実波形に近いラインとなっている。
【００１８】
このようにＣＭＯＳイメージセンサの露光時間が短くなるほど、映像信号に現れる蛍光灯フリッカによる横縞状の輝度ムラ・色ムラの分布が、実際のフリッカ波形に近くなってくる。
【００１９】
近年、一般的になりつつある高フレームレート撮像や、広ダイナミックレンジ撮像における高速シャッタ撮像では、短い露光時間での撮影が実行される。このような撮影処理では、モデル波形と実際のフリッカ波形との乖離が映像上でも顕在化する。従って、前述の特許文献２に記載されたモデル波形を用いた信号処理方法では、フリッカの発生を抑制する効果的な補正を行うことができない。
【先行技術文献】
【特許文献】
【００２０】
【特許文献１】特開２００７−１７４５３７号公報
【特許文献２】特開２００５−３４７９３９号公報
【発明の概要】
【発明が解決しようとする課題】
【００２１】
本発明は、例えば、このような状況を鑑みて考案されたものであり、蛍光灯の照明の輝度変化のモデル波形を適用するのではなく、撮影画像を利用して画像撮影時の実際の照明の輝度変化を推定し、この推定された実波形を利用した補正処理、具体的には推定された実波形を考慮した補正ゲインを設定して画像補正処理を実行して効果的にフリッカの発生を防止または抑制することを可能とした画像処理装置、および信号処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２２】
本発明の第１の側面は、
ＸＹアドレス走査型の撮像素子によって撮影された画像データを入力し、行単位の信号量の積分値を算出する積分処理部と、
前記行単位の信号量の積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出するフリッカ成分算出部と、
前記フリッカ成分算出部の算出したフリッカ成分の逆相パターンからなるフリッカ補正係数を算出するフリッカ補正係数算出部と、
前記フリッカ補正係数算出部の算出したフリッカ補正係数を適用した補正処理を実行する補正部を有する画像処理装置にある。
【００２３】
さらに、本発明の画像処理装置の一実施態様において、前記フリッカ成分算出部は、フリッカ成分検出対象とする画像フレームの行単位の信号量の積分値と、同一位相のフリッカが発生するフレーム周期の一単位に含まれる複数の画像フレームとして定義される基準フレームの対応画素の信号値を加算した積分フレームの行単位の信号量である複数フレーム積分信号量との比較により、フリッカ成分検出対象とする画像フレームの各行に含まれるフリッカ成分を検出する処理を行う。
【００２４】
さらに、本発明の画像処理装置の一実施態様において、前記画像処理装置は、さらに、連続する画像フレームから被写体動きのない静止フレームを検出する静止フレーム検出部を有し、前記フリッカ成分算出部は、前記静止フレーム検出部の検出した静止フレームから、前記基準フレームを選択する。
【００２５】
さらに、本発明の画像処理装置の一実施態様において、前記フリッカ補正係数算出部は、フリッカ補正対象とする画像フレームのフリッカ位相情報を位相シフト量算出部から入力し、フリッカ位相情報に応じて位相を調整した画像フレーム対応のフリッカ補正係数を算出する。位相シフト量算出部は、複数枚のフレームから抽出されたフリッカ成分を合成し、フリッカの１周期分以上のフリッカ成分よりフリッカの位相シフト量を推定する。
【００２６】
さらに、本発明の画像処理装置の一実施態様において、前記画像処理装置は、さらに、前記フリッカ成分算出部の算出したフレーム単位のフリッカ成分から信頼度の高いフリッカ成分のみを選択し、複数フレームのフリッカ成分を合成して合成フリッカ成分を生成するフリッカ成分合成部を有し、前記フリッカ補正係数算出部は、前記合成フリッカ成分の逆相パターンからなるフリッカ補正係数を算出する。
【００２７】
さらに、本発明の画像処理装置の一実施態様において、前記フリッカ成分合成部は、フレーム単位のフリッカ成分の信頼度を画像フレームの輝度情報にもとづいて判定し、予め規定した輝度閾値以上の輝度を持つ画素対応のフリッカ成分のみを信頼度の高いフリッカ成分として選択する処理を行う。
【００２８】
さらに、本発明の画像処理装置の一実施態様において、前記積分処理部は、色信号（カラーチャンネル）個別に前記行単位の信号量の積分値を算出し、前記フリッカ成分算出部は、前記色信号個別のフリッカ成分を検出し、前記フリッカ補正係数算出部は、前記色信号個別のフリッカ補正係数を算出し、前記補正部は、フリッカ補正係数算出部の算出した色信号個別のフリッカ補正係数を適用した補正処理を実行する。
【００２９】
さらに、本発明の画像処理装置の一実施態様において、前記画像処理装置は、さらに、入力画像がフリッカを発生する照明環境下で撮影されたかどうかの判定を行うフリッカシーン判定部を有し、前記フリッカシーン判定部において、画像がフリッカを発生する照明環境下で撮影された場合にフリッカ補正係数を算出して補正処理を実行する。
【００３０】
さらに、本発明の画像処理装置の一実施態様において、前記画像処理装置は、複数の異なる露光時間の画像を合成して広ダイナミックレンジ画像の生成前の処理として、同一露光時間の連続撮影画像のセット単位で、前記フリッカ補正係数を適用した補正処理を実行する。
【００３１】
さらに、本発明の画像処理装置の一実施態様において、前記ＸＹアドレス走査型の撮像素子はＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅｓ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）撮像素子である。
【００３２】
さらに、本発明の第２の側面は、
撮像部と、上記いずれかに記載の画像処理を実行する信号処理部を備えた撮像装置にある。
【００３３】
さらに、本発明の第３の側面は、
画像処理装置において実行する信号処理方法であり、
積分処理部が、ＸＹアドレス走査型の撮像素子によって撮影された画像データを入力し、行単位の信号量の積分値を算出する積分処理ステップと、
フリッカ成分算出部が、前記行単位の信号量の積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出するフリッカ成分算出ステップと、
フリッカ補正係数算出部が、前記フリッカ成分算出ステップにおいて算出したフリッカ成分の逆相パターンからなるフリッカ補正係数を算出するフリッカ補正係数算出ステップと、
補正部が、前記フリッカ補正係数算出ステップにおいて算出したフリッカ補正係数を適用した補正処理を実行する補正ステップを実行する信号処理方法にある。
【００３４】
さらに、本発明の第４の側面は、
画像処理装置において信号処理を実行させるプログラムであり、
積分処理部に、ＸＹアドレス走査型の撮像素子によって撮影された画像データを入力し、行単位の信号量の積分値を算出させる積分処理ステップと、
フリッカ成分算出部に、前記行単位の信号量の積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出させるフリッカ成分算出ステップと、
フリッカ補正係数算出部に、前記フリッカ成分算出ステップにおいて算出したフリッカ成分の逆相パターンからなるフリッカ補正係数を算出させるフリッカ補正係数算出ステップと、
補正部に、前記フリッカ補正係数算出ステップにおいて算出したフリッカ補正係数を適用した補正処理を実行させる補正ステップを実行させるプログラムにある。
【００３５】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【００３６】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００３７】
本発明の一実施例の構成によれば、輝度変化のある蛍光灯のような照明環境下において、ＣＭＯＳのようなＸＹアドレス走査型の撮像素子によって撮影された画像データに発生するフリッカを効果的に除去または削減する構成が実現される。本発明の画像処理装置は、フリッカの除去を行う補正対象画像の行単位の信号量の積分値を算出し、この積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出する。この検出フリッカ成分は、実際の照明のフリッカ波形に応じたデータとなる。このフリッカ成分の逆相パターンからなるフリッカ補正係数を算出して、フリッカ成分の位相変動量については随時検出、補正係数への反映を行うことにより、フリッカ補正係数を適用した補正処理を実行する。この処理により実際のフリッカ波形に応じた補正が可能となり、効果的なフリッカの除去が実現される。
【図面の簡単な説明】
【００３８】
【図１】ＣＭＯＳイメージセンサによる撮影画像におけるフリッカ発生原理について説明する図である。
【図２】正弦波の近似モデルと実際の蛍光灯の輝度変化の一例との対比図である。
【図３】撮像素子（イメージセンサ）の露光時間の相違によるフリッカ波形の変化を示す図である。
【図４】撮像素子（イメージセンサ）の露光時間の相違によるフリッカ波形の変化を示す図である。
【図５】本発明の画像処理装置の一実施例である撮像装置の構成例について説明する図である。
【図６】フリッカ補正処理を実行するフリッカ補正処理部の構成、および処理の詳細について説明する図である。
【図７】静止フレーム検出部２０３の実行する静止フレーム検出処理について説明する図である。
【図８】フリッカ成分算出部２０５の実行するフリッカ成分算出処理について説明する図である。
【図９】フリッカ成分算出部２０５の実行するフリッカ成分算出処理について説明する図である。
【図１０】フリッカ成分合成部２０６の実行する精度の高いフリッカ成分の算出処理について説明する図である。
【図１１】フリッカ補正係数算出部２０７の実行するフリッカ補正係数の算出処理について説明する図である。
【図１２】フリッカ補正係数算出部２０７の算出したフリッカ補正係数を適用した補正処理について説明する図である。
【図１３】本発明の画像処理装置の実行する処理のシーケンスの一例について説明するフローチャート示す図である。
【発明を実施するための形態】
【００３９】
以下、図面を参照しながら、本発明の画像処理装置、および信号処理方法、並びにプログラムについて説明する。なお、以下に説明する実施例は、ＸＹアドレス走査型の撮像素子としてＣＭＯＳイメージセンサを用いた撮像装置を利用した実施例である。また、画像を撮影する照明環境は５０Ｈｚの電源周波数による蛍光灯の照明環境下とし、撮影画像は６０フレーム／秒（６０ｆｐｓ）の映像撮影を行ったと想定した処理例である。ただし、本発明は、上記設定の撮影条件に限らず、様々な撮影環境での撮影画像に対する処理として適用可能である。
【００４０】
説明は以下の項目順に行う。
１．画像処理装置の構成例について
２．フリッカ補正処理部の構成および処理の詳細について
３．本発明の画像処理装置の処理シーケンス例について
４．広ダイナミックレンジ画像に対応する処理について
【００４１】
［１.画像処理装置の構成例について］
まず、本発明の画像処理装置の一実施例である撮像装置の構成例について、図５を参照して説明する。
図５は、本発明の一実施例にかかる撮像装置１００の全体構成を示すブロック図である。撮像装置１００は、撮像部１０１、信号処理部１０２、コーデック（符号化復号処理部）１０３、記録再生部１０４、記録メディア１２０、表示部１３０、制御部１５０、メモリ１５１を有する。
【００４２】
撮像部１０１は、レンズや撮像素子等によって構成される。撮像素子は、ＸＹアドレス走査型の撮像素子であるＣＭＯＳイメージセンサである。ＸＹアドレス走査型の撮像素子であるＣＭＯＳイメージセンサは、先に図１を参照して説明したように、時間経過に従って順次、上段行から下段行に向かって露光処理が行われる。ＣＭＯＳイメージセンサによる受光信号は、光電変換され電気信号として信号処理部１０２に入力される。
【００４３】
信号処理部１０２は、一般的なカメラ信号処理として実行されるホワイトバランス調整、ガンマ補正、あるいはデモザイク処理等の処理の他、本発明に従ったフリッカ補正処理を実行する。フリッカ補正処理を実行するフリッカ補正処理部の構成、および処理の詳細については、図６以下を参照して後段で説明する。
【００４４】
信号処理部１０２における信号処理の結果として得られたデータはコーデック（符号化復号処理部）１０３に入力される。また、表示部１３０に出力され表示処理が実行される。コーデック１０３では例えばＭＰＥＧ符号化処理等、予め規定された符号化処理を実行し、処理結果を記録再生部１０４に出力する。
【００４５】
記録再生部１０４は、予め規定された記録フォーマットに従って、記録メディア１２０に対する撮影画像の記録処理を実行する。記録メディア１２０はたとえばフラッシュメモリ、磁気ディスク、光ディスクなどのデータ記録可能なメディアである。
【００４６】
なお、記録メディア１２０に記録された画像の再生を行う場合は、記録再生部部１０４が記録メディア１２０からのデータ読み出しを実行し、読み出されたデータがコーデック１０３に提供され、復号処理が実行される。復号処理の結果として得られる画像が表示部１３０に表示される。
【００４７】
なお、これらの各構成部の制御は、制御部１５０がメモリ１５１に予め記録されたプログラムに従って実行する。制御部１５０はプログラム実行機能を持つＣＰＵを有する。メモリ１５１はＲＡＭ，ＲＯＭ等によって構成される。
【００４８】
［２．フリッカ補正処理部の構成および処理の詳細について］
次に、信号処理部１０２内の一部構成として設定されるフリッカ補正処理部の構成例について図６を参照して説明する。
図６に本発明の一実施例に係るフリッカ補正処理部２００の全体構成を示すブロック図を示す。
【００４９】
以下に説明する実施例において、フリッカ補正処理部２００は、撮像部１０１を構成するイメージセンサで取得されるＲＡＷ画像を入力し、ＲＡＷ画像に対するフリッカ補正処理を行う。なお、ＲＡＷ画像はイメージセンサからの出力直後のデータであり、デモザイク処理等の信号処理が施される前の生データである。デモザイク処理は、イメージセンサの各画素対応のデータとして例えばＲＧＢのすべての画素値を設定する処理であり、デモザイク処理を実行する前のＲＡＷデータは、イメージセンサの各画素に対して例えばＲＧＢいずれかの画素値のみが設定されたデータである。
【００５０】
図６に示すフリッカ補正処理部２００は、デモザイク処理前のＲＡＷ画像２５１を入力して、ＲＡＷ画像２５１に対するフリッカ補正が施された補正画像２５２を生成する。ただし、この処理は一例であり、フリッカ補正処理部２００は、デモザイク処理が実行されたカラー画像を入力してカラー画像に対して、以下に説明すると同様の処理を行うことでフリッカ補正処理を実現できる。
【００５１】
図６に示すフリッカ補正処理部２００の処理について説明する。
フリッカ補正処理部２００は、積分処理部２０１、フリッカシーン判定部２０２、静止フレーム検出部２０３、位相シフト量推定部２０４、フリッカ成分算出部２０５、フリッカ成分合成部２０６、補正係数算出部２０７、乗算部２０８を有する。
【００５２】
フリッカ補正処理部２００は、まず、ＲＡＷ画像２５１を積分処理部２０１に入力する。積分処理部２０１は、ＲＡＷ画像２５１の水平方向にカラーチャンネルごとに信号値（画素値）の積分処理を行い、行単位の１次元の信号量（ＲＰ：Ｒｏｗ  Ｐｒｏｆｉｌｅ）を得る。前述したように、ＲＡＷデータは、イメージセンサの各画素に対して例えばＲＧＢいずれかの画素値のみが設定されたデータである。
積分処理部２０１は、ＲＡＷ画像２５１の水平方向に例えばＲＧＢの各カラーチャンネルごとに積分処理を行い、行単位の１次元の信号量（ＲＰ：Ｒｏｗ  Ｐｒｏｆｉｌｅ）を得る。
【００５３】
これは、フリッカ補正処理の計算量を削減するために処理の初期段階でデータ量を減らす目的で行われ、フリッカの撮影画像に対する影響が画像のスキャンライン（水平）方向でほぼ同一という仮定のもとに行われている演算処理である。もちろん、現実的には、水平方向であっても、画像の領域ごとに照明条件等が異なり、フリッカの影響度が異なることがあり得るが、その場合も本発明で提案する方法を水平方向に分割された領域ごとに適用することによって、補正処理が実現できる。
【００５４】
例えばベイヤ（Ｂａｙｅｒ）配列型のイメージセンサであれば、行単位でＲ，Ｇ，Ｂチャンネルそれぞれ独立に積分処理を行い、ＲＧＢ各チャンネルの行単位の１次元の信号量（ＲＰ）として、
信号量：ＲＰ＿Ｒｋ（ｙ），ＲＰ＿Ｇｋ（ｙ），ＲＰ＿Ｂｋ（ｙ）
を得る。
なお、ｋは、画像のフレーム番号であり、ｙは画像の縦方向の座標値を表す。
積分処理部２０１は、このように、入力ＲＡＷ画像フレームｋに対して、各行（ｙ）単位で、
信号量：ＲＰ＿Ｒｋ（ｙ），ＲＰ＿Ｇｋ（ｙ），ＲＰ＿Ｂｋ（ｙ）
を算出する。
【００５５】
なお、処理手法としては、
（１）色信号成分、例えばＲＧＢのカラーチャンネル単位で個別に処理を実行する手法と、
（２）カラーチャンネル（例えばＲＧＢ）を区別せず、行単位で１つの信号量ＲＰｋ（ｙ）を算出してこれを用いて全てのカラーチャンネル対応画素に対して共通の処理を実行する手法、
これら２つの手法がある。いずれの処理を行っても効果的なフリッカの削減効果を発揮することが可能である。なお、（１）のＲＧＢのカラーチャンネル単位の処理は、色ムラの削減効果を高めることができる。
【００５６】
フリッカ補正処理部２００における処理は、上記（１），（２）のいずれの処理として実行してもよい。以下では、ＲＧＢのカラーチャンネル単位の処理として行った処理例について説明する。なお、以下の説明において、
ＲＰ＿Ｒｋ（ｙ），ＲＰ＿Ｇｋ（ｙ），ＲＰ＿Ｂｋ（ｙ）等、ＲＧＢを付記して示す場合は、それぞれ個別に処理を行うことを示し、ＲＰｋ（ｙ）等、ＲＧＢを付記していない場合は、ＲＧＢの各カラーチャンネルに対して共通に実行される処理であることを示すものとする。
【００５７】
積分処理部２０１の算出した信号量：ＲＰ＿Ｒｋ（ｙ），ＲＰ＿Ｇｋ（ｙ），ＲＰ＿Ｂｋ（ｙ）は、フリッカシーン判定部２０２に入力される。
フリッカシーン判定部２０２は、撮影された画像がフリッカを発生する蛍光灯環境下で撮影されたかどうかの判定を行うための処理（フリッカ判定）を行う。
フリッカシーン判定部２０２は、１次元の離散フーリエ変換（ＤＦＴ）を利用し、一次元の信号量ＲＰ＿Ｒ，ＲＰ＿Ｇ，ＲＰ＿Ｂに１００Ｈｚのフリッカ成分が含まれているかをパワースペクトルの分布によって判定する。
この処理は、前述したようにＲＧＢのカラーチャンネルごとに個別に行ってもよいし、まとめて行っても構わない。
【００５８】
本実施例では、５０Ｈｚの蛍光灯の照明下でのフリッカの検出を前提とした処理を実行する。５０Ｈｚの蛍光灯の照明は、先に図１を参照して説明したように１００Ｈｚの周期で輝度変化を発生させる。
【００５９】
１００Ｈｚの輝度変化周期を持つ照明下で、６０フレーム／秒（６０ｆｐｓ）の画像撮影を行うと、図１から理解されるようにフレーム＃１とフレーム＃４は、同じ照明の輝度変化タイミングで撮影が行われる。すなわち、フレームｎとフレームｎ＋３のフリッカ波形は同じものとなる。
すなわち、１００Ｈｚの輝度変化周期を持つ照明下で、６０フレーム／秒（６０ｆｐｓ）の画像撮影を行うと、
フレームｎ、
フレームｎ＋１、
フレームｎ＋２、
これら連続する画像フレームにおいて３種類のフリッカ波形が出現するが、その後は、理想的にはこの３種類のフリッカ波形が繰り返されることになる。厳密には、撮像周期のずれや電源周波数変動によってフリッカの位相がずれていく可能性があるが、近傍のフレームにおいては、この周期性を前提に処理を行うことが可能である。
【００６０】
このように、５０Ｈｚの蛍光灯の照明下で６０ｆｐｓの画像撮影という今回の撮影条件であれば、フリッカの１００Ｈｚの成分が検出しやすいように、３フレーム周期でフリッカの位相が一致する。
【００６１】
フリッカシーン判定部２０２は、まず、「同一フリッカ発生フレーム周期」分に相当する連続する３フレーム分、フレームｋ−１〜ｋ＋１の行単位の信号量：ＲＰｋ−１（ｙ）、ＲＰｋ（ｙ）、ＲＰｋ＋１（ｙ）を算出する。
次に、これらの連続する３フレーム分の行単位の信号量を用いて、フレームｋに対応するフリッカ成分指標値ＦＬｋ（ｙ）を下式に従って算出する。
ＦＬｋ（ｙ）＝３ＲＰｋ（ｙ）／（ＲＰｋ−１（ｙ）＋ＲＰｋ（ｙ）＋ＲＰｋ＋１（ｙ））
【００６２】
上記式に従って算出するフリッカ成分指標値ＦＬｋ（ｙ）は、フリッカ成分が少ない場合は、上記式の分母（ＲＰｋ−１（ｙ）＋ＲＰｋ（ｙ）＋ＲＰｋ＋１（ｙ））と、分子（３ＲＰｋ（ｙ））の値がほぼ等しくなり、１に近い値となる。
一方、フリッカ成分が多い場合は、上記式の分母（ＲＰｋ−１（ｙ）＋ＲＰｋ（ｙ）＋ＲＰｋ＋１（ｙ））と、分子（３ＲＰｋ（ｙ））の値が異なることになり、１から離れた値となる。
【００６３】
上記式に従って、おおまかなフリッカ成分であるフリッカ成分指標値ＦＬｋ（ｙ）を画像から抽出した上で、上記のフリッカ成分指標値ＦＬｋ（ｙ）に対して１次元の離散フーリエ変換（ＤＦＴ）による周波数解析を行う。ここで、ＤＦＴに用いるデータの要素数は、フリッカの１周期分に相当するようフリッカ成分指標値ＦＬｋ（ｙ）からデータ要素を切り出すこととし、ＤＦＴによって得られる周波数スペクトルのうち、０次項（ＤＣ）と１次項（１００Ｈｚ）のパワーから計算される比率に対して閾値処理を行うことにより、フリッカ検出を行う。
以上の処理を数式でまとめると、下式によって示すことができる。
【００６４】
【数１】
0005625371.tif 000002
【００６５】
なお、（数式３）のフリッカ比率（ＰＲｋ）算出式において、分母がＤＦＴによって得られる周波数スペクトルのうちの０次項（ＤＣ）のパワーに相当し、分子がＤＦＴによって得られる周波数スペクトルのうちの１次項（１００Ｈｚ）のパワーに相当する。
Ｒｅは実数部Ｉｍは虚数部を意味する。
【００６６】
上記式において、
数式１は、前述した３フレーム分、フレームｋ−１〜ｋ＋１の行単位の信号量：ＲＰｋ−１（ｙ）、ＲＰｋ（ｙ）、ＲＰｋ＋１（ｙ）に基づくフリッカ成分指標値ＦＬｋ（ｙ）の算出式である。
数式２は、フリッカ成分指標値ＦＬｋ（ｙ）に対する１次元の離散フーリエ変換（ＤＦＴ）処理を示す算出式である。
数式３は、数式２のＤＦＴによって得られる周波数スペクトルのうち、０次項（ＤＣ）と１次項（１００Ｈｚ）のパワーから計算される比率（フリッカ比率）の算出式である。
数式３によって算出されるフリッカ比率（ＰＲｋ）の値が大きいほど画像フレームｋにフリッカ成分がより多く含まれていることを示す。
【００６７】
フリッカシーン判定部２０２は、上記の数式３によって算出されるフリッカ比率（ＰＲｋ）と予め規定した閾値との比較を実行して、フリッカシーンの検出を実行する。
数式３によって算出されるフリッカ比率（ＰＲｋ）が予め規定したフリッカシーン判定閾値（Ｔｈａ）以上である場合は、そのフレームｋはフリッカシーン、すなわちフリッカの影響を発生させている画像フレームであると判定する。
【００６８】
すなわち、
ＰＲｋ≧Ｔｈａ
上記判定式が成立する場合、フレームｋはフリッカシーン、すなわちフリッカの影響を発生させている画像フレームであると判定し、上記判定式が成立しない場合、フレームｋはフリッカシーンでない、すなわちフリッカの影響を発生させていない画像フレームであると判定する。
フリッカシーンであると判定されなかった場合は、フリッカ除去のための補正係数の算出やフリッカ補正係数による補正処理は行われない。フリッカシーンであると判定されたシーン（フレーム）に対して、フリッカ除去のための補正係数の算出やフリッカ補正係数による補正処理が実行される。
【００６９】
なお、本処理において、様々な撮影シーンに対する処理のロバスト性を確保したい場合には、上記の（数式１）で示されるフリッカ成分指標値ＦＬｋの算出処理をフレームｋのみではなく、前後のフレームにおいても行い、ＦＬｋ−１，ＦＬｋ，ＦＬｋ＋１を用いて後述のデータの信頼度に基づく波形合成処理と同様の手法で合成されたフリッカ成分に対して処理を行ってもよい。
【００７０】
次に、図６に示したブロック図中の静止フレーム検出部２０３の実行する処理について説明する。この静止フレーム検出部２０３は、後段のフリッカ成分算出部２０５の処理として実行されるフリッカ補正係数の算出処理において算出する補正係数の精度を向上させるために、被写体やカメラ自体の動きが少ないフレームの検出を行う。
【００７１】
静止フレーム検出部２０３は、被写体の動きのないフレームを検出する。ただし、後段のフリッカ成分算出部２０５では、フリッカ成分算出を行方向に積分処理された１次元の信号量を用いて行うため、静止フレーム検出部２０３は、縦方向の動きの有無に基づく静止フレーム判定を行えばよい。すなわち、横方向の動きに対しては、厳密な静止判定処理を行うことは必要でない。
【００７２】
静止フレーム検出部２０３は、積分処理部２０１の算出した行単位の信号量ＲＰのフレーム間の差分値に基づく静止フレーム検出を行う。
フリッカの含まれる撮影シーンの場合、動画を構成するフレーム間でフリッカとしての縞模様の動きが発生する。このフリッカの動きにより、被写体、カメラが静止していても静止フレームではないと判定される可能性がある。
【００７３】
例えば、本実施例の想定条件である電源周波数５０Ｈｚ、イメージセンサのフレームレートが６０ｆｐｓであれば、前述したように撮影画像に表れるフリッカの横縞の位置が３フレーム周期で変化する。
従って、前後の隣接フレーム同士の比較に基づく動き判別を実行して静止フレーム検出を行うと、フリッカによる輝度変化が検出され誤った処理が行われる可能性がある。
このような誤検出を避けるため、同一位相のフリッカが発生するフレーム周期に相当する複数の連続フレーム、本実施例では３フレーム分の信号量（ＲＰ）をフレーム（時間）方向に積分することによってフリッカの影響が緩和されたＲＰを取得して、このフリッカ周期分の複数フレームの信号量ＲＰを用いて静止フレーム検出を行う。
【００７４】
なお、以下の説明において、「フリッカ周期」と、「同一フリッカ発生フレーム周期」を以下ように定義する。
（ａ）フリッカ周期：フリッカの周期であり、図１に示す例（１００Ｈｚ）では、１／１００ｓｅｃ
（ｂ）同一フリッカ発生フレーム周期：同一位相のフリッカ波形の発生するフレームの周期であり、図１に示す例では３フレーム（＝１／２０ｓｅｃ）
【００７５】
図７を参照して静止フレーム検出部２０３の実行する静止フレーム検出処理について説明する。図７には、連続する画像フレーム＃（ｎ−１）から＃（ｎ＋３）を示している。
まず、前半のフレーム＃（ｎ−１）から＃（ｎ＋１）の連続する３フレームの各々について、行単位の信号量ＲＰｎ−１（ｊ）、ＲＰｎ（ｊ）、ＲＰｎ＋１（ｊ）を算出し、これらの複数フレーム積分信号量ＲＰ'ｎ（ｊ）を下式に従って算出する。
【００７６】
【数２】
0005625371.tif 000003
【００７７】
同様に、次のフレーム＃（ｎ＋２）から＃（ｎ＋４）の連続する３フレームの各々について、行単位の信号量ＲＰｎ＋２（ｊ）、ＲＰｎ＋３（ｊ）、ＲＰｎ＋４（ｊ）を算出し、これらの複数フレーム積分信号量ＲＰ'ｎ＋３（ｊ）を下式に従って算出する。
【００７８】
【数３】
0005625371.tif 000004
【００７９】
このように、同一位相のフリッカが発生する「同一フリッカ発生フレーム周期」に相当する３フレーム単位で計算されるＲＰを積分して得られる第１の複数フレーム積分信号量ＲＰ'ｎと、次の連続３フレームから得られる第２の複数フレーム積分信号量ＲＰ'ｎ＋３の要素ごとの差分の絶対値の総和から計算されるＳｋを静止フレーム評価関数とする。静止フレーム評価関数Ｓｋは下式に従って算出する。
【００８０】
【数４】
0005625371.tif 000005
【００８１】
上記式に従って算出される静止フレーム評価関数Ｓｋは、３フレーム単位で計算される複数フレーム積分信号量の差分が大きいほど大きな値となる。従って、動きのある画像であれば、静止フレーム評価関数Ｓｋの値も大きくなる。
静止フレーム検出部２０３は、上記式に従って算出する静止フレーム評価関数Ｓｋと、予め規定した静止フレーム判定閾値（Ｔｈｂ）とを比較して、静止フレームの検出を行う。すなわち、
Ｓｋ≧Ｔｈｂ
上記判定式が成立する場合、そのフレームｋは静止フレームではないと判定する。上記判定式が成立しない場合は、フレームｋは静止フレームであると判定する。
【００８２】
なお、静止フレームの検出処理については、上記の方法に限らず、フレーム間差分による検出等、既存の様々な処理を必要に応じて適用することが可能である。
【００８３】
次に図６の処理ブロック図中のフリッカ成分算出部２０５の実行する処理について説明する。前段の静止フレーム検出部２０３の処理において、連続する３フレーム（同一フリッカ発生フレーム周期）以上の静止フレームの検出が実行された場合、フリッカ成分算出部２０５は、検出された静止画フレームを適用してフリッカ成分の算出処理を行うことができる。
【００８４】
図８を参照して、フリッカ成分算出部２０５の実行するフリッカ成分算出処理について説明する。図８には、以下の（ａ）〜（ｃ）のデータを示している。
（ａ）フレーム単位の行単位信号量ＲＰ（被写体光成分＋フリッカ成分）
（ｂ）３ｍフレームの積分フレームの行単位の複数フレーム積分信号量＝参照信号量（ＲＰ）（被写体光成分）
（ｃ）フレーム単位の行対応のフリッカ成分
図８は、上記（ａ）〜（ｃ）について、
（ａ）／（ｂ）＝（ｃ）
として、（ｃ）フレーム単位の行対応のフリッカ成分を算出することを示している。
【００８５】
なお、フリッカ補正に適用するフリッカ補正係数は、基本的にはここで求められたフリッカ成分の逆相の成分となる。すなわちフリッカ補正係数は、各行のフリッカ成分を除去するために、各行の画素値に乗算する補正係数であり、フリッカ成分の逆相の成分からなる乗算係数となる。この補正係数は行単位で算出され、最終的に、図６に示す乗算部２０８において、入力画像に対して行単位で乗算する処理が行われる。乗算部２０８は、フリッカ補正係数を適用した補正処理を実行する補正部に相当する。この上残部２０８において行われる補正係数乗算処理によって、フリッカ成分の除去された補正画像２５２が生成される。
【００８６】
図８に示す（ａ）〜（ｃ）の各データについて説明する。
（ａ）フレーム単位の行単位信号量ＲＰ（被写体光成分＋フリッカ成分）は、積分処理部２０１において求められる各フレーム毎の行単位の１次元の信号量（ＲＰ：Ｒｏｗ  Ｐｒｏｆｉｌｅ）である。
【００８７】
（ｂ）３ｍフレームの積分フレームの行単位の複数フレーム積分信号量＝参照信号量（ＲＰ）（被写体光成分）は、前段の静止フレーム検出部２０３の処理において検出された連続する３フレームの画像の積分結果から得られる行単位の複数フレーム積分信号量ＲＰを適用することが可能である。
なお、ｍは１以上の整数であり、さらに６フレーム、９フレーム、・・・３０フレーム等、より多くの３ｍフレームを用いてもよい。なお、積分単位を３ｍフレーム、すなわち３の倍数分のフレーム数とするのは以下の理由である。
【００８８】
本例では１００Ｈｚの輝度変化のある照明下で６０ｆｐｓの画像撮影を実行し、３フレーム周期（同一フリッカ発生フレーム周期）のフリッカが発生する。従って、３ｍフレーム分の静止画の積分画像はフリッカ成分がキャンセルされた画像となる。この結果、図８（ｂ）に示す行単位信号量ＲＰでは、フリッカ成分が軽減され、ほぼ被写体に起因する光成分のみとなる。
このように、純粋に被写体に起因する光成分のみの行単位の１次元の信号量（ＲＰ）を算出するために、同一フリッカ発生フレーム周期の倍数に相当する３ｍフレーム分の積分画像を用いる。
【００８９】
フリッカ成分算出部２０５は、この図８に示す（ａ），（ｂ）のデータ、すなわち、
（ａ）フレーム単位の行単位信号量ＲＰ（被写体光成分＋フリッカ成分）
（ｂ）３ｍフレームの積分フレームの行単位の複数フレーム積分信号量＝参照信号量（ＲＰ）（被写体光成分）
これらのデータの演算により、
（ｃ）フレーム単位の行対応のフリッカ成分
を算出する。
すなわち、図８に示すように、
（ａ）／（ｂ）＝（ｃ）
として、（ｃ）フレーム単位の行対応のフリッカ成分を算出する。
フリッカ成分は、イメージセンサのスキャンライン（行単位）で算出される。
【００９０】
このように、フリッカ成分算出部２０５は、フリッカ成分検出対象とする画像フレームの行単位の信号量の積分値と、基準フレームの対応画素の信号値を加算した積分フレームの行単位の信号量である複数フレーム積分信号量との比較により、フリッカ成分検出対象とする画像フレームの各行に含まれるフリッカ成分を検出する。
なお、基準フレームは、静止フレーム検出部２０３の検出した静止フレームから選択され、同一位相のフリッカが発生するフレーム周期の一単位に含まれる複数の画像フレームとして定義される基準フレームを構成する連続撮影画像フレームのセットである。
【００９１】
なお、このフリッカ成分算出部２０５の実行するフリッカ成分算出処理は、イメージセンサを構成する色配列のカラーチャンネルごとに実施するのが望ましい。すなわち、ベイヤ（Ｂａｙｅｒ）配列のイメージセンサであれば、Ｒ，Ｇ，Ｂごとにフリッカ成分の推定を行うことが好ましい。これは、蛍光灯に含まれる蛍光体の残光特性が光の波長ごとに異なり、撮影画像への影響もカラーチャンネルごとに異なるためである。
【００９２】
なお、図８に示す（ｃ）フレーム単位の行対応のフリッカ成分を算出する場合に適用する複数フレーム積分信号量＝参照信号量（ＲＰ）の計算用の画像フレームとして用いる３ｍフレームは、３フレーム、６フレーム等、様々な設定が可能である。
例えば、図９に示すように、例えば、フリッカ成分を算出する前の連続フレーム（例えば３０フレーム）を利用する構成としてもよい。
なお、図９に示す設定は一例であり、参照ＲＰを算出するフレームの設定は、フリッカ成分を算出するフレームの近傍のフレームであり、静止画として判定された連続フレームであればよい。
【００９３】
前述したように、フリッカ補正係数は、基本的にはここで求められたフリッカ成分の逆相の成分となる。
フリッカ成分の推定に用いたフレーム周期（同一フリッカ発生フレーム周期）の一周期を構成する複数の連続フレーム（本例では３フレーム）を基準フレームとする。基準フレームに対して求められたフリッカ補正係数が、基準フレーム他のフレームに対して適用して補正が行われる。例えば図９に示す例では、フレーム＃ｎ以降のフレームを補正対象とする場合、フレーム＃ｎ−２〜フレーム＃ｎのセットが基準フレームとなる。
【００９４】
フリッカ補正を実行する場合、基準フレームを利用して算出したフリッカ補正係数を適用する。基準フレームを利用して算出したフリッカ補正係数を基準フリッカ補正係数と定義する。最終的に、図６に示す乗算部２０８において、この基準フリッカ補正係数を用いて位相調整されたフリッカ補正係数を入力画像に対して行単位で乗算する処理が行われる。この補正係数乗算処理によって、フリッカ成分の除去された補正画像２５２が生成される。
【００９５】
基準フレームを利用したフリッカ補正係数（基準フリッカ補正係数）の算出処理は、図６に示すフリッカ成分合成部２０６と、フリッカ補正係数算出部２０７の処理として実行される。
フリッカ成分合成部２０６は、基準フレームに対応するフリッカ成分を利用してより精度の高い１つのフリッカ周期に対応するフリッカ成分を算出する。
なお、フリッカ周期は、例えば図１に示す例（１００Ｈｚ）では、１／１００ｓｅｃであり、この１周期単位のフリッカパターンに対応するフリッカ成分を算出する。この１周期分のフリッカ成分が繰り返し発生するものとして処理を行うことになる。
フリッカ補正係数算出部２０７は、フリッカ成分合成部２０６の生成した精度の高い１周期分のフリッカ周期のフリッカ成分を適用して、フリッカ成分の逆相のフリッカ補正係数（基準フリッカ補正係数）を算出する。
以下、これらの処理について説明する。
【００９６】
まず、フリッカ成分合成部２０６の実行する精度の高い１つのフリッカ周期のフリッカ成分の算出処理について説明する。
フレーム対応のフリッカ成分は、図８を参照して説明したように、フリッカ成分算出部２０５において算出済みである。従って、このフレーム対応のフリッカ成分を用いれば、１つのフリッカ周期のフリッカ成分を抽出できる。
しかし、本発明の処理では、単純に基準フレームのフリッカ成分から１周期分のフリッカ成分を切り出すことはせず、以下に述べるように補正処理のロバスト性を向上させるため、より精度の高いフリッカ成分の抽出を行う。
【００９７】
フリッカ成分合成部２０６の実行する精度の高いフリッカ成分の算出処理について、図１０を用いて詳しく説明する。
図１０（ａ），（ｂ），（ｃ）に示すグラフは、基準フレームのフリッカ成分を示すグラフである。すなわち、連続する３画像フレーム（フレーム＃ｎ−２〜フレーム＃ｎ）から前述の手法により抽出されたフリッカ成分である。
しかし、適正な露出で撮影が行われたとしても、一般的に撮影シーン中には物体からの反射光量が十分ではない暗い領域がある。このような輝度の低い領域は、フリッカ成分の抽出が正確に行われない可能性が高くなる。
【００９８】
例えば図１０に示す（ａ）〜（ｃ）のグラフにおいて、点線で示した箇所は例えば低輝度領域であり、フリッカ成分の精度が低い領域である。このようなフリッカ成分からフリッカ成分の逆相を持つ係数からなるフリッカ補正係数を生成して補正を行うと、本来のフリッカ波形とは異なる波形に基づく補正係数による補正が行われることになり、補正後の画像の画質が低下する。
【００９９】
このような問題を回避するために、フリッカ成分合成部２０６は、同一フリッカ発生フレーム周期単位の複数フレームを構成する基準画像の各々から輝度に基づくフリッカ成分信頼度を算出し、算出したフリッカ成分信頼度に基づいて、高信頼度と判定された領域のフリッカ成分のみを選択して合成することで精度の高い合成フリッカ成分（図１０（ｄ）参照）を生成する。
【０１００】
基準画像のフリッカ成分の信頼度は、例えば、前述の行単位の信号量ＲＰ（図８参照）を利用して画像内の暗い領域（低輝度領域）を、予め設定した輝度閾値との比較処理により判定する。すなわち輝度閾値（Ｔｈｃ）を予め定義し、画像の各行の信号量ＲＰと輝度閾値（Ｔｈｃ）を比較する。
信号量ＲＰ≧Ｔｈｃ
上記判定式を満足する十分な輝度を持つ行（スキャンライン）から抽出されたフリッカ成分は有効と判定する。上記判定式を満足しない低輝度の行（スキャンライン）から抽出されたフリッカ成分は無効と判定する。無効と判定されたフリッカ成分の値は、合成フリッカ成分の生成には適用しない。すなわち、フリッカ補正係数の生成には用いないこととする。
【０１０１】
図１０（ａ）〜（ｃ）に示す基準フレームのフリッカ成分中、点線で示された領域は、このような行単位の輝度レベル判定に基づいて決められた信頼度の低い無効領域である。実線で示す領域が信頼度の高い有効領域である。
【０１０２】
図１０（ａ）〜（ｃ）に示す基準フレームのフリッカ成分中、実線で示された精度の高い領域のフリッカ成分のみを合成することで図１０（ｄ）に示す合成フリッカ成分を生成する。この合成フリッカ成分の逆相の成分がフリッカ補正係数として算出される。
【０１０３】
なお、図１０（ａ）〜（ｃ）に示す基準フレームのように、動画像を構成する隣接する数フレーム間であれば、電源の周波数変動等によるフリッカ成分の位相変動がほぼ無視できるので、フリッカ周波数（例えば１００Ｈｚ）とイメージセンサのフレームレート（６０ｆｐｓ）、スキャンライン総数等から、３フレームから抽出されたフリッカ成分の位相シフト量を計算することができる。
【０１０４】
フリッカ成分合成部２０６は、この算出されたフリッカ成分の位相シフト量を適用して、それぞれのフリッカ成分が重なるように位相をシフトして合成処理を行う。すなわち、あるフレームで信頼度が低く抽出できなかった領域のフリッカ成分を他のフレームから位相を併せた上で合成する。
なお、このような合成処理によって生成したフリッカ成分においても、波形が不連続となることがあり得る。このような領域についてはスプライン関数などで補間処理を施す。
【０１０５】
フリッカ成分分合成部２０６は、このように複数のフレームからなる基準フレームのフリッカ成分の合成処理と補間処理により、図１０（ｄ）に示すような、連続的な合成フリッカ波形を生成する。
【０１０６】
位相シフト量算出部２０４は、フリッカ成分合成部で使用された基準フレームにおけるフリッカ成分の位相とフリッカ補正係数を適用するフレームのフリッカ成分の位相のシフト量を演算する。位相シフト量算出部２０４は、例えば複数枚のフレームから抽出されたフリッカ成分を合成し、フリッカの１周期分以上のフリッカ成分よりフリッカの位相シフト量を推定する。ここでは、撮像フレームレートのずれ（60fpsからの微小なずれ）や電源周波数の変動によるフリッカ位相の変動分を考慮した位相推定が可能となっており、補正処理のロバスト性の向上に寄与している。
【０１０７】
フリッカ補正係数算出部２０７は、フリッカ成分合成部２０６の生成した精度の高い１周期分のフリッカ成分を適用して、フリッカ成分の逆相のフリッカ補正係数（基準フリッカ補正係数）を算出する。最終的に、図６に示す乗算部２０８において、この基準フリッカ補正係数を用いて、上記位相シフト量算出部２０４で算出された位相に基づき位相調整されたフリッカ補正係数を入力画像に対して行単位で乗算する処理が行われる。この補正係数乗算処理によって、フリッカ成分の除去された補正画像２５２が生成される。
【０１０８】
なお、図１を参照して説明したように、撮像された画像フレームごとにフリッカ成分の位相は変化していく。従って、フリッカ補正係数の適用による補正処理を行う場合は、画像フレームごとのフリッカ成分の位相情報を取得して、位相を併せてフリッカ補正係数を適用することが必要となる。
【０１０９】
フリッカ補正係数算出部２０７は、フリッカ成分合成部２０６の生成した精度の高い１周期分のフリッカ成分を入力し、さらに、位相シフト量算出部２０４から逐次更新された基準フレーム単位のフリッカ成分位相情報を取得して、位相を併せたフレーム単位のフリッカ補正係数を生成する。すなわち、フリッカ補正係数算出部２０７は、フリッカ補正対象とする画像フレームのフリッカ位相情報を位相シフト量算出部２０４から入力し、フリッカ位相情報に応じて位相を調整した画像フレーム対応のフリッカ補正係数を生成する。
【０１１０】
なお、フリッカ補正係数を適用したフリッカ補正を実行する際には、フリッカ成分の位相シフト量が必要となる。このフリッカ成分の位相シフト量の算出は、一定フレームごとに行うことが望ましい。
【０１１１】
例えば６０ｆｐｓの動画像に対する連続的なフリッカ補正を実行する場合、同一フリッカ発生フレーム周期として設定される最初の３フレームに対応する位相シフト量を３フレーム単位で継続して利用することも可能であるが、予め規定した時間間隔または一定フレーム数単位で、新たに位相シフト量の算出を行って、同一フリッカ発生フレーム周期単位の位相シフト量を、逐次更新して適用することが好ましい。
【０１１２】
これは、商用電源にはある程度の周波数変動が許容されており、前述のようにフリッカ周波数、イメージセンサのフレームレート、スキャンライン総数から計算される位相シフト量を適用し続けると、基準となるフリッカ補正係数を推定してから長い時間が経過したときに、実際のフリッカ成分の位相と補正係数の位相がずれてしまうからである。以下、位相シフト量算出部２０４の実行する位相シフト量推定の詳細について説明する。
【０１１３】
位相シフト量算出部２０４は、同一フリッカ発生フレーム周期単位を構成する基準フレーム、本例では３フレーム個々の位相シフト量を算出して、フリッカ補正係数算出部２０７に提供する。なお、位相シフト量算出部２０４は、予め設定された時間間隔、または、フレーム間隔で、新たな基準フレームを選択して更新した位相シフト量を算出してフリッカ補正係数算出部２０７に提供する。
【０１１４】
位相シフト量算出部２０４は、先に説明した（数式１）で示されるフリッカ成分指標値ＦＬｋの周波数解析によって行う。
先に説明したように、基準フレームを構成する「同一フリッカ発生フレーム周期」分の連続する複数フレーム（本例では３フレーム）分の行単位の信号量を用いて、フレームｋに対応するフリッカ成分指標値ＦＬｋ（ｙ）は下式に従って算出される。
ＦＬｋ（ｙ）＝３ＲＰｋ（ｙ）／（ＲＰｋ−１（ｙ）＋ＲＰｋ（ｙ）＋ＲＰｋ＋１（ｙ））
・・・（数式１）
【０１１５】
位相シフト量算出部２０４は、この（数式１）によって計算されるおおまかなフリッカ成分の周波数解析によって、基準フレームを構成する各フレームの位相シフト量を算出する。位相シフト量算出部２０４は、先に説明したフリッカシーン判定部２０２の実行するフリッカ検出処理と同様、フリッカ成分指標値ＦＬに対する１次元の離散フーリエ変換（ＤＦＴ）による周波数解析を行う。ＤＦＴによってフリッカ成分指標値ＦＬを周波数領域に展開したあと、２次以上の高調波を周波数空間上で０に置き換えた上で、逆ＤＦＴを行う。逆ＤＦＴによって得られる信号量はＦＬから抽出されたフリッカ周期に相当する１００Ｈｚの波形となる。
【０１１６】
位相シフト量算出部２０４は、このフリッカ周期に相当する１００Ｈｚの波形を、基準フレームを構成する各フレームにどの位置に設定されるかを判別して基準フレームを構成する各フレームの位相シフト量を算出する。
位相シフト量算出部２０４は、このようにして算出した基準フレームを構成する各フレームの位相シフト量をフリッカ補正係数算出部２０７に提供する。
なお、前述したように、位相シフト量算出部２０４は、予め設定した時間間隔、または、フレーム間隔で、新たな基準フレームを選択して更新した位相シフト量を算出してフリッカ補正係数算出部２０７に提供する。
【０１１７】
フリッカ補正係数算出部２０７は、フリッカ成分合成部２０６の生成した精度の高い１周期分のフリッカ成分を入力し、さらに、位相シフト量算出部２０４から逐次更新された基準フレーム単位のフリッカ成分位相情報を取得し、位相を併せたフレーム単位のフリッカ補正係数を生成する。
【０１１８】
図１１に示すように、フリッカ補正係数算出部２０７は、フリッカ成分合成部２０６の生成した精度の高い１周期分のフリッカ成分３０１を入力する。このフリッカ成分３０１は、図１０（ｄ）に示す合成フリッカ成分に対応する。
フリッカ補正係数算出部２０７は、この精度の高い１周期分のフリッカ成分３０１の逆相のフリッカ補正係数を算出する。図１１（ｅ）に示す１つのフリッカ周期分のフリッカ補正係数３０２である。
【０１１９】
さらに、位相シフト量算出部２０４から入力する合成フリッカ成分からの位相シフト量を利用して、各々のフリッカ補正係数を算出する。
【０１２０】
フリッカ補正係数算出部２０７は、現フレーム画像に対する補正係数を出力して図６に示す乗算部２０８において、行単位でフリッカ補正係数を乗算する。
この処理を実行することで、図１２に示すように、（Ａ）補正前の画像（図６の入力画像２５１に対応）に対する位相を合わせた補正係数の適用処理による補正が実行され。（Ｂ）補正後の画像（図６の補正画像２５２に対応）に示すように、フリッカを消去または減少させた画像が生成される。
【０１２１】
なお、以上のフリッカ補正処理は、先に説明したように、
（１）色信号成分、例えばＲＧＢのカラーチャンネル単位で個別に処理を実行する手法と、
（２）カラーチャンネル（例えばＲＧＢ）を区別せず、行単位で１つの信号量ＲＰｋ（ｙ）を算出してこれを用いて全てのカラーチャンネル対応画素に対して共通の処理を実行する手法、
これらのいずれかの処理として実行することができる。
【０１２２】
本発明の処理は、フリッカ波形を実際の照明光に応じた波形として算出して補正係数を求める構成であり、先に従来技術として説明した正弦波のようなモデル波形による補正を行う構成と異なり、実際の輝度変化に応じたフリッカを効果的に解消することが可能となる。この効果はネ（１），（２）の処理において共通の効果である。さらに（１）に示すイメージセンサのカラーチャンネルごとの補正を行えば、色ムラを効果的に解消させる補正が可能となる。
【０１２３】
なお、フリッカ補正画像の品質を保つために、一定周期ごとに静止フレームが検出された際に基準フリッカ補正係数を算出し、更新する処理を行うことが好ましい。このような動作が行われたタイミングで、位相シフト量の計算も新たな基準フレームに対して行えばよい。
【０１２４】
なお、上述した実施例では、
電源周波数５０Ｈｚ、
イメージセンサのフレームレートが６０ｆｐｓ、
この条件での処理例として説明を行ったが、光源によって映像信号中に発生する横縞状のフリッカが画像内を垂直方向に動く限りは、どのような電源周波数とイメージセンサのフレームレートの組み合わせにおいても本手法は有効である。
【０１２５】
イメージセンサのフレームレートが高くなると、本手法によって横縞状のフリッカを補正した後の映像信号においてフレーム間の輝度のバラつきが目立つ場合もある。この輝度のバラつきに関しても周期性が存在するので、各フレームのカラーチャンネルごとに算出されたＤＣ値をもとに、例えば、５０Ｈｚ電源、６０ｆｐｓのイメージセンサの組み合わせであれば、３フレームごとに３フレーム内のＤＣ成分の中央値へと補正を行うようなゲインを求め、補正を行うこともできる。
【０１２６】
［３．本発明の画像処理装置の処理シーケンス例について］
次に、本発明の画像処理装置の実行する処理のシーケンスの一例について、図１３に示すフローチャートを参照して説明する。
図１３に示すフローは図６に示すフリッカ補正処理部２００の処理シーケンスの一例を示すフローである。なおこの一連の処理の制御は、制御部１５０（図５参照）の制御の下に行われる。
【０１２７】
図１３に示すフローチャートの各ステップの処理について、順次説明する。
ステップＳ１０１において行（スキャンライン）単位の信号値（画素値）積分処理を実行する。
この処理は、図６に示す積分処理部２０１の処理である。積分処理部２０１は、入力する画像（例えば図５に示すＲＡＷ画像２５１）の水平方向のスキャンライン（行）単位で、信号値（画素値）の積分処理を行い、行単位の１次元の信号量（ＲＰ：Ｒｏｗ  Ｐｒｏｆｉｌｅ）を得る。
【０１２８】
なお、前述したように処理態様としては、
（１）色信号成分、例えばＲＧＢのカラーチャンネル単位で個別に処理を実行する手法と、
（２）カラーチャンネル（例えばＲＧＢ）を区別せず、行単位で１つの信号量ＲＰｋ（ｙ）を算出してこれを用いて全てのカラーチャンネル対応画素に対して共通の処理を実行する手法、
これら２つの手法がある。
【０１２９】
ステップＳ１０２では、フリッカシーン判定処理を行う。
この処理は、図６に示すフリッカシーン判定部２０２の処理である。
フリッカシーン判定部２０２は、撮影された画像がフリッカを発生する蛍光灯環境下で撮影されたかどうかの判定を行うための処理（フリッカ判定）を行う。フリッカシーン判定部２０２は、１次元の離散フーリエ変換（ＤＦＴ）を利用し、一次元の信号量ＲＰ＿Ｒ，ＲＰ＿Ｇ，ＲＰ＿Ｂに１００Ｈｚのフリッカ成分が含まれているかをパワースペクトルの分布によって判定する。
前述の式（数式１）〜（数式３）に従って算出されるフリッカ比率（ＰＲｋ）と予め規定したフリッカシーン判定閾値（Ｔｈａ）との比較により、画像フレーム単位で、フリッカを含むフレームであるか否かを判定する。
【０１３０】
フリッカを含むフレームであると判定した場合は、ステップＳ１０３の判定がＹｅｓとなり、ステップＳ１０４以下の処理が実行される。
フリッカを含まないフレームであると判定した場合は、ステップＳ１０３の判定がＮｏとなり、ステップＳ１０４以下の処理は実行されず、フリッカ補正処理は終了する。この場合、その他の一般的な信号処理のみが実行されることになる。
【０１３１】
フリッカを含むフレームであると判定し、ステップＳ１０４に進むと、静止フレーム判定処理が行われる。
この処理は、図６に示す静止レーム検出部２０３の処理である。静止フレーム検出部２０３は被写体やカメラ自体の動きが少ないフレームの検出を行う。静止フレーム検出部２０３は、積分処理部２０１の算出した行単位の信号量ＲＰのフレーム間の差分値に基づく静止フレーム検出を行う。
【０１３２】
この処理に際して、フリッカによる誤検出を防ぐため、同一位相のフリッカが発生するフレーム周期に相当する複数の連続フレーム、本実施例では３フレーム分の信号量（ＲＰ）をフレーム（時間）方向に積分することによってフリッカの影響が緩和されたＲＰを取得して、このフリッカ周期分の複数フレームの信号量ＲＰを用いて静止フレーム検出を行う。この処理は図７を参照して説明した処理である。
図７を参照して説明したように、同一フリッカ発生フレーム周期の複数フレーム（３フレーム）単位で計算される複数フレーム積分信号量の差分が大きいほど大きな値となる静止フレーム評価関数Ｓｋを算出し、予め設定した静止フレーム判定閾値（Ｔｈｂ）とを比較して、静止フレームの検出を行う。
【０１３３】
次に、ステップＳ１０５では、フリッカ成分検出処理を実行する。
この処理は、図６に示すフリッカ成分算出部２０５の実行する処理である。フリッカ成分算出部２０５は、ステップＳ２０４において検出した静止画フレームを適用して画像フレーム単位のフリッカ成分の算出処理を行う。
この処理は、先に図８、図９を参照して説明した処理である。
【０１３４】
フリッカ成分算出部２０５は、先に図８、図９を参照して説明したように、
（ａ）フレーム単位の行単位信号量ＲＰ（被写体光成分＋フリッカ成分）
（ｂ）３ｍフレームの積分フレームの行単位の複数フレーム積分信号量＝参照信号量（ＲＰ）（被写体光成分）
（ｃ）フレーム単位の行対応のフリッカ成分
図８は、上記（ａ）〜（ｃ）について、
（ａ）／（ｂ）＝（ｃ）
として、（ｃ）フレーム単位の行対応のフリッカ成分を算出する。
【０１３５】
次に、ステップＳ１０６において、フリッカ成分合成処理を実行する。
この処理は、図６に示すフリッカ成分合成部２０６の処理である。フリッカ成分合成部２０６は、基準フレームに対応するフリッカ成分を利用してより精度の高い１つのフリッカ周期に対応するフリッカ成分を算出する。
図１０を参照して説明したように、同一フリッカ発生フレーム周期単位の複数フレームを構成する基準画像の各々から輝度に基づくフリッカ成分信頼度を算出し、算出したフリッカ成分信頼度に基づいて、高信頼度と判定された領域のフリッカ成分のみを選択して合成することで精度の高い合成フリッカ成分（図１０（ｄ）参照）を生成する。なお合成に使用する各フリッカ成分の位相差については、フリッカ周期、センサのフレームレート、総行数などから計算される値を用いる。
【０１３６】
次に、ステップＳ１０７において、フリッカ補正係数算出処理が行われる。
この処理は、図６に示すフリッカ補正係数算出部２０７の処理である。フリッカ補正係数算出部２０７は、フリッカ成分合成部２０６の生成した精度の高い１周期分のフリッカ成分を適用して、フリッカ成分の逆相のフリッカ補正係数（基準フリッカ補正係数）を算出する。この処理は、図１１を参照して説明した処理である。
なお、この補正処理を実行する際、フリッカ補正係数算出部２０７は、フリッカ成分合成部２０６の生成した精度の高い１周期分のフリッカ成分を入力し、さらに、位相シフト量算出部２０４から逐次更新された基準フレーム単位のフリッカ成分位相情報を取得して、位相を併せたフレーム単位のフリッカ補正係数を生成する。
【０１３７】
次に、ステップＳ１０８において、フリッカ補正処理を実行する。
この処理は、図６に示すフリッカ補正係数算出部２０７の算出した補正係数を乗算部２０８において、補正前の画像の信号値（画素値）に乗算する処理である。補正係数は、行単位で生成されており、その行単位の補正係数を入力画像の各行の信号値に乗算して補正が実行される。
【０１３８】
なお、前述したようにこの処理は色信号（カラーチャンネル）毎に独立した補正係数を算出して色信号単位で補正処理を行ってもよいし、色信号を区別することなく行単位に設定した共通の補正係数を全ての行構成画素に適用する処理を行う構成としてもよい。
【０１３９】
色信号単位で補正処理を行う場合は例えば以下の処理が実行される。積分処理部２０１は、色信号（カラーチャンネル）個別に前記行単位の信号量の積分値を算出し、フリッカ成分算出部２０５は、色信号個別のフリッカ成分を検出し、フリッカ補正係数算出部２０７は、色信号個別のフリッカ補正係数を算出し、補正部としての乗算部２０８では、フリッカ補正係数算出部２０７の算出した色信号個別のフリッカ補正係数を適用した補正処理を実行する。
【０１４０】
このように、本発明では、実際の照明の輝度変化を忠実に再現したフリッカ成分を解析し、この正確なフリッカ波形に基づくフリッカ補正係数による補正処理が実行されるので、フリッカの除去処理をより効果的に行うことが可能となる。
【０１４１】
［４．広ダイナミックレンジ画像に対応する処理について］
広ダイナミックレンジの画像撮影を行う処理として、露光時間の異なる複数の画像を合成する手法が知られている。
このような広ダイナミックレンジ撮像においては、イメージセンサの露光時間を周期的に変えて撮像を行い、各画素の輝度レベル等に応じた画像合成処理によって広ダイナミックレンジ画像を得る。すなわち低輝度画素部分は、長時間露光画像の画素値を適用し、高輝度画素部分は短時間露光画像の画素値を用いるといった画像合成処理によって、広ダイナミックレンジの画像を生成するものである。なお、各画素値の設定の際には、全体的な整合性を保持させるための画素値算出処理が行われる。
このような処理により、一定時間の露光時間の撮影画像では得られないダイナミックレンジの広い画像を得ることができる。
【０１４２】
このような広ダイナミックレンジ画像生成処理に際して、異なる露光時間の画像を合成する前の処理として、上述のフリッカ補正を施すことで、フリッカを抑制した広ダイナミックレンジ画像を生成することができる。
【０１４３】
例えば、同一の露光時間を有する画像フレームごとにフリッカを検出し、上述した実施例と同様のフリッカ補正処理を行えば良い。複数の露光時間で撮影を行うと、露光時間によっては、飽和画素や、逆に極めて低い値をもつ画素が存在することがある。このような場合においても、画素値に基づき抽出されたフリッカ成分の信頼度を判定して、フレーム間でのフリッカ成分の合成処理を行うことにより、最適なフリッカ補正係数の設定によるフリッカ補正を行うことが可能となる。
【０１４４】
上述したように、本発明の画像処理装置は、画像撮影時の照明光に対応するフリッカ成分を撮影された画像から抽出し、フリッカ波形を合成することにより、実際の光源（蛍光灯など）のフリッカ波形に応じた補正係数を算出し、算出した補正係数によるフリッカ補正処理を実現している。本手法の考え方は、商用電源を用いた時間的に変化する光源であれば、蛍光灯に限らずその他の照明環境下でも有効である。特に、広ダイナミックレンジ撮影、高フレームレート撮影等、フリッカの画像に対する影響が顕著になる場合は、正弦波等でモデル近似を行っていないので、極めて効果的なフリッカ除去補正が実現される。
【０１４５】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０１４６】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１４７】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０１４８】
以上、説明したように、本発明の一実施例の構成によれば、輝度変化のある蛍光灯のような照明環境下において、ＣＭＯＳのようなＸＹアドレス走査型の撮像素子によって撮影された画像データに発生するフリッカを効果的に除去または削減する構成が実現される。本発明の画像処理装置は、フリッカの除去を行う補正対象画像の行単位の信号量の積分値を算出し、この積分値を適用して画像フレームの各行に含まれるフリッカ成分を検出する。この検出フリッカ成分は、実際の照明のフリッカ波形に応じたデータとなる。このフリッカ成分の逆相パターンからなるフリッカ補正係数を算出して、フリッカ補正係数を適用した補正処理を実行する。この処理により実際のフリッカ波形に応じた補正が可能となり、効果的なフリッカの除去が実現される。
【符号の説明】
【０１４９】
１００  撮像装置
１０１  撮像部
１０２  信号処理部
１０３  コーデック（符号化復号処理部）
１０４  記録再生部
１２０  記録メディア
１３０  表示部
１５０  制御部
１５１  メモリ
２００  フリッカ補正処理部
２０１  積分処理部
２０２  フリッカシーン判定部
２０３  静止フレーム検出部
２０４  位相シフト量推定部
２０５  フリッカ成分算出部
２０６  フリッカ成分合成部
２０７  補正係数算出部
２０８  乗算部
２５１  画像
２５２  補正画像
【図２】
0005625371.tif 000006
【図３】
0005625371.tif 000007
【図４】
0005625371.tif 000008
【図５】
0005625371.tif 000009
【図６】
0005625371.tif 000010
【図７】
0005625371.tif 000011
【図８】
0005625371.tif 000012
【図９】
0005625371.tif 000013
【図１０】
0005625371.tif 000014
【図１１】
0005625371.tif 000015
【図１３】
0005625371.tif 000016
【図１】
0005625371.tif 000017
【図１２】
0005625371.tif 000018