(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-06
(45)【発行日】2023-12-14
(54)【発明の名称】テーブルに含まれる情報を認識する文字認識方法及び文字認識システム
(51)【国際特許分類】
G06V 30/12 20220101AFI20231207BHJP
G06V 30/412 20220101ALI20231207BHJP
【FI】
G06V30/12 Z
G06V30/412
(21)【出願番号】P 2022115078
(22)【出願日】2022-07-19
【審査請求日】2022-07-19
(31)【優先権主張番号】10-2021-0094843
(32)【優先日】2021-07-20
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(73)【特許権者】
【識別番号】523303688
【氏名又は名称】ワークスモバイルジャパン株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】キム ギウク
(72)【発明者】
【氏名】シン スン
(72)【発明者】
【氏名】ペク ヨンミン
(72)【発明者】
【氏名】ワン ヒョソン
(72)【発明者】
【氏名】キム ジュングン
(72)【発明者】
【氏名】チェー スンボム
【審査官】▲広▼島 明芳
(56)【参考文献】
【文献】特開2010-003155(JP,A)
【文献】特開2018-042067(JP,A)
【文献】特開2021-056750(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/00 - 30/424
(57)【特許請求の範囲】
【請求項1】
受信部と制御部を含む文字認識システムにより行われる文字認識方法であって、
前記受信部が、テーブルを含むイメージを受信するステップと、
前記制御部が、
前記テーブルを構成する複数のセルに含まれるテキストを認識するステップと、
予め設定された基準に基づいて、前記複数のセルから補正対象セルを特定するステップと、
前記複数のセルから
、それぞれのセルに含まれるテキストが示す意味間に形成される関連関係に基づいて、前記補正対象セルに関連する少なくとも1つの関連セルを特定するステップと、
前記補正対象セル及び前記関連セルに含まれるテキストを用いて算出された前記補正対象セルのベクトルを用いて、前記補正対象セルに含まれるテキストの補正を行うステップと、を含むことを特徴とする文字認識方法。
【請求項2】
前記関連セルを特定するステップにおいては、
前記補正対象セルに含まれるテキストの意
味に基づいて、前記関連セルを特定することを特徴とする請求項1に記載の文字認識方法。
【請求項3】
前記複数のセルは、少なくとも一部がカテゴリーセルに特定され、他の一部が前記カテゴリーセルの少なくとも1つに対応するデータを含めるデータセルに特定され、
前記関連セルを特定するステップにおいては、
前記カテゴリーセルのうち、前記補正対象セルに含まれるテキストの意
味に関連する特定のカテゴリーセルを、前記関連セルとして特定することを特徴とする請求項2に記載の文字認識方法。
【請求項4】
前記補正対象セルに含まれるテキストの意味に関連する特定のカテゴリーセルには、
前記補正対象セルに含まれるテキストの上位概念又は下位概念の意味を有するテキストが含まれることを特徴とする請求項3に記載の文字認識方法。
【請求項5】
前記補正対象セルに含まれるテキストの意味に関連する特定のカテゴリーセルは、
前記補正対象セルを基準にして、前記補正対象セルと列方向又は行方向に並んで位置することを特徴とする請求項4に記載の文字認識方法。
【請求項6】
前記特定のカテゴリーセルは、前記カテゴリーセルのうち、前記テーブル上で、前記補正対象セルを基準にして、前記補正対象セルと行方向又は列方向に隣接して位置するセルであることを特徴とする請求項3に記載の文字認識方法。
【請求項7】
前記補正を行うステップにおいては、
前記補正対象セルのベクトルと予め特定されたデータセットに含まれるベクトル間の距離に基づいて、前記補正対象セルに含まれるテキストの補正を行うことを特徴とする請求項1に記載の文字認識方法。
【請求項8】
前記補正を行うステップは、
前記補正対象セルのベクトルと予め特定されたデータセットに含まれるベクトル間の距離に基づいて、前記データセットから補正対象テキストを抽出するステップと、
前記補正対象セルに含まれるテキストを前記補正対象テキストに変更するステップと、を含むことを特徴とする請求項7に記載の文字認識方法。
【請求項9】
前記データセットには、
前記テーブルを構成する前記複数のセルに含まれ得る候補テキスト、並びに、
前記複数のセルの位置関係及び前記候補テキスト間の意味関係の少なくとも一方に基づいて埋め込みが行われた結果に該当する、前記候補テキストのそれぞれに関するベクトル情報が含まれることを特徴とする請求項8に記載の文字認識方法。
【請求項10】
前記補正を行うステップにおいては、
前記データセットから、前記補正対象セルのベクトルに最も近いベクトルを特定し、
前記最も近いベクトルに対応するテキストを前記補正対象テキストとして抽出することを特徴とする請求項9に記載の文字認識方法。
【請求項11】
前記補正対象セルに前記補正対象テキストが含まれ、
前記制御部が前記イメージに含まれるテーブルに対応する構造を有するテーブルを生成するステップをさらに含むことを特徴とする請求項10に記載の文字認識方法。
【請求項12】
前記補正対象セルを特定するための前記予め設定された基準は、前記複数のセルに含まれるテキストの認識の信頼度に関連するものであることを特徴とする請求項1に記載の文字認識方法。
【請求項13】
保存部と、
テーブルを含むイメージを受信する受信部と、
前記イメージに含まれる前記テーブルを構成する複数のセルに含まれるテキストを認識する制御部と、を含み、
前記制御部は、
予め設定された基準に基づいて、前記複数のセルから補正対象セルを特定し、
前記複数のセルから
、それぞれのセルに含まれるテキストが示す意味間に形成される関連関係に基づいて、前記補正対象セルに関連する少なくとも1つの関連セルを特定し、
前記補正対象セル及び前記関連セルに含まれるテキストを用いて算出された前記補正対象セルのベクトルを用いて、前記補正対象セルに含まれるテキストの補正を行うことを特徴とする文字認識システム。
【請求項14】
複数の命令を含むコンピュータプログラムであって、
命令が実行されると、
テーブルを含むイメージを受信するステップと、
前記テーブルを構成する複数のセルに含まれるテキストを認識するステップと、
予め設定された基準に基づいて、前記複数のセルから補正対象セルを特定するステップと、
前記複数のセルから
、それぞれのセルに含まれるテキストが示す意味間に形成される関連関係に基づいて、前記補正対象セルに関連する少なくとも1つの関連セルを特定するステップと、
前記補正対象セル及び前記関連セルに含まれるテキストを用いて算出された前記補正対象セルのベクトルを用いて、前記補正対象セルに含まれるテキストの補正を行うステップと、をコンピュータで実行することを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、テーブルに含まれる情報を認識する文字認識方法及び文字認識システムに関する。
【背景技術】
【0002】
人工知能の辞書的意味は、人間の学習能力、推論能力、知覚能力、自然言語理解能力などをコンピュータプログラムで実現した技術である。このような人工知能は、マシンラーニングに人間の脳を模倣したニューラルネットワークを加えたディープラーニングにより飛躍的に発展してきた。
【0003】
ディープラーニング(deep learning)とは、コンピュータが人間のように判断及び学習できるようにし、それにより事物やデータを群集化又は分類する技術をいい、近年、テキストデータだけでなく画像データまで分析できるようになり、非常に多様な産業分野に積極的に活用されている。
【0004】
このような人工知能の発達により、オフィス・オートメーション(office automation)分野においても様々な自動化が行われている。特に、オフィス・オートメーション分野においては、人工知能を活用した画像データ分析技術に基づいて、紙(ペーパ)に印刷されたコンテンツをデータ化するのに多くの努力をしている。その一環として、オフィス・オートメーション分野においては、紙文書をイメージ化し、イメージに含まれるコンテンツを分析するイメージ分析技術(又は画像データ分析技術)により、文書に含まれるコンテンツをデータ化しており、その場合、文書に含まれるコンテンツの特性によってイメージを分析する技術が必要である。
【0005】
例えば、テーブル(表)を含む文書をデータ化する場合、テーブルの形式、テーブルに含まれるテキストの内容、及びテーブルに含まれるテキストの位置などのように、テーブルに関連する様々な要素についての正確な分析が必要である。
【0006】
そこで、特許文献1(書式自動化のためのテーブル生成装置及び方法)においては、イメージからテーブルを認識し、認識されたテーブルを再現する方法について開示しているが、それは、テーブルに含まれる線分(ライン)を基準にテーブルを再現するものであるので、テーブルに含まれる内容まで正確に分析するのに限界があった。
【0007】
よって、テーブルに含まれる内容まで正確に生成できる文字認識方法が求められている。
【先行技術文献】
【特許文献】
【0008】
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明は、テーブルに含まれる内容(又はコンテンツ、情報)をデータ化することができる、文字認識のエラーに対してロバストな文字認識方法及び文字認識システムを提供するためのものである。
【0010】
また、本発明は、テーブルに含まれる内容をデータ化する場合、テーブルに含まれる内容を正確にデータとして確保することができる、文字認識のエラーに対してロバストな文字認識方法及び文字認識システムを提供するためのものである。
【0011】
さらに、本発明は、テーブルに含まれる内容間の有機的な関係を考慮してテーブルに含まれる内容をデータ化することができる、文字認識のエラーに対してロバストな文字認識方法及び文字認識システムを提供するためのものである。
【0012】
さらに、本発明は、データ処理量を最小限に抑えたうえでテーブルに含まれる内容をデータ化することができる、文字認識のエラーに対してロバストな文字認識方法及び文字認識システムを提供するためのものである。
【課題を解決するための手段】
【0013】
本発明による文字認識方法は、テーブルを含むイメージを受信するステップと、前記テーブルを構成する複数のセルに含まれるテキストを認識するステップと、予め設定された基準に基づいて、前記複数のセルから補正対象セルを特定するステップと、前記複数のセルから前記補正対象セルに関連する少なくとも1つの関連セルを特定するステップと、前記補正対象セル及び前記関連セルに含まれるテキストを用いて算出された前記補正対象セルのベクトルを用いて、前記補正対象セルに含まれるテキストの補正を行うステップとを含むようにしてもよい。
【0014】
また、本発明による文字認識システムは、保存部と、テーブルを含むイメージを受信する受信部と、前記イメージに含まれる前記テーブルを構成する複数のセルに含まれるテキストを認識する制御部とを含み、前記制御部は、予め設定された基準に基づいて、前記複数のセルから補正対象セルを特定し、前記複数のセルから前記補正対象セルに関連する少なくとも1つの関連セルを特定し、前記補正対象セル及び前記関連セルに含まれるテキストを用いて算出された前記補正対象セルのベクトルを用いて、前記補正対象セルに含まれるテキストの補正を行うようにしてもよい。
【0015】
さらに、本発明による複数の命令を含むコンピュータプログラムは、命令が実行されると、テーブルを含むイメージを受信するステップと、前記テーブルを構成する複数のセルに含まれるテキストを認識するステップと、予め設定された基準に基づいて、前記複数のセルから補正対象セルを特定するステップと、前記複数のセルから前記補正対象セルに関連する少なくとも1つの関連セルを特定するステップと、前記補正対象セル及び前記関連セルに含まれるテキストを用いて算出された前記補正対象セルのベクトルを用いて、前記補正対象セルに含まれるテキストの補正を行うステップと、をコンピュータで実行するようにしてもよい。
【発明の効果】
【0016】
前述したように、本発明による文字認識方法及び文字認識システムは、イメージに含まれるテーブルからテキストを認識し、認識されたテキストの検証を行うことにより、イメージに含まれるテーブルの内容をより正確にデータ化することができる。
【0017】
より具体的には、本発明による文字認識方法及び文字認識システムは、イメージに含まれるテーブルから、テーブルに含まれるテキストが誤って認識された場合、それを補正することにより、イメージに含まれるテーブルの内容をより正確にデータ化することができる。
【図面の簡単な説明】
【0018】
【
図1】本発明による文字認識システムを説明するための概念図である。
【
図2】テーブルの構成要素を説明するための概念図である。
【
図3】本発明による文字認識方法を説明するためのフローチャートである。
【
図4】文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【
図5】文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【
図6A】文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【
図6B】文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【
図6C】文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【
図7】文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【
図8】文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【発明を実施するための形態】
【0019】
以下、添付図面を参照して本発明の実施形態について詳細に説明するが、図面番号に関係なく同一又は類似の構成要素には同一の符号を付し、それについての重複する説明は省略する。以下の説明で用いられる構成要素の接尾辞である「モジュール」や「部」は、明細書の作成を容易にするために付与又は混用されるものであり、それ自体が有意性や有用性を有するものではない。また、本発明の実施形態について説明するにあたり、関連する公知技術についての具体的な説明が本発明の実施形態の要旨を不明にすると判断される場合は、その詳細な説明を省略する。さらに、添付図面は本発明の実施形態の理解を助けるためのものにすぎず、添付図面により本発明の技術的思想が限定されるものではなく、本発明の思想及び技術範囲に含まれるあらゆる変更、均等物乃至代替物を含むものと理解すべきである。
【0020】
「第1」、「第2」などのように序数を含む用語は様々な構成要素を説明するために用いられるが、上記構成要素は上記用語により限定されるものではない。上記用語は1つの構成要素を他の構成要素と区別する目的でのみ用いられる。
【0021】
ある構成要素が他の構成要素に「連結」又は「接続」されていると言及された場合は、他の構成要素に直接連結又は接続されていてもよく、中間にさらに他の構成要素が存在してもよいものと解すべきである。それに対して、ある構成要素が他の構成要素に「直接連結」又は「直接接続」されていると言及された場合は、中間にさらに他の構成要素が存在しないものと解すべきである。
【0022】
単数の表現には、特に断らない限り複数の表現が含まれる。
【0023】
本明細書において、「含む」や「有する」などの用語は、本明細書に記載された特徴、数字、段階、動作、構成要素、部品又はそれらの組み合わせが存在することを指定しようとするもので、1つ又はそれ以上の他の特徴、数字、段階、動作、構成要素、部品又はそれらの組み合わせの存在や付加可能性を予め排除するものではないと理解すべきである。
【0024】
前述したように、人工知能が発達するにつれて様々な形態でオフィス・オートメーション(office automation)が行われており、業務効率のために、紙文書に含まれるテーブル(表)を、紙文書に含まれるテーブルの形式のままデジタル化(データ化)するニーズがますます高まっている。
【0025】
例えば、様々な種類の領収証(レシート)などの文書はテーブルを含み、保険会社や病院などでは、大量の紙文書に含まれるテーブルをデジタル化されたデータとして処理して電算化する必要がある。
【0026】
このようなニーズに伴い、イメージに含まれるテーブルと同じ構成を有するテーブルを生成又は再現する技術の開発が活発に行われている。
【0027】
一方、イメージに含まれるテーブルに含まれる内容(又はコンテンツ、情報)を認識し、認識された内容をデータ化する技術においては、テーブルに関連する様々な要素(例えば、テキスト、テキストの位置、セルの構成、セルの位置、セル間の関連関係など)を正確に認識することが非常に重要である。
【0028】
そのために、テーブルを構成する様々な構成要素を正確に認識し、誤って認識された要素に対しては補正を行うことにより、イメージに含まれるテーブルを正確に認識するための様々な努力がなされている。
【0029】
以下、イメージに含まれるテーブルの内容とは異なる内容(又はコンテンツ、情報)が抽出された場合にそれを補正する方法について、添付図面と共により具体的に説明する。
図1は本発明による文字認識システムを説明するための概念図であり、
図2はテーブルの構成要素を説明するための概念図である。また、
図3は本発明による文字認識方法を説明するためのフローチャートであり、
図4、
図5、
図6A、
図6B、
図6C、
図7及び
図8は文字認識システムによりテーブルに含まれる情報を認識する方法を説明するための概念図である。
【0030】
本発明による文字認識システム100は、イメージ1000に含まれるテーブル1100から、テーブル1100に含まれる内容及びテーブル1100を構成する構成成分を認識し、認識された内容及び構成成分間の関係に基づいて、テーブル1100に含まれる内容を正確にデータ化することができる。
【0031】
ここで、テーブル1100に含まれる内容とは、文字、数字、記号、演算子などの意味のある全ての符号体系を意味する。本発明においては、説明の便宜上、「文字、数字、記号、演算子などの意味のある全ての符号体系」をまとめて「テキスト」と命名する。
【0032】
例えば、図示のように、テーブル1100には、「患者氏名」、「住民登録番号」、「診療費(薬剤費)内訳」などのテキストが含まれる。
【0033】
また、テーブル1100を構成する構成成分は、テキストが含まれるセル、セルを区画するライン又は線などの構成要素で構成される。これらの構成要素は、互いに位置的及び/又は意味的関係性を有する。
【0034】
ここで、位置的関係性とは、テーブル1100に含まれるセル間の相互位置関係を示すものであって、それぞれのセルに対して、周辺又は隣りにどのセルが位置し、どのセルと同じ又は隣接する行、列に位置するかなどに関する位置関係(又は配置関係)を意味する。
【0035】
また、意味的関係性とは、テーブル1100に含まれるセルの少なくとも一部と他の一部とが互いに関連する内容を含むことを意味する。このような意味的関係性とは、それぞれのセルに含まれる内容(テキスト)に基づく連結情報を意味する。例えば、ある1つのセルに含まれる内容と他の1つのセルに含まれる内容とは、i)同一又は類似の概念であるか、ii)同一のカテゴリー又は同一のグループに属するか、iii)互いに対して上位概念又は下位概念に該当する内容であることがあり、この場合、これらのセルが連結されていると表現できる。
【0036】
なお、イメージ1000には1つ又はそれ以上のテーブルが含まれることがあり、本発明においては、イメージ1000に含まれるテーブルの数に関係なく、イメージ1000に含まれる全てのテーブルを認識することができる。
【0037】
本発明において、イメージ1000は、紙文書のスキャンにより取得されたイメージ、写真撮影により取得されたイメージ、又はその他の様々な方法により取得されたイメージである。
【0038】
一方、本発明による文字認識システム100は、
図1に示すように、受信部110、保存部120、OCR(Optical Character Reader)部130及び制御部140の少なくとも1つを含む。
【0039】
まず、受信部110は、テーブル1100を含むイメージ1000を受信する手段であって、通信部、スキャン部及び入力部の少なくとも1つを含むようにしてもよく、その他のイメージ1000を受信する手段からなるようにしてもよい。
【0040】
文字認識システム100は、受信部110を介して受信したイメージ1000に含まれるテーブル1100を認識し、イメージ1000に含まれるテーブル1100に含まれる内容をデータ化するすることができる。その認識の結果、文字認識システム100は、テーブル1100に含まれる内容と一致するデータを確保することができる。
【0041】
本発明においては、文字認識システム100により、イメージ1000に含まれるテーブル1100の内容(又はコンテンツ、情報)を認識し、認識された内容にエラーが存在するとそれを補正することにより、テーブル1100に含まれる内容を正確にデータ化する方法を提供することができる。
【0042】
なお、本発明によりイメージ1000に含まれるテーブル1100から認識された内容は、イメージ1000に含まれるテーブル1100と同一又は類似の構造を有するテーブルデータを生成するのに活用することができる。
【0043】
テーブルデータは、イメージ1000に含まれるテーブル1100を構成するセルの構造及びセルの関係性(カテゴリーセルとデータセルの関係など)の少なくとも一方に基づいて整形化又は構造化されたデータからなるようにしてもよい。
【0044】
テーブルデータには、本発明による文字認識システム100により認識された内容に該当するデータが含まれる。
【0045】
本発明において、構成要素の位置的関係には、特にテーブルに含まれるセルの配置関係、行又は列の関係に応じた位置関係が含まれ、構成要素の意味的関係には、それぞれのセルに含まれるテキストが示す意味間に形成される関係が含まれる。
【0046】
次に、保存部120は、本発明による様々な情報を保存するようにしてもよい。保存部120は、その種類が非常に多様であり、少なくとも一部は外部サーバ150(クラウドサバー151及びデータベース(DB)152の少なくとも一方)を意味する。すなわち、保存部120は、本発明に関連する情報が保存される空間であればよく、物理的な空間の制約はない。
【0047】
保存部120には、テーブルを構成する様々な構成要素に関する情報が含まれる。保存部120には、i)テーブル1100を含むイメージ1000及びそれに関連するデータ、ii)イメージ1000から認識されたテーブル1100のセル情報、構成成分(例えば、ライン、コーナーなど)及びそれに関連するデータ、iii)テーブル1100に含まれるコンテンツ(例えば、テキスト、イメージなど)データ、iv)テーブル1100に含まれるコンテンツに関連するデータセットの少なくとも1つが保存される。ここで、データセットは、テーブル1100に含まれるコンテンツを検証又は補正するのに活用されるデータであってもよい。
【0048】
次に、OCR部130は、イメージ1000に含まれるコンテンツ(又は情報)を認識する手段であって、様々なコンテンツ認識アルゴリズムの少なくとも1つによりイメージ1000に含まれるコンテンツを認識することができる。OCR部130は、人工知能に基づくアルゴリズム(又はディープラーニングアルゴリズム)を用いて、コンテンツを認識することができる。ここで、コンテンツは、テキスト(文字)を含んでもよい。OCR部は、「OCR API」とも命名できる。
【0049】
OCR部130は、イメージ1000に含まれるテキスト及びテキストの位置情報を認識することができる。ここで、テキストの位置情報には、受信部110を介して入力されたイメージ1000内でのテキストの位置に関する情報、及びテーブル1100内でのテキストの位置に関する情報の少なくとも一方が含まれる。
【0050】
OCR部130は、イメージ1000に含まれるテキストに基づいて、それぞれのセルに含まれるテキストを認識することができる。
【0051】
テーブル1100は、複数のセルで構成され、OCR部130は、それぞれのセルに含まれるテキストを認識することができる。
【0052】
例えば、
図1に示すように、テーブル1100の1番目のセル1101から「患者氏名」というテキストが認識された場合、1番目のセル1101の識別情報と「患者氏名」というテキストとがマッチングされ、このようなマッチング情報は保存部120に保存される。
【0053】
本発明においては、OCR部130により、それぞれのセルに含まれるテキストを区分して認識することができる。よって、本発明においては、どのセルにどのテキストが含まれるか、セルの識別情報とそれに対応するテキストとがマッチングされて存在する。このようなマッチング情報は保存部120に保存される。
【0054】
このように、それぞれのセルから認識されたテキストは、それぞれのセルの識別情報とマッチングされて保存され、このようなセルの識別情報には、イメージ1000及びテーブル1100の少なくとも一方に関するセルの位置情報が含まれる。
【0055】
このようなマッチング情報は、OCR部130により、イメージ1000からテキストが認識される過程で生成されるか、又は制御部140の制御の下で生成される。
【0056】
次に、制御部140は、本発明に関連する文字認識システム100の全般的な動作を制御する。制御部140は、人工知能アルゴリズム(又はディープラーニングアルゴリズム)を処理するプロセッサ(又は人工知能プロセッサ、ディープラーニングプロセッサ)を含んでもよい。制御部140は、人工知能アルゴリズムに基づいて、イメージ1000からテーブル1100を認識し、テーブル1100を構成する少なくとも1つのセルを認識することができる。
【0057】
また、制御部140は、人工知能アルゴリズムに基づいて、セルの関係及びセルに含まれるテキストの意味を分析することができる。
【0058】
さらに、制御部140は、セルの関係及びセルに含まれるテキストの意味に基づいて、OCR部130により認識されたテキストの少なくとも一部を補正することができる。
【0059】
ここで、制御部140は、保存部120に保存されたデータセットに基づいて、OCR部130により認識されたテキストを補正することができる。
【0060】
なお、本発明におけるセルとは、テーブルを構成する複数のラインにより規定される長方形(rectangle)のボックスをいう。
【0061】
本発明についての説明に先立って、テーブルの構成要素について説明する。本発明における「テーブル」とは、ある内容を所定の形式又は手順で示したものを意味し、表とも命名される。
図2を参照してテーブルの構成要素について説明すると、テーブル200は、少なくとも1つのセル(又は空間、領域)210を含む。すなわち、テーブル200は、少なくとも1つのセル210を含み、セル210内に情報を含むように構成される。
【0062】
テーブル200に含まれるセル210は、少なくとも4つの線分(line segment)により規定されるものであってもよい。テーブル200及びテーブル200内に備えられたセルは、長方形状からなる。
【0063】
すなわち、テーブルに含まれるセルは、4つの線分で囲まれた四角形からなるものであってもよい。本発明における「線分(line segment)」は、ライン(line)又は線の少なくとも一部をいう。各セルを構成する線分は、延びてライン又は線となる。
【0064】
このように、1つの四角形状のセルを形成するためには、少なくとも4つの線分a、b、c、dが必要であり、これは、テーブルを構成する2つの水平ライン(horizontal line)(又は行方向のライン、エッジ)201、202及び2つの垂直ライン(vertical line)(又は列方向のライン、エッジ)203、204の少なくとも一部からなるようにしてもよい。より具体的には、長方形状のセルは、2つの水平ライン201、202及び2つの垂直ライン203、204の少なくとも一部が互いに交差して形成されてもよい。
【0065】
よって、テーブル200は、少なくとも4つのラインを含み、水平ラインの数、垂直ラインの数、ライン間の間隔、ラインの配列位置によって、セルの数、セルの大きさ、セルの位置などが定義される。
【0066】
一方、テーブル200を構成する複数のラインは、異なる第1タイプ及び第2タイプのいずれかのタイプに分けられ、これは当該ラインがどの方向に延びたかによって特定される。
【0067】
図示のように、水平方向に延びるライン201、202は第1タイプに定義され、垂直方向に延びるライン203、204は第2タイプに定義される。
【0068】
第1タイプのラインは、水平ライン、横ライン、行ライン、横方向のラインなど、その意味が同一又は類似の用語で多様に命名される。
【0069】
また、第2タイプのラインは、垂直ライン、縦ライン、列ライン、縦方向のラインなど、その意味が同一又は類似の用語で多様に命名される。
【0070】
一方、テーブル200に含まれるセルの数、セルの大きさ又はセルの位置などは、横ライン及び縦ラインの数や配置関係などに基づいて様々に変形することができ、セルの結合によっても様々に変形することができる。
【0071】
また、本発明におけるテーブルを構成する構成成分は、テーブルを構成するライン(横ライン及び縦ライン)と、テーブルを構成するラインが交差して形成されるコーナー(又は角、頂点)(符号「e、f、g、h」参照)とを含んでもよい。
【0072】
全てのテーブルが少なくとも4つのコーナーを有し、それはテーブルの最外枠に含まれるコーナーであり得る。また、テーブルに含まれるコーナーの数は、テーブルに含まれるセルの数に応じて異なる。
【0073】
以下、前述した本発明による文字認識システムの構成に基づいて、テーブルを生成する方法についてより具体的に説明する。
【0074】
図3に示すように、本発明による文字認識方法においては、まず、テーブル1100を含むイメージ1000(
図1参照)を受信する過程が行われる(S310)。
【0075】
前述したように、テーブル1100を含むイメージ1000は、様々なルートで受信することができる。例えば、イメージ1000は、通信部により伝送される方式、スキャン部によりスキャンされる方式、入力部により入力される方式などで受信することができる。
【0076】
イメージ1000が受信されると、イメージ1000に含まれるテーブル1100からテキストを認識する過程が行われる。
【0077】
より具体的には、本発明においては、テーブル1100を構成する複数のセルに含まれるテキストを認識する過程が行われる(S320)。このような認識はOCR部130で行われ、OCR部130により、テーブル1100に含まれる情報又は内容が認識される。ここで、テーブル1100に含まれる情報又は内容が認識されるとは、テーブル1100に含まれるテキストが認識されることを意味する。
【0078】
OCR部130による認識の結果、テーブル1100に含まれる内容に該当するデータを確保することができる。例えば、OCR部130は、テーブル1100に含まれるテキストを認識し、テーブル1100に含まれる内容に該当するテキスト、例えば「患者氏名」、「住民登録番号」、「診療費(薬剤費)内訳」などのテキストをデータとして確保することができる。OCR部130は、イメージ1000に含まれる各テキスト(又は文字)及びテキストの位置を認識するために訓練されたテキスト認識モデルにより、イメージ1000からテキストを認識することができる。このようなテキスト認識モデルは、人工知能に基づくアルゴリズム(例えば、ディープラーニングアルゴリズム)を含んでもよい。
【0079】
図4の(a)に示すように、OCR部130は、テーブル1100からテキストを認識し、
図4の(b)に示すように、認識されたテキストは、テキストが含まれるそれぞれのセルの識別情報KEY1、KEY2、KEY3...と共にマッチングされて保存部120に保存される。
【0080】
このように、テーブル1100を構成するセルに対してテキストが認識されると、認識されたテキストの検証を行う過程が行われてもよい。ここで、「検証」とは、それぞれのセルに含まれるテキストが正確に認識されたか否かを確認する過程を意味する。例えば、
図4の(a)に示すように、テーブル1100の特定のセル401には「組合負担額」というテキストが含まれるが、
図4の(b)に示すように、OCR部130により「粗合負担額」402というテキストが認識されることがある。
【0081】
この場合、原本資料とは異なる内容が認識(誤認識)されることにより、認識されるデータの信頼度及び正確度の問題が生じる。
【0082】
よって、制御部140は、テーブル1100から認識されたテキストの検証を行うようにしてもよい。この場合、本発明においては、それぞれのセル間の相互位置関係及び意味関係(又は連結関係)に基づいて、検証過程で補正が必要なセルに含まれるテキストの補正を行うようにしてもよい。
【0083】
そのために、本発明においては、複数のセルから補正対象セルを特定する過程が行われる(S330)。制御部140は、予め設定された基準に基づいて、複数のセルから少なくとも1つの補正対象セルを特定するようにしてもよい。ここで、予め設定された基準は非常に多様に設定することができ、よって、本発明において、補正対象セルが特定される過程は非常に多様である。
【0084】
例えば、制御部140は、テーブル1100を構成する複数のセルに対してテキストが認識されると、テキストの認識が行われた全てのセルの検証を行うようにしてもよい。
【0085】
この場合、テキストの認識が行われた全てのセルが補正対象セルとしてそれぞれ特定される。
【0086】
それとは異なり、制御部140は、テーブル1100を構成する複数のセルのうち、カテゴリーセルに含まれるテキストに対して検証を行うようにしてもよい。
【0087】
この場合、制御部140は、テーブル1100を構成する複数のセルのうち、カテゴリーセルに含まれるテキストのそれぞれを補正対象セルとして特定する。
【0088】
ここで、カテゴリーセルは、キーセルとも命名され、データセル(又はバリューセル)とは区分されるものである。
【0089】
カテゴリーセルは、タイトルセルとも命名され、データセルに含まれるデータ(テキスト)のカテゴリー、種類、所属、特徴などを定義する意味のテキストが含まれるセルとして理解される。
【0090】
カテゴリーは、同一又は類似の性質や意味を基準に分けられるものであり、範疇とも命名される。同一のカテゴリーに属するデータは、同一の意味、同一の種類、又は同一の所属に該当するデータであり得る。
【0091】
カテゴリーセルには、カテゴリー名又はカテゴリー名に関連するデータが含まれ、データセルには、カテゴリーセルに含まれるカテゴリー名に属するデータが含まれる。ここで、カテゴリー名は範疇名とも命名される。
【0092】
一例として、
図4の(a)に示すように、テーブル1100において、「診療,調剤日付(診療期間)」というテキストが含まれる特定のセル412は、カテゴリーセルであり、特定のセル412と同じ列に位置し、日付情報がそれぞれ含まれるセル403は、特定のセル412に関連するデータセルである。
【0093】
他の例として、テーブル1100において、「患者氏名」というテキストが含まれる特定のセル411は、カテゴリーセルであり、特定のセル411と同じ行に位置し、名前情報「ホン・ギルドン」が含まれるセル405は、特定のセル411に関連するデータセルである。
【0094】
図4に示すように、テーブル1100には、1つ又はそれ以上のカテゴリーセル411、412、413、414、415、416が含まれる。
【0095】
制御部140は、テーブル1100の構造及びセルに含まれるテキストの意味に基づいて、テーブル1100を構成する複数のセルのタイプを第1タイプ(カテゴリーセルタイプ)及び第2タイプ(データセルタイプ)のいずれかに特定することができる。
【0096】
また、制御部140は、テーブル1100を構成する複数のセルのうち、カテゴリーセルに含まれるテキストのそれぞれを、補正対象セルとして特定することができる。
【0097】
他の例として、制御部140は、テーブル1100を構成する複数のセルのうち、カテゴリーセルの少なくとも一部を、補正対象セルとして特定することができる。ここで、補正対象セルを特定するための予め設定された基準は、前記複数のセルに含まれるテキストに対する認識率に関連するものであってもよい。制御部140は、カテゴリーセルから抽出されたテキストのうち、テキストの認識及び抽出当時にテキスト認識率が低い特定のセルを、補正対象セルとして特定することができる。
【0098】
図5に示すように、OCR部130によりそれぞれのセルに対してテキストを認識する場合、それぞれのテキストの認識の信頼度を特定することができる。
【0099】
このような信頼度は、信頼度スコア(confidence score)又は信頼スコアとも命名される。
【0100】
図5に示すように、このような信頼度スコアは、テーブル1100を構成するそれぞれのセル及びセルから認識されたテキストの少なくとも一方とマッチングされて保存部120に保存されてもよい。
【0101】
制御部140は、
図5に示すように、テキストの信頼度が予め設定された基準条件を満たすカテゴリーセル(例えば、テキストの信頼度が基準スコア(基準確率など)未満であるセル)を補正対象セルとして特定することができる。
図5によれば、信頼スコアが1に近いほど、認識されたテキストが正確に認識された確率が高く、信頼スコアが0に近いほど、認識されたテキストが正確に認識された確率が低いことを意味する。
【0102】
本発明において、制御部140は、テキストが正確に認識された確率が低いセルに含まれるテキストの補正を行うことにより、データ処理の演算量を低減し、テーブル1100に含まれる情報を正確に抽出することができる。このように、制御部140は、認識された全てのテキストを補正対象テキストとして特定するのではなく、信頼度に基づいてテキストが正確に認識された確率が低いテキストを補正対象テキストとして特定する。よって、制御部140は、補正対象テキストとして特定されたテキストに対してのみ本発明による補正を行うので、全てのテキストに対して補正を行う場合より、データ処理の演算量を低減することができる。
【0103】
例えば、予め設定された基準条件が、テキストの信頼スコアが0.5未満であるセルを補正するように設定された場合、制御部140は、
図5において、「KEY7」に該当するセルを補正対象セルとして特定する。この場合、セル「KEY7」に含まれる「(1)粗合負担額」に該当するテキストの補正を行う。
【0104】
このように、様々な方法又は基準に基づいて補正対象セルが特定されると、制御部140は、テーブル1100に含まれる複数のセルのうち補正対象セルに関連する少なくとも1つの関連セル及びそれに含まれるコンテンツ(テキスト)を用いて、補正対象セルに含まれるテキストの補正を行うことができる。
【0105】
そのために、本発明においては、テーブル1100に含まれる複数のセルから補正対象セルに関連する関連セルを特定する過程が行われる(S340)。
【0106】
以下、説明の便宜上、補正対象セルが
図6Aに示す「(1)組合負担額」というテキストが含まれる特定のカテゴリーセル601であると仮定して説明する。以下の説明は、全てのカテゴリーセルに対して共通に適用することができる。
【0107】
図4、
図6A及び
図6Bに示すように、イメージ1000において、特定のカテゴリーセル601に「(1)組合負担額」に該当するテキストが含まれるが、
図5において説明したように、OCR認識エラーにより「(1)粗合負担額」というテキストが認識されることがある。よって、制御部140は、誤って認識されたテキストが含まれる特定のカテゴリーセル601及び特定のカテゴリーセル601に関連する少なくとも1つの関連セルを用いて、誤って認識されたテキスト(例えば、(1)粗合負担額)の補正を行うことができる。
【0108】
制御部140は、補正対象セル601を基準として、少なくとも1つの関連セルを特定することができる。
【0109】
制御部140は、補正対象セル601に含まれるテキストの意味及び補正対象セル601の位置の少なくとも一方に基づいて、関連セルを特定することができる。
【0110】
ここで、補正対象セル601の関連セルは、カテゴリーセルであってもよい。制御部140は、テーブル1100に含まれるカテゴリーセル及びデータセルのうち、カテゴリーセルのみを補正対象セル601の関連セルとして特定することができる。
【0111】
また、制御部140は、カテゴリーセルのうち、意味的に補正対象セル601に関連するテキストが含まれるカテゴリーセルを関連セルとして特定するか、又は位置的に補正対象セル601に隣接するカテゴリーセルを関連セルとして特定することができる。
【0112】
制御部140は、補正対象セル601に関連するセルを特定する際に、以下のケースのいずれかに基づいて関連セルを特定することができる。
【0113】
第1ケースとして、制御部140は、意味的に補正対象セル601に関連するテキストが含まれるカテゴリーセルを関連セルとして特定することができる。
【0114】
また、第2ケースとして、制御部140は、位置的に補正対象セル601に関連するカテゴリーセルを関連セルとして特定することができる。
【0115】
さらに、第3ケースとして、制御部140は、第1ケースと第2ケースとを組み合わせ、意味的に補正対象セル601に関連するテキストが含まれるカテゴリーセルを関連セルとして特定し、かつ位置的に補正対象セル601に関連するカテゴリーセルを関連セルとして特定することができる。第3ケース、第1ケース及び第2ケースにおいて関連セルとして特定されたセルの全てを補正対象セル601の関連セルとして特定することができる。
【0116】
以下、第1ケースの具体的な例として、補正対象セル601に含まれるテキストの意味に基づいて関連セルを特定する方法について説明する。
【0117】
まず、補正対象セル601に含まれるテキストの意味に基づいて関連セルを特定する方法について説明すると、制御部140は、補正対象セル601に含まれるテキストに関連する意味に該当するテキストが含まれる少なくとも1つのカテゴリーセルを関連セルとして特定することができる。
【0118】
制御部140は、人工知能アルゴリズムに基づいて、補正対象セル601に含まれるテキストの意味及び他のカテゴリーセルに含まれるテキストの意味を分析し、互いに関連する意味を有するテキストが含まれる少なくとも1つのカテゴリーセルを関連セルとして特定することができる。
【0119】
補正対象セル601に関連する意味を有するテキストは、補正対象セル601に含まれるテキストの上位概念又は下位概念の意味を有するテキストであってもよい。
【0120】
制御部140は、カテゴリーセルに対して補正対象セル601及び関連セルを特定するので、カテゴリーセルの特性上、補正対象セル601は、関連セルに対して上位概念又は下位概念に該当する意味を有するテキストを含む。例えば、補正対象セル601と関連セルとは、同一又は関連するカテゴリー(種類)に該当する意味を有するテキストで構成される。
【0121】
例えば、
図6Aに示すように、第1カテゴリーセル611に含まれるテキスト(「診療費(薬剤費)内訳」)は、第2カテゴリーセル612(「総額(1)+(2)+(3)」)、第3カテゴリーセル613(「給与」)、第4カテゴリーセル615(「(2)患者負担額」)、第5カテゴリーセル618(「患者負担総額(2)+(3)」)、第6カテゴリーセル601(補正対象セル、「(1)組合負担額」、OCR認識時には「(1)粗合負担額」として認識される)、第7カテゴリーセル617(「(3)患者負担額」)、第8カテゴリーセル616(「非給与」)に含まれるテキストに対する上位概念の意味を有する。
【0122】
また、第1カテゴリーセル611に対して下位概念のカテゴリーセルは、他のカテゴリーセルに対しては上位概念のカテゴリーセルでもある。例えば、第3カテゴリーセル613に含まれるテキスト「給与」は、第1カテゴリーセル611に含まれるテキスト「診療費(薬剤費)内訳」に対しては下位概念であり、第4カテゴリーセル615に含まれるテキスト「(2)患者負担額」及び第6カテゴリーセル601(補正対象セル)に含まれるテキスト「(1)組合負担額」(OCR認識時には「(1)粗合負担額」として認識される)に対しては上位概念である。
【0123】
一方、制御部140は、カテゴリーセルのうち、意味的に補正対象セル601に関連するテキストが含まれるカテゴリーセルを関連セルとして特定することができ、より具体的には、補正対象セル601に含まれるテキストの上位概念又は下位概念の意味を有するテキストが含まれるカテゴリーセルを関連セルとして特定することができる。
【0124】
第1ケースにおいて、補正対象セル601の関連セルは、補正対象セル601の上位概念のテキストが含まれる第1カテゴリーセル611(「診療費(薬剤費)内訳」)及び第3カテゴリーセル613(「給与」)に決定される。
【0125】
以下、第2ケースの具体的な例として、位置的に補正対象セル601に関連するカテゴリーセルを関連セルとして特定する方法について説明する。より具体的には、制御部140は、テーブル1100の特性を考慮して、補正対象セル601と予め設定された位置関係(又は配列関係)を有するカテゴリーセルを、補正対象セル601に含まれるテキストの意味に関連するカテゴリーセル、すなわち関連セルとして判断することができる。
【0126】
ここで、予め設定された位置関係は、補正対象セル601に隣接して位置することを意味するものであってもよい。例えば、第2カテゴリーセル612(「総額(1)+(2)+(3)」)、第3カテゴリーセル613(「給与」)、第4カテゴリーセル615(「(2)患者負担額」)及び特定のデータセル622は、補正対象セル601に隣接して位置するものであり、補正対象セル601と予め設定された位置関係を有するといえる。
【0127】
このように、補正対象セル601と予め設定された位置関係を有するセルは、補正対象セル601を基準にして補正対象セル601と列方向a又は行方向bに並んで位置し、補正対象セル601に隣接して位置するセルに該当するものである。
【0128】
ここで、補正対象セル601の列方向aに並んで位置するセルは、
図6Aの符号621、611、613、601、622に該当するセルであり、補正対象セル601の行方向bに並んで位置するセルは、
図6Aの符号641、642、612、601、615、617、618、643、644、645に該当するセルである。
【0129】
一方、制御部140は、カテゴリーセルのみを補正対象セル601の関連セルとして特定するので、前述した予め設定された位置関係を有するセル(第2カテゴリーセル612(「総額(1)+(2)+(3)」)、第3カテゴリーセル613(「給与」)、第4カテゴリーセル615(「(2)患者負担額」)及び特定のデータセル622)のうち特定のデータセル622は関連セルから除外される。
【0130】
その結果、制御部140は、
図6Bに示すように、予め設定された位置関係を有するセルから、カテゴリーセルに該当する第2カテゴリーセル612(「総額(1)+(2)+(3)」)、第3カテゴリーセル613(「給与」)、第4カテゴリーセル615(「(2)患者負担額」)を関連セルとして特定することができる。
【0131】
第2ケースによれば、補正対象セル601の関連セルとして、第2カテゴリーセル612(「総額(1)+(2)+(3)」)、第3カテゴリーセル613(「給与」)、第4カテゴリーセル615(「(2)患者負担額」)が特定される。
【0132】
一方、制御部140は、補正対象セル601と位置的関係性を有する関連セルを特定するために、補正対象セル601のコーナー(頂点)の中央値をテーブル1100又はイメージ1000上での補正対象セル601の位置として特定し、当該位置を基準として、予め設定された距離以内に位置する中央値を有するカテゴリーセル612、613、615を関連セル612、613、615として特定することができる。
【0133】
ここで、予め設定された距離は、L2距離情報に基づくものであってもよく、L2距離情報は、ユークリッド距離(Euclidean distance)情報ともいえる。
【0134】
このように、制御部140は、テーブル1100において、左、右、上、下方向毎に、補正対象セル601のコーナー(頂点)の中央値からそれぞれ予め設定された距離以内に位置する中央値を有するカテゴリーセルが存在するか否かを確認することができる。また、確認の結果、予め設定された距離以内に位置する中央値を有するカテゴリーセルが存在する場合、それを関連セルとして特定することができる。
【0135】
前述したように、制御部140は、第1ケース又は第2ケースによって、補正対象セル601に関連する関連セルを特定することができる。
【0136】
また、制御部140は、第1ケースにより特定された関連セル及び第2ケースにより特定された関連セルの全てを、補正対象セル601の関連セルとして特定することができる。この場合は前述した第3ケースに該当する。
【0137】
前述したように、制御部140は、テーブル1100に含まれるカテゴリーセルのうち、第1ケースにより、意味的に補正対象セル601に関連するテキストが含まれるカテゴリーセルを関連セルとして特定し、また、第2ケースにより、位置的に補正対象セル601に隣接するカテゴリーセルを関連セルとして特定することができる。その結果、補正対象セル601の関連セルは、
図6A及び
図6Bに示すように、第1カテゴリーセル611(「診療費(薬剤費)内訳」)、第2カテゴリーセル612(「総額(1)+(2)+(3)」)、第3カテゴリーセル613(「給与」)、第4カテゴリーセル615(「(2)患者負担額」)となる。
【0138】
ここで、少なくとも1つのカテゴリーセル(例えば、第3カテゴリーセル613(「給与」)は、意味的及び位置的に重複して関連セルとして特定される。
【0139】
補正対象セル601の関連セルとして特定されたカテゴリーセル611、612、613、615は、「関連セル」とも命名されてもよいことは言うまでもなく、同一の符号を用いる。
【0140】
以下では、第3ケースの例示として、意味的関係及び位置的関係の両方を考慮して特定された関連セルを用いて補正対象セル601に含まれるテキストの補正を行う方法を例に挙げて説明する。
【0141】
前述したように、第3ケースにより、補正対象セル601及び少なくとも1つの関連セルが特定された場合、制御部140は、
図6Cに示すように、補正対象セル601及び関連セル611、612、613、615に含まれるテキストを用いて補正対象セル601の埋め込み(embedding)を行って計算(又は算出、導出)された密ベクトル(dense vector)を、補正対象セル601の補正に活用することができる。本発明においては、補正対象セル及び関連セルに含まれるテキスト間の関係性を示すために、補正対象セル及び関連セルに含まれるテキストの埋め込みを行い、補正対象セル及び関連セルに含まれるテキストをベクトルで示すことができる。
【0142】
ここで、埋め込みは、埋め込みの対象となる情報をベクトルで表現する方法であり、本発明において、制御部140は、埋め込みにより、補正対象セル601及び関連セル611、612、613、615の情報を密ベクトルの形で表現することができる。
【0143】
より具体的には、制御部140は、補正対象セル601及び関連セル611、612、613、615のそれぞれに含まれるテキストを用いて、補正対象セル601を示す密ベクトルを計算することができる。
【0144】
また、制御部140は、補正対象セル601及び関連セル611、612、613、615を用いて計算された密ベクトルを、補正対象セル601の補正に用いることができる。
【0145】
本発明において、埋め込みを行うアルゴリズムは特に限定されず、テキストを密ベクトルで表現できるアルゴリズムであれば本発明に活用することができる。例えば、制御部140は、FastText、BERTなどのアルゴリズムに基づいて、補正対象セル601及び関連セル611、612、613、615に含まれるテキストを基に補正対象セル601を示す密ベクトルを計算することができる。
【0146】
一方、制御部140は、埋め込みを行うために、
図6Cに示すように、補正対象セル601及び関連セル611、612、613、615に含まれるテキスト631、632、633、634、635を並べることができる。ここで、制御部140は、補正対象セル601及び関連セル611、612、613、615に含まれるテキスト631、632、633、634、635の並び順序を、予め設定された基準に基づいて決定することができる。
【0147】
例えば、制御部140は、意味的関連性のある関連セル611、613に含まれるテキスト632、634を補正対象セル601に含まれるテキスト631にさらに近い位置に配置することもでき、逆に、位置的関連性のある関連セル612、613、615に含まれるテキスト633、634、635を補正対象セル601に含まれるテキスト631にさらに近い位置に配置することもできる。
【0148】
また、制御部140は、意味的関連性及び位置的関連性の両方を有する関連セル613に含まれるテキスト634を補正対象セル601に含まれるテキスト631に最も近い位置に配置することもできる。
【0149】
このように、制御部140は、埋め込みにより、補正対象セル601及び関連セル611、612、613、615に含まれるテキストを基に補正対象セル601をベクトルで示すことができる。このように、補正対象セル601及び関連セル611、612、613、615に含まれるテキスト631、632、633、634、635を基に補正対象セル601に対して埋め込みが完了すると、本発明においては、補正対象セルの補正を行う過程が行われる(S350)。
【0150】
制御部140は、補正対象セル601及び関連セルに含まれるテキスト631、632、633、634、635を用いて算出された補正対象セルのベクトルを用いて、補正対象セル601に含まれるテキストの補正を行うことができる。ここで、補正対象セル601のベクトルは、前述した密ベクトルに該当するものであり得る。
【0151】
より具体的には、制御部140は、予め特定されたデータセットから、補正対象セル601のベクトルに最も類似したベクトル表現を有する単語(例えば、補正対象ベクトルに最も近い距離に位置する特定のベクトルに対応する単語)を、補正対象テキストとして抽出することができる。
【0152】
制御部140は、補正対象セル601及び関連セル611、612、613、615を用いて計算された補正対象セルのベクトルと予め特定されたデータセットに含まれるベクトル間の距離に基づいて、予め特定されたデータセットから補正対象テキストを抽出することができる。ここで、予め特定されたデータセットは、テーブル1100に含まれる複数のセル、特にカテゴリーセルに含まれ得る候補テキスト及びそれに対応するベクトルを含んでもよい。このようなデータセットは、事前に構築されたものであってもよく、データセットに含まれ得る候補テキストは、データセットが構築された後も、さらにデータセットに含まれるか、又はデータセットから除去されることが可能である。
【0153】
また、このようなデータセットには、テーブル1100を構成する複数のセルの位置関係及びそれぞれのセルに含まれる候補テキスト間の意味関係の少なくとも一方に基づいて埋め込みが行われた結果が含まれてもよい。すなわち、データセットには、候補テキストのそれぞれに関するベクトル情報が含まれてもよい。
【0154】
制御部140は、データセットから、補正対象セル601のベクトルに最も近い特定のベクトルに対応するテキスト806(
図7参照)を、補正対象テキストとして抽出することができる。
【0155】
また、制御部140は、補正対象セル601に含まれるテキストを、補正対象セル601のベクトルに最も近い特定のベクトルに対応するテキスト806(
図7参照)に変更することができる。
【0156】
このように、制御部140は、補正対象セル601及び関連セル611、612、613、615に含まれるテキスト801~805を用いて導出された補正対象セル601のベクトルを用いて、データセットから、補正対象テキスト806を抽出することができる。
【0157】
その結果、補正対象セル601に対して誤って認識されたテキスト「(1)粗合負担額」が「(1)組合負担額」に補正される。
【0158】
このように、データセットから補正対象テキスト806が抽出されると、制御部140は、補正対象セル601に含まれるテキスト801を補正対象テキスト806に変更することができる。
【0159】
一方、前述したように、補正対象テキスト806が抽出されると、制御部140は、抽出された補正対象テキスト806を、イメージ1000に含まれるテーブル1100をデータ化するのに活用することができる。制御部140は、イメージ1000に含まれるテーブル1100のデータ化の結果として得られたデータ上に、補正対象テキスト806を含めることができる。
【0160】
また、制御部140は、テーブル1100をデータ化するだけでなく、データ化の結果として得られたデータを用いて、イメージ1000に含まれるテーブル1100に対応する構造を有するテーブルを生成することができる。
【0161】
例えば、制御部140は、
図8の(a)に示すように、スキャンされたイメージに含まれるテーブル910から抽出されたデータの少なくとも一部に該当するテキスト930(「撰沢診療科以外」)にエラーがある場合、前述した方法で補正を行うことにより、
図8の(b)に示すように、補正されたテキスト940(「選択診療料以外」)が含まれるデータを確保することができる。また、必要に応じて、補正されたテキスト940が含まれるテーブル920を生成することができ、このようなテーブル920は、スキャンの対象となったテーブル910と同じ内容で構成される。
【0162】
前述したように、本発明による文字認識方法及び文字認識システムは、イメージに含まれるテーブルからテキストを認識し、認識されたテキストの検証を行うことにより、イメージに含まれるテーブルの内容をより正確にデータ化することができる。
【0163】
より具体的には、本発明による文字認識方法及び文字認識システムは、イメージに含まれるテーブルから、テーブルに含まれるテキストが誤って認識された場合、それを補正することにより、イメージに含まれるテーブルの内容をより正確にデータ化することができる。そのために、本発明においては、テーブルを構成するセルの配置関係、セルに含まれるテキストの意味関係を考慮して、補正の対象となったセルに含まれるテキストを補正することにより、イメージに含まれるテーブルの内容をそのままデータ化することのできる、正確度の高い文字認識方法及びシステムを提供することができる。その結果、本発明による文字認識方法及びシステムは、イメージに含まれるテーブルと同じ内容を含むテーブルを生成することができる。
【0164】
また、本発明による文字認識方法及び文字認識システムは、テキスト認識率が低い特定のセルに対してのみ補正を行うことにより、イメージに含まれるテーブルの内容を正確にデータ化しながらも、データ処理量を最小限に抑えることができる。
【0165】
一方、前述した本発明は、コンピュータで1つ以上のプロセスにより実行され、コンピュータ可読媒体(又は記録媒体)に格納可能なプログラムとして実現することができる。
【0166】
また、前述した本発明は、プログラム記録媒体にコンピュータ可読コード又はコマンドとして実現することができる。すなわち、本発明は、プログラムの形態で提供することができる。
【0167】
一方、コンピュータ可読媒体は、コンピュータシステムにより読み取り可能なデータが記録されるあらゆる種類の記録装置を含む。コンピュータ可読媒体の例としては、HDD(Hard Disk Drive)、SSD(Solid State Disk)、SDD(Silicon Disk Drive)、ROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、光データ記憶装置などが挙げられる。
【0168】
また、コンピュータ可読媒体は、ストレージを含み、電子機器が通信によりアクセスできるサーバ又はクラウドストレージであり得る。この場合、コンピュータは、有線又は無線通信により、サーバ又はクラウドストレージから本発明によるプログラムをダウンロードすることができる。
【0169】
さらに、本発明において、前述したコンピュータは、プロセッサ、すなわち中央処理装置(Central Processing Unit,CPU)が搭載された電子機器であり、その種類は特に限定されない。
【0170】
一方、本発明の詳細な説明は例示的なものであり、あらゆる面で制限的に解釈されてはならない。本発明の範囲は添付の特許請求の範囲の合理的解釈により定められるべきであり、本発明の等価的範囲内でのあらゆる変更が本発明の範囲に含まれる。
【符号の説明】
【0171】
100 文字認識システム
110 受信部
120 保存部
130 OCR部
140 制御部
150 外部サーバ
151 クラウドサバー
152 データベース(DB)
200 テーブル
201、202 水平ライン
203、204 垂直ライン
210 セル
1000 イメージ
1100 テーブル