JP7361156B2 - Managing real-time handwriting recognition - Google Patents

Managing real-time handwriting recognition Download PDF

Info

Publication number
JP7361156B2
JP7361156B2 JP2022082332A JP2022082332A JP7361156B2 JP 7361156 B2 JP7361156 B2 JP 7361156B2 JP 2022082332 A JP2022082332 A JP 2022082332A JP 2022082332 A JP2022082332 A JP 2022082332A JP 7361156 B2 JP7361156 B2 JP 7361156B2
Authority
JP
Japan
Prior art keywords
input
recognition
handwriting
user
handwriting input
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
JP2022082332A
Other languages
Japanese (ja)
Other versions
JP2022116104A (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.)
Apple Inc
Original Assignee
Apple Inc
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
Priority claimed from US14/290,935 external-priority patent/US9898187B2/en
Priority claimed from US14/291,722 external-priority patent/US20140363082A1/en
Priority claimed from US14/292,138 external-priority patent/US20140361983A1/en
Priority claimed from US14/291,865 external-priority patent/US9495620B2/en
Application filed by Apple Inc filed Critical Apple Inc
Publication of JP2022116104A publication Critical patent/JP2022116104A/en
Priority to JP2023171414A priority Critical patent/JP2023182718A/en
Application granted granted Critical
Publication of JP7361156B2 publication Critical patent/JP7361156B2/en
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
    • 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/2264Character recognition characterised by the type of writing of cursive writing using word shape
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/28Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet
    • G06V30/287Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet of Kanji, Hiragana or Katakana characters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/28Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet
    • G06V30/293Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet of characters other than Kanji, Hiragana or Katakana

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Character Discrimination (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)
  • Image Analysis (AREA)
  • Character Input (AREA)

Description

本明細書は、コンピューティングデバイス上に手書き入力の機能性を提供することに関し、より具体的には、コンピューティングデバイス上に、リアルタイムの、マルチスクリプト、ストローク順序非依存式の、手書き認識及び入力の機能性を提供することに関する。 This specification relates to providing handwriting input functionality on a computing device, and more particularly, to providing real-time, multi-script, stroke order independent, handwriting recognition and input on a computing device. Relating to providing functionality.

手書き入力法は、タッチ感知面(例えば、タッチ感知ディスプレイスクリーン、又はタッチパッド)を装備するコンピューティングデバイス用の、重要な代替的入力方法である。多くのユーザ、特に、一部のアジア又はアラブ諸国のユーザは、筆写体で書くことに慣れており、キーボード上でのタイピングとは対照的に、普通の手書きで書き込むことを快適に感じることができる。 Handwriting input methods are an important alternative input method for computing devices equipped with touch-sensitive surfaces (eg, touch-sensitive display screens, or touch pads). Many users, especially those in some Asian or Arab countries, are accustomed to writing in cursive and may feel comfortable writing in plain handwriting as opposed to typing on a keyboard. can.

中国語の漢字及び日本語の漢字(中国文字とも称される)などの、特定の表語文字書き込みシステムに関しては、代替的な音節入力法(例えば、ピンイン又は仮名)が、対応する表語文字書き込みシステムの文字を入力するために利用可能であっても、ユーザが、表語文字をどのように表音して綴るかを知らない場合、及び、その表語文字の不正確な表音式綴りを使用する場合、そのような音節入力法は不適切である。それゆえ、コンピューティングデバイス上で手書き入力の使用が可能であることは、関連する表語文字書き込みシステムに関して、十分に、又は全く単語を発音することができないユーザにとって、極めて重要となる。 For certain logographic writing systems, such as Chinese Hanji and Japanese Kanji (also referred to as Chinese characters), alternative syllabic input methods (e.g., Pinyin or Kana) can be used to write the corresponding logographic characters. Even if a writing system is available for inputting characters, if the user does not know how to phonetically spell the logogram and the incorrect phonetic form of that logogram. When using spelling, such syllable input methods are inappropriate. Therefore, the ability to use handwritten input on a computing device becomes extremely important for users who are unable to pronounce words well or at all with respect to the associated logographic writing system.

手書き入力の機能性は、世界の特定の領域内では、ある程度普及してきてはいるが、依然として改善が必要とされている。具体的には、人間の手書きは、(例えば、ストローク順序、サイズ、書体などの観点から)非常に変動的であり、高品質の手書き認識ソフトウェアは複雑で、広範囲の訓練を必要とする。それゆえ、限られたメモリ及びコンピューティングリソースを有するモバイルデバイス上に、効率的なリアルタイム手書き認識を提供することは、困難な課題となっている。 Although handwriting input functionality has become somewhat popular within certain areas of the world, improvements are still needed. Specifically, human handwriting is highly variable (e.g., in terms of stroke order, size, typeface, etc.), and high-quality handwriting recognition software is complex and requires extensive training. Therefore, providing efficient real-time handwriting recognition on mobile devices with limited memory and computing resources has become a difficult challenge.

更には、今日の多文化的世界では、多くの国々のユーザは多数の言語を使用し、2種以上のスクリプトで書き込むこと(例えば、映画のタイトルを英語で言及する、中国語のメッセージを書き込むこと)を頻繁に必要とし得る。しかしながら、書き込み中に、認識システムを、所望のスクリプト又は言語に手動で切り替えることは、煩雑かつ非効率的である。更には、従来のマルチスクリプト手書き認識技術の有用性は、厳格に限定されているが、これは、デバイスの認識能力を、複数のスクリプトを同時に取り扱うように拡大することが、その認識システムの複雑性、及びコンピュータリソースに対する要求を、大幅に増大させるためである。 Furthermore, in today's multicultural world, users from many countries use multiple languages and may write in more than one script (e.g. mention a movie title in English, write a message in Chinese, etc.) ) may be required frequently. However, manually switching the recognition system to the desired script or language during writing is cumbersome and inefficient. Furthermore, the usefulness of conventional multi-script handwriting recognition techniques is severely limited, since expanding the recognition capabilities of a device to handle multiple scripts simultaneously increases the complexity of the recognition system. This is because the demands on performance and computer resources are significantly increased.

更には、従来の手書き技術は、認識精度を達成するために、言語又はスクリプト固有の特殊性に依存するところが大きい。そのような特殊性は、他の言語又はスクリプトに、容易に移植可能なものではない。それゆえ、新たな言語又はスクリプトに関する、手書き入力能力を追加することは、ソフトウェア及びデバイスの供給元によって容易には着手されることのない、困難な作業である。結果として、多言語のユーザには、自身の電子デバイスに関する、重要な代替的入力方法が与えられていない。 Moreover, traditional handwriting techniques rely heavily on language or script-specific specificities to achieve recognition accuracy. Such specificities are not easily portable to other languages or scripts. Therefore, adding handwriting input capabilities for new languages or scripts is a difficult task that is not easily undertaken by software and device suppliers. As a result, multilingual users are not provided with significant alternative input methods for their electronic devices.

手書き入力を提供するための従来のユーザインタフェースは、ユーザから手書き入力を受け入れるための区域、及び手書き認識結果を表示するための区域を含む。小さいフォームファクタを有するポータブルデバイス上では、効率、精度、及び全般的なユーザエクスペリエンスを改善するために、ユーザインタフェースの著しい改善が、依然として必要とされている。 A conventional user interface for providing handwriting input includes an area for accepting handwriting input from a user and an area for displaying handwriting recognition results. Significant improvements in user interfaces are still needed on portable devices with small form factors to improve efficiency, accuracy, and overall user experience.

本明細書は、汎用認識部を使用する、マルチスクリプト手書き認識を提供するための技術を説明する。この汎用認識部は、種々の言語又はスクリプトでの文字に関する書き込みサンプルの、大規模なマルチスクリプトコーパスを使用して訓練される。この汎用認識部の訓練は、言語非依存式、スクリプト非依存式、ストローク順序非依存式、及びストローク方向非依存式である。それゆえ、使用中に入力言語間の手動切り替えを必要とすることなく、同じ認識部が、混合言語、混合スクリプトの手書き入力を認識することが可能である。更には、この汎用認識部は、モバイルデバイス上にスタンドアロン型モジュールとして配備されるほど十分に軽量であることにより、世界中の種々の領域で使用される、種々の言語及びスクリプトでの手書き入力が可能となる。 This specification describes techniques for providing multi-script handwriting recognition using a general purpose recognizer. This general purpose recognizer is trained using a large multi-script corpus of writing samples for characters in various languages or scripts. The general recognition unit is trained in a language-independent manner, a script-independent manner, a stroke order-independent manner, and a stroke direction-independent manner. Therefore, the same recognition unit can recognize mixed language, mixed script handwritten input without the need for manual switching between input languages during use. Furthermore, this universal recognizer is lightweight enough to be deployed as a standalone module on a mobile device, allowing it to handle handwritten input in a variety of languages and scripts used in different areas around the world. It becomes possible.

更には、この汎用認識部は、ストローク順序非依存式、及びストローク方向非依存式の、空間的に導出される特徴について訓練され、ストロークレベルでの時間的情報又は配列情報を必要としないため、この汎用認識部は、従来の時間に基づく認識方法(例えば、隠れマルコフ法(HMM)に基づく認識方法)に勝る、数多くの更なる特徴及び利点を提供する。例えば、ユーザは、1つ以上の文字、語句、及び文のストロークを、任意の順序で入力しても、依然として同じ認識結果を得ることが可能となる。それゆえ、順序外の複数文字入力、及び、以前に入力した文字の順序外の修正(例えば、追加又は書き直し)が、この場合に可能となる。 Furthermore, this general-purpose recognizer is trained on stroke order-independent and stroke direction-independent spatially derived features and does not require temporal or sequence information at the stroke level; This universal recognizer provides a number of additional features and advantages over traditional time-based recognition methods, such as Hidden Markov Method (HMM)-based recognition methods. For example, a user can enter one or more letters, phrases, and sentence strokes in any order and still obtain the same recognition result. Therefore, out-of-order multiple character input and out-of-order modification (eg, addition or rewriting) of previously input characters are possible in this case.

更には、この汎用認識部は、リアルタイム手書き認識に関しても使用され、その場合、各ストロークに関する時間的情報が利用可能であり、汎用認識部によって文字認識が実行される前に、手書き入力の曖昧性を除去するか、又は手書き入力を分割するために、任意選択的に使用される。本明細書で説明される、リアルタイムの、ストローク順序非依存式の認識は、従来のオフライン認識方法(例えば、光学式文字認識(OCR))とは異なるものであり、従来のオフライン認識方法よりも良好な性能を提供することができる。更には、本明細書で説明される汎用認識部は、種々の変動(例えば、速度、緩急、ストローク順序、ストローク方向、ストローク連続性などの変動)の顕著な特徴を、認識システム内に明示的に組み込むことなく、個別の書き癖における高い変動性(例えば、速度、緩急、ストローク順序、ストローク方向、ストローク連続性などの変動性)を処理することが可能であることにより、認識システムの全体的な複雑性が低減される。 Furthermore, this general-purpose recognizer is also used for real-time handwriting recognition, where temporal information about each stroke is available and the ambiguity of the handwriting input is determined before character recognition is performed by the general-purpose recognizer. Optionally used to remove or split handwritten input. The real-time, stroke order-independent recognition described herein is different from and better than traditional offline recognition methods (e.g., optical character recognition (OCR)). Can provide good performance. Furthermore, the general-purpose recognizer described herein allows the salient features of various variations (e.g., variations in speed, slowness, stroke order, stroke direction, stroke continuity, etc.) to be explicitly incorporated into the recognition system. The ability to handle high variability in individual writing habits (e.g., variability in speed, slowness, stroke order, stroke direction, stroke continuity, etc.) without incorporating into the recognition system's overall complexity is reduced.

本明細書で説明されるように、一部の実施形態では、時間的に導出されるストローク分布情報が、任意選択的に、汎用認識部内に再導入されて、認識精度が向上し、同じ入力画像に関する、類似した見た目の認識出力間の曖昧性が除去される。時間的に導出されるストローク分布情報の再導入は、汎用認識部のストローク順序及びストローク方向非依存性を損なうものではないが、これは、時間的に導出される特徴と、空間的に導出される特徴とが、別個の訓練プロセスを通じて得られるものであり、その別個の訓練プロセスが完了した後にのみ、手書き認識モデル内で組み合わされるためである。更には、時間的に導出されるストローク分布情報は、類似した見た目の文字の、ストローク順序の相違についての明示的知識に依存することなく、類似した見た目の文字の、顕著な時間的特性を捕捉するように、慎重に設計される。 As described herein, in some embodiments, temporally derived stroke distribution information is optionally reintroduced within the general purpose recognizer to improve recognition accuracy and Disambiguation between similar-looking recognition outputs for images is removed. The reintroduction of temporally derived stroke distribution information does not impair the stroke order and stroke direction independence of the general-purpose recognizer, but this This is because the features are obtained through a separate training process and are combined within the handwriting recognition model only after the separate training process is completed. Furthermore, temporally derived stroke distribution information captures salient temporal characteristics of similar-looking characters without relying on explicit knowledge of differences in stroke order of similar-looking characters. carefully designed to do so.

手書き入力の機能性を提供するためのユーザインタフェースもまた、本明細書で説明される。 A user interface for providing handwriting input functionality is also described herein.

一部の実施形態では、マルチスクリプト手書き認識を提供する方法は、マルチスクリプト訓練コーパスの空間的に導出される特徴に基づいて、マルチスクリプト手書き認識モデルを訓練することであって、このマルチスクリプト訓練コーパスが、少なくとも3つの非重複スクリプトの文字に対応する、それぞれの手書きサンプルを含む、訓練することと、マルチスクリプト訓練コーパスの空間的に導出される特徴について訓練されている、そのマルチスクリプト手書き認識モデルを使用して、ユーザの手書き入力に関するリアルタイム手書き認識を提供することとを含む。 In some embodiments, a method of providing multi-script handwriting recognition is to train a multi-script handwriting recognition model based on spatially derived features of a multi-script training corpus, the method comprising: training, wherein the corpus includes respective handwriting samples corresponding to characters of at least three non-overlapping scripts; and the multi-script handwriting recognition is trained on spatially derived features of the multi-script training corpus. using the model to provide real-time handwriting recognition for the user's handwriting input.

一部の実施形態では、マルチスクリプト手書き認識を提供する方法は、マルチスクリプト手書き認識モデルを受信することであって、このマルチスクリプト認識モデルが、マルチスクリプト訓練コーパスの空間的に導出される特徴について訓練されており、このマルチスクリプト訓練コーパスが、少なくとも3つの非重複スクリプトの文字に対応する、それぞれの手書きサンプルを含む、マルチスクリプト手書き認識モデルを受信することと、ユーザから手書き入力を受信することであって、この手書き入力が、ユーザデバイスに結合されたタッチ感知面上に提供される、1つ以上の手書きストロークを含む、手書き入力を受信することと、この手書き入力の受信に応じて、マルチスクリプト訓練コーパスの空間的に導出される特徴について訓練されている、マルチスクリプト手書き認識モデルに基づいて、1つ以上の手書き認識結果を、ユーザにリアルタイムで提供することとを含む。 In some embodiments, a method of providing multi-script handwriting recognition includes receiving a multi-script handwriting recognition model, the multi-script recognition model comprising spatially derived features of a multi-script training corpus. receiving a multi-script handwriting recognition model trained, the multi-script training corpus including respective handwriting samples corresponding to characters of at least three non-overlapping scripts; and receiving handwriting input from a user. receiving handwriting input, the handwriting input comprising one or more handwriting strokes provided on a touch-sensitive surface coupled to a user device; and in response to receiving the handwriting input; providing one or more handwriting recognition results to a user in real-time based on a multi-script handwriting recognition model that is trained on spatially derived features of a multi-script training corpus.

一部の実施形態では、リアルタイム手書き認識を提供する方法は、ユーザから複数の手書きストロークを受信することであって、それらの複数の手書きストロークが、1つの手書き文字に対応する、複数の手書きストロークを受信することと、それらの複数の手書きストロークに基づいて、入力画像を生成することと、その手書き文字のリアルタイム認識を実行するために、手書き認識モデルに入力画像を提供することであって、この手書き認識モデルが、ストローク順序非依存式の手書き認識を提供する、入力画像を提供することと、ユーザから受信された複数の手書きストロークの、それぞれの順序に関わりなく、複数の手書きストロークを受信するリアルタイムで、同一の第1の出力文字を表示することとを含む。 In some embodiments, a method of providing real-time handwriting recognition includes receiving a plurality of handwritten strokes from a user, the plurality of handwritten strokes corresponding to one handwritten character. generating an input image based on the plurality of handwritten strokes; and providing the input image to a handwriting recognition model to perform real-time recognition of the handwritten character; The handwriting recognition model provides stroke order independent handwriting recognition by providing an input image and receiving a plurality of handwritten strokes received from a user, regardless of their respective order. displaying the same first output character in real time.

一部の実施形態では、この方法は、ユーザから第2の複数の手書きストロークを受信することであって、それらの第2の複数の手書きストロークが、第2の手書き文字に対応する、受信することと、それらの第2の複数の手書きストロークに基づいて、第2の入力画像を生成することと、第2の手書き文字のリアルタイム認識を実行するために、手書き認識モデルに第2の入力画像を提供することと、第2の複数の手書きストロークを受信するリアルタイムで、第2の複数の手書きストロークに対応する第2の出力文字を表示することであって、第1の出力文字と第2の出力文字とが、ユーザによって提供された、第1の複数の手書き入力及び第2の複数の手書き入力のそれぞれの順序とは無関係な、空間的配列で同時に表示される、第2の出力文字を表示することとを更に含む。 In some embodiments, the method comprises receiving a second plurality of handwritten strokes from a user, the second plurality of handwritten strokes corresponding to a second handwritten character. generating a second input image based on the second plurality of handwritten strokes; and applying the second input image to the handwriting recognition model to perform real-time recognition of the second handwritten character. and displaying, in real time upon receiving the second plurality of handwritten strokes, a second output character corresponding to the second plurality of handwritten strokes, the first output character and the second and a second output character simultaneously displayed in a spatial arrangement independent of the respective order of the first plurality of handwritten inputs and the second plurality of handwritten inputs provided by the user. and displaying.

一部の実施形態では、第2の複数の手書きストロークは、ユーザデバイスの手書き入力インタフェースの、デフォルトの書き込み方向に沿って、第1の複数の手書きストロークを空間的に追従し、第2の出力文字は、そのデフォルトの書き込み方向に沿った空間的配列で、第1の出力文字を追従し、この方法は、手書き文字を訂正するために、ユーザから第3の手書きストロークを受信することであって、この第3の手書きストロークが、第1の複数の手書きストローク及び第2の複数の手書きストロークよりも時間的に後に受信される、第3の手書きストロークを受信することと、この第3の手書きストロークの受信に応じて、その第3の手書きストロークの、第1の複数の手書きストロークへの相対的な近接性に基づいて、第1の複数の手書きストロークと同じ認識単位に、その手書きストロークを割り当てることと、第1の複数の手書きストローク及び第3の手書きストロークに基づいて、訂正された入力画像を生成することと、訂正された手書き文字のリアルタイム認識を実行するために、この訂正された入力画像を、手書き認識モデルに提供することと、第3の手書き入力の受信に応じて、訂正された入力画像に対応する第3の出力文字を表示することであって、この第3の出力文字が、第1の出力文字に置き換わり、デフォルトの書き込み方向に沿った空間的配列で、第2の出力文字と同時に表示される、第3の出力文字を表示することとを更に含む。 In some embodiments, the second plurality of handwritten strokes spatially follows the first plurality of handwritten strokes along a default writing direction of a handwriting input interface of the user device, and the second plurality of handwritten strokes spatially follows the first plurality of handwritten strokes along a default writing direction of a handwriting input interface of the user device; The characters follow the first output character in a spatial arrangement along its default writing direction, and the method includes receiving a third handwritten stroke from the user to correct the handwritten character. receiving a third handwritten stroke, the third handwritten stroke received later in time than the first plurality of handwritten strokes and the second plurality of handwritten strokes; In response to receiving a handwritten stroke, the third handwritten stroke is placed into the same recognition unit as the first plurality of handwritten strokes based on the relative proximity of the third handwritten stroke to the first plurality of handwritten strokes. generating a corrected input image based on the first plurality of handwritten strokes and the third handwritten stroke; and performing real-time recognition of the corrected handwritten character. providing a corrected input image to a handwriting recognition model; and in response to receiving a third handwriting input, displaying a third output character corresponding to the corrected input image, the third output character corresponding to the corrected input image; The output character further includes displaying a third output character that replaces the first output character and is displayed simultaneously with the second output character in a spatial arrangement along a default writing direction.

一部の実施形態では、この方法は、第3の出力文字及び第2の出力文字が、手書き入力インタフェースの候補表示区域内に、認識結果として同時に表示されている間に、ユーザから削除入力を受信することと、この削除入力に応じて、認識結果から第2の出力文字を削除する一方で、第3の出力文字を認識結果内に維持することとを更に含む。 In some embodiments, the method receives a delete input from the user while the third output character and the second output character are simultaneously displayed as a recognition result in the candidate display area of the handwriting input interface. and, responsive to the deletion input, deleting the second output character from the recognition result while maintaining the third output character in the recognition result.

一部の実施形態では、手書き入力インタフェースの手書き入力区域内に、第1の複数の手書きストローク、第2の複数の手書きストローク、及び第3の手書きストロークを、それらの手書きストロークのそれぞれがユーザによって提供される際にリアルタイムでレンダリングすることと、削除入力の受信に応じて、手書き入力区域から、第2の複数の手書きストロークの、それぞれのレンダリングを削除する一方で、第1の複数の手書きストローク及び第3の手書きストロークの、それぞれのレンダリングを、手書き入力区域内に維持することとである。 In some embodiments, a first plurality of handwritten strokes, a second plurality of handwritten strokes, and a third handwritten stroke are provided within a handwriting input area of the handwriting input interface, each of the handwritten strokes being input by the user. rendering in real time as provided, and in response to receiving the delete input, removing respective renderings of the handwritten strokes of the second plurality from the handwriting input area; and maintaining respective renderings of the third handwritten strokes within the handwriting input area.

一部の実施形態では、リアルタイム手書き認識を提供する方法は、ユーザから手書き入力を受信することであって、この手書き入力が、手書き入力インタフェースの手書き入力区域内に提供される、1つ以上の手書きストロークを含む、手書き入力を受信することと、手書き認識モデルに基づいて、その手書き入力に関する複数の出力文字を特定することと、既定のカテゴリ化基準に基づいて、それらの複数の出力文字を、2つ以上のカテゴリへと分類することと、手書き入力インタフェースの候補表示区域の初期ビュー内に、2つ以上のカテゴリのうちの第1のカテゴリ内の、それぞれの出力文字を表示することであって、この候補表示区域の初期ビューが、候補表示区域の拡張ビューを呼び出すためのアフォーダンスと同時に提供される、出力文字を表示することと、この拡張ビューを呼び出すためのアフォーダンスを選択する、ユーザ入力を受信することと、そのユーザ入力に応じて、候補表示区域の拡張ビュー内に、第1のカテゴリ内のそれぞれの出力文字、及び、候補表示区域の初期ビュー内には従前に表示されていなかった、2つ以上のカテゴリのうちの少なくとも第2のカテゴリ内の、それぞれの出力文字を表示することとを含む。 In some embodiments, a method of providing real-time handwriting recognition includes receiving handwriting input from a user, the handwriting input being provided within one or more handwriting input areas of a handwriting input interface. receiving handwritten input, including handwritten strokes; identifying a plurality of output characters for the handwriting input based on a handwriting recognition model; and determining the plurality of output characters based on predefined categorization criteria. , by classifying into two or more categories and displaying each output character in a first category of the two or more categories in an initial view of a candidate display area of a handwriting input interface. and the initial view of this candidate display area is provided at the same time as an affordance for invoking an expanded view of the candidate display area, and the user selects an affordance for displaying output characters and for invoking this expanded view. receiving an input and, in response to the user input, displaying each output character in the first category in the expanded view of the candidate display area and that previously displayed in the initial view of the candidate display area; and displaying each output character in at least a second category of the two or more categories.

一部の実施形態では、リアルタイム手書き認識を提供する方法は、ユーザから手書き入力を受信することであって、この手書き入力が、手書き入力インタフェースの手書き入力区域内に提供される、複数の手書きストロークを含む、手書き入力を受信することと、手書き認識モデルに基づいて、その手書き入力から複数の出力文字を認識することであって、それらの出力文字が、少なくとも第1の絵文字、及び自然人間言語のスクリプトからの少なくとも第1の文字を含む、複数の出力文字を認識することと、それらの第1の絵文字と自然人間言語のスクリプトからの第1の文字とを含む認識結果を、手書き入力インタフェースの候補表示区域内に表示することとを含む。 In some embodiments, a method of providing real-time handwriting recognition includes receiving handwriting input from a user, the handwriting input comprising a plurality of handwritten strokes provided within a handwriting input area of a handwriting input interface. and recognizing a plurality of output characters from the handwriting input based on the handwriting recognition model, the output characters comprising at least a first pictogram and a natural human language. recognizing a plurality of output characters including at least a first character from a script of a script of a handwriting input interface; and displaying the candidate display area within the candidate display area.

一部の実施形態では、手書き認識を提供する方法は、ユーザから手書き入力を受信することであって、この手書き入力が、デバイスに結合されたタッチ感知面内に提供される、複数の手書きストロークを含む、手書き入力を受信することと、手書き入力インタフェースの手書き入力区域内に、それらの複数の手書きストロークをリアルタイムでレンダリングすることと、それらの複数の手書きストロークの上での、ピンチジェスチャ入力及び拡大ジェスチャ入力のうちの一方を受信することと、ピンチジェスチャ入力の受信に際して、複数の手書きストロークを、単一の認識単位として処理することによって、それらの複数の手書きストロークに基づいた、第1の認識結果を生成することと、拡大ジェスチャ入力の受信に際して、複数の手書きストロークを、拡大ジェスチャ入力によって引き離された2つの別個の認識単位として処理することによって、それらの複数の手書きストロークに基づいた、第2の認識結果を生成することと、第1の認識結果及び第2の認識結果のうちの、それぞれの一方の生成に際して、生成された認識結果を、手書き入力インタフェースの候補表示区域内に表示することとを含む。 In some embodiments, a method of providing handwriting recognition includes receiving handwriting input from a user, the handwriting input comprising a plurality of handwritten strokes provided in a touch-sensitive surface coupled to a device. and rendering the plurality of handwritten strokes in real time within the handwriting input area of the handwriting input interface, and pinch gesture input and input on the plurality of handwritten strokes. a first one based on the plurality of handwritten strokes by receiving one of the enlarge gesture inputs and processing the plurality of handwritten strokes as a single recognition unit upon receiving the pinch gesture input. based on the plurality of handwritten strokes by generating a recognition result and, upon receiving the enlarged gesture input, processing the plurality of handwritten strokes as two separate recognition units separated by the enlarged gesture input. generating a second recognition result, and displaying the generated recognition result in a candidate display area of the handwriting input interface when generating each one of the first recognition result and the second recognition result; including doing.

一部の実施形態では、手書き認識を提供する方法は、ユーザから手書き入力を受信することであって、この手書き入力が、手書き入力インタフェースの手書き入力区域内に提供される、複数の手書きストロークを含むことと、それらの複数の手書きストロークから、複数の認識単位を特定することであって、各認識単位が、それらの複数の手書きストロークのうちの対応のサブセットを含む、複数の認識単位を特定することと、複数の認識単位から認識されたそれぞれの文字を含む、複数文字の認識結果を生成することと、その複数文字の認識結果を、手書き入力インタフェースの候補表示区域内に表示することと、その複数文字の認識結果が候補表示区域内に表示されている間に、ユーザから削除入力を受信することと、この削除入力の受信に応じて、候補表示区域内に表示された複数文字の認識結果から、最後の文字を除去することとを含む。 In some embodiments, a method of providing handwriting recognition includes receiving handwriting input from a user, the handwriting input comprising a plurality of handwritten strokes provided within a handwriting input area of a handwriting input interface. and identifying a plurality of recognition units from the plurality of handwritten strokes, each recognition unit comprising a corresponding subset of the plurality of handwritten strokes. generating recognition results for multiple characters including each character recognized from the multiple recognition units; and displaying the recognition results for the multiple characters within a candidate display area of a handwriting input interface. , while the recognition results of the multiple characters are displayed within the candidate display area, a deletion input is received from the user, and in response to the reception of this deletion input, the recognition results of the multiple characters displayed within the candidate display area are received. and removing the last character from the recognition result.

一部の実施形態では、リアルタイム手書き認識を提供する方法は、デバイスの向きを判定することと、デバイスが第1の向きにあることに従って、デバイス上に、手書き入力インタフェースを、水平入力モードで提供することであって、この水平入力モードで入力される手書き入力のそれぞれの行が、水平の書き込み方向に沿って、1つ以上のそれぞれの認識単位へと分割される、水平入力モードで提供することと、デバイスが第2の向きにあることに従って、デバイス上に、手書き入力インタフェースを、垂直入力モードで提供することであって、この垂直入力モードで入力される手書き入力のそれぞれの行が、垂直の書き込み方向に沿って、1つ以上のそれぞれの認識単位へと分割される、垂直入力モードで提供することとを含む。 In some embodiments, a method for providing real-time handwriting recognition includes determining an orientation of a device and providing a handwriting input interface on the device in a horizontal input mode according to the device being in the first orientation. providing a horizontal input mode, wherein each line of handwritten input input in the horizontal input mode is divided into one or more respective recognition units along a horizontal writing direction; and providing a handwriting input interface on the device in a vertical input mode according to the second orientation of the device, wherein each line of handwritten input entered in the vertical input mode comprises: and providing in a vertical input mode divided into one or more respective recognition units along a vertical writing direction.

一部の実施形態では、リアルタイム手書き認識を提供する方法は、ユーザから手書き入力を受信することであって、この手書き入力が、デバイスに結合されたタッチ感知面上に提供される、複数の手書きストロークを含む、手書き入力を受信することと、手書き入力インタフェースの手書き入力区域内に、それらの複数の手書きストロークをレンダリングすることと、それらの複数の手書きストロークを、2つ以上の認識単位へと分割することであって、各認識単位が、それらの複数の手書きストロークのうちの対応のサブセットを含む、2つ以上の認識単位へと分割することと、ユーザから編集リクエストを受信することと、この編集リクエストに応じて、手書き入力区域内の2つ以上の認識単位を、視覚的に識別することと、手書き入力区域から、2つ以上の認識単位のうちのそれぞれを、個別に削除する手段を提供することとを含む。 In some embodiments, a method of providing real-time handwriting recognition includes receiving handwriting input from a user, the handwriting input comprising a plurality of handwriting inputs provided on a touch-sensitive surface coupled to a device. receiving handwritten input including strokes; rendering the plurality of handwritten strokes within a handwriting input area of a handwriting input interface; and converting the plurality of handwritten strokes into two or more recognition units. dividing into two or more recognition units, each recognition unit including a corresponding subset of the plurality of handwritten strokes; and receiving an edit request from a user; In response to the edit request, means for visually identifying two or more recognition units within the handwriting input area and individually deleting each of the two or more recognition units from the handwriting input area. including providing.

一部の実施形態では、リアルタイム手書き認識を提供する方法は、ユーザから第1の手書き入力を受信することであって、この第1の手書き入力が、複数の手書きストロークを含み、それらの複数の手書きストロークが、手書き入力インタフェースの手書き入力区域に関連付けられた、それぞれの書き込み方向に沿って分布する、複数の認識単位を形成する、第1の手書き入力を受信することと、それらの手書きストロークがユーザによって提供される際に、手書き入力区域内に、それらの複数の手書きストロークのそれぞれをレンダリングすることと、認識単位が完全にレンダリングされた後に、複数の認識単位のそれぞれに関する、それぞれのフェーディングプロセスを開始することであって、それぞれのフェーディングプロセスの間に、第1の手書き入力内の認識単位のレンダリングが、次第にフェードする、それぞれのフェーディングプロセスを開始することと、複数の認識単位のうちのフェードした認識単位によって占有されていた、手書き入力区域の領域の上に、ユーザから第2の手書き入力を受信することと、この第2の手書き入力の受信に応じて、手書き入力区域内に、その第2の手書き入力をレンダリングすることと、全てのフェードした認識単位を、手書き入力区域から消去することとを含む。 In some embodiments, a method of providing real-time handwriting recognition includes receiving a first handwriting input from a user, the first handwriting input including a plurality of handwritten strokes, the first handwriting input including a plurality of handwriting strokes, receiving a first handwriting input, the handwriting strokes forming a plurality of recognition units distributed along respective writing directions, the handwriting strokes being associated with a handwriting input area of the handwriting input interface; rendering each of the plurality of handwritten strokes within the handwriting input area as provided by the user, and respective fading for each of the plurality of recognition units after the recognition unit is completely rendered; initiating a process, wherein during each fading process, a rendering of a recognition unit in the first handwritten input gradually fades; receiving a second handwriting input from the user over the area of the handwriting input area that was occupied by the faded recognition unit of the handwriting input area; the second handwriting input, and erasing all faded recognition units from the handwriting input area.

一部の実施形態では、手書き認識を提供する方法は、手書き認識モデルの、空間的に導出される特徴のセットと時間的に導出される特徴のセットとを、別個に訓練することであって、空間的に導出される特徴のセットは、それぞれが、出力文字セットのそれぞれの文字に関する手書きサンプルの画像である、訓練画像のコーパスについて訓練され、時間的に導出される特徴のセットは、ストローク分布プロファイルのコーパスについて訓練され、各ストローク分布プロファイルが、出力文字セットのそれぞれの文字に関する手書きサンプル内での、複数のストロークの空間的分布を、数値的に特徴付けることと、手書き認識モデル内で、空間的に導出される特徴のセットと時間的に導出される特徴のセットとを組み合わせる、別個に訓練することと、その手書き認識モデルを使用して、ユーザの手書き入力に関するリアルタイム手書き認識を提供することとを含む。 In some embodiments, a method of providing handwriting recognition comprises separately training a set of spatially derived features and a set of temporally derived features of a handwriting recognition model. , the set of spatially derived features is trained on a corpus of training images, each of which is an image of a handwritten sample for a respective character in the output character set, and the set of temporally derived features is trained on a corpus of training images, each of which is an image of a handwritten sample for a respective character in the output character set, and the set of temporally derived features is within the handwriting recognition model, trained on a corpus of distribution profiles, each stroke distribution profile numerically characterizing the spatial distribution of the plurality of strokes within the handwriting sample for each character of the output character set; Combining a set of spatially derived features and a set of temporally derived features, trained separately, and using the handwriting recognition model to provide real-time handwriting recognition of a user's handwriting input. Including things.

本明細書で説明される主題の、1つ以上の実施形態の詳細が、添付図面及び以下の説明に記載される。本主題の他の特徴、態様、及び利点は、それらの説明、図面、及び特許請求の範囲から明らかとなるであろう。 The details of one or more embodiments of the subject matter described herein are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will be apparent from the description, drawings, and claims.

一部の実施形態に係る、タッチ感知ディスプレイを備えるポータブル多機能デバイスを示すブロック図である。1 is a block diagram illustrating a portable multifunction device with a touch-sensitive display, according to some embodiments. FIG.

一部の実施形態に係る、タッチ感知ディスプレイを有するポータブル多機能デバイスを示す。2 illustrates a portable multifunction device with a touch-sensitive display, according to some embodiments.

一部の実施形態に係る、ディスプレイ及びタッチ感知面を備える、例示的な多機能デバイスのブロック図である。1 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface, according to some embodiments. FIG.

一部の実施形態に係る、ディスプレイとは別個のタッチ感知面を備える多機能デバイスに関する、例示的ユーザインタフェースを示す。2 illustrates an example user interface for a multifunction device with a touch-sensitive surface separate from a display, according to some embodiments.

一部の実施態様による、手書き入力システムの動作環境のブロック図である。1 is a block diagram of an operating environment for a handwriting input system, according to some implementations. FIG.

一部の実施形態に係る、マルチスクリプト手書き認識モデルのブロック図である。FIG. 2 is a block diagram of a multi-script handwriting recognition model, according to some embodiments.

一部の実施形態に係る、マルチスクリプト手書き認識モデルを訓練するための、例示的プロセスの流れ図である。1 is a flowchart of an example process for training a multi-script handwriting recognition model, according to some embodiments.

一部の実施形態に係る、ポータブル多機能デバイス上での、リアルタイムのマルチスクリプト手書き認識及び入力を示す、例示的ユーザインタフェースを示す。2 illustrates an example user interface illustrating real-time multi-script handwriting recognition and input on a portable multifunction device, according to some embodiments. 一部の実施形態に係る、ポータブル多機能デバイス上での、リアルタイムのマルチスクリプト手書き認識及び入力を示す、例示的ユーザインタフェースを示す。2 illustrates an example user interface illustrating real-time multi-script handwriting recognition and input on a portable multifunction device, according to some embodiments.

ポータブル多機能デバイス上での、リアルタイムのマルチスクリプト手書き認識及び入力を提供するための、例示的プロセスの流れ図である。1 is a flowchart of an example process for providing real-time multi-script handwriting recognition and input on a portable multifunction device. ポータブル多機能デバイス上での、リアルタイムのマルチスクリプト手書き認識及び入力を提供するための、例示的プロセスの流れ図である。1 is a flowchart of an example process for providing real-time multi-script handwriting recognition and input on a portable multifunction device.

一部の実施形態に係る、ポータブル多機能デバイス上での、リアルタイムの、ストローク順序非依存式の手書き認識及び入力を提供するための、例示的プロセスの流れ図である。1 is a flowchart of an example process for providing real-time, stroke order independent handwriting recognition and input on a portable multifunction device, according to some embodiments. 一部の実施形態に係る、ポータブル多機能デバイス上での、リアルタイムの、ストローク順序非依存式の手書き認識及び入力を提供するための、例示的プロセスの流れ図である。1 is a flowchart of an example process for providing real-time, stroke order independent handwriting recognition and input on a portable multifunction device, according to some embodiments. は、一部の実施形態に係る、ポータブル多機能デバイス上での、リアルタイムの、ストローク順序非依存式の手書き認識及び入力を提供するための、例示的プロセスの流れ図である。is a flowchart of an example process for providing real-time, stroke order independent handwriting recognition and input on a portable multifunction device, according to some embodiments.

一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的ユーザインタフェースを示す。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 2 shows an example user interface for.

一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的プロセスの流れ図である。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 1 is a flowchart of an exemplary process for doing so. 一部の実施形態に係る、候補表示区域の通常ビュー内に、認識結果の1つのカテゴリを選択的に表示し、候補表示区域の拡張ビュー内に、認識結果の他のカテゴリを選択的に表示するための、例示的プロセスの流れ図である。selectively displaying one category of recognition results within a normal view of the candidate display area and selectively displaying another category of recognition results within an expanded view of the candidate display area, according to some embodiments; 1 is a flowchart of an exemplary process for doing so.

一部の実施形態に係る、手書き入力を通じて絵文字を入力するための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for inputting emojis through handwritten input, according to some embodiments. 一部の実施形態に係る、手書き入力を通じて絵文字を入力するための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for inputting emojis through handwritten input, according to some embodiments. 一部の実施形態に係る、手書き入力を通じて絵文字を入力するための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for inputting emojis through handwritten input, according to some embodiments. 一部の実施形態に係る、手書き入力を通じて絵文字を入力するための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for inputting emojis through handwritten input, according to some embodiments. 一部の実施形態に係る、手書き入力を通じて絵文字を入力するための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for inputting emojis through handwritten input, according to some embodiments.

一部の実施形態に係る、手書き入力を通じて絵文字を入力するための、例示的プロセスの流れ図である。1 is a flowchart of an example process for inputting emojis through handwritten input, according to some embodiments.

一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的ユーザインタフェースを示す。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 shows an example user interface for the.

一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的プロセスの流れ図である。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 is a flowchart of an example process for. 一部の実施形態に係る、ピンチジェスチャ又は拡大ジェスチャを使用して、現時点で蓄積されている手書き入力を、どのように1つ以上の認識単位へと分離するかについて、手書き入力モジュールに通知するための、例示的プロセスの流れ図である。Informing the handwriting input module how to separate the currently accumulated handwriting input into one or more recognition units using a pinch or zoom gesture, according to some embodiments. 1 is a flowchart of an example process for.

一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的ユーザインタフェースを示す。2 illustrates an example user interface for providing character-by-character deletion of a user's handwritten input, according to some embodiments.

一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的プロセスの流れ図である。2 is a flowchart of an example process for providing character-by-character deletion of a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力の文字単位での削除を提供するための、例示的プロセスの流れ図である。2 is a flowchart of an example process for providing character-by-character deletion of a user's handwritten input, according to some embodiments.

一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for switching between vertical and horizontal writing modes, according to some embodiments. 一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for switching between vertical and horizontal writing modes, according to some embodiments. 一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for switching between vertical and horizontal writing modes, according to some embodiments. 一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for switching between vertical and horizontal writing modes, according to some embodiments. 一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for switching between vertical and horizontal writing modes, according to some embodiments. 一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的ユーザインタフェースを示す。4 illustrates an example user interface for switching between vertical and horizontal writing modes, according to some embodiments.

一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的プロセスの流れ図である。3 is a flowchart of an example process for switching between vertical and horizontal writing modes, according to some embodiments. 一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的プロセスの流れ図である。3 is a flowchart of an example process for switching between vertical and horizontal writing modes, according to some embodiments. 一部の実施形態に係る、垂直書き込みモードと水平書き込みモードとを切り替えるための、例示的プロセスの流れ図である。3 is a flowchart of an example process for switching between vertical and horizontal writing modes, according to some embodiments.

一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、ユーザインタフェースを示す。2 illustrates a user interface for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments; FIG.

一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、例示的プロセスの流れ図である。2 is a flowchart of an example process for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments. 一部の実施形態に係る、ユーザの手書き入力内で特定された個別の認識単位を表示し、選択的に削除する手段を提供するための、例示的プロセスの流れ図である。2 is a flowchart of an example process for providing a means for displaying and selectively deleting individual recognition units identified within a user's handwritten input, according to some embodiments.

一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a . 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的ユーザインタフェースを示す。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 illustrates an exemplary user interface for use as a .

一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的プロセスの流れ図である。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 is a flowchart of an exemplary process for use as a computer. 一部の実施形態に係る、手書き入力区域内の、既存の手書き入力の上に提供される新たな手書き入力を、その既存の手書き入力に関して表示された認識結果を入力するための暗黙的確認入力として利用するための、例示的プロセスの流れ図である。Implicit confirmation input for inputting a new handwriting input provided on top of an existing handwriting input within a handwriting input area with a displayed recognition result for the existing handwriting input, according to some embodiments. 1 is a flowchart of an exemplary process for use as a computer.

一部の実施形態に係る、手書き認識モデルのストローク順序及びストローク方向依存性を損なうことなく、空間的に導出される特徴に基づく手書き認識モデル内に、時間的に導出されるストローク分布情報を統合するための、例示的プロセスの流れ図である。Integrating temporally derived stroke distribution information into a spatially derived feature-based handwriting recognition model without compromising the stroke order and stroke direction dependence of the handwriting recognition model, according to some embodiments 1 is a flowchart of an exemplary process for doing so. 一部の実施形態に係る、手書き認識モデルのストローク順序及びストローク方向依存性を損なうことなく、空間的に導出される特徴に基づく手書き認識モデル内に、時間的に導出されるストローク分布情報を統合するための、例示的プロセスの流れ図である。Integrating temporally derived stroke distribution information into a spatially derived feature-based handwriting recognition model without compromising the stroke order and stroke direction dependence of the handwriting recognition model, according to some embodiments 1 is a flowchart of an example process for doing so.

一部の実施形態に係る、例示的な手書き認識システムの、空間的に導出される特徴及び時間的に導出される特徴の別個の訓練、並びに後続の統合を示す、ブロック図である。FIG. 2 is a block diagram illustrating separate training and subsequent integration of spatially and temporally derived features of an example handwriting recognition system, according to some embodiments.

文字のストローク分布プロファイルを計算するための、例示的方法を示すブロック図である。FIG. 2 is a block diagram illustrating an example method for calculating a stroke distribution profile of a character.

類似の参照番号は、これらの図面全体を通して対応する部分を指す。 Like reference numbers refer to corresponding parts throughout these figures.

多くの電子デバイスは、文字入力用のソフトキーボードを備える、グラフィカルユーザインタフェースを有する。一部の電子デバイス上では、ユーザはまた、手書き入力インタフェースをインストールするか、又は有効化することが可能な場合もあり、この手書き入力インタフェースにより、ユーザは、そのデバイスに結合されたタッチ感知ディスプレイスクリーン又はタッチ感知面上での手書きを介して、文字を入力することが可能となる。従来の手書き認識入力の方法及びユーザインタフェースは、幾つかの問題及び欠点を有する。例えば、
●一般に、従来の手書き入力の機能性は、言語ごとに、又はスクリプトごとに有効化される。追加される各入力言語は、別個の記憶スペース及びメモリを費やす、別個の手書き認識モデルのインストールを必要とする。異なる言語に関する手書き認識モデルを組み合わせることによってもたらされる相乗効果は、僅かなものであり、混合言語又は混合スクリプトの手書き認識は、複雑な曖昧性除去プロセスのために、従来は、極めて長い時間を要するものであった。
●更には、従来の手書き認識システムは、文字認識に関して、言語固有又はスクリプト固有の特性に依存するところが大きい。混合言語の手書き入力の認識は、低い精度を有するものであった。更には、認識される言語の利用可能な組み合わせは、極めて限定される。殆どのシステムは、非デフォルトの各言語又は各スクリプトで手書き入力を提供する前に、所望の言語固有の手書き認識部を、ユーザが手動で指定することを必要とするものであった。
●多くの既存のリアルタイム手書き認識モデルは、ストローク単位レベルでの、時間的情報又は配列情報を必要とし、このことは、どのように文字が書かれ得るかの高い変動性(例えば、書体又は個人的な癖による、ストロークの形状、長さ、緩急、分割、順序、及び方向の高い変動性)に対処する場合に、不正確な認識結果を生じさせる。一部のシステムはまた、手書き入力を提供する場合に、ユーザが、厳格な(例えば、各文字入力のサイズ、配列、及び時間枠に対する、組み込みの仮定条件を有する)空間的及び時間的基準を順守することも必要とする。これらの基準からのいずれの逸脱も、修正することが困難な、不正確な認識結果を引き起こすものであった。
●現時点では、殆どのリアルタイム手書き入力インタフェースは、ユーザが一度に少数の文字を入力することのみを可能とする。長い語句又は文の入力は、短い分節へと分解されて、別個に入力される。この形式的な入力は、構成の流れを維持するための、ユーザに対する認知負担を強いるだけではなく、以前に入力された文字又は語句を、ユーザが修正若しくは訂正することも困難にさせる。
Many electronic devices have graphical user interfaces with soft keyboards for character input. On some electronic devices, a user may also be able to install or enable a handwriting input interface that allows the user to use a touch-sensitive display coupled to the device. Characters can be entered via handwriting on a screen or touch-sensitive surface. Traditional handwriting recognition input methods and user interfaces have several problems and drawbacks. for example,
- Typically, traditional handwriting input functionality is enabled on a language-by-language or script-by-script basis. Each added input language requires the installation of a separate handwriting recognition model, consuming separate storage space and memory. The synergy provided by combining handwriting recognition models for different languages is negligible, and handwriting recognition for mixed languages or scripts traditionally takes a very long time due to the complex disambiguation process. It was something.
●Furthermore, conventional handwriting recognition systems rely heavily on language-specific or script-specific characteristics for character recognition. Recognition of mixed language handwritten input had low accuracy. Moreover, the available combinations of recognized languages are extremely limited. Most systems required the user to manually specify the desired language-specific handwriting recognizer before providing handwriting input in each non-default language or script.
Many existing real-time handwriting recognition models require temporal or sequence information at the stroke-by-stroke level, which can lead to high variability in how characters can be written (e.g., typeface or personal (high variability in stroke shape, length, slowness, division, order, and direction) can lead to inaccurate recognition results. Some systems also require users to adhere to strict spatial and temporal criteria (e.g., with built-in assumptions about the size, arrangement, and time frame of each character input) when providing handwritten input. It also requires compliance. Any deviation from these standards would result in inaccurate recognition results that were difficult to correct.
●Currently, most real-time handwriting input interfaces only allow users to input a few characters at a time. Long phrase or sentence inputs are broken down into short segments and input separately. This formal input not only imposes a cognitive burden on the user to maintain the flow of the composition, but also makes it difficult for the user to modify or correct previously entered characters or phrases.

以下で説明される実施形態は、これらの問題及び関連する問題に対処する。 The embodiments described below address these and related issues.

以下の図1~図4は、例示的デバイスの説明を提供する。図5、図6、及び図26、図27は、例示的な手書き認識及び入力システムを示す。図8A、図8B、図11A~図11K、図13A~図13E、図15A~図15K、図17A~図17F、図19A~図19F、図21A~図21H、図23A~図12Lは、手書き認識及び入力に関する、例示的ユーザインタフェースを示す。図7、図9A,図9B、図10A~図10C、図12A、図12B、図14、図16A、図16B、図18A、図18B、図20A~図20C、図22A、図22B、図24A、図24B、及び図25は、手書き認識モデルを訓練すること、リアルタイムの手書き認識結果を提供すること、手書き入力を入力して訂正する手段を提供すること、及び認識結果をテキスト入力として入力する手段を提供することを含む、手書き認識及び入力を可能にする方法を示す、流れ図である。図8A、図8B、図11A~図11K、図13A~図13E、図15A~図15K、図17A~図17F、図19A~図19F、図21A~図21H、図23A~図12Lでのユーザインタフェースは、図7、図9A,図9B、図10A~図10C、図12A、図12B、図14、図16A、図16B、図18A、図18B、図20A~図20C、図22A、図22B、図24A、図24B、及び図25でのプロセスを示すために使用される。
例示的デバイス
1-4 below provide a description of example devices. 5 and 6 and 26 and 27 illustrate example handwriting recognition and input systems. 8A, 8B, 11A to 11K, 13A to 13E, 15A to 15K, 17A to 17F, 19A to 19F, 21A to 21H, and 23A to 12L are handwritten. 2 shows an example user interface for recognition and input. 7, 9A, 9B, 10A to 10C, 12A, 12B, 14, 16A, 16B, 18A, 18B, 20A to 20C, 22A, 22B, 24A , 24B, and 25 illustrate training a handwriting recognition model, providing real-time handwriting recognition results, providing a means for inputting and correcting handwriting input, and inputting the recognition results as text input. 1 is a flowchart illustrating a method for enabling handwriting recognition and input, including providing a means. Users in Figures 8A, 8B, 11A to 11K, 13A to 13E, 15A to 15K, 17A to 17F, 19A to 19F, 21A to 21H, and 23A to 12L The interfaces are shown in FIGS. 7, 9A, 9B, 10A to 10C, 12A, 12B, 14, 16A, 16B, 18A, 18B, 20A to 20C, 22A, 22B. , used to illustrate the process in FIGS. 24A, 24B, and 25.
Exemplary device

ここで、添付図面に実施例が示される実施形態を、詳細に参照する。以下の発明を実施するための形態では、本発明の完全な理解を提供するために、数多くの具体的な詳細が記載される。しかしながら、本発明は、これらの具体的な詳細を伴わずとも実践することができる点が、当業者には明らかとなるであろう。他の例では、周知の方法、手順、構成要素、回路、及びネットワークは、実施形態の態様を不必要に不明瞭なものとしないよう、詳細には説明されていない。 Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be apparent to those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.

本明細書では、様々な要素を説明するために第1、第2などの用語が使用される場合があるが、それらの要素は、これらの用語によって限定されるべきではないこともまた、理解されるであろう。これらの用語は、ある要素を別の要素から識別するためにのみ使用される。例えば、本発明の範囲から逸脱することなく、第1の接触を第2の接触と呼ぶことが可能であり、同様に、第2の接触を第1の接触と呼ぶことが可能である。第1の接触及び第2の接触は、双方とも接触であるが、それらは同じ接触ではない。 It is also understood that although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. will be done. These terms are only used to distinguish one element from another. For example, a first contact can be referred to as a second contact, and similarly a second contact can be referred to as a first contact, without departing from the scope of the invention. Although the first contact and the second contact are both contacts, they are not the same contact.

本明細書での本発明の説明で使用される用語法は、特定の実施形態を説明することのみを目的とするものであって、本発明を限定することを意図するものではない。本発明の説明及び添付の特許請求の範囲で使用されるとき、単数形「a」、「an」、及び「the」は、文脈がそうではないことを明確に示さない限り、複数形もまた含むことが意図される。本明細書で使用するとき、用語「及び/又は」は、関連する列挙された項目のうちの1つ以上の、任意の全ての可能な組み合わせを指し、それらの組み合わせを包含することもまた、理解されるであろう。用語「includes(含む)」、「including(含む)」、「comprises(備える)」、及び/又は「comprising(備える)」は、本明細書で使用される場合、記述される特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び/又はそれらの群の存在若しくは追加を排除するものではないことが、更に理解されるであろう。 The terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to limit the invention. As used in the description of this invention and the appended claims, the singular forms "a," "an," and "the" also refer to the plural forms unless the context clearly dictates otherwise. intended to include. As used herein, the term "and/or" refers to, and also includes, any and all possible combinations of one or more of the associated listed items. It will be understood. The terms "includes," "including," "comprises," and/or "comprising" as used herein refer to the described features, integers, steps. , which specifies the presence of an action, element, and/or component, but excludes the presence or addition of one or more other features, integers, steps, actions, elements, components, and/or groups thereof. It will be further understood that this is not the case.

本明細書で使用するとき、用語「~の場合には」は、文脈に応じて、「~のとき」若しくは「~する際」、又は「~という判定に応じて」若しくは「~の検出に応じて」を意味するものと解釈することができる。同様に、語句「~と判定される場合には」又は「(記述される条件又はイベント)が検出される場合には」は、文脈に応じて、「~と判定される際」若しくは「~との判定に応じて」、又は「(記述される条件又はイベント)が検出される際」若しくは「(記述される条件又はイベント)の検出に応じて」を意味するものと解釈することができる。 As used herein, the term "in case" means "at" or "upon" or "in response to a determination that" or "in response to the detection of..." depending on the context. It can be interpreted as meaning "depending on". Similarly, the phrases "if it is determined that..." or "if (the described condition or event) is detected" can be used as "if it is determined that..." or "if (the described condition or event) is detected," depending on the context. or “upon detection of (the described condition or event)” or “in response to the detection of (the described condition or event).” .

電子デバイス、そのようなデバイス用のユーザインタフェース、及びそのようなデバイスを使用するための関連プロセスの、実施形態を説明する。一部の実施形態では、このデバイスは、PDA機能及び/又は音楽プレーヤ機能などの他の機能もまた含む、モバイル電話などのポータブル通信デバイスである。ポータブル多機能デバイスの例示的実施形態としては、Apple Inc.(Cupertino,California)によるiPhone(登録商標)、iPod Touch(登録商標)、及びiPad(登録商標)デバイスが挙げられるが、これらに限定されない。タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を備えるラップトップコンピュータ又はタブレットコンピュータなどの、他のポータブル電子デバイスもまた、使用することができる。また、一部の実施形態では、このデバイスは、ポータブル通信デバイスではなく、タッチ感知面(例えば、タッチスクリーンディスプレイ及び/又はタッチパッド)を備えるデスクトップコンピュータであることも理解されたい。 Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device such as a mobile phone that also includes other functionality such as PDA functionality and/or music player functionality. Exemplary embodiments of portable multifunction devices include Apple Inc. (Cupertino, California), iPod Touch®, and iPad® devices. Other portable electronic devices can also be used, such as laptop computers or tablet computers with touch-sensitive surfaces (eg, touch screen displays and/or touch pads). It should also be understood that in some embodiments, the device is a desktop computer with a touch-sensitive surface (eg, a touch screen display and/or touch pad) rather than a portable communication device.

以下の論考では、ディスプレイ及びタッチ感知面を含む、電子デバイスを説明する。しかしながら、この電子デバイスは、物理キーボード、マウス、及び/又はジョイスティックなどの、1つ以上の他の物理ユーザインタフェースデバイスを含み得ることを理解されたい。 The following discussion describes electronic devices that include displays and touch-sensitive surfaces. However, it should be understood that this electronic device may include one or more other physical user interface devices, such as a physical keyboard, mouse, and/or joystick.

このデバイスは、典型的には、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽プレーヤアプリケーション、及び/又はデジタルビデオプレーヤアプリケーションのうちの1つ以上などの、様々なアプリケーションをサポートする。 This device typically includes drawing applications, presentation applications, word processing applications, website creation applications, disc authoring applications, spreadsheet applications, gaming applications, telephone applications, video conferencing applications, email applications, instant messaging applications, Various applications are supported, such as one or more of a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and/or a digital video player application.

このデバイス上で実行することが可能な様々なアプリケーションは、タッチ感知面などの、少なくとも1つの共通の物理ユーザインタフェースデバイスを使用することができる。タッチ感知面の1つ以上の機能、並びにデバイス上に表示される対応する情報は、アプリケーションごとに、及び/又はそれぞれのアプリケーション内で、調節並びに/あるいは変更することができる。この方式で、そのデバイスの共通の(タッチ感知面などの)物理アーキテクチャは、ユーザにとって直観的かつ透明なユーザインタフェースを使用して、様々なアプリケーションをサポートすることができる。 The various applications that can run on the device can use at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface, and corresponding information displayed on the device, may be adjusted and/or changed for each application and/or within each application. In this way, the device's common physical architecture (such as a touch-sensitive surface) can support a variety of applications with a user interface that is intuitive and transparent to the user.

ここで、タッチ感知ディスプレイを備えるポータブルデバイスの実施形態に注意を向ける。図1は、一部の実施形態に係る、タッチ感知ディスプレイ112を備えるポータブル多機能デバイス100を示すブロック図である。タッチ感知ディスプレイ112は、便宜上「タッチスクリーン」と呼ばれる場合があり、タッチ感知ディスプレイシステムとしても既知であるか、又はそのように呼ばれる場合もある。デバイス100は、メモリ102(1つ以上のコンピュータ可読記憶媒体を含み得る)、メモリコントローラ122、1つ以上の処理ユニット(CPU)120、周辺機器インタフェース118、RF回路機構108、オーディオ回路機構110、スピーカ111、マイクロホン113、入出力(I/O)サブシステム106、他の入力又は制御デバイス116、並びに外部ポート124を含み得る。デバイス100は、1つ以上の光センサ164を含み得る。これらの構成要素は、1つ以上の通信バス又は信号線103を介して通信することができる。 Attention is now directed to embodiments of portable devices with touch-sensitive displays. FIG. 1 is a block diagram illustrating a portable multifunction device 100 with a touch-sensitive display 112, according to some embodiments. Touch-sensitive display 112 may be conveniently referred to as a "touch screen" and may also be known or referred to as a touch-sensitive display system. Device 100 includes memory 102 (which may include one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripheral interface 118, RF circuitry 108, audio circuitry 110, It may include a speaker 111, a microphone 113, an input/output (I/O) subsystem 106, other input or control devices 116, and an external port 124. Device 100 may include one or more optical sensors 164. These components may communicate via one or more communication buses or signal lines 103.

デバイス100は、ポータブル多機能デバイスの一実施例に過ぎず、デバイス100は、示されているものよりも多くの構成要素又は少ない構成要素を有し得るものであり、2つ以上の構成要素を組み合わせることができ、又は、それらの構成要素の異なる構成若しくは配置を有し得ることを理解されたい。図1に示される様々な構成要素は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含めた、ハードウェア、ソフトウェア、あるいはハードウェア及びソフトウェアの双方の組み合わせとして実装することができる。 Device 100 is only one example of a portable multifunction device, and device 100 may have more or fewer components than shown, and may include more than one component. It is to be understood that they may be combined or have different configurations or arrangements of the components. The various components shown in FIG. 1 can be implemented as hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and/or application-specific integrated circuits. .

メモリ102は、高速ランダムアクセスメモリを含み得るものであり、また、1つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性半導体メモリデバイスなどの、不揮発性メモリも含み得る。CPU 120及び周辺機器インタフェース118などの、デバイス100の他の構成要素によるメモリ102へのアクセスは、メモリコントローラ122によって制御することができる。 Memory 102 may include high speed random access memory and may also include non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile semiconductor memory devices. Access to memory 102 by other components of device 100, such as CPU 120 and peripheral interface 118, may be controlled by memory controller 122.

周辺機器インタフェース118を使用して、このデバイスの入力及び出力周辺機器を、CPU 120及びメモリ102に結合することができる。1つ以上のプロセッサ120は、メモリ102内に記憶された様々なソフトウェアプログラム及び/又は命令セットを稼働若しくは実行して、デバイス100に関する様々な機能を実行し、かつデータを処理する。 A peripheral interface 118 may be used to couple the device's input and output peripherals to the CPU 120 and memory 102. One or more processors 120 operate or execute various software programs and/or instruction sets stored within memory 102 to perform various functions and process data for device 100.

一部の実施形態では、周辺機器インタフェース118、CPU 120、及びメモリコントローラ122は、チップ104などの単一チップ上に実装することができる。一部の他の実施形態では、それらは、別個のチップ上に実装することができる。 In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 may be implemented on a single chip, such as chip 104. In some other embodiments, they can be implemented on separate chips.

RF(無線周波数)回路機構108は、電磁信号とも呼ばれるRF信号を送受信する。RF回路機構108は、電気信号を電磁信号に/電磁信号を電気信号に変換し、その電磁信号を介して、通信ネットワーク及び他の通信デバイスと通信する。 RF (radio frequency) circuitry 108 sends and receives RF signals, also referred to as electromagnetic signals. RF circuitry 108 converts electrical signals to electromagnetic signals and communicates with communication networks and other communication devices via the electromagnetic signals.

オーディオ回路機構110、スピーカ111、及びマイクロホン113は、ユーザとデバイス100との間のオーディオインタフェースを提供する。オーディオ回路機構110は、周辺機器インタフェース118からオーディオデータを受信し、そのオーディオデータを電気信号に変換し、その電気信号をスピーカ111に送信する。スピーカ111は、その電気信号を人間の可聴音波に変換する。オーディオ回路機構110はまた、マイクロホン113によって音波から変換された電気信号も受信する。オーディオ回路機構110は、その電気信号をオーディオデータに変換し、そのオーディオデータを、処理のために周辺機器インタフェース118に送信する。オーディオデータは、周辺機器インタフェース118によって、メモリ102及び/又はRF回路機構108から検索することができ、かつ/あるいは、メモリ102及び/又はRF回路機構108に送信することができる。一部の実施形態では、オーディオ回路機構110はまた、ヘッドセットジャック(例えば、図2の212)も含む。 Audio circuitry 110, speaker 111, and microphone 113 provide an audio interface between the user and device 100. Audio circuitry 110 receives audio data from peripheral interface 118 , converts the audio data to an electrical signal, and transmits the electrical signal to speaker 111 . Speaker 111 converts the electrical signal into human audible sound waves. Audio circuitry 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuitry 110 converts the electrical signal to audio data and sends the audio data to peripheral interface 118 for processing. Audio data may be retrieved from and/or transmitted to memory 102 and/or RF circuitry 108 by peripheral interface 118 . In some embodiments, audio circuitry 110 also includes a headset jack (eg, 212 in FIG. 2).

I/Oサブシステム106は、タッチスクリーン112及び他の入力制御デバイス116などの、デバイス100上の入出力周辺機器を、周辺機器インタフェース118に結合する。I/Oサブシステム106は、ディスプレイコントローラ156、並びに他の入力又は制御デバイスのための1つ以上の入力コントローラ160を含み得る。1つ以上の入力コントローラ160は、他の入力又は制御デバイス116との間で電気信号を受信/送信する。他の入力制御デバイス116は、物理ボタン(例えば、プッシュボタン、ロッカボタンなど)、ダイヤル、スライダスイッチ、ジョイスティック、クリックホイールなどを含み得る。一部の代替的実施形態では、入力コントローラ160は、キーボード、赤外線ポート、USBポート、及びマウスなどのポインタデバイスのうちのいずれかに結合することができる(又は、いずれにも結合されない場合もある)。1つ以上のボタン(例えば、図2の208)は、スピーカ111及び/又はマイクロホン113の音量調節のための、アップ/ダウンボタンを含み得る。1つ以上のボタンはプッシュボタン(例えば、図2の206)を含み得る。 I/O subsystem 106 couples input and output peripherals on device 100, such as touch screen 112 and other input control devices 116, to peripheral interface 118. I/O subsystem 106 may include a display controller 156 and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive/transmit electrical signals to/from other input or control devices 116 . Other input control devices 116 may include physical buttons (eg, push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, and the like. In some alternative embodiments, input controller 160 may be coupled to any (or may not be coupled to) a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. ). The one or more buttons (eg, 208 in FIG. 2) may include up/down buttons for volume adjustment of speaker 111 and/or microphone 113. The one or more buttons may include a push button (eg, 206 in FIG. 2).

タッチ感知ディスプレイ112は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ156は、タッチスクリーン112との間で、電気信号を受信及び/又は送信する。タッチスクリーン112は、ユーザに視覚出力を表示する。この視覚出力は、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組み合わせ(「グラフィック」と総称される)を含み得る。一部の実施形態では、これらの視覚出力の一部又は全ては、ユーザインタフェースオブジェクトに対応し得る。 Touch-sensitive display 112 provides an input and output interface between the device and the user. Display controller 156 receives and/or transmits electrical signals to and from touch screen 112 . Touch screen 112 displays visual output to the user. This visual output may include graphics, text, icons, video, and any combination thereof (collectively referred to as "graphics"). In some embodiments, some or all of these visual outputs may correspond to user interface objects.

タッチスクリーン112は、触覚及び/又は蝕知の接触に基づいて、ユーザからの入力を受け入れる、タッチ感知面、センサ、若しくはセンサのセットを有する。タッチスクリーン112及びディスプレイコントローラ156は(メモリ102内のあらゆる関連モジュール及び/又は命令セットと共に)、タッチスクリーン112上での接触(及び、その接触のあらゆる移動又は中断)を検出し、その検出された接触を、タッチスクリーン112上に表示されるユーザインタフェースオブジェクト(例えば、1つ以上のソフトキー、アイコン、ウェブページ、又は画像)との対話に変換する。例示的実施形態では、タッチスクリーン112とユーザとの間の接触点は、ユーザの指に対応する。 Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that accepts input from a user based on tactile and/or tactile contact. Touch screen 112 and display controller 156 (along with any associated modules and/or instruction sets in memory 102) detect a touch (and any movement or interruption of that touch) on touch screen 112 and The touch is translated into an interaction with a user interface object (eg, one or more soft keys, icons, web pages, or images) displayed on the touch screen 112. In the exemplary embodiment, the point of contact between touch screen 112 and the user corresponds to the user's finger.

タッチスクリーン112は、LCD(液晶ディスプレイ)技術、LPD(発光ポリマーディスプレイ)技術、又はLED(発光ダイオード)技術を使用することができるが、他の実施形態では、他のディスプレイ技術を使用することができる。タッチスクリーン112及びディスプレイコントローラ156は、現在既知の、又は今後開発される複数のタッチ感知技術のうちのいずれかを使用して、接触、及びその接触のあらゆる移動若しくは中断を検出することができ、それらの技術としては、静電容量技術、抵抗性技術、赤外線技術、及び表面超音波技術、並びにタッチスクリーン112との1つ以上の接触点を判定するための、他の近接センサアレイ又は他の要素が挙げられるが、これらに限定されない。例示的実施形態では、Apple Inc.(Cupertino,California)によるiPhone(登録商標)、iPod Touch(登録商標)、及びiPad(登録商標)で見出されるものなどの、投影型相互静電容量式検知技術が使用される。 The touch screen 112 may use LCD (Liquid Crystal Display) technology, LPD (Light Emitting Polymer Display) technology, or LED (Light Emitting Diode) technology, although in other embodiments other display technologies may be used. can. Touch screen 112 and display controller 156 may detect contact and any movement or interruption of that contact using any of a number of touch-sensing technologies now known or hereafter developed; These technologies include capacitive, resistive, infrared, and surface ultrasound technologies, as well as other proximity sensor arrays or other sensors for determining one or more points of contact with the touch screen 112. These elements include, but are not limited to: In an exemplary embodiment, Apple Inc. Projected mutual capacitance sensing technology is used, such as that found in the iPhone®, iPod Touch®, and iPad® by Co., Ltd. (Cupertino, California).

タッチスクリーン112は、100dpiを超えるビデオ解像度を有し得る。一部の実施形態では、タッチスクリーンは、約160dpiのビデオ解像度を有する。ユーザは、スタイラス、指などの、任意の好適な物体又は付属物を使用して、タッチスクリーン112と接触することができる。一部の実施形態では、ユーザインタフェースは、主として指に基づく接触及びジェスチャで機能するように設計されるが、これらは、タッチスクリーン上での指の接触面積がより広いことにより、スタイラスに基づく入力よりも精度が低い恐れがある。一部の実施形態では、デバイスは、指に基づく粗い入力を、ユーザによって所望されるアクションを実行するための、正確なポインタ/カーソルの位置又はコマンドに変換する。手書き入力は、指に基づく接触若しくはスタイラスに基づく接触の場所及び移動を介して、タッチスクリーン112上に提供することができる。一部の実施形態では、タッチスクリーン112は、指に基づく入力又はスタイラスに基づく入力を、その現在の手書き入力に対する即座の視覚フィードバックとしてレンダリングし、筆記用具(例えば、ペン)を使用する、書き込み面(例えば、1枚の紙)上での実際の書き込みの、視覚効果を提供する。 Touch screen 112 may have a video resolution of greater than 100 dpi. In some embodiments, the touch screen has a video resolution of approximately 160 dpi. A user may contact touch screen 112 using any suitable object or appendage, such as a stylus, finger, etc. In some embodiments, the user interface is designed to work primarily with finger-based touches and gestures, but these can be overridden by stylus-based input due to the larger contact area of the finger on the touch screen. The accuracy may be lower than that of In some embodiments, the device converts coarse finger-based input into precise pointer/cursor positions or commands to perform actions desired by the user. Handwriting input may be provided on the touch screen 112 through the location and movement of finger-based or stylus-based contacts. In some embodiments, the touch screen 112 provides a writing surface for rendering finger-based or stylus-based input as instant visual feedback for that current handwriting input and for using a writing instrument (e.g., a pen). Provides a visual effect of actual writing on (eg, a piece of paper).

一部の実施形態では、タッチスクリーンに加えて、デバイス100は、特定の機能をアクティブ化又は非アクティブ化するための、タッチパッド(図示せず)を含み得る。一部の実施形態では、このタッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しない、そのデバイスのタッチ感知区域である。タッチパッドは、タッチスクリーン112とは別個のタッチ感知面、又はタッチスクリーンによって形成されるタッチ感知面の拡張部とすることができる。 In some embodiments, in addition to a touch screen, device 100 may include a touch pad (not shown) for activating or deactivating certain features. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike a touchscreen, does not display visual output. The touchpad may be a touch-sensitive surface separate from touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.

デバイス100はまた、様々な構成要素に電力を供給するための、電力システム162も含む。電力システム162は、電力管理システム、1つ以上の電源(例えば、バッテリ、交流(AC))、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ(例えば、発光ダイオード(LED))、並びにポータブルデバイス内での電力の生成、管理、及び分配に関連付けられる任意の他の構成要素を含み得る。 Device 100 also includes a power system 162 for powering various components. Power system 162 includes a power management system, one or more power sources (e.g., batteries, alternating current (AC)), a recharging system, a power outage detection circuit, a power converter or inverter, a power status indicator (e.g., a light emitting diode (LED)). , and any other components associated with the generation, management, and distribution of power within a portable device.

デバイス100はまた、1つ以上の光センサ164も含み得る。図1は、I/Oサブシステム106内の光センサコントローラ158に結合された、光センサを示す。光センサ164は、電荷結合素子(CCD)又は相補的金属酸化物半導体(CMOS)フォトトランジスタを含み得る。光センサ164は、1つ以上のレンズを通して投影された、環境からの光を受光し、その光を、画像を表すデータに変換する。撮像モジュール143(カメラモジュールとも呼ばれる)と関連して、光センサ164は、静止画像又はビデオを取り込むことができる。 Device 100 may also include one or more optical sensors 164. FIG. 1 shows a light sensor coupled to a light sensor controller 158 within I/O subsystem 106. Optical sensor 164 may include a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS) phototransistor. Light sensor 164 receives light from the environment that is projected through one or more lenses and converts the light into data representing an image. In conjunction with imaging module 143 (also referred to as a camera module), optical sensor 164 can capture still images or video.

デバイス100はまた、1つ以上の近接センサ166も含み得る。図1は、周辺機器インタフェース118に結合された、近接センサ166を示す。あるいは、近接センサ166は、I/Oサブシステム106内の入力コントローラ160に結合することもできる。一部の実施形態では、この多機能デバイスが、ユーザの耳の近くに配置される場合(例えば、ユーザが電話通話を行っている場合)、近接センサは、タッチスクリーン112をオフにして無効化する。 Device 100 may also include one or more proximity sensors 166. FIG. 1 shows a proximity sensor 166 coupled to peripheral interface 118. Alternatively, proximity sensor 166 may be coupled to input controller 160 within I/O subsystem 106. In some embodiments, when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call), the proximity sensor is disabled by turning off the touch screen 112. do.

デバイス100はまた、1つ以上の加速度計168も含み得る。図1は、周辺機器インタフェース118に結合された、加速度計168を示す。あるいは、加速度計168は、I/Oサブシステム106内の入力コントローラ160に結合することもできる。一部の実施形態では、情報は、1つ以上の加速度計から受信されたデータの分析に基づいて、縦表示又は横表示で、タッチスクリーンディスプレイ上に表示される。デバイス100は、任意選択的に、加速度計168に加えて、デバイス100の位置及び向き(例えば、縦表示又は横表示)に関する情報を取得するための、磁力計(図示せず)及びGPS(又は、GLONASS若しくは他のグローバルナビゲーションシステム)受信機(図示せず)を含む。 Device 100 may also include one or more accelerometers 168. FIG. 1 shows accelerometer 168 coupled to peripheral interface 118. Alternatively, accelerometer 168 may be coupled to input controller 160 within I/O subsystem 106. In some embodiments, information is displayed on a touch screen display in portrait or landscape view based on analysis of data received from one or more accelerometers. In addition to the accelerometer 168, the device 100 optionally includes a magnetometer (not shown) and a GPS (or , GLONASS or other global navigation system) receiver (not shown).

一部の実施形態では、メモリ102に記憶されたソフトウェア構成要素は、オペレーティングシステム126、通信モジュール(又は、命令セット)128、接触/動きモジュール(又は命令セット)130、グラフィックモジュール(又は、命令セット)132、テキスト入力モジュール(又は、命令セット)134、全地球測位システム(GPS)モジュール(又は、命令セット)135、及びアプリケーション(又は、命令セット)136を含む。更には、一部の実施形態では、図1及び図3に示すように、メモリ102は、手書き入力モジュール157を記憶する。手書き入力モジュール157は、手書き認識モデルを含み、デバイス100(又は、デバイス300)のユーザに、手書き認識及び入力機能を提供する。手書き入力モジュール157の更なる詳細は、図5~図27、及びそれらの付随説明に関連して提供される。 In some embodiments, the software components stored in memory 102 include an operating system 126, a communication module (or instruction set) 128, a touch/motion module (or instruction set) 130, a graphics module (or instruction set) 130, and a graphics module (or instruction set) 130. ) 132 , a text input module (or instruction set) 134 , a global positioning system (GPS) module (or instruction set) 135 , and an application (or instruction set) 136 . Additionally, in some embodiments, as shown in FIGS. 1 and 3, memory 102 stores a handwriting input module 157. Handwriting input module 157 includes a handwriting recognition model and provides handwriting recognition and input functionality to the user of device 100 (or device 300). Further details of the handwriting input module 157 are provided in connection with FIGS. 5-27 and their accompanying descriptions.

オペレーティングシステム126(例えば、Darwin(登録商標)、RTXC(登録商標)、LINUX(登録商標)、UNIX(登録商標)、OS X(登録商標)、WINDOWS(登録商標)、又はVxWorks(登録商標)などの組み込みオペレーティングシステム)は、一般的なシステムタスク(例えば、メモリ管理、記憶デバイス制御、電力管理など)を制御及び管理するための、様々なソフトウェア構成要素及び/又はドライバを含み、様々なハードウェア構成要素及びソフトウェア構成要素との間の通信を容易にする。 Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or VxWorks) Embedded operating systems (embedded operating systems) include various software components and/or drivers to control and manage common system tasks (e.g., memory management, storage device control, power management, etc.) and Facilitates communication between components and software components.

通信モジュール128は、1つ以上の外部ポート124を介した他のデバイスとの通信を容易にし、また、RF回路機構108及び/又は外部ポート124によって受信されたデータを処理するための様々なソフトウェア構成要素も含む。外部ポート124(例えば、ユニバーサルシリアルバス(USB)、FIREWIRE(登録商標)など)は、他のデバイスに直接結合するように、又はネットワーク(例えば、インターネット、無線LANなど)を介して間接的に結合するように適合される。 Communication module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software for processing data received by RF circuitry 108 and/or external ports 124. Also includes constituent elements. External ports 124 (e.g., Universal Serial Bus (USB), FIREWIRE, etc.) can be coupled directly to other devices or indirectly via a network (e.g., the Internet, WLAN, etc.). adapted to do so.

接触/動きモジュール130は、(ディスプレイコントローラ156と関連して)タッチスクリーン112との接触、及び他のタッチ感知デバイス(例えば、タッチパッド又は物理クリックホイール)との接触を検出することができる。接触/動きモジュール130は、接触が生じたか否かを判定すること(例えば、指を下ろすイベントを検出すること)、接触の移動が存在するか否かを判定し、タッチ感知面を横断する移動を追跡すること(例えば、指をドラッグする1つ以上のイベントを検出すること)、及び接触が停止したか否かを判定すること(例えば、指を上げるイベント又は接触の中断を検出すること)などの、接触の検出に関連する様々な動作を実行するための、様々なソフトウェア構成要素を含む。接触/動きモジュール130は、タッチ感知面から接触データを受信する。一連の接触データによって表される、接触点の移動を判定することは、接触点の速さ(大きさ)、速度(大きさ及び方向)、及び/又は加速度(大きさ及び/又は方向の変化)を判定することを含み得る。これらの操作は、単一の接触(例えば、1本の指の接触)又は複数の同時接触(例えば、「マルチタッチ」/複数の指の接触)に適用することができる。一部の実施形態では、接触/動きモジュール130及びディスプレイコントローラ156は、タッチパッド上での接触を検出する。 Contact/motion module 130 (in conjunction with display controller 156) can detect contact with touch screen 112 and contact with other touch-sensitive devices (eg, a touch pad or physical click wheel). The touch/movement module 130 determines whether a touch has occurred (e.g., detecting a finger down event), determines whether there is movement of the touch, and detects movement across the touch-sensitive surface. (e.g., detecting one or more finger dragging events) and determining whether contact has ceased (e.g., detecting a finger raising event or a break in contact). includes various software components for performing various operations related to contact detection, such as. Touch/motion module 130 receives touch data from a touch-sensitive surface. Determining the movement of a point of contact, as represented by a set of contact data, involves determining the speed (magnitude), velocity (magnitude and direction), and/or acceleration (change in magnitude and/or direction) of the contact point. ). These operations can be applied to a single touch (eg, one finger touch) or multiple simultaneous contacts (eg, "multi-touch"/multiple finger contacts). In some embodiments, touch/movement module 130 and display controller 156 detect a touch on the touchpad.

接触/動きモジュール130は、ユーザによるジェスチャ入力を検出することができる。タッチ感知面上での異なるジェスチャは、異なる接触パターンを有する。それゆえ、特定の接触パターンを検出することによって、ジェスチャを検出することができる。例えば、指のタップジェスチャを検出することは、指を下ろすイベントを検出し、続いて(例えば、アイコンの位置での)その指を下ろすイベントと同じ位置(又は、実質的に同じ位置)で指を上げる(リフトオフする)イベントを検出することを含む。別の実施例として、タッチ感知面上での指のスワイプジェスチャを検出することは、指を下ろすイベントを検出し、続いて1つ以上の指をドラッグするイベントを検出し、その後、続いて指を上げる(リフトオフする)イベントを検出することを含む。 Touch/motion module 130 can detect gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns. Therefore, gestures can be detected by detecting specific contact patterns. For example, detecting a finger tap gesture involves detecting a finger down event, followed by a finger tap at the same location (or substantially the same location) as that finger down event (e.g., at the location of an icon). including detecting lift-off events. As another example, detecting a finger swipe gesture on a touch-sensitive surface may include detecting a finger down event, followed by one or more finger dragging events, and then subsequently detecting a finger swipe gesture on a touch-sensitive surface. including detecting lift-off events.

接触/動きモジュール130は、タッチ感知ディスプレイスクリーン112上に表示される、手書き入力インタフェースの手書き入力区域内の(又は、図3での、ディスプレイ340上に表示される手書き入力区域に対応する、タッチパッド355の区域内の)、手書きストロークの入力を登録するために、手書き入力モジュール157によって、任意選択的に利用される。一部の実施形態では、最初の指を下ろすイベント、最後の指を上げるイベント、それらの間の任意の時間中の接触に関連付けられる、場所、動きの経路、及び強度が、手書きストロークとして記録される。そのような情報に基づいて、そのユーザ入力に関するフィードバックとして、ディスプレイ上に手書きストロークをレンダリングすることができる。更には、接触/動きモジュール130によって登録された手書きストロークに基づいて、1つ以上の入力画像を生成することができる。 The touch/movement module 130 is capable of detecting touch signals within the handwriting input area of the handwriting input interface displayed on the touch-sensitive display screen 112 (or corresponding to the handwriting input area displayed on the display 340 in FIG. 3). (within the area of pad 355) is optionally utilized by handwriting input module 157 to register the input of handwritten strokes. In some embodiments, the location, path of movement, and intensity associated with the first finger down event, the last finger up event, and the contact during any time between them are recorded as a handwritten stroke. Ru. Based on such information, handwritten strokes can be rendered on the display as feedback regarding that user input. Additionally, one or more input images may be generated based on the handwritten strokes registered by the touch/movement module 130.

グラフィックモジュール132は、表示されるグラフィックの明度を変更するための構成要素を含めた、タッチスクリーン112又は他のディスプレイ上にグラフィックをレンダリングして表示するための、様々な既知のソフトウェア構成要素を含む。本明細書で使用するとき、用語「グラフィック」は、ユーザに対して表示することが可能な任意のオブジェクトを含み、それらのオブジェクトとしては、テキスト、ウェブページ、アイコン(ソフトキーを含むユーザインタフェースオブジェクトなど)、デジタル画像、ビデオ、アニメーションなどが挙げられるが、これらに限定されない。 Graphics module 132 includes various known software components for rendering and displaying graphics on touch screen 112 or other display, including components for changing the brightness of the displayed graphics. . As used herein, the term "graphic" includes any object that can be displayed to a user, including text, web pages, icons (user interface objects including softkeys) etc.), digital images, videos, animations, etc., but are not limited to these.

一部の実施形態では、グラフィックモジュール132は、使用されるグラフィックを表すデータを記憶する。各グラフィックには、対応するコードを割り当てることができる。グラフィックモジュール132は、アプリケーションなどから、必要に応じて、座標データ及び他のグラフィック特性データと共に、表示されるグラフィックを指定する1つ以上のコードを受信し、次いで、ディスプレイコントローラ156に出力するためのスクリーン画像データを生成する。 In some embodiments, graphics module 132 stores data representing the graphics used. Each graphic can be assigned a corresponding code. Graphics module 132 receives one or more codes specifying graphics to be displayed, optionally along with coordinate data and other graphical characteristic data, such as from an application, and then receives one or more codes for output to display controller 156 . Generate screen image data.

テキスト入力モジュール134は、グラフィックモジュール132の構成要素とすることができ、様々なアプリケーション(例えば、連絡先137、電子メール140、IM 141、ブラウザ147、及びテキスト入力を必要とする任意の他のアプリケーション)内でテキストを入力するための、ソフトキーボードを提供する。一部の実施形態では、テキスト入力モジュール134のユーザインタフェースを通じて、例えば、キーボード選択アフォーダンスを通じて、手書き入力モジュール157が、任意選択的に呼び出される。一部の実施形態では、同じ又は同様のキーボード選択アフォーダンスはまた、テキスト入力モジュール134を呼び出すために、手書き入力インタフェース内にも提供される。 Text input module 134 can be a component of graphics module 132 and can be used for various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other applications that require text input. ) provides a soft keyboard for entering text. In some embodiments, handwriting input module 157 is optionally invoked through the user interface of text input module 134, such as through a keyboard selection affordance. In some embodiments, the same or similar keyboard selection affordances are also provided within the handwriting input interface to invoke the text input module 134.

GPSモジュール135は、デバイスの場所を判定し、この情報を、様々なアプリケーションで使用するために(例えば、場所に基づくダイヤル発呼で使用するために電話138へ、写真/ビデオのメタデータとしてカメラ143へ、並びに、天気ウィジェット、地域のイエローページウィジェット、及び地図/ナビゲーションウィジェットなどの、場所に基づくサービスを提供するアプリケーションへ)提供する。 The GPS module 135 determines the location of the device and transmits this information to the phone 138 for use in various applications (e.g., to the phone 138 for use in location-based dialing calls, to the camera as photo/video metadata). 143 and to applications that provide location-based services, such as weather widgets, local yellow pages widgets, and map/navigation widgets).

アプリケーション136は、以下のモジュール(又は、命令セット)、又はそれらのサブセット若しくはスーパーセットを含み得る:連絡先モジュール137(アドレス帳又は連絡先リストと呼ばれる場合もある)、電話モジュール138;テレビ会議モジュール139;電子メールクライアントモジュール140;インスタントメッセージング(IM)モジュール141;トレーニングサポートモジュール142;静止画像及び/又はビデオ画像用のカメラモジュール143;画像管理モジュール144;ブラウザモジュール147;カレンダーモジュール148;天気ウィジェット149-1、株価ウィジェット149-2、計算機ウィジェット149-3、アラーム時計ウィジェット149-4、辞書ウィジェット149-5、及びユーザによって取得された他のウィジェット、並びにユーザ作成ウィジェット149-6のうちの1つ以上を含み得る、ウィジェットモジュール149;ユーザ作成ウィジェット149-6を作成するためのウィジェット作成モジュール150;検索モジュール151;ビデオプレーヤモジュール及び音楽プレーヤモジュールで構成することができる、ビデオ及び音楽プレーヤモジュール152;メモモジュール153;地図モジュール154;並びに/あるいはオンラインビデオモジュール155。 The application 136 may include the following modules (or sets of instructions), or a subset or superset thereof: a contacts module 137 (sometimes referred to as an address book or contact list); a telephony module 138; a video conferencing module. 139; email client module 140; instant messaging (IM) module 141; training support module 142; camera module 143 for still and/or video images; image management module 144; browser module 147; calendar module 148; weather widget 149 -1, one of a stock price widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, and a user-created widget 149-6. Widget module 149, which may include: a widget creation module 150 for creating user-created widgets 149-6; a search module 151; a video and music player module 152, which may be comprised of a video player module and a music player module; notes module 153; map module 154; and/or online video module 155.

メモリ102内に記憶することが可能な他のアプリケーション136の例としては、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、JAVA(登録商標)対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製が挙げられる。 Examples of other applications 136 that may be stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital writing, etc. rights management, voice recognition, and voice replication.

タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、及びテキスト入力モジュール134と関連して、連絡先モジュール137は、(例えば、メモリ102又はメモリ370内の連絡先モジュール137のアプリケーション内部状態192内に記憶される)アドレス帳又は連絡先リストを管理するために使用することができ、この管理には、アドレス帳に名前を追加すること、アドレス帳から名前を削除すること、電話番号、電子メールアドレス、実際の住所、又は他の情報を名前と関連付けること、画像を名前と関連付けること、名前を分類して並び替えること、電話138、テレビ会議139、電子メール140、又はIM 141などによる通信を開始及び/又は促進するために、電話番号又は電子メールアドレスを提供することなどが含まれる。 In conjunction with the touch screen 112, the display controller 156, the contact module 130, the graphics module 132, the handwriting input module 157, and the text input module 134, the contacts module 137 (e.g., contacts module in memory 102 or memory 370) 137 application internal state 192) can be used to manage an address book or contact list, including adding names to the address book, deleting names from the address book. , associating phone numbers, email addresses, physical addresses, or other information with names; associating images with names; categorizing and sorting names; telephone calls 138; video conferencing 139; email 140; or providing a telephone number or email address to initiate and/or facilitate communication, such as via IM 141.

RF回路機構108、オーディオ回路機構110、スピーカ111、マイクロホン113、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、及びテキスト入力モジュール134と関連して、電話モジュール138は、電話番号に対応する一連の文字を入力し、アドレス帳137内の1つ以上の電話番号にアクセスし、入力されている電話番号を修正し、それぞれの電話番号をダイヤルし、会話を実行し、会話が完了した際に接続を切るか又は電話を切るために、使用することができる。上述のように、この無線通信は、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを使用することができる。 Telephone module 138 in conjunction with RF circuitry 108 , audio circuitry 110 , speaker 111 , microphone 113 , touch screen 112 , display controller 156 , contact module 130 , graphics module 132 , handwriting input module 157 , and text input module 134 enters a sequence of characters corresponding to a telephone number, accesses one or more telephone numbers in the address book 137, modifies the entered telephone number, dials each telephone number, and conducts a conversation. and can be used to disconnect or hang up when the conversation is complete. As mentioned above, this wireless communication may use any of a number of communication standards, protocols, and technologies.

RF回路機構108、オーディオ回路機構110、スピーカ111、マイクロホン113、タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、テキスト入力モジュール134、連絡先リスト137、及び電話モジュール138と関連して、テレビ会議モジュール139は、ユーザの指示に従って、ユーザと1人以上の他の参加者との間のビデオ会議を開始し、実行し、終了するための、実行可能命令を含む。 RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, light sensor 164, light sensor controller 158, contact module 130, graphics module 132, handwriting input module 157, text input module 134 , a contact list 137, and a telephony module 138, a video conferencing module 139 initiates, conducts, and terminates a video conference between the user and one or more other participants according to the user's instructions. Contains executable instructions to do so.

RF回路機構108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、及びテキスト入力モジュール134と関連して、電子メールクライアントモジュール140は、ユーザの指示に応じて、電子メールを作成し、送信し、受信し、管理するための、実行可能命令を含む。画像管理モジュール144と関連して、電子メールクライアントモジュール140は、カメラモジュール143で撮影された静止画像又はビデオ画像を有する電子メールを作成及び送信することを、非常に容易にする。 In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact module 130, graphics module 132, handwriting input module 157, and text input module 134, email client module 140, in response to user instructions, Contains executable instructions for creating, sending, receiving, and managing email. In conjunction with the image management module 144, the email client module 140 greatly facilitates creating and sending emails with still or video images taken with the camera module 143.

RF回路機構108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、及びテキスト入力モジュール134と関連して、インスタントメッセージングモジュール141は、インスタントメッセージに対応する一連の文字を入力し、従前に入力された文字を修正し、(例えば、電話ベースのインスタントメッセージ用のショートメッセージサービス(SMS)若しくはマルチメディアメッセージサービス(MMS)プロトコルを使用して、又はインターネットベースのインスタントメッセージ用のXMPP、SIMPLE、若しくはIMPSを使用して)それぞれのインスタントメッセージを送信し、インスタントメッセージを受信し、受信されたインスタントメッセージを見るための、実行可能命令を含む。一部の実施形態では、送信及び/又は受信されるインスタントメッセージは、MMS及び/又は拡張メッセージングサービス(EMS)でサポートされるような、グラフィック、写真、オーディオファイル、ビデオファイル、及び/又は他の添付ファイルを含み得る。本明細書で使用するとき、「インスタントメッセージング」とは、電話ベースのメッセージ(例えば、SMS又はMMSを使用して送信されるメッセージ)及びインターネットベースのメッセージ(例えば、XMPP、SIMPLE、又はIMPSを使用して送信されるメッセージ)の双方を指す。 In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact module 130, graphics module 132, handwriting input module 157, and text input module 134, instant messaging module 141 generates a series of characters corresponding to an instant message. and modify previously entered characters (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephone-based instant messaging, or Internet-based instant messaging). includes executable instructions for sending instant messages (using XMPP, SIMPLE, or IMPS), receiving instant messages, and viewing received instant messages. In some embodiments, instant messages sent and/or received include graphics, photos, audio files, video files, and/or other May contain attachments. As used herein, "instant messaging" refers to telephone-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., using XMPP, SIMPLE, or IMPS). (messages sent).

RF回路機構108、タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、テキスト入力モジュール134、GPSモジュール135、地図モジュール154、及び音楽プレーヤモジュール146と関連して、トレーニングサポートモジュール142は、(例えば、時間、距離、及び/又はカロリー消費目標を有する)トレーニングを作成し、トレーニングセンサ(スポーツデバイス)と通信し、トレーニングセンサデータを受信し、トレーニングを監視するために使用されるセンサを較正し、トレーニング用の音楽を選択及び再生し、トレーニングデータを表示、記憶、及び送信するための、実行可能命令を含む。 In conjunction with the RF circuitry 108, touch screen 112, display controller 156, contact module 130, graphics module 132, handwriting input module 157, text input module 134, GPS module 135, map module 154, and music player module 146, the training Support module 142 is used to create workouts (e.g., with time, distance, and/or calorie expenditure goals), communicate with training sensors (sport devices), receive training sensor data, and monitor training. Executable instructions include executable instructions for calibrating sensors to be used, selecting and playing training music, and displaying, storing, and transmitting training data.

タッチスクリーン112、ディスプレイコントローラ156、光センサ164、光センサコントローラ158、接触モジュール130、グラフィックモジュール132、及び画像管理モジュール144と関連して、カメラモジュール143は、静止画像又は(ビデオストリームを含む)ビデオを取り込み、それらをメモリ102内に記憶し、静止画像又はビデオの特性を修正するか、あるいはメモリ102から静止画像又はビデオを削除するための、実行可能命令を含む。 In conjunction with touch screen 112, display controller 156, light sensor 164, light sensor controller 158, contact module 130, graphics module 132, and image management module 144, camera module 143 captures still images or video (including video streams). The image processing apparatus includes executable instructions for capturing images, storing them in memory 102, modifying characteristics of the still images or videos, or deleting the still images or videos from memory 102.

タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、テキスト入力モジュール134、及びカメラモジュール143と関連して、画像管理モジュール144は、静止画像及び/又はビデオ画像を配列し、修正(例えば、編集)するか若しくは他の方式で操作し、ラベルを付け、削除し、(例えば、デジタルスライドショー又はアルバム内で)提示し、記憶するための、実行可能命令を含む。 In conjunction with touch screen 112, display controller 156, contact module 130, graphics module 132, handwriting input module 157, text input module 134, and camera module 143, image management module 144 arranges still and/or video images. includes executable instructions for editing, modifying (eg, editing) or otherwise manipulating, labeling, deleting, presenting (eg, in a digital slide show or album), and storing.

RF回路機構108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、及びテキスト入力モジュール134と関連して、ブラウザモジュール147は、ウェブページ又はその諸部分、並びにウェブページにリンクされた添付ファイル及び他のファイルを検索すること、リンクすること、受信すること、及び表示することを含めた、ユーザの指示に従ってインターネットを閲覧するための、実行可能命令を含む。 In conjunction with the RF circuitry 108, touch screen 112, display system controller 156, contact module 130, graphics module 132, handwriting input module 157, and text input module 134, the browser module 147 can display a web page or portions thereof, and Contains executable instructions for browsing the Internet according to a user's instructions, including searching for, linking to, receiving, and displaying attachments and other files linked to web pages.

RF回路機構108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と関連して、カレンダーモジュール148は、ユーザの指示に従って、カレンダー、及びカレンダーに関連付けられたデータ(例えば、カレンダー項目、to doリストなど)を作成し、表示し、修正し、記憶するための、実行可能命令を含む。 Calendar module 148 in conjunction with RF circuitry 108 , touch screen 112 , display system controller 156 , contact module 130 , graphics module 132 , handwriting input module 157 , text input module 134 , email client module 140 , and browser module 147 includes executable instructions for creating, displaying, modifying, and storing a calendar and data associated with the calendar (eg, calendar items, to-do lists, etc.) according to a user's instructions.

RF回路機構108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、テキスト入力モジュール134、及びブラウザモジュール147と関連して、ウィジェットモジュール149は、ユーザによってダウンロードされ、使用することが可能なミニアプリケーション(例えば、天気ウィジェット149-1、株価ウィジェット149-2、計算機ウィジェット149-3、アラーム時計ウィジェット149-4、及び辞書ウィジェット149-5)、又はユーザによって作成することが可能なミニアプリケーション(例えば、ユーザ作成ウィジェット149-6)である。一部の実施形態では、ウィジェットは、HTML(ハイパーテキストマークアップ言語)ファイル、CSS(カスケーディングスタイルシート)ファイル、及びJavaScript(登録商標)ファイルを含む。一部の実施形態では、ウィジェットは、XML(拡張可能マークアップ言語)ファイル及びJavaScriptファイル(例えば、Yahoo!(登録商標)ウィジェット)を含む。 In conjunction with RF circuitry 108, touch screen 112, display system controller 156, contact module 130, graphics module 132, handwriting input module 157, text input module 134, and browser module 147, widget module 149 can be downloaded by a user. , mini-applications that can be used (e.g., weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5), or created by the user. A mini-application (eg, a user-created widget 149-6) that can be used to create a widget. In some embodiments, widgets include HTML (hypertext markup language) files, CSS (cascading style sheets) files, and JavaScript files. In some embodiments, widgets include XML (Extensible Markup Language) files and JavaScript files (eg, Yahoo!® widgets).

RF回路機構108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、テキスト入力モジュール134、及びブラウザモジュール147と関連して、ウィジェット作成モジュール150は、ウィジェットを作成する(例えば、ウェブページのユーザ指定箇所をウィジェットに変える)ために、ユーザによって使用することができる。 In conjunction with RF circuitry 108, touch screen 112, display system controller 156, contact module 130, graphics module 132, handwriting input module 157, text input module 134, and browser module 147, widget creation module 150 creates widgets. (e.g., to turn a user-specified portion of a web page into a widget).

タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、及びテキスト入力モジュール134と関連して、検索モジュール151は、ユーザの指示に従って、1つ以上の検索基準(例えば、1つ以上のユーザ指定の検索条件)に一致する、メモリ102内のテキスト、音楽、音声、画像、ビデオ、及び/又は他のファイルを検索するための、実行可能命令を含む。 In conjunction with touch screen 112, display system controller 156, contact module 130, graphics module 132, handwriting input module 157, and text input module 134, search module 151 is configured to perform one or more search criteria (e.g. , one or more user-specified search criteria).

タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、オーディオ回路機構110、スピーカ111、RF回路機構108、及びブラウザモジュール147と関連して、ビデオ及び音楽プレーヤモジュール152は、MP3又はAACファイルなどの1つ以上のファイル形式で記憶された、録音済みの音楽及び他の音声ファイルを、ユーザがダウンロード及び再生することを可能にする、実行可能命令と、ビデオを(例えば、タッチスクリーン112上に、又は外部ポート124を介して外部に接続されたディスプレイ上に)表示するか、提示するか、又は他の方式で再生するための、実行可能命令とを含む。一部の実施形態では、デバイス100は、iPod(Apple Inc.の登録商標)などのMP3プレーヤの機能性を含み得る。 In conjunction with touch screen 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speakers 111, RF circuitry 108, and browser module 147, video and music player module 152 supports MP3 or AAC Executable instructions that enable a user to download and play recorded music and other audio files stored in one or more file formats, such as and executable instructions for displaying, presenting, or otherwise reproducing (on or on a display externally connected via external port 124). In some embodiments, device 100 may include MP3 player functionality, such as an iPod (a registered trademark of Apple Inc.).

タッチスクリーン112、ディスプレイコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、及びテキスト入力モジュール134と関連して、メモモジュール153は、ユーザの指示に従って、メモ、to doリストなどを作成及び管理するための、実行可能命令を含む。 In conjunction with touch screen 112, display controller 156, contact module 130, graphics module 132, handwriting input module 157, and text input module 134, memo module 153 creates and creates notes, to-do lists, etc. according to user instructions. Contains executable instructions for managing.

RF回路機構108、タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、手書き入力モジュール157、テキスト入力モジュール134、GPSモジュール135、及びブラウザモジュール147と関連して、地図モジュール154は、ユーザの指示に従って、地図、及び地図に関連付けられたデータ(例えば、運転方向、特定の場所若しくはその付近の店舗及び関心対象の他の地点についてのデータ、並びに場所に基づく他のデータ)を受信し、表示し、修正し、記憶するために使用することができる。 In conjunction with RF circuitry 108, touch screen 112, display system controller 156, contact module 130, graphics module 132, handwriting input module 157, text input module 134, GPS module 135, and browser module 147, map module 154 includes: According to the user's instructions, receive a map and data associated with the map (e.g., driving directions, data about stores at or near a particular location and other points of interest, and other location-based data). , can be used to display, modify and store.

タッチスクリーン112、ディスプレイシステムコントローラ156、接触モジュール130、グラフィックモジュール132、オーディオ回路機構110、スピーカ111、RF回路機構108、手書き入力モジュール157、テキスト入力モジュール134、電子メールクライアントモジュール140、及びブラウザモジュール147と関連して、オンラインビデオモジュール155は、ユーザが、特定のオンラインビデオにアクセスし、閲覧し、(例えば、ストリーミング及び/又はダウンロードによって)受信し、(例えば、タッチスクリーン上で、又は外部ポート124を介して接続された外部のディスプレイ上で)再生し、そのオンラインビデオへのリンクを有する電子メールを送信し、また他の方式で、H.264などの1つ以上のファイル形式でオンラインビデオを管理することが可能となる、命令を含む。一部の実施形態では、電子メールクライアントモジュール140ではなく、インスタントメッセージングモジュール141を使用して、特定のオンラインビデオへのリンクを送信する。 Touch screen 112, display system controller 156, contact module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, handwriting input module 157, text input module 134, email client module 140, and browser module 147 In conjunction with the online video module 155, the online video module 155 allows a user to access, view, and receive (e.g., by streaming and/or downloading) certain online videos (e.g., on a touch screen or via external port 124). play it (on an external display connected via H. The method includes instructions that allow online video to be managed in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used rather than email client module 140 to send a link to a particular online video.

上記で特定されたモジュール及びアプリケーションのそれぞれは、上述の1つ以上の機能、及び本出願で説明される方法(例えば、コンピュータにより実施される方法及び本明細書で説明される他の情報処理方法)を実行する、実行可能命令のセットに対応する。これらのモジュール(すなわち、命令セット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、それゆえ、様々な実施形態では、これらのモジュールの様々なサブセットを組み合わせるか、又は他の方式で再構成することができる。一部の実施形態では、メモリ102は、上記で特定されたモジュール及びデータ構造のサブセットを記憶することができる。更には、メモリ102は、上述されていない追加的モジュール及びデータ構造を記憶することができる。 Each of the modules and applications identified above may perform one or more of the functions described above and the methods described in this application (e.g., computer-implemented methods and other information processing methods described herein). ) corresponds to a set of executable instructions. These modules (i.e., instruction sets) need not be implemented as separate software programs, procedures, or modules; therefore, various embodiments may combine various subsets of these modules or otherwise It can be reconstructed using the following method. In some embodiments, memory 102 may store a subset of the modules and data structures identified above. Furthermore, memory 102 may store additional modules and data structures not described above.

一部の実施形態では、デバイス100は、デバイス上での既定の機能のセットの動作が、排他的にタッチスクリーン及び/又はタッチパッドを介して実行されるデバイスである。デバイス100の動作に関する主要な入力制御デバイスとして、タッチスクリーン及び/又はタッチパッドを使用することによって、デバイス100上の物理入力制御デバイス(プッシュボタン、ダイヤルなど)の数を低減することができる。 In some embodiments, device 100 is a device in which the operation of a predetermined set of functions on the device is performed exclusively via a touch screen and/or touch pad. By using a touch screen and/or touch pad as the primary input control device for the operation of device 100, the number of physical input control devices (push buttons, dials, etc.) on device 100 can be reduced.

図2は、一部の実施形態に係る、タッチスクリーン112を有するポータブル多機能デバイス100を示す。このタッチスクリーンは、ユーザインタフェース(UI)200内に、1つ以上のグラフィックを表示することができる。本実施形態、並びに以下で説明される他の実施形態では、ユーザは、例えば、1本以上の指202(図には正確な縮尺率では描かれていない)又は1つ以上のスタイラス203(図には正確な縮尺率では描かれていない)を使用して、グラフィック上でジェスチャを実施することによって、グラフィックのうちの1つ以上を選択することができる。一部の実施形態では、ユーザが1つ以上のグラフィックとの接触を中断する場合に、1つ以上のグラフィックの選択が発生する。一部の実施形態では、このジェスチャは、1回以上のタップ、1回以上の(左から右、右から左、上向き、及び/又は下向きの)スワイプ、及び/又は、デバイス100と接触した(右から左、左から右、上向き、及び/又は下向きの)指のローリングを含み得る。一部の実施形態では、グラフィックとの不測の接触は、そのグラフィックを選択し得ない。例えば、選択に対応するジェスチャがタップである場合、アプリケーションアイコンの上を掃過するスワイプジェスチャは、対応するアプリケーションを選択し得ない。 FIG. 2 illustrates a portable multifunction device 100 with a touch screen 112, according to some embodiments. The touch screen can display one or more graphics within a user interface (UI) 200. In this embodiment, as well as other embodiments described below, the user may, for example, use one or more fingers 202 (not drawn to scale in the illustration) or one or more stylus 203 (not drawn to scale in the illustration). (not drawn to scale) can be used to select one or more of the graphics by performing gestures on the graphics. In some embodiments, selection of one or more graphics occurs when the user breaks contact with the one or more graphics. In some embodiments, the gesture is one or more taps, one or more swipes (left-to-right, right-to-left, upward, and/or downward), and/or contacting the device 100 ( (right-to-left, left-to-right, upward, and/or downward) finger rolling. In some embodiments, accidental contact with a graphic may not select that graphic. For example, if the gesture that corresponds to selection is a tap, a swipe gesture that sweeps over an application icon may not select the corresponding application.

デバイス100はまた、「ホーム」又はメニューボタン204などの、1つ以上の物理ボタンも含み得る。前述のように、メニューボタン204を使用して、デバイス100上で実行することが可能なアプリケーションのセット内の任意のアプリケーション136に、ナビゲートすることができる。あるいは、一部の実施形態では、メニューボタンは、タッチスクリーン112上に表示されるGUI内の、ソフトキーとして実装される。 Device 100 may also include one or more physical buttons, such as a “home” or menu button 204. As mentioned above, menu button 204 can be used to navigate to any application 136 within the set of applications that can run on device 100. Alternatively, in some embodiments, the menu button is implemented as a softkey within a GUI displayed on touch screen 112.

一実施形態では、デバイス100は、タッチスクリーン112、メニューボタン204、デバイスの電源をオン/オフし、デバイスをロックするためのプッシュボタン206、音量調節ボタン208、加入者識別モジュール(SIM)カードスロット210、ヘッドセットジャック212、及びドッキング/充電用外部ポート124を含む。プッシュボタン206は、ボタンを押し下げて、既定の時間間隔にわたってボタンを押し下げられた状態で保持することによって、デバイス上の電源をオン/オフし、ボタンを押し下げて、既定の時間間隔が経過する前にボタンを解放することによって、デバイスをロックし、及び/又は、デバイスをロック解除するか、若しくはロック解除プロセスを開始するために、使用することができる。代替的実施形態では、デバイス100はまた、マイクロホン113を介して、一部の機能のアクティブ化又は非アクティブ化に関する口頭入力も受け入れることができる。 In one embodiment, the device 100 includes a touch screen 112, a menu button 204, a push button 206 for powering the device on/off and locking the device, a volume control button 208, and a subscriber identity module (SIM) card slot. 210, a headset jack 212, and an external docking/charging port 124. The push button 206 turns on and off power on the device by pressing the button down and holding the button down for a predetermined time interval, and by pressing the button down and holding the button down for a predetermined time interval. Releasing the button can be used to lock the device and/or unlock the device or initiate an unlocking process. In an alternative embodiment, device 100 may also accept verbal input via microphone 113 regarding activation or deactivation of some features.

図3は、一部の実施形態に係る、ディスプレイ及びタッチ感知面を備える、例示的な多機能デバイスのブロック図である。デバイス300は、ポータブル型である必要はない。一部の実施形態では、デバイス300は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディアプレーヤデバイス、ナビゲーションデバイス、教育用デバイス(子供の学習玩具など)、ゲームシステム、電話デバイス、又は制御デバイス(例えば、家庭用又は業務用コントローラ)である。デバイス300は、典型的には、1つ以上の処理ユニット(CPU)310、1つ以上のネットワーク又は他の通信インタフェース360、メモリ370、及びこれらの構成要素を相互接続するための1つ以上の通信バス320を含む。通信バス320は、システム構成要素間の通信を相互接続及び制御する、(チップセットと呼ばれる場合もある)回路機構を含み得る。デバイス300は、典型的にはタッチスクリーンディスプレイである、ディスプレイ340を備える、入出力(I/O)インタフェース330を含む。I/Oインタフェース330はまた、キーボード及び/又はマウス(又は、他のポインティングデバイス)350、並びにタッチパッド355も含み得る。メモリ370は、DRAM、SRAM、DDR RAM、又は他のランダムアクセス半導体メモリデバイスなどの、高速ランダムアクセスメモリを含み、また、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性半導体記憶デバイスなどの、不揮発性メモリを含み得る。メモリ370は、CPU 310から遠隔に配置される1つ以上の記憶デバイスを、任意選択的に含み得る。一部の実施形態では、メモリ370は、ポータブル多機能デバイス100(図1)のメモリ102内に記憶されたプログラム、モジュール、及びデータ構造に類似する、プログラム、モジュール、及びデータ構造、若しくはそれらのサブセットを記憶する。更には、メモリ370は、ポータブル多機能デバイス100のメモリ102内には存在しない、追加的なプログラム、モジュール、及びデータ構造を記憶することができる。例えば、デバイス300のメモリ370は、描画モジュール380、プレゼンテーションモジュール382、ワードプロセッシングモジュール384、ウェブサイト作成モジュール386、ディスクオーサリングモジュール388、及び/又はスプレッドシートモジュール390を記憶することができるが、その一方で、ポータブル多機能デバイス100(図1)のメモリ102は、これらのモジュールを記憶しない場合がある。 FIG. 3 is a block diagram of an exemplary multifunction device with a display and a touch-sensitive surface, according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia player device, a navigation device, an educational device (such as a child's learning toy), a gaming system, a telephone device, or a control device ( For example, a home or business controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more processors for interconnecting these components. Includes a communication bus 320. Communication bus 320 may include circuitry (sometimes referred to as a chipset) that interconnects and controls communications between system components. Device 300 includes an input/output (I/O) interface 330 with a display 340, typically a touch screen display. I/O interface 330 may also include a keyboard and/or mouse (or other pointing device) 350 and touch pad 355. Memory 370 includes high speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access semiconductor memory devices, and also includes one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other memory devices. may include non-volatile memory, such as non-volatile semiconductor storage devices. Memory 370 may optionally include one or more storage devices located remotely from CPU 310. In some embodiments, memory 370 stores programs, modules, and data structures similar to or similar to those stored within memory 102 of portable multifunction device 100 (FIG. 1). Remember the subset. Furthermore, memory 370 may store additional programs, modules, and data structures that are not present within memory 102 of portable multifunction device 100. For example, the memory 370 of the device 300 may store a drawing module 380, a presentation module 382, a word processing module 384, a website creation module 386, a disk authoring module 388, and/or a spreadsheet module 390, while In this case, the memory 102 of the portable multifunction device 100 (FIG. 1) may not store these modules.

上記で特定された図3の要素のそれぞれは、前述のメモリデバイスのうちの1つ以上に記憶することができる。上記で特定されたモジュールのそれぞれは、上述の機能を実行する命令セットに対応する。上記で特定されたモジュール又はプログラム(すなわち、命令セット)は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、それゆえ、様々な実施形態では、これらのモジュールの様々なサブセットを組み合わせるか、又は他の方式で再構成することができる。一部の実施形態では、メモリ370は、上記で特定されたモジュール及びデータ構造のサブセットを記憶することができる。更には、メモリ370は、上述されていない追加的なモジュール及びデータ構造を記憶することができる。 Each of the elements of FIG. 3 identified above may be stored in one or more of the aforementioned memory devices. Each of the modules identified above corresponds to a set of instructions that perform the functions described above. The modules or programs (i.e., instruction sets) identified above need not be implemented as separate software programs, procedures, or modules; therefore, various embodiments may implement various subsets of these modules. may be combined or otherwise reconfigured. In some embodiments, memory 370 may store a subset of the modules and data structures identified above. Furthermore, memory 370 may store additional modules and data structures not described above.

図4は、ディスプレイ450(例えば、タッチスクリーンディスプレイ112)とは別個のタッチ感知面451(例えば、図3のタブレット又はタッチパッド355)を備えるデバイス(例えば、図3のデバイス300)上の、例示的ユーザインタフェースを示す。以下の実施例の多くは、タッチスクリーンディスプレイ112上での入力(タッチ感知面とディスプレイとが組み合わされている場合)を参照して説明されるが、一部の実施形態では、デバイスは、図4に示されるように、ディスプレイとは別個のタッチ感知面上での入力を検出する。一部の実施形態では、このタッチ感知面(例えば、図4での451)は、ディスプレイ(例えば、450)上の主軸(例えば、図4での453)に対応する主軸(例えば、図4での452)を有する。これらの実施形態によれば、デバイスは、ディスプレイ上のそれぞれの場所に対応する場所(例えば、図4では、460は468に対応し、462は470に対応する)での、タッチ感知面451との接触(例えば、図4での460及び462)を検出する。この方式で、タッチ感知面がディスプレイとは別個のものである場合、タッチ感知面(例えば、図4での451)上でデバイスによって検出されたユーザ入力(例えば、接触460及び462、並びにそれらの移動)が、多機能デバイスのディスプレイ(例えば、図4での450)上のユーザインタフェースを操作するために、デバイスによって使用される。同様の方法を、本明細書で説明される他のユーザインタフェースに関して使用することができる点を理解されたい。 FIG. 4 shows an example screen on a device (e.g., device 300 of FIG. 3) that includes a touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3) separate from a display 450 (e.g., touchscreen display 112). Figure 2 shows a typical user interface. Although many of the examples below are described with reference to input on a touch screen display 112 (when a touch-sensitive surface and display are combined), in some embodiments the device 4, detecting input on a touch-sensitive surface separate from the display. In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4) has a major axis (e.g., 453 in FIG. 4) that corresponds to a major axis (e.g., 453 in FIG. 4) on the display (e.g., 450). 452). According to these embodiments, the device includes a touch-sensitive surface 451 and a touch-sensitive surface 451 at locations corresponding to their respective locations on the display (e.g., in FIG. 4, 460 corresponds to 468 and 462 corresponds to 470). (eg, 460 and 462 in FIG. 4). In this manner, if the touch-sensitive surface is separate from the display, user inputs (e.g., contacts 460 and 462 and their movement) is used by the device to manipulate the user interface on the multifunction device's display (eg, 450 in FIG. 4). It should be appreciated that similar methods can be used with other user interfaces described herein.

ここで、多機能デバイス(例えば、デバイス100)上に実装することが可能な、手書き入力法及びユーザインタフェース(「UI」)の実施形態に注意を向ける。 Attention is now directed to embodiments of handwriting input methods and user interfaces ("UI") that may be implemented on a multifunction device (eg, device 100).

図5は、一部の実施態様による、I/Oインタフェースモジュール500(例えば、図3でのI/Oインタフェース330、又は図1でのI/Oサブシステム106)と相互作用して、デバイス上に手書き入力能力を提供する、例示的な手書き入力モジュール157を示す、ブロック図である。図5に示されるように、手書き入力モジュール157は、入力処理モジュール502、手書き認識モジュール504、及び結果生成モジュール506を含む。一部の実施形態では、入力処理モジュール502は、分割モジュール508、及び正規化モジュール510を含む。一部の実施形態では、結果生成モジュール506は、部首クラスタ化モジュール512、及び1つ以上の言語モデル514を含む。 FIG. 5 shows an I/O interface module 500 (e.g., I/O interface 330 in FIG. 3 or I/O subsystem 106 in FIG. 1) interacting with an I/O interface module 500 on a device, according to some implementations. FIG. 2 is a block diagram illustrating an example handwriting input module 157 that provides handwriting input capabilities to the user. As shown in FIG. 5, handwriting input module 157 includes an input processing module 502, a handwriting recognition module 504, and a result generation module 506. In some embodiments, input processing module 502 includes a segmentation module 508 and a normalization module 510. In some embodiments, result generation module 506 includes a radical clustering module 512 and one or more language models 514.

一部の実施形態では、入力処理モジュール502は、I/Oインタフェースモジュール500(例えば、図3でのI/Oインタフェース330、又は図1でのI/Oサブシステム106)と通信して、ユーザから手書き入力を受信する。手書きは、図1でのタッチ感知ディスプレイシステム112、及び/又は図3でのタッチパッド355などの、任意の好適な手段を介して入力される。それらの手書き入力は、手書き入力UI内の既定の手書き入力区域内にユーザによって提供された各ストロークを表す、データを含む。一部の実施形態では、手書き入力の各ストロークを表すデータは、手書き入力区域内での持続的接触(例えば、ユーザの指又はスタイラスとデバイスのタッチ感知面との接触)の、開始及び終了の場所、強度プロファイル、並びに動きの経路などの、データを含む。一部の実施形態では、I/Oインタフェースモジュール500は、関連する時間的情報及び空間的情報を有する、手書きストロークの配列516を、リアルタイムで入力処理モジュール502に渡す。同時に、I/Oインタフェースモジュールはまた、このユーザの入力に対する視覚フィードバックとして、手書き入力ユーザインタフェースの手書き入力区域内に、それらの手書きストロークのリアルタイムレンダリング518も提供する。 In some embodiments, input processing module 502 communicates with I/O interface module 500 (e.g., I/O interface 330 in FIG. 3 or I/O subsystem 106 in FIG. 1) to Receive handwritten input from. Handwriting is input via any suitable means, such as touch sensitive display system 112 in FIG. 1 and/or touch pad 355 in FIG. 3. These handwriting inputs include data representing each stroke provided by the user within a predefined handwriting input area within the handwriting input UI. In some embodiments, data representing each stroke of handwriting input includes the beginning and ending of a sustained contact within the handwriting input area (e.g., contact between a user's finger or stylus and a touch-sensitive surface of a device). Contains data such as location, intensity profile, and path of movement. In some embodiments, I/O interface module 500 passes an array of handwritten strokes 516, with associated temporal and spatial information, to input processing module 502 in real time. At the same time, the I/O interface module also provides a real-time rendering 518 of these handwritten strokes within the handwriting input area of the handwriting input user interface as visual feedback for this user's input.

一部の実施形態では、各手書きストロークを表すデータが、入力処理モジュール502によって受信される際に、複数の連続的ストロークに関連付けられた、時間的情報及び空間的情報もまた記録される。例えば、それらのデータは、任意選択的に、それぞれのストローク配列番号を有する個別のストロークの、形状、サイズ、空間的飽和度、及び、手書き入力全体の書き込み方向に沿った、それらのストロークの相対的な空間的位置などを示す、スタックを含む。一部の実施形態では、入力処理モジュール502は、受信したストロークを、デバイスのディスプレイ518(例えば、図3でのディスプレイ340、又は図1でのタッチ感知ディスプレイ112)上にレンダリングするように、I/Oインタフェースモジュール500に命令を返す。一部の実施形態では、受信したストロークのレンダリングは、アニメーション化されて、筆記用具(例えば、ペン)を使用する書き込み面(例えば、1枚の紙)上での書き込みの実際の進行を模倣する、視覚効果が提供される。一部の実施形態では、ユーザは、レンダリングされるストロークの、ペン先スタイル、色、質感などを指定することが、任意選択的に可能となる。 In some embodiments, as data representing each handwritten stroke is received by input processing module 502, temporal and spatial information associated with the plurality of consecutive strokes is also recorded. For example, the data optionally includes the shape, size, spatial saturation of individual strokes with each stroke sequence number, and the relative of those strokes along the writing direction of the entire handwriting input. Contains a stack, indicating, for example, spatial location. In some embodiments, the input processing module 502 uses an I/O signal to render the received strokes on a display 518 of the device (e.g., display 340 in FIG. 3 or touch-sensitive display 112 in FIG. 1). /O interface module 500; In some embodiments, the rendering of the received strokes is animated to mimic the actual progression of writing on a writing surface (e.g., a piece of paper) using a writing instrument (e.g., a pen). , visual effects are provided. In some embodiments, the user is optionally allowed to specify the nib style, color, texture, etc. of the rendered strokes.

一部の実施形態では、入力処理モジュール502は、手書き入力区域内に現時点で蓄積されているストロークを処理して、それらのストロークを、1つ以上の認識単位へと割り当てる。一部の実施形態では、各認識単位は、手書き認識モデル504によって認識される、特定の文字に対応する。一部の実施形態では、各認識単位は、手書き認識モデル504によって認識される、特定の出力文字又は部首に対応する。部首は、複数の複合表語文字内に見出される、再現性の構成要素である。複合表語文字は、一般的なレイアウト(例えば、左右のレイアウト、上下のレイアウトなど)に従って配置構成された、2つ以上の部首を含み得る。一実施例では、単一の中国文字「
」は、2つの部首、すなわち、左の部首「
」及び右の部首「
」を使用して構築されている。
In some embodiments, input processing module 502 processes the currently accumulated strokes within the handwriting input area and assigns the strokes to one or more recognition units. In some embodiments, each recognition unit corresponds to a particular character recognized by handwriting recognition model 504. In some embodiments, each recognition unit corresponds to a particular output character or radical recognized by handwriting recognition model 504. Radicals are reproducible components found within multiple compound logograms. A compound logogram may include two or more radicals arranged according to a common layout (eg, left-right layout, top-down layout, etc.). In one embodiment, a single Chinese character "
” means two radicals, namely the left radical “
” and the right radical “
It is built using ``.

一部の実施形態では、入力処理モジュール502は、現時点で蓄積されている手書きストロークを、1つ以上の認識単位に割り当てるか又は分離するために、分割モジュールに依存する。例えば、手書き文字「
」に関するストロークを分割する場合、分割モジュール508は、任意選択的に、手書き入力の左側にクラスタ化されるストロークを、1つの(すなわち、左の部首「
」に関する)認識単位に割り当て、手書き入力の右側にクラスタ化されるストロークを、別の(すなわち、右の部首「
」に関する)認識単位に割り当てる。あるいは、分割モジュール508はまた、これらのストロークの全てを、単一の(すなわち、文字「
」に関する)認識単位に割り当てることもできる。
In some embodiments, input processing module 502 relies on a segmentation module to assign or separate currently accumulated handwritten strokes into one or more recognition units. For example, handwritten characters “
”, the splitting module 508 optionally splits the strokes that are clustered on the left side of the handwritten input into one (i.e., the left radical “
”) and assign the strokes that are clustered on the right side of the handwritten input to another (i.e., the right radical “
”) to the recognition unit. Alternatively, the segmentation module 508 also splits all of these strokes into a single (i.e., the character "
”) can also be assigned to the recognition unit.

一部の実施形態では、分割モジュール508は、現時点で蓄積されている手書き入力(例えば、1つ以上の手書きストローク)を、幾つかの異なる方式で認識単位のグループに分割して、分割束520を作り出す。例えば、これまでに、合計で9つのストロークが、手書き入力区域内に蓄積されていると想定する。分割束520の第1の分割鎖に従って、ストローク1、2、3が、第1の認識単位522へとグループ化され、ストローク4、5、6が、第2の認識単位526へとグループ化される。分割束520の第2の分割鎖に従って、ストローク1~9の全てが、1つの認識単位526へとグループ化される。 In some embodiments, the segmentation module 508 may segment the currently accumulated handwriting input (e.g., one or more handwritten strokes) into groups of recognition units in several different ways to create a segmented bundle 520. create. For example, assume that so far a total of nine strokes have been accumulated within the handwriting input area. According to the first division chain of the division bundle 520, strokes 1, 2, 3 are grouped into a first recognition unit 522, and strokes 4, 5, 6 are grouped into a second recognition unit 526. Ru. According to the second division chain of the division bundle 520, all strokes 1 to 9 are grouped into one recognition unit 526.

一部の実施形態では、各分割鎖には、特定の分割鎖が現在の手書き入力の正しい分割であることの尤度を評価するための、分割スコアが与えられる。一部の実施形態では、各分割鎖の分割スコアを算出するために、任意選択的に使用される因子としては、ストロークの絶対的及び/又は相対的サイズ、様々な方向(例えば、x方向、y方向、z方向)でのストロークの相対的及び/又は絶対的スパン、ストロークの飽和レベルの平均及び/又は変動、隣接するストロークへの絶対的及び/又は相対的距離、ストロークの絶対的及び/又は相対的場所、ストロークが入力される順序又は配列、各ストロークの持続時間、各ストロークが入力された速度(又は、緩急)の平均及び/又は変動、ストロークの長さに沿った各ストロークの強度プロファイルなどが挙げられる。一部の実施形態では、これらの因子のうちの1つ以上に、1つ以上の関数又は変換を、任意選択的に適用して、分割束520内の種々の分割鎖の分割スコアが生成される。 In some embodiments, each segmentation chain is given a segmentation score to assess the likelihood that a particular segmentation chain is a correct segmentation of the current handwriting input. In some embodiments, factors optionally used to calculate the splitting score for each splitting strand include absolute and/or relative size of the stroke, various directions (e.g., the relative and/or absolute span of the stroke in the y-direction, z-direction), the average and/or variation of the saturation level of the stroke, the absolute and/or relative distance to neighboring strokes, the absolute and/or absolute span of the stroke; or the relative location, the order or arrangement in which the strokes are entered, the duration of each stroke, the average and/or variation in the speed (or slowness or steepness) at which each stroke is entered, the intensity of each stroke along the length of the stroke. Examples include profiles. In some embodiments, one or more functions or transformations are optionally applied to one or more of these factors to generate split scores for various split chains within split bundle 520. Ru.

一部の実施形態では、分割モジュール508が、ユーザから受信された現在の手書き入力516を分割した後、分割モジュール508は、その分割束520を、正規化モジュール510に渡す。一部の実施形態では、正規化モジュール510は、分割束520内で指定された各認識単位(例えば、認識単位522、524、及び526)に関する入力画像(例えば、入力画像528)を生成する。一部の実施形態では、この正規化モジュールは、手書き認識モデル504に、その入力画像を入力として提供することができるように、その入力画像に、必須又は所望の正規化(例えば、延伸、トリミング、ダウンサンプル、又はアップサンプリング)を実行する。一部の実施形態では、各入力画像528は、それぞれの1つの認識単位に割り当てられるストロークを含むものであり、手書き認識モジュール504によって認識される、1つの文字又は部首に対応する。 In some embodiments, after the splitting module 508 splits the current handwritten input 516 received from the user, the splitting module 508 passes the split bundle 520 to the normalization module 510. In some embodiments, normalization module 510 generates an input image (eg, input image 528) for each recognition unit specified in split bundle 520 (eg, recognition units 522, 524, and 526). In some embodiments, the normalization module performs any required or desired normalization (e.g., stretching, cropping, etc.) on the input image so that the input image can be provided as input to the handwriting recognition model 504. , downsampling, or upsampling). In some embodiments, each input image 528 includes strokes that are assigned to a respective recognition unit and corresponds to one character or radical recognized by the handwriting recognition module 504.

一部の実施形態では、入力処理モジュール502によって生成された入力画像は、個別のストロークに関連付けられる、いずれの時間的情報も含まず、空間的情報(例えば、入力画像内のピクセルの場所及び密度によって表される情報)のみが、その入力画像内に保存される。純粋に訓練書き込みサンプルの空間的情報について訓練された、手書き認識モデルは、空間的情報のみに基づく、手書き認識が可能である。結果として、その手書き認識モデルは、ストローク順序及びストローク方向非依存式であり、訓練の間に、その手書き認識モデルの語彙内の全ての文字(すなわち、全ての出力クラス)に関する、ストローク順序及びストローク方向の全ての可能な順列を、網羅的に列挙することはない。実際に、一部の実施形態では、手書き認識モジュール502は、入力画像内で、1つのストロークに属するピクセルと、別のストロークに属するピクセルとを、区別しない。 In some embodiments, the input image generated by input processing module 502 does not include any temporal information associated with individual strokes, but rather spatial information (e.g., location and density of pixels within the input image). only the information represented by ) is preserved in the input image. A handwriting recognition model trained purely on the spatial information of training writing samples is capable of handwriting recognition based only on spatial information. As a result, the handwriting recognition model is stroke order and stroke direction independent, and during training the handwriting recognition model is stroke order and stroke direction independent for all characters in its vocabulary (i.e., all output classes). There is no exhaustive enumeration of all possible permutations of direction. In fact, in some embodiments, handwriting recognition module 502 does not distinguish between pixels belonging to one stroke and pixels belonging to another stroke in the input image.

後に(例えば、図25A~図27に関連して)より詳細に説明されるように、一部の実施形態では、一部の時間的に導出されるストローク分布情報が、純粋に空間的な手書き認識モデル内に再導入されて、その認識モデルのストローク順序及びストローク方向非依存性を損なうことなく、認識精度が向上する。 As described in more detail below (e.g., in connection with FIGS. 25A-27), in some embodiments, some temporally derived stroke distribution information may be derived from purely spatial handwriting. It is reintroduced into the recognition model to improve recognition accuracy without compromising the stroke order and stroke direction independence of the recognition model.

一部の実施形態では、1つの認識単位に関して、入力処理モジュール502によって生成された入力画像は、同じ分割鎖内の、いずれの他の認識単位の入力画像とも重複しない。一部の実施形態では、異なる認識単位に関して生成された入力画像は、ある程度の重複を有し得る。一部の実施形態では、ある程度の入力画像間の重複は、筆写体の書体で書かれた手書き入力、及び/又は続き文字を含む(例えば、1つのストロークが2つの隣接する文字を接続する)手書き入力の認識に関して、許容される。 In some embodiments, for one recognition unit, the input image generated by input processing module 502 does not overlap with the input image of any other recognition unit within the same split chain. In some embodiments, input images generated for different recognition units may have some degree of overlap. In some embodiments, some degree of overlap between input images includes handwritten input written in a cursive typeface, and/or continuous characters (e.g., one stroke connects two adjacent characters) Acceptable for recognizing handwritten input.

一部の実施形態では、分割の前に、ある程度の正規化が実行される。一部の実施形態では、分割モジュール508及び正規化モジュール510の機能は、同じモジュール又は2つ以上の他のモジュールによって、実行することができる。 In some embodiments, some degree of normalization is performed before splitting. In some embodiments, the functions of segmentation module 508 and normalization module 510 may be performed by the same module or two or more other modules.

一部の実施形態では、各認識単位の入力画像528が、手書き認識モデル504に入力として提供されると、手書き認識モデル504は、その認識単位が、手書き認識モデル504のレパートリー又は語彙(すなわち、手書き認識モジュール504によって認識可能な、全ての文字及び部首のリスト)内の、それぞれの出力文字であることの、種々の尤度からなる出力を生成する。後により詳細に説明されるように、手書き認識モデル504は、複数のスクリプト(例えば、Unicode規格によって符号化されている、少なくとも3つの非重複スクリプト)内の多数の文字を認識するように、訓練されている。非重複スクリプトの例としては、ラテンスクリプト、中国文字、アラビア文字、ペルシャスクリプト、キリルスクリプト、及び絵文字などの人工的スクリプトが挙げられる。一部の実施形態では、手書き認識モデル504は、各入力画像に関する(すなわち、各認識単位に関する)1つ以上の出力文字を生成し、その文字認識に関連付けられる信頼レベルに基づいて、各出力文字に関するそれぞれの認識スコアを割り当てる。 In some embodiments, when the input image 528 for each recognition unit is provided as input to the handwriting recognition model 504, the handwriting recognition model 504 recognizes that the recognition unit is the repertoire or vocabulary of the handwriting recognition model 504 (i.e., generates an output consisting of various likelihoods of being each output character in a list of all characters and radicals that can be recognized by the handwriting recognition module 504; As described in more detail below, handwriting recognition model 504 is trained to recognize multiple characters within multiple scripts (e.g., at least three non-overlapping scripts encoded by the Unicode standard). has been done. Examples of non-duplicate scripts include Latin script, Chinese script, Arabic script, Persian script, Cyrillic script, and man-made scripts such as glyphs. In some embodiments, handwriting recognition model 504 generates one or more output characters for each input image (i.e., for each recognition unit) and determines whether each output character has a confidence level associated with the character recognition. Assign a recognition score to each.

一部の実施形態では、手書き認識モデル504は、分割束520に従って、候補束530を生成し、分割束520内の分割鎖内の各弧(例えば、それぞれの認識単位522、524、526に対応するもの)は、候補束530内で、1つ以上の候補弧(例えば、それぞれが、それぞれの出力文字に対応する、弧532、534、536、538、540)へと拡大される。候補束530内の各候補鎖は、その候補鎖の基底となる分割鎖の、それぞれの分割スコアと、その候補鎖内の出力文字に関連付けられた認識スコアとに従って、スコア化される。 In some embodiments, the handwriting recognition model 504 generates a candidate bundle 530 according to the split bundle 520 and corresponds to each arc in the split chain within the split bundle 520 (e.g., a respective recognition unit 522, 524, 526). ) is expanded into one or more candidate arcs (eg, arcs 532, 534, 536, 538, 540, each corresponding to a respective output character) within candidate bundle 530. Each candidate chain in candidate bundle 530 is scored according to the respective segmentation scores of the segmentation chains on which the candidate chain is based and the recognition scores associated with the output characters within that candidate chain.

一部の実施形態では、手書き認識モデル504が、認識単位の入力画像528から出力文字を生成した後、候補束530は、結果生成モジュール506に渡され、現時点で蓄積されている手書き入力516に関する1つ以上の認識結果が生成される。 In some embodiments, after the handwriting recognition model 504 generates an output character from the input image 528 of the recognition unit, the candidate bundle 530 is passed to the result generation module 506 and is passed to the result generation module 506 to provide information about the currently accumulated handwriting input 516. One or more recognition results are generated.

一部の実施形態では、結果生成モジュール506は、部首クラスタ化モジュール512を利用して、候補鎖内の1つ以上の部首を、複合文字へと組み合わせる。一部の実施形態では、結果生成モジュール506は、1つ以上の言語モデル514を使用して、候補束530内の文字鎖が、その言語モデルによって表される特定の言語での適切な配列であるか否かを判定する。一部の実施形態では、結果生成モジュール506は、候補束530内の、特定の弧を削除するか、又は2つ以上の弧を組み合わせることによって、訂正候補束542を生成する。 In some embodiments, the results generation module 506 utilizes a radical clustering module 512 to combine one or more radicals in the candidate chain into compound characters. In some embodiments, the results generation module 506 uses one or more language models 514 to ensure that the character chains in the candidate bundle 530 are properly arranged in the particular language represented by the language model. Determine whether it exists or not. In some embodiments, the results generation module 506 generates the corrected candidate bundle 542 by removing certain arcs or by combining two or more arcs within the candidate bundle 530.

一部の実施形態では、結果生成モジュール506は、訂正候補束542内に依然として維持されている各文字配列(例えば、文字配列544及び546)に関する統合認識スコアを、部首クラスタ化モジュール512及び言語モデル514によって修正された(例えば、増大又は減少された)、それらの文字配列内の出力文字の認識スコアに基づいて生成する。一部の実施形態では、結果生成モジュール506は、訂正候補束542内に維持されている種々の文字配列を、それらの統合認識スコアに基づいてランク付けする。 In some embodiments, the results generation module 506 calculates the combined recognition score for each character sequence (e.g., character sequences 544 and 546) still maintained in the correction candidate bundle 542 by the radical clustering module 512 and the linguistic Generate based on the recognition scores of output characters within those character arrays as modified (eg, increased or decreased) by model 514. In some embodiments, the results generation module 506 ranks the various character sequences maintained within the correction candidate bundle 542 based on their combined recognition scores.

一部の実施形態では、結果生成モジュール506は、最上ランクの文字配列を、ランク付け認識結果548としてI/Oインタフェースモジュール500に送信して、ユーザに表示する。一部の実施形態では、I/Oインタフェースモジュール500は、受信した認識結果548(例えば、「
」及び「
」)を、手書き入力インタフェースの候補表示区域内に表示する。一部の実施形態では、I/Oインタフェースモジュールは、複数の認識結果(例えば、「
」及び「
」)をユーザに対して表示し、ユーザが、認識結果を選択し、関連するアプリケーションに関するテキスト入力として入力することを可能にする。一部の実施形態では、I/Oインタフェースモジュールは、最上ランクの認識結果(例えば、「
」)を、その認識結果のユーザ確認の、他の入力又は指示に応じて、自動的に入力する。最上ランクの結果の有効な自動入力により、入力インタフェースの効率を改善し、より良好なユーザエクスペリエンスを提供することができる。
In some embodiments, the results generation module 506 sends the top ranked character sequence as a ranked recognition result 548 to the I/O interface module 500 for display to the user. In some embodiments, the I/O interface module 500 receives the received recognition results 548 (e.g., “
"as well as"
") is displayed in the candidate display area of the handwriting input interface. In some embodiments, the I/O interface module provides multiple recognition results (e.g., "
"as well as"
”) to the user, allowing the user to select the recognition results and enter them as text input for the associated application. In some embodiments, the I/O interface module selects the top-ranked recognition result (e.g., "
”) is automatically input in response to other input or instructions for user confirmation of the recognition result. Effective autofilling of top-ranked results can improve the efficiency of the input interface and provide a better user experience.

一部の実施形態では、結果生成モジュール506は、他の因子を使用して、候補鎖の統合認識スコアを変更する。例えば、一部の実施形態では、結果生成モジュール506は、特定のユーザ又は多数のユーザに関する、最も頻繁に使用された文字のログを、任意選択的に維持する。結果生成モジュール506は、特定の候補文字又は文字配列が、最も頻繁に使用された文字又は文字配列のリストの中に見出される場合には、その特定の候補文字又は文字配列の統合認識スコアを、任意選択的に引き上げる。 In some embodiments, the results generation module 506 uses other factors to modify the combined recognition score of the candidate strands. For example, in some embodiments, results generation module 506 optionally maintains a log of the most frequently used characters for a particular user or for a number of users. Results generation module 506 generates an integrated recognition score for a particular candidate character or character sequence if the particular candidate character or character sequence is found in the list of most frequently used characters or character sequences. Optionally raise.

一部の実施形態では、手書き入力モジュール157は、ユーザに表示された認識結果に関する、リアルタイムの更新を提供する。例えば、一部の実施形態では、ユーザによる各追加ストロークに関して、入力処理モジュール502は、任意選択的に、現時点で蓄積されている手書き入力を再分割し、手書き認識モデル504に提供された分割束及び入力画像を訂正する。同様に、手書き認識モデル504は、任意選択的に、結果生成モジュール506に提供された候補束を訂正する。結果として、結果生成モジュール506は、任意選択的に、ユーザに提示された認識結果を更新する。本明細書で使用されるとき、リアルタイム手書き認識とは、手書き認識結果が、即座に、又は短い期間内で(例えば、数十ミリ秒~数秒内で)ユーザに提示される手書き認識を指す。リアルタイム手書き認識は、後に検索するために保存されている記録画像から、現在のユーザセッションの後に一度に実行されるのではなく、認識が直ちに開始されて、手書き入力の受信と実質的に同時に実行されるという点で、(例えば、オフライン光学式文字認識(OCR)アプリケーションにおけるような)オフライン認識とは異なる。更には、オフライン文字認識は、個別のストローク及びストロークの配列に関する、いずれの時間的情報も使用することなく実行されるため、分割は、そのような情報の恩恵を受けることなく実行される。類似した見た目の候補文字間の更なる曖昧性除去もまた、そのような時間的情報の恩恵を受けることがない。 In some embodiments, handwriting input module 157 provides real-time updates regarding the recognition results displayed to the user. For example, in some embodiments, for each additional stroke by the user, the input processing module 502 optionally subdivides the currently accumulated handwriting input into a segmented bundle provided to the handwriting recognition model 504. and correct the input image. Similarly, handwriting recognition model 504 optionally corrects the candidate bundle provided to results generation module 506. As a result, results generation module 506 optionally updates the recognition results presented to the user. As used herein, real-time handwriting recognition refers to handwriting recognition in which handwriting recognition results are presented to the user immediately or within a short period of time (eg, within tens of milliseconds to seconds). Real-time handwriting recognition starts immediately and runs virtually simultaneously with the receipt of handwriting input, rather than all at once after the current user session, from recorded images that are stored for later retrieval. This differs from offline recognition (eg, as in offline optical character recognition (OCR) applications) in that the Furthermore, since offline character recognition is performed without the use of any temporal information regarding individual strokes and stroke sequences, segmentation is performed without the benefit of such information. Further disambiguation between similar-looking candidate characters also does not benefit from such temporal information.

一部の実施形態では、手書き認識モデル504は、畳み込みニューラルネットワーク(CNN)として実装される。図6は、複数の非重複スクリプト内の文字に関する書き込みサンプルを含む、マルチスクリプト訓練コーパス604について訓練される、例示的な畳み込みニューラルネットワーク602を示す。 In some embodiments, handwriting recognition model 504 is implemented as a convolutional neural network (CNN). FIG. 6 shows an example convolutional neural network 602 trained on a multi-script training corpus 604 that includes writing samples for characters in multiple non-overlapping scripts.

図6に示されるように、畳み込みニューラルネットワーク602は、入力面606及び出力面608を含む。入力面606と出力面608との間に、複数の畳み込み層610(例えば、最初の畳み込み層610a、0以上の中間畳み込み層(図示せず)、及び最終畳み込み層610nを含む)が存在する。各畳み込み層610の後に、それぞれのサブサンプリング層612(例えば、最初のサブサンプリング層612a、0以上の中間サブサンプリング層(図示せず)、及び最終サブサンプリング層612n)が続く。これらの畳み込み層及びサブサンプリング層の後、出力面608の直前に、隠れ層614が存在する。隠れ層614は、出力面608の前の最終層である。一部の実施形態では、カーネル層616(例えば、最初のカーネル層616a、0以上の中間カーネル層(図示せず)、及び最終カーネル層612nを含む)が、各畳み込み層610の前に挿入されて、計算効率が向上する。 As shown in FIG. 6, convolutional neural network 602 includes an input surface 606 and an output surface 608. Between the input surface 606 and the output surface 608 are a plurality of convolutional layers 610 (eg, including an initial convolutional layer 610a, zero or more intermediate convolutional layers (not shown), and a final convolutional layer 610n). Each convolutional layer 610 is followed by a respective subsampling layer 612 (eg, a first subsampling layer 612a, zero or more intermediate subsampling layers (not shown), and a final subsampling layer 612n). After these convolutional and subsampling layers, and just before the output surface 608, there is a hidden layer 614. Hidden layer 614 is the final layer before output surface 608. In some embodiments, a kernel layer 616 (e.g., including a first kernel layer 616a, zero or more intermediate kernel layers (not shown), and a final kernel layer 612n) is inserted before each convolutional layer 610. This improves computational efficiency.

図6に示されるように、入力面606は、手書きの認識単位(例えば、手書きの文字又は部首)の入力画像614を受信し、出力面608は、その認識単位が、対応の出力クラス(例えば、ニューラルネットワークが認識するように構成されている出力文字のセット中の特定の文字)に属していることの尤度を示す、確率のセットを出力する。このニューラルネットワークの出力クラスの全体(又は、ニューラルネットワークの出力文字のセット)はまた、その手書き認識モデルのレパートリー又は語彙とも称される。本明細書で説明される畳み込みニューラルネットワークは、数万個の文字のレパートリーを有するように、訓練することができる。 As shown in FIG. 6, the input surface 606 receives the input image 614 of the handwritten recognition unit (eg, handwritten characters or a brainer), and the output surface 608 is a corresponding output class (recognized unit). For example, it outputs a set of probabilities indicating the likelihood of belonging to a particular character in the set of output characters that the neural network is configured to recognize. The entire output class of this neural network (or set of output characters of the neural network) is also referred to as the repertoire or vocabulary of the handwriting recognition model. The convolutional neural networks described herein can be trained to have a repertoire of tens of thousands of characters.

入力画像614が、ニューラルネットワークの種々の層を通過して処理されると、入力画像614内に組み込まれている種々の空間的特徴が、畳み込み層610によって抽出される。各畳み込み層610はまた、特徴マップのセットとも称され、異なる文字に対応する画像を区別するための、入力画像614内の特定の特徴を見つけ出す、フィルタとしての役割を果たす。サブサンプリング層612は、入力画像614から、徐々に増大するスケールで、特徴を捕捉することを確実にする。一部の実施形態では、サブサンプリング層612は、最大値プーリング技術を使用して実装される。この最大値プーリング層は、より大きい局所領域にわたる、位置不変性を生じさせるものであり、先行の畳み込み層の出力画像を、各方向に沿って、Kx及びKy倍でダウンサンプリングする(Kx及びKyは、最大値プーリング矩形のサイズである)。最大値プーリングは、上位の不変特徴を選択することによって、より速い収束速度をもたらし、一般化能力を向上させる。一部の実施形態では、サブサンプリングは、他の方法を使用して達成される。 As the input image 614 is processed through the various layers of the neural network, various spatial features embedded within the input image 614 are extracted by the convolution layer 610. Each convolutional layer 610 is also referred to as a set of feature maps and acts as a filter to find specific features within the input image 614 to distinguish between images corresponding to different characters. Sub-sampling layer 612 ensures that features are captured at increasing scales from input image 614. In some embodiments, subsampling layer 612 is implemented using a max pooling technique. This max pooling layer creates positional invariance over a larger local area and downsamples the output image of the previous convolutional layer by a factor of Kx and Ky along each direction (Kx and Ky is the size of the maximum pooling rectangle). Maximum pooling provides faster convergence speed and improves generalization ability by selecting top invariant features. In some embodiments, subsampling is accomplished using other methods.

一部の実施形態では、畳み込み層610n及びサブサンプリング612nの最終セットの後、出力面608の前に、完全接続層、すなわち、隠れ層614が存在する。完全接続隠れ層614は、最終サブサンプリング層612n内のノードと出力面608内のノードとを完全に接続する、多層パーセプトロンである。隠れ層614は、前の層から受信される出力画像を取得し、ロジスティック回帰を通じて、出力層608内の出力文字のうちの1つに到達する。 In some embodiments, after the final set of convolutional layers 610n and subsampling 612n, there is a fully connected layer, or hidden layer 614, before the output surface 608. Fully connected hidden layer 614 is a multilayer perceptron that fully connects nodes in final subsampling layer 612n and nodes in output surface 608. Hidden layer 614 takes the output image received from the previous layer and arrives at one of the output characters in output layer 608 through logistic regression.

畳み込みニューラルネットワーク602の訓練の間に、畳み込み層610内の特徴、及びそれらの特徴に関連付けられるそれぞれの重み、並びに隠れ層614内のパラメータに関連付けられる重みは、訓練コーパス604内の既知の出力クラスを有する書き込みサンプルに関して、分類エラーが最小限に抑えられるように、調整される。畳み込みニューラルネットワーク602が訓練され、パラメータ及び関連する重みの最適なセットが、そのネットワーク内の種々の層に関して確立されると、その畳み込みニューラルネットワーク602を使用して、ユーザから受信されたリアルタイム手書き入力に基づいて生成される入力画像などの、訓練コーパス604の一部ではない新たな書き込みサンプル618を、認識することができる。 During training of the convolutional neural network 602, the features in the convolutional layer 610 and the respective weights associated with those features, as well as the weights associated with the parameters in the hidden layer 614, are assigned to the known output classes in the training corpus 604. is adjusted such that the classification error is minimized for written samples with . Once the convolutional neural network 602 has been trained and optimal sets of parameters and associated weights have been established for the various layers within the network, the convolutional neural network 602 can be used to calculate real-time handwriting input received from a user. New writing samples 618 that are not part of the training corpus 604 can be recognized, such as input images generated based on the training corpus 604 .

本明細書で説明されるように、手書き入力インタフェースの畳み込みニューラルネットワークは、マルチスクリプト訓練コーパスを使用して訓練されて、マルチスクリプト又は混合スクリプト手書き認識を可能にする。一部の実施形態では、畳み込みニューラルネットワークは、3万~6万超の文字の(例えば、全ての文字がUnicode規格によって符号化されている)幅広いレパートリーを認識するように訓練される。殆どの最新式の手書き認識システムは、ストローク順序依存式の隠れマルコフ法(HMM)に基づく。更には、殆どの既存の手書き認識モデルは、言語固有のものであり、数十個の文字(例えば、英語のアルファベット、ギリシャ語のアルファベット、全10個の数字などの文字)の小さいレパートリーから、最大数千個の文字(例えば、最も一般的に使用される中国文字のセット)を含む。それゆえ、本明細書で説明される汎用認識部は、殆どの既存のシステムよりも数桁多い文字を取り扱うことができる。 As described herein, the convolutional neural network of the handwriting input interface is trained using a multi-script training corpus to enable multi-script or mixed-script handwriting recognition. In some embodiments, the convolutional neural network is trained to recognize a wide repertoire of 30,000 to over 60,000 characters (eg, all characters encoded according to the Unicode standard). Most state-of-the-art handwriting recognition systems are based on stroke order-dependent hidden Markov methods (HMMs). Moreover, most existing handwriting recognition models are language-specific and can only be used from a small repertoire of a few dozen characters (e.g., the English alphabet, the Greek alphabet, all 10 numbers, etc.). Contains up to several thousand characters (e.g., the most commonly used set of Chinese characters). Therefore, the general purpose recognizer described herein can handle several orders of magnitude more characters than most existing systems.

一部の従来の手書きシステムは、それぞれが特定の言語又は文字の小セットに関して適合された、幾つかの個別に訓練された手書き認識モデルを含み得る。書き込みサンプルは、分類することが可能となるまでは、種々の認識モデルを通って伝播される。例えば、手書きサンプルは、一連の連結された言語固有又はスクリプト固有の文字認識モデルに提供することができ、その手書きサンプルは、最初の認識モデルによって確証的に分類することができない場合には、次の認識モデルに提供され、この次の認識モデルが、それ自体のレパートリー内に、その手書きサンプルを分類することを試みる。この分類のための手法は、時間がかかり、採用する必要がある認識モデルが追加されるごとに、メモリ要件が急速に増大する。 Some conventional handwriting systems may include several individually trained handwriting recognition models, each tailored for a particular language or small set of characters. The writing samples are propagated through various recognition models until they can be classified. For example, a handwriting sample can be provided to a series of concatenated language-specific or script-specific character recognition models, and if the handwriting sample cannot be conclusively classified by the first recognition model, then The next recognition model attempts to classify the handwriting sample within its own repertoire. This approach to classification is time consuming and the memory requirements increase rapidly with each additional recognition model that needs to be employed.

他の最新式モデルは、ユーザが、好ましい言語を指定することを必要とするものであり、その選択された手書き認識モデルを使用して、現在の入力を分類する。そのような実装は、使用することが煩雑であり、著しくメモリを消費するばかりではなく、混合言語入力を認識するために使用することもできない。混合言語又は混合スクリプトの入力の途中で、言語設定を切り替えることが、ユーザに必要となることは、実際的ではない。 Other state-of-the-art models require the user to specify a preferred language and use the selected handwriting recognition model to classify the current input. Such implementations are cumbersome to use, consume significant memory, and cannot be used to recognize mixed language input. It is impractical to require a user to switch language settings in the middle of inputting mixed languages or mixed scripts.

本明細書で説明されるマルチスクリプト又は汎用認識部は、従来の認識システムに関する、上記の問題のうちの少なくとも一部に対処する。図7は、大規模なマルチスクリプト訓練コーパスを使用して、手書き認識モジュール(例えば、畳み込みニューラルネットワーク)を訓練して、その手書き認識モジュールを、ユーザの手書き入力に関するリアルタイムのマルチ言語及びマルチスクリプト手書き認識を提供するために、その後に使用することができるようにするための、例示的プロセス700の流れ図である。 The multi-script or universal recognizer described herein addresses at least some of the above problems with conventional recognition systems. FIG. 7 shows how a large-scale multi-script training corpus is used to train a handwriting recognition module (e.g., a convolutional neural network) to perform real-time multi-language and multi-script handwriting on a user's handwriting input. 7 is a flow diagram of an example process 700 for subsequent use to provide recognition.

一部の実施形態では、手書き認識モデルの訓練は、サーバデバイス上で実行され、次いで、その訓練された手書き認識モデルが、ユーザデバイスに提供される。この手書き認識モデルは、任意選択的に、サーバからの更なる支援を必要とすることなく、ユーザデバイス上で、リアルタイム手書き認識をローカルで実行する。一部の実施形態では、同じデバイス上に、訓練及び認識の双方が提供される。例えば、サーバデバイスは、ユーザデバイスからユーザの手書き入力を受信し、手書き認識を実行し、その認識結果をリアルタイムでユーザデバイスに送信することができる。 In some embodiments, training of the handwriting recognition model is performed on the server device and then the trained handwriting recognition model is provided to the user device. This handwriting recognition model optionally performs real-time handwriting recognition locally on the user device without requiring further assistance from a server. In some embodiments, both training and recognition are provided on the same device. For example, a server device can receive a user's handwriting input from a user device, perform handwriting recognition, and send the recognition results to the user device in real time.

例示的プロセス700では、1つ以上のプロセッサ及びメモリを有するデバイスで、デバイスは、マルチスクリプト訓練コーパスの空間的に導出される特徴(例えば、ストローク順序非依存式特徴)に基づいて、マルチスクリプト手書き認識モデルを訓練する(702)。一部の実施形態では、マルチスクリプト訓練コーパスの空間的に導出される特徴は、ストローク順序非依存式及びストローク方向非依存式である(704)。一部の実施形態では、マルチスクリプト手書き認識モデルの訓練は、手書きサンプル内のそれぞれのストロークに関連付けられる時間的情報とは無関係である(706)。具体的には、手書きサンプルの画像は、既定のサイズに正規化され、それらの画像は、その画像を形成するために個別のストロークが入力される順序についての、いかなる情報も含まない。更には、それらの画像はまた、その画像を形成するために個別のストロークが入力される方向についての、いかなる情報も含まない。実際に、訓練の間は、個別のストロークによって、どのように画像が時間的に形成されるかには関係なく、それらの手書き画像から特徴が抽出される。それゆえ、認識の間は、個別のストロークに関連する時間的情報は必要とされない。結果として、その認識は、手書き入力内での、遅延した順序外のストローク、及び恣意的なストローク方向にもかかわらず、一貫した認識結果を頑健に提供する。 In the example process 700, a device having one or more processors and memory performs a multi-script handwriting process based on spatially derived features (e.g., stroke-order independent features) of a multi-script training corpus. A recognition model is trained (702). In some embodiments, the spatially derived features of the multi-script training corpus are stroke order independent and stroke direction independent (704). In some embodiments, training of the multi-script handwriting recognition model is independent of temporal information associated with each stroke within the handwriting samples (706). Specifically, images of handwriting samples are normalized to a predetermined size, and the images do not contain any information about the order in which individual strokes are entered to form the image. Moreover, the images also do not contain any information about the direction in which the individual strokes are input to form the image. In fact, during training, features are extracted from handwritten images regardless of how the images are formed in time by individual strokes. Therefore, no temporal information related to individual strokes is required during recognition. As a result, the recognition robustly provides consistent recognition results despite delayed, out-of-order strokes, and arbitrary stroke directions within the handwritten input.

一部の実施形態では、マルチスクリプト訓練コーパスは、少なくとも3つの非重複スクリプトの文字に対応する、手書きサンプルを含む。図6に示されるように、マルチスクリプト訓練コーパスは、多くのユーザから収集された手書きサンプルを含む。各手書きサンプルは、手書き認識モデルに表される、それぞれのスクリプトの1つの文字に対応する。手書き認識モデルを適切に訓練するために、訓練コーパスは、手書き認識モデル内に表されるスクリプトの各文字に関して、多数の書き込みサンプルを含む。 In some embodiments, the multi-script training corpus includes handwriting samples corresponding to characters of at least three non-overlapping scripts. As shown in Figure 6, the multi-script training corpus includes handwriting samples collected from many users. Each handwriting sample corresponds to one character of the respective script represented in the handwriting recognition model. In order to properly train the handwriting recognition model, the training corpus contains a large number of writing samples for each character of the script represented within the handwriting recognition model.

一部の実施形態では、少なくとも3つの非重複スクリプトは、中国文字、絵文字、及びラテンスクリプトを含む(708)。一部の実施形態では、マルチスクリプト手書き認識モデルは、少なくとも3つの非重複スクリプトにわたる3万個の文字を表す、少なくとも3万個の出力クラスを有する(710)。 In some embodiments, the at least three non-overlapping scripts include Chinese characters, emoji, and Latin script (708). In some embodiments, the multi-script handwriting recognition model has at least 30,000 output classes representing 30,000 characters across at least three non-overlapping scripts (710).

一部の実施形態では、マルチスクリプト訓練コーパスは、Unicode規格で符号化されている全ての中国文字(例えば、全てのCJK(中国語-日本語-韓国語)統合漢字の、全て又は実質的な部分)の各文字に関する、それぞれの書き込みサンプルを含む。Unicode規格は、合計で約7万4千個のCJK統合漢字を定義する。CJK統合漢字の基本ブロック(4E00-9FFF)は、中国語、並びに日本語、韓国語、及びベトナム語で使用される、20,941個の基本中国文字を含む。一部の実施形態では、マルチスクリプト訓練コーパスは、CJK統合漢字の基本ブロック中の全ての文字に関する、書き込みサンプルを含む。一部の実施形態では、マルチスクリプト訓練コーパスは、1つ以上の複合中国文字を構造的に構成するために使用することが可能なCJK部首に関する、書き込みサンプルを更に含む。一部の実施形態では、マルチスクリプト訓練コーパスは、CJK統合漢字拡張のうちの1つ以上で符号化されている中国文字などの、より使用頻度が低い中国文字に関する、書き込みサンプルを更に含む。 In some embodiments, the multi-script training corpus includes all or a substantial portion of all Chinese characters encoded in the Unicode standard (e.g., all CJK (Chinese-Japanese-Korean) integrated Chinese characters). Contains a respective writing sample for each character in the section). The Unicode standard defines a total of approximately 74,000 CJK unified kanji. The CJK Integrated Kanji Basic Block (4E00-9FFF) includes 20,941 basic Chinese characters used in Chinese, as well as Japanese, Korean, and Vietnamese. In some embodiments, the multi-script training corpus includes writing samples for all characters in the basic block of CJK unified Kanji. In some embodiments, the multi-script training corpus further includes writing samples for CJK radicals that can be used to structurally compose one or more compound Chinese characters. In some embodiments, the multi-script training corpus further includes writing samples for less frequently used Chinese characters, such as Chinese characters encoded with one or more of the CJK unified Chinese character extensions.

一部の実施形態では、マルチスクリプト訓練コーパスは、Unicode規格によって符号化されているラテンスクリプト中の全ての文字の各文字に関する、それぞれの書き込みサンプルを更に含む。基本ラテンスクリプト中の文字は、ラテン大文字及びラテン小文字、並びに、標準的なラテンキーボード上で一般的に使用される、基本記号及び数字を含む。一部の実施形態では、マルチスクリプト訓練コーパスは、拡張ラテンスクリプト中の文字(例えば、基本ラテン文字の様々な強調形態)を更に含む。 In some embodiments, the multi-script training corpus further includes a respective writing sample for each character of all characters in the Latin script encoded by the Unicode standard. Characters in the basic Latin script include Latin uppercase and Latin lowercase letters, as well as basic symbols and numbers commonly used on standard Latin keyboards. In some embodiments, the multi-script training corpus further includes characters in the extended Latin script (eg, various emphasized forms of the basic Latin script).

一部の実施形態では、マルチスクリプト訓練コーパスは、いずれの自然人間言語にも関連付けられない、人工的スクリプトの各文字に対応する、書き込みサンプルを含む。例えば、一部の実施形態では、絵文字のセットが、任意選択的に、絵文字スクリプト中に定義され、それらの絵文字のそれぞれに対応する書き込みサンプルが、マルチスクリプト訓練コーパス内に含まれる。例えば、手描きのハート形記号は、訓練コーパス内の絵文字「
」に関する手書きサンプルである。同様に、手描きの笑顔(例えば、上を向いた弧の上方の2つの点)は、訓練コーパス内の絵文字「
」に関する手書きサンプルである。他の絵文字としては、種々の感情(例えば、歓喜、悲哀、怒り、当惑、驚愕、笑い、泣き、苛立ちなど)、種々の物体及びキャラクタ(例えば、猫、犬、ウサギ、心臓、果物、目、唇、贈り物、花、ろうそく、月、星など)、及び種々の行為(例えば、握手、キス、走る、踊る、跳び上がる、眠る、食べる、会う、愛する、好む、投票するなど)などを示すアイコンのカテゴリが挙げられる。一部の実施形態では、絵文字に対応する手書きサンプル内のストロークは、対応する絵文字を形成する実際の線の、単純化及び/又は様式化された線である。一部の実施形態では、各デバイス又はアプリケーションは、同じ絵文字に関して、異なるデザインを使用することができる。例えば、女性のユーザに提示される笑顔の絵文字は、男性のユーザに提示される笑顔の絵文字とは、それらの2人のユーザから受信される手書き入力が実質的に同じ場合であっても、異なるものとすることができる。
In some embodiments, the multi-script training corpus includes writing samples corresponding to each character of the artificial script that is not associated with any natural human language. For example, in some embodiments, a set of emojis is optionally defined in an emoji script, and writing samples corresponding to each of those emojis are included in a multi-script training corpus. For example, the hand-drawn heart symbol is the emoji in the training corpus.
This is a handwritten sample regarding ``. Similarly, a hand-drawn smile (e.g., two points above an upturned arc) is the emoji in the training corpus.
This is a handwritten sample regarding ``. Other emojis include various emotions (e.g., joy, sadness, anger, embarrassment, surprise, laughter, crying, irritation, etc.), various objects and characters (e.g., cat, dog, rabbit, heart, fruit, eyes, icons representing various actions (e.g., shaking hands, kissing, running, dancing, jumping, sleeping, eating, meeting, loving, liking, voting, etc.) There are several categories. In some embodiments, the strokes in the handwriting sample that correspond to glyphs are simplified and/or stylized lines of the actual lines that form the corresponding glyph. In some embodiments, each device or application may use different designs for the same emoji. For example, a smiling emoji presented to a female user may be different from a smiling emoji presented to a male user, even if the handwritten input received from those two users is substantially the same. It can be different.

一部の実施形態では、マルチスクリプト訓練コーパスはまた、ギリシャ語スクリプト(例えば、ギリシャ文字及び記号を含む)、キリル文字スクリプト、ヘブライ語スクリプト、及びUnicode規格に従って符号化されている1つ以上の他のスクリプトなどの、他のスクリプト中の文字に関する書き込みサンプルも含む。一部の実施形態では、マルチスクリプト訓練コーパス内に含まれる、少なくとも3つの非重複スクリプトは、中国文字、絵文字、及びラテンスクリプト中の文字を含む。中国文字、絵文字、及びラテンスクリプト中の文字は、本来、非重複スクリプトである。多くの他のスクリプトは、少なくとも一部の文字に関して、互いに重複する場合がある。例えば、ラテンスクリプト中の一部の文字(例えば、A、Z)は、多くの他のスクリプト(例えば、ギリシャ語、及びキリル文字)中に見出すことができる。一部の実施形態では、マルチスクリプト訓練コーパスは、中国文字、アラビア語スクリプト、及びラテンスクリプトを含む。一部の実施形態では、マルチスクリプト訓練コーパスは、重複スクリプト及び/又は非重複スクリプトの、他の組み合わせを含む。一部の実施形態では、マルチスクリプト訓練コーパスは、Unicode規格によって符号化されている全ての文字に関する、書き込みサンプルを含む。 In some embodiments, the multi-script training corpus also includes Greek script (e.g., includes Greek letters and symbols), Cyrillic script, Hebrew script, and one or more others encoded according to the Unicode standard. It also includes writing samples for characters in other scripts, such as the script. In some embodiments, the at least three non-redundant scripts included in the multi-script training corpus include Chinese characters, emojis, and characters in Latin script. Chinese characters, pictograms, and characters in Latin script are inherently non-overlapping scripts. Many other scripts may overlap each other, at least with respect to some characters. For example, some characters in Latin script (eg, A, Z) can be found in many other scripts (eg, Greek, and Cyrillic). In some embodiments, the multi-script training corpus includes Chinese scripts, Arabic scripts, and Latin scripts. In some embodiments, the multi-script training corpus includes other combinations of overlapping and/or non-overlapping scripts. In some embodiments, the multiscript training corpus includes writing samples for all characters encoded by the Unicode standard.

図7に示されるように、一部の実施形態では、マルチスクリプト手書き認識モデルを訓練するために、デバイスは、単一の入力面及び単一の出力面を有する、単一の畳み込みニューラルネットワークに、マルチスクリプト訓練コーパスの手書きサンプルを提供する(712)。デバイスは、マルチスクリプト訓練コーパス内に表される、少なくとも3つの非重複スクリプトの文字を区別するための、それらの手書きサンプルの空間的に導出される特徴(例えば、ストローク順序非依存式特徴)、及びそれらの空間的に導出される特徴に関するそれぞれの重みを、畳み込みニューラルネットワークを使用して判定する(714)。このマルチスクリプト手書き認識モデルは、単一の入力面及び単一の出力面を有する、単一の手書き認識モデルが、マルチスクリプト訓練コーパス内の全てのサンプルを使用して訓練されるという点で、従来のマルチスクリプト手書き認識モデルとは異なる。単一の畳み込みニューラルネットワークは、訓練コーパスの小さいサブセットをそれぞれが取り扱う、個別のサブネットワーク(例えば、それぞれが、特定の言語内で使用される特定のスクリプト又は文字に関して訓練される、サブネットワーク)に依存することなく、マルチスクリプト訓練コーパス内に表される全ての文字を識別するように訓練される。更には、この単一の畳み込みニューラルネットワークは、ラテンスクリプト及びギリシャ語スクリプトなどの(例えば、重複文字A、B、E、Zなどを有する)少数の重複スクリプトの文字ではなく、複数の非重複スクリプトにわたる多数の文字を識別するように訓練される。 As shown in FIG. 7, in some embodiments, to train a multi-script handwriting recognition model, the device combines a single convolutional neural network with a single input surface and a single output surface. , provides handwriting samples of the multi-script training corpus (712). The device comprises spatially derived features (e.g., stroke order independent features) of handwriting samples for distinguishing between characters of at least three non-overlapping scripts represented in a multi-script training corpus; and respective weights for the spatially derived features are determined using a convolutional neural network (714). This multi-script handwriting recognition model has a single input surface and a single output surface, in that a single handwriting recognition model is trained using all the samples in the multi-script training corpus. This is different from traditional multi-script handwriting recognition models. A single convolutional neural network is divided into separate subnetworks, each handling a small subset of the training corpus (e.g., each trained on a particular script or character used within a particular language). It is trained to identify all characters represented in the multi-script training corpus, independently. Furthermore, this single convolutional neural network can handle characters from multiple non-overlapping scripts, rather than characters from a small number of overlapping scripts (e.g., with overlapping characters A, B, E, Z, etc.), such as Latin and Greek scripts. trained to identify a large number of characters over a range of characters.

一部の実施形態では、デバイスは、マルチスクリプト訓練コーパスの空間的に導出される特徴について訓練されている、マルチスクリプト手書き認識モデルを使用して、ユーザの手書き入力に関するリアルタイム手書き認識を提供する(716)。一部の実施形態では、ユーザの手書き入力に関するリアルタイム手書き認識を提供することは、ユーザが、手書き入力の追加及び訂正を継続して提供する際に、そのユーザの手書き入力に関する認識出力を、継続的に訂正することを含む。一部の実施形態では、ユーザの手書き入力に関するリアルタイム手書き認識を提供することは、マルチスクリプト手書き認識モデルを、ユーザデバイスに提供することを更に含み(718)、ユーザデバイスは、ユーザから手書き入力を受信し、そのマルチスクリプト手書き認識モデルに基づいて、手書き入力に対して手書き認識をローカルで実行する。 In some embodiments, the device provides real-time handwriting recognition for the user's handwriting input using a multi-script handwriting recognition model that is trained on spatially derived features of a multi-script training corpus ( 716). In some embodiments, providing real-time handwriting recognition for a user's handwriting input includes continuously providing recognition output for the user's handwriting input as the user continues to provide additions and corrections to the handwriting input. This includes making corrections. In some embodiments, providing real-time handwriting recognition for the user's handwriting input further includes providing a multi-script handwriting recognition model to the user device (718), the user device receiving handwriting input from the user. and locally perform handwriting recognition on the handwritten input based on the multi-script handwriting recognition model.

一部の実施形態では、デバイスは、それぞれの入力言語に重複が存在しない複数のデバイスに、マルチスクリプト手書き認識モデルを提供し、そのマルチスクリプト手書き認識モデルは、それらの各ユーザデバイスに関連付けられる、異なる言語の手書き認識に関して、それらの複数のデバイスのそれぞれで使用される。例えば、マルチスクリプト手書き認識モデルが、多くの異なるスクリプト及び言語での文字を認識するように訓練されている場合、その同じ手書き認識モデルを世界中で使用して、それらの入力言語のうちのいずれかに関する、手書き入力を提供することができる。英語及びヘブライ語で入力することのみを望むユーザ用の第1のデバイスは、中国語及び絵文字で入力することのみを望むユーザ用の第2のデバイスと同じ手書き認識モデルを使用して、手書き入力の機能性を提供することができる。第1のデバイスのユーザが、英語の手書き入力キーボード(例えば、英語固有の手書き認識モデルで実装されるもの)、及び別個のヘブライ語の手書き入力キーボード(例えば、ヘブライ語固有の手書き認識モデルで実装されるもの)を、別個にインストールすることを必要とする代わりに、同じ汎用マルチスクリプト手書き認識モデルを、第1のデバイス上に一旦インストールすると、英語、ヘブライ語の双方に関する手書き入力機能、並びに双方の言語での混合入力を提供するために使用することができる。更には、第2のユーザが、中国語の手書き入力キーボード(例えば、中国語固有の手書き認識モデルで実装されるもの)、及び別個の絵文字の手書き入力キーボード(例えば、絵文字の手書き認識モデルで実装されるもの)をインストールすることを必要とする代わりに、同じ汎用マルチスクリプト手書き認識モデルを、第2のデバイス上に一旦インストールすると、中国語、絵文字の双方に関する手書き入力機能、並びに双方のスクリプトでの混合入力を提供するために使用することができる。同じマルチスクリプト手書きモデルを使用して、複数のスクリプトにわたる幅広いレパートリー(例えば、100に近い異なるスクリプトで符号化されている文字の実質的な部分又は全て)を取り扱うことにより、デバイスの供給元及びユーザに対して実質的な負担を課すことなく、その認識部の有用性が向上する。 In some embodiments, the device provides a multi-script handwriting recognition model to the plurality of devices for which there is no overlap in their respective input languages, and the multi-script handwriting recognition model is associated with each of those user devices. used in each of those multiple devices for handwriting recognition in different languages. For example, if a multi-script handwriting recognition model is trained to recognize characters in many different scripts and languages, that same handwriting recognition model can be used around the world to recognize characters in many different scripts and languages. It is possible to provide handwritten input regarding information. A first device for users who only want to type in English and Hebrew can perform handwriting input using the same handwriting recognition model as a second device for users who only want to type in Chinese and emojis. functionality. A user of the first device has an English handwriting input keyboard (e.g., one implemented with an English-specific handwriting recognition model) and a separate Hebrew handwriting input keyboard (e.g., one implemented with a Hebrew-specific handwriting recognition model). Once installed on the first device, the same generic multi-script handwriting recognition model provides handwriting input functionality for both English and Hebrew, as well as can be used to provide mixed input in multiple languages. Additionally, the second user may have a Chinese handwriting input keyboard (e.g., one implemented with a Chinese-specific handwriting recognition model) and a separate emoji handwriting input keyboard (e.g., one implemented with an emoji handwriting recognition model). Once installed on the second device, the same generic multi-script handwriting recognition model provides handwriting input functionality for both Chinese and emoji, as well as both scripts. can be used to provide mixed input. By using the same multi-script handwriting model to handle a wide repertoire across multiple scripts (e.g., a substantial portion or all of the characters encoded in close to 100 different scripts), device suppliers and users The usefulness of the recognizer is increased without imposing any substantial burden on the user.

大規模なマルチスクリプト訓練コーパスを使用する、マルチスクリプト手書き認識モデルの訓練は、従来のHMMに基づく手書き認識システムとは異なるものであり、文字の個別のストロークに関連付けられる時間的情報には依存しない。更には、このマルチスクリプト認識システムに関するリソース及びメモリ要件は、そのマルチスクリプト認識システムの適用範囲となる記号及び言語の増加に比例して増大するものではない。例えば、従来の手書きシステムでは、言語の数の増加は、独立して訓練された別のモデルを追加することを意味し、メモリ要件は、その手書き認識システムの増大する能力に適応するために、少なくとも倍増されることになる。対照的に、マルチスクリプトモデルが、マルチスクリプト訓練コーパスによって訓練される場合、言語の適用範囲を増大させることは、更なる手書きサンプルを使用して、その手書き認識モデルを再訓練することを必要とし、出力面のサイズを増大させるが、その増大の量は極めて穏やかである。マルチスクリプト訓練コーパスが、n個の異なる言語に対応する手書きサンプルを含み、マルチスクリプト手書き認識モデルが、サイズmのメモリを占有し、言語の適用範囲をN個(N>n)の言語に増加させる場合、デバイスが、第2のマルチスクリプト訓練コーパスの空間的に導出される特徴に基づいて、マルチスクリプト手書き認識モデルを再訓練し、この第2のマルチスクリプト訓練コーパスが、N個の異なる言語に対応する第2の手書きサンプルを含むと想定する。N/nの変化が1~100である場合に、M/mの変化は、1~2の範囲内で、実質的に一定のまま維持される。マルチスクリプト手書き認識モデルが再訓練された後、デバイスは、その再訓練されたマルチスクリプト手書き認識モデルを使用して、ユーザの手書き入力に関するリアルタイム手書き認識を提供することができる。 Training a multi-script handwriting recognition model using a large multi-script training corpus is different from traditional HMM-based handwriting recognition systems and does not rely on temporal information associated with individual strokes of a character. . Furthermore, the resource and memory requirements for the multi-script recognition system do not increase proportionately as the number of symbols and languages covered by the multi-script recognition system increases. For example, in a traditional handwriting system, an increase in the number of languages means adding another independently trained model, and memory requirements increase to adapt to the increasing capabilities of that handwriting recognition system. It will be at least doubled. In contrast, if a multiscript model is trained with a multiscript training corpus, increasing language coverage requires retraining the handwriting recognition model using additional handwriting samples. , increases the size of the output surface, but the amount of increase is very modest. The multi-script training corpus contains handwriting samples corresponding to n different languages, the multi-script handwriting recognition model occupies memory of size m, and increases the language coverage to N (N>n) languages. If the device retrains the multi-script handwriting recognition model based on the spatially derived features of a second multi-script training corpus, the device retrains the multi-script handwriting recognition model based on the spatially derived features of a second multi-script training corpus, , and a second handwriting sample corresponding to . When the change in N/n is between 1 and 100, the change in M/m remains substantially constant within the range of 1 and 2. After the multi-script handwriting recognition model is retrained, the device can use the retrained multi-script handwriting recognition model to provide real-time handwriting recognition for the user's handwriting input.

図8A、図8Bは、ポータブルユーザデバイス(例えば、デバイス100)上に、リアルタイムのマルチスクリプト手書き認識及び入力を提供するための、例示的ユーザインタフェースを示す。図8A及び図8Bでは、手書き入力インタフェース802が、ユーザデバイスのタッチ感知ディスプレイスクリーン(例えば、タッチスクリーン112)上に表示されている。手書き入力インタフェース802は、手書き入力区域804、候補表示区域806、及びテキスト入力区域808を含む。一部の実施形態では、手書き入力インタフェース802は、複数の制御要素を更に含み、それぞれを呼び出して、手書き入力インタフェースに、既定の機能を実行させることができる。図8Aに示されるように、手書き入力インタフェース内には、削除ボタン、スペースボタン、復帰改行即ちEnterボタン、キーボード切り替えボタンが含まれる。他の制御要素も可能であり、手書き入力インタフェース802を利用する、それぞれの異なるアプリケーションに適合するように、任意選択的に、手書き入力インタフェース内に提供することができる。手書き入力インタフェース802の種々の構成要素のレイアウトは、単なる例示に過ぎず、異なるデバイス及び異なるアプリケーションによって変化し得る。 8A and 8B illustrate example user interfaces for providing real-time multi-script handwriting recognition and input on a portable user device (eg, device 100). 8A and 8B, a handwriting input interface 802 is displayed on a touch-sensitive display screen (eg, touch screen 112) of a user device. Handwriting input interface 802 includes a handwriting input area 804 , a candidate display area 806 , and a text input area 808 . In some embodiments, the handwriting input interface 802 further includes a plurality of control elements, each of which can be called to cause the handwriting input interface to perform a predetermined function. As shown in FIG. 8A, the handwriting input interface includes a delete button, a space button, a carriage return or enter button, and a keyboard toggle button. Other control elements are also possible and can optionally be provided within the handwriting input interface to suit each different application that utilizes the handwriting input interface 802. The layout of the various components of handwriting input interface 802 is merely exemplary and may vary with different devices and different applications.

一部の実施形態では、手書き入力区域804は、ユーザから手書き入力を受信するための、タッチ感知区域である。手書き入力区域804内のタッチスクリーン上での持続的接触、及びその関連する動きの経路が、手書きストロークとして登録される。一部の実施形態では、デバイスによって登録された手書きストロークは、手書き入力区域804内に、その持続的接触によってトレースされた同じ場所で視覚的にレンダリングされる。図8Aに示されるように、ユーザは、手書き入力区域804内に、幾つかの手書き中国文字(例えば、「
」)、幾つかの手書き英語文字(例えば、「Happy」)、及び手描きの絵文字(例えば、笑顔)を含む、幾つもの手書きストロークを提供している。これらの手書き文字は、手書き入力区域804内の複数の行(例えば、2つの行)内に分布されている。
In some embodiments, handwriting input area 804 is a touch sensitive area for receiving handwriting input from a user. A sustained contact on the touch screen within the handwriting input area 804 and its associated path of movement is registered as a handwritten stroke. In some embodiments, the handwritten strokes registered by the device are visually rendered within the handwriting input area 804 at the same location traced by the sustained touch. As shown in FIG. 8A, the user enters some handwritten Chinese characters (e.g., "
''), some handwritten English characters (e.g., "Happy"), and hand-drawn emojis (e.g., a smiley face). These handwritten characters are distributed within multiple lines (eg, two lines) within handwriting input area 804.

一部の実施形態では、候補表示区域806は、手書き入力区域804内に現時点で蓄積されている手書き入力に関する、1つ以上の認識結果(例えば、810及び812)を表示する。一般的に、最上ランクの認識結果(例えば、810)が、候補表示区域内の第1の位置に表示される。図8Aに示されるように、本明細書で説明される手書き認識モデルは、中国文字、ラテンスクリプト、及び絵文字を含めた、複数の非重複スクリプトの文字を認識することが可能であるため、この認識モデルによって提供される認識結果(例えば、810)は、手書き入力によって表された中国文字、英語文字、及び絵文字を、正確に含む。ユーザは、認識言語を選択又は切り替えるために、入力の書き込みの途中で中断することが必要とされない。 In some embodiments, candidate display area 806 displays one or more recognition results (eg, 810 and 812) for the handwriting input currently stored within handwriting input area 804. Generally, the highest ranking recognition result (eg, 810) is displayed in the first position within the candidate display area. As shown in Figure 8A, the handwriting recognition model described herein is capable of recognizing characters from multiple non-overlapping scripts, including Chinese characters, Latin scripts, and emojis; The recognition results (eg, 810) provided by the recognition model accurately include Chinese characters, English characters, and emojis represented by handwritten input. The user is not required to interrupt writing input in order to select or switch recognition languages.

一部の実施形態では、テキスト入力区域808は、この手書き入力インタフェースを採用しているそれぞれのアプリケーションに提供される、テキスト入力を表示する区域である。図8Aに示されるように、テキスト入力区域808は、メモアプリケーションによって使用され、テキスト入力区域808内に現在示されているテキスト(例えば、「America
」)は、メモアプリケーションに既に提供されたテキスト入力である。一部の実施形態では、カーソル813が、テキスト入力区域808内での、現在のテキスト入力位置を示す。
In some embodiments, text input area 808 is an area for displaying text input provided to each application employing this handwriting input interface. As shown in FIG. 8A, text entry area 808 is used by the notes application to include the text currently shown within text entry area 808 (e.g., "America
”) is a text input already provided to the Notes application. In some embodiments, cursor 813 indicates the current text entry position within text entry area 808.

一部の実施形態では、ユーザは、例えば、明示的な選択入力(例えば、表示された認識結果のうちの1つの上でのタップジェスチャ)、又は暗黙的な確認入力(例えば、「Enter」ボタン上でのタップジェスチャ、又は手書き入力区域内でのダブルタップジェスチャ)によって、候補表示区域806内に表示された特定の認識結果を選択することができる。図8Bに示されるように、ユーザは、(図8Aでの、認識結果810の上での接触814によって示されるような)タップジェスチャを使用して、最上ランクの認識結果810を、明示的に選択している。この選択入力に応じて、テキスト入力区域808内の、カーソル813によって示される挿入ポイントに、認識結果810のテキストが挿入される。図8Bに示されるように、選択された認識結果810のテキストが、テキスト入力区域808内に入力されると、手書き入力区域804及び候補表示区域806は、双方ともクリアされる。この時点で、手書き入力区域804は、新たな手書き入力を受け入れる準備が整い、候補表示区域806は、この時点で、その新たな手書き入力に関する認識結果を表示するために使用することが可能となる。一部の実施形態では、暗黙的確認入力は、ユーザが中断して最上ランクの認識結果を選択することを必要とせずに、テキスト入力区域808内に、最上ランクの認識結果を入力させる。優れた設計の暗黙的確認入力により、テキスト入力速度が向上し、テキスト構成の間の、ユーザに強いられる認知負担が軽減される。 In some embodiments, the user may, for example, make an explicit selection input (e.g., a tap gesture on one of the displayed recognition results) or an implicit confirmation input (e.g., an "Enter" button). a tap gesture above or a double tap gesture within the handwriting input area) can select a particular recognition result displayed within the candidate display area 806. As shown in FIG. 8B, the user explicitly selects the top-ranked recognition result 810 using a tap gesture (as indicated by the contact 814 on the recognition result 810 in FIG. 8A). Selected. In response to this selection input, the text of the recognition result 810 is inserted into the text input area 808 at the insertion point indicated by the cursor 813. As shown in FIG. 8B, when the text of the selected recognition result 810 is entered into the text input area 808, the handwriting input area 804 and the candidate display area 806 are both cleared. At this point, the handwriting input area 804 is ready to accept new handwriting input, and the candidate display area 806 can now be used to display recognition results for the new handwriting input. . In some embodiments, the implicit confirmation input causes the top-ranked recognition result to be entered into the text entry area 808 without requiring the user to interrupt and select the top-ranked recognition result. Well-designed implicit confirmation input speeds up text entry and reduces the cognitive burden imposed on the user during text composition.

一部の実施形態(図8A、8Bには示さず)では、現在の手書き入力の最上ランクの認識結果が、任意選択的に、テキスト入力区域808内に暫定的に表示される。このテキスト入力区域808内に示される暫定的テキスト入力は、例えば、その暫定的テキスト入力を取り囲む、暫定入力ボックスによって、テキスト入力区域内の他のテキスト入力から視覚的に識別される。この暫定入力ボックス内に示されるテキストは、未だ確定されておらず、また、関連するアプリケーション(例えば、メモアプリケーション)にも未だ提供されておらず、例えば、現在の手書き入力のユーザ訂正に応じて、最上ランクの認識結果が手書き入力モジュールによって変更されると、自動的に更新される。 In some embodiments (not shown in FIGS. 8A, 8B), the highest ranking recognition result of the current handwriting input is optionally provisionally displayed within the text input area 808. The provisional text entry shown within the text entry area 808 is visually distinguished from other text entries within the text entry area by, for example, a provisional entry box surrounding the provisional text entry. The text shown in this provisional input box has not yet been finalized or provided to the associated application (e.g. a notes application) and may be e.g. , will be automatically updated when the top-ranked recognition result is changed by the handwriting input module.

図9A、図9Bは、ユーザデバイス上にマルチスクリプト手書き認識を提供するための、例示的プロセス900の流れ図である。一部の実施形態では、図900に示されるように、ユーザデバイスは、マルチスクリプト手書き認識モデルを受信し(902)、このマルチスクリプト認識モデルは、マルチスクリプト訓練コーパスの空間的に導出される特徴(例えば、ストローク順序及びストローク方向非依存式特徴)について訓練されており、このマルチスクリプト訓練コーパスは、少なくとも3つの非重複スクリプトの文字に対応する、手書きサンプルを含む。一部の実施形態では、マルチスクリプト手書き認識モデルは、単一の入力面及び単一の出力面を有する、単一の畳み込みニューラルネットワークであり(906)、マルチスクリプト訓練コーパス内に表される、少なくとも3つの非重複スクリプトの文字を区別するための、空間的に導出される特徴、及びそれらの空間的に導出される特徴に関するそれぞれの重みを含む。一部の実施形態では、マルチスクリプト手書き認識モデルは、手書き入力内で特定された1つ以上の認識単位の、それぞれの入力画像に基づいて、文字を認識するように構成され(908)、認識のために使用される、それぞれの空間的に導出される特徴は、その手書き入力内での、それぞれのストローク順序、ストローク方向、及びストロークの連続性とは無関係である。 9A-9B are a flowchart of an example process 900 for providing multi-script handwriting recognition on a user device. In some embodiments, as shown in diagram 900, a user device receives (902) a multi-script handwriting recognition model that includes spatially derived features of a multi-script training corpus. (e.g., stroke order and stroke direction independent features), and the multi-script training corpus includes handwriting samples corresponding to characters of at least three non-overlapping scripts. In some embodiments, the multi-script handwriting recognition model is a single convolutional neural network (906) with a single input surface and a single output surface, and is represented in a multi-script training corpus. It includes spatially derived features and respective weights for those spatially derived features for distinguishing between characters of at least three non-overlapping scripts. In some embodiments, the multi-script handwriting recognition model is configured to recognize characters (908) based on respective input images of one or more recognition units identified within the handwriting input; Each spatially derived feature used for is independent of the respective stroke order, stroke direction, and stroke continuity within the handwriting input.

一部の実施形態では、ユーザデバイスは、ユーザから手書き入力を受信し(908)、この手書き入力は、ユーザデバイスに結合されたタッチ感知面上に提供される、1つ以上の手書きストロークを含む。例えば、手書き入力は、指又はスタイラスと、ユーザデバイスに結合されたタッチ感知面との接触の、場所及び移動についての、それぞれのデータを含む。この手書き入力の受信に応じて、ユーザデバイスは、マルチスクリプト訓練コーパスの空間的に導出される特徴について訓練されている、マルチスクリプト手書き認識モデルに基づいて、1つ以上の手書き認識結果を、リアルタイムでユーザに提供する(910)(912)。 In some embodiments, the user device receives (908) handwriting input from the user, the handwriting input comprising one or more handwritten strokes provided on a touch-sensitive surface coupled to the user device. . For example, handwriting input includes data about the location and movement of contact between a finger or stylus and a touch-sensitive surface coupled to a user device, respectively. In response to receiving this handwriting input, the user device generates one or more handwriting recognition results in real-time based on a multi-script handwriting recognition model that is trained on the spatially derived features of the multi-script training corpus. (910) (912).

一部の実施形態では、リアルタイムの手書き認識結果をユーザに提供する場合、ユーザデバイスは、ユーザの手書き入力を、1つ以上の認識単位へと分割し(914)、各認識単位は、ユーザによって提供された手書きストロークのうちの1つ以上を含む。一部の実施形態では、ユーザデバイスは、ユーザの指又はスタイラスと、ユーザデバイスのタッチ感知面との接触によって作り出される、個別のストロークの、形状、場所、及びサイズに従って、ユーザの手書き入力を分割する。一部の実施形態では、この手書き入力の分割は、ユーザの指又はスタイラスと、ユーザデバイスのタッチ感知面との接触によって作り出される、個別のストロークの、相対順序及び相対位置を更に考慮に入れる。一部の実施形態では、ユーザの手書き入力は、筆写体の書体であり、その手書き入力内の各継続的ストロークは、印刷形態での認識文字内の、複数のストロークに対応し得る。一部の実施形態では、ユーザの手書き入力は、印刷形態での複数の認識文字にわたる、継続的ストロークを含み得る。一部の実施形態では、手書き入力の分割は、それぞれが各認識単位に対応する、1つ以上の入力画像を生成する。一部の実施形態では、それらの入力画像のうちの一部は、任意選択的に、幾つかの重複ピクセルを含む。一部の実施形態では、それらの入力画像は、いずれの重複ピクセルも含まない。一部の実施形態では、ユーザデバイスは、分割束を生成し、この分割束の各分割鎖が、現在の手書き入力を分割する、それぞれの方式を表す。一部の実施形態では、分割鎖内の各弧が、現在の手書き入力内のストロークの、それぞれのグループに対応する。 In some embodiments, when providing real-time handwriting recognition results to a user, the user device divides the user's handwriting input into one or more recognition units (914), and each recognition unit is Contains one or more of the provided handwritten strokes. In some embodiments, the user device segments the user's handwriting input according to the shape, location, and size of discrete strokes produced by contact between the user's finger or stylus and a touch-sensitive surface of the user device. do. In some embodiments, this handwriting input segmentation further takes into account the relative order and position of individual strokes produced by contact between the user's finger or stylus and the touch-sensitive surface of the user device. In some embodiments, the user's handwritten input is in a cursive typeface, and each successive stroke in the handwritten input may correspond to multiple strokes in the recognized character in printed form. In some embodiments, the user's handwritten input may include continuous strokes across multiple recognized characters in printed form. In some embodiments, segmenting the handwritten input produces one or more input images, each corresponding to each recognition unit. In some embodiments, some of the input images optionally include some overlapping pixels. In some embodiments, the input images do not include any overlapping pixels. In some embodiments, the user device generates a split bundle, with each split chain of the split bundle representing a respective manner in which the current handwriting input is split. In some embodiments, each arc in the split chain corresponds to a respective group of strokes in the current handwriting input.

図900に示されるように、ユーザデバイスは、1つ以上の認識単位のそれぞれの対応の画像を、マルチスクリプト認識モデルに、入力として提供する(914)。1つ以上の認識単位のうちの少なくとも1つに関して、ユーザデバイスは、マルチスクリプト手書き認識モデルから、第1のスクリプトからの少なくとも第1の出力文字、及び、第1のスクリプトとは異なる第2のスクリプトからの、少なくとも第2の出力文字を取得する(916)。例えば、同じ入力画像は、マルチスクリプト認識モデルに、異なるスクリプトからの2つ以上の類似した見た目の出力文字を、その同じ入力画像に関する認識結果として出力させることができる。例えば、ラテンスクリプトでの文字「a」、及びギリシャス語クリプトでの文字「α」に関する手書き入力は、類似する場合が多い。更には、ラテンスクリプトでの文字「J」、及び中国文字「
」に関する手書き入力は、類似する場合が多い。同様に、絵文字「
」に関する手書き入力は、CJK部首「
」に関する手書き入力と類似する場合がある。一部の実施形態では、マルチスクリプト手書き認識モデルは、多くの場合、ユーザの手書き入力に対応する可能性が高い、複数の候補認識結果を生成するが、これは、手書き入力の視覚的外観が、人間の読み手でさえも、解読することが困難となるためである。一部の実施形態では、第1のスクリプトは、CJK基本文字ブロックであり、第2のスクリプトは、Unicode規格によって符号化されているようなラテンスクリプトである。一部の実施形態では、第1のスクリプトは、CJK基本文字ブロックであり、第2のスクリプトは、絵文字のセットである。一部の実施形態では、第1のスクリプトは、ラテンスクリプトであり、第2のスクリプトは、絵文字である。
As shown in diagram 900, a user device provides (914) a respective corresponding image of one or more recognition units as input to a multi-script recognition model. For at least one of the one or more recognition units, the user device generates at least a first output character from a first script and a second output character different from the first script from the multi-script handwriting recognition model. At least a second output character from the script is obtained (916). For example, the same input image can cause a multi-script recognition model to output two or more similar-looking output characters from different scripts as recognition results for that same input image. For example, handwritten input for the letter "a" in Latin script and the letter "α" in Greek script are often similar. Furthermore, the letter “J” in Latin script and the Chinese letter “
” handwritten inputs are often similar. Similarly, the emoji “
”, the handwritten input for the CJK radical “
” may be similar to handwritten input. In some embodiments, the multi-script handwriting recognition model generates multiple candidate recognition results that are likely to correspond to the user's handwriting input, often because the visual appearance of the handwriting input is , even a human reader would have difficulty deciphering it. In some embodiments, the first script is a CJK basic character block and the second script is a Latin script, such as encoded by the Unicode standard. In some embodiments, the first script is a CJK basic character block and the second script is a set of glyphs. In some embodiments, the first script is a Latin script and the second script is an emoticon.

一部の実施形態では、ユーザデバイスは、そのユーザデバイスの手書き入力インタフェースの候補表示区域内に、第1の出力文字及び第2の出力文字の双方を表示する(918)。一部の実施形態では、ユーザデバイスは、第1のスクリプト及び第2のスクリプトのうちのいずれの一方が、そのユーザデバイス上に現在インストールされているソフトキーボードで使用される対応のスクリプトであるかに基づいて、第1の出力文字及び第2の出力文字のうちの一方を選択的に表示する(920)。例えば、手書き認識モデルが、現在の手書き入力に関する出力文字として、中国文字「
」及びギリシャ文字「λ」を特定していると想定すると、ユーザデバイスは、そのユーザデバイス上に、中国語ソフトキーボード(例えば、ピンイン入力法を使用するキーボード)又はギリシャ語入力キーボードのいずれをユーザがインストールしているかを判定する。ユーザデバイスが、中国語ソフトキーボードのみがインストールされていると判定する場合には、そのユーザデバイスは、任意選択的に、ユーザへの認識結果として中国文字「
」のみを表示し、ギリシャ文字「λ」は表示しない。
In some embodiments, the user device displays both the first output character and the second output character within a candidate display area of the handwriting input interface of the user device (918). In some embodiments, the user device determines whether one of the first script and the second script is a corresponding script used with a soft keyboard currently installed on the user device. selectively displays one of the first output character and the second output character based on (920). For example, the handwriting recognition model selects the Chinese character "
” and the Greek letter “λ”, the user device has either a Chinese soft keyboard (e.g., a keyboard that uses the Pinyin input method) or a Greek input keyboard on the user device. Determine whether it is installed. If the user device determines that only a Chinese soft keyboard is installed, the user device may optionally display Chinese characters as a recognition result to the user.
", but not the Greek letter "λ".

一部の実施形態では、ユーザデバイスは、リアルタイム手書き認識及び入力を提供する。一部の実施形態では、ユーザデバイスは、ユーザが、ユーザに表示された認識結果の明示的又は暗黙的な選択を実施する前に、ユーザによる手書き入力に対する継続的な追加又は訂正に応じて、そのユーザの手書き入力に関する1つ以上の認識結果を、継続的に訂正する(922)。一部の実施形態では、1つ以上の認識結果の各訂正に応じて、ユーザは、それぞれの訂正された1つ以上の認識結果を、手書き入力ユーザインタフェースの候補表示区域内で、ユーザに対して表示する(924)。 In some embodiments, the user device provides real-time handwriting recognition and input. In some embodiments, the user device, in response to continued additions or corrections to the handwritten input by the user, before the user performs an explicit or implicit selection of the recognition results displayed to the user. One or more recognition results for the user's handwritten input are continually corrected (922). In some embodiments, in response to each correction of the one or more recognition results, the user displays the respective corrected one or more recognition results to the user in a candidate display area of the handwriting input user interface. (924).

一部の実施形態では、マルチスクリプト手書き認識モデルは、Unicode規格に従って符号化されている、中国文字、絵文字、及びラテンスクリプトを含めた、少なくとも3つの非重複スクリプトの全ての文字を認識するように訓練される(926)。一部の実施形態では、少なくとも3つの非重複スクリプトは、中国文字、アラビア語スクリプト、及びラテンスクリプトを含む。一部の実施形態では、マルチスクリプト手書き認識モデルは、少なくとも3つの非重複スクリプトにわたる少なくとも30個の文字を表す、少なくとも3万個の出力クラスを有する(928)。 In some embodiments, the multi-script handwriting recognition model is configured to recognize all characters of at least three non-redundant scripts, including Chinese characters, emojis, and Latin scripts, that are encoded according to the Unicode standard. Trained (926). In some embodiments, the at least three non-overlapping scripts include a Chinese script, an Arabic script, and a Latin script. In some embodiments, the multi-script handwriting recognition model has at least 30,000 output classes representing at least 30 characters across at least three non-overlapping scripts (928).

一部の実施形態では、ユーザデバイスは、2つ以上のスクリプトの文字を含む語句などの、マルチスクリプト手書き入力を、ユーザが入力することを可能にする。例えば、ユーザは、認識言語を手動で切り替えるために、書き込みの途中で中断することなく、継続的に書き込みを行い、2つ以上のスクリプトの文字を含む、手書き認識結果を受信することができる。例えば、ユーザは、ユーザデバイスの手書き入力区域内に、マルチスクリプトの文「Hello means
in Chinese.」を書き込むことができ、その場合、中国文字「
」を書き込む前に、英語から中国語に入力言語を切り替えることも、又は英語の語「in Chinese」を書き込む際に、中国語から英語に入力言語を切り替えて戻すことも必要とはしない。
In some embodiments, the user device allows the user to enter multi-script handwritten input, such as words that include characters from more than one script. For example, a user may write continuously, without interrupting mid-writing, to manually switch recognition languages, and receive handwriting recognition results that include characters from two or more scripts. For example, a user may write the multiscript sentence "Hello means" within the handwriting input area of the user device.
in Chinese. ”, in which case the Chinese character “
It is not necessary to switch the input language from English to Chinese before writing the word "in Chinese," or to switch the input language from Chinese back to English when writing the English word "in Chinese."

本明細書で説明されるように、ユーザの入力に関するリアルタイム手書き認識を提供するために、マルチスクリプト手書き認識モデルが使用される。一部の実施形態では、リアルタイム手書き認識は、ユーザのデバイス上にリアルタイムマルチスクリプト手書き入力の機能性を提供するために使用される。図10A~図10Cは、ユーザデバイス上にリアルタイム手書き認識及び入力を提供するための、例示的プロセス1000の流れ図である。具体的には、このリアルタイム手書き認識は、文字レベル、語句レベル、及び文レベルで、ストローク順序非依存式である。 As described herein, a multi-script handwriting recognition model is used to provide real-time handwriting recognition for user input. In some embodiments, real-time handwriting recognition is used to provide real-time multi-script handwriting input functionality on a user's device. 10A-10C are a flowchart of an example process 1000 for providing real-time handwriting recognition and input on a user device. Specifically, this real-time handwriting recognition is stroke order independent at the character level, phrase level, and sentence level.

一部の実施形態では、文字レベルでのストローク順序非依存式の手書き認識は、ユーザによって提供された特定の文字の個別のストロークの配列にかかわらず、手書き認識モデルが、その特定の手書き文字に関して同じ認識結果を提供することが必要とされる。例えば、中国文字の個別のストロークは、典型的には、特定の順序で書き込まれる。中国語を母国語とする人は、学校で、各文字を特定の順序で書き込むように訓練される場合が多いが、多くのユーザは、その従来のストローク順序から逸脱する、個人的なスタイル及びストロークの配列を、後に採用している。更には、筆写体の書体は、高度に個別化され、中国文字の印刷形態での複数のストロークは、単一の様式化されたストロークへと融合される場合が多く、そのストロークは、歪曲し、向きを変え、更には次の文字へと続け書きされる場合もある。ストローク順序非依存式の認識モデルは、個別のストロークに関連付けられる時間的情報を含まない、書き込みサンプルの画像に基づいて訓練される。それゆえ、この認識は、ストローク順序情報とは無関係である。例えば、中国文字「
」に関しては、ユーザが、水平のストロークを最初に書き込むか、又は垂直のストロークを最初に書き込むかにかかわらず、同じ認識結果「
」が、手書き認識モデルによって与えられる。
In some embodiments, stroke order-independent handwriting recognition at the character level is such that, regardless of the arrangement of the individual strokes of a particular character provided by the user, the handwriting recognition model It is required to provide the same recognition results. For example, the individual strokes of Chinese characters are typically written in a particular order. Although native Chinese speakers are often trained in school to write each character in a specific order, many users develop personal styles and patterns that deviate from that traditional stroke order. Stroke arrangement was adopted later. Furthermore, cursive typefaces are highly individualized, and the multiple strokes in printed forms of Chinese characters are often fused into a single stylized stroke, which can be distorted or distorted. , the direction may be changed, and even the next letter may be continued. Stroke order independent recognition models are trained on images of writing samples that do not contain temporal information associated with individual strokes. Therefore, this recognition is independent of stroke order information. For example, the Chinese character “
”, regardless of whether the user writes the horizontal stroke first or the vertical stroke first, the same recognition result “
” is given by the handwriting recognition model.

図10Aに示されるように、プロセス1000では、ユーザデバイスは、ユーザから複数の手書きストロークを受信し(1002)、これらの複数の手書きストロークは、1つの手書き文字に対応する。例えば、文字「
」に関する手書き入力は、典型的には、実質的に垂直の手書きストロークと交差する、実質的に水平の手書きストロークを含む。
As shown in FIG. 10A, in process 1000, a user device receives 1002 a plurality of handwritten strokes from a user, the plurality of handwritten strokes corresponding to one handwritten character. For example, the character "
” typically includes substantially horizontal handwritten strokes intersecting substantially vertical handwritten strokes.

一部の実施形態では、ユーザデバイスは、これらの複数の手書きストロークに基づいて、入力画像を生成する(1004)。一部の実施形態では、ユーザデバイスは、その手書き文字のリアルタイム手書き認識を実行するために、手書き認識モデルに入力画像を提供し(1006)、この手書き認識モデルは、ストローク順序非依存式の手書き認識を提供する。次いで、ユーザデバイスは、ユーザから受信された複数の手書きストローク(例えば、水平のストローク及び垂直のストローク)の、それぞれの順序に関わりなく、それらの複数の手書きストロークを受信するリアルタイムで、同一の第1の出力文字(例えば、印刷形態での文字「
」)を表示する(1008)。
In some embodiments, the user device generates an input image based on the plurality of handwritten strokes (1004). In some embodiments, the user device provides an input image to a handwriting recognition model (1006) to perform real-time handwriting recognition of the handwriting, and the handwriting recognition model includes stroke order independent handwriting. Provide recognition. The user device then processes the same first and second handwritten strokes (e.g., horizontal strokes and vertical strokes) received from the user in real time, regardless of their respective order. 1 output character (for example, the character "
”) is displayed (1008).

一部の従来の手書き認識システムでは、少数の文字での軽微なストローク順序の変動は、その手書き認識システムの訓練に、そのような変動を具体的に含めることによって許容される。そのような従来の手書き認識システムは、中国文字などの、多数の複雑な文字での、恣意的なストローク順序の変動に適応するように拡張可能ではないが、これは、適度な複雑性の文字であっても、既に、ストローク順序の多数の変動を生じさせるためである。更には、特定の文字に関する容認可能なストローク順序の、より多くの順列を単に含めることによっては、従来の認識システムでは、複数のストロークが単一のストロークへと組み合わされる(例えば、超筆写体の書き込みでのような)手書き入力、又は1つのストロークが複数のサブストロークへと分解される(例えば、入力ストロークの極めて荒いサンプリングで取り込まれた文字でのような)手書き入力は、依然として取り扱うことが不可能である。それゆえ、本明細書で説明されるような、空間的に導出される特徴について訓練される、マルチスクリプト手書きシステムは、従来の認識システムに勝る利点を提供する。 In some conventional handwriting recognition systems, minor stroke order variations in a small number of characters are tolerated by specifically including such variations in the training of the handwriting recognition system. Such traditional handwriting recognition systems are not scalable to accommodate arbitrary stroke order variations in large numbers of complex characters, such as Chinese characters; Even so, this already gives rise to numerous variations in stroke order. Furthermore, by simply including more permutations of acceptable stroke order for a particular character, traditional recognition systems combine multiple strokes into a single stroke (e.g., hypercursive Handwritten input (as in writing) or where one stroke is decomposed into multiple sub-strokes (as in characters captured with a very coarse sampling of the input strokes) can still be handled. It's impossible. Therefore, multi-script handwriting systems trained on spatially derived features, such as those described herein, offer advantages over traditional recognition systems.

一部の実施形態では、ストローク順序非依存式の手書き認識は、各手書き文字内の個別のストロークに関連付けられる時間的情報とは、無関係に実行される。一部の実施形態では、ストローク順序非依存式の手書き認識は、フラットな入力画像へと融合される前の、個別のストロークの空間的分布を考慮に入れる、ストローク分布情報と関連して実行される。この時間的に導出されるストローク分布情報を使用して、どのように上述のストローク順序非依存式の手書き認識を増強するかについての更なる詳細は、この後(例えば、図25A~図27に関連して)本明細書で提供される。図25A~図27に関連して説明される技術は、手書き認識システムのストローク順序非依存性を損なうものではない。 In some embodiments, stroke order independent handwriting recognition is performed independently of temporal information associated with individual strokes within each handwritten character. In some embodiments, stroke order-independent handwriting recognition is performed in conjunction with stroke distribution information that takes into account the spatial distribution of individual strokes before being fused into a flat input image. Ru. Further details on how this temporally derived stroke distribution information is used to enhance the stroke order independent handwriting recognition described above are provided below (e.g., in FIGS. 25A-27). (related to) provided herein. The techniques described in connection with FIGS. 25A-27 do not compromise the stroke order independence of handwriting recognition systems.

一部の実施形態では、手書き認識モデルは、ストローク方向非依存式の手書き認識を提供する(1010)。一部の実施形態では、ストローク方向非依存式の認識は、ユーザデバイスが、複数の手書き入力の受信に応じて、ユーザによって提供された複数の手書きストロークのそれぞれの、それぞれのストローク方向に関わりなく、同一の第1の出力文字を表示することが必要とされる。例えば、ユーザが、ユーザデバイスの手書き入力区域内に、中国文字「
」を書き込んでいる場合には、手書き認識モデルは、ユーザが、水平のストロークを左から右に描いたか、又は右から左に描いたかにかかわらず、同じ認識結果を出力する。同様に、手書き認識モデルは、ユーザが、垂直のストロークを下向きの方向で描いたか、又は上向きの方向で描いたかにかかわらず、同じ認識結果を出力する。別の実施例では、多くの中国文字は、2つ以上の部首で構造的に作成される。一部の中国文字は、左の部首及び右の部首をそれぞれが含み、人々は、慣例的に、左の部首を最初に書き込み、右の部首を2番目に書き込む。一部の実施形態では、手書き認識モデルは、ユーザが手書き文字を完成させた際に、結果的に得られる手書き入力が、右の部首の左側に左の部首を示す限りは、ユーザが左の部首を最初に書き込んだか、又は右の部首を最初に書き込んだかにかかわらず、同じ認識結果を提供する。同様に、一部の中国文字は、上の部首及び下の部首をそれぞれが含み、人々は、慣例的に、上の部首を最初に書き込み、下の部首を最後に書き込む。一部の実施形態では、手書き認識モデルは、結果的に得られる手書き入力が、下の部首の上方に上の部首を示す限りは、ユーザが上の部首を最初に書き込んだか、又は下の部首を最初に書き込んだかにかかわらず、同じ認識結果を提供する。換言すれば、手書き認識モデルは、ユーザが提供する、手書き文字の個別のストロークの方向に依存することなく、手書き文字の同一性を判定する。
In some embodiments, the handwriting recognition model provides stroke direction independent handwriting recognition (1010). In some embodiments, stroke direction-independent recognition includes, in response to receiving the plurality of handwriting inputs, the user device, in response to receiving the plurality of handwriting inputs, recognizes each of the plurality of handwritten strokes provided by the user, regardless of the respective stroke direction. , it is required to display the same first output character. For example, if a user enters the Chinese characters "
”, the handwriting recognition model outputs the same recognition result regardless of whether the user drew the horizontal stroke from left to right or from right to left. Similarly, handwriting recognition models output the same recognition results regardless of whether the user draws vertical strokes in a downward or upward direction. In another example, many Chinese characters are constructed structurally with two or more radicals. Some Chinese characters each include a left radical and a right radical, and people traditionally write the left radical first and the right radical second. In some embodiments, the handwriting recognition model recognizes that when a user completes a handwritten character, as long as the resulting handwriting input shows left radicals to the left of right radicals, Provides the same recognition result whether the left radical is written first or the right radical is written first. Similarly, some Chinese characters each contain an upper radical and a lower radical, and people traditionally write the upper radical first and the lower radical last. In some embodiments, the handwriting recognition model determines whether the user wrote the upper radical first, or Provides the same recognition result regardless of whether the lower radical is written first. In other words, the handwriting recognition model determines the identity of handwritten characters without depending on the direction of individual strokes of the handwritten characters provided by the user.

一部の実施形態では、手書き認識モデルは、ユーザによって提供された認識単位のサブストロークの数にかかわらず、その認識単位の画像に基づいて、手書き認識を提供する。換言すれば、一部の実施形態では、手書き認識モデルは、ストローク数非依存式の手書き認識を提供する(1014)。一部の実施形態では、ユーザデバイスは、複数の手書きストロークの受信に応じて、幾つの手書きストロークが、その入力画像内の継続的ストロークを形成するために使用されるかに関わりなく、同一の第1の出力文字を表示する。例えば、ユーザが、手書き入力区域内に、中国文字「+」を書き込んでいる場合には、手書き認識モデルは、ユーザが、文字「
」の形状を構成するために、4つのストローク(例えば、十字形状の文字を構成するための、2つの短い水平のストローク及び2つの短い垂直のストローク)を提供したか、又は2つのストローク(例えば、L形状のストローク及び7形状のストローク、あるいは水平のストローク及び垂直のストローク)を提供したか、又は任意の他の数のストローク(例えば、数百個の極度に短いストローク又は点)を提供したかにかかわらず、同じ認識結果を出力する。
In some embodiments, the handwriting recognition model provides handwriting recognition based on an image of the recognition unit regardless of the number of substrokes of the recognition unit provided by the user. In other words, in some embodiments, the handwriting recognition model provides stroke count independent handwriting recognition (1014). In some embodiments, the user device, in response to receiving the plurality of handwritten strokes, determines how many handwritten strokes are identical, regardless of how many handwritten strokes are used to form a continuous stroke in the input image. Display the first output character. For example, if the user writes the Chinese character "+" in the handwriting input area, the handwriting recognition model will write the Chinese character "+" in the handwriting input area.
' provided four strokes (e.g. two short horizontal strokes and two short vertical strokes to form a cross-shaped character) or two strokes (e.g. , L-shaped strokes and 7-shaped strokes, or horizontal strokes and vertical strokes), or any other number of strokes (e.g., hundreds of extremely short strokes or points). Outputs the same recognition result regardless of the

一部の実施形態では、手書き認識モデルは、それぞれの単一の文字が書き込まれた順番、方向、及びストローク数にかかわらず、同じ文字を認識することが可能であるばかりではなく、手書き認識モデルはまた、ユーザによって提供された、複数の文字のストロークの時間的順序に関わりなく、複数の文字を認識することも可能である。 In some embodiments, the handwriting recognition model is not only capable of recognizing the same characters regardless of the order, direction, and number of strokes in which each single character is written; It is also possible to recognize multiple characters regardless of the temporal order of the strokes of the multiple characters provided by the user.

一部の実施形態では、ユーザデバイスは、ユーザから、第1の複数の手書きストロークを受信しているだけではなく、第2の複数の手書きストロークも受信しており(1016)、それらの第2の複数の手書きストロークは、第2の手書き文字に対応する。一部の実施形態では、ユーザデバイスは、それらの第2の複数の手書きストロークに基づいて、第2の入力画像を生成する(1018)。一部の実施形態では、ユーザデバイスは、第2の手書き文字のリアルタイム認識を実行するために、この第2の入力画像を、手書き認識モデルに提供する(1020)。一部の実施形態では、ユーザデバイスは、第2の複数の手書きストロークを受信するリアルタイムで、それらの第2の複数の手書きストロークに対応する、第2の出力文字を表示する(1022)。一部の実施形態では、第2の出力文字及び第1の出力文字は、ユーザによって提供された、第1の複数の手書きストローク及び第2の複数の手書きストロークのそれぞれの順序とは無関係な、空間的配列で同時に表示される。例えば、ユーザが、ユーザデバイスの手書き入力区域内に、2つの中国文字(例えば、「
」及び「
」)を書き込んでいる場合には、ユーザデバイスは、手書き入力区域内に現時点で蓄積されている手書き入力が、文字「
」に関するストロークの左に、文字「
」に関するストロークを示す限りは、ユーザが文字「
」のストロークを最初に書き込んだか、又は文字「
」のストロークを最初に書き込んだかにかかわらず、認識結果「
」を表示する。実際に、ユーザが、文字「
」に関するストロークのうちの一部(例えば、垂直のストローク)の前に、文字「
」に関するストロークのうちの一部(例えば、左に傾斜したストローク)を書き込んでいる場合であっても、手書き入力区域内の手書き入力の結果的に得られる画像が、文字「
」に関する全てのストロークの左に、文字「
」に関する全てのストロークを示す限りは、ユーザデバイスは、それらの2つの手書き文字の空間的配列で、認識結果「
」を示す。
In some embodiments, the user device not only receives the first plurality of handwritten strokes from the user, but also receives the second plurality of handwritten strokes (1016) and the second plurality of handwritten strokes. The plurality of handwritten strokes correspond to a second handwritten character. In some embodiments, the user device generates a second input image based on the second plurality of handwritten strokes (1018). In some embodiments, the user device provides the second input image to the handwriting recognition model to perform real-time recognition of the second handwritten characters (1020). In some embodiments, the user device displays a second output character corresponding to the second plurality of handwritten strokes in real time upon receiving the second plurality of handwritten strokes (1022). In some embodiments, the second output character and the first output character are independent of the respective order of the first plurality of handwritten strokes and the second plurality of handwritten strokes provided by the user. displayed simultaneously in a spatial array. For example, if a user enters two Chinese characters (e.g., "
"as well as"
''), the user device determines that the handwriting input currently stored within the handwriting input area is the character ``
To the left of the stroke related to ``, the character ``
” as long as the user indicates a stroke related to the character “
” stroke first, or the character “
” regardless of whether you wrote the stroke first, the recognition result “
" is displayed. In fact, when the user inputs the characters ``
” before some of the strokes (e.g. vertical strokes), the character “
Even if you are writing some of the strokes (for example, strokes slanted to the left) that relate to the character "
To the left of all strokes related to ``
”, the user device recognizes the recognition result “
” is shown.

換言すれば、図10Bに示されるように、一部の実施形態では、第1の出力文字及び第2の出力文字の空間的配列は、ユーザデバイスの手書き入力インタフェースの、デフォルトの(例えば、左から右への)書き込み方向に沿った、第1の複数の手書きストローク及び第2の複数のストロークの空間的分布に対応する(1024)。一部の実施形態では、第2の複数の手書きストロークは、第1の複数の手書きストロークよりも時間的に後に受信され(1026)、第2の出力文字は、ユーザデバイスの手書き入力インタフェースの、デフォルトの(例えば、左から右への)書き込み方向に沿った空間的配列で、第1の出力文字に先行する。 In other words, as shown in FIG. 10B, in some embodiments, the spatial arrangement of the first output character and the second output character is a 1024 corresponds to a spatial distribution of the first plurality of handwritten strokes and the second plurality of strokes along a writing direction (from to the right). In some embodiments, the second plurality of handwritten strokes is received later in time than the first plurality of handwritten strokes (1026), and the second output character is a second plurality of handwritten strokes of a handwriting input interface of a user device. A spatial alignment along the default (eg, left-to-right) writing direction that precedes the first output character.

一部の実施形態では、手書き認識モデルは、文と文とのレベルで、ストローク順序非依存式の認識を提供する。例えば、手書き入力区域内で、手書き文字「
」が第1の手書き文内に存在し、手書き文字「
」が第2の手書き文内に存在し、それらの2つの手書き文字が、1つ以上の他の手書き文字及び/又は語によって隔てられている場合であっても、手書き認識モデルは、それらの2つの文字を空間的配列「
」で示す認識結果を、依然として提供する。この認識結果、及び2つの認識文字の空間的配列は、ユーザが手書き入力を完了した際に、それらの2つの文字に関する認識単位が、配列「
」で空間的に配置構成されているならば、ユーザによって提供された、それらの2つの文字のストロークの時間的順序にかかわらず、同じままで維持される。一部の実施形態では、第1の手書き文字(例えば、「
」)は、第1の手書き文(例えば、「
is a number.」)の一部として、ユーザによって提供され、第2の手書き文字(例えば、「
」)は、第2の手書き文(例えば、「
is another number.」)の一部として、ユーザによって提供され、これらの第1の手書き文及び第2の手書き文は、ユーザデバイスの手書き入力区域内に、同時に表示される。一部の実施形態では、この認識結果(例えば、「
is a number.
is another number.」)が正しい認識結果であることを、ユーザが確認すると、それらの2つの文は、ユーザデバイスのテキスト入力区域内に入力され、手書き入力区域は、ユーザが別の手書き入力を入力するために、クリアされる。
In some embodiments, the handwriting recognition model provides stroke order independent recognition at the sentence-to-sentence level. For example, in the handwriting input area, the handwritten character "
” exists in the first handwritten text, and the handwritten text “
'' in the second handwritten text, and the two handwritten characters are separated by one or more other handwritten characters and/or words, the handwriting recognition model still recognizes their Put the two characters into a spatial arrangement ``
” will still be provided. This recognition result and the spatial arrangement of the two recognized characters are such that when the user completes handwriting input, the recognition units for those two characters are arranged in the array "
'' remains the same regardless of the temporal order of the strokes of those two characters provided by the user. In some embodiments, the first handwritten character (e.g., "
”) is the first handwritten text (e.g., “
is a number. '') and the second handwritten character (e.g., ``
”) is the second handwritten text (e.g., “
is another number. ”) provided by the user, the first handwritten text and the second handwritten text are displayed simultaneously within the handwriting input area of the user device. In some embodiments, this recognition result (e.g., "
is a number.
is another number. ") is the correct recognition result, those two sentences are entered into the text input area of the user device, and the handwriting input area is opened for the user to input another handwritten input. , cleared.

一部の実施形態では、手書き認識モデルは、文字レベルのみならず、語句レベル及び文レベルでもストローク順序非依存式であるため、ユーザは、従前の未完了の文字に対する修正を、後続の文字を書き込んだ後に実施することができる。例えば、ユーザが、手書き入力区域内での、1つ以上の後続の文字の書き込みに移行する前に、ある文字に関する特定のストロークの書き込みを忘れていた場合には、ユーザは依然として、その特定の文字内の正しい場所に、欠落したストロークを後から記入して、正しい認識結果を受け取ることができる。 In some embodiments, the handwriting recognition model is stroke order independent, not only at the character level, but also at the word and sentence level, so that the user can make corrections to previous unfinished characters, as well as subsequent characters. It can be executed after writing. For example, if a user forgets to write a particular stroke for a character before moving on to writing one or more subsequent characters within the handwriting input area, the user may still You can fill in the missing strokes at the correct location within the character later and receive the correct recognition result.

従来のストローク順序依存式のシステム(例えば、HMMに基づく認識システム)では、文字が一旦書き込まれると、その文字は確定されて、ユーザは、もはや、その文字に対するいずれの変更も実施することができない。ユーザが、いずれかの変更を実施することを望む場合には、ユーザは、その文字及び後続の全ての文字を削除して、最初からやり直さなければならない。一部の従来の認識システムでは、ユーザは、短い既定の時間窓の範囲内で、手書き文字を完成することが必要とされ、その既定の時間窓外で入力されたいずれのストロークも、その時間窓の間に提供された他のストロークと同じ認識単位内には含められない。そのような従来のシステムは、使用することが困難であり、多大な苛立ちをユーザにもたらす。ストローク順序非依存式システムは、これらの欠点とは無縁であり、ユーザは、ユーザが適切と思われるような、任意の順序及び任意の時間枠で、文字を完成させることができる。ユーザはまた、以前に書き込んだ文字に対する修正(例えば、1つ以上のストロークの追加)を、その後に1つ以上の文字を手書き入力インタフェース内に書き込んだ後に、実施することもできる。一部の実施形態では、ユーザはまた、以前に書き込んだ文字を、(例えば、図21A、図22Bに関連して後に説明される方法を使用して)個別に削除して、手書き入力インタフェース内の同じ場所に、その文字を書き直すこともできる。 In traditional stroke order dependent systems (e.g. HMM-based recognition systems), once a character is written, it is fixed and the user can no longer perform any changes to it. . If the user wishes to make any changes, he must delete that character and all subsequent characters and start over. Some traditional recognition systems require the user to complete a handwritten character within a short predefined time window, and any strokes entered outside that predefined time window are It cannot be included within the same recognition unit as other strokes provided between windows. Such conventional systems are difficult to use and cause a great deal of frustration to users. Stroke order independent systems are free from these drawbacks and allow the user to complete characters in any order and in any time frame as the user sees fit. The user may also perform modifications to previously written characters (eg, adding one or more strokes) after subsequently writing the one or more characters in the handwriting input interface. In some embodiments, the user can also individually delete previously written characters (e.g., using the methods described below in connection with FIGS. 21A, 22B) within the handwriting input interface. You can also rewrite the character in the same place.

図10B及び図10Cに示されるように、第2の複数の手書きストロークは、ユーザデバイスの手書き入力インタフェースの、デフォルトの書き込み方向に沿って、第1の複数の手書きストロークを空間的に追従し(1028)、第2の出力文字は、手書き入力インタフェースの候補表示区域内で、そのデフォルトの書き込み方向に沿った空間的配列で、第1の出力文字を追従する。ユーザデバイスは、第1の手書き文字(すなわち、第1の複数の手書きストロークによって形成された手書き文字)を訂正するために、ユーザから第3の手書きストロークを受信し(1030)、この第3の手書きストロークは、第1の複数の手書きストローク及び第2の複数の手書きストロークよりも、時間的に後に受信される。例えば、ユーザは、手書き入力区域内に、左から右への空間的配列で2つの文字(例えば、「
」)を書き込んでいる。第1の複数のストロークは、手書き文字「
」を形成する。ユーザは、実際には文字「
」を書き込むことを意図していたが、1つのストロークを書き落としたことに留意されたい。第2の複数のストロークは、手書き文字「
」を形成する。ユーザが、「
」ではなく「
」を書き込むことを望んでいたことを、その後に理解すると、ユーザは、単純に、文字「
」に関するストロークの下方に、もう1つの垂直のストロークを記入することができ、ユーザデバイスは、その垂直のストロークを、第1の認識単位(例えば、「
」に関する認識単位)に割り当てる。ユーザデバイスは、第1の認識単位に関する新たな出力文字(例えば、「
」)を出力し、この新たな出力文字が、認識結果内の従前の出力文字(例えば、「
」)に置き換わる。図10Cに示されるように、第3の手書きストロークの受信に応じて、ユーザデバイスは、その第3の手書きストロークの、第1の複数の手書きストロークへの相対的な近接性に基づいて、第1の複数の手書きストロークと同じ認識単位に、その第3の手書きストロークを割り当てる(1032)。一部の実施形態では、ユーザデバイスは、第1の複数の手書きストローク及び第3の手書きストロークに基づいて、訂正された入力画像を生成する(1034)。ユーザデバイスは、訂正された手書き文字のリアルタイム認識を実行するために、この訂正された入力画像を、手書き認識モデルに提供する(1036)。一部の実施形態では、ユーザデバイスは、第3の手書き入力の受信に応じて、訂正された入力画像に対応する第3の出力文字を表示し(1040)、この第3の出力文字は、第1の出力文字に置き換わり、デフォルトの書き込み方向に沿った空間的配列で、第2の出力文字と同時に表示される。
As shown in FIGS. 10B and 10C, the second plurality of handwritten strokes spatially follows the first plurality of handwritten strokes along the default writing direction of the handwriting input interface of the user device ( 1028), the second output character follows the first output character in a spatial arrangement along its default writing direction within the candidate display area of the handwriting input interface. The user device receives (1030) a third handwritten stroke from the user to correct the first handwritten character (i.e., the handwritten character formed by the first plurality of handwritten strokes); The handwritten strokes are received later in time than the first plurality of handwritten strokes and the second plurality of handwritten strokes. For example, a user may enter two characters in a left-to-right spatial arrangement (e.g., "
”) is written. The first plurality of strokes is the handwritten character "
” is formed. The user is actually writing the character "
” but missed one stroke. The second plurality of strokes is the handwritten character "
” is formed. If the user says “
"not"
”, the user simply writes the characters “
Another vertical stroke can be written below the stroke for ", and the user device writes that vertical stroke to the first recognition unit (e.g., "
”). The user device generates a new output character (e.g., "
”), and this new output character is the same as the previous output character in the recognition result (for example, “
”) will be replaced. As shown in FIG. 10C, in response to receiving the third handwritten stroke, the user device determines the third handwritten stroke based on the relative proximity of the third handwritten stroke to the first plurality of handwritten strokes. The third handwritten stroke is assigned to the same recognition unit as the first plurality of handwritten strokes (1032). In some embodiments, the user device generates a corrected input image based on the first plurality of handwritten strokes and the third handwritten strokes (1034). The user device provides the corrected input image to the handwriting recognition model to perform real-time recognition of the corrected handwriting (1036). In some embodiments, the user device displays (1040) a third output character corresponding to the corrected input image in response to receiving the third handwritten input, the third output character comprising: It replaces the first output character and is displayed simultaneously with the second output character in a spatial arrangement along the default writing direction.

一部の実施形態では、手書き認識モジュールは、左から右へのデフォルトの書き込み方向で書き込まれた、手書き入力を認識する。例えば、ユーザは、左から右に、かつ1つ以上の行で、文字を書き込むことができる。この手書き入力に応じて、手書き入力モジュールは、必要に応じて、左から右への空間的配列で、かつ1つ以上の行で文字を含む、認識結果を提示する。ユーザが認識結果を選択する場合には、選択された認識結果は、ユーザデバイスのテキスト入力区域内に入力される。一部の実施形態では、デフォルトの書き込み方向は、上から下である。一部の実施形態では、デフォルトの書き込み方向は、右から左である。一部の実施形態では、ユーザは、認識結果が選択され、手書き入力区域がクリアされた後、任意選択的に、デフォルトの書き込み方向を、代替的な書き込み方向に変更する。 In some embodiments, the handwriting recognition module recognizes handwritten input written in a default writing direction of left to right. For example, a user can write characters from left to right and in one or more lines. In response to this handwriting input, the handwriting input module presents a recognition result, optionally including characters in a left-to-right spatial arrangement and in one or more rows. If the user selects a recognition result, the selected recognition result is entered into the text entry area of the user device. In some embodiments, the default writing direction is top to bottom. In some embodiments, the default writing direction is right to left. In some embodiments, the user optionally changes the default writing direction to an alternative writing direction after the recognition result is selected and the handwriting input area is cleared.

一部の実施形態では、手書き入力モジュールは、複数文字の手書き入力を、ユーザが手書き入力区域内に入力することを可能にし、その手書き入力からの、一度に全ての認識単位ではなく、一度に1つの認識単位の、ストロークの削除を可能にする。一部の実施形態では、手書き入力モジュールは、手書き入力からの、一度に1つのストロークの削除を可能にする。一部の実施形態では、認識単位の削除は、現在の手書き入力を作り出すために入力された、認識単位又はストロークの順序にかかわらず、デフォルトの書き込み方向とは反対の方向で、1つずつ進行する。一部の実施形態では、ストロークの削除は、そのストロークが各認識単位内で入力された逆の順序で、1つずつ進行し、1つの認識単位内のストロークが全て削除されると、ストロークの削除は、デフォルトの書き込み方向とは反対の方向で、次の認識単位へと進行する。 In some embodiments, the handwriting input module allows a user to enter multi-character handwritten input within the handwriting input area, and from the handwriting input at one time rather than all recognition units at once. Allows deletion of strokes in one recognition unit. In some embodiments, the handwriting input module allows deletion of one stroke at a time from the handwriting input. In some embodiments, the deletion of recognition units proceeds one by one in a direction opposite to the default writing direction, regardless of the order of the recognition units or strokes entered to produce the current handwriting input. do. In some embodiments, the deletion of strokes proceeds one by one in the reverse order in which the strokes were entered within each recognition unit, and when all strokes within a recognition unit are deleted, the strokes are deleted. Deletion proceeds to the next recognition unit in the opposite direction to the default write direction.

一部の実施形態では、第3の出力文字及び第2の出力文字が、手書き入力インタフェースの候補表示区域内に、候補認識結果として同時に表示されている間に、ユーザデバイスは、ユーザから削除入力を受信する。この削除入力に応じて、ユーザデバイスは、認識結果から第2の出力文字を削除する一方で、第3の出力文字を、候補表示区域内表示された認識結果内に維持する。 In some embodiments, while the third output character and the second output character are simultaneously displayed as candidate recognition results in the candidate display area of the handwriting input interface, the user device receives a delete input from the user. receive. In response to the delete input, the user device deletes the second output character from the recognition result while maintaining the third output character within the recognition result displayed within the candidate display area.

一部の実施形態では、図10Cに示されるように、ユーザデバイスは、第1の複数の手書きストローク、第2の複数の手書きストローク、及び第3の手書きストロークを、それらの手書きストロークのそれぞれがユーザによって提供される際に、リアルタイムでレンダリングする(1042)。一部の実施形態では、ユーザからの削除入力の受信に応じて、ユーザデバイスは、手書き入力区域から、第2の複数の手書き入力の(例えば、第2の手書き文字に対応する)それぞれのレンダリングを削除する一方で、第1の複数の手書きストローク及び第3の手書きストロークの(例えば、訂正された第1の手書き文字に、一体となって対応する)それぞれのレンダリングを、手書き入力区域内に維持する(1044)。例えば、ユーザが、文字配列「
」内の欠落した垂直のストロークを提供した後、ユーザが、削除入力を入力した場合には、文字「
」に関する認識単位内のストロークが、手書き入力区域から除去され、文字「
」が、ユーザデバイスの候補表示区域内の認識結果「
」から除去される。この削除の後、文字「
」に関するストロークは、手書き入力区域内に維持され、認識結果は、文字「
」のみを示す。
In some embodiments, as shown in FIG. Render in real time as provided by the user (1042). In some embodiments, in response to receiving the delete input from the user, the user device renders each of the second plurality of handwritten inputs (e.g., corresponding to the second handwritten character) from the handwriting input area. while deleting respective renderings of the first plurality of handwritten strokes and the third handwritten strokes (e.g., corresponding together to the corrected first handwritten strokes) within the handwriting input area. Maintain (1044). For example, if a user creates a character array '
If the user enters a delete input after providing the missing vertical stroke within the character "
" are removed from the handwriting input area and the strokes within the recognition unit for the character "
” is the recognition result in the candidate display area of the user device “
' will be removed from '. After this deletion, the characters “
" stroke is kept within the handwriting input area, and the recognition result is the character "
" is shown only.

一部の実施形態では、手書き文字は、複数ストロークの中国文字である。一部の実施形態では、第1の複数の手書き入力は、筆写体の書体で提供される。一部の実施形態では、第1の複数の手書き入力は、筆写体の書体で提供され、その手書き文字は、複数ストロークの中国文字である。一部の実施形態では、それらの手書き文字は、筆写体のアラビア語で書き込まれる。一部の実施形態では、それらの手書き文字は、筆写体の他のスクリプトで書き込まれる。 In some embodiments, the handwritten characters are multi-stroke Chinese characters. In some embodiments, the first plurality of handwritten inputs are provided in a cursive typeface. In some embodiments, the first plurality of handwritten inputs are provided in a cursive typeface, and the handwritten characters are multi-stroke Chinese characters. In some embodiments, the handwritten characters are written in cursive Arabic. In some embodiments, the handwritten characters are written in other scripts, such as cursive.

一部の実施形態では、ユーザデバイスは、手書き文字入力に関する容認可能な寸法のセットについて、それぞれの既定の制約を確立し、現時点で蓄積されている複数の手書きストロークを、それぞれの既定の制約に基づいて、複数の認識単位へと分割し、それらの認識単位のそれぞれから、それぞれの入力画像が生成されて、手書き認識モデルに提供され、対応する出力文字として認識される。 In some embodiments, the user device establishes respective default constraints for a set of acceptable dimensions for handwriting input, and applies multiple currently accumulated handwritten strokes to the respective default constraints. Based on the handwriting recognition model, the input image is divided into a plurality of recognition units, and each input image is generated from each of the recognition units and provided to the handwriting recognition model, where it is recognized as a corresponding output character.

一部の実施形態では、ユーザデバイスは、現時点で蓄積されている複数の手書きストロークを分割した後、ユーザから更なる手書きストロークを受信する。ユーザデバイスは、複数の認識単位に対する、更なる手書きストロークの空間的位置に基づいて、それらの複数の認識単位のうちのそれぞれ1つに、その更なる手書きストロークを割り当てる。 In some embodiments, the user device receives additional handwritten strokes from the user after dividing the currently accumulated plurality of handwritten strokes. The user device assigns the further handwritten stroke to a respective one of the plurality of recognition units based on the spatial location of the further handwritten stroke relative to the plurality of recognition units.

ここで、ユーザデバイス上に手書き認識及び入力を提供するための、例示的ユーザインタフェースに注意を向ける。一部の実施形態では、この例示的ユーザインタフェースは、ユーザの手書き入力の、リアルタイムのストローク順序非依存式の手書き認識を提供する、マルチスクリプト手書き認識モデルに基づいて、ユーザデバイス上に提供される。一部の実施形態では、この例示的ユーザインタフェースは、手書き入力区域804、候補表示区域804、及びテキスト入力区域808を含む、(例えば、図8A及び図8Bに示されるような)例示的な手書き入力インタフェース802のユーザインタフェースである。一部の実施形態では、例示的な手書き入力インタフェース802はまた、削除ボタン、スペースバー、Enterボタン、キーボード切り替えボタンなどの、複数の制御要素1102も含む。1つ以上の他の区域及び/又は要素を、手書き入力インタフェース902内に提供して、以下で説明される更なる機能性を可能にすることができる。 Attention is now directed to an example user interface for providing handwriting recognition and input on a user device. In some embodiments, the exemplary user interface is provided on a user device based on a multi-script handwriting recognition model that provides real-time, stroke order-independent handwriting recognition of a user's handwriting input. . In some embodiments, the example user interface includes an example handwriting input area 804, a candidate display area 804, and a text input area 808 (e.g., as shown in FIGS. 8A and 8B). This is a user interface of input interface 802. In some embodiments, the example handwriting input interface 802 also includes a plurality of control elements 1102, such as a delete button, a spacebar, an enter button, a keyboard toggle button, etc. One or more other areas and/or elements may be provided within the handwriting input interface 902 to enable further functionality as described below.

本明細書で説明されるように、マルチスクリプト手書き認識モデルは、多くの異なるスクリプト及び言語での、数万個の文字の極めて幅広いレパートリーを有することが可能である。結果として、手書き入力に関しては、この認識モデルは、多数の出力文字を特定する可能性が極めて高く、それらの出力文字は全て、ユーザによって意図された文字であることの、適度に良好な尤度を有する。限られた表示区域を有するユーザデバイス上では、最初に認識結果のサブセットのみを提供する一方で、他の結果は、ユーザリクエストに応じて利用可能となるように保つことが有利である。 As described herein, multi-script handwriting recognition models can have an extremely wide repertoire of tens of thousands of characters in many different scripts and languages. As a result, for handwritten input, this recognition model is very likely to identify a large number of output characters, all of which have a reasonably good likelihood of being the character intended by the user. has. On user devices with limited display area, it is advantageous to initially provide only a subset of recognition results, while keeping other results available upon user request.

図11A~図11Gは、候補表示区域の通常ビュー内に認識結果のサブセットを表示し、それと共に、認識結果の残余を表示するための候補表示区域の拡張ビューを呼び出すためのアフォーダンスを表示するための、例示的ユーザインタフェースを示す。更には、候補表示区域の拡張ビュー内では、認識結果は、異なるカテゴリへと分類され、拡張ビュー内の異なるタブ付きページ上に表示される。 11A-11G are for displaying a subset of recognition results within a normal view of a candidate display area, along with an affordance for invoking an expanded view of the candidate display area for displaying the remainder of the recognition results. 1 shows an example user interface of . Furthermore, within the expanded view of the candidate display area, the recognition results are sorted into different categories and displayed on different tabbed pages within the expanded view.

図11Aは、例示的な手書き入力インタフェース802を示す。この手書き入力インタフェースは、手書き入力区域804、候補表示区域806、及びテキスト入力区域808を含む。1つ以上の制御要素1102もまた、手書き入力インタフェース1002内に含まれる。 FIG. 11A shows an example handwriting input interface 802. The handwriting input interface includes a handwriting input area 804, a candidate display area 806, and a text input area 808. One or more control elements 1102 are also included within handwriting input interface 1002.

図11Aに示されるように、候補表示区域806は、任意選択的に、1つ以上の認識結果を表示するための区域と、候補表示区域806の拡張バージョンを呼び出すためのアフォーダンス1104(例えば、拡張アイコン)とを含む。 As shown in FIG. 11A, candidate display area 806 optionally includes an area for displaying one or more recognition results and an affordance 1104 for invoking an expanded version of candidate display area 806 (e.g., expanded icon).

図11A~図11Cは、ユーザが、手書き入力区域804内に1つ以上の手書きストローク(例えば、ストローク1106、1108、及び1110)を提供すると、ユーザデバイスが、手書き入力区域804内に現時点で蓄積されているストロークに対応する、それぞれの認識結果のセットを特定して表示することを示す。図11Bに示されるように、ユーザが、第1のストローク1106を入力した後に、ユーザデバイスは、3つの認識結果1112、1114、及び1116(例えば、文字「/」、「1」、及び「,」)を特定して表示する。一部の実施形態では、候補表示区域内806内には、少数の候補文字が、各文字に関連付けられた認識信頼度に従った順序で表示される。 FIGS. 11A-11C illustrate that when a user provides one or more handwritten strokes (e.g., strokes 1106, 1108, and 1110) within handwriting input area 804, the user device Indicates that each set of recognition results corresponding to the stroke being specified is identified and displayed. As shown in FIG. 11B, after the user inputs the first stroke 1106, the user device generates three recognition results 1112, 1114, and 1116 (e.g., characters "/", "1", and ", ”) and display them. In some embodiments, a small number of candidate characters are displayed within candidate display area 806 in an order according to recognition confidence associated with each character.

一部の実施形態では、最上ランクの候補結果(例えば、「/」)が、テキスト入力区域808内の、例えばボックス1118内に、暫定的に表示される。ユーザは、その最上ランクの候補が意図された入力であることを、単純な確認入力で(例えば、「Enter」キーを押圧するか、又は手書き入力区域内にダブルタップジェスチャを提供することによって)、任意選択的に確認することができる。 In some embodiments, the top-ranked candidate result (eg, "/") is tentatively displayed within text entry area 808, such as in box 1118. The user confirms that the top-ranked candidate is the intended input with a simple confirmation input (e.g., by pressing the "Enter" key or providing a double-tap gesture within the handwriting input area). , can optionally be verified.

図11Cは、いずれかの候補認識結果をユーザが選択する前に、ユーザが、更に2つのストローク1108及び1110を、手書き入力区域804内に入力すると、それらの追加ストロークが、初期のストローク1106と共に手書き入力区域804内にレンダリングされ、候補結果が、現時点で蓄積されている手書き入力から特定される認識単位に、それらの変化を反映させるように、更新されることを示す。図11Cに示されるように、3つのストロークに基づいて、ユーザデバイスは、単一の認識単位を特定している。この単一の認識単位に基づいて、ユーザデバイスは、幾つかの認識結果1118~1124を特定して表示している。一部の実施形態では、候補表示区域806内に現時点で表示されている、これらの認識結果のうちの1つ以上(例えば、1118及び1122)は、それぞれ、現在の手書き入力に関する、複数の類似した見た目の候補文字の中から選択された、それぞれの代表的候補文字である。 FIG. 11C shows that if the user enters two more strokes 1108 and 1110 into the handwriting input area 804 before the user selects any candidate recognition result, those additional strokes along with the initial stroke 1106 It is rendered within the handwriting input area 804 to show that the candidate results are updated to reflect those changes in the recognition units identified from the currently stored handwriting input. As shown in FIG. 11C, based on the three strokes, the user device has identified a single recognition unit. Based on this single recognition unit, the user device identifies and displays several recognition results 1118-1124. In some embodiments, one or more of these recognition results (e.g., 1118 and 1122) currently displayed within candidate display area 806 each represent a plurality of similar recognition results for the current handwriting input. These are representative candidate characters selected from candidate characters with different appearances.

図11C及び図11Dに示されるように、ユーザが、アフォーダンス1104を(例えば、アフォーダンス1104の上での接触1126を伴う、タップジェスチャを使用して)選択すると、候補表示区域は、(例えば、図11Cに示される)通常ビューから、(例えば、図11Dに示される)拡張ビューに変化する。一部の実施形態では、この拡張ビューは、現在の手書き入力に関して特定されている認識結果(例えば、候補文字)の全てを示す。 As shown in FIGS. 11C and 11D, when the user selects affordance 1104 (e.g., using a tap gesture with contact 1126 on affordance 1104), the candidate display area (e.g., 11C) to an expanded view (eg, shown in FIG. 11D). In some embodiments, this expanded view shows all of the recognition results (eg, candidate characters) that have been identified for the current handwriting input.

一部の実施形態では、初期に表示された、候補表示区域806の通常ビューは、それぞれのスクリプト又は言語で使用される、最も一般的に使用される文字のみを示すが、その一方で、拡張ビューは、スクリプト又は言語で使用頻度が低い文字を含めた、全ての候補文字を示す。この候補表示区域の拡張ビューは、種々の方式で設計することができる。図11D~図11Gは、一部の実施形態に係る、拡張候補表示区域の例示的設計を示す。 In some embodiments, the initially displayed normal view of candidate display area 806 shows only the most commonly used characters used in the respective script or language, while the expanded The view shows all candidate characters, including characters that are used infrequently in the script or language. This expanded view of the candidate display area can be designed in various ways. 11D-11G illustrate example designs of expanded candidate display areas, according to some embodiments.

図11Dに示されるように、一部の実施形態では、拡張候補表示区域1128は、それぞれが、それぞれの候補文字のカテゴリを提示する、1つ以上のタブ付きページ(例えば、ページ1130、1132、1134、及び1136)を含む。図11Dに示されるタブ付き設計により、ユーザは、所望の文字のカテゴリを素早く見出し、次いで、その対応するタブ付きページ内で、ユーザが入力することを意図していた文字を見出すことが可能となる。 As shown in FIG. 11D, in some embodiments, expanded candidate display area 1128 includes one or more tabbed pages (e.g., pages 1130, 1132, 1134, and 1136). The tabbed design shown in FIG. 11D allows the user to quickly locate the desired character category and then, within its corresponding tabbed page, find the character that the user intended to enter. Become.

図11Dでは、第1のタブ付きページ1130は、一般的に使用される文字並びに低頻度の文字の双方を含めた、現時点で蓄積されている手書き入力に関して特定されている、全ての候補文字を表示する。図11Dに示されるように、タブ付きページ1130は、図11Cでの初期の候補表示区域806内に示されていた文字の全て、及び初期の候補表示区域806内には含まれなかった幾つかの更なる文字(例えば、「
」、「β」、「
」など)を含む。
In FIG. 11D, the first tabbed page 1130 displays all candidate characters that have been identified for the currently stored handwriting input, including both commonly used characters as well as less frequent characters. indicate. As shown in FIG. 11D, the tabbed page 1130 includes all of the characters shown in the initial candidate display area 806 in FIG. 11C, and some that were not included in the initial candidate display area 806. Further characters (for example, “
”, “β”, “
”, etc.).

一部の実施形態では、初期の候補表示区域806内に表示される文字は、特定のスクリプトに関連付けられる、一般的に使用される文字のセットからの文字(例えば、Unicode規格に従って符号化されているような、CJKスクリプトの基本ブロック中の全ての文字)のみを含む。一部の実施形態では、拡張候補表示区域1128内に表示される文字は、そのスクリプトに関連付けられる、低頻度の文字のセット(例えば、Unicode規格に従って符号化されているような、CJKスクリプトの拡張ブロック中の全ての文字)を更に含む。一部の実施形態では、拡張候補表示区域1128は、ユーザによって一般的に使用されない他のスクリプト、例えば、ギリシャ語スクリプト、アラビア語スクリプト、及び/又は絵文字スクリプトからの候補文字を更に含む。 In some embodiments, the characters displayed within the initial candidate display area 806 are characters from a set of commonly used characters associated with a particular script (e.g., encoded according to the Unicode standard). Contains only all characters in the basic blocks of CJK script, such as In some embodiments, the characters displayed within the expanded candidate display area 1128 are a set of infrequent characters associated with the script (e.g., an extension of the CJK script, such as encoded according to the Unicode standard). Also includes all characters in the block. In some embodiments, expanded candidate display area 1128 further includes candidate characters from other scripts not commonly used by users, such as Greek script, Arabic script, and/or emoji script.

一部の実施形態では、図11Dに示されるように、拡張候補表示区域1128は、それぞれが、それぞれの候補文字のカテゴリ(例えば、それぞれ、全ての文字、低頻度の文字、ラテンスクリプトからの文字、及び絵文字スクリプトからの文字)に対応する、それぞれのタブ付きページ1130、1132、1134、及び1138を含む。図11E~図11Gは、ユーザが、種々のタブ付きページのそれぞれを選択して、対応するカテゴリ内の候補文字を表出させることができることを示す。図11Eは、現在の手書き入力に対応する、低頻度の文字(例えば、CJKスクリプトの拡張ブロックからの文字)のみを示す。図11Fは、現在の手書き入力に対応する、ラテン文字及びギリシャ文字のみを示す。図11Gは、現在の手書き入力に対応する、絵文字のみを示す。 In some embodiments, as shown in FIG. 11D, the expanded candidate display areas 1128 each include a respective category of candidate characters (e.g., all characters, infrequent characters, characters from the Latin script, respectively). , and characters from the emoji script), respectively. 11E-11G illustrate that a user can select each of the various tabbed pages to reveal candidate characters within the corresponding category. FIG. 11E shows only infrequent characters (eg, characters from the extended block of the CJK script) that correspond to the current handwritten input. FIG. 11F shows only the Latin and Greek characters that correspond to the current handwritten input. FIG. 11G shows only the pictograms that correspond to the current handwritten input.

一部の実施形態では、拡張候補表示区域1128は、それぞれのタブ付きページ内の候補文字を、それぞれの基準に基づいて(例えば、表音式綴りに基づいて、ストロークの数に基づいて、及び部首などに基づいて)並べ替えるための、1つ以上のアフォーダンスを更に含む。認識信頼度スコア以外の基準に従って、各カテゴリ内の候補文字を並べ替える能力は、テキスト入力に関して所望の候補文字を素早く見出すための、更なる能力をユーザに提供する。 In some embodiments, the expanded candidate display area 1128 displays candidate characters in each tabbed page based on respective criteria (e.g., based on phonetic spelling, based on number of strokes, and and one or more affordances for sorting (based on radicals, etc.). The ability to sort candidate characters within each category according to criteria other than recognition confidence score provides users with additional ability to quickly find desired candidate characters for text input.

図11H~図11Kは、一部の実施形態では、類似した見た目の候補文字をグループ化することが可能であり、類似した見た目の候補文字の各グループからの、代表的文字のみが、初期の候補表示区域806内に提示されることを示す。本明細書で説明されるマルチスクリプト認識モデルは、所定の手書き入力に関して、ほぼ等しく有効な多くの候補文字を作り出すことができるため、この認識モデルは、1つの候補を、別の類似した見た目の候補を犠牲にして削除することが、必ずしも可能であるとは限らない。限られた表示区域を有するデバイス上では、多くの類似した見た目の候補を、一度に全て表示することは、ユーザが正しい文字を選び出すために役立つものではないが、これは、微細な区別を容易には視認することができず、また、所望の文字をユーザが視認することができる場合であっても、その文字を、極めて混雑した表示から、指又はスタイラスを使用して選択することは、困難である恐れがあるためである。 FIGS. 11H-11K illustrate that in some embodiments, similar-looking candidate characters can be grouped together, and only representative characters from each group of similar-looking candidate characters are initialized. Indicates that the candidate is presented within the candidate display area 806. Because the multi-script recognition model described herein can produce many candidate characters that are approximately equally valid for a given handwriting input, the recognition model replaces one candidate with another similar-looking character. It is not always possible to sacrifice candidates for deletion. On devices with limited display area, displaying many similar-looking candidates all at once does not help the user choose the correct character, but it does make it easier to make small distinctions. and even if the desired character is visible to the user, selecting it from a very crowded display using a finger or stylus is difficult. This is because it may be difficult.

一部の実施形態では、上記の問題に対処するために、ユーザデバイスは、互いに高い類似性を有する候補文字を(例えば、類似した見た目の文字のコンコーダンス若しくは辞書、又は画像に基づく何らかの基準に従って)特定し、それらの候補文字を、それぞれのグループへとグループ化する。一部の実施形態では、所定の手書き入力に関する候補文字のセットから、類似した見た目の文字の1つ以上グループを特定することができる。一部の実施形態では、ユーザデバイスは、同じグループ内の複数の類似した見た目の候補文字の中から、代表的候補文字を特定しており、その代表的候補のみを、初期の候補表示区域806内に表示する。一般的に使用される文字が、いずれの他の候補文字にも十分に類似して見えない場合には、その文字自体が表示される。一部の実施形態では、図11Hに示されるように、各グループの代表的候補文字(例えば、候補文字1118「
」及び1122「T」)は、いずれのグループにも属さない候補文字(例えば、候補文字1120「
」及び1124「J」)とは異なる方式で(例えば、太枠ボックス内に)表示される。一部の実施形態では、グループの代表的文字を選択するための基準は、そのグループ内での候補文字の相対的な使用頻度に基づく。一部の実施形態では、他の基準を使用することができる。
In some embodiments, to address the above issues, the user device selects candidate characters that have a high degree of similarity to each other (e.g., according to a concordance or dictionary of similar-looking characters, or some image-based criteria). identify and group those candidate characters into their respective groups. In some embodiments, one or more groups of similar-looking characters may be identified from a set of candidate characters for a given handwriting input. In some embodiments, the user device has identified a representative candidate character among a plurality of similar-looking candidate characters within the same group, and displays only the representative candidate in the initial candidate display area 806. Display within. If a commonly used character does not appear sufficiently similar to any other candidate character, then the character itself is displayed. In some embodiments, a representative candidate character of each group (e.g., candidate character 1118 "
” and 1122 “T”) are candidate characters that do not belong to any group (e.g., candidate character 1120 “
” and 1124 “J”) (e.g., in a thick-framed box). In some embodiments, the criteria for selecting a representative character of a group is based on the relative frequency of usage of the candidate character within the group. In some embodiments, other criteria may be used.

一部の実施形態では、代表的文字がユーザに対して表示されると、ユーザは、任意選択的に、候補表示区域806を拡大し、類似した見た目の候補文字を、拡大ビュー内に示すことができる。一部の実施形態では、特定の代表的文字の選択により、その選択された代表的文字と同じグループ内の候補文字のみの拡大ビューを、生じさせることができる。 In some embodiments, once the representative character is displayed to the user, the user can optionally enlarge the candidate display area 806 to show similar-looking candidate characters in the enlarged view. Can be done. In some embodiments, selection of a particular representative character can result in an expanded view of only candidate characters within the same group as the selected representative character.

類似した見た目の候補の拡大ビューを提供するための、様々な設計が可能である。図11H~図11Kは、代表的候補文字(例えば、代表的文字1118)の上で検出された既定のジェスチャ(例えば、拡大ジェスチャ)によって、代表的候補文字の拡大ビューが呼び出される、一実施形態を示す。拡大ビューを呼び出すための既定のジェスチャ(例えば、拡大ジェスチャ)は、テキスト入力に関する代表的文字を選択するための既定のジェスチャ(例えば、タップジェスチャ)とは異なる。 Various designs are possible for providing a magnified view of similar-looking candidates. 11H-11K illustrate one embodiment in which a predetermined gesture (e.g., a zoom gesture) detected on a representative candidate character (e.g., representative character 1118) invokes a magnified view of the representative candidate character. shows. The default gesture for invoking a magnified view (eg, a zoom gesture) is different from the default gesture for selecting a representative character for text input (eg, a tap gesture).

図11H及び図11Iに示されるように、ユーザが、第1の代表的文字1118の上に、(例えば、互いに離れる方向で移動する、2つの接触1138及び1140によって示されるような)拡大ジェスチャを提供すると、代表的文字1118を表示する区域が拡大され、3つの類似した見た目の候補文字(例えば、「
」、「
」、及び「
」)が、同じ拡大グループ内には存在しない他の候補文字(例えば、「
」)と比較して、拡大されたビュー内に(例えば、それぞれ、拡大されたボックス1142、1144、及び1146内に)提示される。
As shown in FIGS. 11H and 11I, the user makes a magnification gesture (e.g., as indicated by two contacts 1138 and 1140 moving away from each other) over the first representative character 1118. When provided, the area displaying representative character 1118 is enlarged to include three similar-looking candidate characters (e.g., “
”, “
",as well as"
'') but other candidate characters that are not in the same expansion group (for example, ``
”) are presented in an enlarged view (e.g., in enlarged boxes 1142, 1144, and 1146, respectively).

図11Iに示されるように、拡大されたビュー内に提示される場合、3つの類似した見た目の候補文字(例えば、「
」、「
」、及び「
」)の微細な区別は、ユーザによって、より容易に視認することができる。これらの3つの候補文字のうちの1つが、意図された文字入力である場合には、ユーザは、例えば、その文字が表示されている区域をタッチすることによって、その候補文字を選択することができる。図11J及び図11Kに示されるように、ユーザは、拡大ビュー内のボックス1144内に示される第2の文字(例えば、「
」)を、(接触1148で)選択している。これに応じて、選択された文字(例えば、「
」)が、テキスト入力区域808内に、カーソルによって示される挿入ポイントで入力される。図11Kに示されるように、文字が選択されると、手書き入力区域804内の手書き入力、及び候補表示区域806(又は、候補表示区域の拡大ビュー)内の候補文字は、後続の手書き入力のために消去される。
As shown in FIG. 11I, three similar-looking candidate characters (e.g., “
”, “
",as well as"
”) can be more easily seen by the user. If one of these three candidate characters is the intended character input, the user can select that candidate character, for example by touching the area where that character is displayed. can. As shown in FIGS. 11J and 11K, the user selects the second character (e.g., "
”) is selected (at contact 1148). Depending on this, the selected character (e.g. "
”) is entered into the text entry area 808 at the insertion point indicated by the cursor. As shown in FIG. 11K, once a character is selected, the handwriting input in the handwriting input area 804 and the candidate characters in the candidate display area 806 (or an enlarged view of the candidate display area) are used for subsequent handwriting input. will be deleted for.

一部の実施形態では、ユーザが、第1の代表的候補文字1142の拡大ビュー内に、所望の候補文字を視認しない場合には、ユーザは、任意選択的に、同じジェスチャを使用して、候補表示区域806内に表示された他の文字を拡大することができる。一部の実施形態では、候補表示区域806内の別の代表的文字を拡大して、現在提示されている拡大ビューは、自動的に通常ビューに復元される。一部の実施形態では、ユーザは、任意選択的に、縮小ジェスチャを使用して、現在拡大されているビューを通常ビューに復元する。一部の実施形態では、ユーザは、候補表示区域806を、(例えば、左に、又は右に)スクロールさせて、候補表示区域806内で不可視の他の候補文字を表出させることができる。 In some embodiments, if the user does not see the desired candidate character within the expanded view of the first representative candidate character 1142, the user optionally uses the same gesture to Other characters displayed within candidate display area 806 can be enlarged. In some embodiments, by enlarging another representative character within candidate display area 806, the currently presented enlarged view is automatically restored to the normal view. In some embodiments, the user optionally uses a zoom out gesture to restore the currently zoomed view to the normal view. In some embodiments, the user can scroll the candidate display area 806 (eg, to the left or to the right) to reveal other candidate characters that are not visible within the candidate display area 806.

図12A及び図12Bは、認識結果の第1のサブセットが、初期の候補表示区域内に提示される一方で、認識結果の第2のサブセットが、ユーザによって具体的に呼び出されるまでは隠されて見えない、拡張候補表示区域内に提示される、例示的プロセス1200の流れ図である。例示的プロセス1200では、デバイスは、手書き入力に関する複数の手書き認識結果から、既定の閾値を超える視覚的類似性レベルを有する、認識結果のサブセットを特定する。次いで、ユーザデバイスは、その認識結果のサブセットから、代表的認識結果を選択し、ディスプレイの候補表示区域内に、選択された代表的認識結果を表示する。プロセス1200は、図11A~図11Kに示される。 12A and 12B show that a first subset of recognition results is presented within the initial candidate display area, while a second subset of recognition results is hidden until specifically invoked by the user. 12 is a flowchart of an example process 1200 presented in a hidden expanded candidate display area. In the example process 1200, the device identifies, from multiple handwriting recognition results for handwriting input, a subset of recognition results that have a level of visual similarity that exceeds a predetermined threshold. The user device then selects a representative recognition result from the subset of recognition results and displays the selected representative recognition result in a candidate display area of the display. Process 1200 is shown in FIGS. 11A-11K.

図12Aに示されるように、例示的プロセス1200では、ユーザデバイスは、ユーザから手書き入力を受信する(1202)。この手書き入力は、手書き入力インタフェース(例えば、図11Cでの802)の手書き入力区域(例えば、図11Cでの806)内に提供される、1つ以上の手書きストローク(例えば、図11Cでの1106、1108、1110)を含む。ユーザデバイスは、手書き認識モデルに基づいて、その手書き入力に関する複数の出力文字(例えば、図11Cの、タブ付きページ1130内に示される文字)を特定する(1204)。ユーザデバイスは、既定のカテゴリ化基準に基づいて、それらの複数の出力文字を、2つ以上のカテゴリへと分類する(1206)。一部の実施形態では、この既定のカテゴリ化基準は、それぞれの文字が、一般的に使用される文字であるか、又は低頻度の文字であるかを判定する(1208)。 As shown in FIG. 12A, in example process 1200, a user device receives handwritten input from a user (1202). This handwriting input includes one or more handwritten strokes (e.g., 1106 in FIG. 11C) provided within a handwriting input area (e.g., 806 in FIG. 11C) of a handwriting input interface (e.g., 802 in FIG. 11C). , 1108, 1110). The user device identifies a plurality of output characters (eg, the characters shown in tabbed page 1130 in FIG. 11C) for the handwriting input based on the handwriting recognition model (1204). The user device sorts the plurality of output characters into two or more categories based on predefined categorization criteria (1206). In some embodiments, the predefined categorization criteria determines whether each character is a commonly used character or a low frequency character (1208).

一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの候補表示区域(例えば、図11Cに示されるような806)の初期ビュー内に、2つ以上のカテゴリのうちの第1のカテゴリ(例えば、一般的に使用される文字)内の、それぞれの出力文字を表示し(1210)、この候補表示区域の初期ビューは、候補表示区域の拡張ビュー(例えば、図11Dでの1128)を呼び出すためのアフォーダンス(例えば、図11Cでの1104)と同時に提供される。 In some embodiments, the user device displays a first category of the two or more categories (e.g., 806 as shown in FIG. , commonly used characters) (1210), and this initial view of the candidate display area is used to invoke an expanded view of the candidate display area (e.g., 1128 in FIG. 11D). (eg, 1104 in FIG. 11C).

一部の実施形態では、ユーザデバイスは、例えば、図11Cに示されるように、拡張ビューを呼び出すためのアフォーダンスを選択する、ユーザ入力を受信する(1212)。このユーザ入力に応じて、ユーザデバイスは、例えば、図11Dに示されるように、候補表示区域の拡張ビュー内に、第1のカテゴリ内のそれぞれの出力文字、及び、候補表示区域の初期ビュー内には従前に表示されていなかった、2つ以上のカテゴリのうちの少なくとも第2のカテゴリ内の、それぞれの出力文字を表示する(1214)。 In some embodiments, the user device receives user input selecting an affordance for invoking an expanded view (1212), for example, as shown in FIG. 11C. In response to this user input, the user device displays each output character in the first category in an expanded view of the candidate display area and in the initial view of the candidate display area, as shown in FIG. 11D, for example. displays each output character in at least a second category of the two or more categories that was not previously displayed (1214).

一部の実施形態では、第1のカテゴリ内のそれぞれの文字は、一般的に使用される文字の辞書内に見出される文字であり、第2のカテゴリ内のそれぞれの文字は、低頻度の文字の辞書内に見出される文字である。一部の実施形態では、一般的に使用される文字の辞書、及び低頻度の文字の辞書は、ユーザデバイスに関連付けられる使用履歴に基づいて、動的に調節又は更新される。 In some embodiments, each character in the first category is a character found in a dictionary of commonly used characters, and each character in the second category is a low-frequency character. is a character found in the dictionary. In some embodiments, the dictionary of commonly used characters and the dictionary of infrequent characters are dynamically adjusted or updated based on usage history associated with the user device.

一部の実施形態では、ユーザデバイスは、それらの複数の出力文字から、既定の類似性基準に従って(例えば、類似文字の辞書に基づいて、又は何らかの空間的に導出される特徴に基づいて)、互いに視覚的に類似する文字のグループを特定する(1216)。一部の実施形態では、ユーザデバイスは、視覚的に類似する文字のグループから、既定の選択基準に基づいて(例えば、履歴的な使用頻度に基づいて)、代表的文字を選択する。一部の実施形態では、この既定の選択基準は、そのグループ内での、文字の相対的な使用頻度に基づく。一部の実施形態では、この既定の選択基準は、デバイスに関連付けられる、好ましい入力言語に基づく。一部の実施形態では、代表的候補は、各候補がユーザによる意図された入力であることの尤度を示す、他の因子に基づく。これらの因子としては、例えば、その候補文字が、ユーザのデバイス上に現在インストールされているソフトキーボードに関するスクリプトに、属しているか否か、又は、その候補文字が、ユーザ若しくはユーザデバイスに関連付けられる特定の言語での、最も一般的に使用される文字のセットの中に存在するか否かなどが挙げられる。 In some embodiments, the user device determines, from the plurality of output characters, according to a predetermined similarity criterion (e.g., based on a dictionary of similar characters or based on some spatially derived feature). Groups of characters that are visually similar to each other are identified (1216). In some embodiments, the user device selects a representative character from a group of visually similar characters based on predetermined selection criteria (eg, based on historical frequency of usage). In some embodiments, this predetermined selection criterion is based on the relative frequency of usage of the characters within the group. In some embodiments, this predetermined selection criteria is based on the preferred input language associated with the device. In some embodiments, the representative candidates are based on other factors that indicate the likelihood that each candidate is the intended input by the user. These factors include, for example, whether the candidate character belongs to a soft keyboard script currently installed on the user's device, or whether the candidate character is associated with a specific user or user device. for example, whether it is in the most commonly used character set for that language.

一部の実施形態では、ユーザデバイスは、候補表示区域(例えば、図11Hでの806)の初期ビュー内に、代表的文字(例えば、「
」)を、その視覚的に類似する文字のグループ内の他の文字(例えば、「
」、「
」)の代わりに表示する(1220)。一部の実施形態では、各候補文字が、グループの代表的文字であるか、又はいずれのグループ内にも存在しない通常の候補文字であるかを示すために、候補表示区域の初期ビュー内に、視覚的指示(例えば、選択的な視覚的強調表示、特殊な背景)が提供される。一部の実施形態では、ユーザデバイスは、例えば、図11Hに示されるように、候補表示区域の初期ビュー内に表示された代表的文字を対象とする、既定の拡大入力(例えば、拡大ジェスチャ)を、ユーザから受信する(1222)。一部の実施形態では、この既定の拡大入力の受信に応じて、ユーザデバイスは、例えば、図11Iに示されるように、代表的文字の拡大されたビューと、視覚的に類似する文字のグループ内の1つ以上の他の文字の、それぞれの拡大されたビューとを、同時に表示する(1224)。
In some embodiments, the user device displays a representative character (e.g., "
”) to other characters in its visually similar group of characters (e.g., “
”, “
) (1220). In some embodiments, each candidate character is displayed within the initial view of the candidate display area to indicate whether it is a representative character of a group or a regular candidate character that does not exist within any group. , visual instructions (e.g., selective visual highlighting, special backgrounds) are provided. In some embodiments, the user device performs a predefined magnification input (e.g., a magnification gesture) that targets the representative character displayed within the initial view of the candidate display area, e.g., as shown in FIG. 11H. is received from the user (1222). In some embodiments, in response to receiving this default magnification input, the user device displays a magnified view of the representative character and a group of visually similar characters, as shown in FIG. 11I, for example. simultaneously displaying (1224) each magnified view of one or more other characters within.

一部の実施形態では、この既定の拡大入力は、候補表示区域内に表示された代表的文字の上で検出される、拡大ジェスチャである。一部の実施形態では、この既定の拡大入力は、候補表示区域内に表示された代表的文字の上で検出され、既定の閾値時間よりも長く持続される、接触である。一部の実施形態では、グループを拡大するための、この持続的接触は、テキスト入力に関する代表的文字を選択するタップジェスチャよりも、長い閾値持続時間を有する。 In some embodiments, this default magnification input is a magnification gesture detected over the representative character displayed within the candidate display area. In some embodiments, the predetermined magnification input is a touch detected on the representative character displayed within the candidate display area and sustained for more than a predetermined threshold time. In some embodiments, this sustained touch to expand the group has a longer threshold duration than the tap gesture to select representative characters for text input.

一部の実施形態では、各代表的文字は、その類似した見た目の候補文字のグループの拡大ビューを呼び出すための、対応のアフォーダンス(例えば、対応の拡大ボタン)と同時に表示される。一部の実施形態では、既定の拡大入力は、代表的文字に関連付けられる、対応のアフォーダンスの選択である。 In some embodiments, each representative character is displayed simultaneously with a corresponding affordance (eg, a corresponding zoom button) to invoke a magnified view of the group of similar-looking candidate characters. In some embodiments, the default magnification input is a selection of corresponding affordances associated with the representative character.

本明細書で説明されるように、一部の実施形態では、マルチスクリプト手書き認識モデルのレパートリーは、絵文字スクリプトを含む。手書き入力認識モジュールは、ユーザの手書き入力に基づいて、絵文字を認識することができる。一部の実施形態では、手書き認識モジュールは、手書きから直接特定される絵文字と、その特定される絵文字を表す、自然人間言語での文字又は語との双方を提示する。一部の実施形態では、手書き入力モジュールは、ユーザの手書き入力に基づいて、自然人間言語での文字又は語を認識し、その認識された文字又は語と、その認識された文字又は語に対応する絵文字との双方を提示する。換言すれば、手書き入力モジュールは、手書き入力インタフェースから絵文字キーボードに切り替えることなく、絵文字を入力するための方法を提供する。更には、手書き入力モジュールはまた、正規の自然言語の文字を、手で絵文字を描くことによって入力するための方法も提供する。図13A~図13Eは、絵文字及び正規の自然言語の文字を入力する、これらの種々の方法を示す、例示的ユーザインタフェースを提供する。 As described herein, in some embodiments, the repertoire of multi-script handwriting recognition models includes emoji scripts. The handwriting input recognition module can recognize emoticons based on a user's handwritten input. In some embodiments, the handwriting recognition module presents both the glyphs identified directly from the handwriting and the characters or words in natural human language that represent the identified glyphs. In some embodiments, the handwriting input module recognizes characters or words in a natural human language based on the user's handwritten input, and corresponds to the recognized characters or words and the recognized characters or words. Present both sides with emoji. In other words, the handwriting input module provides a way to input emojis without switching from a handwriting input interface to an emoji keyboard. Additionally, the handwriting input module also provides a method for inputting regular natural language characters by hand-drawing glyphs. 13A-13E provide example user interfaces that illustrate these various methods of entering emoji and regular natural language characters.

図13Aは、チャットアプリケーションの下で呼び出された、例示的な手書き入力インタフェース802を示す。手書き入力インタフェース802は、手書き入力区域804、候補表示区域806、及びテキスト入力区域808を含む。一部の実施形態では、ユーザが、テキスト入力区域808内のテキスト構成に満足すると、ユーザは、現在のチャットセッションの別の参加者に、そのテキスト構成を送信するように選択することができる。チャットセッションの対話履歴は、対話パネル1302内に示される。この実施例では、ユーザは、対話パネル1302内に表示されたチャットメッセージ1304(例えば、「Happy Birthday
」)を受信している。
FIG. 13A shows an example handwriting input interface 802 invoked under a chat application. Handwriting input interface 802 includes a handwriting input area 804 , a candidate display area 806 , and a text input area 808 . In some embodiments, once the user is satisfied with the text composition in text entry area 808, the user can choose to send the text composition to another participant in the current chat session. The interaction history of the chat session is shown within the interaction panel 1302. In this illustrative example, the user may receive a chat message 1304 (e.g., "Happy Birthday") displayed within the interaction panel 1302.
”) is being received.

図13Bに示されるように、ユーザは、手書き入力区域804内に、英語の語「Thanks」に関する手書き入力1306を提供している。手書き入力1306に応じて、ユーザデバイスは、幾つかの候補認識結果(例えば、認識結果1308、1310、及び1312)を特定している。最上ランクの認識結果1303が、テキスト入力区域808内のボックス1314内に、暫定的に入力されている。 As shown in FIG. 13B, the user has provided handwritten input 1306 within handwritten input area 804 for the English word "Thanks." In response to handwriting input 1306, the user device has identified several candidate recognition results (eg, recognition results 1308, 1310, and 1312). The highest ranked recognition result 1303 has been provisionally entered in box 1314 within text input area 808 .

図13Cに示されるように、ユーザが、手書き入力区域806内に、手書きの語「Thanks」を入力した後、次いで、ユーザは、手書き入力区域806内に、ストローク1316(例えば、丸い円を下に有する、細長い円)で、様式化された感嘆符を描いている。ユーザデバイスは、この追加ストローク1316が、手書き入力区域806内の蓄積された手書きストローク1306から従前に認識された他の認識単位とは、別個の認識単位を形成することを認識する。この新たに入力された認識単位(すなわち、ストローク1316によって形成される認識単位)に基づいて、ユーザデバイスは、手書き認識モデルを使用して、絵文字(例えば、様式化された「!」)を特定する。この認識された絵文字に基づいて、ユーザデバイスは、候補表示区域806内に、第1の認識結果1318(例えば、様式化された「!」を有する「Thanks!」)を提示する。更には、ユーザデバイスはまた、同じくその新たに入力された認識単位に視覚的に類似する、数字「8」も特定する。この認識された数字に基づいて、ユーザデバイスは、候補表示区域806内に、第2の認識結果1322(例えば、「Thanks 8」)を提示する。更には、特定された絵文字(例えば、様式化された「!」)に基づいて、ユーザデバイスはまた、その絵文字に対応する正規の文字(例えば、正規の文字「!」)も特定する。この間接的に認識された正規の文字に基づいて、ユーザデバイスは、候補表示区域806内に、第3の認識結果1320(例えば、正規の「!」を有する「Thanks!」)を提示する。この時点で、ユーザは、候補認識結果1318、1320、及び1322のうちの任意の1つを選択して、テキスト入力区域808内に、その候補認識結果を入力することができる。 As shown in FIG. 13C, after the user enters the handwritten word "Thanks" within the handwriting input area 806, the user then enters a stroke 1316 (e.g., a rounded circle down) within the handwriting input area 806. (with an elongated circle) depicting a stylized exclamation point. The user device recognizes that this additional stroke 1316 forms a separate recognition unit from other recognition units previously recognized from the accumulated handwritten strokes 1306 within the handwriting input area 806. Based on this newly input recognition unit (i.e., the recognition unit formed by stroke 1316), the user device uses the handwriting recognition model to identify the emoticon (e.g., a stylized "!") do. Based on the recognized emoji, the user device presents a first recognition result 1318 (eg, “Thanks!” with a stylized “!”) in the candidate display area 806. Furthermore, the user device also identifies the number "8", which is also visually similar to the newly entered recognition unit. Based on this recognized digit, the user device presents a second recognition result 1322 (eg, “Thanks 8”) within candidate display area 806. Further, based on the identified emoji (eg, a stylized "!"), the user device also identifies a regular character (eg, a regular character "!") that corresponds to the emoji. Based on this indirectly recognized regular character, the user device presents a third recognition result 1320 (eg, "Thanks!" with a regular "!") in the candidate display area 806. At this point, the user can select any one of candidate recognition results 1318, 1320, and 1322 and enter that candidate recognition result into text entry area 808.

図13Dに示されるように、ユーザは、手書き入力区域806内に、更なる手書きストローク1324を継続して提供する。今回、ユーザは、様式化された感嘆符の後に続けて、ハート記号を描いている。この新たな手書きストローク1324に応じて、ユーザデバイスは、その新たに提供された手書きストローク1324が、更に別の新たな認識単位を形成することを認識する。この新たな認識単位に基づいて、ユーザデバイスは、その新たな認識単位に関する候補文字として、絵文字「
」、及び代替的に数字「0」を特定する。新たな認識単位から認識された、これらの新たな候補文字に基づいて、ユーザデバイスは、2つの更新された候補認識結果1326及び1330(例えば、「Thanks
」及び「Thanks 80」)を提示する。一部の実施形態では、ユーザデバイスは、特定された絵文字(例えば、「
」)に対応する、正規の文字又は語(例えば、「Love」)を更に特定する。認識された絵文字に関する、その特定された正規の文字又は語に基づいて、ユーザデバイスは、認識された絵文字が、その対応する正規の文字又は語で置き換えられた、第3の認識結果1328を提示する。図13Dに示されるように、認識結果1328では、絵文字「
」が、通常の感嘆符「!」で置き換えられ、絵文字「
」が、正規の文字又は語「Love」で置き換えられている。
As shown in FIG. 13D, the user continues to provide additional handwriting strokes 1324 within handwriting input area 806. This time, the user has drawn a stylized exclamation mark followed by a heart symbol. In response to this new handwritten stroke 1324, the user device recognizes that the newly provided handwritten stroke 1324 forms yet another new recognition unit. Based on this new recognition unit, the user device selects the emoji "
”, and alternatively the number “0”. Based on these new candidate characters recognized from the new recognition unit, the user device generates two updated candidate recognition results 1326 and 1330 (e.g., “Thanks
” and “Thanks 80”). In some embodiments, the user device identifies an emoji (e.g., "
”) that corresponds to the canonical characters or words (eg, “Love”). Based on the identified canonical character or word for the recognized emoji, the user device presents a third recognition result 1328 in which the recognized emoji is replaced with its corresponding canonical character or word. do. As shown in FIG. 13D, in the recognition result 1328, the pictogram "
” is replaced with the regular exclamation mark “!” and the emoji “!”
” has been replaced with the regular letter or word “Love.”

図13Eに示されるように、ユーザは、候補認識結果のうちの1つ(例えば、混合スクリプトのテキスト「Thanks
」を示す候補結果1326)を選択しており、この選択された認識結果のテキストが、テキスト入力区域808内に入力され、その後、チャットセッションの他の参加者に送信される。メッセージの吹き出し1332は、対話パネル1302内に、そのメッセージのテキストを示す。
As shown in Figure 13E, the user selects one of the candidate recognition results (e.g., the text "Thanks" of the mixed script).
” and the text of this selected recognition result is entered into the text entry area 808 and then sent to the other participants in the chat session. A message bubble 1332 shows the text of the message within the dialog panel 1302.

図14は、ユーザが手書き入力を使用して絵文字を入力する、例示的プロセス1400の流れ図である。図13A~図13Eは、一部の実施形態に係る、例示的プロセス1400を示す。 FIG. 14 is a flow diagram of an example process 1400 in which a user enters an emoji using handwritten input. 13A-13E illustrate an example process 1400, according to some embodiments.

プロセス1400では、ユーザデバイスは、ユーザから手書き入力を受信する(1402)。この手書き入力は、手書き入力インタフェースの手書き入力区域内に提供される、複数の手書きストロークを含む。一部の実施形態では、ユーザデバイスは、手書き認識モデルに基づいて、その手書き入力から複数の出力文字を認識する(1404)。一部の実施形態では、それらの出力文字は、少なくとも第1の絵文字(例えば、図13Dでの、様式化された感嘆符「
」又は絵文字「
」)と、自然人間言語のスクリプトからの少なくとも第1の文字(例えば、図13Dでの、語「Thanks」からの文字)とを含む。一部の実施形態では、ユーザデバイスは、例えば、図13Dに示されるように、それらの第1の絵文字(例えば、図13Dでの、様式化された感嘆符「
」又は絵文字「
」)と自然人間言語のスクリプトからの第1の文字(例えば、図13Dでの、語「Thanks」からの文字)とを含む認識結果(例えば、図13Dでの結果1326)を、手書き入力インタフェースの候補表示区域内に表示する(1406)。
In process 1400, a user device receives (1402) handwritten input from a user. The handwriting input includes a plurality of handwritten strokes provided within a handwriting input area of the handwriting input interface. In some embodiments, the user device recognizes (1404) a plurality of output characters from its handwriting input based on a handwriting recognition model. In some embodiments, those output characters include at least the first glyph (e.g., the stylized exclamation mark "
” or emoji “
”) and at least a first character from a natural human language script (eg, the character from the word “Thanks” in FIG. 13D). In some embodiments, the user device displays their first glyph (e.g., the stylized exclamation mark "
” or emoji “
”) and a first character from the natural human language script (e.g., the character from the word “Thanks” in FIG. 13D), the recognition result (e.g., result 1326 in FIG. 13D) is input to the handwriting input interface. (1406).

一部の実施形態では、手書き認識モデルに基づいて、ユーザデバイスは、任意選択的に、その手書き入力から、少なくとも第1の意味的単位(例えば、語「Thanks」)を認識し(1408)、この第1の意味的単位は、それぞれの人間言語での、それぞれの意味論的意味を伝達することが可能な、それぞれの文字、語、又は語句を含む。一部の実施形態では、ユーザデバイスは、手書き入力から認識された第1の意味的単位(例えば、語「Thanks」)に関連付けられる、第2の絵文字(例えば、「握手」の絵文字)を特定する(1410)。一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの候補表示区域内に、第1の意味的単位(例えば、語「Thanks」)から特定された第2の絵文字を少なくとも含む、第2の認識結果(例えば、「握手」の絵文字の後に続けて「
」及び「
」の絵文字を示す、認識結果)を表示する(1412)。一部の実施形態では、第2の認識結果を表示することは、少なくとも第1の意味的単位(例えば、語「Thanks」)を含む第3の認識結果(例えば、認識結果「Thanks
」)と同時に、第2の認識結果を表示することを更に含む。
In some embodiments, based on the handwriting recognition model, the user device optionally recognizes (1408) at least a first semantic unit (e.g., the word "Thanks") from the handwriting input; This first semantic unit includes each letter, word, or phrase capable of conveying a respective semantic meaning in a respective human language. In some embodiments, the user device identifies a second emoji (e.g., a "handshake" emoji) that is associated with a first semantic unit (e.g., the word "Thanks") recognized from the handwritten input. (1410). In some embodiments, the user device displays a second glyph that includes at least a second glyph identified from the first semantic unit (e.g., the word "Thanks") within the candidate display area of the handwriting input interface. Recognition results (for example, after the "handshake" emoji, "
"as well as"
” is displayed (1412). In some embodiments, displaying the second recognition result includes displaying a third recognition result (e.g., the recognition result "Thanks") that includes at least the first semantic unit (e.g., the word "Thanks").
'') and simultaneously displaying the second recognition result.

一部の実施形態では、ユーザは、候補表示区域内に表示された第1の認識結果を選択する、ユーザ入力を受信する。一部の実施形態では、このユーザ入力に応じて、ユーザデバイスは、手書き入力インタフェースのテキスト入力区域内に、その選択された第1の認識結果のテキストを入力し、このテキストは、少なくとも、第1の絵文字と、自然人間言語のスクリプトからの第1の文字とを含む。換言すれば、ユーザは、自然言語キーボードと絵文字キーボードとを切り替えることなく、手書き入力区域内の単一の手書き入力(複数のストロークを含む手書き入力ではあるが)を使用して、混合スクリプトのテキスト入力を入力することが可能である。 In some embodiments, a user receives user input selecting a first recognition result displayed within the candidate display area. In some embodiments, in response to the user input, the user device enters text of the selected first recognition result within the text input area of the handwriting input interface, the text being at least the first recognition result. 1 glyph and a first character from a natural human language script. In other words, the user can write text in a mixed script using a single handwriting input (albeit a handwriting input containing multiple strokes) within the handwriting input area without having to switch between the natural language keyboard and the emoji keyboard. It is possible to enter input.

一部の実施形態では、手書き認識モデルは、少なくとも3つの非重複スクリプトの文字に対応する書き込みサンプルを含む、マルチスクリプト訓練コーパスについて訓練されており、それらの3つの非重複スクリプトは、絵文字、中国文字、及びラテンスクリプトのセットを含む。 In some embodiments, the handwriting recognition model is trained on a multi-script training corpus that includes writing samples corresponding to characters in at least three non-overlapping scripts, where the three non-overlapping scripts include emoji, Chinese Contains a set of characters, and Latin script.

一部の実施形態では、ユーザデバイスは、手書き入力から直接認識された第1の絵文字(例えば、「
」の絵文字)に対応する、第2の意味的単位(例えば、語「Love」)を特定する(1414)。一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの候補表示区域内に、第1の絵文字(例えば、「
」の絵文字)から特定された第2の意味的単位(例えば、語「Love」)を少なくとも含む、第4の認識結果(例えば、図13Dでの1328)を表示する(1416)。一部の実施形態では、ユーザデバイスは、図13Dに示されるように、候補表示区域内に、第1の認識結果(例えば、結果「Thanks
」)と同時に、第4の認識結果(例えば、結果1328「Thanks!Love」)を表示する。
In some embodiments, the user device detects a first emoji (e.g., "
A second semantic unit (eg, the word "Love") is identified (1414) that corresponds to the word "Love" (pictogram). In some embodiments, the user device displays a first emoji (e.g., "
A fourth recognition result (e.g., 1328 in FIG. 13D) is displayed (1416), including at least the second semantic unit (e.g., the word "Love") identified from the emoji). In some embodiments, the user device displays a first recognition result (e.g., result "Thanks" in the candidate display area, as shown in FIG. 13D).
"), and at the same time, a fourth recognition result (for example, result 1328 "Thanks! Love") is displayed.

一部の実施形態では、ユーザデバイスは、ユーザが、絵文字を描くことによって正規のテキストを入力することを可能にする。例えば、ユーザが、語「elephant」の綴り方を知らない場合には、ユーザは、任意選択的に、手書き入力区域内に、「elephant」に関する様式化された絵文字を描き、ユーザデバイスが、その手書き入力を、「elephant」に関する絵文字として正しく認識することができる場合には、ユーザデバイスはまた、任意選択的に、候補表示区域内に表示される認識結果のうちの1つとして、通常のテキストで語「elephant」も提示する。別の実施例では、ユーザは、手書き入力区域内に、中国文字「
」を書き込む代わりに、様式化された猫を描くことができる。ユーザデバイスが、このユーザによって提供された手書き入力に基づいて、「猫」に関する絵文字を特定する場合には、ユーザデバイスはまた、任意選択的に、候補表示区域内に、「猫」に関する絵文字と共に、中国語で「猫」を意味する中国文字「
」も提示する。認識された絵文字に関する通常のテキストを提示することによって、ユーザデバイスは、周知の絵文字に一般的に関連付けられる、少ない数の様式化されたストロークを使用して、複雑な文字又は語を入力する、代替的な方法を提供する。一部の実施形態では、ユーザデバイスは、絵文字を、1つ以上の好ましいスクリプト又は言語(例えば、英語又は中国語)での、それらの対応する通常のテキスト(例えば、文字、語、語句、記号など)と結びつける、辞書を記憶する。
In some embodiments, the user device allows the user to enter regular text by drawing emoticons. For example, if the user does not know how to spell the word "elephant," the user optionally draws a stylized glyph for "elephant" in the handwriting input area and the user device If the handwritten input can be correctly recognized as an emoji for "elephant," the user device also optionally displays normal text as one of the recognition results displayed within the candidate display area. Also presents the word "elephant". In another example, the user may enter the Chinese characters “
Instead of writing ``, you can draw a stylized cat. If the user device identifies an emoji for "cat" based on the handwritten input provided by this user, the user device also optionally identifies in the candidate display area along with the emoji for "cat". , the Chinese character ``, which means ``cat'' in Chinese
” will also be presented. By presenting normal text for recognized emojis, the user device inputs complex characters or words using a small number of stylized strokes commonly associated with well-known emojis. Provide an alternative method. In some embodiments, the user device displays emoji as their corresponding regular text (e.g., a character, word, phrase, symbol, etc.) in one or more preferred scripts or languages (e.g., English or Chinese). etc.) and memorize the dictionary.

一部の実施形態では、ユーザデバイスは、手書き入力から生成された画像に対する、絵文字の視覚的類似性に基づいて、絵文字を認識する。一部の実施形態では、手書き入力からの絵文字の認識を可能にするために、ユーザデバイス上で使用される手書き認識モデルは、自然人間言語のスクリプトの文字に対応する手書きサンプル、及び人工的に設計された絵文字のセットに対応する手書きサンプルの双方を含む、訓練コーパスを使用して訓練される。一部の実施形態では、同じ意味概念に関連する絵文字は、異なる自然言語のテキストを有する混合入力内で使用される場合に、異なる外観を有し得る。例えば、「Love」の意味概念に関する絵文字は、1つの自然言語(例えば、日本語)の通常のテキストで提示される場合は、「ハート」の絵文字とすることができ、別の自然言語(例えば、英語又はフランス語)の通常のテキストで提示される場合は、「キス」の絵文字とすることができる。 In some embodiments, the user device recognizes the emoji based on the emoji's visual similarity to an image generated from handwritten input. In some embodiments, to enable recognition of emojis from handwritten input, the handwriting recognition model used on the user device includes handwriting samples that correspond to characters in a natural human language script, and artificially It is trained using a training corpus that includes both handwriting samples corresponding to the designed set of emoji. In some embodiments, emojis related to the same semantic concept may have different appearances when used within mixed input having text in different natural languages. For example, an emoji for the semantic concept of "Love" could be a "heart" emoji when presented in regular text in one natural language (e.g. Japanese), and an emoji for a "heart" in another natural language (e.g. Japanese). , English or French), it could be a "kiss" emoji.

本明細書で説明されるように、複数文字の手書き入力の認識を実行する場合、手書き入力モジュールは、手書き入力区域内に現時点で蓄積されている手書き入力の分割を実行し、それらの蓄積されたストロークを、1つ以上の認識単位へと分離する。手書き入力をどのように分割するかを判定するために使用されるパラメータのうちの1つは、手書き入力区域内で、それらのストロークがどのようにクラスタ化されているか、及び異なるストロークのクラスタ間の距離とすることができる。人々は、種々の書体を有する。一部の人々は、ストローク間の距離、又は同じ文字の異なる部分間の距離を大きくして、極めて低い密度で書き込む傾向があり、その一方で、他の人々は、ストローク間の距離、又は異なる文字間の距離を極めて小さくして、極めて高い密度で書き込む傾向がある。同じユーザに関してさえも、不完全な計画により、手書き文字は、バランスが取れた外観から逸脱し、種々の方式で偏るか、延伸されるか、又は圧縮される場合がある。本明細書で説明されるように、マルチスクリプト手書き認識モデルは、ストローク順序非依存式の認識を提供し、それゆえ、ユーザは、文字又は文字の諸部分を、順番から外れて書き込むことができる。結果として、文字間の手書き入力の空間的均一性及びバランスを達成することは、困難となる恐れがある。 As described herein, when performing recognition of multi-character handwritten input, the handwriting input module performs segmentation of the currently accumulated handwritten input within the handwriting input area, and divides those accumulated handwritten inputs. separate the strokes into one or more recognition units. One of the parameters used to determine how to partition handwriting input is how those strokes are clustered within the handwriting input area, and the differences between clusters of different strokes. The distance can be People have different typefaces. Some people tend to write with very low density, with large distances between strokes, or distances between different parts of the same letter, while others tend to write with very low density, with large distances between strokes, or different parts of the same letter. There is a tendency to write with extremely high density, with extremely small distances between characters. Even for the same user, imperfect planning can cause handwriting to deviate from a balanced appearance and become lopsided, stretched, or compressed in various ways. As described herein, multi-script handwriting recognition models provide stroke order independent recognition, thus allowing a user to write characters or parts of characters out of order. . As a result, achieving spatial uniformity and balance of handwritten input between characters can be difficult.

一部の実施形態では、本明細書で説明される手書き入力モデルは、ユーザが、手書き入力モジュールに、2つの隣接する認識単位を単一の認識単位へと融合させるべきか、又は単一の認識単位を2つの別個の認識単位へと分離するべきかを通知するための方法を提供する。このユーザの手助けで、手書き入力モジュールは、初期の分割を訂正し、ユーザによって意図された結果を生成することができる。 In some embodiments, the handwriting input model described herein allows the user to instruct the handwriting input module to either merge two adjacent recognition units into a single recognition unit or A method is provided for notifying whether a recognition unit should be separated into two separate recognition units. With this user assistance, the handwriting input module can correct the initial segmentation and produce the results intended by the user.

図15A~図15Jは、ユーザが、ユーザデバイスによって特定された認識単位を修正するために、既定のピンチジェスチャ及び拡大ジェスチャを提供する、一部の例示的ユーザインタフェース及びプロセスを示す。 15A-15J illustrate some example user interfaces and processes in which a user provides predefined pinch and zoom gestures to modify recognition units identified by a user device.

図15A及び図15Bに示されるように、ユーザは、手書き入力インタフェース802の手書き入力区域806内に、複数の手書きストローク1502(例えば、3つのストローク)を入力している。ユーザデバイスは、現時点で蓄積されている手書きストローク1502に基づいて、単一の認識単位を特定しており、候補表示区域806内に、3つの候補文字1508(例えば、それぞれ、「
」、「
」、及び「
」)を提示している。
As shown in FIGS. 15A and 15B, the user has entered a plurality of handwritten strokes 1502 (eg, three strokes) within the handwriting input area 806 of the handwriting input interface 802. The user device has identified a single recognition unit based on the currently accumulated handwritten strokes 1502 and has three candidate characters 1508 (e.g., "
”, “
",as well as"
”) is presented.

図15Cは、ユーザが、手書き入力区域606内の、初期の手書きストローク1502の右に、少数の追加ストローク1510を更に入力していることを示す。ユーザデバイスは、ストローク1502及びストローク1510が、2つの別個の認識単位として見なされるべきであることを、(例えば、複数のストローク1502並びに1510の寸法及び空間的分布に基づいて)判定する。この認識単位の分離に基づいて、ユーザデバイスは、それらの第1の認識単位及び第2の認識単位の入力画像を、手書き認識モデルに提供し、2つの候補文字のセットを取得する。次いで、ユーザデバイスは、それらの認識文字の種々の組み合わせに基づいて、複数の認識結果(例えば、1512、1514、1516、及び1518)を生成する。各認識結果は、第1の認識単位に関する認識文字、及び第2の認識単位に関する認識文字を含む。図15Cに示されるように、複数の認識結果1512、1514、1516、及び1518は、2つの認識文字をそれぞれ含む。 FIG. 15C shows the user inputting a small number of additional strokes 1510 within the handwriting input area 606 to the right of the initial handwritten strokes 1502. The user device determines (eg, based on the dimensions and spatial distribution of strokes 1502 and 1510) that stroke 1502 and stroke 1510 should be considered as two separate recognition units. Based on this separation of recognition units, the user device provides the input images of the first recognition unit and the second recognition unit to the handwriting recognition model and obtains a set of two candidate characters. The user device then generates multiple recognition results (eg, 1512, 1514, 1516, and 1518) based on various combinations of those recognized characters. Each recognition result includes a recognized character regarding the first recognition unit and a recognized character regarding the second recognition unit. As shown in FIG. 15C, the plurality of recognition results 1512, 1514, 1516, and 1518 each include two recognized characters.

この実施例では、ユーザは、実際には、この手書き入力が単一の文字として認識されることを意図していたが、その手書き文字(例えば、「
」)の左部分(例えば、左の部首「
」)と右部分(例えば、右の部首「
」)との間に、過度に大きい空間を不用意に残したと想定する。候補表示区域806内に提示された結果(例えば、1512、1514、1516、及び1518)を視認して、ユーザは、ユーザデバイスが、現在の手書き入力を、誤って2つの認識単位へと分割していることを理解する。この分割は、客観的な基準に基づき得るものであるが、ユーザにとっては、現在の手書き入力を削除し、この文字全体を、左部分と右部分との距離をより小さくして再度書き直すことは、望ましいものではない。
In this example, the user actually intended this handwritten input to be recognized as a single character, but the handwritten character (e.g. "
") (for example, the left radical "
”) and the right part (for example, the right radical “
”), we assume that you have inadvertently left an excessively large space between the two. Upon viewing the results presented in candidate display area 806 (e.g., 1512, 1514, 1516, and 1518), the user determines that the user device has incorrectly split the current handwritten input into two recognition units. Understand that Although this division can be based on objective criteria, it would be useful for the user to delete the current handwritten input and rewrite the entire character with a smaller distance between the left and right parts. , which is not desirable.

その代わりに、図15Dに示されるように、ユーザは、手書きストローク1502及び1510の2つのクラスタの上で、ピンチジェスチャを使用して、それらの手書き入力モジュールによって特定された2つの認識単位が、単一の認識単位として融合されるべきであることを、手書き入力モジュールに示す。このピンチジェスチャは、互いに向けて移動する、タッチ感知面上での2つの接触1520及び1522によって示される。 Instead, as shown in FIG. 15D, the user uses a pinch gesture over the two clusters of handwritten strokes 1502 and 1510 so that the two recognition units identified by their handwriting input module are Indicates to the handwriting input module that it should be fused as a single recognition unit. This pinch gesture is indicated by two contacts 1520 and 1522 on the touch-sensitive surface moving towards each other.

図15Eは、ユーザのピンチジェスチャに応じて、ユーザデバイスが、現時点で蓄積されている手書き入力(例えば、ストローク1502及び1510)の分割を訂正し、それらの手書きストロークを、単一の認識単位へと融合させていることを示す。図15Eに示されるように、ユーザデバイスは、訂正された認識単位に基づいた入力画像を、手書き認識モデルに提供し、その訂正された認識単位に関する、3つの新たな候補文字1524、1526、及び1528(例えば、「
」、「
」、及び「
」)を取得している。一部の実施形態では、図15Eに示されるように、ユーザデバイスは、任意選択的に、手書き入力区域806内の手書き入力のレンダリングを、手書きストロークの左クラスタと右クラスタとの距離が低減されるように調節する。一部の実施形態では、ユーザデバイスは、手書き入力区域608内に示される手書き入力のレンダリングを、ピンチジェスチャに応じて変更することがない。一部の実施形態では、ユーザデバイスは、手書き入力区域806内で検出される、(単一の接触とは対照的な)2つの同時接触に基づいて、ピンチジェスチャを入力ストロークから識別する。
FIG. 15E shows that in response to a user's pinch gesture, the user device corrects the segmentation of currently accumulated handwritten input (e.g., strokes 1502 and 1510) and combines the handwritten strokes into a single recognition unit. It shows that it is fused with. As shown in FIG. 15E, the user device provides an input image based on the corrected recognition unit to the handwriting recognition model and generates three new candidate characters 1524, 1526, and 1528 (for example, “
”, “
",as well as"
”) is obtained. In some embodiments, as shown in FIG. 15E, the user device optionally renders the handwriting input within the handwriting input area 806 such that the distance between the left and right clusters of handwritten strokes is reduced. Adjust so that In some embodiments, the user device does not change the rendering of the handwriting input shown within the handwriting input area 608 in response to the pinch gesture. In some embodiments, the user device identifies pinch gestures from input strokes based on two simultaneous contacts (as opposed to a single contact) detected within handwriting input area 806.

図15Fに示されるように、ユーザは、従前に入力された手書き入力(すなわち、文字「
」に関するストローク)の右に、更に2つのストローク1530を入力している。ユーザデバイスは、この新たに入力されたストローク1530が、新たな認識単位であることを判定し、その新たに特定された認識単位に関する候補文字(例えば、「
」)を認識する。次いで、ユーザデバイスは、その新たに特定された文字(例えば、「
」)を、以前に特定された認識単位に関する候補文字と組み合わせ、候補表示区域806内に、幾つかの異なる認識結果(例えば、結果1532及び1534)を提示する。
As shown in FIG. 15F, the user inputs the previously input handwritten input (i.e., the character "
Two more strokes 1530 are input to the right of the stroke related to "." The user device determines that this newly inputted stroke 1530 is a new recognition unit, and selects a candidate character (for example, "
”). The user device then displays that newly identified character (e.g., "
”) with the candidate characters for the previously identified recognition unit to present several different recognition results (eg, results 1532 and 1534) within the candidate display area 806.

手書きストローク1530の後に続けて、ユーザは、図15Gに示されるように、ストローク1530の右に、更なるストローク1536(例えば、3つの更なるストローク)を継続して書き込む。ストローク1530とストローク1536との水平距離は、極めて小さいため、ユーザデバイスは、ストローク1530及びストローク1536が、同じ認識単位に属すると判定し、手書き認識モデルに、それらのストローク1530及び1536によって形成される入力画像を提供する。手書き認識モデルは、訂正された認識単位に関する、3つの異なる候補文字を特定し、現時点で蓄積されている手書き入力に関する、2つの訂正された認識結果1538及び1540を生成する。 Following the handwritten stroke 1530, the user continues to write additional strokes 1536 (eg, three additional strokes) to the right of the stroke 1530, as shown in FIG. 15G. Since the horizontal distance between stroke 1530 and stroke 1536 is extremely small, the user device determines that stroke 1530 and stroke 1536 belong to the same recognition unit, and the handwriting recognition model includes the following: Provide input image. The handwriting recognition model identifies three different candidate characters for the corrected recognition unit and produces two corrected recognition results 1538 and 1540 for the currently stored handwriting input.

この実施例では、最後の2つのストローク1530及び1536のセットは、実際には、2つの別個の文字(例えば、「
」及び「±」)として意図されていると想定する。ユーザは、ユーザデバイスが、2つのストローク1530及び1536のセットを、誤って単一の認識単位へと組み合わせていることを視認した後、ユーザは、続けて拡大ジェスチャを提供して、ユーザデバイスに、2つのストローク1530及び1536のセットが、2つの別個の認識単位へと分離されるべきであることを通知する。図15Hに示されるように、ユーザは、ストローク1530及び1536の周りで、2つの接触1542及び1544を実施して、次いで、それらの2つの接触を、概して水平な方向で(すなわち、デフォルトの書き込み方向に沿って)互いから離れる方向に移動させる。
In this example, the last two sets of strokes 1530 and 1536 are actually two separate characters (e.g., "
” and “±”). After the user observes that the user device is erroneously combining the sets of two strokes 1530 and 1536 into a single recognition unit, the user subsequently provides a magnification gesture to cause the user device to , signals that the set of two strokes 1530 and 1536 should be separated into two separate recognition units. As shown in FIG. 15H, the user makes two contacts 1542 and 1544 around strokes 1530 and 1536, and then makes those two contacts in a generally horizontal direction (i.e., the default writing move away from each other (along the direction).

図15Iは、このユーザの拡大ジェスチャに応じて、ユーザデバイスが、現時点で蓄積されている手書き入力の従前の分割を訂正し、ストローク1530及びストローク1536を、2つの連続的な認識単位へと割り当てたことを示す。それらの2つの別個の認識単位に関して生成された入力画像に基づいて、ユーザデバイスは、ストローク1530に基づいた第1の認識単位に関して、1つ以上の候補文字を特定し、ストローク1536に基づいた第2の認識単位に関して、1つ以上の候補文字を特定する。次いで、ユーザデバイスは、それらの認識文字の種々の組み合わせに基づいて、2つの新たな認識結果1546及び1548を生成する。一部の実施形態では、ユーザデバイスは、任意選択的に、ストローク1536及び1536のレンダリングを、従前に特定された認識単位の分離を反映するように修正する。 FIG. 15I shows that in response to this user's magnification gesture, the user device corrects the previous segmentation of the currently stored handwriting input and assigns stroke 1530 and stroke 1536 into two consecutive recognition units. to show that Based on the input images generated for those two separate recognition units, the user device identifies one or more candidate characters for the first recognition unit based on stroke 1530 and the first recognition unit based on stroke 1536. One or more candidate characters are identified for the recognition unit No. 2. The user device then generates two new recognition results 1546 and 1548 based on the various combinations of those recognized characters. In some embodiments, the user device optionally modifies the rendering of strokes 1536 and 1536 to reflect the previously identified recognition unit separation.

図15J、図15Kに示されるように、ユーザは、候補表示区域806内に表示された候補認識結果のうちの1つを、(接触1550によって示されるように)選択しており、その選択された認識結果(例えば、結果1548)が、ユーザインタフェースのテキスト入力区域808内に入力されている。選択された認識結果が、テキスト入力区域808内に入力された後、候補表示区域806及び手書き入力区域804は双方ともクリアされ、後続のユーザ入力を表示するための準備が整う。 As shown in FIGS. 15J and 15K, the user has selected one of the candidate recognition results displayed within candidate display area 806 (as indicated by contact 1550), and the user has selected one of the candidate recognition results displayed within candidate display area 806 and The resulting recognition results (eg, results 1548) have been entered into the text entry area 808 of the user interface. After the selected recognition result is entered into text input area 808, candidate display area 806 and handwriting input area 804 are both cleared and ready for displaying subsequent user input.

図16A、図16Bは、ユーザが、既定のジェスチャ(例えば、ピンチジェスチャ及び/又は拡大ジェスチャ)を使用して、現在の手書き入力の既存の分割を、どのように分割又は訂正するかを通知する、例示的プロセス1600の流れ図である。図15J及び図15Kは、一部の実施形態に係る、例示的プロセス1600の図を提供する。 16A and 16B inform the user how to split or correct an existing split of the current handwriting input using predefined gestures (e.g., pinch gesture and/or zoom gesture) , which is a flow diagram of an example process 1600. 15J and 15K provide an illustration of an example process 1600, according to some embodiments.

一部の実施形態では、ユーザデバイスは、ユーザから手書き入力を受信する(1602)。この手書き入力は、デバイスに結合されたタッチ感知面内に提供される、複数の手書きストロークを含む。一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの手書き入力区域(例えば、図15A~図15Kの手書き入力区域806)内に、それらの複数の手書きストロークをリアルタイムでレンダリングする(1604)。ユーザデバイスは、例えば、図15D及び図15Hに示されるように、それらの複数の手書きストロークの上での、ピンチジェスチャ入力及び拡大ジェスチャ入力のうちの一方を受信する。 In some embodiments, a user device receives handwritten input from a user (1602). The handwriting input includes a plurality of handwritten strokes provided in a touch-sensitive surface coupled to the device. In some embodiments, the user device renders the plurality of handwritten strokes in real time (1604) within a handwriting input area of a handwriting input interface (eg, handwriting input area 806 of FIGS. 15A-15K). The user device receives one of a pinch gesture input and a zoom gesture input over the plurality of handwritten strokes, for example, as shown in FIGS. 15D and 15H.

一部の実施形態では、ピンチジェスチャ入力を受信すると、ユーザデバイスは、例えば、図15C~図15Eに示されるように、複数の手書きストロークを、単一の認識単位として処理することによって、それらの複数の手書きストロークに基づいた、第1の認識結果を生成する(1606)。 In some embodiments, upon receiving a pinch gesture input, the user device recognizes multiple handwritten strokes by processing them as a single recognition unit, for example, as shown in FIGS. 15C-15E. A first recognition result based on the plurality of handwritten strokes is generated (1606).

一部の実施形態では、拡大ジェスチャ入力を受信すると、ユーザデバイスは、例えば、図15G~図15Iに示されるように、複数の手書きストロークを、拡大ジェスチャ入力によって引き離された2つの別個の認識単位として処理することによって、それらの複数の手書きストロークに基づいた、第2の認識結果を生成する(1608)。 In some embodiments, upon receiving the magnification gesture input, the user device converts the multiple handwritten strokes into two separate recognition units separated by the magnification gesture input, as shown in FIGS. 15G-15I, for example. A second recognition result is generated based on the plurality of handwritten strokes (1608).

一部の実施形態では、第1の認識結果及び第2の認識結果のうちの、それぞれの一方を生成すると、ユーザデバイスは、例えば、図15E及び図15Iに示されるように、生成された認識結果を、手書き入力インタフェースの候補表示区域内に表示する。 In some embodiments, upon generating each one of the first recognition result and the second recognition result, the user device generates the generated recognition result, e.g., as shown in FIGS. 15E and 15I. The results are displayed in the candidate display area of the handwriting input interface.

一部の実施形態では、ピンチジェスチャ入力は、複数の手書きストロークによって占有される区域内で互いに向けて収束する、タッチ感知面上での2つの同時接触を含む。一部の実施形態では、拡大ジェスチャ入力は、複数の手書きストロークによって占有される区域内で互いに分散する、タッチ感知面上での2つの同時接触を含む。 In some embodiments, the pinch gesture input includes two simultaneous contacts on the touch-sensitive surface that converge toward each other within an area occupied by multiple handwritten strokes. In some embodiments, the magnified gesture input includes two simultaneous contacts on the touch-sensitive surface that are dispersed from each other within the area occupied by multiple handwritten strokes.

一部の実施形態では、ユーザデバイスは、これらの複数の手書きストロークから、2つの隣接する認識単位を特定する(例えば、1614)。ユーザデバイスは、例えば、図15Cに示されるように、候補表示区域内に、2つの隣接する認識単位から認識されたそれぞれの文字を含む、初期の認識結果(例えば、図15Cでの結果1512、1514、1516、及び1518)を表示する(1616)。一部の実施形態では、ピンチジェスチャに応じて、第1の認識結果(例えば、図15Eでの結果1524、1526、又は1528)を表示する場合、ユーザデバイスは、候補表示区域内で、初期の認識結果を、その第1の認識結果で置き換える(1618)。一部の実施形態では、ユーザデバイスは、図15Dに示されるように、初期の認識結果が候補表示区域内に表示されている間に、ピンチジェスチャ入力を受信する(1620)。一部の実施形態では、このピンチジェスチャ入力に応じて、ユーザデバイスは、例えば、図15Eに示されるように、手書き入力区域内の、2つの隣接する認識単位間の距離を低減するように、複数の手書きストロークを再レンダリングする(1622)。 In some embodiments, the user device identifies two adjacent recognition units from the plurality of handwritten strokes (eg, 1614). The user device may generate an initial recognition result (e.g., result 1512 in FIG. 15C, 1514, 1516, and 1518) are displayed (1616). In some embodiments, when displaying a first recognition result (e.g., results 1524, 1526, or 1528 in FIG. 15E) in response to a pinch gesture, the user device displays an initial recognition result within the candidate display area. The recognition result is replaced with the first recognition result (1618). In some embodiments, the user device receives a pinch gesture input (1620) while the initial recognition results are displayed within the candidate display area, as shown in FIG. 15D. In some embodiments, in response to this pinch gesture input, the user device may reduce the distance between two adjacent recognition units within the handwriting input area, for example, as shown in FIG. 15E. Re-render the multiple handwritten strokes (1622).

一部の実施形態では、ユーザデバイスは、これらの複数の手書きストロークから、単一の認識単位を特定する(1624)。ユーザデバイスは、候補表示区域内に、その単一の認識単位から認識された文字(例えば、「
」「
」)を含む、初期の認識結果(例えば、図15Gの結果1538又は1540)を表示する(1626)。一部の実施形態では、拡大ジェスチャに応じて、第2の認識結果(例えば、図15Iでの結果1546又は1548)を表示する場合、ユーザデバイスは、例えば、図15H、図15Iに示されるように、候補表示区域内で、初期の認識結果(例えば、結果1538又は1540)を、その第2の認識結果(例えば、結果1546又は1548)で置き換える(1628)。一部の実施形態では、ユーザデバイスは、図15Hに示されるように、初期の認識結果が候補表示区域内に表示されている間に、拡大ジェスチャ入力を受信する(1630)。一部の実施形態では、この拡大ジェスチャ入力に応じて、ユーザデバイスは、図15H及び図15Iに示されるように、手書き入力区域内の、第1の認識単位に割り当てられた、第1のストロークのサブセットと、第2の認識単位に割り当てられた、第2の手書きストロークのサブセットとの距離を増大させるように、複数の手書きストロークを再レンダリングする(1632)。
In some embodiments, the user device identifies a single recognition unit from these multiple handwritten strokes (1624). The user device displays characters recognized from that single recognition unit (e.g., "
""
”), the initial recognition results (eg, results 1538 or 1540 in FIG. 15G) are displayed (1626). In some embodiments, when displaying a second recognition result (e.g., result 1546 or 1548 in FIG. 15I) in response to a magnification gesture, the user device Then, within the candidate display area, the initial recognition result (eg, result 1538 or 1540) is replaced with its second recognition result (eg, result 1546 or 1548) (1628). In some embodiments, the user device receives magnified gesture input (1630) while the initial recognition results are displayed within the candidate display area, as shown in FIG. 15H. In some embodiments, in response to this magnified gesture input, the user device generates a first stroke within the handwriting input area that is assigned to the first recognition unit, as shown in FIGS. 15H and 15I. and the second subset of handwritten strokes assigned to the second recognition unit (1632).

一部の実施形態では、ユーザが、ストロークを提供して、それらのストロークが、標準的な分割プロセスに基づく正しい分割に対して、過度に散開している恐れがあることを理解した直後に、ユーザは、任意選択的に、ピンチジェスチャを提供して、それらの複数のストロークを単一の認識単位として処理するように、ユーザデバイスに通知する。ユーザデバイスは、ピンチジェスチャに存在する2つの同時接触に基づいて、ピンチジェスチャを正規のストロークから識別することができる。同様に、一部の実施形態では、ユーザが、ストロークを提供して、それらのストロークが、標準的な分割プロセスに基づく正しい分割に対して、過度に密集している恐れがあることを理解した直後に、ユーザは、任意選択的に、拡大ジェスチャを提供して、それらの複数のストロークを2つの別個の認識単位として処理するように、ユーザデバイスに通知する。ユーザデバイスは、ピンチジェスチャに存在する2つの同時接触に基づいて、拡大ジェスチャを正規のストロークから識別することができる。 In some embodiments, immediately after the user provides the strokes and realizes that the strokes may be too spread apart for the correct splitting based on the standard splitting process: The user optionally provides a pinch gesture to signal the user device to process the multiple strokes as a single recognition unit. A user device can distinguish a pinch gesture from a regular stroke based on the presence of two simultaneous contacts in the pinch gesture. Similarly, in some embodiments, a user provides strokes and understands that the strokes may be too dense for correct segmentation based on a standard segmentation process. Immediately thereafter, the user optionally provides a magnification gesture to notify the user device to process the multiple strokes as two separate recognition units. A user device can distinguish a magnification gesture from a regular stroke based on the two simultaneous contacts present in a pinch gesture.

一部の実施形態では、ジェスチャの下でどのようにストロークを分割するかについての、更なる手引きを提供するために、ピンチジェスチャ又は拡大ジェスチャの動きの方向が、任意選択的に使用される。例えば、手書き入力区域に関して、複数行の手書き入力が有効である場合には、垂直方向に移動する2つの接触を有するピンチジェスチャは、手書き入力モジュールに、2つの隣接する行内で特定される2つの認識単位を、(例えば、上の部首及び下の部首として)単一の認識単位へと融合させるように通知することができる。同様に、垂直方向に移動する2つの接触を有する拡大ジェスチャは、手書き入力モジュールに、単一の認識単位を、2つの隣接する行内の2つの認識単位へと分離するように通知することができる。一部の実施形態では、ピンチジェスチャ及び拡大ジェスチャはまた、文字入力のサブ部分での分割の手引き、例えば、2つのサブ構成要素を融合させること、又は複合文字(
など)内の単一の構成要素を、その複合文字の種々の部分(例えば、上、下、左、又は右の部分)に分離することの手引きも、提供することができる。このことは、複雑な複合文字を手で書き込む場合に、ユーザは正しい比率及びバランスを失う傾向があるため、複雑な複合中国文字を認識するために特に役立つ。手書き入力の完了後に、例えば、ピンチジェスチャ及び拡大ジェスチャによって、手書き入力の比率及びバランスを調節することが可能であることは、ユーザが、正しい比率及びバランスに到達するための幾つかの試みを実施することを必要とせずに、正しい文字を入力するために、特に役立つ。
In some embodiments, the direction of movement of the pinch or expand gesture is optionally used to provide further guidance on how to split the strokes under the gesture. For example, for a handwriting input area, if multi-line handwriting input is enabled, a pinch gesture with two vertically moving contacts will cause the handwriting input module to have two contacts identified within two adjacent lines. Recognition units may be signaled to be fused into a single recognition unit (eg, as an upper radical and a lower radical). Similarly, a magnification gesture with two contacts moving vertically can tell the handwriting input module to separate a single recognition unit into two recognition units in two adjacent lines. . In some embodiments, the pinch and zoom gestures also provide guidance for splitting character input into sub-parts, such as merging two sub-components, or compound characters (
Guidance can also be provided for separating a single component within a compound character (e.g., the top, bottom, left, or right part) into different parts of the compound character. This is particularly useful for recognizing complex compound Chinese characters since users tend to lose correct proportion and balance when writing complex compound characters by hand. Being able to adjust the proportion and balance of the handwriting input after completion of the handwriting input, for example by pinch and zoom gestures, allows the user to perform several attempts to arrive at the correct proportion and balance. Particularly useful for entering the correct characters without having to do so.

本明細書で説明されるように、手書き入力モジュールは、複数文字の手書き入力をユーザが入力することを可能にし、手書き入力区域内での、1つの文字内で、複数の文字にわたって、また更には、複数の語句、文、及び/又は行にわたって、それらの複数文字の手書き入力に関する順序外のストロークを可能にする。一部の実施形態では、手書き入力モジュールはまた、手書き入力区域内での、文字単位での削除も提供し、その文字削除の順序は、書き込みの逆方向であり、各文字に関するストロークが、いつ手書き入力区域内に提供されたかとは無関係である。一部の実施形態では、手書き入力区域内での各認識単位(例えば、文字又は部首)の削除は、任意選択的に、ストローク単位で実行され、ストロークは、それらのストロークが認識単位内に提供された、逆の時間的順序で削除される。図17A~図17Hは、ユーザからの削除入力に応じて、複数文字の手書き入力内に、文字単位での削除を提供するための、例示的ユーザインタフェースを示す。 As described herein, the handwriting input module allows a user to input handwriting input of multiple characters, within a handwriting input area, within one character, across multiple characters, or even allows out-of-order strokes for those multi-character handwritten inputs over multiple words, sentences, and/or lines. In some embodiments, the handwriting input module also provides character-by-character deletion within the handwriting input area, where the order of character deletion is in the opposite direction of writing, and the strokes for each character It is independent of whether it is provided within the handwriting input area. In some embodiments, the deletion of each recognition unit (e.g., character or radical) within the handwriting input area is optionally performed on a stroke-by-stroke basis, where the strokes are deleted within the recognition unit. Delete in reverse chronological order provided. 17A-17H illustrate example user interfaces for providing character-by-character deletion within multi-character handwritten input in response to deletion input from a user.

図17Aに示されるように、ユーザは、手書き入力ユーザインタフェース802の手書き入力区域804内に、複数の手書きストローク1702を提供している。これらの現時点で蓄積されているストローク1702に基づいて、ユーザデバイスは、候補表示区域806内に、3つの認識結果(例えば、結果1704、1706、及び1708)を提示する。図17Bに示されるように、ユーザは、手書き入力区域806内に、更なる複数のストローク1710を提供している。ユーザデバイスは、3つの新たな出力文字を認識し、3つの従前の認識結果1704、1706、及び1708を、3つの新たな認識結果1712、1714、及び1716で置き換える。一部の実施形態では、図17Bに示されるように、ユーザデバイスが、現在の手書き入力(例えば、ストローク1702及びストローク1710)から、2つの別個の認識単位を特定している場合であっても、ストローク1710のクラスタは、手書き認識モジュールのレパートリー内の、いずれの既知の文字とも良好に対応しない。結果として、ストローク1710を含む認識単位に関して特定された候補文字(例えば、「
」、「
」)は全て、既定の閾値を下回る認識信頼度を有する。一部の実施形態では、ユーザデバイスは、第1の認識単位に関する候補文字(例えば、「
」)のみを含むが、第2の認識単位に関するいずれの候補文字も含まない、部分的認識結果(例えば、結果1712)を、候補表示区域806内に提示する。一部の実施形態では、ユーザデバイスは、認識信頼度が既定の閾値に合格しているか否かにかかわらず、双方の認識単位に関する候補文字を含む、完全認識結果(例えば、結果1714又は1716)を更に表示する。部分的認識結果を提供することは、その手書き入力のいずれの部分に訂正が必要であるかを、ユーザに通知する。更には、ユーザはまた、最初に、その手書き入力の正しく認識された部分を入力することを選択し、次いで、正しく認識されなかった部分を書き直すこともできる。
As shown in FIG. 17A, a user has provided a plurality of handwriting strokes 1702 within a handwriting input area 804 of a handwriting input user interface 802. Based on these currently accumulated strokes 1702, the user device presents three recognition results (eg, results 1704, 1706, and 1708) within candidate display area 806. As shown in FIG. 17B, the user has provided additional strokes 1710 within handwriting input area 806. The user device recognizes the three new output characters and replaces the three previous recognition results 1704, 1706, and 1708 with the three new recognition results 1712, 1714, and 1716. In some embodiments, even if the user device identifies two separate recognition units from the current handwriting input (e.g., stroke 1702 and stroke 1710), as shown in FIG. 17B, , the cluster of strokes 1710 does not correspond well to any known characters in the handwriting recognition module's repertoire. As a result, the candidate character identified for the recognition unit containing stroke 1710 (e.g., "
”, “
”) all have recognition confidences below a predefined threshold. In some embodiments, the user device determines the candidate character (e.g., "
A partial recognition result (e.g., result 1712) is presented in candidate display area 806 that includes only a character (") but not any candidate characters for the second recognition unit. In some embodiments, the user device generates a complete recognition result (e.g., result 1714 or 1716) that includes candidate characters for both recognition units, regardless of whether the recognition confidence passes a predefined threshold. Show more. Providing partial recognition results informs the user which parts of their handwriting input require correction. Additionally, the user may also choose to first enter the correctly recognized portions of their handwriting input and then rewrite the incorrectly recognized portions.

図17Cは、ユーザが、ストローク1710の左に、更なる手書きストローク1718を継続して提供していることを示す。ストローク1718の相対的場所及び距離に基づいて、ユーザデバイスは、この新たに追加されたストロークが、手書きストローク1702のクラスタと同じ認識単位に属していると判定する。この訂正された認識単位に基づいて、第1の認識単位に関する新たな文字(例えば、「
」)が認識され、新たな認識結果1720、1722、及び1724のセットが生成される。この場合も、第1の認識結果1720は、ストローク1710に関して特定される候補文字のいずれもが、既定の信頼度閾値を満たさないため、部分的認識結果である。
FIG. 17C shows the user continuing to provide additional handwritten strokes 1718 to the left of stroke 1710. Based on the relative location and distance of stroke 1718, the user device determines that this newly added stroke belongs to the same recognition unit as the cluster of handwritten strokes 1702. Based on this corrected recognition unit, a new character (e.g. "
”) are recognized and a new set of recognition results 1720, 1722, and 1724 is generated. Again, the first recognition result 1720 is a partial recognition result because none of the candidate characters identified for the stroke 1710 meet the predetermined confidence threshold.

図17Dは、ユーザが、この時点で、ストローク1702とストローク1710との間に、複数の新たなストローク1726を入力していることを示す。ユーザデバイスは、この新たに入力されたストローク1726を、ストローク1710と同じ認識単位に割り当てる。この時点で、ユーザは、2つの中国文字(例えば、「
」)に関する手書きストロークの全ての入力を完了しており、正しい認識結果1728が、候補表示区域806内に示される。
FIG. 17D shows that the user has now entered a number of new strokes 1726 between strokes 1702 and 1710. The user device assigns this newly input stroke 1726 to the same recognition unit as stroke 1710. At this point, the user has written two Chinese characters (e.g. "
”) and the correct recognition result 1728 is shown in the candidate display area 806.

図27Eは、ユーザが、例えば、削除ボタン1732上で軽い接触1730を実施することによって、削除入力の初期部分を入力していることを示す。ユーザが、削除ボタン1732との接触を維持する場合には、ユーザは、現在の手書き入力文字を、文字単位で(又は、認識単位ごとに)削除することができる。この削除は、全ての手書き入力に関して、同時には実行されない。 FIG. 27E shows the user entering the initial portion of the delete input, for example, by performing a light touch 1730 on the delete button 1732. If the user maintains contact with the delete button 1732, the user can delete the current handwritten input characters character by character (or recognition unit by recognition unit). This deletion is not performed simultaneously for all handwritten inputs.

一部の実施形態では、ユーザの指が、最初に、タッチ感知スクリーン上の削除ボタン1732にタッチすると、図17Eに示されるように、デフォルトの(例えば、左から右への)書き込み方向での最後の認識単位(例えば、文字「
」に関する認識単位)が、手書き入力区域804内で同時に表示されている他の認識単位に対して、視覚的に強調表示される(例えば、境界線1734又は明るい背景などで強調表示される)。
In some embodiments, when the user's finger first touches the delete button 1732 on the touch-sensitive screen, the default (e.g., left-to-right) writing direction is selected, as shown in FIG. 17E. The last recognition unit (for example, the character "
”) is visually highlighted (e.g., highlighted with a border 1734 or a bright background) relative to other recognition units that are simultaneously displayed within the handwriting input area 804.

一部の実施形態では、ユーザが、削除ボタン1732上での接触1730を、閾値持続時間を超えて維持していることを、ユーザデバイスが検出すると、ユーザデバイスは、図17Fに示されるように、手書き入力区域806から、強調表示された(例えば、ボックス1734内の)認識単位を除去する。更には、ユーザデバイスはまた、図17Fに示されるように、その削除された認識単位に基づいて生成された、いずれの出力文字も削除するように、候補表示区域608内に示される認識結果も訂正する。 In some embodiments, when the user device detects that the user maintains contact 1730 on the delete button 1732 for more than a threshold duration, the user device , removes the highlighted recognition unit (eg, within box 1734) from handwriting input area 806. Additionally, the user device also deletes the recognition results shown in candidate display area 608 to delete any output characters that were generated based on the deleted recognition unit, as shown in FIG. 17F. correct.

図17Fは、手書き入力区域806内の最後の認識単位(例えば、文字「
」に関する認識単位)が削除された後、ユーザが、削除ボタン1732上での接触1730を継続して維持する場合には、削除された認識単位に隣接する認識単位(例えば、文字「
」に関する認識単位)が、削除される次の認識単位になることを更に示す。図17Fに示されるように、この残存する認識単位は、(例えば、ボックス1736内で)視覚的に強調表示されており、削除される準備が整っている。一部の実施形態では、認識単位の視覚的な強調表示は、ユーザが、削除ボタンとの接触を継続して維持する場合には、削除されることになる認識単位のプレビューを提供する。閾値持続時間に到達する前に、ユーザが、削除ボタンとの接触を中断する場合には、視覚的な強調表示は、最後の認識単位から除去され、その認識単位は削除されない。当業者には認識されるように、接触の持続時間は、認識単位が削除されるたびに、毎回リセットされる。更には、一部の実施形態では、接触の強度(例えば、ユーザが、タッチ感知スクリーンとの接触1730に加えている圧力)を任意選択的に使用して、現在強調表示されている認識単位を削除するユーザの意図を確認するための、閾値持続時間を調節する。図17F及び図17Gは、閾値持続時間に到達する前に、ユーザが、削除ボタン1732との接触1730を中断しており、文字「
」に関する認識単位が、手書き入力区域806内に保存されていることを示す。ユーザが、この認識単位に関する第1の認識結果(例えば、結果1738)を、(例えば、接触1740によって示されるように)選択すると、図17G及び図17Hに示されるように、その第1の認識結果1738内のテキストが、テキスト入力区域808内に入力される。
FIG. 17F shows the last recognition unit (e.g., the character "
If the user continues to maintain contact 1730 on the delete button 1732 after a recognition unit related to "" is deleted, the recognition unit adjacent to the deleted recognition unit (for example, the character "
”) will be the next recognition unit to be deleted. As shown in FIG. 17F, this remaining recognition unit is visually highlighted (eg, within box 1736) and is ready to be deleted. In some embodiments, the visual highlighting of the recognition unit provides a preview of the recognition unit that will be deleted if the user continues to maintain contact with the delete button. If the user discontinues contact with the delete button before the threshold duration is reached, the visual highlighting is removed from the last recognition unit and that recognition unit is not deleted. As will be recognized by those skilled in the art, the contact duration is reset each time a recognition unit is deleted. Additionally, in some embodiments, the intensity of the contact (e.g., the pressure the user is applying to the contact 1730 with the touch-sensitive screen) is optionally used to determine the currently highlighted recognition unit. Adjust the threshold duration to confirm user intent to delete. 17F and 17G show that the user aborts contact 1730 with the delete button 1732 before the threshold duration is reached, and the characters "
” is stored in the handwriting input area 806. When the user selects a first recognition result (e.g., result 1738) for this recognition unit (e.g., as indicated by contact 1740), the first recognition result, as shown in FIGS. 17G and 17H, The text in result 1738 is entered into text entry area 808.

図18A及び図18Bは、ユーザデバイスが、複数文字の手書き入力内に、文字単位の削除を提供する、例示的プロセス1800の流れ図である。一部の実施形態では、この手書き入力の削除は、その手書き入力から認識された文字が確認されて、ユーザインタフェースのテキスト入力区域内に入力される前に実行される。一部の実施形態では、手書き入力内の文字の削除は、その手書き入力から特定された認識単位の、逆の空間的順序に従って進行し、それらの認識単位が形成される時間的配列とは無関係である。図17A~図17Hは、一部の実施形態に係る、例示的プロセス1800を示す。 18A and 18B are a flowchart of an example process 1800 in which a user device provides character-by-character deletion within multi-character handwritten input. In some embodiments, this deletion of the handwritten input is performed before characters recognized from the handwritten input are verified and entered into the text entry area of the user interface. In some embodiments, the deletion of characters within the handwritten input proceeds according to the reverse spatial order of the recognition units identified from the handwriting input, and is independent of the temporal order in which those recognition units are formed. It is. 17A-17H illustrate an example process 1800, according to some embodiments.

図18Aに示されるように、例示的プロセス1800では、ユーザデバイスは、ユーザから手書き入力を受信し(1802)、この手書き入力は、手書き入力インタフェースの手書き入力区域(例えば、図17Dでの区域804)内に提供される、複数の手書きストロークを含む。ユーザデバイスは、それらの複数の手書きストロークから、複数の認識単位を特定し(1804)、各認識単位は、それらの複数の手書きストロークのうちの対応のサブセットを含む。例えば、図17Dに示されるように、第1の認識単位は、ストローク1702及び1718を含み、第2の認識単位は、ストローク1710及び1726を含む。ユーザデバイスは、それらの複数の認識単位から認識された、それぞれの文字を含む、複数文字の認識結果(例えば、図17Dでの、結果1728)を生成する(1806)。一部の実施形態では、ユーザデバイスは、その複数文字の認識結果(例えば、図17Dでの、結果1728)を、手書き入力インタフェースの候補表示区域内に表示する。一部の実施形態では、その複数文字の認識結果が、候補表示区域内に表示されている間に、ユーザデバイスは、例えば、図17Eに示されるように、ユーザから削除入力(例えば、削除ボタン1732上での接触1730)を受信する(1810)。一部の実施形態では、この削除入力の受信に応じて、ユーザデバイスは、例えば、図17E、図17Fに示されるように、候補表示区域(例えば、候補表示区域806)内に表示された複数文字の認識結果(例えば、結果1728)から、最後の文字(例えば、空間的配列「
」の最後に現れる文字「
」を除去する(1812)。
As shown in FIG. 18A, in an example process 1800, a user device receives handwriting input from a user (1802), where the handwriting input is located in a handwriting input area of a handwriting input interface (e.g., area 804 in FIG. 17D). ), including multiple handwritten strokes. The user device identifies (1804) a plurality of recognition units from the plurality of handwritten strokes, each recognition unit including a corresponding subset of the plurality of handwritten strokes. For example, as shown in FIG. 17D, a first recognition unit includes strokes 1702 and 1718, and a second recognition unit includes strokes 1710 and 1726. The user device generates (1806) a multi-character recognition result (eg, result 1728 in FIG. 17D) that includes each character recognized from the plurality of recognition units. In some embodiments, the user device displays the multi-character recognition results (eg, results 1728 in FIG. 17D) within a candidate display area of the handwriting input interface. In some embodiments, while the multi-character recognition results are displayed within the candidate display area, the user device receives a delete input (e.g., a delete button) from the user, e.g., as shown in FIG. 17E. A contact 1730) on 1732 is received (1810). In some embodiments, in response to receiving this delete input, the user device deletes the plurality of items displayed within the candidate display area (e.g., candidate display area 806), as shown in FIGS. 17E, 17F, for example. From the character recognition results (e.g., result 1728), the last character (e.g., spatial array '
The character that appears at the end of ``
" is removed (1812).

一部の実施形態では、ユーザデバイスは、例えば、図17A~図17Dに示されるように、複数の手書きストロークがユーザによって提供される際に、手書き入力インタフェースの手書き入力区域内に、それらの複数の手書きストロークをリアルタイムでレンダリングする(1814)。一部の実施形態では、削除入力の受信に応じて、ユーザデバイスは、手書き入力区域(例えば、図17Eでの手書き入力区域804)から、その手書き入力区域内の、複数の認識単位によって形成された空間的配列内の、最後の認識単位(例えば、ストローク1726及び1710を含む認識単位)に対応する、複数の手書きストロークのうちの対応のサブセットを除去する(1816)。この最後の認識単位は、複数文字の認識結果(例えば、図17Eでの、結果1728)内の、最後の文字(例えば、文字「
」)に対応する。
In some embodiments, the user device includes a plurality of handwriting strokes within the handwriting input area of the handwriting input interface when the plurality of handwriting strokes are provided by the user, for example, as shown in FIGS. 17A-17D. The handwritten strokes of are rendered in real time (1814). In some embodiments, in response to receiving the delete input, the user device deletes a line from a handwriting input area (e.g., handwriting input area 804 in FIG. 17E) formed by a plurality of recognition units within the handwriting input area. A corresponding subset of the plurality of handwritten strokes that corresponds to the last recognition unit (eg, the recognition unit that includes strokes 1726 and 1710) in the spatial array is removed (1816). This last recognition unit is the last character (e.g., the character "
”).

一部の実施形態では、この最後の認識単位は、ユーザによって提供された複数の手書きストロークの中の、時間的に最後の手書きストロークを含まない(1818)。例えば、ユーザが、ストローク1726及び1710を提供した後に、ストローク1718を提供している場合には、ストローク1726及び1710を含む最後の認識単位が、依然として最初に削除される。 In some embodiments, this last recognition unit does not include the temporally last handwritten stroke among the plurality of handwritten strokes provided by the user (1818). For example, if the user provides stroke 1718 after providing strokes 1726 and 1710, the last recognition unit that includes strokes 1726 and 1710 is still deleted first.

一部の実施形態では、削除入力の初期部分の受信に応じて、ユーザデバイスは、例えば、図17Eに示されるように、最後の認識単位を、手書き入力区域内で特定された他の認識単位から、視覚的に識別する(1820)。一部の実施形態では、削除入力の初期部分は、手書き入力インタフェース内の削除ボタン上で検出される、初期の接触であり(1822)、この初期の接触が、既定の閾値時間量を超えて持続される場合に、削除入力が検出される。 In some embodiments, in response to receiving the initial portion of the deletion input, the user device deletes the last recognition unit from other recognition units identified within the handwriting input area, e.g., as shown in FIG. 17E. (1820). In some embodiments, the initial portion of the delete input is an initial contact detected on the delete button within the handwriting input interface (1822), and the initial contact is detected over a predetermined threshold amount of time. If persisted, a delete input is detected.

一部の実施形態では、最後の認識単位は、手書き中国文字に対応する。一部の実施形態では、手書き入力は、筆写体の書体で書き込まれる。一部の実施形態では、手書き入力は、筆写体の書体で書き込まれた、複数の中国文字に対応する。一部の実施形態では、それらの手書きストロークのうちの少なくとも1つは、複数の認識単位のうちの、2つの隣接する認識単位へと分離される。例えば、場合によっては、ユーザは、複数の文字へと続け書きされる、長いストロークを使用することができ、そのような場合には、手書き入力モジュールの分割モジュールは、任意選択的に、その長いストロークを、幾つかの認識単位へと分離する。手書き入力の削除が、文字単位で(又は、認識単位ごとに)実行される場合、この長いストロークの区分(例えば、対応する認識単位内の区分)のみが、一度に削除される。 In some embodiments, the last recognition unit corresponds to handwritten Chinese characters. In some embodiments, the handwritten input is written in a cursive typeface. In some embodiments, the handwritten input corresponds to a plurality of Chinese characters written in a cursive typeface. In some embodiments, at least one of the handwritten strokes is separated into two adjacent recognition units of the plurality of recognition units. For example, in some cases, a user may use long strokes that are continued into multiple characters, and in such cases, the splitting module of the handwriting input module optionally Separate strokes into several recognition units. When deletion of handwritten input is performed character by character (or recognition unit by recognition unit), only segments of this long stroke (eg, divisions within the corresponding recognition unit) are deleted at a time.

一部の実施形態では、削除入力は、手書き入力インタフェース内に提供される削除ボタン上での持続的接触であり(1824)、複数の手書きストロークのうちの対応のサブセットを除去することは、最後の認識単位内の手書きストロークのサブセットを、その手書きストロークのサブセットがユーザによって提供された逆の時間的順序で、手書き入力区域からストローク単位で除去することを更に含む。 In some embodiments, the deletion input is a sustained touch on a delete button provided within the handwriting input interface (1824), and removing the corresponding subset of the plurality of handwritten strokes The method further includes removing the subset of handwritten strokes within the recognition unit from the handwriting input area stroke by stroke in the reverse temporal order in which the subset of handwritten strokes was provided by the user.

一部の実施形態では、ユーザデバイスは、例えば、図17B及び図17Cに示されるように、複数の認識単位から認識されたそれぞれの文字のサブセットを含む、部分的認識結果を生成し(1826)、それぞれの文字のサブセットのそれぞれは、既定の信頼度閾値を満たす。一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの候補表示区域内に、部分的認識結果(例えば、図17Bでの結果1712、及び図17Cでの結果1720)を、複数文字の認識結果(例えば、結果1714及び1722)と同時に表示する(1828)。 In some embodiments, the user device generates (1826) a partial recognition result that includes a subset of each recognized character from the plurality of recognition units, such as shown in FIGS. 17B and 17C. , each of the respective subsets of characters satisfy a predetermined confidence threshold. In some embodiments, the user device displays partial recognition results (e.g., result 1712 in FIG. 17B and result 1720 in FIG. 17C) within the candidate display area of the handwriting input interface as a multi-character recognition result. (eg, results 1714 and 1722) are displayed simultaneously (1828).

一部の実施形態では、部分的認識結果は、複数文字の認識結果内の、少なくとも最後の文字を含まない。一部の実施形態では、部分的認識結果は、複数文字の認識結果内の、少なくとも最初の文字を含まない。一部の実施形態では、部分的認識結果は、複数文字の認識結果内の、少なくとも中間の文字を含まない。 In some embodiments, the partial recognition result does not include at least the last character in the multi-character recognition result. In some embodiments, the partial recognition result does not include at least the first character in the multi-character recognition result. In some embodiments, the partial recognition result does not include at least an intermediate character within the multi-character recognition result.

一部の実施形態では、削除の最小単位は部首であり、手書き入力は、部首が偶然に、手書き入力区域内に依然として残存する手書き入力内の、最後の認識単位となる場合は常に、一度に1つの部首が削除される。 In some embodiments, the smallest unit of deletion is a radical, and the handwriting input is deleted whenever the radical happens to be the last recognized unit in the handwriting input that still remains within the handwriting input area. One radical is removed at a time.

本明細書で説明されるように、一部の実施形態では、ユーザデバイスは、水平書き込みモード及び垂直書き込みモードの双方を提供する。一部の実施形態では、ユーザデバイスは、水平書き込みモードで、左から右への書き込み方向及び右から左への方向のうちの一方、若しくは双方で、ユーザがテキストを入力することを可能にする。一部の実施形態では、ユーザデバイスは、垂直書き込みモードで、上から下への書き込み方向及び下から上への方向のうちの一方、若しくは双方で、ユーザがテキストを入力することを可能にする。一部の実施形態では、ユーザデバイスは、現在の手書き入力に関する、それぞれの書き込みモード及び/又は書き込み方向を呼び出すための、様々なアフォーダンス(例えば、書き込みモード又は書き込み方向ボタン)を、ユーザインタフェース上に提供する。一部の実施形態では、テキスト入力区域内でのテキスト入力方向は、デフォルトで、手書き入力方向での手書き入力方向と同じである。一部の実施形態では、ユーザデバイスは、テキスト入力区域内での入力方向、及び手書き入力区域内での書き込み方向を、ユーザが手動で設定することを可能にする。一部の実施形態では、候補表示区域内でのテキスト表示方向は、デフォルトで、手書き入力区域内での手書き入力方向と同じである。一部の実施形態では、ユーザデバイスは、手書き入力区域内での手書き入力方向とは無関係に、テキスト入力区域内でのテキスト表示方向を、ユーザが手動で設定することを可能にする。一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの書き込みモード及び/又は書き込み方向を、対応するデバイスの向きと関連付け、そのデバイスの向きの変化により、書き込みモード及び/又は書き込み方向の変化がトリガされる。一部の実施形態では、書き込み方向の変化により、最上ランクの認識結果の入力が、テキスト入力区域内に自動的に入力される。 As described herein, in some embodiments, a user device provides both horizontal and vertical write modes. In some embodiments, the user device allows the user to enter text in a horizontal writing mode and in one or both of a left-to-right writing direction and a right-to-left writing direction. . In some embodiments, the user device allows the user to enter text in a vertical writing mode in one or both of a top-to-bottom writing direction and a bottom-to-top writing direction. . In some embodiments, the user device provides various affordances (e.g., writing mode or writing direction buttons) on the user interface to invoke respective writing modes and/or writing directions for the current handwriting input. provide. In some embodiments, the text input direction within the text input area is by default the same as the handwriting input direction in the handwriting input direction. In some embodiments, the user device allows the user to manually set the input direction within the text input area and the writing direction within the handwriting input area. In some embodiments, the text display direction within the candidate display area is by default the same as the handwriting input direction within the handwriting input area. In some embodiments, the user device allows the user to manually set the text display direction within the text input area, independent of the handwriting input direction within the handwriting input area. In some embodiments, the user device associates a writing mode and/or writing direction of the handwriting input interface with a corresponding device orientation, such that a change in the device orientation causes a change in the writing mode and/or writing direction. Triggered. In some embodiments, the change in writing direction automatically causes the input of the highest ranking recognition result to be input into the text input area.

図19A~図19Fは、水平入力モード及び垂直入力モードの双方を提供する、ユーザデバイスの例示的ユーザインタフェースを示す。 19A-19F illustrate example user interfaces for user devices that provide both horizontal and vertical input modes.

図19Aは、水平入力モードのユーザデバイスを示す。一部の実施形態では、水平入力モードは、図19Aに示されるように、ユーザデバイスが、横表示の向きにある場合に提供される。一部の実施形態では、水平入力モードは、任意選択的に、デバイスが縦表示の向きで操作される場合に関連付けられ、提供される。異なるアプリケーションでは、デバイスの向きと書き込みモードとの関連性は、異なる場合がある。 FIG. 19A shows the user device in horizontal input mode. In some embodiments, a horizontal input mode is provided when the user device is in a landscape display orientation, as shown in FIG. 19A. In some embodiments, a horizontal input mode is optionally associated and provided when the device is operated in a portrait display orientation. For different applications, the relationship between device orientation and writing mode may be different.

水平入力モードでは、ユーザは、水平の書き込み方向で(例えば、左から右に進むデフォルトの書き込み方向、又は右から左に進むデフォルトの書き込み方向で)手書き文字を提供することができる。水平入力モードでは、ユーザデバイスは、この水平の書き込み方向に沿って、1つ以上の認識単位への、手書き入力の分割を実行する。 In horizontal input mode, a user can provide handwriting in a horizontal writing direction (eg, with a default writing direction going from left to right, or a default writing direction going from right to left). In horizontal input mode, the user device performs segmentation of the handwritten input into one or more recognition units along this horizontal writing direction.

一部の実施形態では、ユーザデバイスは、手書き入力区域内での、単一の行の入力のみを許容する。一部の実施形態では、図19Aに示されるように、ユーザデバイスは、手書き入力区域内での、複数行の入力(例えば、2つの行の入力)を可能にする。図19Aでは、ユーザは、手書き入力区域806内に、複数の手書きストロークを、幾つかの行で提供している。ユーザが提供した複数の手書きストロークの配列、並びに複数の手書きストロークの相対的場所、及びそれらのストローク間の距離に基づいて、ユーザデバイスは、2つの行の文字をユーザが入力していると判定する。この手書き入力を、2つの別個の行へと分割した後、デバイスは、各行内の認識単位を判定する。 In some embodiments, the user device only allows a single line of input within the handwriting input area. In some embodiments, as shown in FIG. 19A, the user device allows multiple lines of input (eg, two lines of input) within the handwriting input area. In FIG. 19A, the user has provided multiple handwritten strokes in several lines within the handwriting input area 806. Based on the arrangement of handwritten strokes provided by the user and the relative locations of the handwritten strokes and the distances between the strokes, the user device determines that the user is inputting two lines of characters. do. After splitting this handwritten input into two separate lines, the device determines the recognition units within each line.

図19Aに示されるように、ユーザデバイスは、現在の手書き入力1902内で特定された各認識単位に関する、それぞれの文字を認識して、幾つかの認識結果1904及び1906を生成している。図19Aに更に示されるように、一部の実施形態では、特定の認識単位(例えば、初期のストロークによって形成された認識単位)のセットに関する出力文字(例えば、文字「I」)が低い場合には、ユーザデバイスは、十分な認識信頼度を有する出力文字のみを示す、部分的認識結果(例えば、結果1906)を、任意選択的に生成する。一部の実施形態では、ユーザは、認識モデルが正しい認識結果を作り出すために、第1のストロークを訂正するか、又は個別に削除することができることを、この部分的認識結果1906から理解することができる。この特定の実施例では、第1の認識単位1904は、第1の認識単位に関する所望の認識結果を示しているため、その第1の認識単位を編集することは、必要ではない。 As shown in FIG. 19A, the user device has recognized a respective character for each recognition unit identified within the current handwriting input 1902, producing several recognition results 1904 and 1906. As further shown in FIG. 19A, in some embodiments, if the output character (e.g., the letter "I") for a particular set of recognition units (e.g., the recognition units formed by the initial stroke) is low , the user device optionally generates partial recognition results (eg, results 1906) that indicate only those output characters with sufficient recognition confidence. In some embodiments, the user understands from this partial recognition result 1906 that the first stroke can be corrected or individually deleted in order for the recognition model to produce the correct recognition result. Can be done. In this particular example, editing the first recognition unit 1904 is not necessary because it indicates the desired recognition result for the first recognition unit.

この実施例では、図19A、図19Bに示されるように、ユーザは、(例えば、図19Bに示される)縦表示の向きにデバイスを回転させている。このデバイスの向きの変化に対応して、手書き入力インタフェースは、図19Bに示されるように、水平入力モードから垂直入力モードに変更される。垂直入力モードでは、手書き入力区域804、候補表示区域806、及びテキスト入力区域808のレイアウトは、水平入力モードで示されるものとは異なり得る。水平入力モード及び垂直入力モードの具体的なレイアウトは、種々のデバイスの形状及びアプリケーションの要求に適合するように、変化させることができる。一部の実施形態では、デバイスの向きの回転、及び入力モードの変化により、ユーザデバイスは、最上ランクの結果(例えば、結果1904)を、テキスト入力区域808内に、テキスト入力1910として自動的に入力する。カーソル1912の向き及び位置もまた、入力モード及び書き込み方向の変化を反映する。 In this example, as shown in FIGS. 19A and 19B, the user has rotated the device to a portrait viewing orientation (eg, as shown in FIG. 19B). In response to this change in device orientation, the handwriting input interface changes from horizontal input mode to vertical input mode, as shown in FIG. 19B. In vertical input mode, the layout of handwriting input area 804, candidate display area 806, and text input area 808 may differ from that shown in horizontal input mode. The specific layout of the horizontal input mode and vertical input mode can be varied to suit various device geometries and application requirements. In some embodiments, upon rotation of the device orientation and change of input mode, the user device automatically places the top-ranked result (e.g., result 1904) within text input area 808 as text input 1910. input. The orientation and position of cursor 1912 also reflects changes in input mode and writing direction.

一部の実施形態では、入力モードの変化は、任意選択的に、特殊な入力モード選択アフォーダンス1908にユーザがタッチすることによって、トリガされる。一部の実施形態では、この入力モード選択アフォーダンスは、現在の書き込みモード、現在の書き込み方向、及び/又は現在のパラグラフ方向もまた示す、グラフィカルユーザインタフェース要素である。一部の実施形態では、入力モード選択アフォーダンスは、手書き入力インタフェース802によって提供される、全ての利用可能な入力モード及び書き込み方向を、循環して切り替えることができる。図19Aに示されるように、アフォーダンス1908は、現在の入力モードが、左から右への書き込み方向、及び上から下へのパラグラフ方向を有する、水平入力モードであることを示す。図19Bでは、アフォーダンス1908は、現在の入力モードが、上から下への書き込み方向、及び右から左へのパラグラフ方向を有する、垂直入力モードであることを示す。書き込み方向とパラグラフ方向との他の組み合わせが、様々な実施形態に従って可能である。 In some embodiments, a change in input mode is optionally triggered by a user touching a special input mode selection affordance 1908. In some embodiments, this input mode selection affordance is a graphical user interface element that also indicates the current writing mode, current writing direction, and/or current paragraph direction. In some embodiments, the input mode selection affordance can cycle through all available input modes and writing directions provided by the handwriting input interface 802. As shown in FIG. 19A, affordance 1908 indicates that the current input mode is a horizontal input mode with a left-to-right writing direction and a top-to-bottom paragraph direction. In FIG. 19B, affordance 1908 indicates that the current input mode is a vertical input mode with a top-to-bottom writing direction and a right-to-left paragraph direction. Other combinations of writing direction and paragraph direction are possible according to various embodiments.

図19Cに示されるように、ユーザは、垂直入力モードで、手書き入力区域804内に、複数の新たなストローク1914(例えば、2つの中国文字「
」に関する手書きストローク)を入力している。この手書き入力は、垂直の書き込み方向で書き込まれる。ユーザデバイスは、この垂直方向での手書き入力を、2つの認識単位へと分割し、垂直方向でレイアウトされた2つの認識文字をそれぞれが含む、2つの認識結果1916及び1918を表示する。
As shown in FIG. 19C, the user creates a plurality of new strokes 1914 (e.g., two Chinese characters "
” handwritten strokes). This handwritten input is written in a vertical writing direction. The user device divides this vertical handwriting input into two recognition units and displays two recognition results 1916 and 1918, each including two recognized characters laid out vertically.

図19C及び図19Dは、ユーザが、表示された認識結果(例えば、結果1916)を選択すると、その選択された認識結果が、テキスト入力区域808内に垂直方向で入力されることを示す。 19C and 19D show that when a user selects a displayed recognition result (eg, result 1916), the selected recognition result is entered vertically within text entry area 808.

図19E及び図19Fは、ユーザが、垂直の書き込み方向で、更なる手書き入力1920の行を入力していることを示す。これらの行は、伝統的な中国語の書き込みのパラグラフ方向に従って、左から右に進む。一部の実施形態では、候補表示区域806もまた、手書き入力区域に関する方向と同じ書き込み方向及びパラグラフ方向で、認識結果(例えば、結果1922及び1924)を示す。一部の実施形態では、ユーザデバイスに関連付けられる主要言語、又はユーザデバイス上にインストールされているソフトキーボードの言語(例えば、アラビア語、中国語、日本語、英語など)に従って、他の書き込み方向及びパラグラフ方向を、デフォルトで提供することができる。 19E and 19F show the user entering a further line of handwritten input 1920 in a vertical writing direction. These lines proceed from left to right, following the traditional Chinese writing paragraph direction. In some embodiments, candidate display area 806 also shows recognition results (eg, results 1922 and 1924) in the same writing direction and paragraph direction as the direction with respect to the handwriting input area. In some embodiments, other writing directions and Paragraph direction can be provided by default.

図19E及び図19Fはまた、ユーザが、認識結果(例えば、結果1922)を選択すると、その選択された認識結果のテキストが、テキスト入力区域808内に入力されることも示す。図19Fに示されるように、テキスト入力区域808内に現在入力されているテキストは、それゆえ、左から右への書き込み方向を有する、水平モードで書き込まれたテキストと、上から下への書き込み方向を有する、垂直モードで書き込まれたテキストとの双方を含む。水平のテキストに関するパラグラフ方向は、上から下であり、その一方で、垂直のテキストに関するパラグラフ方向は、右から左である。 19E and 19F also show that when a user selects a recognition result (eg, result 1922), the text of the selected recognition result is entered into text entry area 808. As shown in FIG. 19F, the text currently being entered within the text input area 808 is therefore written in horizontal mode, with a left-to-right writing direction, and text written in a horizontal mode, with a writing direction from top to bottom. Including both text written in vertical mode, with orientation. The paragraph direction for horizontal text is top to bottom, while the paragraph direction for vertical text is right to left.

一部の実施形態では、ユーザデバイスは、手書き入力区域804、候補表示区域806、及びテキスト入力区域808のそれぞれに関して、ユーザが、好ましい書き込み方向、パラグラフ方向を、別個に確立することを可能にする。一部の実施形態では、ユーザデバイスは、手書き入力区域804、候補表示区域806、及びテキスト入力区域808のそれぞれに関して、ユーザが、それぞれのデバイスの向きに関連付けられる、好ましい書き込み方向及びパラグラフ方向を確立することを可能にする。 In some embodiments, the user device allows the user to separately establish a preferred writing direction, paragraph direction, for each of the handwriting input area 804, the candidate display area 806, and the text input area 808. . In some embodiments, the user device allows the user to establish a preferred writing direction and paragraph direction for each of the handwriting input area 804, candidate display area 806, and text input area 808 that are associated with the respective device orientations. make it possible to

図20A~図20Cは、ユーザインタフェースのテキスト入力方向及び手書き入力方向を変更するための、例示的プロセス2000の流れ図である。図19A~図19Fは、一部の実施形態に係る、プロセス2000を示す。 20A-20C are a flowchart of an example process 2000 for changing the text input direction and handwriting input direction of a user interface. 19A-19F illustrate a process 2000, according to some embodiments.

一部の実施形態では、ユーザデバイスは、デバイスの向きを判定する(2002)。デバイスの向き、及びデバイスの向きの変化は、そのユーザデバイス内の、加速度計及び/又は他の向き感知要素によって検出することができる。一部の実施形態では、ユーザデバイスは、そのデバイスが第1の向きにあることに従って、そのデバイス上に、手書き入力インタフェースを、水平入力モードで提供する(2004)。この水平入力モードで入力される手書き入力のそれぞれの行は、水平の書き込み方向に沿って、1つ以上のそれぞれの認識単位へと分割される。一部の実施形態では、デバイスは、そのデバイスが第2の向きにあることに従って、そのデバイス上に、手書き入力インタフェースを、垂直入力モードで提供する(2006)。この垂直入力モードで入力される手書き入力のそれぞれの行は、垂直の書き込み方向に沿って、1つ以上のそれぞれの認識単位へと分割される。 In some embodiments, a user device determines an orientation of the device (2002). Device orientation and changes in device orientation may be detected by accelerometers and/or other orientation sensing elements within the user device. In some embodiments, the user device provides a handwriting input interface on the device in a horizontal input mode according to the first orientation of the device (2004). Each line of handwritten input input in this horizontal input mode is divided into one or more respective recognition units along the horizontal writing direction. In some embodiments, the device provides a handwriting input interface on the device in a vertical input mode according to the second orientation of the device (2006). Each line of handwritten input input in this vertical input mode is divided into one or more respective recognition units along the vertical writing direction.

一部の実施形態では、水平入力モードで動作している間に(2008)、デバイスは、第1の向きから第2の向きへの、デバイスの向きの変化を検出する(2010)。一部の実施形態では、このデバイスの向きの変化に応じて、デバイスは、水平入力モードから垂直入力モードに切り替える(2012)。このことは、例えば、図19A及び図19Bに示される。一部の実施形態では、垂直入力モードで動作している間に(2014)、ユーザデバイスは、第2の向きから第1の向きへの、デバイスの向きの変化を検出する(2016)。一部の実施形態では、このデバイスの向きの変化に応じて、ユーザデバイスは、垂直入力モードから水平入力モードに切り替える(2018)。一部の実施形態では、デバイスの向きと入力モードとの関連性は、上述のものとは反対にすることができる。 In some embodiments, while operating in horizontal input mode (2008), the device detects a change in orientation of the device from a first orientation to a second orientation (2010). In some embodiments, in response to the change in orientation of the device, the device switches from horizontal input mode to vertical input mode (2012). This is shown, for example, in FIGS. 19A and 19B. In some embodiments, while operating in vertical input mode (2014), the user device detects a change in orientation of the device from the second orientation to the first orientation (2016). In some embodiments, in response to the change in orientation of the device, the user device switches from vertical input mode to horizontal input mode (2018). In some embodiments, the association between device orientation and input mode may be reversed as described above.

一部の実施形態では、水平入力モードで動作している間に(2020)、ユーザデバイスは、ユーザから、第1の複数語の手書き入力を受信する(2022)。この第1の複数語の手書き入力に応じて、ユーザデバイスは、手書き入力インタフェースの候補表示区域内に、水平の書き込み方向に従って、第1の複数語の認識結果を提示する(2024)。このことは、例えば、図19Aに示される。一部の実施形態では、垂直入力モードで動作している間に(2026)、ユーザデバイスは、ユーザから、第2の複数語の手書き入力を受信する(2028)。この第2の複数語の手書き入力に応じて、ユーザデバイスは、候補表示区域内に、垂直の書き込み方向に従って、第2の複数語の認識結果を提示する(2030)。このことは、例えば、図19C及び図19Eに示される。 In some embodiments, while operating in horizontal input mode (2020), the user device receives (2022) a first multi-word handwritten input from a user. In response to the handwritten input of the first plurality of words, the user device presents recognition results of the first plurality of words in a candidate display area of the handwriting input interface according to a horizontal writing direction (2024). This is shown, for example, in FIG. 19A. In some embodiments, while operating in vertical input mode (2026), the user device receives (2028) a second multi-word handwritten input from the user. In response to the handwritten input of the second plurality of words, the user device presents recognition results of the second plurality of words within the candidate display area and according to a vertical writing direction (2030). This is shown, for example, in FIGS. 19C and 19E.

一部の実施形態では、ユーザデバイスは、例えば、図19A、図19Bに示されるように、第1の複数語の認識結果を選択する、第1のユーザ入力を受信し(2032)、この選択は、入力方向を変更するための入力(例えば、デバイスの回転、又はアフォーダンス1908の選択)を使用して、暗黙的に実施される。ユーザデバイスは、例えば、図19C又は図19Eに示されるように、第2の複数語の認識結果を選択する、第2のユーザ入力を受信する(2034)。ユーザデバイスは、手書き入力インタフェースのテキスト入力区域内に、第1の複数語の認識結果及び第2の複数語の認識結果の、対応のテキストを同時に表示し(2036)、第1の複数語の認識結果の対応のテキストは、水平の書き込み方向に従って表示され、第2の複数語の認識結果の対応のテキストは、垂直の書き込み方向に従って表示される。このことは、例えば、図19Fでのテキスト入力区域808内に示される。 In some embodiments, the user device receives (2032) a first user input selecting a first multi-word recognition result, e.g., as shown in FIGS. 19A, 19B, and the selection is implicitly performed using input to change the input direction (eg, rotation of the device or selection of affordance 1908). The user device receives a second user input selecting a second multi-word recognition result (2034), for example, as shown in FIG. 19C or FIG. 19E. The user device simultaneously displays (2036) corresponding text of the recognition results of the first plurality of words and the recognition result of the second plurality of words in a text input area of the handwriting input interface; The corresponding text of the recognition result is displayed according to a horizontal writing direction, and the corresponding text of the second multi-word recognition result is displayed according to a vertical writing direction. This is shown, for example, in text entry area 808 in FIG. 19F.

一部の実施形態では、手書き入力区域は、水平の書き込み方向で複数行の手書き入力を受け入れ、デフォルトの上から下へのパラグラフ方向を有する。一部の実施形態では、この水平の書き込み方向は、左から右である。一部の実施形態では、この水平の書き込み方向は、右から左である。一部の実施形態では、手書き入力区域は、垂直の書き込み方向で複数行の手書き入力を受け入れ、デフォルトの左から右へのパラグラフ方向を有する。一部の実施形態では、手書き入力区域は、垂直の書き込み方向で複数行の手書き入力を受け入れ、デフォルトの右から左へのパラグラフ方向を有する。一部の実施形態では、この垂直の書き込み方向は、上から下である。一部の実施形態では、第1の向きは、デフォルトで横表示の向きであり、第2の向きは、デフォルトで縦表示の向きである。一部の実施形態では、ユーザデバイスは、デバイスの向きに関わりなく、水平入力モードと垂直入力モードとを手動で切り替えるために、手書き入力インタフェース内に、対応のアフォーダンスを提供する。一部の実施形態では、ユーザデバイスは、2つの代替的な書き込み方向を手動で切り替えるために、手書き入力インタフェース内に、対応のアフォーダンスを提供する。一部の実施形態では、ユーザデバイスは、2つの代替的なパラグラフ方向を手動で切り替えるために、手書き入力インタフェース内に、対応のアフォーダンスを提供する。一部の実施形態では、このアフォーダンスは、連続的に1回以上呼び出される場合に、入力方向とパラグラフ方向との利用可能な各組み合わせを巡って回転する、トグルボタンである。 In some embodiments, the handwriting input area accepts multiple lines of handwritten input in a horizontal writing direction and has a default top-to-bottom paragraph direction. In some embodiments, this horizontal writing direction is left to right. In some embodiments, this horizontal writing direction is right to left. In some embodiments, the handwriting input area accepts multiple lines of handwritten input in a vertical writing direction and has a default left-to-right paragraph direction. In some embodiments, the handwriting input area accepts multiple lines of handwritten input in a vertical writing direction and has a default right-to-left paragraph direction. In some embodiments, this vertical writing direction is from top to bottom. In some embodiments, the first orientation is a default landscape orientation and the second orientation is a default portrait orientation. In some embodiments, the user device provides a corresponding affordance within the handwriting input interface to manually switch between horizontal and vertical input modes, regardless of the orientation of the device. In some embodiments, the user device provides a corresponding affordance within the handwriting input interface to manually switch between two alternative writing directions. In some embodiments, the user device provides a corresponding affordance within the handwriting input interface to manually switch between two alternative paragraph directions. In some embodiments, this affordance is a toggle button that, when called one or more times in succession, rotates through each available combination of input direction and paragraph direction.

一部の実施形態では、ユーザデバイスは、ユーザから手書き入力を受信する(2038)。この手書き入力は、手書き入力インタフェースの手書き入力区域内に提供される、複数の手書きストロークを含む。この手書き入力に応じて、ユーザデバイスは、手書き入力インタフェースの候補表示区域内に、1つ以上の認識結果を表示する(2040)。それらの1つ以上の認識結果が、候補表示区域内に表示されている間に、ユーザデバイスは、現在の手書き入力モードから代替の手書き入力モードに切り替えるための、ユーザ入力を検出する(2042)。このユーザ入力に応じて(2044)、ユーザデバイスは、現在の手書き入力モードから代替の手書き入力モードに切り替える(2046)。一部の実施形態では、ユーザデバイスは、手書き入力区域内から、手書き入力を消去する(2048)。一部の実施形態では、ユーザデバイスは、候補表示区域内に表示された1つ以上の認識結果のうちの、最上ランクの認識結果を、手書き入力インタフェースのテキスト入力区域内に、自動的に入力する(2050)。このことは、例えば、図19A及び図19Bに示され、現在の手書き入力モードは、水平入力モードであり、代替の手書き入力モードは、垂直入力モードである。一部の実施形態では、現在の手書き入力モードは、垂直入力モードであり、代替の手書き入力モードは、水平入力モードである。一部の実施形態では、現在の手書き入力モード及び代替の手書き入力モードは、任意の2つの異なる手書き入力方向又はパラグラフ方向が提供されるモードである。一部の実施形態では、このユーザ入力は、現在の向きから、異なる向きへの、デバイスの回転である(2052)。一部の実施形態では、このユーザ入力は、現在の手書き入力モードを、代替の手書き入力モードに手動で切り替えるための、アフォーダンスの呼び出しである。 In some embodiments, the user device receives handwritten input from the user (2038). The handwriting input includes a plurality of handwritten strokes provided within a handwriting input area of the handwriting input interface. In response to the handwriting input, the user device displays one or more recognition results within a candidate display area of the handwriting input interface (2040). While the one or more recognition results are displayed within the candidate display area, the user device detects a user input to switch from the current handwriting input mode to an alternative handwriting input mode (2042). . In response to this user input (2044), the user device switches from the current handwriting input mode to an alternate handwriting input mode (2046). In some embodiments, the user device erases the handwriting input from within the handwriting input area (2048). In some embodiments, the user device automatically enters the highest ranking recognition result of the one or more recognition results displayed within the candidate display area into the text input area of the handwriting input interface. (2050). This is shown, for example, in FIGS. 19A and 19B, where the current handwriting input mode is a horizontal input mode and the alternative handwriting input mode is a vertical input mode. In some embodiments, the current handwriting input mode is a vertical input mode and the alternative handwriting input mode is a horizontal input mode. In some embodiments, the current handwriting input mode and the alternate handwriting input mode are modes in which any two different handwriting input directions or paragraph directions are provided. In some embodiments, the user input is a rotation of the device from a current orientation to a different orientation (2052). In some embodiments, this user input is an invocation of an affordance to manually switch the current handwriting input mode to an alternative handwriting input mode.

本明細書で説明されるように、手書き入力モジュールは、手書きストローク及び/又は文字を、ユーザが、任意の時間的順序で入力することを可能にする。それゆえ、複数文字の手書き入力内の、個別の手書き文字を削除すること、及び、削除された文字と同じ場所に、同じ手書き文字若しくは異なる手書き文字を書き直すことは、ユーザが、手書き入力の全体を削除することを必要とせずに、長い手書き入力を訂正する助けとなるため、有利である。 As described herein, the handwriting input module allows a user to input handwritten strokes and/or characters in any temporal order. Therefore, deleting individual handwritten characters in a multi-character handwritten input and rewriting the same handwritten character or a different handwritten character in the same place as the deleted character is not possible for the user to delete the entire handwritten input. This is advantageous because it helps correct long handwritten entries without having to delete them.

図20A~図20Hは、手書き入力区域内に現時点で蓄積されている、複数の手書きストローク内で特定された認識単位を、視覚的に強調表示し、かつ/又は削除するための、例示的ユーザインタフェースを示す。複数の入力内で特定された複数の認識単位のうちの任意の1つを、ユーザが個別に選択し、見て、削除することを可能にすることは、複数文字の手書き入力、また更に、複数行の手書き入力が、ユーザデバイスによって許容される場合に、特に有用である。手書き入力の最初又は中間部の特定の認識単位を、ユーザが削除することを可能にすることによって、望ましくない認識単位の後に位置する全ての認識単位を、ユーザが削除することを必要とせずに、ユーザは、長い入力に対する修正を実施することが可能となる。 20A-20H illustrate an exemplary user for visually highlighting and/or deleting identified recognition units within a plurality of handwritten strokes currently accumulated within a handwriting input area. Indicates an interface. Enabling a user to individually select, view, and delete any one of a plurality of recognition units identified within a plurality of inputs may be useful for multi-character handwritten input; It is particularly useful if multiple lines of handwritten input are allowed by the user device. By allowing the user to delete a particular recognition unit at the beginning or middle of handwritten input, without requiring the user to delete all recognition units located after the undesired recognition unit. , the user is able to perform corrections to long inputs.

図21A~図21Cに示されるように、ユーザは、手書き入力ユーザインタフェース802の手書き入力区域804内に、複数の手書きストローク(例えば、ストローク2102、2104、及び2106)を提供している。ユーザが、手書き入力区域804に、追加ストロークを継続して提供する間に、ユーザデバイスは、手書き入力区域内に現時点で蓄積されている手書き入力から特定される、認識単位を更新し、その更新された認識単位から認識される出力文字に従って、認識結果を訂正する。図20Cに示されるように、ユーザデバイスは、現在の手書き入力から2つの認識単位を特定し、2つの中国文字をそれぞれが含む、3つの認識結果(例えば、2108、2010、及び2112)を提示している。 As shown in FIGS. 21A-21C, a user has provided a plurality of handwritten strokes (eg, strokes 2102, 2104, and 2106) within handwriting input area 804 of handwriting input user interface 802. As the user continues to provide additional strokes to the handwriting input area 804, the user device updates and updates the recognition units identified from the handwriting input currently accumulated within the handwriting input area. The recognition result is corrected according to the output characters recognized from the recognized recognition unit. As shown in FIG. 20C, the user device identifies two recognition units from the current handwriting input and presents three recognition results (e.g., 2108, 2010, and 2112), each containing two Chinese characters. are doing.

この実施例では、ユーザが2つの手書き文字を書き込んだ後に、ユーザは、第1の認識単位が誤って書き込まれ、結果として、所望の認識結果を、ユーザデバイスが特定して候補表示区域内に提示していないことを理解する。 In this example, after the user writes two handwritten characters, the user realizes that the first recognition unit is written incorrectly, and as a result, the user device identifies and places the desired recognition result within the candidate display area. Understand what is not presented.

一部の実施形態では、ユーザが、タッチ感知ディスプレイ上にタップジェスチャ(例えば、接触に続く、同じ場所での即座のリフトオフ)を提供すると、ユーザデバイスは、そのタップジェスチャを、手書き入力区域内で現在特定されている個別の認識単位の、視覚的な強調表示を引き起こすための入力として解釈する。一部の実施形態では、別の既定のジェスチャ(例えば、手書き入力区域の上での、複数の指でワイプするジェスチャ)を使用して、ユーザデバイスに、手書き入力区域804内の個別の認識単位を強調表示させる。タップジェスチャは、手書きストローク(通常、より長い持続時間持続的接触を伴い、手書き入力区域804内での接触の移動を有するもの)から識別することが比較的容易であるため、好ましい場合がある。マルチタップジェスチャは、手書きストローク(通常、手書き入力区域804内での単一の接触を伴うもの)から識別することが比較的容易であるため、好ましい場合がある。一部の実施形態では、ユーザデバイスは、個別の認識単位を、(例えば、ボックス2108及び2110によって示されるように)視覚的に強調表示させるための、ユーザによって(例えば、接触2114を介して)呼び出すことが可能なアフォーダンス2112を、ユーザインタフェース内に提供する。一部の実施形態では、このアフォーダンスは、そのようなアフォーダンスを収容するための、十分な画面空間が存在する場合に好ましい。一部の実施形態では、このアフォーダンスは、ユーザによって連続的に複数回呼び出すことができ、このことは、ユーザデバイスに、分割束内の異なる分割鎖に従って特定された認識単位を、視覚的に強調表示させ、また、その強調表示に関して、全ての分割鎖が示された場合に、オフにさせる。 In some embodiments, when a user provides a tap gesture (e.g., a contact followed by an immediate lift-off at the same location) on a touch-sensitive display, the user device provides that tap gesture within the handwriting input area. Interpret as input to trigger visual highlighting of the currently identified individual recognition unit. In some embodiments, another predefined gesture (e.g., a multi-finger wipe gesture over the handwriting input area) is used to prompt the user device to identify individual recognition units within the handwriting input area 804. to be highlighted. Tap gestures may be preferred because they are relatively easy to distinguish from handwritten strokes (which typically involve a sustained contact of longer duration and movement of the contact within the handwriting input area 804). Multi-tap gestures may be preferred because they are relatively easy to distinguish from handwritten strokes (which typically involve a single touch within the handwritten input area 804). In some embodiments, the user device allows the user (e.g., via contact 2114) to visually highlight the individual recognition units (e.g., as shown by boxes 2108 and 2110). An affordance 2112 that can be invoked is provided within the user interface. In some embodiments, this affordance is preferred if there is sufficient screen space to accommodate such an affordance. In some embodiments, this affordance can be invoked multiple times in succession by the user, which causes the user device to visually highlight recognition units identified according to different split chains within the split bundle. and turn off the highlighting when all split chains are shown.

図21Dに示されるように、ユーザが、手書き入力区域804内の個別の認識単位を強調表示するために、必要なジェスチャを提供している場合、ユーザデバイスは、強調表示された各認識単位の上に、それぞれの削除アフォーダンス(例えば、小さい削除ボタン2116及び2118)を更に表示する。図21E及び図21Fは、ユーザが、それぞれの認識単位の削除アフォーダンス(例えば、ボックス2118内の第1の認識単位に関する削除ボタン2116)に、(例えば、接触2120を介して)タッチすると、それぞれの(例えば、ボックス2118内の)認識単位が、手書き入力区域804から除去されることを示す。この特定の実施例では、削除される認識単位は、時間的に最後に入力された認識単位ではなく、書き込み方向に沿った、空間的に最後の認識単位でもない。換言すれば、ユーザは、任意の認識単位を、手書き入力区域内にその認識単位が提供された時間及び場所に関わりなく、削除することができる。図21Fは、手書き入力区域内での、この第1の認識単位の削除に応じて、ユーザデバイスが、候補表示区域806内に表示される認識結果も更新することを示す。図21Fに示されるように、ユーザデバイスはまた、削除された認識単位に対応する候補文字を、認識結果からも削除している。結果として、新たな認識結果2120が、候補表示区域806内に示される。 As shown in FIG. 21D, when a user provides the necessary gestures to highlight individual recognition units within handwriting input area 804, the user device Further displaying respective delete affordances (eg, small delete buttons 2116 and 2118) above. 21E and 21F show that when a user touches (e.g., via contact 2120) the delete affordance of the respective recognition unit (e.g., the delete button 2116 for the first recognition unit in box 2118), the respective recognition unit Indicates that the recognition unit (eg, within box 2118) is removed from handwriting input area 804. In this particular example, the deleted recognition unit is not the temporally last input recognition unit, nor is it the spatially last recognition unit along the writing direction. In other words, the user can delete any recognition unit, regardless of when and where the recognition unit was provided within the handwriting input area. FIG. 21F shows that in response to the deletion of this first recognition unit within the handwriting input area, the user device also updates the recognition results displayed within candidate display area 806. As shown in FIG. 21F, the user device also deletes the candidate characters corresponding to the deleted recognition units from the recognition results. As a result, new recognition results 2120 are shown within candidate display area 806.

図21G及び図21Hに示されるように、第1の認識単位が、手書き入力インタフェース804から除去された後、ユーザは、この削除された認識単位によって従前に占有されていた区域内に、複数の新たな手書きストローク2122を提供している。ユーザデバイスは、手書き入力区域804内の、現時点で蓄積されている手書き入力を、再分割している。この手書き入力から特定された認識単位に基づいて、ユーザデバイスは、候補表示区域806内に、認識結果(例えば、結果2124及び2126)を再生成している。図21G及び図21Hは、ユーザが、それらの認識結果のうちの1つ(例えば、結果2124)を、(例えば、接触2128を介して)選択しており、その選択された認識結果のテキストが、テキスト入力区域808内に入力されることを示す。 As shown in FIGS. 21G and 21H, after the first recognition unit is removed from the handwriting input interface 804, the user can create multiple recognition units within the area previously occupied by the deleted recognition unit. A new handwritten stroke 2122 is provided. The user device has subdivided the currently accumulated handwriting input within the handwriting input area 804. Based on the recognition units identified from this handwritten input, the user device has regenerated recognition results (eg, results 2124 and 2126) within candidate display area 806. 21G and 21H show that the user has selected (e.g., via contact 2128) one of the recognition results (e.g., result 2124), and the text of the selected recognition result is , is entered into the text input area 808.

図22A及び図22Bは、現在の手書き入力内で特定された個別の認識単位が、視覚的に提示され、それらの認識単位が形成される時間的順序に関わりなく、個別に削除することが可能な、例示的プロセス2200に関する流れ図である。図21A~図21Hは、一部の実施形態に係る、プロセス2200を示す。 22A and 22B show that individual recognition units identified within the current handwriting input are visually presented and can be deleted individually, regardless of the temporal order in which they were formed. 22 is a flowchart for an example process 2200. 21A-21H illustrate a process 2200, according to some embodiments.

例示的プロセス2200では、ユーザデバイスは、ユーザから手書き入力を受信する(2202)。この手書き入力は、デバイスに結合されたタッチ感知面上に提供される、複数の手書きストロークを含む。一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの手書き入力区域(例えば、手書き入力区域804)内に、それらの複数の手書きストロークをレンダリングする(2204)。一部の実施形態では、ユーザデバイスは、それらの複数の手書きストロークを、2つ以上の認識単位へと分割し(2206)、各認識単位は、それらの複数の手書きストロークのうちの対応のサブセットを含む。 In the example process 2200, a user device receives handwritten input from a user (2202). The handwriting input includes a plurality of handwritten strokes provided on a touch-sensitive surface coupled to the device. In some embodiments, the user device renders the plurality of handwritten strokes within a handwriting input area (eg, handwriting input area 804) of the handwriting input interface (2204). In some embodiments, the user device divides (2206) the plurality of handwritten strokes into two or more recognition units, each recognition unit being a corresponding subset of the plurality of handwritten strokes. including.

一部の実施形態では、ユーザデバイスは、ユーザから編集リクエストを受信する(2208)。一部の実施形態では、この編集リクエストは、手書き入力インタフェース内に提供された、既定のアフォーダンス(例えば、図21Dでのアフォーダンス2112)の上で検出される、接触である(2210)。一部の実施形態では、この編集リクエストは、手書き入力インタフェース内の既定の区域の上で検出される、タップジェスチャである(2212)。一部の実施形態では、この既定の区域は、手書き入力インタフェースの手書き入力区域内に存在する。一部の実施形態では、この既定の区域は、手書き入力インタフェースの手書き入力区域の外側に存在する。一部の実施形態では、手書き入力区域の外側での、別の既定のジェスチャ(例えば、十字ジェスチャ、水平スワイプジェスチャ、垂直スワイプジェスチャ、傾斜スワイプジェスチャ)を、編集リクエストとして使用することができる。手書き入力区域の外側でのジェスチャは、手書き入力区域の外側に提供されるため、手書きストロークから容易に識別することができる。 In some embodiments, the user device receives an edit request from the user (2208). In some embodiments, the edit request is a touch detected (2210) over a predefined affordance (eg, affordance 2112 in FIG. 21D) provided within the handwriting input interface. In some embodiments, the edit request is a tap gesture detected over a predetermined area within the handwriting input interface (2212). In some embodiments, this predetermined area exists within the handwriting input area of the handwriting input interface. In some embodiments, this predetermined area is outside the handwriting input area of the handwriting input interface. In some embodiments, another predefined gesture outside the handwriting input area (eg, crosshair gesture, horizontal swipe gesture, vertical swipe gesture, tilt swipe gesture) may be used as an edit request. Gestures outside the handwriting input area can be easily distinguished from handwritten strokes because they are provided outside the handwriting input area.

一部の実施形態では、この編集リクエストに応じて、ユーザデバイスは、例えば、図21Dでのボックス2108及び2110を使用して、手書き入力区域内の2つ以上の認識単位を、視覚的に識別する(2214)。一部の実施形態では、2つ以上の認識単位を視覚的に識別することは、手書き入力区域内の2つ以上の認識単位間の、それぞれの境界線を強調表示することを更に含む(2216)。様々な実施形態では、現在の手書き入力内で特定された認識単位を視覚的に識別する、種々の方法を使用することができる。 In some embodiments, in response to this edit request, the user device visually identifies two or more recognition units within the handwriting input area using, for example, boxes 2108 and 2110 in FIG. 21D. (2214). In some embodiments, visually identifying the two or more recognition units further includes highlighting respective boundaries between the two or more recognition units within the handwriting input area (2216). ). In various embodiments, various methods of visually identifying identified recognition units within the current handwriting input may be used.

一部の実施形態では、ユーザデバイスは、手書き入力区域から、2つ以上の認識単位のうちのそれぞれを、個別に削除する手段を提供する(2218)。一部の実施形態では、2つ以上の認識単位のうちのそれぞれを、個別に削除する手段は、例えば、図21Dでの削除ボタン2116及び2118によって示されるような、各認識単位の近位に表示される、それぞれの削除ボタンである。一部の実施形態では、2つ以上の認識単位のうちのそれぞれを、個別に削除する手段は、各認識単位の上での、既定の削除ジェスチャ入力を検出する手段である。一部の実施形態では、ユーザデバイスは、強調表示された認識単位の上に、個別の削除アフォーダンスを視覚的に表示しない。その代わりに、一部の実施形態では、ユーザは、削除ジェスチャを使用して、その削除ジェスチャの下の、それぞれの認識単位を削除することが可能となる。一部の実施形態では、ユーザデバイスが、視覚的に強調表示された方式で、認識単位を表示している際には、ユーザデバイスは、手書き入力区域内に、更なる手書きストロークを受け入れない。その代わりに、視覚的に強調表示された認識単位の上で検出される、既定のジェスチャ又は任意のジェスチャが、ユーザデバイスに、その認識単位を手書き入力区域から除去させ、候補表示区域内に表示される認識結果を、適宜に訂正させる。一部の実施形態では、タップジェスチャが、ユーザデバイスに、手書き認識区域内で特定された個別の認識単位を、視覚的に強調表示させ、次いで、ユーザは、削除ボタンを使用して、書き込みの逆方向で、個別の認識単位を1つずつ削除することができる。 In some embodiments, the user device provides a means for individually deleting each of the two or more recognition units from the handwriting input area (2218). In some embodiments, the means for individually deleting each of the two or more recognition units is provided proximal to each recognition unit, e.g., as indicated by delete buttons 2116 and 2118 in FIG. 21D. These are the respective delete buttons that are displayed. In some embodiments, the means for individually deleting each of the two or more recognition units is means for detecting a default deletion gesture input on each recognition unit. In some embodiments, the user device does not visually display a separate deletion affordance above the highlighted recognition unit. Instead, in some embodiments, the user may use a delete gesture to delete the respective recognition unit under the delete gesture. In some embodiments, when the user device is displaying the recognition unit in a visually highlighted manner, the user device does not accept further handwriting strokes within the handwriting input area. Instead, a predetermined gesture or any gesture detected over a visually highlighted recognition unit causes the user device to remove the recognition unit from the handwriting input area and display it within the candidate display area. The resulting recognition results are corrected as appropriate. In some embodiments, the tap gesture causes the user device to visually highlight individual recognition units identified within the handwriting recognition area, and the user then uses a delete button to In the opposite direction, individual recognition units can be deleted one by one.

一部の実施形態では、ユーザデバイスは、例えば、図21Eに示されるように、2つ以上の認識単位のうちの第1の認識単位を、手書き入力区域から個別に削除するための削除入力を、ユーザから、提供された手段を通じて受信する(2224)。この削除入力に応じて、ユーザデバイスは、例えば、図21Fに示されるように、手書き入力区域から、第1の認識単位内の、手書きストロークのうちの対応のサブセットを除去する(2226)。一部の実施形態では、第1の認識単位は、2つ以上の認識単位内の、空間的に最初の認識単位である。一部の実施形態では、第1の認識単位は、例えば、図21E及び図21Fに示されるように、2つ以上の認識単位の中の、空間的に中間の認識単位である。一部の実施形態では、第1の認識単位は、2つ以上の認識単位の中の、空間的に最後の認識単位である。 In some embodiments, the user device inputs a delete input to individually delete a first recognition unit of the two or more recognition units from the handwriting input area, e.g., as shown in FIG. 21E. , from the user through the provided means (2224). In response to the deletion input, the user device removes (2226) the corresponding subset of handwritten strokes within the first recognition unit from the handwriting input area, eg, as shown in FIG. 21F. In some embodiments, the first recognition unit is a spatially first recognition unit within the two or more recognition units. In some embodiments, the first recognition unit is a spatially intermediate recognition unit among the two or more recognition units, eg, as shown in FIGS. 21E and 21F. In some embodiments, the first recognition unit is the spatially last recognition unit of the two or more recognition units.

一部の実施形態では、ユーザデバイスは、複数の手書きストロークから、分割束を生成し(2228)、この分割束は、それぞれがそれらの複数の手書きストロークから特定される対応の認識単位のセットを表す、複数の代替的な分割鎖を含む。例えば、図21Gは、認識結果2024及び2026を示し、認識結果2024は、2つの認識単位を有する1つの分割鎖から生成され、認識結果2026は、3つの認識単位を有する別の分割鎖から生成される。一部の実施形態では、ユーザデバイスは、ユーザから、2つ以上の連続的編集リクエストを受信する(2230)。例えば、それらの2つ以上の連続的編集リクエストは、図21Gでのアフォーダンス2112上での、幾つかの連続的タップとすることができる。一部の実施形態では、2つ以上の連続的編集リクエストのそれぞれに応じて、ユーザデバイスは、手書き入力区域内で、複数の代替的な分割鎖のうちの異なる1つからの、対応の認識単位のセットを、視覚的に識別する(2232)。例えば、第1のタップジェスチャに応じて、手書き入力区域804内で、2つの(例えば、それぞれ、文字「
」及び「
」に関する)認識単位が強調表示され、第2のタップジェスチャに応じて、3つの(例えば、それぞれ、文字「
」、「
」、及び「
」に関する)認識単位が強調表示される。一部の実施形態では、第3のタップジェスチャに応じて、視覚的な強調表示が、任意選択的に、全ての認識単位から除去され、手書き入力区域は、通常状態に戻り、更なるストロークを受け入れる準備が整う。一部の実施形態では、ユーザデバイスは、手書き入力区域内に現在表されている、対応の認識単位のセットのそれぞれを、個別に削除する手段を提供する(2234)。一部の実施形態では、この手段は、強調表示された各認識単位に関する、個別の削除ボタンである。一部の実施形態では、この手段は、強調表示された各認識単位の上での、既定の削除ジェスチャを検出し、及び、その既定の削除ジェスチャの下の強調表示された認識単位を、削除する機能を呼び出す手段である。
In some embodiments, the user device generates (2228) a segmented bundle from the plurality of handwritten strokes, each segmented bundle having a set of corresponding recognition units identified from the plurality of handwritten strokes. , including multiple alternative split strands. For example, FIG. 21G shows recognition results 2024 and 2026, where recognition result 2024 is generated from one split chain with two recognition units and recognition result 2026 is generated from another split chain with three recognition units. be done. In some embodiments, the user device receives two or more consecutive edit requests from the user (2230). For example, those two or more consecutive edit requests may be several consecutive taps on affordance 2112 in FIG. 21G. In some embodiments, in response to each of the two or more consecutive editing requests, the user device recognizes, within the handwriting input area, a correspondence from a different one of the plurality of alternative split chains. A set of units is visually identified (2232). For example, in response to a first tap gesture, two (e.g., each character "
"as well as"
”) is highlighted, and in response to the second tap gesture, three (e.g., respectively, the letters “
”, “
",as well as"
”) is highlighted. In some embodiments, in response to a third tap gesture, the visual highlighting is optionally removed from all recognition units and the handwriting input area returns to its normal state to allow further strokes. Ready to accept. In some embodiments, the user device provides a means for individually deleting each of the set of corresponding recognition units currently represented within the handwriting input area (2234). In some embodiments, this means is a separate delete button for each highlighted recognition unit. In some embodiments, the means detects a default delete gesture above each highlighted recognition unit, and deletes the highlighted recognition unit below the default delete gesture. It is a means to call the function to do.

本明細書で説明されるように、一部の実施形態では、ユーザデバイスは、手書き入力区域内での、継続的入力モードを提供する。手書き入力区域の面積は、ポータブルユーザデバイス上では限られているため、ユーザによって提供される手書き入力をキャッシュして、ユーザが、従前に提供されている手書き入力を確定することなく、画面空間を再使用することを可能にするための方法を提供することが、望ましい場合がある。一部の実施形態では、ユーザデバイスは、ユーザが手書き入力区域の終端部に十分に接近しつつある場合に、入力区域が特定の量(例えば、一度に1つの認識単位)で徐々に移行する、スクロールする手書き入力区域を提供する。一部の実施形態では、手書き入力区域内で既存の認識単位を移行させることは、ユーザの書き込みプロセスを妨げ、恐らくは、認識単位の正しい分割を妨げる可能性があるため、認識単位を動的に移行させることなく、その入力区域の従前に使用された領域を、再生利用することが有利な場合がある。一部の実施形態では、テキスト入力区域内に未だ入力されていない手書き入力によって占有される区域を、ユーザが再使用する場合、その手書き入力区域に関する最上位の認識結果が、テキスト入力区域内に自動的に入力されて、ユーザは、その最上ランクの認識結果を明示的に選択することなく、新たな手書き入力を継続して提供することができる。 As described herein, in some embodiments, the user device provides a continuous input mode within the handwriting input area. Since the area of the handwriting input area is limited on portable user devices, handwriting input provided by the user can be cached to free up screen space without the user having to commit to previously provided handwriting input. It may be desirable to provide a method to enable reuse. In some embodiments, the user device causes the input area to gradually transition by a certain amount (e.g., one recognition unit at a time) when the user is approaching the end of the handwriting input area sufficiently. , provides a scrolling handwriting input area. In some embodiments, the recognition units are dynamically moved, as migrating existing recognition units within the handwriting input area may interfere with the user's writing process and possibly prevent the recognition units from being correctly split. It may be advantageous to reclaim previously used areas of the input area without migration. In some embodiments, if a user reuses an area occupied by handwriting input that has not yet been entered within the text input area, the top recognition result for that handwriting input area is Automatically entered, the user can continue to provide new handwriting input without explicitly selecting the top-ranked recognition result.

一部の従来システムでは、ユーザは、手書き入力区域内に依然として示されている、既存の手書き入力の上に、書き込むことが可能となる。そのようなシステムでは、時間的情報を使用して、新たなストロークが、以前の認識単位の一部であるか、又は新たな認識単位の一部であるかを判定する。そのような時間的情報に依存するシステムは、ユーザが手書き入力を提供する速度及び緩急に対して、厳格な要件を強いるものであり、多くのユーザには、その要件を満たすことは困難である。更には、その手書き入力の視覚的レンダリングは、ユーザにとって解読することが困難な、雑然としたものになる恐れがある。それゆえ、その書き込みプロセスは、ユーザにとって苛立たしく混乱したものとなり、劣悪なユーザエクスペリエンスをもたらす恐れがある。 Some conventional systems allow a user to write on top of existing handwriting input that is still shown within the handwriting input area. In such systems, temporal information is used to determine whether a new stroke is part of a previous recognition unit or a new recognition unit. Systems that rely on such temporal information impose strict requirements on the speed and rapidity with which users provide handwritten input, requirements that are difficult for many users to meet. . Furthermore, the visual rendering of the handwritten input can be cluttered that is difficult for the user to decipher. Therefore, the writing process can be frustrating and confusing for the user, resulting in a poor user experience.

本明細書で説明されるように、従前に書き込まれた認識単位によって占有される区域を、ユーザがいつ再使用して、その手書き入力区域内での書き込みを継続することができるかを示すために、フェーディングプロセスが使用される。一部の実施形態では、このフェーディングプロセスは、閾値時間量にわたって手書き入力区域内に提供されている、各認識単位の視認性を徐々に低減して、その上に新たなストロークが書き込まれる場合に、既存のテキストが、その新たなストロークと視覚的に競合することがない。一部の実施形態では、フェードした認識単位の上に書き込むことにより、ユーザが書き込みを中断し、最上ランクの認識結果に関する選択入力を、明示的に提供することを必要とせずに、その認識単位に関する最上ランクの認識結果を、テキスト入力区域内に自動的に入力させる。最上ランクの認識結果の、この暗黙的かつ自動的な確認は、手書き入力インタフェースの入力の効率及び速度を向上させ、現在のテキスト構成の思考の流れを維持するための、ユーザに強いられる認知負担を軽減する。一部の実施形態では、フェードした認識単位の上に書き込むことにより、最上ランクの検索結果の自動的な選択は引き起こされない。その代わりに、フェードした認識単位は、手書き入力スタック内にキャッシュされ、現在の手書き入力として、新たな手書き入力と組み合わされる。ユーザは、手書き入力スタック内に蓄積された、それらの認識単位の全てに基づいて生成される認識結果を、選択を実施する前に視認することができる。 To indicate when a user can reuse an area occupied by a previously written recognition unit to continue writing within that handwriting input area, as described herein; A fading process is used. In some embodiments, this fading process gradually reduces the visibility of each recognition unit provided within the handwriting input area for a threshold amount of time when a new stroke is written over it. , existing text does not visually conflict with the new strokes. In some embodiments, by writing over a faded recognition unit, the user can interrupt writing and select input for the top-ranked recognition result without having to explicitly provide selection input for that recognition unit. The recognition result with the highest rank for is automatically entered into the text input area. This implicit and automatic confirmation of the top-ranked recognition results improves the efficiency and speed of input in the handwriting input interface and reduces the cognitive burden imposed on the user to maintain the current flow of thought of the text composition. Reduce. In some embodiments, writing over a faded recognition unit does not cause automatic selection of the top-ranked search result. Instead, the faded recognition unit is cached in the handwriting input stack and combined with the new handwriting input as the current handwriting input. The user can view the recognition results generated based on all of those recognition units accumulated in the handwriting input stack before making a selection.

図23A~図23Jは、手書き入力区域の異なる領域内に提供された認識単位が、例えば、既定の時間量の後に、それらの対応の領域から徐々にフェードアウトし、このフェードアウトが特定の領域内で生じた後、ユーザは、その領域内に新たな手書きストロークを提供することが可能となる、例示的なユーザインタフェース及びプロセスを示す。 23A-23J show that recognition units provided within different regions of a handwriting input area gradually fade out from their corresponding regions, e.g. after a predetermined amount of time, and that this fade-out occurs within a particular region. 3 illustrates an example user interface and process that allows a user to provide new handwritten strokes within that region.

図23Aに示されるように、ユーザは、手書き入力区域804内に、複数の手書きストローク2302(例えば、大文字「I」に関する3つの手書きストローク)を提供している。手書きストローク2302は、ユーザデバイスによって、1つの認識単位として特定される。一部の実施形態では、手書き入力区域804内に現在示されている手書き入力は、ユーザデバイスの手書き入力スタック内の、第1の層内にキャッシュされる。この特定された認識単位に基づいて生成された、幾つかの認識結果が、候補表示区域804内に提供される。 As shown in FIG. 23A, the user has provided a plurality of handwritten strokes 2302 (eg, three handwritten strokes for the capital letter "I") within the handwriting input area 804. Handwritten strokes 2302 are identified by the user device as one recognition unit. In some embodiments, the handwriting input currently shown within the handwriting input area 804 is cached in a first layer within the handwriting input stack of the user device. Several recognition results generated based on this identified recognition unit are provided in candidate display area 804.

図23Bは、ユーザが、ストローク2304の右に、1つ以上のストローク2302を継続して書き込むと、第1の認識単位内の手書きストローク2302が、手書き入力区域804内で、徐々にフェードアウトを開始することを示す。一部の実施形態では、この第1の認識単位の視覚的レンダリングの、徐々のフェーディング又は消失を模倣する、アニメーションが表示される。例えば、このアニメーションは、ホワイトボードからインクが蒸発する、視覚効果を作り出すことができる。一部の実施形態では、認識単位のフェーディングは、認識単位全体にわたって均一なものではない。一部の実施形態では、認識単位のフェーディングは、経時的に増大して、最終的に、その認識単位は、手書き区域内で完全に不可視となる。しかしながら、認識単位が、もはや手書き入力区域804内で可視ではない場合であっても、一部の実施形態では、その不可視の認識単位は、手書き入力スタックの最上位に維持され、その認識単位から生成された認識結果が、候補表示区域内に継続して表示される。一部の実施形態では、フェードした認識単位は、その上に新たな手書き入力が書き込まれるまで、完全にはビューから除去されない。 FIG. 23B shows that as the user continues to write one or more strokes 2302 to the right of stroke 2304, the handwritten strokes 2302 within the first recognition unit begin to gradually fade out within the handwriting input area 804. Show that. In some embodiments, an animation is displayed that mimics a gradual fading or disappearance of the visual rendering of this first recognition unit. For example, this animation can create the visual effect of ink evaporating from a whiteboard. In some embodiments, the fading of the recognition unit is not uniform across the recognition unit. In some embodiments, the fading of the recognition unit increases over time until the recognition unit becomes completely invisible within the handwriting area. However, even if a recognition unit is no longer visible within the handwriting input area 804, in some embodiments the invisible recognition unit is maintained at the top of the handwriting input stack and removed from the recognition unit. The generated recognition results are continuously displayed within the candidate display area. In some embodiments, a faded recognition unit is not completely removed from view until new handwriting input is written over it.

一部の実施形態では、ユーザデバイスは、フェーディングアニメーションが開始すると即座に、新たな手書き入力が、フェードした認識単位によって占有されていた領域の上に提供されることを可能にする。一部の実施形態では、ユーザデバイスは、フェーディングが特定の段階に(例えば、最も微弱なレベルに、又は、その領域内で認識が完全に不可視となるまで)進行した後にのみ、新たな手書き入力が、フェードした認識単位によって占有されていた領域の上に提供されることを可能にする。 In some embodiments, the user device allows new handwriting input to be provided over the area occupied by the faded recognition unit as soon as the fading animation begins. In some embodiments, the user device detects the new handwriting only after the fading has progressed to a certain stage (e.g., to the faintest level or until recognition is completely invisible within that region). Allows input to be provided over the area occupied by the faded recognition unit.

図23Cは、第1の認識単位(すなわち、ストローク2302)が、そのフェーディングプロセスを完了している(例えば、インクの色が、極めて微弱なレベルで安定化しているか、又は不可視になっている)ことを示す。ユーザデバイスは、ユーザによって提供された更なる手書きストロークから、更なる認識単位(例えば、手書き文字「a」及び「m」に関する認識単位)を特定し、候補表示区域804内に提示される認識結果を更新している。 FIG. 23C shows that the first recognition unit (i.e., stroke 2302) has completed its fading process (e.g., the ink color has stabilized at a very faint level or has become invisible). ). The user device identifies additional recognition units (e.g., recognition units for handwritten characters "a" and "m") from additional handwritten strokes provided by the user and presents recognition results in candidate display area 804. is being updated.

図22D~図22Fは、時間の経過と共に、ユーザが、手書き入力区域804内に、複数の更なる手書きストローク(例えば、2304及び2306)を提供していることを示す。同時に、従前に特定された認識単位は、手書き入力区域804から、徐々にフェードして消える。一部の実施形態では、各認識単位が、その認識単位が特定された後に、それ自体のフェーディングプロセス開始するためには、既定の時間量を要する。一部の実施形態では、各認識単位に関するフェーディングプロセスは、ユーザが、その認識単位の下流に、第2の認識単位を入力することを開始するまでは、開始されない。図23B~図23Fに示されるように、手書き入力が筆写体で提供される場合、単一のストローク(例えば、ストローク2304又はストローク2306)は、手書き入力区域内で、複数の認識単位(例えば、語「am」又は「back」内の各手書き文字に関する認識単位)を経て続けられる場合がある。 22D-22F show that over time, the user provides multiple additional handwriting strokes (eg, 2304 and 2306) within handwriting input area 804. At the same time, the previously identified recognition units gradually fade away from the handwriting input area 804. In some embodiments, each recognition unit requires a predetermined amount of time to begin its own fading process after the recognition unit is identified. In some embodiments, the fading process for each recognition unit does not begin until the user begins inputting a second recognition unit downstream of that recognition unit. As shown in FIGS. 23B-23F, when the handwriting input is provided in cursive, a single stroke (e.g., stroke 2304 or stroke 2306) may have multiple recognition units (e.g., (recognition unit for each handwritten character within the word "am" or "back").

図22Gは、認識単位が、そのフェーディングプロセスを開始した後であっても、ユーザは、既定の再生入力、例えば、削除ボタン2310上での(例えば、接触2308の後に続く即座のリフトオフによって示されるような)タップジェスチャによって、その認識単位を、非フェード状態に回復させることができることを示す。認識単位が再生されると、その外観は、通常の視認性レベルに戻る。一部の実施形態では、フェードした認識単位の再生は、手書き入力区域804内での書き込みの逆方向で、文字単位で実施される。一部の実施形態では、フェードした認識単位の再生は、手書き入力区域804内で、語単位で実施される。図23Gに示されるように、語「back」に対応する認識単位は、フェード完了状態から、完全な非フェード状態に再生されている。一部の実施形態では、フェーディングプロセスを開始するためのクロックは、認識単位が非フェード状態に再生されると、各認識単位ごとにリセットされる。 FIG. 22G shows that even after the recognition unit has started its fading process, the user can perform a default playback input, e.g., indicated by an immediate liftoff following contact 2308 (e.g., on the delete button 2310). indicates that the recognition unit can be restored to its non-fade state by a tap gesture (such as When the recognition unit is regenerated, its appearance returns to its normal visibility level. In some embodiments, the reproduction of faded recognition units is performed character by character in the opposite direction of writing within the handwriting input area 804. In some embodiments, the reproduction of faded recognition units is performed word by word within the handwriting input area 804. As shown in FIG. 23G, the recognition unit corresponding to the word "back" has been regenerated from a fade complete state to a completely non-fade state. In some embodiments, the clock for starting the fading process is reset for each recognition unit when the recognition unit is regenerated to a non-fading state.

図22Hは、削除ボタン上での持続的接触により、デフォルトの書き込み方向での最後の認識単位(例えば、語「back」内の文字「k」に関する認識単位)が、手書き入力区域804から削除されることを示す。この削除入力が継続的に維持されると、より多くの認識単位(例えば、語「back」内の文字「c」、「a」、「b」に関する認識単位)が、書き込みの逆方向で、1つずつ削除される。一部の実施形態では、認識単位の削除は語単位であり、手書き入力区域804から削除される手書きの語「back」の全ての文字が、同時に除去される。図22Hはまた、接触2308が、手書きの語「back」内の文字「b」に関する認識単位の削除の後に、削除ボタン2310上で維持されると、従前にフェードした認識単位「m」が、同様に再生されることも示す。 FIG. 22H shows that a sustained touch on the delete button causes the last recognition unit in the default writing direction (e.g., the recognition unit for the letter "k" in the word "back") to be deleted from the handwriting input area 804. to show that If this deletion input is maintained continuously, more recognition units (e.g., recognition units for the letters "c", "a", "b" in the word "back") will be written in the opposite direction of writing. They are deleted one by one. In some embodiments, the recognition unit deletion is word-by-word, and all characters of the handwritten word "back" that are deleted from the handwriting input area 804 are removed at the same time. FIG. 22H also shows that when contact 2308 is maintained on delete button 2310 after deletion of the recognition unit for the letter "b" in the handwritten word "back", the previously faded recognition unit "m" is It also shows that it will be played in the same way.

図23Iは、手書きの語「am」内の再生された認識単位「m」の削除が実施される前に、削除入力が停止される場合には、その再生された認識単位が、再び徐々にフェードすることを示す。一部の実施形態では、各認識単位の状態(例えば、1つ以上のフェード状態及び非フェード状態のセットから選択される状態)が、手書き入力スタック内で維持及び更新される。 FIG. 23I shows that if the deletion input is stopped before the deletion of the reproduced recognition unit "m" in the handwritten word "am" is performed, the reproduced recognition unit is again gradually Indicates a fade. In some embodiments, the state of each recognition unit (eg, a state selected from a set of one or more fade and non-fade states) is maintained and updated within the handwriting input stack.

図23Jは、ユーザが、手書き入力区域内の、フェードした認識単位(例えば、文字「I」に関する認識単位)によって占有されていた区域の上に、1つ以上のストローク2312を提供している場合、一部の実施形態では、図23I、図23Jに示されるように、ストローク2312の前に実施された手書き入力に関する、最上ランクの認識結果(例えば、結果2314)のテキストが、テキスト入力区域808内に、自動的に入力されることを示す。図23Jに示されるように、テキスト「I am」は、もはや暫定的であるとして示されず、その代わりに、テキスト入力区域808内に確定されている。一部の実施形態では、完全にフェードした手書き入力又は部分的にフェードした手書き入力に関して、テキスト入力が実施されると、その手書き入力は、手書き入力スタックから除去される。新たに入力されたストローク(例えば、ストローク2312)が、手書き入力スタック内の現在の入力になる。 FIG. 23J shows a case where the user provides one or more strokes 2312 over the area in the handwriting input area that was occupied by the faded recognition unit (e.g., the recognition unit for the letter "I"). , in some embodiments, the text of the top-ranked recognition result (e.g., result 2314) for the handwriting input performed before the stroke 2312 is included in the text input area 808, as shown in FIGS. 23I, 23J. indicates that it will be automatically entered. As shown in FIG. 23J, the text "I am" is no longer shown as being tentative, but instead has been confirmed within the text entry area 808. In some embodiments, when text input is performed for a fully faded handwriting input or a partially faded handwriting input, the handwriting input is removed from the handwriting input stack. The newly input stroke (eg, stroke 2312) becomes the current input in the handwriting input stack.

図23Jに示されるように、テキスト「I am」は、もはや暫定的であるとして示されず、その代わりに、テキスト入力区域808内に確定されている。一部の実施形態では、完全にフェードした手書き入力又は部分的にフェードした手書き入力に関して、テキスト入力が実施されると、その手書き入力は、手書き入力スタックから除去される。新たに入力されたストローク(例えば、ストローク2312)が、手書き入力スタック内の現在の入力になる。 As shown in FIG. 23J, the text "I am" is no longer shown as being tentative, but instead has been confirmed within the text entry area 808. In some embodiments, when text input is performed for a fully faded handwriting input or a partially faded handwriting input, the handwriting input is removed from the handwriting input stack. The newly input stroke (eg, stroke 2312) becomes the current input in the handwriting input stack.

一部の実施形態では、ストローク2312が、手書き入力区域内の、フェードした認識単位(例えば、文字「I」に関する認識単位)によって占有されていた区域の上に提供される場合、ストローク2312の前に実施された手書き入力に関する、最上ランクの認識結果(例えば、結果2314)のテキストは、テキスト入力区域808内に、自動的には入力されない。その代わりに、手書き入力区域804内の(フェード及び非フェードの双方の)現在の手書き入力が消去され、手書き入力スタック内にキャッシュされる。新たなストローク2312は、その手書き入力スタック内のキャッシュされた手書き入力に付加される。ユーザデバイスは、手書き入力スタック内に現時点で蓄積されている手書き入力の全体に基づいて、認識結果を判定する。それらの認識結果は、候補表示区域内に表示される。換言すれば、現時点で蓄積されている手書き入力の一部分のみが、手書き入力区域804内に示される場合であっても、認識結果は、手書き入力スタック内にキャッシュされた(可視の部分、及びもはや可視ではない部分の双方の)手書き入力全体に基づいて生成される。 In some embodiments, if the stroke 2312 is provided over an area in the handwriting input area that was occupied by a faded recognition unit (e.g., a recognition unit for the letter "I"), the previous stroke 2312 The text of the top-ranked recognition result (eg, result 2314) for the handwritten input performed on the handwriting input is not automatically entered into the text entry area 808. Instead, the current handwriting input (both faded and non-faded) within the handwriting input area 804 is erased and cached in the handwriting input stack. The new stroke 2312 is appended to the cached handwriting input in that handwriting input stack. The user device determines the recognition result based on the total amount of handwriting input currently stored in the handwriting input stack. Those recognition results are displayed within the candidate display area. In other words, even if only a portion of the currently accumulated handwriting input is shown within the handwriting input area 804, the recognition result is cached within the handwriting input stack (the visible portion and no longer visible). generated based on the entire handwritten input (both non-visible parts).

図23Kは、ユーザが、手書き入力区域804内に、更なるストローク2316を入力しており、そのストロークが、経時的にフェードしていることを示す。図23Lは、フェードしたストローク2312及び2316の上に書き込まれた、新たなストローク2318により、フェードしたストローク2312及び2316に関する最上位の認識結果2320のテキストが、テキスト入力区域808内に入力されていることを示す。 FIG. 23K shows that the user has entered additional strokes 2316 within the handwriting input area 804, and the strokes are fading over time. FIG. 23L shows that a new stroke 2318 written above the faded strokes 2312 and 2316 has entered the text of the top recognition result 2320 for the faded strokes 2312 and 2316 into the text input area 808. Show that.

一部の実施形態では、ユーザは、任意選択的に、複数の行で手書き入力を提供する。一部の実施形態では、複数行の入力が有効である場合に、同じフェーディングプロセスを使用して、新たな手書き入力のために、手書き入力区域をクリアすることができる。 In some embodiments, the user optionally provides handwritten input in multiple lines. In some embodiments, the same fading process may be used to clear the handwriting input area for new handwriting input when multiple lines of input are valid.

図24A及び図24Bは、手書き入力インタフェースの手書き入力区域内に、フェーディングプロセスを提供するための、例示的プロセス2400の流れ図である。図23A~図23Kは、一部の実施形態に係る、プロセス2400を示す。 24A and 24B are a flowchart of an example process 2400 for providing a fading process within a handwriting input area of a handwriting input interface. 23A-23K illustrate a process 2400, according to some embodiments.

一部の実施形態では、デバイスは、ユーザから第1の手書き入力を受信する(2402)。この第1の手書き入力は、複数の手書きストロークを含み、それらの複数の手書きストロークは、手書き入力インタフェースの手書き入力区域に関連付けられた、それぞれの書き込み方向に沿って分布する、複数の認識単位を形成する。一部の実施形態では、ユーザデバイスは、それらの手書きストロークがユーザによって提供される際に、手書き入力区域内に、それらの複数の手書きストロークのそれぞれをレンダリングする(2404)。 In some embodiments, the device receives (2402) a first handwritten input from a user. The first handwriting input includes a plurality of handwritten strokes, the plurality of handwritten strokes having a plurality of recognition units distributed along respective writing directions associated with a handwriting input area of the handwriting input interface. Form. In some embodiments, the user device renders each of the plurality of handwritten strokes within the handwriting input area as the handwritten strokes are provided by the user (2404).

一部の実施形態では、ユーザデバイスは、認識単位が完全にレンダリングされた後に、複数の認識単位のそれぞれに関する、それぞれのフェーディングプロセスを開始する(2406)。一部の実施形態では、それぞれのフェーディングプロセスの間に、第1の手書き入力内の認識単位のレンダリングが、フェードして消える。このことは、一部の実施形態では、図23A~図23Fに示される。 In some embodiments, the user device initiates a respective fading process for each of the plurality of recognition units after the recognition units are completely rendered (2406). In some embodiments, during each fading process, the rendering of the recognition unit within the first handwriting input fades out. This is illustrated in FIGS. 23A-23F in some embodiments.

一部の実施形態では、ユーザデバイスは、例えば、図23I、図23J、及び図23K、図23Lに示されるように、複数の認識単位のうちのフェードした認識単位によって占有されていた、手書き入力区域の領域の上に、ユーザから第2の手書き入力を受信する(2408)。一部の実施形態では、この第2の手書き入力の受信に応じて(2410)、ユーザデバイスは、手書き入力区域内に、その第2の手書き入力をレンダリングして(2412)、全てのフェードした認識単位を、手書き入力区域から消去する(2414)。一部の実施形態では、第2の手書き入力の前に手書き入力区域内に入力されていた、全ての認識単位は、その認識単位が、そのフェーディングプロセスを開始しているか否かにかかわらず、手書き入力区域から消去される。このことは、例えば、図23I、図23J、及び図23K、図23Lに示される。 In some embodiments, the user device receives handwriting input that was occupied by the faded recognition unit of the plurality of recognition units, as shown, for example, in FIGS. 23I, 23J, and 23K, 23L. A second handwritten input is received from the user over the area of the area (2408). In some embodiments, in response to receiving this second handwriting input (2410), the user device renders (2412) the second handwriting input within the handwriting input area and all faded The recognition unit is deleted from the handwriting input area (2414). In some embodiments, all recognition units that were entered within the handwriting input area prior to the second handwriting input, whether or not the recognition unit has started its fading process, , erased from the handwriting input area. This is shown, for example, in FIGS. 23I, 23J, and 23K, 23L.

一部の実施形態では、ユーザデバイスは、第1の手書き入力に関する、1つ以上の認識結果を生成する(2416)。一部の実施形態では、ユーザデバイスは、手書き入力インタフェースの候補表示区域内に、それらの1つ以上の認識結果を表示する(2418)。一部の実施形態では、第2の手書き入力の受信に応じて、ユーザデバイスは、候補表示区域内に表示された最上ランクの認識結果を、ユーザ選択なしで、手書き入力インタフェースのテキスト入力区域内に、自動的に入力する(2420)。このことは、例えば、図23I、図23J、及び図23K、図23Lに示される。 In some embodiments, the user device generates (2416) one or more recognition results regarding the first handwritten input. In some embodiments, the user device displays the one or more recognition results within a candidate display area of the handwriting input interface (2418). In some embodiments, in response to receiving the second handwriting input, the user device selects the top-ranked recognition result displayed within the candidate display area within the text input area of the handwriting input interface without user selection. (2420). This is shown, for example, in FIGS. 23I, 23J, and 23K, 23L.

一部の実施形態では、ユーザデバイスは、第1の手書き入力及び第2の手書き入力を含む、入力スタックを記憶する(2422)。一部の実施形態では、ユーザデバイスは、第1の手書き入力と第2の手書き入力との連結から認識された、対応の空間的な文字の配列をそれぞれが含む、1つ以上の複数文字の認識結果を生成する(2424)。一部の実施形態では、ユーザデバイスは、第2の手書き入力のレンダリングが、手書き入力区域内で、第1の手書き入力のレンダリングを置き換えている間に、手書き入力インタフェースの候補表示区域内に、それらの1つ以上の複数文字の認識結果を表示する(2426)。 In some embodiments, the user device stores an input stack that includes the first handwritten input and the second handwritten input (2422). In some embodiments, the user device generates one or more characters, each comprising a corresponding spatial arrangement of characters, recognized from the concatenation of the first handwriting input and the second handwriting input. A recognition result is generated (2424). In some embodiments, the user device is configured to display, within the candidate display area of the handwriting input interface, while the rendering of the second handwriting input replaces the rendering of the first handwriting input within the handwriting input area. The recognition results for one or more of the characters are displayed (2426).

一部の実施形態では、各認識単位に関するそれぞれのフェーディングプロセスは、その認識単位がユーザによって完了された後、既定の期間が経過している場合に開始される。 In some embodiments, a respective fading process for each recognition unit is initiated if a predetermined period of time has elapsed after that recognition unit was completed by the user.

一部の実施形態では、各認識単位に関するフェーディングプロセスは、その認識単位の後に、ユーザが次の認識単位に関するストロークの入力を開始している場合に開始される。 In some embodiments, the fading process for each recognition unit is initiated if, after that recognition unit, the user begins inputting strokes for the next recognition unit.

一部の実施形態では、各認識単位に関するそれぞれのフェーディングプロセスの終了状態は、その認識単位に関して、既定の最小限の視認性を有する状態である。 In some embodiments, the end state of each fading process for each recognition unit is a predetermined minimum visibility state for that recognition unit.

一部の実施形態では、各認識単位に関するそれぞれのフェーディングプロセスの終了状態は、その認識単位に関して、ゼロの視認性を有する状態である。 In some embodiments, the end state of each fading process for each recognition unit is a state with zero visibility for that recognition unit.

一部の実施形態では、第1の手書き入力内の最後の認識単位がフェードした後、ユーザデバイスは、ユーザから、既定の再生入力を受信する(2428)。この既定の再生入力の受信に応じて、ユーザデバイスは、その最後の認識単位を、フェード状態から非フェード状態に復帰させる(2430)。このことは、例えば、図23F~図23Hに示される。一部の実施形態では、この既定の再生入力は、手書き入力インタフェース内に提供された削除ボタン上で検出される、初期の接触である。一部の実施形態では、削除ボタン上で検出される持続的接触が、手書き入力区域から最後の認識単位を削除し、最後から2番目の認識単位を、フェード状態から非フェード状態に再生する。このことは、例えば、図23G及び図23Hに示される。 In some embodiments, after the last recognition unit in the first handwritten input fades, the user device receives a default playback input from the user (2428). In response to receiving this default playback input, the user device returns its last recognition unit from the faded state to the non-fade state (2430). This is shown, for example, in FIGS. 23F-23H. In some embodiments, this default playback input is an initial touch detected on a delete button provided within the handwriting input interface. In some embodiments, a sustained touch detected on the delete button deletes the last recognition unit from the handwriting input area and regenerates the penultimate recognition unit from a faded state to a non-fade state. This is shown, for example, in FIGS. 23G and 23H.

本明細書で説明されるように、マルチスクリプト手書き認識モデルは、ストローク順序非依存式及びストローク方向非依存式の、手書き文字の認識を実行する。一部の実施形態では、この認識モデルは、手書き認識モデルの語彙内の種々の文字に対応する、書き込みサンプルのフラットな画像内に含まれる、空間的に導出される特徴のみについて訓練される。書き込みサンプルの画像は、それらの画像内に含まれる個別のストロークに関連する、いずれの時間的情報も含まないため、結果的に得られる認識モデルは、ストローク順序非依存式及びストローク方向非依存式である。 As described herein, the multi-script handwriting recognition model performs stroke order independent and stroke direction independent recognition of handwritten characters. In some embodiments, the recognition model is trained only on spatially derived features contained within flat images of writing samples that correspond to various characters within the vocabulary of the handwriting recognition model. Because images of writing samples do not contain any temporal information related to the individual strokes contained within those images, the resulting recognition model is stroke order-independent and stroke direction-independent. It is.

上記で説明されるように、ストローク順序及びストローク方向非依存式の手書き認識は、文字の時間的な生成に関連する情報(例えば、それらの文字内のストロークの、時間的配列)に依存する従来の認識システムに勝る、多くの利点を提供する。しかしながら、リアルタイム手書き認識のシナリオでは、個別のストロークに関連する時間的情報が利用可能であり、手書き認識システムの認識精度を向上させるために、この情報を利用することが有益な場合がある。以下では、手書き認識モデルの空間的特徴の抽出に、時間的に導出されるストローク分布情報を統合する技術が説明されるが、この時間的に導出されるストローク分布情報の使用は、手書き認識システムのストローク順序及び/又はストローク方向非依存性を損なうものではない。種々の文字に関連するストローク分布情報に基づいて、明確に異なるストロークのセットで作り出される、類似した見た目の文字間の、曖昧性除去が可能となる。 As explained above, stroke order and stroke direction independent handwriting recognition relies on information related to the temporal production of characters (e.g., the temporal arrangement of strokes within those characters). provides many advantages over other recognition systems. However, in real-time handwriting recognition scenarios, temporal information related to individual strokes is available, and it may be beneficial to utilize this information to improve the recognition accuracy of handwriting recognition systems. In the following, a technique is described that integrates temporally derived stroke distribution information in the extraction of spatial features of a handwriting recognition model. This does not impair the stroke order and/or stroke direction independence of the stroke order and/or stroke direction. Based on stroke distribution information associated with various characters, disambiguation between similar-looking characters produced by distinctly different sets of strokes is possible.

一部の実施形態では、手書き入力が、手書き認識モデル(例えば、CNN)に関する入力画像(例えば、入力ビットマップ画像)に変換される場合、個別のストロークに関連付けられる時間的情報が失われる。例えば、中国文字「
」に関しては、8つの(例えば、図27で#1~#8と標識される)ストロークを使用して、この文字を書き上げることができる。この文字に関するストロークの配列及び方向は、その文字に関連付けられる、幾つかの独自の特徴を提供する。認識システムのストローク順序及びストローク方向非依存性を損なうことなく、ストローク順序及びストローク方向の情報を捕捉するための素朴な方法は、訓練サンプル内に、ストローク順序及びストローク方向の全ての可能な順列を、明示的に列挙することである。しかしながら、単に適度の複雑性の文字に関してさえ、この順列は、10億を超える可能性に及び、実際に実装することは、不可能ではないにせよ、非現実的なものとなる。本明細書で説明されるように、ストローク生成の時系列態様(すなわち、時間的情報)を抽象化する、ストローク分布プロファイルが、各書き込みサンプルに関して生成される。それらの書き込みサンプルのストローク分布プロファイルは、時間的に導出される特徴のセットを抽出するように訓練され、その時間的に導出される特徴のセットが、その後、(例えば、入力ビットマップ画像からの)空間的に導出される特徴と組み合わされて、手書き認識システムのストローク順序及びストローク方向非依存性に影響を及ぼすことなく、認識精度を向上させる。
In some embodiments, when handwriting input is converted to an input image (e.g., an input bitmap image) for a handwriting recognition model (e.g., CNN), temporal information associated with individual strokes is lost. For example, the Chinese character “
”, eight strokes (eg, labeled #1 to #8 in FIG. 27) can be used to write this character. The arrangement and direction of strokes for this character provides some unique characteristics associated with that character. A naive method to capture stroke order and stroke direction information without compromising the stroke order and stroke direction independence of the recognition system is to include all possible permutations of stroke order and stroke direction in the training samples. , to list them explicitly. However, even for characters of even moderate complexity, this permutation amounts to over a billion possibilities, making it impractical, if not impossible, to implement in practice. As described herein, a stroke distribution profile is generated for each writing sample that abstracts the temporal aspects (i.e., temporal information) of stroke generation. The stroke distribution profiles of those writing samples are trained to extract a set of temporally derived features, which are then extracted from the input bitmap image (e.g. ) in combination with spatially derived features to improve recognition accuracy without affecting the stroke order and stroke direction independence of handwriting recognition systems.

本明細書で説明されるように、1つの文字に関連付けられる時間的情報は、各手書きストロークを特徴付ける、様々なピクセル分布を計算することによって抽出される。1つの文字のあらゆる手書きストロークは、所定の方向上に投影される場合に、決定論的なパターン(又は、プロファイル)を生じさせる。このパターン自体は、そのストロークを明確に認識するためには不十分な場合があるが、他の同様のパターンと組み合わされると、この特定のストロークに固有の、特定の特性を捕捉するために適切となり得る。この種のストローク表現を、同様に、空間的特徴の抽出(例えば、CNNでの入力画像に基づく特徴の抽出)と共に統合して、手書き認識モデルのレパートリー内の、類似した見た目の文字間の曖昧性を除去するために有用となり得る、直交性の情報が提供される。 As described herein, temporal information associated with a single character is extracted by calculating various pixel distributions that characterize each handwritten stroke. Every handwritten stroke of a character produces a deterministic pattern (or profile) when projected onto a given direction. This pattern by itself may not be sufficient to clearly recognize that stroke, but when combined with other similar patterns it is adequate to capture certain characteristics unique to this particular stroke. It can be. This type of stroke representation can also be integrated with spatial feature extraction (e.g., feature extraction based on input images in a CNN) to address disambiguation between similar-looking characters in the repertoire of handwriting recognition models. Orthogonality information is provided, which can be useful for removing morphism.

図25A及び図25Bは、手書き認識モデルの訓練の間に、手書きサンプルの、時間的に導出される特徴と空間的に導出される特徴とを統合するための、例示的プロセス2500の流れ図であり、この場合、結果的に得られる認識モデルは、ストローク順序及びストローク方向非依存式のまま維持される。一部の実施形態では、例示的プロセス2500は、訓練された認識モデルをユーザデバイス(例えば、ポータブルデバイス100)に提供する、サーバデバイス上で実行される。一部の実施形態では、このサーバデバイスは、1つ以上のプロセッサ、及びメモリを含み、このメモリは、それらの1つ以上のプロセッサによって実行される場合にプロセス2500を実行する、命令を含む。 25A and 25B are flowcharts of an example process 2500 for integrating temporally and spatially derived features of handwriting samples during training of a handwriting recognition model. , in which case the resulting recognition model remains stroke order and stroke direction independent. In some embodiments, example process 2500 is executed on a server device that provides the trained recognition model to a user device (eg, portable device 100). In some embodiments, the server device includes one or more processors and memory that includes instructions that, when executed by the one or more processors, perform process 2500.

例示的プロセス2500では、デバイスは、手書き認識モデルの、空間的に導出される特徴のセットと時間的に導出される特徴のセットとを、別個に訓練し(2502)、空間的に導出される特徴のセットは、それぞれが、出力文字セットのそれぞれの文字に関する手書きサンプルの画像である、訓練画像のコーパスについて訓練され、時間的に導出される特徴のセットは、ストローク分布プロファイルのコーパスについて訓練され、各ストローク分布プロファイルは、出力文字セットのそれぞれの文字に関する手書きサンプル内での、複数のストロークの空間的分布を、数値的に特徴付ける。 In the example process 2500, the device separately trains (2502) a set of spatially derived features and a set of temporally derived features of a handwriting recognition model; The set of features is trained on a corpus of training images, each of which is an image of handwritten samples for each character of the output character set, and the set of temporally derived features is trained on a corpus of stroke distribution profiles. , each stroke distribution profile numerically characterizes the spatial distribution of multiple strokes within the handwriting sample for each character of the output character set.

一部の実施形態では、空間的に導出される特徴のセットを別個に訓練することは、入力層、出力層、及び複数の畳み込み層を有する、畳み込みニューラルネットワークを訓練することを更に含み(2504)、この複数の畳み込み層は、最初の畳み込み層、最終畳み込み層、最初の畳み込み層と最終畳み込み層との間の0以上の中間畳み込み層、及び、最終畳み込み層と出力層との間の隠れ層を含む。例示的な畳み込みネットワーク2602が、図26に示される。この例示的な畳み込みネットワーク2602は、図6に示される畳み込みネットワーク602と、実質的に同じ方式で実装することができる。畳み込みネットワーク2602は、入力層2606、出力層2608、及び複数の畳み込み層を含み、この複数の層畳み込み層は、最初の畳み込み層2610a、0以上の中間畳み込み層、及び最終畳み込み層2610n、及び、最終畳み込み層と出力層2608との間の隠れ層2614を含む。畳み込みネットワーク2602はまた、図6に示される配置構成による、カーネル層2616及びサブサンプリング層2612も含む。この畳み込みネットワークの訓練は、訓練コーパス2604内の、書き込みサンプルの画像2614に基づく。空間的に導出される特徴が取得され、それらの種々の特徴に関連付けられるそれぞれの重みが、その訓練コーパス内の訓練サンプルに関する認識エラーを最小限に抑えることによって判定される。それらの同じ特徴及び重みは、訓練された後、訓練コーパス内に存在しない新たな手書きサンプルの認識のために使用される。 In some embodiments, separately training the set of spatially derived features further comprises training a convolutional neural network having an input layer, an output layer, and a plurality of convolutional layers (2504 ), the plurality of convolutional layers includes an initial convolutional layer, a final convolutional layer, zero or more intermediate convolutional layers between the initial convolutional layer and the final convolutional layer, and a hidden layer between the final convolutional layer and the output layer. Contains layers. An example convolutional network 2602 is shown in FIG. 26. This example convolutional network 2602 may be implemented in substantially the same manner as convolutional network 602 shown in FIG. 6. Convolutional network 2602 includes an input layer 2606, an output layer 2608, and a plurality of convolutional layers, including an initial convolutional layer 2610a, zero or more intermediate convolutional layers, and a final convolutional layer 2610n. A hidden layer 2614 is included between the final convolutional layer and the output layer 2608. Convolutional network 2602 also includes a kernel layer 2616 and a subsampling layer 2612, according to the arrangement shown in FIG. The training of this convolutional network is based on images 2614 of writing samples in the training corpus 2604. Spatially derived features are obtained and respective weights associated with those various features are determined by minimizing recognition error with respect to training samples within the training corpus. Those same features and weights are trained and then used for recognition of new handwriting samples that are not present in the training corpus.

一部の実施形態では、時間的に導出される特徴のセットを別個に訓練することは、複数のストローク分布プロファイルを統計モデルに提供して、出力文字セットのそれぞれの文字を分類するための、複数の時間的に導出されるパラメータ、及びそれらの複数の時間的に導出されるパラメータに関するそれぞれの重みを判定することを更に含む(2506)。一部の実施形態では、図26に示されるように、ストローク分布プロファイル2620は、訓練コーパス2622内の各書き込みサンプルから導出される。訓練コーパス2622は、任意選択的に、コーパス2604と同じ書き込みサンプルを含むが、また、各書き込みサンプル内でのストローク生成に関連付けられる、時間的情報も含む。ストローク分布プロファイル2622は、統計モデル化プロセス2624に提供され、このプロセスの間に、時間的に導出される特徴が抽出され、それらの種々の特徴に関するそれぞれの重みが、統計モデル化方法(例えば、CNN、K近傍法など)に基づいて、認識エラー又は分類エラーを最小限に抑えることによって判定される。図26に示されるように、時間的に導出される特徴のセット及びそれぞれの重みは、特徴ベクトルのセット(例えば、特徴ベクトル2626又は特徴ベクトル2628)に変換され、畳み込みニューラルネットワーク2602内のそれぞれの層内に導入される。結果的に得られるネットワークは、それゆえ、空間的に導出されるパラメータ、及び時間的に導出されるパラメータを含み、それらのパラメータは、互いに直交して、文字の認識に一体となって寄与する。 In some embodiments, training the set of temporally derived features separately provides multiple stroke distribution profiles to the statistical model to classify each character in the output character set. The method further includes determining a plurality of temporally derived parameters and respective weights for the plurality of temporally derived parameters (2506). In some embodiments, as shown in FIG. 26, a stroke distribution profile 2620 is derived from each writing sample in a training corpus 2622. Training corpus 2622 optionally includes the same writing samples as corpus 2604, but also includes temporal information associated with stroke generation within each writing sample. The stroke distribution profile 2622 is provided to a statistical modeling process 2624 during which temporally derived features are extracted and respective weights for those various features are determined using statistical modeling methods (e.g. (CNN, K-Nearest Neighbors, etc.), by minimizing recognition or classification errors. As shown in FIG. 26, the set of temporally derived features and their respective weights are transformed into a set of feature vectors (e.g., feature vector 2626 or feature vector 2628) and their respective weights in convolutional neural network 2602. Introduced within the layer. The resulting network therefore contains spatially derived parameters and temporally derived parameters that are orthogonal to each other and jointly contribute to character recognition. .

一部の実施形態では、デバイスは、手書き認識モデル内で、空間的に導出される特徴のセットと時間的に導出される特徴のセットとを組み合わせる(2508)。一部の実施形態では、手書き認識モデル内で、空間的に導出される特徴のセットと時間的に導出される特徴のセットとを組み合わせることは、畳み込みニューラルネットワークの、畳み込み層のうちの1つ又は隠れ層内に、複数の空間的に導出されるパラメータ、及び複数の時間的に導出されるパラメータを導入することを含む(2510)。一部の実施形態では、複数の時間的に導出されるパラメータ、及びそれらの複数の時間的に導出されるパラメータに関するそれぞれの重みは、手書き認識に関する畳み込みニューラルネットワークの最終畳み込み層(例えば、図26での最終畳み込み層2610n)内に導入される。一部の実施形態では、複数の時間的に導出されるパラメータ、及びそれらの複数の時間的に導出されるパラメータに関するそれぞれの重みは、手書き認識に関する畳み込みニューラルネットワークの隠れ層(例えば、図26での隠れ層2614)内に導入される。 In some embodiments, the device combines (2508) a set of spatially derived features and a set of temporally derived features within a handwriting recognition model. In some embodiments, combining the set of spatially derived features and the set of temporally derived features within the handwriting recognition model is performed in one of the convolutional layers of the convolutional neural network. or introducing within the hidden layer a plurality of spatially derived parameters and a plurality of temporally derived parameters (2510). In some embodiments, the plurality of temporally derived parameters and the respective weights for the plurality of temporally derived parameters are determined in the final convolutional layer of the convolutional neural network for handwriting recognition (e.g., Figure 26 is introduced into the final convolutional layer 2610n). In some embodiments, the plurality of temporally derived parameters and the respective weights for the plurality of temporally derived parameters are defined in the hidden layers of a convolutional neural network for handwriting recognition (e.g., as shown in FIG. 26). hidden layer 2614).

一部の実施形態では、デバイスは、この手書き認識モデルを使用して、ユーザの手書き入力に関するリアルタイム手書き認識を提供する(2512)。 In some embodiments, the device uses this handwriting recognition model to provide real-time handwriting recognition for the user's handwriting input (2512).

一部の実施形態では、デバイスは、複数の書き込みサンプルから、ストローク分布プロファイルのコーパスを生成する(2514)。一部の実施形態では、それらの複数の手書きサンプルのそれぞれは、出力文字セット内の文字に対応し(2516)、手書きサンプルの各構成ストロークに関する、そのストロークが書き込まれた際のそれぞれの空間的情報を、別個に保存する。一部の実施形態では、ストローク分布プロファイルのコーパスを生成するために、デバイスは、以下のステップを実行する(2518)。 In some embodiments, the device generates a corpus of stroke distribution profiles from the plurality of writing samples (2514). In some embodiments, each of the plurality of handwriting samples corresponds to a character in the output character set (2516), and for each constituent stroke of the handwriting sample, the respective spatial Store information separately. In some embodiments, to generate a corpus of stroke distribution profiles, the device performs the following steps (2518).

複数の手書きサンプルのそれぞれに関して(2520)、デバイスは、その手書きサンプル内の構成ストロークを特定し(2522)、その手書きサンプルの特定されたストロークのそれぞれに関して、デバイスは、複数の既定の方向のそれぞれに沿った、それぞれの占有率を算出し(2524)、占有率は、その各ストローク方向の投影スパンと、その書き込みサンプルの最大投影スパンとの比率であり、その手書きサンプルの特定されたストロークのそれぞれに関して、デバイスはまた、その各ストローク内のそれぞれのピクセル数と、その書き込みサンプル内の総ピクセル数との比率に基づいて、その各ストロークに関するそれぞれの飽和率も算出する(2526)。次いで、ユーザデバイスは、その書き込みサンプルのストローク分布プロファイルとして、その手書きサンプルに関する特徴ベクトルを生成し(2528)、この特徴ベクトルは、その手書きサンプル内の少なくともN個のストロークの、それぞれの占有率及びそれぞれの飽和率を含み、Nは、既定の自然数である。一部の実施形態では、Nは、複数の書き込みサンプル内の、いずれの単一の書き込みサンプル内で観察される最大ストローク数よりも少ない。 For each of the plurality of handwriting samples (2520), the device identifies (2522) constituent strokes within the handwriting sample, and for each of the identified strokes of the handwriting sample, the device identifies each of the plurality of predetermined directions. (2524), where the occupancy is the ratio of the projected span in each stroke direction to the maximum projected span of the writing sample, and For each, the device also calculates a respective saturation rate for each stroke based on the ratio of the respective number of pixels in each stroke to the total number of pixels in the written sample (2526). The user device then generates (2528) a feature vector for the handwritten sample as a stroke distribution profile of the handwritten sample, the feature vector representing the respective occupancies and occupancies of the at least N strokes in the handwritten sample. Including each saturation rate, N is a predetermined natural number. In some embodiments, N is less than the maximum number of strokes observed in any single writing sample within the plurality of writing samples.

一部の実施形態では、複数の手書きサンプルのそれぞれに関して、デバイスは、既定の方向のそれぞれでの、特定されたストロークのそれぞれの占有率を、降順に並べ替え、N個の上位ランクの占有率及び飽和率の書き込みサンプルのみを、その書き込みサンプルの特徴ベクトル内に含める。 In some embodiments, for each of the plurality of handwriting samples, the device sorts the occupancy of each of the identified strokes in each of the predetermined directions in descending order, and arranges the occupancy of each of the N top-ranked strokes in descending order. Only the written samples with and saturation rate are included in the feature vector of that written sample.

一部の実施形態では、それらの複数の既定の方向は、書き込みサンプルの水平方向、垂直方向、正の45度の方向、及び負の45度の方向を含む。 In some embodiments, the plurality of predetermined directions include a written sample horizontal direction, a vertical direction, a positive 45 degree direction, and a negative 45 degree direction.

一部の実施形態では、この手書き認識モデルを使用して、ユーザの手書き入力に関するリアルタイム手書き認識を提供するために、デバイスは、ユーザの手書き入力を受信し、このユーザの手書き入力の受信に応じて、手書き認識出力を、その手書き入力の受信と実質的に同時に、ユーザに提供する。 In some embodiments, to provide real-time handwriting recognition regarding a user's handwriting input using this handwriting recognition model, the device receives the user's handwriting input and responds to the receipt of the user's handwriting input. and provides handwriting recognition output to the user substantially simultaneously with receiving the handwriting input.

図27に示される文字「
」を使用して、説明の目的のために、例示的実施形態が本明細書で説明される。一部の実施形態では、手書き文字の各入力画像は、任意選択的に、正方形へと正規化される。この正方形の、水平、垂直、斜め+45度、及び斜め-45度上に投影される場合の、個別の各手書きストローク(例えば、ストローク#1、#2...及び#3)のスパンが測定される。各ストロークSiのスパンは、4つの投影方向に関して、それぞれ、xスパン(i)、yスパン(i)、cスパン(i)、及びdスパン(i)として記録される。更には、画像全体にわたって観測された最大スパンもまた、記録される。この文字の最大スパンは、4つの投影方向に関して、それぞれ、xスパン、yスパン、cスパン、及びdスパンとして記録される。説明の目的のために、本明細書では、4つの投影方向が任意選択的に考察されているが、原理的には、任意の恣意的な投影のセットを、様々な実施形態で使用することができる。最大スパン(例えば、xスパン、yスパン、cスパン、及びdスパンとして示される)、及び4つの投影方向での、文字「
」内のストロークのうちの1つ(例えば、ストローク#4)のスパン(例えば、xスパン(4)、yスパン(4)、cスパン(4)、及びdスパン(4)として示される)が、図27に示される。
The characters shown in Figure 27 “
” are used herein to describe example embodiments for purposes of explanation. In some embodiments, each input image of handwritten characters is optionally normalized to a square. Measure the span of each individual handwritten stroke (e.g., strokes #1, #2...and #3) when projected horizontally, vertically, diagonally +45 degrees, and diagonally -45 degrees on this square. be done. The span of each stroke Si is recorded as x span (i), y span (i), c span (i), and d span (i) for the four projection directions, respectively. Additionally, the maximum span observed across the image is also recorded. The maximum spans of this character are recorded as x span, y span, c span, and d span, respectively, for the four projection directions. For purposes of explanation, four projection directions are optionally considered herein, but in principle any arbitrary set of projections could be used in various embodiments. I can do it. The maximum span (e.g., designated as x span, y span, c span, and d span) and in the four projection directions, the character "
'' (e.g., stroke #4) has a span (e.g., shown as x-span (4), y-span (4), c-span (4), and d-span (4)) , shown in FIG.

一部の実施形態では、上記のスパンが、全てのストローク1~5(5は、この入力画像に関連付けられる、個別の手書きストロークの数である)に関して測定されると、各投影方向に沿った、それぞれの占有率が計算される。例えば、ストロークSに関する、x方向に沿った対応の占有率R(i)は、R(i)=xスパン(i)/xスパンとして算出される。同様に、他の投影方向に沿った、対応の占有率を算出することができ、R(i)=yスパン(i)/yスパン、R(i)=cスパン(i)/cスパン、R(i)=dスパン(i)/dスパンである。 In some embodiments, the span is measured for all strokes 1-5 (where 5 is the number of distinct handwritten strokes associated with this input image) along each projection direction. , the respective occupancy rates are calculated. For example, the corresponding occupancy rate R x (i) along the x direction for the stroke S i is calculated as R x (i)=x span (i)/x span. Similarly, the corresponding occupancy along other projection directions can be calculated, R y (i) = y span (i) / y span, R c (i) = c span (i) / c span, R d (i) = d span (i)/d span.

一部の実施形態では、各方向での全てのストロークの占有率は、降順で別個に並べ替えられ、それゆえ、その入力画像内の全てのストロークの、それぞれのランク付けが、各投影方向に関して、その方向でのそれらのストロークの占有率の観点から取得される。各投影方向でのストロークのランク付けは、関連する投影方向に沿った、各ストロークの相対的重要性を反映する。この相対的重要性は、そのストロークが、書き込みサンプル内で作り出された順序及び方向とは、無関係である。それゆえ、この占有率に基づくランク付けは、ストローク順序及びストローク方向非依存式の、時間的に導出される情報である。 In some embodiments, the occupancy of all strokes in each direction is sorted separately in descending order, such that the respective ranking of all strokes in that input image is , taken in terms of the occupancy of those strokes in that direction. The ranking of strokes in each projection direction reflects the relative importance of each stroke along the associated projection direction. This relative importance is independent of the order and direction in which the strokes were produced within the writing sample. Therefore, this occupancy-based ranking is stroke order and stroke direction independent, time-derived information.

一部の実施形態では、文字全体に対するストロークの重要性を示す、相対的重みが、各ストロークに与えられる。一部の実施形態では、この重みは、文字内の総ピクセル数に対する、各ストローク内のピクセル数の比率によって測定される。この比率は、各ストロークに関連付けられる、飽和率と称される。 In some embodiments, each stroke is given a relative weight that indicates the importance of the stroke relative to the overall character. In some embodiments, this weight is measured by the ratio of the number of pixels in each stroke to the total number of pixels in the character. This ratio is referred to as the saturation rate associated with each stroke.

一部の実施形態では、各ストロークの占有率及び飽和率に基づいて、各ストロークに関して特徴ベクトルを作り出すことができる。各文字に関して、5Sの数の特徴を含む、特徴ベクトルのセットが作り出される。この特徴のセットは、その文字のストローク分布プロファイルと称される。 In some embodiments, a feature vector can be created for each stroke based on the occupancy and saturation rate of each stroke. For each character, a set of feature vectors is created containing 5S number of features. This set of features is called the stroke distribution profile of the character.

一部の実施形態では、既定数の上位ランクのストロークのみが、各文字のストローク分布プロファイルを構築する際に使用される。一部の実施形態では、この既定数のストロークは、10個である。それらの上位の10個のストロークに基づいて、ストロークから導出される50の特徴が、各文字に関して生成される。一部の実施形態では、これらの特徴は、畳み込みニューラルネットワークの最終畳み込み層で、又は後続の隠れ層で導入される。 In some embodiments, only a predetermined number of top ranked strokes are used in constructing the stroke distribution profile for each character. In some embodiments, this predetermined number of strokes is ten. Based on those top 10 strokes, 50 stroke-derived features are generated for each character. In some embodiments, these features are introduced in the final convolutional layer of the convolutional neural network or in subsequent hidden layers.

一部の実施形態では、リアルタイム認識の間に、空間的に導出される特徴及び時間的に導出される特徴の双方で訓練されている手書き認識モードに、認識単位の入力画像が提供される。その入力画像は、図26に示される手書き認識モデルの各層を通じて処理される。この入力画像の処理が、ストローク分布プロファイル入力が必要とされる層(例えば、最終畳み込み層又は隠れ層)に到達すると、その認識単位のストローク分布プロファイルが、その層内に導入される。この入力画像及びストローク分布プロファイルの処理は、出力分類(例えば、1つ以上の候補文字)が出力層2608で提供されるまで継続する。一部の実施形態では、全ての認識単位のストローク分布プロファイルが計算され、それらの認識単位の入力画像と共に、手書き認識モデルに入力として提供される。一部の実施形態では、認識単位の入力画像が、手書き認識モデルを(時間的に訓練された特徴の恩恵を受けることなく)最初に通過する。2つ以上の類似した見た目の候補文字が、近接した認識信頼度値で特定される場合、次いで、その認識単位のストローク分布プロファイルが、時間的に導出される特徴で訓練されている層(例えば、最終畳み込み層、又は隠れ層)で、手書き認識モデル内に導入される。その認識単位の入力画像及びストローク分布プロファイルが、手書き認識モデルの最終層を通過すると、2つ以上の類似した見た目の候補文字は、それらのストローク分布プロファイルの相違によって、より良好に区別することができる。それゆえ、個別の手書きストロークによって認識単位がどのように形成されるかに関する、時間的に導出される情報を使用して、手書き認識システムのストローク順序及びストローク方向非依存性を損なうことなく、認識精度が向上する。 In some embodiments, during real-time recognition, an input image of a recognition unit is provided to a handwriting recognition mode that is trained on both spatially derived features and temporally derived features. The input image is processed through each layer of the handwriting recognition model shown in FIG. When the processing of this input image reaches a layer where stroke distribution profile input is required (eg, a final convolutional layer or a hidden layer), the stroke distribution profile of that recognition unit is introduced into that layer. Processing of this input image and stroke distribution profile continues until an output classification (eg, one or more candidate characters) is provided at output layer 2608. In some embodiments, the stroke distribution profiles of all recognition units are computed and provided as input to a handwriting recognition model, along with the input images of those recognition units. In some embodiments, an input image of a recognition unit is first passed through a handwriting recognition model (without the benefit of temporally trained features). If two or more similar-looking candidate characters are identified with close recognition confidence values, then the stroke distribution profile of that recognition unit is determined by a layer trained with temporally derived features (e.g. , final convolutional layer, or hidden layer) into the handwriting recognition model. When the input image and stroke distribution profile of that recognition unit pass through the final layer of the handwriting recognition model, two or more similar-looking candidate characters can be better distinguished by the difference in their stroke distribution profiles. can. Therefore, temporally derived information about how recognition units are formed by individual handwritten strokes can be used to improve recognition without compromising the stroke order and stroke direction independence of handwriting recognition systems. Improves accuracy.

前述の説明は、説明の目的上、特定の実施形態を参照して説明されている。しかしながら、上記の例示的な論考は、網羅的であること、又は本発明を、開示される厳密な形態に限定することを意図するものではない。上記の教示を鑑みて、多くの修正及び変形が可能である。これらの実施形態は、本発明の原理、及びその実際の適用を最も良好に説明するために、またそれにより、他の当業者が、想到される具体的な用途に適するような様々な修正を使用して、本発明及び様々な実施形態を最も良好に利用することを可能にするために、選択及び説明されたものである。 The foregoing description has been described with reference to specific embodiments for purposes of explanation. However, the above illustrative discussion is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. These embodiments are intended to best explain the principles of the invention and its practical application, and are intended to enable others skilled in the art to make various modifications as appropriate to the specific application contemplated. They were chosen and described in order to enable the invention and its various embodiments to be best utilized.

Claims (12)

方法であって、
1つ以上のプロセッサ、タッチ感知面及びディスプレイを有する電子デバイスで、
手書き入力を受信することであって、前記手書き入力が、前記タッチ感知面上に提供される複数の手書きストロークを含む、ことと、
手書き入力インタフェースの手書き入力区域内に、前記複数の手書きストロークを表示することと、
前記複数の手書きストロークを、2つ以上の認識単位へと分割することであって、各認識単位が、前記複数の手書きストロークの個別のサブセットを含む、ことと、
編集リクエストを受信することと、
前記編集リクエストに応じて、前記手書き入力区域内の前記2つ以上の認識単位のうちの少なくとも1つを視覚的に識別することと、
前記2つ以上の認識単位のそれぞれに近接して個別の削除ボタンを表示することと、
前記手書き入力区域内の前記2つ以上の認識単位のうちの前記少なくとも1つ上で既定の削除ジェスチャ入力を検出することと、
前記既定の削除ジェスチャ入力を検出したことに応じて、前記手書き入力区域内の前記2つ以上の認識単位のうちの前記少なくとも1つに対応する手書きストロークの前記個別のサブセットを削除することと、
を含むことを特徴とする、方法。
A method,
an electronic device having one or more processors, a touch-sensitive surface and a display;
receiving handwritten input, the handwritten input comprising a plurality of handwritten strokes provided on the touch-sensitive surface;
Displaying the plurality of handwritten strokes within a handwriting input area of a handwriting input interface;
dividing the plurality of handwritten strokes into two or more recognition units, each recognition unit comprising a distinct subset of the plurality of handwritten strokes;
receiving editing requests; and
visually identifying at least one of the two or more recognition units within the handwriting input area in response to the editing request;
displaying separate delete buttons in proximity to each of the two or more recognition units;
detecting a default deletion gesture input on the at least one of the two or more recognition units within the handwriting input area;
in response to detecting the predetermined deletion gesture input, deleting the discrete subset of handwritten strokes corresponding to the at least one of the two or more recognition units within the handwriting input area;
A method, comprising:
前記2つ以上の認識単位を視覚的に識別することが、前記手書き入力区域内の前記2つ以上の認識単位間の個別の境界線を強調表示することを更に含むことを特徴とする、請求項に記載の方法。 12. Visually identifying the two or more recognition units further comprises highlighting distinct boundaries between the two or more recognition units within the handwriting input area. The method described in Section 1 . 前記編集リクエストが、前記手書き入力インタフェース内に表示された既定のアフォーダンス上で検出される接触に対応することを特徴とする、請求項1又は2に記載の方法。 3. A method according to claim 1 or 2 , characterized in that the editing request corresponds to a touch detected on a predetermined affordance displayed in the handwriting input interface. 前記編集リクエストが、前記手書き入力インタフェース内の既定の区域上で検出されるタップジェスチャに対応することを特徴とする、請求項1乃至の何れか1項に記載の方法。 4. A method according to any preceding claim, characterized in that the editing request corresponds to a tap gesture detected on a predetermined area within the handwriting input interface. 前記既定の区域が、前記手書き入力インタフェースの前記手書き入力区域内の区域に対応することを特徴とする、請求項に記載の方法。 5. The method of claim 4 , wherein the predetermined area corresponds to an area within the handwriting input area of the handwriting input interface. 前記既定の区域が、前記手書き入力インタフェースの前記手書き入力区域の外側の区域に対応することを特徴とする、請求項に記載の方法。 5. The method of claim 4 , wherein the predetermined area corresponds to an area outside the handwriting input area of the handwriting input interface. 前記2つ以上の認識単位のうちの前記少なくとも1つが、前記2つ以上の認識単位内の空間的に最初の認識単位に対応することを特徴とする、請求項1乃至の何れか1項に記載の方法。 Any one of claims 1 to 6 , characterized in that the at least one of the two or more recognition units corresponds to a spatially first recognition unit within the two or more recognition units. The method described in. 前記2つ以上の認識単位のうちの前記少なくとも1つが、前記2つ以上の認識単位の中の空間的に中間の認識単位に対応することを特徴とする、請求項1乃至の何れか1項に記載の方法。 Any one of claims 1 to 6 , wherein the at least one of the two or more recognition units corresponds to a spatially intermediate recognition unit among the two or more recognition units. The method described in section. 方法であって、
1つ以上のプロセッサ、タッチ感知面及びディスプレイを有する電子デバイスで、
手書き入力を受信することであって、前記手書き入力が、前記タッチ感知面上に提供される複数の手書きストロークを含む、ことと、
手書き入力インタフェースの手書き入力区域内に、前記複数の手書きストロークを表示することと、
前記複数の手書きストロークを、2つ以上の認識単位へと分割することであって、各認識単位が、前記複数の手書きストロークの個別のサブセットを含む、ことと、
編集リクエストを受信することと、
前記編集リクエストに応じて、前記手書き入力区域内の前記2つ以上の認識単位のうちの少なくとも1つを視覚的に識別することと、
前記手書き入力区域内の前記2つ以上の認識単位のうちの前記少なくとも1つ上で既定の削除ジェスチャ入力を検出することと、
前記既定の削除ジェスチャ入力を検出したことに応じて、前記手書き入力区域内の前記2つ以上の認識単位のうちの前記少なくとも1つに対応する手書きストロークの前記個別のサブセットを削除することと、
前記複数の手書きストロークから分割束を生成することであって、前記分割束が、それぞれが前記複数の手書きストロークから特定される認識単位の個別のセットを表す複数の代替的な分割鎖を含む、ことと、
2つ以上の連続した編集リクエストを受信することと、
前記2つ以上の連続した編集リクエストのそれぞれに応じて、前記手書き入力区域内で、前記複数の代替的な分割鎖のうちの異なる1つから認識単位の前記個別のセットを視覚的に識別することと、
前記手書き入力区域内に現在表されている前記認識単位のうちの少なくとも1つ上で第2の既定の削除ジェスチャ入力を検出することと、
前記第2の既定の削除ジェスチャ入力を検出したことに応じて、前記手書き入力区域内に現在表されている前記認識単位のうちの前記少なくとも1つに対応する手書きストロークの前記個別のサブセットを削除することと、
を含むことを特徴とする、方法。
A method,
an electronic device having one or more processors, a touch-sensitive surface and a display;
receiving handwritten input, the handwritten input comprising a plurality of handwritten strokes provided on the touch-sensitive surface;
Displaying the plurality of handwritten strokes within a handwriting input area of a handwriting input interface;
dividing the plurality of handwritten strokes into two or more recognition units, each recognition unit comprising a distinct subset of the plurality of handwritten strokes;
receiving editing requests; and
visually identifying at least one of the two or more recognition units within the handwriting input area in response to the editing request;
detecting a default deletion gesture input on the at least one of the two or more recognition units within the handwriting input area;
in response to detecting the predetermined deletion gesture input, deleting the discrete subset of handwritten strokes corresponding to the at least one of the two or more recognition units within the handwriting input area;
generating a segmented bundle from the plurality of handwritten strokes, the segmented bundle comprising a plurality of alternative segmentation chains, each representing a distinct set of recognition units identified from the plurality of handwritten strokes; And,
receiving two or more consecutive edit requests;
visually identifying, within the handwriting input area, the distinct set of recognition units from a different one of the plurality of alternative split chains in response to each of the two or more consecutive editing requests; And,
detecting a second default delete gesture input on at least one of the recognition units currently represented within the handwriting input area;
in response to detecting the second predetermined deletion gesture input, deleting the discrete subset of handwritten strokes corresponding to the at least one of the recognition units currently represented within the handwriting input area; to do and
A method, comprising :
請求項1乃至の何れか1項に記載の方法を実行するための命令を含むコンピュータプログラム。 A computer program product comprising instructions for carrying out a method according to any one of claims 1 to 9 . 請求項10に記載のコンピュータプログラムを記憶するメモリと、
前記メモリに記憶された前記命令を実行可能な1つ以上のプロセッサと、
を備える電子デバイス。
A memory storing the computer program according to claim 10 ;
one or more processors capable of executing the instructions stored in the memory;
An electronic device comprising:
請求項1乃至の何れか1項に記載の方法を実行するための手段を備える電子デバイス。 Electronic device comprising means for carrying out the method according to any one of claims 1 to 9 .
JP2022082332A 2013-06-09 2022-05-19 Managing real-time handwriting recognition Active JP7361156B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023171414A JP2023182718A (en) 2013-06-09 2023-10-02 Management for real-time handwriting recognition

Applications Claiming Priority (20)

Application Number Priority Date Filing Date Title
US201361832921P 2013-06-09 2013-06-09
US201361832942P 2013-06-09 2013-06-09
US201361832908P 2013-06-09 2013-06-09
US201361832934P 2013-06-09 2013-06-09
US61/832,921 2013-06-09
US61/832,934 2013-06-09
US61/832,908 2013-06-09
US61/832,942 2013-06-09
US14/290,935 US9898187B2 (en) 2013-06-09 2014-05-29 Managing real-time handwriting recognition
US14/290,945 2014-05-29
US14/290,935 2014-05-29
US14/290,945 US9465985B2 (en) 2013-06-09 2014-05-29 Managing real-time handwriting recognition
US14/291,722 2014-05-30
US14/292,138 2014-05-30
US14/291,722 US20140363082A1 (en) 2013-06-09 2014-05-30 Integrating stroke-distribution information into spatial feature extraction for automatic handwriting recognition
US14/291,865 2014-05-30
US14/292,138 US20140361983A1 (en) 2013-06-09 2014-05-30 Real-time stroke-order and stroke-direction independent handwriting recognition
US14/291,865 US9495620B2 (en) 2013-06-09 2014-05-30 Multi-script handwriting recognition using a universal recognizer
JP2021104255A JP7011747B2 (en) 2013-06-09 2021-06-23 Real-time handwriting recognition management
JP2022004546A JP7078808B2 (en) 2013-06-09 2022-01-14 Real-time handwriting recognition management

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2022004546A Division JP7078808B2 (en) 2013-06-09 2022-01-14 Real-time handwriting recognition management

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023171414A Division JP2023182718A (en) 2013-06-09 2023-10-02 Management for real-time handwriting recognition

Publications (2)

Publication Number Publication Date
JP2022116104A JP2022116104A (en) 2022-08-09
JP7361156B2 true JP7361156B2 (en) 2023-10-13

Family

ID=52022661

Family Applications (8)

Application Number Title Priority Date Filing Date
JP2016518366A Active JP6154550B2 (en) 2013-06-09 2014-05-30 Real-time handwriting recognition management
JP2017109294A Active JP6559184B2 (en) 2013-06-09 2017-06-01 Real-time handwriting recognition management
JP2019077312A Active JP6802876B2 (en) 2013-06-09 2019-04-15 Real-time handwriting recognition management
JP2020197242A Active JP6903808B2 (en) 2013-06-09 2020-11-27 Real-time handwriting recognition management
JP2021104255A Active JP7011747B2 (en) 2013-06-09 2021-06-23 Real-time handwriting recognition management
JP2022004546A Active JP7078808B2 (en) 2013-06-09 2022-01-14 Real-time handwriting recognition management
JP2022082332A Active JP7361156B2 (en) 2013-06-09 2022-05-19 Managing real-time handwriting recognition
JP2023171414A Pending JP2023182718A (en) 2013-06-09 2023-10-02 Management for real-time handwriting recognition

Family Applications Before (6)

Application Number Title Priority Date Filing Date
JP2016518366A Active JP6154550B2 (en) 2013-06-09 2014-05-30 Real-time handwriting recognition management
JP2017109294A Active JP6559184B2 (en) 2013-06-09 2017-06-01 Real-time handwriting recognition management
JP2019077312A Active JP6802876B2 (en) 2013-06-09 2019-04-15 Real-time handwriting recognition management
JP2020197242A Active JP6903808B2 (en) 2013-06-09 2020-11-27 Real-time handwriting recognition management
JP2021104255A Active JP7011747B2 (en) 2013-06-09 2021-06-23 Real-time handwriting recognition management
JP2022004546A Active JP7078808B2 (en) 2013-06-09 2022-01-14 Real-time handwriting recognition management

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023171414A Pending JP2023182718A (en) 2013-06-09 2023-10-02 Management for real-time handwriting recognition

Country Status (5)

Country Link
JP (8) JP6154550B2 (en)
KR (6) KR20220003662A (en)
CN (4) CN109614845B (en)
HK (1) HK1220276A1 (en)
WO (1) WO2014200736A1 (en)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8074172B2 (en) 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US9898187B2 (en) 2013-06-09 2018-02-20 Apple Inc. Managing real-time handwriting recognition
US10114544B2 (en) 2015-06-06 2018-10-30 Apple Inc. Systems and methods for generating and providing intelligent time to leave reminders
US10013603B2 (en) * 2016-01-20 2018-07-03 Myscript System and method for recognizing multiple object structure
KR102482850B1 (en) * 2016-02-15 2022-12-29 삼성전자 주식회사 Electronic device and method for providing handwriting calibration function thereof
CN107220655A (en) * 2016-03-22 2017-09-29 华南理工大学 A kind of hand-written, printed text sorting technique based on deep learning
US20170308289A1 (en) * 2016-04-20 2017-10-26 Google Inc. Iconographic symbol search within a graphical keyboard
JP6728993B2 (en) * 2016-05-31 2020-07-22 富士ゼロックス株式会社 Writing system, information processing device, program
JP6611346B2 (en) * 2016-06-01 2019-11-27 日本電信電話株式会社 Character string recognition apparatus, method, and program
DK179329B1 (en) 2016-06-12 2018-05-07 Apple Inc Handwriting keyboard for monitors
CN106126092A (en) * 2016-06-20 2016-11-16 联想(北京)有限公司 A kind of information processing method and electronic equipment
TWI633463B (en) * 2016-06-20 2018-08-21 鴻海精密工業股份有限公司 Text input method
US10325018B2 (en) 2016-10-17 2019-06-18 Google Llc Techniques for scheduling language models and character recognition models for handwriting inputs
CN106527875B (en) * 2016-10-25 2019-11-29 北京小米移动软件有限公司 Electronic recording method and device
US10984757B2 (en) 2017-05-19 2021-04-20 Semiconductor Energy Laboratory Co., Ltd. Machine learning method, machine learning system, and display system
KR102474245B1 (en) * 2017-06-02 2022-12-05 삼성전자주식회사 System and method for determinig input character based on swipe input
US11188158B2 (en) 2017-06-02 2021-11-30 Samsung Electronics Co., Ltd. System and method of determining input characters based on swipe input
US10481791B2 (en) * 2017-06-07 2019-11-19 Microsoft Technology Licensing, Llc Magnified input panels
US20190155895A1 (en) * 2017-11-20 2019-05-23 Google Llc Electronic text pen systems and methods
CN107861684A (en) * 2017-11-23 2018-03-30 广州视睿电子科技有限公司 Write recognition methods, device, storage medium and computer equipment
KR102008845B1 (en) * 2017-11-30 2019-10-21 굿모니터링 주식회사 Automatic classification method of unstructured data
CN109992124B (en) * 2018-01-02 2024-05-31 北京搜狗科技发展有限公司 Input method, apparatus and machine readable medium
KR102053885B1 (en) * 2018-03-07 2019-12-09 주식회사 엘렉시 System, Method and Application for Analysis of Handwriting
CN108710882A (en) * 2018-05-11 2018-10-26 武汉科技大学 A kind of screen rendering text recognition method based on convolutional neural networks
JP7298290B2 (en) * 2018-06-19 2023-06-27 株式会社リコー HANDWRITING INPUT DISPLAY DEVICE, HANDWRITING INPUT DISPLAY METHOD AND PROGRAM
KR101989960B1 (en) 2018-06-21 2019-06-17 가천대학교 산학협력단 Real-time handwriting recognition method using plurality of machine learning models, computer-readable medium having a program recorded therein for executing the same and real-time handwriting recognition system
US11270486B2 (en) * 2018-07-02 2022-03-08 Apple Inc. Electronic drawing with handwriting recognition
CN109446780B (en) * 2018-11-01 2020-11-27 北京知道创宇信息技术股份有限公司 Identity authentication method, device and storage medium thereof
CN109471587B (en) * 2018-11-13 2020-05-12 掌阅科技股份有限公司 Java virtual machine-based handwritten content display method and electronic equipment
CN109858323A (en) * 2018-12-07 2019-06-07 广州光大教育软件科技股份有限公司 A kind of character hand-written recognition method and system
CN110009027B (en) * 2019-03-28 2022-07-29 腾讯科技(深圳)有限公司 Image comparison method and device, storage medium and electronic device
CN110135530B (en) * 2019-05-16 2021-08-13 京东方科技集团股份有限公司 Method and system for converting Chinese character font in image, computer device and medium
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
CN110362247A (en) * 2019-07-18 2019-10-22 江苏中威科技软件系统有限公司 It is a set of to amplify the mode signed on electronic document
KR20210017090A (en) * 2019-08-06 2021-02-17 삼성전자주식회사 Method and electronic device for converting handwriting input to text
CN110942089B (en) * 2019-11-08 2023-10-10 东北大学 Multi-level decision-based keystroke recognition method
EP3828685B1 (en) 2019-11-29 2022-09-28 MyScript Gesture stroke recognition in touch-based user interface input
US20200251217A1 (en) * 2019-12-12 2020-08-06 Renee CASSUTO Diagnosis Method Using Image Based Machine Learning Analysis of Handwriting
CN111078073B (en) * 2019-12-17 2021-03-23 科大讯飞股份有限公司 Handwriting amplification method and related device
EP3839706B1 (en) * 2019-12-20 2023-07-05 The Swatch Group Research and Development Ltd Method and device for determining the position of an object on a given surface
CN111355715B (en) * 2020-02-21 2021-06-04 腾讯科技(深圳)有限公司 Processing method, system, device, medium and electronic equipment of event to be resolved
JP2021177315A (en) * 2020-05-08 2021-11-11 ブラザー工業株式会社 Editing program
CN111736751B (en) * 2020-08-26 2021-03-26 深圳市千分一智能技术有限公司 Stroke redrawing method, device and readable storage medium
US11627799B2 (en) * 2020-12-04 2023-04-18 Keith McRobert Slidable work surface
US11531454B2 (en) 2020-12-10 2022-12-20 Microsoft Technology Licensing, Llc Selecting content in ink documents using a hierarchical data structure
US11587346B2 (en) 2020-12-10 2023-02-21 Microsoft Technology Licensing, Llc Detecting ink gestures based on spatial and image data processing
KR20220088166A (en) * 2020-12-18 2022-06-27 삼성전자주식회사 Method and apparatus for recognizing handwriting inputs in a multiple user environment
EP4057182A1 (en) 2021-03-09 2022-09-14 Société BIC Handwriting feedback
JP2022148901A (en) * 2021-03-24 2022-10-06 カシオ計算機株式会社 Character recognition apparatus, character recognition method, and program
KR20220135914A (en) * 2021-03-31 2022-10-07 삼성전자주식회사 Electronic device for processing handwriting input based on machine learning, operating method thereof and storage medium
CN113190161A (en) * 2021-04-25 2021-07-30 无锡乐骐科技有限公司 Electronic writing exercise method based on convolutional neural network
KR20220147832A (en) * 2021-04-28 2022-11-04 삼성전자주식회사 Electronic device for processing handwriting input and method of operating the same
KR102366052B1 (en) * 2021-05-28 2022-02-23 (유)벨류이 Writing system and method using delay time reduction processing, and low complexity distance measurement algorithm based on chirp spread spectrum for the same
CN113673415B (en) * 2021-08-18 2022-03-04 山东建筑大学 Handwritten Chinese character identity authentication method and system
US20230070034A1 (en) * 2021-09-07 2023-03-09 Takuroh YOSHIDA Display apparatus, non-transitory recording medium, and display method
KR102468713B1 (en) * 2022-07-07 2022-11-21 주식회사 에이치투케이 AI- based Device and Method for Stroke Order Recognition of Korean Handwriting of Student
WO2024014655A1 (en) * 2022-07-14 2024-01-18 삼성전자 주식회사 Electronic device and method for identifying sentence expressed by strokes
CN115291791A (en) * 2022-08-17 2022-11-04 维沃移动通信有限公司 Text recognition method and device, electronic equipment and storage medium
KR20240065997A (en) * 2022-11-07 2024-05-14 삼성전자주식회사 Method and apparatus for recognizing handwriting input
CN116646911B (en) * 2023-07-27 2023-10-24 成都华普电器有限公司 Current sharing distribution method and system applied to digital power supply parallel mode
CN117037186B (en) * 2023-10-09 2024-01-30 山东维克特信息技术有限公司 Patient data management system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012024829A1 (en) 2010-08-24 2012-03-01 Nokia Corporation Method and apparatus for segmenting strokes of overlapped handwriting into one or more groups
JP2012108871A (en) 2010-10-26 2012-06-07 Nec Corp Information processing device and handwriting input processing method therefor
JP7160827B2 (en) 2017-03-24 2022-10-25 ミツビシ ケミカル ユーケー リミテッド Method for producing methyl methacrylate or methacrylic acid

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0614372B2 (en) * 1984-01-23 1994-02-23 日本電信電話株式会社 Character reading method
JPS61272890A (en) * 1985-05-29 1986-12-03 Canon Inc Device for recognizing handwritten character
EP0632404B1 (en) * 1993-07-01 1997-12-29 International Business Machines Corporation Pattern recognition by generating and using zonal features and anti-features
JP3353954B2 (en) * 1993-08-13 2002-12-09 ソニー株式会社 Handwriting input display method and handwriting input display device
JPH07160827A (en) * 1993-12-09 1995-06-23 Matsushita Electric Ind Co Ltd Handwritten stroke editing device and method therefor
JPH07200723A (en) * 1993-12-29 1995-08-04 Canon Inc Method and device for recognizing character
JPH0855182A (en) * 1994-06-10 1996-02-27 Nippon Steel Corp Inputting device for handwritten character
US5737443A (en) * 1994-11-14 1998-04-07 Motorola, Inc. Method of joining handwritten input
CA2178959C (en) * 1994-11-14 2000-05-16 Kenneth J. Guzik Method of splitting handwritten input
JP3333362B2 (en) * 1995-04-11 2002-10-15 株式会社日立製作所 Character input device
TW338815B (en) 1995-06-05 1998-08-21 Motorola Inc Method and apparatus for character recognition of handwritten input
JP4115568B2 (en) * 1996-12-18 2008-07-09 シャープ株式会社 Text input device
JPH10307675A (en) * 1997-05-01 1998-11-17 Hitachi Ltd Method and device for recognizing handwritten character
US6970599B2 (en) * 2002-07-25 2005-11-29 America Online, Inc. Chinese character handwriting recognition system
JP4663903B2 (en) * 2000-04-20 2011-04-06 パナソニック株式会社 Handwritten character recognition device, handwritten character recognition program, and computer-readable recording medium recording the handwritten character recognition program
US7336827B2 (en) 2000-11-08 2008-02-26 New York University System, process and software arrangement for recognizing handwritten characters
US7286141B2 (en) 2001-08-31 2007-10-23 Fuji Xerox Co., Ltd. Systems and methods for generating and controlling temporary digital ink
JP2003162687A (en) * 2001-11-28 2003-06-06 Toshiba Corp Handwritten character-inputting apparatus and handwritten character-recognizing program
JP4212270B2 (en) * 2001-12-07 2009-01-21 シャープ株式会社 Character input device, character input method, and program for inputting characters
US6986106B2 (en) 2002-05-13 2006-01-10 Microsoft Corporation Correction widget
JP2004213269A (en) * 2002-12-27 2004-07-29 Toshiba Corp Character input device
US8479112B2 (en) * 2003-05-13 2013-07-02 Microsoft Corporation Multiple input language selection
JP2005341387A (en) * 2004-05-28 2005-12-08 Nokia Corp Real time communication system, transceiver and method for real time communication system
JP2006323502A (en) 2005-05-17 2006-11-30 Canon Inc Information processor, and its control method and program
US7496547B2 (en) * 2005-06-02 2009-02-24 Microsoft Corporation Handwriting recognition using a comparative neural network
US7720316B2 (en) * 2006-09-05 2010-05-18 Microsoft Corporation Constraint-based correction of handwriting recognition errors
KR100859010B1 (en) * 2006-11-01 2008-09-18 노키아 코포레이션 Apparatus and method for handwriting recognition
CN101311887A (en) * 2007-05-21 2008-11-26 刘恩新 Computer hand-written input system and input method and editing method
CN101123044A (en) * 2007-09-13 2008-02-13 无敌科技(西安)有限公司 Chinese writing and learning method
JP2009110092A (en) * 2007-10-26 2009-05-21 Alps Electric Co Ltd Input processor
CN101178633A (en) * 2007-12-13 2008-05-14 深圳华为通信技术有限公司 Method, system and device for correcting hand-written screen error
US8116569B2 (en) 2007-12-21 2012-02-14 Microsoft Corporation Inline handwriting recognition and correction
US9355090B2 (en) * 2008-05-30 2016-05-31 Apple Inc. Identification of candidate characters for text input
CN101676838B (en) * 2008-09-16 2012-05-23 夏普株式会社 Input device
US8584031B2 (en) * 2008-11-19 2013-11-12 Apple Inc. Portable touch screen device, method, and graphical user interface for using emoji characters
US20100166314A1 (en) * 2008-12-30 2010-07-01 Microsoft Corporation Segment Sequence-Based Handwritten Expression Recognition
US8391613B2 (en) * 2009-06-30 2013-03-05 Oracle America, Inc. Statistical online character recognition
JP2011065623A (en) * 2009-08-21 2011-03-31 Sharp Corp Information retrieving apparatus, and control method of the same
CN101893987A (en) * 2010-06-01 2010-11-24 华南理工大学 Handwriting input method of electronic equipment
KR101548835B1 (en) * 2010-12-02 2015-09-11 노키아 코포레이션 Method, apparatus, and computer program product for overlapped handwriting
JP5550598B2 (en) * 2011-03-31 2014-07-16 パナソニック株式会社 Handwritten character input device
JP5862659B2 (en) * 2011-04-11 2016-02-16 日本電気株式会社 Information input device
CN102135838A (en) * 2011-05-05 2011-07-27 汉王科技股份有限公司 Method and system for partitioned input of handwritten character string
US8977059B2 (en) 2011-06-03 2015-03-10 Apple Inc. Integrating feature extraction via local sequential embedding for automatic handwriting recognition
US8094941B1 (en) * 2011-06-13 2012-01-10 Google Inc. Character recognition for overlapping textual user input
EP2535844A3 (en) * 2011-06-13 2016-10-19 Google, Inc. Character recognition for overlapping textual user input
US20130002553A1 (en) * 2011-06-29 2013-01-03 Nokia Corporation Character entry apparatus and associated methods
JP5330478B2 (en) * 2011-10-14 2013-10-30 株式会社エヌ・ティ・ティ・ドコモ Input support device, program, and pictogram input support method
JP2013089131A (en) * 2011-10-20 2013-05-13 Kyocera Corp Device, method and program
CN102566933A (en) * 2011-12-31 2012-07-11 广东步步高电子工业有限公司 Method for effectively distinguishing command gestures and characters in full-screen handwriting
JP6102374B2 (en) * 2013-03-15 2017-03-29 オムロン株式会社 Reading character correction program and character reading device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012024829A1 (en) 2010-08-24 2012-03-01 Nokia Corporation Method and apparatus for segmenting strokes of overlapped handwriting into one or more groups
JP2012108871A (en) 2010-10-26 2012-06-07 Nec Corp Information processing device and handwriting input processing method therefor
JP7160827B2 (en) 2017-03-24 2022-10-25 ミツビシ ケミカル ユーケー リミテッド Method for producing methyl methacrylate or methacrylic acid

Also Published As

Publication number Publication date
KR20200068755A (en) 2020-06-15
CN105247540B (en) 2018-10-16
KR20190090887A (en) 2019-08-02
JP2021168159A (en) 2021-10-21
JP2022062064A (en) 2022-04-19
HK1220276A1 (en) 2017-04-28
JP2023182718A (en) 2023-12-26
CN109614847A (en) 2019-04-12
JP7011747B2 (en) 2022-01-27
JP2017208101A (en) 2017-11-24
JP6903808B2 (en) 2021-07-14
KR101892723B1 (en) 2018-08-29
KR102005878B1 (en) 2019-07-31
JP2016523406A (en) 2016-08-08
CN105247540A (en) 2016-01-13
JP2019164801A (en) 2019-09-26
CN109614846A (en) 2019-04-12
JP6559184B2 (en) 2019-08-14
KR20220003662A (en) 2022-01-10
CN109614847B (en) 2023-08-04
JP6154550B2 (en) 2017-06-28
JP7078808B2 (en) 2022-05-31
JP2022116104A (en) 2022-08-09
KR102221079B1 (en) 2021-03-02
JP6802876B2 (en) 2020-12-23
KR102121487B1 (en) 2020-06-11
KR102347064B1 (en) 2022-01-04
CN109614845A (en) 2019-04-12
CN109614845B (en) 2023-08-04
JP2021051759A (en) 2021-04-01
KR20210024210A (en) 2021-03-04
KR20180097790A (en) 2018-08-31
KR20160003112A (en) 2016-01-08
WO2014200736A1 (en) 2014-12-18

Similar Documents

Publication Publication Date Title
JP7361156B2 (en) Managing real-time handwriting recognition
US11182069B2 (en) Managing real-time handwriting recognition
US9934430B2 (en) Multi-script handwriting recognition using a universal recognizer
US20140363082A1 (en) Integrating stroke-distribution information into spatial feature extraction for automatic handwriting recognition
US20140361983A1 (en) Real-time stroke-order and stroke-direction independent handwriting recognition

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220601

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220601

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230804

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231002

R150 Certificate of patent or registration of utility model

Ref document number: 7361156

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150