(57)【要約】【課題】動きベクトルを利用したブロックマッチングによるノイズ除去効率を向上できるようにする。【解決手段】動き検出部３１は、基準画像および参照画像に基づいて、動きベクトルを検出する。画枠内外判定部３４は、動きベクトルに基づいて、基準画像のブロックに対応する参照画像のブロックが参照画像の画枠外であるか否かを判定し、画枠フラグマップを生成する。MC画像生成部３２は、画枠フラグマップおよび動きベクトルに基づいて、MC画像を生成する。ノイズ低減演算部３３は、MC画像および基準画像を混合して、出力画像を生成する。演算強度算出部３５は、MC画像および基準画像より、混合比のマップである演算強度マップを生成する。平滑処理部３６は、ブロック単位の画枠フラグマップに基づいて、演算強度マップを画素単位で平滑処理する。本技術は、画像処理装置に適用することができる。【選択図】図４
2015177322.tif 000002
【特許請求の範囲】
【請求項１】
基準画像および参照画像に基づいて、動きベクトルを検出する動き検出部と、
前記動き検出部により検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する動き補償画像生成部と、
前記動き補償画像および前記基準画像を混合して、出力画像を生成する出力画像生成部と、
前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力する演算強度算出部と、
前記演算強度マップにおける前記演算強度を平滑処理する平滑処理部とを含み、
前記出力画像生成部は、前記平滑処理部により平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像を混合する
画像処理装置。
【請求項２】
前記動きベクトルに基づいて、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外であるか否かを判定する画枠内外判定部をさらに含み、
前記演算強度算出部は、前記画枠内外判定部における判定結果に基づいて、前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出する
請求項１に記載の画像処理装置。
【請求項３】
前記画枠内外判定部は、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外であるか否かの判定結果に基づいてフラグを設定し、前記フラグからなる画枠フラグマップを出力し、
前記演算強度算出部は、前記画枠フラグマップに基づいて、前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出する
請求項２に記載の画像処理装置。
【請求項４】
前記演算強度算出部は、前記画枠フラグマップに基づいて、前記動き補償画像および前記基準画像の混合比を算出し、前記ブロック単位の演算強度マップとして出力する
請求項３に記載の画像処理装置。
【請求項５】
前記平滑処理部は、前記画枠フラグマップに基づいて、前記ブロック単位の前記演算強度マップを画素単位で平滑処理し、前記動き補償画像および前記基準画像の画素単位の前記演算強度マップを生成する
請求項４に記載の画像処理装置。
【請求項６】
前記平滑処理部は、前記ブロック単位の前記演算強度マップを画素単位で平滑処理する複数のフィルタを含み、前記画枠フラグマップに基づいて、前記複数のフィルタを制御して、前記ブロック単位の前記演算強度マップを画素単位で平滑処理する
請求項５に記載の画像処理装置。
【請求項７】
前記画枠フラグマップに基づいて、前記動きベクトルを修正するベクトル修正部をさらに含み、
前記動き補償画像生成部は、前記ベクトル修正部により修正された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する
請求項３に記載の画像処理装置。
【請求項８】
前記ベクトル修正部は、前記画枠フラグマップに基づいて、前記基準画像が複数に分割された各ブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外である前記動きベクトルを、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠内となるベクトルに修正する
請求項７に記載の画像処理装置。
【請求項９】
基準画像および参照画像に基づいて、動きベクトルを検出し、
検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成し、
前記動き補償画像および前記基準画像を混合して、出力画像を生成し、
前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力し、
前記演算強度マップにおける前記演算強度を平滑処理するステップを含み、
平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像が混合される
画像処理方法。
【請求項１０】
基準画像および参照画像に基づいて、動きベクトルを検出する動き検出ステップと、
前記動き検出ステップの処理により検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する動き補償画像生成ステップと、
前記動き補償画像および前記基準画像を混合して、出力画像を生成する出力画像生成ステップと、
前記出力画像生成ステップの処理における前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力する演算強度算出ステップと、
前記演算強度マップにおける前記演算強度を平滑処理する平滑処理ステップとを含む処理をコンピュータに実行させ、
前記出力画像生成ステップの処理は、前記平滑処理ステップの処理により平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像を混合する
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、画像処理装置および方法、並びにプログラムに関し、特に、動きベクトルを利用したブロックマッチングによるノイズ除去（NR：Noise Reduction）効率を向上できるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
ノイズ除去（Noise Reduction）（以降、NRとも称する）技術として、ブロックマッチングにより動きベクトルを検出し、検出された動きベクトルの始点位置の基準画像における画素ブロックと、動きベクトルの終点位置の参照画像における画素ブロックとを重ね合わせることによりノイズを除去する技術が提案されている。
【０００３】
このNR技術は、基準画像における画素ブロックと対応する画素ブロックを、所定の時間間隔だけ異なるタイミングで入力される参照画像上でブロックマッチングにより検出し、検出された画素ブロックと基準画像における画素ブロックとの位置関係からローカルの動きベクトルを求め、そのまま使用するものが提案されている。また、画像内の全てのブロック、または一部のブロックのローカルの動きベクトルからグローバルモーションを求め、このグローバルモーションに対応する動きベクトルを利用するものも提案されている（特許文献１，２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２５８８６８号公報
【特許文献２】特開２００９−０５５３４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ブロックマッチングで、基準画像の画素ブロック（以下、単にブロックとも称する）に対応するブロックを参照画像上で検索する場合、対応するブロックが参照画像の画枠内に存在しないことがある。特に、グローバルモーションに対応する動きベクトルを使用する場合、各ブロックの動きベクトルが、グローバルモーションに対応する動きベクトルに制約されることになるので、画枠近くのブロックで算出された動きベクトルの終点位置は画枠外となることがある。
【０００６】
このため、グローバルモーションを使用する場合、基準画像のブロックに対応するブロックが参照画像の画枠内に存在しないことがある。
【０００７】
結果として、基準画像のブロックと、対応する参照画像上のブロックとを用いてノイズを除去しようとすると、適切にノイズを除去することができない恐れがあった。
【０００８】
本技術は、このような状況に鑑みてなされたものであり、特に、動きベクトルを利用した基準画像上のブロックに対する参照画像上のブロックが検出できない場合でも、適切にノイズ除去できるようにし、動きベクトルを利用したNR効率を向上させるものである。
【課題を解決するための手段】
【０００９】
本技術の一側面の画像処理装置は、基準画像および参照画像に基づいて、動きベクトルを検出する動き検出部と、前記動き検出部により検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する動き補償画像生成部と、前記動き補償画像および前記基準画像を混合して、出力画像を生成する出力画像生成部と、前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力する演算強度算出部と、前記演算強度マップにおける前記演算強度を平滑処理する平滑処理部とを含み、前記出力画像生成部は、前記平滑処理部により平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像を混合する。
【００１０】
前記動きベクトルに基づいて、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外であるか否かを判定する画枠内外判定部をさらに含ませるようにすることができ、前記演算強度算出部には、前記画枠内外判定部における判定結果に基づいて、前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出させるようにすることができる。
【００１１】
前記画枠内外判定部には、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外であるか否かの判定結果に基づいてフラグを設定させ、前記フラグからなる画枠フラグマップを出力させ、前記演算強度算出部には、前記画枠フラグマップに基づいて、前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出させるようにすることができる。
【００１２】
前記演算強度算出部には、前記画枠フラグマップに基づいて、前記動き補償画像および前記基準画像の混合比を算出させ、前記ブロック単位の演算強度マップとして出力させるようにすることができる。
【００１３】
前記平滑処理部には、前記画枠フラグマップに基づいて、前記ブロック単位の前記演算強度マップを画素単位で平滑処理させ、前記動き補償画像および前記基準画像の画素単位の前記演算強度マップを生成させるようにすることができる。
【００１４】
前記平滑処理部には、前記ブロック単位の前記演算強度マップを画素単位で平滑処理する複数のフィルタを含ませるようにすることができ、前記画枠フラグマップに基づいて、前記複数のフィルタを制御して、前記ブロック単位の前記演算強度マップを画素単位で平滑処理させるようにすることができる。
【００１５】
前記画枠フラグマップに基づいて、前記動きベクトルを修正するベクトル修正部をさらに含ませるようにすることができ、前記動き補償画像生成部には、前記ベクトル修正部により修正された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出させ、抽出した前記ブロックより動き補償画像を生成させるようにすることができる。
【００１６】
前記ベクトル修正部には、前記画枠フラグマップに基づいて、前記基準画像が複数に分割された各ブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外である前記動きベクトルを、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠内となるベクトルに修正させるようにすることができる。
【００１７】
本技術の一側面の画像処理方法は、基準画像および参照画像に基づいて、動きベクトルを検出し、検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成し、前記動き補償画像および前記基準画像を混合して、出力画像を生成し、前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力し、前記演算強度マップにおける前記演算強度を平滑処理するステップを含み、平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像が混合される。
【００１８】
本技術の一側面のプログラムは、基準画像および参照画像に基づいて、動きベクトルを検出する動き検出ステップと、前記動き検出ステップの処理により検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する動き補償画像生成ステップと、前記動き補償画像および前記基準画像を混合して、出力画像を生成する出力画像生成ステップと、前記出力画像生成ステップの処理における前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力する演算強度算出ステップと、前記演算強度マップにおける前記演算強度を平滑処理する平滑処理ステップとを含む処理をコンピュータに実行させ、前記出力画像生成ステップの処理は、前記平滑処理ステップの処理により平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像を混合する。
【００１９】
本技術の一側面においては、基準画像および参照画像に基づいて、動きベクトルが検出され、検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックが前記参照画像より抽出され、抽出された前記ブロックより動き補償画像が生成され、前記動き補償画像および前記基準画像が混合されて、出力画像が生成され、前記動き補償画像および前記基準画像の混合比が演算強度として算出され、演算強度マップとして出力され、前記演算強度マップにおける前記演算強度が平滑処理され、平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像が混合される。
【００２０】
本技術の一側面の画像処理装置は、独立した装置であっても良いし、画像処理を行うブロックであっても良い。
【発明の効果】
【００２１】
本技術の一側面によれば、動きベクトルを利用したブロックマッチングによるノイズ除去（NR：Noise Reduction）効率を向上させることが可能となる。
【図面の簡単な説明】
【００２２】
【図１】本技術を適用した画像処理装置の実施の形態の構成例を示す図である。
【図２】図１の画像処理装置における最初の入力画像における動作と、それ以降の画像の動作を説明する図である。
【図３】時系列の基準画像と参照画像との関係を説明する図である。
【図４】図１のNR部の第１の実施の形態の構成例を説明する図である。
【図５】図４のNR部によるNR処理を説明するフローチャートである。
【図６】図４のNR部によるNR処理を説明するフローチャートである。
【図７】動きベクトルが画枠外であるか否かを判定する処理を説明する図である。
【図８】演算強度マップを、画枠フラグマップを利用して処理する例を説明する図である。
【図９】演算強度マップを、画枠フラグマップを利用して平滑処理する例を説明する図である。
【図１０】平滑処理部に設けられている複数のフィルタの構成例を説明する図である。
【図１１】平滑処理部に設けられている複数のフィルタの制御に用いる処理対処ブロックの近傍のブロックの構成例を説明する図である。
【図１２】平滑処理する範囲の例を説明する図である。
【図１３】平滑処理部に設けられている複数のフィルタの他の構成例を説明する図である。
【図１４】図１のNR部の第２の実施の形態の構成例を説明する図である。
【図１５】図１４のNR部によるNR処理を説明するフローチャートである。
【図１６】図１４のNR部によるベクトルの修正を説明する図である。
【図１７】汎用のパーソナルコンピュータの構成例を説明する図である。
【発明を実施するための最良の形態】
【００２３】
なお、説明は以下の順序で行う。
１．第１の実施の形態（動きベクトルをそのまま利用するNR部の構成例）
２．変形例１
３．変形例２
４．変形例３
５．第２の実施の形態（動きベクトルを修正して利用するNR部の構成例）
６．変形例４
【００２４】
＜１．第１の実施の形態＞
＜画像処理装置の構成例＞
図１は、本技術を適用した画像処理装置の一実施の形態の構成例を示している。図１の情報処理装置は、入力画像信号よりノイズを除去して出力画像信号として出力する。
【００２５】
より詳細には、図１の画像処理装置は、制御部１０、信号選択部１１，１２、NR（Noise Reduction）処理部１３、およびバッファメモリ１４を備えている。
【００２６】
制御部１０は、マイクロコンピュータなどから構成されており、信号選択部１１，１２、NR（Noise Reduction）処理部１３、およびバッファメモリ１４を制御することにより、画像処理装置の動作の全体を制御する。
【００２７】
信号選択部１１は、最初の入力画像信号を、基準画像を構成する基準画像信号として信号選択部１２に出力する。また、信号選択部１１は、２枚目以降の入力画像信号を、参照画像を構成する参照画像信号としてNR処理部１３に、切り替えて供給する。さらに、NR処理部１３は、最初の入力画像信号のみをそのまま出力画像信号として出力し、バッファメモリ１４に記憶させる。
【００２８】
信号選択部１２は、基準画像信号として供給される、最初の入力画像信号をNR処理部１３に供給すると共に、以降において、バッファメモリ１４に記憶されている画像信号を参照画像信号としてNR処理部１３に供給する。
【００２９】
NR処理部１３は、直前の出力画像信号を、基準画像信号としてバッファメモリ１４より読み込むと共に、新たに入力される入力画像信号を参照画像信号として読み込み、ノイズを除去して出力画像信号として出力する。
【００３０】
より詳細には、図２で示されるように、信号選択部１１は、端子１１ａ乃至１１ｃを、信号選択部１２は、端子１２ａ乃至１２ｃを、さらに、NR処理部１３は、端子１３ａ乃至１３ｃおよびNR部１３ｄを備えている。
【００３１】
そして、最初の画像信号が入力されるとき、図２の上段で示されるように、信号選択部１１の端子１１ａ，１１ｃが接続され、信号選択部１２の端子１２ａ，１２ｂが接続され、さらに、NR処理部１３の端子１３ａ，１３ｂが接続される。この結果、信号選択部１１は、最初の入力画像信号を、基準画像を構成する基準画像信号として信号選択部１２に出力する。また、信号選択部１２は、基準画像信号として供給される、最初の入力画像信号をNR処理部１３に供給する。そして、NR処理部１３は、端子１３ａ，１３ｂを介して最初の入力画像信号をそのまま出力画像信号として出力し、バッファメモリ１４に記憶させる。
【００３２】
一方、２枚目以降の画像信号が入力されるとき、図２の下段で示されるように、信号選択部１１の端子１１ａ，１１ｂが接続され、信号選択部１２の端子１２ｂ，１２ｃが接続され、さらに、NR処理部１３の端子１３ａ，１３ｃが接続される。この結果、信号選択部１１は、２枚目以降の入力画像信号を、参照画像を構成する参照画像信号としてNR処理部１３に供給する。信号選択部１２は、バッファメモリ１４に記憶されている画像信号を基準画像信号としてNR部１３ｄに供給する。そして、NR部１３ｄは、直前の出力画像信号を、基準画像信号としてバッファメモリ１４より読み込むと共に、新たに入力される入力画像信号を参照画像信号として読み込み、ノイズを除去して出力画像信号を生成し出力する。
【００３３】
このような処理により、図３で示されるように、最初の入力画像信号は、最初の基準画像信号Ｆｉ１として入力されると、そのまま出力画像信号Ｆｏ１とされる。また、２枚目の入力画像信号が２枚目の参照画像Ｆｉ２とされ、直前の出力画像信号Ｆｏ１が、２枚目の基準画像信号Ｆｂ１とされる。NR部１３ｄは、この２枚目の参照画像Ｆｉ２および基準画像信号Ｆｂ１とから出力画像信号Ｆｏ２を生成して出力する。
【００３４】
同様に、３枚目の入力画像信号が３枚目の参照画像Ｆｉ３とされ、直前の出力画像信号Ｆｏ２が、３枚目の基準画像信号Ｆｂ２とされる。NR部１３ｄは、この３枚目の参照画像Ｆｉ３および基準画像信号Ｆｂ２とから出力画像信号Ｆｏ３を生成して出力する。
【００３５】
以降、順次同様の処理が繰り返されて、ｎ枚目の入力画像信号がｎ枚目の参照画像Ｆｉｎとされ、直前の出力画像信号Ｆｏｎ−１が、３枚目の基準画像信号Ｆｂｎ−１とされる。NR部１３ｄは、このｎ枚目の参照画像Ｆｉｎおよび基準画像信号Ｆｂｎ−１とから出力画像信号Ｆｏｎを生成して出力する。
【００３６】
＜NR部の第１の実施の形態の構成例＞
次に、図４を参照して、NR部１３ｄの構成例について説明する。
【００３７】
NR部１３ｄは、動き検出部３１、MC（Motion Compensation：動き補償）画像生成部３２、ノイズ低減演算部３３、画枠内外判定部３４、演算強度算出部３５、および平滑処理部３６を備えている。
【００３８】
動き検出部３１は、基準画像信号よりなる基準画像をｍ画素×ｎ画素からなる画素ブロック（以降、単に、ブロックとも称する）に分割し、これを基準ブロックとして、ブロックマッチングにより参照画像信号からなる参照画像上の対応するブロックを参照ブロックとして検索する。さらに、動き検出部３１は、検索された参照ブロックの所定の位置を終点とし、基準ブロックの所定の位置を始点とする動きベクトルを基準ブロックの動きベクトルとして検出し、MC画像生成部３２、および画枠内外判定部３４に供給する。
【００３９】
画枠内外判定部３４は、動き検出部３１より供給されてくる動きベクトルに基づいて、基準画像における各ブロックに対応する動きベクトルの終点位置が参照画像の画枠外となっているか否かを判定し、判定結果からなるフラグを設定する。また、画枠内外判定部３４は、各ブロックの位置に対応するフラグからなる画枠フラグマップを生成し、演算強度算出部３５に供給する。
【００４０】
MC（Motion Compensation：動き補償）画像生成部３２は、動きベクトルの情報に基づいて、参照画像内において、基準画像の各ブロックの動きベクトルの終点位置のブロックの画像を、始点位置に移動させることにより、基準画像に類似したMC画像を生成し、ノイズ低減演算部３３および演算強度算出部３５に供給する。この際、MC画像生成部３２は、画枠フラグマップの情報に基づいて、終点位置が画枠外であり、MC画像を生成できない領域のブロックについては、空白ブロック（画素値が０または最大値のブロック）とする。
【００４１】
演算強度算出部３５は、基準画像およびMC画像をブロック単位で比較し、類似している程度に基づいて、後述するノイズ低減演算部３３における、基準画像およびMC画像の混合比である演算強度を算出し、ブロック単位の演算強度マップを生成する。より具体的には、演算強度算出部３５は、まず、基準画像およびMC画像のブロック単位の画素間差分絶対値和Ｍなどを、類似度を示す指標として算出する。この画素間差分絶対値和Ｍは、基準画像およびMC画像の類似度が高いほど小さな値となるため、小さいほど両者が類似していることを示す。演算強度算出部３５は、この画素間差分絶対値和Ｍに応じた混合比（基準画像：MC画像）として、例えば、１：ｘとし、演算強度ｘとして算出する。ここで、ｘは、例えば、画素間差分絶対値和Ｍに反比例する値であって、０乃至１の値であるものとする。
【００４２】
この際、演算強度算出部３５は、画枠フラグマップを参照して、画枠外のブロックについては、MC画像の混合比を下げ、例えば、ｘを０に設定して、ブロック単位の演算強度マップを生成し、平滑処理部３６に供給する。
【００４３】
平滑処理部３６は、画枠フラグマップに基づいて、演算強度マップにおけるブロック単位の演算強度の分布を、画素単位で平滑化して、平滑化した画素単位の演算強度マップをノイズ低減演算部３３に供給する。
【００４４】
ノイズ低減演算部３３は、基準画像およびMC画像の各画素を、平滑処理部３６より供給されてくる、画素単位の演算強度マップで設定される混合比に基づいて合成し、出力画像を生成して、出力画像信号として出力する。
【００４５】
＜図４のNR部によるNR処理＞
次に、図５，図６のフローチャートを参照して、図４のNR部１３ｄによるNR処理について説明する。
【００４６】
ステップＳ１１において、制御部１０は、最初の画像信号が供給されてきたか否かを判定し、例えば、最初の画像信号が供給されてきた場合、処理は、ステップＳ４３（図６）に進む。
【００４７】
ステップＳ４３において、制御部１０は、図２の上段で示されるように、信号選択部１１，１２およびNR処理部１３を制御して、入力画像信号をそのまま出力画像信号として出力し、処理は、ステップＳ４１に進む。
【００４８】
ステップＳ４１において、制御部１０は、NR処理部１３より出力された出力画像信号をバッファメモリ１４に記憶させる。
【００４９】
ステップＳ４２において、制御部１０は、次の画像信号が存在するか否かを判定し、次の画像信号が存在しないと判定した場合、処理は、終了する。また、ステップＳ４２において、次の画像信号が存在すると判定された場合、処理は、ステップＳ１１（図５）に戻る。
【００５０】
尚、ステップＳ１１において、ステップＳ４２の処理の後、戻ってくる処理である場合、最初の画像信号ではない、すなわち、２枚目以降の画像信号であるので、処理は、ステップＳ１２に進む。
【００５１】
ステップＳ１２において、制御部１０は、図２の下段で示されるように、信号選択部１１，１２を制御して、入力画像信号を参照画像信号としてNR部１３ｄに供給させる。また、このとき、制御部１０は、バッファメモリ１４を制御して、記憶されている直前の画像信号を基準画像信号としてNR部１３ｄに供給させる。
【００５２】
ステップＳ１３において、動き検出部３１は、基準画像信号より構成される基準画像を複数のブロックに分割し、各ブロックについて、ブロックマンチングにより参照画像上の対応するブロックを検索する。そして、動き検出部３１は、検出された基準画像上のブロックの所定の位置を起点とし、参照画像における対応するブロックの所定の位置を終点とする動きベクトルを検出する。動き検出部３１は、検出した動きベクトルを基準画像上のブロックの位置に対応付けてMC画像生成部３２、および画枠内外判定部３４に出力する。この際、動き検出部３１は、各ブロックの上辺の位置Ｂ．ｔｏｐ、下辺の位置Ｂ．ｂｏｔｔｏｍ、左辺の位置Ｂ．ｌｅｆｔ、および右辺の位置Ｂ．ｒｉｇｈｔの情報を合わせて出力する。
【００５３】
ステップＳ１４において、画枠内外判定部３４は、基準画像が複数に分割されたブロックのうち、未処理ブロックのいずれかを処理対象ブロックに設定する。
【００５４】
ステップＳ１５において、画枠内外判定部３４は、処理対象ブロックの動きベクトルに基づいて検索される参照画像のブロックの位置が、画枠を超えるか否かを判定する。
【００５５】
例えば、図７の左上部で示されるような基準画像Ｆ１１で、かつ、図７の中央上部で示されるような参照画像Ｆ１２の場合、処理対象ブロックがブロックＢ１であるものとすると、動きベクトルＶ１に基づいて特定されるブロックは、ブロックＢ１１となる。この場合、参照画像のブロックＢ１１は、参照画像Ｆ１２の画枠Ｌ内に存在するので、画枠Ｌを超えていないと判定され、処理は、ステップＳ１６に進む。
【００５６】
より詳細には、画枠内外判定部３４は、図７の中央下部で示されるように、各ブロックＢの上辺の位置Ｂ．ｔｏｐが、画像Ｆの上辺の位置Ｆ．ｔｏｐより上であるか、下辺の位置Ｂ．ｂｏｔｔｏｍが、下辺の位置Ｆ．ｂｏｔｔｏｍより下であるか、左辺の位置Ｂ．ｌｅｆｔが、左辺の位置Ｆ．ｌｅｆｔより左側であるか、または、右辺の位置Ｂ．ｒｉｇｈｔが、右辺の位置Ｆ．ｒｉｇｈｔより右側であるか否かに基づいて、画枠Ｌを超えているか否かを判定する。
【００５７】
処理対象ブロックがブロックＢ１であり、動きベクトルＶ１に基づいて特定されるブロックが、ブロックＢ１１である場合、図７の中央下部で示されるブロックＢにおける画枠Ｆに対する条件と一致する。すなわち、参照画像のブロックＢ１１の上辺の位置Ｂ．ｔｏｐが、参照画像Ｆ１２の上辺の位置Ｆ．ｔｏｐよりも下の位置であり、かつ、下辺の位置Ｂ．ｂｏｔｔｏｍが、下辺の位置Ｆ．ｂｏｔｔｏｍよりも上の位置であり、かつ、左辺の位置Ｂ．ｌｅｆｔが、左辺の位置Ｆ．ｌｅｆｔよりも右側の位置であり、かつ、右辺の位置Ｂ．ｒｉｇｈｔが、右辺の位置Ｆ．ｒｉｇｈｔよりも左側の位置に存在する。結果として、ブロックＢ１１は、参照画像Ｆ１２の画枠Ｌ内に存在するので、画枠Ｌを超えていないと判定される。
【００５８】
ステップＳ１６において、画枠内外判定部３４は、処理対象ブロックに対応する画枠フラグＦｌａｇを０に設定する。
【００５９】
一方、ステップＳ１５において、例えば、処理対象ブロックがブロックＢ２であるものとすると、動きベクトルＶ２に基づいて特定されるブロックは、ブロックＢ１２となる。この場合、参照画像のブロックＢ１２は、参照画像Ｆ１２の画枠Ｌ内に存在しないので、画枠を超えていると判定され、処理は、ステップＳ１７に進む。
【００６０】
すなわち、この場合、参照画像のブロックＢ１２の右辺の位置Ｂ．ｒｉｇｈｔが、右辺の位置Ｆ．ｒｉｇｈｔよりも右側の位置に存在するので、ブロックＢ１２は、参照画像Ｆ１２の画枠Ｌ内に存在しないので、画枠Ｌを超えていると判定され、処理は、ステップＳ１７に進む。
【００６１】
ステップＳ１７において、画枠内外判定部３４は、処理対象ブロックに対応する画枠フラグＦｌａｇを１に設定する。
【００６２】
ステップＳ１８において、画枠内外判定部３４は、未処理のブロックがあるか否かを判定し、未処理のブロックが存在する場合、処理は、ステップＳ１４に戻る。すなわち、未処理のブロックがなく、全てのブロックの画枠の内外が判定されるまで、ステップＳ１４乃至Ｓ１８の処理が繰り返される。そして、ステップＳ１８において、未処理のブロックがない、すなわち、全てのブロックの画枠の内外が判定されたとみなされると、処理は、ステップＳ１９に進む。
【００６３】
ステップＳ１９において、画枠内外判定部３４は、全てのブロックについてのフラグＦｌａｇで示される画枠内外判定結果からなる画枠フラグマップをMC画像生成部３２、演算強度算出部３５、および平滑処理部３６に出力する。
【００６４】
すなわち、ステップＳ１４乃至Ｓ１８の処理が繰り返されることにより、各ブロックについて、画枠の内外が判定されて、図７の右下部で示されるように、画枠外に存在する場合、フラグＦｌａｇが１に設定され、画枠内に存在する場合、フラグＦｌａｇが０に設定される。この処理により、例えば、図７の右上部で示されるように、参照画像Ｆ１２に対して、動きベクトルに基づいて検索されるブロックが、ブロックＢ２１乃至Ｂ２４の場合、参照画像Ｆ１２の画枠Ｌより内側には存在しない、すなわち、外側に存在するとみなされ、フラグＦｌａｇは１に設定される。また、ブロックＢ２５，Ｂ２６の場合、参照画像Ｆ１２の画枠Ｌより内側には存在するとみなされ、フラグＦｌａｇは０に設定される。
【００６５】
ステップＳ２０において、MC画像生成部３２は、基準画像が複数に分割されたブロックのうち、未処理ブロックのいずれかを処理対象ブロックに設定する。
【００６６】
ステップＳ２１において、MC画像生成部３２は、画枠フラグマップを参照して、処理対象ブロックの画枠フラグＦｌａｇが１、すなわち、画枠外に存在するものであるとみなされたか否かを判定する。ステップＳ２１において、例えば、処理対象ブロックの画枠フラグＦｌａｇが０であり、画枠外ではないとみなされた場合、処理は、ステップＳ２２に進む。
【００６７】
ステップＳ２２において、MC画像生成部３２は、処理対象ブロックの動きベクトルに基づいて検索される参照画像のブロックを、処理対象ブロックの画像として設定し、MC画像の一部を生成する。すなわち、MC画像生成部３２は、基準画像における処理対象ブロックの位置に、参照ブロック内で動きベクトルに基づいて設定されるブロックの画像を当て嵌めることにより、MC画像を生成する。
【００６８】
一方、ステップ２１において、例えば、処理対象ブロックの画枠フラグＦｌａｇが１であり、画枠外であるとみなされた場合、処理は、ステップＳ２３に進む。
【００６９】
ステップＳ２３において、MC画像生成部３２は、処理対象ブロックの画像を、基準画像のブロックの画像に設定して、MC画像の一部を生成する。すなわち、この場合、参照画像に対応するブロックが存在しないので、MC画像生成部３２は、基準画像の画像をそのまま利用する。また、基準画像の画像供給を受けない場合、MC画像生成部３２は、処理対象ブロックの画像をブランクにする。
【００７０】
ステップＳ２４において、MC画像生成部３２は、未処理のブロックが存在するか否かを判定し、未処理のブロックが存在する場合、処理は、ステップＳ２０に戻る。すなわち、全てのブロックについてMC画像が生成されるまで、ステップＳ２０乃至Ｓ２４の処理が繰り返される。そして、ステップＳ２４において、未処理のブロックが存在しない、すなわち、MC画像の全てのブロックについて処理がなされて、MC画像が完成した場合、処理は、ステップＳ２５に進む。
【００７１】
ステップＳ２５において、MC画像生成部３２は、生成されたMC画像をノイズ低減演算部３３、および演算強度算出部３５に出力する。
【００７２】
ステップＳ２６（図６）において、演算強度算出部３５は、基準画像が複数に分割されたブロックのうち、未処理ブロックのいずれかを処理対象ブロックに設定する。
【００７３】
ステップＳ２７において、演算強度算出部３５は、処理対象ブロックの演算強度を算出する。より詳細には、演算強度算出部３５は、基準画像およびMC画像のブロック単位の画素間差分絶対値和Ｍなどを、類似度を示す指標として算出し、画素間差分絶対値和Ｍに応じた混合比（基準画像：MC画像）を、例えば、１：ｘとして、演算強度ｘを算出する。ここで、ｘは、例えば、画素間差分絶対値和Ｍに反比例する値であって、０乃至１の値であるものとする。
【００７４】
すなわち、基準画像およびMC画像のブロック間の画素間差分絶対値和Ｍが小さく、類似度が高い場合、例えば、演算強度算出部３５は、ｘを１に近い値に設定し、混合比（基準画像：MC画像）を設定する。この場合、MC画像の信頼度が高いので、演算強度算出部３５は、基準画像とMC画像とを１：１に近い比率で混合する。また、基準画像およびMC画像のブロック間の画素間差分絶対値和Ｍが大きく、類似度が低い場合、例えば、演算強度算出部３５は、ｘをゼロに近い値に設定し、MC画像の混合比を小さく設定する。すなわち、この場合、MC画像の信頼度が低いので、演算強度算出部３５は、基準画像の割合を高めるように混合する。
【００７５】
ステップＳ２８において、演算強度算出部３５は、画枠フラグマップを参照して、処理対象ブロックの画枠フラグＦｌａｇが１、すなわち、画枠外に存在するものであるとみなされたか否かを判定する。ステップＳ２８において、例えば、処理対象ブロックの画枠フラグＦｌａｇが１であり、画枠外であるとみなされた場合、処理は、ステップＳ２９に進む。
【００７６】
ステップＳ２９において、演算強度算出部３５は、処理対象ブロックの演算強度を低減させる。より具体的には、例えば、演算強度算出部３５は、処理対象ブロックの演算強度ｘである基準画像とMC画像との混合比のうち、MC画像の比率をゼロ（ｘ＝０）にする。
【００７７】
一方、ステップＳ２８において、例えば、処理対象ブロックの画枠フラグＦｌａｇが０であり、画枠外ではないとみなされた場合、ステップＳ２９の処理はスキップされる。
【００７８】
ステップＳ３０において、演算強度算出部３５は、未処理のブロックが存在するか否かを判定し、未処理のブロックが存在する場合、処理は、ステップＳ２６に戻る。すなわち、全てのブロックについて演算強度が算出されるまで、ステップＳ２６乃至Ｓ３０の処理が繰り返される。そして、ステップＳ３０において、未処理のブロックが存在しない、すなわち、全てのブロックについて演算強度が算出された場合、処理は、ステップＳ３１に進む。
【００７９】
ステップＳ３１において、演算強度算出部３５は、生成された演算強度の分布からなる演算強度マップを平滑処理部３６に出力する。
【００８０】
以上のように、ステップＳ２６乃至Ｓ３１の処理が繰り返されることにより、図８の左上部で示されるような演算強度マップＣＳＭ１が生成されると共に、これに対して、図８の左下部で示されるような画枠フラグマップＦＭに対応して、図８の右上部で示されるように、画枠Ｆ内に存在しないブロックについては、演算強度であるMC画像と基準画像との混合比のうち、MC画像の比率が０に設定されて、演算強度マップＣＳＭ２が出力される。
【００８１】
ここで、図８の左上部においては、垂直方向×水平方向に４ブロック×５ブロックの演算強度マップＣＳＭ１が示されており、各ブロックには演算強度に応じた色（斜線）が付されている。尚、図８においては、説明の関係上、演算強度が０以外の値であるブロックに斜線が付されている。また、図８の左下部の画枠フラグマップＦＭは、垂直方向×水平方向に４ブロック×５ブロックのフラグＦｌａｇからなるマップが示されており、最右列４ブロックおよび右から２列目の上から２段目までの合計６ブロックが、画枠フラグＦｌａｇが１に設定され、それ以外のブロックが０に設定されている。すなわち、最右列４ブロックおよび右から２列目の上から２段目までの合計６ブロックが、動きベクトルに基づいた対応するブロックが参照画像の画枠外であることが示されている。このため、上述したステップＳ２６乃至Ｓ３１の処理により、図８の右上部で示されるように、最右列４ブロックおよび右から２列目の上から２段目までの合計６ブロックが、演算強度が０にされている（斜線が付されていない状態にされている）。このような処理により、基準画像における各ブロックのうち、対応する参照画像上のブロックが画枠外となるブロックについては、MC画像の信頼度が低くなるので、後述するノイズ低減演算部３３による処理において、信頼性の低いMC画像の混合比を小さくし、基準画像の混合比を高めることが可能となる。
【００８２】
ステップＳ３２において、平滑処理部３６は、基準画像が複数に分割されたブロックのうち、未処理ブロックのいずれかを処理対象ブロックに設定する。
【００８３】
ステップＳ３３において、平滑処理部３６は、処理対象ブロックが画枠の内外の境界に存在するか否かを判定する。すなわち、図９の左上部の演算強度マップＣＳＭ２で示されるように、ブロックＢ５１が、処理対象ブロックである場合、図９の左下部の画枠フラグマップＦＭで示されるように、ブロックＢ５１に隣接する右上側、右側、右下側の３ブロックおよび上側の１ブロックの画枠フラグＦｌａｇが１であり、それ以外の隣接ブロックは画枠フラグＦｌａｇが０である。このため、処理対象ブロックであるブロックＢ５１は、境界に存在するブロックであると判定され、処理は、ステップＳ３４に進む。
【００８４】
ステップＳ３４において、平滑処理部３６は、処理対象ブロックの演算強度マップを画素単位で平滑化する。
【００８５】
より詳細には、平滑処理部３６は、処理対象ブロックを画素単位で平滑処理する複数のフィルタを備えており、処理対象ブロックの周辺のブロックの画枠フラグＦｌａｇの分布に基づいて、それぞれのオン、またはオフ（フィルタを掛けるか、または掛けないか）を制御して、画素単位で平滑化する。
【００８６】
より詳細には、平滑処理部３６は、例えば、図１０で示されるフィルタｐａｔｔｅｒｎＵ，ｐａｔｔｅｒｎＬ，ｐａｔｔｅｒｎＢ，ｐａｔｔｅｒｎＲ，ｐａｔｔｅｒｎＬＵ，ｐａｔｔｅｒｎＲＵ，ｐａｔｔｅｒｎＲＢ，ｐａｔｔｅｒｎＢＬの８枚のフィルタを備えている。尚、図１０の各フィルタは、８画素×８画素のブロックサイズに対するフィルタの例を示したものである。また、各マス内の値は、各画素のMC画像の各画素の混合比である演算強度ｘに対するフィルタ係数が記載されている。
【００８７】
すなわち、図１０のフィルタｐａｔｔｅｒｎＵは、処理対象ブロックの上側のブロックＵが画枠フラグＦｌａｇ＝１であるときに適用されるフィルタであり、各列について、各画素が属するブロックの演算強度に対して上から１／８，２／８，３／８，・・・７／８，１が乗じられることが示されている。
【００８８】
また、フィルタｐａｔｔｅｒｎＬは、処理対象ブロックの左側のブロックＬが画枠フラグＦｌａｇ＝１であるときに適用されるフィルタであり、各行について、各画素が属するブロックの演算強度に対して左から１／８，２／８，３／８，・・・７／８，１が乗じられることが示されている。
【００８９】
さらに、フィルタｐａｔｔｅｒｎＢは、処理対象ブロックの下側のブロックＢがフラグＦｌａｇ＝１であるときに適用されるフィルタであり、各列について、各画素が属するブロックの演算強度に対して下から１／８，２／８，３／８，・・・７／８，１が乗じられることが示されている。
【００９０】
また、フィルタｐａｔｔｅｒｎＲは、処理対象ブロックの右側のブロックＲが画枠フラグＦｌａｇ＝１であるときに適用されるフィルタであり、各行について、各画素が属するブロックの演算強度に対して右から１／８，２／８，３／８，・・・７／８，１が乗じられることが示されている。
【００９１】
さらに、フィルタｐａｔｔｅｒｎＬＵは、処理対象ブロックの左上側のブロックＬＵが画枠フラグＦｌａｇ＝１であって、上側および左側のブロックＵ，Ｌがいずれも画枠フラグＦｌａｇ＝０であるときに適用されるフィルタである。また、フィルタｐａｔｔｅｒｎＬＵは、各画素が属するブロックの演算強度について左上の画素から１／８が乗じられ、左上の画素から水平方向または垂直方向に１画素離れるごとに１／８ずつ加算された値が乗じられることが示されている。
【００９２】
また、フィルタｐａｔｔｅｒｎＲＵは、処理対象ブロックの右上側のブロックＲＵが画枠フラグＦｌａｇ＝１であって、上側および右側のブロックＵ，Ｒがいずれも画枠フラグＦｌａｇ＝０であるときに適用されるフィルタである。また、フィルタｐａｔｔｅｒｎＲＵは、各画素が属するブロックの演算強度について右上の画素から１／８が乗じられ、右上の画素から水平方向または垂直方向に１画素離れるごとに１／８ずつ加算される値が乗じられることが示されている。
【００９３】
さらに、フィルタｐａｔｔｅｒｎＲＢは、処理対象ブロックの右下側のブロックＲＢが画枠フラグＦｌａｇ＝１であって、下側および右側のブロックＢ，Ｒがいずれも画枠フラグＦｌａｇ＝０であるときに適用されるフィルタである。また、フィルタｐａｔｔｅｒｎＲＢは、各画素の属するブロックの演算強度について右下の画素から１／８が乗じられ、右下の画素から水平方向または垂直方向に１画素離れるごとに１／８ずつ加算される値が乗じられることが示されている。
【００９４】
また、フィルタｐａｔｔｅｒｎＬＢは、処理対象ブロックの左下側のブロックＬＢが画枠フラグＦｌａｇ＝１であって、下側および左側のブロックＢ，Ｌがいずれも画枠フラグＦｌａｇ＝０であるときに適用されるフィルタである。また、フィルタｐａｔｔｅｒｎＬＢは、各画素の属するブロックの演算強度について左下の画素から１／８が乗じられ、左下の画素から水平方向または垂直方向に１画素離れるごとに１／８ずつ加算される値が乗じられることが示されている。
【００９５】
平滑処理部３６は、処理対象ブロックについて、その周辺のブロックの画枠フラグＦｌａｇの分布に応じて、フィルタｐａｔｔｅｒｎＵ乃至ｐａｔｔｅｒｎＬＢのそれぞれをオンまたはオフに制御して、処理対象ブロックを構成する画素単位で演算強度を設定する。
【００９６】
例えば、図９の左上部のブロックＢ５１が処理対象ブロックである場合、処理対象ブロックの上側のブロックおよび右側のブロックの画枠フラグＦｌａｇ＝１である。そこで、平滑処理部３６は、フィルタｐａｔｔｅｒｎＵ，ｐａｔｔｅｒｎＲをオンに制御して、それ以外のフィルタをオフに制御する。結果として、図９の右上部で示されるようにブロックＢ５１に対してフィルタを掛けて、画素単位の演算強度マップを設定することで、ブロック単位の演算強度マップを平滑処理する。その他の境界とみなされるブロックについても、同様の処理がなされることにより、図９の右上部で示されるような、境界となるブロックが画素単位の演算強度マップとされることにより、境界が平滑処理される。
【００９７】
尚、図９の右上部のブロックＢ５１においては、ブロックＢ５１に属する画素のうち、左下部の画素の演算強度が最も高く、右上部の画素に近づくにつれて、演算強度が小さく設定され、右上部の画素の演算強度が最小となる。従って、図９におけるブロックＢ５１の画素単位の演算強度の分布を、色を付して表現すれば、左下から右上に向かって配色が変化するグラデーションが付されることになる。
【００９８】
また、同様に、図９の右中部で示されるように処理対象ブロックＢ６１が画枠Ｆ２１の境界であるような場合、上側、右側、および下側に隣接するブロックの画枠フラグＦｌａｇ＝１であるので、平滑処理部３６は、フィルタｐａｔｔｅｒｎＵ，ｐａｔｔｅｒｎＲ，ｐａｔｔｅｒｎＢをオンにして、それ以外のフィルタをオフに制御する。
【００９９】
さらに、同様に、図９の右下部で示されるように処理対象ブロックＢ６１が画枠Ｆ２１の境界であるような場合、右側、および下側に隣接するブロックの画枠フラグＦｌａｇ＝１であるので、平滑処理部３６は、フィルタｐａｔｔｅｒｎＲ，ｐａｔｔｅｒｎＢをオンにして、それ以外のフィルタをオフに制御する。
【０１００】
以上のような処理により、例えば、図１０の左上部で示されるような演算強度マップＣＳＭ１１が入力されると、図１０の右下部で示されるような演算強度マップＣＳＭ１２で示されるように境界付近が平滑化される。尚、図１０の演算強度マップＣＳＭ１１は、ブロック単位の演算強度マップであり、演算強度マップＣＳＭ１２は、画素単位の演算強度マップである。また、演算強度マップＣＳＭ１１，ＣＳＭ１２は、いずれも黒色領域が対応するブロックまたは画素の演算強度が１であることを表しており、白色が対応する演算強度が０であることを表していおり、その中間色が色味に応じた演算強度であることを示している。
【０１０１】
さらに、ステップＳ３３において、処理対象ブロックが画枠の境界ではないとみなされた場合、ステップＳ３４の処理がスキップされる。
【０１０２】
ステップＳ３５において、平滑処理部３６は、未処理のブロックが存在するか否かを判定し、未処理のブロックが存在する場合、処理は、ステップＳ３２に戻る。すなわち、全てのブロックについて処理がなされるまで、ステップＳ３２乃至Ｓ３５の処理が繰り返される。そして、ステップＳ３５において、未処理のブロックが存在しない、すなわち、全ての画枠境界のブロックについて平滑処理がなされたとみなされた場合、処理は、ステップＳ３６に進む。
【０１０３】
ステップＳ３６において、平滑処理部３６は、平滑処理がなされた画素単位の演算強度マップをノイズ低減演算部３３に出力する。尚、この際、平滑処理部３６は、ブロック単位で演算強度が設定されているブロックについては、ブロックを構成する画素のそれぞれについて、属するブロックの演算強度を設定し、全体として画素単位の演算強度マップが構成されるようにしてノイズ低減演算部３３に出力する。
【０１０４】
ステップＳ３７において、ノイズ低減演算部３３は、出力画像を構成する各画素のうち、未処理の画素のいずれかを処理対象画素に設定する。
【０１０５】
ステップＳ３８において、ノイズ低減演算部３３は、平滑処理部３６より供給されてくる演算強度マップに基づいて、処理対象画素の演算強度を読み出し、読み出した演算強度、すなわち、MC画像、および基準画像の各画素の混合比に基づいて、処理対象画素のMC画像、および基準画像のそれぞれの画素値を混合して出力画像の画素値を生成する。
【０１０６】
ステップＳ３９において、ノイズ低減演算部３３は、未処理の画素が存在するか否かを判定し、未処理の画素が存在する場合、処理は、ステップＳ３７に戻る。すなわち、未処理の画素が存在しないとみなされるまで、ステップＳ３７乃至Ｓ３９の処理が繰り返されて、出力画像の各画素が生成される。そして、ステップＳ３９において、未処理の画素が存在しない、すなわち、出力画像の全画素が生成されたとみなされた場合、処理は、ステップＳ４０に進む。
【０１０７】
ステップＳ４０において、ノイズ低減演算部３３は、出力画像の画像信号を出力し、処理は、ステップＳ４１に進む。
【０１０８】
ステップＳ４１において、制御部１０は、バッファメモリ１４に、出力された出力画像信号を記憶させる。
【０１０９】
ステップＳ４２において、制御部１０は、次の画像信号が存在するか否かを判定し、次の画像信号が存在する場合、処理は、ステップＳ１１（図５）に戻り、ステップＳ１１乃至Ｓ４２の処理が繰り返されて、次の画像信号が存在しない場合、処理は、終了する。
【０１１０】
以上の処理により、基準画像上のブロックに対応するブロックが、参照画像上に存在するか否かを示す画枠フラグＦｌａｇを設定すると共にブロック単位で基準画像とMC画像の混合比からなる演算強度を設定するようにした。さらに、画枠フラグＦｌａｇの値が変化する境界となるブロックについては、画素単位で演算強度を平滑処理することで、演算強度を適切に設定するようにし、平滑処理された混合比に基づいて、基準画像とMC画像とを混合することにより、ノイズを低減するようにした。結果として、動きベクトルを利用して参照画像上にブロックを検出できない領域を含んでも、基準画像のノイズを適切に低減させることが可能となる。
【０１１１】
＜２．変形例１＞
以上においては、図１１の左から２列目で示されるように、処理対象ブロックに対して、上側、左上側、左側、左下側、下側、右下側、右側、右上側に隣接するブロックＵ，ＬＵ，Ｌ，ＬＢ，Ｂ，ＲＢ，Ｒ，ＲＵの画枠フラグＦｌａｇを考慮して８種類のフィルタのオン、またはオフを切り替える例について説明してきた。しかしながら、処理対象ブロックの近傍のブロックの画枠フラグＦｌａｇを考慮するようにできればよいので、例えば、図１１の最左列の処理対象ブロックに対して上側、左側、下側、右側に隣接するブロックＵ，Ｌ，Ｂ，Ｒの画枠フラグＦｌａｇのみを考慮して８種類のフィルタのオン、またはオフを切り替えるようにしてもよい。
【０１１２】
また、同様に、図１１の右から２列目で示されるように、処理対象ブロックに対して、隣接する上側、左上側、左側、左下側、下側、右下側、右側、右上側に隣接するブロックＵ，ＬＵ，Ｌ，ＬＢ，Ｂ，ＲＢ，Ｒ，ＲＵの画枠フラグＦｌａｇに加えて、２段上側、２段右側、２段下側、２段右側に隣接するブロックＵＵ，ＬＬ，ＢＢ，ＲＲの画枠フラグＦｌａｇを考慮して８種類のフィルタのオン、またはオフを切り替えるようにしてもよい。
【０１１３】
さらに、図１１の最右列で示されるように、図１１の右から２列目で示されるブロックに加えて、処理対象ブロックに対して、左上に隣接するブロックの上側、および左側に隣接するブロックＬＵＵ，ＬＬＵ、処理対象ブロックに対して、左下に隣接するブロックの左側、および下側に隣接するブロックＬＬＢ，ＬＢＢ、処理対象ブロックに対して、右下に隣接するブロックの下側、および右側に隣接するブロックＢＢＲ，ＢＲＲ、並びに、処理対象ブロックに対して、右上に隣接するブロックの右側、および上側に隣接するブロックＵＲＲ，ＵＵＲを考慮して、８種類のフィルタのオン、またはオフを切り替えるようにしてもよい。
【０１１４】
＜３．変形例２＞
以上においては、図１２の左部で示されるように、画枠フラグＦｌａｇの値が変化する１ブロック分の範囲Ｕ１について画素単位で演算強度を平滑処理する例について説明してきたが、平滑処理する範囲は、さらに広い範囲であってもよい。例えば、図１２の中部で示されるように、境界を含む２ブロック分の範囲Ｕ２の演算強度が画素単位で平滑処理されるようにしてもよいし、図１２の右部で示されるように、境界を含む３ブロック分の範囲Ｕ３の演算強度が画素単位で平滑処理されるようにしてもよい。
【０１１５】
＜４．変形例３＞
以上においては、平滑処理部３６により、図１０で示されるような８種類のフィルタを利用して画素単位で演算強度を平滑化する例について説明してきたが、例えば、図１３で示されるように、フィルタｐａｔｔｅｒｎＵ，ｐａｔｔｅｒｎＬ，ｐａｔｔｅｒｎＢ，ｐａｔｔｅｒｎＲの４枚のフィルタのみを利用するようにしてもよい。このようにすることで、フィルタによる演算処理負荷を低減することが可能となり、処理速度を向上させることが可能となる。
【０１１６】
＜５．第２の実施の形態＞
＜NR部の第２の実施の形態の構成例＞
以上においては、基準画像における処理対象ブロックの動きベクトルで特定される参照画像上のブロックが画枠外である場合、MC画像を生成する際には、ブランクとするか、または、基準画像のブロックを利用する例について説明してきた。しかしながら、処理対象ブロックに対応するブロックが参照画像上のブロックとなるように動きベクトルを修正するようにしてもよい。
【０１１７】
図１４は、処理対象ブロックに対応する参照画像上のブロックが画枠外である場合、処理対象ブロックに対応するブロックが参照画像上のブロックとなるように動きベクトルを修正するようにしたNR部１３ｄの構成例を示している。尚、図１４のNR部１３ｄにおいて、図４のNR部１３ｄと同一の機能を備えた構成については同一の名称および同一の符号を付しており、その説明は適宜省略するものとする。
【０１１８】
すなわち、図１４のNR部１３ｄにおいて、図４のNR部１３ｄと異なる点は、ベクトル修正部１０１をさらに設けた点である。尚、図１４においては、動き検出部３１により生成される動きベクトルは、ブロック単位でベクトル修正部１０１に供給される。また、画枠内外判定部３４により生成される画枠フラグマップは、MC画像生成部３２に対してではなく、ベクトル修正部１０１に供給される。
【０１１９】
ベクトル修正部１０１は、画枠内外判定部３４より供給されてくる画枠フラグマップに基づいて、処理対象ブロックに対応する参照画像上のブロックが画枠外である場合、処理対象ブロックに対応するブロックが参照画像上のブロックとなるように動きベクトルを修正する。
【０１２０】
＜図１４のNR部によるNR処理＞
次に、図１５のフローチャートを参照して、図１４のNR部１３ｄによるNR処理について説明する。尚、図１５のフローチャートにおけるステップＳ１１１乃至Ｓ１１９の処理については、図５のフローチャートにおけるステップＳ１１乃至Ｓ１９の処理と同様であるので、その説明は省略するものとする。また、図１５における丸印のＡ乃至Ｃ以降の処理については、図６のフローチャートにおける処理と同様であるので、そのフローチャートおよび説明は省略するものとする。
【０１２１】
すなわち、ステップＳ１１３において動きベクトルが検出されて、ステップＳ１１４乃至Ｓ１１９の処理により画枠フラグマップが生成されると処理は、ステップＳ１２０に進む。
【０１２２】
ステップＳ１２０において、ベクトル修正部１０１は、基準画像が複数に分割されたブロックのうち、未処理ブロックのいずれかを処理対象ブロックに設定する。
【０１２３】
ステップＳ１２１において、ベクトル修正部１０１は、画枠フラグマップに基づいて、処理対象ブロックの画枠フラグＦｌａｇが１であるか否かを判定する。ステップＳ１２１において、例えば、処理対象ブロックの画枠フラグＦｌａｇが１であり、対応する動きベクトルにより特定される参照画像上のブロックが画枠外である場合、処理は、ステップＳ１２２に進む。
【０１２４】
ステップＳ１２２において、ベクトル修正部１０１は、処理対象ブロックの動きベクトルに基づいて特定される参照画像上のブロックが画枠内となるように動きベクトルを修正する。
【０１２５】
すなわち、例えば、処理対象ブロックが、図１６の左上部で示されるようにブロックＢ１０１であり、動きベクトルＶ１１に基づいた対応する参照画像の画枠Ｆ３１上のブロックがブロックＢ１０２であり、参照画像の画枠外である場合、ベクトル修正部１０１は、例えば、図１６の右上部で示されるように、動きベクトルＶ１１を動きベクトルＶ１２に修正する。
【０１２６】
より具体的には、ベクトル修正部１０１は、図１６の右上部で示されるように、処理対象ブロックに対応するブロックが、参照画像の画枠Ｆ３１内となるように、動きベクトルＶ１１の大きさを小さくし、動きベクトルＶ１２とするように修正する。
【０１２７】
ステップＳ１２３において、ベクトル修正部１０１は、未処理のブロックが存在するか否かを判定し、未処理のブロックが存在する場合、処理は、ステップＳ１２０に戻る。
【０１２８】
また、ステップＳ１２１において、処理対象ブロックの画枠フラグＦｌａｇが１ではない場合、ステップＳ１２２の処理がスキップされる。
【０１２９】
すなわち、未処理のブロックがなくなるまで、つまり、全ブロックについて、動きベクトルに基づいて求められる参照画像上のブロックが画枠外の動きベクトルが、画枠内となるように修正されるまで、ステップＳ１２０乃至Ｓ１２３の処理が繰り返される。
【０１３０】
そして、ステップＳ１２３において、未処理のブロックが存在しないとみなされた場合、処理は、ステップＳ１２４に進む。
【０１３１】
ステップＳ１２４において、ベクトル修正部１０１は、基本画像における全ブロックの修正された動きベクトルをMC画像生成部３２に出力する。
【０１３２】
ステップＳ１２５において、MC画像生成部３２は、基準画像が複数に分割されたブロックのうち、未処理ブロックのいずれかを処理対象ブロックに設定する。
【０１３３】
ステップＳ１２６において、MC画像生成部３２は、処理対象ブロックの動きベクトルに基づいて検索される参照画像のブロックを、処理対象ブロックの画像として設定し、MC画像の一部を生成する。すなわち、MC画像生成部３２は、基準画像における処理対象ブロックの位置に、参照ブロック内で動きベクトルに基づいて設定されるブロックの画像を当て嵌めることにより、MC画像を生成する。
【０１３４】
ステップＳ１２７において、MC画像生成部３２は、未処理のブロックが存在するか否かを判定し、未処理のブロックが存在する場合、処理は、ステップＳ１２５に戻る。すなわち、全てのブロックについてMC画像が生成されるまで、ステップＳ１２５乃至Ｓ１２７の処理が繰り返される。そして、ステップＳ１２７において、未処理のブロックが存在しない、すなわち、MC画像の全てのブロックについて処理がなされて、MC画像が完成した場合、処理は、ステップＳ１２８に進む。
【０１３５】
ステップＳ１２８において、MC画像生成部３２は、生成されたMC画像をノイズ低減演算部３３、および演算強度算出部３５に出力する。
【０１３６】
すなわち、以上の処理により、基準画像における全ブロックのうち、動きベクトルに基づいて設定される参照画像上のブロックが参照画像の画枠外である場合、参照画像上のブロックが画枠内となるように動きベクトルが修正される。この結果、MC画像生成部３２においては、基準画像上の全ブロックに対応する参照画像上のブロックは、画枠内に全て存在することになるので、対応するブロックが用いられることで、MC画像を確実に生成されるようにすることができる。ただし、動きベクトルが修正されることにより生成されるMC画像用のブロックは、信頼性が低いことになるが、これについては、演算強度が調整されることにより基準画像との混合比が調整されることになるので、適度に混合させることが可能となる。
【０１３７】
＜６．変形例４＞
以上においては、動きベクトルの修正については、ベクトルの方向を維持し、大きさを小さくして、対応するブロックが参照画像上の画枠内となるように修正する例について説明してきたが、水平方向、および垂直方向の画枠外となっているいずれか、または、その両方を画枠内となるように修正するようにしてもよい。すなわち、例えば、図１６の右中部で示されるように、ブロックＢ１０２が参照画像の画枠Ｆ３１の水平方向に画枠外となっている場合、動きベクトルＶ１３で示されるように動きベクトルを修正し、対応するブロックＢ１０３で示されるように、水平方向に参照画像の画枠Ｆ３１内となるようにしてもよい。
【０１３８】
また、図１６の右下部で示されるように、動きベクトルＶ１１を動きベクトルＶ１４で示されるように、ベクトルの大きさをゼロにすることで、基準画像上のブロックと同一の位置のブロックを参照画像上から利用するようにしてもよい。
【０１３９】
以上のいずれにおいても、基準画像上のブロックに対応する動きベクトルで特定される参照画像上のブロックが、参照画像の画枠外であるか否かを示す画枠フラグマップを生成し、画枠フラグマップに基づいて、ブロック単位の演算強度を画素単位の演算強度により平滑処理して、演算強度に応じた混合比率でMC画像および基準画像を混合して出力画像を生成するようにしたので、基準画像上の各ブロックと参照画像上の対応するブロックとを合成することで、ノイズを抑制することが可能となる。結果として、動きベクトルを利用したブロックマッチングによるノイズ除去（NR：Noise Reduction）効率を向上させることが可能となる。
【０１４０】
尚、以上においては、基準画像を複数に分割したブロック単位の、いわゆる、ローカル動きベクトルを利用した例について説明してきたが、複数のローカル動きベクトルなどから求められるグローバルモーションに基づいた動きベクトルを利用しても同様の効果を得ることができる。
【０１４１】
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１４２】
図１７は、汎用のパーソナルコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)１００１を内蔵している。CPU１００１にはバス１００４を介して、入出力インタ-フェイス１００５が接続されている。バス１００４には、ROM(Read Only Memory)１００２およびRAM(Random Access Memory)１００３が接続されている。
【０１４３】
入出力インタ-フェイス１００５には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部１００６、処理操作画面や処理結果の画像を表示デバイスに出力する出力部１００７、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部１００８、LAN（Local Area Network）アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部１００９が接続されている。また、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ(Mini Disc)を含む）、もしくは半導体メモリなどのリムーバブルメディア１０１１に対してデータを読み書きするドライブ１０１０が接続されている。
【０１４４】
CPU１００１は、ROM１００２に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア１０１１ら読み出されて記憶部１００８にインストールされ、記憶部１００８からRAM１００３にロードされたプログラムに従って各種の処理を実行する。RAM１００３にはまた、CPU１００１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１４５】
以上のように構成されるコンピュータでは、CPU１００１が、例えば、記憶部１００８に記憶されているプログラムを、入出力インタフェース１００５及びバス１００４を介して、RAM１００３にロードして実行することにより、上述した一連の処理が行われる。
【０１４６】
コンピュータ（CPU１００１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア１０１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０１４７】
コンピュータでは、プログラムは、リムーバブルメディア１０１１をドライブ１０１０に装着することにより、入出力インタフェース１００５を介して、記憶部１００８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部１００９で受信し、記憶部１００８にインストールすることができる。その他、プログラムは、ROM１００２や記憶部１００８に、あらかじめインストールしておくことができる。
【０１４８】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１４９】
また、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０１５０】
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１５１】
例えば、本技術は、１つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０１５２】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１５３】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１５４】
尚、本技術は、以下のような構成も取ることができる。
（１）  基準画像および参照画像に基づいて、動きベクトルを検出する動き検出部と、
前記動き検出部により検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する動き補償画像生成部と、
前記動き補償画像および前記基準画像を混合して、出力画像を生成する出力画像生成部と、
前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力する演算強度算出部と、
前記演算強度マップにおける前記演算強度を平滑処理する平滑処理部とを含み、
前記出力画像生成部は、前記平滑処理部により平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像を混合する
画像処理装置。
（２）  前記動きベクトルに基づいて、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外であるか否かを判定する画枠内外判定部をさらに含み、
前記演算強度算出部は、前記画枠内外判定部における判定結果に基づいて、前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出する
（１）に記載の画像処理装置。
（３）  前記画枠内外判定部は、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外であるか否かの判定結果に基づいてフラグを設定し、前記フラグからなる画枠フラグマップを出力し、
前記演算強度算出部は、前記画枠フラグマップに基づいて、前記出力画像生成部における前記動き補償画像および前記基準画像の混合比を演算強度として算出する
（２）に記載の画像処理装置。
（４）  前記演算強度算出部は、前記画枠フラグマップに基づいて、前記動き補償画像および前記基準画像の混合比を算出し、前記ブロック単位の演算強度マップとして出力する
（３）に記載の画像処理装置。
（５）  前記平滑処理部は、前記画枠フラグマップに基づいて、前記ブロック単位の前記演算強度マップを画素単位で平滑処理し、前記動き補償画像および前記基準画像の画素単位の前記演算強度マップを生成する
（４）に記載の画像処理装置。
（６）  前記平滑処理部は、前記ブロック単位の前記演算強度マップを画素単位で平滑処理する複数のフィルタを含み、前記画枠フラグマップに基づいて、前記複数のフィルタを制御して、前記ブロック単位の前記演算強度マップを画素単位で平滑処理する
（５）に記載の画像処理装置。
（７）  前記画枠フラグマップに基づいて、前記動きベクトルを修正するベクトル修正部をさらに含み、
前記動き補償画像生成部は、前記ベクトル修正部により修正された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する
（３）に記載の画像処理装置。
（８）  前記ベクトル修正部は、前記画枠フラグマップに基づいて、前記基準画像が複数に分割された各ブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠外である前記動きベクトルを、前記基準画像におけるブロックに対応する前記参照画像におけるブロックが前記参照画像の画枠内となるベクトルに修正する
（７）に記載の画像処理装置。
（９）  基準画像および参照画像に基づいて、動きベクトルを検出し、
検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成し、
前記動き補償画像および前記基準画像を混合して、出力画像を生成し、
前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力し、
前記演算強度マップにおける前記演算強度を平滑処理するステップを含み、
平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像が混合される
画像処理方法。
（１０）  基準画像および参照画像に基づいて、動きベクトルを検出する動き検出ステップと、
前記動き検出ステップの処理により検出された前記動きベクトルに基づいて、前記基準画像が複数に分割された各ブロックに対応するブロックを前記参照画像より抽出し、抽出した前記ブロックより動き補償画像を生成する動き補償画像生成ステップと、
前記動き補償画像および前記基準画像を混合して、出力画像を生成する出力画像生成ステップと、
前記出力画像生成ステップの処理における前記動き補償画像および前記基準画像の混合比を演算強度として算出し、演算強度マップとして出力する演算強度算出ステップと、
前記演算強度マップにおける前記演算強度を平滑処理する平滑処理ステップとを含む処理をコンピュータに実行させ、
前記出力画像生成ステップの処理は、前記平滑処理ステップの処理により平滑処理された演算強度マップに基づいて、前記動き補償画像および前記基準画像を混合する
プログラム。
【符号の説明】
【０１５５】
１０  制御部，  １１，１２  信号選択部，  １３  NR処理部，  １３ｄ  NR部，  １４  バッファメモリ，  ３１  動き検出部，  ３２  MC画像生成部，  ３３  ノイズ低減演算部，  ３４  画枠内外判定部，  ３５  演算強度算出部，  ３６  平滑処理部，  １０１  ベクトル修正部
【図１】
2015177322.tif 000003
【図２】
2015177322.tif 000004
【図３】
2015177322.tif 000005
【図４】
2015177322.tif 000006
【図５】
2015177322.tif 000007
【図６】
2015177322.tif 000008
【図７】
2015177322.tif 000009
【図８】
2015177322.tif 000010
【図９】
2015177322.tif 000011
【図１０】
2015177322.tif 000012
【図１１】
2015177322.tif 000013
【図１２】
2015177322.tif 000014
【図１３】
2015177322.tif 000015
【図１４】
2015177322.tif 000016
【図１５】
2015177322.tif 000017
【図１６】
2015177322.tif 000018
【図１７】
2015177322.tif 000019