(57)【要約】  撮像装置（１００）は、撮像素子（１０２）と、フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を算出する積分算出部（２１０）と、メモリ（２２０）と、メモリ（２２０）内の、最新のフレームおよび最新よりも以前の複数のフレーム間において、同じ水平ラインのライン積分値を平均してライン平均値を算出する平均算出部（２３０）と、メモリ（２２０）内のライン積分値をライン積分値およびライン平均値に基づいて正規化した値から成る波形データを生成する波形データ生成部（２４０）と、フリッカの位相および周波数に関する情報を波形データに基づいて抽出するフリッカ抽出部（２５０）とを備える。
2014199542.tif 000002
【特許請求の範囲】
【請求項１】
画像信号中に含まれ、照明に起因するフリッカを前記画像信号から低減する撮像装置であって、
被写体を撮像して前記画像信号を生成する撮像素子と、
フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を、前記複数の水平ラインの各々に関する画像信号に基づいて算出する積分算出部と、
複数のフレームに関する前記ライン積分値を格納するメモリと、
前記メモリ内の、最新のフレームおよび最新よりも以前に取得した複数のフレーム間において、同じ水平ラインの前記ライン積分値を平均してライン平均値を算出する平均算出部と、
前記メモリ内の前記ライン積分値を同じ水平ラインの前記ライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成する波形データ生成部と、
前記波形データ生成部から取得する前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を特定し、前記フリッカの位相および周波数に関する情報を抽出するフリッカ抽出部と
を備えた、撮像装置。
【請求項２】
前記フリッカ抽出部は、前記位置が特定される毎にカウントアップするカウンタを含み、
前記フリッカ抽出部は、前記位置を少なくとも３つ以上特定し、前記カウンタの値および前記位置に関する情報に基づいて、直線回帰により前記フリッカの位相および周波数に関する情報を抽出する、請求項１に記載の撮像装置。
【請求項３】
前記フレームは、前記撮像素子に関する、有効画素領域の画像および垂直ブランキング期間の無効画素領域の画像を含み、
前記カウンタは、前記有効画素領域および前記無効画素領域において前記位置が特定される毎にカウントアップする、請求項２に記載の撮像装置。
【請求項４】
前記メモリに格納するフレーム数および前記平均算出部が前記メモリから読み出すフレーム数の少なくとも１つは、前記撮像素子のフレームレートに応じて決定される、請求項１から３のいずれかに記載の撮像装置。
【請求項５】
フリッカ抽出部は、前記正規化された値の標準偏差値をルート２倍することにより前記フリッカの振幅を算出する、請求項１から４のいずれかに記載の撮像装置。
【請求項６】
前記フリッカ抽出部は前記波形データにローパスフィルタ処理を実行する、請求項１から５のいずれかに記載の撮像装置。
【請求項７】
前記フリッカ抽出部は、前記正規化された値の符号の変化に応じて、前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を、前記符号の変化前における前記正規化された値および前記符号の変化後における前記正規化された値に基づいて特定する、請求項１に記載の撮像装置。
【請求項８】
撮像素子にて撮像された画像信号中に含まれ、照明に起因するフリッカを前記画像信号から低減する集積回路であって、
フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を、前記複数の水平ラインの各々に関する画像信号に基づいて算出し、
最新のフレームおよび最新よりも以前に取得した複数のフレーム間において、同じ水平ラインの前記ライン積分値を平均してライン平均値を算出し、
前記ライン積分値を同じ水平ラインの前記ライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成し、
前記波形データ生成部から取得する前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を特定し、前記フリッカの位相および周波数に関する情報を抽出するよう構成された、集積回路。
【請求項９】
メモリをさらに備え、
前記メモリは複数のフレームに関する前記ライン積分値を格納する、請求項８に記載の集積回路。
【請求項１０】
撮像素子にて撮像された画像信号中に含まれ、照明に起因するフリッカを前記画像信号から低減するフリッカ低減方法であって、
フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を、前記複数の水平ラインの各々に関する画像信号に基づいて算出する工程と、
最新のフレームおよび最新よりも以前に取得した複数のフレーム間において、同じ水平ラインの前記ライン積分値を平均してライン平均値を算出する工程と、
前記ライン積分値を同じ水平ラインの前記ライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成する工程と、
前記波形データ生成部から取得する前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を特定し、前記フリッカの位相および周波数に関する情報を抽出する工程と
を含む、フリッカ低減方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、照明の明滅に起因して撮影画像に明暗となって生じるフリッカを撮影画像の画像信号から低減する技術に関する。
【背景技術】
【０００２】
蛍光灯（インバーターではないもの）により照らされた環境下においてビデオ撮影した場合、蛍光灯の交流電源周波数（５０Ｈｚや６０Ｈｚ）に起因して輝度信号が変化することにより、撮影画像に明暗が生じる。この現象は一般にフリッカと呼ばれる。フリッカを低減する技術の分野において、特許文献１および２が知られている。【０００３】
特許文献１は、フレーム内の水平ライン毎の画素値を積分して得られるライン積分値を、フリッカ周期とフレーム周期との最大公約数に相当するフレーム数だけメモリに格納し、複数のフレーム間において、対応する水平ラインのライン積分値の平均値に基づいて規格化されたライン積分値からフリッカを解析する技術を開示する。【０００４】
特許文献２は、フリッカの位相差が１８０度となる２つの画像の同じ領域の積分値の差分を示す波形に基づいてフリッカの位相および振幅に関する情報を抽出する技術を開示する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２２２２２８号公報
【特許文献２】特開２００７−１８０７４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来の技術では、さらなるフリッカの検出精度の向上が求められていた。また、さらなるメモリ使用量の低減が求められていた。【０００７】
本願の、限定的ではない例示的なある実施形態は、フリッカの検出精度が向上し、かつ、メモリ使用量を低減できる撮像装置を提供する。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の一態様は、画像信号中に含まれ、照明に起因するフリッカを前記画像信号から低減する撮像装置であって、被写体を撮像して前記画像信号を生成する撮像素子と、フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を、前記複数の水平ラインの各々に関する画像信号に基づいて算出する積分算出部と、複数のフレームに関する前記ライン積分値を格納するメモリと、前記メモリ内の、最新のフレームおよび最新よりも以前に取得した複数のフレーム間において、同じ水平ラインの前記ライン積分値を平均してライン平均値を算出する平均算出部と、前記メモリ内の前記ライン積分値を同じ水平ラインの前記ライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成する波形データ生成部と、前記波形データ生成部から取得する前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を特定し、前記フリッカの位相および周波数に関する情報を抽出するフリッカ抽出部とを備えた撮像装置を含む。【０００９】
上述の一般的かつ特定の態様は、システム、方法およびコンピュータプログラムを用いて実装され、またはシステム、方法およびコンピュータプログラムの組み合わせを用いて実現され得る。
【発明の効果】
【００１０】
本発明の一態様にかかる撮像装置によれば、フリッカの検出精度が向上し、かつメモリ使用量を低減することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】例示的な実施形態１による撮像装置１００のブロック構成図である。
【図２】例示的な実施形態１によるフリッカ低減部２００のブロック構成図である。
【図３】フリッカ低減部２００の動作を示したフローチャートである。
【図４】１フレームの画像に対するライン積分値処理のイメージ図である。
【図５】メモリ２２０に書き込まれたＮフレーム分のライン積分値を示すグラフである。
【図６】波形データの生成を説明する図である。
【図７】波形データに基づいてゼロ点を抽出する処理を説明する図である。
【図８】直線近似による内分点の算出方法を説明する図である。
【図９】直線回帰によりフリッカの位相および周波数に関する情報の抽出を説明する図である。
【発明を実施するための形態】
【００１２】
以下、本願発明者らが考察した問題点を説明する。その後、添付の図面を参照しながら、本発明の例示的な実施形態にかかる撮像装置を説明する。
【００１３】
本発明の基礎となった知見は以下のとおりである。
【００１４】
従来の技術では、フリッカの低減処理においてフリッカとフレームレートとの位相が符合するフレーム数が必要であった。このフレーム数はフリッカの周波数とフレームレートとの最大公約数となる周波数に基づく数である。例えば、フリッカの周波数が１００Ｈｚであり、フレームレートが６０ｆｐｓである場合、最大公約数となる周波数は２０Ｈｚとなり、フレーム数は３（６０／２０）となる。
【００１５】
しかしながら、高フレームレートによる撮影を考えると、例えば、フリッカ周波数が１００Ｈｚであり、フレームレートが２４０ｆｐｓである場合、最大公約数となる周波数は２０Ｈｚとなるが、フレーム数に換算すると１２（２４０／２０）フレームと大きくなる。フレームレートが６０ｆｐｓから２４０ｆｐｓに高くなると、４倍のフレーム数が必要となる。
【００１６】
このように、高フレームレートの撮影では、そのフレームレートに依存して、多数のフレームに関する情報をメモリに格納することが必要となり、メモリ容量が増大してしまう問題があった。
【００１７】
また、従来の技術では、フリッカの位相差が１８０度となる２つの画像の同じ領域の積分値の差分を示す波形に基づいてフリッカの位相および振幅に関する情報が抽出されていた。
【００１８】
しかしながら、動画撮影している被写体の動きやカメラ本体のブレにより、特に被写体が画像の垂直方向に移動する場合、画像の輝度変化がフリッカ成分と重なり、フリッカ成分のみを特定することが困難であった。特に、２つの画像領域のみでフリッカ成分を検出する場合、フリッカ成分の誤検出に繋がり易い。
【００１９】
本願発明者らは、上述の問題点に関し、本願発明をなすに至った。
【００２０】
本発明の一態様の概要は以下のとおりである。
【００２１】
本発明の一態様である撮像装置は、画像信号中に含まれ、照明に起因するフリッカを前記画像信号から低減する撮像装置であって、被写体を撮像して前記画像信号を生成する撮像素子と、フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を、前記複数の水平ラインの各々に関する画像信号に基づいて算出する積分算出部と、複数のフレームに関する前記ライン積分値を格納するメモリと、前記メモリ内の、最新のフレームおよび最新よりも以前に取得した複数のフレーム間において、同じ水平ラインの前記ライン積分値を平均してライン平均値を算出する平均算出部と、前記メモリ内の前記ライン積分値を同じ水平ラインの前記ライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成する波形データ生成部と、前記波形データ生成部から取得する前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を特定し、前記フリッカの位相および周波数に関する情報を抽出するフリッカ抽出部とを備えている。
【００２２】
ある態様において、前記フリッカ抽出部は、前記位置を特定する毎にカウントアップするカウンタを含み、前記フリッカ抽出部は、前記位置を少なくとも３つ以上特定し、前記カウンタの値および前記位置に関する情報に基づいて、直線回帰により前記フリッカの位相および周波数に関する情報を抽出する。
【００２３】
ある態様において、前記フレームは、前記撮像素子に関する、有効画素領域の画像および垂直ブランキング期間の無効画素領域の画像を含み、前記カウンタは、前記有効画素領域および前記無効画素領域において前記位置を特定する毎にカウントアップする。
【００２４】
ある態様において、前記メモリに格納するフレーム数および前記平均算出部が前記メモリから読み出すフレーム数の少なくとも１つは、前記撮像素子のフレームレートに応じて決定される。
【００２５】
ある態様において、フリッカ抽出部は、前記正規化された値の標準偏差値をルート２倍することにより前記フリッカの振幅を算出する。
【００２６】
ある態様において、前記フリッカ抽出部は前記波形データにローパスフィルタ処理を実行する。
【００２７】
ある態様において、前記フリッカ抽出部は、前記正規化された値の符号の変化に応じて、前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を、前記符号の変化前における前記正規化された値および前記符号の変化後における前記正規化された値に基づいて特定する。
【００２８】
本発明の一態様である集積回路は、撮像素子にて撮像された画像信号中に含まれ、照明に起因するフリッカを前記画像信号から低減する集積回路であって、フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を、前記複数の水平ラインの各々に関する画像信号に基づいて算出し、最新のフレームおよび最新よりも以前に取得した複数のフレーム間において、同じ水平ラインの前記ライン積分値を平均してライン平均値を算出し、前記ライン積分値を同じ水平ラインの前記ライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成し、前記波形データ生成部から取得する前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を特定し、前記フリッカの位相および周波数に関する情報を抽出するよう構成されている。
【００２９】
ある態様において、前記集積回路はメモリをさらに備え、前記メモリは複数のフレームに関する前記ライン積分値を格納する。
【００３０】
本発明の一態様であるフリッカ低減方法は、撮像素子にて撮像された画像信号中に含まれ、照明に起因するフリッカを前記画像信号から低減するフリッカ低減方法であって、フレーム毎に、フレームに含まれる複数の水平ラインの各々に関する輝度値のライン積分値を、前記複数の水平ラインの各々に関する画像信号に基づいて算出する工程と、最新のフレームおよび最新よりも以前に取得した複数のフレーム間において、同じ水平ラインの前記ライン積分値を平均してライン平均値を算出する工程と、前記ライン積分値を同じ水平ラインの前記ライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成する工程と、前記波形データ生成部から取得する前記波形データの値が略ゼロとなる前記複数のフレーム内の水平ラインの位置を特定し、前記フリッカの位相および周波数に関する情報を抽出する工程とを含む。
【００３１】
（実施形態１）
以下、本発明による実施形態１を説明する。
【００３２】
［撮像装置１００の構成］
図１は、本実施形態による撮像装置１００のブロック構成図である。撮像装置１００は被写体を撮影し、撮影した画像を処理して記録媒体等に記録する。例えば、撮像装置１００は、デジタルビデオカメラやデジタルスチルカメラである。
【００３３】
撮像装置１００は、光学系１０１と、撮像素子１０２と、コントローラ１０３と、ＡＦＥ（アナログフロントエンド）部１０４と、光学系ドライバ１０５と、撮像素子（ＩＳ）制御部１０６と、デジタル信号処理部１０７と、メモリ１１０とを備える。
【００３４】
ここで、図１を参照しながら、各構成要素の詳細を説明する。
【００３５】
光学系１０１は、絞り、手振れ補正レンズ、および、ズームレンズやフォーカスレンズを含む複数のレンズ群を有する。ズームレンズを光軸に沿って移動させることにより、被写体像の拡大、縮小をすることができる。また、フォーカスレンズを光軸に沿って移動させることにより、被写体像の合焦位置を調整することができる。なお、光学系１０１を構成するレンズの数は要求される機能に応じて適宜決定される。
【００３６】
撮像素子１０２は、例えばＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）センサである。撮像素子１０２は光学系１０１によって撮像面に結像された光を電気信号に変換してアナログ画像信号を生成する。撮像素子１０２は生成したアナログ画像信号をＡＦＥ部１０４に出力する。撮像素子１０２は、例えばライン露光、転送の各種動作を行う。ライン露光はローリングシャッタとも呼ばれる。
【００３７】
コントローラ１０３は、半導体素子などにより構成される。コントローラ１０３は、ハードウェアのみで構成してもよいし、ハードウェアとソフトウェアとを組み合わせることにより実現してもよい。コントローラ１０３はマイクロコンピュータなどにより実現できる。コントローラ１０３は撮像装置１００全体を制御する。
【００３８】
ＡＦＥ部１０４は、コントローラ１０４の制御を受けて、撮像素子１０２から出力されたアナログ画像信号に、例えばＣＤＳ（Ｃｏｒｒｅｌｌａｔｅｄ  Ｄｏｕｂｌｅ  Ｓａｍｐｌｉｎｇ）によるノイズ除去といったアナログ信号処理を施し、処理後のアナログ画像信号をデジタル画像信号に変換する。
【００３９】
光学系ドライバ１０５は、コントローラ１０３の指示を受けて、光学系１０１に含まれる絞り、ズームレンズおよびフォーカルレンズを駆動する。
【００４０】
撮像素子制御部（ＩＳ制御部）１０６は、コントローラ１０３の指示を受けて、撮像素子１０２を制御する。
【００４１】
デジタル信号処理部１０７は、例えばデジタルシグナルプロセッサ（ＤＳＰ）により実現可能である。デジタル信号処理部１０７は、フリッカ低減部２００と、信号処理部１０８と、圧縮符号化部１０９とを含む。
【００４２】
デジタル信号処理部１０７は、ＡＦＥ部１０４から出力されたデジタル画像信号にデジタル信号処理を施し、撮像装置１００の出力画像ファイルを生成する。
【００４３】
フリッカ低減部２００は、蛍光灯により照らされた環境下において撮影を行ったときに、照明の明滅に起因して撮影画像に明暗となって生じる、ＡＦＥ部１０４から出力されるデジタル画像信号に含まれるフリッカ成分を低減する。フリッカ低減部２００の構成の詳細は後述する。
【００４４】
信号処理部１０８は、フリッカ低減部２００から出力されたデジタル画像信号に、例えば、ガンマ補正、ホワイトバランス補正、傷補正、出力画像形式に従った画像フォーマットの変換の各種処理を施す。
【００４５】
圧縮符号部１０９は、信号処理部１０８から出力されたデジタル画像信号を、例えばＨ．２６４規格やＭＰＥＧ２規格に準拠した圧縮形式により圧縮する。
【００４６】
メモリ１１０は、フラッシュメモリや強誘電体メモリなどにより構成される。メモリ１１０は、デジタル信号処理部１０７により生成された画像ファイル等のデータを格納することが可能である。
【００４７】
［フリッカ低減部２００の構成］
図２を参照しながら、フリッカ低減部２００のブロック構成を説明する。
【００４８】
図２は、本実施形態によるフリッカ低減部２００のブロック構成である。
【００４９】
フリッカ低減部２００は、積分算出部２１０と、内部メモリ２２０と、平均算出部２３０と、波形データ生成部２４０と、フリッカ抽出部２５０と、フリッカ係数算定部２６０と、補正部２７０とを含む。
【００５０】
積分算出部２１０は、サンプリング部２１１およびライン積分算出部２１２を含む。フリッカ抽出部２５０は、フィルタ処理部２５１、ゼロ点抽出部２５２、直線近似算定部２５３および振幅算定部２５４を含む。
【００５１】
上記の各構成要素はハードウェアとして実装してもよい。例えば、フリッカ低減部２００が撮像装置１００のために設計、製造された専用の集積回路チップである場合には、上記の各構成要素はフリッカ低減部２００内の独立した集積回路として実装される。
【００５２】
または、フリッカ低減部２００は各構成要素の機能を発揮する汎用のプロセッサとして実現されてもよい。例えば、プロセッサ内部のメモリに、各構成要素の機能を発揮するコンピュータプログラムが実装されており、プロセッサが逐次コンピュータプログラムを実行することにより、各構成要素の機能が実現されてもよい。
【００５３】
または、フリッカ低減部２００はハードウェアとソフトフェアとの組み合わせにより実現してもよい。
【００５４】
［撮像装置１００の動作］
まず、撮像装置１００の動作の概要を説明した後に、撮像装置１００に実装されたフリッカ低減部２００の動作を説明する。
【００５５】
撮像素子１０２は光学系１０１によって撮像面に結像された光を電気信号に変換し、アナログ画像信号を生成する。
【００５６】
次に、ＡＦＥ部１０４は、撮像素子１０２から出力されたアナログ画像信号にアナログ信号処理を施し、処理後のアナログ画像信号をデジタル画像信号に変換する。
【００５７】
次に、デジタル信号処理部１０７のフリッカ低減部２００は、ＡＦＥ部１０４から出力されるデジタル画像信号に含まれるフリッカ成分を低減する。
【００５８】
次に、デジタル信号処理部１０７の信号処理部１０８は、フリッカ低減部２００から出力されたデジタル画像信号に、ガンマ補正、ホワイトバランス補正、傷補正、出力画像形式に従った画像フォーマットの変換の各種処理を施す。
【００５９】
次に、デジタル信号処理部１０７の圧縮符号部１０９は、信号処理部１０８から出力されたデジタル画像信号を、例えばＨ．２６４規格やＭＰＥＧ２規格に準拠した圧縮形式により圧縮し圧縮画像ファイルする。コントローラ１０３は圧縮画像ファイルをメモリ１１０に書き込む。
【００６０】
次に、図３から９を参照して、フリッカ低減部２００の動作を説明する。
【００６１】
図３は、フリッカ低減部２００の動作を示したフローチャートである。
【００６２】
サンプリング部２１１は、入力画像の１フレームを構成する複数の水平ラインの一部を抽出する。以降、サンプリング部２１１のライン抽出の動作を「間引く」と称する場合がある。
【００６３】
サンプリング部２１１は、抽出後の水平ラインに関するデジタル画像信号をライン積分算出部２１２に出力する（ステップＳ１０１）。例えば、サンプリング部２１１は、８ライン毎の水平ラインに関するデジタル画像信号をライン積分算出部２１２に出力する。
【００６４】
次に、ライン積分算出部２１２は、抽出された水平ラインに関するデジタル画像信号に基づいてその水平ラインの画素値（輝度値）のライン積分値を算出する（ステップＳ１０２）。ライン積分算出部２１２は、算出したライン積分値をメモリ２２０に書き込む。ライン積分値は、水平ラインに存在する各画素の輝度値を積算した値である。
【００６５】
図４は、１フレームの画像に対するライン積分値処理のイメージ図である。図４に示すように、１フレームの画像は有効画素領域および無効画素領域を含む。無効画素領域は一般的に垂直ブランキング期間と呼ばれる。ライン積分算出部２１２は、１フレーム分の、抽出された水平ラインに関する輝度値のライン積分値を順次算出する。このとき、ライン積分算出部２１２は、垂直ブランキング期間にある水平ラインの画素値のライン積分値を算出しない。
【００６６】
次に、ライン積分算出部２１２は、算出した水平ラインの画素値のライン積分値をメモリ２２０に書き込む（ステップＳ１０３）。ライン積分算出部２１２は、最初のフレーム（図４のフレーム１）に関する水平ラインの画素値のライン積分値をメモリ２２０に書き込むと、次のフレームに関する水平ラインの画素値のライン積分値をメモリ２２０に書き込む。
【００６７】
図５は、メモリ２２０に書き込まれたＮフレーム分のライン積分値を示すグラフである。縦軸はライン積分値Ｉｙを、横軸はフレーム１からＮまでに存在する連続した水平ラインの番号を示す。
【００６８】
ここで、図５（ａ）を参照して、フレーム１からＮまでに存在する連続した水平ラインの番号を説明する。図５（ａ）は有効画素領域の水平ライン数が７２０である、１フレーム目の入力画像フレーム１と２フレーム目の入力画像フレーム２とを示す。入力画像フレーム１のトップに位置する水平ラインを０番目の水平ラインとする。サンプリング部２１１により水平ラインが８ライン毎に抽出されるため、次にメモリ２２０に格納される水平ラインは７番目の水平ラインとなる。以降、８ライン毎に番号が割り当てられる。
【００６９】
次に、入力画像フレーム２のトップに位置する水平ラインに７２０番を割り当てる。入力画像フレーム３以降も同様に水平ラインの番号が割り当てられる。入力画像フレームＮのトップに位置する水平ラインは７２０＊（Ｎ−１）番が割り当てられる。
【００７０】
サンプリング部２１１により水平ラインが間引かれているため、図５（ｂ）に示すように、各ライン積分値は離散的な水平ライン番号の位置にプロットされる。
【００７１】
ライン積分算出部２１２は、所定のフレーム数Ｎの水平ラインの画素値のライン積分値をメモリ２２０に書き込む（ステップＳ１０４）。所定のフレーム数Ｎとは、例えば１０である。ライン積分算出部２１２は、所定のフレーム数Ｎに到達するまで、ステップＳ１０１からＳ１０３の処理を繰り返す。
【００７２】
このように、フレームを構成する全ての水平ラインに関する画素値のライン積算値を取得する必要がなく、メモリ２２０はサンプリング部２１１により抽出された一部の水平ラインの画素値のライン積算値を格納できる容量を有していればよい。この結果、メモリサイズを低減することができる。
【００７３】
次に、平均算出部２３０は、メモリ２２０内の、最新のフレーム（フレームＮ）および最新よりも以前に取得した複数のフレーム（フレーム１からＮ−１）間において、同じ水平ラインのライン積分値を平均して、ライン平均値を算出する（ステップＳ１０５）。
【００７４】
図４に示すように、平均算出部２３０は、フレーム１からＮ間における同一の水平ラインのライン積分値を積算し、積算したライン積分値をフレーム数Ｎにより除算してライン平均値を算出する。平均算出部２３０は、メモリ２２０上に存在する水平ラインに関するライン平均値をすべて算出し、算出したライン平均値を波形データ生成部２４０に送信する。
【００７５】
次に、波形データ生成部２４０は、メモリ２２０内のライン積分値を同じ水平ラインのライン平均値により除算して１を減算する正規化処理を実行し、正規化された値から成る波形データを生成する（ステップＳ１０６）。
【００７６】
波形データ生成部２４０は、下記の数式１によりメモリ２２０内のライン積分値を正規化する。
【数１】
2014199542.tif 000003
ここで、Ｉｍｙ（ｉ）は１フレーム内のｉ番目のライン平均値を示し、Ｉｙ（ｉ、ｊ）は、Ｊフレーム内のｉ番目の水平ラインのライン積算値を示す。Ｖ（ｉ、ｊ）はＩｙ（ｉ、ｊ）を正規化した値である。Ｊの値は、メモリ２２０内部に格納されたフレーム数に対応して１〜Ｎの値となる。ｉの値は、１フレーム内の水平ライン数に対応し、例えば、有効画素領域のライン数が７２０であれば、０から７１９の値となる。ただし、サンプリング部２１１により水平ラインが間引かれているため、ｉの値は０から７１９間の離散的な値となる。
【００７７】
図６は、波形データの生成を説明する図である。ここで、まず、図６（ａ）を参照しながら、数式１によるライン積分値の正規化を説明する。図６（ａ）に示すように、典型的には、フリッカの輝度信号はフレーム全体の輝度平均値Ｉａｖｅに重畳していると考えることができる。従って、フリッカの輝度信号が重畳した各画素値の輝度値Ｉを輝度平均値Ｉａｖｅで除算し、１を減算すことにより、フリッカ波形と同じ周波数および初期位相を有する波形が再現される。
【００７８】
図６（ｂ）の縦軸はライン積分値Ｉｙ（ｉ、ｊ）を、横軸はフレーム１からＮまでに存在する連続した水平ラインの番号を示す。図６（ｂ）は、ライン積分値Ｉｙ（０、１）、ライン積分値Ｉｙ（０、２）、ライン積分値Ｉｙ（０、３）の点をそれぞれ示す。これら３点は、メモリ２２０内部に格納された、１フレーム、２フレーム、３フレーム間の０番目の水平ラインに関する画素値のライン積分値を示している。
【００７９】
波形データ生成部２４０は、メモリ２２０内部に格納された、フレーム１からＮまでに存在する水平ラインに関するライン積算値Ｉｙ（ｉ、ｊ）を数式１により正規化する。図６（ｃ）の縦軸は正規化後のライン積分値Ｖ（ｉ、ｊ）を、横軸はフレーム１からＮまでに存在する連続した水平ラインの番号を示す。図６（ｃ）は、ライン積分値Ｉｙ（０、１）、ライン積分値Ｉｙ（０、２）、ライン積分値Ｉｙ（０、３）を数式１によりそれぞれ正規化した値であるＶ（０、１）、Ｖ（０、２）、Ｖ（０、３）を示す。
【００８０】
正規化された値Ｖ（ｉ、ｊ）のすべての点をプロットし、点を線で接続すると図６（ｃ）に示すような周期的な波形が得られる。図６（ｃ）に示す波形は、照明の明滅に起因して生じたフリッカ波形を表わしている。上述したとおり、サンプリング部２１１は、８ライン毎に水平ラインを抽出しているため、波形データ生成部２４０は、フレーム１からＮ間において、８ラインのサンプリング間隔により、フリッカ波形と同じ周波数および初期位相を有する波形を再現する。
【００８１】
波形データ生成部２４０は得られた波形データを後段のフリッカ抽出部２５０に出力する。
【００８２】
次に、フリッカ抽出部２５０は、波形データ生成部２４０から取得する波形データの値が略ゼロとなる複数のフレーム内の水平ラインの位置（番号）を特定し、フリッカの位相および周波数に関する情報を抽出するする（ステップＳ１０７からＳ１０８）。
【００８３】
波形データ生成部２４０が、フリッカ波形と同じ周波数および初期位相を有する波形を再現するときに、被写体の動きなどが影響する場合がある。フリッカと同様に、被写体の動きも輝度値の明暗の変化として撮像素子１０２によりサンプリングされるためである。
【００８４】
フリッカ抽出部２５０内のフィルタ処理部２５１は、波形データ生成部２４０から取得する波形データにローパスフィルタ処理を実行する。ローパスフィルタは被写体の動きに起因して生じる輝度値の明暗の変化（周波数）をカットできるよう設計され得る。これにより、フリッカ波形と同じ周波数および初期位相を有する波形を再現するに際し、被写体の動きなどの影響を低減できる。
【００８５】
ゼロ点抽出部２５２は、波形データ値Ｖが略ゼロとなる、フレーム１からＮ間での水平ラインの位置をローパスフィルタ処理後の波形データに基づいて特定する（ステップＳ１０７）。
【００８６】
図７は、波形データに基づいてゼロ点を抽出する処理を説明する図である。図７の波形の横軸は、フレーム１からＮまでに存在する連続した水平ラインの座標Ｙを示す。水平ラインの座標Ｙは既に説明した水平ラインの番号に相当する。図７に示すように、ゼロ点抽出部２５２は、ローパスフィルタ処理後の波形において、波形データ値Ｖが略ゼロとなる回数をカウントし、かつ、波形データ値Ｖがゼロとなる座標Ｙを算出する。
【００８７】
サンプリング部２１１は、水平ラインを抽出しているため、波形データ生成部２４０が出力する波形データは、ローパスフィルタ処理後の波形において波形データ値Ｖが略ゼロとなる座標Ｙのデータを必ずしも含んでいない。このため、ゼロ点抽出部２５２は、正規化された値の符号の変化に応じて、波形データの値が略ゼロとなる複数のフレーム内の水平ラインの位置（内分点）を、符号の変化前における正規化された値および符号の変化後における正規化された値に基づいて特定する。
【００８８】
図８は、波形データ値Ｖが略ゼロとなる水平ラインの座標Ｙを直線近似により算出する算出方法を説明する図である。ゼロ点抽出部２５２は、波形データ値Ｖの符号の変化を監視する。ゼロ点抽出部２５２は、符号の変化を検出すると、符号の変化前後の隣接する２つの波形データ値（Ｙ０、Ｖ０）および（Ｙ１、Ｖ１）を用いて数式２により、波形データ値Ｖが略ゼロとなる内分点の座標Ｙを直線近似により算出する。
【数２】
2014199542.tif 000004
Ｖ０、Ｖ１はそれぞれ隣接する２つの波形データ値Ｖを示し、Ｙ０、Ｙ１は座標Ｙを示す。
【００８９】
再び図７を参照する。図７に示す波形の例では、ゼロ点抽出部２５２は、波形データ値Ｖが略ゼロとなる座標Ｙとして２０、３７１、７２０、１４１９、１７７１、２１２０を特定する。
【００９０】
上述のとおり、ライン積分算出部２１２は、垂直ブランキング期間にある水平ラインの画素値のライン積分値を算出しない。このため、無効画素領域における座標Ｙおよび波形データ値Ｖは存在しない。また、垂直ブランキング期間が長いとき、無効画素領域も広くなるため、数式２を用いた直線近似では実際に波形データ値Ｖが略ゼロとなる座標が得られない場合がある。このため、ゼロ点抽出部２５２は、無効画素領域における波形データ値Ｖが略ゼロとなる座標Ｙを特定しない。
【００９１】
本実施形態では、ゼロ点抽出部２５２は内部にカウンタ２５５を含み、カウンタ２５５は波形データ値Ｖがゼロとなる回数をカウントする。また、ゼロ点抽出部２５２は、無効画素領域を含めて波形データ値Ｖが略ゼロとなることをカウンタ２５５に通知する。なお、無効画素領域を含める理由は後述する。
【００９２】
図７に示す例では、ローパスフィルタ処理後の波形において、波形データ値Ｖがゼロとなる回数は８回である。カウンタ２５５は、ゼロ点抽出部２５２からの通知に応答して無効画素領域も含めてカウントアップを行う。カウンタの初期値は「０」である。ゼロ点抽出部２５２が座標Ｙ２０を特定すると、波形データ値Ｖが略ゼロとなることをカウンタ２５５に通知し、これに応答してカウンタ２５５はカウンタ値を「１」にする。以降、カウンタ値は「２」、「３」となる。カウンタ２５５は無効画素領域において波形データ値Ｖが略ゼロとなる通知を受けて、カウンタ値を「４」にカウントアップする。
【００９３】
ゼロ点抽出部２５２は、波形データ値Ｖが略ゼロとなる座標Ｙと、無効画素領域に関するカウンタ値を除くカウンタ値（図７のカウンタ値「４」と「８」とを除く）とを関連付けた情報を後段の直線近似算定部２５３に出力する。
【００９４】
次に、直線近似算定部２５３は、ゼロ点抽出部２５２から出力される情報に基づいて、直線回帰によりフリッカの位相および周波数に関する情報を抽出する（ステップＳ１０８）。
【００９５】
図９は、直線回帰によりフリッカの位相および周波数に関する情報の抽出を説明する図である。図９の横軸は座標Ｙを示し、縦軸（ｍ軸）はカウンタ２５５のカウンタ値を示す。直線近似算定部２５３は、ゼロ点抽出部２５２から出力される情報に含まれる少なくとも３つの、座標Ｙおよびカウンタ値の組に基づいて、直線回帰により直線の傾きおよびｍ軸の切片の値を算出する。
【００９６】
図９に示すように、１周期の波形に含まれる水平ライン数が波形の周期Ｔに相当する。直線の傾きは波形の周期Ｔの逆数となる。従って、直線の傾きはフリッカの周波数ｆを示す。また、ｍ軸の切片の値はフレームの初期位相を示す。このように、直線近似算定部２５３は、直線の傾きおよびｍ軸の切片の値を算出することによりフリッカの位相および周波数に関する情報を抽出できる。
【００９７】
被写体の動きやカメラ本体のブレに起因した輝度値の明暗の変化がフリッカ波形に影響を及ぼす場合がある。特定の周波数で振動するフリッカ波形では、振幅がゼロとなる点が周期的に発生する。振幅がゼロとなる位置とその回数を座標上にプロットすると直線上に並ぶという性質がある。
【００９８】
ここで、カウンタ２５５は無効画素領域を含めてカウントアップ動作を行う理由を説明する。もし、カウンタ２５５が無効画素領域を含めずにカウントアップ動作を行うと、例えば、図７に示す座標Ｙが１４１９である点のカウント値は「４」となる。この場合、周期性が崩れ、座標Ｙが１４１９、カウンタ値が「４」の点をプロットしても直線上には並ばない。以降の点（座標Ｙが１７７１、２１２０の点）も直線上からずれてしまう。カウンタ２５５が無効画素領域を含めてカウントアップ動作を行う理由は、このようなずれ（周期性の崩れ）を回避するためである。
【００９９】
波形データ生成部２４０により再現される波形においても、振幅がゼロとなる点が周期的に発生する。波形データ値Ｖが略ゼロとなる座標Ｙが存在し、座標Ｙとカウンタ値との組を座標上にプロットすると直線上に並ぶ。座標Ｙおよびカウンタ値により特定される各座標点を直線近似することにより、波形データの個々の点が被写体の動きやカメラ本体のブレの影響を受けて乱れた場合でも、波形データ全体としてフリッカの情報を抽出できる。この結果、入力画像フレームから水平ラインを間引いた場合であっても、フリッカの検出精度を向上させることができる。
【０１００】
さらに、本実施形態では、フリッカ抽出部２５０内のフィルタ処理部２５１は、波形データ生成部２４０から取得する波形データにローパスフィルタ処理を実行する。この結果、波形データ値Ｖが略ゼロとなる座標Ｙ近辺におけるゼロ点の発生が低減され、フリッカの検出精度をさらに向上させることができる。
【０１０１】
振幅算定部２５４は、波形データ値Ｖの標準偏差σを計算する。振幅算定部２５４は、数式３によりフリッカの振幅Ａを算出する（ステップＳ１０８）。
【数３】
2014199542.tif 000005
ここで、σは波形データ値Ｖの標準偏差である。
【０１０２】
次に、フリッカ係数算定部２６０は、フリッカ抽出部２５０からのフリッカの情報（周波数、位相、振幅）に基づいて、フリッカ低減部２１０に入力する現在の入力画像Ｉに対応するフリッカ係数を求める（ステップＳ１０９）。
【０１０３】
次に、補正部２７０は、フリッカ係数算定部２６０からのフリッカ係数に基づいて、現在の入力画像Ｉにフリッカ低減処理を行う（ステップＳ１１０）。より具体的には、補正部２７０は、フリッカ係数に１を加えた値で入力画像Ｉを除算することによって、入力画像Ｉからフリッカを低減する処理を行う。補正部２７０は、処理後の画像データを後段の信号処理部１０８に出力する。
【０１０４】
フリッカ低減部２１０によるフリッカ係数の更新のタイミングの例を説明する。
【０１０５】
フリッカ係数は、所定のタイミングで更新される。所定のタイミングとは、例えば、１２フレーム毎である。フリッカ低減部２１０は、動画ストリームを構成する連続するフレーム間の一部のフレームである、最初の１から１２フレームに基づいてフリッカ係数Ａを算出する。１３フレームから２４フレーム間は、補正部２７０は、フリッカ係数Ａを用いて入力画像Ｉからフリッカを低減する処理を行う。次の２５から３６フレーム間は、補正部２７０は１３から２４フレームに基づくフリッカ係数Ｂを用いて、入力画像Ｉからフリッカを低減する処理を行う。
【０１０６】
本発明の一態様によれば、フリッカを低減するに際し、被写体の動きやカメラ本体のブレの影響を低減するため、解析に使用するフレーム数を増やしてフリッカの検出精度を向上させることができ、かつ、メモリ使用量を低減できる。
【０１０７】
（他の変形例）
上述した実施形態１では、フリッカ低減部２１０を有する機器が撮像装置である例を示した。しかしながら、本発明の一態様はこれに限定されず、例えば、フリッカ低減部２１０を有する機器はレコーダであってもよい。
【０１０８】
実施形態１では、ライン積分算出部２１２は、水平ラインの画素値のライン積分値を算出する例を示した。しかしながら、本発明の一態様はこれに限定されず、ライン積分算出部２１２は、水平ラインの画素値のライン積分値を算出し、ライン積分値を水平ラインの画素数により除算してライン積分値の平均値を算出してもよい。
【０１０９】
実施形態１では、ライン積分値は水平ラインに存在する各画素の輝度値を積算した値である。しかしながら、本発明の一態様はこれに限定されない。例えば、ライン積分算出部２１２は、１水平ライン内の所定の条件を満たす画素に関する輝度値のみを積分してライン積分値を算出してもよいし、このライン積分値を所定の条件を満たす画素数により除算して正規化してもよい。輝度値を１２ビットで表すと、所定の条件とは、例えば、画素の輝度値が下限値２０４から上限値３４８１の範囲にあることである。下限値以上とすることによって、ＳＮ比（ｓｉｇｎａｌ  ｔｏ  Ｎｏｉｓｅ）が良くない画素が除かれ、上限値以下とすることにより、飽和している恐れがある画素が除かれる。このため、フリッカの周波数、位相、振幅に関する情報の検出精度が向上することが期待される。
【０１１０】
実施形態１において、フリッカ抽出部２１０が抽出したフリッカの振幅が所定値以下の値である場合、補正部２７０はフリッカの低減処理を実行しないようにしてもよい。この結果、補正部２７０での消費電力を低減できる。
【０１１１】
実施形態１では、撮像素子１２０はＣＭＯＳセンサであったが、本発明の一態様はこれに限定されない。例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）センサであってもよい。ＣＣＤセンサはグローバルシャッタ式のイメージセンサであり、グローバルシャッタに起因したフレーム間で生じるフリッカを低減することができる。
【０１１２】
実施形態１では、フリッカ低減部２１０の入力画像は、ＡＦＥ部１０４から出力されるデジタル画像信号である。このデジタル画像信号はＲＡＷデータであり、例えば１２ビット幅の信号である。しかしながら、本発明の一態様はこれに限定されず、フリッカ低減部２１０の入力画像は、例えばＨ．２６４規格に準拠して圧縮された圧縮画像データであってもよい。圧縮画像データは、例えば、８ビット幅の信号である。圧縮画像データのビット幅はＲＡＷデータのビット幅と比べて少ないため、フリッカの検出精度は若干落ちるものの、圧縮画像データからフリッカを低減できる。
【０１１３】
このように、フリッカ低減部２１０が圧縮画像データを処理する場合、本発明の一態様は、クラウドサーバ上のメモリ内に実装されるコンピュータプログラムにも適用され得る。
【０１１４】
クラウドサーバの利用者がクラウドサーバ上に圧縮画像データ（動画像データ）をアップロードする。クラウドサーバのコンピュータはメモリに実装されたコンピュータプログラムを実行して、フリッカ成分を含む動画像データからフリッカ成分を除去する。利用者は処理後の動画像データをダウンロードすることにより、フリッカ成分が除去された動画像データを得ることができる。
【０１１５】
本発明の一態様は、実施形態１によるフリッカの低減処理を規定するソフトウェア（コンピュータプログラム）にも適用され得る。そのようなコンピュータプログラムに規定される動作は、例えば図３に示すとおりである。このようなコンピュータプログラムは、可搬型の記録媒体に記録されて提供され得る他、電気通信回線を通じても提供され得る。コンピュータに内蔵されたプロセッサがこのようなコンピュータプログラムを実行することにより、実施形態１で説明した各種動作を実現することができる。
【産業上の利用可能性】
【０１１６】
本発明の一態様による撮像装置は、照明の明滅に起因して撮影画像に明暗となって生じるフリッカを撮影画像の画像信号から低減するに際して有用である。
【符号の説明】
【０１１７】
１００    撮像装置
１０１    光学系
１０２    撮像素子
１０３    コントローラ
１０４    ＡＦＥ部
１０５    光学系ドライバ
１０６    ＩＳ制御部
１０７    デジタル信号処理部
１０８    信号処理部
１０９    圧縮符号化部
１１０    メモリ
２００    フリッカ低減部
２１０    積分算出部
２１１    サンプリング部
２１２    ライン積分算出部
２２０    メモリ
２３０    平均算出部
２４０    波形データ生成部
２５０    フリッカ抽出部
２５１    フィルタ処理部
２５２    ゼロ点抽出部
２５３    直線近似部
２５４    振幅算定部
２５５    カウンタ
２６０    フリッカ係数算定部
２７０    補正部
【図１】
2014199542.tif 000006
【図２】
2014199542.tif 000007
【図３】
2014199542.tif 000008
【図４】
2014199542.tif 000009
【図５】
2014199542.tif 000010
【図６】
2014199542.tif 000011
【図７】
2014199542.tif 000012
【図８】
2014199542.tif 000013
【図９】
2014199542.tif 000014
【国際調査報告】
2014199542.tif 000015
2014199542.tif 000016
2014199542.tif 000017
2014199542.tif 000018