(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-10
(45)【発行日】2024-05-20
(54)【発明の名称】帳票処理プログラム、帳票処理装置及び帳票処理方法
(51)【国際特許分類】
G06V 30/412 20220101AFI20240513BHJP
G06V 30/14 20220101ALI20240513BHJP
G06V 30/12 20220101ALI20240513BHJP
【FI】
G06V30/412
G06V30/14
G06V30/12 B
(21)【出願番号】P 2020001386
(22)【出願日】2020-01-08
【審査請求日】2022-11-15
【新規性喪失の例外の表示】特許法第30条第2項適用 セミナーにおける公開、集会名:TIS INTEC GROUP BUSINESS SUMMIT 2019 -EXCITING FUTURE-、開催日:令和元年7月11日 セミナーにおける公開、集会名:AI×RPAによって実現するビジネスプロセスの自動化と働き方改革セミナー、開催日:令和元年10月8日
(73)【特許権者】
【識別番号】514020389
【氏名又は名称】TIS株式会社
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】香川 元
(72)【発明者】
【氏名】藤原 翔
(72)【発明者】
【氏名】鈴木 麻緒
【審査官】▲柳▼谷 侑
(56)【参考文献】
【文献】特開2019-057173(JP,A)
【文献】特開平08-335247(JP,A)
【文献】特開2016-009223(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/412
G06V 30/14
G06V 30/12
(57)【特許請求の範囲】
【請求項1】
コンピュータに、
処理対象の帳票である対象帳票の第1の帳票画像を取得する対象帳票取得処理と、
帳票の読み取りに用いられる帳票情報が関連付けられた、参照帳票の第2の帳票画像を帳票情報記憶部から取得する参照帳票取得処理と、
前記第1の帳票画像と前記第2の帳票画像とに基づいて、前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能であるかを判定する判定処理と、
前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能であると判定された場合に、前記第2の帳票画像に関連付けられた前記帳票情報を前記第1の帳票画像に関連付ける関連付け処理と、
前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能ではないと判定された場合に、前記第1の帳票画像に基づいて、前記対象帳票の読み取りに用いる帳票情報を生成し、前記第1の帳票画像に関連付けて、前記帳票情報記憶部に記憶する帳票情報生成処理と、
前記第1の帳票画像に含まれる罫線を検出する罫線検出処理と、
前記第1の帳票画像に含まれる文字位置を検出する文字位置検出処理と、
を実行させ、
前記判定処理は、
前記第1の帳票画像に含まれる前記罫線と前記文字位置とに基づいて、前記第1の帳票画像に含まれる表の表頭及び表側の画像を取得する表画像取得処理を、さらに含み、
前記帳票情報生成処理は、
前記表頭及び表側の画像に基づいて、前記表の方向を判定する方向判定処理と、
前記表頭及び表側の画像と、前記方向とに基づいて、前記表における項目を示す前記文字位置である項目位置と前記表における明細を示す前記文字位置である明細位置とを検出する検出処理と、をさらに含み、前記項目位置及び前記明細位置に基づいて、前記対象帳票の読み取りに用いる帳票情報を生成する、帳票処理プログラム。
【請求項2】
前記コンピュータに、
前記第2の帳票画像に関連付けられた前記帳票情報を用いる場合に、前記
関連付け処理によって関連付けられた前記帳票情報と、前記第1の帳票画像とに基づいて、前記対象帳票の読み取り結果を取得する、第1の帳票読取処理と、
前記対象帳票の読み取りに用いる帳票情報を生成した場合に、前記帳票情報生成処理によって関連付けられた前記帳票情報と、前記第1の帳票画像とに基づいて、前記対象帳票の読み取り結果を取得する、第2の帳票読取処理と、
をさらに実行させる請求項1に記載の帳票処理プログラム。
【請求項3】
前記文字位置は第1の文字位置であり、
前記コンピュータに、
前記第2の帳票画像に含まれる第2の文字位置を取得する文字位置取得処理、
をさらに実行させ、
前記第1の帳票読取処理は、
前記第1の文字位置と前記第2の文字位置との重なりを検出する重なり検出処理、をさらに含み、前記重なりがある場合に、前記第1の文字位置にある文字列に対する読み取り結果を取得し、前記重なりがない場合に、前記第1の文字位置にある文字列に対する読み取り結果を取得しない、請求項2に記載の帳票処理プログラム。
【請求項4】
前記コンピュータに、
前記第2の帳票読取処理によって取得された前記対象帳票の読み取り結果に基づいて、前記生成された前記対象帳票の読み取りに用いる帳票情報を補正する補正情報を取得する、補正情報取得処理と、
前記第1の帳票画像と関連付けて前記帳票情報記憶部に記憶されている前記帳票情報を前記補正情報に基づいて補正する補正処理と、
をさらに実行させる、請求項2又は3に記載の帳票処理プログラム。
【請求項5】
処理対象の帳票である対象帳票の第1の帳票画像を取得する対象帳票取得部と、
帳票の読み取りに用いられる帳票情報が関連付けられた、参照帳票の第2の帳票画像を帳票情報記憶部から取得する参照帳票取得部と、
前記第1の帳票画像と前記第2の帳票画像とに基づいて、前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能であるかを判定する判定部と、
前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能であると判定された場合に、前記第2の帳票画像に関連付けられた前記帳票情報を前記第1の帳票画像に関連付ける関連付け部と、
前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能ではないと判定された場合に、前記第1の帳票画像に基づいて、前記対象帳票の読み取りに用いる帳票情報を生成し、前記第1の帳票画像に関連付けて、前記帳票情報記憶部に記憶する帳票情報生成部と、
前記第1の帳票画像に含まれる罫線を検出する罫線検出部と、
前記第1の帳票画像に含まれる文字位置を検出する文字位置検出部と、
を備
え、
前記判定部は、
前記第1の帳票画像に含まれる前記罫線と前記文字位置とに基づいて、前記第1の帳票画像に含まれる表の表頭及び表側の画像を取得し、
前記帳票情報生成部は、
前記表頭及び表側の画像に基づいて、前記表の方向を判定し、前記表頭及び表側の画像と、前記方向とに基づいて、前記表における項目を示す前記文字位置である項目位置と前記表における明細を示す前記文字位置である明細位置とを検出し、前記項目位置及び前記明細位置に基づいて、前記対象帳票の読み取りに用いる帳票情報を生成する、
帳票処理装置。
【請求項6】
コンピュータが、
処理対象の帳票である対象帳票の第1の帳票画像を取得することと、
帳票の読み取りに用いられる帳票情報が関連付けられた、参照帳票の第2の帳票画像を帳票情報記憶部から取得することと、
前記第1の帳票画像と前記第2の帳票画像とに基づいて、前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能であるかを判定することと、
前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能であると判定された場合に、前記第2の帳票画像に関連付けられた前記帳票情報を前記第1の帳票画像に関連付けることと、
前記対象帳票の読み取りに前記第2の帳票画像に関連付けられた前記帳票情報を用いることが可能ではないと判定された場合に、前記第1の帳票画像に基づいて、前記対象帳票の読み取りに用いる帳票情報を生成し、前記第1の帳票画像に関連付けて、前記帳票情報記憶部に記憶することと、
前記第1の帳票画像に含まれる罫線を検出することと、
前記第1の帳票画像に含まれる文字位置を検出することと、
を実行し、
前記判定することは、
前記第1の帳票画像に含まれる前記罫線と前記文字位置とに基づいて、前記第1の帳票画像に含まれる表の表頭及び表側の画像を取得することを、さらに含み、
前記帳票情報を生成することは、
前記表頭及び表側の画像に基づいて、前記表の方向を判定することと、前記表頭及び表側の画像と、前記方向とに基づいて、前記表における項目を示す前記文字位置である項目位置と前記表における明細を示す前記文字位置である明細位置とを検出することと、前記項目位置及び前記明細位置に基づいて、前記対象帳票の読み取りに用いる帳票情報を生成することと、をさらに含む、
帳票処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、帳票処理プログラム、帳票処理装置及び帳票処理方法に関する。
【0002】
紙媒体に記録される帳票に対し、OCR(Optical Character Recognition)処理を行うことによって、帳票の内容を電子データとして電子媒体に記録することが行われる。例えば、帳票の一種である財務諸表の内容を電子データとするための手法が特許文献1に示される。特許文献1では、クラウドサービスで財務諸表の読み取りを行う場合に、読取範囲に対するユーザからの修正指示を収集することが可能な財務諸表読取装置が示される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1のようなユーザからの修正の収集は例えば、帳票の読取範囲及び読取位置がすでに記憶されていない非定型帳票が読み取られた場合に行われる。非定型帳票は、帳票の作成者が設ける独自の様式であり、多くの種類がある。非定型帳票を読み取った際の読取範囲及び読取位置の修正、あるいはOCR処理された文字列に対する修正は、人の目視による検査によって行われる。非定型帳票が多く含まれるような複数の帳票を読み取るような場合、非定型帳票を読み取った結果に対する修正は事務処理の負担を増加させる。よって、事務負担を増加させないように、非定型帳票の読み取りが円滑に行われる必要がある。
【0005】
そこで、本発明は、非定型帳票を適切に読み取るための帳票処理プログラム、帳票処理装置及び帳票処理方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る帳票処理プログラムは、コンピュータに、処理対象の帳票である対象帳票の第1の帳票画像を取得する対象帳票取得処理と、帳票の読み取りに用いられる帳票情報が関連付けられた、参照帳票の第2の帳票画像を帳票情報記憶部から取得する参照帳票取得処理と、第1の帳票画像と第2の帳票画像とに基づいて、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能であるかを判定する判定処理と、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能であると判定された場合に、第2の帳票画像に関連付けられた帳票情報を第1の帳票画像に関連付ける関連付け処理と、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能ではないと判定された場合に、第1の帳票画像に基づいて、対象帳票の読み取りに用いる帳票情報を生成し、第1の帳票画像に関連付けて、帳票情報記憶部に記憶する帳票情報生成処理と、を実行させる。
【0007】
この態様によれば、対象帳票の読み取りに参照帳票の帳票情報を用いることができる場合は、参照帳票の帳票情報を利用して対象帳票の読み取りを行うことで、正確に対象帳票の読み取りが行われる。参照帳票の帳票情報を用いることができない場合には、帳票情報生成部によって、帳票情報を生成した後に帳票画像と帳票情報とを帳票情報記憶部に記憶する。参照帳票への対応がない新規に読み取られる対象帳票と同種の帳票を新たな参照帳票とすることで、他の帳票の読み取りを行うことができる。よって、非定型帳票の読み取りが円滑かつ適切に行われる。
【0008】
上記態様において、第1の帳票画像に含まれる罫線を検出する罫線検出処理と、第1の帳票画像に含まれる文字位置を検出する文字位置検出処理と、をさらに実行させ、
【0009】
帳票情報生成処理は、第1の帳票画像に含まれる罫線と文字位置とに基づいて、対象帳票の読み取りに用いる帳票情報を生成してもよい。
【0010】
本発明の他の態様に係る帳票処理装置は、処理対象の帳票である対象帳票の第1の帳票画像を取得する対象帳票取得部と、帳票の読み取りに用いられる帳票情報が関連付けられた、参照帳票の第2の帳票画像を帳票情報記憶部から取得する参照帳票取得部と、第1の帳票画像と第2の帳票画像とに基づいて、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能であるかを判定する判定部と、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能であると判定された場合に、第2の帳票画像に関連付けられた帳票情報を第1の帳票画像に関連付ける関連付け部と、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能ではないと判定された場合に、第1の帳票画像に基づいて、対象帳票の読み取りに用いる帳票情報を生成し、第1の帳票画像に関連付けて、帳票情報記憶部に記憶する帳票情報生成部と、を実行させる。
【0011】
本発明の他の態様に係る帳票処理方法は、コンピュータが、処理対象の帳票である対象帳票の第1の帳票画像を取得することと、帳票の読み取りに用いられる帳票情報が関連付けられた、参照帳票の第2の帳票画像を帳票情報記憶部から取得することと、第1の帳票画像と第2の帳票画像とに基づいて、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能であるかを判定することと、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能であると判定された場合に、第2の帳票画像に関連付けられた帳票情報を第1の帳票画像に関連付けることと、対象帳票の読み取りに第2の帳票画像に関連付けられた帳票情報を用いることが可能ではないと判定された場合に、第1の帳票画像に基づいて、対象帳票の読み取りに用いる帳票情報を生成し、第1の帳票画像に関連付けて、帳票情報記憶部に記憶することと、を含む。
【発明の効果】
【0012】
本発明によれば、非定型帳票を適切に読み取るための帳票処理プログラム、帳票処理装置及び帳票処理方法を提供することができる。
【図面の簡単な説明】
【0013】
【
図1】本実施形態に係る帳票処理システムの概略図である。
【
図2】本実施形態に係る帳票処理装置の構成を示すブロック図である。
【
図3】本実施形態に係る帳票情報のデータ構成の一例である。
【
図4】本実施形態に係る帳票処理システムにおける処理を説明する図である。
【
図5】本実施形態に係る帳票処理装置における処理のフローチャートである。
【
図6】本実施形態に係る帳票処理装置における判定処理のフローチャートである。
【
図7】本実施形態に係る帳票処理装置における関連付け処理のフローチャートである。
【
図8】本実施形態に係る帳票処理装置における帳票情報生成処理のフローチャートである。
【発明を実施するための形態】
【0014】
添付図面を参照して、本発明の好適な実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【0015】
図1には、本実施形態に係る帳票処理システム1の構成が示される。帳票処理システム1は、読取装置101、帳票処理装置102及びOCR装置103を備える。読取装置101と帳票処理装置102はネットワークNを介して通信可能に接続される。読取装置101とOCR装置103はネットワークNを介して通信可能に接続される。
【0016】
読取装置101は、紙媒体を読み取り可能な、コンピュータを有する端末である。例えば、読取装置101は、スキャナや複合機に接続されたコンピュータである。あるいは、読取装置101は、紙媒体をカメラによって撮影可能な、スマートフォンやタブレット端末であってもよい。読取装置101は、紙媒体から画像を生成する。生成された画像は帳票処理装置102へと送信される。なお、読取装置101が生成した画像は、外部記録媒体を用いて帳票処理装置102へと移されてもよい。
【0017】
本実施形態では、読取装置101は、帳票を読み取り、読み取った帳票から帳票画像を生成する。読み取り処理の処理対象となる帳票を対象帳票とよぶ。
【0018】
帳票処理装置102は、読取装置101とネットワークNを通じて通信可能に接続される情報処理装置である。例えば、帳票処理装置102は、読取装置101に接続されるサーバ装置である。帳票処理装置102は、デスクトップ型あるいはノート型のパーソナルコンピュータやタブレット端末等のコンピュータであってもよい。すなわち、読取装置101と通信可能であり、画像の入力が可能な端末であればよい。
【0019】
OCR装置103は、画像及び画像における読み取り範囲を入力として、画像に含まれる文字列を出力する装置である。例えばOCR装置103は、OCR処理を行うOCRエンジンが搭載されたサーバ装置である。
【0020】
帳票処理システム1は、読取装置101によって帳票をスキャンした後に、帳票処理装置102によって、対象帳票の帳票画像において、読み取るべき文字の位置を設定し、OCR装置103によってOCR処理を行うことで、帳票の各位置における文字列を取得し、帳票をデータ化する。なお、読取装置101、帳票処理装置102、及びOCR装置103のうちの一部又は全部が、一つの装置により実現されてもよい。
【0021】
図2には、帳票処理装置102の構成がブロック図として示される。帳票処理装置102は、対象帳票取得部201、参照帳票取得部202、罫線検出部203、文字位置検出部204、判定部205、関連付け部206、帳票情報生成部207、帳票情報記憶部208、読取結果取得部209、補正情報取得部210及び補正部211を備える。
【0022】
帳票処理装置102の各部は、例えば、帳票処理装置102において、メモリ等の記憶領域を用いたり、記憶領域に格納されたプログラムをプロセッサが実行したりすることによって、実現することができる。
【0023】
対象帳票取得部201は、読取装置101から対象帳票の帳票画像を取得する。対象帳票取得部201は取得した帳票画像に対して、傾き、明るさ、背景色又は帳票の罫線を補正してもよい。
【0024】
対象帳票取得部201は、対象帳票の画像を取得した場合、帳票の読み取りに用いられる帳票情報を帳票画像ごとに用意する。帳票情報は、
図3に示されるデータ構造を有する。帳票情報は、画像情報、表情報、罫線情報、文字位置情報を有する。
【0025】
画像情報は、帳票画像及び補正済み帳票画像に関する情報を有する。画像情報は外部に記憶された画像を参照するためのパスであってもよい。
【0026】
表情報は、表情報ID、表位置、表のヘッダ、表頭の文字列、表側の文字列、表種類及び明細表IDを有する。表情報IDとは表を識別するIDである。表位置とは、帳票画像における表の位置である。例えば、表位置は二次元画像における4つの点の座標を指定して、4つの点を直線で結んでできる領域として定められる。表ヘッダ位置とは、表のヘッダ位置である。表ヘッダとは、表を人が読み取れるように配置した場合に、表の上部に位置する見出しである。表頭文字列及び表側文字列とは表の表頭及び表側における文字列である。
【0027】
表種類とは、表が帳票における項目表に対応するのか明細表に対応するのかを示す情報である。項目表とは、項目例えば複数の文章が表として配置される表である。明細表とは、項目部と明細部を有する。項目部は帳票における項目名などの見出しに対応する部分である。明細部は各項目における具体的な内容である。明細表IDとは、表種類が明細表である表情報において、どの種類の明細表であるかを識別するIDである。
【0028】
罫線情報は、帳票画像の横罫線の位置、横罫線の画像、縦罫線の位置及び縦罫線の画像を有する。
【0029】
文字位置情報は、文字位置ID、文字位置、OCR結果文字列、関連する表情報のID、表における行番号、階層数、明細が対応する項目ID及び明細表定義IDを有する。
【0030】
文字位置IDとは、帳票画像における文字位置を識別するIDである。文字位置とは、帳票画像における文字位置の位置である。文字位置は表位置と同様の表し方がされる。OCR結果文字列とは、文字位置にある文字列のOCR結果である。
【0031】
関連する表情報のIDとは、ある文字位置IDを有する文字位置情報が含まれる表の表情報を参照するためのIDである。文字が表の外に配置されている場合には、所定の値が入力されることで、表の外に位置するということを示すことが可能である。
【0032】
表における行番号とは、文字位置情報が含まれる表における、文字位置がある行を示す番号である。階層数とは文字位置情報が含まれる表における、文字位置のインデントを示す情報である。明細が対応する項目IDとは、文字位置が含まれる表が明細表である場合に、明細が対応する項目を示すIDである。明細が対応する項目IDを、項目部と明細部それぞれで所定の値とすることで、文字位置情報が明細の文字位置情報なのか項目の文字位置情報なのかを識別できる。明細表定義IDは表情報と同様である。
【0033】
対象帳票取得部201が対象帳票の画像を取得した段階では、帳票情報はまだ不完全である。帳票処理装置102による処理を経て、対象帳票の帳票画像に対する帳票情報の内容が決定される。
【0034】
参照帳票取得部202は、帳票情報記憶部208にて、既に帳票情報が確定され、帳票情報が関連付けられた参照帳票の帳票画像を取得する。
【0035】
罫線検出部203は、対象帳票の帳票画像から、罫線を検出する。罫線は縦罫線と横罫線とを含む。
【0036】
文字位置検出部204は、対象帳票の帳票画像において、文字列が配置される位置である文字位置を検出する。
【0037】
判定部205は、対象帳票の帳票画像と参照帳票の帳票画像とに基づいて、対象帳票の読み取りに参照帳票の帳票画像に関連付けられた帳票情報を用いることが可能であるかを判定する。判定部205が行う処理には、対象帳票の帳票画像に含まれる罫線と文字位置とに基づいて、対象帳票の帳票画像に含まれる表の表頭及び表側の画像を取得する表画像取得処理が含まれる。判定部205による処理については後述する。
【0038】
関連付け部206は、判定部205が対象帳票の読み取りに参照帳票の帳票画像に関連付けられた帳票情報を用いることが可能であると判定した場合に、参照帳票の帳票画像に関連付けられた帳票情報を対象帳票の帳票画像に関連付ける。関連付け部206の処理によって、対象帳票の表情報及び文字位置情報において、文字列に関する情報以外の情報が更新される。
【0039】
帳票情報生成部207は、判定部205が対象帳票の読み取りに参照帳票の帳票画像に関連付けられた帳票情報を用いることが可能であると判定した場合に、対象帳票の帳票画像に基づいて、対象帳票の読み取りに用いる帳票情報を生成する。ここで、生成とは、帳票情報を、帳票の読み取りに用いることができるように表情報及び文字位置情報を更新することを意味する。帳票情報生成部207は、生成した帳票情報を参照帳票の帳票画像に関連付けて、帳票情報記憶部208に記憶する。
【0040】
帳票情報記憶部208は、予め帳票情報が確定した状態で関連付けられた帳票画像を参照帳票の帳票画像として記憶する。帳票情報記憶部208に記憶される帳票情報には、帳票情報生成部207によって生成された帳票情報も含まれる。帳票情報記憶部208に記憶される帳票情報には、文字列に関する情報は必ずしも含まれていなくてもよい。
【0041】
読取結果取得部209は、対象帳票の帳票情報と、対象帳票の帳票画像とに基づいて、対象帳票の読み取り結果を取得する。読取結果取得部209は、帳票情報に基づいて、OCR処理の対象範囲を生成し、生成された対象範囲における対象帳票の画像をOCR装置103に送信する。OCR装置103は当該画像に対してOCR処理を行う。OCR装置103にて読み取られた文字列は、読取結果取得部209に送信される。
【0042】
補正情報取得部210は、読取結果取得部209によって取得された帳票の読取結果を、帳票処理装置102のユーザに対して提示し、ユーザから補正情報を取得する。補正情報取得部210は、帳票情報生成部207が帳票情報を生成した場合に、ユーザから補正情報を取得する。補正情報とは、例えば、表の位置や読取範囲又は読み取られた文字列に対しての補正である。読取範囲がずれているために正しくOCRされなかった場合には、読取範囲の修正及び正しく読み取られた場合の文字列が補正情報として入力される。
【0043】
補正部211は、対象帳票の帳票画像と関連付けて帳票情報記憶部208に記憶されている帳票情報を、補正情報取得部210が取得した補正情報に基づいて補正する。換言すると補正部211は帳票情報の更新を行う。
【0044】
図4を参照して、帳票処理システム1による帳票の読み取りの概略について説明する。帳票は帳票処理装置102とOCR装置103の連携によって帳票の内容がデータ化され、読み取られる。
【0045】
ステップS401において、対象帳票取得部201は対象帳票の帳票画像を取得する。対象帳票取得部201は例えば、対象帳票が読取装置101によってPDF形式のデータとして電子化された場合、読取装置101が生成したPDF形式のデータを取得し、画像に変換することによって帳票画像を取得する。
【0046】
ステップS402において、判定部205は対象帳票の表頭及び表側の画像を取得する。
【0047】
ステップS403において、読取結果取得部209が対象帳票の表頭及び表側の画像をOCR装置103へ送信する。
【0048】
ステップS404において、OCR装置103は表頭及び表側の文字列を取得するOCR処理を行う。
【0049】
ステップS405において、読取結果取得部209はOCR装置103によって取得された表頭及び表側の文字列を取得する。
【0050】
ステップS406において、関連付け部206又は帳票情報生成部207は、対象帳票の項目部を読み取るための情報を対象帳票の帳票画像に関連付ける。
【0051】
ステップS407において、読取結果取得部209は項目部を読み取るための帳票画像をOCR装置103に送信する。ステップS408において、OCR装置103は項目部の文字列を取得するOCR処理を行う。ステップS409において、読取結果取得部209はOCR装置103によって取得された項目部の文字列を取得する。
【0052】
ステップS410において、関連付け部206又は帳票情報生成部207は、対象帳票の明細部を読み取るための情報を対象帳票の帳票画像に関連付ける。
【0053】
ステップS411において、読取結果取得部209は明細部を読み取るための帳票画像をOCR装置103に送信する。ステップS412において、OCR装置103は明細部の文字列を取得するOCR処理を行う。ステップS413において、読取結果取得部209はOCR装置103によって取得された明細部の文字列を取得する。
【0054】
ステップS414において、読取結果取得部209は、OCR装置103によって読み取られた文字列、対象帳票の帳票画像に関連付けられた帳票情報及び対象帳票の帳票画像から、最終的な読取結果を生成し、記憶する。対象帳票の読み取り結果は、帳票処理装置102の記憶部(不図示)に記憶されてもよく、帳票処理装置102に接続される外部の記憶装置(不図示)に記憶されてもよい。
【0055】
ステップS406からステップS413までの処理の順序は適切に入れ替えることが可能である。つまり、対象帳票の項目部を読み取るための情報及び対象帳票の明細部を読み取るための情報を、対象帳票の帳票画像に関連付けた後に、それぞれの情報に基づいて文字列を取得してもよい。
【0056】
図5を参照して、帳票処理システム1による帳票の読み取りにおける帳票処理装置102の処理について説明する。
【0057】
ステップS501において対象帳票取得部201は対象帳票の帳票画像を取得する。対象帳票の帳票画像が取得されると、対象帳票の帳票画像に対する帳票情報が用意される。帳票情報は、画像情報における帳票画像及び補正済み帳票画像の他は、所定の初期値を有する。
【0058】
ステップS502において罫線検出部203は対象帳票の罫線を検出する。検出された罫線の情報は罫線の位置及び罫線の画像を含む。検出された罫線の情報によって、帳票情報の罫線情報が更新される。
【0059】
ステップS503において、文字位置検出部204は対象帳票の文字位置を検出する。検出された文字位置によって、帳票情報の文字位置情報における、文字位置番号及び文字位置が更新される。
【0060】
ステップS504において、参照帳票取得部202は参照帳票の帳票画像を帳票情報記憶部208から取得する。
【0061】
ステップS505において、判定部205は、対象帳票の帳票画像と参照帳票の帳票画像とのマッチングを行い、対象帳票の読み取りに参照帳票の帳票画像に関連付けられた帳票情報を用いることが可能であるかを判定する。ステップS505における判定処理については後述する。
【0062】
ステップS505にて肯定判断された場合、ステップS506において、関連付け部206は、参照帳票に関連付けられた帳票情報を対象帳票の帳票情報に関連付ける関連付け処理を行う。関連付け処理によって、対象帳票の帳票情報が参照帳票の帳票情報によって更新される。関連付け処理については後述する。
【0063】
ステップS507において、読取結果取得部209は、対象帳票に関連付けられた帳票情報及び対象帳票の帳票画像に基づいて、対象帳票の読み取り結果を取得する。読み取り結果とは、表頭及び表側の文字列、項目の文字列及び明細の文字列である。
【0064】
ステップS506にて否定判断された場合、ステップS508において、帳票情報生成部207は対象帳票の帳票画像から帳票情報を生成する帳票情報生成処理を行う。帳票情報生成処理については後述する。
【0065】
ステップS509において、読取結果取得部209は、生成された帳票情報及び参照帳票の帳票画像に基づいて、対象帳票の読み取り結果を取得する。
【0066】
ステップS510において、補正情報取得部210は、帳票処理システム1のユーザから補正情報を取得する。ステップS511において、補正部211は対象帳票に関連付けられた帳票情報の補正を行う。
【0067】
図6を参照して、判定部205による判定処理について説明する。
【0068】
ステップS601において、判定部205は対象帳票の表頭及び表側の画像を取得する。
【0069】
ステップS602において、判定部205は参照帳票の表頭及び表側の画像を取得する。
【0070】
ステップS603において、判定部205は罫線検出部203が検出した罫線に基づいて、対象帳票において罫線で囲まれた表の数を取得する。判定部205は参照帳票に関連付けられた帳票情報における罫線情報から参照帳票において罫線で囲まれた表の数を取得する。
【0071】
ステップS604において、判定部205は、対象帳票の表の数と参照帳票の表の数が同数であるかを判定する。同数でない場合は、対象帳票と参照帳票はマッチングしないものとして処理を終了する。
【0072】
ステップS604にて肯定判断された場合、ステップS605において、判定部205は対象帳票の表の位置を対象帳票の罫線に基づいて取得する。また、参照帳票の表の位置を参照帳票の帳票情報に基づいて取得する。
【0073】
ステップS606において、判定部205は対象帳票の表の位置と参照帳票の表の位置の差異が所定の閾値を満たすかを判定する。閾値を満たさない場合は、対象帳票と参照帳票はマッチングしないものとして処理を終了する。
【0074】
ステップS606にて肯定判断された場合、ステップS607において、判定部205は対象帳票の表頭及び表側の画像の、参照帳票の帳票画像に対するテンプレートマッチングを行う。テンプレートマッチングによって、対象帳票の表頭及び表側の画像が参照帳票の帳票画像に含まれるかが判定できる。
【0075】
ステップS608において、マッチングの判定が行われ、マッチングしない場合は、対象帳票と参照帳票はマッチングしないものとして処理を終了する。マッチングする場合はステップS609において、判定部205は表の外側にある文字位置に関してのマッチングを行う。マッチングは、文字位置検出部204が検出した対象帳票の表の外側にある文字位置と、参照帳票の帳票情報に含まれる参照帳票の表の外側にある文字位置とに基づいて行われる。
【0076】
ステップS610において、マッチングの判定が行われ、マッチングしない場合は、対象帳票と参照帳票はマッチングしないものとして処理を終了する。マッチングする場合は、ステップS611において、判定部205は表の外側にある文字の画像のテンプレートマッチングを行う。判定部205は表の外側にある文字位置から、対象帳票の当該位置における画像を取得する。判定部205は、取得された画像が参照帳票の帳票画像に含まれるかを、テンプレートマッチングによって判定することができる。
【0077】
ステップS612において、マッチングの判定が行われる。ステップS612において肯定判断された場合に、ステップS613において、対象帳票が参照帳票とマッチングすると判定される。
【0078】
判定部205によって、対象帳票が参照帳票とマッチングすると判定されると、対象帳票の読み取りに参照帳票に関連付けられた帳票情報を用いることが可能であると判定される。
【0079】
図7を参照して、関連付け部206による関連付け処理について説明する。ここでは、帳票情報が項目部と明細部を有する明細表に関連するような場合について説明する。
【0080】
ステップS701において、関連付け部206は参照帳票の項目部及び明細部の文字位置を、参照帳票に関連付けられた帳票情報から取得する。項目部の文字位置を項目位置と呼ぶ。明細部の文字位置を明細位置と呼ぶ。
【0081】
ステップS702において、関連付け部206は参照帳票の項目位置と対象帳票の文字位置とに重なりがあるかを判定する。関連付け部206が、重なりがないと判定した場合、ステップS704へ進む。
【0082】
ステップS702にて肯定判断された場合、ステップS703において、関連付け部206は重なる領域を、対象帳票における項目部としてOCR処理する領域とする。
【0083】
ステップS704において、関連付け部206は参照帳票の明細位置と対象帳票の文字位置とに重なりがあるかを判定する。関連付け部206が、重なりがないと判定した場合、ステップS706へ進む。
【0084】
ステップS704にて肯定判断された場合、ステップS705において、関連付け部206は、重なる領域を、対象帳票における明細部としてOCR処理する領域とする。
【0085】
ステップS706において、関連付け部206は参照帳票の明細部全体の領域である明細領域に、参照帳票にはなく対象帳票にはある新たな文字があるかを判定する。新たな文字がない場合は処理を終了する。
【0086】
ステップS706において肯定判断された場合、ステップS707において、関連付け部206は、明細領域における新たな文字列が対応する見出しを特定し、当該文字列の領域をOCRする領域とする。
【0087】
関連付け処理によって、判定部205によって参照帳票とマッチングすると判定された対象帳票に対して、帳票の読み取りに必要な帳票情報が割り当てられる。OCRする領域とされなかった領域は文字列が読み取られない。
【0088】
図8を参照して、帳票情報生成部207による帳票情報生成処理について説明する。
【0089】
ステップS801において、帳票情報生成部207は対象帳票の表を横罫線の情報から検出する。ステップS802において、帳票情報生成部207は対象帳票の表を対象帳票の文字位置によって検出する。ステップS801及びステップS802における処理によって、帳票情報の表情報が生成される。生成された各表情報IDを有する表情報において、表位置が更新される。
【0090】
ステップS803において、帳票情報生成部207は、表の方向を判定する判定処理を行う。表の方向判定処理は例えば以下のように行われる。
【0091】
帳票情報生成部207は、帳票情報記憶部208が取得した、表頭及び表側の画像のOCR結果を取得する。取得されたOCR結果によって、表情報の表頭文字列及び表側文字列が更新される。帳票情報生成部207は、帳票情報生成部207に記憶される表の方向判定モデルに対して表頭及び表側の文字列を与え、表の方向を判定する方向判定処理を行う。
【0092】
表の方向判定処理は、表の罫線の長さや文字位置の形状などの文字列を含まない情報によっても判定されるようにしてもよい。
【0093】
表の方向判定処理によって、表ヘッダが表頭にあるのか表側にあるのかが判定される。判定された方向によって、表頭又は表側の位置に基づいて表情報の表ヘッダ位置が更新される。
【0094】
ステップS804において、帳票情報生成部207は、方向判定処理によって得られた表ヘッダ位置から、表頭又は表側の文字列を、帳票情報生成部207に記憶される明細及び項目判定モデルに与え、表が明細表であるか項目表であるかを判定する。判定された結果により表情報の表種類が更新される。
【0095】
ステップS805において、帳票情報生成部207はステップS805における判定結果が明細表であるかを判断する。
【0096】
ステップS805にて肯定判断された場合、ステップS806において、帳票情報生成部207は対象帳票の文字位置情報における明細が対応する項目IDに基づいて項目部であることが示される文字位置を取得する。
【0097】
ステップS807において、取得された文字位置における文字をOCR処理した結果をOCR装置103から取得する。取得された情報によって、文字位置情報のOCR結果文字列が更新される。
【0098】
ステップS808において、帳票情報生成部207は対象帳票の帳票画像における明細表の構造を検出する。明細表の構造とは、文字位置情報における、関連する表情報のID、表における行番号、階層数及び明細が対応する項目IDの情報である。検出された情報によって明細表の構造に関する帳票情報が更新される。構造の検出によって明細部の文字位置が設定される。
【0099】
また、ステップS808における処理によって検出された明細表の構造によって新たに明細表定義IDが生成され、表情報及び文字位置情報において更新される。
【0100】
ステップS809において、帳票情報生成部207は明細の文字をOCR処理した結果を、OCR装置103から取得する。取得された情報によって、文字位置情報のOCR結果文字列が更新される。
【0101】
ステップS806にて否定判断された場合、帳票情報生成部207はステップS810において対象帳票の表種類が項目部である表情報に関連する文字位置を取得する。ステップS811において、帳票情報生成部207は取得された文字位置における文字をOCR処理した結果をOCR装置103から取得する。取得された情報によって、文字位置情報のOCR結果文字列が更新される。
【0102】
更新されたOCR結果文字列に基づいて、
図5のステップS509において、読取結果取得部209が最終的な読取結果を取得することができ、帳票の読み取りが終了する。
【0103】
帳票情報生成処理では、読み取る位置の取得とOCR結果の取得とを行っているが、必ずしもOCR結果の取得は行われなくともよい。その場合、帳票情報生成処理では、ステップS806、S808、S810における処理を行った後、読取結果取得部209がOCR結果を取得し、最終的な読取結果を取得するようにしてもよい。
【0104】
以上本実施形態について説明してきた。本実施形態における帳票処理装置102は、対象帳票の帳票画像に含まれる罫線を検出する罫線検出処理と、対象帳票の帳票画像に含まれる文字位置を検出する文字位置検出処理と、を実行し、帳票情報生成処理は、対象帳票の帳票画像に含まれる罫線と文字位置とに基づいて、対象帳票の読み取りに用いる帳票情報を生成する。これにより帳票画像における表の検出を適切に行うことができるようになる。
【0105】
本実施形態における帳票処理装置102では、判定処理は、対象帳票の帳票画像に含まれる罫線と文字位置とに基づいて、対象帳票の帳票画像に含まれる表の表頭及び表側の画像を取得する表画像取得処理を、さらに含む。帳票情報生成処理は、表頭及び表側の画像に基づいて、表の方向を判定する方向判定処理と、表頭及び表側の画像と、方向とに基づいて、表における項目を示す文字位置である項目位置と表における明細を示す文字位置である明細位置とを検出する検出処理と、をさらに含む。帳票情報生成処理は、項目位置及び明細位置に基づいて、対象帳票の読み取りに用いる帳票情報を生成する。
【0106】
これにより、表頭及び表側の画像を用いて判定が可能となる。よって、帳票情報記憶部208に記憶される帳票情報は表頭及び表側の画像を保持していればよいので、帳票情報記憶部208の容量を多く使用することがなくなる。また、明細位置と項目位置を区別するようにして帳票情報を生成するので、帳票の読み取りが適切に行われる。
【0107】
本実施形態における帳票処理装置102では、第2の帳票画像に関連付けられた帳票情報を用いる場合に、帳票情報関連付け処理によって関連付けられた帳票情報と、第1の帳票画像とに基づいて、対象帳票の読み取り結果を取得する、帳票読取処理と、対象帳票の読み取りに用いる帳票情報を生成した場合に、帳票情報生成処理によって関連付けられた帳票情報と、第1の帳票画像とに基づいて、対象帳票の読み取り結果を取得する、帳票読取処理とが実行される。
【0108】
これにより、参照帳票の帳票情報を流用可能な場合は、参照帳票の帳票情報に基づく、対象帳票の読み取りが適切に行われる。参照帳票の帳票情報を流用可能でない場合は、帳票情報生成部207が生成した情報に基づいて対象帳票の読み取りを行うことで、参照帳票の帳票情報を用いることができない場合でも対象帳票の読み取りを行うことができる。
【0109】
本実施形態における帳票処理装置102では、参照帳票の帳票画像に含まれる文字位置を取得する文字位置取得処理、参照帳票の帳票情報を用いることが可能な場合の帳票読取処理は、対象帳票での文字位置と参照帳票での文字位置との重なりを検出する重なり検出処理、をさらに含み、重なりがある場合に、対象帳票での文字位置にある文字列に対する読み取り結果を取得し、重なりがない場合に、第1の文字位置にある文字列に対する読み取り結果を取得しない。
【0110】
これにより、参照帳票にて読み取るべきとされた部分以外にある、対象帳票におけるノイズが除去され、対象帳票を適切に読み取ることが可能となる。
【0111】
本実施形態における帳票処理装置102は、帳票情報を生成した場合の帳票読取処理によって取得された対象帳票の読み取り結果に基づいて、生成された対象帳票の読み取りに用いる帳票情報を補正する補正情報を取得する、補正情報取得処理を行う。帳票処理装置102は、対象帳票の帳票画像と関連付けて帳票情報記憶部208に記憶されている帳票情報を補正情報に基づいて補正する補正処理と、を実行する。
【0112】
これにより、帳票処理システム1のユーザによって読み取り結果に対する補正を行うことが可能となるため、帳票情報記憶部208に記憶される帳票情報の正確さが向上し、より適切に帳票の読み取りを行うことが可能となる。
【0113】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその条件等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【0114】
1…帳票処理システム、101…読取装置、102…帳票処理装置、103…OCR装置、201…対象帳票取得部、202…参照帳票取得部、203…罫線検出部、204…文字位置検出部、205…判定部、206…関連付け部、207…帳票情報生成部、208…帳票情報記憶部、209…読取結果取得部、210…補正情報取得部、211…補正部