微動に基づいてユーザを識別するための方法およびデバイス
本発明によるシステムおよび方法は、手の微動を入力として使用するハンドヘルドデバイス、例えば、自由空間ポインティングデバイスを提供することにより、以上、およびその他の必要性に応える。ハンドヘルドデバイス内の1つまたは複数のセンサが、ユーザの手の微動を検出し、検出された微動に基づいてユーザを識別する。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
本出願は、参照により開示が本明細書に組み込まれている、「Freespace Pointing Device」という名称の2004年4月30日に出願した米国特許仮出願第60/566,444号に関連し、第60/566,444号の優先権を主張する。また、本出願は、参照により開示が本明細書に組み込まれている、「Free Space Pointing Devices and Methods」という名称の2004年9月23日に出願した米国特許仮出願第60/612,571号にも関連し、第60/612,571号の優先権も主張する。また、本出願は、すべて同時に出願し、すべて参照により本明細書に組み込まれている、「Methods and Devices for Removing Unintentional Movement in Free Space Pointing Devices」、「Free Space Pointing Devices with Tilt Compensation and Improved Usability」、「Free Space Pointing Devices and Methods」という名称の米国特許出願第11/119,987号、第11/119,719号、および第11/119,663号にも関連する。
【0002】
本発明は、ユーザがデバイスを把持していることに関連する微動に基づき、デバイス、例えば、ハンドヘルドデバイスのユーザを識別するための技術およびデバイスを説明する。本発明の一部の例示的な実施形態によれば、ハンドヘルドデバイスは、自由空間ポインティングデバイスであることが可能である。
【背景技術】
【0003】
情報通信に関連する技術は、ここ数十年の間に急速に進化している。テレビ、セルラー電話機、インターネット、およびオプションの通信技術(いくつかだけを挙げると)が一緒になってもたらす利用可能な情報、およびエンターテイメントオプションの洪水に、消費者は見舞われている。テレビを例にとると、この30年間に、ケーブルテレビサービス、衛星テレビサービス、従量料金制の映画およびビデオオンデマンドが導入されている。1960年代のテレビ視聴者は、おそらく4つ、または5つの放送TVチャネルを通常、受信することができたのに対して、今日のTV視聴者は、数百チャネル、数千チャネル、また、場合により、数百万チャネルのショーおよび情報から選択する機会を有する。ホテルなどで現在、主に使用されているビデオオンデマンド技術は、数千の映画タイトルからのホームエンターテイメント選択の可能性を提供する。
【0004】
エンドユーザにそれほど多くの情報およびコンテンツを提供する技術能力は、機会とともに課題も、システム設計者およびサービスプロバイダにもたらす。1つの課題は、エンドユーザが、より少ない選択肢ではなく、より多くの選択肢を有することを通常、選好する一方で、この選好は、選択プロセスが迅速であるとともに簡単であることの欲求と天秤に掛けられる。残念ながら、エンドユーザがメディアアイテムにアクセスするシステムおよびインタフェースの進展は、迅速でも簡単でもない選択プロセスをもたらしている。テレビ番組の例を再び考慮されたい。テレビの揺籃期には、いずれの番組を観るかを決めることは、選択肢の数が少なかったことに主に起因して、比較的簡単なプロセスであった。人は、例えば、(1)近くのテレビチャネル、(2)それらのチャネルで送信される番組、および(3)日付と時刻の間の対応を示す一連の列と行としてフォーマットされた、印刷された案内を調べた。テレビが、チューナノブを調整することによって所望のチャネルにチューニングが合わせられ、視聴者は、選択された番組を観た。後に、視聴者が、テレビを離れたところからチューニングすることを可能にするリモコンデバイスが導入された。このユーザ‐テレビインタフェースの追加は、視聴者が、いくつかのチャネルで放送されている短いセグメントを敏速に観て、任意の所与の時点でどのような番組が選択可能であるかを素早く知ることができる、「チャネルサーフィン」として知られる現象を生じさせた。
【0005】
チャネルの数、および視聴可能なコンテンツの量が劇的に増加したことにもかかわらず、テレビに関する一般に利用可能なユーザインタフェース、コントロールデバイスオプション、およびフレームワークは、ここ30年間であまり変化していない。印刷された案内が、依然として、番組情報を伝えるための最も普及した機構である。上向き矢印と下向き矢印を有する複数ボタンリモコンが、依然として、最も普及しているチャネル/コンテンツ選択機構である。利用可能なメディアコンテンツの増加に対する、TVユーザインタフェースを設計し、実施する人々の反応は、既存の選択手続きおよびインタフェースオブジェクトの単純明快な拡張であった。このため、印刷された案内における行の数は、より多くのチャネルに対応するように増やされた。リモコンデバイス上のボタンの数は、例えば、図1に示されるとおり、さらなる機能およびコンテンツの取り扱いをサポートするように増やされた。しかし、このアプローチは、視聴者が、利用可能な情報を点検するのに要求される時間と、選択を実施するのに要求されるアクションの複雑さをともに大幅に増大させた。消費者は、消費者が既に、遅すぎ、複雑すぎると見なしているインタフェースの複雑さを増大させる新たなサービスに抵抗を示すので、既存のインタフェースの面倒な性質は、一部のサービス、例えば、ビデオオンデマンドの商業的実施を阻害してきたといえる。
【0006】
帯域幅とコンテンツの増加に加えて、ユーザインタフェースがネックとなる問題は、技術の集約によって悪化させられている。消費者は、いくつかの分離されたコンポーネントよりはむしろ、統合されたシステムを購入するオプションを有することに肯定的に反応している。この傾向の例が、3つの以前は独立していたコンポーネントが、今日では、しばしば、統合されたユニットとして販売される、一体型のテレビ/VCR/DVDである。この傾向は、続く可能性が高く、家庭で現在、見られる、すべてではないにしても、ほとんどの通信デバイスが、統合されたユニットとして、例えば、テレビ/VCR/DVD/インターネットアクセス/ラジオ/ステレオユニットとして一緒にひとまとめにされるという最終結果がもたらされる可能性がある。別々のコンポーネントを購入しつづける人々でさえ、それらの別々のコンポーネントのシームレスな制御、および相互動作を所望する可能性が高い。この向上した集約には、ユーザインタフェースがより複雑になる可能性が伴う。例えば、いわゆる「汎用」リモートユニットが、例えば、TVリモートユニットとVCRリモートユニットの機能を組み合わせるように導入された際、それらの汎用リモートユニット上のボタンの数は、TVリモートユニット上、またはVCRリモートユニット上で個々に存在するボタンの数より、通常、多かった。この増えたボタン数および機能により、TVまたはVCRの最も単純な諸態様以外は何であれ、リモート上の厳密に正しいボタンを探し求めることなしに、制御することが非常に困難になる。多くの場合、それらの汎用リモートは、一部のTVに固有である多くのレベルの制御または機能にアクセスする十分なボタンを提供しない。それらのケースでは、元のデバイスリモートユニットが、依然として、必要とされ、集約の複雑さから生じるユーザインタフェース問題に起因して、複数のリモートを扱う元の煩わしさは、そのままである。一部のリモートユニットは、エキスパートコマンドでプログラミングされることが可能な「ソフト」ボタンを追加することにより、この問題に対処している。それらのソフトボタンは、ときとして、それらのボタンのアクションを示す、付随するLCDディスプレイを有する。それらのリモートユニットも、TVから目を離してリモコンに目を向けることなしに使用するのが困難であるという欠点を有する。それらのリモートユニットのさらに別の欠点は、ボタンの数を減らそうとして複数のモードを使用することである。それらの「モード付き」汎用リモートユニットでは、TV、DVDプレーヤ、ケーブルセットトップボックス、VCR、その他のいずれとリモートが通信するかを選択する特別なボタンが存在する。このことは、誤ったデバイスにコマンドを送信すること、リモートが正しいモードになっていることを確かめるためにユーザがリモートを見ることを余儀なくすることを含め、多くの操作性問題を生じさせ、複数のデバイスの統合を簡単にすることを全くもたらさない。それらの汎用リモートデバイスの最も進んだものは、複数のデバイスに対するコマンドシーケンスを、ユーザがリモートにプログラミングするのを可能にすることにより、ある程度の統合をもたらす。これは、あまりにも難しい作業であるため、多くのユーザは、ユーザの汎用リモートユニットをプログラミングするのにプロのインストール技術者を雇う。
【0007】
また、エンドユーザとメディアシステムの間のスクリーンインタフェースを近代化するいくつかの試みも行われてきた。しかし、それらの試みは、いくつか欠点があるなかで、とりわけ、メディアアイテムの大きい集まりと、メディアアイテムの小さい集まりの間で用意にスケーリングを行うことができないという欠点を通常、抱えている。例えば、アイテムのリストに依拠するインタフェースは、メディアアイテムの小さい集まりの場合には、うまく機能するが、メディアアイテムの大きい集まりの場合は、ブラウズするのが面倒である。階層型ナビゲーション(例えば、ツリー構造)に依拠するインタフェースは、メディアアイテムの大きい集まりの場合、リストインタフェースよりも迅速に目を通すことできる可能性があるが、メディアアイテムの小さい集まりに直ちに適用可能ではない。加えて、ユーザは、ツリー構造において3つ以上のレイヤをユーザが通らなければならない選択プロセスには、関心を失う傾向がある。以上のケースのすべてに関して、現在のリモートユニットは、リストまたは階層を移動するのにアップボタンおよびダウンボタンをユーザが繰り返し押し下げることを余儀なくすることにより、以上の選択プロセッサをさらに面倒にしている。ページアップおよびページダウンのような選択スキップコントロールが利用可能な場合、ユーザは、通常、リモートを見て、それらの特別なボタンを見つけるか、またはそれらのボタンが存在していることすら知るのに、訓練されなければならない。したがって、ユーザとメディアシステムの間のコントロールインタフェースおよびスクリーンインタフェースを単純化するとともに、選択プロセスをスピードアップする一方で、ユーザへの多数のメディアアイテム、および新たなサービスの供給を円滑にすることにより、サービスプロバイダが、エンドユーザ機器に利用可能な帯域幅の増加を活用することを同時に可能にする、編成フレームワーク、編成技術、および編成システムが、参照により開示が本明細書に組み込まれている、「A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items」という名称の2004年1月30日に出願した、米国特許出願第10/768,432号で提案されている。
【0008】
本明細書の特別な関心対象は、そのようなフレームワーク、ならびにその他のアプリケーションおよびシステムと対話するのに使用可能なリモートデバイスである。前段で組み込まれた出願で述べられるとおり、例えば、トラックボール、「マウス」タイプのポインティングデバイス、ライトペン、その他を含め、様々な異なるタイプのリモートデバイスが、そのようなフレームワークとともに使用されることが可能である。しかし、そのようなフレームワーク(および他のアプリケーション)とともに使用されることが可能な別のカテゴリのリモートデバイスは、自由空間ポインティングデバイスである。「自由空間ポインティング」という句は、本明細書では、入力デバイスが、例えば、ディスプレイスクリーンの前方の空中で、3(またはそれより多くの)次元で動く能力、およびユーザインタフェースが、それらの動きを、直接ユーザインタフェースコマンドに、例えば、ディスプレイスクリーン上のカーソルの動きに変換する、対応する能力を指す。自由空間ポインティングデバイス間のデータの転送は、無線で、または自由空間ポインティングデバイスを別のデバイスに接続する配線を介して実行されることが可能である。このため、「自由空間ポインティング」は例えば、表面、例えば、デスクトップ表面またはマウスパッドを代理表面として使用して、その表面から、マウスの相対的動きが、コンピュータディスプレイスクリーン上のカーソルの動きに変換される、従来のコンピュータマウスポインティング技術とは異なる。自由空間ポインティングデバイスの実施例は、米国特許第5,440,326号で見ることができる。
【0009】
第'326号特許は、とりわけ、コンピュータのディスプレイ上のカーソルの位置を制御するためのポインティングデバイスとして使用されるように適合された垂直ジャイロスコープを説明している。ジャイロスコープのコアにおけるモータが、ハンドヘルドコントローラデバイスからの2対の直交するジンバルによって吊り下げられ、振子デバイスによってスピン軸を公称で垂直に配向されている。電気光学シャフト角エンコーダが、ユーザによってハンドヘルドコントローラデバイスが操作されると、デバイスの向きを感知し、結果の電気出力が、コンピュータディスプレイのスクリーン上のカーソルの動きを制御するのにコンピュータが使用できるフォーマットに変換される。
【0010】
ユーザが、自由空間ポインティングデバイス、または任意の支えなしで立っているデバイス(セル電話機、PDAなどの)を把持すると、不随意の手の動き(微動)が、ハンドヘルドデバイスの対応する動きをもたらす。本発明によれば、そのような動きが、ハンドヘルドデバイス内の1つまたは複数のセンサによって検出されて、様々なファンクション、例えば、デバイスを把持する人の識別への入力として使用される。
【特許文献1】米国特許仮出願第60/566,444号
【特許文献2】米国特許仮出願第60/612,571号
【特許文献3】米国特許出願第11/119,987号
【特許文献4】米国特許出願第11/119,719号
【特許文献5】米国特許出願第11/119,663号
【特許文献6】米国特許出願第10/768,432号
【特許文献7】米国特許第5,440,326号
【非特許文献1】J.Jakubowski、K.Kwiatos、A.Chwaleba、S.Osowski、「Higher Order Statistics and Neural Network For Tremor Recognition」、IEEE Transactions on Biomedical Engineering、vol.49、no.2、152〜159頁、IEEE、2002年2月
【非特許文献2】P.Navarrete、J.Ruiz-del Solar、「Eigenspace-Based Recognition of Faces: Comparisons and a New Approach」、Image Analysis and Processing、2001年
【非特許文献3】C.Liu、H.Wechsler、「Enhanced Fisher Linear Discriminant Models for Face Recognition」という題名の論文、Proc.14th International Conference on Pattern Recognition、Qeensland Australia、August、17〜20頁、1998年
【発明の開示】
【発明が解決しようとする課題】
【0011】
本発明によるシステムおよび方法は、手の微動を入力として使用するハンドヘルドデバイス、例えば、自由空間ポインティングデバイスを提供することにより、以上、およびその他の必要性に応える。ハンドヘルドデバイス内の1つまたは複数のセンサが、ユーザの手の微動を検出し、検出された微動に基づいてユーザを識別する。
【課題を解決するための手段】
【0012】
本発明の例示的な実施形態によれば、ハンドヘルドポインティングデバイスは、第1の軸を中心とするポインティングデバイスの回転を測定して、その回転に関連する第1の回転出力を生成するための第1の回転センサと、第2の軸を中心とするポインティングデバイスの回転を測定して、その回転に関連する第2の回転出力を生成するための第2の回転センサと、ポインティングデバイスの加速度を測定して、その加速度に関連する加速度出力を出力するための加速度計と、第1の回転出力および第2の回転出力、および加速度出力を受け取るため、および(a)ユーザが、意図的な動きなしにポインティングデバイスを把持している間に、第1の回転出力および第2の回転出力、および加速度出力の少なくとも1つから導出された訓練データを処理することにより、ユーザにそれぞれが関連する複数の手の微動のクラスを訓練期間中に確立し、(b)現在の第1の回転出力、現在の第2の回転出力、および現在の加速度出力の少なくとも1つから導出されたデータを、訓練期間中に確立された複数の手の微動のクラスと比較することにより、訓練期間の後、ポインティングデバイスの現在のユーザの身元を判定するための処理ユニットとを含む。
【0013】
本発明の別の例示的な実施形態によれば、ハンドヘルドデバイスのユーザを識別するための方法は、前記ハンドヘルドデバイスを把持しているユーザに関連する手の微動を検出するステップと、検出された手の微動に基づいてユーザを識別するステップとを含む。
【0014】
本発明のさらに別の例示的な実施形態によれば、ハンドヘルドデバイスは、ハンドヘルドデバイスの動きに関連するデータを生成することができる少なくとも1つのモーションセンサと、動きデータに基づいて手の微動のデータを検出するため、および手の微動のデータに基づいてユーザを識別するための処理ユニットとを含む。
【0015】
添付の図面は、本発明の例示的な諸実施形態を示す。
【発明を実施するための最良の形態】
【0016】
本発明の以下の詳細な説明は、添付の図面を参照する。異なる図面における同一の符号は、同一または同様の要素を識別する。また、以下の詳細な説明は、本発明を限定しない。代わりに、本発明の範囲は、添付の特許請求の範囲によって定義される。
【0017】
以下の説明のいくらかの文脈を提供するため、本発明が実施されることが可能な例示的な集約されたメディアシステム200をまず、図2に関連して説明する。しかし、本発明は、そのタイプのメディアシステムにおける実施に限定されず、より多い、またはより少ないコンポーネントがシステムに含まれることも可能であることが、当業者には理解されよう。システム200では、入出力(I/O)バス210が、メディアシステム200内のシステムコンポーネントを一緒に接続している。I/Oバス210は、メディアシステムコンポーネント間で信号を転送するための、いくつかの異なる機構および技術のいずれかを表す。例えば、I/Oバス210には、オーディオ信号を転送する適切な数の独立したオーディオ「パッチ」ケーブル、ビデオ信号を転送する同軸ケーブル、制御信号を転送する2線シリアル回線または無線周波数トランシーバ、その他のタイプの信号を転送する光ファイバまたは任意の他のルーティング機構が含まれることが可能である。
【0018】
この例示的な実施形態では、メディアシステム200は、I/Oバス210に結合されたテレビ/モニタ212、ビデオカセットレコーダ(VCR)214、デジタルビデオディスク(DVD)レコーダ/再生デバイス216、オーディオ/ビデオチューナ218、およびコンパクトディスクプレーヤ220を含む。VCR214、DVD216、およびコンパクトディスクプレーヤ220は、単一のディスク、または単一のカセットデバイスであることが可能であり、あるいは代替的に、複数のディスク、または複数のカセットデバイスであってもよい。VCR214、DVD216、およびコンパクトディスクプレーヤ220は、独立したユニットであっても、一緒に一体化されてもよい。さらに、メディアシステム200は、マイク/スピーカシステム222、ビデオカメラ224、および無線I/O制御デバイス226を含む。本発明の例示的な実施形態によれば、無線I/O制御デバイス226は、以下に説明する例示的な諸実施形態の1つによる自由空間デバイスである。無線I/O制御デバイス226は、例えば、IRまたはRFの送信機またはトランシーバを使用してエンターテイメントシステム200と通信することができる。代替として、I/O制御デバイスは、配線を介してエンターテイメントシステム200に接続されることも可能である。
【0019】
また、エンターテイメントシステム200は、システムコントローラ228も含む。本発明の1つの例示的な実施形態によれば、システムコントローラ228は、複数のエンターテイメントシステムデータソースから利用可能なエンターテイメントシステムデータを格納して、表示し、システムコンポーネントのそれぞれに関連する多種多様な機能を制御するように動作する。図2に示されるとおり、システムコントローラ228は、I/Oバス210を介して、必要に応じて、システムコンポーネントのそれぞれに直接に、または間接的に結合される。1つの例示的な実施形態では、I/Oバス210に加えて、またはI/Oバス210の代わりに、システムコントローラ228は、IR信号またはRF信号を介してシステムコンポーネントと通信することができる無線通信送信機(またはトランシーバ)を備えて構成される。制御媒体にかかわらず、システムコントローラ228は、以下に説明するグラフィカルユーザインタフェースを介してメディアシステム200のメディアコンポーネントを制御するように構成される。
【0020】
図2にさらに示されるとおり、メディアシステム200は、様々なメディアソースおよびサービスプロバイダからメディアアイテムを受信するように構成されることが可能である。この例示的な実施形態では、メディアシステム200は、以下のソースのいずれか、またはすべてからメディア入力を受信し、オプションとして、以下のソースのいずれか、またはすべてに情報を送信する。すなわち、ケーブルブロードキャスト230、衛星ブロードキャスト232(例えば、サテライトディッシュを介する)、ブロードキャストテレビネットワーク234の超短波(VHF)または極超短波(UHF)の無線周波数通信(例えば、アンテナを介する)、電話網236、およびケーブルモデム238(またはインターネットコンテンツの別のソース)である。図2に関連して示され、説明されるメディアコンポーネントおよびメディアソースは、単に例示的であり、メディアシステム200は、この両方をより少なく、またはより多く含むことも可能であることが当業者には理解されよう。例えば、システムに対する他のタイプの入力には、AM/FMラジオおよび衛星ラジオが含まれる。
【0021】
以上の例示的なエンターテイメントシステム、およびこのシステムに関連するフレームワークに関するさらなる詳細は、前段で参照により組み込まれている米国特許出願、「A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items」で見ることができる。代替として、本発明によるリモートデバイスは、他のシステム、例えば、例えば、ディスプレイ、プロセッサ、およびメモリシステムを含むコンピュータシステムと一緒に、または他の様々なシステムおよびアプリケーションと一緒に使用されることが可能である。
【0022】
「背景技術」のセクションで述べたとおり、自由空間ポインタとして動作するリモートデバイスが、本明細書の特別な関心対象である。そのようなデバイスは、動き、例えば、ジェスチャを、ユーザインタフェースに対するコマンドに変換することを可能にする。例示的な自由空間ポインティングデバイス400が、図3に示されている。図3では、自由空間ポインティングのユーザの動きが、例えば、自由空間ポインティングデバイス400のx軸姿勢(ロール)モーション、y軸エレベーション(ピッチ)モーション、および/またはz軸方位(ヨー)モーションの組み合わせに関して定義されることが可能である。加えて、本発明の一部の例示的な実施形態は、x軸、y軸、およびz軸に沿った自由空間ポインティングデバイス400の直線の動きを測定して、カーソルの動き、または他のユーザインタフェースコマンドを生成することもできる。図3の例示的な実施形態では、自由空間ポインティングデバイス400は、2つのボタン402および404、ならびにスクロールホイール406を含むが、他の例示的な諸実施形態は、他の物理的構成を含む。本発明の例示的な諸実施形態によれば、自由空間ポインティングデバイス400は、ディスプレイ408の前方でユーザによって把持され、自由空間ポインティングデバイス400の動きが、自由空間ポインティングデバイスによって、例えば、ディスプレイ408上のカーソル410を動かすように、ディスプレイ408上で表示される情報と対話するのに使用可能な出力に変換されるものと予期される。例えば、y軸を中心とする自由空間ポインティングデバイス400の回転が、自由空間ポインティングデバイス400によって感知されて、ディスプレイ408のy2軸に沿ってカーソル410を動かすようにシステムが使用できる出力に変換されることが可能である。同様に、z軸を中心とする自由空間ポインティングデバイス408の回転が、自由空間ポインティングデバイス400によって感知されて、ディスプレイ408のx2軸に沿ってカーソル410を動かすようにシステムが使用できる出力に変換されることが可能である。自由空間ポインティングデバイス400の出力は、カーソルの動き以外(またはそれに加えて)のいくつかの形で、ディスプレイ408と対話するのに使用されることが可能であり、例えば、出力は、カーソルフェージング、音量、またはメディアトランスポート(再生、一時停止、早送り、および巻き戻し)を制御することができることが理解されよう。入力コマンドは、カーソルの動きに加えて、操作、例えば、ディスプレイの特定の領域に対するズームインまたはズームアウトを含むことが可能である。カーソルは、可視であっても、可視でなくてもよい。同様に、自由空間ポインティングデバイス400のx軸を中心として感知される自由空間ポインティングデバイス400の回転が、y軸回転および/またはz軸回転に加えて、またはそれらの回転の代替として使用されて、ユーザインタフェースに入力を与えることも可能である。
【0023】
本発明の1つの例示的な実施形態によれば、2つの回転センサ502および504、ならびに1つの加速度計506が、図4に示されるとおり、自由空間ポインティングデバイス400内のセンサ群として使用されることが可能である。回転センサ502および504は、例えば、アナログデバイシーズによって製造されるADXRS150センサまたはADXRS401センサを使用して実施されることが可能である。他のタイプの回転センサも、回転センサ502および504として使用されることが可能であり、ADXRS150およびADXRS401は、単に例示的な例として使用されていることが当業者には理解されよう。従来のジャイロスコープとは異なり、これらの回転センサは、MEMS技術を使用して、1方向に沿ってだけ共鳴することが可能なようにフレームに取り付けられた共鳴する質量をもたらす。共鳴する質量は、センサが固定された筐体が、センサの感知軸を中心に回転させられると、ずれる。そのずれが、コリオリの加速効果を使用して測定されて、感知軸に沿った回転に関連する角速度が算出されることが可能である。回転センサ502および504が、単一の感知軸を有する(例えば、ADXRS150のように)場合、センサ502および504は、センサ502および504の感知軸が、測定されるべき回転と揃えられるように自由空間ポインティングデバイス400内に装着されることが可能である。本発明のこの例示的な実施形態の場合、このことは、図4に示されるとおり、回転センサ504は、センサ504の感知軸がy軸と平行になるように装着され、回転センサ502は、センサ502の感知軸がz軸と平行になるように装着されることを意味する。しかし、回転センサ502および504の感知軸を、所望される測定軸と平行になるように揃えることは、本発明の例示的な諸実施形態が、軸間のオフセットを補償するための技術も提供するので、要求されないことに留意されたい。
【0024】
本発明による例示的な自由空間ポインティングデバイス400を実施する際に直面する1つの課題は、あまりにも高価ではない一方で、自由空間ポインティングデバイス400の動き、ユーザインタフェースが、自由空間ポインティングデバイスのその特定の動きにどのように反応するかに関するユーザの期待、およびその動きに応答する実際のユーザインタフェースパフォーマンスの間における高い度合いの相互関係をもたらすコンポーネント、例えば、回転センサ502および504を使用することである。例えば、自由空間ポインティングデバイス400が動いていない場合、ユーザは、カーソルがスクリーン上をドリフトすべきではないと期待する可能性が高い。同様に、ユーザが、自由空間ポインティングデバイス400を、純粋にy軸を中心に回転させた場合、ユーザは、ディスプレイ408上のもたらされるカーソルの動きが、有意なx2軸成分は全く含むことを期待しない可能性が高い。本発明の例示的な諸実施形態の以上、およびその他の態様を実現するのに、様々な測定および計算が、ハンドヘルドデバイス400によって実行され、それらの測定および計算は、センサ502、504、および506の1つまたは複数の出力を調整するのに、かつ/またはプロセッサによって入力の一部として使用されて、センサ502、504、および506の出力に基づき、ユーザインタフェースに関する適切な出力が算出される。それらの測定および計算は、広くは、以下の2つのカテゴリに入る要因を補償するのに使用される。すなわち、(1)自由空間ポインティングデバイス400に固有の要因、例えば、デバイス400内で使用される特定のセンサ502、504、および506に関連する誤差、またはデバイス400内にセンサが装着されている仕方に関連する誤差、および(2)自由空間ポインティングデバイス400に固有ではなく、代わりに、ユーザが、自由空間ポインティングデバイス400を使用する仕方、例えば、直線加速度、傾き、および微動に関連する要因である。それらの効果のそれぞれに対処するための例示的な技術を以下に説明する。
【0025】
本発明の例示的な諸実施形態による自由空間ポインティングデバイスの一般的な動作を説明するプロセスモデル600が、図5に示されている。回転センサ502および504、ならびに加速度計506は、周期的に、例えば、毎秒200サンプル、サンプリングされるアナログ信号を生成する。この説明では、それらの入力のセットは、(x,y,z,αy, αz)という表記を使用して示され、x、y、zは、x軸方向、y軸方向、およびz軸方向における自由空間ポインティングデバイスの加速にそれぞれ関連する例示的な3軸加速度計506のサンプリングされた出力値であり、αyは、y軸を中心とする自由空間ポインティングデバイスの回転に関連する回転センサ502からのサンプリングされた出力値であり、αzは、z軸を中心とする自由空間ポインティングデバイス400の回転に関連する回転センサ504からのサンプリングされた出力値である。
【0026】
加速度計506からの出力がもたらされ、加速度計506が、アナログ出力をもたらす場合、その出力は、A/D変換器(図示せず)によってサンプリングされ、デジタル化されて、サンプリングされた加速度計出力602が生成される。サンプリングされた出力値は、変換ファンクション604によって示されるとおり、生の単位から、加速度の単位に、例えば、重力加速度(g)に変換される。加速度較正ブロック606が、変換ファンクション604のために使用される値をもたらす。加速度計出力602のこの較正には、例えば、加速度計506に関連するスケール誤差、オフセット誤差、および軸合わせ不良誤差の1つまたは複数の補償が含まれることが可能である。加速度計データの例示的な補償は、以下の数式を使用して実行されることが可能である。すなわち、
A=S*((M-P).*G(T)) (1)
ただし、Mは、サンプリングされた出力値(x,y,z)から成る3×1列ベクトルであり、Pは、センサオフセットの3×1列ベクトルであり、Sは、スケール補償、軸合わせ不良補償とセンサ回転補償をともに含む3×3行列である。G(T)は、温度の関数である利得係数である。「*」演算子は、行列乗算を表し、「.*」演算子は、要素乗算を表す。例示的な加速度計506は、+/-2gという例示的な最大範囲を有する。センサオフセット、Pは、0gの加速度計測定値の場合のセンサ出力、M指す。スケールは、サンプリングされた単位値とgの間の変換係数を指す。任意の所与の加速度計センサの実際のスケールは、例えば、製造のばらつきに起因して、それらの公称のスケール値からずれる可能性がある。したがって、前述の数式におけるスケール係数は、その偏差に比例する。
【0027】
加速度計506のスケール偏差およびオフセット偏差は、例えば、1gの力を1つの軸に沿って加え、結果、R1を測定することによって測定されることが可能である。次に、1gの力が加えられて、測定値R2がもたらされる。個別の軸スケール、s、および個別の軸オフセット、pは、以下のとおり計算されることが可能である。すなわち、
s=(R1-R2)/2 (2)
p=(R1+R2)/2 (3)
この単純なケースでは、Pは、各軸に関するpの列ベクトルであり、Sは、各軸に関する1/sの対角行列である。
【0028】
しかし、スケールおよびオフセットに加えて、加速度計506によって生成される読み取り値は、交差軸効果を被る可能性もある。交差軸効果には、例えば、加速度計506が自由空間ポインティングデバイス400内に装着された際に、加速度計506の感知軸の1つまたは複数が、慣性基準フレームにおける対応する軸と揃えられていない、合わせ不良の軸、または、例えば、軸は適切に揃えられているものの、純粋にy軸の加速力により、加速度計506のz軸に沿ったセンサ読み取り値がもたらされる可能性がある、加速度計506自体の機械加工に関連する機械的誤差が含まれる。以上の効果の両方とも、やはり、測定され、ファンクション606によって実行される較正に加えられることが可能である。
【0029】
加速度計506は、本発明の例示的な諸実施形態による例示的な自由空間ポインティングデバイスにおいていくつかの目的を果たす。例えば、回転センサ502および504が、前述した例示的なコリオリ効果回転センサを使用して実施される場合、回転センサ502および504の出力は、各回転センサによって経験される直線加速度に基づいて異なる。このため、加速度計506の1つの例示的な使用は、直線加速度の違いによって生じさせられる、回転センサ502および504によって生成される読み取り値の変動を補償することである。これは、変換された加速度計読み取り値に利得行列610を掛けて、その結果から(またはその結果に)、対応するサンプリングされた回転センサデータ612を引くこと(または足すこと)によって達せられることが可能である。例えば、回転センサ502からのサンプリングされた回転データayが、ブロック614で、以下のとおり、直線加速度に関して補償されることが可能である。すなわち、
αy'=αy-C*A (4)
ただし、Cは、単位数/gで与えられる各軸に沿った直線加速度に対する回転センサ感受性の1×3行ベクトルであり、Aは、較正された直線加速度である。同様に、回転センサ504からのサンプリングされた回転データαzに関する直線加速度補償が、ブロック614でもたらされることが可能である。利得行列、Cは、製造上の違いに起因して、回転センサの間で異なる。Cは、多くの回転センサに関する平均値を使用して計算されてもよく、あるいは各回転センサに関してカスタム計算されてもよい。
【0030】
加速度計データと同様に、サンプリングされた回転データ612は、次に、ファンクション616において、サンプリングされた単位値から、角回転の速度に、例えば、ラジアン/秒に関連する値に変換される。また、この変換ステップは、サンプリングされた回転データを、例えば、スケールおよびオフセットに関して、補償するファンクション618によってもたらされる較正を含むことも可能である。αyとαzの両方に関する変換/較正は、例えば、以下の数式を使用して達せられることが可能である。すなわち、
αrad/秒=(α'-offset(T))*scale+dOffset (5)
ただし、α'は、変換/較正される値を指し、offset(T)は、温度に関連するオフセット値を指し、scaleは、サンプリングされた単位値とラジアン/秒の間の変換係数を指し、dOffsetは、動的なオフセット値を指す。数式(5)は、行列式として実施されてもよく、その場合、scaleを除き、すべての変数はベクトルである。行列式の形態では、scaleは、軸合わせ不良および回転オフセット係数を補正する。これらの変数のそれぞれについて、以下により詳細に説明する。
【0031】
オフセット値、offset(T)およびdOffsetは、いくつかの異なる形で算出されることが可能である。自由空間ポインティングデバイス400が、例えば、y軸方向で回転されていない場合、センサ502は、オフセット値を出力するはずである。しかし、そのオフセットは、温度によって非常に影響されている可能性があり、したがって、このオフセット値は、変動する可能性が高い。オフセット温度較正が、工場において実行されることが可能であり、その場合、offset(T)の値は、ハンドヘルドデバイス400に事前にプログラミングされることが可能であり、あるいは代替的に、オフセット温度較正は、デバイスの寿命中に動的に学習されることも可能である。動的オフセット補償を達するのに、温度センサ619からの入力が、回転較正ファンクション618において使用されて、offset(T)の現在の値が計算される。offset(T)パラメータは、センサ読み取り値からオフセットバイアスの大半を取り除く。しかし、0の動きにおいてほぼすべてのカーソルドリフトを無効にすることが、高性能のポインティングデバイスをもたらすのに役立つ可能性がある。したがって、追加の係数、dOffsetが、自由空間ポインティングデバイス400が使用されている間に、動的に計算されることが可能である。静止検出ファンクション608が、ハンドヘルドが静止している可能性が高い場合、およびオフセットが再計算されなければならない場合を判定する。したがって、静止検出ファンクション608を実施するための例示的な技術、および用法を以下に説明する。
【0032】
dOffset計算の例示的な実施は、ローパスフィルタリングされた較正済みのセンサ出力を使用する。静止出力検出ファンクション608は、例えば、ローパスフィルタ出力の平均値の計算をトリガする指示を回転較正ファンクション618に与える。また、静止出力検出ファンクション608は、新たに計算された平均値が、dOffsetの既存の値にいつ繰り込まれるかも制御することができる。多数の異なる技術が、dOffsetの既存の値、および単純平均、ローパスフィルタリング、およびカルマンフィルタリングを含むが、以上には限定されない新たな平均から、dOffsetの新たな値を計算するために使用されることが可能であることが、当業者には認識されよう。さらに、回転センサ502および504のオフセット補償に関する多数の変種が使用されることが可能であることも、当業者には認識されよう。例えば、offset(T)ファンクションは、定数値(例えば、温度で変化しない)を有することが可能であり、2つより多くのオフセット補償値が、使用されることが可能であり、かつ/または単一のオフセット値だけが、オフセット補償のために計算/使用されることが可能である。
【0033】
ブロック616における変換/較正の後、ファンクション620において、回転センサ502および504からの入力は、それらの入力を回転させて、慣性基準フレームに入れるように、すなわち、ユーザが自由空間ポインティングデバイス400を把持している仕方に関連する傾きを補償するように、さらに処理されることが可能である。傾き補正は、本発明による自由空間ポインティングデバイスの使用パターンの違いを補償するように意図されているので、本発明の一部の例示的な諸実施形態の別の重要な態様である。より具体的には、本発明の例示的な諸実施形態による傾き補償は、複数のユーザが、異なるx軸回転位置でポインティングデバイスを手に把持するが、自由空間ポインティングデバイス400内の回転センサ502および504の感知軸は、固定であるという事実を補償することを意図している。ディスプレイ408上のカーソルの並進は、ユーザが自由空間ポインティングデバイス400を握る仕方に実質的に左右されない、例えば、ユーザが自由空間ポインティングデバイス400を把持している向きにかかわらず、ディスプレイ508の水平の次元(x2軸)におおむね対応する形で行き来するように自由空間ポインティングデバイス400を回転させることは、x2軸に沿ったカーソルの並進をもたらすべきであるのに対して、ディスプレイ508の垂直の次元(y2軸)におおむね対応する形で上下するように自由空間ポインティングデバイスを回転させることは、y2軸に沿ったカーソルの並進をもたらすべきであることが望ましい。
【0034】
本発明の例示的な諸実施形態による傾き補償の必要性をよりよく理解するため、図6(a)に示された例を考慮されたい。図6(a)では、ユーザは、0度のx軸回転値を有するものとして定義されることが可能な、例示的な慣性基準フレームにおいて自由空間ポインティングデバイス400を把持している。慣性基準フレームは、単に例として、図6(a)に示された向きに対応することが可能であり、あるいは他の任意の向きとして定義されることが可能である。y軸方向またはz軸方向における自由空間ポインティングデバイス400の回転は、回転センサ502および504によってそれぞれ感知される。例えば、図6(b)に示される、量Δzだけのz軸を中心とした自由空間ポインティングデバイス400の回転は、ディスプレイ408上のx2軸次元における対応するカーソルの並進、Δx2(すなわち、カーソル410の破線バージョンと破線でないバージョンの間の距離)をもたらす。
【0035】
他方、ユーザが、自由空間ポインティングデバイス400を異なる向きで、例えば、慣性基準フレームに対していくらかの量のx軸回転で把持した場合、センサ502および504によってもたらされる情報は、ユーザによって意図されるインタフェースアクションの正確な表現をもたらさない(傾き補償がない)。例えば、図6(c)を参照して、ユーザが、図6(a)に示されるとおり、例示的な慣性基準フレームに対して45度のx軸回転で自由空間ポインティングデバイス400を把持する状況を考慮されたい。ユーザによる同一のz軸回転Δzを想定すると、カーソル410は、図6(d)で示されるとおり、代わりに、x2軸方向とy2軸方向の両方で並進させられる。これは、回転センサ502の感知軸が、現時点で、y軸とz軸の間の向きにされている(ユーザの手の中のデバイスの向きのため)という事実に起因する。同様に、回転センサ504の感知軸もまた、y軸とz軸の間の向きにされている(ただし、異なる象限における)。自由空間ポインティングデバイス400がどのように把持されているかに関してユーザにトランスペアレントなインタフェースを提供するため、本発明の例示的な諸実施形態による傾き補償は、回転センサ502および504から出力された読み取り値を、それらのセンサからの読み取り値を処理して、自由空間ポインティングデバイス400の回転モーションを示す情報にすることの一環として、変換して慣性基準フレームに戻す。
【0036】
本発明の例示的な諸実施形態によれば、図5に戻ると、以上のことは、ファンクション622において、加速度計506から受け取られる入力yおよび入力zを使用して自由空間ポインティングデバイス400の傾きを算出することにより、達せられることが可能である。より具体的には、加速度データは、前述したとおり、変換され、較正された後、LPF624においてローパスフィルタリングされて、平均加速度(重力加速度)値を傾き算出ファンクション622に与えることが可能である。次に、傾きθが、ファンクション622において以下のとおり計算されることが可能である。すなわち、
【0037】
【数1】
【0038】
値θは、0による除算を防止するようにatan2(y,z)として数値的に計算されて、正しい符号を与えることが可能である。次に、ファンクション620が、以下の数式を使用して、変換/較正済みの入力αyおよびαzの回転Rを実行して、
【0039】
【数2】
【0040】
変換/較正済みの入力αyおよびαzを回転させて、傾きθを補償することができる。この例示的な実施形態において説明される傾き補償は、筐体基準フレームからのセンサ読み取り値をユーザの基準フレームに変換するためのより一般的な技術のサブセットであり、それらの技術は、「Free Space Pointing Devices with Tilt Compensation and Improved Usability」という名称の、前段で参照により組み込まれた特許出願でさらに説明されている。
【0041】
較正済みのセンサ読み取り値が、直線加速度に関して補償され、自由空間ポインティングデバイス400の角回転を示す読み取り値になるように処理され、傾きに関して補償されると、ブロック626および628で後処理が実行されることが可能である。例示的な後処理には、人間の微動などの様々な要因の補償が含まれることが可能である。微動は、いくつかの異なる方法を使用して除去されることが可能であるが、微動を除去する1つのやり方は、ヒステリシスを使用することによる。回転ファンクション620によってもたらされた角速度が、角位置をもたらすように組み込まれる。較正された大きさのヒステリシスが、次に、角位置に適用される。ヒステリシスブロックの出力の微分が行われて、角速度が再びもたらされる。結果の出力が、次に、ファンクション628においてスケーリングされて(例えば、サンプリング周期に基づき)、インタフェース内の結果、例えば、ディスプレイ408上のカーソル410の動きを生じさせるのに使用される。
【0042】
本発明による例示的な自由空間ポインティングデバイスのプロセス説明を提供したので、図7は、例示的なハードウェアアーキテクチャを示す。図7では、プロセッサ800が、スクロールホイール802、JTAG804、LED806、スイッチマトリックス808、IR光検出器810、回転センサ812、加速度計814、およびトランシーバ816を含む、自由空間ポインティングデバイスの他の要素と通信する。スクロールホイール802は、ユーザが、スクロールホイール802を時計方向に、または反時計方向に回転させることによってインタフェースに入力を与えることを可能にするオプションの入力コンポーネントである。JTAG804は、プログラミング‐デバッグインタフェースをプロセッサに与える。LED806は、例えば、ボタンが押されると、視覚的フィードバックをユーザに与える。スイッチマトリックス808は、入力、例えば、自由空間ポインティングデバイス400上のボタンが押し下げられた、または解放されたという指示を受け取り、それらの入力は、次に、プロセッサ800に転送される。例示的な自由空間ポインティングデバイスが、他のリモコンからのIRコードを知ることを可能にするオプションのIR光検出器810が、提供されることが可能である。回転センサ812は、例えば、前述したとおり、自由空間ポインティングデバイスのy軸回転およびz軸回転に関する読み取り値をプロセッサ800に与える。加速度計814は、例えば、傾き補償を実行し、直線加速度が、回転センサ812によって生成される回転読み取り値に導入する誤差を補償するように、前述したとおり使用されることが可能な、自由空間ポインティングデバイス400の直線加速度に関する読み取り値をプロセッサ800に与える。トランシーバ816が、自由空間ポインティングデバイス400との間で、例えば、システムコントローラ228に、またはコンピュータに関連するプロセッサに情報を通信するのに使用される。トランシーバ816は、例えば、短距離無線通信のためにBluetooth標準に準拠して動作する無線トランシーバ、または赤外線トランシーバであることが可能である。代替的に、自由空間ポインティングデバイス400は、有線接続を介してシステムと通信することもできる。
【0043】
図4の例示的な実施形態では、自由空間ポインティングデバイス400は、2つの回転センサ502および504、ならびに加速度計506を含む。しかし、本発明の別の実施形態によれば、自由空間ポインティングデバイスは、代替的に、例えば、z軸方向の角速度を測定するための1つだけの回転センサと、加速度計とを含むことも可能である。そのような例示的な実施形態の場合、前述したのと同様の機能が、加速度計を使用して、回転センサによって感知されない軸に沿った角速度を測定することによって提供されることが可能である。例えば、y軸を中心とする回転速度は、加速度計によって生成されたデータを使用し、以下を計算して、計算されることが可能である。すなわち、
【0044】
【数3】
【0045】
加えて、回転センサによって測定されない寄生加速度効果も、除去されなければならない。それらの効果には、実際の直線加速度、回転速度および回転加速度に起因して測定された加速度、および人間の微動に起因する加速度が含まれる。
【0046】
簡単に前述したとおり、静止検出ファンクション608は、自由空間ポインティングデバイス400が、例えば、静止しているか、またはアクティブである(動いている)かを判定するように動作することができる。この分類は、いくつかの異なる仕方で実行されることが可能である。1つの仕方は、本発明の例示的な実施形態によれば、所定のウインドウ、例えば、毎1/4秒にわたって、すべての入力(x,y,z, αy, αz)のサンプリングされた入力データの分散を計算することである。その分散が、次に、閾値と比較されて、自由空間ポインティングデバイスが、静止している、またはアクティブであると分類される。
【0047】
本発明の例示的な諸実施形態による別の静止検出技術には、例えば、入力データに高速フーリエ変換(FFT)を実行することにより、入力を周波数ドメインに変換することがかかわる。次に、そのデータが、例えば、ピーク検出方法を使用して分析されて、自由空間ポインティングデバイス400が静止しているか、またはアクティブであるかが判定されることが可能である。さらに、第3のカテゴリ、具体的には、ユーザが、自由空間ポインティングデバイス400を把持しているが、デバイス400を動かしていないケース(本明細書では、「安定した」状態とも呼ばれる)が、区別されることが可能である。この第3のカテゴリは、自由空間ポインティングデバイス400がユーザによって把持されている場合にユーザの手の微動によって導入される、自由空間ポインティングデバイス400の小さい動きを検出することにより、静止(把持されていない)およびアクティブから区別されることが可能である。また、ピーク検出も、この判定を行うのに、静止検出ファンクション608によって使用されることが可能である。人間の微動周波数の範囲内、例えば、公称で8〜12Hzの範囲内のピークは、通常、およそ20dBだけ、デバイスの雑音フロア(デバイスが静止しており、把持されていない場合に生じる)を超える。
【0048】
以上の例では、周波数ドメインの変動が、特定の周波数範囲内で検出されたが、監視され、自由空間ポインティングデバイス400のステータスを特徴付けるのに使用される実際の周波数範囲は、様々である可能性がある。例えば、公称の微動周波数範囲は、例えば、自由空間ポインティングデバイス400のエルゴノミクスおよび重量に基づき、例えば、8〜12Hzから4〜7Hzに移る可能性がある。
【0049】
本発明の別の例示的な実施形態によれば、静止検出機構608は、状態マシンを含むことが可能である。例示的な状態マシンが、図8に示されている。図8では、ACTIVE状態が、この実施例では、自由空間ポインティングデバイス400が動いており、例えば、ユーザインタフェースに入力を与えるのに使用されている間の既定の状態である。自由空間ポインティングデバイス400は、リセット入力によって示されるデバイスの起動時に、ACTIVE状態に入る。自由空間ポインティングデバイス400は、動くのを止めた場合、INACTIVE状態に入ることが可能である。図8に示される様々な状態遷移が、回転センサ502と回転センサ504のいずれか、または両方から出力されたデータ、加速度計506から出力されたデータ、時間ドメインデータ、周波数ドメインデータ、または以上の任意の組み合わせを含むが、以上には限定されない、いくつかの異なる基準のいずれかによってトリガされることが可能である。状態遷移条件は、「ConditionstateA→stateB」という規約を使用して、本明細書で一般的に示される。例えば、自由空間ポインティングデバイス400は、conditionactive→inactiveが生じると、ACTIVE状態からINACTIVE状態に遷移する。単に例示のため、conditionactive→inactiveは、例示的な自由空間ポインティングデバイス400では、回転センサと加速度計の両方からの平均偏差値および/または標準偏差値が、第1の所定の期間にわたって第1の所定の閾値を下回って低下した場合に生じるものと考慮されたい。ACTIVE状態にある場合、モーションセンサ(例えば、回転センサおよび/または加速度計)から受け取られたデータは、線形フィルタリング、カルマンフィルタリング、カルマン平滑化、状態空間推定、期待値最大化、またはその他のモデルベースの技術などの、1つまたは複数の処理技術を使用して、ユーザによって導入された意図的な動きに関連する第1のデータと、ユーザによって導入された意図的でない動き(微動)に関連する第2のデータに分けられることが可能である。第1のデータは、次に、ハンドヘルドデバイスの意図される動き(例えば、カーソルの動きをサポートする)に関連する出力を生成するようにさらに処理されることが可能であるのに対して、第2のデータは、以下により詳細に説明するとおり、例えば、ユーザ識別のために、微動入力として使用されることが可能である。
【0050】
状態遷移は、解釈されたセンサ出力に基づく、いくつかの異なる条件によって判定されることが可能である。例示的な条件メトリックは、時間ウインドウにわたる解釈された信号の変動、基準値と、時間ウインドウにわたる解釈された信号との間の閾値、基準値と、時間ウインドウにわたるフィルタリング済みの解釈された信号との間の閾値が含まれ、基準値と、開始時からの解釈された信号との間の閾値が、状態遷移を判定するのに使用されることが可能である。以上の条件メトリックのすべて、または任意の組み合わせが、状態遷移をトリガするのに使用されることが可能である。代替的に、他のメトリックも使用されることが可能である。本発明の1つの例示的な実施形態によれば、INACTIVE状態からACTIVE状態への遷移は、(1)時間ウインドウにわたるセンサ出力の平均値が、所定の閾値より大きい場合、または(2)時間ウインドウにわたるセンサ出力の値の変動が、所定の閾値より大きい場合、または(3)センサ値の間の瞬間デルタが、所定の閾値より大きい場合に生じる。
【0051】
INACTIVE状態は、自由空間ポインティングデバイス400が依然、使用されている、例えば、1/10秒のオーダの、短い休止と、安定した条件または静止条件への実際の遷移とを、静止検出機構608が区別することを可能にする。これにより、以下に説明するSTABLE状態中、およびSTATIONARY状態中に実行されるファンクションが、自由空間ポインティングデバイスが使用されている間に、意図せずに実行されることが防止される。自由空間ポインティングデバイス400は、conditionactive→inactiveが生じた場合、例えば、自由空間ポインティングデバイス400が、再び動くことを始めて、回転センサおよび加速度計からの測定された出力が、INACTIVE状態で第2の所定の期間が経過する前に第1の閾値を超えた場合、ACTIVE状態に戻るように遷移する。
【0052】
自由空間ポインティングデバイス400は、第2の所定の期間が経過した後、STABLE状態またはSTATIONARY状態に遷移する。前述したとおり、STABLE状態は、人によって把持されているが、実質的に動いていないという自由空間ポインティングデバイス400の特徴付けを反映する一方で、STATIONARY状態は、人によって把持されていないという自由空間ポインティングデバイスの特徴付けを反映する。このため、本発明による例示的な状態マシンは、手の微動に関連する最小の動きが存在する場合、第2の所定の期間が経過した後に、STABLE状態への遷移を可能にし、さもなければ、STATIONARY状態への遷移を可能にすることができる。
【0053】
STABLE状態およびSTATIONARY状態は、自由空間ポインティングデバイス400が、様々なファンクションを実行することができる時間を定義する。例えば、STABLE状態は、ユーザが、自由空間ポインティングデバイス400を把持しているが、デバイス400を動かしていない時間を反映することを意図しているので、デバイスは、自由空間ポインティングデバイス400がSTABLE状態にある間の、自由空間ポインティングデバイス400の動きを、例えば、回転センサおよび/または加速度計からの出力を、STABLE状態にある最中に格納することにより、記録することができる。それらの格納された測定値は、以下に説明するとおり、特定のユーザまたはユーザらに関連する微動パターンを判定するのに使用されることが可能である。同様に、STATIONARY状態にある間、自由空間ポインティングデバイス400は、前述したとおり、オフセットを補償する際に使用するために、回転センサおよび/または加速度計からの読み取り値を得ることができる。
【0054】
自由空間ポインティングデバイス400が、STABLE状態またはSTATIONARY状態にある間に、動くことを始めた場合、これにより、ACTIVE状態に戻ることがトリガされることが可能である。さもなければ、測定が行われた後、デバイスは、SLEEP状態に遷移することができる。スリープ状態にある間、デバイスは、自由空間ポインティングデバイスの電力消費量が低減され、例えば、回転センサおよび/または加速度計のサンプリングレートも低減されるパワーダウンモードに入ることができる。また、SLEEP状態には、外部コマンドを介して入ることも可能であり、したがって、ユーザ、または別のデバイスが、SLEEP状態に入るよう自由空間ポインティングデバイス400に命令することができる。
【0055】
別のコマンドを受け取ると、または自由空間ポインティングデバイス400が動くことを始めると、デバイスは、SLEEP状態からWAKEUP状態に遷移することができる。INACTIVE状態と同様に、WAKEUP状態は、ACTIVE状態への遷移が妥当であること、例えば、自由空間ポインティングデバイス400が、意図せずに突き動かされていないことをデバイスが確認する機会を提供する。
【0056】
状態遷移のための諸条件は、対称的であっても、異なってもよい。このため、conditionactive→inactiveに関連する閾値は、conditioninactive→activeに関連する閾値と同一である(または異なる)ことが可能である。これにより、本発明による自由空間ポインティングデバイスが、ユーザ入力をより正確にキャプチャすることが可能になる。例えば、状態マシンインプリメンテーションを含む例示的な諸実施形態は、とりわけ、静止条件に入る遷移に関する閾値が、静止条件から出る遷移に関する閾値とは異なることを許す。
【0057】
ある状態に入ること、またはある状態を離れることは、他のデバイスファンクションをトリガするのに使用されることも可能である。例えば、ユーザインタフェースが、任意の状態からACTIVE状態への遷移に基づいて起動されることが可能である。逆に、自由空間ポインティングデバイスおよび/またはユーザインタフェースが、ACTIVEまたはSTABLEからSTATIONARYまたはINACTIVEに自由空間ポインティングデバイスが遷移すると、オフにされる(またはスリープモードに入る)ことも可能である。代替的に、カーソル410が、自由空間ポインティングデバイス400の静止状態からの遷移、または静止状態への遷移に基づき、表示されること、またはスクリーンから除去されることも可能である。
【0058】
前述したとおり、ハンドヘルドデバイスがSTABLE状態にある期間は、例えば、特定のユーザに関連する微動データを記憶するのに使用されることが可能である。通常、各ユーザは、異なる微動パターンを示す。本発明の例示的な諸実施形態によれば、ユーザ微動のその特性を使用して、ユーザ側の他のアクション(例えば、パスワードを入力すること)を全く要求せずに、いずれのユーザが、ハンドヘルドデバイスを現在、把持しているかを識別することができる。例えば、ユーザの微動パターンは、ユーザが、例えば、10秒間、可能な限りしっかりと自由空間ポインティングデバイスを把持するように要求される初期手続き中に、ハンドヘルドまたはシステムによって記憶されることが可能である(自由空間ポインティングデバイス400の中に格納されるか、またはシステムに伝送される)。
【0059】
このパターンは、様々なユーザインタフェース機能を実行するユーザの固有の(または準固有の)シグネチャとして使用されることが可能である。例えば、ユーザインタフェースおよび/またはハンドヘルドデバイスは、現在の微動パターンをメモリの中に格納されているパターンと比較することにより、一群のユーザから、例えば、家族から、ユーザを識別することができる。この識別は、その後、例えば、その識別されたユーザに関連する選好設定を取り出すのに使用されることが可能である。例えば、自由空間ポインティングデバイスが、前段で参照により組み込まれた特許出願で説明されるメディアシステムと一緒に使用される場合、システムが、微動パターン比較を介してユーザを認識した後、そのユーザに関連するメディア選択アイテム表示選好が、アクティブにされることが可能である。また、システムセキュリティも、微動認識を使用して実施されることが可能であり、例えば、ユーザが自由空間ポインティングデバイス400を持ち上げた後に実行されるユーザ識別に基づき、システムへのアクセスが、禁止される、または制限されることが可能である。
【0060】
本発明による微動パターン検出、微動パターン分類、および微動パターン格納のためのスキームを実施するのに、いくつかの異なるアプローチがとられることが可能である。1つの例示的な実施形態を、図9〜12に関連して以下に説明する。微動パターンを分類するための全体的な方法が、図9の流れ図に示されている。図9では、ステップ900において、データセットが、複数のユーザから収集される。データセット収集は、ユーザが、所定の期間(例えば、5〜15秒)にわたって意図的な動きを導入せずに、デバイスを把持するよう求められる訓練/初期プロセスの一環であること、またはハンドヘルドデバイスの使用中に「オンザフライ」で実行されることが可能である。さらに、データ収集は、ハンドヘルドデバイスを所定の方向で把持している間に実行されることが可能である。図10(a)〜図10(d)に示される、いくつかの単に例示的な周波数スペクトルデータが、4つの異なる向きで自由空間ポインティングデバイス400を把持する特定のユーザに関して収集された。
【0061】
図9に戻ると、収集されたデータは、次に、ハンドヘルドデバイス400の異なるユーザにそれぞれが関連付けられたクラスを識別するために処理されることが可能である。例えば、ステップ902で、1つまたは複数の特徴セットが、収集されたデータの各セットから、分類プロセスにおいて使用するために抽出されることが可能である。ステップ902で使用するために選択された特定の1つまたは複数の特徴セットが、微動データに関する良好なクラス区別をもたらすように選択され、例えば、分類プールの中で区別されるべきユーザの数、ステップ900で収集されるべき訓練データの量およびタイプ、デバイス特性、例えば、図8に関連して前述した状態情報、および関連するベイズユーザ情報(例えば、時間帯)を含む、微動プロセスを介してユーザ識別に関連付けられる実施パラメータに依存して、異なることが可能である。ステップ902で使用されることが可能な特徴セットの例示的なリストを、以下にテーブル1として提供する。
【0062】
【表1】
【0063】
以上の特徴セット、および対応する試験のいくつかに関する情報は、参照により開示が本明細書に組み込まれている、J.Jakubowski、K.Kwiatos、A.Chwaleba、S.Osowskiによる論文、「Higher Order Statistics and Neural Network For Tremor Recognition」、IEEE Transactions on Biomedical Engineering、vol.49、no.2、152〜159頁、IEEE、2002年2月で見ることができる。以下により詳細に説明する、本発明の1つの単に例示的な実施形態によれば、収集されたデータのパワースペクトル密度(PSD)からの低周波数スペクトルが、ステップ902において、特徴セットとして使用された。前段でリストアップしたドメイン、変換、その他に加え、特徴セットは、微動検出/識別が使用されるべきハンドヘルドデバイス内で利用可能なセンサの数およびタイプに基づいて異なることも可能である。例えば、前述の例示的な諸実施形態で説明したハンドヘルドの、自由空間ポインティングデバイス400では、微動データは、回転センサ、加速度計のいずれか、または両方、あるいは回転センサと加速度計の任意の組み合わせから収集されることが可能である。
【0064】
収集されたデータから特徴セットを抽出した後、ステップ904で、特徴セットは、縮小されることが可能である。より具体的には、ステップ904で、特徴セットは、クラス(ユーザら)を区別する目的の特徴セットを最もよく表す特徴セットにまで縮小されることが可能である。例えば、ユーザ微動データのDC値が、縮小された特徴セットから除外されることが可能である一方で、ユーザ微動データの9Hz値は、縮小された特徴セットの中に含められることが可能である。というのは、この9Hz値は、異なるユーザの手の微動を区別する際に、より役に立つと見込まれるからである。縮小された特徴セットは、例えば、主成分分析(PCA)アルゴリズムを使用して判定されるMost Expressive Feature(MEF)セットであることが可能である。PCAアルゴリズムは、特徴セットの特異値分解を使用して、特徴ベクトルを最もよく表現する(例えば、最小平均二乗誤差(MMSE)の点で)基底ベクトルの適切なセットを自動的に求める。PCA技術を適用するための例は、参照により開示が本明細書に組み込まれている、P.NavarreteおよびJ.Ruiz-del Solar著、「Eigenspace-Based Recognition of Faces: Comparisons and a New Approach」、Image Analysis and Processing、2001年で見ることができる。
【0065】
次に、縮小された特徴セットは、ステップ908で、クラスタを識別するのに使用されることが可能であり、この識別は、監督された学習、すなわち、いずれの個人ユーザが、いずれのデータセットに寄与したかについてのアプリオリの知識に基づいてプロセスが作用する学習を使用して、または監督されていない学習、すなわち、プロセスが、アプリオリの情報を全く有さない学習を使用して実行されることが可能である。例えば、K平均クラスタ化およびRBFニューラルネット分類を含め、様々な技術が、本発明の例示的な諸実施形態に従って、微動データに関連するクラスタを判定するのに適用されることが可能である。クラスタが識別されると、ステップ910で、現在のセンサ出力に基づき、新たな特徴ベクトルが、一部のクラスタの範囲内にあるか、または一部のクラスタの範囲外にあるかを区別するのに、すなわち、ハンドヘルドデバイス400を現在、把持しているユーザを識別するのに、識別されたクラスタに関連する推定された統計(例えば、平均および/または共分散)が、使用されることが可能である。学習方法は、初期ユーザ/クラスタインスタンス化の後、センサ動作中にクラスタ中心を純化することにより、センサ状態情報(例えば、図8に関連して前述した)の使用を介して強化されることが可能である。このようにして、最大量の利用可能なデータを使用してクラスタが純化されて(監督された形で)、さらなる監督されていない学習がサポートされる。
【0066】
検出された手の微動に基づいてユーザを識別するための前述した例示的な諸技術を試験するのに、他の4名のユーザに関連するデータセット(図10(a)〜図10(d)に示されたデータに加えて)が、おおむね図9の流れ図に関連して前述した形で、収集され、分析されて、手の微動の分析を使用して、異なるユーザらを区別する/識別することができることが証明された。データセットの2つは、ハンドヘルドデバイスを把持している同一の人から収集されたのに対して、他の3つのデータセットは、ハンドヘルドデバイスを把持している異なる人々から収集された。この試験では、データは、ステップ900で、5つのデータセットのそれぞれに関して、回転センサ812の両方から収集された。データセットのそれぞれが、ゼロ平均および単位分散を得るように処理された。この例示的な試験に関して、ステップ902で、PSD推定(例えば、ピーク周波数)からの低周波数スペクトルが、特徴セット抽出のために使用され、データ収集時間にわたって平均された。より具体的には、256ポイントFFTが、0〜30Hzの周波数範囲内のN=2048ポイントにわたって75%の重なりで平均された。抽出された特徴セットは、PCAアルゴリズムを使用して、38×20行列から20×20行列にまで縮小され、アルゴリズムは、抽出された特徴セットに関連する一部の固有ベクトルが、他の固有ベクトルほど表現力がなく、破棄されることが可能であると正しく認識した。図11は、この実施例では、ステップ904の一環として生成される固有値を示す。図11で、線1100は、特徴セット2(回転センサ504、z軸回転から収集されたデータ)に関連する固有値を示し、線1102は、特徴セット1(回転センサ502、y軸回転から収集されたデータ)に関連する固有値を示す。
【0067】
この試験ケースでは、クラスタ化するステップは、いずれのユーザがいずれのデータセットを生成したかについてのアプリオリの知識(監督された学習)に基づいて実行された。実際のインプリメンテーションでは、自動化されたクラスタ化技術、例えば、前述した諸技術の1つが、ステップ906で使用される。この単に例示的な試験の場合、クラスタは、回転センサ502と回転センサ504から受け取られたデータに関して別々に識別されて、各データセットに関連する2つのクラス重心が定義された。次に、データセットの中の各ベクトルと2つのクラス重心との間の距離(この実施例では、ユークリッド距離)の合計が、計算された。このプロセスの結果が、図12に示されている。図12では、x軸は、縮小されたデータセットのベクトルを表し、y軸は、距離を表し、垂直の線は、距離を異なるクラス(ユーザ)中心に区分化する。各区分内で、関連するクラスのベクトル‐重心距離は、その他のクラスのベクトル‐重心距離よりも大幅に低く、良好なクラス分離、およびユーザがハンドヘルドデバイスに生じさせる手の微動に基づいてユーザを区別/識別する能力を示すことを見て取ることができる。例えば、特徴セットなどの一部の特定の選択が、例示される試験を実行するために行われたが、それらの選択は、本明細書で述べたとおり、単に例示的である。
【0068】
本発明の例示的な諸実施形態によるいくつかの変形形態が、使用されることが可能である。例えば、クラスタが、ステップ908で識別されると、各クラスタの判別特徴を強調するために、クラス判別ステップが実行されることが可能である。クラス判別式は、セット内で最小グループ化をもたらし、セット間で最大距離をもたらす変換行列をデータに適用するように作用する。全体的な共分散を記述する行列、および複数のクラスタの各クラスタの共分散の合計を記述する別の行列を所与として、線形判別式のタスクは、クラス間の距離を最大化することと、クラス内散乱を最小化することを同時に行う線形変換を導き出すことである。パターン認識の一般的な分野において、いくつかの判別式、例えば、フィッシャ線形判別式(FLD)が知られているが、本明細書で説明されるとおり、手の微動に基づいてユーザを識別するという特定の問題にすべてが適している可能性は低い。前段の実施例で使用された1つの特定の判別式は、EFM-1判別式として知られており、参照により開示が本明細書に組み込まれている、C.LiuおよびH.Wechsler著、「Enhanced Fisher Linear Discriminant Models for Face Recognition」という題名の論文、Proc.14th International Conference on Pattern Recognition、Qeensland Australia、August、17〜20頁、1998年で説明されている。
【0069】
さらに、前述の試験は、本発明の前述した例示的な諸実施形態によるハンドヘルドポインティングデバイスを使用して実行されたが、ユーザの微動ベースの識別は、そのように限定されない。実際、微動ベースの識別は、微動データが生成されることが可能な任意のタイプのモーションセンサまたはモーションセンサ群(ジャイロスコープを含む)を有する、他の任意のタイプの自由空間ポインティングデバイスにおいて使用されることが可能である。さらに、本発明による微動ベースの識別は、ポインティングデバイスに限定さることもなく、1つまたは複数のモーションセンサを組み込んだ、またはハンドヘルドデバイスに関連する手の微動を測定するための他の何らかの機構を有する任意のハンドヘルドデバイス、例えば、セル電話機、PDAなどにおいて使用されることも可能である。訓練期間を使用して、例えば、ステップ900〜908が実行されることが可能であり、その後、ハンドヘルドデバイスは、現在のユーザの手の微動に関連するデータを単に収集し、そのデータを、あらかじめ確立されたユーザクラスと比較して、現在のユーザを識別することができる。次に、その識別情報が、実施例を前述した、いくつかの異なる応用例において使用されることが可能である。
【0070】
例えば、ユーザの身元(微動ベースの認識、または別の識別技術によって認識された)を使用して、そのユーザによって行われたジェスチャが解釈されて、ユーザインタフェースに、例えば、参照により前段で組み込まれた特許出願のユーザインタフェースにコマンドがシグナルされることが可能である。例えば、時間にわたる動きのパターンが、特定のインタフェースコマンドに関連付けられるジェスチャベースのコマンドシステムにおいて、異なるユーザらが、ハンドヘルドの時間にわたる、いくらか異なる動きパターンを使用して、同一のインタフェースコマンドを開始することができる(異なる筆跡スタイルを有する異なる人々と同様に)。ユーザ識別を可能にする能力は、次に、異なるジェスチャパターンにマップされ、例えば、ハンドヘルドの中、またはシステムの中に格納されて、システム全体が、時間にわたる動きの各パターンを、ユーザによって意図されるコマンドジェスチャとして正しく識別するようになることが可能である。
【0071】
前述した例示的な諸実施形態は、すべての点で、本発明を制限するのではなく、例示することを意図している。このため、本発明は、当業者によって本明細書に含まれる説明から導き出されることが可能な、詳細な実施の多くの変形が可能である。例えば、以上の例示的な諸実施形態は、とりわけ、デバイスの動きを検出する慣性センサの使用を説明したが、前述した信号処理に関連して、慣性センサの代わりに、または慣性センサに加えて、他のタイプのセンサ(例えば、超音波、磁気、または光学)が使用されることも可能である。すべてのそのような変形形態および変更形態が、添付の特許請求の範囲によって定義される、本発明の範囲および趣旨に含まれるものと考えられる。本出願の説明において使用されるいずれの要素、動作、または命令も、特に明記しない限り、本発明に不可欠である、または必須であると解釈されてはならない。また、本明細書で使用する冠詞「a」は、1つまたは複数のアイテムを含むことを意図している。
【図面の簡単な説明】
【0072】
【図1】エンターテイメントシステムのための従来のリモコンユニットを示す図である。
【図2】本発明の例示的な諸実施形態が実施されることが可能な、例示的なメディアシステムを示す図である。
【図3】本発明の例示的な実施形態による自由空間ポインティングデバイスを示す図である。
【図4】2つの回転センサと、1つの加速度計とを含む図4の自由空間ポインティングデバイスを示す破断図である。
【図5】本発明の例示的な実施形態による自由空間ポインティングデバイスに関連するデータの処理を示すブロック図である。
【図6a】傾きの効果を示す図である。
【図6b】傾きの効果を示す図である。
【図6c】傾きの効果を示す図である。
【図6d】傾きの効果を示す図である。
【図7】本発明の例示的な実施形態による自由空間ポインティングデバイスのハードウェアアーキテクチャを示す図である。
【図8】本発明の例示的な実施形態による静止検出機構を示す状態図である。
【図9】本発明の例示的な実施形態による、ハンドヘルドデバイスの検出された手の微動に基づいてユーザを識別する方法を示す流れ図である。
【図10a】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図10b】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図10c】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図10d】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図11】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための方法に関連する固有値をプロットするグラフである。
【図12】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法に関連するクラス分離結果を示すグラフである。
【符号の説明】
【0073】
400 ポインティングデバイス
402、404 ボタン
406、802 スクロールホイール
408 ディスプレイ
410 カーソル
502、504、506、810、812、814 センサ
800 プロセッサ
804 JTAG
806 LED
808 スイッチマトリックス
816 トランシーバ
【技術分野】
【0001】
関連出願
本出願は、参照により開示が本明細書に組み込まれている、「Freespace Pointing Device」という名称の2004年4月30日に出願した米国特許仮出願第60/566,444号に関連し、第60/566,444号の優先権を主張する。また、本出願は、参照により開示が本明細書に組み込まれている、「Free Space Pointing Devices and Methods」という名称の2004年9月23日に出願した米国特許仮出願第60/612,571号にも関連し、第60/612,571号の優先権も主張する。また、本出願は、すべて同時に出願し、すべて参照により本明細書に組み込まれている、「Methods and Devices for Removing Unintentional Movement in Free Space Pointing Devices」、「Free Space Pointing Devices with Tilt Compensation and Improved Usability」、「Free Space Pointing Devices and Methods」という名称の米国特許出願第11/119,987号、第11/119,719号、および第11/119,663号にも関連する。
【0002】
本発明は、ユーザがデバイスを把持していることに関連する微動に基づき、デバイス、例えば、ハンドヘルドデバイスのユーザを識別するための技術およびデバイスを説明する。本発明の一部の例示的な実施形態によれば、ハンドヘルドデバイスは、自由空間ポインティングデバイスであることが可能である。
【背景技術】
【0003】
情報通信に関連する技術は、ここ数十年の間に急速に進化している。テレビ、セルラー電話機、インターネット、およびオプションの通信技術(いくつかだけを挙げると)が一緒になってもたらす利用可能な情報、およびエンターテイメントオプションの洪水に、消費者は見舞われている。テレビを例にとると、この30年間に、ケーブルテレビサービス、衛星テレビサービス、従量料金制の映画およびビデオオンデマンドが導入されている。1960年代のテレビ視聴者は、おそらく4つ、または5つの放送TVチャネルを通常、受信することができたのに対して、今日のTV視聴者は、数百チャネル、数千チャネル、また、場合により、数百万チャネルのショーおよび情報から選択する機会を有する。ホテルなどで現在、主に使用されているビデオオンデマンド技術は、数千の映画タイトルからのホームエンターテイメント選択の可能性を提供する。
【0004】
エンドユーザにそれほど多くの情報およびコンテンツを提供する技術能力は、機会とともに課題も、システム設計者およびサービスプロバイダにもたらす。1つの課題は、エンドユーザが、より少ない選択肢ではなく、より多くの選択肢を有することを通常、選好する一方で、この選好は、選択プロセスが迅速であるとともに簡単であることの欲求と天秤に掛けられる。残念ながら、エンドユーザがメディアアイテムにアクセスするシステムおよびインタフェースの進展は、迅速でも簡単でもない選択プロセスをもたらしている。テレビ番組の例を再び考慮されたい。テレビの揺籃期には、いずれの番組を観るかを決めることは、選択肢の数が少なかったことに主に起因して、比較的簡単なプロセスであった。人は、例えば、(1)近くのテレビチャネル、(2)それらのチャネルで送信される番組、および(3)日付と時刻の間の対応を示す一連の列と行としてフォーマットされた、印刷された案内を調べた。テレビが、チューナノブを調整することによって所望のチャネルにチューニングが合わせられ、視聴者は、選択された番組を観た。後に、視聴者が、テレビを離れたところからチューニングすることを可能にするリモコンデバイスが導入された。このユーザ‐テレビインタフェースの追加は、視聴者が、いくつかのチャネルで放送されている短いセグメントを敏速に観て、任意の所与の時点でどのような番組が選択可能であるかを素早く知ることができる、「チャネルサーフィン」として知られる現象を生じさせた。
【0005】
チャネルの数、および視聴可能なコンテンツの量が劇的に増加したことにもかかわらず、テレビに関する一般に利用可能なユーザインタフェース、コントロールデバイスオプション、およびフレームワークは、ここ30年間であまり変化していない。印刷された案内が、依然として、番組情報を伝えるための最も普及した機構である。上向き矢印と下向き矢印を有する複数ボタンリモコンが、依然として、最も普及しているチャネル/コンテンツ選択機構である。利用可能なメディアコンテンツの増加に対する、TVユーザインタフェースを設計し、実施する人々の反応は、既存の選択手続きおよびインタフェースオブジェクトの単純明快な拡張であった。このため、印刷された案内における行の数は、より多くのチャネルに対応するように増やされた。リモコンデバイス上のボタンの数は、例えば、図1に示されるとおり、さらなる機能およびコンテンツの取り扱いをサポートするように増やされた。しかし、このアプローチは、視聴者が、利用可能な情報を点検するのに要求される時間と、選択を実施するのに要求されるアクションの複雑さをともに大幅に増大させた。消費者は、消費者が既に、遅すぎ、複雑すぎると見なしているインタフェースの複雑さを増大させる新たなサービスに抵抗を示すので、既存のインタフェースの面倒な性質は、一部のサービス、例えば、ビデオオンデマンドの商業的実施を阻害してきたといえる。
【0006】
帯域幅とコンテンツの増加に加えて、ユーザインタフェースがネックとなる問題は、技術の集約によって悪化させられている。消費者は、いくつかの分離されたコンポーネントよりはむしろ、統合されたシステムを購入するオプションを有することに肯定的に反応している。この傾向の例が、3つの以前は独立していたコンポーネントが、今日では、しばしば、統合されたユニットとして販売される、一体型のテレビ/VCR/DVDである。この傾向は、続く可能性が高く、家庭で現在、見られる、すべてではないにしても、ほとんどの通信デバイスが、統合されたユニットとして、例えば、テレビ/VCR/DVD/インターネットアクセス/ラジオ/ステレオユニットとして一緒にひとまとめにされるという最終結果がもたらされる可能性がある。別々のコンポーネントを購入しつづける人々でさえ、それらの別々のコンポーネントのシームレスな制御、および相互動作を所望する可能性が高い。この向上した集約には、ユーザインタフェースがより複雑になる可能性が伴う。例えば、いわゆる「汎用」リモートユニットが、例えば、TVリモートユニットとVCRリモートユニットの機能を組み合わせるように導入された際、それらの汎用リモートユニット上のボタンの数は、TVリモートユニット上、またはVCRリモートユニット上で個々に存在するボタンの数より、通常、多かった。この増えたボタン数および機能により、TVまたはVCRの最も単純な諸態様以外は何であれ、リモート上の厳密に正しいボタンを探し求めることなしに、制御することが非常に困難になる。多くの場合、それらの汎用リモートは、一部のTVに固有である多くのレベルの制御または機能にアクセスする十分なボタンを提供しない。それらのケースでは、元のデバイスリモートユニットが、依然として、必要とされ、集約の複雑さから生じるユーザインタフェース問題に起因して、複数のリモートを扱う元の煩わしさは、そのままである。一部のリモートユニットは、エキスパートコマンドでプログラミングされることが可能な「ソフト」ボタンを追加することにより、この問題に対処している。それらのソフトボタンは、ときとして、それらのボタンのアクションを示す、付随するLCDディスプレイを有する。それらのリモートユニットも、TVから目を離してリモコンに目を向けることなしに使用するのが困難であるという欠点を有する。それらのリモートユニットのさらに別の欠点は、ボタンの数を減らそうとして複数のモードを使用することである。それらの「モード付き」汎用リモートユニットでは、TV、DVDプレーヤ、ケーブルセットトップボックス、VCR、その他のいずれとリモートが通信するかを選択する特別なボタンが存在する。このことは、誤ったデバイスにコマンドを送信すること、リモートが正しいモードになっていることを確かめるためにユーザがリモートを見ることを余儀なくすることを含め、多くの操作性問題を生じさせ、複数のデバイスの統合を簡単にすることを全くもたらさない。それらの汎用リモートデバイスの最も進んだものは、複数のデバイスに対するコマンドシーケンスを、ユーザがリモートにプログラミングするのを可能にすることにより、ある程度の統合をもたらす。これは、あまりにも難しい作業であるため、多くのユーザは、ユーザの汎用リモートユニットをプログラミングするのにプロのインストール技術者を雇う。
【0007】
また、エンドユーザとメディアシステムの間のスクリーンインタフェースを近代化するいくつかの試みも行われてきた。しかし、それらの試みは、いくつか欠点があるなかで、とりわけ、メディアアイテムの大きい集まりと、メディアアイテムの小さい集まりの間で用意にスケーリングを行うことができないという欠点を通常、抱えている。例えば、アイテムのリストに依拠するインタフェースは、メディアアイテムの小さい集まりの場合には、うまく機能するが、メディアアイテムの大きい集まりの場合は、ブラウズするのが面倒である。階層型ナビゲーション(例えば、ツリー構造)に依拠するインタフェースは、メディアアイテムの大きい集まりの場合、リストインタフェースよりも迅速に目を通すことできる可能性があるが、メディアアイテムの小さい集まりに直ちに適用可能ではない。加えて、ユーザは、ツリー構造において3つ以上のレイヤをユーザが通らなければならない選択プロセスには、関心を失う傾向がある。以上のケースのすべてに関して、現在のリモートユニットは、リストまたは階層を移動するのにアップボタンおよびダウンボタンをユーザが繰り返し押し下げることを余儀なくすることにより、以上の選択プロセッサをさらに面倒にしている。ページアップおよびページダウンのような選択スキップコントロールが利用可能な場合、ユーザは、通常、リモートを見て、それらの特別なボタンを見つけるか、またはそれらのボタンが存在していることすら知るのに、訓練されなければならない。したがって、ユーザとメディアシステムの間のコントロールインタフェースおよびスクリーンインタフェースを単純化するとともに、選択プロセスをスピードアップする一方で、ユーザへの多数のメディアアイテム、および新たなサービスの供給を円滑にすることにより、サービスプロバイダが、エンドユーザ機器に利用可能な帯域幅の増加を活用することを同時に可能にする、編成フレームワーク、編成技術、および編成システムが、参照により開示が本明細書に組み込まれている、「A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items」という名称の2004年1月30日に出願した、米国特許出願第10/768,432号で提案されている。
【0008】
本明細書の特別な関心対象は、そのようなフレームワーク、ならびにその他のアプリケーションおよびシステムと対話するのに使用可能なリモートデバイスである。前段で組み込まれた出願で述べられるとおり、例えば、トラックボール、「マウス」タイプのポインティングデバイス、ライトペン、その他を含め、様々な異なるタイプのリモートデバイスが、そのようなフレームワークとともに使用されることが可能である。しかし、そのようなフレームワーク(および他のアプリケーション)とともに使用されることが可能な別のカテゴリのリモートデバイスは、自由空間ポインティングデバイスである。「自由空間ポインティング」という句は、本明細書では、入力デバイスが、例えば、ディスプレイスクリーンの前方の空中で、3(またはそれより多くの)次元で動く能力、およびユーザインタフェースが、それらの動きを、直接ユーザインタフェースコマンドに、例えば、ディスプレイスクリーン上のカーソルの動きに変換する、対応する能力を指す。自由空間ポインティングデバイス間のデータの転送は、無線で、または自由空間ポインティングデバイスを別のデバイスに接続する配線を介して実行されることが可能である。このため、「自由空間ポインティング」は例えば、表面、例えば、デスクトップ表面またはマウスパッドを代理表面として使用して、その表面から、マウスの相対的動きが、コンピュータディスプレイスクリーン上のカーソルの動きに変換される、従来のコンピュータマウスポインティング技術とは異なる。自由空間ポインティングデバイスの実施例は、米国特許第5,440,326号で見ることができる。
【0009】
第'326号特許は、とりわけ、コンピュータのディスプレイ上のカーソルの位置を制御するためのポインティングデバイスとして使用されるように適合された垂直ジャイロスコープを説明している。ジャイロスコープのコアにおけるモータが、ハンドヘルドコントローラデバイスからの2対の直交するジンバルによって吊り下げられ、振子デバイスによってスピン軸を公称で垂直に配向されている。電気光学シャフト角エンコーダが、ユーザによってハンドヘルドコントローラデバイスが操作されると、デバイスの向きを感知し、結果の電気出力が、コンピュータディスプレイのスクリーン上のカーソルの動きを制御するのにコンピュータが使用できるフォーマットに変換される。
【0010】
ユーザが、自由空間ポインティングデバイス、または任意の支えなしで立っているデバイス(セル電話機、PDAなどの)を把持すると、不随意の手の動き(微動)が、ハンドヘルドデバイスの対応する動きをもたらす。本発明によれば、そのような動きが、ハンドヘルドデバイス内の1つまたは複数のセンサによって検出されて、様々なファンクション、例えば、デバイスを把持する人の識別への入力として使用される。
【特許文献1】米国特許仮出願第60/566,444号
【特許文献2】米国特許仮出願第60/612,571号
【特許文献3】米国特許出願第11/119,987号
【特許文献4】米国特許出願第11/119,719号
【特許文献5】米国特許出願第11/119,663号
【特許文献6】米国特許出願第10/768,432号
【特許文献7】米国特許第5,440,326号
【非特許文献1】J.Jakubowski、K.Kwiatos、A.Chwaleba、S.Osowski、「Higher Order Statistics and Neural Network For Tremor Recognition」、IEEE Transactions on Biomedical Engineering、vol.49、no.2、152〜159頁、IEEE、2002年2月
【非特許文献2】P.Navarrete、J.Ruiz-del Solar、「Eigenspace-Based Recognition of Faces: Comparisons and a New Approach」、Image Analysis and Processing、2001年
【非特許文献3】C.Liu、H.Wechsler、「Enhanced Fisher Linear Discriminant Models for Face Recognition」という題名の論文、Proc.14th International Conference on Pattern Recognition、Qeensland Australia、August、17〜20頁、1998年
【発明の開示】
【発明が解決しようとする課題】
【0011】
本発明によるシステムおよび方法は、手の微動を入力として使用するハンドヘルドデバイス、例えば、自由空間ポインティングデバイスを提供することにより、以上、およびその他の必要性に応える。ハンドヘルドデバイス内の1つまたは複数のセンサが、ユーザの手の微動を検出し、検出された微動に基づいてユーザを識別する。
【課題を解決するための手段】
【0012】
本発明の例示的な実施形態によれば、ハンドヘルドポインティングデバイスは、第1の軸を中心とするポインティングデバイスの回転を測定して、その回転に関連する第1の回転出力を生成するための第1の回転センサと、第2の軸を中心とするポインティングデバイスの回転を測定して、その回転に関連する第2の回転出力を生成するための第2の回転センサと、ポインティングデバイスの加速度を測定して、その加速度に関連する加速度出力を出力するための加速度計と、第1の回転出力および第2の回転出力、および加速度出力を受け取るため、および(a)ユーザが、意図的な動きなしにポインティングデバイスを把持している間に、第1の回転出力および第2の回転出力、および加速度出力の少なくとも1つから導出された訓練データを処理することにより、ユーザにそれぞれが関連する複数の手の微動のクラスを訓練期間中に確立し、(b)現在の第1の回転出力、現在の第2の回転出力、および現在の加速度出力の少なくとも1つから導出されたデータを、訓練期間中に確立された複数の手の微動のクラスと比較することにより、訓練期間の後、ポインティングデバイスの現在のユーザの身元を判定するための処理ユニットとを含む。
【0013】
本発明の別の例示的な実施形態によれば、ハンドヘルドデバイスのユーザを識別するための方法は、前記ハンドヘルドデバイスを把持しているユーザに関連する手の微動を検出するステップと、検出された手の微動に基づいてユーザを識別するステップとを含む。
【0014】
本発明のさらに別の例示的な実施形態によれば、ハンドヘルドデバイスは、ハンドヘルドデバイスの動きに関連するデータを生成することができる少なくとも1つのモーションセンサと、動きデータに基づいて手の微動のデータを検出するため、および手の微動のデータに基づいてユーザを識別するための処理ユニットとを含む。
【0015】
添付の図面は、本発明の例示的な諸実施形態を示す。
【発明を実施するための最良の形態】
【0016】
本発明の以下の詳細な説明は、添付の図面を参照する。異なる図面における同一の符号は、同一または同様の要素を識別する。また、以下の詳細な説明は、本発明を限定しない。代わりに、本発明の範囲は、添付の特許請求の範囲によって定義される。
【0017】
以下の説明のいくらかの文脈を提供するため、本発明が実施されることが可能な例示的な集約されたメディアシステム200をまず、図2に関連して説明する。しかし、本発明は、そのタイプのメディアシステムにおける実施に限定されず、より多い、またはより少ないコンポーネントがシステムに含まれることも可能であることが、当業者には理解されよう。システム200では、入出力(I/O)バス210が、メディアシステム200内のシステムコンポーネントを一緒に接続している。I/Oバス210は、メディアシステムコンポーネント間で信号を転送するための、いくつかの異なる機構および技術のいずれかを表す。例えば、I/Oバス210には、オーディオ信号を転送する適切な数の独立したオーディオ「パッチ」ケーブル、ビデオ信号を転送する同軸ケーブル、制御信号を転送する2線シリアル回線または無線周波数トランシーバ、その他のタイプの信号を転送する光ファイバまたは任意の他のルーティング機構が含まれることが可能である。
【0018】
この例示的な実施形態では、メディアシステム200は、I/Oバス210に結合されたテレビ/モニタ212、ビデオカセットレコーダ(VCR)214、デジタルビデオディスク(DVD)レコーダ/再生デバイス216、オーディオ/ビデオチューナ218、およびコンパクトディスクプレーヤ220を含む。VCR214、DVD216、およびコンパクトディスクプレーヤ220は、単一のディスク、または単一のカセットデバイスであることが可能であり、あるいは代替的に、複数のディスク、または複数のカセットデバイスであってもよい。VCR214、DVD216、およびコンパクトディスクプレーヤ220は、独立したユニットであっても、一緒に一体化されてもよい。さらに、メディアシステム200は、マイク/スピーカシステム222、ビデオカメラ224、および無線I/O制御デバイス226を含む。本発明の例示的な実施形態によれば、無線I/O制御デバイス226は、以下に説明する例示的な諸実施形態の1つによる自由空間デバイスである。無線I/O制御デバイス226は、例えば、IRまたはRFの送信機またはトランシーバを使用してエンターテイメントシステム200と通信することができる。代替として、I/O制御デバイスは、配線を介してエンターテイメントシステム200に接続されることも可能である。
【0019】
また、エンターテイメントシステム200は、システムコントローラ228も含む。本発明の1つの例示的な実施形態によれば、システムコントローラ228は、複数のエンターテイメントシステムデータソースから利用可能なエンターテイメントシステムデータを格納して、表示し、システムコンポーネントのそれぞれに関連する多種多様な機能を制御するように動作する。図2に示されるとおり、システムコントローラ228は、I/Oバス210を介して、必要に応じて、システムコンポーネントのそれぞれに直接に、または間接的に結合される。1つの例示的な実施形態では、I/Oバス210に加えて、またはI/Oバス210の代わりに、システムコントローラ228は、IR信号またはRF信号を介してシステムコンポーネントと通信することができる無線通信送信機(またはトランシーバ)を備えて構成される。制御媒体にかかわらず、システムコントローラ228は、以下に説明するグラフィカルユーザインタフェースを介してメディアシステム200のメディアコンポーネントを制御するように構成される。
【0020】
図2にさらに示されるとおり、メディアシステム200は、様々なメディアソースおよびサービスプロバイダからメディアアイテムを受信するように構成されることが可能である。この例示的な実施形態では、メディアシステム200は、以下のソースのいずれか、またはすべてからメディア入力を受信し、オプションとして、以下のソースのいずれか、またはすべてに情報を送信する。すなわち、ケーブルブロードキャスト230、衛星ブロードキャスト232(例えば、サテライトディッシュを介する)、ブロードキャストテレビネットワーク234の超短波(VHF)または極超短波(UHF)の無線周波数通信(例えば、アンテナを介する)、電話網236、およびケーブルモデム238(またはインターネットコンテンツの別のソース)である。図2に関連して示され、説明されるメディアコンポーネントおよびメディアソースは、単に例示的であり、メディアシステム200は、この両方をより少なく、またはより多く含むことも可能であることが当業者には理解されよう。例えば、システムに対する他のタイプの入力には、AM/FMラジオおよび衛星ラジオが含まれる。
【0021】
以上の例示的なエンターテイメントシステム、およびこのシステムに関連するフレームワークに関するさらなる詳細は、前段で参照により組み込まれている米国特許出願、「A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items」で見ることができる。代替として、本発明によるリモートデバイスは、他のシステム、例えば、例えば、ディスプレイ、プロセッサ、およびメモリシステムを含むコンピュータシステムと一緒に、または他の様々なシステムおよびアプリケーションと一緒に使用されることが可能である。
【0022】
「背景技術」のセクションで述べたとおり、自由空間ポインタとして動作するリモートデバイスが、本明細書の特別な関心対象である。そのようなデバイスは、動き、例えば、ジェスチャを、ユーザインタフェースに対するコマンドに変換することを可能にする。例示的な自由空間ポインティングデバイス400が、図3に示されている。図3では、自由空間ポインティングのユーザの動きが、例えば、自由空間ポインティングデバイス400のx軸姿勢(ロール)モーション、y軸エレベーション(ピッチ)モーション、および/またはz軸方位(ヨー)モーションの組み合わせに関して定義されることが可能である。加えて、本発明の一部の例示的な実施形態は、x軸、y軸、およびz軸に沿った自由空間ポインティングデバイス400の直線の動きを測定して、カーソルの動き、または他のユーザインタフェースコマンドを生成することもできる。図3の例示的な実施形態では、自由空間ポインティングデバイス400は、2つのボタン402および404、ならびにスクロールホイール406を含むが、他の例示的な諸実施形態は、他の物理的構成を含む。本発明の例示的な諸実施形態によれば、自由空間ポインティングデバイス400は、ディスプレイ408の前方でユーザによって把持され、自由空間ポインティングデバイス400の動きが、自由空間ポインティングデバイスによって、例えば、ディスプレイ408上のカーソル410を動かすように、ディスプレイ408上で表示される情報と対話するのに使用可能な出力に変換されるものと予期される。例えば、y軸を中心とする自由空間ポインティングデバイス400の回転が、自由空間ポインティングデバイス400によって感知されて、ディスプレイ408のy2軸に沿ってカーソル410を動かすようにシステムが使用できる出力に変換されることが可能である。同様に、z軸を中心とする自由空間ポインティングデバイス408の回転が、自由空間ポインティングデバイス400によって感知されて、ディスプレイ408のx2軸に沿ってカーソル410を動かすようにシステムが使用できる出力に変換されることが可能である。自由空間ポインティングデバイス400の出力は、カーソルの動き以外(またはそれに加えて)のいくつかの形で、ディスプレイ408と対話するのに使用されることが可能であり、例えば、出力は、カーソルフェージング、音量、またはメディアトランスポート(再生、一時停止、早送り、および巻き戻し)を制御することができることが理解されよう。入力コマンドは、カーソルの動きに加えて、操作、例えば、ディスプレイの特定の領域に対するズームインまたはズームアウトを含むことが可能である。カーソルは、可視であっても、可視でなくてもよい。同様に、自由空間ポインティングデバイス400のx軸を中心として感知される自由空間ポインティングデバイス400の回転が、y軸回転および/またはz軸回転に加えて、またはそれらの回転の代替として使用されて、ユーザインタフェースに入力を与えることも可能である。
【0023】
本発明の1つの例示的な実施形態によれば、2つの回転センサ502および504、ならびに1つの加速度計506が、図4に示されるとおり、自由空間ポインティングデバイス400内のセンサ群として使用されることが可能である。回転センサ502および504は、例えば、アナログデバイシーズによって製造されるADXRS150センサまたはADXRS401センサを使用して実施されることが可能である。他のタイプの回転センサも、回転センサ502および504として使用されることが可能であり、ADXRS150およびADXRS401は、単に例示的な例として使用されていることが当業者には理解されよう。従来のジャイロスコープとは異なり、これらの回転センサは、MEMS技術を使用して、1方向に沿ってだけ共鳴することが可能なようにフレームに取り付けられた共鳴する質量をもたらす。共鳴する質量は、センサが固定された筐体が、センサの感知軸を中心に回転させられると、ずれる。そのずれが、コリオリの加速効果を使用して測定されて、感知軸に沿った回転に関連する角速度が算出されることが可能である。回転センサ502および504が、単一の感知軸を有する(例えば、ADXRS150のように)場合、センサ502および504は、センサ502および504の感知軸が、測定されるべき回転と揃えられるように自由空間ポインティングデバイス400内に装着されることが可能である。本発明のこの例示的な実施形態の場合、このことは、図4に示されるとおり、回転センサ504は、センサ504の感知軸がy軸と平行になるように装着され、回転センサ502は、センサ502の感知軸がz軸と平行になるように装着されることを意味する。しかし、回転センサ502および504の感知軸を、所望される測定軸と平行になるように揃えることは、本発明の例示的な諸実施形態が、軸間のオフセットを補償するための技術も提供するので、要求されないことに留意されたい。
【0024】
本発明による例示的な自由空間ポインティングデバイス400を実施する際に直面する1つの課題は、あまりにも高価ではない一方で、自由空間ポインティングデバイス400の動き、ユーザインタフェースが、自由空間ポインティングデバイスのその特定の動きにどのように反応するかに関するユーザの期待、およびその動きに応答する実際のユーザインタフェースパフォーマンスの間における高い度合いの相互関係をもたらすコンポーネント、例えば、回転センサ502および504を使用することである。例えば、自由空間ポインティングデバイス400が動いていない場合、ユーザは、カーソルがスクリーン上をドリフトすべきではないと期待する可能性が高い。同様に、ユーザが、自由空間ポインティングデバイス400を、純粋にy軸を中心に回転させた場合、ユーザは、ディスプレイ408上のもたらされるカーソルの動きが、有意なx2軸成分は全く含むことを期待しない可能性が高い。本発明の例示的な諸実施形態の以上、およびその他の態様を実現するのに、様々な測定および計算が、ハンドヘルドデバイス400によって実行され、それらの測定および計算は、センサ502、504、および506の1つまたは複数の出力を調整するのに、かつ/またはプロセッサによって入力の一部として使用されて、センサ502、504、および506の出力に基づき、ユーザインタフェースに関する適切な出力が算出される。それらの測定および計算は、広くは、以下の2つのカテゴリに入る要因を補償するのに使用される。すなわち、(1)自由空間ポインティングデバイス400に固有の要因、例えば、デバイス400内で使用される特定のセンサ502、504、および506に関連する誤差、またはデバイス400内にセンサが装着されている仕方に関連する誤差、および(2)自由空間ポインティングデバイス400に固有ではなく、代わりに、ユーザが、自由空間ポインティングデバイス400を使用する仕方、例えば、直線加速度、傾き、および微動に関連する要因である。それらの効果のそれぞれに対処するための例示的な技術を以下に説明する。
【0025】
本発明の例示的な諸実施形態による自由空間ポインティングデバイスの一般的な動作を説明するプロセスモデル600が、図5に示されている。回転センサ502および504、ならびに加速度計506は、周期的に、例えば、毎秒200サンプル、サンプリングされるアナログ信号を生成する。この説明では、それらの入力のセットは、(x,y,z,αy, αz)という表記を使用して示され、x、y、zは、x軸方向、y軸方向、およびz軸方向における自由空間ポインティングデバイスの加速にそれぞれ関連する例示的な3軸加速度計506のサンプリングされた出力値であり、αyは、y軸を中心とする自由空間ポインティングデバイスの回転に関連する回転センサ502からのサンプリングされた出力値であり、αzは、z軸を中心とする自由空間ポインティングデバイス400の回転に関連する回転センサ504からのサンプリングされた出力値である。
【0026】
加速度計506からの出力がもたらされ、加速度計506が、アナログ出力をもたらす場合、その出力は、A/D変換器(図示せず)によってサンプリングされ、デジタル化されて、サンプリングされた加速度計出力602が生成される。サンプリングされた出力値は、変換ファンクション604によって示されるとおり、生の単位から、加速度の単位に、例えば、重力加速度(g)に変換される。加速度較正ブロック606が、変換ファンクション604のために使用される値をもたらす。加速度計出力602のこの較正には、例えば、加速度計506に関連するスケール誤差、オフセット誤差、および軸合わせ不良誤差の1つまたは複数の補償が含まれることが可能である。加速度計データの例示的な補償は、以下の数式を使用して実行されることが可能である。すなわち、
A=S*((M-P).*G(T)) (1)
ただし、Mは、サンプリングされた出力値(x,y,z)から成る3×1列ベクトルであり、Pは、センサオフセットの3×1列ベクトルであり、Sは、スケール補償、軸合わせ不良補償とセンサ回転補償をともに含む3×3行列である。G(T)は、温度の関数である利得係数である。「*」演算子は、行列乗算を表し、「.*」演算子は、要素乗算を表す。例示的な加速度計506は、+/-2gという例示的な最大範囲を有する。センサオフセット、Pは、0gの加速度計測定値の場合のセンサ出力、M指す。スケールは、サンプリングされた単位値とgの間の変換係数を指す。任意の所与の加速度計センサの実際のスケールは、例えば、製造のばらつきに起因して、それらの公称のスケール値からずれる可能性がある。したがって、前述の数式におけるスケール係数は、その偏差に比例する。
【0027】
加速度計506のスケール偏差およびオフセット偏差は、例えば、1gの力を1つの軸に沿って加え、結果、R1を測定することによって測定されることが可能である。次に、1gの力が加えられて、測定値R2がもたらされる。個別の軸スケール、s、および個別の軸オフセット、pは、以下のとおり計算されることが可能である。すなわち、
s=(R1-R2)/2 (2)
p=(R1+R2)/2 (3)
この単純なケースでは、Pは、各軸に関するpの列ベクトルであり、Sは、各軸に関する1/sの対角行列である。
【0028】
しかし、スケールおよびオフセットに加えて、加速度計506によって生成される読み取り値は、交差軸効果を被る可能性もある。交差軸効果には、例えば、加速度計506が自由空間ポインティングデバイス400内に装着された際に、加速度計506の感知軸の1つまたは複数が、慣性基準フレームにおける対応する軸と揃えられていない、合わせ不良の軸、または、例えば、軸は適切に揃えられているものの、純粋にy軸の加速力により、加速度計506のz軸に沿ったセンサ読み取り値がもたらされる可能性がある、加速度計506自体の機械加工に関連する機械的誤差が含まれる。以上の効果の両方とも、やはり、測定され、ファンクション606によって実行される較正に加えられることが可能である。
【0029】
加速度計506は、本発明の例示的な諸実施形態による例示的な自由空間ポインティングデバイスにおいていくつかの目的を果たす。例えば、回転センサ502および504が、前述した例示的なコリオリ効果回転センサを使用して実施される場合、回転センサ502および504の出力は、各回転センサによって経験される直線加速度に基づいて異なる。このため、加速度計506の1つの例示的な使用は、直線加速度の違いによって生じさせられる、回転センサ502および504によって生成される読み取り値の変動を補償することである。これは、変換された加速度計読み取り値に利得行列610を掛けて、その結果から(またはその結果に)、対応するサンプリングされた回転センサデータ612を引くこと(または足すこと)によって達せられることが可能である。例えば、回転センサ502からのサンプリングされた回転データayが、ブロック614で、以下のとおり、直線加速度に関して補償されることが可能である。すなわち、
αy'=αy-C*A (4)
ただし、Cは、単位数/gで与えられる各軸に沿った直線加速度に対する回転センサ感受性の1×3行ベクトルであり、Aは、較正された直線加速度である。同様に、回転センサ504からのサンプリングされた回転データαzに関する直線加速度補償が、ブロック614でもたらされることが可能である。利得行列、Cは、製造上の違いに起因して、回転センサの間で異なる。Cは、多くの回転センサに関する平均値を使用して計算されてもよく、あるいは各回転センサに関してカスタム計算されてもよい。
【0030】
加速度計データと同様に、サンプリングされた回転データ612は、次に、ファンクション616において、サンプリングされた単位値から、角回転の速度に、例えば、ラジアン/秒に関連する値に変換される。また、この変換ステップは、サンプリングされた回転データを、例えば、スケールおよびオフセットに関して、補償するファンクション618によってもたらされる較正を含むことも可能である。αyとαzの両方に関する変換/較正は、例えば、以下の数式を使用して達せられることが可能である。すなわち、
αrad/秒=(α'-offset(T))*scale+dOffset (5)
ただし、α'は、変換/較正される値を指し、offset(T)は、温度に関連するオフセット値を指し、scaleは、サンプリングされた単位値とラジアン/秒の間の変換係数を指し、dOffsetは、動的なオフセット値を指す。数式(5)は、行列式として実施されてもよく、その場合、scaleを除き、すべての変数はベクトルである。行列式の形態では、scaleは、軸合わせ不良および回転オフセット係数を補正する。これらの変数のそれぞれについて、以下により詳細に説明する。
【0031】
オフセット値、offset(T)およびdOffsetは、いくつかの異なる形で算出されることが可能である。自由空間ポインティングデバイス400が、例えば、y軸方向で回転されていない場合、センサ502は、オフセット値を出力するはずである。しかし、そのオフセットは、温度によって非常に影響されている可能性があり、したがって、このオフセット値は、変動する可能性が高い。オフセット温度較正が、工場において実行されることが可能であり、その場合、offset(T)の値は、ハンドヘルドデバイス400に事前にプログラミングされることが可能であり、あるいは代替的に、オフセット温度較正は、デバイスの寿命中に動的に学習されることも可能である。動的オフセット補償を達するのに、温度センサ619からの入力が、回転較正ファンクション618において使用されて、offset(T)の現在の値が計算される。offset(T)パラメータは、センサ読み取り値からオフセットバイアスの大半を取り除く。しかし、0の動きにおいてほぼすべてのカーソルドリフトを無効にすることが、高性能のポインティングデバイスをもたらすのに役立つ可能性がある。したがって、追加の係数、dOffsetが、自由空間ポインティングデバイス400が使用されている間に、動的に計算されることが可能である。静止検出ファンクション608が、ハンドヘルドが静止している可能性が高い場合、およびオフセットが再計算されなければならない場合を判定する。したがって、静止検出ファンクション608を実施するための例示的な技術、および用法を以下に説明する。
【0032】
dOffset計算の例示的な実施は、ローパスフィルタリングされた較正済みのセンサ出力を使用する。静止出力検出ファンクション608は、例えば、ローパスフィルタ出力の平均値の計算をトリガする指示を回転較正ファンクション618に与える。また、静止出力検出ファンクション608は、新たに計算された平均値が、dOffsetの既存の値にいつ繰り込まれるかも制御することができる。多数の異なる技術が、dOffsetの既存の値、および単純平均、ローパスフィルタリング、およびカルマンフィルタリングを含むが、以上には限定されない新たな平均から、dOffsetの新たな値を計算するために使用されることが可能であることが、当業者には認識されよう。さらに、回転センサ502および504のオフセット補償に関する多数の変種が使用されることが可能であることも、当業者には認識されよう。例えば、offset(T)ファンクションは、定数値(例えば、温度で変化しない)を有することが可能であり、2つより多くのオフセット補償値が、使用されることが可能であり、かつ/または単一のオフセット値だけが、オフセット補償のために計算/使用されることが可能である。
【0033】
ブロック616における変換/較正の後、ファンクション620において、回転センサ502および504からの入力は、それらの入力を回転させて、慣性基準フレームに入れるように、すなわち、ユーザが自由空間ポインティングデバイス400を把持している仕方に関連する傾きを補償するように、さらに処理されることが可能である。傾き補正は、本発明による自由空間ポインティングデバイスの使用パターンの違いを補償するように意図されているので、本発明の一部の例示的な諸実施形態の別の重要な態様である。より具体的には、本発明の例示的な諸実施形態による傾き補償は、複数のユーザが、異なるx軸回転位置でポインティングデバイスを手に把持するが、自由空間ポインティングデバイス400内の回転センサ502および504の感知軸は、固定であるという事実を補償することを意図している。ディスプレイ408上のカーソルの並進は、ユーザが自由空間ポインティングデバイス400を握る仕方に実質的に左右されない、例えば、ユーザが自由空間ポインティングデバイス400を把持している向きにかかわらず、ディスプレイ508の水平の次元(x2軸)におおむね対応する形で行き来するように自由空間ポインティングデバイス400を回転させることは、x2軸に沿ったカーソルの並進をもたらすべきであるのに対して、ディスプレイ508の垂直の次元(y2軸)におおむね対応する形で上下するように自由空間ポインティングデバイスを回転させることは、y2軸に沿ったカーソルの並進をもたらすべきであることが望ましい。
【0034】
本発明の例示的な諸実施形態による傾き補償の必要性をよりよく理解するため、図6(a)に示された例を考慮されたい。図6(a)では、ユーザは、0度のx軸回転値を有するものとして定義されることが可能な、例示的な慣性基準フレームにおいて自由空間ポインティングデバイス400を把持している。慣性基準フレームは、単に例として、図6(a)に示された向きに対応することが可能であり、あるいは他の任意の向きとして定義されることが可能である。y軸方向またはz軸方向における自由空間ポインティングデバイス400の回転は、回転センサ502および504によってそれぞれ感知される。例えば、図6(b)に示される、量Δzだけのz軸を中心とした自由空間ポインティングデバイス400の回転は、ディスプレイ408上のx2軸次元における対応するカーソルの並進、Δx2(すなわち、カーソル410の破線バージョンと破線でないバージョンの間の距離)をもたらす。
【0035】
他方、ユーザが、自由空間ポインティングデバイス400を異なる向きで、例えば、慣性基準フレームに対していくらかの量のx軸回転で把持した場合、センサ502および504によってもたらされる情報は、ユーザによって意図されるインタフェースアクションの正確な表現をもたらさない(傾き補償がない)。例えば、図6(c)を参照して、ユーザが、図6(a)に示されるとおり、例示的な慣性基準フレームに対して45度のx軸回転で自由空間ポインティングデバイス400を把持する状況を考慮されたい。ユーザによる同一のz軸回転Δzを想定すると、カーソル410は、図6(d)で示されるとおり、代わりに、x2軸方向とy2軸方向の両方で並進させられる。これは、回転センサ502の感知軸が、現時点で、y軸とz軸の間の向きにされている(ユーザの手の中のデバイスの向きのため)という事実に起因する。同様に、回転センサ504の感知軸もまた、y軸とz軸の間の向きにされている(ただし、異なる象限における)。自由空間ポインティングデバイス400がどのように把持されているかに関してユーザにトランスペアレントなインタフェースを提供するため、本発明の例示的な諸実施形態による傾き補償は、回転センサ502および504から出力された読み取り値を、それらのセンサからの読み取り値を処理して、自由空間ポインティングデバイス400の回転モーションを示す情報にすることの一環として、変換して慣性基準フレームに戻す。
【0036】
本発明の例示的な諸実施形態によれば、図5に戻ると、以上のことは、ファンクション622において、加速度計506から受け取られる入力yおよび入力zを使用して自由空間ポインティングデバイス400の傾きを算出することにより、達せられることが可能である。より具体的には、加速度データは、前述したとおり、変換され、較正された後、LPF624においてローパスフィルタリングされて、平均加速度(重力加速度)値を傾き算出ファンクション622に与えることが可能である。次に、傾きθが、ファンクション622において以下のとおり計算されることが可能である。すなわち、
【0037】
【数1】
【0038】
値θは、0による除算を防止するようにatan2(y,z)として数値的に計算されて、正しい符号を与えることが可能である。次に、ファンクション620が、以下の数式を使用して、変換/較正済みの入力αyおよびαzの回転Rを実行して、
【0039】
【数2】
【0040】
変換/較正済みの入力αyおよびαzを回転させて、傾きθを補償することができる。この例示的な実施形態において説明される傾き補償は、筐体基準フレームからのセンサ読み取り値をユーザの基準フレームに変換するためのより一般的な技術のサブセットであり、それらの技術は、「Free Space Pointing Devices with Tilt Compensation and Improved Usability」という名称の、前段で参照により組み込まれた特許出願でさらに説明されている。
【0041】
較正済みのセンサ読み取り値が、直線加速度に関して補償され、自由空間ポインティングデバイス400の角回転を示す読み取り値になるように処理され、傾きに関して補償されると、ブロック626および628で後処理が実行されることが可能である。例示的な後処理には、人間の微動などの様々な要因の補償が含まれることが可能である。微動は、いくつかの異なる方法を使用して除去されることが可能であるが、微動を除去する1つのやり方は、ヒステリシスを使用することによる。回転ファンクション620によってもたらされた角速度が、角位置をもたらすように組み込まれる。較正された大きさのヒステリシスが、次に、角位置に適用される。ヒステリシスブロックの出力の微分が行われて、角速度が再びもたらされる。結果の出力が、次に、ファンクション628においてスケーリングされて(例えば、サンプリング周期に基づき)、インタフェース内の結果、例えば、ディスプレイ408上のカーソル410の動きを生じさせるのに使用される。
【0042】
本発明による例示的な自由空間ポインティングデバイスのプロセス説明を提供したので、図7は、例示的なハードウェアアーキテクチャを示す。図7では、プロセッサ800が、スクロールホイール802、JTAG804、LED806、スイッチマトリックス808、IR光検出器810、回転センサ812、加速度計814、およびトランシーバ816を含む、自由空間ポインティングデバイスの他の要素と通信する。スクロールホイール802は、ユーザが、スクロールホイール802を時計方向に、または反時計方向に回転させることによってインタフェースに入力を与えることを可能にするオプションの入力コンポーネントである。JTAG804は、プログラミング‐デバッグインタフェースをプロセッサに与える。LED806は、例えば、ボタンが押されると、視覚的フィードバックをユーザに与える。スイッチマトリックス808は、入力、例えば、自由空間ポインティングデバイス400上のボタンが押し下げられた、または解放されたという指示を受け取り、それらの入力は、次に、プロセッサ800に転送される。例示的な自由空間ポインティングデバイスが、他のリモコンからのIRコードを知ることを可能にするオプションのIR光検出器810が、提供されることが可能である。回転センサ812は、例えば、前述したとおり、自由空間ポインティングデバイスのy軸回転およびz軸回転に関する読み取り値をプロセッサ800に与える。加速度計814は、例えば、傾き補償を実行し、直線加速度が、回転センサ812によって生成される回転読み取り値に導入する誤差を補償するように、前述したとおり使用されることが可能な、自由空間ポインティングデバイス400の直線加速度に関する読み取り値をプロセッサ800に与える。トランシーバ816が、自由空間ポインティングデバイス400との間で、例えば、システムコントローラ228に、またはコンピュータに関連するプロセッサに情報を通信するのに使用される。トランシーバ816は、例えば、短距離無線通信のためにBluetooth標準に準拠して動作する無線トランシーバ、または赤外線トランシーバであることが可能である。代替的に、自由空間ポインティングデバイス400は、有線接続を介してシステムと通信することもできる。
【0043】
図4の例示的な実施形態では、自由空間ポインティングデバイス400は、2つの回転センサ502および504、ならびに加速度計506を含む。しかし、本発明の別の実施形態によれば、自由空間ポインティングデバイスは、代替的に、例えば、z軸方向の角速度を測定するための1つだけの回転センサと、加速度計とを含むことも可能である。そのような例示的な実施形態の場合、前述したのと同様の機能が、加速度計を使用して、回転センサによって感知されない軸に沿った角速度を測定することによって提供されることが可能である。例えば、y軸を中心とする回転速度は、加速度計によって生成されたデータを使用し、以下を計算して、計算されることが可能である。すなわち、
【0044】
【数3】
【0045】
加えて、回転センサによって測定されない寄生加速度効果も、除去されなければならない。それらの効果には、実際の直線加速度、回転速度および回転加速度に起因して測定された加速度、および人間の微動に起因する加速度が含まれる。
【0046】
簡単に前述したとおり、静止検出ファンクション608は、自由空間ポインティングデバイス400が、例えば、静止しているか、またはアクティブである(動いている)かを判定するように動作することができる。この分類は、いくつかの異なる仕方で実行されることが可能である。1つの仕方は、本発明の例示的な実施形態によれば、所定のウインドウ、例えば、毎1/4秒にわたって、すべての入力(x,y,z, αy, αz)のサンプリングされた入力データの分散を計算することである。その分散が、次に、閾値と比較されて、自由空間ポインティングデバイスが、静止している、またはアクティブであると分類される。
【0047】
本発明の例示的な諸実施形態による別の静止検出技術には、例えば、入力データに高速フーリエ変換(FFT)を実行することにより、入力を周波数ドメインに変換することがかかわる。次に、そのデータが、例えば、ピーク検出方法を使用して分析されて、自由空間ポインティングデバイス400が静止しているか、またはアクティブであるかが判定されることが可能である。さらに、第3のカテゴリ、具体的には、ユーザが、自由空間ポインティングデバイス400を把持しているが、デバイス400を動かしていないケース(本明細書では、「安定した」状態とも呼ばれる)が、区別されることが可能である。この第3のカテゴリは、自由空間ポインティングデバイス400がユーザによって把持されている場合にユーザの手の微動によって導入される、自由空間ポインティングデバイス400の小さい動きを検出することにより、静止(把持されていない)およびアクティブから区別されることが可能である。また、ピーク検出も、この判定を行うのに、静止検出ファンクション608によって使用されることが可能である。人間の微動周波数の範囲内、例えば、公称で8〜12Hzの範囲内のピークは、通常、およそ20dBだけ、デバイスの雑音フロア(デバイスが静止しており、把持されていない場合に生じる)を超える。
【0048】
以上の例では、周波数ドメインの変動が、特定の周波数範囲内で検出されたが、監視され、自由空間ポインティングデバイス400のステータスを特徴付けるのに使用される実際の周波数範囲は、様々である可能性がある。例えば、公称の微動周波数範囲は、例えば、自由空間ポインティングデバイス400のエルゴノミクスおよび重量に基づき、例えば、8〜12Hzから4〜7Hzに移る可能性がある。
【0049】
本発明の別の例示的な実施形態によれば、静止検出機構608は、状態マシンを含むことが可能である。例示的な状態マシンが、図8に示されている。図8では、ACTIVE状態が、この実施例では、自由空間ポインティングデバイス400が動いており、例えば、ユーザインタフェースに入力を与えるのに使用されている間の既定の状態である。自由空間ポインティングデバイス400は、リセット入力によって示されるデバイスの起動時に、ACTIVE状態に入る。自由空間ポインティングデバイス400は、動くのを止めた場合、INACTIVE状態に入ることが可能である。図8に示される様々な状態遷移が、回転センサ502と回転センサ504のいずれか、または両方から出力されたデータ、加速度計506から出力されたデータ、時間ドメインデータ、周波数ドメインデータ、または以上の任意の組み合わせを含むが、以上には限定されない、いくつかの異なる基準のいずれかによってトリガされることが可能である。状態遷移条件は、「ConditionstateA→stateB」という規約を使用して、本明細書で一般的に示される。例えば、自由空間ポインティングデバイス400は、conditionactive→inactiveが生じると、ACTIVE状態からINACTIVE状態に遷移する。単に例示のため、conditionactive→inactiveは、例示的な自由空間ポインティングデバイス400では、回転センサと加速度計の両方からの平均偏差値および/または標準偏差値が、第1の所定の期間にわたって第1の所定の閾値を下回って低下した場合に生じるものと考慮されたい。ACTIVE状態にある場合、モーションセンサ(例えば、回転センサおよび/または加速度計)から受け取られたデータは、線形フィルタリング、カルマンフィルタリング、カルマン平滑化、状態空間推定、期待値最大化、またはその他のモデルベースの技術などの、1つまたは複数の処理技術を使用して、ユーザによって導入された意図的な動きに関連する第1のデータと、ユーザによって導入された意図的でない動き(微動)に関連する第2のデータに分けられることが可能である。第1のデータは、次に、ハンドヘルドデバイスの意図される動き(例えば、カーソルの動きをサポートする)に関連する出力を生成するようにさらに処理されることが可能であるのに対して、第2のデータは、以下により詳細に説明するとおり、例えば、ユーザ識別のために、微動入力として使用されることが可能である。
【0050】
状態遷移は、解釈されたセンサ出力に基づく、いくつかの異なる条件によって判定されることが可能である。例示的な条件メトリックは、時間ウインドウにわたる解釈された信号の変動、基準値と、時間ウインドウにわたる解釈された信号との間の閾値、基準値と、時間ウインドウにわたるフィルタリング済みの解釈された信号との間の閾値が含まれ、基準値と、開始時からの解釈された信号との間の閾値が、状態遷移を判定するのに使用されることが可能である。以上の条件メトリックのすべて、または任意の組み合わせが、状態遷移をトリガするのに使用されることが可能である。代替的に、他のメトリックも使用されることが可能である。本発明の1つの例示的な実施形態によれば、INACTIVE状態からACTIVE状態への遷移は、(1)時間ウインドウにわたるセンサ出力の平均値が、所定の閾値より大きい場合、または(2)時間ウインドウにわたるセンサ出力の値の変動が、所定の閾値より大きい場合、または(3)センサ値の間の瞬間デルタが、所定の閾値より大きい場合に生じる。
【0051】
INACTIVE状態は、自由空間ポインティングデバイス400が依然、使用されている、例えば、1/10秒のオーダの、短い休止と、安定した条件または静止条件への実際の遷移とを、静止検出機構608が区別することを可能にする。これにより、以下に説明するSTABLE状態中、およびSTATIONARY状態中に実行されるファンクションが、自由空間ポインティングデバイスが使用されている間に、意図せずに実行されることが防止される。自由空間ポインティングデバイス400は、conditionactive→inactiveが生じた場合、例えば、自由空間ポインティングデバイス400が、再び動くことを始めて、回転センサおよび加速度計からの測定された出力が、INACTIVE状態で第2の所定の期間が経過する前に第1の閾値を超えた場合、ACTIVE状態に戻るように遷移する。
【0052】
自由空間ポインティングデバイス400は、第2の所定の期間が経過した後、STABLE状態またはSTATIONARY状態に遷移する。前述したとおり、STABLE状態は、人によって把持されているが、実質的に動いていないという自由空間ポインティングデバイス400の特徴付けを反映する一方で、STATIONARY状態は、人によって把持されていないという自由空間ポインティングデバイスの特徴付けを反映する。このため、本発明による例示的な状態マシンは、手の微動に関連する最小の動きが存在する場合、第2の所定の期間が経過した後に、STABLE状態への遷移を可能にし、さもなければ、STATIONARY状態への遷移を可能にすることができる。
【0053】
STABLE状態およびSTATIONARY状態は、自由空間ポインティングデバイス400が、様々なファンクションを実行することができる時間を定義する。例えば、STABLE状態は、ユーザが、自由空間ポインティングデバイス400を把持しているが、デバイス400を動かしていない時間を反映することを意図しているので、デバイスは、自由空間ポインティングデバイス400がSTABLE状態にある間の、自由空間ポインティングデバイス400の動きを、例えば、回転センサおよび/または加速度計からの出力を、STABLE状態にある最中に格納することにより、記録することができる。それらの格納された測定値は、以下に説明するとおり、特定のユーザまたはユーザらに関連する微動パターンを判定するのに使用されることが可能である。同様に、STATIONARY状態にある間、自由空間ポインティングデバイス400は、前述したとおり、オフセットを補償する際に使用するために、回転センサおよび/または加速度計からの読み取り値を得ることができる。
【0054】
自由空間ポインティングデバイス400が、STABLE状態またはSTATIONARY状態にある間に、動くことを始めた場合、これにより、ACTIVE状態に戻ることがトリガされることが可能である。さもなければ、測定が行われた後、デバイスは、SLEEP状態に遷移することができる。スリープ状態にある間、デバイスは、自由空間ポインティングデバイスの電力消費量が低減され、例えば、回転センサおよび/または加速度計のサンプリングレートも低減されるパワーダウンモードに入ることができる。また、SLEEP状態には、外部コマンドを介して入ることも可能であり、したがって、ユーザ、または別のデバイスが、SLEEP状態に入るよう自由空間ポインティングデバイス400に命令することができる。
【0055】
別のコマンドを受け取ると、または自由空間ポインティングデバイス400が動くことを始めると、デバイスは、SLEEP状態からWAKEUP状態に遷移することができる。INACTIVE状態と同様に、WAKEUP状態は、ACTIVE状態への遷移が妥当であること、例えば、自由空間ポインティングデバイス400が、意図せずに突き動かされていないことをデバイスが確認する機会を提供する。
【0056】
状態遷移のための諸条件は、対称的であっても、異なってもよい。このため、conditionactive→inactiveに関連する閾値は、conditioninactive→activeに関連する閾値と同一である(または異なる)ことが可能である。これにより、本発明による自由空間ポインティングデバイスが、ユーザ入力をより正確にキャプチャすることが可能になる。例えば、状態マシンインプリメンテーションを含む例示的な諸実施形態は、とりわけ、静止条件に入る遷移に関する閾値が、静止条件から出る遷移に関する閾値とは異なることを許す。
【0057】
ある状態に入ること、またはある状態を離れることは、他のデバイスファンクションをトリガするのに使用されることも可能である。例えば、ユーザインタフェースが、任意の状態からACTIVE状態への遷移に基づいて起動されることが可能である。逆に、自由空間ポインティングデバイスおよび/またはユーザインタフェースが、ACTIVEまたはSTABLEからSTATIONARYまたはINACTIVEに自由空間ポインティングデバイスが遷移すると、オフにされる(またはスリープモードに入る)ことも可能である。代替的に、カーソル410が、自由空間ポインティングデバイス400の静止状態からの遷移、または静止状態への遷移に基づき、表示されること、またはスクリーンから除去されることも可能である。
【0058】
前述したとおり、ハンドヘルドデバイスがSTABLE状態にある期間は、例えば、特定のユーザに関連する微動データを記憶するのに使用されることが可能である。通常、各ユーザは、異なる微動パターンを示す。本発明の例示的な諸実施形態によれば、ユーザ微動のその特性を使用して、ユーザ側の他のアクション(例えば、パスワードを入力すること)を全く要求せずに、いずれのユーザが、ハンドヘルドデバイスを現在、把持しているかを識別することができる。例えば、ユーザの微動パターンは、ユーザが、例えば、10秒間、可能な限りしっかりと自由空間ポインティングデバイスを把持するように要求される初期手続き中に、ハンドヘルドまたはシステムによって記憶されることが可能である(自由空間ポインティングデバイス400の中に格納されるか、またはシステムに伝送される)。
【0059】
このパターンは、様々なユーザインタフェース機能を実行するユーザの固有の(または準固有の)シグネチャとして使用されることが可能である。例えば、ユーザインタフェースおよび/またはハンドヘルドデバイスは、現在の微動パターンをメモリの中に格納されているパターンと比較することにより、一群のユーザから、例えば、家族から、ユーザを識別することができる。この識別は、その後、例えば、その識別されたユーザに関連する選好設定を取り出すのに使用されることが可能である。例えば、自由空間ポインティングデバイスが、前段で参照により組み込まれた特許出願で説明されるメディアシステムと一緒に使用される場合、システムが、微動パターン比較を介してユーザを認識した後、そのユーザに関連するメディア選択アイテム表示選好が、アクティブにされることが可能である。また、システムセキュリティも、微動認識を使用して実施されることが可能であり、例えば、ユーザが自由空間ポインティングデバイス400を持ち上げた後に実行されるユーザ識別に基づき、システムへのアクセスが、禁止される、または制限されることが可能である。
【0060】
本発明による微動パターン検出、微動パターン分類、および微動パターン格納のためのスキームを実施するのに、いくつかの異なるアプローチがとられることが可能である。1つの例示的な実施形態を、図9〜12に関連して以下に説明する。微動パターンを分類するための全体的な方法が、図9の流れ図に示されている。図9では、ステップ900において、データセットが、複数のユーザから収集される。データセット収集は、ユーザが、所定の期間(例えば、5〜15秒)にわたって意図的な動きを導入せずに、デバイスを把持するよう求められる訓練/初期プロセスの一環であること、またはハンドヘルドデバイスの使用中に「オンザフライ」で実行されることが可能である。さらに、データ収集は、ハンドヘルドデバイスを所定の方向で把持している間に実行されることが可能である。図10(a)〜図10(d)に示される、いくつかの単に例示的な周波数スペクトルデータが、4つの異なる向きで自由空間ポインティングデバイス400を把持する特定のユーザに関して収集された。
【0061】
図9に戻ると、収集されたデータは、次に、ハンドヘルドデバイス400の異なるユーザにそれぞれが関連付けられたクラスを識別するために処理されることが可能である。例えば、ステップ902で、1つまたは複数の特徴セットが、収集されたデータの各セットから、分類プロセスにおいて使用するために抽出されることが可能である。ステップ902で使用するために選択された特定の1つまたは複数の特徴セットが、微動データに関する良好なクラス区別をもたらすように選択され、例えば、分類プールの中で区別されるべきユーザの数、ステップ900で収集されるべき訓練データの量およびタイプ、デバイス特性、例えば、図8に関連して前述した状態情報、および関連するベイズユーザ情報(例えば、時間帯)を含む、微動プロセスを介してユーザ識別に関連付けられる実施パラメータに依存して、異なることが可能である。ステップ902で使用されることが可能な特徴セットの例示的なリストを、以下にテーブル1として提供する。
【0062】
【表1】
【0063】
以上の特徴セット、および対応する試験のいくつかに関する情報は、参照により開示が本明細書に組み込まれている、J.Jakubowski、K.Kwiatos、A.Chwaleba、S.Osowskiによる論文、「Higher Order Statistics and Neural Network For Tremor Recognition」、IEEE Transactions on Biomedical Engineering、vol.49、no.2、152〜159頁、IEEE、2002年2月で見ることができる。以下により詳細に説明する、本発明の1つの単に例示的な実施形態によれば、収集されたデータのパワースペクトル密度(PSD)からの低周波数スペクトルが、ステップ902において、特徴セットとして使用された。前段でリストアップしたドメイン、変換、その他に加え、特徴セットは、微動検出/識別が使用されるべきハンドヘルドデバイス内で利用可能なセンサの数およびタイプに基づいて異なることも可能である。例えば、前述の例示的な諸実施形態で説明したハンドヘルドの、自由空間ポインティングデバイス400では、微動データは、回転センサ、加速度計のいずれか、または両方、あるいは回転センサと加速度計の任意の組み合わせから収集されることが可能である。
【0064】
収集されたデータから特徴セットを抽出した後、ステップ904で、特徴セットは、縮小されることが可能である。より具体的には、ステップ904で、特徴セットは、クラス(ユーザら)を区別する目的の特徴セットを最もよく表す特徴セットにまで縮小されることが可能である。例えば、ユーザ微動データのDC値が、縮小された特徴セットから除外されることが可能である一方で、ユーザ微動データの9Hz値は、縮小された特徴セットの中に含められることが可能である。というのは、この9Hz値は、異なるユーザの手の微動を区別する際に、より役に立つと見込まれるからである。縮小された特徴セットは、例えば、主成分分析(PCA)アルゴリズムを使用して判定されるMost Expressive Feature(MEF)セットであることが可能である。PCAアルゴリズムは、特徴セットの特異値分解を使用して、特徴ベクトルを最もよく表現する(例えば、最小平均二乗誤差(MMSE)の点で)基底ベクトルの適切なセットを自動的に求める。PCA技術を適用するための例は、参照により開示が本明細書に組み込まれている、P.NavarreteおよびJ.Ruiz-del Solar著、「Eigenspace-Based Recognition of Faces: Comparisons and a New Approach」、Image Analysis and Processing、2001年で見ることができる。
【0065】
次に、縮小された特徴セットは、ステップ908で、クラスタを識別するのに使用されることが可能であり、この識別は、監督された学習、すなわち、いずれの個人ユーザが、いずれのデータセットに寄与したかについてのアプリオリの知識に基づいてプロセスが作用する学習を使用して、または監督されていない学習、すなわち、プロセスが、アプリオリの情報を全く有さない学習を使用して実行されることが可能である。例えば、K平均クラスタ化およびRBFニューラルネット分類を含め、様々な技術が、本発明の例示的な諸実施形態に従って、微動データに関連するクラスタを判定するのに適用されることが可能である。クラスタが識別されると、ステップ910で、現在のセンサ出力に基づき、新たな特徴ベクトルが、一部のクラスタの範囲内にあるか、または一部のクラスタの範囲外にあるかを区別するのに、すなわち、ハンドヘルドデバイス400を現在、把持しているユーザを識別するのに、識別されたクラスタに関連する推定された統計(例えば、平均および/または共分散)が、使用されることが可能である。学習方法は、初期ユーザ/クラスタインスタンス化の後、センサ動作中にクラスタ中心を純化することにより、センサ状態情報(例えば、図8に関連して前述した)の使用を介して強化されることが可能である。このようにして、最大量の利用可能なデータを使用してクラスタが純化されて(監督された形で)、さらなる監督されていない学習がサポートされる。
【0066】
検出された手の微動に基づいてユーザを識別するための前述した例示的な諸技術を試験するのに、他の4名のユーザに関連するデータセット(図10(a)〜図10(d)に示されたデータに加えて)が、おおむね図9の流れ図に関連して前述した形で、収集され、分析されて、手の微動の分析を使用して、異なるユーザらを区別する/識別することができることが証明された。データセットの2つは、ハンドヘルドデバイスを把持している同一の人から収集されたのに対して、他の3つのデータセットは、ハンドヘルドデバイスを把持している異なる人々から収集された。この試験では、データは、ステップ900で、5つのデータセットのそれぞれに関して、回転センサ812の両方から収集された。データセットのそれぞれが、ゼロ平均および単位分散を得るように処理された。この例示的な試験に関して、ステップ902で、PSD推定(例えば、ピーク周波数)からの低周波数スペクトルが、特徴セット抽出のために使用され、データ収集時間にわたって平均された。より具体的には、256ポイントFFTが、0〜30Hzの周波数範囲内のN=2048ポイントにわたって75%の重なりで平均された。抽出された特徴セットは、PCAアルゴリズムを使用して、38×20行列から20×20行列にまで縮小され、アルゴリズムは、抽出された特徴セットに関連する一部の固有ベクトルが、他の固有ベクトルほど表現力がなく、破棄されることが可能であると正しく認識した。図11は、この実施例では、ステップ904の一環として生成される固有値を示す。図11で、線1100は、特徴セット2(回転センサ504、z軸回転から収集されたデータ)に関連する固有値を示し、線1102は、特徴セット1(回転センサ502、y軸回転から収集されたデータ)に関連する固有値を示す。
【0067】
この試験ケースでは、クラスタ化するステップは、いずれのユーザがいずれのデータセットを生成したかについてのアプリオリの知識(監督された学習)に基づいて実行された。実際のインプリメンテーションでは、自動化されたクラスタ化技術、例えば、前述した諸技術の1つが、ステップ906で使用される。この単に例示的な試験の場合、クラスタは、回転センサ502と回転センサ504から受け取られたデータに関して別々に識別されて、各データセットに関連する2つのクラス重心が定義された。次に、データセットの中の各ベクトルと2つのクラス重心との間の距離(この実施例では、ユークリッド距離)の合計が、計算された。このプロセスの結果が、図12に示されている。図12では、x軸は、縮小されたデータセットのベクトルを表し、y軸は、距離を表し、垂直の線は、距離を異なるクラス(ユーザ)中心に区分化する。各区分内で、関連するクラスのベクトル‐重心距離は、その他のクラスのベクトル‐重心距離よりも大幅に低く、良好なクラス分離、およびユーザがハンドヘルドデバイスに生じさせる手の微動に基づいてユーザを区別/識別する能力を示すことを見て取ることができる。例えば、特徴セットなどの一部の特定の選択が、例示される試験を実行するために行われたが、それらの選択は、本明細書で述べたとおり、単に例示的である。
【0068】
本発明の例示的な諸実施形態によるいくつかの変形形態が、使用されることが可能である。例えば、クラスタが、ステップ908で識別されると、各クラスタの判別特徴を強調するために、クラス判別ステップが実行されることが可能である。クラス判別式は、セット内で最小グループ化をもたらし、セット間で最大距離をもたらす変換行列をデータに適用するように作用する。全体的な共分散を記述する行列、および複数のクラスタの各クラスタの共分散の合計を記述する別の行列を所与として、線形判別式のタスクは、クラス間の距離を最大化することと、クラス内散乱を最小化することを同時に行う線形変換を導き出すことである。パターン認識の一般的な分野において、いくつかの判別式、例えば、フィッシャ線形判別式(FLD)が知られているが、本明細書で説明されるとおり、手の微動に基づいてユーザを識別するという特定の問題にすべてが適している可能性は低い。前段の実施例で使用された1つの特定の判別式は、EFM-1判別式として知られており、参照により開示が本明細書に組み込まれている、C.LiuおよびH.Wechsler著、「Enhanced Fisher Linear Discriminant Models for Face Recognition」という題名の論文、Proc.14th International Conference on Pattern Recognition、Qeensland Australia、August、17〜20頁、1998年で説明されている。
【0069】
さらに、前述の試験は、本発明の前述した例示的な諸実施形態によるハンドヘルドポインティングデバイスを使用して実行されたが、ユーザの微動ベースの識別は、そのように限定されない。実際、微動ベースの識別は、微動データが生成されることが可能な任意のタイプのモーションセンサまたはモーションセンサ群(ジャイロスコープを含む)を有する、他の任意のタイプの自由空間ポインティングデバイスにおいて使用されることが可能である。さらに、本発明による微動ベースの識別は、ポインティングデバイスに限定さることもなく、1つまたは複数のモーションセンサを組み込んだ、またはハンドヘルドデバイスに関連する手の微動を測定するための他の何らかの機構を有する任意のハンドヘルドデバイス、例えば、セル電話機、PDAなどにおいて使用されることも可能である。訓練期間を使用して、例えば、ステップ900〜908が実行されることが可能であり、その後、ハンドヘルドデバイスは、現在のユーザの手の微動に関連するデータを単に収集し、そのデータを、あらかじめ確立されたユーザクラスと比較して、現在のユーザを識別することができる。次に、その識別情報が、実施例を前述した、いくつかの異なる応用例において使用されることが可能である。
【0070】
例えば、ユーザの身元(微動ベースの認識、または別の識別技術によって認識された)を使用して、そのユーザによって行われたジェスチャが解釈されて、ユーザインタフェースに、例えば、参照により前段で組み込まれた特許出願のユーザインタフェースにコマンドがシグナルされることが可能である。例えば、時間にわたる動きのパターンが、特定のインタフェースコマンドに関連付けられるジェスチャベースのコマンドシステムにおいて、異なるユーザらが、ハンドヘルドの時間にわたる、いくらか異なる動きパターンを使用して、同一のインタフェースコマンドを開始することができる(異なる筆跡スタイルを有する異なる人々と同様に)。ユーザ識別を可能にする能力は、次に、異なるジェスチャパターンにマップされ、例えば、ハンドヘルドの中、またはシステムの中に格納されて、システム全体が、時間にわたる動きの各パターンを、ユーザによって意図されるコマンドジェスチャとして正しく識別するようになることが可能である。
【0071】
前述した例示的な諸実施形態は、すべての点で、本発明を制限するのではなく、例示することを意図している。このため、本発明は、当業者によって本明細書に含まれる説明から導き出されることが可能な、詳細な実施の多くの変形が可能である。例えば、以上の例示的な諸実施形態は、とりわけ、デバイスの動きを検出する慣性センサの使用を説明したが、前述した信号処理に関連して、慣性センサの代わりに、または慣性センサに加えて、他のタイプのセンサ(例えば、超音波、磁気、または光学)が使用されることも可能である。すべてのそのような変形形態および変更形態が、添付の特許請求の範囲によって定義される、本発明の範囲および趣旨に含まれるものと考えられる。本出願の説明において使用されるいずれの要素、動作、または命令も、特に明記しない限り、本発明に不可欠である、または必須であると解釈されてはならない。また、本明細書で使用する冠詞「a」は、1つまたは複数のアイテムを含むことを意図している。
【図面の簡単な説明】
【0072】
【図1】エンターテイメントシステムのための従来のリモコンユニットを示す図である。
【図2】本発明の例示的な諸実施形態が実施されることが可能な、例示的なメディアシステムを示す図である。
【図3】本発明の例示的な実施形態による自由空間ポインティングデバイスを示す図である。
【図4】2つの回転センサと、1つの加速度計とを含む図4の自由空間ポインティングデバイスを示す破断図である。
【図5】本発明の例示的な実施形態による自由空間ポインティングデバイスに関連するデータの処理を示すブロック図である。
【図6a】傾きの効果を示す図である。
【図6b】傾きの効果を示す図である。
【図6c】傾きの効果を示す図である。
【図6d】傾きの効果を示す図である。
【図7】本発明の例示的な実施形態による自由空間ポインティングデバイスのハードウェアアーキテクチャを示す図である。
【図8】本発明の例示的な実施形態による静止検出機構を示す状態図である。
【図9】本発明の例示的な実施形態による、ハンドヘルドデバイスの検出された手の微動に基づいてユーザを識別する方法を示す流れ図である。
【図10a】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図10b】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図10c】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図10d】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法およびデバイスの試験の一環として収集された、周波数ドメイン微動データのプロットである。
【図11】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための方法に関連する固有値をプロットするグラフである。
【図12】本発明の例示的な実施形態による、手の微動に基づいてユーザを識別するための例示的な方法に関連するクラス分離結果を示すグラフである。
【符号の説明】
【0073】
400 ポインティングデバイス
402、404 ボタン
406、802 スクロールホイール
408 ディスプレイ
410 カーソル
502、504、506、810、812、814 センサ
800 プロセッサ
804 JTAG
806 LED
808 スイッチマトリックス
816 トランシーバ
【特許請求の範囲】
【請求項1】
第1の軸を中心とするポインティングデバイスの回転を測定して、前記回転に関連する第1の回転出力を生成するための第1の回転センサと、
第2の軸を中心とする前記ポインティングデバイスの回転を測定して、前記回転に関連する第2の回転出力を生成するための第2の回転センサと、
前記ポインティングデバイスの加速度を測定して、前記加速度に関連する加速度出力を出力するための加速度計と、
前記第1の回転出力および前記第2の回転出力、および前記加速度出力を受け取るため、および(a)ユーザが、意図的な動きなしにポインティングデバイスを把持している間に、前記第1の回転出力および前記第2の回転出力、および前記加速度出力の少なくともいずれかから導出された訓練データを処理することにより、前記ユーザにそれぞれが関連する複数の手の微動のクラスを訓練期間中に確立し、(b)現在の第1の回転出力、現在の第2の回転出力、および現在の加速度出力の少なくとも1つから導出されたデータを、前記訓練期間中に確立された前記複数の手の微動のクラスと比較することにより、前記訓練期間の後、前記ポインティングデバイスの現在のユーザの身元を判定するための処理ユニットとを含むハンドヘルドポインティングデバイス。
【請求項2】
前記第1の回転センサは、第1のフレームに取り付けられた第1の共鳴する質量をさらに含み、前記第1の回転センサ内の前記第1の共鳴する質量は、前記第1の軸に沿って共鳴し、前記第1の軸に沿った前記第1の共鳴する質量のずれは、コリオリの加速効果を使用して前記第1の回転センサによって測定されて、前記第1の回転出力が生成される請求項1に記載のポインティングデバイス。
【請求項3】
前記第2の回転センサは、第2のフレームに取り付けられた第2の共鳴する質量をさらに含み、前記第2の回転センサ内の前記第2の共鳴する質量は、前記第2の軸に沿って共鳴し、前記第2の軸に沿った前記第2の共鳴する質量のずれは、コリオリの加速効果を使用して前記第2の回転センサによって測定されて、前記第2の回転出力が生成される請求項2に記載のポインティングデバイス。
【請求項4】
ハンドヘルドデバイスを把持しているユーザに関連する手の微動を検出するステップと、
前記検出された手の微動に基づいて前記ユーザを識別するステップとを含む前記ハンドヘルドデバイスの前記ユーザを識別するための方法。
【請求項5】
識別する前記ステップに基づき、前記ハンドヘルドデバイスに関連するシステムを選択的にオンにするステップをさらに含む請求項4に記載の方法。
【請求項6】
前記ユーザの身元に基づき、前記ハンドヘルドデバイスに関連するシステムへのアクセスを制限するステップをさらに含む請求項4に記載の方法。
【請求項7】
前記システムは、メディアシステムであり、アクセスを制限する前記ステップは、前記識別するステップに基づき、メディアアイテムに前記ユーザがアクセスすることを選択的に許すステップをさらに含む請求項6に記載の方法。
【請求項8】
検出された微動特徴のセットを複数の格納された微動クラスと比較することにより、前記ユーザに身元を判定するステップをさらに含む請求項4に記載の方法。
【請求項9】
前記検出された微動特徴、および前記複数の格納された微動クラスは、周波数ドメインデータに関連する請求項8に記載の方法。
【請求項10】
前記検出された微動特徴、および前記複数の格納された微動クラスは、時間ドメインデータに関連する請求項8に記載の方法。
【請求項11】
前記検出された微動特徴と前記複数の格納された微動クラスの間で一致が生じない場合、前記検出された微動特徴は、新たなユーザ身元を確立するのに使用される請求項8に記載の方法。
【請求項12】
前記検出された微動特徴と前記複数の格納された微動クラスの間で一致が生じない場合、前記ユーザには、既定のシステムアクセス許可セットが割り当てられる請求項8に記載の方法。
【請求項13】
前記識別するステップに応答して、前記ユーザに関連する選好設定を取り出すステップをさらに含む請求項4に記載の方法。
【請求項14】
ハンドヘルドデバイスの動きに関連するデータを生成することができる少なくとも1つのモーションセンサと、
前記動きデータに基づいて手の微動のデータを検出するため、および前記手の微動のデータに基づいてユーザを識別するための処理ユニットとを含むハンドヘルドデバイス。
【請求項15】
前記少なくとも1つのモーションセンサは、回転センサ、ジャイロスコープ、加速度計、慣性センサ、磁気センサ、光センサ、およびカメラの少なくとも1つを含む請求項14に記載のハンドヘルドデバイス。
【請求項16】
前記処理ユニットは、周波数ドメインにおいて前記手の微動のデータを検出する請求項14に記載のハンドヘルドデバイス。
【請求項17】
前記処理ユニットは、時間ドメインにおいて前記手の微動のデータを検出する請求項14に記載のハンドヘルドデバイス。
【請求項18】
前記処理ユニットは、異なるユーザの手の微動を区別して、前記ユーザを識別するように適合されたパターン認識技術を実行する請求項14に記載のハンドヘルドデバイス。
【請求項19】
前記処理ユニットは、訓練動作を実行し、ハンドヘルドデバイスに意図的な動きを生じさせることなしに前記ハンドヘルドデバイスを把持する異なるユーザに関連するデータが、記録され、処理される請求項14に記載のハンドヘルドデバイス。
【請求項20】
自由空間ポインティングデバイスである請求項14に記載のハンドヘルドデバイス。
【請求項21】
ハンドヘルドデバイスの動きに関連するデータを生成するための手段と、
前記動きデータに基づいて手の微動のデータを検出するため、および前記手の微動のデータに基づいてユーザを識別するための手段を含むハンドヘルドデバイス。
【請求項22】
実行されると、
前記ハンドヘルドデバイスを把持するユーザに関連する手の微動を検出するステップと、
前記検出された手の微動に基づいて前記ユーザを識別するステップとを実行するプログラム命令を格納することができるコンピュータ可読媒体。
【請求項23】
手の微動をハンドヘルドデバイスへの入力として使用して前記ハンドヘルドデバイスを動作させるための方法であって、
(a)複数のユーザの各々に、訓練期間にわたって前記ハンドヘルドデバイスを把持させることにより、前記ハンドヘルドデバイスを訓練するステップと、
(b)各訓練期間中に前記ハンドヘルドデバイスの動きを検出するステップと、
(b)それぞれの訓練期間にわたる前記検出された動きから導出されたデータを処理することにより、前記訓練期間に基づき、前記複数のユーザの1名のユーザにそれぞれが関連する複数の手の微動のクラスを確立するステップと、
(b)前記ハンドヘルドデバイスの現在の動きから導出されたデータを前記複数の手の微動のクラスと比較することにより、前記訓練期間の後に、前記ハンドヘルドデバイスの現在のユーザの身元を判定するステップとを含む方法。
【請求項24】
前記訓練期間は、前記複数のユーザの間で可変である請求項23に記載の方法。
【請求項25】
前記ユーザは、前記訓練期間中、前記ハンドヘルドデバイスの意図的な動きなしに前記ハンドヘルドデバイスを把持する請求項23に記載の方法。
【請求項26】
前記ユーザは、前記訓練期間中、前記ハンドヘルドデバイスを意図的に動かす請求項23に記載の方法。
【請求項27】
前記訓練期間中、前記ハンドヘルドデバイスに関連するユーザインタフェースに前記ユーザの身元証明を入力するステップと、
前記身元証明を対応する手の微動のクラスに関連付けるステップとをさらに含む請求項23に記載の方法。
【請求項28】
ハンドヘルドデバイス内の少なくとも1つのモーションセンサからのサンプルデータを処理するための方法であって、
(a)前記ハンドヘルドデバイスが、安定状態にあり、前記ユーザが、前記ハンドヘルドデバイスに動きを意図的に生じさせることなしに、前記ハンドヘルドデバイスを把持していると判定するステップと、
(b)前記判定するステップに応答して、前記少なくとも1つのモーションセンサからのサンプルデータを処理するステップとを含む方法。
【請求項29】
処理する前記ステップは、(c)微動データ分析に基づいてユーザを識別するように前記サンプルデータを使用するステップをさらに含む請求項28に記載の方法。
【請求項30】
処理する前記ステップは、線形フィルタリングを含む請求項28に記載の方法。
【請求項31】
ハンドヘルドデバイス内の少なくとも1つのモーションセンサからのサンプルデータを処理するための方法であって、
(a)前記ハンドヘルドデバイスが、アクティブ状態にあり、ユーザが、前記ハンドヘルドデバイスを把持しており、前記ハンドヘルドデバイスに動きを意図的に生じさせていると判定するステップと、
(b)前記判定するステップに応答して、前記少なくとも1つのモーションセンサからのサンプルデータを処理して、前記意図的な動きに関連する第1のデータ、および意図的でない動きに関連する第2のデータにするステップとを含む方法。
【請求項32】
(c)微動データ分析に基づいてユーザを識別するように、前記意図的でない動きに関連する前記第2のデータを使用するステップをさらに含む請求項31に記載の方法。
【請求項33】
前記処理するステップは、前記第1のデータと前記第2のデータを分離するための線形フィルタリング、カルマンフィルタリング、カルマン平滑化、状態空間推定、期待値最大化、または他のモデルベースの技術の1つまたは複数を含む請求項31に記載の方法。
【請求項1】
第1の軸を中心とするポインティングデバイスの回転を測定して、前記回転に関連する第1の回転出力を生成するための第1の回転センサと、
第2の軸を中心とする前記ポインティングデバイスの回転を測定して、前記回転に関連する第2の回転出力を生成するための第2の回転センサと、
前記ポインティングデバイスの加速度を測定して、前記加速度に関連する加速度出力を出力するための加速度計と、
前記第1の回転出力および前記第2の回転出力、および前記加速度出力を受け取るため、および(a)ユーザが、意図的な動きなしにポインティングデバイスを把持している間に、前記第1の回転出力および前記第2の回転出力、および前記加速度出力の少なくともいずれかから導出された訓練データを処理することにより、前記ユーザにそれぞれが関連する複数の手の微動のクラスを訓練期間中に確立し、(b)現在の第1の回転出力、現在の第2の回転出力、および現在の加速度出力の少なくとも1つから導出されたデータを、前記訓練期間中に確立された前記複数の手の微動のクラスと比較することにより、前記訓練期間の後、前記ポインティングデバイスの現在のユーザの身元を判定するための処理ユニットとを含むハンドヘルドポインティングデバイス。
【請求項2】
前記第1の回転センサは、第1のフレームに取り付けられた第1の共鳴する質量をさらに含み、前記第1の回転センサ内の前記第1の共鳴する質量は、前記第1の軸に沿って共鳴し、前記第1の軸に沿った前記第1の共鳴する質量のずれは、コリオリの加速効果を使用して前記第1の回転センサによって測定されて、前記第1の回転出力が生成される請求項1に記載のポインティングデバイス。
【請求項3】
前記第2の回転センサは、第2のフレームに取り付けられた第2の共鳴する質量をさらに含み、前記第2の回転センサ内の前記第2の共鳴する質量は、前記第2の軸に沿って共鳴し、前記第2の軸に沿った前記第2の共鳴する質量のずれは、コリオリの加速効果を使用して前記第2の回転センサによって測定されて、前記第2の回転出力が生成される請求項2に記載のポインティングデバイス。
【請求項4】
ハンドヘルドデバイスを把持しているユーザに関連する手の微動を検出するステップと、
前記検出された手の微動に基づいて前記ユーザを識別するステップとを含む前記ハンドヘルドデバイスの前記ユーザを識別するための方法。
【請求項5】
識別する前記ステップに基づき、前記ハンドヘルドデバイスに関連するシステムを選択的にオンにするステップをさらに含む請求項4に記載の方法。
【請求項6】
前記ユーザの身元に基づき、前記ハンドヘルドデバイスに関連するシステムへのアクセスを制限するステップをさらに含む請求項4に記載の方法。
【請求項7】
前記システムは、メディアシステムであり、アクセスを制限する前記ステップは、前記識別するステップに基づき、メディアアイテムに前記ユーザがアクセスすることを選択的に許すステップをさらに含む請求項6に記載の方法。
【請求項8】
検出された微動特徴のセットを複数の格納された微動クラスと比較することにより、前記ユーザに身元を判定するステップをさらに含む請求項4に記載の方法。
【請求項9】
前記検出された微動特徴、および前記複数の格納された微動クラスは、周波数ドメインデータに関連する請求項8に記載の方法。
【請求項10】
前記検出された微動特徴、および前記複数の格納された微動クラスは、時間ドメインデータに関連する請求項8に記載の方法。
【請求項11】
前記検出された微動特徴と前記複数の格納された微動クラスの間で一致が生じない場合、前記検出された微動特徴は、新たなユーザ身元を確立するのに使用される請求項8に記載の方法。
【請求項12】
前記検出された微動特徴と前記複数の格納された微動クラスの間で一致が生じない場合、前記ユーザには、既定のシステムアクセス許可セットが割り当てられる請求項8に記載の方法。
【請求項13】
前記識別するステップに応答して、前記ユーザに関連する選好設定を取り出すステップをさらに含む請求項4に記載の方法。
【請求項14】
ハンドヘルドデバイスの動きに関連するデータを生成することができる少なくとも1つのモーションセンサと、
前記動きデータに基づいて手の微動のデータを検出するため、および前記手の微動のデータに基づいてユーザを識別するための処理ユニットとを含むハンドヘルドデバイス。
【請求項15】
前記少なくとも1つのモーションセンサは、回転センサ、ジャイロスコープ、加速度計、慣性センサ、磁気センサ、光センサ、およびカメラの少なくとも1つを含む請求項14に記載のハンドヘルドデバイス。
【請求項16】
前記処理ユニットは、周波数ドメインにおいて前記手の微動のデータを検出する請求項14に記載のハンドヘルドデバイス。
【請求項17】
前記処理ユニットは、時間ドメインにおいて前記手の微動のデータを検出する請求項14に記載のハンドヘルドデバイス。
【請求項18】
前記処理ユニットは、異なるユーザの手の微動を区別して、前記ユーザを識別するように適合されたパターン認識技術を実行する請求項14に記載のハンドヘルドデバイス。
【請求項19】
前記処理ユニットは、訓練動作を実行し、ハンドヘルドデバイスに意図的な動きを生じさせることなしに前記ハンドヘルドデバイスを把持する異なるユーザに関連するデータが、記録され、処理される請求項14に記載のハンドヘルドデバイス。
【請求項20】
自由空間ポインティングデバイスである請求項14に記載のハンドヘルドデバイス。
【請求項21】
ハンドヘルドデバイスの動きに関連するデータを生成するための手段と、
前記動きデータに基づいて手の微動のデータを検出するため、および前記手の微動のデータに基づいてユーザを識別するための手段を含むハンドヘルドデバイス。
【請求項22】
実行されると、
前記ハンドヘルドデバイスを把持するユーザに関連する手の微動を検出するステップと、
前記検出された手の微動に基づいて前記ユーザを識別するステップとを実行するプログラム命令を格納することができるコンピュータ可読媒体。
【請求項23】
手の微動をハンドヘルドデバイスへの入力として使用して前記ハンドヘルドデバイスを動作させるための方法であって、
(a)複数のユーザの各々に、訓練期間にわたって前記ハンドヘルドデバイスを把持させることにより、前記ハンドヘルドデバイスを訓練するステップと、
(b)各訓練期間中に前記ハンドヘルドデバイスの動きを検出するステップと、
(b)それぞれの訓練期間にわたる前記検出された動きから導出されたデータを処理することにより、前記訓練期間に基づき、前記複数のユーザの1名のユーザにそれぞれが関連する複数の手の微動のクラスを確立するステップと、
(b)前記ハンドヘルドデバイスの現在の動きから導出されたデータを前記複数の手の微動のクラスと比較することにより、前記訓練期間の後に、前記ハンドヘルドデバイスの現在のユーザの身元を判定するステップとを含む方法。
【請求項24】
前記訓練期間は、前記複数のユーザの間で可変である請求項23に記載の方法。
【請求項25】
前記ユーザは、前記訓練期間中、前記ハンドヘルドデバイスの意図的な動きなしに前記ハンドヘルドデバイスを把持する請求項23に記載の方法。
【請求項26】
前記ユーザは、前記訓練期間中、前記ハンドヘルドデバイスを意図的に動かす請求項23に記載の方法。
【請求項27】
前記訓練期間中、前記ハンドヘルドデバイスに関連するユーザインタフェースに前記ユーザの身元証明を入力するステップと、
前記身元証明を対応する手の微動のクラスに関連付けるステップとをさらに含む請求項23に記載の方法。
【請求項28】
ハンドヘルドデバイス内の少なくとも1つのモーションセンサからのサンプルデータを処理するための方法であって、
(a)前記ハンドヘルドデバイスが、安定状態にあり、前記ユーザが、前記ハンドヘルドデバイスに動きを意図的に生じさせることなしに、前記ハンドヘルドデバイスを把持していると判定するステップと、
(b)前記判定するステップに応答して、前記少なくとも1つのモーションセンサからのサンプルデータを処理するステップとを含む方法。
【請求項29】
処理する前記ステップは、(c)微動データ分析に基づいてユーザを識別するように前記サンプルデータを使用するステップをさらに含む請求項28に記載の方法。
【請求項30】
処理する前記ステップは、線形フィルタリングを含む請求項28に記載の方法。
【請求項31】
ハンドヘルドデバイス内の少なくとも1つのモーションセンサからのサンプルデータを処理するための方法であって、
(a)前記ハンドヘルドデバイスが、アクティブ状態にあり、ユーザが、前記ハンドヘルドデバイスを把持しており、前記ハンドヘルドデバイスに動きを意図的に生じさせていると判定するステップと、
(b)前記判定するステップに応答して、前記少なくとも1つのモーションセンサからのサンプルデータを処理して、前記意図的な動きに関連する第1のデータ、および意図的でない動きに関連する第2のデータにするステップとを含む方法。
【請求項32】
(c)微動データ分析に基づいてユーザを識別するように、前記意図的でない動きに関連する前記第2のデータを使用するステップをさらに含む請求項31に記載の方法。
【請求項33】
前記処理するステップは、前記第1のデータと前記第2のデータを分離するための線形フィルタリング、カルマンフィルタリング、カルマン平滑化、状態空間推定、期待値最大化、または他のモデルベースの技術の1つまたは複数を含む請求項31に記載の方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6A】
【図6B】
【図6C】
【図6D】
【図7】
【図8】
【図9】
【図10a】
【図10b】
【図10c】
【図10d】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6A】
【図6B】
【図6C】
【図6D】
【図7】
【図8】
【図9】
【図10a】
【図10b】
【図10c】
【図10d】
【図11】
【図12】
【公表番号】特表2007−535769(P2007−535769A)
【公表日】平成19年12月6日(2007.12.6)
【国際特許分類】
【出願番号】特願2007−510993(P2007−510993)
【出願日】平成17年5月2日(2005.5.2)
【国際出願番号】PCT/US2005/014702
【国際公開番号】WO2005/109847
【国際公開日】平成17年11月17日(2005.11.17)
【出願人】(506138306)ヒルクレスト・ラボラトリーズ・インコーポレイテッド (22)
【Fターム(参考)】
【公表日】平成19年12月6日(2007.12.6)
【国際特許分類】
【出願日】平成17年5月2日(2005.5.2)
【国際出願番号】PCT/US2005/014702
【国際公開番号】WO2005/109847
【国際公開日】平成17年11月17日(2005.11.17)
【出願人】(506138306)ヒルクレスト・ラボラトリーズ・インコーポレイテッド (22)
【Fターム(参考)】
[ Back to top ]