JP2011034437A - Character recognition device, and character recognition program - Google Patents

Character recognition device, and character recognition program Download PDF

Info

Publication number
JP2011034437A
JP2011034437A JP2009181632A JP2009181632A JP2011034437A JP 2011034437 A JP2011034437 A JP 2011034437A JP 2009181632 A JP2009181632 A JP 2009181632A JP 2009181632 A JP2009181632 A JP 2009181632A JP 2011034437 A JP2011034437 A JP 2011034437A
Authority
JP
Japan
Prior art keywords
code data
character
writing
movement
user
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
Application number
JP2009181632A
Other languages
Japanese (ja)
Other versions
JP2011034437A5 (en
JP5495657B2 (en
Inventor
Yoshihiro Nishida
好宏 西田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2009181632A priority Critical patent/JP5495657B2/en
Publication of JP2011034437A publication Critical patent/JP2011034437A/en
Publication of JP2011034437A5 publication Critical patent/JP2011034437A5/ja
Application granted granted Critical
Publication of JP5495657B2 publication Critical patent/JP5495657B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a character recognition device and a character recognition program that allow continuously writing characters each consisting of a plurality of strokes, while reducing the amount of computations and processing time, and having no limitations on the place, size and speed of writing. <P>SOLUTION: The character recognition device includes: an input period detection means for detecting a character input period and a period of transition to the next character according to a user's certain action; a movement detection means for detecting a finger movement as a movement vector; a writing code data acquisition means for obtaining writing code data obtained by encoding the movement vector including a part transiting to the next stroke during the input period and compressing it in time series; a dictionary code data storage means for storing dictionary code data obtained by encoding a movement vector which is generated when each character is written in the right writing order and the right movement order, including the part transiting to the next stroke, and compressing it in time series; and a specifying means for specifying the characters written by the user, by comparing the writing code data with the dictionary code data. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は文字認識装置と文字認識プログラムに関するものであり、特に手書き文字を認識し、認識した文字をコンピュータなどに入力する入力装置に適用される文字認識装置と文字認識プログラムに関する。   The present invention relates to a character recognition device and a character recognition program, and more particularly to a character recognition device and a character recognition program applied to an input device that recognizes handwritten characters and inputs the recognized characters to a computer or the like.

従来のこの種の文字認識装置の一例は特許文献1に開示される。特許文献1によれば、個人認証装置は手書きデータ入力装置と署名照合装置とを備える。利用者は、手書きデータ入力装置に備えられる撮像手段を手で保持し空中で動かすことによって、空中に所定の文字を書く。手書きデータ入力装置に備えられる軌跡算出手段は、撮像手段の空中における位置変化である移動軌跡を手書きデータ(署名データ)として求める。署名照合装置は、その手書きデータと予め記憶手段に記憶してある参照データ(本人の署名データ)とを比較照合して、同一人による署名データであるかどうかを判断する。   An example of a conventional character recognition device of this type is disclosed in Patent Document 1. According to Patent Literature 1, the personal authentication device includes a handwritten data input device and a signature verification device. The user writes a predetermined character in the air by holding the imaging means provided in the handwritten data input device by hand and moving it in the air. The trajectory calculation means provided in the handwritten data input device obtains a movement trajectory that is a change in position of the imaging means in the air as handwritten data (signature data). The signature verification device compares the handwritten data with reference data (personal signature data) stored in advance in the storage unit to determine whether the signature data is from the same person.

また、文字認識装置の他の例は特許文献2に開示される。特許文献2によれば、空中で書いた文字を認識するためにスイッチ手段のオン/オフで筆記中か否かを判断し、筆記中と筆記中でないときのそれぞれの移動方向に基づいて手書き文字を認識するため、文字の画数に拘わらず文字を認識する。   Another example of the character recognition device is disclosed in Patent Document 2. According to Patent Document 2, it is determined whether or not writing is being performed by turning on / off the switch means in order to recognize a character written in the air, and handwritten characters are determined based on the respective moving directions when writing and not writing. Therefore, the character is recognized regardless of the number of strokes of the character.

特開2002−259045号公報JP 2002-259045 A 特開2007−200186号公報JP 2007-200196 A

しかし、特許文献1の個人認証装置では、移動軌跡そのものを軌跡算出手段で算出して参照データと照合するため、移動軌跡や参照データの情報量が大きくなり、比較照合手段の演算量が大きく処理時間が長くなるという問題があった。また、基本的には一筆書きによるデータ入力および個人認証であり、複数の画数からなる文字を認識することはできない。   However, in the personal authentication device of Patent Document 1, since the movement trajectory itself is calculated by the trajectory calculation means and collated with the reference data, the information amount of the movement trajectory and the reference data is increased, and the amount of calculation of the comparison collating means is increased. There was a problem that time became long. In addition, data input and personal authentication are basically performed with a single stroke, and characters consisting of a plurality of strokes cannot be recognized.

この点、特許文献2に開示された技術では、空中に書いた2以上の画数の文字であっても認識可能である。しかし、使用者は筆記中か否かを示すために筆のアップダウンを意識してスイッチのオンオフ操作を行う必要があり、素早く文字を書くことができなかったり筆記動作とスイッチ操作のタイミングがずれるという問題があった。   In this regard, with the technique disclosed in Patent Document 2, even characters with two or more strokes written in the air can be recognized. However, it is necessary for the user to turn on / off the switch in order to indicate whether writing is in progress or not, and it is impossible to quickly write characters or the timing of writing operation and switch operation is shifted. There was a problem.

上述の問題点に鑑み、本発明は演算量と処理時間を低減し、連続的に複数の画数からなる文字を筆記することが可能であり、筆記する場所や大きさや速度の制限が無い文字認識装置と文字認識プログラムを提供することを目的とする。   In view of the above-mentioned problems, the present invention reduces the amount of computation and processing time, can write characters consisting of a plurality of strokes continuously, and does not limit the place, size or speed of writing. An object is to provide a device and a character recognition program.

本発明の文字認識装置は、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段と、手指の移動を移動ベクトルとして検出する移動検出手段と、入力期間中、移動検出手段で検出した移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータを取得する筆記コードデータ取得手段と、各文字を正しい書き順および筆運びで筆記した場合に発生する移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した辞書コードデータを記憶する辞書コードデータ記憶手段と、筆記コードデータと辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段と、を備える。   The character recognition device according to the present invention includes an input period detecting means for detecting an input period for writing a character and a transition period for moving to the next character, and movement detection for detecting movement of a finger as a movement vector according to a predetermined operation of the user. Means, and during the input period, the movement vector detected by the movement detection means is coded including the transition part to the next picture, and the writing code data acquisition means for acquiring the writing code data compressed in time series, and each character Dictionary code data storage means for storing dictionary code data that is coded in accordance with the time series, coding the movement vector generated when writing in the correct stroke order and stroke, including the transition to the next picture, and writing code data And specifying means for specifying characters written by the user by comparing the dictionary code data.

又、本発明の文字認識プログラムは、コンピュータを、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段、手指の移動を移動ベクトルとして検出する移動検出手段、入力期間中、移動検出手段で検出した移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータを取得する筆記コードデータ取得手段、筆記コードデータと予め準備された辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段、として機能させる。   Further, the character recognition program of the present invention provides an input period detecting means for detecting an input period for writing a character and a transition period for moving to the next character in accordance with a predetermined operation of the user, and movement of a finger as a movement vector. Movement detection means for detecting, writing code data acquisition means for coding the movement vector detected by the movement detection means including the transition part to the next picture during the input period, and acquiring writing code data compressed in time series, writing The code data and the dictionary code data prepared in advance are compared to function as specifying means for specifying the character written by the user.

本発明の文字認識装置は、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段と、手指の移動を移動ベクトルとして検出する移動検出手段と、入力期間中、移動検出手段で検出した移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータを取得する筆記コードデータ取得手段と、各文字を正しい書き順および筆運びで筆記した場合に発生する移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した辞書コードデータを記憶する辞書コードデータ記憶手段と、筆記コードデータと辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段と、を備える。これにより、使用者は連続的に複数の画数からなる文字を筆記することが可能であり、演算量と処理時間が低減され、筆記する場所や大きさや速度に拘らず文字を認識することが出来る。   The character recognition device according to the present invention includes an input period detecting means for detecting an input period for writing a character and a transition period for moving to the next character, and movement detection for detecting movement of a finger as a movement vector according to a predetermined operation of the user. Means, and during the input period, the movement vector detected by the movement detection means is coded including the transition part to the next picture, and the writing code data acquisition means for acquiring the writing code data compressed in time series, and each character Dictionary code data storage means for storing dictionary code data that is coded in accordance with the time series, coding the movement vector generated when writing in the correct stroke order and stroke, including the transition to the next picture, and writing code data And specifying means for specifying characters written by the user by comparing the dictionary code data. As a result, the user can write characters consisting of a plurality of strokes continuously, the amount of calculation and processing time are reduced, and the characters can be recognized regardless of the place, size and speed of writing. .

又、本発明の文字認識プログラムは、コンピュータを、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段、手指の移動を移動ベクトルとして検出する移動検出手段、入力期間中、移動検出手段で検出した移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータを取得する筆記コードデータ取得手段、筆記コードデータと予め準備された辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段、として機能させる。これにより、使用者は連続的に複数の画数からなる文字を筆記することが可能であり、演算量と処理時間が低減され、筆記する場所や大きさや速度に拘らず文字を認識することが出来る。   Further, the character recognition program of the present invention provides an input period detecting means for detecting an input period for writing a character and a transition period for moving to the next character in accordance with a predetermined operation of the user, and movement of a finger as a movement vector. Movement detection means for detecting, writing code data acquisition means for coding the movement vector detected by the movement detection means including the transition part to the next picture during the input period, and acquiring writing code data compressed in time series, writing The code data and the dictionary code data prepared in advance are compared to function as specifying means for specifying the character written by the user. As a result, the user can write characters consisting of a plurality of strokes continuously, the amount of calculation and processing time are reduced, and the characters can be recognized regardless of the place, size and speed of writing. .

実施の形態1の入力システムの構成図である。1 is a configuration diagram of an input system according to Embodiment 1. FIG. 実施の形態1の文字入力装置の構成図である。1 is a configuration diagram of a character input device according to Embodiment 1. FIG. 方向コードデータを説明する図である。It is a figure explaining direction code data. 筆記コードデータを説明する図である。It is a figure explaining writing code data. 筆記コードデータと辞書コードデータの類似度の導出過程を説明する図である。It is a figure explaining the derivation process of the similarity degree of writing code data and dictionary code data. RAMのメモリマップを示す図である。It is a figure which shows the memory map of RAM. RAMの評価用テーブルデータを示す図である。It is a figure which shows the table data for evaluation of RAM. 入力システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of an input system. 実施の形態2の入力システムの構成図である。FIG. 6 is a configuration diagram of an input system according to a second embodiment. 実施の形態2の文字入力装置の構成図である。FIG. 6 is a configuration diagram of a character input device according to a second embodiment. 手の位置や形状を検出する方法を示す図である。It is a figure which shows the method of detecting the position and shape of a hand.

(実施の形態1)
<構成>
図1は、本実施の形態の入力システム10の構成図である。図1を参照して、入力システム10は文字入力装置12を含み、文字入力装置12は文字認識プログラムを記憶し、文字認識装置としても機能する。この文字入力装置12は、ペン型の筐体(ケース)14を備えるとともに、このケース14の一部から操作部が露出するように配置されたスイッチ16を備える。又、入力システム10はコンピュータ20を備え、文字入力装置12とコンピュータ20とがケーブル(USBケーブルやIEEE1394ケーブルなど)18を用いて接続される。
(Embodiment 1)
<Configuration>
FIG. 1 is a configuration diagram of an input system 10 according to the present embodiment. Referring to FIG. 1, an input system 10 includes a character input device 12. The character input device 12 stores a character recognition program and also functions as a character recognition device. The character input device 12 includes a pen-shaped housing (case) 14 and a switch 16 disposed so that the operation unit is exposed from a part of the case 14. The input system 10 includes a computer 20, and the character input device 12 and the computer 20 are connected using a cable 18 (such as a USB cable or an IEEE1394 cable).

なお、本実施の形態では、ケーブル18を用いて文字入力装置12とコンピュータ20とを接続するようにしてあるが、これに限定される必要はなく、無線通信にて接続することも、文字入力装置12とコンピュータ20とが一体的に形成された入力システム10として構成することもできる。また、コンピュータ20としては、汎用のコンピュータ(デスクトップ、ラップトップ、PDAなど)は当然のこと、携帯電話機、車載ナビゲーション、AV商品から電子辞書まで内部にCPUを持つあらゆる製品が該当する。   In the present embodiment, the character input device 12 and the computer 20 are connected using the cable 18, but the present invention is not limited to this. It can also be configured as an input system 10 in which the device 12 and the computer 20 are integrally formed. Further, as the computer 20, not only general-purpose computers (desktops, laptops, PDAs, etc.), but also any products having a CPU in the interior from mobile phones, in-vehicle navigation, AV products to electronic dictionaries are applicable.

したがって、入力システム10を構成する文字入力装置12とコンピュータ20とのハードウェアおよびソフトウェアの切り分け方は一体型を含めて色々と考えられるが、以下では、一例として、文字入力装置12は手書き文字を1文字単位で判定して、その候補或いは結果をコンピュータ20に送信するだけの機能を有し、コンピュータ20は、かな文字変換機能や予測機能等を有し、その操作を含めて全体を制御する構成として説明することにする。   Therefore, there are various ways of dividing the hardware and software of the character input device 12 and the computer 20 constituting the input system 10 including an integrated type, but in the following, as an example, the character input device 12 uses handwritten characters. The computer 20 has a function of judging in character units and transmitting the candidate or result to the computer 20, and the computer 20 has a kana character conversion function, a prediction function, etc., and controls the whole including the operation. It will be described as a configuration.

図2は文字入力装置12の電気的な構成を示すブロック図である。図2を参照して、文字入力装置12はCPU30を含み、CPU30は、内部バス32を介して、ROM34、RAM36および入出力(I/O)インターフェイス(以下、単に「インターフェイス」という。)38に接続される。また、文字入力装置12は、カメラ40および上述したスイッチ16を含み、このカメラ40およびスイッチ16はインターフェイス38および内部バス32を介してCPU30に接続される。このような回路コンポーネントがケース14に収納される。詳細な図示は省略するが、カメラ40は、そのレンズ部分がケース14の先端部14a(文字入力装置12の先端部)に露出するようにケース14内に配置される。また、図2では、スイッチ16がケース14に収納されるように記載してあるが、上述したように、スイッチ16はその操作部がケース14から露出するように配置される。さらに、図2では省略するが、上述したケーブル18の一方端がインターフェイス38に接続され、その他方端がコンピュータ20に接続される。   FIG. 2 is a block diagram showing an electrical configuration of the character input device 12. Referring to FIG. 2, the character input device 12 includes a CPU 30, and the CPU 30 is connected to a ROM 34, a RAM 36 and an input / output (I / O) interface (hereinafter simply referred to as “interface”) 38 via an internal bus 32. Connected. The character input device 12 includes the camera 40 and the switch 16 described above, and the camera 40 and the switch 16 are connected to the CPU 30 via the interface 38 and the internal bus 32. Such a circuit component is accommodated in the case 14. Although detailed illustration is omitted, the camera 40 is disposed in the case 14 so that the lens portion thereof is exposed at the distal end portion 14a of the case 14 (the distal end portion of the character input device 12). In FIG. 2, the switch 16 is described as being housed in the case 14. However, as described above, the switch 16 is disposed such that the operation unit is exposed from the case 14. Further, although omitted in FIG. 2, one end of the above-described cable 18 is connected to the interface 38 and the other end is connected to the computer 20.

<動作>
例えば、使用者がペンを持つように文字入力装置12を手指で把持し、文字(本実施の形態では、ひらがな)を書く。すると、文字入力装置12は使用者が書いた文字を認識し、認識した文字をコンピュータ20に入力する。以下、文字入力装置12における文字の認識方法について詳細に説明する。
<Operation>
For example, the user holds the character input device 12 with his / her finger so as to hold the pen, and writes a character (in this embodiment, hiragana). Then, the character input device 12 recognizes the character written by the user and inputs the recognized character to the computer 20. Hereinafter, a character recognition method in the character input device 12 will be described in detail.

<文字の認識方法>
文字入力装置12では、カメラ40からの画像データがインターフェイス38およびバス32を介してCPU30に与えられる。本実施の形態では、CPU30は、カメラ40からの画像データを所定時間(1フレーム:1/30秒)毎に検出し、フレーム間(1つ手前のフレームと現フレームとの間)の動きベクトルを計算する。動きベクトルを計算する方法は既に周知であるため、ここでは詳細な説明は省略する。
<Character recognition method>
In the character input device 12, image data from the camera 40 is given to the CPU 30 via the interface 38 and the bus 32. In the present embodiment, the CPU 30 detects the image data from the camera 40 every predetermined time (1 frame: 1/30 second), and a motion vector between frames (between the previous frame and the current frame). Calculate Since the method of calculating the motion vector is already well known, detailed description thereof is omitted here.

CPU30は、計算した動きベクトルを用いるなどして、文字入力装置12の移動に関する情報(移動情報)を生成する。この情報は、図6に示すRAM36のデータ記憶領域に記憶される。本実施の形態では、移動情報は使用者が書いた文字についてのコードデータ(筆記コードデータ524)である。具体的には、CPU30はスイッチ16のオン/オフを検出し、文字単位で筆記中であるか否かを判断する。CPU30は、スイッチ16を押した状態(オン状態)では、文字単位で筆記中の入力期間であると判断してコード化を続け、スイッチ16を押していない状態(オフ状態)では、文字単位の筆記が完了し次文字に移る移行期間であると判断して、コード化を停止し入力文字の特定処理に入る。このように、CPU30は入力期間と移行期間を検出する入力期間検出手段として動作する。   CPU30 produces | generates the information (movement information) regarding the movement of the character input device 12, using the calculated motion vector. This information is stored in the data storage area of the RAM 36 shown in FIG. In the present embodiment, the movement information is code data (written code data 524) for characters written by the user. Specifically, the CPU 30 detects the on / off state of the switch 16 and determines whether writing is in units of characters. When the switch 16 is pressed (on state), the CPU 30 determines that the input period is in writing in character units, and continues coding. When the switch 16 is not pressed (off state), writing is performed in character units. Is completed and the transition to the next character is determined, the encoding is stopped and the input character specifying process is started. Thus, the CPU 30 operates as an input period detection unit that detects the input period and the transition period.

ここでCPU30は、スイッチ16がオンである場合には、カメラ40からの画像データに基づいて計算した動きベクトルを筆記中の方向として検出する移動検出手段として動作する。なお、ここで用いる情報はスイッチ16がオンになった位置を原点にして原点からの距離と方向に基づくのではなく、フレーム間の動きベクトル情報そのものであり、それらを時系列に従って記述した筆記コードデータ524(移動情報)を生成する。本実施の形態では、図3に示すような方向コードデータ522を用意し、これを参照して、方向コードデータに変化が生じた時のみ方向コードを追加するように符号化(コード化)する。   Here, when the switch 16 is on, the CPU 30 operates as a movement detecting unit that detects a motion vector calculated based on image data from the camera 40 as a direction during writing. The information used here is not based on the distance and direction from the origin at the position where the switch 16 is turned on, but on the motion vector information itself between frames, and the writing code describing them in time series Data 524 (movement information) is generated. In the present embodiment, direction code data 522 as shown in FIG. 3 is prepared, and referring to this, encoding (coding) is performed so that the direction code is added only when the direction code data changes. .

図3に示す方向コードデータ522は、2次元方向を上下左右と斜め方向とを含む8つの方向(動き有りの方向)に分け、動きベクトルをその方向に応じてアルファベットに符号化するためのデータである。   The direction code data 522 shown in FIG. 3 is data for dividing a two-dimensional direction into eight directions (direction with motion) including up / down / left / right and diagonal directions, and encoding motion vectors into alphabets according to the directions. It is.

具体的には、動き有りの方向としては、上方向に「h」が割り当てられ、この上方向から時計回りに45度回転した右斜め上方に「a」が割り当てられる。また、右方向に「b」が割り当てられ、この右方向から時計回りに45度回転した右斜め下方に「c」が割り当てられる。さらに、下方向に「d」が割り当てられ、この下方向から時計回りに45度回転した左斜め下方向に「e」が割り当てられる。そして、左方向に「f」が割り当てられ、この左方向から時計回りに時計回りに45度回転した左斜め上方に「g」が割り当てられる。   Specifically, “h” is assigned to the upward direction, and “a” is assigned to the upper right direction rotated 45 degrees clockwise from this upward direction. Further, “b” is assigned to the right direction, and “c” is assigned to the lower right side rotated 45 degrees clockwise from the right direction. Furthermore, “d” is assigned to the downward direction, and “e” is assigned to the diagonally downward left direction rotated 45 degrees clockwise from the downward direction. Then, “f” is assigned to the left direction, and “g” is assigned to the upper left diagonally rotated 45 degrees clockwise from the left direction.

また、動きが少ない動きベクトルについては、動きなしとして「S」が割り当てられる。ここで、「動きが少ない」とは、動きベクトルのスカラが所定の閾値(所定距離)未満であることを意味し、閾値は文字入力装置12の開発者や設計者によって設定される。ただし、動きベクトルは隣接するフレームの画像データに基づいて算出され、1フレームのような短い期間に人間が手指を動かす距離は非常に短いと考えられるため、所定値は比較的小さい値に設定される。また、本実施の形態では、動きが少ないのみならず、画像データから検出した動きベクトルの信頼性が低いと判定される場合にも、「S」に符号化する。   Also, “S” is assigned to a motion vector with little motion as no motion. Here, “there is little motion” means that the scalar of the motion vector is less than a predetermined threshold (predetermined distance), and the threshold is set by the developer or designer of the character input device 12. However, since the motion vector is calculated based on the image data of the adjacent frame and the distance that the human moves the finger in a short period such as one frame is considered to be very short, the predetermined value is set to a relatively small value. The In the present embodiment, not only the motion is small, but also when it is determined that the reliability of the motion vector detected from the image data is low, encoding is performed to “S”.

なお、一般的に単一色の壁や床においても多少の信号レベル差があるため、これらに文字入力装置12(カメラ40のレンズ)を向けて文字を書いた場合でも、正確に動きベクトルを検出することができる。しかし、極端に暗すぎたり明るすぎる場合や、規則的な繰り返しパターンの画像データの場合には動きベクトルを誤検出する可能性がある。ただし、検出した動きベクトルの信頼性は、その検出のための演算の過程において概ね判定することができる。   In general, there is a slight difference in signal level even on a single color wall or floor. Therefore, even when characters are written with the character input device 12 (the lens of the camera 40) facing them, the motion vector is accurately detected. can do. However, there is a possibility that a motion vector is erroneously detected when it is extremely dark or too bright, or when image data has a regular repetitive pattern. However, the reliability of the detected motion vector can be generally determined in the process of calculation for the detection.

ここで、使用者が書いた文字に応じた筆記コードデータ524の生成方法について説明する。辞書コードデータ520の生成方法については、正しい書き順および筆(本実施の形態では、文字入力装置12)運びで、文字を書いた場合に生成される筆記コードデータ524の生成方法と同じであるため、重複した説明は省略する。ただし、辞書コードデータ520は、実際に文字を書くことなく正しい書き順および筆運びに従って筆記中方向コードデータ522の符号を並べることにより、生成するようにしてもよい。   Here, a method for generating the writing code data 524 corresponding to the character written by the user will be described. The method of generating the dictionary code data 520 is the same as the method of generating the writing code data 524 that is generated when a character is written by carrying the correct writing order and writing (in this embodiment, the character input device 12). Therefore, a duplicate description is omitted. However, the dictionary code data 520 may be generated by arranging the codes of the writing middle direction code data 522 in accordance with the correct writing order and brush stroke without actually writing characters.

たとえば、使用者が、図4に示すように、正しい書き順および筆運びで、ひらがなの「あ」を書く場合について説明する。「あ」は本来(1)と(3)と(5)の3画のストロークで構成されるが、筆のアップダウン操作を不要にするため、各ストローク間の(2)と(4)の筆運びが加わる。まず、スイッチ16をオンした状態で、(1)で示すように、横棒が書かれる。この時は、横棒の書き始めから書き終わりまで右方向或いはほぼ右方向であり、筆記中方向コードデータ522を参照することによって、「b」に符号化される。したがって、使用者が横棒を書き終えると、横棒の書き始めと書き終わりの筆記速度が低下した部分が「S」に符号化され、符号「SbS」のデータが筆記コードデータ524としてRAM36に記憶される。ここで、符号(アルファベット)はその符号が変化しない限り、つまり移動方向(動きベクトル)または移動速度が変化しない限り、追加的にRAM36に記憶されることはない。   For example, as shown in FIG. 4, a case where the user writes “a” in hiragana with the correct writing order and brush stroke will be described. “A” is originally composed of three strokes (1), (3) and (5), but in order to eliminate the need for brush up / down operations, (2) and (4) Brush strokes are added. First, with the switch 16 turned on, a horizontal bar is written as shown in (1). At this time, the horizontal bar is in the right direction or almost right direction from the start of writing to the end of writing, and is encoded into “b” by referring to the writing middle direction code data 522. Therefore, when the user finishes writing the horizontal bar, the portion at which the writing speed at the beginning and end of the horizontal bar is reduced is encoded as “S”, and the data of the code “SbS” is stored in the RAM 36 as the writing code data 524. Remembered. Here, the code (alphabet) is not additionally stored in the RAM 36 unless the code changes, that is, unless the moving direction (motion vector) or moving speed changes.

次に、(2)で示すストローク(1)の終了点からストローク(3)の開始点まで筆を運ぶと、移動方向は左斜め上であり、移動方向コードデータ522を参照することによって「g」のコードが追加され、ストローク(3)の開始点で筆が止まった時点では「S」のコードが追加されるため、筆記コードデータ524として、符号列「SbSgS」のデータがRAM36に記憶される。   Next, when the brush is carried from the end point of the stroke (1) shown in (2) to the start point of the stroke (3), the moving direction is diagonally left upward, and “g” is obtained by referring to the moving direction code data 522. ”And the code“ S ”is added when the brush stops at the start point of the stroke (3). Therefore, the data of the code string“ SbSgS ”is stored in the RAM 36 as the writing code data 524. The

次に、ストローク(3)の縦棒を筆記すると、縦棒の書き始めから書き終わりまで下向き或いはほぼ下向きであるため、方向コードデータ522を参照することによって、「d」に符号化される。このため、縦棒を書き終えた時点では、筆記コードデータ524として符号列「SbSgSdS」のデータがRAM36に記憶される。   Next, when writing the vertical bar of the stroke (3), it is downward or almost downward from the beginning of writing of the vertical bar to the end of writing, and therefore it is encoded to “d” by referring to the direction code data 522. For this reason, at the time when the writing of the vertical bar is completed, the data of the code string “SbSgSdS” is stored in the RAM 36 as the writing code data 524.

次に、縦棒のストローク(3)の終了点からストローク(5)の開始点までの(4)の筆の運びでは、方向が右斜め上方であり、移動方向コードデータ522を参照して、「a」に符号化される。したがって、ストローク(5)の開始点で筆が止まった時点では「S」のコードが追加されるため、筆記コードデータ524として、符号列「SbSgSdSaS」のデータがRAM36に記憶される。   Next, in carrying the brush of (4) from the end point of the stroke (3) of the vertical bar to the start point of the stroke (5), the direction is diagonally upward to the right, and referring to the movement direction code data 522, It is encoded as “a”. Therefore, since the code “S” is added when the brush stops at the start point of the stroke (5), the data of the code string “SbSgSdSaS” is stored in the RAM 36 as the writing code data 524.

最後に、使用者がストローク(5)を筆記している間は、移動方向が左斜め下方、左方、左斜め上方、上方、右斜め上方、右方、右斜め下方、下方、左斜め下の順で変化する。したがって、方向コードデータ522を参照することにより、「e」、「f」、「g」、「h」、「a」、「b」、「c」、「d」、「e」の順に符号化される。したがって、ストローク(5)を書き終えると、筆記コードデータ524として符号列「SbSgSdSaSefghabcdeS」のデータがRAM36に記憶される。このようにしてCPU30及びRAM36は、移動ベクトルをコード化し、時系列にしたがって圧縮した筆記コードデータ524を取得する筆記コードデータ取得手段として機能する。   Finally, while the user is writing the stroke (5), the moving direction is diagonally downward left, leftward, diagonally upward left, upward, diagonally upward right, diagonally downward right, downward, diagonally downward left. It changes in the order. Therefore, by referring to the direction code data 522, the codes are sequentially added in the order of “e”, “f”, “g”, “h”, “a”, “b”, “c”, “d”, “e”. It becomes. Therefore, when the stroke (5) has been written, the data of the code string “SbSgSdSaSephghabdeS” is stored in the RAM 36 as the writing code data 524. In this way, the CPU 30 and the RAM 36 function as a writing code data acquisition unit that acquires the writing code data 524 obtained by encoding the movement vector and compressing the movement vector in time series.

上述のように筆記コードデータ524は生成され、使用者が一文字の入力が終わったところでスイッチ16をオフにすると、その時点で筆記コードデータ524は一文字の最終的なコードデータとして、辞書コードデータ520(図6参照)に含まれる複数の文字についてのコードデータ(辞書コードデータ520a,520b,520c,…)の各々と比較され、その結果最も類似する辞書コードデータ520が示す文字に特定される。このようにして、使用者が書いた文字が認識される。   As described above, the writing code data 524 is generated, and when the user turns off the switch 16 when the input of one character is completed, the writing code data 524 at that time is the dictionary code data 520 as the final code data of one character. It compares with each of the code data (dictionary code data 520a, 520b, 520c, ...) about the several character contained in (refer FIG. 6), As a result, it specifies to the character which the most similar dictionary code data 520 shows. In this way, characters written by the user are recognized.

ここで、辞書コードデータ520は、複数の辞書コードデータ520a,520b,520c,…を含む。以下、この明細書においては、単に「辞書コードデータ520」という場合には、辞書コードデータ520a,520b,520c,…の各々を指す場合と、辞書コードデータ520a,520b,520c,…をまとめて指す場合とがある。各辞書コードデータ520a,520b,520c,…は、文字入力装置12を用いて各文字を正しい書き順および筆運びで書いた場合に、時系列に従って検出される移動方向が、移動方向コードデータ522が参照されることによって符号化され、生成される。   Here, the dictionary code data 520 includes a plurality of dictionary code data 520a, 520b, 520c,. Hereinafter, in this specification, when “dictionary code data 520” is simply referred to, the dictionary code data 520a, 520b, 520c,... And the dictionary code data 520a, 520b, 520c,. Sometimes it points. Each of the dictionary code data 520a, 520b, 520c,... Has a moving direction code data 522 that is detected according to time series when each character is written in the correct writing order and stroke using the character input device 12. Is generated by being referred to.

ただし、本実施の形態では、辞書コードデータ520は後述するように、1文字に対して1つの辞書コードデータ520を記憶するようにしてあるが、1文字に対して複数の辞書コードデータ520を記憶するようにしてもよい。これは、たとえば「も」のように、使用者によって書き順が異なる文字に対応し、さらに文字の認識率を高めるためでもある。また、辞書コードデータ520は、例えば、使用前に使用者がすべて登録するようにしても良いし、学習する構成にしても良い。さらに、「い」と「り」、「こ」と「て」、「う」と「ち」と「ら」のように良く似た文字の辞書コードデータは、区別がつきやすいよう違いを強調したコードに修正しても良い。このようにCPU30及びRAM36は、辞書コードデータを作成し記憶する辞書コードデータ記憶手段として機能する。   However, in the present embodiment, the dictionary code data 520 stores one dictionary code data 520 for one character as will be described later, but a plurality of dictionary code data 520 is stored for one character. You may make it memorize | store. This is also for the purpose of increasing the character recognition rate, for example, corresponding to characters whose writing order varies depending on the user, such as “M”. Further, for example, the dictionary code data 520 may be registered by the user before use, or may be configured to learn. Furthermore, the dictionary code data of characters that are very similar, such as “I” and “Ri”, “Ko” and “Te”, “U”, “Chi”, and “Ra”, emphasize the differences so that they can be easily distinguished. You may modify the code. Thus, the CPU 30 and the RAM 36 function as dictionary code data storage means for creating and storing dictionary code data.

<類似度の評価方法>
次に、本実施の形態における、筆記コードデータ524と辞書コードデータ520a,520b,520c,…との類似度の評価方法について図5を用いて説明する。類似度の評価には、時系列データに対して時間伸縮を含めたマッチングに適した方法として、例えばDPマッチングを利用することができる。
<Similarity evaluation method>
Next, a method for evaluating the similarity between the writing code data 524 and the dictionary code data 520a, 520b, 520c,... In the present embodiment will be described with reference to FIG. For the evaluation of the similarity, for example, DP matching can be used as a method suitable for matching including time expansion and contraction with respect to time series data.

DPマッチングの一例として、使用者が文字を書いたことにより筆記コードデータ524として符号列「SdcSaScdS」のデータが得られた場合について説明する。また、簡単のために、「い」の辞書コードデータを「SdSaScdS」、「し」の辞書コードデータを「SdcbaS」、として説明する。   As an example of DP matching, a case where data of a code string “SdcSaScdS” is obtained as writing code data 524 by writing a character by the user will be described. For simplicity, the dictionary code data “I” is described as “SdSaScdS” and the dictionary code data “SH” is described as “SdcbaS”.

まず、図5(A)に示す筆記コードデータ524が得られると、図5(B)に示すように、筆記コードデータ524と各辞書コードデータ520から各コードデータ間の類似度を示す局所マトリックスを作成する。ここで、類似度は「0」が「合致」で、値が小さいほど類似していることを意味する。一般的に単純なDPマッチングの場合には、局所マトリクスは、例えば一致しない場合に「3」、一致する場合に「0」などが与えられる。しかしながら、方向コード「a」と「b」の方向差よりも「a」と「c」の方向差の方が大きく類似度は小さいため、単に一致/不一致のみを表現するのではなく方向コードの組合せに応じた類似度を与えることによって、より正確なマッチングが実現できると考えられる。   First, when the writing code data 524 shown in FIG. 5 (A) is obtained, a local matrix indicating the similarity between the writing code data 524 and each dictionary code data 520 from the writing code data 524 as shown in FIG. 5 (B). Create Here, the degree of similarity means that “0” is “match”, and the smaller the value, the more similar. In general, in the case of simple DP matching, the local matrix is given, for example, “3” when they do not match and “0” when they match. However, since the direction difference between “a” and “c” is larger and the degree of similarity is smaller than the direction difference between direction codes “a” and “b”, the direction code is not simply expressed as a match / mismatch. It is considered that more accurate matching can be realized by giving similarity according to the combination.

次に、図5(C)で示した式にしたがって、経路(連続性)を含む類似度を示す累積マトリクス(図5(D))をP(0,0)から順次計算して行き、累積マトリックス計算の最後の値(図5(E))が各辞書コードデータとの類似度として得られる。「い」との類似度が「3」、「し」との類似度が「18」という結果になったことから、入力パターンは「し」よりも「い」に類似していることがわかる。同様に全ての文字の候補と類似度を算出して評価することで入力された文字を特定することができる。このようにして、CPU30は筆記コードデータと辞書コードデータを比較して使用者が筆記した文字を特定する特定手段として機能する。   Next, according to the equation shown in FIG. 5C, a cumulative matrix (FIG. 5D) indicating the degree of similarity including the path (continuity) is sequentially calculated from P (0, 0) and accumulated. The last value of the matrix calculation (FIG. 5E) is obtained as the similarity with each dictionary code data. Since the similarity to “I” is “3” and the similarity to “I” is “18”, the input pattern is more similar to “I” than “I”. . Similarly, it is possible to specify an input character by calculating and evaluating the similarity to all character candidates. In this way, the CPU 30 functions as a specifying unit that specifies the character written by the user by comparing the written code data and the dictionary code data.

すなわち、実施の形態1の文字認識装置は、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段と、手指の移動を移動ベクトルとして検出する移動検出手段と、入力期間中、移動検出手段で検出した移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータ524を取得する移動情報取得手段と、各文字を正しい書き順および筆運びで筆記した場合に発生する移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した辞書コードデータを記憶する辞書コードデータ記憶手段と、移動情報取得手段が取得した筆記コードデータと辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段と、を備える。移動ベクトルをコード化することにより、演算量と処理時間を低減することが出来る。又、次画への移行部分を含めてコード化することによって、連続的に複数の画数からなる文字を筆記することができ、筆記する場所や大きさや速度の制限が無い文字認識装置となる。   That is, the character recognition device according to the first embodiment includes an input period detecting unit that detects an input period for writing a character and a transition period for moving to the next character according to a predetermined operation of the user, and movement of a finger as a movement vector. Movement detection means for detecting, movement information acquisition means for acquiring handwritten code data 524 encoded in a time series in which the movement vector detected by the movement detection means is encoded including the transition portion to the next image during the input period. A dictionary code data storage means for storing the dictionary code data which is coded in accordance with the time series by encoding the movement vector generated when writing each character in the correct writing order and stroke, including the transition part to the next picture And a specifying means for specifying the character written by the user by comparing the written code data acquired by the movement information acquiring means with the dictionary code data. By coding the movement vector, the amount of calculation and the processing time can be reduced. In addition, by coding including the transition to the next image, it is possible to write characters consisting of a plurality of strokes continuously, and the character recognition device has no restrictions on the place, size or speed of writing.

<プログラム>
図6は、図1に示したRAM36のメモリマップを示す図解図である。ただし、RAM36に記憶されるプログラムや一部のデータはROM34からロードされる。図6に示すように、RAM36はプログラム記憶領域50とデータ記憶領域52を含む。プログラム記憶領域50は、文字認識プログラムと文字入力プログラム508を記憶する。文字認識プログラムは、メイン処理プログラム500、手指の動き検出プログラム502、コード化プログラム504および文字特定プログラム506によって構成される。
<Program>
FIG. 6 is an illustrative view showing a memory map of the RAM 36 shown in FIG. However, programs and some data stored in the RAM 36 are loaded from the ROM 34. As shown in FIG. 6, the RAM 36 includes a program storage area 50 and a data storage area 52. The program storage area 50 stores a character recognition program and a character input program 508. The character recognition program includes a main processing program 500, a finger movement detection program 502, a coding program 504, and a character identification program 506.

メイン処理プログラム500は、本実施の形態の文字認識のメインルーチンを処理するためのプログラムである。手指の動き検出プログラム502は、カメラ40からの画像を所定時間(たとえば、1フレーム)毎に検出し、1フレーム前の画像と現フレームの画像とを比較して手指の動きベクトルを検出(算出)するためのプログラムである。コード化プログラム504は、使用者が文字入力装置12を用いて空中で文字を書くときにその移動ベクトルを使用者の手指の移動方向に従って符号化し、符号を時系列に並べてコード化するためのプログラムである。   The main processing program 500 is a program for processing the main routine for character recognition according to the present embodiment. The finger motion detection program 502 detects an image from the camera 40 every predetermined time (for example, one frame), compares the image of the previous frame with the current frame image, and detects (calculates) a finger motion vector. ) A coding program 504 is a program for coding a movement vector according to the movement direction of the user's finger when the user writes a character in the air using the character input device 12 and arranging the codes in time series. It is.

文字特定プログラム506は、使用者が書いた文字を特定するためのプログラムである。簡単に説明すると、使用者が書いた文字についてのコードデータ(筆記コードデータ524)と、辞書として予め登録してある各文字についてのコードデータ(辞書コードデータ520a,520b,520c,…)とを比較し、筆記コードデータ524と最も類似した(評価値が最も小さい)辞書コードデータ520に対応する文字を特定(決定)する。これにより、使用者が書いた文字が認識される。文字入力プログラム508は、文字特定プログラム506で特定(認識)された文字をコンピュータ20に入力(送信)するためのプログラムである。   The character specifying program 506 is a program for specifying a character written by the user. Briefly, code data (writing code data 524) for characters written by the user and code data (dictionary code data 520a, 520b, 520c,...) For each character registered in advance as a dictionary. In comparison, the character corresponding to the dictionary code data 520 that is most similar to the written code data 524 (having the smallest evaluation value) is specified (determined). Thereby, the character written by the user is recognized. The character input program 508 is a program for inputting (transmitting) the character specified (recognized) by the character specifying program 506 to the computer 20.

データ記憶領域52には、辞書コードデータ520、方向データ522、筆記コードデータ524および評価用テーブルデータ526のようなデータが記憶されるとともに、筆記中フラグ528のようなフラグが記憶される。   The data storage area 52 stores data such as dictionary code data 520, direction data 522, writing code data 524, and evaluation table data 526, and a flag such as a writing flag 528.

辞書コードデータ520は、複数の辞書コードデータ520a,520b,520c,…を含む。辞書コードデータ520aは、ひらがなの「あ」を正しい書き順および筆運びで書いたときのコードデータであり、例えば符号列「SbSgSdSaSefghabcdeS」のデータで表わされる。また、辞書コードデータ520bは、ひらがなの「い」を正しい書き順および筆運びで書いたときのコードデータであり、例えば符号列「SdSaScdS」のデータで表わされる。辞書コードデータ520cは、ひらがなの「う」を正しい書き順および筆運びで書いたときのコードデータであり、というように以下は省略するが、他のひらがなについての辞書コードデータ520も記憶される。ただし、ひらがなに加えて、数字(0〜9)またはアルファベット(a〜z,A〜Z)或いはその両方についての辞書コードデータ520を記憶してもよい。また、文字以外の「バックスペース」、「エンターキー」や「方向キー」等の操作に対応したパターンを登録および記憶するようにしてもよい。   The dictionary code data 520 includes a plurality of dictionary code data 520a, 520b, 520c,. The dictionary code data 520a is code data when the hiragana “a” is written in the correct writing order and brush stroke, and is represented, for example, by data of a code string “SbSgSdSaSefghabdedeS”. The dictionary code data 520b is code data when “i” of hiragana is written in the correct writing order and brush stroke, and is represented by data of a code string “SdSaScdS”, for example. The dictionary code data 520c is code data when writing “u” of hiragana with the correct writing order and stroke stroke, and the following is omitted, but dictionary code data 520 for other hiragana is also stored. . However, in addition to hiragana, dictionary code data 520 for numbers (0-9), alphabets (az, AZ) or both may be stored. Also, patterns corresponding to operations such as “backspace”, “enter key”, and “direction key” other than characters may be registered and stored.

方向データ522は、例えば図3に示した方向コードデータ522である。上述したように、例えばスイッチ16がオンして使用者が一筆書きで文字を書くとき、その移動情報が方向コードデータ522を参照して符号化される。   The direction data 522 is, for example, the direction code data 522 shown in FIG. As described above, for example, when the switch 16 is turned on and the user writes characters with a single stroke, the movement information is encoded with reference to the direction code data 522.

筆記コードデータ524は、使用者が一筆書きで文字を書いたときに文字入力装置12自体の移動方向が時系列に従って符号化されたコードデータである。なお、詳細な説明は省略するが、コンピュータ20が1文字の入力は終了した(次の文字を入力する)と判定したり、文字がキャンセル(訂正)された場合に、コンピュータ20からのコマンドにしたがって筆記コードデータ524はリセット(消去)される。   The written code data 524 is code data in which the moving direction of the character input device 12 itself is encoded according to a time series when the user writes a character with a single stroke. Although detailed explanation is omitted, when the computer 20 determines that the input of one character is completed (inputs the next character) or the character is canceled (corrected), the command from the computer 20 is Accordingly, the written code data 524 is reset (erased).

評価用テーブルデータ526は、辞書コードデータ520に登録された文字毎に評価値を記述できるように構成されたテーブルについてのデータであり、使用者が書いた文字を特定(認識)する場合に用いられる。具体的には、図7に示すように、候補文字が1文字ずつ記述され、筆記コードデータ524と各候補文字に対応する辞書コードデータ520との評価値が計算されると、計算された評価値が該当する候補文字に対応して記述される。ただし、評価用テーブルデータ526は文字が特定される毎にリセットされ、すべての評価値が消去される。   The evaluation table data 526 is data about a table configured so that an evaluation value can be described for each character registered in the dictionary code data 520, and is used for specifying (recognizing) a character written by a user. It is done. Specifically, as shown in FIG. 7, candidate characters are described one by one, and when the evaluation values of the writing code data 524 and the dictionary code data 520 corresponding to each candidate character are calculated, the calculated evaluation is performed. A value is described corresponding to the corresponding candidate character. However, the evaluation table data 526 is reset every time a character is specified, and all evaluation values are deleted.

図6に戻って、筆記中フラグ528は筆記中か否かを判断するためのフラグであり、たとえば1ビットのレジスタで構成される。本実施の形態では、スイッチ16がオンであれば筆記中であり、一方、スイッチ16がオフであれば筆記中でない例を説明したが、スイッチをトグル動作にしたり、オンオフのスイッチを別に設けたり、ジェスチャー操作等でスイッチの代わりにすることが可能である。いずれにせよ筆記中か否かを判断し、文字単位の入力の開始から終了までの期間(入力期間)を示す。   Returning to FIG. 6, the writing flag 528 is a flag for determining whether or not writing is in progress, and is constituted by, for example, a 1-bit register. In the present embodiment, an example has been described in which writing is performed when the switch 16 is on, while writing is not performed when the switch 16 is off. However, the switch is toggled or an on / off switch is provided separately. It is possible to replace the switch by a gesture operation or the like. In any case, it is determined whether writing is in progress, and the period (input period) from the start to the end of input in character units is indicated.

具体例としては、CPU30が図8に示すメインルーチン(全体処理)を実行する。CPU30は全体処理を開始すると、動きベクトルを生成する(ステップS1)。つまり、カメラ40から入力される画像データを1フレーム毎に検出し、直前のフレームの画像と現フレームの画像との動き(移動方向および移動量)を検出する。   As a specific example, the CPU 30 executes a main routine (overall processing) shown in FIG. When starting the entire process, the CPU 30 generates a motion vector (step S1). That is, the image data input from the camera 40 is detected for each frame, and the movement (movement direction and movement amount) between the immediately preceding frame image and the current frame image is detected.

次に、筆記中フラグ528がオンの時にステップS1で検出した動きベクトルから文字入力装置12の移動方向を検出して筆記コードデータ524を作成し(コード化処理)、コードが変化した時に筆記コードデータ524にコードを追加する(ステップS2)。そして、得られた筆記コードデータ524と各辞書コードデータ520との類似度を比較して入力された文字を特定する文字特定処理を実行する(ステップS3)。ステップS3で特定された文字はコンピュータ20に入力する(ステップS4)。なお、全体処理すなわちステップS1−S4のスキャンタイムが1フレームであり、この全体処理が繰り返し実行されることにより、動きベクトルは1フレーム毎に算出(検出)される。   Next, when the writing flag 528 is on, the moving direction of the character input device 12 is detected from the motion vector detected in step S1 to create writing code data 524 (coding process), and the writing code when the code changes A code is added to the data 524 (step S2). Then, a character specifying process for specifying the input character by comparing the similarity between the obtained writing code data 524 and each dictionary code data 520 is executed (step S3). The character specified in step S3 is input to the computer 20 (step S4). Note that the entire process, that is, the scan time of steps S1 to S4 is one frame. By repeatedly executing this entire process, a motion vector is calculated (detected) for each frame.

なお、本実施の形態では、カメラ40をケース14の先端部14aに配置してカメラ40の画像から動きベクトルを検出することで文字入力装置12の移動を検出したが、他のセンサ、例えば加速度センサや角速度センサを搭載して文字入力装置12の移動を検出してもよい。   In the present embodiment, the movement of the character input device 12 is detected by arranging the camera 40 at the tip 14a of the case 14 and detecting a motion vector from the image of the camera 40. A movement of the character input device 12 may be detected by mounting a sensor or an angular velocity sensor.

すなわち、実施の形態1に係る文字認識プログラムは、コンピュータを、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段、手指の移動を移動ベクトルとして検出する移動検出手段、入力期間中、移動検出手段で検出した前記移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した移動情報を取得する移動情報取得手段、移動情報取得手段が取得した移動情報と予め準備された辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段、として機能させる。移動ベクトルをコード化することにより、演算量と処理時間を低減することが出来る。又、次画への移行部分を含めてコード化することによって、連続的に複数の画数からなる文字を筆記することができ、筆記する場所や大きさや速度の制限が無い文字認識プログラムとなる。   That is, the character recognition program according to the first embodiment causes the computer to detect the input period detecting means for detecting the input period for writing a character and the transition period for moving to the next character in accordance with a predetermined operation of the user. Movement detection means for detecting as a movement vector, movement information acquisition means for acquiring movement information compressed in time series by coding the movement vector detected by the movement detection means including a transition part to the next picture during the input period Then, the movement information acquired by the movement information acquisition means is compared with the dictionary code data prepared in advance to function as specifying means for specifying the character written by the user. By coding the movement vector, the amount of calculation and the processing time can be reduced. In addition, by coding including the transition to the next image, it is possible to write characters consisting of a plurality of strokes continuously, and the character recognition program has no restrictions on the place, size and speed of writing.

<コードデータ検出精度の向上>
次に、筆記コードデータ524の検出精度の向上について説明する。動きベクトルの移動量(スカラ)が所定値未満であるときにコード「S」と符号化し、静止状態(動き量が少ない)と判定するが、この所定値(閾値)を適切に制御することが、検出精度を向上させるための第一の方法である。空中に文字を書く場合、状況や人によって文字の大きさや速度は大きく変動すると考えられる。大きな文字を書く場合や早く書く場合には、一旦筆を静止させたつもりでも動いていると判定する一方、小さい文字を書く場合やゆっくりと書いた場合には、筆を動かしているつもりでも静止状態であると誤検出することがある。そこで、大きな状況変化がない場合に使用者が書く速度や文字の大きさは、一般的に直前に書いた速度や文字の大きさや速度に近いと考える。そこで、直前の数文字分の文字を書く速度(フレーム間の移動量)の最大値と最小値および平均値を算出し、その値に基づいて静止状態であるか否かの閾値を変更することにより、上述の誤検出が削減できる。具体的には文字を書く速度が高い時には閾値を大きく、文字を書く速度が低い時には閾値を小さくするように適応的に制御を行う。
<Improved code data detection accuracy>
Next, improvement in detection accuracy of the written code data 524 will be described. When the movement amount (scalar) of the motion vector is less than a predetermined value, it is encoded as a code “S” and determined to be in a stationary state (the amount of motion is small), but this predetermined value (threshold value) can be appropriately controlled. This is the first method for improving the detection accuracy. When writing characters in the air, the size and speed of the characters may vary greatly depending on the situation and the person. When writing large characters or writing quickly, it is determined that the brush is moving even if it is intended to be stationary, but when writing small characters or when writing slowly, it is determined that the brush is moving even if it is intended to move. It may be erroneously detected as a state. Therefore, when there is no large change in the situation, it is considered that the speed of writing and the size of characters by the user are generally close to the speed and the size and speed of characters written immediately before. Therefore, calculate the maximum value, minimum value, and average value of the writing speed (moving amount between frames) for the last few characters, and change the threshold value for whether or not the camera is stationary based on the values. Thus, the above-described erroneous detection can be reduced. Specifically, the control is adaptively performed so that the threshold value is increased when the character writing speed is high and the threshold value is decreased when the character writing speed is low.

すなわち、筆記コードデータ取得手段は、移動ベクトルの移動量が所定の閾値以下の時に静止状態と判定し、前記所定の閾値より大きい場合に移動方向に従って移動ベクトルをコード化し、当該所定の閾値は移動量の履歴に基づいて変更される。これにより、筆記スピードや文字の大小の個人差を考慮され、筆記コードデータ524の検出精度が向上する。   That is, the handwritten code data acquisition means determines that the movement vector is stationary when the movement amount of the movement vector is equal to or less than a predetermined threshold value, and encodes the movement vector according to the movement direction when the movement vector is larger than the predetermined threshold value. Changed based on volume history. Accordingly, the detection accuracy of the writing code data 524 is improved in consideration of the writing speed and the individual differences in character size.

第二の検出精度向上は、方向ベクトルの境界点でのハンチングの回避である。CPU30は、筆記コードデータ524に変化がない場合には新たにコードを追加しないため、例えば使用者が右方向に横棒を書くと、「bbb・・・」と同一の方向コードが連続し、結果として「b」とのみコード化される。一方、横棒を書いた時に少し傾いてしまうと、方向コードがbとcの境界付近になり「bcbcbc」と検出されてしまい、同一の方向コードの連続でないためそのまま「bcbcbc」とコード化されることになる。この場合、使用者は同じ横棒を書こうとしたにも拘らずコード化の結果が大きく異なり、誤検出となる。そこで、「bcb」の後に「c」が検出されてもコードを追加しない処理(ハンチング回避)を行う。この時「a」が検出された場合は普通通りコードを追加することで、「ふ」や「む」等に含まれるS字カーブ状の軌跡は正確に表現できる。   The second improvement in detection accuracy is to avoid hunting at the boundary point of the direction vector. Since the CPU 30 does not add a new code when there is no change in the written code data 524, for example, when the user writes a horizontal bar in the right direction, the same direction code as “bbb. As a result, only “b” is encoded. On the other hand, if the horizontal bar is tilted slightly, the direction code will be near the boundary between b and c and will be detected as “bcbcbc”, and since it is not a continuation of the same direction code, it will be encoded as “bcbcbc” as it is. Will be. In this case, although the user tries to write the same horizontal bar, the result of encoding is greatly different, and erroneous detection occurs. Therefore, even if “c” is detected after “bcb”, processing that does not add a code (hunting avoidance) is performed. If “a” is detected at this time, a code is added as usual, so that the S-shaped trajectory included in “fu”, “mu”, etc. can be accurately expressed.

すなわち、筆記コードデータ取得手段は、移動ベクトルが二つの方向を繰り返す時には繰り返し部分を削除してコード化する。これにより、ハンチングを回避でき筆記コードデータ524の検出精度が向上する。   That is, the handwritten code data acquisition means performs coding by deleting the repeated portion when the movement vector repeats two directions. Thereby, hunting can be avoided and the detection accuracy of the written code data 524 is improved.

<効果>
実施の形態1の文字認識装置12によれば、既に述べた通り以下の効果を奏する。すなわち、文字認識装置は、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段と、手指の移動を移動ベクトルとして検出する移動検出手段と、入力期間中、移動検出手段で検出した移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータ524を取得する移動情報取得手段と、各文字を正しい書き順および筆運びで筆記した場合に発生する移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した辞書コードデータを記憶する辞書コードデータ記憶手段と、移動情報取得手段が取得した筆記コードデータと辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段と、を備える。移動ベクトルをコード化することにより、演算量と処理時間を低減することが出来る。又、次画への移行部分を含めてコード化することによって、連続的に複数の画数からなる文字を筆記することができ、筆記する場所や大きさや速度の制限が無い文字認識装置となる。
<Effect>
According to the character recognition device 12 of the first embodiment, the following effects can be obtained as described above. That is, the character recognition device includes an input period detecting unit that detects an input period for writing a character and a transition period for moving to the next character, and a movement detecting unit that detects a movement of a finger as a movement vector according to a predetermined operation of the user. And during the input period, the movement information detecting means for encoding the movement vector detected by the movement detecting means including the transition part to the next picture and acquiring the written code data 524 compressed according to the time series, and each character is correct Dictionary code data storage means for storing dictionary code data that is coded in accordance with the time series by coding a movement vector generated when writing in stroke order and stroke, including a transition part to the next picture, and movement information acquisition means Specifying means for comparing the written code data acquired by the user and the dictionary code data to specify the character written by the user. By coding the movement vector, the amount of calculation and the processing time can be reduced. In addition, by coding including the transition to the next image, it is possible to write characters consisting of a plurality of strokes continuously, and the character recognition device has no restrictions on the place, size or speed of writing.

又、筆記コードデータ取得手段は、移動ベクトルの移動量が所定の閾値以下の時に静止状態と判定し、前記所定の閾値より大きい場合に移動方向に従って移動ベクトルをコード化し、当該所定の閾値は移動量の履歴に基づいて変更される。これにより、筆記スピードや文字の大小の個人差を考慮され、筆記コードデータ524の検出精度が向上する。   The handwritten code data acquisition means determines that the movement vector is stationary when the movement amount of the movement vector is less than or equal to a predetermined threshold value, and encodes the movement vector according to the movement direction when the movement vector is larger than the predetermined threshold value. Changed based on volume history. Accordingly, the detection accuracy of the writing code data 524 is improved in consideration of the writing speed and the individual differences in character size.

さらに、筆記コードデータ取得手段は、移動ベクトルが二つの方向を繰り返す時には繰り返し部分を削除してコード化する。これにより、ハンチングを回避でき筆記コードデータ524の検出精度が向上する。   Further, the handwritten code data acquisition means performs coding by deleting the repeated portion when the movement vector repeats two directions. Thereby, hunting can be avoided and the detection accuracy of the written code data 524 is improved.

又、実施の形態1の文字認識プログラムによれば、既に述べた通り以下の効果を奏する。すなわち、文字認識プログラムは、コンピュータを、使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段、手指の移動を移動ベクトルとして検出する移動検出手段、入力期間中、移動検出手段で検出した前記移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した移動情報を取得する移動情報取得手段、移動情報取得手段が取得した移動情報と予め準備された辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段、として機能させる。移動ベクトルをコード化することにより、演算量と処理時間を低減することが出来る。又、次画への移行部分を含めてコード化することによって、連続的に複数の画数からなる文字を筆記することができ、筆記する場所や大きさや速度の制限が無い文字認識プログラムとなる。   Further, according to the character recognition program of the first embodiment, the following effects can be obtained as already described. That is, the character recognition program causes the computer to detect an input period for writing a character and a transition period for moving to the next character according to a predetermined operation of the user, and a movement for detecting movement of a finger as a movement vector. A movement information acquisition means and a movement information acquisition means for acquiring movement information that is encoded in a time-series manner by encoding the movement vector detected by the movement detection means during the input period, including a transition portion to the next image. The acquired movement information is compared with dictionary code data prepared in advance to function as specifying means for specifying a character written by the user. By coding the movement vector, the amount of calculation and the processing time can be reduced. In addition, by coding including the transition to the next image, it is possible to write characters consisting of a plurality of strokes continuously, and the character recognition program has no restrictions on the place, size and speed of writing.

(実施の形態2)
<構成>
実施の形態1では、使用者が文字入力装置12のペン型の筐体14を手に持って空中に文字を書き、文字入力装置12がこれを認識したが、実施の形態2では、使用者はハンドフリーにて空中に文字を書き、文字入力装置がその文字を認識する。
(Embodiment 2)
<Configuration>
In the first embodiment, the user writes a character in the air while holding the pen-shaped casing 14 of the character input device 12 and the character input device 12 recognizes this, but in the second embodiment, the user recognizes this. Writes a character in the air with hands free, and the character input device recognizes the character.

図9は、実施の形態2の入力システム90の使用例を示す図である。図9を参照して、入力システム90は文字入力装置92と表示部94を備えている。文字入力装置92は入力システム90に組み込まれており、例えば、同一筐体に内蔵され一体化している。文字入力装置92はカメラで使用者の手を撮像し、手の動きや形状から使用者が空中に書いた文字を認識する。文字入力装置92の認識結果は入力システム90に送信され、かな文字変換機能や予測機能を有する入力システム90は、表示部94の表示や操作を含めて全体を制御する。   FIG. 9 is a diagram illustrating a usage example of the input system 90 according to the second embodiment. Referring to FIG. 9, the input system 90 includes a character input device 92 and a display unit 94. The character input device 92 is incorporated in the input system 90, and is, for example, incorporated in the same casing and integrated. The character input device 92 images the user's hand with a camera, and recognizes the character written by the user in the air based on the movement and shape of the hand. The recognition result of the character input device 92 is transmitted to the input system 90, and the input system 90 having a kana character conversion function and a prediction function controls the whole including display and operation of the display unit 94.

なお、本実施の形態では、文字入力装置92は入力システム90に内蔵され一体化するようにしてあるが、これに限定される必要はなく、実施の形態1のように分離されて有線や無線で通信するように構成してもよい。いずれにしても、文字入力装置92は手に持つのではなく、環境に設置して外から手の動きや形状を検出する構成とする。また、入力システム90としては、汎用のコンピュータ(デスクトップ、ラップトップ、PDAなど)は当然のこと、携帯電話機、車載ナビゲーション、AV商品から電子辞書まで内部にCPUを持つあらゆる製品が該当し、上位システムの入力システム90と下位コンポーネントの文字入力装置92の切り分けや構成も製品により色々と考えられる。   In the present embodiment, the character input device 92 is built in and integrated with the input system 90. However, the character input device 92 is not limited to this, and is separated as in the first embodiment to be wired or wireless. You may comprise so that it may communicate. In any case, the character input device 92 is not held in the hand, but is installed in the environment to detect the movement and shape of the hand from the outside. The input system 90 includes not only general-purpose computers (desktops, laptops, PDAs, etc.), but also mobile phones, in-vehicle navigation systems, and all products having an internal CPU from AV products to electronic dictionaries. The input system 90 and the lower-level component character input device 92 can be separated and configured depending on the product.

図10は文字入力装置92の電気的な構成を示すブロック図である。この図10を参照して、文字入力装置92はCPU30を含み、CPU30は、内部バス32を介してROM34、RAM36および入出力(I/O)インターフェイス(以下、単に「インターフェイス」という。)38に接続される。また、文字入力装置92はカメラ40を含み、このカメラ40はインターフェイス38と内部バス32を介してCPU30に接続される。ただし、カメラ40は、そのレンズ部分が使用者側を向いて使用者の手を撮像するように配置される(詳細な図示は省略)。   FIG. 10 is a block diagram showing an electrical configuration of the character input device 92. Referring to FIG. 10, character input device 92 includes a CPU 30, and CPU 30 is connected to ROM 34, RAM 36 and input / output (I / O) interface (hereinafter simply referred to as “interface”) 38 via internal bus 32. Connected. The character input device 92 includes a camera 40, and the camera 40 is connected to the CPU 30 via the interface 38 and the internal bus 32. However, the camera 40 is arranged so that the lens portion faces the user and images the user's hand (detailed illustration is omitted).

<動作>
たとえば、使用者が文字入力装置92の前に手を出し、手を握ることで文字入力を開始し、手を握ったまま空中に一筆書きで文字を書いて、一文字が書き終われば手を開く動作を行う。すると文字入力装置92は、カメラ40で撮像した使用者の手の形から一文字を書く入力期間の開始と終了のタイミングを検出し、さらに筆記中の使用者の手の位置から筆跡を検出する。即ち、実施の形態1では、文字単位の入力期間の開始と終了の検出をスイッチ16のON/OFFによって検出していたが、実施の形態2では、カメラ40で撮像した手指の形からこれを検出する。又、実施の形態1では、カメラ40で撮像した画像全体の動きベクトルから筆記の方向を検出していたが、実施の形態2では、カメラで撮影した画像から手の位置を検出し、この手の動きから筆記の方向を検出する。その他の処理については、実施の形態1と同様の処理によって文字が認識できるので、カメラ40の撮像画像から手の形と動きを検出する方法について次に説明する。
<Operation>
For example, a user puts his hand in front of the character input device 92 and starts inputting characters by holding the hand, then writing a character with a single stroke in the air while holding his hand and opening his hand when one character is written. Perform the action. Then, the character input device 92 detects the start and end timings of the input period for writing one character from the shape of the user's hand imaged by the camera 40, and further detects the handwriting from the position of the user's hand during writing. That is, in the first embodiment, detection of the start and end of the input period in character units is detected by turning on / off the switch 16, but in the second embodiment, this is detected from the shape of the finger imaged by the camera 40. To detect. In the first embodiment, the writing direction is detected from the motion vector of the entire image captured by the camera 40. However, in the second embodiment, the position of the hand is detected from the image captured by the camera. The direction of writing is detected from the movement of the. Regarding other processes, since characters can be recognized by the same process as in the first embodiment, a method for detecting the shape and movement of the hand from the captured image of the camera 40 will be described next.

<手の形と動きの検出>
まず、前に出した手を検出する方法として、肌色情報を利用する手法がある。これは、一般的に手は肌色であるという前提に基づいて撮像画像から肌色に近い領域を抜き出し2値化するものである。原理上、使用者が手袋をしており手の色が肌色でない場合や、後ろに人の顔など肌色に近いものが存在する場合に誤検出してしまうという問題があるが、手が速く動く場合でも検出することが出来る。
<Detection of hand shape and movement>
First, as a method for detecting the hand that has been put out before, there is a method using skin color information. In general, a region close to skin color is extracted from the captured image and binarized based on the premise that the hand is skin color. In principle, there is a problem of false detection when the user wears gloves and the hand color is not skin color, or there is something close to skin color such as a human face behind, but the hand moves fast Even if it can be detected.

また別の方法としては、赤外線LEDの発光制御と、被写体との距離が近いほど赤外線の反射レベルが大きくなることを利用し、距離画像から前に出した手の領域を2値化画像として検出することが出来る。この方法では速い手の動きを検出することが苦手であるが、背景に人の顔など肌色に近い物が存在する場合でも正しく手を検出できるという利点がある。   As another method, using the infrared LED emission control and the fact that the infrared reflection level increases as the distance from the subject is closer, the hand area that is put forward from the distance image is detected as a binarized image. I can do it. This method is not good at detecting fast hand movements, but has the advantage that the hand can be detected correctly even when there is an object close to skin color such as a human face in the background.

図11は、上記の様な手法を用いて前に出した手を検出した2値化画像である。図11(A)のような2値化画像を検出すると、これから筆記の方向を検出するために手のひらの位置検出処理を行い、さらに筆記の開始から終了までの入力期間を検出するために手の形状判定処理を行う。以下、これらの処理について説明する。   FIG. 11 is a binarized image in which the hand that has been put out previously is detected using the above-described method. When a binarized image as shown in FIG. 11A is detected, palm position detection processing is performed in order to detect the direction of writing, and hand input is detected in order to detect an input period from the start to the end of writing. Perform shape determination processing. Hereinafter, these processes will be described.

手のひらの位置検出には重心が利用されることが多いが、腕が露出している場合には腕の伸びた方向に重心が移動してしまうため、正確な手のひらの位置を検出することが出来ない。そこで、一般的に前に出した手のひらの2値化領域は腕の2値化領域の幅よりも広くなることを利用する。例えば、図11(B)のように2値化領域の端からの距離が最大となる点を求め、この位置を手のひらの中心とする。そして、手のひら中心の移動ベクトルをコード化して筆記コードデータ524とする。このようにCPU30は、手指の位置を検出する位置検出手段として機能する。   The center of gravity is often used to detect the position of the palm, but if the arm is exposed, the center of gravity moves in the direction in which the arm extends, so the exact palm position can be detected. Absent. Therefore, it is generally used that the binarized region of the palm that has been put forward is wider than the width of the binarized region of the arm. For example, as shown in FIG. 11B, a point having the maximum distance from the end of the binarized area is obtained, and this position is set as the center of the palm. Then, the movement vector at the center of the palm is encoded to be written code data 524. In this way, the CPU 30 functions as a position detection unit that detects the position of the finger.

手の形状判定処理では、一例として手を握った状態と開いた状態を判定する。上述の方法で検出した手のひらの中心を利用し、図11(C)に示すように、手のひら中心の位置より上側にある2値化領域に対して評価パラメータを求める。評価パラメータは、2値化領域の面積や2値化領域に外接する矩形又は円の面積、2値化領域の周囲長などである。手を握ると、手を開いた時に比べて(外接面積/2値化面積)や(周囲長/2値化面積)が小さくなるため、これらのパラメータを評価することによって形状判定が可能である。このように、CPU30は手指の形状を検出する形状検出手段としての機能も有し、手指の形状から入力期間と移行期間を検出する。   In the hand shape determination process, for example, a state in which the hand is held and a state in which the hand is opened are determined. Using the palm center detected by the above-described method, as shown in FIG. 11C, an evaluation parameter is obtained for a binarized region located above the palm center position. The evaluation parameters are the area of the binarized area, the area of a rectangle or circle circumscribing the binarized area, the perimeter of the binarized area, and the like. When the hand is held, (circumscribed area / binarized area) and (peripheral length / binarized area) are smaller than when the hand is opened. Therefore, the shape can be determined by evaluating these parameters. . As described above, the CPU 30 also has a function as a shape detection unit that detects the shape of the finger, and detects the input period and the transition period from the shape of the finger.

すなわち、実施の形態2の文字認識装置は、使用者の手指を撮像する撮像手段(カメラ40)をさらに備え、入力期間検出手段は、撮像手段によって撮像した手指の形状を検出する形状検出手段を備え、形状検出手段の検出結果に基づいて入力期間と前記移行期間とを検出し、移動検出手段は、前記撮像手段によって撮像した手指の位置を検出する位置検出手段を備え、位置検出手段が検出する手指の位置変化から移動ベクトルを検出する。使用者は手にデバイスを持たずに空中に文字を筆記し、環境側に設置したカメラを利用して文字を認識するため、デバイスを持つ場合に比べてさらに自由度が高く便利な空中手書き入力が実現できる。   That is, the character recognition device according to the second embodiment further includes an imaging unit (camera 40) that images the user's finger, and the input period detection unit includes a shape detection unit that detects the shape of the finger captured by the imaging unit. An input period and the transition period are detected based on a detection result of the shape detection unit, and the movement detection unit includes a position detection unit that detects a position of a finger imaged by the imaging unit, and the position detection unit detects The movement vector is detected from the position change of the finger to be performed. The user writes the characters in the air without holding the device in his hand and recognizes the characters using the camera installed on the environment side, so the handwriting input in the air is more flexible and convenient than with a device. Can be realized.

なお、実施の形態1,2の文字認識装置は種々の用途に応用できる。例えば本発明をナビゲーションシステム等の車載機器に応用すると、運転者がハンドル横に手をかざし空中で一筆書きしたその動きをカメラで検出することによって文字入力が実現され、目的地設定や地名検索に利用できる。そのため、従来は50音で表示したタッチパネルを押すために視線をタッチパネルに向ける必要があったが、視線をそらすことなく文字入力が簡単かつ安全に行える。また、本発明をAV機器に応用すると、空中で一筆書きした動きをカメラで検出することにより文字入力が実現でき、予約番組検索や記録コンテンツ検索さらにはインターネット検索等に利用できる。そのため、従来の50音が表示されたアイコンを上下左右ボタンの操作で設定する方法や携帯電話で用いられる入力方法等に比べ、一筆書きで字を書くことから直感的で使い易い文字入力が実現できる。また、リモコンに本発明を適用すれば、カメラ内蔵のリモコンを机などに置き、その前で手を動かすことによって入力したり、リモコン自体を手で持って一筆書きすることにより入力することも可能である。これらの文字入力は、過去の履歴やコンテクストを利用した推論機能と組み合わせることにより、さらに効果を発揮する。   Note that the character recognition devices of the first and second embodiments can be applied to various uses. For example, when the present invention is applied to an in-vehicle device such as a navigation system, character input is realized by detecting the movement of the driver who draws a stroke in the air with his hand next to the handle, and for destination setting and name search Available. For this reason, conventionally, it has been necessary to direct the line of sight to the touch panel to press the touch panel displayed with 50 sounds, but character input can be performed easily and safely without diverting the line of sight. In addition, when the present invention is applied to an AV device, character input can be realized by detecting a stroke drawn in the air with a camera, and it can be used for reserved program search, recorded content search, and Internet search. Therefore, compared to the conventional method of setting icons with 50 sounds displayed by operating the up / down / left / right buttons and the input method used on mobile phones, it is possible to input characters intuitively and easily by writing with a single stroke. it can. In addition, if the present invention is applied to a remote control, it is possible to input by moving the hand in front of the remote control with a built-in camera on the desk, etc., or by writing with one hand holding the remote control itself It is. These character inputs are more effective when combined with an inference function using past history and context.

<効果>
実施の形態2の文字認識装置によれば、既に述べたとおり以下の効果を奏する。すなわち、文字認識装置は、使用者の手指を撮像する撮像手段(カメラ40)をさらに備え、入力期間検出手段は、撮像手段によって撮像した手指の形状を検出する形状検出手段を備え、形状検出手段の検出結果に基づいて入力期間と前記移行期間とを検出し、移動検出手段は、前記撮像手段によって撮像した手指の位置を検出する位置検出手段を備え、位置検出手段が検出する手指の位置変化から移動ベクトルを検出する。使用者は手にデバイスを持たずに空中に文字を筆記し、環境側に設置したカメラを利用して文字を認識するため、デバイスを持つ場合に比べてさらに自由度が高く便利な空中手書き入力が実現できる。
<Effect>
According to the character recognition device of the second embodiment, the following effects can be obtained as described above. That is, the character recognition device further includes an imaging unit (camera 40) that images the user's finger, and the input period detection unit includes a shape detection unit that detects the shape of the finger imaged by the imaging unit. The movement detection means includes a position detection means for detecting the position of the finger imaged by the imaging means, and the position change of the finger detected by the position detection means is detected based on the detection result of The movement vector is detected from The user writes the characters in the air without holding the device in his hand and recognizes the characters using the camera installed on the environment side, so the handwriting input in the air is more flexible and convenient than with a device. Can be realized.

10,90 入力システム、12,92 文字入力装置、14 筐体、16 スイッチ、30 CPU、36 RAM、40 カメラ、500 メイン処理プログラム、502 手指の動き検出プログラム、504 コード化プログラム、506 文字特定プログラム、508 文字入力プログラム、520 辞書コードデータ、522 方向データ、524 筆記コードデータ、526 評価用テーブルデータ、528 筆記中フラグ。   10,90 input system, 12,92 character input device, 14 housing, 16 switch, 30 CPU, 36 RAM, 40 camera, 500 main processing program, 502 finger motion detection program, 504 encoding program, 506 character identification program 508, character input program, 520 dictionary code data, 522 direction data, 524 writing code data, 526 evaluation table data, 528 writing flag.

Claims (5)

使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段と、
手指の移動を移動ベクトルとして検出する移動検出手段と、
前記入力期間中、前記移動検出手段で検出した前記移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータを取得する筆記コードデータ取得手段と、
各文字を正しい書き順および筆運びで筆記した場合に発生する前記移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した辞書コードデータを記憶する辞書コードデータ記憶手段と、
前記筆記コードデータと前記辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段と、を備える文字認識装置。
An input period detecting means for detecting an input period for writing a character and a transition period for moving to the next character according to a predetermined operation of the user;
Movement detection means for detecting movement of a finger as a movement vector;
During the input period, the movement vector detected by the movement detection unit is coded including a transition part to the next image, and the writing code data acquisition unit acquires the writing code data compressed according to time series;
A dictionary code data storage means for storing the dictionary code data that is coded in accordance with the time series by encoding the movement vector generated when writing each character in the correct writing order and stroke, including the transition to the next picture ,
A character recognition device comprising: a specifying unit that compares the writing code data with the dictionary code data and specifies a character written by a user.
使用者の手指を撮像する撮像手段をさらに備え、
前記入力期間検出手段は、前記撮像手段によって撮像した手指の形状を検出する形状検出手段を備え、前記形状検出手段の検出結果に基づいて前記入力期間と前記移行期間とを検出し、
前記移動検出手段は、前記撮像手段によって撮像した手指の位置を検出する位置検出手段を備え、前記位置検出手段が検出する手指の位置変化から前記移動ベクトルを検出することを特徴とする、請求項1に記載の文字認識装置。
It further comprises imaging means for imaging the user's fingers,
The input period detection means includes a shape detection means for detecting the shape of a finger imaged by the imaging means, detects the input period and the transition period based on a detection result of the shape detection means,
The movement detection unit includes a position detection unit that detects a position of a finger imaged by the imaging unit, and detects the movement vector from a change in a finger position detected by the position detection unit. The character recognition device according to 1.
前記筆記コードデータ取得手段は、前記移動ベクトルの移動量が所定の閾値以下の時に静止状態と判定し、前記所定の閾値より大きい場合に移動方向に従って移動ベクトルをコード化し、
前記所定の閾値は、移動量の履歴に基づいて変更されることを特徴とする、請求項1又は2に記載の文字認識装置。
The writing code data acquisition means determines a stationary state when the movement amount of the movement vector is less than or equal to a predetermined threshold, and encodes the movement vector according to the movement direction when larger than the predetermined threshold,
The character recognition device according to claim 1, wherein the predetermined threshold is changed based on a movement amount history.
前記筆記コードデータ取得手段は、前記移動ベクトルが二つの方向を繰り返す時には繰り返し部分を削除してコード化することを特徴とする、請求項1〜3のいずれかに記載の文字認識装置。   The character recognition apparatus according to claim 1, wherein the writing code data obtaining unit performs coding by deleting repeated portions when the movement vector repeats two directions. コンピュータを、
使用者の所定動作に応じ、文字を筆記する入力期間と次文字に移る移行期間とを検出する入力期間検出手段、
手指の移動を移動ベクトルとして検出する移動検出手段、
前記入力期間中、前記移動検出手段で検出した前記移動ベクトルを次画への移行部分を含めてコード化し、時系列にしたがって圧縮した筆記コードデータを取得する筆記コードデータ取得手段、
前記筆記コードデータと予め準備された辞書コードデータとを比較して使用者が筆記した文字を特定する特定手段、
として機能させる、文字認識プログラム。
Computer
An input period detecting means for detecting an input period for writing a character and a transition period for moving to the next character in accordance with a predetermined operation of the user;
Movement detection means for detecting movement of a finger as a movement vector;
During the input period, the movement vector detected by the movement detection unit is coded including a transition part to the next picture, and the writing code data acquisition unit acquires the writing code data compressed according to time series,
A specifying means for specifying the character written by the user by comparing the writing code data and the dictionary code data prepared in advance;
Character recognition program that functions as
JP2009181632A 2009-08-04 2009-08-04 Character recognition device, character recognition program Active JP5495657B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009181632A JP5495657B2 (en) 2009-08-04 2009-08-04 Character recognition device, character recognition program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009181632A JP5495657B2 (en) 2009-08-04 2009-08-04 Character recognition device, character recognition program

Publications (3)

Publication Number Publication Date
JP2011034437A true JP2011034437A (en) 2011-02-17
JP2011034437A5 JP2011034437A5 (en) 2012-09-06
JP5495657B2 JP5495657B2 (en) 2014-05-21

Family

ID=43763431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009181632A Active JP5495657B2 (en) 2009-08-04 2009-08-04 Character recognition device, character recognition program

Country Status (1)

Country Link
JP (1) JP5495657B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017149172A (en) * 2016-02-22 2017-08-31 マツダ株式会社 Control device of automobile

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02157986A (en) * 1988-12-09 1990-06-18 Nec Corp Recognizing character type designating system
JPH04195670A (en) * 1990-11-28 1992-07-15 Toshiba Corp Handwritten character recognizing japanese syllabary to chinese character conversion system
JPH06243297A (en) * 1993-01-27 1994-09-02 Internatl Business Mach Corp <Ibm> Method and equipment for automatic handwritten character recognition using static and dynamic parameter
JPH08211979A (en) * 1995-02-02 1996-08-20 Canon Inc Hand shake input device and method
JPH09153115A (en) * 1995-11-29 1997-06-10 Ricoh Co Ltd Pattern recognition device
JPH11143868A (en) * 1997-11-07 1999-05-28 Toshiba Corp Character recognition device, input control method and storage medium
JP2002259046A (en) * 2001-02-28 2002-09-13 Tomoya Sonoda System for entering character and symbol handwritten in air
JP2004152040A (en) * 2002-10-31 2004-05-27 Hitachi Ltd Handwriting input device, program, and handwriting input method system
JP2008108051A (en) * 2006-10-25 2008-05-08 Funai Electric Co Ltd Video recording and reproducing device, and character input system

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02157986A (en) * 1988-12-09 1990-06-18 Nec Corp Recognizing character type designating system
JPH04195670A (en) * 1990-11-28 1992-07-15 Toshiba Corp Handwritten character recognizing japanese syllabary to chinese character conversion system
JPH06243297A (en) * 1993-01-27 1994-09-02 Internatl Business Mach Corp <Ibm> Method and equipment for automatic handwritten character recognition using static and dynamic parameter
JPH08211979A (en) * 1995-02-02 1996-08-20 Canon Inc Hand shake input device and method
JPH09153115A (en) * 1995-11-29 1997-06-10 Ricoh Co Ltd Pattern recognition device
JPH11143868A (en) * 1997-11-07 1999-05-28 Toshiba Corp Character recognition device, input control method and storage medium
JP2002259046A (en) * 2001-02-28 2002-09-13 Tomoya Sonoda System for entering character and symbol handwritten in air
JP2004152040A (en) * 2002-10-31 2004-05-27 Hitachi Ltd Handwriting input device, program, and handwriting input method system
JP2008108051A (en) * 2006-10-25 2008-05-08 Funai Electric Co Ltd Video recording and reproducing device, and character input system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017149172A (en) * 2016-02-22 2017-08-31 マツダ株式会社 Control device of automobile

Also Published As

Publication number Publication date
JP5495657B2 (en) 2014-05-21

Similar Documents

Publication Publication Date Title
US11755137B2 (en) Gesture recognition devices and methods
US9746934B2 (en) Navigation approaches for multi-dimensional input
US10001838B2 (en) Feature tracking for device input
US10209881B2 (en) Extending the free fingers typing technology and introducing the finger taps language technology
US8754745B2 (en) Method and electronic apparatus for creating biological feature data
KR100630806B1 (en) Command input method using motion recognition device
US20070018966A1 (en) Predicted object location
US20130069867A1 (en) Information processing apparatus and method and program
US9746929B2 (en) Gesture recognition using gesture elements
EP2626813B1 (en) Apparatus and method for guiding handwriting input for handwriting recognition
JP2020067999A (en) Method of virtual user interface interaction based on gesture recognition and related device
EP4307096A1 (en) Key function execution method, apparatus and device, and storage medium
US20170192465A1 (en) Apparatus and method for disambiguating information input to a portable electronic device
Chiang et al. Recognizing arbitrarily connected and superimposed handwritten numerals in intangible writing interfaces
JP2007200186A (en) Character recognition device and character recognition program
CN104714736A (en) Control method and terminal for quitting full screen lock-out state
JP5495657B2 (en) Character recognition device, character recognition program
CN111782041A (en) Typing method and device, equipment and storage medium
JP2016095795A (en) Recognition device, method, and program
WO2019134606A1 (en) Terminal control method, device, storage medium, and electronic apparatus
KR102310385B1 (en) System and method for superimposed handwriting recognition technology
JP2020173494A (en) Handwritten character recognizing device and handwritten character recognizing method
KR102252658B1 (en) Method of managing input of touchpad using LIDAR sensor and notebook computer using thereof
WO2021161769A1 (en) Information processing device, information processing method, and program
Hsieh et al. A fingertip extraction method and its application to handwritten alphanumeric characters recognition

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120723

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130813

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140304

R150 Certificate of patent or registration of utility model

Ref document number: 5495657

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250