(57)【要約】【課題】手書きされたサインからより多くの特徴データをサインデータとして取得することが可能な情報処理装置を実現する。【解決手段】サイン認証プログラムの有効データ決定部４１３は、座標データ取得部４１１によって取得される座標データ（Ｘ，Ｙ）および筆圧データ（Ｚ）それぞれの時系列データから、サインデータとして使用すべき有効データの範囲を決定する。有効データ決定部４１３は、実ストローク終了点からサインの手書き入力の完了が検知されるまでの間に取得された３次元の時系列データ（Ｘ，Ｙ，Ｚ）から、実ストローク終了点に後続して取得された所定個数分の３次元の時系列データ（Ｘ，Ｙ，Ｚ）を、実ストローク終了点以降における有効空中筆跡データとして抽出する。サイン入力開始点から実ストローク終了点までに取得された３次元の時系列データ（Ｘ，Ｙ，Ｚ）と、有効空中筆跡データとして抽出した所定個数分の３次元の時系列データ（Ｘ，Ｙ，Ｚ）とが、有効なサインデータとして確定される。【選択図】      図６
2005149119.tif 000002
【特許請求の範囲】
【請求項１】
スタイラスによって指定された位置に対応する座標データおよび筆圧データを入力する入力装置と、
前記入力装置に手書き入力されるサインに対応する座標データおよび筆圧データを、前記入力装置から順次取得する手段と、
取得される筆圧データに基づいて、前記スタイラスが前記入力装置から浮遊している状態であるか否かを判別する手段と、
前記スタイラスが浮遊している状態が所定時間継続した場合、前記サインの手書き入力が完了したことを検知する手段と、
前記サインの手書き入力の完了が検知された場合、前記スタイラスが前記入力装置に最後に接触した実ストローク終了点を決定する手段と、
前記実ストローク終了点から前記サインの手書き入力の完了が検知されるまでに取得された座標データの列および筆圧データの列から、前記実ストローク終了点に後続して取得された所定個数分の座標データを、前記実ストローク終了点以降における有効空中筆跡データとして抽出する手段と、
前記スタイラスが前記入力装置に最初に接触したサイン入力開始点から前記実ストローク終了点までに取得された座標データの列および筆圧データの列と、前記有効空中筆跡データとして抽出された座標データの列とを、前記手書き入力されたサインに対応するサインデータとして確定する手段とを具備することを特徴とする情報処理装置。
【請求項２】
前記抽出手段は、前記実ストローク終了点から所定時間経過するまでに取得された座標データの列および筆圧データの列を、前記有効空中筆跡データとして抽出する手段を含むことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記確定されたサインデータと前記情報処理装置内の記憶装置に予め記憶されているサインデータとを照合することにより、前記手書き入力されたサインが正当なものであるか否かを判別する認証処理を実行する手段をさらに具備することを特徴とする請求項１記載の情報処理装置。
【請求項４】
スタイラスによって指定された位置に対応する座標データおよび筆圧データを入力する入力装置と、
前記入力装置に手書き入力されるサインに対応する座標データおよび筆圧データを、前記入力装置から順次取得する手段と、
前記サインの手書き入力の完了を示すデータを入力するボタンと、
前記ボタンの操作に応答して、前記サインの手書き入力が完了したことを検知する手段と、
前記サインの手書き入力の完了が検知された場合、前記スタイラスが前記入力装置に最後に接触した実ストローク終了点を決定する手段と、
前記実ストローク終了点から前記サインの手書き入力の完了が検知されるまでに取得された座標データの列および筆圧データの列から、前記実ストローク終了点に後続して取得された所定個数分の座標データを、前記実ストローク終了点以降における有効空中筆跡データとして抽出する手段と、
前記スタイラスが前記入力装置に最初に接触したサイン入力開始点から前記実ストローク終了点までに取得された座標データの列および筆圧データの列と、前記有効空中筆跡データとして抽出された座標データの列とを、前記手書き入力されたサインに対応するサインデータとして確定する手段とを具備することを特徴とする情報処理装置。
【請求項５】
前記抽出手段は、前記実ストローク終了点から所定時間経過するまでに取得された座標データの列および筆圧データの列を、前記有効空中筆跡データとして抽出する手段を含むことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記確定されたサインデータと前記情報処理装置内の記憶装置に予め記憶されているサインデータとを照合することにより、前記手書き入力されたサインが正当なものであるか否かを判別する認証処理を実行する手段をさらに具備することを特徴とする請求項４記載の情報処理装置。
【請求項７】
手書き入力可能な入力装置を含むコンピュータに、手書きされたサインに対応するサインデータを入力する処理を実行させるプログラムであって、
前記入力装置に手書き入力されるサインに対応する座標データおよび筆圧データを前記入力装置から順次取得する処理を、前記コンピュータに実行させる手順と、
取得される筆圧データに基づいて前記スタイラスが前記入力装置から浮遊している状態であるか否かを判別する処理を、前記コンピュータに実行させる手順と、
前記スタイラスが前記入力装置から浮遊している状態が所定時間継続した場合、前記サインの手書き入力が完了したことを検知する処理を、前記コンピュータに実行させる手順と、
前記サインの手書き入力の完了が検知された場合、前記スタイラスが前記入力装置に最後に接触した実ストローク終了点を決定する処理を、前記コンピュータに実行させる手順と、
前記実ストローク終了点から前記サインの手書き入力の完了が検知されるまでに取得された座標データの列および筆圧データの列から、前記実ストローク終了点に後続して取得された所定個数分の座標データを、前記実ストローク終了点以降における有効空中筆跡データとして抽出する処理を、前記コンピュータに実行させる手順と、
前記スタイラスが前記入力装置に最初に接触したサイン入力開始点から前記実ストローク終了点までに取得された座標データの列および筆圧データの列と、前記有効空中筆跡データとして抽出された座標データの列とを、前記手書き入力されたサインに対応するサインデータとして確定する処理を、前記コンピュータに実行させる手順とを具備することを特徴とするプログラム。
【請求項８】
前記抽出する処理は、前記実ストローク終了点から所定時間経過するまでに取得された座標データの列および筆圧データの列を、前記有効空中筆跡データとして抽出する処理を含む請求項７記載のプログラム。
【請求項９】
前記確定されたサインデータと前記情報処理装置内の記憶装置に予め記憶されているサインデータとを照合することにより、前記手書き入力されたサインが正当なものであるか否かを判別する認証処理を、前記コンピュータに実行させる手順をさらに具備することを特徴とする請求項７記載のプログラム。
【請求項１０】
手書き入力可能な入力装置を含むコンピュータに、手書きされたサインに対応するサインデータを入力する処理を実行させるプログラムであって、
前記入力装置に手書き入力されるサインに対応する座標データおよび筆圧データを前記入力装置から順次取得する処理を、前記コンピュータに実行させる手順と、
前記サインの手書き入力の完了を示すデータを入力するボタンの操作に応答して前記サインの手書き入力が完了したことを検知する処理を、前記コンピュータに実行させる手順と、
前記サインの手書き入力の完了が検知された場合、前記スタイラスが前記入力装置に最後に接触した実ストローク終了点を決定する処理を、前記コンピュータに実行させる手順と、
前記実ストローク終了点から前記サインの手書き入力の完了が検知されるまでに取得された座標データの列および筆圧データの列から、前記実ストローク終了点に後続して取得された所定個数分の座標データを、前記実ストローク終了点以降における有効空中筆跡データとして抽出する処理を、前記コンピュータに実行させる手順と、
前記スタイラスが前記入力装置に最初に接触したサイン入力開始点から前記実ストローク終了点までに取得された座標データの列および筆圧データの列と、前記有効空中筆跡データとして抽出された座標データの列とを、前記手書き入力されたサインに対応するサインデータとして確定する処理を、前記コンピュータに実行させる手順とを具備することを特徴とするプログラム。
【請求項１１】
前記抽出する処理は、前記実ストローク終了点から所定時間経過するまでに取得された座標データの列および筆圧データの列を、前記有効空中筆跡データとして抽出する処理を含む請求項１０記載のプログラム。
【請求項１２】
前記確定されたサインデータと前記情報処理装置内の記憶装置に予め記憶されているサインデータとを照合することにより、前記手書き入力されたサインが正当なものであるか否かを判別する認証処理を、前記コンピュータに実行させる手順をさらに具備することを特徴とする請求項１０記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は手書きされたサインに対応するサインデータを入力するための情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
近年、サイン認証技術が注目されている。サイン認証技術は、手書きされたサイン（署名）に対応する電子データであるサインデータを用いて認証処理を実行する技術である。このサイン認証技術を用いることにより、本人確認のような認証処理を効率よく実行することが出来る。
【０００３】
サイン認証技術においては、手書きされたサインの特徴を示すサインデータを入力するための機能が必要となる。
【０００４】
サインデータを入力する方法としては、署名の開始点から最後の実ストロークまでを有効なサインデータとして用いる方法が知られている（例えば、特許文献１参照。）。特許文献１の方法においては、署名の開始点から最後の実ストロークまでの座標データの列および筆圧データの列が有効データとして扱われる。最後の実ストロークの終了点以降に入力される、座標データの列および筆圧データの列の全てはノイズとして削除される。
【特許文献１】特許第２７３６０８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、より高精度なサイン認証を実現するためには、手書きされたサインからより多くの特徴データをサインデータとして取得することが必要とされる。よって、手書きされたサインから、有効なサインデータの範囲を決定するための新たな技術の実現が必要である。
【０００６】
本発明は上述の事情を考慮してなされたものであり、手書きされたサインからより多くの特徴データをサインデータとして取得することが可能な情報処理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述の課題を解決するため、本発明の情報処理装置は、スタイラスによって指定された位置に対応する座標データおよび筆圧データを入力する入力装置と、前記入力装置に手書き入力されるサインに対応する座標データおよび筆圧データを、前記入力装置から順次取得する手段と、取得される筆圧データに基づいて、前記スタイラスが前記入力装置から浮遊している状態であるか否かを判別する手段と、前記スタイラスが浮遊している状態が所定時間継続した場合、前記サインの手書き入力が完了したことを検知する手段と、前記サインの手書き入力の完了が検知された場合、前記スタイラスが前記入力装置に最後に接触した実ストローク終了点を決定する手段と、前記実ストローク終了点から前記サインの手書き入力の完了が検知されるまでに取得された座標データの列および筆圧データの列から、前記実ストローク終了点に後続して取得された所定個数分の座標データを、前記実ストローク終了点以降における有効空中筆跡データとして抽出する手段と、前記スタイラスが前記入力装置に最初に接触したサイン入力開始点から前記実ストローク終了点までに取得された座標データの列および筆圧データの列と、前記有効空中筆跡データとして抽出された座標データの列とを、前記手書き入力されたサインに対応するサインデータとして確定する手段とを具備することを特徴とする。
【０００８】
この情報処理装置においては、サイン入力開始点から実ストローク終了点までに取得された座標データの列および筆圧データの列のみならず、実ストローク終了点に後続して取得された所定個数分の座標データをもサインデータとして確定される。実ストローク終了点直後の幾つかの座標データは、実ストローク終了直後におけるスタイラスの空中における動きを示すものであり、サインの特徴データとして有効に利用することが出来る。
【発明の効果】
【０００９】
本発明によれば、手書きされたサインからより多くの特徴データをサインデータとして取得することが可能となるので、そのサインデータを用いることによってより高精度なサイン認証を実現することができる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して、本発明の実施形態を説明する。  
まず、図１および図２を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。この情報処理装置は、例えば、ノートブック型パーソナルコンピュータとして実現されている。
【００１１】
図１はノートブック型パーソナルコンピュータのディスプレイユニットを開いた状態における正面図である。本コンピュータ１は、いわゆるタブレットパーソナルコンピュータであり、コンピュータ本体１１と、ディスプレイユニット１２とから構成されている。ディスプレイユニット１２には、表示装置１２０が組み込まれており、その表示装置１２０の表示画面はディスプレイユニット１２のほぼ中央に位置されている。
【００１２】
表示装置１２０は、スタイラス（ペン）１０のペン先で指定された位置を検出可能に構成されたタッチスクリーンデバイス（タブレット）である。この表示装置１２０は、ＬＣＤ（Liquid Crystal Display）とディジタイザとから構成されている。ディジタイザは、スタイラス１０のペン先によって指定された位置を検知して、当該位置に対応する座標データおよびその位置における筆圧データを入力する入力装置である。ディジタイザとしては、例えば、電磁誘導方式のものが用いられる。
【００１３】
この場合、ディジタイザは、たとえスタイラス１０のペン先が表示装置１２０の表面に接触していない状態であっても、そのペン先で指定された位置に対応する座標データおよび筆圧データを検知することが出来る。筆圧データは、スタイラス１０のペン先が表示装置１２０の表面に接する圧力を示す。スタイラス１０のペン先が表示装置１２０の表面に接触していない状態つまりスタイラス１０が浮遊している状態においては、圧力は無いが、スタイラス１０のペン先が表示装置１２０の表面に接触していない状態においては、一定の圧力が生じる。ディジタイザは、例えば、スタイラス１０のペン先からの電磁信号の位相の変化に応じて、筆圧の値を検知することができる。電磁信号の位相は、例えば、スタイラス１０に含まれる圧力センサによって変化される。
【００１４】
ディスプレイユニット１２は、コンピュータ本体１１に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体１１は薄い箱形の筐体を有しており、その上面にはキーボード１３、本コンピュータ１を電源オン／オフするためのパワーボタン１４、およびタッチパッド１５などが配置されている。
【００１５】
次に、図２を参照して、本コンピュータ１のシステム構成について説明する。
【００１６】
本コンピュータ１には、図２に示されているように、ＣＰＵ１０１、ホストブリッジ１０２、主メモリ１０３、表示コントローラ１０４、システムコントローラ１０５、ハードディスクドライブ（ＨＤＤ）１０６、ディジタイザコントローラ１０７、ＢＩＯＳ−ＲＯＭ１１０、およびエンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１１１等が設けられている。
【００１７】
ＣＰＵ１０１は本コンピュータ１の動作を制御するために設けられたプロセッサであり、ハードディスクドライブ（ＨＤＤ）１０６から主メモリ１０３にロードされたオペレーティングシステム（ＯＳ）および各種アプリケーション／ユーティリティプログラムを実行する。また、ＣＰＵ１０１は、ＢＩＯＳ−ＲＯＭ１１０に格納されたＢＩＯＳ（Basic Input Output System）も実行する。
【００１８】
コンピュータ１においては、ユーティリティプログラムの一つとして、サイン認証プログラムが予めインストールされている。このサイン認証プログラムは、スタイラス１０を用いてユーザが手書きしたサイン（自署）を用いることによって、本人確認のための認証処理を行うプログラムである。サイン認証プログラムは、例えば、コンピュータ１にログオンするユーザを認証するために使用される。
【００１９】
サイン認証プログラムは、ユーザによって手書きされたサインに対応する電子データであるサインデータを入力する処理を実行するサインデータ入力機能を有している。サインデータは、手書きされたサインの特徴を示す。サインデータは、例えば、３次元（Ｘ座標、Ｙ座標、筆圧）の時系列データから構成される。サイン認証プログラムは、さらに、サイン登録処理機能、およびサイン認証処理機能を有している。
【００２０】
サイン登録処理機能は、サインデータ入力機能によって入力されたサインデータをコンピュータ１に登録する機能である。サイン認証処理機能は、コンピュータ１にログオンするユーザを認証するために使用される。サイン認証処理機能は、サインデータ入力機能によって入力されたサインデータと、コンピュータ１に登録されているサインデータとを照合することによって、ユーザによって手書きされたサインが正当なものであるかどうかを判別する。
【００２１】
このように、サインデータ入力機能は、ユーザのサインデータをコンピュータ１に登録する時、およびコンピュータ１にログオンするユーザを認証する時に用いられる。
【００２２】
本実施形態においては、手書き入力されたサインが正当なサインであるか、悪意をもつ第三者による偽サインであるかを判別できるようにするために、最後の実ストローク直後の空中筆跡を示すデータをもサインデータとして使用する。最後の実ストローク直後の空中筆跡は、最後の実ストローク直後におけるスタイラス１０の空中での動きの軌跡を示すものである。
【００２３】
ホストブリッジ１０２はＣＰＵ１０１のローカルバスとシステムコントローラ１０５との間を接続するブリッジデバイスである。ホストブリッジ１０２には、主メモリ１０３をアクセス制御するメモリコントローラが内蔵されている。表示コントローラ１０４は本コンピュータ１のディスプレイモニタとして使用されるＬＣＤ１２１を制御する。
【００２４】
システムコントローラ１０５は、ＰＣＩバス上の各デバイスおよびＩＳＡバス上の各デバイスを制御する。また、システムコントローラ１０５には、ＨＤＤ１０６を制御するためのＩＤＥコントローラも内蔵されている。
【００２５】
ディジタイザコントローラ１０７は、ディジタイザ１２２を制御するデバイスである。ディジタイザコントローラ１０７は、ディジタイザ１２２から座標データおよび筆圧データを取得する。ディジタイザ１２２は、例えば、ＬＣＤ１２１上に配置された透明ボードとして実現されている。
【００２６】
エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１１１は、電力管理のためのエンベデッドコントローラと、キーボード（ＫＢ）１３を制御するためのキーボードコントローラとが集積された１チップマイクロコンピュータである。このエンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１０９は、ユーザによるパワーボタン１４の操作に応じて本コンピュータ１をパワーオン／パワーオフする機能を有している。
【００２７】
次に、図３を参照して、ディジタイザ１２２がスタイラス１０のペン先の位置を検知可能な有効エリアについて説明する。
【００２８】
ディジタイザ１２２は入力面を有しており、その入力面は表示装置１２０の表面と一体化されている。図３において、破線で囲まれたエリアは、ディジタイザ１２２がスタイラス１０のペン先の位置を検知可能な有効エリアを示している。ディジタイザ１２２は、スタイラス１０のペン先で指定される入力面上の位置に対応するＸ，Ｙ，Ｚの３次元の座標データを出力する。ここで、Ｚは上述の筆圧を示す。本実施形態では、
（１）Ｚ≦０；  筆圧が生じている状態
（２）Ｚ＞０；  筆圧が生じていない状態
と定義する。
【００２９】
（１）の状態は、スタイラス１０のペン先がディジタイザ１２２の入力面に接触している状態である。ペン先がディジタイザ１２２の入力面に接触している状態におけるペン先の動き（実ストローク）が、筆跡として表示装置１２０上に表示される。
【００３０】
（２）の状態は、スタイラス１０のペン先がディジタイザ１２２の入力面から浮遊している状態である。たとえペン先が浮遊している状態においてもペン先が有効エリア内に存在するならば、ペン先の動きはディジタイザ１２２によって検知される。ペン先が浮遊している状態におけるペン先の動き（空中筆跡）に対応する筆跡ついては、表示装置１２０上には表示されない。
【００３１】
図４には、サイン認証プログラムによって表示されるサイン登録画面の例が示されている。サイン認証プログラムは、ユーザによってサイン登録が要求された時に、図４に示すようなサイン登録画面２００を表示装置１２０に表示する。
【００３２】
サイン登録画面２００は、手書き入力エリア２０１、および［ＯＫ］ボタン２０２を表示する。手書き入力エリア２０１は、ユーザがスタイラス１０を用いてサインを手書きするためのエリアである。サイン登録処理においては、複数回（例えば６回）のサインの手書き入力が行われる。［ＯＫ］ボタン２０２は、サインの手書き入力の完了を示すデータを入力するボタンである。
【００３３】
サイン認証プログラムは、ユーザが［ＯＫ］ボタン２０２を押した時、またはサインの手書き入力が開始されてからスタイラス１０の浮遊状態が一定時間以上継続したことが検出された時に、サインの手書き入力が完了したと判断する。サイン認証プログラムは、入力された６個のサインデータからコンピュータ１に保存するサインデータを生成する。
【００３４】
図５には、サイン認証プログラムによって表示されるサイン認証画面の例が示されている。サイン認証プログラムは、コンピュータ１の起動時またはログオンユーザを切り替えるユーザスイッチング時に、図５に示すようなサイン認証画面３００を表示装置１２０に表示する。サイン認証画面３００は、手書き入力エリア３０１、および［ＯＫ］ボタン３０２を表示する。手書き入力エリア３０１は、ユーザがスタイラス１０を用いてサインを手書きするためのエリアである。［ＯＫ］ボタン３０２は、サインの手書き入力の完了を示すデータを入力するボタンである。
【００３５】
サイン認証プログラムは、ユーザが［ＯＫ］ボタン３０２を押した時、またはサインの手書き入力が開始されてからスタイラス１０の浮遊状態が一定時間以上継続したことが検出された時に、サインの手書き入力が完了したと判断する。サイン認証プログラムは、手書き入力されたサインに対応するサインデータと既にコンピュータ１に登録されているサインデータとを照合することにより、手書き入力されたサインが正当なものであるか否かを判別する。つまり、手書き入力されたサインがパスワードの代わりに利用されることになる。
【００３６】
図６には、サイン認証プログラムのモジュール構成の例が示されている。  
サイン認証プログラムは、図示のように、サイン入力モジュール４０１、サイン登録モジュール４０２、およびサイン認証モジュール４０３を含む。
【００３７】
サイン入力モジュール４０１は、上述のサイン入力処理を実行する。またサイン登録モジュール４０２およびサイン認証モジュール４０３は、それぞれ上述のサイン登録処理およびサイン認証処理を実行する。サイン入力モジュール４０１は、座標データ取得部４１１、サイン入力完了検出部４１２、および有効データ決定部４１３を含む。
【００３８】
座標データ取得部４１１は、座標データ（Ｘ，Ｙ）および筆圧データ（Ｚ）を所定のサンプリングレートでディジタイザ１２２から順次取得する。サンプリングレートは、例えば、１３３／秒である。これにより、１秒間に１３３個のサンプリングデータが取得される。各サンプリングデータは、座標データ（Ｘ，Ｙ）および筆圧データ（Ｚ）を含む。
【００３９】
サイン入力完了検出部４１２は、サインの手書き入力が完了したことを検知する為に、以下の処理を実行する。
【００４０】
（１）サイン入力完了検出部４１２は、座標データ取得部４１１によって取得される筆圧データ（Ｚ）の時系列データに基づいて、スタイラス２０がディジタイザ１２２の入力面から浮遊している状態であるか否かを判別する。
【００４１】
（２）サイン入力完了検出部４１２は、筆圧データ（Ｚ）の時系列データに基づいて、スタイラス２０が浮遊している時間の長さをカウントする。
【００４２】
（３）サイン入力完了検出部４１２は、スタイラス１０がディジタイザ１２２の入力面から浮遊している状態が所定時間継続した場合、サインの手書き入力が完了したことを検知する。
【００４３】
有効データ決定部４１３は、座標データ取得部４１１によって取得される座標データ（Ｘ，Ｙ）および筆圧データ（Ｚ）それぞれの時系列データから、サインデータとして使用すべき有効データの範囲を決定する。有効データ決定部４１３は、有効データの範囲を決定する為に、以下の処理を実行する。
【００４４】
（１）サインの手書き入力の完了が検知されると、有効データ決定部４１３は、取得された筆圧データ（Ｚ）の時系列データに基づいて、スタイラス１０がディジタイザ１２２の入力面に最後に接触した実ストローク終了点を決定する。
【００４５】
（２）有効データ決定部４１３は、実ストローク終了点からサインの手書き入力の完了が検知されるまでの間に取得された３次元の時系列データ（Ｘ，Ｙ，Ｚ）から、実ストローク終了点に後続して取得された所定個数分の３次元の時系列データ（Ｘ，Ｙ，Ｚ）を、実ストローク終了点以降における有効空中筆跡データとして抽出する。実ストローク終了点直後の幾つかの３次元の時系列データ（Ｘ，Ｙ，Ｚ）は、最後の実ストローク終了直後におけるスタイラスの空中における軌跡を表す。実ストローク終了直後におけるスタイラスの空中における軌跡は、実ストロークと同様に、サインの特徴を表す有効な情報として使用することができる。有効空中筆跡データとして抽出される時系列データの個数は、例えば、４個程度でよい。１３３／秒のサンプリングレートを使用する場合には、最後の実ストローク終了直後から４／１３３秒経過するまでに取得される幾つかの３次元の時系列データ（Ｘ，Ｙ，Ｚ）が、有効空中筆跡データとなる。
【００４６】
（３）有効データ決定部４１３は、サイン入力開始点から実ストローク終了点までに取得された３次元の時系列データ（Ｘ，Ｙ，Ｚ）と、（２）で有効空中筆跡データとして抽出した所定個数分の３次元の時系列データ（Ｘ，Ｙ，Ｚ）とを、有効なサインデータとして確定する。
【００４７】
図７には、ユーザによって手書きされたサインの例が示されている。図７のサインは、“Ｙｕｉｃｈｉｒｏ  Ｋａｔｏ”という名前のユーザが手書きしたサインである。
【００４８】
図７において、実線は実ストロークを示し、破線は空中筆跡を示している。符号５００は、最初にスタイラス１０がディジタイザ１２２の表面に接触したポイント、すなわちサイン入力開始点を示している。符号５０１は、スタイラス１０がディジタイザ１２２の表面に最後に接触したポイント、つまり最後の実ストローク終了点である。符号５０２は、実ストローク終了点５０１から４／１３３秒経過した時点に対応するポイントを示している。
【００４９】
本実施形態では、サイン入力開始点５００から実ストローク終了点５０１までに取得された３次元の時系列データ（Ｘ，Ｙ，Ｚ）のみならず、実ストローク終了点５０１から符号５０２で示されるポイントまでに取得された幾つかの３次元の時系列データ（Ｘ，Ｙ，Ｚ）も、サインデータとして使用される。
【００５０】
図８は、サインの手書き入力時に取得される、筆圧（Ｚ）に関する時系列データの例を示している。
【００５１】
サイン認証プログラムは、時系列データ（Ｘ，Ｙ，Ｚ）の取得を開始してから最初にＺが０以下になった時（タイミングｔ１）、サインの手書き入力が開始されたことを検知する。この後、サイン認証プログラムは、スタイラス１０の浮遊状態の継続時間がある閾値Ｔを越えたときに、サインの手書き入力が完了したと判断する。サインの手書き入力の完了を検知すると、サイン認証プログラムは、最後の実ストロークが終了した時点（タイミングｔ２）から所定時間Ｔαだけ経過するまでの間に取得された時系列データ（Ｘ，Ｙ，Ｚ）を、最後の実ストローク直後の有効空中筆跡データとして決定する。
【００５２】
図９および図１０も、図７のサインを手書した人物によって手書きされた“Ｙｕｉｃｈｉｒｏ  Ｋａｔｏ”に対応するサインをそれぞれ示している。
【００５３】
図７、図９および図１０を比較すると判るように、実ストロークの筆跡そのそのものはサイン毎に異なる部分があるが、最後の実ストローク直後の空中筆跡（符号５０１と符号５０２との間）についてはサイン間で非常に類似している。よって、サイン入力開始点から最後の実ストローク終了点までに取得された座標データ（Ｘ，Ｙ）の列および筆圧データ（Ｚ）の列のみならず、最後の実ストローク終了点に後続して取得された所定個数分の座標データ（Ｘ，Ｙ）および筆圧データ（Ｚ）をもサインデータとして確定することにより、手書きされたサインからより多くの特徴データをサインデータとして効率よく取得することが可能となる。
【００５４】
次に、図１１のフローチャートを参照して、サイン認証プログラムによって実行されるサイン入力処理の手順を説明する。サイン入力処理は、上述したように、図４のサイン登録画面２００または図５のサイン認証画面３００を用いて実行される。なお、以下では、座標データ（Ｘ，Ｙ）と筆圧データ（Ｚ）とを含めて、座標データ（Ｘ，Ｙ，Ｚ）と表記する。ＣＰＵ１０１はサイン認証プログラムのサイン入力モジュール４０１を実行することによって、以下の手順でサイン入力処理を実行する。
【００５５】
ＣＰＵ１０１は、サンプリング数を示す変数ｎの値を０にセットした後、座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝をディジタイザ１２２から取得する（ステップＳ１０１）。ＣＰＵ１０１は、座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝が正しく取得できたかどうかによって、スタイラス１０のペン先がディジタイザ１２２の有効エリア内に存在しているかどうかを判断する（ステップＳ１０２）。スタイラス１０のペン先がディジタイザ１２２の有効エリア内に存在しているならば（ステップＳ１０２のＹＥＳ）、ＣＰＵ１０１は、スタイラス１０のペン先がディジタイザ１２２に接触したかどうかを判別するために、ステップＳ１０１でディジタイザ１２２から取得した座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝のＺ（０）が、Ｚ（０）≦０であるか否かを判断する（ステップＳ１０３）。
【００５６】
Ｚ（０）≦０でなければ（ステップＳ１０３のＮＯ）、ＣＰＵ１０１は、ｎの値を０に維持したまま、ディジタイザ１２２から次の座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝を取得し（ステップＳ１０１）、そして上述のステップＳ１０２，Ｓ１０３の処理を実行する。
【００５７】
Ｚ（０）≦０であれば（ステップＳ１０３のＹＥＳ）、ＣＰＵ１０１は、スタイラス１０のペン先がディジタイザ１２２に接触したと判断する。座標データ｛Ｘ（０），Ｙ（０），Ｚ（０）｝は、サイン入力開始点に対応する座標データを示す。
【００５８】
そして、ＣＰＵ１０１は、ｎ＝１にした後（ステップＳ１０４）、ディジタイザ１２２から次の座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝を取得する（ステップＳ１０５）。ＣＰＵ１０１は、スタイラス１０のペン先がディジタイザ１２２の入力面から離れたかどうかを判別するために、ディジタイザ１２２から取得した座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝のＺ（ｎ）が、Ｚ（ｎ）＞０であるか否かを判断する（ステップＳ１０６）。
【００５９】
Ｚ（ｎ）＞０で無い場合（ステップＳ１０６のＮＯ）、つまりスタイラス１０のペン先がディジタイザ１２２の表面に接触している場合には、ＣＰＵ１０１は、ｎの値を＋１だけ更新した後（ステップＳ１０７）、ディジタイザ１２２から次の座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝を取得する（ステップＳ１０５）。
【００６０】
Ｚ（ｎ）＞０である場合（ステップＳ１０６のＹＥＳ）、ＣＰＵ１０１は、スタイラス１０のペン先がディジタイザ１２２の表面から離されたと判断する。そして、ＣＰＵ１０１は、スタイラス１０の浮遊期間の長さを計時するために、監視タイマの値ｔを０にリセットする（ステップＳ１０８）。監視タイマはハードウェアおよびソフトウェアのどちらで実現しても良い。そして、ＣＰＵ１０１は、次の座標データ｛Ｘ（ｎ＋ｋ），Ｙ（ｎ＋ｋ），Ｚ（ｎ＋ｋ）｝をディジタイザ１２２から取得する（ステップＳ１０９）。ここで、ｋは、スタイラス１０が浮遊状態にある期間中におけるサンプリング数を示す。ｋの初期値は１である。ＣＰＵ１０１は、ディジタイザ１２２から取得した座標データ｛Ｘ（ｎ＋ｋ），Ｙ（ｎ＋ｋ），Ｚ（ｎ＋ｋ）｝のＺ（ｎ＋ｋ）が、Ｚ（ｎ＋ｋ）＞０であるか否かを判断する（ステップＳ１１０）。
【００６１】
Ｚ（ｎ＋ｋ）＞０で無い場合（ステップＳ１１０のＮＯ）、つまりスタイラス１０のペン先がディジタイザ１２２の表面に再び接触した場合には、ＣＰＵ１０１は、ｎの値をｎ＋ｋ＋１に更新した後（ステップＳ１０７）、ディジタイザ１２２から次の座標データ｛Ｘ（ｎ），Ｙ（ｎ），Ｚ（ｎ）｝を取得する（ステップＳ１０５）。そして、ＣＰＵ１０１は、ステップＳ１０６の処理に進む。
【００６２】
一方、Ｚ（ｎ＋ｋ）＞０である場合は（ステップＳ１１０のＹＥＳ）、つまりスタイラス１０のペン先がディジタイザ１２２の表面から浮遊している場合には、ＣＰＵ１０１は、監視タイマの値ｔを＋１更新する（ステップＳ１１１）。この後、ＣＰＵ１０１は、監視タイマの値ｔがある閾値Ｔを越えているか否かを判断する（ステップＳ１１２）。監視タイマの値ｔがある閾値Ｔを越えていないならば（ステップＳ１１２のＮＯ）、ＣＰＵ１０１は、ｋの値を＋１更新した後（ステップＳ１１３）、ステップＳ１０９の処理に進む。
【００６３】
監視タイマの値ｔがある閾値Ｔを越えているならば（ステップＳ１１２）、ＣＰＵ１０１は、サインの手書き入力が完了したと判断し、有効データを決定する処理を実行する（ステップＳ１１４）。このステップＳ１１４では、ＣＰＵ１０１は、現在のｎの値を、最後の実ストローク終了点として決定する。もちろん、Ｚの時系列データを最後尾から順に辿ることによって、最後の実ストローク終了点を検出することも出来る。そして、ＣＰＵ１０１は、最後の実ストローク終了点に後続して取得された座標データの列｛Ｘ，Ｙ，Ｚ  （ｎ＝ｎ＋１〜ｎ＋ｋ）｝から、ｎ＋１からｎ＋αまでの座標データの列｛Ｘ，Ｙ，Ｚ  （ｎ＝ｎ＋１〜ｎ＋α）｝を有効空中筆跡データとして抽出する。αの値は、上述したように、例えば４である。閾値Ｔは、αよりも十分に大きな値である。そして、ＣＰＵ１０１は、サイン入力開始点から最後の実ストローク終了点までに取得された座標データの列｛Ｘ，Ｙ，Ｚ  （ｎ＝０〜ｎ）｝に有効空中筆跡データ｛Ｘ，Ｙ，Ｚ  （ｎ＝ｎ＋１〜ｎ＋α）｝を加えることにより、有効なサインデータ｛Ｘ，Ｙ，Ｚ  （ｎ＝０〜ｎ＋α）｝を確定する。
【００６４】
なお、図１１のフローチャートでは、スタイラス１０の浮遊時間の長さに基づいてサインの手書き入力が完了したかどうかを判別したが、図４，図５で説明した［ＯＫ］ボタンが押された時にサインの手書き入力が完了したと判断してもよい。この場合、サイン入力処理は、例えば、図１２のフローチャートに示す手順で実行することができる。
【００６５】
図１２のフローチャートにおいては、図１１のステップＳ１０８，Ｓ１１１の処理が省略されており、また図１１のステップＳ１１２の処理の代わりに、ステップＳ２０１の処理が実行される。他の点は、図１１のフローチャートと同じである。
【００６６】
ステップＳ２０１においては、ＣＰＵ１０１は、図４のサイン登録画面２００上の［ＯＫ］ボタン２０２または図５のサイン認証画面３００上の［ＯＫ］ボタン３０２がスタイラス１０によって押されたかどうかを判断する。［ＯＫ］ボタン２０２または３０２が押されたならば、ＣＰＵ１０１は、その時点で、サインの手書き入力が完了したと判断し、上述のステップＳ１１４の処理を実行する。
【００６７】
以上のように、本実施形態のサイン入力処理においては、サイン入力開始点から最後の実ストローク終了点までに取得された座標データの列および筆圧データの列のみならず、最後の実ストローク終了点に後続して取得された所定個数分の座標データおよび筆圧データをもサインデータとして確定される。よって、手書きされたサインからより多くの特徴を取得することが可能となる。さらに、最後の実ストローク終了点に後続して取得された所定個数分の座標データおよび筆圧データは最後の実ストローク終了直後の空中筆跡情報であるので、たとえ第３者があるユーザのサインを模写しながら入力したとしても、最後の実ストローク終了直後の空中筆跡までは再現することは不可能である。よって、ユーザのサインが自署であるか否かの真偽判定をより高精度に行うことが可能となる。
【００６８】
また、本実施形態のサイン入力処理はコンピュータプログラムによって実現されているので、そのコンピュータプログラムをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータにインストールするだけで、本実施形態と同様の効果を容易に得ることが可能である。
【００６９】
また、本実施形態では、最後の実ストローク終了点直後の４個の座標データ（Ｘ，Ｙ，Ｚ）を有効空中筆跡データとして利用したが、有効空中筆跡データとして抽出すべき、実ストローク終了点直後の座標データ（Ｘ，Ｙ，Ｚ）の個数は、例えば、ディジタイザの特性などを考慮して適宜変更しても良い。
【００７０】
さらに、サイン登録時に手書き入力される６個のサインの特徴に基づいて、有効空中筆跡データとして抽出すべき、実ストローク終了点直後の座標データ（Ｘ，Ｙ，Ｚ）の個数を決定しても良い。
【００７１】
また、有効空中筆跡データは実ストローク終了点直後におけるスタイラス１０の空中での動きの特徴を示すものであればよいので、実ストローク終了点直後の座標データ（Ｘ，Ｙ）の列のみを有効空中筆跡データとして使用し、実ストローク終了点直後の筆圧データ（Ｚ）の列は削除することができる。この場合、サインデータ内のどのデータが最後の実ストローク直後の空中筆跡データであるかを識別する情報をサインデータに付加してもよい。
【００７２】
また、本実施形態では、表示装置と一体化されたディジタイザを例に説明したが、必ずしも表示装置とディジタイザとが一体化されている必要はない。
【００７３】
また、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００７４】
【図１】本発明の一実施形態に係るコンピュータの外観を示す斜視図。
【図２】図１のコンピュータのシステム構成を示すブロック図。
【図３】図１のコンピュータに設けられたディジタイザの有効エリアを説明するための図。
【図４】図１のコンピュータで使用されるサイン登録画面の例を示す図。
【図５】図１のコンピュータで使用されるサイン認証画面の例を示す図。
【図６】図１のコンピュータで使用されるサイン認証プログラムの構成を示す図。
【図７】図１のコンピュータに入力されるサインの例を示す図。
【図８】図１のコンピュータに入力される筆圧の時系列データの例を示す図。
【図９】図１のコンピュータに入力されるサインの例を示す図。
【図１０】図１のコンピュータに入力されるサインの例を示す図。
【図１１】図１のコンピュータによって実行されるサイン入力処理の手順の例を示すフローチャート。
【図１２】図１のコンピュータによって実行されるサイン入力処理の手順の他の例を示すフローチャート。
【符号の説明】
【００７５】
１…コンピュータ、１０１…ＣＰＵ、１２１…ＬＣＤ，１２２…ディジタイザ、４０１…サイン入力モジュール、４０２…サイン登録モジュール、４０３…サイン認証モジュール、４１１…座標データ取得部、４１２…サイン入力完了検出部、４１３…有効データ決定部。
【図１】
2005149119.tif 000003
【図２】
2005149119.tif 000004
【図３】
2005149119.tif 000005
【図４】
2005149119.tif 000006
【図５】
2005149119.tif 000007
【図６】
2005149119.tif 000008
【図７】
2005149119.tif 000009
【図８】
2005149119.tif 000010
【図９】
2005149119.tif 000011
【図１０】
2005149119.tif 000012
【図１１】
2005149119.tif 000013
【図１２】
2005149119.tif 000014