JP6193830B2 - 帳票認識装置、帳票認識方法、及び、プログラム - Google Patents

帳票認識装置、帳票認識方法、及び、プログラム Download PDF

Info

Publication number
JP6193830B2
JP6193830B2 JP2014190368A JP2014190368A JP6193830B2 JP 6193830 B2 JP6193830 B2 JP 6193830B2 JP 2014190368 A JP2014190368 A JP 2014190368A JP 2014190368 A JP2014190368 A JP 2014190368A JP 6193830 B2 JP6193830 B2 JP 6193830B2
Authority
JP
Japan
Prior art keywords
item
cell
keyword
character recognition
mark
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
JP2014190368A
Other languages
English (en)
Other versions
JP2016062347A (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.)
Fujitsu Frontech Ltd
Original Assignee
Fujitsu Frontech 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 Fujitsu Frontech Ltd filed Critical Fujitsu Frontech Ltd
Priority to JP2014190368A priority Critical patent/JP6193830B2/ja
Publication of JP2016062347A publication Critical patent/JP2016062347A/ja
Application granted granted Critical
Publication of JP6193830B2 publication Critical patent/JP6193830B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Character Input (AREA)

Description

本発明は、帳票認識装置に関し、特には、帳票のレイアウトの事前定義なしで帳票を認識する帳票認識装置に関する。
近年のコンピュータの発達により、従来人手で行っていた作業を自動化する動きが活発である。銀行などでは、振込み帳票などをOCR等で読み取り、読取ったイメージに画像処理及び文字認識を施して、必要な情報を取得し、データベースなどに記録することが行われる。その際、一般的には、読取る帳票のレイアウトを予め定義しておき、当該レイアウトで作成された帳票を自動的に読取ることが行われる。
しかし、私製為替帳票(一般企業が作成する振込み帳票、大学の入学金振込み帳票等)は、振込先情報(銀行名、支店名、科目、口座番号、依頼人名)が記載されているが、帳票レイアウトが千差万別である。このような場合、予め帳票レイアウトを定義しておくことができず、自動的に必要な情報を読取ることが出来ない。そのような場合には、人手で帳票の情報をコンピュータに入力していた。私製帳票は、その種類の多さにより、頻繁に人手での情報の入力が発生し、自動化するには限界があった。
そこで、特許文献1では、定義レス帳票認識方式を開発し、レイアウトの事前登録なしで私製為替帳票を認識できるようにし、初めて持ち込まれた帳票も自動的に項目位置を特定し、認識できるようにしている。
特許文献2には、事前レイアウト定義を行い、帳票の項目が複数のリストから一つを選ぶ選択式となっている場合の帳票認識装置を記載している。
特開2010−003155号公報 特開2008−077429号公報
図1は、私製振込み帳票の例を示す図である。
特許文献1の技術における定義レス帳票認識は、項目位置特定のヒントとなる「銀行名」などの見出しが存在し、認識項目が1:1になっている項目を対象としている(図1の(1))。
したがって、振込先が選択式のような1:1の関係にない複雑な構造をしたレイアウトでは、項目位置を一意に特定し、認識結果を通知することはできなかった。このためオペレータは手入力が必要となり作業負荷が大きくなるという問題があった。
また、特許文献1においては、1枠内に口座番号まで含まれる構造(複合項目)については、どのように処理するかの記載がある(図1の(2))。
図1の(3)のような選択式の振込先の記載がある帳票の場合には、特許文献1の技術は適用できず、オペレータによる情報の手入力が発生していた。
したがって、
・選択式の帳票においても、受取人情報(銀行名、支店名、科目、口座番号)を通知することでオペレータ入力業務の効率化を図る、
・選択式の帳票においても振込先を一意に特定でき、手入力不要とする(効率化)、
・手入力不要とし、入力誤りを防止する(堅実性向上)、
・レイアウトの事前定義を不要として、帳票改訂時の見直し不要とする(即時効果)、
などを実現する技術が望まれている。
本発明の課題は、帳票レイアウトの事前定義なしに、選択式帳票の情報を取得し、オペレータの手作業を削減する帳票認識装置を提供することである。
本発明の一側面における帳票認識装置は、帳票をイメージとして読み込むスキャナ部と、イメージとして読み込まれた前記帳票に対し文字認識処理を行う文字認識部と、文字認識された結果から、キーワードを検出し、前記キーワードの配置から、前記帳票に記載された項目の位置を特定する項目位置特定部と、前記項目の位置から、前記帳票に記載された項目が、いくつかの項目から1つを選択する形式の選択式となっているか否かを判断し、選択式の項目に対して、前記帳票のユーザがつけたマークが、選択式の項目のいずれを選択しているかを判定する選択式処理部と、前記選択式の項目から前記ユーザが選択した内容の文字認識結果を表示する表示部と、を備える。
本発明の他の側面における帳票認識方法及びプログラムは、コンピュータに、帳票をスキャナでイメージとして読み込みさせ、イメージとして読み込まれた前記帳票に対し文字認識処理を行わせ、文字認識された結果から、キーワードを検出し、前記キーワードの配置から、前記帳票に記載された項目の位置を特定させ、前記項目の位置から、前記帳票に記載された項目が、いくつかの項目から1つを選択する形式の選択式となっているか否かを判断させ、選択式の項目に対して、前記帳票のユーザがつけたマークが、選択式の項目のいずれを選択しているかを判定させ、前記選択式の項目から前記ユーザが選択した内容の文字認識結果を表示させる。
本発明によれば、帳票レイアウトの事前定義なしに、選択式帳票の情報を取得し、オペレータの手作業を削減する帳票認識装置を提供することができる。
私製振込み帳票の例を示す図である。 本実施形態の帳票認識装置の構成を説明する図である。 本実施形態の帳票認識装置の構成を説明する図である。 本実施形態の帳票認識装置の構成を説明する図である。 本実施形態の帳票認識装置の構成を説明する図である。 全体の処理の流れを説明する図である。 全体の処理の流れを説明する図である。 図6AのステップS14のサブルーチンが行う処理を説明する図である。 図6AのステップS14のサブルーチンが行う処理を説明する図である。 図6AのステップS14のサブルーチンが行う処理を説明する図である。 図6AのステップS14のサブルーチンが行う処理を説明する図である。 図7AのステップS26のサブルーチンの処理を示す図である。 図7AのステップS26のサブルーチンの処理を示す図である。 図7AのステップS27のサブルーチンを説明する図である。 図6AのステップS16のサブルーチンの処理を説明する図である。 図6AのステップS16のサブルーチンの処理を説明する図である。 図11AのステップS63のサブルーチンを説明する図である。 図11AのステップS63のサブルーチンを説明する図である。 図11AのステップS63のサブルーチンを説明する図である。 図6AのステップS17のサブルーチンを説明する図である。 図6AのステップS17のサブルーチンを説明する図である。 図13AのステップS83のサブルーチンを説明する図である。 図13AのステップS83のサブルーチンを説明する図である。 本実施形態を実現するパソコン10のハードウェア構成を示す図である。
本発明の実施形態においては、帳票レイアウトの事前定義なしに、選択式の帳票の情報を自動的に取得する。
図2〜図5は、本実施形態の帳票認識装置の構成を説明する図である。
図2には、本実施形態の帳票認識装置の装置構成が示されている。
本装置構成においては、ディスプレイ、キーボード等を備える一般的なパソコン10が、以下に説明する本実施形態の処理を実行する。パソコン10には、スキャナ11が接続される。スキャナ11は、帳票のイメージデータを取得する。パソコン10は、スキャナ11で取得された帳票のイメージに文字認識処理などを行い、帳票に記載された情報を取得する。
図3には、本実施形態の帳票認識装置の機能ブロックが示されている。
スキャナ制御部21は、スキャナ11を制御し、帳票の記載面をイメージとして取得する。文字認識処理部23は、帳票のイメージデータから、帳票記載面に記載されている文字を認識する。その際、帳票の記載者の手書きによる文字の認識には、手書き文字認識辞書26を使用し、帳票に印刷された文字の認識には、活字文字認識辞書27を使用する。この文字認識処理は、既存の技術を使用可能なので、以下の説明では、特に詳しくは説明しない。
認識結果表示部24は、文字認識処理部23における文字認識結果をパソコン10のディスプレイ上に表示させる制御を行う。項目位置特定部22は、文字認識処理部23で認識された文字から特定のキーワードを抽出して、銀行名などの情報が記載されている位置を特定する。特定のキーワードは、キーワードテーブル28に登録されているキーワードを用いる。選択式処理部25は、帳票に記載されたキーワードの存在位置などから、帳票に選択式の記載がされているか否かを判断し、選択式記載がされている場合には、その選択式記載から、必要な情報を取得する。
スキャナ制御部21、項目位置特定部22、文字認識処理部23、認識結果表示部24による一連の処理は、制御部20により制御する。
図4には、キーワードテーブルの例が示されている。
キーワードテーブル28には、図4に示すように、項目位置特定に必要な見出しキーワードとしての見出し文字列と、認識項目の文字列として含まれる文字列の例としての補助見出し文字列が登録されている。補助見出し文字列に登録された文字列が、文字認識された結果、発見された場合は、その文字列に対応する認識項目が存在すると判定される。例えば、認識項目が「銀行名」については、認識文字列の属性として、漢字あるいはカタカナであって、文字数が2〜30文字の文字列であって、補助見出し文字列に含まれる文字列が存在するか否かを判定する。対応する文字列が存在すると判定された場合には、その文字列が存在する部分の項目は「銀行名」であると判断する。同様に、支店名、科目、口座番号、受取人などの項目を判断する。
図5には、帳票の選択式記載の例が示されている。
図5の(a)のバリエーション1では、振込先銀行口座が複数記載され、振込先銀行・支店に対応する枠内に、預金科目、口座番号が記述されている。帳票の利用者は、自分が希望する銀行口座の欄に丸印などのマークを付けることで、使用する銀行口座の選択を行う。図5の(b)のバリエーション2では、振込先銀行・支店名、預金科目、口座番号は、異なる枠に記載されず、振込先銀行が記載された大きな枠内に列記されている。この場合、帳票の利用者は、大きな枠内の使用する銀行口座の記載の左側に丸印などのマークを付けることによって、使用する銀行口座を指定する。図5の(c)のバリエーション3は、各銀行口座は、異なる枠内に記載されているが、銀行・支店名、預金科目、口座番号は、1つの枠内に記載されている。この場合は、帳票の利用者は、銀行・支店名、預金科目、口座番号が記載されている枠の左側の枠内に、丸印などのマークを付けることにより、使用する銀行口座を指定する。図5の(d)のバリエーション4においては、銀行・支店名、預金科目、口座番号を記載した枠が、横に配列されている。帳票の利用者は、いずれかの枠内に丸印などのマークを付けることによって、使用する銀行口座を指定する。
以下に、図6A〜図14Bを参照して、本実施形態の処理を説明する。
図6A及び図6Bは、全体の処理の流れを説明する図である。
図6Aにおいて、私製為替帳票をカラーイメージでスキャンした後、ステップS10において、帳票全体から罫線を抽出する。罫線の抽出は既存の技術を使用してよい。罫線を抽出した後のイメージが図6Bの(1)に示されている。次に、ステップS11において、罫線で囲まれた枠をセルとし、IDを付与する。各セルにIDを付与した様子が、図6Bの(2)に示されている。次に、ステップS12において、セル毎に文字を抽出し、変数「セルMAX」にセル数を保持する。セル毎に文字を抽出した様子が、図6Bの(3)に示されている。ステップS13において、各項目の位置特定に必要な見出しを抽出する。すなわち、図4のキーワードテーブルの補助見出し文字列に登録された文字を抽出する。見出しを抽出した様子が図6Bの(4)に示されている。図6Bの(4)では、見出しとして、「銀行」、「支店」などの文字が抽出されている。
ステップS14において、振込先情報のパターン識別をサブルーチンで行う。ここでは、例として振込先情報のパターンを識別する場合を示すが、これに限定されず、所望の情報の記載パターンを識別するようにしてよい。ステップS15において、ステップS14の結果から、振込先情報のパターンが、選択式かそれ以外かで処理を分岐する。選択式以外の場合には、ステップS18において、特許文献1に記載されているような従来の処理を行い、ステップS19に進む。
ステップS15で、振込先情報のパターンが選択式であると判断された場合には、ステップS16において、マーク位置を特定するサブルーチンを実行する。ステップS17においては、文字列分割のサブルーチンを実行し、ステップS19に進む。ステップS19において、認識結果をディスプレイなどに表示して処理を終了する。
図7A〜図8Bは、図6AのステップS14のサブルーチンが行う処理を説明する図である。
図7Aにおいて、ステップS20では、図6AのステップS12で抽出した補助見出し文字を含むセルを抽出する。ステップS21のループでは、変数「セルMAX」に格納されている値分のセルについて処理が終わるまでループを繰り返す。ステップS22では、処理対象のセルが、補助見出しを含むセルか否かを判断する。ステップS22の判断がNoの場合には、ステップS21のループを、他のセルについて繰り返す。ステップS22の判断がYesの場合には、ステップS23で、該当セル内の補助見出し数を当該セルに付与し、ステップS24において、「選択肢候補Cnt」を1だけインクリメントする。ステップS21のループがすべてのセルについて処理し終わったら、ステップS25において、「選択肢候補Cnt」を、「選択肢候補MAX」に格納する。ステップS20からステップS25までの処理において、図7Bの(1)にあるように、選択式の振込先リストの各セルが処理される。
ステップS26においては、縦方向に規則的なセルを統合し、縦統合セルを生成する。このステップは、サブルーチンで処理される。このステップでは、図7Bの(2)にあるように、銀行名と支店名が記載されたセルを縦方向に統合して、1つのセルとしている。同様に、預金科目の「普通」、「当座」と記載されたセルも縦方向に統合されて、1つのセルとされる。また、口座番号が記載されたセルも縦方向に統合されて、1つのセルとされる。
ステップS27においては、横方向に規則的なセルを統合し、統合セルを生成する。このステップは、サブルーチンで処理される。このステップでは、図7Bの(3)にあるように、「振込先銀行・支店」と記載されたセルが1つの統合セル1とされる。また、銀行名、支店名、預金科目、口座番号が記載された12個のセルが統合されて、1つの統合セル2とされる。
図8Aにおいて、ステップS28のループでは、「統合セルCnt2」(ステップS27のサブルーチンで使用される変数)の数分のループを行う。また、x=1とし、1回のループが終了するごとに、xを1ずつインクリメントする。ステップS29では、x=1か否かを判断する。ステップS29の判断がYesの場合には、ステップS30において、「補助見出しMAX」に、x番目の統合セル内の補助見出し数を設定し、「採用統合セル」に、x番目の統合セルを設定し、ステップS28のループを繰り返す。
ステップS29の判断がNoの場合には、ステップS31に進み、「補助見出しMAX」が、x番目の統合セル内の補助見出し数より小さいか否かを判断する。ステップS31の判断がNoの場合には、ステップS28のループを繰り返す。ステップS31の判断がYesの場合には、ステップS32に進んで、「補助見出しMAX」に、x番目の統合セル内の補助見出し数を設定し、「採用統合セル」にx番目の統合セルを設定する。図8Bの(4)にあるように、統合セル1の補助見出し数は、2で、統合セル2の補助見出し数は、16なので、補助見出し数の多い統合セル2を、選択式記載がされたセルとして採用する。
ステップS28のループがすべての統合セルについて処理し終わると、ステップS33において、マーク欄を統合する。採用統合セルの左側の同一幅の範囲で、空白セルが、例えば、60%以上存在する場合、採用統合セルを左側のセルを含んだ座標まで拡張する。空白セルが60%あるか否かは、採用統合セルの左側の所定幅の範囲の面積に対し、マークがされていないセルの面積が60%あるか否かを判断すればよい。また、マークがされているか否かは、1つのセルの中で、所定以上の黒画素が存在するか否かを判断すればよい。図8の(5)にあるように、マーク欄も含めて、銀行口座の情報が記載されたセルが統合されて1つの統合セルとされている。
ステップS34では、マーク欄を統合し、かつ、銀行名が縦一列となっている場合、統合フラグをONにする。すなわち、図5の(a)のバリエーション1を識別する。ステップS35においては、採用統合セルから選択式を識別する。図8Bの(6)にあるように、選択式を判別する際の統合セルの特徴として、1.銀行補助見出し数、2.支店補助見出し数、3.科目補助見出し数、4.口座番号補助見出し数、を使うことが出来る。識別条件としては、1.〜4.が統合セル内に3つ以上存在する、1.〜4.の内、いずれかの補助見出しが2つ以上存在する、などである。また、統合したセルの大きさから、1.〜4.の値を動的に変更して識別するようにしても良い。ここで、動的に変更するとは、標準の統合セルの面積に対する、採用した統合セルの面積に比例させて、1.〜4.の値を変更するなどである。
図9A及び図9Bは、図7AのステップS26のサブルーチンの処理を示す図である。
ステップS40において、「選択肢候補MAX」数分のループを行う。その際、初期値をx=1として、繰り返しごとに、xを1ずつインクリメントする。xが「選択肢候補MAX」より大きくなったら処理を終了する。
ステップS41では、補助見出し候補を含むx番目のセルを含む統合セルがあるか否かを判断する。ステップS41の判断がYesの場合には、ステップS43に進む。ステップS41の判断がNoの場合には、ステップS42において、当該セルに対する統合セルを生成し、当該統合セルの右上、左上、右下、左下の座標を更新する。また、「統合セルCnt」を1だけインクリメントし、ステップS43に進む。
ステップS43では、「選択肢候補MAX」数分のループを行う。その際、初期値をy=1として、繰り返しごとに、yを1ずつインクリメントする。yが「選択肢候補MAX」より大きくなったら処理を終了する。
ステップS44では、補助見出し候補を含むx番目のセルが、補助見出し候補を含むy番目のセルと等しいか否かを判断する。ステップS44の判断がYesの場合には、ステップS43のループを繰り返す。ステップS44の判断がNoの場合には、ステップS45に進む。
ステップS45では、判定Aを行う。判定Aの内容は、補助見出し候補を含むx番目のセルの左下座標と補助見出し候補を含むy番目のセルの左上座標が一致し、かつ、補助見出し候補を含むx番目のセルの右下座標と補助見出し候補を含むy番目のセルの右上座標が一致する、か否かを判断するものである。ステップS45の判断がNoの場合には、ステップS43のループを繰り返す。ステップS45の判断がYesの場合には、ステップS46に進む。
ステップS46では、補助見出し候補を含むx番目のセルを含む統合セルに、補助見出し候補を含むy番目のセルが存在するか否かを判断する。ステップS46の判断がYesの場合、ステップS43のループを繰り返す。ステップS46の判断がNoの場合には、ステップS47に進む。
ステップS47では、補助見出し候補を含むy番目のセルが別の統合セルに含まれるか否かを判断する。ステップS47の判断がYesの場合には、ステップS48において、統合セル同士を統合し、統合セルの右上、左上、右下、左下座標を更新し、統合セルCntを1だけデクリメントし、ステップS43のループを繰り返す。
ステップS47の判断がNoの場合には、ステップS49において、補助見出し候補を含むx番目のセルを含む統合セルに、補助見出し候補を含むy番目のセルを追加し、統合セルの右上、左上、右下、左下座標を更新し、ステップS43のループを繰り返す。
図10は、図7AのステップS27のサブルーチンを説明する図である。
ステップS50において、「統合セルCnt」の値を「統合セルCnt2」に設定する。ステップS51において、統合セル数分のループを行う。すなわち、初期値をx=1として、繰り返しごとにxを1だけインクリメントし、xが「統合セルCnt」より大きくなったら処理を終了する。
ステップS52においては、統合セル数分のループを行う。すなわち、初期値をy=1として、繰り返しごとにyを1だけインクリメントし、yが「統合セルCnt」より大きくなったら処理を終了する。
ステップS53においては、x番目の統合セルとy番目の統合セルが同じものか否かを判断する。ステップS53の判断がYesの場合には、ステップS52のループを繰り返す。ステップS53の判断がNoの場合には、ステップS54において、判定Bを行う。判定Bの内容は、x番目の統合セルの右上座標とy番目の統合セルの左上座標が一致し、かつ、x番目の統合セルの右下座標とy番目の統合セルの左下座標が一致するか否かを判断するものである。
ステップS54の判断がNoの場合には、ステップS52のループを繰り返す。ステップS54の判断がYesの場合には、ステップS55に進み、統合セル同士を統合し、統合セルの右上、左上、右下、左下座標を更新し、「統合セルCnt2」を1だけデクリメントする。そして、ステップS52のループを繰り返す。例えば、ステップS55の場合は、x番目の統合セルの左上と左下座標、y番目の統合セルの右上と右下座標により更新する。
図11A及び図11Bは、図6AのステップS16のサブルーチンの処理を説明する図である。
ステップS60において、図6AのステップS14で設定される統合フラグがONか否かを取得する。ステップS61で、統合フラグがONではないと判断されると、ステップS63に進んで、色情報を利用したマーク判定のサブルーチンを実行して、ステップS64に進む。ステップS61で統合フラグがONであると判断されると、ステップS62でマーク欄のマーク判定を行って、ステップS64に進む。
ステップS62のマーク判定は、図11Bの(1)に示される表にしたがって、マーク位置の特定を行う。マーク位置特定条件としては、記入されているマーク欄が1つ、記入されているマーク欄が1つ以上、記入されているマーク欄が0の3通りに分かれる。記入されているマーク欄が1つの場合には、マーク位置を特定する。記入されているマーク欄が1つ以上、あるいは、0個の場合には、マーク位置特定不可と判断する。この判定には、罫線抽出処理や文字抽出処理の結果を利用可能である。記入されているマークの判定は、マーク欄に含まれている画素数で判定する。その場合、ノイズ(影や折れ目)が原因でマークされていると誤って判定する場合があるため、一定の画素数以下は記入されているとは判断しない。例えば、20画素以下の画素が黒くなっている場合には、記入されていないと判定する。ただし、この方法は、これに限られるものではなく、その他の方法を使用してもよい。
ステップS64では、マーク位置が特定できたか否かを判断する。ステップS64の判断がNoの場合には、ステップS65において、マーク位置特定が不可であったとして、銀行名/支店名/科目/口座番号の文字認識結果にNULLを設定し、銀行名/支店名/科目/口座番号のイメージカーソル座標に、統合したセル座標を設定し、図6AのステップS19の認識結果通知処理に進む。ここで、イメージカーソル座標は、項目が記入されている座標のことである。文字認識結果と共に記入されている座標を強調表示することで、文字認識誤り時、オペレータ入力を支援するものである。
ステップS64の判断がYesの場合には、ステップS66において、銀行名/支店名/科目/口座番号のイメージカーソル座標をマークの記入がある欄に限定して、表示して処理を終了する。図11Bの(2)には、マークの記入がある欄のみが強調表示されている様子が示されている。
図12A〜図12Cは、図11AのステップS63のサブルーチンを説明する図である。
色情報を利用したマーク判定では、帳票で多く利用される色(赤、青、緑)を利用してマーク位置を特定する。ステップS70においては、赤ドロップ2値イメージを作成する。赤ドロップとは、赤色の光を照射すると、赤色で描かれた線が消えたイメージが得られることを利用するものである。ステップS71においては、青ドロップ2値イメージを作成する。青ドロップは、青色の光を照射して、青色で描かれた線が消えたイメージを得ることである。ステップS72においては、緑ドロップ2値イメージを作成する。緑ドロップは、緑色の光を照射して、緑色で描かれた線が消えたイメージを得ることである。以上の3色の光を使って、それぞれの色を消したイメージを得る様子が、図12Bの(a)に示されている。赤帳票の場合は、赤ドロップで文字が消えて見え、青帳票の場合には、青ドロップで文字が消えて見え、緑帳票の場合には、緑ドロップで文字が消えて見える様子を示している。なお、赤帳票、青帳票、及び緑帳票は、それぞれ、印刷された文字や罫線が赤色、青色、及び緑色の帳票のことである。
ステップS73で、3つのイメージから画素の少ないイメージを選択する。マークは一般に黒色のペンで記載されている可能性が高いと考えられ、したがって、3つのイメージのいずれについてもマークは消えずにイメージに残っていると考えられる。そこで、ステップS74では、黒画素の塊であるラベルを作成する。なお、マーク以外にノイズ(影や折れ目)などから小さなラベルを抽出する場合があるため、一定画素以下(例えば、20画素以下)のラベルは無効として、以降の処理で使用しないようにする。
ステップS75においては、判定Cを判断する。判定Cの内容は、ラベルが1つのみ存在し、かつ、そのラベルが左側に高さが同じ範囲(数ドット、例えば、上下5ドット内)に1つのみ受取人情報が存在するか否かを判断する。図12Cの(b)には、マーク及び活字の上下の点線が、高さが同じ範囲の例を示している。
ステップS75の判断がNoの場合には、処理を終了する。ステップS75の判断がYesの場合には、ステップS76において、マーク位置を左側の受取人情報に設定する。ステップS77では、判定Dを判断する。判定Dの内容は、特定した受取人情報が含まれるセルに他の受取人情報が存在しているか否かを判断するものである。ステップS77の判断がNoの場合には、処理を終了する。ステップS77の判断がYesの場合には、ステップS78に進んで、特定した受取人情報に仮想セルを生成する。図12Cの(c)に示されるように、統合セルのように、1つのセルに複数の銀行口座が記載されている場合、マークの付けられている受取人の銀行口座の情報のみ取り出すため、その情報を囲む仮想セルを設定する。仮想セルの左座標は、ラベルの右端までとする。
図13A及び図13Bは、図6AのステップS17のサブルーチンを説明する図である。
ここで、項目の配置は、下記の通りに記載されることを利用して文字列を分離する。
・「銀行名と支店名」、「科目と口座番号」がセットで記載される。
・「銀行名」が「支店名」より先、「科目」が「口座番号」より先に記載される。
・「銀行名と支店名」が「科目と口座番号」より先に記載される。
まず、ステップS80において、各項目に必要な見出し文字を含むセル情報を抽出する。図13Bの(1)に示されるように、項目として、「銀行」、「支店」、「当座」及び「口座番号」を含むセル情報を抽出する。
ステップS81において、セルと見出しから記載のパターンを決定する。パターンの例としては以下のものがあげられる。
・セル1型
・銀行支店1型、科目口座1型
・銀行支店1型、科目口座2型
・銀行支店2型、科目口座1型
・銀行支店2型、科目口座2型
図13Bの(2)に示されるように、セル1型は、すべての項目が1つのセルに含まれるパターンである。銀行支店1型は、銀行名と支店名が1つのセルに含まれるパターンである。銀行支店2型は、銀行名と支店名が別のセルに含まれるパターンである。科目口座1型は、科目と口座番号が1つのセルに含まれるパターンである。科目口座2型は、科目と口座番号が別のセルに含まれるパターンである。上記5つのパターンは、これらの組み合わせである。
ステップS82において、パターンがセル1型か否かを判断する。ステップS82の判断がNoの場合には、ステップS84に進む。ステップS82の判断がYesの場合には、ステップS83において、セルを銀行支店1型、科目口座1型に分離し、ステップS84に進む。ステップS83の処理は後述するサブルーチンで行われる。図13Bの(3)に示されるように、1つのセルを、見出しの位置から銀行支店2型、科目口座2型に分離する。縦に分離するか横に分離するかは、見出しの位置によって判断する。
ステップS84では、パターンが銀行支店1型か否かを判断する。ステップS84の判断がNoの場合には、ステップS86に進む。ステップS84の判断がYesの場合には、ステップS85において、見出し文字座標から縦または横に分離する。横の場合は、銀行見出しの右側でセルを分離する。縦の場合は、銀行見出しの下側で分離する。縦に分離するか横に分離するかは、見出しの位置から判断する。図13Bの(4)にその様子が示されている。
ステップS86では、パターンが科目口座1型か否かを判断する。ステップS86の判断がNoの場合には、ステップS88に進む。ステップS86の判断がYesの場合には、ステップS87に進む。ステップS87では、見出し文字の座標から縦または横に分離する。横の場合は、科目見出しの右で分離し、縦の場合は、科目見出しの下で分離する。縦に分離するか横に分離するかは、見出し文字の配置によって判断する。
ステップS88では、各認識項目と文字列の紐付けを行う。図13Bの(5)に示されるように、分離されたセル内の「DD銀行」の文字列を認識項目の銀行名に、「dd支店」の文字列を認識項目の支店名に、「当座」を認識項目の科目に、「4444444」を認識項目の口座番号に関連付ける。
ステップS89では、カテゴリを限定して、各セル内の文字を認識する。すなわち、図13Bの(6)にあるように、帳票全体を文字認識する場合、局所的に、認識される文字のカテゴリを限定できない。しかし、ステップS88で行った、認識項目と文字列の紐付けにより、例えば、あるセル内の文字列が口座番号であると分かった場合に、そのセル内の文字列の文字認識を数字カテゴリに限定することで、認識精度を向上することが出来る。
図14A及び図14Bは、図13AのステップS83のサブルーチンを説明する図である。
図14Bの配置パターンテーブルに示されるように、セル1型には、銀行名、支店名、科目、口座番号の縦横の配置の組み合わせにより、8つのパターンがある。ステップS95において、見出し文字の座標から、セル1型の配置パターンテーブルの(1)〜(8)のいずれかに、処理対象のセルを割り当てる。ステップS96において、配置パターンテーブルに格納されている支店右、支店下などの記述に従い、セルを分割する。図14Bには、配置パターンが(3)の場合と(6)の場合の例が示されている。配置パターンが(3)の場合には、配置パターンテーブルによると、「支店右」と記述されているので、支店名の右側でセルを分割する。配置パターンが(6)の場合には、「支店下」と記述されているので、支店名の下でセルを分割する。このようにして、セル1型を銀行支店1型、科目口座1型に分離する。
ステップS97では、当該セルのセル1型という情報を、銀行支店1型、科目口座1型に更新して処理を終了する。
図15は、本実施形態を実現するパソコン10のハードウェア構成を示す図である。
パソコン10においては、CPU30、ROM31、RAM32、通信インタフェース33、記憶装置34、媒体ドライバ35、入出力装置37は、バス38で相互に接続される。
パソコン10は、ROM31に格納されるBIOSをCPU30が実行することにより、基本機能を実現する。RAM32は、記憶装置34あるいは、媒体ドライバ35によって読取られる可搬記録媒体36に記録されているプログラムを、CPU30が実行可能なように展開する。本実施形態の処理は、このプログラムとして実現可能である。また、図3に示した、キーワードテーブル28や、手書き文字認識辞書26、活字文字認識辞書27なども記憶装置34や可搬記録媒体36に格納して使用することができる。
記憶装置34は、ハードディスクなどであり、可搬記録媒体36は、フレキシブルディスク、CD−ROM、DVD、Blu−ray(登録商標)、ICメモリ、磁気テープなどの、持ち運び可能な記録媒体である。
入出力装置37は、CPU30に対する命令をユーザが入力したり、CPU30の処理結果をユーザに示す装置で、CRTディスプレイ、液晶ディスプレイ、プラズマディスプレイなどの表示装置のほか、キーボード、テンプレート、マウスなどの入力装置を含む。また、本実施形態においては、帳票を読取るスキャナ11も入出力装置37に含まれる。
通信インタフェース33は、パソコン10をネットワークに接続する装置で、インターネット、イントラネット、LAN、WANなどのネットワークとパソコン10を接続する。本実施形態の処理は、記憶装置34あるいは可搬記録媒体36に記録されたプログラムとすることが出来るが、更には、通信インタフェース33を使って、ネットワーク経由で接続される他のパソコンやサーバからダウンロードされたプログラムとして実行したり、他のパソコンやサーバでプログラムを実行させて、入出力作業のみをパソコン10で行うようにしても良い。
10 パソコン
11 スキャナ
20 制御部
21 スキャナ制御部
22 項目位置特定部
23 文字認識処理部
24 認識結果表示部
25 選択式処理部
26 手書き文字認識辞書
27 活字文字認識辞書
28 キーワードテーブル
30 CPU
31 ROM
32 RAM
33 通信インタフェース
34 記憶装置
35 媒体ドライバ
36 可搬記録媒体
37 入出力装置
38 バス

