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

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

Info

Publication number
JP2020123232A
JP2020123232A JP2019015798A JP2019015798A JP2020123232A JP 2020123232 A JP2020123232 A JP 2020123232A JP 2019015798 A JP2019015798 A JP 2019015798A JP 2019015798 A JP2019015798 A JP 2019015798A JP 2020123232 A JP2020123232 A JP 2020123232A
Authority
JP
Japan
Prior art keywords
character
keyword
character string
information processing
unit
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
Application number
JP2019015798A
Other languages
English (en)
Inventor
絢 李
Jun Ri
絢 李
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
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 filed Critical Fuji Xerox Co Ltd
Priority to JP2019015798A priority Critical patent/JP2020123232A/ja
Publication of JP2020123232A publication Critical patent/JP2020123232A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】キーワードの抽出時間を短縮する。【解決手段】情報処理装置10は、基準キーワードの関連文字列を正規表現で表した抽出パターンを用いて、画像に含まれる文字を文字コードに変換した文書から基準キーワードの関連文字列を抽出する。【選択図】図1

Description

本発明は、情報処理装置、及び情報処理プログラムに関する。
スキャナで読み取った画像から、指定した文字列を抽出する情報処理装置が知られている。
特許文献1には、文字列から所与の辞書に含まれる特定用語を検索する情報処理装置であって、n−gram方式を利用して前記所与の辞書に対して前記文字列の部分文字列の検索を行い、前記所与の辞書から該文字列に含まれる1以上の特定用語候補を抽出する抽出手段と、前記1以上の特定用語候補の各々に対して、DPマッチング方式を利用して特定用語候補と該特定用語候補に対応する前記文字列内の部分文字列との編集距離を導出する導出手段と、前記編集距離が閾値より短い前記1以上の特定用語候補に対応する前記文字列内の部分文字列を出力する出力手段と、を有することを特徴とする情報処理装置が開示されている。
特開2018−81451号公報
画像化された文字(文字画像ともいう)を文字認識(Optical Character Recognition:OCR)処理によって文字コードに変換した場合、文字が誤った文字コードに変換されることがある。したがって、OCR処理された画像からユーザが指定したキーワードを漏れなく抽出したい場合、指定されたキーワードが誤って別の文字列に変換されることを考慮して、キーワードと一致する文字列だけでなく、キーワードとは異なる文字列であるが、キーワードが誤って変換された後の文字列と考えられる類似キーワードもキーワードと認識して抽出することが好ましい。
そのため、情報処理装置の中には、キーワードを構成する各々の文字について誤変換されやすい文字である誤変換文字を予め対応付けた文字誤り規則を参照して、キーワードの各々の文字を誤変換文字に置き換えることで得られる誤りキーワードの全ての組み合わせを生成し、各々の誤りキーワードから予め定めた編集距離内にある文字列を類似キーワードとして抽出するものがある。
しかしながら、同じ文字であってもどのように誤変換が行われるかわからないため、誤変換のパターンに応じて、キーワードの文字に対応付けられる誤変換文字の数が増加し、誤りキーワードの数が増加する。
文字列の編集距離の演算は他の処理に比べて演算量が多いため、誤りキーワードが増加すると編集距離の演算回数が増加し、類似キーワードの抽出に要する時間も増加することになる。
本発明は、キーワードを構成する各々の文字に対して誤って変換されやすい文字を対応付けた文字誤り規則に基づいて、文字画像を文字コードに変換した文書からキーワードの誤変換によって生じた類似キーワードもキーワードを表す文字列として文書から抽出する場合と比較して、類似キーワードを含めたキーワードの抽出時間を短縮することができる情報処理装置及び情報処理プログラムを提供することを目的とする。
第1態様に係る情報処理装置は、抽出するキーワードの基準となる基準キーワード、及び前記基準キーワードの文字が誤変換されることで発生する誤りキーワードの各々から予め定めた編集距離以内に含まれる類似キーワードを正規表現で表した抽出パターンを用いて、画像に含まれる文字を文字コードに変換した文書から前記基準キーワード、前記誤りキーワード、及び前記類似キーワードを抽出する抽出部、を備える。
第2態様に係る情報処理装置は、第1態様に係る情報処理装置において、前記基準キーワードの文字が誤って変換された後の誤変換文字を受け付ける受付部と、前記受付部で受け付けた前記誤変換文字を前記抽出パターンに追加して、前記抽出パターンを更新する更新部と、を更に備える。
第3態様に係る情報処理装置は、第2態様に係る情報処理装置において、前記受付部が編集距離を受け付け、前記更新部は、前記抽出パターンが前記基準キーワード及び前記誤りキーワードの各々について、前記受付部で受け付けた編集距離以内に含まれる前記類似キーワードを表す正規表現を含むように前記抽出パターンを更新する。
第4態様に係る情報処理プログラムは、コンピュータを、第1態様〜第3態様の何れかの態様に係る情報処理装置の各部として機能させるためのプログラムである。
第1態様、及び第4態様によれば、キーワードを構成する各々の文字に対して誤って変換されやすい文字を対応付けた文字誤り規則に基づいて、文字画像を文字コードに変換した文書からキーワードの誤変換によって生じた類似キーワードもキーワードを表す文字列として文書から抽出する場合と比較して、類似キーワードを含めたキーワードの抽出時間を短縮することができる、という効果を有する。
第2態様によれば、発生する誤変換のパターンに応じて誤変換文字を追加登録できない場合と比較して、類似キーワードを含めたキーワードの抽出精度を向上させることができる、という効果を有する。
第3態様によれば、類似キーワードを含めたキーワードの抽出精度を調整することができる、という効果を有する。
情報処理装置の機能構成例を示すブロック図である。 文字誤り規則の一例を示す図である。 情報処理装置における電気系統の要部構成例を示す図である。 情報処理の流れの一例を示すフローチャートである。 抽出パターンの一例を示す図である。 誤変換文字を反映した抽出パターンの一例を示す図である。 誤変換文字が追加された文字誤り規則の一例を示す図である。 誤変換文字の追加に伴って更新された抽出パターンの一例を示す図である。
以下、本実施の形態について図面を参照しながら説明する。なお、機能が同じ構成要素及び処理には全図面を通して同じ符合を付与し、重複する説明を省略する。
図1は、例えば光学的に内容を読み取った原稿の画像に対して文字認識処理を行った文書から、ユーザが指定した特定の文字列(以降、「基準キーワード」という)を抽出して出力する情報処理装置10の機能構成例を示すブロック図である。
情報処理装置10は、スキャン処理部11、画像処理部12、出力部13、ユーザインターフェース(User Interface:UI)部14、及び制御部15の各機能部と、抽出情報データベース(Database:DB)16を含む。
スキャン処理部11は、原稿に記載された内容を光学的に読み取るスキャナユニット50を用いて、原稿の画像(以降、単に「画像」という)を生成し、画像処理部12に引き渡す。スキャナユニット50で読み取る原稿の内容に制約はないが、一例として、原稿には何らかの文字列が含まれるものとする。
画像処理部12は、OCR処理部12A、抽出パターン生成部12B、抽出部12C、及び更新部12Dを含んでいる。
スキャン処理部11から画像を受け付けた画像処理部12は、まず、OCR処理部12Aで画像に対して公知の画像認識を行い、画像化された文字、すなわち、文字画像を文字コードに変換する。すなわち、OCR処理部12Aによって、文字画像が文字コードとして扱われるようになり、文字のコピーや検索が行われるようになる。以降では、OCR処理部12Aで画像に含まれる文字画像を文字コードに変換した後の変換データを「文書」ということにする。
抽出パターン生成部12Bは、基準キーワードを文書から抽出するために用いられる抽出パターンを生成する。
OCR処理部12Aで文字画像を文字コードに変換した場合、例えば文字画像のかすれ具合等により、本来の文字が誤って別の似た文字に誤変換されることがある。したがって、単に基準キーワードと一致する文字列を文書から抽出しただけでは、本来、文書に含まれているはずの全ての基準キーワードが抽出されないことがある。
したがって、抽出パターン生成部12Bは、基準キーワードを構成する各々の文字に対して、誤変換された後の文字である誤変換文字を予め対応付けた文字誤り規則20を参照し、基準キーワード、及び基準キーワードの文字が誤変換されることで生成される誤りキーワードの各々から予め定めた編集距離以内に含まれる類似キーワードを正規表現で表した抽出パターンを生成する。
図2は、抽出情報DB16で管理される文字誤り規則20の一例を示す図である。OCR処理部12Aでカタカナの文字「リ」が1まとまりの文字として認識されずに、別々の文字として認識され、例えばそれぞれ数字の「1」とカタカナの「ノ」に変換されたり、アルファベットの「L」の小文字である「l」とカタカナの「ノ」に変換されたりすることがある。また、前の文字の音を引き伸ばす長音符号「ー」は、例えばハイフン「-」に変換されることがある。また、カタカナの「ド」も1まとまりの文字として認識されずに、例えばカタカナの「ト」と引用符(「クォーテーションマーク」とも呼ばれる)の「”」に変換されることがある。
このように文字誤り規則20は、文字毎に誤変換されやすい代表的な誤変換文字を対応付けたテーブルである。図2に示した文字誤り規則20の文字欄にはカタカナ文字しか登録されていないが、漢字、ひらがな、記号、及びアルファベット等、文字コードで表される文字が1文字ずつ登録されている。
なお、編集距離とは、2つの文字列の類似度を示す値のことであり、例えばレーベンシュタイン距離が用いられる。編集距離が大きくなるに従って、2つの文字列の類似度が低下していることを表す。
例えば基準キーワードに対して編集距離が“1”の文字列とは、基準キーワードに対して文字の挿入、削除、及び置換の何れかの操作を1回行うことで得られる文字列のことをいう。例えば基準キーワードが「リード」である場合、「リ」が削除された「ード」や、「A」が追加された「リAード」、「リ」が「サ」に置き換えられた「サード」といった文字列は、基準キーワード「リード」に対して編集距離が“1”の文字列の例である。
また、例えば基準キーワードに対して編集距離が“2”の文字列とは、基準キーワードに対して文字の挿入及び削除の何れかの操作を2回行うことで得られる文字列のことをいう。例えば基準キーワードが「リード」である場合、「リ」が「サ」に置き換えられると共に、任意の1文字が追加された「サード#」や、「リード」に任意の2文字が追加された「リあード%」といった文字列は、基準キーワード「リード」に対して編集距離が“2”の文字列の例である。
抽出パターン生成部12Bは、ユーザがスキャナユニット50の性能、及びOCR処理部12Aにおける文字コードへの変換特性を考慮して設定した編集距離に従って、文書から基準キーワード、誤りキーワード、及び類似キーワードを抽出する抽出パターンを生成する。
抽出部12Cは、抽出パターン生成部12Bで生成された抽出パターンを用いて、文書から抽出パターンに一致する文字列、すなわち、文書から基準キーワード、誤りキーワード、及び類似キーワードを抽出する。以降では、基準キーワード、及び基準キーワードがOCR処理で誤変換されることで生じた文字列をまとめて「基準キーワードの関連文字列」と表すことにする。抽出パターン生成部12Bで生成された抽出パターンによって抽出される基準キーワード、誤りキーワード、及び類似キーワードは基準キーワードの関連文字列の一例である。
更新部12Dは、後述するUI部14でユーザが指定した文字に対する誤変換文字の追加、変更、または削除を指示する編集指示を受け付けた場合、編集指示の内容に従って、抽出情報DB16で管理される文字誤り規則20を更新する。また、更新部12Dは、編集指示の内容が抽出パターン生成部12Bで生成された抽出パターンに影響を与える指示である場合には、生成された抽出パターンを更新する。
また、更新部12Dは、後述するUI部14でユーザから編集距離の変更を指示する編集指示を受け付けた場合、抽出パターン生成部12Bで生成された抽出パターンを、変更された編集距離以内に含まれる基準キーワードの関連文字列を抽出する抽出パターンに更新する。
出力部13は、抽出部12Cで抽出された基準キーワードの関連文字列を出力する。「基準キーワードの関連文字列を出力する」とは、文書から抽出した基準キーワードの関連文字列を認識可能な状態にすることである。基準キーワードの関連文字列を認識する対象は人に限られず装置であってもよい。したがって、基準キーワードの関連文字列を表示装置に表示する、用紙に印字する、音声で通知する、記憶装置に記憶する、及び図示しない通信回線を通じて後述する通信ユニット47から送信することは、それぞれ基準キーワードの関連文字列の出力に相当する形態である。
なお、出力部13は、基準キーワードの関連文字列と共に、文書における基準キーワードの関連文字列の記載位置に関する情報を出力するようにしてもよい。
UI部14は、ユーザからの各種指示を受け付けると共に、情報処理装置10の動作や状態といった各種情報をユーザに通知する。例えばUI部14は、文書から基準キーワードの関連文字列を抽出するように指示する抽出指示や、誤変換文字及び編集距離の編集指示を受け付け、出力部13の指示に従って、文書から抽出した基準キーワードの関連文字列をユーザに通知する。すなわち、UI部14は、開示の技術における受付部の一例である。
制御部15は、UI部14で受け付けた各種指示に従った処理が行われるように、スキャン処理部11、画像処理部12、出力部13、及びUI部14の各機能部の処理を制御する。
図3は、情報処理装置10における電気系統の要部構成例を示す図である。情報処理装置10は、例えばコンピュータ40を用いて構成される。
コンピュータ40は、本実施の形態に係る各機能部を担うCPU(Central Processing Unit)41、情報処理プログラムを記憶するROM(Read Only Memory)42、CPU41の一時的な作業領域として使用されるRAM(Random Access Memory)43、不揮発性メモリ44、及び入出力インターフェース(I/O)45を備える。そして、CPU41、ROM42、RAM43、不揮発性メモリ44、及びI/O45がバス46を介して各々接続されている。
不揮発性メモリ44は、不揮発性メモリ44に供給される電力が遮断されても、記憶した情報が維持される記憶装置の一例であり、例えば半導体メモリが用いられるがハードディスクを用いてもよい。不揮発性メモリ44は、必ずしもコンピュータ40に内蔵されている必要はなく、例えばメモリカードのようにコンピュータ40に着脱される記憶装置であってもよい。
I/O45には、例えば通信ユニット47、入力ユニット48、表示ユニット49、及びスキャナユニット50が接続される。
通信ユニット47は図示しない通信回線に接続され、図示しない接続回線に接続する記憶装置及びコンピュータといった外部装置と通信を行う通信プロトコルを備える。図示しない通信回線には、例えばインターネット、LAN(Local Area Network)、及びUSB(Universal Serial Bus)等の公知の通信回線が含まれる。また、通信ユニット47には、例えば半導体メモリとの間で情報を読み書きするメモリカードスロットのようなインターフェースも含まれる。
入力ユニット48は、ユーザからの各種指示を受け付けてCPU41に通知する装置であり、例えばボタン、タッチパネル、キーボード、及びマウス等が用いられる。情報処理装置10はユーザからの指示を音声で受け付けてもよく、この場合、I/O45にはマイクが接続される。
なお、情報処理装置10から離れた場所にいるユーザからの各種指示に対応するため、ユーザの各種指示は入力ユニット48だけでなく、図示しない通信回線を介して通信ユニット47と接続された外部装置からも受け付けられるようになっている。
表示ユニット49は、CPU41によって処理された情報を表示する装置であり、例えば液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、及び映像をスクリーンに投影するプロジェクタ等が用いられる。
スキャナユニット50は、CPU41の指示に従って、例えば図示しないプラテンガラスに置かれた原稿の内容を光学的に読み取り、原稿の内容を画像に変換する装置である。スキャナユニット50はスキャン処理部11の処理に用いられる。
情報処理装置10は、スキャナユニット50で読み取られた画像をスキャン処理部11で受け付けるが、必ずしもI/O45に接続されたスキャナユニット50から画像を受け付けるものではない。例えば、情報処理装置10は、図示しない通信回線やUSBインターフェースを介して通信ユニット47と接続された外部装置の一例である図示しないスキャナ装置から画像を受け付けてもよい。また、情報処理装置10は、クラウドサーバに格納されている画像を受け付けてもよい。
通信ユニット47を通じて画像を受け付けるようにすれば、情報処理装置10は必ずしもスキャナユニット50を備えておく必要はない。この場合、情報処理装置10に、デスクトップコンピュータ、タブレット型コンピュータ、スマートフォン、及びウェアラブル端末といった、ユーザとのインターフェースを提供する入出力装置、及び入力された情報を処理する処理機能を備えた情報機器が用いられる。
なお、I/O45に接続されるユニットは図3に例示したユニットに限定されない。例えば、CPU41の指示に従って、処理した情報を記録媒体に形成する画像形成ユニットをI/O45に接続してもよい。
また、不揮発性メモリ44には抽出情報DB16が構築され、文字誤り規則20が記憶されているが、文字誤り規則20は必ずしも不揮発性メモリ44に記憶される必要はなく、例えば通信ユニット47に接続された図示しない通信回線と接続される外部装置に記憶されてもよい。
次に、文書から基準キーワードの関連文字列を抽出する情報処理装置10の動作について説明する。
図4は、ユーザから基準キーワードを受け付けると共に、受け付けた基準キーワードの関連文字列を文書から抽出するように指示した抽出指示を受け付けた場合に、CPU41によって実行される情報処理の流れの一例を示すフローチャートである。情報処理を規定する情報処理プログラムは、例えば情報処理装置10のROM42に予め記憶されている。情報処理装置10のCPU41は、ROM42に記憶される情報処理プログラムを読み込み、情報処理を実行する。
ここでは一例として、「リード線」等の表記に用いられる「リード」が基準キーワードとして指定された場合について説明するが、文字コードで表される文字列であれば、どのような文字列が基準キーワードとして指定されてもよい。図2に示したように、抽出情報DB16で管理される文字誤り規則20には、「リード」を構成する各々の文字「リ」、「ー」、及び「ド」に対応した誤変換文字が予め登録されている。また、類似キーワードの抽出範囲を指定する編集距離も予め指定されているものとする。説明の便宜上、ユーザによって指定された編集距離を「編集距離L」と表す。編集距離Lには1以上の値が設定され、ここでは一例として、編集距離Lに“2”が設定されている場合について説明する。
ステップS10において、編集距離を表す変数Nを“1”に初期化する。以降の説明では、編集距離を表すために図4の情報処理で一時的に利用される変数Nを、ユーザによって指定された編集距離Lと区別するため「編集距離N」と表すことにする。
ステップS20において、CPU41は、基準キーワードに対して編集距離Nの文字列を表す抽出パターンを生成する。この場合、CPU41は、生成する抽出パターンを正規表現で表す。正規表現とは、共通の特徴を有する少なくとも1つの文字列を予め定められた表記形式で表現する表現方法である。基準キーワードに対して編集距離Nの文字列は複数存在し、1つ1つを具体的な文字列で列記することは困難であるが、正規表現を用いれば、編集距離Nの文字列というように特定の特徴を有する文字列が1つにまとめて表現される。
図5は、基準キーワード「リード」に対して編集距離Nの文字列を抽出する抽出パターンの例を示す図であり、図5(A)が、編集距離が“1”の文字列を抽出する抽出パターンの例を示し、図5(B)が、編集距離が“2”の文字列を抽出する抽出パターンの例を示している。基準キーワードに対して編集距離Nの文字列を抽出する抽出パターンとは、基準キーワードに対して編集距離N以内の文字列を抽出する抽出パターンのことである。
基準キーワード「リード」に対して編集距離が“1”以内となる文字列は列記し尽せないほどの数が存在するが、正規表現を用いれば、図5(A)に示すように3つの文字列で表される。また、「リード」に対して編集距離が“2”以内となる文字列は編集距離が“1”となる文字列以上に存在することになり、更に列記することが困難となるが、正規表現を用いれば、図5(B)に示すように9つの文字列で表される。
正規表現において、“.”は任意の1文字を表す。すなわち、“.”は何でもよい1文字に置き換えられる。
“?”は隣り合う直前の1文字が存在しないか、または存在することを表す。したがって、“.?”は任意の1文字も存在しない状態か、または任意の1文字が存在することを表している。
“|”は、OR条件を表す記号であり、たて棒の左右にある文字の何れかの文字が用いられることを表す。したがって、「(リ.|.?)」は、「リ」と「リ」に続く任意の1文字で表される2文字の文字列、若しくは、任意の1文字または「リ」が削除され1文字もない状態を表している。
CPU41は、例えば文字列を構成する文字毎に“.|.?”を付加して、編集距離Nの文字列を正規表現で表した抽出パターンを生成する。したがって、基準キーワード「リード」に対して編集距離が“1”の文字列の抽出パターンは「(リ.|.?)ード」、「リ(ー.|.?)ド」、「リー(ド.|.?)」の3つとなる。このように抽出パターンを生成することで、編集距離Nの文字列を抽出する抽出パターンには、編集距離(N−1)以下の文字列も含まれる。具体的には、例えば「(リ.|.?)ード」の抽出パターンには、編集距離が“0”の文字列、すなわち、基準キーワードそのものである「リード」の文字列も含まれる。なお、抽出パターンにおいて最も外側の括弧で囲まれた範囲の文字、例えば「(リ.|.?)」等の文字は、以降のステップS20の処理において1文字として扱われる。
文字列の表現に正規表現を用いた場合、1つ1つ列記することが困難な特徴を有する文字列が表現される以外にも優れた特徴が得られる。具体的には、指定された文字列に対して編集距離Nの文字列を文書から抽出する場合、文字列同士を比較しながら抽出対象となる文字列を抽出するよりも、編集距離Nの文字列を正規表現で表し、正規表現で表した文字列の条件に一致する文字列を抽出した方が、文字列の抽出速度が速くなる。
これは、コンピュータ40で用いられる処理言語における文字列の定義が正規表現で表されることからもわかるように、正規表現で表された文字列の処理はコンピュータ40に適した処理の1つであり、DPマッチングのような手法を用いて編集距離Nの文字列かどうか判定しながら文書から文字列を抽出するよりも、予め正規表現で表された編集距離Nの文字列と一致する文字列を文書から抽出する方が、抽出に要する演算量が少なくなるためである。
CPU41は、基準キーワードに対して編集距離Nの文字列を表す抽出パターンを生成すると、生成した抽出パターンを基準キーワードと対応付けて、例えば抽出情報DB16に記憶する。
ステップS30において、CPU41は、編集距離Nに“1”を加算する。
ステップS40において、CPU41は、編集距離Nが編集距離Lと等しいか否か、すなわち、編集距離Nが編集距離Lに達したか否かを判定する。編集距離Nが編集距離Lに達していない場合にはステップS20に移行し、ステップS20で、加算後の編集距離Nの文字列を正規表現で表した抽出パターンを生成する。すなわち、CPU41は、作成した1つ前の文字列の抽出パターン、すなわち、編集距離(N−1)以内の文字列を抽出する抽出パターンに含まれる文字毎に正規表現“.|.?”を付加して、編集距離Nの文字列を抽出する抽出パターンを生成し、最終的に編集距離Lの文字列を正規表現で表した抽出パターンを生成する。
編集距離Lが“2”に設定されている場合、基準キーワード「リード」に対して編集距離が“2”の文字列を抽出する抽出パターンは図5(B)のようになる。
一方、ステップS40の判定処理で編集距離Nが編集距離Lに達したと判定された場合には、ユーザによって指定された編集距離Lの文字列を抽出する抽出パターンが生成されたことになるため、ステップS50に移行する。
ステップS40までの処理によって、基準キーワードに対して編集距離Lの文字列を抽出する抽出パターンが生成されたことになるが、文書には、基準キーワードの文字が誤変換されることで発生した誤りキーワードが含まれる場合がある。誤りキーワードはOCR処理による文字コードへの変換前は基準キーワードを表す文字列であったと考えられ、誤りキーワードに対して編集距離Lの文字列も本来は基準キーワードを表す文字列であった可能性がある。したがって、文書から基準キーワードの関連文字列をできる限り抽出するためには、各々の誤りキーワードに対して編集距離Lの文字列も文書から抽出した方が好ましい。
そのため、ステップS50において、CPU41は文字誤り規則20を参照して、基準キーワードを構成する文字毎の誤変換文字を取得する。文字誤り規則20が図2に示した文字誤り規則20である場合、基準キーワード「リード」の「リ」に対して「1ノ」及び「lノ」、「ー」に対して「-」、並びに、「ド」に対して「ト”」の誤変換文字がそれぞれ取得される。
ステップS60において、CPU41はステップS40までの処理によって生成された、基準キーワードに対して編集距離Lの文字列を抽出する抽出パターンを修正して、誤りキーワードに対して編集距離Lの文字列も抽出する抽出パターンを生成する。具体的には、基準キーワードを構成する各々の文字が、対応する誤変換文字であってもよいというOR条件を抽出パターンに追加する。
例えば基準キーワード「リード」に対して編集距離が“2”の文字列を抽出する「((リ.|.?).|.?)ード」の抽出パターンに対して図2に示した文字誤り規則20を適用すれば、「((リ|1ノ|lノ).|.?).|.?)(ー|-)(ド|ト”)」が、基準キーワード「リード」に対して編集距離が“2”の文字列と、「リード」の誤りキーワードに対して編集距離が“2”の文字列を抽出する抽出パターン、すなわち、基準キーワード「リード」の関連文字列を抽出する抽出パターンとなる。
このようにして、図5(B)に示した基準キーワードに対して編集距離Lの文字列を抽出する各々の抽出パターンから、図6に示すような基準キーワードに対して編集距離Lの関連文字列を抽出する抽出パターンが生成される。
ステップS70において、CPU41は、ステップS60で生成した基準キーワードの関連文字列を抽出する抽出パターンを用いて、文書から基準キーワードの関連文字列を抽出する。具体的には、CPU41は、文書に含まれる文字列の中から、基準キーワードの関連文字列を抽出する抽出パターンで表される文字列と一致する文字列を抽出する。
ステップS80において、CPU41は、ステップS70で抽出した基準キーワードの関連文字列を出力して、図4に示す情報処理を終了する。この場合、CPU41は、文書における基準キーワードの関連文字列の位置を表す情報を基準キーワードの関連文字列と対応付ける形式で出力してもよい。具体的には、文書における基準キーワードの関連文字列を他の文字列と異なる色で表示したり、太字や別のフォント種別で表示したりするようにしてもよい。
なお、図4に示した情報処理装置10では、編集距離Nの値を1つずつ増加させながら、基準キーワードに対して編集距離Lの文字列を抽出する抽出パターンを生成したが、これは一例であり、始めから基準キーワードに対して編集距離Lの文字列を抽出する抽出パターンを生成するようにしてもよい。
また、予めX文字(“X”は1以上の整数)の基準キーワードに対応した編集距離Nの文字列を抽出する抽出パターンのテンプレートを例えば不揮発性メモリ44に記憶しておき、基準キーワードの文字数及び編集距離Lに対応した抽出パターンのテンプレートに基準キーワードの文字を当てはめることで、基準キーワードに対して編集距離Lの文字列を抽出する抽出パターンを生成するようにしてもよい。
ユーザが情報処理装置10が出力した基準キーワードの関連文字列を参考にしながら誤変換された可能性のある文字列を元の基準キーワードに修正することで、スキャナユニット50で読み込む前の原稿の内容が再現されることになる。
こうした文書の修正作業を行うことによって、例えばユーザは、基準キーワードを構成する文字が文字誤り規則20に登録された誤変換文字とは異なる文字に変換されていることに気付くことがある。このような場合、ユーザは、本来の正しい文字(以降、「指定文字」という)と指定文字の誤変換文字を対応付け、入力ユニット48を通じて情報処理装置10に入力する。
新たな誤変換文字を受け付けた情報処理装置10は、指定文字に対する誤変換文字を文字誤り規則20に登録する。例えばユーザが、「リ」が「11」に誤変換されている状況に気付いた場合、ユーザは指定文字を「リ」、誤変換文字を「11」として情報処理装置10に入力する。
図7は、図2に示した文字誤り規則20の文字「リ」に対して、誤変換文字「11」を追加した文字誤り規則20の例を示す図である。図7に示すように、情報処理装置10はユーザから受け付けた誤変換文字を、文字誤り規則20における指定文字の誤変換文字欄に追加する。
文字誤り規則20への誤変換文字の追加に伴い、情報処理装置10の更新部12Dは、誤変換文字の追加が行われた指定文字が、基準キーワードの関連文字列を抽出する抽出パターンに含まれるか確認し、当該抽出パターンに含まれる場合には図4のステップS60で説明したように、指定文字が、追加された誤変換文字であってもよいというOR条件を追加して、抽出パターンを更新する。
図8は、文字「リ」に対して誤変換文字「11」が追加された場合に生成される、文書から基準キーワード「リード」の関連文字列を抽出する抽出パターンの例を示した図である。指定文字「リ」に誤変換文字「11」が追加される前の抽出パターン(図6参照)に対して、OR条件“|”によって指定文字「リ」と並列に誤変換文字「11」が追加されていることがわかる。
情報処理装置10が、更新後の抽出パターンを用いて文書から基準キーワードの関連文字列を再度抽出することで、更新前の抽出パターンを用いた場合よりも数多くの基準キーワードの関連文字列が抽出されることになる。しかも、抽出パターンの数は増加せずに、抽出パターンの指定文字に誤変換文字が追加されるだけであり、正規表現で表された抽出パターンに一致する文字列を文書から抽出するという処理の内容に変わりはないことから、追加される誤変換文字が増えたとしても、生成した誤りキーワード毎に、DPマッチング等によって編集距離Lの文字列かどうか判定しながら文書から文字列を抽出するより、基準キーワードの関連文字列を抽出する抽出時間の増加量が少なくて済む。
換言すれば、情報処理装置10において、基準キーワードの関連文字列の抽出に要する時間(以降、「抽出時間」という)は、抽出パターンの数に依存することになる。
また、ユーザは文書の修正作業を行うことによって、例えば抽出されていない基準キーワードの関連文字列が文書に存在していることに気づくことがある。このような場合、ユーザは、指定した編集距離Lより大きい編集距離(「編集距離L1」とする)を、入力ユニット48を通じて情報処理装置10に入力する。
新たな編集距離L1を受け付けた情報処理装置10の更新部12Dは、編集距離Nを“L+1”に設定した上で、編集距離Nが編集距離L1に達するまで、図4のステップS20〜S40の処理を繰り返し実行し、基準キーワードに対して編集距離L1の関連文字列を抽出する抽出パターンの更新を行う。
情報処理装置10が、更新後の抽出パターンを用いて文書から基準キーワードの関連文字列を再度抽出することで、更新前の抽出パターンを用いた場合よりも数多くの基準キーワードの関連文字列が文書から抽出されることになる。
なお、例えば文書から抽出される編集距離が“2”以内の基準キーワードの関連文字列の数と編集距離が“6”以内の基準キーワードの関連文字列の数を比べた場合、編集距離が3倍になったからといって、抽出される関連文字列の数も3倍になることはなく、抽出される関連文字列の数に変化が見られないことが多い。すなわち、スキャナユニット50の分解性能等の違いにもよるが、実用上は編集距離を“2”程度に設定すれば、文書から抽出される基準キーワードの関連文字列の数が頭打ちとなる傾向が見られる。
文字誤り規則20を参照し、基準キーワードの各々の文字を誤変換文字に置き換えることで得られる誤りキーワードの全ての組み合わせを生成し、生成した誤りキーワード毎に、DPマッチング等によって編集距離Lの基準キーワードの関連文字列を文書から抽出する場合、文字列の抽出時間は、誤りキーワードの数に依存する。すなわち、基準キーワードの文字数を“k”とし、文字に対応付けられた誤変換文字の最大数を“m”とすれば、この場合の文字列の抽出時間は“k”のオーダーで表される。
文字に対応付けられる誤変換文字は誤変換のパターンの数だけ存在し、誤変換のパターンには様々なパターンが存在する。したがって、文字に対応付けられた誤変換文字の最大数mに特定の上限値は存在しないことになるため、文字に対応付けられた誤変換文字の最大数mの増加に伴い、文字列の抽出時間は累乗のオーダーで増加することになる。
一方、上述したように、情報処理装置10における文字列の抽出時間は、抽出パターンの数に依存する。すなわち、情報処理装置10における文字列の抽出時間は“kL”のオーダーで表される。既に説明したように、“L”はユーザが指定した編集処理である。編集距離は実用上“2”程度の値が用いられることからもわかるように、編集距離Lがある値に達すると、その値以上の大きな値に設定したとしても文字列の抽出結果は変わらない傾向がある。したがって、編集距離Lが際限なく大きな値に設定されることはなく、情報処理装置10における文字列の抽出時間の増加が抑えられる。
また、情報処理装置10における文字列の抽出時間は、文字に対応付けられた誤変換文字の最大数mに依存しないため、文字に対応付けられた誤変換文字の最大数mが増加しても、文字列の抽出時間の増加は無視できる程度に抑えられる。
以上、実施の形態を用いて本発明について説明したが、本発明は実施の形態に記載の範囲には限定されない。本発明の要旨を逸脱しない範囲で実施の形態に多様な変更又は改良を加えることができ、当該変更又は改良を加えた形態も本発明の技術的範囲に含まれる。例えば、本発明の要旨を逸脱しない範囲で処理の順序を変更してもよい。
本実施の形態では、一例として情報処理をソフトウェアで実現する形態について説明したが、図4に示したフローチャートと同等の処理を、例えばASIC(Application Specific Integrated Circuit)に実装し、ハードウェアで処理させるようにしてもよい。この場合、情報処理をそれぞれソフトウェアで実現した場合と比較して、処理の高速化が図られる。
また、図1に示した各機能部や、抽出情報DB16を単体の情報処理装置10で実現するのではなく、例えばクラウドコンピューティングを用いて複数の情報機器に各機能部や抽出情報DB16を分散して配置し、複数の情報機器を連係させることで、情報処理装置10と同等の処理を実行するようにしてもよい。
上述した実施の形態では、情報処理プログラムがROM42にインストールされている形態を説明したが、これに限定されるものではない。本発明に係る情報処理プログラムは、コンピュータで読み取り可能な記憶媒体に記録された形態で提供することも可能である。例えば、本発明に係る情報処理プログラムを、CD(Compact Disc)−ROM、又はDVD(Digital Versatile Disc)−ROM等の光ディスクに記録した形態で提供してもよい。また、本発明に係る情報処理プログラムを、USBメモリ及びフラッシュメモリ等の半導体メモリに記録した形態で提供してもよい。更に、情報処理装置10は、通信ユニット47を介して、図示しない通信回線に接続される外部装置から本発明に係る情報処理プログラムを取得するようにしてもよい。
10 情報処理装置
11 スキャン処理部
12 画像処理部
12A OCR処理部
12B 抽出パターン生成部
12C 抽出部
12D 更新部
13 出力部
14 ユーザインターフェース(UI)部
15 制御部
16 抽出情報DB
20 文字誤り規則
40 コンピュータ
41 CPU
42 ROM
43 RAM
44 不揮発性メモリ
47 通信ユニット
48 入力ユニット
49 表示ユニット
50 スキャナユニット
L(N) 編集距離

