JP2009163482A - Authentication device, authentication method, program for making computer function as authentication device and recording medium - Google Patents
Authentication device, authentication method, program for making computer function as authentication device and recording medium Download PDFInfo
- Publication number
- JP2009163482A JP2009163482A JP2008000159A JP2008000159A JP2009163482A JP 2009163482 A JP2009163482 A JP 2009163482A JP 2008000159 A JP2008000159 A JP 2008000159A JP 2008000159 A JP2008000159 A JP 2008000159A JP 2009163482 A JP2009163482 A JP 2009163482A
- Authority
- JP
- Japan
- Prior art keywords
- stroke
- input
- coordinate
- data
- value
- 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.)
- Withdrawn
Links
Images
Landscapes
- Collating Specific Patterns (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
本発明は認証技術に関し、特に、手書き入力された線図により認証を行なう技術に関する。 The present invention relates to an authentication technique, and more particularly, to a technique for performing authentication by a handwritten input diagram.
個人を認証する方法として、4桁の暗証番号を用いて認証する方法がある。一方、最近では、4桁の暗証番号の代わりに、バイオメトリクスによる個人認証装置などが開発されている。このバイオメトリクスによる個人認証の一つとして、手書き入力された署名による認証方法がある。また、手書き入力された署名をコンピュータなどを使い認証する手書き認証装置が開発されている。 As a method of authenticating an individual, there is a method of authenticating using a 4-digit password. On the other hand, recently, a personal authentication device based on biometrics has been developed instead of a 4-digit password. As one of the personal authentication based on biometrics, there is an authentication method based on a signature inputted by handwriting. In addition, a handwriting authentication device that authenticates a handwritten input signature using a computer or the like has been developed.
文字による認証の場合、簡単な文字では特徴が少ないため、真似されやすく、本人でなくても認識されることがある。逆に、複雑な文字が入力されると、特徴となる部分が多く、文字の入力者が本人がであっても、他人と誤認識されることがある。そこで、一般的な手書き文字を用いた個人認証装置では、文字の情報以外に、スピード、筆圧、加速などを総合的に判断し、個人認証を実現している。 In the case of authentication by characters, since simple characters have few features, they are easily imitated and may be recognized even if they are not themselves. On the other hand, when complex characters are input, there are many characteristic portions, and even if the person who entered the characters is the person himself, it may be mistakenly recognized as another person. Therefore, in a personal authentication device using general handwritten characters, personal authentication is realized by comprehensively determining speed, writing pressure, acceleration, and the like in addition to character information.
たとえば、特開2002−140709号公報(特許文献1)は、ペン入力による個人認証方法に関して、ペン入力データと筆圧データを用いて個人認証を行なう技術を開示している。
しかしながら、特開2002−140709号公報に開示された技術によると、筆圧データを取得するために、圧力センサを必要とする。そのため、認証装置の構成が複雑になる恐れがあった。また、入力にペンを必要とすると、ペン操作に不慣れな人にとっては、操作性が低下する可能性もある。 However, according to the technique disclosed in Japanese Patent Application Laid-Open No. 2002-140709, a pressure sensor is required to acquire writing pressure data. For this reason, the configuration of the authentication device may be complicated. Moreover, if a pen is required for input, the operability may be reduced for a person who is not accustomed to pen operation.
本発明は、上述のような問題点を解決するためになされたものであって、その目的は、構成を複雑にすることなく手書き入力に基づく認証処理を行なうことができる認証装置を提供することである。他の目的は、指入力に基づく認証処理を行なうことができる認証装置を提供することである。 The present invention has been made to solve the above-described problems, and an object of the present invention is to provide an authentication device capable of performing authentication processing based on handwritten input without complicating the configuration. It is. Another object is to provide an authentication device capable of performing authentication processing based on finger input.
他の目的は、手書き入力に基づいて認証を行なうための認証方法を提供することである。他の目的は、指入力に基づく認証を行なうための認証方法を提供することである。 Another object is to provide an authentication method for performing authentication based on handwritten input. Another object is to provide an authentication method for performing authentication based on finger input.
他の目的は、手書き入力に基づいて認証を行なうための認証装置としてコンピュータを機能させるためのプログラムを提供することである。他の目的は、指入力に基づく認証を行なうための認証装置としてコンピュータを機能させるためのプログラムを提供することである。 Another object is to provide a program for causing a computer to function as an authentication device for performing authentication based on handwritten input. Another object is to provide a program for causing a computer to function as an authentication device for performing authentication based on finger input.
他の目的は、手書き入力に基づいて認証を行なうための認証装置としてコンピュータを機能させるためのプログラムを格納した記録媒体を提供することである。他の目的は、指入力に基づく認証を行なうための認証装置としてコンピュータを機能させるためのプログラムを格納した記録媒体を提供することである。 Another object is to provide a recording medium storing a program for causing a computer to function as an authentication device for performing authentication based on handwritten input. Another object is to provide a recording medium storing a program for causing a computer to function as an authentication device for performing authentication based on finger input.
上記の課題を解決するために、この発明のある局面に従うと、手書き入力されたパスワードの認証を行う認証装置が提供される。この認証装置は、予め入力されたテンプレートを格納するテンプレート記憶部と、1つ以上の点入力を受け付けるように構成された入力装置と、入力装置によって入力が受け付けられた点の座標値を含む座標データを取得するように構成された座標データ取得部と、座標データ取得部によって取得された複数の座標データに基づいて、入力装置に対する入力の始点から終点までを示すストロークの座標値をストロークデータとして算出するように構成されたストローク抽出部と、ストローク抽出部によって算出されたストロークデータに基づいて、ストロークの形状を判定するように構成されたストローク形状判定部と、ストローク抽出部によって算出されたストロークデータに基づいて、入力装置に対する点入力が、同時入力または逐次入力のいずれであるかを判定するように構成されたストローク入力判定部と、ストローク形状判定部による判定結果と、ストローク入力判定部による判定結果とに基づいて、入力装置を介して入力されたストロークと、テンプレートとが、一致するか否かを判定するように構成された照合部とを備える。 In order to solve the above-described problems, according to an aspect of the present invention, an authentication device for authenticating a handwritten password is provided. The authentication device includes a template storage unit for storing a template input in advance, an input device configured to receive one or more point inputs, and coordinates including coordinate values of points received by the input device Based on the coordinate data acquisition unit configured to acquire data and the plurality of coordinate data acquired by the coordinate data acquisition unit, the coordinate value of the stroke indicating from the start point to the end point of the input to the input device is used as stroke data. A stroke extraction unit configured to calculate, a stroke shape determination unit configured to determine the shape of the stroke based on the stroke data calculated by the stroke extraction unit, and a stroke calculated by the stroke extraction unit Based on the data, point input to the input device can be either simultaneous input or sequential input. A stroke input determination unit configured to determine whether a stroke is input, a stroke input via an input device based on a determination result by a stroke shape determination unit, and a determination result by a stroke input determination unit; And a matching unit configured to determine whether or not the template matches.
好ましくは、認証装置は、入力装置に対する入力が行なわれたタイミングを取得するように構成された時計部をさらに備える。座標データ取得部は、入力装置から座標値を取得した時刻と、入力装置によって指示された点の座標値とを、座標データとして取得する。 Preferably, the authentication device further includes a clock unit configured to acquire a timing when an input to the input device is performed. The coordinate data acquisition unit acquires the time when the coordinate value is acquired from the input device and the coordinate value of the point designated by the input device as coordinate data.
好ましくは、認証装置は、座標データ取得部によって取得された各座標データを格納するように構成された座標データ記憶部と、1回の認証に必要な座標データが座標データ記憶手段に格納されたことを検知するように構成された検知部とをさらに備える。座標データ取得部は、1回の認証に必要な座標データが座標データ記憶部に格納された後に、座標データを取得する。 Preferably, the authentication device stores a coordinate data storage unit configured to store each coordinate data acquired by the coordinate data acquisition unit, and coordinate data required for one authentication is stored in the coordinate data storage unit. And a detector configured to detect this. The coordinate data acquisition unit acquires coordinate data after the coordinate data necessary for one authentication is stored in the coordinate data storage unit.
好ましくは、座標データ取得部は、予め定められた間隔で入力装置に与えられた入力に対応する座標値を、予め定められた間隔の時間内に取得する。 Preferably, the coordinate data acquisition unit acquires coordinate values corresponding to inputs given to the input device at a predetermined interval within a predetermined interval.
好ましくは、認証装置は、ストローク抽出部による処理が行なわれたタイミングを取得するように構成された時計部をさらに備える。ストローク抽出部は、ストロークの検出に応答して、または、ストロークの入力の終了に応答して、計時部によって取得されたタイミングをストロークデータに含める。 Preferably, the authentication device further includes a clock unit configured to acquire a timing at which processing by the stroke extraction unit is performed. The stroke extraction unit includes the timing acquired by the time measuring unit in the stroke data in response to the detection of the stroke or in response to the end of the input of the stroke.
好ましくは、認証装置は、ストロークデータに含まれる座標データから、x座標値の最大値およびy座標値の最大値と、x座標値の最小値およびy座標値の最小値とを算出するように構成された座標値算出部をさらに備える。ストローク形状判定部は、x座標値の最大値およびy座標値の最大値と、x座標値の最小値およびy座標値の最小値とに基づいて、ストロークの形状を判断する。 Preferably, the authentication device calculates the maximum value of the x coordinate value and the maximum value of the y coordinate value, and the minimum value of the x coordinate value and the minimum value of the y coordinate value from the coordinate data included in the stroke data. The coordinate value calculation part comprised further is provided. The stroke shape determining unit determines the shape of the stroke based on the maximum value of the x coordinate value and the maximum value of the y coordinate value, and the minimum value of the x coordinate value and the minimum value of the y coordinate value.
好ましくは、ストローク抽出部は、ストロークの開始位置の座標値と、ストロークの終了位置の座標値とを含むストロークデータを算出する。ストローク形状判定部は、開始位置の座標値と、終了位置の座標値とに基づいて、ストロークの形状を判断する。 Preferably, the stroke extraction unit calculates stroke data including the coordinate value of the stroke start position and the coordinate value of the stroke end position. The stroke shape determination unit determines the shape of the stroke based on the coordinate value of the start position and the coordinate value of the end position.
好ましくは、認証装置は、ストロークデータに含まれる座標データから、x座標値の最大値およびy座標値の最大値と、x座標値の最小値およびy座標値の最小値とを求めるように構成された座標算出部をさらに備える。ストローク形状判定部は、x座標値の最大値およびy座標値の最大値とx座標値の最小値およびy座標値の最小値に基づいて、入力装置を介して入力されたストロークの形状が点であるか否かを判断し、ストローク形状判定
部がストロークの形状を点でないと判定すると、照合部は、ストロークを用いた認証処理を実行する。ストローク形状判定部がストロークの形状を点であると判定すると、照合部は、形状を点であると判定したストロークを認証処理に使用しない。
Preferably, the authentication device is configured to obtain a maximum value of the x coordinate value and a maximum value of the y coordinate value, and a minimum value of the x coordinate value and a minimum value of the y coordinate value from the coordinate data included in the stroke data. The coordinate calculation unit is further provided. The stroke shape determination unit calculates the shape of the stroke input via the input device based on the maximum value of the x coordinate value, the maximum value of the y coordinate value, the minimum value of the x coordinate value, and the minimum value of the y coordinate value. If the stroke shape determining unit determines that the stroke shape is not a point, the collating unit executes an authentication process using the stroke. If the stroke shape determination unit determines that the shape of the stroke is a point, the collation unit does not use the stroke whose shape is determined to be a point for authentication processing.
好ましくは、ストローク入力判定部は、複数のストロークデータのストローク開始時刻を比較し、各ストローク開始時刻の差が予め定められた一定値以下の場合に、比較した複数のストロークデータに共通するストローク開始時刻を設定する。 Preferably, the stroke input determination unit compares the stroke start times of a plurality of stroke data, and when the difference between the stroke start times is equal to or less than a predetermined value, the stroke start common to the plurality of stroke data compared. Set the time.
好ましくは、ストローク入力判定部は、複数のストロークデータのストローク終了時刻を比較し、各ストローク終了時刻の差が予め定められた一定値以下の場合に、比較した複数のストロークデータに共通するストローク終了時刻を設定する。 Preferably, the stroke input determination unit compares the stroke end times of the plurality of stroke data, and when the difference between the stroke end times is equal to or less than a predetermined value, the stroke end common to the plurality of compared stroke data Set the time.
好ましくは、ストローク入力判定部は、複数のストロークデータのうちのストロークが入力されている間に、他のストロークが入力されたか否かを判定する。 Preferably, the stroke input determination unit determines whether another stroke is input while a stroke of the plurality of stroke data is input.
好ましくは、入力装置は、複数の撮像素子が配置されたタッチパネルを含む。
この発明の他の局面に従うと、手書き入力されたパスワードの認証をプロセッサが行う認証方法が提供される。この方法は、予め入力されたテンプレートを読み出すステップと、1つ以上の点入力を受け付けるステップと、入力が受け付けられた点の座標値を含む座標データを取得するステップと、取得された複数の座標データに基づいて、入力の始点から終点までを示すストロークの座標値をストロークデータとして算出するステップと、算出されたストロークデータに基づいて、ストロークの形状を判定するステップと、ストロークデータに基づいて、点入力が、同時入力または逐次入力のいずれであるかを判定するステップと、ストローク形状についての判定結果と、点入力についての判定結果とに基づいて、入力されたストロークと、テンプレートとが、一致するか否かを判定するステップとを含む。
Preferably, the input device includes a touch panel on which a plurality of image sensors are arranged.
According to another aspect of the present invention, an authentication method is provided in which a processor authenticates a handwritten password. The method includes a step of reading a template input in advance, a step of receiving one or more point inputs, a step of acquiring coordinate data including coordinate values of the points at which the input is received, and a plurality of acquired coordinates Based on the data, the step of calculating the coordinate value of the stroke indicating from the start point to the end point of the input as stroke data, the step of determining the shape of the stroke based on the calculated stroke data, and the stroke data, Based on the step that determines whether the point input is simultaneous input or sequential input, the determination result for the stroke shape, and the determination result for the point input, the input stroke matches the template Determining whether or not to do so.
この発明の他の局面に従うと、コンピュータを認証装置として機能させるためのプログラムが提供される。このプログラムはコンピュータに、予め入力されたテンプレートを読み出すステップと、1つ以上の点入力を受け付けるステップと、入力が受け付けられた点の座標値を含む座標データを取得するステップと、取得された複数の座標データに基づいて、入力の始点から終点までを示すストロークの座標値をストロークデータとして算出するステップと、算出されたストロークデータに基づいて、ストロークの形状を判定するステップと、ストロークデータに基づいて、点入力が、同時入力または逐次入力のいずれであるかを判定するステップと、ストローク形状についての判定結果と、点入力についての判定結果とに基づいて、入力されたストロークと、テンプレートとが、一致するか否かを判定するステップとを実行させる。 If the other situation of this invention is followed, the program for functioning a computer as an authentication apparatus will be provided. The program reads a pre-input template into a computer, accepts one or more point inputs, obtains coordinate data including the coordinate values of the accepted points, and the obtained plurality A step of calculating, as stroke data, a coordinate value of a stroke indicating from the start point to the end point of the input based on the coordinate data of the step, a step of determining a shape of the stroke based on the calculated stroke data, and based on the stroke data Then, based on the step of determining whether the point input is simultaneous input or sequential input, the determination result for the stroke shape, and the determination result for the point input, the input stroke and the template are And a step of determining whether or not they match.
この発明のさらに他の局面に従うと、上記のプログラムを格納したコンピュータ読み取り可能な記録媒体が提供される。 According to still another aspect of the present invention, a computer-readable recording medium storing the above program is provided.
本発明によると、構成を複雑にすることなく手書き入力に基づく認証処理を行なうことができる。 According to the present invention, authentication processing based on handwritten input can be performed without complicating the configuration.
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description, the same parts are denoted by the same reference numerals. Their names and functions are also the same. Therefore, detailed description thereof will not be repeated.
<第1の実施の形態>
[ハードウェア構成]
図1および図2を参照して、本発明の第1の実施の形態に係る情報処理端末100の構成について説明する。図1は、情報処理端末100の外観を表わす図である。情報処理端末100は、筐体110と、アンテナ120と、スピーカ130と、タッチパネル140と、ボタン150と、マイク160と、LED(Light Emitting Diode)170とを備える。
<First Embodiment>
[Hardware configuration]
With reference to FIG. 1 and FIG. 2, the configuration of the
ある局面において、情報処理端末100は、ノートブック型パーソナルコンピュータ、携帯電話、PDA(Personal Digital Assistant)その他の携帯型の情報処理端末、あるいは、ATM(Automated Teller Machine)、クレジットカードの認証装置その他の商業施設に配置される情報処理装置としても実現される。
In one aspect, the
図2は、情報処理端末100のハードウェア構成を表わすブロック図である。情報処理端末100は、図1に示される構成に加えて、表示装置212と、プロセッサ230と、表示ドライバ214と、フラッシュメモリ250と、RAM(Random Access Memory)252と、グラフィックメモリ254と、ROM(Read Only Memory)256と、通信回路260と、信号処理回路270と、バイブレータ280とを備える。タッチパネル140は、複数のCMOS(Complementary Metal-Oxide Semiconductor)撮像素子220を含む。タッチパネル140と表示装置212とは、表示部210を構成する。
FIG. 2 is a block diagram showing a hardware configuration of
なお、本実施の形態においては、認証機能はプロセッサ230によって実現されるものとして説明する。しかしながら、他の局面において、認証機能を実現するためのハードワイヤード回路が、通常の処理を実行するプロセッサとは別個に構成されてもよい。
In the present embodiment, the authentication function is described as being realized by the
タッチパネル140は、情報処理端末100に対する操作入力を受け付ける。タッチパネル140に並べられている各CM0S撮像素子220は、光信号に基づいて光電変換し、変換後の信号をプロセッサ230に送出する。
The
プロセッサ230は、情報処理端末100の動作を制御する。プロセッサ230は、情報処理端末100の認証機能を実現する。より詳しくは、プロセッサ230は、タッチパネル140に与えられた入力操作によって特定される点の座標値を含む座標データを取得する。プロセッサ230は、その座標データに基づいて、タッチパネル140における入力の始点から終点を示すストロークの座標値であるストロークデータを算出する。プロセッサ230は、その算出したストロークデータに基づいて当該ストロークの形状を判定する。プロセッサ230は、その算出したストロークデータに基づいて、タッチパネル140に対する入力が同時入力または逐次入力のいずれであるかを判定する。プロセッサ230は、その判定結果と、ストロークの形状についての判定結果とに基づいて、タッチパネル140に対して入力されたストロークと、フラッシュメモリ250に予め格納されているテンプレートとが一致するか否かを判定する。
The
フラッシュメモリ250は、上述のテンプレートを格納するとともに、情報処理端末100に対して与えられたデータあるいはプロセッサ230によって生成されたデータを不揮発的に保持する。
The
RAM252は、プロセッサ230によって生成されたデータを一時的に保持する。
グラフィックメモリ254は、タッチパネル140の背面に配置されている表示装置212において画像を表示するためのデータを保持する。なお、他の局面において、RAM252とグラフィックメモリ254とが一体として構成されていてもよい。
The
The
ROM256は、情報処理端末100を作動させるためのファームウェア、認証処理プログラムその他のプログラムと、情報処理端末100に固有の動作を実行させるために設定値として予め入力されたデータとを保持している。
The
表示ドライバ214は、グラフィックメモリ254に格納されているデータに基づいて描画動作を表示装置212に対して実行する。表示装置212は、その動作に従って画像を表示する。この画像は、タッチパネル140を介して情報処理端末100の使用者に視認される。
The
通信回路260は、アンテナ120によって受信されて信号を変換し、変換後の信号をプロセッサ230に送出する。また他の局面において、通信回路260は、プロセッサ230から送られた信号を送信用の信号に変換し、変換後の信号をアンテナ120に送出する。
The
信号処理回路270は、マイク160から送られる電気信号を変換し変換後の信号をプロセッサ230に送出する。また、情報処理端末100が音声を出力する場合には、信号処理回路270は、プロセッサ230から送られた信号を音声出力用の信号に変換し、その変化後の信号をスピーカ130に送出する。スピーカ130は、その信号に基づき音声を出力する。
The
バイブレータ280は、プロセッサ230から送られる信号に基づいて予め規定された振動パターンで発振する。
[機能ブロック]
図3は、情報処理端末100によって実現される機能の構成を表わすブロック図である。情報処理端末100は、座標入力部301と、ストローク抽出部302と、ストローク形状判定部303と、ストローク入力判定部304と、照合部305とを備える。
[Function block]
FIG. 3 is a block diagram showing a configuration of functions realized by
座標入力部301は、多点入力可能なポインティングデバイスを含む。座標入力部301は、ポインティングデバイスから入力される点あるいは線の座標値を処理し、当該処理によって生成したデータを座標データとしてストローク抽出部302に転送する。
The coordinate
ストローク抽出部302は、座標入力部301からの座標データに基づいて、ポインティングデバイスにおいて一筆で書かれた線を抽出する。このような線には、直線、曲線のいずれもが含まれ得る。以降、この一筆の線をストロークと呼ぶ。
Based on the coordinate data from the coordinate
ストローク抽出部302は、当該ストローク毎に抽出したデータをグループ化する。以降、このグループ化されたデータをストロークデータという。ストローク抽出部302は、ストローク形状判定部303やストローク入力判定部304にこのストロークデータを送出する。
The
ストローク形状判定部303は、入力されたストロークデータごとに、ストロークの形状を判定し、その判定の結果を照合部305に送出する。当該判定の結果は、ストロークの形状がどのような形状をしているかを示すデータを含む。
The stroke
ストローク入力判定部304は、複数のストロークデータが座標入力部301に入力された場合において、当該複数のストロークデータが同時に入力されたものであるか、あるいは逐次的に入力されたものであるかを判定する。なお、本実施の形態における「同時」とは、完全に同一の時刻に限るものではなく、多少の先後(時間の幅)を含み得る。
When a plurality of stroke data are input to the coordinate
照合部305は、情報処理端末100に予め登録されている本人のテンプレート306と、ストローク形状判定部303による判定結果およびストローク入力判定部304による判定結果とを比較し、ポインティングデバイスに対して文字、図形その他の入力を行なった人物が、情報処理端末100の本人であるかを判定し、その判定の結果を出力する。
The
[多点入力可能なポインティングデバイス]
本発明は、多点入力可能なポインティングデバイスを利用していることが特徴である。そこで、図4を参照して、本発明の実施の形態に係る多点入力可能なポインティングデバイスを用いた入力について説明する。図4は、ポインティングデバイスに複数の入力が行なわれた状態を表わす図である。
[Pointing device that can input multiple points]
The present invention is characterized by using a pointing device capable of multipoint input. Therefore, referring to FIG. 4, input using a pointing device capable of multipoint input according to an embodiment of the present invention will be described. FIG. 4 is a diagram illustrating a state in which a plurality of inputs are performed on the pointing device.
一例として、水平で平行な2本の線をポインティングデバイス上に書く場合を説明する。単なる水平で平行な2本線を描く場合、図4(A)に示されるように平行線410,412が入力される。この場合、従来の技術にあるような、1点の入力デバイスが想定されたペン入力の文字認証では、文字入力時のストロークの違いを考慮して、書き方は図4(B)〜図4(E)の4通り考えられる。
As an example, a case will be described in which two horizontal and parallel lines are written on the pointing device. When simply drawing two horizontal and parallel lines,
図4(B)は、直線420,422を左から右に入力した場合を表わす図である。図4(C)は、直線430,432を右から左に入力した場合を表わす図である。図4(D)は、直線440を左から右に、直線422を右から左に入力した場合を表わす図である。図4(E)は、直線450を右から左に、直線452を左から右に入力した場合を表わす図である。
FIG. 4B shows a case where
この時、上下の組み合わせとして、上側の線を先に、下側の線を後に書く場合と、下側の線を先に書いた後、上側の線を書く場合が考えられるため、合計8通りの書き方がある。本実施の形態に係る多点入力可能なポインティングデバイスを使用すれば、この従来の1点入力方式に加えて、図4(B)から図4(E)の2本線を同時に書くという入力方法も考えられる。したがって、合計12通りの書き方が考えられる。 At this time, the upper and lower lines can be combined with the upper line first, the lower line written later, and the lower line written first, then the upper line written, so there are a total of 8 patterns. There is a way of writing. If the pointing device according to the present embodiment is capable of multi-point input, in addition to the conventional one-point input method, an input method of simultaneously writing the two lines shown in FIGS. 4 (B) to 4 (E) is also possible. Conceivable. Therefore, a total of 12 ways of writing can be considered.
このように、多点入力可能なポインティングデバイスを用いることにより、従来の1点入力のポインティングデバイスに比べて、簡単な図形でも数多くの入力方法が出来るという効果がある。 As described above, by using a pointing device capable of multipoint input, there is an effect that a large number of input methods can be performed even with simple figures as compared with a conventional one-point input pointing device.
多点入力可能なポインティングデバイスは、一例として、CCD(Chare Coupled Device)やCMOSイメージャーのように、フォトダイオードをタッチパネルに並べることにより構成される。このような構成を有するポインティングデバイスは、そのフォトダイオードにチャージされる電荷の変化から、ポインティングされている座標を求めることができる。また、フォトダイオードの密度を高めれば、パネル上の影データを取得でき、画像処理によって、より正確にポインティング座標を取得することができる。これらの方法を使うと、従来の抵抗膜方式のタッチパネルではできなかった多点入力が可能となる。また、他の局面において、パネルの下(背面)からカメラで画像を撮影して、画像処理を行なうことによっても多点入力を検出することができる。 As an example, a pointing device capable of multipoint input is configured by arranging photodiodes on a touch panel like a CCD (Chare Coupled Device) or a CMOS imager. The pointing device having such a configuration can obtain the coordinate at which the pointing is performed from the change in the electric charge charged in the photodiode. If the density of the photodiodes is increased, shadow data on the panel can be acquired, and pointing coordinates can be acquired more accurately by image processing. When these methods are used, multipoint input that cannot be performed by a conventional resistive touch panel can be performed. In another aspect, multipoint input can also be detected by taking an image with a camera from the bottom (back side) of the panel and performing image processing.
[座標入力部]
座標入力部301は、多点入力可能なポインティングデバイスにおいて入力されている(「ポインティングされている」ともいう。)点の座標データを一定時間ごとに取得する。ここでポインティングの操作は、一点を押下する操作と、押下した状態でなぞる操作(線入力を行なう操作)とのいずれも含み得る。取得した座標データは、x座標値とy座標値に加えて、ポインティングデバイスにおいてポインティングされた時刻(押下によって入力された時刻)の情報(以下「ポインティング時刻」という)も含む。
[Coordinate input section]
The coordinate
たとえば、タッチパッドのような一点入力のポインティングデバイスでは、プロセッサが取得した座標データを取得した順に従って並べることにより、ポインティングされた順序を知ることができる。しかし、多点入力可能なポインティングデバイスでは、複数の入力操作が行なわれたタイミングに関し、プロセッサは、各入力操作が同時に行なわれたのか、あるいは、1つの入力操作の後に次の入力操作が行なわれたのかを判定するために、時刻の情報が必要である。ここでいう時刻の情報は、絶対的な時刻のみに限られるものではない。すなわち、当該時刻の情報は、ポインティングされた各点が同時に入力されたのか、あるいは逐次入力されたのかを判定することができる情報であればよく、たとえば、インデックスのようなカウンタ値であってもよい。あるいは、他の局面において、座標入力部を構成するイメージセンサによって取得されるフレームの切れ目を示す記号が、逐次入力が行なわれたことを示す情報として使用されてもよい。 For example, in a one-point input pointing device such as a touchpad, the coordinated order obtained by the processor is arranged in the order obtained, and the pointing order can be known. However, in a pointing device capable of multi-point input, regarding the timing when a plurality of input operations are performed, the processor determines whether each input operation is performed simultaneously or the next input operation is performed after one input operation. In order to determine whether or not the time has elapsed, time information is required. The time information here is not limited to absolute time only. That is, the time information only needs to be information that can determine whether the pointed points are input simultaneously or sequentially. For example, the time information may be a counter value such as an index. Good. Alternatively, in another aspect, a symbol indicating a frame break acquired by an image sensor constituting the coordinate input unit may be used as information indicating that the sequential input has been performed.
また、さらに他の局面において、座標入力部301は、座標データに時刻情報を含めなくてもよい。この場合、座標入力部301は、1フレーム毎に処理を実行して処理結果を出力し、ストローク抽出部302のような後段部が当該処理結果と時刻データとを関連付けてもよい。
In still another aspect, the coordinate
図5は、時刻t1に(x1,y1)がポインティングされ、時刻t2に(x2a,y2a)と(x2b,y2b)が入力され、時刻t3に(x3,y3)が入力された例を表わす図である。この時、座標データに時刻情報を含めると、時刻t1から時刻t3における各座標データは、(x1,y1,t1)、(x2a,y2a,t2)、(x2b,y2b,t2)、(x3,y3,t3)となる。 FIG. 5 shows an example in which (x1, y1) is pointed at time t1, (x2a, y2a) and (x2b, y2b) are input at time t2, and (x3, y3) is input at time t3. It is. At this time, if time information is included in the coordinate data, each coordinate data from time t1 to time t3 is (x1, y1, t1), (x2a, y2a, t2), (x2b, y2b, t2), (x3, y3, t3).
また、図5に示される例に対して、フレームの切れ目を示す記号を(−1,−1)という値に設定した場合、各座標データは、(x1,y1)、(−1,−1)、(x2a,y2a,t2)、(x2b,y2b,t2)、(−1,−1)、(x3,y3,t3)となる。 Further, in the example shown in FIG. 5, when the symbol indicating the frame break is set to a value of (−1, −1), each coordinate data is (x1, y1), (−1, −1). ), (X2a, y2a, t2), (x2b, y2b, t2), (-1, -1), (x3, y3, t3).
座標入力部301は、認証するべきストロークの入力が終わるまで、このようにして得られた一連の座標データを全て保持し、各座標データをストローク抽出部302に送出する。
The coordinate
このような一連の座標データは、ポインティングされた時刻順に並べておくことが好ましい。このようにすると、ストローク抽出部302が時刻順に当該一連の座標データを並べ替える必要がないため、ストローク抽出の処理に要する時間を短くすることができる。
Such a series of coordinate data is preferably arranged in the order of the pointed time. In this way, it is not necessary for the
[ストローク抽出部]
次にストローク抽出部302について説明する。ストローク抽出部302は、座標入力部301によって取得された座標データをストロークごとにグループ化する。したがって、ストロークデータは、1個以上の座標データを含むことになる。すなわち、ストロークデータは、1ストロークを表わす。また、ストロークデータは、座標データに加えて、ストローク開始時刻(=ストロークの入力が開始された時刻)、ストローク終了時刻(=ストロークの入力が終了した時刻)、およびストローク終端座標値も含み得る。
[Stroke extraction unit]
Next, the
ストローク抽出部302は、これらのデータを含むストロークデータを生成し、ストローク形状判定部303およびストローク入力判定部304に当該ストロークデータを送出する。
The
なお、ある局面において、ストロークデータは、ストロークの形状を示すストロークタ
イプという情報を含む場合もある。ストロークタイプは、後述するストローク形状判定部303において設定されて、ストロークデータに追加される。
In one aspect, the stroke data may include information called a stroke type indicating the shape of the stroke. The stroke type is set in a stroke
[ストロークデータの詳細]
ストロークデータの詳細について説明する。ある一実施例として、ストロークデータは、(座標データ配列、ストローク開始時刻、ストローク終了時刻)を含む。なお、他の局面において、ストローク形状判定部303がストロークの形状を判定するために、ストローク抽出部302は、ストローク終端座標値をストロークデータに含める場合もある。
[Details of stroke data]
Details of the stroke data will be described. As one embodiment, the stroke data includes (coordinate data array, stroke start time, stroke end time). In another aspect, the
この一実施例において、座標データ配列は、1個以上の座標データを含む。なお、本実施の形態においては、1つの点もストロークとして取り扱う。より詳しくは、座標データは、ポインティングデバイスに対して入力された点の座標値(x,y)を含む。 In this embodiment, the coordinate data array includes one or more coordinate data. In the present embodiment, one point is also handled as a stroke. More specifically, the coordinate data includes the coordinate value (x, y) of the point input to the pointing device.
本実施の形態に係るポインティングデバイスは、一定時間毎に座標値を読み取るため、あるストロークデータには、一定時間毎の座標データが含まれる。なお、ストロークデータの座標データ配列は、多くの場合、(x1,y1)、(x2,y2)、(x3,y3)・・・(xN,yN)のように、複数個(N個)の座標値が含まれる。 Since the pointing device according to the present embodiment reads coordinate values at regular intervals, certain stroke data includes coordinate data at regular intervals. In many cases, the coordinate data array of the stroke data includes a plurality (N) of (x1, y1), (x2, y2), (x3, y3)... (XN, yN). Contains coordinate values.
この時、座標を取得した時刻を座標値とともに座標データ配列に含めてもよい。その時の座標データ配列は、(x1,y1,t1)、(x2,y2,t2)、(x3,y3,t3)・・・(xN,yN,tN)となる。 At this time, the time when the coordinates are acquired may be included in the coordinate data array together with the coordinate values. The coordinate data array at that time is (x1, y1, t1), (x2, y2, t2), (x3, y3, t3)... (XN, yN, tN).
また、さらに他の局面において、ストロークデータには、座標データ配列の要素数Nが含まれてもよい。ストローク抽出部302が座標値を取得した時刻と、要素数Nとがストロークデータに含まれる場合、上記の例では、ストローク開始時刻=t1、ストローク終了時刻=tNとなる。なお、この場合、ストローク開始時刻とストローク終了時刻は、いわゆる当業者にとって自明であるが、冗長なデータともいえるため、ストロークデータとして特別に持つ必要はないが、持っていてもよい。
In yet another aspect, the stroke data may include the number N of elements of the coordinate data array. When the
また、ストローク開始時刻およびストローク終了時刻は、本実施の形態に係る情報処理端末100が起動し始めてからカウントされる通し番号によって表わされる。たとえば、情報処理端末100がスタンバイ状態である時は、プロセッサ230は、カウンタを「0」にリセットし、情報処理端末100の使用者が操作を始めた時(すなわち、情報処理端末100に対する操作が検知された時)から、情報処理端末100はカウントを開始し、そのカウンタを時刻として使用する。この場合、たとえば、カウンタが32ビットの値で表わされるとき、プロセッサ230は、1/30秒ごとに座標値をサンプリングしても、十分な時刻をカウントすることができる。
The stroke start time and the stroke end time are represented by serial numbers that are counted after the
なお、他の局面において、情報処理端末100は、ストローク開始時刻およびストローク終了時刻として、"年月日時分秒"を用いてもよい。この場合、情報処理端末100は、クロックを有し、プロセッサ230は当該クロックの信号に基づいてストローク開始時刻およびストローク終了時刻を取得する。
In another aspect, the
後述するストローク形状判定部303がストロークを曲線であると判定する場合には、ストロークの座標値の推移が必要となり、したがって、ポインティングデバイスに対して行なわれた入力(線入力)の全座標データが必要となる。なお、ストローク形状判定部303が、ストローク開始座標値(ストロークの入力が開始された時の座標値)とストローク終了座標(ストロークの入力が終了した時の座標値)だけで、ストロークの形状を判定する場合には、途中の座標データは不要である。このようにストローク形状判定部303における処理の内容その他ストローク抽出部302の後に続く処理によって、ストローク
データとして必要な情報が変わることになる。
When the stroke
[ストローク抽出の処理]
図6を参照して、本発明の実施の形態に係る情報処理端末100の制御構造について説明する。図6は、ストロークを抽出するためにプロセッサ230が実行する一連の処理の一部を表わすフローチャートである。
[Stroke extraction process]
With reference to FIG. 6, the control structure of
ステップS610にて、プロセッサ230は、ストローク抽出部302として機能するために、初期化処理として、ストローク抽出時の途中結果を格納するためのストロークスタックの内容をクリアする。プロセッサ230は、座標データの入力を受け付けて、当該座標データをストロークスタックに格納する。RAM252あるいはプロセッサ内のレジスタが、ストロークスタックとして使用される。プロセッサ230は、抽出するストロークデータのある全フレームについて、各フレーム毎に図6の処理を繰り返す。本実施の形態において、ある時刻tの同一フレーム内で検出された座標数をNt個とし、また、フレームデータの時刻順に処理を実行するものとする。したがって、プロセッサ230は、当該処理をNt回実行することになる。
In step S610, in order to function as the
ステップS620にて、プロセッサ230は、ストロークスタックに格納されている座標データに基づいて、検出座標(座標データに含まれる座標値)から最も近いストロークデータを検出する。
In step S620,
ステップS630にて、プロセッサ230は、検出座標とストロークデータの終端座標との距離が、予め設定された閾値以下であるか否かを判定する。当該距離が閾値以下である場合には(ステップS630にてYES)、プロセッサ230は、検出座標が、当該フレームの前のフレームから続くストロークにおいて連続する点の座標であると判断し、処理をステップS640に切り換える。一方、当該距離が当該閾値より大きい場合には(ステップS630にてNO)、プロセッサ230は、検出座標がポインティングデバイスに新たに与えられた入力に対応するストロークであると判断し、処理をステップS650に切り換える。
In step S630,
ステップS640にて、プロセッサ230は、検出座標をストロークデータの座標データの最後に追加して、ストローク終端座標を本検出座標の値に更新する。
In step S640,
ステップS650にて、プロセッサ230は、新たなストロークデータとして、検出座標を座標データに追加して、ストローク終端座標を本検出座標の値に更新して、ストローク開始時刻を検出座標のポインティング時刻または現時刻とする。
In step S650, the
ステップS660にて、プロセッサ230は、ループ処理を実行した回数を示すカウンタ値を参照して、同一フレーム内の検出座標数だけ上記の処理を実行したか否かを判定する。上記の処理が検出座標数だけ実行されていない場合、プロセッサ230は、ステップS620以降の処理を再度実行する。したがって、プロセッサ230は、上記の処理を同一フレーム内の検出座標数Nt回繰り返すことになる。
In step S660, the
ステップS670にて、プロセッサ230は、ストロークの入力の終了を検知する。より詳しくは、プロセッサ230は、検出座標による更新が行われなかったストロークデータについて、当該フレームの1時点前の(直前の)フレームでストロークの入力が終了したと判定して、当該ストロークデータをストロークスタックから削除する。したがって、このストロークデータは次のフレームの処理では使用されなくなる。また、プロセッサ230は、検出座標による更新が行なわれたストロークデータを次の処理(ストローク形状判定部303あるいはストローク入力判定部304)に出力する。
In step S670,
このようにして、本発明の実施の形態に係るプロセッサ230は、認証用データを構成する全てのフレームについて、入力された座標データの処理をフレーム単位で実行する。
In this way, the
[ストロークデータの抽出]
図7を参照して、ストロークデータの抽出についてさらに説明する。図7は、一定間隔にポインティングされた点の座標値を取得する際の例を表わす図である。より詳しくは、図7は、時刻t1から時刻t10までの間に10回の座標取得が行われた例を表わす。この例においては、10フレームが含まれている。
[Extract stroke data]
With reference to FIG. 7, the extraction of stroke data will be further described. FIG. 7 is a diagram illustrating an example of acquiring coordinate values of points pointed at a constant interval. More specifically, FIG. 7 shows an example in which coordinate acquisition is performed 10 times from time t1 to time t10. In this example, 10 frames are included.
図7に示されるように、時刻t1、時刻t2の時点では、ポインティングデバイスに対してポインティング(入力操作)が行なわれていない。時刻t3において、ポインティングデバイスの操作領域において左上の位置に対するポインティングによって入力操作が開始され、時刻t9まで、一筆で当該領域の右下斜めの位置に線(直線、曲線のいずれでもよい)が入力されている。そして、時刻t10の時点では、ポインティングデバイスの表示領域から指が離されてポインティングされていない。 As shown in FIG. 7, pointing (input operation) is not performed on the pointing device at time t1 and time t2. At time t3, an input operation is started by pointing to the upper left position in the operation area of the pointing device, and a line (either a straight line or a curve) is input to the lower right diagonal position of the area with a single stroke until time t9. ing. At time t10, the finger is released from the display area of the pointing device and is not pointing.
この時のフレームは、時刻t1から時刻t10の各時刻における画像データのように示されるが、本実施の形態におけるフレームは、「画像データ」そのものではない。 The frame at this time is shown as image data at each time from time t1 to time t10, but the frame in the present embodiment is not “image data” itself.
たとえば、時刻t3におけるフレームは、点Aに対応する座標データ(xA,yA)を含む。時刻t4におけるフレームは、座標データ(xB,yB)を含む。時刻t9におけるフレームは、座標データ(xG,yG)を含む。 For example, the frame at time t3 includes coordinate data (xA, yA) corresponding to the point A. The frame at time t4 includes coordinate data (xB, yB). The frame at time t9 includes coordinate data (xG, yG).
図7に示される例では、一筆で入力された右下斜めに向かう1本の線のみが示されているため、ストロークデータの数は、「1」である。その1つのストロークデータの中身は、以下のように示される。 In the example illustrated in FIG. 7, only one line that is diagonally input to the lower right and is input with one stroke is illustrated, and thus the number of stroke data is “1”. The contents of the one stroke data are shown as follows.
座標データ配列={A,B,C,D,E,F,G}、ストローク開始時刻=t3、ストローク終了時刻=t9。 Coordinate data array = {A, B, C, D, E, F, G}, stroke start time = t3, stroke end time = t9.
すなわち、ある1フレームと、ある1ストロークデータに着目すると、そのフレーム内にストロークデータが1つ含まれるか、もしくは1つも含まれないかのどちらかとなる。 That is, when attention is paid to a certain frame and certain stroke data, either one stroke data is included in the frame or none is included.
図7に示されるような入力がポインティングデバイスに対して行なわれると、時刻t1、t2、t10における各フレーム含まれる座標数は0であり、時刻t3〜t9における各フレームに含まれる座標データは1つである。したがって、プロセッサ230は、時刻t1、t2における各フレームについて、図6に示される処理を実行しても、反復することなく当該処理を終了する。プロセッサ230は、時刻t2におけるフレームに基づいて座標を検出し始め、時刻t9におけるフレームで座標の検出を終了し、これらの各座標に基づいてストロークを検出する。プロセッサ230は、時刻t10において、ストローク(A→B→C→・・・→G)をストロークデータとして、次の処理(ストローク形状判定等)に渡す。
When an input as shown in FIG. 7 is performed on the pointing device, the number of coordinates included in each frame at times t1, t2, and t10 is 0, and the coordinate data included in each frame at times t3 to t9 is 1. One. Therefore, even if the
[ストローク形状の判定]
次に、ストロークの形状の判定について説明する。ストローク形状判定部303は、前段のストローク抽出部302によって抽出されたストロークデータに基づいて、当該ストロークがどのような形状であるかを判定する。当該形状を判定するために、ストローク形状判定部303は、情報処理端末100にテンプレートとして予め格納された複数の形状の各々と、当該ストロークとを比較し、ストロークの特徴部分がどの形状と似ているかを
判定し、最も似ている形状を特定する。ストローク形状判定部303は、この判定結果として、当該最も似ている形状に割り当てられたID(Identification)番号を出力する。あるいは、ストローク形状判定部303は、ストロークデータに、ストロークタイプとして、当該最も似ている形状を表わすID番号を含めてもよい。
[Judgment of stroke shape]
Next, determination of the stroke shape will be described. The stroke
ストロークデータから形状を判定するための一例は、以下のとおりである。
まず、座標入力部301は、入力されたストロークにおけるx座標値の最大値(max
X)、x座標値の最小値(min X)、y座標値の最大値(max Y)、およびy座標値の最小値(min Y)を求める。
An example for determining the shape from the stroke data is as follows.
First, the coordinate
X), the minimum x coordinate value (min X), the maximum y coordinate value (max Y), and the minimum y coordinate value (min Y).
(max X‐min X)の値が縦線幅の閾値以下であって、かつ、(max Y‐min Y)の値が縦線長さの閾値以上であるとき、ストローク形状判定部303は、当該ストロークが縦線である、と判定する。あるいは、(max Y‐min Y)の値が横線幅の閾値以下であって、かつ、(max X‐min X)の値が横線長さの閾値以上であるとき、ストローク形状判定部303は、当該ストロークが横線である、と判定する。この時、ストローク形状判定部303は、当該ストロークの開始座標値と終端座標値に基づいて、縦線または横線の記入方向を判定する。あるいは、ストローク形状判定部303は、当該ストローク内のストローク開始座標値とストローク終端座標値とに基づいて、縦線および横線の判別と、方向の特定とを行なってもよい。
When the value of (max X-min X) is equal to or smaller than the vertical line width threshold value and the value of (max Y-min Y) is equal to or larger than the vertical line length threshold value, the stroke
また、判定の対象は、縦線、横線のような直線に限られない。他の局面において、情報処理端末100は、円形、L字型その他の形状もテンプレートとして格納し、ストローク形状判定部303は、DPマッチングその他のアルゴリズムに基づいて、入力されたストロークがどのパタンにマッチするかを判定するものであってもよい。
Further, the determination target is not limited to a straight line such as a vertical line or a horizontal line. In another aspect, the
本ストローク形状判定部303は、1ストロークのみの形状判定を行うため、文字のように画数の多い文字認識よりも比較的容易に形状のマッチングを行うことができる。
Since the stroke
また、一態様として、情報処理端末100は、予め保持する形状データの一つとして、点のデータを保存していてもよい。
Further, as one aspect, the
他の局面において、ストロークの形状が点と認識された時、そのストロークを使用しない構成が使用されてもよい。たとえば、タッチパネルが入力装置である場合、物がタッチパネルに接触したために、当該使用者が入力を行なっていないにも関わらず、一点も移動しないストロークが検出されることがある。このような、使用者が意図しない入力がポインティングと判断された時には、ストローク形状判定部303は、当該ストロークに基づくストロークデータを無効とする。この場合、当該ストロークデータは、ストロークの形状判定結果より、照合部305による処理の対象から除外されるため、誤判定が防止され、認証精度が向上し得る。
In another aspect, when the shape of the stroke is recognized as a point, a configuration that does not use the stroke may be used. For example, when the touch panel is an input device, a stroke that does not move even though the user is not inputting may be detected because an object touches the touch panel. When it is determined that such an input not intended by the user is pointing, the stroke
[ストローク依存関係]
次に、ストローク入力判定部304について説明する。ストローク入力判定部304は、複数のストロークが入力された場合において、各ストロークが同時に入力されたものであるか、あるいは逐次的に入力されたものであるかを判定する。
[Stroke dependency]
Next, the stroke
ストロークデータは、ストロークの開始時刻と終了時刻とを含んでいる。そこで、ストローク入力判定部304は、このストローク開始時刻とストローク終了時刻とに基づいて、各ストロークが同時に入力されたものであるか、逐次的に入力されたものであるかを識別する。
The stroke data includes a stroke start time and an end time. Therefore, the stroke
(第1の識別方法)
2つのストロークの各ストローク開始時刻の差が、予め規定された一定値以下である場合に、ストローク入力判定部304は、この2つのストロークは同時に入力されたと判定する。この場合、プロセッサ230は、同時に入力されたと判定された当該2つのストロークをグループ化して、1個のストロークとして取り扱う。
(First identification method)
When the difference between the stroke start times of the two strokes is equal to or less than a predetermined constant value, the stroke
より詳しくは、ストローク入力判定部304は、グループ化されたストロークについてのストローク開始時刻とストローク終了時刻とを設定する。たとえば、ストローク入力判定部304は、各ストローク開始時刻のうちのいずれかの開始時刻を、グループ化されたストロークのストローク開始時刻として使用する。同様に、ストローク入力判定部304は、2つのストローク終了時刻のうちのいずれかの時刻を、グループ化されたストロークのストローク終了時刻として使用する。
More specifically, the stroke
なお、グループ化されたストローク開始時刻は、上述の時刻に限られず、2つのストローク開始時刻の間の値であってもよく、単純平均値であってもよく、加重平均値であってもよい。加重平均値が使用される場合の重み係数は、たとえば、ポインティングデバイスの表示領域の位置に応じて予め規定され得る。また、グループ化されたストロークの終了時刻についても、上記のストローク開始時刻と同様に設定される。 The grouped stroke start times are not limited to the above-described times, and may be values between two stroke start times, simple average values, or weighted average values. . The weighting factor when the weighted average value is used can be defined in advance according to the position of the display area of the pointing device, for example. Further, the end time of the grouped strokes is set in the same manner as the above stroke start time.
また、グループ化されたストロークとそれ以外のストロークについても、ストローク入力判定部304は、各々のストローク開始時刻を比較し、ストローク開始時刻の差が一定値以下のとき、これらのストロークが同時に入力されたものであると判断する。
The stroke
そこで、図8を参照して、グループ化されたストロークと、グループ化される前のストロークとの入力のタイミングの判定について説明する。図8は、3つのストロークA,B,Cが、ストローク810,820,830として順に入力された状態を表わす図である。
Therefore, with reference to FIG. 8, the determination of the input timing of the grouped strokes and the strokes before grouping will be described. FIG. 8 is a diagram showing a state in which three strokes A, B, and C are sequentially input as
ストローク入力判定部304は、ストロークAのストローク開始時刻TSaとストロークBのストローク開始時刻TSbとの差(TSa−TSb)を算出する。図8に示される例で、当該差が、同時入力であると判定するために予め設定された閾値THα(以下「同一入力開始判定閾値」ともいう。)より小さいものとする。当該閾値は、情報処理端末100の記憶部(たとえばフラッシュメモリ250)に予め格納されている。
The stroke
この時、ストローク入力判定部304は、ストロークAとストロークBとが同時入力されたものであると判定し、当該ストロークをグループ化したストロークABと特定する。
At this time, the stroke
ストローク入力判定部304は、ストロークABのストローク開始時刻として、ストロークAについてのストローク開始時刻またはストロークBについてのストローク開始時刻のいずれか早い方を選択した場合、ストロークCがストロークABと同一グループではないと判断する。この場合、ストローク入力判定部304は、グループの区別のために、たとえば、ストロークABに割り当てられるグループを識別する番号と異なる番号を、ストロークCに割り当てる。
When the stroke
一方、ストローク入力判定部304が、ストロークABのストローク開始時刻として、同一グループ内のストローク開始時刻のうちの一番遅い時刻を選択した場合、ストロークABの開始時刻はTSbとなり、ストロークCについてのストローク開始時刻とストロークABについてのストローク開始時刻との差は、同一入力判定閾値THα以下となる。したがって、ストローク入力判定部304は、ストロークA、ストロークB、ストロークCが同時に入力されたものであると判定する。
On the other hand, when the stroke
この例のように、ストロークA,ストロークB、ストロークCを同一グループとして分類するためには、ストローク入力判定部304が処理を実行する前に、各ストロークデータがストローク開始時刻順に配列されている必要がある。
As in this example, in order to classify the stroke A, the stroke B, and the stroke C as the same group, the stroke data needs to be arranged in the order of the stroke start time before the stroke
そして、上記のように、グループ化する際のストローク開始時刻あるいはストローク終了時刻の設定方法によって、同じストロークデータでもグループの作られ方が異なる。 Then, as described above, the way in which a group is created differs depending on the setting method of the stroke start time or stroke end time when grouping.
(第2の識別方法)
次に、図9を参照して、第2の識別方法について説明する。図9は、3つのストロークA,B,Cがストローク910,920,930として入力された状態を表わす図である。
(Second identification method)
Next, the second identification method will be described with reference to FIG. FIG. 9 is a diagram illustrating a state in which three strokes A, B, and C are input as
第2の識別方法によると、ストローク終了時刻をもとにグループ化が行なわれる。第1の識別方法では、ストローク入力判定部304は、ストローク開始時刻をもとにグループ化を行なっていた。第2の識別方法によると、ストローク入力判定部304は、ストローク終了時刻の場合も同様に、グループ化を行なう。
According to the second identification method, grouping is performed based on the stroke end time. In the first identification method, the stroke
図9において、3つのストロークA,B,Cを同一の時刻に入力されたストロークと判定するために、各ストロークデータはストローク終了時刻の早い順に並べられる。各ストローク終了時刻の差が予め設定された一定値THβ(以下「同一入力終了判定閾値」ともいう。)以下の時、ストローク入力判定部304は、当該各ストロークが同一の時刻に入力されたものと判定する処理を実行する。ストローク入力判定部304は、2個のストロークが同時に入力されたものであると判定した時、終了時刻が遅い方のストローク終了時刻を当該ストロークグループの終了時刻として設定する。
In FIG. 9, in order to determine that the three strokes A, B, and C are strokes input at the same time, the stroke data are arranged in order of the stroke end time. When the difference between the stroke end times is equal to or less than a preset constant value THβ (hereinafter also referred to as “same input end determination threshold value”), the stroke
(第3の識別方法)
なお、上記の2つの識別方法によると、ストローク開始時刻の順序とストローク終了時刻の順序とが異なる場合に、不都合が生じる可能性がある。そこで、複雑なストローク入力タイミングに対応可能な第3の識別方法を説明する。
(Third identification method)
In addition, according to said two identification method, when the order of stroke start time differs from the order of stroke end time, a problem may arise. Therefore, a third identification method capable of dealing with complicated stroke input timing will be described.
まず、2つのストロークXとストロークYの識別方法について説明する。この場合、ストローク入力判定部304は、ストロークXの入力中にストロークYが入力されたか否かを判定する。次に、ストローク入力判定部304は、ストロークYの入力中にストロークXが入力されたか否かを判定する。この2つの判定処理により、ストローク入力判定部304は、ストロークXの入力中にストロークYが入力され、かつ、ストロークYの入力中にストロークXが入力されたという結果を取得し、ストロークXおよびストロークYが同時に入力されたと判定する。
First, a method for identifying two strokes X and Y will be described. In this case, the stroke
また、ストローク入力判定部304は、ストロークXが入力されていない時にストロークYが入力され、かつ、ストロークYが入力されていない時にストロークXが入力されたと判定すると、ストロークXおよびストロークYが逐次入力されたと判定する。この場合、ストロークXおよびストロークYは、ストローク開始時刻順に、または、ストローク終了時刻順に、逐次入力されたことになる。
If the stroke
しかし、複数のストロークの入力に関し、ストロークXの入力中にストロークYが入力されたが、ストロークYの入力中にストロークXは入力されていない、という状態(以下、「中間状態」という。)も生じ得る。このような中間状態を生じる入力については、ストローク入力判定部304が「逐次入力」と判定する態様もあれば、「同時入力」と判定する態様もあり得る。あるいは、この中間状態を、そのまま後続の処理に使用することも
できる。以下、このような中間状態を含む各ストロークの関係を、「ストローク依存関係」と呼ぶ。
However, regarding the input of a plurality of strokes, a state in which the stroke Y is input during the input of the stroke X but the stroke X is not input during the input of the stroke Y (hereinafter referred to as “intermediate state”) is also possible. Can occur. Regarding an input that causes such an intermediate state, there is a mode in which the stroke
ストローク入力判定部304は、このストローク依存関係を表わすデータを照合部305に出力する。照合部305は、本人用テンプレート306と比較して、情報処理端末100の使用者の認証を行う。
Stroke
[ストロークの識別]
図10を参照して、中間状態におけるストロークの識別について説明する。図10は、ストローク1010,1020,1030,1040として示される4つのストロークA,B,C,Dが入力された例を表わす図である。ストロークAは、時刻TSaから時刻TEaまで入力されている。ストロークBは、時刻TSbから時刻TEbまで入力されている。ストロークCは、時刻TScから時刻TEcまで入力されている。ストロークDは、時刻TSdから時刻TEdまで入力されている。なお、本実施の形態における時刻とは、計時回路によって得られる時間情報に限られず、プロセッサによる処理の開始に併せてカウンタ値が更新される場合の当該カウンタ値であってもよい。そこで、図10では、当該カウンタ値を時刻として用いる。
[Stroke identification]
The stroke identification in the intermediate state will be described with reference to FIG. FIG. 10 is a diagram illustrating an example in which four strokes A, B, C, and D indicated as
各ストローク開始時刻とストローク終了時刻との関係は、TSa<TSc<TSb<TEb<TSd<TEa<TEc<TEd、として表わされる。ストローク入力判定部304は、このような関係から、「ストロークXの入力中に、ストロークYが入力されたか否か」を調べる。
The relationship between each stroke start time and stroke end time is expressed as TSa <TSc <TSb <TEb <TSd <TEa <TEc <TEd. From such a relationship, the stroke
まず、ストロークXが時刻TSxから時刻TExまで入力され、ストロークYが時刻TSyからTEyまで入力されているとする。そして、ストロークXとストロークYとの間で共通の入力時間(いずれも入力操作が行なわれている時間)が、ストロークYの入力時間の一定割合以上であるとき、「ストロークXの入力中にストロークYが入力された」と定義する。 First, it is assumed that stroke X is input from time TSx to time TEx, and stroke Y is input from time TSy to TEy. When the common input time between the stroke X and the stroke Y (the time during which the input operation is performed) is equal to or greater than a certain percentage of the input time of the stroke Y, “the stroke during the input of the stroke X” Y is input ".
たとえば、ストロークYの入力時間をYYtime、ストロークXとストロークYの共通の入力時間をXYtimeとすると、
YYtime=TEy−TSy、
XYtime=max{min(TEx,TEy)‐max(TSx,TSy),0}、となる。そうすると、「ストロークXの入力中にストロークYが入力された」と判断される条件は、「XYtime/YYtime≧一定割合」として表わすことができる。なお、一定割合は、情報処理端末100の製造者によって予め規定されるデータであり、たとえばフラッシュメモリ250、ROM256その他の記憶部に格納されている。あるいは、ストロークの判定のためにプロセッサ230が実行するプログラムに予めコーディングされていてもよい。
For example, if the input time of the stroke Y is YYtime and the common input time of the stroke X and the stroke Y is XYtime,
YYtime = TEy-TSy,
XYtime = max {min (TEx, TEy) −max (TSx, TSy), 0}. Then, the condition for determining that “the stroke Y has been input during the input of the stroke X” can be expressed as “XYtime / YYtime ≧ constant ratio”. The certain ratio is data preliminarily defined by the manufacturer of the
本実施の形態においては、一定割合を「50%」として、図10に示される各ストロークの依存関係について説明する。 In the present embodiment, the dependency of each stroke shown in FIG. 10 will be described assuming that the fixed ratio is “50%”.
すなわち、ストローク入力判定部304は、ストロークAの入力中に他のストロークB,C,Dの入力状況を調べる。この場合、ストローク入力判定部304は、時刻情報および判定のための割合として以下のような値を算出する。
ABtime=max{min(TEa,TEb)‐max(TSa,TSb),0}=max{min(45,30)‐max(10,18),0}=12。
BBtime=max{min(TEb,TEb)‐max(TSb,TSb),0}=12。
ACtime=25、CCtime=35。
ADtime=10、DDtime=30。
ABtime/BBtime=1(=100%)。
ACtime/CCtime≒0.71(=71%)。
ADtime/DDtime≒0.33(=33%)。
そうすると、ストロークAの入力中にストロークBとストロークCが入力されており、ストロークDは入力されていないことになる。
That is, the stroke
ABtime = max {min (TEa, TEb) −max (TSa, TSb), 0} = max {min (45,30) −max (10,18), 0} = 12.
BBtime = max {min (TEb, TEb) −max (TSb, TSb), 0} = 12.
ACtime = 25, CCtime = 35.
ADtime = 10, DDtime = 30.
ABtime / BBtime = 1 (= 100%).
ACtime / CCtime≈0.71 (= 71%).
ADtime / DDtime≈0.33 (= 33%).
Then, the stroke B and the stroke C are input during the input of the stroke A, and the stroke D is not input.
図11を参照して、4つのストロークA,B,C,Dの依存関係について説明する。図11は、ストロークA,B,C,Dの依存関係を表わす図である。当該依存関係によると、ストロークCの入力中にストロークAが入力されており、その逆も成立している。したがって、ストローク入力判定部304は、ストロークCとストロークAとが同時に入力されたと判断する。また、ストロークCとストロークDとの関係は、いずれのストロークも同時に入力されたと判断されることを示している。一方、ストロークAとストロークDとは、同時に入力されていない関係になっている。
With reference to FIG. 11, the dependency of the four strokes A, B, C, and D will be described. FIG. 11 is a diagram showing the dependency relationship between the strokes A, B, C, and D. According to the dependency relationship, stroke A is input during input of stroke C, and vice versa. Therefore, the stroke
図11に示される依存関係は、図10に示される態様で入力された各ストロークの依存関係を的確に含んでいる。そこで、ストローク入力判定部304が、図10に示されるような中間状態を含む各ストロークの依存関係を照合部305に送出する場合、プロセッサ230は、個人認証をより詳細に実行することができる。また、ストロークデータのデータ量が少なくなるため、照合部305が、データ処理に関し、中間状態を同時入力と同様に扱う場合、または中間状態を逐次入力と同様に扱う場合、後述する照合部305による照合処理の負担が軽減されることになる。
The dependency shown in FIG. 11 accurately includes the dependency of each stroke input in the manner shown in FIG. Therefore, when the stroke
[照合処理]
次に、照合部305について説明する。最初に、中間状態を含まない複数のストロークが入力された場合において当該ストロークとテンプレートとを照合する方法について説明する。次に、中間状態を含むような複数のストロークが入力された場合において当該ストロークとテンプレートとを照合する方法について説明する。
[Verification processing]
Next, the
(中間状態を含まないストロークが入力された場合)
照合部305には、入力された複数のストロークについてストローク形状判定部303によって判定された結果と、ストローク入力判定部304によって判定された結果とが入力される。さらに、照合部305は、これらの判定結果に基づいて当該ストロークの入力者が情報処理端末100に登録された使用者本人であるか否かを判定するための照合に使用される情報(以降、「本人テンプレート」という)が入力される。
(When a stroke that does not include an intermediate state is input)
The
ストローク入力判定部304による判定結果は、当該ストロークが同時入力されたか、逐次的に入力されたかを示すデータを含む。プロセッサ230は、照合部305として、このデータをストローク開始時刻順に、RAM252に確保したメモリ領域に配列する。なお、この配列の順序は、予め決められた順序であれば、ストローク開始時刻順の代わりにストローク終了時刻順であってもよい。少なくとも、この配列の順序は、本人テンプレートが作成された時の順序と同じであればよい。照合部305は、入力されたストロークのパタンの組み合わせおよび順序が本人テンプレートにおけるストロークの組み合わせおよび順序と同じであるか否かを確認する。
The determination result by the stroke
そこで、図12および図13を参照して、本実施の形態に係る照合処理について説明する。一例として、4本の線の入力によって本人か別人かを判断する照合処理について説明する。 Therefore, referring to FIG. 12 and FIG. 13, the collation processing according to the present embodiment will be described. As an example, a collation process for determining whether the person is a person or another person by inputting four lines will be described.
図12は、本人テンプレート306のデータ構成を概念的に表わす図である。本人テンプレート306は、最初に左から右に同時に描かれた2本の横線、次に下から上に描かれた1本の縦線、最後に上から下に描かれた1本の縦線として、情報処理端末100の使用者によって登録されている。
FIG. 12 is a diagram conceptually showing the data structure of the
図13は、本人認証のために入力されたストロークおよび当該ストロークに基づく判定結果を表わす図である。より詳しくは、図13(A)は4本の線で作られる四角形の入力例を示している。すなわち、情報処理端末100の使用者は、最初に、左から右に2本の横線(以下「上辺」および「下辺」ともいう。)を引き(状態1310)、次に下辺の左端部から上へ1本の縦線を引き(状態1320)、最後に上辺の右端部から下へ1本の縦線を引いて(状態1330)、四角形を入力している。
FIG. 13 is a diagram illustrating a stroke input for personal authentication and a determination result based on the stroke. More specifically, FIG. 13A shows an example of a quadrangular input made up of four lines. That is, the user of the
図13(B)は、認証のために入力された各ストロークの形状結果と依存関係とを表わす図である。ここで、指標T1,T2,T3は、当該ストロークがどのタイミングで入力されたかを示す。指標T1,T2,T3は、ストローク開始時刻でも、あるいは、ストローク終了時刻でもよい。以下、指標T1,T2,T3が「ストローク開始時刻」であるとして説明する。この場合、各指標は、ストローク入力判定部304による処理である第1の識別方法として説明したように、当該各ストロークが同時に入力されたもの(同時入力)であるか、あるいは、逐次的に入力されたもの(逐次入力)であるかを判定した結果として、ストローク開始時刻に対応することになる。ストロークAおよびストロークBは、ストローク入力判定部304の処理によってグループ化されるため、同一のストローク開始時刻T1を持つことになる。
FIG. 13B is a diagram illustrating the shape result and dependency of each stroke input for authentication. Here, the indexes T1, T2, and T3 indicate at which timing the stroke is input. The indicators T1, T2, and T3 may be stroke start times or stroke end times. In the following description, it is assumed that the indices T1, T2, and T3 are “stroke start times”. In this case, as described in the first identification method, which is processing performed by the stroke
図13(A)に示されるようなストロークが入力されると、ストローク形状判定部303は、図13(B)上段に示されるストローク形状結果を出力する。ストローク入力判定部304は、図13(B)の下段に示されるストローク依存関係を出力する。照合部305は、図13(B)に示される各判定結果と、図10に示される本人テンプレート306とを比較することにより、本人認証を実行する。
When a stroke as shown in FIG. 13A is input, the stroke
図13(A)および図13(B)に示される例では、入力されたストロークの結果と本人テンプレート306とが完全に合致することになる。そこで、照合部305は、当該ストロークは本人によって入力されたと判定し、認証結果(=OK)を判定結果307として出力する。なお、仮に、当該ストロークを用いた照合処理の結果、当該ストロークの入力者が本人と認証されない場合には、照合部305は、認証結果(=NG)を判定結果307として出力する。
In the example shown in FIGS. 13A and 13B, the result of the input stroke and the
ここで、図14を参照して、ストローク形状結果およびストローク依存関係について、さらに説明する。図14は、時刻t1から時刻t27の各時刻に取得した座標値(x,y)を表わす図である。すなわち、時刻t1では座標値が取得されていない。時刻t2において、1つの座標値(xA2,yA2)が取得されている。時刻t3において、2つの座標値(xA3,yA3)、(xB3,yB3)が取得されている。以下同様に、時刻tNにおいて取得された座標値を(xN,yN)と表わす。また、時刻t3から時刻t9の間では、同時に2つの座標値が取得されたため、それらの点を区別するために添え字A,Bが付記されている。さらに、時刻t11から時刻t16において検出された座標値は1つであるが、既に検出された座標値と区別するために、添え字“C”が付記されている。なお、このような場合でも、座標値が検出された時点では、当該座標値は単なる座標値(x,y)と同等の意味を有する。 Here, with reference to FIG. 14, the stroke shape result and the stroke dependency will be further described. FIG. 14 is a diagram illustrating coordinate values (x, y) acquired at times from time t1 to time t27. That is, no coordinate value is acquired at time t1. At time t2, one coordinate value (xA2, yA2) is acquired. At time t3, two coordinate values (xA3, yA3) and (xB3, yB3) are acquired. Similarly, the coordinate value acquired at time tN is represented as (xN, yN). In addition, since two coordinate values are acquired at the same time from time t3 to time t9, subscripts A and B are appended to distinguish these points. Furthermore, although there is one coordinate value detected from time t11 to time t16, the subscript “C” is added to distinguish it from the already detected coordinate value. Even in such a case, when the coordinate value is detected, the coordinate value has the same meaning as the simple coordinate value (x, y).
図14に示されるような入力が多点入力可能なポインティングデバイスに対して与えられると、ストローク抽出部302は、以下の4組のストロークデータA,B,C,Dを出
力する。
When an input as shown in FIG. 14 is given to a pointing device capable of multipoint input, the
(ストロークデータA)
座標データ配列:(xA2,yA2)、(xA3,yA3)、(xA4,yA4)、(xA5,yA5)、(xA6,yA6)、(xA7,yA7)、(xA8,yA8)、(xA9,yA9)
ストローク開始時刻:t2
ストローク終了時刻:t9
(ストロークデータB)
座標データ配列:(xB3,yB3)、(xB4,yB4)、(xB5,yB5)、(xB6,yB6)、(xB7,yB7)、(xB8,yB8)、(xB9,yB9)
ストローク開始時刻:t3
ストローク終了時刻:t9
(ストロークデータC)
座標データ配列:(xC11,yC11)、(xC12,yC12)、(xC13,yC13)、(xC14,yC14)、(xC15,yC15)、(xC16,yC16)
ストローク開始時刻:t11
ストローク終了時刻:t16
(ストロークデータD)
座標データ配列:(xD18,yD18)、(xD19,yD19)、(xD20,yD20)、(xD21,yD21)、(xD22,yD22)、(xD23,yD23)
ストローク開始時刻:t18
ストローク終了時刻:t23
(ストローク形状判定部303の処理)
処理の説明を簡単にするために、ストローク形状判定部303は、上から下への縦線(「タイプ下」)か、下から上への縦線(「タイプ上」)か、右から左への横線(「タイプ左」)か、左から右への横線(「タイプ右」)かのみを識別するものとする。また、各タイプのID番号をそれぞれ1,2,3,4とする。上記の例では、ストローク形状判定部303は、上記の4つのタイプ(タイプ上、タイプ下、タイプ右、タイプ左)のいずれに似ているかを判定する。
(Stroke data A)
Coordinate data array: (xA2, yA2), (xA3, yA3), (xA4, yA4), (xA5, yA5), (xA6, yA6), (xA7, yA7), (xA8, yA8), (xA9, yA9) )
Stroke start time: t2
Stroke end time: t9
(Stroke data B)
Coordinate data array: (xB3, yB3), (xB4, yB4), (xB5, yB5), (xB6, yB6), (xB7, yB7), (xB8, yB8), (xB9, yB9)
Stroke start time: t3
Stroke end time: t9
(Stroke data C)
Coordinate data array: (xC11, yC11), (xC12, yC12), (xC13, yC13), (xC14, yC14), (xC15, yC15), (xC16, yC16)
Stroke start time: t11
Stroke end time: t16
(Stroke data D)
Coordinate data array: (xD18, yD18), (xD19, yD19), (xD20, yD20), (xD21, yD21), (xD22, yD22), (xD23, yD23)
Stroke start time: t18
Stroke end time: t23
(Processing of stroke shape determination unit 303)
In order to simplify the description of the process, the stroke
ストローク形状判定部303は、ストロークデータAの座標データ配列の中から、x座標値の最大値maxXおよび最小値minXと、y座標値の最大値maxYおよび最小値minYとを算出する。
The stroke
たとえば、仮に、maxX=xA9=90、minX=xA2=10、maxY=yA2=10、minY=yA=11とする。この場合、maxX−minX=80、maxY−minY=1となる。 For example, suppose maxX = xA9 = 90, minX = xA2 = 10, maxY = yA2 = 10, minY = yA = 11. In this case, maxX−minX = 80 and maxY−minY = 1.
また、仮に、横線幅の閾値=30、横線長さの閾値=20(縦線幅の閾値=30、縦線長さの閾値=20)とすると、ストローク形状判定部303は、ストロークAを「横線」と判定することができる。
If the horizontal line width threshold = 30 and the horizontal line length threshold = 20 (vertical line width threshold = 30, vertical line length threshold = 20), the stroke
ストローク形状判定部303は、そのように判定すると、座標データ配列の先頭座標のx座標値と、座標データ配列の最後座標のy座標値とを比較し、当該ストロークが右方向へのストロークであるか左方向へのストロークであるかを判定する。この場合、xA2=10、xA9=90であるため、ストローク形状判定部303は、ストロークAを右方向へのストローク、すなわち、タイプ右(ID=3)のストロークと判定する。
The stroke
ストローク形状判定部303は、残りのストロークB,C,Dについても同様の処理を
行うことにより、ストロークBをタイプ右(ID=3)、ストロークCをタイプ上(ID=1)、ストロークDをタイプ下(ID=2)と判定する。
The stroke
各ストロークのデータには、当該データを識別するための識別子(ストロークデータ識別子)が付されている。ストローク形状判定部303は、ストロークデータ識別子とストロークのタイプとを関連付けした情報(ストロークデータ識別子,ストローク形状ID)を生成して、照合部305に出力する。
Each stroke data has an identifier (stroke data identifier) for identifying the data. The stroke
上記の例では、ストローク形状判定部303は、各ストロークについて、ストロークデータ識別子A,B,C,Dを用いて、当該関連付けした情報として、(A,3)、(B,3)、(C,1)、(D,2)を生成し、照合部305に出力する。
In the above example, the stroke
なお、上記の例は一態様を示すものであって、入力されたストロークの形状を判定するための方法は、これに限られない。 In addition, said example shows an aspect and the method for determining the shape of the input stroke is not restricted to this.
(ストローク入力判定部304の処理)
以下、上記の例に基づくストローク入力判定部304の処理について説明する。ここでは、ストローク入力判定部304が、ストローク開始時刻のみを使用して、各ストロークが同時入力されたものであるか、あるいは逐次的に入力されたものであるかを判定する方法について説明する。
(Processing of stroke input determination unit 304)
Hereinafter, the process of the stroke
ストローク入力判定部304は、ストロークA,B,C,Dをストローク開始時刻の早い順に並べる(上記の例では、配列の順序は変わらない)。なお、時間の単位として、一定間隔で座標値をサンプリングした1サンプル時間を1単位とする。また、同一入力判定閾値THα=3とする。このような場合、ストロークAのストローク開始時刻(t2)とストロークBのストローク開始時刻(t3)の差は1となる。また、この差の値は、同一入力判定閾値THαよりも小さいので、ストローク入力判定部304は、ストロークAとストロークBが同時に入力されたと判定する。ストローク入力判定部304は、ストロークAとストロークBの各ストローク開始時刻を(t3)と同じ値に設定する。なお、当該ストローク開始時刻をt3としたのは、遅い方のストローク開始時刻に合わす構成を用いているためである。
The stroke
次に、ストローク入力判定部304は、ストロークCのストローク開始時刻(t11)とストロークBのストローク開始時刻(t3)とを比較する。この例では、当該時刻の差=8となるので、ストローク入力判定部304は、ストロークBとストロークCが逐次的に入力されたものと判定する。
Next, the stroke
仮に、ストローク入力判定部304が、ストロークBとストロークCは同時に入力されたものと判定すると、ストロークBとストロークAとが同時入力されているので、ストローク入力判定部304は、ストロークA、B、Cの各ストローク開始時刻を、ストロークCのストローク開始時刻に合わせる。
If the stroke
最後に、ストローク入力判定部304は、ストロークCについてのストローク開始時刻とストロークDについてのストローク開始時刻との差を算出する。上記の例では当該差=7となる。そして、この値は同一入力判定閾値THαよりも大きいため、ストローク入力判定部304は、ストロークCとストロークDも逐次的に入力されたストロークであると判定する。
Finally, the stroke
ストローク入力判定部304は、このようにして得た結果と、ストローク形状判定部303も使用したストローク識別子A,B,C,Dとを関連付けて、関連付けられたデータ
を照合部305に出力する。上記の例では、ストローク入力判定部304は、(ストロークデータ識別子,ストローク開始時刻)の組として、(A,t3)、(B,t3)、(C,t11)、(D,t18)のようなデータを出力する。
The stroke
(減点法による認証)
なお、他の局面において、照合部305は、照合の不一致に減点法を用いて、予め設定された基準点(=認証合格点)以上の場合に当該ストロークの入力者を本人と判定するような認証を行ってもよい。
(Certification by deduction method)
Note that in another aspect, the
減点法で認証を行う場合の一例は、以下のとおりである。たとえば、予め設定された基準として、「入力した線が1本足りない場合=−50点」、「入力した線の方向が逆向きの時=−30点」、「同時に入力されるべき線が逐次的に入力されている時=−10点」のようなルールが情報処理端末100に格納されているものとする。また、認証する入力者に与えられる持ち点を100点とする。
An example of authentication using the deduction method is as follows. For example, as a preset reference, “when one input line is insufficient = −50 points”, “when the input line direction is reverse = −30 points”, “the lines to be input simultaneously are It is assumed that a rule such as “when sequentially input = −10 points” is stored in the
この場合、照合部305は、入力されたストロークから抽出されたデータと、本人テンプレート306とを比較し、上記のような条件を満たさない場合に当該点数を持ち点(100点)から減点する。そして、ストロークの入力が終わった時に、点数が認証合格点(たとえば65点)以上の場合は、照合部305は、当該入力者が本人であると判定し、65点未満の場合には、当該入力者が本人ではないと判定する。
In this case, the
あるいは、他の局面において、照合部305は、本人テンプレート306のストロークと一致したストロークと不一致のストロークとの比率を用いて、認証を行ってもよい。この場合、当該比率が予め設定された基準値を上回る場合に(すなわち一致する比率が一定以上である場合に)、照合部305は、当該入力者が本人であると判定し、認証結果(=K)を出力する。
Alternatively, in another aspect, the
(中間状態が含まれるストロークが入力された場合)
次に、中間状態を含むストロークが入力された場合における照合について説明する。この場合、照合部305は、各ストロークの依存関係を用いて認証処理を実行する。すなわち、最初に、照合部305は、各ストロークの入力パタンが本人テンプレート306を構成するストロークの入力パタンと完全に一致しているか否かを判定する。
(When a stroke that includes an intermediate state is input)
Next, collation when a stroke including an intermediate state is input will be described. In this case, the
照合部305は、これらの入力パターンが完全に一致していると判定すると、本人テンプレート306の各ストロークの依存関係と、認証のために入力された各ストロークの依存関係とを対比し、入力された各ストロークが本人テンプレート306の各ストロークと同じであるか否かを確認する。
When the
そこで、図15を参照して、中間状態を含むストロークが入力された場合における処理について説明する。図15(A)は、入力されたストロークの図形を示す図である。本実施の形態では、図15(A)は、3本の直線のストロークA,B,Cが入力されたことを示している。そして、ストロークAおよびストロークBは、上から下への縦方向のストロークである。ストロークCは、左から右への横方向に入力されたストロークである。 Therefore, with reference to FIG. 15, processing when a stroke including an intermediate state is input will be described. FIG. 15A is a diagram showing a figure of an input stroke. In the present embodiment, FIG. 15A shows that three linear strokes A, B, and C have been input. Stroke A and stroke B are vertical strokes from top to bottom. The stroke C is a stroke input in the horizontal direction from left to right.
図15(B)は、ストロークA,B,Cがどのタイミングで入力されたかを示すタイミングチャートである。図15(B)に示される例では、ストロークAが入力されるタイミングとほぼ同時にストロークBが入力され、ストロークBが入力されている間に、ストロークAの入力が終了する。さらに、ストロークBが入力されている間に、ストロークCが入力され、ほぼ同時に、ストロークBとストロークCの各入力が終了する。 FIG. 15B is a timing chart showing at which timing strokes A, B, and C are input. In the example shown in FIG. 15B, the stroke B is input almost simultaneously with the input timing of the stroke A, and the input of the stroke A is completed while the stroke B is being input. Further, the stroke C is input while the stroke B is being input, and the input of the stroke B and the stroke C is completed almost simultaneously.
ストローク入力判定部304は、このような3つのストロークA,B,Cの依存関係を調べ、図15(C)に示されるような結果を出力する。すなわち、この依存関係によると、ストロークBの入力中にストロークAとストロークCが入力されていることが示されている。また、ストロークAとストロークCとの間には、依存関係がない。
The stroke
図15(D)は、この例に用いられる本人テンプレート1506を表わす図である。この本人テンプレート1506から読み取れる情報は、以下の通りである。まず、登録されているストロークは、3本である。それぞれのストロークをストローク1,2,3とすると、これらのストローク1,2,3に以下のような6つの関係がある。
(関係1)ストローク1は上から下の縦線である。
(関係2)ストローク2も上から下の縦線である。
(関係3)ストローク3は左から右の横線である。
(関係4)ストローク1の入力中にストローク2が入力された。
(関係5)ストローク1の入力中にストローク3が入力された。
(関係6)ストローク2のあとにストローク3が入力された。
FIG. 15D shows a
(Relationship 1) Stroke 1 is a vertical line from top to bottom.
(Relationship 2)
(Relationship 3) Stroke 3 is a horizontal line from left to right.
(Relationship 4)
(Relationship 5) Stroke 3 was input while stroke 1 was being input.
(Relationship 6) Stroke 3 is input after
このような場合における照合方法について説明する。まず、照合部305は、入力されたストロークの数が本人テンプレート1506において登録されているストロークの数と同じであるか否か、および、各ストロークの入力パタンが本人テンプレート1506を構成する各ストロークの入力パタンと同じであるか否かを調べる。
A collation method in such a case will be described. First, the
図15の例では、3つのストロークA,B,Cが情報処理端末100に入力されている。そのうち、ストロークAとストロークBは、上から下への縦線であり、ストロークCは左から右への横線である。そのため、入力されたストロークの数およびストロークの形状(タイプ)は、本人テンプレートとして登録されているストロークの数および形状と同じであることがわかる。
In the example of FIG. 15, three strokes A, B, and C are input to the
もし、ストロークの数あるいは形状が異なる場合は、照合部305は、認証のために正しい図形が入力されていないと判断し、判定結果として認証NGを出力する。
If the number or shape of strokes is different, the
次に、照合部305は、入力されたストロークの依存関係と本人テンプレート1506のストロークの依存関係とが同じであるか否かを確認する。まず、本人テンプレート1506にある第1のストロークと第2のストロークは、いずれも上から下への縦線であり、同じ形状のストロークである。そこで、照合部305は、認証のために入力されたストロークA,Bが、それぞれ、第1のストロークおよび第2のストロークのいずれに相当するかを判定する。この判定は、「総当り」方式によって行なわれる。
Next, the
まず、照合部305は、ストロークAが第1のストロークに相当すると判断した場合、ストロークの形状からストロークBが第2のストローク2に相当すると判断し、また、ストロークCを第3のストロークに相当すると判断することができる。
First, when the
しかし、ストロークAの入力中にストロークBやストロークCが入力されておらず、また、ストロークBとストロークCとの間には、第2のストロークと第3のストロークとの依存関係にあるような「逐次入力」が成り立たない。よって、判断部305は、ストロークAが第1のストロークに相当するとの判断は誤りであることを検知する。
However, neither stroke B nor stroke C is input during the input of stroke A, and there is a dependency between stroke B and stroke C between the second stroke and the third stroke. “Sequential input” does not hold. Therefore, the
次に、照合部305は、ストロークBが第1のストロークに相当すると判断した場合、ストロークAを第2のストロークに割り当て、ストロークCを第3のストロークに割り当てることができる。この場合、ストロークBの入力中に、ストロークAとストロークCの入力があり、かつ、ストロークAの後にストロークCが入力されていることにより、「逐
次入力」の関係が満たされる。したがって、照合部305は、図15(A)、図15(B)に示されたストロークデータが、本人テンプレート306の登録者本人によって入力されたものであると判断し、判定結果として認証OKを出力する。
Next, when the
なお、中間状態を含むストローク依存関係は、詳細な情報も含んでいるため、本人がストロークを入力した場合でも、照合部305は、わずかな入力の違いに基づき、当該本人を別人であると判定する可能性がある。そこで、このような誤判定を防止するために、中間状態を含むストロークの依存関係を照合する場合において、比較の対象となる各ストロークが完全に一致する場合に認証OKと判定する態様に限らず、一定の水準を満たした場合に認証OKと判定する態様が用いられてもよい。
Since the stroke dependency including the intermediate state includes detailed information, even when the person inputs a stroke, the
[本人テンプレートの作成]
図16を参照して、本実施の形態に係る本人テンプレート306,1506の作成および登録について説明する。図16は、本人テンプレートの作成の際に情報処理端末100によって実現される機能の構成を表わすブロック図である。
[Create personal template]
With reference to FIG. 16, creation and registration of
本人テンプレートの作成の一態様として、情報処理端末100の使用者が本人テンプレートに記録するルールを直接決めておき、そのルールを本人テンプレートとしてもよい。しかし、当該使用者本人が実際に決めたルール通りに入力できない場合もあり得る。そこで、本実施の形態においては、実際に多点入力可能なポインティングデバイスを利用して入力されたデータから本人テンプレートを作成する態様を用いる。
As one aspect of creation of the principal template, a rule to be recorded in the principal template by the user of the
情報処理端末100は、座標入力部301と、ストローク抽出部302と、ストローク形状判定部1603と、ストローク入力判定部1604と、テンプレート作成部1610とを備える。ある局面において、座標入力部301と、ストローク抽出部302と、ストローク形状判定部1603と、ストローク入力判定部1604と、テンプレート作成部1610とは、プロセッサ230によって実現される。なお、他の局面において、その全部または一部が当該機能を実現するために構成された回路素子その他のハードウェアによって実現されてもよい。
The
たとえば、情報処理端末100は、「通常モード」から「テンプレート作成モード」への切替指示の入力に応答して、本人テンプレート作成のための上記機能を実現する。本人テンプレート306を作成する方法および情報の抽出方法は、上述の認証方法を用いて実現される。
For example, the
座標入力部301は、認証用パスワードにする文字あるいは図形を構成するストロークの入力を受け付けて、当該ストロークの座標データを取得する。
The coordinate
ストローク抽出部302は、座標入力部301によって取得された座標データをストロークごとにグループ化し、ストロークデータとして出力する。
The
ストローク形状判定部1603は、ストローク抽出部302によって抽出されたストロークデータに基づいて、当該ストロークがどのような形状であるかを判定する。ストローク形状判定部1603は、判定結果(=最も似ている形状に割り当てられたID番号)と、ストロークデータとを出力する。
The stroke
ストローク入力判定部1603は、複数のストロークについて、各ストロークが同時に入力されたものであるか、あるいは逐次的に入力されたものであるかを判定し、判定結果としてストロークの依存関係を出力する。
The stroke
テンプレート作成部1610は、これらのデータから本人テンプレート306を作成し、フラッシュメモリ250その他の記憶装置に格納する。なお、他の局面において、記憶装置は、メモリカードのように着脱可能なデータ記録媒体であってもよい。
The
なお、本人テンプレート306の生成においては、当該ストロークの入力が同時入力であるか、あるいは、逐次入力であるかの判断を行う場合には、ストローク依存関係の中間状態の情報は不要である。
In generating the
なお、認証時に、入力されたストローク間の位置関係も確認する場合には、テンプレート作成部1610は、ストロークデータから位置関係を抽出し、テンプレート306に当該位置関係を含める。
When the positional relationship between the input strokes is also confirmed at the time of authentication, the
ストローク間の位置関係を抽出するために、テンプレート作成部1610は、各ストロークの座標データに含まれる各座標値の大小関係を判定し、各座標値の差が大きな座標値の対を示す関係をテンプレート306に含める。大小関係を判定するための座標値は、たとえば、ストローク開始座標やストローク終了座標のような当該ストロークの特徴的な座標値である。
In order to extract the positional relationship between the strokes, the
なお、本人テンプレート306の生成は、上述の態様のようにストロークの一度だけの入力で特徴を決める態様に限られず、テンプレート作成部1610が複数回入力されたストロークについて共通の特徴を抽出し、当該共通の特徴のみをテンプレート306に含める態様でもよい。あるいは、複数回入力されたストロークについて、一定値以上の割合で共通な部分をテンプレート306に含める態様でもよい。
The generation of the
以上のようにして、本発明の第1の実施の形態に係る情報処理端末100によると、圧力センサその他の特別な装置を必要とせず、手書き文字を認証することができる。この場合、入力のために特定の構成を有する筆記具を必要としないため、指の入力も可能となる。
As described above, according to the
また、本発明の実施の形態に係る情報処理端末は、多点入力可能なポインティングデバイスを有している。多点入力可能なポインティングデバイスは、同時に複数の点の入力を受け付ける。そこで、当該情報処理端末は、この特徴を利用し、ポインティングデバイスから入力されたストロークが、同時に入力されたものであるか、あるいは、逐次的に入力されたものであるかを判断し、それと同時に、入力されたストロークの形状を比較する。 Further, the information processing terminal according to the embodiment of the present invention has a pointing device that can input multiple points. A pointing device capable of multipoint input accepts input of a plurality of points simultaneously. Therefore, the information processing terminal uses this feature to determine whether the strokes input from the pointing device are input simultaneously or sequentially, and at the same time Compare the shape of the input stroke.
このような構成により、情報処理端末は、同時入力という入力方法を受け付けることができるため、同一図形が入力される場合でも、従来以上に書き順のバリエーションが増えることになる。多点入力が可能となるため、同じ図形や文字でも数多くの入力方法が可能となる。その結果、簡単な図形でも、他人に分かりにくいパスワードとして使用することができ、構成が複雑になることを防止しつつ、認証機能を高めることができる。 With such a configuration, the information processing terminal can accept an input method of simultaneous input, so even when the same graphic is input, variations in the writing order are increased more than in the past. Since multipoint input is possible, a large number of input methods are possible even for the same figure or character. As a result, even simple figures can be used as passwords that are difficult for others to understand, and the authentication function can be enhanced while preventing the configuration from becoming complicated.
また、x座標値、y座標値、および時刻データが組み合わされた座標データを認証データとして使用するため、ストロークの形状判定や、本人照合の際における精密な照合を行うことができる。 Further, since coordinate data in which the x coordinate value, the y coordinate value, and the time data are combined is used as the authentication data, it is possible to perform a precise shape verification in stroke shape determination and personal verification.
また、当該認証機能を有する情報処理端末100は、座標データを全て記録するため、ストロークの抽出や形状判定などの処理で、時間に追われることなく処理を行うことができる。
In addition, since the
また、個人認証全体のレスポンスが早くなる。
また、ストロークの形状が縦線であるのか、または横線であるのかを容易に判定することができる。
In addition, the response of the entire personal authentication becomes faster.
Moreover, it can be easily determined whether the shape of the stroke is a vertical line or a horizontal line.
また、ストロークの形状判定を始点と終点のみから判断する簡易的な方法により、判定する処理が容易となり、判定処理の負荷が軽減され得る。 Further, the determination process is facilitated by a simple method of determining the stroke shape determination from only the start point and the end point, and the load of the determination process can be reduced.
また、入力されたストロークが点であると判断された場合には、その点としてのストロークは本人照合に使用しないようにすることができる。すなわち、情報処理端末は、当該ストロークは意図的に入力された図形でないと判断することにより、タッチパネルのようなポインティングデバイスに対する不意な接触によって検出された座標値が、認証の対象から取り除かれる。これにより、認証の誤判定を防止することができる。 Further, when it is determined that the input stroke is a point, the stroke as the point can be prevented from being used for personal verification. That is, when the information processing terminal determines that the stroke is not a figure that is intentionally input, the coordinate value detected by the unexpected contact with the pointing device such as the touch panel is removed from the authentication target. Thereby, erroneous determination of authentication can be prevented.
また、複数のストロークのグループ化を容易に行うことができる。
また、複数のストロークの入力タイミングの関係を抽出できるため、ストローク入力時の特徴を抽出することができ、精度の高い個人認証を行うことができる。
In addition, a plurality of strokes can be easily grouped.
In addition, since the relationship between the input timings of a plurality of strokes can be extracted, the characteristics at the time of stroke input can be extracted, and highly accurate personal authentication can be performed.
<第2の実施の形態>
以下、図17および図18を参照して、本発明の第2の実施の形態について説明する。本実施の形態に係る情報処理端末は、ストローク形状と、ストロークの依存関係に加えて、ストローク座標の位置情報も用いて本人認証を行なう点で、前述の第1の実施の形態と異なる。より詳しくは、本実施の形態に係る照合部は、ストローク形状結果とストロークの依存関係に加えて、ストロークデータに含まれる座標情報を利用する。
<Second Embodiment>
Hereinafter, a second embodiment of the present invention will be described with reference to FIGS. 17 and 18. The information processing terminal according to the present embodiment is different from the first embodiment described above in that the personal authentication is performed using the position information of the stroke coordinates in addition to the stroke shape and the dependency relation of the stroke. More specifically, the collation unit according to the present embodiment uses coordinate information included in the stroke data in addition to the dependency between the stroke shape result and the stroke.
図17は、本人認証のために入力されたストロークを表わす図である。図18は、本実施の形態に係る情報処理端末1800によって実現される機能を表わすブロック図である。図19は、第2の実施の形態に係るテンプレート1806を表わす図である。
FIG. 17 is a diagram showing a stroke input for user authentication. FIG. 18 is a block diagram showing functions realized by
たとえば、図13に示される四角形を入力する場合、第1の実施の形態によると、図17に示されるようにテンプレートを入力した場合でも、図12に示される本人テンプレート306と一致する。そのため、図13に示される入力と、図17に示される入力とを区別するためには、ストロークの位置情報を用いる必要がある。
For example, when a square shown in FIG. 13 is input, according to the first embodiment, even if a template is input as shown in FIG. 17, it matches the
なお、第2の実施の形態に係る情報処理端末1800は、第1の実施の形態に係る情報処理端末100と同様のハードウェア構成によって実現される。その機能も同じである。したがって、ハードウェア構成についての説明は繰り返さない。以下、ハードウェア構成を参照する場合には、図2を援用する。
Note that the
図18を参照して、情報処理端末1800は、座標入力部301と、ストローク抽出部1802と、ストローク形状判定部1803と、ストローク入力判定部1804と、照合部1805とを備える。情報処理端末1800は、本人テンプレート1806を有している。本人テンプレート1806は、第1の実施の形態に係る本人テンプレート306が有する認証情報に加えて、ストロークの位置情報を含む。当該位置情報は、テンプレートとして登録されている各ストロークが他のストロークに対してどこに(例、右側、左側、上、下など)位置しているかを表わす。
Referring to FIG. 18,
ストローク抽出部1802は、座標データに基づいて、ストロークデータと、当該入力されたストロークの位置情報とを出力する。
The
ストローク形状判定部1803は、ストロークデータと位置情報とに基づいてストロークの形状を判定する。ストローク入力判定部1804は、ストロークデータと位置情報と
に基づいてストロークの依存関係を特定する。
The stroke
照合部1805は、ストローク形状判定部1803による判定結果と、ストローク入力判定部1804による判定結果と、本人のテンプレート1806とに基づいて、当該ストロークの入力者が情報処理端末1800の使用者として登録された本人であるか否かの認証を行ない、判定結果1807を出力する。この場合、照合部1805は、第1の実施の形態に係る照合部305と同様に、ストローク形状結果が本人テンプレート1806と一致するか否か、および、ストローク依存関係が本人テンプレート306に一致するか否かを確認するとともに、当該ストロークの位置情報も利用する。たとえば、当該位置情報は、図12の本人テンプレート情報に加えて、下から上への縦線(↑)は、上から下への縦線(↓)より左側にあるという情報を含む。
Based on the determination result by the stroke
このような位置情報を認証処理に用いることにより、本人認証の精度を向上させることができる。 By using such position information for authentication processing, the accuracy of personal authentication can be improved.
<変形例>
図19を参照して、第2の実施の形態の変形例について説明する。本変形例に係る情報処理端末は、位置情報として、図12に示される本人テンプレートに含まれる情報に加えて、ストロークの開始位置および終了位置の位置関係を規定する情報を有する点で、第2の実施の形態と異なる。
<Modification>
A modified example of the second embodiment will be described with reference to FIG. The information processing terminal according to the present modified example includes the second information as position information, in addition to the information included in the user template shown in FIG. 12, and information defining the positional relationship between the start position and the end position of the stroke. This is different from the embodiment.
図19は、ストロークの開始位置の情報を位置情報として有する本人テンプレート1906のデータ構造を表わす図である。すなわち、本人テンプレート1806は、領域1910において、当該ストロークの開始位置が、基準となるストローク(たとえば最初に入力されたストローク)の開始位置に対してどのような関係にあるかをあらわす情報を有する。たとえば、2本の横線であるストロークA(=基準となるストローク)とストロークBとについては、開始位置のx座標値はほぼ同じであり(xb≒xa)、ストロークBはストロークAの下である(yb<ya)。
FIG. 19 is a diagram showing a data structure of a
このような位置関係を本人テンプレートおよび認証処理に用いることにより、ストロークの位置関係が判定の条件に加えられるため、認証の精度が向上する。 By using such a positional relationship for the personal template and the authentication process, the positional relationship of the stroke is added to the determination conditions, so that the accuracy of authentication is improved.
なお、位置情報は、例示された上記のものに限られない。また、位置情報は相対的な位置関係を規定する情報および絶対的な位置関係を規定する情報のいずれであってもよい。また、用いられる位置情報によって、本人テンプレートに追加される情報が異なる。 The position information is not limited to the above-described example. Further, the position information may be either information defining a relative positional relationship or information defining an absolute positional relationship. Moreover, the information added to the principal template differs depending on the position information used.
<第3の実施の形態>
以下、本発明の第3の実施の形態について説明する。本実施の形態に係る情報処理端末は、座標データと時刻情報とを関連付けるタイミングが異なる点で、第1の実施の形態と異なる。なお、本実施の形態に係る情報処理端末は、第1の実施の形態に係るハードウェア構成を用いて実現される。その機能および動作も同じである。したがって、ハードウェアの説明は繰り返さない。
<Third Embodiment>
Hereinafter, a third embodiment of the present invention will be described. The information processing terminal according to the present embodiment is different from the first embodiment in that the timing for associating coordinate data and time information is different. Note that the information processing terminal according to the present embodiment is realized by using the hardware configuration according to the first embodiment. Its function and operation are the same. Therefore, the description of hardware will not be repeated.
まず、第1の実施の形態においては、座標入力部301は、座標データを取得すると同時に、時刻情報を座標データに関連付ける。これに対して、本実施の形態によると、座標入力部が、座標データと時刻情報とを関連付けず、ストローク抽出部がストロークの開始時刻と終了時刻を記録することもできる。
First, in the first embodiment, the coordinate
そこで、図20を参照して、本実施の形態に係る情報処理端末2000の構成について説明する。図20は、情報処理端末2000によって実現される機能の構成を表わすブロ
ック図である。情報処理端末2000は、図3に示される構成に対して、座標入力部301に代えて座標入力部2001を、また、ストローク抽出部302に代えてストローク抽出部2002を備える。情報処理端末2000は、さらに、ストローク形状判定部2003と、ストローク入力判定部2004と、照合部2005とを備える。ストローク形状判定部2003は、ストローク形状判定部2003が実現する機能と同様の機能を実現する。ストローク入力判定部2004は、ストローク入力判定部1804と同様の機能を実現する。照合部2005は、照合部1805と同様の機能を実現し、判定結果2007を出力する。
Therefore, the configuration of
座標入力部2001は、ポインティングされた点の座標データを1フレーム処理時間以内に出力する。より詳しくは、座標入力部2001は、x座標値とy座標値のみが含まれる座標データをストローク抽出部2002に送出する。
The coordinate
ストローク抽出部2002は、1フレーム分の座標データについて後述する処理を、1フレーム処理時間内に実行する。
The
そこで、図21を参照して、本実施の形態に係る情報処理端末2000の制御構造について説明する。図21は、情報処理端末2000を実現するプロセッサ230がストローク抽出部2002として実行する一連の処理の一部を表わすフローチャートである。なお、第1の実施の形態に係る情報処理端末による処理と同様の処理には同一のステップ番号を付してある。したがって、それらの処理の説明は繰り返さない。
Therefore, with reference to FIG. 21, a control structure of
ステップS2150にて、プロセッサ230は、1フレーム処理時間内に実行された処理によって得られた座標値と、本検出座標の値に更新したストローク終端座標とを座標データとして記録する。さらに、プロセッサ230は、ストローク開始時刻として、当該座標データの記録の時刻を当該座標データに追加する。
In step S2150,
ステップS2170にて、プロセッサ230は、ステップS670における処理に加えて、ストローク終了時刻を座標データに追加する。
In step S2170,
このようにして、本実施の形態によると、座標入力部2001が時刻情報を扱うことなく、ストローク抽出部2002によって得られた時刻情報に基づいて、座標データにストローク開始時刻とストローク終了時刻を追加することができる。
Thus, according to the present embodiment, the coordinate
座標入力部301が各座標について時刻情報を付加すると、検出される座標値の数が多くなるにつれて、時刻情報も多くなる。その結果、座標データに必要な内部メモリ容量の増大につながる。一方、本実施の形態によると、各座標データは、x座標値とy座標値のみを情報として有しており、時刻情報を有していない。その結果、必要とされる内部メモリ容量を削減することができる。
When the coordinate
また、本実施の形態によると、1フレームにポインティングされたストロークについての座標値を1フレーム時間内に処理をするため、座標入力部2001が全フレーム分の座標データを蓄える必要がない。したがって、情報処理端末2000の内部メモリの容量が少ない時に、特に有効である。
In addition, according to the present embodiment, the coordinate value for the stroke pointed to one frame is processed within one frame time, so the coordinate
<第4の実施の形態>
以下、本発明の第4の実施の形態について説明する。本実施の形態に係る情報処理端末は、第3の実施の形態に係る情報処理端末2000と同様に、座標値を取得する際に、時刻情報を当該座標値に関連付けない。
<Fourth embodiment>
Hereinafter, a fourth embodiment of the present invention will be described. Similar to the
なお、本実施の形態に係る情報処理端末は、第1の実施の形態に係る情報処理端末を実現するハードウェア構成によって実現される。したがって、ハードウェア構成の説明は繰り返さない。 The information processing terminal according to the present embodiment is realized by a hardware configuration that realizes the information processing terminal according to the first embodiment. Therefore, the description of the hardware configuration will not be repeated.
図22は、本実施の形態に係る情報処理端末2200によって実現される機能の構成を表わすブロック図である。情報処理端末2200は、座標入力部2201と、ストローク抽出部2202と、ストローク形状判定部2203と、ストローク入力判定部2204と、照合部2205とを備える。
FIG. 22 is a block diagram showing a configuration of functions realized by
座標入力部2201は、フレーム毎に取得した座標データをストローク抽出部2202に送出する。
The coordinate
ストローク抽出部2202は、座標データからストロークデータを抽出し、そのストロークデータをストローク形状判定部2203に送出する。当該ストロークデータは、x座標値とy座標値とが含まれる座標データの配列のみを含む。
The
ストローク形状判定部2203は、このストロークデータに基づいてストロークの形状を判定し、当該判定を行なった時の時刻を、ストローク終了時刻としてストロークデータに加える。ストローク入力判定部2204は、当該ストロークデータに基づいてストロークの依存関係を判定し、ストロークデータと依存関係を表わすデータとを出力する。
The stroke
照合部2205は、ストロークデータおよび依存関係と、本人テンプレート306とに基づいて、本人認証を実行し、判定結果2207を出力する。
Based on the stroke data and the dependency relationship, and the
このような構成によると、内部メモリ容量を少なくしつつ、データのフロー処理を実行することができる。 According to such a configuration, data flow processing can be executed while reducing the internal memory capacity.
[コンピュータ構成]
図23を参照して、本発明の実施の形態に係る情報処理端末を実現する認証システム2300について説明する。図23は、認証システム2300のハードウェア構成を表わすブロック図である。認証システム2300は、周知の構成を有するコンピュータシステム2302と、タッチパネル2392とを備える。
[Computer configuration]
With reference to FIG. 23, an
コンピュータシステム2302は、主たる構成として、プログラムを実行するCPU(Central Processing Unit)2310と、コンピュータシステム2302の使用者による指示の入力を受けるマウス2320およびキーボード2330と、CPU2310によるプログラムの実行により生成されたデータ、又はマウス2320若しくはキーボード2330を介して入力されたデータを一時的に(揮発的に)格納するRAM2340と、データを不揮発的に格納するハードディスク2350と、CD−ROM(Compact Disk-Read Only Memory)その他の光ディスクを駆動する光ディスク駆動装置2360と、モニタ2370と、通信I/F(Interface)2380と、入力I/F2390とを含む。各構成要素は、相互にデータバスによって接続されている。光ディスク駆動装置2360には、CD−ROMその他の光ディスク2362が装着可能である。
The
コンピュータシステム2302における処理は、各ハードウェアおよびCPU2310により実行されるソフトウェアによって実現される。このようなソフトウェアは、ハードディスク2350に予め格納されている場合がある。また、ソフトウェアは、CD−ROM2362その他のデータ記録媒体に格納されて、プログラム製品として流通している場合もある。あるいは、ソフトウェアは、いわゆるインターネットに接続されている情報提供事業者のサーバ装置によってダウンロード可能なプログラム製品として提供される場合
もある。このようなソフトウェアは、光ディスク駆動装置2360その他の読取装置によりそのデータ記録媒体から読み取られて、あるいは、通信I/F2380を介してダウンロードされた後、ハードディスク2350に一旦格納される。そのソフトウェアは、CPU2310によってハードディスク2350から読み出され、実行可能なプログラムの形式でRAM2340に格納される。CPU2310は、そのプログラムを実行する。
The processing in the
図23に示されるコンピュータシステム2302のハードウェア構成は、一般的なものである。したがって、本発明の最も本質的な部分は、RAM2340、ハードディスク2350、CD−ROM2362その他のデータ記録媒体に格納されたソフトウェア、あるいはネットワークを介してダウンロード可能なソフトウェアであるともいえる。なお、コンピュータシステム2300の各ハードウェアの動作は周知であるので、詳細な説明は繰り返さない。
The hardware configuration of the
なお、記録媒体としては、CD−ROM、FD(Flexible Disk)、ハードディスクに限られず、磁気テープ、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、IC(Integrated Circuit)カード(メモリカードを含む)、光カード、マスクROM、EPROM(Erasable, Programmable Read-Only Memory)、EEPROM(Electronically Erasable
Programmable Read-Only Memory)、フラッシュROMなどの半導体メモリ等の固定的にプログラムを担持する媒体でもよい。
The recording medium is not limited to a CD-ROM, FD (Flexible Disk), and hard disk, but is a magnetic tape, a cassette tape, an optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc)). IC (Integrated Circuit) card (including memory card), optical card, mask ROM, EPROM (Erasable, Programmable Read-Only Memory), EEPROM (Electronically Erasable)
Programmable Read-Only Memory), a semiconductor memory such as a flash ROM, or the like may be a medium that carries a fixed program.
ここでいうプログラムとは、CPUにより直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。 The program here includes not only a program directly executable by the CPU but also a program in a source program format, a compressed program, an encrypted program, and the like.
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
本発明は、ノートブック型パーソナルコンピュータ、携帯電話、PDAその他の携帯可能な情報処理端末、あるいはATMその他本人認証を行なう情報処理通信装置に適用可能である。 The present invention can be applied to a notebook personal computer, a mobile phone, a PDA or other portable information processing terminal, or an ATM or other information processing communication apparatus that performs personal authentication.
100 情報処理端末、110 筐体、120 アンテナ、130 スピーカ、140
タッチパネル。
100 Information processing terminal, 110 housing, 120 antenna, 130 speaker, 140
Touch panel.
Claims (15)
予め入力されたテンプレートを格納するテンプレート記憶部と、
1つ以上の点入力を受け付けるように構成された入力装置と、
前記入力装置によって入力が受け付けられた点の座標値を含む座標データを取得するように構成された座標データ取得部と、
前記座標データ取得部によって取得された複数の前記座標データに基づいて、前記入力装置に対する入力の始点から終点までを示すストロークの座標値をストロークデータとして算出するように構成されたストローク抽出部と、
前記ストローク抽出部によって算出されたストロークデータに基づいて、前記ストロークの形状を判定するように構成されたストローク形状判定部と、
前記ストローク抽出部によって算出されたストロークデータに基づいて、前記入力装置に対する点入力が、同時入力または逐次入力のいずれであるかを判定するように構成されたストローク入力判定部と、
前記ストローク形状判定部による判定結果と、前記ストローク入力判定部による判定結果とに基づいて、前記入力装置を介して入力されたストロークと、前記テンプレートとが、一致するか否かを判定するように構成された照合部とを備える、認証装置。 An authentication device for authenticating a handwritten password,
A template storage unit for storing a template input in advance;
An input device configured to accept one or more point inputs;
A coordinate data acquisition unit configured to acquire coordinate data including a coordinate value of a point received by the input device;
A stroke extraction unit configured to calculate, as stroke data, a coordinate value of a stroke indicating a start point to an end point of input to the input device based on the plurality of coordinate data acquired by the coordinate data acquisition unit;
A stroke shape determination unit configured to determine the shape of the stroke based on the stroke data calculated by the stroke extraction unit;
A stroke input determination unit configured to determine whether point input to the input device is simultaneous input or sequential input based on stroke data calculated by the stroke extraction unit;
Based on the determination result by the stroke shape determination unit and the determination result by the stroke input determination unit, it is determined whether or not the stroke input via the input device matches the template. An authentication device comprising a configured verification unit.
前記座標データ取得部は、前記入力装置から前記座標値を取得した時刻と、前記入力装置によって指示された点の座標値とを、前記座標データとして取得する、請求項1に記載の認証装置。 A clock unit configured to acquire timing when input to the input device is performed;
The authentication device according to claim 1, wherein the coordinate data acquisition unit acquires, as the coordinate data, a time when the coordinate value is acquired from the input device and a coordinate value of a point designated by the input device.
1回の認証に必要な座標データが前記座標データ記憶手段に格納されたことを検知するように構成された検知部とをさらに備え、
前記座標データ取得部は、前記1回の認証に必要な座標データが前記座標データ記憶部に格納された後に、前記座標データを取得する、請求項1に記載の認証装置。 A coordinate data storage unit configured to store each of the coordinate data acquired by the coordinate data acquisition unit;
A detection unit configured to detect that the coordinate data required for one authentication is stored in the coordinate data storage unit;
The authentication device according to claim 1, wherein the coordinate data acquisition unit acquires the coordinate data after the coordinate data necessary for the one-time authentication is stored in the coordinate data storage unit.
前記ストローク抽出部は、ストロークの検出に応答して、または、前記ストロークの入力の終了に応答して、前記計時部によって取得されたタイミングを前記ストロークデータに含める、請求項1に記載の認証装置。 A clock unit configured to acquire a timing at which the processing by the stroke extraction unit is performed;
The authentication device according to claim 1, wherein the stroke extraction unit includes the timing acquired by the time measuring unit in response to detection of a stroke or in response to completion of input of the stroke in the stroke data. .
前記ストローク形状判定部は、前記x座標値の最大値およびy座標値の最大値と、前記x座標値の最小値およびy座標値の最小値とに基づいて、ストロークの形状を判断する、請求項1に記載の認証装置。 Coordinate value calculation configured to calculate the maximum value of the x coordinate value and the maximum value of the y coordinate value, and the minimum value of the x coordinate value and the minimum value of the y coordinate value from the coordinate data included in the stroke data. Further comprising
The stroke shape determination unit determines the shape of a stroke based on the maximum value of the x coordinate value and the maximum value of the y coordinate value, and the minimum value of the x coordinate value and the minimum value of the y coordinate value. Item 4. The authentication device according to Item 1.
置の座標値とを含むストロークデータを算出し、
前記ストローク形状判定部は、前記開始位置の座標値と、前記終了位置の座標値とに基づいて、前記ストロークの形状を判断する、請求項1に記載の認証装置。 The stroke extraction unit calculates stroke data including a coordinate value of a start position of a stroke and a coordinate value of an end position of the stroke;
The authentication device according to claim 1, wherein the stroke shape determination unit determines the shape of the stroke based on the coordinate value of the start position and the coordinate value of the end position.
前記ストローク形状判定部は、前記x座標値の最大値およびy座標値の最大値と前記x座標値の最小値およびy座標値の最小値に基づいて、前記入力装置を介して入力されたストロークの形状が点であるか否かを判断し、
前記ストローク形状判定部が前記ストロークの形状を点でないと判定すると、前記照合部は、前記ストロークを用いた認証処理を実行し、
前記ストローク形状判定部が前記ストロークの形状を点であると判定すると、前記照合部は、形状を点と判定した前記ストロークを認証処理に使用しない、請求項1に記載の認証装置。 A coordinate calculation unit configured to obtain a maximum value of x-coordinate values and a maximum value of y-coordinate values, and a minimum value of x-coordinate values and a minimum value of y-coordinate values from coordinate data included in the stroke data; In addition,
The stroke shape determining unit is configured to input a stroke input via the input device based on the maximum value of the x coordinate value, the maximum value of the y coordinate value, the minimum value of the x coordinate value, and the minimum value of the y coordinate value. Determine if the shape of is a point,
When the stroke shape determination unit determines that the shape of the stroke is not a point, the verification unit performs an authentication process using the stroke,
The authentication device according to claim 1, wherein when the stroke shape determination unit determines that the shape of the stroke is a point, the collation unit does not use the stroke whose shape is determined as a point for authentication processing.
複数のストロークデータのストローク開始時刻を比較し、
各前記ストローク開始時刻の差が予め定められた一定値以下の場合に、前記比較した複数のストロークデータに共通するストローク開始時刻を設定する、請求項1に記載の認証装置。 The stroke input determination unit
Compare the stroke start times of multiple stroke data,
The authentication device according to claim 1, wherein a stroke start time common to the plurality of compared stroke data is set when a difference between the stroke start times is equal to or less than a predetermined value.
複数のストロークデータのストローク終了時刻を比較し、
各前記ストローク終了時刻の差が予め定められた一定値以下の場合に、前記比較した複数のストロークデータに共通するストローク終了時刻を設定する、請求項1に記載の認証装置。 The stroke input determination unit
Compare the stroke end times of multiple stroke data,
The authentication device according to claim 1, wherein a stroke end time common to the plurality of compared stroke data is set when a difference between the stroke end times is equal to or less than a predetermined value.
予め入力されたテンプレートを読み出すステップと、
1つ以上の点入力を受け付けるステップと、
入力が受け付けられた点の座標値を含む座標データを取得するステップと、
前記取得された複数の前記座標データに基づいて、入力の始点から終点までを示すストロークの座標値をストロークデータとして算出するステップと、
前記算出されたストロークデータに基づいて、前記ストロークの形状を判定するステップと、
前記ストロークデータに基づいて、前記点入力が、同時入力または逐次入力のいずれであるかを判定するステップと、
前記ストローク形状についての判定結果と、前記点入力についての判定結果とに基づいて、前記入力されたストロークと、前記テンプレートとが、一致するか否かを判定するステップとを含む、認証方法。 An authentication method in which a processor authenticates a handwritten password,
Reading a pre-filled template;
Receiving one or more point inputs;
Obtaining coordinate data including the coordinate value of the point for which input is accepted;
Calculating, as stroke data, a coordinate value of a stroke indicating from an input start point to an end point based on the plurality of the acquired coordinate data;
Determining the shape of the stroke based on the calculated stroke data;
Determining whether the point input is simultaneous input or sequential input based on the stroke data; and
An authentication method comprising: determining whether or not the input stroke and the template match based on a determination result on the stroke shape and a determination result on the point input.
は前記コンピュータに、
予め入力されたテンプレートを読み出すステップと、
1つ以上の点入力を受け付けるステップと、
入力が受け付けられた点の座標値を含む座標データを取得するステップと、
前記取得された複数の前記座標データに基づいて、入力の始点から終点までを示すストロークの座標値をストロークデータとして算出するステップと、
前記算出されたストロークデータに基づいて、前記ストロークの形状を判定するステップと、
前記ストロークデータに基づいて、前記点入力が、同時入力または逐次入力のいずれであるかを判定するステップと、
前記ストローク形状についての判定結果と、前記点入力についての判定結果とに基づいて、前記入力されたストロークと、前記テンプレートとが、一致するか否かを判定するステップとを実行させる、プログラム。 A program for causing a computer to function as an authentication device, wherein the program causes the computer to
Reading a pre-filled template;
Receiving one or more point inputs;
Obtaining coordinate data including the coordinate value of the point for which input is accepted;
Calculating, as stroke data, a coordinate value of a stroke indicating from an input start point to an end point based on the plurality of the acquired coordinate data;
Determining the shape of the stroke based on the calculated stroke data;
Determining whether the point input is simultaneous input or sequential input based on the stroke data; and
A program for executing a step of determining whether or not the input stroke matches the template based on a determination result for the stroke shape and a determination result for the point input.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008000159A JP2009163482A (en) | 2008-01-04 | 2008-01-04 | Authentication device, authentication method, program for making computer function as authentication device and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008000159A JP2009163482A (en) | 2008-01-04 | 2008-01-04 | Authentication device, authentication method, program for making computer function as authentication device and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009163482A true JP2009163482A (en) | 2009-07-23 |
Family
ID=40966036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008000159A Withdrawn JP2009163482A (en) | 2008-01-04 | 2008-01-04 | Authentication device, authentication method, program for making computer function as authentication device and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009163482A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012203563A (en) * | 2011-03-24 | 2012-10-22 | Dainippon Printing Co Ltd | Operation input detection device using touch panel |
JP2013254468A (en) * | 2012-03-31 | 2013-12-19 | Akita Univ | Inversion tuning test method and access authentication method |
JP2014178945A (en) * | 2013-03-15 | 2014-09-25 | Nec Corp | Control device, control method, program and terminal device |
JP2016537757A (en) * | 2013-11-05 | 2016-12-01 | グーグル インコーポレイテッド | Directional touch unlock for electronic devices |
-
2008
- 2008-01-04 JP JP2008000159A patent/JP2009163482A/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012203563A (en) * | 2011-03-24 | 2012-10-22 | Dainippon Printing Co Ltd | Operation input detection device using touch panel |
JP2013254468A (en) * | 2012-03-31 | 2013-12-19 | Akita Univ | Inversion tuning test method and access authentication method |
JP2014178945A (en) * | 2013-03-15 | 2014-09-25 | Nec Corp | Control device, control method, program and terminal device |
JP2016537757A (en) * | 2013-11-05 | 2016-12-01 | グーグル インコーポレイテッド | Directional touch unlock for electronic devices |
CN110781479A (en) * | 2013-11-05 | 2020-02-11 | 谷歌有限责任公司 | Directional touch unlocking for electronic devices |
CN110781479B (en) * | 2013-11-05 | 2021-02-26 | 谷歌有限责任公司 | Directional touch unlocking for electronic devices |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105980973B (en) | User authentication gesture | |
JP5740407B2 (en) | System and method for assessing authenticity of a dynamic handwritten signature | |
KR101839860B1 (en) | Dynamic keyboard and touchscreen biometrics | |
US8376854B2 (en) | Around device interaction for controlling an electronic device, for controlling a computer game and for user verification | |
KR102143574B1 (en) | Method and apparatus for online signature vefication using proximity touch | |
CN110945520B (en) | biometric authentication system | |
US9880634B2 (en) | Gesture input apparatus, gesture input method, and program for wearable terminal | |
KR20130140893A (en) | Electronic device for collecting finger data and displaying a finger movement trace and related methods | |
WO2013069372A1 (en) | Biometric authentication device and automatic transaction device provided with same | |
JP6272069B2 (en) | Information processing apparatus, information processing method, computer program, and recording medium | |
JP2009163482A (en) | Authentication device, authentication method, program for making computer function as authentication device and recording medium | |
JP6060501B2 (en) | Handwriting management program and recording display device | |
JP6177729B2 (en) | Electronics | |
JP6028320B2 (en) | Contact detection device, recording display device, and program | |
JP2014134571A (en) | Computer device, reproduction system, and program | |
JP2019507435A (en) | Dynamic mobile tracking based handwritten signature authentication system and method for spatial segmentation | |
WO2021145285A1 (en) | Information processing device, information processing method, information processing program | |
JP4644689B2 (en) | Electric device and method for controlling electric device | |
KR20230113942A (en) | A method for performing user authentication according to handwriting input based on artificial intelligence and an apparatus for performing user authentication according to handwriting input based on artificial intelligence | |
JP7305170B2 (en) | PEN INPUT PERSONAL AUTHENTICATION METHOD, PROGRAM FOR EXERCISEING PEN INPUT PERSONAL AUTHENTICATION METHOD ON COMPUTER, AND COMPUTER-READABLE STORAGE MEDIUM | |
WO2018025433A1 (en) | Authentication device, authentication method, and program | |
JP6276890B1 (en) | Signature verification system | |
TWI738146B (en) | Character recognition method and touch control module using the same | |
JP2010198076A (en) | Handwriting authentication device, display method for handwriting authentication pattern and display program for handwriting authentication pattern | |
JP2018045729A (en) | Information processing apparatus, information processing method, computer program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110405 |