JP7258604B2 - 画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法 - Google Patents

画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法 Download PDF

Info

Publication number
JP7258604B2
JP7258604B2 JP2019039089A JP2019039089A JP7258604B2 JP 7258604 B2 JP7258604 B2 JP 7258604B2 JP 2019039089 A JP2019039089 A JP 2019039089A JP 2019039089 A JP2019039089 A JP 2019039089A JP 7258604 B2 JP7258604 B2 JP 7258604B2
Authority
JP
Japan
Prior art keywords
image
noise
correct
training
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019039089A
Other languages
English (en)
Other versions
JP2020144489A5 (ja
JP2020144489A (ja
Inventor
法人 日浅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2019039089A priority Critical patent/JP7258604B2/ja
Priority to US16/808,526 priority patent/US11188777B2/en
Priority to EP26161232.9A priority patent/EP4742148A2/en
Priority to EP20160938.5A priority patent/EP3706069B1/en
Priority to CN202010141303.0A priority patent/CN111667416B/zh
Publication of JP2020144489A publication Critical patent/JP2020144489A/ja
Publication of JP2020144489A5 publication Critical patent/JP2020144489A5/ja
Application granted granted Critical
Publication of JP7258604B2 publication Critical patent/JP7258604B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00—Image enhancement or restoration
    • G06T5/70—Denoising; Smoothing
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00—Pattern recognition
    • G06F18/20—Analysing
    • G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00—Computing arrangements based on biological models
    • G06N3/02—Neural networks
    • G06N3/04—Architecture, e.g. interconnection topology
    • G06N3/045—Combinations of networks
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00—Computing arrangements based on biological models
    • G06N3/02—Neural networks
    • G06N3/08—Learning methods
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00—Image enhancement or restoration
    • G06T5/60—Image enhancement or restoration using machine learning, e.g. neural networks
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00—Indexing scheme for image analysis or image enhancement
    • G06T2207/10—Image acquisition modality
    • G06T2207/10004—Still image; Photographic image
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00—Indexing scheme for image analysis or image enhancement
    • G06T2207/20—Special algorithmic details
    • G06T2207/20081—Training; Learning
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00—Indexing scheme for image analysis or image enhancement
    • G06T2207/20—Special algorithmic details
    • G06T2207/20084—Artificial neural networks [ANN]
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00—Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06—Recognition of objects for industrial automation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Description

本発明は、画像処理に伴う画像のノイズの変動を抑制する画像処理方法に関する。
特許文献1には、ウィナーフィルタに基づく処理によって、撮像画像から収差によるぼけを補正し、高解像な画像を得る方法が開示されている。
特開2011-123589号公報
しかしながら、特許文献1に開示された方法は、被写体とノイズの区別ができないため、高解像化や高コントラスト化に伴って画像のノイズが増幅する。
そこで本発明は、画像処理に伴う画像のノイズの変動を抑制することが可能な画像処理方法等を提供することを目的とする。
本発明の一側面としての画像処理方法は、第1の正解画像と第1の訓練画像とを取得する第1の工程と、前記第1の正解画像と前記第1の訓練画像のそれぞれに対して互いに相関のあるノイズを付与することで、第2の正解画像と第2の訓練画像とを生成する第2の工程と、前記第2の正解画像と前記第2の訓練画像とに基づいて、多層のニューラルネットワークを用いた学習を行う第3の工程とを有し、前記第1の正解画像と前記第1の訓練画像とは、同一の原画像に対して互いに異なる処理を実行することで生成され、解像度、コントラスト、明るさ、ぼけ、およびライティングの少なくとも一つが互いに異なる画像である。
本発明の他の側面としての画像処理装置は、第1の正解画像と第1の訓練画像とを取得する取得手段と、前記第1の正解画像と前記第1の訓練画像のそれぞれに対して互いに相関のあるノイズを付与することで、第2の正解画像と第2の訓練画像とを生成する生成手段と、前記第2の正解画像と前記第2の訓練画像とに基づいて、多層のニューラルネットワークを用いた学習を行う学習手段とを有し、前記第1の正解画像と前記第1の訓練画像とは、同一の原画像に対して互いに異なる処理を実行することで生成され、解像度、コントラスト、明るさ、ぼけ、およびライティングの少なくとも一つが互いに異なる画像である。
本発明の他の側面としてのプログラムは、前記画像処理方法をコンピュータに実行させる。
本発明の他の側面としての学習済みモデルの製造方法は、第1の正解画像と第1の訓練画像とを取得する第1の工程と、前記第1の正解画像と前記第1の訓練画像のそれぞれに対して互いに相関のあるノイズを付与することで、第2の正解画像と第2の訓練画像とを生成する第2の工程と、前記第2の正解画像と前記第2の訓練画像とに基づいて、多層のニューラルネットワークを用いた学習を行う第3の工程とを有し、前記第1の正解画像と前記第1の訓練画像とは、同一の原画像に対して互いに異なる処理を実行することで生成され、解像度、コントラスト、明るさ、ぼけ、およびライティングの少なくとも一つが互いに異なる画像である。
本発明の他の目的及び特徴は、以下の実施形態において説明される。
本発明によれば、画像処理に伴う画像のノイズの変動を抑制することが可能な画像処理方法等を提供することができる。
実施例1におけるニューラルネットワークの学習の流れを示す図である。 実施例1における画像処理システムのブロック図である。 実施例1における画像処理システムの外観図である。 実施例1におけるウエイトの学習に関するフローチャートである。 実施例1における出力画像の生成に関するフローチャートである。 実施例2における画像処理システムのブロック図である。 実施例2における画像処理システムの外観図である。 実施例2におけるウエイトの学習に関するフローチャートである。 実施例2におけるニューラルネットワークの学習の流れを示す図である。 実施例2における出力画像の生成に関するフローチャートである。 実施例2における出力画像を生成する際のノイズ画像の生成を示す図である。 実施例3における画像処理システムのブロック図である。 実施例3における出力画像の生成に関するフローチャートである。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照符号を付し、重複する説明は省略する。
まず、実施例の具体的な説明を行う前に、本発明の要旨を説明する。本発明は、画像処理(高解像化、高コントラスト化、明るさ向上など)に伴う画像のノイズの変動を抑制するため、画像処理に多層のニューラルネットワークを使用する。また、多層のニューラルネットワークで使用するウエイト(フィルタ、バイアスなど)の学習において、第1の正解画像と第1の訓練画像のそれぞれに対し、互いに相関のあるノイズを付与し、第2の正解画像と第2の訓練画像を生成する。互いに相関のあるノイズとは、例えば同一の乱数に基づくノイズである。例えば、実行したい画像処理が高解像化の場合、第1の訓練画像は低解像な画像であり、第1の正解画像は高解像な画像である。第2の訓練画像を多層のニューラルネットワークへ入力し、その出力と第2の正解画像との誤差が小さくなるように、ウエイトを最適化する。この場合、第2の正解画像と第2の訓練画像は、互いに相関のあるノイズ、例えば同一の乱数に基づくノイズを有するため、ニューラルネットワークはノイズの変動を抑制しつつ、高解像化を行うウエイトを学習することができる。すなわち、ノイズの変動を抑制しつつ高解像化を行うことのできる学習済みモデルを生成することができる。
なお、高解像化を例に挙げたが、以下の実施例に述べる各画像処理は、高コントラスト化、明るさ向上、デフォーカスぼけ変換、ライティング変換などの画像処理に対しても適用可能であり、ノイズ変動を抑制した処理を実現できる。
まず、本発明の実施例1における画像処理システムに関して説明する。本実施例では、多層のニューラルネットワークにぼけ補正を学習、実行させる。ただし本発明は、ぼけ補正に限定されるものではなく、その他の画像処理にも適用可能である。
図2は、本実施例における画像処理システム100のブロック図である。図3は、画像処理システム100の外観図である。画像処理システム100は、学習装置(画像処理装置)101、撮像装置102、画像推定装置(画像処理装置)103、表示装置104、記録媒体105、出力装置106、および、ネットワーク107を有する。学習装置101は、記憶部(記憶手段)101a、取得部(取得手段)101b、生成部(生成手段)101c、および、更新部(学習手段)101dを有する。
撮像装置102は、光学系102aと撮像素子102bを有する。光学系102aは、被写体空間から撮像装置102へ入射した光を集光する。撮像素子102bは、光学系102aを介して形成された光学像(被写体像)を受光して(光電変換して)撮像画像を取得する。撮像素子102bは、例えばCCD(Charge Coupled Device)センサや、CMOS(Complementary Metal-Oxide Semiconductor)センサなどである。撮像装置102によって取得される撮像画像は、光学系102aの収差や回折によるぼけと、撮像素子102bによるノイズを含む。
画像推定装置103は、記憶部103a、取得部103b、ぼけ補正部(推定手段)103c、および、デノイズ部(ノイズ低減手段)103dを有する。画像推定装置103は、撮像画像を取得し、ノイズ変動を抑制したぼけ補正を行って推定画像を生成する。ぼけ補正には、多層のニューラルネットワークを使用し、ウエイトの情報は記憶部103aから読み出される。ウエイト(ウエイトの情報)は学習装置101で学習されたものであり、画像推定装置103は、事前にネットワーク107を介して記憶部101aからウエイトの情報を読み出し、記憶部103aに保存している。保存されるウエイトの情報は、ウエイトの数値そのものでもよいし、符号化された形式でもよい。ウエイトの学習、およびウエイトを用いたぼけ補正処理に関する詳細は、後述する。画像推定装置103は、推定画像に対してぼけ補正とデノイズ(ノイズ低減処理)の強度調整を行って、出力画像を生成する。
出力画像は、表示装置104、記録媒体105、および、出力装置106の少なくとも1つに出力される。表示装置104は、例えば液晶ディスプレイやプロジェクタなどである。ユーザは、表示装置104を介して、処理途中の画像を確認しながら編集作業などを行うことができる。記録媒体105は、例えば半導体メモリ、ハードディスク、ネットワーク上のサーバ等である。出力装置106は、プリンタなどである。画像推定装置103は、必要に応じて現像処理やその他の画像処理を行う機能を有する。
次に、図1および図4を参照して、本実施例における学習装置101により実行されるウエイト(ウエイトの情報)の学習方法(学習済みモデルの製造方法)に関して説明する。図1は、ニューラルネットワークのウエイトの学習の流れを示す図である。図4は、ウエイトの学習に関するフローチャートである。図4の各ステップは、主に、学習装置101の取得部101b、生成部101c、または、更新部101dにより実行される。
まず、図4のステップS101において、取得部101bは、正解パッチ(第1の正解画像)と訓練パッチ(第1の訓練画像)を取得する。本実施例において、正解パッチは、光学系102bの収差や回折によるぼけが少ない高解像(高品位)な画像である。訓練パッチは、正解パッチと同一の被写体が写っており、かつ光学系102bの収差や回折によるぼけが発生しており、ぼけが多い低解像(低品位)な画像である。すなわち、正解パッチは相対的にぼけが少ない画像であり、訓練パッチは相対的にぼけが多い画像である。
なお、パッチとは既定の画素数(例えば、64×64画素など)を有する画像を指す。また、正解パッチと訓練パッチの画素数は、必ずしも一致する必要はない。本実施例では、多層のニューラルネットワークのウエイトの学習に、ミニバッチ学習を使用する。このためステップS101では、複数組の正解パッチと訓練パッチを取得する。ただし本発明は、これに限定されるものではなく、オンライン学習またはバッチ学習を用いてもよい。
本実施例では以下の方法により、正解パッチと訓練パッチを取得するが、本発明はこれに限定されるものではない。本実施例は、記憶部101aに記憶されている複数の原画像を被写体として、撮像シミュレーションを行うことにより、収差や回折が実質的にない高解像撮像画像と収差や回折のある低解像撮像画像を複数生成する。そして、複数の高解像撮像画像と低解像撮像画像各々から同一位置の部分領域を抽出することで、複数の正解パッチと訓練パッチを取得する。本実施例において、原画像は未現像のRAW画像であり、正解パッチと訓練パッチも同様にRAW画像である。ただし本発明は、これに限定されるものではなく、現像後の画像でもよい。また、部分領域の位置とは、部分領域の中心を指す。複数の原画像は、様々な被写体、すなわち、様々な強さと方向のエッジや、テクスチャ、グラデーション、平坦部などを有する画像である。原画像は、実写画像でもよいし、CG(Computer Graphics)により生成した画像でもよい。
好ましくは、原画像は、撮像素子102bの輝度飽和値よりも高い信号値を有しているとよい。これは、実際の被写体においても、特定の露出条件で撮像装置102により撮影を行った際、輝度飽和値に収まらない被写体が存在するためである。高解像撮像画像は、原画像を縮小し、撮像素子102bの輝度飽和値で信号をクリップすることによって生成する。特に、原画像として実写画像を使用する場合、既に収差や回折によってぼけが発生しているため、縮小することでぼけの影響を小さくし、高解像(高品位)な画像にすることができる。なお、原画像に高周波成分が充分に含まれている場合、縮小は行わなくてもよい。低解像撮像画像は、高解像撮像画像と同様に縮小し、光学系102aの収差や回折によるぼけの付与を行った後、輝度飽和値によってクリップすることで生成する。光学系102aは、複数のレンズステート(ズーム、絞り、合焦距離の状態)と像高、アジムスによって異なる収差や回折を有する。このため、原画像ごとに異なるレンズステートや像高、アジムスの収差や回折によるぼけを付与することで、複数の低解像撮像画像を生成する。
なお、縮小とぼけの付与は順序を逆にしてもよい。ぼけの付与を先に行う場合、縮小を考慮して、ぼけのサンプリングレートを細かくする必要がある。PSF(点像強度分布)ならば空間のサンプリング点を細かくし、OTF(光学伝達関数)ならば最大周波数を大きくすればよい。また必要に応じて、付与するぼけには、撮像装置101に含まれる光学ローパスフィルタなどの成分を加えてもよい。なお、低解像撮像画像の生成で付与するぼけには、歪曲収差を含めない。歪曲収差が大きいと、被写体の位置が変化し、正解パッチと訓練パッチで被写体が異なる可能性があるためである。このため、本実施例で学習するニューラルネットワークは歪曲収差を補正しない。歪曲収差はバイリニア補間やバイキュービック補間などを用いて、ぼけ補正後、個別に補正する。
次に、生成された高解像撮像画像から、規定の画素サイズの部分領域を抽出し、正解パッチとする。低解像撮像画像から、前記抽出位置と同じ位置から部分領域を抽出し、訓練パッチとする。本実施例では、ミニバッチ学習を使用するため、生成された複数の高解像撮像画像と低解像撮像画像から、複数の正解パッチと訓練パッチを取得する。なお、実際の撮像時には、撮像素子102bでノイズが発生するが、ノイズの付与は後述のステップS103で行う。ただし、原画像はノイズ成分を有していてもよい。この場合、原画像に含まれるノイズを含めて被写体であるみなして正解パッチと訓練パッチが生成されると考えることができるため、原画像のノイズは特に問題にならない。
続いてステップS102において、生成部101cは、乱数列を生成する。そして生成部101cは、生成された乱数列に基づいて、正解パッチと訓練パッチにノイズを付与する。このため、撮像素子102bのノイズ特性に対応した乱数発生器を使用して、乱数列を生成する。本実施例では正規乱数によって乱数列を生成するが、本発明はこれに限定されるものではなく、一様乱数や無理数を利用した擬似的な乱数発生器を使用してもよい。乱数列の要素数は、正解パッチと訓練パッチのうち大きい方の画素数と同じである。すなわち、正解パッチと訓練パッチの各画素に対して、乱数によって発生した数値が1つ割り当てられる。乱数列は、極低確率な場合を除いて、全要素が同一の数値にならないため、正解パッチ(と訓練パッチ)の少なくとも2画素にはそれぞれ異なる数値が割り当てられる。また、正解パッチと訓練パッチが複数のチャンネルを有する場合、各チャンネルに対して数値が1つ割り当てられる。本実施例では、複数の正解パッチと訓練パッチを取得しているため、対応する数だけ同一ではない乱数列を複数生成する。なお、ステップS101とステップS102の順序は逆でもよい。
続いてステップS103において、生成部101cは、ノイズ正解パッチ(第2の正解画像)とノイズ訓練パッチ(第2の訓練画像)を生成する。図1は、ステップS103からステップS105までの流れを示している。生成部101cは、正解パッチ201と訓練パッチ202に対して、乱数列203に基づくノイズを付与し、ノイズ正解パッチ211とノイズ訓練パッチ212を生成する。ノイズの付与には、以下の式(1)を用いる。
Figure 0007258604000001
式(1)において、(x,y)は2次元の空間座標、sorg(x,y)は正解パッチ201(または訓練パッチ202)の(x,y)における画素の信号値である。r(x,y)は乱数列203の(x,y)における数値、snoise(x,y)はノイズ正解パッチ211(またはノイズ訓練パッチ212)の(x,y)における画素の信号値である。σ(x,y)はノイズの標準偏差(σ2(x,y)は分散)を表し、以下の式(2)で与えられる。
Figure 0007258604000002
式(2)において、s0はオプティカルブラック(黒レベルの画像)の信号値、SISOはISO感度、k1とk0はISO感度100における信号値に対する比例係数と定数である。k1はショットノイズの影響を示し、k0は暗電流や読み出しノイズの影響を表す。k1とk0の値は、撮像素子102bのノイズ特性によって決まる。これにより、正解パッチ201と訓練パッチ202の対応する画素(対応画素)に対して、共通の乱数に基づき、かつそれぞれの信号値に依存したノイズが付与され、ノイズ正解パッチ211とノイズ訓練パッチ212が生成される。対応画素とは、被写体空間の同一の位置を撮像した画素である。または、対応画素とは、正解パッチ201と訓練パッチ202の同一の位置の画素である。ステップS101で取得した複数の正解パッチ201と訓練パッチ202に対して、同様にノイズを付与し、複数のノイズ正解パッチ211とノイズ訓練パッチ212を生成する。撮像素子102bの様々なISO感度に対応する場合は、複数の正解パッチ201と訓練パッチ202に対して、異なるISO感度のノイズを付与する。本実施例では、正解パッチ201と訓練パッチ202それぞれの信号値に基づくノイズを付与するが、両者に同一のノイズを付与してもよい。実際に撮像される画像に相当するのは訓練パッチ202のため、訓練パッチ202に対して式(1)でノイズσ(x,y)・r(x,y)を計算し、ノイズを正解パッチ201に付与する。
続いてステップS104において、生成部101cは、ノイズ訓練パッチ(第2の訓練画像)212を多層のニューラルネットワークへ入力し、推定パッチ(推定画像)213を生成する。推定パッチ213は、ノイズの変動を抑制して、ぼけを補正したノイズ訓練パッチ212であり、理想的にはノイズ正解パッチ(第2の正解画像)211と一致する。なお本実施例では、図1に示されるニューラルネットワークの構成を使用するが、本発明はこれに限定されるものではない。図1中のCNは畳み込み層、DCは逆畳み込み層を表す。CNとDCどちらでも、入力とフィルタの畳み込み、およびバイアスとの和が算出され、その結果を活性化関数によって非線形変換する。フィルタの各成分とバイアスの初期値は任意であり、本実施例では乱数によって決定する。活性化関数は、例えばReLU(Rectified Linear Unit)やシグモイド関数などを使うことができる。最終層を除く各層の出力は、特徴マップと呼ばれる。スキップコネクション222、223は、連続していない層から出力された特徴マップを合成する。特徴マップの合成は要素ごとの和をとってもよいし、チャンネル方向に連結(concatenation)してもよい。本実施例では要素ごとの和を採用する。スキップコネクション221は、ノイズ訓練パッチ212とノイズ正解パッチ211の推定された残差と、ノイズ訓練パッチ212との和を取り、推定パッチ213を生成する。複数のノイズ訓練パッチ212のそれぞれに対して、推定パッチ213を生成する。
続いてステップS105において、更新部101dは、推定パッチ213とノイズ正解パッチ(第2の正解画像)211との誤差から、ニューラルネットワークのウエイト(ウエイトの情報)を更新する。ここで、ウエイトは、各層のフィルタの成分とバイアスを含む。ウエイトの更新には誤差逆伝搬法(Backpropagation)を使用するが、本発明はこれに限定されるものではない。ミニバッチ学習のため、複数のノイズ正解パッチ211とそれらに対応する推定パッチ213の誤差を求め、ウエイトを更新する。誤差関数(Loss function)には、例えばL2ノルムやL1ノルムなどを用いればよい。
続いてステップS106において、更新部101dは、ウエイトの学習が完了したか否かを判定する。完了は、学習(ウエイトの更新)の反復回数が規定値に達したか、または、更新時のウエイトの変化量が規定値より小さいかなどにより判定することができる。未完と判定された場合、ステップS101へ戻り、新たな正解パッチと訓練パッチを複数取得する。一方、完了と判定された場合、学習装置101(更新部101d)は学習を終了し、ウエイトの情報を記憶部101aに保存する。同一の乱数に基づいたノイズが付与されたノイズ正解パッチとノイズ訓練パッチでぼけ補正を学習することで、ニューラルネットワークは被写体と付与されたノイズを分離して学習することができ、ノイズ変動を抑えて被写体のみをぼけ補正することができる。
次に、図5を参照して、本実施例における画像推定装置103で実行される出力画像の生成に関して説明する。図5は、出力画像の生成に関するフローチャートである。図5の各ステップは、主に、画像推定装置103の取得部103b、ぼけ補正部103c、または、デノイズ部103dにより実行される。
まずステップS201において、取得部103bは、撮像画像とウエイトの情報を取得する。撮像画像は、学習と同様で未現像のRAW画像であり、本実施例では撮像装置102から送信されたものである。ウエイト情報は学習装置101から送信されて記憶部103aに記憶されたものである。
続いてステップS202において、ぼけ補正部103cは、取得したウエイトを適用した多層のニューラルネットワークに撮像画像を入力し、推定画像を生成する。推定画像は、撮像画像からノイズの変動を抑えて、光学系102aの収差や回折によるぼけが補正された画像である。このため、撮像画像に含まれるノイズ量と推定画像に含まれるノイズ量は同等である。推定画像の生成には、図1に示される構成と同様のニューラルネットワークを使用する。なお、ニューラルネットワークへ撮像画像を入力する際は、学習時に使用した訓練パッチと同サイズに切り出す必要はない。
続いてステップS203において、ぼけ補正部103cは、ユーザの選択に基づいて、ぼけ補正の強度を調整する。ぼけ補正の強度調整は、以下の式(3)で示される、撮像画像Iorgと推定画像Iinfの重み付き平均によって行う。
Figure 0007258604000003
式(3)において、Ioutはぼけ補正の強度が調整された出力画像であり、ユーザの選択に基づいて重みαは0から1の間で任意の値を取る。重みαが1に近いほど、ぼけ補正の強度が大きい。推定画像Iinfは、撮像画像Iorgに対してノイズ変動が抑制されているため、両者の重み付き平均である出力画像Ioutのノイズも変動が抑制される。
続いてステップS204において、デノイズ部103dは、ユーザの選択に基づいて、出力画像に対するデノイズの強度を調整する。デノイズ方法は、本実施例の方法に限定されるものではない。デノイズ方法として、例えば、バイラテラルフィルタ、NLM(non-local means)フィルタ、BM3D(Block-matching and 3D filtering)、または多層のニューラルネットワークを用いた方法などを用いてもよい。ここで、デノイズの強度を決定するパラメータ(ノイズ低減のパラメータ)は、撮像画像のオプティカルブラックの信号値に基づいて決定してもよい。オプティカルブラックの信号値から、撮像画像に存在するノイズ量を見積もることができる。さらに本発明では、ぼけ補正に伴うノイズの変動を抑制することができるため、撮像画像と推定画像のノイズ量は略一致する。故に、撮像画像のオプティカルブラックに関する情報に基づいて決定されたノイズ低減のパラメータで、出力画像のデノイズを決定してよい。また、出力画像に実行されるデノイズで用いられるノイズ低減のパラメータは、撮像画像にデノイズを実行する際のパラメータと同一としてもよい。出力画像はRAW画像であるため、必要に応じて現像処理が実行される。
以上の構成では、ぼけ補正とデノイズを個別の処理で行うため、それぞれの強度を個別に設定でき、ユーザの意図する編集に対応が可能となる。仮に、ノイズ訓練パッチをニューラルネットワークへ入力し、その推定パッチと、ノイズのない正解パッチの誤差から学習を行った場合、ニューラルネットワークはぼけ補正とデノイズの両方を学習する。このニューラルネットワークに対して、ステップS203にてぼけ補正の強度を調整すると、同時にデノイズの強度も変化する。すなわち、ぼけ補正とデノイズの強度を独立に設定することができなくなり、ユーザの意図した編集を実現できなくなる可能性がある。このため、ノイズ変動を抑制したぼけ補正を実現し、ぼけ補正後の画像に対して別途デノイズを行うような構成とすることにより、編集の自由度が確保され、ユーザが意図する編集に対応することが可能となる。
また、正解パッチと訓練パッチに対して、異なる乱数でノイズを付与した場合に推定画像がどうなるかを説明する。この場合、ノイズ正解パッチとノイズ訓練パッチの間のノイズは互いに相関を持たないこととなる。ニューラルネットワークは学習によって、ノイズ訓練パッチ内のノイズ成分を異なるノイズへ変化させるように促進される。しかし、ノイズの変化は、複数のパッチ組(ノイズ正解パッチとノイズ訓練パッチの組)ごとにランダムである。図1に示されるようなCNN(畳み込みニューラルネットワーク)では、そのランダムな変化の平均が学習される。すなわち、出力されるべきランダムなノイズは、複数のパッチ組の学習によって平均化され、結果的に推定画像はデノイズされた画像となる。故に、この場合も前述と同様、ユーザの編集の自由度が低下する。
なお、本実施例では収差や回折によるぼけの補正を扱ったが、他の要因(デフォーカス、ぶれ等)のぼけに対しても、本発明は同様に有効である。学習の際、訓練パッチに付与するぼけを、デフォーカスやぶれ等に変更することで、それらの要因のぼけでもノイズの変動を抑制してぼけ補正を行うことができる。
また、ぼけ補正以外の高解像化であるアップサンプリングに対しても、本発明は適用可能である。1次元でのアップサンプリングレートが2の場合を例にとって、学習の詳細を説明する。正解パッチに対して、ぼけ補正と同様に乱数列に基づいてノイズを付与し、ノイズ正解パッチを付与する。次に、正解パッチから1画素飛ばしで画素をサンプリングする(1次元で1/2にダウンサンプリングする)ことで、訓練パッチを生成する。同様に、前記乱数列も1画素飛ばしでサンプリングし、該ダウンサンプリングされた乱数列に基づいて、訓練パッチにノイズを付与し、ノイズ訓練パッチを生成する。ニューラルネットワーク内でアップサンプリングを行う場合、この生成したノイズ訓練パッチをそのままニューラルネットワークへ入力して誤差を算出し、ウエイトを学習する。事前にアップサンプリングする場合、ノイズ訓練パッチをバイリニア補間などでアップサンプリングしてニューラルネットワークへ入力し、誤差を算出、ウエイトを学習する。
また本発明は、周辺光量補正などの明るさ向上処理にも適用可能である。この際、ニューラルネットワークの学習は、以下のように行う。同一の原画像に対し、周辺光量落ちに対応した明るさ低減を行った撮像相当画像と、明るさの低減がない(または、撮像相当画像より低減が小さい)理想相当画像を生成する。生成された複数の撮像相当画像と理想相当画像から、それぞれ訓練パッチと正解パッチを複数抽出し、実施例1と同様の学習を行うことで、明るさ向上処理でもノイズ変動を抑制することができる。
また本発明は、デフォーカスぼけの変換にも適用可能である。デフォーカスぼけの変換とは、撮像画像中のデフォーカスぼけをユーザの望ましい形状、分布へ変換する処理である。撮像画像のデフォーカスぼけには、ヴィネッティングによる欠け、二線ぼけ、非球面レンズの切削痕による輪帯模様、カタディオプティック光学系による中心の遮蔽などが発生し得る。これらのデフォーカスぼけを、ニューラルネットワークによって、ユーザの望む形状、分布(例えば、フラットな円形や正規分布関数など)に変換する。このニューラルネットワークの学習は、以下のように行う。同一の原画像に対し、撮像画像で発生するデフォーカスぼけを付与した撮像相当画像と、ユーザの望むデフォーカスぼけを付与した理想相当画像を、複数のデフォーカス量に対して生成する。ただし、デフォーカスぼけ変換は、合焦距離の被写体に対して変化を起こさないことが望まれるので、デフォーカス量がゼロの撮像相当画像と理想相当画像も生成する。生成された複数の撮像相当画像と理想相当画像から、それぞれ訓練パッチと正解パッチを複数抽出し、実施例1と同様の学習と行うことで、デフォーカスぼけ変換でもノイズ変動を抑制することができる。
また本発明は、ライティングの変換にも適用可能である。ライティングの変換とは、撮像画像のライティングを異なるライティングへ変更する処理を指す。ライティング変換を実現するニューラルネットワークは、以下の方法で学習することができる。同一の法線マップである原画像に対し、撮像画像で想定される光源環境でのレンダリングを行うことで撮像相当画像を生成する。同様に、法線マップに対し、ユーザの望む光源環境でのレンダリングによって理想相当画像を生成する。撮像相当画像と理想相当画像から、それぞれ訓練パッチと正解パッチを複数抽出し、実施例1と同様の学習と行うことで、ライティング変換でもノイズ変動を抑制することができる。
また本発明は、コントラスト向上処理においても適用可能である。これに関しては、実施例2で具体的に説明する。
なお、本実施例では学習装置101と画像推定装置103が別体である場合を例に説明したが、本発明はこれに限定されない。学習装置101と画像推定装置103は一体であっても良い。すなわち、一体の装置内で学習(図4に示す処理)と推定(図5に示す処理)を行っても良い。
以上の構成により、本実施例によれば、画像処理に伴う画像のノイズ変動を抑制した画像処理システムを提供することが可能である。
次に、本発明の実施例2における画像処理システムに関して説明する。本実施例では、多層のニューラルネットワークに高コントラスト化処理である霞除去を学習、実行させる。ただし本実施例は、実施例1と同様に、その他の画像処理にも適用可能である。
図6は、本実施例における画像処理システム300のブロック図である。図7は、画像処理システム300の外観図である。画像処理システム300は、ネットワーク303を介して接続された学習装置(画像処理装置)301と撮像装置302を含む。学習装置301は、記憶部(記憶手段)301、取得部(取得手段)312、生成部(生成手段)313、および、更新部(学習手段)314を有し、ニューラルネットワークで霞除去を行うためのウエイト(ウエイトの情報)を学習する。撮像装置302は、被写体空間を撮像して撮像画像を取得し、読み出した前記ウエイトの情報を用いて撮像画像中の霞を除去する。学習装置301で実行されるウエイトの学習と、撮像装置302で実行される霞除去に関する詳細は後述する。撮像装置302は、光学系321と撮像素子322を有する。撮像素子322で取得された撮像画像は、被写体空間に存在する霞の影響で、被写体のコントラストが低下している。画像推定部323は、取得部323aと推定部323bを有し、記憶部324に保存されたウエイトの情報を用いて、撮像画像の霞除去を実行する。
ウエイトの情報は、学習装置301で事前に学習され、記憶部311に保存されている。撮像装置302は、記憶部311からネットワーク303を介してウエイトの情報を読み出し、記憶部324に保存する。霞除去された撮像画像(出力画像)は、記録媒体325に保存される。ユーザから出力画像の表示に関する指示が出された場合、保存された出力画像が読み出され、表示部326に表示される。なお、記録媒体325に既に保存された撮像画像を読み出し、画像推定部323で霞除去を行ってもよい。以上の一連の制御は、システムコントローラ327によって行われる。
次に、図8および図9を参照して、本実施例における学習装置301で実行されるウエイト(ウエイトの情報)の学習に関して説明する。図8は、ニューラルネットワークのウエイトの学習の流れを示す図である。図9は、ウエイトの学習に関するフローチャートである。図8の各ステップは、主に、学習装置301の取得部312、生成部313、または、更新部314により実行される。
実施例1では既定の画素数のパッチに対してノイズを付与したが、本実施例ではパッチより大きいサイズの画像に対してノイズを付与し、そこからパッチを抽出する。また本実施例では、ニューラルネットワークにノイズ訓練パッチ(霞とノイズのあるパッチ)だけでなく、ノイズ参照パッチ(特定の信号値に対するノイズ量を表すパッチ)を入力する。このように本実施例では、ノイズ参照パッチによって、ニューラルネットワークへ直接的にノイズ量を入力し、ノイズに対するロバスト性を向上する。
まず、図8のステップS301において、取得部312は、霞なし画像(第1の正解画像)401と霞あり画像(第1の訓練画像)402を取得する。実施例1と同様に、記憶部311に保存された1つ以上の原画像に対し、様々な濃さの霞をシミュレーションによって付与し、1組以上の霞なし画像401と霞あり画像402を生成する。霞あり画像402は、霞による散乱光により、霞なし画像401に対して、コントラストが低下し、白みを帯びた画像である。ここで、霞なし画像と霞あり画像は未現像のRAW画像である。
続いてステップS302において、生成部313は、乱数列を生成する。本実施例では、1組の霞なし画像401と霞あり画像402に対して、2つの乱数列を生成する。後段のステップで、第1の乱数列404に基づいて、霞なし画像401と霞あり画像402にノイズを付与し、第2の乱数列405に基づいてノイズ画像413を生成する。第1の乱数列404と第2の乱数列405は、互いに異なる数値を有する。第1の乱数列404の要素数は、霞なし画像401または霞あり画像402の画素数と一致する。第2の乱数列405の要素数はN0であり、第1の乱数列404の要素数と一致する必要はない。霞なし画像401と霞あり画像402が複数組存在する場合、それぞれの組に対して第1および第2の乱数列404、405を生成する。各組における第1の乱数列404は、互いに異なる数値を有する。第2の乱数列405も同様である。
続いてステップS303において、生成部313は、ノイズのある霞なし画像(第2の正解画像)411、ノイズのある霞あり画像(第2の訓練画像)412およびノイズ画像413を生成する。ノイズのある霞なし画像411は、第1の乱数列404に基づくノイズを、霞なし画像401に付与することで生成される。ノイズのある霞なし画像412も、霞あり画像402に同様にノイズを付与して生成される。ノイズの付与方法は、実施例1と同様である。被写体空間の同一の位置を撮像した霞なし画像401および霞あり画像402の画素に対して、同一の乱数に基づくノイズが付与される。ノイズ画像413は、特定の信号値に対して、第2の乱数列405に基づくノイズを付与することで生成される。特定の信号値に制限はないが、本実施例では、撮像素子322のオプティカルブラックにおける信号値s0を用いる。画素数N0で、信号値s0を有する画像403に対して、第2の乱数列405に基づくノイズを付与する。ノイズ画像413は、ノイズが付与された画像を配列し、第2の訓練画像412と同じ画素数にした画像である。ノイズ画像413に付与されたノイズの標準偏差は、第2の訓練画像412の生成時と同じ条件によって決定される。このため、ノイズ画像413と第2の訓練画像412内の信号値s0の画素とのノイズの標準偏差は同じである。霞なし画像401と霞あり画像402が複数組存在する場合、それぞれの組に対し、同様の処理を行う。
続いてステップS304において、生成部313は、ノイズ正解パッチ421、ノイズ訓練パッチ422、および、ノイズ参照パッチ423を複数抽出する。ノイズ正解パッチ421は第2の正解画像411から、ノイズ訓練パッチ422は第2の訓練画像412から、ノイズ参照パッチ423はノイズ画像413からそれぞれ抽出される。ノイズ正解パッチ421とノイズ訓練パッチ422は、被写体空間の同一の位置を撮像している領域を含むが、画素数は必ずしも一致しなくてよい。ノイズ訓練パッチ422とノイズ参照パッチ423はそれぞれ、第2の訓練画像412とノイズ画像413の同一の位置における部分領域であり、画素数はN0である。パッチ組(ノイズ正解パッチ421、ノイズ訓練パッチ422、ノイズ参照パッチ423)は、第2の正解画像411と第2の訓練画像412の組ごとに複数抽出される。
続いてステップS305において、取得部312は、ミニバッチ学習に使用するパッチ組を選択する。本実施例において、取得部312は、ステップS304にて抽出された複数のパッチ組から、2組以上の一部のパッチ組を選択する。続いてステップS306において、生成部313は、選択されたパッチ組からノイズ訓練パッチ422とノイズ参照パッチ423を多層のニューラルネットワークへ入力し、推定パッチ424を生成する。ノイズ訓練パッチ422とノイズ参照パッチ423は、チャンネル方向に連結されて、多層のニューラルネットワークへ入力される。スキップコネクション432、433は、実施例1と同様である。スキップコネクション431は、最終層の出力とノイズ訓練パッチ422の要素ごとの和を取る。選択された複数のパッチ組ごとに同様の処理を行う。
続いてステップS307において、更新部314は、推定パッチ424とノイズ正解パッチ421の誤差からニューラルネットワークのウエイトを更新する。続いてステップS308において、更新部314は、学習が完了したか否かを判定する。未完と判定された場合、ステップ305へ戻り、新たなパッチ組を複数選択する。学習が完了したと判定された場合、更新部314は、ウエイトの情報を記憶部311に保存する。
次に、図10を参照して、本実施例の画像推定部323で実行される撮像画像の霞除去処理に関して説明する。図10は、霞除去処理(画像推定部323による出力画像の生成)に関するフローチャートである。図10の各ステップは、主に、画像推定部323の取得部323aまたは推定部323bにより実行される。
まずステップS401において、取得部323aは、撮像画像とウエイトの情報を取得する。続いてステップS402において、取得部323aは、撮像画像のオプティカルブラック(黒レベルの画像)から部分領域を抽出し、ノイズ画像を生成する。これに関して、図11を参照して説明する。図11は、本実施例における出力画像を生成する際のノイズ画像の生成を示す図である。撮像画像501は、未現像のRAW画像であり、画像領域502とオプティカルブラック503を有する。取得部323aは、オプティカルブラック503から部分領域504を抽出する。部分領域504の画素数はN0であり、これを配列してノイズ画像505を生成する。ノイズ画像505は、画像領域502と同じ画素数であり、画像領域502とノイズ画像505をチャンネル方向に連結して、ニューラルネットワークへ入力する。ただし本発明は、これに限定されるものではない。例えば、ノイズ画像505を撮像画像501と同画素数にし、両者を連結してニューラルネットワークへ入力してもよい。
続いて、図10のステップS403において、推定部323bは、学習したウエイトを用いたニューラルネットワークにより、画像領域とノイズ画像が連結された入力に対する推定画像を生成する。本実施例では、霞除去の強度調整はなく、推定画像がそのまま出力画像となる。以上の処理により、ノイズの変動を抑制して霞除去を高精度に行った高コントラスト画像を推定することができる。同様の処理により、霧などその他の散乱体越しの撮像でも同様の効果を得ることができる。本実施例によれば、画像処理に伴う画像のノイズ変動を抑制した画像処理システムを提供することができる。
次に、本発明の実施例3における画像処理システムに関して説明する。本実施例の画像処理システムは、画像推定装置に対して画像処理の対象である撮像画像を送信し処理済みの出力画像を画像推定装置から受信する処理装置(コンピュータ)を有する点で、実施例1および実施例2と異なる。
図12は、本実施例における画像処理システム600のブロック図である。画像処理システム600は、学習装置601、撮像装置602、画像推定装置603、処理装置(コンピュータ)604を有する。学習装置601および画像推定装置603は、例えばサーバである。コンピュータ604は、例えばユーザ端末(パーソナルコンピュータまたはスマートフォン)である。コンピュータ604は、ネットワーク605を介して画像推定装置603に接続されている。画像推定装置603は、ネットワーク606を介して学習装置601に接続されている。すなわち、コンピュータ604と画像推定装置603は通信可能に構成され、画像推定装置603と学習装置601は通信可能に構成されている。コンピュータ604は第1の装置に相当し、画像推定装置603は第2の装置に相当する。なお学習装置601の構成は、実施例1の学習装置101と同様のため説明を省略する。撮像装置602の構成は、実施例1の撮像装置102と同様のため説明を省略する。
画像推定装置603は、記憶部603a、取得部603b、ぼけ補正部603c、デノイズ部603d、通信部(受信手段)603eを有する。記憶部603a、取得部603b、ぼけ補正部603c、デノイズ部603dのそれぞれは、実施例1の画像推定装置103の記憶部103a、取得部103b、ぼけ補正部103c、デノイズ部103dと同様である。通信部603eはコンピュータ604から送信される要求を受信する機能と、画像推定装置603によって生成された出力画像をコンピュータ604に送信する機能を有する。
コンピュータ604は、通信部(送信手段)604a、表示部604b、画像処理部604c、記録部604dを有する。通信部604aは撮像画像に対する処理を画像推定装置603に実行させるための要求を画像推定装置603に送信する機能と、画像推定装置603によって処理された出力画像を受信する機能を有する。表示部604bは種々の情報を表示する機能を有する。表示部604bによって表示される情報は、例えば画像推定装置603に送信する撮像画像と、画像推定装置603から受信した出力画像を含む。画像処理部604cは画像推定装置603から受信した出力画像に対してさらに画像処理を施す機能を有する。記録部604dは、撮像装置602から取得した撮像画像、画像推定装置603から受信した出力画像等を記録する。
次に、図13を参照して、本実施例における画像処理について説明する。本実施例における画像処理は、実施例1に説明したぼけ補正処理(図5)と同等である。図13は、出力画像の生成に関するフローチャートである。図13に示した画像処理は、コンピュータ604を介してユーザにより画像処理開始の指示が成されたことを契機として開始される。まず、コンピュータ604における動作について説明する。
ステップS701において、コンピュータ604は撮像画像に対する処理の要求を画像推定装置603へ送信する。なお、処理対象である撮像画像を画像推定装置603に送信する方法は問わない。例えば、撮像画像はステップS701と同時に画像推定装置603にアップロードされても良いし、ステップS701以前に画像推定装置603にアップロードされていても良い。また、撮像画像は画像指定装置603とは異なるサーバ上に記憶された画像でも良い。なお、ステップS701において、コンピュータ604は撮像画像に対する処理の要求と共に、ユーザを認証するID情報等を送信しても良い。
ステップS702において、コンピュータ604は画像推定装置603内で生成された出力画像を受信する。出力画像は実施例1と同様に撮像画像に対してぼけ補正が成された画像である。
次に、画像推定装置603の動作について説明する。ステップS801において、画像推定装置603はコンピュータ604から送信された撮像画像に対する処理の要求を受信する。画像推定装置603は、撮像画像に対する処理(ぼけ補正処理)が指示されたと判断し、ステップS802以降の処理を実行する。
ステップS802では、画像推定装置603はウエイト情報を取得する。ウエイト情報は実施例1と同様の方法(図4)で学習された情報(学習済みモデル)である。画像推定装置603は、学習装置601からウエイト情報を取得しても良いし、予め学習装置601から取得され記憶部603aに記憶されたウエイト情報を取得しても良い。ステップS803~ステップS805は、実施例1のステップS202~S204と同様である。ステップS806において、画像推定装置603は、出力画像をコンピュータ604へ送信する。
本実施例は、実施例1のぼけ補正処理を行うものとして説明したが、実施例2の霞除去処理(図10)においても同様に適用することができる。なお本実施例では、ぼけ補正の強度の調整とデノイズ(ノイズ低減)処理は共に画像推定装置603内で行われる例について述べるたが、ぼけ補正の強度の調整とデノイズ処理はコンピュータ604の画像処理部604c内で行っても良い。本実施例のように、デノイズ処理を画像推定装置603内で行う場合、デノイズ処理による処理負荷を画像推定装置603内で担うことができるため、コンピュータ604側に求められる処理能力を減じることができる。また、デノイズ処理をコンピュータ604の画像処理部604cで行う場合、ユーザはデノイズ処理を行うたびに画像推定装置603と通信を行わなくて済むようになる。
以上のように、本実施例のように、画像推定装置603を、画像推定装置603と通信可能に接続されたコンピュータ604を用いて制御するように構成しても良い。
このように各実施例において、画像処理装置(学習装置101、301)は、取得手段(取得部101b、312)、生成手段(生成部101c、313)、および、学習手段(更新部101d、314)を有する。取得手段は、第1の工程において、第1の正解画像と第1の訓練画像を取得する。生成手段は、第2の工程において、第1の正解画像と第1の訓練画像のそれぞれに対して互いに相関のあるノイズを付与することで、第2の正解画像と第2の訓練画像を生成する。学習手段は、第3の工程において、第2の正解画像と第2の訓練画像に基づいて、多層のニューラルネットワークを学習する。
好ましくは、第2の工程において、第1の正解画像と第1の訓練画像のそれぞれの対応画素に対して相関のあるノイズを付与することで第2の正解画像と第2の訓練画像が生成される。より好ましくは、対応画素は、第1の正解画像と第1の訓練画像のそれぞれにおいて、被写体空間の同一の位置を撮像した画素である。また好ましくは、対応画素は、第1の正解画像と第1の訓練画像における同一の位置の画素である。
好ましくは、ノイズは、同一の乱数に基づくノイズである。また好ましくは、乱数は、第1の正解画像における少なくとも2つの画素に対して異なる値である。また好ましくは、ノイズのうち第1の正解画像に付与されるノイズは、第1の正解画像における画素の信号値に基づいて決定され、ノイズのうち第1の訓練画像に付与されるノイズは、第1の訓練画像における画素の信号値に基づいて決定される。また好ましくは、ノイズの分散は、第1の正解画像と第1の訓練画像のそれぞれにおける画素の信号値に比例する比例成分と、定数成分とを含む。
好ましくは、第1の正解画像と第1の訓練画像に付与されるノイズは、同一である。より好ましくは、ノイズは、第1の訓練画像における画素の信号値に基づいて決定される。また好ましくは、学習手段は、多層のニューラルネットワークに、第2の訓練画像の少なくとも一部と、ノイズに基づいて生成されたノイズとは異なるノイズに基づいて生成されたノイズ参照パッチとを入力する。そして学習手段は、出力された推定パッチと第2の正解画像の少なくとも一部とを比較する。
好ましくは、第1の正解画像と第1の訓練画像はそれぞれ、同一の原画像に対して異なる処理を実行することで生成(シミュレーションで作成)された画像である。また好ましくは、第1の訓練画像は、第1の正解画像よりも、解像度、コントラスト、および、明るさの少なくとも1つが低い。また好ましくは、第1の正解画像と第1の訓練画像は、同一の原画像に基づいて生成された画像である。第1の訓練画像は、原画像に対してダウンサンプリング処理、ぼかし処理、コントラスト低減処理、および、明るさ低減処理の少なくとも1つが実行された画像である。より好ましくは、学習手段は、アップサンプリング処理、ぼけ除去処理、コントラスト向上処理、および、明るさ向上処理の少なくとも1つの機能を多層のニューラルネットワークが具備するように、多層のニューラルネットワークを学習する。好ましくは、第1の正解画像と第1の訓練画像はそれぞれ、同一の原画像の少なくとも一部に対し、異なるぼけを付与することで生成された画像である。また好ましくは、第1の正解画像と第1の訓練画像はそれぞれ、同一の法線マップに対し、異なる光源環境でのレンダリングを行うことで生成された画像である。
また各実施例において、画像処理装置(画像推定装置103、画像推定部323)は、推定手段(ぼけ補正部103c、推定部323b)および処理手段(デノイズ部103d、推定部323b)を有する。推定手段は、撮像画像を多層のニューラルネットワークへ入力し、高解像化処理、高コントラスト化処理、および、明るさ向上処理の少なくとも1つが施された推定画像を生成する。処理手段は、推定画像に基づく画像に対してノイズ低減処理を実行する。好ましくは、撮像画像におけるノイズ量と推定画像におけるノイズ量は、略同一である。ここで略同一とは、ノイズ量が厳密に同一である場合だけでなく、ノイズ量が実質的に同一(同等)と評価される場合を含む意味である。また好ましくは、多層のニューラルネットワークは、第1の工程と第2の工程と第3の工程とを含む学習方法により学習された学習済みモデルに基づく。
また各実施例において、画像処理システムは、第1の装置と、第1の装置と通信可能な第2の装置を含む。第1の装置は、撮像画像に対する処理を第2の装置に実行させるための要求を送信する送信手段を有する。第2の装置は、送信手段によって送信された要求を受信する受信手段と、撮像画像を多層のニューラルネットワークへ入力し、高解像化処理、高コントラスト化処理、および、明るさ向上処理の少なくとも1つが施された推定画像を生成する推定手段を有する。第1の装置または第2の装置の少なくとも一方は、推定画像に基づく画像に対してノイズ低減処理を実行するノイズ低減手段と、をさらに有する。
(その他の実施例)
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
各実施例によれば、画像処理に伴う画像のノイズの変動を抑制することが可能な画像処理方法、画像処理装置、プログラム、および、記憶媒体を提供することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
101 学習装置(画像処理装置)
101b 取得部(取得手段)
101c 生成部(生成手段)
101d 更新部(学習手段)

Claims (26)

  1. 第1の正解画像と第1の訓練画像とを取得する第1の工程と、
    前記第1の正解画像と前記第1の訓練画像のそれぞれに対して互いに相関のあるノイズを付与することで、第2の正解画像と第2の訓練画像とを生成する第2の工程と、
    前記第2の正解画像と前記第2の訓練画像とに基づいて、多層のニューラルネットワークを用いた学習を行う第3の工程とを有し、
    前記第1の正解画像と前記第1の訓練画像とは、同一の原画像に対して互いに異なる処理を実行することで生成され、解像度、コントラスト、明るさ、ぼけ、およびライティングの少なくとも一つが互いに異なる画像であることを特徴とする画像処理方法。
  2. 前記ノイズは、前記第1の正解画像と前記第1の訓練画像とのそれぞれの対応画素に対して相関のあるノイズであることを特徴とする請求項1に記載の画像処理方法。
  3. 前記対応画素は、前記第1の正解画像と前記第1の訓練画像のそれぞれにおいて、被写体空間の同一の位置を撮像することで得られた画素であることを特徴とする請求項2に記載の画像処理方法。
  4. 前記対応画素は、前記第1の正解画像と前記第1の訓練画像における同一の位置の画素であることを特徴とする請求項2または3に記載の画像処理方法。
  5. 前記ノイズは、同一の乱数に基づくノイズであることを特徴とする請求項1乃至4のいずれか一項に記載の画像処理方法。
  6. 前記乱数は、前記第1の正解画像における少なくとも二つの画素に対して異なる値であることを特徴とする請求項5に記載の画像処理方法。
  7. 前記ノイズのうち前記第1の正解画像に付与されるノイズは、前記第1の正解画像における画素の信号値に基づいて決定され、
    前記ノイズのうち前記第1の訓練画像に付与されるノイズは、前記第1の訓練画像における画素の信号値に基づいて決定されることを特徴とする請求項1乃至6のいずれか一項に記載の画像処理方法。
  8. 前記ノイズの分散は、前記第1の正解画像と前記第1の訓練画像のそれぞれにおける画素の信号値に比例する比例成分と、定数成分とを含むことを特徴とする請求項1乃至7のいずれか一項に記載の画像処理方法。
  9. 前記第1の正解画像と前記第1の訓練画像とに付与される前記ノイズは、互いに同一であることを特徴とする請求項1乃至6のいずれか一項に記載の画像処理方法。
  10. 前記ノイズは、前記第1の訓練画像における画素の信号値に基づいて決定されることを特徴とする請求項9に記載の画像処理方法。
  11. 前記第3の工程において、
    前記多層のニューラルネットワークに、前記第2の訓練画像の少なくとも一部と、前記ノイズに基づいて生成された前記ノイズとは異なるノイズに基づいて生成されたノイズ参照パッチとを入力し、出力された推定パッチと前記第2の正解画像の少なくとも一部とを比較することを特徴とする請求項1乃至10のいずれか一項に記載の画像処理方法。
  12. 前記第1の訓練画像の、前記解像度、前記コントラスト、および前記明るさの少なくとも一つが、前記第1の正解画像よりも低いことを特徴とする請求項1乃至11のいずれか一項に記載の画像処理方法。
  13. 前記第1の訓練画像は、前記原画像に対してダウンサンプリング処理、ぼかし処理、コントラスト低減処理、および、明るさ低減処理の少なくとも一つが実行された画像であることを特徴とする請求項1乃至11のいずれか一項に記載の画像処理方法。
  14. 前記第3の工程において、アップサンプリング処理、ぼけ除去処理、コントラスト向上処理、および、明るさ向上処理の少なくとも一つの機能を前記多層のニューラルネットワークが具備するように、前記多層のニューラルネットワークを用いた学習を行うことを特徴とする請求項13に記載の画像処理方法。
  15. 前記第1の正解画像と前記第1の訓練画像とは、前記原画像の少なくとも一部に対して互いに異なるぼけを付与することで生成された画像であることを特徴とする請求項1乃至11のいずれか一項に記載の画像処理方法。
  16. 前記第1の正解画像と前記第1の訓練画像とは、同一の法線マップに対して互いに異なる光源環境でのレンダリングを行うことで生成された画像であることを特徴とする請求項1乃至11のいずれか一項に記載の画像処理方法。
  17. 撮像画像を前記多層のニューラルネットワークへ入力し、高解像化処理、高コントラスト化処理、および、明るさ向上処理の少なくとも一つが施された推定画像を生成する工程と、
    前記推定画像に基づく画像に対してノイズ低減処理を実行する工程とを有することを特徴とする請求項1乃至16のいずれか一項に記載の画像処理方法。
  18. 前記撮像画像におけるノイズ量と前記推定画像におけるノイズ量とは、同等であることを特徴とする請求項17に記載の画像処理方法。
  19. 前記ノイズ低減処理で用いられるノイズ低減のパラメータは、前記撮像画像のオプティカルブラックに関する情報に基づいて決定されることを特徴とする請求項17または18に記載の画像処理方法。
  20. 前記推定画像に基づく画像に実行される前記ノイズ低減処理で用いられるノイズ低減のパラメータは、前記撮像画像に前記ノイズ低減処理を実行する際の前記パラメータと同一であることを特徴とする請求項17乃至19のいずれか一項に記載の画像処理方法。
  21. 第1の正解画像と第1の訓練画像とを取得する取得手段と、
    前記第1の正解画像と前記第1の訓練画像のそれぞれに対して互いに相関のあるノイズを付与することで、第2の正解画像と第2の訓練画像とを生成する生成手段と、
    前記第2の正解画像と前記第2の訓練画像とに基づいて、多層のニューラルネットワークを用いた学習を行う学習手段とを有し、
    前記第1の正解画像と前記第1の訓練画像とは、同一の原画像に対して互いに異なる処理を実行することで生成され、解像度、コントラスト、明るさ、ぼけ、およびライティングの少なくとも一つが互いに異なる画像であることを特徴とする画像処理装置。
  22. 請求項1乃至20のいずれか一項に記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
  23. 第1の正解画像と第1の訓練画像とを取得する第1の工程と、
    前記第1の正解画像と前記第1の訓練画像のそれぞれに対して互いに相関のあるノイズを付与することで、第2の正解画像と第2の訓練画像とを生成する第2の工程と、
    前記第2の正解画像と前記第2の訓練画像とに基づいて、多層のニューラルネットワークを用いた学習を行う第3の工程とを有し、
    前記第1の正解画像と前記第1の訓練画像とは、同一の原画像に対して異なる処理を実行することで生成され、解像度、コントラスト、明るさ、ぼけ、およびライティングの少なくとも一つが互いに異なる画像であることを特徴とする学習済みモデルの製造方法。
  24. 請求項23に記載の製造方法により得られた前記学習済みモデルに撮像画像を入力し、高解像化処理、高コントラスト化処理、および、明るさ向上処理の少なくとも一つが施された推定画像を生成する工程と、
    前記推定画像に基づく画像に対してノイズ低減処理を実行する工程とを有することを特徴とする画像処理方法。
  25. 請求項1乃至16のいずれか一項に記載の画像処理方法における前記多層のニューラルネットワークに撮像画像を入力し、高解像化処理、高コントラスト化処理、および、明るさ向上処理の少なくとも一つが施された推定画像を生成する工程と、
    前記推定画像に基づく画像に対してノイズ低減処理を実行する工程とを有することを特徴とする画像処理方法。
  26. 請求項24または25に記載の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
JP2019039089A 2019-03-05 2019-03-05 画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法 Active JP7258604B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019039089A JP7258604B2 (ja) 2019-03-05 2019-03-05 画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法
US16/808,526 US11188777B2 (en) 2019-03-05 2020-03-04 Image processing method, image processing apparatus, learnt model manufacturing method, and image processing system
EP26161232.9A EP4742148A2 (en) 2019-03-05 2020-03-04 Image processing method, image processing apparatus, learnt model manufacturing method, and image processing system
EP20160938.5A EP3706069B1 (en) 2019-03-05 2020-03-04 Image processing method, image processing apparatus, learnt model manufacturing method, and image processing system
CN202010141303.0A CN111667416B (zh) 2019-03-05 2020-03-04 图像处理方法、装置、学习模型制造方法和图像处理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019039089A JP7258604B2 (ja) 2019-03-05 2019-03-05 画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法

Publications (3)

Publication Number Publication Date
JP2020144489A JP2020144489A (ja) 2020-09-10
JP2020144489A5 JP2020144489A5 (ja) 2022-06-09
JP7258604B2 true JP7258604B2 (ja) 2023-04-17

Family

ID=69770626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019039089A Active JP7258604B2 (ja) 2019-03-05 2019-03-05 画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法

Country Status (4)

Country Link
US (1) US11188777B2 (ja)
EP (2) EP3706069B1 (ja)
JP (1) JP7258604B2 (ja)
CN (1) CN111667416B (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7258604B2 (ja) 2019-03-05 2023-04-17 キヤノン株式会社 画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法
US10996426B2 (en) * 2019-08-21 2021-05-04 Omnivision Technologies, Inc. 3D imaging using phase detection autofocus (PDAF) image sensor
JP7455542B2 (ja) * 2019-09-27 2024-03-26 キヤノン株式会社 画像処理方法、プログラム、画像処理装置、学習済みモデルの製造方法、および、画像処理システム
US11227370B2 (en) * 2019-09-30 2022-01-18 Brother Kogyo Kabushiki Kaisha Method for generating image processing filter and image processing method using the image processing filter
CN114651439B (zh) * 2019-11-08 2024-03-05 奥林巴斯株式会社 信息处理系统、内窥镜系统、信息存储介质及信息处理方法
US11281970B2 (en) * 2019-11-18 2022-03-22 Adobe Inc. Kernel prediction with kernel dictionary in image denoising
CN115776863A (zh) * 2020-07-06 2023-03-10 阿伊里斯株式会社 处理装置、处理程序、处理方法及处理系统
KR102734296B1 (ko) * 2020-08-31 2024-11-26 삼성전자주식회사 이미지 개선 방법, 이미지 개선 장치, 그 장치의 학습 방법 및 학습 장치
US12548113B2 (en) * 2020-09-03 2026-02-10 Nvidia Corporation Image enhancement using one or more neural networks
JP7784244B2 (ja) * 2020-09-24 2025-12-11 キヤノン株式会社 信号処理装置、光電変換装置、光電変換システム、信号処理装置の制御方法およびプログラム
JP2022056769A (ja) * 2020-09-30 2022-04-11 キヤノン株式会社 画像処理方法、プログラム、画像処理装置、学習済みモデルの製造方法、学習方法、学習装置、および、画像処理システム
EP4016442A1 (en) * 2020-12-15 2022-06-22 Siemens Energy Global GmbH & Co. KG Method for detecting defects in a 3d printer
CN112598598B (zh) * 2020-12-25 2023-11-28 南京信息工程大学滨江学院 一种基于两级反射光消除网络的图像反射光去除方法
CN120416676A (zh) * 2021-01-29 2025-08-01 富士胶片株式会社 信息处理装置、摄像装置、信息处理方法及存储介质
CN115002297A (zh) * 2021-03-02 2022-09-02 北京迈格威科技有限公司 图像降噪方法、训练方法、装置、电子设备及存储介质
JP7686428B2 (ja) * 2021-04-09 2025-06-02 キヤノン株式会社 画像処理方法、機械学習モデルの生成方法、画像処理装置、画像処理システム、及びプログラム
WO2022265321A1 (en) * 2021-06-15 2022-12-22 Samsung Electronics Co., Ltd. Methods and systems for low light media enhancement
JP7225315B2 (ja) * 2021-06-17 2023-02-20 キヤノン株式会社 画像処理方法、画像処理装置、画像処理システム、およびプログラム
US20230252770A1 (en) * 2022-02-04 2023-08-10 Samsung Electronics Co., Ltd. Machine learning model training framework for multi-frame image processing
JP2023179838A (ja) * 2022-06-08 2023-12-20 キヤノン株式会社 画像処理方法、画像処理装置、画像処理システム、画像処理プログラム
JP7851206B2 (ja) * 2022-07-20 2026-04-24 キヤノン株式会社 画像処理方法、画像処理装置、プログラム
JP2024022996A (ja) 2022-08-08 2024-02-21 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法、プログラムおよび記録媒体
US12524999B2 (en) 2022-09-30 2026-01-13 Samsung Electronics Co., Ltd. Generating images with small objects for training a pruned super-resolution network
CN116342418B (zh) * 2023-03-20 2026-04-10 深圳大学 图像处理方法、设备及计算机可读存储介质
JP2025012546A (ja) * 2023-07-13 2025-01-24 キヤノン電子株式会社 画像処理装置
CN119904371B (zh) * 2023-10-27 2026-04-03 中科寒武纪科技股份有限公司 图像噪声添加方法、装置、计算机设备及存储介质
US12217398B1 (en) 2024-05-08 2025-02-04 Imam Mohammad Ibn Saud Islamic University Apparatus and method for single image dehazing considering haze type classification
CN118247181B (zh) * 2024-05-28 2024-08-02 杭州海康威视数字技术股份有限公司 图像复原模型训练方法、电子设备和图像复原方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020075531A1 (ja) 2018-10-10 2020-04-16 株式会社島津製作所 画像作成装置、画像作成方法および学習済みモデルの作成方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5546229B2 (ja) 2009-12-09 2014-07-09 キヤノン株式会社 画像処理方法、画像処理装置、撮像装置および画像処理プログラム
US9152870B2 (en) * 2013-03-15 2015-10-06 Sri International Computer vision as a service
CN106558022B (zh) * 2016-11-30 2020-08-25 重庆大学 一种基于边缘差异约束的单幅图像超分辨率重建方法
JP6957197B2 (ja) * 2017-05-17 2021-11-02 キヤノン株式会社 画像処理装置および画像処理方法
EP3404611A1 (en) * 2017-05-19 2018-11-21 RetinAI Medical GmbH Reducing noise in an image
JP2019008599A (ja) 2017-06-26 2019-01-17 株式会社 Ngr 順伝播型ニューラルネットワークを用いた画像ノイズ低減方法
CN109345474A (zh) * 2018-05-22 2019-02-15 南京信息工程大学 基于梯度域和深度学习的图像运动模糊盲去除方法
CN109035146B (zh) * 2018-08-09 2022-12-20 复旦大学 一种基于深度学习的低质量图像超分方法
JP7258604B2 (ja) 2019-03-05 2023-04-17 キヤノン株式会社 画像処理方法、画像処理装置、プログラム、および学習済みモデルの製造方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020075531A1 (ja) 2018-10-10 2020-04-16 株式会社島津製作所 画像作成装置、画像作成方法および学習済みモデルの作成方法

Also Published As

Publication number Publication date
EP3706069A3 (en) 2020-11-25
EP3706069A2 (en) 2020-09-09
CN111667416B (zh) 2024-09-24
CN111667416A (zh) 2020-09-15
US20200285883A1 (en) 2020-09-10
US11188777B2 (en) 2021-11-30
JP2020144489A (ja) 2020-09-10
EP4742148A2 (en) 2026-05-13
EP3706069B1 (en) 2026-05-06

Similar Documents

Publication Publication Date Title
EP3706069B1 (en) Image processing method, image processing apparatus, learnt model manufacturing method, and image processing system
JP7242185B2 (ja) 画像処理方法、画像処理装置、画像処理プログラム、および、記憶媒体
JP5756099B2 (ja) 撮像装置、画像処理装置、画像処理方法、および画像処理プログラム
JP2021140758A (ja) 学習データの製造方法、学習方法、学習データ製造装置、学習装置、およびプログラム
JP7686428B2 (ja) 画像処理方法、機械学習モデルの生成方法、画像処理装置、画像処理システム、及びプログラム
JP7767338B2 (ja) 画像処理方法、画像処理装置、画像処理システム、およびプログラム
JP7516471B2 (ja) 制御装置、撮像装置、制御方法およびプログラム
JP2022056769A (ja) 画像処理方法、プログラム、画像処理装置、学習済みモデルの製造方法、学習方法、学習装置、および、画像処理システム
JP2020030569A (ja) 画像処理方法、画像処理装置、撮像装置、レンズ装置、プログラム、および、記憶媒体
JP2023055847A (ja) 画像処理方法、画像処理装置、画像処理システム、およびプログラム
JP2025109975A (ja) 学習方法、画像処理方法、およびプログラム
JP2024157989A (ja) 画像処理方法、画像処理プログラムおよび画像処理装置
JP2021039524A (ja) 画像処理方法、画像処理装置、画像処理システム、プログラム、および、学習済みモデルの製造方法
US20250349108A1 (en) Image processing method, image processing apparatus, image processing system, and storage medium
JP2025015313A (ja) 画像処理方法、画像処理装置、画像処理システム、およびプログラム
JP2021086272A (ja) 画像処理方法、プログラム、学習済みモデルの製造方法、画像処理装置、および、画像処理システム
JP2024137693A (ja) 画像処理方法、画像処理装置、学習済みモデルの製造方法、学習装置、画像処理システム、プログラム、および記憶媒体
JP2025015293A (ja) 画像処理方法、画像処理装置、画像処理システム、およびプログラム
JP2023104667A (ja) 画像処理方法、画像処理装置、画像処理システム、およびプログラム
JP2023088349A (ja) 画像処理方法、画像処理装置、画像処理システム、およびプログラム
JP2023116364A (ja) 画像処理方法、画像処理装置、画像処理システム、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220601

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230405

R151 Written notification of patent or utility model registration

Ref document number: 7258604

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151