JPH07114621A - ジェスチャ認識方法およびそれを用いたジェスチャ認識装置 - Google Patents
ジェスチャ認識方法およびそれを用いたジェスチャ認識装置Info
- Publication number
- JPH07114621A JPH07114621A JP25801193A JP25801193A JPH07114621A JP H07114621 A JPH07114621 A JP H07114621A JP 25801193 A JP25801193 A JP 25801193A JP 25801193 A JP25801193 A JP 25801193A JP H07114621 A JPH07114621 A JP H07114621A
- Authority
- JP
- Japan
- Prior art keywords
- coordinate data
- gesture
- detected
- distance
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
- Character Discrimination (AREA)
Abstract
(57)【要約】
【目的】 本発明の目的は、ジェスチャの速度への依存
度を低減したジェスチャ認識方法およびジェスチャ認識
装置を提供することにある。 【構成】 ジェスチャを表す座標データを取り込む入力
手段と、その座標データを格納する手段と、格納手段に
既に格納してある検出点の座標データと入力手段によっ
て得た座標データから検出点間の距離を計算する手段
と、求めた検出点間の距離に基づき、次に座標データを
検出するまでの時間を制御手段と、あらかじめ登録して
あるパターンとパターン認識する手段を設けたことを特
徴とするジェスチャ認識装置。
度を低減したジェスチャ認識方法およびジェスチャ認識
装置を提供することにある。 【構成】 ジェスチャを表す座標データを取り込む入力
手段と、その座標データを格納する手段と、格納手段に
既に格納してある検出点の座標データと入力手段によっ
て得た座標データから検出点間の距離を計算する手段
と、求めた検出点間の距離に基づき、次に座標データを
検出するまでの時間を制御手段と、あらかじめ登録して
あるパターンとパターン認識する手段を設けたことを特
徴とするジェスチャ認識装置。
Description
【0001】
【産業上の利用分野】本発明は、予め登録してある図形
と新たに入力した図形とを比較し、入力した図形を認識
するパターン認識方法およびパターン認識装置に係わ
り、特に入力した図形が動作の軌跡である場合に関す
る。
と新たに入力した図形とを比較し、入力した図形を認識
するパターン認識方法およびパターン認識装置に係わ
り、特に入力した図形が動作の軌跡である場合に関す
る。
【0002】
【従来の技術】本発明で扱うパターン認識の対象は、図
12に示すように動作の軌跡(700)である。以下、
これをジェスチャと呼び、ジェスチャをパターン認識す
ることをジェスチャ認識と呼ぶ。ジェスチャ認識では、
一つのジェスチャを、これに含まれる複数の点(以下、
検出点)を選択し、これらの点における特徴と、あらか
じめ登録した特徴とを比較し、最も相違の小さいものを
認識の結果とする。検出点の取り取り方には、各種方法
がある。例えば一定時間間隔で検出した場合、検出点は
図12の701〜711である。
12に示すように動作の軌跡(700)である。以下、
これをジェスチャと呼び、ジェスチャをパターン認識す
ることをジェスチャ認識と呼ぶ。ジェスチャ認識では、
一つのジェスチャを、これに含まれる複数の点(以下、
検出点)を選択し、これらの点における特徴と、あらか
じめ登録した特徴とを比較し、最も相違の小さいものを
認識の結果とする。検出点の取り取り方には、各種方法
がある。例えば一定時間間隔で検出した場合、検出点は
図12の701〜711である。
【0003】従来のパターン認識装置として、他の特開
平3−282896号公報に記載されているように、入
力された座標データ列によって示されるパターンから、
ストローク中の曲がりが大きく、かつストロークに沿っ
てほぼ等間隔の代表座標点を抽出する手段を備え、この
代表座標点を用いて認識するパターン認識装置がある。
また、他の代表座標点を抽出する装置として、特開平
3−1216号公報に記載されているように、任意の手
書き図形を入力する図形入力装置において、検出したペ
ンの座標信号のX座標とY座標と一つ前に記憶したX座
標とY座標との差分を出力する差分出力手段と、この差
分を入力し、助長なサンプル点の記憶を抑制する記憶抑
制手段を備えた図形入力装置がある。
平3−282896号公報に記載されているように、入
力された座標データ列によって示されるパターンから、
ストローク中の曲がりが大きく、かつストロークに沿っ
てほぼ等間隔の代表座標点を抽出する手段を備え、この
代表座標点を用いて認識するパターン認識装置がある。
また、他の代表座標点を抽出する装置として、特開平
3−1216号公報に記載されているように、任意の手
書き図形を入力する図形入力装置において、検出したペ
ンの座標信号のX座標とY座標と一つ前に記憶したX座
標とY座標との差分を出力する差分出力手段と、この差
分を入力し、助長なサンプル点の記憶を抑制する記憶抑
制手段を備えた図形入力装置がある。
【0004】
【発明が解決しようとする課題】特開平3−28289
6号公報に記載された装置では、入力パターンの全体の
ストロークをストロークに沿って例えば40等分し、始
点、終点やストローク中のなるべく曲がりの大きい点が
特徴点となるように抽出しているため、ストロークの入
力完了まで特徴点が決定されないという問題点がある。
6号公報に記載された装置では、入力パターンの全体の
ストロークをストロークに沿って例えば40等分し、始
点、終点やストローク中のなるべく曲がりの大きい点が
特徴点となるように抽出しているため、ストロークの入
力完了まで特徴点が決定されないという問題点がある。
【0005】一方、特開平3−1216号公報では、計
算した差分量が一定値を越えたときのみ、その差分を記
憶するようにデータの記憶を制御しているので、ストロ
ークの入力が完了しなくとも、特徴点を決定できるが、
記憶した特徴点は、あらかじめ設定した一定値の大きさ
とほぼ同じ距離だけ離れたものだけである。ジェスチャ
の入力時の動作は一様な速度ではなく部分的に速度が変
化する。そこで速度が大きく変化した際も一定の距離間
隔で特徴点を検出すると、この範囲内に、例えば鋭角な
曲がり角などジェスチャの特徴を良く表した箇所があっ
た場合に、認識に不可欠なデータが欠落する可能性があ
るという問題点がある。
算した差分量が一定値を越えたときのみ、その差分を記
憶するようにデータの記憶を制御しているので、ストロ
ークの入力が完了しなくとも、特徴点を決定できるが、
記憶した特徴点は、あらかじめ設定した一定値の大きさ
とほぼ同じ距離だけ離れたものだけである。ジェスチャ
の入力時の動作は一様な速度ではなく部分的に速度が変
化する。そこで速度が大きく変化した際も一定の距離間
隔で特徴点を検出すると、この範囲内に、例えば鋭角な
曲がり角などジェスチャの特徴を良く表した箇所があっ
た場合に、認識に不可欠なデータが欠落する可能性があ
るという問題点がある。
【0006】本発明の目的は、動作の終了を検出せずに
検出点を選択でき、かつ、ジェスチャの速度によって認
識に必要なデータが欠落することを防止できるジェスチ
ャ認識方法及びジェスチャ認識装置を提供することにあ
る。
検出点を選択でき、かつ、ジェスチャの速度によって認
識に必要なデータが欠落することを防止できるジェスチ
ャ認識方法及びジェスチャ認識装置を提供することにあ
る。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、ジェスチャを表現する座標データを検出
する入力手段と、その座標データを格納するための格納
手段と、それまでに格納してある前回の座標データと入
力手段によって今回検出した座標データとの間の距離を
計算する座標データ間距離計算手段と、求めた座標デー
タ間距離としきい値を比較した結果よって次に座標デー
タを検出する処理を実行するまでの時間を制御するサン
プリング間隔制御手段を設けるようにしたものである。
に、本発明は、ジェスチャを表現する座標データを検出
する入力手段と、その座標データを格納するための格納
手段と、それまでに格納してある前回の座標データと入
力手段によって今回検出した座標データとの間の距離を
計算する座標データ間距離計算手段と、求めた座標デー
タ間距離としきい値を比較した結果よって次に座標デー
タを検出する処理を実行するまでの時間を制御するサン
プリング間隔制御手段を設けるようにしたものである。
【0008】また、次回座標データを検出するまでの時
間間隔を一番短い条件をまず判定し、時間間隔がより短
い条件から順に判定するようにして検出するジェスチャ
の座標データの検出し、得た座標データを用いてジェス
チャ認識しようとしたものである。
間間隔を一番短い条件をまず判定し、時間間隔がより短
い条件から順に判定するようにして検出するジェスチャ
の座標データの検出し、得た座標データを用いてジェス
チャ認識しようとしたものである。
【0009】
【作用】本発明によれば、サンプリング間隔制御手段
は、座標データ間距離としきい値を比較した結果よって
次に座標データを検出する処理を実行するまでの時間を
制御するので、移動の距離、または、時間のいずれかの
条件が満たされたとき、検出点とし、従ってジェスチャ
の完了を待たずに検出点を選択でき、かつ、ジェスチャ
の速度によって認識に必要なデータが欠落することを防
止できる。
は、座標データ間距離としきい値を比較した結果よって
次に座標データを検出する処理を実行するまでの時間を
制御するので、移動の距離、または、時間のいずれかの
条件が満たされたとき、検出点とし、従ってジェスチャ
の完了を待たずに検出点を選択でき、かつ、ジェスチャ
の速度によって認識に必要なデータが欠落することを防
止できる。
【0010】また、座標データから特徴点を求める際
に、座標検出間隔を最も短くするための判定条件を最初
に判定するため、座標検出のタイミングの遅れを小さく
でき、より一層、データの欠落を防ぐことができる。
に、座標検出間隔を最も短くするための判定条件を最初
に判定するため、座標検出のタイミングの遅れを小さく
でき、より一層、データの欠落を防ぐことができる。
【0011】
【実施例】以下、本発明のジェスチャ認識方法およびそ
れを用いたジェスチャ認識装置の三つの実施例を図面を
用いて詳細に説明する。(実施例1)を図1から図11
を用いて詳細に説明し、(実施例2)、(実施例3)は
相違点を中心に説明する。また図1から図11のうち図
2、図3、図5から図7、図9から図11は各実施例に
ついて共通であり、これら共通の図面の他に、(実施例
2)では図13、図14、(実施例3)では図15から
図17を用いて説明する。なお、図面中の参照番号が他
の図面と同じ場合、同じものを示している。
れを用いたジェスチャ認識装置の三つの実施例を図面を
用いて詳細に説明する。(実施例1)を図1から図11
を用いて詳細に説明し、(実施例2)、(実施例3)は
相違点を中心に説明する。また図1から図11のうち図
2、図3、図5から図7、図9から図11は各実施例に
ついて共通であり、これら共通の図面の他に、(実施例
2)では図13、図14、(実施例3)では図15から
図17を用いて説明する。なお、図面中の参照番号が他
の図面と同じ場合、同じものを示している。
【0012】(実施例1)まず、図1の機能ブロック
図、図2のシステム構成図を用いてジェスチャ認識シス
テムの概略について説明する。本発明を実施するジェス
チャ認識システムは、図2に示すようなシステム構成で
あり、ペンコンピュータを用いている。ペンコンピュー
タは、中央処理装置(以下CPUと称する)1にバス2
を介して、種々の装置(回路)を接続したものである。
図2では、主メモリ3、タブレットインターフェース6
を介した座標入力部4、描画プロセッサ8を介した表示
部7、描画のための表示メモリ9、外部メモリ10を接
続している。座標入力部4には、ペン5により手書き入
力される。
図、図2のシステム構成図を用いてジェスチャ認識シス
テムの概略について説明する。本発明を実施するジェス
チャ認識システムは、図2に示すようなシステム構成で
あり、ペンコンピュータを用いている。ペンコンピュー
タは、中央処理装置(以下CPUと称する)1にバス2
を介して、種々の装置(回路)を接続したものである。
図2では、主メモリ3、タブレットインターフェース6
を介した座標入力部4、描画プロセッサ8を介した表示
部7、描画のための表示メモリ9、外部メモリ10を接
続している。座標入力部4には、ペン5により手書き入
力される。
【0013】表示部7に対して利用者によってジェスチ
ャ認識の開始が指示される(後述する)と、CPU1内
のCPUタイマー200をセットし、スタートさせ、一
定時間間隔で割込みを発生させる。検出時刻制御処理2
10では、割込みが発生するたびに後ほど説明する検出
間隔判定処理220から出力されるサンプリング間隔制
御変数に応じて、位置検出命令を座標データ検出処理2
30に出力する。座標データ検出処理230では、位置
検出命令を受けるとジェスチャを表す座標データを検出
し、その座標データとサンプリング時刻をジェスチャデ
ータテーブル40に格納する。また、座標データは、距
離計算処理240へも出力される。距離計算処理240
では、座標データ検出処理230で検出した座標データ
とジェスチャデータテーブル40に格納されている前回
検出した座標データとをもちいて検出点間の二点間距離
を求める。二点間距離は検出間隔判定処理220に出力
され、この二点間距離と初期値データテーブル30に格
納されているしきい値D31、係数k32とで比較し、
条件に応じたサンプリング間隔制御変数を検出時刻制御
処理210へ出力する。
ャ認識の開始が指示される(後述する)と、CPU1内
のCPUタイマー200をセットし、スタートさせ、一
定時間間隔で割込みを発生させる。検出時刻制御処理2
10では、割込みが発生するたびに後ほど説明する検出
間隔判定処理220から出力されるサンプリング間隔制
御変数に応じて、位置検出命令を座標データ検出処理2
30に出力する。座標データ検出処理230では、位置
検出命令を受けるとジェスチャを表す座標データを検出
し、その座標データとサンプリング時刻をジェスチャデ
ータテーブル40に格納する。また、座標データは、距
離計算処理240へも出力される。距離計算処理240
では、座標データ検出処理230で検出した座標データ
とジェスチャデータテーブル40に格納されている前回
検出した座標データとをもちいて検出点間の二点間距離
を求める。二点間距離は検出間隔判定処理220に出力
され、この二点間距離と初期値データテーブル30に格
納されているしきい値D31、係数k32とで比較し、
条件に応じたサンプリング間隔制御変数を検出時刻制御
処理210へ出力する。
【0014】特徴量計算処理250では、ジェスチャデ
ータテーブル40を参照して特徴量を計算し、求めた特
徴量を特徴量データテーブル50に格納する。初期値を
変更する場合は、ユーザデータテーブル20を参照して
初期値変更処理260により初期値データテーブル30
を書き換える。ここで、図3と図4を用いてユーザデー
タテーブル20、初期値データテーブル30、ジェスチ
ャデータテーブル40、特徴量データテーブル50のテ
ーブル構成について説明する。
ータテーブル40を参照して特徴量を計算し、求めた特
徴量を特徴量データテーブル50に格納する。初期値を
変更する場合は、ユーザデータテーブル20を参照して
初期値変更処理260により初期値データテーブル30
を書き換える。ここで、図3と図4を用いてユーザデー
タテーブル20、初期値データテーブル30、ジェスチ
ャデータテーブル40、特徴量データテーブル50のテ
ーブル構成について説明する。
【0015】図3に主メモリ内に設けられるユーザデー
タテーブル20と初期値データテーブル30のテーブル
構成図を示す。ユーザデータテーブル20は、ユーザI
D21、利用者の名前22などのユーザの個人情報、パ
スワード23および、初期値データテーブル30のアド
レス24の各欄からなり、初期値データテーブル30
は、ジェスチャ認識システム利用時に用いるしきい値D
31、係数k32の各欄からなる。ユーザID21は利
用者に固有の番号で、ユーザの個人情報や初期値データ
テーブルに格納されている各利用者のしきい値D31、
係数k32を参照するために用いられる。これらしきい
値D31、係数k32は後に詳細に示す。
タテーブル20と初期値データテーブル30のテーブル
構成図を示す。ユーザデータテーブル20は、ユーザI
D21、利用者の名前22などのユーザの個人情報、パ
スワード23および、初期値データテーブル30のアド
レス24の各欄からなり、初期値データテーブル30
は、ジェスチャ認識システム利用時に用いるしきい値D
31、係数k32の各欄からなる。ユーザID21は利
用者に固有の番号で、ユーザの個人情報や初期値データ
テーブルに格納されている各利用者のしきい値D31、
係数k32を参照するために用いられる。これらしきい
値D31、係数k32は後に詳細に示す。
【0016】図4に示したジェスチャデータテーブル4
0は、サンプリング番号41、検出点のX座標42、検
出点のY座標43、サンプリング時刻44、特徴量デー
タテーブルアドレス45の各欄からなる。実施例中でい
うジェスチャとは、ペンの動作の軌跡のことである。サ
ンプリング番号41はジェスチャを表すデータを管理す
るための番号で検出したデータの順序を示す昇順の番号
である。X座標42とY座標43は、ジェスチャを表す
座標データであり、サンプリング時刻44はその座標デ
ータを検出した時刻を表し、ジェスチャ認識開始時の時
刻を0とする。例えばサンプリング番号41が3のデー
タは、3番目に検出した点であり、その座標は(X3,
Y3)であり、サンプリング時刻は100であることを
示している。
0は、サンプリング番号41、検出点のX座標42、検
出点のY座標43、サンプリング時刻44、特徴量デー
タテーブルアドレス45の各欄からなる。実施例中でい
うジェスチャとは、ペンの動作の軌跡のことである。サ
ンプリング番号41はジェスチャを表すデータを管理す
るための番号で検出したデータの順序を示す昇順の番号
である。X座標42とY座標43は、ジェスチャを表す
座標データであり、サンプリング時刻44はその座標デ
ータを検出した時刻を表し、ジェスチャ認識開始時の時
刻を0とする。例えばサンプリング番号41が3のデー
タは、3番目に検出した点であり、その座標は(X3,
Y3)であり、サンプリング時刻は100であることを
示している。
【0017】特徴量データテーブル50は、少なくとも
一種類以上の特徴量51によって構成されている。特徴
量には、ジェスチャのパターンを示すパラメータとして
軌跡の曲がり具合やサンプリング時刻を参照して計算す
る動作の速度、加速度があげられる。この特徴量データ
テーブル50は、後に説明するパターン照合処理を実行
する際、ジェスチャの特徴を示すデータを持つパターン
ワークエリアとしての役割を果たす。
一種類以上の特徴量51によって構成されている。特徴
量には、ジェスチャのパターンを示すパラメータとして
軌跡の曲がり具合やサンプリング時刻を参照して計算す
る動作の速度、加速度があげられる。この特徴量データ
テーブル50は、後に説明するパターン照合処理を実行
する際、ジェスチャの特徴を示すデータを持つパターン
ワークエリアとしての役割を果たす。
【0018】説明を図1に戻す。パターン照合処理27
0では、パターンインデックステーブル60およびパタ
ーンデータテーブル70と特徴量データテーブル50を
参照し、ジェスチャ認識を実行する。ジェスチャ認識し
た結果が一致した場合、コマンド実行処理280では、
パターンインデックステーブル70とコマンドインデッ
クステーブル80を参照し、実行プログラムテーブル9
0に格納されている実行プログラムを実行する。ここで
用いたテーブルのテーブル構成を図5、図6を用いて説
明する。
0では、パターンインデックステーブル60およびパタ
ーンデータテーブル70と特徴量データテーブル50を
参照し、ジェスチャ認識を実行する。ジェスチャ認識し
た結果が一致した場合、コマンド実行処理280では、
パターンインデックステーブル70とコマンドインデッ
クステーブル80を参照し、実行プログラムテーブル9
0に格納されている実行プログラムを実行する。ここで
用いたテーブルのテーブル構成を図5、図6を用いて説
明する。
【0019】図5にパターンインデックステーブル60
とパターンデータテーブル70のテーブル構成図を示
す。これらのテーブルには、ジェスチャ認識するとき用
いる、予め登録してある図形のパターンに関する情報が
格納されている。以下、この登録済みのパターンを単に
パターンと呼ぶ。
とパターンデータテーブル70のテーブル構成図を示
す。これらのテーブルには、ジェスチャ認識するとき用
いる、予め登録してある図形のパターンに関する情報が
格納されている。以下、この登録済みのパターンを単に
パターンと呼ぶ。
【0020】パターンインデックステーブル60は、パ
ターン番号61、コマンド番号62およびパターンデー
タテーブルアドレス63の各欄からなる。コマンド番号
62は、後に詳細に示すように、入力されたジェスチャ
に対応して実行されるコマンドに付した番号である。パ
ターンデータテーブルアドレス63はパターン番号61
に対応したパターンが格納されているパターンデータテ
ーブル70のアドレスである。パターンデータテーブル
70には、図示するように、各種パターンに関する座標
データなどがエリア71、72、73、74に格納され
ている。
ターン番号61、コマンド番号62およびパターンデー
タテーブルアドレス63の各欄からなる。コマンド番号
62は、後に詳細に示すように、入力されたジェスチャ
に対応して実行されるコマンドに付した番号である。パ
ターンデータテーブルアドレス63はパターン番号61
に対応したパターンが格納されているパターンデータテ
ーブル70のアドレスである。パターンデータテーブル
70には、図示するように、各種パターンに関する座標
データなどがエリア71、72、73、74に格納され
ている。
【0021】一例を説明すると、パターン番号が3のジ
ェスチャが入力されたとき、コマンド番号が1のコマン
ドを実行することと、そのジェスチャの形状を判別する
ためにパターンのデータを格納しているエリア73のア
ドレス値が1200であることを示している。また、パ
ターンが登録されていないパターン番号、パターンデー
タテーブルアドレスに対応するコマンド番号には0が格
納されている。なお、テーブル構成としては、パターン
インデックステーブル60とパターンデータテーブル7
0とに分けた構成をとらずに一体化しても良いが、パタ
ーンのデータが種々にわたる場合、図示するように分け
た方がデータを管理する点で優れている。
ェスチャが入力されたとき、コマンド番号が1のコマン
ドを実行することと、そのジェスチャの形状を判別する
ためにパターンのデータを格納しているエリア73のア
ドレス値が1200であることを示している。また、パ
ターンが登録されていないパターン番号、パターンデー
タテーブルアドレスに対応するコマンド番号には0が格
納されている。なお、テーブル構成としては、パターン
インデックステーブル60とパターンデータテーブル7
0とに分けた構成をとらずに一体化しても良いが、パタ
ーンのデータが種々にわたる場合、図示するように分け
た方がデータを管理する点で優れている。
【0022】また、これらユーザデータテーブル20、
初期値データテーブル30、パターンインデックステー
ブル60とパターンテーブル70は主メモリに格納され
ているとしたがその必要は必ずしもなく、外部メモリや
ユーザが個人管理できる記憶媒体に格納され、システム
利用時に主メモリ内に読み込まれても良い。
初期値データテーブル30、パターンインデックステー
ブル60とパターンテーブル70は主メモリに格納され
ているとしたがその必要は必ずしもなく、外部メモリや
ユーザが個人管理できる記憶媒体に格納され、システム
利用時に主メモリ内に読み込まれても良い。
【0023】図6に、コマンドインデックステーブル8
0、実行プログラムテーブル90のテーブル構成を示
す。これらのテーブルは主メモリ3に配置されるが、外
部メモリ10に設けられ、システム起動時にそれが主メ
モリ3に読み込まれても良い。これらのテーブルの内容
は、予め主メモリ3または外部メモリ10に用意されて
いるものとする。
0、実行プログラムテーブル90のテーブル構成を示
す。これらのテーブルは主メモリ3に配置されるが、外
部メモリ10に設けられ、システム起動時にそれが主メ
モリ3に読み込まれても良い。これらのテーブルの内容
は、予め主メモリ3または外部メモリ10に用意されて
いるものとする。
【0024】コマンドインデックステーブル80は、コ
マンド番号81、コマンド名82、実行プログラム先頭
アドレス83の各欄からなる。コマンド番号81および
コマンド名82に対応して、そのコマンドを実行するた
めのプログラムが格納されているアドレスである実行プ
ログラム先頭アドレス83が格納されている。実行プロ
グラムテーブル90には、各コマンドに対応して実行す
べきプログラムを格納する。図6では、各コマンド実行
プログラムが、テーブル形式でエリア91、92、・・
に格納されるように示しているが、これは便宜上のこと
であり、テーブルに一体化されなくとも良いことは容易
に理解されることである。
マンド番号81、コマンド名82、実行プログラム先頭
アドレス83の各欄からなる。コマンド番号81および
コマンド名82に対応して、そのコマンドを実行するた
めのプログラムが格納されているアドレスである実行プ
ログラム先頭アドレス83が格納されている。実行プロ
グラムテーブル90には、各コマンドに対応して実行す
べきプログラムを格納する。図6では、各コマンド実行
プログラムが、テーブル形式でエリア91、92、・・
に格納されるように示しているが、これは便宜上のこと
であり、テーブルに一体化されなくとも良いことは容易
に理解されることである。
【0025】次に、図7にジェスチャ認識システムのメ
インルーチンのPAD図を示す。メインルーチンが起動
され、処理を開始すると、初期値設定画面を表示部7に
表示し(s10)、初期値を入力する(s20)。初期
値設定画面とメニューの表示例を図10、図11に示
し、その手順の一例を表示例を用いて説明する。
インルーチンのPAD図を示す。メインルーチンが起動
され、処理を開始すると、初期値設定画面を表示部7に
表示し(s10)、初期値を入力する(s20)。初期
値設定画面とメニューの表示例を図10、図11に示
し、その手順の一例を表示例を用いて説明する。
【0026】表示部7にまず、図10(a)に示した初
期画面1000を表示し、システムの利用経験をメニュ
ーを利用者が選択するまで待つ。利用者が初めてシステ
ムを利用する場合「YES」1001、すでに利用した
ことがある場合「NO」1002が選択される。「YE
S」1001が選択された場合、図10(b)に示した
メニュー1100が表示される。ここでは、利用者によ
って名前が入力されるのを待つ。このとき名前の入出力
領域1101へはペンによる手書き文字による入力、キ
ーボード(図示せず)からの入力、音声による入力など
いずれによって行なわれても良く、システムに入力され
る名前を表すコード情報を名前の入出力領域1101に
表示する。ここで「cansel」1102が選択され
た場合、名前の入出力領域1101をクリアし、再び名
前が入力されるのを待つ。「OK」1103が選択され
た場合は、入力されたの名前をユーザデータテーブル2
0に格納し、次にユーザID21を表示する画面120
0を表示部7に表示し、ユーザIDをユーザID表示領
域1201に表示し、利用者が確認したことを示す「O
K」1202が選択されるまで待つ。「OK」1202
が選択されることにより初期値の入力が完了する(s2
0)。
期画面1000を表示し、システムの利用経験をメニュ
ーを利用者が選択するまで待つ。利用者が初めてシステ
ムを利用する場合「YES」1001、すでに利用した
ことがある場合「NO」1002が選択される。「YE
S」1001が選択された場合、図10(b)に示した
メニュー1100が表示される。ここでは、利用者によ
って名前が入力されるのを待つ。このとき名前の入出力
領域1101へはペンによる手書き文字による入力、キ
ーボード(図示せず)からの入力、音声による入力など
いずれによって行なわれても良く、システムに入力され
る名前を表すコード情報を名前の入出力領域1101に
表示する。ここで「cansel」1102が選択され
た場合、名前の入出力領域1101をクリアし、再び名
前が入力されるのを待つ。「OK」1103が選択され
た場合は、入力されたの名前をユーザデータテーブル2
0に格納し、次にユーザID21を表示する画面120
0を表示部7に表示し、ユーザIDをユーザID表示領
域1201に表示し、利用者が確認したことを示す「O
K」1202が選択されるまで待つ。「OK」1202
が選択されることにより初期値の入力が完了する(s2
0)。
【0027】また、「NO」1002が選択された場合
は、図10(d)に示したメニュー1300が表示され
る。ここでは、利用者によってユーザIDが入力される
のを待つ。ユーザIDの入出力方法については、名前の
入力の場合と同様であり、ユーザID入出力領域は13
01である。「cansel」1302が選択された場
合、ユーザIDの入出力領域1301をクリアし、再び
ユーザIDが入力されるのを待つ。「OK」1303が
選択された場合は、入力済みのユーザIDをユーザデー
タテーブル20に格納し、次に対応する名前を表示する
画面1400を表示部7に表示し、名前を名前の表示領
域1401に表示し、「YES」1402または、「N
O」1403が選択されるまで待つ。「NO」1403
が選択された場合、ユーザIDを入力する画面1300
を再び表示し、ユーザIDの入力を待つ。「YES」1
402が選択されることにより初期値の入力が完了する
(s20)。初期値の入力が完了するとジェスチャ入力
画面1500を表示部7を表示する(s25)。
は、図10(d)に示したメニュー1300が表示され
る。ここでは、利用者によってユーザIDが入力される
のを待つ。ユーザIDの入出力方法については、名前の
入力の場合と同様であり、ユーザID入出力領域は13
01である。「cansel」1302が選択された場
合、ユーザIDの入出力領域1301をクリアし、再び
ユーザIDが入力されるのを待つ。「OK」1303が
選択された場合は、入力済みのユーザIDをユーザデー
タテーブル20に格納し、次に対応する名前を表示する
画面1400を表示部7に表示し、名前を名前の表示領
域1401に表示し、「YES」1402または、「N
O」1403が選択されるまで待つ。「NO」1403
が選択された場合、ユーザIDを入力する画面1300
を再び表示し、ユーザIDの入力を待つ。「YES」1
402が選択されることにより初期値の入力が完了する
(s20)。初期値の入力が完了するとジェスチャ入力
画面1500を表示部7を表示する(s25)。
【0028】ジェスチャ入力画面の画面表示例を図11
に示す。ジェスチャ入力画面1500は、メニュー部1
510とジェスチャ入力部1520で構成され、メニュ
ー部1510は、「開始」1511、「初期値変更」1
512、「終了」1513のボタンとよばれる処理を選
ぶ際にペンで選択する領域で構成される。
に示す。ジェスチャ入力画面1500は、メニュー部1
510とジェスチャ入力部1520で構成され、メニュ
ー部1510は、「開始」1511、「初期値変更」1
512、「終了」1513のボタンとよばれる処理を選
ぶ際にペンで選択する領域で構成される。
【0029】利用者によって「終了」1513のボタン
が選択されることによって本システムは終了し(s3
0)、「開始」1511のボタンが選択されるか、ジェ
スチャ入力エリア1520に初めて入力された場合、ジ
ェスチャ認識開始の指示が出されたとして、サンプリン
グルーチンを起動する(s60)。また、「初期値変
更」1512ボタンが選択された場合、初期値変更処理
(s70)が実行される。図8のPAD図を用いてサン
プリングルーチンを説明する。サンプリングルーチンs
60が呼び出されると、まず検出間隔を判定するための
変数としてカウンターCとサンプリング間隔制御変数
(以下制御変数と称する)Xを設け、それぞれ、C=
0、X=1の値をセットする。また、CPUタイマーに
あるサンプリング間隔をセットし、CPUタイマーをス
タートさせ(s100)、一定時間間隔で割込みを発生
させる(s102)。割込みが発生した場合、s104
に進む。s104ではカウンターCに1を足し、次にカ
ウンターCを制御変数Xで割り、この商と1を比較する
(s106)。条件:(C/X)<1が満たされてる場
合はカウンターの値を保持したまま次の割り込み発生を
待ち、条件が満たされていない場合にはs108に進
む。
が選択されることによって本システムは終了し(s3
0)、「開始」1511のボタンが選択されるか、ジェ
スチャ入力エリア1520に初めて入力された場合、ジ
ェスチャ認識開始の指示が出されたとして、サンプリン
グルーチンを起動する(s60)。また、「初期値変
更」1512ボタンが選択された場合、初期値変更処理
(s70)が実行される。図8のPAD図を用いてサン
プリングルーチンを説明する。サンプリングルーチンs
60が呼び出されると、まず検出間隔を判定するための
変数としてカウンターCとサンプリング間隔制御変数
(以下制御変数と称する)Xを設け、それぞれ、C=
0、X=1の値をセットする。また、CPUタイマーに
あるサンプリング間隔をセットし、CPUタイマーをス
タートさせ(s100)、一定時間間隔で割込みを発生
させる(s102)。割込みが発生した場合、s104
に進む。s104ではカウンターCに1を足し、次にカ
ウンターCを制御変数Xで割り、この商と1を比較する
(s106)。条件:(C/X)<1が満たされてる場
合はカウンターの値を保持したまま次の割り込み発生を
待ち、条件が満たされていない場合にはs108に進
む。
【0030】s108では、カウンターCをゼロクリア
し、検出点の座標データを検出し(s110)、検出し
た座標データとサンプリング時刻をジェスチャデータテ
ーブル40に格納する(s112)。次に、前回検出
し、ジェスチャデータテーブル40に既に格納してある
座標データをジェスチャデータテーブル100から参照
し、s110で検出した座標データとを用いて二点間距
離dを計算する(s114)。初期値データテーブル3
0に格納してあるしきい値D31と係数k32を参照
し、s114で求めた距離dを例えば三つの場合に場合
分けする(s116)。条件として次の条件を例として
挙げる。
し、検出点の座標データを検出し(s110)、検出し
た座標データとサンプリング時刻をジェスチャデータテ
ーブル40に格納する(s112)。次に、前回検出
し、ジェスチャデータテーブル40に既に格納してある
座標データをジェスチャデータテーブル100から参照
し、s110で検出した座標データとを用いて二点間距
離dを計算する(s114)。初期値データテーブル3
0に格納してあるしきい値D31と係数k32を参照
し、s114で求めた距離dを例えば三つの場合に場合
分けする(s116)。条件として次の条件を例として
挙げる。
【0031】(条件1)検出した点と点の間の距離が十
分大きい。 d >k×D (条件2)検出した点と点の間の距離がジェスチャ認識
する際に適当な間隔に含まれる。 k×D ≧ d ≧ D (条件3)検出した点と点の間の距離が小さい。 D > d これらの各条件に応じて、まず、条件1について判定
し、次に条件2について判定し、そして条件3について
判定する(s116)。条件1が満たされている場合
は、制御変数Xに1を代入し(s118)、s130に
すすむ。また、条件2が満たされている場合は、制御変
数Xに2を代入し(s120)、s130にすすむ。そ
して更に条件3について判定し、条件3が満たされてい
る場合は、制御変数Xに3を代入し(s122)、s1
30にすすむ。s130では特徴量計算処理を実行し、
求めた特徴量を特徴量データテーブル50に格納し、こ
の特徴量データテーブル50の内容を用いて、認識ルー
チンを開始する(s140)。
分大きい。 d >k×D (条件2)検出した点と点の間の距離がジェスチャ認識
する際に適当な間隔に含まれる。 k×D ≧ d ≧ D (条件3)検出した点と点の間の距離が小さい。 D > d これらの各条件に応じて、まず、条件1について判定
し、次に条件2について判定し、そして条件3について
判定する(s116)。条件1が満たされている場合
は、制御変数Xに1を代入し(s118)、s130に
すすむ。また、条件2が満たされている場合は、制御変
数Xに2を代入し(s120)、s130にすすむ。そ
して更に条件3について判定し、条件3が満たされてい
る場合は、制御変数Xに3を代入し(s122)、s1
30にすすむ。s130では特徴量計算処理を実行し、
求めた特徴量を特徴量データテーブル50に格納し、こ
の特徴量データテーブル50の内容を用いて、認識ルー
チンを開始する(s140)。
【0032】認識ルーチンs140詳細を図9のPAD
図用いて詳細に説明する。パターンインデックステーブ
ル60のパターン番号61を示す変数としてPNを設
け、初期値1を設定する(s1400)。パターンイン
デックステーブル60のパターン番号61の値がPNで
ある行のコマンド番号62が0であるかを判定しコマン
ド番号が0でない間s1430からs1490を繰り返
す(s1410)。コマンドインデックステーブル80
のコマンド番号欄81を見れば分かるように、コマンド
番号は1から上昇順に設けているので、その値が0のコ
マンドは存在しない。すなわち、コマンド番号が0であ
るか否かの判定は、パターンデータテーブル70にパタ
ーンが格納されているか否かを判定している。コマンド
番号が0の場合はエラーコード、例えば値0をリターン
コードとして(s1420)本認識ルーチンを終了す
る。
図用いて詳細に説明する。パターンインデックステーブ
ル60のパターン番号61を示す変数としてPNを設
け、初期値1を設定する(s1400)。パターンイン
デックステーブル60のパターン番号61の値がPNで
ある行のコマンド番号62が0であるかを判定しコマン
ド番号が0でない間s1430からs1490を繰り返
す(s1410)。コマンドインデックステーブル80
のコマンド番号欄81を見れば分かるように、コマンド
番号は1から上昇順に設けているので、その値が0のコ
マンドは存在しない。すなわち、コマンド番号が0であ
るか否かの判定は、パターンデータテーブル70にパタ
ーンが格納されているか否かを判定している。コマンド
番号が0の場合はエラーコード、例えば値0をリターン
コードとして(s1420)本認識ルーチンを終了す
る。
【0033】次に、s1460のパターンの内容照合の
結果が一致するまで、s1440からs1470を繰り
返す(s1430)。まず、パターン番号61の値がP
Nの行のパターンアドレス63の値を求め(s144
0)、このアドレスを用いてパターンデータテーブルの
内容、すなわちパターンを読みだし、このパターンとパ
ターンワークエリアのデータすなわち特徴量データテー
ブル50の内容と比較照合する(s1450)。このス
テップはいわゆるパターンマッチングの処理を実行する
もので種々提案されている方法を用いれば良い。ただ
し、手書き入力のジェスチャとパターンとの照合である
ので、完全一致することは望めない。そこで一方を、拡
大/縮小すること、線幅を太くすること、ある程度の一
致率で一致したとみなすことなどの処理を施して照合結
果を求める(s1460)。またはジェスチャとパター
ンの各々の微小区間のベクトルの方向成分比較によって
照合しても良い。照合した結果が一致しなければ、PN
の値に1を加え(s1470)、s1440に戻りPN
の値が0であるか否かの判定をし、0でなければ再び内
容照合の処理を実行(s1440からs1470)す
る。
結果が一致するまで、s1440からs1470を繰り
返す(s1430)。まず、パターン番号61の値がP
Nの行のパターンアドレス63の値を求め(s144
0)、このアドレスを用いてパターンデータテーブルの
内容、すなわちパターンを読みだし、このパターンとパ
ターンワークエリアのデータすなわち特徴量データテー
ブル50の内容と比較照合する(s1450)。このス
テップはいわゆるパターンマッチングの処理を実行する
もので種々提案されている方法を用いれば良い。ただ
し、手書き入力のジェスチャとパターンとの照合である
ので、完全一致することは望めない。そこで一方を、拡
大/縮小すること、線幅を太くすること、ある程度の一
致率で一致したとみなすことなどの処理を施して照合結
果を求める(s1460)。またはジェスチャとパター
ンの各々の微小区間のベクトルの方向成分比較によって
照合しても良い。照合した結果が一致しなければ、PN
の値に1を加え(s1470)、s1440に戻りPN
の値が0であるか否かの判定をし、0でなければ再び内
容照合の処理を実行(s1440からs1470)す
る。
【0034】s1460での照合結果が一致した場合、
その時のPNのコマンド番号を出力する(s148
0)。このコマンド番号を用いて対応する実行プログラ
ムの処理を実行する。具体的な処理は次のようにする。
図6に示したコマンドインデックステーブル80を用い
て、その中のコマンド番号81の値を参照して、その実
行プログラム先頭アドレス83の内容を求める。求めた
実行プログラム先頭アドレスから格納されている実行プ
ログラムを実行し(s1490)、本ルーチンを終了す
る。
その時のPNのコマンド番号を出力する(s148
0)。このコマンド番号を用いて対応する実行プログラ
ムの処理を実行する。具体的な処理は次のようにする。
図6に示したコマンドインデックステーブル80を用い
て、その中のコマンド番号81の値を参照して、その実
行プログラム先頭アドレス83の内容を求める。求めた
実行プログラム先頭アドレスから格納されている実行プ
ログラムを実行し(s1490)、本ルーチンを終了す
る。
【0035】このように実行プログラムをメインルーチ
ンとは別に設けておくことにより、メインルーチンと実
行プログラムとを別々に開発、保守できるという利点が
得られる。
ンとは別に設けておくことにより、メインルーチンと実
行プログラムとを別々に開発、保守できるという利点が
得られる。
【0036】本実施例の効果として次の点が挙げられ
る。検出したジェスチャの座標データと前回検出した座
標データから二点間距離をもとめ、その距離に応じて次
回座標データを検出するまでの時間を変化させることに
よって、特徴点間の距離が同程度とすることができる。
そのため、検出したデータの中から特徴点を抽出する必
要がなくなるため、ジェスチャの全体の座標データを得
ずとも、特徴点間の距離が同程度の座標データを得るこ
とができる。よってそのデータを用いたジェスチャ認識
が可能となる。
る。検出したジェスチャの座標データと前回検出した座
標データから二点間距離をもとめ、その距離に応じて次
回座標データを検出するまでの時間を変化させることに
よって、特徴点間の距離が同程度とすることができる。
そのため、検出したデータの中から特徴点を抽出する必
要がなくなるため、ジェスチャの全体の座標データを得
ずとも、特徴点間の距離が同程度の座標データを得るこ
とができる。よってそのデータを用いたジェスチャ認識
が可能となる。
【0037】さらに、検出したジェスチャの座標データ
と前回検出した座標データから二点間距離をもとめ、そ
の距離がしきい値を超えた場合、次回座標データを検出
するまでの時間を短くするので、ジェスチャ認識に必要
な特徴点の欠落を防ぐことができる。
と前回検出した座標データから二点間距離をもとめ、そ
の距離がしきい値を超えた場合、次回座標データを検出
するまでの時間を短くするので、ジェスチャ認識に必要
な特徴点の欠落を防ぐことができる。
【0038】(実施例2)図13、図14を用いて本実
施例と(実施例1)との相違点を中心に説明する。本実
施例は、(実施例1)とはサンプリングルーチンs60
の部分が異なり、それに伴い機能ブロック図(図13)
が異なる。その他の部分に関しては同様である。
施例と(実施例1)との相違点を中心に説明する。本実
施例は、(実施例1)とはサンプリングルーチンs60
の部分が異なり、それに伴い機能ブロック図(図13)
が異なる。その他の部分に関しては同様である。
【0039】まず、機能ブロック図(図13)を用いて
説明する。システムを起動させたときCPUタイマー5
00に割込み発生の時間間隔としてサンプリング間隔T
をセットし、利用者によってジェスチャ認識の指示が出
されることによってタイマーをスタートさせ、セットし
た時間間隔で割込みを発生させる。割込みが発生した場
合、位置検出命令が座標データ検出処理510に出力さ
れる。座標データ検出処理510では、位置検出命令を
受け取るとジェスチャを表す座標データを検出し、その
座標データとサンプリング時刻をジェスチャデータテー
ブル40に格納する。そして(実施例1)と同様にして
前回検出し座標データとの二点間距離を求め、この距離
を検出間隔判定処理530へ出力する。検出間隔判定処
理530では、ユーザデータテーブルに格納されている
しきい値d31、係数k32を参照し、次に割込みを発
生させるまでの時間間隔を求める。この時間間隔をタイ
マーリセット処理540へ出力する。タイマーリセット
処理540では、入力した時間間隔にCPUタイマー5
00をセットしなおす。特徴量計算処理250、初期値
変更処理260、パターン照合処理270、コマンド実
行処理280に関しては(実施例1)と同様であるため
説明を省略する。次に図14を用いて本実施例のサンプ
リングルーチンs60を詳細に説明する。
説明する。システムを起動させたときCPUタイマー5
00に割込み発生の時間間隔としてサンプリング間隔T
をセットし、利用者によってジェスチャ認識の指示が出
されることによってタイマーをスタートさせ、セットし
た時間間隔で割込みを発生させる。割込みが発生した場
合、位置検出命令が座標データ検出処理510に出力さ
れる。座標データ検出処理510では、位置検出命令を
受け取るとジェスチャを表す座標データを検出し、その
座標データとサンプリング時刻をジェスチャデータテー
ブル40に格納する。そして(実施例1)と同様にして
前回検出し座標データとの二点間距離を求め、この距離
を検出間隔判定処理530へ出力する。検出間隔判定処
理530では、ユーザデータテーブルに格納されている
しきい値d31、係数k32を参照し、次に割込みを発
生させるまでの時間間隔を求める。この時間間隔をタイ
マーリセット処理540へ出力する。タイマーリセット
処理540では、入力した時間間隔にCPUタイマー5
00をセットしなおす。特徴量計算処理250、初期値
変更処理260、パターン照合処理270、コマンド実
行処理280に関しては(実施例1)と同様であるため
説明を省略する。次に図14を用いて本実施例のサンプ
リングルーチンs60を詳細に説明する。
【0040】サンプリングルーチンs60が呼び出され
ると、CPUタイマーをサンプリング間隔Tにセット
し、CPUタイマーをスタートさせ(s200)、割込
みが発生した場合s204に進む。s204では代表点
の座標データを検出し、検出した座標データとサンプリ
ング時刻をジェスチャデータテーブル40に格納する
(s206)。次に、前回検出し、ジェスチャデータテ
ーブル40に既に格納してある座標データを参照し、s
204で検出した座標データとを用いて二点間の距離d
を計算する(s208)。初期値データテーブル30に
格納してあるしきい値D31と係数k32を用いて、s
208で求めた距離dを例えば三つの場合に場合分けす
る(s210)。条件の判定は、(実施例2)と同様と
する。条件1が満たされている場合は、サンプリング間
隔TをT1にし(s212)、s130にすすむ。条件
2が満たされている場合は、サンプリング間隔TをT2
にし(s214)、s130にすすむ。条件3が満たさ
れている場合は、サンプリング間隔TをT3にし(s2
16)、s130にすすむ。s130では、特徴量を計
算し、特徴量データテーブル50に格納する。そして、
特徴量データテーブルの内容を参照し、認識ルーチンを
実行する(s140)。
ると、CPUタイマーをサンプリング間隔Tにセット
し、CPUタイマーをスタートさせ(s200)、割込
みが発生した場合s204に進む。s204では代表点
の座標データを検出し、検出した座標データとサンプリ
ング時刻をジェスチャデータテーブル40に格納する
(s206)。次に、前回検出し、ジェスチャデータテ
ーブル40に既に格納してある座標データを参照し、s
204で検出した座標データとを用いて二点間の距離d
を計算する(s208)。初期値データテーブル30に
格納してあるしきい値D31と係数k32を用いて、s
208で求めた距離dを例えば三つの場合に場合分けす
る(s210)。条件の判定は、(実施例2)と同様と
する。条件1が満たされている場合は、サンプリング間
隔TをT1にし(s212)、s130にすすむ。条件
2が満たされている場合は、サンプリング間隔TをT2
にし(s214)、s130にすすむ。条件3が満たさ
れている場合は、サンプリング間隔TをT3にし(s2
16)、s130にすすむ。s130では、特徴量を計
算し、特徴量データテーブル50に格納する。そして、
特徴量データテーブルの内容を参照し、認識ルーチンを
実行する(s140)。
【0041】本実施例の効果として次の点が挙げられ
る。検出したジェスチャの座標データと前回検出した座
標データから二点間距離をもとめ、その距離に応じて次
回座標データを検出するまでの時間を変化させることに
よって、特徴点間の距離が同程度とすることができる。
そのため、検出したデータの中から特徴点を抽出する必
要がなくなるため、ジェスチャの全体の座標データを得
ずとも、特徴点間の距離が同程度の座標データを得るこ
とができる。よってそのデータを用いたジェスチャ認識
が可能となる。
る。検出したジェスチャの座標データと前回検出した座
標データから二点間距離をもとめ、その距離に応じて次
回座標データを検出するまでの時間を変化させることに
よって、特徴点間の距離が同程度とすることができる。
そのため、検出したデータの中から特徴点を抽出する必
要がなくなるため、ジェスチャの全体の座標データを得
ずとも、特徴点間の距離が同程度の座標データを得るこ
とができる。よってそのデータを用いたジェスチャ認識
が可能となる。
【0042】さらに、検出したジェスチャの座標データ
と前回検出した座標データから二点間距離をもとめ、そ
の距離がしきい値を超えた場合、次回座標データを検出
するまでの時間を短くするので、ジェスチャ認識に必要
な特徴点の欠落を防ぐことができる。
と前回検出した座標データから二点間距離をもとめ、そ
の距離がしきい値を超えた場合、次回座標データを検出
するまでの時間を短くするので、ジェスチャ認識に必要
な特徴点の欠落を防ぐことができる。
【0043】(実施例3)図15から図17を用いて本
実施例と(実施例1)との相違点を中心に説明する。本
実施例は、(実施例1)と図16に示したジェスチャデ
ータテーブル100、特徴量データテーブル110とサ
ンプリングルーチンs60の部分が異なり、それに伴い
機能ブロック図がことなる。その他の部分に関してはほ
ぼ同様である。
実施例と(実施例1)との相違点を中心に説明する。本
実施例は、(実施例1)と図16に示したジェスチャデ
ータテーブル100、特徴量データテーブル110とサ
ンプリングルーチンs60の部分が異なり、それに伴い
機能ブロック図がことなる。その他の部分に関してはほ
ぼ同様である。
【0044】まず、機能ブロック図(図15)を用いて
概要を説明する。表示部7に対して、利用者がジェスチ
ャ認識の開始を指示する(後述する)と、CPU1内の
CPUタイマー600がスタートし、一定時間間隔で割
込みを発生させ、座標データ検出処理610を実行させ
る位置検出命令を発生させる。座標データ検出処理61
0では、座標データを検出し、その座標データをジェス
チャデータテーブル100に格納する。また、座標デー
タは距離計算処理620へも出力され、距離計算処理6
20において、座標データ検出処理610で検出した座
標データとジェスチャデータテーブル100に格納され
ているデータのうち一番最後に格納した特徴点との二点
間距離を求め、特徴点判定処理630へ出力する。特徴
点判定処理630では、この二点間の距離を初期値デー
タテーブル30に格納されているしきい値D31と比較
し、条件を満たしている場合サンプリングフラグ105
として1を出力し、条件を満たしていない場合はサンプ
リングフラグ105として0を出力し、ジェスチャデー
タテーブル100に格納する。ここで、ジェスチャデー
タテーブル100と特徴量データテーブル110のテー
ブル構成を図16をもちいて説明する。図16に示した
ジェスチャデータテーブル100は、サンプリング番号
101、X座標102、Y座標103、サンプリング時
刻104、サンプリングフラグ105、特徴量データテ
ーブルアドレス106の各欄からなる。サンプリングフ
ラグ105とは、ある時刻(サンプリング時刻104)
における検出点をジェスチャ認識で用いる特徴点とする
か否かを示す識別子である。例えばサンプリング番号1
01が3のデータは、3番目に検出した点であり、その
座標は(X3,Y3)であり、サンプリング時刻104
は60であり、サンプリングフラグが1である。よって
このデータはジェスチャ認識に用いるデータであること
を示しているものとする。
概要を説明する。表示部7に対して、利用者がジェスチ
ャ認識の開始を指示する(後述する)と、CPU1内の
CPUタイマー600がスタートし、一定時間間隔で割
込みを発生させ、座標データ検出処理610を実行させ
る位置検出命令を発生させる。座標データ検出処理61
0では、座標データを検出し、その座標データをジェス
チャデータテーブル100に格納する。また、座標デー
タは距離計算処理620へも出力され、距離計算処理6
20において、座標データ検出処理610で検出した座
標データとジェスチャデータテーブル100に格納され
ているデータのうち一番最後に格納した特徴点との二点
間距離を求め、特徴点判定処理630へ出力する。特徴
点判定処理630では、この二点間の距離を初期値デー
タテーブル30に格納されているしきい値D31と比較
し、条件を満たしている場合サンプリングフラグ105
として1を出力し、条件を満たしていない場合はサンプ
リングフラグ105として0を出力し、ジェスチャデー
タテーブル100に格納する。ここで、ジェスチャデー
タテーブル100と特徴量データテーブル110のテー
ブル構成を図16をもちいて説明する。図16に示した
ジェスチャデータテーブル100は、サンプリング番号
101、X座標102、Y座標103、サンプリング時
刻104、サンプリングフラグ105、特徴量データテ
ーブルアドレス106の各欄からなる。サンプリングフ
ラグ105とは、ある時刻(サンプリング時刻104)
における検出点をジェスチャ認識で用いる特徴点とする
か否かを示す識別子である。例えばサンプリング番号1
01が3のデータは、3番目に検出した点であり、その
座標は(X3,Y3)であり、サンプリング時刻104
は60であり、サンプリングフラグが1である。よって
このデータはジェスチャ認識に用いるデータであること
を示しているものとする。
【0045】特徴量データテーブル110は少なくとも
一種類以上の特徴量似よって構成されている。特徴量は
ジェスチャデータテーブル100のサンプリングフラグ
101が1であるでーたにたいしてのみ特徴量計算処理
250で計算され、その値は特徴量111・・・の各欄
に格納されている。この特徴量として実施例1であげた
もの以外に前回サンプリングフラグ105が1であった
ときまでのサンプリングフラグの値が0であったデータ
数があげられる。
一種類以上の特徴量似よって構成されている。特徴量は
ジェスチャデータテーブル100のサンプリングフラグ
101が1であるでーたにたいしてのみ特徴量計算処理
250で計算され、その値は特徴量111・・・の各欄
に格納されている。この特徴量として実施例1であげた
もの以外に前回サンプリングフラグ105が1であった
ときまでのサンプリングフラグの値が0であったデータ
数があげられる。
【0046】なお、サンプリングフラグ105以外の各
欄は(実施例1)のジェスチャデータテーブル40と同
様であるため、また、初期値変更処理260、パターン
照合処理270、コマンド実行処理280に関しては
(実施例1)と同様であるため説明を省略する。
欄は(実施例1)のジェスチャデータテーブル40と同
様であるため、また、初期値変更処理260、パターン
照合処理270、コマンド実行処理280に関しては
(実施例1)と同様であるため説明を省略する。
【0047】次に図17を用いて本実施例のサンプリン
グルーチンs60を詳細に説明する。 サンプリングル
ーチンが呼びだされるとまず、CPUタイマーがセット
され、スタートする(s300)。これにより一定時間
間隔で割込みを発生させ(s302)、割込みが発生し
た場合、s304にすすむ。s304では検出点の座標
データが検出され、検出した座標値と検出した時刻すな
わちサンプリング時刻をジェスチャデータテーブル10
0に格納する(s306)。そして、ジェスチャデータ
テーブル100に既に格納されているデータのうち、サ
ンプリングフラグが1であり、かつs304で検出した
時刻に一番近い時刻に検出したデータを参照し、このデ
ータとs304で検出したデータから二点間の距離dを
計算する(s308)。この距離dと初期値データテー
ブル30に格納されているしきい値D31とを比較し
(s310)、条件:d>Dが満たされている場合、ジ
ェスチャデータテーブル100のサンプリングフラグに
1を格納し(s312)、特徴量計算処理を実行し(s
130)、特徴量を特徴量データテーブル110に格納
し、認識ルーチンを実行する(s140)。条件が満た
されていない場合、ジェスチャデータテーブル100の
サンプリングフラグに0を格納する(s314)。
グルーチンs60を詳細に説明する。 サンプリングル
ーチンが呼びだされるとまず、CPUタイマーがセット
され、スタートする(s300)。これにより一定時間
間隔で割込みを発生させ(s302)、割込みが発生し
た場合、s304にすすむ。s304では検出点の座標
データが検出され、検出した座標値と検出した時刻すな
わちサンプリング時刻をジェスチャデータテーブル10
0に格納する(s306)。そして、ジェスチャデータ
テーブル100に既に格納されているデータのうち、サ
ンプリングフラグが1であり、かつs304で検出した
時刻に一番近い時刻に検出したデータを参照し、このデ
ータとs304で検出したデータから二点間の距離dを
計算する(s308)。この距離dと初期値データテー
ブル30に格納されているしきい値D31とを比較し
(s310)、条件:d>Dが満たされている場合、ジ
ェスチャデータテーブル100のサンプリングフラグに
1を格納し(s312)、特徴量計算処理を実行し(s
130)、特徴量を特徴量データテーブル110に格納
し、認識ルーチンを実行する(s140)。条件が満た
されていない場合、ジェスチャデータテーブル100の
サンプリングフラグに0を格納する(s314)。
【0048】本実施例の効果として次の点が挙げられ
る。検出したジェスチャの座標データのうちしきい値を
超えた距離だけ離れた座標データを用いて認識をするた
め一部分に偏ったデータを用いたパターンマッチングを
防ぐことができる。
る。検出したジェスチャの座標データのうちしきい値を
超えた距離だけ離れた座標データを用いて認識をするた
め一部分に偏ったデータを用いたパターンマッチングを
防ぐことができる。
【0049】検出した座標データのうち有効なデータを
検出した場合のみジェスチャの認識を実行するためパタ
ーン認識の処理量が削減される。パターン認識に有効で
ない座標データも格納しているため入力したジェスチャ
を再現する際に有効である。
検出した場合のみジェスチャの認識を実行するためパタ
ーン認識の処理量が削減される。パターン認識に有効で
ない座標データも格納しているため入力したジェスチャ
を再現する際に有効である。
【0050】ジェスチャの形状をあらわす検出したデー
タを格納するジェスチャデータテーブルと認識に用いる
特徴量を格納する特徴量データテーブルとを分けて管理
することによって認識する際、不要なデータを参照する
ことが防げる。検出した座標データのうち有効なデータ
を検出した座標データにたいしてのみ特徴量を計算し、
格納するためメモリに格納すべきデータ量を削減するこ
とができる。
タを格納するジェスチャデータテーブルと認識に用いる
特徴量を格納する特徴量データテーブルとを分けて管理
することによって認識する際、不要なデータを参照する
ことが防げる。検出した座標データのうち有効なデータ
を検出した座標データにたいしてのみ特徴量を計算し、
格納するためメモリに格納すべきデータ量を削減するこ
とができる。
【0051】
【発明の効果】以上述べたように、検出したジェスチャ
の座標データと前回検出した座標データから二点間距離
をもとめ、その距離に応じて次回座標データを検出する
までの時間を変化させることによって、特徴点間の距離
が同程度とすることができる。そのため、検出したデー
タの中から特徴点を抽出する必要がなくなるため、ジェ
スチャの全体の座標データを得ずとも、特徴点間の距離
が同程度の座標データを得ることができる。そのデータ
を用いることにより、ジェスチャの入力完了が明確でな
い場合もジェスチャ認識が可能となる。
の座標データと前回検出した座標データから二点間距離
をもとめ、その距離に応じて次回座標データを検出する
までの時間を変化させることによって、特徴点間の距離
が同程度とすることができる。そのため、検出したデー
タの中から特徴点を抽出する必要がなくなるため、ジェ
スチャの全体の座標データを得ずとも、特徴点間の距離
が同程度の座標データを得ることができる。そのデータ
を用いることにより、ジェスチャの入力完了が明確でな
い場合もジェスチャ認識が可能となる。
【0052】また、検出したジェスチャの座標データと
前回検出した座標データから二点間距離をもとめ、その
距離に応じてパターン認識で使う座標点を決定するた
め、ジェスチャ認識に必要な特徴点の欠落を防ぐことが
できる。さらに、サンプリング間隔を最も短くするため
の判定条件を最初に判定するためサンプリングするタイ
ミングの遅れが減り、ジェスチャの形状に関する座標情
報の欠落を防ぐことができる。
前回検出した座標データから二点間距離をもとめ、その
距離に応じてパターン認識で使う座標点を決定するた
め、ジェスチャ認識に必要な特徴点の欠落を防ぐことが
できる。さらに、サンプリング間隔を最も短くするため
の判定条件を最初に判定するためサンプリングするタイ
ミングの遅れが減り、ジェスチャの形状に関する座標情
報の欠落を防ぐことができる。
【0053】
【図1】本発明の一実施例の機能ブロック図である。
【図2】本発明の実施例のシステム構成図である。
【図3】ユーザデータテーブルおよび初期値データテー
ブルのテーブル構成図である。
ブルのテーブル構成図である。
【図4】ジェスチャデータテーブルおよび特徴量データ
テーブルのテーブル構成図である。
テーブルのテーブル構成図である。
【図5】パターンインデックステーブルおよびパターン
データテーブルのテーブル構成図である。
データテーブルのテーブル構成図である。
【図6】コマンドインデックステーブルおよび実行プロ
グラムテーブルのテーブル構成図である。
グラムテーブルのテーブル構成図である。
【図7】メインルーチンのフローチャートである。
【図8】一実施例のサンプリングルーチンのフローチャ
ートである。
ートである。
【図9】認識ルーチンのフローチャートである。
【図10】初期値設定画面の表示画面例である。
【図11】メニュー、ジェスチャ入力領域の画面表示例
である。
である。
【図12】ジェスチャを説明するための図である。
【図13】本発明のその他の実施例の機能ブロック図で
ある。
ある。
【図14】その他の実施例のサンプリングルーチンのフ
ローチャートである。
ローチャートである。
【図15】本発明の更にその他の実施例の機能ブロック
図である。
図である。
【図16】その他の実施例のジェスチャデータテーブル
および特徴量データテーブルのテーブル構成図である。
および特徴量データテーブルのテーブル構成図である。
【図17】更にその他の実施例のサンプリングルーチン
のフローチャートである。
のフローチャートである。
1…中央処理装置CPU、2…システムバス、3…主メ
モリ、4…座標入力部、5…ペン、6…タブレットイン
ターフェース、7…表示部、8…描画プロセッサ、9…
表示メモリ、10…外部メモリ、20…ユーザデータテ
ーブル、30…初期値データテーブル、40…ジェスチ
ャデータテーブル、50…特徴量データテーブル、60
…パターンインデックステーブル、70…パターンデー
タテーブル、80…コマンドインデックステーブル、9
0…実行プログラムテーブル。
モリ、4…座標入力部、5…ペン、6…タブレットイン
ターフェース、7…表示部、8…描画プロセッサ、9…
表示メモリ、10…外部メモリ、20…ユーザデータテ
ーブル、30…初期値データテーブル、40…ジェスチ
ャデータテーブル、50…特徴量データテーブル、60
…パターンインデックステーブル、70…パターンデー
タテーブル、80…コマンドインデックステーブル、9
0…実行プログラムテーブル。
Claims (9)
- 【請求項1】ジェスチャを表す座標データを取り込む入
力手段と、前記座標データを格納する格納手段と、前記
格納手段に既に格納してある座標データと前記入力手段
によって得た座標データとの間の距離を計算する座標デ
ータ間距離計算手段と、前記座標データ間距離計算手段
によって得た座標データ間距離に基づき、次に座標デー
タを取り込む処理を実行するまでの時間を管理するサン
プリング間隔制御手段と、あらかじめ登録してあるパタ
ーンと比較照合する手段を設けたことを特徴とするジェ
スチャ認識装置。 - 【請求項2】前記サンプリング間隔制御手段は、割込み
処理を発生させる時間間隔を管理する中央処理装置内の
タイマーへ設定する時間間隔を変更する手段を含むこと
を特徴とする請求項1のジェスチャ認識装置。 - 【請求項3】前記サンプリング間隔制御手段は、サンプ
リング間隔を変更するか否かを判定する検出間隔判定手
段を含むことを特徴とする請求項2のジェスチャ認識装
置。 - 【請求項4】前記サンプリング間隔制御手段は、中央処
理装置内のタイマーの割込み間隔を一定とし、該割込み
処理によって座標データの取り込み処理を実行するか否
かを判定する検出間隔判定手段と前記検出間隔判定手段
によってえた結果を表すカウンターを含むことを特徴と
する請求項1のジェスチャ認識装置。 - 【請求項5】前記検出間隔判定手段でもちいるしきい値
を変更する手段を設けたことを特徴とする請求項4のジ
ェスチャ認識装置。 - 【請求項6】一定時間間隔で座標検出命令を発生し、座
標データの検出間隔制御変数にもとづき該座標検出命令
が有効又は無効かを判定し、有効な場合ジェスチャの座
標データを検出し、無効な場合検出間隔制御変数を更新
し、該検出した座標データをメモリに格納し、検出した
該座標データと前回格納した座標データとの間の距離を
計算し、該距離をもとに検出間隔制御変数を決定し、メ
モリに格納してある座標データを用いてパターン認識す
ることを特徴とするジェスチャ認識方法。 - 【請求項7】前記座標検出命令が有効又は無効かを判定
する処理において、検出命令を有効とする条件を無効と
する条件より先に判定することを特徴とする請求項6の
ジェスチャ認識方法。 - 【請求項8】ジェスチャの座標データ検出命令を発生
し、ジェスチャの座標データを検出し、該座標データを
メモリに格納し、該座標データと前回メモリに格納した
座標データとの間の距離を計算し、該距離をもとに次回
座標データを検出するまでの時間間隔の決定、更新し、
該検出した座標データによりパターン認識することを特
徴とするジェスチャ認識方法。 - 【請求項9】次回座標データを検出するまでの時間間隔
の変更を判定する方法において該時間を短くする条件を
該時間を長くする条件より先に判定する請求項8のジェ
スチャ認識装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25801193A JPH07114621A (ja) | 1993-10-15 | 1993-10-15 | ジェスチャ認識方法およびそれを用いたジェスチャ認識装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25801193A JPH07114621A (ja) | 1993-10-15 | 1993-10-15 | ジェスチャ認識方法およびそれを用いたジェスチャ認識装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07114621A true JPH07114621A (ja) | 1995-05-02 |
Family
ID=17314297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25801193A Pending JPH07114621A (ja) | 1993-10-15 | 1993-10-15 | ジェスチャ認識方法およびそれを用いたジェスチャ認識装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07114621A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004303207A (ja) * | 2003-03-28 | 2004-10-28 | Microsoft Corp | ジェスチャの動的フィードバック |
JP2008305437A (ja) * | 2002-02-08 | 2008-12-18 | Microsoft Corp | ジェスチャ判定方法 |
JP2012128830A (ja) * | 2010-11-24 | 2012-07-05 | Canon Inc | 情報処理装置およびその動作方法 |
JP2012203563A (ja) * | 2011-03-24 | 2012-10-22 | Dainippon Printing Co Ltd | タッチパネルを用いた操作入力検知装置 |
JP2012208684A (ja) * | 2011-03-29 | 2012-10-25 | Nec Personal Computers Ltd | 入力装置及びパラメータ設定方法 |
WO2013038630A1 (ja) * | 2011-09-13 | 2013-03-21 | パナソニック株式会社 | 情報入力装置及び情報入力方法 |
JP2014132411A (ja) * | 2013-01-07 | 2014-07-17 | Ricoh Co Ltd | 画像処理装置、方法およびプログラム |
JP2016502723A (ja) * | 2013-11-05 | 2016-01-28 | 小米科技有限▲責▼任公司Xiaomi Inc. | イヤホンケーブルで端末を制御する方法、イヤホンケーブルで端末を制御する装置、デバイス、プログラム及び記録媒体 |
-
1993
- 1993-10-15 JP JP25801193A patent/JPH07114621A/ja active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008305437A (ja) * | 2002-02-08 | 2008-12-18 | Microsoft Corp | ジェスチャ判定方法 |
JP4694606B2 (ja) * | 2002-02-08 | 2011-06-08 | マイクロソフト コーポレーション | ジェスチャ判定方法 |
JP2004303207A (ja) * | 2003-03-28 | 2004-10-28 | Microsoft Corp | ジェスチャの動的フィードバック |
JP2012128830A (ja) * | 2010-11-24 | 2012-07-05 | Canon Inc | 情報処理装置およびその動作方法 |
JP2012203563A (ja) * | 2011-03-24 | 2012-10-22 | Dainippon Printing Co Ltd | タッチパネルを用いた操作入力検知装置 |
JP2012208684A (ja) * | 2011-03-29 | 2012-10-25 | Nec Personal Computers Ltd | 入力装置及びパラメータ設定方法 |
WO2013038630A1 (ja) * | 2011-09-13 | 2013-03-21 | パナソニック株式会社 | 情報入力装置及び情報入力方法 |
JPWO2013038630A1 (ja) * | 2011-09-13 | 2015-03-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | 情報入力装置及び情報入力方法 |
JP2014132411A (ja) * | 2013-01-07 | 2014-07-17 | Ricoh Co Ltd | 画像処理装置、方法およびプログラム |
JP2016502723A (ja) * | 2013-11-05 | 2016-01-28 | 小米科技有限▲責▼任公司Xiaomi Inc. | イヤホンケーブルで端末を制御する方法、イヤホンケーブルで端末を制御する装置、デバイス、プログラム及び記録媒体 |
US9703386B2 (en) | 2013-11-05 | 2017-07-11 | Xiaomi Inc. | Method for controlling terminal device by using headset wire and the terminal device thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6938220B1 (en) | Information processing apparatus | |
EP0992877B1 (en) | Information processing apparatus | |
JP3167500B2 (ja) | 手書き情報入力処理方式 | |
JP3535624B2 (ja) | 検索装置及び方法 | |
JP2001005599A (ja) | 情報処理装置及び情報処理方法並びに情報処理プログラムを記録した記録媒体 | |
US20090090567A1 (en) | Gesture determination apparatus and method | |
JPH0773190A (ja) | ペンベースコンピューターシステム用絵文字ネーミング | |
JP2951792B2 (ja) | 対象指定方法 | |
WO2014147722A1 (ja) | 電子機器、方法及びプログラム | |
WO2006059513A1 (ja) | 表示装置、表示装置の制御方法及び情報記憶媒体 | |
JPH08305821A (ja) | データ処理方法とその装置 | |
JPH07114621A (ja) | ジェスチャ認識方法およびそれを用いたジェスチャ認識装置 | |
JP4393415B2 (ja) | 手書き入力装置、手書き入力プログラム、および、プログラム記録媒体 | |
JPH09231393A (ja) | 命令入力装置 | |
JP3792755B2 (ja) | 文字認識方法及び装置 | |
JP2003196593A (ja) | 文字認識装置および文字認識方法および文字認識プログラム | |
JP3634686B2 (ja) | 文字修正装置および文字修正方法 | |
JP4357240B2 (ja) | 文字認識装置、文字認識方法、プログラムおよび記憶媒体 | |
JPH06131109A (ja) | 情報処理装置 | |
JPH0744308A (ja) | ワードプロセッサ | |
JP2010176402A (ja) | 文字変換プログラムおよび文字変換装置 | |
JPH08190603A (ja) | 文字認識装置及びその候補文字表示方法 | |
JPH08147096A (ja) | 手書き入力方法及び装置 | |
JPH08212306A (ja) | 筆跡データ間引き方法、辞書作成方法及び文字認識装置 | |
JP3200249B2 (ja) | 文書処理装置 |