JP7279382B2 - 情報処理装置及び情報処理プログラム - Google Patents

情報処理装置及び情報処理プログラム Download PDF

Info

Publication number
JP7279382B2
JP7279382B2 JP2019016252A JP2019016252A JP7279382B2 JP 7279382 B2 JP7279382 B2 JP 7279382B2 JP 2019016252 A JP2019016252 A JP 2019016252A JP 2019016252 A JP2019016252 A JP 2019016252A JP 7279382 B2 JP7279382 B2 JP 7279382B2
Authority
JP
Japan
Prior art keywords
character string
character
unit
candidates
candidate
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
JP2019016252A
Other languages
English (en)
Other versions
JP2020123273A (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 JP2019016252A priority Critical patent/JP7279382B2/ja
Publication of JP2020123273A publication Critical patent/JP2020123273A/ja
Application granted granted Critical
Publication of JP7279382B2 publication Critical patent/JP7279382B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Discrimination (AREA)

Description

本発明は、情報処理装置及び情報処理プログラムに関する。
特許文献1には、情報を複数保持する情報保持手段中から所定の情報を検索する情報検索装置において、文書画像入力手段と、文字認識手段と、文字認識の確信度から正規化レベルを決定する手段と、前記正規化レベルに基づき代表文字に置き換える正規化手段と、前記情報保持手段中から類似したテキストを含む情報を検索する検索手段と、前記検索結果を出力する検索結果出力手段とを備えたことを特徴とする情報検索装置が開示されている。
特許文献2には、文字列から所与の辞書に含まれる特定用語を検索する情報処理装置であって、n-gram方式を利用して前記所与の辞書に対して前記文字列の部分文字列の検索を行い、前記所与の辞書から該文字列に含まれる1以上の特定用語候補を抽出する抽出手段と、前記1以上の特定用語候補の各々に対して、DPマッチング方式を利用して特定用語候補と該特定用語候補に対応する前記文字列内の部分文字列との編集距離を導出する導出手段と、前記編集距離が所定の閾値より短い前記1以上の特定用語候補に対応する前記文字列内の部分文字列を出力する出力手段と、を有することを特徴とする情報処理装置が開示されている。
特開2007-323415号公報 特開2018-81451号公報
本発明は、予め定めた参照リストを用いなくても、精度良く画像に含まれる文字列を特定することができる情報処理装置及び情報処理プログラムを提供することを目的とする。
第1態様に係る情報処理装置は、文字認識処理によって画像から認識された文字列を取得する取得部と、前記取得部で取得された文字列から、正規表現で表された抽出パターンを用いて文字列候補を抽出する抽出部と、前記文字認識処理が誤認識する誤認識パターンを用いて前記文字列候補を修正する修正部と、前記正規表現を用いて、前記修正部で修正された文字列候補の中から特定した文字列候補を出力する出力部と、を備える。
第2態様に係る情報処理装置は、第1態様に係る情報処理装置において、前記抽出部は、前記誤認識パターンを用いて前記正規表現を修正した修正正規表現で表された修正抽出パターンを用いて前記文字列候補を抽出する。
第3態様に係る情報処理装置は、第1態様又は第2態様に係る情報処理装置において、前記取得部は前記画像を取得し、前記修正部は、特定の文字を対象として前記画像の文字認識処理を行う文字認識処理部と、前記文字認識処理部により認識された文字列と同型の文字列候補である誤認識文字列候補を生成する生成部と、を含み、前記出力部は、前記誤認識文字列候補の中から特定した文字列候補を出力する。
第4態様に係る情報処理装置は、第3態様に係る情報処理装置において、前記生成部は、ユーザーによって指定された誤認識パターンを用いて生成した文字列を前記誤認識文字列候補に追加する。
第5態様に係る情報処理装置は、第3態様又は第4態様に係る情報処理装置において、前記生成部は、前記抽出パターンで表される文字列候補を除いて前記誤認識文字列候補を生成する。
第6態様に係る情報処理装置は、第3~第5態様の何れかの態様に係る情報処理装置において、前記文字認識処理部は、文字認識の精度を表すスコアを算出し、前記出力部は、前記スコアが予め定めた閾値以上の場合に、前記特定した文字列候補を出力する。
第7態様に係る情報処理装置は、第3~第5態様の何れかの態様に係る情報処理装置において、前記文字認識処理部は、文字認識の精度を表すスコアを算出し、前記出力部は、前記スコアが予め定めた閾値未満の場合に、前記特定した文字列候補を推定文字列候補として出力する。
第8態様に係る情報処理装置は、第3~第5態様の何れかの態様に係る情報処理装置において、前記文字認識処理部は、文字認識の精度を表すスコアを算出し、前記出力部は、前記スコアが予め定めた閾値以上で且つ前記特定した文字列候補が複数の場合に、複数の前記特定した文字列候補を推定文字列候補として出力する。
第9態様に係る情報処理装置は、第3~第5態様の何れかの態様に係る情報処理装置において、前記文字認識処理部により文字認識された文字列から必要な文字列である必要文字列を抽出する必要文字列抽出部を更に備え、前記生成部は、前記必要文字列抽出部により抽出された前記必要文字列と同型の文字列候補である誤認識文字列候補を生成する。
第10態様に係る情報処理装置は、第1~第5態様の何れかの態様に係る情報処理装置において、前記出力部は、前記正規表現で表される文字列に前記修正部で修正された文字列候補が存在しない場合、前記正規表現で表される文字列のうち、前記修正部で修正された文字列候補に近い文字列を推定文字列候補として出力する。
第11態様に係る情報処理装置は、第10態様に係る情報処理装置において、前記出力部は、前記正規表現で表される文字列のうち、前記修正部で修正された文字列候補と異なる文字の数が最も少ない文字列を推定文字列候補として出力する。
第12態様に係る情報処理プログラムは、コンピュータを、第1~第11態様の何れか1つの態様に記載の情報処理装置の各部として機能させるための情報処理プログラムである。
第1及び第12態様によれば、予め定めた参照リストを用いなくても、精度良く画像に含まれる文字列を特定することができる、という効果を有する。
第2態様によれば、誤認識パターンを用いて正規表現を修正した修正正規表現で表された修正抽出パターンを用いずに文字列候補を抽出する場合と比較して、本来抽出すべき文字列の一部の文字が誤認識された文字列も抽出することができる、という効果を有する。
第3態様によれば、誤認識文字列候補を生成しない場合と比較して、精度良く画像に含まれる文字列を特定することができる、という効果を有する。
第4態様によれば、ユーザーによって指定された誤認識パターンを用いずに誤認識文字列候補を生成する場合と比較して、精度良く画像に含まれる文字列を特定することができる、という効果を有する。
第5態様によれば、抽出パターンで表される文字列候補を除かずに誤認識文字列候補を生成する場合と比較して、画像に含まれる文字列を特定するまでの時間を短縮することができる、という効果を有する。
第6態様によれば、文字認識の精度を表すスコアに関係なく特定した文字列候補を出力する場合と比較して、特定した文字列候補が出力されたことについての信頼性が高まる、という効果を有する。
第7態様によれば、文字認識の精度を表すスコアに関係なく特定した文字列候補を推定文字列候補として出力する場合と比較して、推定文字列候補として出力されたことについての信頼性が高まる、という効果を有する。
第8態様によれば、文字認識の精度を表すスコアに関係なく複数の特定した文字列候補を推定文字列候補として出力する場合と比較して、複数の推定文字列候補として出力されたことについての信頼性が高まる、という効果を有する。
第9態様によれば、文字認識された文字列から必要文字列を抽出せずに誤認識文字列候補を生成する場合と比較して、適切に誤認識文字列候補を生成することができる、という効果を有する。
第10態様によれば、正規表現で表される文字列に文字列候補が存在しない場合に何も出力しない場合と比較して、画像に含まれる可能性のある文字列を把握することができる、という効果を有する。
第11態様によれば、正規表現で表される文字列と文字列候補との異なる文字の数に関係なく推定文字列候補を特定する場合と比較して、推定文字列候補の信頼性が高まる、という効果を有する。
画像形成装置の構成図である。 第1実施形態に係るCPUの機能ブロック図である。 第1実施形態に係る情報処理のフローチャートである。 図面を読み取った画像の一例を示す図である。 再認識処理の対象となる領域について説明するための図である。 誤認識文字情報の一例を示す図である。 誤認識パターン情報の一例を示す図である。 第2実施形態に係るCPUの機能ブロック図である。 第2実施形態に係る情報処理のフローチャートである。
以下、図面を参照して、本発明を実施するための形態例を詳細に説明する。
(第1実施形態)
図1は、本実施形態に係る画像形成装置1の構成図である。図1に示すように、画像形成装置1は、スキャナ部2、画像形成部3、操作部4、表示部5、通信部6、記憶部7、及び情報処理装置10を備える。なお、図1では、用紙等の記録媒体を供給する供給機構、記録媒体を搬送する搬送機構、記録媒体を排出する排出機構等の図示を省略している。
画像形成装置1は、原稿を読み取るスキャン機能、原稿を複写するコピー機能、印刷データを印刷する印刷機能、原稿をファクシミリ送信するファクシミリ送信機能等の複数の機能を有する複合機として機能する。
スキャナ部2は、画像が形成された紙等の記録媒体を光学的に読み取って読み取り画像を生成し、情報処理装置10に出力する。
画像形成部3は、例えば電子写真方式又はインクジェット記録方式等により紙等の記録媒体に画像を形成する機能を有し、情報処理装置10からの指示により画像を記録媒体に形成する。
操作部4は、各種操作を受け付ける操作キーを含んで構成される。
表示部5は、液晶ディスプレイ等で構成され、例えば画面に指等で触れることで各種操作を受け付けるタッチパネルで構成される。
通信部6は、外部装置等とデータ通信を行うためのインターフェースである。
記憶部7は、ハードディスク等の不揮発性の記憶装置で構成され、後述する情報処理プログラム等を記憶する。
情報処理装置10は、CPU(Central Processing Unit)10A、ROM(Read Only Memory)10B、RAM(Random Access Memory)10C、不揮発性メモリ10D、及び入出力インターフェース(I/O)10Eを備える。そして、CPU10A、ROM10B、RAM10C、不揮発性メモリ10D、及びI/O10Eがバス10Fを介して各々接続されている。I/O10Eには、スキャナ部2、画像形成部3、操作部4、表示部5、通信部6、記憶部7が接続されている。CPU10Aは、記憶部7に記憶された情報処理プログラムを読み込んで実行する。
画像形成装置1は、前述したコピー機能等の複合機の基本機能の他に、図面情報抽出機能を有する。図面情報抽出機能は、製造業及び設備・建設業等で使用する図面を読み取り、読み取った図面の画像から、図面に記載されている指定の文字列を図面情報として抽出する機能である。図面に記載されている指定の文字列には、例えば品番、品名、及び版等を含む基本属性、図面に表された製品のスペックを表すスペック情報、材料情報、設計標準書番号等の各種情報を表す文字列が含まれる。図面から抽出した図面情報は、紙等の記録媒体に印刷したり、データファイルとして記憶部7に記憶したり、通信部6を介して外部装置に送信したり、表示部5に表示したりする。
図面情報抽出機能が利用されるケースとしては以下のようなケースが挙げられる。例えば図面に記載された文字列が或る技術標準に基づいて記載されている場合において、技術標準が更新されて図面に記載された文字列を修正する必要がある場合に、旧技術標準で記載された文字列を含む図面を探す場合等である。
以下、画像形成装置1が図面情報抽出機能を実行する場合におけるCPU10Aの機能構成について説明する。
図2に示すように、CPU10Aは、機能的には、OCR処理部20、取得部22、抽出部24、修正部26、及び出力部28を備える。
OCR処理部20は、スキャナ部2が原稿から読み取った画像に対して文字認識処理、すなわちOCR(Optical Character Recognition)処理を実行し、読み取った画像に含まれる文字列を取得部22に出力する。なお、OCR処理部20が実行するOCR処理は、一例としてルールベースのOCR処理である。すなわち、予め定めた規則に基づいて、読み取った画像に含まれる文字列を全て抽出する。
取得部22は、OCR処理部20のOCR処理によって画像から認識された文字列を取得する。取得部22は、取得した文字列を修正部26へ出力する。
抽出部24は、取得部22で取得された文字列から、正規表現で表された抽出パターンを用いて文字列候補を抽出する。なお、OCR処理部20によるOCR処理によって認識された文字列には、誤認識された文字が含まれる場合が多い。このため、抽出部24は、OCR処理部20のOCR処理で誤認識する誤認識パターンを用いて修正された修正正規表現で表された抽出パターンを用いて文字列候補を抽出する。
修正部26は、OCR処理が誤認識する誤認識パターンを用いて、抽出部24が抽出した文字列候補を修正する。
具体的には、修正部26は、再認識処理部30及び生成部32を備える。
再認識処理部30は、特定の文字を対象として画像のOCR処理を再度行う。再認識処理部30は、例えばニューラルネットワーク等の機械学習を用いて画像のOCR処理を実行する。なお、再認識処理部30は、文字認識処理部の一例である。
生成部32は、再認識処理部30により認識された文字列候補と同型の文字列候補である誤認識文字列候補を生成する。例えば、誤認識パターンを用いて正規表現を修正した修正正規表現で表された修正抽出パターンを用いて誤認識文字列候補を生成する。
ここで、誤認識文字列候補とは、再認識処理部30により認識された文字列候補であって、認識された文字と同型であり認識が難しい文字列候補、又は、再認識処理部30により認識された文字列であって、認識された文字が誤っている可能性の高い文字列候補である。なお、以下では、再認識処理部30により認識された文字列も誤認識文字列候補に含まれるものとする。
出力部28は、正規表現を用いて、修正部26で修正された文字列候補、すなわち生成部32で生成された誤認識文字列候補の中から特定した文字列候補を出力する。
次に、図3を参照して、本実施の形態に係る情報処理装置10の作用を説明する。図2に示すように、情報処理プログラム40は記憶部7に記憶されている。CPU10Aが情報処理プログラム40を読み出して実行することにより、図3に示す情報処理が実行される。なお、図3に示す情報処理は、例えば、ユーザーがスキャナ部2に図面をセットし、操作部4を操作して図面情報抽出処理の実行を指示した場合に実行される。
ステップS100では、CPU10Aが、スキャナ部2に図面の読み取りを指示し、スキャナ部2が読み取った図面の画像を取得する。
ステップS102では、CPU10Aが、ステップS100で取得した画像に対してルールベースのOCR処理を実行する。これにより、読み取った画像に含まれる全ての文字列が取得される。また、読み取った画像に含まれる全ての文字列の位置、すなわち画像の中の座標も取得される。OCR処理により認識された文字列は、例えばXML形式の文字列として得られるが、文字列の形式はXML形式に限られるものではない。
ステップS104では、CPU10Aが、ステップS102のOCR処理によって得られた文字列から、ステップS100で取得した画像に含まれる文字列候補を抽出する。具体的には、正規表現で表された抽出パターンを用いて画像に含まれる文字列候補を抽出する。本実施形態では、例えば図2に示すように、正規表現が定義された正規表現情報42が予め記憶部7に記憶されており、この正規表現情報42で定義された正規表現で表される抽出パターンを用いて文字列候補を抽出する。なお、正規表現情報42を予め記憶部7に記憶しておく場合に限らず、通信部6を介して外部装置から正規表現情報42を取得してもよい。
ここで、正規表現とは、文字列の集合を一つの文字列で表現する方法である。そして、正規表現は、図面情報の抽出対象となる図面に含まれ得る文字列に対応したものである。すなわち、記憶部7に予め記憶された正規表現情報42には、図面情報の抽出対象となる図面に含まれ得る文字列に対応した正規表現が定義されている。
例えば、図面情報の抽出対象となる図面に含まれ得る文字列が4個の文字から構成され、先頭の文字が“A”、2番目の文字が“B”、3番目の文字が“C”、4番目の文字が“0”~“9”の10種類の数字の何れかの文字である文字列であるとする。この場合、図面情報の抽出対象となる図面に含まれ得る文字列の正規表現は、“[A][B][C][0-9]”という一つの文字列で表される。この場合、正規表現情報42には、正規表現として“[A][B][C][0-9]”が定義される。なお、正規表現“[A][B][C][0-9]”で表された抽出パターンの文字列は、“ABC0”~“ABC9”までの10パターンとなる。
ところで、ステップS102のOCR処理によって認識された文字列には、誤認識された文字が含まれる場合が多い。このため、上記の例において、正規表現“[A][B][C][0-9]”で表される抽出パターンを用いて文字列候補を抽出したのでは、本来抽出すべき文字列の一部の文字が誤認識された文字列が抽出されなくなってしまう。このため、ステップS104では、OCR処理で誤認識する誤認識パターンを用いて修正された修正正規表現で表された抽出パターンを用いて文字列候補を抽出する。すなわち、正規表現情報42には、OCR処理で誤認識する誤認識パターンを用いて修正された修正正規表現を定義しておく。
例えば、上記の例の場合において、“A”は、例えば“H”と誤認識されやすい。また、“B”は、例えば“8”又は“日”と誤認識されやすい。また、“C”は、“[”又は“(”と誤認識されやすい。また、“0”は、“o”又は“O”と誤認識されやすい。この場合、OCR処理で誤認識する誤認識パターンを用いて修正された修正正規表現は、“[AH][B8日][C[(][0oO-9]”となる。このような修正正規表現で表される抽出パターンを用いて文字列候補を抽出することにより、本来抽出すべき文字列の一部の文字が誤認識された文字列も抽出される。
例えばステップS100で得られた画像が図4に示す画像50であったとする。画像50には、文字列“ABC0”を表す画像、文字列“ABC8”を表す画像、文字列“XYZ1”を表す画像が含まれている。
この場合、ステップS102のOCR処理では、画像50に含まれる全ての文字列が認識されるので、文字列“ABC0”、文字列“ABC8”、文字列“XYZ1”の全てが何らかの文字列として全て認識される。そして、ステップS102のOCR処理では少なくとも一部の文字が誤認識される場合があるので、全ての文字列を正しく認識するとは限らない。例えば、文字列“ABC0”については、例えば“ABCo”又は“ABCO”と誤認識される場合がある。また、文字列“ABC8”については、“ABCB”と誤認識される場合がある。これに対して、ステップS104では、修正正規表現で表された抽出パターンを用いて文字列候補を抽出するので、例えば“ABCo”又は“ABCO”と誤認識されても文字列候補として抽出される。
ステップS106では、CPU10Aが、ステップS104で抽出された文字列候補について学習モデルを用いたOCR処理(以下、再認識処理と称する)を実行する。すなわち、ステップS100で取得した画像全体について再認識処理を実行するのではなく、ステップS104で抽出された文字列候補についてのみ再認識処理を実行する。なお、再認識処理を実行する対象の領域は、ステップS102のルールベースのOCR処理で得られた文字列候補の位置に基づいて設定すればよい。
例えば図5に示すように、画像50全体について再認識処理を実行するのではなく、文字列候補“ABC0”を含む領域R1と、文字列候補“ABC8”を含む領域R2と、について再認識処理を実行する。
なお、学習モデルを用いたOCR処理としては、本実施形態では一例として畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)等の機械学習を用いたOCR処理が挙げられるが、これに限られるものではない。
学習モデルは、特定の文字について学習されている。ここで、特定の文字とは、図面情報抽出機能を実行する対象の図面に含まれ得る文字であり、例えば、アルファベット、数字、及び記号等である。
このように、特定の文字について学習された学習モデルを用いたOCR処理は、ステップS102で実行されるルールベースのOCR処理と比較して文字列の認識率は高くなる。
例えば画像50に含まれる文字列“ABC0”が、ステップS102のOCR処理で“ABCo”と誤認識され、文字列“ABC8”が“ABCB”と誤認識されたとする。このような場合でも、ステップS106の再認識処理で図5に示す領域R1、R2について再認識処理を実行した結果、“ABC0”、“ABC8”とそれぞれ正しく認識される場合があり得る。
なお、ステップS106で実行される再認識処理では、文字認識の精度を表すスコアが算出される。スコアが高いほど文字認識の精度が高く、スコアが低いほど文字認識の精度が低い。例えばスコアは0~1の範囲の値であり、数値が高いほど文字認識の精度が高い。
以下のステップS108以降の処理は、再認識処理で認識された文字列毎に実行される。
ステップS108では、CPU10Aが、ステップS106の再認識処理により認識された文字列と同型の文字列候補である誤認識文字列候補を生成する。
具体的には、例えば図6に示すように、誤認識文字が定義された誤認識文字情報44が記憶部7に予め記憶されており、この誤認識文字情報44を用いて誤認識文字列候補を生成する。誤認識文字情報44は、ステップS102のOCR処理で誤認識する誤認識パターンを定義したものである。図6の例では、“A”に対して誤認識されやすい“H”が定義されている。また、“B”に対して誤認識されやすい“8”が定義されている。また、“0”に対して誤認識されやすい“o”及び“O”が定義されている。
これにより、例えばステップS106の再認識処理により認識された文字列が“ABC0”であった場合、“HBC0”、“A8C0”、“ABCo”、“ABCO”、“H8C0”、“H8Co”、“H8CO”等が誤認識文字列候補として生成される。
ステップS110では、CPU10Aが、ユーザーによって指定された誤認識パターンを用いて生成した文字列を誤認識文字列候補に追加する。ここで、ユーザーによって指定された誤認識パターンとは、例えば図面に含まれる文字のフォントに応じて設定された誤認識パターンである。例えば“0”に対して誤認識されやすい文字の代表的な例は“o”及び“O”であるが、図面で使用されている文字のフォントによっては、“o”及び“O”以外の他の文字と誤認識されやすい場合もある。この場合、例えば図7に示すように、ユーザー指定の誤認識パターンを定義した誤認識パターン情報46を記憶部7に予め記憶しておき、この誤認識パターン情報46を用いて生成した文字列を誤認識文字列候補に追加する。
図7の誤認識パターン情報46の例では、“B”に対して誤認識されやすい文字として“日”が、“0”に対して誤認識されやすい文字として“D”が設定されている。例えばステップS106の再認識処理により認識された文字列が“ABC0”であった場合、“A日C0”、“ABCD”が誤認識文字列候補として追加される。
なお、ステップS108及びステップS110で生成した誤認識文字列候補のうち、正規表現で表される文字列以外の誤認識文字列候補については、画像に含まれる文字列候補を特定する上で不要である。
そこで、ステップS112では、CPU10Aが、ステップS108及びステップS110で生成した誤認識文字列候補のうち、正規表現で表される抽出パターンの文字列以外の誤認識文字列候補を除外する。
例えば、上記の例で正規表現が“[A][B][C][0-9]”の場合において、ステップS108及びステップS110で生成した誤認識文字列候補として“HBC0”、“A8C0”、“ABCo”、“ABCO”、“H8C0”、“H8Co”、“H8CO”、“A日C0”、“ABCD”が含まれていたとする。正規表現で表される文字列は先頭から3文字目まではアルファベット、先頭から4文字目は数字なので、上記の誤認識文字列候補のうち、先頭から4文字目がアルファベットである“ABCo”、“ABCO”、“H8Co”、“H8CO”、“ABCD”、先頭から2文字目が漢字である“A日C0”は誤認識文字列候補から除外される。
ステップS114では、CPU10Aが、正規表現を用いて、誤認識文字列候補の中から文字列候補を特定する。すなわち、誤認識文字列候補のうち、正規表現で表される文字列に含まれる誤認識文字列候補を文字列候補として特定する。例えば正規表現が“[A][B][C][0-9]”の場合、正規表現で表される文字列は“ABC0”~“ABC9”までの10パターンである。従って、誤認識文字列候補のうち、“ABC0”~“ABC9”の何れかの文字列と一致する誤認識文字列候補を文字列候補として特定する。一方、正規表現で表される文字列に何れの誤認識文字列候補も含まれていない場合は、文字列候補は特定されない。
ステップS116では、CPU10Aが、ステップS114で文字列候補が特定されたか否かを判定する。そして、文字列候補が特定された場合、すなわち正規表現で表される文字列の何れかと一致する誤認識文字列候補が存在する場合はステップS118へ移行する。一方、文字列候補が特定されなかった場合、すなわち正規表現で表される文字列と一致する誤認識文字列候補が存在しなかった場合はステップS124へ移行する。
ステップS118では、CPU10Aが、ステップS106の再認識処理において算出されたスコアが予め定めた閾値以上であるか否かを判定する。なお、閾値は、スコアが閾値以上であれば、OCR処理の認識結果の信頼性が許容レベル以上とされる値に設定される。例えば、スコアが取り得る値の最大値の9割以上の値に設定される。具体的には、スコアが取り得る値の範囲が0~1の場合、閾値は一例として0.95に設定される。
そして、ステップS106の再認識処理において算出されたスコアが予め定めた閾値以上である場合、すなわちステップS106の再認識処理の認識結果の信頼性が許容レベル以上である場合はステップS119へ移行する。一方、ステップS106の再認識処理において算出されたスコアが予め定めた閾値未満である場合、すなわちステップS106の再認識処理の認識結果の信頼性が許容レベル未満である場合はステップS122へ移行する。
ステップS119では、ステップS114で特定された文字列候補が1つであるか否かを判定する。そして、特定された文字列候補が1つの場合はステップS120へ移行し、特定された文字列候補が複数の場合はステップS122へ移行する。
ステップS120では、CPU10Aが、ステップS114で特定した1つの文字列候補を出力する。すなわち、特定した文字列候補を紙等の記録媒体に印刷したり、データファイルとして記憶部7に記憶したり、通信部6を介して外部装置に送信したり、表示部5に表示したりする。
一方、ステップS122が実行されるのは、ステップS118で再認識処理の認識結果の信頼性が許容レベル未満と判定された又はステップS119で複数の文字列候補が特定された場合である。このため、ステップS114で特定された文字列候補を、あくまで図面に含まれると推定される文字列候補である推定文字列候補として出力する。
また、ステップS124が実行されるのは、正規表現で表される文字列と一致する誤認識文字列候補が存在しない場合である。このため、誤認識文字列候補に近い文字列を正規表現で表される文字列から検索する。具体的には、正規表現で表される文字列の中から、誤認識文字列候補と異なる文字の数が最も少ない文字列を検索する。そして、検索した文字列を推定文字列候補として出力する。
ステップS126では、ステップS106で認識された全ての文字列についてステップS108~S124の処理を実行したか否かを判定する。そして、ステップS106で認識された全ての文字列についてステップS108~S124の処理を実行した場合は本ルーチンを終了する。一方、ステップS106で認識された全ての文字列についてステップS108~S124の処理を実行していない場合は、ステップS108へ移行し、全ての文字列の処理が終了するまでステップS108~S124の処理を繰り返す。
このように、本実施形態では、OCR処理によって画像から認識された文字列から、正規表現で表された抽出パターンを用いて文字列候補を抽出する。そして、OCR処理が誤認識する誤認識パターンを用いて文字列候補を修正し、正規表現を用いて、修正された文字列候補の中から特定した文字列候補を出力する。
なお、第1実施形態では、図3のステップS110において、ユーザー指定の誤認識パターンを定義した誤認識パターン情報46を用いて生成した文字列を誤認識文字列候補に追加しているが、ステップS110の処理を省略してもよい。
次に、文字列候補を特定する場合の具体例について説明する。
・具体例1
具体例1では、正規表現が[F][X][1][0][A-Z][A-Z][0-9][0-9][0-9]、図面に含まれる実際の文字列が“FX10AA106”である。
上記の条件でOCR処理を実行すると、認識した文字列候補は“FXIOAAIO6”であった。すなわち、3、4文字目の“10”が“IO”に、7、8文字目の“10”が“IO”に誤認識されている。
次に、再認識処理の結果は、“FX10AA106”となり、図面に含まれる実際の文字列と完全に一致した。なお、再認識処理のスコアは閾値以上であった。また、誤認識文字列候補としては、再認識処理により認識された文字列も含めて、“FX10AA106”、“FX1OAA106”、“FX1oAA06”、“FX10AA1O6”、“FX10AA1o6”等が生成された。なお、具体例1では、ユーザー指定の誤認識パターン情報を用いて誤認識文字列候補を更に生成する処理は実行しなかった。
誤認識文字列候補のうち、正規表現を用いて不要な文字列候補を除外すると、“FX10AA106”のみが残る。この誤認識文字列候補は、正規表現で表される文字列である。このため、図面に記載された文字列候補として“FX10AA106”が特定され、出力される。この文字列は、図面に含まれる実際の文字列と完全に一致している。
・具体例2
具体例2では、再認識処理のスコアが閾値未満であること以外は具体例1と同じである。
具体例2では、具体例1と同様に、図面に記載された文字列候補として、図面に含まれる実際の文字列と完全に一致する“FX10AA106”が特定されるが、再認識処理のスコアが閾値未満であるため信頼性が低い。従って、文字列候補“FX10AA106”は、あくまで図面に含まれると推定される文字列候補である推定文字列候補として出力される。
・具体例3
具体例3では、正規表現が[F][X][1][0][A-Z][A-Z][0-9][0-9][0-9,A-Z]、図面に含まれる実際の文字列が“FX10AA106”である。
上記の条件でOCR処理を実行すると、認識した文字列候補は“FXIOAAIOG”であった。すなわち、3、4文字目の“10”が“IO”に、7~9文字目の“106”が“IOG”に誤認識されている。
次に、再認識処理の結果は、“FX10AA10G”となり、9文字目の“6”が“G”に誤認識されている。なお、再認識処理のスコアは閾値以上であった。
また、誤認識文字列候補としては、再認識処理により認識された文字列も含めて、“FX10AA10G”、“FX1OAA10G”、“FX1oAA0G”、“FX10AA1OG”、“FX10AA1oG”等が生成された。
また、具体例3では、ユーザー指定の誤認識パターン情報を用いて生成した文字列を誤認識文字列候補に追加した。ユーザー指定の誤認識パターン情報は、誤認識パターンとして“6:G”が定義されている。このため、誤認識文字列候補として“FX10AA106”、“FX10AA10G”を生成して追加した。
誤認識文字列候補のうち、正規表現を用いて不要な文字列候補を除外すると、“FX10AA106”、“FX10AA10G”が残る。これらの誤認識文字列候補は、何れも正規表現で表される文字列であるため、推定文字列候補として出力される。
(第2実施形態)
次に、第2実施形態について説明する。なお、第1実施形態と同一部分には同一符号を付し、詳細な説明は省略する。第2実施形態では、図面から抽出したい情報がプラスチック部品の材質を表す文字列である場合について説明する。
プラスチック部品の材質の表示方法は、JIS(日本工業規格)で規定されている。例えば、単一のポリマー等の部品の表示は、JIS K 6899-1で規定された材料の略語を境界文字“>”及び“<”で挟むことになっている。例えば、材料がアクリロニトリル-ブタジエン-スチレンであり、この略語がABSである場合は、“>ABS<”と表記される。
また、プラスチック部品の材質の表示では、材料の略語の他に、“-”、“+”、“(”、“)”等が区切り文字として使用されたり、質量分率又は材料の含有率等を表す数字が使用されたりする。例えば“>PA66-(GF25+MD15)<”と表記されている場合、ガラス繊維(GF)25質量%と鉱物粉末(MD)15質量%の混合物を含むポリアミド66を表す。
必要とされるのは材料の略語を含む文字列であり、境界文字は不要である。このため、第2実施形態では、境界文字で挟まれた文字列については、境界文字を除外した文字列を必要文字列として抽出する。
図8には、第2実施形態に係るCPU10Aの機能ブロック図を示した。図8に示す機能ブロック図は、必要文字列抽出部31が設けられている点が図2に示す機能ブロック図と異なる。
必要文字列抽出部31は、再認識処理部30による再認識処理により認識された文字列から必要文字列を抽出する。具体的には、再認識処理により認識された文字列に境界文字が含まれているか否かを判定する。そして、再認識処理により認識された文字列に境界文字が含まれている場合には、境界文字を除外した文字列を必要文字列として抽出する。
次に、図9を参照して、本実施の形態に係る情報処理装置10の作用を説明する。図9に示す情報処理が図3に示す情報処理と異なるのは、ステップS107の処理が追加されている点である。
ステップS107では、ステップS106の再認識処理により認識された文字列の各々について、必要文字列を抽出する処理を行う。すなわち、再認識処理により認識された文字列のうち、境界文字“>”及び“<”で挟まれた文字列を抽出する。そして、境界文字“>”及び“<”で挟まれた文字列については、境界文字を除いた文字列を必要文字列として抽出する。例えば再認識処理で認識された文字列が“>ABS<”の場合は、境界文字を除外した“ABS”を必要文字列として抽出する。また、再認識処理で認識された文字列が“>PA66-(GF25+MD15)<”の場合は、境界文字を除外した“PA66-(GF25+MD15)”を必要文字列として抽出する。
次に、文字列候補を特定する場合の具体例について説明する。
・具体例1
具体例1では、正規表現が[>][][][][][][][][][][][][][][][][][][][][][][][][<] 、図面に含まれる実際の文字列が“>PA66-(GF25+MD15)<”である。
上記の条件でOCR処理を実行すると、認識した文字列候補は“>PAGG-(GF2S+MDI5)<”であった。すなわち、4、5文字目の“66”が“GG”に、10文字目の“5”が“S”に、14文字目の“1”が“I”に誤認識されている。
次に、再認識処理の結果は、“>PA66-(GF25+MD15)<”となり、再認識処理のスコアは閾値以上であった。この文字列は、正規表現で表される文字列と一致する。このため、図面に記載された文字列候補として“PA66-(GF25+MD15)”が特定され、出力される。
・具体例2
具体例2は、再認識処理のスコアが閾値未満である点以外は具体例1と同じである。この場合、再認識処理の認識結果の信頼性が低いので、“PA66-(GF25+MD15)”は推定文字列候補として出力される。
以上、各実施形態を用いて本発明について説明したが、本発明は各実施形態に記載の範囲には限定されない。本発明の要旨を逸脱しない範囲で各実施形態に多様な変更または改良を加えることができ、当該変更または改良を加えた形態も本発明の技術的範囲に含まれる。
例えば上記各実施形態では、情報処理装置が複合機に適用される場合を例に説明したが、スマートフォン又はタブレット端末等に適用してもよい。この場合、スマートフォン又はタブレット端末に搭載されたカメラで図面を撮影し、撮影した画像に対して図3又は図9の処理を実行すればよい。
また、例えば、図3、9に示した情報処理をASIC(Application Specific Integrated Circuit)等のハードウェアで実現するようにしてもよい。この場合、ソフトウエアで実現する場合に比べて、処理の高速化が図られる。
また、各実施形態では、情報処理プログラムが記憶部7にインストールされている形態を説明したが、これに限定されるものではない。本実施形態に係る情報処理プログラムを、コンピュータ読取可能な記憶媒体に記録した形態で提供してもよい。例えば、本実施形態に係る情報処理プログラムを、CD(Compact Disc)-ROM及びDVD(Digital Versatile Disc)-ROM等の光ディスクに記録した形態、若しくはUSB(Universal Serial Bus)メモリ及びメモリカード等の半導体メモリに記録した形態で提供してもよい。また、本実施形態に係る情報処理プログラムを、通信部6に接続された通信回線を介して外部装置から取得するようにしてもよい。
1 画像形成装置
2 スキャナ部
3 画像形成部
4 操作部
5 表示部
6 通信部
7 記憶部
10 情報処理装置
20 OCR処理部
22 取得部
24 抽出部
26 修正部
28 出力部
30 再認識処理部
31 必要文字列抽出部
32 生成部
40 情報処理プログラム
42 正規表現情報
44 誤認識文字情報
46 誤認識パターン情報
50 画像

Claims (11)

  1. 文字認識処理によって画像から認識された文字列を取得する取得部と、
    前記取得部で取得された文字列から、正規表現で表された抽出パターンを用いて文字列候補を抽出する抽出部と、
    前記文字認識処理が誤認識する誤認識パターンを用いて前記文字列候補を修正する修正部と、
    前記正規表現を用いて、前記修正部で修正された文字列候補の中から特定した文字列候補を出力する出力部と、
    を備え
    前記取得部は前記画像を取得し、
    前記修正部は、特定の文字について学習された学習モデルを用いて、前記抽出部により抽出された前記文字列候補の前記画像についてのみ文字認識処理を再度行う文字認識処理部と、
    前記文字認識処理部により認識された文字列候補と同型の文字列候補である誤認識文字列候補を生成する生成部と、
    を含み、
    前記出力部は、前記誤認識文字列候補の中から特定した文字列候補を出力する
    情報処理装置。
  2. 前記抽出部は、前記誤認識パターンを用いて前記正規表現を修正した修正正規表現で表された修正抽出パターンを用いて前記文字列候補を抽出する
    請求項1記載の情報処理装置。
  3. 前記生成部は、ユーザーによって指定された誤認識パターンを用いて生成した文字列を前記誤認識文字列候補に追加する
    請求項1又は請求項2記載の情報処理装置。
  4. 前記生成部は、前記抽出パターンで表される文字列候補を除いて前記誤認識文字列候補を生成する
    請求項1~3の何れか1項に記載の情報処理装置。
  5. 前記文字認識処理部は、文字認識の精度を表すスコアを算出し、
    前記出力部は、前記スコアが予め定めた閾値以上の場合に、前記特定した文字列候補を出力する
    請求項の何れか1項に記載の情報処理装置。
  6. 前記文字認識処理部は、文字認識の精度を表すスコアを算出し、
    前記出力部は、前記スコアが予め定めた閾値未満の場合に、前記特定した文字列候補を推定文字列候補として出力する
    請求項の何れか1項に記載の情報処理装置。
  7. 前記文字認識処理部は、文字認識の精度を表すスコアを算出し、
    前記出力部は、前記スコアが予め定めた閾値以上で且つ前記特定した文字列候補が複数の場合に、複数の前記特定した文字列候補を推定文字列候補として出力する
    請求項の何れか1項に記載の情報処理装置。
  8. 文字認識処理によって画像から認識された文字列を取得する取得部と、
    前記取得部で取得された文字列から、正規表現で表された抽出パターンを用いて文字列候補を抽出する抽出部と、
    前記文字認識処理が誤認識する誤認識パターンを用いて前記文字列候補を修正する修正部と、
    前記正規表現を用いて、前記修正部で修正された文字列候補の中から特定した文字列候補を出力する出力部と、
    を備え、
    前記取得部は前記画像を取得し、
    前記修正部は、特定の文字について学習された学習モデルを用いて、前記抽出部により抽出された前記文字列候補の前記画像についてのみ文字認識処理を再度行う文字認識処理部と、
    前記文字認識処理部により文字認識された文字列から必要な文字列である必要文字列を抽出する必要文字列抽出部
    記必要文字列抽出部により抽出された前記必要文字列と同型の文字列候補である誤認識文字列候補を生成する生成部と、
    を含み、
    前記出力部は、前記誤認識文字列候補の中から特定した文字列候補を出力する
    前記文字認識処理部により文字認識された文字列から必要な文字列である必要文字列を抽出する必要文字列抽出部を更に備え、
    前記生成部は、前記必要文字列抽出部により抽出された前記必要文字列と同型の文字列候補である誤認識文字列候補を生成する
    報処理装置。
  9. 前記出力部は、前記正規表現で表される文字列に前記修正部で修正された文字列候補が存在しない場合、前記正規表現で表される文字列のうち、前記修正部で修正された文字列候補に近い文字列を推定文字列候補として出力する
    請求項1~の何れか1項に記載の情報処理装置。
  10. 前記出力部は、前記正規表現で表される文字列のうち、前記修正部で修正された文字列候補と異なる文字の数が最も少ない文字列を推定文字列候補として出力する
    請求項記載の情報処理装置。
  11. コンピュータを、請求項1~10の何れか1項に記載の情報処理装置の各部として機能させるための情報処理プログラム。
JP2019016252A 2019-01-31 2019-01-31 情報処理装置及び情報処理プログラム Active JP7279382B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019016252A JP7279382B2 (ja) 2019-01-31 2019-01-31 情報処理装置及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019016252A JP7279382B2 (ja) 2019-01-31 2019-01-31 情報処理装置及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2020123273A JP2020123273A (ja) 2020-08-13
JP7279382B2 true JP7279382B2 (ja) 2023-05-23

Family

ID=71992810

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019016252A Active JP7279382B2 (ja) 2019-01-31 2019-01-31 情報処理装置及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP7279382B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000353215A (ja) 1999-06-11 2000-12-19 Nec Corp 文字認識装置および文字認識プログラムを記録した記録媒体
JP2017199288A (ja) 2016-04-28 2017-11-02 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2586372B2 (ja) * 1993-01-22 1997-02-26 日本電気株式会社 情報検索装置及び情報検索方法
JP2780654B2 (ja) * 1994-12-20 1998-07-30 日本電気株式会社 住所読み取り装置
JPH09138836A (ja) * 1995-11-13 1997-05-27 N T T Data Tsushin Kk 文字認識結果の修正方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000353215A (ja) 1999-06-11 2000-12-19 Nec Corp 文字認識装置および文字認識プログラムを記録した記録媒体
JP2017199288A (ja) 2016-04-28 2017-11-02 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム

Also Published As

Publication number Publication date
JP2020123273A (ja) 2020-08-13

Similar Documents

Publication Publication Date Title
JP5372110B2 (ja) 情報出力装置、情報出力方法、及びコンピュータプログラム
JP7149721B2 (ja) 情報処理装置、文字認識エンジン最適化方法及びプログラム
CN109214381B (zh) 数控程序转换装置
US20060204094A1 (en) Translation device, translation program, and translation method
JP2019169025A (ja) 情報処理装置、文字認識エンジン選択方法及びプログラム
EP3147818A1 (en) Image processing apparatus, image processing method and program
JP7279382B2 (ja) 情報処理装置及び情報処理プログラム
JP7279381B2 (ja) 情報処理装置及び情報処理プログラム
US20150261735A1 (en) Document processing system, document processing apparatus, and document processing method
US10706337B2 (en) Character recognition device, character recognition method, and recording medium
JP2020184275A (ja) 画像処理装置、画像処理方法、及びプログラム
US9009026B2 (en) Information processing apparatus, non-transitory computer readable medium storing information processing program, and information processing method
JP7115162B2 (ja) 電子機器、画像形成装置、電子メール作成支援方法、及び電子メール作成支援プログラム
Mohapatra et al. Spell checker for OCR
US11972208B2 (en) Information processing device and information processing method
JP2008257543A (ja) 画像処理システム及びプログラム
US20150043832A1 (en) Information processing apparatus, information processing method, and computer readable medium
JP2022137634A (ja) 情報処理装置、情報処理方法、およびプログラム
US20140169676A1 (en) Information processing apparatus, information processing method, and computer-readable medium
JP6046088B2 (ja) 画像処理装置及び画像処理方法
US20160292499A1 (en) Character recognition apparatus, character recognition processing system, and non-transitory computer readable medium
US11574490B2 (en) Information processing apparatus and non-transitory computer readable medium storing information processing program
WO2023062799A1 (ja) 情報処理システム、原稿種識別方法、モデル生成方法及びプログラム
JP7463675B2 (ja) 情報処理装置、及び情報処理プログラム
EP4036871A1 (en) Image processing apparatus, image processing method, program and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221209

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230424

R150 Certificate of patent or registration of utility model

Ref document number: 7279382

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150