JP2004523850A - 入力装置の動きに基づいてオブジェクトのための機能を実行する方法およびコンピュータシステム - Google Patents
入力装置の動きに基づいてオブジェクトのための機能を実行する方法およびコンピュータシステム Download PDFInfo
- Publication number
- JP2004523850A JP2004523850A JP2002575773A JP2002575773A JP2004523850A JP 2004523850 A JP2004523850 A JP 2004523850A JP 2002575773 A JP2002575773 A JP 2002575773A JP 2002575773 A JP2002575773 A JP 2002575773A JP 2004523850 A JP2004523850 A JP 2004523850A
- Authority
- JP
- Japan
- Prior art keywords
- cursor
- motion
- pattern
- movement
- motion pattern
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
本発明は、データ処理コンピュータシステム(100)の機能を実行する方法(400)、コンピュータプログラム製品(200)およびシステム(100)について述べる。前記機能はオブジェクト(125)に関連している。前記方法は、ディスプレイ装置(120)上にオブジェクトのグラフィカルな表現を表示するステップと、入力装置(130)から動きデータ(131)を受信するステップと、動きデータに対応する、カーソルの動き(121)に合うマッチング動きパターン(221)を識別するステップと、マッチング動きパターンおよびオブジェクトに関連する機能(241)を選択するステップと、オブジェクトのために機能を実行するステップとによって実行される。識別ステップは、時間軸上でのカーソル座標の変化(122から124)として、カーソルの動きを測定することによって実行することができる。結果は、予め定義された基準動きパターン群(220)と比較される。1つの動きパターンが、前記オブジェクトのためのマッチング動きパターンとして、複数の基準動きパターンの中から選択される。
Description
【技術分野】
【0001】
本発明は、大まかにはデータ処理システムに関し、より詳細にはデータ処理システムとユーザの対話を改善する方法に関する。以下、データ処理システムをコンピュータと称する。
【背景技術】
【0002】
一般に、コンピュータとユーザの対話は、モニタのようなディスプレイ装置およびマウスのような入力装置から成るグラフィカルユーザーインターフェース(GUI)を通して行われる。ユーザは、入力装置の動きを通してユーザによって制御可能な動くカーソルを用いて、ディスプレイ装置上に表示されるグラフィカルなオブジェクト(object)を指さす。グラフィカルインターフェースを介したユーザとの対話を容易にするために、スクロールするためのボタンまたはホイールが、入力装置に追加された。これらの追加のハードウェアの機能は、ユーザが、マウスボタンをクリックするか、またはスクロールホイールを用いることによって、表示されたオブジェクトを指さすのみならず、これらのオブジェクトと相関がある指定された機能(function)を実行することを可能にする。このようなインターフェースによって、ユーザは、もはや、対応する機能を実行するために、全てのあり得るコマンドを知って、コマンドラインエディタで、これらのコマンドを入力することを強制されはしない。
【0003】
入力装置としてのマウス装置は、公知技術であり、特定のオブジェクトのコンテキスト(context)の中の、より多くの機能を実行するために、より多くの機能性(functionality)を追加することによって、時と共に絶え間なく改良されてきた。例えば、マウスカーソルの位置が、コンピュータシステムのディスプレイ装置上で、グラフィカルなオブジェクトの位置と重なったときに、別のボタン、例えば左右のマウスボタンを用いることによって、別の動作または機能を、そのオブジェクトに対して実行することができる。一般に、左ボタンを一回クリックすると、オブジェクトが選択され、左ボタンを二回クリックすると、オブジェクトと関連付けられたプログラムが起動される。オブジェクトの種類に応じて、起動は、例えば、コンピュータ上で、文書処理プログラムのエディタ内にオブジェクトをロードすること、または実行可能なプログラムを起動することであってもよい。右ボタンを一回クリックすると、コンテキストメニューがディスプレイ装置上に表示される。コンテキストメニューは、そのオブジェクトのために実行可能な拡張された機能のリストを提供し、通常、左ボタンの機能も含んでいる。例えば、テキストオブジェクトのコンテキストにおける予め定義された機能は、オブジェクトをプリンタに送ること、オブジェクトを削除すること、またはそれを電子メールで別の人に送ることである。
【0004】
更に、いくつかのマウス装置は、3つのボタンを有していて、ユーザは、機能を第3のボタンに割り当てることができる(例えば、ダブルクリック機能)。
【0005】
更に、いくつかのマウス装置は、画面上のページをスクロールするための追加のホイールを有している。マウスのような装置の現在の技術的発展は、これらの装置を、より複雑にしている。
【0006】
ラップトップおよびノートブック型のコンピュータの出現と共に、トラックボールベースの装置が、従来のマウス装置の全ての機能を置き換えようとして、コンピュータ装置に組み込まれた。トラックボールとマウスボタンは、物理的に切り離された。何人かのユーザにとって、これは、マウスのような装置と比較して、不便であるかもしれない。
【0007】
更に、コンピュータがどんどん小さくなり、PDA(パーソナルデジタルアシスタント)のような形になると、マウスは完全に消え、ペンのような装置によって置き換えられた。それは、直接、接触感知(touch sensitive)ディスプレイ装置上に書くものであり、これにより入力装置になる。しかし、ペンのような装置に対しては、例えば表示されたオブジェクトのためのコンテキストメニューを表示するための、第1のボタン例えば左ボタンとは異なる入力信号を提供するための、第2のマウスボタン例えば右のマウスボタンまたは第3のマウスボタンのようなものがないという技術的問題が発生する。その結果、全てのあり得る種類のオブジェクトのための全てのあり得る機能を提供する大量のメニューを、非常に小さなサイズの画面上に、一斉に表示しなければならない。これは、例えば、小さなアイコンによって機能を表現するか、または多層のメニューを持つことを要求する。これは、ユーザとの対話が不十分になることを意味する。これは、特にグラフィカルユーザーインターフェースのための、対話の機能性が制限されるという問題があることを意味する。
【0008】
以下の文書は、役に立つ。
・特許出願 WO 99 42920 A (Dobler 他)
・特許出願 EP 0 723 217 A (Falcon)
・1991年11月11日の "Issues in combining marking and direct manipulation techniques" (Kurtenbach 他), UIST '91 4th annual symposium on user interface software and technology の会報の137〜144ページ
・1993年5月1日の "Pen-based user interfaces" (Millen), AT&T Technical Journal, vol. 72, no. 3 の21〜27ページ
・日本の特許抄録(patent abstracts)、2000年3月30日の vol. 2000, no. 03 及び1999年12月14日の JP 11 345071 A
・日本の特許抄録、1999年8月31日の vol. 1999, no. 10 及び1999年5月28日の JP 11 143445 A
【発明の開示】
【発明が解決しようとする課題】
【0009】
本発明は、コンピュータ装置とユーザの対話を改善するという技術的問題を解決するための方法、コンピュータプログラム製品およびシステムを提供しようとするものである。
【課題を解決するための手段】
【0010】
コンピュータとユーザの対話が制限されるという技術的問題を解決するために、請求項1によれば、本発明は、オブジェクトのコンテキストの中の、データ処理コンピュータシステムの機能を実行する方法を提供する。オブジェクトは、ディスプレイ装置上のグラフィカルな表現を有している。ユーザは、入力装置によって動きを実行する。コンピュータシステムは、対応する動きデータを受信するが、それは、好ましくは、ディスプレイ装置上にカーソルの動きを表示する。カーソルの動きは、ディスプレイ装置上の連続したカーソル座標として記述することができる。請求項15によるコンピュータプログラム製品(CPP)は、前記カーソルの動きの中から、あらかじめ定義されたマッチング(matching)動きパターンを識別し、このマッチング動きパターンをオブジェクトと関連付ける。CPPは、マッチング動きパターンとオブジェクトの組み合わせを用いて、複数の機能の中から少なくとも1つの機能を選択する。最後に、前記機能が、オブジェクトのために実行される。
【0011】
本発明の利点は、以下のように要約することができる。入力装置は、たくさんのハードウェア機能を必要としない。また、この入力装置は、障害のある人も用いることができる。ユーザは、その機能と関連する動きを実行することによって、グラフィカルなオブジェクトと相関がある複数の機能に対する直接のアクセスを得る(メニューの階層構造は必要ない)。動きパターンの形は、機能を意味する(例えば削除するための‘x’、送るための矢印、確認するためのフック)ことが可能なので、その結果、ユーザは簡単に記憶することができる。
【0012】
特に、たくさんのハードウェア機能を有する非常に洗練された入力装置、例えばマウスがない場合に、本発明は、入力装置の単純な動きによって、コンピュータと対話して、このコンピュータを制御するソフトウェアベースの便利な方法を記述する。従来の入力装置を用いることが不可能な障害をもつ人でさえ、動きデータ、例えば人の体の任意の部分(例えば頭、腕)の動きを捕捉する入力装置を用いることによって、コンピュータと対話することが可能になる。
【0013】
好ましくは、請求項2のように、本発明は、測定されたカーソルの動きに合うマッチング動きパターンを識別する。これは、カーソルの動きを、予め定義された動きパターン群(ライブラリ)と比較することによって達成される。このようなライブラリの利点は、以下の通りである。それは、どこにでも格納することができる。それは、簡単に交換することができる。それは、いかなる当業者でも作成することができる。好ましくは、請求項9のように、本発明は、入力装置から受信される動きデータが、三次元になることを可能にする。三次元ディスプレイ装置、例えばバーチャルリアリティ眼鏡と組み合わされた入力装置、例えばデータ入力グローブは、ユーザに、動きの自由度を追加することを可能にするという利点がある。これは、直観的な基準動きパターンの可能な数を増やす。
【0014】
好ましくは、請求項4および5のように、本発明は、ひとたびマッチング動きパターンが入力装置によるユーザの動きの中で認識されたら、ユーザに視覚的なフィードバックを与える。この目的のために、マッチング動きパターンのグラフィカルな表現が、ディスプレイ装置上に視覚化され、かつ、そのサイズは、カーソルの動きのサイズに自動的に調節される。動きパターンが識別されると、ユーザに直ちに通知され、かつ対応する機能が実行されるという利点がある。これは、特に選択された機能がバックグラウンドで実行されるときに、ユーザの不安(uncertainty)を避け、かつ、その結果、ユーザが再び同じ動きを実行してしまうことを防止する。
【0015】
好ましくは、請求項6および7のように、本発明は、異なる環境(environment)で動作する場合に、同じ動きパターンに対して異なる機能を実行するための技術的な解決策を提供する。異なる環境とは、例えば、ヨーロッパ、アジアまたはアメリカ文化のような異なる文化であってもよい。常に環境に特有の機能を動きパターンにマッピングしている環境テーブルを切り替えるだけで、予め定義された動きパターンの同じライブラリを、全ての環境で用いることができるという利点がある。
【0016】
好ましくは、請求項8のように、本発明は、動きパターン群(ライブラリ)に、更に、個人専用の基準動きパターンを追加することを可能にする。入力装置からの少なくとも2組の異なる動きデータが記録され、ユーザは、好ましくは、記録の全てにおいて、同じ動きを実行しようとする。CPPは、予め記録された動きデータから、平均カーソル座標を計算して、これは平均の形という結果になる。また、平均の形のための許容範囲は、例えば、標準偏差計算を用いて計算される。平均の形および許容範囲の両方が、新しい基準動きパターンとして格納される。入力装置を動かすユーザに特有の方法が、基準動きパターンの中で考慮されるという利点がある。したがって、ユーザは、予め定義された動きパターンに従って入力装置を動かすことを学ぶ必要はない。むしろ、システムが学んで、ユーザに特有な動きデータを認識する。
【0017】
ある場合には、同じ動きパターンが、複数の機能を意味することもできる。この問題は、請求項10の特徴によって解決され、入力装置からの動きデータの他に、更なる信号が、更なる入力装置から受信される。機能は、オブジェクトに対して、信号とマッチング動きパターンの組み合わせに従って、複数の機能の中から選択される。例えば、入力装置によってオブジェクトのまわりで円の動きを行うと、オブジェクトが選択されるが、更なる入力装置(例えばキーボード)上の“プリント”キーを同時に押すと、オブジェクトの内容が直接プリンタに送られるという利点がある。
【0018】
入力装置の単一の動きによって複数のオブジェクトのための機能を実行することは、便利かもしれない。好ましくは、請求項11のように、本発明は、更なるカーソルの動きおよび対応するマッチング動きパターンを複数のオブジェクトに関連付ける。例えば、円で囲まれた全てのオブジェクトは、各々のオブジェクトに対して対応するマッチング動きパターンと関連する機能(例えばオブジェクトを起動する)にかけられるという利点がある。
【0019】
安全の観点から見て重要な機能(例えば個人データを有するシステムへのログオン)を実行するために用いられる動きパターン、例えばユーザの署名の動きは、他人による濫用を避けるために、特定のユーザに対してユニークでなければならない。請求項12のように、本発明は、入力装置からの接触感知(contact sensitive)情報をカーソルの動きデータに追加するという解決策を提供する。圧力値は、全てのカーソルの動きに対する各カーソル座標で測定される。したがって、測定された圧力値は、カーソルの動きデータの一部になり、それぞれが圧力値を含む予め定義された動きパターンとの比較に用いられる。特に(請求項8のように)更なる基準動きパターンの個人専用の記録と組み合わされると、カーソルの動きの各座標での圧力値は、ユーザに特有の、個人的な値であり、それは別のユーザによってコピーされることがほとんど不可能なので、動きパターンは、特定のユーザに対してユニークになる。このようなユニークな動きパターンは、請求項13のように、デジタル署名を作成するために用いることができる。
【0020】
再度、本発明の利点の引用は行わないが、本発明は、請求項14、15および16のように、コンピュータシステムとして記述することもできる。コンピュータシステムは、実行可能なプログラムコードの形の手段を有していて、これは、システムが、請求項1から13のような、本発明の方法における全ての方法のステップを実行することを可能にする。請求項14のように、オブジェクトに関する機能を実行するために、第1の手段は、ディスプレイ装置上にオブジェクトのグラフィカルな表現を表示する。第2の手段は、入力装置から動きデータを受信し、この動きデータは、ディスプレイ装置上にカーソルの動きを描く。カーソルの動きは、ディスプレイ装置のカーソル座標を通過する。第3の手段は、オブジェクトに対するカーソルの動きの中のマッチング動きパターンを識別する。マッチング動きパターンは、予め定義された動きパターンである。第4の手段は、オブジェクトのための複数の機能の中から1つの機能を選択する。この機能は、マッチング動きパターンに割り当てられている。第5の手段は、オブジェクトに関して機能を実行する。
【0021】
好ましくは、請求項15のように、第3の手段は、マッチング動きパターンを識別するために、更なる手段を有している。第6の手段は、時間軸上でのカーソル座標の変化として、カーソルの動きを測定する。第7の手段は、カーソルの動きを、複数の予め定義された基準動きパターンと比較する。第8の手段は、前記オブジェクトに関するマッチング動きパターンとして、複数の予め定義された動きパターンの中から、1つの動きパターンを選択する。
【0022】
好ましくは、請求項16のように、コンピュータシステムは、更に、基準動きパターンを、複数の動きパターンに追加する手段を有している。これは、
入力装置からの第1の組の動きデータを記録し、
前記入力装置からの第2の組の動きデータを記録し、
平均カーソル座標および許容範囲を、予め記録された組の動きデータから計算し、これは基準動きパターンの形という結果になり、
この計算の結果を、更なる基準動きパターンとして、複数の基準動きパターンの中に格納することによって達成される。
【発明を実施するための最良の形態】
【0023】
従来技術
図1は、従来技術のコンピュータ1、ディスプレイ装置2およびマウスのような入力装置3の単純化された図を示す。ディスプレイ装置2および入力装置3の両方が、コンピュータ1に接続されている。入力装置としてのマウスは、公知技術であり、特定のオブジェクトのための機能を実行するために、より多くの機能性を追加することによって、時と共に絶え間なく改良されてきた。この例では、入力装置3は、右ボタン3−1および左ボタン3−2を有している。ディスプレイ装置2は、オブジェクト10およびカーソル11を表示している。ディスプレイ装置2上でのカーソル11の位置は、入力装置3によって制御される。カーソル11の位置が、オブジェクト10のグラフィカルな表現の位置と重なったときに、ボタン3−1および3−2を用いて、いろいろな機能を、オブジェクト10のコンテキストの中から実行することができる。一般に、一回左ボタン3−1をクリックすると、オブジェクト10が選択される。二回左ボタン3−1をクリックすると、オブジェクトと関連付けられたプログラムが起動する。オブジェクト10の種類に応じて、起動は、例えば、エディタ内にオブジェクトをロードすること、または実行可能なプログラムを起動することであってもよい。一回右ボタン3−1をクリックすると、コンテキストメニュー12が、ディスプレイ装置2上に表示される。コンテキストメニュー12は、そのオブジェクトのために実行可能な機能(F1’からF5’)の拡張されたリストを提供し、左ボタン3−2の機能を含んでいる。例えば、テキストオブジェクトのコンテキストの中の予め定義された機能は、オブジェクトをプリンタに送ること、オブジェクトを削除すること、またはそれを電子メールで別の人に送ることである。
【0024】
好適な実施形態の詳細な説明
従来技術においては、たくさんの機能性、例えば左右のマウスボタンを入力装置に追加して、表示されたオブジェクトのコンテキストの中の機能の便利な実行を可能にしたが、本発明は、入力装置の機能性を更に追加する必要なしで、単にオブジェクトに関して入力装置を動かすことによって、オブジェクトのための機能(すなわち、そのオブジェクトと関連付けられている機能)を実行するという技術的解決策を提供する。
【0025】
本発明は、特に、マウス装置におけるような機能的な性能(capability)を提供しない、単純な入力装置、例えばタッチスクリーンと共に用いるペンのような装置に価値を付加する。したがって、本発明は、コンピュータ装置と人間であるユーザの対話のための簡単な対話モデルによって、オブジェクトのコンテキスト内の機能を実行する、便利な、技術的解決策を提供する。これにより、対話モデルは、入力装置が可変の速度および圧力で動かされる可能性があることを考慮に入れる。
【0026】
図2は、コンピュータプログラム製品200を用いることによって、本発明に従って動作するコンピュータシステム100の単純化された機能的ブロック図を示している。例えば、コンピュータシステム100は、マウス、キーボードおよびモニタを有するパーソナルコンピュータ、またはスタイラスおよびタッチスクリーンを有するパーソナルデジタルアシスタント(PDA)、またはユーザとの対話が可能な他のいかなるコンピュータシステムであってもよい。コンピュータシステム100は、入力装置130、ディスプレイ装置120、プロセッサ160(CPU)、およびメモリ装置190を備えていて、これらはバス110を介して通信する。コンピュータプログラム製品200(CPP)は、メモリ装置190内に常駐し、プロセッサ160によって実行される。説明の都合により、基準動きパターン221〜223の群(plurality)220が、CPP200の一部として示されている。しかし、これは本発明に必須というわけではない。当業者であれば、群220を、例えば、ネットワークによってコンピュータシステム100に接続される、更なるコンピュータシステムのメモリ部(図2には示していない)内に組み込むこともできる。基準動きパターンという用語については、後に説明する。
【0027】
CPP200の更なる構成要素は、パターン識別器270、第1および第2の環境テーブル280および281、機能241から243(F1からF3)の群240である。パターン識別器270は、インターフェース201を介して群220と通信し、かつインターフェース202を介して第1および第2の環境(environment)テーブル280、281と通信する。環境テーブル280、281は、インターフェース203を介して群240と通信する。これらの構成要素の目的は、以下の図のコンテキストの中で説明する。
【0028】
割り当て501および502は、断続線で示されている。割り当て501は、環境テーブル280、281がオブジェクト125に割り当てられていることを示している。なぜなら、それらが機能F1からF3を含んでいて、これらは全てオブジェクト125に適用できるからである。割り当て502は、テーブル280、281内の機能が、複数のオブジェクト126〜128にも適用できることを示している。
【0029】
アイコン510は、ディスプレイ120の座標系を表している。510の原点の位置は、本発明にとって重要ではない。“座標”という用語を用いるときは、常に、座標系510の座標に関するものとする。好ましくは、座標系510は、少なくともxおよびy座標を有するデカルト座標系である。
【0030】
図3は、本発明による方法400の単純化されたフローチャートを示す。好ましくは、方法400は、CPP200を用いるコンピュータシステム100によって実行され、オブジェクト125に対して少なくとも1つの機能(例えば241〜243)を実行する。オブジェクト125は、例えば、テキストファイル、グラフィックスファイル、実行可能なプログラムファイル、ハイパーリンクなどのディスプレイ装置120上でのグラフィカルな表現である。機能241〜243と、それらのラベルF1〜F3(図2参照)は、同義語として用いられる。
【0031】
方法400は、
グラフィカルな表現を表示するステップ410と、
動きデータを受信するステップ420と、
マッチング動きパターンを識別するステップ430と、
機能を選択するステップ440と、
前記機能を実行するステップ450とを有している。
【0032】
ステップ410において、コンピュータシステム100は、ディスプレイ装置120上にオブジェクト125を表示する。
【0033】
ステップ420において、コンピュータシステム100は、ユーザによって動かされる入力装置130を通して動きデータ131を受信する。動きデータ131は、ディスプレイ装置120上のカーソルの動き121として視覚化される。カーソルが動いている間、カーソル座標は変化する。カーソルの動き121は、一連のカーソル座標によって定義される。例えば、カーソルの動き121は、最初はカーソル座標122を通過し、後にカーソル座標123および124を通過する。入力装置130が二次元の動きデータを提供することが、本発明にとって都合が良い。しかし、公知技術である入力装置、例えば対話用グローブは、三次元の動きデータを提供することができる。例えば、三次元の動きデータは、二次元のディスプレイ装置120上に、疑似三次元グラフィックスとして表示される。ディスプレイ装置120の更なる実施形態は、本物の三次元ディスプレイ装置、例えば本物の三次元グラフィックスを生成するホログラム投影機である。
【0034】
ステップ430において、CPP200(図2参照)は、前記オブジェクト125に対する前記カーソルの動き121の中のマッチング動きパターン221を識別する。ここで、マッチング動きパターン221とは、予め定義された基準動きパターン(例えば221〜223)である。
【0035】
CPP200の好ましい実施形態は、パターン識別器(identifier)270(図2参照)を有していて、それは、時間軸上でのカーソル座標の変化(122から124)として、カーソルの動き121を測定する。好ましくは、変化は、オブジェクト125に関して定義される。パターン識別器270は、前記カーソル座標の変化(124から122)に基づいて、カーソルの動き121を、予め定義された基準動きパターン(221から223)の群220と比較する。更に、パターン識別器270は、オブジェクト125に対するマッチング動きパターン221として、予め定義された基準動きパターン群220の中から、1つの動きパターンを選択する。
【0036】
ステップ440において、CPP200は、オブジェクト125に対する機能F1、F2、F3の群240の中から、少なくとも1つの機能F1を選択する。ここで、機能F1は、マッチング動きパターン221(例えば“円”)に割り当てられている。CPP200の好ましい実施形態は、環境テーブル280を有している。環境テーブル280は、割り当てテーブルであり、ここで、テーブル280の右の列280−2における機能F1、F2、F3が、テーブル280の左の列280−1における予め定義された基準動きパターン(221から223)に割り当てられている。断続線501(図2参照)は、テーブル280において、オブジェクト125に適用できる機能(列280−2)だけが、列280−1における対応する予め定義された基準動きパターンに割り当てられることを示している。
【0037】
グラフィカルなシンボルは、異なる文化においては、異なる意味を有する場合がある。例えば、いくつかの国においては、クロスは、しばしばチェックマークとして用いられるのに対して、他の国においては、チェックマークは、一般にフックによって表され、クロスは‘削除’を表す。異なる環境のために同じ機能を異なるシンボルに割り当てるという技術的問題は、第2の環境テーブル281をロードするCPP200の能力(ability)によって解決される。第2の環境テーブル281では、対応する予め定義された基準動きパターンに対する機能(F1、F2、F3)の割り当てが、テーブル280とは異なっている。好ましくはテーブル281に対する起動(activation)フラグをセットすることによって、このテーブルをアクティブにしているときに、四角形223がパターン識別器270によって識別されると、CPP200は機能F1を選択する。これより前に、テーブル280がアクティブな(active)テーブルであるときに、円221が識別されると、F1が選択されていた。ステップ450において、プロセッサ160は、オブジェクト125に対する選択された機能F1に対応するコンピュータプログラムインストラクションを実行する。
【0038】
オプションのステップ425(断続枠、図3参照)において、CPP200は、入力装置130から接触感知情報(圧力値)を受信する。ステップ430で述べたようなカーソルの動き121の測定の他に、パターン識別器270は、全てのカーソルの動き121に対する各カーソル座標で、圧力値も測定する。カーソルの動きデータ121の一部になる、この圧力値は、ステップ430における基準動きパターン群220とカーソルの動きデータ121の比較に用いられる。ここで、各基準動きパターンは、圧力値も含んでいる。
【0039】
マッチング動きパターン221がシステム100によって識別されたときに、ディスプレイ装置120上にグラフィカルなフィードバックを得ることは、時には、ユーザにとって都合が良い。特に、オブジェクト125に対する機能がバックグラウンドで実行されるとき、例えば一晩中動作しているバッチジョブ(バックグラウンドで動作しているコンピュータプログラム)の場合、ユーザには、入力装置130上での動きデータ131が、パターン識別器270によって本当に認識されたかどうかが分からないかもしれない。
【0040】
それゆえに、オプションとして、ひとたびマッチング動きパターン221が、カーソルの動き121と相関があるものとして識別されれば、マッチング動きパターン221の形のグラフィカルな表現が、ディスプレイ装置120上のカーソルの動き121が生じた領域に表示される。ユーザーインターフェースプログラミングの当業者であれば、元のカーソルの動きデータ121のサイズによって、マッチング動きパターン221のグラフィカルな表現のサイズを調節することができる。
【0041】
図4は、動きパターン群220に、更なる基準動きパターン225を追加する、方法400の追加の、オプションのステップ405の詳細を示す。好ましくは、ステップ405は、方法400(図3参照)のステップ410の前またはステップ450の後に、以下の順序で、パターン識別器270の好ましい実施形態を用いて実行される(図5参照)。
【0042】
入力装置130からの第1の組135−1の動きデータが記録される(406)。パターン識別器270が、方法400のステップ430に従って動きデータを測定する(図3参照)。測定結果271−1は、パターン識別器270の中間記憶部271に一時的に格納される。
【0043】
その後、入力装置130からの第2の組135−2の動きデータが記録される(407)。
【0044】
パターン識別器270は、ステップ408において、以前の記録406と407の反復によって得られる結果271−1と271−2を平均することによって、基準動きパターン225の形271−99および前記動きパターンに対する許容範囲271−0を計算する。どの公式が形271−99および許容範囲271−0を計算するために適用されるかは、本発明にとって重要ではない。公知技術における、幾何学的に平均された形を計算するのに適用できる、いかなる公式も、群220に加えることができる基準動きパターン225を計算する目的にかなう。画像処理の分野のプログラマのような当業者であれば、与えられた状況におけるシステム100の要求に最も適した公式を定義することができる。
【0045】
パターン識別器270は、群220の中の更なる基準動きパターン225として、平均の形の計算の結果を格納する(409)ことによって、群220の基準動きパターンを更新する。この更新は、矢印272によって示されている(図5参照)。
【0046】
図5は、方法400のオプションのステップ405を実現するシステム100の好ましい実施形態を示す。好ましくは、ステップ405は、ステップ410の前またはステップ450の後に実行することができる。例として、フォワードスラッシュの形を持つ基準動きパターン225が、群220に追加される。入力装置130の動きデータ135−1および135−2は、入力装置130を通してシステム100によって順に受信され、かつカーソルの動きデータ125−1および125−2として順に表示される。実線125−1、125−2として示されているが、前記カーソルの動きは、ディスプレイ装置120上の離散的な単一のカーソル座標の連なり(sequence)として定義される。パターン識別器270は、記録された動きデータ271−1および271−2を、中間記憶部271内に並行して(in parallel)保持する。記録された動きデータ271−1、271−2は、それぞれ、カーソルの動きデータ125−1、125−2に対応する。パターン識別器270は、平均の形271−99および許容範囲271−0を計算する。許容範囲271−0は、カーソルの動きの各カーソル座標の、平均の形のカーソル座標からの許容される最大偏差を示す。それで、パターン識別器270は、さらに、平均の形271−99とカーソルの動きの相関を取る。パターン識別器270は、それから、形271−99および許容範囲271−0に関する情報を含んでいる基準動きパターン225を格納することによって、群220を更新する(272)。
【0047】
図6は、本発明に従って動作するシステム100(図2参照)の単純化された機能的ブロック図を示していて、これは、更なる要素、すなわち更なる入力装置140および第3の環境テーブル282を導入している。パターン識別器270は、更なる入力装置140から動きデータ131と共に信号145を受信する。例えば、これは、更なる入力装置140がキーボードであって、入力装置130を動かしている間、キー、例えば‘プリント’キーが押されるときに、達成されることができる。この例では、方法400のステップ440において(環境テーブル280の代わりに)環境テーブル282が用いられる。テーブル282は、3つの列(282−1から282−3)を有する割り当てテーブルである。テーブル282の右の列282−3における各機能F1、F2、F3は、テーブル282の左の列282−1における予め定義された基準動きパターン(221から223)と、テーブル282の中央の列282−2における信号145の値(例えば0/1)との組み合わせに割り当てられている。図6における断続線503は、オブジェクト125に適用できる機能だけが、テーブル282における予め定義された基準動きパターンと信号145の値との対応する組み合わせに割り当てられることを示す。更なる入力装置140の信号145と入力装置130の動きデータを組み合わせることは、同じ動きパターンが、複数の機能を意味する可能性がある、いくつかの場合に、利点がある。これらの機能は、信号145によって識別することができる。
【0048】
図2に戻って、ディスプレイ装置120は、オブジェクト126〜128のグラフィカルな表現を表示する。パターン識別器270は、更なるカーソルの動き129に対するマッチング動きパターン221を識別し、かつ、順に、自動的にオブジェクト126〜128に対する機能F1を実行する。CPP200は、オブジェクトをマッチング動きパターンに関連させることによって、常に、機能F1の実行にかけられる全てのオブジェクトを選択する。別の実施形態300および350では、どのようにして、適切なオブジェクトに、マッチング動きパターンを関連付けるかについて述べる。これは、図7に示されている。
【0049】
図7は、本発明によるオブジェクト相関のための2つの別の実施形態を示す。実施形態300では、マッチング動きパターン221をオブジェクト125に関連させるための第1の解決策を述べる。本実施形態においては、仮想グリッド310が、オブジェクト125と恒久的に関連付けられている。グリッド310は、オブジェクト125のまわりに表示範囲の特定の分割を描写する。例えば、グリッド310は、表示のためのデータを格納するメモリ190の一部分の中の見えない構造(図示せず)として実現することができる。グリッド310は、その中心が、オブジェクトの中心315と合っていることが好ましいが、グリッド310の指定された座標(例えば中心)が、オブジェクト125の指定された座標に対して、ある規定された関係にあれば、本発明にとって十分である。グリッド310のサイズは、オブジェクト125のグラフィカルな表現のサイズに、自動的に調節される。例えば、これは、オブジェクトのサイズに対するグリッドのサイズの予め規定された比率が計算されるまで、グリッド310の幅および高さを変化させることによって達成される。サイズを変更する計算が、標準のグラフィックス表示ソフトウェア(図示せず)によって実行されるか、またはシステム100の他のどのソフトウェアの構成要素によって実行されるかは、本発明にとって重要ではない。カーソルの動き121におけるカーソル座標122〜124は、オブジェクト125に関するグリッド310の範囲内に位置している。その結果、カーソルの動き121とオブジェクト125の相関が確立される。マッチング動きパターン221が、カーソルの動き121に対して識別され(方法400のステップ430で述べた)、かつカーソルの動き121が、オブジェクト125に関するグリッド310の中で生じるので、オブジェクト125とマッチング動きパターン221の相関も確立される。
【0050】
実施形態350は、マッチング動きパターン221を複数のオブジェクト126〜128に関連させるための第2の解決策を示す。本実施形態においては、例えば、システム100のオペレーティングシステム(図示せず)が、絶え間なく(continuously)、更なるカーソルの動きデータ129をパターン識別器270(図2参照)へ転送する。ひとたびパターン識別器270がマッチング動きパターン221を識別すると、CPP200は、更なるカーソルの動き129と、例えば、群220の中にマッチング動きパターン221と共に格納されている許容範囲とに基づいて、オブジェクト選択範囲360を決定する。CPP200は、それから、オブジェクトの中心356〜358が範囲360内にあることを確認し、その結果、マッチング動きパターン221を、それぞれ、オブジェクト126〜128と関連させる。
【0051】
図8は、本発明の更なる例を示していて、表示装置120−1およびスタイラス入力装置130−1を有するパーソナルデジタルアシスタント(PDA)100−1を用いる場合である。PDAは、例えば、SAP R/3システムのようなアプリケーションシステムによって提供されるアプリケーションサービスを遠隔操作で起動するためのフロントエンドコンピュータとして役立つ。アプリケーションウインドウ300は、顧客のためのスペアパーツの注文のリストの単純化された表示を示す。リスト内の各行は、この顧客のための注文に対応している。リストは、3つの列C1、C2、C3を有していて、左の列C1には、各注文の現状のためのアイコン(例えば黒丸アイコン)を表示し、中央の列C2には、品目番号(例えば4712)を表示し、右の列C3には、注文日付(例えば01/02/01)を表示する。例えば、状態の列C1の中の三角形のアイコン302は、対応する注文のための(例えば品目2221のための)警報(alert)を表している。ユーザは、状態オブジェクト302の上の接触感知PDAディスプレイ120−1上でのスタイラスカーソルの動き301を行う。動き301の形は、疑問符の形に似ている。
【0052】
方法400のステップ430で述べたように、マッチング動きパターンが識別され、かつ対応する機能、例えば、PDAディスプレイ120−1上の注文の状態の詳細を表示する照会(query)が実行される。なぜなら、この機能は、状態オブジェクトのためのマッチング動きパターンに割り当てられているからである。
【0053】
ユーザが注文を確認したいときには、彼または彼女は、オブジェクト302上で別の動き、例えばチェックマーク形の動きを行う。すると、対応する確認機能が、この注文のために実行される。
【0054】
本発明は、オブジェクト125に関する機能を実行するコンピュータシステム100として記述することもできる。システム100は、以下の構成要素を備えている。
ディスプレイ装置120上にオブジェクト125のグラフィカルな表現を表示する第1の手段。
入力装置130から動きデータ131を受信する第2の手段。動きデータ131は、ディスプレイ装置120上のカーソルの動き121を記述している。カーソルの動き121は、122から124へカーソル座標を通過する。
オブジェクト125に対するカーソルの動き121の中のマッチング動きパターン221を識別する第3の手段。マッチング動きパターン221は、予め定義された動きパターン群220の一部である。
オブジェクト125のための機能群240の中から機能241を選択する第4の手段。機能241は、マッチング動きパターン221に割り当てられている。
オブジェクト125のための機能241を実行する第5の手段。
【0055】
コンピュータシステム100の第3の手段は、更に以下の構成要素を備えている。
時間軸上でのカーソル座標の変化(122から124)として、カーソルの動き121を測定する第6の手段。
カーソルの動き121を、予め定義された基準動きパターン群220と比較する第7の手段。
オブジェクト125に対するマッチング動きパターン221として、予め定義された動きパターン群220の中から、1つの動きパターンを選択する第8の手段。
【0056】
コンピュータシステム100は、オプションとして、更に、以下の手順で、更なる基準動きパターン225を、動きパターン群220に追加する第9の手段を備えている。
入力装置130からの第1の組135−1の動きデータを記録する(406)。
入力装置130からの第2の組135−2の動きデータを記録する(407)。
前の記録406、407の反復によって得られる結果を平均することによって、更なる基準動きパターン225の形271−99と、前記パターンに対する許容範囲271−0とを計算する(408)。
基準動きパターン群220の中に、更なる基準動きパターン225として、計算の結果を格納する(409)。
【0057】
本発明は、プロセッサ160に、図2から8の説明として開示された方法における全てのステップおよび機能を実行させるプログラムインストラクションを含んでいるコンピュータプログラム製品200として実現することができる。コンピュータプログラム製品200は、コンピュータメモリ190内に格納される。更に、コンピュータプログラム製品200は、記録媒体上またはリードオンリーメモリ内で具体化することができる。また、コンピュータプログラム製品200は、電気信号伝送媒体(carrier)上を伝送させることもできる。これば、例えば、CPP200を、記憶装置からネットワーク接続を通してシステム100にダウンロードする場合である。
【図面の簡単な説明】
【0058】
【図1】従来技術におけるコンピュータ、ディスプレイ装置および入力装置の単純化された図である。
【図2】本発明に従って動作するコンピュータシステムの単純化された機能的ブロック図である。
【図3】本発明による方法の単純化されたフローチャートである。
【図4】前記方法の追加のオプションのステップの詳細を示す図である。
【図5】前記方法の前記オプションのステップのための、前記システムの好ましい実施形態を示す図である。
【図6】本発明に従って動作するシステムの単純化された機能的ブロック図である。
【図7】本発明によるオブジェクト相関のための2つの別の実施形態を示す図である。
【図8】本発明の更なる例を示す図である。
【符号の説明】
【0059】
100 コンピュータシステム
110 バス
120 ディスプレイ装置
121、129 カーソルの動き
122〜124 カーソル座標
125〜128 オブジェクト
130 入力装置
131 動きデータ
160 プロセッサ(CPU)
190 メモリ装置
200 コンピュータプログラム製品(CPP)
201〜203 インターフェース
221〜223 マッチング動きパターン(基準動きパターン)
220、240 群
241〜243 機能
270 パターン識別器
280 第1の環境テーブル
280−1、280−2 列
281 第2の環境テーブル
501、502 割り当て
510 座標系
【0001】
本発明は、大まかにはデータ処理システムに関し、より詳細にはデータ処理システムとユーザの対話を改善する方法に関する。以下、データ処理システムをコンピュータと称する。
【背景技術】
【0002】
一般に、コンピュータとユーザの対話は、モニタのようなディスプレイ装置およびマウスのような入力装置から成るグラフィカルユーザーインターフェース(GUI)を通して行われる。ユーザは、入力装置の動きを通してユーザによって制御可能な動くカーソルを用いて、ディスプレイ装置上に表示されるグラフィカルなオブジェクト(object)を指さす。グラフィカルインターフェースを介したユーザとの対話を容易にするために、スクロールするためのボタンまたはホイールが、入力装置に追加された。これらの追加のハードウェアの機能は、ユーザが、マウスボタンをクリックするか、またはスクロールホイールを用いることによって、表示されたオブジェクトを指さすのみならず、これらのオブジェクトと相関がある指定された機能(function)を実行することを可能にする。このようなインターフェースによって、ユーザは、もはや、対応する機能を実行するために、全てのあり得るコマンドを知って、コマンドラインエディタで、これらのコマンドを入力することを強制されはしない。
【0003】
入力装置としてのマウス装置は、公知技術であり、特定のオブジェクトのコンテキスト(context)の中の、より多くの機能を実行するために、より多くの機能性(functionality)を追加することによって、時と共に絶え間なく改良されてきた。例えば、マウスカーソルの位置が、コンピュータシステムのディスプレイ装置上で、グラフィカルなオブジェクトの位置と重なったときに、別のボタン、例えば左右のマウスボタンを用いることによって、別の動作または機能を、そのオブジェクトに対して実行することができる。一般に、左ボタンを一回クリックすると、オブジェクトが選択され、左ボタンを二回クリックすると、オブジェクトと関連付けられたプログラムが起動される。オブジェクトの種類に応じて、起動は、例えば、コンピュータ上で、文書処理プログラムのエディタ内にオブジェクトをロードすること、または実行可能なプログラムを起動することであってもよい。右ボタンを一回クリックすると、コンテキストメニューがディスプレイ装置上に表示される。コンテキストメニューは、そのオブジェクトのために実行可能な拡張された機能のリストを提供し、通常、左ボタンの機能も含んでいる。例えば、テキストオブジェクトのコンテキストにおける予め定義された機能は、オブジェクトをプリンタに送ること、オブジェクトを削除すること、またはそれを電子メールで別の人に送ることである。
【0004】
更に、いくつかのマウス装置は、3つのボタンを有していて、ユーザは、機能を第3のボタンに割り当てることができる(例えば、ダブルクリック機能)。
【0005】
更に、いくつかのマウス装置は、画面上のページをスクロールするための追加のホイールを有している。マウスのような装置の現在の技術的発展は、これらの装置を、より複雑にしている。
【0006】
ラップトップおよびノートブック型のコンピュータの出現と共に、トラックボールベースの装置が、従来のマウス装置の全ての機能を置き換えようとして、コンピュータ装置に組み込まれた。トラックボールとマウスボタンは、物理的に切り離された。何人かのユーザにとって、これは、マウスのような装置と比較して、不便であるかもしれない。
【0007】
更に、コンピュータがどんどん小さくなり、PDA(パーソナルデジタルアシスタント)のような形になると、マウスは完全に消え、ペンのような装置によって置き換えられた。それは、直接、接触感知(touch sensitive)ディスプレイ装置上に書くものであり、これにより入力装置になる。しかし、ペンのような装置に対しては、例えば表示されたオブジェクトのためのコンテキストメニューを表示するための、第1のボタン例えば左ボタンとは異なる入力信号を提供するための、第2のマウスボタン例えば右のマウスボタンまたは第3のマウスボタンのようなものがないという技術的問題が発生する。その結果、全てのあり得る種類のオブジェクトのための全てのあり得る機能を提供する大量のメニューを、非常に小さなサイズの画面上に、一斉に表示しなければならない。これは、例えば、小さなアイコンによって機能を表現するか、または多層のメニューを持つことを要求する。これは、ユーザとの対話が不十分になることを意味する。これは、特にグラフィカルユーザーインターフェースのための、対話の機能性が制限されるという問題があることを意味する。
【0008】
以下の文書は、役に立つ。
・特許出願 WO 99 42920 A (Dobler 他)
・特許出願 EP 0 723 217 A (Falcon)
・1991年11月11日の "Issues in combining marking and direct manipulation techniques" (Kurtenbach 他), UIST '91 4th annual symposium on user interface software and technology の会報の137〜144ページ
・1993年5月1日の "Pen-based user interfaces" (Millen), AT&T Technical Journal, vol. 72, no. 3 の21〜27ページ
・日本の特許抄録(patent abstracts)、2000年3月30日の vol. 2000, no. 03 及び1999年12月14日の JP 11 345071 A
・日本の特許抄録、1999年8月31日の vol. 1999, no. 10 及び1999年5月28日の JP 11 143445 A
【発明の開示】
【発明が解決しようとする課題】
【0009】
本発明は、コンピュータ装置とユーザの対話を改善するという技術的問題を解決するための方法、コンピュータプログラム製品およびシステムを提供しようとするものである。
【課題を解決するための手段】
【0010】
コンピュータとユーザの対話が制限されるという技術的問題を解決するために、請求項1によれば、本発明は、オブジェクトのコンテキストの中の、データ処理コンピュータシステムの機能を実行する方法を提供する。オブジェクトは、ディスプレイ装置上のグラフィカルな表現を有している。ユーザは、入力装置によって動きを実行する。コンピュータシステムは、対応する動きデータを受信するが、それは、好ましくは、ディスプレイ装置上にカーソルの動きを表示する。カーソルの動きは、ディスプレイ装置上の連続したカーソル座標として記述することができる。請求項15によるコンピュータプログラム製品(CPP)は、前記カーソルの動きの中から、あらかじめ定義されたマッチング(matching)動きパターンを識別し、このマッチング動きパターンをオブジェクトと関連付ける。CPPは、マッチング動きパターンとオブジェクトの組み合わせを用いて、複数の機能の中から少なくとも1つの機能を選択する。最後に、前記機能が、オブジェクトのために実行される。
【0011】
本発明の利点は、以下のように要約することができる。入力装置は、たくさんのハードウェア機能を必要としない。また、この入力装置は、障害のある人も用いることができる。ユーザは、その機能と関連する動きを実行することによって、グラフィカルなオブジェクトと相関がある複数の機能に対する直接のアクセスを得る(メニューの階層構造は必要ない)。動きパターンの形は、機能を意味する(例えば削除するための‘x’、送るための矢印、確認するためのフック)ことが可能なので、その結果、ユーザは簡単に記憶することができる。
【0012】
特に、たくさんのハードウェア機能を有する非常に洗練された入力装置、例えばマウスがない場合に、本発明は、入力装置の単純な動きによって、コンピュータと対話して、このコンピュータを制御するソフトウェアベースの便利な方法を記述する。従来の入力装置を用いることが不可能な障害をもつ人でさえ、動きデータ、例えば人の体の任意の部分(例えば頭、腕)の動きを捕捉する入力装置を用いることによって、コンピュータと対話することが可能になる。
【0013】
好ましくは、請求項2のように、本発明は、測定されたカーソルの動きに合うマッチング動きパターンを識別する。これは、カーソルの動きを、予め定義された動きパターン群(ライブラリ)と比較することによって達成される。このようなライブラリの利点は、以下の通りである。それは、どこにでも格納することができる。それは、簡単に交換することができる。それは、いかなる当業者でも作成することができる。好ましくは、請求項9のように、本発明は、入力装置から受信される動きデータが、三次元になることを可能にする。三次元ディスプレイ装置、例えばバーチャルリアリティ眼鏡と組み合わされた入力装置、例えばデータ入力グローブは、ユーザに、動きの自由度を追加することを可能にするという利点がある。これは、直観的な基準動きパターンの可能な数を増やす。
【0014】
好ましくは、請求項4および5のように、本発明は、ひとたびマッチング動きパターンが入力装置によるユーザの動きの中で認識されたら、ユーザに視覚的なフィードバックを与える。この目的のために、マッチング動きパターンのグラフィカルな表現が、ディスプレイ装置上に視覚化され、かつ、そのサイズは、カーソルの動きのサイズに自動的に調節される。動きパターンが識別されると、ユーザに直ちに通知され、かつ対応する機能が実行されるという利点がある。これは、特に選択された機能がバックグラウンドで実行されるときに、ユーザの不安(uncertainty)を避け、かつ、その結果、ユーザが再び同じ動きを実行してしまうことを防止する。
【0015】
好ましくは、請求項6および7のように、本発明は、異なる環境(environment)で動作する場合に、同じ動きパターンに対して異なる機能を実行するための技術的な解決策を提供する。異なる環境とは、例えば、ヨーロッパ、アジアまたはアメリカ文化のような異なる文化であってもよい。常に環境に特有の機能を動きパターンにマッピングしている環境テーブルを切り替えるだけで、予め定義された動きパターンの同じライブラリを、全ての環境で用いることができるという利点がある。
【0016】
好ましくは、請求項8のように、本発明は、動きパターン群(ライブラリ)に、更に、個人専用の基準動きパターンを追加することを可能にする。入力装置からの少なくとも2組の異なる動きデータが記録され、ユーザは、好ましくは、記録の全てにおいて、同じ動きを実行しようとする。CPPは、予め記録された動きデータから、平均カーソル座標を計算して、これは平均の形という結果になる。また、平均の形のための許容範囲は、例えば、標準偏差計算を用いて計算される。平均の形および許容範囲の両方が、新しい基準動きパターンとして格納される。入力装置を動かすユーザに特有の方法が、基準動きパターンの中で考慮されるという利点がある。したがって、ユーザは、予め定義された動きパターンに従って入力装置を動かすことを学ぶ必要はない。むしろ、システムが学んで、ユーザに特有な動きデータを認識する。
【0017】
ある場合には、同じ動きパターンが、複数の機能を意味することもできる。この問題は、請求項10の特徴によって解決され、入力装置からの動きデータの他に、更なる信号が、更なる入力装置から受信される。機能は、オブジェクトに対して、信号とマッチング動きパターンの組み合わせに従って、複数の機能の中から選択される。例えば、入力装置によってオブジェクトのまわりで円の動きを行うと、オブジェクトが選択されるが、更なる入力装置(例えばキーボード)上の“プリント”キーを同時に押すと、オブジェクトの内容が直接プリンタに送られるという利点がある。
【0018】
入力装置の単一の動きによって複数のオブジェクトのための機能を実行することは、便利かもしれない。好ましくは、請求項11のように、本発明は、更なるカーソルの動きおよび対応するマッチング動きパターンを複数のオブジェクトに関連付ける。例えば、円で囲まれた全てのオブジェクトは、各々のオブジェクトに対して対応するマッチング動きパターンと関連する機能(例えばオブジェクトを起動する)にかけられるという利点がある。
【0019】
安全の観点から見て重要な機能(例えば個人データを有するシステムへのログオン)を実行するために用いられる動きパターン、例えばユーザの署名の動きは、他人による濫用を避けるために、特定のユーザに対してユニークでなければならない。請求項12のように、本発明は、入力装置からの接触感知(contact sensitive)情報をカーソルの動きデータに追加するという解決策を提供する。圧力値は、全てのカーソルの動きに対する各カーソル座標で測定される。したがって、測定された圧力値は、カーソルの動きデータの一部になり、それぞれが圧力値を含む予め定義された動きパターンとの比較に用いられる。特に(請求項8のように)更なる基準動きパターンの個人専用の記録と組み合わされると、カーソルの動きの各座標での圧力値は、ユーザに特有の、個人的な値であり、それは別のユーザによってコピーされることがほとんど不可能なので、動きパターンは、特定のユーザに対してユニークになる。このようなユニークな動きパターンは、請求項13のように、デジタル署名を作成するために用いることができる。
【0020】
再度、本発明の利点の引用は行わないが、本発明は、請求項14、15および16のように、コンピュータシステムとして記述することもできる。コンピュータシステムは、実行可能なプログラムコードの形の手段を有していて、これは、システムが、請求項1から13のような、本発明の方法における全ての方法のステップを実行することを可能にする。請求項14のように、オブジェクトに関する機能を実行するために、第1の手段は、ディスプレイ装置上にオブジェクトのグラフィカルな表現を表示する。第2の手段は、入力装置から動きデータを受信し、この動きデータは、ディスプレイ装置上にカーソルの動きを描く。カーソルの動きは、ディスプレイ装置のカーソル座標を通過する。第3の手段は、オブジェクトに対するカーソルの動きの中のマッチング動きパターンを識別する。マッチング動きパターンは、予め定義された動きパターンである。第4の手段は、オブジェクトのための複数の機能の中から1つの機能を選択する。この機能は、マッチング動きパターンに割り当てられている。第5の手段は、オブジェクトに関して機能を実行する。
【0021】
好ましくは、請求項15のように、第3の手段は、マッチング動きパターンを識別するために、更なる手段を有している。第6の手段は、時間軸上でのカーソル座標の変化として、カーソルの動きを測定する。第7の手段は、カーソルの動きを、複数の予め定義された基準動きパターンと比較する。第8の手段は、前記オブジェクトに関するマッチング動きパターンとして、複数の予め定義された動きパターンの中から、1つの動きパターンを選択する。
【0022】
好ましくは、請求項16のように、コンピュータシステムは、更に、基準動きパターンを、複数の動きパターンに追加する手段を有している。これは、
入力装置からの第1の組の動きデータを記録し、
前記入力装置からの第2の組の動きデータを記録し、
平均カーソル座標および許容範囲を、予め記録された組の動きデータから計算し、これは基準動きパターンの形という結果になり、
この計算の結果を、更なる基準動きパターンとして、複数の基準動きパターンの中に格納することによって達成される。
【発明を実施するための最良の形態】
【0023】
従来技術
図1は、従来技術のコンピュータ1、ディスプレイ装置2およびマウスのような入力装置3の単純化された図を示す。ディスプレイ装置2および入力装置3の両方が、コンピュータ1に接続されている。入力装置としてのマウスは、公知技術であり、特定のオブジェクトのための機能を実行するために、より多くの機能性を追加することによって、時と共に絶え間なく改良されてきた。この例では、入力装置3は、右ボタン3−1および左ボタン3−2を有している。ディスプレイ装置2は、オブジェクト10およびカーソル11を表示している。ディスプレイ装置2上でのカーソル11の位置は、入力装置3によって制御される。カーソル11の位置が、オブジェクト10のグラフィカルな表現の位置と重なったときに、ボタン3−1および3−2を用いて、いろいろな機能を、オブジェクト10のコンテキストの中から実行することができる。一般に、一回左ボタン3−1をクリックすると、オブジェクト10が選択される。二回左ボタン3−1をクリックすると、オブジェクトと関連付けられたプログラムが起動する。オブジェクト10の種類に応じて、起動は、例えば、エディタ内にオブジェクトをロードすること、または実行可能なプログラムを起動することであってもよい。一回右ボタン3−1をクリックすると、コンテキストメニュー12が、ディスプレイ装置2上に表示される。コンテキストメニュー12は、そのオブジェクトのために実行可能な機能(F1’からF5’)の拡張されたリストを提供し、左ボタン3−2の機能を含んでいる。例えば、テキストオブジェクトのコンテキストの中の予め定義された機能は、オブジェクトをプリンタに送ること、オブジェクトを削除すること、またはそれを電子メールで別の人に送ることである。
【0024】
好適な実施形態の詳細な説明
従来技術においては、たくさんの機能性、例えば左右のマウスボタンを入力装置に追加して、表示されたオブジェクトのコンテキストの中の機能の便利な実行を可能にしたが、本発明は、入力装置の機能性を更に追加する必要なしで、単にオブジェクトに関して入力装置を動かすことによって、オブジェクトのための機能(すなわち、そのオブジェクトと関連付けられている機能)を実行するという技術的解決策を提供する。
【0025】
本発明は、特に、マウス装置におけるような機能的な性能(capability)を提供しない、単純な入力装置、例えばタッチスクリーンと共に用いるペンのような装置に価値を付加する。したがって、本発明は、コンピュータ装置と人間であるユーザの対話のための簡単な対話モデルによって、オブジェクトのコンテキスト内の機能を実行する、便利な、技術的解決策を提供する。これにより、対話モデルは、入力装置が可変の速度および圧力で動かされる可能性があることを考慮に入れる。
【0026】
図2は、コンピュータプログラム製品200を用いることによって、本発明に従って動作するコンピュータシステム100の単純化された機能的ブロック図を示している。例えば、コンピュータシステム100は、マウス、キーボードおよびモニタを有するパーソナルコンピュータ、またはスタイラスおよびタッチスクリーンを有するパーソナルデジタルアシスタント(PDA)、またはユーザとの対話が可能な他のいかなるコンピュータシステムであってもよい。コンピュータシステム100は、入力装置130、ディスプレイ装置120、プロセッサ160(CPU)、およびメモリ装置190を備えていて、これらはバス110を介して通信する。コンピュータプログラム製品200(CPP)は、メモリ装置190内に常駐し、プロセッサ160によって実行される。説明の都合により、基準動きパターン221〜223の群(plurality)220が、CPP200の一部として示されている。しかし、これは本発明に必須というわけではない。当業者であれば、群220を、例えば、ネットワークによってコンピュータシステム100に接続される、更なるコンピュータシステムのメモリ部(図2には示していない)内に組み込むこともできる。基準動きパターンという用語については、後に説明する。
【0027】
CPP200の更なる構成要素は、パターン識別器270、第1および第2の環境テーブル280および281、機能241から243(F1からF3)の群240である。パターン識別器270は、インターフェース201を介して群220と通信し、かつインターフェース202を介して第1および第2の環境(environment)テーブル280、281と通信する。環境テーブル280、281は、インターフェース203を介して群240と通信する。これらの構成要素の目的は、以下の図のコンテキストの中で説明する。
【0028】
割り当て501および502は、断続線で示されている。割り当て501は、環境テーブル280、281がオブジェクト125に割り当てられていることを示している。なぜなら、それらが機能F1からF3を含んでいて、これらは全てオブジェクト125に適用できるからである。割り当て502は、テーブル280、281内の機能が、複数のオブジェクト126〜128にも適用できることを示している。
【0029】
アイコン510は、ディスプレイ120の座標系を表している。510の原点の位置は、本発明にとって重要ではない。“座標”という用語を用いるときは、常に、座標系510の座標に関するものとする。好ましくは、座標系510は、少なくともxおよびy座標を有するデカルト座標系である。
【0030】
図3は、本発明による方法400の単純化されたフローチャートを示す。好ましくは、方法400は、CPP200を用いるコンピュータシステム100によって実行され、オブジェクト125に対して少なくとも1つの機能(例えば241〜243)を実行する。オブジェクト125は、例えば、テキストファイル、グラフィックスファイル、実行可能なプログラムファイル、ハイパーリンクなどのディスプレイ装置120上でのグラフィカルな表現である。機能241〜243と、それらのラベルF1〜F3(図2参照)は、同義語として用いられる。
【0031】
方法400は、
グラフィカルな表現を表示するステップ410と、
動きデータを受信するステップ420と、
マッチング動きパターンを識別するステップ430と、
機能を選択するステップ440と、
前記機能を実行するステップ450とを有している。
【0032】
ステップ410において、コンピュータシステム100は、ディスプレイ装置120上にオブジェクト125を表示する。
【0033】
ステップ420において、コンピュータシステム100は、ユーザによって動かされる入力装置130を通して動きデータ131を受信する。動きデータ131は、ディスプレイ装置120上のカーソルの動き121として視覚化される。カーソルが動いている間、カーソル座標は変化する。カーソルの動き121は、一連のカーソル座標によって定義される。例えば、カーソルの動き121は、最初はカーソル座標122を通過し、後にカーソル座標123および124を通過する。入力装置130が二次元の動きデータを提供することが、本発明にとって都合が良い。しかし、公知技術である入力装置、例えば対話用グローブは、三次元の動きデータを提供することができる。例えば、三次元の動きデータは、二次元のディスプレイ装置120上に、疑似三次元グラフィックスとして表示される。ディスプレイ装置120の更なる実施形態は、本物の三次元ディスプレイ装置、例えば本物の三次元グラフィックスを生成するホログラム投影機である。
【0034】
ステップ430において、CPP200(図2参照)は、前記オブジェクト125に対する前記カーソルの動き121の中のマッチング動きパターン221を識別する。ここで、マッチング動きパターン221とは、予め定義された基準動きパターン(例えば221〜223)である。
【0035】
CPP200の好ましい実施形態は、パターン識別器(identifier)270(図2参照)を有していて、それは、時間軸上でのカーソル座標の変化(122から124)として、カーソルの動き121を測定する。好ましくは、変化は、オブジェクト125に関して定義される。パターン識別器270は、前記カーソル座標の変化(124から122)に基づいて、カーソルの動き121を、予め定義された基準動きパターン(221から223)の群220と比較する。更に、パターン識別器270は、オブジェクト125に対するマッチング動きパターン221として、予め定義された基準動きパターン群220の中から、1つの動きパターンを選択する。
【0036】
ステップ440において、CPP200は、オブジェクト125に対する機能F1、F2、F3の群240の中から、少なくとも1つの機能F1を選択する。ここで、機能F1は、マッチング動きパターン221(例えば“円”)に割り当てられている。CPP200の好ましい実施形態は、環境テーブル280を有している。環境テーブル280は、割り当てテーブルであり、ここで、テーブル280の右の列280−2における機能F1、F2、F3が、テーブル280の左の列280−1における予め定義された基準動きパターン(221から223)に割り当てられている。断続線501(図2参照)は、テーブル280において、オブジェクト125に適用できる機能(列280−2)だけが、列280−1における対応する予め定義された基準動きパターンに割り当てられることを示している。
【0037】
グラフィカルなシンボルは、異なる文化においては、異なる意味を有する場合がある。例えば、いくつかの国においては、クロスは、しばしばチェックマークとして用いられるのに対して、他の国においては、チェックマークは、一般にフックによって表され、クロスは‘削除’を表す。異なる環境のために同じ機能を異なるシンボルに割り当てるという技術的問題は、第2の環境テーブル281をロードするCPP200の能力(ability)によって解決される。第2の環境テーブル281では、対応する予め定義された基準動きパターンに対する機能(F1、F2、F3)の割り当てが、テーブル280とは異なっている。好ましくはテーブル281に対する起動(activation)フラグをセットすることによって、このテーブルをアクティブにしているときに、四角形223がパターン識別器270によって識別されると、CPP200は機能F1を選択する。これより前に、テーブル280がアクティブな(active)テーブルであるときに、円221が識別されると、F1が選択されていた。ステップ450において、プロセッサ160は、オブジェクト125に対する選択された機能F1に対応するコンピュータプログラムインストラクションを実行する。
【0038】
オプションのステップ425(断続枠、図3参照)において、CPP200は、入力装置130から接触感知情報(圧力値)を受信する。ステップ430で述べたようなカーソルの動き121の測定の他に、パターン識別器270は、全てのカーソルの動き121に対する各カーソル座標で、圧力値も測定する。カーソルの動きデータ121の一部になる、この圧力値は、ステップ430における基準動きパターン群220とカーソルの動きデータ121の比較に用いられる。ここで、各基準動きパターンは、圧力値も含んでいる。
【0039】
マッチング動きパターン221がシステム100によって識別されたときに、ディスプレイ装置120上にグラフィカルなフィードバックを得ることは、時には、ユーザにとって都合が良い。特に、オブジェクト125に対する機能がバックグラウンドで実行されるとき、例えば一晩中動作しているバッチジョブ(バックグラウンドで動作しているコンピュータプログラム)の場合、ユーザには、入力装置130上での動きデータ131が、パターン識別器270によって本当に認識されたかどうかが分からないかもしれない。
【0040】
それゆえに、オプションとして、ひとたびマッチング動きパターン221が、カーソルの動き121と相関があるものとして識別されれば、マッチング動きパターン221の形のグラフィカルな表現が、ディスプレイ装置120上のカーソルの動き121が生じた領域に表示される。ユーザーインターフェースプログラミングの当業者であれば、元のカーソルの動きデータ121のサイズによって、マッチング動きパターン221のグラフィカルな表現のサイズを調節することができる。
【0041】
図4は、動きパターン群220に、更なる基準動きパターン225を追加する、方法400の追加の、オプションのステップ405の詳細を示す。好ましくは、ステップ405は、方法400(図3参照)のステップ410の前またはステップ450の後に、以下の順序で、パターン識別器270の好ましい実施形態を用いて実行される(図5参照)。
【0042】
入力装置130からの第1の組135−1の動きデータが記録される(406)。パターン識別器270が、方法400のステップ430に従って動きデータを測定する(図3参照)。測定結果271−1は、パターン識別器270の中間記憶部271に一時的に格納される。
【0043】
その後、入力装置130からの第2の組135−2の動きデータが記録される(407)。
【0044】
パターン識別器270は、ステップ408において、以前の記録406と407の反復によって得られる結果271−1と271−2を平均することによって、基準動きパターン225の形271−99および前記動きパターンに対する許容範囲271−0を計算する。どの公式が形271−99および許容範囲271−0を計算するために適用されるかは、本発明にとって重要ではない。公知技術における、幾何学的に平均された形を計算するのに適用できる、いかなる公式も、群220に加えることができる基準動きパターン225を計算する目的にかなう。画像処理の分野のプログラマのような当業者であれば、与えられた状況におけるシステム100の要求に最も適した公式を定義することができる。
【0045】
パターン識別器270は、群220の中の更なる基準動きパターン225として、平均の形の計算の結果を格納する(409)ことによって、群220の基準動きパターンを更新する。この更新は、矢印272によって示されている(図5参照)。
【0046】
図5は、方法400のオプションのステップ405を実現するシステム100の好ましい実施形態を示す。好ましくは、ステップ405は、ステップ410の前またはステップ450の後に実行することができる。例として、フォワードスラッシュの形を持つ基準動きパターン225が、群220に追加される。入力装置130の動きデータ135−1および135−2は、入力装置130を通してシステム100によって順に受信され、かつカーソルの動きデータ125−1および125−2として順に表示される。実線125−1、125−2として示されているが、前記カーソルの動きは、ディスプレイ装置120上の離散的な単一のカーソル座標の連なり(sequence)として定義される。パターン識別器270は、記録された動きデータ271−1および271−2を、中間記憶部271内に並行して(in parallel)保持する。記録された動きデータ271−1、271−2は、それぞれ、カーソルの動きデータ125−1、125−2に対応する。パターン識別器270は、平均の形271−99および許容範囲271−0を計算する。許容範囲271−0は、カーソルの動きの各カーソル座標の、平均の形のカーソル座標からの許容される最大偏差を示す。それで、パターン識別器270は、さらに、平均の形271−99とカーソルの動きの相関を取る。パターン識別器270は、それから、形271−99および許容範囲271−0に関する情報を含んでいる基準動きパターン225を格納することによって、群220を更新する(272)。
【0047】
図6は、本発明に従って動作するシステム100(図2参照)の単純化された機能的ブロック図を示していて、これは、更なる要素、すなわち更なる入力装置140および第3の環境テーブル282を導入している。パターン識別器270は、更なる入力装置140から動きデータ131と共に信号145を受信する。例えば、これは、更なる入力装置140がキーボードであって、入力装置130を動かしている間、キー、例えば‘プリント’キーが押されるときに、達成されることができる。この例では、方法400のステップ440において(環境テーブル280の代わりに)環境テーブル282が用いられる。テーブル282は、3つの列(282−1から282−3)を有する割り当てテーブルである。テーブル282の右の列282−3における各機能F1、F2、F3は、テーブル282の左の列282−1における予め定義された基準動きパターン(221から223)と、テーブル282の中央の列282−2における信号145の値(例えば0/1)との組み合わせに割り当てられている。図6における断続線503は、オブジェクト125に適用できる機能だけが、テーブル282における予め定義された基準動きパターンと信号145の値との対応する組み合わせに割り当てられることを示す。更なる入力装置140の信号145と入力装置130の動きデータを組み合わせることは、同じ動きパターンが、複数の機能を意味する可能性がある、いくつかの場合に、利点がある。これらの機能は、信号145によって識別することができる。
【0048】
図2に戻って、ディスプレイ装置120は、オブジェクト126〜128のグラフィカルな表現を表示する。パターン識別器270は、更なるカーソルの動き129に対するマッチング動きパターン221を識別し、かつ、順に、自動的にオブジェクト126〜128に対する機能F1を実行する。CPP200は、オブジェクトをマッチング動きパターンに関連させることによって、常に、機能F1の実行にかけられる全てのオブジェクトを選択する。別の実施形態300および350では、どのようにして、適切なオブジェクトに、マッチング動きパターンを関連付けるかについて述べる。これは、図7に示されている。
【0049】
図7は、本発明によるオブジェクト相関のための2つの別の実施形態を示す。実施形態300では、マッチング動きパターン221をオブジェクト125に関連させるための第1の解決策を述べる。本実施形態においては、仮想グリッド310が、オブジェクト125と恒久的に関連付けられている。グリッド310は、オブジェクト125のまわりに表示範囲の特定の分割を描写する。例えば、グリッド310は、表示のためのデータを格納するメモリ190の一部分の中の見えない構造(図示せず)として実現することができる。グリッド310は、その中心が、オブジェクトの中心315と合っていることが好ましいが、グリッド310の指定された座標(例えば中心)が、オブジェクト125の指定された座標に対して、ある規定された関係にあれば、本発明にとって十分である。グリッド310のサイズは、オブジェクト125のグラフィカルな表現のサイズに、自動的に調節される。例えば、これは、オブジェクトのサイズに対するグリッドのサイズの予め規定された比率が計算されるまで、グリッド310の幅および高さを変化させることによって達成される。サイズを変更する計算が、標準のグラフィックス表示ソフトウェア(図示せず)によって実行されるか、またはシステム100の他のどのソフトウェアの構成要素によって実行されるかは、本発明にとって重要ではない。カーソルの動き121におけるカーソル座標122〜124は、オブジェクト125に関するグリッド310の範囲内に位置している。その結果、カーソルの動き121とオブジェクト125の相関が確立される。マッチング動きパターン221が、カーソルの動き121に対して識別され(方法400のステップ430で述べた)、かつカーソルの動き121が、オブジェクト125に関するグリッド310の中で生じるので、オブジェクト125とマッチング動きパターン221の相関も確立される。
【0050】
実施形態350は、マッチング動きパターン221を複数のオブジェクト126〜128に関連させるための第2の解決策を示す。本実施形態においては、例えば、システム100のオペレーティングシステム(図示せず)が、絶え間なく(continuously)、更なるカーソルの動きデータ129をパターン識別器270(図2参照)へ転送する。ひとたびパターン識別器270がマッチング動きパターン221を識別すると、CPP200は、更なるカーソルの動き129と、例えば、群220の中にマッチング動きパターン221と共に格納されている許容範囲とに基づいて、オブジェクト選択範囲360を決定する。CPP200は、それから、オブジェクトの中心356〜358が範囲360内にあることを確認し、その結果、マッチング動きパターン221を、それぞれ、オブジェクト126〜128と関連させる。
【0051】
図8は、本発明の更なる例を示していて、表示装置120−1およびスタイラス入力装置130−1を有するパーソナルデジタルアシスタント(PDA)100−1を用いる場合である。PDAは、例えば、SAP R/3システムのようなアプリケーションシステムによって提供されるアプリケーションサービスを遠隔操作で起動するためのフロントエンドコンピュータとして役立つ。アプリケーションウインドウ300は、顧客のためのスペアパーツの注文のリストの単純化された表示を示す。リスト内の各行は、この顧客のための注文に対応している。リストは、3つの列C1、C2、C3を有していて、左の列C1には、各注文の現状のためのアイコン(例えば黒丸アイコン)を表示し、中央の列C2には、品目番号(例えば4712)を表示し、右の列C3には、注文日付(例えば01/02/01)を表示する。例えば、状態の列C1の中の三角形のアイコン302は、対応する注文のための(例えば品目2221のための)警報(alert)を表している。ユーザは、状態オブジェクト302の上の接触感知PDAディスプレイ120−1上でのスタイラスカーソルの動き301を行う。動き301の形は、疑問符の形に似ている。
【0052】
方法400のステップ430で述べたように、マッチング動きパターンが識別され、かつ対応する機能、例えば、PDAディスプレイ120−1上の注文の状態の詳細を表示する照会(query)が実行される。なぜなら、この機能は、状態オブジェクトのためのマッチング動きパターンに割り当てられているからである。
【0053】
ユーザが注文を確認したいときには、彼または彼女は、オブジェクト302上で別の動き、例えばチェックマーク形の動きを行う。すると、対応する確認機能が、この注文のために実行される。
【0054】
本発明は、オブジェクト125に関する機能を実行するコンピュータシステム100として記述することもできる。システム100は、以下の構成要素を備えている。
ディスプレイ装置120上にオブジェクト125のグラフィカルな表現を表示する第1の手段。
入力装置130から動きデータ131を受信する第2の手段。動きデータ131は、ディスプレイ装置120上のカーソルの動き121を記述している。カーソルの動き121は、122から124へカーソル座標を通過する。
オブジェクト125に対するカーソルの動き121の中のマッチング動きパターン221を識別する第3の手段。マッチング動きパターン221は、予め定義された動きパターン群220の一部である。
オブジェクト125のための機能群240の中から機能241を選択する第4の手段。機能241は、マッチング動きパターン221に割り当てられている。
オブジェクト125のための機能241を実行する第5の手段。
【0055】
コンピュータシステム100の第3の手段は、更に以下の構成要素を備えている。
時間軸上でのカーソル座標の変化(122から124)として、カーソルの動き121を測定する第6の手段。
カーソルの動き121を、予め定義された基準動きパターン群220と比較する第7の手段。
オブジェクト125に対するマッチング動きパターン221として、予め定義された動きパターン群220の中から、1つの動きパターンを選択する第8の手段。
【0056】
コンピュータシステム100は、オプションとして、更に、以下の手順で、更なる基準動きパターン225を、動きパターン群220に追加する第9の手段を備えている。
入力装置130からの第1の組135−1の動きデータを記録する(406)。
入力装置130からの第2の組135−2の動きデータを記録する(407)。
前の記録406、407の反復によって得られる結果を平均することによって、更なる基準動きパターン225の形271−99と、前記パターンに対する許容範囲271−0とを計算する(408)。
基準動きパターン群220の中に、更なる基準動きパターン225として、計算の結果を格納する(409)。
【0057】
本発明は、プロセッサ160に、図2から8の説明として開示された方法における全てのステップおよび機能を実行させるプログラムインストラクションを含んでいるコンピュータプログラム製品200として実現することができる。コンピュータプログラム製品200は、コンピュータメモリ190内に格納される。更に、コンピュータプログラム製品200は、記録媒体上またはリードオンリーメモリ内で具体化することができる。また、コンピュータプログラム製品200は、電気信号伝送媒体(carrier)上を伝送させることもできる。これば、例えば、CPP200を、記憶装置からネットワーク接続を通してシステム100にダウンロードする場合である。
【図面の簡単な説明】
【0058】
【図1】従来技術におけるコンピュータ、ディスプレイ装置および入力装置の単純化された図である。
【図2】本発明に従って動作するコンピュータシステムの単純化された機能的ブロック図である。
【図3】本発明による方法の単純化されたフローチャートである。
【図4】前記方法の追加のオプションのステップの詳細を示す図である。
【図5】前記方法の前記オプションのステップのための、前記システムの好ましい実施形態を示す図である。
【図6】本発明に従って動作するシステムの単純化された機能的ブロック図である。
【図7】本発明によるオブジェクト相関のための2つの別の実施形態を示す図である。
【図8】本発明の更なる例を示す図である。
【符号の説明】
【0059】
100 コンピュータシステム
110 バス
120 ディスプレイ装置
121、129 カーソルの動き
122〜124 カーソル座標
125〜128 オブジェクト
130 入力装置
131 動きデータ
160 プロセッサ(CPU)
190 メモリ装置
200 コンピュータプログラム製品(CPP)
201〜203 インターフェース
221〜223 マッチング動きパターン(基準動きパターン)
220、240 群
241〜243 機能
270 パターン識別器
280 第1の環境テーブル
280−1、280−2 列
281 第2の環境テーブル
501、502 割り当て
510 座標系
Claims (21)
- データ処理コンピュータシステム(100)の少なくとも1つの機能を実行する方法(400)において、前記機能はオブジェクト(125)に関連していて、前記方法(400)は、
オブジェクト(125)のグラフィカルな表現をディスプレイ装置(120)上に表示するステップ(410)と、
入力装置(130)から、ディスプレイ装置(120)上での、順にカーソル座標を通過する(122から124)カーソルの動き(121)を表す動きデータ(131)を受信するステップ(420)と、
オブジェクト(125)と関連するグリッド(310)を介した前記オブジェクト(125)に対する前記カーソルの動き(121)の中の予め定義されたマッチング動きパターン(221)を識別するステップ(430)と、
前記オブジェクト(125)のための機能群(240)の中から、前記マッチング動きパターン(221)に割り当てられる少なくとも1つの機能(241)を選択するステップ(440)と、
前記オブジェクト(125)のために前記選択された機能(241)を実行するステップ(450)とを有していて、
前記グリッド(310)のサイズは、オブジェクト(125)のサイズによって決まることを特徴とする方法。 - 前記識別ステップ(430)は、
時間軸上でのグリッド(310)の範囲内でのカーソル座標の変化(122から124)としてカーソルの動き(121)を測定し、
このカーソルの動き(121)を複数の予め定義された基準動きパターン(220)と比較し、
前記オブジェクト(125)のためのマッチング動きパターン(221)として、複数の予め定義された動きパターン(220)の中から1つの動きパターンを選択するという順序で実行されることを特徴とする請求項1に記載の方法。 - 前記識別ステップ(430)では、更に、時間軸上でのカーソルの速度の変化として、カーソルの動き(121)のカーソル加速成分を測定することを特徴とする請求項1または2に記載の方法。
- 前記マッチング動きパターン(221)のグラフィカルな表現が、ディスプレイ装置(120)上で視覚化されることを特徴とする請求項1に記載の方法。
- 前記マッチング動きパターン(221)のグラフィカルな表現は、ディスプレイ装置(120)上で、自動的にカーソルの動き(121)のサイズに調節されることを特徴とする請求項4に記載の方法。
- 前記選択ステップ(440)において、データ処理システム(100)が異なる環境で動作するとき、更なる機能(242)が選択されることを特徴とする請求項1に記載の方法。
- 前記選択ステップ(440)において、前記機能(241)は、第1の環境テーブル(280)から選択され、かつ前記更なる機能は、第2の環境テーブル(281)から選択されることを特徴とする請求項6に記載の方法。
- 更なる基準動きパターン(225)を複数の動きパターン(220)に追加する少なくとも1つの更なるステップ(405)を有していて、この更なるステップは、
入力装置(130)からの第1の組(135−1)の動きデータを記録し(406)、
入力装置(130)からの第2の組(135−2)の動きデータを記録し(407)、
平均カーソル座標および許容範囲(271−0)を、予め記録された組の動きデータ(135−1、135−2)から計算し(408)、これは更なる基準動きパターン(225)の形(271−99)という結果になり、
この計算の結果を、更なる基準動きパターン(225)として、基準動きパターン群(220)の中に格納する(409)という順序で実行されることを特徴とする請求項1に記載の方法。 - 前記受信ステップ(420)における動きデータは、三次元の動きを記述していることを特徴とする請求項1に記載の方法。
- 前記選択ステップ(440)における動きパターン(221)は、更なる入力装置(140)の信号(145)と組み合わせられて、前記オブジェクト(125)のための機能群(240)の中から1つの機能(242)を選択し、前記選択される機能(242)は、前記動きパターン(221)と信号(145)の組み合わせによって決まることを特徴とする請求項1に記載の方法。
- 前記機能は、複数のオブジェクト(126から128)のために実行され、更なるカーソルの動き(129)が、動きパターン群(220)のうちの1つの動きパターン(221)に合わされ、前記マッチング動きパターン(221)は、複数のオブジェクト(126から128)に関連付けられることを特徴とする請求項1に記載の方法。
- カーソルの動きデータ(121)に、入力装置(130)からの接触感知情報を追加する更なるステップ(425)を有していて、パターン識別器(270)は、更に、全てのカーソルの動き(121)に対する各カーソル座標での接触圧力値を測定し、前記接触圧力値は、カーソルの動きデータ(121)の一部になり、基準動きパターン群(220)との比較に用いられ、各基準動きパターンは、それぞれ、接触圧力値を有していることを特徴とする請求項1に記載の方法。
- デジタル署名が、ユーザのために、更なる基準動きパターン(225)から作成され、前記更なる基準動きパターン(225)は、接触圧力値を有していることを特徴とする請求項8または12に記載の方法。
- オブジェクト(125)に関する機能を実行するコンピュータシステム(100)において、
ディスプレイ装置(120)上にオブジェクト(125)のグラフィカルな表現を表示する第1の手段と、
入力装置(130)から、ディスプレイ装置(120)上でのカーソル座標を通り抜けている(122から124)カーソルの動き(121)を記述している動きデータ(131)を受信する第2の手段と、
オブジェクト(125)と関連するグリッド(310)を介した前記オブジェクト(125)に対する前記カーソルの動き(121)の中の予め定義されたマッチング動きパターン(221)を識別する第3の手段と、
前記オブジェクト(125)のための機能群(240)の中から、前記マッチング動きパターン(221)に割り当てられる1つの機能(241)を選択する第4の手段と、
前記オブジェクト(125)のために前記機能(241)を実行する第5の手段とを備えていて、
前記グリッド(310)のサイズは、オブジェクト(125)のサイズによって決まることを特徴とするコンピュータシステム。 - 前記マッチング動きパターン(221)を識別する第3の手段は、
時間軸上でのグリッド(310)の範囲内でのカーソル座標の変化(122から124)として、前記カーソルの動き(121)を測定する第6の手段と、
前記カーソル動き(121)を、前記予め定義された基準動きパターン群(220)と比較する第7の手段と、
前記オブジェクト(125)のためのマッチング動きパターン(221)として、予め定義された動きパターン群(220)の中から、1つの動きパターンを選択する第8の手段とを備えていることを特徴とする請求項14に記載のコンピュータシステム。 - 入力装置(130)からの第1の組の動きデータ(135−1)を記録し(406)、
前記入力装置(130)からの第2の組の動きデータ(135−2)を記録し(407)、
平均カーソル座標および許容範囲(271−0)を、予め記録された組の動きデータ(135−1、135−2)から計算し(408)、これは基準動きパターン(225)の形(271−99)という結果になり、
この計算の結果を、更なる基準動きパターン(225)として、基準動きパターン群(220)の中に格納する(409)ことによって、基準動きパターン(225)を動きパターン群(220)に追加する手段を備えていることを特徴とする請求項14に記載のコンピュータシステム。 - プロセッサ(160)に、請求項1から13のうちのいずれか一項に記載の方法を実行させるプログラムインストラクションを含んでいるコンピュータプログラム製品(200)。
- 記録媒体上で具体化されることを特徴とする請求項17に記載のコンピュータプログラム製品(200)。
- コンピュータメモリ(190)内に格納されることを特徴とする請求項17に記載のコンピュータプログラム製品(200)。
- リードオンリーメモリ内で具体化されることを特徴とする請求項17に記載のコンピュータプログラム製品(200)。
- 電気信号伝送媒体上を伝送されることを特徴とする請求項17に記載のコンピュータプログラム製品(200)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01107374A EP1246048A1 (en) | 2001-03-26 | 2001-03-26 | Method and computer system for executing functions for objects based on the movement of an input device |
PCT/EP2001/014827 WO2002077784A1 (en) | 2001-03-26 | 2001-12-14 | Method and computer system for executing functions for objects based on the movement of an input device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004523850A true JP2004523850A (ja) | 2004-08-05 |
Family
ID=8176931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002575773A Pending JP2004523850A (ja) | 2001-03-26 | 2001-12-14 | 入力装置の動きに基づいてオブジェクトのための機能を実行する方法およびコンピュータシステム |
Country Status (6)
Country | Link |
---|---|
US (1) | US6847348B2 (ja) |
EP (1) | EP1246048A1 (ja) |
JP (1) | JP2004523850A (ja) |
AU (1) | AU2002216117B2 (ja) |
CA (1) | CA2441788C (ja) |
WO (1) | WO2002077784A1 (ja) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7750891B2 (en) * | 2003-04-09 | 2010-07-06 | Tegic Communications, Inc. | Selective input system based on tracking of motion parameters of an input device |
US7821503B2 (en) | 2003-04-09 | 2010-10-26 | Tegic Communications, Inc. | Touch screen and graphical user interface |
EP1192716B1 (en) * | 1999-05-27 | 2009-09-23 | Tegic Communications, Inc. | Keyboard system with automatic correction |
US7030863B2 (en) | 2000-05-26 | 2006-04-18 | America Online, Incorporated | Virtual keyboard system with automatic correction |
US7286115B2 (en) | 2000-05-26 | 2007-10-23 | Tegic Communications, Inc. | Directional input system with automatic correction |
US6876368B2 (en) * | 2001-08-14 | 2005-04-05 | National Instruments Corporation | System and method for deploying a graphical program to a PDA device |
JP4061094B2 (ja) * | 2002-03-15 | 2008-03-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 音声認識装置、その音声認識方法及びプログラム |
US7058902B2 (en) * | 2002-07-30 | 2006-06-06 | Microsoft Corporation | Enhanced on-object context menus |
US7721228B2 (en) * | 2003-08-05 | 2010-05-18 | Yahoo! Inc. | Method and system of controlling a context menu |
US20050041014A1 (en) * | 2003-08-22 | 2005-02-24 | Benjamin Slotznick | Using cursor immobility to suppress selection errors |
JP2005215749A (ja) * | 2004-01-27 | 2005-08-11 | Nec Corp | 操作要素の選択方式とその選択方法 |
US7828814B2 (en) * | 2004-08-27 | 2010-11-09 | Rox Medical, Inc. | Device and method for establishing an artificial arterio-venous fistula |
US20060072009A1 (en) * | 2004-10-01 | 2006-04-06 | International Business Machines Corporation | Flexible interaction-based computer interfacing using visible artifacts |
US20060071904A1 (en) * | 2004-10-05 | 2006-04-06 | Samsung Electronics Co., Ltd. | Method of and apparatus for executing function using combination of user's key input and motion |
US7864159B2 (en) * | 2005-01-12 | 2011-01-04 | Thinkoptics, Inc. | Handheld vision based absolute pointing system |
US20070004452A1 (en) * | 2005-06-08 | 2007-01-04 | Wen-Hsiang Yueh | Wireless device |
JP4773170B2 (ja) | 2005-09-14 | 2011-09-14 | 任天堂株式会社 | ゲームプログラムおよびゲームシステム |
TW200743993A (en) * | 2006-05-26 | 2007-12-01 | Uniwill Comp Corp | Input apparatus and input method thereof |
KR100701520B1 (ko) * | 2006-06-26 | 2007-03-29 | 삼성전자주식회사 | 키패드 터치에 의한 사용자 인터페이스 방법 및 그 휴대단말기 |
US8913003B2 (en) * | 2006-07-17 | 2014-12-16 | Thinkoptics, Inc. | Free-space multi-dimensional absolute pointer using a projection marker system |
EP2074867A2 (en) * | 2006-10-12 | 2009-07-01 | Koninklijke Philips Electronics N.V. | System and method for light control |
US7889177B2 (en) * | 2006-10-12 | 2011-02-15 | Avago Technologies Ecbu Ip (Singapore) Pte. Ltd. | Computer input device and method of using the device |
US8201087B2 (en) | 2007-02-01 | 2012-06-12 | Tegic Communications, Inc. | Spell-check for a keyboard system with automatic correction |
US8225203B2 (en) | 2007-02-01 | 2012-07-17 | Nuance Communications, Inc. | Spell-check for a keyboard system with automatic correction |
US9176598B2 (en) * | 2007-05-08 | 2015-11-03 | Thinkoptics, Inc. | Free-space multi-dimensional absolute pointer with improved performance |
US20090132939A1 (en) * | 2007-11-19 | 2009-05-21 | International Business Machines Corporation | Method and apparatus for a floating island for user navigation in an interactive environment |
US10019081B2 (en) * | 2009-01-15 | 2018-07-10 | International Business Machines Corporation | Functionality switching in pointer input devices |
IN2013CH00469A (ja) | 2013-01-21 | 2015-07-31 | Keypoint Technologies India Pvt Ltd | |
WO2014111959A2 (en) | 2013-01-21 | 2014-07-24 | Keypoint Technologies India Pvt. Ltd. | Text input system and method |
EP3134018B1 (en) | 2014-04-24 | 2024-05-29 | Medtronic Ardian Luxembourg S.à.r.l. | Neuromodulation catheters having braided shafts and associated systems and methods |
GB2555468B (en) * | 2016-10-31 | 2020-05-27 | Bitplane Ag | Visualization system and method for 3D scenes |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5252951A (en) * | 1989-04-28 | 1993-10-12 | International Business Machines Corporation | Graphical user interface with gesture recognition in a multiapplication environment |
US5481278A (en) * | 1992-10-21 | 1996-01-02 | Sharp Kabushiki Kaisha | Information processing apparatus |
US5517578A (en) * | 1993-05-20 | 1996-05-14 | Aha! Software Corporation | Method and apparatus for grouping and manipulating electronic representations of handwriting, printing and drawings |
US5745719A (en) | 1995-01-19 | 1998-04-28 | Falcon; Fernando D. | Commands functions invoked from movement of a control input device |
US5757360A (en) * | 1995-05-03 | 1998-05-26 | Mitsubishi Electric Information Technology Center America, Inc. | Hand held computer control device |
JP3904637B2 (ja) * | 1996-09-13 | 2007-04-11 | 株式会社東芝 | 情報入力装置及び方法 |
JPH10333818A (ja) * | 1997-06-04 | 1998-12-18 | Nec Corp | オンライン文字入力装置 |
JP3863981B2 (ja) * | 1997-11-11 | 2006-12-27 | 日本サイバーサイン株式会社 | 画面表示保護方法 |
US6249606B1 (en) * | 1998-02-19 | 2001-06-19 | Mindmaker, Inc. | Method and system for gesture category recognition and training using a feature vector |
AU2050500A (en) * | 1998-12-11 | 2000-06-26 | Sunhawk Corporation | Method and system for recognizing musical notations using a compass-direction user interface |
JP3469816B2 (ja) * | 1999-05-14 | 2003-11-25 | シャープ株式会社 | ジェスチャー処理装置及びジェスチャー処理方法 |
-
2001
- 2001-03-26 EP EP01107374A patent/EP1246048A1/en not_active Ceased
- 2001-12-14 CA CA002441788A patent/CA2441788C/en not_active Expired - Lifetime
- 2001-12-14 AU AU2002216117A patent/AU2002216117B2/en not_active Expired
- 2001-12-14 WO PCT/EP2001/014827 patent/WO2002077784A1/en active IP Right Grant
- 2001-12-14 JP JP2002575773A patent/JP2004523850A/ja active Pending
-
2002
- 2002-03-20 US US10/101,099 patent/US6847348B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20020135561A1 (en) | 2002-09-26 |
AU2002216117B2 (en) | 2005-09-01 |
CA2441788C (en) | 2006-02-14 |
EP1246048A1 (en) | 2002-10-02 |
US6847348B2 (en) | 2005-01-25 |
CA2441788A1 (en) | 2002-10-03 |
WO2002077784A1 (en) | 2002-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2441788C (en) | Method and computer system for executing functions for objects based on the movement of an input device | |
AU2002216117A1 (en) | Method and computer system for executing functions for objects based on the movement of an input device | |
US6886138B2 (en) | Directing users′ attention to specific icons being approached by an on-screen pointer on user interactive display interfaces | |
JP4295280B2 (ja) | タッチベースユーザ入力装置で2点ユーザ入力を認識する方法および装置 | |
US9285907B2 (en) | Recognizing multiple input point gestures | |
US6816176B2 (en) | Temporarily moving adjacent or overlapping icons away from specific icons being approached by an on-screen pointer on user interactive display interfaces | |
USRE47676E1 (en) | Method and apparatus for controlling a display of data on a display screen | |
RU2501068C2 (ru) | Интерпретация неоднозначных вводов на сенсорном экране | |
JP4800060B2 (ja) | グラフィカルユーザインタフェースを操作する方法及びグラフィカルユーザインタフェース装置 | |
US6462760B1 (en) | User interfaces, methods, and computer program products that can conserve space on a computer display screen by associating an icon with a plurality of operations | |
CN102681664B (zh) | 电子装置、信息处理方法、程序和电子装置*** | |
US20100095234A1 (en) | Multi-touch motion simulation using a non-touch screen computer input device | |
US9395906B2 (en) | Graphic user interface device and method of displaying graphic objects | |
US20060288314A1 (en) | Facilitating cursor interaction with display objects | |
KR20190039521A (ko) | 호버를 사용한 디바이스 조작 | |
US20060061550A1 (en) | Display size emulation system | |
CN101438225A (zh) | 多重触摸使用、姿势及实现 | |
EP2175350A1 (en) | Multi-touch motion simulation using a non-touch screen computer input device | |
JP2000267808A (ja) | タッチパネル入力装置と表示装置とを連携させた入力方法 | |
US6664990B1 (en) | Computer display pointer with alternate hot spots | |
JP3508546B2 (ja) | 画面操作システムおよび画面操作方法 | |
US20020163507A1 (en) | Touch panel display aiding interface | |
GB2485221A (en) | Selection method in dependence on a line traced between contact points | |
WO2020146145A1 (en) | Techniques for multi-finger typing in mixed-reality | |
JPH0922330A (ja) | タッチパネルの入力方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061025 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061031 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070125 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070313 |