(57)【要約】【課題】畳み込みニューラルネットワークのネットワークパラメータを高精度かつ簡易に学習可能な学習装置を提供する。【解決手段】学習装置（１０３）は、第１の訓練画像と、第１の訓練画像に対して位置ずれを有する正解画像とを取得する取得部（１０３ａ）と、正解画像から、第１の訓練画像よりも解像度の高い第２の訓練画像を生成する生成部（１０３ｂ）と、第１の訓練画像と第２の訓練画像と正解画像とに基づいて、畳み込みニューラルネットワーク（ＣＮＮ）のネットワークパラメータを学習する学習部（１０３ｃ）とを有する。【選択図】図１
2020154669.tif 000002
【特許請求の範囲】
【請求項１】
第１の訓練画像と、前記第１の訓練画像に対して位置ずれを有する正解画像とを取得する取得部と、
前記正解画像から、前記第１の訓練画像よりも解像度の高い第２の訓練画像を生成する生成部と、
前記第１の訓練画像と前記第２の訓練画像と前記正解画像とに基づいて、ニューラルネットワークのネットワークパラメータを学習する学習部と、を有することを特徴とする学習装置。
【請求項２】
前記第１の訓練画像は、撮像部から取得された画像であり、
前記第２の訓練画像は、前記正解画像から生成された画像であることを特徴とする請求項１に記載の学習装置。
【請求項３】
前記第２の訓練画像は、前記第１の訓練画像よりも、フーリエ変換した際に高周波成分を多く含むことを特徴とする請求項１または２に記載の学習装置。
【請求項４】
前記生成部は、前記正解画像を劣化させて前記第２の訓練画像を生成することを特徴とする請求項１乃至３のいずれか一項に記載の学習装置。
【請求項５】
前記生成部は、レンズ、光学ローパスフィルタ、イメージセンサの画素開口、手振れによるぼけ、イメージセンサまたは画像圧縮によるノイズのうち少なくとも１つに基づいて、前記正解画像を劣化させることを特徴とする請求項４に記載の学習装置。
【請求項６】
前記第１の訓練画像と前記正解画像は、異なる撮像部により撮像された画像であることを特徴とする請求項１乃至５のいずれか一項に記載の学習装置。
【請求項７】
前記第１の訓練画像と前記正解画像は、同じ被写体を撮影した画像であることを特徴とする請求項１乃至６のいずれか一項に記載の学習装置。
【請求項８】
前記第１の訓練画像は、複数の訓練画像を含む訓練画像群であり、
前記第２の訓練画像は、前記複数の訓練画像のそれぞれによりも解像度が高いことを特徴とする請求項１乃至７のいずれか一項に記載の学習装置。
【請求項９】
前記ニューラルネットワークは、畳み込みニューラルネットワークであることを特徴とする請求項１乃至７のいずれか一項に記載の学習装置。
【請求項１０】
第１の訓練画像と、前記第１の訓練画像に対して位置ずれを有する正解画像とを取得する取得ステップと、
前記正解画像から、前記第１の訓練画像よりも解像度の高い第２の訓練画像を生成する生成ステップと、
前記第１の訓練画像と前記第２の訓練画像と前記正解画像とに基づいて、ニューラルネットワークのネットワークパラメータを学習する学習ステップと、を有することを特徴とする学習方法。
【請求項１１】
請求項１０に記載の学習方法をコンピュータに実行させることを特徴とする学習プログラム。
【請求項１２】
請求項１０に記載の学習方法により学習された前記ネットワークパラメータを含むデータを製造することを特徴とするデータの製造方法。
【請求項１３】
互いに異なる解像度を有する複数の入力画像を取得する画像取得部と、
請求項１乃至９のいずれか一項に記載の学習装置により学習された前記ニューラルネットワークのネットワークパラメータを用いて、前記複数の入力画像を出力画像に変換する画像変換部と、を有することを特徴とする画像処理装置。
【請求項１４】
互いに異なる解像度を有する複数の入力画像を取得する画像取得ステップと、
請求項１０に記載の学習方法により学習された前記ニューラルネットワークのネットワークパラメータを用いて、前記複数の入力画像を出力画像に変換する画像変換ステップと、を有することを特徴とする画像処理方法。
【請求項１５】
請求項１４に記載の画像処理方法をコンピュータに実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、畳み込みニューラルネットワーク（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ：ＣＮＮ）のネットワークパラメータを学習する学習装置に関する。
【背景技術】
【０００２】
従来、訓練画像と正解画像とを用いてＣＮＮのネットワークパラメータを学習する学習方法が知られている。非特許文献１には、スマートフォンカメラで取得された複数の訓練画像（実写画像）とデジタル一眼カメラで取得された正解画像とを用いて、スマートフォンカメラ画像からデジタル一眼カメラ画像へ変換するためのＣＮＮを学習する方法が開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ａｎｄｒｅｙ  Ｉｇｎａｏｖ、Ｎｉｋｏｌａｙ  Ｋｏｂｙｓｈｅｖ、Ｒａｄｕ  Ｔｉｍｏｆｔｅ、Ｋｅｎｎｅｔｈ  Ｖａｎｈｏｅｙ、Ｌｕｃ  Ｖａｎ  Ｇｏｏｌ、「ＤＳＬＲ−Ｑｕａｌｉｔｙ  Ｐｈｏｔｏｓ  ｏｎ  Ｍｏｂｉｌｅ  Ｄｅｖｉｃｅｓ  ｗｉｔｈ  Ｄｅｅｐ  Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｔｗｏｒｋｓ」、  ａｒＸｉｖ：１７０４．０２４７０ｖ２、アメリカ合衆国、２０１７
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、非特許文献１のように複数の訓練画像のそれぞれを実写画像とする場合、複数の訓練画像の間には位置ずれが生じているため、高精度なネットワークパラメータを学習することができない。
【０００５】
一方、複数の訓練画像のそれぞれを数値計算で生成することが考えられるが、複数の訓練画像を数値計算で表現することは難しい。
【０００６】
そこで本発明は、畳み込みニューラルネットワークのネットワークパラメータを高精度かつ簡易に学習可能な学習装置、学習方法、学習プログラム、データの製造方法、画像処理装置、画像処理方法、および、画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面としての学習装置は、第１の訓練画像と、前記第１の訓練画像に対して位置ずれを有する正解画像とを取得する取得部と、前記正解画像から、前記第１の訓練画像よりも解像度の高い第２の訓練画像を生成する生成部と、前記第１の訓練画像と前記第２の訓練画像と前記正解画像とに基づいて、畳み込みニューラルネットワークのネットワークパラメータを学習する学習部とを有する。
【０００８】
本発明の他の側面としての学習方法は、第１の訓練画像と、前記第１の訓練画像に対して位置ずれを有する正解画像とを取得する取得ステップと、前記正解画像から、前記第１の訓練画像よりも解像度の高い第２の訓練画像を生成する生成ステップと、前記第１の訓練画像と前記第２の訓練画像と前記正解画像とに基づいて、畳み込みニューラルネットワークのネットワークパラメータを学習する学習ステップとを有する。
【０００９】
本発明の他の側面としての学習プログラムは、前記学習方法をコンピュータに実行させる。
【００１０】
本発明の他の側面としてのデータの製造方法は、前記学習方法により学習された前記ネットワークパラメータを含むデータを製造する。
【００１１】
本発明の他の側面としての画像処理装置は、互いに異なる解像度を有する複数の入力画像を取得する画像取得部と、前記学習装置により学習された前記畳み込みニューラルネットワークのネットワークパラメータを用いて、前記複数の入力画像を出力画像に変換する画像変換部とを有する。
【００１２】
本発明の他の側面としての画像処理方法は、互いに異なる解像度を有する複数の入力画像を取得する画像取得ステップと、前記学習方法により学習された前記畳み込みニューラルネットワークのネットワークパラメータを用いて、前記複数の入力画像を出力画像に変換する画像変換ステップとを有する。
【００１３】
本発明の他の側面としての画像処理プログラムは、前記画像処理方法をコンピュータに実行させる。
【００１４】
本発明の他の目的及び特徴は、以下の実施形態において説明される。
【発明の効果】
【００１５】
本発明によれば、畳み込みニューラルネットワークのネットワークパラメータを高精度かつ簡易に学習可能な学習装置、学習方法、学習プログラム、データの製造方法、画像処理装置、画像処理方法、および、画像処理プログラムを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態における画像処理システムの構成図である。
【図２】本実施形態における別の画像処理システムの構成図である。
【図３】本実施形態における画像処理結果を示す図である。
【図４】本実施形態における画像処理結果を定量的に示す図である。
【図５】従来方法による画像処理結果を示す図である。
【図６】従来方法による画像処理結果を定量的に示す図である。
【図７】本実施形態における学習方法のフローチャートである。
【図８】デジタル多眼カメラの構成図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
【００１８】
まず、具体的な実施形態を説明する前に、畳み込みニューラルネットワーク（ＣＮＮ）とその学習について説明する。ＣＮＮとは、学習により生成したフィルタを、入力画像に対して畳み込み、学習により生成したバイアスを加算した後、非線形演算することを繰り返し、所望の出力画像へ変換する学習型の画像処理である。この学習は、訓練画像と正解画像との組からなる画像を用いて行われる。簡単には、学習とは、入力画像に対応する訓練画像と、出力画像に対応する正解画像を大量（〜数万枚）に用意し、これらの画像から入出力画像間の関係を学ばせることである。なお、入力画像および出力画像はそれぞれ、１つの画像に限定されるものではなく、複数の画像であってもよい。例えば、３枚の入力画像から２枚の出力画像へ変換することができる。
【００１９】
本実施形態では、特に複数の撮像装置で取得した複数の入力画像を、ＣＮＮを用いて処理し、１つ以上の撮像装置で取得した１つ以上の出力画像へ変換することを考える。この場合、学習に用いる画像として、複数の撮像装置で取得した複数の訓練画像と、１つ以上の撮像装置で取得した１つ以上の正解画像との組を、大量に用意する必要がある。従来、学習に用いる画像を実写または数値計算で生成しているが、これらの画像生成手法にはそれぞれ一長一短がある。
【００２０】
まず、実写画像で学習に用いる画像を生成する場合を考える。この場合、撮影するだけで画像を生成できるという長所がある。一方、異なる撮像装置で取得された画像は、解像度が異なる、風合い（コントラスト、ノイズ、色など）が異なる、視差ずれがあるなどの理由で、画像間の位置合わせが難しいという短所がある。この短所により、訓練画像と正解画像との間にランダムな位置ずれが生る。このため、訓練画像と正解画像で学習を行ったＣＮＮを用いて複数の入力画像を処理すると、一般に得られる出力画像は劣化する（ぼける）。この理由を簡単に説明すると、訓練画像に対して正解画像がランダムに位置がずれた関係をＣＮＮで学習することにより、正解画像を平均化した画像を出力することが誤差を最小にすることと学習されるためである。
【００２１】
次に、数値計算で学習に用いる画像を生成する場合を考える。この場合、訓練画像と正解画像との間に位置ずれを生じさせることなく画像を生成できるという長所がある。一方、異なる撮像装置間の関係を数値計算で完全に表現することは難しいという短所がある。この短所により、訓練画像に近似誤差が含まれ、訓練画像と正解画像で学習を行ったＣＮＮを用いて複数の入力画像を処理すると、一般に得られる出力画像の精度は低い。この理由を簡単に説明すると、実写で生成する入力画像と数値計算で生成する訓練画像との間に近似誤差が存在することから、学習と画像処理の際に異なる入力画像を扱うことになるためである。
【００２２】
そこで本実施形態は、複数の撮像部で取得した複数の入力画像をＣＮＮを用いて処理し、１台以上の撮像部で取得した１枚以上の出力画像へ変換する際、高い画像処理精度と学習に用いる画像生成の省力化が可能な学習装置および画像処理装置を提供する。
【００２３】
まず、図１を参照して、本実施形態における画像処理システムの構成について説明する。図１は、画像処理システム１００の構成図である。画像処理システム１００は、撮像装置（撮像部）１０１、画像処理装置１０２、および、学習装置１０３を備えて構成されている。
【００２４】
撮像装置１０１は、入力画像を取得する。なお撮像装置１０１は、デジタル画像データが取得可能であればよく、例えばデジタルカメラである。また入力画像は、撮像装置１０１に応じて劣化している。この劣化要因（画像劣化過程）として、デジタルカメラであれば、レンズ、光学ローパスフィルタ、イメージセンサの画素開口に起因するぼけ、イメージセンサに起因するノイズ、画像圧縮に起因するノイズなどが挙げられる。また、画像データの形式は、計算機に読み込み可能なデジタル形式であればよく、例えば、ＲＡＷ、ＢＭＰ（Ｂｉｔｍａｐ）、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）などである。また入力画像は、カラー画像、モノクロ画像、マルチスペクトル画像、または、動画像のいずれでもよい。
【００２５】
撮像装置１０１は、前述した画像劣化過程の異なる２台以上の装置１〜Ｎから構成され、互いに異なる解像度を有する複数の入力画像を取得する。例えば、低解像度のデジタルカメラ（スマートフォンカメラ）と高解像度のデジタルカメラ（デジタル一眼カメラ）の２台で、撮像装置１０１が構成される。また、例えば１台のデジタルカメラの交換式レンズを変更することで、異なる画像劣化過程を実現し、疑似的に複数台の装置を構成してもよい。また、１台の撮像装置に装置１〜Ｎに対応する複数の撮像部を設けてもよい。本実施形態では、説明の分かり易さのため、撮像装置１０１は画像劣化過程の異なる２台以上の装置から構成されるものとする。
【００２６】
画像処理装置１０２は、前述したＣＮＮにより入力画像を画像処理する計算機であり、例えばＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）やワークステーション、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、サーバで構成される。なお画像処理装置１０２は、前述したＣＮＮの演算が実現可能である計算機であればよい。また画像処理装置１０２は、後述する学習装置１０３により訓練画像と正解画像から生成されたネットワークパラメータ（前述のフィルタおよびバイアス）を用いたＣＮＮにより、撮像装置１０１で取得された複数の入力画像を所望の出力画像へと変換する。ここで、出力画像は１つの画像に限定されるものではなく、複数の画像であってもよい。
【００２７】
本実施形態において、画像処理装置１０２は、画像取得部１０２ａ、画像変換部１０２ｂ、および、記憶部（メモリ）１０２ｃを有する。画像取得部１０２ａは、撮像装置１０１で取得された、互いに異なる解像度を有する複数の入力画像を取得する。画像変換部１０２ｂは、学習装置１０３により学習されたＣＮＮのネットワークパラメータを用いて、複数の入力画像を出力画像（推定画像）に変換する。
【００２８】
本実施形態において、ＣＮＮのネットワークパラメータを、画像処理装置１０２の内部の記憶部（メモリ）１０２ｃに記憶しておき、画像処理の際に読み出すことができる。または、ネットワークパラメータを、後述する学習装置１０３から画像処理の際に読み出してもよい。または、ネットワークパラメータを、画像処理装置１０２の外部の記憶媒体（不図示）に記憶しておき、画像処理の際にＣＤ−ＲＯＭドライブやＵＳＢインターフェースなどのインターフェース機器（不図示）を介して読み出してもよい。
【００２９】
なお、撮像装置１０１と画像処理装置１０２との間で、データ（入力画像）をやり取りするための配線や無線に関する説明については、省略する。同様に、後述する学習装置１０３と画像処理装置１０２との間で、データ（ネットワークパラメータ）をやり取りするための配線や無線に関する説明についても省略する。
【００３０】
本実施形態において、画像処理装置１０２で得られる画像処理結果である出力画像を、画像処理システム１００の内部の記憶部１０２ｃに記憶することができる。または、出力画像を、画像処理システム１００の外部の表示部（不図示）に表示してもよい。または、出力画像を、ＣＤ−ＲＯＭドライブやＵＳＢインターフェースなどのインターフェース機器（不図示）を介して、画像処理システム１００の外部の記憶媒体（不図示）に記憶してもよい。
【００３１】
学習装置１０３は、画像処理装置１０２のＣＮＮで用いるネットワークパラメータを、訓練画像と正解画像とから学習で生成する計算機であり、例えば、ＰＣ、ワークステーション、サーバで構成される。本実施形態において、学習装置１０３は、取得部１０３ａ、生成部１０３ｂ、および、学習部１０３ｃを有する。なお、一般に画像処理に用いられるＣＮＮと学習に用いられるＣＮＮのネットワーク構造は同じである。よって、本実施形態でも特に断らない限り、画像処理装置１０２のＣＮＮと学習装置１０３のＣＮＮのネットワーク構造は同じとする。学習装置１０３は、簡単には訓練画像をＣＮＮで変換し、得られる変換画像と正解画像との誤差を算出し、その誤差が小さくなるようにネットワークパラメータを更新する、という処理を反復することで学習を行う。
【００３２】
訓練画像は、撮像装置１０１で取得される複数の入力画像に対応する画像である。すなわち、撮像装置１０１が複数のデジタルカメラから構成される場合、訓練画像は、同一の被写体を撮影して得られる、カメラごとに異なる画像劣化過程が加わった画像（群）である。
【００３３】
一方、正解画像は、訓練画像と同じ被写体を、より画像劣化が少ない撮像装置で取得した画像である。例えば、センサノイズが少なく、収差が少ないレンズを装着した、高級機種のデジタル一眼カメラで取得した画像を、画像圧縮が少ない形式で保存した画像などである。簡単には、複数の撮像装置で同一の被写体を撮影した画像のうち、画像劣化が大きい画像が訓練画像、画像劣化が小さい画像が正解画像である。ただし、前述のように、複数の撮像装置により、実写で訓練画像を生成することは簡単であるが、これらの訓練画像は正解画像に対して位置ずれが生じる。これに対して、正解画像から数値計算により訓練画像を生成すれば位置ずれは生じない。しかし、前述のように、異なる撮像装置間の関係を数値計算で完全に表現することは難しい。例えば、撮像装置としてデジタルカメラを考えると、画像劣化過程をメーカーが明らかにしている場合は少なく、異なるデジタルカメラ間の関係を数値計算で完全に表現することは難しい。
【００３４】
そこで本実施形態では、正解画像に対する位置ずれが変換結果に与える影響の小さい訓練画像（第１の訓練画像）は実写で生成し、変換結果に与える影響が大きい一部の訓練画像（第２の訓練画像）のみ、正解画像から数値計算で生成する。すなわち本実施形態は、従来のように全ての訓練画像を実写または数値計算で生成するのではなく、変換結果に与える影響を考慮して第１の訓練画像（実写画像）と第２の訓練画像（数値計算により生成した画像）とを用いる。これにより、高い画像処理精度と訓練画像生成の省力化を両立させることができる。
【００３５】
ここで、正解画像に対する位置ずれが変換結果に与える影響の小さい訓練画像とは、訓練画像の中で低解像度な画像である。これに対して、変換結果に与える影響が大きい一部の訓練画像とは、訓練画像の中で高解像度な画像である。これは、低解像度画像は数画素位置ずれしても違いは分からないが、高解像度画像は１画素だけ位置ずれが生じても大きな変化が生じるためである。
【００３６】
なお、正解画像に対する位置ずれが変換結果に与える影響が大きい一部の訓練画像を取得する撮像装置の画像劣化過程は、厳密に把握する必要がある。例えば、光学伝達関数（Ｏｐｔｉｃａｌ  Ｔｒａｎｓｆｅｒ  Ｆｕｎｃｔｉｏｎ：ＯＴＦ）が既知のレンズと、ノイズ特性が既知のセンサを組み合わせて、デジタルカメラを作るなどが必要である。ただし、訓練画像を取得する複数の撮像装置のうち一部のみの特性を把握しておけばよいため、その負荷は小さい。
【００３７】
次に、図７を参照して、本実施形態における学習方法について説明する。図７は、学習方法のフローチャートである。図７の各ステップは、学習装置１０３の取得部１０３ａ、生成部１０３ｂ、または、学習部１０３ｃにより実行される。
【００３８】
まずステップＳ１において、取得部１０３ａは、第１の訓練画像と、第１の訓練画像に対して位置ずれを有する正解画像とを取得する。続いてステップＳ２において、生成部１０３ｂは、正解画像から、第１の訓練画像よりも解像度の高い第２の訓練画像を生成する。続いてステップＳ３において、学習部１０３ｃは、第１の訓練画像と第２の訓練画像と正解画像とに基づいて、ＣＮＮのネットワークパラメータを学習する。これにより学習装置１０３は、ネットワークパラメータ（データ）を製造することができる。
【００３９】
次に、図２を参照して、本実施形態における別の画像処理システムについて説明する。図２は、本実施形態における別の画像処理システム２００の構成図である。画像処理システム２００は、撮像装置２０１、画像処理装置２０２、および、学習装置２０３を備えて構成される。撮像装置２０１は、スマートフォンカメラおよびデジタルカメラを含む。画像処理装置２０２は、ＰＣおよびディスプレイを有する。学習装置２０３は、サーバである。出力画像は、画像処理装置２０２のディスプレイに表示される。このように、学習装置２０３と画像処理装置２０２とが一体ではなく、別体として構成されていてもよい。この場合、学習装置２０３で学習により生成されたネットワークパラメータを用いて、画像処理装置２０２が入力画像を処理すればよい。なお学習装置２０３は、図１の学習装置１０３の取得部１０３ａ、生成部１０３ｂ、および、学習部１０３ｃと同様の機能を有する。画像処理装置２０２は、図１の画像処理装置１０２の画像取得部１０２ａ、画像変換部１０２ｂ、および、記憶部１０２ｃと同様に機能を有する。
【００４０】
次に、本実施形態の効果について説明する。本実施形態では、学習装置１０３により生成したネットワークパラメータを用いて、画像処理装置１０２により画像処理を行った数値計算結果を示す。ここでは、例示的な画像処理として、広角デジタル一眼カメラ画像（メイン画像）と望遠コンパクトデジタルカメラ画像（サブ画像）から、望遠デジタル一眼カメラ画像（正解画像）へ変換した結果を示す。ここで、コンパクトデジタルカメラはセンササイズが小さく、画素サイズも小さいため、得られる画像に含まれるノイズが多い。一方、デジタル一眼カメラはセンササイズが大きく、画素サイズも大きいため、得られる画像に含まれるノイズが少ない。
【００４１】
メイン画像は、広角デジタル一眼カメラを用いて実写で生成し、Ｂｉｃｕｂｉｃ補間で４倍アップサンプリングした後、部分画像をトリミングして、学習と画像処理に用いられる。サブ画像は、レンズのＯＴＦとセンサノイズを考慮して、正解画像から数値計算で生成した後、メイン画像に対応する領域をトリミングして、学習に用いられる。画像処理の際には、望遠コンパクトデジタルカメラを用いて実写で生成した画像を用いる。正解画像は、メイン画像およびサブ画像のそれぞれに対応する領域をトリミングして、学習に用いられる。
【００４２】
すなわち、メイン画像は広角カメラ画像であるため、低解像度画像であり、正解画像に対する位置ずれが画像処理精度に与える影響が小さい。このため訓練画像として実写画像を用いる。なおメイン画像は、正解画像に対して位置合わせをしてもしなくてもよい。これは、メイン画像は低解像度画像であり、正解画像に対する位置合わせが難しいこと、および、正解画像に対する位置ずれが画像処理精度に与える影響が小さいことによる。一方、サブ画像は望遠カメラ画像であるため、高解像度画像であり、正解画像に対する位置ずれが画像処理精度に与える影響が大きい。このためサブ画像は、正解画像から数値計算により生成された訓練画像として用いられる。画像に含まれるノイズの面から考えると、サブ画像はコンパクトデジタルカメラ画像であるためノイズが多く含まれるが、メイン画像および正解画像はデジタル一眼カメラ画像であるためノイズが少ない。なお、メイン画像、サブ画像、および、正解画像は、分かり易さのためにこのように呼び分けている。ただし、前述と同じ呼び方をすると、メイン画像およびサブ画像はそれぞれ第１の訓練画像および第２の訓練画像に相当する。本実施形態において、メイン画像とサブ画像と正解画像とから学習により生成されたネットワークパラメータを用いて、実写で生成した入力画像に対して画像処理を行い、正解画像を推定する。なお、画像処理時に用いる実写で生成した入力画像にも、学習時と対応してメイン画像とサブ画像の２つがある。正確には画像処理時メイン画像、画像処理時サブ画像などと呼び学習時と区別すべきだが、簡単のため単にメイン画像、サブ画像と呼ぶ。
【００４３】
図３は、本実施形態における画像処理結果である。図３（ａ）はメイン画像、図３（ｂ）はサブ画像、図３（ｃ）は本実施形態の画像処理により得られる変換画像（推定画像）、図３（ｄ）は正解画像である。なお、図３（ａ）〜（ｄ）の全ての画像は２５６×２５６画素のモノクロ画像であり、画素値は［０  １］の範囲になるように規格化している。また、全ての画像は実写画像である。
【００４４】
図４は、メイン画像、サブ画像、および、本実施形態による画像処理の結果得られる変換画像の画質を、画質評価指標ＳＳＩＭで示す図である。なお、画質評価指標ＳＳＩＭは０〜１の値をとり、１に近いほど、正解画像と類似していることを表す。これより、メイン画像およびサブ画像よりも、本実施形態による画像処理の結果得られる変換画像の方が画質評価指標ＳＳＩＭの値が１に近いことが分かる。よって、広角デジタル一眼カメラ画像と望遠コンパクトデジタルカメラ画像から、ＣＮＮにより望遠デジタル一眼カメラ画像に近い画質の画像へ変換できることが定量的に分かる。
【００４５】
次に、従来方法による画像処理結果について説明する。すなわち、メイン画像、サブ画像、および、正解画像の全てを実写で生成して学習に用いる。また、前述と同様に、学習により生成されたネットワークパラメータを用いて、実写で生成したメイン画像およびサブ画像に対して画像処理を行い、正解画像の推定画像へ変換する。
【００４６】
図５は、従来方法による画像処理結果を示す。なお、メイン画像、サブ画像、および、正解画像は、前述と同様であるため省略し、従来方法による画像処理の結果得られる変換画像のみを示す。また、前述と同様に、変換画像は２５６×２５６画素のモノクロ画像であり、画素値は［０  １］の範囲になるように規格化している。
【００４７】
図６は、従来方法による画像処理の結果得られる変換画像の画質を、画質評価指標ＳＳＩＭで示している。これより、従来方法により画像処理の結果得られる変換画像の画質は、本実施形態による画像処理の結果得られる変換画像の画質よりも低いことが定量的に分かる。また、定性的にも従来方法により画像処理の結果得られる変換画像は、本実施形態による画像処理の結果得られる変換画像よりぼけていることが分かる。これは、実写画像であるサブ画像と正解画像との間に存在する位置ずれの影響によるものである。
【００４８】
このように本実施形態において、学習装置１０３（２０３）は、取得部１０３ａ、生成部１０３ｂ、および、学習部１０３ｃを有する。取得部１０３ａは、第１の訓練画像と、第１の訓練画像に対して位置ずれを有する正解画像とを取得する。生成部１０３ｂは、正解画像から、第１の訓練画像よりも解像度の高い第２の訓練画像を生成する。学習部１０３ｃは、第１の訓練画像と第２の訓練画像と正解画像とに基づいて、ニューラルネットワークのネットワークパラメータを学習する。好ましくは、ニューラルネットワークは、畳み込みニューラルネットワーク（ＣＮＮ）である。
【００４９】
好ましくは、第１の訓練画像は、撮像部（撮像装置１０１、２０１、３０１）から取得された画像であり、第２の訓練画像は、正解画像から生成された画像である。これにより、第２の訓練画像を簡易に生成しつつニューラルネットワークを効率的に学習させることが可能となる。
【００５０】
また好ましくは、第２の訓練画像は、第１の訓練画像よりも、フーリエ変換した際に高周波成分を多く含む画像（高解像度の画像）である。これにより、高品位な出力画像を推定するためのニューラルネットワークを効率的に学習させることが可能となる。
【００５１】
好ましくは、生成部は、正解画像を劣化させて第２の訓練画像を生成する。より好ましくは、生成部は、レンズ、光学ローパスフィルタ、イメージセンサの画素開口、手振れによるぼけ、イメージセンサまたは画像圧縮によるノイズのうち少なくとも１つに基づいて、正解画像を劣化させる。
【００５２】
好ましくは、第１の訓練画像と正解画像は、異なる撮像部により撮像された画像である。また好ましくは、第１の訓練画像と正解画像は、同じ被写体を撮影した画像である。また好ましくは、第１の訓練画像は複数の訓練画像を含む訓練画像群であり、第２の訓練画像は複数の訓練画像のそれぞれによりも解像度が高い。
【００５３】
また本実施形態において、画像処理装置１０２（２０２、３０２）は、画像取得部１０２ａおよび画像変換部１０２ｂを有する。画像取得部は、互いに異なる解像度を有する複数の入力画像を取得する。画像変換部は、学習装置により学習されたＣＮＮのネットワークパラメータを用いて、複数の入力画像を出力画像に変換する。
【００５４】
（その他の実施形態）
上述した実施形態では、図２に示すように、画像処理装置と撮像装置が別体である例について述べたが、本発明はこれに限定されない。本発明は、図８に示す多眼カメラ（デジタル多眼カメラ）でも実施可能である。図８は、デジタル多眼カメラ３００の構成図である。デジタル多眼カメラ３００は、撮像装置３０１および画像処理装置３０２を備えて構成される。撮像装置３０１は、複数のレンズ３０１ａと複数のイメージセンサ（撮像素子）３０１ｂとの組を有する。画像処理装置３０２は、画像処理エンジン３０２ａ、モニタ（表示部）３０２ｂ、および、記憶部（メモリ）３０２ｃを有する。画像処理エンジン３０２ａは、上述した実施例における画像処理装置１０２ｃと同様の機能を有する。
【００５５】
なおデジタル多眼カメラ３００は、学習装置を備えておらず、ＰＣ、ワークステーション、または、サーバなどで学習により生成されたネットワークパラメータを、画像処理装置３０２の記憶部３０２ｃに記憶している。すなわち、本発明は、撮像部と画像処理部が一体となった装置においても実施可能である。
【００５６】
また本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５７】
本実施形態において、複数の撮像部で取得した複数の入力画像をＣＮＮを用いて処理し、１台以上の撮像部で取得した１枚以上の出力画像へ変換する際、高い画像処理精度と訓練画像生成の省力化が可能である。このため本実施形態によれば、畳み込みニューラルネットワークのネットワークパラメータを高精度かつ簡易に学習可能な学習装置、学習方法、学習プログラム、データの製造方法、画像処理装置、画像処理方法、および、画像処理プログラムを提供することができる。
【００５８】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００５９】
１０３  学習装置
１０３ａ  取得部
１０３ｂ  生成部
１０３ｂ  学習部
【図１】
2020154669.tif 000003
【図２】
2020154669.tif 000004
【図３】
2020154669.tif 000005
【図４】
2020154669.tif 000006
【図５】
2020154669.tif 000007
【図６】
2020154669.tif 000008
【図７】
2020154669.tif 000009
【図８】
2020154669.tif 000010