JP2022537169A - Handling handwritten text input in freehand writing mode - Google Patents
Handling handwritten text input in freehand writing mode Download PDFInfo
- Publication number
- JP2022537169A JP2022537169A JP2021574329A JP2021574329A JP2022537169A JP 2022537169 A JP2022537169 A JP 2022537169A JP 2021574329 A JP2021574329 A JP 2021574329A JP 2021574329 A JP2021574329 A JP 2021574329A JP 2022537169 A JP2022537169 A JP 2022537169A
- Authority
- JP
- Japan
- Prior art keywords
- text
- line
- input
- handwritten
- format
- 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.)
- Granted
Links
- 238000010606 normalization Methods 0.000 claims abstract description 74
- 230000009466 transformation Effects 0.000 claims abstract description 60
- 238000000034 method Methods 0.000 claims description 73
- 230000006870 function Effects 0.000 claims description 61
- 238000013519 translation Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000015654 memory Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 22
- 238000004590 computer program Methods 0.000 description 12
- 238000000844 transformation Methods 0.000 description 7
- 238000000605 extraction Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 238000007667 floating Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011985 exploratory data analysis Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- NIXOWILDQLNWCW-UHFFFAOYSA-N acrylic acid group Chemical group C(C=C)(=O)O NIXOWILDQLNWCW-UHFFFAOYSA-N 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/22—Character recognition characterised by the type of writing
- G06V30/226—Character recognition characterised by the type of writing of cursive writing
- G06V30/2268—Character recognition characterised by the type of writing of cursive writing using stroke segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
- G06V30/36—Matching; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/106—Display of layout of documents; Previewing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/1444—Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/26—Techniques for post-processing, e.g. correcting the recognition result
- G06V30/262—Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
- G06V30/333—Preprocessing; Feature extraction
- G06V30/347—Sampling; Contour coding; Stroke extraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/412—Layout analysis of documents structured with printed lines or input boxes, e.g. business forms or tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Character Discrimination (AREA)
Abstract
本発明は、フリーハンドライティングフォーマット(FT1)で、コンピュータデバイス上で入力されたデジタルインク(IN)のストロークを検出することと、前述のストロークからテキストブロック(BL1)を検出することと、前述のテキストブロックの各テキストラインでテキスト認識を実施することであって、テキストブロック(BL1)からテキストラインを抽出すること、ならびに、テキストブロックの各ストロークを、テキストブロック(BL1)の文字、ワード、及びテキストラインと関連付けるモデルデータを生成すること、を含む、実施することと、ドキュメントパターン(200)に従うように、各テキストラインを、フリーハンドライティングフォーマット(FT1)から構造化されたフォーマット(FT2)に正規化することと、を含む方法に関する。正規化には、各テキストラインに関し、前述のテキストラインを構造化されたフォーマットに変換するように変換関数を計算することと、変換関数をテキストラインに適用することと、変換関数に基づき、前述のテキストラインのモデルデータをアップデートすることと、が含まれる場合がある。【選択図】図3The present invention detects strokes of digital ink (IN) input on a computing device in a freehand writing format (FT1), detects text blocks (BL1) from said strokes, and performing text recognition on each text line of a text block, extracting the text line from the text block (BL1); generating model data to associate with the text lines; and converting each text line from a freehand writing format (FT1) to a structured format (FT2) so as to follow the document pattern (200). normalizing. Normalization includes, for each text line, computing a transformation function to transform said text line into a structured format; applying the transformation function to the text line; Updating the model data for the text lines in the . [Selection drawing] Fig. 3
Description
本開示は概して、ユーザのテキストの手書き入力を認識することが可能であるコンピュータデバイスインターフェースの分野に関する。具体的には、本開示は、手書きテキストを認識及び編集するためのコンピュータデバイス及び対応する方法に関する。 TECHNICAL FIELD The present disclosure relates generally to the field of computer device interfaces capable of recognizing a user's handwriting input of text. Specifically, the present disclosure relates to computing devices and corresponding methods for recognizing and editing handwritten text.
コンピュータデバイスが継続して、日々の生活の中にますます偏在するようになってきている。コンピュータデバイスは、コンピュータデスクトップ、ラップトップ、タブレットPC、ハイブリッドコンピュータ(2-in-1)、eブックリーダー、携帯電話、スマートフォン、ウェアラブルコンピュータ(スマートウォッチ、スマートグラス/ヘッドセットを含む)、グローバルポジショニングシステム(GPS)ユニット、事業デジタルアシスタント(EDA)、パーソナルデジタルアシスタント(PDA)、ゲームコンソールなど、様々な形態を取る場合がある。さらに、コンピュータデバイスは、車、トラック、農用施設、製造施設、建物の環境制御(たとえば、ライティング、HVAC)、ならびに、家庭及び商業用の器具など、車両及び設備に組み込まれている。 Computer devices continue to become more and more ubiquitous in everyday life. Computing devices include computer desktops, laptops, tablet PCs, hybrid computers (2-in-1), e-book readers, mobile phones, smart phones, wearable computers (including smart watches, smart glasses/headsets), global positioning systems (GPS) units, business digital assistants (EDAs), personal digital assistants (PDAs), game consoles, etc. Additionally, computing devices are embedded in vehicles and equipment such as cars, trucks, agricultural facilities, manufacturing facilities, building climate controls (eg, lighting, HVAC), and home and commercial appliances.
コンピュータデバイスの各タイプには、特定のコンピュータリソースが備えられており、所与の用途が定められている。コンピュータデバイスは概して、中央処理ユニット(CPU)などの少なくとも1つの処理要素と、いくつかの形態のメモリと、入力及び出力デバイスと、を備えている。様々なコンピュータデバイス及びそれに次ぐ用途により、様々な入力デバイス及びインターフェースが、ユーザがそのコンピュータデバイスと相互作用することを可能にするようにすることが必要になる。 Each type of computing device is equipped with specific computing resources and is destined for a given use. A computing device generally includes at least one processing element, such as a central processing unit (CPU), some form of memory, and input and output devices. A variety of computing devices and subsequent uses require a variety of input devices and interfaces to allow users to interact with the computing device.
そのような入力デバイスの1つが、タッチスクリーンまたはタッチパッドなどの接触式表面である。この表面では、ユーザ入力が、ユーザの身体の部位(たとえば、指)または器具(たとえば、ペンもしくはスタイラス)と接触式表面との間の接触を通して受領される。別の入力デバイスは入力表面であり、この入力表面は、入力表面の上方でユーザによって行われるジェスチャを検知する。さらなる入力デバイスが、位置検出システムである。この位置検出システムは、接触または非接触の相互作用の、非接触の物理的または仮想的な表面との相対位置を検出する。 One such input device is a contact-based surface such as a touchscreen or touchpad. At this surface, user input is received through contact between a user's body part (eg, finger) or instrument (eg, pen or stylus) and the touch-sensitive surface. Another input device is an input surface that senses gestures made by a user over the input surface. A further input device is a position detection system. The position detection system detects the relative position of a contacting or non-contacting interaction with a non-contacting physical or virtual surface.
手書き認識は、テキストコンテンツ(たとえば、英数字)またはテキストではないコンテンツ(たとえば、形状、図)など、ユーザによって手で線描されたか手書きされた様々なタイプの入力要素を入力及び処理するために、コンピュータデバイス内で実施され得る。コンピュータデバイス上で入力がされると、入力要素は、通常、デジタルインクとして表示され、活字に組まれたバージョンに変換するように、手書き認識がされる。ユーザの手書き入力は、通常、リアルタイムの手書き認識システムまたは方法を使用して解釈される。このため、オンラインシステム(クラウドベースのソリューションなどを使用して実施される認識)またはオフラインシステムが使用される場合がある。 Handwriting recognition is used to input and process various types of input elements, such as textual content (e.g., alphanumeric) or non-textual content (e.g., shapes, drawings), hand-drawn or handwritten by a user. It can be implemented within a computing device. When input is made on the computing device, the input elements are typically displayed as digital ink and subjected to handwriting recognition to convert to a typeset version. A user's handwriting input is typically interpreted using a real-time handwriting recognition system or method. For this, online systems (recognition performed using cloud-based solutions or the like) or offline systems may be used.
ユーザ入力は、図であるか、または、任意の他のテキストのコンテンツ、テキストではないコンテンツ、もしくはテキストとテキストではないものとの混合のコンテンツである場合がある。手書き入力は、ユーザによる入力をガイドまたは制限するガイドライン(またはベースライン)に従って、構造を持つドキュメント上で実施される場合がある。代替的には、ユーザは、フリーハンドライティングモードで手書きする場合がある。すなわち、追従するべきラインまたは従うべき入力サイズのあらゆる制約を伴わない(たとえば、ブランクページ上)。 User input may be graphics or any other textual content, non-textual content, or a mixture of textual and non-textual content. Handwriting input may be performed on structured documents according to guidelines (or baselines) that guide or constrain input by a user. Alternatively, the user may handwrite in a freehand writing mode. That is, without any constraints on lines to follow or input sizes to follow (eg, on a blank page).
図1Aは、適切なユーザインターフェースを使用して、フリーハンドライティングモードでユーザによって手で線描されるか手書きされるインク入力要素を表示するディスプレイデバイス1を備えている、コンピュータデバイス1の実施例を示している。このケースでは、コンピュータデバイス1は、テキストコンテンツ4及び6、ならびに、テキストではないコンテンツ8、10、及び12を検出及び表示する。これら要素の各々は、デジタルインクの1つまたは複数のストロークによって形成されている。入力要素は、たとえば、手書きテキスト、図、音楽の注釈などを含む場合がある。この実施例では、形状8は、矩形などであり、テキストコンテンツ6を包含するコンテナ(ボックス)を構成し、それにより、要素6と要素8との両方をともに選択及び操作できるようになっている。
FIG. 1A shows an embodiment of a computing device 1 with a display device 1 displaying ink input elements that are hand drawn or handwritten by a user in a freehand writing mode using a suitable user interface. showing. In this case, computing device 1 detects and displays
手書き認識は、テキスト入力要素上、及び、場合によってはテキストではない入力要素上でも、実施される場合がある。さらに、各入力要素は、この実施例では図1Bに図示するように、活字に組み上がった入力要素として変換及び表示される場合がある。 Handwriting recognition may be performed on text input elements and possibly also on non-text input elements. Further, each input element may be converted and displayed as a typeset input element, as shown in FIG. 1B in this example.
手書き認識のアプリケーションでは、テキスト認識に関する性能は、特に手書きテキストがフリーハンドライティングモード(すなわち、フリーハンドライティングフォーマット)で入力されるケースでは、常に十分なものではない。テキスト認識プロセスの信頼性及び安定性の課題は、しばしば、そのようなコンピュータデバイスの性能を害し、それにより、全体のユーザの体験を制限する。制限は、新たなインクストロークが認識の以前の状態(すなわち、以前に入力されたインクストロークに基づく以前の認識の結果)に影響を及ぼした場合、及び、新たなインクストロークが、そのような認識の以前の状態に影響を及ぼさない場合(すなわち、新たなインクストロークが、以前に入力されたコンテンツに影響を及ぼさない新たなコンテンツに関する)を、コンピュータデバイスが判定する困難性から特に生じる場合がある。 In handwriting recognition applications, the performance for text recognition is not always satisfactory, especially in cases where handwritten text is entered in freehand writing mode (ie, freehand writing format). Reliability and stability issues of the text recognition process often impair the performance of such computing devices, thereby limiting the overall user experience. The restrictions are if the new ink stroke affected the previous state of recognition (i.e., the result of a previous recognition based on previously input ink strokes) and if the new ink stroke affects such recognition. In particular, it may result from the difficulty for computing devices to determine when a new ink stroke does not affect the previous state of the .
さらに、コンピュータデバイス上に表示されたユーザ入力に対し、いくらかのレベルの編集を実施することが通常は可能である。しかし、慣習的に、そのようなアプリケーションは、編集機能を扱うその能力が制限されており、通常は、行動を採用するように、または、ユーザの元々の意図を反映しない妥協を許容するように、ユーザを制限する。 Moreover, it is usually possible to perform some level of editing on the user input displayed on the computing device. Conventionally, however, such applications are limited in their ability to handle editing functions, usually to adopt behavior or tolerant of compromises that do not reflect the user's original intentions. , restrict users.
表示機能及び編集機能は、手書きテキストがフリーハンドライティングモードを使用して入力される場合に、コンピュータデバイス上でより具体的に制限される。本来、ライン、サイズ、向き、余白などの制約は、フリーハンドライティングモードではユーザに課されず、それにより、様々な複雑な形態の手書きが入力される場合がある。それにより、コンピュータデバイスによる編集機能を実施して、手書きテキストを操作すること(たとえば、移動する、拡縮する、修正する、テキストの流れの中にラインの切れ目を挿入する)の解釈がより困難になる。しかし、ユーザは、特にフリーハンドライティングモードが使用される場合に、より構造的かつ向上した方式で手書き入力を編集及び操作することを望む場合がある。フリーハンドライティングフォーマットで手書きテキスト入力を扱うことにおけるこれら制限は、ユーザの経験を妨げ、向上を必要とする。 Display and editing functions are more specifically limited on computing devices when handwritten text is entered using the freehand writing mode. Constraints such as line, size, orientation, margins, etc. are not inherently imposed on the user in the freehand writing mode, whereby various complex forms of handwriting may be input. This makes it more difficult to interpret manipulating handwritten text (e.g., moving, scaling, modifying, inserting line breaks in the flow of text) by performing editing functions with a computing device. Become. However, users may desire to edit and manipulate handwriting input in a more structured and enhanced manner, especially when freehand writing modes are used. These limitations in dealing with handwritten text input in a freehand writing format hinder the user experience and require improvement.
フリーハンドライティングモード(またはフォーマット)におけるテキストの手書き入力の、効率的かつ信頼性のある処理を可能にし、特に、テキストの認識を向上させ、コンピュータデバイス上でのそのような手書きテキストの効率的な編集を可能にする解決策が必要とされている。 enabling efficient and reliable processing of handwritten input of text in freehand writing modes (or formats), in particular improving recognition of text, and efficient handling of such handwritten text on computer devices; A solution that allows editing is needed.
以下に記載される本発明の実施例は、ユーザが入力した手書きテキストを編集するためのコンピュータデバイス、方法、及び対応するコンピュータプログラムを提供する。 Embodiments of the present invention described below provide computer devices, methods, and corresponding computer programs for editing handwritten text entered by a user.
特定の態様によれば、本発明は、手書きテキストを処理するために、コンピュータデバイスによって実施される方法であって、
入力表面でデジタルインクの複数の入力ストロークを検出することであって、前述の入力ストロークが、いずれの手書きの制約も伴わずに、フリーハンドライティングフォーマットで入力される、検出することと、
前述の複数の入力ストロークをディスプレイデバイス上に、前述のフリーハンドライティングフォーマットで表示することと、
テキストまたはテキストではないものとして各入力ストロークを分類することであって、前述の分類することが、フリーハンドライティングフォーマットで手書きされた前述の入力ストロークから、手書きテキストの少なくとも1つのテキストブロックをテキストとして検出することを含む、分類することと、
前述の少なくとも1つのテキストブロックでテキスト認識を実施することであって、前述のテキスト認識が、
前述の少なくとも1つのテキストブロックから手書きテキストのテキストラインを抽出すること、ならびに、
前述の少なくとも1つのテキストブロックの各ストロークを、前述の少なくとも1つのテキストブロックの文字、ワード、及びテキストラインと関連付けるモデルデータを生成すること、
を含む、実施することと、
ドキュメントパターンのラインパターンに従うように、手書きテキストの各テキストラインを、フリーハンドライティングフォーマットから構造化されたハンドライティングフォーマットに正規化することであって、前述の正規化が、各テキストラインに関し、
前述のテキストラインを構造化されたハンドライティングフォーマットに変換するように、前述のテキストラインに関し、それぞれの変換関数を計算すること、
前述のテキストラインの各ストロークを構造化されたハンドライティングフォーマットに変換するように、それぞれの変換関数を適用すること、及び、
それぞれの変換関数に基づき、前述のテキストラインのモデルデータをアップデートすること、
を含む、正規化することと、
を含む方法を提供する。
According to certain aspects, the invention is a method implemented by a computing device for processing handwritten text, comprising:
detecting a plurality of input strokes of digital ink on an input surface, said input strokes being entered in a freehand writing format without any handwriting constraints;
displaying said plurality of input strokes on a display device in said freehand writing format;
classifying each input stroke as text or non-text, wherein said classifying comprises classifying at least one text block of handwritten text as text from said input stroke handwritten in a freehand writing format; classifying, including detecting;
performing text recognition on said at least one text block, said text recognition comprising:
extracting text lines of handwritten text from said at least one text block;
generating model data associating each stroke of said at least one text block with characters, words and text lines of said at least one text block;
performing, including
normalizing each text line of handwritten text from a freehand writing format to a structured handwriting format so as to follow the line pattern of the document pattern, said normalization for each text line:
calculating respective transformation functions for said lines of text to transform said lines of text into a structured handwriting format;
applying a respective transformation function to transform each stroke of said text line into a structured handwriting format; and
Updating said text line model data based on respective transformation functions;
normalizing, including
to provide a method comprising:
特定の実施形態では、本方法は、前述のテキスト認識の間に生成されたモデルデータを記憶することを含み、
前述のモデルデータをアップデートすることが、前述の少なくとも1つのテキストブロックのアップデートされたモデルデータを、前述のテキスト認識の間に生成されたモデルデータと置き換えて記憶することをさらに含む。
In certain embodiments, the method includes storing model data generated during said text recognition,
Updating said model data further comprises storing said updated model data for said at least one text block replacing model data generated during said text recognition.
特定の実施形態では、本方法は、前述の正規化することの後に、構造化されたハンドライティングフォーマットで前述の少なくとも1つのテキストブロックのテキストラインを表示することを含む。 In certain embodiments, the method includes displaying text lines of said at least one text block in a structured handwriting format after said normalizing.
特定の実施形態では、少なくとも1つのテキストブロックのモデルデータは、
複数の文字を規定する文字情報であって、各文字が、デジタルインクの少なくとも1つのストローク、及び、少なくとも1つのテキストブロックのテキストラインと関連付けられている、文字情報と、
複数のワードを規定するワード情報であって、各ワードが、文字情報によって規定された少なくとも1つの文字と関連付けられている、ワード情報と、
少なくとも1つのテキストブロックの各テキストラインを規定するライン情報であって、各テキストラインが、ワード情報によって規定された少なくとも1つのワードと関連付けられている、ライン情報と、
を含む。
In certain embodiments, the model data for at least one text block includes:
character information defining a plurality of characters, each character being associated with at least one stroke of digital ink and at least one text line of a text block;
word information defining a plurality of words, each word associated with at least one character defined by the character information;
line information defining each text line of the at least one text block, each text line being associated with at least one word defined by the word information;
including.
特定の実施形態では、ライン情報は、前述の少なくとも1つのテキストブロックの各テキストラインに関し、
テキストラインの原点を示す原点座標と、
テキストラインの傾斜を示す傾斜情報と、
テキストラインの高さを示す高さ情報と、
を含む。
In a particular embodiment, the line information relates to each text line of said at least one text block,
origin coordinates indicating the origin of the text line;
slant information indicating the slant of the text line;
height information indicating the height of the text line;
including.
特定の実施形態では、前述の正規化の間に前述のモデルデータをアップデートすることは、それぞれの変換関数に基づき、前述のテキストラインのライン情報をアップデートすることを含む。 In certain embodiments, updating said model data during said normalization includes updating line information for said lines of text based on respective transformation functions.
特定の実施形態では、前述の正規化は、各テキストラインに関し、
前述のテキストラインの原点座標、傾斜情報、及び高さ情報を含む入力パラメータを判定することを含み、
それぞれの変換関数が、入力パラメータ及びドキュメントパターンに基づいて計算される。
In a particular embodiment, the aforementioned normalization includes, for each line of text,
determining input parameters including origin coordinates, skew information, and height information for said text line;
Each transform function is computed based on the input parameters and the document pattern.
特定の実施形態では、ドキュメントパターンは、
表示エリアの余白と、
ライン間の距離と、
の、手書きテキストが従う手書きの制約の少なくとも1つを規定する。
In certain embodiments, the document pattern is
the margins of the display area,
the distance between the lines and
defines at least one of the handwritten constraints that the handwritten text follows.
特定の実施形態では、各変換関数は、
平行移動成分と、
拡縮成分と、
回転成分と、
の、前述の正規化の間にそれぞれのテキストラインに適用される変換成分の少なくとも1つを規定する。
In certain embodiments, each transformation function is
a translational component;
a scaling component;
a rotational component;
, defines at least one of the transformation components to be applied to each text line during said normalization.
特定の実施形態では、ドキュメントパターンは、ガイドラインを規定する前述のラインパターンを含み、このガイドラインに従って、手書きテキストが構造化されたハンドライティングフォーマットで配置されることになる。 In certain embodiments, the document pattern includes the aforementioned line patterns that define guidelines according to which handwritten text is to be laid out in a structured handwriting format.
特定の実施形態では、変換関数の拡縮成分は、前述の正規化の間に、前述のラインパターンの2つの連続したガイドライン間の距離の、それぞれのテキストラインの高さに対する割合に基づいて判定される。 In a particular embodiment, the scaling component of the transformation function is determined during said normalization based on the ratio of the distance between two consecutive guidelines of said line pattern to the height of the respective text line. be.
特定の実施形態では、変換関数の平行移動成分は、前述の正規化の間に、前述のテキストラインの原点が、前述の正規化の間に前述のテキストラインにアサインされたラインパターンの対応するガイドラインに整列されるように移動されるように、テキストラインの平行移動を実施するように判定される。 In a particular embodiment, the translation component of the transformation function is such that during said normalization the origin of said text line corresponds to the line pattern assigned to said text line during said normalization. It is determined to perform a translation of the text line so that it is moved so that it is aligned with the guidelines.
特定の実施形態では、前述の回転成分は、前述の正規化の間に、それぞれのテキストラインを回転させ、それにより、ドキュメントパターンに従ってそれぞれのテキストラインの傾斜をゼロに低減するように判定される。 In a particular embodiment, said rotation component is determined during said normalization to rotate each text line, thereby reducing the skew of each text line to zero according to the document pattern. .
特定の実施形態では、前述の正規化の間に、各テキストラインのモデルデータは、それぞれの変換関数に従ってアップデートされ、一方、それぞれの変換関数の前述の適用から生じ得るいずれのテキスト認識をもブロックする。 In certain embodiments, during said normalization, each text line's model data is updated according to its respective transformation function, while blocking any text recognition that may result from said application of the respective transformation function. do.
別の態様によれば、本発明は、本文献に規定される本発明の方法の各ステップを実行するための命令を含む、コンピュータ可読プログラムコード(またはコンピュータプログラム)を上に記録した非一時的なコンピュータ可読媒体に関する。 According to another aspect, the present invention provides a non-transitory program code (or computer program) recorded thereon comprising instructions for performing the steps of the method of the invention as defined in this document. computer readable medium.
本発明のコンピュータプログラムは、任意のプログラミング言語で表現することができ、ソースコード、オブジェクトコード、または、たとえば、部分的にコンパイルされた形態、または、任意の他の適切な形態になるように、ソースコードとオブジェクトコードとの間の任意の中間のコードの形態とすることができる。 The computer program of the present invention may be expressed in any programming language, and may be in source code, object code or, for example, partially compiled form or any other suitable form. It can be in the form of any intermediate code between source code and object code.
本発明は、上述のコンピュータプログラムをも提供する。 The invention also provides a computer program as described above.
前述の非一時的なコンピュータ可読媒体は、コンピュータプログラムを記憶することができる任意のエンティティまたはデバイスとすることができる。たとえば、記録媒体は、ROMメモリ(CD-ROMもしくはマイクロ電子回路で実施されるROM)などの記憶手段、または、たとえばフロッピーディスクもしくはハードディスクなどの磁気記憶手段を含むことができる。 The aforementioned non-transitory computer-readable medium may be any entity or device capable of storing a computer program. For example, the recording medium may comprise storage means such as ROM memory (CD-ROM or ROM implemented in microelectronic circuits) or magnetic storage means such as for example a floppy disk or hard disk.
本発明の非一時的なコンピュータ可読媒体は、電気信号または光学信号などの伝達可能な媒体に対応することができる。この媒体は、電気ケーブルもしくは光ケーブルを介して、または無線もしくは任意の他の適切な手段によって搬送することができる。本開示に係るコンピュータプログラムは、特に、インターネットまたはネットワークなどからダウンロードすることができる。 A non-transitory computer-readable medium of the present invention can correspond to a transmissible medium such as an electrical or optical signal. This medium may be conveyed via electrical or optical cables, wirelessly or by any other suitable means. A computer program according to the present disclosure can be downloaded from, among others, the Internet or a network.
代替的には、非一時的なコンピュータ可読媒体は、集積回路に対応することができる。この集積回路には、コンピュータプログラムが導入されており、回路が、本発明の方法の実行において実行するか使用されるために適合されている。 Alternatively, a non-transitory computer-readable medium may correspond to an integrated circuit. A computer program is embodied in this integrated circuit and the circuit is adapted to be executed or used in carrying out the method of the invention.
特定の実施形態では、本発明は、内部に埋め込まれたコンピュータ可読プログラムコードを有する非一時的なコンピュータ可読媒体に関し、前述のコンピュータ可読プログラムコードは、本文献で規定されるコンピュータデバイス上の手書きの入力要素に関する方法を実施するように実行されるために適合されており、コンピュータデバイスは、前述の方法の各ステップを実行するためのプロセッサを備えている。 In certain embodiments, the present invention relates to a non-transitory computer-readable medium having computer-readable program code embedded therein, said computer-readable program code being stored in a hand-written form on a computer device as defined herein. A computing device adapted to be executed to perform the method relating to the input elements comprises a processor for performing the steps of the aforementioned method.
本発明は、本開示に規定される方法を実施するために適切なコンピュータデバイスにも関する。より具体的には、本発明は、手書きテキストのためのコンピュータデバイスであって、
デジタルインクの複数のストロークを検出するための入力表面であって、前述のストロークが、いずれの手書きの制約も伴わずに、フリーハンドライティングフォーマットで入力される、入力表面と、
前述の複数の入力ストロークを前述のフリーハンドライティングフォーマットで表示するためのディスプレイデバイスと、
テキストまたはテキストではないものとして各ストロークを分類するための分類器であって、前述の分類器が、フリーハンドライティングフォーマットで手書きされた前述の入力ストロークから、手書きテキストの少なくとも1つのテキストブロックをテキストとして検出するように構成されている、分類器と、
前述の少なくとも1つのテキストブロックから手書きテキストのテキストラインを抽出するためのライン抽出器と、
前述の少なくとも1つのテキストブロックの各テキストラインのテキスト認識を実施し、それにより、前述の少なくとも1つのテキストブロックの各ストロークを、前述の少なくとも1つのテキストブロックの文字、ワード、及びテキストラインと関連付けるモデルデータを生成するための認識エンジンと、
ドキュメントパターンのラインパターンに従うように、手書きテキストの各テキストラインを、フリーハンドライティングフォーマットから構造化されたハンドライティングフォーマットに正規化するためのテキストエディタであって、前述のテキストエディタが、各テキストラインに関し、
前述のテキストラインを構造化されたハンドライティングフォーマットに変換するように、前述のテキストラインに関し、それぞれの変換関数を計算すること、
前述のテキストラインの各ストロークを構造化されたハンドライティングフォーマットに変換するように、それぞれの変換関数を適用すること、及び、
それぞれの変換関数に基づき、前述のテキストラインのモデルデータをアップデートすること、
を実施するように構成されている、テキストエディタと、
を備えている、コンピュータデバイスを提供する。
The invention also relates to computer devices suitable for carrying out the methods set forth in this disclosure. More specifically, the present invention is a computer device for handwritten text, comprising:
an input surface for detecting multiple strokes of digital ink, wherein said strokes are entered in a freehand writing format without any handwriting constraints;
a display device for displaying said plurality of input strokes in said freehand writing format;
A classifier for classifying each stroke as text or non-text, wherein said classifier converts at least one text block of handwritten text from said input strokes handwritten in a freehand writing format into text. a classifier configured to detect as
a line extractor for extracting text lines of handwritten text from said at least one text block;
performing text recognition of each text line of said at least one text block, thereby associating each stroke of said at least one text block with a character, word and text line of said at least one text block; a recognition engine for generating model data;
A text editor for normalizing each text line of handwritten text from a freehand writing format to a structured handwriting format so as to follow the line pattern of the document pattern, said text editor for normalizing each text line Regarding
calculating respective transformation functions for said lines of text to transform said lines of text into a structured handwriting format;
applying a respective transformation function to transform each stroke of said text line into a structured handwriting format; and
Updating said text line model data based on respective transformation functions;
a text editor configured to implement
A computing device is provided, comprising:
本発明の方法と関連して上の規定された様々な実施形態は、本開示のコンピュータデバイス、コンピュータプログラム、及び非一時的なコンピュータ可読媒体と類似の方式で適用される。 The various embodiments defined above in connection with the method of the present invention apply in analogous fashion to the computer device, computer program and non-transitory computer readable medium of the present disclosure.
本開示に規定される本発明の方法の各ステップに関し、コンピュータデバイスは、前述のステップを実施するように構成された対応するモジュールを備えている場合がある。 For each step of the method of the invention defined in this disclosure, the computing device may comprise a corresponding module configured to perform the aforementioned steps.
特定の実施形態では、本開示は、ソフトウェア及び/またはハードウェア構成要素を使用して実施される場合がある。この文脈では、「モジュール」との用語は、本開示では、ソフトウェア構成要素及びハードウェア構成要素、または複数のソフトウェア及び/またはハードウェア構成要素に言及することができる。 In certain embodiments, the present disclosure may be implemented using software and/or hardware components. In this context, the term "module" can refer to a software component and a hardware component, or multiple software and/or hardware components in this disclosure.
本開示の他の特徴及び利点は、限定的特徴を有していない実施形態を示す添付図面を参照してされる以下の詳細な説明から明らかとなるであろう。 Other features and advantages of the present disclosure will become apparent from the following detailed description, taken with reference to the accompanying drawings, which show embodiments having no limiting features.
図中の構成要素は、必ずしも拡縮されておらず、代わりに、本発明の原理の説明が強調されている。 The components in the figures are not necessarily to scale, emphasis instead being on explaining the principles of the invention.
説明の簡略化及び明確化のために、同じ参照符号は、別様に示されない限り、同じであるか類似のパーツを参照するために、図面を通して使用されることになる。 For simplicity and clarity of description, the same reference numbers will be used throughout the drawings to refer to the same or similar parts unless otherwise indicated.
以下の詳細な説明では、複数の特定の詳細が、関連する教示を完全に理解させるために、例として説明される。しかし、当業者には、本教示が、そのような詳細を伴わずに実施され得ることが明らかとなるであろう。他の例では、よく知られている方法、手順、及び/または構成要素が、本教示の態様を不必要に妨げることを避けるために、詳細を伴わずに、比較的高レベルで記載される。 In the following detailed description, numerous specific details are set forth by way of example in order to provide a thorough understanding of the related teachings. However, it will be apparent to those skilled in the art that the present teachings may be practiced without such details. In other instances, well-known methods, procedures, and/or components are described at a relatively high level without detail in order to avoid unnecessarily obscuring aspects of the present teachings. .
例示的実施形態の以下の詳細な説明は、添付図面を参照する。以下の詳細な説明は、本発明を限定するものではない。その代わりに、本発明の範囲は、添付の特許請求の範囲によって規定されている。図面に示すような様々な実施形態では、コンピュータデバイス、対応する方法、及び対応するコンピュータプログラムが論じられる。 The following detailed description of illustrative embodiments refers to the accompanying drawings. The following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims. In various embodiments as illustrated in the drawings, computing devices, corresponding methods, and corresponding computer programs are discussed.
本記載における「テキスト」との用語の使用は、記載のテキストにおいて使用される任意の記載の言語及び任意のシンボルにおいて、すべての文字(たとえば、英数字など)及びそのストリングを包含するものと理解される。 The use of the term "text" in this description is understood to encompass all characters (eg, alphanumeric characters, etc.) and strings thereof in any language of description and any symbols used in the text of description. be done.
本記載における「テキストではない」との用語は、自由な形態の手書きされたコンテンツ、または手で線描されたコンテンツ(たとえば、形状、描写など)及び画像データ、ならびに文字、及びそのストリング、またはテキストではない文脈において使用されるシンボルを包含するものと理解される。テキストではないコンテンツは、コンテナ、描画、一般的な形状(たとえば、矢印、ブロックなど)などを含む、線形または非線形の構成での、グラフィックまたは幾何学的な構造を規定する。図では、たとえば、テキストコンテンツは、コンテナと呼ばれるある形状(矩形、楕円形、卵形の形状など)に包含されている場合がある。 The term “non-text” in this description includes free-form handwritten content or hand-drawn content (e.g., shapes, drawings, etc.) and image data, as well as characters and strings thereof, or text is understood to encompass symbols used in contexts other than Non-textual content defines graphical or geometric structures in linear or non-linear configurations, including containers, drawings, general shapes (eg, arrows, blocks, etc.), and the like. In a diagram, for example, textual content may be contained in some shape (rectangular, oval, oval shape, etc.) called a container.
さらに、これら図に示される実施例は、左から右に書かれる言語の文脈であり、したがって、位置に対するあらゆる参照は、異なる方向のフォーマットを有する記載された言語に関して適応させることができる。 Further, the examples shown in these figures are in the context of languages written left to right, so any references to locations can be adapted for written languages having different directional formats.
本明細書に記載の様々な技術は、概して、ポータブル、及びポータブルではないコンピュータデバイス上の、手で描かれるか手で書かれるコンテンツの取得、処理、及び管理に関する。本明細書に記載のシステム及び方法は、(後に論じるような)接触式スクリーンなどの入力表面を介しての、コンピュータデバイスへのユーザの自然な筆記スタイル及び線描スタイルの入力の認識を利用する場合がある。様々な実施形態が、いわゆるオンライン認識技術を使用してデジタルインクの手書き入力の認識に関して記載されるが、認識を実施するためにリモートデバイスまたはサーバを伴うオフラインの認識など、認識のための入力の他の形態に適用することが可能であることを理解されたい。 The various techniques described herein relate generally to the acquisition, processing, and management of hand-drawn or hand-written content on portable and non-portable computing devices. The systems and methods described herein take advantage of the recognition of a user's natural writing and drawing style input to a computing device via an input surface such as a touch screen (as discussed below). There is Although various embodiments are described in terms of recognizing handwritten input in digital ink using so-called online recognition techniques, the input for recognition can be recognized, such as offline recognition with a remote device or server to perform the recognition. It should be understood that other forms of application are possible.
「手での線描」及び「手書き」との用語は、入力表面上で、または入力表面を用いて、ユーザの手(もしくは指)、または入力デバイス(ハンドヘルドスタイラスもしくはデジタルペン、マウスなど)の使用を通して、ユーザによるデジタルコンテンツ(手書き入力)の形成を規定するために、本明細書において相互交換可能に使用される。「手」などの用語は、入力技術の簡潔な記載を提供するために本明細書で使用されるが、足、口、及び目など、類似の入力のためにユーザの身体の他の部分を使用することが、この定義に含まれる。 The terms "hand drawing" and "handwriting" refer to the use of a user's hand (or fingers) or input device (such as a handheld stylus or digital pen, mouse, etc.) on or with an input surface. are used interchangeably herein to define the formation of digital content (handwriting input) by a user through the Terms such as "hands" are used herein to provide a concise description of input techniques, but other parts of the user's body are used for similar input, such as feet, mouth, and eyes. included in this definition.
以下により詳細に記載するように、本発明の態様は、フリーハンドライティングフォーマットで、コンピュータデバイス上で入力されるデジタルインクの手書きテキストを検出することと、手書きテキスト入力(または入力された手書きテキスト)を示すモデルデータを生成することを伴う、テキスト認識を実施することと、ドキュメントパターンに従う(たとえば、ドキュメントパターンのラインパターンに従う)ように、手書きテキスト入力の各テキストラインの、フリーハンドライティングフォーマットから構造化されたハンドライティングフォーマットへの正規化を実施することと、に依存する。この正規化は、手書きテキスト入力を構造化されたハンドライティングフォーマットに変えるために、手書きテキスト入力に編集する変換(たとえば、平行移動、回転、及び/または拡縮)を実施することを含んでいる。モデルデータは、正規化の目的のために、手書きテキスト入力に適用される編集する変換に応じてアップデートされもする。換言すると、正規化を実施する際に手書きテキスト入力のそれぞれのテキストラインの各々に適用される変換関数は、テキストラインのモデルデータをアップデートするベースとしても使用される。特定の実施形態において以下に説明するように、モデルデータは、手書きテキスト入力の各ストロークの、手書きテキスト入力のそれぞれの文字、それぞれのワード、及びそれぞれのテキストラインとの間の相関関係を規定する。 As will be described in more detail below, aspects of the present invention include detecting handwritten text in digital ink entered on a computing device in a freehand writing format, and handwritten text input (or input handwritten text). and constructing each text line of the handwritten text input from the freehand writing format to follow the document pattern (e.g., follow the line pattern of the document pattern) and performing normalization to a standardized handwriting format. This normalization includes performing editing transformations (e.g., translation, rotation, and/or scaling) on the handwritten text input to turn the handwritten text input into a structured handwriting format. The model data is also updated according to the editing transformations applied to the handwritten text input for normalization purposes. In other words, the transformation function applied to each respective text line of the handwritten text input in performing normalization is also used as a basis for updating the text line's model data. As described below in certain embodiments, the model data defines the correlation between each stroke of the handwritten text input, each character, each word, and each line of text of the handwritten text input. .
正規化プロセスの一部としてモデルデータをアップデートすることにより、デジタルインクの手書きテキスト入力を、(フリーハンドライティングフォーマットでの)制約のない環境から、(構造化されたハンドライティングフォーマットでの)フォーマットされた環境に効率的に変換することができ、それにより、よりよい表示、より信頼性のあるテキスト認識、及び、手書きテキスト入力の編集などのより広範囲の操作が可能になる。以下にさらに説明するように、正規化プロセスが入力インクの変更に繋がるが、あらゆる以前のテキスト認識状態は保存される。このことは、手書きテキスト入力及びモデルデータが同じ変換を使用してアップデートされることから、達成することができる。 By updating the model data as part of the normalization process, digital ink handwritten text input can be transformed from an unconstrained environment (in a freehand writing format) to a formatted environment (in a structured handwriting format). environment, which allows for better display, more reliable text recognition, and a wider range of manipulations such as editing handwritten text input. As explained further below, the normalization process leads to changes in the input ink, but any previous text recognition state is preserved. This can be achieved because the handwritten text input and the model data are updated using the same transform.
本発明では、正規化を経る各テキストラインは、手書きテキストのテキストラインである。以下にさらに記載するように、いくつかの変換がこの手書きテキストラインに、正規化プロセスの一部として適用されるが、これらテキストラインは、正規化されると(すなわち、正規化されたテキストライン)、依然として手書きテキストラインであり、すなわち、テキストラインとして、しかし正規化された方式で(たとえば、入力ストロークによって形成された手書きを構成しない活字に組み上がったコンテンツとは反対に)配置される手書きのものである。以下にさらに記載するように、手書きテキストの各テキストラインのストロークは、対応する手書きテキストラインを正規化された手書きテキストラインに変える変換を規定する変換関数の影響を受ける。 In the present invention, each text line that undergoes normalization is a text line of handwritten text. Several transformations are applied to the handwritten text lines as part of the normalization process, as described further below, but once these text lines are normalized (i.e., normalized text lines ), which are still handwritten text lines, i.e., handwriting placed as text lines but in a normalized manner (e.g., as opposed to typeset content that does not constitute handwriting formed by the input strokes). belongs to. As further described below, the strokes of each text line of handwritten text are subjected to a transformation function that defines a transformation that transforms the corresponding handwritten text line into a normalized handwritten text line.
図2は、本発明の特定の実施形態に係るコンピュータデバイス100のブロック図を示している。コンピュータデバイス(またはデジタルデバイス)100は、コンピュータデスクトップ、ラップトップコンピュータ、タブレットコンピュータ、eブックリーダー、携帯電話、スマートフォン、ウェアラブルコンピュータ、デジタルウォッチ、電子黒板、グローバルポジショニングシステム(GPS)ユニット、事業デジタルアシスタント(EDA)、パーソナルデジタルアシスタント(PDA)、ゲームコンソールなどである場合がある。コンピュータデバイス100は、少なくとも1つの処理要素、いくつかの形態のメモリ、ならびに入力及び出力(I/O)デバイスの構成要素を含んでいる。各構成要素は、コネクタ、ライン、バス、リンクネットワーク、または当業者に既知の他のものなどの入力及び出力を通して互いに通信する。
FIG. 2 illustrates a block diagram of
より明確には、コンピュータデバイス100は、以下にさらに記載するように、テキスト及びテキストではない要素を含む、手での線描(または手書き)入力要素に関する入力表面104を備えている。より具体的には、入力表面104は、前述の入力表面上に入力されたデジタルインクの複数の入力ストロークを検出することに適している。以下でもさらに論じるように、これら入力ストロークは、フリーハンドライティングフォーマット(または、フリーハンドライティングモード)での入力である、すなわち、入力エリアにおける位置、サイズ、及び向きのあらゆる手書きの制約を伴わない場合がある。
More specifically,
入力表面104は、接触感知表面または近接感知表面の形態のユーザ入力を受領するように、抵抗変化型、表面音波、静電容量、赤外グリッド、赤外線のアクリルの投影、光学イメージング、分散信号技術、音響パルス認識、または当業者に既知であるような任意の他の適切な技術などの技術を採用する場合がある。入力表面104は、位置検出システムによって監視されている非接触式感知表面である場合がある。
コンピュータデバイス100は、画像、テキスト、及びビデオなど、コンピュータデバイスからデータを出力するための少なくとも1つのディスプレイデバイス(またはディスプレイ)102をも備えている。ディスプレイデバイス102は、任意の適切な技術(LCD、プラズマなど)のスクリーンなどである場合がある。以下にさらに記載するように、ディスプレイデバイス102は、デジタルインクで入力要素を表示するために適しており、各入力要素は、デジタルインクの少なくとも1つのストロークで形成されている。具体的には、ディスプレイデバイス102は、たとえば上述のフリーハンドライティングフォーマットで、入力表面104で入力された複数のストロークを表示する場合がある。
入力表面104は、ディスプレイデバイス102と同じ場所に配置されるか、リモートでディスプレイデバイス102に接続される場合がある。特定の実施例では、ディスプレイデバイス102及び入力表面104は、タッチスクリーンの一部である。
The
図2に示すように、コンピュータデバイス100は、プロセッサ106及びメモリ108をさらに備えている。コンピュータデバイス100は、メモリ108の一部として、またはメモリ108とは別に、1つまたは複数の揮発性記憶要素(RAM)をも備えている場合がある。
As shown in FIG. 2,
プロセッサ106は、ソフトウェア、特にメモリ108に記憶されたソフトウェアを実行するためのハードウェアデバイスである。プロセッサ108は、任意の特注であるか商業利用可能な多目的プロセッサ、中央処理ユニット(CPU)、半導体ベースのマイクロプロセッサ(マイクロチップまたはチップセットの形態)、マイクロコントローラ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、またはこれらの任意の組合せとすることができ、より概略的には、当業者に既知であるような、ソフトウェア命令を実行するために設計された任意の適切なプロセッサ構成要素とすることができる。
メモリ108は、本開示の特定の実施形態に係る、非一時的な(または不揮発性の)コンピュータ可読媒体(または読取り媒体)を構成する(または備えている)。メモリ108は、不揮発性の記憶要素(たとえば、ROM、EPROM、フラッシュPROM、EEPROM、ハードドライブ、磁気テープまたは光学テープ、メモリレジスタ、CD-ROM、WORM、DVDなど)の任意の組合せを含む場合がある。 Memory 108 constitutes (or comprises) a non-transitory (or non-volatile) computer-readable medium (or readable medium) in accordance with certain embodiments of the present disclosure. Memory 108 may include any combination of non-volatile storage elements (eg, ROM, EPROM, flash PROM, EEPROM, hard drive, magnetic or optical tape, memory registers, CD-ROM, WORM, DVD, etc.). be.
メモリ108は、コンピュータデバイス100によってリモートでアクセス可能である、サーバまたはクラウドベースのシステムにあるなど、コンピュータデバイス100から離れている場合がある。不揮発性メモリ108は、プロセッサ106に結合されており、それにより、プロセッサ106が、メモリ108から情報を読み取ること、及びメモリ108に情報を書き込むことが可能であるようになっている。代替形態として、メモリ108は、コンピュータデバイス100に組み込まれている。
Memory 108 may be remote from
メモリ108は、オペレーティングシステム(OS)110と、手書きアプリケーション(またはコンピュータプログラム)112と、を含んでいる。オペレーティングシステム110は、アプリケーション112の実行を制御する。アプリケーション112は、本発明の特定の実施形態に従ってコンピュータプログラム(またはコンピュータ可読プログラムコード)を構成する(または備えている)。このコンピュータプログラムは、本発明の特定の実施形態に従って方法を実施する命令を含んでいる。
Memory 108 includes an operating system (OS) 110 and a handwriting application (or computer program) 112 .
アプリケーション112は、コンピュータデバイス100の入力表面104を使用して、ユーザによって手書きされたインクの入力要素を検出及び管理するための命令を含む場合がある。後に論じるように、テキストまたはテキストではない場合がある、これら手書きされたインク入力要素(手書き入力とも称される)は、デジタルインクの1つまたは複数のストロークによって形成される。
アプリケーション112は、手書きされたテキストまたはテキストではないものを含む、コンピュータデバイス100への手書き入力を認識するための、手書き認識(HWR)モジュール(またはシステム)114を備えている場合がある。HWR114は、実施される命令のセットを有するソースプログラム、実行可能なプログラム(オブジェクトコード)、スクリプト、アプリケーション、または任意の他の構成要素である場合がある。図2に示す本実施例では、アプリケーション112及びHWRモジュール114は、単一のアプリケーションに組み合わせられる(HWRモジュール114は、アプリケーション112の一部である)。代替的には、HWRモジュール114は、図2に示されているように、コンピュータデバイス100により、適切な通信リンクを通してリモートでアクセス可能である、サーバ(またはクラウドベースのシステム)SV1などの、コンピュータデバイス100から離れている手書き認識システムと通信するためのモジュール、方法、またはシステムである場合がある。アプリケーション112及びHWRモジュール114も、コンピュータデバイス100のメモリ108(または異なるメモリ)に記憶された別々の構成要素である場合があり、それにより、アプリケーション112及びHWRモジュール114が、ともに作動して、処理され、メモリ108に記憶された情報にアクセスする。
図に後に示すように、入力表面104上で、または入力表面104を介して入力された入力ストロークは、デジタルインクとしてプロセッサ106によって処理される。デジタルインクは、このケースではディスプレイデバイス102上で、デジタル画像フォーマットで手書き入力をレンダリングすることによって形成される。
As shown later in the figures, input strokes entered on or through
ユーザは、手もしくは指、または、入力表面104で使用するために適切なデジタルペンもしくはスタイラスなどのいくつかの入力器具で、入力ストロークを入力する場合がある。ユーザは、入力表面104の近位のモーションを検知するように構成された手段が使用される場合に、入力表面104の上方でジェスチャをすることにより、または、マウスもしくはジョイスティックなどのコンピュータデバイス100の周辺機器で、入力ストロークを入力する場合もある。
A user may enter input strokes with a hand or finger, or with some input device such as a digital pen or stylus suitable for use with
各インク入力要素(文字、シンボル、ワード、形状など)は、1つまたは複数のそのような入力ストロークによって、または少なくともストロークの一部によって形成される。ストローク(または入力ストローク)は、ストロークの開始位置(「ペンを下げる」事象に対応する)、ストロークの末端位置(「ペンを上げる」事象に対応する)、及びストロークの開始位置とストロークの末端位置とを接続する経路によって少なくとも特徴付けられている。異なるユーザが、いくつかのオブジェクト(たとえば、文字、形状、シンボルなど)を、わずかな変化を伴って自然に書くか手で線描する場合があることから、HWRモジュール114は、依然として適正であるか意図されているオブジェクトとして認識される間、各オブジェクトが入力され得る様々な方法を許容する。
Each ink input element (character, symbol, word, shape, etc.) is formed by one or more such input strokes, or at least part of a stroke. A stroke (or input stroke) has a stroke start position (corresponding to a "pen down" event), a stroke end position (corresponding to a "pen up" event), and a stroke start position and a stroke end position. characterized at least by a path connecting the Since different users may naturally write or hand draw some objects (e.g., letters, shapes, symbols, etc.) with slight variations, the
手書きアプリケーション112により、手書きまたは手での線描のコンテンツ(たとえば、テキスト、図、チャート、形状、図、または任意の種類のテキスト及び/またはテキストではない手書き入力)を、デジタルインクの形態で生成することを可能にし、これらコンテンツを、HWRモジュール114を使用して正確に認識させる。
本実施例では、メモリ108は、コンピュータデバイス102上のユーザからの、入力表面104での手書きテキスト入力を示すモデルドキュメントを規定するモデルデータDTを記憶するためにも適している。そのようなモデルデータDTの性質及び用途は、以下により詳細に論じられることになる。
In this example, memory 108 is also suitable for storing model data DT defining a model document showing handwritten text input on
図3に示すように、本実施形態では、コンピュータデバイス100は、フリーハンドライティングフォーマット(またはフリーハンドライティングモード)FT1で、すなわち、ユーザのためのいずれの手書きの制約をも伴わずに、入力表面104で入力された手書き入力INを検出するように構成されている。フリーハンドライティングモードは、ユーザに、構造化されていないかガイドされていない方式で、フリーの環境(たとえば、ブランクゾーンZ1内)で入力要素INを手書きすることを可能にする。すなわち、手書きテキスト入力の位置、サイズ、及び向きのいずれの手書きの制約も伴わない(ラインパターンに従わず、サイズまたは向きの制限がなく、ライン間への挿入、余白などの制約がない、などである)。このフリーハンドライティングモードFT1は、手書き入力の間に、ユーザに完全な自由度を与える。このことは、ときには、たとえば迅速かつ種々雑多にノートを取るか、テキストとテキストではないものとの混合の入力をするために、望ましい。
As shown in FIG. 3, in this embodiment,
入力表面104によって検出され、ディスプレイデバイス102によって表示される手書き入力INは、デジタルインクの複数の入力ストロークによって形成される。
The handwritten input IN detected by the
図3に示すように、コンピュータデバイス100は、手書き入力INを形成する入力ストロークをテキストとして分類し、こうして、手書き入力INをテキストブロックBL1として認識する場合がある。
As shown in FIG. 3,
コンピュータデバイス100は、認識されたテキストブロックBL1上で正規化プロセスを実施するように構成されており、それにより、テキストブロックBL1をフリーハンドライティングフォーマットFT1から、構造化されたフォーマット(または構造化されたモード)とも称される構造化されたハンドライティングフォーマット(または構造化されたハンドライティングモード)FT2に変換して、ドキュメントパターン200(たとえば、ドキュメントパターン200のラインパターン)に従う。ドキュメントパターンは、手書きテキスト入力INがどのようにディスプレイデバイス102上で配置及び表示されることになるかに関する、幾何学的制約を規定するものとして、本開示では理解される。ドキュメントパターン200は、構造化された方式で、すなわち、構造化されたハンドライティングフォーマットFT2で、手書き入力IN(このケースでは、テキストブロックBL1)を受領するために、構造化された(またはフォーマットされた)環境を構成する。
The
ドキュメントパターン200が、手書きがどのように構造的に配置されるかを規定することに留意されたい。
Note that the
ドキュメントパターンは、
表示エリアの余白と、
ラインパターンと、
ライン間の距離と、
のテキストが従う手書きの制約の少なくとも1つを規定する場合がある。
The document pattern is
the margins of the display area,
line pattern and
the distance between the lines and
may define at least one of the handwritten constraints that the text of .
具体的には、ドキュメントパターン200は、ラインパターン、及び、場合によっては、表示エリアの余白及びライン間の距離の少なくとも1つをも規定する場合がある。
Specifically, the
図3に示す本実施例では、ドキュメントパターン200は、複数のガイドライン(ガイディングラインまたはベースラインとも称される)202を規定するラインパターンを含んでいる。このガイドラインに従って、手書きテキスト(すなわち、テキストブロックBL1のコンテンツ)が構造化されたハンドライティングフォーマットFT2に応じて配置されることになる。ドキュメントパターン202は、連続したガイドラインの各対の間の所定のライン間距離d1を規定する場合があり、それにより、構造化されたハンドライティングフォーマットFT2における手書きテキストのサイズの制約を課す。ドキュメントパターン202は、所定のライン長さd2をも規定する場合がある。このライン長さd2は、構造化されたフォーマットFT2におけるテキストブロックBL1の各テキストラインの最大長さを課す。この構造化されたフォーマットFT2は、ドキュメントパターン200に基づいており、実施態様の単なる実施例を構成するに過ぎないことを理解されたい。他のドキュメントパターンが、当業者によって予期され得る。
In the present example shown in FIG. 3,
特定の実施形態に従って図4に示すように、メモリ108に記憶されたアプリケーション112を実行する場合(図2)、プロセッサ106は、複数のプロセッシングモジュール、すなわち、分類器MD2、ライン抽出器MD4、認識エンジンMD6、及び編集モジュールMD8を実施する。アプリケーション112は、特定の実施形態において後に記載するように、本発明の方法のステップを実施するために、これらモジュールを実施するようにプロセッサを構成する命令を含んでいる。
As shown in FIG. 4 in accordance with certain embodiments, when executing an
分類器MD2は、入力表面104によって検出された各入力ストローク(または、入力ストロークの任意のセットもしくは組合せ)を、テキストまたはテキストではないものとして分類するように構成されている。具体的には、以下にさらに記載するように、分類器MD2は、入力表面104で、フリーハンドライティングフォーマットFT1で入力された入力ストロークの少なくとも1つのテキストブロックBL1をテキストとして検出するように構成されている場合がある。
Classifier MD2 is configured to classify each input stroke (or any set or combination of input strokes) detected by
このため、分類器(または分類モジュール)MD2は、ユーザによって入力された入力デジタルインクのテキストではないコンテンツからテキストを識別するために、あいまいさ排除プロセスを実施する場合がある。あいまいさ排除プロセスは、当業者に既知である任意の方式によって実施される場合がある。例示的な実施態様は、米国特許出願公開第2017/0109578(A1)号に記載されている。 Thus, the classifier (or classification module) MD2 may perform a disambiguation process to identify text from the non-textual content of the input digital ink entered by the user. The disambiguation process may be performed by any method known to those skilled in the art. Exemplary implementations are described in US Patent Application Publication No. 2017/0109578A1.
あいまいさ排除プロセスの実施例として、分類器MD2は、どのストロークがテキストではない要素またはテキストである要素に属している場合があるかの仮説を立てるために、空間的及び一時的な考慮事項を使用してストロークをグループ化する場合がある。空間的な考慮事項には、ストローク間の距離、ストロークの幾何学形状、ストロークの重なり、ストロークの相対位置などが含まれる場合がある。一時的な考慮事項には、ストロークの入力の時間順序が含まれる場合がある。確率のスコアは、(閾値を超える)十分に高いスコアの仮説のみが保持されるように計算される場合がある。ストロークの各グループに関する特徴は、こうして、形状及びテキスト言語モデルを考慮して抽出される。特徴には、分離距離、ストローク内の方向の変化、重なり、ストロークパターンの方向、湾曲の程度などが含まれる場合がある。ストロークは、このため、収集された情報すべてに基づいて仮説をテストすることにより、テキストとテキストではないものとに、分類器MD2によって分類される場合がある。収集された情報には、これら仮説内のストロークのグループの抽出された特徴、ならびに、これらグループ内のストロークの空間的及び一時的な情報が含まれる。しかし、すでに述べたように、テキストではないもの/テキストの区別の他の技術が予期される場合がある。 As an example of a disambiguation process, the classifier MD2 incorporates spatial and temporal considerations to hypothesize which strokes may belong to non-textual or textual elements. may be used to group strokes. Spatial considerations may include distance between strokes, stroke geometry, stroke overlap, relative position of strokes, and the like. Temporal considerations may include temporal order of input of strokes. Probability scores may be computed such that only hypotheses with sufficiently high scores (above a threshold) are retained. Features for each group of strokes are thus extracted considering the shape and text language model. Features may include separation distance, change in direction within a stroke, overlap, direction of the stroke pattern, degree of curvature, and the like. Strokes may thus be classified as text and non-text by classifier MD2 by testing hypotheses based on all the information gathered. The information collected includes extracted features of groups of strokes within these hypotheses, as well as spatial and temporal information for strokes within these groups. However, as already mentioned, other techniques of non-text/text discrimination may be envisaged.
他の実施例では、テキストのみがコンピュータデバイス100によって手書き入力として受領され、それにより、手書きテキストが、入力表面104で直接検出されるようになっている際には、テキスト/テキストではないものとして分類することは必要ではない。
In other embodiments, only text is received by computing
ライン抽出器(またはライン抽出モジュール)MD4は、分類器MD2によって検出された入力ストロークのテキストブロックBL1からテキストラインLNを抽出するように構成されている。換言すると、ライン抽出器MD4は、テキストブロックBL1を集合的に形成する別個のテキストラインLNを識別することが可能である(このため、テキストブロックBL1は、複数のテキストラインLNに分割される)。以下にさらに記載するように、そのようなラインの抽出は、テキスト認識プロセスの一部として実施される場合がある。特定の実施例では、ライン抽出器MD4及び認識エンジンMD6は、ともに単一のモジュールを形成する。 A line extractor (or line extraction module) MD4 is configured to extract text lines LN from text blocks BL1 of input strokes detected by classifier MD2. In other words, line extractor MD4 is able to identify separate text lines LN that collectively form text block BL1 (thus dividing text block BL1 into multiple text lines LN). . As described further below, such line extraction may be performed as part of the text recognition process. In a particular embodiment, line extractor MD4 and recognition engine MD6 together form a single module.
認識エンジン(または認識モジュール)MD6は、分類器MD2によって抽出されると、テキストブロックBL1の各テキストラインLNにテキスト認識を実施するように構成されている。テキスト認識は、たとえば、要素の候補(または仮説)のリストを確率のスコアとともに生成すること、及び、最適な認識の結果を見出すために、要素の候補に言語モデル(用語集、文法、意味論など)を適用することを伴う、当業者には既知である任意の適切な技術を使用して実施される場合がある。所与の要素のシーケンスがどれだけの頻度で特定の言語内に現れるか、または、特定のユーザによって使用されるかに関してモデル化する統計的情報も、認識エンジンMD6によって提供される解釈の可能性を評価するために、考慮される場合がある。しかし、本開示を不必要に不明瞭にすることを避けるために、さらなる詳細は提供されない。手書き認識を実施することの一実施例は、たとえば、米国特許出願公開第2017/0109578(A1)号に見ることができる。 A recognition engine (or recognition module) MD6 is arranged to perform text recognition on each text line LN of the text block BL1 as extracted by the classifier MD2. Text recognition involves, for example, generating a list of element candidates (or hypotheses) with probability scores, and applying a language model (lexicon, grammar, semantics) to the element candidates to find the optimal recognition result. etc.) may be performed using any suitable technique known to those skilled in the art. Statistical information modeling how often a given sequence of elements appears in a particular language or is used by a particular user is also the interpretation possibilities provided by the recognition engine MD6. may be considered to assess However, further details are not provided to avoid unnecessarily obscuring the present disclosure. An example of implementing handwriting recognition can be found, for example, in US Patent Application Publication No. 2017/0109578A1.
本実施形態では、テキスト認識を実施する間、認識エンジンMD6は、テキストブロックBL1の各入力ストロークを、テキストブロックBL1の特有の文字、特有のワード、及び特有のテキストラインと関連付けるモデルデータDTを生成するように構成されている。以下にさらに記載するように、モデルデータDTは、手書きテキスト入力の各ストロークの、手書きテキスト入力の対応する文字、対応するワード、及び対応するテキストラインとの間の相関関係(またはリンクまたは参照)を規定する。 In this embodiment, while performing text recognition, the recognition engine MD6 generates model data DT associating each input stroke of the text block BL1 with a unique character, a unique word and a unique text line of the text block BL1. is configured to As further described below, the model data DT is the correlation (or link or reference) between each stroke of the handwritten text input with the corresponding letter, the corresponding word, and the corresponding text line of the handwritten text input. stipulate.
編集モジュール(またはテキストエディタ)MD8は、(図3に示すように)ドキュメントパターン200に従うように、各テキストラインLNを、上述のフリーハンドライティングフォーマットFT1から構造化されたフォーマットFT2に正規化するように構成されている。以下にさらに記載するように、この正規化の間、編集モジュールMD8は、各テキストラインLNに関し、
ドキュメントパターン200(たとえば、ドキュメントパターン200のラインパターン)に従うように、前述のテキストラインLNを構造化されたフォーマットFT2に変換するように、前述のテキストラインLNに関し、それぞれの変換関数を計算することと、
前述のテキストラインLNの各入力ストロークを構造化されたフォーマットFT2に変換するように、それぞれの変換関数を適用することと、
それぞれの変換関数に基づき、モデルデータDT(及びより具体的には、前述のテキストラインLNに関するモデルデータDT)をアップデートすることと、
を実施するように構成されている場合がある。
The editing module (or text editor) MD8 is adapted to normalize each text line LN from the freehand writing format FT1 described above to the structured format FT2 so as to follow the document pattern 200 (as shown in FIG. 3). is configured to As further described below, during this normalization, the editing module MD8, for each text line LN:
Calculating respective transformation functions for said text lines LN to transform said text lines LN into structured format FT2 so as to conform to the document pattern 200 (e.g. the line pattern of the document pattern 200). When,
applying a respective transformation function to transform each input stroke of said text line LN into a structured format FT2;
updating the model data DT (and more specifically the model data DT for said text line LN) based on the respective transformation function;
may be configured to implement
換言すると、テキストブロックBL1を正規化する場合、編集モジュールBL1は、ライン毎の基準で、テキストブロックBL1を、フリーハンドライティングフォーマットFT1から構造的な手書きフォーマットFT2に変換する。編集モジュールBL1によって正規化されると、正規化プロセスの一部として、手書きを形成するストロークにいくつかの変換が適用されたとしても、正規化されたコンテンツは依然として、(入力ストロークによって形成された)手書きの性質である。 In other words, when normalizing the text block BL1, the editing module BL1 converts the text block BL1 from the freehand writing format FT1 to the structured handwriting format FT2 on a line-by-line basis. Once normalized by the editing module BL1, even if some transformations were applied to the strokes forming the handwriting as part of the normalization process, the normalized content would still be ) is of a handwritten nature.
正規化が実施されると、ディスプレイデバイス102は、構造化されたフォーマットFT2でテキストブロックBL1を表示するように構成されている場合がある。編集モジュールMD8は、構造化されたフォーマットFT2のテキストブロックBL1にさらなる編集を実施するように構成されている場合もある。
Once normalization is performed,
コンピュータデバイス100のモジュールMD2からMD8の構成及び動作は、図面を参照して以下に記載される特定の実施形態でより明らかである。図4に示すようなモジュールMD2からMD6が、本発明の例示的な実施形態を示すのみであり、他の実施態様が可能であることを理解されたい。
The configuration and operation of modules MD2 through MD8 of
本発明の方法の各ステップに関し、コンピュータデバイスは、前述のステップを実施するように構成された対応するモジュールを備えている場合がある。これらステップの少なくとも2つが、単一のモジュールの一部として実施される場合がある。 For each step of the method of the invention, the computing device may have a corresponding module configured to perform the aforementioned steps. At least two of these steps may be implemented as part of a single module.
図2から図4に図示されるコンピュータデバイス100によって実施される方法を、本発明の特定の実施形態に従って、ここで図5から図12を参照して記載する。より明確には、コンピュータデバイス100は、メモリ108に記憶されたアプリケーション112を実行することにより、この方法を実施する。
A method performed by the
ユーザが図6に示すような手書き入力INをコンピュータデバイス100上で入力する例示的なシナリオが考慮される。次いで、以下に記載するような手書き入力IN上の正規化プロセスを含む処理が、コンピュータデバイス100によって実施される。
Consider an exemplary scenario in which a user enters a handwritten input IN on a
より明確には、検出ステップS2において、コンピュータデバイス100が、コンピュータデバイス100の入力表面104でユーザによって入力された手書き入力INを検出する。図6に示すように、手書き入力INは、ユーザによって入力表面104で形成されたデジタルインクの複数の入力ストロークSTを含んでいる。たとえば、文字の第1のストリング「This」は、入力ストロークST1、ST2、ST3、及びST4によって形成されている。すでに述べたように、各入力ストロークSTは、ストロークの開始位置、ストロークの末端位置、及びストロークの開始位置とストロークの末端位置とを接続する経路によって少なくとも特徴付けられている。したがって、たとえば(ワード「This」内の)文字「i」の頂部に配置される点は、それ自体によって単一のストロークST4を構成する。
More specifically, in detection step S2,
本実施例では、手書きのデジタルインクINは、前述したようにフリーハンドライティングフォーマットFT1で入力される(図3)。すなわち、ディスプレイ102の所定の入力エリアにあらゆる手書きの制約を伴わない。従うべきライン、サイズ、向きなどの制約がなければ、ユーザは、コンテンツINを自由かつ容易な方式で手書きすることが許容される。見ることができるように、各手書き文字または各手書きワードのサイズ、向き、及び位置は、ユーザの好みに応じて任意に変化する場合がある。手書き入力INが、実質的に平行なラインに沿って図6に示されているが、手書き入力INは、変化するラインの向きに沿って配置される場合がある。
In this example, the handwritten digital ink IN is entered in the freehand writing format FT1 as previously described (FIG. 3). That is, without any handwriting restrictions on a given input area of the
図7に示すように、コンピュータデバイス100は、フリーハンドライティングフォーマット(またはモード)FT1に従って、ディスプレイデバイス102上に手書き入力INの複数の入力ストロークSTを表示する(S4)。
As shown in FIG. 7,
分類ステップS6では、コンピュータデバイス100は、フリーハンドライティングフォーマットFT1で検出された各入力ストロークSTを、テキストまたはテキストではないもののいずれかに分類する。この目的のために、コンピュータデバイス100の分類器MD6は、前に記載したあいまいさ排除プロセスを、任意の適切な方式で実施する場合がある。
In a classification step S6, the
簡略化のために、本実施例では、コンピュータデバイス100によって検出された手書き入力IN全体がテキスト(すなわち、手書きテキスト)であると推定する。したがって、分類ステップS6の間、コンピュータデバイス100は、フリーハンドライティングフォーマットFT1で入力された入力ストロークSTによって形成された手書きテキストのテキストブロックBL1を、テキストとして検出する。簡略化のために、手書きテキストの単一のテキストブロックBL1が、本実施例ではコンピュータデバイス100によって検出されるが、本発明のコンセプトは、手書き入力INにおいて、コンピュータデバイス100によって検出された手書きテキストの複数のテキストブロックに、同じ方式で適用されることに留意されたい。
For simplicity, this example assumes that the entire handwritten input IN detected by computing
図8に示すように、このため、コンピュータデバイス100は、テキストブロックBL1にテキスト認識を実施する(S8)。テキスト認識S8の間、コンピュータデバイス100は、任意の適切な言語に従って、文字CH(またはシンボル)、及びワードWD(図8)などの、予め規定された認識可能なテキスト要素を認識するように、入力ストロークSTの様々な特徴を分析する。すでに述べたように、テキスト認識は、たとえば、要素の候補(または仮説)のリストを確率のスコアとともに生成すること、及び、もっとも適している候補を選択するために、要素の候補に言語モデル(用語集、文法、意味論など)を適用することを含む、当業者には既知である任意の適切な技術を使用して実施される場合がある。このため、認識エンジンMD6は、予め規定された文字を識別するために、任意の適切な言語学的情報を使用して、各テキストラインLNのコンテンツをパース及び分析する場合がある。
As shown in FIG. 8, the
テキスト認識S8は、以下に記載される2つのステップ、すなわち、ライン抽出ステップS10と、生成ステップS12と、を含んでいる。 Text recognition S8 includes two steps described below: a line extraction step S10 and a generation step S12.
より明確には、テキスト認識S8の間、コンピュータデバイス100は、手書きテキストのテキストラインLNをテキストブロックBL1から抽出するために、ライン抽出S10を実施する。本実施例では、コンピュータデバイス100は、テキストブロックBL1を5つの別個のテキストラインLN1からLN5に分割する。ライン抽出は、テキスト/テキストではないものの分類S6の間に検出されたテキストブロックBL1のストロークST(またはストロークSTのセット)の幾何学的分析に基づき、ライン抽出器MD4によって実施される場合がある。テキスト分析に基づき、ライン抽出器MD4は、各入力ストロークSTがどのテキストラインに属するかを判定することが可能である。当業者は、フリーハンドライティングモードで入力されたテキストブロック内のテキストラインの識別を可能にする任意の適切な技術を実施する場合がある。
More specifically, during text recognition S8,
テキスト認識S8の間でもなお、コンピュータデバイス100は、テキストブロックBL1の各ストロークSTを、テキストブロックBL1の特有の文字CH、特有のワードWD、及び特有のテキストラインLNと関連付けるモデルデータDTを生成もする(S12)。
Even during text recognition S8, the
モデルデータDTは、テキストブロックBL1のドキュメントモデル(相互作用するテキストモデルとも称される)を規定する。各テキストラインLNは、このドキュメントモデルに応じて構築される。後に示すように、このことは、インクの相互作用性が後に、テキストブロックBL1を編集する際に達成され得ることのこれら相関関係を確立することによるものである。たとえば、テキストブロックBL1内のワードWDを消去することは、コンピュータデバイス100が同様に、モデルデータDTに従って、このワードWDに関して参照される構成文字CHのすべてを消去することに繋がる。
The model data DT define the document model (also called interactive text model) of the text block BL1. Each text line LN is constructed according to this document model. As will be shown later, this is by establishing these correlations that ink interactivity can be achieved later in editing text block BL1. For example, erasing word WD in text block BL1 leads to
本実施例では、モデルデータDTは、文字情報、ワード情報、及びライン情報の3つのカテゴリーを含んでいる。任意の適切な方式(たとえば、関係のツリーまたは参照のツリーとして)で系統立てられる場合があるモデルデータは、各ストロークST(またはストロークの各部)を特有の文字CHにリンクさせ、各文字CHを特有のワードWDにリンクさせ、また、各ワードWDを特有のテキストラインLNにリンクさせる相互参照を規定し、それにより、テキスト認識S8で検出されたストロークST(またはストロークの部分)と、文字CHと、ワードWDと、テキストラインLNとの間の相関関係を確立する。結果として、デジタルインクは、構造化され、モデルデータDTと関連付けられて、相互作用性インクを形成する。 In this embodiment, the model data DT includes three categories of character information, word information and line information. The model data, which may be organized in any suitable manner (e.g., as a tree of relations or a tree of references), links each stroke ST (or parts of a stroke) to a unique character CH, each character CH We define a cross-reference linking to a unique word WD and linking each word WD to a unique text line LN, so that the stroke ST (or part of a stroke) detected in text recognition S8 and the character CH , the word WD and the text line LN. As a result, digital ink is structured and associated with model data DT to form interactive ink.
より具体的には、図9に示すように、特定の実施形態によれば、テキストブロックBL1のモデルデータDTは、
複数の文字CHを規定する文字情報220であって、各文字CHが、デジタルインクの少なくとも1つのストロークST(または、ストロークSTの少なくとも一部)、及び、少なくとも1つのテキストブロックBL1のテキストラインLNと関連付けられている、文字情報220と、
複数のワードWDを規定するワード情報222であって、各ワードWDが、文字情報220によって規定された少なくとも1つの文字CHと関連付けられている、ワード情報222と、
テキストブロックBL1の各テキストラインLNを規定するライン情報224であって、各テキストラインLNが、ワード情報222によって規定された少なくとも1つのワードWD(またはワードの一部)と関連付けられている、ライン情報224と、
を含む場合がある。
More specifically, as shown in FIG. 9, according to a particular embodiment, the model data DT for text block BL1 are:
may include
文字CHが、単一の入力ストロークST、複数の入力ストロークST、または、1つもしくは複数の入力ストロークSTの一部によって形成される場合があることに留意されたい。文字情報220は、ストロークSTの各部の、特有の文字CHとのリンクを示すものである。たとえば、図6に示すように、テキスト認識S10の間にコンピュータデバイス100によって認識された文字CH2、CH3、及びCH4は、それぞれ、ストロークST3の部分ST31、ST32、及びST33によって部分的または全体的に形成される。
Note that the character CH may be formed by a single input stroke ST, multiple input strokes ST, or part of one or more input strokes ST. The
特定の実施例では、ライン情報224は、テキストブロックBL1の各テキストラインLNに関し、
テキストラインLNの原点を示す原点座標(x,y)と、
テキストラインLNの傾斜を示す傾斜情報(a)と、
テキストラインLNの高さを示す高さ情報(h)と、
を含んでいる。
In particular embodiments,
origin coordinates (x, y) indicating the origin of the text line LN;
tilt information (a) indicating the tilt of the text line LN;
height information (h) indicating the height of the text line LN;
contains.
ライン情報224はこうして、コンピュータデバイス100が、各テキストラインLNの位置、向き、及びサイズを規定することを可能にする。
テキストラインLNに属する任意の所定の基準ポイントが、前述のテキストラインLNの、上述の「原点」としてライン情報224に規定され得ることに留意されたい。
Note that any predetermined reference point belonging to the text line LN can be defined in the
テキストラインLNの原点座標は、浮動小数点の値:ライン(x,y)の対によって規定される場合がある。傾斜情報は、浮動小数点の値:ライン(a)である場合がある。高さ情報は、たとえば、ドキュメントモデルに応じてこのテキストラインにアサインされた文字の平均高さを示す、浮動小数点の値:ライン(h)である場合がある。本実施例では、高さ(h)は、所与のテキストラインLNの各々に関する傾斜(a)に対して垂直に表示される。 The origin coordinates of a text line LN may be defined by a floating point value:line(x,y) pair. The slope information may be a floating point value: line(a). The height information may be, for example, a floating point value: line(h) indicating the average height of characters assigned to this line of text depending on the document model. In this example, the height (h) is displayed perpendicular to the slope (a) for each given text line LN.
各テキストラインLNに関する平均高さ(h)の計算は、各テキストラインの結果としての平均値にノイズが発生することを避けるために、アルファベットの上に来る部分及び下に来る部分を考慮するように、コンピュータデバイス100によって実施される場合がある。
The calculation of the average height (h) for each text line LN should take into account the upper and lower parts of the alphabet to avoid introducing noise into the resulting average for each text line. may also be implemented by computing
実施例として、コンピュータデバイス100は、第1のテキストラインLN1内の入力ストロークST1からST4が、特に構造化された方式で、集合的にワードWD1を形成することを認識する(S10)。結果として、図6及び図9に示すように、コンピュータデバイス100がモデルデータDTを生成する(S12)。このモデルデータDTは、テキストラインLN1に関連する、
ストロークST1及びストロークST2と関連する文字CH1と、
ストロークST3の部分ST31と関連する文字CH2と、
ストロークST3の(部分ST31及び部分ST33を補完する)部分ST32、ならびにストロークST4と関連する文字CH3と、
ストロークST3の(ST31及びST32を補完する)部分ST33と関連する文字CH4と、
の文字を規定する文字情報220を含んでいる。
As an example,
a character CH1 associated with stroke ST1 and stroke ST2;
the character CH2 associated with portion ST31 of stroke ST3;
portion ST32 of stroke ST3 (complementary to portions ST31 and ST33) and character CH3 associated with stroke ST4;
character CH4 associated with portion ST33 (complementing ST31 and ST32) of stroke ST3;
contains
テキストブロックBL1内の他の文字CHは、文字情報220内で類似の方式で規定される。
Other characters CH within the text block BL1 are defined in a similar fashion within the
この実施例では依然として、ワード情報222は、文字CH1、CH2、CH3、及びCH4に関連するワードWD1を規定する。テキストブロックBL1内の他のワードWDは、ワード情報222において類似の方式で規定される。
Still in this example,
この実施例では依然として、ライン情報224は、
原点座標(x1,y1)、傾斜情報(a1)、及び高さ情報(h1)を示すテキストラインLN1と、
原点座標(x2,y2)、傾斜情報(a2)、及び高さ情報(h2)を示すテキストラインLN2と、
などのラインを規定する。
Still in this example,
a text line LN1 indicating origin coordinates (x1, y1), tilt information (a1), and height information (h1);
a text line LN2 indicating origin coordinates (x2, y2), tilt information (a2), and height information (h2);
Define lines such as
テキストブロックBL1の他のテキストラインLN3、LN4、及びLN5は、ライン情報224において類似の方式で規定される。
Other text lines LN3, LN4, and LN5 of text block BL1 are defined in
しかし、モデルデータDTは、図9に示す方式とは別の方式で系統立てられる場合があることを理解されたい。 However, it should be understood that the model data DT may be organized in a different manner than that shown in FIG.
記憶ステップS14では、コンピュータデバイス100は、S12で生成されたモデルデータDTをメモリ108内に記憶する。
In a storage step S14, the
図10に示すように、正規化ステップS16では、コンピュータデバイス100は、テキストブロックBL1の各手書きテキストラインLNを、前述したように、フリーハンドライティングフォーマットFT1から構造化されたハンドライティングフォーマットFT2に正規化する。この正規化は、特定の実施例で以下に記載するように、ライン毎の基準で実施される。この正規化は、コンピュータデバイス100が、手書きテキストのテキストブロックBL1を、制約のない環境(フリーハンドライティングモードFT1)から、フォーマットされているか構造化された環境(構造化されたハンドライティングフォーマットFT2)に変換することを可能にし、それにより、前述の手書きテキストを、ドキュメントパターン200に従って、より統計立てられ(すなわち、正規化され)、かつ効率的な方式で配置し、後に表示することができるようになっている。
As shown in FIG. 10, in a normalization step S16, the
図10の実施例では、正規化S16の結果が、コンピュータデバイス100によってディスプレイデバイス102上に表示されている。見ることができるように、手書きテキストのテキストラインLN1からLN5は、ドキュメントパターン200によって規定された構造化されたフォーマットFT2に従って、位置、サイズ、及び向きの一様にされた構成に正規化される。たとえば、テキストラインLN2及びLN4は、ドキュメントパターン200(より具体的には、ラインパターン)によって課されるライン間距離d1に従うようにダウンサイズされる。手書きテキストのすべてのテキストラインLNは、ガイドライン202に従って整列及び配置される。すでに示したように、正規化の様々な他の形態が、本発明の中で予期される。
In the example of FIG. 10, the results of normalization S16 are being displayed by computing
この正規化S16は、テキストブロックBL1の各テキストラインLNを、これらが構造化されたハンドライティングフォーマットFT2に従って再配置されるように変換すること(S20)によって達成される。以下にさらに記載するように、これら変換は、それぞれの変換関数TFを手書きテキストの各テキストラインLN(すなわち、各テキストラインLNのストロークST)に適用することによって実施される。 This normalization S16 is achieved by transforming (S20) each text line LN of the text block BL1 such that they are rearranged according to the structured handwriting format FT2. As described further below, these transformations are performed by applying a respective transformation function TF to each text line LN of the handwritten text (ie strokes ST of each text line LN).
すでに示したように、正規化を経る各テキストラインLNは、手書きテキストのテキストラインである。いくつかの変換がこの手書きテキストラインに、正規化プロセスS16の一部として適用されるが、これらテキストラインLNは、正規化されると(すなわち、正規化されたテキストライン)、依然として手書きテキストラインである。すなわち、テキストラインとして、しかし正規化された方式で(たとえば、入力ストロークによって形成された手書きを構成しない活字に組み上がったコンテンツとは反対に)配置される手書きである。以下にさらに記載するように、手書きテキストの各テキストラインLNのストロークSTは、対応する手書きテキストラインを正規化された手書きテキストラインに変える変換を規定する変換関数TFの影響を受ける。 As already indicated, each text line LN undergoing normalization is a text line of handwritten text. Although some transformations are applied to this handwritten text line as part of the normalization process S16, these text lines LN, once normalized (i.e. normalized text lines), are still handwritten text lines is. That is, handwriting that is laid out as text lines, but in a normalized manner (eg, as opposed to typeset content that does not constitute handwriting formed by input strokes). As further described below, the strokes ST of each text line LN of handwritten text are subjected to a transformation function TF that defines a transformation that transforms the corresponding handwritten text line into a normalized handwritten text line.
さらに、手書きテキストラインLNを示すモデルデータDTは、正規化S16の間にテキストラインLNに適用される同じ変換(変換関数によって規定される)に基づき、コンピュータデバイス100によってアップデートされる(S22)。
Additionally, the model data DT representing the handwritten text line LN are updated (S22) by the
より明確には、正規化ステップS16(図5)の間、コンピュータデバイス100は、テキストブロックBL1の各テキストラインLNに関するステップS18、S20、及びS22を含む同じ反復を実施する。明確化のために、この反復S18からS22は、第1のテキストラインLN1のみに関して以下に詳細に記載される。ステップS18からS22は、テキストブロックBL1の各テキストラインLNに関し、類似の方式で適用される場合がある。
More specifically, during normalization step S16 (FIG. 5),
判定ステップS18の間、コンピュータデバイス100は、ドキュメントパターン200に従うように、それぞれの変換関数TFを計算(または判定)して、手書きテキストのテキストラインLN1を構造化されたハンドライティングフォーマットFT2に変換する。特定の実施例では、コンピュータデバイス100は、S18において、テキストラインLN1のライン情報224、すなわち、手書きテキストのテキストラインLN1の原点座標(x1,y1)、傾斜情報(a1)、及び高さ情報(h1)を含む入力パラメータを取得する。コンピュータデバイス100は、次いで、手書きテキストの取得された入力パラメータに基づき、かつ、ドキュメントパターン200に基づき(たとえば、構造化されたフォーマットFT2で適用可能なドキュメントパターン200のラインパターンを考慮する)、テキストラインLN1に関する変換関数TFを判定する(S18)。具体的には、コンピュータデバイス100は、テキストラインLN1の手書きテキストが、ドキュメントパターン200の第1のベースライン202に移動し、この第1のベースラインに応じて向けられ、また、ドキュメントパターン200のライン間に応じて拡縮されるように、変換関数TFを判定する場合がある。たとえば、テキストラインLN1の原点は、第1のベースライン202の所定の位置に移動される。
During the determination step S18, the
図11に示すように、それぞれのテキストラインLNに関してコンピュータデバイス100によって計算された各変換関数TFは、正規化ステップS16の間、手書きテキストの前述のテキストラインLN(そしてひいては、このテキストラインLNを形成するストロークST)に適用されるように、
平行移動成分CP1と、
拡縮成分CP2と、
回転成分CP3と、
の少なくとも1つの変換成分を規定する場合がある。
As shown in FIG. 11, each transformation function TF calculated by the
a translation component CP1;
a scaling component CP2;
a rotation component CP3;
may define at least one transform component of .
本ケースでは、各変換関数TFがこれら3つの構成要素CP1、CP2、及びCP3を含むことが考慮されるが、他の実施態様が可能である。 In the present case it is considered that each transformation function TF comprises these three components CP1, CP2 and CP3, but other implementations are possible.
平行移動成分CP1は、それぞれのテキストラインLNの平行移動を規定する場合がある。拡縮成分CP2は、それぞれのテキストラインの拡縮操作を規定する場合がある。最後に、回転成分CP3は、それぞれのテキストラインLNの回転を規定する場合がある。 A translation component CP1 may define the translation of the respective text line LN. A scaling component CP2 may define a scaling operation for each line of text. Finally, the rotation component CP3 may define the rotation of the respective text line LN.
特定の実施例では、正規化ステップS16の間、変換関数TFの平行移動成分CP1は、このテキストラインの原点が、正規化ステップS16の間に、前述のテキストラインにアサインされた対応するベースライン202と整列するように移動されるように、テキストライン(たとえば、LN1)の平行移動を実施するように判定される。 In a particular embodiment, during the normalization step S16, the translation component CP1 of the transformation function TF is calculated such that the origin of this text line is the corresponding baseline It is determined to perform a translation of the text line (eg, LN1) so that it is moved to align with 202 .
特定の実施例では、正規化ステップS16の間、変換関数TFの拡縮成分CP2は、それぞれのテキストライン(たとえば、LN1)に関し、ドキュメントパターン200のラインパターンの2つの連続したベースライン202間の距離d1の、テキストラインの高さ(たとえば、h1)に対する割合に基づいて判定される。
In a particular embodiment, during the normalization step S16, the scaling component CP2 of the transformation function TF is the distance between two
特定の実施例では、正規化ステップS16の間、回転成分CP3は、それぞれのテキストライン(たとえば、LN3)を回転させて、それぞれのテキストラインの傾斜(たとえば、a1)(たとえば、ドキュメントパターン200のベースライン202を基準として取る)を、ドキュメントパターン200に従ってゼロに低減するように判定される。
In a particular embodiment, during the normalization step S16, the rotation component CP3 rotates each text line (eg, LN3) such that the respective text line's slope (eg, a1) (eg, the
実施例として、変換関数TFは、正規化の間にテキストラインLNに適用される回転を規定する場合がある。傾斜したラインLNに適用される回転は、傾斜(a)とは反対側の角度の回転である場合がある。テキストラインLNの所与の傾斜(a)に関し、変換TFの回転成分CP3は、このため、(-a)の回転である場合がある。変換関数TFが回転を含む場合、この変換関数TFは、影響を受けるストローク(複数可)またはストロークの部分の各ポイントの、テキストラインLNの原点周りの回転を生じる場合がある。以下にさらに説明するように、ライン情報224は、したがって、(ラインの傾斜(a)をゼロ:a=0に設定することにより)アップデートされる場合もある。
As an example, the transformation function TF may define the rotation applied to the text line LN during normalization. The rotation applied to the slanted line LN may be an angle of rotation opposite to the slant (a). For a given inclination (a) of the text line LN, the rotation component CP3 of the transform TF may thus be a rotation of (-a). If the transformation function TF involves rotation, this transformation function TF may result in a rotation of each point of the affected stroke(s) or parts of strokes about the origin of the text line LN. As explained further below, the
テキストラインLNの回転が、構造化されたフォーマットFT2に変換することが常に必要であるわけではないことに留意されたい。すなわち、テキストラインLNがすでに適切な向きにある場合(たとえば、テキストラインLNが、ドキュメントパターン200のそれぞれのベースライン202の方向に実質的に沿って、フリーハンドライティングフォーマットFT1で手書きされた場合)である。そのようなケースでは、回転成分CP3は、CP3=0になるように設定することができる。
Note that the rotation of the text line LN is not always necessary to transform it into the structured format FT2. That is, if the text lines LN are already in the proper orientation (eg, if the text lines LN were handwritten in the freehand writing format FT1 substantially along the direction of the
同様に、いくつかのケースでは、構成要素CP1及び/またはCP2は、それぞれ、平行移動及び/または拡縮がそれぞれのテキストラインLNを構造化されたフォーマットFT2に変換するために必要ではない場合、ゼロに設定される場合がある。 Similarly, in some cases, components CP1 and/or CP2, respectively, may be zero if no translation and/or scaling is required to transform the respective text line LN into structured format FT2. may be set to
特定の実施例では、コンピュータデバイス100は、S18において、構成要素CP1、CP2、及びCP3の少なくとも1つがゼロとは異なるように、テキストラインLN1に関する変換関数TFを判定する。図11に示す実施例では、変換関数TFは、「This example shows」を手書きとして読み取るテキストラインLN1が、平行移動成分CP1に従ってディスプレイデバイス102上で移動され(平行移動)、拡縮成分CP2に従って拡縮され(ダウンサイズされ)、また、回転成分CP3に従ってある角度だけ回転されるように、計算される。
In particular embodiments,
変換ステップS20では、コンピュータデバイス100は、テキストラインLN1の各ストロークSTを構造化されたハンドライティングフォーマットFT1に変換するように、それぞれの変換関数TFを適用する。本実施例では、コンピュータデバイス100は、こうして、図11に関してすでに上述したように、平行移動成分CP1に従ってテキストラインLN1を移動(平行移動)し、拡縮成分CP2に従ってテキストラインLN1を拡縮し、回転成分CP3に従ってテキストラインLN1を回転させる。「This example shows」とのフレーズは、図11に示すように正規化されると、依然として(ストロークによって形成された)手書きを構成するが、正規化された方式で構造的に統計立てられている。
In a transformation step S20, the
アップデートステップS22では、コンピュータデバイス100は、テキストラインLN1に関してS18において判定されたそれぞれの変換関数TFに基づき、テキストブロックBL1のモデルデータDTをアップデートもする。より具体的には、コンピュータデバイス100は、S18で計算されたそれぞれの変換関数TFに従って、テキストラインLN1に関するモデルデータDTの一部をアップデートする。
In an update step S22, the
本実施例では、アップデートステップS22の間、コンピュータデバイス100は、S18において判定されたそれぞれの変換関数TFに基づき、テキストラインLN1に関連するモデルデータDTのライン情報224をアップデートする。結果として、原点座標(x1,y1)、傾斜情報(a1)、及び高さ情報(h1)は、それぞれ、構成要素CP1、CP3、及びCP2に従ってアップデートされる。
In this example, during the update step S22, the
上で示したように、ステップS18、S20、及びS22は、ライン抽出ステップS10で検出された各テキストラインLNに関し、類似の方式で実施される。結果として、テキストブロックBL1は、このテキストブロックBL1が構造化されたフォーマットFT2に変換され(S20)、関連するモデルデータをそれに応じてアップデートさせる(S22)ように、正規化を経る(S16)。この正規化は、各テキストラインLNが専用の変換関数TFに基づいて正規化され、各テキストラインLNに関するモデルデータがこの専用の変換関数TFに基づいてアップデートされる意味で、ライン毎の基準で実施される。 As indicated above, steps S18, S20 and S22 are performed in a similar manner for each text line LN detected in line extraction step S10. As a result, the text block BL1 undergoes normalization (S16) such that this text block BL1 is converted into a structured format FT2 (S20) and the associated model data is updated accordingly (S22). This normalization is performed on a line-by-line basis in the sense that each text line LN is normalized based on a dedicated transformation function TF and the model data for each text line LN is updated based on this dedicated transformation function TF. be implemented.
アップデートステップS22は、変換ステップS20の前か後に実施される場合がある。より一般的には、ステップS18からS22のシーケンスが異なるテキストラインLNに関して実施される順番は、当業者によって適合させられる場合がある。 The update step S22 may be performed before or after the conversion step S20. More generally, the order in which the sequence of steps S18 to S22 is performed for different text lines LN may be adapted by those skilled in the art.
図5に示すように、コンピュータデバイスは、アップデートされたモデルデータDTをメモリ8(図2)に記憶する場合がある(S24)。この記憶ステップは、アップデートS22がテキストブロックBL1の各テキストラインLNに関して実施される間、継続的に実施される場合がある。本実施例では、テキストブロックBL1のアップデートされたモデルデータDTは、S14で記憶されたオリジナルのモデルデータDTの代わりにS24で記憶される。 As shown in Figure 5, the computing device may store the updated model data DT in the memory 8 (Figure 2) (S24). This storage step may be performed continuously while the update S22 is performed for each text line LN of the text block BL1. In this embodiment, the updated model data DT of the text block BL1 are stored at S24 instead of the original model data DT stored at S14.
さらに、コンピュータデバイス100は、図10に示すように、正規化されたテキストブロックBL1を表示する(S26)場合がある。正規化されると、テキストブロックBL1は、前述のように、ドキュメントパターン200に従う(マッチする)ように、構造化されたフォーマットFT2に従って配置される。
Further,
各テキストラインLNのベースライン202は、対応するライン情報224において規定された原点及び傾斜を使用して、コンピュータデバイス100によって描写される場合がある。さらに、各テキストラインLNの高さの値は、ディスプレイデバイス102上のハイライトされた矩形(または類似のもの)を使用して示される場合がある。各テキストラインLNの原点は、テキストラインが正規化の間に拡縮される場合にアンカーポイントとして使用される場合がある。
フリーハンドライティングフォーマットから構造化された状況またはフォーマット(FT2など)への、テキストブロックBL1のテキストの正規化S16は、インクの相互作用性によって提供される全体の経験を向上させる。正規化は、より一様かつ構造化された方式で手書きテキスト入力を配置及び表示することを可能にするのみならず、正規化は、以下に説明するように、テキスト認識システムの信頼性及び編集効率を向上させることを可能にもする。 Normalizing S16 the text of text block BL1 from a freehand writing format to a structured context or format (such as FT2) enhances the overall experience provided by the interactivity of ink. Not only does normalization allow handwritten text input to be arranged and displayed in a more uniform and structured manner, normalization also improves the reliability and editing of text recognition systems, as described below. It also makes it possible to improve efficiency.
本発明は、相互作用性インクを形成するように、デジタルインクをモデルデータで構造的にすることを可能にする。前に示したように、モデルデータDTは、各ストロークSTを特有の文字CHにリンクさせ、各文字CHを特有のワードWDにリンクさせ、また、各ワードWDを特有のテキストラインLNにリンクさせる相互参照を規定し、それにより、インクの相互作用性を可能にする。たとえば、テキストブロック内のワードを消去することは、ドキュメントモデルに従ってこのワードによって参照されたすべての文字を消去することをも含んでいる。別の実施例として、所与のラインLNのすべてのコンテンツを消去することは、このラインをモデルデータから消去するのみならず、コンピュータデバイス100に、このラインの構成要素であるワードWD及び文字CHのすべてを消去させもする。前述のようなライン毎の正規化プロセスを可能にするのは、モデルデータDTによって規定されたこれら相関関係である。
The present invention allows digital ink to be structured with model data to form interactive ink. As indicated above, the model data DT links each stroke ST to a unique character CH, each character CH to a unique word WD, and each word WD to a unique text line LN. Cross-references are defined, thereby enabling ink interactivity. For example, deleting a word in a text block also includes deleting all characters referenced by this word according to the document model. As another example, erasing all the contents of a given line LN not only erases this line from the model data, but also tells the
本発明のおかげで、入力された手書きテキストを示す関連するモデルデータを最新のものに維持し、それにより、正規化プロセスの間に実施される変換に応じてさらなるテキスト認識を実施する必要がないようになしつつ、手書きテキスト入力を正規化することができる。換言すると、正規化プロセスの一部として、コンピュータデバイス100は、モデルデータにおいて規定されたような手書きテキスト入力INのストロークSTと、文字CHと、ワードWDと、テキストラインLNとの間の相関関係をアップデートし、それにより、正規化されたテキストブロックBL1にテキスト認識をふたたび実施することが不要であるようになっている。正規化されたテキストブロックBL1は、別様に、S8で実施された最初のテキスト認識の結果と矛盾する場合がある。
Thanks to the invention, the relevant model data representing the input handwritten text is kept up-to-date so that no further text recognition needs to be performed depending on the transformations performed during the normalization process. Handwritten text input can be normalized while doing so. In other words, as part of the normalization process,
一般的に言えば、既知のコンピュータデバイスにおけるテキスト認識エンジンは、通常、手書きテキスト上で起こるあらゆるインクの変更または編集(たとえば、ストロークの消去または編集)を監視するように構成されている。したがって、そのような既知のコンピュータデバイス上でテキストの正規化が行われた場合、このことは、テキスト認識エンジンに、正規化の間、構造化されたフォーマットに一度変換された手書きテキスト入力内の可能性のある新たなコンテンツを認識することを試みるように、ふたたび実行させる。換言すると、既知のシステム内のデジタルインクの正規化は、以前の認識の結果を廃棄し、新たな認識の結果を得るためにインク全体を再処理することに繋がる。そのような応答するテキスト認識機構は、インクの変更が、たとえば、フリーハンドライティングモードにおいてユーザの編集のいくつかの形態から生じる場合に有用である場合があるが、コンピュータデバイス100が、フリーハンドライティングフォーマットFT1から構造化されたフォーマットFT2へのテキストブロックBL1の正規化S16に応じて新たなテキスト認識を実施するには、実際には非生産的である。正規化S16に応じた任意のさらなるテキスト認識は、フリーハンドライティングモードFT1で手書きテキスト入力INに実施された最初のテキスト認識S8を汚す、または矛盾するリスクがある。さらに、そのようなさらなるテキスト認識プロセスを実施することは、時間及びリソースを必要とする。正規化の間にデジタルインクに適用される変換関数TFに応じてモデルデータDTをアップデートすることは、時間及びリソースを節約しつつ、デジタルインク、及び関連するデータを、一定かつ一貫した状態のままにすることを可能にする。
Generally speaking, text recognition engines in known computing devices are typically configured to monitor any ink changes or edits (eg, stroke erasures or edits) that occur on handwritten text. Thus, when text normalization is performed on such known computing devices, this tells the text recognition engine that the handwritten text input, once converted to a structured format during normalization, Let it run again to try to recognize possible new content. In other words, normalization of digital ink in known systems leads to discarding previous recognition results and reprocessing the entire ink to obtain new recognition results. Such a responsive text recognition mechanism may be useful where the ink changes result from some form of user editing, for example, in a freehand writing mode, where the
テキストブロックBL1に実施される正規化S16に応じた新たなテキスト認識を引き起こす代わりに、本発明のコンピュータデバイス100は、正規化の間にテキストラインLNに適用される変換関数TFに応じてテキストブロックBL1のモデルデータDTをアップデートするように構成されている。
Instead of invoking a new text recognition depending on the normalization S16 performed on the text block BL1, the
本発明の正規化プロセスのポイントは、所与の最初の認識の結果(すなわち、最初のテキスト認識S8の結果)に関するデジタルインクを操作することである。このため、コンピュータデバイス100は、テキストブロックBL1のデジタルインクを構造化されたフォーマットFT2に変換し、それに応じてドキュメントモデルをアップデートする場合があり、それにより、フリーハンドライティングモードで取得された最初のテキスト認識S8の結果が疑われないようになっている。
The point of the normalization process of the present invention is to manipulate the digital ink on a given initial recognition result (ie, the result of the initial text recognition S8). As such,
特定の実施形態では、正規化ステップS16の間に、各テキストラインLNのモデルデータDTが、S18で取得されたそれぞれの変換関数TFに従ってアップデートされ、一方、それぞれの変換関数TFの適用から生じるあらゆるテキスト認識をブロックする。結果として、コンピュータデバイス100は、ステップS16においてテキストブロックBL1に実施された正規化に応じて、あらゆる新たなテキスト認識を抑制する。このため、認識されたテキストは、デジタルインクが正規化の間に変換される場合であっても、安定したままであり、それにより、認識システム全体の信頼性及び効率を向上させる。
In a particular embodiment, during the normalization step S16, the model data DT of each text line LN are updated according to the respective transformation function TF obtained at S18, while any Block text recognition. As a result,
しかし、(図10に示すように)テキストブロックBL1が構造化されたフォーマットFT2に正規化されると、新たなテキスト認識が、編集のあらゆる次の形態、または正規化されたテキストブロックBL1で後に実施されるインクの変更を反映するように引き起こされる場合があることを理解されたい。たとえば、ユーザが、(たとえば、ストローク、または、ワードWDもしくは文字CHのストロークの部分を消去すること、またはこれを修正することにより)構造化されたモードFT2で第1のテキストラインLN1を編集することを決める場合、コンピュータデバイス100は、最初のテキスト認識S8の結果とは異なる場合があるテキストを認識するように、新たなテキスト認識を実施する場合がある。
However, if the text block BL1 is normalized to a structured format FT2 (as shown in FIG. 10), the new text recognition will be applied to any subsequent form of editing or later in the normalized text block BL1. It should be understood that it may be triggered to reflect the ink changes that are implemented. For example, the user edits the first text line LN1 in structured mode FT2 (e.g. by erasing or modifying the stroke or part of the stroke of the word WD or the character CH). If so, the
したがって、コンピュータデバイス100は、好ましくは、正規化ステップS16の後に実施される編集操作に応じて、新たなテキスト認識を引き起こす。そのようなケースでは、テキスト認識機能は、コンピュータデバイス100においては恒久的にブロックされないが、代わりに、構造化されたフォーマットFT2においてテキストブロックBL1が後に編集されるケースにおいて、新たなコンテンツを認識することを可能にするために、正規化S16が完了すると、アクティブなままに維持される。手書きテキストは、このため、任意の形態の編集など(たとえば、テキストのリフローなど)、さらなる操作及び相互作用に関する正規化の後に、コンピュータデバイス100によってより確実かつ容易に処理される場合がある。
Accordingly, the
さらに、本発明は、ユーザが、フリーハンドライティングモードで手書きテキストを入力することを可能にする。本来、ライン、サイズ、向きの制約(ガイドライン、余白などを含む)は、フリーハンドライティングモードではユーザに課されず、それにより、手書きの様々な複雑な形態が入力される場合があるようになっている。前に記載したように、手書きテキスト入力を構造化されたハンドライティングフォーマットに正規化することにより、手書きテキスト上でコンピュータデバイス100によって編集機能を実施すること(修正、拡縮など)が促進され得る。正規化は、たとえば、コンピュータデバイスによって受領される、ユーザが開始するコマンドから生じるか、コンピュータデバイスによって検出される任意の所定の事象から生じる場合がある。フリーハンドライティングモードが最初に使用されている場合であっても、ユーザは、より構造化され、向上された方式で手書き入力を編集及び操作する場合があり、それにより、ユーザの経験を向上させる。
Additionally, the present invention allows users to enter handwritten text in a freehand writing mode. By nature, line, size, and orientation constraints (including guidelines, margins, etc.) are not imposed on the user in freehand writing mode, thereby allowing various complex forms of handwriting to be input. ing. As previously described, normalizing handwritten text input into a structured handwriting format may facilitate performing editing functions by computing
たとえば図12に示すように、正規化S16が完了すると、コンピュータデバイス100は、編集ステップS28の間に編集操作を実施する場合がある。本実施例では、正規化されたテキストブロックBL1に対し、水平方向にテキストリフローが実施される(垂直なテキストリフローも可能である)。結果として、構造化されたフォーマットFT2におけるテキストブロックBL1の異なるデジタルインクのストロークの相対位置が再配置される。そのような編集操作は、任意の適切なユーザのコマンド(たとえば、入力表面104上でのユーザのジェスチャ)に応じて、ユーザによって引き起こされるか、所定の事象が検出された際にコンピュータデバイス100自体によって引き起こされる場合がある。
For example, as shown in FIG. 12, once normalization S16 is complete,
いくつかの代替的実施態様では、ブロックに書き込まれた機能は、図に書かれた順番とは異なって生じる場合があることに留意されたい。たとえば、関連する機能に応じて、連続して示される2つのブロックは、実際は、実質的に同時に実行される場合があり、または、各ブロックは、ときには逆の順番で実行される場合があり、または、各ブロックは、代替的な順番で実行される場合がある。 Note that in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently or each block may sometimes be executed in the reverse order, depending on the functionality involved; Alternatively, each block may be executed in an alternate order.
本発明が、特定の実施形態において記載されてきたが、当業者の能力の中で、添付の特許請求の範囲の範囲に応じて、多くの変更形態及び実施形態を受け入れることができることが明らかである。具体的には、当業者は、添付の特許請求の範囲の範囲内にある、この文献に記載の様々な実施形態の任意及びすべての組合せ及び変形形態を予期する場合がある。 Although the present invention has been described in specific embodiments, it is evident that many modifications and embodiments within the ability of those skilled in the art are susceptible to the scope of the appended claims. be. Specifically, those skilled in the art may contemplate any and all combinations and variations of the various embodiments described in this document that fall within the scope of the appended claims.
Claims (15)
入力表面(104)でデジタルインク(IN)の複数の入力ストローク(ST)を検出すること(S2)であって、前記入力ストロークが、いずれの手書きの制約も伴わずに、フリーハンドライティングフォーマット(FT1)で入力される、前記検出すること(S2)と、
前記複数の入力ストローク(ST)をディスプレイデバイス(102)に、前記フリーハンドライティングフォーマットで表示すること(S4)と、
テキストまたはテキストではないものとして各入力ストロークを分類すること(S6)であって、前記分類することが、前記フリーハンドライティングフォーマット(FT1)で手書きされた前記入力ストロークから、手書きテキストの少なくとも1つのテキストブロック(BL1)をテキストとして検出することを含む、前記分類すること(S6)と、
前記少なくとも1つのテキストブロック(BL1)でテキスト認識を実施すること(S8)であって、前記テキスト認識が、
前記少なくとも1つのテキストブロックから手書きテキストのテキストラインを抽出すること(S10)、ならびに、
前記少なくとも1つのテキストブロックの各ストローク(ST)を、前記少なくとも1つのテキストブロックの文字(CH)、ワード(WD)、及びテキストライン(LN)と関連付けるモデルデータ(DT)を生成すること(S12)、
を含む、前記実施すること(S8)と、
ドキュメントパターン(200)のラインパターンに従うように、手書きテキストの各テキストライン(LN)を、前記フリーハンドライティングフォーマットから構造化されたハンドライティングフォーマット(FT2)に正規化すること(S16)であって、前記正規化が、各テキストラインに関し、
前記テキストライン(LN)を前記構造化されたハンドライティングフォーマット(FT2)に変換するように、前記テキストラインに関し、それぞれの変換関数(TF)を計算すること(S18)、
前記テキストラインの各ストロークを前記構造化されたハンドライティングフォーマット(FT2)に変換するように、それぞれの前記変換関数(TF)を適用すること(S20)、及び、
それぞれの前記変換関数に基づき、前記テキストラインの前記モデルデータ(DT)をアップデートすること(S22)、
を含む、前記正規化すること(S16)と、
を含む、前記方法。 A method implemented by a computing device (100) for processing handwritten text, comprising:
Detecting (S2) a plurality of input strokes (ST) of digital ink (IN) on an input surface (104), said input strokes being in a freehand writing format (ST) without any handwriting constraints. said detecting (S2), input in FT1);
displaying (S4) the plurality of input strokes (ST) on a display device (102) in the freehand writing format;
classifying (S6) each input stroke as text or non-text, said classifying comprising from said input strokes handwritten in said freehand writing format (FT1) at least one of handwritten text; said classifying (S6) comprising detecting text blocks (BL1) as text;
performing (S8) text recognition on said at least one text block (BL1), said text recognition comprising:
extracting text lines of handwritten text from said at least one text block (S10);
generating model data (DT) associating each stroke (ST) of said at least one text block with a character (CH), a word (WD) and a text line (LN) of said at least one text block (S12); ),
said performing (S8) comprising
normalizing (S16) each text line (LN) of the handwritten text from said freehand writing format to a structured handwriting format (FT2) so as to follow the line pattern of the document pattern (200); , wherein the normalization is for each text line,
calculating (S18) respective transformation functions (TF) for said text lines so as to transform said text lines (LN) into said structured handwriting format (FT2);
applying (S20) each said transformation function (TF) so as to transform each stroke of said text line into said structured handwriting format (FT2);
updating (S22) the model data (DT) of the text lines based on the respective transformation function;
the normalizing (S16) comprising
The above method, comprising
前記モデルデータを前記アップデートすることが、前記少なくとも1つのテキストブロックのアップデートされた前記モデルデータを、前記テキスト認識の間に生成された前記モデルデータと置き換えて記憶すること(S24)をさらに含む、請求項1に記載の方法。 storing the model data (DT) generated during the text recognition;
said updating the model data further comprises storing the updated model data of the at least one text block to replace the model data generated during the text recognition (S24); The method of claim 1.
複数の文字を規定する文字情報(220)であって、各文字が、デジタルインクの少なくとも1つのストローク、及び、前記少なくとも1つのテキストブロックのテキストラインと関連付けられている、前記文字情報(220)と、
複数のワードを規定するワード情報(222)であって、各ワードが、前記文字情報によって規定された少なくとも1つの文字と関連付けられている、前記ワード情報(222)と、
前記少なくとも1つのテキストブロックの各テキストラインを規定するライン情報(224)であって、各テキストラインが、前記ワード情報によって規定された少なくとも1つのワードと関連付けられている、前記ライン情報(224)と、
を含む、請求項1から請求項3のいずれか一項に記載の方法。 said model data (DT) of said at least one text block (BL1) is
Character information (220) defining a plurality of characters, each character being associated with at least one stroke of digital ink and a line of text of said at least one text block. When,
word information (222) defining a plurality of words, each word associated with at least one character defined by said character information;
line information (224) defining each text line of said at least one text block, each text line being associated with at least one word defined by said word information; When,
4. The method of any one of claims 1-3, comprising:
前記テキストラインの原点を示す原点座標と、
前記テキストラインの傾斜を示す傾斜情報と、
前記テキストラインの高さを示す高さ情報と、
を含む、請求項4に記載の方法。 wherein the line information relates to each text line of the at least one text block;
origin coordinates indicating the origin of the text line;
slant information indicating the slant of the text line;
height information indicating the height of the text line;
5. The method of claim 4, comprising:
前記テキストラインの前記原点座標、前記傾斜情報、及び前記高さ情報を含む入力パラメータを判定することを含み、
それぞれの前記変換関数が、前記入力パラメータ及び前記ドキュメントパターンに基づいて計算される、
請求項1から請求項6のいずれか一項に記載の方法。 For each line of text, the normalizing includes:
determining input parameters including the origin coordinates, the tilt information, and the height information of the text line;
each said transformation function is calculated based on said input parameters and said document pattern;
7. A method according to any one of claims 1-6.
表示エリアの余白と、
ライン間の距離と、
のうちの少なくとも1つを規定する、請求項1から請求項7のいずれか一項に記載の方法。 wherein the document pattern is a handwritten constraint to which handwritten text follows;
the margins of the display area,
the distance between the lines and
8. A method according to any one of claims 1 to 7, defining at least one of
平行移動成分(CP1)と、
拡縮成分(CP2)と、
回転成分(CP3)と、
のうちの少なくとも1つを規定する、請求項1から請求項8のいずれか一項に記載の方法。 each transform function being a transform component applied to a respective text line during said normalization;
a translation component (CP1);
a scaling component (CP2);
a rotational component (CP3);
9. A method according to any one of claims 1 to 8, defining at least one of
デジタルインク(IN)の複数のストローク(ST)を検出するための入力表面(104)であって、前記ストロークが、いずれの手書きの制約も伴わずに、フリーハンドライティングフォーマット(FT1)で入力される、前記入力表面(104)と、
前記複数の入力ストロークを前記フリーハンドライティングフォーマットで表示するためのディスプレイデバイス(102)と、
テキストまたはテキストではないものとして各ストロークを分類するための分類器(MD2)であって、前記分類器が、前記フリーハンドライティングフォーマット(FT1)で手書きされた前記入力ストロークから、手書きテキストの少なくとも1つのテキストブロックをテキストとして検出するように構成されている、前記分類器(MD2)と、
前記少なくとも1つのテキストブロックから手書きテキストのテキストラインを抽出するためのライン抽出器(MD4)と、
前記少なくとも1つのテキストブロックの各テキストラインのテキスト認識を実施し、前記少なくとも1つのテキストブロックの各ストロークを、前記少なくとも1つのテキストブロックの文字、ワード、及びテキストラインと関連付けるモデルデータを生成するための認識エンジン(MD6)と、
ドキュメントパターンのラインパターンに従うように、手書きテキストの各テキストラインを、前記フリーハンドライティングフォーマットから構造化されたハンドライティングフォーマット(FT2)に正規化するためのテキストエディタ(MD8)であって、前記テキストエディタが、各テキストラインに関し、
前記テキストラインを前記構造化されたハンドライティングフォーマットに変換するように、前記テキストラインに関し、それぞれの変換関数を計算すること、
前記テキストラインの各ストロークを前記構造化されたハンドライティングフォーマットに変換するように、それぞれの前記変換関数を適用すること、及び、
それぞれの前記変換関数に基づき、前記テキストラインの前記モデルデータをアップデートすること、
を実施するように構成されている、前記テキストエディタ(MD8)と、
を備えている、前記コンピュータデバイス。 A computer device for handwritten text, comprising:
An input surface (104) for detecting multiple strokes (ST) of digital ink (IN), said strokes being input in freehand writing format (FT1) without any handwriting constraints. said input surface (104),
a display device (102) for displaying the plurality of input strokes in the freehand writing format;
a classifier (MD2) for classifying each stroke as text or non-text, said classifier classifying at least one of handwritten text from said input strokes handwritten in said freehand writing format (FT1); said classifier (MD2) configured to detect two text blocks as text;
a line extractor (MD4) for extracting text lines of handwritten text from said at least one text block;
for performing text recognition of each text line of the at least one text block and generating model data associating each stroke of the at least one text block with characters, words and text lines of the at least one text block; a recognition engine (MD6) of
a text editor (MD8) for normalizing each text line of handwritten text from said freehand writing format to structured handwriting format (FT2) to follow a line pattern of a document pattern, said text The editor will, for each line of text,
calculating respective transformation functions for the text lines to transform the text lines into the structured handwriting format;
applying each of the conversion functions to convert each stroke of the text line to the structured handwriting format; and
updating the model data for the text lines based on the respective transformation functions;
said text editor (MD8) configured to implement
The computing device, comprising:
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19181519.0 | 2019-06-20 | ||
EP19181519.0A EP3754537B1 (en) | 2019-06-20 | 2019-06-20 | Processing text handwriting input in a free handwriting mode |
PCT/EP2020/067144 WO2020254600A1 (en) | 2019-06-20 | 2020-06-19 | Processing text handwriting input in a free handwriting mode |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2022537169A true JP2022537169A (en) | 2022-08-24 |
JPWO2020254600A5 JPWO2020254600A5 (en) | 2023-08-04 |
JP7486131B2 JP7486131B2 (en) | 2024-05-17 |
Family
ID=66999758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021574329A Active JP7486131B2 (en) | 2019-06-20 | 2020-06-19 | Processing handwritten text input in freehand writing mode |
Country Status (6)
Country | Link |
---|---|
US (1) | US11687618B2 (en) |
EP (1) | EP3754537B1 (en) |
JP (1) | JP7486131B2 (en) |
KR (1) | KR102576276B1 (en) |
CN (1) | CN114402331A (en) |
WO (1) | WO2020254600A1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2020267498B2 (en) | 2019-05-06 | 2023-04-06 | Apple Inc. | Handwriting entry on an electronic device |
US20210349627A1 (en) | 2020-05-11 | 2021-11-11 | Apple Inc. | Interacting with handwritten content on an electronic device |
CN117724620A (en) * | 2021-04-22 | 2024-03-19 | 广州创知科技有限公司 | Interaction method and interaction panel |
CN115048027A (en) * | 2022-05-06 | 2022-09-13 | 合肥讯飞读写科技有限公司 | Handwriting input method, device, system, electronic equipment and storage medium |
WO2024085460A1 (en) * | 2022-10-19 | 2024-04-25 | 삼성전자주식회사 | Electronic device and method for identifying characters included in image |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5596350A (en) * | 1993-08-02 | 1997-01-21 | Apple Computer, Inc. | System and method of reflowing ink objects |
JP2003288607A (en) * | 2002-01-25 | 2003-10-10 | Xerox Corp | Method and device of digital ink image conversion for use in structured text graphic editor |
JP2016181057A (en) * | 2015-03-23 | 2016-10-13 | 株式会社東芝 | Image processor, image processing method and image processing program |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2749020B2 (en) | 1991-11-14 | 1998-05-13 | 日立ソフトウエアエンジニアリング株式会社 | Diagram recognition system |
DE69428675T2 (en) | 1993-12-30 | 2002-05-08 | Xerox Corp | Apparatus and method for supporting an implicit structuring of free-form lists, overviews, texts, tables and diagrams in an input system and editing system based on hand signals |
US5847712A (en) | 1995-01-03 | 1998-12-08 | University Of Washington | Method and system for generating graphic illustrations according to a stroke texture and a tone |
GB9701793D0 (en) | 1997-01-29 | 1997-03-19 | Gay Geoffrey N W | Means for inputting characters or commands into a computer |
ATE443946T1 (en) | 1999-05-27 | 2009-10-15 | Tegic Communications Inc | KEYBOARD SYSTEM WITH AUTOMATIC CORRECTION |
US7298903B2 (en) | 2001-06-28 | 2007-11-20 | Microsoft Corporation | Method and system for separating text and drawings in digital ink |
US20030215145A1 (en) | 2002-05-14 | 2003-11-20 | Microsoft Corporation | Classification analysis of freeform digital ink input |
CA2390506C (en) | 2002-06-12 | 2013-04-02 | Smart Technologies Inc. | System and method for recognizing connector gestures |
US7218779B2 (en) | 2003-01-21 | 2007-05-15 | Microsoft Corporation | Ink divider and associated application program interface |
AU2003900865A0 (en) * | 2003-02-26 | 2003-03-13 | Silverbrook Research Pty Ltd | Methods, systems and apparatus (NPW010) |
US7218783B2 (en) | 2003-06-13 | 2007-05-15 | Microsoft Corporation | Digital ink annotation process and system for recognizing, anchoring and reflowing digital ink annotations |
US7631001B2 (en) | 2003-08-21 | 2009-12-08 | Microsoft Corporation | Electronic ink processing |
US7616333B2 (en) | 2003-08-21 | 2009-11-10 | Microsoft Corporation | Electronic ink processing and application programming interfaces |
US7324691B2 (en) | 2003-09-24 | 2008-01-29 | Microsoft Corporation | System and method for shape recognition of hand-drawn objects |
US7352902B2 (en) | 2003-09-24 | 2008-04-01 | Microsoft Corporation | System and method for detecting a hand-drawn object in ink input |
US7848573B2 (en) * | 2003-12-03 | 2010-12-07 | Microsoft Corporation | Scaled text replacement of ink |
US20050273761A1 (en) | 2004-06-07 | 2005-12-08 | The Mathworks, Inc. | Freehand system and method for creating, editing, and manipulating block diagrams |
US7496232B2 (en) | 2004-06-23 | 2009-02-24 | Microsoft Corporation | Distinguishing text from non-text in digital ink |
US7394935B2 (en) | 2004-09-21 | 2008-07-01 | Microsoft Corporation | System and method for editing a hand-drawn chart in ink input |
US7440616B2 (en) | 2004-09-21 | 2008-10-21 | Microsoft Corporation | System and method for recognition of a hand-drawn chart in ink input |
US7904810B2 (en) | 2004-09-21 | 2011-03-08 | Microsoft Corporation | System and method for editing a hand-drawn list in ink input |
US7512273B2 (en) | 2004-10-21 | 2009-03-31 | Microsoft Corporation | Digital ink labeling |
US7643687B2 (en) | 2005-03-18 | 2010-01-05 | Microsoft Corporation | Analysis hints |
EP1783593A3 (en) | 2005-10-07 | 2012-12-19 | Sony Corporation | Information processing apparatus with a user interface comprising a touch panel, method and program |
US7657094B2 (en) * | 2005-12-29 | 2010-02-02 | Microsoft Corporation | Handwriting recognition training and synthesis |
US20080195931A1 (en) | 2006-10-27 | 2008-08-14 | Microsoft Corporation | Parsing of ink annotations |
US8014607B2 (en) | 2007-03-23 | 2011-09-06 | Palo Alto Research Center Incorporated | Method and apparatus for creating and editing node-link diagrams in pen computing systems |
US7945097B2 (en) | 2007-05-21 | 2011-05-17 | Microsoft Corporation | Classifying digital ink into a writing or a drawing |
US8116569B2 (en) * | 2007-12-21 | 2012-02-14 | Microsoft Corporation | Inline handwriting recognition and correction |
US20100171754A1 (en) * | 2009-01-07 | 2010-07-08 | Microsoft Corporation | Converting digital ink to shapes and text |
US8718375B2 (en) | 2010-12-03 | 2014-05-06 | Massachusetts Institute Of Technology | Sketch recognition system |
US8782549B2 (en) | 2012-10-05 | 2014-07-15 | Google Inc. | Incremental feature-based gesture-keyboard decoding |
US9171204B2 (en) | 2012-12-12 | 2015-10-27 | Qualcomm Incorporated | Method of perspective correction for devanagari text |
US20140313216A1 (en) | 2013-04-18 | 2014-10-23 | Baldur Andrew Steingrimsson | Recognition and Representation of Image Sketches |
KR102183448B1 (en) | 2013-04-26 | 2020-11-26 | 삼성전자주식회사 | User terminal device and display method thereof |
KR102199193B1 (en) | 2014-01-22 | 2021-01-06 | 삼성전자주식회사 | Operating Method For Handwriting Data and Electronic Device supporting the same |
US20170068868A1 (en) | 2015-09-09 | 2017-03-09 | Google Inc. | Enhancing handwriting recognition using pre-filter classification |
US10346510B2 (en) * | 2015-09-29 | 2019-07-09 | Apple Inc. | Device, method, and graphical user interface for providing handwriting support in document editing |
US10643067B2 (en) * | 2015-10-19 | 2020-05-05 | Myscript | System and method of handwriting recognition in diagrams |
US10976918B2 (en) * | 2015-10-19 | 2021-04-13 | Myscript | System and method of guiding handwriting diagram input |
US10664695B2 (en) * | 2016-10-26 | 2020-05-26 | Myscript | System and method for managing digital ink typesetting |
US10671844B2 (en) * | 2017-06-02 | 2020-06-02 | Apple Inc. | Handwritten text recognition |
-
2019
- 2019-06-20 EP EP19181519.0A patent/EP3754537B1/en active Active
- 2019-12-16 US US16/715,977 patent/US11687618B2/en active Active
-
2020
- 2020-06-19 CN CN202080044782.2A patent/CN114402331A/en active Pending
- 2020-06-19 WO PCT/EP2020/067144 patent/WO2020254600A1/en active Application Filing
- 2020-06-19 JP JP2021574329A patent/JP7486131B2/en active Active
- 2020-06-19 KR KR1020217041936A patent/KR102576276B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5596350A (en) * | 1993-08-02 | 1997-01-21 | Apple Computer, Inc. | System and method of reflowing ink objects |
JP2003288607A (en) * | 2002-01-25 | 2003-10-10 | Xerox Corp | Method and device of digital ink image conversion for use in structured text graphic editor |
JP2016181057A (en) * | 2015-03-23 | 2016-10-13 | 株式会社東芝 | Image processor, image processing method and image processing program |
Also Published As
Publication number | Publication date |
---|---|
EP3754537A1 (en) | 2020-12-23 |
KR20220024146A (en) | 2022-03-03 |
KR102576276B1 (en) | 2023-09-07 |
EP3754537B1 (en) | 2024-05-22 |
US20200401796A1 (en) | 2020-12-24 |
CN114402331A (en) | 2022-04-26 |
JP7486131B2 (en) | 2024-05-17 |
US11687618B2 (en) | 2023-06-27 |
WO2020254600A1 (en) | 2020-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9911052B2 (en) | System and method for superimposed handwriting recognition technology | |
JP7486131B2 (en) | Processing handwritten text input in freehand writing mode | |
US10007859B2 (en) | System and method for superimposed handwriting recognition technology | |
JP7105695B2 (en) | Systems and methods for digital ink interactivity | |
CN114365075B (en) | Method for selecting a graphical object and corresponding device | |
JP7134169B2 (en) | System and method for managing hand-drawn connectors | |
KR102428704B1 (en) | System and method for recognition of handwritten diagram connectors | |
CN108369637B (en) | System and method for beautifying digital ink | |
US11429259B2 (en) | System and method for selecting and editing handwriting input elements | |
KR102310385B1 (en) | System and method for superimposed handwriting recognition technology | |
US20240134507A1 (en) | Modifying digital content including typed and handwritten text | |
WO2023170314A1 (en) | Creating text block sections | |
WO2023170315A1 (en) | Merging text blocks | |
WO2024110354A1 (en) | Setting font size in an unconstrained canvas |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230615 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230726 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20230726 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231108 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240306 |
|
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: 20240402 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240424 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7486131 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |