(57)【要約】【課題】より低い計算コストで画像のノイズ除去を行うことを可能とする。【解決手段】実施形態の画像処理装置は、第１の画素を含む第１の領域と第２の画素含む第２の領域とを比較して第２の領域に対する第１の領域の変化の有無を判定し、変化が有ると判定された場合に、第１の領域と予め用意された複数の基底ベクトルとの間の相関係数を算出して出力し、変化が無いと判定された場合に、第２の領域と複数の基底ベクトルとの間の相関係数を出力する。画像処理装置は、出力された相関係数に基づき複数の基底ベクトルから選択した１以上の基底ベクトルで構成される部分空間に対して、第１の領域と第３の画素を含む第３の領域とを射影してそれぞれ射影係数を求め、射影係数から算出した、部分空間における第１の領域と第３の領域との距離に基づき重みが割り当てられた第３の画素の画素値に基づき、第１の画素の画素値を更新する。【選択図】図１
2014085884.tif 000002
【特許請求の範囲】
【請求項１】
第１の画素を含む第１の領域と第２の画素含む第２の領域とを比較し、該第２の領域に対する該第１の領域の変化の有無を判定する判定部と、
前記判定部で前記変化が有ると判定された場合に、前記第１の領域と予め用意された複数の基底ベクトルとの間の相関係数を算出して出力し、前記判定部で前記変化が無いと判定された場合に、前記第２の領域と該複数の基底ベクトルとの間の相関係数を出力する相関算出部と、
前記相関算出部から出力された相関係数に基づき前記複数の基底ベクトルから選択した１以上の基底ベクトルで構成される部分空間に対して、前記第１の領域と第３の画素を含む第３の領域とを射影してそれぞれ射影係数を求める射影部と、
前記射影係数から前記部分空間における前記第１の領域と前記第３の領域との距離を算出する距離算出部と、
前記距離に基づき前記第３の画素に割り当てる重みを算出する重み算出部と、
前記重みが割り当てられた前記第３の画素の画素値に基づき前記第１の画素の画素値を更新する画素値算出部と
を有する
ことを特徴とする画像処理装置。
【請求項２】
前記判定部は、
前記第１の領域に含まれる画素の画素値の平均値と、前記第２の領域に含まれる画素の画素値の平均値との差分絶対値を閾値と比較して、該差分絶対値が該閾値以下の場合に、前記変化が無いと判定する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判定部は、
前記第１の領域に含まれる画素の画素値と、前記第２の領域に含まれる画素の画素値との差分絶対値和を閾値と比較して、該差分絶対値和が該閾値以下の場合に、前記変化が無いと判定する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
第１の画素を含む第１の領域を第１成分と第２成分とに分離する分離部と、
前記第１の領域の前記第１成分と、第２の画素を含む第２の領域の前記第１成分とを比較し、該第２の領域に対する該第１の領域の変化の有無を判定する判定部と、
前記判定部で前記変化が有ると判定された場合に、前記第１の領域の前記第２成分と予め用意された複数の基底ベクトルとの間の相関係数を算出して出力し、前記判定部で前記変化が無いと判定された場合に、前記第２の領域の前記第２成分と該複数の基底ベクトルとの間の相関係数を出力する相関算出部と、
前記相関算出部から出力された相関係数に基づき前記複数の基底ベクトルから選択された１以上の基底ベクトルと、前記分離部が前記第１成分を分離するために用いたベクトルとから構成される部分空間に対して、前記第１の領域と第３の画素を含む第３の領域とを射影してそれぞれ射影係数を求める射影部と、
前記射影係数から前記部分空間における前記第１の領域と前記第３の領域との距離を算出する距離算出部と、
前記距離に基づき前記第３の画素に割り当てる重みを算出する重み算出部と、
前記重みが割り当てられた前記第３の画素の画素値に基づき前記第１の画素の画素値を更新する画素値算出部と
を有する
ことを特徴とする画像処理装置。
【請求項５】
前記分離部は、
画素を含む領域を、直流成分からなる前記第１成分と、交流成分からなる前記第２成分とに分離する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記分離部は、
画素を含む領域を、エッジ成分からなる前記第１成分と、該領域から該エッジ成分を減算した前記第２成分とに分離する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項７】
複数の前記基底ベクトルが予め用意され、
前記分離部は、
複数の前記基底ベクトルと前記第１領域との相関係数をそれぞれ算出し、該第１領域を、少なくとも最も相関係数の大きい基底ベクトルを含む第１成分と、それ以外の基底ベクトルを含む第２成分とに分離する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項８】
前記基底ベクトルは、画像に対して主成分分析を行なって生成したベクトルであり、
前記分離部は、
前記基底ベクトルを求めた前記主成分分析の固有値が閾値以上の基底ベクトルを含む第１成分と、該固有値が該閾値未満の基底ベクトルを含む第２成分とに分離する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
第１の画素を含む第１の領域と第２の画素含む第２の領域とを比較し、該第２の領域に対する該第１の領域の変化の有無を判定する判定ステップと、
前記判定ステップにより前記変化が有ると判定された場合に、前記第１の領域と予め用意された複数の基底ベクトルとの間の相関係数を算出して出力し、前記判定ステップにより前記変化が無いと判定された場合に、前記第２の領域と該複数の基底ベクトルとの間の相関係数を出力する相関算出ステップと、
前記相関算出ステップにより出力された相関係数に基づき前記複数の基底ベクトルから選択した１以上の基底ベクトルで構成される部分空間に対して、前記第１の領域と第３の画素を含む第３の領域とを射影してそれぞれ射影係数を求める射影ステップと、
前記射影係数から前記部分空間における前記第１の領域と前記第３の領域との距離を算出する距離算出ステップと、
前記距離に基づき前記第３の画素に割り当てる重みを算出する重み算出ステップと、
前記重みが割り当てられた前記第３の画素の画素値に基づき前記第１の画素の画素値を更新する画素値算出ステップと
を有する
ことを特徴とする画像処理方法。
【請求項１０】
第１の画素を含む第１の領域を第１成分と第２成分とに分離する分離ステップと、
前記第１の領域の前記第１成分と、第２の画素を含む第２の領域の前記第１成分とを比較し、該第２の領域に対する該第１の領域の変化の有無を判定する判定ステップと、
前記判定ステップにより前記変化が有ると判定された場合に、前記第１の領域の前記第２成分と予め用意された複数の基底ベクトルとの間の相関係数を算出して出力し、前記判定ステップにより前記変化が無いと判定された場合に、前記第２の領域の前記第２成分と該複数の基底ベクトルとの間の相関係数を出力する相関算出ステップと、
前記相関算出ステップにより出力された相関係数に基づき前記複数の基底ベクトルから選択された１以上の基底ベクトルと、前記分離ステップが前記第１成分を分離するために用いたベクトルとから構成される部分空間に対して、前記第１の領域と第３の画素を含む第３の領域とを射影してそれぞれ射影係数を求める射影ステップと、
前記射影係数から前記部分空間における前記第１の領域と前記第３の領域との距離を算出する距離算出ステップと、
前記距離に基づき前記第３の画素に割り当てる重みを算出する重み算出ステップと、
前記重みが割り当てられた前記第３の画素の画素値に基づき前記第１の画素の画素値を更新する画素値算出ステップと
を有する
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
画像におけるランダムなノイズを提言する画像処理技術として、Ｎｏｎ−ｌｏｃａｌ  Ｍｅａｎｓと呼ばれるアルゴリズムが知られている。Ｎｏｎ−ｌｏｃａｌ  Ｍｅａｎｓは、処理対象の画素である対象画素を中心とする所定サイズのブロック内の画素値を並べたベクトル（対象ベクトル）と、対象画素の周辺の周辺画素を中心とする当該所定サイズのブロック内の画素値を並べたベクトル（周辺ベクトル）とを求める。そして、対象ベクトルと周辺ベクトルとの間のベクトル間距離に応じた重みを用いて周辺画素の画素値の加重平均を計算して対象画素を置き換えることで、ノイズを除去している。
【０００３】
また、Ｎｏｎ−ｌｏｃａｌ  Ｍｅａｎｓの画質を向上させるために、予め主成分分析により画像の基底ベクトルを求め、対象ベクトルと相関の高い基底ベクトルによって構成された部分空間に対象ベクトルと周辺ベクトルとを射影し、当該部分空間において対象ベクトルと周辺ベクトルとの間のベクトル間距離を求める手法が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１１／０８６５９４号
【非特許文献】
【０００５】
【非特許文献１】Ａ．  Ｂｕａｄｅｓｓ，  Ｂ．  Ｃｏｌｌ，  Ｊ．−Ｍ．  Ｍｏｒｅｌ，  “Ａ  Ｎｏｎ−ｌｏｃａｌ  Ａｌｇｏｒｉｔｈｍ  ｆｏｒ  Ｉｍａｇｅ  Ｄｅｎｏｉｓｉｎｇ，”  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ  ２００５，  ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｓｏｃｉｅｔｙ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ，  ｖｏｌ．２，  ｐｐ．６０−６５．
【非特許文献２】河田諭志，五十川賢造，松本信幸，“自然画像の主成分分析を用いたＮｏｎ−ｌｏｃａｌ  Ｍｅａｎｓによるノイズ除去，”  ＳＳＩＩ２０１０，第１６回画像センシングシンポジウム，ＩＳ２−０６  １−６．
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した基底ベクトルに対する射影を求める手法では、画像内の全対象ベクトルについて射影計算を行うため、計算コストが掛かるという問題点があった。
【０００７】
本発明が解決しようとする課題は、より低い計算コストで画像のノイズ除去を行うことが可能な画像処理装置および画像処理方法を提供することにある。
【課題を解決するための手段】
【０００８】
実施形態の画像処理装置は、第１の画素を含む第１の領域と第２の画素含む第２の領域とを比較して第２の領域に対する第１の領域の変化の有無を判定し、変化が有ると判定された場合に、第１の領域と予め用意された複数の基底ベクトルとの間の相関係数を算出して出力し、変化が無いと判定された場合に、第２の領域と複数の基底ベクトルとの間の相関係数を出力する。画像処理装置は、出力された相関係数に基づき複数の基底ベクトルから選択した１以上の基底ベクトルで構成される部分空間に対して、第１の領域と第３の画素を含む第３の領域とを射影してそれぞれ射影係数を求め、射影係数から算出した、部分空間における第１の領域と第３の領域との距離に基づき重みが割り当てられた第３の画素の画素値に基づき、第１の画素の画素値を更新する。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施形態に係る画像処理装置の一例の構成を示すブロック図である。
【図２】図２は、第１の実施形態に係る画像処理装置の一例の動作を示すフローチャートである。
【図３】図３は、第１の実施形態に係る、入力画像と各領域および各画素との関係を示す図である。
【図４】図４は、第１の実施形態の変形例に係る、入力画像を動画とした場合の処理について説明するための図である。
【図５】図５は、第２の実施形態による画像処理装置の一例の構成を示すブロック図である。
【図６】図６は、第２の実施形態に係る画像処理装置の一例の動作を示すフローチャートである。
【図７】図７は、第１の実施形態による画像処理装置に適用可能なコンピュータ装置の一例の構成を示すブロック図である。
【発明を実施するための形態】
【００１０】
（第１の実施形態）
以下、第１の実施形態に係る画像処理装置について説明する。図１は、第１の実施形態に係る画像処理装置１０の一例の構成を示す。画像処理装置１０は、入力バッファ１００と、判定部１０１と、相関算出部１０２と、選択部１０３と、射影算出部１０４と、距離算出部１０５と、重み算出部１０６と、画素値算出部１０７とを有する。入力バッファ１００は、入力画像として入力された所定量（例えば１フレーム分）の画像データを一時的に保持する。
【００１１】
判定部１０１と、相関算出部１０２と、選択部１０３と、射影算出部１０４と、距離算出部１０５と、重み算出部１０６と、画素値算出部１０７とは、協働するハードウェアによって構成してもよいし、一部または全部をＣＰＵ(Central  Processing  Unit)上で動作するプログラムにより構成してもよい。
【００１２】
入力画像は、例えばカラー画像であって、入力画像を形成する各画素は、赤色、緑色および青色による３の画素値を有する。以下では、簡単のため、各画素が１の画素値を有するものとして説明する。なお、入力画像は、カラー画像に限られず、画素値として輝度値のみを持つモノクロ画像であってもよい。
【００１３】
判定部１０１は、入力画像に含まれる複数の画素から処理対象として選択された画素（以下、第１画素と呼ぶ）を含む第１領域と、第１画素とは異なる第２画素を含む第２領域とを比較し、第２領域に対して第１領域が変化しているか否かを判定する。この判定は、例えば、第１領域の画素の画素値と第２領域の画素の画素値との差分絶対値和を第１閾値により閾値判定してもよいし、第１領域の平均値と第２領域の平均値との差分絶対値を第２閾値により閾値判定してもよい。また、判定部１０１は、第１領域の画素および第２領域の画素を、それぞれ入力バッファ１００から取得することができる。
【００１４】
相関算出部１０２は、判定部１０１による判定結果が、第２領域に対する第１領域の変化が有る旨を示している場合、第１領域と、予め用意される複数の基底ベクトルのそれぞれとの相関係数を算出する。相関算出部１０２は、算出された相関係数を選択部１０３に対して出力すると共に、第１領域を示す情報と関連付けて相関保持部１２１に保持する。なお、基底ベクトルは、後述する方法により算出されて基底ベクトル記憶部１２０に予め格納されている。
【００１５】
一方、相関算出部１０２は、判定部１０１による判定結果が、第２領域に対する第１領域の変化が無い旨を示している場合、第１領域と基底ベクトルとの相関係数の代わりとして、既に計算済みの、第２領域とそれぞれの基底ベクトルとの相関係数を選択部１０３に対して出力する。例えば、第２領域は、過去に第１領域として選択され、別の第２領域に対する変化の有無を判定され、変化が有ると判定された場合に相関算出部１０２により基底ベクトルとの相関係数を算出された領域である。相関算出部１０２は、例えば、既に計算され相関保持部１２１に保持される、当該第２領域に関連付けられた相関係数を、選択部１０３に対して出力する。
【００１６】
選択部１０３は、相関算出部１０２により算出された相関係数の大きさに従い、相関係数を算出した複数の基底ベクトルから１以上の基底ベクトルを選択する。射影算出部１０４は、選択部１０３で選択された基底ベクトルにより張られる部分空間へ、第１領域および複数の第３領域を射影する。第３領域は、入力画像の第３画素を含む領域である。射影算出部１０４は、例えば入力バッファ１００からこれら第１領域および第３領域を取得する。
【００１７】
距離算出部１０５は、射影算出部１０４の射影結果に基づき、選択部１０３で選択された基底ベクトルにより張られる部分空間上で、第１領域と第３領域との間の距離を画素毎に算出する。重み算出部１０６は、距離算出部１０５により算出された画素毎の距離に応じて、第３領域に含まれる第３画素それぞれに割り当てる重みを算出する。画素値算出部１０７は、重み算出部１０６で算出された重みに従い第３領域に含まれる各第３画素の画素値を加重平均して、第１画素に割り当てる新たな画素値を算出する。画素値算出部１０７は、第３領域の各画素を、例えば入力バッファ１００から取得することができる。
【００１８】
（基底ベクトルの生成について）
ここで、上述した、予め算出され基底ベクトル記憶部１２０に保持される基底ベクトルについて説明する。先ず、ノイズが重畳していない種々のカラー画像を用意し、用意したカラー画像から所定サイズの部分画像をそれぞれ抽出する。次に、各部分画像に含まれる画素値を並べたベクトルをサンプルベクトルとして生成する。そして、各部分画像から生成したサンプルベクトルに対して主成分分析を行うことにより、基底ベクトルを生成する。
【００１９】
例えば、部分画像が縦３画素×横３画素からなる矩形ブロックであり、且つ、各画素が３色（赤色、緑色および青色）の画素値を有する場合、２７（＝３×３×３）個の基底ベクトルが生成される。この場合、各基底ベクトルは、２７個の要素からなる。
【００２０】
第１の実施形態の画像処理装置１０は、主成分分析の結果として生成された基底ベクトルの一部を使用する。具体的には、各実施形態では、主成分分析の結果として生成された基底ベクトルの中から、閾値より小さい固有値を持つ基底ベクトルを削除する。
【００２１】
すなわち、大きな固有値を持つ基底ベクトルは、一般的な画像に多く存在する局所構造を表す。これに対し、小さい固有値を持つ基底ベクトルは、画像の局所構造の表現にはあまり寄与しないと共に、入力画像に重畳しているノイズと高い相関を持つ可能性がある。したがって、小さい固有値を持つ基底ベクトルを削除した基底ベクトルで生成される部分空間上で、領域間の距離を算出することにより、ノイズの影響を低減した状態で、領域間の距離を求めることができる。
【００２２】
基底ベクトル記憶部１２０には、主成分分析の結果として生成された基底ベクトルのうち、この閾値より小さい固有値を持つ基底ベクトルが削除された各基底ベクトルが保持される。
【００２３】
出力画像の画質向上の観点からは、画像処理装置１０において使用される基底ベクトルに、小さい固有値を持つ基底ベクトルが含まれないことが望ましい。これに限らず、画像処理装置１０において使用される基底ベクトルには、小さい固有値を持つ基底ベクトルが含まれていてもよい。さらに、画像処理装置１０は、主成分分析の結果として生成された全ての基底ベクトルを使用しても構わない。
【００２４】
なお、第１の実施形態に適用可能な基底ベクトルを生成する方法は主成分分析に基づく方法に限定されない。例えば、第１の実施形態において、独立成分分析に基づき生成した基底ベクトルを用いてもよい。さらに、基底ベクトルとして、２次元離散フーリエ変換の基底、２次元離散コサイン変換の基底、２次元離散ウェーブレット変換の基底などを利用してもよい。
【００２５】
（第１の実施形態による処理の詳細）
次に、第１の実施形態に係る画像処理装置１０の一例の動作について説明する。図２は、第１の実施形態に係る画像処理装置１０の一例の動作を示すフローチャートである。より詳細には、図２に示すフローチャートは、入力画像の１の画素（第１画素とする）に対して施される処理の手順の例を示す。なお、図２のフローチャートにおける各処理は、例えば、画像処理装置１０が有する図示されないコントローラにより、画像処理装置１０の各部が制御されて実行される。
【００２６】
ここで、入力画像を形成する画素は、所定の手順で、例えばラスタスキャン順に１画素ずつが選択される。一例として、入力バッファ１００に格納された１フレーム分の入力画像に対し、１フレームの左上隅（例えば画面の左上隅）の画素を始点として、ラスタスキャン順に１画素ずつが選択される。
【００２７】
このとき、上述した第２領域に含まれる第２画素は、第１画素より以前に選択された画素であるものとする。より詳細には、ある時点において選択された第１画素および第２画素のうち第２画素は、当該ある時点より前の時点において第１画素として選択され、処理に用いられた画素である。したがって、第２の画素を含む第２領域は、図２のフローチャートの開始に先立って、入力バッファ１００に格納される入力画像から既に選択されている。
【００２８】
ステップＳ１００で、判定部１０１は、入力バッファ１００に格納される入力画像から第１の画素を含む第１領域を選択する。このステップＳ１００からステップＳ１０５までの処理は、入力画像の全画素に対して画素毎に実行されるループ処理である。
【００２９】
次のステップＳ１０１で、判定部１０１は、ステップＳ１００で選択された第１領域と、既に選択されている第２領域とを比較し、第２領域に対して第１領域が変化しているか否かを判定する。
【００３０】
この判定部１０１における判定処理を、図３を用いてより具体的に説明する。図３は、入力画像と各領域および各画素との関係を概略的に示す。図３において、画像３００が入力画像を示し、画像３００内の１マスが１画素を示すものとする。画素３０１を第１画素ｉとし、第１画素ｉを中心とする縦３画素×横３画素の矩形ブロックからなる局所領域３０２を第１領域とする。なお、第１画素ｉは、第１領域の中心画素にかぎらず、第１領域内の他の画素でもよい。図３において、画素３０３を第２画素とし、第２画素ｊを中心とする縦３画素×横３画素の矩形ブロックからなる局所領域３０４を第２領域とする。
【００３１】
図３において、第１領域である局所領域３０２と、第２領域である局所領域３０４とが同じサイズであるとして記されているが、これは典型的な例であり、この例に限定されるものではない。すなわち、第１領域および第２領域のサイズおよび形状は、図３に例示される例に限定されず、他のサイズおよび形状でもよい。
【００３２】
図２の説明に戻り、ステップＳ１０１で、判定部１０１が変化有りと判定した場合、処理がステップＳ１０２に移行される。ステップＳ１０２で、相関算出部１０２は、第１領域と、予め用意される複数（例えばＮ個）の基底ベクトル（第１基底ベクトルと呼ぶ）それぞれとの相関係数を算出する。算出された第１の領域に関する相関係数は、選択部１０３に対して出力される。
【００３３】
一例として、相関算出部１０２は、入力バッファ１００から第１領域の各画素を取り出すと共に、基底ベクトル記憶部１２０からＮ個の基底ベクトルを読み出す。相関算出部１０２は、第１領域中の画素の画素値を並べることにより生成されるベクトル（第１ベクトル）と、Ｎ個の基底ベクトルのそれぞれとの内積を取得し、算出した内積の絶対値または二乗値を相関係数として算出する。
【００３４】
ここで、第１画素ｉを入力画像中の第ｉ番目の画素とし（図３参照）、第１ベクトルをｖiと表す。また、第１ベクトルｖiの第ｍ番目の要素を(ｖi)mと表す。さらに、Ｎ個の基底ベクトルのうちの第ｎ番目の基底ベクトルをｂnと表し、基底ベクトルｂnの第ｍ番目の要素を(ｂn)mと表す。
【００３５】
第１領域と基底ベクトルとの相関係数ｐn（ｉ）が第１ベクトルｖiと基底ベクトルｂnとの内積の２乗値として算出される場合、相関係数ｐn（ｉ）は、下記の式（１）および式（２）に従って算出される。ここで、値ｆi,nは、第１ベクトルｖiと基底ベクトルｂnとの内積を示す。
【数１】
2014085884.tif 000003
【数２】
2014085884.tif 000004
【００３６】
なお、ここでは、Ｎ個全ての基底ベクトルに関して第１領域との相関係数を算出する例を説明したが、これはこの例に限られない。例えば、Ｎ個の基底ベクトルのうち１以上の基底ベクトルを、相関係数を算出する対象から除外してもよい。一例として、相関算出部１０２は、要素の総和の絶対値が最大である基底ベクトルと第１ベクトルとの相関係数を算出しなくてもよい。さらに、第１領域と基底ベクトルとの相関係数は、第１ベクトルと基底ベクトルとの内積に基づいて算出される例に限定されず、他の方法で算出されてもよい。
【００３７】
次のステップＳ１０４で、相関算出部１０２は、上述のようにしてステップＳ１０２で算出した第１領域と各基底ベクトルとの相関係数を、相関保持部１２１に保持する。この相関保持部１２１に保持される相関係数は、第１領域を第２領域に置き換えて、後に、既に算出された相関係数として用いられる。ステップＳ１０４で相関係数が保持されると、処理がステップＳ１０５に移行される。
【００３８】
上述のステップＳ１０１で、判定部１０１が変化無しと判定した場合、処理がステップＳ１０３に移行される。ステップＳ１０３で、相関算出部１０２は、既に算出済みの、第２領域と基底ベクトルとの相関係数を相関保持部１２１から取り出して、第１領域の基底ベクトルとの相関係数の代わりに、選択部１０３に対して出力する。ステップＳ１０３で相関係数が出力されると、処理がステップＳ１０５に移行される。
【００３９】
ステップＳ１０５では、上述したステップＳ１００からステップＳ１０４の処理が入力画像の全画素に対して実行されたか否かが判定され、未だ全画素に対して実行されていないと判定された場合には、処理がステップＳ１００に戻され、次の第１画素ｉに対して第１領域が選択され、ステップＳ１０１〜ステップＳ１０４の処理が実行される。
【００４０】
一方、ステップＳ１０５で処理が入力画像の全画素に対して実行されたと判定された場合、処理がステップＳ１０６に移行される。ステップＳ１０６では、選択部１０３が、第１画素ｉを含む第１領域を選択する。ここでは、第１領域の画素を取得する必要はなく、第１領域を特定可能な情報（インデクスなど）が取得できればよい。このステップＳ１０６からステップＳ１１２までの処理は、入力画像の全画素に対して画素毎に実行されるループ処理である。
【００４１】
次のステップＳ１０７で、選択部１０３は、ステップＳ１０６で選択された第１領域について、各基底ベクトルとの間で算出した相関係数に従い、当該各基底ベクトルの中から１以上の基底ベクトル（第２基底ベクトルと呼ぶ）を選択する。より具体的には、選択部１０３は、基底ベクトルの相関係数の合計が閾値Ｔに達するまで、第１領域について各基底ベクトルとの間で算出した相関係数が大きい順に、１以上の基底ベクトルを選択する。閾値Ｔは、例えば次式（３）に示されるように、第１の領域について求められた相関係数ｐnの総和に対する所定の割合（この例では８割）の値に設定することが考えられる。
【数３】
2014085884.tif 000005
【００４２】
このステップＳ１０７では、第１領域との相関が大きい基底ベクトルが選択される。これにより、選択部１０３の後段の処理において、第１領域の局所構造を反映した部分空間上で、第１領域と第３領域との距離が算出されるので、第１領域と第３領域とが似ているか否かを、精度良く判定することができる。
【００４３】
処理はステップＳ１０８に移行され、射影算出部１０４が、選択部１０３により選択された基底ベクトルにより張られる部分空間に対して、第１領域と、１以上の第３領域とを射影した、第１射影ベクトルおよび第３射影ベクトルの係数を生成する。
【００４４】
図３を用いて、第３領域について説明する。第３領域は、第３画素を含む領域であって、第３画素は、入力画像である画像３００に対して所定に設定される探索範囲３０７に含まれる各画素３０５1a、３０５2a、…である。この例では、第３領域は、第３画素を中心とする縦３画素×横３画素の矩形ブロックからなる局所領域３０６1a、３０６2a、…である。典型的には、第３領域は、第１領域（局所領域３０２）と同サイズおよび同形状に設定される。第３画素は、第１画素ｉを含んでもよいし、第１画素ｉを排除してもよい。
【００４５】
図３の例では、探索範囲３０７は、第１画素ｉである画素３０１を中心とする縦９画素×横９画素の矩形ブロックである。この場合、第３画素の数すなわち、第３領域の数は、９×９＝８１個である。なお、探索範囲３０７のサイズおよび形状は、任意に設定することができ、第１画素ｉは、探索範囲３０７の中心の画素３０１に限られない。また、探索範囲３０７に第１画素ｉの画素３０１が含まれていなくてもよい。
【００４６】
説明を図２に戻し、ステップＳ１０８において、具体的には、射影算出部１０４は、下記の式（４）に従い、第１領域から生成される第１ベクトルｖiを変換した第１射影ベクトルｖi'の係数を生成する。なお、式（４）および以下の各式において、値ｄは、ステップＳ１０６で選択部１０３が選択した基底ベクトルの個数を示し、値ｑは、当該選択した基底ベクトルに番号を割り当てた場合のてインデクスを示す。
【数４】
2014085884.tif 000006
【００４７】
さらに、射影算出部１０４は、ステップＳ１０８において、第３領域に含まれる画素の画素値を要素として並べた第３ベクトルｖkを生成し、式（５）に従い、第３ベクトルｖkを変換した第３射影ベクトルｖk'の係数を生成する。
【数５】
2014085884.tif 000007
【００４８】
次のステップＳ１０９で、距離算出部１０５は、基底ベクトルｂqにより張られる部分空間上での第１領域と第３領域との距離を算出する。具体的には、距離算出部１０５は、例えば次式（６）に従い、ステップＳ１０７で生成された第１射影ベクトルｖi'と第３射影ベクトルｖk'との距離Ｄ(ｉ，ｋ)を算出する。距離Ｄ(ｉ，ｋ)は、１以上の第３領域のそれぞれについて算出される。
【数６】
2014085884.tif 000008
【００４９】
なお、式（６）では、差分二乗和にて距離Ｄ(ｉ，ｋ)を算出しているが、これはこの例に限られず、例えば差分絶対値和を用いて距離Ｄ(ｉ，ｋ)を算出してもよい。
【００５０】
次のステップＳ１１０で、重み算出部１０６は、ステップＳ１０９で算出された距離Ｄ(ｉ，ｋ)に基づいて、第３画素（第３画素ｋとする）に割り当てる重みＷ(ｋ)を算出する。重みＷ(ｋ)は、距離Ｄ(ｉ，ｋ)に対して単調減少するように、換言すれば、重みＷ(ｋ)は、距離Ｄ(ｉ，ｋ)が大きくなるほど小さくなるように算出する。一例として、重み算出部１０６は、重みＷ(ｋ)を次式（７）に従い算出する。
【数７】
2014085884.tif 000009
【００５１】
式（７）において、値ｈは、入力画像に対する平滑化の程度を指定するパラメータである。第１の本実施形態では、このパラメータｈの２乗値を平滑化強度と呼ぶ。平滑化強度を高く設定すると、全ての第３画素ｋに割り当てられる重みＷ(ｋ)が相対的に大きくなり、画像が強く平滑化されるようになる。その結果、入力画像のノイズが大きく低減される。
【００５２】
なお、重みＷ(ｋ)の算出は、式（７）を用いたものに限られない。すなわち、重みＷ(ｋ)は、距離Ｄ(ｉ，ｋ)に対して単調減少する関数であれば、多の数式を用いて算出してもよい。
【００５３】
次のステップＳ１１１で、画素値算出部１０７は、ステップＳ１１０で算出された重みＷ(ｋ)に従い、図３で示した探索範囲３０７に含まれる全ての第３画素ｋ（画素３０５1a、３０５2a、…）の画素値を加重平均する。例えば、画素値算出部１０７は、次式（８）および（９）に従い、各第３画素ｋの画素値ｙ(ｋ)の加重平均値ｙ'(ｉ)を算出する。なお、式（８）および（９）において、値Ω(ｉ)は、第３画素ｋの探索範囲３０７を示す。
【数８】
2014085884.tif 000010
【数９】
2014085884.tif 000011
【００５４】
画素値算出部１０７は、算出した加重平均値ｙ'(ｉ)を、第１画素ｉの新たな画素値として出力する。すなわち、加重平均値ｙ'(ｉ)は、出力画像中の第ｉ番目の画素ｉの画素値として使用される。
【００５５】
画素値算出部１０７が第１画素ｉに対して新たな画素値を出力すると、処理がステップＳ１１２に移行され、上述したステップＳ１０６からステップＳ１１１までの処理が入力画像の全画素に対して実行されたか否かが判定され、未だ全画素に対して実行されていないと判定された場合には、処理がステップＳ１０６に戻され、次の第１画素ｉに対して第１領域が選択され、ステップＳ１０７〜ステップＳ１１１の処理が実行される。
【００５６】
上述したように、ステップＳ１０１の判定により、第１領域が第２領域に対して変化していない場合は、ステップＳ１０２の相関算出部１０２による相関算出処理をスキップすることで、計算コストを削減できる。
【００５７】
以上のように、第１の実施形態に係る画像処理装置１０においては、計算コストを削減しつつ画像のノイズを低減することができる。
【００５８】
（第１の実施形態の変形例）
上述の第１の実施形態では、入力画像が静止画であるものとして説明したが、これはこの例に限られない。第１の実施形態の変形例では、上述の第１の実施形態に対して、入力画像を動画とした場合の例である。
【００５９】
第１の実施形態の変形例による、動画に適用可能な第１の画像処理方法について説明する。動画の場合、動画を構成する、時系列的に連続する各フレームそれぞれの画像を静止画の入力画像と見做して、第１の実施形態で説明した処理と同様の処理を施すことが考えられる。この場合の処理は、上述の図１〜図３を用いて説明した処理と何ら変わるところがないため、ここでの説明を省略する。
【００６０】
第１の実施形態の変形例による、動画に適用可能な第２の画像処理方法について説明する。動画は、時系列的に連続する２フレームの画像は、互いに類似した画像である可能性が高い。そこで、第１領域および第２領域を、時系列的に連続する２フレームのうち時間的に後のフレームから第１画素および第１領域を選択し、当該２フレームのうち時間的に先行するフレームから第２領域を選択する。また、第３領域は、当該２フレームのうち少なくとも一方から選択する。
【００６１】
図４を用いて、入力画像を動画とした場合の処理についてより具体的に説明する。図４において、左から右へ向けて時間が進行し、画像３２０のフレームｔn-1が画像３１０のフレームｔに対して時間的に先行するフレームとなっている。この場合、画像３１０内の例えば画素３１１を第１画素ｉとし、第１画素ｉを中心とする縦３画素×横３画素の矩形ブロックからなる局所領域３１２を第１領域とする。
【００６２】
また、画像３２０内の例えば画素３２３を第２画素ｊとし、第２画素ｊを中心とする画素×横３画素の矩形ブロックからなる局所領域３２４を第２領域とする。第２領域を、第１領域が含まれるフレームｔnに対して時間的に先行するフレームｔn-1から選択しているため、第２領域に関する基底ベクトルとの相関係数は、第１領域の処理を実行する時点で既に求められている。
【００６３】
探索範囲３０７は、第１画素ｉである画素３１１と同一のフレームｔnに設定してもよいし、画素３１１と異なるフレーム（例えばフレームｔn-1）に設定してもよい。さらに、複数のフレームそれぞれに探索範囲３０７を設定してもよい。図４の例では、第１画素ｉである画素３１１に対して、同一フレームｔnと、時間的に先行するフレームｔn-1とにそれぞれ探索範囲３０７が設定され、それぞれの探索範囲３０７において、第３画素である画素３０５1b、３０５2b、３０５3b、３０５4b、３０５5bおよび３０５6b、ならびに、これら各第３画素を含む第３領域である局所領域３０６1b、３０６2b、３０６3b、３０６4b、３０６5bおよび３０６6bが含まれている。
【００６４】
図４の例では、第１画素ｉである画素３１１に対する探索範囲３０７を、フレームｔnおよびフレームｔn-1の２フレームに設定しているが、これはこの例に限定されない。すなわち、第１画素ｉである画素３１１に対する探索範囲３０７を、３以上のフレームに対して設定してもよい。また、第１画素ｉが含まれるフレームｔnよりも時間的に後のフレーム（例えばフレームｔn+1）が取得可能な場合には、この時間的に後のフレームに対してさらに探索範囲３０７を設定してもよい。
【００６５】
この第１の実施形態の変形例における処理は、第２領域および第３領域が、第１領域の設定されるフレームと異なるフレームに設定可能となっている以外は、図２のフローチャートを用いて説明した処理をそのまま適用可能である。また、第１の実施形態の変形例に対して、装置構成に関しても、図１を用いて説明した第１の実施形態に係る画像処理装置１０の構成をそのまま適用可能である。
【００６６】
このように、第１の実施形態の変形例においても、判定部１０１は、フレームｔnの画像３１０から選択した第１領域の、フレームt-1の画像３２０から選択した第２領域に対する変化の有無を判定する。相関算出部１０２は、判定部１０１が、第２領域に対する第１領域の変化が無いと判定した場合に、図２のステップＳ１０２による第１領域と基底ベクトルとの相関の計算をキャンセルし、既に算出済みの、第２領域の相関係数を、第１領域の相関係数として出力することができる。そのため、動画を処理対象とした場合であっても、計算コストを削減できると共に、画像のノイズを低減することができる。
【００６７】
（第２の実施形態）
次に、第２の実施形態について説明する。第２の実施形態では、上述した第１の実施形態に対して、入力画像に含まれる画素から処理対象として選択された第１画素を含む第１領域を、第１成分と第２成分とに分離して以降の処理を行う。
【００６８】
図５は、第２の実施形態による画像処理装置１１の一例の構成を示す。なお、図５において、上述した図１と共通する部分には同一の符号を付して、詳細な説明を省略する。画像処理装置１１は、入力バッファ１００と、選択部１０３と、距離算出部１０５と、重み算出部１０６と、画素値算出部１０７と、基底ベクトル記憶部１２０と、相関保持部１２１とを有すると共に、分離部２００と、判定部２０１と、相関算出部２０２と、射影算出部２０４とを有する。
【００６９】
選択部１０３と、距離算出部１０５と、重み算出部１０６と、画素値算出部１０７と、分離部２００と、判定部２０１と、相関算出部２０２と、射影算出部２０４とは、協働するハードウェアによって構成してもよいし、一部または全部をＣＰＵ上で動作するプログラムにより構成してもよい。
【００７０】
分離部２００は、入力バッファに保持される入力画像から、入力画像に含まれる複数の画素から処理対象して選択された第１画素を含む第１領域を取得し、第１領域の成分を、第１成分と第２成分とに分離する。分離部２００は、分離した第１成分を判定部２０１に対して出力し、第２成分を相関算出部２０２に対して出力する。また、分離部２００は、第１領域を分離するために用いたベクトルを、射影算出部２０４に対して出力する。
【００７１】
例えば、分離部２００は、第１成分として第１領域の直流成分、第２成分として第１領域の交流成分をそれぞれ用いることができる。この場合、分離部２００は、第１領域の画素値による平均値のベクトルを生成し、平均値のベクトルと第１領域の各画素値によるベクトルとの差分を求める。分離部２００は、この差分を第１領域の第２成分すなわち交流成分として相関算出部２０２に対して出力し、平均値のベクトルを、第１領域の第１成分すなわち直流成分として判定部２０１に対して出力する。
【００７２】
これに限らず、分離部２００は、第１成分として第１領域のエッジ成分、第２成分として第１領域からエッジ成分を減算して成分を用いてもよい。この場合、分離部２００は、既知のエッジ検出手法を用いて第１領域のエッジ成分を検出し、エッジ成分によるベクトルを生成し、エッジ成分によるベクトルと第１領域の各画素値によるベクトルとの差分を求める。分離部２００は、この差分を第１領域の第２成分として相関算出部２０２に対して出力し、分離部２００は、エッジ成分によるベクトルを第１成分として判定部２０１に対して出力する。
【００７３】
さらにまた、分離部２００は、第１領域と基底ベクトルとの相関に基づき、第１領域を第１成分および第２成分に分離してもよい。例えば、分離部２００は、相関算出部２０２に複数の基底ベクトルと第１領域の相関係数をそれぞれ算出させる。分離部２００は、算出された相関係数に基づき、第１領域を、少なくとも最も相関係数の高い基底ベクトルを含む第１成分と、それ以外の基底ベクトルを含む第２成分とに分離する。分離部２００は、さらに、基底ベクトルを求めた際の主成分分析の固有値に基づき、第１領域を、固有値が閾値以上の基底ベクトルを含む第１成分と、固有値が閾値未満の基底ベクトルを含む第２成分とに分離してもよい。
【００７４】
なお、以下では、第１成分および第２成分として、第１領域の直流成分および交流成分をそれぞれ用いるものとする。
【００７５】
判定部２０１は、分離部２００から出力された第１領域の第１成分と、既に選択済みの第２画素を含む第２領域の第１成分とを比較し、第２領域に対して第１領域が変化しているか否かを判定する。判定部２０１は、例えば、第１領域の第１成分と、第２領域の第１成分との間の差分絶対値和と閾値とを比較して、変化の有無を判定する。
【００７６】
例えば、分離部２００が分離した第１領域の第１成分を図示されない記憶部に記憶し、判定部２０１は、上述の判定処理を行う際に、記憶部に過去に記憶された第１領域の第１成分を取り出して第２領域の第１成分として用いることができる。これに限らず、判定部２０１が上述の判定処理を行う際に、分離部２００が入力バッファ１００から第２領域に対応する各画素を取り出して第１成分と第２成分とに分離し、分離された第１成分を用いてもよい。
【００７７】
相関算出部２０２は、判定部２０１の判定結果が、第２領域に対する第１領域に変化が有る旨を示している場合、分離部２００から出力された第１領域の第２成分と、予め用意される複数の基底ベクトルのそれぞれとの相関係数を算出する。相関算出部２０２は、算出された相関係数を選択部１０３に対して出力すると共に、第１領域を示す情報と関連付けて相関保持部１２１に保持する。なお、基底ベクトルは、既に説明したようにして予め算出され、基底ベクトル記憶部１２０に予め格納されている。
【００７８】
一方、相関算出部２０２は、判定部２０１による判定結果が、第２領域に対する第１領域の変化が無い旨を示している場合、第１領域の第２成分と基底ベクトルとの相関係数の代わりとして、既に計算済みの、第２領域の第２成分とそれぞれの基底ベクトルとの相関係数を選択部１０３に対して出力する。
【００７９】
選択部１０３は、相関算出部２０２により算出された相関係数の大きさに従い、相関係数を算出した複数の基底ベクトルから１以上の基底ベクトルを選択する。射影算出部２０４は、選択部１０３で選択された基底ベクトルと、分離部２００で第１成分を分離するために用いられたベクトルとで張られる部分空間へ、第１領域および複数の第３領域を射影する。第３領域は、入力画像の第３画素を含む領域である。
【００８０】
距離算出部１０５は、射影算出部２０４の射影結果に基づき、上述した基底ベクトルと第１成分を分離するために用いられたベクトルとにより張られる部分空間上で、第１領域と第３領域との間の距離を画素毎に算出する。重み算出部１０６は、距離算出部１０５により算出された画素毎の距離に応じて、第３領域に含まれる第３画素それぞれに割り当てる重みを算出する。画素値算出部１０７は、入力バッファ１００から第３領域を読み出し、第３領域に含まれる各第３画素に対して、重み算出部１０６で算出された重みに従い、当該第３領域に含まれる各第３画素の画素値を加重平均して、第１画素に割り当てる新たな画素値を算出する。
【００８１】
（第２の実施形態による処理の詳細）
次に、第２の実施形態に係る画像処理装置１１の一例の動作について説明する。図６は、第２の実施形態に係る画像処理装置１１の一例の動作を示すフローチャートである。より詳細には、図６に示すフローチャートは、入力画像の１の画素（第１画素とする）に対して施される処理の手順の例を示す。なお、図６のフローチャートにおける各処理は、例えば、画像処理装置１１が有する図示されないコントローラにより、画像処理装置１１の各部が制御されて実行される。
【００８２】
ステップＳ２００で、分離部２００は、入力バッファ１００に格納される入力画像から第１の画素を含む第１領域を選択する。このステップＳ２００からステップＳ２０６までの処理は、入力画像の全画素に対して画素毎に実行されるループ処理である。
【００８３】
次のステップＳ２０１で、分離部２００は、ステップＳ２００で選択された第１領域を第１成分と第２成分とに分離する。分離された第１成分および第２成分は、それぞれ判定部２０１および相関算出部２０２に対して出力される。
【００８４】
ステップＳ２０２で、判定部２０１は、分離部２００から出力された第１領域の第１成分と、既に選択されている第２領域の第１成分とを比較し、第２領域の第１成分に対して第１領域の第１成分が変化しているか否かを判定する。
【００８５】
ステップＳ２０２で、判定部２０１が変化有りと判定した場合、処理がステップＳ２０３に移行される。ステップＳ２０３で、相関算出部２０２は、分離部２００から出力された第１領域の第２成分と、予め用意される複数の基底ベクトルそれぞれとの相関係数を算出する。算出された相関係数は、選択部１０３に対して出力される。次のステップＳ２０５で、相関算出部２０２は、算出された相関係数を相関保持部１２１に保持する。ステップＳ２０５で相関係数が保持されると、処理がステップＳ２０６に移行される。
【００８６】
上述のステップＳ２０２で、判定部２０１が変化無しと判定した場合、処理がステップＳ２０４に移行される。ステップＳ２０４で、相関算出部２０２は、既に算出済みの、第２領域の第２成分と基底ベクトルとの相関係数を相関保持部１２１から取り出して、第１領域の第２成分と基底ベクトルとの相関係数の代わりに出力する。ステップＳ２０４で相関係数が出力されると、処理がステップＳ２０６に移行される。
【００８７】
ステップＳ２０６では、上述したステップＳ２００からステップＳ２０５の処理が入力画像の全画素に対して実行されたか否かが判定され、未だ全画素に対して実行されていないと判定された場合には、処理がステップＳ２００に戻され、次の第１画素に対して第１領域が選択され、ステップＳ２０１〜ステップＳ２０５の処理が実行される。
【００８８】
一方、ステップＳ２０６で処理が入力画像の全画素に対して実行されたと判定された場合、処理がステップＳ２０７に移行される。ステップＳ２０７では、選択部１０３が第１領域を選択する。ここでは、第１領域の画素を取得する必要はなく、第１領域を特定可能な情報（インデクスなど）が取得できればよい。このステップＳ２０７からステップＳ２１３までの処理は、入力画像の全画素に対して画素毎に実行されるループ処理である。
【００８９】
次のステップＳ２０８で、選択部１０３は、ステップＳ２０７で選択された第１領域について、各基底ベクトルとの間で算出した相関係数に従い、当該各基底ベクトルの中から１以上の基底ベクトルを選択する。例えば、選択部１０３は、基底ベクトルの相関係数の合計が閾値Ｔに達するまで、第１領域について各基底ベクトルとの間で算出した相関係数が大きい順に、１以上の基底ベクトルを選択する。
【００９０】
次のステップＳ２０９で、射影算出部２０４は、選択部１０３により選択された基底ベクトルと、分離部２００で第１成分と第２成分とをを分離するために用いられたベクトルとで張られる部分空間に対して、第１領域と１以上の第３領域とを射影した、第１射影ベクトルおよび第３射影ベクトルの係数を生成する。
【００９１】
処理はステップＳ２１０に移行され、距離算出部１０５は、第１射影ベクトルと第３射影ベクトルとの間の距離Ｄ(ｉ，ｋ)を、上述した式（６）に従い算出する。ステップＳ２１１で、重み算出部１０６は、ステップＳ２１０で算出された距離Ｄ(ｉ，ｋ)に基づき、第３画素（第３画素ｋとする）に割り当てる、距離Ｄ(ｉ，ｋ)に対して単調減少する重みＷ(ｋ)を、例えば上述の式（７）に従い算出する。次のステップＳ２１２で、画素値算出部１０７は、ステップＳ２１１で算出された主にＷ(ｋ)に従い、探索範囲３０７に含まれる全ての第３画素の画素値を、例えば上述の式（８）および（９）に従い加重平均する。加重平均により得られた値は、第１画素の新たな画素値として出力される。
【００９２】
画素値算出部１０７が第１画素に対して新たな画素値を出力すると、処理がステップＳ２１３に移行され、上述したステップＳ２０７からステップＳ２１２までの処理が入力画像の全画素に対応して実行されたか否かが判定され、未だ全画素に対して実行されていないと判定された場合には、処理がステップＳ２０７に戻される。
【００９３】
上述したように、ステップＳ２０２の判定により、第１領域の第１成分が第２領域の第１成分に対して変化していない場合は、ステップＳ２０３の相関算出部２０２による相関算出処理をスキップすることで、計算コストを削減できる。
【００９４】
以上のように、第２の実施形態に係る画像処理装置１１においても、第１の実施形態に係る画像処理装置１０と同様に、計算コストを削減しつつ画像のノイズを低減することができる。
【００９５】
なお、上述では、第２の実施形態の入力画像が静止画であるものとして説明したが、これはこの例に限られない。すなわち、第２の実施形態は、上述した第１の実施形態の変形例の説明と同様にして、動画にも適用可能なものである。
【００９６】
（他の実施形態）
上述の第１および第２実施形態に係る画像処理装置１０および１１は、汎用のコンピュータ装置を基本ハードウェアとして用いて実現することも可能である。以下では、第１の実施形態による画像処理装置１０について説明する。図７は、上述の第１の実施形態による画像処理装置１０に適用可能なコンピュータ装置４００の一例の構成を示す。なお、第２の実施形態による画像処理装置１１も、この画像処理装置１０と同様にしてコンピュータ装置４００にて実現可能であるので、ここでの説明を省略する。
【００９７】
図７に例示されるコンピュータ装置４００において、バス４０１に対してＣＰＵ４０２、ＲＯＭ(Read  Only  Memory)４０３、ＲＡＭ(Random  Access  Memory)４０４および表示制御部４０５が接続される。また、バス４０１に対して、ハードディスク４０７、ドライブ装置４０８、入力部４０９および通信Ｉ／Ｆ４１０が接続される。
【００９８】
ＣＰＵ４０２は、ＲＯＭ４０３およびハードディスク４０７に記憶されるプログラムに従い、ＲＡＭ４０４をワークメモリとして用いて、このコンピュータ４００の全体を制御する。表示制御部４０５は、ＣＰＵ４０２により生成された表示制御信号を、表示装置４０６が表示可能な信号に変換して出力する。
【００９９】
ハードディスク４０７は、上述のＣＰＵ４０２が実行するためのプログラムが格納されると共に、入力画像となる画像データや他のデータが格納される。ドライブ装置４０８は、脱着可能な記録媒体４２０が装填可能とされ、当該記録媒体４２０に対するデータの読み書きを行うことができる。ドライブ装置４０８が対応可能な記録媒体４２０としては、ＣＤ(Compact  Disk)、ＤＶＤ(Digital  Versatile  Disk)といったディスク記録媒体や、不揮発性の半導体メモリが考えられる。
【０１００】
入力部４０９は、外部からのデータの入力を行う。例えば、入力部４０９は、ＵＳＢ(Universal  Serial  Bus)やＩＥＥＥ１３９４(Institute  of  Electrical  and  Electronics  Engineers  1394)といった所定のインターフェイスを有し、このインターフェイスにより外部の機器からのデータ入力を行う。入力画像の画像データは、この入力部４０９から入力することができる。
【０１０１】
また、入力部４０９に対して、キーボードやマウスといった入力デバイスが接続される。ユーザは、例えば表示装置４０６に対する表示に応じてこれら入力デバイスを操作することで、コンピュータ装置４００に対して指示を出すことができる。
【０１０２】
通信Ｉ／Ｆ４１０は、所定のプロトコルを用いて外部の通信ネットワークと通信を行う。入力画像の画像データを、この通信Ｉ／Ｆ４１０を介して外部の通信ネットワークから供給してもよい。
【０１０３】
上述した判定部１０１と、相関算出部１０２と、選択部１０３と、射影算出部１０４と、距離算出部１０５と、重み算出部１０６と、画素値算出部１０７は、ＣＰＵ４０２上で動作する画像処理プログラムによって実現される。また、基底ベクトル記憶部１２０および相関保持部１２１は、ＨＤ４０７やＲＡＭ４０４により実現される。
【０１０４】
実施形態に係る画像処理を実行するための画像処理プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体４２０に記録して提供される。これに限らず、画像処理プログラムを、ＲＯＭ４０３に予め記憶させて提供してもよい。
【０１０５】
さらに、実施形態に係る画像処理を実行するための画像処理プログラムを、インターネットなどの通信ネットワークに接続されたコンピュータ上に格納し、通信ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、実施形態に係る画像処理を実行するための画像処理プログラムを、インターネットなどの通信ネットワーク経由で提供または配布するように構成してもよい。
【０１０６】
実施形態に係る画像処理を実行するための画像処理プログラムは、例えば、上述した各部（判定部１０１と、相関算出部１０２と、選択部１０３と、射影算出部１０４と、距離算出部１０５と、重み算出部１０６と、画素値算出部１０７）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ４０２が例えばハードディスク４０７から当該画像処理プログラムを読み出して実行することにより上記各部が主記憶装置（例えばＲＡＭ４０４）上にロードされ、各部が主記憶装置上に生成されるようになっている。
【０１０７】
なお、本発明は上述した各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１０８】
１０，１１  画像処理装置
１００  入力バッファ
１０１，２０１  判定部
１０２，２０２  相関算出部
１０３  選択部
１０４，２０４  射影算出部
１０５  距離算出部
１０６  重み算出部
１０７  画素値算出部
１２０  基底ベクトル記憶部
１２１  相関保持部
【図１】
2014085884.tif 000012
【図２】
2014085884.tif 000013
【図３】
2014085884.tif 000014
【図４】
2014085884.tif 000015
【図５】
2014085884.tif 000016
【図６】
2014085884.tif 000017
【図７】
2014085884.tif 000018