(57)【要約】本発明によるシステムおよび方法は、自由空間ポインティング装置、および、自由空間ポインティング装置の動きのユーザインタフェースコマンドへの、例えばカーソルの動きへの正確な変換を提供する自由空間ポインティングのための方法を提供することによって、これらのニーズおよび他に取り組む。本発明の典型的な実施形態によれば、自由空間ポインティング装置は複数の加速度計を含む。
2007509448.tif 000002
【特許請求の範囲】
【請求項１】
同一平面上にない配置で設けられた少なくとも４つの加速度計装置を具備し、
前記少なくとも４つの加速度計装置の各々はそれぞれの加速度計データを出力し、
前記少なくとも４つの加速度計装置の各々からの前記加速度計データを２次元のポインタの動きに変換するアルゴリズムをさらに具備するユーザインタフェース装置。
【請求項２】
前記加速度計装置の各々は２つの加速度計を含む請求項１に記載のユーザインタフェース装置。
【請求項３】
前記加速度計装置の各々は３つの加速度計を含む請求項１に記載のユーザインタフェース装置。
【請求項４】
前記アルゴリズムはユーザの動きの特性に基づいて装置の動きの範囲を定めることによって誤差を削減する請求項１に記載のユーザインタフェース装置。
【請求項５】
前記範囲を定めることはユーザの指、手首、腕、肩の少なくとも１つについてのユーザの動きの範囲を用いて実行される請求項４に記載のユーザインタフェース装置。
【請求項６】
前記範囲を定めることはユーザの震えを用いて実行される請求項４に記載のユーザインタフェース装置。
【請求項７】
前記アルゴリズムはさらにマウスボタンのクリックを生じさせるためのジェスチャーを読み取る請求項１に記載のユーザインタフェース装置。
【請求項８】
前記アルゴリズムはさらにキーストロークまたはオペレーティングシステムメッセージを生じさせるためのジェスチャーを読み取る請求項１に記載のユーザインタフェース装置。
【請求項９】
ユーザインタフェース装置であって、
前記ユーザインタフェース装置に対応する加速度を測定するための複数の加速度計と、
時間にわたって方向の測定を安定させるために重力を利用するアルゴリズムと、
を具備するユーザインタフェース装置。
【請求項１０】
手持ち型のユーザインタフェース装置であって、
前記手持ち型のユーザインタフェース装置に対応する加速度を測定するための複数の加速度計と、
前記手持ち型のユーザインタフェース装置がいつ静止したかを検出し、かつ静止状態が検出されたときに前記複数の加速度計の校正を実行するアルゴリズムと、
を具備する手持ち型のユーザインタフェース装置。
【請求項１１】
手持ち型のユーザインタフェース装置であって、
複数の加速度計を具備し、
前記複数の加速度計の各々は手持ち型のユーザインタフェース装置の動きに対応する加速度データを供給し、
前記加速度データを２次元のカーソルの動きのデータが生成可能なデータに変換するための処理装置をさらに具備し、
前記処理装置はさらに前記手持ち型のユーザインタフェース装置がいつ静止したかを決定するために前記加速度データを処理し、かつ前記手持ち型のユーザインタフェース装置が静止しているときに前記手持ち型のユーザインタフェース装置を再校正する手持ち型のユーザインタフェース装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、メディアアイテム（media item）を組織化し、選択し、および送り出すためのフレームワーク（framework）を含む多数の異なるアプリケーションにおいて使用可能な自由空間ポインティング装置を説明する。
【０００２】
本願は、発明の名称を「加速度計を用いたユーザインタフェース装置」とし、２００３年１０月２３日に出願された米国仮特許出願第６０／５１３，８６９号明細書に関連し、かつ当該出願による優先権を主張し、当該出願の開示は引用してここに組み込まれる。また、本願は、発明の名称を「自由空間ポインティング装置」とし、２００４年４月３０日に出願された米国仮特許出願第６０／５６６，４４４号明細書に関連し、かつ当該出願による優先権を主張し、当該出願の開示は引用してここに組み込まれる。さらに、本願は、発明の名称を「自由空間ポインティング装置および方法」とし、２００４年９月２３日に出願された米国仮特許出願第６０／６１２，５７１号明細書に関連し、かつ当該出願による優先権を主張し、当該出願の開示は引用してここに組み込まれる。
【背景技術】
【０００３】
情報通信に関する技術は、最近数十年にわたって急速に発展してきた。（ほんのいくつかを挙げると）テレビ、携帯電話、インターネットおよび光通信技術が結合して消費者に利用可能な情報および娯楽の選択肢が氾濫している。テレビを例にとると、最近３０年は、ケーブルテレビサービス、衛星テレビサービス、ペイパービュー映画およびビデオオンデマンドの導入が見られた。１９６０年代のテレビ視聴者は典型的に彼らのテレビ受像機で恐らく４または５の地上波ＴＶチャンネルを受信することができたが、今日のＴＶ視聴者は数百、数千、潜在的に数百万の番組および情報のチャンネルから選択する機会を有する。現在、主にホテル等で使用されているビデオオンデマンド技術は、数千の映画タイトルの中から構内での娯楽を選択する可能性を提供する。
【０００４】
エンドユーザにたくさんの情報およびコンテンツを提供する技術的能力は、システム設計者およびサービス提供者に好機と難題の両方を与える。１つの難題は、エンドユーザは典型的に少ないよりむしろ多くの選択肢を有することを好むが、この好みは選択手順が早くかつ簡単であるという彼らの望みとつりあわされる。不運なことに、エンドユーザがそれによってメディアアイテムにアクセスするシステムおよびインタフェースの開発は、早くなく簡単でもない選択手順に帰着した。テレビ番組の例を再び考察する。テレビがその初期にあったとき、視聴する番組を決定することは、主として選択肢が少数のために比較的簡単な手順であった。視聴者は、例えば、（１）隣接するテレビチャンネル、（２）それらのチャンネルで放送される番組、（３）日付および時刻、の間の対応を示す一連の列および行として配列された、印刷されたガイドを調べた。テレビはチューナのつまみを調節することによって所望のチャンネルに合わされ、視聴者は選択された番組を視聴した。後に、視聴者が離れてテレビのチャンネルを合わせることを可能とするリモートコントロール装置が導入された。このユーザ・テレビ間のインタフェースの追加は、いつでもどのような番組が視聴できるかを手早く知るために、視聴者が多数のチャンネルで放送される短い部分を素早く見ることができる“チャンネルサーフィン”として知られる現象を生み出した。
【０００５】
チャンネルの数および視聴可能なコンテンツの量が劇的に増加したという事実にもかかわらず、一般に利用可能なテレビのためのユーザインタフェース、制御装置の選択肢およびフレームワークは最近３０年にわたってあまり変化していない。印刷されたガイドがいまだに番組情報を伝達するための最も普及した手段である。上下の矢印を有する複数ボタンのリモートコントロール装置がいまだに最も普及したチャンネル／コンテンツの選択手段である。利用可能なメディアコンテンツの増加に対するＴＶユーザインタフェースを設計および実装する者の反応は、既存の選択手順およびインタフェース対象の直接的な拡張であった。したがって、印刷されたガイドにおける行の数はより多くのチャンネルを収容するために増加した。リモートコントロール装置のボタンの数は、例えば図１に表わされているように追加機能およびコンテンツ操作をサポートするために増加した。しかし、このアプローチは、視聴者が利用可能な情報を調べるために要求される時間と、選択を実行するために要求される動作の複雑さとの両方を著しく増加させた。議論の余地はあるが、消費者は既に遅すぎ複雑すぎるものと考えるインタフェースに複雑さを追加する新たなサービスには抵抗があるので、既存のインタフェースの厄介な特質は例えばビデオオンデマンドのようないくつかのサービスの商業的な実施を阻害してきた。
【０００６】
帯域およびコンテンツの増加に加えて、ユーザインタフェースのボトルネックの問題は、技術の集合によって悪化している。消費者は多数の分離された構成品よりも統合されたシステムを購入する選択肢を受け入れることに積極的に反応している。この傾向の例は、以前の３つの独立した構成品を有する組み合わせのテレビ／ＶＣＲ／ＤＶＤが統合された装置として今日頻繁に販売されている。この傾向は潜在的に、現在家庭で見られる通信機器の全てではなくてもほとんどが、例えばテレビ／ＶＣＲ／ＤＶＤ／インターネットアクセス／ラジオ／ステレオ装置のように統合された装置として一緒に組み合わされる結果へと続くものと考えられる。分離された構成品を購入し続ける者でさえ、分離された構成品のシームレスな制御および分離された構成品間の相互接続をたいていは望む。この増加する集合体とともに、ユーザインタフェースがより複雑となる可能性が生じる。例えば、ＴＶリモート装置およびＶＣＲリモート装置の機能を結合して、例えば、いわゆる“万能”リモート装置が導入されると、これらの万能リモート装置のボタン数は典型的にＴＶリモート装置またはＶＣＲリモート装置のいずれか単体のボタン数より多くなる。このボタンおよび機能の追加された数は、遠隔において正確に正しいボタンを探し出すことができず、ＴＶまたはＶＣＲの最も簡単な側面以外を制御することを大変困難にしている。多くの場合、これらの万能リモート装置は、ある種のＴＶに固有の多くの制御レベルまたは特徴にアクセスするために十分なボタンを提供しない。これらの場合、集合体の複雑さから生じるユーザインタフェースの問題のために、元のリモート装置がいまだに必要とされ、かつ複数のリモート装置を扱う元の厄介な問題が残されている。あるリモート装置は、専門のコマンドを用いてプログラムすることができる“ソフト”ボタンを追加することによってこの問題に取り組んできた。これらのソフトボタンは、時々、その動作を示す添付のＬＣＤディスプレイを有する。これらもまた、ＴＶから目をそらしてリモートコントロール装置を見ることなく使用することが困難であるという欠点を有する。これらのリモート装置のさらにもう１つの欠点は、ボタン数を削減する試みにおいてモードを用いることである。これらの“モード”を有する万能リモート装置には、リモート装置がＴＶ、ＤＶＤプレーヤー、ケーブルセットトップボックス、ＶＣＲ等のいずれと通信するかを選択するための特別なボタンが存在する。これは、間違った装置にコマンドを送信すること、正しいモードであるかを確認するためにユーザにリモート装置を見るように強いること、複数の装置の統合に簡素化を提供しないことを含む多くの使い勝手の問題を引き起こす。これらの万能リモート装置の最も進歩したものは、複数の機器へのコマンド列をリモート装置にプログラムすることをユーザに可能とすることによっていくらかの統合を提供する。これはたいへん難しい作業であるので、多くのユーザは専門の設置者に彼らの万能リモート装置をプログラムさせている。
【０００７】
また、エンドユーザとメディアシステムとの間のスクリーンインタフェースを現代的にするためのいくつかの試みがされてきた。しかし、これらの試みは、典型的に、メディアアイテムの大きな集合とメディアアイテムの小さな集合との間で容易に除去することができない他の欠点に苦労している。例えば、アイテムのリストに依存するインタフェースは、メディアアイテムの小さな集合について十分に機能することが可能であるが、メディアアイテムの大きな集合を閲覧するためには冗長である。階層的な操縦（例えば、ツリー構造）に依存するインタフェースは、メディアアイテムの大きな集合のためのリストインタフェースよりも行き来することがより高速でありうるが、メディアアイテムの小さな集合には容易に適用することができない。さらに、ユーザは、ツリー構造において３つまたはそれ以上の階層を通して移動しなければならない選択手順において興味を失う傾向がある。これらの全ての場合について、現在のリモート装置は、リストまたは階層を操縦するためにユーザに繰り返し上下ボタンを押すことを強いることによって選択手順をより一層冗長にしている。ページアップおよびページダウンのような選択スキップ制御が利用可能であるとき、ユーザは一般にこれらの特別なボタンを見つけるためにリモート装置を見なければならないか、またはそれらが存在することを知るように訓練されていなければならない。
【０００８】
この明細書における固有の関心事は、他のアプリケーションおよびシステムとともにそのようなフレームワークと相互作用するために使用可能なリモート装置である。上記で組み込まれた出願で述べたように、例えば、トラックボール、“マウス”型ポインティング装置、ライトペン等を含むそのようなフレームワークとともに各種の異なるタイプのリモート装置を用いることが可能である。しかし、そのようなフレームワーク（および他のアプリケーション）とともに用いることが可能であるもう１つのリモート装置のカテゴリーは自由空間ポインティング装置である。語句“自由空間ポインティング”は、例えばディスプレイ画面の前の空中における３次元（またはより大きい次元）において動く入力装置の機能、およびそれらの動きを直接にユーザインタフェースコマンド、例えばディスプレイ画面のカーソルの動きに変換するユーザインタフェースの付随する機能を指すために、この明細書において用いられる。自由空間ポインティング装置との間のデータの伝達は、自由空間ポインティング装置をもう１つの装置と無線でまたは有線を介して接続して実行することが可能である。したがって、“自由空間ポインティング”は、マウスの相対的な動きがコンピュータディスプレイ画面上のカーソルの動きに変換される代用の表面として、例えば机の表面またはマウスパッドのような表面を用いる例えば従来のコンピュータマウスポインティング技術とは異なる。自由空間ポインティング装置の例は米国特許第５，４４０，３２６号明細書において見つけることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
‘３２６特許は、その中でも、コンピュータのディスプレイ上のカーソルの位置を制御するためのポインティング装置として用いるために採用された垂直ジャイロスコープを開示する。ジャイロスコープのコアにおけるモーターは、手持ち型のコントローラ装置から２組の直交するジンバルによって吊り下げられ、かつ公称で振子装置によって垂直なスピン軸に合わせて配置されている。電気光学軸角エンコーダはユーザによって操作されるにしたがって手持ち型コントローラ装置の方向を検出し、かつ結果の電気出力はコンピュータディスプレイ画面上のカーソルの動きを制御するためにコンピュータによって使用可能な形式に変換される。しかし、コスト効果が高く、正確かつユーザフレンドリな自由空間ポインティング装置のニーズが存在し続けている。
【課題を解決するための手段】
【００１０】
本発明によるシステムおよび方法は、自由空間ポインティング装置、および、自由空間ポインティング装置の動きのユーザインタフェースコマンドへの、例えばカーソルの動きへの正確な変換を提供する自由空間ポインティングのための方法を提供することによって、これらのニーズおよび他に取り組む。本発明の典型的な実施形態によれば、自由空間ポインティング装置は複数の加速度計を含む。
【００１１】
本発明の典型的な一実施形態によれば、手持ち型のユーザインタフェース装置は複数の加速度計を含み、各加速度計は装置の動きに対応する加速度データを供給し、加速度データを２次元のカーソルの動きのデータが生成可能なデータに変換するための処理装置をさらに含み、処理装置はさらに手持ち型のユーザインタフェース装置がいつ静止したかを決定するために加速度データを処理し、かつ手持ち型のユーザインタフェース装置が静止しているときに手持ち型のユーザインタフェース装置を再校正する。
【発明を実施するための最良の形態】
【００１２】
添付図面は本発明の典型的な実施形態を表わす。
以下の本発明の詳細な説明は添付図面を参照する。異なる図面の同一の参照番号は、同一または類似の構成要素を識別する。また、以下の詳細な説明は本発明を限定しない。その代わりに、本発明の範囲は添付の特許請求の範囲によって定義される。
【００１３】
この説明のためのいくつかの場面を提供するために、まず、本発明が実装可能な典型的な集合メディアシステム２００が図２に関して説明される。しかし、この技術分野の当業者は、本発明がこのタイプのメディアシステムにおける実装に限定されず、かつその中により多いまたはより少ない構成品が含まれうることを理解する。その中で、入力／出力（Ｉ／Ｏ）バス２１０はメディアシステム２００におけるシステムの構成品を相互に接続する。Ｉ／Ｏバス２１０は、メディアシステムの構成品の間で信号を送信するための多数の様々な仕組みおよび技術のいずれかを表わす。例えば、Ｉ／Ｏバス２１０は、オーディオ信号を送信する適切な数の独立のオーディオ“パッチ”ケーブル、ビデオ信号を送信する同軸ケーブル、制御信号を送信する２線シリアルラインまたは赤外線または無線周波数送受信器、光ファイバ、または他の種類の信号を送信する他のどのような送信の仕組みも含むことが可能である。
【００１４】
この典型的な実施形態において、メディアシステム２００は、Ｉ／Ｏバス２１０に接続された、テレビ／モニタ２１２、ビデオカセットレコーダ（ＶＣＲ）２１４、デジタルビデオディスク（ＤＶＤ）録画／再生装置２１６、オーディオ／ビデオチューナ２１８、コンパクトディスクプレーヤ２２０を含む。ＶＣＲ・２１４、ＤＶＤ・２１６、コンパクトディスクプレーヤ２２０は、単一のディスクまたは単一のカセット装置とすることが可能であり、またはその代わりに、複数のディスクまたは複数のカセット装置とすることが可能である。それらは独立の装置とするか、または、一緒に統合されることが可能である。さらに、メディアシステム２００は、マイクロホン／スピーカシステム２２２、ビデオカメラ２２４、無線Ｉ／Ｏ制御装置２２６を含む。本発明の典型的な実施形態によれば、無線Ｉ／Ｏ制御装置２２６は、以下で説明される典型的な実施形態の１つによる自由空間ポインティング装置である。無線Ｉ／Ｏ制御装置２２６は、例えば赤外線または無線の送信器または送受信器を用いて娯楽システム２００と通信することが可能である。その代わりに、Ｉ／Ｏ制御装置は、有線を介して娯楽システム２００に接続されることが可能である。
【００１５】
また、娯楽システム２００はシステムコントローラ２２８を含む。本発明の典型的な一実施形態によれば、システムコントローラ２２８は、娯楽システムの複数のデータソースから入手可能な娯楽システムデータを記憶および表示し、かつシステムの各構成品に関する幅広く多様な機能を制御するために動作する。図２に表わされているように、システムコントローラ２２８は、必要ならばＩ／Ｏバス２１０を通して、システムの各構成品に直接または間接に接続される。典型的な一実施形態において、Ｉ／Ｏバス２１０に加えて、または、Ｉ／Ｏバス２１０の代わりに、システムコントローラ２２８は、赤外線信号または無線信号を介してシステムの構成品と通信することが可能な無線通信送信器（または送受信器）とともに構成される。制御メディアに関係なく、システムコントローラ２２８は以下で説明されるグラフィカルユーザインタフェースを介してメディアシステム２００のメディア構成品を制御するように構成される。
【００１６】
さらに図２に表わされているように、メディアシステム２００は各種のメディアのソースおよびサービス提供者からメディアアイテムを受信するように構成することが可能である。この典型的な実施形態において、メディアシステム２００は、次のソース、すなわち、ケーブル放送２３０、（例えば衛星アンテナを介して）衛星放送２３２、（例えばアンテナを介して）放送テレビ網２３４の超短波（ＶＨＦ）または極超短波（ＵＨＦ）の無線周波数通信、電話網２３６、ケーブルモデム２３８（またはインターネットコンテンツの他のソース）のいずれかまたは全てからのメディア入力を受信し、かつ選択的に上記ソースのいずれかまたは全てに情報を送信する。この技術分野の当業者は、図２に関して表わされ、かつ説明されたメディアの構成品およびメディアのソースは単に例であり、かつメディアシステム２００はその両方について、より多くまたは少なく含むことが可能である。例えば、システムへの他のタイプの入力はＡＭ／ＦＭラジオおよび衛星ラジオを含む。
【００１７】
この典型的な娯楽システムおよびそれに対応するフレームワークに関するより詳細は、上記で引用して組み込まれた米国特許出願“メディアアイテムを組織化し、選択し、および送り出すためのズーム可能なグラフィカルユーザインタフェースを有する制御フレームワーク”において見ることができる。その代わりに、本発明に従うリモート装置は他のシステム、例えば、ディスプレイ、プロセッサ、メモリシステム、または他の各種のシステムおよびアプリケーションを含むコンピュータシステムと結合することが可能である。
【００１８】
背景技術の欄で述べたように、自由空間ポインタとして動作するリモート装置は本明細書における固有の関心事である。そのような装置は動き、例えばジェスチャーをユーザインタフェースへのコマンドに変換することを可能とする。典型的な自由空間ポインティング装置４００は図３に表わされている。その中で自由空間ポインティングのユーザの動きは、例えば、自由空間ポインティング装置４００のｘ軸の周りの姿勢（attitude）（ロール（roll））、ｙ軸の周りの仰角（elevation）（ピッチ（pitch））および／またはｚ軸の周りの向き（heading）（ヨー（yaw））の動きの組み合わせによって定義することが可能である。さらに、本発明のある典型的な実施形態は、カーソルの動きまたは他のユーザインタフェースコマンドを生成するために、ｘ、ｙ、ｚ軸に沿って自由空間ポインティング装置４００の線形的な動きを測定することが可能である。他の典型的な実施形態は他の物理的な構成を含むが、図３の典型的な実施形態においては、自由空間ポインティング装置４００はスクロールホィール４０６とともに２つのボタン４０２、４０４を含む。本発明の典型的な実施形態によれば、自由空間ポインティング装置４００はディスプレイ４０８の前でユーザが持ち、かつ自由空間ポインティング装置４００の動きは、自由空間ポインティング装置４００によって、ディスプレイ４０８に表示される情報と相互作用するために、例えばディスプレイ４０８上のカーソル４１０を動かすために使用可能である出力に変換されることが期待される。例えば、自由空間ポインティング装置４００のｙ軸の周りの回転は自由空間ポインティング装置４００によって検出することが可能であり、かつディスプレイ４０８のｙ２軸に沿ってカーソル４１０を動かすためにシステムによって使用可能な出力に変換される。同様に、自由空間ポインティング装置４００のｚ軸の周りの回転は自由空間ポインティング装置４００によって検出することが可能であり、かつディスプレイ４０８のｘ２軸に沿ってカーソル４１０を動かすためにシステムによって使用可能な出力に変換される。自由空間ポインティング装置４００の出力は、カーソルの動き以外の（またはカーソルの動きに加えて）多くの方法において、ディスプレイ４０８と相互作用するために使用可能であることが理解される。例えば、カーソルのフェーディング、ボリューム、メディア伝達（再生、一時停止、早送り、巻き戻し）を制御することが可能である。入力コマンドはカーソルの動きに加えた操作、例えば、ディスプレイの特定の領域のズームイン、ズームアウトを含むことが可能である。カーソルは可視または不可視とすることが可能である。同様に、自由空間ポインティング装置４００のｘ軸の周りに検出された自由空間ポインティング装置４００の回転は、ユーザインタフェースへの入力を供給するためにｙ軸および／またはｚ軸の周りの回転に加えて、またはその代わりとして用いることが可能である。
【００１９】
本発明の典型的な一実施形態によれば、２つの回転センサ５０２、５０４および１つの加速度計５０６は、図４に表わされているように自由空間ポインティング装置４００におけるセンサとして用いることが可能である。回転センサ５０２、５０４は、例えば、Analog Devices社によって製造されたADXRS150センサを用いて実装することが可能である。この技術分野の当業者は、回転センサ５０２、５０４として他の種類の回転センサを用いることが可能であり、かつADXRS150は単に説明のための例として用いられていることを理解する。従来のジャイロスコープと異なり、ADXRS150回転センサは、一方向のみに沿って共振しうるようにフレームに取り付けられた共振性のマス（resonating mass）を提供するMEMS技術を用いる。共振性のマスは、センサが固定された本体が、センサの検出軸の周りに回転したときに変位（displace）する。この変位は検出軸に沿った回転に対応する角速度を決定するためにコリオリの加速度効果を用いて測定することが可能である。回転センサ５０２、５０４が１つの検出軸を有するならば（ADXRS150の例に関しては）、それらの検出軸は測定される回転に向きが調整されるように自由空間ポインティング装置４００に配置することが可能である。これは、本発明のこの典型的な実施形態において、図４に表わされているように、回転センサ５０２はその検出軸がｙ軸に平行であるように配置され、かつ回転センサ５０４はその検出軸がｚ軸に平行であるように配置されることを意味する。しかし、本発明の典型的な実施形態は軸の間のオフセットを補償するための技術も提供するので、回転センサ５０２、５０４の検出軸を所望の測定軸に平行に配置することは要求されないことに留意すべきである。
【００２０】
本発明に従う典型的な自由空間ポインティング装置４００の実装において取り組まれる１つの目標は、高価すぎないが、同時に、自由空間ポインティング装置４００の動きと、自由空間ポインティング装置の特定の動きにユーザインタフェースがどのように反応するかに関するユーザの期待と、その動きに反応する実際のユーザインタフェースの性能との間に高度の相関関係を提供する構成品、例えば回転センサ５０２、５０４を用いることである。例えば、自由空間ポインティング装置４００が動いていないならば、ユーザはカーソルが画面を横切って流れないことを期待すると考えられる。同様に、ユーザが単にｙ軸の周りに自由空間ポインティング装置４００を回転するならば、ユーザは結果としてかなりのｘ２軸成分を含むディスプレイ４０８上のカーソルの動きを見ることを期待しないと考えられる。これらを達成するために、本発明の典型的な実施形態の他の構成は、センサ５０２、５０４、５０６の１つまたは複数の出力を調整するために用いられ、および／または、センサ５０２、５０４、５０６の出力に基づくユーザインタフェースのための適切な出力を決定するためにプロセッサによって用いられる入力の一部として、各種の測定および計算が手持ち型装置４００によって実行される。これらの測定および計算は、（１）自由空間ポインティング装置４００に固有な要因、例えば、装置４００において用いられる特定のセンサ５０２、５０４、５０６、または、装置４００においてセンサが配置される仕方に関する誤差、および、（２）自由空間ポインティング装置４００に固有でないが、ユーザが自由空間ポインティング装置４００を使用する仕方に関する要因、例えば、線形加速度、傾き（tilt）、震え（tremor）、の広くは２つのカテゴリーに含まれる要因を補償するために用いられる。これらの各々の影響を処理する典型的な技術は以下で説明される。
【００２１】
本発明の典型的な実施形態による自由空間ポインティング装置の一般的な動作を説明する処理モデル６００が図５に表わされている。加速度計５０６とともに回転センサ５０２、５０４は、周期的に、例えば２００サンプル／秒でサンプリングされたアナログ信号を生成する。この説明の目的のために、これらの入力の集合は表記（ｘ，ｙ，ｚ，αｙ，αｚ）を用いて参照され、ｘ，ｙ，ｚは典型的な３軸の加速度計５０６のサンプリングされた出力値であり、それぞれｘ軸、ｙ軸、ｚ軸の方向における自由空間ポインティング装置の加速度に対応し、αｙはｙ軸の周りの自由空間ポインティング装置の回転に対応する回転センサ５０２からのサンプリングされた出力値であり、αｚはｚ軸の周りの自由空間ポインティング装置４００の回転に対応する回転センサ５０４からのサンプリングされた出力値である。
【００２２】
加速度計５０６からの出力が供給され、加速度計５０６がアナログ出力を供給するならば、その出力は、サンプリングされた加速度計出力６０２を生成するために、（図示しない）Ａ／Ｄコンバータによってサンプリングされ、かつデジタル化される。サンプリングされた出力値は、変換機能６０４によって示されているように、未処理の単位から加速度の単位、例えば重力（ｇ）に変換される。加速度校正ブロック６０６は、変換機能６０４のために使用される値を供給する。加速度計出力６０２の校正は、例えば、加速度計５０６に関するスケール、オフセット、軸の調整不良誤差の１つまたは複数の補償を含むことが可能である。加速度計データのための典型的な変換は次の等式を用いて実行することが可能である。
Ａ＝Ｓ＊（（Ｍ−Ｐ）．＊Ｇ（Ｔ））                    （１）
ここで、Ｍはサンプリングされた出力値（ｘ，ｙ，ｚ）からなる３×１列ベクトル、Ｐはセンサオフセットの３×１列ベクトル、Ｓはスケール、軸の調整不良、センサの回転補償のいずれも含む３×３行列である。Ｇ（Ｔ）は温度の関数である利得係数である。演算子“＊”は行列の乗算を表わし、演算子“．＊”は要素の乗算を表わす。典型的な加速度計５０６は、＋／−２ｇの典型的なフルレンジを有する。センサオフセットＰはセンサ出力を表わし、Ｍは０ｇの加速度計の測定値を表わす。スケールはサンプリングされた単位の値とｇとの間の変換係数を表わす。どのような与えられた加速度計センサの実際のスケールも、例えば、製造上の差異のために、これらの公称のスケール値から外れる可能性がある。したがって、上記の等式におけるスケール要素はこの偏差に比例する。
【００２３】
加速度計５０６のスケールおよびオフセットの偏差は、例えば、１つの軸に沿って１ｇの力をかけ、その結果のＲ１を測定することによって測定することが可能である。そして−１ｇの力がかけられ、結果として測定値Ｒ２となる。個々の軸のスケールｓ、個々の軸のオフセットｐは次のように計算することができる。
ｓ＝（Ｒ１−Ｒ２）／２                    （２）
ｐ＝（Ｒ１＋Ｒ２）／２                    （３）
この簡単な例において、Ｐは各軸についてのｐの列ベクトル、Ｓは各軸についての１／ｓの対角行列である。
【００２４】
しかし、スケールおよびオフセットに加えて、加速度計５０６によって生成された表示度数は軸交差の影響による難点がある。軸交差の影響は未調整の軸を含み、例えば、自由空間ポインティング装置４００に搭載されたときに加速度計５０６の検出軸の１つまたは複数が慣性座標系における対応する軸と調整されていないか、または加速度計５０６自体の機械加工に関する機械的誤差、例えば、たとえ軸が正しく調整されても、純粋なｙ軸の加速度の力が加速度計５０６のｚ軸に沿ったセンサ表示度数となる結果となる可能性がある。これらの両方の影響は測定され、かつ機能６０６によって実行される校正に与えることが可能である。
【００２５】
加速度計５０６は、本発明の典型的な実施形態による典型的な自由空間ポインティング装置においていくつかの目的を果たす。例えば、回転センサ５０２、５０４は上述した典型的なコリオリ効果の回転センサを用いて実装されるならば、回転センサ５０２、５０４の出力は各回転センサによって感知された線形加速度に基づいて変化する。したがって、加速度計５０６の１つの典型的な使用は、線形加速度における変動によって引き起こされる、回転センサ５０２、５０４によって生成される表示度数における揺らぎを補償するためのものである。これは、変換された加速度計の表示度数を利得行列６１０と乗算し、かつその結果を対応するサンプリングされた回転センサデータ６１２から減算する（または、その結果を対応するサンプリングされた回転センサデータ６１２に加算する）ことによって、達成することが可能である。例えば、回転センサ５０２からのサンプリングされた回転データαｙは、次のようにブロック６１４において線形加速度を補償することが可能である。
αｙ’＝αｙ−Ｃ＊Ａ                    （４）
ここで、Ｃは単位量／ｇで与えられた各軸に沿った線形加速度への回転センサの感受性の１×３行ベクトル、Ａは校正された線形加速度である。同様に、回転センサ５０４からのサンプリングされた回転データαｚのための線形加速度の補償はブロック６１４において提供することが可能である。利得行列Ｃは、製造上の差異のために回転センサの間で異なる。Ｃは多数の回転センサの平均値を用いて計算することが可能であり、各回転センサために専用に計算することが可能である。
【００２６】
加速度計データのように、サンプリングされた回転データ６１２は、機能６１６において、サンプリングされた単位の値から回転角速度、例えばラジアン／秒に対応する値に変換される。この変換ステップは、例えばスケールおよびオフセットについてサンプリングされた回転データを補償するために機能６１８によって提供される校正を含む。αｙおよびαｚの両方のための変換／校正は、例えば次の等式を用いて達成することが可能である。
α rad/s＝（α’−offset（Ｔ））＊scale＋dOffset                    （５）
ここで、α’は変換／校正される値を表わし、offset（Ｔ）は温度に対応するオフセット値を表わし、scaleはサンプリングされた単位の値とrad/sとの間の変換係数を表わし、dOffsetは動的なオフセット値を表わす。等式（５）は、scaleを除いて全ての変数がベクトルである行列の等式として与えることも可能である。行列の等式の形式において、スケールは、軸の調整不良および回転オフセットの要素を訂正する。これらの各変数は以下でより詳しく説明される。
【００２７】
オフセット値offset（Ｔ）およびdOffsetは多数の異なる方法で決定することが可能である。自由空間ポインティング装置４００が例えばｙ軸方向において回転されないとき、センサ５０２はそのオフセット値を出力する。しかし、オフセットは温度によって大きく影響されうるので、このオフセット値は変化すると考えられる。オフセットの温度校正は工場で実行することが可能であり、この場合、offset（Ｔ）についての値は手持ち型装置４００にプログラムするか、またはその代わりに、オフセットの温度校正は装置の存続期間の間に動的に感知することが可能である。動的なオフセット補償を達成するために、温度センサ６１９からの入力は、offset（Ｔ）についての現在の値を計算するために回転校正機能６１８において用いられる。offset（Ｔ）のパラメータは、センサの表示度数からオフセットバイアスの大部分を除去する。しかし、ゼロの動きにおいてほとんど全てのカーソルのドリフトを無効にすることは、高性能のポインティング装置を作り出すために有効でありうる。したがって、追加の要素dOffsetは、自由空間ポインティング装置４００を使用しながら動的に計算することが可能である。静止検出機能６０８は、手持ち型装置がいつほとんど静止したか、いつオフセットが再計算されるべきかを判定する。そこで、他の使用とともに静止検出機能６０８を実装するための典型的な技術が以下で説明される。
【００２８】
dOffset計算の典型的な実装は、ローパスフィルタされた、校正されたセンサ出力を使用する。静止検出機能６０８は、例えば、ローパスフィルタ出力の平均の計算を引き起こすために回転校正機能６１８に指示を与える。また、静止検出機能６０８は、dOffsetについての既存の値に新たに計算された平均をいつ要因の１つとして含めるかを制御することが可能である。この技術分野の当業者は、dOffsetの既存の値からdOffsetの新たな値を計算するために多数の異なる技術を用いることが可能であり、かつ新たな平均は、限定しないが単なる平均、ローパスフィルタリング、カルマンフィルタリングを含むことを理解する。さらに、この技術分野の当業者は、回転センサ５０２、５０４のオフセット補償のための非常にたくさんの変形を用いることが可能であることを理解する。例えば、offset（Ｔ）関数は定数値（例えば、温度に対して不変）を有することが可能であり、２つ以上のオフセット補償値を用いることが可能であり、および／または、ただ１つのオフセット値がオフセット補償のために計算され／用いられることが可能である。
【００２９】
ブロック６１６における変換／校正の後、回転センサ５０２、５０４からの入力はさらにそれらの入力を慣性座標系に回転させるために、すなわち、機能６２０においてユーザの自由空間ポインティング装置４００の持ち方に対応する傾きを補償するために、処理することが可能である。傾き訂正は、本発明による自由空間ポインティング装置の使用形態における差異を補償することを意図するので、本発明のある典型的な実施形態のもう１つの重要な構成である。より詳しくは、本発明の典型的な実施形態による傾き訂正は、ユーザが異なるｘ軸の回転位置においてユーザの手にポインティング装置を持っているが、自由空間ポインティング装置４００における回転センサ５０２、５０４の検出軸は固定されているという事実を補償するために意図される。ディスプレイ４０８にわたるカーソル変換は、ユーザの自由空間ポインティング装置４００の握り方に実質的に影響を受けないことが望ましい。例えば、ユーザが自由空間ポインティング装置４００を持っている方向に関係なく、ディスプレイ４０８の水平次元（ｘ２軸）に概して対応するように自由空間ポインティング装置４００を左右に回転させることは、結果としてｘ２軸に沿ったカーソル変換となるべきであり、一方、ディスプレイ４０８の垂直次元（ｙ２軸）に概して対応するように自由空間ポインティング装置を上下に回転させることは、結果としてｙ２軸に沿ったカーソル変換となるべきである。
【００３０】
本発明の典型的な実施形態による傾き補償の必要性をよりよく理解するために、図６Ａに表わされている例を考える。その中で、ユーザは、０度のｘ軸回転値を有するものとして定義することが可能な典型的な慣性座標系において自由空間ポインティング装置４００を持っている。慣性座標系は、純粋に例として、図６Ａに表わされている方向に対応することが可能であり、また、任意の他の方向として定義することが可能である。ｙ軸またはｚ軸方向のいずれかにおける自由空間ポインティング装置４００の回転は、それぞれ回転センサ５０２、５０４によって検出される。例えば、図６Ｂに表されているように、量Δｚによるｚ軸の周りの自由空間ポインティング装置４００の回転は、結果としてディスクプレイ４０８を横切るｘ２軸の次元における対応するカーソル変換Δｘ２（すなわち、点線で表したカーソル４１０と点線でないものとの間の距離）となる。
【００３１】
一方、ユーザが異なる方向において、例えば、慣性座標系に対してある量のｘ軸回転を有して、自由空間ポインティング装置４００を持つならば、センサ５０２、５０４によって提供される情報は、（傾き補償がなく）ユーザの意図するインタフェース動作の正確な表現を提供しない。例えば、図６Ｃを参照して、図６Ａに表されたような典型的な慣性座標系に対して４５度のｘ軸回転を有してユーザが自由空間ポインティング装置４００を持つ状態を考える。ユーザによる同じｚ軸回転Δｚを仮定すると、代わりにカーソル４１０は図６Ｄに表されたようにｘ２軸方向およびｙ２軸方向の両方において変換される。これは回転センサ５０２の検出軸が、（ユーザの手における装置の方向のために）ここではｙ軸およびｚ軸の間に方向付けられているという事実による。同様に、回転センサ５０４の検出軸は（異なる四分円においてであるが）ｙ軸およびｚ軸の間に方向付けられている。自由空間ポインティング装置４００がどのように持たれているかに関してユーザに透過的であるインタフェースを提供するために、本発明の典型的な実施形態による傾き補償は、これらのセンサからの表示度数を自由空間ポインティング装置４００の回転動作を示す情報への処理の一部として、回転センサ５０２、５０４からの表示度数の出力を慣性座標系に戻す変換をする。
【００３２】
図５に戻り、本発明の典型的な実施形態によれば、これは機能６２２において加速度計５０６から受信した入力ｙおよびｚを用いて自由空間ポインティング装置４００の傾きを判定することによって達成することが可能である。より詳しくは、加速度データが上述したように変換され校正された後、平均の加速度（重力）の値を傾き判定機能６２２に供給するためにＬＰＦ・６２４においてローパスフィルタすることが可能である。そして、機能６２２における傾きθは次のように計算することが可能である。
【００３３】
【数１】
2007509448.tif 000003
【００３４】
値θは０による除算を防止し、かつ正しいｓｉｇｎの値を与えるために、計算上、ａｔａｎ２（ｙ，ｚ）として計算することが可能である。そして、機能６２０は、傾きθを補償するために変換／校正された入力αｙおよびαｚを回転する次の等式を用いて、変換／校正された入力αｙおよびαｚの回転Ｒを実行することが可能である。
【００３５】
【数２】
2007509448.tif 000004
【００３６】
一旦、校正されたセンサの表示度数が線形加速度を補償され、自由空間ポインティング装置４００の回転角を示す表示度数に処理され、かつ傾きを補償されると、後処理をブロック６２６、６２８において実行することが可能である。典型的な後処理は、人の震えのような変動要素の補償を含むことが可能である。震えはいくつかの異なる方法を用いて除去することが可能であるが、震えを除去する１つの方法はヒステリシス（hysteresis）を用いることによるものである。回転機能６２０によって生成される角速度は角位置を生成するために積分される。そして、校正された大きさのヒステリシスは角位置に適用される。再び角速度を生じさせるためにヒステリシスブロックの出力から導関数が得られる。そして、結果の出力は（例えば、サンプリング期間に基づいて）機能６２８においてスケーリングされ、かつ、例えば、ディスプレイ４０８上のカーソル４１０の動きのようなインタフェースにおける結果を生成するために用いられる。
【００３７】
本発明による典型的な自由空間ポインティング装置の処理を説明したので、図７に典型的なハードウェアアーキテクチャを表わす。その中で、プロセッサ８００は、スクロールホィール８０２、ＪＴＡＧ・８０４、ＬＥＤ・８０６、スイッチマトリックス８０８、赤外線光検出器８１０、回転センサ８１２、加速度計８１４、送受信器８１６を含む自由空間ポインティング装置の他の構成要素と通信する。スクロールホィール８０２は、スクロールホィール８０２を時計回りまたは反時計回りに回転させることによってユーザがインタフェースに入力を与えることを可能とする選択的な入力の構成要素である。ＪＴＡＧ・８０４はプロセッサにプログラミングおよびデバッグのインタフェースを提供する。ＬＥＤ・８０６は、例えばボタンが押されたときにユーザに視覚的なフィードバックを提供する。スイッチマトリックス８０８は入力、例えば自由空間ポインティング装置４００のボタンが押されまたは離されたことを示すものを受信し、そして、それはプロセッサ８００に渡される。選択的な赤外線光検出器８１０は、典型的な自由空間ポインティング装置が他のリモートコントロール装置からの赤外線コードを認識することを可能とするために提供することが可能である。回転センサ８１２は、例えば、上述した自由空間ポインティング装置のｙ軸およびｚ軸回転に対応する表示度数をプロセッサ８００に供給する。加速度計８１４は、例えば、傾き補償を実行し、かつ線形加速度が回転センサ８１２によって生成される回転の表示度数に導入する誤差を補償するために、上述したように使用することが可能な自由空間ポインティング装置の線形加速度に関して、プロセッサ８００に表示度数を供給する。送受信器８１６は、自由空間ポインティング装置４００に、および自由空間ポインティング装置４００から情報を伝達し、例えば、システムコントローラ２２８に、または、コンピュータに結合されたプロセッサに情報を伝達するために用いられる。送受信器８１６は、例えば、近距離無線通信のためにブルートゥース（登録商標）標準にしたがって動作する無線送受信器または赤外線送受信器とすることが可能である。その代わりに、自由空間ポインティング装置４００は無線接続を介してシステムと通信することが可能である。
【００３８】
静止検出機能６０８は、上記で簡単に説明したように、自由空間ポインティング装置４００が、例えば、静止しているか、またはアクティブである（動いている）か、のいずれであるかを判定するために動作することが可能である。この分類は多数の他の方法で実行することが可能である。本発明の典型的な実施形態による１つの方法は、所定期間にわたって、例えば１／４秒毎に、全ての入力（ｘ，ｙ，ｚ，αｙ，αｚ）のサンプリングされた入力データの変動を計算することである。そして、この変動は、静止またはアクティブのいずれかとして自由空間ポインティング装置を分類するために閾値と比較される。
【００３９】
本発明の典型的な実施形態によるもう１つの静止検出技術は、例えば、入力データに高速フーリエ変換（ＦＦＴ）を実行することによって、入力を周波数領域に変換することを含む。そして、自由空間ポインティング装置４００が静止またはアクティブのいずれであるかを判定するために、例えばピーク検出法を用いてデータを分析することが可能である。さらに、第３の分類、特にユーザが自由空間ポインティング装置４００を持っているが、それを動かしていない場合（ここでは“安定”状態と呼ぶ）を識別することが可能である。この第３の分類は、自由空間ポインティング装置４００がユーザによって持たれているときユーザの手の震えによって導入される自由空間ポインティング装置４００の小さな動きを検出することによって、静止（持っていない）およびアクティブから区別することが可能である。また、ピーク検出は、この判定を行うために静止検出機能６０８によって用いることが可能である。人の震えの周波数、例えば公称で８〜１２Ｈｚの範囲内のピークは、典型的に（装置が静止し、かつ持たれていないときに認識される）装置のノイズの下限を約２０ｄＢ超える。
【００４０】
上述した例において、周波数領域における変動は特定の周波数範囲内で検出されるが、監視され、かつ自由空間ポインティング装置４００の状態を特徴付けるために用いられる実際の周波数範囲は変動する可能性がある。例えば、公称の震えの周波数範囲は、例えば、自由空間ポインティング装置４００の人間工学的な作りおよび重さに基づいて、例えば８〜１２Ｈｚから４〜７Ｈｚまで変わる可能性がある。
【００４１】
本発明のもう１つの典型的な実施形態によれば、静止検出機能６０８は状態機械を含むことが可能である。典型的な状態機械が図８に表されている。その中で、アクティブ状態は、この例において、自由空間ポインティング装置４００が動き、かつ例えばユーザインタフェースに入力を供給するために用いられている間のデフォルト状態である。自由空間ポインティング装置４００は、リセット入力によって示されているように装置の電力アップにおいてアクティブ状態に入ることが可能である。自由空間ポインティング装置４００が動きを停止すると、非アクティブ状態に入ることが可能である。図８に表わされている各種の状態遷移は、限定しないが、回転センサ５０２、５０４の一方または両方からのデータ出力、加速度計５０６からのデータ出力、時間領域データ、周波数領域データ、またはそれらの任意の組み合わせを含む多数の異なる基準のいずれかによって引き起こすことが可能である。状態遷移の条件は、ここでは一般に、規則“条件状態Ａ→状態Ｂ”を用いて表わされる。例えば、自由空間ポインティング装置４００は、条件アクティブ→非アクティブが発生すると、アクティブ状態から非アクティブ状態に遷移する。単に説明の目的のために、典型的な自由空間ポインティング装置４００において、条件アクティブ→非アクティブは、回転センサおよび加速度計の両方からの平均値および／または標準偏差値が第１の所定期間に第１の所定閾値を下回ったとき発生すると考える。
【００４２】
状態遷移は、読み取られたセンサ出力に基づいて多数の異なる条件によって決定することが可能である。典型的な条件の計量は、時間区間にわたって読み取られた信号の変動、基準値と時間区間にわたって読み取られた信号との間の閾値、基準値と時間区間にわたって読み取られたフィルタリングされた信号との間の閾値、基準値と開始時間から読み取られた信号との間の閾値を、状態遷移を決定するために用いることを含む。これらの条件の計量の全てまたは任意の組み合わせを、状態遷移を引き起こすために用いることが可能である。その代わりに、他の計量を用いることも可能である。本発明の１つの典型的な実施形態によれば、非アクティブ状態からアクティブ状態への遷移は、（１）時間区間にわたってセンサ出力の平均値が所定の閾値より大きいとき、または（２）時間区間にわたってセンサ出力値の変動が所定の閾値より大きいとき、または（３）センサ値の間の瞬間の増分が所定の閾値より大きいとき、のいずれかにおいて発生する。
【００４３】
非アクティブ状態は、自由空間ポインティング装置４００がまだ使用されている間の、例えば１／１０秒のオーダーの短い休止期間と、安定または静止状態のいずれかへの実際の遷移とを、静止検出機能６０８が識別することを可能とする。これは、以下で説明される安定および静止状態の間に実行される機能に対して、自由空間ポインティング装置４００が使用されているときに不注意に実行されることから保護する。例えば、非アクティブ状態において第２の所定期間が経過する前に回転センサおよび加速度計からの測定された出力が第１の閾値を超えるように自由空間ポインティング装置４００が再び動き始めるならば、条件非アクティブ→アクティブが発生すると自由空間ポインティング装置４００はアクティブ状態に遷移して戻る。
【００４４】
自由空間ポインティング装置４００は、第２の所定期間が経過した後、安定状態または静止状態のいずれかに遷移する。上述したように、安定状態は、人が持っているが実質的に動いていないときの自由空間ポインティング装置４００の特性を示し、一方、静止状態は人が持っていないときの自由空間ポインティング装置４００の特性を示す。したがって、本発明による典型的な状態機械は、手の震えに対応する最低限の動きが存在するならば第２の所定期間が経過した後に安定状態への遷移をもたらし、そうでなければ、静止状態への遷移をもたらすことが可能である。
【００４５】
安定および静止状態は、自由空間ポインティング装置４００が各種の機能を実行することが可能である間の時間を定義する。例えば、安定状態はユーザが自由空間ポインティング装置４００を持っているがそれを動かしていない時間を表わすことを意図するので、装置はそれが安定状態にあるとき、例えば、この状態において回転センサおよび／または加速度計からの出力を記憶することによって、自由空間ポインティング装置４００の動きを記録することが可能である。これらの記憶された測定値は、以下で説明されるように、特定のユーザまたは複数のユーザに関する震えのパターンを判定するために使用することが可能である。同様に、静止状態にあるとき、自由空間ポインティング装置４００は、以下で説明されるように、オフセットの補償において使用するために、回転センサおよび／または加速度計からの表示度数を取得することが可能である。
【００４６】
自由空間ポインティング装置４００が安定または静止状態のいずれかにおいて動き始めるならば、これはアクティブ状態に戻ることを引き起こす。そうでなければ、測定値が取得された後、装置はスリープ状態に遷移することが可能である。スリープ状態において、装置は、自由空間ポインティング装置の電力消費が削減され、かつ例えば、回転センサおよび／または加速度計のサンプリングレートが削減される電力ダウンモードに入ることが可能である。また、ユーザまたはもう１つの装置が自由空間ポインティング装置４００がスリープ状態に入ることを命令することが可能であるような外部コマンドを介してスリープ状態に入ることも可能である。
【００４７】
もう１つのコマンドを受信すると、または自由空間ポインティング装置４００が動き始めると、装置はスリープ状態からウェイクアップ状態に遷移することが可能である。非アクティブ状態と同様に、ウェイクアップ状態は、アクティブ状態への遷移が正当化されること、例えば自由空間ポインティング装置４００が不注意でなく動かされたことを確認する機会を装置に提供する。
【００４８】
状態遷移のための条件は、対称的であることも、あるいは異なることも可能である。したがって、条件アクティブ→非アクティブに対応する閾値は、条件非アクティブ→アクティブに対応する閾値と同一である（または異なる）ことが可能である。これは、本発明による自由空間ポインティング装置がユーザ入力をより正確にとらえることを可能とする。例えば、その中でも、状態機械の実装を含む典型的な実施形態は、静止状態へ遷移するための閾値が静止状態から他へ遷移するための閾値と異なることを可能とする。
【００４９】
１つの状態へ入ることまたは１つの状態から抜けることは、他の装置の機能を引き起こすために用いることも可能である。例えば、ユーザインタフェースは、任意の状態からアクティブ状態への遷移に基づいて電力アップすることが可能である。逆に、自由空間ポインティング装置および／またはユーザインタフェースは、自由空間ポインティング装置がアクティブまたは安定から静止または非アクティブへ遷移したときに電源オフされる（またはスリープモードへ入る）ことが可能である。その代わりに、自由空間ポインティング装置４００の静止状態からの遷移または静止状態への遷移に基づいて、カーソル４１０が表示されまたは画面から消去されることが可能である。
【００５０】
上述したように、安定状態は震えデータを記憶するために用いることが可能である。典型的に、各ユーザは異なる震えのパターンを示す。このユーザの震えの特性はユーザを識別するために用いることも可能である。例えば、ユーザの震えのパターンは、ユーザに例えば１０秒間、できるだけ安定して自由空間ポインティング装置を持つことを要求する初期化処理の間に（自由空間ポインティング装置４００において記憶するか、またはシステムに送信して）システムによって記憶することが可能である。このパターンは各種のユーザインタフェース機能を実行するためのユーザ固有の署名として用いることが可能である。例えば、ユーザインタフェースは現在の震えのパターンをメモリに記憶された震えのパターンと比較することによって、ユーザのグループからユーザを識別することが可能である。この識別は、例えば、識別されたユーザに対応する好みの設定を検索するために用いることが可能である。例えば、自由空間ポインティング装置が、上記で引用して組み込まれた特許文献に記載されたメディアシステムと結合して用いられるならば、震えのパターンの比較によってシステムがユーザを認識した後に、ユーザに対応するメディア選択アイテムの表示の好みを活性化することが可能である。また、震え認識を用いてシステムセキュリティを実装することが可能であり、例えば、ユーザが自由空間ポインティング装置４００を持ち上げた後に実行されるユーザ識別に基づいてシステムへのアクセスを禁止または制限することが可能である。
【００５１】
図４の典型的な実施形態において、自由空間ポインティング装置４００は加速度計５０６とともに２つの回転センサ５０２、５０４を含む。しかし、本発明のもう１つの典型的な実施形態によれば、自由空間ポインティング装置は、その代わりに、例えば、ｚ軸方向における角速度および加速度を測定するために、ただ１つの回転センサを含むことも可能である。そのような典型的な実施形態のために、上述したのと同様な機能が、回転センサによって検出されない軸に沿った角速度を決定するために、加速度計を用いて提供することが可能である。例えば、ｙ軸の周りの回転速度は加速度計によって生成されたデータを用いて、次の式を計算して算出することが可能である。
【００５２】
【数３】
2007509448.tif 000005
【００５３】
さらに、回転センサによって測定されない寄生加速度の影響は除去されるべきである。これらの影響は、実際の線形加速度、回転速度および回転加速度によって測定された加速度、人の震えによる加速度を含む。
【００５４】
本発明のさらにもう１つの典型的な実施形態によれば、ユーザインタフェース装置は加速度計のみを用いる。図９に表わされているように、本発明のこの典型的な実施形態による３Ｄ手持ち型装置は、６自由度（６ＤＯＦ）、すなわち、ｘ，ｙ，ｚ，ヨー（yaw），ピッチ（pitch），ロール（roll）を測定する。図９はオイラー角（ヨー，ピッチ，ロール）を表わすが、この技術分野の当業者は、本発明のこの典型的な実施形態は四元数（quaternion）のような他の表現も含むことを理解する。６自由度装置はディスプレイとユーザ入力との間に自然なマッピングを可能とする。例えば、ポインタを上に動かすために、ユーザは手持ち型装置を上に動かす。この典型的な実施形態による手持ち型装置は、対象の選択をより直観的にする。例えば、ボタンをクリックする代わりに、ユーザは画面の方へ、または画面から遠ざかって手持ち型装置を動かすことが可能である。普通の前方および後方の画面上のボタンの代わりに、例えば、ユーザは単にマウスを前方または後方に傾けることが可能である。
【００５５】
微小電子機械システム（ＭＥＭＳ）に基づく正確で低価格な加速度計の出現は、この技術を家庭の消費者へ持ち込むことを可能にする。回転角を測定するジャイロスコープと異なり、加速度計は線形加速度を測定する。従来の慣性航法は、それぞれ６自由度のために、３つのジャイロスコープおよび３つの加速度計に依存する。不運なことに、従来の慣性航法システムのコストおよび大きさは、消費者の手持ち型装置のためには法外である。この手持ち型装置の典型的な実施形態は、いつでもその位置および方向を測定するために３つの３次元加速度計の集合を用いる。しかし、加速度計の他の数量および配置を同じアルゴリズムとともに用いることが可能である。
【００５６】
この典型的な実施形態による手持ち型装置は、３点が１平面を決定する基礎的な幾何学の原理に基づく。追加の点は正確さを向上させるために付加することが可能である。３つの加速度計の全てに共通な加速度は手持ち型装置全体が加速している（ｘ，ｙ，またはｚにおける動き）を示す。加速度計の間の加速度の差は手持ち型装置の方向における変化（ヨー，ピッチ，またはロールにおける動き）を示す。
【００５７】
いくつかの原理が６自由度の加速度計に基づくシステムの実装を複雑にしている。第１に、加速度測定誤差は、位置を計算する加速度の二重積分のために２乗された位置測定誤差を生じる。第２に、重力は手持ち型装置の方向に対応して変化する定数加速度ベクトルであるので、重力ベクトルは正確に追跡されなければならない。測定誤差に関して、ＭＥＭＳ加速度計は必ずしも正確ではなく、かつ誤差は位置の計算に導入される。しかし、加速度における線形的な不正確さは重要ではない。位置の誤差が２乗されるが、この典型的な実施形態による装置は絶対座標系および相対座標系の両方を用いることが可能である。相対座標系について、（フィートまたはメートルで測定される）実際の移動距離は、例えば、マウスドライバに通常見られるような感度設定を用いて任意に調整することが可能である。しかし、平均してゼロにならない時間および温度にわたる非線形誤差（“ドリフト”としても知られ、ＭＥＭＳ加速度計の特性である）は、結果としてマウスの一定な加速度となる。適切な処理なしでは、静止している手持ち型装置のためのポインタは画面の外へ加速するように見える。未処理のアナログ加速度信号からデジタル表現に変換されるときに量子化は測定誤差を導入して計算をより困難にする。
【００５８】
本発明のこの典型的な実施形態による装置は、図１０に表わされているように加速度計の既知の誤差パターンを許容し、かつ訂正するために線形および非線形成分の両方を有するアルゴリズムを含む。その中で、加速度計データサンプル１０００は、例えば３×３行列で誤差フィルタリング機能１０１０に供給される。そして、フィルタリングされた値は、例えば、上述した典型的な実施形態に関して説明したように、スケールおよび／またはオフセットに対応する校正データに基づいて、ボルト／単位重力（Ｖ／ｇ）の単位から加速度（ｇ）の単位に変換される（ブロック１０２０）。それぞれブロック１０４０、１０５０によって計算された手持ち型装置の方向に対応する重力値および加速度誤差を減算することによってブロック１０３０において粗い加速度データが純化（refine）される。重力は、ユーザによって傾けられたときに手持ち型装置に対応して変化する定数加速度である。重力が実際の加速度として誤って読み取られると、画面上のポインタは無限に加速する。暴走するポインタは結果として使用できないユーザインタフェースとなる。この典型的な実施形態は、未処理の加速度計データを方向に処理するベクトル操作を用いる。そして、重力ベクトルが計算され、かつその結果から減算される。重力ベクトルの測定値からの誤差が計算され、かつ将来の測定値から減算される。そして、純化された加速度値は、手持ち型装置の配置に基づいてブロック１０６０において幾何学的に変換される。そして、ブロック１０６０の出力は、ブロック１０９０において加速度データに基づいて決定される実際の位置が計算される前に、位置誤差推定について訂正される（ブロック１０７０、１０８０）。そして、位置データは、速度情報として出力される前に、微分され（ブロック１１００）、かつブロック１１１０において非線形処理に従うことが可能である。幾何学変換器１０６０は方向判定器１１２０にデータを出力することが可能であり、方向判定器１１２０は、例えば上述したのと同様な方法で手持ち型装置の方向を判定して手持ち型装置の方向角の表示を出力するとともに、方向誤差推定器１０５０および重力ベクトル計算器１０４０に入力を供給する。
【００５９】
ブロック１１３０、１１４０によって示されているように、手持ち型装置を再校正するために通常のユーザインタフェース動作の利点を有するユーザ相互作用モードを選択的にアルゴリズムに組み込むことが可能である。例えば、ユーザは典型的に対象を選択または“クリック”する前にポインタを動かすことを止める。このモードにおいて、手持ち型装置のアルゴリズムは、重力および位置の両方について再校正入力を供給する特定の期間の間に表示度数の重み付けされた平均を用いる。
【００６０】
本発明のこの典型的な実施形態は、内蔵式の手持ち型装置で、またはホストマシンで、アルゴリズム処理が実行されることを可能とする。手持ち型装置とホストマシンとの間の接続は、限定しないが、無線、ブルートゥース（登録商標）、ジグビー（ZigBee）、赤外線を含む多数の技術のいずれか１つとすることが可能であり、そのうちいくつかが、それぞれ図１１および図１２における典型的なブロック図のハードウェアおよびソフトウェアプラットフォームに表わされている。内蔵式においては、手持ち型装置は処理された位置および方向の情報をホストに送信する。ホストマシンがアルゴリズム処理を実行するときは、手持ち型装置は未処理の加速度データをホストに送信する。図１３はアルゴリズムの観点から本発明のこの典型的な実施形態を表わす。その中で、グレーの三角形１３００はそのコーナーにおいて３つの加速度計（点）を有する手持ち型装置を表わす。加速度計は上述したように手持ち型装置の加速度を測定し、例えば矢印Ａ０〜Ａ３によって示される。軸の組１３０２、１３０４は局所的な手持ち型装置の現在の方向を表わし、かつそれぞれ、基準の任意の点に対応する。
【００６１】
上述した典型的な実施形態は、本発明を限定するのではなく、全ての面で本発明の説明であることを意図する。したがって、本発明は、この技術分野の当業者によってここに含まれる説明から導き出すことが可能な詳細な実装における多くの変形が可能である。例えば、上述した典型的な実施形態では、その中でも、装置の動きを検出するために慣性センサの使用を説明しているが、上述した信号処理に関して慣性センサに代えて、またはそれに加えて他の種類のセンサ（例えば、超音波、磁気、光）を用いることが可能である。そのような全ての変形および変更は、添付の特許請求の範囲によって定義されるように本発明の範囲および思想に含まれると考えられる。本願の記載に用いられた構成要素、動作、説明は、明示の説明がなければ本発明に重要または必須と解釈されるべきである。また、ここで用いられるように、冠詞”a”は１つまたは複数のアイテムを含むことを意図する。
【図面の簡単な説明】
【００６２】
【図１】娯楽システムのための従来のリモートコントロール装置を表わす。
【図２】本発明の典型的な実施形態が実装可能な典型的なメディアシステムを表わす。
【図３】本発明の典型的な実施形態による自由空間ポインティング装置を表わす。
【図４】２つの回転センサおよび１つの加速度計を含む自由空間ポインティング装置の切取内部図を表わす。
【図５】本発明の典型的な実施形態による自由空間ポインティング装置に関するデータの処理を表わすブロック図である。
【図６Ａ】傾きの影響を表わす。
【図６Ｂ】傾きの影響を表わす。
【図６Ｃ】傾きの影響を表わす。
【図６Ｄ】傾きの影響を表わす。
【図７】本発明の典型的な実施形態による自由空間ポインティング装置のハードウェアアーキテクチャを表わす。
【図８】本発明の典型的な実施形態による静止検出機構を表わす状態図である。
【図９】本発明のもう１つの典型的な実施形態に関する６自由度を表わす。
【図１０】本発明のもう１つの典型的な実施形態による加速度データを処理するためのアルゴリズムを表わす。
【図１１】図１０の典型的な実施形態による自由空間ポインティング装置のハードウェアアーキテクチャを表わす。
【図１２】図１０の典型的な実施形態による自由空間ポインティング装置のソフトウェアアーキテクチャを表わす。
【図１３】アルゴリズムの観点から図９および図１０の典型的な実施形態を表わす。
【符号の説明】
【００６３】
２００  集合メディアシステム
２１０  入力／出力バス
２１２  テレビ／モニタ
２１４  ビデオカセットレコーダ
２１６  デジタルビデオディスク録画／再生装置
２１８  オーディオ／ビデオチューナ
２２０  コンパクトディスクプレーヤ
２２２  マイクロホン／スピーカシステム
２２４  ビデオカメラ
２２６  無線Ｉ／Ｏ制御装置
２２８  システムコントローラ
２３０  ケーブル放送
２３２  衛星放送
２３４  放送テレビ網
２３６  電話網
２３８  ケーブルモデム
４００  自由空間ポインティング装置
４０２、４０４  ボタン
４０６  スクロールホィール
４０８  ディスプレイ
４１０  カーソル
５０２、５０４  回転センサ
５０６  加速度計
６００  処理モデル
６０２  サンプリングされた加速度計出力
６０４  変換機能
６０６  加速度校正ブロック
６０８  静止検出機能
６１０  利得行列
６１２  サンプリングされた回転センサデータ
６１８  回転校正機能
６１９  温度センサ
６２０  回転機能
６２２  傾き判定機能
６２４  ＬＰＦ
８００  プロセッサ
８０２  スクロールホィール
８０４  ＪＴＡＧ
８０６  ＬＥＤ
８０８  スイッチマトリックス
８１０  赤外線光検出器
８１２  回転センサ
８１４  加速度計
８１６  送受信器
１０００  加速度計データサンプル
１０１０  誤差フィルタリング機能
１０４０  重力ベクトル計算器
１０５０  方向誤差推定器
１０６０  幾何学変換器
１１２０  方向判定器
【図１】
2007509448.tif 000006
【図２】
2007509448.tif 000007
【図３】
2007509448.tif 000008
【図４】
2007509448.tif 000009
【図５】
2007509448.tif 000010
【図６Ａ】
2007509448.tif 000011
【図６Ｂ】
2007509448.tif 000012
【図６Ｃ】
2007509448.tif 000013
【図６Ｄ】
2007509448.tif 000014
【図７】
2007509448.tif 000015
【図８】
2007509448.tif 000016
【図９】
2007509448.tif 000017
【図１０】
2007509448.tif 000018
【図１１】
2007509448.tif 000019
【図１２】
2007509448.tif 000020
【図１３】
2007509448.tif 000021
【手続補正書】
【提出日】平成18年6月22日(2006.6.22)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、メディアアイテム（media item）を組織化し、選択し、および送り出すためのフレームワーク（framework）を含む多数の異なるアプリケーションにおいて使用可能な３Ｄポインティング装置を説明する。
【０００２】
本願は、発明の名称を「加速度計を用いたユーザインタフェース装置」とし、２００３年１０月２３日に出願された米国仮特許出願第６０／５１３，８６９号明細書に関連し、かつ当該出願による優先権を主張し、当該出願の開示は引用してここに組み込まれる。また、本願は、発明の名称を「自由空間ポインティング装置」とし、２００４年４月３０日に出願された米国仮特許出願第６０／５６６，４４４号明細書に関連し、かつ当該出願による優先権を主張し、当該出願の開示は引用してここに組み込まれる。さらに、本願は、発明の名称を「自由空間ポインティング装置および方法」とし、２００４年９月２３日に出願された米国仮特許出願第６０／６１２，５７１号明細書に関連し、かつ当該出願による優先権を主張し、当該出願の開示は引用してここに組み込まれる。
【背景技術】
【０００３】
情報通信に関する技術は、最近数十年にわたって急速に発展してきた。（ほんのいくつかを挙げると）テレビ、携帯電話、インターネットおよび光通信技術が結合して消費者に利用可能な情報および娯楽の選択肢が氾濫している。テレビを例にとると、最近３０年は、ケーブルテレビサービス、衛星テレビサービス、ペイパービュー映画およびビデオオンデマンドの導入が見られた。１９６０年代のテレビ視聴者は典型的に彼らのテレビ受像機で恐らく４または５の地上波ＴＶチャンネルを受信することができたが、今日のＴＶ視聴者は数百、数千、潜在的に数百万の番組および情報のチャンネルから選択する機会を有する。現在、主にホテル等で使用されているビデオオンデマンド技術は、数千の映画タイトルの中から構内での娯楽を選択する可能性を提供する。
【０００４】
エンドユーザにたくさんの情報およびコンテンツを提供する技術的能力は、システム設計者およびサービス提供者に好機と難題の両方を与える。１つの難題は、エンドユーザは典型的に少ないよりむしろ多くの選択肢を有することを好むが、この好みは選択手順が早くかつ簡単であるという彼らの望みとつりあわされる。不運なことに、エンドユーザがそれによってメディアアイテムにアクセスするシステムおよびインタフェースの開発は、早くなく簡単でもない選択手順に帰着した。テレビ番組の例を再び考察する。テレビがその初期にあったとき、視聴する番組を決定することは、主として選択肢が少数のために比較的簡単な手順であった。視聴者は、例えば、（１）隣接するテレビチャンネル、（２）それらのチャンネルで放送される番組、（３）日付および時刻、の間の対応を示す一連の列および行として配列された、印刷されたガイドを調べた。テレビはチューナのつまみを調節することによって所望のチャンネルに合わされ、視聴者は選択された番組を視聴した。後に、視聴者が離れてテレビのチャンネルを合わせることを可能とするリモートコントロール装置が導入された。このユーザ・テレビ間のインタフェースの追加は、いつでもどのような番組が視聴できるかを手早く知るために、視聴者が多数のチャンネルで放送される短い部分を素早く見ることができる“チャンネルサーフィン”として知られる現象を生み出した。
【０００５】
チャンネルの数および視聴可能なコンテンツの量が劇的に増加したという事実にもかかわらず、一般に利用可能なテレビのためのユーザインタフェース、制御装置の選択肢およびフレームワークは最近３０年にわたってあまり変化していない。印刷されたガイドがいまだに番組情報を伝達するための最も普及した手段である。上下の矢印を有する複数ボタンのリモートコントロール装置がいまだに最も普及したチャンネル／コンテンツの選択手段である。利用可能なメディアコンテンツの増加に対するＴＶユーザインタフェースを設計および実装する者の反応は、既存の選択手順およびインタフェース対象の直接的な拡張であった。したがって、印刷されたガイドにおける行の数はより多くのチャンネルを収容するために増加した。リモートコントロール装置のボタンの数は、例えば図１に表わされているように追加機能およびコンテンツ操作をサポートするために増加した。しかし、このアプローチは、視聴者が利用可能な情報を調べるために要求される時間と、選択を実行するために要求される動作の複雑さとの両方を著しく増加させた。議論の余地はあるが、消費者は既に遅すぎ複雑すぎるものと考えるインタフェースに複雑さを追加する新たなサービスには抵抗があるので、既存のインタフェースの厄介な特質は例えばビデオオンデマンドのようないくつかのサービスの商業的な実施を阻害してきた。
【０００６】
帯域およびコンテンツの増加に加えて、ユーザインタフェースのボトルネックの問題は、技術の集合によって悪化している。消費者は多数の分離された構成品よりも統合されたシステムを購入する選択肢を受け入れることに積極的に反応している。この傾向の例は、以前の３つの独立した構成品を有する組み合わせのテレビ／ＶＣＲ／ＤＶＤが統合された装置として今日頻繁に販売されている。この傾向は潜在的に、現在家庭で見られる通信機器の全てではなくてもほとんどが、例えばテレビ／ＶＣＲ／ＤＶＤ／インターネットアクセス／ラジオ／ステレオ装置のように統合された装置として一緒に組み合わされる結果へと続くものと考えられる。分離された構成品を購入し続ける者でさえ、分離された構成品のシームレスな制御および分離された構成品間の相互接続をたいていは望む。この増加する集合体とともに、ユーザインタフェースがより複雑となる可能性が生じる。例えば、ＴＶリモート装置およびＶＣＲリモート装置の機能を結合して、例えば、いわゆる“万能”リモート装置が導入されると、これらの万能リモート装置のボタン数は典型的にＴＶリモート装置またはＶＣＲリモート装置のいずれか単体のボタン数より多くなる。このボタンおよび機能の追加された数は、遠隔において正確に正しいボタンを探し出すことができず、ＴＶまたはＶＣＲの最も簡単な側面以外を制御することを大変困難にしている。多くの場合、これらの万能リモート装置は、ある種のＴＶに固有の多くの制御レベルまたは特徴にアクセスするために十分なボタンを提供しない。これらの場合、集合体の複雑さから生じるユーザインタフェースの問題のために、元のリモート装置がいまだに必要とされ、かつ複数のリモート装置を扱う元の厄介な問題が残されている。あるリモート装置は、専門のコマンドを用いてプログラムすることができる“ソフト”ボタンを追加することによってこの問題に取り組んできた。これらのソフトボタンは、時々、その動作を示す添付のＬＣＤディスプレイを有する。これらもまた、ＴＶから目をそらしてリモートコントロール装置を見ることなく使用することが困難であるという欠点を有する。これらのリモート装置のさらにもう１つの欠点は、ボタン数を削減する試みにおいてモードを用いることである。これらの“モード”を有する万能リモート装置には、リモート装置がＴＶ、ＤＶＤプレーヤー、ケーブルセットトップボックス、ＶＣＲ等のいずれと通信するかを選択するための特別なボタンが存在する。これは、間違った装置にコマンドを送信すること、正しいモードであるかを確認するためにユーザにリモート装置を見るように強いること、複数の装置の統合に簡素化を提供しないことを含む多くの使い勝手の問題を引き起こす。これらの万能リモート装置の最も進歩したものは、複数の機器へのコマンド列をリモート装置にプログラムすることをユーザに可能とすることによっていくらかの統合を提供する。これはたいへん難しい作業であるので、多くのユーザは専門の設置者に彼らの万能リモート装置をプログラムさせている。
【０００７】
また、エンドユーザとメディアシステムとの間のスクリーンインタフェースを現代的にするためのいくつかの試みがされてきた。しかし、これらの試みは、典型的に、メディアアイテムの大きな集合とメディアアイテムの小さな集合との間で容易に除去することができない他の欠点に苦労している。例えば、アイテムのリストに依存するインタフェースは、メディアアイテムの小さな集合について十分に機能することが可能であるが、メディアアイテムの大きな集合を閲覧するためには冗長である。階層的な操縦（例えば、ツリー構造）に依存するインタフェースは、メディアアイテムの大きな集合のためのリストインタフェースよりも行き来することがより高速でありうるが、メディアアイテムの小さな集合には容易に適用することができない。さらに、ユーザは、ツリー構造において３つまたはそれ以上の階層を通して移動しなければならない選択手順において興味を失う傾向がある。これらの全ての場合について、現在のリモート装置は、リストまたは階層を操縦するためにユーザに繰り返し上下ボタンを押すことを強いることによって選択手順をより一層冗長にしている。ページアップおよびページダウンのような選択スキップ制御が利用可能であるとき、ユーザは一般にこれらの特別なボタンを見つけるためにリモート装置を見なければならないか、またはそれらが存在することを知るように訓練されていなければならない。
【０００８】
この明細書における固有の関心事は、他のアプリケーションおよびシステムとともにそのようなフレームワークと相互作用するために使用可能なリモート装置である。上記で組み込まれた出願で述べたように、例えば、トラックボール、“マウス”型ポインティング装置、ライトペン等を含むそのようなフレームワークとともに各種の異なるタイプのリモート装置を用いることが可能である。しかし、そのようなフレームワーク（および他のアプリケーション）とともに用いることが可能であるもう１つのリモート装置のカテゴリーは３Ｄポインティング装置である。語句“３Ｄポインティング”は、例えばディスプレイ画面の前の空中における３次元（またはより大きい次元）において動く入力装置の機能、およびそれらの動きを直接にユーザインタフェースコマンド、例えばディスプレイ画面のカーソルの動きに変換するユーザインタフェースの付随する機能を指すために、この明細書において用いられる。３Ｄポインティング装置との間のデータの伝達は、３Ｄポインティング装置をもう１つの装置と無線でまたは有線を介して接続して実行することが可能である。したがって、“３Ｄポインティング”は、マウスの相対的な動きがコンピュータディスプレイ画面上のカーソルの動きに変換される代用の表面として、例えば机の表面またはマウスパッドのような表面を用いる例えば従来のコンピュータマウスポインティング技術とは異なる。３Ｄポインティング装置の例は米国特許第５，４４０，３２６号明細書において見つけることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
‘３２６特許は、その中でも、コンピュータのディスプレイ上のカーソルの位置を制御するためのポインティング装置として用いるために採用された垂直ジャイロスコープを開示する。ジャイロスコープのコアにおけるモーターは、手持ち型のコントローラ装置から２組の直交するジンバルによって吊り下げられ、かつ公称で振子装置によって垂直なスピン軸に合わせて配置されている。電気光学軸角エンコーダはユーザによって操作されるにしたがって手持ち型コントローラ装置の方向を検出し、かつ結果の電気出力はコンピュータディスプレイ画面上のカーソルの動きを制御するためにコンピュータによって使用可能な形式に変換される。しかし、コスト効果が高く、正確かつユーザフレンドリな３Ｄポインティング装置のニーズが存在し続けている。
【課題を解決するための手段】
【００１０】
本発明によるシステムおよび方法は、３Ｄポインティング装置、および、３Ｄポインティング装置の動きのユーザインタフェースコマンドへの、例えばカーソルの動きへの正確な変換を提供する３Ｄポインティングのための方法を提供することによって、これらのニーズおよび他に取り組む。本発明の典型的な実施形態によれば、３Ｄポインティング装置は複数の加速度計を含む。
【００１１】
本発明の典型的な一実施形態によれば、手持ち型のユーザインタフェース装置は複数の加速度計を含み、各加速度計は装置の動きに対応する加速度データを供給し、加速度データを２次元のカーソルの動きのデータが生成可能なデータに変換するための処理装置をさらに含み、処理装置はさらに手持ち型のユーザインタフェース装置がいつ静止したかを決定するために加速度データを処理し、かつ手持ち型のユーザインタフェース装置が静止しているときに手持ち型のユーザインタフェース装置を再校正する。
【発明を実施するための最良の形態】
【００１２】
添付図面は本発明の典型的な実施形態を表わす。
以下の本発明の詳細な説明は添付図面を参照する。異なる図面の同一の参照番号は、同一または類似の構成要素を識別する。また、以下の詳細な説明は本発明を限定しない。その代わりに、本発明の範囲は添付の特許請求の範囲によって定義される。
【００１３】
この説明のためのいくつかの場面を提供するために、まず、本発明が実装可能な典型的な集合メディアシステム２００が図２に関して説明される。しかし、この技術分野の当業者は、本発明がこのタイプのメディアシステムにおける実装に限定されず、かつその中により多いまたはより少ない構成品が含まれうることを理解する。その中で、入力／出力（Ｉ／Ｏ）バス２１０はメディアシステム２００におけるシステムの構成品を相互に接続する。Ｉ／Ｏバス２１０は、メディアシステムの構成品の間で信号を送信するための多数の様々な仕組みおよび技術のいずれかを表わす。例えば、Ｉ／Ｏバス２１０は、オーディオ信号を送信する適切な数の独立のオーディオ“パッチ”ケーブル、ビデオ信号を送信する同軸ケーブル、制御信号を送信する２線シリアルラインまたは赤外線または無線周波数送受信器、光ファイバ、または他の種類の信号を送信する他のどのような送信の仕組みも含むことが可能である。
【００１４】
この典型的な実施形態において、メディアシステム２００は、Ｉ／Ｏバス２１０に接続された、テレビ／モニタ２１２、ビデオカセットレコーダ（ＶＣＲ）２１４、デジタルビデオディスク（ＤＶＤ）録画／再生装置２１６、オーディオ／ビデオチューナ２１８、コンパクトディスクプレーヤ２２０を含む。ＶＣＲ・２１４、ＤＶＤ・２１６、コンパクトディスクプレーヤ２２０は、単一のディスクまたは単一のカセット装置とすることが可能であり、またはその代わりに、複数のディスクまたは複数のカセット装置とすることが可能である。それらは独立の装置とするか、または、一緒に統合されることが可能である。さらに、メディアシステム２００は、マイクロホン／スピーカシステム２２２、ビデオカメラ２２４、無線Ｉ／Ｏ制御装置２２６を含む。本発明の典型的な実施形態によれば、無線Ｉ／Ｏ制御装置２２６は、以下で説明される典型的な実施形態の１つによる３Ｄポインティング装置である。無線Ｉ／Ｏ制御装置２２６は、例えば赤外線または無線の送信器または送受信器を用いて娯楽システム２００と通信することが可能である。その代わりに、Ｉ／Ｏ制御装置は、有線を介して娯楽システム２００に接続されることが可能である。
【００１５】
また、娯楽システム２００はシステムコントローラ２２８を含む。本発明の典型的な一実施形態によれば、システムコントローラ２２８は、娯楽システムの複数のデータソースから入手可能な娯楽システムデータを記憶および表示し、かつシステムの各構成品に関する幅広く多様な機能を制御するために動作する。図２に表わされているように、システムコントローラ２２８は、必要ならばＩ／Ｏバス２１０を通して、システムの各構成品に直接または間接に接続される。典型的な一実施形態において、Ｉ／Ｏバス２１０に加えて、または、Ｉ／Ｏバス２１０の代わりに、システムコントローラ２２８は、赤外線信号または無線信号を介してシステムの構成品と通信することが可能な無線通信送信器（または送受信器）とともに構成される。制御メディアに関係なく、システムコントローラ２２８は以下で説明されるグラフィカルユーザインタフェースを介してメディアシステム２００のメディア構成品を制御するように構成される。
【００１６】
さらに図２に表わされているように、メディアシステム２００は各種のメディアのソースおよびサービス提供者からメディアアイテムを受信するように構成することが可能である。この典型的な実施形態において、メディアシステム２００は、次のソース、すなわち、ケーブル放送２３０、（例えば衛星アンテナを介して）衛星放送２３２、（例えばアンテナを介して）放送テレビ網２３４の超短波（ＶＨＦ）または極超短波（ＵＨＦ）の無線周波数通信、電話網２３６、ケーブルモデム２３８（またはインターネットコンテンツの他のソース）のいずれかまたは全てからのメディア入力を受信し、かつ選択的に上記ソースのいずれかまたは全てに情報を送信する。この技術分野の当業者は、図２に関して表わされ、かつ説明されたメディアの構成品およびメディアのソースは単に例であり、かつメディアシステム２００はその両方について、より多くまたは少なく含むことが可能である。例えば、システムへの他のタイプの入力はＡＭ／ＦＭラジオおよび衛星ラジオを含む。
【００１７】
この典型的な娯楽システムおよびそれに対応するフレームワークに関するより詳細は、上記で引用して組み込まれた米国特許出願“メディアアイテムを組織化し、選択し、および送り出すためのズーム可能なグラフィカルユーザインタフェースを有する制御フレームワーク”において見ることができる。その代わりに、本発明に従うリモート装置は他のシステム、例えば、ディスプレイ、プロセッサ、メモリシステム、または他の各種のシステムおよびアプリケーションを含むコンピュータシステムと結合することが可能である。
【００１８】
背景技術の欄で述べたように、３Ｄポインタとして動作するリモート装置は本明細書における固有の関心事である。そのような装置は動き、例えばジェスチャーをユーザインタフェースへのコマンドに変換することを可能とする。典型的な３Ｄポインティング装置４００は図３に表わされている。その中で３Ｄポインティングのユーザの動きは、例えば、３Ｄポインティング装置４００のｘ軸の周りの姿勢（attitude）（ロール（roll））、ｙ軸の周りの仰角（elevation）（ピッチ（pitch））および／またはｚ軸の周りの向き（heading）（ヨー（yaw））の動きの組み合わせによって定義することが可能である。さらに、本発明のある典型的な実施形態は、カーソルの動きまたは他のユーザインタフェースコマンドを生成するために、ｘ、ｙ、ｚ軸に沿って３Ｄポインティング装置４００の線形的な動きを測定することが可能である。他の典型的な実施形態は他の物理的な構成を含むが、図３の典型的な実施形態においては、３Ｄポインティング装置４００はスクロールホィール４０６とともに２つのボタン４０２、４０４を含む。本発明の典型的な実施形態によれば、３Ｄポインティング装置４００はディスプレイ４０８の前でユーザが持ち、かつ３Ｄポインティング装置４００の動きは、３Ｄポインティング装置４００によって、ディスプレイ４０８に表示される情報と相互作用するために、例えばディスプレイ４０８上のカーソル４１０を動かすために使用可能である出力に変換されることが期待される。例えば、３Ｄポインティング装置４００のｙ軸の周りの回転は３Ｄポインティング装置４００によって検出することが可能であり、かつディスプレイ４０８のｙ２軸に沿ってカーソル４１０を動かすためにシステムによって使用可能な出力に変換される。同様に、３Ｄポインティング装置４００のｚ軸の周りの回転は３Ｄポインティング装置４００によって検出することが可能であり、かつディスプレイ４０８のｘ２軸に沿ってカーソル４１０を動かすためにシステムによって使用可能な出力に変換される。３Ｄポインティング装置４００の出力は、カーソルの動き以外の（またはカーソルの動きに加えて）多くの方法において、ディスプレイ４０８と相互作用するために使用可能であることが理解される。例えば、カーソルのフェーディング、ボリューム、メディア伝達（再生、一時停止、早送り、巻き戻し）を制御することが可能である。入力コマンドはカーソルの動きに加えた操作、例えば、ディスプレイの特定の領域のズームイン、ズームアウトを含むことが可能である。カーソルは可視または不可視とすることが可能である。同様に、３Ｄポインティング装置４００のｘ軸の周りに検出された３Ｄポインティング装置４００の回転は、ユーザインタフェースへの入力を供給するためにｙ軸および／またはｚ軸の周りの回転に加えて、またはその代わりとして用いることが可能である。
【００１９】
本発明の典型的な一実施形態によれば、２つの回転センサ５０２、５０４および１つの加速度計５０６は、図４に表わされているように３Ｄポインティング装置４００におけるセンサとして用いることが可能である。回転センサ５０２、５０４は、例えば、Analog Devices社によって製造されたADXRS150センサを用いて実装することが可能である。この技術分野の当業者は、回転センサ５０２、５０４として他の種類の回転センサを用いることが可能であり、かつADXRS150は単に説明のための例として用いられていることを理解する。従来のジャイロスコープと異なり、ADXRS150回転センサは、一方向のみに沿って共振しうるようにフレームに取り付けられた共振性のマス（resonating mass）を提供するMEMS技術を用いる。共振性のマスは、センサが固定された本体が、センサの検出軸の周りに回転したときに変位（displace）する。この変位は検出軸に沿った回転に対応する角速度を決定するためにコリオリの加速度効果を用いて測定することが可能である。回転センサ５０２、５０４が１つの検出軸を有するならば（ADXRS150の例に関しては）、それらの検出軸は測定される回転に向きが調整されるように３Ｄポインティング装置４００に配置することが可能である。これは、本発明のこの典型的な実施形態において、図４に表わされているように、回転センサ５０２はその検出軸がｙ軸に平行であるように配置され、かつ回転センサ５０４はその検出軸がｚ軸に平行であるように配置されることを意味する。しかし、本発明の典型的な実施形態は軸の間のオフセットを補償するための技術も提供するので、回転センサ５０２、５０４の検出軸を所望の測定軸に平行に配置することは要求されないことに留意すべきである。
【００２０】
本発明に従う典型的な３Ｄポインティング装置４００の実装において取り組まれる１つの目標は、高価すぎないが、同時に、３Ｄポインティング装置４００の動きと、３Ｄポインティング装置の特定の動きにユーザインタフェースがどのように反応するかに関するユーザの期待と、その動きに反応する実際のユーザインタフェースの性能との間に高度の相関関係を提供する構成品、例えば回転センサ５０２、５０４を用いることである。例えば、３Ｄポインティング装置４００が動いていないならば、ユーザはカーソルが画面を横切って流れないことを期待すると考えられる。同様に、ユーザが単にｙ軸の周りに３Ｄポインティング装置４００を回転するならば、ユーザは結果としてかなりのｘ２軸成分を含むディスプレイ４０８上のカーソルの動きを見ることを期待しないと考えられる。これらを達成するために、本発明の典型的な実施形態の他の構成は、センサ５０２、５０４、５０６の１つまたは複数の出力を調整するために用いられ、および／または、センサ５０２、５０４、５０６の出力に基づくユーザインタフェースのための適切な出力を決定するためにプロセッサによって用いられる入力の一部として、各種の測定および計算が手持ち型装置４００によって実行される。これらの測定および計算は、（１）３Ｄポインティング装置４００に固有な要因、例えば、装置４００において用いられる特定のセンサ５０２、５０４、５０６、または、装置４００においてセンサが配置される仕方に関する誤差、および、（２）３Ｄポインティング装置４００に固有でないが、ユーザが３Ｄポインティング装置４００を使用する仕方に関する要因、例えば、線形加速度、傾き（tilt）、震え（tremor）、の広くは２つのカテゴリーに含まれる要因を補償するために用いられる。これらの各々の影響を処理する典型的な技術は以下で説明される。
【００２１】
本発明の典型的な実施形態による３Ｄポインティング装置の一般的な動作を説明する処理モデル６００が図５に表わされている。加速度計５０６とともに回転センサ５０２、５０４は、周期的に、例えば２００サンプル／秒でサンプリングされたアナログ信号を生成する。この説明の目的のために、これらの入力の集合は表記（ｘ，ｙ，ｚ，αｙ，αｚ）を用いて参照され、ｘ，ｙ，ｚは典型的な３軸の加速度計５０６のサンプリングされた出力値であり、それぞれｘ軸、ｙ軸、ｚ軸の方向における３Ｄポインティング装置の加速度に対応し、αｙはｙ軸の周りの３Ｄポインティング装置の回転に対応する回転センサ５０２からのサンプリングされた出力値であり、αｚはｚ軸の周りの３Ｄポインティング装置４００の回転に対応する回転センサ５０４からのサンプリングされた出力値である。
【００２２】
加速度計５０６からの出力が供給され、加速度計５０６がアナログ出力を供給するならば、その出力は、サンプリングされた加速度計出力６０２を生成するために、（図示しない）Ａ／Ｄコンバータによってサンプリングされ、かつデジタル化される。サンプリングされた出力値は、変換機能６０４によって示されているように、未処理の単位から加速度の単位、例えば重力（ｇ）に変換される。加速度校正ブロック６０６は、変換機能６０４のために使用される値を供給する。加速度計出力６０２の校正は、例えば、加速度計５０６に関するスケール、オフセット、軸の調整不良誤差の１つまたは複数の補償を含むことが可能である。加速度計データのための典型的な変換は次の等式を用いて実行することが可能である。
Ａ＝Ｓ＊（（Ｍ−Ｐ）．＊Ｇ（Ｔ））                    （１）
ここで、Ｍはサンプリングされた出力値（ｘ，ｙ，ｚ）からなる３×１列ベクトル、Ｐはセンサオフセットの３×１列ベクトル、Ｓはスケール、軸の調整不良、センサの回転補償のいずれも含む３×３行列である。Ｇ（Ｔ）は温度の関数である利得係数である。演算子“＊”は行列の乗算を表わし、演算子“．＊”は要素の乗算を表わす。典型的な加速度計５０６は、＋／−２ｇの典型的なフルレンジを有する。センサオフセットＰはセンサ出力を表わし、Ｍは０ｇの加速度計の測定値を表わす。スケールはサンプリングされた単位の値とｇとの間の変換係数を表わす。どのような与えられた加速度計センサの実際のスケールも、例えば、製造上の差異のために、これらの公称のスケール値から外れる可能性がある。したがって、上記の等式におけるスケール要素はこの偏差に比例する。
【００２３】
加速度計５０６のスケールおよびオフセットの偏差は、例えば、１つの軸に沿って１ｇの力をかけ、その結果のＲ１を測定することによって測定することが可能である。そして−１ｇの力がかけられ、結果として測定値Ｒ２となる。個々の軸のスケールｓ、個々の軸のオフセットｐは次のように計算することができる。
ｓ＝（Ｒ１−Ｒ２）／２                    （２）
ｐ＝（Ｒ１＋Ｒ２）／２                    （３）
この簡単な例において、Ｐは各軸についてのｐの列ベクトル、Ｓは各軸についての１／ｓの対角行列である。
【００２４】
しかし、スケールおよびオフセットに加えて、加速度計５０６によって生成された表示度数は軸交差の影響による難点がある。軸交差の影響は未調整の軸を含み、例えば、３Ｄポインティング装置４００に搭載されたときに加速度計５０６の検出軸の１つまたは複数が慣性座標系における対応する軸と調整されていないか、または加速度計５０６自体の機械加工に関する機械的誤差、例えば、たとえ軸が正しく調整されても、純粋なｙ軸の加速度の力が加速度計５０６のｚ軸に沿ったセンサ表示度数となる結果となる可能性がある。これらの両方の影響は測定され、かつ機能６０６によって実行される校正に与えることが可能である。
【００２５】
加速度計５０６は、本発明の典型的な実施形態による典型的な３Ｄポインティング装置においていくつかの目的を果たす。例えば、回転センサ５０２、５０４は上述した典型的なコリオリ効果の回転センサを用いて実装されるならば、回転センサ５０２、５０４の出力は各回転センサによって感知された線形加速度に基づいて変化する。したがって、加速度計５０６の１つの典型的な使用は、線形加速度における変動によって引き起こされる、回転センサ５０２、５０４によって生成される表示度数における揺らぎを補償するためのものである。これは、変換された加速度計の表示度数を利得行列６１０と乗算し、かつその結果を対応するサンプリングされた回転センサデータ６１２から減算する（または、その結果を対応するサンプリングされた回転センサデータ６１２に加算する）ことによって、達成することが可能である。例えば、回転センサ５０２からのサンプリングされた回転データαｙは、次のようにブロック６１４において線形加速度を補償することが可能である。
αｙ’＝αｙ−Ｃ＊Ａ                    （４）
ここで、Ｃは単位量／ｇで与えられた各軸に沿った線形加速度への回転センサの感受性の１×３行ベクトル、Ａは校正された線形加速度である。同様に、回転センサ５０４からのサンプリングされた回転データαｚのための線形加速度の補償はブロック６１４において提供することが可能である。利得行列Ｃは、製造上の差異のために回転センサの間で異なる。Ｃは多数の回転センサの平均値を用いて計算することが可能であり、各回転センサために専用に計算することが可能である。
【００２６】
加速度計データのように、サンプリングされた回転データ６１２は、機能６１６において、サンプリングされた単位の値から回転角速度、例えばラジアン／秒に対応する値に変換される。この変換ステップは、例えばスケールおよびオフセットについてサンプリングされた回転データを補償するために機能６１８によって提供される校正を含む。αｙおよびαｚの両方のための変換／校正は、例えば次の等式を用いて達成することが可能である。
α rad/s＝（α’−offset（Ｔ））＊scale＋dOffset                    （５）
ここで、α’は変換／校正される値を表わし、offset（Ｔ）は温度に対応するオフセット値を表わし、scaleはサンプリングされた単位の値とrad/sとの間の変換係数を表わし、dOffsetは動的なオフセット値を表わす。等式（５）は、scaleを除いて全ての変数がベクトルである行列の等式として与えることも可能である。行列の等式の形式において、スケールは、軸の調整不良および回転オフセットの要素を訂正する。これらの各変数は以下でより詳しく説明される。
【００２７】
オフセット値offset（Ｔ）およびdOffsetは多数の異なる方法で決定することが可能である。３Ｄポインティング装置４００が例えばｙ軸方向において回転されないとき、センサ５０２はそのオフセット値を出力する。しかし、オフセットは温度によって大きく影響されうるので、このオフセット値は変化すると考えられる。オフセットの温度校正は工場で実行することが可能であり、この場合、offset（Ｔ）についての値は手持ち型装置４００にプログラムするか、またはその代わりに、オフセットの温度校正は装置の存続期間の間に動的に感知することが可能である。動的なオフセット補償を達成するために、温度センサ６１９からの入力は、offset（Ｔ）についての現在の値を計算するために回転校正機能６１８において用いられる。offset（Ｔ）のパラメータは、センサの表示度数からオフセットバイアスの大部分を除去する。しかし、ゼロの動きにおいてほとんど全てのカーソルのドリフトを無効にすることは、高性能のポインティング装置を作り出すために有効でありうる。したがって、追加の要素dOffsetは、３Ｄポインティング装置４００を使用しながら動的に計算することが可能である。静止検出機能６０８は、手持ち型装置がいつほとんど静止したか、いつオフセットが再計算されるべきかを判定する。そこで、他の使用とともに静止検出機能６０８を実装するための典型的な技術が以下で説明される。
【００２８】
dOffset計算の典型的な実装は、ローパスフィルタされた、校正されたセンサ出力を使用する。静止検出機能６０８は、例えば、ローパスフィルタ出力の平均の計算を引き起こすために回転校正機能６１８に指示を与える。また、静止検出機能６０８は、dOffsetについての既存の値に新たに計算された平均をいつ要因の１つとして含めるかを制御することが可能である。この技術分野の当業者は、dOffsetの既存の値からdOffsetの新たな値を計算するために多数の異なる技術を用いることが可能であり、かつ新たな平均は、限定しないが単なる平均、ローパスフィルタリング、カルマンフィルタリングを含むことを理解する。さらに、この技術分野の当業者は、回転センサ５０２、５０４のオフセット補償のための非常にたくさんの変形を用いることが可能であることを理解する。例えば、offset（Ｔ）関数は定数値（例えば、温度に対して不変）を有することが可能であり、２つ以上のオフセット補償値を用いることが可能であり、および／または、ただ１つのオフセット値がオフセット補償のために計算され／用いられることが可能である。
【００２９】
ブロック６１６における変換／校正の後、回転センサ５０２、５０４からの入力はさらにそれらの入力を慣性座標系に回転させるために、すなわち、機能６２０においてユーザの３Ｄポインティング装置４００の持ち方に対応する傾きを補償するために、処理することが可能である。傾き訂正は、本発明による３Ｄポインティング装置の使用形態における差異を補償することを意図するので、本発明のある典型的な実施形態のもう１つの重要な構成である。より詳しくは、本発明の典型的な実施形態による傾き訂正は、ユーザが異なるｘ軸の回転位置においてユーザの手にポインティング装置を持っているが、３Ｄポインティング装置４００における回転センサ５０２、５０４の検出軸は固定されているという事実を補償するために意図される。ディスプレイ４０８にわたるカーソル変換は、ユーザの３Ｄポインティング装置４００の握り方に実質的に影響を受けないことが望ましい。例えば、ユーザが３Ｄポインティング装置４００を持っている方向に関係なく、ディスプレイ４０８の水平次元（ｘ２軸）に概して対応するように３Ｄポインティング装置４００を左右に回転させることは、結果としてｘ２軸に沿ったカーソル変換となるべきであり、一方、ディスプレイ４０８の垂直次元（ｙ２軸）に概して対応するように３Ｄポインティング装置を上下に回転させることは、結果としてｙ２軸に沿ったカーソル変換となるべきである。
【００３０】
本発明の典型的な実施形態による傾き補償の必要性をよりよく理解するために、図６Ａに表わされている例を考える。その中で、ユーザは、０度のｘ軸回転値を有するものとして定義することが可能な典型的な慣性座標系において３Ｄポインティング装置４００を持っている。慣性座標系は、純粋に例として、図６Ａに表わされている方向に対応することが可能であり、また、任意の他の方向として定義することが可能である。ｙ軸またはｚ軸方向のいずれかにおける３Ｄポインティング装置４００の回転は、それぞれ回転センサ５０２、５０４によって検出される。例えば、図６Ｂに表されているように、量Δｚによるｚ軸の周りの３Ｄポインティング装置４００の回転は、結果としてディスクプレイ４０８を横切るｘ２軸の次元における対応するカーソル変換Δｘ２（すなわち、点線で表したカーソル４１０と点線でないものとの間の距離）となる。
【００３１】
一方、ユーザが異なる方向において、例えば、慣性座標系に対してある量のｘ軸回転を有して、３Ｄポインティング装置４００を持つならば、センサ５０２、５０４によって提供される情報は、（傾き補償がなく）ユーザの意図するインタフェース動作の正確な表現を提供しない。例えば、図６Ｃを参照して、図６Ａに表されたような典型的な慣性座標系に対して４５度のｘ軸回転を有してユーザが３Ｄポインティング装置４００を持つ状態を考える。ユーザによる同じｚ軸回転Δｚを仮定すると、代わりにカーソル４１０は図６Ｄに表されたようにｘ２軸方向およびｙ２軸方向の両方において変換される。これは回転センサ５０２の検出軸が、（ユーザの手における装置の方向のために）ここではｙ軸およびｚ軸の間に方向付けられているという事実による。同様に、回転センサ５０４の検出軸は（異なる四分円においてであるが）ｙ軸およびｚ軸の間に方向付けられている。３Ｄポインティング装置４００がどのように持たれているかに関してユーザに透過的であるインタフェースを提供するために、本発明の典型的な実施形態による傾き補償は、これらのセンサからの表示度数を３Ｄポインティング装置４００の回転動作を示す情報への処理の一部として、回転センサ５０２、５０４からの表示度数の出力を慣性座標系に戻す変換をする。
【００３２】
図５に戻り、本発明の典型的な実施形態によれば、これは機能６２２において加速度計５０６から受信した入力ｙおよびｚを用いて３Ｄポインティング装置４００の傾きを判定することによって達成することが可能である。より詳しくは、加速度データが上述したように変換され校正された後、平均の加速度（重力）の値を傾き判定機能６２２に供給するためにＬＰＦ・６２４においてローパスフィルタすることが可能である。そして、機能６２２における傾きθは次のように計算することが可能である。
【００３３】
【数１】
2007509448.tif 000022
【００３４】
値θは０による除算を防止し、かつ正しいｓｉｇｎの値を与えるために、計算上、ａｔａｎ２（ｙ，ｚ）として計算することが可能である。そして、機能６２０は、傾きθを補償するために変換／校正された入力αｙおよびαｚを回転する次の等式を用いて、変換／校正された入力αｙおよびαｚの回転Ｒを実行することが可能である。
【００３５】
【数２】
2007509448.tif 000023
【００３６】
一旦、校正されたセンサの表示度数が線形加速度を補償され、３Ｄポインティング装置４００の回転角を示す表示度数に処理され、かつ傾きを補償されると、後処理をブロック６２６、６２８において実行することが可能である。典型的な後処理は、人の震えのような変動要素の補償を含むことが可能である。震えはいくつかの異なる方法を用いて除去することが可能であるが、震えを除去する１つの方法はヒステリシス（hysteresis）を用いることによるものである。回転機能６２０によって生成される角速度は角位置を生成するために積分される。そして、校正された大きさのヒステリシスは角位置に適用される。再び角速度を生じさせるためにヒステリシスブロックの出力から導関数が得られる。そして、結果の出力は（例えば、サンプリング期間に基づいて）機能６２８においてスケーリングされ、かつ、例えば、ディスプレイ４０８上のカーソル４１０の動きのようなインタフェースにおける結果を生成するために用いられる。
【００３７】
本発明による典型的な３Ｄポインティング装置の処理を説明したので、図７に典型的なハードウェアアーキテクチャを表わす。その中で、プロセッサ８００は、スクロールホィール８０２、ＪＴＡＧ・８０４、ＬＥＤ・８０６、スイッチマトリックス８０８、赤外線光検出器８１０、回転センサ８１２、加速度計８１４、送受信器８１６を含む３Ｄポインティング装置の他の構成要素と通信する。スクロールホィール８０２は、スクロールホィール８０２を時計回りまたは反時計回りに回転させることによってユーザがインタフェースに入力を与えることを可能とする選択的な入力の構成要素である。ＪＴＡＧ・８０４はプロセッサにプログラミングおよびデバッグのインタフェースを提供する。ＬＥＤ・８０６は、例えばボタンが押されたときにユーザに視覚的なフィードバックを提供する。スイッチマトリックス８０８は入力、例えば３Ｄポインティング装置４００のボタンが押されまたは離されたことを示すものを受信し、そして、それはプロセッサ８００に渡される。選択的な赤外線光検出器８１０は、典型的な３Ｄポインティング装置が他のリモートコントロール装置からの赤外線コードを認識することを可能とするために提供することが可能である。回転センサ８１２は、例えば、上述した３Ｄポインティング装置のｙ軸およびｚ軸回転に対応する表示度数をプロセッサ８００に供給する。加速度計８１４は、例えば、傾き補償を実行し、かつ線形加速度が回転センサ８１２によって生成される回転の表示度数に導入する誤差を補償するために、上述したように使用することが可能な３Ｄポインティング装置の線形加速度に関して、プロセッサ８００に表示度数を供給する。送受信器８１６は、３Ｄポインティング装置４００に、および３Ｄポインティング装置４００から情報を伝達し、例えば、システムコントローラ２２８に、または、コンピュータに結合されたプロセッサに情報を伝達するために用いられる。送受信器８１６は、例えば、近距離無線通信のためにブルートゥース（登録商標）標準にしたがって動作する無線送受信器または赤外線送受信器とすることが可能である。その代わりに、３Ｄポインティング装置４００は無線接続を介してシステムと通信することが可能である。
【００３８】
静止検出機能６０８は、上記で簡単に説明したように、３Ｄポインティング装置４００が、例えば、静止しているか、またはアクティブである（動いている）か、のいずれであるかを判定するために動作することが可能である。この分類は多数の他の方法で実行することが可能である。本発明の典型的な実施形態による１つの方法は、所定期間にわたって、例えば１／４秒毎に、全ての入力（ｘ，ｙ，ｚ，αｙ，αｚ）のサンプリングされた入力データの変動を計算することである。そして、この変動は、静止またはアクティブのいずれかとして３Ｄポインティング装置を分類するために閾値と比較される。
【００３９】
本発明の典型的な実施形態によるもう１つの静止検出技術は、例えば、入力データに高速フーリエ変換（ＦＦＴ）を実行することによって、入力を周波数領域に変換することを含む。そして、３Ｄポインティング装置４００が静止またはアクティブのいずれであるかを判定するために、例えばピーク検出法を用いてデータを分析することが可能である。さらに、第３の分類、特にユーザが３Ｄポインティング装置４００を持っているが、それを動かしていない場合（ここでは“安定”状態と呼ぶ）を識別することが可能である。この第３の分類は、３Ｄポインティング装置４００がユーザによって持たれているときユーザの手の震えによって導入される３Ｄポインティング装置４００の小さな動きを検出することによって、静止（持っていない）およびアクティブから区別することが可能である。また、ピーク検出は、この判定を行うために静止検出機能６０８によって用いることが可能である。人の震えの周波数、例えば公称で８〜１２Ｈｚの範囲内のピークは、典型的に（装置が静止し、かつ持たれていないときに認識される）装置のノイズの下限を約２０ｄＢ超える。
【００４０】
上述した例において、周波数領域における変動は特定の周波数範囲内で検出されるが、監視され、かつ３Ｄポインティング装置４００の状態を特徴付けるために用いられる実際の周波数範囲は変動する可能性がある。例えば、公称の震えの周波数範囲は、例えば、３Ｄポインティング装置４００の人間工学的な作りおよび重さに基づいて、例えば８〜１２Ｈｚから４〜７Ｈｚまで変わる可能性がある。
【００４１】
本発明のもう１つの典型的な実施形態によれば、静止検出機能６０８は状態機械を含むことが可能である。典型的な状態機械が図８に表されている。その中で、アクティブ状態は、この例において、３Ｄポインティング装置４００が動き、かつ例えばユーザインタフェースに入力を供給するために用いられている間のデフォルト状態である。３Ｄポインティング装置４００は、リセット入力によって示されているように装置の電力アップにおいてアクティブ状態に入ることが可能である。３Ｄポインティング装置４００が動きを停止すると、非アクティブ状態に入ることが可能である。図８に表わされている各種の状態遷移は、限定しないが、回転センサ５０２、５０４の一方または両方からのデータ出力、加速度計５０６からのデータ出力、時間領域データ、周波数領域データ、またはそれらの任意の組み合わせを含む多数の異なる基準のいずれかによって引き起こすことが可能である。状態遷移の条件は、ここでは一般に、規則“条件状態Ａ→状態Ｂ”を用いて表わされる。例えば、３Ｄポインティング装置４００は、条件アクティブ→非アクティブが発生すると、アクティブ状態から非アクティブ状態に遷移する。単に説明の目的のために、典型的な３Ｄポインティング装置４００において、条件アクティブ→非アクティブは、回転センサおよび加速度計の両方からの平均値および／または標準偏差値が第１の所定期間に第１の所定閾値を下回ったとき発生すると考える。
【００４２】
状態遷移は、読み取られたセンサ出力に基づいて多数の異なる条件によって決定することが可能である。典型的な条件の計量は、時間区間にわたって読み取られた信号の変動、基準値と時間区間にわたって読み取られた信号との間の閾値、基準値と時間区間にわたって読み取られたフィルタリングされた信号との間の閾値、基準値と開始時間から読み取られた信号との間の閾値を、状態遷移を決定するために用いることを含む。これらの条件の計量の全てまたは任意の組み合わせを、状態遷移を引き起こすために用いることが可能である。その代わりに、他の計量を用いることも可能である。本発明の１つの典型的な実施形態によれば、非アクティブ状態からアクティブ状態への遷移は、（１）時間区間にわたってセンサ出力の平均値が所定の閾値より大きいとき、または（２）時間区間にわたってセンサ出力値の変動が所定の閾値より大きいとき、または（３）センサ値の間の瞬間の増分が所定の閾値より大きいとき、のいずれかにおいて発生する。
【００４３】
非アクティブ状態は、３Ｄポインティング装置４００がまだ使用されている間の、例えば１／１０秒のオーダーの短い休止期間と、安定または静止状態のいずれかへの実際の遷移とを、静止検出機能６０８が識別することを可能とする。これは、以下で説明される安定および静止状態の間に実行される機能に対して、３Ｄポインティング装置４００が使用されているときに不注意に実行されることから保護する。例えば、非アクティブ状態において第２の所定期間が経過する前に回転センサおよび加速度計からの測定された出力が第１の閾値を超えるように３Ｄポインティング装置４００が再び動き始めるならば、条件非アクティブ→アクティブが発生すると３Ｄポインティング装置４００はアクティブ状態に遷移して戻る。
【００４４】
３Ｄポインティング装置４００は、第２の所定期間が経過した後、安定状態または静止状態のいずれかに遷移する。上述したように、安定状態は、人が持っているが実質的に動いていないときの３Ｄポインティング装置４００の特性を示し、一方、静止状態は人が持っていないときの３Ｄポインティング装置４００の特性を示す。したがって、本発明による典型的な状態機械は、手の震えに対応する最低限の動きが存在するならば第２の所定期間が経過した後に安定状態への遷移をもたらし、そうでなければ、静止状態への遷移をもたらすことが可能である。
【００４５】
安定および静止状態は、３Ｄポインティング装置４００が各種の機能を実行することが可能である間の時間を定義する。例えば、安定状態はユーザが３Ｄポインティング装置４００を持っているがそれを動かしていない時間を表わすことを意図するので、装置はそれが安定状態にあるとき、例えば、この状態において回転センサおよび／または加速度計からの出力を記憶することによって、３Ｄポインティング装置４００の動きを記録することが可能である。これらの記憶された測定値は、以下で説明されるように、特定のユーザまたは複数のユーザに関する震えのパターンを判定するために使用することが可能である。同様に、静止状態にあるとき、３Ｄポインティング装置４００は、以下で説明されるように、オフセットの補償において使用するために、回転センサおよび／または加速度計からの表示度数を取得することが可能である。
【００４６】
３Ｄポインティング装置４００が安定または静止状態のいずれかにおいて動き始めるならば、これはアクティブ状態に戻ることを引き起こす。そうでなければ、測定値が取得された後、装置はスリープ状態に遷移することが可能である。スリープ状態において、装置は、３Ｄポインティング装置の電力消費が削減され、かつ例えば、回転センサおよび／または加速度計のサンプリングレートが削減される電力ダウンモードに入ることが可能である。また、ユーザまたはもう１つの装置が３Ｄポインティング装置４００がスリープ状態に入ることを命令することが可能であるような外部コマンドを介してスリープ状態に入ることも可能である。
【００４７】
もう１つのコマンドを受信すると、または３Ｄポインティング装置４００が動き始めると、装置はスリープ状態からウェイクアップ状態に遷移することが可能である。非アクティブ状態と同様に、ウェイクアップ状態は、アクティブ状態への遷移が正当化されること、例えば３Ｄポインティング装置４００が不注意でなく動かされたことを確認する機会を装置に提供する。
【００４８】
状態遷移のための条件は、対称的であることも、あるいは異なることも可能である。したがって、条件アクティブ→非アクティブに対応する閾値は、条件非アクティブ→アクティブに対応する閾値と同一である（または異なる）ことが可能である。これは、本発明による３Ｄポインティング装置がユーザ入力をより正確にとらえることを可能とする。例えば、その中でも、状態機械の実装を含む典型的な実施形態は、静止状態へ遷移するための閾値が静止状態から他へ遷移するための閾値と異なることを可能とする。
【００４９】
１つの状態へ入ることまたは１つの状態から抜けることは、他の装置の機能を引き起こすために用いることも可能である。例えば、ユーザインタフェースは、任意の状態からアクティブ状態への遷移に基づいて電力アップすることが可能である。逆に、３Ｄポインティング装置および／またはユーザインタフェースは、３Ｄポインティング装置がアクティブまたは安定から静止または非アクティブへ遷移したときに電源オフされる（またはスリープモードへ入る）ことが可能である。その代わりに、３Ｄポインティング装置４００の静止状態からの遷移または静止状態への遷移に基づいて、カーソル４１０が表示されまたは画面から消去されることが可能である。
【００５０】
上述したように、安定状態は震えデータを記憶するために用いることが可能である。典型的に、各ユーザは異なる震えのパターンを示す。このユーザの震えの特性はユーザを識別するために用いることも可能である。例えば、ユーザの震えのパターンは、ユーザに例えば１０秒間、できるだけ安定して３Ｄポインティング装置を持つことを要求する初期化処理の間に（３Ｄポインティング装置４００において記憶するか、またはシステムに送信して）システムによって記憶することが可能である。このパターンは各種のユーザインタフェース機能を実行するためのユーザ固有の署名として用いることが可能である。例えば、ユーザインタフェースは現在の震えのパターンをメモリに記憶された震えのパターンと比較することによって、ユーザのグループからユーザを識別することが可能である。この識別は、例えば、識別されたユーザに対応する好みの設定を検索するために用いることが可能である。例えば、３Ｄポインティング装置が、上記で引用して組み込まれた特許文献に記載されたメディアシステムと結合して用いられるならば、震えのパターンの比較によってシステムがユーザを認識した後に、ユーザに対応するメディア選択アイテムの表示の好みを活性化することが可能である。また、震え認識を用いてシステムセキュリティを実装することが可能であり、例えば、ユーザが３Ｄポインティング装置４００を持ち上げた後に実行されるユーザ識別に基づいてシステムへのアクセスを禁止または制限することが可能である。
【００５１】
図４の典型的な実施形態において、３Ｄポインティング装置４００は加速度計５０６とともに２つの回転センサ５０２、５０４を含む。しかし、本発明のもう１つの典型的な実施形態によれば、３Ｄポインティング装置は、その代わりに、例えば、ｚ軸方向における角速度および加速度を測定するために、ただ１つの回転センサを含むことも可能である。そのような典型的な実施形態のために、上述したのと同様な機能が、回転センサによって検出されない軸に沿った角速度を決定するために、加速度計を用いて提供することが可能である。例えば、ｙ軸の周りの回転速度は加速度計によって生成されたデータを用いて、次の式を計算して算出することが可能である。
【００５２】
【数３】
2007509448.tif 000024
【００５３】
さらに、回転センサによって測定されない寄生加速度の影響は除去されるべきである。これらの影響は、実際の線形加速度、回転速度および回転加速度によって測定された加速度、人の震えによる加速度を含む。
【００５４】
本発明のさらにもう１つの典型的な実施形態によれば、ユーザインタフェース装置は加速度計のみを用いる。図９に表わされているように、本発明のこの典型的な実施形態による３Ｄ手持ち型装置は、６自由度（６ＤＯＦ）、すなわち、ｘ，ｙ，ｚ，ヨー（yaw），ピッチ（pitch），ロール（roll）を測定する。図９はオイラー角（ヨー，ピッチ，ロール）を表わすが、この技術分野の当業者は、本発明のこの典型的な実施形態は四元数（quaternion）のような他の表現も含むことを理解する。６自由度装置はディスプレイとユーザ入力との間に自然なマッピングを可能とする。例えば、ポインタを上に動かすために、ユーザは手持ち型装置を上に動かす。この典型的な実施形態による手持ち型装置は、対象の選択をより直観的にする。例えば、ボタンをクリックする代わりに、ユーザは画面の方へ、または画面から遠ざかって手持ち型装置を動かすことが可能である。普通の前方および後方の画面上のボタンの代わりに、例えば、ユーザは単にマウスを前方または後方に傾けることが可能である。
【００５５】
微小電子機械システム（ＭＥＭＳ）に基づく正確で低価格な加速度計の出現は、この技術を家庭の消費者へ持ち込むことを可能にする。回転角を測定するジャイロスコープと異なり、加速度計は線形加速度を測定する。従来の慣性航法は、それぞれ６自由度のために、３つのジャイロスコープおよび３つの加速度計に依存する。不運なことに、従来の慣性航法システムのコストおよび大きさは、消費者の手持ち型装置のためには法外である。この手持ち型装置の典型的な実施形態は、いつでもその位置および方向を測定するために３つの３次元加速度計の集合を用いる。しかし、加速度計の他の数量および配置を同じアルゴリズムとともに用いることが可能である。
【００５６】
この典型的な実施形態による手持ち型装置は、３点が１平面を決定する基礎的な幾何学の原理に基づく。追加の点は正確さを向上させるために付加することが可能である。３つの加速度計の全てに共通な加速度は手持ち型装置全体が加速している（ｘ，ｙ，またはｚにおける動き）を示す。加速度計の間の加速度の差は手持ち型装置の方向における変化（ヨー，ピッチ，またはロールにおける動き）を示す。
【００５７】
いくつかの原理が６自由度の加速度計に基づくシステムの実装を複雑にしている。第１に、加速度測定誤差は、位置を計算する加速度の二重積分のために２乗された位置測定誤差を生じる。第２に、重力は手持ち型装置の方向に対応して変化する定数加速度ベクトルであるので、重力ベクトルは正確に追跡されなければならない。測定誤差に関して、ＭＥＭＳ加速度計は必ずしも正確ではなく、かつ誤差は位置の計算に導入される。しかし、加速度における線形的な不正確さは重要ではない。位置の誤差が２乗されるが、この典型的な実施形態による装置は絶対座標系および相対座標系の両方を用いることが可能である。相対座標系について、（フィートまたはメートルで測定される）実際の移動距離は、例えば、マウスドライバに通常見られるような感度設定を用いて任意に調整することが可能である。しかし、平均してゼロにならない時間および温度にわたる非線形誤差（“ドリフト”としても知られ、ＭＥＭＳ加速度計の特性である）は、結果としてマウスの一定な加速度となる。適切な処理なしでは、静止している手持ち型装置のためのポインタは画面の外へ加速するように見える。未処理のアナログ加速度信号からデジタル表現に変換されるときに量子化は測定誤差を導入して計算をより困難にする。
【００５８】
本発明のこの典型的な実施形態による装置は、図１０に表わされているように加速度計の既知の誤差パターンを許容し、かつ訂正するために線形および非線形成分の両方を有するアルゴリズムを含む。その中で、加速度計データサンプル１０００は、例えば３×３行列で誤差フィルタリング機能１０１０に供給される。そして、フィルタリングされた値は、例えば、上述した典型的な実施形態に関して説明したように、スケールおよび／またはオフセットに対応する校正データに基づいて、ボルト／単位重力（Ｖ／ｇ）の単位から加速度（ｇ）の単位に変換される（ブロック１０２０）。それぞれブロック１０４０、１０５０によって計算された手持ち型装置の方向に対応する重力値および加速度誤差を減算することによってブロック１０３０において粗い加速度データが純化（refine）される。重力は、ユーザによって傾けられたときに手持ち型装置に対応して変化する定数加速度である。重力が実際の加速度として誤って読み取られると、画面上のポインタは無限に加速する。暴走するポインタは結果として使用できないユーザインタフェースとなる。この典型的な実施形態は、未処理の加速度計データを方向に処理するベクトル操作を用いる。そして、重力ベクトルが計算され、かつその結果から減算される。重力ベクトルの測定値からの誤差が計算され、かつ将来の測定値から減算される。そして、純化された加速度値は、手持ち型装置の配置に基づいてブロック１０６０において幾何学的に変換される。そして、ブロック１０６０の出力は、ブロック１０９０において加速度データに基づいて決定される実際の位置が計算される前に、位置誤差推定について訂正される（ブロック１０７０、１０８０）。そして、位置データは、速度情報として出力される前に、微分され（ブロック１１００）、かつブロック１１１０において非線形処理に従うことが可能である。幾何学変換器１０６０は方向判定器１１２０にデータを出力することが可能であり、方向判定器１１２０は、例えば上述したのと同様な方法で手持ち型装置の方向を判定して手持ち型装置の方向角の表示を出力するとともに、方向誤差推定器１０５０および重力ベクトル計算器１０４０に入力を供給する。
【００５９】
ブロック１１３０、１１４０によって示されているように、手持ち型装置を再校正するために通常のユーザインタフェース動作の利点を有するユーザ相互作用モードを選択的にアルゴリズムに組み込むことが可能である。例えば、ユーザは典型的に対象を選択または“クリック”する前にポインタを動かすことを止める。このモードにおいて、手持ち型装置のアルゴリズムは、重力および位置の両方について再校正入力を供給する特定の期間の間に表示度数の重み付けされた平均を用いる。
【００６０】
本発明のこの典型的な実施形態は、内蔵式の手持ち型装置で、またはホストマシンで、アルゴリズム処理が実行されることを可能とする。手持ち型装置とホストマシンとの間の接続は、限定しないが、無線、ブルートゥース（登録商標）、ジグビー（ZigBee）、赤外線を含む多数の技術のいずれか１つとすることが可能であり、そのうちいくつかが、それぞれ図１１および図１２における典型的なブロック図のハードウェアおよびソフトウェアプラットフォームに表わされている。内蔵式においては、手持ち型装置は処理された位置および方向の情報をホストに送信する。ホストマシンがアルゴリズム処理を実行するときは、手持ち型装置は未処理の加速度データをホストに送信する。図１３はアルゴリズムの観点から本発明のこの典型的な実施形態を表わす。その中で、グレーの三角形１３００はそのコーナーにおいて３つの加速度計（点）を有する手持ち型装置を表わす。加速度計は上述したように手持ち型装置の加速度を測定し、例えば矢印Ａ０〜Ａ３によって示される。軸の組１３０２、１３０４は局所的な手持ち型装置の現在の方向を表わし、かつそれぞれ、基準の任意の点に対応する。
【００６１】
上述した典型的な実施形態は、本発明を限定するのではなく、全ての面で本発明の説明であることを意図する。したがって、本発明は、この技術分野の当業者によってここに含まれる説明から導き出すことが可能な詳細な実装における多くの変形が可能である。例えば、上述した典型的な実施形態では、その中でも、装置の動きを検出するために慣性センサの使用を説明しているが、上述した信号処理に関して慣性センサに代えて、またはそれに加えて他の種類のセンサ（例えば、超音波、磁気、光）を用いることが可能である。そのような全ての変形および変更は、添付の特許請求の範囲によって定義されるように本発明の範囲および思想に含まれると考えられる。本願の記載に用いられた構成要素、動作、説明は、明示の説明がなければ本発明に重要または必須と解釈されるべきである。また、ここで用いられるように、冠詞”a”は１つまたは複数のアイテムを含むことを意図する。
【図面の簡単な説明】
【００６２】
【図１】娯楽システムのための従来のリモートコントロール装置を表わす。
【図２】本発明の典型的な実施形態が実装可能な典型的なメディアシステムを表わす。
【図３】本発明の典型的な実施形態による３Ｄポインティング装置を表わす。
【図４】２つの回転センサおよび１つの加速度計を含む３Ｄポインティング装置の切取内部図を表わす。
【図５】本発明の典型的な実施形態による３Ｄポインティング装置に関するデータの処理を表わすブロック図である。
【図６Ａ】傾きの影響を表わす。
【図６Ｂ】傾きの影響を表わす。
【図６Ｃ】傾きの影響を表わす。
【図６Ｄ】傾きの影響を表わす。
【図７】本発明の典型的な実施形態による３Ｄポインティング装置のハードウェアアーキテクチャを表わす。
【図８】本発明の典型的な実施形態による静止検出機構を表わす状態図である。
【図９】本発明のもう１つの典型的な実施形態に関する６自由度を表わす。
【図１０】本発明のもう１つの典型的な実施形態による加速度データを処理するためのアルゴリズムを表わす。
【図１１】図１０の典型的な実施形態による３Ｄポインティング装置のハードウェアアーキテクチャを表わす。
【図１２】図１０の典型的な実施形態による３Ｄポインティング装置のソフトウェアアーキテクチャを表わす。
【図１３】アルゴリズムの観点から図９および図１０の典型的な実施形態を表わす。
【符号の説明】
【００６３】
２００  集合メディアシステム
２１０  入力／出力バス
２１２  テレビ／モニタ
２１４  ビデオカセットレコーダ
２１６  デジタルビデオディスク録画／再生装置
２１８  オーディオ／ビデオチューナ
２２０  コンパクトディスクプレーヤ
２２２  マイクロホン／スピーカシステム
２２４  ビデオカメラ
２２６  無線Ｉ／Ｏ制御装置
２２８  システムコントローラ
２３０  ケーブル放送
２３２  衛星放送
２３４  放送テレビ網
２３６  電話網
２３８  ケーブルモデム
４００  ３Ｄポインティング装置
４０２、４０４  ボタン
４０６  スクロールホィール
４０８  ディスプレイ
４１０  カーソル
５０２、５０４  回転センサ
５０６  加速度計
６００  処理モデル
６０２  サンプリングされた加速度計出力
６０４  変換機能
６０６  加速度校正ブロック
６０８  静止検出機能
６１０  利得行列
６１２  サンプリングされた回転センサデータ
６１８  回転校正機能
６１９  温度センサ
６２０  回転機能
６２２  傾き判定機能
６２４  ＬＰＦ
８００  プロセッサ
８０２  スクロールホィール
８０４  ＪＴＡＧ
８０６  ＬＥＤ
８０８  スイッチマトリックス
８１０  赤外線光検出器
８１２  回転センサ
８１４  加速度計
８１６  送受信器
１０００  加速度計データサンプル
１０１０  誤差フィルタリング機能
１０４０  重力ベクトル計算器
１０５０  方向誤差推定器
１０６０  幾何学変換器
１１２０  方向判定器
【国際調査報告】
2007509448.tif 000025