(57)【要約】【課題】  画像データにおけるノイズ量やノイズ量に関係する撮影条件に基づいて類似度を算出する画素数を変更することにより、処理負荷を軽減しつつ適切なノイズ低減処理を行う。【解決手段】  画像処理装置であって、画像データに対応するノイズに関する情報に基づいて、複数の画素からなる画素群を設定する設定手段と、前記設定手段により設定された画素群に従って導出される前記着目画素と参照画素との類似度に基づいて、前記参照画素に対する重みを決定する決定手段と、前記参照画素の画素値と前記重みとから、前記着目画素の画素値を出力する出力手段とを有することを特徴とする。【選択図】  図４
2015219603.tif 000002
【特許請求の範囲】
【請求項１】
画像データに対応するノイズに関する情報に基づいて、複数の画素からなる画素群を設定する設定手段と、
前記設定手段により設定された画素群に従って導出される前記着目画素と参照画素との類似度に基づいて、前記参照画素に対する重みを決定する決定手段と、
前記参照画素の画素値と前記重みとから、前記着目画素の画素値を出力する出力手段とを有することを特徴とする画像処理装置。
【請求項２】
前記決定手段は、前記画像データにおける複数の画素を参照画素とし、前記参照画素それぞれに対応する複数の重みを決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記設定手段は、前記画像データに対して前記画素群を設定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記設定手段は、前記画像データにおける画素毎に前記画素群を設定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項５】
前記設定手段は、前記ノイズに関する情報が前記画像データにおけるノイズの分散が大きいことを示す場合、前記ノイズに関する情報が前記画像データにおけるノイズの分散が大きいことを示す場合よりも、前記画素群の画素数を多く設定することを特徴とする請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
画像データにおける着目画素と参照画素について、第一の画素群における前記着目画素と前記参照画素との類似度に応じた重み付けにより、前記着目画素の第一の出力値を導出する第一のノイズ低減処理手段と、
前記第一の画素群とは異なる画素数である第二の画素群における前記着目画素と前記参照画素との類似度に応じた重み付けにより、前記着目画素の第二の出力値を導出する第二のノイズ低減処理手段と、
前記画像データにおけるノイズに関する情報に基づいて、前記第一の出力値または前記第二の出力値の何れか一方を、前記着目画素の出力値として選択する選択手段と、を有することを特徴とする画像処理装置。
【請求項７】
前記第１の画素群に含まれる画素の数の方が、前記第２の画素群に含まれる画素の数より多く、
前記選択手段は、前記ノイズに関する情報が前記画像データにおけるノイズが多いことを示す場合、前記第１の出力値を選択することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記画像データにおけるノイズに関する情報は、前記画像データが撮像された時のＩＳＯ感度を示す情報であることを特徴とする請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項９】
前記画像データにおけるノイズに関する情報は、前記画像データが撮像された時の露光時間を示す情報であることを特徴とする請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項１０】
前記画像データにおけるノイズに関する情報は、前記画像データが撮像された時の温度を示す情報であることを特徴とする請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項１１】
前記画像データにおけるノイズに関する情報は、前記着目画素の画素値であることを特徴とする請求項１乃至７のいずれか一項に記載の画像処理装置。
【請求項１２】
画像データを取得する取得手段と、
前記取得した画像データの各画素に対して、前記画像データにおけるノイズに関する情報に基づいて設定された画素数の画素群に基づいて類似度を算出するＮｏｎＬｏｃａｌＭｅａｎｓ法を用いて画像データに対してノイズ低減処理を実行する処理手段と、を有することを特徴とする画像処理装置。
【請求項１３】
請求項１乃至請求項１２の何れか一項に記載の画像処理を含む撮像装置。
【請求項１４】
コンピュータに読み込み込ませ実行させることで、前記コンピュータを請求項１乃至１２の何れか一項に記載された画像処理装置として機能させることを特徴とするプログラム。
【請求項１５】
画像データに対応するノイズに関する情報に基づいて、複数の画素からなる画素群を設定し、
前記設定手段により設定された画素群に従って導出される前記着目画素と参照画素との類似度に基づいて、前記参照画素に対する重みを決定し、
前記参照画素の画素値と前記重みとから、前記着目画素の画素値を出力することを特徴とする画像処理方法。
【請求項１６】
画像データにおける着目画素と参照画素について、第一の画素群における前記着目画素と前記参照画素との類似度に応じた重み付けにより、前記着目画素の第一の出力値を導出し、
前記第一の画素群とは異なる画素数である第二の画素群における前記着目画素と前記参照画素との類似度に応じた重み付けにより、前記着目画素の第二の出力値を導出し、
前記画像データにおけるノイズに関する情報に基づいて、前記第一の出力値または前記第二の出力値の何れか一方を、前記着目画素の出力値として選択することを特徴とする画像処理方法。
【請求項１７】
画像データを取得し、
前記取得した画像データの各画素に対して、前記画像データにおけるノイズに関する情報に基づいて設定された画素数の画素群に基づいて類似度を算出するＮｏｎＬｏｃａｌＭｅａｎｓ法を用いて画像データに対してノイズ低減処理を実行することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに含まれるノイズを低減する技術に関する。
【背景技術】
【０００２】
デジタルスチルカメラやデジタルビデオカメラなどのデジタル撮像装置が広く普及している。デジタル撮像装置は、ＣＣＤやＣＭＯＳセンサなどの撮像素子で受光した光をデジタル信号に変換することでデジタル画像データを生成する。デジタル画像データを生成する過程では、撮像素子や回路の特性により暗電流ノイズ、熱雑音、ショットノイズ等が発生するため、デジタル画像データにはノイズが混入する。
【０００３】
そこで、高画質なデジタル画像データを得るためには、ノイズ低減処理が必要である。ノイズ低減処理には、画像データにおける着目画素の画素値を、複数の参照画素と各参照画素に対応する重み付き平均により算出する方法がある。特許文献１および特許文献２は、着目画素を含む領域と参照画素を含む領域とを比較して着目画素と参照画素の類似度を決定し、類似度に基づいて参照画素に対応する重みを導出する方法が記載されている。これらの方法によれば、類似度の高い参照画素ほど大きい重みを導出して重み付き平均をすることにより、ノイズを低減する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００７−５３６６６２号公報
【特許文献２】特開２０１１−３９６７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
着目画素と参照画素との類似度を決定するための領域に含まれる画素数が多いほどより正確に類似度を算出できるため、ノイズ低減効果は高くなる。特に画像データに含まれるノイズが多い場合は、少ない画素数で類似度を決定すると、ノイズを含まない画像データにおける類似度を正確に推定することに限界があり、ノイズ低減効果が小さくなってしまうことがある。これは、領域内に含まれるノイズのパターンと同じようなノイズパターンをもつ参照画素に対して重みが大きくなってしまうことがあるためである。言い換えると、本来重みを大きくすべきでない参照画素に対する重みを、大きくすることになる。従って、着目画素の画素値として得られる重み付き平均値のノイズ低減効果が小さくなってしまうことがある。
【０００６】
類似度を決定するための領域に含まれる画素数が多いと、ノイズを含まない画像データの類似度の正確性をより高めることができる一方、着目画素と類似度が高い参照画素の数が少なくなってしまう。その結果、着目画素のノイズ低減処理後の画素値として算出される重み付き平均値に対して、影響を与える画素の数が少ないために、ノイズ低減効果が小さくなってしまうことがある。
【０００７】
そこで本発明は、画像データにおけるノイズ量やノイズ量に関係する撮影条件に基づいて類似度を算出する画素数を変更することにより、処理負荷を軽減しつつ適切なノイズ低減処理を行うことを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため本発明は、画像データに対応するノイズに関する情報に基づいて、複数の画素からなる画素群を設定する設定手段と、前記設定手段により設定された画素群に従って導出される前記着目画素と参照画素との類似度に基づいて、前記参照画素に対する重みを決定する決定手段と、前記参照画素の画素値と前記重みとから、前記着目画素の画素値を出力する出力手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、画像データに対応するノイズに関する情報に基づいて類似度を算出することにより、処理負荷を軽減しつつ適切なノイズ低減処理を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】画像処理装置のハードウェア構成を示す模式図
【図２】ノイズ低減方法を説明する模式図
【図３】類似度に応じた重みを算出する関数を説明する模式図
【図４】画像処理装置の論理構成を示すブロック図
【図５】ノイズ分散と撮影情報の関係を示す図
【図６】マッチング領域設定の例を説明する模式図
【図７】マッチング領域を設定するためのテーブルを示す図
【図８】画像処理装置における処理のフローチャート図
【図９】ノイズ分散とセンサ温度の関係を示す模式図とマッチング領域を設定するためのテーブルを示す図
【図１０】画像処理装置の論理構成を示すブロック図
【図１１】ノイズ分散と画素値の関係を説明する模式図
【図１２】画像処理装置におけるフローチャートを示す図
【図１３】画像処理装置の論理構成を示すブロック図
【図１４】画像処理装置におけるフローチャートを示す図
【図１５】画像処理装置の論理構成を示すブロック図
【図１６】選択部１５１０の詳細な構成を示す図
【図１７】画像処理装置におけるフローチャートを示す図
【図１８】ノイズ分散と領域画素数を示す図
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明を好適な実施例に従って詳細に説明する。なお、以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【００１２】
＜第１実施形態＞
図１は、本実施形態に適用可能な画像処理装置のハードウェア構成を示す図である。本実施形態では、画像処理装置の一例としてデジタルカメラの構成例を示す。なお、ここでは画像処理装置の一例としてデジタルカメラについて述べるが、画像処理装置はこれに限られない。例えば画像処理装置は、携帯電話やタブレットデバイス、パーソナルコンピュータなどの情報処理装置であってもいいし、カメラ付き携帯電話等の撮像装置であっても良い。
【００１３】
本実施形態における画像処理装置は、ＣＰＵ１０１、ＲＡＭ１０２、記憶部１０３、汎用インターフェース（Ｉ／Ｆ）１０４、撮像部１０５、入力部１０６、表示部１０８、メインバス１０９を有する。ＣＰＵ１０１は、入力された信号や後述のプログラムに従って画像処理装置の各部を制御する。記憶部１０３には、ＣＰＵ１０１が各種ソフトウェアを実行するためのコンピュータプログラムが格納されている。ＣＰＵ１０１は、記憶部１０３に格納されたソフトウェアを動作させることで、画像処理装置における各種画像処理を実現する。なお、ここではＣＰＵ１０１が装置全体を制御する場合を例に説明するが、複数のハードウェアが処理を分担することにより、装置全体を制御するようにしてもよい。
【００１４】
撮像部１０５は、撮像部１０５に含まれるレンズにより結像された光を電気信号に変換し、デジタル画像データを生成する。撮像部１０５は、後述の入力部１０６を介して入力されるユーザの撮影指示に基づいて、デジタル画像データを撮像する。撮影指示とは例えば、ＩＳＯ感度や露光時間、あるいは、ＡＦ等である。撮像した画像データは、バッファメモリに蓄えられた後、ＣＰＵ１０１により所定の画像処理が施され、記憶部１０３に記憶される。
【００１５】
ＲＡＭ１０２は、撮像部１０５が撮像した画像データを一時的に保持するバッファメモリや、表示部１０８に表示する画像データや入力部１０６から受け付けた指示を保存するメモリ、ＣＰＵ１０１の作業領域等として使用される。
【００１６】
表示部１０８は、撮像する際のビューファインダー画像の表示や撮像した画像データの表示を行う。なお、表示部１０８は必ずしも画像処理装置が備える必要はない。汎用Ｉ／Ｆにより接続可能な外部装置に対して、表示を制御する機能を有してればよい。
【００１７】
入力部１０６は、ユーザによる画像処理装置に対する指示を受け付ける。入力部１０６は例えば、画像処理装置の電源のＯＮ／ＯＦＦを指示するための電源ボタンや、画像データの再生を指示するための再生ボタン等の操作部材を含む。または、表示部１０８がタッチパネルとして機能し、表示部１０８を介してユーザからの指示を受け付けるような構成でも良い。この場合表示部１０８は、ユーザが所望の指示を入力するためのユーザインタフェース（ＵＩ）を表示する。
【００１８】
汎用Ｉ／Ｆ１０４は、画像処理装置と外部装置とを接続するためのインターフェースである。汎用Ｉ／Ｆ１０４は、メモリーカード等の外部メモリ１０７をメインバス１０９に接続する。さらに、汎用Ｉ／Ｆ１０４は、赤外線通信や無線ＬＡＮ等を用いて通信装置とデータのやりとりを行う構成としても良い。
【００１９】
以下では、ＣＰＵ１０１が実行する各種画像処理について説明する。本実施形態においてＣＰＵ１０１は、撮像部１０５が撮像した画像データに対してノイズ低減処理を行い、ノイズを低減した画像データを記憶部１０３に格納する。
【００２０】
（ＮｏｎＬｏｃａｌＭｅａｎｓ法によるノイズ低減処理）
本実施形態においてＣＰＵ１０１によって実現される画像処理は、ＮｏｎＬｏｃａｌＭｅａｎｓ法と呼ばれるノイズ低減処理を行う。図２は、ＮｏｎＬｏｃａｌＭｅａｎｓ法によるノイズ低減処理を説明するための図である。図２（ａ）は、画像データ２０１を示す。画像データ２０１において左上の画素を（０，０）として、各画素の画素値をＩ（ｘ、ｙ）と表す。ここでは、画素２０２を着目画素とすると、着目画素の画素値はＩ（４，４）である。着目画素は、参照画素と参照画素に対応する重みとの重み付き平均により、ノイズ低減処理後の画素値（以後、出力値ともいう）が決定される。重み付き平均に用いられる参照画素の画素数をＮＳ、参照画素の画素値をＩｊ（ｊ＝１〜ＮＳ）、参照画素に対応する重みをｗｊ（ｊ＝１〜ＮＳ）とすると、ノイズ低減処理後の着目画素の画素値Ｉｎｅｗは次式になる。
【００２１】
【数１】
2015219603.tif 000003
【００２２】
参照画素に対応する重みは、着目画素に対する参照画素の類似度によって算出される。ＮｏｎＬｏｃａｌＭｅａｎｓ法と呼ばれるノイズ低減処理では、着目画素と参照画素との類似度を、着目画素を含む領域と参照画素を含む領域とを用いて決定する。なお類似度を決定するために用いられる領域をマッチング領域とする。図２（ａ）が示す画像データ２０１を例に説明する。着目画素２０２を含む５画素×５画素の矩形範囲２０４を参照画素群とし、参照画素群に含まれる２５画素それぞれを参照画素として設定するとする。また、マッチング領域には３×３の領域が設定されているとする。設定されたマッチング領域により、着目画素と参照画素との類似度を算出する。ここで画素２０６を参照画素とすると、着目画素２０２と参照画素２０６との類似度は、着目画素２０２を含む画素群２０３（以下、着目領域２０３）と参照画素２０６を含む画素群２０５（以下、参照領域２０５）とを比較することにより決定される。具体的には、着目領域２０３に含まれる各画素と参照領域２０５に含まれる各画素とについて、対応する画素の画素値の差分の二乗の総和に基づいて類似度とする。図２（ｂ）が示すように、着目領域２０３における画素をｂｓ（ｐ，ｑ）、参照領域２０５における画素をｂｊ（ｐ，ｑ）（ｊ＝１〜ＮＳ）とすると、類似度Ｃｊは式（１）になる。
【００２３】
【数２】
2015219603.tif 000004
【００２４】
類似度Ｃｊは値が小さいほど着目画素と参照画素とが類似していることを示す。なおここでは、着目領域と参照領域において対応する画素間の画素値の差分二乗和を類似度Ｃｊとして算出している。しかしながら、差分二乗和以外にも差分の絶対値の合計や評価関数を用いてもよい。
【００２５】
次に、類似度に応じて参照画素に対する重みが導出される。図３は、類似度に応じて重みを導出するための関数の一例を示す図である。類似度Ｃｊが小さいほど重みが大きく、類似度Ｃｊが大きいほど重みが小さくなるように決定すればよく、例えば式（３）により定まる。
【００２６】
【数３】
2015219603.tif 000005
【００２７】
ここで、ｈは重みの大きさを制御するための変数である。変数ｈを大きくするとノイズ低減効果が高くなるが、画像データのエッジがぼける。以上のように、参照画素群２０４に含まれる全ての画素を参照画素として設定し、各参照画素に対する重みを決定する。なお、本実施形態では、着目画素自身も参照画素として設定される。
【００２８】
（画像処理装置の論理構成）
図４は、本実施形態における画像処理装置の論理構成を示すブロック図である。本実施形態における画像処理装置４０１は、処理対象の画像データに対応するノイズに関する情報である画像データが撮像された時のＩＳＯ感度と露光時間に基づいてマッチング領域を設定する。
【００２９】
入力部４０２は、ＣＰＵ１０１の指示に基づき撮像部１０５が撮像した画像データを入力する。画像データは、記憶部１０３や外部メモリ１０７から入力される。撮像情報取得部４１０は、処理対象とする画像データにおけるノイズ量に関係がある情報として、処理対象とする画像データが撮像された時の撮像情報を取得する。本実施形態では、撮像時に設定されたＩＳＯ感度および露光時間を撮像情報として取得する。撮像情報取得４１０は、画像データのヘッダ情報からＩＳＯ感度および露光時間を取得する。なお、撮像情報を取得するのは画像データのヘッダ情報に限らず、撮像部１０５から直接取得してもいいし、記憶部１０３や外部メモリから、画像データに対応した撮像情報を取得してもいい。撮像情報取得部４１０は、取得した撮像情報をマッチング領域設定部４０５に出力する。
【００３０】
マッチング領域設定部４０５は、画像データに対応するノイズに関する撮像情報に基づいてマッチング領域を設定する。マッチング領域設定部４０５は、撮像情報により予測される画像データのノイズ量に適した画素数のマッチング領域を設定する。マッチング領域設定部４０５は、テーブル保持部４１１が保持するテーブルを参照する。処理の詳細は後述する。
【００３１】
着目領域取得部４０３は、入力された画像データにおける着目画素の画素値と、マッチング領域に対応する着目領域に含まれる画素の画素値を取得する。図２（ａ）が示す例のように、マッチング領域が３×３の領域に設定されている場合、着目画素を中心とする３×３の矩形領域に含まれる９画素の画素値を取得する。着目領域取得部４０３は、取得した各画素値を類似度算出部４０７に出力する。
【００３２】
参照画素選択部４０４は、着目画素の出力値を算出するための重み付き平均に用いる参照画素を選択する。参照画素選択部４０４は、予め定められた参照画素群の中から、未処理の画素を順次、参照画素として選択する。図２（ａ）が示すように、参照画素群が着目画素を含む２５画素に設定されている場合、参照画素選択部４０４は、着目画素に対して２５回参照画素を選択することになる。参照画素選択部４０４は、選択した画素の画素位置を示す情報を参照領域取得部４０６に出力する。
【００３３】
参照領域取得部４０６は、入力部４０２により入力される画像データから、参照画素選択部４０４によって選択された参照画素の画素値と、マッチング領域によって決められる参照領域に含まれる画素の画素値を取得する。着目領域取得部４０３と同様に、マッチング領域が３×３の領域に設定されている場合、参照画素を中心とする３×３の矩形領域に含まれる９画素の画素値を取得する。着目領域に含まれる各画素と参照領域に含まれる各画素は、それぞれ対応する位置にある。参照領域取得部４０６は、取得した各画素の画素値を類似度算出部４０７に出力する。
【００３４】
類似度算出部４０７は、式（２）に従い、着目領域と参照領域とにおいて対応する画素同士の差分を算出し、各差分の二乗を総合して得られる差分二乗和に基づいて、着目画素に対する参照画素の類似度を算出する。類似度算出部４０７は、参照画素に対応する類似度を画素値決定部４０８に出力する。本実施形態では、着目画素の出力値を算出するために参照画素群に含まれる２５画素が参照画素として設定される。従って、類似度算出部４０８は、着目画素の出力値を決定するために２５回類似度を算出することになる。
【００３５】
画素値決定部４０８は、類似度算出部４０７から受け取る類似度と、入力部４０２から受け取る各参照画素の画素値とから、着目画素の出力値を決定する。式（１）に示す通り、各参照画素の画素値と対応する重みとから重み付き平均を算出し、着目画素の出力値とする。画素値決定部４０８は、着目画素の出力値を逐次、出力部４０９に送る。
【００３６】
出力部４０９は、全ての画素について、ノイズ低減処理された出力値を格納した出力画像データを出力する。出力部４０９は、ＣＰＵ１０１の指示により出力画像データをＲＡＭ１０２に一次的に記憶した後、表示部１０８や記憶部１０３に出力する。あるいは、汎用Ｉ／Ｆ１０４に接続した外部メモリ１０７に出力してもよい。
【００３７】
（マッチング領域の設定について）
ここでマッチング領域設定部４０５における処理の詳細を説明する。本実施形態において着目画素に対する参照画素の類似度は、着目画素を含む着目領域と参照画素を含む参照領域とにおいて、画素値の差分によって算出される。つまり類似度は、着目領域における画素値のパターンと参照領域における画素値のパターンとが似ているかどうかによって決められる。パターンが似ている画素値に対する重みを大きくして重み付き平均することにより、ランダムなノイズ成分を平均化し、ノイズを低減した着目画素の値を算出する。一般に、類似度を算出するためのマッチング領域に含まれる画素数が多いほど、正確に類似度を算出することができる。特に画像データにおけるノイズが大きい場合、マッチング領域に対応する着目領域および参照領域における画素値のパターンは、ノイズ成分の影響を強く受けている。そのため、少ない画素数で類似度を算出すると、着目領域におけるノイズ成分のパターンを残す結果となり、着目画素のノイズ低減効果が小さくなってしまう。そこで、マッチング領域に含まれる画素数を多く設定すると、ノイズ成分はランダムであるため着目領域におけるノイズ成分のパターンに左右されることなくノイズ成分を平均化することができる。一方で、マッチング領域の画素数を多くするほど、着目領域に対して参照領域の画素値のパターンが類似しているかどうかの判定は厳しくなるとも言える。つまりマッチング領域の画素数が多いと、着目画素以外の画素を参照画素とした時の類似度を示す値が大きくなりやすい。本実施例における類似度はその値が小さいほど着目領域のパターンと参照領域のパターンが似ているということを示す。従って類似度が大きいと重みは小さくなるため、ノイズ低減処理後の着目画素の画素値は、ほとんどノイズ低減処理前の着目画素自身の値になってしまいノイズ低減効果が得られにくい。以上のように、着目画素と参照画素との類似度を算出するためには、適切な画素数のマッチング領域を設定する必要がある。特に、画像データにおけるノイズ量によってマッチング領域に適切な画素数が異なる。
【００３８】
ここで画像データは、撮像された時のＩＳＯ感度や露光時間によって画像データにおけるノイズ特性が異なる。そこで本実施形態では、画像データにおけるノイズに関係があるＩＳＯ感度と露光時間とに基づいて、適切な画素数のマッチング領域を決定する。図５は、ＩＳＯ感度とノイズ分散との関係、および露光時間とノイズ分散との関係を模式的に示す図である。図５の縦軸は、画像データにおけるノイズ分散を示す。画像データにおいてノイズ分散が小さいほどノイズは少なく、ノイズ分散が大きい画像に比べて視認性は良くなる傾向にある。従って、画像データにおけるノイズ量はノイズ分散によって評価することができる。図５（ａ）は、ＩＳＯ感度以外の撮影条件は同一にしたうえでＩＳＯ感度を様々な値に設定したときに、それぞれのＩＳＯ感度で撮像部１０５が撮像した複数の画像データを用いて作成することができる。各ＩＳＯ感度に対応する画像データにおけるノイズ分散を算出し、補間することにより図５（ａ）が示すノイズ特性が得られる。図５（ａ）が示す通り、ＩＳＯ感度を高く設定して撮像すると、画像データにおけるノイズ量は増加する。高いＩＳＯ感度を設定するということは、撮像するセンサ出力を増幅するゲインを大きくすることであるから、ノイズ量が増幅されてノイズ分散が大きくなる。図５（ｂ）も、同様に、露光時間以外の撮影条件は一定にし、露光時間を変化させて複数の画像データを取得する。そして各露光時間に対応する画像データにおけるノイズ分散を算出し、補間することにより図５（ｂ）が示すノイズ特性を得ることができる。露光時間については図５（ｂ）が示す通り、撮像時に露光時間を増やすほど、画像データにおけるノイズ量が増える。これは、露光時間が増えたことによりセンサが取得する光量が増えるためである。
【００３９】
本実施形態においてマッチング領域設定部４０５は、画像データにおけるノイズ量に影響を与えるＩＳＯ感度と露光時間とから、適切な画素数のマッチング領域を設定する。図６（ａ）〜（ｄ）は、本実施形態においてマッチング領域設定部４０５が設定する４つのマッチング領域を示す。図６（ａ）は、３×３の９画素からなるマッチング領域を示し、図６（ｂ）は、５×５の２５画素からなるマッチング領域を示す。図６（ｃ）は、中心画素からマンハッタン距離が２以下の範囲にある１３画素からなるマッチング領域を示し、図６（ｄ）は、５×５の矩形領域から４隅の画素を差し引いた２１画素からなるマッチング領域を示す。本実施形態におけるマッチング領域設定部４０５は、ＩＳＯ感度および露光時間に応じて、図６が示す画素配置のうち何れかをマッチング領域として設定する。図７は、テーブル保持部２１１が保持するマッチング領域を設定するためのテーブルの一例を示す図である。図７において、ａ、ｂ、ｃ、ｄはそれぞれ画素数を表わしており、ａ＜ｂ＜ｃ＜ｄ  の関係にある。図５に示した撮影条件ごとに撮像した画像データにおけるノイズ量の多寡がわかっているので、それに応じて画素数を設定する。ＩＳＯ感度が高く、露光時間も長い場合は多い画素数、ＩＳＯ感度が高く露光時間が短い場合は中程度の画素数、ＩＳＯ感度も露光時間も短い場合は少ない画素数とする。
【００４０】
（画像処理装置におけるフロー）
図８は、ＣＰＵ１０１が実行する画像処理装置における処理のフローチャートを示す。ステップＳ８０１において入力部は、撮像部１０５が撮像した画像データを入力する。
【００４１】
ステップＳ８０２において撮像情報取得部４１０は、撮像部１０５から処理対象とするデジタル画像データを撮像した時のＩＳＯ感度および露光時間を撮像情報として取得する。ステップＳ８０３においてマッチング領域設定部４０５は、処理対象とする画像データにおいて、ＮＬＭ法によりノイズ低減処理を行うためのマッチング領域を設定する。マッチング領域は、着目画素と参照画素の類似度を決めるために用いる画素群を示す。マッチング領域設定部４０５は、テーブル保持部２１１が保持する図７が示すテーブルを参照し、ノイズに応じて適切な画素数のマッチング領域を設定する。例えば、ここで図６（ｂ）が示すマッチング領域が設定されたとする。
【００４２】
ステップＳ８０４において着目領域取得部４０３は、着目画素を含む着目領域に含まれる各画素の画素値を取得する。着目領域は、マッチング領域設定部４０５により設定された領域に対応する画素群である。つまりここでは、着目画素を中心とした５×５の矩形領域に含まれる画素の画素値を取得する。
【００４３】
ステップＳ８０５において参照画素選択部４０４は、参照画素群に含まれる着目画素の出力値を算出するために用いる参照画素のうち、類似度の算出が未処理の画素を選択する。ステップＳ８０６において参照領域取得部４０６は、参照画素を含む参照領域に含まれる各画素の画素値を取得する。着目領域同様、参照領域も、マッチング領域設定部４０５により設定された領域に対応する画素群である。つまり、選択された参照画素を中心として５×５の領域に含まれる画素の画素値を取得する。
【００４４】
ステップＳ８０７において類似度算出部４０７は、着目領域と参照領域における対応する画素の差分に基づいて、着目画素と参照画素の類似度を算出する。本実施形態では、式（２）が示す通り、着目領域と参照領域における差分二乗和を類似度とする。各画素値の差分を二乗した値の総合が小さいほど、着目領域の画素値のパターンと参照領域の画素値のパターンとは類似していることになる。ここでは、マッチング領域として図６（ｂ）が示す領域が設定されているので、対応する画素位置の画素値の差分を２５画素分算出する。２５画素の差分二乗和が参照画素に対応する類似度として、算出される。
【００４５】
ステップＳ８０８において、参照画素選択部４０４が参照画素群内の全ての画素を選択したかを判定する。まだ未処理の画素がある場合には、ステップＳ８０５に戻り未処理の画素を参照画素として、ステップＳ８０６、ステップＳ８０７を繰り返し実行する。ここでは、参照画素群として着目画素を中心とする５×５の矩形領域が設定されているので、２５画素分、ステップＳ８０６およびステップＳ８０７を繰り返すことになる。ステップＳ８０８において、参照画素群の全ての画素に対して類似度が算出されたと判定されると、ステップＳ８０９に進む。
【００４６】
ステップＳ８０９において画素値決定部４０８は、各参照画素の画素値と対応する類似度とから、式（１）の通りに着目画素の出力値を算出する。式（１）により算出された着目画素の出力値は、元の着目画素の画素値よりもノイズ低減された画素値である。
【００４７】
以上の処理を画像データのける全ての画素を着目画素として繰り返す。ステップＳ８１０において、画像データ全ての画素に対して出力値が算出されると、本実施形態におけるノイズ低減処理が完了する。
【００４８】
以上本実施形態では、着目画素と参照画素との類似度を算出するために必要な各画素近傍の画素群を、ノイズ量に関係のあるＩＳＯ感度および露光時間とに基づいて決定する。より具体的には、画像データにおけるノイズ分散が大きいと予測されるＩＳＯ感度および露光時間により撮像された場合、より画素数の多い着目領域と参照領域とを比較する。これにより、画像データにおけるノイズ量に応じた適切な画素数により着目画素と参照画素の類似度を算出することができる。さらに、マッチング領域の画素数が少ない方が、少ない演算量で着目画素と参照画素との類似度を算出できる。そのため本実施例では、ノイズ低減処理の演算コストを低減することができる。
【００４９】
＜第１変形例＞
前述の実施形態では、着目領域と参照領域とを比較するためのマッチング領域に含まれる画素数を、画像データにおけるノイズが予測可能な撮像条件に応じて設定した。他にも、ノイズに関係のある撮像情報として撮像環境を用いてもよい。
【００５０】
図９（ａ）は、センサ温度と画像データにおけるノイズ分散との関係を示す。図９（ａ）において縦軸は画像データにおけるノイズ分散を示す。横軸はセンサ温度であり、撮像部１０５に内蔵されたセンサに付属している温度計から取得することができる。図９（ａ）はセンサ温度を保った状態で他の撮影条件を一定にして、それぞれのセンサ温度で撮像部１０５が撮像した複数の画像データを用いて作成することができる。図９（ａ）が示す通り、センサ温度が高い時に撮像された画像データは、ノイズ分散が大きいことが知られている。これはセンサ温度上昇により熱雑音が増すためである。
【００５１】
図９（ｂ）は、ＩＳＯ感度、露光時間およびセンサ温度とから、マッチング領域を設定するための３次元テーブルを示す。ＩＳＯ感度が高く、露光時間が長く、センサ温度が高い状態で撮像された画像データでは、画素数の多いマッチング領域が設定されるように構成されている。
【００５２】
マッチング領域設定部４０５は、ＩＳＯ感度、露光時間、センサ温度を撮像情報として取得し、図９（ｂ）が示すテーブルを参照することで、より適応的にマッチング領域を設定することができる。
【００５３】
＜第２変形例＞
前述の実施形態では、ＩＳＯ感度と露光時間を参照してマッチング領域を設定する例について説明した。しかしながら、画像データや撮像状況などによっては、ＩＳＯ感度と露光時間の両方の撮像情報を得られない場合がある。このような場合に備えて、いずれか一方の撮像情報しか得られなかった場合でも、マッチング領域を設定できるような構成にしておくことが望ましい。
【００５４】
具体的には、それぞれの撮影条件が不明だった場合に用いる撮像情報の固定値を設定しておく。これにより、いずれか一方のみの撮像情報しか得られない場合にも対応できる。例えば露光時間を示す情報が得られなかった場合、ある露光時間を固定値として設定しておけば露光時間不明の場合に用いる列を用意できる。そしてその列から、取得したＩＳＯ感度に対応するマッチング領域を設定する。このようにすることで、少なくとも得られた撮像情報に応じてマッチング領域を設定することができる。各撮像情報が不明だったときの画素値は、最も使われ易い値や、平均的な値を選択しておくことが好ましい。
【００５５】
＜第２実施形態＞
前述の実施形態では、ノイズ低減処理の対象となる画像データが撮像された時の撮像情報に基づいてマッチング領域を設定した。この場合、画像データ全体として１つのマッチング領域が設定されることになる。画像データは、領域によってノイズ特性が異なる。そこで第２実施形態では、画素毎にマッチング領域を設定する方法について説明する。なお、第１実施形態と同様の構成については同一の符号を付し、その説明を省略する。
【００５６】
図１０は、第２実施形態に適用可能な画像処理装置４０１を示す。図１１は、画素値（輝度）とノイズ分散の関係を表す図である。図１１は撮影条件を一定にして、各輝度を撮影した複数の画像データを用いて作成することができる。図１１が示す通り、画素値が大きいと高輝度で光量が多いためにノイズ量も多いことが知られている。そこで本実施形態におけるマッチング領域設定部２０５は、画像データのノイズに関する情報として、着目画素の画素値を用いてマッチング領域を設定する。
【００５７】
図１２は、第２実施形態における画像処理装置４０１のフローチャートを示す。ステップＳ８０１において画像データを入力した後、ステップＳ１２０１においてマッチング領域４０５は、入力部４０２から着目画素の画素値を取得する。マッチング領域設定部４０５は、ステップＳ８０３において、着目画素の画素値に応じてマッチング領域を決定する。例えば、前述の通り画像データにおいては画素値が大きいほどノイズ量が多いので、画素値が大きいほど画素数の多いマッチング領域を設定する。第１実施形態と同様、マッチング領域は図６（ａ）〜（ｄ）が示す４つのマッチング領域のうちいずれかを設定する場合、画素値に対して３段階の閾値を設定することにより、図６（ａ）〜（ｄ）のいずれかを決定することができる。例えば、閾値Ｔｈ１＞Ｔｈ２＞Ｔｈ３とすると、閾値Ｔｈ１以上の画素値であれば、画素数が最も多いマッチング領域である図６（ｂ）を、閾値Ｔｈ１未満Ｔｈ２以上であれば、図６（ｄ）を設定する。また、閾値Ｔｈ２未満Ｔｈ３以上であれば図６（ｃ）を、閾値Ｔｈ３未満であれば、図６（ａ）を設定する。以降の処理は前述の実施形態と同様である。
【００５８】
なお本実施形態の場合、前述の第１実施形態とは異なり、処理対象の画像データにおいて画素毎にマッチング領域が設定されることになる。従って、ステップＳ８０９において着目画素の画素値を算出した後は、ステップＳ８１０において画像データにおける全ての画素値に対して処理が実行されたかを判定される。ステップＳ８１０において未処理画素があると判定された場合は、ステップＳ１２０１に戻り、画素値の取得およびマッチング領域の設定から処理を繰り返すことになる。
【００５９】
なお、第２実施形態では、着目画素の画素値を用いてマッチング領域を設定した。着目画素の画素値以外にも、画素毎のノイズ量と関係する情報として、着目領域に含まれる各画素の画素値の平均や中央値を用いてもよい。または、画像データにおける領域ごとに画素値の平均を算出し、領域ごとにマッチング領域を設定してもよい。
【００６０】
＜第３実施形態＞
前述の実施形態では、撮像情報や画素値などノイズ特性を予測可能な情報に基づいて、類似度を算出するためのマッチング領域を設定した。本実施形態では、画像データを解析することにより実際の画像データにおけるノイズ量を推定し、推定して得られるノイズ量に応じてマッチング領域を設定する方法について説明する。なお、第１実施形態と同様の構成については同一の符号を付し、その説明を省略する。
図１３は、第３実施形態における画像処理装置４０１を示す。本実施形態における画像処理装置４０１は、ノイズ量推定部１３０１を有する。ノイズ量推定部１３０１は、入力部２０２から受け取った画像データについてノイズ量を推定する。
【００６１】
例えば、時間方向のノイズを考慮しなければ、画像データにおけるノイズ量を表わすノイズ分散は画像データの平坦部における分散として近似的に求めることができる。分散を求める式を以下に示す。
【００６２】
【数４】
2015219603.tif 000006
【００６３】
式（４）において、Ｎは分散を求める領域内に含まれる画素数、ｘは各画素値、
【００６４】
【数５】
2015219603.tif 000007
【００６５】
は領域内に含まれる画素の画素値の平均値を表わす。つまり式（４）の場合、領域内にある画素の平均値に対するノイズの分散を求める式である。
【００６６】
ノイズ量推定部１３０１は、式（４）を用いて、画像デ―タにおけるノイズ量を推定する。本実施形態では、処理対象の画像データにおける平坦部において推定したノイズ量に基づいて、着目画素と参照画素の類似度を算出するためのマッチング領域を設定する。
【００６７】
図１４は、本実施形態における画像処理装置２０１のフローチャートを示す。ステップＳ１５０１においてノイズ量推定部１３０１は、まず画像データにおける平坦部を検出する。画像データにおける平坦部の検出は、従来から知られている方法を適用すればよい。ノイズ量推定部１３０１は抽出した平坦部について、式（４）により推定ノイズ量を算出する。
【００６８】
ステップＳ８０３においてマッチング領域４０５は、ノイズ量推定部１３０１から出力された推定ノイズ量に応じて、マッチング領域を設定する。推定ノイズ量が大きいほど画素数の多いマッチング領域を設定する。実施形態１と同様にテーブルを用いてもよいし、第２実施形態のように閾値によりマッチング領域に振り分けても良い。
【００６９】
ステップＳ８０４以降の処理は第１実施形態と同様である。すなわち、本実施形態では、画像データにおけるすべての着目画素で同じマッチング領域による類似度算出を行う。
【００７０】
以上本実施形態によれば、画像データから推定したノイズ量に応じた画素数のマッチング領域を設定することができる。処理対象とする画像データが撮像された時の撮像部１０５の撮像条件や撮像環境は必ずしも取得できるわけではない。例えば、本実施形態における画像処理装置４０１が一般的なパーソナルコンピュータやタブレット端末等に構成されている場合を考える。このとき、本実施形態が示すノイズ低減処理を実行する画像処理装置４０１と画像データを撮像する撮像装置１０５は別装置である。このような場合、ノイズ低減処理の対象とする画像データの撮像情報を取得できないこともある。そこで第３実施形態が示す通り、画像データからノイズ量を推定することにより、適切な画素数のマッチング領域を設定することができる。
【００７１】
＜第４実施形態＞
前述の実施形態では、画像データにおけるノイズに関する情報に基づいて、マッチング領域を設定してから、ノイズ低減処理を実行した。第４実施形態では、予め異なる画素数のマッチング領域によるノイズ低減処理を並列して行い、画像データにおけるノイズ量に基づいて、より適切な画素数のマッチング領域によりノイズ低減処理された結果を出力値として決定する方法について説明する。
【００７２】
図１５は、第４実施形態に適用可能な画像処理装置２０１の詳細を示すブロック図である。入力部１５０１は、画像データを入力する。第１着目領域取得部１５０２は、予め設定された着目画素を含む第１着目領域の各画素値を入力部１５０１から取得する。参照画素決定部１５０３は、処理対象とする参照画素を決定し、第１参照領域取得部１５０４および第２参照領域取得部１５０７に出力する。第１参照領域取得部１５０４は、前記参照画素について、前記第１の着目領域と同じ画素配置の画素の画素値を取得する。類似度算出部１５０４は、着目画素と参照画素について第１着目領域における類似度を算出する。画素値決定部１５０５は、類似度算出部１５０４から得られる類似度に応じた重みと、対応する参照画素の画素値とから、着目画素の第１の出力値を決定する。
【００７３】
一方第２着目領域取得部１５０６は、予め設定された前記第１着目領域とは異なる画素数である第２着目領域の各画素値を入力部１５０１から取得する。第２参照領域取得部１５０７は、参照画素について、第２着目領域と同じ画素配置の画素の画素値を取得する。類似度算出部１５０８は、着目画素と参照画素について第２着目領域における類似度を算出する。画素値決定部１５０９は、類似度算出部１５０８から得られる類似度に応じた重みと、対応する参照画素の画素値とから、着目画素の第２の出力値を決定する。
【００７４】
選択部１５１０には、画素値決定部１５０５から第１の出力値が、画素値決定部１５０９からは第２の出力値が入力される。選択部１５１０は、画像データにおけるノイズに関する情報に基づいて、第１の出力値か第２の出力値の何れか一方を着目画素の出力値として選択する。選択部１５１０は着目画素の出力値として、選択した方の値を出力部１５１１に出力する。出力部１５１１は、出力値からなる出力画像データを出力する。
【００７５】
図１７は、選択部１５１０の詳細な構成を示すブロック図である。選択部１５１０は、評価部１６０１、画素数取得部１６０２、判定部１６０３を有する。画素数取得部１６０２は、第１の着目領域に含まれる画素数および第２の着目領域に含まれる画素数を取得する。すなわち、第１の出力値および第２の出力値それぞれが、何画素間の比較により算出された類似度に基づく結果かを取得する。評価部１６０１は、入力されたそれぞれの画像データにおけるノイズ量を取得する。ここでは前述のように、ノイズと関係のある撮像条件や撮影環境によりノイズ量を判定してもいい。または、着目画素毎に画素値からノイズ量の多さを判定してもいいし、画像データから式（４）によりノイズ量を推定してもよい。
【００７６】
判定部１６０３は、評価部１６０１により算出された各画像データのノイズ量に基づいて、第１の出力値と第２の出力値のうち、より適切な画素数の比較により算出された類似度に基づく値を判定する。
【００７７】
図１８は、本実施形態においてＣＰＵ１０１が実行する画像処理装置４０１のフローチャートを示す。本実施形態では、図６（ａ）が示す９画素からなる領域を第１の着目領域とし、図６（ｂ）が示す２５画素からなる領域を第２の着目領域とする。
【００７８】
ステップＳ１７０２において第１着目領域取得部１５０２は、着目画素を中心とする３×３の領域（第１着目領域）の各画素値を取得する。ステップＳ１７０３において参照画素決定部１５０３から処理対象とする参照画素が入力される。ステップＳ１７０４において、参照画素を中心とする３×３の領域の各画素値を取得する。ステップＳ１７０４において類似度算出部１５０４は、３×３に含まれる画素間の差分に基づいて着目画素に対する参照画素の類似度を算出する。ステップＳ１７０７において設定された参照画素群における全ての画素を参照画素として処理を実行したかを判定し、全ての参照画素に類似度が算出されるとステップＳ１７０７に進む。ステップＳ１７０７において画素値決定部１５０５は、参照画素の各画素値と対応する重みとから重み付き平均により第１の出力値を算出する。第１の出力値は、３×３の矩形領域に含まれる画素群間の比較により算出された類似度に基づくことになる。全ての画素を着目画素として第１の出力値を算出すると、ステップＳ１７０８によりステップ１７１６に進む。
【００７９】
ステップＳ１７０９からステップＳ１７１５までの処理は、類似度を算出するための画素群以外は全て同様である。前述の通り、ステップＳ１７０９からステップＳ１７１６あまでの処理は、５×５の矩形領域（第２着目領域）に含まれる画素群により類似度が算出され、第２の出力値が得られる。
【００８０】
ステップＳ１７１６において選択部１５１０は、画素ごとに画素値決定部１５０５により出力された画素値か画素値決定部１５０９により出力された画素値かを選択する。着目画素について、評価部１６０１は画素毎に、画素値決定部１５０５から出力される第１着目領域を用いてノイズ低減処理された画像データと、画素値決定部１５０９から出力される第２着目領域を用いてノイズ低減処理された画像データとをそれぞれ評価する。ここでは、それぞれの画像データにおけるノイズ量を算出するとする。判定部１７０３は、評価部１６０１が評価した結果から、画素値決定部１５０５による出力値か画素値決定部１５０９による出力値かのいずれかより適切にノイズ低減処理されているかを判定する。本実施例で、評価部１６０１による評価の結果、よりノイズ量が少ない方の出力値を選択すべきと判定して出力する。
【００８１】
ステップＳ１７１７において出力部１５１１は、全ての画素における出力値が決定されると、出力画像データを出力する。
【００８２】
なお第４実施形態において、選択部１５１０は、画素値決定部１５０５および画素値決定部１５０９が全ての画素に対して処理した後、画素毎に出力値を選択するが、これに限らない。画素値決定部１５０５と画素値決定部１５０９とからそれぞれ第１の出力値と第２の出力値が得られるたびに、着目画素の出力値を選択するような構成にすることもできる。この場合例えば、入力画像データにおける画素ごとにノイズ量の評価値としてノイズ分散を算出し、画素ごとに類似度を算出するのにより望ましい画素数を決定しておく。ノイズ分散に応じて望ましい画素数は、図１８のようなテーブルを保持することにより決定される。決定された画素数に近い方の画素数の画素群により類似度が算出された結果である出力値の方を、画素値決定部１５０５か画素値決定部１５０９から選択する。この場合、評価部１６０１には入力画像データのみが入力される構成でよい。このとき、画素値決定部１５０５と画素値決定部１５０９の出力は選択部１５１０に入力されればよい。
【００８３】
以上のように、それぞれ異なる画素数のマッチング領域を用いるノイズ低減処理を並行して実行し、出力値を選択することにより、前述の実施形態と同様の効果を実現することができる。
【００８４】
＜その他の実施形態＞
前述の実施形態および変形例では、マッチング領域として着目画素または参照画素を中心とした矩形領域を設定した。しかしながらこれに限らない。例えば図６（ｅ）が示すように、連続しない複数の画素からなる画素群をマッチング領域とし、着目画素に対する参照画素の類似度を算出してもよい。また、図６（ｆ）が示すように、着目画素または参照画素を中心とした十字の画素群をマッチング領域としてもよい。
【００８５】
前述の実施形態および変形例では、着目画素の出力値を算出するために用いる画素の参照画素群を、着目画素を中心とする５画素×５画素として説明したが、これに限らない。画像データにおける全画素の参照画素として設定してもよいし、着目画素を含まない複数の画素を参照画素としてもよい。
【００８６】
本発明は、上述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給することによっても実現できる。この場合、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が、コンピュータが読み取り可能な記憶媒体に格納されたプログラムコードを読み出し実行することにより、上述した実施例の機能を実現する。
【符号の説明】
【００８７】
４０１  画像処理装置
４０３  着目画素群取得部
４０４  参照画素選択部
４０５  マッチング領域設定部
４０６  参照画素群取得部
４０７  類似度算出部
４０８  画素値決定部
４１０  撮像情報取得部
４１１  テーブル保持部
【図１】
2015219603.tif 000008
【図２】
2015219603.tif 000009
【図３】
2015219603.tif 000010
【図４】
2015219603.tif 000011
【図５】
2015219603.tif 000012
【図６】
2015219603.tif 000013
【図７】
2015219603.tif 000014
【図８】
2015219603.tif 000015
【図９】
2015219603.tif 000016
【図１０】
2015219603.tif 000017
【図１１】
2015219603.tif 000018
【図１２】
2015219603.tif 000019
【図１３】
2015219603.tif 000020
【図１４】
2015219603.tif 000021
【図１５】
2015219603.tif 000022
【図１６】
2015219603.tif 000023
【図１７】
2015219603.tif 000024
【図１８】
2015219603.tif 000025