(57)【要約】【課題】使用するニューラルネットワークの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行う。【解決手段】一実施形態における画像処理装置は、複数のノイズレベルに関するパラメータと、複数のニューラルネットワークのうち適用するニューラルネットワークの組合せまたはニューラルネットワークの適用回数の少なくともいずれかを対応付けた、複数のノイズレベルそれぞれの複数のノイズ低減処理の組合せを示す組合せデータを保持する。また、処理対象の画像から取得したノイズレベルに関する情報に基づいて、上記組合せデータから処理対象の画像に対するノイズ低減処理の組合せを決定する。さらに、決定されたノイズ低減処理の組合せデータに基づいて、処理対象の画像に対する複数のニューラルネットワークのうち少なくとも１つを用いたノイズ低減処理を実行する。【選択図】図２
2020191046.tif 000002
【特許請求の範囲】
【請求項１】
所定のノイズレベルの画像をノイズ低減処理した結果を学習した複数のニューラルネットワークを用いて、画像のノイズ低減処理を実行する画像処理装置であって、
複数のノイズレベルに関するパラメータと、前記複数のニューラルネットワークのうち適用するニューラルネットワークの組合せまたは前記ニューラルネットワークの適用回数の少なくともいずれかを対応付けた、前記複数のノイズレベルそれぞれの複数のノイズ低減処理の組合せを示す組合せデータを保持する保持手段と、
処理対象の画像から前記ノイズレベルに関する情報を取得する取得手段と、
前記取得したノイズレベルに関する情報に基づいて、前記保持手段に保持された前記組合せデータから前記処理対象の画像に対するノイズ低減処理の組合せを決定する決定手段と、
前記決定手段によって決定された前記ノイズ低減処理の組合せデータに基づいて、前記処理対象の画像に対する前記複数のニューラルネットワークのうち少なくとも１つを用いた前記ノイズ低減処理を実行する実行手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記複数のノイズレベルに関するパラメータは、前記画像の撮影時のＩＳＯ感度、感度補正用のゲイン値、またはノイズの分散値に関する情報であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記ニューラルネットワークの適用回数は、所定のノイズレベルの画像に対して前記ニューラルネットワークを複数回適用するように設定されることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記複数のノイズ低減処理の組合せは、画質優先時と速度優先時とで異なる組合せを含むことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記処理対象の画像は、入力画像を分割した部分画像であって、
前記入力画像を前記部分画像に分割する分割手段と、
前記ノイズ低減処理がなされた前記部分画像を統合する統合手段と
をさらに有することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記入力画像は、静止画であって、
前記部分画像は、前記静止画の一部分であることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記入力画像は、動画であって、
前記部分画像は、前記動画の一フレームであることを特徴とする請求項５に記載の画像処理装置。
【請求項８】
前記処理対象の画像は、入力画像を分解した輝度成分または色成分の画像であって、
前記入力画像を前記輝度成分の画像及び前記色成分の画像に分解する分解手段と、
前記ノイズ低減処理がなされた前記輝度成分の画像及び前記色成分の画像を統合する統合手段と
をさらに有することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項９】
前記ノイズ低減処理がなされた画像を表示する表示手段と、
ユーザによる追加処理の指示を入力する入力手段とをさらに有し、
前記実行手段は、前記指示に応じて追加で前記ノイズ低減処理を行うことを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項１０】
前記ノイズ低減処理がなされた画像の残留ノイズレベルが所定の条件を満たすかどうかを判定する判定手段をさらに有し、
前記残留ノイズレベルが所定の条件を満たさないと判定された場合に、前記実行手段が追加で前記ノイズ低減処理を行うことを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項１１】
所定のノイズレベルの画像をノイズ低減処理した結果を学習した複数のニューラルネットワークを用いて、画像のノイズ低減処理を実行する画像処理方法であって、
処理対象の画像からノイズレベルに関する情報を取得する取得ステップと、
複数のノイズレベルに関するパラメータと、前記複数のニューラルネットワークのうち適用するニューラルネットワークの組合せまたは前記ニューラルネットワークの適用回数の少なくともいずれかを対応付けた、前記複数のノイズレベルそれぞれの複数のノイズ低減処理の組合せを示す組合せデータから、前記取得したノイズレベルに関する情報に基づいて、前記処理対象の画像に対するノイズ低減処理の組合せを決定する決定ステップと、
前記決定ステップによって決定された前記ノイズ低減処理の組合せデータに基づいて、前記処理対象の画像に対する前記複数のニューラルネットワークのうち少なくとも１つを用いた前記ノイズ低減処理を実行する実行ステップと
を含むことを特徴とする画像処理方法。
【請求項１２】
コンピュータに、請求項１１に記載の画像処理方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像におけるノイズを低減する技術に関する。
【背景技術】
【０００２】
近年、ディープニューラルネットワーク（ＤＮＮ）が、多くの画像復元のアプリケーションに応用されてきている。ディープニューラルネットワークとは、具体的には、２層以上の隠れ層を有するニューラルネットワークを指し、隠れ層の数を多くすることで性能が向上してきている。画像復元とは、具体的には、ノイズ除去、ボケ除去、超解像、欠損補完などの、劣化画像から元の画像を復元する処理を指す。画像復元におけるＤＮＮは、特定のパラメータで表現できる画像劣化に対しては従来の手法を上回る復元性能を示すものの、多様な画像劣化に対しては単一のニューラルネットワークでは復元性能が低下することが知られている。例えば、ノイズ除去の場合、ニューラルネットワークの学習に用いられる画像のノイズレベルが単一、あるいは十分に狭い範囲にある場合、学習時と同じノイズレベルの画像は良好にノイズが除去される。しかし、学習に用いられた画像のノイズレベルとは異なるノイズレベルの画像に対しては、不十分なノイズ除去効果しか得られない。
【０００３】
そこで、単一のニューラルネットワークを、ノイズレベルの異なる複数の画像に対応させるために、ノイズレベルの異なる複数の画像を混在させてニューラルネットワークを学習させる方法が知られている（非特許文献１）。この方法によれば、学習に用いた画像のいずれかのノイズレベルのノイズを有する画像に対しては、ノイズ除去効果が得られる。しかし、処理対象の画像と同一かつ単一のノイズレベルで学習させたニューラルネットワークを用いてノイズ除去した場合に比べると、画質が低下してしまう。したがって、画質の低下を避けるためには、処理対象の画像の全てのノイズレベルの各々に対して個別に学習させた複数のニューラルネットワークを用意し、処理対象の画像のノイズレベルに応じてそれらを使い分ける必要がある。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】K． Zhang， W． Zuo， Y． Chen， D． Meng， and L． Zhang， “Beyond a gaussian denoiser: Residual learning of deep cnn for image denoising，” IEEE Trans． Image Process．， vol． 26， no． 7， pp． 3142 - 3155， 2017．
【非特許文献２】Foi， A．， M． Trimeche， V． Katkovnik， and K． Egiazarian， "Practical Poissonian-Gaussian noise modeling and fitting for single-image raw-data"， IEEE Trans． Image Process．， vol． 17， no． 10， pp． 1737-1754， 2008．
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、全てのノイズレベルの各々に対して学習済みニューラルネットワークを用意しようとすると、そのための計算コストが増加し、また、当該ニューラルネットワークのパラメータを保持するために必要な記憶領域も増加してしまう。そうすると、ニューラルネットワークを実装するデバイスや環境が制約されてしまう。
【０００６】
本発明は、このような問題に鑑みてなされたものであり、使用するニューラルネットワークの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行うことを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一実施形態において、所定のノイズレベルの画像をノイズ低減処理した結果を学習した複数のニューラルネットワークを用いて、画像のノイズ低減処理を実行する画像処理装置は、複数のノイズレベルに関するパラメータと、前記複数のニューラルネットワークのうち適用するニューラルネットワークの組合せまたは前記ニューラルネットワークの適用回数の少なくともいずれかを対応付けた、前記複数のノイズレベルそれぞれの複数のノイズ低減処理の組合せを示す組合せデータを保持する保持手段と、処理対象の画像から前記ノイズレベルに関する情報を取得する取得手段と、前記取得したノイズレベルに関する情報に基づいて、前記保持手段に保持された前記組合せデータから前記処理対象の画像に対するノイズ低減処理の組合せを決定する決定手段と、前記決定手段によって決定された前記ノイズ低減処理の組合せデータに基づいて、前記処理対象の画像に対する前記複数のニューラルネットワークのうち少なくとも１つを用いた前記ノイズ低減処理を実行する実行手段とを有する。
【発明の効果】
【０００８】
本発明によれば、使用するニューラルネットワークの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態における情報処理装置のハードウェア構成例を示す概略図。
【図２】第１の実施形態における情報処理装置の機能ブロック図。
【図３】第１の実施形態におけるノイズ低減処理のフローチャート。
【図４】ニューラルネットワークの構造の一例を示すブロック図。
【図５】第１及び第２の実施形態のルックアップテーブルの一例を示す図。
【図６】第４の実施形態における情報処理装置の機能ブロック図。
【図７】第４の実施形態におけるノイズ低減処理のフローチャート。
【図８】第５の実施形態におけるノイズ低減処理のフローチャート。
【図９】第６の実施形態における情報処理装置の機能ブロック図。
【図１０】第６の実施形態におけるノイズ低減処理のフローチャート。
【発明を実施するための形態】
【００１０】
＜第１の実施形態＞
第１の実施形態では、画像の撮影時のＩＳＯ感度に応じて、ノイズ低減処理に用いる学習済みのニューラルネットワーク（以下、ＮＮ）と、当該ＮＮによるノイズ低減処理の処理回数とを決定して、ノイズ低減を行う例を述べる。
【００１１】
図１は、本実施形態における情報処理装置のハードウェア構成の一例を示す図である。本実施形態において、情報処理装置は、画像に対してノイズ低減処理を実行する画像処理装置である。
【００１２】
本実施形態の情報処理装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、二次記憶装置１０４、入力インターフェース１０５、及び出力インターフェース１０６を含む。情報処理装置１００の各構成要素は、システムバス１０７によって相互に接続されている。また、情報処理装置１００は、入力インターフェース１０５を介して外部記憶装置１０８および操作部１１０に接続されている。また、情報処理装置１００は、出力インターフェース１０６を介して外部記憶装置１０８および表示装置１０９に接続されている。
【００１３】
ＣＰＵ１０１は、ＲＡＭ１０２をワークメモリとして、ＲＯＭ１０３に格納されたプログラムを実行し、システムバス１０７を介して情報処理装置１００の各構成要素を統括的に制御する。これにより、後述する様々な処理が実行される。二次記憶装置１０４は、情報処理装置１００で取り扱われる種々のデータを記憶する記憶装置であり、本実施形態ではＨＤＤが用いられる。ＣＰＵ１０１は、システムバス１０７を介して二次記憶装置１０４へのデータの書き込みおよび二次記憶装置１０４に記憶されたデータの読出しを行う。なお、二次記憶装置１０４にはＨＤＤの他に、光ディスクドライブやフラッシュメモリなど、様々な記憶デバイスを用いることが可能である。
【００１４】
入力インターフェース１０５は、例えばＵＳＢやＩＥＥＥ１３９４等のシリアルバスインターフェースである。情報処理装置１００は、入力インターフェース１０５を介して、外部装置からデータや命令等を入力する。本実施形態では、情報処理装置１００は、入力インターフェース１０５を介して、外部記憶装置１０８（例えば、ハードディスク、メモリカード、ＣＦカード、ＳＤカード、ＵＳＢメモリなどの記憶媒体）からデータを取得する。また本実施形態では、情報処理装置１００は、操作部１１０に入力されたユーザの指示を、入力インターフェース１０５を介して取得する。操作部１１０は、マウスやキーボードなどの入力装置であり、ユーザの指示を入力する。
【００１５】
出力インターフェース１０６は、入力インターフェース１０５と同様にＵＳＢやＩＥＥＥ１３９４等のシリアルバスインターフェースである。なお、出力インターフェース１０６は、例えばＤＶＩやＨＤＭＩ（登録商標）等の映像出力端子であってもよい。情報処理装置１００は、出力インターフェース１０６を介して、外部装置にデータ等を出力する。本実施形態では、情報処理装置１００は、出力インターフェース１０６を介して表示装置１０９（液晶ディスプレイなどの各種画像表示デバイス）に、ＣＰＵ１０１によって処理されたデータ（例えば、画像データ）を出力する。なお、情報処理装置１００の構成要素は上記以外にも存在するが、本開示の主眼ではないため、説明を省略する。
【００１６】
以下、本実施形態の情報処理装置１００で行われる処理について、図２に示される機能ブロック図と、図３に示されるフローチャートを参照して説明する。
【００１７】
図２は、本実施形態の情報処理装置の機能ブロック図である。本実施形態の情報処理装置１００は、画像データ取得部２０１、ノイズ情報取得部２０２、ノイズ情報‐ＮＮ対応データベース２０３、処理方法決定部２０４、ＮＮパラメータ記憶部２０５、及びノイズ低減処理部２０６としての機能を有する。各機能部の詳細は、図３のフローチャートを参照しながら後述する。
【００１８】
次に、本実施形態のノイズ低減処理、及びノイズ低減処理に用いられるＮＮについて説明する。
【００１９】
従来、ＮＮによるノイズ低減処理は、１回の処理を前提として構築されてきた。すなわち、特定のＩＳＯ感度で撮影された画像に対し、１回の処理で全てのノイズを除去するようにＮＮを学習させる。
【００２０】
一方、本実施形態では、ＮＮによるノイズ低減処理を複数回に分割できる性質を利用する。多様なノイズレベルの画像に対して、従来であればこれらのノイズレベルに対応した多数のＮＮをあらかじめ学習させておく必要があった。しかし、本実施形態によれば、前述の性質を利用することで、より小数のＮＮを用いて効果的に高画質なノイズ低減が行えるため、ＮＮの学習および保持に要するコストを削減することができる。
【００２１】
次に、本実施形態におけるノイズ低減処理の分割について説明する。一般に、画像に含まれるノイズの分散には加法性があることが知られている。すなわち、分散値Ｖのノイズ（乱数）をｎ回足し合わせると、その結果のノイズの分散値はｎＶとなる。この性質から、分散値ｎＶのノイズを除去するには、除去するノイズの合計がｎＶになるように、複数のノイズ低減処理を組み合わせればよいことがわかる。例えば、分散値Ｖのノイズを除去する処理をｎ回繰り返してもよいし、分散値ｎＶ／２のノイズを除去する処理を２回繰り返してもよい。
【００２２】
また、画像に含まれるノイズの分散値は、ＩＳＯ感度に比例することが知られている。このため、例えば、ＩＳＯ感度１２８００で撮影された画像に対しノイズ低減処理を行う処理は、ＩＳＯ感度６４００用に学習させたＮＮによるノイズ低減処理を２回繰り返す処理に置き換えて設定することが可能である。また、ＩＳＯ感度３２００用に学習させたＮＮによるノイズ低減処理を４回繰り返すように設定しても、同様の効果が得られる。
【００２３】
以上の性質を踏まえ、処理対象の画像のＩＳＯ感度と、ＮＮパラメータ記憶部２０５が保持しているＮＮに基づき、処理方法決定部２０４がノイズ低減処理方法（すなわち、使用するＮＮと処理回数）を決定する。ノイズ情報‐ＮＮ対応データベース２０３が、処理対象の画像のＩＳＯ感度と、当該ＩＳＯ感度に対応するノイズ低減処理との組合せを示す情報を組合せデータとして保持している。処理方法決定部２０４は、この組合せデータに基づきノイズ低減処理方法を決定する。組合せデータは、ノイズレベルに関するパラメータであるＩＳＯ感度と、ＮＮパラメータ記憶部２０５が保持しているＮＮのうち適用するＮＮや処理回数とを対応付けた情報である。
【００２４】
例えば、ＩＳＯ感度１２８００で撮影された画像が入力され、ＮＮパラメータ記憶部２０５が保持しているＮＮがＩＳＯ感度３２００用に学習させたＮＮだけである場合は、このＮＮを用いたノイズ低減処理を４回繰り返す方法が決定される。この場合、ノイズ情報‐ＮＮ対応データベース２０３が保持している組合せデータは、入力画像のＩＳＯ感度が１２８００である場合に、ＩＳＯ感度３２００用に学習させたＮＮを４回適用する、という情報を表す。
【００２５】
また、組合せデータは、複数のＮＮを適用する順序を示す情報でもよい。例えば、入力画像のＩＳＯ感度が１２８００であり、ＩＳＯ感度９６００相当用に学習させたＮＮ（Ａ）とＩＳＯ感度３２００用に学習させたＮＮ（Ｂ）とを組み合わせる場合、処理順序をＮＮ（Ａ）→ＮＮ（Ｂ）としてもよい。この順序は、ユーザが要求する画質によって決定することができる。例えば、ＮＮ（Ａ）→ＮＮ（Ｂ）の順序よりもＮＮ（Ｂ）→ＮＮ（Ａ）の順序で処理する方が、アーティファクトが増大する代わりに解像感が向上するのであれば、ユーザが解像感を優先する場合にはＮＮ（Ｂ）→ＮＮ（Ａ）の順序を選択してもよい。
【００２６】
ユーザから要求画質を指示する方法としては、情報処理装置１００の操作部１１０（具体的にはＰＣ上のＧＵＩなど）を介して、所望の画質に関する複数の選択肢からユーザが選択を行う。複数の選択肢としては、低アーティファクト優先、解像感優先などが挙げられる。この場合、ノイズ情報‐ＮＮ対応データベース２０３は、１つの入力画像のＩＳＯ感度に対し複数の組合せデータを保持し、各組合せデータには要求画質が対応付けられている。
【００２７】
そして、処理方法決定部２０４は、要求画質と入力画像のＩＳＯ感度に基づき、一意にノイズ低減処理方法を決定する。前述の例では、ＮＮ（Ａ）→ＮＮ（Ｂ）の順序には低アーティファクト優先が対応しており、ＮＮ（Ｂ）→ＮＮ（Ａ）の順序には解像感優先が対応している。
【００２８】
次に、図４を参照して、ＮＮの構造について説明する。図４（ａ）は、ＮＮの全体構造の一例を示す。本実施形態では、畳み込みニューラルネットワーク（ＣＮＮ：Ｃｏｎｖｏｌｕｔｉｏｎａｌ ＮＮ）を例に用いて説明するが、この構造には限定されない。
【００２９】
図４（ａ）に示した構造では、最初に、入力層にノイズを含む画像が入力される。その後、逐次的にブロック１からブロックＮまでの処理が実行される。最後に、出力層にデータが出力される。ブロック間を伝達するデータは、入力データと同サイズ、またはより低い解像度の複数チャネルの画像の形態をとる。出力データは、推定されたノイズ、もしくはノイズが低減された画像である。出力データが、推定されたノイズである場合、入力データから出力データを差し引くことで、ノイズが低減された画像が得られる。
【００３０】
図４（ｂ）は、ブロック１からブロックＮまでの各ブロックの構造を示す。各ブロックは、畳み込み層、正規化層、及び活性化層を連結した構造となっているが、必ずしも全てを含む必要はなく、ブロックによって構造が異なっていてもよい。また、ＮＮの全体構造は、入力層または任意のブロックの出力と、別のブロックの出力とを加算または連結するようなスキップ接続を有してもよい。図４（ｃ）は、ノイズが低減された画像が出力されるＮＮの構造の一例として、入力層とブロックの出力とを加算するスキップ接続を有する構造を示す。
【００３１】
畳み込み層は、入力されるデータの各チャネルに対し所定のフィルタを畳み込んだ結果を加算し出力する。フィルタ係数は後述する学習によって決定する。畳み込み層の出力のチャネル数は任意に決めることができ、出力チャネル数に応じた種類のフィルタを用意すればよい。
【００３２】
正規化層は、入力データの平均と分散を補正する線形変換を行う。例えば、学習用データを入力したときの正規化層の出力が、平均が０、分散が１になるように線形変換の係数を、後述する学習によって決定する。
【００３３】
活性化層は、入力されるデータに対し、要素ごとに独立に非線形変換を行う。非線形変換は具体的には、ｓｉｇｍｏｉｄ関数、ｔａｎｈ関数、ＲｅＬＵ（Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）など一般に知られている関数を用いることができる。
【００３４】
次に、ＮＮの学習について説明する。ＮＮの学習とは具体的には、ＮＮを構成するパラメータを、学習用データを用いて決定することを指す。パラメータとしては、例えば、畳み込み層のフィルタ係数、正規化層の線形変換の係数が挙げられる。
【００３５】
学習用データは、入力データ（生徒データ）と出力データの正解値（教師データ）のペアの集合である。ノイズ低減を目的とする場合には、生徒データは実写画像またはＣＧ画像に人工的なノイズを付加して得られるノイズ画像とし、教師データはノイズを付加する前の元画像、または付加したノイズ自体とする。
【００３６】
人工ノイズは、一般的に、分散値が同一のガウス乱数を画素ごと独立に加算して生成されるが、輝度依存性ノイズなど、より現実に近いノイズモデルを用いて生成してもよい。この人工ノイズにおける分散値は、特定のＩＳＯ感度に対応した値とする。
【００３７】
また、人工ノイズを用いないで、ＩＳＯ感度が異なる条件で撮影された同一被写体の画像のペアの集合を学習用データとしてもよい。この方法は、現実のノイズを用いて学習できるため、実写画像に対するノイズ低減効果が人工ノイズを用いて学習させる場合に比べて高くなるメリットがある。しかしその反面、画像のペア間で１画素以上のわずかな位置ずれも許容されないため、撮影が困難になり、撮影シーンが制約されてしまう。
【００３８】
一般にＣＮＮにおいては、学習はパッチ（画像から抽出された小領域）単位で行うが、学習後の処理時には画像全体をサイズを変えることなく入力し、同じサイズの出力画像を得ることができる。
【００３９】
図３は、本実施形態のノイズ低減処理のフローチャートを示す。以下、本実施形態におけるノイズ低減処理の流れについて、図３のフローチャートを参照して説明する。フローチャートで示される一連の処理は、ＣＰＵ１０１がＲＯＭ１０３などの記憶領域に格納されたプログラムコードをＲＡＭ１０２に読み出して実行することにより実現される。あるいはまた、フローチャートにおけるステップの一部または全部の機能をＡＳＩＣや電子回路等のハードウェアで実現してもよい。また、以下の記号「Ｓ」は、フローチャートにおける「ステップ」を意味する。その他のフローチャートについても同様である。
【００４０】
Ｓ３０１において、画像データ取得部２０１が、処理対象である画像データを取得する。画像データは、ＲＡＷやＪＰＥＧなどの任意の形式でよい。
【００４１】
Ｓ３０２において、ノイズ情報取得部２０２が、Ｓ３０１で取得した画像データから、ノイズレベルに関する情報（以下、ノイズ情報ともいう）として画像の撮影時のＩＳＯ感度を取得する。撮影時のＩＳＯ感度は、画像データに付随するＥＸＩＦ（Ｅｘｃｈａｎｇｅａｂｌｅ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）などの情報から取得することができる。
【００４２】
Ｓ３０３において、処理方法決定部２０４が、Ｓ３０２で取得したＩＳＯ感度に基づき、ＮＮを用いたノイズ低減処理の方法を決定する。具体的には、ノイズ情報‐ＮＮ対応データベース２０３に保持されたルックアップテーブルを参照して、入力画像のＩＳＯ感度に適したノイズ低減処理の方法を決定する。また、ＩＳＯ感度に加えて、ユーザからの要求画質に応じて、ノイズ低減処理の方法を決定してもよい。
【００４３】
図５（ａ）は、本実施形態におけるルックアップテーブルの一例を示す。ルックアップテーブル５０１は、ＩＳＯ感度１６００用に学習させたＮＮと、ＩＳＯ感度３２００用に学習させたＮＮを用いて、ＩＳＯ１６００〜１２８００の入力画像に対してノイズ低減処理を行う場合の例を示す。具体的には、ルックアップテーブル５０１は、ＩＳＯ１６００、３２００、６４００、及び１２８００のそれぞれのＩＳＯ感度を有する入力画像に対して、ＩＳＯ１６００または３２００に対応したＮＮの適用回数の組合せを保持している。また、ルックアップテーブル５０１は、画質を優先する場合と処理速度を優先する場合のそれぞれに対してＮＮの組合せを保持している。
【００４４】
この例では、入力画像のＩＳＯ感度が１６００の場合、画質優先時でも速度優先時でもＩＳＯ感度１６００用に学習させたＮＮを１回適用する方法が選択される。入力画像のＩＳＯ感度が３２００の場合、画質優先時でも速度優先時でもＩＳＯ感度３２００用に学習させたＮＮを１回適用する方法が選択される。入力画像のＩＳＯ感度がＩＳＯ３２００を超える場合、画質と速度のどちらを優先するかに応じて、ＩＳＯ感度１６００用に学習させたＮＮまたはＩＳＯ感度３２００用に学習させたＮＮが、図示されるように複数回適用される。
【００４５】
対応するＩＳＯ感度が低いＮＮの方が、画質の劣化が生じにくいため、画質優先時は対応するＩＳＯ感度が低いＮＮを多数回適用する方が好ましい。一方、速度優先時は対応するＩＳＯ感度が高いＮＮを少数回適用する方が好ましい。
【００４６】
また、ルックアップテーブルを用いないで、入力画像のＩＳＯ感度と、適用するＮＮが対応するＩＳＯ感度の合計値がおおよそ一致するようなＮＮの組合せを、処理方法決定部２０４が処理の度に導出してもよい。ＮＮの組合せ、さらにはＮＮを適用する順序を決める際の制約条件として、前述したようにユーザからの要求画質の指示を加えてもよい。
【００４７】
Ｓ３０４において、ノイズ低減処理部２０６が、Ｓ３０３で決定されたノイズ低減処理の方法に従い、ＮＮを用いたノイズ低減処理を実行する。具体的には、Ｓ３０３で選択されたＮＮのパラメータをＮＮパラメータ記憶部２０５から読み出し、ＮＮの組合せまたは順序に従い、ＮＮによるノイズ低減処理を逐次実行する。この結果、入力画像のノイズが低減された出力画像が得られる。
【００４８】
以上説明したように、本実施形態では、画像の撮影時のＩＳＯ感度に基づき、適用するＮＮと適用回数を決定し、ノイズ低減を行うことができる。本実施形態によると、使用するＮＮの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行うことができる。
【００４９】
＜第２の実施形態＞
第１の実施形態では、入力画像のＩＳＯ感度を取得して、ノイズ低減処理の方法を決定する場合について説明した。しかし、同一のＩＳＯ感度でもカメラの機種によってノイズ量が異なることがあるため、上述した方法では想定されたノイズ低減効果が得られないことがある。そこで、本実施形態では、入力画像を解析して推定されたノイズレベルに基づき、適用するＮＮと適用回数を決定して、ノイズ低減を行う場合について説明する。
【００５０】
本実施形態における情報処理装置のハードウェア構成は、第１の実施形態と同様である。以下では、本実施形態の情報処理装置１００で行われる処理について、第１の実施形態の説明で参照した図２の機能ブロック図及び図３のフローチャートを用いて、第１の実施形態との相違点を主に説明する。具体的には、図３のＳ３０２及びＳ３０３の処理について説明する。
【００５１】
Ｓ３０２において、ノイズ情報取得部２０２が、Ｓ３０１で取得した画像データを解析して、ノイズレベルを推定し、ノイズ情報として取得する。このための方法として、例えば非特許文献２に開示されている手法を用いることができる。画像に含まれるノイズは主として撮像素子の内部で発生しており、一般的に用いられるモデルとして、各画素値のノイズは画素間で独立で、輝度によって決定される標準偏差を有する正規分布に従う乱数で与えられる。このようなノイズを、以降では輝度依存性ノイズと呼ぶ。輝度依存性ノイズの標準偏差σは、一般的に以下の式（１）によって与えられる。
【００５２】
【数１】
2020191046.tif 000003
【００５３】
ここで、ｘはノイズが付加される前の画素値、ａおよびｂはＩＳＯ感度やカメラ機種によって異なるモデルパラメータ、ｍａｘは引数のうち大きい方の値を返す関数である。
【００５４】
前述のノイズレベルとは、具体的にはこの標準偏差σを指す。ＮＮの学習において付加する人工ノイズは、各画素が独立に式（１）で与えられる標準偏差σをもつ正規乱数として与えることができる。標準偏差σは画素ごとに異なる値であり、ａおよびｂは画素によらず共通の値である。
【００５５】
また、標準偏差σは必ずしも前述のモデルに限定されることはなく、画素間で共通の値としてもよいし、他のモデル化を行ってもよい。例えば、輝度に依存しないノイズを仮定する場合、全画素で標準偏差σが一定値であると仮定してもよいし、画像の部分領域ごとに標準偏差σが異なると仮定してもよい。後者の場合には、以降の処理は、第４の実施形態において後述するように、画像の部分領域ごとに個別に行われる必要がある。
【００５６】
Ｓ３０３において、処理方法決定部２０４が、Ｓ３０２で取得したノイズレベルに基づき、ＮＮを用いたノイズ低減処理の方法を決定する。具体的には、ノイズ情報‐ＮＮ対応データベース２０３に保持されたルックアップテーブルを参照して、推定されたノイズレベルに適したノイズ低減処理を行うためのＮＮとその適用回数を決定する。
【００５７】
ここでは、前述の輝度依存性ノイズモデルを用いる場合を例にとり、本実施形態におけるノイズ低減処理の決定方法を説明する。例えば、ａの値をｃ（ｃは任意の定数）として人工ノイズを生成し学習させたＮＮ（Ａ）と、ａの値を２ｃとして人工ノイズを生成し学習させたＮＮ（Ｂ）の２つのＮＮが、ＮＮパラメータ記憶部２０５に保持されているとする。入力画像に対しＳ３０２のノイズレベル解析を行った結果、ａの値が３ｃ近傍の値と推定された場合には、ＮＮ（Ａ）とＮＮ（Ｂ）の処理を１回ずつ行う組合せ、またはＮＮ（Ａ）の処理を３回行う方法が決定される。このように、ノイズの分散値に比例するパラメータについて、入力画像の推定値と、各ＮＮの学習に用いられた値の和がおおよそ一致するようなＮＮの組合せを、処理方法決定部２０４が決定する。組合せを決定する方法については、第１の実施形態と同様に、ノイズ情報‐ＮＮ対応データベース２０３が保持するルックアップテーブルを用いて行うことができる。
【００５８】
図５（ｂ）は、本実施形態におけるルックアップテーブルの一例を示す。ルックアップテーブル５０２には、モデルパラメータａの値に応じて、画質優先時と速度優先時のそれぞれの場合に適用されるＮＮと適用回数が登録されている。ａの値がｃ近傍の値と推定された場合には、画質優先時でも速度優先時でもａ＝ｃに対応したＮＮを１回適用する。ａの値が２ｃ近傍の値と推定された場合には、画質優先時でも速度優先時でもａ＝２ｃに対応したＮＮを１回適用する。ａの値が３ｃ近傍の値、あるいは４ｃ近傍の値と推定された場合には、ａ＝ｃに対応したＮＮ、またはａ＝ｃに対応したＮＮとａ＝２ｃに対応したＮＮの組合せを、それぞれ図示された回数適用する。
【００５９】
また、輝度に依存しないノイズを仮定する場合には、推定された標準偏差σに基づくルックアップテーブルを参照し、ＮＮの組合せを決定する。この場合の標準偏差σの推定方法は、当業者には公知の既存の手法を用いることができる。
【００６０】
以上説明したように、本実施形態では、入力画像を解析して推定されたノイズレベルに基づき、適用するＮＮと適用回数を決定して、ノイズ低減を行うことができる。本実施形態によると、使用するＮＮの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行うことができる。
【００６１】
＜第３の実施形態＞
本実施形態では、ＩＳＯ感度の代わりに感度補正用のゲイン値に基づき、適用するＮＮと適用回数を決定し、ノイズ低減を行う場合について説明する。ゲイン値とは、具体的には、設定されたＩＳＯ感度に対応し、撮像素子の出力に加えられるアナログゲインを指す。
【００６２】
本実施形態における情報処理装置のハードウェア構成は、第１の実施形態と同様である。以下では、本実施形態の情報処理装置１００で行われる処理について、第１の実施形態の説明で参照した図２の機能ブロック図及び図３のフローチャートを用いて、第１の実施形態との相違点を主に説明する。具体的には、図３のＳ３０２及びＳ３０３の処理について説明する。
【００６３】
Ｓ３０２において、ノイズ情報取得部２０２が、Ｓ３０１で取得した画像データに対応する感度補正用のゲイン値をノイズ情報として取得する。このゲイン値は、画像データにメタデータとして付随している形態でもよいし、画像データとゲイン値の対応関係を記述したテーブルを別途用意しておき、それを参照して取得する形態でもよい。
【００６４】
Ｓ３０３において、処理方法決定部２０４が、Ｓ３０２で取得したゲイン値に基づき、ＮＮを用いたノイズ低減処理の方法を決定する。具体的には、ノイズ情報‐ＮＮ対応データベース２０３に保持されたルックアップテーブルを参照して、対象画像の処理に使われたゲイン値に適したノイズ低減処理を行うためのＮＮとその適用回数を決定する。
【００６５】
以上説明したように、本実施形態では、ＩＳＯ感度の代わりに感度補正用のゲイン値に基づき、適用するＮＮと適用回数を決定し、ノイズ低減を行うことができる。本実施形態によると、使用するＮＮの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行うことができる。
【００６６】
＜第４の実施形態＞
第１乃至第３の実施形態では、静止画の画像全体に一様にノイズ低減処理を行う場合について説明した。しかし、ノイズ特性が画像内の領域ごとに異なる場合には、画像を領域分割し、各部分領域に対して個別に適したノイズ低減処理を行い、処理後の部分画像を統合することが好ましい。また、動画においてフレーム間でノイズ特性が異なる場合には、各フレームに対して個別に適したノイズ低減処理を行うことが好ましい。そこで、本実施形態では、静止画の部分領域または動画のフレームごとに独立にノイズ低減を行う場合について説明する。
【００６７】
本実施形態における情報処理装置のハードウェア構成は、第１の実施形態と同様である。以下では、本実施形態の情報処理装置１００で行われる処理について、図６に示す機能ブロック図と、図７に示すフローチャートを用いて説明する。
【００６８】
図６は、本実施形態の情報処理装置の機能ブロック図である。本実施形態の情報処理装置１００は、画像データ取得部６０１、画像データ分解部６０２、ノイズ情報取得部６０３、及びノイズ情報‐ＮＮ対応データベース６０４としての機能を有する。また、処理方法決定部６０５、ＮＮパラメータ記憶部６０６、ノイズ低減処理部６０７、及び画像データ統合部６０８としての機能を有する。各機能部の詳細は、図７のフローチャートを参照しながら後述する。
【００６９】
図７は、本実施形態のノイズ低減処理のフローチャートを示す。以下、本実施形態におけるノイズ低減処理の流れについて、図７のフローチャートを参照して説明する。
【００７０】
Ｓ７０１において、画像データ取得部６０１が、処理対象である画像データを取得する。本実施形態では、画像データは静止画でもよいし、動画でもよい。また、画像データの形式は、任意の形式でよい。
【００７１】
Ｓ７０２において、画像データ分解部６０２が、Ｓ７０１で取得した画像データを部分画像に分割する。部分画像は、静止画の一部分でもよいし、動画の一フレームでもよい。
【００７２】
Ｓ７０３において、ノイズ情報取得部６０３が、Ｓ７０２で分割された各部分画像を解析して、第２の実施形態と同様にノイズの標準偏差またはモデルパラメータを推定する。ノイズ情報取得部６０３は、ノイズ情報として、推定されたノイズの標準偏差またはモデルパラメータを取得する。或いは、第１の実施形態と同様にＩＳＯ感度を取得してもよいし、第３の実施形態と同様に感度補正用のゲイン値を取得してもよい。
【００７３】
Ｓ７０４において、処理方法決定部６０５が、Ｓ７０３で取得したノイズ情報に基づき、各部分画像に対するノイズ低減処理の方法を決定する。具体的には、第１乃至第３の実施形態で説明したように、ノイズ情報‐ＮＮ対応データベース６０４に保持されたルックアップテーブルを参照して、ノイズ情報に対応するＮＮとその適用回数を決定する。
【００７４】
Ｓ７０５において、ノイズ低減処理部６０７が、Ｓ７０４で決定されたノイズ低減処理の方法に従い、ＮＮを用いたノイズ低減処理を実行する。具体的には、Ｓ７０４で選択されたＮＮのパラメータをＮＮパラメータ記憶部６０６から読み出し、ＮＮの組合せまたは順序に従い、ＮＮによるノイズ低減処理を逐次実行する。
【００７５】
Ｓ７０６において、情報処理装置１００は、全ての部分画像に対してＳ７０３乃至Ｓ７０５の処理を完了したかどうか判定する。完了していなければ、Ｓ７０３に戻り、未処理の部分画像を選択し、Ｓ７０３乃至Ｓ７０５の処理を実行する。完了している場合は、Ｓ７０７に進む。
【００７６】
Ｓ７０７において、画像データ統合部６０８が、処理済みの全ての部分画像を統合し、静止画または動画を再構成する。この結果、入力画像のノイズが低減された出力画像が得られる。
【００７７】
以上説明したように、本実施形態では、静止画の部分領域または動画のフレームごとに独立してノイズ低減を行うことができる。本実施形態によると、使用するＮＮの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行うことができる。
【００７８】
＜第５の実施形態＞
本実施形態では、画像を異なる色空間に変換して輝度成分と色成分に分解し、各成分に対してノイズ低減処理を行う方法について説明する。
【００７９】
本実施形態における情報処理装置のハードウェア構成は、第１の実施形態と同様である。以下では、本実施形態の情報処理装置１００で行われる処理について、第４の実施形態の説明で参照した図６に示す機能ブロック図と、図８に示すフローチャートを用いて説明する。
【００８０】
本実施形態の情報処理装置１００の機能構成は、第４の実施形態と同様であるが、画像データを輝度成分と色成分に分解し、各成分に対してノイズ低減処理を行う点で異なる。
【００８１】
図８は、本実施形態のノイズ低減処理のフローチャートを示す。以下、本実施形態におけるノイズ低減処理の流れについて、図８のフローチャートを参照して説明する。
【００８２】
Ｓ８０１において、画像データ取得部６０１が、処理対象である画像データを取得する。
【００８３】
Ｓ８０２において、画像データ分解部６０２が、Ｓ８０１で取得した画像データを輝度成分と色成分に分解する。色空間としては、ＹＣｒＣｂやＬａｂなどの一般的な色空間を用いることができる。
【００８４】
Ｓ８０３において、ノイズ情報取得部６０３が、Ｓ８０２で分解された輝度成分と色成分の全てまたはいずれかを解析して、ノイズの標準偏差またはモデルパラメータを推定する。ノイズ情報取得部６０３は、ノイズ情報として、推定されたノイズの標準偏差またはモデルパラメータを取得する。
【００８５】
Ｓ８０４において、処理方法決定部６０５が、Ｓ８０３で取得したノイズ情報に基づき、各成分に対するノイズ低減処理の方法を決定する。具体的には、第１乃至第３の実施形態で説明したように、ノイズ情報‐ＮＮ対応データベース６０４に保持されたルックアップテーブルを参照して、ノイズ情報に対応するＮＮとその適用回数を決定する。
【００８６】
Ｓ８０５において、ノイズ低減処理部６０７が、Ｓ８０４で決定されたノイズ低減処理の方法に従い、ＮＮを用いたノイズ低減処理を各成分の画像に対して実行する。具体的には、Ｓ８０４で選択されたＮＮのパラメータをＮＮパラメータ記憶部６０６から読み出し、ＮＮの組合せまたは順序に従い、ＮＮによるノイズ低減処理を逐次実行する。
【００８７】
Ｓ８０６において、画像データ統合部６０８が、処理済みの各成分の画像を統合し、元の色空間に変換し、画像を再構成する。この結果、入力画像のノイズが低減された出力画像が得られる。
【００８８】
以上説明したように、本実施形態では、画像を異なる色空間に変換して輝度成分と色成分に分解し、各成分に対してノイズ低減処理を行う。本実施形態によると、使用するＮＮの数を減らし、かつ、多様なノイズレベルの画像に対して高画質なノイズ低減を行うことができる。
【００８９】
＜第６の実施形態＞
本実施形態では、単一のＮＮを用いたノイズ低減処理を反復し、所望の水準のノイズ低減効果を得るための方法について説明する。
【００９０】
本実施形態における情報処理装置のハードウェア構成は、第１の実施形態と同様である。以下では、本実施形態の情報処理装置１００で行われる処理について、図９に示す機能ブロック図と、図１０に示すフローチャートを用いて説明する。
【００９１】
図９は、本実施形態の情報処理装置の機能ブロック図である。本実施形態の情報処理装置１００は、画像データ取得部９０１、ノイズ情報取得部９０２、ノイズ情報‐ＮＮ対応データベース９０３、処理方法決定部９０４、ＮＮパラメータ記憶部９０５、ノイズ低減処理部９０６、画質評価部９０７としての機能を有する。各機能部の詳細は、図１０のフローチャートを参照しながら後述する。
【００９２】
図１０は、本実施形態のノイズ低減処理のフローチャートを示す。以下、本実施形態におけるノイズ低減処理の流れについて、図１０のフローチャートを参照して説明する。
【００９３】
Ｓ１００１において、画像データ取得部９０１が、処理対象である画像データを取得する。
【００９４】
Ｓ１００２において、ノイズ情報取得部９０２が、Ｓ１００１で取得した画像データを解析して、第２の実施形態と同様にノイズの標準偏差またはモデルパラメータを推定し、ノイズ情報として取得する。または、ノイズ情報として、第１の実施形態と同様にＩＳＯ感度を取得してもよいし、第３の実施形態と同様に感度補正用のゲイン値を取得してもよい。
【００９５】
Ｓ１００３において、処理方法決定部９０４が、Ｓ１００２で取得したノイズ情報に基づき、ＮＮを用いたノイズ低減処理方法を決定する。具体的には、ノイズ情報‐ＮＮ対応データベース９０３に保持されたルックアップテーブルを参照して、ノイズ低減処理に用いるＮＮを決定する。本実施形態では、ノイズ低減処理に用いる単一のＮＮを特定することができればよく、適用回数は決定しなくてもよい。
【００９６】
Ｓ１００４において、ノイズ低減処理部９０６が、Ｓ１００３で決定されたＮＮを用いてノイズ低減処理を実行する。具体的には、Ｓ１００３で決定されたＮＮのパラメータをＮＮパラメータ記憶部９０５から読み出し、ＮＮによるノイズ低減処理を実行する。そして、ノイズ低減処理が実行された画像データを出力する。
【００９７】
Ｓ１００５において、画質評価部９０７が、Ｓ１００４でノイズ低減処理が実行された出力画像データの画質評価を行う。画質評価部９０７は、例えば、ノイズ情報取得部９０２のように出力画像データを解析し、出力画像データが有する残留ノイズレベルを推定してもよい。あるいは、表示装置１０９に出力画像データを表示し、ユーザが出力画像データの残留ノイズを判断するようにしてもよい。
【００９８】
Ｓ１００６において、情報処理装置１００は、Ｓ１００５の画質評価の結果が、終了条件を満たすかどうか判定する。終了条件を満たしていない場合、Ｓ１００４に戻り、ノイズ低減処理を再帰的に実行する。一方、終了条件を満たしている場合は、処理を終了する。具体的には、画質評価部９０７が残留ノイズレベルを推定した場合、ノイズの標準偏差またはモデルパラメータが既定の閾値を下回った場合に処理を終了する。一方、ノイズの標準偏差またはモデルパラメータが既定の閾値以上であった場合は、Ｓ１００４に戻り、追加でノイズ低減処理を実行する。また、ユーザが判断する場合、ユーザが操作部１１０を介して入力した追加処理の指示に応じて、Ｓ１００４に戻り、追加でノイズ低減処理を実行する。
【００９９】
以上説明したように、本実施形態では、単一のＮＮを用いたノイズ低減処理を反復することで、所望の水準のノイズ低減効果を得ることができる。本実施形態によると、単一のＮＮを用いた適応的なノイズ低減処理を行うことで使用するＮＮの数を減らし、かつ、多様なノイズレベルの入力画像に対して高画質なノイズ低減を行うことができる。
【０１００】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１０１】
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＲＯＭ
１０４  二次記憶装置
１０５  入力インターフェース
１０６  出力インターフェース
１０７  システムバス
１０８  外部記憶装置
１０９  表示装置
１１０  操作部
【図１】
2020191046.tif 000004
【図２】
2020191046.tif 000005
【図３】
2020191046.tif 000006
【図４】
2020191046.tif 000007
【図５】
2020191046.tif 000008
【図６】
2020191046.tif 000009
【図７】
2020191046.tif 000010
【図８】
2020191046.tif 000011
【図９】
2020191046.tif 000012
【図１０】
2020191046.tif 000013