JP6735775B2 - 重畳手書き入力認識技術のためのシステム及び方法 - Google Patents

重畳手書き入力認識技術のためのシステム及び方法 Download PDF

Info

Publication number
JP6735775B2
JP6735775B2 JP2017559679A JP2017559679A JP6735775B2 JP 6735775 B2 JP6735775 B2 JP 6735775B2 JP 2017559679 A JP2017559679 A JP 2017559679A JP 2017559679 A JP2017559679 A JP 2017559679A JP 6735775 B2 JP6735775 B2 JP 6735775B2
Authority
JP
Japan
Prior art keywords
input
fragments
recognition
stroke
character
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.)
Active
Application number
JP2017559679A
Other languages
English (en)
Other versions
JP2018518755A (ja
Inventor
ウィマー ジョルト
ウィマー ジョルト
ペロー フレディ
ペロー フレディ
ラリカン ピエール−ミシェル
ラリカン ピエール−ミシェル
アラディッラ ギジェルモ
アラディッラ ギジェルモ
Original Assignee
マイスクリプト
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 マイスクリプト filed Critical マイスクリプト
Publication of JP2018518755A publication Critical patent/JP2018518755A/ja
Application granted granted Critical
Publication of JP6735775B2 publication Critical patent/JP6735775B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/768Arrangements for image or video recognition or understanding using pattern recognition or machine learning using context analysis, e.g. recognition aided by known co-occurring patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/142Image acquisition using hand-held instruments; Constructional details of the instruments
    • G06V30/1423Image acquisition using hand-held instruments; Constructional details of the instruments the instrument generating sequences of position coordinates corresponding to handwriting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/226Character recognition characterised by the type of writing of cursive writing
    • G06V30/2268Character recognition characterised by the type of writing of cursive writing using stroke segmentation
    • G06V30/2272Character recognition characterised by the type of writing of cursive writing using stroke segmentation with lexical matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/226Character recognition characterised by the type of writing of cursive writing
    • G06V30/2268Character recognition characterised by the type of writing of cursive writing using stroke segmentation
    • G06V30/2276Character recognition characterised by the type of writing of cursive writing using stroke segmentation with probabilistic networks, e.g. hidden Markov models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/36Matching; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Character Discrimination (AREA)

Description

本発明は、概して、様々な文字からなるユーザの手書き入力を認識できるようにするコンピューティングデバイスのインターフェースについての分野に関する。
関連出願の相互参照
本出願は、2015年5月15日に出願された欧州特許出願第15290129.4号、2016年5月13日に出願された国際特許出願PCT/2016/000799の優先権の利益を主張するものであり、その全体が、参照によって本明細書に組み込まれている。
コンピューティングデバイスは日常生活に浸透し続けている。それらは、デスクトップコンピュータ、ラップトップ、タブレットPC、電子ブック(e-Book)リーダ、モバイルフォン、スマートフォン、ウェアラブルコンピュータ、GPS(global positioning system)ユニット、EDA(enterprise digital assistants)、PDA(personal digital assistants)、ゲームコンソールなどの形をとる。さらに、コンピューティングデバイスは、自動車、トラック、農業機械、産業機械、ビル環境制御(例えば、照明、HVAC)、家庭及び商業設備にも組み込まれている。
コンピューティングデバイスは、概して、CPU(central processing unit)のような少なくとも1つの演算要素と、いくつかの形態のメモリと、入出力デバイスとを含む。様々なコンピューティングデバイス及びそれらの継続的な使用には、様々な入力デバイスを必要とする。そうした入力デバイスの1つは、タッチスクリーン又はタッチパッドのようなタッチセンサ面(touch sensitive surface)である。ユーザ入力は、ユーザの指又はペン若しくはスタイラスのような道具と、タッチセンサ面との間の接触を通じて受信される。他の入力デバイスは、入力面上のユーザによるジェスチャを感知する入力面である。これらの入力方法のいずれもが、一般に描画又はテキストの入力に使用されうる。ユーザ入力がテキストであるとき、コンピューティングデバイスは、オンライン手書き入力認識システム又は方法を使用してユーザの手書き入力(handwriting)を解釈しなければならない。
概して、オンライン手書き入力認識システム又は方法は、ユーザがタッチセンサ面に接触したとき(ペンダウン)のようなストロークの開始、ユーザがタッチセンサ面の接触を停止したときのようなストロークの終了(ペンアップ)、及び、ユーザが、ストロークの開始から終了までの間に、彼らの指又はペンで作り出すあらゆる動き(ジェスチャ又はストローク)を監視する。
オンライン手書き入力認識システム又は方法は、通常、プリプロセッシング段階、分割(segmentation)段階、認識段階、及び解釈段階で構成される。一般に、プリプロセッシング段階は、不適切な入力データを排除して正規化すること、サンプリングすること、適切なデータからノイズを除去することを含む。分割段階は、入力データを個別の文字及び単語に分割する異なる方法を特定する。認識は、通常、異なる入力セグメントを特徴付ける特徴抽出段階、及び、セグメントと利用可能な文字候補とを対応付ける分類段階を含む。最後に、解釈段階は、通常、文字候補に対応付けられた文字及び/又は単語を識別することを含む。実際には、オンライン手書き入力認識システム又は方法は、追加的な段階に加えてこれらの段階を含む。さらに、オンライン手書き入力認識システム又は方法は、各段階を明らかに記述しなくてもよい。
オンライン手書き入力認識システム又は方法は、シングルストローク(一筆)又はマルチストローク(複数筆)でありうる。シングルストローク認識は、アルファベットの各文字に対してシングルストロークの簡易表現を使用する(例えば、Palm, Inc.のGraffiti)。これらのシステム又は方法は、入力エラーをより少なくするが、全アルファベットについてユーザに新たなストロークパターンを記憶するよう求める。マルチストローク認識は、自然な手書き入力を認識でき、日本語又は中国語の文字のようにシングルストロークには容易に縮小できない文字を含む言語を伴うオンライン手書き入力認識システムを使用するときによく必要とされる。
また、コンピューティングデバイスのタイプは、手書き入力認識システム又は方法の種類を決定しうる。例えば、もし入力面が(タブレットのように)十分に大きいならば、ユーザは、まるで紙片に書くように、その入力面上のどこにでもテキスト又はデータを入力しうる。
デバイスが小さくなるにつれ、マルチボックス又はシングルボックスのような異なるシステム又は方法が発展した。マルチボックスシステム又は方法は、入力面を3つのボックスのような複数の領域に分割する。ユーザは、各ボックスの中に各文字を次々と入力する。文字分割が最小になるか、不要になるため、これらは有利である。それらはまた、分離文字認識技術で解析できるマルチストローク文字を許容する。
さらにより小さなデバイスでは、入力面は、マルチボックスのために十分な大きさでないかもしれない。だから、その面は、基本的にシングルボックス書き込みインターフェースになる。この例では、1つの文字だけが一度に書かれる。シングルボックスインターフェースはシングルストローク認識システムに加えられるけれども、日本語又は中国語のような特定の言語はマルチストローク文字を有し、それはシングルストロークの簡易表現には容易に縮小されない。さらに、自然な手書き入力のほとんどは、言語によらずマルチストローク文字を含む。
マルチストロークシステム又は方法を使用するシングルボックスインターフェースは、文字の始点と終点とを判断すること、及び、入力文字のイメージを明確に表示することを含む追加的な問題を生じさせる。文字の始点及び終点を判断する一つの方法は、ユーザに対して各文字の間で明示的な停止を要求することである。しかし、これは最善ではない。なぜなら、それはユーザのデータ入力を遅くさせるからである。シングルボックスシステム又は方法であって、ユーザが連続的に、停止することなく文字を入力することができるものでは、入力文字は、互いに覆われていたり、重なっていたりするだろう。これは、重畳手書き入力(superimposed handwriting)、被覆手書き入力(overlaid handwriting)、又は“オントップライティング(on-top-writing)”と呼ばれる。
本オンライン重畳手書き入力認識システム及び方法は、断片化、分割、認識、及び解釈を連続的にというよりは同時に実行することによって、ユーザの手書き入力の認識についての改善された結果を提供する。本システム及び方法は、認識精度及び速度を向上するために断片化又は断片の分類を実行する。本システム及び方法は、分割、認識、及び解釈を、それらステップを階層的に適用するよりむしろ、同レベルで実行する。分割、認識、及び解釈が協調的に生じることで、本システムは、ユーザに対し、ユーザ入力に基づいて、最良の可能な文字、単語、及び文の候補を提供する。
以下で記述される本発明の例は、ユーザの自然な手書き入力スタイルを解釈しうるオンライン重畳手書き入力認識において使用される方法、システム、及びソフトウェアを提供する。これらは、ユーザに対し、彼らが自然な手書き入力を使用し、あらゆる明示的な文字間の分離をせずにコンピューティングデバイスに文字を入力することを可能にする。本手書き入力認識システム及び方法は、入力面の形をなす入力デバイスに接続されるコンピューティングデバイスを含む。ユーザは、彼らの指、又は、スタイラス若しくはペンのような道具を使用して、その入力面に圧力を加えるか、その上でジェスチャーをすることで入力を提供できる。本システム及び方法は、入力ストロークを監視する。
開示のシステム及び方法の一側面は、分割エキスパートを提供する。分割エキスパートは、断片の少なくとも連続するものについての入力ストロークの相対位置を検出し、少なくとも連続する断片の入力ストロークの形状を検出し、検出した相対位置から、入力ストロークのセグメントの重なりを判断し、検出した形状から、重なったセグメントがもっともらしく文字を形成するかを決定し、決定したもっともらしい文字に基づいて断片を分類し、分類した断片を、分類された断片に基づいて文字仮説の評価のための認識エンジンに提供する。
開示のシステム及び方法の他の側面は、少なくとも1つのコンピュータ読み取り可能な非一過性の媒体を提供する。非一過性の媒体は、少なくとも1つの文字をもっともらしく形成するように、少なくとも連続する断片の第1の断片についての少なくとも1つの入力ストロークの少なくとも1つのセグメントと、少なくとも連続する断片の第2の断片についての少なくとも1つの入力ストロークの少なくとも1つのセグメントとを結合するかどうかを判断することにより、もっともらしい文字を決定する。
開示のシステム及び方法の他の側面によれば、分類された断片のそれぞれは、1つ又は複数の入力断片の入力ストロークで形成される完全な文字を含むように定義される。
開示のシステム及び方法の他の側面によれば、少なくとも連続する断片の入力ストロークの相対位置は、入力ストロークの空間的及び時間的な情報から検出される。
開示のシステム及び方法の他の側面によれば、認識エンジンは、分類された断片のストロークに基づいて分割グラフを生成する。その分割グラフは、文字仮説に対応するノードを含む。認識エンジンは、パターン分類器に基づいて認識スコアを分割グラフの各ノードに割り当て、認識スコア及び言語モデルに基づいて入力ストロークの言語学的な意味を生成し、分割グラフの同時分析及び認識スコアに基づく出力を提供する。
開示のシステム及び方法の他の側面によれば、分割グラフは、さらに、分類された断片に基づく文字仮説の間の空間仮説に対応するノードを含む。
本システム及び方法は、以下で図面と共に詳細に述べる例示からさらに全容が理解されるであろう。
本システムの例に係るコンピューティングデバイスを示したブロック図である。 本システムの例に係るオンライン手書き入力認識のためのシステムを示したブロック図である。 本システムの例に係る分割グラフを模式的に示した図である。 本システムの例に係る分割グラフを模式的に示した図である。 本システムの例に係る続け書きユーザ入力の利用可能なユーザ入力を模式的に示した図である。 本システムの例に係る続け書きユーザ入力の分割を模式的に示した図である。 本システムの例に係る認識エキスパートを模式的に示した図である。 本システムの例に係る言語オートマトンを模式的に示した図である。 本システムの追加の例に係るオンライン手書き入力認識のためのシステムを示したブロック図である。 本システムの例に係る可能なユーザ入力を描写した図である。 図9Aのユーザ入力についてのタイミングを描写した図である。 本システムの例に係る利用可能なユーザ入力を描写した図である。 図10Aのユーザ入力についてのタイミングを描写した図である。
詳細な説明
以下の詳細な記載において、好適な技術の徹底した理解を提供するために例示をもって様々な具体的な詳細が明らかにされる。しかし、本技術がそうした詳細なしに実施されうることは当業者にとって明らかであろう。他の例によれば、周知の方法、処理工程、構成要素、及び/又は、回路は相対的に高いレベルで記述され、詳細は省略され、本技術を不必要に不明瞭にする側面を回避する。
様々な技術が以下で記述され、概して、それはオンライン手書き入力認識に関し、そして、より具体的には様々なコンピューティングデバイスにおける重畳手書き入力認識のためのシステム及び方法に関する。以下で述べるシステム及び方法は、最良の可能な文字、単語、及び文の候補を提供するための分割、認識、及び解釈の同時処理を通じてユーザの自然な手書き入力を認識するために使用されうる。
図1は、コンピューティングデバイス100のブロック図を示す。このコンピューティングデバイスは、デスクトップコンピュータ、ラップトップ、タブレットPC、電子ブック(e-book)リーダ、モバイルフォン、スマートフォン、ウェアラブルコンピュータ、デジタルウォッチ、GPS(global positioning system)ユニット、EDA(enterprise digital assistant)、PDA(personal digital assistant)、又はゲームコンソールでありうる。デバイス100は、少なくとも1つの演算要素、いくつかの形態のメモリ、及びI/O(input and/or output)デバイスを含む。それら要素は、コネクタ、信号線、バス、ケーブル、バッファ、電磁リンク、ネットワーク、モデム、変換器、IRポート、アンテナ、又は当業者に知られた他の手段のような入出力手段を通じて互いに通信する。
デバイス100は、少なくとも1つの入力面104を有する。入力面104は、抵抗(resistive)、SAW(surface acoustic wave)、容量(capacitive)、赤外線グリッド(infrared grid)、赤外線アクリル投影(infrared acrylic projection)、光学イメージング(optical imaging)、分散信号技術(dispersive signal technology)、音響パルス認識(acoustic pulse recognition)、又は、当業者に知られた他の好適な技術のような技術を採用しうる。入力面104は、永続的な又は映像により生成された境界であって、その境目が明確に認識される境界によって仕切られうる。
入力面104に加え、デバイス100は、ローカルインターフェースを介して通信可能に接続された1つ又は複数の追加的なI/Oデバイス(又は周辺機器)を含んでもよい。ローカルインターフェースは、コントローラ、バッファ(キャッシュ)、ドライバ、中継装置(repeaters)、及び受信機のような通信を可能にする追加的な要素を有してもよい。これらは当業者により知られているものとして簡単のために説明を省略する。さらに、ローカルインターフェースは、他のコンピュータ要素との間で好適な通信を可能にするためのアドレス、制御、及び/又はデータ接続を含みうる。
1つのそうしたI/Oデバイスは、画像、テキスト、及び映像のような、コンピューティングデバイスからのデータを出力するための少なくとも1つのディスプレイ102であってもよい。ディスプレイ102は、LCD、プラズマ、CRT、又は当業者に知られたあらゆる他の好適な技術を使用してもよい。少なくともいくつかのディスプレイ102は、入力面104と一体に設置されてもよい。他の追加的なI/Oデバイスは、キーボード、マウス、スキャナ、マイクロフォン、タッチパッド、バーコードリーダ、レーザリーダ、無線周波数デバイスリーダ、又は当業者に知られたあらゆる他の好適な技術のような入力デバイスを含んでいてもよい。さらに、I/Oデバイスは、また、プリンタ、バーコードプリンタ、又は、当業者において知られたあらゆる他の好適な技術のような出力デバイスを含んでいてもよい。最後に、I/Oデバイスは、さらに、変調器/復調器(モデム;他のデバイス、システム、又はネットワークにアクセスする)、RF(radio frequency)又は他の送受信機、電話インターフェース、ブリッジ、ルータ、又は当業者において知られたあらゆる他の好適な技術のような入力及び出力の両方と通信するデバイスを含んでいてもよい。
デバイス100は、また、ソフトウェアを実行するためのハードウェアデバイスであるプロセッサ106を含み、特に、ソフトウェアはメモリ108に格納される。プロセッサは、任意に特注で製造されたものでもよいし、商業的に入手可能な汎用目的のプロセッサでもよいし、CPU(central processing unit)、半導体ベースのマイクロプロセッサ(マイクロチップ又はチップセットの形態)、マクロプロセッサ、マイクロコントローラ、DSP(digital signal processor)、ASIC(application specific integrated circuit)、FPGA(field programmable gate array)、又は、他のプログラム可能な論理デバイス、分離ゲート又はトランジスタ論理、分離ハードウェア要素、状態マシン、又は、当業者において知られたソフトウェア命令を実行するために設計されたものの任意の組み合わせでありうる。商業的に入手可能な好適なマイクロプロセッサの例としては次のようなものがある。ヒューレットパッカード社のPA−RISCシリーズマイクロプロセッサ、インテル社の80x86又はPentiumシリーズマイクロプロセッサ、IBMのPowerPCマイクロプロセッサ、サンマイクロシステムズ社のSparcマイクロプロセッサ、モトローラ社の68xxxシリーズマイクロプロセッサ、DSPマイクロプロセッサ、又はARMマイクロプロセッサがある。
メモリ108は、揮発性メモリ要素(例えば、ランダムアクセスメモリ(DRAM、SRAM、SDRAMなどのRAM))及び不揮発性メモリ要素(例えば、ROM、EPROM、フラッシュPROM、EEPROM、ハードドライブ、磁気又は光学テープ、メモリレジスタ、CD−ROM、WORM、DVD、RAID(redundant array of inexpensive disks)、他のDASD(direct access storage device)など)の任意の1つ又は組み合わせを含みうる。さらに、メモリ108は、電気、磁気、光学、及び/又は他のタイプの記録媒体を組み合わせうる。メモリ108は、様々なコンポーネントが互いに離隔して配置されるが、プロセッサ106によりアクセスされる分散型のアーキティクチャを有しうる。メモリ108は、プロセッサ106に接続されており、そのため、プロセッサ106は、メモリ108から情報を読み出すことができ、メモリ108に情報を書き込むことができる。別の例では、メモリ108は、プロセッサ106に組み込まれていてもよい。他の例としては、プロセッサ106及びメモリ108が両方、1つのASIC又は他のIC(integrated circuit)に備えられてもよい。
メモリ108内のソフトウェアは、オンライン手書き入力コンピュータプログラムを含む。そのオンライン手書き入力コンピュータプログラムは、1つ又は複数の個別のプログラムを含んでいてもよい。その個別のプログラムのそれぞれは、順序付けられた、論理機能を実施するための実行命令のリストで構成される。オペレーティングシステム110は、オンライン手書き入力コンピュータプログラムの実行を制御する。オペレーティングシステム110は、PALM(登録商標)、WINDOWS(登録商標)、MAC及びIPHONE OS(登録商標)、LINUX(登録商標)、ANDROID(登録商標)などのようなプロプライエタリ(proprietary)なオペレーティングシステム、又は、商業的に入手可能なオペレーティングシステムであってもよい。理解されるように、以下で開示するシステム及び方法の思想から外れることなく、他のオペレーティングシステムが利用されうる。
メモリ108は、以下で述べる手書き入力認識に関する他のアプリケーションプログラム112、全般的に異なる機能、及びそれら両方を含んでいてもよい。アプリケーション112は、製造時にデバイス100に提供されるプログラムを含む。そして、アプリケーション112は、さらに、製造後にデバイス100にダウンロードされるプログラムを含んでもよい。いくつかの例は、テキストエディタ、電話ダイヤラ(telephone dialer)、連絡先ディレクトリ(contacts directory)、インスタントメッセージング手段(instant messaging facility)、電子メールプログラム、ワードプロセッシングプログラム、ウェブブラウザ、カメラなどを含む。
サポート及びコンプライアンス(compliance)能力を有するオンライン手書き入力認識コンピュータプログラムは、ソースプログラム、実行プログラム(オブジェクトコード)、スクリプト、又は、実行される命令セットで構成される任意の他のエンティティでありうる。ソースプログラムである場合、そのプログラムは、コンパイラ、アセンブラ、インタープリタ、又はこれらに類するものであって、メモリに含まれてもよいし、含まれなくてもよいものを介して翻訳され、オペレーティングシステムに関する操作が正しく行われるようにする必要がある。さらに、サポート及びコンプライアンスを有するオンライン手書き入力認識コンピュータプログラムは、(a)データクラス及びメソッドを有するオブジェクト指向プログラミング言語、(b)ルーチン、サブルーチン、及び/又は関数を有するプロシージャ型プログラミング言語のように記述されうる。例としては、これに限定されないが、C、C++、Pascal、Basic、Fortran、Cobol、Perl、Java、及びAdaがある。
システムは、プロセッサ106が、ユーザにより入力されたストロークを入力面104を介して検出したときに開始する。ユーザは、指、又は、ペン又はスタイラスのようないくつかの道具でストロークを入力してもよい。ストロークは、少なくともストローク開始位置、ストローク終了位置、及び、ユーザがストローク開始位置とストローク終了位置とを結んだパスにより特徴付けられる。異なるユーザが、わずかな変化を伴う同じ文字(字体)を自然に書きうるため、本システムは、各文字を入力しうる様々な方法に適応する。
図2は、本システムの例に係るオンライン手書き入力認識のためのシステムを模式的に示した図である。少なくとも1つの入力ストロークが開始されると、システムは、そのストロークをプリプロセッシング114する。プリプロセッシング114は、サイズ正規化及び/又はBスプライン近似のような入力を平滑化する方法を適用することでストローク開始及び終了の位置を結ぶパスを正規化することを含みうる。入力ストロークは、次に、3つのエキスパート(分割エキスパート116、認識エキスパート118、及び言語エキスパート120)に渡される。これら3つのエキスパートは、文字、単語、及び文のレベルで出力候補124を生成する動的プログラミングを通して協働する。
分割エキスパート116は、入力ストロークを単語及び個別の文字仮説に分割する異なる方法を定義する。文字仮説を形成するために、分割エキスパート116は、オリジナルの入力の連続するストロークをグループ化する。これは分割グラフという結果になる。分割グラフにおいて、各ノードは少なくとも1つの文字仮説に対応し、そして、文字間の隣接制約(adjacency constraints)はノード接続によって扱われる。もし対応する仮説が共通のストロークを有さず、そのストロークがオリジナルの入力において連続している場合に、ノードが隣接している、と考える。図3Aは、本システムの例に係る単語BEANの考えられうるユーザ入力を示している。特に、この図は、マルチストローク文字を有する重ね書きの例を示している。図3Bは、本システムの例に従い作成された図3Aの入力の考えられうる分割グラフを示している。
重畳手書き入力認識システム及び方法は、どこで単語が終わり、他のどこで単語が始まるかも決定しなくてはならない。本システム及び方法は、単語の境界を取得する複数の実施形態を可能にする。1つの実施形態においては、ユーザに対して各単語の後に特定のジェスチャーを入力するように要求する。この実施形態では、特定のジェスチャーをスペース文字(space character)として出力する。この実施形態は、分割工程にさらなる堅牢性をもたらす。なぜなら、それが、入力ストロークを単語及び個別の文字仮説に分割する異なるやり方を減少させるからである。しかし、この実施形態は、ユーザに対し、各単語の終わりを示す特定のジェスチャーを加えることを強制する。特定のジェスチャーは、いくらかのユーザにおいて間違われるかもしれない。
代替となる実施形態は、単語を分ける特定のジェスチャーを要求しない。代わりに、オンライン手書き入力認識コンピュータプログラムが、以下で詳述する認識エキスパート118及び/又は言語エキスパート120の補助を伴って自動的に単語の境界を検出する。例えば、言語エキスパート120は、とりわけ、N−gramモデル、構文解析、意味解析などの、語彙知識、及び所定の言語における連続する単語列の尤度をモデル化する技術に基づいて単語境界を取得するための言語情報130を利用する。
例えば、ユーザは、英語から抽出された言語情報130に基づく実施形態において重ね書きを伴う文字列“whattimeisit?”を入力しうる。この代替実施形態は、入力ストロークに対する全体的な意味を与え、言語情報130に基づく単語境界を取り戻す単語分割“what time is it?”を出力する。この実施形態は、ユーザに対し、各単語間に特定のジェスチャーを挿入することなく単語列の入力を許容するという利点を有する。
他の実施形態においては、前述の2つの方法が組み合わされうる。このケースでは、単語境界を検出することをより堅牢にするためにユーザが各単語の後に特定のジェスチャーを挿入しうる。しかし、ユーザがジェスチャーの挿入を無視したときはいつでも、手書き入力認識システムは、認識エキスパート118及び/又は言語エキスパート120の補助を伴って単語境界を検出できる。
1つの例において、分割エキスパートは、図3A及び図3Bに示すような、個別文字のそれぞれが、ペンアップ(pen-up)を伴ってその隣接する文字から分離されるハンドプリントライティング入力(handprint writing input)に限定されない。本システムの分割エキスパート116は、また、一方が他方の上に重なるように、続け書きの文字が書かれる続け書きも処理できる。図4は、単語“be”及び“an”の続け書きのユーザ入力を示している。続け書きのユーザ入力を解釈するとき、分割エキスパート116は、ストロークを、それを構成するセグメントに分割するための場所を定義する特定ポイントの検出に基づいて各ストロークを分割する。図5は、それを構成するセグメントに分割された続け書き“an”の例を示している。ストロークを、それを構成するセグメントに分割するための特定ポイントは、交差する点、ストロークパスの傾斜変化などによって定義されうる。これらの構成セグメントは、分割グラフを構築するために利用される。
認識エキスパート118は、文字候補のリストと、分割グラフの各ノードに対する確率又は認識スコアとを対応付ける。これらの確率又は認識スコアは、言語認識情報122に基づいている。言語認識情報は、全ての異なる文字、及び、特定の言語の基礎をなすアルファベットのシンボルを定義する。この情報は、言語依存であり、アルファベットを記述するための様々な個別の様式を認識する能力と共に一般的なアルファベットの違いを含む。例えば、個人が“7”を記載する方法は、その個人が米国出身か、仏国出身か、或いはさらに韓国出身かによっても全く異なりうる。図3A及び図3Bで与えられる例を続けると、図6は、2つの段階を含む認識エキスパート118の実施形態を示している。認識エキスパート118の第1の段階である特徴抽出126は、動的又は静的な特徴の組み合わせに基づいている。例えば、動的な特徴は、入力ストロークの軌道から抽出でき、入力ストロークの位置、方向、曲率のような情報に基づいている。静的な性質は、入力ストロークのビットマップ表現から抽出でき、投影画(projections)及びヒストグラムに基づきうる。
本実施形態の認識エキスパート118の第2の段階は、ニューラルネットワーク128のようなパターン分類器により抽出された特徴の分類である。本実施形態では、ニューラルネットワークがシンプルな多層パーセプトロン(perceptron)になりうる。ニューラルネットワークは、また、ニューラルネットワークが、悪く分割された文字に対応するノード仮説を拒否できるようにする拡張クラスを含む。認識エキスパート118は、分割グラフの各ノードに対する確率又は認識スコアを有する文字候補のリストを出力する。代替実施形態は、DNN(Deep Neural Network)、CNN(Convolutional Neural Network)、又は、RNN(Recurrent Neural Network)などの他の種類のニューラルネットワークを使用してもよい。さらに一般化すれば、任意の種類のパターン分類器がこの認識タスク(例えば、SVM(Support Vector Machine)、HMM(Hidden Markov Model))を処理するために使用されうる。
言語エキスパート120は、分割グラフにおける異なるパスについて言語学的意味を生成する。それは、言語情報130に応じて利用可能な他のエキスパートにより提案される候補をチェックする。この言語情報130は、語彙、通常表現などを含みうる。言語エキスパート120は、最良の認識パスを見つけることを目的とする。1つの実施形態において、言語エキスパート120は、最終状態オートマトン(決定論的FSA)のような言語情報130の内容を表す言語モデルを探索することによって、これを行う。図7は、図3A、図3B、及び図6の例について構築されており、単語BEAN、BY、CAR、CAT、及びCOWのみを含む語彙を有する言語オートマトンを示している。さらに、図7は、単語境界を定義するためにユーザにダッシュ132の挿入を規定する言語エキスパートの実施形態を表している。
語彙制約に加え、言語エキスパート120は、特定の言語においてどのくらいの頻度で単語又は所定の単語列が現れるか、又は、特定のユーザに使用されるかをモデル化する統計情報を使用してもよい。例えば、単語トリグラム言語モデル(word trigram language model)は、分割グラフにおける所定のパスの解釈の言語的尤度を評価するために使用されうる。
分割エキスパート116、認識エキスパート118、及び言語エキスパート120は、入力ストロークを処理し、文字、単語、及び文のレベルで出力候補124を生成する動的プログラミングを通じて協調的に動作する。1つの実施形態において、動的プログラミングは、分割グラフ及び言語モデルの両方で最良のパスを検索するビーム検索技術に基づいている。この例において、最良のパスは、最小コストに対応するパスである。最小コストのパスは、以下のコストの合計として定義される。
・分割グラフの対応するパスで遭遇する全ての文字候補のコスト。これらのコストは、分割グラフ内のこのパスに属する各ノードの確率又は認識スコアから評価されうる。1つの実施形態において、そのコストは、対数非線形関数(log non-linear function)を適用することによりニューラルネットワーク確率から評価される。
・言語モデルの対応するパスで遭遇する全ての単語のコスト。これらのコストは、言語エキスパート120からのN−gram確率から評価されうる。1つの実施形態において、そのコストは、対数非線形関数(log non-linear function)を適用することにより、言語エキスパート120からのN−gram確率から評価される。
本オンライン手書き入力認識コンピュータプログラムの全体トレーニングのために、分類器(例えば、ニューラルネットワーク)128についての全てのパラメータ及びシステムのあらゆるメタパラメータの自動学習を伴うグローバル判別子トレーニング手法がテキストレベルで使用でき、けれども、他のトレーニングシステム及び方法も使用されうる。本オンライン重畳手書き入力認識システム及び方法を通じて、分割、認識、及び解釈が、連続的又は階層的というよりは同時に実行されることでユーザ入力の手書き入力認識の最良の結果が提供される。
図4について議論したように、本システムの分割エキスパート116は、単独の文字というよりは、一方が他方に重なるようにつながった多数の文字が入力として記載される続け書きを処理できる。図8は、本システムのさらなる例に係るオンライン手書き入力認識についてのシステムを模式的に示した図である。このさらなる例示的なシステムは、図2のシステム例と同様に、終局的には、文字、単語、及び文のレベルで出力候補124を協調的に生成する分割エキスパート116、認識エキスパート118、及び言語エキスパート120へと投入されるストロークをプリプロセッシング114する。分割エキスパート116、認識エキスパート118、及び言語エキスパート120は、主に、少なくとも認識エンジン900の一部を形成する。プリプロセッシング114後のストロークを、続け書き入力の効率的な認識処理のための認識エンジン900へ提供するために、本例のシステムは、さらに、プリプロセッシング114後の入力に対する重畳分類902を採用する。重畳分類902は、入力における続け書き、非続け書き、文字の重なりを分類する。そして、この分類された入力を認識エンジン900へと渡す。同様の参照数字は、同様の機能的及び構造的な特徴を有する要素を表すものと理解されよう。
ここで重畳分類エキスパート902の動作を図8〜図10を参照しながら議論する。続け書きユーザ入力はつながった文字を含み、そこでは全ての文字又はいくつかの文字のみがつながっている。重なるような方法で手書き入力をするとき、単語及び文の書き込みは、入力面の同じスペースに、ある時間的作法(time-wise manner)で、それら単語及び文についての複数の断片が覆われるように行われる。例えば、異なる時間に、少なくともいくつかの同じ空間を複数の断片が占めるように行われる。各断片は、1つ又は複数の完全な文字を含みうる。例えば、前にある及び/又は後に続く断片を結合したものが完全な単語を形成するような文字(letters)を含みうる。しかし、後述するように、各断片は、また、1つ又は複数の不完全な文字を含みうる。例えば、第1の断片は、一例として、文字“t”又は“i”の根元部分(root)を含みうる。そして、第2(次)の断片は、文字“t”の‘横棒(bar)’又は文字“i”の‘点(dot)’を含みうる。それらは、前にある及び/又は後に続く断片を結合したものが不完全な文字を形成し、断片を分類する上で特有の課題を提供する。
そのような重なりは、明らかに多くの考えられうる解釈を導き、認識エンジンの処理時間及び精度に影響する。本システムは、しかし、認識エンジンによりテストされる仮説数の減少を通して処理時間を改善し、及び、考えられうる仮説の制約を通して処理精度を改善する重畳入力のメカニズムを使用する。これらは有効なようである。これは次のようにして達成される。
図9Aは、断片“hel”及び“lo”の重畳入力としての単語“hello”の続け書きユーザ入力を示す。図9Bは、ある時間的作法でのこの入力を示している。理解されうるように、第1の断片904は、完全な文字“h”及び“e”を含み、それらは続け書きの手書き入力(例えば、シングルストロークのような書き込み又は入力)の中でつながっている。そして、続け書きの手書き入力の中で完全な文字“l”を含み、しかし、それは他の文字から離れている(例えば、分離されている、又はつながっていない)。さらに、第2の断片906は、続け書きの手書き入力の中で完全な文字“l”及び“o”を含み、それは他から離れている。これは単なる一例であり、そして、全ての文字がつながる及び/又は続け書きの筆跡になることもあるし、又は、いずれの文字もそのようにならないこともある。先に記述した本システムの例において、認識エンジンは、全ての文字を、断片それ自体に関係しない多くの仮説の処理を許容する分割グラフを構築するための断片にも分割する。本例では、重畳分類エキスパート902は、認識エンジン900によって生成され、従って、テストされうる断片であって、仮説の数を制限する断片に関する入力を処理するように構成される。ゆえに、処理時間が低減され、そして、認識精度が向上する。
重畳分類エキスパート又は分類器902は、少なくとも部分的に、現在の及び隣接するストロークに基づいて、入力についての現在のストロークが新しい断片の開始であるかを検出し、それに応じてストロークを分類する。例えば、図9Bでは、第1の断片(鎖線で示されている)の中のつながった文字“he”を形成するストロークが、断片の開始として分類器902により検出される。そして、第2の断片(鎖線で示されている)の中の分離した文字“l”を形成するストロークが、他の断片の開始として分類器902により検出される。分類器902は、ゆえに、2つの分類された断片内の入力を分類し、その入力のいずれのストロークがいずれの分類された断片に属するのかを知る。そのストロークの入力についての時間情報を考慮し、分類器は、第1の分類された断片内の文字“l”を形成する最終的なストロークがそれに続く第2の分類された断片内の第1の文字“l”を形成するストロークの一部でないと分類しうる。この分類は分析されて認識エンジン900に伝えられ、そのため、分割エキスパート116は、すでに、これら特定のストロークについての分割及び認識処理のための分割ポイントを知っている。
断片の開始を検出するために、分類器902は、情報部分の一つだけというよりむしろ、又は、ペンアップ及びペンダウンの情報だけというよりむしろ、入力ストロークの空間的、時間的、及び形状的な情報を使用する。つまり、もし時間的な情報だけが使用されると、認識エンジンは、時間に基づいてストローク断片についての推定をするか、分割にかかわらず全てのストロークについての仮説を進展させるかのいずれかを強制されるだろう。なぜなら、文字のストローク及び直前のストロークが同じ文字に属するかどうかを知る方法がないと思われるからである。さらに、もし、ペンアップ及びペンダウンの情報だけが分割を決定するのに使用された場合(単一文字重畳入力法のケースのような)、次に、第1の断片904における“he”と“l”との間のペンアップ及びペンダウンのイベントは、明らかに不正確であるが、分割イベントとして解釈されるであろう。さらに、もし、空間的な情報だけが分割の決定に使用された場合、例えば、例示されているように左から右への文字入力のケースにおいて(他の方向の入力、例えば、右から左、上から下など、についてもまた適用可能であることは理解されよう)、ペンダウンの位置が直前のペンアップの位置の左であるときの検出においては、認識エンジンを正しくない認識に導くことにより、不完全な文字が結合されないだろう。
図10Aは、断片“lhe”及び“−”の重畳入力としての単語“the”の続け書きユーザ入力を示している。図10Bは、ある時間的作法でのこの入力を表している。理解されるように、第1の断片908は、互いにつながりがある文字“l”及び“h”と、続け書きの手書き入力でそれらから分離している文字“e”とを含んでいる。第2の断片910は、完全な文字“−”を含んでいる。これは単なる一例であり、全ての文字がつながりうる及び/又は続け書きの手書き入力になりうる、又はそのような文字が全くないこともありうる。明らかに、この入力の中で、第2の断片の遅延ストローク“−”は、第1の断片の中の“t”の‘横棒’として意図されたものである。しかし、もし、分類器902がこの入力の断片(例えば、分割されたもの)を時間的なもの、空間的なもの、又はペンアップ・ペンダウン行動だけに基づいて分類したならば、遅延ストローク“−”は、新たに分類される断片の開始として分類されるだろうし、ゆえに、認識エンジン900が、2つの仮説“lhe −”及び“lhe−”を正しくないという認識に導く要因になるだろう。これらの仮説はいずれもユーザ入力を反映していない。分類器902は、しかし、ストロークを断片に分類するために空間的な(及び時間的な)情報と共にストロークの形状を利用する。時間的な情報は、入力ストロークの時間的な順序についての知識を提供する。空間的な情報は、前の断片における最後のストロークと、重畳入力イベントを示す次の断片の最初のストロークとの相対位置の知識を提供するだけでなく、これらの断片の中の全てのストロークの相対位置の情報をも提供する。形状情報は、重畳ストロークが単一文字に属していそうか否かを考慮することを分類器902に許容する。例えば、隣接する又は直前の使用可能な不完全な断片が、まとまって、これら断片の任意の1つにおける完全な文字を形成するか否か、の考慮を許容する。
つまり、図10Bの例において、分類器902は、空間的な(及び時間的な)情報に基づいて、遅延ストローク“−”がストローク“lhe”に対する相対位置を有することを検出する。それはストローク“−”が完全なストローク“lhe”のストロークセグメント“l”に重なることを意味する。そして、分類器902は、これらの重なったストロークの形状情報に基づいて、もっともらしい単一の又は完全な文字を生成するために、これらの重なったストロークが結合されうると検出する。結果として、重畳分類エキスパート902は、新たな断片の開始として遅延ストロークを分類せず(すなわち、ストローク“−”は図10Bにおいて鎖線で示されておらず、ストローク“lh”がそれで示されている)、単一の分類された断片を認識エンジンに提供する。よって、認識エンジンに2つの仮説“the”及び“lhe−”を評価させ、それは、明らかに正しいという認識結果を導くだろう。この方法で、重畳分類エンジン902は、ルールを実施する。そのルールは、分類された断片が完全な文字だけを含む、及び、不完全な文字を含んだ入力デジタルインクの隣接又は直近の断片が、既知の形状情報により定義されるように、単一の分類された断片として分類される、というものである。
さらに分割又は断片の分類に利用可能な基準は、文字の間のスペースの存在である。しかし、さらなる基準なしに、これは正しくない及び時間コストのかかる認識を導きうる。これは、入力面のサイズに依存し(例えば、手書き入力のためのデバイスの幅)、単語間にスペースがある文字列より長い文字列が重畳するやり方又はモードで入力されうることに理由がある。すなわち、単語、文、段落の断片が互いに重なることに理由がある。そうしたケースにおいて、文字間のスペースは、入力断片の指標というよりむしろ、認識される入力の一部である。一方、分類器による新しい断片の検出及び分類は、認識エンジンに、隣接する分類された断片の最後及び最初の文字の間のスペースの仮説を、考えられうる仮説の評価に含めさせるために使用されうる。
図8〜図10の例の記載は、続け書きの手書き入力の中の重なった断片のそれぞれに挿入された多数の文字について作成されたものであるが、当業者であれば理解されるように、形状及び空間の情報の使用、又は、形状の、空間的な、時間的な(及び/又は、ペンアップ・ペンダウン)情報は、単一又は複数の非続け書きストロークの文字、例えば、印刷物の文字を断片に分類するために使用されうる。さらに、分類器は、全てのストロークを、新たな断片のもっともらしい生成というイベントが検出されるまで、同じ断片に属するとして扱うデフォルトの分類を提供するように構成されると考えてもよい。しかし、当業者において理解されるように、重畳分類は、重畳ストロークを、不完全なストロークの完成などの例外が検出されるまで、異なる断片に属するものとして扱うデフォルトの分類を提供する結合ストローク情報を使用しうる。形状情報を適用するために、分類器902は、分類器又はシステムのメモリに記憶されているもっともらしい文字について、ストロークの形状及びそれら互いの関係についてのデータベース、リスト、テーブル、又は辞書などを参照してもよい。さらに、重畳分類エキスパートは、断片を分類するために、直後の、すぐ後に続く、又は直接隣り合う断片だけ、又は、連続する入力断片の列についての、相対的な形状の及び位置の(及び時間の)情報を比較するように構成されうる。例えば、もし3つの連続する入力断片について述べるなら、もし分類器が、第1の及び第3の断片が完全な文字を含むらしいと検出したなら、分類器は、この情報を、全ての3つの入力断片のストロークを含む単一の断片を分類するために使用してもよい。その不完全な文字は、結合したものが完全な文字を形成するものであり、例えば、第1の断片の中の“t”の根元部分‘l’及び第3の断片の中の“t”の横棒‘−’がある。
これまで記述されたものは最良の形態と考えられるもの及び/又は他の例である一方で、様々な修正がこれにされうるし、そして、ここで開示された構成は様々な形式及び例において実施されうるし、また、これらは多くの他の応用、組み合わせ、及び環境において適用されうるし、ここで記述されたことのいくつかだけが実施されてもよいということが理解されよう。当業者であれば開示された側面がその構成についての真の思想及び目的から外れることなく変形又は修正されうることは認識されるであろう。従って、その構成は、具体化された詳細、提示、及びこの明細書における記載例に限定されない。ここで開示された先進的な思想の真の範囲に含まれる任意の及び全ての修正及び変形が保護されることを目的とする。

Claims (10)

  1. コンピュータ読み取り可能なプログラムコードを有する非一時的なコンピュータ読み取り可能な記録媒体であって、前記コンピュータ読み取り可能なプログラムコードは、入力ストロークの少なくとも一部が他と重なった複数の断片についての手書き入力認識を提供する方法を実施するためにコンピュータが実行するように適合され、前記方法は、
    前記入力ストロークの少なくとも2つの連続する断片についての入力ストロークの相対位置を検出するステップと、
    前記少なくとも2つの連続する断片についての前記入力ストロークの形状を検出するステップと、
    前記検出した相対位置から、前記入力ストロークのセグメントの重なりを決定し、そして、前記検出した形状から、前記重なったセグメントがもっともらしく文字を形成するかを判断するステップと
    前記もっともらしいと判断した文字に基づいて前記断片を分類するステップと
    前記分類した断片を、前記分類した断片に基づく文字仮説の評価のための認識エンジンに提供するステップと、を含み、
    前記認識エンジンの中で、前記方法は、
    前記分類した断片のストロークに基づく分割グラフを生成するステップであって、前記分割グラフは、文字仮説に対応するノードからなる、ステップと、
    パターン分類法に基づいて前記分割グラフの各ノードに認識スコアを割り当てるステップと、
    前記認識スコア及び言語モデルに基づいて前記入力ストロークの言語学的意味を生成するステップと、
    前記分割グラフ、前記認識スコア、及び前記言語モデルの同時分析に基づく出力を提供するステップと、
    を含む、コンピュータ読み取り可能な記録媒体
  2. 前記入力ストロークは前処理され、前記前処理は、少なくとも前記入力ストロークの正規化及び平滑化を含む、
    請求項1に記載の非一時的なコンピュータ読み取り可能な記録媒体。
  3. 前記分類した断片のそれぞれは、1つ又は複数の入力断片の前記入力ストロークによって形成される完全な文字を含むように定義される
    請求項1に記載の非一時的なコンピュータ読み取り可能な記録媒体。
  4. 重なりのある入力ストロークについての手書き入力認識を提供する方法であって、前記方法は、
    前記入力ストロークの少なくとも2つの連続する断片についての入力ストロークの相対位置を検出するステップと、
    前記少なくとも2つの連続する断片についての前記入力ストロークの形状を検出するステップと、
    前記検出した相対位置から、前記入力ストロークのセグメントの重なりを決定し、そして、前記検出した形状から、前記重なったセグメントがもっともらしく文字を形成するかを判断するステップと、
    前記もっともらしいと判断した文字に基づいて前記断片を分類するステップと、
    前記分類した断片を、前記分類した断片に基づく文字仮説の評価のための認識エンジンに提供するステップと、を含み、
    前記認識エンジンの中で、前記方法は、
    前記分類した断片のストロークに基づく分割グラフを生成するステップであって、前記分割グラフは文字仮説に対応するノードからなる、ステップと、
    パターン分類法に基づいて前記分割グラフの各ノードに認識スコアを割り当てるステップと、
    前記認識スコア及び言語モデルに基づいて前記入力ストロークの言語学的意味を生成するステップと、
    前記分割グラフ、前記認識スコア、及び前記言語モデルの同時分析に基づく出力を提供するステップと、
    を含む、方法。
  5. 前記入力ストロークは前処理され、前記前処理は、少なくとも前記入力ストロークの正規化及び平滑化を含む、
    請求項4に記載の方法。
  6. 前記分類した断片のそれぞれは、1つ又は複数の入力断片の前記入力ストロークによって形成される完全な文字を含むように定義される
    請求項4に記載の方法。
  7. 前記少なくとも2つの連続する断片についての前記入力ストロークの前記検出した相対位置は、前記入力ストロークの空間的な及び時間的な情報から検出される
    請求項1に記載の非一時的なコンピュータ読み取り可能な記録媒体。
  8. 前記分割グラフは、さらに、前記分類された断片に基づく前記文字仮説の間の空間仮説に対応するノードを含む、
    請求項1に記載のコンピュータ読み取り可能な記録媒体。
  9. 前記少なくとも2つの連続する断片についての前記入力ストロークの前記検出した相対位置は、前記入力ストロークの空間的及び時間的な情報から検出される
    請求項1に記載の非一時的なコンピュータ読み取り可能な記録媒体。
  10. 前記分割グラフは、さらに、前記分類した断片に基づく前記文字仮説の間の空間仮説に対応するノードを含む、
    請求項1に記載の非一時的なコンピュータ読み取り可能な記録媒体。
JP2017559679A 2015-05-15 2016-05-13 重畳手書き入力認識技術のためのシステム及び方法 Active JP6735775B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15290129.4 2015-05-15
EP15290129 2015-05-15
PCT/EP2016/000799 WO2016184559A1 (en) 2015-05-15 2016-05-13 System and method for superimposed handwriting recognition technology

Publications (2)

Publication Number Publication Date
JP2018518755A JP2018518755A (ja) 2018-07-12
JP6735775B2 true JP6735775B2 (ja) 2020-08-05

Family

ID=53396392

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017559679A Active JP6735775B2 (ja) 2015-05-15 2016-05-13 重畳手書き入力認識技術のためのシステム及び方法

Country Status (5)

Country Link
EP (1) EP3295292B1 (ja)
JP (1) JP6735775B2 (ja)
KR (1) KR102310385B1 (ja)
CN (1) CN107912062B (ja)
WO (1) WO2016184559A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10719701B2 (en) * 2018-04-25 2020-07-21 Accenture Global Solutions Limited Optical character recognition of connected characters
CN114495117A (zh) * 2022-02-15 2022-05-13 甘肃政法大学 一种中文手写汉字的笔划提取方法
KR20240065997A (ko) * 2022-11-07 2024-05-14 삼성전자주식회사 필기 입력을 인식하는 방법 및 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703698B1 (ko) * 2005-02-16 2007-04-05 삼성전자주식회사 공간 필기 인식 장치 및 방법, 그리고 상기 방법을 기록한기록 매체
US8077975B2 (en) * 2008-02-26 2011-12-13 Microsoft Corporation Handwriting symbol recognition accuracy using speech input
CN103366151B (zh) * 2012-03-30 2017-05-31 佳能株式会社 手写字符识别方法以及设备

Also Published As

Publication number Publication date
WO2016184559A1 (en) 2016-11-24
CN107912062A (zh) 2018-04-13
EP3295292B1 (en) 2020-09-02
KR102310385B1 (ko) 2021-10-07
KR20180030966A (ko) 2018-03-27
EP3295292A1 (en) 2018-03-21
CN107912062B (zh) 2021-02-23
JP2018518755A (ja) 2018-07-12

Similar Documents

Publication Publication Date Title
US9911052B2 (en) System and method for superimposed handwriting recognition technology
US10007859B2 (en) System and method for superimposed handwriting recognition technology
JP6777723B2 (ja) 複数のオブジェクトの入力を認識するためのシステムならびにそのための方法および製品
KR101354663B1 (ko) 수기 기호 인지 방법 및 장치
KR20180115699A (ko) 다중 입력 관리를 위한 시스템 및 방법
EP3535652B1 (en) System and method for recognizing handwritten stroke input
JP6735775B2 (ja) 重畳手書き入力認識技術のためのシステム及び方法
EP3491580B1 (en) System and method for beautifying superimposed digital ink
WO2006090404A1 (en) System, method, and apparatus for accomodating variability in chunking the sub-word units of online handwriting
WO2024110354A1 (en) Setting font size in an unconstrained canvas

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200608

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: 20200616

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200714

R150 Certificate of patent or registration of utility model

Ref document number: 6735775

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250