JP3893013B2 - Character recognition method, computer-readable recording medium on which character recognition program is recorded, and character recognition device - Google Patents

Character recognition method, computer-readable recording medium on which character recognition program is recorded, and character recognition device Download PDF

Info

Publication number
JP3893013B2
JP3893013B2 JP2000167953A JP2000167953A JP3893013B2 JP 3893013 B2 JP3893013 B2 JP 3893013B2 JP 2000167953 A JP2000167953 A JP 2000167953A JP 2000167953 A JP2000167953 A JP 2000167953A JP 3893013 B2 JP3893013 B2 JP 3893013B2
Authority
JP
Japan
Prior art keywords
character
input
recognition
correction
display
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.)
Expired - Lifetime
Application number
JP2000167953A
Other languages
Japanese (ja)
Other versions
JP2001351065A (en
Inventor
正樹 中川
宏和 坂東
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.)
Japan Science and Technology Agency
National Institute of Japan Science and Technology Agency
Original Assignee
Japan Science and Technology Agency
National Institute of Japan Science and Technology Agency
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 Japan Science and Technology Agency, National Institute of Japan Science and Technology Agency filed Critical Japan Science and Technology Agency
Priority to JP2000167953A priority Critical patent/JP3893013B2/en
Publication of JP2001351065A publication Critical patent/JP2001351065A/en
Application granted granted Critical
Publication of JP3893013B2 publication Critical patent/JP3893013B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Character Discrimination (AREA)
  • User Interface Of Digital Computer (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、文字認識方法、文字認識プログラムを記録したコンピュータ読み取り可能な記録媒体及び文字認識装置に係り、特に、キーボードを使用せず、記入枠なしで手書き入力された文字(文字列)を認識すると共に、この認識された文字(文字列)の修正を簡単に行うことのできる文字認識方法、文字認識プログラムを記録したコンピュータ読み取り可能な記録媒体及び文字認識装置に関する。
【0002】
【従来の技術】
近年、表示装置を備えたコンピュータに文字を入力する際、キーボードを使用せず、マウス、タブレット等の適宜の卓上型のディジタイザ(座標読み取り装置)を使用して、設定された枠内に手書き入力を行い、この手書き入力された文字を文字認識する方法が知られている。ここで、手書き入力とは、ストローク入力とも呼ばれ、例えば、文字入力、描画の一筆、2点間の描線等、表現し得る文字や線等の入力をいう。
この方法によれば、キーボード操作に不慣れな人々でも、コンピュータ等の表示装置上に所望の文字を入力し、種々の文章を作成することができるようになる。
【0003】
【発明が解決しようとする課題】
しかしながら、従来の方法では、コンピュータのアプリケーション(応用ソフト)によっては、予め1文字ごとに記入すべき枠が設定されている場合があった。このような場合、使用者(ユーザ)が手書き入力をする際、記入位置がその枠内に限定され、書きにくくなったり、また、文字を一つの枠内に対して1文字しか手書き入力できないので、ユーザが連続した文章を作成する際、時間と手間が必要となったりすることが想定された。
【0004】
上述の事項を防止するためには、予め枠を設定しない、いわゆる「枠なし」文字認識を提案すればよい。しかしながら、例えば、コンピュータに備えられたディスプレイ等の表示装置に、手書き入力文字に対する文字認識結果を表示する場合、手書き文字の上に、手書き文字と交換して文字認識結果を表示すると、誤認識が起こった場合に何を書いたのかが分からなくなる。また、文字認識の結果、各文字の区切り位置が間違っていた場合(例えば、1文字を2文字として認識したり、逆に2文字を1文字として認識する等)、正しい区切り位置を示すために元パターンを再表示する操作が必要になり面倒となる。さらに、認識結果を手書き文字から離れた位置に表示すると、ユーザは、認識結果の確認や訂正の度に視線を動かさなくてはならなくなり、効率が悪くなる。
【0005】
本発明は、以上の点に鑑み、枠なしで手書き入力された文字に対する文字認識及び認識の訂正を容易に行うことを目的とする。
例えば、本発明は、枠なしで手書き入力され、文字認識された文字に対して、複数の認識文字をひとつの入力文字として訂正することを目的とする。また、本発明は、枠なしで手書き入力され、文字認識された文字に対して、ひとつの認識文字を複数の入力文字として訂正することを目的とする。
【0006】
また、本発明は、認識結果の近傍に候補文字を表示し、正しい候補文字が選択されることで認識文字を訂正することを目的とする。また、本発明は、もとの手書き入力文字を消去し、新たに入力された手書き入力文字に対して、再び文字認識を行うことにより訂正することを目的とする。
【0007】
また、本発明は、Viterbi アルゴリズムを適用して、候補文字を探索することを目的とする。さらに、本発明は、訂正された手書き入力文字よりも前方の認識結果を確定した後、訂正された手書き入力文字よりも後方の手書き入力文字のみを再探索することにより、文字認識及び認識の訂正を効率よく行うことを目的とする。
【0008】
【課題を解決するための手段】
本発明の第1の解決手段によると、
枠なしで手書き入力された入力文字と、入力文字の認識結果とを表示する表示ステップと、
前記表示ステップにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断ステップと、
前記位置判断ステップにより、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定ステップと、
前記判定ステップに基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び文字認識を行うための訂正認識ステップとを含む文字認識方法及び文字認識プログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
【0009】
本発明の第2の解決手段によると、
枠なしで手書き入力された入力文字と、入力文字の認識結果とを表示するアプリケーションと、
認識結果の表示及び誤認識の訂正を行うための表示・訂正モード処理部と、
文字認識を行う認識エンジンとを備え、
前記表示・訂正モード処理部は、
前記アプリケーションにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断手段と、
前記位置判断手段により、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定手段と、
前記判定手段に基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び前記認識エンジンにより文字認識を行うための訂正認識手段と
を備えた文字認識装置を提供する。
【0010】
【発明の実施の形態】
以下、図面を用いて本発明の実施の形態を詳細に説明する。
図1は、本発明に関する枠なし手書き文字認識装置を適用した文字認識システムの概略構成図である。
文字認識システム1は、例えば、ユーザ2、枠なし手書き文字(文字列)の認識コントロール部10、アプリケーション3及び枠なし手書き文字列の認識エンジン部4を備える。認識コントロール部10は、例えば、手書き文字列を入力する「手書き文字入力モード」の処理を行う手書き文字の入力モード処理部11と、認識結果の表示及び誤認識の訂正を行う「認識結果表示・訂正モード」の処理を行う表示・訂正モード処理部12を備える。
【0011】
ユーザ2は、枠なしで手書き文字列を入力し、手書き文字列の認識を実行するための指示を、入力モード処理部11に出力する。この手書き文字列の認識を実行するための指示は、アプリケーション3から任意のタイミングで入力モード処理部11に出力することもできる。また、アプリケーション3は、認識字種の設定(平仮名・片仮名・漢字・・・)を、入力モード処理部11に出力する。手書き文字列の認識を実行するための指示を受けた入力モード処理部11は、入力された手書き文字列と認識字種の設定を、認識エンジン部4に出力する。認識エンジン部4は、この手書き文字列を認識すると共に、この認識結果を、認識コントロール部10に出力する。認識コントロール部10は、この認識結果を、アプリケーション3上に表示する。
【0012】
一方、アプリケーション3上に表示された文字列が誤認識であると、ユーザによって判断された場合、ユーザ2は、誤認識された文字列を訂正するための指示(誤認識訂正指示)を、表示・訂正モード処理部12に出力する。この指示を受けた表示・訂正モード処理部12は、アプリケーション3上に表示された認識結果を訂正するための命令(結果訂正命令)を、認識エンジン部4に出力する。認識エンジン部4は、誤認識された文字列を再認識すると共に、この訂正された認識結果を、再び表示・訂正モード処理部12に出力する。表示・訂正モード処理部12は、上述したように、認識結果を再びアプリケーション3上に表示する。この認識結果が正しいならば、認識処理を終了し、誤認識であれば、ユーザ2は、再び、誤認識された文字列を訂正するための指示を、表示・訂正モード処理部12に出力する。
【0013】
図2は、本発明に関する文字認識方法のフローチャートである。なお、説明の便宜上、ここでのフローチャートの説明は、概略的なものとし、具体的な説明は後述する。
まず、枠のない表示画面上に、手書き文字列が、例えば、マウス、電子ペン等のポインティングデバイスを用いたユーザにより入力(例えば、ペンダウン入力)される(S101)。次に、処理モードが手書き文字入力モードか認識結果表示・訂正モードかを判定する(S103)。この2つのモードを判定する基準としては、例えば、表示画面上に何も入力されていなければ、手書き文字入力モードであり、一方、手書き文字列が既に入力されているならば、認識結果表示・訂正モードと判定するか、又は、この2つのモードを、図示しないモード切替えボタン等で表示させたり、ポインティングデバイスによる指示等により、この2つのモードをユーザに切替えさせるようにしてもよい。手書き文字入力モードであれば、ストローク入力(ここでは、ある文字又は文字列についてペンダウン入力の開始から終了までをいう)された手書き文字を文字認識する(S105)。
【0014】
つぎに、ステップS105により文字認識された認識結果を、表示画面上に表示する(S121)。このとき、認識結果は、手書き入力文字と、その外接矩形とともに表示される。この表示された認識結果が正しいかどうかを、ユーザが判定し(S123)、表示された認識結果が正しいならば処理を終了し、正しくなければ、再び、ステップS101に戻る。
【0015】
一方、ステップS103で表示・訂正モードであると判定された場合、認識された各々の文字の区切り位置を示す外接矩形を求め、ペンダウン入力された位置が、例えば、外接矩形の外側か内側かを判定する(S107、なお、詳細は後述する)。また、ステップS107でペンダウン入力された位置が外接矩形の外側にあれば、このストローク入力によって描かれた描線が「区切り」か「囲み」かを判定する(S109)。ここで、「区切り」というのは、本来複数の文字に分割されるべき手書き文字列が1文字に誤認識された場合、この誤認識された1文字を、この文字の外接矩形の外側から複数の文字分の手書き文字として区切ることをいう。一方、「囲み」は、本来1文字として認識されるべき手書き文字が2文字以上に誤認識された場合、この誤認識された2文字以上の文字を、この文字の外接矩形の外側から1文字分の手書き文字として囲むことをいう(詳細は後述する)。この描線が区切りである場合、後述する区切りによる訂正処理及び文字認識を行う(S111)。また、この描線が囲みである場合、後述する囲みによる訂正処理及び文字認識を行う(S113)。
【0016】
一方、ステップS107でペンダウン入力された位置が外接矩形の内側にあれば、例えば、このペンダウン入力が、所定の長さより短いか(又は、所定時間より短時間の操作か)どうかを判定する(S115)。短ければ(又は、短時間の操作であれば、)、候補文字を表示すると共に、この候補文字の中に正しい文字があれば、この正しい候補文字がユーザにより選択される(S117)。また、ステップS115で、マウスの左クリック(又は中クリック等)、あるいは、ペンダウン入力が、所定の長さより長い(又は、所定の時間より長時間の操作)場合、単文字の入力と判定し、外接矩形の内側に再入力された単文字について、文字認識を行う(S119)。なお、ステップS111、ステップS113、ステップS117及びステップS119により文字認識又は選択された結果に対する処理は、上述したステップS105の後の処理(ステップS121、S123)と同様の処理が実行される。また、ステップS115では、ペンダウン入力の長さ又は時間で次の処理(ステップS117又はS119)を分岐する以外にも、例えば、マウスの他のクリック操作、図示しないキーボード上のボタン等による他の所定の操作で、後の処理を分岐するようにしてもよい。なお、上述のような主に電子ペンを用いた操作の他にも、トラックボール、マウス、キーボード等の適宜の入力装置を用いて操作するようにしてもよい。
【0017】
以下、上述のフローチャートの各ステップの処理について詳細に説明する。
(ステップS101について)
【0018】
図3は、本発明に関する文字認識プログラムを開始した際の表示画面についての説明図である。
認識コントロール部10は、ユーザによって枠のない表示画面上で入力された手書き文字列を認識するための「文字認識プログラム」を実行し、例えば、コンピュータに備えられたディスプレイ等の表示装置上に入出力画面を表示し、また、手書き文字列の入力、枠なし文字列認識の実行及び誤認識の訂正等の操作を、ユーザが視覚的かつ容易に行うためのものである。この表示画面には、枠のない入出力表示画面101、認識結果表示画面102及び機能入力部103が表示される。機能入力部103は、複数の機能に対応し、認識対象である手書き入力文字に対して、例えば、クリックして適宜の指示を実行すれば、手書き入力文字に対して最適な操作を行うように配置されている。機能入力部103は、例えば、認識ボタン、入力終了ボタン、送信ボタン、1画削除ボタン、SPCボタン、改行ボタン、BSボタン、全消去ボタン、認識取消ボタン、最小化ボタン、矢印で表されたスクロールボタンと、認識対象となる文字種「英字・数字・漢字・平仮名・片仮名・その他」をそれぞれ任意に選択するためのチェック・ボックス等を備える。
【0019】
図4は、手書き文字列の入力に関する説明図である。
ユーザは、「手書き文字入力モード」において、例えば、マウスや電子ペンで、枠のない表示画面上に手書き文字を入力する(例えば、図4(A)は日本語、図4(B)は英語の例をそれぞれ示す。)。なお、手書き文字を入力する際、表示手段を備えたコンピュータを使用するのであれば、マウスや電子ペンだけでなく、図形データの入力やCG(コンピュータグラフィックス)を描くときに使われる、タブレット等の適宜の卓上型のディジタイザ(座標読み取り装置)等のポインティングデバイスも適用可能である。また、マウスは、例えば、左クリック用ボタン、右クリック用ボタン、場合によっては、さらに、中クリック用ボタンを備え、マウスのどのボタンに又は適宜のポインティングデバイスによる適宜の指示に、後述する各操作の開始合図の機能を持たせるかは、適宜変更することができる。また、手書き文字入力モードでは、誤った入力を訂正できるようにするために、例えば、最後に入力した画から順番に1画ずつ削除していく機能と、すべての入力を一括して削除する機能とを備える。
【0020】
図5は、画面のスクロールに関する説明図である。
入力したい文字列を画面内に書ききれなかった場合には、例えば、画面をスクロールさせることで、所望の文字列を全て入力することができる(例えば、図5(A)は日本語、図5(B)は英語の例をそれぞれ示し、これらは、図4(A)(B)の表示画面のさらに下方にスクロールさせた例である。)。
【0021】
(ステップS105について)
図6は、手書き文字列の認識の説明図である。
ユーザによる手書き文字列の入力が終了した場合(ストローク入力が終了)、ユーザが、例えば、右クリック等の適宜の操作を行うことで表示される4つのメニューの中から「認識」を選択するか、又は、アプリケーション上の画面上に表示されているツールバーの中から「認識」ボタンを選択すること等により、手書き文字列の認識を実行するための指示がなされる。この文字認識装置は、この指示に基づいて、枠なし文字列認識を開始する(例えば、図6(A)は日本語、図6(B)は英語の例をそれぞれ示す。)。
【0022】
図7及び8は、認識結果の表示例(1)及び(2)である。
画面上に表示される認識結果は、例えば、各文字の区切り位置を示す外接矩形と、この外接矩形内に表示される各文字の認識結果とで示される(例えば、図7(A)は日本語、図7(B)は英語の例をそれぞれ示す。)。なお、この例では、外接矩形を表示したが、外接矩形があると思われる領域である外接矩形領域を想定し、外接矩形を表示しないようにしてもよい。また、手書き文字が英文の場合には、英文字単位の認識だけではなく、図8のように、英単語単位の認識も可能である。この場合、例えば、近接している各文字をひとつの単語として区切り、認識エンジン部4等に格納された単語辞書中の候補を検索することで、認識することができる。なお、枠の表示はオプションであって、ユーザの好みに応じて、枠を表示しないようにもできる。また、認識結果が表示された段階では、もとの手書き文字パターンの色や濃さ、ドットパターン等を変えて表示し、認識結果が後述する各種操作の対象であることを強調したり、もとの手書き文字に対する書き直しはいつでも行えるようにすることもできる。なお、標準状態では、認識対象は全字種であるが、「英字・数字・漢字・平仮名・片仮名・その他」の字種から、1つ又は複数の任意の字種を認識対象とするように設定することもできる。
【0023】
図9は、認識結果の表示例(3)である。
認識された通常の大きさの文字の色を、例えば、青色で表示し、一方、促音などの小さい文字の色を、例えば、緑色で表示する等、通常の大きさの文字と小さい文字との色を変えて表示することで、通常の大きさの文字、例えば、「や、ゆ、よ」と促音などの小さい文字「ゃ、ゅ、よ」とを、認識結果から容易に判別できるようにすることもできる(例えば、図9(A)(B)(C)は通常の大きさの文字、図9(D)(E)(F)は促音などの小さい文字の例をそれぞれ示す。)。
【0024】
(ステップS111について)
図10は、区切りによる区切り位置の訂正についての説明図である。
まず、本来複数の文字に分割されるべき手書き文字列(例えば、「お」「け」)が、図10(A)のように、1文字(例えば、「列」)として誤認識された場合を想定する。この場合、図10(B)のように、外接矩形領域の外側から区切り線を引くことにより、「列」は、図10(C)のように、「お」「け」に訂正される。また、本来複数の文字に分割されるべき手書き文字列(例えば、「o」「f」)が、図10(D)のように、1文字(例えば、「H」)として誤認識された場合、図10(E)のように、外接矩形領域の外側から区切り線を引くことにより、「H」は、図10(F)のように、「o」「f」に訂正される。
【0025】
(ステップS113について)
図11は、囲みによる区切り位置の訂正についての説明図である。
まず、本来1文字として認識されるべき手書き文字、例えば、「枠」が、図11(A)上段のように、2文字以上(例えば、「木」と「中」)として誤認識された場合を想定する。この場合には、この「木」と「中」とを、図11(B)のように、外接矩形又は外接矩形領域の外側から1文字分の手書き文字として囲むことにより、「木」及び「中」は、図11(C)のように、「枠」に訂正される。
【0026】
また、本来1文字として認識されるべき手書き文字、例えば、「Y」が、図11(D)のように、2文字以上(例えば、「e」と「S」)として誤認識された場合には、この「e」と「S」とを、図11(E)のように、外接矩形又は外接矩形領域の外側から1文字分の手書き文字として囲むことにより、「e」及び「S」は、図11(F)のように、「Y」に訂正される。
【0027】
図12は、囲みの判別についての説明図である。
手書き文字列を構成する点が、囲み線の中にアプリケーションで予め設定した割合以上含まれている場合、この手書き文字列は、囲まれていると判別される。例えば、図12(A)のような手書き文字の「し」は、内部的には図12(B)のように点の集まりとして記録されている(囲み線も内部的には点の集まりとして記録されている)。アプリケーション側で、例えば、80%以上の点が囲み線の中に含まれている場合、その線を囲まれているものとみなすように設定すると、図12(C)のように囲まれた場合には、8点中7点(87.5%)の点が囲みの中に入っているため、「し」は囲まれたものと判定される。逆に、図12(D)のように囲まれた場合には、8点中6点(75%)の点しか囲みの中に入っていないため、「し」は囲まれていないものと判定する。
【0028】
(ステップS109について)
図13は、囲みと区切りの判別処理に関する説明図である。
ここでは、囲み線又は区切り線の外接矩形を規定する。すなわち、外接矩形は、2通りあることになる(囲み線又は区切り線と、手書き入力文字との外接矩形)。図13(A)は、横幅(X座標)の方が大きい外接矩形に対して、ユーザが適宜の描線(囲み又は区切り)を描くときの幾何学的な説明図である。まず、囲み又は区切り線(図中、実線)の外接矩形(図中、破線)の横幅をCX、縦幅をCYとする。ここでは、CX>CYであり、ユーザによる囲み又は区切り線の始点及び終点(図中、白抜き円)のX座標の差X(図中、二点鎖線)が「X≦CX×n」であれば、囲みと判定され(図中、右側)、一方、「X>CX×n」であれば、区切りと判定される(図中、左側)。また、「n」は、アプリケーションで予め設定された比率であり、0≦n≦1.0(但し、通常、0.7程度)である。
【0029】
図13(B)は、縦幅(Y座標)の方が大きい外接矩形に対して、ユーザが適宜の描線(囲み又は区切り)を描くときの幾何学的な説明図である。まず、囲み又は区切り線(図中、実線)の外接矩形(図中、破線)の横幅をCX、縦幅をCYとする。ここでは、CX≦CYであり、ユーザによる囲み又は区切り線の始点及び終点(図中、白抜き円)のY座標の差Y(図中、二点鎖線)が「Y≦CY×n」であれば、囲みと判定され(図中、右側)、一方、「Y>CY×n」であれば、区切りと判定される(図中、左側)。
【0030】
図14は、囲みと区切りの判別処理についてのフローチャートである。
まず、囲み線又は区切り線の外接矩形を求め、その外接矩形の横幅(X座標で表す)と縦幅(Y座標で表す)では、どちらが大きいかを判定する(S201)。次に、横幅の方が大きい場合、「始点と終点のX座標の差≦外接矩形の横幅×n」で有るか否かを判定する(S203)。この「始点と終点のX座標の差≦外接矩形の横幅×n」という計算式は、「ユーザの囲んだ線の口の大きさが、手書き入力文字の外接矩形の横幅よりだいぶ小さいならば囲みであり、そうでなければ、区切り」という意味を表している。ステップS203で、ユーザの囲んだ線の口の大きさが、手書き入力文字の外接矩形の横幅と比べ予め設定された割合(外接矩形のn×100%)より小さい場合(例えば、30%未満)は、囲みと判定される。また、ユーザの囲んだ線の口の大きさが、手書き入力文字の外接矩形の横幅より小さくはない、つまり、始点と終点の座標差が、外接矩形のn×100%以上離れている場合は、区切りと判定される。
【0031】
一方、ステップS201で、外接矩形の横幅と縦幅とでは、縦幅の方が大きい場合、「始点と終点のY座標の差≦外接矩形の縦幅×n」で有るか否かを判定する(S205)。この計算式は、上述した計算式に対して座標軸(Y座標:縦幅)が異なるだけであり、説明を省略する。ステップS205で、ユーザの囲んだ線の口の大きさが、手書き入力文字の外接矩形の縦幅と比べ予め設定された割合(外接矩形のn×100%)より小さい場合は、囲みと判定される。また、ユーザの囲んだ線の口の大きさが、手書き入力文字の外接矩形の縦幅と比べ予め設定された割合(外接矩形のn×100%)より小さくはない場合は、区切りと判定される。
【0032】
次に、ユーザによって描かれた区切り線の位置を具体的に判別するための処理を説明する。
図15は、外接矩形による判別についての説明図である。
区切り線(図中、実線)の位置の判別は、認識結果1文字分(例えば、「あ」)ごとに、区切り線に追加線を加えて1文字の範囲領域に変換し、変換された1文字の範囲領域で文字認識を行えばよい。まず、具体的には、認識結果(図中、「あ」)の外接矩形領域(図中、点線)と、区切り線の外接矩形(図中、二点鎖線)とが重なるかどうかを判別する。図15(A)のように両者が重ならない場合には、区切られていないものとして、後述する処理を省略する。すなわち、明らかに区切り線と関係ない手書き文字(図15(A)での「あ」)に対する処理を省略することにより、処理時間を短縮することができる。一方、図15(B)のように、上述の両者が重なっている場合、後述する処理を行う。
【0033】
図16は、区切り方向の判別についての説明図である。
次に、区切り線の外接矩形の横幅と縦幅とを比較し、図16(A)のように縦幅の方が長い場合(縦幅>横幅)、ユーザの描いた描線は、縦方向の区切りと判別され、一方、図16(B)のように横幅の方が長い場合(縦幅<横幅)、横方向の区切りと判別される。
【0034】
図17は、区切りに基づいて文字の区切り位置、範囲領域を定める場合についての説明図である。
図17(A)(B)(C)は、縦方向の区切り(例えば、3パターン)に基づいて、文字の区切り位置を定める場合についての説明図である。図17(A)では、ユーザによって上から下に描かれた区切り線(図中、実線)の終点と、この終点を区切り線の外接矩形の縦方向に延長し、認識結果の外接矩形と接する点「17a」と、認識結果の外接矩形の左下の頂点「17b」と、区切り線の始点「17d」と、この始点を区切り線の外接矩形の横方向に延長した際、認識結果の外接矩形の延長された縦方向の一辺と交わった点「17c」とをそれぞれ追加線(図中、太線)で結ぶことで、この縦方向の区切り線に基づいて文字の区切り位置を定めると共に、この区切り線に追加線を加えた状態を1文字の範囲領域とし、この1文字の範囲領域で文字認識を行う。
【0035】
また、図17(B)では、区切り線の終点と、この終点を区切り線の外接矩形の横方向に延長した際、認識結果の外接矩形の延長された縦方向の一辺と交わった点「17a」と、区切り線の始点「17c」と、この始点を区切り線の外接矩形の横方向に延長した際、認識結果の外接矩形の延長された縦方向の一辺と交わった点「17b」とをそれぞれ追加線(図中、太線)で結ぶことで、この縦方向の区切り線に基づいて文字の区切り位置を定めると共に、この区切り線に追加線を加えた状態を1文字の範囲領域とし、この1文字の範囲領域で文字認識を行う。
【0036】
図17(C)では、区切り線の終点と、この終点を区切り線の外接矩形の縦方向に延長した際、認識結果の外接矩形の横方向の一辺と交わった点「17a」と、認識結果の外接矩形の左下の頂点「17b」と、認識結果の外接矩形の左上の頂点「17c」と、区切り線の始点「17e」と、この始点を区切り線の外接矩形の縦方向に延長した際、認識結果の外接矩形の延長された横方向の一辺と交わった点「17d」とをそれぞれ追加線(図中、太線)で結ぶことで、この縦方向の区切り線に基づいて文字の区切り位置を定めると共に、この区切り線に追加線を加えた状態を1文字の範囲領域とし、この1文字の範囲領域で文字認識を行う。
【0037】
図17(D)(E)(F)は、横方向の区切り(例えば、3パターン)に基づいて、文字の区切り位置を定める場合についての説明図である。図17(D)では、ユーザによって左から右に描かれた区切り線(図中、実線)の終点と、この終点を区切り線の外接矩形の横方向に延長し、認識結果の外接矩形と接する点「17a」と、認識結果の外接矩形の右上の頂点「17b」と、区切り線の始点「17d」と、この始点を区切り線の外接矩形の縦方向に延長した際、認識結果の外接矩形の延長された横方向の一辺と交わった点「17c」とをそれぞれ追加線(図中、太線)で結ぶことで、この横方向の区切り線に基づいて文字の区切り位置を定めると共に、この区切り線に追加線を加えた状態を1文字の範囲領域とし、この1文字の範囲領域で文字認識を行う。
【0038】
また、図17(E)では、区切り線の終点と、この終点を区切り線の外接矩形の縦方向に延長した際、認識結果の外接矩形の延長された横方向の一辺と交わった点「17a」と、区切り線の始点「17c」と、この始点を区切り線の外接矩形の縦方向に延長した際、認識結果の外接矩形の延長された横方向の一辺と交わった点「17b」とをそれぞれ追加線(図中、太線)で結ぶことで、この横方向の区切り線に基づいて文字の区切り位置を定めると共に、この区切り線に追加線を加えた状態を1文字の範囲領域とし、この1文字の範囲領域で文字認識を行う。
【0039】
図17(F)では、区切り線の終点と、この終点を区切り線の外接矩形の横方向に延長した際、認識結果の外接矩形の縦方向の一辺と交わった点「17a」と、認識結果の外接矩形の右上の頂点「17b」と、認識結果の外接矩形の左上の頂点「17c」と、区切り線の始点「17e」と、この始点を区切り線の外接矩形の横方向に延長した際、認識結果の外接矩形の延長された縦方向の一辺と交わった点「17d」とをそれぞれ追加線(図中、太線)で結ぶことで、この横方向の区切り線に基づいて文字の区切り位置を定めると共に、この区切り線に追加線を加えた状態を1文字の範囲領域とし、この1文字の範囲領域で文字認識を行う。なお、図17は、区切り線が、上から下、または左から右へ描かれた場合の例であるが、区切り線が、下から上、または右から左へ描かれた場合には、点列を逆にして同様の処理を行えばよい。
【0040】
つぎに、Viterbi アルゴリズムを適用し、文字列を探索する処理について述べる。
図18は、誤認識訂正処理のフローチャートである。
表示・訂正モード処理部12により、ユーザによる囲み線及び/又は区切り線が入力される(S301)。入力された囲み線又は区切り線による訂正位置に対して、前方部の候補文字ラティスを確定する(S303)。ここで、ラティスとは、前後の候補文字間をつなぐ経路のことである。前方部の候補文字ラティスが確定することで、訂正に矛盾する候補文字ラティスを削除する(S305)。次に、ある程度、制限された候補文字ラティスに対して、Viterbi アルゴリズムを適用し、候補文字ラティスを再探索する(S307)。この認識結果を、表示・訂正モード処理部12に出力する(S309)。
【0041】
以下、具体例を説明する。
図19は、誤認識訂正の過程についての説明図である。
ユーザが囲み線又は区切り線を用いて文字分割の訂正を行う場合、表示・訂正モード処理部12及び認識エンジン部4は、認識結果の訂正処理を行う。具体的には、現在の認識結果である文字区切りと候補文字に対して、文字区切りを訂正し、その訂正された部分について候補文字を挙げる。そして、候補文字の可能な経路を導き出す。さらに、訂正箇所より前方部分を確定し、訂正箇所に矛盾する部分を削除することによって、候補文字ラティス内の考えるべき経路を制限する。この候補文字ラティスにViterbiアルゴリズムを適用することで、文字認識、文字区切り、文字列としてのつながりが総合的に評価され、最適な文字区切りと文字認識結果が得られる。
【0042】
図19(A)は、正しく認識されなかった手書き文字列と、そのときの候補文字ラティスの例である。例えば、「明日は」という手書き文字列が、誤った文字区切りである「日」、「月」及び「日は」で分割された結果、「日」、「月」及び「的」と誤認識されている(図中、網掛けの文字)。この場合、複数の候補文字としては、例えば、「日」に対しては「白」「日」、「月」に対しては「月」「白」、更に、この「日」及び「月」に対しては「朋」「明」、「は」に対しては「け」「は」、更に、「日」及び「は」に対しては「肘」「的」、更に、「月」及び「日」に対しては「胆」「昨」がそれぞれ認識された候補として挙げられ、これらの複数の候補文字に基づいて候補文字ラティスが導かれている。
【0043】
次に、この「日」及び「月」に対して、図19(B)のように、「日」及び「月」をひとつの文字として囲み線で囲むことで、区切りの訂正を行う。これにより、訂正に矛盾する候補文字、即ち、「日」に対する「白」「日」、「月」に対する「月」「白」、更に、「月」及び「日」に対する「胆」「昨」がそれぞれ候補文字から削除されると共に、訂正に矛盾する候補文字ラティスも削除される。図19(B)の太線で示されるように、この制限された候補文字ラティスにViterbiアルゴリズムを適用して、「確からしい」ものを選択すると、図19(C)のように、訂正後の認識結果、網掛けの文字をたどった「明」「日」「は」が得られる。
【0044】
ここで、Viterbiアルゴリズムについて説明する。ある手書き文字列が文字認識された際の認識結果は、文字区切りによる分割ごとにその「分割の確からしさ」、文字認識の候補ごとに「文字認識としての確からしさ」、そして、文字と文字の連続に「つながりの確からしさ」があり、文の先頭から最後までの候補をつなげる経路にそって、「文字認識としての確からしさ」、「分割の確からしさ」、「つながりの確からしさ」を加算していき、これらの総和が一番大きい経路を選択する。これを効率よく行うものとして、一例として、Viterbi アルゴリズムがある。この例では、「明」「日」「は」が一番確からしい経路として求められたことになる。
【0045】
図20は、誤認識訂正が波及する例についての説明図である。
囲みや区切り、あるいは、候補文字の選択や書き直しによって訂正がされると、それより前の文字区切り、文字認識を確定して、訂正以後の候補文字ラティスについて、Viterbi アルゴリズムが適用される。これにより、前方から誤分割・誤認識を訂正していくと、それに応じて、すでに訂正した部分は確定され、訂正より後方の誤分割や誤認識が自動的に訂正される可能性が増し、必要な訂正作業を少なくすることができる。具体的には、「明日は晴れるかな?」という手書き文字が、「明」「日」「は」「晴」「的」「か」「却」と誤分割・誤認識されていた場合、「的」の間を区切り線で分割する。これにより、「明日は晴」までの認識結果が確定すると共に、「的」は、「れ」「る」と訂正される。さらに、後方の誤認識された「却」も、Viterbi アルゴリズムによって、自動的に「な」「?」に訂正される。
【0046】
(ステップS115、S117について)
図21は、単文字ごとの誤認識訂正についての説明図である。
図21(A)(B)(C)のように、区切り位置は正しいが、単文字(日本語)の認識結果が間違っている場合(例えば、「文」を「六」と誤認識した場合)、ユーザは、間違っている文字の外接矩形領域内で、例えば、マウスの左クリック(又は中クリック)又はタップを行う。これにより、図21(B)のように、単文字ごとの認識候補一覧が表示される(例えば、「六」「欠」「文」「穴」「方」)。ユーザが、その一覧の中から、正しい認識結果である、「文」を選択することで、図21(C)のように認識結果が「文」に訂正される。また、図21(D)(E)(F)のように、区切り位置は正しいが、単文字(英語)の認識結果が間違っている場合(例えば、「T」を「J」と誤認識した場合)、ユーザは、間違っている文字の外接矩形領域内で、例えば、マウスの左クリック(又は中クリック)又はタップを行う。これにより、図21(E)のように、単文字ごとの認識候補一覧が表示される(例えば、「T」「f」「J」「I」「P」)。ユーザが、その一覧の中から正しい認識結果である、「T」を選択することで、図21(F)のように認識結果が「T」に訂正される。
【0047】
(ステップS119について)
図22は、単文字ごとの再入力についての説明図である。
まず、単文字ごとの認識候補は、類似度の高い順に何文字か表示されるため、手書き文字列があまりにも雑に書かれている場合や、くせのある文字の場合等、辞書に登録されて認識されるべき文字の形との類似度が低い場合には、正解候補の類似度が低くなり、上述の単文字ごとの認識候補一覧に正しい結果が含まれないことがある。この際、単文字ごとの再入力を行うと共に、認識結果の訂正を実行する。なお、認識候補内に正しい結果が含まれないのは、類似度が低すぎて候補に表示されないだけであり、正しい結果を示す文字が、必ずしも辞書に格納されていないわけではない。また、具体的には、図22(A)のように、「訂」が「託」と誤認識された場合、ユーザが、図22(B)のように、外接矩形領域の内側から再度その文字(例えば、「訂」)を手書き入力することで、「託」は、図22(C)のように「訂」と訂正される。また、例えば、図22(D)のように、「S」が「B」と誤認識された場合、ユーザが、図22(E)のように、外接矩形領域の内側から再度その文字(例えば、「S」)を手書き入力することで、「B」は、図22(F)のように「S」と訂正される。
【0048】
ここで、ステップS115におけるクリック(タップ)と再入力との判別は、例えば、マウス等のポインティングデバイスでのペンダウン位置からアップ位置までの移動距離が、予め設定されたしきい値(例えば、3ドット程度)未満であればクリック(タップ)、しきい値以上であれば再入力と判別する手法、又は、ペンダウンからアップまでの時間が予め設定されたしきい値以下であればクリック、以上であれば再入力と判別する手法等がある。また、外接矩形領域内でクリック(タップ)、又は再入力を行うことで、上述したステップS117及び119の処理が実行されるので、この外接矩形領域は、ユーザインタフェースのボタン等としての役割を果たすことにもなる。
【0049】
なお、本発明の文字認識方法は、文字認識プログラムを記録したコンピュータ読み取り可能な記録媒体、文字認識プログラムを含みコンピュータの内部メモリにロード可能なプログラム製品、文字認識プログラムを含みコンピュータが使用可能な記録媒体にストアされたプログラム製品等により提供されることができる。
【0050】
また、本発明では、文字を入力するユーザの癖をデータとして蓄積することで、認識精度を高めることもできる。この場合は、候補の優先度を、過去に選択されたデータで重み付けしたり、入力された文字が傾いている場合、その傾きを補正する処理等を予め実行することも可能である。
【0051】
【発明の効果】
本発明によると、以上説明した通り、枠なしで手書き入力された文字に対する文字認識及び認識の訂正を容易に行うことができる。
例えば、本発明によると、枠なしで手書き入力され、文字認識された文字に対して、複数の認識文字をひとつの入力文字として訂正することができる。また、本発明によると、枠なしで手書き入力され、文字認識された文字に対して、ひとつの認識文字を複数の入力文字として訂正することができる。
【0052】
また、本発明によると、認識結果の近傍に候補文字を表示し、正しい候補文字が選択されることで認識文字を訂正することができる。また、本発明によると、もとの手書き入力文字を消去し、新たに入力された手書き入力文字に対して、再び文字認識を行うことにより訂正することができる。
【0053】
また、本発明によると、Viterbi アルゴリズムを適用して、候補文字を探索することができる。さらに、本発明によると、訂正された手書き入力文字よりも前方の認識結果を確定した後、訂正された手書き入力文字よりも後方の手書き入力文字のみを再探索することにより、文字認識及び認識の訂正を効率よく行うことができる。
【図面の簡単な説明】
【図1】本発明に関する枠なし手書き文字認識装置を適用した文字認識システムの概略構成図。
【図2】本発明に関する文字認識方法のフローチャート。
【図3】本発明に関する文字認識プログラムを開始した際の表示画面についての説明図。
【図4】手書き文字列の入力に関する説明図。
【図5】画面のスクロールに関する説明図。
【図6】手書き文字列の認識の説明図。
【図7】認識結果の表示例(1)。
【図8】認識結果の表示例(2)。
【図9】認識結果の表示例(3)。
【図10】区切りによる区切り位置の訂正についての説明図。
【図11】囲みによる区切り位置の訂正についての説明図。
【図12】囲みの判別についての説明図。
【図13】囲みと区切りの判別処理に関する説明図。
【図14】囲みと区切りの判別処理についてのフローチャート。
【図15】外接矩形による判別についての説明図。
【図16】区切り方向の判別についての説明図。
【図17】区切りに基づいて文字の区切り位置、範囲領域を定める場合についての説明図。
【図18】誤認識訂正処理のフローチャート。
【図19】誤認識訂正の過程についての説明図。
【図20】誤認識訂正が波及する例についての説明図。
【図21】単文字ごとの誤認識訂正についての説明図。
【図22】単文字ごとの再入力についての説明図。
【符号の説明】
1 文字列認識システム
2 ユーザ
3 アプリケーション
4 認識エンジン部
10 認識コントロール部
11 入力モード処理部
12 表示・訂正モード処理部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a character recognition method, a computer-readable recording medium on which a character recognition program is recorded, and a character recognition apparatus, and in particular, recognizes characters (character strings) input by handwriting without using a keyboard without using a keyboard. In addition, the present invention relates to a character recognition method, a computer-readable recording medium on which a character recognition program is recorded, and a character recognition apparatus that can easily correct the recognized character (character string).
[0002]
[Prior art]
In recent years, when inputting characters into a computer equipped with a display device, handwriting input is performed within a set frame using an appropriate desktop digitizer (coordinate reading device) such as a mouse or tablet without using a keyboard. And a method for recognizing the handwritten character is known. Here, the handwriting input is also referred to as stroke input, and refers to input of characters and lines that can be expressed, such as character input, drawing stroke, and drawing lines between two points.
According to this method, even people who are unfamiliar with the keyboard operation can input desired characters on a display device such as a computer and create various sentences.
[0003]
[Problems to be solved by the invention]
However, in the conventional method, depending on the computer application (application software), a frame to be entered for each character may be set in advance. In such a case, when the user (user) performs handwriting input, the entry position is limited within the frame, and it becomes difficult to write, or only one character can be input by handwriting within one frame. It was assumed that the user would need time and effort when creating continuous sentences.
[0004]
In order to prevent the above-mentioned matters, what is necessary is to propose so-called “no frame” character recognition without setting a frame in advance. However, for example, when displaying a character recognition result for a handwritten input character on a display device such as a display provided in the computer, if the character recognition result is displayed on the handwritten character in exchange for the handwritten character, erroneous recognition may occur. If it happens, you won't know what you wrote. In addition, when the character delimiter position is wrong as a result of character recognition (for example, one character is recognized as two characters or conversely two characters are recognized as one character), the correct delimiter position is indicated. An operation for redisplaying the original pattern becomes necessary and troublesome. Furthermore, if the recognition result is displayed at a position away from the handwritten character, the user must move his / her line of sight each time the recognition result is confirmed or corrected, resulting in poor efficiency.
[0005]
SUMMARY OF THE INVENTION In view of the above, an object of the present invention is to easily perform character recognition and correction of recognition for a character input without handwriting.
For example, an object of the present invention is to correct a plurality of recognized characters as one input character with respect to a character that is input by handwriting without a frame and recognized. Another object of the present invention is to correct one recognized character as a plurality of input characters for a character that has been input by handwriting without a frame and has been character-recognized.
[0006]
It is another object of the present invention to display a candidate character in the vicinity of a recognition result and correct the recognized character by selecting a correct candidate character. Another object of the present invention is to correct an original handwritten input character by deleting the original handwritten input character and performing character recognition again on the newly input handwritten input character.
[0007]
Another object of the present invention is to search for candidate characters by applying the Viterbi algorithm. Further, the present invention corrects the character recognition and the recognition by re-searching only the handwritten input character behind the corrected handwritten input character after confirming the recognition result ahead of the corrected handwritten input character. The purpose is to perform efficiently.
[0008]
[Means for Solving the Problems]
According to the first solution of the present invention,
A display step for displaying input characters input by handwriting without a frame and recognition results of the input characters;
A position determining step for determining whether the input position of the stroke drawn for instructing the correction in the correction mode with respect to the recognition result displayed in the display step is inside or outside the first circumscribed rectangle of the input character. When,
A determination step of determining whether the correction instruction is an enclosure for a plurality of recognized characters or a delimiter for one recognized character when it is determined by the position determining step that the input position of the drawn line is outside the first circumscribed rectangle When,
A correction recognition step for correcting a plurality of recognized characters as one input character based on the determination step, or correcting one recognized character as a plurality of input characters, and performing character recognition again according to the correction instruction. A computer-readable recording medium on which a character recognition method and a character recognition program are recorded is provided.
[0009]
According to the second solution of the present invention,
An application that displays input characters handwritten without a frame and recognition results of the input characters;
A display / correction mode processing unit for displaying recognition results and correcting erroneous recognition;
A recognition engine that performs character recognition,
The display / correction mode processing unit
Position determining means for determining whether the input position of the stroke drawn for instructing correction in the correction mode with respect to the recognition result displayed by the application is inside or outside the first circumscribed rectangle of the input character; ,
When the position determination means determines that the input position of the drawn line is outside the first circumscribed rectangle, the determination means determines whether the correction instruction is an enclosure for a plurality of recognized characters or a break for one recognized character When,
Correction recognition for correcting a plurality of recognized characters as one input character or correcting one recognized character as a plurality of input characters based on the determination means and performing character recognition again by the recognition engine in accordance with the correction instruction Means and
A character recognition device comprising:
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a schematic configuration diagram of a character recognition system to which a frameless handwritten character recognition apparatus according to the present invention is applied.
The character recognition system 1 includes, for example, a user 2, a frameless handwritten character (character string) recognition control unit 10, an application 3, and a frameless handwritten character string recognition engine unit 4. The recognition control unit 10 includes, for example, a handwritten character input mode processing unit 11 that performs a “handwritten character input mode” process for inputting a handwritten character string, and displays a recognition result and corrects a recognition error. A display / correction mode processing unit 12 for performing the processing of “correction mode” is provided.
[0011]
The user 2 inputs a handwritten character string without a frame, and outputs an instruction for executing recognition of the handwritten character string to the input mode processing unit 11. An instruction for executing recognition of the handwritten character string can be output from the application 3 to the input mode processing unit 11 at an arbitrary timing. Further, the application 3 outputs the recognized character type setting (Hiragana / Katakana / Kanji ...) to the input mode processing unit 11. The input mode processing unit 11 that has received the instruction for executing the recognition of the handwritten character string outputs the input handwritten character string and the setting of the recognized character type to the recognition engine unit 4. The recognition engine unit 4 recognizes the handwritten character string and outputs the recognition result to the recognition control unit 10. The recognition control unit 10 displays the recognition result on the application 3.
[0012]
On the other hand, when the user determines that the character string displayed on the application 3 is erroneously recognized, the user 2 displays an instruction for correcting the erroneously recognized character string (misrecognition correction instruction). Output to the correction mode processing unit 12. Upon receiving this instruction, the display / correction mode processing unit 12 outputs a command (result correction command) for correcting the recognition result displayed on the application 3 to the recognition engine unit 4. The recognition engine unit 4 re-recognizes the misrecognized character string and outputs the corrected recognition result to the display / correction mode processing unit 12 again. As described above, the display / correction mode processing unit 12 displays the recognition result on the application 3 again. If the recognition result is correct, the recognition process is terminated. If the recognition result is incorrect, the user 2 outputs an instruction for correcting the erroneously recognized character string to the display / correction mode processing unit 12 again. .
[0013]
FIG. 2 is a flowchart of a character recognition method according to the present invention. For convenience of explanation, the explanation of the flowchart here is schematic, and the specific explanation will be described later.
First, a handwritten character string is input (for example, pen-down input) by a user using a pointing device such as a mouse or an electronic pen on a display screen without a frame (S101). Next, it is determined whether the processing mode is the handwritten character input mode or the recognition result display / correction mode (S103). As a criterion for determining these two modes, for example, if nothing is input on the display screen, the handwritten character input mode is selected. On the other hand, if the handwritten character string is already input, the recognition result display / The correction mode may be determined, or the two modes may be displayed with a mode switching button (not shown) or the like, or the user may be switched between the two modes by an instruction from a pointing device. In the handwritten character input mode, the character recognition is performed on the handwritten character that has been stroked (here, from the start to the end of pen-down input for a certain character or character string) (S105).
[0014]
Next, the recognition result recognized in step S105 is displayed on the display screen (S121). At this time, the recognition result is displayed together with the handwritten input character and its circumscribed rectangle. The user determines whether or not the displayed recognition result is correct (S123). If the displayed recognition result is correct, the process ends. If not, the process returns to step S101 again.
[0015]
On the other hand, if it is determined in step S103 that the display / correction mode is selected, a circumscribed rectangle indicating the recognized character separation position is obtained, and whether the pen-down input position is, for example, outside or inside the circumscribed rectangle is determined. Determination is made (S107, details will be described later). If the pen-down input position in step S107 is outside the circumscribed rectangle, it is determined whether the stroke drawn by the stroke input is “separation” or “enclosure” (S109). Here, “separation” means that when a handwritten character string that should be divided into a plurality of characters is erroneously recognized as one character, the erroneously recognized character is divided into a plurality of characters from the outside of the circumscribed rectangle of the character. This means that it is separated as handwritten characters for the characters. On the other hand, “enclosed” means that when a handwritten character that should be recognized as one character is erroneously recognized as two or more characters, the two or more characters that are erroneously recognized are represented as one character from the outside of the circumscribed rectangle of the character. Enclose as minute handwritten characters (details will be described later). If the drawn line is a break, correction processing and character recognition by a break described later are performed (S111). If the drawn line is a box, correction processing and character recognition by a box described later are performed (S113).
[0016]
On the other hand, if the position of the pen-down input in step S107 is inside the circumscribed rectangle, for example, it is determined whether the pen-down input is shorter than a predetermined length (or an operation for a shorter time than the predetermined time) (S115). ). If it is short (or if it is a short time operation), the candidate character is displayed, and if there is a correct character in the candidate character, the correct candidate character is selected by the user (S117). In step S115, if the left mouse click (or middle click or the like) or the pen-down input is longer than a predetermined length (or an operation longer than a predetermined time), it is determined that the input is a single character. Character recognition is performed on a single character re-input inside the circumscribed rectangle (S119). In addition, the process with respect to the result recognized or selected by step S111, step S113, step S117, and step S119 performs the same process as the process after step S105 mentioned above (step S121, S123). In step S115, in addition to branching the next process (step S117 or S119) depending on the length or time of the pen-down input, for example, other predetermined operations such as another click operation of the mouse, a button on a keyboard (not shown), or the like. The subsequent processing may be branched by this operation. In addition to the operation mainly using the electronic pen as described above, the operation may be performed using an appropriate input device such as a trackball, a mouse, or a keyboard.
[0017]
Hereinafter, the process of each step of the above-described flowchart will be described in detail.
(About Step S101)
[0018]
FIG. 3 is an explanatory diagram of a display screen when the character recognition program according to the present invention is started.
The recognition control unit 10 executes a “character recognition program” for recognizing a handwritten character string input on a display screen without a frame by a user, and enters a display device such as a display provided in the computer. The output screen is displayed, and the user can visually and easily perform operations such as input of a handwritten character string, execution of frameless character string recognition, and correction of erroneous recognition. On this display screen, an input / output display screen 101 without a frame, a recognition result display screen 102, and a function input unit 103 are displayed. The function input unit 103 corresponds to a plurality of functions, and performs an appropriate operation on the handwritten input character, for example, by clicking and executing an appropriate instruction with respect to the handwritten input character to be recognized. Has been placed. The function input unit 103 includes, for example, a recognition button, an input end button, a transmission button, a one-screen deletion button, an SPC button, a line feed button, a BS button, a delete all button, a recognition cancel button, a minimize button, and a scroll represented by an arrow. A button and a check box for arbitrarily selecting a character type to be recognized, such as “English letters, numbers, kanji, hiragana, katakana, and others”, are provided.
[0019]
FIG. 4 is an explanatory diagram regarding input of a handwritten character string.
In the “handwritten character input mode”, the user inputs handwritten characters on a display screen without a frame using, for example, a mouse or an electronic pen (for example, FIG. 4A is Japanese and FIG. 4B is English). Each example.) If a computer equipped with a display means is used when inputting handwritten characters, not only a mouse and an electronic pen but also a tablet used for inputting graphic data or drawing CG (computer graphics) A pointing device such as a suitable desktop digitizer (coordinate reading device) is also applicable. In addition, the mouse includes, for example, a left click button, a right click button, and, in some cases, a middle click button. Whether to have the function of starting cue can be changed as appropriate. In addition, in the handwritten character input mode, for example, a function that deletes one input at a time from the last input image and a function that deletes all input at once in order to correct incorrect input. With.
[0020]
FIG. 5 is an explanatory diagram regarding screen scrolling.
If the character string to be input cannot be written on the screen, for example, the user can input all the desired character strings by scrolling the screen (for example, FIG. 5A shows Japanese, FIG. 5). (B) shows examples of English, respectively, which are examples of scrolling further downward on the display screens of FIGS. 4 (A) and 4 (B).
[0021]
(About Step S105)
FIG. 6 is an explanatory diagram of handwritten character string recognition.
When the user finishes inputting the handwritten character string (stroke input ends), does the user select “recognition” from the four menus displayed by performing an appropriate operation such as right click, for example? Alternatively, an instruction to execute recognition of a handwritten character string is made by selecting a “recognition” button from a toolbar displayed on the screen of the application. Based on this instruction, the character recognition device starts frameless character string recognition (for example, FIG. 6A shows an example of Japanese and FIG. 6B shows an example of English).
[0022]
7 and 8 are display examples (1) and (2) of recognition results.
The recognition result displayed on the screen is indicated by, for example, a circumscribed rectangle indicating the separation position of each character and a recognition result of each character displayed in the circumscribed rectangle (for example, FIG. 7A shows Japan). (FIG. 7B shows an example in English). In this example, a circumscribed rectangle is displayed. However, a circumscribed rectangle area, which is an area where there is a circumscribed rectangle, may be assumed and the circumscribed rectangle may not be displayed. In addition, when the handwritten character is an English sentence, not only the recognition in English character units but also the recognition in English word units as shown in FIG. 8 is possible. In this case, for example, it can be recognized by separating adjacent characters as one word and searching for candidates in the word dictionary stored in the recognition engine unit 4 or the like. It should be noted that the display of the frame is an option, and the frame may not be displayed according to the user's preference. In addition, when the recognition result is displayed, the original handwritten character pattern is displayed in a different color, darkness, dot pattern, etc. to emphasize that the recognition result is a target for various operations described later, It is possible to rewrite the handwritten characters at any time. In the standard state, the recognition target is all character types, but one or more arbitrary character types from “English letters, numbers, kanji, hiragana, katakana, and others” are recognized. It can also be set.
[0023]
FIG. 9 is a display example (3) of the recognition result.
The color of the recognized normal size character is displayed in blue, for example, while the color of the small character such as a prompt sound is displayed in green, for example, between the normal size character and the small character. By displaying in different colors, it is possible to easily distinguish characters of normal size, for example, “Ya, Yu, Yo” and small characters “Ya, Yu, Yo”, such as sound prompts, from the recognition results. (For example, FIGS. 9 (A), (B), and (C) show normal size characters, and FIGS. 9 (D), (E), and (F) show examples of small characters such as prompt sounds). .
[0024]
(About Step S111)
FIG. 10 is an explanatory diagram of correction of a break position by a break.
First, when a handwritten character string (eg, “o” “ke”) that should be divided into a plurality of characters is erroneously recognized as one character (eg, “column”) as shown in FIG. Is assumed. In this case, as shown in FIG. 10B, the “column” is corrected to “o” and “ke” as shown in FIG. In addition, when a handwritten character string (for example, “o” and “f”) that should be divided into a plurality of characters is erroneously recognized as one character (for example, “H”) as shown in FIG. As shown in FIG. 10E, “H” is corrected to “o” and “f” as shown in FIG. 10F by drawing a dividing line from the outside of the circumscribed rectangular area.
[0025]
(About Step S113)
FIG. 11 is an explanatory diagram of correction of the break position by the enclosure.
First, when a handwritten character that should be recognized as one character originally, for example, “frame” is erroneously recognized as two or more characters (for example, “tree” and “medium”) as shown in the upper part of FIG. Is assumed. In this case, the “tree” and the “middle” are surrounded as one handwritten character from the outside of the circumscribed rectangle or circumscribed rectangle area as shown in FIG. “Medium” is corrected to “Frame” as shown in FIG.
[0026]
Further, when a handwritten character that should be recognized as one character, for example, “Y”, is erroneously recognized as two or more characters (for example, “e” and “S”) as shown in FIG. Encloses “e” and “S” as one handwritten character from the outside of the circumscribed rectangle or circumscribed rectangular area as shown in FIG. As shown in FIG. 11F, it is corrected to “Y”.
[0027]
FIG. 12 is an explanatory diagram for determining the enclosure.
When the points constituting the handwritten character string are included in the encircling line at a ratio or more set in advance by the application, it is determined that the handwritten character string is surrounded. For example, the handwritten character “shi” as shown in FIG. 12A is recorded internally as a collection of points as shown in FIG. 12B (the enclosed line is also internally a collection of points. Recorded). For example, when the application side is set so that 80% or more of the points are included in the encircling line, the encircling line is regarded as being encircled as shown in FIG. Since 7 points out of 8 points (87.5%) are in the box, it is determined that “shi” is surrounded. On the other hand, in the case of being surrounded as shown in FIG. 12D, since only 6 points (75%) of the 8 points are included in the box, it is determined that “shi” is not surrounded. To do.
[0028]
(About Step S109)
FIG. 13 is an explanatory diagram relating to a determination process for a box and a delimiter.
Here, a circumscribed rectangle of the enclosing line or dividing line is defined. That is, there are two circumscribed rectangles (circumscribed rectangles of a surrounding line or a separator line and a handwritten input character). FIG. 13A is a geometric explanatory diagram when the user draws an appropriate drawn line (enclosed or separated) with respect to a circumscribed rectangle having a larger horizontal width (X coordinate). First, the width of a circumscribed rectangle (broken line in the figure) of the enclosing or dividing line (solid line in the figure) is CX, and the vertical width is CY. Here, CX> CY, and the difference X (two-dot chain line in the figure) of the X coordinate of the start point and the end point (white circle in the figure) of the enclosing or dividing line by the user is “X ≦ CX × n”. If there is, it is determined as an enclosure (right side in the figure), while if “X> CX × n”, it is determined as a break (left side in the figure). “N” is a ratio set in advance by the application and is 0 ≦ n ≦ 1.0 (however, usually about 0.7).
[0029]
FIG. 13B is a geometric explanatory diagram when the user draws an appropriate drawn line (enclosed or separated) with respect to a circumscribed rectangle having a larger vertical width (Y coordinate). First, the width of a circumscribed rectangle (broken line in the figure) of the enclosing or dividing line (solid line in the figure) is CX, and the vertical width is CY. Here, CX ≦ CY, and the difference Y (two-dot chain line in the figure) of the Y coordinate of the start point and the end point (white circle in the figure) of the enclosing or dividing line by the user is “Y ≦ CY × n”. If there is, it is determined as an enclosure (right side in the figure), while if “Y> CY × n”, it is determined as a break (left side in the figure).
[0030]
FIG. 14 is a flowchart of the enclosing / separating determination process.
First, the circumscribed rectangle of the enclosing line or the dividing line is obtained, and it is determined which is larger in the horizontal width (expressed by the X coordinate) and the vertical width (expressed by the Y coordinate) of the circumscribed rectangle (S201). Next, when the horizontal width is larger, it is determined whether or not “the difference between the X coordinates of the start point and the end point ≦ the horizontal width of the circumscribed rectangle × n” (S203). The calculation formula “the difference between the X coordinate of the start point and the end point ≦ the width of the circumscribed rectangle × n” is: “If the size of the mouth of the line enclosed by the user is much smaller than the width of the circumscribed rectangle of the handwritten input character, , Otherwise it means “separator”. In step S203, when the size of the mouth of the line enclosed by the user is smaller than the preset ratio (n × 100% of the circumscribed rectangle) compared to the width of the circumscribed rectangle of the handwritten input character (for example, less than 30%) Is determined to be an enclosure. In addition, when the size of the mouth of the line enclosed by the user is not smaller than the width of the circumscribed rectangle of the handwritten input character, that is, the coordinate difference between the start point and the end point is n × 100% or more of the circumscribed rectangle Is determined as a break.
[0031]
On the other hand, if the horizontal width and the vertical width of the circumscribed rectangle are larger in step S201, it is determined whether “the difference between the Y coordinates of the start point and the end point ≦ the vertical width of the circumscribed rectangle × n”. (S205). This calculation formula is different from the above calculation formula only in the coordinate axis (Y coordinate: vertical width), and the description thereof is omitted. In step S205, if the size of the mouth of the line enclosed by the user is smaller than a preset ratio (n × 100% of the circumscribed rectangle) compared to the vertical width of the circumscribed rectangle of the handwritten input character, it is determined as an encircling. The Further, if the size of the mouth of the line enclosed by the user is not smaller than a preset ratio (n × 100% of the circumscribed rectangle) compared to the vertical width of the circumscribed rectangle of the handwritten input character, it is determined as a break. The
[0032]
Next, processing for specifically determining the position of the dividing line drawn by the user will be described.
FIG. 15 is an explanatory diagram of the determination by the circumscribed rectangle.
The position of the dividing line (solid line in the figure) is determined by adding an additional line to the dividing line for each character of the recognition result (for example, “a”) and converting it to a range of one character. Character recognition may be performed in the character range area. First, specifically, it is determined whether or not the circumscribed rectangle area (dotted line in the figure) of the recognition result (“a” in the figure) overlaps the circumscribed rectangle of the dividing line (two-dot chain line in the figure). . If they do not overlap as shown in FIG. 15A, it is assumed that they are not separated, and the process described later is omitted. That is, the processing time can be shortened by omitting the processing for the handwritten character (“A” in FIG. 15A) that is clearly unrelated to the dividing line. On the other hand, as shown in FIG. 15B, when both of the above are overlapped, processing described later is performed.
[0033]
FIG. 16 is an explanatory diagram for determining the separation direction.
Next, the horizontal width and vertical width of the circumscribed rectangle of the dividing line are compared. When the vertical width is longer as shown in FIG. 16A (vertical width> horizontal width), the drawn line drawn by the user is On the other hand, when the horizontal width is longer as shown in FIG. 16B (vertical width <horizontal width), it is determined as a horizontal partition.
[0034]
FIG. 17 is an explanatory diagram of a case where character delimiter positions and range areas are determined based on delimiters.
FIGS. 17A, 17B, and 17C are explanatory diagrams for determining the character delimiter positions based on vertical delimiters (for example, three patterns). In FIG. 17A, the end point of the dividing line (solid line in the figure) drawn from the top to the bottom by the user and the end point are extended in the vertical direction of the circumscribed rectangle of the delimiter line so as to contact the circumscribed rectangle of the recognition result. When the point “17a”, the lower left vertex “17b” of the circumscribed rectangle of the recognition result, the starting point “17d” of the dividing line, and the starting point are extended in the horizontal direction of the circumscribing rectangle of the dividing line, the circumscribing rectangle of the recognition result The point “17c” that intersects with the extended vertical side is connected by an additional line (thick line in the figure) to determine the position of character separation based on the vertical direction separation line. A state in which an additional line is added to the line is set as a one-character range area, and character recognition is performed in the one-character range area.
[0035]
In FIG. 17B, when the end point of the dividing line and the end point are extended in the horizontal direction of the circumscribed rectangle of the delimiter line, the point “17a” intersected with one side of the extended vertical direction of the circumscribed rectangle of the recognition result. , And a starting point “17c” of the dividing line and a point “17b” that intersects one side of the circumscribed rectangle of the circumscribed rectangle when the starting point is extended in the horizontal direction of the circumscribing rectangle of the dividing line Each character is connected by an additional line (indicated by a thick line in the figure) to determine the character delimiter position based on this vertical delimiter line, and the state where the additional line is added to this delimiter line is defined as a single character range area. Character recognition is performed in the range of one character.
[0036]
In FIG. 17C, the end point of the dividing line, and when the end point is extended in the vertical direction of the circumscribed rectangle of the dividing line, the point “17a” that intersects one side of the circumscribed rectangle in the recognition result and the recognition result The lower left vertex “17b” of the circumscribed rectangle, the upper left vertex “17c” of the circumscribed rectangle of the recognition result, the starting point “17e” of the dividing line, and the starting point extending in the vertical direction of the circumscribing rectangle of the dividing line By connecting the point “17d” that intersects the extended horizontal side of the circumscribed rectangle of the recognition result with an additional line (thick line in the figure), the character delimiter position based on this vertical delimiter line And a state in which an additional line is added to the dividing line is defined as a one-character range area, and character recognition is performed in the one-character range area.
[0037]
FIGS. 17D, 17E, and 17F are explanatory diagrams for the case where the character delimiter positions are determined based on the horizontal delimiters (for example, three patterns). In FIG. 17D, the end point of the separation line (solid line in the figure) drawn from the left to the right by the user and the end point are extended in the horizontal direction of the circumscribed rectangle of the delimiter line to contact the circumscribed rectangle of the recognition result. When the point “17a”, the vertex “17b” at the upper right of the circumscribed rectangle of the recognition result, the starting point “17d” of the dividing line, and the starting point are extended in the vertical direction of the circumscribing rectangle of the dividing line, the circumscribing rectangle of the recognition result By connecting the point “17c” that intersects one side of the extended horizontal direction with an additional line (thick line in the figure), the position of character separation is determined based on the horizontal direction separation line. A state in which an additional line is added to the line is set as a one-character range area, and character recognition is performed in the one-character range area.
[0038]
Further, in FIG. 17E, when the end point of the dividing line and the end point are extended in the vertical direction of the circumscribed rectangle of the delimiter line, the point “17a” intersected with the extended horizontal side of the circumscribed rectangle of the recognition result. , And a starting point “17c” of the dividing line and a point “17b” that intersects one side of the circumscribed rectangle that is the recognition result when the starting point is extended in the vertical direction of the circumscribing rectangle of the dividing line. Each character is connected with an additional line (indicated by a bold line in the figure) to determine the character delimiter position based on this horizontal delimiter line, and the state where the additional line is added to this delimiter line is defined as a one character range area. Character recognition is performed in the range of one character.
[0039]
In FIG. 17F, when the end point of the dividing line, and when this end point is extended in the horizontal direction of the circumscribed rectangle of the delimiter line, the point “17a” that intersects one side of the circumscribed rectangle in the recognition result and the recognition result The upper right vertex “17b” of the circumscribed rectangle, the upper left vertex “17c” of the circumscribed rectangle of the recognition result, the starting point “17e” of the dividing line, and the starting point extending in the horizontal direction of the circumscribing rectangle of the dividing line By connecting the point “17d” intersecting the extended vertical side of the circumscribed rectangle of the recognition result with an additional line (bold line in the figure), the character delimiter position based on this horizontal delimiter line And a state in which an additional line is added to the dividing line is defined as a one-character range area, and character recognition is performed in the one-character range area. FIG. 17 shows an example in which the dividing line is drawn from top to bottom or from left to right. However, when the dividing line is drawn from bottom to top or from right to left, The same processing may be performed with the columns reversed.
[0040]
Next, a process for searching for a character string by applying the Viterbi algorithm is described.
FIG. 18 is a flowchart of misrecognition correction processing.
The display / correction mode processing unit 12 inputs a surrounding line and / or a dividing line by the user (S301). The candidate character lattice in the front part is determined for the correction position by the input surrounding line or dividing line (S303). Here, the lattice is a path that connects between preceding and succeeding candidate characters. By determining the candidate character lattice in the front part, the candidate character lattice that contradicts the correction is deleted (S305). Next, the Viterbi algorithm is applied to the candidate character lattice limited to some extent, and the candidate character lattice is searched again (S307). The recognition result is output to the display / correction mode processing unit 12 (S309).
[0041]
Specific examples will be described below.
FIG. 19 is an explanatory diagram of the process of correcting erroneous recognition.
When the user corrects the character division using the enclosing line or the dividing line, the display / correction mode processing unit 12 and the recognition engine unit 4 perform the correction process of the recognition result. Specifically, the character separation is corrected for the character recognition and the candidate character that are the current recognition results, and candidate characters are listed for the corrected portion. Then, possible paths of candidate characters are derived. In addition, the path to be considered in the candidate character lattice is limited by determining the front part from the correction part and deleting the part inconsistent with the correction part. By applying the Viterbi algorithm to this candidate character lattice, character recognition, character delimitation, and connection as a character string are comprehensively evaluated, and an optimum character delimiter and character recognition result are obtained.
[0042]
FIG. 19A is an example of a handwritten character string that has not been correctly recognized and a candidate character lattice at that time. For example, the handwritten character string “Tomorrow is” is misrecognized as “day”, “month”, and “target” as a result of dividing it by “day”, “month”, and “day”, which are incorrect character delimiters. (Shaded characters in the figure). In this case, as a plurality of candidate characters, for example, “white” “day” for “day”, “month” “white” for “month”, and “day” and “month” For “”, “light”, for “ha”, “ke” “ha”, for “day” and “ha” “elbow” “target”, and “month” For “day”, “bold” and “yester” are cited as recognized candidates, and a candidate character lattice is derived based on the plurality of candidate characters.
[0043]
Next, with respect to the “day” and “month”, as shown in FIG. 19B, the “day” and “month” are surrounded by a surrounding line as a single character, thereby correcting the delimiter. Accordingly, candidate characters contradicting the correction, that is, “white” “day” for “day”, “month” “white” for “month”, and “bold” “yester” for “month” and “day”. Are deleted from the candidate characters, and the candidate character lattice that contradicts the correction is also deleted. As shown by the thick line in FIG. 19B, when the Viterbi algorithm is applied to this restricted candidate character lattice and a “probable” item is selected, recognition after correction is performed as shown in FIG. 19C. As a result, “Ming”, “Day”, and “Ha” that follow the shaded characters are obtained.
[0044]
Here, the Viterbi algorithm will be described. When a certain handwritten character string is recognized, the recognition results are as follows: “Probability of division” for each division by character delimiter, “Probability for character recognition” for each character recognition candidate, There is a continuous "probability of connection", and along the path connecting the candidates from the beginning to the end of the sentence, "probability as character recognition", "probability of division", "probability of connection" is added Then, the route with the largest sum of these is selected. An example of how to do this efficiently is the Viterbi algorithm. In this example, “morning”, “day”, and “ha” are obtained as the most probable routes.
[0045]
FIG. 20 is an explanatory diagram of an example in which erroneous recognition correction is spread.
When correction is performed by enclosing or delimiting, or by selecting or rewriting candidate characters, the Viterbi algorithm is applied to the candidate character lattice after correction after confirming character delimiters and character recognition before that. As a result, when misdividing and misrecognition are corrected from the front, the corrected part is confirmed accordingly, and the possibility of automatically correcting misdividing and misrecognition behind the correction increases, Necessary correction work can be reduced. Specifically, if the handwritten character “Is it sunny in tomorrow?” Was misdivided or misrecognized as “Tomorrow”, “Sun”, “Ha”, “Sunny”, “Target”, “Do”, or “Rejected” Divide the space between the two lines with a dividing line. As a result, the recognition result until “Tomorrow is fine” is fixed, and “Target” is corrected to “Re” and “Ru”. In addition, the erroneously recognized “rejection” in the back is automatically corrected to “na” and “?” By the Viterbi algorithm.
[0046]
(About steps S115 and S117)
FIG. 21 is an explanatory diagram of erroneous recognition correction for each single character.
As shown in FIGS. 21A, 21B, and 21C, when the delimiter position is correct but the recognition result of a single character (Japanese) is wrong (for example, “sentence” is erroneously recognized as “six”) ) The user performs, for example, a left click (or middle click) or tap of the mouse within the circumscribed rectangular area of the wrong character. As a result, a recognition candidate list for each single character is displayed as shown in FIG. 21B (for example, “six”, “missing”, “sentence”, “hole”, “how”). When the user selects “sentence”, which is a correct recognition result, from the list, the recognition result is corrected to “sentence” as shown in FIG. Also, as shown in FIGS. 21D, 21E, and 21F, when the delimiter position is correct but the recognition result of the single character (English) is wrong (for example, “T” is misrecognized as “J”) The user performs, for example, a left click (or middle click) or tap of the mouse within the circumscribed rectangular area of the wrong character. As a result, a recognition candidate list for each single character is displayed as shown in FIG. 21E (for example, “T” “f” “J” “I” “P”). When the user selects “T” which is the correct recognition result from the list, the recognition result is corrected to “T” as shown in FIG.
[0047]
(About Step S119)
FIG. 22 is an explanatory diagram of re-input for each single character.
First, since the recognition candidates for each single character are displayed in order of decreasing similarity, they are registered in the dictionary when the handwritten character string is written too loosely or when it is a habitual character. If the similarity to the shape of the character to be recognized is low, the similarity of the correct answer candidate is low, and the above-described recognition candidate list for each single character may not include a correct result. At this time, re-input is performed for each single character and the recognition result is corrected. The reason why the correct result is not included in the recognition candidate is that the similarity is too low to be displayed in the candidate, and characters indicating the correct result are not necessarily stored in the dictionary. Specifically, when “correction” is misrecognized as “trust” as shown in FIG. 22 (A), the user re-appears again from the inside of the circumscribed rectangular area as shown in FIG. 22 (B). By inputting characters (for example, “correction”) by handwriting, “trust” is corrected to “correction” as shown in FIG. Further, for example, as shown in FIG. 22D, when “S” is erroneously recognized as “B”, the user again reads the character (for example, from the inside of the circumscribed rectangular area as shown in FIG. 22E). , “S”) by handwriting input, “B” is corrected to “S” as shown in FIG.
[0048]
Here, the discrimination between the click (tap) and the re-input in step S115 is performed, for example, when the moving distance from the pen-down position to the up position with a pointing device such as a mouse is a preset threshold value (for example, 3 dots). Click (tap) if it is less than the threshold), re-input if it is greater than the threshold, or click if the time from pen down to up is less than the preset threshold. For example, there is a method for determining re-input. Further, by clicking (tapping) or re-inputting in the circumscribed rectangular area, the processing in steps S117 and 119 described above is executed, so that the circumscribed rectangular area plays a role as a user interface button or the like. It will also be.
[0049]
The character recognition method of the present invention includes a computer-readable recording medium on which a character recognition program is recorded, a program product that includes the character recognition program and can be loaded into the internal memory of the computer, and a recording that can be used by the computer including the character recognition program. It can be provided by a program product or the like stored in a medium.
[0050]
In the present invention, it is also possible to improve recognition accuracy by accumulating user's habits of inputting characters as data. In this case, the priority of the candidates can be weighted with data selected in the past, or when the input character is tilted, processing for correcting the tilt can be executed in advance.
[0051]
【The invention's effect】
According to the present invention, as described above, it is possible to easily perform character recognition and recognition correction for characters input by hand without a frame.
For example, according to the present invention, a plurality of recognized characters can be corrected as one input character with respect to a character that is input by handwriting without a frame and recognized. Further, according to the present invention, it is possible to correct one recognized character as a plurality of input characters with respect to a character that is input by handwriting without a frame and recognized.
[0052]
In addition, according to the present invention, it is possible to correct the recognized character by displaying the candidate character in the vicinity of the recognition result and selecting the correct candidate character. According to the present invention, the original handwritten input character can be erased and corrected by performing character recognition again on the newly input handwritten input character.
[0053]
In addition, according to the present invention, candidate characters can be searched by applying the Viterbi algorithm. Furthermore, according to the present invention, after confirming the recognition result ahead of the corrected handwritten input character, by re-searching only the handwritten input character behind the corrected handwritten input character, character recognition and recognition can be performed. Correction can be performed efficiently.
[Brief description of the drawings]
FIG. 1 is a schematic configuration diagram of a character recognition system to which a frameless handwritten character recognition apparatus according to the present invention is applied.
FIG. 2 is a flowchart of a character recognition method according to the present invention.
FIG. 3 is an explanatory diagram of a display screen when a character recognition program according to the present invention is started.
FIG. 4 is an explanatory diagram regarding input of a handwritten character string.
FIG. 5 is an explanatory diagram relating to screen scrolling.
FIG. 6 is an explanatory diagram of recognition of a handwritten character string.
FIG. 7 is a display example (1) of a recognition result.
FIG. 8 is a display example (2) of a recognition result.
FIG. 9 is a display example (3) of a recognition result.
FIG. 10 is an explanatory diagram illustrating correction of a break position by a break.
FIG. 11 is an explanatory diagram regarding correction of a break position by enclosure.
FIG. 12 is an explanatory diagram for determining the enclosure.
FIG. 13 is an explanatory diagram related to an enclosure / separation determination process.
FIG. 14 is a flowchart of a surrounding / separation determination process.
FIG. 15 is an explanatory diagram of determination based on a circumscribed rectangle.
FIG. 16 is an explanatory diagram for determining the separation direction.
FIG. 17 is an explanatory diagram of a case where a character delimiter position and a range area are determined based on delimiters.
FIG. 18 is a flowchart of misrecognition correction processing;
FIG. 19 is an explanatory diagram of a process of erroneous recognition correction.
FIG. 20 is an explanatory diagram of an example in which erroneous recognition correction is spread.
FIG. 21 is an explanatory diagram of erroneous recognition correction for each single character.
FIG. 22 is an explanatory diagram of re-input for each single character.
[Explanation of symbols]
1 Character string recognition system
2 users
3 Application
4 recognition engine part
10 Recognition control section
11 Input mode processing section
12 Display / correction mode processing section

