(57)【要約】【課題】撮影画像の高周波成分を復元しつつノイズ量を低減することが可能な画像処理方法を提供する。【解決手段】画像処理方法は、第一の入力画像の第一の領域を取得する工程と、第二の入力画像の第二の領域を取得する工程と、多層のニューラルネットワークを用いて、第一の領域および第二の領域に基づいて、高周波成分が復元されノイズ量が低減された出力画像を算出する工程とを有する。【選択図】図４
2020057373.tif 000002
【特許請求の範囲】
【請求項１】
第一の画像を取得する工程と、
前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を取得する工程と、
前記第一の画像および前記第二の画像をニューラルネットワークに入力して、前記第一の画像より前記被写体の高周波成分を多く含み前記第二の画像よりノイズ量が少ない第三の画像を生成する工程と、を有することを特徴とする画像処理方法。
【請求項２】
前記第一の画像および前記第二の画像はそれぞれ、第一の入力画像および第二の入力画像の少なくとも一部であることを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記第一の入力画像は、前記第二の入力画像よりも広い画角を有することを特徴とする請求項２に記載の画像処理方法。
【請求項４】
前記第三の画像の画角は、前記第二の入力画像の画角以下であることを特徴とする請求項３に記載の画像処理方法。
【請求項５】
前記第二の画像は、前記第一の画像を取得する際に用いられた撮像素子よりも画素ピッチが小さい撮像素子を用いた撮像により得られた画像であることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理方法。
【請求項６】
前記第二の画像は、前記第一の画像を取得する際に用いられた撮像素子よりも撮像領域が小さい撮像素子を用いた撮像により得られた画像であることを特徴とする請求項１乃至５のいずれか一項に記載の画像処理方法。
【請求項７】
前記ニューラルネットワークは、少なくとも一層の畳み込み層を有することを特徴とする請求項１乃至６のいずれか一項に記載の画像処理方法。
【請求項８】
予め学習された前記ニューラルネットワークに関する学習情報を取得する工程を更に有し、
前記第三の画像を生成する工程は、Ｎを２以上の整数、ｎを１からＮまでの整数とするとき、
前記第一の画像および前記第二の画像に対して、前記学習情報に基づく複数の線型関数のそれぞれによる第ｎ線型変換と、非線型関数による第ｎ非線型変換とをｎが１からＮになるまで順に実行することで中間データを生成する工程と、
前記中間データに対して、前記学習情報に基づく少なくとも１つの線型関数による第Ｎ＋１線型変換を実行する工程と、を含むことを特徴とする請求項１乃至７のいずれか一項に記載の画像処理方法。
【請求項９】
前記学習情報は、同一の被写体が存在する複数の学習画像であって、第一の入力学習画像と、前記第一の入力学習画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の入力学習画像と、前記第一の入力学習画像より前記被写体の高周波成分を多く含み前記第二の画像よりノイズ量が少ない出力学習画像と、を用いて学習された情報であることを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
前記第一の入力学習画像および前記第二の入力学習画像の少なくとも一方は、シミュレーションにより生成された画像であることを特徴とする請求項９に記載の画像処理方法。
【請求項１１】
第一の画像と、前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を取得する取得部と、
前記第一の画像および前記第二の画像をニューラルネットワークに入力して、前記第一の画像より前記被写体の高周波成分を多く含み前記第二の画像よりノイズ量が少ない第三の画像を生成する算出部と、を有することを特徴とする画像処理装置。
【請求項１２】
予め学習された前記ニューラルネットワークに関する学習情報を記憶する記憶部を更に有することを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
第一の入力画像を撮像する第一の撮像部と、
第二の入力画像を撮像する第二の撮像部と、
請求項１１または１２に記載の画像処理装置と、を有することを特徴とする撮像装置。
【請求項１４】
請求項１乃至１０のいずれか一項に記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１５】
請求項１４に記載のプログラムを記憶していることを特徴とする記憶媒体。
【請求項１６】
第一の装置と第二の装置を有する画像処理システムであって、
前記第一の装置は、
第一の画像と、前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を用いた画像処理を前記第二の装置に実行させるための要求を送信する送信手段を有し、
前記第二の装置は、
前記送信手段によって送信された前記要求を受信する受信手段と、
前記第一の画像と前記第二の画像を取得する取得手段と、
前記第一の画像および前記第二の画像をニューラルネットワークに入力して、前記第一の画像より前記被写体の高周波成分を多く含み前記第二の画像よりノイズ量が少ない第三の画像を生成する算出部と、を有することを特徴とする画像処理システム。
【請求項１７】
第一の画像を取得する工程と、
前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を取得する工程と、
前記第一の画像より前記被写体の高周波成分を多く含み、前記第二の画像よりノイズ量が少ない第三の画像を取得する工程と、
前記第一の画像と前記第二の画像と前記第三の画像を用いた学習によりニューラルネットワークのパラメータを更新する工程と、を有することを特徴とする学習済みモデルの製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の入力画像を畳み込みニューラルネットワークを用いて複数の入力画像を処理する画像処理方法に関する。
【背景技術】
【０００２】
近年、画像の画質を向上させるため、畳み込みニューラルネットワーク（ＣＮＮ）を用いた画像処理技術が利用され始めている。ＣＮＮとは、学習により生成したフィルタを、入力画像に対して畳み込こみ、学習により生成したバイアスを加算したのち、非線形演算することを繰り返し、所望の出力画像へ変換する学習型の画像処理技術である。この学習は、入力学習画像と出力学習画像との組からなる学習画像を用いて行われる。簡単には、学習とは、入力画像に対応する入力学習画像と、出力画像に対応する出力学習画像とを大量（例えば数万枚程度）に用意し、これらの学習画像から入出力画像間の関係を学ぶことである。
【０００３】
例えば、非特許文献１には、入力学習画像をスマートフォンカメラで、出力学習画像をデジタル一眼カメラで取得し、入力画像であるスマートフォンカメラ画像を、デジタル一眼カメラ画質へ変換するＣＮＮが開示されている。これにより、小型のスマートフォンカメラによって、大型の撮像装置であるデジタル一眼カメラの画質に近い画像を取得することが可能となる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ａｎｄｒｅｙ  Ｉｇｎａｏｖ、Ｎｉｋｏｌａｙ  Ｋｏｂｙｓｈｅｖ、Ｒａｄｕ  Ｔｉｍｏｆｔｅ、Ｋｅｎｎｅｔｈ  Ｖａｎｈｏｅｙ、Ｌｕｃ  Ｖａｎ  Ｇｏｏｌ、「ＤＳＬＲ−Ｑｕａｌｉｔｙ  Ｐｈｏｔｏｓ  ｏｎ  Ｍｏｂｉｌｅ  Ｄｅｖｉｃｅｓ  ｗｉｔｈ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ」、  ａｒＸｉｖ：１７０４．０２４７０ｖ２、アメリカ合衆国、２０１７
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、非特許文献１に開示されているＣＮＮを用いた手法では、入力画像として１つの撮像部で取得された画像のみを用いるため、高周波成分の復元とノイズの低減効果が不十分である。一般的に、撮影画像のノイズ量は撮像素子の画素サイズに依存する。このため、画素サイズが大きいほど、ノイズ量が低い画像を取得することが可能である。一方、画素サイズが小さいほど、被写体の高周波成分の再現性を高めることができる。すなわち、高周波成分の再現性とノイズ量の低減とはトレードオフの関係にあり、１つの撮像部で取得された画像のみを用いて両方を高性能化することは困難である。
【０００６】
そこで本発明は、撮影画像の高周波成分を復元しつつノイズ量を低減することが可能な画像処理方法、画像処理装置、撮像装置、プログラム、記憶媒体、画像処理システム、および、学習済みモデルの製造方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面としての画像処理方法は、第一の画像を取得する工程と、前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を取得する工程と、前記第一の画像および前記第二の画像をニューラルネットワークに入力して、前記第一の画像より前記被写体の高周波成分を多く含み前記第二の画像よりノイズ量が少ない第三の画像を生成する工程とを有する。
【０００８】
本発明の他の側面としての画像処理装置は、第一の画像と、前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を取得する取得部と、前記第一の画像および前記第二の画像をニューラルネットワークに入力して、前記第一の画像より前記被写体の高周波成分を多く含み前記第二の画像よりノイズ量が少ない第三の画像を生成する算出部とを有する。
【０００９】
本発明の他の側面としての撮像装置は、第一の入力画像を撮像する第一の撮像部と、第二の入力画像を撮像する第二の撮像部と、前記の画像処理装置とを有する。
【００１０】
本発明の他の側面としてのプログラムは、前記画像処理方法をコンピュータに実行させる。
【００１１】
本発明の他の側面としての記憶媒体は、前記プログラムを記憶している。
【００１２】
本発明の他の側面としての画像処理システムは、第一の装置と第二の装置を有する画像処理システムであって、前記第一の装置は、第一の画像と、前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を用いた画像処理を前記第二の装置に実行させるための要求を送信する送信手段を有し、前記第二の装置は、前記送信手段によって送信された前記要求を受信する受信手段と、前記第一の画像と前記第二の画像を取得する取得手段と、前記第一の画像および前記第二の画像をニューラルネットワークに入力して、前記第一の画像より前記被写体の高周波成分を多く含み前記第二の画像よりノイズ量が少ない第三の画像を生成する算出部とを有する。
【００１３】
本発明の他の側面としての学習済みモデルの製造方法は、第一の画像を取得する工程と、前記第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を取得する工程と、前記第一の画像より前記被写体の高周波成分を多く含み、前記第二の画像よりノイズ量が少ない第三の画像を取得する工程と、前記第一の画像と前記第二の画像と前記第三の画像を用いた学習によりニューラルネットワークのパラメータを更新する工程とを有する。
【００１４】
本発明の他の目的及び特徴は、以下の実施例において説明される。
【発明の効果】
【００１５】
本発明によれば、撮影画像の高周波成分を復元しつつノイズ量を低減することが可能な画像処理方法、画像処理装置、撮像装置、プログラム、記憶媒体、画像処理システム、および、学習済みモデルの製造方法を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】実施例１における撮像装置の外観図である。
【図２】実施例１における撮像装置のブロック図である。
【図３】実施例１および実施例２における画像を補正するネットワーク構造の説明図である。
【図４】実施例１および実施例２における画像の補正処理を示すフローチャートである。
【図５】実施例１および実施例２における学習情報の学習を示すフローチャートである。
【図６】実施例１における画像処理結果である。
【図７】実施例１における画像処理の数値計算結果である。
【図８】実施例２における画像処理システムのブロック図である。
【図９】実施例２における画像処理システムの外観図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施例について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照符号を付し、重複する説明は省略する。
【００１８】
実施例の具体的な説明へ入る前に、本発明の要旨を述べる。本発明では、ディープラーニング（深層学習）の１つである畳み込みニューラルネットワーク（ＣＮＮ）を用いて、複数の異なる撮像部で取得された撮影画像に対して高周波成分を復元しつつノイズ量を低減する。以下に述べる各実施例は、特に、低解像度かつノイズ量が少ない画像（第一の画像）と高解像度かつノイズ量が多い画像（第二の画像）とに基づいて、高解像度かつノイズ量が少ない高画質な画像（第三の画像）を生成するものである。
【実施例１】
【００１９】
まず、図１および図２を参照して、本発明の実施例１における撮像装置について説明する。図１は撮像装置１の外観図であり、図１（ａ）は俯瞰図、図１（ｂ）は正面図をそれぞれ示している。図２は、撮像装置１のブロック図である。本実施例において、撮像装置１は、画像処理方法を実行し、撮影画像に対して高周波成分を復元しつつノイズ量を低減する。
【００２０】
撮像装置１は、広画角な被写体の撮像に用いられる主撮像部１００、および、狭画角な被写体の撮像に用いられる副撮像部１１０を有する。主撮像部１００は、撮像光学系１０１および撮像素子（第一の撮像素子）１０２を備えて構成される。撮像光学系１０１は、１つ以上のレンズ、絞り１０１Ａおよびフォーカスレンズ１０１Ｆ（フォーカシング機構）を備えて構成され、不図示の被写体からの光を撮像素子１０２上に結像させる。また、撮像光学系１０１は、その内部に設けられた１つ以上のレンズが駆動することで焦点距離が変化する変倍光学系であってもよい。なお図１において、撮像光学系１０１は撮像装置１の一部として（撮像装置１と一体的に）構成されているが、一眼レフカメラのように交換式の（撮像装置本体に対して着脱可能な）撮像光学系であってもよい。
【００２１】
撮像素子１０２は、ＣＭＯＳセンサやＣＣＤセンサ等の固体撮像素子であり、撮像光学系１０１を介して形成された光学像（被写体像）を光電変換してアナログ電気信号（画像信号）を出力する。撮像光学系１０１における絞り１０１Ａおよびフォーカスレンズ１０１Ｆの機械的な駆動は、システムコントローラ３０からの制御指示に応じて、撮像制御部４０（フォーカス制御部４１）により行われる。撮像制御部４０は、設定された絞り値（Ｆ値、Ｆナンバー）に応じて、絞り１０１Ａの開口径を制御する。フォーカス制御部４１は、被写体距離に応じてフォーカスレンズ１０１Ｆの位置を制御することで、フォーカス調整を行う。
【００２２】
Ａ／Ｄコンバータ１０は、撮像素子１０２の光電変換により生成されたアナログ電気信号をデジタル信号に変換し、画像処理部２０に出力する。画像処理部２０は、Ａ／Ｄコンバータ１０から出力されたデジタル信号に対して、画素補間処理、輝度信号処理、および、色信号処理等、いわゆる現像処理を行い、画像を生成する。画像処理部２０により生成された画像は、半導体メモリや光ディスク等の画像記録媒体６０に記録される。また、画像処理部２０により生成された画像は、表示部７０に表示されてもよい。情報入力部５０は、ユーザの操作に従って様々な情報を入力する。様々な情報の一例としては、画像取得時の撮像条件であり、具体的には、主撮像部１００のＦ値やＩＳＯ感度等である。
【００２３】
副撮像部１１０は、撮像光学系１１１および撮像素子（第二の撮像素子）１１２を有する。撮像光学系１１１は、不図示の被写体からの光を撮像素子１１２上に結像させる単焦点撮像光学系である。撮像光学系１１１は、撮像光学系１０１よりも狭い画角（望遠）の光学系である。また撮像光学系１１１は、フォーカスレンズ１１１Ｆを有する。撮像素子１１２の光電変換により生成されたアナログ電気信号（画像信号）は、撮像素子１０２により生成されたアナログ電気信号（画像信号）と同様に扱われ、画像処理部２０は撮像素子１１２から出力された画像信号に基づいて画像を生成する。画像処理部２０で生成された画像は、主撮像部１００と同様に表示部７０に表示することができる。ここで、副撮像部１１０は撮像装置１から着脱可能であってもよく、複数の副撮像部１１０の中から主撮像部１００に適した副撮像部が選択されて撮像装置１に装着されてもよい。
【００２４】
副撮像部１１０は、主撮像部１００に対して相対的に狭い画角を撮影する望遠撮像部である。また、副撮像部１１０に設けられた撮像素子１１２は、主撮像部１００に設けられた撮像素子１０２と比較して、撮像素子を構成する画素が配置された撮像領域のサイズが小さく、画素サイズ（画素ピッチ）も小さい。すなわち、主撮像部１００で取得される画像（第一の入力画像）は広角画像でノイズ量が少ない画像であり、副撮像部１１０で取得される画像（第二の入力画像）は相対的に望遠画像でノイズ量が多い画像である。
【００２５】
ここで、本実施例におけるノイズ量について説明する。画像に含まれるノイズ量σ０は、該画像から測定または推定することにより求められる。ノイズが実空間および周波数空間において一様なホワイトガウシアンノイズであるとき、入力画像に含まれるノイズを、以下の式（１）に示すようなＭＡＤ（Ｍｅｄｉａｎ  Ａｂｓｏｌｕｔｅ  Ｄｅｖｉａｔｉｏｎ）から推定することができる。
【００２６】
ＭＡＤ＝ｍｅｄｉａｎ（｜ｗＨＨ１−ｍｅｄｉａｎ（ｗＨＨ１）｜）  ・・・（１）
ＭＡＤは、入力画像をウェーブレット変換して得られたＨＨ１のサブバンド画像におけるウェーブレット係数ｗＨＨ１のメディアン（中央値）を用いて求められる。このとき、標準偏差（ノイズ量σ０）とＭＡＤが以下の式（２）の関係であることから、ノイズ成分の標準偏差を推定することができる。
【００２７】
σ０＝ＭＡＤ／０．６７４５  ・・・（２）
なお、画像のウェーブレット変換では、画像の水平方向に対してウェーブレット変換を行って低周波成分と高周波成分に分解し、さらに分解して得られた低周波成分と高周波成分の垂直方向に対してウェーブレット変換を行う。ウェーブレット変換により、画像は４分割され、周波数帯域が互いに異なる４つのサブバンド画像に周波数分解される。このとき、左上の低周波帯域成分（スケーリング係数）のサブバンド画像をＬＬ１とし、右下の高周波帯域成分（ウェーブレット係数）のサブバンド画像をＨＨ１という。また、右上（ＨＬ１）と左下（ＬＨ１）のサブバンド画像はそれぞれ、水平方向に高周波帯域成分をとって垂直方向に低周波帯域成分を取り出したもの、および水平方向に低周波帯域成分をとって垂直方向に高周波帯域成分を取り出したものである。
【００２８】
また、副撮像部１１０に設けられた撮像素子１１２と主撮像部１００に設けられた撮像素子１０２の画素数は同じである。すなわち、同じ被写体領域（画角内）では、主撮像部１００よりも副撮像部１１０で取得される画像は相対的に解像度が高い（高周波成分の再現性が高い）画像である。副撮像部１１０で取得される画像は、主撮像部１００で取得される画像よりも被写体の高周波成分を多く含んでいる画像である、とも言える。
【００２９】
画像処理部２０は、入力された画像を用いて、高周波成分の復元処理およびノイズ低減処理（合わせて補正処理ともいう）を行う。画像処理部２０は、学習部２１および補正部２２を有する。補正部２２は、取得部２２ａおよび算出部２２ｂを有する。また画像処理部２０は、補正処理を実行する際に、メモリ（記憶部）８０に記憶された学習情報を呼び出して使用する。なお、補正処理に関する詳細は後述する。
【００３０】
補正された画像等の出力画像は、液晶ディスプレイ等の表示部７０に表示され、または画像記録媒体６０に保存される。ただし、撮影画像を画像記録媒体６０に保存し、任意のタイミングで補正を行ってもよい。また、撮影画像は動画でもよく、この場合、各フレームに対して補正を行う。以上の一連の制御は、システムコントローラ３０によって行われる。
【００３１】
次に、図４を参照して、画像処理部２０で行われる高周波成分の復元処理およびノイズ低減処理（画像の補正処理）について説明する。図４は、高周波成分の復元処理およびノイズ低減処理を示すフローチャートである。図４の各ステップは、主に、システムコントローラ３０の指令に基づいて画像処理部２０（補正部２２）により実行される。なお、高周波成分の復元処理およびノイズ低減処理の際には事前に学習された学習情報を用いるが、学習に関する詳細は後述する。
【００３２】
まずステップＳ１０１において、画像処理部２０（補正部２２）は、低解像度かつノイズ量の少ない第一の入力画像と高解像度かつノイズ量の多い第二の入力画像（２つの入力画像）、および、学習情報を取得する。学習情報とは、２つの撮影画像と高周波成分が復元されてノイズ量が低減された画像とを結び付けるために予め学習部２１により学習された情報である。
【００３３】
続いてステップＳ１０２において、補正部２２（取得部２２ａ）は、２つの入力画像から部分画像を取得する。すなわち補正部２２（取得部２２ａ）は、第一の入力画像から、第一の入力画像の一部である第一の部分領域に基づく第一の画像、および、第二の入力画像から、第二の入力画像の一部である第二の部分領域に基づく第二の画像を取得する。高周波成分の復元処理およびノイズ量の低減処理は、部分領域（第一の部分領域、第二の部分領域）を単位として（部分領域ごとに）行われる。本実施例において、第一の部分領域および第二の部分領域は、第一の入力画像および第二の入力画像のそれぞれ対応する領域、すなわち同一被写体領域に対応する領域である。なお第一の部分領域および第二の部分領域はそれぞれ、第一の入力画像および第二の入力画像の全てであってもよい。
【００３４】
続いてステップＳ１０３において、補正部２２は、学習情報、第一の部分領域、第二の部分領域を用いて、高周波成分の復元およびノイズ量の低減（補正処理）が行われた部分領域である補正部分領域を生成する。ここで、図３を参照して、補正処理の詳細に関して説明する。図３は、ディープラーニングの１つであるＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）のネットワーク構造を示している。
【００３５】
ＣＮＮは、複数の層構造になっており、各層で学習情報を用いた線型変換と非線型変換とが実行される。ｎを１からＮまでの整数とするとき、ｎ番目の層を第ｎ層、第ｎ層における線型変換と非線型変換とをそれぞれ、第ｎ線型変換と第ｎ非線型変換と呼称する。ただし、Ｎは２以上の整数である。部分領域２０１に関しては、第１層において、複数のフィルタ２０２のそれぞれとのコンボリューション（複数の線型関数による第１線型変換）が実行される。その後、活性化関数（Ａｃｔｉｖａｔｉｏｎ  Ｆｕｎｃｔｉｏｎ）と呼ばれる非線型関数を用いて変換（第１非線型変換）が実行される。図３において、活性化関数をＡＦとして示している。また、部分領域２０１が複数枚描画されているのは、入力画像（撮影画像）が複数のチャンネルを有するためである。本実施例において、各部分領域はＲＧＢ（Ｒｅｄ、Ｇｒｅｅｎ、Ｂｌｕｅ）の３チャンネルを有する。ただし、チャンネルの数はこれに限定されるものではない。また、部分領域が複数のチャンネルを有していても、１チャンネルずつ個別にＣＮＮへ入力しても構わない。
【００３６】
フィルタ２０２は複数存在する。補正部２２は、複数のフィルタ２０２のそれぞれと部分領域２０１とのコンボリューションを個別に算出する。フィルタ２０２の係数は、学習情報に基づいて決定される。学習情報は、フィルタ２０２の係数（フィルタ係数）そのもの、または、フィルタ２０２を所定の関数でフィッティングした際の係数でもよい。フィルタ２０２のそれぞれのチャンネル数は、部分領域２０１の数と一致する。部分領域２０１のチャンネル数が２以上の場合、３次元フィルタとなる（３次元目がチャンネル数を表す）。また、コンボリューションの結果に対して、学習情報から決定される定数（負もとり得る）を加算してもよい。
【００３７】
活性化関数ｆ（ｘ）の例として、以下の式（１）〜（３）が挙げられる。
【００３８】
【数１】
2020057373.tif 000003
【００３９】
【数２】
2020057373.tif 000004
【００４０】
【数３】
2020057373.tif 000005
【００４１】
式（１）はシグモイド関数、式（２）はハイパボリックタンジェント関数、式（３）はＲｅＬＵ（Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）と呼ばれる。式（３）中のｍａｘは、引数のうち最大値を出力するＭＡＸ関数を表す。式（１）〜（３）に示される活性化関数ｆ（ｘ）は、全て単調増加関数である。また、活性化関数としてＭａｘｏｕｔを使用してもよい。Ｍａｘｏｕｔは、第ｎ線型変換の出力である複数の画像のうち、各画素で最大値である信号値を出力するＭＡＸ関数である。
【００４２】
図３において、第１線型変換および第１非線型変換が施された部分領域を、第１変換部分領域２０３と呼称する。第１変換部分領域２０３の各チャンネル成分は、部分領域２０１と複数のフィルタ２０２のそれぞれとのコンボリューションから生成される。このため、第１変換部分領域２０３のチャンネル数は、フィルタ２０２の数と同じになる。
【００４３】
第２層では、第１変換部分領域２０３に対して、第１層と同様に学習情報から決定される複数のフィルタ２０４とのコンボリューション（第２線型変換）と、活性化関数による非線型変換（第２非線型変換）とを行う。第２層で用いられるフィルタ２０４は、一般的に、第１層で用いられるフィルタ２０２と同一ではない。フィルタ２０４のサイズや数も、フィルタ２０４と一致しなくてもよい。ただし、フィルタ２０４のチャンネル数と第１変換部分領域２０３のチャンネル数とは互いに一致する。補正部２２は、同様の演算を第Ｎ層まで繰り返す（第ｎ線型変換および第ｎ非線型変換（ｎ＝１〜Ｎ）を実行する）ことにより、中間データ２１０を取得する。
【００４４】
最後に、第Ｎ＋１層において、中間データ２１０と複数のフィルタ２１１のそれぞれとのコンボリューションに定数を加算すること（第Ｎ＋１線型変換）により、補正された補正部分領域２１２が取得される。ここで用いられるフィルタ２１１および定数もそれぞれ、学習情報に基づいて決定される。補正部分領域２１２のチャンネル数は、部分領域２０１と同じである。このため、フィルタ２１１の数も部分領域２０１のチャンネル数と同じである。補正部分領域２１２の各チャンネルの成分は、中間データ２１０とフィルタ２１１のそれぞれ（フィルタ２１１が一つの場合もある）とのコンボリューションを含む演算から求められる。なお、部分領域２０１と補正部分領域２１２とのサイズは互いに一致しなくてもよい。コンボリューションの際に、部分領域２０１の外側にはデータが存在しないため、データの存在する領域のみで演算すると、コンボリューション結果はサイズが小さくなる。ただし、周期境界条件などを設定することにより、サイズを保つこともできる。
【００４５】
ディープラーニングが高い性能を発揮できる理由は、非線型変換を多層構造によって何度も実行することにより、高い非線型性が得られるためである。仮に、非線型変換を担う活性化関数が存在せず、線型変換のみでネットワークが構成されていた場合、いくら多層にしてもそれと等価な単層の線型変換が存在するため、多層構造にする意味がない。ディープラーニングは、より多層にする方が強い非線型を得られるため、高い性能が出やすいと言われている。一般に、少なくとも３層以上を有する場合がディープラーニングと呼ばれる。
【００４６】
続いて、図４のステップＳ１０４において、補正部２２は、第一の入力画像および第二の入力画像のうち所定の領域の全てに対して、高周波成分の復元処理およびノイズ量の低減処理（補正処理、すなわち補正部分領域の生成）が完了したか否かを判定する。所定の領域の全てに対する補正処理が完了していない場合、ステップＳ１０２へ戻り、補正部２２は、まだ補正されていない部分領域を撮影画像から取得する。一方、所定の領域の全てに対して補正処理が完了した場合（所定の領域の全てに関して、補正された補正部分領域が生成されている場合）、ステップＳ１０５へ進む。
【００４７】
ステップＳ１０５において、補正部２２（算出部２２ｂ）は、高周波成分の復元処理およびノイズ量の低減処理がなされた画像（補正画像）を出力する。補正画像は、生成された補正部分領域を合成することで生成される。ただし、部分領域が撮影画像（入力画像）の全体である場合、補正部分領域をそのまま高周波成分の復元処理およびノイズ量の低減処理がなされた画像とする。
【００４８】
以上の処理により、撮影画像の高周波成分を復元するとともにノイズ量を低減した画像を得ることができる。本実施例では、第一の入力画像および第二の入力画像の同一被写体領域のみが補正される。すなわち、第二の入力画像と同じまたはそれ以下の画角の画像が出力画像として生成される。換言すると、撮像部サイズの大きい主撮像部１００と撮像部サイズが小さい副撮像部１１０の２つの撮像部からの撮影画像を用いて、副撮像部１１０と同等の画角の高画質な望遠撮影画像を出力することが可能である。通常撮影により高画質な望遠撮影画像を得るには、主撮像部１００の撮像光学系１０１を副撮像部１１０の撮像光学系１１１と同等画角の望遠レンズとする必要があるが、一般的に撮像領域の大きい撮像素子に対応する望遠レンズはサイズが大型となる。本実施例によれば、ノイズ量の少ない撮像が可能な主撮像部１００と望遠撮像が可能な小型の副撮像部１１０とを備え、前述の画像処理方法を実行することで、装置サイズを小さく保ったまま高画質な望遠撮影画像を出力することができる。
【００４９】
次に、図５を参照して、本実施例における学習情報の学習（学習済みモデルの製造方法）について説明する。図５は、学習情報の学習を示すフローチャートである。図５の各ステップは、主に、撮像装置１（画像処理部２０）の学習部２１により行われる。ただし本実施例はこれに限定されるものではなく、学習情報の学習は、高周波成分の復元およびノイズ量の低減を実行する前であれば、撮像装置１とは別の装置（演算装置）に設けられた学習部で行ってもよい。本実施例では、撮像装置１の学習部２１が学習情報を学習する場合について説明する。
【００５０】
まずステップＳ２０１において、学習部２１は、少なくとも一組の学習画像を取得する。一組の学習画像は、同一の被写体が存在する複数の画像であって、広角画像でノイズ量が少ない第一の入力学習画像、望遠画像でノイズ量が多い第二の入力学習画像、および、望遠画像でノイズ量が少ない出力学習画像を含む。第一の入力学習画像および第二の入力学習画像は、出力学習画像と一対一に対応していてもよいし、一枚の出力学習画像に対して複数枚存在していてもよい。後者の場合、第一の入力学習画像および第二の入力学習画像は、ノイズ量等が異なる複数の画像である。
【００５１】
学習画像を用意する方法として、シミュレーションや実写画像を用いることができる。シミュレーションを行う場合、出力学習画像に対して、撮像部の画質劣化要因を考慮した撮像シミュレーションを行うことで入力学習画像を生成すればよい。実写画像を用いる場合、同一の被写体を撮像装置１の主撮像部１００と副撮像部１１０において同じ条件で撮影した画像を使用すればよい。なお、学習画像には様々な特徴を有する被写体が含まれていることが好ましい。学習画像に含まれない特徴を有する画像は、高精度に補正することができないためである。
【００５２】
続いてステップＳ２０２において、学習部２１は、ステップＳ２０１にて取得した学習画像から、複数の学習ペアを取得する。学習ペアは、学習部分領域（学習領域）と学習補正部分領域とからなる。学習補正部分領域は、第一の入力学習画像および第二の入力学習画像から取得され、そのサイズはステップＳ１０２にて取得した撮影画像の部分領域と同じである。学習部分領域は、出力学習画像から取得され、学習部分領域の中心は画像において学習補正部分領域の中心と同じ位置である。そのサイズは、ステップＳ１０３にて生成された補正部分領域と同じである。前述と同様に、学習部分領域と学習補正部分領域のペア（学習ペア）は、一対一に対応している必要はない。一つの学習補正部分領域と、複数の学習部分領域とがペア（グループ）になっていてもよい。
【００５３】
続いてステップＳ２０３において、学習部２１は、複数の学習ペア（学習部分領域と学習補正部分領域）から、学習情報を学習によって取得（生成）する。学習では、高周波成分の復元とノイズ量の低減を実行するネットワーク構造と同じネットワーク構造を使用する。本実施例では、図３に示されるネットワーク構造に対して学習補正部分領域を入力し、その出力結果と学習部分領域との誤差を算出する。この誤差が最小となるように、例えば誤差逆伝播法（Ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）等を用いて、第１乃至Ｎ＋１層で用いる複数のフィルタのそれぞれの係数や加算する定数などのパラメータ（学習情報）を更新して最適化する。各フィルタの係数および定数の初期値は任意に設定することができ、例えば乱数から決定される。または、各層ごとに初期値を事前学習するＡｕｔｏ  Ｅｎｃｏｄｅｒ等のプレトレーニングを行ってもよい。
【００５４】
学習ペアの全てをネットワーク構造へ入力し、それら全ての情報を使って学習情報を更新する手法をバッチ学習と呼ぶ。ただし、この学習方法は、学習ペアの数が増えるにつれて計算負荷が膨大になる。一方、学習情報の更新に一つの学習ペアのみを使用し、更新ごとに異なる学習ペアを使用する学習手法をオンライン学習と呼ぶ。この手法は、学習ペアが増えても計算量が増大しないが、一つの学習ペアに存在するノイズの影響を大きく受ける。このため、これら２つの手法の中間に位置するミニバッチ法を用いて学習することが好ましい。ミニバッチ法は、全学習ペアの中から少数を抽出し、それらを用いて学習情報の更新を行う。次の更新では、異なる小数の学習ペアを抽出して使用する。これを繰り返すことにより、バッチ学習とオンライン学習の不利な点を小さくすることができ、高い補正効果を得やすくなる。
【００５５】
続いてステップＳ２０４において、学習部２１は、学習された学習情報を出力する。本実施例において、学習情報はメモリ８０に記憶される。以上の処理により、高周波成分の復元とノイズ量の低減を実行するための学習情報を学習することができる。すなわち、高周波成分の復元とノイズ量の低減を実行するための学習済みモデルを製造することができる。
【００５６】
また、以上の処理に加えて、ＣＮＮの性能を向上させる工夫を併用してもよい。例えば、ロバスト性の向上のためネットワークの各層において、ドロップアウト（Ｄｒｏｐｏｕｔ）やダウンサンプリングであるプーリング（ｐｏｏｌｉｎｇ）を行ってもよい。または、学習精度の向上のため、学習画像の画素の平均値を０、分散を１に正規化し、隣接する画素の冗長性をなくすＺＣＡホワイトニング（ＺＣＡ  ｗｈｉｔｅｎｉｎｇ）などを併用してもよい。
【００５７】
図６は本実施例における画像処理結果であり、図６（ａ）は第一の画像、図６（ｂ）は第二の画像、図６（ｃ）は本実施例による画像処理により得られる出力画像、図６（ｄ）は正解画像をそれぞれ示す。また、図６（ａ）〜（ｄ）の全ての画像は２５６×２５６画素のモノクロ画像であり、画素値は［０  １］の範囲になるように規格化されている。なお、全ての画像は実写画像である。
【００５８】
図７は、本実施例における画像処理の数値計算結果であり、第一の画像（メイン画像）、第二の画像（サブ画像）、および、本実施例の画像処理により得られる出力画像のそれぞれ画質を、画質評価指標ＳＳＩＭで表している。なお、ＳＳＩＭは０〜１の値をとり、１に近いほど正解画像と類似していることを意味する。図７より、第一の画像および第二の画像のそれぞれよりも、本実施例の画像処理により得られる出力画像の方が画質評価指数ＳＳＩＭの値が１に近いことが分かる。このため、ＣＮＮを用いて、ノイズ量の少ない広角画像とノイズ量の多い望遠画像とに基づいて、高周波成分が復元されノイズ量が低減された望遠画像へ変換できることが定量的に分かる。
【００５９】
本実施例によれば、撮影画像の高周波成分の復元処理およびノイズ量の低減処理を実行することが可能な撮像装置を提供することができる。
【実施例２】
【００６０】
次に、図８および図９を参照して、本発明の画像処理方法を画像処理システムに適用した実施例２に関して説明する。本実施例では、撮影画像を補正する画像処理装置、撮影画像を取得する撮像装置、および、学習を行うサーバが個別に存在する。また本実施例では、撮影に使用された撮像装置の種類を判別することにより、使用する学習情報を切り替える。撮影に使用されたそれぞれの撮像装置の組み合わせに対して個別に学習情報を準備しておくことで、より高精度な画像補正が可能となる。
【００６１】
図８は、画像処理システム２００のブロック図である。図９は、画像処理システム２００の外観図である。図８および図９に示されるように、画像処理システム２００は、複数の撮像装置３００、画像処理装置３０１、サーバ３０５、表示装置３０８、記録媒体３０９、および、出力装置３１０を備えて構成される。
【００６２】
撮像装置３００は、複数の撮像装置３００ａ、３００ｂ、…、３００ｎを含む。本実施例では、例えば、複数の撮像装置３００のうち一般的な一眼レフカメラを実施例１で説明した主撮像部とし、コンパクトカメラを副撮像部とすることができる。また、副撮像部として、スマートフォン等に搭載される小型のカメラとしてもよい。また本実施例において、複数の撮像装置として２つの撮像装置を用いる場合に限定されるものではなく、３つ以上の撮像装置を用いることも可能である。
【００６３】
複数の撮像装置３００ａ〜３００ｎを用いて撮影された撮影画像（入力画像）は、画像処理装置３０１に設けられた記憶部３０２に記憶される。画像処理装置３０１は、ネットワーク３０４と有線または無線で接続されており、ネットワーク３０４を介してサーバ３０５にアクセスすることができる。サーバ３０５は、撮影画像の高周波成分を復元しつつノイズ量を低減するための学習情報を学習する学習部３０７と、学習情報を記憶する記憶部３０６とを有する。画像処理装置３０１に設けられた補正部３０３（画像処理部）は、サーバ３０５の記憶部３０６からネットワーク３０４を介して学習情報を取得し、撮影画像の高周波成分を復元しつつノイズ量を低減して出力画像を生成する。生成された出力画像は、表示装置３０８、記録媒体３０９、および、出力装置３１０の少なくとも一つに出力される。表示装置３０８は、例えば液晶ディスプレイやプロジェクタである。ユーザは、表示装置３０８を介して、処理途中の画像を確認しながら作業を行うことができる。記録媒体３０９は、例えば半導体メモリ、ハードディスク、ネットワーク上のサーバである。出力装置３１０は、例えばプリンタである。画像処理装置３０１は、必要に応じて現像処理やその他の画像処理を行う機能を有してもよい。なお、高周波成分の復元、ノイズ低減処理、および、学習情報の学習に関しては、実施例１と同様であるため、それらの説明は省略する。
【００６４】
このように各実施例において、画像処理方法は、第一の画像を取得する工程、および、第一の画像よりノイズ量が多く、被写体の高周波成分を多く含む第二の画像を取得する工程（Ｓ１０２）を有する。また画像処理方法は、第一の画像および第二の画像をニューラルネットワークに入力して、第一の画像より被写体の高周波成分を多く含み第二の画像よりノイズ量が少ない第三の画像を生成する工程（Ｓ１０３〜Ｓ１０５）を有する。
【００６５】
好ましくは、第一の画像および第二の画像はそれぞれ、第一の入力画像および第二の入力画像の少なくとも一部である。より好ましくは、第一の入力画像は、第二の入力画像よりも広い画角を有する。より好ましくは、第三の画像の画角は、第二の入力画像の画角以下である。
【００６６】
好ましくは、第二の画像は、第一の画像を取得する際に用いられた撮像素子１０２よりも画素ピッチが小さい撮像素子１１２を用いた撮像により得られた画像である。また好ましくは、第二の画像は、第一の画像を取得する際に用いられた撮像素子１０２よりも撮像領域が小さい撮像素子１１２を用いた撮像により得られた画像である。また好ましくは、ニューラルネットワークは、少なくとも一層の畳み込み層を有する。
【００６７】
好ましくは、画像処理方法は、予め学習されたニューラルネットワークに関する学習情報を取得する工程を有する。第三の画像を生成する工程は、Ｎを２以上の整数、ｎを１からＮまでの整数とするとき、以下の第一の工程と第二の工程とを有する。第一の工程は、第一の画像および第二の画像に対して、学習情報に基づく複数の線型関数のそれぞれによる第ｎ線型変換と、非線型関数による第ｎ非線型変換とをｎが１からＮになるまで順に実行することで中間データを生成する。第二の工程は、中間データに対して、学習情報に基づく少なくとも一つの線型関数による第Ｎ＋１線型変換を実行する。より好ましくは、学習情報は、同一の被写体が存在する複数の学習画像であって、第一の入力学習画像と、第二の入力学習画像と、出力学習画像とを用いて学習された情報である。ここで第二の入力学習画像は、第一の入力学習画像よりノイズ量が多く、被写体の高周波成分を多く含む画像である。出力学習画像は、第一の入力学習画像より被写体の高周波成分を多く含み第二の画像よりノイズ量が少ない画像である。より好ましくは、第一の入力学習画像および第二の入力学習画像の少なくとも一方は、シミュレーションにより生成された画像である。
【００６８】
（その他の実施例）
本発明は、画像処理に関する要求を行い実体的にシステム全体の制御を支配する第一の装置（撮像装置、スマートフォン、ＰＣなどのユーザ端末）と、該要求に応じて画像処理を行う第二の装置（サーバ等）で構成された画像処理システムとしても実現可能である。例えば、実施例２の画像処理システム２００における補正部３０３を第二の装置としてのサーバ３０５側に設け、第一の装置としての画像処理装置３０１がサーバ３０５に対して第一の画像および第二の画像を用いた画像処理の実行を要求するように構成しても良い。この場合、第一の装置（ユーザ端末）は画像処理に関する要求を第二の装置（サーバ）に送信するための送信手段を有し、第二の装置（サーバ）は第一の装置（ユーザ端末）から送信された要求を受信する受信手段を有する。
【００６９】
なお、この場合、第一の処理装置は画像処理の要求と共に第一の画像および第二の画像を第二の装置に送信しても良い。ただし、第二の装置は第一の装置の要求に応じて第一の装置以外の場所（外部記憶装置）に記憶された第一の画像および第二の画像を取得しても良い。また、第二の装置による第一の画像および第二の画像に対する画像処理が行われた後、第二の装置は出力画像を第一の装置に送信するようにしても良い。このように画像処理システムを構成することにより、比較的処理負荷の重い補正部による処理を第二の装置側で行うことが可能となり、ユーザ端末側の負担を低減することが可能となる。
【００７０】
また本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７１】
各実施例によれば、撮影画像の高周波成分を復元しつつノイズ量を低減することが可能な画像処理方法、画像処理装置、撮像装置、プログラム、記憶媒体、画像処理システム、および、学習済みモデルの製造方法を提供することができる。
【００７２】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００７３】
２０  画像処理部（画像処理装置）
２２ａ  取得部
２２ｂ  算出部
【図１】
2020057373.tif 000006
【図２】
2020057373.tif 000007
【図３】
2020057373.tif 000008
【図４】
2020057373.tif 000009
【図５】
2020057373.tif 000010
【図６】
2020057373.tif 000011
【図７】
2020057373.tif 000012
【図８】
2020057373.tif 000013
【図９】
2020057373.tif 000014