(57)【特許請求の範囲】
【請求項１】
文字情報を含む画像データから前記文字情報を読み取り、読み取った前記文字情報の前記画像データにおける位置について推定するための学習モデルに関する機械学習を行う情報処理装置であって、
前記画像データを取得する画像データ取得部と、
前記画像データに含まれる前記文字情報の位置を識別し、読取項目として認識する読取項目認識部と、
読取項目における前記文字情報の文字認識を行い、テキストデータを生成するテキストデータ生成部と、
前記テキストデータと、あらかじめ記憶されている前記画像データに含まれる前記文字情報を示す正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行い、一致していると判定された前記テキストデータを前記画像データ単位で抽出する正解データ抽出部と、
抽出された前記テキストデータと、抽出された前記テキストデータの基になる前記画像データにおける読取項目の位置とに基づいて機械学習を行い、前記学習モデルの生成または更新を行う学習部と、を備え、
前記正解データ抽出部は、前記テキストデータと前記正解テキストデータとを比較して前記テキストデータの合致度を算出し、算出した合致度が所定の閾値以上の場合、前記テキストデータと前記正解テキストデータとが一致していると判定する、情報処理装置。
【請求項２】
前記正解データ抽出部は、
前記テキストデータにおける読取項目と、前記正解テキストデータにおける読取項目とを比較し、それぞれの読取項目が一致していると判定し、
一致していると判定された場合、前記テキストデータと、前記正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行う、請求項１に記載の情報処理装置。
【請求項３】
前記正解データ抽出部は、
前記テキストデータにおける読取項目と、前記正解テキストデータにおける読取項目とを比較して前記テキストデータの読取項目の合致度を算出し、算出した合致度が所定の閾値以上の場合、それぞれの読取項目が一致していると判定し、
一致していると判定された場合、前記テキストデータと、前記正解テキストデータとを読取項目ごとに比較して前記テキストデータの合致度を読取項目ごとに算出し、算出した合致度がそれぞれ所定の閾値以上の場合、前記テキストデータが一致していると判定して抽出する、請求項２に記載の情報処理装置。
【請求項４】
前記正解データ抽出部は、算出した合致度が読取項目ごとにそれぞれ異なる所定の閾値以上の場合、前記テキストデータが一致していると判定する、請求項３に記載の情報処理装置。
【請求項５】
認識された前記読取項目の前記画像データにおける位置と、前記読取項目から読み取られた前記テキストデータと、に基づき、前記読取項目の属性を設定する属性設定部を備える、請求項１から請求項４のいずれか１項に記載の情報処理装置。
【請求項６】
前記正解データ抽出部は、
前記テキストデータにおける読取項目の属性と、前記正解テキストデータにおける読取項目に設定された属性とを比較し、一致しているか否かの判定を行い、
一致していると判定された場合、前記テキストデータと、前記正解テキストデータとを属性ごとに比較し、一致しているか否かの判定を行う、請求項５に記載の情報処理装置。
【請求項７】
前記学習部は、抽出された前記テキストデータと、抽出された前記テキストデータの基になる前記画像データにおける読取項目の位置とを教師データとする教師あり機械学習を行う、請求項１から請求項６のいずれか１項に記載の情報処理装置。
【請求項８】
前記学習モデルに基づき、新たな画像データを取得して文字情報の文字認識を行い、新たなテキストデータを生成する画像データ読取部を備える、請求項１から請求項７のいずれか１項に記載の情報処理装置。
【請求項９】
文字情報を含む画像データから前記文字情報を読み取り、読み取った前記文字情報の前記画像データにおける位置について推定するための学習モデルに関する機械学習を行う情報処理方法であって、
画像データ取得部が行う、前記画像データを取得する画像データ取得ステップと、
読取項目認識部が行う、前記画像データに含まれる前記文字情報の位置を識別し、読取項目として認識する読取項目認識ステップと、
テキストデータ生成部が行う、読取項目における前記文字情報の文字認識を行い、テキストデータを生成するテキストデータ生成ステップと、
正解データ抽出部が行う、前記テキストデータと、あらかじめ記憶されている前記画像データに含まれる前記文字情報を示す正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行い、一致していると判定された前記テキストデータを前記画像データ単位で抽出する正解データ抽出ステップと、
学習部が行う、抽出された前記テキストデータと、抽出された前記テキストデータの基になる前記画像データにおける読取項目の位置とに基づいて機械学習を行い、前記学習モデルの生成または更新を行う学習ステップと、を備え、
前記正解データ抽出ステップは、前記テキストデータと前記正解テキストデータとを比較して前記テキストデータの合致度を算出し、算出した合致度が所定の閾値以上の場合、前記テキストデータと前記正解テキストデータとが一致していると判定する、情報処理方法。
【請求項１０】
文字情報を含む画像データから前記文字情報を読み取り、読み取った前記文字情報の前記画像データにおける位置について推定するための学習モデルに関する機械学習を行う情報処理プログラムであって、
前記画像データを取得する画像データ取得ステップと、
前記画像データに含まれる前記文字情報の位置を識別し、読取項目として認識する読取項目認識ステップと、
読取項目における前記文字情報の文字認識を行い、テキストデータを生成するテキストデータ生成ステップと、
前記テキストデータと、あらかじめ記憶されている前記画像データに含まれる前記文字情報を示す正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行い、一致していると判定された前記テキストデータを前記画像データ単位で抽出する正解データ抽出ステップと、
抽出された前記テキストデータと、抽出された前記テキストデータの基になる前記画像データにおける読取項目の位置とに基づいて機械学習を行い、前記学習モデルの生成または更新を行う学習ステップと、を電子計算機に実行させるための、情報処理プログラムであり、
前記正解データ抽出ステップは、前記テキストデータと前記正解テキストデータとを比較して前記テキストデータの合致度を算出し、算出した合致度が所定の閾値以上の場合、前記テキストデータと前記正解テキストデータとが一致していると判定する、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、文字情報を含む画像データから文字情報を読み取る情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
文字情報を含む画像データの例として、帳票類をイメージスキャナなどで読み取り、ＯＣＲ（Optical Character Recognition）処理を行うことにより、入力情報を所定の文字コードに変換し、テキストデータを生成する技術が普及している。
【０００３】
このような技術で行われる、帳票類からテキストデータを生成する処理は、所定のフォーマットで記載された定型的な帳票では、一定の精度により読取が可能であるが、非定型な帳票では、読取の精度が低いことがある。これは、非定型な帳票の場合、その帳票のどの位置にどのような記載項目が配置されているか不明であり、記載項目が不明な状態でＯＣＲ処理を行っても精度の高い読取は困難であることによる。
【０００４】
そのため、例えば、特許文献１には、非定型文書に対して文書構造解析を行う文書構造解析装置が開示されている。この文書構造解析装置では、読み込んだ文書の行を取得し、どのような行（タイトル、書き出し、前行からの続き等）であるか、属性ごとの属性確率が抽出され、可能性のある複数の文書構造を表現する多重仮設文書構造ネットワークを生成している。このネットワークを用いて、文書構造の曖昧性を低減しながら文書構造の整合性の分析を行っている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−１２７９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、一般的に使用されている帳票、特にビジネスの世界で使用されている文書のような帳票は、例えば請求書のように、作成する者によりフォーマットが異なることがあるが、記載内容としては似たような内容が記載されていることが多い。このような帳票について、特許文献１に記載のような煩雑な処理を必要とせずに、帳票を読み取って機械学習を行うことで、帳票のどの位置にどのような記載項目が配置されているかを精度よく把握することが可能な手法が望まれていた。
【０００７】
そこで、本開示では、文字情報を含む画像データを読み取って機械学習を行うことで読取項目の位置を認識する精度を上げることが可能な情報処理装置、情報処理方法及び情報処理プログラムについて説明する。
【課題を解決するための手段】
【０００８】
本開示の一態様における情報処理装置は、文字情報を含む画像データから文字情報を読み取り、読み取った文字情報の画像データにおける位置について機械学習を行う情報処理装置であって、画像データを取得する画像データ取得部と、画像データに含まれる文字情報の位置を識別し、読取項目として認識する読取項目認識部と、読取項目における文字情報の文字認識を行い、テキストデータを生成するテキストデータ生成部と、テキストデータと、あらかじめ記憶されている画像データに含まれる文字情報を示す正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行い、一致していると判定されたテキストデータを抽出する正解データ抽出部と、抽出されたテキストデータと、抽出されたテキストデータの基になる画像データにおける読取項目の位置とに基づいて機械学習を行い、学習モデルの生成及び更新を行う学習部と、を備える。
【０００９】
本開示の一態様における情報処理方法は、文字情報を含む画像データから文字情報を読み取り、読み取った文字情報の画像データにおける位置について機械学習を行う情報処理方法であって、画像データ取得部が行う、画像データを取得する画像データ取得ステップと、読取項目認識部が行う、画像データに含まれる文字情報の位置を識別し、読取項目として認識する読取項目認識ステップと、テキストデータ生成部が行う、読取項目における文字情報の文字認識を行い、テキストデータを生成するテキストデータ生成ステップと、正解データ抽出部が行う、テキストデータと、あらかじめ記憶されている画像データに含まれる文字情報を示す正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行い、一致していると判定されたテキストデータを抽出する正解データ抽出ステップと、学習部が行う、抽出されたテキストデータと、抽出されたテキストデータの基になる画像データにおける読取項目の位置とに基づいて機械学習を行い、学習モデルの生成及び更新を行う学習ステップと、を備える。
【００１０】
また、本開示の一態様における情報処理プログラムは、文字情報を含む画像データから文字情報を読み取り、読み取った文字情報の画像データにおける位置について機械学習を行う情報処理プログラムであって、画像データを取得する画像データ取得ステップと、画像データに含まれる文字情報の位置を識別し、読取項目として認識する読取項目認識ステップと、読取項目における文字情報の文字認識を行い、テキストデータを生成するテキストデータ生成ステップと、テキストデータと、あらかじめ記憶されている画像データに含まれる文字情報を示す正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行い、一致していると判定されたテキストデータを抽出する正解データ抽出ステップと、抽出されたテキストデータと、抽出されたテキストデータの基になる画像データにおける読取項目の位置とに基づいて機械学習を行い、学習モデルの生成及び更新を行う学習ステップと、を電子計算機に実行させる。
【発明の効果】
【００１１】
本開示によれば、画像データに含まれる文字情報の位置を識別して読取項目として認識し、画像データに含まれる文字情報の文字認識を行ってテキストデータを生成し、正解テキストデータと読取項目ごとに比較して一致しているか否かの判定を行い、一致していると判定されたテキストデータと基になる画像データとに基づいて機械学習を行う。そのため、画像データの読取精度を上げることが可能である。また、煩雑な処理を必要とせずに読取項目の位置を認識する精度を上げることが可能であるため、多くの手間を必要とせずに文字情報を含む画像データを読み取るための機械学習モデルを生成することが可能である。
【図面の簡単な説明】
【００１２】
【図１】本開示の一実施形態に係る情報処理システムを示す機能ブロック構成図である。
【図２】図１のユーザ端末２００を示す機能ブロック構成図である。
【図３】図１の情報処理装置１００の動作を示すフローチャートである。
【図４】図１の画像データ取得部１３１で取得される画像データＰ１の例を示す模式図である。
【図５】図１の読取項目認識部１３２で行われる読取項目の認識の例を示す模式図である。
【図６】図１のテキストデータ生成部１３３及び属性設定部１３４において生成及び属性設定されたテキストデータの例を示す模式図である。
【図７】図１の正解テキストデータＤＢ１２２に格納される正解データの例を示す模式図である。
【図８】図１の正解データ抽出部１３５における判定の例を示す模式図である。
【図９】本開示の一実施形態に係る情報処理システムを示す機能ブロック構成図である。
【図１０】本開示の一実施形態に係るコンピュータ７００を示す機能ブロック構成図である。
【発明を実施するための形態】
【００１３】
以下、本開示の実施形態について図面を参照して説明する。なお、以下に説明する実施形態は、特許請求の範囲に記載された本開示の内容を不当に限定するものではない。また、実施形態に示される構成要素のすべてが、本開示の必須の構成要素であるとは限らない。
【００１４】
（実施形態１）
＜構成＞
図１は、本開示の実施形態１に係る情報処理システム１を示す機能ブロック構成図である。この情報処理システム１は、限定ではなく例として、文字情報を含む画像データに含まれる文字情報の文字認識を行ってテキストデータを生成し、正常に読み込まれたテキストデータと、その基になる画像データとに基づいて機械学習を行うシステムである。情報処理システム１では、テキストデータが正常に読み込まれたか否かを判定するために、画像データに含まれる文字情報を示す正解テキストデータを備えている。生成されたテキストデータは、この正解テキストデータと比較して一致しているか否かが判定され、一致していると判定された場合に正常に読み込まれたテキストデータと判定される。
【００１５】
ここで、本実施形態では、文字情報を含む画像データとして、帳票類を画像としてスキャンした画像データを例として説明しているが、このような帳票データに限られない。この例において、スキャンの対象となる帳票類は、非定型文書である。非定型文書とは、例えば請求書のように、作成する者によりフォーマットが異なることがあるが、記載内容としては似たような内容が記載されている文書であるが、本実施形態における情報処理システム１でスキャンの対象とされる帳票類は、これに限られない。
【００１６】
情報処理システム１は、情報処理装置１００と、ユーザ端末２００と、ネットワークＮＷとを有している。情報処理装置１００と、ユーザ端末２００とは、ネットワークＮＷを介して相互に接続される。ネットワークＮＷは、通信を行うための通信網であり、限定ではなく例として、インターネット、イントラネット、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、ワイヤレスＬＡＮ（Wireless LAN：ＷＬＡＮ）、ワイヤレスＷＡＮ（Wireless WAN：ＷＷＡＮ）、仮想プライベートネットワーク（Virtual Private Network：ＶＰＮ）等を含む通信網により構成されている。
【００１７】
情報処理装置１００は、画像データに含まれる文字情報の位置を識別して読取項目として認識し、画像データに含まれる文字情報の文字認識を行ってテキストデータを生成し、このテキストデータと正解テキストデータと比較して一致しているか否かの判定を行い、一致していると判定されたテキストデータと基になる画像データとに基づいて、文字情報の画像データにおける位置について推定するための学習モデルに関する機械学習を行う装置である。この情報処理装置１００は、具体的には、限定ではなく例として各種装置を制御するコンピュータ（デスクトップ、ラップトップ、タブレット等）や、サーバ装置等により構成されている。なお、情報処理装置１００は、単体で動作する装置に限られず、複数の装置が通信網を介して相互に接続され、通信を行うことで協調動作する分散型サーバシステムや、クラウドサーバでもよい。
【００１８】
ユーザ端末２００は、ユーザが情報処理装置１００に対して行う操作入力を受け付ける装置であり、限定ではなく例として、スマートフォンや、携帯端末、コンピュータ（デスクトップ、ラップトップ、タブレットなど）等により構成されている。このユーザ端末２００では、限定ではなく例として、情報処理システム１のサービスの提供を受けるためのアプリがインストールされ、または情報処理装置１００にアクセスするためのＵＲＬ等が設定され、それらをタップまたはダブルクリック等して起動することにより、サービスが開始される。
【００１９】
情報処理装置１００は、通信部１１０と、記憶部１２０と、制御部１３０とを備える。
【００２０】
通信部１１０は、ネットワークＮＷを介してユーザ端末２００と有線または無線で通信を行うための通信インタフェースであり、互いの通信が実行できるのであればどのような通信プロトコルを用いてもよい。この通信部１１０は、限定ではなく例として、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）等の通信プロトコルにより通信が行われる。
【００２１】
記憶部１２０は、各種制御処理や制御部１３０内の各機能を実行するためのプログラムや入力データ等を記憶するものであり、限定ではなく例として、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等を含むメモリや、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、フラッシュメモリ等を含むストレージから構成される。また、記憶部１２０は、画像データＤＢ１２１と、正解Ｔ（テキスト）データＤＢ１２２と、テキストデータＤＢ１２３と、読取学習モデルＤＢ１２４とを記憶する。さらに、記憶部１２０は、ユーザ端末２００との間で通信を行った際のデータや、後述する各処理にて生成されたデータを一時的に記憶する。画像データＤＢ１２１、正解テキストデータＤＢ１２２、テキストデータＤＢ１２３、及び読取学習モデルＤＢ１２４は、制御部１３０の各種プログラムからアクセスされて参照、更新が可能なデータベースである。
【００２２】
画像データＤＢ１２１には、帳票類をスキャナ装置で画像としてスキャンした画像データ、またはこの画像データが格納されている格納先のパス情報が格納されている。この画像データは、ＯＣＲにより文字情報を読み取るためのものである。スキャンの対象となる帳票類は、前述のように例えば請求書等であり、請求書の請求元及び請求先の企業等は同一の企業等である必要はなく、請求書等のフォーマットも統一されている必要はない。なお、本実施形態ではスキャナ装置でスキャンされた画像データを対象としたが、紙媒体による帳票類が電子データ化されていればよく、例えば、カメラ等により撮像された写真画像データ等でもよい。
【００２３】
正解テキストデータＤＢ１２２には、画像データＤＢ１２１に格納されている画像データ（または画像データＤＢ１２１に格納されている格納先のパス情報から取得した画像データ）に含まれる文字情報が、正解テキストデータとして格納されている。この正解テキストデータは、ＯＣＲによる文字情報の読取が正常に行われたか否かを判定するために使用される。この正解テキストデータは、限定ではなく例として、基になる帳票類に記載されている項目ごとに格納されており、項目ごとに属性が設定されている。属性とは、例えばその項目の名称であり、「帳票名」、「会社名」、「日付」等である。
【００２４】
テキストデータＤＢ１２３には、画像データＤＢ１２１に格納されている画像データ（または画像データＤＢ１２１に格納されている格納先のパス情報から取得した画像データ）をＯＣＲにより、文字情報が読み取られて生成したテキストデータが格納されている。このテキストデータは、正常に読み込まれたか否かが判定され、正常に読み込まれたテキストデータは機械学習を行うために使用される。このテキストデータは、限定ではなく例として、正解テキストデータと同様に読み取られた帳票類に記載されている項目ごとに格納されており、項目ごとに属性が設定されている。
【００２５】
読取学習モデルＤＢ１２４には、正常に読み込まれたテキストデータにより機械学習が行われて生成された学習モデルが格納されている。この学習モデルは、帳票類を画像としてスキャンした画像データに含まれる文字情報の文字認識を行い、画像データにおける位置について推定してテキストデータを生成するためのモデル情報である。
【００２６】
制御部１３０は、記憶部１２０に記憶されているプログラムを実行することにより、情報処理装置１００の全体の動作を制御するものであり、限定ではなく例として、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＧＰＵ（Graphics Processing Unit）、マイクロプロセッサ（Microprocessor）、プロセッサコア（Processor core）、マルチプロセッサ（Multiprocessor）、ＡＳＩＣ（Application-Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）を含む装置等から構成される。制御部１３０の機能として、画像データ取得部１３１と、読取項目認識部１３２と、テキストデータ生成部１３３と、属性設定部１３４と、正解データ抽出部１３５と、学習部１３６とを備えている。この画像データ取得部１３１、読取項目認識部１３２、テキストデータ生成部１３３、属性設定部１３４、正解データ抽出部１３５、及び学習部１３６は、記憶部１２０に記憶されているプログラムにより起動されて情報処理装置１００にて実行される。
【００２７】
画像データ取得部１３１は、文字情報を含む画像データの例である帳票類をスキャナ装置で画像としてスキャンした画像データ、またはこの画像データが格納されている格納先のパス情報を、ユーザ端末２００から通信部１１０を介して取得する。例えば、ユーザ端末２００にスキャナ装置が直接接続され、またはネットワークＮＷを介して接続され、スキャンされた画像データがユーザ端末２００から送信されるので、その画像データを取得してもよい。また、他の外部装置によりスキャンされた画像データがユーザ端末２００により取得され、その画像データが送信されるので、その画像データを取得してもよい。この場合のスキャナ装置または外部装置は図示を省略する。画像データ取得部１３１で取得された画像データは、画像データＤＢ１２１に格納される。
【００２８】
読取項目認識部１３２は、画像データＤＢ１２１に格納されている画像データから、この画像データに含まれる文字情報の位置を識別し、ＯＣＲにより文字情報を読み取るための読取項目として認識する。前述のように、例えば請求書等をスキャンした画像データの場合、画像データの中に含まれる文字情報、例えば「請求書」、「○○株式会社」のような文字情報の箇所が、例えば長方形で囲むように選択され、読取項目として認識される。
【００２９】
テキストデータ生成部１３３は、読取項目認識部１３２によって読取項目として認識された箇所について、ＯＣＲにより文字情報を読み取って文字認識を行い、テキストデータを生成する。前述のように、例えば請求書等をスキャンした画像データの場合、読取項目として認識された箇所の「請求書」、「○○株式会社」のような文字が文字情報として読み取られ、テキストデータが生成される。生成されたテキストデータは、読取項目ごとにテキストデータＤＢ１２３に格納される。
【００３０】
属性設定部１３４は、テキストデータ生成部１３３によって生成され、テキストデータＤＢ１２３に格納されたテキストデータについて、例えば、その項目の名称である「帳票名」、「会社名」、「日付」といった属性が設定される。テキストデータの各項目に対する属性の設定は、例えば請求書等をスキャンした画像データにおける当該読取項目の位置と、その読取項目から読み取られたテキストデータの内容と、に基づき、属性設定部１３４により自動的に設定される。設定された属性は、テキストデータの読取項目に紐づけられてテキストデータＤＢ１２３に格納される。
【００３１】
正解データ抽出部１３５は、テキストデータＤＢ１２３に格納されているテキストデータと、正解テキストデータＤＢ１２２に格納されている正解テキストデータと、を比較して一致しているか否かの判定を行い、一致していると判定されたテキストデータを抽出する。すなわち、正常に読取が行われたテキストデータを抽出する。この一致しているか否かの判定は、テキストデータＤＢ１２３及び正解テキストデータＤＢ１２２に格納されている読取項目ごとに判定される。
【００３２】
正解データ抽出部１３５による判定は、限定ではなく例として、まず、テキストデータにおける読取項目と、正解テキストデータにおける読取項目とを比較してそれぞれの読取項目が一致しているか否かの判定が行われ、次に、読取項目が一致していると判定された場合に、テキストデータと正解テキストデータとが一致しているか否かの判定が行われる。または、テキストデータに設定されている属性と、正解テキストデータに設定されている属性とを比較して属性が一致しているか否かの判定が行われ、次に、属性が一致していると判定された読取項目について、テキストデータと正解テキストデータとが一致しているか否かの判定が行われる。
【００３３】
また、正解データ抽出部１３５による判定では、限定ではなく例として、正解テキストデータに基づいてテキストデータの合致度を算出し、算出した合致度が所定の閾値以上の場合、テキストデータと正解テキストデータとが一致していると判定する。このように、一致しているか否かの判定は完全一致であるか否かの判定に限られず、合致度が所定の閾値以上の場合に一致していると判定してもよい。この合致度による一致の判定は、テキストデータＤＢ１２３及び正解テキストデータＤＢ１２２に格納されている読取項目ごとに判定されてもよく、属性についても同様に、合致度が所定の閾値以上の場合に一致していると判定してもよい。また、読取項目ごとに異なる閾値を使用して判定してもよい。特に属性の場合、完全一致している必要はなく、合致度が所定の閾値以上であれば一致していると判定しても差し支えないからである。
【００３４】
学習部１３６は、正解データ抽出部１３５によって抽出されたテキストデータと、当該テキストデータの基になる、画像データＤＢ１２１に格納されている画像データとに基づき、画像データにおける文字情報の位置について推定するため学習モデルに関する機械学習を行い、読取学習モデルＤＢ１２４に格納されている学習モデルの生成または更新を行う。学習モデルの更新は、例えば、読取学習モデルＤＢ１２４に格納されている学習モデルと、学習部１３６による学習結果とをマージするアグリゲーションの処理により行ってもよい。
【００３５】
学習部１３６による機械学習は、限定ではなく例として、抽出されたテキストデータと基になる画像データとを教師データとする教師あり機械学習により行われてもよく、教師なし機械学習により行われてもよく、ディープラーニングにより行われてもよい。
【００３６】
図２は、図１のユーザ端末２００を示す機能ブロック構成図である。ユーザ端末２００は、通信部２１０と、表示部２２０と、操作部２３０と、記憶部２４０と、制御部２５０とを備える。
【００３７】
通信部２１０は、ネットワークＮＷを介して情報処理装置１００と有線または無線で通信を行うための通信インタフェースであり、互いの通信が実行できるのであればどのような通信プロトコルを用いてもよい。この通信部２１０は、限定ではなく例として、ＴＣＰ／ＩＰ等の通信プロトコルにより通信が行われる。
【００３８】
表示部２２０は、ユーザから入力された操作内容や、情報処理装置１００からの送信内容を表示するために用いられるユーザインタフェースであり、液晶ディスプレイ等から構成される。表示部２２０では、情報処理装置１００からユーザに対して通知される通知情報を表示する。
【００３９】
操作部２３０は、ユーザが操作指示を入力するために用いられるユーザインタフェースであり、キーボードやマウス、タッチパネル等から構成される。操作部２３０は、ユーザが情報処理装置１００に対して行う操作情報の入力に使用される。
【００４０】
記憶部２４０は、各種制御処理や制御部２５０内の各機能を実行するためのプログラム、入力データ等を記憶するものであり、限定ではなく例として、ＲＡＭ、ＲＯＭ等を含むメモリや、ＨＤＤ、ＳＳＤ、フラッシュメモリ等を含むストレージから構成される。また、記憶部２４０は、情報処理装置１００と通信を行ったデータを一時的に記憶する。
【００４１】
制御部２５０は、記憶部２４０に記憶されているプログラムを実行することにより、ユーザ端末２００の全体の動作を制御するものであり、限定ではなく例として、ＣＰＵ、ＭＰＵ、ＧＰＵ、マイクロプロセッサ、プロセッサコア、マルチプロセッサ、ＡＳＩＣ、ＦＰＧＡを含む装置等から構成される。
【００４２】
＜処理の流れ＞
図３を参照しながら、情報処理システム１の情報処理装置１００が実行する、情報処理方法の一例の処理の流れについて説明する。図３は、図１の情報処理装置１００の動作を示すフローチャートである。
【００４３】
ステップＳ１０１の処理として、ユーザ端末２００では、スキャンされた画像データ、またはこの画像データが格納されている格納先のパス情報が送信されるので、画像データ取得部１３１では、その画像データが取得される。取得された画像データは、画像データＤＢ１２１に格納される。
【００４４】
ステップＳ１０２の処理として、読取項目認識部１３２では、ステップＳ１０１で取得され、画像データＤＢ１２１に格納されている画像データの読取が行われる。
【００４５】
図４は、図１の画像データ取得部１３１で取得される画像データＰ１の例を示す模式図である。図４に示す画像データＰ１は、帳票の例として請求書をスキャンした画像データを示しており、「△△株式会社」が請求元であり、「〇〇株式会社」宛の請求書を例示している。この画像データＰ１には、帳票名である「請求書」や、請求元会社名、請求先会社名の他、件名、品目、個数、金額等の情報が記載されている。ステップＳ１０１の処理では、図４に示すような、例えば請求書等をスキャンした画像データが取得されて画像データＤＢ１２１に格納され、ステップＳ１０２の処理で読み取られる。
【００４６】
ステップＳ１０３の処理として、読取項目認識部１３２では、ステップＳ１０２で読み取られた画像データに含まれる文字情報の位置が識別され、ＯＣＲにより文字情報を読み取るための読取項目として認識される。
【００４７】
図５は、図１の読取項目認識部１３２で行われる読取項目の認識の例を示す模式図である。図５では、図４に示す画像データＰ１に対して文字情報の位置が識別され、文字情報を読み取るための読取項目として認識される例を示している。図５に示す読取項目Ａ１〜Ａ１１は、図４に示す画像データＰ１の文字情報が読取項目として認識された状態を示しており、文字情報が長方形の選択エリアとして認識されている。
【００４８】
図５に示すように、例えば読取項目Ａ１は、帳票名である「請求書」の文字情報を選択している。読取項目Ａ２は、請求元会社名である「△△株式会社」の文字情報を選択している。読取項目Ａ３は、請求先会社名である「〇〇株式会社」の文字情報を選択している。読取項目Ａ４は、日付である「２０１９年９月１日」の文字情報を選択している。読取項目Ａ５は、件名である「〇△◇の件」の文字情報を選択している。読取項目Ａ６は、品目名である「〇△◇手数料」の文字情報を選択している。読取項目Ａ７は、読取項目Ａ６の品目の個数である「１」の文字情報を選択している。読取項目Ａ８は、読取項目Ａ６の品目の金額である「１５０，０００」の文字情報を選択している。読取項目Ａ９は、小計の金額である「１５０，０００」の文字情報を選択している。読取項目Ａ１０は、消費税の金額である「１２，０００」の文字情報を選択している。読取項目Ａ１１は、合計の金額である「１６２，０００」の文字情報を選択している。ステップＳ１０３の処理では、図５に示すような文字情報の位置が識別され、文字情報を読み取るための読取項目として認識される。
【００４９】
ステップＳ１０４の処理として、テキストデータ生成部１３３では、ステップＳ１０３で読取項目として認識された箇所について、ＯＣＲにより文字情報が読み取られて文字認識が行われ、テキストデータが生成される。生成されたテキストデータは、読取項目ごとにテキストデータＤＢ１２３に格納される。
【００５０】
ステップＳ１０４の処理では、図５に示すような、読取項目Ａ１で「請求書」の文字が読み取られ、テキストデータとして生成される。同様に、読取項目Ａ２で「△△株式会社」の文字が読み取られ、テキストデータとして生成される。読取項目Ａ３で「〇〇株式会社」の文字が読み取られ、テキストデータとして生成される。読取項目Ａ４で「２０１９年９月１日」の文字が読み取られ、テキストデータとして生成される。読取項目Ａ５で「〇△◇の件」の文字が読み取られ、テキストデータとして生成される。以下の処理は同様なので省略する。
【００５１】
ステップＳ１０５の処理として、属性設定部１３４では、ステップＳ１０４で生成され、テキストデータＤＢ１２３に格納されたテキストデータについて、属性が設定される。
【００５２】
図６は、図１のテキストデータ生成部１３３及び属性設定部１３４において生成及び属性設定されたテキストデータＴ１の例を示す模式図である。図６のテキストデータＴ１の右欄に示すテキストデータは、図５に示す読取項目Ａ１〜Ａ１１から生成されたテキストデータであり（読取項目Ａ６〜Ａ１１については図示を省略する。）、それぞれのテキストデータに紐づくように、図６の左欄に示す属性が設定されている。
【００５３】
例えば、図５に示す読取項目Ａ１から生成された「請求書」のテキストデータには、属性として「帳票名」が設定されている。同様に、読取項目Ａ２から生成された「△△株式会社」のテキストデータには、属性として「会社名」が設定されている。読取項目Ａ３から生成された「〇〇株式会社」のテキストデータには、属性として「宛先」が設定されている。読取項目Ａ４から生成された「２０１９年９月７日」のテキストデータには、属性として「年月日」が設定されている（本実施形態では、当該項目について読取が正常に行われなかったものとする。）。読取項目Ａ５から生成された「〇△◇の件」のテキストデータには、属性として「件名」が設定されている。ステップＳ１０５の処理では、図５に示すような、テキストデータ「請求書」等に対して、属性として「帳票名」等が設定される。
【００５４】
ステップＳ１０６の処理として、正解データ抽出部１３５では、ステップＳ１０４で生成され、テキストデータＤＢ１２３に格納されているテキストデータと、正解テキストデータＤＢ１２２に格納されている正解テキストデータとが比較され、一致しているか否かの判定が行われる。
【００５５】
このときの例として、まず、テキストデータにおける読取項目と、正解テキストデータにおける読取項目とが比較され、それぞれの読取項目が一致しているか否かの判定が行われる。次に、読取項目が一致していると判定された場合に、テキストデータと正解テキストデータとが一致しているか否かの判定が行われる。または、テキストデータに設定されている属性と、正解テキストデータに設定されている属性とが比較され、属性が一致しているか否かの判定が行われる。次に、属性が一致していると判定された読取項目について、テキストデータと正解テキストデータとが一致しているか否かの判定が行われる。
【００５６】
図７は、図１の正解テキストデータＤＢ１２２に格納される正解テキストデータＴ２の例を示す模式図である。図７の正解テキストデータＴ２の右欄に示す正解テキストデータは、図４に示す画像データＰ１に含まれる文字情報の正解テキストデータとして、正解テキストデータＤＢ１２２に格納されているデータである。それぞれの正解テキストデータの読取項目ごとに、テキストデータＤＢ１２３に格納されているテキストデータと同様に、それぞれの正解テキストデータに紐づくように、図７の左欄に示す属性が設定されている。
【００５７】
例えば、図５に示す読取項目Ａ１の正解データである「請求書」の正解テキストデータには、属性として「帳票名」が設定されている。同様に、読取項目Ａ２の正解データである「△△株式会社」の正解テキストデータには、属性として「請求元」が設定されている。読取項目Ａ３の正解データである「〇〇株式会社」の正解テキストデータには、属性として「請求先」が設定されている。読取項目Ａ４の正解データである「２０１９年９月１日」の正解テキストデータには、属性として「年月日」が設定されている。読取項目Ａ５の正解データである「〇△◇の件」の正解テキストデータには、属性として「件名」が設定されている。
【００５８】
図８は、図１の正解データ抽出部１３５における判定の例を示す模式図である。ステップＳ１０６の処理では、図６に示すテキストデータＴ１と、図７に示す正解テキストデータＴ２とが比較され、一致しているか否かの判定が行われる。図８に示すテキストデータＴ１、正解テキストデータＴ２は、それぞれ図６に示すテキストデータＴ１、図７に示す正解テキストデータＴ２と同一である。
【００５９】
このときの例として、まず、テキストデータＴ１に設定されている属性と、正解テキストデータＴ２に設定されている属性とが比較され、属性が一致しているか否かの判定が行われる。図８に示す例では、テキストデータＴ１の２行目の属性「会社名」、３行目の属性「宛先」が、正解テキストデータＴ２の２行目の属性「請求元」、３行目の属性「請求先」とそれぞれ異なる。このような相違について、正解データ抽出部１３５では、各項目の属性について合致度を算出し、算出した合致度が所定の閾値以上の場合に一致していると属性ごとに判定する。この場合、属性が異なってもテキストデータの生成には影響しないため、当該属性は一致していると判定してもよい。
【００６０】
次に、属性が一致していると判定された読取項目について、テキストデータＴ１と正解テキストデータＴ２とが一致しているか否かの判定が行われる。図８に示す例では、テキストデータＴ１の４行目「２０１９年９月７日」が、正解テキストデータＴ２の４行目「２０１９年９月１日」と異なる。このような相違について、正解データ抽出部１３５では、各項目のテキストデータについて合致度を算出し、算出した合致度が所定の閾値以上の場合に一致していると判定する。この場合、日付が異なる場合は正常に読取ができなかったと判定してもよい。
【００６１】
ステップＳ１０７の処理として、正解データ抽出部１３５では、ステップＳ１０６で行われた判定結果が、一致していると判定されたテキストデータを抽出する。一致していると判定されたテキストデータの抽出は、画像データ単位で行われてもよく、読取項目単位で行われてもよい。
【００６２】
例えば、図８に示す例の場合、属性「年月日」の読取項目の読取が正常に行われなかったが、当該請求書についての読取項目のテキストデータをすべて抽出対象外にしてもよく、属性「年月日」の読取項目のみを対象外にしてもよい。抽出した項目は、例えばテキストデータＤＢ１２３にステータス情報を設けて抽出した項目についてのみステータス設定してもよく、別途データベースを設けてもよい。
【００６３】
ステップＳ１０８の処理として、学習部１３６では、ステップＳ１０７で抽出されたテキストデータと、当該テキストデータの基になる、画像データＤＢ１２１に格納されている画像データとに基づいて機械学習が行われ、読取学習モデルＤＢ１２４に格納されている学習モデルが生成され、更新が行われる。
【００６４】
＜効果＞
以上のように、本実施形態に係る情報処理装置、情報処理システム、及び情報処理方法は、帳票類を画像としてスキャンした画像データに含まれる文字情報の文字認識を行い、テキストデータを生成する。また、画像データに含まれる文字情報の正解データである正解テキストデータをあらかじめ記憶する。テキストデータと正解テキストデータ比較して一致しているか否かの判定を行い、一致していると判定されたテキストデータと、基になる画像データとに基づいて機械学習を行い、学習モデルが生成される。そのため、正常に読取りが行われたテキストデータのみを機械学習の対象にして機械学習を行うので、効率よく画像データの読取精度を上げることが可能である。
【００６５】
また、画像データに含まれる文字情報を、読取項目ごとに文字認識を行い、読取項目ごとに正解テキストデータと比較して一致しているか判定し、一致していると判定されたテキストデータと基になる画像データとに基づいて機械学習を行う。そのため、読取項目ごとに判定されるので、項目ごとに異なる読取の精度を、それぞれ向上させることが可能である。
【００６６】
さらに、正解テキストデータに基づいてテキストデータの合致度を算出し、算出した合致度が所定の閾値以上の場合、テキストデータと正解テキストデータとが一致していると判定する。また、この判定は読取項目ごとに行われてもよい。そのため、一致しているか否かの判定基準を帳票ごと、読取項目ごとに設定することができる。これにより、項目ごとに異なる読取の精度を、より効率的にそれぞれ向上させることが可能である。
【００６７】
（実施形態２）
図９は、本開示の実施形態２に係る情報処理システム１Ａを示す機能ブロック構成図である。この情報処理システム１Ａは、文字情報を含む画像データに含まれる文字情報の文字認識を行ってテキストデータを生成し、正常に読み込まれたテキストデータと、その基になる画像データとに基づいて機械学習を行うシステムである点において、実施形態１に係る情報処理システム１と同様であるが、本実施形態に備える情報処理装置１００Ａの制御部１３０の機能として、画像データ読取部１３７を備えている点において、実施形態１に係る情報処理システム１と異なる。
【００６８】
本実施形態では、情報処理システム１Ａによって生成された学習モデルに基づき、実際の帳票類の読取を行うものである。
【００６９】
画像データ読取部１３７は、学習部１３６で機械学習が行われて読取学習モデルＤＢ１２４に格納されている学習モデルに基づき、新たに帳票類をスキャンした画像データを取得して文字情報の文字認識を行い、新たなテキストデータを生成する。新たなテキストデータは、テキストデータＤＢ１２３に格納してもよく、新たに別のデータベースに格納してもよい。このテキストデータは、例えば、帳票類をスキャンしてＯＣＲにより読み取りテキストデータを生成するサービスの成果物として、当該帳票類を提供する者に提供してもよい。
【００７０】
本実施形態における学習部１３６は、新たなテキストデータと新たな帳票類をスキャンした画像データとに基づいて機械学習を行ってもよい。これにより、さらに読取の精度を、向上させることができる。その他の構成及び処理の流れについては、実施形態１と同様である。
【００７１】
本実施形態によれば、上記実施形態１の効果に加え、新たに帳票類をスキャンした画像データを取得して文字情報の文字認識を行う画像データ読取部を備え、学習モデルに基づいて文字情報の文字認識を行う。これにより、さらに読取の精度を向上させることができるとともに、帳票類をスキャンしてＯＣＲにより読み取りテキストデータを生成するサービスの成果物として、当該帳票類を提供する者に提供することが可能である。
【００７２】
（実施形態３（プログラム））
図１０は、コンピュータ（電子計算機）７００の構成の例を示す機能ブロック構成図である。コンピュータ７００は、ＣＰＵ７０１、主記憶装置７０２、補助記憶装置７０３、インタフェース７０４を備える。
【００７３】
ここで、実施形態１及び２に係る画像データ取得部１３１と、読取項目認識部１３２と、テキストデータ生成部１３３と、属性設定部１３４と、正解データ抽出部１３５と、学習部１３６と、画像データ読取部１３７とを構成する各機能を実現するための制御プログラム（情報処理プログラム）の詳細について説明する。これらの機能ブロックは、コンピュータ７００に実装される。そして、これらの各構成要素の動作は、プログラムの形式で補助記憶装置７０３に記憶されている。ＣＰＵ７０１は、プログラムを補助記憶装置７０３から読み出して主記憶装置７０２に展開し、当該プログラムに従って上記処理を実行する。また、ＣＰＵ７０１は、プログラムに従って、上述した記憶部に対応する記憶領域を主記憶装置７０２に確保する。
【００７４】
当該プログラムは、具体的には、コンピュータ７００において、画像データを取得する画像データ取得ステップと、画像データに含まれる文字情報の位置を識別し、読取項目として認識する読取項目認識ステップと、読取項目における文字情報の文字認識を行い、テキストデータを生成するテキストデータ生成ステップと、テキストデータと、あらかじめ記憶されている画像データに含まれる文字情報を示す正解テキストデータとを読取項目ごとに比較し、一致しているか否かの判定を行い、一致していると判定されたテキストデータを抽出する正解データ抽出ステップと、抽出されたテキストデータと、抽出されたテキストデータの基になる画像データにおける読取項目の位置とに基づいて機械学習を行い、学習モデルの生成及び更新を行う学習ステップと、をコンピュータによって実現する制御プログラムである。
【００７５】
なお、補助記憶装置７０３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース７０４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。また、このプログラムがネットワークを介してコンピュータ７００に配信される場合、配信を受けたコンピュータ７００が当該プログラムを主記憶装置７０２に展開し、上記処理を実行してもよい。
【００７６】
また、当該プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、当該プログラムは、前述した機能を補助記憶装置７０３に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００７７】
以上、開示に係る実施形態について説明したが、これらはその他の様々な形態で実施することが可能であり、種々の省略、置換及び変更を行なって実施することができる。これらの実施形態及び変形例ならびに省略、置換及び変更を行なったものは、特許請求の範囲の技術的範囲とその均等の範囲に含まれる。
【符号の説明】
【００７８】
１，１Ａ  情報処理システム、１００，１００Ａ  情報処理装置、１１０  通信部、１２０  記憶部、１２１  画像データＤＢ、１２２  正解Ｔ（テキスト）データＤＢ、１２３  テキストデータＤＢ、１２４  読取学習モデルＤＢ、１３０  制御部、１３１  画像データ取得部、１３２  読取項目認識部、１３３  テキストデータ生成部、１３４  属性設定部、１３５  正解データ抽出部、１３６  学習部、１３７  画像データ読取部、２００  ユーザ端末、２１０  通信部、２２０  表示部、２３０  操作部、２４０  記憶部、２５０  制御部、ＮＷ  ネットワーク
【要約】      （修正有）【課題】文字情報を含む画像データを読み取って機械学習を行うことで読取項目の位置を認識することが可能な情報処理装置、方法及びプログラムを提供する。【解決手段】情報処理システム１の情報処理装置１００は、その機能として、画像データを取得する画像データ取得部１３１と、画像データに含まれる文字情報の位置を識別して読取項目として認識する読取項目認識部１３２と、認識された箇所について文字情報を読み取って文字認識を行うテキストデータ生成部１３３と、テキストデータについて属性を設定する属性設定部１３４と、テキストデータと正解テキストデータとを比較して一致しているか否かの判定を行い、一致していると判定されたテキストデータを抽出する正解データ抽出部１３５と、抽出されたテキストデータと、当該テキストデータの基になる画像データとに基づいて機械学習を行う学習部１３６とを備える。【選択図】図１【図１】
0006722929.tif 000002
【図２】
0006722929.tif 000003
【図３】
0006722929.tif 000004
【図４】
0006722929.tif 000005
【図５】
0006722929.tif 000006
【図６】
0006722929.tif 000007
【図７】
0006722929.tif 000008
【図８】
0006722929.tif 000009
【図９】
0006722929.tif 000010
【図１０】
0006722929.tif 000011