Claims (15)

入力モード処理部が、入力装置から枠なしで手書き文字列を入力するステップと、
表示・訂正モード処理部が、入力モード処理部により枠なしで手書き入力された入力文字と、文字認識を行う認識エンジンによる前記入力文字の認識結果とを、表示装置の表示画面上に表示する第1表示ステップと、
表示・訂正モード処理部が、入力装置から囲み又は区切りを示す描線を入力するステップと、
表示・訂正モード処理部が、前記第1表示ステップにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された前記描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断ステップと、
表示・訂正モード処理部が、前記位置判断ステップにより、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定ステップと、
表示・訂正モード処理部が、前記判定ステップに基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び認識エンジンにより文字認識を行うための訂正認識ステップと
表示・訂正モード処理部が、前記訂正認識ステップにより文字認識された認識結果を、表示装置の表示画面上に表示する第2表示ステップとを含み、
前記訂正認識ステップは、
認識エンジンが、囲み又は区切りにより訂正され再認識された候補文字を抽出すると共に、候補文字と他の認識文字候補との間をつなぐ経路を形成するステップと、
認識エンジンが、候補文字以外に関連し、訂正に矛盾する経路を削除するステップと、
認識エンジンが、候補文字と形成された経路に基づき、最適な経路を探索するステップとを含む文字認識方法。
An input mode processing unit inputting a handwritten character string without a frame from the input device;
The display / correction mode processing unit displays on the display screen of the display device the input character input by handwriting without a frame by the input mode processing unit and the recognition result of the input character by the recognition engine that performs character recognition . 1 display step,
A step in which the display / correction mode processing unit inputs a drawn line indicating an enclosure or a break from the input device;
Display and correction mode processing unit, wherein the first display recognition result displayed by step, the input position of the drawn line input to direct the correction in the correction mode, the first circumscribed rectangle of the input character A position determination step for determining whether it is inside or outside,
When the display / correction mode processing unit determines that the input position of the drawn line is outside the first circumscribed rectangle in the position determining step, the correction instruction is an enclosure for a plurality of recognized characters or a single recognized character A determination step for determining whether or not a break for
Based on the determination step , the display / correction mode processing unit corrects a plurality of recognized characters as one input character or corrects one recognized character as a plurality of input characters, and again performs a character by the recognition engine according to the correction instruction. A correction recognition step for recognition ;
A display / correction mode processing unit including a second display step of displaying a recognition result recognized by the correction recognition step on a display screen of a display device;
The correction recognition step includes
A recognition engine extracting candidate characters that have been corrected and re-recognized by surrounding or delimiting, and forming a path that connects between the candidate character and other recognition character candidates;
The recognition engine deleting a path that is related to non-candidate characters and that conflicts with the correction;
A character recognition method including: a recognition engine searching for an optimum route based on the candidate character and the formed route .
前記訂正認識ステップは、
認識エンジンが、訂正された手書き入力文字よりも前方の認識結果を確定するステップをさらに含み、訂正された手書き入力文字よりも後方の手書き入力文字のみを再探索するようにした請求項に記載の文字認識方法。
The correction recognition step includes
Recognition engine further comprises a step of determining the forward recognition results than corrected written text than corrected written text was to re-search only the rear of the written text according to claim 1 Character recognition method.
入力モード処理部が、入力装置から枠なしで手書き文字列を入力するステップと、
表示・訂正モード処理部が、入力モード処理部により枠なしで手書き入力された入力文字と、文字認識を行う認識エンジンによる前記入力文字の認識結果とを、表示装置の表示画面上に表示する第1表示ステップと、
表示・訂正モード処理部が、入力装置から囲み又は区切りを示す描線を入力するステップと、
表示・訂正モード処理部が、前記第1表示ステップにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された前記描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断ステップと、
表示・訂正モード処理部が、前記位置判断ステップにより、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定ステップと、
表示・訂正モード処理部が、前記判定ステップに基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び認識エンジンにより文字認識を行うための訂正認識ステップと、
表示・訂正モード処理部が、前記訂正認識ステップにより文字認識された認識結果を、表示装置の表示画面上に表示する第2表示ステップと を含み、
前記判定ステップでは、表示・訂正モード処理部が、
訂正を指示するために入力された描線についての第2外接矩形を形成し、前記第2外接矩形の長手方向についての該描線の始点と終点との差と、第1外接矩形の長手方向の一辺の長さとを比較することで、
その差が一辺の長さの所定割合よりも小さければ、訂正の指示が囲みと判定し、
その差が一辺の長さの所定割合よりも小さくなければ、訂正の指示が区切りと判定するようにした文字認識方法。
An input mode processing unit inputting a handwritten character string without a frame from the input device;
The display / correction mode processing unit displays on the display screen of the display device the input character input by handwriting without a frame by the input mode processing unit and the recognition result of the input character by the recognition engine that performs character recognition. 1 display step,
A step in which the display / correction mode processing unit inputs a drawn line indicating an enclosure or a break from the input device;
The display / correction mode processing unit inputs the drawing line input to instruct correction in the correction mode with respect to the recognition result displayed in the first display step, and the first circumscribed rectangle for the input character A position determination step for determining whether it is inside or outside,
When the display / correction mode processing unit determines that the input position of the drawn line is outside the first circumscribed rectangle in the position determining step, the correction instruction is an enclosure for a plurality of recognized characters or a single recognized character A determination step for determining whether or not a break for
Based on the determination step, the display / correction mode processing unit corrects a plurality of recognized characters as one input character or corrects one recognized character as a plurality of input characters, and again performs a character by the recognition engine according to the correction instruction. A correction recognition step for recognition;
A display / correction mode processing unit including a second display step of displaying a recognition result recognized by the correction recognition step on a display screen of a display device ;
In the determination step, the display / correction mode processing unit
Forming a second circumscribed rectangle for the drawn line input to instruct correction, a difference between a starting point and an ending point of the drawn line in the longitudinal direction of the second circumscribed rectangle, and one side in the longitudinal direction of the first circumscribed rectangle By comparing with the length of
If the difference is smaller than a predetermined percentage of the length of one side, it is determined that the correction instruction is a box,
A character recognition method in which a correction instruction is determined to be a break if the difference is not smaller than a predetermined ratio of the length of one side.
表示・訂正モード処理部は、訂正モードにおいて、訂正を指示するために入力された描線の入力位置が、第1外接矩形の内側にあり、描線が所定長以下又は入力時間が所定時間以下である場合、
手書き入力文字、第1外接矩形又は認識結果の近傍に候補文字を表示し、正しい候補文字が選択されることで認識文字を訂正する表示選択ステップをさらに含む請求項1乃至のいずれかに記載の文字認識方法。
In the correction mode, the display / correction mode processing unit has an input position of a drawn line input for instructing correction inside the first circumscribed rectangle, and the drawn line is not longer than a predetermined length or input time is not longer than a predetermined time. If
Written text, in the vicinity of the first circumscribed rectangle or the recognition result display candidate characters, according to any one of claims 1 to 3 correct candidate character further comprises display selection step of correcting the recognized character by being selected Character recognition method.
表示・訂正モード処理部は、訂正モードにおいて、訂正を指示するために入力された描線の入力位置が、第1外接矩形の内側にあり、描線が所定長以上又は入力時間が所定時間以上である場合、
新たに入力された手書き入力文字に対して、認識エンジンにより文字認識を行うための再入力認識ステップをさらに含む請求項1乃至のいずれかに記載の文字認識方法。
In the correction mode, the display / correction mode processing unit has the input position of the drawn line input to instruct correction within the first circumscribed rectangle, and the drawn line is longer than a predetermined length or input time is longer than a predetermined time. If
The character recognition method according to any one of claims 1 to 4 , further comprising a re-input recognition step for performing character recognition by a recognition engine on a newly input handwritten input character.
認識エンジンは、前記手書き入力文字が英単語である場合、
近接している英文字をひとつの単語として区切り、格納された単語辞書中の候補を検索することで、英単語を文字認識するようにした請求項1乃至のいずれかに記載の文字認識方法。
The recognition engine, when the handwritten input character is an English word,
Separate close to that letters as one word, the stored word by searching the candidate in the dictionary, the character recognition method according to any one of claims 1 to 5 so as to character recognition English words .
前記第1及び第2表示ステップでは、表示・訂正モード処理部が入力文字、認識文字、及び/又は、外接矩形について、描線の色、濃さ又は太さを適宜に変更して表示するようにした請求項1乃至のいずれかに記載の文字認識方法。In the first and second display steps, the display / correction mode processing unit displays the input character, the recognized character, and / or the circumscribed rectangle by appropriately changing the color, density, or thickness of the drawn line. character recognition method according to any one of claims 1 to 6 were. 表示・訂正モード処理部は、手書き入力文字が促音を示す小さい文字であった場合、
前記第1及び第2表示ステップでは、
通常の大きさの文字と促音を示す小さい文字とを区別して表示するようにした請求項1乃至のいずれかに記載の文字認識方法。
When the handwritten input character is a small character indicating a prompt sound , the display / correction mode processing unit
In the first and second display steps,
The character recognition method according to any one of claims 1 to 7 , wherein a character having a normal size and a small character indicating a prompt sound are distinguished and displayed.
前記認識ステップで求められた入力文字ごとの第1外接矩形の内側の領域は、ユーザインタフェースのボタンとして機能するようにした請求項1乃至のいずれかに記載の文字認識方法。Said inner region of the first circumscribed rectangle of each input character determined by the recognition step, the character recognition method according to any one of claims 1 to 8 so as to function as a button of the user interface. 入力モード処理部が、入力装置から枠なしで手書き文字列を入力するステップと、
表示・訂正モード処理部が、入力モード処理部により枠なしで手書き入力された入力文字と、文字認識を行う認識エンジンによる前記入力文字の認識結果とを、表示装置の表示画面上に表示する第1表示ステップと、
表示・訂正モード処理部が、入力装置から囲み又は区切りを示す描線を入力するステップと、
表示・訂正モード処理部が、前記第1表示ステップにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された前記描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断ステップと、
表示・訂正モード処理部が、前記位置判断ステップにより、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定ステップと、
表示・訂正モード処理部が、前記判定ステップに基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び認識エンジンにより文字認識を行うための訂正認識ステップであって、
認識エンジンが、囲み又は区切りにより訂正され再認識された候補文字を抽出すると共に、候補文字と他の認識文字候補との間をつなぐ経路を形成するステップと、
認識エンジンが、候補文字以外に関連し、訂正に矛盾する経路を削除するステップと、
認識エンジンが、候補文字と形成された経路に基づき、最適な経路を探索するステップとを含む前記訂正認識ステップと、
表示・訂正モード処理部が、前記訂正認識ステップにより文字認識された認識結果を、表示装置の表示画面上に表示する第2表示ステップとをコンピュータに実行させるための文字認識プログラムを記録したコンピュータ読み取り可能な記録媒体。
An input mode processing unit inputting a handwritten character string without a frame from the input device;
The display / correction mode processing unit displays on the display screen of the display device the input character input by handwriting without a frame by the input mode processing unit and the recognition result of the input character by the recognition engine that performs character recognition . 1 display step,
A step in which the display / correction mode processing unit inputs a drawn line indicating an enclosure or a break from the input device;
Display and correction mode processing unit, wherein the first display recognition result displayed by step, the input position of the drawn line input to direct the correction in the correction mode, the first circumscribed rectangle of the input character A position determination step for determining whether it is inside or outside,
When the display / correction mode processing unit determines that the input position of the drawn line is outside the first circumscribed rectangle in the position determining step, the correction instruction is an enclosure for a plurality of recognized characters or a single recognized character A determination step for determining whether or not a break for
Based on the determination step , the display / correction mode processing unit corrects a plurality of recognized characters as one input character or corrects one recognized character as a plurality of input characters, and again performs a character by the recognition engine according to the correction instruction. A correction recognition step for recognition ,
A recognition engine extracting candidate characters that have been corrected and re-recognized by surrounding or delimiting, and forming a path that connects between the candidate character and other recognition character candidates;
The recognition engine deleting a path that is related to non-candidate characters and that conflicts with the correction;
A correction recognition step including a step of a recognition engine searching for an optimum route based on the candidate character and the formed route;
A computer reading in which a display / correction mode processing unit records a character recognition program for causing a computer to execute a second display step of displaying a recognition result recognized in the correction recognition step on a display screen of a display device. Possible recording media.
入力モード処理部が、入力装置から枠なしで手書き文字列を入力するステップと、  An input mode processing unit inputting a handwritten character string without a frame from the input device;
表示・訂正モード処理部が、入力モード処理部により枠なしで手書き入力された入力文字と、文字認識を行う認識エンジンによる前記入力文字の認識結果とを、表示装置の表示画面上に表示する第1表示ステップと、  The display / correction mode processing unit displays on the display screen of the display device the input character input by handwriting without a frame by the input mode processing unit and the recognition result of the input character by the recognition engine that performs character recognition. 1 display step,
表示・訂正モード処理部が、入力装置から囲み又は区切りを示す描線を入力するステップと、  A step in which the display / correction mode processing unit inputs a drawn line indicating an enclosure or a break from the input device;
表示・訂正モード処理部が、前記第1表示ステップにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された前記描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断ステップと、  The display / correction mode processing unit inputs the drawing line input to instruct correction in the correction mode with respect to the recognition result displayed in the first display step, and the first circumscribed rectangle for the input character A position determination step for determining whether it is inside or outside,
表示・訂正モード処理部が、前記位置判断ステップにより、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定ステップであって、訂正を指示するために入力された描線についての第2外接矩形を形成し、前記第2外接矩形の長手方向についての該描線の始点と終点との差と、第1外接矩形の長手方向の一辺の長さとを比較することで、その差が一辺の長さの所定割合よりも小さければ、訂正の指示が囲みと判定し、その差が一辺の長さの所定割合よりも小さくなければ、訂正の指示が区切りと判定する前記判定ステップと、  When the display / correction mode processing unit determines that the input position of the drawn line is outside the first circumscribed rectangle in the position determining step, the correction instruction is an enclosure for a plurality of recognized characters or a single recognized character A second circumscribing rectangle for the drawn line that is input to instruct correction, and the start and end points of the drawn line in the longitudinal direction of the second circumscribed rectangle By comparing the difference with the length of one side in the longitudinal direction of the first circumscribed rectangle, if the difference is smaller than a predetermined ratio of the length of one side, it is determined that the correction instruction is a box, and the difference is The determination step of determining that the correction instruction is a break if it is not smaller than a predetermined ratio of the length;
表示・訂正モード処理部が、前記判定ステップに基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び認識エンジンにより文字認識を行うための訂正認識ステップと、  Based on the determination step, the display / correction mode processing unit corrects a plurality of recognized characters as one input character or corrects one recognized character as a plurality of input characters, and again performs a character by the recognition engine according to the correction instruction. A correction recognition step for recognition;
表示・訂正モード処理部が、前記訂正認識ステップにより文字認識された認識結果を、表示装置の表示画面上に表示する第2表示ステップとをコンピュータに実行させるための文字認識プログラムを記録したコンピュータ読み取り可能な記録媒体。  A computer reading in which a display / correction mode processing unit records a character recognition program for causing a computer to execute a second display step of displaying a recognition result recognized in the correction recognition step on a display screen of a display device. Possible recording media.
枠なしで手書き入力された入力文字と、入力文字の認識結果とを表示するアプリケーションと、
認識結果の表示及び誤認識の訂正を行うための表示・訂正モード処理部と、
文字認識を行う認識エンジンとを備え、
前記表示・訂正モード処理部は、
前記アプリケーションにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断手段と、
前記位置判断手段により、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定手段と、
前記判定手段に基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び前記認識エンジンにより文字認識を行うための訂正認識手段とを備え
前記訂正認識手段は、
囲み又は区切りにより訂正され再認識された候補文字を抽出すると共に、候補文字と他の認識文字候補との間をつなぐ経路を形成し、
候補文字以外に関連し、訂正に矛盾する経路を削除し、
候補文字と形成された経路に基づき、最適な経路を探索するようにした文字認識装置。
An application that displays input characters handwritten without a frame and recognition results of the input characters;
A display / correction mode processing unit for displaying recognition results and correcting erroneous recognition;
A recognition engine that performs character recognition,
The display / correction mode processing unit
Position determining means for determining whether the input position of the stroke drawn for instructing correction in the correction mode with respect to the recognition result displayed by the application is inside or outside the first circumscribed rectangle of the input character; ,
When the position determination means determines that the input position of the drawn line is outside the first circumscribed rectangle, the determination means determines whether the correction instruction is an enclosure for a plurality of recognized characters or a break for one recognized character When,
Correction recognition for correcting a plurality of recognized characters as one input character or correcting one recognized character as a plurality of input characters and performing character recognition again by the recognition engine according to the correction instruction based on the determination means and means,
The correction recognition means includes
Extracting candidate characters that have been corrected and re-recognized by surrounding or separating, and forming a path connecting the candidate character and other recognized character candidates,
Delete paths that are related to non-candidate characters and conflict with corrections,
A character recognition device that searches for an optimum route based on a candidate character and a formed route .
枠なしで手書き入力された入力文字と、入力文字の認識結果とを表示するアプリケーションと、  An application that displays input characters handwritten without a frame and recognition results of the input characters;
認識結果の表示及び誤認識の訂正を行うための表示・訂正モード処理部と、  A display / correction mode processing unit for displaying recognition results and correcting misrecognition,
文字認識を行う認識エンジンとを備え、  A recognition engine that performs character recognition,
前記表示・訂正モード処理部は、  The display / correction mode processing unit
前記アプリケーションにより表示された認識結果に対して、訂正モードにおいて訂正を指示するために入力された描線の入力位置が、入力文字についての第1外接矩形の内側か外側かを判断する位置判断手段と、  Position determining means for determining whether the input position of the stroke drawn for instructing correction in the correction mode with respect to the recognition result displayed by the application is inside or outside the first circumscribed rectangle of the input character; ,
前記位置判断手段により、描線の入力位置が第1外接矩形の外側であると判断された場合、訂正の指示が、複数の認識文字に対する囲みか、ひとつの認識文字に対する区切りかを判定する判定手段と、  When the position determination means determines that the input position of the drawn line is outside the first circumscribed rectangle, the determination means determines whether the correction instruction is an enclosure for a plurality of recognized characters or a break for one recognized character When,
前記判定手段に基づいて、複数の認識文字をひとつの入力文字として訂正又はひとつの認識文字を複数の入力文字として訂正し、その訂正の指示に従い再び前記認識エンジンにより文字認識を行うための訂正認識手段とを備え、  Correction recognition for correcting a plurality of recognized characters as one input character or correcting one recognized character as a plurality of input characters based on the determination means and performing character recognition again by the recognition engine in accordance with the correction instruction Means and
前記判定手段では、  In the determination means,
訂正を指示するために入力された描線についての第2外接矩形を形成し、前記第2外接矩形の長手方向についての該描線の始点と終点との差と、第1外接矩形の長手方向の一辺の長さとを比較することで、  Forming a second circumscribed rectangle for the drawn line input to instruct correction, a difference between a start point and an end point of the drawn line in the longitudinal direction of the second circumscribed rectangle, and one side in the longitudinal direction of the first circumscribed rectangle By comparing with the length of
その差が一辺の長さの所定割合よりも小さければ、訂正の指示が囲みと判定し、  If the difference is smaller than a predetermined percentage of the length of one side, it is determined that the correction instruction is a box,
その差が一辺の長さの所定割合よりも小さくなければ、訂正の指示が区切りと判定するようにした文字認識装置。  If the difference is not smaller than a predetermined ratio of the length of one side, a character recognition device in which a correction instruction is determined to be a break.
入力モードにおいて、入力文字に対して文字認識を行い、前記認識エンジンにより入力文字の第1外接矩形及び認識結果を求めるための入力モード処理部をさらに備えた請求項12又は13に記載の文字認識装置。The character recognition according to claim 12 or 13 , further comprising an input mode processing unit for performing character recognition on the input character in the input mode, and obtaining a first circumscribed rectangle of the input character and a recognition result by the recognition engine. apparatus. 前記第1外接矩形の内側の領域を、ユーザインタフェースの入力ボタンとした請求項12乃至14のいずれかに記載の文字認識装置。The character recognition device according to claim 12, wherein an area inside the first circumscribed rectangle is an input button of a user interface.
JP2000167953A 2000-06-05 2000-06-05 Character recognition method, computer-readable recording medium on which character recognition program is recorded, and character recognition device Expired - Lifetime JP3893013B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000167953A JP3893013B2 (en) 2000-06-05 2000-06-05 Character recognition method, computer-readable recording medium on which character recognition program is recorded, and character recognition device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000167953A JP3893013B2 (en) 2000-06-05 2000-06-05 Character recognition method, computer-readable recording medium on which character recognition program is recorded, and character recognition device

