JP2014067303A - 文字認識装置、方法およびプログラム - Google Patents

文字認識装置、方法およびプログラム Download PDF

Info

Publication number
JP2014067303A
JP2014067303A JP2012213199A JP2012213199A JP2014067303A JP 2014067303 A JP2014067303 A JP 2014067303A JP 2012213199 A JP2012213199 A JP 2012213199A JP 2012213199 A JP2012213199 A JP 2012213199A JP 2014067303 A JP2014067303 A JP 2014067303A
Authority
JP
Japan
Prior art keywords
character
text
user
priority
character recognition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012213199A
Other languages
English (en)
Inventor
Masayuki Okamoto
昌之 岡本
Kenta Cho
健太 長
Mitsuo Nunome
光生 布目
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2012213199A priority Critical patent/JP2014067303A/ja
Priority to PCT/JP2013/076166 priority patent/WO2014051015A1/en
Priority to CN201380050494.8A priority patent/CN104685514A/zh
Publication of JP2014067303A publication Critical patent/JP2014067303A/ja
Priority to US14/668,853 priority patent/US20150199582A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19147Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/224Character recognition characterised by the type of writing of printed characters having additional code marks or containing code marks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/28Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet
    • G06V30/287Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet of Kanji, Hiragana or Katakana characters

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Character Discrimination (AREA)

Abstract

【課題】文字認識精度を向上させる。
【解決手段】本実施形態に係る文字認識装置は、辞書生成部、推定部、ラティス生成部および探索部を含む。辞書生成部は、ユーザが作成するテキストデータおよび該ユーザが利用するテキストデータの少なくとも1つから文字を抽出し、抽出した文字を優先文字として登録するユーザ辞書を生成する。推定部は、認識処理の対象となるテキストである処理対象テキストのレイアウトおよび処理対象テキストに付されるマーキングに関するマーキング情報の少なくともどちらか一方に基づいて、文字間の区切りを推定する。ラティス生成部は、処理対象テキストのブロックに含まれる文字列に関して、文字間の区切りに基づき、ストロークで表される文字セグメントを推定し、ラティス構造を生成する。探索部は、ラティス構造の中で、優先文字に該当する経路が存在する場合、優先文字となる経路を探索することにより文字認識結果を得る。
【選択図】図1

Description