Claims (4)

  1. 抽出するキーワードの基準となる基準キーワード、及び前記基準キーワードの文字が誤変換されることで発生する誤りキーワードの各々から予め定めた編集距離以内に含まれる類似キーワードを正規表現で表した抽出パターンを用いて、画像に含まれる文字を文字コードに変換した文書から前記基準キーワード、前記誤りキーワード、及び前記類似キーワードを抽出する抽出部、
    を備えた情報処理装置。
  2. 前記基準キーワードの文字が誤って変換された後の誤変換文字を受け付ける受付部と、
    前記受付部で受け付けた前記誤変換文字を前記抽出パターンに追加して、前記抽出パターンを更新する更新部と、
    を更に備えた請求項1記載の情報処理装置。
  3. 前記受付部は編集距離を受け付け、
    前記更新部は、前記抽出パターンが前記基準キーワード及び前記誤りキーワードの各々について、前記受付部で受け付けた編集距離以内に含まれる前記類似キーワードを表す正規表現を含むように前記抽出パターンを更新する
    請求項2記載の情報処理装置。
  4. コンピュータを、請求項1〜請求項3の何れか1項に記載の情報処理装置の各部として機能させるための情報処理プログラム。
JP2019015798A 2019-01-31 2019-01-31 情報処理装置、及び情報処理プログラム Pending JP2020123232A (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
JP2020123232A true JP2020123232A (ja) 2020-08-13

Family

ID=71992776

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JP2020123232A (ja)

Similar Documents

Publication Publication Date Title
US8831929B2 (en) Multi-mode input method editor
JP5802292B2 (ja) 共有された言語モデル
US10185701B2 (en) Unsupported character code detection mechanism
US10402474B2 (en) Keyboard input corresponding to multiple languages
CN112153206B (zh) 一种联系人匹配方法、装置、电子设备及存储介质
JP2010134922A (ja) 類似語決定方法およびシステム
KR102531507B1 (ko) 정보 출력 방법, 장치, 기기 및 저장 매체
CN111046627A (zh) 一种中文文字显示方法及系统
JP4470913B2 (ja) 文字列検索装置およびプログラム
JP2019159826A (ja) 表示制御プログラム、表示制御装置及び表示制御方法
KR20190090636A (ko) 문서 자동 편집 방법
US11132497B2 (en) Device and method for inputting characters
JP6568968B2 (ja) 文書校閲装置およびプログラム
JP2020123232A (ja) 情報処理装置、及び情報処理プログラム
JP2024033667A (ja) 明細書入力支援方法、およびプログラム
US11972208B2 (en) Information processing device and information processing method
US11113558B2 (en) Information processing apparatus and non-transitory computer readable medium storing information processing program for character string extraction
US20170249299A1 (en) Non-transitory computer readable medium and information processing apparatus and method
JP7302175B2 (ja) 情報処理装置、及び情報処理プログラム
JP2011065597A (ja) データ検索装置、データ検索方法及びプログラム
US20190318190A1 (en) Information processing apparatus, and non-transitory computer readable medium
JP2017091024A (ja) 入力支援装置
US9766805B2 (en) System and method for textual input
JP7401202B2 (ja) 画像処理装置、その制御方法、及びプログラム
WO2022070422A1 (ja) 計算機システム及び文字認識方法