(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-13
(45)【発行日】2024-05-21
(54)【発明の名称】画像ブロックの認識結果の補正方法及び装置、並びに記憶媒体
(51)【国際特許分類】
G06V 30/148 20220101AFI20240514BHJP
G06T 7/00 20170101ALI20240514BHJP
G06V 30/24 20220101ALI20240514BHJP
【FI】
G06V30/148
G06T7/00 350Z
G06V30/24
(21)【出願番号】P 2020066804
(22)【出願日】2020-04-02
【審査請求日】2023-01-12
(31)【優先権主張番号】201910288895.6
(32)【優先日】2019-04-11
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】シア・シアオジエ
(72)【発明者】
【氏名】孫 俊
(72)【発明者】
【氏名】ユィ・シアオイ
【審査官】長谷川 素直
(56)【参考文献】
【文献】特開2001-283156(JP,A)
【文献】特開2018-101244(JP,A)
【文献】特開平01-065680(JP,A)
【文献】特開平02-109187(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/00
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
画像ブロックの認識結果の補正方法であって、
前記認識結果の候補行列を取得するステップであって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、ステップと、
各ノードに真値テキストを記憶するように木を構築し、前記木における探索すべきノードの範囲を決定するステップであって、前記木は、
Burkhard-Keller木であり、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、ステップと、
決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正するステップと、を含
み、
前記木は、LCS(最長共通部分列)に基づいて構築され、
前記差のメトリックは、LCS長さであり、
前記木における探索すべきノードの範囲を決定するステップは、
前記木における根ノードに含まれる内容と前記候補行列との重み付けLCS長さと、所定閾値との差分値を計算するステップと、
前記差分値以上のLCS長さを有する子ノードを前記範囲に含ませるステップと、を含む、方法。
【請求項2】
前記候補行列の各列における各候補は、信頼度の高い順にランク付けされる、請求項1に記載の方法。
【請求項3】
前記重み付けLCS長さを計算する際に、
マッチングが取れた場合、前記重み付けLCS長さの重みは、対応する画像ブロックについて選択された候補の数、及び前記候補行列におけるマッチングすべき候補の選択された候補の数のうちのランクに基づくものであり、
マッチングが取れていない場合、前記重みは、負の無限大である、請求項
1に記載の方法。
【請求項4】
前記決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うステップは、
前記範囲内の各ノードに含まれる内容と前記候補行列との重み付けLCS長さを計算するステップ、を含む、請求項
3に記載の方法。
【請求項5】
前記認識結果を補正するステップは、
算出された前記範囲内の各ノードに含まれる内容と前記候補行列との1つ又は複数の重み付けLCS長さに基づいて、前記認識結果を補正するステップ、を含む、請求項
4に記載の方法。
【請求項6】
画像ブロックの認識結果の補正装置であって、
前記認識結果の候補行列を取得する取得部であって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、取得部と、
各ノードに真値テキストを記憶するように木を構築し、前記木における探索すべきノードの範囲を決定する決定部であって、前記木は、
Burkhard-Keller木であり、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、決定部と、
決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正する補正部と、を含
み、
前記木は、LCS(最長共通部分列)に基づいて構築され、
前記差のメトリックは、LCS長さであり、
前記決定部は、
前記木における根ノードに含まれる内容と前記候補行列との重み付けLCS長さと、所定閾値との差分値を計算し、
前記差分値以上のLCS長さを有する子ノードを前記範囲に含ませる、装置。
【請求項7】
プログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、前記プログラムがプロセッサにより実行される際に、
画像ブロックの認識結果の候補行列を取得するステップであって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、ステップと、
各ノードに真値テキストを記憶するように木を構築し、前記木における探索すべきノードの範囲を決定するステップであって、前記木は、
Burkhard-Keller木であり、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、ステップと、
決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正するステップと、を実行させ
、
前記木は、LCS(最長共通部分列)に基づいて構築され、
前記差のメトリックは、LCS長さであり、
前記木における探索すべきノードの範囲を決定するステップは、
前記木における根ノードに含まれる内容と前記候補行列との重み付けLCS長さと、所定閾値との差分値を計算するステップと、
前記差分値以上のLCS長さを有する子ノードを前記範囲に含ませるステップと、を含む、記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像補正の分野に関し、具体的には、画像ブロックの認識結果の補正方法に関する。
【背景技術】
【0002】
OCR(光学文字認識)技術は、例えば郵便サービス、金融、保険、課税などの産業で広く使用されており、産業及び生活の効率を改善するための利便性をもたらしている。自動的に生成された正確なテキスト認識結果は、より多くの情報を提供し、労力を節約することができる。一般的なOCRエンジンを用いて、前処理後の元のテキスト画像を認識し、概略的な認識結果を取得することができる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
以下は、本発明の態様を基本的に理解させるために、本発明の簡単な概要を説明する。なお、この簡単な概要は、本発明を網羅的な概要ではなく、本発明のポイント又は重要な部分を意図的に特定するものではなく、本発明の範囲を意図的に限定するものではなく、後述するより詳細的な説明の前文として、単なる概念を簡単な形で説明することを目的とする。
【0004】
本発明は、画像ブロックの認識結果の補正方法及び装置、並びに記憶媒体を提供する。
【課題を解決するための手段】
【0005】
本発明の1つの態様では、画像ブロックの認識結果の補正方法であって、前記認識結果の候補行列を取得するステップであって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、ステップと、木における探索すべきノードの範囲を決定するステップであって、前記木は、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、ステップと、決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正するステップと、を含む、方法を提供する。
【0006】
本発明のもう1つの態様では、画像ブロックの認識結果の補正装置であって、前記認識結果の候補行列を取得する取得部であって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、取得部と、木における探索すべきノードの範囲を決定する決定部であって、前記木は、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、決定部と、決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正する補正部と、を含む、装置を提供する。
【0007】
本発明の他の態様では、対応するコンピュータプログラムコード、コンピュータ読み取り可能な記憶媒体、及びコンピュータプログラムプロダクトをさらに提供する。
【0008】
本発明に係る画像ブロックの認識結果の補正方法及び装置によれば、画像認識結果の補正を改善し、補正速度を向上させることができるため、画像認識精度を改善することができる。
【0009】
以下は図面を参照しながら本発明の好ましい実施形態を詳細に説明することにより、本発明の上記及び他の利点はより明確になる。
【図面の簡単な説明】
【0010】
本開示の上記及び他の利点及び特徴を理解させるために、以下は図面を参照しながら本開示の具体的な実施形態を詳細に説明する。図面及び以下の詳細な説明は本明細書に含まれ、本明細書の一部を構成する。同一の機能及び構造を有する素子は同一の符号で示される。なお、これらの図面は単なる本開示の典型的な例を説明するためのものであり、本開示の範囲を限定するものではない。
【
図1A】オーバーセグメンテーション法を用いて得られた住所画像における各文字の部分の一例を示す図である。
【
図1B】ビームサーチアルゴリズムを用いて得られた概略的な認識結果の一例を示す図である。
【
図2】OCRエンジンにより得られた複数の候補を有する認識結果行列の一例を示す図である。
【
図3】本発明の1つの実施形態に係る画像ブロックの認識結果の補正方法のフローチャートである。
【
図5】BK木における特定の探索範囲の決定方法を示す模式図である。
【
図6】本発明の1つの実施形態に係る画像ブロックの認識結果の補正装置を示すブロック図である。
【
図7】本発明の実施形態に係る方法及び/又は装置を実現可能な汎用パーソナルコンピュータの例示的な構成を示すブロック図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら本発明の例示的な実施例を詳細に説明する。説明の便宜上、明細書には実際の実施形態の全ての特徴が示されていない。なお、実際に実施する際に、開発者の具体的な目標を実現するために、特定の実施形態を変更してもよい、例えばシステム及び業務に関する制限条件に応じて実施形態を変更してもよい。また、開発作業が非常に複雑であり、且つ時間がかかるが、本公開の当業者にとって、この開発作業は単なる例の作業である。
【0012】
なお、本発明を明確にするために、図面には本発明に密に関連する装置の構成要件及び/又は処理のステップのみが示され、本発明と関係のない細部が省略されている。
【0013】
上述したように、OCRエンジンを用いることで、画像の概略的な認識結果を取得することができる。しかし、OCRエンジンの性能により、認識結果は通常正確ではない。従って、より正確な認識結果を取得し、労力を節約し、認識結果を自動的に補正することが望ましい。
【0014】
本発明は、画像認識精度を改善できる画像における例えばテキストのOCR認識結果の補正方法を提供する。特に、本発明に係る方法は、距離メトリックを用いて認識結果と既存テキストとの類似性を比較するとともに、補正プロセスにおいて大きなテキストライブラリにおける探索プロセスを加速させる。
【0015】
簡単に言えば、本発明に係る補正方法は、次の3つの段階を含む。(1)OCRエンジンにより例えば住所の画像の認識結果を取得し、該住所画像を複数の画像ブロックに分割し、各画像ブロックについて複数の文字候補を提供する。(2)既存の正確なテキストライブラリを記憶するための木(木構造)を構築する。(3)構築された木から最適なマッチした認識テキストを探索し、最終的な補正結果を取得する。
【0016】
以下は、
図3を参照しながら、本発明の1つの実施形態に係る方法300を詳細に説明する。
【0017】
方法300はステップ301で開始し、画像ブロックの認識結果の候補行列を取得する。ここで、該候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す。
【0018】
具体的には、この実施形態では、一般的なOCRエンジンを用いて画像の概略的な認識結果を取得してもよい。OCRエンジンは、オーバーセグメンテーション法及びビームサーチ(beam-Search)法に基づいて設計される。本発明を容易に理解させるために、以下はこの2つの方法の基本的な原理を簡単に説明する。
【0019】
(オーバーセグメンテーション法)
オーバーセグメンテーションとは、文字列を原始言語フラグメントに分割し、原始言語フラグメントを結合文字認識及びコンテキストの文字に組み合わせることを意味する。オーバーセグメンテーションは、通常、連結成分ラベリング及びマージ文字分割(merged characters segmentation)の2つのステップを含む。まず、住所画像に対してノイズ低減、正規化、2値化などの全処理を行う。次に、該住所画像の連結成分を取得してもよい。
図1Aに示すように、これらの連結成分及び輪郭線を分析することで、オーバーセグメンテーション法を用いて住所画像における各文字の部分を取得することができる。各セグメントは、例えば訓練された畳み込みニューラルネットワーク(CNN)モデルにより認識されてもよい。
【0020】
(ビームサーチアルゴリズム)
住所画像の全てのセグメント及びCNNモデルの対応する認識結果が取得された後に、ビームサーチアルゴリズムにより、組み合わせ結果及び最終的な結果を取得してもよい。ビームサーチアルゴリズムは、経路評価及び探索のアルゴリズムである。経路評価関数は、ベイズ決定に基づくものであり、文字分類、幾何学的コンテキスト及び言語コンテキストを含む複数のコンテキストを統合する。様々な組み合わせは、異なる経路に対応する。改良されたビームサーチアルゴリズムは、最大の経路評価スコアを有する経路を効率的に見つけるように、プルーニング(pruning)判定を2つの段階に分ける。
図1Bに示すように、最後に最大のスコアを有する経路により最終的な認識結果を取得する。
【0021】
図2は以上の方法により得られたステップ301における候補行列の一例を示している。各画像ブロックについて、
図2に示す行列における各列に対応する複数の文字候補を提供する。
【0022】
好ましくは、候補行列の各列における各候補は、信頼度の高い順にランク付けされている。
【0023】
次に、ステップ302において、木における探索すべきノードの範囲を決定する。ここで、木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて、該木を構築する。
【0024】
具体的には、本実施形態では、既存の正確な真値テキストを記憶するために、例えばBK木構造に基づいて木を構築してもよい。
【0025】
なお、様々なOCR応用シナリオでは、通常、既存のドメイン知識又は真値テキスト候補の収集は簡単である。例えば、タスクが請求書、領収書における会社名の認識である場合、税務機関から全ての登録された合法的会社名を取得することができる。タスクが宅配便伝票、封筒における住所の認識である場合、官庁の郵政システムから全ての正確な住所項目を取得することができる。
【0026】
本実施形態では、取得されたドメイン知識を用いて、好ましくは、最長共通部分列(Longest Common Subsequence:LCS)に基づいてBK木構造を構築するとともに、BK木に基づく探索速度を加速させてもよい。本発明を容易に理解させるために、以下はB木の基本原理を簡単に説明する。
【0027】
(BK木)
BK木は、Walter Austin Burkhard及びRobert M. Kellerにより提案されたため、Burkhard-Keller Treeとも称される。BK木は、主にスペル訂正、ファジイ(fuzzy)マッチング、及び辞書における文字列の類似性の比較などに使用される。通常、距離メトリックd(x、y)を用いて、BK木の隣接ノード間の距離を計算する。BK木で最も一般的に使用される距離メトリックは、レーベンシュタイン(levenshtein)距離である。該距離は、編集距離とも称され、即ち2つの文字シーケンスを比較するための文字列距離メトリックである。編集距離は、単一文字により構成された2つの文字列を挿入、削除又は置換により相互に変換する最小のステップ数を表す。
【0028】
2つの文字列a、b(文字の長さはそれぞれ|a|及び|b|である)間の編集距離ED
a,b(|a|,|b|)は下記の式で示されてもよい。
【数1】
【0029】
BK木を構築する際に、まず、1つの根ノードを選択する。該根ノードは任意の要素aであってもよい。次に、挿入すべきノードと該根ノードとの間の距離を計算する。ノードの下のk層目の部分木(subtree)の全ての要素と該ノード要素との間の距離はkである。
図4は簡単なBK木の構造を示している。
【0030】
好ましい態様では、例えば最長共通部分列を用いてBK木を構築してもよい。本発明を容易に理解させるために、以下は最長共通部分列を簡単に説明する。
【0031】
(最長共通部分列)
LCS(最長共通部分列)は、列の集合(通常は2つの列からなる集合)の最長共通部分列を見つけ出すためのものである。最長共通文字列(Longest Common Substring)とは異なり、連続した部分列の元の列における位置は必ずしも同一ではない。この態様では、LCSは、BK木構造における任意のノード要素と特定の文字列とを比較するために用いられる。
【0032】
例えば、2つの列は、X=(x
1,x
2,…,x
m)及びY=(y
1,y
2,…,y
n)と定義される。Xのプレフィックスは、X
1,2,…,mと示されてもよく、Yのプレフィックスは、Y
1,2,…,nと示されてもよい。LCS(X
i,Y
j)は、プレフィックスがX
i及びY
jの得られた最長共通部分列の集合を表す。該集合は、下記の式により計算されてもよい。
【数2】
【0033】
Xi及びYjの最長共通部分列を見つけ出すために、まず要素xiとyjとを比較する。両者が等しい場合、LCS(Xi,Yj)はLCS(Xi-1,Yj-1)+xiと示されてもよい。両者が等しくない場合、LCS(Xi,Yj)はLCS(Xi,Yj-1)とLCS(Xi-1,Yj)のうち大きい方である。
【0034】
2次元の数列C[i][j]でLCS(X
i,Y
j)を記録する。C[i][j]の再帰式は次のように示されてもよい。
【数3】
【0035】
上述したように、既存の知識ドメインのOCR応用シナリオを収集してもよい。日本の住所の手書きの認識の例では、まず、日本官庁の郵便局の全ての主要住所を真値テキストの住所ライブラリとして収集する。これらの住所は、例えば「北海道札幌市中央区円山西町」、「埼玉県所沢市金山町」、「熊本県玉名郡玉東町原倉」などの様々な住所項目である。次に、任意の1つの住所列を根ノードとして選択する。次に、次の挿入された住所列と根ノードとの間のLCS距離を計算する。このように、住所ライブラリにおける全ての住所項目を順次挿入して最終的なBK木を構成する。
【0036】
以下は、ステップ302のBK木における探索範囲の決定方法を詳細に説明する。
【0037】
上述したように、元のOCRエンジンは、認識されたテキスト画像を複数のブロックに分割し、各ブロックは複数の認識候補を有する。kは認識候補の数を表す。k個の候補のうち、候補文字のランク(rank)が高いほど、正確である可能性が大きくなる。
【0038】
2次元の数列C[i][j]を用いて、複数の候補を有する認識結果行列AとBK木における特定の文字列bとの間の重み付けLCS距離を記録する。再帰式は次のようになる。
【数4】
【数5】
【0039】
ここで、f(i,j)はLCS長さの重みである。式(4)及び(5)により、認識結果行列Aにマッチングの取れた文字があり、且つ該文字の可能性が高い場合、LCS長さの重みは1に近くなる。一方、マッチングの取れた文字がない場合、LCS長さの重みは非常に低くなり、一例として、-999999という値であってもよい。
【0040】
元のOCRエンジンの各認識ブロックの複数の文字候補認識結果が取得された後に、BK木の特定範囲内のノードにおいて最適なマッチした文字列を、補正結果として探索してもよい。
図5は、BK木における特定の探索範囲の決定方法を示している。
【0041】
具体的には、この態様では、探索範囲の決定は以下のステップを含む。(1)探索距離閾値nを設定し、ここで、nは正整数、例えば5である。(2)候補認識結果行列AとBK木の根ノードとの間のLCS長さを計算する。(3)該根ノードの全ての子ノードの親ノードとその子ノードとの間のLCS長さd(A,B)≧n-dのノードを探索範囲に追加する。
【0042】
なお、nを設定することで、探索プロセスにおいて多くのノード及び部分木が除去され、検索プロセス全体の走査範囲は全てのノードの5%~8%を超えていないため、その効率は力まかせ探査(Brute-force search)よりも遥かに高い。
【0043】
最後に、ステップ303において、決定された範囲内の全てのノードに含まれる内容と該候補行列とのマッチングを行うことで、該認識結果を補正する。
【0044】
具体的には、この実施形態では、BK木が終了するまで、上記の探索範囲の決定ステップ(2)、(3)を繰り返す。次に、探索結果の候補を並び替え、LCS長さが大きいほど、対応するマッチ度が高くなる。このように、補正結果である最適なマッチしたテキストを見つけることができる。
【0045】
上記の方法は、コンピュータ実行可能なプログラムにより完全に実現されてもよいし、ハードウェア及び/又はファームウェアを用いて部分的又は完全に実現されてもよい。ハードウェア及び/又はファームウェアにより実現される場合、又はコンピュータ実行可能なプログラムがプログラムを実行可能なハードウェア装置にロードされる場合、後述する画像ブロックの認識結果の補正装置が実現される。以下は、上述した詳細な内容を省略し、これらの装置の概要を説明する。なお、これらの装置は上記の方法を実行することができるが、上記方法は後述する装置の構成部を採用し、或いは構成部により実行されるものに限定されない。
【0046】
図6は本発明の1つの実施形態に係る画像ブロックの認識結果の補正装置を示している。装置600は、取得部601、決定部602及び補正部603を含む。取得部601は、画像ブロックの認識結果の候補行列を取得する。ここで、該候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す。決定部602は、木における探索すべきノードの範囲を決定する。ここで、該木は、該木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される。補正部603は、決定された範囲内の全てのノードに含まれる内容と該候補行列とのマッチングを行うことで、該認識結果を補正する。
【0047】
図6に示す画像ブロックの認識結果の補正装置600は
図3に示す方法300に対応する。よって、画像ブロックの認識結果の補正装置600における各部の詳細は、
図3における画像ブロックの認識結果の補正方法300について説明において既に詳細に説明され、ここでその説明を省略する。
【0048】
上記処理及び装置はソフトウェア及び/又はファームウェアにより実現されてもよい。ソフトウェア及び/又はファームウェアにより実施されている場合、記憶媒体又はネットワークから専用のハードウェア構成を有するコンピュータ(例えば
図7示されている汎用パーソナルコンピュータ700)に上記方法を実施するためのソフトウェアを構成するプログラムをインストールしてもよく、該コンピュータは各種のプログラムがインストールされている場合は各種の機能などを実行できる。
【0049】
図7は本発明の実施形態に係る方法及び/又は装置を実現可能な汎用パーソナルコンピュータの例示的な構成を示すブロック図である。
図7において、中央処理部(CPU)701は、読み出し専用メモリ(ROM)702に記憶されているプログラム、又は記憶部708からランダムアクセスメモリ(RAM)703にロードされたプログラムにより各種の処理を実行する。RAM703には、必要に応じて、CPU701が各種の処理を実行するに必要なデータが記憶されている。CPU701、ROM702、及びRAM703は、バス704を介して互いに接続されている。入力/出力インターフェース705もバス604に接続されている。
【0050】
入力部706(キーボード、マウスなどを含む)、出力部707(ディスプレイ、例えばブラウン管(CRT)、液晶ディスプレイ(LCD)など、及びスピーカなどを含む)、記憶部708(例えばハードディスクなどを含む)、通信部709(例えばネットワークのインタフェースカード、例えばLANカード、モデムなどを含む)は、入力/出力インターフェース705に接続されている。通信部709は、ネットワーク、例えばインターネットを介して通信処理を実行する。必要に応じて、ドライバ710は、入力/出力インターフェース705に接続されてもよい。取り外し可能な媒体711は、例えば磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどであり、必要に応じてドライバ710にセットアップされて、その中から読みだされたコンピュータプログラムは必要に応じて記憶部708にインストールされている。
【0051】
ソフトウェアにより上記処理を実施する場合、ネットワーク、例えばインターネット、又は記憶媒体、例えば取り外し可能な媒体711を介してソフトウェアを構成するプログラムをインストールする。
【0052】
なお、これらの記憶媒体は、
図7に示されている、プログラムを記憶し、機器と分離してユーザへプログラムを提供する取り外し可能な媒体711に限定されない。取り外し可能な媒体711は、例えば磁気ディスク(フロッピーディスク(登録商標)を含む)、光ディスク(光ディスク-読み出し専用メモリ(CD-ROM)、及びデジタル多目的ディスク(DVD)を含む)、光磁気ディスク(ミニディスク(MD)(登録商標))及び半導体メモリを含む。或いは、記憶媒体は、ROM702、記憶部708に含まれるハードディスクなどであってもよく、プログラムを記憶し、それらを含む機器と共にユーザへ提供される。
【0053】
本発明は、対応するコンピュータプログラムコード、機器が読み取り可能な命令コードが記憶されているコンピュータプログラムプロダクトをさらに提供する。該命令コードは、機器により読み取られ、実行される際に、上記の本発明の実施形態に係る方法を実行することができる。
【0054】
それに応じて、本発明は、機器が読み取り可能な命令コードを含むプログラムプロダクトが記録されている記憶媒体をさらに含む。該記憶媒体は、フロッピーディスク、光ディスク、光磁気ディスク、メモリカード、メモリスティック等を含むが、これらに限定されない。
【0055】
また、上述の各実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1)
画像ブロックの認識結果の補正方法であって、
前記認識結果の候補行列を取得するステップであって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、ステップと、
木における探索すべきノードの範囲を決定するステップであって、前記木は、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、ステップと、
決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正するステップと、を含む、方法。
(付記2)
前記候補行列の各列における各候補は、信頼度の高い順にランク付けされる、付記1に記載の方法。
(付記3)
前記木は、LCS(最長共通部分列)に基づいて構築され、
前記差のメトリックは、LCS長さである、付記1又は2に記載の方法。
(付記4)
前記木における探索すべきノードの範囲を決定するステップは、
前記木における根ノードに含まれる内容と前記候補行列との重み付けLCS長さと、所定閾値との差分値を計算するステップと、
前記差分値以上のLCS長さを有する子ノードを前記範囲に含ませるステップと、を含む、付記3に記載の方法。
(付記5)
マッチングが取れた場合、前記重み付けLCS長さの重みは、対応する画像ブロックについて選択された候補の数、及び前記候補行列におけるマッチングすべき候補の選択された候補の数のうちのランクに基づくものである、付記4に記載の方法。
(付記6)
マッチングが取れていない場合、前記重みは、負の無限大である、付記4に記載の方法。
(付記7)
前記決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うステップは、
前記範囲内の各ノードに含まれる内容と前記候補行列との重み付けLCS長さを計算するステップ、を含む、付記5又は6に記載の方法。
(付記8)
前記認識結果を補正するステップは、
算出された前記範囲内の各ノードに含まれる内容と前記候補行列との1つ又は複数の重み付けLCS長さに基づいて、前記認識結果を補正するステップ、を含む、付記7に記載の方法。
(付記9)
前記木は、Burkhard-Keller木である、付記1又は2に記載の方法。
(付記10)
認識結果は、光学文字認識(OCR)エンジンにより取得される、付記1又は2に記載の方法。
(付記11)
OCRエンジンは、オーバーセグメンテーション法及びビームサーチアルゴリズムを用いる、付記10に記載の方法。
(付記12)
画像ブロックの認識結果の補正装置であって、
前記認識結果の候補行列を取得する取得部であって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、取得部と、
木における探索すべきノードの範囲を決定する決定部であって、前記木は、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、決定部と、
決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正する補正部と、を含む、装置。
(付記13)
前記候補行列の各列における各候補は、信頼度の高い順にランク付けされる、付記12に記載の装置。
(付記14)
前記木は、LCS(最長共通部分列)に基づいて構築され、
前記差のメトリックは、LCS長さである、付記12又は13に記載の装置。
(付記15)
前記決定部は、
前記木における根ノードに含まれる内容と前記候補行列との重み付けLCS長さと、所定閾値との差分値を計算し、
前記差分値以上のLCS長さを有する子ノードを前記範囲に含ませる、付記14に記載の装置。
(付記16)
マッチングが取れた場合、前記重み付けLCS長さの重みは、対応する画像ブロックについて選択された候補の数、及び前記候補行列におけるマッチングすべき候補の選択された候補の数のうちのランクに基づくものである、付記15に記載の装置。
(付記17)
マッチングが取れていない場合、前記重みは、負の無限大である、付記15に記載の装置。
(付記18)
前記補正部は、算出された前記範囲内の各ノードに含まれる内容と前記候補行列との1つ又は複数の重み付けLCS長さに基づいて、前記認識結果を補正する、付記16又は17に記載の装置。
(付記19)
前記木は、Burkhard-Keller木である、付記12又は13に記載の装置。
(付記20)
プログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、前記プログラムがプロセッサにより実行される際に、
画像ブロックの認識結果の候補行列を取得するステップであって、前記候補行列の各列は、対応する画像ブロックの認識結果の複数の候補を表す、ステップと、
木における探索すべきノードの範囲を決定するステップであって、前記木は、前記木におけるノードの各ペアに含まれる内容間の差のメトリックに基づいて構築される、ステップと、
決定された範囲内の全てのノードに含まれる内容と前記候補行列とのマッチングを行うことで、前記認識結果を補正するステップと、を実行させる、記憶媒体。
【0056】
なお、用語「含む」、「有する」又は他の任意の変形は、排他的に含むことに限定されず、一連の要素を含むプロセス、方法、物又は装置は、これらの要素を含むことだけではなく、明示的に列挙されていない他の要素、又はこのプロセス、方法、物若しくは装置の固有の要素を含む。また、さらなる制限がない限り、用語「1つの…を含む」より限定された要素は、該要素を含むプロセス、方法、物又は装置に他の同一の要素が存在することを排除しない。
【0057】
以上は図面を参照しながら本発明の好ましい実施例を説明しているが、上記実施例及び例は例示的なものであり、制限的なものではない。当業者は、特許請求の範囲の主旨及び範囲内で本発明に対して各種の修正、改良、均等的なものに変更してもよい。これらの修正、改良又は均等的なものに変更することは本発明の保護範囲に含まれるものである。