Claims (7)

  1. 帳票をイメージとして読み込むスキャナ部と、
    イメージとして読み込まれた前記帳票に対し文字認識処理を行う文字認識部と、
    文字認識された結果から、キーワードを検出し、前記キーワードの配置から、前記帳票に記載された項目の位置を特定する項目位置特定部と、
    前記項目の位置から、前記帳票に記載された項目が、いくつかの項目から1つを選択する形式の選択式となっているか否かを判断し、選択式の項目に対して、前記帳票のユーザがつけたマークが、選択式の項目のいずれを選択しているかを判定する選択式処理部と、
    前記選択式の項目から前記ユーザが選択した内容の文字認識結果を表示する表示部と、
    を備えることを特徴とする帳票認識装置。
  2. 前記マークを用いた前記ユーザの選択の検出は、前記マークが記載されているべき欄にある画素の数に基づいて検出する、ことを特徴とする請求項1に記載の帳票認識装置。
  3. 前記マークを用いた前記ユーザの選択の内容の検出は、前記帳票に印刷されている文字をイメージ内で見えなくなるような特定の色の光を前記帳票に照射し、特定の色の光を照射しても見えなくならない画素を検出することにより、マークの位置を特定することを含む、ことを特徴とする請求項1に記載の帳票認識装置。
  4. 少なくとも前記キーワードと前記キーワードが含まれる文字列が示す項目とを対応付けて記憶するキーワードテーブルを更に備える、ことを特徴とする請求項1に記載の帳票認識装置。
  5. 前記帳票は、前記帳票を使用する団体や個人が独自にレイアウトした私製帳票である、ことを特徴とする請求項1に記載の帳票認識装置。
  6. コンピュータに
    帳票をスキャナでイメージとして読み込みさせ、
    イメージとして読み込まれた前記帳票に対し文字認識処理を行わせ、
    文字認識された結果から、キーワードを検出し、前記キーワードの配置から、前記帳票に記載された項目の位置を特定させ、
    前記項目の位置から、前記帳票に記載された項目が、いくつかの項目から1つを選択する形式の選択式となっているか否かを判断させ、
    選択式の項目に対して、前記帳票のユーザがつけたマークが、選択式の項目のいずれを選択しているかを判定させ、
    前記選択式の項目から前記ユーザが選択した内容の文字認識結果を表示させる、
    ことを特徴とする帳票認識方法。
  7. コンピュータに
    帳票をスキャナでイメージとして読み込みさせ、
    イメージとして読み込まれた前記帳票に対し文字認識処理を行わせ、
    文字認識された結果から、キーワードを検出し、前記キーワードの配置から、前記帳票に記載された項目の位置を特定させ、
    前記項目の位置から、前記帳票に記載された項目が、いくつかの項目から1つを選択する形式の選択式となっているか否かを判断させ、
    選択式の項目に対して、前記帳票のユーザがつけたマークが、選択式の項目のいずれを選択しているかを判定させ、
    前記選択式の項目から前記ユーザが選択した内容の文字認識結果を表示させる、
    ことを特徴とするプログラム。
