JP7458857B2 - 画像処理装置、画像処理方法及びプログラム - Google Patents

画像処理装置、画像処理方法及びプログラム Download PDF

Info

Publication number
JP7458857B2
JP7458857B2 JP2020066048A JP2020066048A JP7458857B2 JP 7458857 B2 JP7458857 B2 JP 7458857B2 JP 2020066048 A JP2020066048 A JP 2020066048A JP 2020066048 A JP2020066048 A JP 2020066048A JP 7458857 B2 JP7458857 B2 JP 7458857B2
Authority
JP
Japan
Prior art keywords
noise
image processing
image
stability
learning
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
JP2020066048A
Other languages
English (en)
Other versions
JP2021163319A (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 JP2020066048A priority Critical patent/JP7458857B2/ja
Priority to US17/209,922 priority patent/US11941862B2/en
Publication of JP2021163319A publication Critical patent/JP2021163319A/ja
Application granted granted Critical
Publication of JP7458857B2 publication Critical patent/JP7458857B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • G06F18/2193Validation; Performance evaluation; Active pattern learning techniques based on specific statistical tests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • G06T5/60
    • G06T5/70
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20224Image subtraction

Landscapes

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

Description

本発明は、特に、画像処理モデルを学習するために用いて好適な画像処理装置、画像処理方法及びプログラムに関する。
近年、デジタルカメラ等の撮像装置に対して、暗所や夜間などの環境下でも高画質な画像を得ることに対する要求が高まりつつある。このような環境下ではISO感度を上げることで、明るい画像を撮影することができる。しかしながら、ISO感度を上げると光に対する反応が高くなり、明るい画像を得ることができるが、ノイズに対する反応も高くなり、ノイズ量が増えるという課題がある。このような課題を解決するために、高感度で撮影した画像のノイズを画像処理によって低減するノイズ低減手法の開発が行われてきている。
非特許文献1には、CNN(Convolutional Neural Network)を用いた機械学習の手法によるノイズ低減手法が開示されている。この手法では、同シーンの低ノイズ画像を教師画像として学習することで、高ノイズ画像を入力して低ノイズ画像を出力するようなニューラルネットワークを学習するとしている。
Mao, Xiaojiao, Chunhua Shen, and Yu-Bin Yang. "Image restoration using very deep convolutional encoder-decoder networks with symmetric skip connections." Advances in neural information processing systems. 2016.
非特許文献1に記載の手法においては、入力する高ノイズ画像のノイズ強度が強い場合、高ノイズ画像のノイズパターンに起因した偽模様が出力されるような弊害が起こりやすい。これは、ノイズ強度が高まるに従って教師画像中の弱い輝度値のテクスチャと入力データのノイズの輝度値とが接近して、互いの区別がつきにくくなることに起因する。教師画像中の弱い輝度値のテクスチャに対してはそのテクスチャを再現するように学習されているため、入力データ中の弱い輝度値のノイズが教師画像中のテクスチャに偶然似たパターンを示すと、誤反応してしまう可能性がある。その結果、実際のシーンには存在しない偽模様を出力することがある。
本発明は前述の問題点に鑑み、ノイズを低減する処理を行う際に、ノイズパターンに起因する偽模様を出力するような弊害を低減できるように画像処理モデルを学習することを目的としている。
本発明に係る画像処理装置は、ノイズを含む画像からノイズを除去するための画像処理モデルを学習する画像処理装置であって、前記画像処理モデルを学習するための学習データである低ノイズ画像と、前記低ノイズ画像のシーンに対応し、ノイズのパターンが異なる複数の高ノイズ画像とを取得する取得手段と、前記複数の高ノイズ画像をそれぞれ前記画像処理モデルに入力することによって得られる複数の出力画像と前記低ノイズ画像との誤差をそれぞれ算出する誤差算出手段と、前記複数の出力画像の間の誤差に基づいて、ノイズに対する安定度を算出する安定度算出手段と、前記誤差算出手段によって算出された誤差と前記安定度算出手段によって算出された安定度とを含む損失関数を用いて前記画像処理モデルを学習する学習手段とを有することを特徴とする。
本発明によれば、ノイズを低減する処理を行う際に、ノイズパターンに起因する偽模様を出力するような弊害を低減できるように画像処理モデルを学習することができる。
第1の実施形態の画像処理装置の内部構成例を示すブロック図である。 学習処理の基本的な処理手順の一例を示すフローチャートである。 学習データを取得する処理手順の一例を示すフローチャートである。 フィードフォワード処理の手順の一例を示すフローチャートである。 未知の画像に対してノイズ低減の画像処理を行う処理手順の一例を示すフローチャートである。 第3の実施形態の画像処理装置の内部構成例を示すブロック図である。 第4の実施形態の画像処理装置の内部構成例を示すブロック図である。 第4の実施形態におけるフィードフォワード処理の手順の一例を示すフローチャートである。
(第1の実施形態)
以下、本発明の第1の実施形態について、図面を参照しながら説明する。本実施形態で説明する画像処理装置は、画像のノイズ低減を行うものとして説明する。
図1は、本実施形態における画像処理装置100の内部構成例を示すブロック図である。
図1において、CPU101は画像処理装置100全体を制御する。入力部105は、キーボード・タッチパネル等で構成されており、画像処理の対象となる画像の指定などユーザからの入力を受け付ける。表示部106は、液晶ディスプレイ等で構成されており、処理対象の画像や処理結果の画像を表示する。通信部107は、他の装置との通信により、データの送受信を行う。
第1のメモリ103には主に制御プログラム108が格納され、第2のメモリ104には主に後述の各種データが格納されている。また、これらの構成はバス102で接続されている。なお、第1のメモリ103及び第2のメモリ104に格納されているデータ等は図1に示す例に限定されるものではない。
第2のメモリ104には、学習データセット121が予め格納されており、学習データセット121は低ノイズ画像が一つ以上保持されているデータセットである。また、第2のメモリ104には、本実施形態における画像処理モデルの一例であるCNN等の多層のニューラルネットワーク120も格納されている。詳細は後述するが、学習部110によりこの画像処理モデルを学習し、学習されるニューラルネットワーク120のパラメータが第2のメモリ104に保存され、学習するに従ってこのパラメータが更新される。また、ニューラルネットワーク120は画像を入力して画像を出力するような構成になっている。なお、本実施形態では、画像処理モデルの一例としてニューラルネットワークを用いるが、画像処理モデルは学習可能なものであれば、ニューラルネットワークに限定されない。
第1のメモリに格納されている制御プログラム108は、少なくとも本実施形態に係る処理を実行させるためのプログラムが含まれている。CPU101が制御プログラム108を実行することにより、学習部110、学習データ取得部111、推定誤差算出部112、安定度算出部113、損失値算出部114、及び画像処理部115として機能する。なお、これらの各部はCPU101を用いてソフトウェアで実現しても良いし、一部を電子回路などのハードウェアで実現するようにしてもよい。また、これらの各部における処理は、フローチャートの説明で後述する。
本実施形態においては、画像処理部115は、学習部110によって学習された画像処理モデル(ニューラルネットワーク120)を用いて画像処理を行う。ニューラルネットワーク120では、実写画像またはCG画像に人工的なノイズを付加した高ノイズ画像を入力とし、ノイズを付加する前の低ノイズ画像を教師画像とすることで、高ノイズ画像からノイズが除去された画像を出力する。これにより、ニューラルネットワーク120を学習する。なお、学習の基本的な処理は公知の技術と同様であり、所定の損失関数によって算出された損失値に基づいて誤差逆伝搬法などの方法を用いてニューラルネットワークを学習する。これについては周知の技術であるので詳細な説明は省略する。本実施形態においては、損失値の算出方法に特徴があり、以下ではその方法について重点的に説明する。
図2は、本実施形態における学習処理の基本的な処理手順の一例を示すフローチャートである。
まず、ステップS201において、学習データ取得部111により、学習データを取得する。ここで、学習データ取得部111による処理の詳細について説明する。
図3は、図2のステップS201の詳細な処理手順の一例を示すフローチャートである。
まず、ステップS301において、学習データ取得部111により、学習データセット121から低ノイズ画像を1つ取り出し、第2のメモリ104に低ノイズ画像122として格納する。
続いてステップS302において、学習データ取得部111により、低ノイズ画像122からノイズ強度を生成し、第2のメモリ104にノイズ強度134として格納する。ここでノイズ強度は、ノイズモデルによって定義されるノイズの強度を表す値であり、ノイズモデルはデジタル画像の撮像過程におけるイメージセンサの暗電流ノイズやショットノイズをモデル化した関数である。例えば、ノイズ強度をノイズの標準偏差として表し、低ノイズ画像の輝度値を変数Iとして、ノイズの標準偏差Iσを以下の式(1)で定義するような関数である。
Figure 0007458857000001
ここで、式(1)中のI0とKは定数であり、イメージセンサにおけるノイズの性質によって事前に決められた値である。なお、ノイズモデルにどのような関数を用いるかいついては特に限定されない。本実施形態においては、低ノイズ画像122の輝度値を式(1)のノイズモデルの関数にあてはめることでノイズ強度を算出する。このように、ノイズ強度は輝度値に応じた値になり、低ノイズ画像122のノイズ強度134は、低ノイズ画像122と同じ要素数のマップとして表現される。
次に、ステップS303において、学習データ取得部111により、低ノイズ画像122に対してノイズを与えた第1の高ノイズ画像を生成し、第2のメモリ104に第1の高ノイズ画像123として格納する。この処理では、前のステップS302で生成したノイズ強度134の標準偏差に従ってノイズ強度134と同数要素の乱数マップを発生させ、これを低ノイズ画像122に要素ごとに加算すればよい。
ステップS304において、学習データ取得部111により、低ノイズ画像122に対してステップS303で与えたノイズとは異なるパターンのノイズを与えた第2の高ノイズ画像を生成し、メモリ104に第2の高ノイズ画像124として格納する。この処理では、ノイズ強度134からステップS303とは異なる乱数系列を用いてステップS303とは異なる乱数マップを発生させ、前のステップS303と同様に、低ノイズ画像122に要素ごとに加算すればよい。
第1の高ノイズ画像123と第2の高ノイズ画像124は、元の画像はいずれも同じ低ノイズ画像122であり、与えられたノイズのパターンがそれぞれ異なるだけである。なお、本実施形態では、1つの低ノイズ画像から2つの高ノイズ画像を生成するが、予め2つの高ノイズ画像が生成されていてもよい。例えば、学習データセット121の中に、同じシーンに対する低ノイズ画像と2つの高ノイズ画像とが予め保持されていてもよい。この場合、同じシーンに対して低ISO感度設定で1枚、高ISO感度設定で2枚の撮影を行い、3枚の画像がファイル名などで対応付けられた状態で保持されていればよい。また、この場合には、学習データ取得部111は、ステップS201の処理として、学習データセット121から、対応付けられた1枚の低ノイズ画像と2枚の高ノイズ画像を取り出してそれぞれ第2のメモリ104に格納すればよい。
図2の説明に戻り、次に、ステップS202において、学習部110により、フィードフォワード処理を行う。ここでフィードフォワード処理とは、ニューラルネットワーク120に入力データを入力し、その出力値を得る処理である。
図4は、図2のステップS202の詳細な処理手順の一例を示すフローチャートである。
まず、ステップS401において、学習部110により、第2のメモリ104に格納されている第1の高ノイズ画像123をニューラルネットワーク120に入力し、得られた最終出力を第1の推定出力値125として第2のメモリ104に格納する。
続いてステップS402において、学習部110により、第2のメモリ104に格納されている第2の高ノイズ画像124をニューラルネットワーク120に入力し、得られた最終出力を第2の推定出力値126として第2のメモリ104に格納する。一般的なニューラルネットワークの学習処理におけるフィードフォワード処理は一つの入力データに対して一つの出力を得る処理であるが、本実施形態においては、2つの入力データに対して2つの出力を得るようにしている。
図2の説明に戻り、次に、ステップS203において、推定誤差算出部112により、推定誤差の算出を行う。この処理では、推定誤差算出部112は、低ノイズ画像122を教師値として、推定出力値と教師値との誤差を算出する。具体的にはまず、推定誤差算出部112により、低ノイズ画像122と第1の推定出力値125との間の誤差を算出し、第1の推定誤差127として第2のメモリ104に格納する。そして、推定誤差算出部112により、低ノイズ画像122と第2の推定出力値126との間の誤差を算出し、第2の推定誤差128として第2のメモリ104に格納する。ここで、推定誤差は、例えば、低ノイズ画像と推定出力値との各要素(ピクセル)ごとの値の差のL1距離やL2距離で定義するなど、どのように推定誤差を定義してもよい。本実施形態では、例えば、推定誤差は以下の式(2)に従って算出する。
Figure 0007458857000002
ここで、式(2)中の差分演算(-)では、要素ごとに差分算出するものとする。すなわち、推定誤差は、要素ごとの差分の絶対値の総和をとり、総要素数で割って平均をとるものとする。
次にステップS204において、安定度算出部113により、対ノイズ安定度を算出し、対ノイズ安定度129として第2のメモリ104に格納する。この処理では、安定度算出部113は、第2のメモリ104に格納されている第1の推定出力値125と第2の推定出力値126との間の誤差を算出することにより対ノイズ安定度を算出する。ここで、誤差は、例えば、第1の推定出力値125及び第2の推定出力値126の要素ごとの値の差のL1距離やL2距離で定義するなど、どのように誤差を定義してもよい。本実施形態においては、対ノイズ安定度は、第1の推定出力値125と第2の推定出力値126とが互いに似ているほど値が小さくなる。例えば、以下の式(3)に従って、要素ごとに差分をとって平均をとるなどして2つの推定出力値の誤差を算出して対ノイズ安定度を算出する。
Figure 0007458857000003
次に、ステップS205において、損失値算出部114により、損失値を算出し、損失値131として第2のメモリ104に格納する。この処理では、損失値算出部114は、第1の推定誤差127と第2の推定誤差128と対ノイズ安定度129との重み付け和を損失値として算出する。重み付け和の算出には、第2のメモリ104に予め保持されている重み係数130を用いる。本実施形態においては、損失値は3つの値の重みづけ和となるので、重み係数130は3つの重み係数からなる。それぞれの重み係数をα、β、γとすると、損失値算出部114は、以下の式(4)を用いて損失値を算出する。
Figure 0007458857000004
ここで、式(4)中の第1項と第2項は、ニューラルネットワーク120の出力結果が教師画像である低ノイズ画像122にどれくらい近いかという損失を表している。これは一般的に再構成損失と呼ばれるものである。この項の値が小さいほど、高ノイズ画像に含まれるノイズが適切に除去されたことになる。
一方で、式(4)中の第3項は、ニューラルネットワークがノイズの差異に対してどれくらい安定しているかという性質を表している。この第3項が大きくなるほど、ニューラルネットワーク120はわずかなノイズの違いによって異なる出力結果が得られやすくなる。本実施形態では、さらに第3項が小さくなるように学習することによって、低ノイズ画像に与えたノイズのパターンがどのようなものであっても、同じような結果を出力するように学習される。したがって、ノイズパターンに起因する偽模様を出力しないように学習される。
弱い輝度値のパターンは、教師画像においてもノイズパターンにおいても存在する。このため、第1項および第2項のみからなる損失関数では、教師画像に元々含まれているようなパターンに類似したノイズパターンが入力されると、偽模様が出力されるように学習されてしまう。そこで本実施形態では、損失関数に第3項を含むようにすることによって、ノイズパターンが変わっても出力結果が変動しないように制約を付すようにしている。これにより、ノイズのパターンと類似するパターンが教師画像に含まれていたとしてもそのパターンには反応しないように学習される。なお、低ノイズ画像をどの程度再現し、偽模様の発生をどの程度抑制するかは、重み係数130の設定によって調整できる。
次に、ステップS206において、学習部110により、前のステップS205で算出された損失値に基づいてニューラルネットワーク120のパラメータを更新する。これは、ニューラルネットワークの学習で一般的に行われている誤差逆伝搬法などを用いる学習処理であり、公知の手法を用いるものとする。
以上のようにステップS201~S206までの処理で一つの学習データに対する学習が完了すると、ステップS207において、学習部110により、学習が終了したかどうかを判定する。この判定の結果、学習が終了した場合は処理を終了する。学習の終了条件としては、例えば、損失値が所定値以上下がらなくなった場合などを終了条件とする。この判定の結果、学習が終了していない場合はステップS201に戻り、学習データセット121から新たな学習データを取り出して処理を継続する。このとき、学習データセット121中のすべての学習データを処理し終わったら初めの学習データに戻って繰り返せばよい。
なお、本実施形態では、学習処理において、高ノイズ画像を2種類生成し、推定誤差および対ノイズ安定度を算出する際には2種類の推定出力値に対してそれぞれ算出したが、この数は3種類以上であってもよい。
次に、学習部110などによって学習された学習済みのニューラルネットワーク120を用いて、未知の画像に対してノイズ低減の画像処理を行う手順について説明する。
図5は、本実施形態における画像処理部115による処理手順の一例を示すフローチャートである。
まず、ステップS501において、画像処理部115により、入力部105を介して画像処理の対象となる画像を取得し、入力画像132として第2のメモリ104に格納する。なお、画像の取得方法については、特に限定されない。本実施形態の画像処理装置100が撮像部を備えている場合には、入力部105を介さず撮像部(図示せず)から直接画像を取得して第2のメモリ104に格納してもよい。また、他の装置から通信部107を介して画像を取得して第2のメモリ104に格納してもよい。
次に、ステップS502において、画像処理部115により、入力画像132をニューラルネットワーク120に入力し、その出力を出力画像133として第2のメモリ104に格納する。そして、ステップS503において、画像処理部115は、第2のメモリ104から出力画像133を読み出して表示部106に出力して表示する。なお、表示部106に出力するかわりに、通信部107を介して他の装置に送信するなどしてもよい。
以上のように本実施形態によれば、ノイズパターンによらず安定した出力結果が得られるように画像処理モデルの学習および画像処理を行うことができる。
(第2の実施形態)
以下、本発明の第2の実施形態について説明する。なお、第1の実施形態と同一構成部分についてはその説明を省略し、第1の実施形態と異なる点について説明する。本実施形態においては、安定度算出部113の算出方法が第1の実施形態と異なる。
対ノイズ安定度は、ノイズパターンによってニューラルネットワークの推定結果が変動する度合を表す指標である。第1の実施形態では、式(3)に示すように、2つの推定出力値の要素ごとの差分絶対値の平均値を対ノイズ安定度と定義した。
一方、ノイズの違う入力画像に対する推定出力値の変動量は、高ノイズ画像を生成する際に与えたノイズの量との正相関があるため、ノイズ量が小さい領域での変動量は小さめに出る傾向がある。したがって、式(4)の損失関数における対ノイズ安定度の項(第3項)は、ノイズ量がもともと小さい領域では小さい値になり、ノイズ安定度の指標として不十分なものとなってしまう。そこで本実施形態では、このような問題の対策として、第2のメモリ104に格納されたノイズ強度134を用いて対ノイズ安定度を正規化し、以下のような式(5)で対ノイズ安定度を算出する。
Figure 0007458857000005
式(5)において、ノイズ強度による除算は要素ごとに行うものとする。なお、ノイズ強度134で除算する代わりに、図3のステップS303、S304で高ノイズ画像を生成する際に低ノイズ画像122に加算した乱数マップで除算してもよい。
また、以下のような式(6)を用い、推定出力値の特徴量の差異によって対ノイズ安定度を算出してもよい。ここで、特徴量としては何らかの統計量を用いる。
Figure 0007458857000006
式(6)中の関数Fは、引数である推定出力値の各要素に対してその要素近傍での特徴量を算出する関数であり、例えば、その要素近傍での標準偏差の値を算出する関数である。画像中の統計量がおおむね同じであれば人間には同じ印象を与えることが多い。例えば、2つの画像領域が同じ程度に乱雑であれば、要素ごとの値が一致していなくても、同程度の印象を与える。この性質を用い、要素ごとの対ノイズ安定度を要素近傍の標準偏差の値として算出することで、対ノイズ安定度を過剰に制約しないで学習することができる。なお、特徴量として標準偏差を用いる例を説明したが、それに限るものではない。近傍領域の平均、最大値、最小値、中央値などの各種統計量や、その他の何らかの特徴量を用いて対ノイズ安定度を算出してもよい。
また、以下のような式(7)を用い、推定誤差の大きさで重みを付けて対ノイズ安定度を算出してもよい。
Figure 0007458857000007
ここで、式(7)中の平均推定誤差とは、第1の推定誤差127と第2の推定誤差128とに対し、要素ごとに平均をとったものである。上記の平均推定誤差による除算では、要素ごとに除算を行うものとする。この式(7)によれば、平均推定誤差が小さい要素ほど対サイズ安定度が大きく算出されるようになる。すなわち、推定出力値が教師画像に近く、再構成損失による学習が行われにくいもの(式(4)の損失関数の第1、第2項が小さいもの)ほど、第3項の対ノイズ安定度の損失が効くようになる。従来の学習方法では、再構成損失のみを基準にしてニューラルネットワークが学習されており、それだけだと偽模様の弊害が出力される。本実施形態では、再構成損失では正しく学習できなくなっている部分に対して、対ノイズ安定度の損失を大きく効かせるようにすることで、偽模様の弊害を抑制することができる。
以上のように本実施形態によれば、より適切に対ノイズ安定度を算出するようにしたので、偽模様などの弊害をより抑制した画像処理モデルを学習することができる。
(第3の実施形態)
以下、本発明の第3の実施形態について説明する。本実施形態では、第1の実施形態と同様の処理については説明を省略し、第1の実施形態と異なる点についてのみ説明する。
図6は、本実施形態における画像処理装置600の内部構成例を示すブロック図である。
本実施形態では、第1のメモリ103に格納された制御プログラム108において、特徴抽出部116を有する。特徴抽出部116は、教師画像である低ノイズ画像122に対して特徴抽出処理を行い、その結果を特徴強度135として第2のメモリ104に格納する。特徴抽出処理とは、例えばエッジ抽出処理などが該当するが、それに限定されるものでなく、各要素近傍のコントラストなどの特徴を抽出するようにしてもよい。特徴強度135は低ノイズ画像122において特徴が強い領域ほど大きい値を持つマップとして保持される。また、特徴強度135の要素数は低ノイズ画像122と同じであり、第1の推定出力値125及び第2の推定出力値126の要素数とも同じものとなる。
本実施形態において、安定度算出部113により、以下の式(8)によって対ノイズ安定度を算出する。
Figure 0007458857000008
ここで式(8)において、特徴強度135による除算は、要素ごとに行われるものとする。式(8)によれば、エッジなどの特徴が多い部分では対ノイズ安定度は小さめに算出されるようになる。偽模様を出力するような弊害は、特徴が強い領域であれば、そのような領域に弱い偽模様が出ていても目立たないため、大きな問題にならないことが多い。逆に、特徴が小さい領域では、偽模様が目立つことから、対ノイズ安定度が大きくなるように算出される。
以上のように本実施形態によれば、特徴の大きさに基づいて偽模様などの弊害が大きな問題となる領域を重点的に評価することができる。これにより、より弊害の少ない画像処理モデルを学習することができる。
(第4の実施形態)
以下、本発明の第4の実施形態について説明する。本実施形態では、第1の実施形態と同様の処理については説明を省略し、第1の実施形態と異なる点についてのみ説明する。
図7は、本実施形態における画像処理装置700の内部構成例を示すブロック図である。本実施形態においては、第1の中間推定出力値136と、第2の中間推定出力値137とを第2のメモリ104に格納する点が第1の実施形態と異なっている。また、本実施形態における学習処理の基本的な流れは、図2と同様であるが、ステップS202におけるフィードフォワード処理が図4で説明した手順と異なっている。
図8は、本実施形態におけるフィードフォワード処理の詳細な手順の一例を示すフローチャートである。
まず、ステップS801において、学習部110により、第2のメモリ104に格納されている第1の高ノイズ画像123をニューラルネットワーク120に入力し、得られた最終出力を第1の推定出力値125として第2のメモリ104に格納する。さらに、ニューラルネットワーク120の所定の中間層からの出力を、第1の中間推定出力値136として第2のメモリ104に格納する。ここで、出力する中間層は予め設定されておくものとし、中間層はどの層であってもよく、複数であってもよい。
続いて、ステップS802において、学習部110により、第2のメモリ104に格納されている第2の高ノイズ画像124をニューラルネットワーク120に入力し、得られた最終出力を第2の推定出力値126として第2のメモリ104に保持する。さらに、ニューラルネットワーク120の所定の中間層からの出力を、第2の中間推定出力値137として第2のメモリ104に格納する。出力を保持する中間層の設定についてはステップS801の設定と同様である。第1~第3の実施形態においては、ニューラルネットワーク120の最終出力のみを第2のメモリ104に格納していたが、本実施形態では、中間層からの出力も第2のメモリ104に格納している。
次に、本実施形態における安定度算出部113の処理について説明する。本実施形態では、以下の式(9)に従って対ノイズ安定度を算出する。
Figure 0007458857000009
式(9)中のa、bは重み係数であり、式(4)の3つの重み係数α、β、γとともに、重み係数130の一部として第2のメモリ104に予め保持されている。また、ステップS801及びS802でそれぞれ複数の中間層から中間推定出力値を得る場合には、式(9)中の中間推定出力の誤差を算出している項をその分追加し、それに応じた数の重み係数も保持しておくものとする。
以上のように本実施形態によれば、ノイズパターンだけが異なる2つの入力に対して、所定の中間層からの出力結果も反映して画像処理モデルを学習することができる。多層のニューラルネットワークは層ごとに反応する対象が異なっており、特定の層が特定の弊害と関連がある場合がある。そのような層の出力がノイズパターンの差によって変動しないように制約づけて学習することで、効率良く弊害を抑制することができる。なお、第2又は第3の実施形態において、本実施形態を組み合わせてもよい。
(その他の実施形態)
上述の各実施形態では、イメージセンサの暗電流ノイズやショットノイズのようなノイズを低減する処理を学習するものとして説明したが、ノイズの種類はこれに限定しない。教師画像に対してなんらかの変動を加えた画像を入力画像として教師画像の復元を学習させる場合には、その変動をノイズと定義して学習することもできる。そのような変動が与えられた入力画像を高ノイズ画像とみなすことによって、上述の各実施形態での処理が適用できる。
変動の一例としては、大気のゆらぎ補正処理などにも適用できる。この場合、教師画像に対して異なる複数のゆらぎ付与処理を加えた複数の画像をそれぞれ高ノイズ画像とみなして学習を行えばよい。変動の別の例としては、画像の欠落を補完するインペインティング処理にも適用できる。その場合は教師画像に対して複数の異なる画像欠落処理を行った複数の画像をそれぞれ高ノイズ画像とみなせばよい。さらに変動の別の例としては、低解像度画像から高解像度画像を復元する超解像処理にも適用できる。その場合は教師画像である高解像度画像に対して複数の異なる方法で低解像度化した複数の低解像度画像をそれぞれ高ノイズ画像とみなせばよい。いずれの場合も、上述の各実施形態で説明した構成をとることにより、学習時に与えた変動に対して安定した出力をするように学習され、偽模様を出力するなどの弊害を抑制することができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
110 学習部、111 学習データ取得部、112 推定誤差算出部、113 安定度算出部、114 損失値算出部

Claims (9)

  1. ノイズを含む画像からノイズを除去するための画像処理モデルを学習する画像処理装置であって、
    前記画像処理モデルを学習するための学習データである低ノイズ画像と、前記低ノイズ画像のシーンに対応し、ノイズのパターンが異なる複数の高ノイズ画像とを取得する取得手段と、
    前記複数の高ノイズ画像をそれぞれ前記画像処理モデルに入力することによって得られる複数の出力画像と前記低ノイズ画像との誤差をそれぞれ算出する誤差算出手段と、
    前記複数の出力画像の間の誤差に基づいて、ノイズに対する安定度を算出する安定度算出手段と、
    前記誤差算出手段によって算出された誤差と前記安定度算出手段によって算出された安定度とを含む損失関数を用いて前記画像処理モデルを学習する学習手段とを有することを特徴とする画像処理装置。
  2. 前記安定度算出手段は、さらにノイズ強度に基づいて前記安定度を算出することを特徴とする請求項1に記載の画像処理装置。
  3. 前記安定度算出手段は、さらに前記誤差算出手段によって算出された誤差に基づいて前記安定度を算出することを特徴とする請求項1に記載の画像処理装置。
  4. 前記安定度算出手段は、前記複数の出力画像の間の特徴量の差異に基づいて前記安定度を算出することを特徴とする請求項1に記載の画像処理装置。
  5. 前記低ノイズ画像から特徴を抽出して特徴強度を算出する特徴抽出手段をさらに有し、
    前記安定度算出手段は、さらに前記特徴抽出手段によって算出された特徴強度に基づいて前記安定度を算出することを特徴とする請求項1に記載の画像処理装置。
  6. 前記画像処理モデルは多層のニューラルネットワークであり、
    前記安定度算出手段は、前記多層のニューラルネットワークの中の少なくとも1つの中間層から得られる出力結果に基づいて前記安定度を算出することを特徴とする請求項1~5の何れか1項に記載の画像処理装置。
  7. 前記学習手段によって学習された画像処理モデルに基づいて、ノイズを除去した画像を出力する画像処理手段をさらに有することを特徴とする請求項1~6の何れか1項に記載の画像処理装置。
  8. ノイズを含む画像からノイズを除去するための画像処理モデルを学習する画像処理方法であって、
    前記画像処理モデルを学習するための学習データである低ノイズ画像と、前記低ノイズ画像のシーンに対応し、ノイズのパターンが異なる複数の高ノイズ画像とを取得する取得工程と、
    前記複数の高ノイズ画像をそれぞれ前記画像処理モデルに入力することによって得られる複数の出力画像と前記低ノイズ画像との誤差をそれぞれ算出する誤差算出工程と、
    前記複数の出力画像の間の誤差に基づいて、ノイズに対する安定度を算出する安定度算出工程と、
    前記誤差算出工程において算出された誤差と前記安定度算出工程において算出された安定度とを含む損失関数を用いて前記画像処理モデルを学習する学習工程とを有することを特徴とする画像処理方法。
  9. ノイズを含む画像からノイズを除去するための画像処理モデルを学習する画像処理装置を制御するためのプログラムであって、
    前記画像処理モデルを学習するための学習データである低ノイズ画像と、前記低ノイズ画像のシーンに対応し、ノイズのパターンが異なる複数の高ノイズ画像とを取得する取得工程と、
    前記複数の高ノイズ画像をそれぞれ前記画像処理モデルに入力することによって得られる複数の出力画像と前記低ノイズ画像との誤差をそれぞれ算出する誤差算出工程と、
    前記複数の出力画像の間の誤差に基づいて、ノイズに対する安定度を算出する安定度算出工程と、
    前記誤差算出工程において算出された誤差と前記安定度算出工程において算出された安定度とを含む損失関数を用いて前記画像処理モデルを学習する学習工程とをコンピュータに実行させるためのプログラム。
JP2020066048A 2020-04-01 2020-04-01 画像処理装置、画像処理方法及びプログラム Active JP7458857B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020066048A JP7458857B2 (ja) 2020-04-01 2020-04-01 画像処理装置、画像処理方法及びプログラム
US17/209,922 US11941862B2 (en) 2020-04-01 2021-03-23 Apparatus, method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020066048A JP7458857B2 (ja) 2020-04-01 2020-04-01 画像処理装置、画像処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2021163319A JP2021163319A (ja) 2021-10-11
JP7458857B2 true JP7458857B2 (ja) 2024-04-01

Family

ID=77921634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020066048A Active JP7458857B2 (ja) 2020-04-01 2020-04-01 画像処理装置、画像処理方法及びプログラム

Country Status (2)

Country Link
US (1) US11941862B2 (ja)
JP (1) JP7458857B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019211475A (ja) 2018-05-31 2019-12-12 キヤノンメディカルシステムズ株式会社 医用画像処理装置及びプログラム
JP2020035290A (ja) 2018-08-31 2020-03-05 オムロン株式会社 検出器生成装置、モニタリング装置、検出器生成方法及び検出器生成プログラム
JP2020042760A (ja) 2018-09-07 2020-03-19 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 情報処理方法、情報処理装置、及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10311552B2 (en) * 2017-04-06 2019-06-04 Pixar De-noising images using machine learning
CN107767343B (zh) * 2017-11-09 2021-08-31 京东方科技集团股份有限公司 图像处理方法、处理装置和处理设备
EP3620989A1 (en) * 2018-09-07 2020-03-11 Panasonic Intellectual Property Corporation of America Information processing method, information processing apparatus, and program
US11783451B2 (en) * 2020-03-02 2023-10-10 GE Precision Healthcare LLC Systems and methods for reducing colored noise in medical images using deep neural network
CN113808025A (zh) * 2020-06-11 2021-12-17 通用电气精准医疗有限责任公司 图像降噪方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019211475A (ja) 2018-05-31 2019-12-12 キヤノンメディカルシステムズ株式会社 医用画像処理装置及びプログラム
JP2020035290A (ja) 2018-08-31 2020-03-05 オムロン株式会社 検出器生成装置、モニタリング装置、検出器生成方法及び検出器生成プログラム
JP2020042760A (ja) 2018-09-07 2020-03-19 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 情報処理方法、情報処理装置、及びプログラム

Also Published As

Publication number Publication date
US11941862B2 (en) 2024-03-26
US20210312593A1 (en) 2021-10-07
JP2021163319A (ja) 2021-10-11

Similar Documents

Publication Publication Date Title
US11055827B2 (en) Image processing apparatus and method
CN110008817B (zh) 模型训练、图像处理方法、装置、电子设备及计算机可读存储介质
Gallo et al. Artifact-free high dynamic range imaging
US9275445B2 (en) High dynamic range and tone mapping imaging techniques
KR101871098B1 (ko) 이미지 처리 방법 및 장치
US11188777B2 (en) Image processing method, image processing apparatus, learnt model manufacturing method, and image processing system
WO2018176925A1 (zh) Hdr图像的生成方法及装置
US11127117B2 (en) Information processing method, information processing apparatus, and recording medium
KR20210139450A (ko) 이미지 디스플레이 방법 및 디바이스
US20190294931A1 (en) Systems and Methods for Generative Ensemble Networks
JP7353803B2 (ja) 画像処理装置、画像処理方法、及びプログラム
Celebi et al. Fuzzy fusion based high dynamic range imaging using adaptive histogram separation
CN111047543A (zh) 图像增强方法、装置和存储介质
CN116612015A (zh) 模型训练方法、图像去摩尔纹方法、装置及电子设备
CN113344804B (zh) 一种弱光图像增强模型的训练方法和弱光图像增强方法
JP5617841B2 (ja) 画像処理装置、画像処理方法および画像処理用プログラム
US7248745B1 (en) Differential image adjustments
JP7446797B2 (ja) 画像処理装置、撮像装置、画像処理方法およびプログラム
JP7458857B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP6624061B2 (ja) 画像処理方法、画像処理装置、及び画像処理プログラムを記憶する記録媒体
JP2021086284A (ja) 画像処理装置、画像処理方法、及びプログラム
CN111932514A (zh) 一种图像噪声水平估计、抑制方法、装置及电子设备
JP2017033448A (ja) 画像処理装置、プログラム及び画像処理方法
Tomaszewska et al. Dynamic scenes HDRI acquisition
US20220292640A1 (en) Image processing apparatus, image forming system, image processing method, and non-transitory computer-readable storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240209

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: 20240220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240319

R151 Written notification of patent or utility model registration

Ref document number: 7458857

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151