JP2020113919A - 映像処理装置及びプログラム - Google Patents

映像処理装置及びプログラム Download PDF

Info

Publication number
JP2020113919A
JP2020113919A JP2019004347A JP2019004347A JP2020113919A JP 2020113919 A JP2020113919 A JP 2020113919A JP 2019004347 A JP2019004347 A JP 2019004347A JP 2019004347 A JP2019004347 A JP 2019004347A JP 2020113919 A JP2020113919 A JP 2020113919A
Authority
JP
Japan
Prior art keywords
flicker
value
estimated
processing device
video signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019004347A
Other languages
English (en)
Other versions
JP7240181B2 (ja
Inventor
友洋 中村
Tomohiro Nakamura
友洋 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Hoso Kyokai NHK, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP2019004347A priority Critical patent/JP7240181B2/ja
Publication of JP2020113919A publication Critical patent/JP2020113919A/ja
Application granted granted Critical
Publication of JP7240181B2 publication Critical patent/JP7240181B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】映像信号のフリッカーの振幅及び位相を高精度に推定し、映像信号のフリッカーを確実に抑制する。【解決手段】映像処理装置1の非線形カルマンフィルタ11は、画素値y(k)に対し非線形カルマンフィルタ処理を施し、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する。フリッカー推定部21は、フリッカー成分の推定値x^(k)からフリッカー画素値y’(k)を算出し、減算部30は、画素値y(k)からフリッカー画素値y’(k)を減算して補正値z(k)を求める。【選択図】図6

Description

本発明は、映像のフリッカー特性を測定する映像処理装置及びプログラムに関する。
一般に、電源周波数が50Hzの圏内では、蛍光灯等の照明機器は、100Hzの周波数の波形に応じて照明強度が変化することが知られている。しかし、100Hzの周波数で照明強度が変化する状況においては、120Hzのフレーム周波数で撮影を行った場合、20Hzの周波数で映像信号にフリッカーが生じてしまう。
このフリッカーを抑制するための技術として、様々な手法が提案されている。例えば、撮像素子をライン毎にインターレース駆動し、かつ10msecの電子シャッターを設定することにより、フリッカーを抑制する手法が提案されている(例えば、特許文献1,2を参照)。
また、撮像素子を240Hzの周波数で駆動させ、長時間露光及び短時間露光を行い、3フレームの映像信号を加算し、10msecの露光を実現することにより、フリッカーを抑制する手法が提案されている(例えば、特許文献3を参照)。
また、連続する複数のフレームの映像信号に対し、分割領域毎に明るさの平均値を算出し、補正対象フレームについて、分割領域毎に、明るさと明るさの平均値との差異に基づいて、各画素の明るさを補正する手法も提案されている(例えば、特許文献4を参照)。
特開2017−22612号公報 特開2017−118329号公報 特開2016−36122号公報 特開2016−19139号公報
しかしながら、前述の特許文献1,2の手法は、撮像素子をインターレース駆動するため、垂直解像度が半減するという問題があった。
また、前述の特許文献3の手法は、10msecの露光を実現するために、撮像素子を240Hzの周波数で駆動させる必要がある。このため、データレートが高くなり、その対応が困難になるという問題があった。また、長時間露光及び短時間露光に対応する必要があることから、露光処理が複雑となり、さらに、3つのフレームメモリが必要であることから、ハードウェアの規模が大きくなるという問題もあった。
また、複数の照明を用いる状況においては、フレームの領域毎にフリッカーの振幅及び位相が異なるため、従来の手法では、フレーム全体としてフリッカーを効果的に除去することができないという問題があった。また、フレーム全体としてフリッカーを効果的に除去することができない場合は、オンライン処理の対応が困難となり、スポーツ等のライブ中継には不向きであった。
一方で、前述の特許文献4の手法を用いることにより、フレームの領域毎にフリッカーを抑制することができる。しかし、この手法は、フレームの領域毎の明るさに基づく簡易な処理が基本となることから、フリッカーの抑制精度がフレーム全体として不十分であるという問題があった。
そこで、本発明は前記課題を解決するためになされたものであり、その目的は、映像信号のフリッカーの振幅及び位相を高精度に推定し、映像信号のフリッカーを確実に抑制可能な映像処理装置及びプログラムを提供することにある。
前記課題を解決するために、請求項1の映像処理装置は、映像信号からフリッカーを除去する映像処理装置において、状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなるフリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される画素値としたモデルに対し、前記フリッカー成分を推定する非線形カルマンフィルタと、前記非線形カルマンフィルタにより推定された前記フリッカー成分から、当該フリッカー成分の前記振幅及び前記位相により定められる正弦波に基づいたフリッカー画素値を推定するフリッカー推定部と、前記映像信号の画素値から、前記フリッカー推定部により推定された前記フリッカー画素値を減算し、前記フリッカーが除去された画素値を求める減算部と、を備えたことを特徴とする。
また、請求項2の映像処理装置は、複数の領域に分割された映像信号からフリッカーを除去する映像処理装置において、前記領域内の画素値の平均値を入力し、状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなる前記領域のフリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される前記領域内の画素値の平均値としたモデルに対し、前記領域毎に、前記フリッカー成分を推定する非線形カルマンフィルタと、前記領域毎に、前記非線形カルマンフィルタにより推定された前記フリッカー成分から、当該フリッカー成分の前記振幅及び前記位相により定められる正弦波に基づいたフリッカー画素値を推定するフリッカー推定部と、前記領域毎に、前記映像信号の当該領域内のそれぞれの画素値から、前記フリッカー推定部により推定された前記フリッカー画素値を減算し、前記フリッカーが除去された画素値をそれぞれ求める減算部と、を備えたことを特徴とする。
また、請求項3の映像処理装置は、請求項1または2に記載の映像処理装置において、さらに、予め設定された色毎のデータ群を用いて、前記映像信号を構成する前記色毎に、前記フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部を備え、前記非線形カルマンフィルタが、前記色毎に、前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記フリッカー成分を推定し、前記フリッカー推定部が、前記色毎に、前記フリッカー画素値を推定し、前記減算部が、前記色毎に、前記フリッカーが除去された画素値をそれぞれ求める、ことを特徴とする。
また、請求項4の映像処理装置は、請求項1または2に記載の映像処理装置において、さらに、予め設定された色温度毎のデータ群を用いて、CC(Color Temperature Conversion:色温度変換)フィルタにより変換された照明光の前記色温度に応じて、前記フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部を備え、前記非線形カルマンフィルタが、前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記フリッカー成分を推定する、ことを特徴とする。
また、請求項5の映像処理装置は、請求項1または2に記載の映像処理装置において、さらに、予め設定された透過率毎のデータ群を用いて、ND(Neutral Density:ニュートラルデンシティ(中性濃度))フィルタの前記透過率に応じて、前記非線形カルマンフィルタにて用いる前記フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部を備え、前記非線形カルマンフィルタが、前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記フリッカー成分を推定する、ことを特徴とする。
また、請求項6の映像処理装置は、映像信号のフリッカーに関する情報を表示する映像処理装置において、前記映像信号が複数の領域に分割された際の前記領域内の画素値の平均値を入力し、状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなる前記領域のフリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される前記領域内の画素値の平均値としたモデルに対し、前記領域毎に、前記フリッカー成分を推定する非線形カルマンフィルタと、前記非線形カルマンフィルタにより推定された前記領域毎の前記フリッカー成分の前記振幅及び前記位相を表示するフリッカー成分表示部と、を備えたことを特徴とする。
また、請求項7の映像処理装置は、請求項6に記載の映像処理装置において、前記フリッカー成分表示部に代わる新たなフリッカー成分表示部が、前記非線形カルマンフィルタにより推定された前記領域毎の前記フリッカー成分の前記振幅に基づいて、前記フリッカーが発生している前記領域を判定し、前記フリッカーが発生している前記領域を識別可能な形態にて、前記映像信号を表示する、ことを特徴とする。
また、請求項8の映像処理装置は、映像信号のフリッカーに関する情報を表示する映像処理装置において、予め設定された色毎のデータ群を用いて、前記映像信号を構成する前記色毎に、フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部と、前記色毎に、前記映像信号が複数の領域に分割された際の前記領域内の画素値の平均値を入力し、状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなる前記領域の前記フリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される前記領域内の画素値の平均値としたモデルに対し、前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記領域毎の前記フリッカー成分を推定する非線形カルマンフィルタと、前記色毎に、前記非線形カルマンフィルタにより推定された前記領域毎の前記フリッカー成分の前記振幅に基づいて、前記フリッカーが発生している前記領域を判定し、前記フリッカーが発生している前記色及び前記領域を識別可能な形態にて、前記映像信号を表示するフリッカー成分表示部と、を備えたことを特徴とする。
また、請求項9の映像処理装置は、請求項2に記載の映像処理装置において、さらに、前記領域毎に、当該領域内の画素値の平均値を入力し、当該画素値の平均値をフーリエ変換し、周波数成分毎の振幅を求め、前記周波数成分毎の前記振幅に基づいて、周波数成分数を設定する周波数成分数設定部を備え、前記非線形カルマンフィルタが、前記周波数成分数設定部により設定された前記領域毎の前記周波数成分を用いて、前記領域毎に、前記フリッカー成分を推定する、ことを特徴とする。
また、請求項10の映像処理装置は、請求項1から9までのいずれか一項に記載の映像処理装置において、前記非線形カルマンフィルタをUKF(Unscented Kalman Filter:アンセンテッドカルマンフィルタ)とするか、または前記非線形カルマンフィルタの代わりに粒子フィルタを用いる、ことを特徴とする。
さらに、請求項11のプログラムは、コンピュータを、請求項1から10までのいずれか一項に記載の映像処理装置として機能させることを特徴とする。
以上のように、本発明によれば、映像信号のフリッカーの振幅及び位相を高精度に推定することができ、映像信号のフリッカーを確実に抑制することが可能となる。
UKFの基本ブロックの処理を説明する図である。 次の状態ベクトルの推定処理(ステップS101)を説明する図である。 観測値の推定処理(ステップS102)を説明する図である。 状態ベクトルの更新処理(ステップS103)を説明する図である。 UKFの基本ブロックの詳細構成を示すブロック図である。 実施例1の映像処理装置の構成例を示すブロック図である。 実施例1の映像処理装置の処理例を示すフローチャートである。 実施例2の映像処理装置の構成例を示すブロック図である。 実施例2の映像処理装置の処理例を示すフローチャートである。 実施例3の映像処理装置の構成例を示すブロック図である。 実施例3の映像処理装置の処理例を示すフローチャートである。 初期値テーブルのデータ構成例を示す図である。 システム雑音テーブルのデータ構成例を示す図である。 定数テーブルのデータ構成例を示す図である。 観測雑音テーブルのデータ構成例を示す図である。 実施例4の映像処理装置の構成例を示すブロック図である。 実施例4のテーブル設定部の処理例を示すフローチャートである。 実施例5の映像処理装置の構成例を示すブロック図である。 実施例6の映像処理装置の構成例を示すブロック図である。 実施例7の映像処理装置の構成例を示すブロック図である。 実施例7の第1表示例を説明する図である。 実施例7の第2表示例を説明する図である。 実施例7の第3表示例を説明する図である。 実施例8の映像処理装置の構成例を示すブロック図である。 周波数テーブルのデータ構成例を示す図である。 周波数成分数設定部の構成例を示すブロック図である。
以下、本発明を実施するための形態について図面を用いて詳細に説明する。本発明は、映像信号のフリッカーの振幅及び位相を状態ベクトルとし、画素値を観測値として、非線形カルマンフィルタ等を用いることで、フリッカーの振幅及び位相を推定することを特徴とする。
これにより、推定したフリッカーの振幅及び位相に基づいて、フリッカーが反映されたフリッカー画素値を推定し、元の映像信号の画素値からフリッカー画素値を減算することで、フリッカーを抑制した画素値を得ることができる。したがって、映像信号のフリッカーの振幅及び位相を高精度に推定することができ、映像信号のフリッカーを確実に抑制することが可能となる。
〔本発明の概要〕
まず、本発明の概要について説明する。フリッカーが発生した映像において、映像信号に含まれるフリッカーの振幅及び位相からなるフリッカー成分(行列)x(k)及び画素値y(k)は、次の漸化式に従い、映像信号のフレーム毎に更新されるものとする。フリッカーは正弦波で表されるものとし、画素値y(k)は、以下の式(2)(4)のとおり、正弦波の和で記述される漸化式に従うものとする。
Figure 2020113919
Figure 2020113919
Figure 2020113919
Figure 2020113919
フリッカー成分x(k)は、以下の式のとおり、フリッカーの振幅x1(k),・・・,x2m-1(k)及び位相x2(k),・・・,x2m(k)を行方向に並べた列ベクトルとする。
Figure 2020113919
vは、平均0及び分散σv 2の正規分布に従うシステム雑音であり、wは、平均0及び分散σw 2の正規分布に従う観測雑音である。システム雑音v及び観測雑音wは、互いに独立な正規分布に従う白色雑音であるものとする。bは、フリッカー成分x(k)に対応する定数の行列である。
ωiは、フリッカーの周波数成分に対応する角周波数とし、iは、フリッカーの周波数成分の番号(i=1,・・・,m)とし、mは、フリッカーの周波数成分数とする。kは、映像信号のフレーム毎の時刻とし、映像信号のフレーム番号に相当する。
前記式(1)〜(4)に示したフリッカー成分x(k)及び画素値y(k)を更新するモデルにおいて、一般に、x(k)は状態ベクトル、y(k)は観測値、f(x(k))は状態ベクトル関数、h(x(k))は観測関数という。
前記式(1)は、時刻k+1のフリッカー成分x(k+1)が、時刻kのフリッカー成分x(k)に雑音成分bv(k)を加えたものであることを示している。前記式(2)は、時刻kの画素値y(k)が、振幅及び位相の正弦波であるフリッカーを全ての周波数成分で加算した結果(前記式(4)のh(x(k)))に対し、観測雑音w(k)を加えたものであることを示している。
尚、自然画像の画素値yの場合は、周辺画素の平均値またはオフセット成分を予め減算しておくことが好適である。
以下に説明する実施例1〜8では、前記式(1)〜(4)にて規定された時系列の画素値y(k)に対し、非線形カルマンフィルタを適用し、フリッカー成分x(k)を推定する。つまり、実施例1〜8では、状態ベクトルをフリッカー成分x(k)とし、観測値を画素値y(k)として、前記式(1)〜(4)で表すモデルを非線形カルマンフィルタにて処理し、フリッカー成分x(k)を推定する。
具体的には、非線形カルマンフィルタは、状態ベクトルを、前記式(1)(3)に示した漸化式に従いフレーム毎に更新されるフリッカー成分x(k)とし、観測値を、正弦波の和で記述される前記式(2)(4)に示した漸化式に従いフレーム毎に更新される画素値y(k)としたモデルに対し、フリッカー成分x(k)を推定する。
以下、非線形カルマンフィルタの一例として、UKF(Unscented Kalman Filter:アンセンテッドカルマンフィルタ)を用いることとする。
UKFは、正規分布に従う確率変数が非線形関数(本例では正弦関数)によって写像された先の分布について、当該先の分布が正規分布でない場合を仮定したフィルタである。UKFは、元の正規分布のサンプリングポイントを非線形関数により写像(変換)し、これにより得られたサンプルを用いて、写像された先の分布の平均及び誤差分散共分散行列を近似することで、状態ベクトルを時刻毎に推定するものである。
(UKFの基本ブロック)
図1は、UKFの基本ブロックの処理を説明する図である。このUKFは、時刻k−1の状態ベクトルの推定値x^(k−1)及びその誤差分散共分散行列P^(k−1)並びに時刻kの観測値y(k)から、時刻kの状態ベクトルの推定値x^(k)及びその誤差分散共分散行列P^(k)を算出する。
UKFは、時刻k−1の状態ベクトルの推定値x^(k−1)及び誤差分散共分散行列P^(k−1)を用いた次の状態ベクトルの推定処理により、次の状態ベクトルの事前推定値x^-(k)及び誤差分散共分散行列の事前推定値P^-(k)を求める(ステップS101)。
UKFは、次の状態ベクトルの事前推定値x^-(k)及び誤差分散共分散行列の事前推定値P^-(k)を用いた観測値の推定処理により、観測値の事前推定値y^-(k)を求める(ステップS102)。
UKFは、状態ベクトルの事前推定値x^-(k)、誤差分散共分散行列の事前推定値P^-(k)、観測値の事前推定値y^-(k)及び観測値y(k)を用いた状態ベクトルの更新処理により、時刻kの状態ベクトルの推定値x^(k)及び誤差分散共分散行列P^(k)を求める(ステップS103)。
図2は、図1に示した次の状態ベクトルの推定処理(ステップS101)を説明する図である。図2の左図は、状態ベクトルの推定値x^(k−1)の確率分布を示し、右図は、状態ベクトルの事前推定値x^-(k)の確率分布を示す。
状態ベクトル関数f(x)の確率分布は計算できないため、状態ベクトルの推定値x^(k−1)のいくつかの代表点(左図の黒丸印の箇所)χ1,χ2,・・・をサンプリングする。サンプリングした点をシグマポイントという。状態ベクトルの推定値x^(k−1)とシグマポイントχ1との間の距離、及び状態ベクトルの推定値x^(k−1)とシグマポイントχ2との間の距離は、誤差分散共分散行列P^(k−1)の平方根の値√(P^(k−1))である。
シグマポイントχ1,χ2,・・・を状態ベクトル関数f(x)で写像した値f(χ1),f(χ2),・・・(右側の図の塗り潰した菱形の箇所)の重み付き平均値を、次の状態ベクトルの事前推定値x^-(k)とする(右図の白抜き丸印の箇所)。
次の状態ベクトルの事前推定値x^-(k)に対する誤差分散共分散行列の事前推定値P^-(k)は、後述する式(14)により算出される。後述する式(14)の第2項は、次の状態ベクトルの推定処理(ステップS101)により真値との誤差が増えると仮定した際の誤差に相当する。
このように、ステップS101の処理により、時刻k−1の状態ベクトルの推定値x^(k−1)及び誤差分散共分散行列P^(k−1)から、次の状態ベクトルの事前推定値x^-(k)及び誤差分散共分散行列の事前推定値P^-(k)が算出される。
図3は、図1に示した観測値の推定処理(ステップS102)を説明する図である。図3の左図は、状態ベクトルの事前推定値x^-(k)の確率分布を示し、右図は、観測値の事前推定値y^-(k)の確率分布を示す。
観測関数h(x)の確率分布は計算できないため、状態ベクトルの事前推定値x^-(k)のいくつかの代表点(左図の黒丸印の箇所)χ1 -,χ2 -,・・・をサンプリングする。図2と同様に、サンプリングした点をシグマポイントという。状態ベクトルの事前推定値x^-(k)とシグマポイントχ1 -との間の距離、及び状態ベクトルの事前推定値x^-(k)とシグマポイントχ2 -との間の距離は、誤差分散共分散行列の事前推定値P^-(k)の平方根の値√(P^-(k))である。
シグマポイントχ1 -,χ2 -,・・・を観測関数h(x)で写像した値h(χ1 -),h(χ2 -),・・・(右図の塗り潰した菱形の箇所)の重み付き平均値を、観測値の事前推定値y^-(k)とする(右図の白抜き四角の箇所)。観測値の事前推定値y^-(k)は、後述する式(19)により算出される。
このように、ステップS102の処理により、次の状態ベクトルの事前推定値x^-(k)及び誤差分散共分散行列の事前推定値P^-(k)から、観測値の事前推定値y^-(k)が算出される。
図4は、図1に示した状態ベクトルの更新処理(ステップS103)を説明する図である。観測値y(k)から観測値の事前推定値y^-(k)が減算され(ステップS401)、減算結果の観測誤差にカルマンゲインg(k)が乗算される(ステップS402)。次の状態ベクトルの事前推定値x^-(k)は、乗算結果g(k){y(k)−y^-(k)}に加算される(ステップS403)。これにより、時刻kの状態ベクトルの推定値x^(k)が得られる。
カルマンゲインg(k)は、UKFのゲイン値であり、観測値y(k)及び観測値の事前推定値y^-(k)の信頼度合いを示す。後述する式(20)〜(22)のとおり、観測値の事前推定値y^-(k)の分散が小さく、かつ状態ベクトルの事前推定値x^-(k)と観測値の事前推定値y^-(k)が相関していれば、カルマンゲインg(k)は大きい値となる。
また、後述する式(21)により算出された状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)にカルマンゲインg(k)が乗算され(ステップS404)。誤差分散共分散行列の事前推定値P^-(k)から乗算結果が減算される(ステップS405)。これにより時刻kの誤差分散共分散行列P^(k)が得られる。
このように、ステップS103の処理により、状態ベクトルの事前推定値x^-(k)、誤差分散共分散行列の事前推定値P^-(k)、観測値の事前推定値y^-(k)及び観測値y(k)から、時刻kの状態ベクトルの推定値x^(k)及び誤差分散共分散行列P^(k)が算出される。
(UKFの基本ブロックの詳細)
次に、図1に示したUKFの基本ブロックの処理について詳細に説明する。図5は、図1に示したUKFの基本ブロックの詳細構成を示すブロック図である。このUKFは、時系列推定部90、カルマンゲイン計算部93及び更新部97を備えている。
まず、UKFの処理に先立って、状態ベクトルの推定値の初期値x^(0)及びその誤差分散共分散行列の初期値P^(0)が、次のように予め設定される。
Figure 2020113919
Figure 2020113919
時系列推定部90は、時刻k−1の状態ベクトルの推定値x^(k−1)、その誤差分散共分散行列P^(k−1)、システム雑音の標準偏差σv及び定数bを入力する。そして、時系列推定部90は、時刻kの状態ベクトルの事前推定値x^-(k)、誤差分散共分散行列の事前推定値P^-(k)、状態ベクトルの事前推定値x^-(k)の代表点ある2n+1個のシグマポイントχi -(k)、各シグマポイントχi -(k)を観測関数h(x)で写像した2n+1個の写像値Ui -(k)、及び観測値の事前推定値y^-(k)を算出する。
時系列推定部90は、状態ベクトル推定値等計算手段91及び時系列推定値計算手段92を備えている。状態ベクトル推定値等計算手段91は、時刻k−1の状態ベクトルの推定値x^(k−1)、誤差分散共分散行列P^(k−1)、システム雑音の標準偏差σv及び定数bを入力する。
状態ベクトル推定値等計算手段91は、状態ベクトルの推定値x^(k−1)及び誤差分散共分散行列P^(k−1)を用いて、以下の式にて、時刻t−1における状態ベクトルの推定値x^(k−1)の代表点である2n+1個のシグマポイントχ0(k−1),・・・,χ2n(k−1)を算出する。
Figure 2020113919
Figure 2020113919
Figure 2020113919
ここで、
Figure 2020113919
は、行列
Figure 2020113919
の第i列とする。
状態ベクトル推定値等計算手段91は、以下の式にて、2n+1個のシグマポイントχ0(k−1),・・・,χ2n(k−1)の重みw0,・・・,w2nを算出する。
Figure 2020113919
ただし、
Figure 2020113919
とする。
状態ベクトル推定値等計算手段91は、以下の式にて、時刻k−1の2n+1個のシグマポイントχ0(k−1),・・・,χ2n(k−1)を状態ベクトル関数f(x)で写像した2n+1個の写像値χi^-(k)を算出する。
Figure 2020113919
状態ベクトル推定値等計算手段91は、時刻kの2n+1個の写像値χi^-(k)、2n+1個の重みw0,・・・,w2nを用いて、以下の式にて、時刻kの状態ベクトルの事前推定値x^-(k)を算出する。また、状態ベクトル推定値等計算手段91は、時刻kの状態ベクトルの事前推定値x^-(k)、写像値χi^-(k)、重みw0,・・・,w2n、システム雑音の標準偏差σv(分散σv 2)及び定数bを用いて、以下の式にて、誤差分散共分散行列の事前推定値P^-(k)を算出する。
Figure 2020113919
Figure 2020113919
状態ベクトル推定値等計算手段91は、状態ベクトルの事前推定値x^-(k)及び誤差分散共分散行列の事前推定値P^-(k)を時系列推定値計算手段92に出力する。また、状態ベクトル推定値等計算手段91は、状態ベクトルの事前推定値x^-(k)をカルマンゲイン計算部93及び更新部97に出力し、誤差分散共分散行列の事前推定値P^-(k)を更新部97に出力する。
時系列推定値計算手段92は、システム雑音の標準偏差σv及び定数bを入力すると共に、状態ベクトル推定値等計算手段91から状態ベクトルの事前推定値x^-(k)及び誤差分散共分散行列の事前推定値P^-(k)を入力する。
時系列推定値計算手段92は、状態ベクトルの事前推定値x^-(k)及び誤差分散共分散の事前推定値P^-(k)を用いて、以下の式にて、時刻tにおける状態ベクトルの事前推定値x^-(k)の代表点である2n+1個のシグマポイントχ0 -(k),・・・,χ2n+1 -(k)を算出する。
Figure 2020113919
Figure 2020113919
Figure 2020113919
ここで、
Figure 2020113919
は、行列
Figure 2020113919
の第i列とする。
時系列推定値計算手段92は、以下の式にて、時刻tの2n+1個のシグマポイントχ0 -(k),・・・,χ2n+1 -(k)を観測関数h(x)で写像した2n+1個の写像値Ui -(k)を算出する。
Figure 2020113919
時系列推定値計算手段92は、前記式(11)にて算出された重みwi及び前記式(18)にて算出された写像値Ui -(k)を用いて、以下の式にて、時系列の観測値の事前推定値y^-(k)を算出する。
Figure 2020113919
時系列推定値計算手段92は、シグマポイントχi -(k)、写像値Ui -(k)及び観測値の事前推定値y^-(k)をカルマンゲイン計算部93に出力し、観測値の事前推定値y^-(k)を更新部97に出力する。
カルマンゲイン計算部93は、観測雑音の標準偏差σwを入力すると共に、時系列推定部90から状態ベクトルの事前推定値x^-(k)、シグマポイントχi -(k)、写像値Ui -(k)及び観測値の事前推定値y^-(k)を入力する。そして、カルマンゲイン計算部93は、観測値推定誤差の行列Pyy -(k)、状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)及びカルマンゲインg(k)を算出する。
カルマンゲイン計算部93は、事前誤差分散計算手段94、事前状態誤差分散計算手段95及びカルマンゲイン計算手段96を備えている。
事前誤差分散計算手段94は、時系列推定部90から写像値Ui -(k)及び観測値の事前推定値y^-(k)を入力する。そして、事前誤差分散計算手段94は、写像値Ui -(k)、観測値の事前推定値y^-(k)及び前記式(11)にて算出された重みwiを用いて、以下の式にて、観測値推定誤差の行列Pyy -(k)を算出する。観測値推定誤差の行列Pyy -(k)は、誤差分散共分散行列の推定誤差行列(予測誤差)である。
Figure 2020113919
事前誤差分散計算手段94は、観測値推定誤差の行列Pyy -(k)をカルマンゲイン計算手段96に出力する。
事前状態誤差分散計算手段95は、時系列推定部90から状態ベクトルの事前推定値x^-(k)、シグマポイントχi -(k)、写像値Ui -(k)及び観測値の事前推定値y^-(k)を入力する。そして、事前状態誤差分散計算手段95は、状態ベクトルの事前推定値x^-(k)、シグマポイントχi -(k)、写像値Ui -(k)、観測値の事前推定値y^-(k)及び前記式(11)にて算出された重みwiを用いて、以下の式にて、状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)を算出する。
Figure 2020113919
事前状態誤差分散計算手段95は、状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)をカルマンゲイン計算手段96及び更新部97に出力する。
カルマンゲイン計算手段96は、事前誤差分散計算手段94から観測値推定誤差の行列Pyy -(k)を入力すると共に、事前状態誤差分散計算手段95から状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)を入力する。また、カルマンゲイン計算手段96は、観測雑音の標準偏差σwを入力する。
カルマンゲイン計算手段96は、観測値推定誤差の行列Pyy -(k)、状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)及び観測雑音の標準偏差σw(分散σw 2)を用いて、以下の式にて、カルマンゲインg(k)を算出する。
Figure 2020113919
カルマンゲイン計算手段96は、カルマンゲインg(k)を更新部97に出力する。
更新部97は、時刻kの観測値y(k)を入力すると共に、時系列推定部90から状態ベクトルの事前推定値x^-(k)、誤差分散共分散行列の事前推定値P^-(k)及び観測値の事前推定値y^-(k)を入力し、カルマンゲイン計算部93から状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)及びカルマンゲインg(k)を入力する。そして、更新部97は、時刻kの状態ベクトルの推定値x^(k)及びその誤差分散共分散行列P^(k)を算出する。
更新部97は、状態ベクトル更新手段98及び誤差分散更新手段99を備えている。状態ベクトル更新手段98は、時刻kの観測値y(k)を入力すると共に、時系列推定部90から状態ベクトルの事前推定値x^-(k)及び観測値の事前推定値y^-(k)を入力し、カルマンゲイン計算部93からカルマンゲインg(k)を入力する。
状態ベクトル更新手段98は、観測値y(k)、状態ベクトルの事前推定値x^-(k)、観測値の事前推定値y^-(k)及びカルマンゲインg(k)を用いて、以下の式により、状態ベクトルの推定値x^(k)を更新し、出力する。
Figure 2020113919
誤差分散更新手段99は、時系列推定部90から誤差分散共分散行列の事前推定値P^-(k)を入力すると共に、カルマンゲイン計算部93から状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)及びカルマンゲインg(k)を入力する。
誤差分散更新手段99は、誤差分散共分散行列の事前推定値P^-(k)、状態ベクトル推定誤差と観測値推定誤差の相関行列Pxy -(k)及びカルマンゲインg(k)を用いて、以下の式にて、誤差分散共分散行列の推定値P^(k)を更新し、出力する。
Figure 2020113919
UKFは、映像信号のフレーム毎に、前記式(6)〜(24)を繰り返し演算することで、各時刻kの状態ベクトルの推定値x^(k)を算出する。これにより、UKFの状態ベクトルをフリッカー成分x(k)とし、観測値を画素値y(k)とし、フリッカー成分(k)を、前記式(5)のとおり、フリッカーの振幅及び位相とすることで、フリッカーの振幅及び位相を推定ことができる。
以下、図1〜図5にて説明した非線形カルマンフィルタの一種であるUKFを用いた実施例1〜8について具体的に説明する。実施例1は、1つの周波数成分数m=1及び画素数が1の場合において、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。実施例2は、複数の周波数成分数m>1及び画素数が1の場合において、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
実施例3は、複数の周波数成分数m>1の場合において、映像信号が分割された領域毎に、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
実施例4は、実施例3において、色毎のゲインに応じて、映像信号のフリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音等を設定し、色毎に、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
実施例5は、実施例3において、CC(Color Temperature Conversion:色温度変換)フィルタにより変換された照明光の色温度に応じて、フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音等を設定し、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
実施例6は、実施例3において、ND(Neutral Density:ニュートラルデンシティ(中性濃度))フィルタの透過率に応じて、フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音等を設定し、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
実施例7は、非線形カルマンフィルタを用いてフリッカーの振幅及び位相を推定する際に、フリッカーに関する情報を表示する例である。
実施例8は、映像信号の分割された領域毎に、映像信号を時間方向にフーリエ変換することで周波数成分数mを求め、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
〔実施例1〕
まず、実施例1について説明する。実施例1は、1つの周波数成分数m=1及び画素数が1の場合において、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
図6は、実施例1の映像処理装置の構成例を示すブロック図であり、図7は、実施例1の映像処理装置の処理例を示すフローチャートである。この映像処理装置1は、1つの周波数成分数m=1及び画素数が1の場合に適用する装置であり、映像信号からフリッカーを除去する。映像処理装置1は、非線形カルマンフィルタ11、フリッカー推定部21及び減算部30を備えている。
非線形カルマンフィルタ11は、予め設定されたフリッカー成分(行列)の推定値の初期値x^(0)、その誤差分散共分散行列の(推定値の)初期値P^(0)、システム雑音の標準偏差σv、定数b、及び観測雑音の標準偏差σwを入力する(ステップS701)。フリッカー成分の推定値の初期値x^(0)及び誤差分散共分散行列の初期値P^(0)は、ユーザにより任意の値に設定される。
非線形カルマンフィルタ11は、画素値y(k)を入力する(ステップS702)。そして、非線形カルマンフィルタ11は、画素値y(k)、フリッカー成分の推定値x^(k−1)及び誤差分散共分散行列P^(k−1)を用いて、図5に示したとおり、非線形カルマンフィルタ処理を行い、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する(ステップS703)。非線形カルマンフィルタ11は、フリッカー成分の推定値x^(k)をフリッカー推定部21に出力する。
フリッカー成分の推定値x^(k)は、以下の式にて表される。
Figure 2020113919
フリッカー推定部21は、非線形カルマンフィルタ11からフリッカー成分の推定値x^(k)を入力し、フリッカー成分の推定値x^(k)から、フリッカーの振幅x1^(k)及び位相x2^(k)を特定する(ステップS704)。
フリッカー推定部21は、以下の式にて、フリッカーの振幅x1^(k)及び位相x2^(k)から、振幅x1^(k)及び位相x2^(k)により定められる正弦関数のフリッカー画素値y’(k)を推定する(ステップS705)。そして、フリッカー推定部21は、フリッカー画素値y’(k)を減算部30に出力する。
Figure 2020113919
減算部30は、画素値y(k)を入力すると共に、フリッカー推定部21からフリッカー画素値y’(k)を入力し、画素値y(k)からフリッカー画素値y’(k)を減算し、補正値z(k)を求める(ステップS706)。減算部30は、補正値z(k)を出力する(ステップS707)。これにより、画素値y(k)に対し、フリッカーが除去された補正値z(k)が得られる。
以上のように、実施例1の映像処理装置1によれば、周波数成分数m=1及び画素数が1の場合において、非線形カルマンフィルタ11は、画素値y(k)に対し非線形カルマンフィルタ処理を施し、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する。
フリッカー推定部21は、フリッカー成分の推定値x^(k)からフリッカー画素値y’(k)を算出し、減算部30は、画素値y(k)からフリッカー画素値y’(k)を減算して補正値z(k)を求める。
これにより、映像信号の画素値y(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができ、映像信号のフリッカーを確実に抑制することが可能となる。また、オンライン処理にてフリッカーを抑制することができ、フレームメモリ等のハードウェアが不要となり、回路規模を小さくすることができる。
〔実施例2〕
次に、実施例2について説明する。実施例2は、複数の周波数成分数m>1及び画素数が1の場合において、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
図8は、実施例2の映像処理装置の構成例を示すブロック図であり、図9は、実施例2の映像処理装置の処理例を示すフローチャートである。この映像処理装置2は、複数の周波数成分数m>1及び画素数が1の場合に適用する装置であり、映像信号からフリッカーを除去する。映像処理装置2は、非線形カルマンフィルタ12、フリッカー推定部22及び減算部30を備えている。
非線形カルマンフィルタ12は、実施例1と同様に、予め設定されたフリッカー成分の推定値の初期値x^(0)、その誤差分散共分散行列の初期値P^(0)、システム雑音の標準偏差σv、定数b及び観測雑音の標準偏差σwを入力する。さらに、非線形カルマンフィルタ12は、予め設定された2以上の周波数成分数mを入力する(ステップS901)。
非線形カルマンフィルタ12は、画素値y(k)を入力する(ステップS902)。そして、非線形カルマンフィルタ12は、実施例1と同様に、画素値y(k)等を用いて非線形カルマンフィルタ処理を行い、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する(ステップS903)。非線形カルマンフィルタ12は、フリッカー成分の推定値x^(k)をフリッカー推定部22に出力する。
フリッカー成分の推定値x^(k)は、以下の式にて表される。
Figure 2020113919
フリッカー推定部22は、非線形カルマンフィルタ12からフリッカー成分の推定値x^(k)を入力する。そして、フリッカー推定部22は、フリッカー成分の推定値x^(k)から、フリッカーの振幅x1^(k),・・・,x2m-1^(k)及び位相x2^(k),・・・,x2m^(k)を特定する(ステップS904)。
フリッカー推定部22は、以下の式にて、フリッカーの振幅x1^(k),・・・,x2m-1^(k)及び位相x2^(k),・・・,x2m^(k)から、それぞれの周波数成分の正弦関数の和を求めることで、フリッカー画素値y’(k)を推定する(ステップS905)。そして、フリッカー推定部22は、フリッカー画素値y’(k)を減算部30に出力する。
Figure 2020113919
減算部30は、画素値y(k)を入力すると共に、フリッカー推定部22からフリッカー画素値y’(k)を入力し、画素値y(k)からフリッカー画素値y’(k)を減算し、補正値z(k)を求める(ステップS906)。減算部30は、補正値z(k)を出力する(ステップS907)。これにより、画素値y(k)に対し、フリッカーが除去された補正値z(k)が得られる。
以上のように、実施例2の映像処理装置2によれば、複数の周波数成分数m>1及び画素数が1の場合において、非線形カルマンフィルタ12は、画素値y(k)に対し非線形カルマンフィルタ処理を施し、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する。
フリッカー推定部22は、フリッカー成分の推定値x^(k)から、それぞれの周波数成分の正弦関数の和であるフリッカー画素値y’(k)を算出する。減算部30は、画素値y(k)からフリッカー画素値y’(k)を減算して補正値z(k)を求める。
これにより、実施例1と同様に、映像信号の画素値y(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができ、映像信号のフリッカーを確実に抑制することが可能となる。また、オンライン処理にてフリッカーを抑制することができ、フレームメモリ等のハードウェアが不要となり、回路規模を小さくすることができる。
〔実施例3〕
次に、実施例3について説明する。実施例3は、複数の周波数成分数m>1の場合において、映像信号が分割された領域毎に、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
イメージセンサーの中には、映像信号の数ラインを1つのブロックとして、ブロック毎に順番に映像信号を読み出すローリングシャッター方式を採用するものがある。このローリングシャッター方式では、ブロック毎に映像信号のフリッカーの位相が異なるため、映像信号を領域に分割して処理する必要がある。また、位相の異なる複数の照明光源下においては、映像信号の画像の領域に応じて、フリッカーの位相が異なるため、映像信号の画像を領域に分割して処理する必要がある。
図10は、実施例3の映像処理装置の構成例を示すブロック図であり、図11は、実施例3の映像処理装置の処理例を示すフローチャートである。この映像処理装置3は、複数の周波数成分数m>1、及び映像信号が分割された領域毎に適用する装置であり、映像信号の領域からフリッカーを除去する。
映像処理装置3は、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を備えている。
図12は、初期値テーブル41のデータ構成例を示す図である。初期値テーブル41には、映像信号が分割された領域α,β毎に、フリッカー成分の推定値の初期値xα,β^(0)及びその誤差分散共分散行列の初期値Pα,β^(0)の各データが格納されている。αは、領域の行方向のインデックスを示し、βは、領域の列方向のインデックスを示す。後述する図13等についても同様である。
図13は、システム雑音テーブル42のデータ構成例を示す図である。システム雑音テーブル42には、領域α,β毎に、システム雑音の標準偏差σvα,βのデータが格納されている。
図14は、定数テーブル43のデータ構成例を示す図である。定数テーブル43には、領域α,β毎に、定数bα,βのデータが格納されている。
図15は、観測雑音テーブル44のデータ構成例を示す図である。観測雑音テーブル44には、領域α,β毎に、観測雑音の標準偏差σwα,βのデータが格納されている。
図10及び図11に戻って、図示しない領域処理部は、映像信号を入力し、映像信号を複数の領域α,βに分割する。そして、領域処理部は、領域α,β毎に、当該領域α,β内のそれぞれの画素値y(k)を用いて平均を算出し、領域α,β内の画素値y(k)の平均値である画素値yα,β(k)を求める。そして、領域処理部は、画素値yα,β(k)を非線形カルマンフィルタ13に出力する。
非線形カルマンフィルタ13は、図示しない領域処理部から画素値yα,β(k)を入力する。そして、非線形カルマンフィルタ13は、状態ベクトルを、前記式(1)の漸化式に従い更新される領域α,βのフリッカー成分x(k)とし、観測値を、正弦波の和で記述される前記式(2)の漸化式に従い更新される領域α,βの画素値yα,β(k)としたモデルに対し、領域α,β毎に、フリッカー成分の推定値x^(k)を算出する。以下、詳細に説明する。
まず、非線形カルマンフィルタ13は、初期値テーブル41から、領域α,βに対応するフリッカー成分の推定値の初期値xα,β^(0)及びその誤差分散共分散行列の初期値Pα,β^(0)を読み出す。また、非線形カルマンフィルタ13は、システム雑音テーブル42から、領域α,βに対応するシステム雑音の標準偏差σvα,βを読み出し、定数テーブル43から、領域α,βに対応する定数bα,βを読み出す。また、非線形カルマンフィルタ13は、観測雑音テーブル44から、領域α,βに対応する観測雑音の標準偏差σwα,βを読み出す(ステップS1101)。さらに、非線形カルマンフィルタ13は、予め設定された2以上の周波数成分数mを入力する(ステップS1102)。
非線形カルマンフィルタ13は、図示しない領域処理部から、領域α,β内の画素値y(k)の平均値である画素値yα,β(k)を入力する(ステップS1103)。そして、非線形カルマンフィルタ13は、実施例1と同様に、画素値yα,β(k)等を用いて非線形カルマンフィルタ処理を行い、領域α,βについて、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する(ステップS1104)。
つまり、非線形カルマンフィルタ13は、状態ベクトルを、所定の漸化式に従いフレーム毎に更新される領域α,βのフリッカー成分x(k)とし、観測値を、正弦波の和で記述される漸化式に従いフレーム毎に更新される領域α,βの画素値y(k)として、前記式(1)〜(4)で表すモデルの処理を行う。
非線形カルマンフィルタ13は、領域α,βのフリッカー成分の推定値x^(k)をフリッカー推定部23に出力する。領域α,βのフリッカー成分の推定値x^(k)は、前記式(27)のとおりである。
フリッカー推定部23は、非線形カルマンフィルタ13からフリッカー成分の推定値x^(k)を入力する。そして、フリッカー推定部23は、フリッカー成分の推定値x^(k)から、フリッカーの振幅x1^(k),・・・,x2m-1^(k)及び位相x2^(k),・・・,x2m^(k)を特定する(ステップS1105)。
フリッカー推定部23は、以下の式にて、フリッカーの振幅x1^(k),・・・,x2m-1^(k)及び位相x2^(k),・・・,x2m^(k)から、それぞれの周波数成分の正弦関数の和を求めることで、フリッカー画素値y’α,β(k)を推定する(ステップS1106)。そして、フリッカー推定部23は、フリッカー画素値y’α,β(k)を減算部30に出力する。
Figure 2020113919
減算部30は、領域α,β内のそれぞれの画素値y(k)を入力すると共に、フリッカー推定部23からフリッカー画素値y’α,β(k)を入力する。そして、減算部30は、画素値y(k)からフリッカー画素値y’α,β(k)を減算し、領域α,β内のそれぞれの補正値z(k)を求める(ステップS1107)。減算部30は、補正値z(k)を出力する(ステップS1108)。これにより、領域α,β内のそれぞれの画素値y(k)に対し、フリッカーが除去された補正値z(k)が得られる。
以上のように、実施例3の映像処理装置3によれば、複数の周波数成分数m>1の場合において、非線形カルマンフィルタ13は、映像信号が分割された領域α,β毎に、初期値テーブル41等から、領域α,βに対応するフリッカー成分の推定値の初期値xα,β^(0)及びその誤差分散共分散行列の初期値Pα,β^(0)、システム雑音の標準偏差σvα,β、定数bα,β及び観測雑音の標準偏差σwα,βを読み出し、予め設定された2以上の周波数成分数mを入力する。
非線形カルマンフィルタ13は、フリッカー成分の推定値の初期値xα,β^(0)等を用いて、画素値yα,β(k)に対し、非線形カルマンフィルタ処理を施し、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する。
フリッカー推定部23は、領域α,β毎に、フリッカー成分の推定値x^(k)から、それぞれの周波数成分の正弦関数の和であるフリッカー画素値y’ α,β(k)を算出する。減算部30は、領域α,β内のそれぞれの画素値y(k)からフリッカー画素値y’ α,β(k)を減算して補正値z(k)を求める。
これにより、領域α,β毎に、映像信号の画素値yα,β(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができ、映像信号のフリッカーを確実に抑制することが可能となる。つまり、ブロック毎に順番に映像信号を読み出すローリングシャッター方式を採用するイメージセンサーを用いた場合、及び、位相の異なる複数の照明光源を用いた場合であっても、映像信号のフリッカーを確実に抑制することができる。また、オンライン処理にてフリッカーを抑制することができ、フレームメモリ等のハードウェアが不要となり、回路規模を小さくすることができる。
〔実施例4〕
次に、実施例4について説明する。実施例4は、実施例3において、色毎のゲインに応じて、フリッカー成分の推定値の初期値xα,β^(0)等を設定し、色毎に、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
3板式カメラにおいては、色分解プリズムにて光をR(赤)、G(青)及びB(緑)各色に分解し、分解された光を3枚のイメージセンサーにて受光する。3板式カメラは、ホワイトバランスを整えるために、RGBのイメージセンサー毎に異なるゲインを用いることがあり、この場合は、RGBのイメージセンサー毎にノイズレベルが異なってくる。
同様に、単板式カメラにおいては、イメージセンサーの各画素に対応して設けられたカラーフィルタによってR,G,Bのうちのいずれか1色を選択し、透過された1色の光を受光する。このようなカメラの場合、R,G,Bの色毎に、フリッカー成分の推定値の初期値xα,β^(0)等を切り替えてUKFを使用する必要がある。
図16は、実施例4の映像処理装置の構成例を示すブロック図である。この映像処理装置4は、R,G,Bの色毎に異なるゲインに応じて、領域α,βに対応するフリッカー成分の推定値の初期値xα,β^(0)、その誤差分散共分散行列の初期値Pα,β^(0)、システム雑音の標準偏差σvα,β、定数bα,β及び観測雑音の標準偏差σwα,βを切り替え、色毎に、実施例3と同様の処理を行う。
映像処理装置4は、R,G,Bの色毎に、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44及びテーブル設定部50を備えている。
実施例3の映像処理装置3と実施例4の映像処理装置4とを比較すると、両映像処理装置3,4は、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を備えている点で共通する。一方、映像処理装置4は、テーブル設定部50を備えている点で、テーブル設定部50を備えていない映像処理装置3と相違する。
非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44は、実施例3と同様であるから、ここでは説明を省略する。
映像処理装置4は、R,G,BのうちのR色の処理を行う場合、映像信号のR色の画素値y(k)、及びR色のゲインを用いて処理を行う。図示しない領域処理部は、実施例3と同様の処理を行うことで、領域α,β内のR色の画素値y(k)の平均値である画素値yα,β(k)を求めて非線形カルマンフィルタ13に出力する。
図17は、実施例4のテーブル設定部50の処理例を示すフローチャートである。テーブル設定部50は、R色のゲインを入力する(ステップS1701)。そして、テーブル設定部50は、予め設定されたゲイン毎の初期値テーブル、システム雑音テーブル、定数テーブル及び観測雑音テーブルのテーブル群から、入力したゲインに対応する初期値テーブル、システム雑音テーブル、定数テーブル及び観測雑音テーブルを選択し、各データを読み出す(ステップS1702)。
テーブル設定部50は、読み出した初期値テーブル(ゲインに対応する初期値テーブル)の各データを初期値テーブル41に格納することで、初期値テーブル41を設定する。テーブル設定部50は、同様にして、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する(ステップS1703)。
映像処理装置4は、G色の処理を行う場合、R色の処理と同様に、映像信号のG色の画素値y(k)、及びG色のゲインを用いて処理を行う。テーブル設定部50は、図17に示した処理により、G色のゲインに対応する初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する。
映像処理装置4は、B色の処理を行う場合、R,G色の処理と同様に、映像信号のB色の画素値y(k)、及びB色のゲインを用いて処理を行う。テーブル設定部50は、図17に示した処理により、B色のゲインに対応する初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する。
以上のように、実施例4の映像処理装置4によれば、テーブル設定部50は、R,G,Bの色毎のゲインに対応した初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する。
非線形カルマンフィルタ13、フリッカー推定部23及び減算部30は、R,G,Bの色毎に、実施例3と同様の処理を行う。
これにより、R,G,Bの色のそれぞれについて、異なるフリッカー成分の推定値の初期値xα,β^(0)等を用いて、領域α,β毎に、映像信号の画素値yα,β(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができる。結果として、映像信号のフリッカーを確実に抑制することが可能となる。また、オンライン処理にてフリッカーを抑制することができ、フレームメモリ等のハードウェアが不要となり、回路規模を小さくすることができる。
尚、実施例4の映像処理装置4は、R,G,Bの色毎のゲインに応じて、フリッカー成分の推定値の初期値xα,β^(0)等を設定し、これらの色毎に、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定するようにした。これに対し、映像処理装置4は、R,G,B,Y(輝度)の色毎のゲインに応じて、またはY,Cb,Crの色毎のゲインに応じて、前述の処理を行うようにしてもよい。本発明は、色の種別を限定するものではない。
〔実施例5〕
次に、実施例5について説明する。実施例5は、実施例3において、CCフィルタにより変換された照明光の色温度に応じて、フリッカー成分の推定値の初期値xα,β^(0)等を設定し、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
放送用カメラにおいては、一般に照明光の色温度を変換するために、CCフィルタを内蔵していることがある。CCフィルタを用いることにより、照明光の色が補正され強調される。
CCフィルタにより変換された照明光の色温度によって、イメージセンサーに入射する像面照度が変化し、ノイズレベルが異なってくる。このような放送用カメラの場合、CCフィルタにより変換された照明光の色温度毎に、フリッカー成分の推定値の初期値xα,β^(0)等を切り替えてUKFを使用する必要がある。
図18は、実施例5の映像処理装置の構成例を示すブロック図である。この映像処理装置5は、CCフィルタにより変換された照明光の色温度に応じて、領域α,βに対応するフリッカー成分の推定値の初期値xα,β^(0)、その誤差分散共分散行列の初期値Pα,β^(0)、システム雑音の標準偏差σvα,β、定数bα,β及び観測雑音の標準偏差σwα,βを切り替え、実施例3と同様の処理を行う。
映像処理装置5は、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44及びテーブル設定部60を備えている。
実施例3の映像処理装置3と実施例5の映像処理装置5とを比較すると、両映像処理装置3,5は、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を備えている点で共通する。一方、映像処理装置5は、テーブル設定部60を備えている点で、テーブル設定部60を備えていない映像処理装置3と相違する。
非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44は、実施例3と同様であるから、ここでは説明を省略する。また、図示しない領域処理部も実施例3と同様であるから、ここでは説明を省略する。
映像処理装置5は、CCフィルタを内蔵しており、映像信号の画素値y(k)及び色温度を用いた処理を行う。
テーブル設定部60は、図17に示した処理において、ゲインの代わりに、CCフィルタにより変換された照明光の色温度を用いる。具体的には、テーブル設定部60は、CCフィルタにより変換された照明光の色温度を入力し、予め設定された色温度毎の初期値テーブル、システム雑音テーブル、定数テーブル及び観測雑音テーブルのテーブル群から、入力した色温度に対応する初期値テーブル、システム雑音テーブル、定数テーブル及び観測雑音テーブルを選択し、各データを読み出す。
テーブル設定部60は、読み出した初期値テーブル(色温度に対応する初期値テーブル)の各データを初期値テーブル41に格納することで、初期値テーブル41を設定する。テーブル設定部60は、同様にして、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する。
以上のように、実施例5の映像処理装置5によれば、テーブル設定部60は、CCフィルタにより変換された照明光の色温度に対応した初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する。
非線形カルマンフィルタ13、フリッカー推定部23及び減算部30は、色温度毎に、実施例3と同様の処理を行う。
これにより、CCフィルタにより変換された照明光の色温度について、他の色温度とは異なるフリッカー成分の推定値の初期値xα,β^(0)等を用いて、領域α,β毎に、映像信号の画素値yα,β(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができる。結果として、映像信号のフリッカーを確実に抑制することが可能となる。また、オンライン処理にてフリッカーを抑制することができ、フレームメモリ等のハードウェアが不要となり、回路規模を小さくすることができる。
〔実施例6〕
次に、実施例6について説明する。実施例6は、実施例3において、NDフィルタの透過率に応じて、フリッカー成分の推定値の初期値xα,β^(0)等を設定し、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
放送用カメラにおいては、一般にレンズの絞りの値を一定に保つために、NDフィルタを内蔵していることがある。NDフィルタを用いることにより、光強度を低下させることができる。この光強度を低下させる程度を定める係数が透過率であり、透過率によりNDフィルタの特性が定められる。
NDフィルタの透過率によって、イメージセンサーに入射する像面照度が変化し、ノイズレベルが異なってくる。このような放送用カメラの場合、NDフィルタの透過率毎に、フリッカー成分の推定値の初期値xα,β^(0)等を切り替えてUKFを使用する必要がある。
図19は、実施例6の映像処理装置の構成例を示すブロック図である。この映像処理装置6は、NDフィルタの透過率に応じて、領域α,βに対応するフリッカー成分の推定値の初期値xα,β^(0)、その誤差分散共分散行列の初期値Pα,β^(0)、システム雑音の標準偏差σvα,β、定数bα,β及び観測雑音の標準偏差σwα,βを切り替え、実施例3と同様の処理を行う。
映像処理装置6は、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44及びテーブル設定部70を備えている。
実施例3の映像処理装置3と実施例6の映像処理装置6とを比較すると、両映像処理装置3,6は、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を備えている点で共通する。一方、映像処理装置6は、テーブル設定部70を備えている点で、テーブル設定部70を備えていない映像処理装置3と相違する。
非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44は、実施例3と同様であるから、ここでは説明を省略する。また、図示しない領域処理部も実施例3と同様であるから、ここでは説明を省略する。
映像処理装置6は、NDフィルタを内蔵しており、映像信号の画素値y(k)及び透過率を用いた処理を行う。
テーブル設定部70は、図17に示した処理において、ゲインの代わりに、NDフィルタの透過率を用いる。具体的には、テーブル設定部70は、NDフィルタの透過率を入力し、予め設定された透過率毎の初期値テーブル、システム雑音テーブル、定数テーブル及び観測雑音テーブルのテーブル群から、入力した透過率に対応する初期値テーブル、システム雑音テーブル、定数テーブル及び観測雑音テーブルを選択し、各データを読み出す。
テーブル設定部70は、読み出した初期値テーブル(透過率に対応する初期値テーブル)の各データを初期値テーブル41に格納することで、初期値テーブル41を設定する。テーブル設定部70は、同様にして、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する。
以上のように、実施例6の映像処理装置6によれば、テーブル設定部70は、NDフィルタの透過率に対応した初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を設定する。
非線形カルマンフィルタ13、フリッカー推定部23及び減算部30は、透過率毎に、実施例3と同様の処理を行う。
これにより、NDフィルタの透過率について、他の透過率とは異なるフリッカー成分の推定値の初期値xα,β^(0)等を用いて、領域α,β毎に、映像信号の画素値yα,β(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができる。結果として、映像信号のフリッカーを確実に抑制することが可能となる。また、オンライン処理にてフリッカーを抑制することができ、フレームメモリ等のハードウェアが不要となり、回路規模を小さくすることができる。
〔実施例7〕
次に、実施例7について説明する。実施例7は、非線形カルマンフィルタを用いてフリッカーの振幅及び位相を推定する際に、フリッカーに関する情報を表示する例である。
図20は、実施例7の映像処理装置の構成例を示すブロック図であり、実施例3により推定された映像信号のフリッカーに関する情報を表示する場合の構成を示している。この映像処理装置7は、非線形カルマンフィルタ13、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44、フリッカー成分表示部80及びモニタ部81を備えている。
非線形カルマンフィルタ13、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44は、実施例3と同様であるから、ここでは説明を省略する。また、図示しない領域処理部も実施例3と同様であるから、ここでは説明を省略する。
非線形カルマンフィルタ13は、領域α,βのフリッカー成分の推定値x^(k)をフリッカー成分表示部80に出力する。
フリッカー成分表示部80は、領域α,β内のそれぞれの画素値y(k)を入力すると共に、非線形カルマンフィルタ13から領域α,βのフリッカー成分の推定値x^(k)を入力する。
フリッカー成分表示部80は、フリッカー成分の推定値x^(k)から、その振幅x1^(k),・・・,x2m-1^(k)及び位相x2^(k),・・・,x2m^(k)を特定する。そして、フリッカー成分表示部80は、フリッカーのm個の角周波数ωiと、フリッカー成分のm個の振幅x1^(k),・・・,x2m-1^(k)及びm個の位相x2^(k),・・・,x2m^(k)とをそれぞれ対応付ける。
フリッカー成分表示部80は、対応付けた角周波数ωi及び振幅x1^(k),・・・,x2m-1^(k)、並びに対応付けた角周波数ωi及び位相x2^(k),・・・,x2m^(k)をモニタ部81に出力し、例えばグラフにて画面表示する。また、フリッカー成分表示部80は、領域α,β内のそれぞれの画素値y(k)をモニタ部81に出力し、映像を画面表示する。
図21は、実施例7の第1表示例を説明する図であり、実施例3により推定された映像信号のフリッカーに関する情報を表示する例を示している。上図の横軸は周波数、縦軸は振幅を示す。下図の横軸は周波数、縦軸は位相を示す。
フリッカー成分表示部80は、上図のとおり、領域α,βの示す領域a1、領域a2、領域a3及び領域a4について、角周波数ωiに対応する周波数10,20,・・・毎に、それぞれの振幅x1^(k),・・・,x2m-1^(k)をグラフ表示する。これにより、ユーザは、同じ周波数のフリッカーについて、複数の領域α,βにおける振幅の違いを認識することができる。
また、フリッカー成分表示部80は、下図のとおり、領域α,βの示す領域a1、領域a2、領域a3及び領域a4について、角周波数ωiに対応する周波数10,20,・・・毎に、それぞれの位相x2^(k),・・・,x2m^(k)をグラフ表示する。これにより、ユーザは、同じ周波数のフリッカーについて、複数の領域α,βにおける位相の違いを認識することができる。
図22は、実施例7の第2表示例を説明する図であり、実施例4により推定された映像信号の所定の領域α,βにおけるフリッカーに関する情報を表示する例を示している。前述のとおり、実施例4は、色毎のゲインに応じて、フリッカーの振幅及び位相を推定するものである。上図の横軸は周波数、縦軸は振幅を示し、下図の横軸は周波数、縦軸は位相を示す。また、図22では、R,G,B,Yの色を対象とした場合のグラフを示している。
フリッカー成分表示部80は、上図のとおり、R,G,B,Yの色について、角周波数ωiに対応する周波数10,20,・・・毎に、所定の領域α,βにおけるそれぞれの振幅x1^(k),・・・,x2m-1^(k)をグラフ表示する。これにより、ユーザは、同じ周波数のフリッカーについて、複数の色における振幅の違いを認識することができる。
また、フリッカー成分表示部80は、下図のとおり、R,G,B,Yの色について、角周波数ωiに対応する周波数10,20,・・・毎に、所定の領域α,βにおけるそれぞれの位相x2^(k),・・・,x2m^(k)をグラフ表示する。これにより、ユーザは、同じ周波数のフリッカーについて、複数の色における位相の違いを認識することができる。
図23は、実施例7の第3表示例を説明する図である。図23において、格子はそれぞれの領域α,βを示す。格子における太線の枠は、対応する領域α,βにおいて、フリッカーの振幅が一定値以上であることを示す。
フリッカー成分表示部80は、領域α,β毎に、フリッカーの振幅x1^(k),・・・,x2m-1^(k)のそれぞれと、予め設定された閾値とを比較する。そして、フリッカー成分表示部80は、フリッカーの振幅x1^(k),・・・,x2m-1^(k)のいずれかが閾値以上であると判定した場合、当該領域α,βのフリッカーの振幅が一定値以上であり、フリッカーが発生している領域α,βであると判断する。
フリッカー成分表示部80は、領域α,β内のそれぞれの画素値yα,β(k)を画面表示すると共に、フリッカーが発生していると判断した領域α,βについて、当該領域α,βを枠で囲んで表示する。これにより、フリッカーが発生している領域α,βを識別可能な形態にて映像信号が表示されるから、ユーザは、フリッカーが発生している領域α,βを認識することができる。
尚、フリッカー成分表示部80は、実施例4を適用して、色毎に推定された映像信号のフリッカーに関する情報を表示する場合、特定の色について、フリッカーの振幅が一定値以上であると判断した場合、前述と同じ枠を当該領域α,βに表示する。この場合、フリッカー成分表示部80は、当該領域α,βの枠を、フリッカーの振幅が一定値以上であると判断した色または当該色に対応する線種で表示するようにしてもよいし、色に対応する塗りつぶし形態で表示するようにしてもよい。これにより、フリッカーが発生している色及び領域α,βを識別可能な形態にて映像信号が表示されるから、ユーザは、フリッカーが発生している色及び領域α,βを認識することができる。
以上のように、実施例7の映像処理装置7によれば、フリッカー成分表示部80は、領域α,βのフリッカー成分の推定値x^(k)から、フリッカーの振幅x1^(k),・・・,x2m-1^(k)及び位相x2^(k),・・・,x2m^(k)を特定する。そして、フリッカー成分表示部80は、角周波数ωiと振幅x1^(k),・・・,x2m-1^(k)及び位相x2^(k),・・・,x2m^(k)とを対応付けてグラフ表示する。また、フリッカー成分表示部80は、フリッカーの振幅が一定値以上であると判断した領域α,βを表示する。
これにより、領域α,β毎に、映像信号の画素値yα,β(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができる。そして、このフリッカー成分x(k)である振幅及び位相を用いてフリッカーの画素値を推定し、これを元の映像信号の画素値y(k)から減算することで、映像信号のフリッカーを確実に抑制することができる。また、フリッカーに関する情報を表示するようにしたから、ユーザは、領域α,β毎に、フリッカーの発生、程度等を認識することができる。
尚、実施例7は、実施例1〜6及び後述する実施例8に適用するようにしてもよい。つまり、実施例1〜6の映像処理装置1〜6は、図6等の構成部に加え、さらに、フリッカー成分表示部80及びモニタ部81を備えるようにしてもよい。後述する実施例8についても同様である。
〔実施例8〕
次に、実施例8について説明する。実施例8は、映像信号が分割された領域毎に、映像信号を時間方向にフーリエ変換することで周波数成分数mを求め、非線形カルマンフィルタを用いて、フリッカーの振幅及び位相を推定する例である。
一般に、複数の光源が不特定の振幅及び位相で点灯すると、領域α,βによっては、フリッカーの周波数成分の数が異なることがある。この場合、領域α,β毎に、周波数成分数mα,βを変更してUKFを使用する必要がある。
図24は、実施例8の映像処理装置の構成例を示すブロック図である。この映像処理装置8は、実施例3を前提として構成され、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44、周波数テーブル45及び周波数成分数設定部82を備えている。
実施例3の映像処理装置3と実施例8の映像処理装置8とを比較すると、両映像処理装置3,8は、非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44を備えている点で共通する。一方、映像処理装置8は、周波数テーブル45及び周波数成分数設定部82を備えている点で、これらを備えていない映像処理装置3と相違する。
非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44は、実施例3と同様であるから、ここでは説明を省略する。また、図示しない領域処理部も実施例3と同様であるから、ここでは説明を省略する。
この場合、非線形カルマンフィルタ13は、初期値テーブル41から、領域α,βに対応するフリッカー成分の推定値の初期値xα,β^(0)及びその誤差分散共分散行列の初期値Pα,β^(0)を読み出す。また、非線形カルマンフィルタ13は、システム雑音テーブル42から、領域α,βに対応するシステム雑音の標準偏差σvα,βを読み出し、定数テーブル43から、領域α,βに対応する定数bα,βを読み出す。また、非線形カルマンフィルタ13は、観測雑音テーブル44から、領域α,βに対応する観測雑音の標準偏差σwα,βを読み出す。
さらに、非線形カルマンフィルタ13は、周波数テーブル45から、領域α,βに対応する周波数成分数mα,βを読み出す。
図25は、周波数テーブル45のデータ構成例を示す図である。周波数テーブル45には、映像信号が分割された領域α,β毎に、周波数成分数mα,βが格納されている。周波数テーブル45の周波数成分数mα,βは、周波数成分数設定部82により格納される。
図24に戻って、周波数成分数設定部82は、非線形カルマンフィルタ13の処理に先立って、図示しない領域処理部から、領域α,β内の画素値y(k)の平均値である画素値yα,β(k)を入力する。
前述のとおり、図示しない領域処理部は、複数の映像信号のフレームを順番に入力し、映像信号のフレーム毎に、当該フレームを複数の領域α,βに分割して、領域α,β内の画素値y(k)の平均値である画素値yα,β(k)を求める。
周波数成分数設定部82は、領域α,β内の画素値y(k)の平均値である画素値yα,β(k)をフーリエ変換し、周波数成分毎の振幅を求める。そして、周波数成分数設定部82は、閾値処理により、予め設定された所定値以上の振幅を有する周波数成分の数を求め、これを周波数成分数mα,βとする。周波数成分数設定部82は、領域α,βに対応する周波数成分数mα,βを周波数テーブル45に格納する。
図26は、周波数成分数設定部82の構成例を示すブロック図である。この周波数成分数設定部82は、バッファ83、フーリエ変換手段84及び閾値処理手段85を備えている。周波数成分数設定部82は、非線形カルマンフィルタ13の処理が行われる前に、領域α,βに対応する周波数成分数mα,βを求め、これを周波数テーブル45に格納(設定)する。
周波数成分数設定部82は、図示しない領域処理部から、領域α,β内の画素値y(k)の平均値である画素値yα,β(k)を入力し、これをバッファ83に格納する。画素値yα,β(k)は、領域α,β内における画素値y(k)の空間方向の平均値である。
フーリエ変換手段84は、バッファ83から、画素値yα,β(k)を読み出し、画素値yα,β(k)を時間方向に離散フーリエ変換し、周波数成分毎の振幅を求め、周波数成分毎の振幅を閾値処理手段85に出力する。
閾値処理手段85は、フーリエ変換手段84から周波数成分毎の振幅を入力し、周波数成分毎の振幅と、予め設定された閾値とを比較する。そして、閾値処理手段85は、振幅が閾値以上の周波数成分を特定し、特定した周波数成分の数を求め、これを周波数成分数mα,βとする。閾値処理手段85は、領域α,βに対応する周波数成分数mα,βを周波数テーブル45に格納する。これにより、領域α,β毎の周波数成分数mα,βが周波数テーブル45に格納される。
以上のように、実施例8の映像処理装置8によれば、周波数成分数設定部82は、領域α,β内の画素値y(k)の平均値である画素値yα,β(k)を時間方向に離散フーリエ変換し、周波数成分毎の振幅を求める。そして、周波数成分数設定部82は、閾値処理により、所定値以上の振幅を有する周波数成分の数を求め、これを周波数成分数mα,βとし、領域α,βに対応する周波数成分数mα,βを周波数テーブル45に格納する。
非線形カルマンフィルタ13は、領域α,β毎に、初期値テーブル41等から、領域α,βに対応するフリッカー成分の推定値の初期値xα,β^(0)等を読み出し、さらに、周波数テーブル45から領域α,βに対応する周波数成分数mα,βを読み出す。そして、非線形カルマンフィルタ13は、フリッカー成分の推定値の初期値xα,β^(0)等を用いて、画素値yα,β(k)に対し、非線形カルマンフィルタ処理を施し、フリッカー成分の推定値x^(k)及び誤差分散共分散行列P^(k)を算出する。
フリッカー推定部23は、領域α,β毎に、フリッカー成分の推定値x^(k)から、それぞれの周波数成分の正弦関数の和であるフリッカー画素値y’ α,β(k)を算出する。減算部30は、領域α,β内のそれぞれの画素値y(k)からフリッカー画素値y’ α,β(k)を減算して補正値z(k)を求める。
これにより、領域α,β毎に、当該領域α,βに対応する周波数成分数mα,βを用いて、映像信号の画素値yα,β(k)から映像信号のフリッカー成分x(k)である振幅及び位相を高精度に推定することができる。そして、映像信号のフリッカーを確実に抑制することが可能となる。また、オンライン処理にてフリッカーを抑制することができ、フレームメモリ等のハードウェアが不要となり、回路規模を小さくすることができる。
尚、実施例8は、実施例3だけでなく、実施例1,2,4〜7についても適用がある。
以上、実施例1〜8を挙げて本発明を説明したが、本発明は前記実施例1〜8に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、前記実施例1〜8では、非線形カルマンフィルタの一つとしてUKFを適用したが、他の非線形カルマンフィルタを用いてもよい。
また、非線形カルマンフィルタの代わりに、粒子フィルタ(パーティクルフィルタ:Particle Filter)を用いてもよい。粒子フィルタは、非線形カルマンフィルタと同様に、前記式(1)〜(4)で表されるモデルに対し、フリッカー成分x(k)を推定する。
また、前記実施例7では、図21〜図23に示したように、フリッカーに関する情報を画面表示するようにしたが、これらは一例である。本発明は、フリッカーに関する情報の画面表示形態を、図21〜図23に限定するものではない。
尚、本発明の実施例1〜8の映像処理装置1〜8のハードウェア構成としては、通常のコンピュータを使用することができる。映像処理装置1〜8は、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインターフェース等を備えたコンピュータによって構成される。
映像処理装置1に備えた非線形カルマンフィルタ11、フリッカー推定部21及び減算部30の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、映像処理装置2に備えた非線形カルマンフィルタ12、フリッカー推定部22及び減算部30の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
また、映像処理装置3に備えた非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43及び観測雑音テーブル44の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
また、映像処理装置4に備えた非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44及びテーブル設定部50の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
また、映像処理装置5に備えた非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44及びテーブル設定部60の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
また、映像処理装置6に備えた非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44及びテーブル設定部70の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
また、映像処理装置7に備えた非線形カルマンフィルタ13、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44、フリッカー成分表示部80及びモニタ部81の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
また、映像処理装置8に備えた非線形カルマンフィルタ13、フリッカー推定部23、減算部30、初期値テーブル41、システム雑音テーブル42、定数テーブル43、観測雑音テーブル44、周波数テーブル45及び周波数成分数設定部82の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
これらのプログラムは、前記記憶媒体に格納されており、CPUに読み出されて実行される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。
本発明は、動画用カメラのフリッカーの補正、及びフリッカーの検知に有用である。
1,2,3,4,5,6,7,8 映像処理装置
11,12,13 非線形カルマンフィルタ
21,22,23 フリッカー推定部
30 減算部
41 初期値テーブル
42 システム雑音テーブル
43 定数テーブル
44 観測雑音テーブル
45 周波数テーブル
50,60,70 テーブル設定部
80 フリッカー成分表示部
81 モニタ部
82 周波数成分数設定部
83 バッファ
84 フーリエ変換手段
85 閾値処理手段
90 時系列推定部
91 状態ベクトル推定値等計算手段
92 時系列推定値計算手段
93 カルマンゲイン計算部
94 事前誤差分散計算手段
95 事前状態誤差分散計算手段
96 カルマンゲイン計算手段
97 更新部
98 状態ベクトル更新手段
99 誤差分散更新手段
x(k) 状態ベクトル、フリッカー成分
y(k) 観測値、画素値
1(k),・・・,x2m-1(k) フリッカーの振幅
2(k),・・・,x2m(k) フリッカーの位相
v システム雑音
w 観測雑音
b 定数
ωi 角周波数
i フリッカーの周波数成分の番号
m フリッカーの周波数成分数
k 時刻
f(x(k)) 状態ベクトル関数
h(x(k)) 観測関数
x^(k) 状態ベクトルの推定値
x^-(k) 状態ベクトルの事前推定値
P^(k) 誤差分散共分散行列(の推定値)
P^-(k) 誤差分散共分散行列の事前推定値
y^-(k) 観測値の事前推定値
g(k) カルマンゲイン
yy -(k) 観測値推定誤差の行列
xy -(k) 状態ベクトル推定誤差と観測値推定誤差の相関行列
σv システム雑音の標準偏差
σw 観測雑音の標準偏差
ωi 重み
y’(k) フリッカー画素値
z(k) 補正値
α,β 領域
α,β(k) 画素値(領域α,β内の画素値y(k)の平均値)
a1,a2,a3,a4 領域

Claims (11)

  1. 映像信号からフリッカーを除去する映像処理装置において、
    状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなるフリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される画素値としたモデルに対し、前記フリッカー成分を推定する非線形カルマンフィルタと、
    前記非線形カルマンフィルタにより推定された前記フリッカー成分から、当該フリッカー成分の前記振幅及び前記位相により定められる正弦波に基づいたフリッカー画素値を推定するフリッカー推定部と、
    前記映像信号の画素値から、前記フリッカー推定部により推定された前記フリッカー画素値を減算し、前記フリッカーが除去された画素値を求める減算部と、
    を備えたことを特徴とする映像処理装置。
  2. 複数の領域に分割された映像信号からフリッカーを除去する映像処理装置において、
    前記領域内の画素値の平均値を入力し、状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなる前記領域のフリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される前記領域内の画素値の平均値としたモデルに対し、前記領域毎に、前記フリッカー成分を推定する非線形カルマンフィルタと、
    前記領域毎に、前記非線形カルマンフィルタにより推定された前記フリッカー成分から、当該フリッカー成分の前記振幅及び前記位相により定められる正弦波に基づいたフリッカー画素値を推定するフリッカー推定部と、
    前記領域毎に、前記映像信号の当該領域内のそれぞれの画素値から、前記フリッカー推定部により推定された前記フリッカー画素値を減算し、前記フリッカーが除去された画素値をそれぞれ求める減算部と、
    を備えたことを特徴とする映像処理装置。
  3. 請求項1または2に記載の映像処理装置において、
    さらに、予め設定された色毎のデータ群を用いて、前記映像信号を構成する前記色毎に、前記フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部を備え、
    前記非線形カルマンフィルタは、
    前記色毎に、前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記フリッカー成分を推定し、
    前記フリッカー推定部は、前記色毎に、前記フリッカー画素値を推定し、
    前記減算部は、前記色毎に、前記フリッカーが除去された画素値をそれぞれ求める、ことを特徴とする映像処理装置。
  4. 請求項1または2に記載の映像処理装置において、
    さらに、予め設定された色温度毎のデータ群を用いて、CC(Color Temperature Conversion:色温度変換)フィルタにより変換された照明光の前記色温度に応じて、前記フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部を備え、
    前記非線形カルマンフィルタは、
    前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記フリッカー成分を推定する、ことを特徴とする映像処理装置。
  5. 請求項1または2に記載の映像処理装置において、
    さらに、予め設定された透過率毎のデータ群を用いて、ND(Neutral Density:ニュートラルデンシティ(中性濃度))フィルタの前記透過率に応じて、前記非線形カルマンフィルタにて用いる前記フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部を備え、
    前記非線形カルマンフィルタは、
    前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記フリッカー成分を推定する、ことを特徴とする映像処理装置。
  6. 映像信号のフリッカーに関する情報を表示する映像処理装置において、
    前記映像信号が複数の領域に分割された際の前記領域内の画素値の平均値を入力し、状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなる前記領域のフリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される前記領域内の画素値の平均値としたモデルに対し、前記領域毎に、前記フリッカー成分を推定する非線形カルマンフィルタと、
    前記非線形カルマンフィルタにより推定された前記領域毎の前記フリッカー成分の前記振幅及び前記位相を表示するフリッカー成分表示部と、
    を備えたことを特徴とする映像処理装置。
  7. 請求項6に記載の映像処理装置において、
    前記フリッカー成分表示部に代わる新たなフリッカー成分表示部は、
    前記非線形カルマンフィルタにより推定された前記領域毎の前記フリッカー成分の前記振幅に基づいて、前記フリッカーが発生している前記領域を判定し、前記フリッカーが発生している前記領域を識別可能な形態にて、前記映像信号を表示する、ことを特徴とする映像処理装置。
  8. 映像信号のフリッカーに関する情報を表示する映像処理装置において、
    予め設定された色毎のデータ群を用いて、前記映像信号を構成する前記色毎に、フリッカー成分の推定値の初期値、誤差分散共分散行列の初期値、システム雑音の標準偏差及び観測雑音の標準偏差を設定する設定部と、
    前記色毎に、前記映像信号が複数の領域に分割された際の前記領域内の画素値の平均値を入力し、状態ベクトルを、所定の漸化式に従い前記映像信号のフレーム毎に更新される振幅及び位相からなる前記領域の前記フリッカー成分とし、観測値を、正弦波の和で記述される所定の漸化式に従い前記映像信号の前記フレーム毎に更新される前記領域内の画素値の平均値としたモデルに対し、前記設定部により設定された前記フリッカー成分の推定値の初期値、前記誤差分散共分散行列の初期値、前記システム雑音の標準偏差及び前記観測雑音の標準偏差を用いて、前記領域毎の前記フリッカー成分を推定する非線形カルマンフィルタと、
    前記色毎に、前記非線形カルマンフィルタにより推定された前記領域毎の前記フリッカー成分の前記振幅に基づいて、前記フリッカーが発生している前記領域を判定し、前記フリッカーが発生している前記色及び前記領域を識別可能な形態にて、前記映像信号を表示するフリッカー成分表示部と、
    を備えたことを特徴とする映像処理装置。
  9. 請求項2に記載の映像処理装置において、
    さらに、前記領域毎に、当該領域内の画素値の平均値を入力し、当該画素値の平均値をフーリエ変換し、周波数成分毎の振幅を求め、前記周波数成分毎の前記振幅に基づいて、周波数成分数を設定する周波数成分数設定部を備え、
    前記非線形カルマンフィルタは、
    前記周波数成分数設定部により設定された前記領域毎の前記周波数成分を用いて、前記領域毎に、前記フリッカー成分を推定する、ことを特徴とする映像処理装置。
  10. 請求項1から9までのいずれか一項に記載の映像処理装置において、
    前記非線形カルマンフィルタをUKF(Unscented Kalman Filter:アンセンテッドカルマンフィルタ)とするか、または前記非線形カルマンフィルタの代わりに粒子フィルタを用いる、ことを特徴とする映像処理装置。
  11. コンピュータを、請求項1から10までのいずれか一項に記載の映像処理装置として機能させるためのプログラム。
JP2019004347A 2019-01-15 2019-01-15 映像処理装置及びプログラム Active JP7240181B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019004347A JP7240181B2 (ja) 2019-01-15 2019-01-15 映像処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019004347A JP7240181B2 (ja) 2019-01-15 2019-01-15 映像処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2020113919A true JP2020113919A (ja) 2020-07-27
JP7240181B2 JP7240181B2 (ja) 2023-03-15

Family

ID=71667786

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019004347A Active JP7240181B2 (ja) 2019-01-15 2019-01-15 映像処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP7240181B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988017A (zh) * 2020-08-31 2020-11-24 郑州轻工业大学 一种基于标准偏差变尺度采样的平方根ukf计算方法
WO2023025010A1 (zh) * 2021-08-25 2023-03-02 维沃移动通信有限公司 频闪条带信息识别方法、装置和电子设备
CN117724101A (zh) * 2024-02-18 2024-03-19 中国特种设备检测研究院 基于相位分块的卡尔曼滤波相位解缠方法、系统及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013161340A (ja) * 2012-02-07 2013-08-19 Nippon Hoso Kyokai <Nhk> 画像処理装置及びプログラム
WO2014199502A1 (ja) * 2013-06-14 2014-12-18 株式会社 日立製作所 電力系統制御装置、システム及び方法
JP2015192345A (ja) * 2014-03-28 2015-11-02 日本放送協会 フリッカ低減装置およびそのプログラム、ならびに、フリッカ低減システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013161340A (ja) * 2012-02-07 2013-08-19 Nippon Hoso Kyokai <Nhk> 画像処理装置及びプログラム
WO2014199502A1 (ja) * 2013-06-14 2014-12-18 株式会社 日立製作所 電力系統制御装置、システム及び方法
JP2015192345A (ja) * 2014-03-28 2015-11-02 日本放送協会 フリッカ低減装置およびそのプログラム、ならびに、フリッカ低減システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NESLIHAN KOSE ほか2名: "A Kalman filter based approach for light flicker evaluation of power systems", 2009 IEEE 17TH SIGNAL PROCESSING AND COMMUNICATIONS APPLICATIONS CONFERENCE, JPN6022052108, 26 June 2009 (2009-06-26), pages 25 - 28, ISSN: 0004939002 *
池上 久典 ほか2名: "知的照明システムにおける線形計画法を用いた照明制御アルゴリズム", 情報処理学会 論文誌, vol. 第56巻、第3号, JPN6022052107, 15 March 2015 (2015-03-15), pages 1090 - 1098, ISSN: 0004939003 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988017A (zh) * 2020-08-31 2020-11-24 郑州轻工业大学 一种基于标准偏差变尺度采样的平方根ukf计算方法
CN111988017B (zh) * 2020-08-31 2023-07-25 郑州轻工业大学 一种基于标准偏差变尺度采样的平方根ukf计算方法
WO2023025010A1 (zh) * 2021-08-25 2023-03-02 维沃移动通信有限公司 频闪条带信息识别方法、装置和电子设备
CN117724101A (zh) * 2024-02-18 2024-03-19 中国特种设备检测研究院 基于相位分块的卡尔曼滤波相位解缠方法、系统及设备

Also Published As

Publication number Publication date
JP7240181B2 (ja) 2023-03-15

Similar Documents

Publication Publication Date Title
JP7240181B2 (ja) 映像処理装置及びプログラム
US9344690B2 (en) Image demosaicing
JP2019534520A (ja) 画像処理用のニューラルネットワークモデルのトレーニング方法、装置、及び記憶媒体
RU2461979C2 (ru) Устройство видеоотображения
US20150030234A1 (en) Adaptive multi-dimensional data decomposition
CN107316286B (zh) 一种图像中雨雾同步合成、去除的方法和装置
JP4053422B2 (ja) 動き補償による補間におけるハローの影響の低減方法
EP1841234A2 (en) Apparatus for creating interpolation frame
CN102201113A (zh) 图像处理设备、图像处理方法以及程序
CN102025959A (zh) 从低清晰度视频产生高清晰度视频的系统与方法
CN105205787A (zh) 用于对ldr视频序列进行动态范围扩展的方法和设备
JP2020042760A (ja) 情報処理方法、情報処理装置、及びプログラム
JP2021043874A (ja) 画像処理装置、画像処理方法、およびプログラム
JP4872508B2 (ja) 画像処理装置および画像処理方法、並びにプログラム
JP4890464B2 (ja) 動き補償されたピクチャを生成する方法及び装置
CN107113413A (zh) 用于基于运动的视频色调稳定的方法和装置
JP2006140952A (ja) 画像処理装置および画像処理方法
US10198797B2 (en) Apparatus correcting shading without taking optical characteristics into consideration and method thereof
JP2009017214A (ja) フリッカ検出装置及びフリッカ検出方法
JP2008028926A (ja) カラー画像動き検出回路、多重カラー画像統合装置およびカラー画像動き検出方法
WO2020110738A1 (ja) 動きベクトル生成装置、投影像生成装置、動きベクトル生成方法、およびプログラム
JP2006215657A (ja) 動きベクトル検出方法、動きベクトル検出装置、動きベクトル検出プログラム及びプログラム記録媒体
TWI729322B (zh) 資訊顯示系統及資訊顯示方法
CN114841899B (zh) 时空频联合紧致编码去除红外图像横纹的方法及红外设备
CN107292837B (zh) 基于误差补偿的图像去雾方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230303

R150 Certificate of patent or registration of utility model

Ref document number: 7240181

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150