JP2014190368A 2014-09-18 2014-09-18 帳票認識装置、帳票認識方法、及び、プログラム Active JP6193830B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014190368A JP6193830B2 (ja) 2014-09-18 2014-09-18 帳票認識装置、帳票認識方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014190368A JP6193830B2 (ja) 2014-09-18 2014-09-18 帳票認識装置、帳票認識方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2016062347A JP2016062347A (ja) 2016-04-25
JP6193830B2 true JP6193830B2 (ja) 2017-09-06

Family

ID=55796052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014190368A Active JP6193830B2 (ja) 2014-09-18 2014-09-18 帳票認識装置、帳票認識方法、及び、プログラム

Country Status (1)

Country Link
JP (1) JP6193830B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6638938B2 (ja) 2016-03-25 2020-02-05 三菱日立パワーシステムズ株式会社 回転機械

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3422924B2 (ja) * 1998-03-27 2003-07-07 富士通株式会社 文字認識装置、文字認識方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2002259909A (ja) * 2001-02-28 2002-09-13 Oki Electric Ind Co Ltd 文字読取装置
JP5018115B2 (ja) * 2007-02-09 2012-09-05 沖電気工業株式会社 手書きマーク識別装置、および、手書きマーク識別プログラム
JP5189056B2 (ja) * 2009-09-30 2013-04-24 富士通フロンテック株式会社 マーク項目認識装置、マーク項目認識方法及びマーク項目認識プログラム

