(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-12
(45)【発行日】2023-10-20
(54)【発明の名称】構造認識システム、構造認識装置、構造認識方法、及びプログラム
(51)【国際特許分類】
G06V 30/413 20220101AFI20231013BHJP
G06T 7/11 20170101ALI20231013BHJP
G06T 7/00 20170101ALI20231013BHJP
【FI】
G06V30/413
G06T7/11
G06T7/00 350B
(21)【出願番号】P 2019179710
(22)【出願日】2019-09-30
【審査請求日】2022-08-03
(73)【特許権者】
【識別番号】000110217
【氏名又は名称】TOPPANエッジ株式会社
(73)【特許権者】
【識別番号】500140725
【氏名又は名称】株式会社オープンストリーム
(74)【代理人】
【識別番号】100141139
【氏名又は名称】及川 周
(74)【代理人】
【識別番号】100140774
【氏名又は名称】大浪 一徳
(74)【代理人】
【識別番号】100206999
【氏名又は名称】萩原 綾夏
(72)【発明者】
【氏名】大串 美恵
(72)【発明者】
【氏名】馬場 貴広
(72)【発明者】
【氏名】▲高▼岡 陽太
(72)【発明者】
【氏名】寺田 英雄
【審査官】新井 則和
(56)【参考文献】
【文献】国際公開第2018/016552(WO,A1)
【文献】特開2009-140258(JP,A)
【文献】特許第6550163(JP,B1)
【文献】特開2015-204030(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/413
G06T 7/11
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
文字と矩形とを含む対象画像における画像データを取得する画像データ取得部と、
前記対象画像における文字と矩形のそれぞれの領域を判定する領域判定部と、
前記領域判定部によって判定された前記領域に関する領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定
し、前記対象画像に含まれる矩形のうち、前記階層構造を判定する対象である着目矩形の従属元となる矩形又は文字を判定する構造判定部と、
を備える構造認識システム。
【請求項2】
文字と矩形とを含む対象画像における画像データを取得する画像データ取得部と、
前記対象画像における文字と矩形のそれぞれの領域を判定する領域判定部と、
前記領域判定部によって判定された前記領域に関する領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定する構造判定部と、
文字の領域を示す前記領域データを用いて、当該領域に示される第1文字に対応する特定の第2文字を含む意味タグ情報を生成する前処理部と、
を備え
、
前記構造判定部は、学習済みモデルを用いて前記対象画像に含まれる前記階層構造を判定し、
前記学習済みモデルは、文字と矩形とを含む学習画像における前記意味タグ情報及び矩形の領域を示す前記領域データと、前記学習画像に含まれる矩形の階層構造とを対応付けた学習用データセットを用いて、入力された画像に含まれる矩形の階層構造を出力するように学習されたモデルである、
構造認識システム。
【請求項3】
文字の領域を示す前記領域データを用いて、当該領域に示される第1文字に対応する特定の第2文字を含む意味タグ情報を生成する前処理部を更に備え、
前記構造判定部は、前記意味タグ情報と、矩形の領域を示す前記領域データとに基づいて、前記階層構造を判定する、
請求項1に記載の構造認識システム。
【請求項4】
前記構造判定部は、学習済みモデルを用いて前記階層構造を判定し、
前記学習済みモデルは、文字と矩形とを含む学習画像における前記意味タグ情報及び矩形の領域を示す前記領域データと、前記学習画像に含まれる矩形の前記階層構造とを対応付けた学習用データセットを用いて、入力された画像に含まれる矩形の階層構造を出力するように学習されたモデルである、
請求項
3に記載の構造認識システム。
【請求項5】
前記構造判定部は、前記対象画像において、前記階層構造を判定する着目矩形を選択し、前記選択した着目矩形の位置から所定の第1範囲内に位置する前記意味タグ情報である近傍意味タグ群を取得し、前記選択した着目矩形の位置から所定の第2範囲内に位置する矩形の前記領域データである近傍矩形群を取得し、取得した前記着目矩形、前記近傍意味タグ群、及び前記近傍矩形群の位置に応じた並べ替えを行うことにより、前記学習済みモデルに入力させる入力データの順序を決定する、
請求項
2又は請求項4に記載の構造認識システム。
【請求項6】
対象画像における文字と矩形とのそれぞれの領域に関する領域データを取得する領域データ取得部と、
前記領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定
し、前記対象画像に含まれる矩形のうち、前記階層構造を判定する対象である着目矩形の従属元となる矩形又は文字を判定する構造判定部と、
を備える構造認識装置。
【請求項7】
領域データ取得部が、対象画像における文字と矩形とのそれぞれの領域に関する領域データを取得し、
構造判定部が、前記領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定
し、前記対象画像に含まれる矩形のうち、前記階層構造を判定する対象である着目矩形の従属元となる矩形又は文字を判定する、
構造認識方法。
【請求項8】
コンピュータを、請求項
6に記載の構造認識装置として動作させるためのプログラムであって、前記コンピュータを前記構造認識装置が備える各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、構造認識システム、構造認識装置、構造認識方法、及びプログラムに関する。
【背景技術】
【0002】
帳票などの文書をスキャナー等により読み込むことにより作成されたスキャン画像から、画像内の文字情報を抽出する技術がある(例えば、特許文献1-2参照)。特許文献1の技術では、画像内の文字をその位置に基づいて構造化することにより、文字情報の誤りを修正し易くする技術が開示されている。特許文献1の構造化とは、文字情報を一群の情報ごとにまとめ、まとめた情報の階層関係を特定し、表現すること、と記載されている。例えば、画像から、タイトル、文書作成者、及び文書作成日等の文字情報が抽出された場合、構造化されたデータでは、最上位の階層にタイトルが示され、その下層に文書作成者、及び文書作成日が示される。特許文献2の技術では、画像内の文字情報と、罫線の特徴を示す特徴情報を抽出する。これにより、文書を検索する際に、文書に記載された文字に加えて、文書に記載された罫線の特徴を指定することができ、効率よく検索することが可能である。
【0003】
一方、近年のコンピュータおよび通信ネットワーク技術の発展に伴い、紙媒体の情報が電子データに置き換えられる傾向がある。帳票を電子化することにより、ペーパーレス化による業務の効率化や省資源化を実現することができ、尚且つ、スマートフォンなどの電子機器を介して文書の記入欄などに記入することができるようになり、ユーザの利便性を向上させることができる。
【0004】
帳票を電子化する場合、そのレイアウトが変更されることが多い。帳票が印字された紙面と、スマートフォンなどの電子機器の画面とでは、アスペクト比が互いに異なり、紙の帳票のレイアウトを変更することなく、そのまま電子機器の画面に表示させると、表示の縮尺によっては文書の一部が表示できなかったり、画像全体を表示させようとすると、かなり縮小されてしまい文字が読み取り難くなってしまったりする可能性があるためである。レイアウトを変更する場合には、変換前の帳票に記載されていた内容を、変換後の帳票に過不足なく反映させる必要がある。この対策として、例えば、特許文献1-2の技術を適用して帳票のレイアウトを変更することが考えられる。特許文献1-2の技術を用いれば、帳票に記載された文字の構造、及び罫線の特徴を維持して、レイアウトを変更することが可能となる。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2019-82814号公報
【文献】特開2008-40834号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、文字の構造、及び罫線の特徴を維持してレイアウトを変更しても、変換前の帳票に記載されていた内容を、変換後の帳票に過不足なく反映させることができない。帳票には、必要事項を記入するための記入枠が存在するものが多い。このような記入枠のほとんどが、文字を含まない、単純な矩形で示される。このような記入枠それ自体からは文字の情報を抽出することはできない。このため特許文献1の技術では、記入枠などの矩形を含む帳票に記載されている事項すべてについて階層構造を判定することが困難である。また、特許文献2を用いてレイアウト変更後の帳票に変更前の罫線の特徴が維持されたとしても、罫線で区分される何れの領域に文字を記載するか、或いは記載しないで記入枠とするかが判らなければ、適切にレイアウト変換を行うことができない。このように、従来の技術をそのまま利用するのみでは、帳票に記載されている事項(矩形を含む)の意味的な繋がり(構造)を維持しながら、レイアウトを変更することが困難であった。
【0007】
本発明は、このような状況に鑑みてなされたもので、矩形を含む文書のレイアウトを変換するために必要な情報を抽出することができる構造認識システム、構造認識装置、構造認識方法、及びプログラムを提供する。
【課題を解決するための手段】
【0008】
本発明の上述した課題を解決するために、本発明は、文字と矩形とを含む対象画像における画像データを取得する画像データ取得部と、前記対象画像における文字と矩形のそれぞれの領域を判定する領域判定部と、前記領域判定部によって判定された前記領域に関する領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定する構造判定部と、を備え、前記構造判定部は、前記対象画像に含まれる矩形のうち、前記階層構造を判定する対象である着目矩形の従属元となる矩形又は文字を判定する構造認識システムである。
また、本発明は、文字と矩形とを含む対象画像における画像データを取得する画像データ取得部と、前記対象画像における文字と矩形のそれぞれの領域を判定する領域判定部と、前記領域判定部によって判定された前記領域に関する領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定する構造判定部と、文字の領域を示す前記領域データを用いて、当該領域に示される第1文字に対応する特定の第2文字を含む意味タグ情報を生成する前処理部と、を備え、前記構造判定部は、学習済みモデルを用いて前記階層構造を判定し、前記学習済みモデルは、文字と矩形とを含む学習画像における前記意味タグ情報及び矩形の領域を示す前記領域データと、前記学習画像に含まれる矩形の階層構造とを対応付けた学習用データセットを用いて、入力された画像に含まれる矩形の階層構造を出力するように学習されたモデルである、構造認識システムである。
【0009】
また、本発明は、上述の構造認識システムにおいて、文字の領域を示す前記領域データを用いて、当該領域に示される第1文字に対応する特定の第2文字を含む意味タグ情報を生成する前処理部を更に備え、前記構造判定部は、前記意味タグ情報と、矩形の領域を示す前記領域データとに基づいて、前記階層構造を判定する。
【0010】
また、本発明は、上述の構造認識システムにおいて、前記構造判定部は、学習済みモデルを用いて前記階層構造を判定し、前記学習済みモデルは、文字と矩形とを含む学習画像における前記意味タグ情報及び矩形の領域を示す前記領域データと、前記学習画像に含まれる矩形の前記階層構造とを対応付けた学習用データセットを用いて、入力された画像に含まれる矩形の階層構造を出力するように学習されたモデルである。
【0011】
また、本発明は、上述の構造認識システムにおいて、前記構造判定部は、前記対象画像において、前記階層構造を判定する着目矩形を選択し、前記選択した着目矩形の位置から所定の第1範囲内に位置する前記意味タグ情報である近傍意味タグ群を取得し、前記選択した着目矩形の位置から所定の第2範囲内に位置する矩形の前記領域データである近傍矩形群を取得し、取得した前記着目矩形、前記近傍意味タグ群、及び前記近傍矩形群の位置に応じた並べ替えを行うことにより、前記学習済みモデルに入力させる入力データの順序を決定する。
【0012】
また、本発明は、対象画像における文字と矩形とのそれぞれの領域に関する領域データを取得する領域データ取得部と、前記領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定し、前記対象画像に含まれる矩形のうち、前記階層構造を判定する対象である着目矩形の従属元となる矩形又は文字を判定する構造判定部と、を備える構造認識装置である。
【0013】
また、本発明は、領域データ取得部が、対象画像における文字と矩形とのそれぞれの領域に関する領域データを取得し、構造判定部が、前記領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定し、前記対象画像に含まれる矩形のうち、前記階層構造を判定する対象である着目矩形の従属元となる矩形又は文字を判定する構造認識方法である。
【0014】
また、本発明は、コンピュータを、上記に記載の構造認識装置として動作させるためのプログラムであって、前記コンピュータを前記構造認識装置が備える各部として機能させるためのプログラムである。
【発明の効果】
【0015】
本発明によれば、矩形を含む文書のレイアウトを変換するために必要な情報を抽出することができる。
【図面の簡単な説明】
【0016】
【
図1】実施形態に係る構造認識システム1の構成例を示す図である。
【
図2】実施形態に係る構造認識システム1が行う処理を説明する図である。
【
図3】実施形態に係る領域分割装置10の構成例を示すブロック図である。
【
図4】実施形態に係る構造認識装置30の構成例を示すブロック図である。
【
図5】実施形態に係る変換テーブル360の構成例を示す図である。
【
図6】実施形態に係る領域分割装置10が行う処理を説明する図である。
【
図7】実施形態に係る構造認識装置30が行う処理を説明する図である。
【
図8】実施形態に係る構造認識システム1を適用したレイアウト変換の例を示す図である。
【
図9】実施形態に係る構造認識システム1が行う処理の流れを示すシーケンス図である。
【発明を実施するための形態】
【0017】
以下、発明の実施形態について図面を参照しながら説明する。
【0018】
本実施形態の構造認識システム1は、矩形を含む文書のレイアウトを変換するために必要な情報を抽出するシステムである。
【0019】
以下の説明では、レイアウトを変換する対象とする文書が帳票である場合を例示して説明するが、これに限定されることはない。レイアウトを変換する対象は、少なくとも文字と矩形とが含まれる文書であればよく、例えば、アンケート、問診票、テスト問題、定型文テンプレート、アイディアシートなど、任意の文書であってよい。文書に含まれる矩形とは、文書において長方形や正方形など四角形状に囲まれた領域を示す。矩形は、実線で囲まれた領域のみならず、点線や特定の記号や図形により囲まれた矩形の領域、或いは、背景色の濃淡等により区分される矩形の領域を含む。また、文書に含まれる文字とは、単体の文字のみならず、複数の文字からなる文字列や、文字群を含む。
【0020】
レイアウトを変換するために必要な情報とは、帳票に含まれる文字及び矩形の階層構造を示す情報(以下、構造化データと称する)である。帳票に含まれる文字及び矩形の階層構造が判れば、その構造を維持したままレイアウトを変換することができる。したがって、レイアウト変換前と変換後において帳票に示される文字や記入欄等とそれらの相対的な位置関係を維持することができる。すなわち、帳票が示している内容を維持したままレイアウトを変更するためには、帳票に含まれる文字及び矩形の構造化データを抽出する必要がある。
【0021】
構造化データの例を説明する。
図6に示すように、帳票が、矩形の領域K1~K5を含む場合を考える。
図7に示すように、領域K1~K3の構造化データは、上位の階層に領域K1、その下に領域K2、K3が従属されるという階層構造を示す情報である。領域K4、K5の構造化データは、上位の階層に領域K4、その下に領域K5が従属されるという階層構造を示す情報である。
【0022】
構造認識システム1の全体構成について、
図1を用いて説明する。
図1は、実施形態に係る構造認識システム1の構成例を示すブロック図である。
図1に示すように、構造認識システム1は、例えば、領域分割装置10と、OCR装置20と、構造認識装置30とを備える。構造認識システム1におけるこれらの構成要素(領域分割装置10、OCR装置20、及び構造認識装置30)は、通信可能に接続される。
なお、
図1ではOCR装置20が文字認識を行う場合を例示したが、文字認識処理の機能が、領域分割装置10、又は構造認識装置30に設けられていてもよく、この場合、OCR装置20を省略することができる。
【0023】
領域分割装置10は、帳票を、その帳票に示された文字及び矩形等の領域に分割する装置である。OCR装置20は、入力された画像に示された文字を認識する文字認識処理を行う装置である。構造認識装置30は、帳票に示される矩形の階層構造を判定する装置である。
【0024】
以下では、構造認識装置30が、帳票に示される「矩形」の階層構造を特定する場合を例示して説明する。帳票に示される「文字」の階層構造を特定する場合にも同様の方法を適用することができる。
【0025】
また、以下では、階層構造として、帳票に含まれる矩形の従属元となる矩形又は文字の識別情報(以下、親IDと称する)を判定する場合を例示して説明する。この場合、構造化データは、矩形と、その矩形の親IDとを対応付けた情報である。階層構造として親IDを判定する方法を用いることによって、データ容量の増加を抑制しつつ、矩形の構造を一意に特定することができるため好適である。しかしながら、これに限定されることはない。矩形の階層構造を特定する方法として、矩形の従属先となる矩形又は文字の識別情報(以下、子IDと称する)を判定することも考えられる。この場合、一つの矩形に複数の文字や矩形が従属する構造が有り得るため、矩形に複数の子IDを対応付けられるような構成をとる必要があるためデータ容量の増加を招く要因となり得る。矩形の階層構造を特定する方法は、少なくとも階層構造が特定できれば、任意の方法であってよい。矩形の階層構造を特定する方法は、矩形に親IDを対応付ける方法であってもよいし、矩形に子IDを対応付ける方法であってもよいし、矩形に親IDと子IDの双方を対応付ける方法であってもよいし、他の方法であってもよいのは勿論である。
【0026】
ここで、構造認識システム1が行う処理について、
図2を用いて説明する。
図2は、実施形態に係る構造認識システム1が行う処理を説明する図である。
図2に示すように、帳票Tをスキャナーにより読み込む処理(スキャン処理SC)によりスキャンされた帳票Tの画像(スキャン画像)を示す情報(スキャン画像データSD)が作成される。スキャン画像は、領域分割装置10による処理の対象となる画像である。すなわち、スキャン画像は、「対象画像」の一例である。スキャン画像データSDは、領域分割装置10に入力される。これにより、領域分割装置10は、スキャン画像データSDを取得する。
【0027】
領域分割装置10は、スキャン画像データSDに基づいて、帳票Tにおける文字、矩形などの要素ごとの領域に分割する。領域分割装置10は、スキャン画像における、文字の領域を示す情報(文字領域データMD)、及び矩形の領域を示す情報(矩形領域データKD)を出力する。領域分割装置10は、文字領域データMDをOCR装置20に出力する。文字領域データMDは、「領域データ」の一例である。矩形領域データKDは、「領域データ」の一例である。
【0028】
OCR装置20は、領域分割装置10から取得した文字領域データに示される文字を認識する文字認識処理を行なう。OCR装置20は、認識した文字の内容を示す情報(文字認識データMND)を構造認識装置30に通知する。文字認識データMNDは、構造認識装置30に入力される。これにより、構造認識装置30は、文字認識データMNDを取得する。
【0029】
一方、領域分割装置10によって出力された文字領域データMD、及び矩形領域データKDは、構造認識装置30に入力される。これにより、構造認識装置30は、文字領域データMD、及び矩形領域データKDを取得する。
【0030】
構造認識装置30は、領域分割装置10から取得した文字領域データMD、及び矩形領域データKD、及びOCR装置20から取得した文字認識データMNDに基づいて、帳票に示される矩形の階層構造を判定する。構造認識装置30は、変換テーブル360を用いて、文字認識データMNDを、その文字の意味ごとに区分する。構造認識装置30は、構造判定部34よって、文字領域データMD、矩形領域データKD、及び文字認識データMNDをその文字の意味ごとに区分した情報を用いて、矩形の階層構造を判定する。構造認識装置30が矩形の階層構造を判定する方法については後で詳しく説明する。構造認識装置30は、矩形の階層構造を示す情報(構造化データKZD)を出力する。
【0031】
ここで、領域分割装置10の構成について、
図3を用いて説明する。
図3は、実施形態に係る領域分割装置10の構成例を示すブロック図である。
図3に示すように、領域分割装置10は、例えば、画像データ取得部11と、変調画像生成部12と、領域判定部13と、領域データ出力部14と、記憶部15とを備える。
【0032】
画像データ取得部11は、スキャン画像データSDを取得する。スキャン画像データSDは、例えば、画素ごとに、画像に関する情報が対応付けられた情報であり、画素ごとのグレースケール値が示された情報、或いは、画素ごとのRGB値が示された情報等である。画像データ取得部11は、取得したスキャン画像データSDを、変調画像生成部12、及び領域判定部13に出力する。
【0033】
変調画像生成部12は、画像データ取得部11から取得したスキャン画像データSDに基づいて、強調画像を生成する。強調画像は、スキャン画像における画素ごとの画素値(グレースケール値や、RGB値)を所定の変調条件に基づいて変更した画像である。
【0034】
変調画像生成部12は、例えば、スキャン画像のエッジを強調する強調処理を行った画像を強調画像として生成する。この場合、変調画像生成部12は、スキャン画像におけるエッジを検出し、検出したエッジを強調する処理を行う。変調画像生成部12は、例えば、従来行われている任意の手法により、スキャン画像におけるエッジを検出する。任意の手法とは、例えば、スキャン画像にメディアンフィルタ処理を行ったものと、ガウシアンフィルタなどによる平滑化処理を行ったものとの差分を検出することにより、エッジを検出する手法である。或いは、スキャン画像に、ラプラシアンフィルタやソーベル(Sobel)フィルタを適用することにより、エッジを検出する手法を用いてもよい。変調画像生成部12は、検出したエッジをある特定の画素値(例えば、「黒」を示すグレースケール値や、RGB値)とし、エッジとして検出されなかった画素の画素値を、別の特定の画素値(例えば、「白」を示すグレースケール値や、RGB値)に変換することにより、強調画像を生成する。変調画像生成部12は、生成した強調画像の画像データを領域判定部13に出力する。
【0035】
領域判定部13は、スキャン画像、及び強調画像のそれぞれの画像における文字、矩形及び背景(文字でなく、且つ矩形でない要素)の領域を判定する。領域判定部13は、例えば、領域判定モデル150を用いて画像における文字、及び矩形の領域を判定する。領域判定モデル150は、記憶部15に記載される情報であって、画像データと、画像における文字、矩形及び背景のそれぞれの領域を判定した結果とを対応付けた学習用データセットを、学習モデルに学習させた学習結果である。このような学習用データセットを学習させることにより、学習モデルは、入力された画像のデータに対し、その画像における文字、及び矩形の領域を、精度よく出力(予測)できるように学習される。学習モデルは、例えば、DCNN(Deep Convolutional Neural Network)であるが、これに限定されることはない。学習モデルとして、例えば、CNN、決定木、階層ベイズ、SVM(Support Vector Machine)などの手法、およびこれらを適宜組み合わせた手法が用いられてもよい。
【0036】
領域判定部13は、スキャン画像、及び強調画像におけるそれぞれの判定結果に基づいて、スキャン画像における文字、矩形及び背景のそれぞれの領域を確定させる。領域判定部13は、例えば、スキャン画像の判定結果と、強調画像の判定結果とが一致する領域については、スキャン画像の判定結果をそのまま確定させる。
【0037】
一方、領域判定部13は、スキャン画像の判定結果と、強調画像の判定結果とが一致しない領域については、予め定めた所定の規定に基づいて文字、矩形及び背景のそれぞれの領域を確定させる。例えば、領域判定部13は、スキャン画像、及び強調画像のうち少なくとも一方が文字、他方が背景と判定した領域を、スキャン画像における文字の領域に確定させる。領域判定部13は、例えば、スキャン画像、及び強調画像のうち少なくとも一方が矩形、他方が背景と判定した領域を、スキャン画像における矩形の領域に確定させる。領域判定部13は、スキャン画像における文字の領域を示す情報(文字領域データMD)、及び、矩形の領域を示す情報(矩形領域データKD)を領域データ出力部14に出力する。
【0038】
領域データ出力部14は、文字領域データMDをOCR装置20に出力する。領域データ出力部14は、文字領域データMD、及び矩形領域データKDを構造認識装置30に出力する。記憶部15は、領域判定モデル150を記憶する。
【0039】
ここで、構造認識装置30の構成について、
図4を用いて説明する。
図4は、実施形態に係る構造認識装置30の構成例を示すブロック図である。
図4に示すように、構造認識装置30は、例えば、領域データ取得部31と、文字認識データ取得部32と、前処理部33と、構造判定部34と、構造データ出力部35と、記憶部36とを備える。
【0040】
領域データ取得部31は、領域分割装置10から領域データ(文字領域データMD、及び矩形領域データKD)を取得する。文字領域データMDは、例えば、文字の領域における位置を示す座標と、文字の領域であることを示す識別情報とが対応付けられた情報である。矩形領域データKDは、例えば、矩形の領域における位置を示す座標と、矩形の領域であることを示す識別情報とが対応付けられた情報である。ここで、領域における位置を示す座標とは、例えば、領域の形状が四角形である場合、当該四角形の四つの頂点のうち、対角線上に位置する二つの頂点の座標である。或いは、領域における位置を示す座標は、四角形の四つの頂点のうち予め定めた特定の頂点(例えば、左下の頂点)の座標と、縦横それぞれの長さを示す情報であってもよい。領域データ取得部31は、取得した領域データを、構造判定部34に出力する。
【0041】
文字認識データ取得部32は、OCR装置20から文字認識データMNDを取得する。文字認識データMNDは、例えば、文字領域データに、その領域で認識された文字を示す文字認識結果が対応付けられた情報である。文字認識データ取得部32は、取得した文字認識データMNDを前処理部33に出力する。
【0042】
前処理部33は、後述する構造判定部34が、階層構造を判定し易くする目的で、判定処理に先立って、事前の処理(前処理)を行う。具体的に、前処理部33は、文字認識データ取得部32から取得した文字認識データMNDを用いて、意味タグ情報を生成する。
【0043】
意味タグ情報は、文字領域データに、その領域に示された文字の意味に応じたタグ(意味タグ)を付与した情報である。意味タグは、意味的に同等の文言であることを示す何らかの情報であればよい。意味タグは、例えば、意味的に同等の文言を代表させた文言であり、より具体的には、「お住まい」、「住所」、「おところ」、「ご住所」などの文言が、「住所」であることを示す情報である。前処理部33が、意味タグ情報を生成することにより、意味的に同等の文言を、一つの文言に統一させることができる。したがって、文言を統一しない場合と比較して、後段の処理を簡素にでき、後段の構造判定部34が階層構造を判定し易くなる。
【0044】
前処理部33は、文字認識データMNDにおける文字認識結果を、変換テーブル360(
図5参照)を用いて所定の文字に変換することにより意味タグ情報を生成する。変換テーブル360は、記憶部36に記憶される情報であり、変換前の文字と、変換後の文字とが対応付けられた情報(テーブル)である。例えば、変換テーブル360の変換前の文字列には、帳票において頻出する文字であり、かつ表記にばらつきが有り得る文字が示される。変換前の文字列は、住所、おところ、ご住所などである。変換後の文字列には、意味に応じて設定した一つの文字、例えば「住所、おところ、ご住所」に対応する「住所」との文言が示される。
【0045】
前処理部33は、文字認識データMNDにおける文字認識結果に基づいて変換テーブル360を参照する。前処理部33は、変換テーブル360の変換前に示される文字に、文字認識結果が存在する場合、その変換前の文字に対応付けられた、変換後の文字を取得する。前処理部33は、文字認識結果を、変換テーブル360に示される変換後の文字に変換する。前処理部33は、文字領域データに、変換後の文字を対応づけることにより意味タグ情報を生成する。前処理部33は、生成した意味タグ情報を構造判定部34に出力する。なお、前処理部33は、変換テーブル360の変換前に示される文字に、文字認識結果が存在しない場合、文字認識結果を変換することなく、文字領域データに、文字認識結果の文字を対応づけることにより意味タグ情報を生成する。
【0046】
構造判定部34は、矩形領域データ、及び意味タグ情報を用いて、矩形の階層構造を判定する。構造判定部34は、構造判定モデル361を用いて矩形の階層構造を判定する。構造判定モデル361は、矩形領域データ、及び意味タグ情報と、矩形の親IDとを対応付けた学習用データセットを、学習モデルに学習させた学習結果である。このような学習用データセットを学習させることにより、学習モデルは、入力された矩形領域データ、及び意味タグ情報に対し、矩形の親IDを、精度よく出力(予測)できるように学習される。学習モデルは、例えば、RNN(Recurrent Neural Network)である。RNNを用いることにより、順序づけられた系列情報に基づく学習を実行することができる。
【0047】
構造判定部34は、学習モデルにRNNを用いる場合、構造判定モデル361に入力させるデータ(以下、入力データという)の順序が情報を持つように、入力データを生成する。構造判定部34は、スキャン画像における着目矩形を選択する。着目矩形は、階層構造を判定したい矩形である。構造判定部34は、着目矩形から所定の範囲(以下、第1範囲という)にある矩形領域データ(以下、近傍矩形群という)を抽出する。構造判定部34は、着目矩形から所定の範囲(以下、第2範囲という)にある意味タグ情報(以下、近傍意味タグ群という)を抽出する。ここでの所定の範囲は、任意に設定されてよい。第1範囲と第2範囲とが互いに異なる範囲であってもよいし、同じ範囲であってもよい。また、第1範囲、第2範囲が予め定められた固定値であってもよいし、スキャン画像のサイズや、着目矩形の大きさに応じて、第1範囲、第2範囲が変動するようにしてもよい。
【0048】
構造判定部34は、着目矩形、近傍矩形群、近傍意味タグ群のそれぞれの代表座標(例えば、中心座標)をラスター順にソートしたデータを入力データとする。ここでのラスター順とは、二次元に配置された画素を読み込む(或いは、書込む)際における、所定の方向に沿った読み込み(書き込み)順序である。例えば、ラスター順は、画像における水平方向の左側から右側へ向かう方向に沿う順序であり、且つ垂直方向の上側から下側へ向かう方向である。しかしながら、ラスター順における所定の方向は、任意の方向であってよく、右側から左側へ向かう方向に沿う順序であってもよいし、下側から上側へ向かう方向に沿う順序であってもよい。
【0049】
構造判定部34は、生成した入力データを構造判定モデル361に入力させることにより得られる出力に基づいて、着目矩形の親IDを判定する。構造判定部34は、スキャン画像における全ての矩形を一つずつ着目矩形として選択し、上述した方法を繰り返し行うことにより、全ての矩形の親IDを判定する。これにより、構造判定部34は、矩形の階層構造を判定する。構造判定部34は、判定した矩形の階層構造を示す情報、すなわち構造化データを構造データ出力部35に出力する。構造データ出力部35は、構造化データを出力する。記憶部36は、変換テーブル360、及び構造判定モデル361を記憶する。
【0050】
なお、上述した入力データを入力させて構造判定モデル361に矩形の階層構造を出力させる場合、学習段階においても、同様な方法で学習用データセットにおける入力データを生成する必要がある。すなわち、学習用の画像から着目矩形を選択し、選択した着目矩形に対する近傍矩形群、及び近傍意味タグ群を抽出する。そして、着目矩形、近傍矩形群、近傍意味タグ群のそれぞれの代表座標(例えば、中心座標)をラスター順にソートしたデータを入力データとする。入力データを学習モデルに入力することにより得られる出力が、その着目矩形の親IDとなるように学習させることにより、構造判定モデル361が生成される。
【0051】
図5は、実施形態に係る変換テーブル360の構成例を示す図である。変換テーブル360は、例えば、意味タグID、変換後、変換前などの各項目を備える。意味タグIDには、意味タグを一意に識別する識別情報が示される。変換後には変換後の文字が示される。変換前には変換前の文字列が示される。この例では、意味タグID(E0001)に、変換後の文字として「氏名」、変換前の文字として「お名前」、「名前」、「おなまえ」が示されている。
【0052】
図6は、実施形態に係る領域分割装置10が行う処理を説明する図である。
図6には、領域分割装置10が判定した文字及び矩形それぞれの領域の例が示されている。領域分割装置10は、
図6に示すスキャン画像から、文字の領域M1~M6、及び矩形の領域K1~K5のそれぞれの領域を抽出する。領域M1は、「申込書」の文字が示されている領域である。領域M2は、「ご住所」の文字が示されている領域である。領域M3は、「都道府県」の文字が示されている領域である。領域M4は、「お名前」の文字が示されている領域である。領域M5は、「記入日」の文字が示されている領域である。領域M6は、「年 月 日」の文字が示されている領域である。このように、領域分割装置10は、例えば、文字の領域を、矩形(四角形)の形状の領域として抽出するようにしてもよい。
【0053】
領域K1は、領域M2を囲む矩形が示されている領域である。領域K2は、領域M3が枠内の右端に配置されるように、領域M3を囲む矩形が示されている領域である。領域K3は、領域K2の右側に配置される矩形が示されている領域である。領域K3は、領域M4を囲む矩形が示されている領域である。領域K5は、領域K4の右側に配置される矩形が示されている領域である。
【0054】
図7は、実施形態に係る構造認識装置30が行う処理を説明する図である。
図7には、構造認識装置30が判定した構造化データを、ツリー構造により可視化した例が示されている。
図7において、領域M1#は、文字の領域M1に示された文字が、前処理部33により変換された後の領域を示している。領域M2#~M6#についても同様に、文字の領域M2~M6に示された文字が、前処理部33により変換された後の領域を示している。
【0055】
構造認識装置30は、例えば、
図6に示すスキャン画像における意味タグ情報、及び矩形領域データに基づいて、矩形の階層構造を判定する。構造認識装置30は、領域K1の親(従属元)は、領域K2であると判定する。構造認識装置30は、領域K4の親は、領域K2であると判定する。構造認識装置30は、領域K5の親は、領域K3であると判定する。
【0056】
図8は、実施形態に係るレイアウト変換の例を示す図である。
図8に示すように、
図6に示す縦長の帳票を、横長のレイアウトに変換することを考える。この場合、構造認識装置30により判定された矩形の階層構造を維持しつつレイアウトを変更する。すなわち、領域K1の親が領域K2となるように、領域K4の親が領域K2となるように、レイアウトを変換する。こうすることで、元の帳票に記載されていた必要事項を過不足なく、且つ元の帳票と同等な感覚で必要事項を記載させることができるようにレイアウトの変換を行うことが可能となる。なお、この例に示すように、必要に応じて領域K6、K7を補うようにしてもよい。領域K6は、「日付」の文字を内包する矩形の領域である。領域K7は、「年 月 日」の文字を内包する矩形の領域である。例えば、領域K7の親が領域K6であると判定された場合、その判定結果を用いることにより、
図8に示すような適切な変換を行うことが可能となる。
【0057】
図9は、実施形態に係る構造認識システム1が行う処理の流れを示すシーケンス図である。領域分割装置10は、スキャン画像データを取得し(ステップS10)、スキャン画像における文字及び矩形の領域を判定することにより、文字と矩形それぞれの領域データを生成する(ステップS11)。構造認識装置30は、文字の領域データ、及びOCR装置20により文字認識された文字認識データを用いて、意味タグ情報を生成する(ステップS12)。
【0058】
構造認識装置30は、スキャン画像から着目矩形を選択する(ステップS13)。構造認識装置30は、着目矩形における近傍意味タグ群を取得し(ステップS14)、近傍矩形群を取得する(ステップS15)。構造認識装置30は、着目矩形、近傍意味タグ群、及び近傍矩形群の代表座標をラスター順にソートすることにより入力データを生成する(ステップS16)。構造認識装置30は、入力データを構造判定モデル361に入力させることにより得られる出力に基づいて、着目矩形の親IDを判定する(ステップS17)。構造認識装置30は、スキャン画像における全ての矩形について親IDを判定したか否かを判断し(ステップS18)、親IDを判定していない矩形がある場合には、ステップS13に戻り、親IDを判定する処理を繰返す。
【0059】
以上説明したように、実施形態の構造認識システム1は、画像データ取得部11と、領域判定部13と、構造判定部34とを備える。画像データ取得部11は、文字と矩形とを含むスキャン画像(「対象画像」の一例)における、画像データを取得する。領域判定部13は、スキャン画像における文字と矩形のそれぞれの領域を判定する。構造判定部34は、領域データに基づいて、前記対象画像に含まれる矩形の階層構造を判定する。これにより、実施形態の構造認識システム1では、矩形の階層構造を判定することができる。したがって、レイアウトの変更に必要な情報を取得することが可能である。
【0060】
また、実施形態の構造認識システム1は、前処理部33を更に備える。前処理部33は、文字領域データを用いて、当該領域に示される文字認識結果(「第1文字」の一例)に対応する、意味に応じて設定される文字(「特定の第2文字」の一例)を含む意味タグ情報を生成する。これにより、実施形態の構造認識システム1では、文字領域データに示されている文字について、その意味に応じたタグ付けを行うことができ、構造判定部34による判定の処理を、タグ付けを行わない場合と比較して、簡単にすることが可能である。
【0061】
また、実施形態の構造認識システム1では、構造判定部34は、構造判定モデル361(「学習済みモデル」の一例)を用いて、矩形の階層構造を判定する。構造判定モデル361は、文字と矩形とを含む学習画像における、意味タグ情報及び矩形領域データと、学習画像に含まれる矩形の構造化データと、を対応付けた学習用データセットを用いて、入力された画像に含まれる矩形の構造化データを出力するように学習されたモデルである。これにより、実施形態の構造認識システム1では、学習済みモデルにデータを入力させるという簡単な方法で、矩形の階層構造を認識することが可能である。
【0062】
また、実施形態の構造認識システム1では、構造判定部34は、スキャン画像において、着目矩形を選択し、着目矩形における近傍意味タグ群を取得し、着目矩形における近傍矩形群を取得し、取得した着目矩形、意味タグ群、及び近傍矩形群の位置に応じたソート(並べ替え)を行うことにより、構造判定モデル361に入力させる入力データの順序を決定する。これにより、実施形態の構造認識システム1では、入力データに意味(情報)を持たせることができ、RNN系の学習モデルに基づく学習済みモデルを用いて、入力データの順序を考慮した予測、すなわち近傍にある文字や矩形との関係から、親IDを予測させることができ、予測の精度向上が期待できる。
【0063】
また、実施形態の構造認識装置30は、領域データ取得部31と構造判定部34とを備える。領域データ取得部31は、スキャン画像における文字と矩形とのそれぞれの領域に関する領域データを取得する。構造判定部34は、領域データに基づいて、スキャン画像に含まれる矩形の階層構造を判定する。これにより、上述した効果と同様の効果を奏する。
【0064】
上述した実施形態における構造認識システム1、及び構造認識装置30の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
【0065】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0066】
1…構造認識システム
10…領域分割装置
11…画像データ取得部
12…変調画像生成部
13…領域判定部
14…領域データ出力部
15…記憶部
150…領域判定モデル
20…OCR装置
30…構造認識装置
31…領域データ取得部
32…文字認識データ取得部
33…前処理部
34…構造判定部
35…構造データ出力部
36…記憶部
360…変換テーブル
361…構造判定モデル