(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-20
(45)【発行日】2024-10-01
(54)【発明の名称】テキストを認識するための方法および装置
(51)【国際特許分類】
G06V 30/194 20220101AFI20240924BHJP
G06T 7/00 20170101ALI20240924BHJP
G06V 10/82 20220101ALI20240924BHJP
【FI】
G06V30/194
G06T7/00 350C
G06V10/82
(21)【出願番号】P 2023575611
(86)(22)【出願日】2022-04-06
(86)【国際出願番号】 CN2022085317
(87)【国際公開番号】W WO2022257578
(87)【国際公開日】2022-12-15
【審査請求日】2023-12-07
(31)【優先権主張番号】202110632180.5
(32)【優先日】2021-06-07
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】522021952
【氏名又は名称】京▲東▼科技信息技▲術▼有限公司
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】陶 大程
(72)【発明者】
【氏名】何 ▲ユエ▼
【審査官】松永 隆志
(56)【参考文献】
【文献】中国特許出願公開第110659640(CN,A)
【文献】中国特許出願公開第111414913(CN,A)
【文献】Liang Yao ほか2名,Graph convolutional networks for text classification,AAAI'19/IAAI'19/EAAI'19: Proceedings of the Thirty-Third AAAI Conference on Artificial Intelligence and Thirty-First Innovative Applications of Artificial Intelligence Conference and Ninth AAAI Symposium on Educational Advances in Artificial Intelligence,2019年01月27日,No. 905,,Pages 7370 - 7377,[令和6年8月6日検索],インターネット <URL:https://dl.acm.org/doi/10.1609/aaai.v33i01.33017370>
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/194
G06T 7/00
G06V 10/82
(57)【特許請求の範囲】
【請求項1】
テキストを認識するための方法であって、
認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得するステップと、
前記特徴マップに基づいて関係グラフを作成するステップであって、前記関係グラフにおけるノードは前記特徴マップの画素点を表し、エッジは接続された2つのノードの空間的セマンティック特徴の類似度が目標閾値よりも大きいことを表し、空間的セマンティック特徴はノードが示す画素点の位置特徴およびカテゴリ特徴を含む、ステップと、
予めトレーニングされたグラフ畳み込みネットワークによって前記関係グラフを処理して、前記画像に対応する第1のテキスト特徴を取得するステップと、
前記第1のテキスト特徴に基づいて、前記画像のテキスト認識結果を生成するステップと、
を含むテキストを認識するための方法。
【請求項2】
前記方法は、予めトレーニングされた言語モデルによって前記特徴マップを処理して前記画像に対応する第2のテキスト特徴を取得するステップをさらに含み、
前記第1のテキスト特徴に基づいて、前記画像のテキスト認識結果を生成するステップは、前記第1のテキスト特徴および前記第2のテキスト特徴に基づいて、前記画像のテキスト認識結果を生成するステップを含む、
請求項1に記載の方法。
【請求項3】
前記第1のテキスト特徴および前記第2のテキスト特徴に基づいて、前記画像のテキスト認識結果を生成するステップは、前記第1のテキスト特徴、前記第2のテキスト特徴および前記特徴マップに基づいて、前記画像のテキスト認識結果を生成するステップを含む請求項2に記載の方法。
【請求項4】
前記特徴マップは、少なくとも2つの特徴マップであり、
前記特徴マップに基づいて関係グラフを作成するステップは、前記少なくとも2つの特徴マップのうちの特徴マップに対して、当該特徴マップに対応する関係サブグラフを作成するステップと、
各特徴マップのそれぞれに対応する関係サブグラフをマージして、前記関係グラフを取得するステップと、を含む請求項3に記載の方法。
【請求項5】
前記少なくとも2つの特徴マップのうちの特徴マップは、前記認識すべきテキストにおける各文字がそれぞれ位置する画像領域の画像特徴および、他の特徴マップとの間の順序特徴を表すために使用される、請求項4に記載の方法。
【請求項6】
前記特徴マップは、
前記画像を予めトレーニングされた畳み込みニューラルネットワークに入力して、初期特徴マップを取得するステップと、
前記初期特徴マップに対してテキストインスタンスのセグメンテーションを行ってインスタンス特徴マップを取得するステップと、
前記初期特徴マップに対してテキスト順序のセグメンテーションを行って順序特徴マップを取得するステップと、
前記インスタンス特徴マップと前記順序特徴マップを融合して、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって取得された特徴マップを得るステップと、
によって生成される請求項5に記載の方法。
【請求項7】
前記畳み込みニューラルネットワークは、特徴ピラミッドネットワークと残差ネットワークに基づいて実現され、
前記残差ネットワークの出力層の前の少なくとも1つの畳み込み層のストライドは1であり、
前記残差ネットワークによって出力された特徴マップは、変形可能な畳み込みによって前記特徴ピラミッドネットワークの入力特徴マップを生成する、請求項6に記載の方法。
【請求項8】
予めトレーニングされた言語モデルによって前記特徴マップを処理して、前記画像に対応する第2のテキスト特徴を取得するステップは、
予めトレーニングされたセマンティック特徴抽出ネットワークによって前記特徴マップを処理し、前記特徴マップに対応するセマンティック特徴を取得するステップであって、前記セマンティック特徴抽出ネットワークは前記特徴マップをプーリング処理するプーリング層および前記プーリング層の出力を線形変換する線形層を含む、ステップと、
前記セマンティック特徴を前記言語モデルに入力して前記第2のテキスト特徴を取得するステップと、
を含む請求項2に記載の方法。
【請求項9】
前記空間的セマンティック特徴は、ノードが示す画素点が位置する特徴マップの順序特徴をさらに含み、
関係サブグラフにおけるノードについて、当該ノードの空間的セマンティック特徴は、
当該ノードに対応する特徴マップの、前記少なくとも2つの特徴マップにおける順序値を取得するステップと、
前記順序値に応じて、当該ノードに対応する特徴マップの順序特徴を決定するステップと、
当該ノードが示す画素点の位置特徴、カテゴリ特徴および決定された順序特徴をスプライシングして、当該ノードの空間的セマンティック特徴を取得するステップと、
によって生成される請求項4に記載の方法。
【請求項10】
2つのノードの空間的セマンティック特徴の類似度は、
2つのノード間のユークリッド距離を決定し、決定されたユークリッド距離に基づいて第1の類似度を決定するステップと、
2つのノードのそれぞれに対応するカテゴリ特徴のコサイン類似度を決定するステップと、
前記第1の類似度および前記コサイン類似度に基づいて、2つのノードの空間的セマンティック特徴の類似度を決定するステップと、
によって決定される請求項4に記載の方法。
【請求項11】
各特徴マップのそれぞれに対応する関係サブグラフをマージするステップは、各関係サブグラフ間の順序関係に従って、隣接する関係サブグラフのルートノードを順次接続するステップを含む請求項4に記載の方法。
【請求項12】
特徴マップのルートノードは、
前記特徴マップにおけるノードに対して、当該ノードと他の各ノードとのJaccard係数を決定するステップであって、Jaccard係数は2つのノードの近傍ノードの積集合に含まれる要素の数と近傍ノードの和集合に含まれる要素の数との比を表す、ステップと、
当該ノードの対応する各Jaccard係数が予め設定された閾値よりも大きくないと判断したことに応じて、当該ノードがルートノードであると判定するステップと、
によって決定される請求項11に記載の方法。
【請求項13】
前記グラフ畳み込みネットワークは、第1のグラフ畳み込みネットワークと出力ネットワークとを含み、
第1のグラフ畳み込みネットワークは、前記関係グラフの特徴行列を変換するために用いられ、
出力ネットワークは第1のグラフ畳み込みネットワークの出力に応じて、各関係サブグラフからそれぞれノードを選択し、各関係サブグラフからそれぞれ選択されたノードに対応する変換後の特徴をアグリゲートして前記第1のテキスト特徴を取得するために用いられる請求項4に記載の方法。
【請求項14】
前記第1のグラフ畳み込みネットワークは、
前記関係グラフの特徴行列を変換するための第1のグラフ畳み込みサブネットワークと、
前記第1のグラフ畳み込みサブネットワークの出力に基づいて作成された関係グラフに基づいて前記第1のグラフ畳み込みサブネットワークから出力された特徴行列を変換するための第2のグラフ畳み込みサブネットワークと、
を含む請求項13に記載の方法。
【請求項15】
前記第1のテキスト特徴、前記第2のテキスト特徴および前記特徴マップに基づいて、前記画像のテキスト認識結果を生成するステップは、
前記第1のテキスト特徴、前記第2のテキスト特徴および前記特徴マップを予めトレーニングされた特徴融合ネットワークに入力して前記画像のテキスト認識結果を生成し、特徴融合ネットワークによって前記第1のテキスト特徴、前記第2のテキスト特徴および前記特徴マップをスプライシングし、得られたスプライシング結果に対して線形変換を行って、前記画像のテキスト認識結果を取得するステップを含む請求項3に記載の方法。
【請求項16】
前記初期特徴マップに対してテキストインスタンスのセグメンテーションを行ってインスタンス特徴マップを取得するステップは、予めトレーニングされたテキストインスタンスセグメンテーションネットワークによって前記初期特徴マップに対してテキストインスタンスのセグメンテーションを行ってインスタンス特徴マップを得るステップを含み、
前記初期特徴マップに対してテキスト順序のセグメンテーションを行って順序特徴マップを取得するステップは、予めトレーニングされたテキスト順序セグメンテーションネットワークによって前記初期特徴マップに対してテキスト順序のセグメンテーションを行って順序特徴マップを得るステップを含み、
前記グラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークは、次のトレーニングステップによってトレーニングされ、
前記セグメンテーションネットワークは、前記畳み込みニューラルネットワークと、テキストインスタンスセグメンテーションネットワークと、テキスト順序セグメンテーションネットワークとを含み、
前記トレーニングステップは、
異なる粒度のラベルを含むトレーニングデータからなるラベル付きトレーニングデータセットと、ラベル無しトレーニングデータセットとを取得するステップと、
前記グラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークに対応する教師-学生ネットワークを構築し、前記ラベル付きトレーニングデータセット、ラベル無しトレーニングデータセットおよび予め設定された損失関数を用いて、前記教師-学生ネットワークをトレーニングするステップと、を含み、
学生ネットワークの入力は、ラベル付きトレーニングデータおよびラベル無しトレーニングデータを含み、
教師ネットワークの入力は、ラベル無しトレーニングデータを含み、
前記損失関数は、第1の損失関数、第2の損失関数および第3の損失関数を含み、
第1の損失関数および第2の損失関数はそれぞれ、学生ネットワークからのラベル付きトレーニングデータに対する出力結果と、異なる粒度のラベルとの差異を表し、
第3の損失関数は、学生ネットワークからのラベル無しトレーニングデータに対する出力結果と、教師ネットワークからのラベル無しトレーニングデータに対する出力結果との差異を表す、
請求項6に記載の方法。
【請求項17】
テキストを認識するための装置であって、
認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得するように構成される特徴マップ取得ユニットと、
前記特徴マップに基づいて関係グラフを作成するように構成される関係グラフ作成ユニットであって、前記関係グラフにおけるノードは前記特徴マップの画素点を表し、エッジは接続された2つのノードの空間的セマンティック特徴の類似度が目標閾値よりも大きいことを表し、空間的セマンティック特徴はノードが示す画素点の位置特徴およびカテゴリ特徴を含む、関係グラフ作成ユニットと、
予めトレーニングされたグラフ畳み込みネットワークによって前記関係グラフを処理して、前記画像に対応する第1のテキスト特徴を取得するように構成されるグラフ畳み込み処理ユニットと、
前記第1のテキスト特徴に基づいて、前記画像のテキスト認識結果を生成するように構成される認識ユニットと、
を含むテキストを認識するための装置。
【請求項18】
1つまたは複数のプロセッサと、1つまたは複数のプログラムが格納されている記憶装置とを備える電子機器であって、
前記1つまたは複数のプログラムが前記1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに請求項1~16のいずれか1項に記載の方法を実現させる、電子機器。
【請求項19】
プロセッサによって実行されると請求項1~16のいずれか1項に記載の方法を実現するコンピュータプログラムが格納されているコンピュータ可読媒体。
【請求項20】
プロセッサによって実行されると請求項1~16のいずれか1項に記載の方法が実現されるコンピュータプログラ
ム。
【発明の詳細な説明】
【技術分野】
【0001】
<関連出願の相互参照>
本開示は、2021年6月7日に提出された、出願番号が202110632180.5で、発明の名称が「テキストを認識するための方法および装置」である中国特許出願に基づく優先権を主張し、当該特許出願の全文は引用により本開示に組み込まれる。
【0002】
本開示の実施形態は、コンピュータ技術分野に関し、具体的にテキストを認識するための方法および装置に関する。
【背景技術】
【0003】
従来の文字認識は、OCR(Optical Character Recognition,光学文字認識)と、STR(Scene Text Recognition,シーンテキスト認識)の2つに分けることができる。ここで、OCRとは、通常、高品質のスキャンした文書の画像中の文字を認識することを指し、STRとは、通常、自然シーンの画像中の文字を認識することを指す。
【0004】
一般に、OCRの認識シーンでは、画像の背景がシンプルで、文字配列が整っており、フォントが標準化されていることに対して、STRの認識シーンでは、画像の背景が複雑で、文字配列がランダムで、フォントが多様化されている。したがって、STRの認識難易度はOCRの認識難易度よりもはるかに大きい。
【0005】
STRは視覚障害のためのナビゲーション、自動運転への応用、拡張現実でのテキスト読取りおよび翻訳などをサポートする多くの分野で重要な実用性を持ち、コンピュータビジョンの業界でますます注目を集めている。従来のSTRの認識方法は、通常、画像からテキスト領域の位置を特定してからテキスト領域内の文字を認識する。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示の実施形態は、テキストを認識するための方法および装置を提供する。
【課題を解決するための手段】
【0007】
第1の態様では、本開示の実施形態は、テキストを認識するための方法であって、当該方法は、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得するステップと、特徴マップに基づいて関係グラフを作成するステップであって、関係グラフにおけるノードは特徴マップの画素点を表し、エッジは接続された2つのノードの空間的セマンティック特徴の類似度が目標閾値よりも大きいことを表し、空間的セマンティック特徴はノードが示す画素点の位置特徴およびカテゴリ特徴を含む、ステップと、予めトレーニングされたグラフ畳み込みネットワークによって関係グラフを処理して、画像に対応する第1のテキスト特徴を取得するステップと、第1のテキスト特徴に基づいて、画像のテキスト認識結果を生成するステップと、を含むテキストを認識するための方法を提供する。
【0008】
第2の態様では、本開示の実施形態は、テキストを認識するための装置であって、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得するように構成される特徴マップ取得ユニットと、特徴マップに基づいて関係グラフを作成するように構成される関係グラフ作成ユニットであって、関係グラフにおけるノードは特徴マップの画素点を表し、エッジは接続された2つのノードの空間的セマンティック特徴の類似度が目標閾値よりも大きいことを表し、空間的セマンティック特徴はノードが示す画素点の位置特徴およびカテゴリ特徴を含む、関係グラフ作成ユニットと、予めトレーニングされたグラフ畳み込みネットワークによって関係グラフを処理して、画像に対応する第1のテキスト特徴を取得するように構成されるグラフ畳み込み処理ユニットと、第1のテキスト特徴に基づいて、画像のテキスト認識結果を生成するように構成される認識ユニットと、を含むテキストを認識するための装置を提供する。
【0009】
第3の態様では、本開示の実施形態は、1つまたは複数のプロセッサと、1つまたは複数のプログラムが格納されている記憶装置と、を備える電子機器であって、1つまたは複数のプログラムが1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに第1の態様のいずれかの実施形態に記載の方法を実現する、電子機器を提供する。
【0010】
第4の態様では、本開示の実施形態は、プロセッサによって実行されると第1の態様のいずれかの実施形態に記載の方法を実現するコンピュータプログラムが格納されているコンピュータ可読媒体を提供する。
【0011】
第5の態様では、本開示の実施形態は、プロセッサによって実行されると第1の態様のいずれかの実施形態に記載の方法が実現されるコンピュータプログラムを提供する。
【0012】
本開示の他の特徴、目的および利点は、以下の図面を参照してなされる非限定的な実施形態に係る詳細な説明を読むことにより、より明らかになる。
【図面の簡単な説明】
【0013】
【
図1】本開示の一実施形態を適用可能な例示的なシステムアーキテクチャを示す図である。
【
図2】本開示に係るテキストを認識するための方法の一実施形態のフローチャートである。
【
図3】本開示に係るテキストを認識するための方法における特徴マップの生成方式の一実施形態のフローチャートである。
【
図4】本開示に係るテキストを認識するための方法の更なる実施形態のフローチャートである。
【
図5A】本開示に係るテキストを認識するための方法の一例示的な応用シーンの概略図である。
【
図5B】本開示に係るテキストを認識するための方法の一例示的な応用シーンの概略図である。
【
図5C】本開示に係るテキストを認識するための方法の一例示的な応用シーンの概略図である。
【
図6】本開示に係るテキストを認識するための方法におけるグラフ畳み込みネットワーク、言語モデル、およびセグメンテーションネットワークのトレーニング方法の一実施形態のフローチャートである。
【
図7】本開示に係るテキストを認識するための装置の一実施形態の構造概略図である。
【
図8】本開示の実施形態の実現に適する電子機器の構造概略図である。
【発明を実施するための形態】
【0014】
以下、図面および実施形態を参照しながら本開示をより詳細に説明する。本明細書に記載される具体的な実施形態は関連発明を説明するためのものにすぎず、当該発明を限定するものではないことを理解すべきである。なお、説明の便宜上、図面には発明に関連する部分のみが示されている。
【0015】
なお、本開示の実施形態および実施形態における特徴は、矛盾を生じない限り、相互に組み合わせることができる。以下、図面および実施形態を参照しながら本開示を詳細に説明する。
図1は、本開示に係るテキストを認識するための方法またはテキストを認識するための装置の実施形態を適用できる例示的なアーキテクチャ100を示している。
【0016】
図1に示すように、システムアーキテクチャ100は、端末装置101、102、103、ネットワーク104、およびサーバ105を含んでもよい。ネットワーク104は、端末装置101、102、103とサーバ105との間で通信リンクを提供するための媒体として使用される。ネットワーク104は、有線、無線通信リンクまたは光ファイバケーブルなどの様々なタイプの接続を含んでもよい。
【0017】
メッセージを送受信するために、端末装置101、102、103はネットワーク104を介してサーバ105と情報のやり取りをする。端末装置101、102、103には、様々なクライアントアプリケーションをインストールすることができる。例えば、ブラウザアプリケーション、検索アプリケーション、画像処理アプリケーション、深層学習フレームワークなどが挙げられる。
【0018】
端末装置101、102、103は、ハードウェアであってもよいし、ソフトウェアであってもよい。端末装置101、102、103がハードウェアである場合、様々な電子機器であってもよく、スマートフォン、タブレットコンピュータ、電子書籍リーダ、ラップトップコンピュータおよびデスクトップコンピュータなどを含むが、これらに限定されない。端末装置101、102および103がソフトウェアである場合、上記例示された電子機器にインストールされてもよい。それは、複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するための複数のソフトウェアまたはソフトウェアモジュール)として実現されてもよく、または単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここでは特に限定しない。
【0019】
サーバ105は、様々なサービスを提供するサーバ、例えば、端末装置101、102、103にインストールされたクライアントアプリケーションにバックエンドサポートを提供するサーバであってもよい。サーバ105は、ハードウェアであってもよいし、ソフトウェアであってもよい。サーバ105がハードウェアである場合、複数のサーバから構成される分散サーバクラスターとしても、単一のサーバとしても実装可能である。サーバ105がソフトウェアである場合、複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するための複数のソフトウェアまたはソフトウェアモジュール)として実現されてもよく、または単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここでは特に限定しない。
【0020】
なお、本開示の実施形態に係るテキストを認識するための方法は、通常にサーバ105によって実行され、これに応じて、テキストを認識するための装置は、通常にサーバ105に設けられている。
【0021】
なお、端末装置101、102、103に画像処理アプリケーションを搭載し、端末装置101、102、103が画像処理アプリケーションに基づいて認識すべきテキストを有する画像を処理するようにしてもよく、このとき、テキストを認識するための方法は端末装置101、102、103によって実行されてもよく、これに対応してテキストを認識するための装置は端末装置101、102、103に設けられてもよい。この時、例示的なシステムアーキテクチャ100は、サーバ105およびネットワーク104を含まなくてもよい。
【0022】
図1における端末装置、ネットワークおよびサーバの数は例示的なものに過ぎないことを理解すべきである。実現のニーズに応じて、端末装置、ネットワークおよびサーバの数を任意に加減してもよい。
【0023】
本開示の実施形態により提供されたテキストを認識するための方法および装置は、認識すべきテキストを有する画像に対してテキストインスタンスをセグメンテーションすることによって特徴マップを取得して、次に特徴マップの画素点をノードとし、ノードの空間的セマンティック特徴の類似度をエッジとして、特徴マップに対応する関係グラフを作成して、次にグラフ畳み込みネットワークによって関係グラフを処理して、画像における認識すべきテキストの第1のテキスト特徴を抽出して、次に第1のテキスト特徴を用いて画像に対応するテキスト認識結果を生成する。このようなグラフに基づくテキスト認識方法は、画像内のテキストの二次元空間情報を考慮し、画像内のテキスト特徴を一次元の特徴に直接圧縮することで二次元空間情報が無視されてしまうことが防止され、テキスト認識効果を向上させることに役立つ。
【0024】
次に、本開示に係るテキストを認識するための方法の一実施形態のフロー200を示す
図2を参照する。このテキストを認識するための方法は、次のステップを含む。
【0025】
ステップ201では、特徴マップを取得する。
【0026】
本実施形態において、特徴マップは、認識すべきテキストを有する画像に対してテキストインスタンスをセグメンテーションすることによって得ることができる。認識すべきテキストは、様々なコンテンツのテキストであってもよい。例えば、認識すべきテキストは、1種以上のテキスト(例えば、アルファベット、数字、特殊記号、漢字など)を含んでもよい。認識すべきテキストを有する画像は、様々なタイプの画像であってもよい。
【0027】
実際の応用シーンによって、認識すべきテキストを有する画像の品質が異なってもよく、画像に示す認識すべきテキストの位置、書き方などの各種の属性が異なってもよい。
【0028】
テキストインスタンスのセグメンテーションとは、画像から認識すべきテキストに含まれる個々の文字を検出して、個々の文字を区別することを指してもよい。一般に、テキストインスタンスをセグメンテーションすることによって得られる特徴マップ(MASK)は、認識テキストに含まれる文字に対応してもよい。特徴マップの数は、実際の応用シーンに応じて柔軟に設定してもよい。例えば、画像内の認識すべきテキストが1つの文字のみを含む場合、特徴マップの数は1であってもよい。
【0029】
オプションとして、特徴マップの数は、少なくとも2つである。あるいは、技術者が特徴マップの数を予め指定してもよい。一般に、実際の応用シーンによって画像内の認識すべきテキストに含まれる文字の数を推定してもよく、設定された特徴マップの数は、認識が見逃されないように、推定された文字の数よりも多くしてもよい。
【0030】
具体的には、上記実行主体または他の電子機器は、認識すべきテキストを有する画像を従来の様々なインスタンスセグメンテーション方法によって、テキストインスタンスをセグメンテーションすることで特徴マップを得ることができる。
【0031】
本実施形態では、テキストを認識するための方法(
図1に示すサーバ105等)は、認識すべきテキストを有する画像に対してテキストインスタンスをセグメンテーションすることによって得られた特徴マップを予めローカルに格納してもよく、実行主体はローカルから直接特徴マップを取得するようにしてもよい。実行主体は、接続されたデータベース、サードパーティのデータプラットフォーム、
図1に示す端末装置101、102、103などのような他の記憶装置から特徴マップを取得してもよい。
【0032】
ステップ202では、特徴マップに基づいて関係グラフを作成する。
【0033】
本実施形態では、特徴マップを得た後、特徴マップ中の各画素点をそれぞれノードとして、画素点の空間的セマンティック特徴間の類似度に基づいてエッジを作成することにより、特徴マップに基づいて作成された関係グラフを得ることができる。
【0034】
ここで、画素点の空間的セマンティック特徴は、画素点の位置特徴およびカテゴリ特徴を含んでもよい。画素点の位置特徴は、特徴マップ内の画素点の位置を表すために使用され得る。画素点のカテゴリ特徴は、画素点の所属する文字カテゴリを表すために用いられてもよい。
【0035】
文字カテゴリは、実際の応用シーンによって予め設定されてもよい。例えば、認識すべきテキストが数字であれば、それぞれ0~9および背景を示す11種の文字カテゴリに予め分けてもよい。
【0036】
一般に、画素点の位置特徴は、特徴マップ内の画素点の座標(例えば、横座標および縦座標)によって表してもよい。画素点のカテゴリ特性は、1つのベクトルによって表してもよい。当該ベクトルは、画素点がそれぞれの予め設定されたテキストカテゴリに属する確率を表してもよい。
【0037】
関係グラフを作成する際に、2つの画素点の空間的セマンティック特徴の類似度が目標閾値よりも大きい場合、2つの画素点の間にエッジを確立することができる。逆に、2つの画素点の空間的セマンティック特徴の類似度が目標閾値よりも大きくない場合、2つの画素点の間にエッジを確立しない。なお、目標閾値は、技術者が予め設定しておいてもよいし、関係グラフの作成中に柔軟に決定してもよい。例えば、各画素点同士間の空間的セマンティック類似度に基づいて目標閾値を決定してもよい。
【0038】
空間的セマンティック特徴の類似度は、様々な方法で柔軟に決定してもよい。例えば、2つの画素点の位置特徴の類似度とカテゴリ特徴の類似度をそれぞれ算出し、位置特徴の類似度とカテゴリ特徴の類似度とを加重合計して、2つの画素点の空間的セマンティック特徴の類似度としてもよい。
【0039】
オプションとして、特徴マップの数が少なくとも2つである場合には、特徴マップ毎に対応する関係サブグラフを作成し、各特徴マップのそれぞれに対応する関係サブグラフをマージして最終的な関係グラフを得るようにしてもよい。関係グラフの結合は、各特徴マップの画像中の対応する位置関係によって各関係サブグラフを順次接続することで実現できる。具体的には、2つの関係サブグラフについて、2つの関係サブグラフからそれぞれ1つのノードを選択して接続することにより、これら2つの関係サブグラフの接続を実現することができる。関係サブグラフからノードを選択する方法は、ルートノードを選択するなど、柔軟に設定することができる。
【0040】
ステップ203では、予めトレーニングされたグラフ畳み込みネットワークを用いて関係グラフを処理して、画像に対応する第1のテキスト特徴を得る。
【0041】
この実施形態では、グラフ畳み込みネットワーク(GCN,Graph Convolutional Networks)は、一般に、グラフラプラシアンのチェビシェフ一次多項式を用いてスペクトル畳み込み演算を近似するモデルと見なすことができる。スペクトル畳み込みの観点から、グラフ畳み込みネットワークは、グラフラプラス平滑化の特殊な形態と見なすことができる。グラフ畳み込みネットワークの畳み込み演算は、各ノードの特徴情報を変換した後に当該ノードの近傍ノードに送信し、近傍ノードの特徴情報を融合して各ノードの特徴情報を更新するものとみなすことができる。
【0042】
具体的には、グラフ畳み込みネットワークを用いて各ノードの特徴情報(すなわち、空間的セマンティック特徴)を更新した後、更新済み各ノードの特徴情報を用いて、画像に対応する第1のテキスト特徴を様々な方法で生成することができる。第1のテキスト特徴は、画像内の認識すべきテキストの特徴を表すことができる。
【0043】
例えば、各ノードの特徴情報を平均したり、最大値をとったりするなどの処理を行った後、処理結果を第1のテキスト特徴としてもよい。また、例えば、特徴マップにおける目標画素点に対応するノードの更新済み特徴情報を第1のテキスト特徴として選択してもよい。ここで、目標画素点は柔軟に設定できる。
【0044】
一例として、目標画素点は、例えば、特徴マップの幾何学的中心点であり得るように、技術者によって予め指定され得る。さらに別の例として、目標画素点は、対応するノードとそれぞれの近傍ノードとの間の類似度がいずれも予め設定された閾値よりも大きい画素点であってもよい。
【0045】
ステップ204では、第1のテキスト特徴に基づいて画像のテキスト認識結果を生成する。
【0046】
本実施形態では、第1のテキスト特徴を取得した後、再帰型ニューラルネットワークおよび連結時間分類器に基づくテキスト認識方法などの従来の様々なテキスト認識方法によって、第1のテキスト特徴に対応するテキスト認識結果を生成して、認識すべきテキストを有する画像に対応するテキスト認識結果としてもよい。
【0047】
本実施形態のいくつかのオプション的な実施形態では、認識すべきテキストを有する画像に対してテキストインスタンスをセグメンテーションすることによって得られた特徴マップは、認識すべきテキスト内の各文字がそれぞれ位置する画像領域の画像特徴と、他の特徴マップとの間の順序特徴とを表すことができる。そのうち、順序特徴は各特徴マップ間の順序関係を表すことができ、後続の認識プロセスにおいて各文字のコンテキストと結合してより正確に認識することができ、認識結果の精度を向上させることができる。
【0048】
次に、本開示の実施形態に係るテキストを認識するための方法における特徴マップの生成方式の一実施形態のフローチャート300を示す
図3を参照する。
図3に示すように、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことで得られた特徴マップは、次のステップによって生成されてもよい。
【0049】
ステップ301では、画像を予めトレーニングされた畳み込みニューラルネットワークに入力して初期特徴マップを得る。
【0050】
本実施形態では、畳み込みニューラルネットワークは、画像を畳み込み演算して、画像の様々な特徴(テクスチャ特徴、色特徴など)を抽出して、初期特徴マップを得るために用いられてもよい。
【0051】
オプションとして、畳み込みニューラルネットワークは、特徴ピラミッドネットワークFPNおよび残差ネットワークResNetに基づいて実装されてもよく、残差ネットワークの出力層の前の少なくとも1つの畳み込み層のストライドは1に設定されてもよく、残差ネットワークによって出力される特徴マップは、変形可能な畳み込みによって特徴ピラミッドネットワークの入力特徴マップを生成してもよい。
【0052】
ResNet50を例にとると、ResNet50は一般に、入力画像に対して5段階の処理によって出力特徴マップを得る。入力画像を順次5段階で処理して出力する特徴マップをそれぞれS1~S5とすると、S4とS5に文字テクスチャ、文字境界などの下地画像情報をより多く残すように、段階4と段階5の畳み込みストライドを1とすればよい。
【0053】
そして、特徴マップS5に変形可能な畳み込み処理を施し、変形可能な畳み込み処理後の特徴マップをFPNに入力し、FPNから最終的に出力された特徴マップを初期特徴マップとしてもよい。変形可能な畳み込みにより、畳み込みニューラルネットワークは、処理すべきテキストの不規則な境界をよく適合することができ、それにより、後続のテキスト認識の精度を向上させることができる。
【0054】
ステップ302では、初期特徴マップに対してテキストインスタンスのセグメンテーションを行い、インスタンス特徴マップを得る。
【0055】
本実施形態では、従来の様々なインスタンスセグメンテーション方法によって初期特徴マップに対してテキストインスタンスをセグメンテーションしてインスタンス特徴マップを得ることができる。
【0056】
オプションとして、PPM(Pyramid Pooling Module)構造のネットワークを用いて初期特徴マップの異なる受容野の特徴を抽出してから、異なる受容野の特徴を連結して次元変換してもよい。例えば、並列した1*1、3*3、5*5の畳み込み層を用いて初期特徴マップをそれぞれ特徴抽出し、各畳み込み層で抽出された特徴を直列につなぎ、後続処理のため、1*1の畳み込み層を用いて次元変換を行ってもよい。
【0057】
オプションとして、異なる受容野の特徴を直列につなぎおよび次元変換などの処理を行った後、空間的注意機構に基づいて複数の積層された畳み込み層を用いてさらに特徴変換を行って、空間位置が強調された特徴を得るようにしてもよい。例えば、上述のように抽出された異なる受容野の特徴を直列につなぎ、次元変換を行った後、さらに3*3および1*1の畳み込み層を用いて空間的注意特徴マップを取得することができる。そして、得られた空間的位置が強調された特徴に基づいてテキストインスタンスのセグメンテーションを行う。
【0058】
ステップ303では、初期特徴マップに対してテキスト順序のセグメンテーションを行い、順序特徴マップを得る。
【0059】
本実施形態では、画像内の認識すべきテキストにおける各文字の読み順を保持するために、従来の様々なテキスト順序セグメンテーション方法により初期特徴マップを処理して、順序特徴マップを得ることができる。
【0060】
例えば、初期特徴マップは、畳み込みエンコーダ/デコーダの構造に基づいて構築されたネットワークに入力されて、初期特徴マップに対してシンプルな畳み込みダウンサンプリングおよび逆畳み込みアップサンプリングを実行して、順序特徴マップを得ることができる。
【0061】
ステップ304では、インスタンス特徴マップと順序特徴マップを融合して、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことで特徴マップを得る。
【0062】
本実施形態では、得られたインスタンス特徴マップと順序特徴マップを融合して、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことで特徴マップを得ることができる。
【0063】
インスタンス特徴マップ中の文字インスタンスが少なくとも2つである場合には、各文字インスタンスのそれぞれに対応する順序特徴マップにインスタンス特徴マップを融合して、少なくとも2つの融合された特徴マップを得ることができる。
【0064】
具体的には、様々な特徴融合方法によりインスタンス特徴マップおよび順序特徴マップを融合することができる。例えば、インスタンス特徴マップと順序特徴マップとの融合は、インスタンス特徴マップと順序特徴マップとの対応する画素の乗算によって達成され得る。
【0065】
本実施形態のいくつかのオプション的な実施形態では、特徴マップに基づいて作成された関係グラフにおけるノードの空間的セマンティック特徴は、ノードによって示される画素点が存在する特徴マップの順序特徴をさらに含んでもよい。
【0066】
このとき、各特徴マップに対応する関係サブグラフ中のノードに対して、そのノードの空間的セマンティック特徴は、以下のステップによって生成されてもよい。
【0067】
ステップ1では、当該ノードに対応する特徴マップの各特徴マップにおける順序値を取得する。
【0068】
本ステップでは、特徴マップは、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって得られたので、各特徴マップは、分割された各インスタンス間の順序に対応する順序関係を有する。
【0069】
順序値は、特徴マップの各特徴マップにおけるソート位置を表すことができる。例えば、20枚の特徴マップを予め設定しておき、各特徴マップの並び番号(1~20のうちの1つ)をその特徴マップの順序値としてもよい。
【0070】
同一特徴マップにおける各画素点に対応する順序値は同じであることが理解される。
【0071】
ステップ2では、当該ノードに対応する特徴マップの順序値に基づいて、当該ノードに対応する特徴マップの順序特徴を決定する。
【0072】
本ステップにおいて、特徴マップの順序特徴は、ベクトルで表すことができる。したがって、各順序値を同一ベクトル空間にマッピングすることにより、各特徴マップのそれぞれに対応する順序特徴を得ることができる。具体的には、マッピング方法は、従来の種々のマッピング方法を採用することができる。
【0073】
例えば、異なる波長のサイン関数およびコサイン関数を使用して、順序値をベクトル化することができる。一例として、以下の式を用いて各順序値のベクトル表現を得ることができる。
【0074】
【0075】
【0076】
ここで、zは、順序値を表すことができる。Cεはベクトル次元を表し、具体的には技術者によって予め設定されてもよい。iはベクトル中の要素の番号を表す。ε2iはベクトル中の偶数番目の要素を表し、ε2i+1はベクトル中の奇数番目の要素を表す。
【0077】
ステップ3では、当該ノードが示す画素点の位置特徴、カテゴリ特徴および決定された順序特徴をスプライシングして、当該ノードの空間的セマンティック特徴を取得する。
【0078】
本ステップでは、当該ノードが示す画素点の位置特徴、カテゴリ特徴および決定された順序特徴を順にスプライシングして、当該ノードの空間的セマンティック特徴を得ることができる。ここで、画素点の位置特徴とカテゴリ特徴はいずれもベクトルを用いて表すことができる。
【0079】
オプションとして、各ノードについて、まず画素点の位置特徴およびカテゴリ特徴をベクトル表現し、次に当該ノードの位置特徴およびカテゴリ特徴のベクトル表現および当該ノードの順序特徴のベクトル表現をスプライシングして、当該ノードの空間的セマンティック特徴を得ることができる。
【0080】
例示として、いずれのノードについて、当該ノードの横座標はX、縦座標はY、カテゴリ特徴はPであり、それぞれX、Y、Pをベクトル表現にマッピングし、その後、X、Y、Pのそれぞれに対応するベクトル表現を直列につなぎ、そのノードの位置特徴とカテゴリ特徴に対応するベクトル表現とする。ここで、X、YおよびPをベクトル表現にマッピングする方法は、従来の様々なマッピング方法を採用してもよい。
【0081】
なお、計算の便宜上、各ベクトル表現の次元は、一致に保持されてもよい。例えば、1×1の畳み込みを使用して、各ベクトル表現の次元を柔軟に調整することができる。
【0082】
オプションとして、当該ノードの位置特徴およびカテゴリ特徴に対応するベクトル表現および当該ノードの順序特徴のベクトル表現をスプライシングする前に、当該ノードの位置特徴およびカテゴリ特徴に対応するベクトル表現を様々な正規化方法により正規化することができ、それによってベクトル要素を減少させ、その後の計算に役立つ。
【0083】
例示として、当該ノードのベクトル表現から、対応する特徴マップにおける目標ノードの位置特徴およびカテゴリ特徴に対応するベクトル表現を差し引くことによって正規化を達成することができる。目標ノードの位置特徴およびカテゴリ特徴に対応するベクトル表現は、正規化された後に0であることが理解される。
【0084】
なお、目標ノードは、技術者によって予め定められていてもよいし、計算過程において柔軟に設定されていてもよい。例えば、目標ノードは、特徴マップのルートノードであってもよい。一般に、特徴マップの幾何学的中心点をルートノードとして設定してもよい。
【0085】
オプションとして、特徴マップのルートノードは、特徴マップ内のノードについて、当該ノードと他の各ノードとのそれぞれのJaccard係数(IoU,Intersection over Union)を決定し、当該ノードに対応する各Jaccard係数が予め設定された閾値以下であると判断したことに応じて、当該ノードをルートノードとすることによって決定されてもよい。ここで、Jaccard係数は、2つのノードの近傍ノードの積集合に含まれる要素の数と近傍ノードの和集合に含まれる要素の数との比を表してもよい。予め設定された閾値は、技術者によって予め設定されてもよい。このような方法により、文字中心ごとの画素点をルートノードとして効率的に選別することができるとともに、その特徴マップに対応する関係サブグラフにおけるノード分布のバランスをとることができる。
【0086】
本実施形態のいくつかのオプション的な実施形態では、2つのノードについて、空間的セマンティック特徴の類似度は、次のステップによって決定されてもよい。
【0087】
ステップ1では、2つのノード間のユークリッド距離を決定し、決定されたユークリッド距離に基づいて第1の類似度を決定する。
【0088】
本ステップでは、2つのノード間のユークリッド距離は、一般にノードの空間的セマンティック特徴の類似度に反比例する。第1の類似度は、これに基づいて様々な方法で決定されてもよい。例示として、以下の式により第1の類似度を求めることができる。
【0089】
【0090】
ただし、pとqはそれぞれ2つのノードである。D(p,q)は、pとqとの間のユークリッド距離を表す。HmとWmはそれぞれ特徴マップの高さと幅を表す。Es(p,q)は、第1の類似度を表す。
【0091】
ステップ2では、2つのノードのそれぞれに対応するカテゴリ特徴のコサイン類似度を決定する。
【0092】
本ステップでは、従来のコサイン類似度の計算方法により、2つのノードのそれぞれに対応するカテゴリ特徴のベクトル表現を用いてコサイン類似度を計算することができる。
【0093】
ステップ3では、第1の類似度およびコサイン類似度に基づいて、2つのノードの空間的セマンティック特徴の類似度を決定する。
【0094】
本ステップでは、空間的セマンティック特徴の類似度は一般に第1の類似度に正比例し、コサイン類似度にも正比例する。これに基づいて、2つのノードの空間的セマンティック特徴の類似度は、様々な方法で決定されてもよい。例えば、2つのノードの空間的セマンティック特徴の類似度として、第1の類似度とコサイン類似度との積を直接計算してもよい。これにより、ノード間の空間位置、カテゴリなどの各方面での類似度を総合的に考慮することができ、より正確な関係グラフの作成に寄与する。
【0095】
本実施形態のいくつかのオプション的な実施形態では、特徴マップに対応する関係グラフを作成する際に、各ノードについて、当該ノードと他のノードとの間の空間的セマンティック特徴の類似度をそれぞれ計算し、類似度の大きい方から小さい方への順に、所定数のノードを当該ノードの近傍ノードとして選択する。すなわち、選択されたノードと当該ノードとの間にエッジを確立することができる。ここで、所定数は、具体的な応用シーンに応じて柔軟に設定してもよい。例えば、所定数は8であってもよい。これにより、作成された関係グラフの複雑さおよび精度をより柔軟に制御することができ、後続の計算に役立つ。
【0096】
本実施形態のいくつかのオプション的な実施形態において、上記グラフ畳み込みネットワークは、第1のグラフ畳み込みネットワークと出力ネットワークとを含んでもよい。ここで、第1のグラフ畳み込みネットワークは、作成された関係グラフの特徴行列を変換するために使用され得る。出力ネットワークは、第1のグラフ畳み込みネットワークの出力に応じて、各関係サブグラフからそれぞれノードを選択し、各関係サブグラフからそれぞれ選択されたノードに対応する変換後の特徴をアグリゲートして第1のテキスト特徴を取得するために用いられてもよい。
【0097】
各関係サブグラフは、関係グラフの特徴行列と隣接行列を用いて表現できる。ここで、特徴行列中の要素は、関係サブグラフ中のノードの特徴を表すために使用される。隣接行列は、関係サブグラフにおける各ノード間の接続関係(エッジの有無など)を表すために使用される。
【0098】
第1のグラフ畳み込みネットワークは、関係グラフの特徴行列の変換を達成するために、従来の様々な畳み込みネットワーク構造を採用してもよい。
【0099】
オプションとして、第1のグラフ畳み込みネットワークは、第1のグラフ畳み込みサブネットワークと第2のグラフ畳み込みサブネットワークを含んでもよい。ここで、第1のグラフ畳み込みサブネットワークは、関係グラフの特徴行列を変換するために使用され得る。第2のグラフ畳み込みサブネットワークは、第1のグラフ畳み込みサブネットワークの出力に基づいて作成された関係サブグラフに応じて、第1のグラフ畳み込みサブネットワークから出力された特徴行列を変換するために使用され得る。
【0100】
この場合、第1のグラフ畳み込みサブネットワークは関係グラフの特徴行列を変換した後、変換後の特徴行列における各ノードの特徴に応じて、ノード間の類似度を再計算してエッジを再作成してもよい。すなわち、関係サブグラフを更新することができる。第2のグラフ畳み込みサブネットワークは、更新後の関係サブグラフを処理することができる。
【0101】
第1のグラフ畳み込みサブネットワークおよび第2のグラフ畳み込みサブネットワークの構造は、実際の応用ニーズに応じて技術者によって柔軟に設定され得る。
【0102】
例示として、第1のグラフ畳み込みサブネットワークの処理プロセスは以下の式で示される。
【0103】
【0104】
ここで、lは、第1のグラフ畳み込みサブネットワークの畳み込み層の数量である。
Ylは、第l層の出力を表す。Xlは、第l層の入力を表す。Wlは、第1のグラフ畳み込みサブネットワークが学習したネットワークパラメータである。Aは関係グラフの隣接行列を表す。INはAと同じサイズの行列を表し、且つ主対角要素はすべて1である。
【0105】
【0106】
は対角行列である。iとjはそれぞれ行と列の番号を表す。σは非線形活性化関数を表す。
【0107】
【0108】
は行列が次元で接続されることを表す。
【0109】
第2のグラフ畳み込みサブネットワークの処理プロセスは以下の式で示される。
【0110】
【0111】
ここで、lは、第2のグラフ畳み込みサブネットワークの畳み込み層の数量である。
【0112】
【0113】
は、第l層の出力を表す。
【0114】
【0115】
は、第2のグラフ畳み込みサブネットワークが学習したネットワークパラメータである。なお、ここで
【0116】
【0117】
は、更新後の関係グラフに基づいて得られた行列であり、具体的な計算方法は、上述した第1のグラフ畳み込みサブネットワークにおける
【0118】
【0119】
と同様である。
【0120】
具体的には、出力ネットワークは、第1のグラフ畳み込みネットワークの出力によって表された関係グラフにおける各ノードの特徴情報の更新に応じて、ノードとノードとの間の距離を再計算し、次いで、小さい方から大きい方までの距離に応じてノードの一部を破棄する(例えば、ノードの半分を破棄する)ことによって、プーリング動作を実現し、対応する特徴マップのサイズを減小することができる。
【0121】
オプションとして、上述した第1のグラフ畳み込みネットワークおよび出力ネットワークの特徴更新およびノードの選別のプロセスは、各関係サブグラフに1つのノードだけが残るまで繰り返し実行されてもよい。次に、関係サブグラフ間の順序に従って各関係サブグラフ内の選別されたノードの特徴情報を順次スプライシングして、第1のテキスト特徴を形成することができる。
【0122】
第1のグラフ畳み込みネットワークおよび出力ネットワークの特徴更新およびノード選別のプロセスの反復によって、各関係サブグラフから空間関係において対応する文字インスタンスを最も表すことができるノードを選別することができ、それにより当該ノードの特徴情報を利用して後続のテキスト認識を行い、テキスト認識の効率および精度を向上させることに役立つ。
【0123】
本開示の上記実施形態に提供された方法は、グラフに基づくテキスト認識方法を提供した。具体的には、テキストインスタンスをセグメンテーションして得られた特徴マップから関係グラフを作成し、テキストの空間的セマンティック情報をグラフ構造で表現し、関係グラフにグラフ畳み込み処理を施して、画像中の認識すべきテキストの二次元空間的特徴情報を抽出し、各文字インスタンス間の順序関係を合わせて、画像中の認識すべきテキストの認識を実現する。
【0124】
次に、本開示に係るテキストを認識するための方法の更なる実施形態のフロー400を示す
図4を参照する。このテキストを認識するための方法は、次のステップを含む。
【0125】
ステップ401では、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことで特徴マップを取得する。
【0126】
ステップ402では、特徴マップに基づいて関係グラフを作成する。
【0127】
ステップ403では、予めトレーニングされたグラフ畳み込みネットワークを用いて関係グラフを処理して、画像に対応する第1のテキスト特徴を得る。
【0128】
ステップ404では、予めトレーニングされた言語モデルを用いて特徴マップを処理して画像に対応する第2のテキスト特徴を得る。
【0129】
本実施形態において、言語モデルは、テキスト認識のための従来の様々な言語モデルであってもよい。例えば、N-Gramモデル、HMM(Hidden Markov Model,隠れマルコフモデル)、BERT(Bidirectional Encoder Representations from Transformers)等が挙げられる。一般に、言語モデルが出力層の前に生成した文字列の特徴表現を第2のテキスト特徴として選択してもよい。
【0130】
オプションとして、予めトレーニングされたセマンティック特徴抽出ネットワークを用いて特徴マップを処理し、特徴マップに対応するセマンティック特徴を得ることができる。次いで、セマンティック特徴を前記言語モデルに入力して前記第2のテキスト特徴を得る。ここで、セマンティック特徴抽出ネットワークは、従来の様々な特徴抽出ネットワークの構造を採用してもよい。
【0131】
例示として、セマンティック特徴抽出ネットワークは、特徴マップをプーリング処理するプーリング層と、プーリング層の出力を線形変換する線形層とを含んでもよい。具体的には、まず、入力された特徴マップをプーリング処理し、プーリング結果を線形変換して画像空間の解像度を下げ、セマンティック特徴を生成する。
【0132】
言語モデルは、従来の様々な自然言語処理ベースのモデルの構造を採用してもよい。例えば、翻訳モデルなどは、各文字インスタンスの前後にいくつかの文字インスタンスを用いてその文字のセマンティックを予測することで、テキスト認識を実現する。
【0133】
ステップ405では、第1のテキスト特徴および第2のテキスト特徴に基づいて、画像のテキスト認識結果を生成する。
【0134】
本実施形態では、第1のテキスト特徴と第2のテキスト特徴とを組み合わせて、画像のテキスト認識結果を様々な方法で生成することができる。例えば、従来の様々な特徴融合方法を採用して第1のテキスト特徴と第2のテキスト特徴を融合して、融合後のテキスト特徴を取得し、次に融合後のテキスト特徴を認識して認識結果を取得する。
【0135】
言語モデルのテキスト認識プロセスは、一次元圧縮された特徴情報を用い、二次元空間の特徴情報を無視しているため、グラフに基づくテキスト認識方法と言語モデルベースのテキスト認識方法を結合することで、より豊富な特徴情報を用いたいっそう信頼性の高いテキスト認識が可能となる。
【0136】
本実施形態のいくつかのオプション的な実施形態では、第1のテキスト特徴、第2のテキスト特徴および特徴マップに基づいて画像のテキスト認識結果を生成する。
【0137】
特徴マップ自体は、認識すべきテキストの画像特徴を表すことができるので、第1のテキスト特徴と第2のテキスト特徴とを用いてテキスト認識を行う際に、テキストインスタンスのセグメンテーションにより得られた特徴マップと組み合わせることで、テキスト特徴の表現力をさらに高めることができ、テキスト認識効果を向上させることができる。
【0138】
具体的な認識方法は、実際の応用ニーズに応じて柔軟に設定してもよい。例えば、従来の様々な特徴融合方法を用いて、第1のテキスト特徴、第2のテキスト特徴および特徴マップを融合し、その後、融合後の特徴を用いてテキスト認識結果を予測することができる。
【0139】
オプションとして、第1のテキスト特徴、第2のテキスト特徴、および特徴マップを予めトレーニングされた特徴融合ネットワークに入力して、画像のテキスト認識結果を生成することができる。
【0140】
ここで、特徴融合ネットワークは第1のテキスト特徴、第2のテキスト特徴および特徴マップをスプライシングし、次に得られたスプライシング結果を線形変換して画像のテキスト認識結果を取得するために使用することができる。特徴融合ネットワークの構造は、技術者によって予め設定されてもよい。
【0141】
例示として、特徴融合ネットワークの処理プロセスは以下の式で示される。
【0142】
【0143】
ここで、ftは特徴融合ネットワークの融合結果を表す。vt、ltおよびgtは、それぞれ、特徴マップ、第2のテキスト特徴および第1のテキスト特徴を表す。WzとWfは特徴融合ネットワークが学習しようとする線形変換パラメータを表す。
【0144】
【0145】
は要素間の乗算を表す。「;」は次元によるスプライシング処理を表す。Sigmodは活性化関数である。tは、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことで得られた特徴マップの数量を表す。
【0146】
なお、特徴マップは順序関係を有しており、第1のテキスト特徴と第2のテキスト特徴もこのような順序関係に基づいて生成された文字列の特徴表現であるため、融合する度に特徴マップ、第2のテキスト特徴および第1のテキスト特徴における対応する各文字特徴を融合して最終的な融合結果を得る。
【0147】
なお、対応する文字インスタンス間にはコンテキスト順序関係があるため、特徴マップ間にもコンテキスト順序関係があるが、本開示では、特徴マップに対する処理過程において、各特徴マップのそれぞれに対応する文字インスタンスを並行して認識することができ、処理効率が向上された。
【0148】
本実施形態において具体的に説明されていない内容は、
図2の対応する実施形態の関連する説明を参照することができ、ここではその説明を省略する。
【0149】
引き続き、本実施形態によるテキストを認識するための方法の一例示的な応用シーンの概略図である
図5A、
図5B及び
図5Cを参照する。具体的には、
図5Aに示すように、まず、認識すべきテキストを有する画像、すなわちテキスト画像を取得し、その後、テキスト画像を予めトレーニングされた畳み込みネットワークに入力して初期特徴マップを抽出し、次いで、初期特徴マップをテキストインスタンスセグメンテーションネットワークおよびテキスト順序セグメンテーションネットワークにそれぞれ入力して、インスタンス特徴マップおよび順序特徴マップを抽出し、得られたインスタンス特徴マップおよび順序特徴マップを融合して、テキスト画像に対応する複数の特徴マップを形成することができる。
【0150】
その後、得られた複数の特徴マップから関係グラフを作成し、作成された関係グラフを予めトレーニングされたグラフ畳み込みネットワークを用いて処理し、テキスト画像の第1のテキスト特徴を得ることができる。同時に、得られた複数の特徴マップを言語モデルを用いて処理し、テキスト画像の第2のテキスト特徴を得る。そして、得られた複数の特徴マップと、第1のテキスト特徴と、第2のテキスト特徴とを統合してテキスト認識を行い、テキスト画像に対応するテキスト認識結果を得る。
【0151】
なお、得られた複数の特徴マップを、グラフ畳み込みネットワークと言語モデルとを用いて処理するプロセスについては、具体的には
図5Bを参照してもよい。具体的には、まず各特徴マップに対応する関係サブグラフを作成し、次に各関係サブグラフをマージして関係グラフを得、マージして得られた関係グラフをグラフ畳み込みネットワークを用いて処理し、関係グラフ中のノードの特徴表現を得る。同時に、まず特徴マップをセマンティック特徴抽出ネットワークに入力してセマンティック特徴を抽出し、次に翻訳モデルを利用してセマンティック特徴に応じて認識すべきテキストに対応する文字列の特徴表現を形成する。
【0152】
その後、得られた関係グラフ中のノードの特徴表現と文字列の特徴表現を融合するために、線形層を用いて次元変換などの処理を行い、関係グラフ中のノードの特徴表現と文字列の特徴表現を融合し、融合結果から文字画像のテキスト認識結果を生成する。
【0153】
特徴マップごとに、対応する関係サブグラフを作成する具体的なプロセスは、
図5Cを参照してもよい。具体的には、まず、特徴マップの順序特徴と、特徴マップにおける各画素点の位置特徴およびカテゴリ特徴とを決定することができる。そして、順序特徴と位置特徴を融合してマッピングなどの方法により各ノードのベクトル表現を形成することで、各ノードのベクトル表現からなる関係サブグラフの特徴行列を得る。同時に、カテゴリ特徴に基づいて各画素点が示すノード間の類似度を決定し、ノード間の類似度に基づいてノードごとに近傍ノードを探索してエッジを作成し、関係サブグラフの隣接行列を形成する。その後、得られた特徴行列と隣接行列を用いて特
徴グラフに対応する関係サブグラフを表すことができる。
【0154】
本開示の上記実施形態により提供された方法は、グラフに基づくテキスト認識方法および言語モデルに基づくテキスト認識方法の動的融合により、2つの認識方法が互いに学習することを可能にし、より多くの情報を利用してテキスト認識を行い、それによりテキスト認識効果を向上させ、自然シーンのテキスト認識における画像の複雑な背景、照明の不均一、画像のぼやけ、文字の形態の多様化などの様々な文字認識状況にいっそうよく適応できる。上述した本開示の実施形態に記載された方法は、視覚障害のナビゲーション、自動運転、拡張現実におけるテキスト読取りおよび翻訳などの実際のビジネスシーンにおけるテキスト認識を支援するために適用することができる。本開示の実施形態における方法が適用され得る他の実際のビジネスシーンについては、本明細書では列挙しない。
【0155】
次に、本開示に係るテキストを認識するための方法におけるグラフ畳み込みネットワーク、言語モデル、およびセグメンテーションネットワークのトレーニング方法の一実施形態のフロー600を示す
図6を参照する。
図6に示すように、グラフ畳み込みネットワーク、言語モデル、およびセグメンテーションネットワークは、以下のステップによってトレーニングされることができる。
【0156】
ステップ601では、ラベル付きトレーニングデータセットおよびラベル無しトレーニングデータセットを取得する。
【0157】
なお、本実施形態において、グラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークの学習は、上述したテキストを認識するための方法の実行主体によって実行されてもよいし、他の電子機器によって実行されてもよい。グラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークをトレーニングする実行主体は、ローカルまたは他の記憶装置から、ラベル付きトレーニングデータセットおよびラベル無しトレーニングデータセットを取得することができる。
【0158】
ここで、ラベル付きトレーニングデータセットはラベル付けされたトレーニングデータからなり、ラベル無しトレーニングデータセットはラベル付けされていないトレーニングデータからなる。ラベル付きトレーニングデータセットは、異なる粒度のラベルを含んでもよい。例えば、文字テキストの認識について、ラベルは、文字セットラベルおよび単語レベルのラベルを含んでもよい。
【0159】
ステップ602では、グラフ畳み込みネットワーク、言語モデル、およびセグメンテーションネットワークに対応する教師-学生ネットワークを構築し、教師-学生ネットワークを、ラベル付きトレーニングデータセット、ラベル無しトレーニングデータセット、および予め設定された損失関数を使用してトレーニングする。
【0160】
本実施形態では、教師-学生ネットワークは、移行学習におけるネットワーク構造である。教師ネットワークと学生ネットワークの構造は、まったく同じであっても異なっていてもよい。教師ネットワークと学生ネットワークの構造が同じである場合には、EMA(指数移動平均値など)の技術に基づいて教師ネットワークと学生ネットワークの構造のパラメータ共有を実現することができる。
【0161】
この実施形態では、学生ネットワークへの入力は、ラベル付きトレーニングデータおよびラベル無しトレーニングデータを含んでもよく、教師ネットワークへの入力は、ラベル無しトレーニングデータのみを含んでもよい。損失関数は、第1の損失関数、第2の損失関数、および第3の損失関数を含んでもよい。
【0162】
ここで、第1の損失関数および第2の損失関数は、それぞれ、ラベル付きトレーニングデータに対する学生ネットワークの出力結果と、異なる粒度のラベルとの間の差を表すことができる。例えば、第1の損失関数は、学生ネットワークによって出力された文字レベルの認識結果と実際の文字レベルのラベルとの間の差を判定するために使用することができ、第2の損失関数は、学生ネットワークによって出力された単語レベルの認識結果と実際の単語レベルのラベルとの間の差を判定するために使用することができる。
【0163】
第3の損失関数は、ラベル無しトレーニングデータのための学生ネットワークと教師ネットワークとの間の出力結果の差をそれぞれ表すことができる。具体的には、第1の損失関数、第2の損失関数、および第3の損失関数(例えば、3つの損失関数の和を最適化する)を組み合わせて、グラフ畳み込みネットワーク、言語モデル、およびセグメンテーションネットワークのパラメータを調整して、グラフ畳み込みネットワーク、言語モデル、およびセグメンテーションネットワークのトレーニングを完了させることができる。
【0164】
なお、本開示における各種ネットワークまたはモデルのトレーニングはいずれも従来の各種機械学習のトレーニング方法によって実現することができるので、ここでは説明を省略する。
【0165】
本開示の上記実施形態によって提供されるグラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークに対するトレーニング方法は、ラベル付きトレーニングデータおよびラベル無しトレーニングデータを利用して共同でグラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークをトレーニングすることにより、実際に実トレーニングデータが少なく且つ実データにラベル付けしにくいなどの問題が解決され、グラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークから構成されるネットワーク全体の一般化およびロバスト性を向上させることができ、それによりテキスト認識結果の精度を向上させるのに役立つ。
【0166】
さらに
図7を参照すると、上記の各図に示す方法の実施形態として、本開示は、テキストを認識するための装置の一実施形態を提供し、当該装置の実施形態は、
図2に示す方法の実施形態に対応しており、当該装置は、具体的に様々な電子機器に適用することができる。
【0167】
図7に示すように、本実施形態に係るテキストを認識するための装置700は、特徴マップ取得ユニット701と、関係グラフ作成ユニット702と、グラフ畳み込み処理ユニット703と、認識ユニット704とを備える。特徴マップ取得ユニット701は、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得するように構成される。関係グラフ作成ユニット702は、特徴マップに基づいて関係グラフを作成するように構成される。関係グラフにおけるノードは特徴マップの画素点を表し、エッジは接続された2つのノードの空間的セマンティック特徴の類似度が目標閾値よりも大きいことを表し、空間的セマンティック特徴はノードが示す画素点の位置特徴およびカテゴリ特徴を含む。グラフ畳み込み処理ユニット703は、予めトレーニングされたグラフ畳み込みネットワークによって関係グラフを処理して、画像に対応する第1のテキスト特徴を取得するように構成される。認識ユニット704は、第1のテキスト特徴に基づいて、画像のテキスト認識結果を生成するように構成される。
【0168】
本実施形態において、テキストを認識するための装置700における特徴マップ取得ユニット701と、関係グラフ作成ユニット702と、グラフ畳み込み処理ユニット703と、認識ユニット704の具体的な処理およびそれらによって奏される技術的効果は、それぞれ
図2の対応する実施形態におけるステップ201、ステップ202、ステップ203およびステップ204の関連する説明を参照することができ、ここではその説明を省略する。
【0169】
本実施形態のいくつかのオプション的な実施形態では、テキストを認識するための装置700は、予めトレーニングされた言語モデルによって特徴マップを処理して、画像に対応する第2のテキスト特徴を取得するように構成される言語モデル処理ユニット(図示せず)をさらに含み、上記認識ユニット704は、第1のテキスト特徴および第2のテキスト特徴に基づいて、画像のテキスト認識結果を生成するようにさらに構成される。
【0170】
本実施形態のいくつかのオプション的な実施形態では、上記認識ユニット704は、第1のテキスト特徴、第2のテキスト特徴および特徴マップに基づいて、画像のテキスト認識結果を生成するようにさらに構成される。
【0171】
本実施形態のいくつかのオプション的な実施形態では、特徴マップは、少なくとも2つの特徴マップであり、上記関係グラフ作成ユニット702は、少なくとも2つの特徴マップのうちの特徴マップに対して、当該特徴マップに対応する関係サブグラフを作成し、各特徴マップのそれぞれに対応する関係サブグラフをマージして、関係グラフを取得するようにさらに構成される。
【0172】
本実施形態のいくつかのオプション的な実施形態では、少なくとも2つの特徴マップのうちの特徴マップは、認識すべきテキストにおける各文字がそれぞれ位置する画像領域の画像特徴および、他の特徴マップとの間の順序特徴を表すために使用される。
【0173】
本実施形態のいくつかのオプション的な実施形態では、特徴マップは、画像を予めトレーニングされた畳み込みニューラルネットワークに入力して、初期特徴マップを取得するステップと、初期特徴マップに対してテキストインスタンスのセグメンテーションを行い、インスタンス特徴マップを取得するステップと、初期特徴マップに対してテキスト順序のセグメンテーションを行い、順序特徴マップを取得するステップと、インスタンス特徴マップと順序特徴マップを融合して、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行って特徴マップを取得するステップと、によって生成される。
【0174】
本実施形態のいくつかのオプション的な実施形態では、畳み込みニューラルネットワークは、特徴ピラミッドネットワークと残差ネットワークに基づいて実現され、残差ネットワークの出力層の前の少なくとも1つの畳み込み層のストライドは1であり、残差ネットワークによって出力された特徴マップは、変形可能な畳み込みによって特徴ピラミッドネットワークの入力特徴マップを生成する。
【0175】
本実施形態のいくつかのオプション的な実施形態では、上記言語モデル処理ユニットは、予めトレーニングされたセマンティック特徴抽出ネットワークによって特徴マップを処理し、特徴マップに対応するセマンティック特徴を取得するステップであって、セマンティック特徴抽出ネットワークは特徴マップをプーリング処理するプーリング層およびプーリング層の出力を線形変換する線形層を含む、ステップと、セマンティック特徴を言語モデルに入力して第2のテキスト特徴を取得するステップと、を行うようにさらに構成される。
【0176】
本実施形態のいくつかのオプション的な実施形態では、空間的セマンティック特徴は、ノードが示す画素点が位置する特徴マップの順序特徴をさらに含む。関係サブグラフにおけるノードについて、当該ノードの空間的セマンティック特徴は、当該ノードに対応する特徴マップの少なくとも2つの特徴マップにおける順序値を取得するステップと、順序値に応じて、当該ノードに対応する特徴マップの順序特徴を決定するステップと、当該ノードが示す画素点の位置特徴、カテゴリ特徴および決定された順序特徴をスプライシングして、当該ノードの空間的セマンティック特徴を取得するステップと、によって生成される。
【0177】
本実施形態のいくつかのオプション的な実施形態では、2つのノードの空間的セマンティック特徴の類似度は、2つのノード間のユークリッド距離を決定し、且つ決定されたユークリッド距離に基づいて第1の類似度を決定するステップと、2つのノードのそれぞれに対応するカテゴリ特徴のコサイン類似度を決定するステップと、第1の類似度およびコサイン類似度に基づいて、2つのノードの空間的セマンティック特徴の類似度を決定するステップと、によって決定される。
【0178】
本実施形態のいくつかのオプション的な実施形態では、上記関係グラフ作成ユニット702は、各関係サブグラフ間の順序関係に従って、隣接する関係サブグラフのルートノードを順次接続するようにさらに構成される。
【0179】
本実施形態のいくつかのオプション的な実施形態では、特徴マップのルートノードは、特徴マップにおけるノードに対して、当該ノードと他の各ノードとのJaccard係数(IoU,Intersection over Union)を決定するステップであって、Jaccard係数は2つのノードの近傍ノードの積集合に含まれる要素の数と近傍ノードの和集合に含まれる要素の数との比を表す、ステップと、当該ノードの対応する各Jaccard係数が予め設定された閾値よりも大きくないと判断したことに応じて、当該ノードがルートノードであると判定するステップと、によって決定される。
【0180】
本実施形態のいくつかのオプション的な実施形態では、グラフ畳み込みネットワークは、第1のグラフ畳み込みネットワークと出力ネットワークとを含む。第1のグラフ畳み込みネットワークは、関係グラフの特徴行列を変換するために用いられる。出力ネットワークは第1のグラフ畳み込みネットワークの出力に応じて、各関係サブグラフからそれぞれノードを選択し、各関係サブグラフからそれぞれ選択されたノードに対応する変換後の特徴をアグリゲートして第1のテキスト特徴を取得するために用いられる。
【0181】
本実施形態のいくつかのオプション的な実施形態では、第1のグラフ畳み込みネットワークは、関係グラフの特徴行列を変換するための第1のグラフ畳み込みサブネットワークと、第1のグラフ畳み込みサブネットワークの出力に基づいて作成された関係グラフに基づいて第1のグラフ畳み込みサブネットワークから出力された特徴行列を変換するための第2のグラフ畳み込みサブネットワークと、を含む。
【0182】
本実施形態のいくつかのオプション的な実施形態では、上記認識ユニット704は、第1のテキスト特徴、第2のテキスト特徴および特徴マップを予めトレーニングされた特徴融合ネットワークに入力して画像のテキスト認識結果を生成し、特徴融合ネットワークによって第1のテキスト特徴、第2のテキスト特徴および特徴マップをスプライシングし、得られたスプライシング結果に対して線形変換を行って、画像のテキスト認識結果を取得するようにさらに構成される。
【0183】
本実施形態のいくつかのオプション的な実施形態では、初期特徴マップに対してテキストインスタンスのセグメンテーションを行ってインスタンス特徴マップを取得するステップは、予めトレーニングされたテキストインスタンスセグメンテーションネットワークによって初期特徴マップに対してテキストインスタンスのセグメンテーションを行ってインスタンス特徴マップを得るステップを含む。初期特徴マップに対してテキスト順序のセグメンテーションを行って順序特徴マップを取得するステップは、予めトレーニングされたテキスト順序セグメンテーションネットワークによって初期特徴マップに対してテキスト順序のセグメンテーションを行って順序特徴マップを得るステップを含む。上記グラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークは、次のトレーニングステップによってトレーニングされる。セグメンテーションネットワークは、畳み込みニューラルネットワークと、テキストインスタンスセグメンテーションネットワークと、テキスト順序セグメンテーションネットワークとを含む。上記トレーニングステップは、異なる粒度のラベルを含むトレーニングデータからなるラベル付きトレーニングデータセットと、ラベル無しトレーニングデータセットとを取得するステップと、グラフ畳み込みネットワーク、言語モデルおよびセグメンテーションネットワークに対応する教師-学生ネットワークを構築し、ラベル付きトレーニングデータセット、ラベル無しトレーニングデータセットおよび予め設定された損失関数を用いて、教師-学生ネットワークをトレーニングするステップと、を含む。学生ネットワークの入力は、ラベル付きトレーニングデータおよびラベル無しトレーニングデータを含む。教師ネットワークの入力は、ラベル無しトレーニングデータを含む。損失関数は、第1の損失関数、第2の損失関数および第3の損失関数を含む。第1の損失関数および第2の損失関数はそれぞれ、学生ネットワークのラベル付きトレーニングデータに対する出力結果と異なる粒度のラベルとの差異を表し、第3の損失関数は、学生ネットワークのラベル無しトレーニングデータに対する出力結果と教師ネットワークのラベル無しトレーニングデータに対する出力結果との差異を表す。
【0184】
本開示の上記実施形態によって提供された装置は、特徴マップ取得ユニットは、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得する。関係グラフ作成ユニットは、特徴マップに基づいて関係グラフを作成する。関係グラフにおけるノードは特徴マップの画素点を表し、エッジは接続された2つのノードの空間的セマンティック特徴の類似度が目標閾値よりも大きいことを表し、空間的セマンティック特徴はノードが示す画素点の位置特徴およびカテゴリ特徴を含む。グラフ畳み込み処理ユニットは、予めトレーニングされたグラフ畳み込みネットワークによって関係グラフを処理して、画像に対応する第1のテキスト特徴を取得する。認識ユニットは、第1のテキスト特徴に基づいて、画像のテキスト認識結果を生成する。それによって、グラフに基づくテキスト認識が実現され、このような方式により画像におけるテキストの二次元空間情報を考慮することができ、テキスト認識効果の向上に役立つ。
【0185】
以下、本出願の実施形態を実現するために適用される電子機器(例えば、
図1に示すサーバ)800を示す構造概略図である
図8を参照する。本開示の実施形態における端末装置は、携帯電話、ノートパソコン、デジタル放送受信機、PDA(Personal Digital Assistants,パーソナルデジタルアシスタント)、PAD(タブレットコンピュータ)、PMP(ポータブルマルチメディアプレーヤ)、車載端末(例えば、カーナビゲーション端末)などの携帯端末並びにデジタルTV、デスクトップコンピュータなどの固定端末を含むが、これらに限定されない。
図8に示すサーバは、あくまでも一例に過ぎず、本開示の実施形態の機能および使用範囲を限定するものではない。
【0186】
図8に示すように、電子機器800は、読み出し専用メモリ(ROM)802に格納されているプログラムまたは記憶装置808からランダムアクセスメモリ(RAM)803にロードされたプログラムによって様々な適当な動作および処理を実行可能な処理装置(例えば、中央処理装置、グラフィックスプロセッサなど)801を含んでもよい。RAM803には、電子機器800の動作に必要な様々なプログラムおよびデータが更に格納されている。処理装置801、ROM802およびRAM803は、バス804を介して互いに接続されている。入/出力(I/O)インターフェース805もバス804に接続されている。
【0187】
通常、以下の装置(例えば、タッチスクリーン、タッチパッド、キーボード、マウス、カメラ、マイクロホン、加速度計、ジャイロスコープなどを含む入力装置806、液晶ディスプレイ(LCD)、スピーカ、振動子などを含む出力装置807、例えば、磁気テープ、ハードディスクなどを含む記憶装置808、および通信装置809)がI/Oインタフェース805に接続されてもよい。通信装置809により、電子機器800は、データを交換するために他のデバイスと無線または有線で通信可能になる。
図8は、様々な装置を有する電子機器800を示しているが、図示された装置のすべてを実装または具備することが要求されないことを理解すべきである。オプション的に実行されるか、またはより多いまたはより少ない装置が実装されてもよい。
図8に示す各ブロックは、1つの装置を表すことも、必要に応じて複数の装置を表すこともできる。
【0188】
特に、本開示の実施形態によれば、上述したフローチャートを参照しながら記載されたプロセスは、コンピュータのソフトウェアプログラムとして実装されてもよい。例えば、本開示の実施形態は、コンピュータ可読媒体に具現化されるコンピュータプログラムを備え、当該コンピュータプログラムは、フローチャートで示される方法を実行するためのプログラムコードを含む。このような実施形態では、当該コンピュータプログラムは、通信装置809を介してネットワークからダウンロードされてインストールされてもよいし、または記憶装置808またはROM802からインストールされてもよい。当該コンピュータプログラムが処理装置801によって実行されると、本開示の実施形態の方法で限定された上記機能を実行する。
【0189】
なお、本開示の実施形態に記載されたコンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体、またはこれらの任意の組み合わせであってもよい。コンピュータ可読記憶媒体は、例えば、電気的、磁気的、光学的、電磁気的、赤外線、または半導体のシステム、装置もしくはデバイス、またはこれらの任意の組み合わせであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例としては、1本または複数本の導線により電気的に接続された、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、消去可能プログラマブル読取り専用メモリ(EPROMもしくはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読取り専用メモリ(CD-ROM)、光メモリ、磁気メモリ、またはこれらの任意の適切な組み合わせを含むことができるが、これらに限定されない。本開示の実施形態において、コンピュータ可読記憶媒体は、指令実行システム、装置もしくはデバイスによって使用可能な、またはそれらに組み込まれて使用可能なプログラムを包含または格納する任意の有形の媒体であってもよい。本開示の実施形態において、コンピュータ可読信号媒体は、ベースバンドにおける、または搬送波の一部として伝搬されるデータ信号を含んでもよく、その中にコンピュータ可読プログラムコードが担持されている。かかる伝搬されたデータ信号は、様々な形態をとることができ、電磁信号、光信号、またはこれらの任意の適切な組み合わせを含むが、これらに限定されない。コンピュータ可読信号媒体は、更にコンピュータ可読記憶媒体以外の任意のコンピュータ可読媒体であってもよい。当該コンピュータ可読信号媒体は、指令実行システム、装置もしくはデバイスによって使用されるか、またはそれらに組み込まれて使用されるプログラムを、送信、伝搬または伝送することができる。コンピュータ可読媒体に含まれるプログラムコードは任意の適切な媒体で伝送することができ、当該任意の適切な媒体とは、電線、光ケーブル、RF(無線周波数)など、またはこれらの任意の適切な組み合わせを含むが、これらに限定されない。
【0190】
上記コンピュータ可読媒体は、上記電子機器に含まれるものであってもよく、当該電子機器に実装されずに別体として存在するものであってもよい。上記コンピュータ可読媒体は一つまたは複数のプログラムを担持し、上記一つまたは複数のプログラムが当該電子機器によって実行される時に、認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得するステップと、特徴マップに基づいて関係グラフを作成するステップであって、関係グラフにおけるノードは特徴マップの画素点を表し、エッジは接続された2つのノードの空間的セマンティック特徴の類似度が目標閾値よりも大きいことを表し、空間的セマンティック特徴はノードが示す画素点の位置特徴およびカテゴリ特徴を含む、ステップと、予めトレーニングされたグラフ畳み込みネットワークによって関係グラフを処理して、画像に対応する第1のテキスト特徴を取得するステップと、第1のテキスト特徴に基づいて、画像のテキスト認識結果を生成するステップと、を当該電子機器に実行させる。
【0191】
本開示の実施形態の動作を実行するためのコンピュータプログラムコードは、1種以上のプログラミング言語、またはそれらの組み合わせで作成されることができ、上記プログラミング言語は、Java、Smalltalk、C++などのオブジェクト指向プログラミング言語と、「C」言語または同様のプログラミング言語などの従来の手続き型プログラミング言語とを含む。プログラムコードは、完全にユーザのコンピュータで実行されることも、部分的にユーザのコンピュータで実行されることも、単独のソフトウェアパッケージとして実行されることも、部分的にユーザのコンピュータで実行されながら部分的にリモートコンピュータで実行されることも、または完全にリモートコンピュータもしくはサーバで実行されることも可能である。リモートコンピュータの場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意の種類のネットワークを介してユーザコンピュータに接続することができ、または(例えば、インターネットサービスプロバイダによるインターネットサービスを介して)外部コンピュータに接続することができる。
【0192】
図面のうちのフローチャートおよびブロック図は、本開示の様々な実施形態に係るシステム、方法およびコンピュータプログラムによって実現できるアーキテクチャ、機能および動作の表示例である。これについては、フローチャートまたはブロック図における各ブロックは、モジュール、プログラムセグメント、またはコードの一部を表すことができる。当該モジュール、プログラムセグメント、またはコードの一部には、所定のロジック機能を実現するための1つまたは複数の実行可能な指令が含まれている。なお、一部の代替となる実施態様においては、ブロックに示されている機能は図面に示されているものとは異なる順序で実行することも可能である。例えば、連続して示された2つのブロックは、実際には係る機能に応じて、ほぼ並行して実行されてもよく、時には逆の順序で実行されてもよい。さらに注意すべきなのは、ブロック図および/またはフローチャートにおけるすべてのブロック、ならびにブロック図および/またはフローチャートにおけるブロックの組み合わせは、所定の機能または動作を実行する専用のハードウェアベースのシステムで実装されてもよく、または専用のハードウェアとコンピュータ指令との組み合わせで実装されてもよい。
【0193】
本開示の実施形態に記載されたユニットは、ソフトウェアで実装されてもよく、ハードウェアで実装されてもよい。記載されたユニットは、プロセッサに設けられてもよく、例えば、「特徴マップ取得ユニットと、関係グラフ作成ユニットと、グラフ畳み込み処理ユニットと、認識ユニットとを備えるプロセッサ」のように記載されてもよい。ここで、これらのユニットの名称は、ある場合において当該ユニットその自体を限定するものではなく、例えば、特徴マップ取得ユニットは、「認識すべきテキストを有する画像に対してテキストインスタンスのセグメンテーションを行うことによって特徴マップを取得するユニット」として記載されてもよい。
【0194】
以上の記載は、本開示の好ましい実施形態、および適用される技術的原理に関する説明に過ぎない。当業者であれば、本開示に係る発明の範囲が、上述した技術的特徴の特定の組み合わせからなる技術案に限定されるものではなく、上述した本開示の趣旨を逸脱しない範囲で、上述した技術的特徴またはそれらの均等の特徴の任意の組み合わせからなる他の技術案も含むべきであることを理解すべきである。例えば、上記の特徴と、本開示の実施形態に開示された類似の機能を持っている技術的特徴(これらに限定されていない)と互いに置き換えてなる技術案が挙げられる。
【符号の説明】
【0195】
100 システムアーキテクチャ
101 端末装置
102 端末装置
103 端末装置
104 ネットワーク
105 サーバ
200 フロー
201 ステップ
202 ステップ
203 ステップ
204 ステップ
300 フローチャート
301 ステップ
302 ステップ
303 ステップ
304 ステップ
400 フロー
401 ステップ
402 ステップ
403 ステップ
404 ステップ
405 ステップ
600 フロー
601 ステップ
602 ステップ
700 装置
701 特徴マップ取得ユニット
702 関係グラフ作成ユニット
703 処理ユニット
704 認識ユニット
800 電子機器
801 処理装置
802 専用メモリ(ROM)
803 ランダムアクセスメモリ(RAM)
804 バス
805 I/Oインタフェース
806 入力装置
807 出力装置
808 記憶装置
809 通信装置