(57)【特許請求の範囲】
【請求項１】
文字列の構成要素である準文字の集合である文字列要素内から、対象としている文字列に含まれる準文字を選択する準文字選択手段と、
前記準文字選択手段によって選択された準文字を、前記対象としている文字列に含めることによって文字列を形成する文字列形成手段と、
前記文字列形成手段によって形成された文字列の文字列らしさを示す特徴量を算出し、該文字列に含まれている準文字に該特徴量を付与する特徴量付与手段
を具備し、
前記準文字選択手段によって選択の対象となる準文字として、前記文字列形成手段によって形成された文字列に含まれている準文字を含み、
前記準文字選択手段は、前記特徴量付与手段によって準文字に付与された特徴量に基づいて、前記対象としている文字列に含まれる準文字を選択し、
前記準文字選択手段は、前記文字列形成手段によって形成途中である文字列の特徴量と既に形成された文字列に含まれている準文字に付与されている特徴量とを比較して、対象としている文字列に含まれる準文字を選択する
ことを特徴とする情報処理装置。
【請求項２】
前記文字列要素内から、前記準文字選択手段によって選択し得る準文字がある範囲を設定する範囲設定手段
をさらに具備し、
前記準文字選択手段は、前記範囲設定手段によって設定された範囲にある文字列要素内から、対象としている文字列に含まれる準文字を選択する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記特徴量付与手段は、特徴量として、文字列の長さ、文字列の太さ、文字列の傾き、文字列に含まれている準文字又は複数の準文字群間の距離、文字列の歪み、文字列の長細さのいずれか１つ又はこれらの組み合わせを算出する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記文字列形成手段によって形成された文字列内の文字を認識し、文字認識結果を出力する文字認識手段
をさらに具備することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記文字列形成手段によって形成された文字列の歪みを算出する歪み算出手段と、
前記歪み算出手段によって算出された歪みに基づいて、前記文字列を含む文書の歪みを補正する補正手段
をさらに具備することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項６】
コンピュータを、
文字列の構成要素である準文字の集合である文字列要素内から、対象としている文字列に含まれる準文字を選択する準文字選択手段と、
前記準文字選択手段によって選択された準文字を、前記対象としている文字列に含めることによって文字列を形成する文字列形成手段と、
前記文字列形成手段によって形成された文字列の文字列らしさを示す特徴量を算出し、該文字列に含まれている準文字に該特徴量を付与する特徴量付与手段
として機能させ、
前記準文字選択手段によって選択の対象となる準文字として、前記文字列形成手段によって形成された文字列に含まれている準文字を含み、
前記準文字選択手段は、前記特徴量付与手段によって準文字に付与された特徴量に基づいて、前記対象としている文字列に含まれる準文字を選択し、
前記準文字選択手段は、前記文字列形成手段によって形成途中である文字列の特徴量と既に形成された文字列に含まれている準文字に付与されている特徴量とを比較して、対象としている文字列に含まれる準文字を選択する
ことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
文字列を抽出する技術がある。
これに関連する技術として、例えば、特許文献１には、文書画像の行と段の抽出機能を持つ文書画像認識装置に関し、横行と縦行が混在する文書画像の行・段の抽出を高速かつ高精度に行うことができるようにすることを課題とし、文書画像傾き検出部は、文書画像を参照して文字を構成する成分の集合を抽出し、これをもとに横及び縦の行候補を抽出し、それらの各々の行候補に対して信頼度を推定し、推定した行信頼度に基づいて確度の高い行の集合を抽出し、その結果をもとに確度の高い行の集合の文字成分の配置を用いて傾きを推定し、レイアウト解析部は、文書画像を構成する基礎要素の集合から行方向の確定した行集合を抽出し、行同士の関連付けによる段抽出と段を制約とした行抽出とを相互に実行して行と段を抽出することが開示されている。
【０００３】
また、例えば、特許文献２には、文字認識において誤認識の原因となる分離文字列を誤りなく統合し、分離文字に起因する誤認識を防止することを課題とし、文書画像から文字列矩形を抽出し、文字列矩形内の分離文字列矩形を統合し、ついで、２以上の文字列矩形に分離した分離文字列を次のように統合し、文字列矩形内部の文字数が少ない文字列矩形に注目し、その文字列矩形の上下（横書き）もしくは左右（縦書き）にある文字列を、推定文字列サイズ程度になるように仮統合し、新たに統合してできた文字矩形を文字認識し、文字認識の評価値（例えば距離値）が一定基準を満たすか否かを判定し、分離文字列の仮統合結果を検証することが開示されている。
【０００４】
また、例えば、特許文献３には、独立した文字成分を生成、識別するための文字分割方法に関し、独立した文字成分の抽出、識別を提供することを目的とし、文章のすべての画素連結成分をサーチする第１過程と、第１の画素連結成分とそれを完全にその内部に包含する第２の画素連結成分を１つに結合する第２過程と文字幅、文字ピッチ、行幅、及び行ピッチの参考数値を設定する第３過程と参考数値の規定に合致し同一の文字成分に属する画素連結成分を１つに結合する第４過程と画素連結成分の結合状況に基づき第２〜第４過程を繰り返し実行するか否かを判定する第５過程とを含むフィードバック式連結成分結合演算法により画素連結成分を結合し、複数の独立した文字成分を形成する第６過程と、文字成分を配列する第７過程とからなることが開示されている。
【０００５】
また、例えば、非特許文献１、非特許文献２には、２値画像の連結成分が準文字であり、準文字の統合において、準文字の近接に加え、文字列のサイズと方向を利用し、このとき、文字列の方向を、準文字のセットから推定し、推定に利用する準文字のセットとは、入力画像から得られたすべての準文字から作成した局所的なセットであり、それぞれの局所的なセットに対して、文字列のサイズと方向を与えていることが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−２１７８３３号公報
【特許文献２】特開２００２−０１５２８３号公報
【特許文献３】特開平０８−２６３５８９号公報
【非特許文献】
【０００７】
【非特許文献１】岩田基，  黄瀬浩一，  松本啓之亮，  “Ｓｅｇｍｅｎｔａｔｉｏｎ  ｏｆ  ｐａｇｅ  ｉｍａｇｅｓ  ｕｓｉｎｇ  ｔｈｅ  ａｒｅａ  Ｖｏｒｏｎｏｉ  ｄｉａｇｒａｍ，”情報処理学会論文誌，  Ｖｏｌ．４９，  Ｎｏ．８，  ｐｐ．３２３９−３２４８，  Ａｕｇ  １９９９．
【非特許文献２】Ｄａｎｉｅｌ  Ｍ．  Ｏｌｉｖｅｉｒａ，  Ｒａｆａｅｌ  Ｄ．  Ｌｉｎｓ，  Ｇａｂｒｉｅｌ  Ｔｏｒｒｅａｏ，  Ｊｉａｎ  Ｆａｎ，  Ｍａｒｃｅｌｏ  Ｔｈｉｅｌｏ，  “Ａ  Ｎｅｗ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｔｅｘｔ−Ｌｉｎｅ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ｆｏｒ  Ｗａｒｐｅｄ  Ｄｏｃｕｍｅｎｔｓ，”  ｉｎ  Ｐｒｏｃ．  ｏｆ  Ｉｎｔ．  Ｃｏｎｆ．  ｏｎ  Ｉｍａｇｅ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｒｅｃｏｇｎｉｔｉｏｎ，  Ｐｏｖｏａ  ｄｅ  Ｖａｒｚｉｍ，  Ｐｏｒｔｕｇａｌ，  ｐｐ．３９８−４０８，  ２０１０．
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、文字列に含まれると一旦は誤って判断された準文字であっても、その後に形成される文字列に含まれると正しく判断され得るようにし、文字列に含まれると正しく判断された準文字が、その後に形成される文字列に含まれると誤って判断されることを抑制するようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、文字列の構成要素である準文字の集合である文字列要素内から、対象としている文字列に含まれる準文字を選択する準文字選択手段と、前記準文字選択手段によって選択された準文字を、前記対象としている文字列に含めることによって文字列を形成する文字列形成手段と、前記文字列形成手段によって形成された文字列の文字列らしさを示す特徴量を算出し、該文字列に含まれている準文字に該特徴量を付与する特徴量付与手段を具備し、前記準文字選択手段によって選択の対象となる準文字として、前記文字列形成手段によって形成された文字列に含まれている準文字を含み、前記準文字選択手段は、前記特徴量付与手段によって準文字に付与された特徴量に基づいて、前記対象としている文字列に含まれる準文字を選択し、前記準文字選択手段は、前記文字列形成手段によって形成途中である文字列の特徴量と既に形成された文字列に含まれている準文字に付与されている特徴量とを比較して、対象としている文字列に含まれる準文字を選択することを特徴とする情報処理装置である。
【００１０】
請求項２の発明は、前記文字列要素内から、前記準文字選択手段によって選択し得る準文字がある範囲を設定する範囲設定手段をさらに具備し、前記準文字選択手段は、前記範囲設定手段によって設定された範囲にある文字列要素内から、対象としている文字列に含まれる準文字を選択することを特徴とする請求項１に記載の情報処理装置である。
【００１２】
請求項３の発明は、前記特徴量付与手段は、特徴量として、文字列の長さ、文字列の太さ、文字列の傾き、文字列に含まれている準文字又は複数の準文字群間の距離、文字列の歪み、文字列の長細さのいずれか１つ又はこれらの組み合わせを算出することを特徴とする請求項１又は２に記載の情報処理装置である。
【００１３】
請求項４の発明は、前記文字列形成手段によって形成された文字列内の文字を認識し、文字認識結果を出力する文字認識手段をさらに具備することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置である。
【００１４】
請求項５の発明は、前記文字列形成手段によって形成された文字列の歪みを算出する歪み算出手段と、前記歪み算出手段によって算出された歪みに基づいて、前記文字列を含む文書の歪みを補正する補正手段をさらに具備することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置である。
【００１５】
請求項６の発明は、コンピュータを、文字列の構成要素である準文字の集合である文字列要素内から、対象としている文字列に含まれる準文字を選択する準文字選択手段と、前記準文字選択手段によって選択された準文字を、前記対象としている文字列に含めることによって文字列を形成する文字列形成手段と、前記文字列形成手段によって形成された文字列の文字列らしさを示す特徴量を算出し、該文字列に含まれている準文字に該特徴量を付与する特徴量付与手段として機能させ、前記準文字選択手段によって選択の対象となる準文字として、前記文字列形成手段によって形成された文字列に含まれている準文字を含み、前記準文字選択手段は、前記特徴量付与手段によって準文字に付与された特徴量に基づいて、前記対象としている文字列に含まれる準文字を選択し、前記準文字選択手段は、前記文字列形成手段によって形成途中である文字列の特徴量と既に形成された文字列に含まれている準文字に付与されている特徴量とを比較して、対象としている文字列に含まれる準文字を選択することを特徴とする情報処理プログラムである。
【発明の効果】
【００１６】
請求項１の情報処理装置によれば、文字列に含まれると一旦は誤って判断された準文字であっても、その後に形成される文字列に含まれると正しく判断され得るようにし、文字列に含まれると正しく判断された準文字が、その後に形成される文字列に含まれると誤って判断されることを抑制することができる。また、形成途中の文字列の特徴に基づいて、準文字を選択する範囲を定めることができる。
【００１７】
請求項２の情報処理装置によれば、文字列に含めるべき準文字の選択範囲を設定することができる。
【００１９】
請求項３の情報処理装置によれば、文字列の長さ、文字列の太さ、文字列の傾き、文字列に含まれている準文字又は複数の準文字群間の距離、文字列の歪みのいずれか１つ又はこれらの組み合わせに基づいて、文字列に含まれる準文字を選択することができる。
【００２０】
請求項４の情報処理装置によれば、文字列の文字認識結果を出力することができる。
【００２１】
請求項５の情報処理装置によれば、文字列の歪みに基づいて、文書の歪みを補正することができる。
【００２２】
請求項６の情報処理プログラムによれば、文字列に含まれると一旦は誤って判断された準文字であっても、その後に形成される文字列に含まれると正しく判断され得るようにし、文字列に含まれると正しく判断された準文字が、その後に形成される文字列に含まれると誤って判断されることを抑制することができる。また、形成途中の文字列の特徴に基づいて、準文字を選択する範囲を定めることができる。
【図面の簡単な説明】
【００２３】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】対象とする文書画像の例を示す説明図である。
【図３】誤った文字列抽出の例を示す説明図である。
【図４】誤った文字列抽出の例を示す説明図である。
【図５】本実施の形態による準文字の選択処理例を示す説明図である。
【図６】本実施の形態による処理例を示す説明図である。
【図７】第１の実施の形態による処理例を示すフローチャートである。
【図８】第２の実施の形態の構成例についての概念的なモジュール構成図である。
【図９】第２の実施の形態による処理例を示すフローチャートである。
【図１０】第３の実施の形態の構成例についての概念的なモジュール構成図である。
【図１１】第４の実施の形態の構成例についての概念的なモジュール構成図である。
【図１２】第５の実施の形態の構成例についての概念的なモジュール構成図である。
【図１３】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２４】
まず、実施の形態を説明する前に、本実施の形態の前提となる文字列の抽出技術について説明する。
文字列の抽出技術とは、文書画像（ビットマップ画像、ストローク画像、ベクトル画像）中の、個々の文字列を抽出する技術である。
本実施の形態は、特に、１つの文字列を構成する個々の要素（以下、「準文字」という）を統合することで文字列を形成する、ボトムアップ指向の文字列の抽出技術に属するものである。文字列の抽出は、文字列の切り出し、文字列の検出ともいわれ、本実施の形態の説明において「文字列を形成する」とは、文字列の抽出、文字列の切り出し、文字列の検出と同義である。
【００２５】
文字列の抽出技術は、文書画像の文字認識や歪み補正等の要素技術として用いられている。
図２に文書画像の例を示す。一般に、文書画像中には、複数の文字列がある。さらに、文字列は個々に固有の形状（サイズ、方向、歪曲、等）を持つ。文字列の抽出技術の目的は、文書画像から、個々の文字列を抽出することである。図２に示す例では、２つの文字列が抽出されるべきである。
文字列抽出の一般的な技術について説明する。特許文献１、特許文献２、特許文献３に開示の技術では、いずれも、１つの文字列を成す個々の要素を統合することで文字列を抽出する、ボトムアップ指向の文字列の抽出技術に属する。
【００２６】
準文字は、例えば、文字が画像である場合（文書画像（ビットマップ画像）内の文字の場合）は、連結画素塊（４連結又は８連結で連結されている画素塊）が該当する。また、文書画像（ストローク画像、ベクトル画像）内の文字の場合は、手書き文字のストローク（具体的には、ペンの動き、タッチパネルにおける指の動き等における一筆分の軌跡）が該当する。準文字は、図２の例に示す文書画像２００内の準文字２０１のように単文字を表す場合もあるが、必ずしも単文字であるとは限らず、準文字２０２（うかんむりの部分）、準文字２０３（うかんむりの下のにある「子」の部分）のように、単文字が複数の準文字から成る場合がある。また、その逆に、単一の準文字が複数の単文字から成る場合がある。
ボトムアップ指向の文字列の抽出技術は、個々の文字列に対して、個別に統合を行うため、個々に固有の形状を持つ文字列を抽出する目的で採用されることが多い。
【００２７】
特許文献３、非特許文献１に開示の技術では、先に抽出された誤った文字列中の準文字が、後の文字列の抽出で正しく統合されない、ということが生じる。これは、１つの文字列が抽出される度に、抽出された文字列中の準文字を、準文字のセット（文字列に含まれ得る候補としての準文字の集合）から除去するためである。
図３に例を示す。図３に示す例は、誤った文字列を抽出している。図３の例に示す文字列３０１のように、先に誤った文字列が抽出され、この文字列中の準文字が、準文字のセットから除去されたため、その後も誤った文字列（すなわち、文字列３０２、３０３、３０４）が抽出されている。
【００２８】
特許文献２、非特許文献２に開示の技術は、抽出された文字列同士を統合し、正しい文字列を抽出しようとするアプローチである。しかし、文字列３０１、文字列３０４のように、誤って文字列として抽出された準文字の集合が、真の文字列を成す準文字の部分集合でない場合、誤った文字列が抽出される、ということが生じる。
これらは、準文字が単一の文字列に所属する条件下で文字列を抽出しようとすることに起因する。
【００２９】
特許文献１に開示の技術は、単一の準文字が複数の文字列に所属しうる条件下で、文字列の抽出結果の仮定を複数得ようとするアプローチである。しかし、本アプローチには、先に抽出された正しい文字列中の準文字を、後の文字列の抽出で誤って統合される、ということが生じる。すなわち、誤った文字列が抽出される割合も増加することになる。
図４に例を示す。図４に示す例は、誤った文字列を抽出している。図４の例に示す文字列４０１のように、先に誤った文字列が抽出されているが、単一の準文字が複数の文字列に所属することを許すため、文字列４０２（「文字列の切り出し」の文字列）のように正しく文字列が抽出される。しかし、同様の理由で、文字列４０３、４０４、４０５、４０６のように、誤った文字列が抽出されている。図４の例においては、文字列の抽出結果として、下段の文字列に対しては正しい抽出結果がない。
特に、特許文献３、非特許文献１、非特許文献２に開示の技術のような、追跡型の文字列の抽出技術においては、前述の現象は顕著に現れる。ここで、追跡型とは、１つの文字列の抽出が、既に統合した準文字に基づいて、次に統合すべき準文字があるべき範囲を予測し、これに基づいて準文字を観測する、という処理の繰り返しから成るアプローチを指す。
また、本アプローチにおいては、文字列の抽出結果の仮定に対する取捨選択の後処理が生じる。抽出対象の文字列の形状に自由度が高い程、抽出される文字列の仮定の個数は増加し、取捨選択の処理の負荷は増加する。
【００３０】
以下に示す実施の形態では、単一の準文字が複数の文字列に所属しうる条件下において、１つの文字列を抽出する度に、前記文字列中の準文字に対して、前記文字列に基づく特徴量を付与する。そして、後の文字列の抽出における準文字の採用／不採用の判別において、前記特徴量を参照する。なお、文字列に基づく特徴量とは、文字列の文字列らしさを示す値、すなわち抽出された文字列の正しさを評価するための値である。また、本実施の形態では、文字列の抽出結果の仮定に対する取捨選択の後処理は不要である。
【００３１】
図５に例を示す。いま、文字列の抽出によって、文字列５１１、５１２が抽出されている。それぞれ、文字列５１１は誤った文字列であり、文字列５１２は正しい文字列である。
後の文字列の抽出において、準文字５０１と同じ文字列に含まれるとして統合されうる準文字に、準文字５０２と準文字５０３の候補があるとする。このとき、準文字５０１と準文字５０３の準文字を統合することは誤りである。これは、文字列４０３、文字列４０４のような誤った文字列の抽出に相当する。
本実施の形態において、準文字に付与された特徴量を参照することで、文字列５１１よりも、文字列５１２の文字列の方が正しいと評価される。つまり、文字列５１１内の準文字に付与されている特徴量と、文字列５１２内の準文字に付与されている特徴量とを比較した場合、文字列５１２内の準文字に付与されている特徴量の方がより文字列らしさを表している特徴量であることを示している。このため、準文字５０３の準文字は既に正しい文字列５１２に含まれているものである可能性が高く、準文字５０２は既に文字列５１１に含まれているが、正しい文字列として抽出されている可能性が低いため、この場合、準文字５０２を統合すべきと判別される。結果として、図６の例に示すような正しい文字列（文字列６１１、６１２）の抽出結果を得る。
【００３２】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００３３】
第１の実施の形態である情報処理装置は、文字列を抽出するものであって、図１の例に示すように、終了判別モジュール１１０、範囲設定モジュール１２０、選択モジュール１３０、文字列形成モジュール１４０、文字列出力モジュール１５０、特徴量算出モジュール１６０、文字列要素保持モジュール１７０、準文字保持モジュール１８０を有している。
第１の実施の形態は、準文字のセットに対して、複数の文字列を検出する。また、図１の例に示す実施の形態による処理フロー例を図７に示す。なお、図１、図７の例における破線部内のモジュール、処理は、１つの文字列を検出するものである。
第１の実施の形態は、１つの文字列を検出する度に、その文字列に含まれている準文字に、その文字列に基づく特徴量を付与する。そして、後の文字列の抽出において、抽出している文字列に含めるべき準文字を選択するか否かの判別において、その特徴量を参照する。
文字列要素とは、準文字の集合である。前述の特許文献、非特許文献に示される技術においては、文字列要素は１つの準文字に相当する。また、任意個数の準文字であってもよい。例えば、文書画像内に含まれている準文字が該当する。
【００３４】
終了判別モジュール１１０は、範囲設定モジュール１２０、準文字保持モジュール１８０と接続されている。終了判別モジュール１１０は、開始信号１０８を受け付けると、準文字保持モジュール１８０から文字列の検出を開始するための文字列要素である開始文字列要素１１２を検出し、範囲設定モジュール１２０へ出力する。開始文字列要素１１２の検出は、文字列の最初の準文字となるものであり、例えば、最初においては、横書きの場合は、文書画像内の左上にある準文字を検出すればよく、縦書きの場合は、文書画像内の右上にある準文字を検出すればよい。そして、文字列出力モジュール１５０によって１つの文字列が出力された後は、次の文字列の最初の準文字を検出すればよい。例えば、横書きの場合は、出力された文字列を除いた領域において、左上にある準文字を検出すればよく、縦書きの場合は、出力された文字列を除いた領域において、右上にある準文字を検出すればよい。
また、開始文字列要素１１２が検出されなければ、終了信号１１４を出力する。つまり、この第１の実施の形態による処理を終了する。
【００３５】
範囲設定モジュール１２０は、終了判別モジュール１１０、選択モジュール１３０と接続されている。範囲設定モジュール１２０は、文字列要素内から、選択モジュール１３０によって選択し得る準文字がある範囲を設定する。つまり、次に統合すべき準文字があるべき範囲１２２を選択モジュール１３０へ出力する。例えば、横書きの場合は、対象としている準文字の右側にあって、予め定められた距離内を範囲とすればよい。また、縦書きの場合は、対象としている準文字の下側にあって、予め定められた距離内を範囲とすればよい。その範囲内にある準文字が、選択モジュール１３０によって文字列内に含まれるべき準文字として選択されるか否かの判別の対象とされる。
【００３６】
選択モジュール１３０は、範囲設定モジュール１２０、文字列形成モジュール１４０、準文字保持モジュール１８０と接続されている。選択モジュール１３０は、文字列の構成要素である準文字の集合である文字列要素内から、対象としている文字列に含まれる準文字を選択する。そして、選択モジュール１３０は、特徴量算出モジュール１６０によって準文字に付与された特徴量に基づいて、対象としている文字列に含まれる準文字を選択する。なお、選択モジュール１３０によって選択の対象となる準文字として、文字列形成モジュール１４０によって形成された文字列に含まれている準文字を含む。
つまり、選択モジュール１３０は、範囲１２２に基づいて、準文字保持モジュール１８０から条件を満たす準文字を選択し、出力する。このとき、準文字に付与された特徴量を参照する。
また、選択モジュール１３０は、範囲設定モジュール１２０によって設定された範囲にある文字列要素内から、対象としている文字列に含まれる準文字を選択するようにしてもよい。
【００３７】
ここで、「特徴量に基づいて」とは、準文字に付与された特徴量を利用することをいい、その準文字が所属する文字列の正しさを評価することに相当する。これは、特許文献１等に開示された技術と同様の方法を用いればよい。
例えば、対象としている文字列について、その傾きやピッチが大きい程、長さや長細さが小さい程、歪みが大きい程、正しい文字列である可能性（すなわち、評価値）が低い、等とすればよい。いずれも、予め定められた値との比較によって、対象としている準文字が含まれている文字列が正しいか否かを判別するようにしてもよいし、ニューラルネットやブースティングといった手段により、機械学習的に設計してもよい。
具体的には、次のような文字列の正しさの判別方法がある。
（１）前述の特徴量から、１つの評価値を算出し、その大小で判別する。
（２）前述の特徴量を組み合わせ、決定木的に判別する。
【００３８】
次に、対象としている準文字における文字列の正しさを判別した後に、複数の準文字の候補から、予め定められた条件を満たす準文字を選択する。
前述の評価値の順に上位Ｎ（予め定められた値）個の準文字を採用してもよいし、予め定められた閾値との比較によって、準文字を選択するか否かを判断してもよい。さらに、予め定められた閾値の参照と上位Ｎ個の準文字を選択する方式を組み合わせ、選択する準文字数を制限してもよい。
なお、各準文字の特徴量の初期値として、前述の評価値が最低となるような値を設定すればよい。
【００３９】
文字列形成モジュール１４０は、選択モジュール１３０、文字列出力モジュール１５０、文字列要素保持モジュール１７０と接続されている。文字列形成モジュール１４０は、選択モジュール１３０によって選択された準文字を、対象としている文字列に含めることによって文字列を形成する。
つまり、文字列形成モジュール１４０は、受け付けた準文字１３２を文字列要素１４２として統合し、範囲設定モジュール１２０と文字列要素保持モジュール１７０へ出力する。準文字がない場合、又は、適切な文字列要素が統合されない場合、観測失敗信号１４４を文字列出力モジュール１５０へ出力する。
範囲設定モジュール１２０から文字列形成モジュール１４０による処理を、観測失敗信号１４４が出力されるまで繰り返す。
【００４０】
文字列出力モジュール１５０は、文字列形成モジュール１４０、特徴量算出モジュール１６０、文字列要素保持モジュール１７０と接続されている。文字列出力モジュール１５０は、観測失敗信号１４４を受け付けると、文字列要素保持モジュール１７０内の文字列要素１４２を統合し、文字列１５２を出力する。ここで出力とは、例えば、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置（例えば、図１１に例示の文字列認識装置１１２０、図１２に例示の歪み量推定モジュール１２２０、歪み補正モジュール１２３０）へ渡すこと等が含まれる。
【００４１】
特徴量算出モジュール１６０は、文字列出力モジュール１５０、準文字保持モジュール１８０と接続されている。特徴量算出モジュール１６０は、文字列形成モジュール１４０によって形成された文字列の文字列らしさを示す特徴量を算出し、その文字列に含まれている準文字にその特徴量を付与する。これによって、準文字を参照すれば、その準文字に付与された特徴量も参照することができる。より具体的には、準文字保持モジュール１８０に記憶されている準文字に、算出した特徴量を付与する。
つまり、特徴量算出モジュール１６０は、受け付けた文字列１５２の準文字に対して、文字列１５２に基づく特徴量を付与する（特徴量付与１６２）。また、１つの文字列の検出が終了したことを受け、次の文字列の検出を開始するための信号を終了判別モジュール１１０へ出力する。
【００４２】
また、特徴量算出モジュール１６０は、特徴量として、文字列の長さ、文字列の太さ、文字列の傾き、文字列に含まれている準文字又は複数の準文字群間の距離、文字列の歪みのいずれか１つ又はこれらの組み合わせを算出するようにしてもよい。
算出する特徴量は、選択モジュール１３０によって利用されるものであり、例えば、次のような特徴量がある。これらのうち、いずれか１つ、又は組み合わせを抽出する。
（１）文字列の長さ
例えば、横書きの場合は文字列の外接矩形の幅、縦書きの場合は文字列の外接矩形の縦長が該当する。又は、文字行の始点（一方の端）における中心と終点（他方の端）における中心を結ぶ直線の距離であってもよい。又は、その文字列に含まれている準文字や複数の準文字群（いわゆる単文字）の個数であってもよい。
（２）文字列の太さ
例えば、横書きの場合は文字列の外接矩形の縦長、縦書きの場合は文字列の外接矩形の幅が該当する。又は、横書きの場合は文字列の予め定められた距離毎における縦長の統計量（例えば、平均値、最頻値、中央値、最大値等をいう。以下、同様）、空白以外の場所における縦長の統計量、縦書きの場合は文字列の予め定められた距離毎における幅の統計量、空白以外の場所における幅の統計量等が該当する。
（３）文字列の傾き
例えば、文字行の始点（一方の端）における中心と終点（他方の端）における中心を結ぶ直線の傾きが該当する。
（４）文字列のピッチ（文字列に含まれている準文字又は複数の準文字群間の距離）
例えば、その文字列に含まれている準文字であって、隣り合っている準文字（又は準文字の外接矩形）間の距離が該当する。又は、複数の準文字において、その準文字の外接矩形が重なりあっている場合は、重なりあっている準文字群間の距離としてもよい。
（５）文字列の歪み
例えば、その文字列に含まれている準文字であって、隣り合っている準文字（又は準文字の外接矩形）の中心間を結ぶ直線の傾きの微分値（傾きの差分値であってもよい）の合計値等が該当する。又は、傾きの他に、準文字や単文字間の太さ、位置、ピッチ間の微分値としてもよい。
（６）文字列の長細さ
例えば、前述の文字列の長さと文字列の太さとの比率が該当する。
終了判別モジュール１１０から特徴量算出モジュール１６０までの処理を、終了信号１１４が出力されるまで繰り返す。
【００４３】
文字列要素保持モジュール１７０は、文字列形成モジュール１４０、文字列出力モジュール１５０と接続されている。文字列要素保持モジュール１７０は、文字列形成モジュール１４０によって形成された１つの文字列の文字列要素１４２（準文字）を記憶する。そして、１つの文字列が形成された場合（観測失敗信号１４４が出力された場合）は、文字列出力モジュール１５０によって、記憶されている文字列要素１４２が読み出される。
【００４４】
準文字保持モジュール１８０は、終了判別モジュール１１０、選択モジュール１３０、特徴量算出モジュール１６０と接続されている。準文字保持モジュール１８０は、文書画像内に含まれている準文字である文字列要素を記憶している。そして、その準文字には特徴量付与１６２によって特徴量が付与される。また、終了判別モジュール１１０、選択モジュール１３０によって、記憶されている準文字、その準文字に付与されている特徴量が読み出される。
【００４５】
図７は、第１の実施の形態による処理例を示すフローチャートである。
ステップＳ７０２では、終了判別モジュール１１０が、開始文字列要素が作成されたか否かを判断し、作成された場合はステップＳ７０４へ進み、それ以外の場合は処理を終了する（ステップＳ７９９）。
ステップＳ７０４では、範囲設定モジュール１２０が、開始文字列要素を受け付ける。
ステップＳ７０６では、範囲設定モジュール１２０が、文字列要素に基づいて、範囲を設定する。
ステップＳ７０８では、選択モジュール１３０が、設定された範囲中の準文字から文字列に含めるべき準文字を選択する。
【００４６】
ステップＳ７１０では、文字列形成モジュール１４０が、選択された準文字に基づいて、文字列を形成する。
ステップＳ７１２では、文字列形成モジュール１４０が、文字列要素が観測されなかったか否かを判断し、観測されなかった場合はステップＳ７１４へ進み、それ以外の場合はステップＳ７１８へ進む。
ステップＳ７１４では、文字列出力モジュール１５０が、文字列の出力を行う。
ステップＳ７１６では、特徴量算出モジュール１６０が、特徴量の算出を行う。
ステップＳ７１８では、範囲設定モジュール１２０が、文字列要素を受け付ける。
【００４７】
図８は、第２の実施の形態の構成例についての概念的なモジュール構成図である。第２の実施の形態は、終了判別モジュール１１０、範囲設定モジュール８２０、選択モジュール８３０、文字列形成モジュール１４０、文字列出力モジュール１５０、特徴量算出モジュール１６０、文字列要素保持モジュール１７０、準文字保持モジュール１８０を有している。なお、第１の実施の形態と同種の部位には同一符号を付し重複した説明を省略する。
第２の実施の形態は、準文字のセットに対して、複数の文字列を検出する。また、図８の例に示す実施の形態による処理フロー例を図９に示す。なお、図８、図９の例における破線部内のモジュール、処理は、１つの文字列を検出するものである。
【００４８】
終了判別モジュール１１０は、範囲設定モジュール８２０、準文字保持モジュール１８０と接続されている。
範囲設定モジュール８２０は、終了判別モジュール１１０、選択モジュール８３０と接続されている。範囲設定モジュール８２０は、第１の実施の形態における範囲設定モジュール１２０と同等の処理を行う。そして、選択モジュール８３０に対して、統合パラメータ８２４を渡す。統合パラメータ８２４とは、１つの文字列の形成において、次に選択すべき準文字があるべき範囲を予測するためのパラメータである。例えば、文字列形成モジュール１４０によって形成途中である文字列の特徴量が該当する。ここでの特徴量には、特徴量算出モジュール１６０が算出した特徴量が該当し、具体的には、前述の文字列の長さ、文字列の太さ、文字列の傾き、文字列に含まれている準文字又は複数の準文字群間の距離、文字列の歪みのいずれか１つ又はこれらの組み合わせがある。また、この特徴量は、形成途中である文字列に対して付与されているものである。
【００４９】
選択モジュール８３０は、範囲設定モジュール８２０、文字列形成モジュール１４０、準文字保持モジュール１８０と接続されている。選択モジュール８３０は、第１の実施の形態における選択モジュール１３０が行う処理に加えて、文字列形成モジュール１４０によって形成途中である文字列の特徴量と既に形成された文字列に含まれている準文字に付与されている特徴量とを比較して、対象としている文字列に含まれる準文字を選択する。つまり、選択モジュール８３０は、統合パラメータ８２４を参照して、準文字を選択する。また、統合パラメータ８２４と比較対象となる「既に形成された文字列」とは、既に文字列形成モジュール１４０によって形成された文字列であって、文字列出力モジュール１５０によって出力された文字列が該当する。つまり、第１の実施の形態では、選択すべき準文字に付与された特徴量によって判断されているが、第２の実施の形態では、選択すべき準文字に付与された特徴量と形成途中の文字列の特徴量とを比較することによって、準文字を選択すべきか否かを判別している。
また、選択モジュール８３０は、さらに、統合パラメータ８２４を用いた選択と、予め定められた閾値の参照又は上位Ｎ個の準文字を選択する方式を組み合わせ、選択する準文字数を制限してもよい。
【００５０】
文字列形成モジュール１４０は、選択モジュール８３０、文字列出力モジュール１５０、文字列要素保持モジュール１７０と接続されている。
準文字保持モジュール１８０は、終了判別モジュール１１０、選択モジュール８３０、特徴量算出モジュール１６０と接続されている。
【００５１】
図９は、第２の実施の形態による処理例を示すフローチャートである。
ステップＳ９０２では、終了判別モジュール１１０が、開始文字列要素が作成されたか否かを判断し、作成された場合はステップＳ９０４へ進み、それ以外の場合は処理を終了する（ステップＳ９９９）。
ステップＳ９０４では、範囲設定モジュール８２０が、開始文字列要素を受け付ける。
ステップＳ９０６では、範囲設定モジュール８２０が、文字列要素に基づいて、範囲を設定し、選択モジュール８３０に統合パラメータ８２４を渡す。
ステップＳ９０８では、選択モジュール８３０が、統合パラメータ８２４に基づいて、設定された範囲中の準文字から文字列に含めるべき準文字を選択する。
【００５２】
ステップＳ９１０では、文字列形成モジュール１４０が、選択された準文字に基づいて、文字列を形成する。
ステップＳ９１２では、文字列形成モジュール１４０が、文字列要素が観測されなかったか否かを判断し、観測されなかった場合はステップＳ９１４へ進み、それ以外の場合はステップＳ９１８へ進む。
ステップＳ９１４では、文字列出力モジュール１５０が、文字列の出力を行う。
ステップＳ９１６では、特徴量算出モジュール１６０が、特徴量の算出を行う。
ステップＳ９１８では、範囲設定モジュール８２０が、文字列要素を受け付ける。
【００５３】
図１０は、第３の実施の形態の構成例についての概念的なモジュール構成図である。第３の実施の形態である文字列処理装置１０００は、準文字作成モジュール１０１０、文字列切り出しモジュール１０２０、準文字保持モジュール１０３０を有している。第３の実施の形態は、第１の実施の形態又は第２の実施の形態のいずれか一方を利用して、文書画像１００８内の文字列を検出するものである。
準文字作成モジュール１０１０は、文字列切り出しモジュール１０２０、準文字保持モジュール１０３０と接続されている。
文字列切り出しモジュール１０２０は、準文字作成モジュール１０１０、準文字保持モジュール１０３０と接続されている。
準文字保持モジュール１０３０は、準文字作成モジュール１０１０、文字列切り出しモジュール１０２０と接続されている。
【００５４】
文字列切り出しモジュール１０２０は、第１の実施の形態又は第２の実施の形態のいずれか一方に相当する。説明のため、第１の実施の形態又は第２の実施の形態の準文字保持モジュール１８０を取り出して準文字保持モジュール１０３０として図示する（つまり、準文字保持モジュール１０３０は準文字保持モジュール１８０と同等である）。
準文字作成モジュール１０１０は、受け付けた文書画像１００８から、準文字１０１４を抽出し、その準文字１０１４を準文字保持モジュール１０３０に記憶させる。文書画像１００８中のすべての準文字を抽出し終えたとき、開始信号１０１２を文字列切り出しモジュール１０２０へ出力する。
なお、図１０内の文字列１０２２は図１、８内の文字列１５２に相当し、図１０内の特徴量付与１０２４は図１、８内の特徴量付与１６２に相当し、図１０内の終了信号１０２６は図１、８内の終了信号１１４に相当する。
【００５５】
図１１は、第４の実施の形態の構成例についての概念的なモジュール構成図である。第４の実施の形態は、文字列処理装置１０００、文字列認識装置１１２０を有しており、第３の実施の形態を文字認識に利用するものである。第４の実施の形態は、第３の実施の形態である文字列処理装置１０００の出力である文字列１１１２（図１０内の文字列１０２２）を、文字列認識装置１１２０が受け付けて、文字認識する。
文字列処理装置１０００は、文字列認識装置１１２０と接続されている。
文字列認識装置１１２０は、文字列処理装置１０００と接続されている。文字列認識装置１１２０は、文字列処理装置１０００の文字列形成モジュール１４０によって形成された文字列１１１２内の文字を認識し、その文字列内の文字認識結果１１２２を出力する。文字認識結果１１２２とは、文字列１１１２に対する、個々の単文字の位置とテキストコードによって構成されている。
【００５６】
図１２は、第５の実施の形態の構成例についての概念的なモジュール構成図である。第５の実施の形態は、文字列処理装置１０００、歪み量推定モジュール１２２０、歪み補正モジュール１２３０を有しており、第３の実施の形態を文書画像の歪み補正に利用するものである。第５の実施の形態は、第３の実施の形態である文字列処理装置１０００の出力を、歪み量推定モジュール１２２０が受け付け、歪み量推定モジュール１２２０の出力を、歪み補正モジュール１２３０が受け付けて、文書画像１２０８の歪みを補正する。例えば、第５の実施の形態をカメラ付きの携帯情報処理装置に内蔵させ、そのカメラで文書を撮影して、撮影結果である文書画像１２０８の歪みを補正する。
【００５７】
文字列処理装置１０００は、歪み量推定モジュール１２２０、歪み補正モジュール１２３０と接続されている。
歪み量推定モジュール１２２０は、文字列処理装置１０００、歪み補正モジュール１２３０と接続されている。歪み量推定モジュール１２２０は、文字列処理装置１０００の文字列形成モジュール１４０によって形成された文字列の歪みを算出する。つまり、文字列処理装置１０００から文字列１２１２を受け付けて、補正に必要な文字列の歪み量１２２２を推定する。
歪み補正モジュール１２３０は、文字列処理装置１０００、歪み量推定モジュール１２２０と接続されている。歪み補正モジュール１２３０は、歪み量推定モジュール１２２０によって算出された歪み量１２２２に基づいて、その文字列を含む文書画像１２０８の歪みを補正する。つまり、歪み補正モジュール１２３０は、複数の文字列の歪みを対象としているため、文字列処理装置１０００がすべての文字列を検出したことを示す終了信号１２１４を出力すると、処理を開始する。歪み量推定モジュール１２２０によって推定された歪み量１２２２に基づいて、文書画像１２０８の歪みを補正し、歪み補正文書画像１２３２を出力する。
なお、「文字列の歪みに基づいて」とは、各文字列の歪みの統計量を解消するように補正することをいう。
【００５８】
図１３を参照して、本実施の形態の情報処理装置のハードウェア構成例について説明する。図１３に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部１３１７と、プリンタなどのデータ出力部１３１８を備えたハードウェア構成例を示している。
【００５９】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１３０１は、前述の実施の形態において説明した各種のモジュール、すなわち、終了判別モジュール１１０、範囲設定モジュール１２０、選択モジュール１３０、文字列形成モジュール１４０、文字列出力モジュール１５０、特徴量算出モジュール１６０、範囲設定モジュール８２０、選択モジュール８３０、文字列処理装置１０００、準文字作成モジュール１０１０、文字列切り出しモジュール１０２０、文字列認識装置１１２０、歪み量推定モジュール１２２０、歪み補正モジュール１２３０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００６０】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３０２は、ＣＰＵ１３０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３０３は、ＣＰＵ１３０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス１３０４により相互に接続されている。
【００６１】
ホストバス１３０４は、ブリッジ１３０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス１３０６に接続されている。
【００６２】
キーボード１３０８、マウス等のポインティングデバイス１３０９は、操作者により操作される入力デバイスである。ディスプレイ１３１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などがあり、各種情報をテキストやイメージ情報として表示する。
【００６３】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１３１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ１３０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、対象となる文書画像、形成した文字列などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００６４】
ドライブ１３１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１３１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１３０７、外部バス１３０６、ブリッジ１３０５、及びホストバス１３０４を介して接続されているＲＡＭ１３０３に供給する。リムーバブル記録媒体１３１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００６５】
接続ポート１３１４は、外部接続機器１３１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１３１４は、インタフェース１３０７、及び外部バス１３０６、ブリッジ１３０５、ホストバス１３０４等を介してＣＰＵ１３０１等に接続されている。通信部１３１６は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部１３１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１３１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００６６】
なお、前述の実施の形態では、文字列の抽出を１回行うが、これを複数回繰り返して行うようにしてもよい。例えば、２回目以降の文字列の抽出は、前回の文字列の抽出の方向とは逆方向から文字列を抽出するようにしてもよい。つまり、２回目以降では、終了判別モジュール１１０は、前回の抽出した文字列の終端を開始文字列要素１１２として検出する。そして、範囲設定モジュール１２０は、前回とは逆方向に準文字を選択する範囲１２２を設定する。そして、終了条件として、前回の始点が今回の終点と合致したならば終了するようにしてもよいし、予め定められた回数の繰り返しを行うようにしてもよい。
【００６７】
なお、図１３に示す情報処理装置のハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１３に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１３に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００６８】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００６９】
１１０…終了判別モジュール
１２０…範囲設定モジュール
１３０…選択モジュール
１４０…文字列形成モジュール
１５０…文字列出力モジュール
１６０…特徴量算出モジュール
１７０…文字列要素保持モジュール
１８０…準文字保持モジュール
８２０…範囲設定モジュール
８３０…選択モジュール
１０１０…準文字作成モジュール
１０２０…文字列切り出しモジュール
１０３０…準文字保持モジュール
１２２０…歪み量推定モジュール
１２３０…歪み補正モジュール
【図１】
0005935324.tif 000002
【図２】
0005935324.tif 000003
【図３】
0005935324.tif 000004
【図４】
0005935324.tif 000005
【図５】
0005935324.tif 000006
【図６】
0005935324.tif 000007
【図７】
0005935324.tif 000008
【図８】
0005935324.tif 000009
【図９】
0005935324.tif 000010
【図１０】
0005935324.tif 000011
【図１１】
0005935324.tif 000012
【図１２】
0005935324.tif 000013
【図１３】
0005935324.tif 000014