(57)【特許請求の範囲】
【請求項１】
動き予測に従って過去の画像を参照することにより，入力画像に対して時間方向のフィルタ処理を施す動き補償付きテンポラルフィルタ処理装置であって，
フィルタ処理対象の入力画像と参照画像とを記憶する画像メモリと，
フィルタ処理対象の入力画像における各ブロックごとに，前記参照画像を所定の動き探索範囲内で探索して動き予測誤差を算出し，動きベクトルを検出する動き予測部と，
フィルタ処理対象のブロック内の画素の輝度平均値と，前記動き予測部で算出された動きベクトルが示す参照画像のブロック内の画素の輝度平均値との差が，所定の閾値以上であるか否かを判定するフィルタ処理判定部と，
前記動き予測部で算出された動きベクトルを入力し，フィルタ処理対象の入力画像に対し，前記画像メモリに格納された参照画像を動きベクトルに従って参照することにより動き補償付きテンポラルフィルタの処理を実行するフィルタ処理部と，
前記フィルタ処理判定部の判定結果が真である場合に，前記フィルタ処理部によるフィルタ処理を行わない画像をフィルタ後画像として出力し，前記フィルタ処理判定部の判定結果が偽である場合に，前記フィルタ処理部によるフィルタ処理を行った画像をフィルタ後画像として出力する切替え部とを備える
ことを特徴とする動き補償付きテンポラルフィルタ処理装置。
【請求項２】
動き予測に従って過去の画像を参照することにより，入力画像に対して時間方向のフィルタ処理を施す動き補償付きテンポラルフィルタ処理方法であって，
フィルタ処理対象の入力画像における各ブロックごとに，画像メモリに格納された参照画像を所定の動き探索範囲内で探索して動き予測誤差を算出し，動きベクトルを検出する動き予測ステップと，
フィルタ処理対象のブロック内の画素の輝度平均値を算出するステップと，
前記動き予測ステップで算出された動きベクトルが示す参照画像のブロック内の画素の輝度平均値を算出するステップと，
前記フィルタ処理対象のブロック内の画素の輝度平均値と，前記動き予測ステップで算出された動きベクトルが示す参照画像のブロック内の画素の輝度平均値との差が，所定の閾値以上であるか否かを判定するフィルタ処理判定ステップと，
前記フィルタ処理判定ステップの判定結果が偽である場合に，前記動き予測ステップで算出された動きベクトルを入力し，フィルタ処理対象の入力画像に対し，前記画像メモリに格納された参照画像を動きベクトルに従って参照することにより動き補償付きテンポラルフィルタの処理を実行してフィルタ後画像を出力し，前記フィルタ処理判定ステップの判定結果が真である場合に，フィルタ処理を行わない画像をフィルタ後画像として出力するステップとを有する
ことを特徴とする動き補償付きテンポラルフィルタ処理方法。
【請求項３】
請求項２記載の動き補償付きテンポラルフィルタ処理方法をコンピュータに実行させるための動き補償付きテンポラルフィルタ処理プログラム。
【請求項４】
請求項３記載の動き補償付きテンポラルフィルタ処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，入力画像に対する時間方向のフィルタ処理によりノイズを除去する動き補償付きテンポラルフィルタ処理装置，処理方法，処理プログラムおよびコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【０００２】
動画像の連続するフレーム（フィールドを含む。以下，同様）に時間方向のフィルタ処理を施すことによりノイズを除去することが行われている。このようなフィルタをテンポラルフィルタという。
【０００３】
さらに，効果的にフィルタ処理を行うために，時間的に前のフレームを参照画像として動き予測を行い，現フレームの画素と動きベクトルで示される参照画像の画素との間で，時間方向のフィルタ処理を行う動き補償付きテンポラルフィルタも用いられている。
【０００４】
図４は，動き補償付きテンポラルフィルタの利用例を示す図である。図４において，１００は動き補償付きテンポラルフィルタ処理部，２００は符号化器を表す。符号化器２００は，例えばＭＰＥＧ−２，ＭＰＥＧ−４，Ｈ．２６４等の符号化方式により動画像を符号化する装置である。動き補償付きテンポラルフィルタ処理部１００は，符号化器２００へ入力する前の画像信号に含まれるノイズを除去するためのものであり，入力画像に対する動きベクトルの検出による動き補償を行って，時間方向のフィルタ処理を行い，フィルタ後画像を符号化器２００へ送る。本発明は，このような動き補償付きテンポラルフィルタの改良に関するものである。
【０００５】
従来，以上のような動き補償付きテンポラルフィルタの例としては，例えば特許文献１に記載されている適応フィルタ装置がある。特許文献１の適応フィルタ装置では，４フィールド前後あるいは２フィールド前後の処理対象画像に対して，異なる２つの画像データから相関の強い方の動きベクトルに対応した参照画素と処理画素との間の差分値を求め，その差分値に応じて参照画素の処理画素に対するミクシング値を可変にすることにより，ノイズ除去を図っている。
【特許文献１】特開平１０−８４４９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載されているような従来の動き補償付きテンポラルフィルタでは，動き予測によって検出した動きベクトルのすべてに対してテンポラルフィルタ処理を行っている。しかし，入力画像において動きが大きい領域では，残像が残ってしまうことがある。このような動きが大きい領域では，動き補償付きテンポラルフィルタ処理を行うと，フィルタ処理を行わない場合よりもかえって主観画質が劣化してしまうことがある。
【０００７】
そこで本発明は，上記課題の解決を図り，動き補償付きテンポラルフィルタにおける残像の発生を抑止し，主観画質を向上させるフィルタ処理を実現することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は，上記課題を解決するため，フィルタ処理対象のブロックと，動き予測によって見つけられた参照画像中の動き補償対象ブロックのそれぞれの輝度平均値を算出し，それらの輝度平均値の差が，予め設定された所定の閾値以上であった場合に，動き補償付きテンポラルフィルタの処理をスキップし，そのブロックについてはフィルタ処理を行わないようにすることを特徴とする。
【０００９】
入力画像の動きの大きい領域では，動き探索範囲において動き予測誤差が最も小さいブロックでも，処理対象画像のブロックと参照画像のブロックとの間の輝度平均値に差が生じる傾向にある。そこで，本発明では，このような輝度平均値の差が大きいブロックに対しては，動き補償付きテンポラルフィルタの処理を行わないようにすることにより，残像の発生を抑止し，主観画質の向上を図る。
【発明の効果】
【００１０】
本発明によれば，動き補償付きテンポラルフィルタにおいて，動きが大きい領域についてはフィルタ処理をスキップするので，残像の発生が抑止され，主観画像品質が向上する。
【発明を実施するための最良の形態】
【００１１】
図１は，本発明の動き補償付きテンポラルフィルタ処理装置の構成例を示すブロック図である。この動き補償付きテンポラルフィルタ処理装置は，例えば図４に示す符号化器２００の前の動き補償付きテンポラルフィルタ処理部１００として用いられる。
【００１２】
図１（Ａ）は，フィルタ後の画素値を次のフレームのフィルタ処理の参照画像とするＩＩＲ（Infinite Inpulse Response ）型のテンポラルフィルタ構成の場合の例を示し，図１（Ｂ）は，フィルタ前の入力画像を次のフレームのフィルタ処理の参照画像とするＦＩＲ (Finite Inpulse Response)型のテンポラルフィルタ構成の場合の例を示している。どちらの場合でも本発明を実施することができる。
【００１３】
図１（Ａ）において，画像メモリ１０は，フィルタ処理対象となる画像を入力し，記憶する。入力画像は，フレーム単位の画像であってもフィールド単位の画像であってもどちらでもよい。ここではフレーム画像として説明する。画像メモリ１０には，１フレームまたは複数フレームの過去のフレーム画像についても保持される。
【００１４】
動き予測部１１は，フィルタ処理対象の画像についてブロック単位で，過去のフレーム画像を参照画像として動き予測を行う。ここでは，説明を簡単にするために，直前のフレーム画像だけを動き補償付きテンポラルフィルタの処理に用いるものとし，動き予測も直前のフレーム画像に対してだけ行うものとする。ブロックのサイズは任意であり，例えば４×４画素ないし８×８画素が適当である。
【００１５】
動き予測では，予め定められた探索範囲内で照合する参照画像におけるブロックの位置を動かしながら，参照画像とフィルタ処理対象画像とのブロック間の画素毎の差分絶対値の和または二乗誤差の和（これらを動き予測誤差という）を算出し，動き予測誤差が最小となるブロックの位置関係を，動きベクトルとして検出する。
【００１６】
フィルタ処理判定部１２では，動き予測部１１により動きベクトルを検出したならば，その動きベクトルが示す参照画像のブロック内の全画素の輝度値の平均値Ｙave-pst を算出する。また，フィルタ処理判定部１２は，動き予測部１１による動き予測と同時に，入力した原画像におけるフィルタ処理対象のブロック内の全画素の輝度値の平均値Ｙave-cur についても算出しておく。
【００１７】
次に，フィルタ処理判定部１２は，算出した原画像輝度平均値Ｙave-cur と参照画像輝度平均値Ｙave-pst との差が，予め定められた所定の閾値ＴＨ以上かどうか判定する。この輝度平均値の差が所定の閾値ＴＨ以上である場合，フィルタ処理判定部１２は，出力切替え部１４に対して，切替え信号“１”を出力し，それ以外の場合には切替え信号“０”を出力する。
【００１８】
フィルタ処理部１３は，動き予測部１１が検出した動きベクトルに従って，画像メモリ１０を参照し，動き補償付きテンポラルフィルタの処理を実行する。フィルタ処理部１３が行う動き補償付きテンポラルフィルタの処理は，従来行われている処理と同様であるので，ここでのその詳しい説明は省略する。フィルタ処理部１３によるフィルタ処理後の画像は，出力切替え部１４に出力される。
【００１９】
出力切替え部１４は，フィルタ処理判定部１２が出力する切替え信号が“０”の場合に，フィルタ処理部１３が出力するフィルタ後画像を最終的なフィルタ後画像として出力する。一方，フィルタ処理判定部１２が出力する切替え信号が“１”の場合には，フィルタ処理部１３が出力するフィルタ後画像ではなく，画像メモリ１０から読み出したフィルタ処理前の原画像をそのまま最終的なフィルタ後画像として出力する。なお，最終的なフィルタ後画像は，次のフレームの参照画像に反映させるために，画像メモリ１０に書き戻される。
【００２０】
この実施例では，フィルタ処理判定部１２が出力する切替え信号によって出力切替え部１４による出力の切替えを行っているが，出力切替え部１４を設けるのではなく，切替え信号をフィルタ処理部１３へ送り，フィルタ処理部１３内で，切替え信号が“０”の場合にはフィルタ処理を実行し，切替え信号が“１”の場合にはフィルタ処理を行わないように構成する実施も可能である。同じ結果が得られる。
【００２１】
図１（Ｂ）に示すＦＩＲ型のテンポラルフィルタ構成の場合，フィルタ処理部２３が用いる参照画像は，フィルタ処理が行われない画像である。そのため，フィルタ処理部２３による処理結果は，フィルタ後画像として出力されるが，画像メモリ２０に書き戻されることはない。それ以外の動き予測部２１，フィルタ処理判定部２２，出力切替え部２４などの構成および動作は，図１（Ａ）で説明したものと同様である。
【００２２】
図２は，本発明の実施の形態の処理フローチャートである。フィルタ処理対象画像の各ブロックごとに，以下のステップＳ１〜Ｓ８を実行する。ステップＳ１〜Ｓ４が動き予測部１１，２１の処理，ステップＳ５〜Ｓ７がフィルタ処理判定部１２，２２の処理，ステップＳ８がフィルタ処理部１３，２３の処理である。
【００２３】
ステップＳ１では，フィルタ処理対象となっている原画像ブロック内の全画素の輝度平均値Ｙave-cur を算出し，レジスタまたはメモリに記憶しておく。
【００２４】
ステップＳ２では，所定の動き探索範囲内で，参照画像とフィルタ処理対象画像のブロック間の動き予測誤差を計算し，動き探索を行う。ここでは，動き予測誤差として絶対値誤差和（ＳＡＤ：Sum of Absolute Difference）を算出するものとする。二乗誤差和を算出してもよい。なお，探索開始前に動き予測誤差最小値ＳＡＤmin の値を，最大値に初期化しておく。
【００２５】
ステップＳ３では，ステップＳ２で算出した動き予測誤差ＳＡＤとこれまでに記憶した動き予測誤差最小値ＳＡＤmin の大小を比較し，動き予測誤差ＳＡＤが小さい場合，ステップＳ４へ進み，そうでなければ，ステップＳ５へ進む。
【００２６】
ステップＳ４では，動き予測誤差ＳＡＤを，新たな動き予測誤差最小値ＳＡＤmin として記憶し，また，そのときの動きベクトルＭＶをレジスタまたはメモリに記憶する。
【００２７】
ステップＳ５では，所定の探索範囲内の探索が終了したかどうかを判定する。探索が終了していない場合には，参照画像における次の探索位置について同様にステップＳ２〜Ｓ４の処理を繰り返す。探索が終了したならば，次のステップＳ６へ移る。
【００２８】
ステップＳ６では，動き探索により得られた動きベクトルＭＶが指す参照画像ブロック内の全画素の輝度平均値Ｙave-pst を算出する。
【００２９】
ステップＳ７では，原画像ブロックの輝度平均値Ｙave-cur と参照画像ブロックの輝度平均値Ｙave-pst との差が，所定の閾値ＴＨより小さいかどうかを判定し，小さい場合には，ステップＳ８へ進み，小さくない場合には，ステップＳ８のフィルタ処理をスキップする。
【００３０】
ステップＳ８では，ステップＳ４で記憶した動きベクトルＭＶを用いて，動き補償付きテンポラルフィルタ処理を実行し，フィルタ後画像を出力する。なお，ステップＳ７の判定結果によりフィルタ処理を実行しなかったブロックについては，原画像ブロックをフィルタ後画像として出力する。
【００３１】
図３は，動き補償付きテンポラルフィルタ処理装置の詳細な構成例を示す図である。画像メモリ１０，フィルタ処理部１３，出力切替え部１４は，図１で説明したもの同じである。
【００３２】
原画像ブロック輝度平均値算出部１２１は，フィルタ処理対象の原画像ブロック内の画素の輝度平均値Ｙave-cur を算出する。また，参照画像ブロック輝度平均値算出部１２２は，動き予測部１１で算出された動きベクトルが示す参照画像のブロック内の画素の輝度平均値Ｙave-pst を算出する。減算器１２３は，原画像ブロック内の画素の輝度平均値Ｙave-cur と，参照画像のブロック内の画素の輝度平均値Ｙave-pst との差の値を比較部１２５へ出力する。
【００３３】
閾値ＴＨ記憶部１２４は，予め多くのサンプル画像を用いた視覚実験などにより定められた閾値ＴＨを記憶する。比較部１２５は，原画像ブロック輝度平均値Ｙave-cur と参照画像ブロック輝度平均値Ｙave-pst との差と，閾値ＴＨとの大小を比較し，差の値が閾値ＴＨ以上の場合には，出力切替え部１４に対して，切替え信号“１”を出力し，それ以外の場合には切替え信号“０”を出力する。
【００３４】
出力切替え部１４は，その切替え信号が“０”の場合に，フィルタ処理部１３が出力するフィルタ後画像を最終的なフィルタ後画像として出力し，切替え信号が“１”の場合には，フィルタ処理部１３が出力するフィルタ後画像ではなく，画像メモリ１０から読み出したフィルタ処理前の原画像をそのまま最終的なフィルタ後画像として出力する。
【００３５】
フィルタ処理部１３で実行するフィルタ処理の最も一般的な例としては，フィルタ対象画素と参照画素との平均値を取る方法がある。計算式を式（１）に示す。ここで，Ｙcur はフィルタ対象画素値，Ｙref はフィルタ参照画素値，Ｙ′はフィルタ処理後の画素値を示している。
【００３６】
Ｙ′＝（Ｙcur ＋Ｙref ）／２              …式（１）
また，フィルタ対象画素値などからフィルタ強度ａ（０≦ａ≦１）を決定し，フィルタ処理を行う場合もある。計算式を式（２）に示す。フィルタ強度ａは任意に設定できる。ａ＝０．５の場合，式（２）は式（１）と等価になる。
【００３７】
Ｙ′＝ａ×Ｙcur ＋（１−ａ）×Ｙref       …式（２）
［実験結果］
本発明による効果を検証するために，画像サイズが１９２０×１０８０画素の画像を用いて，本発明による動き補償付きテンポラルフィルタ処理方法を用いた場合と，本発明を用いない従来の動き補償付きテンポラルフィルタ処理方法を用いた場合とで，フィルタ後画像の視覚実験を行った。
【００３８】
動き補償ブロックサイズは，４×４画素とした。閾値ＴＨの値は，ＴＨ＝７とした。
【００３９】
従来方法を用いて，原画像のすべてのブロックについて動き補償付きテンポラルフィルタの処理を実行した場合，画像中の歩行者の像に残像が生じ，一部の主観画質が損なわれた。これに対し，本発明を用いて動き補償付きテンポラルフィルタの処理を行った場合に，従来技術のような残像は見られず，動きの小さい領域におけるノイズが除去される一方，動きの大きな領域では自然な画像が得られることが確認できた。
【００４０】
以上の動き補償付きテンポラルフィルタの処理は，コンピュータとソフトウェアプログラムとによっても実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも，ネットワークを通して提供することも可能である。
【図面の簡単な説明】
【００４１】
【図１】本発明の構成例を示すブロック図である。
【図２】本発明の実施の形態の処理フローチャートである。
【図３】本発明の実施の形態の詳細な構成例を示す図である。
【図４】動き補償付きテンポラルフィルタの利用例を示す図である。
【符号の説明】
【００４２】
１０，２０  画像メモリ
１１，２１  動き予測部
１２，２２  フィルタ処理判定部
１３，２３  フィルタ処理部
１４，２４  出力切替え部
【図１】
0004484910.tif 000002
【図２】
0004484910.tif 000003
【図３】
0004484910.tif 000004
【図４】
0004484910.tif 000005