JP7283156B2 - 画像処理装置及びプログラム - Google Patents

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

Info

Publication number
JP7283156B2
JP7283156B2 JP2019051560A JP2019051560A JP7283156B2 JP 7283156 B2 JP7283156 B2 JP 7283156B2 JP 2019051560 A JP2019051560 A JP 2019051560A JP 2019051560 A JP2019051560 A JP 2019051560A JP 7283156 B2 JP7283156 B2 JP 7283156B2
Authority
JP
Japan
Prior art keywords
image
unit
block
image processing
capacity
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
JP2019051560A
Other languages
English (en)
Other versions
JP2020154605A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2019051560A priority Critical patent/JP7283156B2/ja
Publication of JP2020154605A publication Critical patent/JP2020154605A/ja
Application granted granted Critical
Publication of JP7283156B2 publication Critical patent/JP7283156B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Description

本発明は、画像処理装置及びプログラムに関する。
従来より、劣化の生じている画像を修復する画像処理装置が知られている。劣化の生じている画像を修復する技術として、劣化の生じている入力画像を複数のブロックに分割し、ブロック化されたデータを複数のクラスに分類してその分類に対応するクラスコードを出力し、クラスコードに応じて入力画像に対応する劣化の無い画像のデータを出力することで、劣化した画像を復元する画像復元装置が開示されている(例えば、特許文献1参照)。
特開平7-67028号公報
ところで、画像は高解像度化が進んでおり、高解像度の画像は画像容量が大容量になってきている。大容量の画像に対しても、高速に画像処理する要求が高まっており、高速処理可能なGPU(Graphics Processing Unit)が注目されている。このGPUを用いて、より高度な画像処理、例えば、GPUを用いた画像処理部において劣化画像を修復する画像処理を行う場合、劣化画像を修復するように学習された画像処理部で劣化画像を修復する。しかし、GPUは処理可能な画像容量(例えば、画像サイズ)が定められており、画像処理可能な画像サイズを超える画像を画像処理することが困難である。
本発明は、画像の学習として予め定められた画像容量を超える画像が入力された場合であっても、画像の学習を可能とする画像処理装置を提供することを目的とする。
上記目的を達成するために、第1態様は、予め定めた第1画像容量以下の容量の画像を画像処理可能な画像処理部を用いて予め定めた画像処理を実行する画像処理装置において、入力画像が、前記第1画像容量以下の容量の第1入力画像か、前記第1画像容量を超える容量の第2入力画像かを判別する判別部と、前記画像処理部によって予め定めた画像処理を行うことを学習した第1学習モデルを用いて、前記判別部で判別された前記第1入力画像を、前記予め定めた画像処理を行って第1画像を生成する第1画像生成部と、前記判別部で判別された前記第2入力画像を、各々が前記第1画像容量以下の容量の複数のブロック画像に分割する画像分割部と、前記画像処理部によって前記予め定めた画像処理を行うことを学習した第2学習モデルを用いて、前記画像分割部で分割された前記複数のブロック画像の各々を、前記予め定めた画像処理を行って前記複数のブロック画像毎の第2画像を生成する第2画像生成部と、前記第2画像生成部によって生成された前記複数のブロック画像毎の第2画像の各々を、前記複数のブロック画像におけるブロックの位置に対応させて統合する画像統合部と、を備えた画像処理装置である。
第2態様は、第1態様の画像処理装置において、前記第2学習モデルは、前記複数のブロック画像の各々について、前記複数のブロック画像におけるブロック位置に対応付けて学習が行われた学習モデルである
第3態様は、第1態様又は第2態様の画像処理装置において、前記第2学習モデルは、敵対的生成ネットワークを用いて前記予め定めた画像処理を学習させることで生成された学習モデルを含む。
前記画像処理装置は、入力画像を、予め定めた画像容量以下の画像容量の複数のブロック画像に分割する入力画像分割部と、前記学習部によって、前記複数のブロック画像毎に、前記予め定めた画像処理を行うことを学習した学習モデルを用いて、前記入力画像について、前記複数のブロック画像単位で前記予め定めた画像処理を行ってブロック単位の画像を生成する画像生成部と、を含む
前記画像処理装置は、前記画像生成部によって生成された前記ブロック単位の画像の各々を統合する画像統合部、を含む。
態様は、第1態様から第3態様の何れか1態様の画像処理装置において、前記画像統合部は、前記画像生成部によって生成された前記複数のブロック画像の各々を、前記画像分割部によって分割された前記複数のブロック画像の配列順序に従って連結する。
態様は、第1態様から第4態様の何れか1態様の画像処理装置において、前記画像分割部は、前記第2入力画像を、隣のブロック画像と一部が重複するように複数のブロック画像に分割し、前記画像統合部は、一部が重複した重複領域を、予め定めた重複領域処理を行って統合する。
態様は、第態様の画像処理装置において、前記予め定めた重複領域処理は、前記重複領域に含まれる画像の平均化処理である。
態様は、第1態様から第態様の何れが1態様の画像処理装置において、前記入力画像は、埋め込みコード画像である。
画像処理装置は、入力された入力画像の画像容量が、画像処理部によって画像処理可能な第1画像容量を超える第2画像容量である場合、前記第2画像容量の入力画像を、前記第1画像容量以下の画像容量の複数のブロック画像に分割する入力画像分割部と、前記第1画像容量を超える画像容量の画像を、前記第1画像容量以下の複数のブロック画像毎に、前記画像処理部によって画像処理することを学習した学習モデルによって、前記入力画像について、前記複数のブロック画像単位で前記画像処理を行ってブロック単位の画像を生成するブロック画像生成部と、前記ブロック画像生成部によって生成された前記ブロック単位の画像の各々を統合するブロック画像統合部と、を備えることができる
態様は、コンピュータを予め定めた第1画像容量以下の容量の画像を画像処理可能な画像処理部を用いて予め定めた画像処理を実行する画像処理装置において、入力画像が、前記第1画像容量以下の容量の第1入力画像か、前記第1画像容量を超える容量の第2入力画像かを判別する判別部、前記画像処理部によって予め定めた画像処理を行うことを学習した第1学習モデルを用いて、前記判別部で判別された前記第1入力画像を、前記予め定めた画像処理を行って第1画像を生成する第1画像生成部、前記判別部で判別された前記第2入力画像を、各々が前記第1画像容量以下の容量の複数のブロック画像に分割する画像分割部、前記画像処理部によって前記予め定めた画像処理を行うことを学習した第2学習モデルを用いて、前記画像分割部で分割された前記複数のブロック画像の各々を、前記予め定めた画像処理を行って前記複数のブロック画像毎の第2画像を生成する第2画像生成部、および、前記第2画像生成部によって生成された前記複数のブロック画像毎の第2画像の各々を、前記複数のブロック画像におけるブロックの位置に対応させて統合する画像統合部、として機能させるためのプログラムである。
プログラムは、コンピュータを入力された入力画像の画像容量が、画像処理部によって画像処理可能な第1画像容量を超える第2画像容量である場合、前記第2画像容量の入力画像を、前記第1画像容量以下の画像容量の複数のブロック画像に分割する入力画像分割部、前記第1画像容量を超える画像容量の画像を、前記第1画像容量以下の複数のブロック画像毎に、前記画像処理部によって画像処理することを学習した学習モデルによって、前記入力画像について、前記複数のブロック画像単位で前記画像処理を行ってブロック単位の画像を生成するブロック画像生成部、および、前記ブロック画像生成部によって生成された前記ブロック単位の画像の各々を統合するブロック画像統合部、として機能させることができる
第1態様から第3態様及び第態様によれば、画像の学習として予め定められた画像容量を超える画像が入力された場合であっても、画像の学習を可能とする画像処理装置を提供することができる、という効果を有する。
第4態様から第態様によれば、画像処理可能な予め定められた画像容量を超える画像が入力された場合であっても、入力された画像の画像処理を可能とする画像処理装置を提供することができる、という効果を有する。
第1実施形態に係る画像処理装置の機能構成の一例を示すブロック図である。 画像修復学習モデルを学習する学習処理の説明図である。 ブロック単位画像修復学習モデルを学習する学習処理の説明図である。 学習処理部をGANとして構成した場合の一例を示すブロック図である。 入力画像の一例を示すイメージ図である。 ブロック単位学習処理の過程の一例を示すイメージ図である。 画像処理装置をコンピュータを含んで構成した場合の一例を示すブロック図である。 第1実施形態に係る画像処理の流れの一例を示すフローチャートである。 ブロック走査によって学習する学習処理の説明図である。 ブロックの構成の一例を示すイメージ図である。 ブロックを重複させて走査することの説明図である。 第2実施形態に係る画像処理装置において隣接するブロックを重複させて走査するこことの説明図である。 調和平均の説明図である。 ブロック内の画素位置に関する説明図である。 異なる大きさのブロックに関する説明図である。
以下、図面を参照して本開示の技術を実現する実施形態を詳細に説明する。なお、作用、機能が同じ働きを担う構成要素及び処理には、全図面を通して同じ符合を付与し、重複する説明を適宜省略する場合がある。
(第1実施形態)
図1を参照して、第1実施形態に係る画像処理装置の一例の機能構成を説明する。
第1実施形態に係る画像処理装置は、入力画像を修復する画像処理を行う。例えば、入力画像にバーコード等の画像コードが含まれる場合、画像コードが表すコード内容を復号(認識)する画像認識処理が行われる。ところが、複写やファクシミリ送信、地紋、手書き等によるゆがみ、欠損、汚れ、ノイズ等により劣化した画像コードは、標準的な復号部(デコーダ)では画質劣化により復号できない場合がある。そこで、本実施形態の画像処理装置は、劣化した画像コードを修復して修復画像を劣化前の画像コードとして出力する機能を有する。
以下では、画像コードの一例としてQRコード(登録商標)を認識するために画像を修復する場合の一例を説明する。ただし、QRコード(登録商標)を対象とするのはあくまで一例に過ぎず、本実施形態に係る画像処理装置における画像処理はQRコード(登録商標)以外の画像コードの修復処理にも適用可能である。また、本実施形態に係る画像処理装置における画像処理は画像コードの修復処理に限定されるものでもなく、多色画像における劣化を修復する修復処理、及び一部が欠落した欠落画像の修復処理等の画像修復処理にも適用可能である。さらに、本実施形態に係る画像処理装置における画像処理は、3次元画像と2次元画像と相互の変換処理、単色画像と多色画像との相互の変換処理等の画像変換処理にも適用可能である。
ところで、1画像は高解像度化が進んでおり、高解像度の1画像は大容量の画像容量になってきている。一方、画像処理を実行する実行デバイスの一例として高速に画像処理可能なGPUが知られているが、このGPUは画像処理可能な画像容量(例えば、画像サイズ)が予め定められており、予め定められた画像容量を超える画像を画像処理することが困難である。そこで、本実施形態では、GPU等の限られた画像容量で画像処理可能な画像処理装置において、予め定められた画像容量を超える画像が入力された場合であっても、入力された画像について画像処理を可能とする画像処理装置を提供する。
なお、本実施形態における画像容量は、画像の大きさをいう。
画像の大きさは、物理的な大きさに解像度を乗算して計算可能である。多色画像における画像容量の計算例を、次式に示す。
{画像容量}=A・B・C・D・E・F
ここで、Aは、縦のサイズ(インチ)を表す。Bは、縦の解像度(dpi) を表す。Cは、横のサイズ(インチ) を表す。Dは、横の解像度(dpi) を表す。Eは、画素のビット数{例えば、バイト数に変換する場合は、(色のビット数/8)で表す。}を表す。Fは、圧縮率を表す。
図1に示す画像処理装置1において、画像修復学習モデル33は、入力画像(劣化したQRコード(登録商標))から劣化前の正常なQRコード(登録商標)の画像を生成する学習を済ませたモデルである。画像修復学習モデル33は、例えば学習済みのニューラルネットワークを規定するモデルであり、例えばニューラルネットワークを構成するノード(ニューロン)同士の間の結合の重み(強度)の情報の集合として表現される。
画像修復学習モデル33は、学習処理部330(図2)の学習処理により生成される。学習処理部330は、背景等のノイズやゆがみ等で劣化したQRコード(登録商標)を含んだ入力画像と、その入力画像に対応する劣化前のQRコード(登録商標)を示す正解画像と、のペアを大量に用いて学習処理を行う。学習処理部330が行う学習処理については、後で詳しく説明する。
また、ブロック単位画像修復学習モデル37は、入力画像(劣化したQRコード(登録商標))をブロック単位で分割したブロック単位画像の各々から劣化前の正常なQRコード(登録商標)におけるブロック単位画像の各々を生成する学習を済ませたモデルである。ブロック単位画像修復学習モデル37は、例えば学習済みのニューラルネットワークを規定するモデルであり、例えばニューラルネットワークを構成するノード(ニューロン)同士の間の結合の重み(強度)の情報の集合として表現される。
ブロック単位画像修復学習モデル37は、ブロック単位学習処理部370(図3)の学習処理により生成される。ブロック単位学習処理部370は、背景等のノイズやゆがみ等で劣化したQRコード(登録商標)を含んだ入力画像と、その入力画像に対応する劣化前のQRコード(登録商標)を示す正解画像と、のペアを大量に用いてブロック単位で学習処理を行う。ブロック単位学習処理部370が行う学習処理については、後で詳しく説明する。
図1に示す画像入力部2は、1以上のQRコード(登録商標)を含んだ入力画像の入力を受け付ける。
実行処理部3は、画像入力部2で受け付けた入力画像を修復処理して、修復された画像を出力画像として出力する。
実行処理部3は、判別部31、修復部32、画像修復学習モデル33、画像出力部34、画像分割部35、ブロック単位修復部36、ブロック単位画像修復学習モデル37、及び画像統合部38を含んでいる。
判別部31は、入力画像に含まれる処理対象の画像(以下、処理画像という。)、すなわち、QRコード(登録商標)について、画像容量が、実行処理部3に予め定められた画像処理可能な画像容量(以下、第1画像容量という。)を超えるかを判別する。また、第1画像容量を超えた画像容量は第2画像容量という。第1画像容量の処理画像は、修復部32へ送られる。
修復部32は、第1画像容量の処理画像(すなわち、入力画像内の劣化後の第1画像容量のQRコード(登録商標))を、学習済みの画像修復学習モデル33を用いて修復する。すなわち劣化前のQRコード(登録商標)の画像を生成あるいは推定する。
画像出力部34は、修復部32により修復されたQRコード(登録商標)画像を出力する。なお、画像出力部34は、修復されたQRコード(登録商標)画像に対して、公知のQRコード(登録商標)認識処理を実行することで、そのQRコード(登録商標)画像を復号する復号部を含むようにしてもよい。
一方、第2画像容量の処理画像(すなわち、入力画像内の劣化後の第2画像容量のQRコード(登録商標))は、画像分割部35へ送られる。画像分割部35は、第2画像容量の処理画像を、第1画像容量以下のブロック単位画像に分割する。
ブロック単位修復部36は、第2画像容量の処理画像を、ブロック単位で学習済みのブロック単位画像修復学習モデル37を用いて修復する。すなわちブロック単位で劣化前のQRコード(登録商標)の一部画像を生成あるいは推定する。
画像統合部38は、ブロック単位修復部36により修復されたブロック単位のQRコード(登録商標)の一部画像を統合し、統合された画像(QRコード(登録商標)画像)を画像出力部34へ出力する。画像統合部38の統合処理の一例は、ブロック単位修復部36により修復されたブロック単位のQRコード(登録商標)の一部画像を分割した順序に従って並べて連結する処理が挙げられる。
次に、図4を参照して、学習処理部330について説明する。学習処理部330は、GAN(Generative adversarial networks:敵対的生成ネットワーク)を構成する生成器(ジェネレータ)332と識別器(ディスクリミネータ)334とを含む。
また、学習処理部330は、学習用データとして、入力画像200と正解画像202のペアを多数保持している。入力画像200は、図5に示すように、ゆがみ、欠損、汚れ、ノイズ等の、画質劣化が生じているQRコード(登録商標)の画像である。図5に例示する入力画像200では、ファクシミリ送信時の画像のゆがみや二値化の誤差等によってQRコード(登録商標)の画像にゆがみやノイズが現れている。この程度のまで劣化したQRコード(登録商標)は、標準的な復号部では復号できない。これに対して正解画像202は、そのような画質劣化が生じる前のそのQRコード(登録商標)の画像である。正解画像202は、標準的な復号部で正しく復号できる。
図4に示す生成器332は、入力画像200から生成画像204を生成するニューラルネットワークである。生成画像204は、入力画像200に対応する正解画像202を推定した画像である。すなわち、生成器332は、劣化したQRコード(登録商標)の画像である入力画像200を修復し、正解画像202に近い生成画像204を生成する。生成器332は、多数の入力画像200を用いて学習することで、より正解画像202に近い生成画像204を生成できるようになる。
識別器334は、入力された画像が、入力画像200に対応する正解画像202、及び入力画像200から生成器332が生成した生成画像204、のうちのいずれであるかを識別するニューラルネットワークである。学習処理部330は、正解画像202(とこれに対応する入力画像200)又は生成画像204(とこれに対応する入力画像200)を識別器334に入力する。これに応じて、識別器334は、入力された画像が正解画像202(正解:true)又は生成画像204(偽物:false)のいずれであるかを識別し、その識別結果を示す信号を出力する。
学習処理部330は、識別器334に入力した画像が正解、偽物のいずれであるかと、その識別器334からの出力信号とを比較し、その比較結果に基づく損失信号を生成器332及び識別器334の各々のニューラルネットワークのノード間の結合の重みパラメータにフィードバックする。これにより、生成器332と識別器334が学習を行う。
GANを構成する生成器332及び識別器334は、前者が教師データ(正解画像202)になるべく近い偽物(生成画像204)を生成しようとし、後者がその偽物を正しく識別しようとするという形で、いわば互いに切磋琢磨しながら学習を進める。
学習処理部330には、例えば「pix2pix」というアルゴリズム(Phillip Iso1a他による論文「Image-to-Image Translation with Conditional Adversarial Networks」、Berkeley AI Research (BAIR) Laboratory, UC Berkeley参照)と同様の方式を用いてもよい。この場合、生成器332の学習のために、識別器334の損失信号に加え、正解画像202と生成画像204との差もフィードバックする。
また、他の例として、Cycle GANと呼ばれるGANを学習処理部330に用いてもよい。Cycle GANを用いた場合、入力画像のすべてに正解画像が用意されていない場合でも学習が可能である。
そして、本実施形態の画像処理装置では、以上に例示した手法により生成した学習済みの生成器332を画像修復学習モデル33として用いる。修復部16は、この画像修復学習モデル33を用いて、入力画像200が表す劣化したQRコード(登録商標)を修復する。
十分に学習した画像修復学習モデル33を用いれば、第1画像容量以下の画像容量であって、ゆがみ、ノイズ、部分的欠損がある程度激しい劣化したQRコード(登録商標)を、復号可能な状態に修復することも不可能ではない。
次に、ブロック単位学習処理部370について説明する。ブロック単位学習処理部370は、学習処理部330と同様に、GANを構成する生成器332と識別器334とを含む。
ブロック単位学習処理部370は、学習用データとして、入力画像200と正解画像202のペアを多数保持している。また、ブロック単位学習処理部370では、入力画像200及び正解画像202を、第2画像容量の画像を第1画像容量以下のブロック単位の画像に分割する共通のフォーマットで分割したブロック単位画像を用いて、学習を行う。例えば、図6に示すように、1024×1024画素を256×256画素/1ブロックで分割する場合、入力画像200及び正解画像202の各々が、4ブロック×4ブロックに分割される。そして、入力画像200及び正解画像202各々の位置に対応するブロック単位で、学習が行われる。すなわち、劣化したQR画像と正解画像との対応するブロック間で、ブロック単位画像における学習(画像修復学習)が実施される。なお、ブロック単位画像での学習(画像修復学習)は、学習処理部330で行われる学習処理と同様のため、詳細な説明を省略する。
そして、多数の入力画像200と正解画像202のペアによりブロック単位で学習して生成された学習済みの生成器332をブロック単位画像修復学習モデル37として用いる。ブロック単位修復部36は、このブロック単位画像修復学習モデル37を用いて、入力画像200が表す劣化したQRコード(登録商標)をブロック単位で修復する。
ブロック単位で学習して生成された学習済みの生成器332によるブロック単位の学習モデルは、分割された画像上のブロック位置に対応して異なるモデルとして、ブロック単位画像修復学習モデル37に格納すればよい。
なお、処理画像の一例であるQRコード(登録商標)では、劣化する状態に位置に関する依存性が低いと考えられる。すなわち、QRコード(登録商標)の何れの位置についても同様に劣化する場合があると考えられる。このため、1つのブロックについて学習して生成された学習済みの生成器332によるブロック単位の学習モデルを、他の位置のブロックについての学習モデルとして共通に利用することが可能である。このようにすることで、第1画像容量を超える第2画像容量の画像であっても、共通のフォーマットで分割したブロック単位で複数回学習することに代えて、1回の学習処理でブロック単位の学習を完了することが可能となる。すなわち、ブロック単位の学習モデルは、分割された画像上の1つのブロックについて学習したモデルを、ブロック単位画像修復学習モデル37に格納すればよい。
なお、ブロック単位学習処理部370において実行される入力画像200及び正解画像202をブロック単位の画像に分割する処理は、本開示の画像分割部の処理の一例である。また、ブロック単位学習処理部370は、本開示の学習部の一例である。
以上に例示した画像処理装置1は、例えば、コンピュータに上述の各機能を表すプログラムを実行させることにより実現可能である。
図7に、画像処理装置1の各種機能を実現する処理を実行する実行装置としてコンピュータを含んで構成した場合の一例を示す。
図7に示す画像処理装置1として機能するコンピュータは、コンピュータ本体100を備えている。コンピュータ本体100は、CPU102、揮発性メモリ等のRAM104、ROM106、ハードディスク装置(HDD)等の補助記憶装置108、及び入出力インターフェース(I/O)110を備えている。これらのCPU102、RAM104、ROM106、補助記憶装置108、及び入出力I/O110は、相互にデータ及びコマンドを授受可能にバス112を介して接続された構成である。また、入出力I/O110には、画像入力部2、通信インタフェース(I/F)114、及びディスプレイやキーボード等の操作表示部116が接続されている。
補助記憶装置108には、コンピュータ本体100を本開示の画像処理装置として機能させるための制御プログラム108Pが記憶される。CPU102は、制御プログラム108Pを補助記憶装置108から読み出してRAM104に展開して処理を実行する。これにより、制御プログラム108Pを実行したコンピュータ本体100は、本開示の情報処理装置として動作する。
なお、補助記憶装置108には、画像修復学習モデル33とブロック単位画像修復学習モデル37とを含む学習モデル108M、及び入力画像200と正解画像202のペアの画像データを含むデータ108Dが記憶される。制御プログラム108Pは、CD-ROM等の記録媒体により提供するようにしても良い。
次に、コンピュータにより実現された画像処理装置における画像処理について説明する。
図8に、コンピュータ本体100において、実行される制御プログラム108Pによる画像処理の流れの一例を示す。
図8に示す画像処理は、コンピュータ本体100に電源投入されると、CPU102により実行される。
まず、CPU102は、ステップS100で、画像入力部2から劣化したQRコード(登録商標)(処理画像)を含む入力画像200を取得し、次のステップS104で、入力画像200に含まれるQRコード(登録商標)(処理画像)が第1画像容量を超える画像容量か否かを判断する。QRコード(登録商標)が第1画像容量以下の場合、QRコード(登録商標)を分割することなく画像処理が可能であるため、ステップS104で否定され、ステップS104で、劣化したQRコード(登録商標)を画像修復学習モデルを用いて修復する画像処理を行って、本処理ルーチンを終了する。
一方、入力画像200が第1画像容量を超える場合、ステップS102で肯定され、ステップS106において、入力画像200に含まれるQRコード(登録商標)(処理画像)を、複数ブロックに分割する。次のステップS108では、ステップS106で分割されたブロック単位で、ブロック単位画像修復学習モデル37を用いて、劣化したQRコード(登録商標)をブロック単位で修復する画像処理を行う。次のステップS110では、修復されたブロック単位のQRコード(登録商標)の一部画像を、分割した順序に従って並べて連結する統合処理を行い、統合されたQRコード(登録商標)を出力して本処理ルーチンを終了する。
なお、図8に示す画像処理は、本開示の画像処理装置で実行される処理の一例である。
(第2実施形態)
次に、第2実施形態を説明する。第2実施形態は、分割された画像を統合する場合に隣接するブロックの境界部分を考慮したものである。なお、第2実施形態は第1実施形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
第1実施形態では、劣化した処理画像(QRコード(登録商標))をブロック分割して、ブロック単位で修復した複数の画像を統合した。この場合、画像の劣化度合いによって、隣接するブロックの境界付近でノイズが生じることがある。これは、各ブロック毎の修復度合いが一様ではないためと考えられる。また、ブロック単位による修復処理のため、解像度が低下してためとも考えられる。そこで、本実施形態では、隣接するブロックの境界付近に生じるノイズを抑制する処理を実行する。
図9及び図10を参照して、本実施形態に係るブロック単位学習処理部370における学習処理について説明する。ブロック単位学習処理部370は、画像上で所定の大きさのウィンドウ領域(ブロック)を走査しながら走査位置におけるブロック単位で学習を行う点が第1実施形態と異なっている。すなわち、第1実施形態では、入力画像200及び正解画像202を共通のフォーマットで(第1画像容量以下の画像に)分割したブロック単位画像を用いて学習を行ったが、第2実施形態は、共通のフォーマットを、第1画像容量以下の画像の大きさをブロックとして、隣接するブロックの一部が重複するように走査し、各走査位置においてブロック単位で学習を行う。
具体的には、図9に示すように、入力画像200及び正解画像202に対して、第1画像容量以下の画像となるM×N画素領域のブロック40を設定する。そして、隣接するブロック40の一部が重複するように走査(図9の例では実線と点線で示す位置にブロック40が移動)する。走査の単位は予め設定しておけばよい。例えば、図10に示すように、1×1画素単位からP×Q画素単位(1≦P≦M、1≦Q≦N)の何れかを走査の単位とすればよい。具体的には、256×256画素領域のブロックを2×2画素単位で走査する場合が考えられる。なお、P=M、Q=Nの場合は、第1実施形態におけるブロック分割と同様である。
次に、入力画像200及び正解画像202に対して、相互に対応する位置に該当するブロック40の領域を一部画像として切りだし、入力画像200の一部画像と、正解画像202の一部画像とを用いて学習(例えば、画像修復学習)を行う。すなわち、劣化した入力画像200の一部画像と正解画像202の一部画像との各々について、ブロックの位置を同期させながら走査して、同期された位置の各々で学習を行う。
走査位置におけるブロック単位で切り出した領域について学習して生成された学習済みの生成器332によるブロック単位の学習モデルが、走査位置に対応してブロック単位画像修復学習モデル37に格納する。
なお、例えば、白背景画像や黒背景画像のように、ブロック40の走査位置において切り出した入力画像200の一部画像と、正解画像202の一部画像との濃度が一致する場合、学習処理から除外することが好ましい。これにより、学習するブロック画像(入力画像200の一部画像と、正解画像202の一部画像)の枚数を減少することが可能になる。
次に、本実施形態に係るブロック単位修復部36を説明する。ブロック単位修復部36は、第2画像容量の処理画像を、上記走査位置に応じたブロック単位で学習済みのブロック単位画像修復学習モデル37を用いて修復する。すなわち、本実施形態に係るブロック単位修復部36は、学習処理で用いたブロック40を走査してブロック単位で劣化前のQRコード(登録商標)の一部画像を生成あるいは推定する。
なお、本実施形態では、画像分割部35は、画像を分割することに代えて、ブロック40の設定(M×N画素領域のブロック40を設定と、走査の単位の設定と)を行う。すなわち、本実施形態における画像分割部35は、入力画像(又は処理画像)の画像全体を分割することに代えて、一部の画像を切り出す(分割する)ための設定部として機能する。
ブロック単位修復部36では、ブロック単位学習処理部370における学習処理と同様に、M×N画素領域のブロック40を、P×Q画素の走査単位で走査して、走査単位ごとに、入力画像200から、ブロック単位の一部画像を抽出する。そして、抽出された一部画像について、走査位置に対応する、ブロック単位画像修復学習モデル37を用いて、ブロック単位で劣化前のQRコード(登録商標)の一部画像を生成あるいは推定する。
次に、本実施形態に係る画像統合部38を説明する。画像統合部38は、ブロック単位で生成あるいは推定された劣化前のQRコード(登録商標)の一部画像を用いて複数の一部画像を統合する。すなわち、走査単位毎に後述する推論処理(画像修復処理)結果を出力することによって、複数の一部画像を統合する。
具体的には、画像統合部38は、P×Q画素単位の走査毎に推論処理(画像修復処理)を行い、全ての結果を統合する。結果、処理対象画像全面を修復処理したことになる。
ここで、走査単位毎に行う推論処理について説明する。
まず、ブロック単位の一部画像における画素値を用いる第1の推論処理を説明する。なお、第1の推論処理の説明を簡単にするため、図11に示すように、M×N画素領域のブロック40を半分ずつ重ねながら、走査する場合を説明する。すなわち、P×Q=(1/2×M)×(1/2×N)の場合を説明する。
まず、画像統合部38は、第1工程として、一部が重複するように走査単位分だけブロック40を移動する。
次に、第2工程として、前回走査のブロック40-1内の入力画素値を用いて、学習モデルによって、推論処理を行う。この場合、推論処理後の新しい画素値は、前回の走査位置におけるブロック40-1内に含まれる画素値から求まる。
次に、第3工程として、第1工程で求めたM×N画素領域内の推論画素値に対して、ブロック40の走査単位であるP×Q領域内の推論画素値のみを出力する。すなわち、P×Q領域以外の推論画素値は消去する。
次に、第4工程として、第1工程から第3工程の処理を、次の走査位置(次の走査のブロック40-2の位置)で同様に行うことを繰り返す。
次に、第5工程では、すべての走査が終わった段階で、全ての推論処理結果(緑枠推論出力)を統合して、元の1枚の画像を出力する。
第1の推論処理では、走査単位の大きさを小さくすれば、推論出力の解像度が向上し、ブロック境界のノイズや劣化は抑制される。図11に示す例では、推論出力解像度は2倍に向上する。従って、走査単位P×Qを1×1画素単位とすれば、元の画像の解像度のまま推論処理することが可能となる。これにより、学習時と同じ広い参照領域(M×N)を用いた推論処理を実施することで精度を高め、出力時には解像度を高めて演算することで(P×Q)、ノイズを抑制するこが可能になる。
次に、第2の推論処理を説明する。
まず、画像統合部38は、第1工程として、一部が重複するように走査単位分だけ主走査方向にブロック40を走査する。
第2工程では、前回走査のブロック40-1内の入力画素値を用いて、学習モデルによって、推論処理を行う。また、次の走査のブロック40-2内の入力画素値を用いて、学習モデルによって、推論処理を行う。そして、ブロック40-1とブロック40-2との重複領域(図12(A)に斜線で示す領域)の各画素ごとの推論値を求める。この重複部分の各画素ごとの推論画素値InFを導出する一例を次式に示す。
InF=(InFA+InFB)/2
ただし、InFAは、ブロック40-1内における画素の推論値であり、InFBは、ブロック40-2内における画素の推論値である。
第3工程では、主走査方向(横方向)の処理を画像の横幅分完了した後、副走査方向(縦方向)の処理を行う。副走査方向(縦方向)の処理は、主走査方向(横方向)の処理の結果に対して処理する。すなわち、副走査方向(縦方向)に重複した領域(図12(B)に斜線で示す領域)は、主走査方向(横方向)の計算で得られた結果に対して、平均値を求めて出力する。
第2の推論処理では、走査した場合における重複部分は前回の推論値と次の推論値の平均値となる。両者の推論値が平滑化され、ノイズを低減することが可能になる。
なお、第2の推論処理では、重複部分における推論値の平均値を用いた場合を説明したが、推論値の単純な平均値に限定されるものではなく、他の推論処理として、図13に示すように、調和平均値を用いることが可能である。図13に示す例では、重複した領域(図13に斜線で示す領域)Gを複数に分割し(図13に領域Ga,Gb,Gcで示す領域)、領域Ga,Gb,Gcの各々に、重みを付与した調和平均値を求める。この場合、付与する重みは、領域の周囲に向うに従って重みが低くなるように設定することが好ましい。例えば、領域Gaの重みとして、前回の推論値に対する重み(例えば、0.6)を、次の推論値に対する重みより小さくした重み(例えば、0.4)すること等が挙げられる。
次に、第3の推論処理を説明する。第3の推論処理は、走査単位で移動するブロック内の画素位置に応じて変化する重複領域(画素位置)に対する距離Lに応じて推論するものである。
第3の推論処理は、図14に示すように、ブロック40として、3×2の推論枠を考える。走査単位を1ピクセル(pixel)とすると、中心位置(図14に星印で示した位置)で、6回(3×2回)の走査において推論枠が重複する。この6回の走査毎に、各走査位置における推論枠の中心と、中心位置(図14に星印で示した位置)との距離に応じた、各走査位置における推論枠について中心位置(図14に星印で示した位置)に対する重さを計算する。計算された重み(40-1~40-6各々の重み)を各走査位置における推論枠における推論値に各々付して、総和を、中心位置(図14に星印で示した位置)の推論値とする。
なお、第3の推論処理では、走査単位で移動するブロック内の画素位置に応じて変化する重複領域(画素位置)に対する距離に応じて推論したが、複数の異なる大きさのブロック40に対しても適用可能である。複数の異なる大きさのブロック40に対しては、ブロック40各々の面積に応じて重みを変更すればよい。
例えば、図15に示すように、異なる大きさの推論枠40-A,40-B,40-Cを重ね合わせた場合、各々の中心位置(図15に四角形で示した位置)と、重ね合された中心位置(図15に星印で示した位置)との距離は同等である。しかし、推論枠40-A,40-B,40-Cの各々は、大きさが異なるので、面積の大小に応じて重さを変更する。すなわち、面積が大きい推論枠(例えば、ピクセル数が多い推論枠)の方が、面積が小さい推論枠(例えば、ピクセル数が少ない推論枠)より、推論値の信用度が高いため、面積が大きくなるのに従って重さを大きい値とすればよい。
なお、以上説明した推論処理は、単体で推論処理してもよいし、複数の推論処理を組み合わせて推論処理してもよい。
以上、各実施の形態を用いて説明したが、本開示の技術的範囲は上記実施形態に記載の範囲には限定されない。要旨を逸脱しない範囲で上記実施形態に多様な変更または改良を加えることができ、当該変更または改良を加えた形態も本開示の技術的範囲に含まれる。
また、上記実施形態では、検査処理を、フローチャートを用いた処理によるソフトウエア構成によって実現した場合について説明したが、これに限定されるものではなく、例えば各処理をハードウェア構成により実現する形態としてもよい。
また、画像処理装置の一部、例えば学習モデル等のニューラルネットワークを、ハードウエア回路として構成してもよい。
1 画像処理装置
2 画像入力部
3 実行処理部
16 修復部
31 判別部
32 修復部
33 画像修復学習モデル
34 画像出力部
35 画像分割部
36 ブロック単位修復部
37 ブロック単位画像修復学習モデル
38 画像統合部
40 ブロック
108P 制御プログラム
200 入力画像
202 正解画像
204 生成画像
330 学習処理部
332 生成器
334 識別器
370 ブロック単位学習処理部

