IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士ゼロックス株式会社の特許一覧

<>
  • 特許-帳票処理装置及びプログラム 図1
  • 特許-帳票処理装置及びプログラム 図2A
  • 特許-帳票処理装置及びプログラム 図2B
  • 特許-帳票処理装置及びプログラム 図3
  • 特許-帳票処理装置及びプログラム 図4
  • 特許-帳票処理装置及びプログラム 図5
  • 特許-帳票処理装置及びプログラム 図6
  • 特許-帳票処理装置及びプログラム 図7
  • 特許-帳票処理装置及びプログラム 図8
  • 特許-帳票処理装置及びプログラム 図9
  • 特許-帳票処理装置及びプログラム 図10
  • 特許-帳票処理装置及びプログラム 図11
  • 特許-帳票処理装置及びプログラム 図12
  • 特許-帳票処理装置及びプログラム 図13
  • 特許-帳票処理装置及びプログラム 図14
  • 特許-帳票処理装置及びプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-08
(45)【発行日】2024-04-16
(54)【発明の名称】帳票処理装置及びプログラム
(51)【国際特許分類】
   G06V 30/412 20220101AFI20240409BHJP
   G06F 40/177 20200101ALI20240409BHJP
   G06Q 10/10 20230101ALI20240409BHJP