Also Published As

Publication number Publication date
JP2016062347A (ja) 2016-04-25

Similar Documents

Publication Publication Date Title
JP5402099B2 (ja) 情報処理システム、情報処理装置、情報処理方法およびプログラム
JP4461769B2 (ja) 文書検索・閲覧手法及び文書検索・閲覧装置
JP2005173730A (ja) 帳票ocrプログラム、方法及び装置
JP2013089197A (ja) 電子コミック編集装置、方法及びプログラム
TW200416583A (en) Definition data generation method of account book voucher and processing device of account book voucher
JP2012190434A (ja) 帳票定義装置、帳票定義方法、プログラム及び記録媒体
JP2012234344A (ja) 帳票上の文字を認識する文字認識装置、マスク処理方法、および、マスク処理プログラム
JP2013229011A (ja) 帳票識別装置および帳票識別方法
JP6193830B2 (ja) 帳票認識装置、帳票認識方法、及び、プログラム
JP6432179B2 (ja) 文書ファイル生成装置及び文書ファイル生成方法
CN116311300A (zh) 表格生成方法、装置、电子设备以及存储介质
JP3898645B2 (ja) 帳票書式編集装置および帳票書式編集プログラム
JP2021140831A (ja) 帳票画像処理システム、帳票画像処理方法、および帳票画像処理プログラム
JP4347675B2 (ja) 帳票ocrプログラム、方法及び装置
JP2022090469A (ja) 書式定義装置、書式定義方法、及びプログラム
CN113111881A (zh) 信息处理装置及记录媒体
JP6960646B1 (ja) 読取システム、読取プログラムおよび読取方法
JP6503850B2 (ja) 範囲指定プログラム、範囲指定方法および範囲指定装置
JP6994727B1 (ja) 読取システム、読取プログラムおよび読取方法
US11481544B2 (en) Form processing apparatus and non-transitory computer readable medium
KR102673900B1 (ko) 표 데이터 추출 시스템 및 그 방법
JP2013182459A (ja) 情報処理装置、情報処理方法及びプログラム
JP5361315B2 (ja) 情報処理装置及び情報処理方法
JP7497620B2 (ja) 文書データ生成装置、画像形成装置、及び文書データ生成プログラム
JP5176390B2 (ja) 文字入力装置及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170725

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170810

R150 Certificate of patent or registration of utility model

Ref document number: 6193830

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150