(57)【特許請求の範囲】
【請求項１】
フレーム画像を連続的に取得する画像取得部と、
該画像取得部により取得したフレーム画像に対して所定の処理を施すことにより出力フレーム画像を生成する処理部と、
該処理部により生成された出力フレーム画像を蓄積する画像蓄積部と、を備え、
前記処理部が、
前記画像取得部により取得されたフレーム画像を基準フレーム画像とし、直前に出力された出力フレーム画像を参照フレーム画像として、前記基準フレーム画像の対象画素と、前記参照フレーム画像における前記対象画素と対応する画素位置の対応画素との相関性を示す信頼度を算出する信頼度算出手段と、
前記信頼度に基づいて、前記対象画素と前記対応画素とを合成する際の巡回係数の候補値となる仮巡回係数を画素毎に算出する仮巡回係数算出手段と、
前記仮巡回係数の分布を示す仮巡回係数画像の前記仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行い、前記仮巡回係数画像の各画素位置における入力された前記フレーム画像および出力する前記出力フレーム画像と同じ座標位置の膨張後の仮巡回係数を各画素位置の巡回係数として決定する巡回係数決定手段と、
該巡回係数決定手段により決定された前記巡回係数に基づいて、前記対象画素と前記対応画素とを合成する画像合成手段と、
を備える画像処理装置。
【請求項２】
前記巡回係数決定手段が、各画素位置について、該各画素位置を含む所定領域の仮巡回係数のうち最も低い値を示すものを前記各画素位置の巡回係数として決定する請求項１に記載の画像処理装置。
【請求項３】
前記巡回係数決定手段が、前記仮巡回係数の分布を示す仮巡回係数画像を生成し、該仮巡回係数画像を縮小し、縮小した仮巡回係数画像に膨張処理を行い、膨張処理を行った仮巡回係数画像を拡大し、拡大した仮巡回係数画像に基づいて巡回係数を決定する請求項１又は請求項２に記載の画像処理装置。
【請求項４】
フレーム画像を連続的に取得するステップと、
前記フレーム画像に対して所定の処理を施すことにより出力フレーム画像を生成するステップと、
生成された前記出力フレーム画像を蓄積するステップと、を備え、
前記出力フレーム画像を生成するステップが、
前記取得されたフレーム画像を基準フレーム画像とし、直前に出力された出力フレーム画像を参照フレーム画像として、基準フレーム画像の対象画素と、参照フレーム画像における前記対象画素と対応する画素位置の対応画素との相関性を示す信頼度を算出するステップと、
前記信頼度に基づいて、前記対象画素と前記対応画素とを合成する際の巡回係数の候補値となる仮巡回係数を画素毎に算出するステップと、
前記仮巡回係数の分布を示す仮巡回係数画像の前記仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行い、前記仮巡回係数画像の各画素位置における入力された前記フレーム画像および出力する前記出力フレーム画像と同じ座標位置の膨張後の仮巡回係数を各画素位置の巡回係数として決定するステップと、
該巡回係数を決定するステップにより決定された前記巡回係数に基づいて、前記対象画素と前記対応画素とを合成するステップと、
をコンピュータに実行させる画像処理プログラム。
【請求項５】
フレーム画像を連続的に取得するステップと、
前記フレーム画像に対して所定の処理を施すことにより出力フレーム画像を生成するステップと、
生成された前記出力フレーム画像を蓄積するステップと、を備え、
前記出力フレーム画像を生成するステップが、
前記取得されたフレーム画像を基準フレーム画像とし、直前に出力された出力フレーム画像を参照フレーム画像として、基準フレーム画像の対象画素と、参照フレーム画像における前記対象画素と対応する画素位置の対応画素との相関性を示す信頼度を算出するステップと、
前記信頼度に基づいて、前記対象画素と前記対応画素とを合成する際の巡回係数の候補値となる仮巡回係数を画素毎に算出するステップと、
前記仮巡回係数の分布を示す仮巡回係数画像の前記仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行い、前記仮巡回係数画像の各画素位置における入力された前記フレーム画像および出力する前記出力フレーム画像と同じ座標位置の膨張後の仮巡回係数を各画素位置の巡回係数として決定するステップと、
該巡回係数を決定するステップにより決定された前記巡回係数に基づいて、前記対象画素と前記対応画素とを合成するステップと、
を備える画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びプログラムに関するものである。
【背景技術】
【０００２】
従来、画像データに対するノイズ除去技術として、所謂巡回型ノイズ低減方法が知られている。これは、例えば、処理済みの前フレーム画像と現フレーム画像との間で動き検出を行い、検出結果に基づいてこれらの画像の合成比率を示す巡回係数を算出し、算出した巡回係数を用いて合成することによりノイズを低減するものである。このような巡回型ノイズ低減を行う画像処置装置の例として、特許文献１には、動き検出の結果と、記憶されている前回巡回係数とを用いて今回巡回係数を決定するものが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００６／０２５３９６号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、一般に、巡回型ノイズ低減処理においては、動いている被写体の残像が発生しないように、動き検出結果や、フレーム間差分値等の動き補償の信頼度に基づいて巡回係数を決定する。
しかしながら、実際にはノイズ等の影響により、被写体の動きのみを評価することが困難である。例えば、動き補償は正しいがノイズが多い領域（以下、「領域１」という）と、動き補償は正しくないが似た画素値の被写体が動いた領域（以下、「領域２」という）とでは画像間の差分値等の評価値が同等の値となる。従って、これらの領域に対して、同じ巡回係数を適用してノイズ低減処理を行うと、例えば、領域１では、ノイズは低減さえるが、領域２では残像が発生してしまうという不具合がある。また、残像が発生しないようにノイズ低減処理の強度を弱く、すなわち、巡回係数を小さくすると領域１ではノイズが十分に低減されなくなってしまうという不具合がある。
【０００５】
本発明は、上記問題に鑑みてなされたものであって、被写体の動きに基づく残像を抑制しながら、十分なノイズ低減処理を行うことができる画像処理装置、画像処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明は以下の手段を提供する。
本発明は、フレーム画像を連続的に取得する画像取得部と、該画像取得部により取得したフレーム画像に対して所定の処理を施すことにより出力フレーム画像を生成する処理部と、該処理部により生成された出力フレーム画像を蓄積する画像蓄積部と、を備え、前記処理部が、前記画像取得部により取得されたフレーム画像を基準フレーム画像とし、前記画像蓄積部に蓄積され直前に出力された出力フレーム画像を参照フレーム画像として、前記基準フレーム画像の対象画素と、前記参照フレーム画像における前記対象画素と対応する画素位置の対応画素との相関性を示す信頼度を算出する信頼度算出手段と、前記信頼度に基づいて、前記対象画素と前記対応画素とを合成する際の巡回係数の候補値となる仮巡回係数を画素毎に算出する仮巡回係数算出手段と、前記仮巡回係数の分布を示す仮巡回係数画像の前記仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行い、前記仮巡回係数画像の各画素位置における入力された前記フレーム画像および出力する前記出力フレーム画像と同じ座標位置の膨張後の仮巡回係数を各画素位置の巡回係数として決定する巡回係数決定手段と、該巡回係数決定手段により決定された前記巡回係数に基づいて、前記対象画素と前記対応画素とを合成する画像合成手段と、を備える画像処理装置を提供する。
【０００７】
本発明によれば、基準フレーム画像の対象画素と該対象画素に対応する参照フレーム画像の画素位置の対応画素との相関性を示す信頼度を算出し、この信頼度に基づいて仮巡回係数を画素毎に算出すると共に、仮巡回係数に基づいて、該仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行うことにより、適切な値を各画素位置の最終的な巡回係数として決定するので、各画素位置に対して適切な巡回係数を定めることができる。従って、残像を抑制しながら、巡回係数の小さい領域が過度に大きくなることを防止するので、十分にノイズを低減した画像を取得することができる。また、膨張処理を行うことにより、往復移動する被写体の場合には、とりわけ高い残像低減効果を得ることができる。
【０００８】
上記発明において、巡回係数決定手段が、各画素位置について、該各画素位置を含む所定領域の仮巡回係数のうち最も低い値を示すものを前記各画素位置の巡回係数として決定することが好ましい。
例えば、動体と背景の画素値が近い場合には、仮巡回係数の値が高くなり、見掛け上信頼度が高い領域においても実際には基準フレーム画像と参照フレーム画像との相関性が低い場合がある。このような場合には、合成した画像に残像が発生する虞があるが、膨張処理、すなわち、各画素位置について、該画素位置を含む所定領域の仮巡回係数のうち最も低い値を示すものを各画素位置の巡回係数として決定することで、最も低い値を示す仮巡回係数を巡回係数として設定する領域（即ち動体及びその周囲の領域）が広がるので、動体と背景の画素値が近い場合においても残像の発生を抑制することができる。
【０００９】
上記発明において、前記巡回係数決定手段が、前記仮巡回係数の分布を示す仮巡回係数画像を生成し、該仮巡回係数画像を縮小し、縮小した仮巡回係数画像に膨張処理を行い、膨張処理を行った仮巡回係数画像を拡大し、拡大した仮巡回係数画像に基づいて巡回係数を決定することが好ましい。
このようにすることで、膨張処理の演算量を削減することができる。
【００１０】
また、本発明は、フレーム画像を連続的に取得するステップと、前記フレーム画像に対して所定の処理を施すことにより出力フレーム画像を生成するステップと、生成された前記出力フレーム画像を蓄積するステップと、を備え、前記出力フレーム画像を生成するステップが、前記取得されたフレーム画像を基準フレーム画像とし、直前に出力された出力フレーム画像を参照フレーム画像として、前記基準フレーム画像の対象画素と、前記参照フレーム画像における前記対象画素と対応する画素位置の対応画素との相関性を示す信頼度を算出するステップと、前記信頼度に基づいて、前記対象画素と前記対応画素とを合成する際の巡回係数の候補値となる仮巡回係数を画素毎に算出するステップと、前記仮巡回係数の分布を示す仮巡回係数画像の前記仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行い、前記仮巡回係数画像の各画素位置における入力された前記フレーム画像および出力する前記出力フレーム画像と同じ座標位置の膨張後の仮巡回係数を各画素位置の巡回係数として決定するステップと、該巡回係数を決定するステップにより決定された前記巡回係数に基づいて、前記対象画素と前記対応画素とを合成するステップと、をコンピュータに実行させる画像処理プログラムを提供する。
【００１１】
また、本発明は、フレーム画像を連続的に取得するステップと、前記フレーム画像に対して所定の処理を施すことにより出力フレーム画像を生成するステップと、生成された前記出力フレーム画像を蓄積するステップと、を備え、前記出力フレーム画像を生成するステップが、前記取得されたフレーム画像を基準フレーム画像とし、直前に出力された出力フレーム画像を参照フレーム画像として、前記基準フレーム画像の対象画素と、前記参照フレーム画像における前記対象画素と対応する画素位置の対応画素との相関性を示す信頼度を算出するステップと、前記信頼度に基づいて、前記対象画素と前記対応画素とを合成する際の巡回係数の候補値となる仮巡回係数を画素毎に算出するステップと、前記仮巡回係数の分布を示す仮巡回係数画像の前記仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行い、前記仮巡回係数画像の各画素位置における入力された前記フレーム画像および出力する前記出力フレーム画像と同じ座標位置の膨張後の仮巡回係数を各画素位置の巡回係数として決定するステップと、該巡回係数を決定するステップにより決定された前記巡回係数に基づいて、前記対象画素と前記対応画素とを合成するステップと、を備える画像処理方法を提供する。
【発明の効果】
【００１２】
本発明によれば、被写体の動きに基づく残像を抑制しながら、十分なノイズ低減処理を行うことができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態に係る画像処理装置の概略構成を示すブロック図である。
【図２】本発明の一実施形態に係る画像処理装置において、入力されたフレーム画像が順次合成されていく様子を示した説明図である。
【図３】本発明の一実施形態に係る画像処理装置における信頼度算出の際のフローチャートである。
【図４】本発明の一実施形態に係る画像処理装置における信頼度算出の際の様子を示した説明図である。
【図５】本発明の一実施形態に係る画像処理装置における信頼度と仮巡回係数βＮとの関係を示すグラフである。
【図６】本発明の一実施形態に係る画像処理装置における画像処理の様子を示す説明図である。
【図７】図６の比較例として、従来の画像処理装置における画像処理の一例を示す説明図である。
【図８】本発明の一実施形態の変形例に係る画像処理装置における画像処理の様子を示す説明図である。
【図９】本発明の一実施形態の変形例に係る画像処理装置において画像処理の一例を示す説明図である。
【発明を実施するための形態】
【００１４】
以下に、本発明の一実施形態に係る画像処理装置について図面を参照して説明する。
【００１５】
図１は、画像処理装置の概略構成を示している。画像処理装置は、図２に示すように、入力されたフレーム画像と先に出力されたフレーム画像とを適宜合成してフレーム画像を生成し、生成されたフレーム画像を順次出力し、これを巡回、すなわち繰り返すことにより動画像を出力するものである。
【００１６】
このため、画像処理装置は、図１に示すように、画像取得部２、該画像取得部により取得したフレーム画像に対して所定の処理を施すことにより出力フレーム画像を生成する処理部３、該処理部により生成された出力フレーム画像、すなわち、処理済みの画像データ（以下、「前フレーム画像（参照フレーム画像）」という）を蓄積する画像蓄積部４を備えている。
また、処理部３は、取得したフレーム画像に対して所定の処理を施すために、動き補償部１２、信頼度算出部１３、仮巡回係数算出部１４、巡回係数決定部１５、空間フィルタ部１６及び画像合成部１７を備えている。
画像取得部２は、図示しない撮像装置により撮像されたフレーム画像（以下、「現フレーム画像（基準フレーム画像）」という）を連続的に取得し、取得した現フレーム画像を動き補償部１２及び空間フィルタ部１６に出力する。
【００１７】
動き補償部１２は、画像取得部２で取得された現フレーム画像と画像蓄積部４に保存された前フレーム画像との間の動きベクトルを算出する動きベクトル算出部１１を備えている。そして、動き補償部１２は、動きベクトル算出部１１により算出した動きベクトルに基づいて、前フレーム画像と現フレーム画像との位置合わせを行う。すなわち、動きベクトル算出部１１により算出された動きベクトルを相殺するように、前フレーム画像の切り出し位置を決定し、現フレーム画像の任意の小領域と決定した切り出し位置から前フレーム画像の小領域とを切り出すことにより前フレーム画像と現フレーム画像との位置合わせを行い、前フレーム画像の小領域の中心画素を画像合成部１７に出力する。
ここで、動き補償は、現フレーム画像と前フレーム画像との間で小領域毎にブロックマッチング法等で算出した動きベクトルに基づいて、小領域毎に動き補償を行ってもよく、また、小領域毎の動きベクトルの統計に基づいて最も頻度の高い動きベクトルを画像全体のグローバルな動きべクトルとして動き補償を行ってもよい。
【００１８】
信頼度算出部１３は、動き補償部１２により動き補償された領域を用いて動き補償の信頼度、すなわち、現フレーム画像の対象画素と、前フレーム画像における対象画素と対応する画素位置の対応画素との相関性を示す信頼度を算出する。より詳細には、信頼度算出部１３は、図３のフローチャートに従って信頼度を算出する。
すなわち、図３に示すように、信頼度算出部１３は、動き補償部１２によって位置合わせされ抽出された現フレーム画像と前フレーム画像の小領域において、現フレーム画像の小領域を基準領域とし、前フレーム画像の小領域を参照領域とする（ステップＳ１０１）。続いて、基準領域と参照領域間で差分の絶対値和（ＳＡＤ）を算出する（ステップＳ１０２）。
【００１９】
図４に示す信頼度算出の例では、現フレーム画像の小領域にはノイズが多く含まれており、前フレーム画像の小領域はノイズが低減されている。この領域間でＳＡＤを算出し、ＳＡＤの値に応じて信頼度を算出する。なお、信頼度を算出するために、必ずしもＳＡＤを算出する必要はなく、例えば、相違度や類似度が評価できる差の２乗和（ＳＳＤ）や正規化相互相関（ＮＣＣ）などを算出しても良い。
【００２０】
次のステップＳ１０３では、算出されたＳＡＤに基づいて信頼度を算出する。ＳＡＤやＳＳＤのように相違度を評価する場合には、評価値が小さい程、信頼度は高く、評価値が大きい程、信頼度は低くするように算出する。また、動きベクトル算出部１２で信頼度を算出するための評価値が既に算出されている場合には、再度、評価値を算出せず動きベクトル算出部での評価値をそのまま利用しても良い。
【００２１】
仮巡回係数算出部１４は、信頼度算出部１３で算出された信頼度に基づいて仮巡回係数βＮを算出する。ここで、仮巡回係数βＮとは、現フレーム画像の対象画素と該対象画素と対応する前フレーム画像における対応画素位置の対応画素とを合成する際の合成比率である巡回係数を算出するための候補値であり、算出された仮巡回係数βＮは、巡回係数決定部１５に出力される。
【００２２】
図５に、信頼度と仮巡回係数βＮとの関係を示す。図５に示すように、信頼度が高くなる程、前フレーム画像の対象画素の仮巡回係数βＮが高くなるようにして算出する。なお、算出された全画素分の仮巡回係数は、縮小部（図示せず）でニアレストネイバー法やバイリニアなどの処理で縮小し、メモリ（図示せず）に一旦保存してもよい。この場合には、縮小した仮巡回係数を拡大部（図示せず）で領域拡大した後に利用することができる。
【００２３】
巡回係数決定部１５は、仮巡回係数算出部１４から入力された仮巡回係数βＮに基づいて、仮巡回係数が所定の値よりも低い画素からなる領域に対して膨張処理を行うことにより各画素位置の巡回係数αＮを決定する。決定した巡回係数αＮは、空間フィルタ部１６と画像合成部１７に出力される。なお、「所定の値」や膨張処理を施す範囲については、ノイズと残像との関係を考慮して適宜決定する。
【００２４】
空間フィルタ部１６は、決定された巡回係数αＮに応じて現フレーム画像にかかる空間フィルタの強度を制御して空間フィルタをかけ、その結果を画像合成部１７へ出力する。
画像合成部１７は、入力された現フレームの画像の空間フィルタ出力画素と動き補償部１２から入力された前フレーム画像の対応画素とを巡回係数αＮを用いて合成し、現フレーム画像として表示系などに出力するとともに、画像蓄積部４に保存する。
【００２５】
以下、上述した画像処理装置における作用について、図６を参照しつつ説明する。
ここでは、以下の条件下でフレーム画像を取得しているものとする。すなわち、三脚に固定されたカメラで撮影しており、背景Ｂは動いておらず、被写体としてのボールＯが左から右へ転がった場合における動画シーンであることとする。
また、入力されるフレーム画像にはノイズＮが多く含まれており、ボールＯは右へ転がって動いている為、シャッター速度との関係によりボールＯの左縁において動きによるぼけＧが発生している。この被写体の左縁のぼけている領域の輝度値は、背景の輝度値と似ていると仮定する。さらに、どの領域でも画像間の動きベクトルが求められなかった（動きベクトルが“０”）場合を仮定している。
【００２６】
この場合において、Ｎ−１番目のフレーム画像（以下、「Ｎフレーム」という）に対する画像処理は以下のように行われる。
動き補償部１２により、Ｎ−１フレームとＮ−２番目のフレーム画像（以下、「Ｎ−２フレーム」という）との間の位置合わせを行い、これに基づいて信頼度算出部１３により信頼度を算出する。この信頼度に基づいて、仮巡回係数算出部１４により仮巡回係数βＮ−１を算出し、算出した仮巡回係数βＮ−１を巡回係数決定部１５に出力する。
【００２７】
巡回係数決定部１５では、先に算出された画素毎の仮巡回係数βＮ−１に基づいて、Ｎ−１フレーム中の仮巡回係数β−１が所定の閾値よりも低い値の画素からなる領域を膨張して、Ｎ−１フレームの巡回係数（図中の右から２番目）αＮ−１として決定する。このように仮巡回係数の低い値の領域を膨張することで、仮巡回係数の算出で判定できる動く被写体領域よりも大きめの領域で巡回係数が低くなる。つまり、動く被写体近辺では前フレームの対応画素との合成率が低くなるため、残像が発生しない。以後、Ｎフレームの処理においても同様に処理を行う。
【００２８】
一方、参考例として、同様の条件下で撮影した画像データに対して、仮巡回係数を利用せずに画像処理を行う場合について、図７を参照して説明する。
Ｎ−１フレームの処理を行う場合、Ｎ−１フレームの入力画像（図中の左）とＮ−２フレームの出力画像（図中の右）間との信頼度から巡回係数（図中の真ん中）が算出され、算出された巡回係数（αＮ）を用いて、巡回係数（αＮ）をＮ−２フレームの出力画像の対応画素に乗算した値と、（１−αＮ）をＮ−１フレームの入力画像の空間フィルタ部からの対象画素の出力画素に乗算した値とを加算する。
【００２９】
加算結果の画素をＮ−１の出力画像の画素として、全画素分処理する。この際、Ｎ−２フレームの出力画像の被写体の左縁の領域とＮ−１フレームの入力画像の被写体の左縁より少し左部分の背景部との間で信頼度を算出することになり、信頼度を算出するためのＳＡＤ算出結果は輝度値が似ているため、ＳＡＤ値はある程度小さな値となってしまい、信頼度が低くはならない。
【００３０】
そのため、図５のように巡回係数を算出すると巡回係数は完全に低い値にはならない。この巡回係数用いて、合成した結果がＮ−１フレームの出力画像（図中の右）となる。またＮフレームの処理においても同様に処理を行う。その結果、Ｎ−１フレームとＮフレームの出力画像において、動いている被写体の左側に、前のフレームの出力画像でぼけている被写体の縁が残像として画像中に発生してしまう。
【００３１】
以上述べたように本実施形態によれば、仮の巡回係数の低い値の領域を周辺に膨張したものを巡回係数として設定し合成することにより、動きのある被写体領域近辺で適正な合成比率制御をすることが可能となり、残像を抑制しつつも、巡回係数の小さい領域が過度に広がることを防ぎ、十分なノイズ低減効果を得ることができる。
【００３２】
（変形例）
上述した実施形態においては、仮巡回係数が所定の閾値よりも低い値の画素からなる領域を膨張して、巡回係数として決定したが、巡回係数の決定方法はこれに限られるものではない。
図８に示すように、巡回係数決定部１５が、対象画素を含む所定範囲の仮巡回係数の中で最も低い仮巡回係数を対象画素の巡回係数として置き換えることにより、仮巡回係数が低い値の領域を膨張させることができる。
【００３３】
なお、上記した実施形態において、仮巡回係数をメモリに保存し、そのまま膨張処理しても良いし、一旦縮小してメモリに保存し、拡大してから膨張することもできる。また、図９に示すように、仮巡回係数を縮小してメモリに保存した後、巡回係数決定部で膨張処理してから拡大させたものを巡回係数として利用することもできる。
【符号の説明】
【００３４】
２  画像取得部
３  処理部
４  画像蓄積部
１１  動きベクトル算出部
１２  動き補償部
１３  信頼度算出部
１４  仮巡回係数算出部
１５  巡回係数決定部
１６  空間フィルタ部
１７  画像合成部
【図１】
0005927053.tif 000002
【図２】
0005927053.tif 000003
【図３】
0005927053.tif 000004
【図４】
0005927053.tif 000005
【図５】
0005927053.tif 000006
【図６】
0005927053.tif 000007
【図７】
0005927053.tif 000008
【図８】
0005927053.tif 000009
【図９】
0005927053.tif 000010