本発明の実施形態は、文字認識装置、方法およびプログラムに関する。
ペン入力など手書きによる文字入力方式は従来から広く利用されている。PDA(Personal Digital Assistant:携帯用情報端末)だけでなく、スマートフォンやタブレット型端末、ゲーム機の広がりに伴い、ペン入力機能を備えた機器も増えている。
こうした環境において、ユーザは、慣れ親しんだ紙とペンとを電子的に模倣した直感的な入力手段によって、いつでも手軽に文書を作成できる。しかしながら、キーボードなどの手段を用いて直接テキストデータを入力する場合とは異なり、上述の入力手段で作成したテキストや文書の文字列は、そのままでは簡単に検索することはできない。通常は、後でデジタルデータとして扱うために手書き文書から文字認識を行う必要がある。
このような手書きデータ、特に自由なレイアウトで文字を記入する場合、認識精度の向上が課題となる。従来技術として、活字と手書き文字とが混在した文書について、活字と手書き文字とを分離後に、認識精度を確保しやすい活字をOCR(Optical Character Recognition:光学文字認識)処理し、手書き文字の認識候補に活字をOCR処理した結果が含まれる場合はその結果を採用する方法がある。これにより手書き文字の認識精度を向上させることができる。
特開2006−92097号公報 特開2002−259912号公報
しかし、ページ単位で作成される手書き文書に対し文字認識を行う場合、単に文字列の行を検出して文字認識するだけでは、ページのレイアウト上における記号(箇条書きに用いられる見出し記号「*」など)が文字の一画と混同されやすい。また、会社の部署名の略称、社内用語や記号などの特定分野の専門用語に関しては、一般的なN−gramまたは言語モデルを適用するだけでは文字認識の精度は改善しない。
本開示は、上述の課題を解決するためになされたものであり、文字認識精度を向上させることができる文字認識装置、方法およびプログラムを提供することを目的とする。
本実施形態に係る文字認識装置は、辞書生成部、推定部、ラティス生成部および探索部を含む。辞書生成部は、ユーザが作成するテキストデータおよび該ユーザが利用するテキストデータの少なくとも1つから文字を抽出し、抽出した文字を優先文字として登録するユーザ辞書を生成する。推定部は、認識処理の対象となるテキストである処理対象テキストのレイアウトおよび該処理対象テキストに付されるマーキングに関するマーキング情報の少なくともどちらか一方に基づいて、文字間の区切りを推定する。ラティス生成部は、前記処理対象テキストの前記レイアウトを構成するブロックに含まれる文字列に関して、前記文字間の区切りに基づき、ストロークで表される文字セグメントを推定し、該文字セグメントと該文字セグメント間の経路とにより形成されるラティス構造を生成する。探索部は、前記ラティス構造の中で、前記優先文字に該当する経路が存在する場合、該優先文字となる経路を探索することにより文字認識結果を得る。
本実施形態に係る文字認識装置を示すブロック図。 ユーザ辞書生成部の動作を示すフローチャート。 ユーザ辞書生成部の抽出処理の一例を示す図。 本実施形態に係るユーザ辞書の一例を示す図。 文字区切り推定部の動作を示すフローチャート。 文字区切り推定部おける検出および推定処理の一例を示す図。 文字区切り推定部における字種の推定処理の一例を示す図。 ラティス生成部およびラティス探索部の動作を示すフローチャート。 手書き文字とストロークとの関係を説明する図。 文字セグメントとストロークデータとの関係性を示す図。 本実施形態に係るラティス構造の一例を示す図。 文字認識処理が正しく行われる場合の一例を示す図。 本実施形態に係る文字認識処理を行なった場合の処理対象テキストデータに関する文字認識結果を示す図。
以下、図面を参照しながら本実施形態に係る文字認識装置、方法およびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の参照符号を付した部分は同様の動作をおこなうものとして、重複する説明を適宜省略する。
(第1の実施形態)
第1の実施形態に係る文字認識装置について図1のブロック図を参照して説明する。
第1の実施形態に係る文字認識装置100は、テキストデータ収集部101、ユーザ辞書生成部102、ユーザ辞書格納部103、レイアウト解析部104、文字区切り推定部105、ラティス生成部106、ラティス探索部107および出力部108を含む。
テキストデータ収集部101は、ユーザが作成したテキスト文書データ、閲覧などで利用したテキスト文書データを、メールアプリケーションおよび文書編集アプリケーションなど他の装置またはアプリケーションプログラムから収集する。すなわち、テキスト文書データは、ユーザがメールアプリケーションを用いて作成した文書、および、文書編集アプリケーションにより作成した文書を含む。
また、テキストデータ収集部101は、業務文書などの特定ドメイン文書に含まれるテキスト文書データも収集する。特定ドメイン文書は、ユーザが所属する組織、ユーザが従事する分野などで利用される文書であり、ユーザが実際に作成および利用するかどうかによらず、ユーザが目にする機会の多い単語を含む文書である。特定ドメイン文書に含まれる単語としては、例えば、部署名の略称、社内用語や記号、および専門分野における専門用語が挙げられる。さらに、テキストデータ収集部101は、ユーザによる手書き文書データを収集する。手書き文書データは、例えばペンデバイスやタッチパネルへの指などを用いた筆記により入力されるデータ、OCR処理により画像として入力される筆記データ、および、テキスト文書データにおけるテキストに対する下線または囲み線などのマーキング入力や、余白にコメント等の形で入力されたデータも含まれる。以下、特に断らない限り、テキスト文書データと手書き文書データとをまとめてテキストデータという。
ユーザ辞書生成部102は、テキストデータ収集部101から1つ以上のテキストデータを受け取り、テキスト集合、または手書き文書に含まれるテキスト文書データから単語および記号を抽出する。抽出した単語および記号を優先文字として登録したユーザ辞書を生成する。特徴的な文字は、例えば、テキスト中の出現頻度が高い文字である。ユーザ辞書の生成処理については、図2を参照して後述する。
ユーザ辞書格納部103は、ユーザ辞書生成部102からユーザ辞書を受け取って格納する。また、ユーザ辞書格納部103は、後述する文字区切り推定部105から行頭文字を受け取り、ユーザ辞書に行頭文字を優先文字として格納する。行頭文字とは、ページのレイアウト上の記号であり、例えば中点「・」といった見出し記号が挙げられる。
レイアウト解析部104は、外部から処理対象テキストデータを受け取り、処理対象テキストから、罫線および行などのレイアウト解析結果、テキストに付されるマーキングを示すマーキング情報を抽出する。処理対象テキストデータは、文字認識処理の対象となるテキストデータである。レイアウト解析結果およびマーキング情報の抽出は、例えば、図表と文字との領域を推定して分割し、行を分割し、テキストへのマーキングを解析することで得られる。レイアウト解析部104における抽出処理は、既存のストローク処理またはOCR処理を用いればよいためここでの説明は省略する。
文字区切り推定部105は、レイアウト解析部104からレイアウト解析結果、マーキング情報および処理対象テキストデータを受け取り、複数行に共通する行頭文字および記号を推定して推定結果を得る。また、文字区切り推定部105は、表に含まれる字種を推定して推定結果に含めてもよい。字種は、文字の種別を示し、例えば、漢字、ひらがな、数字、アルファベットが挙げられる。
ラティス生成部106は、文字区切り推定部105から推定結果および処理対象テキストデータを、レイアウト解析部104からレイアウト解析結果およびマーキング情報をそれぞれ受け取る。ラティス生成部106は、文字を構成するストロークで表される文字セグメントを推定し、ラティス構造(グラフともいう)を生成する。ラティス構造は、文字自体あるいは文字の一部(例えば、「へん」や「つくり」)を示す文字セグメントと、文字セグメント間の経路とにより形成される文字セグメント間の連結関係を示す。
ラティス探索部107は、ラティス生成部106からラティス構造を受け取る。ラティス探索部107は、ユーザ辞書格納部103に格納された優先文字を参照し、優先文字に該当する経路が存在する場合、優先文字となる経路を探索して文字認識処理を行ない、文字認識結果を得る。
出力部108は、ラティス探索部107から認識結果を受け取って外部に出力する。
次に、ユーザ辞書生成部102の辞書生成処理について図2のフローチャートを参照して説明する。
ステップS201では、テキストデータ収集部101から、テキストデータを取得する。
ステップS202では、マーキングされたテキストデータであるか、すなわち手書き文書データであるかどうかを判定する。マーキングされたテキストデータでない、すなわちテキスト文書データであれば、ステップS203に進み、マーキングされたテキストデータであればステップS204に進む。なお、手書き文書データを取得する場合は、テキスト文書のデータ全体を取得してもよいし、手書きデータが入力されたページまたは段落のみを取得してもよいし、下線や囲み線などで限定された文字列のみを取得してもよい。または、全テキストデータを取得するが、手書き入力された箇所のみを重み付けするなどの処理でもよい。
ステップS203では、テキストデータから頻出語を抽出する。頻出語の抽出方法としては、例えば形態素解析を行い、出現頻度が高い単語、TF−IDF(Term Frequency - Inverse Document Frequency)などの指標によるスコアが高い単語などを抽出すればよい。なお、ユーザによりテキストに記入された記号および罫線を含むマーキングを、行頭文字および単語の区切りの手がかりとして用いてもよい。
ステップS204では、マーキング情報に基づいてマーキングされた単語を抽出する。
ステップS205では、ステップS203およびステップS204で得られた頻出語およびマークアップされた単語を優先文字としてユーザ辞書に格納する。以上で、ユーザ辞書生成部102の辞書生成処理を終了する。
次に、ステップS204に示すマーキングされた単語の抽出処理の具体例について、図3を参照して説明する。
図3は、ユーザによるマーキングを含むテキストデータから単語を抽出する例である。
図3(a)に示す例では、単語「認識」が囲み線で囲まれるマーキング301がなされ、単語「転置インデックス」に下線が引かれるマーキング302がなされる。これらの単語は、ユーザが強調したいと考える単語であるので、囲まれた領域に含まれる文字列、下線上に存在する文字列の優先度を高くする。
また、マーキングは、単語への下線や囲み線の他、行頭文字やページ全体へのマークなどにも用いられる。例えば、図3(b)は行頭に見出し記号がある例であり、中点のマーク「・」のように見出し記号がある場合は、マークが後続する行に対し有効であると考えられるので、中点のマーク「・」がある1行に含まれる文字列全体を抽出する。すなわち、「・次回のミーティング」という行であれば、「次回のミーティング」がマーキングされた単語として抽出される。
図3(c)は、文の一部にマークがある例であり、線により囲まれた、あるいは強調された言葉を対象とすることを示す。すなわち、「UI仕様の変更」のように「UI仕様」のみに下線が引かれている場合は、マーキングされた単語として「UI仕様」を抽出する。
図3(d)は行全体にマークがある例であり、図3(a)と同様に、行全体がマーキングされた単語として抽出される。
また、図3(e)はページ全体にマークがある例であり、ページ全体が抽出対象となる。図3(e)の例では、ページの右上に星印または「重要」というマークが付されているので、ページに含まれる文字全体をマーキングされた単語として抽出する。
なお、図3(b)から図3(e)まででは、手書き文字に対して手書きでマークされる例を示しているが、文書編集アプリケーションなどで作成されたテキストデータに対するマーキングの場合も同様に処理すればよい。また、マークが対象とする範囲についても、段落および図表の全体または一部など、レイアウトを構成する任意の単位に対し適用してもよい。
次に、ユーザ辞書格納部103に格納されるユーザ辞書の一例について図4を参照して説明する。
ユーザ辞書400には、ID401、エントリ402、種類403および優先度404がそれぞれ対応づけられて格納される。ID401は、一意に定まる識別子である。エントリ402は、優先文字の文字である。種類403は、エントリ402の文字の属性を示す。優先度404は、ユーザ辞書内で優先して文字認識される度合いを示す。
例えば、エントリ402「認識」という文字は単語であるので種類403「単語」が対応づけられ、手書き文書データから抽出されたので優先度404「高」となる。また、エントリ402「☆」は、見出し記号として行頭に用いられるマークとすると、種類403「マーキング:行頭文字」が対応づけられ、テキスト文書データから抽出されたとすると優先度404「低」となる。
このように、ユーザ辞書には文字列だけでなく、行頭文字も登録することにより、文字列と区別して高精度な認識処理を行うことができる。なお、マーキング情報の場合、エントリは必ずしもテキストデータとして表現できるとは限らないので、ストロークや形状を示す座標列やIDなど他の格納方式を用いてもよい。さらに、優先度として図4では、「高」「低」の2種類としているが、これに限らず10段階の数値など優先度を測れる指標であれば何でもよい。
次に、文字区切り推定部105の動作について図5のフローチャートを参照して説明する。
ステップS501では、レイアウト解析部104による処理対象テキストのレイアウト解析結果に基づいて、ブロックに分割する。ブロックは、処理対象テキストのレイアウトの構成である。ブロックの分割は、例えば1行に書かれている文字数や行または記述範囲の近さに基づいて、レイアウトから抽出される。
ステップS502では、隣接する複数のブロックの先頭部分に記載されるストロークを比較し、行頭文字を抽出する。行頭文字に関しては、隣接する複数のブロックの先頭に記述された、いくつかのストロークの形状または座標を比較し、ストローク形状が類似しかつ縦方向または横方向に並んでいる場合に、該当部分を行頭文字として抽出する。また、抽出された行頭文字を文字の区切りとみなすことができる。
ステップS503では、後から記入されたマーキングに対応する範囲を文字または単語の切れ目の候補として抽出する。例えば、図3(a)では、「認識処理」の「認識」という単語が線で囲まれているので、「認識」で文字が区切られていると推定することができる。特に、元の手書き文書がストロークデータとして与えられている場合は、下線および囲み線は、後から記入されていることを識別できるため、指し示す単語を推定する手がかりとして利用できる。
ステップS504では、抽出された行頭文字をユーザ辞書に登録する。以上で、文字区切り推定部105の動作を終了する。
次に、文字区切り推定部105におけるレイアウトから行頭文字および単語を検出する処理の具体例について図6を参照して説明する。
図6(a)は、手書きされた処理対象テキストデータである。手書きによる文字だけではなく、手書きによる囲み線、下線なども記入されている。
図6(b)は、従来手法を用いて、行単位での文字認識を行なった場合の例である。図6(b)に示されるように、行頭の記号「・」および「□」が異なる文字(数字「0」やカタカナ「ロ」など)として認識され、「(田中)」が「佃中)」と認識されており、誤りを含んだ文字認識処理となる。ユーザが目視すれば、複数行にわたり、箇条書きで文字列が列挙されていることがわかるが、従来の行単位の処理では、行頭文字が別の文字や後続の文字の1画として誤って認識される可能性が高い。
一方、図6(c)は、文字区切り推定部105が、レイアウト解析部104での解析結果に基づき、ブロックに分割して、複数行に共通する行頭文字および記号を推定する例である。ここで、図6(c)は、2段階で列挙された文字列の推定結果である。
行頭の記号「・」および「□」に関しては、連続した行に記述されているため、行頭文字および記号であると推定することができる。また、「・」で始まる行が4行連続しているので、これらは記号「・」の行頭文字601による列挙であるとみなすことができる。
さらに、その前後に「1.」「2.」で始まる行がある。これらは、1段階上位の階層を示す、数字と「.」との行頭文字602による列挙であるとみなすことができ、行頭文字601と行頭文字602による2段階の列挙であることがわかる。したがって、これら行頭文字と本文とは、別の文字であると推定できる。この結果を用いることで、行頭文字を同じ文字として揃えるとともに、ラティス生成前に行頭文字の部分だけセグメントを分割するなど、行頭文字と後続の文とを区切るように判定することができ、文字認識精度を高めることができる。
なお、「イ、」「ロ、」「ハ、」あるいは「A.」「B.」「C.」のように、連続するカナ順または連続するアルファベット順などの列挙も同様に推定することができる。
次に、文字区切り推定部105における字種の推定処理について図7を参照して説明する。
図7は、手書きで表を記入した場合に、表に含まれる字種を推定する例である。
図7(a)は、表形式の手書きデータの一例である。
表の右端の列701には、手書きによる数字が記入される。同じ行または列に連続して同じ字種(アルファベット、数字など)が記入される場合、他の行または列にも同じ字種が記入される可能性が高くなる。
図7(b)は、レイアウト解析部104における罫線のレイアウト解析結果である。複数のセグメントにまたがる線により罫線で区切られた領域が推定される。右下の領域702は、1つの列またはセルを示すものと推定される。
図7(c)は、図7(b)の領域702に含まれるブロック703から文字の種類を推定する処理である。図7(c)に示すように、3つのブロック703に分かれているが、これらは全て数字である。ある2個の文字が数字であれば、もう1個の文字も数字である可能性が高いと想定される。よって、文字区切り推定部105は、ラティス生成部106によるラティス構造の生成の際、数字である候補の出現可能性を示すスコアを上げる情報をラティス生成部106に渡すことで、以降のブロックについても数字として認識されやすくする。
次に、ラティス生成部106およびラティス探索部107の文字認識処理について図8のフローチャートを参照して説明する。
ステップS801では、ラティス生成部106が、ストロークを表すストロークデータから単語の区切りを考慮してラティス構造を生成する。具体的には、ステップS501からステップS504により生成されたユーザ辞書を参照して、文字領域に関して文字を構成する文字セグメントを推定することによりラティス構造を生成する。文字セグメント推定の処理は、既存のストロークあるいは画像処理による手法を用いればよい。生成されたラティス構造には、文字の一部を表すセグメント間の連接関係を示す経路に加え、およびそれぞれの経路に対する重みが付与される。
ステップS802では、ラティス生成部106が、ユーザ辞書とラティス構造とに基づいて、文字認識処理を行なう。ラティス中、ユーザ辞書中のエントリ(優先文字)が含まれるスコアを増加させる。具体的には、ラティス中に各ユーザ辞書のエントリの単語となるように辿れる経路があるかどうかを探索し、含まれる場合にその経路のスコアを増加させる。経路のスコアを増加させる方法については、一般的な方法を用いればよいためここでの説明を省略する。
その他、ユーザ辞書中のエントリが含まれる経路を強制的に通る方法や、探索できたユーザ辞書中のエントリを文字認識結果とは別にキーワードとして抽出する方式を用いてもよい。
ステップS803では、ラティス生成部106が、表中で推定される領域の隣接ブロックと同じ字種のスコアを増加させる。
ステップS804では、ラティス探索部107が、ラティス構造を辿り、出現確率を示すスコアが高い系列を文字認識結果として出力する。
なお、ステップS802およびステップS803の処理については、ラティス生成部106の代わりにラティス探索部107において同様の処理を行なってもよい。以上で、ラティス生成部106およびラティス探索部107の文字認識処理を終了する。
次に、手書き文字とストロークとの関係性の例について図9を参照して説明する。
図9(a)は、行を示すブロックが検出された後の、手書き文字のストローク例である。この行のブロックは行頭文字901「§」と単語902「文字認識」とを含む。また、ストロークデータとして、図9(b)に示す対応テーブルを得ることができる。図9(b)に示すように、ストロークID903および座標列904が対応づけられる。座標列904は、x座標およびy座標系を想定する。例えば、行頭文字901「§」のストロークデータとして、x座標およびy座標の座標列904「(24,49)、(25,50)、...、(20,65)」が抽出され、ストロークごとに座標列が得られる。このように、一画ごとに、ストロークIDとストロークを構成する座標列とが抽出される。
次に、ブロックに含まれる文字セグメントとストロークデータとの関係性について図10を参照して説明する。
図10は、ストローク形状から文字セグメントを推定した後、セグメントIDとセグメントに含まれるストロークID列、およびセグメントが示す種類の対応関係を示すテーブルである。図10に示すテーブル1000は、セグメントID1001、ストロークIDの列1002および種類1003をそれぞれ対応づけて格納する。
セグメント1001は、行を示すブロックに出現する文字列を示す。
ストロークIDの列1002は、図9(b)に示すストロークのデータに基づいて、セグメントIDに示す文字を構成するために必要なストロークを格納する。
種類1003は、ストロークにより形成される文字を示す。例えば、最初の2ストロークは行頭文字を示し、ストローク3、4は、セグメント「文」「メ」「ひ」に用いられる、つまり複数の文字の候補となっていることを示す。図9(b)同様、他の付加的な属性を付与しても構わない。また、ストローク形状からセグメントを推定する方法は、一般的なOCRにおける検索および照合処理や、ベクトル列の類似性に基づく類似形状の検索および照合処理を用いればよい。
次に、ラティス構造の一例について図11を参照して説明する。
図11は、行頭文字を除く部分のセグメントの連結関係を示したラティス構造であり、簡単のため図示しないが、ある文字セグメントと次に続く可能性のある文字セグメントとの間には、尤度のスコアが対応づけられる。このような連結関係に基づいて、セグメント間の重み付けに基づいて尤度の高い系列の経路を辿ることにより、文字認識処理を行なう。例えば、文字セグメント1101「文」から次に続く可能性のある文字セグメントとして、文字セグメント1102「字」と文字セグメント1103「学」との候補がある。この場合は、経路1104に対応づけられるスコアおよび経路1105に対応づけられるスコアに基づいて、スコアの高い経路を選択することにより文字セグメントを選択すればよい。
次に、文字認識処理が正しく行われる場合の一例を図12に示す。
図12は、「文字認識」と手書き入力した場合に生成されるラティス構造の例である。正しい処理結果である「文字認識」という全体経路1201のほか、「文字言忍識」のような全体経路1202も存在する。ここで、ユーザ辞書に「認識」という単語が登録されている場合、ラティス構造中で「認識」を通るパスを優先させることで、適切な認識結果を出力することができる。
次に、本実施形態における手書きデータの文字認識結果を図13に示す。
図13は、図6(a)を処理対象テキストデータとした場合に、本実施形態による文字認識処理を行なった場合の認識結果である。図13に示すように、行頭の文字および記号や、隣接する文字と混じることなく、適切な結果が出力される。
以上に示した実施形態によれば、ユーザが作成または利用したテキストデータを登録したユーザ辞書に基づいて行頭文字または記号、および文字の区切りを推定することで、会社の部署名の略称、社内用語や記号などの特定分野の専門用語など一般的でない用語についても文字認識することができるので、文字認識誤りを低減し、文字認識精度を向上させることができる。
本実施形態に係る文字認識装置は、手書き文字情報を入力可能な端末(例えば、PCやスマートフォン、タブレット等の端末)に用いられ得る。
テキストデータ収集部101と、ユーザ辞書生成部102と、レイアウト解析部104と、文字区切り推定部105と、ラティス生成部106と、ラティス探索部107と、出力部108は、中央演算処理装置(CPU)、及びCPUが用いるメモリにより実現されてよい。ユーザ辞書格納部103は、CPUが用いるメモリ、又は補助記憶装置により実現されてよい。
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した文字認識装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RW、Blu−ray(登録商標)Discなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の文字認識装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本実施形態における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本実施形態における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
なお、本実施形態におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本実施形態における機能を実現することが可能な機器、装置を総称している。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行なうことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
100・・・文字認識装置、101・・・テキストデータ収集部、102・・・ユーザ辞書生成部、103・・・ユーザ辞書格納部、104・・・レイアウト解析部、105・・・文字区切り推定部、106・・・ラティス生成部、107・・・ラティス探索部、108・・・出力部、301,302・・・マーキング、400・・・ユーザ辞書、401・・・ID、402・・・エントリ、403,1003・・・種類、404・・・優先度、601,602・・・行頭文字、701・・・列、702・・・領域、703・・・ブロック、901・・・行頭文字、902・・・単語、903・・・ストロークID、904・・・座標列、1000・・・テーブル、1001・・・セグメント、1002・・・ストロークIDの列、1003・・・種類、1101,1102,1103・・・文字セグメント、1104,1105・・・経路、1201,1202・・・全体経路。