Claims (8)

  1. 予め定めた第1画像容量以下の容量の画像を画像処理可能な画像処理部を用いて予め定めた画像処理を実行する画像処理装置において、
    入力画像が、前記第1画像容量以下の容量の第1入力画像か、前記第1画像容量を超える容量の第2入力画像かを判別する判別部と、
    前記画像処理部によって予め定めた画像処理を行うことを学習した第1学習モデルを用いて、前記判別部で判別された前記第1入力画像を、前記予め定めた画像処理を行って第1画像を生成する第1画像生成部と、
    前記判別部で判別された前記第2入力画像を、各々が前記第1画像容量以下の容量の複数のブロック画像に分割する画像分割部と、
    前記画像処理部によって前記予め定めた画像処理を行うことを学習した第2学習モデルを用いて、前記画像分割部で分割された前記複数のブロック画像の各々を、前記予め定めた画像処理を行って前記複数のブロック画像毎の第2画像を生成する第2画像生成部と、
    前記第2画像生成部によって生成された前記複数のブロック画像毎の第2画像の各々を、前記複数のブロック画像におけるブロックの位置に対応させて統合する画像統合部と、
    を備えた画像処理装置。
  2. 前記第2学習モデルは、前記複数のブロック画像の各々について、前記複数のブロック画像におけるブロック位置に対応付けて学習が行われた学習モデルである
    請求項1に記載の画像処理装置。
  3. 前記第2学習モデルは、敵対的生成ネットワークを用いて前記予め定めた画像処理を学習させることで生成された学習モデルを含む
    請求項1又は請求項2に記載の画像処理装置。
  4. 前記画像統合部は、前記第2画像生成部によって生成された前記複数のブロック画像の各々を、前記画像分割部によって分割された前記複数のブロック画像の配列順序に従って連結する
    請求項1から請求項3の何れか1項に記載の画像処理装置。
  5. 記画像分割部は、前記第2入力画像を、隣のブロック画像と一部が重複するように複数のブロック画像に分割し、
    前記画像統合部は、一部が重複した重複領域を、予め定めた重複領域処理を行って統合する
    請求項1から請求項4の何れか1項に記載の画像処理装置。
  6. 前記予め定めた重複領域処理は、前記重複領域に含まれる画像の平均化処理である
    請求項に記載の画像処理装置。
  7. 前記入力画像は、埋め込みコード画像である
    請求項1から請求項の何れか1項に記載の画像処理装置。
  8. コンピュータを
    予め定めた第1画像容量以下の容量の画像を画像処理可能な画像処理部を用いて予め定めた画像処理を実行する画像処理装置において、
    入力画像が、前記第1画像容量以下の容量の第1入力画像か、前記第1画像容量を超える容量の第2入力画像かを判別する判別部、
    前記画像処理部によって予め定めた画像処理を行うことを学習した第1学習モデルを用いて、前記判別部で判別された前記第1入力画像を、前記予め定めた画像処理を行って第1画像を生成する第1画像生成部、
    前記判別部で判別された前記第2入力画像を、各々が前記第1画像容量以下の容量の複数のブロック画像に分割する画像分割部、
    前記画像処理部によって前記予め定めた画像処理を行うことを学習した第2学習モデルを用いて、前記画像分割部で分割された前記複数のブロック画像の各々を、前記予め定めた画像処理を行って前記複数のブロック画像毎の第2画像を生成する第2画像生成部、および、
    前記第2画像生成部によって生成された前記複数のブロック画像毎の第2画像の各々を、前記複数のブロック画像におけるブロックの位置に対応させて統合する画像統合部、
    として機能させるためのプログラム。
