(57)【要約】【課題】よりノイズの少ない画像を得ることができるようにする。【解決手段】動き検出部は、現フレームと１つ前のフレームの参照画像の差分を求めることで参照画像の動きを検出し、その検出結果に基づいてフィードバック調整量を算出する。動き補償部は、現フレームと１つ前のフレームの参照画像から求まる参照画像のテクスチャ情報に基づいて、１つ前のフレームのフィルタ出力画像の動き補償を行なう。ブレンド部は、動き補償されたフィルタ出力画像と、現フレームの入力画像とを、フィードバック調整量に基づいて混合し、現フレームのフィルタ出力画像とする。本技術は、画像処理装置に適用することができる。【選択図】図１
2013059016.tif 000002
【特許請求の範囲】
【請求項１】
入力画像と空間的な相関を有する参照画像の時間方向の変化に基づいて、フィードバック調整量を算出する算出部と、
処理対象の現フレームよりも１つ前のフレームの前記入力画像から得られた出力画像に対して、前記参照画像の空間情報に基づいて動き補償を行なう動き補償部と、
前記動き補償により得られた補間出力画像と、前記現フレームの前記入力画像とを前記フィードバック調整量に基づいて混合することにより、前記現フレームの前記出力画像を生成するブレンド部と
を備える画像処理装置。
【請求項２】
前記動き補償部は、前記現フレームの前記参照画像上の注目画素と、前記１つ前のフレームの前記参照画像上の前記注目画素近傍の画素との輝度差により定まる重みを用いて、前記１つ前のフレームの前記出力画像における前記注目画素近傍の画素を重み付き加算することで、前記補間出力画像を生成する
請求項１に記載の画像処理装置。
【請求項３】
立体画像を表示させるための右画像と左画像との視差を示す視差画像を前記入力画像として生成する視差検出部と、
前記右画像または前記左画像に基づいて前記参照画像を生成する生成部と
をさらに備える請求項２に記載の画像処理装置。
【請求項４】
入力画像と空間的な相関を有する参照画像の時間方向の変化に基づいて、フィードバック調整量を算出し、
処理対象の現フレームよりも１つ前のフレームの前記入力画像から得られた出力画像に対して、前記参照画像の空間情報に基づいて動き補償を行ない、
前記動き補償により得られた補間出力画像と、前記現フレームの前記入力画像とを前記フィードバック調整量に基づいて混合することにより、前記現フレームの前記出力画像を生成する
ステップを含む画像処理方法。
【請求項５】
入力画像と空間的な相関を有する参照画像の時間方向の変化に基づいて、フィードバック調整量を算出し、
処理対象の現フレームよりも１つ前のフレームの前記入力画像から得られた出力画像に対して、前記参照画像の空間情報に基づいて動き補償を行ない、
前記動き補償により得られた補間出力画像と、前記現フレームの前記入力画像とを前記フィードバック調整量に基づいて混合することにより、前記現フレームの前記出力画像を生成する
ステップを含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は画像処理装置および方法、並びにプログラムに関し、特に、フィルタ処理によって、よりノイズの少ない画像を得ることができるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、画像のノイズを低減させるためのフィルタとして、巡回型フィルタ（IIR(Infinite Impulse Response)フィルタ）が知られている。
【０００３】
また、画像のノイズ低減のためのフィルタ処理として、時間フィルタと空間フィルタを組み合わせた処理を行なう技術も提案されている（例えば、特許文献１参照）。この技術では、画像の動き検出の結果に基づいて、画像の時間方向、つまりフレーム間の相関を利用したノイズ低減の結果と、画像の空間方向、つまりライン間の相関を利用したノイズ低減の結果とのうちの何れか一方が、フィルタ処理の結果として出力される。
【０００４】
したがって、時間フィルタと空間フィルタの何れか一方のみを用いる場合と比べて、より大きいノイズ低減効果を得ることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開昭６２−２９９１８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した技術では充分なノイズ低減効果を得ることができなかった。
【０００７】
例えば、従来の巡回型フィルタでは、画像のフレーム間で被写体の動きがある場合、画像上の変化のあった領域、つまり動きのある領域において、原画像との時間的な相関が低下し、動きぼけが発生してしまう。また、時間フィルタと空間フィルタを組み合わせる方法では、処理対象の画像にノイズ成分が多く含まれている場合には、充分なノイズ低減効果を得ることが困難であった。
【０００８】
本技術は、このような状況に鑑みてなされたものであり、フィルタ処理によって、よりノイズの少ない画像を得ることができるようにするものである。
【課題を解決するための手段】
【０００９】
本技術の一側面の画像処理装置は、入力画像と空間的な相関を有する参照画像の時間方向の変化に基づいて、フィードバック調整量を算出する算出部と、処理対象の現フレームよりも１つ前のフレームの前記入力画像から得られた出力画像に対して、前記参照画像の空間情報に基づいて動き補償を行なう動き補償部と、前記動き補償により得られた補間出力画像と、前記現フレームの前記入力画像とを前記フィードバック調整量に基づいて混合することにより、前記現フレームの前記出力画像を生成するブレンド部とを備える。
【００１０】
前記動き補償部には、前記現フレームの前記参照画像上の注目画素と、前記１つ前のフレームの前記参照画像上の前記注目画素近傍の画素との輝度差により定まる重みを用いて、前記１つ前のフレームの前記出力画像における前記注目画素近傍の画素を重み付き加算することで、前記補間出力画像を生成させることができる。
【００１１】
画像処理装置には、立体画像を表示させるための右画像と左画像との視差を示す視差画像を前記入力画像として生成する視差検出部と、前記右画像または前記左画像に基づいて前記参照画像を生成する生成部とをさらに設けることができる。
【００１２】
本技術の一側面の画像処理方法またはプログラムは、入力画像と空間的な相関を有する参照画像の時間方向の変化に基づいて、フィードバック調整量を算出し、処理対象の現フレームよりも１つ前のフレームの前記入力画像から得られた出力画像に対して、前記参照画像の空間情報に基づいて動き補償を行ない、前記動き補償により得られた補間出力画像と、前記現フレームの前記入力画像とを前記フィードバック調整量に基づいて混合することにより、前記現フレームの前記出力画像を生成するステップを含む。
【００１３】
本技術の一側面においては、入力画像と空間的な相関を有する参照画像の時間方向の変化に基づいて、フィードバック調整量が算出され、処理対象の現フレームよりも１つ前のフレームの前記入力画像から得られた出力画像に対して、前記参照画像の空間情報に基づいて動き補償が行なわれ、前記動き補償により得られた補間出力画像と、前記現フレームの前記入力画像とを前記フィードバック調整量に基づいて混合することにより、前記現フレームの前記出力画像が生成される。
【発明の効果】
【００１４】
本技術の一側面によれば、フィルタ処理によって、よりノイズの少ない画像を得ることができる。
【図面の簡単な説明】
【００１５】
【図１】本技術を適用した画像処理装置の一実施の形態の構成例を示す図である。
【図２】フィルタ更新処理を説明するフローチャートである。
【図３】差分評価値とフィードバック量の関係を示す図である。
【図４】差分量と重み係数の関係を示す図である。
【図５】動き補償と巡回型フィルタ処理を組み合わせて得られる効果について説明する図である。
【図６】画像処理装置の他の構成例を示す図である。
【図７】左画像および右画像から得られる各画像について説明する図である。
【図８】視差検出処理を説明するフローチャートである。
【図９】逆ガンマ処理について説明する図である。
【図１０】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照して、本技術を適用した実施の形態について説明する。
【００１７】
〈第１の実施の形態〉
［画像処理装置の構成例］
図１は、本技術を適用した画像処理装置の一実施の形態の構成例を示す図である。
【００１８】
この画像処理装置１１は、処理対象の入力画像Ｉｉｎの画像信号と空間的に相関がある参照画像Ｇｉｎの画像信号を用いて、入力画像Ｉｉｎに対する時空間フィルタ処理を行なうことで、入力画像Ｉｉｎのノイズ成分が低減されたフィルタ出力画像Ｉｏｕｔの画像信号を得るものである。
【００１９】
例えば参照画像Ｇｉｎは、入力画像Ｉｉｎと同じ被写体に関する情報が含まれる画像であり、かつ入力画像Ｉｉｎよりも情報量の多い画像、つまり確率的に入力画像Ｉｉｎよりもノイズ成分の少ない画像とされる。具体的には、例えば入力画像Ｉｉｎと参照画像Ｇｉｎは同じ画像から生成された画像などとされ、入力画像Ｉｉｎ上の画素と、その画素と同じ位置にある参照画像Ｇｉｎの画素とは、同被写体の同じ位置に関する情報を有している。つまり、これらの入力画像Ｉｉｎと参照画像Ｇｉｎは空間的に相関を有している。
【００２０】
画像処理装置１１は、フレームメモリ２１、動き検出部２２、フレームメモリ２３、動き補償部２４、およびブレンド部２５から構成される。
【００２１】
フレームメモリ２１は、供給された処理対象のフレーム（以下、現フレームとも称する）の参照画像を一時的に保持して１フレーム分の時間だけ遅延させ、動き検出部２２および動き補償部２４に供給する。動き検出部２２は、供給された現フレームの参照画像と、フレームメモリ２１から供給された現フレームの１フレーム前（以下、前フレームとも称する）の参照画像とから動き検出を行い、その検出結果に基づいてフィードバック調整量を算出して、ブレンド部２５に供給する。
【００２２】
なお、フィードバック調整量とは、動き補償された前フレームのフィルタ出力画像の、現フレームのフィルタ出力画像の生成への寄与率を示すIIRフィードバック量である。
【００２３】
フレームメモリ２３は、ブレンド部２５から供給されたフィルタ出力画像を１フレーム分の時間だけ遅延させ、動き補償部２４に供給する。動き補償部２４は、供給された参照画像と、フレームメモリ２１からの前フレームの参照画像とから、フレームメモリ２３からの前フレームのフィルタ出力画像の動き補償を行い、動き補償されたフィルタ出力画像をブレンド部２５に供給する。
【００２４】
ブレンド部２５は、動き検出部２２からのフィードバック調整量に基づいて、供給された入力画像と、動き補償部２４からのフィルタ出力画像とをブレンド（混合）し、現フレームのフィルタ出力画像を出力する。
【００２５】
ブレンド部２５は、乗算部３１、乗算部３２、および加算部３３を備えている。乗算部３１は、供給された入力画像に、動き検出部２２から供給されたフィードバック調整量を乗算して加算部３３に供給する。
【００２６】
乗算部３２は、動き補償部２４から供給された前フレームのフィルタ出力画像に、動き検出部２２から供給されたフィードバック調整量を乗算し、加算部３３に供給する。加算部３３は、乗算部３１からの入力画像と、乗算部３２からのフィルタ出力画像とを加算して現フレームのフィルタ出力画像とし、出力する。
【００２７】
［フィルタ更新処理の説明］
ところで、図１の画像処理装置１１は、入力画像と参照画像が供給され、入力画像に対する時空間フィルタ処理が指示されると、フィルタ更新処理を行なってフィルタ出力画像を生成し、出力する。以下、図２のフローチャートを参照して、画像処理装置１１によるフィルタ更新処理について説明する。
【００２８】
ステップＳ１１において、動き検出部２２は、参照画像のフレーム間差分に基づいて、フィードバック調整量を算出する。
【００２９】
すなわち、現フレームの参照画像が画像処理装置１１に供給されると、フレームメモリ２１は、既に供給されて保持している前フレームの参照画像を動き検出部２２と動き補償部２４に供給する。
【００３０】
動き検出部２２は、供給された現フレームの参照画像と、フレームメモリ２１からの前フレームの参照画像との差分を示す差分評価値を算出する。
【００３１】
具体的には、例えば動き検出部２２は次式（１）を計算し、現フレームの参照画像の座標(x,y)の画素の画素値（輝度値）G(x,y)と、前フレームの参照画像の座標(x,y)の画素の画素値Gold(x,y)との差分絶対値を座標(x,y)における差分評価値d(x,y)として算出する。
【００３２】
【数１】
2013059016.tif 000003
【００３３】
なお、座標(x,y)は、参照画像上の互いに直交する方向をｘ方向およびｙ方向としたときの各方向を軸とする座標系におけるｘ座標とｙ座標である。また、差分評価値d(x,y)は、現フレームの参照画像と前フレームの参照画像の差分量を示すものであれば、どのようなものであってもよい。
【００３４】
このようにして差分評価値d(x,y)が算出されると、次に動き検出部２２は、次式（２）を計算し、座標(x,y)におけるフィードバック係数α(x,y)を算出する。
【００３５】
【数２】
2013059016.tif 000004
【００３６】
すなわち、動き検出部２２は上述した式（１）の計算で求めた差分評価値d(x,y)を、予め定められた所定の関数g(k)に代入することでフィードバック係数α(x,y)を算出する。
【００３７】
例えば、関数g(k)は、差分評価値d(x,y)に応じてIIRフィードバック量を決定する関数であり、参照画像において、動きがあった部分のIIRフィードバック量を減少させ、現フレームの入力画像を反映させるようなフィードバック係数α(x,y)を出力するものである。具体的には、関数g(k)は例えば次式（３）に示される関数とされる。
【００３８】
【数３】
2013059016.tif 000005
【００３９】
なお、式（３）において、αは参照画像のフレーム間の動きがない場合のフィードバック係数α(x,y)であり、例えばα＝0.9375などとされる。また、ｋ０およびｋ１は、参照画像のフレーム間の動きを検出し、フィードバック係数を連続的に減少させる差分評価値の範囲を表す閾値であり、例えばｋ０＝5，ｋ１＝15とされる。
【００４０】
したがって、例えば図３に示すように、差分評価値d(x,y)が小さいほど、関数g(k)、つまりフィードバック係数α(x,y)の値は大きくなる。なお、図３において、横軸は差分評価値d(x,y)を示しており、縦軸は関数g(k)の値を示している。
【００４１】
例えば、図３の例では、差分評価値d(x,y)が０からｋ０までの間は、関数g(k)＝αとされる。また、差分評価値d(x,y)がｋ０からｋ１までの間、つまりｋ０＜d(x,y)≦ｋ１の区間では、関数g(k)＝α(1-((k-k0)/(k1-k0)))とされ、差分評価値が大きくなるほど関数g(k)の値が直線的に減少する。さらに、差分評価値d(x,y)がｋ１より大きい区間では、関数g(k)＝0とされる。
【００４２】
動き検出部２２は、このようにして得られたフィードバック係数α(x,y)を、そのまま前フレームのフィルタ出力画像のフィードバック調整量として乗算部３２に供給する。また、動き検出部２２は、１からフィードバック係数α(x,y)を減算して得られる値（1-α(x,y)）を、入力画像のフィードバック調整量として乗算部３１に供給する。
【００４３】
参照画像のフレーム間の差分、つまり参照画像における被写体の動きが大きいほど、前フレームのフィルタ出力画像に乗算されるフィードバック調整量α(x,y)は小さくなる。つまり、参照画像の動きが大きい領域では、前フレームのフィルタ出力画像の現フレームのフィルタ出力画像の生成に対する寄与率が小さくなり、フィルタ出力画像における動きぼけの発生が抑制される。
【００４４】
図２のフローチャートの説明に戻り、ステップＳ１２において、動き補償部２４は、参照画像に基づいて前フレームのフィルタ出力画像を動き補償し、乗算部３２に供給する。すなわち、動き補償部２４は、現フレームの参照画像のテクスチャ情報を用いて、前フレームのフィルタ出力画像の動き補償を行なう。
【００４５】
例えば、現フレームの参照画像が動き補償部２４に供給されると、フレームメモリ２３は、既に加算部３３から供給されて保持している前フレームのフィルタ出力画像を動き補償部２４に供給する。また、フレームメモリ２１も前フレームの参照画像を動き補償部２４に供給する。
【００４６】
動き補償部２４は、供給された現フレームの参照画像、フレームメモリ２１からの前フレームの参照画像、およびフレームメモリ２３からの前フレームのフィルタ出力画像に基づいて次式（４）を計算し、動き補償された前フレームのフィルタ出力画像を求める。すなわち、動き補償された、前フレームのフィルタ出力画像の座標(x,y)の画素の画素値Iold’(x,y)が算出される。
【００４７】
【数４】
2013059016.tif 000006
【００４８】
なお、式（４）において、Gold(x+i,y+j)は、前フレームの参照画像の座標(x+i,y+j)の画素の画素値（輝度値）を示しており、G(x,y)は、現フレームの参照画像の座標(x,y)の画素の画素値（輝度値）を示している。また、Iold(x+i,y+j)は、前フレームのフィルタ出力画像の座標(x+i,y+j)の画素の画素値を示しており、関数w(k)は、予め定められた所定の関数である。
【００４９】
ここで、座標(x,y)にある現フレームの参照画像の画素を注目画素とし、前フレームの参照画像上の注目画素と同じ位置にある画素を中心とする(2M+1)×(2M+1)画素からなるブロックを注目ブロックとする。この場合、画素値Iold’(x,y)は、前フレームの参照画像の注目ブロック内の画素と注目画素との輝度差の絶対値に基づく重みにより、前フレームのフィルタ出力画像の注目ブロックと同じ領域内の画素を重み付き加算することにより求められる。つまり、参照画像の注目画素近傍の輝度差の絶対値に基づいて、重み付けにより補間が行なわれ、画素値Iold’(x,y)とされる。
【００５０】
なお、注目ブロックの大きさを定める定数Ｍは、注目画素の座標(x,y)を中心として、ｘ軸，ｙ軸のそれぞれの方向で何画素探索するかを表している。例えば、３画素×３画素のブロックが注目ブロックとされる場合には、Ｍ＝（３−１）／２＝１とされる。
【００５１】
また、式（４）における関数w(k)は、参照画像の画素の輝度差、つまりk＝|Gold(x+i,y+j)-G(x,y)｜が小さいほど重みが大きくなる関数であり、例えば次式（５）に示す関数などとされる。
【００５２】
【数５】
2013059016.tif 000007
【００５３】
なお、式（５）において、Ｎは参照画像の画素の画素値の取り得る値の最大値を示しており、例えば画素値が８ビット精度で０乃至２５５の何れかの値とされるのであれば、Ｎ＝２５５とされる。また、式（５）において、σ２は分散を表しており、例えばσ２＝0.01である。
【００５４】
したがって、例えば図４に示すように、参照画像の画素の輝度差|Gold(x+i,y+j)-G(x,y)｜が小さいほど、フィルタ出力画像の画素に乗算される重みを示す関数w(k)の値は大きくなる。つまり、参照画像における画素の輝度変化が小さく、被写体の動きのない領域ほど、動き補償で生成されるフィルタ出力画像への寄与率が高くなり、フィルタ出力画像における動きぼけの発生が抑制される。
【００５５】
現フレームの参照画像の注目画素との輝度差が小さい前フレームの参照画像の画素（以下、参照画素とも称する）は、注目画素との相関が高い画素（類似する画素）であり、注目画素と同じ被写体の情報を有する画素である可能性が高い。換言すれば、そのような参照画素は、注目画素の移動先の画素である可能性が高い。
【００５６】
また、フィルタ出力画像と参照画像とは互いに空間的な相関のある画像である。そのため、これから生成しようとする現フレームのフィルタ出力画像における注目画素と同じ位置の画素と、参照画素と同じ位置にある前フレームのフィルタ出力画像上の画素とは、注目画素と参照画素の相関と同じ高さの相関を有しているということができる。
【００５７】
したがって、注目画素と同じ位置にある前フレームのフィルタ出力画像上の画素の近傍にある各画素を、参照画像の画素の輝度差から求めた重みを付けて加算すれば、現フレームのフィルタ出力画像における注目画素と同じ位置の画素の推定値を得ることができるはずである。上述した式（４）の演算で得られるフィルタ出力画像は、前フレームのフィルタ出力画像を動き補償することで推定された、現フレームのフィルタ出力画像である。
【００５８】
なお、重みとなる関数w(k)の値の算出は、必ずしも上述した式（５）の演算に限らず、テーブル引きなどの処理により求められてもよいし、折れ線近似などの演算により求められてもよい。また、式（４）における画素値Gold(x+i,y+j)については、若干の補間性能を犠牲として、処理コスト（メモリ参照）の低減のために、画素値Gold(x+i,y+j)を現フレームの参照画像の画素の画素値G(x+i,y+j)に置き換えて、現フレームの参照画像のみの情報を用いた補間などが行なわれるようにするなど、簡素化が図られてもよい。
【００５９】
図２のフローチャートの説明に戻り、ステップＳ１３において、ブレンド部２５は、動き補償部２４からの前フレームのフィルタ出力画像と、供給された現フレームの入力画像とを、動き検出部２２からのフィードバック調整量に基づいてブレンドする。
【００６０】
すなわち、乗算部３１は、供給された入力画像の座標(x,y)の画素の画素値Iin(x,y)に、動き検出部２２から供給されたフィードバック調整量（1-α(x,y)）を乗算して加算部３３に供給する。また乗算部３２は、動き補償部２４から供給された前フレームの動き補償後のフィルタ出力画像の座標(x,y)の画素の画素値Iold’(x,y)に、動き検出部２２から供給されたフィードバック調整量α(x,y)を乗算し、加算部３３に供給する。
【００６１】
そして、加算部３３は乗算部３１からの入力画像の画素の画素値と、乗算部３２からのフィルタ出力画像の画素の画素値とを加算して、現フレームのフィルタ出力画像の座標(x,y)の画素の画素値Iout(x,y)とし、これにより得られたフィルタ出力画像を出力する。
【００６２】
これらの処理により、次式（６）の演算が行なわれることになる。つまり、フィードバック係数α(x,y)に基づいて、入力画像の画像信号に対する巡回型フィルタ処理が行なわれ、フィルタ出力画像の画像信号が生成されることになる。
【００６３】
【数６】
2013059016.tif 000008
【００６４】
ステップＳ１４において、画像処理装置１１は、処理を終了するか否かを判定する。例えば、入力画像の全てのフレームについて処理された場合、処理は終了すると判定される。
【００６５】
ステップＳ１４において、処理を終了しないと判定された場合、処理はステップＳ１１に戻り、上述した処理が繰り返される。
【００６６】
これに対して、ステップＳ１４において、処理を終了すると判定された場合、画像処理装置１１の各部は行なっている処理を停止して、フィルタ更新処理は終了する。
【００６７】
以上のようにして画像処理装置１１は、参照画像の動きを検出し、その検出結果に基づいてフィードバック調整量を定め、前フレームのフィルタ出力画像の現フレームのフィルタ出力画像の生成に対する寄与率を制御する。また、画像処理装置１１は、参照画像の空間的な相関に基づいて、前フレームのフィルタ出力画像の動き補償を行い、得られたフィルタ出力画像と、入力画像とをブレンド（混合）することにより、現フレームのフィルタ出力画像を生成する。
【００６８】
このようなフィードバック調整量の適切な制御やフィルタ出力画像の動き補償により、簡単な処理で、よりノイズ成分の少ないフィルタ出力画像を得ることができる。
【００６９】
従来の単純な巡回型フィルタのみでは、入力画像に動きのある被写体がある場合には、動きのある領域でフィルタ出力画像に動きぼけが生じていた。これに対して、入力画像と空間的に相関性があり、かつ入力画像と比較して統計的にノイズ成分が少ない画像があるときは、その画像を参照画像とし、本技術のように時空間の動き補償を行なうことで、動きのある領域で生じる動きぼけを改善することが可能となる。
【００７０】
また、フィルタ出力画像に対する動き補償と、入力画像に対する巡回型フィルタ処理とを組み合わせることで、より広い範囲を対象として動き補償を行なうことができる。
【００７１】
例えば、図５の右側に示すように、フレーム（ｎ−１）のフィルタ出力画像Ｉｏｕｔ（ｎ−１）上の注目する画素を注目画素Ｇｎ−１とし、上述した式（４）による動き補償の演算時における注目ブロックの大きさが３画素×３画素であったとする。なお、図５において、各画像上の１つの四角形は１つの画素を表している。
【００７２】
この場合、フィルタ出力画像Ｉｏｕｔ（ｎ−１）における注目画素Ｇｎ−１を中心とする３×３画素の領域ＡＲ１１が参照範囲とされ、動き補償後のフレーム（ｎ−１）のフィルタ出力画像における注目画素Ｇｎ−１と同じ位置にある画素が求められる。すなわち、式（４）で示される、領域ＡＲ１１内の画素を用いたフィルタ処理により、注目画素Ｇｎ−１と同じ位置にある動き補償後のフレーム（ｎ−１）のフィルタ出力画像の画素の画素値Iold’(x,y)が算出される。
【００７３】
また、式（６）から、フレームｎのフィルタ出力画像の各画素は、フレームｎの入力画像と、フレーム（ｎ−１）の動き補償後のフィルタ出力画像の同じ位置にある画素をブレンドすることで生成される。
【００７４】
したがって、フレームｎのフィルタ出力画像の画素は、フレームｎの入力画像の画素と、フレーム（ｎ−１）のフィルタ出力画像の３×３画素の領域を参照範囲とするフィルタ出力とをブレンドすることにより生成されるということができる。
【００７５】
さらに１フレーム遡ると、例えば領域ＡＲ１１内の画素Ｇ１１は、フレーム（ｎ−２）のフィルタ出力画像Ｉｏｕｔ（ｎ−２）の領域ＡＲ１２を参照範囲とするフィルタ出力と、フレーム（ｎ−１）の入力画像の画素とをブレンドすることで生成される。ここで、領域ＡＲ１２は、画素Ｇ１１と同じ位置にあるフィルタ出力画像Ｉｏｕｔ（ｎ−２）上の画素を中心とする３×３画素の領域である。
【００７６】
このことから、フィルタ出力画像Ｉｏｕｔ（ｎ−１）の領域ＡＲ１１は、フレーム（ｎ−１）の入力画像と、フィルタ出力画像Ｉｏｕｔ（ｎ−２）上の領域ＡＲ１３を参照範囲とするフィルタ出力とをブレンドすることで生成されることが分かる。ここで、領域ＡＲ１３は、注目画素Ｇｎ−１と同じ位置にあるフィルタ出力画像Ｉｏｕｔ（ｎ−２）上の画素を中心とする５×５画素の領域である。
【００７７】
同様に、さらに１フレーム遡り、領域ＡＲ１３はフレーム（ｎ−２）の入力画像と、フレーム（ｎ−３）のフィルタ出力画像Ｉｏｕｔ（ｎ−３）上の領域ＡＲ１４を参照範囲とするフィルタ出力とをブレンドすることで生成される。領域ＡＲ１４は、注目画素Ｇｎ−１と同じ位置にあるフィルタ出力画像Ｉｏｕｔ（ｎ−３）上の画素を中心とする７×７画素の領域である。
【００７８】
このように、動き補償と巡回型フィルタ処理とを組み合わせた処理が行われる画像処理装置１１では、動き補償後のフィルタ出力画像の画素を生成するために、過去の各フレームのフィルタ出力画像上の領域が参照されることになる。また、動き補償後のフィルタ出力画像の画素を生成するために参照されるフィルタ出力画像上の参照範囲は、過去のフレームに遡るにしたがって広くなっていくことが分かる。
【００７９】
そのため、式（４）の演算時における注目ブロックの大きさを、例えば３×３画素程度の比較的小さい領域として動き補償を行なっても、巡回型の構成として再帰的にフィルタ処理を繰り返すことによって、広範囲な画素情報を参照することができる。すなわち、実質的にフィルタ出力画像上の広い範囲を参照して動き補償を行なうことができる。また、広い範囲が参照範囲とされるため、空間的な平滑化によるノイズ低減効果も得ることができる。
【００８０】
以上のことから、動き補償と巡回型フィルタ処理とを組み合わせた処理により、参照範囲を狭くして、動き補償における１フレームあたりの演算量を大幅に削減しつつ、動き補償において、広い範囲を参照範囲とした場合と同等の効果を実現することができる。
【００８１】
〈第２の実施の形態〉
［画像処理装置の構成例］
なお、以上において説明した時空間フィルタ処理は、例えばステレオカメラ等による立体画像の視差検出などに応用することが可能である。そのような場合、視差検出を行なう画像処理装置は、例えば図６に示すように構成される。なお、図６において、図１における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【００８２】
図６の画像処理装置１０１は、ブロックステレオマッチング部１１１、画像縮小部１１２、逆ガンマ部１１３、および時空間フィルタ部１１４から構成される。
【００８３】
画像処理装置１０１には、立体画像を構成する左画像の画像信号と右画像の画像信号とが供給される。これらの左画像と右画像とは、同じ被写体を異なる視点で撮像して得られた、互いに視差を有する画像である。
【００８４】
ブロックステレオマッチング部１１１は、供給された左画像と右画像とに基づいて、所定の大きさのブロックを単位としてステレオマッチング処理を行い、左画像と右画像の各領域の視差を示す入力視差画像を生成する。ブロックステレオマッチング部１１１は、生成した入力視差画像を時空間フィルタ部１１４に供給する。
【００８５】
なお、以下においては、右画像が基準とされてステレオマッチング処理が行なわれるものとして説明を続ける。
【００８６】
画像縮小部１１２は、供給された右画像を縮小して縮小画像を生成し、逆ガンマ部１１３に供給する。逆ガンマ部１１３は、画像縮小部１１２から供給された縮小画像に対して逆ガンマ処理を施し、時空間フィルタ部１１４に供給する。
【００８７】
時空間フィルタ部１１４は、逆ガンマ部１１３からの縮小画像を用いて、ブロックステレオマッチング部１１１からの入力視差画像に対する時空間フィルタ処理を行なうことで、入力視差画像のノイズ成分が低減された出力視差画像を生成し、出力する。
【００８８】
なお、時空間フィルタ部１１４は、フレームメモリ２１乃至ブレンド部２５から構成されており、その構成は図１の画像処理装置１１の構成と同じ構成となっている。時空間フィルタ部１１４では、入力視差画像、逆ガンマ処理された縮小画像、および出力視差画像のそれぞれが、図１の入力画像Ｉｉｎ、参照画像Ｇｉｎ、およびフィルタ出力画像Ｉｏｕｔに対応している。
【００８９】
［処理対象となる画像について］
ところで、画像処理装置１０１には、例えば図７に示すように、ステレオカメラ等で撮像された左画像ＰＬと右画像ＰＲとが入力される。これらの左画像ＰＬと右画像ＰＲは、例えば３２０画素×２４０画素からなるモノクロの画像などとされる。
【００９０】
ブロックステレオマッチング部１１１では、例えばブロックサイズBlockSizeが４画素×４画素であるブロックを単位としてステレオマッチング処理が行なわれ、８０画素×６０画素からなる入力視差画像Ｄｉｎが生成される。
【００９１】
ステレオマッチング処理は、異なる視点の左画像と右画像のうち、一方の画像を基準として、基準となる画像の各点に対応する対応点を、他方の画像上の探索範囲の領域から探索することで、基準となる画像の各点の視差を求める処理である。
【００９２】
図７の例では、基準とされる右画像ＰＲのブロックごとに１つの視差が求められるので、得られる入力視差画像Ｄｉｎの大きさは、右画像ＰＲの図中、縦横ともに１／４の大きさとなる。したがって、ｘｙ座標系における入力視差画像Ｄｉｎの座標(x,y)にある画素の画素値は、右画像ＰＲ上の座標(4x,4y)と座標(4x+3,4y+3)にある画素を互いに対向する頂点とするブロックと、そのブロックに対応する左画像ＰＬのブロックとの視差を示す値となる。
【００９３】
このようにして得られた入力視差画像Ｄｉｎが、時空間フィルタ処理の対象となる画像、つまり図１の入力画像Ｉｉｎに対応する画像とされる。一般的に、ステレオマッチング処理で得られる入力視差画像には、エラーが多く含まれている。すなわち、入力視差画像の画素のなかには、実際の視差（真値）を示す画素値を有していない画素もあるため、入力視差画像はノイズが多く含まれている画像ということができる。
【００９４】
また、画像縮小部１１２では、ステレオマッチング処理で基準とされた右画像ＰＲが図中、縦横ともに１／４の大きさとなるように縮小され、縮小画像ＳＲが生成される。したがって、この縮小画像ＳＲの大きさも入力視差画像Ｄｉｎと同じ大きさ、つまり８０画素×６０画素とされる。
【００９５】
このようにして得られた縮小画像ＳＲは、縮小処理によりカメラノイズが低減された画像であり、もとの右画像ＰＲや入力視差画像Ｄｉｎと空間方向に高い相関性を有する画像である。特に、縮小画像ＳＲは、入力視差画像Ｄｉｎと比べてノイズ成分が少ない画像である。
【００９６】
そこで、画像処理装置１０１では、縮小画像ＳＲが、時空間フィルタ処理において処理対象、つまりノイズ低減の対象となる入力視差画像Ｄｉｎに対して参照される画像となる。すなわち、縮小画像ＳＲが図１の参照画像Ｇｉｎに対応する画像とされる。
【００９７】
さらに、時空間フィルタ部１１４では、縮小画像ＳＲが参照されながら入力視差画像Ｄｉｎに対する時空間フィルタ処理が行なわれ、出力視差画像Ｄｏｕｔが生成される。このようにして生成された出力視差画像Ｄｏｕｔは、入力視差画像Ｄｉｎからノイズが除去された画像であり、入力視差画像Ｄｉｎと同じ大きさの画像、つまり８０画素×６０画素の大きさの画像である。この出力視差画像Ｄｏｕｔは、図１のフィルタ出力画像Ｉｏｕｔに対応する。
【００９８】
［視差検出処理の説明］
次に、画像処理装置１０１の動作について説明する。
【００９９】
画像処理装置１０１に左画像と右画像からなる立体画像が供給され、立体画像の視差検出が指示されると、画像処理装置１０１は視差検出処理を行って、出力視差画像を生成する。以下、図８のフローチャートを参照して、画像処理装置１０１による視差検出処理について説明する。
【０１００】
ステップＳ６１において、ブロックステレオマッチング部１１１は、供給された左画像および右画像に基づいてステレオマッチング処理を行なう。
【０１０１】
例えば、ブロックステレオマッチング部１１１は、これから求めようとする入力視差画像Ｄｉｎの座標(x,y)にある画素を注目画素として、次式（７）を計算することにより、注目画素に対する視差ｄについての差分絶対値和SADRightBase(x,y,d)を算出する。
【０１０２】
【数７】
2013059016.tif 000009
【０１０３】
なお、式（７）において、L(4x+i+d,4y+j)は、左画像ＰＬの座標(4x+i+d,4y+j)にある画素の画素値を示しており、R(4x+i,4y+j)は、右画像ＰＲの座標(4x+i+,4y+j)にある画素の画素値を示している。また、BlockSizeは、処理単位とされるブロックの大きさ（ブロックサイズ）を示しており、ここでは、BlockSize＝４とされる。
【０１０４】
したがって、差分絶対値和SADRightBase(x,y,d)は、右画像ＰＲ上の処理対象のブロック内の各画素の画素値と、そのブロックと同じ位置からｘ方向に視差ｄだけずれた位置にある左画像ＰＬ上の領域の各画素の画素値との差分の絶対値の総和を求めることにより算出される。なお、右画像ＰＲ上の処理対象のブロックは、入力視差画像Ｄｉｎの注目画素に対応する画素を含む４画素×４画素のブロックである。
【０１０５】
ブロックステレオマッチング部１１１は、所定の範囲内の各視差ｄについて差分絶対値和SADRightBase(x,y,d)を求めると、それらの差分絶対値和のうちの最小となる差分絶対値和を選択し、選択した差分絶対値和の視差ｄを、注目画素の視差とする。つまり、選択された差分絶対値和の視差ｄの値が、注目画素の画素値とされる。例えば、視差ｄの範囲は、０以上６３以下の範囲などとされ、それらの値ごとに差分絶対値和が算出される。
【０１０６】
ブロックステレオマッチング部１１１は、入力視差画像Ｄｉｎの各画素を順番に注目画素として、注目画素の画素値を求めることで、入力視差画像Ｄｉｎを生成する。そして、ブロックステレオマッチング部１１１は、得られた入力視差画像Ｄｉｎを時空間フィルタ部１１４の乗算部３１に供給する。
【０１０７】
なお、ステレオマッチング処理では、処理対象となる左画像と右画像を撮像するステレオカメラの左右の光軸は、それらの光軸が平行となるように予めキャリブレーションされており、左画像と右画像の視差ｄは、無限遠方において０となっているものとして計算が行なわれる。
【０１０８】
また、左画像と右画像の視差検出は、基準となる画像上の小領域と、他方の画像の探索領域内の小領域とを比較して、それらの小領域のテクスチャパターンの類似度を示す評価値を算出する方法であれば、式（７）の輝度の差分絶対値和を用いる方法に限らず、どのような方法であってもよい。例えば、そのような評価値として、差分二乗和や正規化相互相関などが用いられてもよい。
【０１０９】
また、視差ｄが水平方向（ｘ方向）に連続的に変化するような制約条件を加えたものをコスト関数として定義し、このコスト関数を動的計画法などを用いて最小化することで視差ｄを求めるようにしてもよい。
【０１１０】
さらに、次式（８）の計算により左画像を基準とした差分絶対値和SADLeftBase(x,y,d)を求め、確率的に視差検出のエラーが減少するように、差分絶対値和SADRightBase(x,y,d)と差分絶対値和SADLeftBase(x,y,d)を統合し、視差ｄを求めてもよい。
【０１１１】
【数８】
2013059016.tif 000010
【０１１２】
図８のフローチャートの説明に戻り、入力視差画像が生成されると、ステップＳ６２において、画像縮小部１１２は、供給された右画像に対して縮小処理を行い、入力視差画像と同じ大きさの縮小画像ＳＲを生成する。
【０１１３】
例えば、画像縮小部１１２は、次式（９）に示す計算を行なって、右画像上の所定の大きさのブロック内の画素の画素値を平滑化することで縮小画像ＳＲにおける座標(x,y)の画素の画素値Rsmall(x,y)を算出する。
【０１１４】
【数９】
2013059016.tif 000011
【０１１５】
なお、式（９）において、R(4x+j,4y+i)は、右画像ＰＲの座標(4x+j,4y+i)にある画素の画素値を示している。また、BlockSizeは、ステップＳ６１のステレオマッチング処理において、処理単位とされたブロックの大きさ（ブロックサイズ）を示しており、ここでは、BlockSize＝４とされる。
【０１１６】
したがって、右画像上のブロック内の画素の画素値の平均値が、そのブロックに対応する縮小画像の画素の画素値とされる。このように右画像に対する空間的な平滑化を行なうことにより、ノイズ成分が大幅に低減された縮小画像を得ることができる。
【０１１７】
なお、右画像に対する縮小処理は、上述した式（９）の計算に限らず、３次補間法（バイキュービック法）など、他のどのような縮小アルゴリズムにより行なわれてもよい。
【０１１８】
画像縮小部１１２は、縮小画像を生成すると、得られた縮小画像を逆ガンマ部１１３に供給し、その後、処理はステップＳ６３へと進む。
【０１１９】
ステップＳ６３において、逆ガンマ部１１３は、画像縮小部１１２から供給された縮小画像に対して逆ガンマ処理を行い、逆ガンマ処理が施された縮小画像を、時空間フィルタ部１１４のフレームメモリ２１、動き検出部２２、および動き補償部２４に供給する。
【０１２０】
例えば、逆ガンマ部１１３は、次式（１０）を計算することにより、縮小画像ＳＲにおける座標(x,y)の画素の画素値Rsmall(x,y)に対する逆ガンマ処理を行い、逆ガンマ処理後の画素の画素値Rsmall’(x,y)を算出する。
【０１２１】
【数１０】
2013059016.tif 000012
【０１２２】
なお、式（１０）において、関数Gammainv(k)は、例えば次式（１１）により表される関数である。
【０１２３】
【数１１】
2013059016.tif 000013
【０１２４】
式（１１）では、Ｎは画素値Rsmall(x,y)、すなわちｋの取り得る値の最大値を示している。例えば、画素値ｋが８ビットで0乃至255のうちの何れかの値とされる場合、Ｎ＝255とされる。また、ｒはガンマ値を示しており、ガンマ値ｒとしてノイズのばらつきが入力信号量（画素の画素値）に対して一定となるような値が用いられ、例えばガンマ値ｒ＝1.5とされる。
【０１２５】
左画像や右画像を撮像するカメラ等では、一般的にビット数あたりのダイナミックレンジをかせぐために画像に対するガンマ補正などが行なわれており、例えば図９の左側に示すように、ノイズによる値のばらつきが入力信号量（画素値）の小さい部分において大きくなる傾向にある。これを軽減するために、必要に応じて画像に対する逆ガンマ処理（逆ガンマ変換）が行なわれ、図９の右側に示すように値のばらつきが補正される。
【０１２６】
なお、図中、縦軸は入力信号量（画素値）を示しており、横軸は画像を撮像する画素（センサ）に入射する光の光量を示している。
【０１２７】
逆ガンマ部１１３は、縮小画像に対して逆ガンマ処理を行なうと、逆ガンマ処理が施された縮小画像を、参照画像として時空間フィルタ部１１４に供給する。なお、逆ガンマ処理は、上述した式（１０）の演算に限らず、折れ線近似やテーブル引きにより実現されるようにしてもよい。
【０１２８】
縮小画像に逆ガンマ処理が施されると、その後、ステップＳ６４乃至ステップＳ６７の処理が行なわれて視差検出処理は終了するが、これらの処理は図２のステップＳ１１乃至ステップＳ１４の処理と同様であるので、その説明は省略する。
【０１２９】
但し、ステップＳ６４乃至ステップＳ６７では、縮小画像のフレーム間差分に基づいてフィードバック調整量が算出されるとともに、縮小画像に基づいて前フレームの出力視差画像の動き補償が行なわれる。そして、動き補償された出力視差画像と、現フレームの入力視差画像とがブレンドされて、現フレームの出力視差画像が生成される。
【０１３０】
以上のようにして画像処理装置１０１は、ステレオマッチング処理により入力視差画像を生成するとともに、右画像を縮小して縮小画像とし、縮小画像を参照画像として入力視差画像に対する時空間フィルタ処理を行い、ノイズが低減された出力視差画像を生成する。
【０１３１】
時空間フィルタ処理時において、縮小画像の動きに基づいて適切なフィードバック調整量を定めたり、前フレームの出力視差画像の動き補償を行なったりすることで、簡単な処理で、よりノイズ成分の少ない出力視差画像を得ることができる。
【０１３２】
一般的に、ステレオマッチング処理により得られる入力視差画像には、マッチングエラーを要因とするノイズ成分が多く含まれているが、入力視差画像のもととなる左右の画像は、入力視差画像と空間方向に高い相関性があり、入力視差画像よりもノイズ成分が少ない。そこで、画像処理装置１０１のような、ブロックステレオマッチングにより縮小視差を取得するシステムにおいて、入力視差画像、縮小画像、および出力視差画像を、入力画像、参照画像、およびフィルタ出力画像として時空間フィルタ処理を行なえば、大きなノイズ低減効果を得ることができる。
【０１３３】
特に、ブロックステレオマッチングにより縮小視差を得るようなシステムでは、ブロックステレオマッチングで基準とされる、もとの右画像を入力視差画像に合わせて縮小させて得られる縮小画像を参照画像として用いるが、このような縮小処理は画像の空間的な平滑化である。したがって、縮小処理により参照画像としてノイズ成分が大幅に低減された画像を得ることができ、時空間フィルタ処理時に非常に効果的にノイズ成分を低減させることができる。
【０１３４】
また、一般的に空間的な動き補償処理は、処理コストが大きい。しかし、視差画像のような空間方向に連続的な変化を有しているものを前提とした場合には、単に現フレームの参照画像の注目画素と、前フレームの参照画像における注目画素近傍の画素との差分量を用い、前フレームの出力視差画像の注目画素近傍の画素に対して空間的な重み付き加算を行なって平滑化するだけでよい。これにより、簡単な処理で容易に動き補償を実現することができる。
【０１３５】
さらに、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１３６】
図１０は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１３７】
コンピュータにおいて、CPU（Central Processing Unit）２０１，ROM（Read Only Memory）２０２，RAM（Random Access Memory）２０３は、バス２０４により相互に接続されている。
【０１３８】
バス２０４には、さらに、入出力インターフェース２０５が接続されている。入出力インターフェース２０５には、キーボード、マウス、マイクロホンなどよりなる入力部２０６、ディスプレイ、スピーカなどよりなる出力部２０７、ハードディスクや不揮発性のメモリなどよりなる記録部２０８、ネットワークインターフェースなどよりなる通信部２０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２１１を駆動するドライブ２１０が接続されている。
【０１３９】
以上のように構成されるコンピュータでは、CPU２０１が、例えば、記録部２０８に記録されているプログラムを、入出力インターフェース２０５及びバス２０４を介して、RAM２０３にロードして実行することにより、上述した一連の処理が行われる。
【０１４０】
コンピュータ（CPU２０１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア２１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０１４１】
そして、プログラムは、リムーバブルメディア２１１をドライブ２１０に装着することにより、入出力インターフェース２０５を介して、記録部２０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部２０９で受信し、記録部２０８にインストールすることができる。その他、プログラムは、ROM２０２や記録部２０８に、あらかじめインストールしておくことができる。
【０１４２】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１４３】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１４４】
さらに、本技術は、以下の構成とすることも可能である。
【０１４５】
［１］
入力画像と空間的な相関を有する参照画像の時間方向の変化に基づいて、フィードバック調整量を算出する算出部と、
処理対象の現フレームよりも１つ前のフレームの前記入力画像から得られた出力画像に対して、前記参照画像の空間情報に基づいて動き補償を行なう動き補償部と、
前記動き補償により得られた補間出力画像と、前記現フレームの前記入力画像とを前記フィードバック調整量に基づいて混合することにより、前記現フレームの前記出力画像を生成するブレンド部と
を備える画像処理装置。
［２］
前記動き補償部は、前記現フレームの前記参照画像上の注目画素と、前記１つ前のフレームの前記参照画像上の前記注目画素近傍の画素との輝度差により定まる重みを用いて、前記１つ前のフレームの前記出力画像における前記注目画素近傍の画素を重み付き加算することで、前記補間出力画像を生成する
［１］に記載の画像処理装置。
［３］
立体画像を表示させるための右画像と左画像との視差を示す視差画像を前記入力画像として生成する視差検出部と、
前記右画像または前記左画像に基づいて前記参照画像を生成する生成部と
をさらに備える［２］に記載の画像処理装置。
【符号の説明】
【０１４６】
１１  画像処理装置，  ２２  動き検出部，  ２４  動き補償部，  ２５  ブレンド部，  １０１  画像処理装置，  １１１  ブロックステレオマッチング部，  １１２  画像縮小部，  １１４  時空間フィルタ部
【図１】
2013059016.tif 000014
【図２】
2013059016.tif 000015
【図３】
2013059016.tif 000016
【図４】
2013059016.tif 000017
【図５】
2013059016.tif 000018
【図６】
2013059016.tif 000019
【図７】
2013059016.tif 000020
【図８】
2013059016.tif 000021
【図９】
2013059016.tif 000022
【図１０】
2013059016.tif 000023