Claims (11)

  1. ユーザが作成するテキストデータおよび該ユーザが利用するテキストデータの少なくとも1つから文字を抽出し、抽出した文字を優先文字として登録するユーザ辞書を生成する辞書生成部と、
    認識処理の対象となるテキストである処理対象テキストのレイアウトおよび該処理対象テキストに付されるマーキングに関するマーキング情報の少なくともどちらか一方に基づいて、文字間の区切りを推定する推定部と、
    前記処理対象テキストの前記レイアウトを構成するブロックに含まれる文字列に関して、前記文字間の区切りに基づき、ストロークで表される文字セグメントを推定し、該文字セグメントと該文字セグメント間の経路とにより形成されるラティス構造を生成するラティス生成部と、
    前記ラティス構造の中で、前記優先文字に該当する経路が存在する場合、該優先文字となる経路を探索することにより文字認識結果を得る探索部と、を具備することを特徴とする文字認識装置。
  2. 前記処理対象テキストから、行および罫線を含む図表と、下線および囲み線を含むマーキングに関するマーキング情報とを解析する解析部をさらに具備することを特徴とする請求項1に記載の文字認識装置。
  3. 前記辞書生成部は、前記テキストデータにおいて、マーキングされたページに含まれる文字列およびマーキングされた文字列について、優先文字として優先して文字認識される度合いを示す優先度を高く設定し、前記ユーザ辞書に登録することを特徴とする請求項1または請求項2に記載の文字認識装置。
  4. 前記ユーザが作成したメールおよび文書に含まれるテキストデータを、他のアプリケーションから取得する収集部をさらに具備することを特徴とする請求項1から請求項3のいずれか1項に記載の文字認識装置。
  5. 前記収集部は、ユーザが所属する組織および従事する分野の少なくとも1つで利用される文書を示す特定ドメイン文書からテキストデータを収集することを特徴とする請求項4に記載の文字認識装置。
  6. 前記推定部は、前記レイアウトに基づいて入力される可能性のある文字の種別を推定することを特徴とする請求項1から請求項5のいずれか1項に記載の文字認識装置。
  7. 前記ブロックは、行、図表および箇条書きを含むテキストのレイアウトから抽出されることを特徴とする請求項1から請求項6のいずれか1項に記載の文字認識装置。
  8. 前記優先文字は、行頭に付される記号である行頭文字と単語とを含むことを特徴とする請求項1から請求項7のいずれか1項に記載の文字認識装置。
  9. 前記辞書生成部は、ユーザによりテキストに記入された記号および罫線を含むマーキングを、前記行頭文字および前記単語の区切りの手がかりとすることを特徴とする請求項8に記載の文字認識装置。
  10. ユーザが作成するテキストデータおよび該ユーザが利用するテキストデータの少なくとも1つから文字を抽出し、抽出した文字を優先文字として登録するユーザ辞書を生成し、
    認識処理の対象となるテキストである処理対象テキストのレイアウトおよび該処理対象テキストに付されるマーキングに関するマーキング情報の少なくともどちらか一方に基づいて、文字間の区切りを推定し、
    前記処理対象テキストの前記レイアウトを構成するブロックに含まれる文字列に関して、前記文字間の区切りに基づき、ストロークで表される文字セグメントを推定し、該文字セグメントと該文字セグメント間の経路とにより形成されるラティス構造を生成し、
    前記ラティス構造の中で、前記優先文字に該当する経路が存在する場合、該優先文字となる経路を探索することにより文字認識結果を得ることを特徴とする文字認識方法。
  11. コンピュータを、
    ユーザが作成するテキストデータおよび該ユーザが利用するテキストデータの少なくとも1つから文字を抽出し、抽出した文字を優先文字として登録するユーザ辞書を生成する辞書生成手段と、
    認識処理の対象となるテキストである処理対象テキストのレイアウトおよび該処理対象テキストに付されるマーキングに関するマーキング情報の少なくともどちらか一方に基づいて、文字間の区切りを推定する推定手段と、
    前記処理対象テキストの前記レイアウトを構成するブロックに含まれる文字列に関して、前記文字間の区切りに基づき、ストロークで表される文字セグメントを推定し、該文字セグメントと該文字セグメント間の経路とにより形成されるラティス構造を生成するラティス生成手段と、
    前記ラティス構造の中で、前記優先文字に該当する経路が存在する場合、該優先文字となる経路を探索することにより文字認識結果を得る探索手段と、して機能させるための文字認識プログラム。