JP2019051560A 2019-03-19 2019-03-19 画像処理装置及びプログラム Active JP7283156B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019051560A JP7283156B2 (ja) 2019-03-19 2019-03-19 画像処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019051560A JP7283156B2 (ja) 2019-03-19 2019-03-19 画像処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2020154605A JP2020154605A (ja) 2020-09-24
JP7283156B2 true JP7283156B2 (ja) 2023-05-30

Family

ID=72559099

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019051560A Active JP7283156B2 (ja) 2019-03-19 2019-03-19 画像処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP7283156B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4339886A1 (en) * 2021-05-13 2024-03-20 Panasonic Intellectual Property Corporation of America Training method, training device, and program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003125197A (ja) 2001-10-12 2003-04-25 Fuji Xerox Co Ltd 画像処理装置およびプログラム
JP2014063360A (ja) 2012-09-21 2014-04-10 Sony Corp 信号処理装置および信号処理方法、出力装置および出力方法、並びにプログラム
JP2014075653A (ja) 2012-10-03 2014-04-24 Hitachi Consumer Electronics Co Ltd 撮像装置および画像処理方法
CN105205778A (zh) 2015-11-09 2015-12-30 河南师范大学 基于rbf神经网络的图像水印嵌入、提取方法与装置
CN108711141A (zh) 2018-05-17 2018-10-26 重庆大学 利用改进的生成式对抗网络的运动模糊图像盲复原方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3557626B2 (ja) * 1993-08-27 2004-08-25 ソニー株式会社 画像復元装置及び方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003125197A (ja) 2001-10-12 2003-04-25 Fuji Xerox Co Ltd 画像処理装置およびプログラム
JP2014063360A (ja) 2012-09-21 2014-04-10 Sony Corp 信号処理装置および信号処理方法、出力装置および出力方法、並びにプログラム
JP2014075653A (ja) 2012-10-03 2014-04-24 Hitachi Consumer Electronics Co Ltd 撮像装置および画像処理方法
CN105205778A (zh) 2015-11-09 2015-12-30 河南师范大学 基于rbf神经网络的图像水印嵌入、提取方法与装置
CN108711141A (zh) 2018-05-17 2018-10-26 重庆大学 利用改进的生成式对抗网络的运动模糊图像盲复原方法