Publications (2)

Publication Number Publication Date
JP2001351065A JP2001351065A (en) 2001-12-21
JP3893013B2 true JP3893013B2 (en) 2007-03-14

Family

ID=18671034

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000167953A Expired - Lifetime JP3893013B2 (en) 2000-06-05 2000-06-05 Character recognition method, computer-readable recording medium on which character recognition program is recorded, and character recognition device

Country Status (1)

Country Link
JP (1) JP3893013B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5227120B2 (en) * 2008-09-03 2013-07-03 日立コンピュータ機器株式会社 Character string recognition apparatus and method, and program
JP4772888B2 (en) * 2009-03-27 2011-09-14 シャープ株式会社 Image processing apparatus, image forming apparatus, image processing method, program, and recording medium thereof
JP5942361B2 (en) * 2011-08-29 2016-06-29 富士ゼロックス株式会社 Image processing apparatus and image processing program
KR20140008987A (en) * 2012-07-13 2014-01-22 삼성전자주식회사 Method and apparatus for controlling application using recognition of handwriting image
EP3296928A4 (en) * 2015-05-14 2018-05-09 Fujitsu Limited Character input and reception method, character input and reception device, and character input and reception program
JP6986848B2 (en) * 2016-04-27 2021-12-22 シャープ株式会社 Input display device and input display method
CN106682671A (en) * 2016-12-29 2017-05-17 成都数联铭品科技有限公司 Image character recognition system