【FI】
G06V30/412
G06F40/177
G06Q10/10
【請求項の数】 10
(21)【出願番号】P 2020041700
(22)【出願日】2020-03-11
(65)【公開番号】P2021144393
(43)【公開日】2021-09-24
【審査請求日】2023-02-24
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】浅井 啓太
【審査官】淀川 滉也
(56)【参考文献】
【文献】特開2005-173730(JP,A)
【文献】特表2010-510563(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/412
G06F 40/177
G06Q 10/10
(57)【特許請求の範囲】
【請求項1】
プロセッサを備え、
前記プロセッサは、
帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、
前記項目を登録する際、処理対象の帳票を表示させ、
前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付け、
受け付けた範囲の近傍に位置する文字を、前記項目の候補として表示
前記範囲が複数指定された場合、指定された複数の範囲それぞれに対応する前記項目の候補をまとめて表示する、
ことを特徴とする帳票処理装置。
【請求項2】
前記プロセッサは、
複数の前記範囲に対して各々に識別子を表示し、
前記識別子と、前記識別子に対する前記範囲に対応する前記項目の候補を、対応づけて表示する、
ことを特徴とする請求項に記載の帳票処理装置。
【請求項3】
プロセッサを備え、
前記プロセッサは、
帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、
前記項目を登録する際、処理対象の帳票を表示させ、
前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付け、
受け付けた範囲の近傍に位置する文字を、前記項目の候補として表示し、
前記項目の候補を表示した後、前記帳票上においてユーザにより指定された文字を新たな項目の候補として追加する、
ことを特徴とする帳票処理装置。
【請求項4】
プロセッサを備え、
前記プロセッサは、
帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、
前記項目を登録する際、処理対象の帳票を表示させ、
前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付け、
受け付けた範囲の近傍に位置する文字を、前記項目の候補として表示し、
前記項目の候補と重複する文字が前記帳票の異なる位置にも記載されている場合、その旨をユーザに通知する、
ことを特徴とする帳票処理装置。
【請求項5】
前記プロセッサは、前記項目をユーザから受け付けるモードを提供することを特徴とする請求項1,3,4のいずれか1項に記載の帳票処理装置。
【請求項6】
前記プロセッサは、前記項目の候補と前記範囲との位置関係を示す定義情報を作成することを特徴とする請求項1,3,4のいずれか1項に記載の帳票処理装置。
【請求項7】
前記プロセッサは、前記定義情報の編集機能を提供することを特徴とする請求項に記載の帳票処理装置。
【請求項8】
コンピュータに、
帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、
前記項目を登録する際、処理対象の帳票を表示させる機能、
前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付ける機能、
受け付けた範囲の近傍に位置する文字を前記項目の候補として表示する機能、
前記範囲が複数指定された場合、指定された複数の範囲それぞれに対応する前記項目の候補をまとめて表示する機能、
を実現させるためのプログラム。
【請求項9】
コンピュータに、
帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、
前記項目を登録する際、処理対象の帳票を表示させる機能、
前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付ける機能、
受け付けた範囲の近傍に位置する文字を前記項目の候補として表示する機能、
前記項目の候補を表示した後、前記帳票上においてユーザにより指定された文字を新たな項目の候補として追加する機能、
を実現させるためのプログラム。
【請求項10】
コンピュータに、
帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、
前記項目を登録する際、処理対象の帳票を表示させる機能、
前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付ける機能、
受け付けた範囲の近傍に位置する文字を前記項目の候補として表示する機能、
前記項目の候補と重複する文字が前記帳票の異なる位置にも記載されている場合、その旨をユーザに通知する機能、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、帳票処理装置及びプログラムに関する。
【背景技術】
【0002】
帳票の画像データから文字列データを抽出しようとする場合、帳票から文字列データを抽出する位置を定義したデータを事前に作成しておき、帳票が読み取られたときには、その帳票に対して予め定義されたデータを用いて文字認識処理を実施して文字列データを抽出する方法がある。
【0003】
また、文字列データに紐づく項目を予め定義しておき、帳票が読み取られたときには、その帳票から項目を抽出し、その抽出した項目からの相対位置や文字列データの書式パターンを利用して文字列データを抽出する方法がある。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2004-258706号公報
【文献】特開2012-208589号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
帳票中の、予め登録された項目の近傍に位置する文字列データを、該項目に紐づくデータとして抽出する場合、該項目を予め登録しておく必要がある。しかし、抽出したい文字列データの範囲をユーザが把握していても、該範囲を抽出するのに適切な項目を、ユーザが特定できないことがあり、該項目の特定がユーザにとって手間であった。
【0006】
そこで、本発明は、帳票中の、予め登録された項目の近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合、前記項目を登録する際、抽出したいデータに紐づく項目の候補を表示しない場合と比して、前記項目を特定するユーザの手間を削減することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る帳票処理装置は、プロセッサを備え、前記プロセッサは、帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、前記項目を登録する際、処理対象の帳票を表示させ、前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付け、受け付けた範囲の近傍に位置する文字を前記項目の候補として表示前記範囲が複数指定された場合、指定された複数の範囲それぞれに対応する前記項目の候補をまとめて表示する、ことを特徴とする。
【0010】
また、前記プロセッサは、複数の前記範囲に対して各々に識別子を表示し、記識別子と、前記識別子に対する前記範囲に対応する前記項目の候補を、対応づけて表示する、ことを特徴とする。
【0012】
本発明に係る帳票処理装置は、プロセッサを備え、前記プロセッサは、帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、前記項目を登録する際、処理対象の帳票を表示させ、前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付け、受け付けた範囲の近傍に位置する文字を前記項目の候補として表示し、前記項目の候補を表示した後、前記帳票上においてユーザにより指定された文字を新たな項目の候補として追加することを特徴とする。
【0013】
本発明に係る帳票処理装置は、プロセッサを備え、前記プロセッサは、帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、前記項目を登録する際、処理対象の帳票を表示させ、前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付け、受け付けた範囲の近傍に位置する文字を前記項目の候補として表示し、前記項目の候補と重複する文字が前記帳票の異なる位置にも記載されている場合、その旨をユーザに通知することを特徴とする。
【0014】
また、前記プロセッサは、前記項目をユーザから受け付けるモードを提供することを特徴とする。
【0015】
また、前記プロセッサは、前記項目の候補と前記範囲との位置関係を示す定義情報を作成することを特徴とする。
【0016】
また、前記プロセッサは、前記定義情報の編集機能を提供することを特徴とする。
【0017】
本発明に係るプログラムは、コンピュータに、帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、前記項目を登録する際、処理対象の帳票を表示させる機能、前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付ける機能、受け付けた範囲の近傍に位置する文字を前記項目の候補として表示する機能、前記範囲が複数指定された場合、指定された複数の範囲それぞれに対応する前記項目の候補をまとめて表示する機能、を実現させる。
本発明に係るプログラムは、コンピュータに、帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、前記項目を登録する際、処理対象の帳票を表示させる機能、前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付ける機能、受け付けた範囲の近傍に位置する文字を前記項目の候補として表示する機能、前記項目の候補を表示した後、前記帳票上においてユーザにより指定された文字を新たな項目の候補として追加する機能、を実現させる。
本発明に係るプログラムは、コンピュータに、帳票中の、予め登録された項目の、近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合において、前記項目を登録する際、処理対象の帳票を表示させる機能、前記帳票上において、抽出したいデータが記載される範囲をユーザから受け付ける機能、受け付けた範囲の近傍に位置する文字を前記項目の候補として表示する機能、前記項目の候補と重複する文字が前記帳票の異なる位置にも記載されている場合、その旨をユーザに通知する機能、を実現させる。
【発明の効果】
【0018】
請求項1,8に記載の発明によれば、帳票中の、予め登録された項目の近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合、前記項目を登録する際、抽出したいデータに紐づく項目の候補を表示しない場合と比して、前記項目を特定するユーザの手間を削減することができる。また、文字列データに紐づく項目の候補をまとめて表示することができる。
【0021】
請求項に記載の発明によれば、範囲に識別子を表示し、前記識別子と前記識別子に対する範囲に対応した項目の候補を、対応付けて表示することができる。
【0023】
請求項3,9に記載の発明によれば、帳票中の、予め登録された項目の近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合、前記項目を登録する際、抽出したいデータに紐づく項目の候補を表示しない場合と比して、前記項目を特定するユーザの手間を削減することができる。また、文字列データに紐づく項目の候補に含める文字をユーザに指定させることができる。
【0024】
請求項4,10に記載の発明によれば、帳票中の、予め登録された項目の近傍に位置する文字列データを該項目に紐づくデータとして抽出する場合、前記項目を登録する際、抽出したいデータに紐づく項目の候補を表示しない場合と比して、前記項目を特定するユーザの手間を削減することができる。また、項目の候補と重複する文字が、帳票の異なる位置にも記載されている場合、ユーザがその旨を把握することができる。
【0025】
請求項に記載の発明によれば、ユーザ主導の下、文字列データに紐づく項目をユーザが選択できるモードを提供することができる。
【0026】
請求項記載の発明によれば、帳票から項目に紐付く文字列データを自動的に抽出することができる。
【0027】
請求項に記載の発明によれば、作成された定義情報をユーザに編集させることができる。
【図面の簡単な説明】
【0029】
図1】本発明に係る帳票処理装置の一実施の形態を示すブロック構成図である。
図2A】本実施の形態におけるキー定義情報作成支援処理を示すフローチャートである。
図2B図2Aに続くフローチャートである。
図3】本実施の形態における帳票表示画面の一例を示す図である。
図4】本実施の形態において枠固定設定モードで動作するときの帳票表示画面の要部の一例を示す図である。
図5】本実施の形態においてレイアウト解析設定モードで動作するときの帳票表示画面の要部の一例を示す図である。
図6】本実施の形態においてレイアウト解析設定モードで動作するときの帳票表示画面の要部の他の例を示す図である。
図7】本実施の形態における帳票表示画面の一例を示す図である。
図8】本実施の形態において帳票表示画面から自動設定ボタンが選択されたときに表示される帳票表示画面の要部を示す図である。
図9】本実施の形態における帳票表示画面の要部を示す図である。
図10】本実施の形態において、手動設定させる場合のキー定義情報の遷移を示す図である。
図11】本実施の形態におけるキー定義情報のデータ構成の他の例を示す図である。
図12】本実施の形態における帳票表示画面の要部を示す図である。
図13】本実施の形態における帳票表示画面に含まれるキー定義情報を示す図である。
図14】本実施の形態における帳票表示画面の要部を示す図である。
図15図14に示す帳票表示画面に含まれるキー定義情報の設定の遷移を示す図である。
【発明を実施するための形態】
【0030】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【0031】
本実施の形態における帳票処理装置は、パーソナルコンピュータ(PC)等の従前から存在する汎用的なコンピュータのハードウェア構成で実現できる。すなわち、帳票処理装置は、CPU、ROM、RAM、ハードディスクドライブ(HDD)等の記憶手段、入力手段マウスやキーボード及び表示手段として設けられたディスプレイ等のユーザインタフェース手段、通信手段として設けられたネットワークインタフェース等を有する。
【0032】
図1は、本発明に係る帳票処理装置1の一実施の形態を示すブロック構成図である。本実施の形態における帳票処理装置1は、帳票取得部11、定義情報作成処理部12、ユーザインタフェース(UI)処理部13及び定義情報記憶部14を有している。なお、本実施の形態の説明に用いない構成要素については図から省略する。
【0033】
帳票取得部11は、帳票の画像データを取得する。「帳票」というのは、文書の一形態であって、所定の形式に何らかの記載がされている文書のことをいう。帳票の画像データは、帳票をスキャナで読み取ることで作成される。本実施の形態では、説明の便宜上、帳票の画像データを単に「帳票」と称する。定義情報作成処理部12は、帳票に含まれている文字列データの中から抽出したい文字列データ及び文字列データを抽出するための項目それぞれの定義情報を作成する。ユーザインタフェース処理部13は、ユーザインタフェース処理部13は、操作受付部131及び表示制御部132を有している。操作受付部131は、マウスやキーボード等を用いたユーザ操作を受け付ける。表示制御部132は、定義情報作成処理部12からの指示に応じてディスプレイへの表示を制御する。定義情報記憶部14には、定義情報作成処理部12により作成された定義情報が記憶される。
【0034】
帳票処理装置1における各構成要素11~13は、帳票処理装置1を形成するコンピュータと、コンピュータに搭載されたCPUで動作するプログラムとの協調動作により実現される。また、定義情報記憶部14は、帳票処理装置1に搭載されたHDDにて実現される。あるいは、外部にある記憶手段をネットワーク経由で利用してもよい。
【0035】
また、本実施の形態で用いるプログラムは、通信手段により提供することはもちろん、CD-ROMやUSBメモリ等のコンピュータ読み取り可能な記録媒体に格納して提供することも可能である。通信手段や記録媒体から提供されたプログラムはコンピュータにインストールされ、コンピュータのCPUがプログラムを順次実行することで各種処理が実現される。
【0036】
ところで、帳票から文字列データを自動抽出する方法として、帳票から文字列データを抽出する範囲を定義した帳票定義データを事前に作成しておき、帳票が読み取られたときには、その帳票に対応する帳票定義データの文字列を抽出する範囲を用いて、文字列データの抽出位置を特定する方法がある。また、文字列データに紐づく項目を予め定義した帳票定義データを作成しておき、帳票が読み取られたときには、その帳票に対応する帳票定義データの項目を用いて、帳票から項目を探索することによって文字列データの抽出位置を特定する方法がある。
【0037】
前者の場合、帳票のレイアウトが変わると文字列データを抽出する範囲が変更され、これにより帳票定義データが利用できなくなるという問題がある。後者の場合、前者の問題は発生しないが、意味的には同じでも業務や帳票によって項目の表現方法が異なるため、何を帳票定義データの項目として定義するかによって、文字列データの抽出精度が異なる。実際には、帳票定義データの項目の定義を、ユーザの判断に委ねることが少なくなく、ユーザによっては何を項目として定義すれば判断できなく、文字列データの抽出精度に影響を及ぼしてしまうことがあった。本実施の形態において特徴的なことは、上記2つの抽出方法のメリットを活かし、文字列データの抽出位置を指定させることによって上記項目の候補を抽出し、ユーザに提示することによって、帳票定義データ(上記「定義情報」に相当)、特に後述する項目定義情報の作成を支援できるようにしたことである。「項目定義情報」は、項目の候補と抽出したい文字列データが記載される範囲との位置関係を示す定義情報である。
【0038】
本実施の形態においては、枠固定設定モードとレイアウト解析設定モードの2種類の設定モードで動作可能である。枠固定設定モードは、上記2つの抽出方法のうち前者に対応するモードである。レイアウト解析設定モードは、後者の技術を利用して、本実施の形態において特徴的な項目定義情報を作成する支援を提供するモードである。
【0039】
本実施の形態では、レイアウト解析設定モードの説明において、帳票に記載される項目を「キー」(Key)と称する。例えば、帳票が請求書の場合、請求書に記載される項目「発行日」や「請求書番号」等の特定の文字がキーに該当する。また、帳票には、通常、キーの近傍に文字列データが対応付けて記載される。例えば、「発行日」というキーの近傍には、発行日を示す日付の書式で表現される文字列データが記載されるはずであり、「請求書番号」というキーの近傍には、番号を示す書式で表現される文字が記載されるはずである。本実施の形態においては、キーに対応付けして記載される文字列データのことを「バリュー」(Value)と称する。帳票を解析することによって帳票中のキーに該当する所定の特定の文字を検出すると、そのキーの近傍(例えば、横書きの場合、多くはキーの右側または下側)にバリューが存在するので、帳票からキーとバリューをセットにして抽出することが可能となる。すなわち、帳票をスキャンすることで得られた帳票の読取画像(上記「画像データ」に相当)からキーとバリューを組にして自動的に抽出することができる。レイアウト解析設定モードによって作成された定義情報に従ってキー及びバリューを抽出する処理を「キーバリュー抽出処理」という。
【0040】
なお、キーバリュー抽出処理において、キーだけあるいはバリューだけが抽出される場合もあるが、特に断らない限り、帳票からキーとバリューをセットにして抽出するものとして説明する。また、本実施の形態において「文字」というのは、特に断らない限り、一文字の場合と複数の文字から成る文字列の双方を意味する。
【0041】
定義情報作成処理部12は、帳票からキー及びバリューを自動的に抽出できるようにするための定義情報を作成する。具体的には、キーに対してはキー定義情報を、バリューに対してはバリュー定義情報を、それぞれ作成する。特に、本実施の形態においては、ユーザがキー定義情報を作成することを支援するツールを提供する。以下、このツールによる本実施の形態において特徴的なキー定義情報作成支援処理について図2A図2Bに示すフローチャートを用いて説明する。
【0042】
まず、帳票取得部11は、処理対象とする帳票を取得する(ステップ101)。帳票は、例えばスキャン機能を有する画像形成装置に帳票を読み取らせることによって生成される。帳票取得部11は、帳票を画像形成装置から直接又は間接的に取得する。
【0043】
帳票が取得されると、定義情報作成処理部12は、帳票を表示制御部132に画面表示させる(ステップ102)。なお、表示制御部132は、定義情報作成処理部12からの指示に応じてディスプレイへの表示制御を行うが、以降の説明では、説明の簡略化のために、表示制御部132の動作は適宜省略する。
【0044】
図3は、本実施の形態における帳票表示画面の一例を示す図である。帳票表示画面20には、帳票表示領域21と、モード選択用のチェックボックス22a,22bと、自動空欄抽出ボタン23と、まとめて自動設定ボタン24と、が設けられている。
【0045】
前述したように、本実施の形態におけるキー定義情報作成支援処理では、枠固定設定モードとレイアウト解析設定モードの2種類の設定モードに対応可能である。チェックボックス22aが選択されると枠固定設定モードで、チェックボックス22bが選択されるとレイアウト解析設定モードで、それぞれ動作する。ユーザが帳票表示画面20からいずれかのチェックボックス22a,22bを選択して動作させる設定モードを選択すると、操作受付部131は、選択された設定モードを受け付ける(ステップ103)。なお、自動空欄抽出ボタン23及びまとめて自動設定ボタン24が選択されたときの動作については、後述する。
【0046】
続いて、ユーザは、表示されている帳票の中から処理対象とする枠を選択する。「枠」というのは、罫線で囲まれている範囲で、抽出したい文字列データが記載される記入欄に相当する。文字列データが記載される範囲は、当該範囲の帳票上における相対位置(例えば、矩形形状の範囲の左角の座標データ)と当該範囲を示す大きさで特定できる。本実施の形態では、ユーザに枠を指定させることは、上記範囲の相対位置及び大きさの双方を指定させることに等しい。操作受付部131は、指定された枠を受け付ける(ステップ104)。なお、本実施の形態においては、ユーザは、マウスカーソルを所望の枠まで移動させクリック選択することで枠を選択するものとする。もちろん、枠の選択操作は、この操作に限る必要はない。
【0047】
なお、上記のように、ユーザによる何らかの操作は、操作受付部131が受け付けることになるが、以降の説明では、説明の簡略化のために、ユーザ操作を受け付ける操作受付部131の動作は適宜省略する。
【0048】
まず、ユーザが枠固定設定モードを選択した場合(ステップ105で“枠固定”)の動作ついて説明する。
【0049】
図4は、本実施の形態における帳票表示画面20の要部を示す図であり、ユーザが枠固定設定モードを選択したときの画面表示例を示す図である。図4には、帳票表示領域21に表示されている帳票の一部分であって、ステップ104においてユーザにより選択された枠25の部分が示されている。図4には、住所に対応する文字列データが記載される枠25が選択された例が示されている。本実施の形態では、説明に必要な情報を抽出して図示しており、画面上のレイアウトは、つまり、帳票の一部分やテーブル26,27の表示位置は、この例に限るものではない。以下の説明で用いる図においても同様である。
【0050】
ユーザにより枠25が選択されると、定義情報作成処理部12は、文字列データに関する帳票定義データの入力設定テーブル、具体的には読み取り設定情報及び出力設定情報をユーザに入力させるためのテーブル26,27を画面表示させる。図4では、ユーザにより入力された後の状態で示している。読み取り設定情報には、枠25に記入された文字列データを読み取るための条件等が設定される。読み取り設定情報は、「名前」、「認識文字種類」、「文字種の制限」、「英/数文字の全角半角」及び「矩形座標」を含む。「名前」には、枠25を識別するための情報として名前が設定される。「認識文字種類」には、枠25に入力された文字列データを判読するために使用される辞書データが設定される。「文字種の制限」には、文字列データとして使用可能な文字の種類(英字、数字等)が設定される。「英/数文字の全角半角」には、文字列データを全角文字又は半角文字として読み取るかが設定される。「矩形座標」は、枠25の帳票上における範囲を示す情報であり、矩形形状で示される枠25の左角の帳票上における相対位置を示す座標データと、枠25の幅及び高さで示される。矩形座標は、ユーザにより枠25が選択されることによって自動的に設定される。出力設定情報には、枠25に記入された文字列データが出力されるための条件等が設定される。出力設定情報は、「ヘッダー名」、「列順」及び「空欄時の置き換え文字」を含む。「ヘッダー名」には、文字列データが出力される際に付けられる名称が設定される。「列順」には、文字列データが出力される際の並び順が設定される。「空欄時の置き換え文字」には、文字列データが抽出できなかった場合に代わりに出力される文字や記号等が設定される。
【0051】
以上のようにして、定義情報作成処理部12は、1つの文字列データに対する帳票定義データを作成すると(ステップ113)、ユーザによる所定の保存操作に応じて定義情報記憶部14に保存した後、ステップ111に移行する。ステップ111以降の処理については、後述する。
【0052】
次に、ユーザがレイアウト解析設定モードを選択した場合(ステップ105で“レイアウト解析”)の動作について説明する。
【0053】
図5は、本実施の形態における帳票表示画面20の要部を示す図であり、ユーザがレイアウト解析設定モードを選択したときの画面表示の一例を示す図である。図5には、帳票表示領域21に表示されている帳票の一部分であって、ステップ104においてユーザにより選択された枠25の部分が示されている。図5には、住所についての文字列データが記載される枠25が選択された例が示されている。
【0054】
ユーザにより枠25が選択されると、定義情報作成処理部12は、文字列データ、すなわちバリューに関する定義情報をユーザに入力させるためのテーブル(以下、「バリュー定義情報」という)28を画面表示させる。なお、キーバリュー抽出処理では、キーの位置が探索し、探索したキーの位置近傍にある文字列(つまり、バリュー)を自動的に抽出するので、帳票を解析することで得られる枠25の位置情報(つまり、矩形座標)は、不要である。このため、図5では、その旨を示すためにグレーアウトさせている。
【0055】
レイアウト解析設定モードにおけるバリュー定義情報28(枠固定設定モードにおける帳票定義データの読み取り設定情報に対応)には、探索設定の項目が付加されている。探索設定には、キーを自動的に探索する自動設定をユーザに選択させるための自動設定ボタン29と、キーをユーザに指定させる手動設定をユーザに選択させるための手動設定ボタン30とが設けられている。
【0056】
ここで、ユーザが自動設定ボタン29を選択したとする。選択はマウス操作により行うことができる。この場合において(ステップ106で“自動設定”)、定義情報作成処理部12は、帳票を自動解析することで、キーの候補が複数存在せず(ステップ107でN)、複数の枠が選択されておらず(ステップ108でN)、キーと重複する文字が存在しないことを認識すると(ステップ109でN)、枠25の左側に位置する文字、この例では、「住所」をキー(項目)の候補として抽出し、キー定義情報31を自動作成する(ステップ110)。バリュー定義情報28は、枠25が選択されることで作成され表示されるが、キー定義情報31は、バリュー定義情報28内の自動設定ボタン29が選択されてはじめて画面表示されることになる。なお、キー定義情報31は、情報そのものを指す場合とキー定義情報を表示させるテーブルを指す場合があるが、説明の便宜上、共に「キー定義情報31」と記載する。
【0057】
キー定義情報31は、文字と探索方向の各項目を含む。「文字」は、キーとなる特定の文字であり、指定された枠25の位置によって抽出される。「探索方向」は、当該キーに対してバリューが存在する方向を示している。キーバリュー抽出処理では、「文字」に指定されている帳票上の特定の文字(すなわち、キー)を探索することで抽出し、抽出したキーから「探索方向」に存在する文字列データをバリューとして自動抽出する。図5には、「文字」としてただ1つの文字“住所”が、「探索方向」として“右側”が、それぞれ設定されているキー定義情報31が示されている。
【0058】
定義情報作成処理部12は、所定の探索条件に従って枠25に対応するキーを探索する。ところで、図3に例示した帳票のように横書きの場合、キーに対応するバリューは、キーの右側または下側に位置するのが一般的である。換言すると、バリューに対応するキーは、バリューの左側または上側に位置するのが一般的である。そこで、定義情報作成処理部12は、枠25の左側または上側に位置する文字という探索条件に従って探索する。また、直近の文字又は所定の閾値以内に位置する文字という探索条件に従って探索する。図5には、矩形形状の囲み線32で囲った“住所”のみが抽出された例が示されている。そこで、定義情報作成処理部12は、「文字」として“住所”を設定する。また、文字“住所”に対して枠25の位置は右側なので、「探索方向」として“右側”を設定する。従って、枠25に記載されるバリューを抽出する際には、以上のようにして作成されたキー定義情報31が参照される。すなわち、キーバリュー抽出処理では、文字“住所”を探索し、探索された場合、探索方向に従って文字“住所”の右側に位置するバリューを自動的に抽出することになる。
【0059】
なお、どの文字を抽出したのかをユーザに示すために、定義情報作成処理部12は、図5に示すように抽出した文字に囲み線32を付けて表示させるようにしてもよい。
【0060】
定義情報作成処理部12は、以上のようにしてユーザにより指定された枠25の近傍に位置する文字をキーの候補としてユーザに提示する。そして、定義情報作成処理部12は、ユーザによる所定の保存操作に応じて、作成したキー定義情報を定義情報記憶部14に保存する。なお、定義情報作成処理部12は、作成したキー定義情報及びバリュー定義情報をユーザによる所定の保存操作に応じて、あるいは適当なタイミングで定義情報記憶部14に保存することになるが、以下の説明では、定義情報記憶部14に保存する処理については、説明を省略する。
【0061】
キー定義情報の編集(ステップ111でY,ステップ119)については後述することにして、ユーザにより処理を終了させる操作がされると(ステップ111でN,ステップ112でY)、そうでなければ(ステップ112でN)、他の枠を処理するためにステップ104に移行する。
【0062】
図5を用いて説明した例では、1つの文字“住所”のみがキーの候補として抽出された場合であるが、探索条件によっては、複数の文字がキーの候補として抽出される場合もあり得る。例えば、枠25に対して探索する方向を特定しなかった場合や所定の閾値を大きくした場合などである。
【0063】
ユーザが自動設定ボタン29を選択した場合において(ステップ106で“自動設定”)、キーの候補が複数存在する場合(ステップ107でY)、定義情報作成処理部12は、ユーザ操作に応じて複数のキーの候補の中からキーを選定する(ステップ114)。
【0064】
図6は、本実施の形態における帳票表示画面20の要部を示す図であり、図5と同様の画面表示例である。図6には、キーの候補として探索された文字それぞれを囲み線32a,32b,32cで囲って示している。
【0065】
本実施の形態では、探索条件との合致度に応じてキーの候補に優先付けをしている。例えば、枠25からの方向及び距離で優先度を判定する場合、枠25の左側又は上側にある文字の優先度が高くなるようにする。また、枠25からの距離が近いほど優先度が高くなるようにする。図6では、枠25からの距離が最も近く、かつ枠25の左側に位置する“住所”を最も高い優先度で表示させている。図6では、囲み線32の内側の色の濃淡で優先度を表しているが、この表現方法に限る必要はなく、他の表示形態で表示させたり、文字にて優先度を表示させたりしてもよい。
【0066】
定義情報作成処理部12は、枠25からの方向及び距離で優先付けをしたが、文字の枠25に対する距離または方向の少なくとも一方に基づきキーの候補を優先づけて表示させてもよい。
【0067】
ここで、ユーザがキーの候補として“住所”及び“受給者”を選択したとする。例えば、ユーザは、対応する囲み線32a,32bの内側をクリックするなどの選択操作を行う。このユーザによる選択操作に応じて、定義情報作成処理部12は、“住所”及び“受給者”をキーの候補としたキー定義情報31を自動作成する(ステップ115)。
【0068】
これにより、キーバリュー抽出処理では、以上のようにして作成されたキー定義情報31を参照し、文字“住所”及び“受給者”を帳票から抽出し、探索方向に従って文字“住所”の右側に位置し、かつ“受給者” の右側に位置するバリューを自動的に抽出することになる。
【0069】
上記説明では、ユーザは、帳票から処理対象とする枠25を自ら探し出し、ただ1つ選択していたが、本実施の形態では、選択可能な枠をユーザに提示すると共に、複数の枠をユーザに選択させることも可能である。
【0070】
図7は、本実施の形態における帳票表示画面の一例を示す図であり、図3と同じ画面である。帳票表示画面20の自動空欄抽出ボタン23が選択されると、定義情報作成処理部12は、帳票を解析することで空欄、すなわち枠を抽出し、選択可能な枠がわかるように表示させる。図7では、空欄をグレーに色付けした例を示している。ユーザは、色づけされた枠の中から上記のように1つの枠を選択してもよいが、ユーザが複数の枠をまとめて処理したい場合、例えば、ドラッグアンドドロップ操作により複数の枠を指定してもよい。図7では、囲み線33によって指定された複数の枠を示している。ここで、ユーザがまとめて自動設定ボタン24を選択したとする。
【0071】
図8は、本実施の形態における帳票表示画面20の要部を示す図であり、ユーザがまとめて自動設定ボタン24を選択したときに表示される帳票の一部が示されている。ユーザがバリュー定義情報28内の自動設定ボタン29を選択すると、定義情報作成処理部12は、各枠に対応するキーの候補を抽出し、複数の枠をまとめたキー定義情報31を作成して表示させる(ステップ116)。前述したように、ここでは、複数の枠がユーザによって選択されているので、キー定義情報31には、枠ごとに定義情報が設定される。定義情報作成処理部12は、図8に示すように帳票の各枠に枠番号を自動採番し、枠番号に対応させて、前述した文字と探索方向をキー定義情報31に設定する。
【0072】
ここで、ユーザが文字に対して更にキーを設定したい場合、該当する枠番号若しくは、該当する枠の行を選択する。図8では、枠番号1に対応するキー定義情報が選択された例が示されているが、枠番号1に対応するキー定義情報31aは、この選択操作によって表示される。その後、ユーザは、枠番号1の枠に対してキーの候補として追加したい文字を帳票上から選択する。例えば、帳票上の文字“1”34を選択する。定義情報作成処理部12は、このユーザ操作に応じて枠番号1の枠に対してキーを追加する。図8に示すキー定義情報31aは、以上のユーザ操作によって文字“1” のキー定義情報31a-1が新たに追加された後の状態が示されている。キーバリュー抽出処理では、キー定義情報31aを参照すると、文字“氏名”の下側に位置し、かつ文字 “1”の右側に位置するバリューを抽出することになる。
【0073】
このように、本実施の形態によれば、複数の枠に対してまとめてキーの候補を抽出することができる。また、枠に対してキーの候補を追加することができる。
【0074】
前述したように、本実施の形態では、自動設定ボタン29が選択されると、キー定義情報31を自動的に作成する。ただ、自動的に作成されたキー定義情報では不十分な場合もあり得る。そこで、本実施の形態では、ユーザが手動で設定したキーを受け付けるモード(すなわち、手動設定)を設けている。
【0075】
図9は、本実施の形態における帳票表示画面20の要部を示す図である。図9に示す帳票において、囲み線32,35で示すように“住所”という文字は、帳票の2箇所から抽出される。従って、枠25を選択したのにもかかわらず、文字“住所”だけをキーにすると、キーバリュー自動抽出処理では、囲み線35の文字“住所”をキーと誤って抽出してしまう可能性がある。
【0076】
ユーザは、この不具合を事前に解消するために自らの手入力によりキー定義情報を設定したい場合、手動設定を選択する。すなわち、ユーザは、枠25を選択した後、バリュー定義情報28内の手動設定ボタン30を選択する。ユーザにより手動設定ボタン30が選択されると(ステップで“手動設定”)、定義情報作成処理部12は、キー定義情報をユーザに設定させるためにキー定義情報が設定されていない空白のテーブル36を表示させる。このように、定義情報作成処理部12は、表示されたテーブル36に、設定したいキーの文字及び探索方向をユーザに入力させることでキー定義情報を作成する(ステップ117)。
【0077】
具体的には、図9と同じ図10(a)に示す空白のテーブル36に対し、ユーザは、図10(b)に示すように、キーの候補とする文字と、当該文字に対するバリューの探索方向をテーブル36に入力する。文字は、帳票上から選択するようにしてもよい。探索方向は、指定できる値(右側、下側等)が予め決められているので、選択可能な値を表示して、その中からユーザに選択させるようにしてもよい。
【0078】
更に、枠25に対してキーを設定したい場合、追加ボタン37を選択し、新たな空白行を表示させ(図10(c))、その空白行に対して、キー定義情報を新たに入力する(図10(d))。設定したキー定義情報を削除したい場合には、対応する行に表示されている削除ボタン38を選択する。
【0079】
図11は、キー定義情報31の他のデータ構成を示す図である。図11には、図10(d)に示すキー定義情報に加えて、探索設定の情報を付加したキー定義情報が示されている。探索設定に含まれる「帳票内の優先順位」には、帳票上の検出位置の優先順位が設定される。例えば、左上、左、左下、上、中央、下、右上、右、右下等が指定される。図9において、仮に「帳票内の優先順位」に“左上”と設定すれば、囲み線35に対応する文字“住所”より左上に位置する囲み線32に対応する文字“住所”が優先されて抽出される。「探索書式パターン」には、文字に対応して抽出されるバリューの書式パターンが指定される。図11に示す例では、文字に対応付けられるバリューの書式パターンの候補がリスト表示される。「書式パターン」というのは、枠に記入される文字列データの書式であり、記入者は、一般に、書式パターンに含まれるいずれかに合致する書式にて住所を記入すると考えられる。ユーザは、この書式パターンに含まれる書式のリストの中から文字列データとして受け付ける書式にチェックボックスを付ける。チェックボックスが付けられた書式で記入された文字列データは、住所として抽出されやすくなる。
【0080】
このように、ユーザ自らの手入力によりキー定義情報を作成させることができる。前述した文字“住所”だけをキーにすると、キーバリュー自動抽出処理では、囲み線35の文字“住所”をキーと誤って抽出してしまう可能性があるところを、文字“受給者”をキーとして追加することによって、枠25の位置で検出されることになるバリューを確実に抽出することができるようになる。
【0081】
ところで、キーの候補となる文字(図9においては、“住所”)が帳票に複数存在する場合、キーバリュー自動抽出処理では、バリューを正しく抽出できない可能性がある。この場合、ユーザは、手動設定を選択することで対処できると言うことは前述した通りである。ここでは、ユーザが自動設定を選択した場合について説明する。
【0082】
図12は、本実施の形態における帳票表示画面20の要部を示す図であり、図9と同じ画面例である。図9では、ユーザが手動設定ボタン30を選択した場合の表示画面であるが、図12では、ユーザが自動設定ボタン29を選択した場合の表示画面である。
【0083】
ユーザが枠25を選択した後、バリュー定義情報28内の自動設定ボタン29を選択する。ユーザにより自動設定ボタン29が選択されると(ステップで“自動設定”)、定義情報作成処理部12は、帳票を解析することで枠25に対応するキーの候補となる文字“住所”が重複して存在することを検出する。この場合(ステップ109でY)、キー定義情報31と共に警告メッセージ39を表示させる(ステップ118)。なお、S109における「重複する文字」とは、キーの候補と同一である文字であっても良いし、キーの候補と示す意味が同じである類語の文字(例えば、キー候補“住所”に対して、“お住まい”等が類語の文字としてあげられる)であっても良い。
【0084】
ユーザは、この警告メッセージ39を参照すると、キー定義情報31を編集することで対処可能である。すなわち、ユーザがキー定義情報31における「帳票内の優先順位」に検出位置に対する優先順位を設定したり、「探索書式パターン」で書式パターンを設定したり、あるいは図6を用いて説明したようにキー定義情報を追加すると、定義情報作成処理部12は、ユーザによる編集内容を受け付けてキー定義情報31を編集する。これにより、重複するキーに優先順位が付けられるようになると、定義情報作成処理部12は、囲み線35に対応する文字“住所”がキーの候補から除外することができるので、警告メッセージ39を消去する。
【0085】
以上説明したように、ユーザがキー定義情報の自動設定を選択すると、定義情報作成処理部12は、キー定義情報を自動的に作成する。ところで、同じ帳票の形式でも枠25に対応する文字が異なる帳票が存在する場合がある。この場合、異なるキー定義情報を作成すれば対応可能である。ただ、キーを示す特定の文字自体は異なるものの、同じキーとして取り扱い、同じキー定義情報を利用したい場合がある。そのために、定義情報作成処理部12は、キー定義情報の編集機能を提供する。
【0086】
図13は、本実施の形態における帳票表示画面20に含まれるキー定義情報を示す図である。上記説明では、キー定義情報に新たなレコードを追加するなどの編集について説明したが、ここでは、作成済みのレコードに編集する機能を提供する。ユーザが作成済みのレコードに編集する場合(ステップ111でY)、定義情報作成処理部12は、キー定義情報をユーザに編集させる。図13に示すキー定義情報の設定例によると、キー定義情報の自動設定により文字に“住所”が設定されているが、ユーザは、接続詞“or”に続けて“おところ”を追加するよう手入力により編集する(ステップ119)。これにより、“おところ”と設定されている帳票にも同じキー定義情報で対応することができる。
【0087】
図14は、本実施の形態における帳票表示画面20の要部を示す図である。本実施の形態では、枠をユーザに指定させてからキー定義情報を作成するように処理する。枠は、バリューの検出位置を指定させるためであるが、ここでは、枠がない場合にバリューを書式パターンで判別させたい場合について説明する。
【0088】
この場合、ユーザは、枠を指定することなくバリュー定義情報28内の手動設定ボタン30を選択する。定義情報作成処理部12は、ユーザの選択操作に応じてキー定義情報のテーブル31を表示させる。以降の画面遷移については、図15を用いて説明する。
【0089】
図15(a)において、ユーザがテーブル31内のボタン40を選択すると、図15(b)に示すようにキー定義情報の入力欄を表示させる。そして、ユーザは、キー定義情報を入力欄に手入力する。図15(c)には、手入力した後のキー定義情報31が示されている。枠がない場合でもバリューを抽出できるようにするために、バリューの書式に関して正規表現が予め規定されている。つまり、図15(c)に例示したように、年度を示す場合は、“平成”若しくは“令和”という文字列に続けて数字が記載され、数字に続けて“年度”という文字列が続くはずである。このような記述についての規則を正規表現として予め規定されている。ユーザは、この正規表現に従ってキー定義情報31に記述することになる。なお、図15では、省略しているが、キー定義情報を入力する行は、図10に示したように追加ボタン及び削除ボタンを用いて増減させるようしてもよい。
【0090】
上記実施の形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス等)を含むものである。
【0091】
また上記実施の形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は上記各実施の形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。
【符号の説明】
【0092】
1 帳票処理装置、11 帳票取得部、12 定義情報作成処理部、13 ユーザインタフェース(UI)処理部、14 定義情報記憶部、20 帳票表示画面、21 帳票表示領域、22a,22b チェックボックス、23 自動空欄抽出ボタン、24 自動設定ボタン、25 枠、26,27 テーブル、28 バリュー定義情報、29 自動設定ボタン、30 手動設定ボタン、31,31a,31a-1 キー定義情報、32,32a,32b,32c,33,35 囲み線、37 追加ボタン、38 削除ボタン、39 警告メッセージ、40 ボタン、131 操作受付部、132 表示制御部。
図1
図2A
図2B
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15