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

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

▶ フリー株式会社の特許一覧

特許7537044情報処理システム、情報処理方法、及び、情報処理プログラム
<>
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図1
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図2
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図3
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図4
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図5
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図6
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図7
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図8
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図9
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図10
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図11
  • 特許-情報処理システム、情報処理方法、及び、情報処理プログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-08-09
(45)【発行日】2024-08-20
(54)【発明の名称】情報処理システム、情報処理方法、及び、情報処理プログラム
(51)【国際特許分類】
   G06V 30/412 20220101AFI20240813BHJP
   G06V 30/12 20220101ALI20240813BHJP
   G06Q 10/00 20230101ALI20240813BHJP
   G06F 40/177 20200101ALI20240813BHJP
【FI】
G06V30/412
G06V30/12 B
G06Q10/00
G06F40/177
【請求項の数】 9
(21)【出願番号】P 2024066446
(22)【出願日】2024-04-16
【審査請求日】2024-04-16
【新規性喪失の例外の表示】特許法第30条第2項適用 令和6年1月15日 フリー株式会社が、ウェブサイトのアドレスhttps://box.sweeep.ai/login(ログイン画面)にて発表
【早期審査対象出願】
(73)【特許権者】
【識別番号】513056101
【氏名又は名称】フリー株式会社
(74)【代理人】
【識別番号】100148725
【弁理士】
【氏名又は名称】吉田 信彦
(72)【発明者】
【氏名】義川 智也
(72)【発明者】
【氏名】今福 沙紀
【審査官】伊知地 和之
(56)【参考文献】
【文献】特開2023-081132(JP,A)
【文献】特開2010-033177(JP,A)
【文献】特開2015-118488(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00 - 40/197
G06Q 10/00 - 10/30
G06V 30/00 - 30/12
G06V 30/14 - 30/168
G06V 30/18 - 30/222
G06V 30/224
G06V 30/226 - 30/32
G06V 30/40 - 30/416
G06V 30/42 - 30/424
CSDB(日本国特許庁)
(57)【特許請求の範囲】
【請求項1】
帳票画像の表領域に対応し、テキスト形式を有する要素が行及び列に配列された表データから、金額が格納された金額列を分類する列分類条件を満たす前記列を前記金額列に分類する列分類部と、
前記表データにおけるボディ部から、行取得条件に基づいて、取得対象である取得対象行を取得する行取得部と、
前記取得対象行に含まれる前記要素に基づいて、前記金額列を含む明細を有する帳票情報を生成する、帳票情報生成部と、
ユーザによって指示入力された前記取得対象行に含まれる前記金額を合算し、前記帳票情報を生成するための明細行を生成する、合算部と、
を有する情報処理システム。
【請求項2】
前記列分類条件は、前記表データに含まれる前記列の見出部において、前記金額列であることを示す所定金額文字が含まれている条件を含む、請求項1に記載の情報処理システム。
【請求項3】
前記列分類条件は、前記表データに含まれる前記列のボディ部において、前記要素の全数に対する数字を含む前記要素の数の割合が、所定金額閾値以上である条件を含む、請求項1に記載の情報処理システム。
【請求項4】
前記列分類条件は、
前記表データに含まれる前記列の見出部において、前記要素に前記金額列であることを示す所定金額文字が含まれている前記列の評価値を第1所定金額評価値にし、
前記列のボディ部において、前記要素の全数に対する数字を含む前記要素の数の割合が、所定金額閾値以上である前記列の前記評価値を前記第1所定金額評価値よりも小さい第2所定金額評価値にし、
前記表データに含まれる前記列の中から最大の前記評価値を有する前記列を前記金額列に分類する条件である、
請求項1に記載の情報処理システム。
【請求項5】
前記行取得条件は、所定除外文字を有する前記要素を含む行を取得対象から除外する条件である、請求項1に記載の情報処理システム。
【請求項6】
表データ選択部を有し、
前記表データ選択部は、前記表データが複数あるとき、ユーザによる取得対象にする前記表データの選択入力を受け付ける、
請求項1に記載の情報処理システム。
【請求項7】
前記帳票情報生成部は、前記金額に勘定科目を対応付けた明細行を有する前記帳票情報を生成する、請求項1に記載の情報処理システム。
【請求項8】
列分類部が、帳票画像の表領域に対応し、テキスト形式を有する要素が行及び列に配列された表データから、金額が格納された金額列を分類する列分類条件を満たす前記列を前記金額列に分類し、
行取得部が、前記表データにおけるボディ部から、行取得条件に基づいて、取得対象である取得対象行を取得し、
帳票情報生成部が、前記取得対象行に含まれる前記要素に基づいて、前記金額列を含む明細を有する帳票情報を生成し、
合算部が、ユーザによって指示入力された前記取得対象行に含まれる前記金額を合算し、前記帳票情報を生成するための明細行を生成する、
情報処理方法。
【請求項9】
帳票画像の表領域に対応し、テキスト形式を有する要素が行及び列に配列された表データから、金額が格納された金額列を分類する列分類条件を満たす前記列を前記金額列に分類する列分類部のコードと、
前記表データにおけるボディ部から、行取得条件に基づいて、取得対象である取得対象行を取得する行取得部のコードと、
前記取得対象行に含まれる前記要素に基づいて、前記金額列を含む明細を有する帳票情報を生成する、帳票情報生成部のコードと、
ユーザによって指示入力された前記取得対象行に含まれる前記金額を合算し、前記帳票情報を生成するための明細行を生成する、合算部のコードと、
をコンピュータに実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、帳票情報を生成する情報処理システム、情報処理方法、及び、情報処理プログラムに関する。
【背景技術】
【0002】
従来、請求書等の帳票の画像である帳票画像を読み取り、読み取った帳票画像に基づいて、帳票情報を生成する情報処理システムがある。
【0003】
例えば、特開2022-013524号公報には、対象とする帳票画像の特徴量に対して、これと類似する過去の特徴量に対応付けられた帳票情報と、対象とする帳票画像から読み取った文字の情報とを用い、新たな帳票画像から、「請求日」や「支払期限」をOCRで読み取ることで帳票情報を生成する、帳票情報生成装置が開示される。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2022-013524号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、実際の取引の場においては、発行者によって様々な様式の帳票が用いられるものの、従来の情報処理システムは、特に、テンプレートとなる帳票情報等が予め用意されていない新規様式の帳票について、正しく金額の明細を含む帳票情報を生成することが難しいことがある。
【0006】
そこで、本発明の実施形態は、様々な様式で発行された帳票であっても、帳票に対応した金額の明細を含む帳票情報をより正しく生成する、情報処理システム、情報処理方法、及び、情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
実施形態に係る情報処理システムは、列分類部、行取得部、帳票情報生成部、及び、合算部を有する。前記列分類部は、帳票画像の表領域に対応し、テキスト形式を有する要素が行及び列に配列された表データから、金額が格納された金額列を分類する列分類条件を満たす前記列を前記金額列に分類する。前記行取得部は、前記表データにおけるボディ部から、行取得条件に基づいて、取得対象である取得対象行を取得する。前記帳票情報生成部は、前記取得対象行に含まれる前記要素に基づいて、前記金額列を含む明細を有する帳票情報を生成する。前記合算部は、ユーザによって指示入力された前記取得対象行に含まれる前記金額を合算し、前記帳票情報を生成するための明細行を生成する。
【0008】
実施形態に係る情報処理方法は、列分類部が、帳票画像の表領域に対応し、テキスト形式を有する要素が行及び列に配列された表データから、金額が格納された金額列を分類する列分類条件を満たす前記列を前記金額列に分類し、行取得部が、前記表データにおけるボディ部から、行取得条件に基づいて、取得対象である取得対象行を取得し、帳票情報生成部が、前記取得対象行に含まれる前記要素に基づいて、前記金額列を含む明細を有する帳票情報を生成し、合算部が、ユーザによって指示入力された前記取得対象行に含まれる前記金額を合算し、前記帳票情報を生成するための明細行を生成する。
【0009】
実施形態に係る情報処理プログラムは、列分類部のコード、行取得部のコード、帳票情報生成部のコード、及び、合算部のコードをコンピュータに実行させる。前記列分類部のコードは、帳票画像の表領域に対応し、テキスト形式を有する要素が行及び列に配列された表データから、金額が格納された金額列を分類する列分類条件を満たす前記列を前記金額列に分類する。前記行取得部のコードは、前記表データにおけるボディ部から、行取得条件に基づいて、取得対象である取得対象行を取得する。前記帳票情報生成部のコードは、前記取得対象行に含まれる前記要素に基づいて、前記金額列を含む明細を有する帳票情報を生成する。前記合算部のコードは、ユーザによって指示入力された前記取得対象行に含まれる前記金額を合算し、前記帳票情報を生成するための明細行を生成する。
【発明の効果】
【0010】
本発明の実施形態は、様々な様式で発行された帳票であっても、帳票に対応した金額の明細を含む帳票情報をより正しく生成する、情報処理システム、情報処理方法、及び、情報処理プログラムを提供することができる。
【図面の簡単な説明】
【0011】
図1】実施形態に係る情報処理システムの全体構成の一例を示すブロック図である。
図2】実施形態に係る情報処理システムの内部構成の一例を示すブロック図である。
図3】実施形態に係る情報処理システムにおいて、表データ取得部によって表データを取得するための帳票画像の一例を示す図である。
図4】(A)(B)は、実施形態に係る情報処理システムおいて、表データ取得部が取得した表データの一例である。
図5】実施形態に係る情報処理システムにおける、列分類条件の一例を説明する表である。
図6】実施形態に係る情報処理システムが表示する帳票処理画面の一例を示す図である。
図7】実施形態に係る情報処理システムが表示する帳票処理画面の部分拡大図である。
図8】実施形態に係る情報処理システムが表示する帳票処理画面における金額の合算表示の一例を示す図である。
図9】実施形態に係る情報処理システムが表示する帳票処理画面における勘定科目及び税区分の入力例を示す図である。
図10】実施形態に係る情報処理システムが表示する帳票情報表示画面の一例を示す図である。
図11】実施形態に係る情報処理システムにおける、帳票読込処理の一例を示すフローチャートである。
図12】実施形態に係る情報処理システムにおける、帳票情報生成処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0012】
(実施形態の構成)
以下、図面を参照して、実施形態を説明する。
図1は、情報処理システム1の全体構成の一例を示すブロック図である。
【0013】
図1に示すように、情報処理システム1は、端末装置10とサーバ20を有する。端末装置10は、LANや、インターネット、移動体通信等のネットワークを介してサーバ20に接続される。端末装置10は、企業等の組織における会計担当者等のユーザによって用いられる。
【0014】
図2は、情報処理システム1の内部構成の一例を示すブロック図である。
【0015】
図2に示すように、端末装置10は、例えば、パソコンやスマホ等の情報端末である。端末装置10は、ユーザの指示入力に基づいて、サーバ20に、帳票画像Iを送信する。端末装置10は、制御部11、及び、記憶部12、表示部13、及び、指示入力部14を有する。
【0016】
制御部11は、CPU等の処理装置を有し、記憶部12から読み込んだプログラムを実行することによってその機能を実現する。
【0017】
記憶部12は、ROMや、RAM、HDD、SSD等の記憶素子を有し、端末装置10を制御するための各種の情報や、処理部を構成する各種のプログラムを記憶する。
【0018】
表示部13は、LCDや、LED、OLED等によって構成され、制御部11から入力された各種の情報を表示可能である。
【0019】
指示入力部14は、例えば、キーボードやマウス等の入力装置を有し、ユーザが入力した各種の指示入力を制御部11に出力する。
【0020】
サーバ20は、制御部21と記憶部22を有する。
【0021】
制御部21は、CPU等の処理装置を有し、記憶部22から読み込んだプログラムを実行することによってその機能を実現する。
【0022】
記憶部22は、ROMや、RAM、HDD、SSD等の記憶素子を有し、サーバ20を制御するための処理部を構成する各種のプログラムや、プログラムによって使用される各種の情報を記憶する。例えば、記憶部22は、表データ取得部P1、列分類部P2、行取得部P3、表データ選択部P4、帳票情報生成部P5、及び、合算部P6の各々のプログラムを記憶する。
【0023】
図3は、帳票画像Iの一例を示す図である。
【0024】
図3に示すように、表データ取得部P1によって表データTが取得される帳票画像Iは、例えば、請求書であり、一又は複数の表領域Aの他、請求日、請求書番号、登録番号、発行者、件名、及び、請求金額等が含まれる。
【0025】
図4は、表データ取得部P1が取得した表データTの一例である。図4(A)に示す表データT1の第1列の第4行における要素E「6」は、帳票画像Iにおける「c」が誤ってテキスト変換された例を示す。
【0026】
図4に示すように、表データ取得部P1は、帳票画像Iの表領域Aに基づいて、テキスト形式を有する要素Eが行及び列に配列された表データTを取得する。例えば、表データ取得部P1は、テキスト抽出処理によって帳票画像Iに基づくテキストを抽出し、抽出されたテキストの位置からグリッド状に配置された複数のテキストを検出することによって表データTを取得する。また、表データ取得部P1は、ハフ変換等の罫線抽出技術によって帳票画像Iから抽出された罫線に囲まれた表領域A及び要素Eを取得して要素E毎にテキスト化された表データTを取得してもよい。
【0027】
表データ取得部P1は、帳票画像Iの表領域Aが複数ある場合には、表データTも複数取得する。例えば、図3に例示された帳票画像Iでは、表データ取得部P1は、表領域A1から、表データT1として、第1行における見出部Hの要素E「摘要」「数量」「単価」「明細金額」と、第2行におけるボディ部Bの要素E「a」「1」「100」「100」と、第3行~第5行の各々のボディ部Bの要素E(要素値省略)を取得する。また、表データ取得部P1は、表領域A2から、表データT2として、第1行における「小計」「1,000円」と、第2行における「消費税」「100円」と、第3行における「合計」「1,100円」も取得する。以下、表データT1、及び、表データT2の両方、又は、いずれか一方を示すとき、表データTという。
【0028】
図5は、列分類条件の一例を説明する表である。
【0029】
図5に示すように、列分類部P2は、帳票画像Iに含まれる表領域Aに対応し、テキスト形式を有する要素Eが行及び列に配列された表データTから、金額が格納された金額列Cmを分類する列分類条件を満たす列を金額列Cmに分類する。
【0030】
より具体的に、列分類部P2は、表データTに含まれる列の見出部Hにおいて、要素Eに金額列Cmであることを示す所定金額文字が含まれている列の金額の評価値を第1所定金額評価値にする。例えば、所定金額文字が「金額」又は「小計」であり、第1所定金額評価値が1.0である。また、列分類部P2は、列のボディ部Bにおいて、要素Eの全数に対する数字を含む要素Eの数の割合が、所定金額閾値以上である列の金額の評価値を、第2所定金額評価値にする。例えば、所定金額閾値が0.7であり、第2所定金額評価値が0.6である。第2所定金額評価値は、第1所定金額評価値よりも低い値にしられる。
【0031】
また、列分類部P2は、単価が格納された単価列Cuを分類する列分類条件を満たす列を単価列Cuに分類する。列分類部P2は、見出部Hにおいて、要素Eに単価列Cuであることを示す所定単価文字が含まれている列の単価の評価値を所定単価評価値にする。例えば、所定単価文字は「単価」である。所定単価評価値は、例えば、1.0である。
【0032】
また、列分類部P2は、数量が格納された数量列Cnを分類する列分類条件を満たす列を数量列Cnに分類する。列分類部P2は、見出部Hにおいて、要素Eに数量列Cnであることを示す所定数量文字が含まれている列の数量の評価値を所定数量評価値にする。例えば、所定数量文字は「数量」である。所定数量評価値は、例えば、1.0である。
【0033】
また、列分類部P2は、品目が格納された品目列Ciを分類する列分類条件を満たす列を品目列Ciに分類する。列分類部P2は、見出部Hにおいて、要素Eに品目列Ciであることを示す第1所定品目文字が含まれている列の品目の評価値を第1所定品目評価値にする。例えば、第1所定品目文字が「品目」であり、第1所定品目評価値が1.0である。また、列分類部P2は、見出部Hにおいて、要素Eに第2所定品目文字が含まれている列の品目の評価値を第2所定品目評価値にする。例えば、第2所定品目文字が「摘要」であり、第2所定品目評価値が0.8である。また、列分類部P2は、列のボディ部Bにおいて、要素Eの全数に対する数字を含まない要素Eの数の割合が、所定品目閾値以上である列の品目の評価値を、第3所定品目評価値にする。例えば、所定品目閾値が0.7であり、第3所定品目評価値が0.6である。第1所定品目評価値、第2所定品目評価値、第3所定品目評価値の順に、値が低くなる。
【0034】
また、列分類部P2は、日付が格納された日付列Cdを分類する列分類条件を満たす列を日付列Cdに分類する。列分類部P2は、見出部Hにおいて、要素Eに日付列Cdであることを示す所定日付文字が含まれている列の日付の評価値を所定日付評価値にする。所定日付文字は、例えば、「日付」である。所定日付値は、例えば、1.0である。
【0035】
列分類部P2は、前方一致又は後方一致等を指定した正規表現を用い、列の見出部Hに、所定金額文字、所定単価文字、所定数量文字、第1所定品目文字、第2所定品目文字、及び、所定日付文字が含まれていることを検出可能である。所定金額文字、所定単価文字、所定数量文字、第1所定品目文字、第2所定品目文字、及び、所定日付文字は、ここで例示した以外にも、経験的又は実験的に、列分類部P2が、列を正しく分類できるように調整可能である。
【0036】
列分類部P2は、表データTに含まれる列の中から、金額の評価値が最大である列を金額列Cmに分類し、単価の評価値が最大である列を単価列Cuに分類し、数量の評価値が最大である列を数量列Cnに分類し、品目の評価値が最大である列を品目列Ciに分類し、日付の評価値が最大である列を日付列Cdに分類する。
【0037】
例えば、図4(A)における表データT1に示すように、金額列Cmについて、第4列では、ボディ部Bにおいて、要素Eの全数(4)に対する数字を含む要素Eの数(4)の割合が1.0に算出され、所定金額閾値(0.7)以上であるため、金額の評価値が0.6になる条件を満たすものの、見出部Hに所定金額文字「金額」が含まれるため、全体として、金額の評価値が1.0である。第2列と第3列は、ボディ部Bの要素Eのすべてに数字を含むため金額の評価値が0.6である。第1列については、第4行の誤認識「6」によって要素Eの全数(4)に対する数字を含む要素Eの数(1)の割合が0.25に算出されるものの、所定金額閾値(0.7)未満であるため、金額の評価値が0である。したがって、表データTに含まれる第1列から第4列の中で最大の金額の評価値を有する第4列が金額列Cmに分類される。
【0038】
また、単価列Cuについて、第3列には、所定単価文字「単価」が含まれ、単価の評価値が1.0である。一方、第1列、第2列、第4列は、単価の評価値が0である。したがって、表データTに含まれる列の中で最大の単価の評価値を有する第3列が単価列Cuに分類される。
【0039】
また、数量列Cnについて、第2列には、所定数量文字「数量」が含まれ、数量の評価値が1.0である。一方、第1列、第3列、第4列は、数量の評価値が0である。したがって、表データTに含まれる列の中で最大の数量の評価値を有する第2列が数量列Cnに分類される。
【0040】
また、品目列Ciについて、第1列は、ボディ部Bにおいて、第4行の誤認識「6」によって要素Eの全数(4)に対する数字を含まない要素Eの数(3)の割合(0.75)が、所定品目閾値(0.7)以上であるため、品目の評価値が0.6になる条件を満たすものの、第2所定品目文字が含まれるため、全体として、品目の評価値は、0.8である。一方、第2列から第4列は、品目の評価値が0である。したがって、表データTに含まれる列の中で最大の品目の評価値を有する第1列が品目列Ciに分類される。
【0041】
また、日付列Cdについて、表データT1は、第1列から第4列のいずれも所定日付文字を含まず、日付列Cdを有しない。
【0042】
これにより、列分類部P2は、表領域A1から取得した表データT1について、第1列を品目列Ciに分類し、第2列を単価列Cuに分類し、第3列を数量列Cnに分類し、第4列を金額列Cmに分類する。
【0043】
すなわち、列分類条件は、表データTに含まれる列の見出部Hにおいて、金額列Cmであることを示す所定金額文字が含まれている条件を含む。また、列分類条件は、表データTに含まれる列のボディ部Bにおいて、要素Eの全数に対する数字を含む要素Eの数の割合が、所定金額閾値以上である条件を含む。列分類条件は、表データTに含まれる列の見出部Hにおいて、要素Eに金額列Cmであることを示す所定金額文字が含まれている列の評価値を第1所定金額評価値にし、列のボディ部Bにおいて、要素Eの全数に対する数字を含む要素Eの数の割合が、所定金額閾値以上である列の評価値を第1所定金額評価値よりも小さい第2所定金額評価値にし、表データTに含まれる列の中から最大の評価値を有する列を金額列Cmとして分類する条件である。
【0044】
行取得部P3は、表データTにおけるボディ部Bから、行取得条件に基づいて、取得対象である取得対象行Tuを取得する。行取得条件は、所定除外文字を有する要素Eを含む行を取得対象から除外する条件である。行取得部P3は、表データTにおけるボディ部Bから処理対象になる行のすべての要素Eを取得し、取得した要素Eが所定除外文字を有しているとき、当該行を取得対象から除外する。所定除外文字は、例えば、「小計」、「合計」、「消費税」、「源泉」、及び、「税額」である。所定除外文字列は、ここで例示した以外にも、経験的又は実験的に取得対象行Tuが正しく取得できるように調整可能である。
【0045】
また、行取得部P3では、処理対象になる行のすべての要素Eを取得し、取得した要素Eが「小計」の文字を有しているとき、その処理対象になる行の金額列Cmに格納されている数字を小計として取得し、記憶部22に記憶させる。また、行取得部P3では、処理対象になる行のすべての要素Eを取得し、取得した要素Eが「税額」の文字を有しているとき、その処理対象になる行の金額列Cmに格納されている数字を税額として取得し、記憶部22に記憶させる。
【0046】
例えば、図4(A)における表データT1では、ボディ部Bのすべてが取得対象行Tuにされる。また、図4(B)における表データT2では、第1行が見出部Hと判断されて取得対象から除外され、また、第2行が所定除外文字「消費税」を含むことから取得対象から除外され、第3行が所定除外文字「合計」を含むことから取得対象から除外され、すべての行が取得対象から除外される。
【0047】
図6は、帳票処理画面G1の一例を示す図である。図7は、帳票処理画面G1の部分拡大図である。図8は、帳票処理画面G1における合算表示の一例を示す図である。図9は、帳票処理画面G1における勘定科目及び税区分の入力例を示す図である。
【0048】
表データ選択部P4は、表データTが複数あるとき、ユーザによる取得対象にする表データTの選択入力を受け付ける。より具体的には、図6に示すように、表データTが複数取得されたとき、表データ選択部P4は、帳票処理画面G1にチェックボックスを表示し、ユーザによって選択される表データTを選択入力可能にする。ユーザによる選択入力があると、表データ選択部P4は、選択入力のあった表データTを取得対象に含める。例えば、図6の例では、帳票処理画面G1に「表1」と表示されている表領域A1に対応した表データT1が、ユーザによって選択され、取得対象に含められる。
【0049】
帳票情報生成部P5は、取得対象行Tuに含まれる要素Eに基づいて、少なくとも金額列Cmを含む明細Dを有する帳票情報を生成する。帳票情報生成部P5は、帳票処理画面G1の上側における取得対象行表示領域Guに取得対象行Tuを表示し、下側における明細行表示領域Gdに明細行Tdを表示する。
【0050】
ユーザは、分類された列の要素Eをセットする明細行Tdの項目を指示入力することが可能である。図6の例では、帳票処理画面G1の上段に「品目を反映する項目」、「単価を反映する項目」、「数量を反映する項目」、「金額を反映する項目」の欄が設けられ、「品目を反映する項目」が明細行Tdの「摘要」に指示入力され、「金額を反映する項目」が明細行Tdの「本体金額」に指示入力される。
【0051】
図7に示すように、帳票情報生成部P5は、ユーザによって指示入力された行を明細行Tdから除外可能である。ユーザが、取得対象行表示領域Guに表示された取得対象行Tuの左側に設けられたチェックボックスをチェックし、「反映しない」ボタンをクリックすると、帳票情報生成部P5は、明細行表示領域Gdに表示された明細行Tdからチェックされた行を除外する。
【0052】
合算部P6は、ユーザによって指示入力された取得対象行Tuに含まれる金額を合算し、帳票情報を生成するための明細行Tdを生成する。図7の例では、帳票処理画面G1に表示された表データTの左側のチェックボックスをチェックし、「合算する」ボタンをクリックすることによって、図8に例示する、帳票情報にチェックされた取得対象行Tuの金額を合算した明細行Tdを生成する。生成された明細行Tdは、合算キーによって識別される。
【0053】
帳票情報生成部P5は、明細行Tdにおける勘定科目と税区分のユーザによる指示入力を受け付ける。勘定科目は、仕訳に用いられる情報であり、図9の入力例では「消耗品費」である。また、税区分は、消費税に関する取引を分類するための情報であり、図9の入力例では「課税仕入10%」である。帳票情報生成部P5は、「課税仕入10%」等の税区分の指示入力があると、金額と税区分に示される消費税率を乗算して税込み金額を算出して表示する。また、帳票情報生成部P5は、金額等が誤ってテキスト変換されている場合等に、ユーザの修正入力を受け付ける。
【0054】
図10は、帳票情報表示画面G2の一例を示す図である。
【0055】
図10に示すように、ユーザが、明細行Tdに勘定科目と税区分を指示入力した後、「反映」ボタンをクリックすると、帳票情報生成部P5は、金額に勘定科目を対応付けた明細Dを有する帳票情報を生成し、帳票情報表示画面G2を表示する。図10の例では、明細Dには、金額の他、税込金額、勘定科目、税区分が含まれる。また、図10における帳票情報表示画面G2には、明細Dの他にも、取引先、金額、取引日、支払期日、支払日、支払方法、振込先口座、チーム(部門)、担当者、タグ、及び、案件等の情報が表示される。これらの情報は、帳票画像Iに基づいて、所定のテキスト抽出処理によって抽出できた場合に表示され、抽出できなかった場合にはブランクにされる。例えば、取引先であれば、帳票画像Iから抽出されたテキストが帳票画像Iから予め記憶部22に記憶された取引先リストに含まれている場合に、取引先の欄に表示される。
【0056】
ユーザが指示入力すると、帳票情報生成部P5は、明細Dを含む帳票情報を外部出力する。会計システム等の業務システムは、明細Dを含む帳票情報を読み込み、後続の処理を行うことができる。
【0057】
(動作)
帳票読込処理について説明をする。
図11は、帳票読込処理の一例を示すフローチャートである。
【0058】
ユーザが、指示入力部14を介して指示入力を行い、帳票画像Iをサーバ20に送信すると、サーバ20は、表データ取得部P1の処理を開始する。
【0059】
表データ取得部P1は、帳票画像Iに基づいて、行及び列に要素Eが配列された表データTを取得する(S1)。列分類部P2は、列分類条件に基づいて、表データTに含まれる列を金額列Cm、単価列Cu、数量列Cn、品目列Ci、又は、日付列Cdのいずれかに分類する(S2)。行取得部P3は、処理対象になる行のすべての要素Eを取得し、要素Eのいずれかが所定除外文字を有しているとき、当該行を取得対象から除外し、処理はS5に進む(S3:NO)。すべての要素Eが所定除外文字を有していないとき、当該行を取得対象行Tuとし、処理はS4に進む(S4)。
【0060】
S4では、取得対象行Tuを取得し、明細行Tdを生成する。
【0061】
処理対象になる行が残っているとき、処理はS3に戻る(S5:NO)。一方、すべての処理対象になる行の処理が終了したとき、処理はS6に進む(S5:YES)。
【0062】
処理対象になる表データTが残っているとき、処理はS2に戻る(S6:NO)。一方、すべての処理対象になる表データTの処理が終了したとき、処理は、終了する。
【0063】
S1~S6の処理が帳票読込処理を構成する。
【0064】
続いて、帳票情報生成処理について説明する。
図12は、帳票情報生成処理の一例を示すフローチャートである。
【0065】
表データ取得部P1によって表データTが複数取得されると、表データ選択部P4は、帳票処理画面G1にチェックボックスを表示し、処理対象にする表データTをユーザが選択入力できるようにする(S11)。ユーザがチェックボックスを操作すると、表データ選択部P4は、チェックボックスのチェック状態に応じて明細行Tdの追加、又は、削除を行う(S12:YES、S13)。ユーザによるチェックボックスの操作がなければ、S13をスキップし、S14に進む(S12:NO)。
【0066】
ユーザによる取得対象行Tuを除外する指示入力があったとき、帳票情報生成部P5は、指示入力のあった取得対象行Tuに対応した明細行Tdを除外する(S14:YES、S15)。ユーザによる取得対象行Tuを除外する指示入力がなければ、S15をスキップし、S16に進む(S14:NO)。
【0067】
ユーザによる取得対象行Tuを合算する指示入力があったとき、帳票情報生成部P5は、指示入力のあった取得対象行Tuの金額を合算した明細行Tdを生成して表示し、取得対象行Tuに合算キーを表示する(S16:YES、S17)。ユーザによる取得対象行Tuを合算する指示入力がなければ、S17をスキップし、S18に進む。
【0068】
ユーザによる勘定科目及び税区分の指示入力が終了していないとき、処理はS11に戻る(S18:NO)。一方、勘定科目及び税区分の指示入力が終了し、帳票情報を作成するためのユーザによる指示入力があったとき、帳票情報生成部P5は、明細行Tdに基づいて、帳票情報を生成する(S18:YES、S19)。
【0069】
S11~S19の処理が帳票情報生成処理を構成する。
【0070】
これにより、列分類部P2は、列分類条件に基づいて、見出部Hとボディ部Bについて評価値を算出して分類を行うため、帳票画像Iが新規の様式であった場合や、テキスト抽出を行う際に文字が誤認識された場合であっても、より正しく列を分類することができる。
【0071】
行取得部P3は、表データ取得部P1によって帳票画像Iから表データTが複数取得された場合であっても、明細Dの生成に不要な行を除外することができる。さらに、表データ選択部P4は、ユーザが不要と判断した表データTを除外することができる。
【0072】
帳票情報生成部P5は、ユーザが不要と判断する取得対象行Tuを除外することができ、合算部P6によってユーザが合算を望む取得対象行Tuを合算し、より正しい明細Dを含む帳票情報を生成することができる。
【0073】
実施形態によれば、情報処理システム1は、様々な様式で発行された帳票であっても、帳票に基づいて、より正しく金額の明細Dを含む帳票情報を生成することができる。
【0074】
なお、実施形態では、一例として、帳票画像Iが請求書の画像である例を説明したが、これに限定されない。帳票画像Iは、請求明細書、見積書、納品書、及び、保険証書等の帳票の画像でもよいし、他の帳票の画像でもよい。
【0075】
また、実施形態では、列分類部P2が、表データTにおける列を金額列Cm、単価列Cu、数量列Cn、品目列Ci、又は、日付列Cdのいずれかに分類する例を説明したがこれに限定されない。列分類部P2は、表データTにおける列を他の分類に分類してもよい。
【0076】
また、実施形態では、表データT1、T2を有する例を説明したが、表データTは1つでもよいし、3つ以上であってもよい。
【0077】
また、実施形態では、表データ取得部P1が帳票画像Iからテキスト抽出処理等によって表データTを取得する例を説明したが、帳票画像Iに表データTが埋め込まれているときには、帳票画像Iから直接埋め込まれた表データTを取得してもよい。
【0078】
すなわち、情報処理システム1は、帳票画像Iの表領域Aに対応し、テキスト形式を有する要素Eが行及び列に配列された表データTから、金額が格納された金額列Cmを分類する列分類条件を満たす列を金額列Cmに分類する列分類部P2と、表データTにおけるボディ部Bから、行取得条件に基づいて、取得対象である取得対象行Tuを取得する行取得部P3と、取得対象行Tuに含まれる要素Eに基づいて、金額列Cmを含む明細Dを有する帳票情報を生成する、帳票情報生成部P5と、を有する。
【0079】
列分類条件は、表データTに含まれる列の見出部Hにおいて、金額列Cmであることを示す所定金額文字が含まれている条件を含む。
【0080】
列分類条件は、表データTに含まれる列のボディ部Bにおいて、要素Eの全数に対する数字を含む要素Eの数の割合が、所定金額閾値以上である条件を含む。
【0081】
列分類条件は、表データTに含まれる列の見出部Hにおいて、要素Eに金額列Cmであることを示す所定金額文字が含まれている列の評価値を第1所定金額評価値にし、列のボディ部Bにおいて、要素Eの全数に対する数字を含む要素Eの数の割合が、所定金額閾値以上である列の評価値を第1所定金額評価値よりも小さい第2所定金額評価値にし、表データTに含まれる列の中から最大の評価値を有する列を金額列Cmとして分類する条件である。
【0082】
行取得条件は、所定除外文字を有する要素Eを含む行を取得対象から除外する条件である。
【0083】
表データ選択部P4は、表データTが複数あるとき、ユーザによる取得対象にする表データTの選択入力を受け付ける。
【0084】
合算部P6は、ユーザによって指示入力された取得対象行Tuに含まれる金額を合算し、帳票情報を生成するための明細行Tdを生成する。
【0085】
帳票情報生成部P5は、金額に勘定科目を対応付けた明細行Tdを有する帳票情報を生成する。
【0086】
情報処理方法は、列分類部P2が、帳票画像Iの表領域Aに対応し、テキスト形式を有する要素Eが行及び列に配列された表データTから、金額が格納された金額列Cmを分類する列分類条件を満たす列を金額列Cmに分類し、行取得部P3が、表データTにおけるボディ部Bから、行取得条件に基づいて、取得対象である取得対象行Tuを取得し、帳票情報生成部P5が、取得対象行Tuに含まれる要素Eに基づいて、金額列Cmを含む明細Dを有する帳票情報を生成する。
【0087】
情報処理プログラムは、帳票画像Iの表領域Aに対応し、テキスト形式を有する要素Eが行及び列に配列された表データTから、金額が格納された金額列Cmを分類する列分類条件を満たす列を金額列Cmに分類する列分類部P2のコードと、表データTにおけるボディ部Bから、行取得条件に基づいて、取得対象である取得対象行Tuを取得する行取得部P3のコードと、取得対象行Tuに含まれる要素Eに基づいて、金額列Cmを含む明細Dを有する帳票情報を生成する、帳票情報生成部P5のコードと、をコンピュータに実行させる。
【0088】
上述のとおり、本発明の実施形態を説明したが、実施形態は、これに限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
【0089】
また、実施形態における各手順の各ステップは、その性質に反しない限り、実行順序を変更し、複数同時に実行し、あるいは実行毎に異なった順序で実行してもよい。さらに、本実施形態における各手順の各ステップの全てあるいは一部をハードウェアにより実現してもよいし、プログラムによって実現してもよい。
【符号の説明】
【0090】
1 ・・・情報処理システム
10・・・端末装置
11・・・制御部
12・・・記憶部
13・・・表示部
14・・・指示入力部
20・・・サーバ
21・・・制御部
22・・・記憶部
B ・・・ボディ部
D ・・・明細
Cd・・・日付列
Ci・・・品目列
Cm・・・金額列
Cn・・・数量列
Cu・・・単価列
E ・・・要素
G1・・・帳票処理画面
G2・・・帳票情報表示画面
H ・・・見出部
Gd・・・明細行表示領域
Gu・・・取得対象行表示領域
I ・・・帳票画像
A、A1、A2・・表領域
P1・・・表データ取得部
P2・・・列分類部
P3・・・行取得部
P4・・・表データ選択部
P5・・・帳票情報生成部
P6・・・合算部
T、T1、T2・・表データ
Td・・・明細行
Tu・・・取得対象行

【要約】
【課題】 様々な様式で発行された帳票であっても、帳票に対応した金額の明細を含む帳票情報をより正しく生成する。
【解決手段】 情報処理システム1は、列分類部P2、行取得部P3、及び、帳票情報生成部P5を有する。列分類部P2は、帳票画像Iの表領域Aに対応し、テキスト形式を有する要素Eが行及び列に配列された表データTから、金額が格納された金額列Cmを分類する列分類条件を満たす列を金額列Cmに分類する。行取得部P3は、表データTにおけるボディ部Bから、行取得条件に基づいて、取得対象である取得対象行Tuを取得する。帳票情報生成部P5は、取得対象行Tuに含まれる要素Eに基づいて、金額列Cmを含む明細Dを有する帳票情報を生成する。
【選択図】図2
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12