(57)【要約】【課題】機械学習モデルの学習負荷と保持データ量を抑制して、撮像画像のぼけを高精度に鮮鋭化または整形する画像処理方法を提供する。【解決手段】画像処理方法は、撮像画像と、撮像画像の撮像に用いた光学系の状態に関する情報とを含む入力データを取得する第１の工程と、入力データを機械学習モデルに入力し、撮像画像を鮮鋭化した推定画像、または、撮像画像に含まれるぼけを整形した推定画像を生成する第２の工程とを有する。【選択図】図１
2020201540.tif 000002
【特許請求の範囲】
【請求項１】
撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、
前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する第２の工程と、を有することを特徴とする画像処理方法。
【請求項２】
前記光学系の状態は、前記光学系のズーム、絞り、フォーカス距離の少なくともいずれかを含むことを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記第２の工程において、前記光学系の第１の状態で撮像された第１の撮像画像と、前記第１の状態とは異なる第２の状態で撮像された第２の撮像画像と、に対して、同一のウエイトの前記機械学習モデルを用いることを特徴とする請求項１または２に記載の画像処理方法。
【請求項４】
前記光学系の状態に関する情報は、前記光学系のズーム、絞り、フォーカス距離の少なくともいずれかを示す数値を含み、
ズーム、絞り、フォーカス距離の少なくともいずれかに関して前記光学系の取り得る範囲に基づいて、前記数値は正規化されていることを特徴とする請求項１乃至３のいずれか一項に記載の画像処理方法。
【請求項５】
前記入力データは、前記光学系の状態を示すステートマップを含み、
前記ステートマップは、前記撮像画像の画素数と、前記光学系の状態に関する情報と、に基づいて生成されることを特徴とする請求項１乃至４のいずれか一項に記載の画像処理方法。
【請求項６】
前記ステートマップは、前記光学系のズーム、絞り、フォーカス距離の少なくともいずれかを示す数値を要素として有することを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記ステートマップは、前記光学系のズーム、絞り、フォーカス距離の少なくとも２つを示す数値をそれぞれ異なるチャンネルの要素として有することを特徴とする請求項５または６に記載の画像処理方法。
【請求項８】
前記ステートマップにおける同一のチャンネルの要素は、互いに同一の数値を有することを特徴とする請求項５乃至７のいずれか一項に記載の画像処理方法。
【請求項９】
前記撮像画像または前記撮像画像に基づく特徴マップと、前記ステートマップと、を前記機械学習モデルの入力前または途中でチャンネル方向に連結することを特徴とする請求項５乃至８のいずれか一項に記載の画像処理方法。
【請求項１０】
前記入力データは、前記撮像画像の各画素に関する位置の情報も含むことを特徴とする請求項１乃至９のいずれか一項に記載の画像処理方法。
【請求項１１】
前記位置の情報は、前記光学系のイメージサークルに基づく長さによって正規化された数値を有することを特徴とする請求項１０に記載の画像処理方法。
【請求項１２】
前記光学系の状態に関する情報は、前記光学系の種類に関する情報を含むことを特徴する請求項１乃至１１のいずれか一項に記載の画像処理方法。
【請求項１３】
前記光学系の状態に関する情報は、光学ローパスフィルタの有無、または、光学ローパスフィルタの種類に関する情報を含むことを特徴する請求項１乃至１２のいずれか一項に記載の画像処理方法。
【請求項１４】
前記光学系の状態は、前記光学系のアクセサリの有無、または、アクセサリの種類に関する情報を含むことを特徴する請求項１乃至１３のいずれか一項に記載の画像処理方法。
【請求項１５】
前記光学系の状態に関する情報は、前記光学系の製造ばらつきに関する情報を含むことを特徴する請求項１乃至１４のいずれか一項に記載の画像処理方法。
【請求項１６】
前記入力データは、前記撮像画像の撮像時における被写体空間の距離に関する分布の情報を含むことを特徴とする請求項１乃至１５のいずれか一項に記載の画像処理方法。
【請求項１７】
前記入力データは、前記撮像画像の撮像に用いた撮像素子の画素ピッチ、またはカラーフィルタアレイに関する情報を含むことを特徴とする請求項１乃至１６のいずれか一項に記載の画像処理方法。
【請求項１８】
請求項１乃至１７のいずれか一項に記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１９】
撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報と、を含む入力データを取得する取得手段と、
前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する生成手段と、を有することを特徴とする画像処理装置。
【請求項２０】
第１の装置と第２の装置を有する画像処理システムであって、
前記第１の装置は、撮像画像に対する処理の実行に関する要求を前記第２の装置へ送信する送信手段を有し、
前記第２の装置は、
前記要求を受信する受信手段と、
前記撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報と、を含む入力データを取得する取得手段と、
前記要求に基づいて、前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する生成手段と、を有することを特徴とする画像処理システム。
【請求項２１】
訓練画像と、前記訓練画像に対応する光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、
前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する第２の工程と、
前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する第３の工程と、を有することを特徴とする画像処理方法。
【請求項２２】
請求項２１に記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項２３】
訓練画像と、前記訓練画像に対応する光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、
前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する第２の工程と、
前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する第３の工程と、を有することを特徴とする学習済みウエイトの製造方法。
【請求項２４】
訓練画像と、前記訓練画像に対応する光学系の状態に関する情報とを含む入力データを取得する取得手段と、
前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する生成手段と、
前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する更新手段と、を有することを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光学系を用いて撮像された撮像画像から、光学系に起因するぼけを鮮鋭化または整形する画像処理方法に関する。
【背景技術】
【０００２】
特許文献１には、ウィナーフィルタに基づく処理によって、撮像画像から収差によるぼけを補正し、鮮鋭化された画像を得る方法が開示されている。特許文献２には、畳み込みニューラルネットワーク（ＣＮＮ）を用いて、撮像画像のフォーカスずれ（デフォーカス）によるぼけを補正する方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１２３５８９号公報
【特許文献２】特開２０１７−１９９２３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１に開示された方法は、ウィナーフィルタに基づく処理（線型処理）を用いるため、高精度なぼけの鮮鋭化を行うことができない。例えば、ぼけによって空間周波数スペクトルがゼロ、またはノイズと同程度の強度まで低下した被写体の情報を、復元することができない。また、異なる収差に対しては、各々異なるウィナーフィルタを用いる必要があるため、様々な収差が発生する光学系において、鮮鋭化のための保持データ量（複数のウィナーフィルタを示すデータの容量）が大きくなる。
【０００５】
一方、特許文献２に開示されたＣＮＮは非線形処理のため、ゼロ近傍まで低下した被写体の空間周波数スペクトルを推定することができる。しかし、様々な収差が発生する光学系で撮像した撮像画像を鮮鋭化する場合、鮮鋭化の精度低下、或いは学習負荷と保持データ量の増大を招く。ＣＮＮでぼけ鮮鋭化を行う場合、学習していないぼけは正しく鮮鋭化されない。光学系はズーム、絞り、フォーカス距離などによって発生するぼけが変化するため、これらのぼけを全て鮮鋭化できるようにするには、以下の２つの方法が考えられる。
【０００６】
第一の方法は、光学系で発生し得るぼけ全てを含む学習データで、ＣＮＮを学習する方法である。しかしこの場合、ＣＮＮは学習データに含まれる全てのぼけを平均的に鮮鋭化するように学習されるため、異なる形状のぼけ各々に対する鮮鋭化の精度は低下する。第二の方法は、光学系で発生し得るぼけを各々、類似する複数のグループに分け、各グループの学習データで個別にＣＮＮを学習する方法である。しかしこの場合、高倍率なズームレンズなどの様々な収差が発生する光学系では、グループ数が膨大になり、学習負荷と保持データ量（学習したＣＮＮのウエイトを示すデータの容量）が増大する。このため、ぼけの鮮鋭化の精度と、学習負荷および保持データ量とを両立することが困難である。
【０００７】
そこで本発明は、機械学習モデルの学習負荷と保持データ量を抑制し、撮像画像のぼけを高精度に鮮鋭化または整形する画像処理方法、画像処理装置、画像処理システム、学習済みウエイトの製造方法、および、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一側面としての画像処理方法は、撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報とを含む入力データを取得する第１の工程と、前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する第２の工程とを有する。
【０００９】
本発明の他の側面としての画像処理方法は、訓練画像と、前記訓練画像に対応する光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する第２の工程と、前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する第３の工程とを有する。
【００１０】
本発明の他の側面としての画像処理装置は、撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報とを含む入力データを取得する取得手段と、前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する生成手段とを有する。
【００１１】
本発明の他の側面としての画像処理装置は、訓練画像と、前記訓練画像に対応する光学系の状態に関する情報とを含む入力データを取得する取得手段と、前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する生成手段と、前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する更新手段とを有する。
【００１２】
本発明の他の側面としての画像処理システムは、第１の装置と第２の装置を有する画像処理システムであって、前記第１の装置は、撮像画像に対する処理の実行に関する要求を前記第２の装置へ送信する送信手段を有し、前記第２の装置は、前記要求を受信する受信手段と、前記撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報とを含む入力データを取得する取得手段と、前記要求に基づいて、前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する生成手段とを有する。
【００１３】
本発明の他の側面としての学習済みウエイトの製造方法は、訓練画像と、前記訓練画像に対応する光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する第２の工程と、前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する第３の工程とを有する。
【００１４】
本発明の他の側面としてのプログラムは、前記画像処理方法をコンピュータに実行させる。
【００１５】
本発明の他の目的及び特徴は、以下の実施例において説明される。
【発明の効果】
【００１６】
本発明によれば、機械学習モデルの学習負荷と保持データ量を抑制して、撮像画像のぼけを高精度に鮮鋭化または整形する画像処理方法、画像処理装置、画像処理システム、学習済みウエイトの製造方法、および、プログラムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】実施例１における機械学習モデルの構成図である。
【図２】実施例１における画像処理システムのブロック図である。
【図３】実施例１における画像処理システムの外観図である。
【図４】実施例１、２におけるウエイトの学習に関するフローチャートである。
【図５】実施例１における推定画像の生成に関するフローチャートである。
【図６】実施例２における画像処理システムのブロック図である。
【図７】実施例２における画像処理システムの外観図である。
【図８】実施例２における機械学習モデルの構成図である。
【図９】実施例２における撮像素子と光学系のイメージサークルとの関係を示す図である。
【図１０】実施例２における位置マップの例を示す図である。
【図１１】実施例２における推定画像の生成に関するフローチャートである。
【図１２】実施例２における鮮鋭化の効果を示す図である。
【図１３】実施例２における製造ばらつきマップの例を示す図である。
【図１４】実施例３における画像処理システムのブロック図である。
【図１５】実施例３における画像処理システムの外観図である。
【図１６】実施例３におけるウエイトの学習に関するフローチャートである。
【図１７】実施例３における機械学習モデルの構成図である。
【図１８】実施例３における推定画像の生成に関するフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の実施例について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照符号を付し、重複する説明は省略する。
【００１９】
各実施例の具体的な説明を行う前に、本発明の要旨を説明する。本発明は、光学系を用いて撮像された撮像画像から、光学系に起因する（光学系で発生する）ぼけを、機械学習モデルを用いて鮮鋭化または整形する。ここでいう「光学系」とは、撮像に関する光学的作用を及ぼすものを指す。すなわち、「光学系」は結像光学系のみでなく、例えば光学ローパスフィルタ、撮像素子のマイクロレンズアレイも含む。したがって、光学系に起因するぼけとは、収差、回折、デフォーカスによるぼけや、光学ローパスフィルタによる作用、撮像素子の画素開口劣化などを含む。
【００２０】
機械学習モデルは、例えば、ニューラルネットワーク、遺伝的プログラミング、ベイジアンネットワークなどを含む。ニューラルネットワークは、ＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）、ＧＡＮ（Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋ）、ＲＮＮ（Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）などを含む。
【００２１】
ぼけの鮮鋭化とは、ぼけによって低下または消失した被写体の周波数成分を復元する処理を指す。ぼけの整形とは、周波数成分の復元を伴わない、ぼけの形状の変換を指す。例えば、二線ぼけからガウシアンやディスク（フラットな円形分布）への変換、ヴィネッティングによって欠けたデフォーカスぼけから円形のデフォーカスぼけへの変換などが含まれる。
【００２２】
機械学習モデルに入力される入力データは、撮像画像と、撮像画像を撮像した際の光学系の状態に関する情報を含む。光学系の状態は、撮像に関する光学的作用に変化を及ぼし得る装置の状態を指す。光学系の状態には、例えば、光学系のズーム、絞り、フォーカス距離などが含まれる。このほか、光学系の状態に関する情報として、光学ローパスフィルタの有無（または光学ローパスフィルタの種類）や、光学系に取り付けられるアクセサリ（例えばコンバータレンズ）の有無（または種類）に関する情報を含んで良い。
【００２３】
機械学習モデルの学習と学習後の推定において光学系の状態に関する情報を入力することで、機械学習モデルは撮像画像に作用しているぼけが光学系のどの状態で発生したものか特定することができる。これにより、機械学習モデルは、学習に様々な形状のぼけが含まれていても、それらのぼけを平均的に鮮鋭化（または整形）するようなウエイトでなく、光学系の状態ごとに異なる鮮鋭化（または整形）を行うウエイトを学習する。
【００２４】
このため、各ぼけに対して高精度な鮮鋭化（または整形）が可能となる。従って、鮮鋭化（または整形）の精度低下を抑制して、様々な形状のぼけを含む学習データを一括で学習することができる。その結果、学習負荷と保持データ量を抑制して、撮像画像の光学系に起因するぼけを高精度に鮮鋭化または整形することができる。本発明の効果に関しては、実施例２において定量的に示す。なお、以降の説明では、機械学習モデルのウエイトを学習する段階を学習フェーズとし、学習済みのウエイトを用いた機械学習モデルでぼけの鮮鋭化または整形を行う段階を推定フェーズとする。
【実施例１】
【００２５】
まず、本発明の実施例１における画像処理システムに関して説明する。本実施例は、ぼけの鮮鋭化を実行するが、ぼけの整形に関しても同様に適用可能である。また本実施例において、鮮鋭化する対象は収差と回折によるぼけであるが、デフォーカスによるぼけに対しても適用可能である。
【００２６】
図２は、本実施例における画像処理システム１００のブロック図である。図３は、画像処理システム１００の外観図である。画像処理システム１００は、学習装置（画像処理装置）１０１、撮像装置１０２、および、ネットワーク１０３を有する。学習装置１０１と撮像装置１０２とは、有線または無線であるネットワーク１０３を介して接続されている。学習装置１０１は、記憶部１１１、取得部（取得手段）１１２、演算部（生成手段）１１３、および、更新部（更新手段）１１４を有し、機械学習モデルでぼけの鮮鋭化を行うためのウエイトを学習する。撮像装置１０２は、被写体空間を撮像して撮像画像を取得し、撮像後または予め読み出したウエイトの情報を用いて、撮像画像のぼけを鮮鋭化する。なお、学習装置１０１で実行されるウエイトの学習、および、撮像装置１０２で実行されるぼけ鮮鋭化に関する詳細については後述する。
【００２７】
撮像装置１０２は、光学系（結像光学系）１２１と撮像素子１２２を有する。光学系１２１は、被写体空間から撮像装置１０２へ入射した光を集光する。撮像素子１２２は、光学系１２１を介して形成された光学像（被写体像）を受光して（光電変換して）撮像画像を生成する。撮像素子１２２は、例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）センサや、ＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ−Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）センサなどである。
【００２８】
画像処理部（画像処理装置）１２３は、取得部（取得手段）１２３ａおよび鮮鋭化部（生成手段）１２３ｂを有し、撮像画像からぼけの鮮鋭化された推定画像（鮮鋭化画像）を生成する。推定画像の生成には、学習装置１０１で学習された学習済みのウエイトの情報が用いられる。ウエイトの情報は、事前に有線または無線のネットワーク１０３を介して学習装置１０１から読み込んで、記憶部１２４に記憶されている。記憶されるウエイトの情報は、ウエイトの数値そのものでもよいし、符号化された形式でもよい。記録媒体１２５は、推定画像を保存する。或いは、記録媒体１２５に撮像画像を保存し、画像処理部１２３が撮像画像を読み込んで推定画像を生成してもよい。表示部１２６は、ユーザの指示に従って、記録媒体１２５に保存された推定画像を表示する。システムコントローラ１２７は、前述の一連の動作を制御する。
【００２９】
次に、図４を参照して、本実施例における学習装置１０１で実行されるウエイトの学習（学習フェーズ、学習済みモデルの製造方法）に関して説明する。図４は、ウエイトの学習に関するフローチャートである。図４の各ステップは、主に、学習装置１０１の取得部１１２、演算部１１３、または、更新部１１４により実行される。なお本実施例では、機械学習モデルとしてＣＮＮを使用するが、他のモデルについても同様に適用可能である。
【００３０】
まずステップＳ１０１において、取得部１１２は、記憶部１１１から１組以上の正解画像と訓練入力データとを取得する。訓練入力データは、ＣＮＮの学習フェーズにおける入力データである。訓練入力データは、訓練画像と、訓練画像に対応する光学系の状態に関する情報を含む。訓練画像と正解画像は、同一の被写体が存在し、ぼけの有無の異なる画像のペアである。正解画像がぼけのない画像であり、訓練画像がぼけのある画像である。ぼけは、光学系１２１で発生する収差および回折と、撮像素子１２２の画素開口劣化を合わせたぼけである。１枚の訓練画像には、特定のズーム、絞り、フォーカス距離における光学系１２１で発生する収差と回折、および画素開口劣化を合わせたぼけが作用している。訓練画像に対応する光学系の状態に関する情報とは、特定のズーム、絞り、フォーカス距離の少なくともいずれかを示す情報である。換言すると、光学系の状態に関する情報とは、訓練画像に作用しているぼけを特定する情報である。本実施例において、光学系の状態に関する情報は、ズーム、絞り、および、フォーカス距離の全てを含む。訓練画像は、撮像画像に限定されるものではなく、ＣＧなどで生成した画像であってもよい。
【００３１】
記憶部１１１に記憶されている、正解画像と訓練入力データの生成方法に関して、以下に例を示す。第一の生成方法は、原画像を被写体として、撮像シミュレーションを行う方法である。原画像は、実写画像やＣＧ（Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ）画像などである。様々な被写体に対して正しく鮮鋭化が行えるように、原画像は、様々な強度と方向を有するエッジや、テクスチャ、グラデーション、平坦部などを有する画像であることが望ましい。原画像は、１枚でも複数枚でもよい。正解画像は、原画像にぼけを作用させずに撮像シミュレーションを行った画像である。訓練画像は、鮮鋭化の対象とするぼけを原画像に作用させて撮像シミュレーションを行った画像である。
【００３２】
本実施例では、光学系１２１の状態（Ｚ，Ｆ，Ｄ）で発生する収差と回折、および画素開口劣化によるぼけを作用させる。ここで、Ｚはズーム、Ｆは絞り、Ｄはフォーカス距離の状態を示す。撮像素子１２２が複数の色成分を取得する場合、各色成分のぼけを原画像に作用させる。ぼけの作用は、原画像に対してＰＳＦ（Ｐｏｉｎｔ  Ｓｐｒｅａｄ  Ｆｕｎｃｔｉｏｎ）を畳み込むか、または原画像の周波数特性とＯＴＦ（Ｏｐｔｉｃａｌ  Ｔｒａｎｓｆｅｒ  Ｆｕｎｃｔｉｏｎ）の積をとることで実行できる。（Ｚ，Ｆ，Ｄ）で指定されるぼけを作用させた訓練画像に対応する光学系の状態に関する情報は、（Ｚ，Ｆ，Ｄ）を特定する情報である。正解画像と訓練画像は、未現像のＲＡＷ画像でも現像後の画像でもよい。１枚以上の原画像に対し、複数の異なる（Ｚ，Ｆ，Ｄ）のぼけを作用させ、複数組の正解画像と訓練画像を生成する。
【００３３】
本実施例では、光学系１２１で発生するぼけ全てに対する補正を、一括で学習する。故に、（Ｚ，Ｆ，Ｄ）を光学系１２１が取り得る範囲で変化させ、複数組の正解画像と訓練画像を生成する。また、同一の（Ｚ，Ｆ，Ｄ）においても、像高とアジムスに依存して複数のぼけが存在するため、異なる像高とアジムスごとにも正解画像と訓練画像の組を生成する。
【００３４】
好ましくは、原画像は、撮像素子１２２の輝度飽和値よりも高い信号値を有しているとよい。これは、実際の被写体においても、特定の露出条件で撮像装置１０２により撮像を行った際、輝度飽和値に収まらない被写体が存在するためである。正解画像は、原画像を撮像素子１２２の輝度飽和値で信号をクリップすることによって生成する。訓練画像は、ぼけを作用させた後、輝度飽和値によってクリップすることで生成する。
【００３５】
また、正解画像と訓練画像の生成時に、原画像の縮小処理を実行してもよい。原画像として実写画像を使用する場合、既に収差や回折によってぼけが発生しているため、縮小することでぼけの影響を小さくし、高解像な正解画像を生成することができる。この場合、正解画像とスケールを合わせるために、訓練画像も同様に縮小する。縮小とぼけの作用の順序は、どちらが先でもよい。ぼけの作用を先に行う場合、縮小を考慮して、ぼけのサンプリングレートを細かくする必要がある。ＰＳＦならば空間のサンプリング点を細かくし、ＯＴＦならば最大周波数を大きくすればよい。なお、原画像に高周波成分が充分に含まれている場合、高精度な鮮鋭化が可能となるため、縮小は行わなくてもよい。
【００３６】
また、訓練画像の生成で作用させるぼけには、歪曲収差を含めない。歪曲収差が大きいと、被写体の位置が変化し、正解画像と訓練画像それぞれの画像内に収まった被写体が異なる可能性があるためである。このため、本実施例で学習するＣＮＮは、歪曲収差を補正しない。推定フェーズにおいて、歪曲収差はバイリニア補間やバイキュービック補間などを用いて、ぼけ鮮鋭化後に補正する。同様に、訓練画像の生成で作用させるぼけには、倍率色収差を含めない。推定フェーズにおいて、倍率色収差は各色成分のシフトなどを用いて、ぼけ鮮鋭化の前に補正する。
【００３７】
正解画像と訓練入力データの第二の生成方法は、光学系１２１と撮像素子１２２による実写画像を使用する方法である。光学系１２１が（Ｚ，Ｆ，Ｄ）の状態で撮像し、訓練画像を得る。訓練画像に対応する光学系の状態に関する情報は、（Ｚ，Ｆ，Ｄ）を特定する情報である。正解画像は、例えば、光学系１２１よりも高性能な光学系を用いて、訓練画像と同一の被写体を撮像することで得られる。なお、前述の２つの方法で生成した訓練画像と正解画像から、既定の画素数の部分領域を抽出して学習に用いてもよい。
【００３８】
続いて、図４のステップＳ１０２において、演算部１１３は、訓練入力データをＣＮＮへ入力し、出力画像を生成する。図１を参照して、本実施例における出力画像の生成に関して説明する。図１は、本実施例における機械学習モデルの構成図である。
【００３９】
訓練入力データは、訓練画像２０１と光学系の状態に関する情報（ｚ，ｆ，ｄ）２０２を含む。訓練画像２０１は、グレースケールでも、複数のチャンネル成分を有していてもよい。正解画像も同様である。（ｚ，ｆ，ｄ）は正規化された（Ｚ，Ｆ，Ｄ）である。正規化は、ズーム、絞り、フォーカス距離それぞれに関して、光学系１２１の取り得る範囲に基づいて行われる。例えば、Ｚを焦点距離、Ｆを絞り値、Ｄを撮像装置１０２からフォーカス被写体までの距離の絶対値の逆数とする。光学系１２１の焦点距離の最小値と最大値をＺｍｉｎとＺｍａｘ、絞り値の最小値と最大値をＦｍｉｎとＦｍａｘ、フォーカス可能な距離の絶対値の逆数の最小値と最大値をＤｍｉｎとＤｍａｘとする。ここで、フォーカス可能な距離が無限遠の場合、Ｄｍｉｎ＝１／｜∞｜＝０である。正規化された（ｚ，ｆ，ｄ）は、以下の式（１）で求められる。
【００４０】
【数１】
2020201540.tif 000003
【００４１】
式（１）において、ｘは（ｚ，ｆ，ｄ）のいずれか、Ｘは（Ｚ，Ｆ，Ｄ）のいずれかを示すダミー変数である。なお、Ｘｍｉｎ＝Ｘｍａｘの場合、ｘは定数とする。または、そのｘには自由度がないため、光学系の状態に関する情報から除外する。ここで、一般にフォーカス距離が近くなるほど、光学系１２１の性能変化は大きくなるため、Ｄを距離の逆数とした。
【００４２】
本実施例において、ＣＮＮ２１１は、第１のサブネットワーク２２１と第２のサブネットワーク２２３を有する。第１のサブネットワーク２２１は、１層以上の畳み込み層またはフルコネクション層を有する。第２のサブネットワーク２２３は、１層以上の畳み込み層を有する。学習の初回において、ＣＮＮ２１１のウエイト（フィルタの各要素とバイアスの値）は、乱数によって生成する。第１のサブネットワーク２２１は、光学系の状態に関する情報（ｚ，ｆ，ｄ）２０２を入力とし、特徴マップに変換したステートマップ２０３を生成する。ステートマップ２０３は、光学系の状態を示すマップであり、訓練画像２０１の１つのチャンネル成分と同じ要素数（画素数）である。連結層（ｃｏｎｃａｔｅｎａｔｉｏｎ  ｌａｙｅｒ）２２２は、訓練画像２０１とステートマップ２０３をチャンネル方向に規定の順番で連結する。なお、訓練画像２０１とステートマップ２０３の間に他のデータを連結しても構わない。第２のサブネットワーク２２３は、連結した訓練画像２０１とステートマップ２０３を入力とし、出力画像２０４を生成する。図４のステップＳ１０１にて複数組の訓練入力データを取得している場合、それぞれに対して出力画像２０４を生成する。また、訓練画像２０１を第３のサブネットワークによって特徴マップへ変換し、特徴マップとステートマップ２０３とを連結層２２２で連結する構成としてもよい。
【００４３】
続いて、図４のステップＳ１０３において、更新部１１４は、出力画像と正解画像の誤差から、ＣＮＮのウエイトを更新する。本実施例では、出力画像と正解画像における信号値の差のユークリッドノルムをロス関数とする。ただし、ロス関数はこれに限定されない。ステップＳ１０１にて複数組の訓練入力データと正解画像を取得している場合、各組に対してロス関数の値を算出する。算出されたロス関数の値から、誤差逆伝播法（Ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）などによってウエイトの更新を行う。
【００４４】
続いてステップＳ１０４において、更新部１１４は、ウエイトの学習が完了したかを判定する。完了は、学習（ウエイトの更新）の反復回数が規定の回数に達したかや、更新時のウエイトの変化量が規定値より小さいかなどによって、判定することができる。ステップＳ１０４にてウエイトの学習が完了していないと判定された場合、ステップＳ１０１へ戻り、取得部１１２は、１組以上の新たな訓練入力データと正解画像を取得する。一方、ウエイトの学習が完了した判定された場合、更新部１１４は学習を終了し、ウエイトの情報を記憶部１１１に保存する。
【００４５】
次に、図５を参照して、本実施例における画像処理部１２３で実行される撮像画像のぼけ鮮鋭化（推定フェーズ）に関して説明する。図５は、本実施例におけるぼけ鮮鋭化（推定画像の生成）に関するフローチャートである。図５の各ステップは、主に、画像処理部１２３の取得部１２３ａまたは鮮鋭化部１２３ｂにより実行される。
【００４６】
まずステップＳ２０１において、取得部１２３ａは、入力データとウエイトの情報を取得する。入力データは、撮像画像と、撮像画像を撮像した際の光学系１２１の状態に関する情報を含む。取得する撮像画像は、撮像画像全体の一部分でもよい。光学系の情報に関する情報は、光学系１２１のズーム、絞り、フォーカス距離の状態を示す（ｚ，ｆ，ｄ）である。ウエイトの情報は、記憶部１２４から読み出して取得される。
【００４７】
続いてステップＳ２０２において、鮮鋭化部１２３ｂは、入力データをＣＮＮに入力し、推定画像を生成する。推定画像は、撮像画像に対して、光学系１２１の収差と回折、および、撮像素子１２２の画素開口劣化に起因するぼけが鮮鋭化された画像である。学習時と同様に、図１に示されるＣＮＮを用いて推定画像を生成する。ＣＮＮには、取得された学習済みのウエイトが使用される。本実施例では、光学系１２１の取り得る全ての（ｚ，ｆ，ｄ）に対して、一括でぼけ鮮鋭化のウエイトを学習している。このため、全ての（ｚ，ｆ，ｄ）の撮像画像に対して、同一のウエイトを用いたＣＮＮでぼけ鮮鋭化が実行される。
【００４８】
なお本実施例において、撮像画像を鮮鋭化する鮮鋭化部１２３ｂに代えて、撮像画像に含まれるぼけを整形する整形部を設けてもよい。この点は、後述の実施例２でも同様である。本実施例において、画像処理装置（画像処理部１２３）は、取得手段（取得部１２３ａ）および生成手段（鮮鋭化部１２３ｂまたは整形部）を有する。取得手段は、撮像画像と、撮像画像の撮像に用いた光学系の状態に関する情報とを含む入力データを取得する。生成手段は、入力データを機械学習モデルに入力し、撮像画像を鮮鋭化した推定画像、または、撮像画像に含まれるぼけを整形した推定画像を生成する。また本実施例において画像処理装置（学習装置１０１）は、取得手段（取得部１１２）、生成手段（演算部１１３）、および、更新手段（更新部１１４）を有する。取得手段は、訓練画像と、訓練画像に対応する光学系の状態に関する情報とを含む入力データを取得する。生成手段は、入力データを機械学習モデルに入力し、訓練画像を鮮鋭化した出力画像、または、訓練画像に含まれるぼけを整形した出力画像を生成する。更新手段は、出力画像と正解画像に基づいて、機械学習モデルのウエイトを更新する。
【００４９】
本実施例によれば、機械学習モデルの学習負荷と保持データ量を抑制して、撮像画像の光学系に起因するぼけを高精度に鮮鋭化することが可能な画像処理装置および画像処理システムを実現することができる。
【実施例２】
【００５０】
次に、本発明の実施例２における画像処理システムに関して説明する。本実施例は、ぼけの鮮鋭化処理を実行するが、ぼけの整形処理に関しても同様に適用可能である。
【００５１】
図６は、本実施例における画像処理システム３００のブロック図である。図７は、画像処理システム３００の外観図である。画像処理システム３００は、学習装置（画像処理装置）３０１、レンズ装置３０２、撮像装置３０３、画像推定装置３０４、表示装置３０５、記録媒体３０６、出力装置３０７、および、ネットワーク３０８を有する。学習装置３０１は、記憶部３０１ａ、取得部（取得手段）３０１ｂ、演算部（生成手段）３０１ｃ、および、更新部（更新手段）３０１ｄを有し、ぼけ鮮鋭化に用いる機械学習モデルのウエイトを学習する。なお、ウエイトの学習、およびウエイトを用いたぼけ鮮鋭化処理に関する詳細は後述する。
【００５２】
レンズ装置３０２と撮像装置３０３とは着脱可能であり、互いに異なる種類のレンズ装置３０２または撮像装置３０３に接続可能である。レンズ装置３０２は、種類によって取り得る焦点距離、絞り、フォーカス距離が異なる。また、種類によってレンズの構成も異なるため、収差や回折によるぼけの形状も異なる。撮像装置３０３は撮像素子３０３ａを有し、種類によって光学ローパスフィルタの有無や種類（分離方式やカットオフ周波数など）、画素ピッチ（画素開口も含む）、カラーフィルタアレイなどが異なる。
【００５３】
画像推定装置３０４は、記憶部３０４ａ、取得部（取得手段）３０４ｂ、および、鮮鋭化部（生成手段）３０４ｃを有する。画像推定装置３０４は、撮像装置３０３で撮像された撮像画像（またはその少なくとも一部）に対して、光学系に起因するぼけを鮮鋭化した推定画像を生成する。画像推定装置３０４には、複数種類の組み合わせのレンズ装置３０２と撮像装置３０３が接続され得る。ぼけ鮮鋭化には、学習装置３０１で学習済みのウエイトを用いた機械学習モデルを使用する。学習装置３０１と画像推定装置３０４はネットワーク３０８によって接続されており、画像推定装置３０４はぼけ鮮鋭化時または事前に、学習済みのウエイトの情報を学習装置３０１から読み出す。推定画像は、表示装置３０５、記録媒体３０６、または、出力装置３０７の少なくとも一つに出力される。表示装置３０５は、例えば液晶ディスプレイやプロジェクタである。ユーザは、表示装置３０５を介して、処理途中の画像を確認しながら編集作業などを行うことができる。記録媒体３０６は、例えば、半導体メモリ、ハードディスク、または、ネットワーク上のサーバである。出力装置３０７は、例えばプリンタである。
【００５４】
次に、図４を参照して、学習装置３０１で行うウエイトの学習（学習フェーズ）に関して説明する。本実施例では、機械学習モデルとしてＣＮＮを使用するが、他のモデルについても同様に適用可能である。なお、実施例１と同様の説明は省略する。
【００５５】
まずステップＳ１０１において、取得部３０１ｂは、１組以上の正解画像と訓練入力データを記憶部３０１ａから取得する。記憶部３０１ａには、レンズ装置３０２と撮像装置３０３の複数種類の組み合わせに対して、訓練画像が保存されている。本実施例では、ぼけ鮮鋭化のウエイトの学習を、レンズ装置３０２の種類ごとに一括で行う。このため、まずウエイトを学習するレンズ装置３０２の種類を決定し、それに対応する訓練画像の集合から、訓練画像を取得する。ある種類のレンズ装置３０２に対応する訓練画像の集合はそれぞれ、ズーム、絞り、フォーカス距離、像高とアジムス、光学ローパスフィルタ、画素ピッチ、カラーフィルタアレイなどが異なるぼけの作用した画像の集合である。
【００５６】
本実施例は、図８に示されるＣＮＮの構成で学習を行う。図８は、本実施例における機械学習モデルの構成図である。訓練入力データ４０４は、訓練画像４０１、ステートマップ４０２、および、位置マップ４０３を含む。ステートマップ４０２と位置マップ４０３の生成は、本ステップで行われる。ステートマップ４０２と位置マップ４０３はそれぞれ、取得した訓練画像に作用しているぼけに対応する（Ｚ，Ｆ，Ｄ）と（Ｘ，Ｙ）を示すマップである。（Ｘ，Ｙ）は、図９に示される像面の座標（水平方向と垂直方向）であり、極座標表示で像高とアジムスに対応する。
【００５７】
本実施例において、座標（Ｘ，Ｙ）は、レンズ装置３０２の光軸を原点とする。図９は、レンズ装置（光学系）３０２のイメージサークル５０１と、撮像素子３０３ａの第１の有効画素領域５０２および第２の有効画素領域５０３と、座標（Ｘ，Ｙ）との関係を示している。撮像装置３０３の種類によって異なるサイズの撮像素子３０３ａを有するため、撮像装置３０３は、第１の有効画素領域５０２を有する種類と、第２の有効画素領域５０３を有する種類が存在する。レンズ装置３０２に接続可能な撮像装置３０３のうち、最大サイズの撮像素子３０３ａを有する撮像装置３０３は、第１の有効画素領域５０２を有する。
【００５８】
位置マップ４０３は、座標（Ｘ，Ｙ）を正規化した（ｘ，ｙ）に基づいて生成される。正規化は、レンズ装置３０２のイメージサークル５０１に基づく長さ（イメージサークルの半径）５１１で、（Ｘ，Ｙ）を除することによって行われる。または、Ｘを原点から第１の有効画素領域の水平方向の長さ５１２で、Ｙを原点から第１の有効画素領域の垂直方向の長さ５１３で、それぞれ除して正規化してもよい。仮に、撮像画像の端が常に１となるように（Ｘ，Ｙ）を正規化すると、異なるサイズの撮像素子３０３ａで撮像した画像によって、（ｘ，ｙ）が同じ値でも示す位置（Ｘ，Ｙ）が異なり、（ｘ，ｙ）とぼけの対応が一意に決まらない。これにより、ぼけの鮮鋭化精度の低下を招く。位置マップ４０３は、（ｘ，ｙ）の値をそれぞれチャンネル成分に有する２チャンネルのマップである。なお、位置マップ４０３に極座標を用いてもよく、原点の取り方も図９に限定されるものではない。
【００５９】
ステートマップ４０２は、正規化された（ｚ，ｆ，ｄ）の値をそれぞれチャンネル成分に有する３チャンネルのマップである。訓練画像４０１、ステートマップ４０２、位置マップ４０３それぞれの１チャンネルあたりの要素数（画素数）は等しい。なお、位置マップ４０３とステートマップ４０２の構成はこれに限定されるものではない。例えば、位置マップの例を示す図１０のように、第１の有効画素領域５０２を複数の部分領域に分割し、各部分領域に数値を割り当てることで、位置マップを１チャンネルで表現してもよい。なお、部分領域の分割数や数値の振り分け方法は、図１０に限定されるものではない。また、（Ｚ，Ｆ，Ｄ）も同様に、それぞれを軸とした３次元空間で複数の部分領域に分割して数値を割り当て、ステートマップを１チャンネルで表現してもよい。訓練画像４０１、ステートマップ４０２、位置マップ４０３は、図８の連結層４１１でチャンネル方向に規定の順番で連結され、訓練入力データ４０４が生成される。
【００６０】
続いて、図４のステップＳ１０２において、演算部３０１ｃは、訓練入力データ４０４をＣＮＮ４１２へ入力し、出力画像４０５を生成する。続いてステップＳ１０３において、更新部３０１ｄは、出力画像と正解画像の誤差から、ＣＮＮのウエイトを更新する。続いてステップＳ１０４において、更新部３０１ｄは、学習が完了したか否かを判定する。学習済みのウエイトの情報は、記憶部３０１ａに記憶される。
【００６１】
次に、図１１を参照して、画像推定装置３０４で実行される撮像画像のぼけ鮮鋭化（推定フェーズ）に関して説明する。図１１は、ぼけ鮮鋭化（推定画像の生成）に関するフローチャートである。図１１の各ステップは、主に、画像推定装置３０４の取得部３０４ｂまたは鮮鋭化部３０４ｃにより実行される。
【００６２】
まずステップＳ３０１において、取得部３０４ｂは、撮像画像（またはその少なくとも一部）を取得する。続いてステップＳ３０２において、取得部３０４ｂは、撮像画像に対応するウエイトの情報を取得する。本実施例２では、レンズ装置３０２の種類ごとのウエイトの情報が、予め記憶部３０１ａから読み出され、記憶部３０４ａに記憶されている。このため取得部３０４ｂは、撮像画像の撮像に用いたレンズ装置３０２の種類に対応するウエイトの情報を記憶部３０４ａから取得する。撮像に用いたレンズ装置３０２の種類は、例えば、撮像画像のファイル内のメタデータなどから特定される。
【００６３】
続いてステップＳ３０３において、取得部３０４ｂは、撮像画像に対応するステートマップおよび位置マップを生成し、入力データを生成する。ステートマップは、撮像画像の画素数と、撮像画像を撮像した際のレンズ装置３０２の状態（Ｚ，Ｆ，Ｄ）の情報とに基づいて生成される。撮像画像とステートマップの１チャンネルあたりの要素数（画素数）は、等しい。（Ｚ，Ｆ，Ｄ）は、例えば、撮像画像のメタデータなどから特定される。位置マップは、撮像画像の画素数と、撮像画像の各画素に関する位置の情報とに基づいて生成される。撮像画像と位置マップの１チャンネルあたりの要素数（画素数）は、等しい。撮像画像のメタデータなどから、撮像画像の撮像に用いた撮像素子３０３ａの有効画素領域の大きさを特定し、例えば同様に特定したレンズ装置３０２のイメージサークルの長さを用いて、正規化された位置マップを生成する。入力データは、図８と同様に、撮像画像、ステートマップ、位置マップをチャンネル方向に規定の順序で連結して生成される。なお本実施例において、ステップＳ３０２とステップＳ３０３の順序は問わない。また、撮像画像の撮像時にステートマップと位置マップを生成し、撮像画像と合わせて保存しておいても構わない。
【００６４】
続いてステップＳ３０４において、鮮鋭化部３０４ｃは、図８と同様に入力データをＣＮＮに入力し、推定画像を生成する。図１２は、鮮鋭化の効果を示す図であり、あるズームレンズの特定の（Ｚ，Ｆ，Ｄ）における像高９割での鮮鋭化効果を示す。図１２において、横軸は空間周波数、縦軸はＳＦＲ（Ｓｐａｔｉａｌ  Ｆｒｅｑｕｅｎｃｙ  Ｒｅｓｐｏｎｓｅ）の計測値をそれぞれ示す。ＳＦＲは、ある断面でのＭＴＦ（Ｍｏｄｕｌａｔｉｏｎ  Ｔｒａｎｓｆｅｒ  Ｆｕｎｃｔｉｏｎ）に対応する。撮像に用いた撮像素子のＮｙｑｕｉｓｔ周波数は、７６［ｌｐ／ｍｍ］である。実線６０１は撮像画像であり、破線６０２、一点鎖線６０３、二点鎖線６０４は撮像画像をＣＮＮによってぼけ鮮鋭化した結果である。破線６０２、一点鎖線６０３、二点鎖線６０４は、前記ズームレンズで発生する収差と回折のぼけ全てを混合した学習データを用いて、ぼけ鮮鋭化を学習したＣＮＮを使用している。
【００６５】
推定フェーズ（または学習フェーズ）における破線６０２の入力データは、撮像画像（または訓練画像）のみである。一点鎖線６０３の入力データは、撮像画像（または訓練画像）と位置マップである。二点鎖線６０４の入力データは、撮像画像（または訓練画像）、位置マップ、ステートマップであり、本実施例の構成に該当する。破線６０２、一点鎖線６０３、二点鎖線６０４それぞれに用いたＣＮＮは、第１層のフィルタのチャンネル数のみ異なり（入力データのチャンネル数が異なるため）、それ以外のフィルタサイズ、フィルタの数、層数などは共通である。このため、破線６０２、一点鎖線６０３、二点鎖線６０４それぞれの学習負荷と保持データ量（ＣＮＮのウエイトの情報のデータ容量）は、略同一である。一方、本実施例の構成を採用した二点鎖線６０４は、図１２に示されるように高い鮮鋭化効果を有する。
【００６６】
本実施例によれば、機械学習モデルの学習負荷と保持データ量を抑制して、撮像画像の光学系に起因するぼけを高精度に鮮鋭化することが可能な画像処理装置および画像処理システムを実現することができる。
【００６７】
次に、本実施例の効果を高める好ましい条件に関して、説明する。
【００６８】
入力データはさらに、撮像画像の撮像に用いた撮像装置３０３の光学ローパスフィルタの有無や種類を示す情報を含むことが望ましい。これにより、ぼけの鮮鋭化効果が向上する。種類とは、分離方式（垂直２点分離、水平２点分離、４点分離など）やカットオフ周波数を指す。有無と種類を特定し得る数値を要素とするマップを、撮像画像の画素数に基づいて生成し、入力データに含めてもよい。
【００６９】
入力データはさらに、撮像画像の撮像に用いたレンズ装置３０２の製造ばらつきに関する情報を含むことが望ましい。これによって、製造ばらつきも含めた高精度なぼけ鮮鋭化が可能となる。学習フェーズにおいて、製造ばらつきを含めたぼけを原画像に作用させて訓練画像を生成し、訓練入力データに製造ばらつきを示す情報を含めて機械学習モデルを学習する。製造ばらつきを示す情報は例えば、設計性能に対する製造ばらつきを含めた実性能の度合いを示す数値などを使用する。例えば、実性能と設計性能が等しい場合に数値を０とし、実性能が設計性能より劣るほどに負方向へ、実性能が設計性能より優るほどに正方向へ動くようにする。推定フェーズでは、図１３に示されるように、撮像画像の複数の部分領域に対して（各画素に対してでもよい）、設計性能に対する実性能の度合いを示す数値を有するマップを入力データに含める。図１３は、製造ばらつきマップの例を示す図である。このマップは、撮像画像の画素数に基づいて生成される。レンズ装置３０２の製造誤差を含めた実性能は、製造時などに計測しておくことで、前記マップを取得することができる。また、画像全体の性能劣化（球面収差の悪化）やアジムスによる性能のばらつき（片ぼけ）など、製造ばらつきを幾つかのカテゴリーに分けておき、そのカテゴリーを示す数値で製造ばらつきを示してもよい。
【００７０】
入力データはさらに、撮像画像の撮像時おける被写体空間の距離に関する分布の情報を含むことが望ましい。これによって、デフォーカスによる性能変化も含めた高精度なぼけ鮮鋭化が可能となる。軸上色収差や像面湾曲により、デフォーカスした被写体面の方がフォーカス面よりも光学性能が向上する場合がある。これを考慮せず、フォーカス面でのぼけのみで学習した機械学習モデルでぼけ鮮鋭化を行うと、解像感が過剰になり、不自然な画像となる。これを解決するためには、まず学習フェーズにおいて、原画像にデフォーカスしたぼけを作用させた訓練画像を用いて学習を行う。この際、訓練入力データにデフォーカス量（被写体空間の距離に相当）を示す数値も含める。例えば、フォーカス面を０とし、撮像装置から離れる方向を負、近づく方向を正とすればよい。推定フェーズでは、視差画像の撮像やＤＦＤ（Ｄｅｐｔｈ  ｆｒｏｍ  Ｄｅｆｏｃｕｓ）などを利用して撮像画像のデフォーカスマップ（被写体空間の距離に関する分布の情報）を取得し、入力データに含める。デフォーカスマップは、撮像画像の画素数に基づいて生成される。
【００７１】
入力データはさらに、撮像画像の撮像に用いた撮像素子３０３ａの画素ピッチまたはカラーフィルタアレイに関する情報も含むことが望ましい。これによって、撮像素子３０３ａの種類に依らず、高精度なぼけ鮮鋭化が可能となる。画素ピッチによって、画素開口劣化の強さや、画素に対するぼけの大きさが変化する。また、カラーフィルタアレイを構成する色成分によって、ぼけの形状が変化する。色成分は、例えば、ＲＧＢ（Ｒｅｄ，Ｇｒｅｅｎ，Ｂｌｕｅ）や補色のＣＭＹ（Ｃｙａｎ，Ｍａｇｅｎｔａ，Ｙｅｌｌｏｗ）などである。また、訓練画像や撮像画像が未現像のＢａｙｅｒ画像などの場合、カラーフィルタアレイの配列順によって、同一位置の画素でもぼけの形状が異なる。学習フェーズにおいて、訓練画像に対応する画素ピッチやカラーフィルタアレイを特定する情報を、訓練入力データに含ませる。例えば、正規化された画素ピッチの数値を要素とするマップを含む。正規化には、複数種類の撮像装置３０３のうち最大の画素ピッチを除数とするとよい。また、カラーフィルタアレイの色成分を示す数値を要素とするマップを含めてもよい。推定フェーズでも同様のマップを入力データに含めることで、鮮鋭化の精度を向上できる。前記マップは、撮像画像の画素数に基づいて生成される。
【００７２】
入力データはさらに、レンズ装置３０２のアクセサリの有無と種類を示す情報も含むことが望ましい。アクセサリとは、ワイドコンバータやテレコンバータ、クローズアップレンズ、波長カットフィルタなどである。アクセサリの種類によって、ぼけの形状が変化するため、アクセサリの有無と種類に関する情報を入力することで、それらの影響も含めて鮮鋭化することができる。学習フェーズにおいて、訓練画像に作用させるぼけにアクセサリの影響を含め、訓練入力データにアクセサリを特定する情報を含める。例えば、アクセサリの有無と種類を示す数値を要素とするマップを使用する。推定フェーズでも同様の情報（マップ）を入力データに含めればよい。このマップは、撮像画像の画素数に基づいて生成される。
【実施例３】
【００７３】
次に、本発明の実施例３における画像処理システムに関して説明する。本実施例は、ぼけの整形処理を実行するが、ぼけの鮮鋭化処理に関しても同様に適用可能である。
【００７４】
図１４は、画像処理システム７００のブロック図である。図１５は、画像処理システム７００の外観図である。画像処理システム７００は、学習装置７０１、レンズ装置（光学系）７０２、撮像装置７０３、制御装置（第１の装置）７０４、画像推定装置（第２の装置）７０５、および、ネットワーク７０６、７０７を有する。学習装置７０１および画像推定装置７０５は、例えばサーバである。制御装置７０４は、パーソナルコンピュータやモバイル端末などのユーザが操作する機器である。学習装置７０１は、記憶部７０１ａ、取得部（取得手段）７０１ｂ、演算部（生成手段）７０１ｃ、および更新部（更新手段）７０１ｄを有し、レンズ装置７０２と撮像装置７０３を用いて撮像された撮像画像のぼけを整形する機械学習モデルのウエイトを学習する。なお、学習に関する詳細については、後述する。本実施例で整形するぼけは、デフォーカスによるぼけであるが、収差や回折などに関しても同様に適用可能である。
【００７５】
撮像装置７０３は、撮像素子７０３ａを有する。撮像素子７０３ａは、レンズ装置７０２により形成された光学像を光電変換して撮像画像を取得する。レンズ装置７０２と撮像装置７０３は着脱可能であり、互いに複数種類と組み合わることが可能である。制御装置７０４は、通信部７０４ａ、記憶部７０４ｂ、および、表示部７０４ｃを有し、有線または無線で接続された撮像装置７０３から取得した撮像画像に対して、実行する処理をユーザの操作に従って制御する。または制御装置７０４は、撮像装置７０３で撮像した撮像画像を予め記憶部７０４ｂに記憶しておき、撮像画像を読み出してもよい。
【００７６】
画像推定装置７０５は、通信部７０５ａ、記憶部７０５ｂ、取得部（取得手段）７０５ｃ、および、整形部（生成手段）７０５ｄを有する。画像推定装置７０５は、ネットワーク７０７を介して接続された制御装置７０４の要求によって、撮像画像のぼけ整形処理を実行する。画像推定装置７０５は、ネットワーク７０６を介して接続された学習装置７０１から、学習済みのウエイトの情報をぼけ整形時または予め取得し、撮像画像のぼけ整形に用いる。ぼけ整形後の推定画像は、再び制御装置７０４へ伝送されて、記憶部７０４ｂに記憶され、表示部７０４ｃに表示される。
【００７７】
次に、図１６を参照して、本実施例における学習装置７０１で実行されるウエイトの学習（学習フェーズ、学習済みモデルの製造方法）に関して説明する。図１６は、ウエイトの学習に関するフローチャートである。図１６の各ステップは、主に、学習装置７０１の取得部７０１ｂ、演算部７０１ｃ、または、更新部７０１ｄにより実行される。なお本実施例では、機械学習モデルとしてＧＡＮを使用するが、他のモデルについても同様に適用可能である。ＧＡＮでは、デフォーカスぼけの整形された出力画像を生成する生成器と、正解画像か生成器によって生成された出力画像かを識別する識別器が存在する。学習では、まず実施例１と同様に生成器のみを用いる第１の学習を行い、生成器のウエイトがある程度収束した段階で、生成器と識別器を用いる第２の学習を行う。以下、実施例１と同様の箇所の説明については省略する。
【００７８】
まずステップＳ４０１において、取得部７０１ｂは、１組以上の正解画像と訓練入力データを記憶部７０１ａから取得する。本実施例において、正解画像と訓練画像は、デフォーカスぼけの形状が異なる画像のペアである。訓練画像は、整形したい対象のデフォーカスぼけが作用した画像である。整形の対象として、二線ぼけ、ヴィネッティングによるぼけの欠け、カタディオプトリックレンズなどの瞳遮蔽によるリング状のぼけ、非球面レンズの金型の削りムラに起因するぼけの輪帯模様などが挙げられる。正解画像は、整形後のデフォーカスぼけが作用した画像である。整形後のデフォーカスぼけの形状は、ガウシアンやディスク（強度がフラットな円形分布）など、ユーザの好みに合わせて決定するとよい。実施例３では、原画像に対してぼけを作用させて生成された複数の訓練画像と正解画像が記憶部７０１ａに記憶されている。複数の訓練画像と正解画像を生成する際は、様々なデフォーカス量にも整形精度が確保できるように、様々なデフォーカス量に対応するぼけを作用させる。また、フォーカス面では、ぼけ整形の前後で画像は変化しないことが望ましいので、デフォーカス量がゼロの訓練画像と正解画像も生成する。
【００７９】
本実施例では、複数の種類のレンズ装置７０２に対して、ぼけ整形を変換するためのウエイトを一括で学習する。このため、光学系の状態に関する情報は、レンズ装置７０２の種類を特定する情報を含む。一括学習する種類のレンズ装置７０２に対応するぼけの訓練画像を記憶部７０１ａから取得する。光学系の状態に関する情報は、さらに、訓練画像に作用しているぼけに対応するレンズ装置７０２のズーム、絞り、フォーカス距離を特定する情報を含む。
【００８０】
図１７は、機械学習モデル（ＧＡＮ）の構成図である。レンズ装置７０２の種類、ズーム、絞り、フォーカス距離を特定する数値（Ｌ，ｚ，ｆ，ｄ）をそれぞれチャンネル成分とするレンズステートマップ８０２を、訓練画像８０１の画素数に基づいて生成する。連結層８１１は、訓練画像８０１とレンズステートマップ８０２をチャンネル方向に既定の順序で連結し、訓練入力データ８０３を生成する。
【００８１】
続いて、図１６のステップＳ４０２において、演算部７０１ｃは、訓練入力データ８０３を生成器８１２に入力して、出力画像８０４を生成する。生成器８１２は、例えばＣＮＮである。続いてステップＳ４０３において、更新部７０１ｄは、出力画像８０４と正解画像８０５との誤差から、生成器８１２のウエイトを更新する。ロス関数には、各画素における差分のユークリッドノルムを使用する。
【００８２】
続いてステップＳ４０４において、更新部７０１ｄは、第１の学習が完了したか否かを判定する。第１の学習が完了していない場合、ステップＳ４０１へ戻る。一方、第１の学習が完了した場合、ステップＳ４０５へ進み、更新部７０１ｄは第２の学習を実行する。
【００８３】
ステップＳ４０５において、取得部７０１ｂは、ステップＳ４０１と同様に、１組以上の正解画像８０５と訓練入力データ８０３を記憶部７０１ａから取得する。続いてステップＳ４０６において、演算部７０１ｃは、ステップＳ４０２と同様に、訓練入力データ８０３を生成器８１２に入力して、出力画像８０４を生成する。続いてステップＳ４０７において、更新部７０１ｄは、出力画像８０４と正解画像８０５から識別器８１３のウエイトを更新する。識別器８１３は、入力された画像が生成器８１２によって生成されたフェイク画像か、正解画像８０５であるリアル画像かを識別する。出力画像８０４または正解画像８０５を識別器８１３に入力し、識別ラベル（フェイクかリアルか）を生成する。識別ラベルと正解ラベル（出力画像８０４はフェイク、正解画像８０５がリアル）の誤差に基づいて、更新部７０１ｄは、識別器８１３のウエイトを更新する。ロス関数にはｓｉｇｍｏｉｄ  ｃｒｏｓｓ  ｅｎｔｒｏｐｙを使用するが、その他のロス関数を用いてもよい。
【００８４】
続いてステップＳ４０８において、更新部７０１ｄは、出力画像８０４と正解画像８０５から生成器８１２のウエイトを更新する。ロス関数は、ステップＳ４０３のユークリッドノルムと、以下の２項の重み付き和とする。第１項目はＣｏｎｔｅｎｔ  Ｌｏｓｓと呼ばれる、出力画像８０４と正解画像８０５を特徴マップに変換し、その要素毎の差分のユークリッドノルムをとった項である。特徴マップでの差分をロス関数に加えることで、出力画像８０４のより抽象的な性質を正解画像８０５へ近づけることができる。第２項目はＡｄｖｅｒｓａｒｉａｌ  Ｌｏｓｓと呼ばれる、出力画像８０４を識別器８１３へ入力して得られた識別ラベルのｓｉｇｍｏｉｄ  ｃｒｏｓｓ  ｅｎｔｒｏｐｙである。識別器８１３が、リアルと識別するように学習することで、より主観的に正解画像８０５らしく見える出力画像８０４が得られる。
【００８５】
続いてステップＳ４０９において、更新部７０１ｄは、第２の学習が完了したか否かを判定する。ステップＳ４０４と同様に、第２の学習が完了していない場合、ステップＳ４０５へ戻る。一方、第２の学習が完了した場合、更新部７０１ｄは、学習済みの生成器８１２のウエイトの情報を記憶部７０１ａに記憶する。
【００８６】
次に、図１８を参照して、制御装置７０４および画像推定装置７０５で実行されるぼけ整形（推定フェーズ）に関して説明する。図１８は、ぼけ整形（推定画像の生成）に関するフローチャートである。図１８の各ステップは、主に、制御装置７０４または画像推定装置７０５の各部により実行される。
【００８７】
まずステップＳ５０１において、制御装置７０４の通信部７０４ａは、画像推定装置７０５へ撮像画像とぼけ整形処理の実行に関する要求を送信する。続いてステップＳ６０１において、画像推定装置７０５の通信部７０５ａは、制御装置７０４から送信された撮像画像と処理の要求を受信し、取得する。続いてステップＳ６０２において、画像推定装置７０５の取得部７０５ｃは、撮像画像に対応する学習済みのウエイトの情報を記憶部７０５ｂから取得する。ウエイトの情報は、予め記憶部７０１ａから読み出され、記憶部７０５ｂに記憶されている。
【００８８】
続いてステップＳ６０３において、取得部７０５ｃは、撮像画像に対応する光学系の状態に関する情報を取得して、入力データを生成する。撮像画像のメタデータから、撮像画像を撮像した際のレンズ装置（光学系）７０２の種類、ズーム、絞り、フォーカス距離を特定する情報を取得し、図１７と同様にレンズステートマップを生成する。入力データは、撮像画像とレンズステートマップをチャンネル方向に既定の順序で連結して生成される。本実施例において、撮像画像または撮像画像に基づく特徴マップと、ステートマップとを機械学習モデルの入力前または途中でチャンネル方向に連結することができる。
【００８９】
続いてステップＳ６０４において、整形部７０５ｄは、入力データを生成器に入力し、ぼけ整形された推定画像を生成する。生成器には、ウエイトの情報が使用される。続いてステップＳ６０５において、通信部７０５ａは、推定画像を制御装置７０４へ送信する。続いてステップＳ５０２において、制御装置７０４の通信部７０４ａは、画像推定装置７０５から送信された推定画像を取得する。
【００９０】
なお本実施例において、撮像画像に含まれるぼけを整形する整形部７０５ｄに代えて、撮像画像を鮮鋭化する鮮鋭化部を設けてもよい。本実施例において、画像処理システム７００は、互いに通信可能な第１の装置（制御装置７０４）と第２の装置（画像推定装置７０５）とを有する。第１の装置は、撮像画像に対する処理の実行に関する要求を第２の装置へ送信する送信手段（通信部７０４ａ）を有する。第２の装置は、受信手段（通信部７０５ａ）、取得手段（取得部７０５ｃ）、および、生成手段（整形部７０５ｄまたは鮮鋭化部）を有する。受信手段は、前記要求を受信する。取得手段は、撮像画像と、撮像画像の撮像に用いた光学系の状態に関する情報とを含む入力データを取得する。生成手段は、前記要求に基づいて、入力データを機械学習モデルに入力し、撮像画像を鮮鋭化した推定画像、または、撮像画像に含まれるぼけを整形した推定画像を生成する。
【００９１】
本実施例によれば、機械学習モデルの学習負荷と保持データ量を抑制して、撮像画像の光学系に起因するぼけを高精度に整形することが可能な画像処理装置および画像処理システムを実現することができる。
【００９２】
なお、本実施例では、ステップＳ５０１制において制御装置７０４の通信部７０４ａは、画像推定装置７０５へ撮像画像に対する処理の要求と共に撮像画像を送信した例について述べたが、制御装置７０４による撮像画像の送信は必須ではない。例えば、制御装置は撮像画像の処理に対する要求のみを画像推定装置７０５に送信し、該要求を受信した画像推定装置７０５は他の画像保存サーバ等から要求に対応する撮像画像を取得するように構成しても良い。
【００９３】
（その他の実施例）
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００９４】
各実施例によれば、機械学習モデルの学習負荷と保持データ量を抑制して、撮像画像のぼけを高精度に鮮鋭化または整形する画像処理方法、画像処理装置、画像処理システム、学習済みウエイトの製造方法、および、プログラムを提供することができる。
【００９５】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００９６】
１２３    画像処理部（画像処理装置）
１２３ａ  取得部（取得手段）
１２３ｂ  鮮鋭化部（生成手段）
【図１】
2020201540.tif 000004
【図２】
2020201540.tif 000005
【図３】
2020201540.tif 000006
【図４】
2020201540.tif 000007
【図５】
2020201540.tif 000008
【図６】
2020201540.tif 000009
【図７】
2020201540.tif 000010
【図８】
2020201540.tif 000011
【図９】
2020201540.tif 000012
【図１０】
2020201540.tif 000013
【図１１】
2020201540.tif 000014
【図１２】
2020201540.tif 000015
【図１３】
2020201540.tif 000016
【図１４】
2020201540.tif 000017
【図１５】
2020201540.tif 000018
【図１６】
2020201540.tif 000019
【図１７】
2020201540.tif 000020
【図１８】
2020201540.tif 000021
【手続補正書】
【提出日】令和2年10月16日(2020.10.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、
前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する第２の工程と、を有することを特徴とする画像処理方法。
【請求項２】
前記光学系の状態は、前記光学系のズーム、絞り、フォーカス距離の少なくともいずれかを含むことを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記第２の工程において、前記光学系の第１の状態で撮像された第１の撮像画像と、前記第１の状態とは異なる第２の状態で撮像された第２の撮像画像と、に対して、同一のウエイトの前記機械学習モデルを用いることを特徴とする請求項１または２に記載の画像処理方法。
【請求項４】
前記光学系の状態に関する情報は、前記光学系のズーム、絞り、フォーカス距離の少なくともいずれかを示す数値を含み、
ズーム、絞り、フォーカス距離の少なくともいずれかに関して前記光学系の取り得る範囲に基づいて、前記数値は正規化されていることを特徴とする請求項１乃至３のいずれか一項に記載の画像処理方法。
【請求項５】
前記入力データは、前記光学系の状態を示すステートマップを含み、
前記ステートマップは、前記撮像画像の画素数と、前記光学系の状態に関する情報と、に基づいて生成されることを特徴とする請求項１乃至４のいずれか一項に記載の画像処理方法。
【請求項６】
前記ステートマップは、前記光学系のズーム、絞り、フォーカス距離の少なくともいずれかを示す数値を要素として有することを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記ステートマップは、前記光学系のズーム、絞り、フォーカス距離の少なくとも２つを示す数値をそれぞれ異なるチャンネルの要素として有することを特徴とする請求項５または６に記載の画像処理方法。
【請求項８】
前記ステートマップにおける同一のチャンネルの要素は、互いに同一の数値を有することを特徴とする請求項５乃至７のいずれか一項に記載の画像処理方法。
【請求項９】
前記撮像画像または前記撮像画像に基づく特徴マップと、前記ステートマップと、を前記機械学習モデルの入力前または途中でチャンネル方向に連結することを特徴とする請求項５乃至８のいずれか一項に記載の画像処理方法。
【請求項１０】
前記入力データは、前記撮像画像の各画素に関する位置の情報も含むことを特徴とする請求項１乃至９のいずれか一項に記載の画像処理方法。
【請求項１１】
前記位置の情報は、前記光学系のイメージサークルに基づく長さによって正規化された数値を有することを特徴とする請求項１０に記載の画像処理方法。
【請求項１２】
前記光学系の状態に関する情報は、前記光学系の種類に関する情報を含むことを特徴する請求項１乃至１１のいずれか一項に記載の画像処理方法。
【請求項１３】
前記光学系の状態に関する情報は、光学ローパスフィルタの有無、または、光学ローパスフィルタの種類に関する情報を含むことを特徴する請求項１乃至１２のいずれか一項に記載の画像処理方法。
【請求項１４】
前記光学系の状態は、前記光学系のアクセサリの有無、または、アクセサリの種類に関する情報を含むことを特徴する請求項１乃至１３のいずれか一項に記載の画像処理方法。
【請求項１５】
前記光学系の状態に関する情報は、前記光学系の製造ばらつきに関する情報を含むことを特徴する請求項１乃至１４のいずれか一項に記載の画像処理方法。
【請求項１６】
前記入力データは、前記撮像画像の撮像時における被写体空間の距離に関する分布の情報を含むことを特徴とする請求項１乃至１５のいずれか一項に記載の画像処理方法。
【請求項１７】
前記入力データは、前記撮像画像の撮像に用いた撮像素子の画素ピッチ、またはカラーフィルタアレイに関する情報を含むことを特徴とする請求項１乃至１６のいずれか一項に記載の画像処理方法。
【請求項１８】
前記第２の工程は、前記入力データを前記機械学習モデルに入力することで実行される処理により前記推定画像を生成することで行われることを特徴とする請求項１乃至１７のいずれか一項に記載の画像処理方法。
【請求項１９】
前記機械学習モデルは、前記入力データから、前記推定画像を出力するように予め学習されていることを特徴とする請求項１乃至１８のいずれか一項に記載の画像処理方法。
【請求項２０】
請求項１乃至１９のいずれか一項に記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項２１】
撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報と、を含む入力データを取得する取得手段と、
前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する生成手段と、を有することを特徴とする画像処理装置。
【請求項２２】
第１の装置と第２の装置を有する画像処理システムであって、
前記第１の装置は、撮像画像に対する処理の実行に関する要求を前記第２の装置へ送信する送信手段を有し、
前記第２の装置は、
前記要求を受信する受信手段と、
前記撮像画像と、前記撮像画像の撮像に用いた光学系の状態に関する情報と、を含む入力データを取得する取得手段と、
前記要求に基づいて、前記入力データを機械学習モデルに入力し、前記撮像画像を鮮鋭化した推定画像、または、前記撮像画像に含まれるぼけを整形した推定画像を生成する生成手段と、を有することを特徴とする画像処理システム。
【請求項２３】
訓練画像と、前記訓練画像に対応する光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、
前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する第２の工程と、
前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する第３の工程と、を有することを特徴とする画像処理方法。
【請求項２４】
請求項２３に記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【請求項２５】
訓練画像と、前記訓練画像に対応する光学系の状態に関する情報と、を含む入力データを取得する第１の工程と、
前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する第２の工程と、
前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する第３の工程と、を有することを特徴とする学習済みウエイトの製造方法。
【請求項２６】
訓練画像と、前記訓練画像に対応する光学系の状態に関する情報とを含む入力データを取得する取得手段と、
前記入力データを機械学習モデルに入力し、前記訓練画像を鮮鋭化した出力画像、または、前記訓練画像に含まれるぼけを整形した出力画像を生成する生成手段と、
前記出力画像と正解画像に基づいて、前記機械学習モデルのウエイトを更新する更新手段と、を有することを特徴とする画像処理装置。