(57)【要約】【課題】フレーム巡回型のノイズまたは歪の低減方式において、ノイズによって得られているリアルな階調感を損なうことなくノイズ及び歪を低減することができるようにする。【解決手段】入力された画像信号の各画素値は、ｎビットのデータで表現される階調を有する。ｍビットシフタ１２７により、画素値のデータがｍビットシフトされる。ｍビットシフタ１２７の処理を経てｎ＋ｍビット乗算器１２１に供給され、（１−Ｋ）が乗じられ、ｎ＋ｍビット加算器１２２に供給され、ｎ＋ｍビット乗算器１２３の処理を経た画素値のデータと加算される。ｎ＋ｍビット乗算器１２３は、ｎ＋ｍビットフレームメモリ１２６から出力される画素値のデータにＫを乗じる。ｎ＋ｍビット加算器１２２の処理を経たデータは、ｎ＋ｍビットフレームメモリ１２６に記憶されるとともに、ビット長変換部１２９に供給され、ｍビットの切り捨てを行う際に四捨五入などがなされる。【選択図】図４
2011259333.tif 000002
【特許請求の範囲】
【請求項１】
ｎビットのデータで表現される階調を有する画素値からなる画像信号の入力を受け付け、前記画像信号における画素値のデータを、ｍビットシフトさせてｎ＋ｍビットのデータとするｍビットシフト手段と、
前記入力された画像信号の１フレーム分の画像の各画素の画素値であって、前記ｎ＋ｍビットのデータとされた画素値を前記フレーム毎に累積的に加重平均する加重平均手段と、
前記累積的に加重平均された画素の画素値のデータを、１フレーム分記憶するメモリと、
前記累積的に加重平均された画素の画素値のデータを、ｎビットのデータに変換して出力するビット長変換手段と
を備える画像処理装置。
【請求項２】
前記累積加重平均手段は、
前記入力された画像信号の中の処理対象画素の動きベクトルに基づいて１フレーム前の画像において前記処理対象画素に対応する画素を特定し、
前記処理対象画素の画素値と、前記１フレーム前の画像において前記処理対象画素に対応する画素の画素値とを、所定の係数に基づいて加重平均する
請求項１に記載の画像処理装置
【請求項３】
前記累積的に加重平均された前記処理対象画素の画素値と、前記１フレーム前の画像において前記処理対象画素に対応する画素の画素値との差分を演算する差分演算手段と、
前記演算された差分の値が所定値未満の値であるか否かを判定し、前記差分の値が所定値未満の値である場合、前記入力された画像信号の中の処理対象画素の画素値のデータを出力し、前記差分の値が所定値未満の値でない場合、前記ビット長変換手段から出力されるデータを出力する出力切り替え手段とをさらに備える
請求項２に記載の画像処理装置。
【請求項４】
前記所定値は２のｍ乗とされる
請求項３に記載の画像処理装置。
【請求項５】
前記ｍの値が２以上とされる
請求項１に記載の画像処理装置。
【請求項６】
ｍビットシフト手段が、ｎビットのデータで表現される階調を有する画素値からなる画像信号の入力を受け付け、前記画像信号における画素値のデータを、ｍビットシフトさせてｎ＋ｍビットのデータとし、
加重平均手段が、前記入力された画像信号の１フレーム分の画像の各画素の画素値であって、前記ｎ＋ｍビットのデータとされた画素値を前記フレーム毎に累積的に加重平均し、
前記累積的に加重平均された画素の画素値のデータを、メモリに１フレーム分記憶し、
ビット長変換手段が、前記累積的に加重平均された画素の画素値のデータを、ｎビットのデータに変換して出力するステップ
を含む画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法に関し、特に、フレーム巡回型のノイズまたは歪の低減方式において、ノイズによって得られているリアルな階調感を損なうことなくノイズ及び歪を低減することができるようにする画像処理装置および方法に関する。
【背景技術】
【０００２】
動画の映像信号は、フレーム周期で類似の画像情報が繰り返される信号であり、フレーム間の相関が非常に強い。一方、映像信号は符号化歪やノイズ成分とは相関がないので、映像信号をフレーム単位で時間平均すると、信号成分はほとんど変化せず、歪やノイズ成分のみが小さくなるから、歪やノイズを低減することができる。このような映像信号の特性を利用してノイズを低減する装置として、動き検出フレーム巡回型ノイズ低減装置が提案されている（例えば、特許文献１参照）。
【０００３】
従来のノイズ低減装置は、動きベクトルを検出し、動きベクトルに基づいて動き成分を求め、画像の動き成分に応じて巡回係数を変え、巡回係数に基づいて現フレームの画素と前フレームの対応画素を加重平均して出力映像信号を生成する構成とされている。従って、動き補償した対応画素を累積的に加重平均することになり、残像の発生を防止しながらノイズを低減できるようになされている。
【０００４】
【特許文献１】特開２００４−８８２３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のフレーム巡回型ノイズ低減装置においては、フレームメモリのビット数によって視覚的に見える階調特性（階調感）が決まってしまい、ノイズによって得られているリアルな階調感が失われてしまうという問題がある。
【０００６】
ノイズは必ずしも視覚的劣化をもたらすだけのものではなく、人間の視覚特性の一つである視覚の積分効果によって、ディスプレイ又は撮像機又は伝送路の階調情報以上の階調表現能力を実現するものでもある。
【０００７】
例えば、視覚の積分効果を利用して、疑似的にディスプレイの階調表現能力を向上させた技術としてＦＲＣ（Frame Rate Control）と呼ばれている技術もあり既に実用化されている。また、ノイズを含んだ動画像を停止させたりすると、階調感が失われる現象があるが、この現象によっても人間の視覚特性の一つである視覚の積分効果とノイズにより階調感が増大していることが説明できる。
【０００８】
ところが、従来からあるノイズ低減装置を用いてノイズの低減を行った場合、フレームメモリのビット数が出力のビット数と同じであれば、積分値が出力のビット数で丸められてしまうために、所定の階調（画素値のレベル）を中心とした値に丸まってしまう。そのため、人の視覚特性による積分効果があってもリアルな階調特性は失われてしまうことになる。
【０００９】
本発明はこのような状況に鑑みてなされたものであり、フレーム巡回型のノイズまたは歪の低減方式において、ノイズによって得られているリアルな階調感を損なうことなくノイズ及び歪を低減することができるようにするものである。
【課題を解決するための手段】
【００１０】
本発明の一側面は、ｎビットのデータで表現される階調を有する画素値からなる画像信号の入力を受け付け、前記画像信号における画素値のデータを、ｍビットシフトさせてｎ＋ｍビットのデータとするｍビットシフト手段と、前記入力された画像信号の１フレーム分の画像の各画素の画素値であって、前記ｎ＋ｍビットのデータとされた画素値を前記フレーム毎に累積的に加重平均する加重平均手段と、前記累積的に加重平均された画素の画素値のデータを、１フレーム分記憶するメモリと、前記累積的に加重平均された画素の画素値のデータを、ｎビットのデータに変換して出力するビット長変換手段とを備える画像処理装置である。
【００１１】
前記累積加重平均手段は、前記入力された画像信号の中の処理対象画素の動きベクトルに基づいて１フレーム前の画像において前記処理対象画素に対応する画素を特定し、前記処理対象画素の画素値と、前記１フレーム前の画像において前記処理対象画素に対応する画素の画素値とを、所定の係数に基づいて加重平均するようにすることができる。
【００１２】
前記累積的に加重平均された前記処理対象画素の画素値と、前記１フレーム前の画像において前記処理対象画素に対応する画素の画素値との差分を演算する差分演算手段と、前記演算された差分の値が２のｍ乗未満の値であるか否かを判定し、前記差分の値が２のｍ乗未満の値である場合、前記入力された画像信号の中の処理対象画素の画素値のデータを出力し、前記差分の値が２のｍ乗未満の値でない場合、前記ビット長変換手段から出力されるデータを出力する出力切り替え手段とをさらに備えるようにすることができる。
【００１３】
前記ｍの値が２以上とされるようにすることができる。
【００１４】
本発明の一側面は、ｍビットシフト手段が、ｎビットのデータで表現される階調を有する画素値からなる画像信号の入力を受け付け、前記画像信号における画素値のデータを、ｍビットシフトさせてｎ＋ｍビットのデータとし、加重平均手段が、前記入力された画像信号の１フレーム分の画像の各画素の画素値であって、前記ｎ＋ｍビットのデータとされた画素値を前記フレーム毎に累積的に加重平均し、前記累積的に加重平均された画素の画素値のデータを、メモリに１フレーム分記憶し、ビット長変換手段が、前記累積的に加重平均された画素の画素値のデータを、ｎビットのデータに変換して出力するステップを含む画像処理方法である。
【００１５】
本発明の一側面においては、ｎビットのデータで表現される階調を有する画素値からなる画像信号の入力が受け付けられ、前記画像信号における画素値のデータが、ｍビットシフトさせられてｎ＋ｍビットのデータとされ、前記入力された画像信号の１フレーム分の画像の各画素の画素値であって、前記ｎ＋ｍビットのデータとされた画素値が前記フレーム毎に累積的に加重平均され、前記累積的に加重平均された画素の画素値のデータが、１フレーム分記憶され、前記累積的に加重平均された画素の画素値のデータが、ｎビットのデータに変換されて出力される。
【発明の効果】
【００１６】
本発明によれば、フレーム巡回型のノイズまたは歪の低減方式において、ノイズによって得られているリアルな階調感を損なうことなくノイズ及び歪を低減することができる。
【図面の簡単な説明】
【００１７】
【図１】従来のＩＩＲフィルタの構成例を示すブロック図である。
【図２】ある１つの画素の時間の経過に伴う画素値のレベルの変化を示す図である。
【図３】図１のＩＩＲフィルタによりノイズ低減処理を施した場合の画素値のレベルの変化を示す図である。
【図４】本発明の一実施の形態に係るＩＩＲフィルタの構成例を示すブロック図である。
【図５】図４のＩＩＲフィルタによりノイズ低減処理を施した場合の画素値のレベルの変化を示す図である。
【図６】ｎ＋ｍビットフレームメモリの内部での画素値のレベルの変化を示す図である。
【図７】図４のＩＩＲフィルタによるノイズ低減処理の例を説明するフローチャートである。
【図８】本発明の一実施の形態に係るＩＩＲフィルタの別の構成例を示すブロック図である。
【図９】図８のＩＩＲフィルタによりノイズ低減処理を施した場合の画素値のレベルの変化を示す図である。
【図１０】ｎ＋ｍビットフレームメモリの内部での画素値のレベルの変化を示す図である。
【図１１】図８のＩＩＲフィルタによるノイズ低減処理の例を説明するフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照して、本発明の実施の形態について説明する。
【００１９】
最初に、従来のフレーム巡回型ノイズ低減装置について説明する。例えば、動画の映像信号（画像信号）は、フレーム周期で類似の画像情報が繰り返される信号であり、フレーム間の相関が非常に強い。一方、映像信号は符号化歪やノイズ成分とは相関がないので、画像信号をフレーム単位で時間平均すると、信号成分はほとんど変化せず、歪やノイズ成分のみが小さくなるから、歪やノイズを低減することができる。このような画像信号の特性を利用して歪やノイズを低減する装置が、フレーム巡回型ノイズ低減装置であり、ＩＩＲ（Infinite impulse response）フィルタとも称される。
【００２０】
図１は、従来のＩＩＲフィルタの構成例を示すブロック図である。同図において、ＩＩＲフィルタ１０は、乗算器２１、加算器２２、乗算器２３、巡回係数制御部２４、動きベクトル検出部２５、フレームメモリ２６を有する構成とされている。
【００２１】
このＩＩＲフィルタ１０は、入力された画像信号の各画素の画素値を累積的に加重平均することで、ノイズを低減するようになされている。
【００２２】
なお、入力された画像信号の各画素値（例えば、輝度値）は、それぞれｎビットのデータで表現される階調を有するものとされる。例えば、ｎ＝８（ビット）であれば、２の８乗（＝２５６）段階の階調を表現できる。例えば、ｎ＝１０（ビット）であれば、２の１０乗（＝１０２４）段階の階調を表現できる。図中に「（ｎビット）」と表記されているものは、ｎビットの階調の画素値のデータを処理することを意味している。
【００２３】
デジタル信号として、ＩＩＲフィルタ１０に入力された画像信号は、画素毎のデータとして乗算器２１に供給され、（１−Ｋ）により表わされる係数が乗じられるようになされている。ここで、Ｋは、巡回係数とされ、０≦Ｋ＜１とされる。巡回係数Ｋの値は、巡回係数制御部２４により、後述するように決定される。
【００２４】
乗算器２１の処理を経た画素値のデータは、加算器２２に供給され、乗算器２３の処理を経た画素値のデータと加算される。
【００２５】
乗算器２３は、フレームメモリ２６から出力される画素値のデータに巡回係数Ｋを乗じる演算を行うようになされている。
【００２６】
フレームメモリ２６には、１フレーム前の画像信号に対して乗算器２１と加算器２２の処理を施して得られた各画素値のデータが記憶されている。すなわち、フレームメモリ２６には、１フレーム前のＩＩＲフィルタ１０の出力データが記憶されているのである。
【００２７】
フレームメモリ２６は、動きベクトル検出部２５により検出された動きベクトルにより特定される座標の画素の画素値のデータを読み出して乗算器２３に供給するようになされている。
【００２８】
動きベクトル検出部２５は、例えば、入力された１フレーム分の画像信号における処理対象の画素とその周辺の複数の画素からなるブロックと、フレームメモリ２６に記憶されている１フレーム前の画像信号における複数の画素からなるブロックとの差分絶対値和を演算する。すなわち、例えば、いわゆるブロックマッチング処理が行われるようになされている。
【００２９】
ブロックマッチング処理では、注目画素（処理対象の画素）を含むブロックと、１フレーム前の画像における複数の画素からなる複数のブロックのそれぞれとの差分絶対値和が演算され、最も小さい差分絶対値和が得られたブロックが最も類似度の高いブロックとされる。例えば、１フレーム前の画像の中で注目画素と同一の座標位置となる画素を中心とした所定の探索範囲が設定され、その探索範囲内に位置する画素を用いて、注目画素のブロックと同一の画素数からなるブロックが複数抽出される。
【００３０】
動きベクトル検出部２５は、例えば、ブロックマッチング処理により処理対象の画素のブロックと最も類似度の高いブロックを特定することにより、処理対象の画素の動きベクトルを特定する。このように動きベクトルが特定されることにより、現在乗算器２１が処理している画素（処理対象の画素）に対応する１フレーム前の画素の座標が特定される。
【００３１】
フレームメモリ２６は、このようにして、処理対象の画素に対応する１フレーム前の画素の画素値のデータを読み出して乗算器２３に供給する。
【００３２】
そして、加算器２２は、上述したように、処理対象の画素の画素値のデータに（１−Ｋ）を乗じた値と、１フレーム前の画素の画素値のデータにＫを乗じた値を加算する。これにより、処理対象の画素の画素値が、１フレーム前の対応する画素の画素値と、巡回係数Ｋに基づいて加重平均されることになる。
【００３３】
巡回係数制御部２４は、動きベクトルの精度に基づいて巡回係数Ｋを決定するようになされている。動きベクトル検出部２５は、ブロックマッチング処理におけるブロックの最小差分絶対値和を残差成分として出力するようになされており、残差成分が小さいほど、動きベクトルの精度が高いと言える。
【００３４】
動きベクトルの精度が高い場合（残差成分が小さい場合）、１フレーム前の対応する画素を正確に特定できていると考えられるので、巡回係数制御部２４は、巡回係数Ｋの値を大きくする。これにより、１フレーム前の対応する画素の画素値の重みが増して加重平均されることになる。
【００３５】
動きベクトルの精度が低い場合（残差成分が大きい場合）、１フレーム前の対応する画素を正確に特定できていない可能性があるので、巡回係数制御部２４は、巡回係数Ｋの値を小さくする。これにより、処理対象の画素の画素値の重みが増して加重平均されることになる。
【００３６】
このように、ＩＩＲフィルタによるノイズ低減処理においては、入力された画像信号の各画素の画素値が累積的に加重平均されていくのである。つまり、処理対象の画素の画像のフレームより、１フレーム前の画像の画素の画素値を用いて、処理対象の画素の画素値が加重平均され、その加重平均された画素の画素値がフレームメモリ２６に記憶される。そして、次のフレームの画像信号が入力されたとき、そのフレームの処理対象の画素に対応する画素の画素値としてフレームメモリ２６に記憶された画素値が読み出される。このように、フレーム毎に画素値が累積的に加重平均されるのである。
【００３７】
そして、加算器２２の処理を経たデータが、フレームメモリ２６に記憶されるとともに、ノイズ低減処理後の画像信号として出力される。
【００３８】
なお、この例では、動きベクトル検出部２５により動きベクトルが特定されることにより動き補償が行われて、各画素の画素値が累積的に加重平均される例について説明したが、動き補償は行われないようにしてもよい。すなわち、画像の動きに係らず、処理対象画素の画素と同じ座標の画素が、常に、１フレーム前の対応する画素として特定されるようにしてもよい。
【００３９】
このようなＩＩＲフィルタの処理により、入力された画像信号の各画素の画素値が累積的に加重平均された場合、時間の経過に伴う画素値の変化が平滑化されることになる。図２は、例えば、ディスプレイに表示される画像の中で所定のオブジェクトの画像を構成する、ある１つの画素の時間の経過に伴う画素値のレベルの変化の例を示す図である。なお、画像に動きがある場合、この画素の座標位置が時間の経過に伴って変化することになる。
【００４０】
同図においては、縦軸が画素値のレベル、横軸が時間とされ、時間の経過に伴う画素値のレベルの変化が実線６１により示されている。また、この例では、便宜上、画素値のレベルが０乃至４の５段階の階調により表現されている。すなわち、同図の画素値は、レベル０、１、２、３、４、５のいずれかのレベルに変化し得るものであり、レベル２を中心として上下に変化している。
【００４１】
図３は、図２に示される画素を処理対象の画素として、図１に示されるＩＩＲフィルタ１０によりノイズ低減処理を施した場合の、時間の経過に伴う画素値のレベルの変化の例を示す図である。同図も図２と同様に、縦軸が画素値のレベル、横軸が時間とされ、時間の経過に伴う画素値のレベルの変化が実線７１により示され、便宜上、画素値のレベルが０乃至５の６段階の階調により表現されている。
【００４２】
図３においては、ノイズ低減処理が施されたことにより、時間の経過に伴う画素値の変化が平滑化されている。すなわち、この例では、ノイズ低減処理が施された後の画素値のレベルは、あまり変化せず、ほぼ一定のレベル（レベル２またはレベル３）とされている。
【００４３】
このように、ＩＩＲフィルタ１０によるノイズ低減処理を施すことにより、残像の発生を防止しながらノイズを低減できるものの、ノイズによって得られているリアルな階調感が失われてしまうという問題がある。
【００４４】
ノイズは必ずしも視覚的劣化をもたらすだけのものではなく、人間の視覚特性の一つである視覚の積分効果によって、実際にディスプレイ等が有する階調以上の階調表現を実現できる場合がある。
【００４５】
例えば、図２に示される画素値の変化を平均すると、図中の点線６２で示されるレベル（レベル２.５４）になる。図２の横軸で示された時間は、実際には微小なもの（例えば、１／３秒）であるため、人間の目には、この画素は、あたかもレベル２.５４の画素値を有するように見えるのである。そうすると、実際にディスプレイ等が有する階調であるレベル０乃至レベル４の５段階の階調では表現できないはずのレベル２.５４の画素値を有する画素が表示されているように感じられる。
【００４６】
このように、本来ノイズである画素値の細かい変化が生じたことにより、いわば人間の目の錯覚によって実際にディスプレイ等が有する階調以上の階調表現がなされることを視覚の積分効果と称する。
【００４７】
しかしながら、従来のＩＩＲフィルタ１０によるノイズ低減処理が施された場合、図３に示されるように、画素値のレベルは、時間の経過に伴ってほとんど変化せず、レベル２またはレベル３とされてしまう。例えば、図３に示される画素値の変化を平均しても、同図の点線７２で示されるようにほぼレベル２のままであるから、実際にディスプレイ等が有する階調以上の階調表現がなされることはない。
【００４８】
つまり、従来のＩＩＲフィルタ１０によるノイズ低減処理が施された場合、視覚の積分効果が失われ、その結果、ディスプレイを観察するユーザにとっては、階調感が損なわれてかえって画質が劣化したように感じられる場合がある。
【００４９】
そこで本発明では、ノイズ低減処理が施された後も、階調感が損なわれないようにする。
【００５０】
図４は、本発明の一実施の形態に係るＩＩＲフィルタの構成例を示すブロック図である。
【００５１】
同図において、ＩＩＲフィルタ１００は、ｎ＋ｍビット乗算器１２１、ｎ＋ｍビット加算器１２２、ｎ＋ｍビット乗算器１２３、巡回係数制御部１２４、動きベクトル検出部１２５、ｎ＋ｍビットフレームメモリ１２６を有する構成とされている。さらに、ＩＩＲフィルタ１００は、ｍビットシフタ１２７、ｍビットシフタ１２８、およびビット長変換部１２９を有する構成とされている。
【００５２】
ｎ＋ｍビット乗算器１２１、ｎ＋ｍビット加算器１２２、およびｎ＋ｍビット乗算器１２３は、それぞれ図１の乗算器２１、加算器２２、および乗算器２３と比較して、ｍビット多い階調の画素値のデータを処理できるようになされている。例えば、ｎの値が８で、ｍの値が２である場合、図１のＩＩＲフィルタ１０では１つの画素の画素値を８ビットのデータとして処理するのに対し、図４のＩＩＲフィルタ１００では１つの画素の画素値を１０ビットのデータとして処理する。
【００５３】
しかし、図４のＩＩＲフィルタ１００においても、入力された画像信号の各画素値は、図１の場合と同様にそれぞれｎビットのデータで表現される階調を有するものとされる。このため、ＩＩＲフィルタ１００に入力された画像信号は、ｍビットシフタ１２７により、画素値のデータがｍビットシフトされるようになされている。ｍビットシフタ１２７は、画素値のデータにｍビットの「０」を挿入することにより画像信号の各画素値のデータをｎ＋ｍビットとする。これにより、例えば、８ビットのデータで表現される階調を有する画像信号が入力され、ｍビットシフタ１２７の処理を経た後、１０ビットのデータで表現される階調を有する画像信号として処理されることになる。
【００５４】
なお、後述するように、ビット長変換部１２９がｍビットの切り捨てを行って、ｎビットのデータで表現される階調を有する画像信号に変換する際に四捨五入などの処理を行うので、ｍの値は２以上とすることが望ましい。
【００５５】
また、ｎ＋ｍビットフレームメモリ１２６も、図１のフレームメモリ２６と比較して、ｍビット多い階調の画素値のデータを記憶できるようになされている。一方、動きベクトル検出部１２５は、図１の動きベクトル検出部２５と同様に構成され、ｎビットの画素値のデータを処理するようになされている。
【００５６】
このため、ｍビットシフタ１２８により、ｎ＋ｍビットフレームメモリ１２６から読み出されて動きベクトル検出部１２５に供給される画素値のデータが、ｎビットに変換されるようになされている。ｍビットシフタ１２８は、例えば、画素値のデータの下位ｍビットを削除することにより画像信号の各画素値のデータをｎビットとする。
【００５７】
デジタル信号として、ＩＩＲフィルタ１００に入力された画像信号は、画素毎のデータとしてｍビットシフタ１２７の処理を経てｎ＋ｍビット乗算器１２１に供給され、（１−Ｋ）により表わされる係数が乗じられるようになされている。ここで、Ｋは、巡回係数とされ、０≦Ｋ＜１とされる。巡回係数Ｋの値は、巡回係数制御部１２４により、後述するように決定される。
【００５８】
ｎ＋ｍビット乗算器１２１の処理を経た画素値のデータは、ｎ＋ｍビット加算器１２２に供給され、ｎ＋ｍビット乗算器１２３の処理を経た画素値のデータと加算される。
【００５９】
ｎ＋ｍビット乗算器１２３は、ｎ＋ｍビットフレームメモリ１２６から出力される画素値のデータに巡回係数Ｋを乗じる演算を行うようになされている。
【００６０】
ｎ＋ｍビットフレームメモリ１２６には、１フレーム前の画像信号に対してｎ＋ｍビット乗算器１２１とｎ＋ｍビット加算器１２２の処理を施して得られた各画素値のデータが記憶されている。すなわち、ｎ＋ｍビットフレームメモリ１２６には、１フレーム前のＩＩＲフィルタ１００の出力データが記憶されているのである。
【００６１】
ｎ＋ｍビットフレームメモリ１２６は、動きベクトル検出部１２５により検出された動きベクトルにより特定される座標の画素の画素値のデータを読み出してｎ＋ｍビット乗算器１２３に供給するようになされている。
【００６２】
動きベクトル検出部１２５は、例えば、入力された１フレーム分の画像信号における処理対象の画素とその周辺の複数の画素からなるブロックと、ｎ＋ｍビットフレームメモリ１２６に記憶されている１フレーム前の画像信号における複数の画素からなるブロックとの差分絶対値和を演算する。すなわち、例えば、いわゆるブロックマッチング処理が行われるようになされている。なお、上述したように、動きベクトル検出部１２５は、ｍビットシフタ１２８の処理を経たデータを処理するようになされている。
【００６３】
ブロックマッチング処理では、注目画素（処理対象の画素）を含むブロックと、１フレーム前の画像における複数の画素からなる複数のブロックのそれぞれとの差分絶対値和が演算され、最も小さい差分絶対値和が得られたブロックが最も類似度の高いブロックとされる。例えば、１フレーム前の画像の中で注目画素と同一の座標位置となる画素を中心とした所定の探索範囲が設定され、その探索範囲内に位置する画素を用いて、注目画素のブロックと同一の画素数からなるブロックが複数抽出される。
【００６４】
動きベクトル検出部１２５は、例えば、ブロックマッチング処理により処理対象の画素のブロックと最も類似度の高いブロックを特定することにより、処理対象の画素の動きベクトルを特定する。このように動きベクトルが特定されることにより、現在ｎ＋ｍビット乗算器１２１が処理している画素（処理対象の画素）に対応する１フレーム前の画素の座標が特定される。
【００６５】
ｎ＋ｍビットフレームメモリ１２６は、このようにして、処理対象の画素に対応する１フレーム前の画素の画素値のデータを読み出してｎ＋ｍビット乗算器１２３に供給する。
【００６６】
そして、ｎ＋ｍビット加算器１２２は、上述したように、処理対象の画素の画素値のデータに（１−Ｋ）を乗じた値と、１フレーム前の画素の画素値のデータにＫを乗じた値を加算する。これにより、処理対象の画素の画素値が、１フレーム前の対応する画素の画素値と、巡回係数Ｋに基づいて加重平均されることになる。
【００６７】
巡回係数制御部１２４は、動きベクトルの精度に基づいて巡回係数Ｋを決定するようになされている。動きベクトル検出部１２５は、ブロックマッチング処理におけるブロックの最小差分絶対値和を残差成分として出力するようになされており、残差成分が小さいほど、動きベクトルの精度が高いと言える。
【００６８】
動きベクトルの精度が高い場合（残差成分が小さい場合）、１フレーム前の対応する画素を正確に特定できていると考えられるので、巡回係数制御部１２４は、巡回係数Ｋの値を大きくする。これにより、１フレーム前の対応する画素の画素値の重みが増して加重平均されることになる。
【００６９】
動きベクトルの精度が低い場合（残差成分が大きい場合）、１フレーム前の対応する画素を正確に特定できていない可能性があるので、巡回係数制御部２４は、巡回係数Ｋの値を小さくする。これにより、処理対象画素の画素値の重みが増して加重平均されることになる。
【００７０】
このように、ＩＩＲフィルタ１００によるノイズ低減処理においては、入力された画像信号の各画素の画素値が累積的に加重平均されていくのである。つまり、処理対象の画素の画像のフレームより、１フレーム前の画像の画素の画素値を用いて、処理対象の画素の画素値が加重平均され、その加重平均された画素の画素値がｎ＋ｍビットフレームメモリ１２６に記憶される。そして、次のフレームの画像信号が入力されたとき、そのフレームの処理対象の画素に対応する画素の画素値としてｎ＋ｍビットフレームメモリ１２６に記憶された画素値が読み出される。このように、フレーム毎に画素値が累積的に加重平均されるのである。
【００７１】
そして、ｎ＋ｍビット加算器１２２の処理を経たデータが、ｎ＋ｍビットフレームメモリ１２６に記憶されるとともに、ビット長変換部１２９に供給される。
【００７２】
ｎ＋ｍビット加算器１２２の処理を経たデータは、ビット長変換部１２９の処理を経て出力されるようになされている。ビット長変換部１２９は、画素値のデータをｍビットだけ切り捨て、ｎビットのデータに変換する。ビット長変換部１２９は、ｍビットの切り捨てを行う際に四捨五入などの処理を行うようになされている。
【００７３】
このように、ビット長変換部１２９は、ｍビットの切り捨てを行う際に四捨五入などの処理を行うので、ｍの値は２以上とすることが望ましい。仮にｍの値が１であるとすると、ＩＩＲフィルタ１００から出力される画像信号は、従来のＩＩＲフィルタ１０から出力される画像信号とほぼ同様になってしまうからである。
【００７４】
ビット長変換部１２９によってビット長が変換されるので、図４のＩＩＲフィルタ１００から出力される画像信号の各画素値は、図１の場合と同様にそれぞれｎビットのデータで表現される階調を有するものとされる。
【００７５】
このようにＩＩＲフィルタ１００によれば、ノイズ低減処理を施すことにより、残像の発生を防止しながらノイズを低減でき、かつノイズによって得られているリアルな階調感が失われないようにすることができる。
【００７６】
なお、この例では、動きベクトル検出部１２５により動きベクトルが特定されることにより動き補償が行われて、各画素の画素値が累積的に加重平均される例について説明したが、動き補償は行われないようにしてもよい。すなわち、画像の動きに係らず、処理対象画素の画素と同じ座標の画素が、常に、１フレーム前の対応する画素として特定されるようにしてもよい。
【００７７】
図５は、図２に示される画素を処理対象の画素として、図４に示されるＩＩＲフィルタ１００によりノイズ低減処理を施した場合の、時間の経過に伴う画素値のレベルの変化の例を示す図である。同図も図２と同様に、縦軸が画素値のレベル、横軸が時間とされ、時間の経過に伴う画素値のレベルの変化が実線１５１により示され、便宜上、画素値のレベルが０乃至５の６段階の階調により表現されている。
【００７８】
図５においては、図３の場合と異なり、ノイズ低減処理が施されたことにより、時間の経過に伴う画素値の変化が平滑化されているものの、画素値のレベルが適当に変化している。この例では、レベル２を中心とし、レベル３、またはレベル４となるように画素値のレベルが変化している。
【００７９】
図６は、図２に示される画素を処理対象の画素として、図４に示されるＩＩＲフィルタ１００によりノイズ低減処理を施す場合、ｎ＋ｍビットフレームメモリ１２６の内部での画素値のレベルの変化を示す図である。同図も、縦軸が画素値のレベル、横軸が時間とされ、時間の経過に伴う画素値のレベルの変化が実線１６１により示されている。
【００８０】
実線１６１は、本来、ｎ＋ｍビットのデータで表現される階調を有する画素値のレベルの変化を示すものなので、レベル２乃至レベル４の間の整数以下のレベルに変化している。このような、実線１６１で表わされる画素値のデータがビット長変換部１２９の処理を経て出力されることにより、図５の実線１５１で示されるような画素値のデータとなって出力されるのである。
【００８１】
例えば、図５に示される画素値の変化を平均すると、同図の点線１５２で示されるようにレベル２.４５となるから、実際にディスプレイ等が有する階調以上の階調表現がなされることになる。
【００８２】
このように、本発明によれば、ノイズによって得られているリアルな階調特性（階調感）を損なうことなくノイズ及び歪を低減することができる。
【００８３】
次に、図７のフローチャートを参照して、図４のＩＩＲフィルタ１００によるノイズ低減処理の例について説明する。
【００８４】
ステップＳ２１において、ｍビットシフタ１２７は、ＩＩＲフィルタ１００に入力された画像信号の画素値のデータをｍビットシフトする。
【００８５】
ＩＩＲフィルタ１００に、入力された画像信号の各画素値は、それぞれｎビットのデータで表現される階調を有するものとされる。このため、ＩＩＲフィルタ１００に入力された画像信号は、ｍビットシフタ１２７により、画素値のデータがｍビットシフトされるようになされている。このとき、ｍビットシフタ１２７は、画素値のデータにｍビットの「０」を挿入することにより画像信号の各画素値のデータをｎ＋ｍビットとする。これにより、例えば、８ビットのデータで表現される階調を有する画像信号が入力され、ｍビットシフタ１２７の処理を経た後、１０ビットのデータで表現される階調を有する画像信号として処理されることになる。
【００８６】
ステップＳ２２において、入力された画像信号における処理対象の画素が特定される。
【００８７】
ステップＳ２３において、動きベクトル検出部１２５は、ステップＳ２２で特定された処理対象の画素について動きベクトルを特定する。
【００８８】
このとき、動きベクトル検出部１２５は、例えば、入力された１フレーム分の画像信号における処理対象の画素とその周辺の複数の画素からなるブロックと、ｎ＋ｍビットフレームメモリ１２６に記憶されている１フレーム前の画像信号における複数の画素からなるブロックとの差分絶対値和を演算する。例えば、いわゆるブロックマッチング処理が行われる。なお、動きベクトル検出部１２５は、ｍビットシフタ１２８の処理を経たデータを処理するようになされている。
【００８９】
ステップＳ２４において、巡回係数制御部１２４は、ステップＳ２３の処理により得られる残差成分に基づいて巡回係数Ｋを決定する。なお、ステップＳ２３の処理で、動きベクトル検出部１２５は、ブロックマッチング処理におけるブロックの最小差分絶対値和を残差成分として出力するようになされている。
【００９０】
ステップＳ２５において、画素値の加重平均が行われる。
【００９１】
このとき、ｎ＋ｍビット乗算器１２１は、ステップＳ２１の処理でｍビットシフトされた画素値のデータに、ステップＳ２４の処理で決定された巡回係数に係る係数であって、（１−Ｋ）により表わされる係数を乗じる。また、ｎ＋ｍビット乗算器１２３は、ｎ＋ｍビットフレームメモリ１２６から出力される画素値のデータに、ステップＳ２４の処理で決定された巡回係数Ｋを乗じる演算を行う。そして、ｎ＋ｍビット加算器１２２が、ｎ＋ｍビット乗算器１２１の処理を経た画素値のデータと、ｎ＋ｍビット乗算器１２３の処理を経た画素値のデータとを加算する。
【００９２】
ステップＳ２６において、ステップＳ２５の処理で加重平均された画素値のデータ、すなわち、ｎ＋ｍビット加算器１２２から出力されたデータが、ｎ＋ｍビットフレームメモリ１２６に記憶される。
【００９３】
ステップＳ２７において、ビット長変換部１２９は、画素値のデータをｎビットのデータに変換する。このとき、ビット長変換部１２９は、例えば、画素値のデータをｍビットだけ切り捨て、切り捨てを行う際に四捨五入などの処理を行うようになされている。
【００９４】
ステップＳ２８において、ビット長変換部１２９は、ステップＳ２７の処理により変換された画素値のデータを出力する。従って、ＩＩＲフィルタ１００から出力される画像信号の各画素値は、それぞれｎビットのデータで表現される階調を有するものとされる。
【００９５】
ステップＳ２９において、処理対象とするべき次の画素があるか否かが判定される。ステップＳ２９において、次の画素があると判定された場合、処理は、ステップＳ２１に戻り、それ以降の処理が繰り返し実行される。
【００９６】
ステップＳ２９において、次の画素がないと判定された場合、処理は終了する。
【００９７】
このようにして、ＩＩＲフィルタ１００によるノイズ低減処理が実行される。
【００９８】
ところで、図４を参照して上述した構成においては、ＩＩＲフィルタ１００に入力された画像信号の全画素についてｍビットシフト、加重平均、ビット長変換が行われるようになされているが、例えば、一部の画素についてはこのような処理が行われないようにしてもよい。
【００９９】
図８は、本発明の一実施の形態に係るＩＩＲフィルタの別の構成例を示すブロック図である。
【０１００】
同図において、ＩＩＲフィルタ２００は、ｎ＋ｍビット乗算器１２１、ｎ＋ｍビット加算器１２２、ｎ＋ｍビット乗算器１２３、巡回係数制御部１２４、動きベクトル検出部１２５、ｎ＋ｍビットフレームメモリ１２６を有する構成とされている。さらに、ＩＩＲフィルタ２００は、ｍビットシフタ１２７、ｍビットシフタ１２８、およびビット長変換部１２９を有する構成とされている。これに加えて、ＩＩＲフィルタ２００は、差分演算部１３０、およびセレクタ１３１を有している。
【０１０１】
図８におけるｎ＋ｍビット乗算器１２１乃至ビット長変換部１２９は、それぞれ図４におけるｎ＋ｍビット乗算器１２１乃至ビット長変換部１２９と同様のものなので、詳細な説明は省略する。
【０１０２】
図８の差分演算部１３０は、処理対象の画素のそれぞれについて、ｍビットシフタ１２７から出力される画素値とｎ＋ｍビットフレームメモリ１２６から出力される画素値の差分を演算するようになされている。これらの画素値は、ｎ＋ｍビットのデータで表現される階調を有するものなので、演算された差分もｎ＋ｍビットのデータで表現される。
【０１０３】
差分演算部１３０は、上述の演算の結果として得られた差分が、所定の閾値未満の値であるか否かを表す制御信号をセレクタ１３１に出力するようになされている。なお、所定の閾値は、微弱なノイズを、そのままノイズと判断してカットするか、積分効果として残すかの判定の基準となる値であり、例えば、２のｍ乗とされることが好ましい。例えば、上述の演算の結果として得られた差分が、２のｍ乗未満の値である場合、画像信号に含まれるノイズが極めて微弱であると考えられる。また、このような画素値に対してノイズ低減処理を施しても、それにより変化する画素値の範囲は、最終的にビット長変換部１２９により四捨五入されて切り捨てられる可能性が高いと考えられる。
【０１０４】
セレクタ１３１は、差分演算部１３０から供給された制御信号に基づいて、ｍビットシフタ１２７から出力される画素値とｎ＋ｍビットフレームメモリ１２６から出力される画素値の差分が、２のｍ乗未満の値であるか否かを判定する。そして、セレクタ１３１は、差分が２のｍ乗未満の値である場合、その処理対象の画素については、入力された画像信号の画素値のデータをそのまま出力する。一方、差分が２のｍ乗未満の値ではない場合、その処理対象の画素については、ビット長変換部１２９から出力される画素値のデータを出力する。
【０１０５】
すなわち、セレクタ１３１により、ｍビットシフト、加重平均、ビット長変換が行われた画素値のデータを出力するか、あるいは、入力された画像信号の画素値のデータをそのまま出力するかの切り替えが行われる。
【０１０６】
つまり、図８のＩＩＲフィルタ２００は、画像信号に含まれるノイズが極めて微弱である画素についてはあえて、ｍビットシフト、加重平均、およびビット長変換を行わず、入力された画像信号の画素値のデータをそのまま出力するようになされている。
【０１０７】
このようにすることで、ＩＩＲフィルタ２００は、ある程度大きいノイズを除去して残像の発生を防止するなどしながら、微弱なノイズによって得られているリアルな階調感をそのまま残すようにすることが可能となる。
【０１０８】
図９と図１０は、図８のＩＩＲフィルタ２００によるノイズ低減処理の効果を説明する図である。
【０１０９】
図９は、図２に示される画素を処理対象の画素として、図８に示されるＩＩＲフィルタ２００によりノイズ低減処理を施した場合の、時間の経過に伴う画素値のレベルの変化の例を示す図である。同図も図２と同様に、縦軸が画素値のレベル、横軸が時間とされ、時間の経過に伴う画素値のレベルの変化が実線１５１により示され、便宜上、画素値のレベルが０乃至５の６段階の階調により表現されている。
【０１１０】
図１０は、図２に示される画素を処理対象の画素として、図８に示されるＩＩＲフィルタ２００によりノイズ低減処理を施す場合、ｎ＋ｍビットフレームメモリ１２６の内部での画素値のレベルの変化を示す図である。同図も、縦軸が画素値のレベル、横軸が時間とされ、時間の経過に伴う画素値のレベルの変化が実線２６１により示されている。
【０１１１】
図１０における実線２６１の波形は、図６の実線１６１の波形と同様であるが、図９における実線２５１の波形は、図５の実線１５１の波形とは異なり、より細かくレベルが変化している。
【０１１２】
例えば、図９に示される画素値の変化を平均すると、同図の点線２５２で示されるようにレベル２.４５となるから、実際にディスプレイ等が有する階調以上の階調表現がなされることになる。一方で、図２の実線６１の波形と比較した場合、図９の実線２５１で示される波形は、画素値のレベルの突出した変化が抑制されている。
【０１１３】
すなわち、図８に示されるＩＩＲフィルタ２００は、図４に示されるＩＩＲフィルタ１００と比較して、より入力信号に近い画素値のレベルの変化を維持しながら、ノイズを低減させることが可能なのである。
【０１１４】
次に、図１１のフローチャートを参照して、図８のＩＩＲフィルタ２００によるノイズ低減処理の例について説明する。
【０１１５】
図１１のステップＳ５１乃至ステップＳ５７の処理は、図７のステップＳ２１乃至ステップＳ２７の処理と同様の処理なので詳細な説明は省略する。
【０１１６】
ステップＳ５８において、差分演算部１３０は、ステップＳ５２の処理で特定された処理対象の画素について、ｍビットシフタ１２７から出力される画素値とｎ＋ｍビットフレームメモリ１２６から出力される画素値の差分を演算する。これらの画素値は、ｎ＋ｍビットのデータで表現される階調を有するものなので、演算された差分もｎ＋ｍビットのデータで表現される。このとき、差分演算部１３０は、ステップＳ５８の処理による演算の結果として得られた差分が、所定の閾値（例えば、２のｍ乗、以下では所定の閾値を２のｍ乗として説明する）未満の値であるか否かを表す制御信号をセレクタ１３１に出力するようになされている。
【０１１７】
ステップＳ５９において、セレクタ１３１は、ステップＳ５８の処理による演算の結果として得られた差分が、２のｍ乗未満の値であるか否かを判定する。
【０１１８】
ステップＳ５９において、２のｍ乗未満の値であると判定された場合、処理は、ステップＳ６０に進む。一方、差分が２のｍ乗未満の値ではないと判定された場合、処理は、ステップＳ６１に進む。
【０１１９】
ステップＳ６０において、セレクタ１３１は、ステップＳ５２の処理で特定された処理対象の画素について、入力された画像信号の画素値のデータをそのまま出力する。
【０１２０】
ステップＳ６１において、セレクタ１３１は、ステップＳ５２の処理で特定された処理対象の画素について、ステップＳ５７の処理によりビット長変換部１２９から出力される画素値のデータを出力する。
【０１２１】
ステップＳ６０またはステップＳ６１の処理の後、処理は、ステップＳ６２に進む。
【０１２２】
ステップＳ６２において、処理対象とするべき次の画素があるか否かが判定される。ステップＳ６２において、次の画素があると判定された場合、処理は、ステップＳ５１に戻り、それ以降の処理が繰り返し実行される。
【０１２３】
ステップＳ６２において、次の画素がないと判定された場合、処理は終了する。
【０１２４】
このようにして、ＩＩＲフィルタ２００によるノイズ低減処理が実行される。
【０１２５】
なお、本明細書において上述した一連の処理は、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１２６】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１２７】
１００  ＩＩＲフィルタ，  １２１  ｎ＋ｍビット乗算器，  １２２  ｎ＋ｍビット加算器，  １２３  ｎ＋ｍビット乗算器，  １２４  巡回係数制御部，  １２５  動きベクトル検出部，  １２６  ｎ＋ｍビットフレームメモリ，  １２７  ｍビットシフタ，  １２８  ｍビットシフタ，  １２９  ビット長変換部，  １３０  差分演算部，  １３１  セレクタ
【図１】
2011259333.tif 000003
【図２】
2011259333.tif 000004
【図３】
2011259333.tif 000005
【図４】
2011259333.tif 000006
【図５】
2011259333.tif 000007
【図６】
2011259333.tif 000008
【図７】
2011259333.tif 000009
【図８】
2011259333.tif 000010
【図９】
2011259333.tif 000011
【図１０】
2011259333.tif 000012
【図１１】
2011259333.tif 000013