JP2012213199A 2012-09-26 2012-09-26 文字認識装置、方法およびプログラム Pending JP2014067303A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2012213199A JP2014067303A (ja) 2012-09-26 2012-09-26 文字認識装置、方法およびプログラム
PCT/JP2013/076166 WO2014051015A1 (en) 2012-09-26 2013-09-19 Character recognition apparatus, method and program
CN201380050494.8A CN104685514A (zh) 2012-09-26 2013-09-19 字符识别设备、方法和程序
US14/668,853 US20150199582A1 (en) 2012-09-26 2015-03-25 Character recognition apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012213199A JP2014067303A (ja) 2012-09-26 2012-09-26 文字認識装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2014067303A true JP2014067303A (ja) 2014-04-17

Family

ID=49510469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012213199A Pending JP2014067303A (ja) 2012-09-26 2012-09-26 文字認識装置、方法およびプログラム

Country Status (4)

Country Link
US (1) US20150199582A1 (ja)
JP (1) JP2014067303A (ja)
CN (1) CN104685514A (ja)
WO (1) WO2014051015A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9977976B2 (en) * 2016-06-29 2018-05-22 Konica Minolta Laboratory U.S.A., Inc. Path score calculating method for intelligent character recognition
CN110533020B (zh) * 2018-05-25 2022-08-12 腾讯科技(深圳)有限公司 一种文字信息的识别方法、装置及存储介质
CN109871910B (zh) * 2019-03-12 2021-06-22 成都工业学院 一种手写字符识别方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07271918A (ja) * 1994-04-01 1995-10-20 Nippon Steel Corp 手書き文字認識ユーザ辞書作成方法および装置
JPH09185674A (ja) * 1995-12-28 1997-07-15 Omron Corp 誤認識文字検出装置、誤認識文字訂正装置、誤認識文字検出方法、および、誤認識文字訂正方法
JP2010015502A (ja) * 2008-07-07 2010-01-21 Sharp Corp 情報処理装置、その制御方法、制御プログラム、および記録媒体

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3167500B2 (ja) * 1993-05-19 2001-05-21 富士通株式会社 手書き情報入力処理方式
US6651221B1 (en) * 1993-05-20 2003-11-18 Microsoft Corporation System and methods for spacing, storing and recognizing electronic representations of handwriting, printing and drawings
JP2002259912A (ja) 2001-02-26 2002-09-13 Mitsubishi Electric Corp オンライン文字列認識装置及びオンライン文字列認識方法
JP2006065477A (ja) * 2004-08-25 2006-03-09 Fuji Xerox Co Ltd 文字認識装置
JP2006092097A (ja) 2004-09-22 2006-04-06 Sumitomo Electric Ind Ltd 車両感知装置
JP2007141159A (ja) * 2005-11-22 2007-06-07 Fuji Xerox Co Ltd 画像処理装置、画像処理方法、及び画像処理プログラム
KR20080055119A (ko) * 2006-12-14 2008-06-19 삼성전자주식회사 화상형성장치 및 그 제어방법
CN101930545A (zh) * 2009-06-24 2010-12-29 夏普株式会社 手写识别方法和设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07271918A (ja) * 1994-04-01 1995-10-20 Nippon Steel Corp 手書き文字認識ユーザ辞書作成方法および装置
JPH09185674A (ja) * 1995-12-28 1997-07-15 Omron Corp 誤認識文字検出装置、誤認識文字訂正装置、誤認識文字検出方法、および、誤認識文字訂正方法
JP2010015502A (ja) * 2008-07-07 2010-01-21 Sharp Corp 情報処理装置、その制御方法、制御プログラム、および記録媒体