Also Published As

Publication number Publication date
JP2001351065A (en) 2001-12-21

Similar Documents

Publication Publication Date Title
US20210406578A1 (en) Handwriting-based predictive population of partial virtual keyboards
KR100931466B1 (en) Electronic dictionary device and dictionary search method of electronic dictionary device
JP4742132B2 (en) Input device, image processing program, and computer-readable recording medium
US7502017B1 (en) Handwriting recognizer user interface methods
JP2001005599A (en) Information processor and information processing method an d recording medium recording information processing program
KR100958309B1 (en) character input device
JPH08212197A (en) Document editing device
JPH07334625A (en) Character string input device
JP4393415B2 (en) Handwriting input device, handwriting input program, and program recording medium
JP3893013B2 (en) Character recognition method, computer-readable recording medium on which character recognition program is recorded, and character recognition device
JP2963589B2 (en) Gesture processing device and gesture processing method
JP2005025566A (en) Handwriting input device, method and program, and program recording medium
JP2005196250A (en) Information input support device and information input support method
JP4312429B2 (en) Handwriting input device and method, handwriting input program, and program recording medium
JP2000099223A (en) Data processor with handwritten character input interface and storage medium
JP3258978B2 (en) Gesture processing device and gesture processing method
KR20090035409A (en) Character input device
JPH10307675A (en) Method and device for recognizing handwritten character
JPH0855182A (en) Inputting device for handwritten character
JP4441966B2 (en) Handwritten character input device and recording medium recording program for realizing the same
JPH07200723A (en) Method and device for recognizing character
JP2006134360A (en) Handwritten character input apparatus
JP3526479B2 (en) Online handwritten character input method and device
JPH06131143A (en) Document inputting and retrieving device
JPH08190603A (en) Character recognition device and its candidate character display method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060914

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061208

R150 Certificate of patent or registration of utility model

Ref document number: 3893013

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101215

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111215

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121215

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121215

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term