JP7664897B2 - Recognition processing device, recognition processing program, recognition processing method, and recognition processing system - Google Patents
Recognition processing device, recognition processing program, recognition processing method, and recognition processing system Download PDFInfo
- Publication number
- JP7664897B2 JP7664897B2 JP2022161861A JP2022161861A JP7664897B2 JP 7664897 B2 JP7664897 B2 JP 7664897B2 JP 2022161861 A JP2022161861 A JP 2022161861A JP 2022161861 A JP2022161861 A JP 2022161861A JP 7664897 B2 JP7664897 B2 JP 7664897B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- stroke data
- recognition processing
- character recognition
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Character Discrimination (AREA)
- Character Input (AREA)
Description
この発明は、認識処理装置、認識処理プログラム、認識処理方法、及び認識処理システムに関し、例えば、オンライン手書き文字認識処理に適用し得る。 This invention relates to a recognition processing device, a recognition processing program, a recognition processing method, and a recognition processing system, and can be applied, for example, to online handwritten character recognition processing.
従来、オンライン手書き文字認識処理では、文字入力の際のストローク(筆跡)から特徴量を取得し、取得した特徴量に基づいて機械学習を行って学習モデルを取得し、取得した学習モデルを用いて入力文字の認識を行う手法が提案されている。 Conventionally, a method has been proposed for online handwritten character recognition processing in which features are acquired from the strokes (handwriting) made when characters are input, machine learning is performed based on the acquired features to acquire a learning model, and the acquired learning model is used to recognize the input characters.
上記のようなストロークの特徴量について機械学習を行って、文字認識処理を行う手法としては、特許文献1のような記載技術が存在する。
One technique for performing character recognition processing by performing machine learning on the features of strokes like those described above is described in
特許文献1の記載技術では、各文字について、時系列ごとのストロークの位置(以下、「入力パターン」と呼ぶ)をサンプルとして取得し、サンプルとして取得した入力パターンと標準パターン(標準的な筆跡で入力した場合の入力パターン)との間で特徴点(ストロークを構成する各位置)を対応付け、対応付けられた特徴点間の差分を、文字認識処理に用いる特徴値として取得している。
In the technology described in
そして、特許文献1の記載技術では、学習用に取得された特徴値を教師データとして機械学習を行い、学習モデルを取得する。そして、特許文献1の記載技術では、文字認識処理の際には、サンプルの入力パターンについて、全ての標準パターンと特徴点間の差異を演算して特徴量として取得し、取得した全ての標準パターンとの特徴量を学習モデルに入力して文字認識処理を行う。
The technology described in
しかしながら、特許文献1の記載技術では、学習モデルを得るために好適な標準パターンを文字毎に用意しなければならないので学習モデルの作成コストが高い。また、特許文献1の記載技術では、文字認識処理の際にサンプルの入力パターンと全ての標準パターンとの間の特徴量を取得して認識処理しなければならないので、非常に処理負荷が高い。
However, with the technology described in
特許文献1の記載技術では、文字入力の特徴量について、より多くの情報量を確保する観点から、上記のように標準パターンとの差分を特徴値として用いたが、上記の通り、特許文献1の記載技術では、学習モデルの作成や認識処理に多大なリソース(例えば、作業コストやハードウェア資源等)を必要とする。
In the technology described in
そのため、より効率的にオンライン文字入力の特徴量を得て機械学習することができる認識処理装置、認識処理プログラム、認識処理方法、及び認識処理システムが望まれている。 Therefore, there is a demand for a recognition processing device, a recognition processing program, a recognition processing method, and a recognition processing system that can obtain features of online character input more efficiently and perform machine learning.
第1の本発明の認識処理装置は、入力文字ごとに電子ペンによるストロークの時系列順の入力パターンを示すものであって前記入力パターンの時系列順の特徴点の位置情報を含む入力ストロークデータを取得し、取得した入力ストロークデータを、固定サンプル数の入力パターンに正規化する正規化処理を行って正規化ストロークデータを取得する正規化手段と、前記正規化手段が正規化した正規化ストロークデータを、前記固定サンプル数の特徴量で表現した入力ベクトルデータに変換する入力ベクトルデータ取得手段と、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータを用いて機械学習した学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータについて文字認識処理を行う文字認識処理手段とを有し、前記正規化手段が行う正規化処理には、前記入力ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が所定の閾値以上となるように特徴点を間引いて中間ストロークデータを取得する第1の正規化処理工程と、前記中間ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が前記閾値以下となるように特徴点を補間したデータを取得する第2の正規化処理工程とが含まれることを特徴とする。 A first recognition processing device of the present invention has a normalization means for acquiring input stroke data indicating an input pattern of strokes made by an electronic pen in chronological order for each input character, the input stroke data including position information of feature points in chronological order of the input pattern, and performing a normalization process for normalizing the acquired input stroke data to an input pattern with a fixed number of samples to acquire normalized stroke data, an input vector data acquisition means for converting the normalized stroke data normalized by the normalization means into input vector data expressed by feature amounts of the fixed number of samples, and a character recognition processing means for performing a character recognition process on the input vector data acquired by the input vector data acquisition means using a learning model trained by machine learning using the input vector data acquired by the input vector data acquisition means, and the normalization process performed by the normalization means includes a first normalization processing step for acquiring intermediate stroke data by thinning out feature points for the input stroke data such that an interval between all adjacent feature points in chronological order is equal to or greater than a predetermined threshold, and a second normalization processing step for acquiring data obtained by interpolating feature points for the intermediate stroke data such that an interval between all adjacent feature points in chronological order is equal to or less than the threshold .
第2の本発明の認識処理プログラムは、コンピュータを、入力文字ごとに電子ペンによるストロークの時系列順の入力パターンを示すものであって前記入力パターンの時系列順の特徴点の位置情報を含む入力ストロークデータを取得し、取得した入力ストロークデータを、固定サンプル数の入力パターンに正規化する正規化処理を行って正規化ストロークデータを取得する正規化手段と、前記正規化手段が正規化した正規化ストロークデータを、前記固定サンプル数の特徴量で表現した入力ベクトルデータに変換する入力ベクトルデータ取得手段と、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータを用いて機械学習した学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータについて文字認識処理を行う文字認識処理手段として機能させ、前記正規化手段が行う正規化処理には、前記入力ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が所定の閾値以上となるように特徴点を間引いて中間ストロークデータを取得する第1の正規化処理工程と、前記中間ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が前記閾値以下となるように特徴点を補間したデータを取得する第2の正規化処理工程とが含まれることを特徴とする。 A second recognition processing program of the present invention causes a computer to function as: a normalization means for acquiring input stroke data indicating an input pattern of strokes made by an electronic pen in chronological order for each input character, the input pattern including position information of feature points in chronological order, and performing a normalization process for normalizing the acquired input stroke data into an input pattern with a fixed number of samples to acquire normalized stroke data; an input vector data acquisition means for converting the normalized stroke data normalized by the normalization means into input vector data expressed by feature amounts of the fixed number of samples; and a character recognition processing means for performing character recognition processing on the input vector data acquired by the input vector data acquisition means, using a learning model trained by machine learning using the input vector data acquired by the input vector data acquisition means, wherein the normalization process performed by the normalization means includes a first normalization processing step for acquiring intermediate stroke data by thinning out feature points for the input stroke data such that an interval between all adjacent feature points in chronological order is equal to or greater than a predetermined threshold; and a second normalization processing step for acquiring data for the intermediate stroke data by interpolating feature points such that an interval between all adjacent feature points in chronological order is equal to or less than the threshold .
第3の本発明は、認識処理装置が行う認識処理方法において、前記認識処理装置は、正規化手段、入力ベクトルデータ取得手段、文字認識処理手段、及び文字認識結果出力手段を有し、前記正規化手段は、入力文字ごとに電子ペンによるストロークの時系列順の入力パターンを示すものであって前記入力パターンの時系列順の特徴点の位置情報を含む入力ストロークデータを取得し、取得した入力ストロークデータを、固定サンプル数の入力パターンに正規化する正規化処理を行って正規化ストロークデータを取得し、前記入力ベクトルデータ取得手段は、前記正規化手段が正規化した正規化ストロークデータを、前記固定サンプル数の特徴量で表現した入力ベクトルデータに変換し、前記文字認識処理手段は、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータを用いて機械学習した学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータについて文字認識処理を行い、前記正規化手段が行う正規化処理には、前記入力ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が所定の閾値以上となるように特徴点を間引いて中間ストロークデータを取得する第1の正規化処理工程と、前記中間ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が前記閾値以下となるように特徴点を補間したデータを取得する第2の正規化処理工程とが含まれることを特徴とする。 A third aspect of the present invention is a recognition processing method performed by a recognition processing device, the recognition processing device having a normalization means, an input vector data acquisition means, a character recognition processing means, and a character recognition result output means, the normalization means acquires input stroke data indicating an input pattern of strokes made by an electronic pen in chronological order for each input character and including position information of feature points in chronological order of the input pattern, and acquires normalized stroke data by performing a normalization process for normalizing the acquired input stroke data into an input pattern with a fixed number of samples, and the input vector data acquisition means acquires input vector data expressed by feature amounts of the fixed number of samples from the normalized stroke data normalized by the normalization means. the character recognition processing means performs character recognition processing on the input vector data acquired by the input vector data acquisition means using a learning model that has been machine-learned using the input vector data acquired by the input vector data acquisition means, and the normalization processing performed by the normalization means includes a first normalization processing step of acquiring intermediate stroke data by thinning out feature points from the input stroke data such that intervals between all feature points adjacent in chronological order are equal to or greater than a predetermined threshold, and a second normalization processing step of acquiring data by interpolating feature points from the intermediate stroke data such that intervals between all feature points adjacent in chronological order are equal to or less than the threshold.
第4の本発明は、電子ペンと前電子ペンを用いた入力を受けることができるペンタブレットと、ユーザにより前記電子ペンで前記ペンタブレットに書きこまれた文字を認識する認識処理装置とを有する認識システムにおいて、前記認識処理装置として第1の本発明の認識処理装置を適用したことを特徴とする認識システム。 The fourth invention is a recognition system having a pen tablet capable of receiving input using an electronic pen and a front electronic pen, and a recognition processing device that recognizes characters written on the pen tablet by a user with the electronic pen, characterized in that the recognition processing device of the first invention is applied as the recognition processing device.
本発明によれば、より効率的にオンライン文字入力の特徴量を得て機械学習することができる。 The present invention makes it possible to obtain features of online character input more efficiently and perform machine learning.
(A)第1の実施形態
以下、本発明による認識処理装置、認識処理プログラム、認識処理方法、及び認識処理システムの第1の実施形態を、図面を参照しながら詳述する。この実施形態では、情報処理端末を本発明の認識処理装置として構成した例について説明する。
(A) First embodiment Hereinafter, a first embodiment of a recognition processing device, a recognition processing program, a recognition processing method, and a recognition processing system according to the present invention will be described in detail with reference to the drawings. In this embodiment, an example in which an information processing terminal is configured as the recognition processing device of the present invention will be described.
(A-1)第1の実施形態の構成
図1は、第1の実施形態に係る認識処理システム1の全体構成について示したブロック図である。なお、図1において括弧内の符号は、後述する第2の実施形態でのみ用いられる符号である。
(A-1) Configuration of the First Embodiment Fig. 1 is a block diagram showing the overall configuration of a
認識処理システム1は、情報処理端末10、ペンタブレット20及び電子ペン30を有している。ペンタブレット20は、電子ペン30を用いて入力受付が可能な装置である。
The
ペンタブレット20は、ディスプレイパネル21の表面に電子ペン30のペン先31を検知するデバイス(いわゆる、「ポインティングデバイス」)として機能するデバイス)である。また、ディスプレイパネル21には、情報処理端末10から供給される映像信号に基づく映像を出力することも可能である。認識処理システム1では、ディスプレイパネル21にペン先31の軌跡等を表示することで、ユーザからの文字入力の操作を受け付けることが可能となっている。
The
情報処理端末10は、制御部11、映像IF12及びUSBポート13を有している。
The
情報処理端末10は、種々のコンピュータ(例えば、PC等)に、プログラム(実施形態に係る認識処理プログラムを含む)をインストールすることにより構成できる。
The
制御部11は、コンテンツ処理部111、ディスプレイドライバ112、ペンタブレットドライバ113、及び文字認識処理部114を有している。
The
コンテンツ処理部111は、ディスプレイドライバ112及びペンタブレットドライバ113を介して、ペンタブレット20にアクセスし、ペンタブレット20及び電子ペン30を用いた各種のコンテンツ(例えば、ペンタブレット20及び電子ペン30を用いた文字入力を伴う各種操作画面を含むコンテンツ)の処理を行うアプリケーションプログラムである。
The
コンテンツ処理部111は、ディスプレイドライバ112を介して文字入力を伴う操作画面(GUI)を表示し、ペンタブレットドライバ113を介して液晶タブレットで電子ペン30を用いて入力された内容(例えば、電子ペン30がタッチされた部分の座標の情報等)を取得する。コンテンツ処理部111は、ペンタブレットドライバ113を介して、文字入力の際のストロークのデータ(時系列ごとの電子ペン30の座標を含むデータ;以下、「入力ストロークデータ」と呼ぶ)を取得する。この実施形態において、コンテンツ処理部111は、文字認識処理部114に対して、入力ストロークデータを供給する。
The
文字認識処理部114は、入力ストロークデータに基づく文字認識処理を行うものであり、ストロークデータ処理部1141、オンラインAI処理部1142、オフラインAI処理部1143、及び文字認識結果出力部1144を有している。文字認識処理部114は、この実施形態に係る認識処理プログラムに対応する機能を担っている。
The character
ストロークデータ処理部1141は、入力ストロークデータから、オンラインAI処理部1142の処理に適用可能なベクトルデータ(入力ベクトルデータ)と、オフラインAI処理部1143の処理に適用可能な画像データ(以下、「入力画像データ」と呼ぶ)を生成する処理を行うものである。
The stroke
この実施形態では、コンテンツ処理部111から文字認識処理部114に入力ストロークデータ及び入力画像データが供給されるものとして説明するが、文字認識処理部114に入力ストロークデータ及び入力画像データを供給する供給源はこれに限定されないものである。例えば、外部で作成された入力ストロークデータ及び入力画像データを文字認識処理部114に供給して処理するようにしてもよい。
In this embodiment, the input stroke data and input image data are described as being supplied from the
オンラインAI処理部1142は、入力ベクトルデータが供給されると、当該入力ベクトルデータに基づく文字認識処理又は学習処理を行う。文字認識処理部114が学習モードで動作する場合、オンラインAI処理部1142は、入力ベクトルデータと正解ラベル(教師ラベル)のセットを用いて機械学習処理を行って学習モデルを更新する。オンラインAI処理部1142は、入力ベクトルデータが供給されると、当該入力ベクトルデータに基づく文字認識処理又は学習処理を行う。文字認識処理部114が学習モードで動作する場合、オンラインAI処理部1142は、入力ベクトルデータと正解ラベルのセットを用いて機械学習処理を行う。文字認識処理部114が認識処理モードで動作する場合、オンラインAI処理部1142は、入力ベクトルデータに基づいて学習済の学習モデルを用いた文字認識処理を行い、文字認識結果(以下、「オンライン文字認識結果」とも呼ぶ)を出力する。なお、この実施形態では、オンラインAI処理部1142は、オンライン文字認識結果に信頼度のデータを付加するものとする。
When input vector data is supplied, the online
オフラインAI処理部1143は、入力画像データが供給されると、当該入力画像データに基づく文字認識処理又は学習処理を行う。文字認識処理部114が学習モードで動作する場合、オフラインAI処理部1143は、入力画像データと正解ラベルのセットを用いて機械学習処理を行って学習モデルを更新する。オフラインAI処理部1143は、入力画像データが供給されると、当該入力画像データに基づく文字認識処理又は学習処理を行う。文字認識処理部114が学習モードで動作する場合、オフラインAI処理部1143は、入力画像データと正解ラベルのセットを用いて機械学習処理を行う。文字認識処理部114が認識処理モードで動作する場合、オフラインAI処理部1143は、入力画像データに基づいて学習済の学習モデルを用いた文字認識処理を行い、文字認識結果(以下、「オフライン文字認識結果」とも呼ぶ)を出力する。なお、この実施形態では、オフラインAI処理部1143は、オフライン文字認識結果に信頼度のデータを付加するものとする。
When input image data is supplied, the offline
この実施形態において、オンラインAI処理部1142及びオフラインAI処理部1143については、種々の機械学習用のエンジン(AIのプラットフォーム)を用いて構成することができる。したがって、この実施形態では、オンラインAI処理部1142及びオフラインAI処理部1143における機械学習の方法(学習モデルの作成方法)や、作成した学習モデルを用いた認識処理(判定処理)の詳細について説明を省略する。
In this embodiment, the online
文字認識結果出力部1144は、文字認識処理部114が認識処理モードで動作する場合、オンライン文字認識結果と、オフライン文字認識結果とに基づいて最終的な文字認識結果(以下、「出力文字認識結果」とも呼ぶ)を出力する。文字認識結果出力部1144は、オンライン文字認識結果と、オフライン文字認識結果を評価し、その評価結果に基づいていずれかの文字認識結果を出力するようにしてもよい。例えば、文字認識結果出力部1144は、オンライン文字認識結果と、オフライン文字認識結果で、付加された評価値の高い方を採用して出力文字認識結果として出力するようにしてもよい。
When the character
この実施形態において、コンテンツ処理部111は、文字認識処理部114を学習モードで動作させる際に、文字認識処理部114に対して、入力ストロークデータ共に、当該入力ストロークデータに対応する正解ラベル(当該入力ストロークデータに対応する正解文字の識別子)を供給するものとする。また、この実施形態において、コンテンツ処理部111は、文字認識処理部114を認識処理モードで動作させる場合、文字認識処理部114に入力ストロークデータを供給して出力文字認識結果を取得するものとする。
In this embodiment, when the
次に、ストロークデータ処理部1141が取得する入力ストロークデータの構成例について説明する。
Next, we will explain an example of the configuration of input stroke data acquired by the stroke
入力ストロークデータには、ペンタブレット20(ディスプレイパネル21)で認識された時系列ごとの電子ペン30のペン先31の位置に関する情報が含まれている。
The input stroke data includes information regarding the position of the
以下では、ディスプレイパネル21で電子ペン30のペン先31と接触する面(以下、「ディスプレイ接触面」と呼ぶ)と並行する方向を「横方向」と呼び、ディスプレイ接触面と直交する方向を「高さ方向」と呼ぶものとする。また、以下では、ペン先31とディスプレイ接触面との高さ方向に関する状態(ステータス)を「ペン先状態」と呼ぶものとする。第1の実施形態においては、「ペン先状態」という用語は、ペン先31がディスプレイ接触面に接触した状態(以下、「コンタクト状態」と呼ぶ)又はペン先31がディスプレイ接触面に接触していない状態(以下、「非コンタクト状態」と呼ぶ)のいずれかを示すステータスであるものとして説明する。
Hereinafter, the direction parallel to the surface of the
この実施形態の例では、入力ストロークデータには、ペンタブレット20(ディスプレイパネル21)が認識したペン先31の横方向の位置(以下、「サンプル」又は「サンプル位置」と呼ぶ)の情報と、ペンタブレット20(ディスプレイパネル21)が認識したペン先状態(ペン先31の高さ方向の位置)の情報が含まれるものとして説明する。
In this embodiment, the input stroke data is described as including information on the lateral position of the
そして、以下では、図1に示すように、ペンタブレット20(ディスプレイパネル21)の「画面/タッチパネル/ポインティングデバイス」としての水平方向(左右方向)をX軸とし、ペンタブレット20(ディスプレイパネル21)の「画面/タッチパネル/ポインティングデバイス」としての垂直方向(上下方向)をY軸として、入力ストロークデータにおけるサンプル位置の座標系を表すものとする。この実施形態の例では、サンプル位置の座標系は、ペンタブレット20(ディスプレイパネル21)の左上の点を原点(x=0,y=0)とし、下方向を「Y座標が増加する方向(+Y方向)」とし、右方向を「X座標が増加する方向(+X方向)」とする。したがって、以下では、上方向が「Y座標が減少する方向(-Y方向)」となり、左方向が「X座標が減少する方向(-X方向)」となる。なお、以下では、時系列ごとのサンプル位置(サンプル)の軌跡に沿った位置(後述する正規化された領域上の位置を含む)を総称して「特徴点」とも呼ぶものとする。 In the following, as shown in FIG. 1, the horizontal direction (left-right direction) of the pen tablet 20 (display panel 21) as the "screen/touch panel/pointing device" is taken as the X axis, and the vertical direction (up-down direction) of the pen tablet 20 (display panel 21) as the "screen/touch panel/pointing device" is taken as the Y axis, and the coordinate system of the sample position in the input stroke data is expressed. In this embodiment, the coordinate system of the sample position has the upper left point of the pen tablet 20 (display panel 21) as the origin (x=0, y=0), the downward direction is the "direction in which the Y coordinate increases (+Y direction)", and the right direction is the "direction in which the X coordinate increases (+X direction)". Therefore, in the following, the upward direction is the "direction in which the Y coordinate decreases (-Y direction)", and the leftward direction is the "direction in which the X coordinate decreases (-X direction)". In addition, in the following, the positions along the trajectory of the sample positions (samples) for each time series (including positions on the normalized area described later) are collectively referred to as "feature points".
次に、オンラインAI処理部1142による文字認識処理の概要について説明する。
Next, we will provide an overview of the character recognition process performed by the online
まず、オンラインAI処理部1142で処理される入力ベクトルデータの構成例について説明する。
First, we will explain an example of the configuration of input vector data processed by the online
この実施形態において、入力ベクトルデータは、1文字あたり、時系列ごとのN個の特徴点のそれぞれに対応するM次元のベクトルにより構成されるデータ(すなわち、M列×N行の行列式により表されるデータ)であるものとする。 In this embodiment, the input vector data is data composed of M-dimensional vectors corresponding to each of the N feature points for each time series per character (i.e., data represented by a matrix of M columns by N rows).
この実施形態において、入力ベクトルデータは、各特徴点について、現在の特徴点の座標と、次の時系列の特徴点への移動量(ベクトル)と、ペン先状態を示す情報が含まれているものとする。 In this embodiment, the input vector data includes, for each feature point, the coordinates of the current feature point, the amount of movement (vector) to the next feature point in the time series, and information indicating the pen tip state.
この実施形態の例では、入力ベクトルデータは、図2に示す7次元のパラメータ(M=7)により表現されるベクトルデータであるものとする。 In this embodiment, the input vector data is assumed to be vector data represented by seven-dimensional parameters (M=7) as shown in FIG. 2.
この実施形態の例では、入力ベクトルデータにおいて、各時系列の特徴点に対応するベクトルには、当該特徴点のX座標(以下、「VX」と表す)、当該特徴点のY座標(以下、「VY」と表す)、当該特徴点から次の時系列の特徴点への右向きの移動量(以下、「VR」と表す)、当該特徴点から次の時系列の特徴点への上方向の移動量(以下、「VU」と表す)、当該特徴点から次の時系列の特徴点への左方向の移動量(以下、「VL」と表す)、当該特徴点から次の時系列の特徴点への下方向きの移動量(以下、「VD」と表す)、当該特徴点と次の時系列との間の区間におけるペン先状態を示す値(以下、「VT」と表す)が含まれるものとして説明する。なお、VTは、電子ペン30のペン先31がディスプレイ接触面に接触している状態(以下、「コンタクト状態」と呼ぶ)を表す「1」と、接触していない状態(以下、「非コンタクト状態」と呼ぶ)を表す「0」のいずれかの値が設定されるものとする。従って時系列t(tは、1~Nのいずれかの整数)の特徴量をV(t)とすると、V(t)は以下の(1)式のように示すことができる。そして、1文字分の入力ベクトルデータをZとすると、Zは以下の(2)式のような行列式で示すことができる。
(t)={VX(t),VY(t),VR(t),VU(t),VL(t),VD(t),VT(t)} …(1)
(t)={VX(t), VY(t), VR(t), VU(t), VL(t), VD(t), VT(t)} …(1)
上記の通り、特徴量V(t)のうち、VR(t)、VU(t)、VL(t)、及びVD(t)は、次の時系列t+1の特徴点への移動量を表している。この実施形態では、入力ベクトルデータを表す座標系において、左上を原点(X=0、Y=0)とし、右方向にXの値が増加し、下方向にYの値が増加するものとしている。そうすると、Y軸上でYが増加する方向(+Y方向)が「下方向」となりYが減少する方向(-Y方向)が「上方向」となる。また、X軸上でXが増加する方向(+X方向)が「右方向」となりXが減少する方向(-X方向)が「左方向」となる。この場合、VR(t)は、+X方向への移動量を表すため、VX(t+1)>VX(t)の場合VR(t)=VX(t+1)-VX(t)となり、VX(t+1)≦VX(t)の場合にVR(t)=0となる。また、VL(t)は、-X方向への移動量を表すため、VX(t+1)<VX(t)の場合VL(t)=VX(t)-VX(t+1)となり、VX(t+1)≧VX(t)の場合にVL(t)=0となる。さらに、VU(t)は、-Y方向への移動量を表すため、VY(t+1)<VY(t)の場合VU(t)=VY(t)-VY(t+1)となり、VY(t+1)≧VY(t)の場合にVU(t)=0となる。さらにまた、VD(t)は、+Y方向への移動量を表すため、VY(t+1)>VY(t)の場合VD(t)=VY(t+1)-VY(t)となり、VY(t+1)≦VY(t)の場合にVD(t)=0となる。 As described above, among the feature quantity V(t), VR(t), VU(t), VL(t), and VD(t) represent the amount of movement to the feature point of the next time series t+1. In this embodiment, in the coordinate system representing the input vector data, the upper left corner is the origin (X=0, Y=0), and the X value increases to the right and the Y value increases to the bottom. In this case, the direction in which Y increases on the Y axis (+Y direction) is the "downward direction" and the direction in which Y decreases (-Y direction) is the "upward direction". Also, the direction in which X increases on the X axis (+X direction) is the "rightward direction" and the direction in which X decreases (-X direction) is the "leftward direction". In this case, VR(t) represents the amount of movement in the +X direction, so if VX(t+1)>VX(t), then VR(t)=VX(t+1)-VX(t), and if VX(t+1)≦VX(t), then VR(t)=0. Furthermore, since VL(t) represents the amount of movement in the -X direction, if VX(t+1)<VX(t), then VL(t)=VX(t)-VX(t+1), and if VX(t+1)≧VX(t), then VL(t)=0. Furthermore, since VU(t) represents the amount of movement in the -Y direction, if VY(t+1)<VY(t), then VU(t)=VY(t)-VY(t+1), and if VY(t+1)≧VY(t), then VU(t)=0. Furthermore, since VD(t) represents the amount of movement in the +Y direction, if VY(t+1)>VY(t), then VD(t)=VY(t+1)-VY(t), and if VY(t+1)≦VY(t), then VD(t)=0.
なお、この実施形態では、入力ベクトルデータにおいて、移動量(動き量)を上下左右の4次元(VR(t),VU(t),VL(t),VD(t))で表しているが、負の値をとっても支障がない場合は水平方向と垂直方向の2次元で表すようにしてもよい。入力ベクトルデータにおいて、移動量を上下左右の4次元(VR(t),VU(t),VL(t),VD(t))で表すことで、同じ軸上の変化でも別個の項目の特徴量として表現可能とし、機械学習の精度に影響を与えること(すなわち、AIによる判定処理の調整)ができる。例えば、この実施形態において、入力ベクトルデータの移動量を2次元(x(t)、Y(t))又は4次元(VR(t),VU(t),VL(t),VD(t))のいずれかで表現可能とし、オペレータの操作等により認識精度の良い方を用いた処理を行うようにしてもよい。 In this embodiment, the amount of movement (amount of movement) in the input vector data is expressed in four dimensions (VR(t), VU(t), VL(t), VD(t)), but it may be expressed in two dimensions (horizontal and vertical) if negative values are acceptable. By expressing the amount of movement in the input vector data in four dimensions (VR(t), VU(t), VL(t), VD(t)), even changes on the same axis can be expressed as features of separate items, which can affect the accuracy of machine learning (i.e., adjustment of the judgment process by AI). For example, in this embodiment, the amount of movement of the input vector data can be expressed in either two dimensions (x(t), Y(t)) or four dimensions (VR(t), VU(t), VL(t), VD(t)), and the processing using the one with better recognition accuracy can be performed by the operator's operation, etc.
次に、入力ベクトルデータを構成する時刻tの特徴量V(t)の具体例について図3、図4を用いて説明する。 Next, a specific example of the feature quantity V(t) at time t that constitutes the input vector data will be described with reference to Figures 3 and 4.
図3は、t=1、t=2の時点の特徴点をそれぞれP1、P2とした場合における特徴量V(1)について表した図である。また、図3では、P1の座標を(X,Y)=(1,2)、P2の座標を(X,Y)=(2,1)としている。 Figure 3 shows the feature quantity V(1) when the feature points at time t = 1 and t = 2 are P1 and P2, respectively. In Figure 3, the coordinates of P1 are (X, Y) = (1, 2), and the coordinates of P2 are (X, Y) = (2, 1).
そうすると、特徴量V(1)は、以下の(3)式のように示すことができる。
V(1)={VX(1),VY(1),VR(1),VU(1),VL(1),VD(1),VT(1)}
={1,2,1,1,0,0,1}…(3)
Then, the feature amount V(1) can be expressed as the following equation (3).
V(1)={VX(1), VY(1), VR(1), VU(1), VL(1), VD(1), VT(1)}
={1,2,1,1,0,0,1}...(3)
図4は、t=1、t=2、t=3、t=4の時点の特徴点をそれぞれP1、P2、P3、P4とした場合における特徴量V(1)、V(2)、V(3)について表した図である。また、図4では、P1の座標を(X,Y)=(1,3)、P2の座標を(X,Y)=(3,1)、P3の座標を(X,Y)=(1,1)、P4の座標を(X,Y)=(3,3)としている。なお、図4では、P2とP3の区間が非コンタクト状態の区間であるものとしている。 Figure 4 shows feature quantities V(1), V(2), and V(3) when feature points at times t=1, t=2, t=3, and t=4 are P1, P2, P3, and P4, respectively. In addition, in Figure 4, the coordinates of P1 are (X,Y)=(1,3), the coordinates of P2 are (X,Y)=(3,1), the coordinates of P3 are (X,Y)=(1,1), and the coordinates of P4 are (X,Y)=(3,3). In Figure 4, the section between P2 and P3 is considered to be a section in a non-contact state.
そうすると、特徴量V(1)、V(2)、V(3)は、それぞれ以下の(4)式~(6)式のように示すことができる。
V(1)={VX(1),VY(1),VR(1),VU(1),VL(1),VD(1),VT(1)}
={1,3,2,1,0,0,1}…(4)
V(2)={VX(2),VY(2),VR(2),VU(2),VL(2),VD(2),VT(2)}
={3,1,0,0,2,0,0}…(5)
V(3)={VX(3),VY(3),VR(3),VU(3),VL(3),VD(3),VT(3)}
={1,1,2,0,0,2,1}…(6)
Then, the feature amounts V(1), V(2), and V(3) can be expressed by the following equations (4) to (6), respectively.
V(1)={VX(1), VY(1), VR(1), VU(1), VL(1), VD(1), VT(1)}
={1,3,2,1,0,0,1}...(4)
V(2)={VX(2), VY(2), VR(2), VU(2), VL(2), VD(2), VT(2)}
={3,1,0,0,2,0,0}...(5)
V(3)={VX(3), VY(3), VR(3), VU(3), VL(3), VD(3), VT(3)}
={1,1,2,0,0,2,1}...(6)
(A-2)第1の実施形態の動作
次に、以上のような構成を有するこの実施形態の認識処理システム1の動作(実施形態に係る認識処理方法の各手順)を説明する。
(A-2) Operation of the First Embodiment Next, the operation of the
まず、認識処理システム1において、ユーザからペンタブレット20(ディスプレイパネル21)と電子ペン30を用いて文字入力を受け付ける処理の例について説明する。
First, we will explain an example of a process in which the
上記の通り、この実施形態の認識処理システム1では、学習モード及び認識処理モードのいずれの動作モードで動作する場合でも、コンテンツ処理部111は、ペンタブレット20(ディスプレイパネル21)にユーザから文字入力(電子ペン30を用いた文字入力)を受け付けるための操作画面(以下、「文字入力画面」と呼ぶ)を表示するものとする。
As described above, in the
文字入力画面としては種々の構成の操作画面を適用することができるが、例えば、図5に示すような操作画面を適用するようにしてもよい。 Operation screens of various configurations can be used as the character input screen, but for example, an operation screen such as that shown in FIG. 5 may be used.
図5に示す文字入力画面には、文字入力を受け付けることができる矩形の領域(以下、「文字入力フィールド」と呼ぶ)が配置されている。図5では、1つの文字入力フィールドF101が配置されている。図5では、文字入力フィールドに対して、ユーザに文字入力を要求する文字(学習処理や判定処理において正解ラベルとして機能する文字)を付記している。例えば、文字入力フィールドF101には、それぞれ「十」という文字(漢字)が付記されている。これにより、認識処理システム1では、ユーザから、各文字入力フィールドの枠内に、付記された文字の入力(電子ペン30を用いた入力)を受け付けることができる。図5では、文字入力フィールドF101の枠内に、「十」という文字が電子ペン30で手書きされた状態について示している。なお、図5では、説明を簡易にするため、1画面に1つの文字入力フィールドを配置する例について示しているが、このような文字入力フィールドのレイアウトについては限定されないものであり、複数の文字入力フィールドを配置してもよいことは当然である。
In the character input screen shown in FIG. 5, rectangular areas (hereinafter referred to as "character input fields") that can accept character input are arranged. In FIG. 5, one character input field F101 is arranged. In FIG. 5, characters that request the user to input characters (characters that function as correct labels in learning processing and judgment processing) are added to the character input field. For example, the character "10" (kanji) is added to each character input field F101. As a result, the
この実施形態の文字入力画面では、説明を簡易とするため、1文字入力に対して1つの領域(文字入力フィールド)を設定する例を用いて説明するが、認識処理システム1において1つの領域に対して複数の文字入力を受け付けて文字単位の切り出しを行うようにしてもよい。
For ease of explanation, the character input screen of this embodiment will be described using an example in which one area (character input field) is set for one character input, but the
この実施形態において、コンテンツ処理部111は、例えば、図5に示すような文字入力画面をユーザに提示し、ユーザから電子ペン30を用いた書き込み入力を受け付け、その入力にもとづいて入力文字に対応する入力ストロークデータを取得することができるものとする。
In this embodiment, the
この実施形態では、コンテンツ処理部111は、ペン先状態が非コンタクト状態からコンタクト状態となったときの座標と、ペン先状態がコンタクト状態となっている間の所定期間(例えば、0.1秒程度)ごとの座標と、ペン先状態がコンタクト状態から非コンタクト状態となったときの座標をサンプル位置として取得するものとして説明する。
In this embodiment, the
図6は、図5のように文字入力フィールドF101の枠内に、「十」という文字が電子ペン30で手書きされた場合に、ストロークデータ処理部1141で取得される入力ストロークデータの構成例について示した図である。
Figure 6 shows an example of the configuration of input stroke data acquired by the stroke
図6(a)は、「十」という文字が電子ペン30で手書きされた場合のサンプル点を描画した図となっている。図6(a)に示す座標系では、Xの範囲が0~1000、Yの範囲が0~10000となっている。すなわち、図6に示す入力ストロークデータの画像は1000画素×1000画素の画像となっている。
Figure 6(a) is a diagram depicting sample points when the character "10" is handwritten with the
図6(b)は、図6(b)に示す入力ストロークデータの時系列番号ごとの値を示した図である。時系列番号は、時系列の順序を示す値であり、値が小さいほど前の時系列(時刻)を表している。図6(b)に示すように、入力ストロークデータでは、時系列番号ごとにX座標とY座標の値と、ペン先状態の値の情報が記録されている。 Figure 6(b) is a diagram showing the values for each time series number of the input stroke data shown in Figure 6(b). The time series number is a value that indicates the order of the time series, with smaller values representing earlier time series (times). As shown in Figure 6(b), the input stroke data records information on the X and Y coordinate values and pen tip state value for each time series number.
このとき、ストロークデータ処理部1141は、入力ストロークデータの各サンプル(特徴点)のデータを1画ごと(1スロークごと)に分けて管理する。例えば、入力ストロークデータにおいて、ペン先状態が「0」のデータを境界とすることで、1画(1ストローク)ごとのサンプル位置のリストを得ることができる。例えば、図6(a)において、先頭から14個目にペン先状態が「0」のサンプル位置が表れるため、時系列が1~13のサンプル位置が1画目であり、時系列が14~23のサンプル位置が2画目となる。
At this time, the stroke
次に、ストロークデータ処理部1141が、入力ストロークデータからオンライン文字認識処理用の入力ベクトルデータを生成する処理について図7のフローチャートを用いて説明する。
Next, the process in which the stroke
まず、コンテンツ処理部111からストロークデータ処理部1141に1文字分の入力ストロークデータが供給され保持されたものとする(S101)。
First, input stroke data for one character is supplied from the
次に、ストロークデータ処理部1141は、入力ストロークデータについて所定の解像度の領域(以下、「正規化領域」と呼ぶ)に丁度おさまるように正規化したデータ(以下、「第1の正規化ストロークデータ」と呼ぶ)を取得する(S102)。
Next, the stroke
図8は、ストロークデータ処理部1141が、オンライン文字認識処理用の入力ベクトルデータを正規化して第1の正規化ストロークデータを取得する処理について示した図である。
Figure 8 shows the process in which the stroke
図8(a)は、図6に示す入力ストロークデータのうち、サンプル位置(特徴点)が描画された領域のみを切り出した画像となっている。 Figure 8 (a) is an image that has been cut out from the input stroke data shown in Figure 6, showing only the area where the sample positions (feature points) are drawn.
図6に示す入力ストロークデータにおいて、Xの最大値が635で、Xの最小値が427である。また、図6に示す入力ストロークデータにおいて、Yの最大値が658で、Yの最小値が388である。したがって、図8(a)の画像(切り出された画像)は、208画素×270画素(X方向の画素数が208で、Y方向の画素数が270)の画像となる。 In the input stroke data shown in FIG. 6, the maximum X value is 635 and the minimum X value is 427. Also, in the input stroke data shown in FIG. 6, the maximum Y value is 658 and the minimum Y value is 388. Therefore, the image in FIG. 8(a) (the cropped image) is an image of 208 pixels x 270 pixels (the number of pixels in the X direction is 208, and the number of pixels in the Y direction is 270).
図8(b)は、図8(a)の画像を100画素×100画素の正規化領域(縦横比が1:1の領域)に変換した画像を示している。 Figure 8 (b) shows the image of Figure 8 (a) converted into a normalized region of 100 pixels x 100 pixels (a region with an aspect ratio of 1:1).
そして、図8(c)は、図8(b)の正規化領域の画像の各特徴点(各画素)に対応するデータ(第1の正規化ストロークデータ)を示す図となっている。 Figure 8 (c) is a diagram showing data (first normalized stroke data) corresponding to each feature point (each pixel) of the image in the normalized area of Figure 8 (b).
図8(b)、図8(c)に示すように、ストロークデータ処理部1141は、入力ストロークデータを、100画素×100画素の正規化領域に正規化する際に、上下左右の端に2画素の余白を設けるものとする。すなわち、ストロークデータ処理部1141は、実質的に入力ストロークデータを、96画素×96画素の領域に正規化する処理を行うことになる。図8の例では、ストロークデータ処理部1141は、入力ストロークデータの画像(208画素×270画素の画像)を96画素×96画素の画像(縦横比が1:1の画像)に変換する解像度変換処理を行った後における各特徴点の座標を取得することで、図8(c)に示す第1の正規化ストロークデータを得ることができる。このとき、ストロークデータ処理部1141が行う解像度変換処理の具体的な手法については、種々の画像処理手法を適用することができるので、具体的な処理の過程については説明を省略する。
As shown in FIG. 8B and FIG. 8C, when the stroke
次に、ストロークデータ処理部1141は、第1の正規化ストロークデータから、各特徴点で、隣接する特徴点との間が所定以上となるように特徴点を間引く処理を行う(S103)。
Next, the stroke
例えば、時系列tの特徴点とその次の時系列t+1の特徴点に基づいて以下の(7)式を計算し、成立する場合には、その2つの特徴点の間の距離は所定以下であると判断するようにしてもよい。 For example, the following formula (7) may be calculated based on the feature points of time series t and the feature points of the next time series t+1, and if the formula holds, it may be determined that the distance between the two feature points is equal to or smaller than a predetermined value.
(7)式において、時系列tの特徴点のx座標をx(t)、y座標をy(t)とし、時系列tの次の時系列t+1の特徴点のx座標をx(t+1)、y(t+1)としている。
また、(7)式において、SIZEは画像全体の水平方向及び又は垂直方向の解像度(ここでは100)が適用されるものとする。ここでは、特徴点を間引くか否か判定するための閾値((7)式の右辺)としてSIZE/100=100/10=10を適用するものとして説明するが、この閾値は任意に設計した値を設定(例えば、実験等により好適な値を探索して設定)するようにしてもよい。
In equation (7), the x-coordinate of a feature point in time series t is x(t) and the y-coordinate is y(t), and the x-coordinate of a feature point in the time series t+1 that follows time series t is x(t+1) and y(t+1).
In addition, in formula (7), SIZE is the horizontal and/or vertical resolution of the entire image (here, 100). Here, a description will be given of applying SIZE/100=100/10=10 as the threshold value (right side of formula (7)) for determining whether or not to thin out feature points, but this threshold value may be set to an arbitrarily designed value (for example, a suitable value may be searched for and set through experiments, etc.).
ここでは、ストロークデータ処理部1141は、各時系列の特徴点について以下の(7)式を当てはめて計算し、成立する場合に次の時系列の特徴点を間引くものとする。ストロークデータ処理部1141は、時系列t+1の特徴点を間引いた場合、その次の時系列の特徴点を時系列t+1として再度以下の(7)式を当てはめて計算して成立する場合間引く処理を繰り返すようにしてもよい。
Here, the stroke
また、ストロークデータ処理部1141は、画ごとに間引きの処理を行う。つまり、ストロークデータ処理部1141は、画ごとに、全ての時系列の特徴点について以下の(7)式が成立しない状態となるまで(全ての特徴点の間の距離が所定以上となるめで)、間引きの処理を繰返し行うようにしてもよい。例えば、ストロークデータ処理部1141は、図8(c)に示す第1の正規化ストロークデータのうち、1画目のデータ(時系列番号1~13のデータ)を抜き出して上記の間引きの処理を行った後、2画目のデータ(時系列番号14~22のデータ)を抜き出して上記の間引きの処理を行うようにしてもよい。
{x(t+1)-x(t)}2+{y(t+1)-y(t)}2>SIZE/10 …(7)
The stroke
{x(t+1)-x(t)} 2 +{y(t+1)-y(t)} 2 >SIZE/10...(7)
図9は、図8(b)、図8(c)に示す第1の正規化ストロークデータから、上記の処理により特徴点を間引いた状態について示した図である。 Figure 9 shows the state after feature points have been thinned out from the first normalized stroke data shown in Figures 8(b) and 8(c) using the above process.
電子ペン30を用いた文字入力の場合、非コンタクト状態からコンタクト状態となったときに、電子ペン30のペン先31がディスプレイパネル21上ですべる等して密集した特徴点が発生するが、この密集した特徴点は文字の形態を構成するものでないため、文字認識用のデータとしてはノイズとなる。そのため、ストロークデータ処理部1141では、入力ストロークデータについて上記のような間引き処理を行うことにより、ノイズを除去して学習精度及び認識精度を向上させている。
When inputting characters using the
図9(a)は、間引き処理後の第1の正規化ストロークデータを示した画像である。図9(b)は、間引き処理後の第1の正規化ストロークデータを示している。 Figure 9(a) is an image showing the first normalized stroke data after the thinning process. Figure 9(b) shows the first normalized stroke data after the thinning process.
図9に示す第1の正規化ストロークデータでは、間引き処理前の22個から16個まで特徴点が間引かれている。なお、図9に示すように、ストロークデータ処理部1141は、第1の正規化ストロークデータから特徴点を間引く際に、時系列番号に抜けがないように降りなおすものとする。
In the first normalized stroke data shown in FIG. 9, the feature points have been thinned from 22 before the thinning process to 16. As shown in FIG. 9, when the stroke
そして、図9に示す正規化ストロークデータでは、時系列番号1~9の特徴点が1画目の特徴点であり、時系列番号10~16の特徴点が2画目の特徴点となっている。ストロークデータ処理部1141は、間引きの前後において、各画の特徴点のリストを管理しているものとする。
In the normalized stroke data shown in FIG. 9, the feature points with
次に、ストロークデータ処理部1141は、間引きした第1の正規化ストロークデータに基づき、非コンタクト状態の区間(各画の間の区間)も含めて、各特徴点間の距離が所定以下となるように特徴点を補間する処理(以下、「特徴点補間処理」とも呼ぶ)を行ったデータ(以下、「第2の正規化ストロークデータ」と呼ぶ)を生成する(S104)。
Next, the stroke
例えば、時系列tの特徴点とその次の時系列t+1の特徴点に基づいて以下の(8)式を計算し、成立する場合には、その2つの特徴点の間の位置(例えば、中間位置)に新たな特徴点(2つの特徴点の間の時系列の特徴点)を補間(追加)するようにしてもよい。
{x(t+1)-x(t)}2+{y(t+1)-y(t)}2>SIZE/10 …(8)
For example, the following formula (8) may be calculated based on a feature point of a time series t and a feature point of the next time series t+1. If the formula is satisfied, a new feature point (a feature point in a time series between two feature points) may be interpolated (added) to a position between the two feature points (e.g., an intermediate position).
{x(t+1)-x(t)} 2 +{y(t+1)-y(t)} 2 >SIZE/10...(8)
ここでは、サンプル位置を間引くか否か判定するための閾値((8)式の右辺)としてSIZE/100=100/10=10を適用するものとして説明するが、この閾値は任意に設計した値を設定(例えば、実験等により好適な値を探索して設定)するようにしてもよい。 Here, we will explain how to apply SIZE/100 = 100/10 = 10 as the threshold value (right side of equation (8)) for determining whether or not to thin out sample positions, but this threshold value may be set to an arbitrarily designed value (for example, by searching for and setting a suitable value through experiments, etc.).
ここでは、ストロークデータ処理部1141は、各時系列のサンプル位置について(8)式を当てはめて計算し、成立する場合に次の時系列との間に新たな特徴点を補間するものとする。
Here, the stroke
この場合新たに追加する特徴点のx座標を「{x(t+1)+x(t)}/2」(つまりx(t+1)とx(t)の平均値)とし、y座標を「{y(t+1)+y(t)}/2」(つまりy(t+1)とy(t)の平均値)とするようにしてもよい。 In this case, the x coordinate of the newly added feature point may be set to "{x(t+1)+x(t)}/2" (i.e., the average value of x(t+1) and x(t)), and the y coordinate may be set to "{y(t+1)+y(t)}/2" (i.e., the average value of y(t+1) and y(t)).
ストロークデータ処理部1141は、画ごとに全ての時系列のサンプル位置について(8)式が成立しない状態となるまで、特徴点補間処理を再帰的に繰返し行う。例えば、ストロークデータ処理部1141は、時系列tの特徴点と時系列t+1の特徴点との間に新たな特徴点を補間した場合、追加した特徴点の時系列をt+1として再度(8)式を当てはめて計算して、成立する場合新たな特徴点を補間する処理を繰り返すようにしてもよい。
The stroke
例えば、ストロークデータ処理部1141は、図8(c)に示す第1の正規化ストロークデータのうち、1画目のデータ(時系列番号1~13のデータ)を抜き出して上記の特徴点補間処理を行い、さらに2画目のデータ(時系列番号14~22のデータ)を抜き出して上記の特徴点補間処理を行う。
For example, the stroke
そして、ストロークデータ処理部1141は、画と画の間についても上記の特徴点補間処理を行って、所定間隔ごとの特徴点で埋める処理を行う。例えば、ストロークデータ処理部1141は、1画目の最後の時系列の特徴点と2画目の最初の時系列の特徴点との間に、上記の特徴点補間処理を行うことにより、1画目の末尾と2画目の先頭との間を所定間隔の特徴点で埋める。つまり、ストロークデータ処理部1141は、1画目の末尾と2画目の先頭との間を一つの画として特徴点の追加処理を行うことになる。
The stroke
さらに、ストロークデータ処理部1141は、それぞれの特徴点に対してペン先状態の項目の情報を付与する。具体的には、ストロークデータ処理部1141は、コンタクト状態の特徴点(各画に属する特徴点)のペン先情報にコンタクト状態を表す「1」を付与し、非コンタクト状態(画の間の区間の特徴点)のペン先情報に非コンタクト状態を表す「0」を付与する。
The stroke
図10は、図9に示す間引きされた第1の正規化ストロークデータに対して、上記の特徴点補間処理を行い、第2の正規化ストロークデータを取得する処理について示した図である。 Figure 10 shows the process of performing the above-mentioned feature point interpolation process on the thinned first normalized stroke data shown in Figure 9 to obtain second normalized stroke data.
図10では、1画目として時系列番号1~40の特徴点が設定され、2画目として時系列番号63~102の特徴点が設定されている。そして、図10では、1画目と2画目の間の時系列番号41~62の特徴点が非コンタクト状態の区間として設定されている。
In FIG. 10, feature points with
次に、ストロークデータ処理部1141は、第2の正規化ストロークデータから、N+1個の特徴点を抽出したデータ(以下、「第3の正規化ストロークデータ」と呼ぶ)を生成する(S105)。
Next, the stroke
ここでは、第2の正規化ストロークデータの特徴点の数を「C」と表すものとする。 Here, the number of feature points in the second normalized stroke data is represented as "C".
ストロークデータ処理部1141は、C>N+1の場合、第2の正規化ストロークデータからN+1個の特徴点を抽出(選択)して第3の正規化ストロークデータを生成する。
また、ストロークデータ処理部1141は、N+1>Cの場合、第2の正規化ストロークデータの一部又は全部の特徴点について複数回選択することで、N+1個の特徴点のデータを抽出し、第3の正規化ストロークデータを生成する。第3の正規化ストロークデータでは、可能な限り各特徴点の間の距離の偏りが少ないことが望ましい。ストロークデータ処理部1141において、第2の正規化ストロークデータからN+1個の特徴点を抽出する方式については限定されないものであるが、例えば以下のような処理を行うことで、第3の正規化ストロークデータにおける各特徴点間の距離の偏りを低減することができる。
If C>N+1, the stroke
Furthermore, when N+1>C, the stroke
ここでは、ストロークデータ処理部1141は、第3の正規化ストロークデータのi番目の特徴点(iは1~Nのいずれかの整数)として、第2の正規化ストロークデータのD(i)番目の時系列の特徴点を選択するものとする。D(i)としては、例えば以下の(9)式を適用することができる。つまり、D(i)は、C/(N+1)にiをかけたものから小数点以下を切り捨てた整数となる。
D(i)=[{C/(N+1)}*(i―1)]+1 …(9)
Here, the stroke
D(i)=[{C/(N+1)}*(i-1)]+1...(9)
図11は、図10に示す第2の正規化ストロークデータからN+1個の特徴点を抽出した結果得られる第3の正規化ストロークデータの例について示した図である。 Figure 11 shows an example of third normalized stroke data obtained by extracting N+1 feature points from the second normalized stroke data shown in Figure 10.
図12は、図11に示す第3の正規化ストロークデータを画像の形式で表した図である。 Figure 12 shows the third normalized stroke data shown in Figure 11 in the form of an image.
例えば、図10に示す第2の正規化ストロークデータは102個の特徴点から構成されているので、ここから(9)式を用いて101個を抽出することになる。例えば、D(1)=1、D(2)=2、・・・、D(99)=99、D(100)=100、D(101)=102となるので、第2の正規化ストロークデータのうち101番目の特徴点のみ選択(抽出)されないこと(スキップされること)になる。 For example, the second normalized stroke data shown in FIG. 10 is composed of 102 feature points, so 101 are extracted from it using formula (9). For example, D(1) = 1, D(2) = 2, ..., D(99) = 99, D(100) = 100, D(101) = 102, so only the 101st feature point of the second normalized stroke data is not selected (extracted) (skipped).
次に、N+1<Cの場合の例について説明する。仮にC=30とすると、D(1)=1、D(2)=1、D(2)=1、D(3)=1、D(4)=2、・・・、D(99)=29、D(100)=29、D(101)=30のようになる。 Next, we will explain an example where N+1<C. If C=30, then D(1)=1, D(2)=1, D(2)=1, D(3)=1, D(4)=2, ..., D(99)=29, D(100)=29, D(101)=30.
以上のように(9)式を用いることで、効率的に第3の正規化ストロークデータのi番目の特徴点を、第2の正規化ストロークデータからピックアップすることができる。 By using equation (9) as described above, it is possible to efficiently pick up the i-th feature point of the third normalized stroke data from the second normalized stroke data.
次に、ストロークデータ処理部1141は、第2の正規化ストロークデータについて、入力ベクトルデータに変換して取得する(S105)。
Next, the stroke
ストロークデータ処理部1141は、第2の正規化ストロークデータを構成する各時系列のX座標、Y座標、及びペン先状態を、それぞれ各時系列のVX、VY、VTに設定する。そして、ストロークデータ処理部1141は、上記の通り、VX(t)、VX(t+1)、VY(t)、及びVY(t+1)に基づいて、VR(t)、VU(t)、VL(t)、VD(t)を得ることができる。これにより、ストロークデータ処理部1141は、V(1)~V(100)を得ることができる。
The stroke
図13は、図11に示す第2の正規化ストロークデータに基づいて取得された入力ベクトルデータの例について示している。 Figure 13 shows an example of input vector data obtained based on the second normalized stroke data shown in Figure 11.
次に、ストロークデータ処理部1141が、入力ストロークデータからオフライン文字認識処理用の入力画像データを生成する処理について図14のフローチャートを用いて説明する。
Next, the process in which the stroke
まず、ストロークデータ処理部1141が、1文字分の入力ストロークデータを保持したものとする(S201)。
First, the stroke
次に、ストロークデータ処理部1141は、入力ストロークデータについて所定の解像度の正規化領域に丁度おさまるように正規化したデータ(以下、「第4の正規化ストロークデータ」と呼ぶ)を取得する(S202)。
Next, the stroke
図15は、ストロークデータ処理部1141が、オンライン文字認識処理用の入力ベクトルデータを生成する過程の正規化処理について示した図である。
Figure 15 shows the normalization process performed by the stroke
図15(a)は、図6に示す入力ストロークデータのうち、特徴点(サンプル位置)が描画される領域のみを切り出した画像となっている。 Figure 15 (a) is an image that has been cut out from the input stroke data shown in Figure 6, showing only the area where the feature points (sample positions) are drawn.
図15(b)は、図15(a)の画像を64画素×64画素の正規化領域(縦横比が1:1の領域)に変換した画像を示している。 Figure 15(b) shows the image of Figure 15(a) converted into a normalized region of 64 pixels x 64 pixels (region with an aspect ratio of 1:1).
そして、図15(c)は、図15(b)の正規化領域の画像の各特徴点(各画素)に対応する正規化ストロークデータ(第4の正規化ストロークデータ)を示す図となっている。 Figure 15(c) is a diagram showing normalized stroke data (fourth normalized stroke data) corresponding to each feature point (each pixel) of the image in the normalized area of Figure 15(b).
図15(b)、図15(c)に示すように、ストロークデータ処理部1141は、入力ストロークデータを、64画素×64画素の正規化領域に正規化する際に、上下左右の端に2画素の余白を設けるものとする。すなわち、ストロークデータ処理部1141は、実質的に入力ストロークデータを、60画素×60画素の領域に正規化する処理を行うことになる。図15の例では、ストロークデータ処理部1141は、入力ストロークデータの画像(208画素×270画素の画像)を60画素×60画素の画像(縦横比が1:1の画像)に変換する解像度変換処理を行った後における各特徴点の座標を取得することで、図15(c)に示す第4の正規化ストロークデータを得ることができる。このとき、ストロークデータ処理部1141が行う解像度変換処理の具体的な手法については、種々の画像処理手法を適用することができるので、具体的な処理の過程については説明を省略する。
As shown in FIG. 15(b) and FIG. 15(c), when the stroke
次に、ストロークデータ処理部1141は、第4の正規化ストロークデータから、各特徴点で、隣接する特徴点との間が所定以上となるように特徴点を間引く処理を行う(S203)。
Next, the stroke
ストロークデータ処理部1141が、第4の正規化ストロークデータから特徴点を間引く処理については、上述の第1の正規化ストロークデータから特徴点を間引く処理とほぼ同様の処理を適用するようにしてもよい。例えば、ストロークデータ処理部1141は、画ごとに、全ての時系列の特徴点について(7)式が成立しない状態となるまで(全ての特徴点の間の距離が所定以上となるめで)、間引きの処理を繰返し行うようにしてもよい。このとき、ストロークデータ処理部1141は、(7)式を適用する際のSIZEを第4の正規化ストロークデータの解像度と同じく64に設定することが望ましい。
The stroke
次に、ストロークデータ処理部1141は、特徴点の間引きを行った後の第4の正規化ストロークデータに基づいて、入力画像データを取得する(S204)。
Next, the stroke
例えば、ストロークデータ処理部1141は、64画素×64画素の画像領域に、間引き処理を行った後の第4の正規化ストロークデータから各画の特徴点のデータを取得し、上記の画像領域で各画について特徴点間を結ぶ線を描画することで入力画像データを取得するようにしてもよい。
For example, the stroke
図16は、図15に示す第4の正規化ストロークデータに基づいて得られる入力画像データの画像について示した図である。 Figure 16 shows an image of the input image data obtained based on the fourth normalized stroke data shown in Figure 15.
次に、文字認識処理部114が学習モードで動作する場合の処理について、図17を用いて説明する。
Next, the processing performed when the character
ここでは、文字認識処理部114が学習モードで動作しているときに、コンテンツ処理部111から文字認識処理部114に、学習用の入力ストロークデータ(1文字分の入力ストロークデータ)と、当該入力ストロークデータの文字に対応する正解ラベルのセットが供給されたものとする。
Here, it is assumed that when the character
まず、ストロークデータ処理部1141は、供給された入力ストロークデータに基づいて入力ベクトルデータと入力画像データを生成し、それぞれオンラインAI処理部1142とオフラインAI処理部1143に供給する(S301)。
First, the stroke
学習モードで動作している文字認識処理部114のオンラインAI処理部1142では、供給された入力ベクトルデータと正解ラベルに基づいて学習処理が行われる(S302)。
In the online
また、学習モードで動作している文字認識処理部114のオフラインAI処理部1143では、供給された入力画像データと正解ラベルに基づいて学習処理が行われる(S303)。
In addition, in the offline
以上のように、文字認識処理部114では、コンテンツ処理部111から学習用のデータが供給される度に、当該学習用データセットを用いた学習処理が行われる。
As described above, in the character
次に、文字認識処理部114が認識処理モードで動作する場合の処理について、図18を用いて説明する。
Next, the processing performed when the character
ここでは、文字認識処理部114が文字認識モードで動作しているときに、コンテンツ処理部111から文字認識処理部114に、学習用の入力ストロークデータ(1文字分の入力ストロークデータ)が供給されたものとする。
Here, it is assumed that when the character
まず、ストロークデータ処理部1141は、供給された入力ストロークデータに基づいて入力ベクトルデータと入力画像データを生成し、それぞれオンラインAI処理部1142とオフラインAI処理部1143に供給する(S401)。
First, the stroke
文字認識モードで動作している文字認識処理部114のオンラインAI処理部1142は、供給された入力ベクトルデータに基づいて、保持した学習モデルを用いた文字判定処理を行い、その判定結果(オンライン判定結果)について信頼度と共に文字認識結果出力部1144に供給する(S402)。
The online
文字認識モードで動作している文字認識処理部114のオフラインAI処理部1143は、供給された入力画像データに基づいて、保持した学習モデルを用いた文字判定処理を行い、その判定結果(オフライン判定結果)について信頼度と共に文字認識結果出力部1144に供給する(S403)。
The offline
次に、文字認識結果出力部1144は、オンライン判定結果とオフライン判定結果の信頼度を比較して、信頼度の大きい方の判定結果を選択し(S404)、出力する(S405)。
Next, the character recognition
以上のように、文字認識処理部114では、コンテンツ処理部111から供給される入力ストロークデータが供給される度に、判定結果を出力する。
As described above, the character
(A-3)第1の実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
(A-3) Advantages of the First Embodiment According to this embodiment, the following advantages can be achieved.
(A-3-1)まず、発明者が、認識処理システム1の文字認識処理部114を実際に構築して、学習処理及び文字認識処理を行った場合における文字認識精度(判定結果の正解率)について実験(以下、「本実験」と呼ぶ)を行ったので、本実験の内容及び結果について以下に記す。
(A-3-1) First, the inventor actually constructed the character
本実験では、「カタカナ」、「ひらがな」、及び「JIS第1水準の漢字」の文字(計3107種類の文字)をサンプルの書体(以下、「サンプル書体」と呼ぶ)として学習処理及び認識処理を行った。本実験では、サンプル書体1文字あたり160サンプルの入力ストロークデータ(人間が電子ペン30を用いてペンタブレット20に入力した際の入力ストロークデータ)と正解ラベルを用意して、学習モードで動作する文字認識処理部114に供給した。これにより、各サンプル書体の各サンプルについて上記の図17のフローチャートの処理が行われ、オンラインAI処理部1142及びオフラインAI処理部1143でそれぞれ学習モデルが取得される。
In this experiment, learning and recognition processes were performed using "katakana," "hiragana," and "
そして、本実験では、上記の文字認識処理部114で上記の学習処理が完了した後の認識精度を確認するために、サンプル書体1文字あたり160サンプルの入力ストロークデータと正解ラベルを用意して、認識処理モードで動作する文字認識処理部114に供給した。これにより、各サンプル書体の各サンプルについて上記の図18のフローチャートの認識処理が行われた。このとき、発明者は、オンライ判定結果とオフライン判定結果のそれぞれ単独の正解率と、文字認識結果出力部1144から出力される判定結果(オンライン判定結果とオフライン判定結果を総合的に判断した結果)の正解率を確認した。本実験の結果、オンライン判定結果単独の正解率は約94%であり、オフライン判定結果単独の正解率は約90%であった。そして、文字認識結果出力部1144から出力される判定結果は約98%であった。つまり、オンライン判定結果とオフライン判定結果の両方を考慮して最終的な判定結果を出力する方が認識精度は高いことがわかった。
In this experiment, in order to confirm the recognition accuracy after the learning process is completed in the character
(A-3-2)第1の実施形態の情報処理端末10(文字認識処理部114)では、オンライン文字認識の学習処理及び文字認識処理で用いられる入力ベクトルデータについて、全てN個の特徴点となるように正規化して処理している。これにより、第1の実施形態の情報処理端末10(文字認識処理部114)では、画数等に拘わらず、全ての文字について固定長の入力ベクトルデータを生成して処理できる。一般的に、ニューラルネットワークを用いた機械学習処理では、固定長のデータ入力を行うことが望ましいためである。
可変長の入力層に対応したAIエンジンを使用することや、最も長いデータ長に合わせた固定長の入力層を備えるニューラルネットワークで構成(固定長の入力層を実質的に可変長で使用)することも考えられるが、固定長の入出力で完結させる場合と比較して処理効率や認識精度が不安定となるおそれがある。
(A-3-2) In the information processing terminal 10 (character recognition processing unit 114) of the first embodiment, input vector data used in the online character recognition learning process and character recognition process is normalized and processed so that all of the input vector data has N feature points. This allows the information processing terminal 10 (character recognition processing unit 114) of the first embodiment to generate and process fixed-length input vector data for all characters, regardless of the number of strokes, etc. This is because, in general, in machine learning processes using neural networks, it is desirable to input fixed-length data.
It is possible to use an AI engine that supports variable-length input layers, or to configure a neural network with a fixed-length input layer that matches the longest data length (effectively using a fixed-length input layer with variable length), but there is a risk that processing efficiency and recognition accuracy will be unstable compared to when the process is completed with fixed-length input and output.
(A-3-3)第1の実施形態の情報処理端末10(文字認識処理部114)では、入力ベクトルデータを構成する特徴量として、座標(VX、VY)だけでなく、動きベクトル(VR、VU、VL、VD)と電子ペン30のペン先の状態(コンタクト状態又は非コンタクト状態)に関するパラメータについても導入している。これにより、第1の実施形態の情報処理端末10(文字認識処理部114)では、電子ペン30のペン先が非コンタクト状態の間のストロークの情報も含めて特徴量として取得している。また、第1の実施形態の情報処理端末10(文字認識処理部114)では、特許文献1の記載技術のように予め文字ごとに標準パターンを用意しておくことや、文字認識の際に全ての標準パターンとの特徴点の対応付けの処理等が不要である。以上のように、第1の実施形態の情報処理端末10(文字認識処理部114)では、文字入力の際のストロークについて取得する情報量を増やしつつ効率的な文字認識処理を行うことができる。
(A-3-3) In the information processing terminal 10 (character recognition processing unit 114) of the first embodiment, not only coordinates (VX, VY) but also parameters related to the motion vector (VR, VU, VL, VD) and the state of the tip of the electronic pen 30 (contact state or non-contact state) are introduced as feature quantities constituting the input vector data. As a result, in the information processing terminal 10 (character recognition processing unit 114) of the first embodiment, information on strokes while the tip of the
(B-1)第2の実施形態
以下、本発明による認識処理装置、認識処理プログラム、認識処理方法、及び認識処理システムの第2の実施形態を、図面を参照しながら詳述する。この実施形態では、情報処理端末を本発明の認識処理装置として構成した例について説明する。
(B-1) Second embodiment Hereinafter, a second embodiment of the recognition processing device, the recognition processing program, the recognition processing method, and the recognition processing system according to the present invention will be described in detail with reference to the drawings. In this embodiment, an example in which an information processing terminal is configured as the recognition processing device of the present invention will be described.
第2の実施形態に係る文字も、図1を用いて示すことができる。なお、図1において括弧内の符号は、第2の実施形態でのみ用いられる符号である。 The characters according to the second embodiment can also be shown using FIG. 1. Note that the symbols in parentheses in FIG. 1 are symbols used only in the second embodiment.
以下、第2の実施形態の文字について第1の実施形態との差異を説明する。 The following explains the differences between the characters in the second embodiment and the first embodiment.
第2の実施形態の認識処理システム1Aでは、情報処理端末10が情報処理端末10Aに置き換わっている点で、第1の実施形態と異なっている。また、第2の実施形態の情報処理端末10Aでは、制御部11が制御部11Aに置き換わっている。さらに、第2の実施形態の制御部11Aでは、コンテンツ処理部111と文字認識処理部114が、それぞれコンテンツ処理部111Aと文字認識処理部114Aに置き換わっている点で第1の実施形態と異なっている。さらにまた、第2の実施形態の文字認識処理部114Aでは、ストロークデータ処理部1141がストロークデータ処理部1141Aに置き換わっている点で第1の実施形態と異なっている。
The recognition processing system 1A of the second embodiment differs from the first embodiment in that the
ところで、第1の実施形態では、電子ペン30のペン先状態は、電子ペン30のペン先31がペンタブレット20のディスプレイパネル21に接触しているコンタクト状態と、電子ペン30のペン先31がペンタブレット20のディスプレイパネル21に接触していない非コンタクト状態のいずれかであると説明したが、ペンタブレット20と電子ペン30に適用するデバイスの組合せによっては、非コンタクト状態でも電子ペン30のペン先31の横方向の位置を追跡可能なものが存在する。例えば、ワコム(商標登録)社製のペンタブレットとスタイラスペンの組合せを適用する場合、スタイラスペンが非コンタクト状態であっても、ペン先の高さが所定以下であればペンタブレットにおいてペン先の位置(横方向の位置)を追跡することができる。
In the first embodiment, the pen tip state of the
そこで、この実施形態においては、ペンタブレット20において、電子ペン30のペン先31が非コンタクト状態であっても、ペン先31の高さが所定以下であればペン先31の横方向の位置(座標)を検出可能な構成であるものとして説明する。そして第2の実施形態では、電子ペン30のペン先状態が非コンタクト状態であり、かつ、ペンタブレット20でペン先31の横方向の位置を追跡可能である場合、その状態(ペン先状態)を「ホバー状態」と呼ぶものとする。また、第2の実施形態では、電子ペン30のペン先状態が非コンタクト状態であり、かつ、ペンタブレット20でペン先31の横方向の位置が追跡できない場合、その状態(ペン先状態)を「ロス状態」と呼ぶものとする。
Therefore, in this embodiment, the
図19、図20は、ユーザが電子ペン30を用いてペンタブレット20に、画数として2画である漢字(例えば、「八」等)を描いた場合における時系列ごとのペン先31の高さ及びペン先状態を示したタイミングチャートである。
Figures 19 and 20 are timing charts showing the height of the
図19では横軸を時刻tとし、縦軸を電子ペン30のペン先31の高さ(時系列ごとの高さ)を示している。図19では、時刻t0~t21の各時刻のペン先31の位置を楔形(下側に先端を向けた楔型)のシンボルの先端の位置で表している。ここでは、時刻t0~t21は、それぞれペンタブレット20において電子ペン30(ペン先31)に対する座標等の検知(サンプリング)を行うタイミングを示しているものとして説明する。
In Figure 19, the horizontal axis represents time t, and the vertical axis represents the height of the
また、図19では、ペン先31がコンタクト状態となっている時刻のシンボルを黒色としており、ペン先31がホバー状態となっている時刻のシンボルにハッチ(斜線)を付しており、ペン先31がロス状態となっている時刻のシンボルの輪郭を破線としている。
In addition, in FIG. 19, the symbols of the times when the
図19において、時刻t0~t4は、1画目を描くことを示しており、電子ペン30のペン先31がコンタクト状態となっている。コンタクト状態の間は、ペンタブレット20においてセンサにより、電子ペン30(ペン先31)の座標及び筆圧が取得される。
In FIG. 19, times t0 to t4 indicate drawing the first stroke, and the
図19において、時刻t5~t7は、1画目を描き終わって電子ペン30のペン先31がホバー状態となっている。上述の通り、ワコム社製のペンタブレット等ではスタイラスペンがペンタブレットのパネルから一定距離浮いた状態でも座標を取得すること、及びスタイラスペンの存在を検出することができる。ホバー状態の場合、ワコム社製のペンタブレットでは、筆圧値として「0」(つまりホバーである値が示される)が取得されることになる。
In FIG. 19, from time t5 to t7, the first stroke is drawn and the
図19において、時刻t8~t11では、ユーザが電子ペン30のペン先31をさらに、ペンタブレット20から離し、電子ペン30(ペン先31)がロス状態となっている。
ロス状態の間は、ペンタブレット20において、電子ペン30(ペン先31)の座標を検知することはできない。
In FIG. 19, from time t8 to time t11, the user further removes the
During the loss state, the
図19において、時刻t12~t13では、ユーザが2画目を描くために、再び電子ペン30(ペン先31)をペンタブレット20に近づけたためホバー状態となっている。そして、続く時刻t14~t19では、ユーザが2画目を書き始めるため、電子ペン30(ペン先31)がペンタブレット20に接触し、コンタクト状態となっている。
In FIG. 19, from time t12 to t13, the user again brings the electronic pen 30 (pen tip 31) close to the
図20の例では、タイミングt8~t12がロス状態ではなくホバー状態になっていること以外は図19の例と同様である。 The example in Figure 20 is the same as the example in Figure 19, except that timings t8 to t12 are in a hover state rather than a loss state.
図21は、図19のタイミングチャートに示す各サンプル(特徴点)におけるペン先状態の集計結果について示している。図21に示すように、図19の例では、20サンプル分の時間が経過する間に、ロス状態の期間(時刻t8~t11)を除いて16個のサンプル(電子ペン30の座標)が得られている。また、図21に示すように、図19の例では、得られた16個のサンプルのうち、コンタクト状態のサンプルが11個で、ホバー状態のサンプルが5個となっている。 Figure 21 shows the tally of the pen tip state at each sample (characteristic point) shown in the timing chart of Figure 19. As shown in Figure 21, in the example of Figure 19, 16 samples (coordinates of the electronic pen 30) are obtained over the course of 20 samples, excluding the period of the loss state (times t8 to t11). Also, as shown in Figure 21, in the example of Figure 19, of the 16 samples obtained, 11 are samples in the contact state and 5 are samples in the hover state.
図22は、図19のタイミングチャートに示す各サンプル(特徴点)を示した図である。図22では、ユーザが漢字の「八」を描いた場合の図となっている。 Figure 22 shows each sample (feature point) shown in the timing chart of Figure 19. Figure 22 shows the case where the user draws the kanji character "八".
図22では、コンタクト状態の特徴点を円形(○)のシンボルで示し、ホバー状態の特徴点を三角形(△)のシンボルで示し、ロス状態の位置を四角形(□)のシンボルで示している。なお、ロス状態の場合、ペンタブレット20で特徴点の座標を取得することはできないが、図22では、仮に座標(ペン先31の横方向の位置)が取得できたとした場合の位置を四角形のシンボルで図示している。また、以下では、t0~t20の各特徴点のx座標をx0~x20、y座標をy0~y20と表す。
In Figure 22, feature points in the contact state are indicated by circular (○) symbols, feature points in the hover state are indicated by triangular (△) symbols, and positions in the loss state are indicated by rectangular (□) symbols. Note that in the case of a loss state, the coordinates of feature points cannot be acquired by the
以上のように、第2の実施形態のペンタブレット20では、電子ペン30について、コンタクト状態、ホバー状態、ロス状態のいずれかを検知することが可能となっているものとする。
As described above, the
第1の実施形態の情報処理端末10(制御部11)では、コンタクト状態のサンプル(座標)のみで構成された入力ストロークデータを正規化してオンラインAI処理部1142用の入力ベクトルデータを生成していた。これに対して、第2の実施形態の情報処理端末10A(制御部11A)では、オンラインAI処理部1142向けの入力ストロークデータにおいて、コンタクト状態、ホバー状態、及びロス状態の3つのステータスを反映可能である点で、第2の実施形態と異なっている。なお、第2の実施形態において、オフラインAI処理部1143向けの入力ストロークデータの構成及び正規化の処理については第1の実施形態と同様の処理を適用できるため、ここでは説明を省略する。
In the information processing terminal 10 (control unit 11) of the first embodiment, input stroke data consisting only of contact state samples (coordinates) was normalized to generate input vector data for the online
次に、第2の実施形態におけるオンラインAI処理部1142向けの入力ストロークデータの構成及び正規化の方法の例について説明する。第2の実施形態では、オンラインAI処理部1142向けの入力ストロークデータの構成及び正規化方法として、例えば、以下の5つ方法が挙げられる。
Next, examples of methods for configuring and normalizing input stroke data for the online
[第1の正規化方法]
第1の正規化方法では、コンタクト状態のみの特徴点(座標)のみを用いて入力ストロークデータを構成して正規化し、N+1個の特徴点に正規化する。すなわち、第1の正規化方法では、上記の図19、図21の例でいうと、t0~t4及びt14~t19の計9サンプルの特徴点を用いて入力ストロークデータを表現することになる。この場合、N=100で正規化する場合を想定すると、入力ストロークデータの特徴点を約11倍にアップサンプリングすることになる。第1の正規化方法では、第1の実施形態と同様に、入力ストロークデータについて画(ペン先状態がコンタクト状態の区間)ごとに処理(特徴点の間引き処理及び補間処理)して正規化することにより入力ベクトルデータを得ることができる。
[First normalization method]
In the first normalization method, input stroke data is constructed using only the feature points (coordinates) of the contact state, and normalized to N+1 feature points. That is, in the example of Fig. 19 and Fig. 21, the input stroke data is expressed using a total of nine sample feature points from t0 to t4 and t14 to t19. In this case, assuming that normalization is performed with N=100, the feature points of the input stroke data are upsampled by about 11 times. In the first normalization method, as in the first embodiment, the input stroke data is processed (thinning out and interpolating feature points) for each stroke (section in which the pen tip state is in contact) and normalized to obtain input vector data.
[第2の正規化方法]
第2の正規化方法では、コンタクト状態のサンプル(特徴点)にホバー状態のサンプルの一部(例えば、1サンプル分のみ)を抽出して加えた入力ストロークデータを構成して正規化する。第2の正規化方法では、例えば、ホバー状態のサンプルのうち、ロス状態の期間の前又は後のいずれかのタイミングのサンプル(例えば、図19の例における時刻t7又はt12のサンプル)を抽出して入力ストロークデータに加えるようにしてもよいし、ロス状態の期間の前後両方のサンプル(例えば、図19の例における時刻t7とt12のサンプル)を抽出して入力ストロークデータに加えるようにしてもよい。
[Second normalization method]
In the second normalization method, input stroke data is constructed by extracting and adding a portion (e.g., only one sample) of the hover state samples to the contact state samples (feature points), and normalized. In the second normalization method, for example, from the hover state samples, a sample at either the timing before or after the period of the loss state (e.g., the sample at time t7 or t12 in the example of FIG. 19) may be extracted and added to the input stroke data, or samples both before and after the period of the loss state (e.g., the samples at times t7 and t12 in the example of FIG. 19) may be extracted and added to the input stroke data.
図23は、図19のタイミングチャートに示す各サンプル(特徴点)について、第2の正規化方法を適用した場合における入力ストロークデータの例について示した図である。
図23では、コンタクト状態のサンプルに、ロス状態の期間の前後両方のサンプル(時刻t7とt12のサンプル)を追加することで入力ストロークデータを構成した例について示している。図23では、ペン先状態の項目でホバー状態を「0」で表している。
FIG. 23 is a diagram showing an example of input stroke data when the second normalization method is applied to each sample (feature point) shown in the timing chart of FIG.
23 shows an example of input stroke data constructed by adding samples from both before and after the period of the loss state (samples at times t7 and t12) to the contact state sample. In FIG. 23, the hover state is represented by "0" in the pen tip state item.
ストロークデータ処理部1141Aでは、第2の正規化方法が適用される場合、画の間(コンタクト状態区間の間)の区間(ホバー状態及びロス状態により構成される1つの区間)についても、画(コンタクト状態の区間)と同様に正規化する処理を行って入力ベクトルデータを取得するようにしてもよい。例えば、図23のような入力ストロークデータであった場合、ストロークデータ処理部1141Aは、1画目の最後の特徴点と、2画目の最初の特徴点との間の区間について1つの画と同様の正規化処理を行うようにしてもよい。
When the second normalization method is applied, the stroke
ストロークデータ処理部1141Aでは、第2の正規化方法が適用される場合、非コンタクト状態の期間(ホバー状態及びロス状態の期間)又は、当該非コンタクト状態の期間の直前もしくは直後に特徴点を補間する場合、入力ベクトルデータにおいてそれらの特徴点のペン先状態を「0」とするものとする。
When the stroke
[第3の正規化方法]
第3の正規化方法では、コンタクト状態のサンプルに全てのホバー状態のサンプルを加えた入力ストロークデータを構成して正規化する。例えば、図19、図21の例では、コンタクト状態又はホバー状態の16個のサンプルを入力ストロークデータに含めるようにしてもよい。
[Third normalization method]
In the third normalization method, the input stroke data is normalized by constructing the input stroke data by adding all the hover state samples to the contact state samples. For example, in the examples of Figures 19 and 21, 16 samples of the contact state or the hover state may be included in the input stroke data.
ストロークデータ処理部1141Aでは、第3の正規化方法が適用される場合、画の間(コンタクト状態区間の間)の区間(ホバー状態及びロス状態により構成される1つの区間)についても、画(コンタクト状態の区間)と同様に正規化する処理を行って入力ベクトルデータを取得するようにしてもよい。
When the stroke
図24は、図19のタイミングチャートに示す各特徴点について、第3の正規化方法を適用した場合における入力ストロークデータの例について示した図である。図24では、ホバー状態におけるペン先状態を「0」としている。 Figure 24 shows an example of input stroke data when the third normalization method is applied to each feature point shown in the timing chart of Figure 19. In Figure 24, the pen tip state in the hover state is set to "0".
ストロークデータ処理部1141Aでは、第2の正規化方法が適用される場合、画の間(コンタクト状態区間の間)の区間(ホバー状態及びロス状態により構成される1つの区間)についても、画(コンタクト状態の区間)と同様に正規化する処理を行って入力ベクトルデータを取得するようにしてもよい。例えば、図23のような入力ストロークデータであった場合、ストロークデータ処理部1141Aは、1画目の最後の特徴点と、2画目の最初の特徴点との間の区間について1つの画と同様の正規化処理を行うようにしてもよい。
When the second normalization method is applied, the stroke
第3の正規化方法では、ホバー状態の期間及びホバー状態の期間の前後に特徴点を補間する場合、入力ベクトルデータにおいてそれらの特徴点のペン先状態を「0」とするものとする。ストロークデータ処理部1141Aでは、第3の正規化方法が適用される場合、非コンタクト状態の期間(ホバー状態及びロス状態の期間)又は、当該非コンタクト状態の期間の直前もしくは直後に特徴点を補間する場合、入力ベクトルデータにおいてそれらの特徴点のペン先状態を「0」とするものとする。
In the third normalization method, when feature points are interpolated during a hover state period and before and after a hover state period, the pen tip state of those feature points is set to "0" in the input vector data. In the stroke
[第4の正規化方法]
第4の正規化方法では、全てのサンプル(コンタクト状態、ホバー状態、及びロス状態)で入力ストロークデータを構成して正規化する。例えば、図19、図21の例では、20個全てのサンプルを入力ストロークデータに含めるようにしてもよい。
[Fourth normalization method]
In the fourth normalization method, the input stroke data is normalized by forming all samples (contact state, hover state, and loss state). For example, in the examples of Figures 19 and 21, all 20 samples may be included in the input stroke data.
図25は、図19のタイミングチャートに示す各特徴点について、第4の正規化方法を適用した場合における入力ストロークデータの例について示した図である。 Figure 25 shows an example of input stroke data when the fourth normalization method is applied to each feature point shown in the timing chart of Figure 19.
図25では、ホバー状態におけるペン先状態を「0」とし、ロス状態におけるペン先状態を「2」としている。図25では、ロス状態の時刻t8~t11のx座標をc_x8~c_x11、y座標をc_y8~c_y11と図示している。図25では、ロス状態の時刻t8~t11の各座標(X座標とY座標)は、前後のホバー期間の特徴点の座標の間を補間(線形補間)した位置の座標を設定するようにしてもよい。図25の例では、ロス状態の期間の直前のt7の座標(x7、y7)と直後の座標(x12,y12)の間を結ぶ線上に等間隔でt8~t11の各座標を設定するようにしてもよい。 In FIG. 25, the pen tip state in the hover state is designated as "0", and the pen tip state in the loss state is designated as "2". In FIG. 25, the x coordinates of times t8 to t11 in the loss state are designated as c_x8 to c_x11, and the y coordinates are designated as c_y8 to c_y11. In FIG. 25, the coordinates (X and Y coordinates) of times t8 to t11 in the loss state may be set to coordinates of positions interpolated (linearly interpolated) between the coordinates of the feature points of the preceding and succeeding hover periods. In the example of FIG. 25, the coordinates of t8 to t11 may be set at equal intervals on a line connecting the coordinates (x7, y7) of t7 immediately before the loss state period and the coordinates (x12, y12) immediately after.
ストロークデータ処理部1141Aでは、第4の正規化方法が適用される場合、ホバー状態の区間及びロス状態の区間についても、画(コンタクト状態の区間)と同様に正規化する処理(特徴点の間引き及び補間の処理)を行って入力ベクトルデータを取得する。例えば、図25のような入力ストロークデータであった場合、ストロークデータ処理部1141Aは、時刻t5~t7のホバー状態の区間、時刻t8~t11のロス状態の区間、時刻t12~t14のホバー区間についても、画の区間(コンタクト状態の区間)と同様の正規化処理(特徴点の間引き及び補間の処理)を行って接続するようにしてもよい。
When the fourth normalization method is applied, the stroke
また、第4の正規化方法では、ホバー状態の期間やロス状態の期間において特徴点を補間する際には、以下のようなルールで入力ベクトルデータ上のペン先状態の値を設定するようにしてもよい。第4の正規化方法では、ロス状態の期間及びロス状態の期間の直前又は直後前後に特徴点を補間する場合、入力ベクトルデータにおいてそれらの特徴点のペン先状態を「2」(ロス状態)とするようにしてもよい。さらにまた、第4の正規化方法では、ロス状態の期間の直前のホバー状態の期間において、当該ホバー状態の期間及び当該ホバー状態の期間の直前に特徴点を補間する場合、入力ベクトルデータにおいてそれらの特徴点のペン先状態を「0」(ホバー状態)とするようにしてもよい。また、第4の正規化方法では、ロス状態の期間の直後のホバー状態の期間において、当該ホバー状態の期間及び当該ホバー状態の期間の直後に特徴点を補間する場合、入力ベクトルデータにおいてそれらの特徴点のペン先状態を「0」(ホバー状態)とするようにしてもよい。 In addition, in the fourth normalization method, when feature points are interpolated during a hover state period or a loss state period, the pen tip state value on the input vector data may be set according to the following rules. In the fourth normalization method, when feature points are interpolated during a loss state period and immediately before or immediately after a loss state period, the pen tip state of those feature points may be set to "2" (loss state) in the input vector data. Furthermore, in the fourth normalization method, when feature points are interpolated during a hover state period immediately before a loss state period and immediately before the hover state period, the pen tip state of those feature points may be set to "0" (hover state) in the input vector data. In addition, in the fourth normalization method, when feature points are interpolated during a hover state period immediately after a loss state period and immediately after the hover state period, the pen tip state of those feature points may be set to "0" (hover state) in the input vector data.
以上のように、第4の正規化方法を適用する場合、図19のタイミングチャートの例では、ロス状態のサンプルも含む全てのサンプル(20サンプル)を用いて入力ストロークデータを生成するので、正規化の際、5倍程度の特徴点の補間(希釈化)ですむため、より正確な情報(より多くの情報量)を入力ベクトルデータに盛り込むことができる。つまり、第4の正規化方法を適用する場合、図19のタイミングチャートの例では、ホバー状態とロス状態を区別した情報を入力ベクトルデータに盛り込むことができる。これにより、第4の正規化方法では、入力ベクトルデータの情報量を増やすことができるので、学習環境や認識環境によっては、認識精度を向上させることができる。 As described above, when the fourth normalization method is applied, in the example of the timing chart in FIG. 19, input stroke data is generated using all samples (20 samples), including those in the loss state, so that normalization requires only about five times the interpolation (dilution) of feature points, allowing more accurate information (more information volume) to be included in the input vector data. In other words, when the fourth normalization method is applied, in the example of the timing chart in FIG. 19, information distinguishing between the hover state and the loss state can be included in the input vector data. As a result, with the fourth normalization method, the amount of information in the input vector data can be increased, which can improve recognition accuracy depending on the learning environment and recognition environment.
[第5の正規化方法]
第5の正規化方法では、第4の正規化方法と同様に全てのサンプル(コンタクト状態、ホバー状態、及びロス状態)で入力ストロークデータを構成して正規化する。ただし、第5の正規化方法では、ロス状態とホバー状態を画一的に扱う点で、第4の正規化方法と異なる。ここでは、第5の正規化方法において、ロス状態とホバー状態を全てホバー状態として扱うものとして説明する。
[Fifth normalization method]
In the fifth normalization method, input stroke data is constructed and normalized for all samples (contact state, hover state, and loss state) in the same way as in the fourth normalization method. However, the fifth normalization method differs from the fourth normalization method in that the loss state and the hover state are treated uniformly. Here, the fifth normalization method will be described assuming that the loss state and the hover state are all treated as the hover state.
図26は、図19のタイミングチャートに示す各特徴点について、第5の正規化方法を適用した場合における入力ストロークデータの例について示した図である。 Figure 26 shows an example of input stroke data when the fifth normalization method is applied to each feature point shown in the timing chart of Figure 19.
図26では、ロス状態の期間のペン先状態もホバー状態と同じく「0」に設定されている点で、図25(第4の正規化方法)と異なっている。 Figure 26 differs from Figure 25 (fourth normalization method) in that the pen tip state during the loss state is also set to "0" like the hover state.
第5の正規化方法では、ホバー状態及びロス期間により構成される期間(図19では、時刻t5~t13の期間)及び当該期間の直前もしくは直後に特徴点を補間する場合、入力ベクトルデータにおいてそれらの特徴点のペン先状態を「0」とするものとする。 In the fifth normalization method, when feature points are interpolated during a period consisting of a hover state and a loss period (in FIG. 19, the period from time t5 to t13) and immediately before or after that period, the pen tip state of those feature points in the input vector data is set to "0".
これにより、第5の正規化方法では、例えばペンタブレット20のセンサ(電子ペン30を検知するセンサ)の能力の違いに寄りホバー状態で座標を取得できる高さ(検出範囲)に変動があり、図19の状態と図20の状態が混在する場合であっても、入力ベクトルデータの内容はほぼ同じになるため、安定的な学習処理や認識処理を行うことができる。
As a result, in the fifth normalization method, even if the height (detection range) at which coordinates can be obtained in the hover state varies due to differences in the capabilities of the sensor (sensor that detects the electronic pen 30) of the
(C)他の実施形態
本発明は、上記の各実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
(C) Other Embodiments The present invention is not limited to the above-described embodiments, and modified embodiments such as those exemplified below can also be mentioned.
(C-1)上記の各実施形態において、情報処理端末10とペンタブレット20(ディスプレイパネル21)とは分離されたデバイス構成となっているが、一体の構成となるようにしてもよい。例えば、情報処理端末10として、タッチパネルディスプレイを備えるコンピュータ(例えば、タブレット端末やスマートホン)を用いて構成するようにしてもよい。
(C-1) In each of the above embodiments, the
(C-2)上記の各実施形態において、文字認識処理部114は、オンラインAI処理部1142とオフラインAI処理部1143の両方を備えているが、オンラインAI処理部1142のみを備える構成としてもよい。
(C-2) In each of the above embodiments, the character
1…認識処理システム、10…情報処理端末、11…制御部、111…コンテンツ処理部、112…ディスプレイドライバ、113…ペンタブレットドライバ、114…文字認識処理部、1141…ストロークデータ処理部、1142…オンラインAI処理部、1143…オフラインAI処理部、1144…文字認識結果出力部、12…映像IF、13…USBポート、20…ペンタブレット、21…ディスプレイパネル、30…電子ペン、31…ペン先。 1...recognition processing system, 10...information processing terminal, 11...control unit, 111...content processing unit, 112...display driver, 113...pen tablet driver, 114...character recognition processing unit, 1141...stroke data processing unit, 1142...online AI processing unit, 1143...offline AI processing unit, 1144...character recognition result output unit, 12...video IF, 13...USB port, 20...pen tablet, 21...display panel, 30...electronic pen, 31...pen tip.
Claims (8)
前記正規化手段が正規化した正規化ストロークデータを、前記固定サンプル数の特徴量で表現した入力ベクトルデータに変換する入力ベクトルデータ取得手段と、
前記入力ベクトルデータ取得手段が取得した入力ベクトルデータを用いて機械学習した学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータについて文字認識処理を行う文字認識処理手段とを有し、
前記正規化手段が行う正規化処理には、
前記入力ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が所定の閾値以上となるように特徴点を間引いて中間ストロークデータを取得する第1の正規化処理工程と、
前記中間ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が前記閾値以下となるように特徴点を補間したデータを取得する第2の正規化処理工程とが含まれる
ことを特徴とする認識処理装置。 a normalization means for acquiring input stroke data indicating an input pattern of strokes made by an electronic pen in a time series order for each input character, the input stroke data including position information of feature points in the time series order of the input pattern, and performing a normalization process for normalizing the acquired input stroke data into an input pattern having a fixed number of samples to acquire normalized stroke data;
an input vector data acquisition means for converting the normalized stroke data normalized by the normalization means into input vector data expressed by the feature amount of the fixed number of samples;
a character recognition processing means for performing character recognition processing on the input vector data acquired by the input vector data acquisition means, using a learning model that has been machine-learned using the input vector data acquired by the input vector data acquisition means,
The normalization process performed by the normalization means includes the following steps:
a first normalization process for thinning out feature points from the input stroke data so that intervals between all feature points adjacent in time series are equal to or greater than a predetermined threshold value, thereby acquiring intermediate stroke data;
and a second normalization processing step of acquiring data obtained by interpolating feature points of the intermediate stroke data such that intervals between all feature points adjacent in chronological order are equal to or smaller than the threshold value.
前記文字認識処理手段は、過去に入力ベクトルデータを用いて機械学習した第1の学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータについて文字認識処理を行って第1の文字認識結果を取得し、さらに、過去に入力画像を用いて機械学習した第2の学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力画像データについて文字認識処理を行って第2の文字認識結果を取得し、
前記文字認識処理手段による第1の文字認識結果と第2の文字認識結果のうちいずれかを選択して最終的な文字認識処理結果として出力する文字認識結果出力手段をさらに有する
ことを特徴とする請求項1~3のいずれかに記載の認識処理装置。 The input vector data acquisition means further generates input image data drawn based on the input stroke data,
the character recognition processing means performs character recognition processing on the input vector data acquired by the input vector data acquisition means using a first learning model previously trained by machine learning using input vector data to acquire a first character recognition result, and further performs character recognition processing on the input image data acquired by the input vector data acquisition means using a second learning model previously trained by machine learning using an input image to acquire a second character recognition result;
4. The recognition processing device according to claim 1, further comprising a character recognition result output means for selecting either the first character recognition result or the second character recognition result by the character recognition processing means and outputting the selected result as a final character recognition processing result.
前記文字認識結果出力手段は、前記文字認識処理手段による第1の文字認識結果と第2の文字認識結果のうち信頼度の高い方を選択して最終的な文字認識処理結果として出力する
ことを特徴とする請求項4に記載の認識処理装置。 the character recognition processing means acquires a reliability of the first character recognition result or the second character recognition result when acquiring the first character recognition result or the second character recognition result;
5. The recognition processing device according to claim 4, wherein the character recognition result output means selects one of the first character recognition result and the second character recognition result by the character recognition processing means, which has a higher reliability, and outputs the selected result as a final character recognition processing result.
入力文字ごとに電子ペンによるストロークの時系列順の入力パターンを示すものであって前記入力パターンの時系列順の特徴点の位置情報を含む入力ストロークデータを取得し、取得した入力ストロークデータを、固定サンプル数の入力パターンに正規化する正規化処理を行って正規化ストロークデータを取得する正規化手段と、
前記正規化手段が正規化した正規化ストロークデータを、前記固定サンプル数の特徴量で表現した入力ベクトルデータに変換する入力ベクトルデータ取得手段と、
前記入力ベクトルデータ取得手段が取得した入力ベクトルデータを用いて機械学習した学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータについて文字認識処理を行う文字認識処理手段として機能させ、
前記正規化手段が行う正規化処理には、
前記入力ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が所定の閾値以上となるように特徴点を間引いて中間ストロークデータを取得する第1の正規化処理工程と、
前記中間ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が前記閾値以下となるように特徴点を補間したデータを取得する第2の正規化処理工程とが含まれる
ことを特徴とする認識処理プログラム。 Computer,
a normalization means for acquiring input stroke data indicating an input pattern of strokes made by an electronic pen in a time series order for each input character, the input stroke data including position information of feature points in the time series order of the input pattern, and performing a normalization process for normalizing the acquired input stroke data into an input pattern having a fixed number of samples to acquire normalized stroke data;
an input vector data acquisition means for converting the normalized stroke data normalized by the normalization means into input vector data expressed by the feature amount of the fixed number of samples;
a learning model that has been machine-learned using the input vector data acquired by the input vector data acquisition means, the learning model functioning as a character recognition processing means that performs character recognition processing on the input vector data acquired by the input vector data acquisition means;
The normalization process performed by the normalization means includes the following steps:
a first normalization process for thinning out feature points from the input stroke data so that intervals between all feature points adjacent in time series are equal to or greater than a predetermined threshold value, thereby acquiring intermediate stroke data;
and a second normalization process step of acquiring data obtained by interpolating feature points of the intermediate stroke data so that intervals between all feature points adjacent in chronological order are equal to or less than the threshold value.
前記認識処理装置は、正規化手段、入力ベクトルデータ取得手段、文字認識処理手段、及び文字認識結果出力手段を有し、
前記正規化手段は、入力文字ごとに電子ペンによるストロークの時系列順の入力パターンを示すものであって前記入力パターンの時系列順の特徴点の位置情報を含む入力ストロークデータを取得し、取得した入力ストロークデータを、固定サンプル数の入力パターンに正規化する正規化処理を行って正規化ストロークデータを取得し、
前記入力ベクトルデータ取得手段は、前記正規化手段が正規化した正規化ストロークデータを、前記固定サンプル数の特徴量で表現した入力ベクトルデータに変換し、
前記文字認識処理手段は、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータを用いて機械学習した学習モデルを用いて、前記入力ベクトルデータ取得手段が取得した入力ベクトルデータについて文字認識処理を行い、
前記正規化手段が行う正規化処理には、
前記入力ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が所定の閾値以上となるように特徴点を間引いて中間ストロークデータを取得する第1の正規化処理工程と、
前記中間ストロークデータについて、時系列順に隣接する全ての特徴点間の間隔が前記閾値以下となるように特徴点を補間したデータを取得する第2の正規化処理工程とが含まれる ことを特徴とする認識処理方法。 A recognition processing method performed by a recognition processing device,
The recognition processing device includes a normalization means, an input vector data acquisition means, a character recognition processing means, and a character recognition result output means,
the normalization means acquires input stroke data indicating an input pattern of strokes made by an electronic pen in a time series order for each input character and including position information of feature points in the time series order of the input pattern, and acquires normalized stroke data by performing a normalization process for normalizing the acquired input stroke data into an input pattern with a fixed number of samples;
the input vector data acquisition means converts the normalized stroke data normalized by the normalization means into input vector data expressed by the feature amount of the fixed number of samples;
the character recognition processing means performs character recognition processing on the input vector data acquired by the input vector data acquisition means, using a learning model that has been machine-learned using the input vector data acquired by the input vector data acquisition means;
The normalization process performed by the normalization means includes the following steps:
a first normalization process for thinning out feature points from the input stroke data so that intervals between all feature points adjacent in time series are equal to or greater than a predetermined threshold value, thereby acquiring intermediate stroke data;
and a second normalization process step of acquiring data by interpolating feature points of the intermediate stroke data so that intervals between all feature points adjacent in chronological order are equal to or less than the threshold value.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022161861A JP7664897B2 (en) | 2021-02-15 | 2022-10-06 | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021021837A JP7162278B2 (en) | 2021-02-15 | 2021-02-15 | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system |
| JP2022161861A JP7664897B2 (en) | 2021-02-15 | 2022-10-06 | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021021837A Division JP7162278B2 (en) | 2021-02-15 | 2021-02-15 | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2022176360A JP2022176360A (en) | 2022-11-25 |
| JP2022176360A5 JP2022176360A5 (en) | 2024-02-22 |
| JP7664897B2 true JP7664897B2 (en) | 2025-04-18 |
Family
ID=82941474
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021021837A Active JP7162278B2 (en) | 2021-02-15 | 2021-02-15 | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system |
| JP2022161861A Active JP7664897B2 (en) | 2021-02-15 | 2022-10-06 | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021021837A Active JP7162278B2 (en) | 2021-02-15 | 2021-02-15 | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system |
Country Status (1)
| Country | Link |
|---|---|
| JP (2) | JP7162278B2 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001266073A (en) | 2000-03-17 | 2001-09-28 | Toshiba Corp | Character recognition method |
| JP2012014620A (en) | 2010-07-05 | 2012-01-19 | Fuji Xerox Co Ltd | Information processing device and program |
| JP2019194788A (en) | 2018-05-02 | 2019-11-07 | 日本電信電話株式会社 | Learning device, recognition device, learning method and computer program |
| US20200242825A1 (en) | 2019-01-28 | 2020-07-30 | Samsung Electronics Co., Ltd. | Electronic device and method for correcting handwriting by same |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09288717A (en) * | 1996-04-24 | 1997-11-04 | Brother Ind Ltd | Character recognition device |
| JP3595900B2 (en) | 1998-09-28 | 2004-12-02 | 富士通株式会社 | Handwritten character recognition device and recording medium |
| JP2014174568A (en) | 2013-03-05 | 2014-09-22 | Nippon Telegr & Teleph Corp <Ntt> | Recognition device, method, and program |
-
2021
- 2021-02-15 JP JP2021021837A patent/JP7162278B2/en active Active
-
2022
- 2022-10-06 JP JP2022161861A patent/JP7664897B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001266073A (en) | 2000-03-17 | 2001-09-28 | Toshiba Corp | Character recognition method |
| JP2012014620A (en) | 2010-07-05 | 2012-01-19 | Fuji Xerox Co Ltd | Information processing device and program |
| JP2019194788A (en) | 2018-05-02 | 2019-11-07 | 日本電信電話株式会社 | Learning device, recognition device, learning method and computer program |
| US20200242825A1 (en) | 2019-01-28 | 2020-07-30 | Samsung Electronics Co., Ltd. | Electronic device and method for correcting handwriting by same |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2022124208A (en) | 2022-08-25 |
| JP7162278B2 (en) | 2022-10-28 |
| JP2022176360A (en) | 2022-11-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8634645B2 (en) | Method and tool for recognizing a hand-drawn table | |
| JP6055065B1 (en) | Character recognition program and character recognition device | |
| CN113673432B (en) | Handwriting recognition method, touch display device, computer device and storage medium | |
| US11301674B2 (en) | Stroke attribute matrices | |
| KR20100135281A (en) | Methods and tools for recognizing hand drawn tables | |
| US20140184610A1 (en) | Shaping device and shaping method | |
| JPH06348904A (en) | System and method for recognition of handwritten character | |
| CN111949156B (en) | Chinese character writing test method and system of writing device and writing device | |
| US20260051188A1 (en) | Gesture stroke recognition in touch-based user interface input | |
| CN112163577A (en) | Character recognition method and device in game picture, electronic equipment and storage medium | |
| JP2023153238A (en) | Digital ink generation device, method and program | |
| CN113849118A (en) | An image recognition method and related device applied to an electronic whiteboard | |
| CN115393872B (en) | Method, device and equipment for training text classification model and storage medium | |
| US20240404307A1 (en) | Gesture stroke recognition in touch-based user interface input | |
| JP7664897B2 (en) | Recognition processing device, recognition processing program, recognition processing method, and recognition processing system | |
| JP2022185872A (en) | Image processing device, image processing method and imaging apparatus | |
| CN119597182A (en) | Text selection method, device, electronic device and computer-readable storage medium | |
| Naz et al. | Challenges in baseline detection of cursive script languages | |
| CN113762045B (en) | Point reading position identification method, device, point reading device and storage medium | |
| CN113096217A (en) | Picture generation method and device, electronic equipment and storage medium | |
| CN117315692B (en) | Chinese character splitting method, device, equipment and storage medium based on stroke information | |
| Fernandes et al. | Hand-Gesture Based Aerial Digital Canvas System Using Deep-Learning Algorithms | |
| Nakamura et al. | Mobile-AeroText: Air Writing Recognition of Japanese Hiragana for Practical Touchless Text Input | |
| JP3139701B2 (en) | Online handwritten input character recognition method and apparatus using fuzzy vector and recording medium for executing the method | |
| Toyozumi et al. | An on‐line handwritten mathematical equation recognition system that can process matrix expressions by referring to the relative positions of matrix elements |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240214 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240214 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20240404 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20240404 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20241115 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20241210 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250207 |
|
| 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: 20250311 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250408 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7664897 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |