(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162848
(43)【公開日】2024-11-21
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
G06V 30/14 20220101AFI20241114BHJP
G06T 7/00 20170101ALI20241114BHJP
【FI】
G06V30/14 340A
G06T7/00 300F
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023078783
(22)【出願日】2023-05-11
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】301063496
【氏名又は名称】東芝デジタルソリューションズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】田中 遼平
【テーマコード(参考)】
5B029
5L096
【Fターム(参考)】
5B029CC25
5L096FA71
5L096HA11
5L096JA03
5L096JA11
(57)【要約】
【課題】画像データに含まれる複数の領域間の関係を、より簡易な構成で判定する
【解決手段】情報処理装置は、受付部、抽出部、算出部および判定部を備える。受付部は、特定関係を有する複数の画像領域を含む画像データと、画像データ内の第1画像領域を示す領域情報と、の入力を受け付ける。抽出部は、画像データから1つ以上の第2画像領域を抽出する。算出部は、画像データを用いて、領域情報が示す第1画像領域に対して、画像データ内の他の画像領域との関係を示す関係特徴量を算出し、第2画像領域それぞれに対して、領域の特徴を示す自己特徴量を算出する。判定部は、関係特徴量と自己特徴量との類似度に基づいて、第1画像領域と特定関係にある第2画像領域を判定する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
特定関係を有する複数の画像領域を含む画像データと、前記画像データ内の第1画像領域を示す領域情報と、の入力を受け付ける受付部と、
前記画像データから1つ以上の第2画像領域を抽出する抽出部と、
前記画像データを用いて、前記領域情報が示す前記第1画像領域に対して、前記画像データ内の他の画像領域との関係を示す関係特徴量を算出し、前記第2画像領域それぞれに対して、領域の特徴を示す自己特徴量を算出する算出部と、
前記関係特徴量と前記自己特徴量との類似度に基づいて、前記第1画像領域と前記特定関係にある前記第2画像領域を判定する判定部と、
を備える情報処理装置。
【請求項2】
前記算出部は、入力された前記画像データおよび前記領域情報に基づいて、前記関係特徴量を出力するモデルを用いて前記関係特徴量を算出し、
前記モデルは、前記画像データに含まれる画像領域のうち、前記第1画像領域と前記特定関係にある画像領域の前記自己特徴量と前記モデルから出力される前記関係特徴量との前記類似度が、前記第1画像領域と前記特定関係にない画像領域の前記自己特徴量と前記モデルから出力される前記関係特徴量との前記類似度より大きくなるように予め学習される、
請求項1に記載の情報処理装置。
【請求項3】
前記モデルは、前記画像データ全体の前記関係特徴量を求め、前記画像データ全体の前記関係特徴量から、前記領域情報に基づいて前記第1画像領域の前記関係特徴量を切り出す、
請求項2に記載の情報処理装置。
【請求項4】
前記モデルは、前記画像データに含まれる各要素の位置を示す情報をさらに入力し、前記関係特徴量を出力する、
請求項2に記載の情報処理装置。
【請求項5】
前記算出部は、前記第1画像領域と前記特定関係にあると判定された前記第2画像領域に対して、前記関係特徴量を算出し、
前記判定部は、前記第1画像領域と前記特定関係にあると判定された前記第2画像領域に対して算出された前記関係特徴量と前記自己特徴量との類似度に基づいて、前記第1画像領域と前記特定関係にあると判定された前記第2画像領域と前記特定関係にある前記第2画像領域をさらに判定する、
請求項1に記載の情報処理装置。
【請求項6】
前記特定関係は、階層関係である、
請求項1に記載の情報処理装置。
【請求項7】
前記算出部は、前記領域情報が示す前記第1画像領域に対して、複数の前記関係特徴量を算出する、
請求項1に記載の情報処理装置。
【請求項8】
前記判定部は、前記自己特徴量をノードとし、前記関係特徴量をエッジとするグラフニューラルネットワークを用いて前記類似度を算出する、
請求項1に記載の情報処理装置。
【請求項9】
情報処理装置で実行される情報処理方法であって、
特定関係を有する複数の画像領域を含む画像データと、前記画像データ内の第1画像領域を示す領域情報と、の入力を受け付ける受付ステップと、
前記画像データから1つ以上の第2画像領域を抽出する抽出ステップと、
前記画像データを用いて、前記領域情報が示す前記第1画像領域に対して、前記画像データ内の他の画像領域との関係を示す関係特徴量を算出し、前記第2画像領域それぞれに対して、領域の特徴を示す自己特徴量を算出する算出ステップと、
前記関係特徴量と前記自己特徴量との類似度に基づいて、前記第1画像領域と前記特定関係にある前記第2画像領域を判定する判定ステップと、
を含む情報処理方法。
【請求項10】
コンピュータに、
特定関係を有する複数の画像領域を含む画像データと、前記画像データ内の第1画像領域を示す領域情報と、の入力を受け付ける受付ステップと、
前記画像データから1つ以上の第2画像領域を抽出する抽出ステップと、
前記画像データを用いて、前記領域情報が示す前記第1画像領域に対して、前記画像データ内の他の画像領域との関係を示す関係特徴量を算出し、前記第2画像領域それぞれに対して、領域の特徴を示す自己特徴量を算出する算出ステップと、
前記関係特徴量と前記自己特徴量との類似度に基づいて、前記第1画像領域と前記特定関係にある前記第2画像領域を判定する判定ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
定型帳票の画像データから情報を読み取る読取りサービスでは、情報を読み取る領域(読み取り領域)を設定する処理などの事前の処理が必要となる。また、画像データ内の複数の読み取り領域が、相互に特定関係(階層関係など)を有する場合がある。
【0003】
矩形を含む文書のレイアウトを変換するために必要な情報を抽出する技術として、画像データ内の複数の領域の階層構造を判定する技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記のような技術では、例えば画像データを文字認識する処理、および文字認識データを変換して意味を示す情報(意味タグ情報)を生成する処理が必要となる。
【0006】
本発明は、画像データに含まれる複数の領域間の関係を、より簡易な構成で判定することができる情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
実施形態の情報処理装置は、受付部、抽出部、算出部および判定部を備える。受付部は、特定関係を有する複数の画像領域を含む画像データと、画像データ内の第1画像領域を示す領域情報と、の入力を受け付ける。抽出部は、画像データから1つ以上の第2画像領域を抽出する。算出部は、画像データを用いて、領域情報が示す第1画像領域に対して、画像データ内の他の画像領域との関係を示す関係特徴量を算出し、第2画像領域それぞれに対して、領域の特徴を示す自己特徴量を算出する。判定部は、関係特徴量と自己特徴量との類似度に基づいて、第1画像領域と特定関係にある第2画像領域を判定する。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施形態の情報処理装置の構成の一例を示すブロック図である。
【
図2】
図2は、帳票の画像データ内の画像領域の例を示す図である。
【
図3】
図3は、算出される特徴量の例を示す図である。
【
図4】
図4は、判定部による判定の例を示す図である。
【
図5】
図5は、判定部による判定の例を示す図である。
【
図6】
図6は、実施形態における判定処理の一例を示すフローチャートである。
【
図7】
図7は、モデルの構造の一例を示す図である。
【
図8】
図8は、モデルの構造の一例を示す図である。
【
図9】
図9は、モデルの構造の一例を示す図である。
【
図11】
図11は、複数の関係特徴量を算出する例を説明するための図である。
【
図12】
図12は、GNNに入力する入力データの構成例を説明するための図である。
【
図13】
図13は、実施形態の情報処理装置のハードウェア構成例を示す説明図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、この発明にかかる情報処理装置の好適な実施形態を詳細に説明する。
【0010】
以下では、帳票の画像データから情報を読み取る読み取りサービスに実施形態を適用した例を主に説明するが、実施形態を適用可能な技術は読み取りサービスに限られない。以下の実施形態は、画像データ内に含まれる複数の領域間が特定関係にあるかを判定する機能を利用する、他の技術、サービス、システム、および、装置などに適用可能である。
【0011】
上記のように、読み取りサービスでは、情報を読み取る読み取り領域を事前に設定する必要がある。事前の設定としては、読み取り領域に対して見出しを設定する作業も必要となる場合がある。このような設定作業は、例えばユーザにより実行される。一方、画像データを解析することによる見出しの設定機能が実現できれば、ユーザによる設定作業は不要となる。
【0012】
見出しの設定機能では、特定関係を有する複数の領域についても、それぞれの領域に適した見出しを推定する必要がある。特定関係は、例えば、複数の領域が階層構造を有する階層関係である。このような機能のために、複数の領域間の関係をより簡易な構成で、より高速に判定することが望まれる。
【0013】
本実施形態の情報処理装置は、画像データ内の複数の領域それぞれについて、領域自体の特徴量(自己特徴量)と、画像データ内の他の領域との関係を示す特徴量(関係特徴量)と、を算出する。そして、これらの特徴量を用いて、複数の領域間が特定関係(階層関係など)にあるかを判定する。特徴量の算出には、事前に学習されたモデルが用いられる。これにより、例えば、文字認識処理、および、意味を示す情報の生成処理などが不要となり、より簡易な構成で、より高速に特定関係の有無を判定することができる。
【0014】
図1は、実施形態の情報処理装置100の構成の一例を示すブロック図である。
図1に示すように、情報処理装置100は、受付部101と、抽出部102と、算出部103と、判定部104と、出力制御部111と、記憶部121と、を備えている。
【0015】
受付部101は、情報処理装置100で用いられる各種情報の入力を受け付ける。例えば受付部101は、特定関係を有する複数の画像領域を含む画像データIDAと、画像データIDA内の画像領域IRA(第1画像領域)を示す領域情報と、の入力を受け付ける。
【0016】
画像データIDAは、例えば、帳票をスキャナなどの読み取り装置により読み取って得られるデータである。画像領域IRAは、例えば、見出しを設定する対象となる領域として指定された画像領域である。領域情報は、画像データIDA内での画像領域IRAの位置(座標)を示す情報である。以下では、画像領域IRAを入力領域という場合がある。
【0017】
なお、入力領域(領域情報)は、例えばユーザ等により指定されてもよいし、画像データIDAから抽出された領域が入力領域として設定されてもよい。後者の場合、見出しを設定する作業のみでなく、見出しを設定する対象となる画像領域を設定する作業も不要となる。
【0018】
抽出部102は、画像データIDAから1つ以上の画像領域IRB(第2画像領域)を抽出する。抽出した画像領域IRBは、入力領域(画像領域IRA)の特定関係にある領域の候補となる領域である。以下では、画像領域IRBを候補領域という場合がある。
【0019】
上記のように画像データIDAから入力領域を抽出するように構成する場合は、例えば抽出部102は、画像データIDAから1つ以上の画像領域を抽出し、抽出した画像領域のうちいずれかを入力領域とし、入力領域の位置を示す情報を領域情報とする。
【0020】
抽出部102による画像データからの領域(候補領域、入力領域)の抽出方法は、従来から用いられているどのような方法であってもよいが、例えば以下のような方法を適用できる。
(M1)入力領域の近傍からのランダムサンプリングによる方法
(M2)罫線を用いたルールベースの方法
(M3)DNN(Deep Neural Network)を用いたセマンティックセグメンテーション
(M4)DNNを用いたバウンディングボックスベースの物体検出による方法(例えば、YOLO:You Only Look Once、SSD:Single Shot multibox Detectorなど)
【0021】
(M3)~(M4)では、候補領域を抽出できるように、DNNが予め学習される。
【0022】
図2は、帳票の画像データ内の画像領域の例を示す図である。
図2では、生年月日を記入するための記入領域を含む画像データ210の例が示されている。画像データ210は、2つ以上の記入領域を含むデータであってもよい。
【0023】
図2に示すように、画像データ210は、画像領域211~214を含む。画像領域211~214は、それぞれ以下のような領域に相当する。
・画像領域211:生年月日のうち日を記入するための記入領域
・画像領域212:画像領域211の見出しに相当する文字「日」が出力された領域
・画像領域213:生年月日を記入するための記入領域
・画像領域214:画像領域213の見出しに相当する文字「生年月日」が出力された領域
【0024】
画像領域211と画像領域212とは、「日」に関する記入領域と見出しが出力された領域という特定関係を有すると解釈できる。なお、記入領域を下位、見出しが出力された領域を上位とすることにより、両者は階層関係にあると解釈することもできる。
【0025】
同様に、画像領域213と画像領域214とは、「生年月日」に関する記入領域と見出しが出力された領域という特定関係を有すると解釈できる。
【0026】
さらに、画像領域214は、画像領域212に出力される「日」を含む「生年月日」を出力する領域に相当する。従って、画像領域214は画像領域212の上位の領域であること、言い換えると、画像領域214と画像領域212とは、階層関係にあると解釈することができる。本実施形態では、このような特定関係にある複数の画像領域を判定することができる。
【0027】
なお、画像領域211~214は、入力領域となる場合もあるし、候補領域となる場合もある。例えば画像領域211が入力領域として指定され、画像領域212~214が候補領域として抽出される場合がある。また、例えば画像領域213が入力領域として指定され、画像領域211、212および214が候補領域として抽出される場合がある。
【0028】
図1に戻り、算出部103は、画像領域の特徴量を算出する。例えば算出部103は、入力された画像データIDAを用いて、入力領域および候補領域それぞれについて、自己特徴量と関係特徴量とを算出する。
【0029】
自己特徴量は、画像領域自体の特徴を示す。関係特徴量は、画像領域と、画像データIDA内の他の画像領域との関係を示す特徴量である。
【0030】
例えば算出部103は、画像データIDAおよび領域情報を入力し、自己特徴量および関係特徴量を出力するモデルを用いて、自己特徴量および関係特徴量を算出する。モデルはどのような構造であってもよいが、例えば機械学習により構築されるニューラルネットワークモデルである。
【0031】
モデルは、学習データを用いた事前の学習により構築される。例えばモデルは、画像データに含まれる画像領域のうち、領域情報が示す画像領域IRAと特定関係にある画像領域の自己特徴量とモデルから出力される関係特徴量との類似度が、画像領域IRAと特定関係にない画像領域の自己特徴量とモデルから出力される関係特徴量との類似度より大きくなるように学習される。
【0032】
言い換えると、モデルは、各画像領域について、当該画像領域自身の特徴量(自己特徴量)とともに、当該画像領域と特定関係にある他の画像領域の特徴量(自己特徴量)を関係特徴量として出力するように学習される。算出部103による特徴量の抽出処理に使用できるモデルの詳細については後述する。
【0033】
図3は、
図2の画像領域211~214に対して算出される特徴量の例を示す図である。
図3に示すように、算出部103は、画像領域211~214のそれぞれに対して、自己特徴量および関係特徴量を算出する。なお、網掛けが共通する2つの特徴量は、類似または一致することを表す。例えば画像領域211の関係特徴量は、画像領域212の自己特徴量と網掛けが共通する。これは、画像領域211と画像領域212とが特定関係にあることを意味する。本実施形態では、このように自己特徴量と関係特徴量との対応(類似するか否か)により、特定関係を判定することができる。
【0034】
図1に戻り、判定部104は、関係特徴量と自己特徴量との類似度に基づいて、画像領域IRAと特定関係にある画像領域IRBを判定する。特徴量は、例えばベクトルで表される。この場合、判定部104は、2つのベクトル間のコサイン類似度、および、2つのベクトル間の距離の逆数などにより、関係特徴量と自己特徴量との類似度を算出することができる。
【0035】
2つのベクトルをu,vとしたとき、ベクトルuおよびvのコサイン類似度は、例えば、以下の(1)式で表される。
【0036】
【0037】
ベクトル間の距離の逆数は、例えば以下の(2)式のように、L2距離の逆数を用いることができる。なお距離はL2距離に限られるものではない。
【0038】
【0039】
類似度の算出方法は上記に限られず、従来から用いられているどのような方法であってもよい。例えば、判定部104は、距離の逆数の代わりに、距離の符号を反転(マイナス1を乗ずるなど)させた値を類似度として算出してもよい。
【0040】
また、値が小さいほど類似することを表す類似度を用いる場合は、ベクトル間の距離自体、または、コサイン類似度の逆数が類似度として用いられてもよい。
【0041】
判定部104は、上記のように算出される類似度を用いて、抽出された1つ以上の画像領域IRBのうち、画像領域IRAと特定関係にある画像領域IRBを判定する。例えば判定部104は、類似度が閾値(類似度の閾値)以上である画像領域IRBを、画像領域IRAと特定関係にある画像領域IRBと判定する。
【0042】
さらに判定部104は、画像領域IRAと特定関係にあると判定された画像領域IRBについて、特定関係にある他の画像領域IRBを再帰的に探索してもよい。
【0043】
算出部103は、入力領域(画像領域IRA)および抽出された候補領域(画像領域IRB)すべてについて、自己特徴量および関係特徴量を算出している。従って、判定部104は、算出された自己特徴量および関係特徴量を再帰的な探索に用いることができる。
【0044】
例えば判定部104は、画像領域IRAと特定関係にあると判定された画像領域IRBに対して算出された関係特徴量と他の画像領域IRBの自己特徴量との類似度に基づいて、当該画像領域IRBと特定関係にある他の画像領域IRBをさらに判定する。
【0045】
なお、再帰的な探索を実行しない場合など、後で使用しない場合は、算出部103は、入力領域の自己特徴量、または、候補領域の関係特徴量を算出しないように構成されてもよい。
【0046】
図4および
図5は、判定部104による判定の例を示す図である。
図4は、画像領域211が入力領域(画像領域IRA)として入力された場合の判定の例を示す。
【0047】
この場合、判定部104は、まず、画像領域211の関係特徴量との類似度が閾値以上である自己特徴量を有する画像領域IRBは画像領域212であると判定する。再帰的な探索を実行する場合、判定部104は、画像領域212の関係特徴量に対する類似度が閾値以上である自己特徴量を有する画像領域IRBは画像領域214であると判定する。
【0048】
この結果、判定部104は、画像領域211の上位階層の領域として画像領域212を求め、さらに、画像領域212の上位階層の領域として画像領域214を求めることができる。判定部104は、このような階層構造を示す情報を出力してもよい。
【0049】
図5は、画像領域213が入力領域(画像領域IRA)として入力された場合の判定の例を示す。この場合、判定部104は、画像領域213の関係特徴量との類似度が閾値以上である自己特徴量を有する画像領域IRBは画像領域214であると判定する。再帰的な探索を実行することも可能であるが、
図5の例では、画像領域214の関係特徴量に対する類似度が閾値以上である自己特徴量を有する画像領域IRBが存在しないため、さらに上位階層に相当する画像領域は求められない。
【0050】
なお、
図4および
図5は、入力領域を起点として、上位階層の画像領域を探索する例である。階層関係は、入力領域を起点として、下位階層の画像領域を探索することにより判定されてもよい。例えば、帳票のタイトル(帳票名)に相当する領域が入力領域として指定されたときに、入力領域に対応するタイトルの帳票に含まれる1つ以上の記入領域に相当する画像領域を、入力領域の下位階層に相当する領域として探索するように構成されてもよい。また、階層関係は、上位および下位の両方向に探索されてもよい。
【0051】
図1に戻り、出力制御部111は、情報処理装置100が用いる各種情報の出力を制御する。例えば出力制御部111は、判定部104による判定結果(構造情報)を出力する。
【0052】
上記各部(受付部101、抽出部102、算出部103、判定部104、および、出力制御部111)は、例えば、1または複数のプロセッサにより実現される。例えば上記各部は、CPU(Central Processing Unit)およびGPU(Graphics Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2つ以上を実現してもよい。
【0053】
記憶部121は、情報処理装置で用いられる各種情報を記憶する。例えば記憶部121は、受付部101により受け付けられた情報(画像データIDA、領域情報など)を記憶する。
【0054】
記憶部121は、フラッシュメモリ、メモリカード、RAM(Random Access Memory)、HDD(Hard Disk Drive)、および、光ディスクなどの一般的に利用されているあらゆる記憶媒体により構成することができる。
【0055】
情報処理装置100は、物理的に1つの装置によって構成されてもよいし、物理的に複数の装置によって構成されてもよい。例えば情報処理装置100は、クラウド環境上で構築されてもよい。また、情報処理装置100内の各部は、複数の装置に分散して備えられてもよい。
【0056】
次に、実施形態の情報処理装置100による判定処理について説明する。
図6は、実施形態における判定処理の一例を示すフローチャートである。
【0057】
受付部101は、画像データIDAと、画像データIDA内の入力領域(画像領域IRA)を示す領域情報と、の入力を受け付ける(ステップS101)。抽出部102は、画像データIDAから1つ以上の候補領域を抽出する(ステップS102)。算出部103は、入力領域および候補領域それぞれについて、自己特徴量および関係特徴量を算出する(ステップS103)。
【0058】
判定部104は、入力領域を注目領域に設定する(ステップS104)。注目領域とは、特定関係にある他の画像領域を判定する対象となる画像領域を意味する。
【0059】
判定部104は、注目領域の関係特徴量と、候補領域の自己特徴量と、の類似度を算出する(ステップS105)。判定部104は、類似度が閾値以上となる候補領域があるか否かを判定する(ステップS106)。
【0060】
類似度が閾値以上となる候補領域がある場合(ステップS106:Yes)、判定部104は、類似度が閾値以上の候補領域を、注目領域と特定関係にある領域として例えば記憶部121に記憶するとともに、新たな注目領域に設定する(ステップS107)。また、判定部104は、ステップS105に戻り、新たな注目領域について処理を繰り返す。これにより、再帰的な探索が可能となる。
【0061】
類似度が閾値以上となる候補領域がない場合(ステップS106:No)、出力制御部111は、それまでに判定部104により得られた特定関係を示す構造情報を出力し(ステップS108)、判定処理を終了する。
【0062】
構造情報は、例えば、見出しを設定する作業に利用することができる。例えば、情報処理装置100(見出しを設定する機能を有する他の機器でもよい)は、入力領域の上位階層にあると判定された領域を見出しの領域とし、見出しの領域を文字認識することにより、見出しを特定する。
【0063】
構造情報を利用する機能は、見出し設定に限られず、他のどのような機能であってもよい。例えば、編集の対象である文書に含まれる複数の領域の関係を示す構造情報に基づいて、複数の領域の関係を示す情報を表示する機能であってもよい。このような機能により、例えば領域内の文書を編集する作業を効率化することができる。
【0064】
次に、特徴量の抽出処理に使用できるモデルの詳細について説明する。
図7は、モデル710の構造の一例を示す図である。
【0065】
モデル710は、画像データIDAおよび画像データIDA内の画像領域を示す領域情報を入力し、自己特徴量702aおよび関係特徴量702bを出力する。
図7では、画像データ701が画像データIDAに相当する。領域情報により指定される画像領域は、入力領域の場合もあるし、候補領域の場合もある。
【0066】
モデル710は、主に以下の3つの機能を含み、最終的な出力として自己特徴量702aおよび関係特徴量702bを出力する。
(1)抽象化
(2)切り出し
(3)集約
【0067】
以下に説明するように、3つの機能は、それぞれ複数の手法により実現されうる。複数の手法のうち採用する手法の組み合わせに応じて、モデル710は、複数の異なる構成を取り得る。なお、組み合わせることができない手法もある。
【0068】
(1)の抽象化では、入力された画像データ701を抽象化した特徴量711が出力される。特徴量711は、例えば、幅、高さに加えて深さ方向の次元を持つ3階テンソルなどのデータ形式で表される。抽象化は、例えば以下のような手法で実現される。
(1-1)抽象化は実行しない(画像データ701が特徴量711として出力される)。
(1-2)事前に用意されたデータベース(ImageNetなど)を用いて事前学習された特徴抽出器を用いる。特徴抽出器は、例えば、DNN(Deep Neural Network)である。
(1-3)単体のモデルとして学習されるモデル710の機能のうちの抽象化の機能として実現する。例えばモデル710はDNNであり、抽象化の機能は、このDNNの一部の層の機能に相当する。
【0069】
なお、(1-2)は(1-1)より推論に時間がかかるが、より高精度な処理が可能となる。また(1-3)は(1-2)より学習に時間がかかるが、より高精度な処理が可能となる。
【0070】
(2)の切り出しでは、特徴量711から切り出された一部の特徴量712が出力される。(2)の切り出しは、例えば以下のような手法で実現される。
(2-1)特徴量711から、指定された画像領域(入力領域、候補領域)に対応する特徴量712を切り出す。
(2-2)特徴量711から、指定された画像領域の周辺領域に対応する特徴量712を切り出す。周辺領域は、例えば、指定された画像領域からの距離が一定値以内の領域である。
【0071】
(2-2)のように周辺領域に対応する特徴量712を切り出すことにより、より高精度な処理が可能となる場合がある。
【0072】
(3)の集約では、特徴量712を集約することにより、自己特徴量702aおよび関係特徴量702bが出力される。(3)の集約は、例えば以下のような手法で実現される。
(3-1)特徴量712をプーリングにより代表ベクトルを算出し、代表ベクトルを自己特徴量702aおよび関係特徴量702bとして出力する。プーリングは、例えば、平均プーリング(AveragePooling)、および、最大値プーリング(MaxPooling)である。なお、抽象化を実行しない場合(上記(1-1))、プーリングの対象となる特徴量が得られないため、(3-1)を組み合わせることができない。
(3-2)DNNにより特徴量712を自己特徴量702aおよび関係特徴量702bに変換して出力する。この手法は、推論およびDNNの学習に時間がかかるが、より高精度な処理が可能となる。
【0073】
なお、モデルへの入力として、画像データ701に含まれる各要素(画素)の位置を示す情報が追加されてもよい。
図8は、このようなモデル710bの構造の一例を示す図である。
【0074】
図8に示すように、モデル710bは、画像データIDAおより領域情報に加えて、位置を示す情報801a、801bを入力する。情報801aは、例えば、画像データ701の各画素に対応する要素を含み、左端の要素から右端の要素に向けて、要素値が最大値(例えば1)から最小値(例えば0)に変化するような情報である。情報801bは、例えば、画像データ701の各画素に対応する要素を含み、上端の要素から下端の要素に向けて、要素値が最大値(例えば1)から最小値(例えば0)に変化するような情報である。
【0075】
情報801a、801bは、位置符号化(Positional Encoding)により生成されてもよい。また、情報801a、801bは、いずれか一方のみが使用されてもよい。
【0076】
特徴量711bは、入力された画像データ701および情報801a、801bを抽象化した特徴量である。
【0077】
なお、情報801a、801bは、抽象化の機能の中で追加されてもよい。例えば、抽象化を実現するDNNの中間層のいずれかで情報801a、801bが追加されてもよい。
【0078】
モデルの具体例についてさらに説明する。
図9は、モデルの例(モデル710c)を示す図である。なお
図9は、3つの機能の手法を以下のように組み合わせたモデル710cの例である。
・抽象化:(1-1)抽象化は実行しない。
・切り出し:(2-2)周辺領域に対応する特徴量を切り出す。
・集約:(3-2)DNNで変換する。
【0079】
図9の例では、画像領域901の周辺領域902を示す領域情報がモデル710cに入力される。なお、モデル710cには画像領域901を示す領域情報が入力され、モデル710cの内部で、入力された画像領域901の周辺領域902の領域情報を算出するように構成されてもよい。
【0080】
モデル710cは、画像データおよび領域情報を入力し、領域情報が示す領域についての自己特徴量702aおよび関係特徴量702bを出力するように学習される。
【0081】
図10は、モデルの他の例(モデル710d)を示す図である。なお
図10は、3つの機能の手法を以下のように組み合わせたモデル710dの例である。
・抽象化:(1-3)単体のモデル710dの抽象化の機能
・切り出し:(2-1)指定された領域に対応する特徴量を切り出す。
・集約:(3-1)プーリングにより代表ベクトルを算出
【0082】
図10の例では、画像データ701と、画像領域1001の領域情報とが、モデル710dに入力される。モデル710dは、抽象化の機能に相当するDNN1011を含む。DNN1011は、例えば、画像データ701から、画像データ701全体の自己特徴量1012aおよび画像データ701全体の関係特徴量1012bを出力するように学習される。画像データ701全体の自己特徴量1012aおよび関係特徴量1012bは、例えば、画像データ701と縦横方向に対応関係を持つ、幅、高さ、深さの次元を持つ3階テンソルである。
【0083】
また、モデル710dは、自己特徴量1012aのうち、画像領域1001の領域情報に対応する位置1021で囲まれる3階テンソルを切り出し、幅および高さ方向をプーリング処理によって集約することで、自己特徴量702aを出力する。同様に、モデル710dは、関係特徴量1012bのうち、位置1021で囲まれる3階テンソルを切り出し、幅および高さ方向をプーリング処理によって集約することで、関係特徴量702bを出力する。
【0084】
次に、モデルの学習方法の例について説明する。上記のように、モデルは、画像データに含まれる画像領域のうち、画像領域IRAと特定関係にある画像領域の自己特徴量とモデルから出力される関係特徴量との類似度が、画像領域IRAと特定関係にない画像領域の自己特徴量とモデルから出力される関係特徴量との類似度より大きくなるように学習される。
【0085】
学習は、例えば以下の手順で設計される損失関数を最小化することにより実行される。
・注目領域と、他のすべての候補領域と、の組み合わせについて、候補領域の自己特徴量と、注目領域の関係特徴量との類似度を算出する。
・特定関係にある組み合わせは類似度が大きくなり、特定関係にない組み合わせは類似度が小さくなるような損失関数を設計する。
【0086】
例えば、以下の(3)式に示すような損失関数Lを用いることができる。なお、(3)式内の関数Simは、(1)式または(2)式のような類似度を算出する関数である。
【数3】
【0087】
(3)式内の各変数の定義を以下に記載する。
N:領域の数
Ri:i番目の領域(1≦i≦N)
Rj:j番目の領域(1≦j≦N)
φself:画像領域から自己特徴量を算出する関数
φrel:画像領域から関係特徴量を算出する関数
σi,j:RjがRiと特定関係にあれば1、そうでなければ-1(正解データ)
【0088】
なお、モデルのうち自己特徴量を求める機能が、画像領域から自己特徴量を算出する関数φselfに相当する。また、モデルのうち関係特徴量を求める機能が、画像領域から関係特徴量を算出する関数φrelに相当する。
【0089】
これまでは、1つの画像領域に対して1つの関係特徴量が算出される例を説明した。算出部103は、1つの画像領域から複数の関係特徴量を算出してもよい。
【0090】
図11は、複数の関係特徴量を算出する例を説明するための図である。
図11に示す画像データ1100は、例えば表形式で表された要素を含む画像の例である。
【0091】
例えば領域1101、1102は、表形式の列に対応する文字(見出しなど)が出力された領域である。領域1111は、表形式の行に対応する文字(見出しなど)が出力された領域である。領域1121は、領域1101および領域1111に対応する値を記入するための記入領域である。領域1122は、領域1102および領域1111に対応する値を記入するための記入領域である。従って、例えば領域1121は、領域1101と特定関係にあるとともに、領域1111とも特定関係にあると解釈することができる。
【0092】
算出部103は、このような場合を考慮し、領域1111について、自己特徴量702aを算出するとともに、2つの方向に対応する2つの関係特徴量702bを算出する。2つの方向は、例えば、列方向(垂直方向)と、行方向(水平方向)である。なお、算出される複数の関係特徴量はこれらに限られない。算出部103は、3つ以上の関係特徴量を算出してもよい。
【0093】
なお、複数の関係特徴量が用いられる場合は、学習時には、複数の関係特徴量との類似度を含む損失関数が用いられる。例えば(3)式のσi,jと類似度(Sim)との乗算を、複数の関係特徴量それぞれについて含むような損失関数が用いられる。
【0094】
これにより、例えば1つの記入領域について複数の見出しが設定されるような帳票を含む、より多様な帳票についても、複数の領域間の関係を判定することが可能となる。
【0095】
次に、類似度の算出方法の他の例について説明する。類似度は、類似度を算出するように学習されるモデル(以下、類似度算出モデルという)を用いて算出されてもよい。
【0096】
類似度算出モデルは、例えばDNNである。類似度算出モデルは、例えば、注目領域の関係特徴量と、候補領域の自己特徴量と、を入力し、類似度を出力するように学習される。入力は、注目領域の関係特徴量および自己特徴量と、候補領域の自己特徴量と、であってもよい。
【0097】
類似度算出モデルは、算出部103による特徴量の算出に用いられるモデルとともに学習されてもよいし、当該モデルとは別に事前に学習されてもよい。このような類似度算出モデルを用いれば、計算時間は増加するが、より高精度な処理が可能となる。
【0098】
類似度は、グラフニューラルネットワーク(GNN:Graph Neural Network)を利用して算出されてもよい。
図12は、GNNに入力する入力データの構成例を説明するための図である。この例では、入力データは、各画像領域の自己特徴量1201~1203をノードとし、2つの画像領域の関係特徴量を統合(例えば連結)した特徴量を、当該2つの画像領域を接続するエッジとするように構成される。
【0099】
GNNは、
図12に示すようなグラフ構造の入力データを入力し、入力データの特徴量を出力するように学習される。例えばGNNは、特定関係にある2つの画像領域に対応するエッジに対して特徴量として1を出力し、特定関係にない2つの画像領域に対応するエッジに対して特徴量として0を出力するように学習される。このような特徴量は、2つの画像領域の特徴量の類似度を表す情報であると解釈することができる。
【0100】
判定部104は、
図12に示すようなグラフ構造の入力データをGNNに入力し、GNNが出力する特徴量(類似度)を求める。GNNを利用して類似度を算出することにより、計算時間は増加するが、より高精度な処理が可能となる。
【0101】
このように、上記実施形態によれば、画像データ内の複数の領域それぞれについて算出される自己特徴量および関係特徴量を用いて、複数の領域間が特定関係(階層関係など)にあるかが判定される。これにより、より簡易な構成で特定関係の有無を判定可能となる。
【0102】
また、判定結果を示す情報(構造情報)を用いて、例えば帳票の読み取りサービスでの見出しの設定機能を実現できる。見出しの設定では、見出しを設定する領域として、粒度が異なる領域が指定される場合がある。例えば、生年月日を記入する領域として、生年月日の全体で1つの領域が指定される場合、および、年、月、日のそれぞれで個別に領域が指定される場合がある。上記実施形態によれば、これらのいずれの場合であっても、指定された領域から、特定関係にある他の領域を効率的に探索することができる。
【0103】
次に、実施形態の情報処理装置のハードウェア構成について
図13を用いて説明する。
図13は、実施形態の情報処理装置のハードウェア構成例を示す説明図である。
【0104】
実施形態の情報処理装置は、CPU51などの制御装置と、ROM(Read Only Memory)52やRAM53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
【0105】
実施形態の情報処理装置で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
【0106】
実施形態の情報処理装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD-R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【0107】
さらに、実施形態の情報処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、実施形態の情報処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0108】
実施形態の情報処理装置で実行されるプログラムは、コンピュータを上述した情報処理装置の各部として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【0109】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0110】
100 情報処理装置
101 受付部
102 抽出部
103 算出部
104 判定部
111 出力制御部
121 記憶部