(57)【要約】【課題】映像に含まれるノイズのレベルを精度良く検出することができるノイズレベル検出装置及びプログラムを提供する。【解決手段】減算器１４で、映像に含まれる隣接するフレーム間で対応する画素の画素値のフレーム差分を算出し、バイラテラルフィルタ２０で、フレーム差分が生じている画素の孤立性に基づいて、動き成分によりフレーム差分が生じている動き領域を推定してスイッチをオン・オフし、ヒストグラム生成部２４及びノイズレベル算出部２６で、動き領域以外の領域に含まれる画素のフレーム差分に基づいて、ノイズレベルを算出する。【選択図】図１
2019118067.tif 000002
【特許請求の範囲】
【請求項１】
映像に含まれる複数のフレームのうちの処理対象のフレームと、前記処理対象のフレームに隣接するフレームとで対応する画素の画素値の差分を算出する差分算出部と、
前記差分算出部により算出された差分が所定値以上の画素の孤立性に基づいて、前記処理対象のフレームにおいて、動き成分によりフレーム間に画素値の差分が生じている動き領域を推定する推定部と、
前記処理対象のフレームにおいて、前記推定部により推定された動き領域以外の領域に含まれる画素の画素値の差分に基づいて、ノイズレベルを算出するノイズレベル算出部と、
を含むノイズレベル検出装置。
【請求項２】
前記推定部は、前記差分が所定値以上の画素を注目画素とし、前記注目画素の周辺に存在する前記差分が所定値以上の画素の割合に基づいて、前記孤立性を判定する請求項１に記載のノイズレベル検出装置。
【請求項３】
前記推定部は、領域抽出フィルタにより、前記動き領域を推定する請求項１に記載のノイズレベル検出装置。
【請求項４】
前記領域抽出フィルタは、バイラテラルフィルタである請求項３に記載のノイズレベル検出装置。
【請求項５】
前記ノイズレベル算出部は、前記動き領域以外の領域に含まれる画素の画素値の差分の値毎の頻度を表すヒストグラムをガウス分布に対応させた場合の分散に基づいて、前記ノイズレベルを算出する請求項１〜請求項４のいずれか１項記載のノイズレベル検出装置。
【請求項６】
コンピュータを、請求項１〜請求項５のいずれか１項記載のノイズレベル検出装置の各部として機能させるためのノイズレベル検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像に含まれるノイズのレベルを検出するノイズレベル検出装置、及びノイズレベル検出プログラムに関する。
【背景技術】
【０００２】
ノイズは、映像の品質を決定する最も重要な要素の一つである。撮影された映像には、必ずノイズが含まれる。特に照明条件が悪く、暗い場所で撮影された映像や、夜間に撮影された映像ではノイズは非常に目立つ。映像に含まれるノイズを低減する手法として、ノイズリデューサによる手法が存在する。ノイズリデューサでは、例えば、パラメータα（＝０〜１）を設定し、映像に含まれるノイズのレベルが大きい場合には、αを大きくして１に近づけ、映像に含まれるノイズのレベルが小さい場合には、αを小さくして０に近づける。このパラメータαの値により、ノイズリデューサによるノイズ低減後の映像は大きく変化する。
【０００３】
例えば、ノイズのレベルが小さい映像に対して、大きなα値（例えばα＝０．５）を与えた場合、ノイズの低減効果は高いが、映像内の映る動物体に尾引きが発生し、ボケが目立つ映像となってしまう。一方、ノイズのレベルが大きい映像に対して、小さなα値（例えばα＝０．１）を与えた場合、ボケはほとんど発生しないが、ノイズの低減効果が低い。したがって、パラメータαを適切に設定した上で、ノイズリデューサを適用する必要がある。
【０００４】
しかし、実験等では、予め定めたレベルのノイズを発生させた映像を用いることができるが、一般的に撮影される映像ではノイズレベルは不明である。そのため、既にノイズが混入している映像からノイズレベルを検出し、検出されたノイズレベルに応じたパラメータαを設定する必要があるが、映像からノイズレベルを検出することは容易ではない。
【０００５】
ノイズレベルを検出する技術として、映像を構成するフレーム間の画素値の差分であるフレーム差分を用いる技術が存在する。例えば、フレーム間の対応する画素の輝度値の差分絶対値をそれぞれ演算し、ノイズ量を算出するための統計データであるヒストグラムを生成し、ヒストグラムのデータに基づいて映像信号のノイズ量を算出する装置が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−４９４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、映像に動物体が存在する場合には、ノイズによるフレーム差分だけでなく、動物体の動きによるフレーム差分も発生する。したがって、特許文献１の技術では、動物体の動きにより生じたフレーム差分が、ノイズレベルの検出に影響してしまい、精度良くノイズレベルを検出することができない。
【０００８】
本発明は、上記事実を考慮して成されたもので、映像に含まれるノイズのレベルを精度良く検出することができるノイズレベル検出装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために本発明に係るノイズレベル検出装置は、映像に含まれる複数のフレームのうちの処理対象のフレームと、前記処理対象のフレームに隣接するフレームとで対応する画素の画素値の差分を算出する差分算出部と、前記差分算出部により算出された差分が所定値以上の画素の孤立性に基づいて、前記処理対象のフレームにおいて、動き成分によりフレーム間に画素値の差分が生じている動き領域を推定する推定部と、前記処理対象のフレームにおいて、前記推定部により推定された動き領域以外の領域に含まれる画素の画素値の差分に基づいて、ノイズレベルを算出するノイズレベル算出部と、を含んで構成されている。
【００１０】
本発明に係るノイズレベル検出装置によれば、差分算出部が、映像に含まれる複数のフレームのうちの処理対象のフレームと、処理対象のフレームに隣接するフレームとで対応する画素の画素値の差分を算出する。そして、推定部が、差分算出部により算出された差分が所定値以上の画素の孤立性に基づいて、処理対象のフレームにおいて、動き成分によりフレーム間に画素値の差分が生じている動き領域を推定する。さらに、ノイズレベル算出部が、処理対象のフレームにおいて、推定部により推定された動き領域以外の領域に含まれる画素の画素値の差分に基づいて、ノイズレベルを算出する。
【００１１】
これにより、動き成分により生じたフレーム間の画素値の差分の影響を排除して、映像に含まれるノイズのレベルを精度良く検出することができる。
【００１２】
また、本発明に係るノイズレベル検出装置の前記推定部は、前記差分が所定値以上の画素を注目画素とし、前記注目画素の周辺に存在する前記差分が所定値以上の画素の割合に基づいて、前記孤立性を判定することができる。また、前記推定部は、領域抽出フィルタにより、前記動き領域を推定することができる。また、前記領域抽出フィルタは、バイラテラルフィルタとすることができる。これにより、動き領域を簡易に推定することができる。
【００１３】
また、本発明に係るノイズレベル検出装置の前記ノイズレベル算出部は、前記動き領域以外の領域に含まれる画素の画素値の差分の値毎の頻度を表すヒストグラムをガウス分布に対応させた場合の分散に基づいて、前記ノイズレベルを算出することができる。これにより、映像に含まれるガウスノイズのレベルを精度良く検出することができる。
【００１４】
また、本発明に係るノイズレベル検出プログラムは、コンピュータを、上記のノイズレベル検出装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１５】
本発明に係るノイズレベル検出装置によれば、動き成分によりフレーム間に画素値の差分が生じている動き領域を推定し、動き領域以外の領域に含まれる画素の画素値の差分に基づいて、ノイズレベルを算出するため、動き成分により生じたフレーム間の画素値の差分の影響を排除して、映像に含まれるノイズのレベルを精度良く検出することができる、という効果がある。
【図面の簡単な説明】
【００１６】
【図１】本実施の形態に係るノイズレベル検出装置の概略構成を示すブロック図である。
【図２】映像信号として入力されるフレーム画像の一例を示す図である。
【図３】フレーム差分を画像化した一例を示す図である。
【図４】動き領域を推定しない場合に、ノイズレベルの検出に利用される領域を説明するための図である。
【図５】本実施の形態において、ノイズレベルの検出に利用される領域を説明するための図である。
【図６】σ＝５のガウス分布で表されるガウスノイズを与えた映像信号から、フレーム毎にノイズレベルを検出した結果の一例を示すグラフである。
【図７】複数のレベルのガウスノイズを与えた映像信号から、ノイズレベルを検出した結果の一例を示す表である。
【図８】本実施の形態に係るノイズレベル検出装置の概略構成の他の例を示すブロック図である。
【図９】ノイズレベル検出装置の機能ブロック図である。
【図１０】ノイズレベル検出処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を参照して、本発明に係る実施の形態の例を詳細に説明する。なお、本実施の形態では、映像に含まれるガウスノイズのレベルを検出する場合について説明する。
【００１８】
図１に示すように、本実施の形態に係るノイズレベル検出装置１０は、映像信号が入力されるフレームメモリ１２と、映像信号が入力されると共にフレームメモリ１２と接続された減算器１４と、減算器１４と接続された水平ハイパスフィルタ（ＨＰＦ）１６と、水平ＨＰＦ１６と接続された垂直ＨＰＦ１８と、垂直ＨＰＦ１８と接続されたバイラテラルフィルタ２０と、バイラテラルフィルタ２０の出力に応じてオン、オフされるスイッチ２２と、スイッチ２２を介して垂直ＨＰＦ１８と接続されたヒストグラム生成部２４と、ヒストグラム生成部２４と接続されたノイズレベル算出部２６とを備える。
【００１９】
なお、フレームメモリ１２及び減算器１４は、本発明の差分算出部の一例であり、バイラテラルフィルタ２０は、本発明の推定部の一例であり、スイッチ２２、ヒストグラム生成部２４、及びノイズレベル算出部２６は、本発明のノイズレベル算出部の一例である。
【００２０】
フレームメモリ１２には、映像を構成する各フレーム画像の各画素の画素値を示す信号の系列である映像信号が入力される。フレームメモリ１２は、１フレーム画像分の画素値を記憶可能な容量を持ち、１フレームを超えて新たな画素値が入力された場合には、記憶された時間が古い画素値から順に出力する。すなわち、フレームメモリ１２からは、入力された映像信号に対して、１フレーム分遅延された映像信号が出力される。フレームメモリ１２から出力された映像信号は、減算器１４に入力される。
【００２１】
減算器１４には、遅延なしで入力された映像信号と、フレームメモリ１２から１フレーム分遅延して出力された映像信号とが入力される。減算器１４は、遅延なしの映像信号が示す各画素の画素値と、１フレーム分遅延した映像信号が示す各画素の画素値との差分を算出する。これにより、隣接するフレーム間のフレーム差分が算出されることになる。減算器１４からは、算出されたフレーム差分を示す差分信号が出力される。出力された差分信号は、水平ＨＰＦ１６へ入力される。
【００２２】
ノイズは、フレーム画像の水平方向にも、垂直方向にも高周波成分として表れる。そこで、水平ＨＰＦ１６は、減算器１４から入力された差分信号に対して、水平方向にハイパスフィルタ処理を行い、フィルタ処理結果を垂直ＨＰＦ１８へ入力する。同様に、垂直ＨＰＦ１８は、水平ＨＰＦ１６から入力された水平方向のハイパスフィルタ処理後の差分信号に対して、垂直方向にハイパスフィルタ処理を行う。これにより、フレーム差分から、水平かつ垂直に高周波成分を検出する。垂直ＨＰＦ１８から出力される、ハイパスフィルタ処理後の差分信号は、バイラテラルフィルタ２０へ入力されると共に、スイッチ２２へ向けて送出される。なお、水平ＨＰＦ１６及び垂直ＨＰＦ１８は、本発明の必須の構成ではない。
【００２３】
ここで、映像における隣接するフレーム間のフレーム差分には、ノイズにより生じるフレーム差分と、動き成分によるフレーム差分とが含まれる。なお、ハイパスフィルタ処理後のフレーム差分であっても、動き成分によって生じた高周波成分のフレーム差分は含まれている。ノイズレベルを適切に検出するためには、ノイズにより生じるフレーム差分のみを利用することが望ましい。そこで、本実施の形態では、バイラテラルフィルタを用いて、映像の各フレームにおいて、動き成分によりフレーム差分が生じている領域を推定する。なお、ここでの動き成分とは、映像内の被写体自体が動いている場合に限定されず、映像を撮影しているカメラのパン及びチルトにより生じている動き成分も含む。
【００２４】
バイラテラルフィルタは、一般に画像内のエッジを保護するノイズリデューサとして使用されるフィルタであり、分散した画素成分は削除し、まとまりのある画素成分を残す処理を行う。したがって、バイラテラルフィルタ処理により、動き成分によって生じたフレーム差分のように、所定値以上の画素値（フレーム差分）の画素が連続し、まとまりのある領域を形成している部分は残留し、ノイズによって生じたフレーム差分のように、所定値以上の画素値（フレーム差分）の画素が孤立している部分は消滅する。
【００２５】
本実施の形態におけるバイラテラルフィルタ２０は、例えば、以下の（１）式で表現される。
【００２６】
【数１】
2019118067.tif 000003
【００２７】
（１）式において、ｆ（ｘ，ｙ）は、入力画像における座標（ｘ，ｙ）の画素値であり、ｇ（ｘ，ｙ）は、出力画像における座標（ｘ，ｙ）の画素値である。ここでは、入力画像は、垂直ＨＰＦ１８から入力されるフレーム差分である。また、ｉ及びｊは、注目画素（ｘ，ｙ）の周辺画素の範囲を定めるパラメータであり、σ１は、平滑度のパラメータ、σ２は画素値の差分の重み付けパラメータである。
【００２８】
バイラテラルフィルタ２０の出力が有意（ゼロではない、非ゼロ）となる画素は、動き成分によりフレーム差分が生じている領域に含まれる画素であると推定することができる。一方、バイラテラルフィルタ２０の出力がゼロとなる画素は、ノイズによりフレーム差分が生じている画素であると推定することができる。バイラテラルフィルタ２０の出力は、スイッチ２２へ送出される。
【００２９】
なお、動き成分によりフレーム差分が生じている領域を推定する方法は、バイラテラルフィルタ２０に限定されない。例えば、注目画素の周辺画素（例えば、３×３画素、５×５画素、・・・）に、所定値以上のフレーム差分、又は注目画素と同等の値のフレーム差分の画素が、周辺画素の全画素数に対して所定割合以上存在する場合には１を出力し、所定割合未満しか存在しない場合には０を出力するようなフィルタであってもよい。フレーム差分が生じている画素がまとまりのある領域を形成しているか否か、又はフレーム差分が生じている画素が孤立しているか否かを判定できるフィルタであればよい。
【００３０】
スイッチ２２は、バイラテラルフィルタ２０の出力が有意の場合にはＯＦＦとなり、ゼロの場合にはＯＮとなる。スイッチ２２がＯＮの場合、垂直ＨＰＦ１８からの出力、すなわちハイパスフィルタ処理後のフレーム差分がヒストグラム生成部２４へ入力されることになる。これは、動き成分によりフレーム差分が生じていると推定される領域以外の画素、すなわち、ノイズによりフレーム差分が生じていると推定される画素のフレーム差分のみが、ノイズレベルの検出に利用されることを表す。
【００３１】
ヒストグラム生成部２４は、フレーム毎に、スイッチ２２を介して入力されたフレーム差分の値毎の頻度を表すヒストグラムを生成する。ヒストグラム生成部２４は、生成したヒストグラムを、ノイズレベル算出部２６へ出力する。
【００３２】
ノイズレベル算出部２６は、ヒストグラム生成部２４から入力されたヒストグラムをガウス分布とみなし、そのガウス分布の分散を算出する。分散が小さい場合、フレーム差分が０に集中しており、ノイズレベルが小さいことを表す。分散が大きい場合、フレーム差分が０の画素が減少し、値の大きいフレーム差分の発生確率も高いことを表す分布となるため、ノイズレベルが大きいことを表す。ノイズレベル算出部２６は、算出した分散、又はその分散に基づく値（例えば、分散に所定の係数を乗算した値）を、ノイズレベルとして出力する。
【００３３】
次に、本実施の形態に係るノイズレベル検出装置１０の作用について説明する。
【００３４】
例えば、映像信号として、図２に示すような、フレーム画像の各画素値が、フレームメモリ１２及び減算器１４の各々に順次入力される。
【００３５】
そして、減算器１４が、遅延なしで入力された映像信号が示す画素値と、フレームメモリ１２から１フレーム分遅延して入力された映像信号が示す画素値とのフレーム差分を算出する。減算器１４で算出されたフレーム差分を示す差分信号は、水平ＨＰＦ１６及び垂直ＨＰＦ１８でハイパスフィルタ処理され、バイラテラルフィルタ２０へ出力されると共に、スイッチ２２へ向けて送出される。図３に、図２に示すフレーム画像の各画素のフレーム差分を画像化した例を示す。図３の例では、フレーム差分の値が大きいほど輝度値が高く（白）、フレーム差分の値が小さいほど輝度値が低い（黒）画素で表している。図３に示すように、フレーム差分には、ノイズ成分によるフレーム差分だけでなく、動き成分（シャチ、観客、観客席等の輪郭、水面に生じている波やしぶきなど）によるフレーム差分も含まれていることが分かる。
【００３６】
そして、バイラテラルフィルタ２０に入力されたフレーム差分にバイラテラルフィルタ処理が適用されて出力され、スイッチ２２へ送出される。
【００３７】
バイラテラルフィルタ２０の出力が有意の場合、スイッチ２２はＯＦＦとなり、垂直ＨＰＦ１８からの出力、すなわちハイパスフィルタ処理後のフレーム差分はヒストグラム生成部２４へ入力されない。一方、バイラテラルフィルタ２０の出力がゼロの場合、スイッチ２２はＯＮとなり、垂直ＨＰＦ１８からの出力、すなわちハイパスフィルタ処理後のフレーム差分がヒストグラム生成部２４へ入力される。
【００３８】
次に、ヒストグラム生成部２４が、フレーム毎に、スイッチ２２を介して入力されたフレーム差分の値毎の頻度を表すヒストグラムを生成し、ノイズレベル算出部２６へ出力する。
【００３９】
そして、ノイズレベル算出部２６が、ヒストグラム生成部２４から入力されたヒストグラムをガウス分布とみなし、そのガウス分布の分散を算出し、算出した分散、又はその分散に基づく値を、ノイズレベルとして出力する。
【００４０】
ここで、本実施の形態との比較として、図４に、垂直ＨＰＦ１８からの出力、すなわちハイパスフィルタ処理後のフレーム差分を用いてノイズレベルを検出する場合に利用される領域の例を示す。図４において、白くまとまりのある領域として示される部分が、ノイズレベルの検出に利用される領域である。図２に示すフレーム画像と比較するとわかるように、この場合、水面に生じた波やしぶきによりフレーム差分が生じている部分もノイズレベルの検出に利用されることになり、適切なノイズレベルの検出を行うことができない。
【００４１】
一方、図５に、本実施の形態において、ノイズレベルの検出に利用される領域の例を示す。図４の場合と同様に、白くまとまりのある領域として示される部分が、ノイズレベルの検出に利用される領域である。この場合、フレーム画像における平坦な部分、すなわち、動き成分によるフレーム差分が生じない領域が、ノイズレベルの検出に利用されることがわかる。
【００４２】
図６に、σ（分散）＝５のガウス分布で表されるガウスノイズを与えた映像信号から、フレーム毎にノイズレベルを検出した結果の一例を示す。図６に示すＡは、画像全体のフレーム差分からノイズレベルを検出する手法による結果であり、Ｂは、ノイズレベルの検出に用いる画素として、輝度値に所定の制限を設けた手法による結果であり、Ｃは、本実施の形態の手法による結果である。与えたノイズはガウスノイズであるため、本来、フレーム間でノイズレベルに大きな差は生じないはずであるが、Ａ及びＢの手法では、フレーム毎に、ノイズレベルに大きな差が生じている。これは、ノイズレベルの検出に、動き成分によるフレーム差分も利用されていることが影響しているためである。本実施の形態の手法（Ｃの手法）の場合、全フレームを通じて、与えたノイズレベルに近いほぼ一定な値のノイズレベルが検出されており、精度良くノイズレベルが検出されていることが分かる。
【００４３】
また、図７に、複数のレベルのガウスノイズを与えた映像信号から、図６の場合と同様のＡ、Ｂ、及びＣの手法の各々でノイズレベルを検出した結果の一例を示す。Ａ及びＢの手法に比べ、本実施の形態の手法では、与えたノイズレベルに近いノイズレベルを検出できていることが分かる。
【００４４】
なお、本実施の形態に係るノイズレベル検出装置１０によるノイズレベルの検出処理は、図８に示すコンピュータ３０で実行されるプログラムにより実現することもできる。コンピュータ３０は、ＣＰＵ３２と、プログラムや各種データが記憶されるＲＯＭ３４と、一時記憶領域としてのＲＡＭ３６と、入出力インターフェース（Ｉ／Ｆ）３８と、記憶媒体４２に対するデータの読み書きを制御するRead/Write（Ｒ／Ｗ）部４０と、インターネット等のネットワークに接続される通信Ｉ／Ｆ４４とを備える。
【００４５】
この場合、図９に示すように、ノイズレベル検出装置１０Ａは、機能的には、差分算出部５２と、推定部５４と、ヒストグラム生成部５６と、ノイズレベル算出部５８とを含んだ構成で表すことができる。なお、ヒストグラム生成部５６及びノイズレベル算出部５８は、本発明のノイズレベル算出部の一例である。
【００４６】
ノイズレベル検出装置１０Ａに映像信号が入力されると、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２が実行する。これにより、ノイズレベル検出装置１０Ａが、図１０に示すノイズレベル検出処理を実行する。
【００４７】
ステップＳ１２で、差分算出部５２が、入力された映像信号からフレーム差分を算出する。次に、ステップＳ１４で、推定部５４が、例えばバイラテラルフィルタ処理などにより、フレーム差分が生じている画素の孤立性に基づいて、動き成分によりフレーム差分が生じている動き領域を推定する。
【００４８】
次に、ステップＳ１６で、ヒストグラム生成部５６が、上記ステップＳ１４で推定された動き領域以外の領域に含まれる画素のフレーム差分の頻度を表すヒストグラムを生成する。次に、ステップＳ１８で、ノイズレベル算出部５８が、上記ステップＳ１６で生成されたヒストグラムをガウス分布とみなし、そのガウス分布の分散を算出する。そして、ノイズレベル算出部５８が、算出した分散をノイズレベルとして出力し、ノイズレベル検出処理は終了する。
【００４９】
以上説明したように、本実施の形態におけるノイズレベル検出装置によれば、動き成分によりフレーム差分が生じている領域以外の領域に含まれる画素のフレーム差分を利用してノイズレベルを検出するため、動き成分による影響を排除して、精度良くノイズレベルを検出することができる。
【符号の説明】
【００５０】
１０、１０Ａ  ノイズレベル検出装置
１２   フレームメモリ
１４   減算器
１６   水平ＨＰＦ
１８   垂直ＨＰＦ
２０   バイラテラルフィルタ
２２   スイッチ
２４   ヒストグラム生成部
２６   ノイズレベル算出部
３０   コンピュータ
３２   ＣＰＵ
３４   ＲＯＭ
３６   ＲＡＭ
５２   差分算出部
５４   推定部
５６   ヒストグラム生成部
５８   ノイズレベル算出部
【図１】
2019118067.tif 000004
【図２】
2019118067.tif 000005
【図３】
2019118067.tif 000006
【図４】
2019118067.tif 000007
【図５】
2019118067.tif 000008
【図６】
2019118067.tif 000009
【図７】
2019118067.tif 000010
【図８】
2019118067.tif 000011
【図９】
2019118067.tif 000012
【図１０】
2019118067.tif 000013