Also Published As

Publication number Publication date
JP2020154605A (ja) 2020-09-24

Similar Documents

Publication Publication Date Title
JP5132517B2 (ja) 画像処理装置および画像処理方法
JP5875637B2 (ja) 画像処理装置、画像処理方法
US8401306B2 (en) Image processing apparatus and control method
JP4687918B2 (ja) 画像処理装置及びプログラム
JP6362632B2 (ja) 画像処理装置、画像処理方法
JP4501791B2 (ja) 画像処理方法及び画像処理プログラム
JP4235162B2 (ja) 画像符号化装置,画像符号化方法,画像符号化プログラムおよびコンピュータ読み取り可能な記録媒体
JP2004538673A (ja) 色特徴を有する入力デジタル画像を強調する方法およびそのシステム
JP7283156B2 (ja) 画像処理装置及びプログラム
JP6370080B2 (ja) 画像処理装置、画像処理方法及びプログラム。
JP6452657B2 (ja) 画像処理装置、その制御方法、及びプログラム
JP2007306513A (ja) 画像データの圧縮方法および装置
JP7134045B2 (ja) 画像処理装置と画像処理方法、及びプログラム
JP6171584B2 (ja) 動画像符号化装置、動画像符号化方法、および動画像符号化プログラム
JP3281183B2 (ja) 画像符号化復号化方法および画像符号化復号化装置
JP3539552B2 (ja) 画像処理装置
JP4035696B2 (ja) 線分検出装置及び画像処理装置
JP4324532B2 (ja) 画像処理装置および記憶媒体
JP7362405B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP7185451B2 (ja) 画像処理装置と画像処理方法、及びプログラム
JPH08331391A (ja) 画像処理装置およびその方法
JP4696738B2 (ja) 画像データの圧縮方法および装置並びに擬似階調画像の復元方法
JP4584805B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP5407582B2 (ja) 画像処理装置及び画像処理プログラム
JP3279831B2 (ja) 2値疑似階調画像の符号化方法及び復号化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230310

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230501

R150 Certificate of patent or registration of utility model

Ref document number: 7283156

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150