(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024092667
(43)【公開日】2024-07-08
(54)【発明の名称】情報抽出方法、情報抽出プログラム、情報抽出システム、および表形式データの生成方法
(51)【国際特許分類】
G06F 40/279 20200101AFI20240701BHJP
G06F 40/117 20200101ALI20240701BHJP
【FI】
G06F40/279
G06F40/117
【審査請求】未請求
【請求項の数】21
【出願形態】OL
(21)【出願番号】P 2022208770
(22)【出願日】2022-12-26
(71)【出願人】
【識別番号】522502314
【氏名又は名称】株式会社みらいリレーションズ
(74)【代理人】
【識別番号】110000408
【氏名又は名称】弁理士法人高橋・林アンドパートナーズ
(72)【発明者】
【氏名】齋藤 康平
【テーマコード(参考)】
5B091
5B109
【Fターム(参考)】
5B091AA15
5B109NH01
(57)【要約】
【課題】電子文書内に含まれる情報の中から必要な情報を簡単に抽出するできるようにすること。
【解決手段】情報抽出方法は、第1文書データに含まれるテキストデータに対応するテキスト座標データ、および前記第1文書データにおいて前記テキストデータが配置される図形に対応する図形座標データに基づいて表形式データを生成し、前記表形式データのうち所定の条件を満たすテキストデータを抽出することを含む。上記情報抽出方法において、前記表形式データにおけるテキストデータの内容およびテキストデータの位置関係に基づいて前記表形式データの類型を特定し、前記表形式データの類型に基づいて、前記表形式データのうち前記所定の条件を満たすテキストデータを抽出することを含んでもよい。
【選択図】
図2
【特許請求の範囲】
【請求項1】
第1文書データに含まれるテキストデータに対応するテキスト座標データ、および前記第1文書データにおいて前記テキストデータが配置される図形に対応する図形座標データに基づいて表形式データを生成し、前記表形式データのうち所定の条件を満たすテキストデータを抽出することを含む、情報抽出方法。
【請求項2】
前記表形式データにおけるテキストデータの内容およびテキストデータの位置関係に基づいて前記表形式データの類型を特定し、
前記表形式データの類型に基づいて、前記表形式データのうち前記所定の条件を満たすテキストデータを抽出することを含む、
請求項1に記載の情報抽出方法。
【請求項3】
前記所定の条件は、所望の電子データの入力フォーマットに入力可能な情報であることであり、
前記表形式データのうち前記所定の条件を満たす行列情報に対応づけられた少なくとも一つのテキストデータを抽出する、
請求項1に記載の情報抽出方法。
【請求項4】
前記テキストデータの各々に対して行列情報を付加して、前記表形式データを生成する、
請求項1に記載の情報抽出方法。
【請求項5】
前記表形式データにおけるテキストデータの内容およびテキストデータの位置関係に基づいて前記表形式データの類型を特定するとき、あらかじめ記憶装置に格納された前記テキストデータの内容および前記テキストデータの位置関係に対応する情報を使用する、
請求項2に記載の情報抽出方法。
【請求項6】
前記図形は、四角形であり、
前記図形座標データは、四角形の頂点の座標である、
請求項1に記載の情報抽出方法。
【請求項7】
前記テキストデータは、複数のテキストデータを含み、
前記複数のテキストデータのうち、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとの関係に基づいて前記第1テキストデータおよび前記第2テキストデータとの位置を関連付ける、
請求項1に記載の情報抽出方法。
【請求項8】
前記テキストデータは、複数のテキストデータを含み、
前記複数のテキストデータのうち、同じ図形に配置される、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとを比較して、前記第1テキストデータおよび前記第2テキストデータの並び順および改行の有無の少なくともいずれかの情報を取得する、
請求項1に記載の情報抽出方法。
【請求項9】
前記図形は、複数の図形を含み、
前記複数の図形において、第1図形と、第2図形とが、共通する共通座標を有し、前記共通座標が、第3図形の第1頂点の座標と、前記第1頂点に隣り合う第2頂点の座標との間にあるとき、
前記第3図形は、前記第1図形および前記第2図形を結合させた結合図形であると判定する、
請求項1に記載の情報抽出方法。
【請求項10】
前記表形式データを生成するときに、前記第3図形を前記第1図形と同じ長さを有する第4図形、および前記第2図形と同じ長さを有する第5図形に分割し、前記第3図形に含まれたテキストデータを、前記第4図形および前記第5図形のそれぞれに入力する、
請求項9に記載の情報抽出方法。
【請求項11】
抽出された少なくとも一つのテキストデータを、前記第1文書データとは異なる第2文書データを生成するための入力フォーマットに入力することを、含む、
請求項1に記載の情報抽出方法。
【請求項12】
抽出されたテキストデータに対して補正処理を行うことを、含む、
請求項1に記載の情報抽出方法。
【請求項13】
請求項1乃至12のいずれか一項に記載の情報抽出方法をコンピュータに実行させるための情報抽出プログラム。
【請求項14】
第1文書データに含まれるテキストデータの各々に対応するテキスト座標データ、および前記第1文書データにおいて前記テキストデータが配置される図形に対応する図形座標データに基づいて表形式データを生成し、前記表形式データのうち所定の条件を満たすテキストデータを抽出する制御部を含む、
情報抽出システム。
【請求項15】
第1文書データに含まれるテキストデータに対応するテキスト座標データ、および前記第1文書データにおいて前記テキストデータが配置される図形に対応する図形座標データに基づいて表形式データを生成する、
表形式データの生成方法。
【請求項16】
前記図形は、第1図形および第2図形を含み、
前記第1図形における第1頂点の座標と、前記第2図形のうち前記第1図形における前記第1頂点に対応する第2頂点の座標との差分が、所定の条件を満たすときに、前記第1図形の前記第1頂点と前記第2図形の前記第2頂点とが近似すると判定し、
前記第1図形の前記第1頂点と前記第2図形の前記第2頂点とを重畳させる、
請求項15に記載の表形式データの生成方法。
【請求項17】
前記所定の条件は、前記差分が前記テキストデータの高さを所定の値で割った値以下である、
請求項16に記載の表形式データの生成方法。
【請求項18】
前記テキストデータは、複数のテキストデータを含み、
前記複数のテキストデータのうち、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとの関係に基づいて前記第1テキストデータおよび前記第2テキストデータとの位置を関連付ける、
請求項15に記載の表形式データの生成方法。
【請求項19】
前記テキストデータは、複数のテキストデータを含み、
前記複数のテキストデータのうち、同じ図形に配置される、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとを比較して、前記第1テキストデータおよび前記第2テキストデータの並び順および改行の有無の少なくともいずれかの情報を取得する、
請求項15に記載の表形式データの生成方法。
【請求項20】
前記図形は、複数の図形を含み、
前記複数の図形において、第1図形と、第2図形とが、共通する共通座標を有し、前記共通座標が、第3図形の第1頂点の座標と、前記第1頂点に隣り合う第2頂点の座標との間にあるとき、
前記第3図形は、前記第1図形および前記第2図形を結合させた結合図形であると判定する、
請求項15に記載の表形式データの生成方法。
【請求項21】
前記表形式データを生成するときに、前記第3図形を前記第1図形と同じ長さを有する第4図形、および前記第2図形と同じ長さを有する第5図形に分割し、前記第3図形に含まれたテキストデータを、前記第4図形および前記第5図形のそれぞれに入力する、
請求項20に記載の表形式データの生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報抽出方法、情報抽出プログラム、情報抽出システム、および表形式データの生成方法に関する。
【背景技術】
【0002】
企業では、日々の業務において、取引先や顧客から入手した情報を自社で使用するシステムに入力し、データ管理やデータ処理が行われている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、取引先や顧客から取得する情報は、紙書類やPDF(Portable Document Format)などの電子書類など様々であり、自社で使用する別の入力フォームに対して、手入力を行わなければいけない手間が発生している。例えば、保険代理店では、現在の保険料から新たな保険に切り替えることにより、どの程度保険料が安くなることがわかるように、現在持っている見積書を用いて複数の保険会社のウェブサイトにアクセスして、見積書作成に必要な情報を入力する場合がある。この場合、特許文献1に示すように、紙書類であれば、一旦PDFデータに変換する必要があり、すでに存在する見積書が電子データとしてデータベースに格納されることはあったとしても、その電子データを用いてユーザが再度各種情報を自ら入力する必要がある。
【0005】
また、取引先または顧客から入手した書類またはデータで使われる用語は、自社で使用される用語と異なる場合があり、各社に応じて用語を調整しながら入力する必要がある。上述した処理は、複数の顧客に対して日々行われるものであり、入力作業を行うユーザ(事務員)にとって非常に手間がかかり、煩雑である。
【0006】
このような課題に鑑み、本発明の目的の一つは、電子文書内に含まれる情報の中から必要な情報を簡単に抽出することである。
【課題を解決するための手段】
【0007】
本発明の一実施形態によれば、第1文書データに含まれるテキストデータに対応するテキスト座標データ、および前記第1文書データにおいて前記テキストデータが配置される図形に対応する図形座標データに基づいて表形式データを生成し、前記表形式データのうち所定の条件を満たすテキストデータを抽出することを含む、情報抽出方法が提供される。
【0008】
上記情報抽出方法において、前記表形式データにおけるテキストデータの内容およびテキストデータの位置関係に基づいて前記表形式データの類型を特定し、前記表形式データの類型に基づいて、前記表形式データのうち前記所定の条件を満たすテキストデータを抽出することを含んでもよい。
【0009】
上記情報抽出方法において、前記所定の条件は、所望の電子データの入力フォーマットに入力可能な情報であることであり、前記表形式データのうち前記所定の条件を満たす行列情報に対応づけられた少なくとも一つのテキストデータを抽出してもよい。
【0010】
上記情報抽出方法において、前記テキストデータの各々に対して行列情報を付加して、前記表形式データを生成してもよい。
【0011】
上記情報抽出方法において、前記表形式データにおけるテキストデータの内容およびテキストデータの位置関係に基づいて前記表形式データの類型を特定するとき、あらかじめ記憶装置に格納された前記テキストの内容および前記テキストの位置関係に対応する情報と比較してもよい。
【0012】
上記情報抽出方法において、前記図形は、四角形であり、前記図形座標データは、四角形の頂点の座標であってもよい。
【0013】
上記情報抽出方法において、前記テキストデータは、複数のテキストデータを含み、前記複数のテキストデータのうち、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとの関係に基づいて前記第1テキストデータおよび前記第2テキストデータとを関連付けてもよい。
【0014】
上記情報抽出方法において、前記テキストデータは、複数のテキストデータを含み、前記複数のテキストデータのうち、同じ図形に配置される、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとを比較して、前記第1テキストデータおよび前記第2テキストデータの並び順および改行の有無の少なくともいずれかの情報を取得してもよい。
【0015】
上記情報抽出方法において、前記図形は、複数の図形を含み、前記複数の図形において、第1図形と、第2図形とが、共通する共通座標を有し、前記共通座標が、第3図形の第1頂点の座標と、前記第1頂点に隣り合う第2頂点の座標との間にあるとき、前記第3図形は、前記第1図形および前記第2図形を結合させた結合図形であると判定してもよい。
【0016】
上記情報抽出方法において、前記表形式データを生成するときに、前記第3図形を前記第1図形と同じ長さを有する第4図形、および前記第2図形と同じ長さを有する第5図形に分割し、前記第3図形に含まれたテキストデータを、前記第4図形および前記第5図形のそれぞれに入力してもよい。
【0017】
上記情報抽出方法において、抽出された少なくとも一つのテキストデータを、前記第1文書データとは異なる第2文書データを生成するための入力フォーマットに入力することを、含んでもよい。
【0018】
上記情報抽出方法において、抽出されたテキストデータに対して補正処理を行うことを、含んでもよい。
【0019】
本発明の一実施形態によれば、上記情報抽出方法をコンピュータに実行させるためのプログラムが提供される。
【0020】
本発明の一実施形態によれば、第1文書データに含まれるテキストデータの各々に対応するテキスト座標データ、および前記第1文書データにおいて前記テキストデータが配置される図形に対応する図形座標データに基づいて表形式データを生成し、前記表形式データのうち所定の条件を満たすテキストデータを抽出する制御部を含む、情報抽出システムが提供される。
【0021】
本発明の一実施形態によれば、第1文書データに含まれるテキストデータに対応するテキスト座標データ、および前記第1文書データにおいて前記テキストデータが配置される図形に対応する図形座標データに基づいて表形式データを生成する、表形式データの生成方法が提供される。
【0022】
上記表形式データの生成方法において、前記図形は、第1図形および第2図形を含み、
前記第1図形における第1頂点の座標と、前記第2図形のうち前記第1図形における前記第1頂点に対応する第2頂点の座標との差分が、所定の条件を満たすときに、前記第1図形の前記第1頂点と前記第2図形の前記第2頂点とが近似すると判定し、前記第1図形の前記第1頂点と前記第2図形の前記第2頂点とを重畳させてもよい。
【0023】
上記表形式データの生成方法において、前記所定の条件は、前記差分が前記テキストデータの高さを所定の値で割った値以下であってもよい。
【0024】
上記表形式データの生成方法において、前記テキストデータは、複数のテキストデータを含み、前記複数のテキストデータのうち、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとの関係に基づいて前記第1テキストデータおよび前記第2テキストデータとの位置を関連付けてもよい。
【0025】
上記表形式データの生成方法において、前記テキストデータは、複数のテキストデータを含み、前記複数のテキストデータのうち、同じ図形に配置される、第1テキストデータの第1テキスト座標データと、第2テキストデータの第2テキスト座標データとを比較して、前記第1テキストデータおよび前記第2テキストデータの並び順および改行の有無の少なくともいずれかの情報を取得してもよい。
【0026】
上記表形式データの生成方法において、前記図形は、複数の図形を含み、前記複数の図形において、第1図形と、第2図形とが、共通する共通座標を有し、前記共通座標が、第3図形の第1頂点の座標と、前記第1頂点に隣り合う第2頂点の座標との間にあるとき、前記第3図形は、前記第1図形および前記第2図形を結合させた結合図形であると判定してもよい。
【0027】
上記表形式データの生成方法において、前記表形式データを生成するときに、前記第3図形を前記第1図形と同じ長さを有する第4図形、および前記第2図形と同じ長さを有する第5図形に分割し、前記第3図形に含まれたテキストデータを、前記第4図形および前記第5図形のそれぞれに入力してもよい。
【発明の効果】
【0028】
本発明の一実施形態を用いることにより、電子文書内に含まれる情報の中から必要な情報を簡単に抽出することができる。
【図面の簡単な説明】
【0029】
【
図1】本発明の一実施形態に係る情報抽出システムにおけるハードウェアの構成を示す図である。
【
図2】本発明の一実施形態に係る情報抽出システムの各構成要素によって構成された機能ブロック図を示す。
【
図3】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図4】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図5】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図6】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図7】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図8A】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図8B】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図9】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図10】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図11A】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図11B】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図12】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図13A】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図13B】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図14】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図15A】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図15B】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図16A】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図16B】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図16C】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図16D】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図17】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図18】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図19】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図20】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図21】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図22】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【
図23】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図24】本発明の一実施形態に係る情報抽出方法のフロー図である。
【
図25】本発明の一実施形態に係る情報抽出方法を説明するための模式図である。
【発明を実施するための形態】
【0030】
以下、本発明の実施の形態を、図面等を参照しながら説明する。但し、本発明は多くの異なる態様で実施することが可能であり、以下に例示する実施の形態の記載内容に限定して解釈されるものではない。図面は説明をより明確にするため、模式的に表される場合があるが、あくまで一例であって、本発明の解釈を限定するものではない。
【0031】
また、各要素に対する「第1」、「第2」と付記された文字は、各要素を区別するために用いられる便宜的な標識であり、特段の説明がない限りそれ以上の意味を有さない。なお、本実施形態で参照する図面において、同一部分または同様な機能を有する部分には同一の符号または類似の符号(数字にA,Bまたは1,2などを付しただけの符号)を付し、その繰り返しの説明は省略する場合がある。また、構成の一部が図面から省略される場合がある。その他、本発明の属する分野における通常に知識を有する者であれば認識できるものである場合、特段の説明を行わないものとする。
【0032】
<第1実施形態>
本発明の第1実施形態に係る情報抽出システムおよび情報抽出方法について、図面を参照しながら詳細に説明する。
【0033】
(1-1.情報抽出システムのハードウェア構成)
図1に、情報抽出システム1のハードウェア構成を示す。
図1に示すように、情報抽出システム1は、情報抽出サーバ10、ユーザ通信端末30を含む。情報抽出サーバ10は、情報抽出用のデータベースおよびアプリケーションサーバとして機能する。ユーザ通信端末30は、電子文書(この例では、見積書)の作成を行うユーザの端末である。本実施形態では、説明の便宜上、一つのユーザ通信端末30を用いる場合を示すが、適宜複数のユーザ通信端末30が用いられてもよい。
【0034】
情報抽出システム1において、ユーザ通信端末30は、ネットワークNWを介して情報抽出サーバ10に情報(この例では見積情報)が記載されたPDFデータを送信する。情報抽出サーバ10は、PDFデータを読み取り、解析を行う。そして、解析結果から見積情報に含まれるテキストデータの中から必要な情報を抽出する。情報抽出サーバ10は、抽出された情報を入力フォームに入力することにより、抽出された情報を含む新たな電子文書を生成することができる。
【0035】
情報抽出サーバ10は、制御部11、記憶部12、通信部13および表示部14を有する。
【0036】
制御部11は、コンピュータの一つであり、CPU(Central Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programable Gate Array)、またはその他の演算処理回路を用いて、後述する情報抽出制御のソフトウェア(プログラム)に規定された命令に基づく処理を制御する。また、制御部11からの命令によって、情報抽出制御プログラムを実行するためのユーザインターフェースが表示部14に提供される場合がある。
【0037】
記憶部12には、SSD(ステップSolid State Drive)の半導体メモリ等のほか、磁気記録媒体(磁気テープ、磁気ディスク等)、光記録媒体、光磁気記録媒体、記憶媒体である記憶可能な素子が用いられる。記憶部12は、情報抽出制御用プログラムで用いられる情報抽出制御情報を記憶するデータベースとしての機能を有する。記憶部12は、適宜情報抽出サーバ10と異なるサーバに設けられ、データベースとして機能してもよい。
【0038】
通信部13は、送受信機を有し、ネットワークNWを介して、ユーザ通信端末30と情報抽出情報の通信を行う。通信部13と、ユーザ通信端末30との通信は、インターネット(具体的にはSSL/TLSまたはVPN)を用いてなされる。
【0039】
ユーザ通信端末30は、表示部31、制御部32、記憶部33、操作部34および通信部35を有する。ユーザ通信端末30は、スマートフォン、携帯電話(フィーチャーフォン)、タブレット型端末、ノート型PC、デスクトップ型PC、IoTデバイス(電源機構、通信機能および情報記憶機構を備えた機器)などでもよく、ネットワークを通じて情報抽出サーバ10と通信可能なものであれば適用可能である。
【0040】
表示部31は、液晶ディスプレイまたは有機ELディスプレイなどの表示デバイスであって、制御部32から入力される信号により表示内容が制御される。
【0041】
制御部32は、コンピュータの一つであり、CPU、ASIC、FPGA、またはその他の演算処理回路を備える。制御部32は、表示部31および操作部34の操作に基づいてメモリなどの記憶部33に記憶されたプログラムを実行させ、情報抽出サーバ10の記憶部12に記憶された情報抽出制御処理プログラムに関連する処理の実行を指示する。
【0042】
操作部34は、コントローラー、キーボード、ボタン、またはスイッチを含む。操作部34は、上下左右への移動、押圧、または回転などの動作がなされることにより、その動作に基づく情報が制御部32に送信される。なお、タッチセンサを有する表示装置(タッチパネル)であれば、表示部31と操作部34とが、同じ場所に配置されてもよい。
【0043】
通信部35は、情報抽出サーバ10と送受信する機能を有する。例えば、通信部35には、LAN送受信機(例えばWi-Fi送受信機)が用いられる。なお、送受信機は、LAN送受信機に限定されず、携帯端末用通信(例えばLTE通信)用の送受信機が設けられてもよいし、近距離無線通信用の送受信機が設けられてもよい。ユーザ通信端末30は、ネットワークNWを介して情報抽出サーバ10と接続される。
【0044】
(1-2.情報抽出制御部100の構成)
図2は、情報抽出システム1の各構成要素によって構成された機能ブロック図である。
【0045】
情報抽出システム1は、情報抽出機能を実現させるプログラム(情報抽出プログラム)を制御する情報抽出制御部100を有する。情報抽出制御部100は、取得部110、判定部120、生成部130、抽出部140、入力部150、送信部160を含む。
【0046】
取得部110は、、情報抽出制御処理における各取得処理を行う機能を有する。この例では、ユーザ通信端末30から送信された見積情報を含むPDFデータ、外部のウェブサイトに情報を入力するための情報、PDFデータから得られたテキストデータおよび図形データの座標データなどを取得する。取得した情報は、記憶部12に設けられたデータベースに記憶される。
【0047】
判定部120は、情報抽出制御処理における各判定(設定)処理を行う機能を有する。この例では、判定部120は、取得したPDFデータを判定し、テキストデータの読み取り方法を設定する機能、各座標データ間を比較する機能、表形式データの類型を特定する機能を有する。また、外部のウェブサイトに情報を入力するための情報から表形式データのうちどのデータを抽出するかを判定する機能を有する。
【0048】
生成部130は、テキストデータおよび図形データの座標データに基づいて表形式データを生成する機能を有する。
【0049】
抽出部140は、表形式データの中から、抽出対象のテキストデータを抽出する機能を有する。
【0050】
入力部150は、抽出されたテキストデータを、外部のウェブサイトの入力フォームに入力する機能を有する。
【0051】
送信部160は、生成された表形式データをユーザ通信端末30に送信する機能を有する。
【0052】
(1-3.情報抽出制御処理)
次に、情報抽出制御部100における情報抽出プログラムによる命令に基づいた情報抽出制御処理について説明する。
図3は、情報抽出制御処理のフロー図である。
図3に示すように、情報抽出制御処理は、第1情報抽出制御処理S100、第2情報抽出制御処理S200、第3情報抽出制御処理S300、および第4情報抽出制御処理S400を含む。
【0053】
第1情報抽出制御処理S100は、情報抽出対象となる電子文書(PDFデータ)の取得処理を含む。第2情報抽出制御処理S200は、PDFデータから表形式データを生成する処理を含む。第3情報抽出制御処理S300は、表形式データから必要なデータを抽出する処理を含む。第4情報抽出制御処理S400は、入力フォーマットに抽出したデータを入力する処理を含む。それぞれの情報抽出制御処理を分けて説明する。
【0054】
(1-3-1.第1情報抽出制御処理S100)
図4は、第1情報抽出制御処理S100のフロー図である。
図4において、まず、ユーザ通信端末30と情報抽出サーバ10との通信を行う。このとき、ユーザは、ユーザ通信端末30の表示部31に表示されたWebブラウザ300上において情報抽出サーバ10にログインする(ステップS101)。ログインする際には、ユーザIDを入力してもよい。ログインが完了した後、ユーザは、WEBブラウザ300上のユーザインターフェースにおいて、ユーザ通信端末30の記憶部33に格納されている電子文書データ(ファイル)のうち情報抽出をしたい電子文書データ(この例ではPDFデータ)を選択入力する(ステップS103)。このとき、処理実行などボタンのアイコンをクリックしてもよい。これにより、選択されたPDFデータは、情報抽出サーバ10に送信され(ステップS105)、情報抽出サーバ10は、当該PDFデータを受信(取得)する(ステップS107)。取得されたPDFデータは、記憶部12のPDFファイル用のデータベース(DB)12aに格納される。以上により、第1情報抽出制御処理S100が終了となる。
【0055】
(1-3-2.第2情報抽出制御処理)
図5は、第2情報抽出制御処理S200のフロー図である。第2情報抽出制御処理S200は、第1情報抽出制御処理S100に続いて実行される。第2情報抽出制御処理S200は、テキストデータおよび図形データの座標データ取得処理S210および表形式データの生成処理S230を含む。
【0056】
図6は、テキスト(テキストデータ)および図形(図形データ)の座標データ取得処理S210のフロー図である。
図6において、まず、情報抽出サーバ10は、取得したPDFデータの読み取り処理を実行する(ステップS211)。このとき、情報抽出サーバ10は、PDFデータの種類を分析する(ステップS213)。具体的には、PDFデータにおいてテキストが埋め込まれているか(認識できる)どうかを判定する。PDFデータにおいてテキストが埋め込まれている(テキストが画像処理されている)と判定した場合(ステップS213;Yes)、光学的文字認識(Optical Character Recognition/Reader:OCR)処理を実行し(ステップS214)、テキストを認識することができるようにする。
【0057】
PDFデータにおいてテキストが埋め込まれてない(テキストが画像処理されていない)と判定した場合(ステップS113;No)、情報抽出サーバ10は、PDFデータからテキスト、およびPDFデータに存在する図形を認識する(ステップS215)。この例では、図形は、罫線で囲まれている長方形(四角形)をいう。
【0058】
次に、情報抽出サーバ10は、認識されたテキスト、および図形の座標データを取得する(ステップS217)。取得された座標データは、座標DB12bに格納される。
図7は、PDFデータに対して座標設定をするための模式図である。本実施形態では、PDFデータが一つのページからなる例を示す。
図7に示すように、PDFデータにおいて、左上を原点(0,0)とし、X軸方向(第1方向DR1)、Y軸方向(第2方向DR2)を設定する。これにより、PDFデータにおける各位置における座標を設定することができる。
【0059】
本実施形態において、PDFデータを見積書データファイルとしたとき、見積書データファイルにはテキストおよび図形が含まれる。
図8Aおよび
図8Bは、図形およびテキストの座標の設定方法を示す模式図である。
図8Aに示すように、図形が長方形(四角形)の場合、長方形の各頂点の座標(「図形座標データ」ともいう)を取得する。具体的には、長方形における左上(X1,Y1)、右上(X2,Y1)、左下(X1,Y2)、右下(X2、Y2)の座標が取得される。例えば、これらの座標をまとめて[X1,Y1,X2,Y2]として取得してもよい。
【0060】
また、本実施形態では、
図8Bに示すように、テキストにおいて一文字毎の座標を取得するとともに、あらかじめ設定された文字間隔を有する文字列を一つのテキストとして認識する。この場合、テキストの左上(x3,y3)、右上(x4,y3)、左下(x3,y4)、右下(x4,y4)の座標(「テキスト座標データ」ともいう)が取得される。テキストにおいても、これらの座標をまとめて[x3,y3,x4,y4]として取得してもよい。より具体的には、
図8Bに示すように、テキスト「ゆるみ止め機能六角ナット」の座標は[1227.0358800431472,1007.1871747459584,1606.2654164020728,1039.6883455706106]となる。なお、1文字ごとにテキストとして認識してもよい。
【0061】
図9および
図10は、表形式データの生成処理S230のフロー図である。
図9において、まず、情報抽出サーバ10は、図形の重なりを評価判定する(ステップS231)。
図11A,Bおよび
図12は、各図形の重なりを評価するための模式図である。
図11Aには、6つの図形RectA~Fが示される。このとき、各図形の重なり度合は、図形の座標を比較することにより行われる。具体的には、図形RectAの右上(AX2,AY1)と、図形RectCの左上[CX1,CY1]の座標が同一、図形RectAの左下(AX1,AY2)と、図形RectDの左上[DX1,DY1]の座標が同一、図形RectAの右下(AX2,AY2)と図形RectCの左下[CX1,CY2]、図形RectDの右上[DX2,DY1]の同一である場合、
図11Bに示すように、図形RectA,C,Dが重なる部分を有すると判定される。その結果、図形RectA,C,Dを結合させる(纏める)処理が行われる。同様に、図形RectBの右下(BX2,BY2)と、図形RectEの右上[EX2,EY1]の同一である場合、
図11Bに示すように、図形RectB,Eが重なる部分を有すると判定される。その結果、図形RectB,Eを結合させる(纏める)処理が行われる。
【0062】
なお、上記において、図形の一部同士が同一である例を示したが、本発明はこれに限定されない。図形の一部同士が近似であってもよい。図形の一部同士が近似する場合、2つの図形を結合(重ね)してもよい。図形の一部同士の近似は、以下のように定義する。図形Aの座標[AX1,AY1,AX2,AY2]、四角Bの座標[BX1,BY1,BX2,BY2]、図形Aに配置される文字aの座標[ax1,ay1,ax2,ay2],図形Bに配置される文字bの座標[bx1,by1,by2,by2]とした場合、以下の数式
AY1<BY1
且つ
(BY1-AY2) < (ay2-ay1)÷5
を満たすときに、近似しているとみなす。つまり、このとき、図形Aの左下の座標と、図形Bの左上での座標との間の隙間(y軸方向の差分)がフォントサイズに応じたテキストの高さを所定の値で割った値以下であるときに、図形の一部同士が近似すると判定される。
【0063】
さらに、図形RectAの右下(AX2,AY2)、図形RectCの左下[CX1,CY2]、図形RectDの右上[DX2,DY1]の座標と、図形RectBの左上(BX1,BY1)が同一であり、図形RectDの右下(DX2,DY2)と図形RectBの左下[BX1,BY2]の座標が同一であり、図形RectCの右下(CX2,CY2)と図形RectBの右上[BX2,BY1]の座標が同一である場合、図形RectB,C,Dが重なる部分を有すると判定される。その結果、
図12に示すように、図形RectBと図形RectC、図形RectBと図形RectDを結合させる(纏める)処理が行われる。これらの処理により、結果的には、5つの図形RectA~Eが結合される。このように、同一の大きさを有する(表を構成するための)図形同士を纏めることによりテーブルの領域が特定される。
【0064】
次に、図形とテキストの座標を比較して、各テキストデータの位置を関連付ける(ステップS233)。
図13Aおよび
図13Bは、図形とテキストの模式図を示す。
図13Aに示すように、各テキストの座標と、各図形の座標が比較(突合)される。この例では、テキスト「車種」の座標は[ax1,ay1,ax2,ay2]である。テキスト「CAR-A」の座標は[bx1,by1,bx2,by2]である。テキスト「ナンバー」の座標は[cx1,cy1,cx2,cy2]である。テキスト「品川333は12345」の座標は[dx1,dy1,dx2,dy2]である。テキスト「車両取得年月日」の座標は[ex1,ey1,ex2,ey2]である。テキスト「2022年2月22日」の座標は[fx1,fy1,fx2,fy2]である。テキスト「事故履歴無し」の座標は[gx1,gy1,gx2,gy2]である。この場合、情報抽出サーバ10は、テキスト「ナンバー」と図形RectAとの比較において、cx1>AX1、cx2<AX2、cy1>AY1、cy2<DY1(AY2)の関係を有すると判定する。このとき、情報抽出サーバ10は、
図13Bに示すように、テキスト「ナンバー」を図形RectAに配置する(関連付ける)。同様の方法により、テキスト「品川333は12345」は、図形RectCに配置される。テキスト「車種」は、図形RectDに配置される。テキスト「CAR-A」は、図形RectBに配置される。テキスト「車両取得年月日」、「2022年2月22日」、「事故履歴無し」は、図形RectEに配置される。この処理により、各テキストがどの図形に含まれるか(配置される)が特定される。
【0065】
次に、同じ図形の中に複数のテキストが含まれているかどうかを判定する(ステップS235)。同じ図形の中に複数のテキストが含まれていると判定したとき、テキスト同士の位置を比較し、テキストの並び順や改行の有無を特定する(ステップS237)。
図14は、テキストの並び順や改行の有無の判定方法を示すルールデータボックスである。
図14に示すように、テキスト「車両取得年月日」の座標と、テキスト「2022年2月22日」の座標を比較したとき、テキスト「車両取得年月日」のy座標の比率ey2/ey1と、テキスト「2022年2月22日」のy座標の比率fy2/fy1が同一または近似であるとき、2つのテキストにおけるy軸の中心点が近い、すなわち同じ行に配置されると判定する。この場合の文字同士の「近似」とは、ey2/ey1とfy2/fy1との差があらかじめ設定された範囲内(例えば-1以上+1以下)にあることをいう。また、テキスト「車両取得年月日」のx座標ex2よりもテキスト「2022年2月22日」のx座標fx1が大きいとき、テキスト「車両取得年月日」の右側にテキスト「2022年2月22日」が配置されていると認識する。
【0066】
次に、テキスト「車両取得年月日」の座標[ex1,ey1,ex2,ey2]と、テキスト「事故履歴なし」の座標[gx1,gy1,gx2,gy2]を比較したとき、以下の数式
ey2/ey1 < (gy2/gy1 - (gy2-gy1))
を満たすとき、テキスト「車両取得年月日」とテキスト「事故履歴なし」とが1文字分以上y軸方向において離れていると判定する。その結果、情報抽出サーバ10は、テキスト「車両取得年月日」とテキスト「事故履歴なし」との間に改行があると判定する。
【0067】
次に、情報抽出サーバ10は、図形同士の高さと横幅を比較し複数の図形にまたがる“結合セルデータ”を特定する(ステップS239)。
図15Aは、図形の連結状態を評価する模式図である。
図15Aに示すように、X座標(EX1、EX2)の間に図形RectDの右下頂点のX座標(DX2)(または図形RectBの左下頂点のX座標(BX1))という2つの図形で共通する座標(共通座標)がある。これにより、情報抽出サーバ10は、図形RectEが2つの図形が連結したもの(結合図形)であると判定する。
【0068】
次に、情報抽出サーバ10は、図形・テキスト同士の位置関係に基づき、行列のテーブルデータを生成する(ステップS241)。
図15Bは、テーブルデータである。
図15Bに示すように、行列のテーブルデータは、この例では、JSON形式で構成され、
[text:テキスト,rect:四角の座標,row:行番号,column:番号]
の順で構成される。これにより、各テキストデータに対して、行番号、列番号が付加され、テキストの位置関係が明確となる。
【0069】
次に、情報抽出サーバ10は、図形に含まれないテキストデータがあるかどうかを判定する(ステップS243)。図形に含まれないテキストデータがあると判定したとき(ステップS243;Yes)、情報抽出サーバ10は、図形に含まれないテキストデータ同士を比較する(ステップS245)。テキストデータ同士の比較には、ステップS237と同様の方法が用いられる。
【0070】
図16A~Dは、図形に含まれないテキストの判定方法を示すルールデータボックスである。
図16Aに示すように、テキスト「〒」は、座標[hx1,hy1,hx2,hy2]を有する。テキスト「150-0000」は、座標[ix1,iy1,ix2,iy2]を有する。テキスト「東京都渋谷区xxx0-0-0」は、座標[jx1,jy1,jx2,jy2]を有する。テキスト「株式会社MMM」は、座標[kx1,ky1,kx2,ky2]を有する。
【0071】
ここで、情報抽出サーバ10は、テキスト「〒」、テキスト「150-0000」、テキスト「東京都渋谷区xxx0-0-0」、テキスト「株式会社MMM」を比較する。このとき、
図16Bに示すように、情報抽出サーバ10は、y座標において、
hy2/hy1 ≒ iy2/iy1≒ jy2/jy1
の関係を有すると判定する。この場合、テキスト「〒」、テキスト「150-0000」、テキスト「東京都渋谷区xxx0-0-0」のy軸の中心点が近い(又は同一である)と判定する。この結果、情報抽出サーバ10は、テキスト「〒」、テキスト「150-0000」、テキスト「東京都渋谷区xxx0-0-0」が同じ行であると判定する。
【0072】
また、情報抽出サーバ10は、
図16Bに示すように、x座標において、
hx2 <ix1<ix2<jx1
の関係を有すると判定する。このとき、情報抽出サーバ10は、同一行にテキスト「〒」、テキスト「150-0000」、テキスト「東京都渋谷区xxx0-0-0」の順に並んでいると判定する。
【0073】
次に、情報抽出サーバ10は、テキスト「〒」、「株式会社MMM」を比較する。このとき情報抽出サーバ10は、
図16Bに示すように、y座標において、
hy2/hy1 < (ky2/ky1 - (ky2-ky1))
の関係を有している判定する。このとき、情報抽出サーバ10は、テキスト「〒」および「株式会社MMM」はy軸方向において1文字以上離れていると判定する。その結果、情報抽出サーバ10は、テキスト「〒」および「株式会社MMM」は別の行であると判定する。
【0074】
次に、情報抽出サーバ10は、テキスト「〒」とテキスト「150-0000」を比較する。このとき、情報抽出サーバ10は、
図16Cに示すように、x座標において、
(ix1-hx2)<(hx2-hx1)
の関係を有していると判定する。また、情報抽出サーバ10は、(hx2-hx1)を一文字分の幅と判定するととともに、テキスト「〒」とテキスト「150-0000」が隣接すると判定する。これにより、情報抽出サーバ10は、テキスト「〒」とテキスト「150-0000」を同一単語とみなして連結する。
【0075】
次に、情報抽出サーバ10は、テキスト「〒」、テキスト「150-0000」、テキスト「東京都渋谷区xxx0-0-0」を比較する。このとき、情報抽出サーバ10は、
図16Cに示すように、x座標において、
(jx1-ix2) > (hx2-hx1)
の関係を有していると判定する。このとき、情報抽出サーバ10は、テキスト「150-0000」、テキスト「東京都渋谷区xxx0-0-0」がx軸方向において1文字以上離れていると判定する。
【0076】
情報抽出サーバ10は、テキスト同士の位置関係に基づき、テーブル以外データを生成する(ステップS247)。
図16Dは、テーブル以外データである。
図16Dに示すように、テーブルデータは、この例では、JSON形式で構成される。このとき、テーブルデータの各テキストデータに対して行列情報が付与される。
【0077】
次に、情報抽出サーバ10は、ステップS241で生成されたテーブルデータおよびステップS247で生成されたテーブル以外データの並び順を整える(ステップS249)。
図17は、テーブルデータおよびテーブル以外データの並び順に関するルールおよびデータである。情報抽出サーバ10は、テーブル以外データのテキスト「株式会社MMM」のy座標ky2と、テーブルデータの図形rectAのy座標AYを比較する。このとき、情報抽出サーバ10は、
図17に示すように、y座標において、
ky2 < AY1
の関係を有していると判定する。この関係に基づき、情報抽出サーバ10は、テーブル以外データを「tableナンバー-1」、テーブルデータを「tableナンバー0」と設定する。
【0078】
次に、情報抽出サーバ10は、図形RectA~Eのそれぞれの高さと横幅を比較し、複数の図形にまたがる(複数の図形を結合させた)“結合図形(結合セル)”および結合セルに配置される“結合セルテキスト”を特定する(ステップS249)。この例では、情報抽出サーバ10は、
図13Bに示された図形の中から図形RectEを結合図形(結合セル)であると特定する。このとき、情報抽出サーバ10は、結合セルである図形RectEを隣接する他のセルと長さに合わせるように分割する。具体的には、
図18に示すように、図形RectEは、x軸方向において、図形RectDと、図形RectBの長さに合うように分割される(図形RectE-1、図形RectE-2が生成される)。
【0079】
次に、情報抽出サーバ10は、結合セルに配置されていたテキストデータを横に分割された各図形に配置する(ステップS253)。この例では、情報抽出サーバ10は、結合図形(結合セル)である図形RectEに配置されていたテキストデータ「Text: 車両取得年月日:2022年2月22日(改行)text:事故履歴なし」を図形RectE-1、図形RectE-2に対して配置する。この結果、表形式データが生成される。
【0080】
次に、情報抽出サーバ10は、表形式データを出力する(ステップS255)。
図19は、表形式データの出力例である。
図19に示すように、本実施形態では、表形式データはCSV形式で出力される。表形式データは、各テキストデータに対応する列情報(例えば、C1,C2)および行情報(例えば、R1,R2,R3)のような行列情報を含む。行列情報は、表形式データの各テキストに付加される。以上により、第2情報抽出制御処理S200が終了する。
【0081】
(1-3-3.第3情報抽出制御処理)
図20は、第3情報抽出制御処理S300のフロー図である。第3情報抽出制御処理S300は、第2情報抽出制御処理S200に続いて実行される。
図20において、まず、情報抽出サーバ10は、表形式のデータに含まれるテキストの内容(ルールベース)およびテキストの位置関係に基づき、どの会社の見積データであるか(表形式データの類型)を特定する(ステップS301)。この例では、表形式データに含まれる識別可能な特定の文字情報を抽出し、記憶部12に設けられた辞書データベース(DB)12cにあらかじめ格納され、規定されたルールベースに基づいて、表形式データ(読み取った文書データ)がどのの見積データであるかを特定する。
【0082】
図21は、辞書DB12cに格納されたテキスト情報と、テキストの位置情報のデータセットの一例である。具体的には、
図21に示すように、表形式データに含まれるテキスト「ナンバー」と、あらかじめ辞書DB12cに格納されたテキストデータの内容およびテキストデータの位置関係に対応する情報と対比し、どの見積書データであるかが特定される。より具体的には、表形式データに含まれる第1列C1,第1行R2に配置されるテキスト「ナンバー」の部分に対して、辞書DB12cには、A損保の場合「車体番号,(C1,R2)」、B損保の場合「ナンバー,(C1,R1)」、C損保の場合「ナ ン バ ー,(C1,R1)」、D損保の場合「ナンバー,(C1,R2)」と登録(記憶)されている。このとき、A損保の「車体番号」はテキストの内容(言い回し)およびテキストの配置(表形式データにおける座標)が異なる。C損保の場合、テキスト内の文字の間隔(隙間)が異なり、テキストの配置が同一である。D損保の場合、テキストが同一であり、テキストの配置が異なる。そして、B損保の場合、テキストの内容およびテキストの配置完全に一致する。その結果、表形式データは、B損保の見積書データであることが特定される。
【0083】
一方、抽出した情報が複数の会社情報と一致する場合には、別の情報から判定してもよい。この場合、表形式データの中に含まれる別の情報「対人賠償」が抽出する場合、同様の判定処理が行われる。この場合、A損保「相手への賠償」、B損保「対人賠償」、C損保「対 人 賠 償」、このとき、A損保の「相手への賠償」は言い回しが異なる。C損保の「対 人 賠 償」の場合、文字間の隙間の間隔が異なる。そして、B損保の場合、完全に記載が一致する。その結果、表形式データは、B損保の見積書データであることが判定(特定)される。なお、表形式データを特定するときに、ユーザは表形式データがどの種類の見積書データであるかを入力してもよい。さらに、PDFデータ(見積書)内のその他の表記(例えば、「プラン名」の表記)に基づき判定してもよい。
【0084】
さらに、本実施形態の場合、表形式データにおける相対的な位置関係の情報を用いて見積情報を特定してもよい。例えば、表形式データにおいて、「ナンバー」は、第1列C1,第2行R2に配置されている。この位置情報に加えて、ナンバーが表示された行(第1行)の次の行(第3行)に「車種」が配置される。ナンバーが表示された列(第1列)の次の列(第2列)車両の実際の番号が配置される。これらの相対的な位置関係に基づいて、A損保、B損保、C損保のうちいずれの損害保険会社の見積情報であるかを判定(特定)することができる。
【0085】
次に、上記判定処理S301に基づき、表形式データが辞書DB12cに登録済みである場合(表形式データが辞書DB12cに格納された情報により特定された場合)(ステップS303;Yes)、情報抽出サーバ10は、表形式データの類型に基づいて、特定された表形式データのうち所定の条件を満たすテキストデータを抽出する。特定された表形式データの中から所望の電子データの入力フォーマットに入力可能な情報であるデータを抽出する。この例では、見積算出に必要なデータを抽出する(ステップS305)。
図22は、辞書DB12cに格納された辞書データのうち見積算出に必要な項目を定義した抽出情報データセットである。この例では、抽出情報データセットは、JSONデータとして定義される。見積算出に必要なデータは、見積書入力フォーマットにおいてあらかじめ決められた入力可能な情報である。
【0086】
情報抽出サーバ10は、特定された表形式データから抽出情報データの各々に対応するデータを抽出する。例えば、情報抽出サーバ10は、
図22の抽出情報データセットのなかから、「ナンバー」に対応する情報を抽出する。このとき、
図19の表形式データにおいて「ナンバー」の次の列(第2列C2,第2行R2)に記載された「品川 333 は 12345」が抽出される。情報抽出サーバ10は、同様の処理を抽出情報データセットに含まれた各データに対して繰り返し実行する。
【0087】
一方、表形式データが辞書DB12cに登録されていない場合(表形式データが辞書DB12cに格納された情報により特定されない場合)(ステップS303;Yes)、情報抽出サーバ10は、登録要求情報を生成し、ユーザ通信端末30に送信する(ステップS311)。登録要求情報は、ユーザ通信端末30の表示部31に表示される(ステップS313)。登録要求情報に基づき、登録情報が入力される(登録指示情報を生成する)(ステップS313)。この例では、ユーザは、特定されていないPDFデータ(例えば、E損保の見積書)に記載された情報をユーザ通信端末30に入力する。登録指示情報および入力された情報は、情報抽出サーバ10に送信される(ステップS317)。情報抽出サーバ10は、入力された情報を辞書DB12cに登録(格納)する(ステップS319)。登録された後、抽出処理が行われる(ステップS305)。これにより、特定されていないPDFデータに対しても、特定されたPDFデータと同様に、抽出処理を行うことができる。
【0088】
次に、情報抽出サーバ10は、見積算出に必要な項目を定義した抽出情報データセットに、抽出したデータを付加する。また、情報抽出サーバ10は、抽出したデータが付加された抽出情報データセットをユーザ通信端末30(ブラウザ)にデータを送信する(ステップS307)。これにより、ユーザ通信端末30において、抽出したデータが付加された抽出情報データセットを表示することができる。以上により、第3情報抽出制御処理S300が終了となる。
【0089】
(1-3-4.第4情報抽出制御処理)
図23は、第4情報抽出制御処理S400のフロー図である。第4情報抽出制御処理S400は、第3情報抽出制御処理S300に続いて実行される。
図22において、まず、情報抽出サーバ10は、でブラウザを起動する(ステップS401)。この例では、Selenium(ブラウザをエミュレートするオープンソースのライブラリ)が用いられてもよい。
【0090】
次に、情報抽出サーバ10は、記憶部12に予め格納済みのID・パスワード情報を見積作成用のブラウザに入力し、ログインする(ステップS403)。
【0091】
次に、情報抽出サーバ10は、新たな見積書(「第2文書データ」ともいう)作成(の対象とする会社の見積)用フォーム入力ページにおいて、ステップS305で抽出したデータを含む抽出情報データセットから対応する部分に適合するテキストデータを入力する(ステップS405)。
【0092】
次に、情報抽出サーバ10は、上記のように入力したことにより生成された見積書情報を記憶部12に保存・格納する(ステップS407)。このとき、情報抽出サーバ10は、他のPDFデータ(ファイル)があるかどうかを判定する(ステップS409)。他のPDFデータがあるとき(ステップS409;Yes)、ステップS100に戻る。他のPDFデータがないとき(ステップS409;No)、第4情報抽出制御処理S400が終了となる。
【0093】
本実施形態を用いることにより、PDFデータを読み取り、解析結果から見積情報に含まれるテキストデータのなかから必要な情報を簡単に抽出することができる。また、抽出された情報を入力フォームに入力することにより、複数の見積情報を含んだ文書データを容易に生成することができる。
【0094】
また、本実施形態を用いることにより、電子文書の形式によらずにデータを構造化することができる。その結果、必要な情報を容易に抽出することができる。また、それぞれの用語とその位置関係を簡単に関連付けることができる。また、この処理を行うことにより、開発コストも安くなる。
【0095】
また、本実施形態の場合、辞書DB12cに格納されたデータを用いることにより、PDFデータのような電子文書に対して、教師データを用いた人工知能(AI)による学習プロセスがなくても文書の類型を判定することができる。
【0096】
なお、第4情報抽出制御処理S400において、ブラウザを起動し、ログインして情報を入力する例を示したが、本発明はこれに限定されない。例えば、見積情報以外の情報では、所定のシステムに対して直接入力してもよい。
【0097】
<第2実施形態>
本実施形態では、表形式データのうち一部の情報をユーザにより補正する場合について説明する。なお、第1実施形態と同様の部分については、適宜説明を省略する。
【0098】
図24は、第3情報抽出制御処理のフロー
図S300Aである。
図24に示すように、抽出したデータが付加された抽出情報データセットをユーザ通信端末30(ブラウザ)に送信した後(ステップS307)、ユーザ通信端末30の表示部31に抽出情報データセットが表示される(ステップS321)。このとき、ユーザは、抽出情報データセットのうち、一部のテキストを補正(修正)ための入力処理を行うことができる(ステップS323)。例えば、抽出情報データセットの中で、誤った情報が抽出されている、又は一部の情報が抽出できず欠落している場合が挙げられる。このとき、補正された抽出情報データセットは、ユーザ通信端末30の表示部31に表示される(ステップS325)とともに、情報抽出サーバ10に送信される(ステップS327)。情報抽出サーバ10は、補正された抽出情報データセットを取得(格納)することができる(ステップS329)。
【0099】
本実施形態を用いることにより、抽出されなかった部分を次回の抽出処理の際に、もれなく抽出することができる。
【0100】
(変形例)
本発明の思想の範疇において、当業者であれば、各種の変更例および修正例に想到し得るものであり、それら変更例および修正例についても本発明の範囲に属するものと了解される。例えば、前述の各実施形態に対して、当業者が適宜、構成要素の追加、削除若しくは設計変更を行ったもの、各実施形態の組み合わせ、又は、処理の追加、省略若しくは条件変更を行ったものも、本発明の要旨を備えている限り、本発明の範囲に含まれる。
【0101】
本発明の第1実施形態では、PDFデータが一つのページからなる例を示したが、本発明はこれに限定されない。PDFデータが複数ページからなるときは、各ページにおいて、原点を設定してもよいし、1ページ目から連続するものとして座標を設定してもよい。
【0102】
本発明の第1実施形態では、見積書から情報を読み取る例を示したが、本発明はこれに限定されない。見積書以外にも、保険証券やその他の情報が記載された文書データであればよい。また、紙媒体の場合、光学的文字認識(OCR)処理をかけてから本発明の一実施形態を用いて情報抽出を行ってもよい。
【0103】
本発明の第1実施形態では、図形として四角形を用いる例を示したが、本発明はこれに限定されない。図形には、三角形や五角形が用いられてもよい。また、図形には、円が用いられてもよい。円の場合、中心点の座標と、X軸方向及びY軸方向の点を取得してもよい。
【0104】
本発明の第1実施形態では、電子文書としてPDFデータを用いる例を示したが、本発明はこれに限定されない。電子文書のファイル形式は、BMP、JPEG、TIFF、PNGなどの画像形式であってもよい。また、Micrsoft社のWord形式、PPT形式でもよいし、Adobe社のAI形式などでもよい。
【0105】
本発明の第1実施形態では、図形に含まれないテキストデータに対する処理は、図形に含まれるテキストデータに対する処理の後で行われる例を示したが、本発明はこれに限定されない。図形に含まれるテキストデータと同じタイミングで行われてもよい。
【0106】
本発明の第1実施形態では、表形式データとして図形を含むデータが出力されたが、本発明はこれに限定されない。
図25は、表形式データの異なる表示例である。
図25に示すように、一つの行は、[xxx]形で区切られ、各テキストは、コンマで区切られてもよい。
【0107】
本発明は、情報抽出サーバによって情報抽出制御処理がなされる例を示したが、本発明はこれに限定されない。情報抽出制御プログラムがユーザ通信端末30の記憶部33に格納される場合、ユーザ通信端末30のみを用いて情報抽出制御処理が行われてもよい。
【0108】
本発明の一実施形態では、PDFデータがどの情報に特定されるか判定した後、見積書情報に必要な情報を抽出する例を示したが、本発明はこれに限定されない。PDFデータが辞書DB12cに登録されたどのデータに適合するかを特定するのと同時に、抽出処理が行われてもよい。
【0109】
また、本発明の一実施形態において、抽出されたデータを含む抽出情報データセットに対して分析処理を行ってもよい。また、抽出情報データセットにおいて、一部欠落がある場合には、情報抽出サーバ10は、ユーザ通信端末30に警告情報を送信してもよい。
【0110】
本発明の第1実施形態では、電子文書として見積書の例を示したが、本発明は、これに限定されない。例えば、電子文書は、見積書以外にも、請求書、仕様書など、テキストまたは図形が含まれるものであれば、特に制限されない。
【符号の説明】
【0111】
1・・・情報抽出システム,10・・・情報抽出サーバ,10・・・適宜情報抽出サーバ,11・・・制御部,12・・・記憶部,13・・・通信部,14・・・表示部,30・・・ユーザ通信端末,31・・・表示部,32・・・制御部,33・・・記憶部,34・・・操作部,35・・・通信部,100・・・情報抽出制御部,110・・・取得部,120・・・判定部,130・・・生成部,140・・・抽出部,150・・・入力部,160・・・送信部,300・・・ブラウザ