Also Published As

Publication number Publication date
US20150199582A1 (en) 2015-07-16
WO2014051015A1 (en) 2014-04-03
CN104685514A (zh) 2015-06-03

Similar Documents

Publication Publication Date Title
JP5424001B2 (ja) 学習データ生成装置、固有表現抽出システム、学習データ生成方法、及びプログラム
Bharath et al. HMM-based lexicon-driven and lexicon-free word recognition for online handwritten Indic scripts
Fernández-Mota et al. Bh2m: The barcelona historical, handwritten marriages database
CN111340020B (zh) 一种公式识别方法、装置、设备及存储介质
US10963717B1 (en) Auto-correction of pattern defined strings
Singh et al. OCR++: a robust framework for information extraction from scholarly articles
Layton et al. Recentred local profiles for authorship attribution
Clausner et al. ICDAR2019 competition on recognition of early Indian printed documents–REID2019
JP2014182477A (ja) プログラム及び帳票処理装置
US8527516B1 (en) Identifying similar digital text volumes
JP7149721B2 (ja) 情報処理装置、文字認識エンジン最適化方法及びプログラム
JP2019169025A (ja) 情報処理装置、文字認識エンジン選択方法及びプログラム
WO2007094078A1 (ja) 文字列検索方法およびその装置
US11037062B2 (en) Learning apparatus, learning method, and learning program
JP2014215911A (ja) 注目領域推定装置、方法およびプログラム
JP2014067303A (ja) 文字認識装置、方法およびプログラム
JP7040155B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2018116701A (ja) 印鑑画像の処理装置、方法及び電子機器
JP2011238159A (ja) 計算機システム
KR102355731B1 (ko) 해석 프로그램, 해석 방법 및 해석 장치
JP6648421B2 (ja) 文書を処理する情報処理装置、情報処理方法、およびプログラム
JP2022095391A (ja) 情報処理装置、及び情報処理プログラム
US9910846B2 (en) Conversion device and conversion method
JP2009020567A (ja) 文書検索装置
JP2018063597A (ja) 文字認識装置、文字認識方法、文字認識プログラム、および帳票

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150828

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160322