(第一の実施形態)
以下に図面を参照して、実施形態について説明する。図1は、帳票認識システムのシステム構成の一例を示す図である。
本実施形態の帳票認識システム100は、サーバ装置200、画像形成装置300、端末装置400を有する。本実施形態の帳票認識システム100において、サーバ装置200と、画像形成装置300と、端末装置400とは、ネットワークを介して接続される。
また、本実施形態の端末装置400は、例えば、ネットワークを介して基幹システム500と接続される。基幹システム500とは、例えば、本実施形態の帳票認識システム100において帳票を認識した結果を用いて、特定の処理を行うシステムである。具体的には、例えば、基幹システム500は、会計システムや、見積もり作成システム等であっても良い。
本実施形態の帳票認識システム100において、サーバ装置200は、画像形成装置300のスキャナ機能によって読み取られた帳票の画像を示す画像データから、帳票に含まれる項目と項目の値とを抽出し、項目と項目の値とを対応付けたテキストデータとする。
以下の説明では、画像形成装置300のスキャナ機能によって読み取られた帳票の画像を帳票画像と呼び、帳票画像を示す画像データを帳票画像データと呼ぶ。
また、以下の説明では、帳票画像に含まれる項目と、この項目の値とを抽出し、項目と項目の値とをテキストデータに変換して対応付けることを、帳票認識と呼ぶ。
本実施形態のサーバ装置200は、記憶部210と、帳票認識処理部220と、定義登録部290と、を有する。記憶部210には、画像データベース230、種別判定データベース240、帳票定義データベース250、認識結果データベース260が設けられている。
画像データベース230は、帳票画像データが格納される。種別判定データベース240は、帳票の種類を判別する際に参照される情報が格納される。帳票定義データベース250は、帳票認識処理部220による帳票認識を行う際に参照される帳票定義情報が格納される。認識結果データベース260は、帳票認識処理部220による帳票認識の結果を示す情報が格納される。
本実施形態の帳票認識処理部220は、画像データベース230に格納された帳票画像データを取得し、種別判定データベース240を参照して帳票の種別の判定と、参照すべき帳票定義情報の特定を行う。そして、帳票認識処理部220は、帳票定義データベース250において、特定された帳票定義情報を用いて帳票認識を行い、その結果を認識結果データベース260へ格納する。帳票定義情報とは、帳票に含まれる項目名の記載位置を示す情報と、項目名と項目の値との位置関係を示す情報とを含む。
本実施形態の定義登録部290は、帳票定義データベース250に格納される帳票定義情報のうち、一部の帳票定義情報を生成するための入力画面を端末装置400に表示させ、入力された値に基づき、帳票定義情報を生成する。そして、定義登録部290は、生成した帳票定義情報を、帳票定義データベース250に格納(登録)する。ここで、本実施形態の定義登録部290は、帳票定義データベース250に予め格納された帳票定義情報に基づき帳票画像データの認識を行った結果と、新たな帳票定義情報を生成するための入力欄とを共に入力画面に表示させる。
本実施形態において、帳票定義データベース250に予め格納された帳票定義情報は、汎用定義情報と特定定義情報とを含む。
汎用定義情報は、一般的な帳票のレイアウトを定義した帳票定義情報である。また、特定定義情報は、特定の事業者等によって発行される特定の帳票を定義する帳票定義情報である。特定の帳票とは、具体的には、例えば、一般的に使用されている宅配業者の伝票等である。
また、本実施形態において、定義登録部290により登録される帳票定義情報を、個社定義情報と呼ぶ。つまり、個社定義情報は、帳票定義データベース250に格納される帳票定義情報のうち、一部の帳票定義情報である。
個社定義情報は、帳票認識システム100を利用する利用者固有の帳票のレイアウトを定義した帳票定義情報である。
本実施形態では、このように、予め登録された汎用定義情報に基づく認識結果と、個社定義情報の入力欄とを共に表示させることで、帳票認識システム100の利用者による個社定義情報の入力を支援することができ、個社定義情報を容易に生成させることができる。
本実施形態の帳票認識システム100において、画像形成装置300は、スキャナ機能を有する複合機である。画像形成装置300は、コピー機能、FAX機能、スキャナ機能等を実現するためのアプリケーションが搭載されており、各機能と対応するアプリケーションを選択することで、これらの機能が実現される。
本実施形態の端末装置400は、帳票認識システム100を利用する利用者によって使用される。また、端末装置400には、サーバ装置200による帳票認識の結果が表示されても良い。
尚、本実施形態における利用者とは、例えば、企業等である。より具体的には、例えば、利用者とは、帳票認識システム100が提供するサービスを利用するための契約を締結している事業所や企業、団体等である。
尚、図1の例では、サーバ装置200は、記憶部210内に4つのデータベースを有する構成としたが、これに限定されない。各データベースは、一部がサーバ装置200の外部装置に設けられていても良いし、各データベース全てが外部装置に設けられていても良い。
また、図1の例では、サーバ装置200が帳票認識処理部220を実現するものとしたが、これに限定されない。帳票認識処理部220は、複数の情報処理装置によって実現されても良い。
また、図1の例では、帳票認識システム100に含まれる画像形成装置300と端末装置400とは、それぞれ1台としているが、帳票認識システム100に含まれる画像形成装置300と端末装置400の台数は、任意の数であって良い。
次に、図2を参照して、本実施形態のサーバ装置200のハードウェア構成について説明する。図2は、第一の実施形態のサーバ装置のハードウェア構成の一例を示す図である。
本実施形態のサーバ装置200は、それぞれバスBで相互に接続されている入力装置21、出力装置22、ドライブ装置23、補助記憶装置24、メモリ装置25、演算処理装置26及びインターフェース装置27を含む情報処理装置である。
入力装置21は、各種の情報の入力を行うための装置であり、例えばキーボードやポインティングデバイス等であっても良い。出力装置22は、各種の情報の出力を行うためものであり、例えばディスプレイ等であっても良い。インターフェース装置27は、LANカード等を含み、ネットワークに接続する為に用いられる。
情報処理プログラムは、サーバ装置200を制御する各種プログラムの少なくとも一部である。情報処理プログラムは例えば記憶媒体28の配布やネットワークからのダウンロード等によって提供される。情報処理プログラムを記録した記憶媒体28は、CD-ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記憶媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記憶媒体を用いることができる。
また、情報処理プログラムは、情報処理プログラムを記録した記憶媒体28がドライブ装置23にセットされると、記憶媒体28からドライブ装置23を介して補助記憶装置24にインストールされる。ネットワークからダウンロードされた情報処理プログラムは、インターフェース装置27を介して補助記憶装置24にインストールされる。
補助記憶装置24は、インストールされた情報処理プログラムを格納すると共に、必要なファイル、データ等を格納する。メモリ装置25は、サーバ装置200の起動時に補助記憶装置24から情報処理プログラムを読み出して格納する。そして、演算処理装置26はメモリ装置25に格納された情報処理プログラムに従って、後述するような各種処理を実現している。
本実施形態の端末装置400のハードウェア構成は、サーバ装置200と同様であるから、説明を省略する。尚、端末装置400は、例えば、タブレット型の端末装置や、スマートフォン等であっても良く、入力装置21と出力装置22との代わりに、タッチパネル等により実現される表示操作装置を有していても良い。
次に、本実施形態のサーバ装置200の有する種別判定データベース240と帳票定義データベース250について説明する。
図3は、第一の実施形態の種別判定データベースの一例を示す図である。本実施形態の種別判定データベース240は、情報の項目として、定義ID、定義種別、文書種別、識別文字列を有する。種別判定データベース240において、項目「定義ID」は、その他の項目と対応付けられており、項目「定義ID」の値と、その他の項目の値とを含む情報を、種別判定情報と呼ぶ。また、「R社」及び「請求」という両方の文字列を含む帳票画像は、項目「文書種別」が示す帳票の種類が「R社用請求書」となる。
項目「定義ID」の値は、帳票定義情報を特定するための識別子を示す。
項目「定義種別」の値は、帳票定義情報の種類を示す。本実施形態では、帳票定義情報の種類として、汎用定義情報と個社定義情報の他に、特定定義情報を含む。特定定義情報とは、特定の事業者等によって発行される特定の帳票を定義する帳票定義情報である。特定の帳票とは、具体的には、例えば、一般的に使用されている宅配業者の伝票等である。
項目「文書種別」の値は、帳票の種類を示す。帳票の種類とは、具体的には、例えば、請求書、見積書、注文書等である。項目「識別文字列」の値は、帳票の種類を特定するための文字列を示す。具体的には、例えば、「請求書」又は「請求」という文字列を含む帳票画像は、項目「文書種別」が示す帳票の種類が「請求書」となる。
図3の例では、例えば、定義ID「H01」の帳票定義情報の種類は汎用定義情報であり、定義ID「H01」の汎用定義情報は、「請求書」のレイアウトを定義した情報であり、帳票画像データから「請求」又は「請求書」という文字列が抽出された場合に、参照される。
次に、図4乃至図7を参照して、本実施形態の帳票定義データベース250について説明する。図4は、第一の実施形態の帳票定義データベースに格納される帳票定義情報の種類を示す図である。
本実施形態の帳票定義データベース250には、汎用定義情報251と、特定定義情報252と、が格納されている。また、本実施形態の帳票定義データベース250には、定義登録部290により生成された個社定義情報253が格納される。
尚、本実施形態では、帳票定義データベース250に格納される3種類の帳票定義情報のそれぞれに対し、優先度を付与し、帳票画像データの認識を行う際に、優先度の高い帳票定義情報に基づき抽出された項目及び項目の値を、認識結果として採用しても良い。
具体的には、例えば、汎用定義情報251は、帳票の中でも、複数の利用者により利用される汎用性の高いレイアウトの帳票の帳票定義情報であるため、汎用定義情報251の優先度は最も低くする。
また、個社定義情報253は、帳票の中でも、利用者が独自に設計したレイアウトの帳票の帳票定義情報であり、最も尊重されるべき定義であるため、優先を最も高くする。
また特定定義情報252は、帳票の中でも、一般的に利用される特定の帳票のレイアウトを示す帳票定義情報であるため、優先度は、3つの帳票定義情報のうちの中間となる。
次に、帳票定義データベース250に格納される各帳票定義情報について説明する。
図5は、第一の実施形態の汎用定義情報の一例を示す図である。汎用定義情報251は、定義ID毎に生成されるものであり、情報の項目として、項目ID、項目名、方向、距離等を含む。つまり、本実施形態の汎用定義情報251は、項目「定義ID」と、その他の項目とが対応付けられており、項目「定義ID」の値と、その他の項目の値とを含む。
項目「項目ID」の値は、帳票に含まれる項目を特定するための識別子である。項目「項目名」の値は、項目の名称を示す。
項目「方向」、「距離」等は、文字列を抽出する範囲を示す。例えば、項目「方向」の値が「RD」であり、項目「距離」の値が「20mm」であった場合、項目名となる文字列と外接する矩形の右下の座標から下に向かって20mm以内の範囲から、文字列を抽出することを示す。
つまり、本実施形態の項目「方向」、「距離」等は、文字列を抽出する範囲を示す条件であり、この条件は、項目名と対応付けられている。尚、図5の例では、文字列を抽出する範囲を示す条件として、項目「方向」、「距離」を挙げたが、条件には、他の項目が含まれていても良い。
したがって、例えば、項目ID「2」の項目名「合計」という文字列と外接する矩形の右下の座標から下に向かって20mm以内の範囲から抽出された文字列は、項目名「合計」と対応する項目の値と認識される。
尚、汎用定義情報251では、帳票に含まれる可能性のある項目に関する情報が含まれるものとした。
図6は、第一の実施形態の特定定義情報の一例を示す図である。本実施形態の特定定義情報252は、特定の帳票毎に登録されるものであり、情報の項目として、定義ID、項目名、方向、距離等を含む。図6の本実施形態では、定義ID、項目名、方向、距離等は、汎用定義情報251と同様であるから説明を省略する。
尚、本実施形態の特定定義情報252は、特定の事業者毎に設けられていても良い。この場合には、特定定義情報252には、情報の項目として、事業者IDが含まれていても良い。
図7は、第一の実施形態の個社定義情報の一例を示す図である。本実施形態の個社定義情報253は、利用者毎に登録されるものであり、情報の項目として、利用者ID、定義ID、項目名、方向、距離等を含む。
項目「利用者ID」の値は、利用者を特定するための識別子である。尚、本実施形態では、定義ID、項目名、方向、距離等は、汎用定義情報251と同様であるから説明を省略する。
尚、本実施形態では、定義種別が個社定義情報となる帳票定義情報の定義IDは、利用者IDを含むようにしても良い。
また、個社定義情報253では、利用者によって、項目名と、項目の値が記載されている範囲を示す条件とが登録された項目に関する情報が格納される。したがって、個社定義情報253に含まれる項目IDは、汎用定義情報251に含まれる項目IDの一部となる場合がある。
図7の例では、利用者ID「A」によって登録された個社定義情報253を示しており、この個社定義情報253は、定義IDが「A01」であり、文書種別が「R社用請求書」となる。
次に、図8を参照して、本実施形態のサーバ装置200の機能について説明する。図8は、第一の実施形態のサーバ装置の機能を説明する図である。
本実施形態のサーバ装置200では、例えば、メモリ装置25や補助記憶装置24等に格納された情報処理プログラムを演算処理装置26が読み出して実行することで、後述する各部の機能が実現される。
本実施形態のサーバ装置200は、帳票認識処理部220、定義登録部290を有する。帳票認識処理部220は、入力受付部221、認証処理部222、帳票認識部270を有する。
入力受付部221は、サーバ装置200に対する各種の入力を受け付ける。具体的には、入力受付部221は、帳票認識システム100にログインするための認証情報の入力を受け付ける。認証情報とは、例えば、利用者IDとパスワード等である。また、入力受付部221は、例えば、画像形成装置300から送信された帳票画像データの入力を受け付ける。
認証処理部222は、入力受付部221が入力を受け付けた認証情報に基づき、認証を行う。尚、認証処理部222は、例えば、サーバ装置200の外部に設けられた認証サーバに対して、入力された認証情報を送信し、認証サーバによる認証の結果を取得しても良い。認証処理部222は、利用者が認証されると、入力受付部221が受け付けた帳票画像データを帳票認識部270に渡しても良い。
本実施形態の帳票認識部270は、画像データ格納部271、ジョブリスト生成部272、画像データ取得部273、前処理部274、文字認識部275、定義特定部276、項目抽出部277、表示画面生成部278、出力部279を有する。
画像データ格納部271は、画像形成装置300から帳票画像データを受信すると、画像データベース230に格納する。
ジョブリスト生成部272は、入力受付部221が画像形成装置300から帳票画像データの入力を受け付けて、ジョブリストにジョブを登録し、ジョブリストを管理する。ジョブリストの詳細は後述する。
画像データ取得部273は、画像データベース230に格納された帳票画像データを取得する。前処理部274は、画像データ取得部273が取得した帳票画像データに対して、帳票認識を行うための前処理を行う。
文字認識部275は、帳票画像データから、文字列と、文字列が配置された位置を示す情報とを抽出し、認識結果情報として保持する。認識結果情報の詳細は後述する。
定義特定部276は、種別判定データベース240を参照し、認識結果情報に含まれる文字列と対応する定義IDを特定する。言い換えれば、定義特定部276は、帳票画像データから抽出された文字列に基づき、帳票認識の際に参照する帳票定義情報を特定し、特定された帳票定義情報を取得する取得部である。
項目抽出部277は、定義特定部276により特定された帳票定義情報と、認識結果情報とに基づき、帳票画像データに含まれる項目と、項目の値とを抽出して対応付けを行い、項目の項目IDと、項目の値とを対応付けた認識結果データを生成する。尚、XML形式のファイル(eXtensible Markup Language)を認識結果データとして生成しても良い。また、項目抽出部277は、帳票における項目の記載位置と、項目と項目の値との位置関係を抽出する。
表示画面生成部278は、認識結果データベース260に格納された認識結果データを用いて、認識結果確認画面を生成する。尚、認識結果確認画面に表示する項目名は、予め項目IDと対応付けて登録しておき、認識結果確認画面を生成するときに、認識結果データに含まれる項目IDに対応する項目名を特定して認識結果確認画面に表示させると良い。
出力部279は、表示画面生成部278が生成した認識結果確認画面を出力する。言い換えれば、出力部279は、表示画面生成部278が生成した認識結果確認画面を端末装置400のウェブブラウザ上に表示させる。
本実施形態の定義登録部290は、表示制御部291、定義生成部292、定義更新部293を有する。
表示制御部291は、個社定義情報を生成するための画面を端末装置400に表示させる。具体的には、表示制御部291は、画面を表示させるためのXML形式のファイルを生成し、端末装置400のウェブブラウザ上に入力画面を表示させる。
尚、本実施形態では、表示制御部291は、個社定義情報を生成するための画面を端末装置400に表示させるものとしたが、これに限定されない。表示制御部291が画面を表示させる装置は、サーバ装置200であっても良いし、端末装置400以外の装置あっても良く、表示機能を有する表示装置であれば良い。
定義生成部292は、入力画面に対して端末装置400から入力された情報に基づき、個社定義情報を生成する。具体的には、定義生成部292は、新たに生成される個社定義情報の定義IDを含む種別判定情報を生成し、種別判定データベース240へ格納する。また、定義生成部292は、入力された値に基づき、個社定義情報を生成して帳票定義データベース250へ格納する。
定義更新部293は、既に帳票定義データベース250に登録された個社定義情報に対する修正を反映させて、個社定義情報を更新する。
以下に、図9を参照して、本実施形態の帳票認識システム100の動作について説明する。図9は、第一の実施形態の帳票認識システムの動作を説明するシーケンス図である。
帳票認識システム100において、画像形成装置300は、利用者から帳票認識を行うためのアプリケーションの起動要求を受け付けると(ステップS901)、このアプリケーションを起動させる(ステップS902)。
続いて、画像形成装置300は、利用者から認証情報の入力を受け付けると(ステップS903)、この認証情報をサーバ装置200へ送信し、認証要求を行う(ステップS904)。
サーバ装置200は、認証要求を受けて、認証処理部222により認証を行い、その結果を画像形成装置300へ通知する(ステップS905)。尚、ここでは、利用者が認証された場合の動作を示している。
続いて、画像形成装置300は、帳票のスキャン指示を受け付け(ステップS906)、帳票のスキャンを行い、帳票画像データを取得する(ステップS907)。続いて、画像形成装置300は、帳票画像データをサーバ装置200へ送信する(ステップS908)。
サーバ装置200は、入力受付部221が帳票画像データの入力を受け付けると、認証処理部222がこの帳票画像データを帳票認識部270へ渡す(ステップS909)。
サーバ装置200の帳票認識部270は、帳票画像データを受け取ると、ジョブリスト生成部272により、ジョブリストにジョブを登録する(ステップS910)。続いて、帳票認識部270は、画像データ格納部271により、帳票画像データを画像データベース230へ格納する(ステップS911)。
続いて、帳票認識部270は、画像データ取得部273により、画像データベース230から認識する対象となる帳票画像データを取得し(ステップS912)、帳票画像を認識する処理を実行し、項目抽出部277により、認識結果データを生成する(ステップS913)。
続いて、帳票認識部270は、項目抽出部277が生成した認識結果データを認識結果データベース260に格納する(ステップS914)。
帳票認識システム100において、端末装置400は、利用者からのブラウザの表示指示の入力を受け付けると(ステップS915)、サーバ装置200に対して認識結果データを表示させるブラウザの表示要求を行う(ステップS916)。
また、端末装置400は、利用者から認証情報の入力を受け付けて(ステップS917)、この認証情報をサーバ装置200へ送信する(ステップS918)。
サーバ装置200は、認証処理部222により、利用者の認証を行い(ステップS919)、その結果を端末装置400へ通知する(ステップS920)。尚、ここでは、利用者が認証された場合の処理を示す。
続いて、端末装置400は、利用者から、帳票画像の認識結果の閲覧指示の入力を受け付けると(ステップS921)、サーバ装置200に対して閲覧要求を行う(ステップS922)。
サーバ装置200は、閲覧要求を受けて、認識結果データベース260に格納されている認識結果データを取得し(ステップS923)、認識結果確認画面を生成して端末装置400のブラウザ上に表示させ(ステップS924)、利用者に、表示された認識結果確認画面で認識結果を確認させる。
続いて、端末装置400は、利用者から、個社定義情報の登録指示の入力を受け付けると(ステップS925)、個社定義情報の登録要求をサーバ装置200へ送信する(ステップS926)。
サーバ装置200は、この登録要求を受け付けると、定義登録部290の表示制御部291により、端末装置400に個社定義情報の登録画面を表示させる(ステップS927)。
続いて、端末装置400は、個社定義情報の入力を受け付けると(ステップS928)、入力された情報をサーバ装置200へ送信する(ステップS929)。サーバ装置200は、定義生成部292により、端末装置400から送信された情報に基づき、個社定義情報を生成し(ステップS930)、帳票定義データベース250に格納して(ステップS931)、処理を終了する。尚、定義登録部290による処理の詳細は後述する。
ここで、図10を参照して、本実施形態の帳票認識システム100の動作において生成される情報について説明する。帳票認識システム100の動作において生成される情報とは、具体的には、ジョブリストと、認識結果データである。
図10は、第一の実施形態の帳票認識システムの動作によって生成される情報を説明する図である。図10(A)は、ジョブリスト生成部272により生成されるジョブリストの一例を示す図である。
本実施形態のサーバ装置200は、画像形成装置300から帳票画像データが入力されると、ジョブリスト生成部272により、帳票画像データとジョブIDとを対応付けたジョブリストとして保持する。
本実施形態のジョブリスト101は、情報の項目として、ジョブID、利用者ID、帳票画像ファイルパス、認識結果ファイルパス、ステータス、定義IDを有する。
項目「ジョブID」の値は、ジョブを特定する識別子である。言い換えれば、項目「ジョブID」の値は、画像形成装置300から受信した帳票画像データを特定するための識別子である。
項目「利用者ID」の値は、帳票認識システム100にログインした利用者を特定するための識別子である。
項目「画像ファイルパス」の値は、帳票画像データが格納されている場所を示す情報である。項目「認識結果ファイルパス」の値は、帳票画像を認識した結果の認識結果データが格納されている場所を示す情報である。
項目「ステータス」の値は、帳票画像の認識の進捗を示す。項目「定義ID」の値は、項目「画像ファイルパス」の値が示す場所に格納された帳票画像データを認識する際に参照される帳票定義情報の定義IDを示す。
本実施形態のサーバ装置200は、画像形成装置300から帳票画像データを受信すると、ジョブリスト生成部272により、ジョブIDを付与し、認証情報として取得した利用者IDを対応付けて、ジョブリスト101にレコードを追加する。そして、ジョブリスト生成部272は、帳票画像データが画像データベース230に格納されると、この格納先を示す情報を項目「画像ファイルパス」の値として、追加する。
さらに、ジョブリスト生成部272は、帳票画像の認識において、参照する帳票定義情報が特定されると、その定義IDを項目「定義ID」の値として追加する。そして、ジョブリスト生成部272は、が完了して、認識結果データが認識結果データベース260に格納されると、この格納先を示す情報を項目「認識結果ファイルパス」の値として追加し、項目「ステータス」の値を完了とする。
図10(B)は、項目抽出部277により生成される認識結果データの一例を示す。図10(B)に示す認識結果データ102では、帳票画像データに含まれる項目と、項目の値とを抽出して対応付けを行い、項目の項目IDと、項目の値とを対応付けた結果が、XML形式で記述されている。
本実施形態では、この認識結果データ102が生成されて認識結果データベース260に格納されると、この格納先が、ジョブリスト101の項目「認識結果ファイルパス」の値とされる。
次に、図11を参照して、本実施形態の定義登録部290の処理について説明する。図11は、第一の実施形態の定義登録部の処理を説明するフローチャートである。図11では、図9のステップS924からステップS931までの処理の詳細を示している。
本実施形態のサーバ装置200は、端末装置400に、帳票認識部270による帳票の認識結果の確認画面を表示させる(ステップS1101)。
続いて、サーバ装置200は、端末装置400から、認識結果の登録要求を受け付けたか否かを判定する(ステップS1102)。具体的には、サーバ装置200は、認識結果データベース260に対する、確認画面に表示された認識結果データの格納が指示されたか否かを判定している。
ステップS1102において、認識結果の登録要求を受け付けていない場合、サーバ装置200は、後述するステップS1106へ進む。
ステップS1102において、認識結果の登録要求を受け付けた場合、サーバ装置200は、確認画面上で、認識結果データが修正されたか否かを判定する(ステップS1103)。ステップS1103において、認識結果データが修正されていない場合、サーバ装置200は、処理を終了する。
ステップS1103において、認識結果データが修正されていた場合、定義登録部290は、定義生成部292により、帳票画像データの認識において、個社定義情報が用いられたか否かを判定する(ステップS1104)。具体的には、定義生成部292は、ジョブリスト生成部272によって生成されたジョブリスト101を参照し、認識結果データのファイルパスと対応付けられた定義IDを取得することで、帳票画像データの認識に用いられた帳票定義情報を判定する。
ステップS1104において、個社定義情報が用いられていない場合、定義登録部290は、後述するステップS1107へ進む。
ステップS1104において、個社定義情報が用いられていた場合、定義更新部293は、修正内容を示す付加情報を生成して、帳票定義データベース250に格納されたこの個社定義情報に対応付けて(ステップS1105)、処理を終了する。
ステップS1102において、認識結果データの登録要求を受け付けない場合、サーバ装置200は、端末装置400から、帳票定義(個社定義情報)の登録要求を受け付けたか否かを判定する(ステップS1106)。
ステップS1106において、帳票定義の登録要求を受け付けていない場合、サーバ装置200は、ステップS1101へ戻る。
ステップS1106において、帳票定義の登録要求を受け付けた場合、定義登録部290は、表示制御部291により、個社定義情報を入力させる入力画面を端末装置400に表示させる(ステップS1107)。
続いて、サーバ装置200は、端末装置400から、個社定義情報の入力を受け付ける(ステップS1108)。続いて、定義生成部292は、入力された情報に基づき個社定義情報を生成し、帳票定義データベース250に格納して(ステップS1109)、処理を終了する。
以下に、本実施形態に認識結果の確認画面から、個社定義情報の入力が行われるまでの端末装置400における画面の遷移について説明する。
図12Aは、第一の実施形態の表示画面生成部が生成した認識結果の確認画面の一例を示す図である。図12Aに示す画面120は、帳票を認識した結果として生成された認識結果を利用者に確認させるための確認画面である。
画面120には、画像形成装置300が読み取った帳票画像121と、帳票認識部270によって抽出された項目と項目の値とを対応付けた情報122とが表示されている。また、画面120には、登録ボタン123と、個社定義情報の登録指示ボタン124とが表示されている。利用者は、帳票画像121を参照し、表示されている項目と項目の値とをチェックし、必要に応じて項目の値を修正する。そして、登録ボタン123が選択されると、修正後の項目の値が認識結果データに登録される。
本実施形態では、登録ボタン123が選択されると、個社定義情報を登録するときのキーとなる個社定義情報の識別文字列が、固定される。具体的には、例えば、図12の例では、登録ボタン123が選択されると、情報122の項目「請求元」が固定的に識別文字列に設定される。
また、本実施形態では、登録ボタン123が選択された場合に、個社定義情報を登録するときのキーとなる個社定義情報の識別文字列を設定するためのダイアログを表示し、利用者に設定させても良い。
具体的には、例えば、登録ボタン123が選択された場合に、項目「請求元」の他に、「請求元の電話番号」や「請求元の口座番号」等を識別文字列の候補としてダイアログに表示させ、利用者によって選択された候補を識別文字列に設定しても良い。また、本実施形態では、例えば、項目「請求元」+「請求元の電話番号」のように、複数の識別文字列が設定されても良い。
さらに、本実施形態では、識別文字列の候補において、一部の文字列を固定にし、利用者に、固定した文字列を含む候補から識別文字列を設定させても良い。具体的には、例えば、識別文字列の候補である項目「請求元」について、一部の文字列である「請求」を固定にし、文字列「請求」を含む識別文字列の候補である「請求元」や「請求元の電話番号」等から、利用者に識別文字列を選択させても良い。
本実施形態では、例えば、この登録ボタン123が選択されると、帳票画像121を示す画像データと、情報122とが基幹システム500等に格納されても良い。また、利用者は、認識結果の確認画面を介して、登録した認識結果データをダウンロードして、基幹システム500の操作画面を介して、基幹システムに登録してもよい。
また、画面120では、帳票画像121を認識する際に参照された帳票定義情報を示す情報125が表示されていても良い。本実施形態では、この情報125を表示させることで、帳票画像121が、どの種類の帳票定義情報を用いて認識されたかを、利用者に通知できる。
図12Bは、第一の実施形態の表示画面生成部が生成した認識結果の確認画面の別の例を示す図である。図12Bに示す画面120Aでは、画面120に表示されていた帳票画像121、情報122、登録ボタン123、登録指示ボタン124に加え、利用者によって入力された情報122Aが表示される。
画面120Aでは、例えば、表示画面生成部278が生成した認識結果と、利用者に情報を入力させるための入力欄が表示されても良い。画面120Aの情報122Aは、この入力欄に入力された情報であっても良い。
本実施形態では、画面120Aにおいて利用者によって入力された情報122Aを、個社定義情報に対応付けて登録することができる。
例えば、基幹システムである経理システムでは、科目コードや部門コードの入力が要求されるが、これら情報は帳票から抽出することができない。したがって、このような情報は、情報122Aとして、利用者によって手動で入力される。以下の説明では、画面120Aにおいて、利用者によって入力された情報を、利用者入力情報と呼ぶ。
本実施形態では、利用者入力情報を個社定義情報に対応付けて登録しておくことで、個社定義情報を利用して帳票認識を行った結果と共に、個社定義情報に対応する利用者入力情報を自動的に認識結果画面に表示させることができる。したがって、個社定義情報を利用して帳票認識を行う度に、自動的に表示されない情報を利用者が入力する、といった手間を削減できる。
尚、本実施形態では、例えば、利用者入力情報は、予め登録されたコードの中から選択されることで入力されても良い。
以下に、図12Cを参照して、利用者入力情報と個社定義情報との対応付けについて説明する。図12Cは、利用者入力情報と個社定義情報との対応付けについて説明する図である。
図12Cに示す個社定義情報253Aは、個社定義情報253に対応付けられた利用者入力情報253Bを含む。
利用者入力情報253Bは、定義IDと利用者IDとに基づき、個社定義情報253と対応づけられて帳票定義データベース250に格納される。
尚、図12Cの例では、利用者入力情報253Bは、個社定義情報253と同一のテーブルに登録されるものとしたが、これに限定されない。利用者入力情報253Bは、個社定義情報253とは別のテーブルに格納されても良い。
次に、図13を参照して、本実施形態、確認画面において、修正を入力する場合の表示例について説明する。図13は、第一の実施形態の表示画面生成部が生成した認識結果の確認画面の他の例を示す図である。
図13に示す画面130には、帳票画像121Aと、登録ボタン123と、登録指示ボタン124と、修正内容の入力欄131とが表示されている。
帳票画像121Aには、修正後の項目の値の候補となる文字列を、マーカによって強調することで、提示している。
この場合、入力欄131には、修正の仕方を案内するメッセージが表示される表示欄132と、修正対象として選択された項目及び項目の値が表示される表示欄133と、を含む。また、入力欄131には、帳票画像121Aに提示される項目及び項目の値の候補の追加を指示するボタン134、修正の完了をサーバ装置200へ通知するためのボタン135、修正をキャンセルするためのボタン136を含む。
図13の例では、図12の画面120において、認識の結果として抽出された項目及び項目の値のうち、項目「請求元」と、項目の値「R社」が選択された場合を示している。
したがって、表示欄133には、項目「請求元」と、項目の値「R社」が表示されている。また、帳票画像121Aでは、マーカ121-1、121-2、121-3によって強調された文字列が、項目「請求元」の値となり得る候補として、提示される。
本実施形態では、個社定義情報に基づき帳票画像121Aを認識していた場合、画面130で入力された修正内容を反映させた付加情報を生成して、この個社定義情報に対応付けて帳票定義データベース250に格納する。
具体的には、例えば、項目「請求元」の値が、マーカ121-3で強調された文字列である「ハードウェア調達」に修正された場合、帳票画像121Aにおける文字列「請求元」の位置と、文字列「ハードウェア調達」の位置との対応関係を示す情報を付加情報とする。
次に、図14乃至図18を参照して、本実施形態の個社定義情報の登録における画面の遷移について説明する。
図14は、第一の実施形態の個社定義情報の登録画面を示す第一の図である。図14に示す画面140は、個社定義情報の登録画面の一例である。
本実施形態では、図12の画面120において、個社定義情報の登録を指示する登録指示ボタン124が操作されると、端末装置400の表示が画面120から画面140に遷移する。
画面140は、表示欄141、142、143を含む。表示欄141には、サーバ装置200が取得した帳票画像が表示される。
表示欄142には、表示欄141に表示された帳票画像の認識結果が表示される。具体的には、表示欄142には、帳票画像の認識結果として抽出された、項目名及び項目の値の一覧が表示される。尚、表示欄142に表示される認識結果は、汎用定義情報又は特定定義情報に基づき行われた認識結果である。
表示欄143は、新たに生成される個社定義情報に関する情報の入力欄が表示される。
本実施形態では、例えば、画面140において、表示欄142に表示された一覧から項目が選択されると、表示欄142に選択された項目と項目の値に関する定義を入力するための入力欄が表示される。つまり、本実施形態の表示欄142は、個社定義情報の入力を受け付けるための入力受付欄である。
また、本実施形態では、画面140において、表示欄142に表示された一覧から項目が選択されると、表示欄143に、個社定義情報に関する情報の入力欄が表示され、種別判定データベース240に新たな個社定義情報と対応する種別判定情報が追加される。
図15は、第一の実施形態の個社定義情報の登録画面を示す第二の図である。図15に示す画面150は、画面140において、表示欄142に表示された項目及び項目の値の一覧から、項目「今月売上額」が選択された状態を示している。
画面150では、表示欄141には帳票画像が表示されており、表示欄142には、選択された項目「今月売上額」と項目の値に関する定義を入力するための入力欄151が表示される。言い換えれば、本実施形態では、入力受付欄(表示欄142)において、項目の選択を受け付けると、入力受付欄の一部に、個社定義情報を入力するための入力欄151を表示させる。
入力欄151には、項目「今月売上額」と項目の値との位置関係や、項目の値のデータタイプ等を定義するための入力欄152が表示される。本実施形態では、入力欄152には、例えば、帳票画像データの認識に用いられた汎用定義情報や特定定義情報が表示され、その定義を編集するようにさせても良い。言い換えれば、入力欄152から定義を入力する場合には、汎用定義情報や特定定義情報における該当する項目及び項目の値に関する定義が参照されても良い。
また、表示欄143には、追加される個社定義情報に関する情報の入力欄153が表示される。尚、個社定義情報に関する情報とは、追加される個社定義情報と対応する種別判定情報であっても良い。
本実施形態では、入力欄153に表示されたアイコン154が選択されると、入力欄153に種別判定情報を入力させるテキストボックスが表示される。
図16は、第一の実施形態の個社定義情報の登録画面を示す第三の図である。図16の画面160では、画面150において、アイコン154が選択されて、入力欄153にテキストボックス161、162、163が表示された状態を示している。
テキストボックス161、162、163には、追加される個社定義情報の種別判定情報に含まれる文書種別と識別文字列の組み合わせが入力される。
具体的には、例えば、テキストボックス161には、文書種別「請求書」と、識別文字列「××」とが入力されており、テキストボックス162には、文書種別「請求書」と、識別文字列「PEKE」とが入力されている。
本実施形態では、入力欄153に入力された文書種別と識別文字列とを、定義種別「個社定義情報」と対応付けて、定義IDを付与し、種別判定情報として種別判定データベース240に格納する。
また、本実施形態では、入力欄152において、項目及び項目の値に関する定義が入力されると、定義された内容を、入力欄153で入力された種別判定情報に含まれる定義IDと対応付けて、個社定義情報とし、帳票定義データベース250へ格納する。
図17は、第一の実施形態の個社定義情報の登録画面を示す第四の図である。図17の画面170では、画面160において、新たに入力された個社定義情報に基づき、表示欄142に表示された項目の一覧から選択された項目の値を抽出した状態を示している。
本実施形態では、表示欄141の下に表示された再抽出ボタン171が操作されると、画面160において入力した個社定義情報に基づき、表示欄141に表示された帳票画像から、再度項目の値を抽出する。
画面170では、表示欄142において、項目「今月売上額」が選択されて、個社定義情報が登録された状態において、再抽出ボタン171が操作された状態である。この場合、画面170では、入力欄151に項目名として表示された文字列「今月売上額」と対応する位置に、新た個社定義情報に基づき抽出された値172が表示される。
このとき、画面170では、表示欄141に帳票画像が表示されているため、新たな個社定義情報に基づき抽出された項目及び項目の値が、帳票画像と一致しているか否かを、利用者に容易に判別させることができる。
図18は、第一の実施形態の個社定義情報の登録画面を示す第五の図である。図18の画面180では、表示欄142に表示された項目の一覧において、項目「請求日」が選択されて、項目「請求日」とその値の定義を入力するための入力欄181が表示されている。
また、入力欄181には、項目「請求日」と項目の値との位置関係や、項目の値のデータタイプ等を定義するための入力欄182が表示される。
ここで、入力欄151には、項目名として表示された文字列「請求日」と対応する位置に、汎用定義情報又は特定定義情報に基づき抽出された項目の値を表示しないようにした。
画面180では、例えば、入力欄182において、項目「請求日」及び項目の値に関する定義が入力された後に、再抽出ボタン171が操作されると、文字列「請求日」と対応する位置に新たな個社定義情報に基づき抽出した値が表示される。
以上のように、本実施形態によれば、帳票画像データと、汎用定義情報又は特定定義情報を用いて帳票画像データを認識した結果として抽出された項目及び項目の一覧と、個社定義情報の入力を受け付ける入力受付欄(表示欄142)とを共に表示させる。そして、本実施形態では、入力受付欄に表示された項目及び項目の一覧から、項目の選択を受け付けると、この項目及び項目の値に関する個社定義情報の入力欄を表示させる。
したがって、本実施形態では、汎用定義情報又は特定定義情報に基づく認識結果を参照しながら個社定義情報を入力することができ、個社定義情報を容易に生成させることができる。言い換えれば、本実施形態によれば、帳票を定義する定義情報を容易に生成させることができる。
(第二の実施形態)
以下に図面を参照して、第二の実施形態について説明する。第二の実施形態では、個社定義情報が、予め帳票定義データベース250に格納されている帳票定義情報を参照せずに入力される点が、第一の実施形態と相違する。よって、以下の第二の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明で用いた符号と同様の符号を付与し、説明を省略する。
図19は、第二の実施形態の個社定義情報の登録画面を示す第一の図である。図19に示す画面190では、帳票画像データが表示される表示欄141と、帳票画像データの認識結果として抽出された項目及び項目の値の一覧が表示される表示欄142と、を含む。
また、画面190では、新たに生成する個社定義情報の種別判定情報を入力するための入力欄191が表示される。
入力欄191には、種別判定情報における文書種別と識別文字列の組み合わせが入力されるテキストボックス161、162、163が表示される。また、入力欄191には、帳票画像から、文書種別と識別文字列を抽出する際に参照される抽出パラメータの入力欄192が含まれる。
抽出パラメータとは、例えば、帳票画像における、文書種別を示す文字列及び識別文字列の位置を示す座標等であっても良い。
また、画面190では、例えば、表示欄142に表示された一覧から項目が選択されると、表示欄142に代えて、この項目及び項目の値に関する定義の入力欄を表示させる。
図20は、第二の実施形態の個社定義情報の登録画面を示す第二の図である。図20に示す画面201は、図19に示す画面190の表示欄142において、項目「請求額(税込)」が選択された状態を示している。
画面201では、項目「請求額(税込)」とその値とを定義するための入力欄202が表示される。入力欄202には、例えば、項目「請求額(税込)」の値の抽出方法を選択させる選択欄203が表示される。
この選択欄203において、例えば、「キーワード」が選択された場合には、抽出対象となるキーワードの入力欄204や、抽出対象となるキーワード(文字列)と、項目の値となる数値との位置関係を選択させる選択欄205が表示される。
図21は、第二の実施形態の個社定義情報の登録画面を示す第三の図である。図21に示す画面201Aは、選択欄203で「正規表現」が選択された場合の入力欄202の例を示している。
図21の例では、入力欄202には、「正規表現」に関する定義を入力する入力欄206が表示される。
図22は、第二の実施形態の個社定義情報の登録画面を示す第四の図である。図22に示す画面201Bは、選択欄203で「データタイプ」が選択された場合の入力欄202の例を示している。
図22の例では、入力欄202には、「データタイプ」に関する定義を入力するための選択欄207等が表示される。
このように、本実施形態では、予め定義された帳票定義情報により抽出された項目及び項目の値について、利用者が任意に定義を設定することができる。
以上のように、本実施形態によれば、複数の帳票定義情報を用いて帳票画像から項目と項目の値とを抽出するため、帳票の認識の精度を向上させることができる。
以上、各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することができ、その応用形態に応じて適切に定めることができる。