(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5986051
(24)【登録日】2016年8月12日
(45)【発行日】2016年9月6日
(54)【発明の名称】アラビア語テキストを自動的に認識するための方法
(51)【国際特許分類】
G06K 9/72 20060101AFI20160823BHJP
G06K 9/62 20060101ALI20160823BHJP
【FI】
G06K9/72 Z
G06K9/62 620B
【請求項の数】18
【全頁数】20
(21)【出願番号】特願2013-187257(P2013-187257)
(22)【出願日】2013年9月10日
(65)【公開番号】特開2014-219954(P2014-219954A)
(43)【公開日】2014年11月20日
【審査請求日】2016年3月29日
(31)【優先権主張番号】13/892,289
(32)【優先日】2013年5月12日
(33)【優先権主張国】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】511072895
【氏名又は名称】キング・アブドゥルアジズ・シティ・フォー・サイエンス・アンド・テクノロジー(ケイ・エイ・シィ・エス・ティ)
【氏名又は名称原語表記】KING ABDULAZIZ CITY FOR SCIENCE AND TECHNOLOGY (KACST)
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】モハメド・スレイマン・ホルシード
(72)【発明者】
【氏名】フセイン・ハリド・アル−オマリ
(72)【発明者】
【氏名】マジェド・イブラヒム・ビン・オスフォー
(72)【発明者】
【氏名】アブドゥルアジズ・オバイド・アロバイド
(72)【発明者】
【氏名】フッサム・アブドゥルラフマン・アルファレフ
(72)【発明者】
【氏名】アルワ・イブラヘム・ビン・アスフォー
【審査官】
松浦 功
(56)【参考文献】
【文献】
特開2012−003756(JP,A)
【文献】
特表2009−545807(JP,A)
【文献】
国際公開第2008/138356(WO,A2)
【文献】
米国特許出願公開第2010/0272361(US,A1)
【文献】
米国特許出願公開第2012/0087584(US,A1)
【文献】
米国特許出願公開第2010/0246963(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06K 9/62 − 9/72
(57)【特許請求の範囲】
【請求項1】
アラビア語テキストを自動的に認識するための方法であって、
アラビア語テキストファイルと、アラビア語テキストファイルの各々に対応するグラウンドトルースとを含むアラビア語コーパスを構築するステップを含み、アラビア語テキストファイルは、さまざまな文体で書かれたアラビア語テキストを含み、前記方法はさらに、
コンピュータによって文体インデックスをアラビア語テキストファイルに関連付けて記憶するステップを含み、文体インデックスの各々は、アラビア語テキストファイルのうちの1つが文体のうちの1つで書かれていることを示し、前記方法はさらに、
アラビア文字の線を含むテキスト画像を得るステップと、
アラビア文字の線をデジタル化して、各々がピクセル値に関連付けられているピクセルの2次元配列を形成するステップとを含み、ピクセル値は2進数で表わされ、前記方法はさらに、
アラビア文字の線を複数の線画像に分割するステップと、
複数の線画像のうちの1つにおける複数のセルを規定するステップとを含み、複数のセルの各々は、隣接するピクセルの群を含み、前記方法はさらに、
複数の線画像のうちの1つにある複数のセルの各々におけるピクセルのピクセル値を並べて、2進数のセル番号を形成するステップと、
複数の線画像のうちの1つにある複数のセルから得られる2進数のセル番号に従ってテキスト特徴ベクトルを形成するステップと、
アラビア語テキストファイルに関連付けられた文体インデックスに従ってアラビア語コーパスにおけるアラビア語テキストファイルおよびグラウンドトルースを用いて隠れマルコフモデルをトレーニングするステップと、
テキスト特徴ベクトルを隠れマルコフモデルに供給してアラビア文字の線を認識するステップとを含む、方法。
【請求項2】
2進数のセル番号を10進数のセル番号に変換するステップと、
複数の線画像のうちの1つにある複数のセルから得られる10進数のセル番号を並べて、10進数のセル番号のストリングを形成するステップと、
複数の線画像のうちの1つにある複数のセルから得られる10進数のセル番号のストリングに従ってテキスト特徴ベクトルを形成するステップとをさらに含む、請求項1に記載の方法。
【請求項3】
文体は、アラビア語テキストにおいて句読点の有無を規定する、請求項1に記載の方法。
【請求項4】
文体は、アラビア語テキストにおいて母音化の有無を規定する、請求項1に記載の方法。
【請求項5】
文体は、アラビア語テキストファイルにおいて非アラビア語テキストの存在の有無を規定する、請求項1に記載の方法。
【請求項6】
アラビア語コーパスを構築するステップは、
アラビア語テキストファイルのうちの1つに関連付けられた文体に関する入力をユーザから受理するステップを含む、請求項1に記載の方法。
【請求項7】
アラビア語コーパスを構築するステップは、
コンピュータによってアラビア語テキストファイルのうちの1つに関連付けられる文体を自動的に判断するステップを含み、文体に対応して関連付けられた文体インデックスが、アラビア語テキストファイルのうちの1つに関連付けて自動的に記憶される、請求項1に記載の方法。
【請求項8】
ピクセルの2次元配列は、第1の方向において複数の行と、第2の方向において複数の列とを含み、アラビア文字の線は、実質的に第1の方向に沿って位置合わせされ、複数の線画像は、第1の方向に沿って順次位置合わせされる、請求項1に記載の方法。
【請求項9】
ピクセルの2次元配列は、N行のピクセルを含み、複数の線画像のうち少なくとも1つは、第1の方向においてM個の行によって規定される高さと、第2の方向においてN個の列によって規定される幅とを有し、MおよびNは整数である、請求項8に記載の方法。
【請求項10】
Nは、2〜約100の間の範囲にある、請求項9に記載の方法。
【請求項11】
ピクセルの2次元配列におけるピクセル値はシングルビットの2進数で表わされる、請求項1に記載の方法。
【請求項12】
ピクセルの2次元配列におけるピクセル値はマルチビットの2進数で表わされる、請求項1に記載の方法。
【請求項13】
アラビア語テキストを自動的に認識する方法であって、
アラビア語テキストファイルと、アラビア語テキストファイルの各々に対応するグラウンドトルースとを含むアラビア語コーパスを構築するステップを含み、アラビア語テキストファイルは、さまざまな文体で書かれたアラビア語テキストを含み、前記方法はさらに、
コンピュータによってアラビア語テキストファイルに関連付けて文体インデックスを記憶するステップとを含み、文体インデックスの各々は、アラビア語テキストファイルのうちの1つが文体のうちの1つで書かれていることを示し、前記方法はさらに、
アラビア文字の線を含むテキスト画像を得るステップと、
アラビア文字の線をデジタル化して、各々がピクセル値に関連付けられるピクセルの2次元配列を形成するステップと、
アラビア文字の線を複数の線画像に分割するステップと、
複数の線画像のうち少なくとも1つを縮小して、縮小された線画像を生成するステップと、
縮小された線画像の各列におけるピクセルのピクセル値を並べて、並べられた数字のストリングを形成するステップとを含み、並べられた数字のストリングはテキスト特徴ベクトルを形成し、前記方法はさらに、
アラビア語テキストファイルに関連付けられた文体インデックスに従ってアラビア語コーパスにおけるアラビア語テキストファイルおよびグラウンドトルースを用いて隠れマルコフモデルをトレーニングするステップと、
テキスト特徴ベクトルを隠れマルコフモデルに供給してアラビア文字の線を認識するステップとを含む、方法。
【請求項14】
ピクセルの2次元配列は、第1の方向において複数の行と、第2の方向において複数の列とを含み、アラビア文字の線は、実質的に第1の方向に沿って位置合わせされ、複数の線画像は、第1の方向に沿って順次位置合わせされる、請求項13に記載の方法。
【請求項15】
ピクセルの2次元配列は、N行のピクセルを含み、複数の線画像のうち少なくとも1つは、第1の方向においてM個の行によって規定される高さと、第2の方向においてN個の列によって規定される幅とを有し、MおよびNは整数である、請求項14に記載の方法。
【請求項16】
文体は、アラビア語テキストにおける句読点の有無、アラビア語テキストにおける母音化の有無、およびアラビア語テキストファイルにおける非アラビア語テキストの存在の有無を規定する、請求項13に記載の方法。
【請求項17】
アラビア語コーパスを構築するステップは、アラビア語テキストファイルのうちの1つに関連付けられた文体に関する入力をユーザから受理するステップを含む、請求項13に記載の方法。
【請求項18】
アラビア語コーパスを構築するステップは、コンピュータによってアラビア語テキストファイルのうちの1つに関連付けられる文体を自動的に判断するステップを含み、文体に対応して関連付けられた文体インデックスが、自動的にアラビア語テキストファイルのうちの1つに関連付けて記憶される、請求項13に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2012年11月26日に同じ発明者によって提出され、「有効なアラビア語テキスト特徴抽出に基づいたアラビア語テキストの認識のためのシステムおよび方法(System and methods for Arabic text recognition based on effective Arabic text feature extraction)」と題された同一出願人による係属中の米国特許出願第13/685,088号の一部継続出願であり、これに対する優先権を主張するものである。米国特許出願第13/685,088号は、2011年12月14日に同じ発明者によって出願され、「有効なアラビア語テキスト特徴抽出に基づいたアラビア語テキストの認識のためのシステムおよび方法(System and methods for Arabic text recognition based on effective Arabic text feature extraction)」と題された同一出願人による係属中の米国特許出願第13/325,789号の継続出願であり、これに対する優先権を主張するものである。米国特許出願第13/325,789号は、2009年4月27日に同じ発明者によって出願され、「有効なアラビア語テキスト特徴抽出に基づいたアラビア語テキストの認識のためのシステムおよび方法(System and methods for Arabic text recognition based on effective Arabic text feature extraction)」と題された米国特許出願第12/430,773号の継続出願であり、その開示が引用によりこの明細書中に援用されている。
【0002】
本願は、概して、アラビア語テキストの自動認識に関する。
【背景技術】
【0003】
発明の背景
テキスト認識、すなわちテキストの自動読取りはパターン認識から派生したものである。テキスト認識の目的は、印刷されたテキストを人間並みの精度でより高速に読取ることである。大抵のテキスト認識法では、テキストを個々の文字に分離できるよう想定されている。このような技術は、ラテン語のタイプされたテキストまたは活字テキストでは成功しているものの、アラビア語などの筆記体の手書き文字に適用するには確実ではない。アラビア語の手書き文字認識についての従来の研究では、アラビア語の単語を個々の文字に分割しようとする試みが困難であることが確認された。
【発明の概要】
【発明が解決しようとする課題】
【0004】
アラビア語は、テキスト認識アルゴリズムに対していくつかの課題をもたらす。アラビア文字は本質的に筆記体であり、分離した文字をブロック字体で書くことは受け入れられない。さらに、アラビア文字の形は文脈に影響を受け易く、ある1つの単語内の文字の位置に左右される可能性がある。
【0005】
【数1】
【0006】
さらに、すべてのアラビア文字が一単語内で連結されるとは限らない。単語間の境界を自動的に判断することは困難であるかもしれない。なぜなら、一単語内のいくつかの文字が間隔によって分離されている可能性もあるからである。加えて、アラビア語テキストの中には、母音化して書かれるものもあり、母音化せずに書かれるものもある。アラビア語テキストの中には、ハムザ(Hamza)や、単語の末尾におけるYa文字の下にある点を無視しているものもある。アラビア語テキストの中には、非アラビア語から派生した単語を含むものもある。
【0007】
統計的モデルなどのさまざまな分類体系が、アラビア語テキストのテキスト認識に適用されてきた。しかしながら、テキスト特徴を適切に抽出するという点が、依然として、アラビア語テキストを正確に認識するための大きな障害として残っている。
【課題を解決するための手段】
【0008】
本願に記載されるシステムおよび方法は、アラビア語テキスト中の特徴を抽出するための包括的、定量的かつ正確な技術を提供する。開示されるアラビア文字認識はまた、より効率的であり、いくつかの従来の技術よりも演算時間が少なくて済む。開示されるシステムおよび方法はまた、いくつかの従来の技術よりもより単純かつ容易に使用できる。
【0009】
本願はさらに、アラビア語コーパスを構築するためのインテリジェントな適応的方法を開示する。開示される方法は、句読点の有無、母音化の有無、非アラビア語の有無など、さまざまなアラビア語の文体を考慮に入れることができる。アラビア語コーパスの構築のために用いられるアラビア語のテキストファイルについてのさまざまな文体は、ユーザによって選択可能であるか、またはコンピュータによって自動的に設定可能である。アラビア語のテキストファイルは、アラビア語テキストをより正確にトレーニング(学習)および認識できるように、これらの文体に基づいて適切にインデックス付けされる。文字認識のための知識ベースとして用いられるアラビア語テキストのさまざまな文体についての構造化されたカタログがあるので、アラビア文字の認識が改善される。
【0010】
一般的な局面においては、本発明は、アラビア語テキストを自動的に認識する方法に関する。当該方法は、アラビア語のテキストファイルと、アラビア語テキストファイルの各々に対応するグラウンドトルース(ground truths)とを含むアラビア語コーパスを構築するステップを含み、アラビア語テキストファイルは、さまざまな文体で書かれたアラビア語テキストを含む。当該方法は、コンピュータにより、文体インデックスをアラビア語テキストファイルに関連付けて記憶するステップを含み、文体インデックスの各々は、アラビア語テキストファイルのうちの1つが文体のうちの1つで書かれていることを示す。当該方法はさらに、アラビア文字の線を含むテキスト画像を得るステップと、アラビア文字の線をデジタル化して、各々がピクセル値に関連付けられるピクセル(pixel;画素)の2次元配列を形成するステップを含み、ピクセル値は2進数で表わされる。当該方法はさらに、アラビア文字の線を複数の線画像に分割するステップと、複数の線画像のうちの1つにおいて複数のセルを規定するステップとを含み、複数のセルの各々は隣接するピクセルの群を含む。当該方法はさらに、複数の線画像のうちの1つにおける複数のセルの各々においてピクセルのピクセル値を並べて2進数のセル番号を形成するステップと、複数の線画像のうちの1つにおける複数のセルから得られる2進数のセル番号に従ってテキスト特徴ベクトルを形成するステップと、アラビア語テキストファイルに関連付けられた文体インデックスに従ってアラビア語コーパスにおけるアラビア語テキストファイルおよびグラウンドトルースを用いて隠れマルコフモデル(Hidden Markov Model)をトレーニングするステップと、テキスト特徴ベクトルを隠れマルコフモデルに供給してアラビア文字の線を認識するステップとを含む。
【0011】
システムの実現例は、以下のうち1つ以上を含み得る。上記方法はさらに、2進数のセル番号を10進数のセル番号に変換するステップと、複数の線画像のうちの1つにおける複数のセルから得られる10進数のセル番号を並べて、10進数のセル番号のストリングを形成するステップと、複数の線画像のうちの1つにおける複数のセルから得られる10進数のセル番号のストリングに従ってテキスト特徴ベクトルを形成するステップとを含む。文体は、アラビア語テキストにおける句読点の有無を規定することができる。文体は、アラビア語テキストにおける母音化の有無を規定することができる。文体は、アラビア語テキストファイルにおける非アラビア語テキストの存在の有無を規定することができる。アラビア語コーパスを構築するステップは、アラビア語テキストファイルのうちの1つに関連付けられた文体に関する入力をユーザから受理するステップを含み得る。アラビア語コーパスを構築するステップは、コンピュータによってアラビア語テキストファイルのうちの1つに関連付けられた文体を自動的に判断するステップを含み得る。文体に対応して関連付けられた文体インデックスは、アラビア語テキストファイルのうちの1つに関連付けて自動的に記憶される。ピクセルの2次元配列は、第1の方向に複数の行と第2の方向に複数の列とを含み得る。アラビア文字の線は、実質的に第1の方向に沿って位置合わせすることができ、複数の線画像は、第1の方向に沿って順次位置合わせされる。ピクセルの2次元配列は、N行のピクセルを含み得る。複数の線画像のうち少なくとも1つは、第1の方向におけるM個の行によって規定される高さと、第2の方向におけるN個の列によって規定される幅とを有し、MおよびNは整数である。Nは、2〜約100の間の範囲にあり得る。ピクセルの2次元配列におけるピクセル値は、シングルビットの2進数で表わすことができる。ピクセルの2次元配列におけるピクセル値は、マルチビットの2進数で表わすことができる。
【0012】
別の一般的な局面においては、本発明は、アラビア語テキストを自動的に認識する方法に関する。当該方法は、アラビア語テキストファイルと、アラビア語テキストファイルの各々に対応するグラウンドトルースとを含むアラビア語コーパスを構築するステップを含む。アラビア語テキストファイルは、さまざまな文体で書かれたアラビア語テキストを含む。当該方法は、コンピュータによって文体インデックスをアラビア語テキストファイルに関連付けて記憶するステップを含み、文体インデックスの各々は、アラビア語テキストファイルのうちの1つが文体のうちの1つで書かれていることを示す。当該方法はさらに、アラビア文字の線を含むテキスト画像を得るステップと、アラビア文字の線をデジタル化して、各々がピクセル値に関連付けられるピクセルの2次元配列を形成するステップと、アラビア文字の線を複数の線画像に分割するステップと、複数の線画像のうち少なくとも1つを縮小して、縮小された線画像を生成するステップと、縮小された線画像の各列におけるピクセルのピクセル値を並べて、並べられた数字のストリングを形成するステップとを含み、並べられた数字のストリングはテキスト特徴ベクトルを形成する。当該方法はさらに、アラビア語テキストファイルに関連付けられた文体インデックスに従ってアラビア語コーパスにおけるアラビア語テキストファイルおよびグラウンドトルースを用いて隠れマルコフモデルをトレーニングするステップと、隠れマルコフモデルにテキスト特徴ベクトルを供給してアラビア文字の線を認識するステップとを含む。
【0013】
本発明は、特に複数の実施例に関連付けて図示および記載されるが、当業者であれば、形状および詳細を本発明の精神および範囲から逸脱することなくさまざまに変更できることを理解するだろう。
【0014】
添付の図面は、明細書において援用され、その一部を形成しており、本発明の実施例を図示し、以下の記載と合わせて本発明の原理を説明する役割を果たす。
【図面の簡単な説明】
【0015】
【
図1】本開示におけるアラビア語テキスト認識のステップについての例示的なフロー図である。
【
図2】アラビア語テキストを含むテキスト画像を示す図である。
【
図3A】各々が複数のピクセルを含む複数の線画像へのテキスト画像の分割を示す図である。
【
図3B】
図3Aに示される線画像の一部におけるピクセルおよびピクセル値を示す図である。
【
図3C】
図3Aに示される線画像の一部におけるピクセルおよびピクセル値を示す図である。
【
図4】本願に従ったテキスト特徴抽出方法を示す図である。
【
図5】
図4に示されるテキスト特徴抽出のステップについての例示的なフロー図である。
【
図6】本願に従った別のテキスト特徴抽出方法を示す図である。
【
図7A】本開示に従った別のテキスト特徴抽出方法を示す図である。
【
図7B】本開示に従った別のテキスト特徴抽出方法を示す図である。
【
図7C】本開示に従った別のテキスト特徴抽出方法を示す図である。
【
図7D】本開示に従った別のテキスト特徴抽出方法を示す図である。
【
図8】
図7Aから
図7Dに示されるテキスト特徴抽出のステップを示すフロー図である。
【
図9】アラビア語コーパスを構築するためのインテリジェントな適応的方法についてのフロー図である。
【
図10】アラビア語コーパスを構築するための処理済みアラビア語テキストファイルに関し、選択された文体オプションが埋込まれた例示的なインデックス構造を示す図である。
【発明を実施するための形態】
【0016】
図1は、本発明に従ったアラビア語テキスト認識の一般的な流れを示す。アラビア語コーパスは、アラビア語テキストの文体を判断および追跡するインテリジェントな適応的方法を用いて構築される(ステップ100、
図1)。
図9および
図10に関連付けて以下により詳細に説明するように、アラビア語コーパスは、テキスト、テキスト画像、および本発明に従ってテキストまたはテキスト画像に関連付けられたグラウンドトルース(すなわち公知の意味)を含む。コーパス構築は、アラビア語テキストにおける多くの文体および書式を考慮に入れており、開示されるアラビア語コーパスにおけるテキストファイルは、アラビア語の文体または書式の種類によって適切にラベル付けされ、これにより、開示されるアラビア語コーパスが用いられる場合にアラビア文字認識の精度が高められる。文体インデックスは、アラビア語テキストファイルに関連付けて記憶される(ステップ105)。文体インデックスは各々、アラビア語テキストファイルのうちの1つが文体のうちの1つで書かれていることを示す。
【0017】
図1〜
図3Cを参照すると、テキスト画像200は、アラビア語テキスト文書から得られる(ステップ110、
図1)。テキスト画像200におけるアラビア語テキストは、複数のテキスト行211〜214に配置されてもよく、複数のテキスト行211〜214の各々は一連の筆記体のアラビア文字を含む。テキスト行211〜214は、複数の線画像311〜313に分割される(ステップ120、
図1)。線画像311、312または313は次いでピクセル(pixel;画素)321〜323に分割され、ピクセル321〜323の各々にはピクセル値が割当てられる(ステップ130、
図1)。線画像311、312または313の幅は、2個のピクセル〜100個のピクセルの間の範囲にあってもよく、または、3個のピクセル〜10個のピクセルの間の範囲にあってもよい。線画像311、312または313は1つの完全な文字、部分的な文字または連結文字を含み得る。
【0018】
ピクセル値は、特定のピクセルの位置においてテキスト画像200の明度を表わす。一実現例においては、高い輝度値は、白色背景にあり得るピクセルで明画像色(または低密度)を表わし得る。低い明度は、アラビア文字の一画分の範囲内にあり得るピクセルで暗画像色(または高密度)を表わし得る。ピクセル値は、2進数、10進数および16進数などのさまざまな数値体系で表わすことができる。
【0019】
図3A〜
図3Cを参照すると、線画像311は画像部分320を含み、画像部分320は複数のピクセル321〜323を含み、その各々には2進数のピクセル値「0」または「1」が割当てられている。ピクセル値「1」は白色背景を表わす。ピクセル値「0」は、アラビア文字の一画分の範囲内における暗画像色(すなわち低輝度)を表わす。開示されるシステムおよび方法が、画像濃度をマルチトーンレベル(たとえばグレイスケール)で表わすことのできるマルチビットの2進数ピクセル値とも互換性があることに留意されたい。
【0020】
本開示に従うと、テキスト特徴ベクトルはテキスト行211または線画像311〜313から抽出することができる(ステップ140、
図1)。テキスト特徴抽出のさまざまな実現例についての詳細を
図4〜
図8に関連付けて以下に説明する。テキスト特徴ベクトルの正確な形は、以下に記載するように、抽出方法に応じて異なり得る。
【0021】
ステップ140において得られる特徴ベクトルは、次に、隠れマルコフモデル(HMM:Hidden Markov Model)に供給される(ステップ150、
図1)。本開示においては、HMMは、隠れマルコフモデルを構築および操作するための携帯型ツールキットである隠れマルコフモデルツールキット(HTK:Hidden Markov Model tool kit)によって実現可能である。HTKは、辞書が含まれておらず、トレーニングサンプルからの文字モデルおよび文法に依存する。HMMは、特徴ベクトルにおいて見出されるパターンでの変化を許容し得る確率解釈を提供する。HTKの機能の多くは、Cソースコードで利用可能なライブラリモジュールに組込むことができる。これらのモジュールは、従来のコマンドラインスタイルインターフェイスで実行するよう設計されており、このため、HTKツールの実行を制御するために簡単にスクリプトを書き込むことができる。
【0022】
HMMは、アラビア語テキストの文体に従ってアラビア語コーパスにおけるアラビア語テキストおよび関連するグラウンドトルースから得られる特徴ベクトルを用いてトレーニング可能である(ステップ160、
図1)。
図9および
図10に関連付けて以下に説明するように、文体はアラビア語テキストファイルに関連付けて記憶された文体インデックスによって示される。HTKには、サンプルのトレーニングのために文字モデルおよびグラウンドトルースが備わっている。文字モデル化の構成要素は、特徴ベクトルおよび対応するグラウンドトルースを取得し、文字モデルを評価する。トレーニングサンプルによって得られる観察結果がモデルパラメータを調整するのに用いられるのに対して、テストサンプルによって得られる観察結果はシステム性能を調べるのに用いられる。モデルにおける各々の状態は文字をアルファベットのセットで表わしており、各々の特徴ベクトルは1つの観察結果に相当する。HTKトレーニングツールは、既知のデータ転記を予測するよう、準備したトレーニングデータを用いて、文字モデルパラメータを調整することができる。
【0023】
HMMパラメータは、トレーニング画像セグメントについてのグラウンドトルースから評価された。テキストおよびグラウンドトルースは、
図9および
図10に関連付けて以下に説明される適応的方法を用いて、アラビア語コーパスビルダによって生成される。このセグメンテーションが輪郭線に適用されることにより、セグメンテーション点を見出し、これらのセグメントから特徴を抽出し、特徴ベクトルを観察シーケンスに移行させ得る。セグメンテーションベースの技術では、単語画像とストリングとを一致させるためにダイナミックプログラミングが用いられた。トレーニング段階では、テキスト画像のうちテキスト相当分でありグラウンドトルースと関係するスキャン済みのテキスト行を入力として取得する。次いで、各々の行は、狭い垂直な窓に分割され、そこから特徴ベクトルが抽出される。
【0024】
次いで、辞書および言語モデルを用いて特徴ベクトルにおけるアラビア語テキストを認識するために、トレーニングされたHMMが用いられる(ステップ170、
図1)。認識段階の後、可能性が最も高い文字シーケンスを見出すために、トレーニング段階において評価されたさまざまな知識ソースと共に用いられる特徴ベクトルを抽出するステップが行なわれる。認識ツールは、ネットワークが1つのモデルから別のモデルへの遷移確率を記述することを必要とする。辞書および言語モデルをツールに入力して、レコグナイザが正確な状態シーケンスを出力するのを支援することができる。
【0025】
いくつかの実施例においては、
図3A〜
図5を参照すると、アラビア語コーパスは、アラビア語テキストの文体を判断および追跡するインテリジェントな適応的方法を用いて構築される(ステップ500、
図1)。
図9および
図10に関連付けて以下により詳細に説明されるように、アラビア語コーパスは、テキスト、テキスト画像、および本発明に従ってテキストまたはテキスト画像に関連付られるグラウンドトルース(すなわち、公知の意味)を含む。コーパス構築は、アラビア語テキストにおける多くの文体および書式を考慮に入れており、開示されるアラビア語コーパスにおけるテキストファイルは、アラビア語の文体または書式の種類によって適切にラベル付けされ、これにより、開示されるアラビア語コーパスが用いられる場合にアラビア文字認識の精度を高める。
【0026】
文体インデックスはアラビア語テキストファイルに関連付けて記憶される(ステップ505)。文体インデックスは各々、アラビア語テキストファイルのうちの1つが文体のうちの1つで書かれていることを示す。
【0027】
コーパスビルダによって生成される線画像311〜313は、ピクセル値によって各々が特徴付けられるピクセル321〜323の配列にデジタル化される(ステップ510、
図5)。線画像311は、
図4に図示のとおり、複数のセル410〜460に分割される(ステップ520、
図5)。各々のセル410〜460は、3ピクセル×3ピクセルの配列などの隣接するピクセルの群を含む。たとえば、セル420はピクセル422、ピクセル423および他のピクセルを含む。
【0028】
各々のセルにおけるピクセル値は、さらに、2進数のセル番号で表わされる(ステップ530、
図5)。各々のセルにおけるピクセル値は、まず、順番に並べられる。たとえば、セル420における9つのピクセル322〜323は3つの連続した行の順序、すなわち、1、1、1、1、0、0、1、0、0で順番に並べられる。次いで、この一連の2進数のピクセル値が9ビットの2進数のセル番号にマップされる。
【0029】
ピクセル322におけるピクセル値が最上位ビットにマップされ、ピクセル323におけるピクセル値が最下位ビットにマップされる。結果として、セル420におけるピクセル値は、9ビットの2進数のセル番号111100100によって表わされる。同様に、セル410〜460におけるピクセル値は、2進数のセル番号480に変換され、その各々は0から511の範囲にある。
【0030】
次いで、線画像311のセルにおける2進数のセル番号が、10進数のセル番号490に変換される(ステップ540、
図5)。次いで、10進数のセル番号490が順番に並べられて、線画像311のための特徴ベクトルを形成する(ステップ550、
図5)。さまざまな線画像のためにステップ520〜550が繰返される。
【0031】
ステップ160(
図1)と同様に、HMMは、アラビア語テキストの文体に従ってアラビア語コーパスにおけるアラビア語テキストおよび関連するグラウンドトルースから得られる特徴ベクトルを用いて、トレーニング可能である(ステップ560)。
図9および
図10に関連付けて以下に説明するように、文体は、アラビア語テキストファイルに関連付けて記憶された文体インデックスによって示される。次いで、特徴ベクトルがさまざまな線画像311〜313から隠れマルコフモデルに供給されて、テキスト行におけるアラビア文字が認識される(ステップ570、
図5)。
【0032】
図4および
図5に関連付けて上述した抽出方法は、
図1に例示されるプロセスについてのテキスト特徴抽出の実現例を表わす。上述のテキスト特徴抽出方法が、データストリングの列におけるマルチビット・ピクセル値および他の数値表現と互換性のあることが理解されるはずである。たとえば、ピクセル値は3ビットまたは5ビットの2進数で表わすことができ、これは、テキスト画像におけるグレイスケール情報(またはマルチトーン)を取得することを可能にする。マルチビット・ピクセル値により、一画分毎のエッジに沿ったテキスト特徴を記述する精度が向上し得る。
【0033】
さらに、2進数の代わりに、ピクセル値は、最小値から最大値の間の如何なる数値範囲でも表わすことができる。いくつかの実現例においては、ピクセル値は、[0,1]または[−1,1]などの予め定められた範囲に直線的にスケーリング(または正規化)することができる。次いで、ピクセル値を量子化することができる。特徴ベクトルはステップ530〜550と同様に得ることができる。
【0034】
いくつかの実施例においては、
図6を参照すると、線画像610は解像度が縮尺(すなわち縮小)されて、これにより、縮小された線画像620が形成される。たとえば、線画像610は60ピクセルの高さを有し得る。縮小された線画像620は、20ピクセルの高さを有してもよく、寸法が1/3に縮小されている。縮小された線画像620はデジタル化されて、各々がピクセル値によって表わされるピクセルからなる配列630を形成する。配列630における各列のピクセル値は、2進数を形成するよう順番に並べられる。さまざまな列からの2進数がデータストリング640を形成し、これが特徴ベクトルを形成する。テキスト行の線画像から得られる特徴ベクトルが隠れマルコフモデルに供給されて、テキスト行におけるアラビア文字が認識され得る(ステップ570、
図5)。
【0035】
図7A、
図7Bおよび
図8を参照すると、線画像700は、ステップ510(
図5)と同様にピクセルの配列にデジタル化される(ステップ810、
図8)。ピクセルは複数の列に配置される。ピクセル値は、「1」または「0」の値を有するシングルビットの2進数で表わされる。各列におけるピクセル値は順番に並べられて、シングルビットの2進数のストリングを形成する(ステップ830、
図8)。
【0036】
次いで、
図7Cおよび
図7Dに示されるように、連続したピクセルが「0」および「1」からなる同じ2進ピクセル値を有する頻度が計算される(ステップ840、
図8)。これらの頻度はカットオフ遷移数になるまでカウントされる。これらの頻度を表にして、頻度カウント750および760を形成する(ステップ850、
図8)。同じ遷移数ではあるが相補的なピクセル値を有する2列のピクセルを識別するために、たとえば、
【0038】
頻度カウントは、列における最上部のピクセルから「1」の数をカウントし始めることによって行なわれる。左側にある最初の列は、ピクセル値「1」が「0」個であり、次いで、「0」のピクセル値が「3」個となる。2つの列における相補的なピクセル値は、結果として、以下の頻度カウントとなるだろう。
【0040】
各列の冒頭にある最初のピクセルカウントも、本発明の精神から逸脱することなく、ピクセル値「0」に関して行うことができることが理解されるはずである。
【0041】
表にされた頻度カウント750および760における各々の行(
図7Cおよび
図7D)は、ピクセル値が(「1」のピクセル値を有する)白色背景から(「0」のピクセル値を有する)濃色テキスト領域へ、またはこれとは逆の態様で、遷移することを表わしている。データを圧縮するために、頻度カウントは最大遷移数でカットオフされる。
【0042】
表にされた頻度カウント750および760の各列における頻度カウントは特徴ベクトルを形成する(ステップ860、
図8)。したがって、列は、ここに記載された実施例においてはベクトルとも称される。特徴ベクトルを線画像におけるさまざまな列から隠れマルコフモデルへと供給する(ステップ870、
図8)。
【0043】
最大遷移数は、アラビア語テキストの大規模なサンプルについての統計解析によって決定される。表1に示されるように、列の約99.31%は6以下の遷移数を有する。言いかえれば、テキスト画像の大部分は、カットオフ遷移数として6を選択することによって適切に特徴付けることができる。
【0045】
HMMベースのシステムを構築する場合、このシステムをトレーニングおよびテストするのに用いられるべき特徴ベクトルの種類が最初に規定される。特徴ベクトルは、連続的な種類および離散的な種類として分類することができる。連続的な特徴ベクトルを用いるシステムにおいては、モデルを供給するために係数の配列またはしばしばマトリックスが用いられる。離散的なシステムにおいては、単一の係数がモデルに供給される。ベクトル量子化とは、連続的なベクトルを離散的なベクトルに変換することを意味し、これは、HTKに付属するHQuantツールおよびHCopyツールを用いて行うことができる。HQuantは、離散的なベクトルを生成するために、後でHCopyツールと共に用いられるべきトレーニングデータからコードブックを構築するのに用いられる。コードブックの構築は、そのサイズに応じてシステムの性能に影響を及ぼし、それを構築するのに用いられるデータの量によって影響を受ける。HQuantは、コードブックを構築するために線形ベクトル量子化アルゴリズムを用いる。これは、コンピュータでは計算するのに高価なアルゴリズムである。本開示においては、固有ベクトル量子化(UVQ:Unique Vector Quantization)と称される新しい方法を導入して、計算時間を減らし、システムの性能を向上させる。この方法は、特徴ベクトルの反復を消去することによって線形ベクトル量子化アルゴリズムを用いてコードブックを構築するのに用いられ、かつ、各々の特徴ベクトルの単一のコピーを保持するのに用いられる特徴ベクトルの数を減らすことに焦点を合わせている。表2に示されるように、コーパス内の特徴ベクトルの数が大幅に減じられる。
【0047】
我々は、2000の異なる線画像の特徴ベクトルをすべて用いてコードブックを構築しようと試みた時に、このコードブックについて構築することのできる最大サイズが728であることを見出した。このコードブックを構築するのにかかった時間は、固有特徴ベクトルのみから1024サイズのコードブックを構築するのにかかる1時間30分ではなく、約9時間であった。モノ−モデルを用いたこれらの実験から得られる認識率を表3に示す。固有特徴ベクトルが線形ベクトル量子化アルゴリズムと共に用いられると、コードブックのサイズが大きくなる。計算時間は6分の1に減じられ、認識率が高まった。
【0049】
適応性のあるアラビア語コーパスの構築
光学式文字認識(OCR:Optical Character Recognition)システムは、アラビア文字のトレーニングおよび認識のためのコーパス、すなわちデータセット、を必要とする。コーパスは2つの主要な部分を含む。第1に、ページ、記事、行、単語または文字画像のセット、第2に、当該ページ、記事、行、単語または文字画像のセットからなる同等のテキストを表わすグラウンドトルースである。
【0050】
コーパスの構築は退屈で時間のかかるタスクであり、このタスクには、目標の文書を走査すること、ならびに、トレーニングおよびテストのために必要なサンプルを提供するために管理されたセグメンテーションを実行することが含まれる。さらに、コーパスの構築には、テキスト画像のニーズに相当するテキストをタイプするタスクが含まれる。
【0051】
アラビア語の場合、アラビア語の文体に多様性があるために、コーパス構築には余分な労力および時間が必要となる。アラビア語テキストの中には、母音化して書かれるものもあれば、母音化なしで書かれるものもある。アラビア語テキストの中には、ハムザや、単語の末尾におけるYa文字の下にある点を無視するものもある。アラビア語テキストの中には、非アラビア語からの単語を含むものもある。これらの理由から、さまざまな書式のアラビア語テキストを含むコーパスを見出して整えることは困難である。
【0052】
上述の課題を克服するために、本願は、アラビア語コーパスを構築するためのインテリジェントな適応的方法を開示する。開示された方法は、アラビア語テキストをユーザまたはコンピュータによって選択されるとおりの如何なる書式または文体にも変換することができる。これらのオプションの例として、母音化の追加または削除、ハムザおよび単語の末尾におけるYa文字の下にある点の追加または削除、ならびに、他の言語からの単語の追加または削除が含まれ得る。開示された方法は、ユーザまたはコンピュータがフォントの種類およびフォントのサイズを選択することを可能にする。開示された方法ではまた、サンプルテキストを選択された書式で表わすことができる。
【0053】
いくつかの実施例においては、
図9を参照すると、開示されたアラビア語コーパス構築方法は、以下のステップのうち1つ以上を含み得る。当該方法は、処理すべきファイルがあるかどうかをチェックする(ステップ910)ことから始められる。ファイルは、トレーニングの目的でアラビア語コーパスを構築するのに用いられるページ、記事、行、単語または文字画像のセットを指す。
【0054】
処理すべきファイルがある場合、当該方法は、アラビア語コーパスが句読点なしを可能にすべきかどうかをチェックする(ステップ915)。可能にすべきであれば、句読点なしのコーパスが構築される(ステップ920)。テキスト行は一行ずつ読取られる。「HAMZAH」および「ALYAA ALMAQSOORAH」についてのドットは、これらのアラビア文字のうちどちらか一方または両方を含む如何なる単語からも削除される。
【0055】
(ステップ920において)句読点が削除された後、または句読点なしを可能にすべきでない(ステップ915)場合、当該方法はアラビア語コーパスが母音化を可能にすべきかどうかをチェックする(ステップ925)。そうであれば、テキスト行が一行ずつ読取られる。各単語毎の母音化は、テキストの文脈におけるその単語の文法上の役割に左右される。母音化が完了したファイルから読取られたアラビア語テキストが出力される(ステップ930)。
【0056】
(ステップ930において)母音化が完了した後、または母音化を可能にすべきでない(ステップ925)場合、当該方法では、アラビア語コーパスが多言語を可能にすべきどうかをチェックする(ステップ935)。そうであれば、ユーザまたはコンピュータが、自身がアラビア語コーパスに含むことを希望する非アラビア語を選択することが可能となる。ファイルから読取られたテキスト行に現われる非アラビア語の文字および単語は、アラビア語に翻訳される(ステップ940)。翻訳された単語を含むアラビア語テキストは、多言語のアラビア語コーパスにおいて用いられる。
【0057】
アラビア語コーパスが多言語を可能にすべきでない(ステップ935)場合、ステップ915〜930から得られるテキストファイルの各々における行の数が確認される(ステップ945)。当該方法は、各々のテキストファイルが所定の最大数(たとえば100本の行)を上回る数の行を確実に含まないようにする。最大許容数を上回る数の行を有するテキストファイルは複数のファイルに分割されるが、これら複数のファイルの各々は最大数未満の数の行を有している。
【0058】
ステップ940および945の後、それまでの処理ステップによって得られたテキストファイルが、文体インデックスによってインデックス付けされる(ステップ950)。文体インデックスにより、テキストファイルが、処理ステップにおいて収集または生成された情報で有効かつ正確にラベル付けされる。
【0059】
ここで開示される方法は、さまざまなインデックス構造と適合性がある。たとえば、文体インデックスは8つの数字を含み得る。最初の2つの数字は、ステップ915〜945における処理のためにユーザまたはコンピュータが選択した文体オプションを表わし得る。たとえば、最初の2つの数字において、00は、いずれの文体オプションも選択されていないことを意味し得る。01は、第1のオプションが選択されていることを意味し得る、等々である。3番目および4番目の数字はフォントの種類を表わし、5番目および6番目の数字は選択されたフォントサイズを表わし、7番目および8番目の数字はフォルダにおけるファイル位置を表わす。
【0060】
図10は、選択された文体オプションに関する文体インデックスの最初の2つの数字についての例示的なコーディングを示す。ステップ920、930および940におけるオプション(すなわち句読点なし、母音化および多言語)は、それぞれ、第1のオプション、第2のオプションおよび第3のオプションと称される。上述のとおり、00はオプションがいずれも選択されていないことを意味し得る。01、02および04は、それぞれ、第1のオプション、第2のオプションまたは第3のオプションのうちの1つだけが選択されていることを表わす。03、05、06は各々、3つのオプションのうち2つのオプションが選択されていることを表わす。07は、3つのオプションがすべて選択されている場合を指す。
【0061】
アラビア語テキストファイルは、アラビア語テキストをより正確にトレーニングおよび認識するためにこれらの文体に基づいて適切にインデックス付けされる。たとえば、開示されたアラビア語コーパスは、句読点の有無に関わらず、母音化の有無に関わらず、かつ、多言語の有無に関わらず、アラビア語テキストの自動識別を可能にし、これにより、さまざまな文体のアラビア語テキストをより正確にグラウンドトルースに関連付けることが可能となる。文字認識のための知識ベースとして用いられるアラビア語テキストのさまざまな文体についての構造化されたカタログがあるので、アラビア文字の認識が改善される。
【0062】
先のステップによって処理され、適切にインデックス付けされたテキストは、ユーザが検討および確認できるように画像に変換することができる(ステップ955)。各テキストファイルは、テキストファイルに関連付けられた画像に変換される。次いで、画像がいくつかの線画像に分割され、各々の線画像にはテキストファイル名および線の通し番号が付される。線の通し番号は(最大の線番号を100として)0〜99の範囲内にあり得る。
【0063】
上述の方法においては、さまざまな文体またはテキスト形式がユーザまたはコンピュータによって選択可能であることに留意されたい。コンピュータアルゴリズムは、たとえば、3つのすべての文体オプションを考慮に入れるようにデフォルト設定を行うことができる。コンピュータアルゴリズムはまた、テキストファイルの処理を考慮に入れて文体を動的に決定するために、コーパス構築のために用いられるテキストファイル(ページ、記事、行、単語または文字画像)を自動的に分析することができる。たとえば、コンピュータは、テキストファイルにおける非アラビア語の存在を検出し、非アラビア語を自動的に翻訳して多言語コーパスを構築することができる。コンピュータはまた、コーパス構築に用いられる各テキストファイルにおける句読点または母音化の状態を動的に判断することができる。テキスト画像は、上述のとおり、検出された文体を示すよう自動的にラベル付けされる。文体に対応して関連付けられた文体インデックスは、アラビア語テキストファイルのうちの1つに関連付けてコンピュータによって自動的に記憶される。
【0064】
上述の方法が、使用される特定の例に限定されないことが理解されるはずである。構成は、本発明の精神から逸脱することなく変更可能である。たとえば、カットオフ遷移数は6以外の数となるよう選択することができる。線画像の高さおよび幅、ならびに線画像内のセルのサイズもまた、上述で用いられた例とは異なっていてもよい。テキスト特徴ベクトルの形は抽出方法に応じて異なり得る。たとえば、特徴ベクトルは、一連の2進数、10進数または他の数値体系での数の形であってもよい。
【符号の説明】
【0065】
200 テキスト画像、211、212、213、214 テキスト行、311、312、313 線画像。