JP2022090947A - 画像処理装置、画像処理方法およびプログラム - Google Patents
画像処理装置、画像処理方法およびプログラム Download PDFInfo
- Publication number
- JP2022090947A JP2022090947A JP2020203561A JP2020203561A JP2022090947A JP 2022090947 A JP2022090947 A JP 2022090947A JP 2020203561 A JP2020203561 A JP 2020203561A JP 2020203561 A JP2020203561 A JP 2020203561A JP 2022090947 A JP2022090947 A JP 2022090947A
- Authority
- JP
- Japan
- Prior art keywords
- image
- character
- learning
- image processing
- character information
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 142
- 238000003672 processing method Methods 0.000 title claims description 3
- 230000013016 learning Effects 0.000 claims abstract description 155
- 238000000034 method Methods 0.000 claims description 94
- 230000008569 process Effects 0.000 claims description 80
- 238000012015 optical character recognition Methods 0.000 claims description 45
- 238000012549 training Methods 0.000 claims description 4
- 238000010801 machine learning Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 14
- 238000013528 artificial neural network Methods 0.000 description 11
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000006866 deterioration Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000032258 transport Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 241001385733 Aesculus indica Species 0.000 description 1
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 101150027973 hira gene Proteins 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/12—Detection or correction of errors, e.g. by rescanning the pattern
- G06V30/133—Evaluation of quality of the acquired characters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/16—Image preprocessing
- G06V30/164—Noise filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19167—Active pattern learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/412—Layout analysis of documents structured with printed lines or input boxes, e.g. business forms or tables
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
- Character Discrimination (AREA)
Abstract
【課題】劣化が生じている画像を高精度に復元することを目的とする。【解決手段】画像処理装置は、文字情報の画像を含む画像データを取得する取得手段と、文字情報の文字種を特定する特定手段と、複数の文字種条件のそれぞれに対応する学習用の画像と正解画像とを用いて機械学習された複数の学習済みモデルから、特定された文字種に対応する学習済みモデルを取得し、取得した学習済みモデルに文字情報の画像を入力して、当該文字情報の画像を復元する画像処理手段と、を含む。【選択図】図6
Description
本発明は、画像処理装置、画像処理方法およびプログラムに関する。
文字情報を含む画像に対して、光学文字認識処理(OCR:Optical Character Recognition)を施し、文字情報を抽出する技術が用いられている。関連する技術として、特許文献1の技術が提案されている。特許文献1の技術は、処理対象帳票の特徴を用いて、類似する帳票データを索出し、複数のOCRエンジンのうち、索出された帳票データに関連付けられたOCRエンジンを用いて処理対象帳票を処理する。これにより、処理対象の帳票または項目ごとに最適なOCRエンジンが選択される。
スキャナで読み取った画像やファクシミリで送信された画像等には劣化が生じる。劣化が生じた画像に対してOCRの処理を施したとしても、高精度に文字情報を抽出することができず、文字情報を誤認識することがある。例えば、認識対象の画像に含まれる文字情報には類似した形状の文字が多く存在する。OCRの処理対象の画像が劣化していると、画像に含まれる文字情報に欠損や変形等が生じる。このため、劣化が生じた画像に対してOCRの処理を施した場合、類似した形状の文字を誤認識する可能性が高くなる。特許文献1の技術は、処理対象の帳票または項目ごとに最適なOCRエンジンを選択しているが、欠損や変形等が生じている文字情報を高精度に認識することは難しい。
そこで、本発明は、劣化が生じている画像を高精度に復元することを目的とする。
上記目的を達成するために、本発明の画像処理装置は、文字情報の画像を含む画像データを取得する取得手段と、前記文字情報の文字種を特定する特定手段と、複数の文字種条件のそれぞれに対応する学習用の画像と正解画像とを用いて機械学習された複数の学習済みモデルから、特定された前記文字種に対応する学習済みモデルを取得し、取得した前記学習済みモデルに前記文字情報の画像を入力して、当該文字情報の画像を復元する画像処理手段と、を備えることを特徴とする。
本発明によれば、劣化が生じている画像を高精度に復元することができる。
以下、本発明の各実施形態について図面を参照しながら詳細に説明する。しかしながら、以下の各実施形態に記載されている構成はあくまで例示に過ぎず、本発明の範囲は各実施形態に記載されている構成によって限定されることはない。
<第1実施形態>
図1は、画像処理システム100の一例を示す図である。画像処理システム100は、画像形成装置101、学習装置102および画像処理サーバ103を含む。画像形成装置101と学習装置102と画像処理サーバ103とは、ネットワーク104を介して、相互に接続される。ネットワーク104は、例えば、LANやWANである。ネットワーク104は、有線通信または無線通信を行うネットワークであってもよい。画像形成装置101と学習装置102と画像処理サーバ103とは、別個の装置ではなく、一体の装置として構成されていてもよい。また、各装置は、単一の装置により構成されていてもよいし、別個の装置により構成されていてもよい。例えば、画像処理サーバ103は、高速演算リソースを有する第1サーバ装置と、大容量ストレージを有する第2サーバ装置とにより構成され、両者が接続される構成が採用されてもよい。
図1は、画像処理システム100の一例を示す図である。画像処理システム100は、画像形成装置101、学習装置102および画像処理サーバ103を含む。画像形成装置101と学習装置102と画像処理サーバ103とは、ネットワーク104を介して、相互に接続される。ネットワーク104は、例えば、LANやWANである。ネットワーク104は、有線通信または無線通信を行うネットワークであってもよい。画像形成装置101と学習装置102と画像処理サーバ103とは、別個の装置ではなく、一体の装置として構成されていてもよい。また、各装置は、単一の装置により構成されていてもよいし、別個の装置により構成されていてもよい。例えば、画像処理サーバ103は、高速演算リソースを有する第1サーバ装置と、大容量ストレージを有する第2サーバ装置とにより構成され、両者が接続される構成が採用されてもよい。
画像形成装置101は、プリントやスキャン、FAX等の複数の機能を行うMFP(Multi Function Peripheral)等の装置である。画像形成装置101は、画像データを取得する取得部101Aの機能を有する。以下、各実施形態の画像データは、文字情報の画像を含む文書画像データ(原稿データ)であるものとする。画像形成装置101は、例えば、紙媒体に印字された帳票等の原稿をスキャンして画像データを取得する。また、画像形成装置101は、例えば、ファクシミリ装置が送信した帳票等の原稿(FAXデータ)を受信して、受信したFAXデータに対して所定のFAX処理を施して画像データを取得する。画像形成装置101は、取得した画像データを、画像処理サーバ103に送信する。ここで、画像形成装置101が取得する画像データは、元の原稿の画像データよりも画質が劣化した劣化画像になる。例えば、劣化画像は、JPEG等の画像圧縮や解像度変換、二値化等の非可逆変換を施された画像データである。劣化画像が用いられることにより、データ量の削減を図ることができる。
学習装置102は、学習モデルの機械学習を行う。学習装置102は、機械学習を行う学習部102Aを有する。学習装置102は、劣化画像が学習モデルに入力されたときに、圧縮ノイズ除去や高解像度化、多階調化等のように非可逆変換が施される前のオリジナル画像に近い復元画像が出力されるように学習モデルの機械学習を行う。本実施形態の機械学習は、多層構造のニューラルネットワークに対するディープラーニングであるものとして説明する。ただし、機械学習の手法としては、サポートベクターマシンや決定木等の任意の機械学習アルゴリズムが適用されてもよい。
オリジナル画像は、スキャンやFAXによって非可逆変換が施される前の高画質な画像データである。本実施形態では、スキャンされる原稿やFAXにより送信される原稿は、帳票であるものとして説明する。ただし、スキャンされる原稿やFAX送信される原稿は、帳票以外の原稿であってもよい。これら原稿は、スキャンされる過程やFAX送信される過程で、劣化するため、原稿に含まれる文字情報に欠損や変形等が生じる。
学習装置102は、学習用の画像データと教師データとを含む学習セットを用いて、機械学習を行う。学習用の画像データは劣化画像であり、教師データは劣化画像に対応する正解画像である。正解画像には、劣化画像が劣化する前の画像が用いられる。学習セットは、例えば、エンジニアにより学習装置102にセットされる。機械学習に用いられる学習セットは、多種多様な学習用の画像および教師データを含むことが好ましい。学習装置102が学習モデルの機械学習を行うことにより、学習モデルの重みパラメータが更新されて、機械学習された学習モデルが生成される。以下、機械学習がされた学習モデルを、学習済みモデルとする。学習装置102は、生成した学習済みモデルを画像処理サーバ103に送信する。
画像処理サーバ103は、画像形成装置101から受信した劣化画像を、学習装置102から受信した学習済みモデルを用いて、復元を行う画像処理装置である。画像処理サーバ103は、画像処理部103Aおよび記憶部103Bを有する。画像処理部103Aは、劣化画像を学習済みモデルに入力して、学習済みモデルから出力される推論結果である復元画像を記憶部103Bに記憶する。また、画像処理部103Aは、復元画像に対してOCR処理(光学文字認識処理)を施し、復元画像に含まれる文字情報(テキストデータ)を抽出し、抽出した文字情報を復元画像と関連付けて記憶部103Bに記憶する。
図2は、各装置のハードウェア構成の一例を示す図である。図2(a)は、画像形成装置101のハードウェア構成の一例を示す図である。画像形成装置101は、CPU201、ROM202、RAM204、プリンタデバイス205、スキャナデバイス206および原稿搬送デバイス207を含む。また、画像形成装置101は、ストレージ208、入力デバイス209、表示デバイス210および外部インターフェイス211を含む。各部は、データバス203を介して、相互に接続される。
CPU201は、画像形成装置101の全体の動作を制御する。CPU201は、ROM202に記憶されたブートプログラムを実行することで、画像形成装置101のシステムを起動する。そして、CPU201は、ストレージ208に記憶された制御プログラムを実行することで、画像形成装置101の各種の制御を実現する。ROM202は、不揮発性メモリ等で実現されるものであって、画像形成装置101を起動するブートプログラムを記憶する。データバス203は、画像形成装置101の各部の間でのデータ通信に用いられる。RAM204は、揮発性メモリで実現されるものであって、CPU201が制御プログラムを実行する際のワークメモリとして使用される。
プリンタデバイス205は、画像出力デバイスであって、画像形成装置101の内部の画像データを記憶媒体に印字して印刷出力する。スキャナデバイス206は、画像入力デバイスであって、文字や図表、写真等が印字された記憶媒体を光学的に読み取って画像データとして取得するための画像読み取り部である。原稿搬送デバイス207は、ADF(オートドキュメントフィーダ)等で実現される。原稿搬送デバイス207は、原稿台に載置された帳票等の原稿を検知し、検知した原稿を1枚ずつスキャナデバイス206に搬送する。ストレージ208は、例えば、HDD(ハードディスクドライブ)であり、制御プログラムや画像データ等を記憶する。
入力デバイス209は、タッチパネルやハードキー、マウス、キーボード等で実現される。ユーザ等が入力デバイス209を用いて操作を行うと、CPU201は、当該操作を受け付ける。表示デバイス210は、液晶ディスプレイ等で実現されるものであって、CPU201の制御により、設定画面等を含む各種の画面を表示する。外部インターフェイス211は、画像形成装置101とネットワーク104との間を接続する。外部インターフェイス211は、外部のFAX装置からFAXデータを受信する。また、外部インターフェイス211は、劣化画像を含む画像データを画像処理サーバ103に送信する。
図2(b)は、学習装置102のハードウェア構成の一例を示す図である。図2(b)に示すように、学習装置102は、CPU231、ROM232、RAM234、ストレージ235、入力デバイス236、表示デバイス237、外部インターフェイス238およびGPU239を含む。各部は、データバス233を介して、相互に接続される。CPU231は、学習装置102における全体の動作を制御する。CPU231は、ROM232に記憶されたブートプログラムを実行することで、学習装置102のシステムを起動する。また、CPU231は、ストレージ208に記憶された学習プログラムを実行することで、画像復元を行うための学習モデルの機械学習に関する制御を行う。ROM232は、不揮発性メモリで実現されるものであって、学習装置102を起動するブートプログラムを記憶する。
データバス233は、学習装置102の各部の間でのデータ通信に用いられる。RAM234は、揮発性メモリで実現されるものであって、CPU231が学習プログラムを実行する際のワークメモリとして使用される。ストレージ235は、HDD等で実現されるものであって、学習プログラムや学習データ等を記憶する。入力デバイス236は、マウスやキーボード等で実現される。エンジニア等が入力デバイス236を用いて操作を行うと、CPU231は当該操作を受け付ける。表示デバイス237は、液晶ディスプレイ等で実現される。表示デバイス237には、設定画面を含む各種の画面が表示される。
外部インターフェイス238は、ネットワーク104に接続される。例えば、学習装置102は、外部サーバや外部端末(パーソナルコンピュータやエッジコンピュータ等)から、学習モデルの機械学習に用いられる学習セットを、外部インターフェイス238を介して、取得する。GPU(グラフィックス プロセッシング ユニット)239は、機械学習の演算に用いられる。GPU239は、CPU231の制御に基づき、学習セットを用いて、学習モデルの機械学習に関する演算処理を行う。学習モデルの機械学習は、GPU239により行われてもよいし、CPU231により行われてもよいし、GPU239とCPU231との協働動作により行われてもよい。また、学習モデルの機械学習は、機械学習の演算に特化した回路により実現されてもよい。
図2(c)は、画像処理サーバ103のハードウェア構成の一例を示す図である。画像処理サーバ103は、CPU261、ROM262、RAM264、ストレージ265、入力デバイス266、表示デバイス267、外部インターフェイス268およびGPU269を含む。各部は、データバス263を介して、相互に接続される。CPU261は、画像処理サーバ103における全体の動作を制御する。CPU261は、取得手段および特定手段に対応する。CPU261は、ROM262に記憶されたブートプログラムを実行することで、画像処理サーバ103のシステムを起動する。CPU261は、ストレージ265に記憶された画像処理プログラムを実行することで、帳票認識や画像復元、文字情報抽出等の画像処理を実行する。ROM262は、不揮発性メモリで実現されるものであって、画像処理サーバ103を起動するブートプログラムを記憶する。データバス263は、画像処理サーバ103の各部の間でのデータ通信に用いられる。
RAM264は、揮発性メモリで実現されるものであって、CPU261が画像処理プログラムを実行する際のワークメモリとして使用される。ストレージ265は、HDD等で実現されるものであって、画像処理プログラムや学習済みモデル、登録済帳票等を記憶する。入力デバイス266は、マウスやキーボード等で実現される。ユーザが入力デバイス266を用いて操作を行うと、CPU261は当該操作を受け付ける。表示デバイス267は、液晶ディスプレイ等で実現されるものであって、設定画面を含む各種の画面を表示する。外部インターフェイス268は、ネットワーク104に接続される。画像処理サーバ103は、外部インターフェイス268を介して、学習装置102から学習済みモデルを取得し、画像形成装置101から劣化画像を含む画像データを取得する。
GPU269は、CPU261の制御に基づき、推論処理に関する演算を行う。GPU269またはCPU261は、画像処理手段に対応する。CPU261が復元対象となる劣化画像を学習済みモデルに入力すると、GPU269は学習済みモデルの演算を行い、推論結果として復元画像を出力する。推論処理は、GPU269により行われてもよいし、CPU261により行われてもよいし、GPU269とCPU261との協働動作により行われてもよい。また、推論処理は、機械学習の演算に特化した回路により実現されてもよい。
図3は、画像処理システム100の利用の流れの一例を示すシーケンス図である。以下、受発注業務に画像処理システム100が用いられる場合を想定した例について説明するが、画像処理システム100は受発注業務以外のシステムにも適用可能である。受発注業務においては、発注者が受注者(ユーザ)に対して発注した注文書等の帳票の画像データおよび当該画像データに含まれる文字情報を画像処理サーバ103に登録する。画像処理サーバ103は、業務システムとも称される。
図3(a)は、発注者が受注者に、郵送により注文書等の帳票原稿を送付し、受注者が、帳票原稿をスキャンして画像処理サーバ103に登録する際の処理の流れを示す図である。S301で、学習装置102は、エンジニアの操作に基づき、学習セットを取得する。例えば、エンジニアが、自身の端末から学習装置102に学習セットを送信することで、学習装置102のCPU231は学習セットを取得してもよい。また、エンジニアが学習装置102に学習セットを入力する操作を行い、学習装置102は入力された学習セットを取得してもよい。
S302で、CPU231は、学習セットの学習用の画像データ(劣化画像)を入力データとし、正解画像を教師データとして、学習モデルの機械学習を行う。劣化画像は、正解画像を劣化させる画像処理を施した画像である。後述するように、学習済みモデルは、複数の文字種条件のそれぞれについて生成される。従って、CPU231は、複数の学習モデルの機械学習を行い、複数の学習済みモデルを生成する。S303で、CPU231は、生成した複数の学習済みモデルを画像処理サーバ103に送信する。画像処理サーバ103のCPU261は、取得した複数の学習済みモデルをストレージ265等に記憶する。S301~S303は、推論処理が行われる前の事前の処理である。
S304以降の各処理は、受発注業務に関わる処理である。まず、受注者は、発注者が郵送により送付した帳票原稿を受け取る。S304で、受注者は、帳票原稿のスキャンを画像形成装置101に指示する。例えば、受注者は、原稿搬送デバイス207に帳票原稿をセットし、入力デバイス209を用いて、帳票原稿の流し読みを指示する操作を行う。スキャナデバイス206は帳票原稿を読み取り、読み取られた帳票原稿が画像データとして、CPU201に出力される。これにより、CPU201は、帳票原稿の画像データを取得する。取得された帳票原稿の画像データは、例えば、非可逆変換が施されており、画質が劣化画像になる。S305で、CPU201は、例えば、受注者からの指示に基づき、画像データ(劣化画像)を画像処理サーバ103に送信する。
画像処理サーバ103のCPU261は、画像形成装置101から取得した劣化画像に対して画像処理を施す制御を行う。このとき、CPU261は、ストレージ265等に記憶されている学習済みモデルを用いて、取得した劣化画像を復元する処理を行った後、復元した復元画像から文字情報を抽出する処理を行う。S307で、CPU261は、復元画像と抽出された文字情報とを関連付けて、画像処理結果として、ストレージ265等に記憶する。S308で、CPU261は、処理完了の通知を行う。CPU261は、処理完了を示す通知を表示デバイス237に表示してもよい。また、CPU261は、S304で原稿スキャンを指示する際にログインした受注者(ユーザ)に対応付けられたメールアドレスやメッセージアカウントに、処理完了を示す通知を送信してもよい。これにより、ユーザは、受発注業務に関わる処理が完了したことを認識できる。
図3(b)は、発注者がFAX装置を用いて、画像処理サーバ103に帳票原稿をFAX送信して、画像処理サーバ103に登録する際の処理の流れを示す図である。S321~S323は上述したS301~S303と同様であり、S326~S328は上述したS306~S308と同様であるため、説明を省略する。図3(b)の例では、受注者が、事前に、画像形成装置101の入力デバイス209を用いて、発注者によるFAX送信の受信設定を行っているものとする。
発注者がFAX装置を用いて、帳票原稿を画像形成装置101に送信する。S324で、画像形成装置101の外部インターフェイス211は、FAX装置からFAXデータを受信する。受信したFAXデータの画像は、帳票原稿の画像から劣化した劣化画像になる。S325で、画像形成装置101のCPU201は、上述した受信設定に従い、画像データ(劣化画像)を画像処理サーバ103に送信する。そして、画像処理サーバ103は、S326~S238の処理を行う。
次に、学習装置102が行う学習モデルの機械学習について説明する。学習装置102が学習モデルの機械学習を行うときには、学習用の画像と教師データ(正解画像)とがペアになっている学習セット(学習データ)が用いられる。正解画像は、画質が劣化していないオリジナル画像であるか、または画質の劣化が少ない画像である。一方、学習用の画像は、正解画像の画質を劣化させた画像である。正解画像と学習用の画像とがペアになった学習セットが、学習モデルの機械学習に用いられる。学習装置102は、多くの学習セットを用いて、学習モデルの機械学習を行って学習済みモデルを生成することで、学習済みモデルの推論精度を向上させることができる。
図4は、学習セットの生成の一例を示す図である。PDL(Printer Description Language)データ401は、正解画像を高品質に記述したベクタ形式のデータである。PDLデータ401は、教師データとしての正解画像に対応する。PDLデータ401には、例えば、PostScriptやPDF(Portable Document Format)等の形式のデータが適用されてもよい。教師データには、PDLとは異なる形式のデータが用いられてもよい。原稿402は、PDLデータ401を紙面に印刷した原稿である。スキャン画像403は、印刷された原稿402をスキャナデバイス等で読み取った画像である。
劣化画像404は、画像処理により、スキャン画像403を劣化させることにより生成される画像である。劣化画像404を生成するための画像処理として、例えば、FAX送受信による画像の劣化を再現するために、解像度変換や二値化等のFAX画像処理を適用することができる。また、劣化画像404を生成するための画像処理として、スキャンによる画像の劣化を再現するために、スキャナデバイス206の特性に合わせた画像補正やJPEG等の画像圧縮等のスキャン画像処理を適用することができる。
劣化画像404の生成は、例えば、エンジニアが所定の装置を用いて開発を行う環境下で行われる。このとき、エンジニアが用いる所定の装置により生成される劣化画像404は、学習済みモデルの推論精度を向上させるために、画像形成装置101のプリンタデバイス205やスキャナデバイス206と同等の再現性を有することが好ましい。また、劣化画像404は、プリンタデバイス205がPDLデータ401に基づき印刷した原稿402をスキャナデバイス206が読み取り、読み取られたスキャン画像403に対して画像処理を施すことにより得られてもよい。また、劣化画像404は、プリンタデバイス205およびスキャナデバイス206を疑似的に再現するシミュレータにより生成されてもよい。
正解画像405は、ベクタ形式のPDL(Printer Description Language)データ301を所定の解像度でラスタ形式に変換する描画処理(RIP:Raster Image Processing)した画像である。劣化画像404と正解画像405とがペアとして紐づけられることで、学習セット406が生成される。学習セット406の生成の方法や使用される装置等は、上述した例には限定されない。
次に、学習処理について説明する。図5は、学習処理の流れの一例を示すフローチャートである。図5の学習処理は、図3のS302およびS322に対応する。以下、学習モデルは、ニューラルネットワークであるものとして説明する。S501で、CPU231は、GPU239に設定されるニューラルネットワークの各層における重みパラメータの値を初期化する。このとき、CPU231は、ニューラルネットワークの各重みパラメータをランダムな値または初期値に設定してもよいし、前回学習済の値をロードして各重みパラメータに再設定してもよい。
S502で、CPU231は、複数の学習セットを取得する。このとき、CPU231は、S301またはS321で取得された複数の学習セットのうち、データ形式の条件を満たす学習セット(学習用の画像と正解画像とのペア)を複数取得する。データ形式の条件としては、例えば、解像度と階調と圧縮方式(異なる圧縮率を含む)との少なくとも1つ以上の条件がある。CPU231は、S301またはS321で取得された複数の学習セットのうち、解像度と階調と圧縮方式との全ての条件を満たす学習セットを複数取得してもよい。さらに、CPU231は、データ形式の条件を満たす複数の学習セットのうち、所定の文字種条件を満たす学習セットを複数取得する。文字種は、数字や記号、アルファベット、漢字等である。
文字種条件は、1種類の文字種の場合もあり、複数種類の文字種により構成される場合もある。例えば、数字のみの文字種であれば、「01234」等がある。また、数字と記号により構成される文字種であれば「012-3456」等がある。金額を示す文字情報の文字種条件は、例えば、「¥10,000」のように、数字と記号(「¥」と「,」)とにより構成される。また、和暦の日付を示す文字情報の文字種条件は、「令和1年1月1日」のように、漢字と数字とにより構成される。他にも、住所や氏名、電話番号、会社名、案件番号等の文字種条件は、1種類の文字種のみの条件であるか、または複数の文字種により構成される条件になる。
CPU231は、例えば、金額の文字種条件を満たす学習セットを取得する際には、複数の学習セットのうち文字種条件として数字と金額とにより構成される条件を満たす複数の学習セットを取得する。また、CPU231は、注文書番号等ように数字のみにより構成される文字種の文字種条件を満たす学習セットを取得する際には、複数の学習セットのうち文字種条件として数字のみの条件を満たす複数の学習セットを取得する。
S503で、CPU231は、各学習セットの学習用の画像(劣化画像)をニューラルネットワークに入力し、正解画像を教師データとして、GPU239に、学習用の画像と正解画像との誤差を算出させる。S504で、CPU231は、GPU239に、誤差逆伝搬法による演算を実行することにより、ニューラルネットワークの各層の重みパラメータを更新する。誤差逆伝搬法の演算が行われることで、S503で算出された誤差が最小化される。このとき、GPU239は、学習用の画像をニューラルネットワークに入力した際に、出力される画像が正解画像に近づくように、ニューラルネットワークの各層のノードの重みパラメータ(重みやバイアス等)を更新する。
S505で、CPU231は、ニューラルネットワークの学習回数が所定回数に達したかを判定する。所定回数は、任意に設定できるが、ニューラルネットワークの学習に十分な学習回数が設定されることが好ましい。CPU231は、S505でNoと判定した場合、フローをS502に戻し、学習回数が所定回数に達するまで、S502~S504の処理を繰り返し実行する。CPU231は、学習回数が所定回数に達した場合、S505でYesと判定し、フローをS506に進める。S506で、CPU231は、GPU239により更新された重みパラメータをストレージ235等に記憶する。
更新された重みパラメータが設定された学習モデルは、学習済みモデルである。学習済みモデルは、未知の劣化画像が入力されると、未知の劣化画像が劣化する前のオリジナル画像に近い画像を出力する。つまり、学習済みモデルは、劣化画像を復元する画像処理手段として機能する。例えば、学習済みモデルは、スキャン時の読取ノイズによって発生した画像中の孤立点を除去する画像復元を行う。また、学習済みモデルは、低解像度化や二値化によって発生した画像中の描画オブジェクトにおけるエッジ部分のがたつきを抑制して平滑化する画像復元を行う。
上述したように、S502で、データ形式の条件および文字種条件を満たす学習セットが取得される。S507で、学習装置102は、異なるデータ形式の条件または文字種条件で学習データの機械学習を行うかを判定する。CPU231は、S507でYesと判定した場合、フローをS501に戻し、異なる条件で、別の学習モデルの機械学習を実行する制御を行う。一方、CPU231は、S607でNoと判定した場合、図5のフローチャートの処理を終了させる。
S507の判定処理について説明する。例えば、S301またはS321で取得された学習セットに、複数のデータ形式の学習セットとして、異なる解像度の条件下で生成された複数の学習セットがあるとする。例えば、「600×600dpi」、「300×300dpi」および「200×100dpi」の3種類の学習セットが取得されたとする。CPU231は、S507で、3種類の学習セットのうち、未だ機械学習に用いられていない学習セットがある場合、S507でYesと判定する。また、S301またはS321で取得された学習セットに、複数のデータ形式の学習セットとして、異なる階調の条件下で生成された複数の学習セットがあるとする。例えば、16ビット階調(=65536色)、8ビット階調(=256色)および1ビット階調(=2色)の3種類の学習セットが取得されたとする。CPU231は、S507で、3種類の学習セットのうち、未だ学習モデルの機械学習に用いられていない学習セットがある場合、S507でYesと判定する。
また、取得された複数の学習セットに、複数の文字種条件があるとする。例えば、金額を表す文字画像に出現すると想定される文字種条件は、数字(“0”、“1”、“2”、…、“9”)と、一部の記号(“¥”、“,”、“-”等)とにより構成されることが条件である。また、日付を表す文字画像に出現すると想定される文字種条件は、数字と一部の漢字(“年”、“月”、“日”、“平”、“成”、“令”、“和”等)とにより構成されることが条件である。同様に、住所や氏名、電話番号、会社名、案件番号等の対象項目の文字画像に出現すると想定される文字種条件は、それぞれ異なる。CPU231は、GPU269を制御して、異なる文字種条件の全ての学習セットを用いた学習モデルの機械学習を行い、各条件のそれぞれに応じた学習済みモデルを生成する。従って、全てのデータ形式の条件と全ての文字種条件とのそれぞれに応じて、複数の学習済みモデルが生成される。
次に、画像処理サーバ103が行う画像処理の流れの一例について説明する。図6は、画像処理の流れの一例を示すフローチャートである。図6のフローチャートは、図3のS306およびS326の画像処理に対応する。上述したように、画像処理サーバ103は、画像形成装置101から画像データ(スキャンデータやFAXデータ)を受信する。画像データは、推論対象の劣化画像である。S601で、CPU261は、画像データを取得する。
S602で、CPU261は、ブロックセレクション(BS)処理を実行する。ブロックセレクション処理は、画像データを構成するオブジェクト単位で分割するようにブロック領域を選択し、各ブロック領域の属性を判定する処理である。ブロックセレクション処理は、文字や写真、図表等の属性を判定し、異なる属性を持つブロック領域に分割する処理である。ブロックセレクション処理には、任意の領域判定技術を適用できる。以下、ブロックセレクション処理により文字領域と判定されたブロックを、ブロック領域と称する。
S603で、CPU261は、帳票マッチング処理を実行する。帳票マッチング処理は、S601で取得した画像データと、ストレージ265等に記憶されている登録済帳票群との間で類似度を算出し、最大の類似度を持つ登録済帳票を抽出する処理である。帳票マッチング処理には任意の帳票認識技術を適用できる。登録済帳票群は、後述するS605で登録された過去に処理済みの画像データのグループである。登録済帳票群は、文書画像自体でなく、各文書画像のそれぞれについてのブロックセレクション処理結果等の帳票マッチング処理に利用可能な特徴量であってもよい。S603で、CPU261は、最大の類似度を持つ登録済帳票について、その類似度の値が所定の閾値以上である場合、登録済帳票を抽出し、閾値未満である場合、登録済帳票を抽出しない。
S604で、CPU261は、S603の帳票マッチング処理を行った結果、登録済帳票を抽出したかを判定する。CPU261は、帳票マッチング処理により登録済帳票を抽出した場合、S604でYesと判定し、フローをS608に進める。一方、帳票マッチング処理により登録済帳票を抽出しなかった場合、S604でNoと判定し、フローをS605に進める。
S605で、CPU261は、S601で取得した画像データを、S603の帳票マッチング処理で利用する登録済帳票群の中に追加する帳票登録処理を実行する。S606で、CPU261は、S601で取得した画像データのうち、S602で文字領域と判定した各ブロック領域のそれぞれに対して、OCR処理を実行し、文字情報を抽出する。S607で、CPU261は、OCR処理により抽出された文字情報に基づき、ブロック領域ごとに文字種情報を属性情報として記憶する。例えば、ブロック領域をOCR処理した結果、文字情報が数字と金額の表示に用いられる一部の記号とにより構成されているとする。この場合、CPU261は、抽出された文字情報に基づき、ブロック領域の属性情報は金額であると判定し、文字種情報は数字と金額の表示に用いられる一部の記号であると判定する。
また、ブロック領域をOCR処理した結果、文字情報が数字と金額の表示に用いられる日付を表す一部の漢字とにより構成されているとする。この場合、CPU261は、抽出された文字情報に基づき、ブロック領域の属性情報は「日付」、文字種情報は数字と金額の表示に用いられる一部の漢字(“年”、“月”、“日”、“平”、“成”、“令”、“和”等)であると判定する。以上の判定結果(文字種情報、属性情報)は登録済帳票と関連付けられて、ストレージ265等に記憶される。同様に、住所や氏名、電話番号、会社名、注文書番号等の各項目で出現すると想定される文字種情報、属性情報は登録済帳票と関連付けられて、ストレージ265等に記憶される。
CPU261は、ブロック領域をOCR処理したことにより得られる文字情報が、何れの属性にも該当しないと判定した場合、属性情報を「該当なし」としてストレージ265等に記憶する。登録済帳票と関連付けられて記憶されたブロック領域ごとの属性情報、文字種情報は、ユーザが入力デバイス266等を用いて、編集可能であってもよい。
S608で、CPU261は、ストレージ265等に記憶されたブロック領域ごとの文字種情報を特定する。S609で、S601で取得した画像データのデータ形式(解像度や階調、圧縮方式等)の情報を認識する。S610で、復元条件に合致した学習済みモデルがストレージ265に記憶されているかを判定する。図5を用いて説明したように、学習装置102は、複数のデータ形式の条件と複数の文字種条件とのそれぞれについて学習モデルの機械学習を行う。そして、複数のデータ形式の条件と複数の文字種条件とのそれぞれに適合した複数の学習済みモデルが生成される。生成された複数の学習済みモデルはストレージ265に記憶される。
従って、ストレージ265に記憶されている複数の学習済みモデルは、それぞれ異なるデータ形式および複数の文字種条件に適した学習処理が行われている。このため、劣化画像からオリジナル画像に近い出力画像を推論するためには、学習処理のデータ形式および文字種条件に合致した学習済みモデルが使用される。そこで、CPU261は、S610の判定を行う。復元条件のうち文字種条件が合致しているかは、学習済みモデルが、ブロック領域で使用される全ての文字種を含む学習セットを用いて学習されているかに基づき判定される。
ここで、復元条件は、文字種条件のみであってもよい。データ形式の条件が考慮されていない学習済みモデルが使用されたとしても、文字種条件に適した学習済みモデルを用いて、オリジナル画像の推論が行われることで、ブロック領域に含まれる文字情報を高い精度で復元することができる。この場合、学習処理においても、データ形式の条件を考慮した学習モデルの機械学習は行われない。
CPU261は、S610でNoと判定した場合、フローをS613に進める。一方、CPU261は、S610でYesと判定した場合、フローをS611に進める。S611で、CPU261は、ストレージ265に記憶されている複数の学習済みモデルのうち、復元条件に合致した学習済みモデルを取得する。
S612で、CPU261は、取得した学習済みモデルを用いて、劣化画像を復元する画像処理を行う。CPU261は、S601で取得した画像データ(劣化画像)のブロック領域の画像を、取得した学習済みモデルに入力する。このとき、CPU261は、劣化画像のブロック領域の画像を学習済みモデルの入力として、推論処理のための演算をGPU269に実行させる制御を行う。学習済みモデルからは推論結果として、ブロック領域の画像を復元した画像(復元画像)が得られる。画像データに複数のブロック領域が含まれている場合、各ブロック領域の画像を復元した複数の復元画像が得られる。学習済みモデルから出力される復元画像は、オリジナル画像のブロック領域の画像に近い画像である。特に、学習済みモデルの推論精度が高い場合、復元画像は、オリジナル画像のブロック領域の画像をほぼ再現した画像になる。
S613で、CPU261は、ブロック領域についての復元画像または劣化画像に対して、OCR処理を実行して、画像データのブロック領域に記載された文字情報(テキストデータ)を抽出する。S614で、抽出した文字情報を画像データのブロック領域と関連付けて、ストレージ265に記憶する。
ここで、学習処理および推論処理について説明する。図7は、学習処理および推論処理のサンプルを示す図である。図7(a)は、学習装置102が学習処理を行う際に用いられる学習セットのサンプルを示す図である。サンプル1およびサンプル2では、高品質な正解画像として「電」および「驚」が示されている。入力画像(学習用の画像)は、正解画像を劣化させた画像であり、正解画像の文字に欠損や変形等が生じている。学習処理では、入力画像が正解画像に近づくようにニューラルネットワークの重みパラメータが更新される。
図7(b)は、推論対象の劣化画像および復元画像のサンプルを示す図である。サンプル1には、劣化画像が示されている。サンプル1の劣化画像のオリジナル画像が示す文字は「源」である。劣化画像は、例えば、FAX送信により欠損や変形等生じたことに起因して劣化しており、判別することが難しい。このため、劣化画像に対してOCR処理が施された場合、認識される文字は、オリジナル画像が示す文字とは異なる「瀧」になる。一方、本実施形態では、劣化画像は学習済みモデルに入力され、学習済みモデルの推論結果として、サンプル1の復元画像が出力される。復元画像が示す文字は、劣化画像が示す文字よりも判別しやすい。復元画像に対してOCR処理が施された場合、認識される文字は、オリジナル画像示す文字と同じ「源」になる。
サンプル2も同様である。劣化画像が示す文字は、欠損や変形等生じたことに起因して劣化しており、判別することが難しい。劣化画像に対してOCR処理が施された場合、認識される文字は、オリジナル画像が示す文字と異なる「O」になる。一方、復元画像は、学習済みモデルの推論処理により劣化画像から復元されており、復元画像に対してOCR処理が施された場合、認識される文字は、オリジナル画像が示す文字と同じ「D」になる。従って、学習済みモデルを用いて、劣化画像から復元画像を推論することで、OCR処理により文字が誤認識されることが抑制される。
OCR処理としては、帳票マッチング処理で抽出された帳票が活字帳票であれば、活字OCR処理を適用することができ、手書き帳票であれば、手書きOCR処理を適用することができる。つまり、CPU261は、帳票マッチング処理で抽出された帳票に応じて、活字OCR処理や手書きOCR処理等の処理モジュールを適宜選択して、OCR処理を実行してもよい。
次に、ブロック領域ごとに文字種条件を考慮した画像復元および情報抽出について説明する。図8は、帳票の画像の一例を示す図である。図8の帳票800は、複数の項目801~810を含む。項目801は、発行日を示す。項目804は、注文書番号を示す。項目810は、金額の合計を示す。例えば、項目801、804、810の文字情報が入力項目である場合、帳票800に対してOCR処理が実行されて、認識された文字情報がストレージ265に記憶される。
図9は、劣化画像と復元画像と正解画像との一例を示す図である。図9(a)~(c)に示される例は、例えば、上述した項目804の注文書番号のブロック領域の画像であるとする。図9(a)の劣化画像は、例えば、FAX送信により画質が劣化している。劣化画像に対応するオリジナル画像には「F1G3」が記載されていたとする。当該文字画像は、アルファベットと数字とにより構成される文字種の文字の画像である。図9(a)の劣化画像に対してOCR処理が実行されると、例えば、「G」が「6」と誤認識されることがある。この場合、項目804の注文書番号が誤認識され、誤った注文書番号の情報が、業務システムとして機能する画像処理サーバ103に記憶される。
一方、本実施形態では、劣化画像は、学習済みモデルによる推論処理により復元され、学習済みモデルは復元画像を出力する。復元画像は、劣化画像よりも「F1G3」をOCR処理により認識しやすい画像になっている。従って、復元画像に対してOCR処理が実行されると、項目804の注文書番号が正しく認識され、正確な注文書番号の情報が、業務システムとして機能する画像処理サーバ103に記憶される。
図9(b)は、項目804に対応するブロック領域のオリジナル画像が「482404」の数字により構成された文字情報である。当該文字情報の書体は、明朝体であるとする。劣化画像には、文字を構成する線分に欠損が生じている。劣化画像に対してOCR処理が実行されると、正しい文字情報が認識されない場合がある。一方、学習済みモデルにより推論された復元画像に対してOCR処理が実行されると、復元画像は正解画像に近くなる。このため、復元画像からOCR処理により正しい文字情報が認識されるようになる。図9(c)の例は、オリジナル画像が「288996」の数字により構成された文字情報である。当該文字情報は、ゴシック体であるとする。劣化画像には、変形が生じているが、学習済みモデルにより推論された復元画像は、変形の度合いが低減され、正解画像に近くなっている。このため、復元画像から復元画像からOCR処理により正しい文字情報が認識されるようになる。
上述したように、文字種条件やデータ形式の条件に応じた多くの学習セットを用いて機械学習がされた複数の学習済みモデルが画像処理サーバ103に記憶される。そして、画像処理サーバ103は、推論対象のブロック領域の文字種条件やデータ形式の条件に応じた学習済みモデルに対して、劣化画像のブロック領域の画像を入力し、推論結果として復元画像を得る。学習済みモデルの推論処理により、劣化画像は、高い尤度を持つ文字形状の画像に近づくため、オリジナル画像の文字に近い文字の画像を取得することができる。そして、復元画像にOCR処理を実行することにより、オリジナル画像に記載されていた文字の認識精度が向上する。これにより、業務システムとして機能する画像処理サーバ103に正しい文字情報を記憶させることができる。
例えば、処理対象の帳票をスキャンやFAX送信等を行った場合、帳票の画像には劣化が生じ、画像の文字に欠損や変形等を生じ得る。このとき、上述したように、画像処理サーバ103は、処理対象の帳票または帳票の項目ごとに、適した学習済みモデルを用いて復元画像を得る。そして、画像処理サーバ103は、復元画像に対してOCR処理を実行することで、文字情報を高精度に抽出できる。すなわち、解像度低下や圧縮ノイズ等の劣化要因を有し、且つ文字種が限定される処理対象の帳票または項目に対して、対応する学習済モデルを用いて画像復元した後にOCR処理を行うことで、文字情報を高精度に抽出できる。
以上の第1実施形態では、帳票の画像に含まれるブロック領域ごとに文字情報の復元処理が行われているが、帳票の画像全体に含まれる文字情報の復元処理が行われてもよい。例えば、帳票の画像に含まれている項目数が少ない場合(例えば、1項目や2項目等の場合)、帳票の画像の全体に文字情報の復元処理が行われてもよい。この点は、以下の第2実施形態および第3実施形態でも同様である。
<第2実施形態>
次に、第2実施形態について説明する。第2実施形態では、復元条件として文字サイズの条件も加味した学習処理および推論処理が行われる。図5のフローチャートのS507で、第1実施形態では、複数の文字種条件および複数のデータ形式の条件についての学習セットを用いた学習モデルの機械学習が行われる。第2実施形態では、複数の文字種条件および複数のデータ形式の条件に加味して、さらに複数の文字サイズの条件についても学習モデルの機械学習が行われる。従って、複数の文字種条件、複数のデータ形式の条件および複数の文字サイズの条件のそれぞれに応じた複数の学習済みモデルが生成される。
次に、第2実施形態について説明する。第2実施形態では、復元条件として文字サイズの条件も加味した学習処理および推論処理が行われる。図5のフローチャートのS507で、第1実施形態では、複数の文字種条件および複数のデータ形式の条件についての学習セットを用いた学習モデルの機械学習が行われる。第2実施形態では、複数の文字種条件および複数のデータ形式の条件に加味して、さらに複数の文字サイズの条件についても学習モデルの機械学習が行われる。従って、複数の文字種条件、複数のデータ形式の条件および複数の文字サイズの条件のそれぞれに応じた複数の学習済みモデルが生成される。
第2実施形態では、文字サイズは、画素数で表されるものとする。ただし、文字サイズは、ポイント等の数値で表されてもよい。例えば、24ptの文字を300dpiの解像度で帳票に印字した場合に、文字サイズの情報として100画素を文字サイズの情報として取得することができる。第2実施形態では、例えば、大きい文字サイズ(14pt~2pt)に対応する画素数と小さいサイズ(8pt~12pt)に対応する画素数との2つの文字サイズの条件に分類される。そして、それぞれの文字サイズの条件に対応する画素数の学習セット(学習用の画像および正解画像)を用いて、学習モデルの機械学習が行われる。これにより、複数の文字種条件、複数のデータ形式の条件および複数の文字サイズの条件のそれぞれに応じた学習済みモデルが生成される。文字サイズの条件の分類は、上述した例には限定されない。
次に、図6を参照して、第2実施形態の画像処理について説明する。S608で、CPU261は、ブロック領域ごとの文字種情報を特定するとともに、ブロック領域ごとの文字サイズの情報を特定する。例えば、図8の項目801~810のうち、項目801~804は、16ptのポイントに対応する画素数であるとする。この場合、S611で、CPU261は、大きい文字サイズの学習セットを用いて機械学習された学習済みモデルを取得する。そして、S612で、CPU261は、取得された学習済みモデルに劣化画像を入力して、学習済みモデルが推論した復元画像を取得する。
図8の項目801~810のうち、項目805~810は、10ptのポイントに対応する画素数であるとする。この場合、S611で、CPU261は、小さい文字サイズの学習セットを用いて機械学習された学習済みモデルを取得する。そして、S612で、CPU261は、取得された学習済みモデルに劣化画像を入力して、学習済みモデルが推論した復元画像を取得する。以上により、文字サイズの条件も考慮した学習済みモデルによる復元処理を行うことができる。
上述したように、第2実施形態では、文字サイズの条件に合致した学習済モデルを適用して復元処理を行うことができるため、より高い精度で、劣化画像から復元画像を推論することができる。そして、復元画像に対してOCR処理が実行されると、文字情報を高度に抽出することができる。
<第3実施形態>
次に、第3実施形態について説明する。第3実施形態では、帳票に含まれる各ブロック領域のうち一部のブロック領域に限定して、復元処理およびOCR処理が行われる。第3実施形態では、画像処理サーバ103には、画像復元の対象となる1以上のブロック領域が予め指定されている。例えば、帳票における金額(単価、合計)や電話番号、商品コード、注文書番号等のように他のデータベース情報との照合に用いる数字および記号は、特に、高い認識精度が求められる。従って、帳票のうち高い認識精度が求められる1以上のブロック領域は、復元対象として予め指定される。指定される項目は、例えば、受注者が、入力デバイス266を用いて、画像処理サーバ103に登録してもよい。
次に、第3実施形態について説明する。第3実施形態では、帳票に含まれる各ブロック領域のうち一部のブロック領域に限定して、復元処理およびOCR処理が行われる。第3実施形態では、画像処理サーバ103には、画像復元の対象となる1以上のブロック領域が予め指定されている。例えば、帳票における金額(単価、合計)や電話番号、商品コード、注文書番号等のように他のデータベース情報との照合に用いる数字および記号は、特に、高い認識精度が求められる。従って、帳票のうち高い認識精度が求められる1以上のブロック領域は、復元対象として予め指定される。指定される項目は、例えば、受注者が、入力デバイス266を用いて、画像処理サーバ103に登録してもよい。
例えば、図8の帳票800の例において、数字のみの文字種条件で表される項目804、805、807に対応するブロック領域が、復元対象として指定されたとする。この場合、図6のS610で、CPU261は、項目804、805、807については、Yesと判定し、S611およびS612の処理を行う。一方、CPU261は、項目804、805、807以外の各項目については、S610でNoと判定し、S611およびS612の処理を行わない。
また、図8の帳票800の例において、数字と一部の記号とにより構成される文字種条件で表される項目804~810に対応するブロック領域が、復元対象として指定されたとする。この場合、図6のS610で、CPU261は、項目804~810については、Yesと判定し、S611およびS612の処理を行う。一方、CPU261は、項目804~810以外の各項目については、S610でNoと判定し、S611およびS612の処理を行わない。
以上のように、第3実施形態では、予め指定された項目に対応するブロック領域に限定して、復元処理およびOCR処理が行われる。復元処理は、学習済みモデルによる推論処理により実現される。学習済みモデルによる推論処理の演算量は膨大である。第3実施形態のように、復元処理の対象となるブロック領域が限定されることで、演算量を低減される。その結果、画像処理にかかる時間を短縮できる。また、文字認識に高い精度が求められる項目に対応するブロック領域については、学習済みモデルを用いた復元処理が行われるため、必要最小限の処理が追加されることで、高い認識精度を維持することができる。
以上、本発明の好ましい実施の形態について説明したが、本発明は上述した各実施の形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。本発明は、上述の各実施の形態の1以上の機能を実現するプログラムを、ネットワークや記憶媒体を介してシステムや装置に供給し、そのシステム又は装置のコンピュータの1つ以上のプロセッサーがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 画像形成装置
102 学習装置
103 画像処理サーバ
261 CPU
291 GPU
102 学習装置
103 画像処理サーバ
261 CPU
291 GPU
Claims (12)
- 文字情報の画像を含む画像データを取得する取得手段と、
前記文字情報の文字種を特定する特定手段と、
複数の文字種条件のそれぞれに対応する学習用の画像と正解画像とを用いて機械学習された複数の学習済みモデルから、特定された前記文字種に対応する学習済みモデルを取得し、取得した前記学習済みモデルに前記文字情報の画像を入力して、当該文字情報の画像を復元する画像処理手段と、
を備えることを特徴とする画像処理装置。 - 前記画像処理手段は、復元した前記文字情報の画像に光学文字認識処理を施し、前記文字情報を認識することを特徴とする請求項1に記載の画像処理装置。
- 前記画像データは、スキャナで読み取られた画像データまたはFAX送信された画像データであることを特徴とする請求項1または2に記載の画像処理装置。
- 前記複数の学習済みモデルは、さらに複数のデータ形式の条件のそれぞれに対応する学習用の画像と正解画像とを用いて機械学習されており、
前記画像処理手段は、前記画像データのデータ形式に対応する学習済みモデルを取得することを特徴とする請求項1乃至3のうち何れか1項に記載の画像処理装置。 - 前記画像処理手段は、前記画像データに含まれる複数のブロック領域のそれぞれの文字情報の画像を復元することを特徴とする請求項1乃至4のうち何れか1項に記載の画像処理装置。
- 前記ブロック領域の文字情報の画像の文字種は、光学文字認識処理により特定されることを特徴とする請求項5に記載の画像処理装置。
- 前記画像データは、帳票の画像データであり、
前記ブロック領域は、前記帳票に含まれる1以上の項目であることを特徴とする請求項5または6に記載の画像処理装置。 - 前記画像処理手段は、前記複数のブロック領域のうち文字種が登録されているブロック領域に対して前記文字情報の画像を復元する処理を行い、前記文字種が登録されていないブロック領域に対して前記文字情報の画像を復元する処理を行わないことを特徴とする請求項5乃至7のうち何れか1項に記載の画像処理装置。
- 前記複数の学習済みモデルは、さらに複数の文字サイズの条件のそれぞれに対応する学習用の画像と正解画像とを用いて機械学習されており、
前記画像処理手段は、前記画像データの文字サイズに対応する学習済みモデルを取得することを特徴とする請求項5乃至8のうち何れか1項に記載の画像処理装置。 - 前記画像処理手段は、前記複数のブロック領域のうち指定されたブロック領域に対して前記文字情報の画像を復元する処理を行い、指定されていないブロック領域に対して前記文字情報の画像を復元する処理を行わないことを特徴とする請求項5乃至9のうち何れか1項に記載の画像処理装置。
- 文字情報の画像を含む画像データを取得する工程と、
前記文字情報の文字種を特定する工程と、
複数の文字種条件のそれぞれに対応する学習用の画像と正解画像とを用いて機械学習された複数の学習済みモデルから、特定された前記文字種に対応する学習済みモデルを取得し、取得した前記学習済みモデルに前記文字情報の画像を入力して、当該文字情報の画像を復元する工程と、
を備えることを特徴とする画像処理方法。 - 請求項1乃至10のうち何れか1項に記載の画像処理装置の各手段をコンピュータに実行させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020203561A JP2022090947A (ja) | 2020-12-08 | 2020-12-08 | 画像処理装置、画像処理方法およびプログラム |
US17/529,672 US20220180114A1 (en) | 2020-12-08 | 2021-11-18 | Image processing apparatus capable of restoring degraded image with high accuracy, image processing method, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020203561A JP2022090947A (ja) | 2020-12-08 | 2020-12-08 | 画像処理装置、画像処理方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022090947A true JP2022090947A (ja) | 2022-06-20 |
Family
ID=81848182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020203561A Pending JP2022090947A (ja) | 2020-12-08 | 2020-12-08 | 画像処理装置、画像処理方法およびプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220180114A1 (ja) |
JP (1) | JP2022090947A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11720769B2 (en) * | 2021-06-03 | 2023-08-08 | Global Graphics Software Limited | Methods and systems for enhancing raster image processing using artificial intelligence |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019169025A (ja) * | 2018-03-26 | 2019-10-03 | 株式会社Pfu | 情報処理装置、文字認識エンジン選択方法及びプログラム |
KR20200010777A (ko) * | 2018-07-23 | 2020-01-31 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | 유사 문자의 과거 인식 결과를 이용하는 문자 인식 |
-
2020
- 2020-12-08 JP JP2020203561A patent/JP2022090947A/ja active Pending
-
2021
- 2021-11-18 US US17/529,672 patent/US20220180114A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220180114A1 (en) | 2022-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5623079B2 (ja) | ハード・コピーの書式からの書式定義の自動発生 | |
US8619278B2 (en) | Printed matter examination apparatus, printed matter examination method, and printed matter examination system | |
US11574489B2 (en) | Image processing system, image processing method, and storage medium | |
JP2017146745A (ja) | 情報処理装置、制御方法、情報処理システム、およびプログラム | |
US20180270387A1 (en) | Printing apparatus, server, printing method, and control method | |
JP2019159633A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
US11223743B2 (en) | Image processing system, image processing apparatus, method of controlling the image processing apparatus, and storage medium | |
JP2022090947A (ja) | 画像処理装置、画像処理方法およびプログラム | |
CN111126273B (zh) | 图像处理方法、装置、电子设备以及存储介质 | |
US7783111B2 (en) | Writing image acquisition apparatus, writing information extraction method, and storage medium | |
CN114872454B (zh) | 信息处理装置以及信息处理装置的控制方法 | |
JP2019153919A (ja) | 画像処理装置、その制御方法、及びプログラム | |
US11170211B2 (en) | Information processing apparatus for extracting portions filled with characters from completed document without user intervention and non-transitory computer readable medium | |
JP4797766B2 (ja) | 画像処理装置、画像形成装置および画像処理方法 | |
JP2023030811A (ja) | 情報処理装置、抽出処理装置、画像処理システム、情報処理装置の制御方法、及びプログラム | |
JP7452059B2 (ja) | 情報処理装置及びプログラム | |
US20220301326A1 (en) | Ocr target area position acquisition system, computer-readable non-transitory recording medium storing ocr target area position acquisition program, hard copy, hard copy generation system, and computer-readable non-transitory recording medium storing hard copy generation program | |
US11811984B2 (en) | Image processing system, image processing apparatus and method of controlling the same, and storage medium | |
US11093191B2 (en) | Information processing apparatus and non-transitory computer readable medium capable of extracting a job flow without use of attribute information included in job entries | |
WO2022162867A1 (ja) | 印刷方法、電子機器、プログラム、サーバ及び画像形成装置 | |
US11635305B2 (en) | Information processing apparatus and non-transitory computer readable medium | |
US11659106B2 (en) | Information processing apparatus, non-transitory computer readable medium, and character recognition system | |
JP7452060B2 (ja) | 情報処理装置及びプログラム | |
JP2021135868A (ja) | 改ざん検知システム及び改ざん検知方法 | |
JP2023140646A (ja) | 情報処理装置、情報処理方法、情報処理プログラム及び情報処理システム |