(57)【要約】コマンドを生成し、当該ハンドヘルド装置とベース装置（消費者電子装置を含む）との間でデータを転送するためのハンドヘルド装置。本ハンドヘルド装置は、ハンドヘルド装置自身の動きを検出し、その動きをコマンドとして解釈し、そのコマンドを実行または転送する。装置の動きには、装置を持っている間にユーザーが行う、ハンドヘルド装置をベース装置のほうに振る動作といった身振りが含まれうる。ユーザーによって生成されるコマンドは、基本的なオン／オフコマンドからデータ転送のような複雑なプロセスまで多岐にわたる。ある実施形態では、ユーザーは既存または新規のコマンドに関連付けられた新しい動きを学習するよう装置をトレーニングできる。ハンドヘルド装置は動きの基本成分を解析して動きモデルを作成し、その動きが将来一意的に同定されうるようにする。
2007518511.tif 000002
【特許請求の範囲】
【請求項１】
ベース装置を制御する装置であって：
メモリと、
当該装置の動きを検出し、
当該装置と前記ベース装置の間のデータの転送をトリガーするコマンドを同定するために前記動きを解釈し、
前記コマンドを実行する、
よう動作する少なくとも一つのプロセッサ、
とを有することを特徴とする装置。
【請求項２】
前記コマンドを実行する動作が第二のコマンドを前記ベース装置に転送することを含むことを特徴とする、請求項１記載の装置。
【請求項３】
前記検出された動きが振り運動であることを特徴とする、請求項１記載の装置。
【請求項４】
前記検出された動きが注ぎ運動であることを特徴とする、請求項１記載の装置。
【請求項５】
前記検出された動きが前記ベース装置から離れる方向の引き運動であることを特徴とする、請求項１記載の装置。
【請求項６】
実演の動きを検出して記録することによって一つまたは複数の新規コマンドを追加するようさらに動作することを特徴とする、請求項１記載の装置。
【請求項７】
前記記録された実演の動きから動きモデルを生成するようさらに動作することを特徴とする、請求項６記載の装置。
【請求項８】
前記一つまたは複数の新規コマンドを前記動きモデルに割り当てるようさらに動作することを特徴とする、請求項７記載の装置。
【請求項９】
前記動き検出動作を実行するために三次元の動きセンサーをさらに有することを特徴とする、請求項１記載の装置。
【請求項１０】
一つまたは複数の動きモデルをさらに有しており、前記一つまたは複数の動きモデルのそれぞれがコマンドを割り当てられることを特徴とする、請求項１記載の装置。
【請求項１１】
前記動きを解釈する動作が、前記検出された動きを前記一つまたは複数の動きモデルのうちの一つまたは複数と比較することによって実行されることを特徴とする、請求項１０記載の装置。
【請求項１２】
ベース装置を制御する方法であって：
装置の動きを検出し、
前記装置と前記ベース装置の間のデータの転送をトリガーするコマンドを同定するために前記動きを解釈し、
前記コマンドを実行する、
ことを含むことを特徴とする方法。
【請求項１３】
前記コマンドを実行するステップが第二のコマンドを前記ベース装置に転送することを含むことを特徴とする、請求項１２記載の方法。
【請求項１４】
前記検出された動きが振り運動であることを特徴とする、請求項１２記載の方法。
【請求項１５】
前記検出された動きが注ぎ運動であることを特徴とする、請求項１２記載の方法。
【請求項１６】
前記検出された動きが前記ベース装置から離れる方向の引き運動であることを特徴とする、請求項１２記載の方法。
【請求項１７】
実演の動きを検出して記録することによって一つまたは複数の新規コマンドを追加するステップをさらに含むことを特徴とする、請求項１２記載の方法。
【請求項１８】
前記記録された実演の動きから動きモデルを生成するステップをさらに含むことを特徴とする、請求項１７記載の方法。
【請求項１９】
前記一つまたは複数の新規コマンドを前記動きモデルに割り当てるステップをさらに含むことを特徴とする、請求項１８記載の方法。
【請求項２０】
前記動きを解釈するステップが、前記検出された動きを一つまたは複数の動きモデルと比較することによって実行されることを特徴とする、請求項１２記載の方法。
【請求項２１】
ベース装置を制御するための製造物であって：
実行されたときに：
装置の動きを検出し、
前記装置と前記ベース装置の間のデータの転送をトリガーするコマンドを同定するために前記動きを解釈し、
前記コマンドを実行する、
ステップを実施する一つまたは複数のプログラムを含む機械可読媒体、
を有することを特徴とする製造物。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、家庭エンターテインメントの装置およびアプリケーションの制御に、特に制御装置を操作することにより家庭エンターテインメント装置を制御し、これにデータを転送する方法およびシステムに関するものである。
【背景技術】
【０００２】
リモコン装置のようなハンドヘルド装置は、典型的にはテレビやゲーム機といった消費者電子装置を制御するために使われる。ハンドヘルド装置と消費者電子装置がより洗練されたものになるにつれ、ハンドヘルド装置にコマンドを入力するための新たな技法が開発されてきた。これらの技法には、ハンドヘルド装置の配向を検出してコマンドを生成する諸方法が含まれる。たとえば、米国特許第4,745,402号および4,796,019号はテレビ上でカーソルの位置を制御するための方法を開示している。米国特許第6,603,420号は、たとえばテレビのチャンネルおよび音量選択を制御するために当該リモコン装置の動きの方向を検出するリモコン装置を開示している。
【非特許文献１】Ho-Sub  Yoon,  Jung  Soh,  Younglae  J.  Bae  and  Hyun  Seung  Yang,  Hand  Gesture  Recognition  Using  Combined  Features  of  Location,  Angle  and  Velocity,  Pattern  Recognition,  Volume  34,  Issue  7,  2001,  Pages  1491-1501
【非特許文献２】Cristopher  Lee  and  Yangsheng  Xu,  Online,  Interactive  Learning  of  Gestures  for  Human/Robot  Interfaces,  The  Robotics  Institute,  Carnegie  Mellon  University,  Pittsburgh,  IEEE  International  Conference  on  Robotics  and  Automation,  Minneapolis,  1996
【非特許文献３】Mu-Chun  Su,  Yi-Yuan  Chen,  Kuo-Hua  Wang,  Chee-Yuen  Tew  and  Hai  Huang,  3D  Arm  Movement  Recognition  Using  Syntactic  Pattern  Recognition,  Artificial  Intelligence  in  Engineering,  Volume  14,  Issue  2,  April  2000,  Pages  113-118
【非特許文献４】Ari  Y.  Benbasat  and  Joseph  A.  Paradiso,  An  Inertial  Measurement  Framework  for  Gesture  Recognition  and  Applications,  MIT  Media  Laboratory,  Cambridge,  2001
【非特許文献５】Mu-Chun  Su,  Yi-Yuan  Chen,  Kuo-Hua  Wang,  Chee-Yuen  Tew  and  Hai  Huang,  3D  Arm  Movement  Recognition  Using  Syntactic  Pattern  Recognition,  Artificial  Intelligence  in  Engineering,  Volume  14,  Issue  2,  April  2000,  Pages  113-118
【発明の開示】
【発明が解決しようとする課題】
【０００３】
これらのハンドヘルド装置がデータを保持できること、そして消費者電子装置のより洗練された機能の開発とにより、こうした消費者電子装置の制御について新たな課題が創出された。たとえば、ハンドヘルド装置から消費者電子装置に、あるいはその逆にデータを転送する必要がしばしば生じる。ハンドヘルド装置はまた、データ転送のような動作が実行されるべきであることを示すための自然で効率的な機構をも提供するべきである。したがって、コマンドを生成し、消費者電子装置との間でデータを転送することを効率的に行うことのできる改良されたハンドヘルド装置が必要とされている。
【課題を解決するための手段】
【０００４】
コマンドを生成し、ハンドヘルド装置とベース装置（消費者電子装置を含む）との間でデータを転送するための装置および方法が開示される。本ハンドヘルド装置は、ハンドヘルド装置自身の動きを検出し、その動きをコマンドとして解釈し、そのコマンドを実行または転送することができる。装置の動きには、装置を持っている間にユーザーが行う、ハンドヘルド装置をベース装置のほうに振る、テニスラケットを振るときにユーザーが行うような動作といった身振りが含まれうる。ユーザーによって生成されるコマンドは、基本的なオン／オフコマンドからデータ転送のような複雑なプロセスまで多岐にわたる。
【０００５】
ある実施形態では、ユーザーは既存または新規のコマンドに関連付けられた新しい動きを学習するよう装置をトレーニングできる。たとえば、ユーザーはハンドヘルド装置をベース装置のほうに振る動きをすることができる。ハンドヘルド装置はその動きの基本成分を解析して動きモデルを作成し、その動きが将来一意的に同定されうるようにする。
【０００６】
本発明のより完全な理解ならびに本発明のさらなる特徴および効果は、以下の詳細な記述および図面を参照することによって得られるであろう。
【発明を実施するための最良の形態】
【０００７】
図１は、本発明の例示的なハンドヘルド装置３００を示している。これは図３との関連でのちにさらに論じる。たとえばフィリップス・スーパー・プロント（Philips  Super  Pronto）のようなものであるが、本発明の特徴に基づいて修正されている。ハンドヘルド装置３００は、該ハンドヘルド装置３００の動きを検出し、検出された動きを一つまたは複数のコマンドとして解釈し、そのコマンドを実行または転送することができる。
【０００８】
図２Ａ、２Ｂはユーザーがハンドヘルド装置３００を使って行える身振りを示している。たとえば図２Ａは、ユーザー２０１が装置３００をテレビ２１０のようなベース装置のほうに振る身振りをするところを示している。図２Ｂは、ユーザーがテレビ２１０のようなベース装置に装置から何かを注ぐ身振りをしているところを示している。この身振りと関連する動きは、ユーザー２０１がハンドヘルド装置３００からテレビ２１０にデータを転送したがっていることを示している。この場合、ユーザーはまずデータ（たとえば画像または音楽）を位置特定および同定し、それからベース装置のほうに身振りをする。データを同定するのは、たとえばハンドヘルド装置３００上に表示されたリストから項目を選択することによってできる。次いでそのデータが転送される。さらに、データが画像であれば（任意的に）テレビに表示されることもできるし、あるいはデータが音楽であれば（任意的に）スピーカーを通じて再生されることもできる。他の身振りとしては、ベース装置からユーザーに向けられた引っ張り運動（図示せず）をすることが含まれる。この場合、その身振りは同定されたデータがハンドヘルド装置３００に転送されるべきであることを示したりする。次いでデータがベース装置自身から、あるいは別の装置（たとえばサーバー）から取得される。ユーザー２０１の領域にはいくつかのベース装置２１０から２１４があるので、ハンドヘルド装置３００は、転送されるデータを装置２１０〜２１４のどれが受信するべきかを同定する機能を有する（のちに詳述）。図３は、本発明の例示的なハンドヘルド装置３００のブロック概略図である。当技術分野において知られているように、ここで論じられる方法および装置は、その上にコンピュータ可読コード手段が具現されているコンピュータ可読媒体を有する製造物として頒布されてもよい。コンピュータ可読プログラムコード手段は、中央処理装置３０１のようなコンピュータシステムとともに、諸方法を実行するための、あるいはここで論じられる装置を生成するための諸ステップの全部または一部を実行するよう動作可能である。コンピュータ可読媒体は記録可能媒体（たとえば、フロッピー（登録商標）ディスク、ハードディスク、コンパクトディスクまたはメモリカード）であってもよいし、あるいは伝送媒体（たとえば光ファイバーのネットワーク、ワールドワイドウェブ、ケーブルまたは時分割多重アクセス、符号分割多重アクセスもしくはその他の無線周波数チャネルを使った無線チャネル）であってもよい。コンピュータシステムとともに使用するのに好適な情報を保存できるいかなる既知または開発される媒体を使ってもよい。コンピュータ可読コード手段は、コンピュータが命令およびデータを読めるようにするための任意の機構である。たとえば、磁気媒体上の磁気変動またはコンパクトディスクの表面上の高さ変動などである。
【０００９】
メモリ３０２は、プロセッサ３０１を、ここで開示される方法、ステップ、機能を実施するよう構成する。メモリ３０２は分散型であってもローカルであってもよく、プロセッサ３０１も分散型であっても単一であってもよい。メモリ３０２は電気、磁気もしくは光学式メモリまたはこれらもしくは他の種類の記憶装置のいかなる組み合わせとして実装されることもできる。「メモリ」の用語は、プロセッサ３０１によってアクセスされるアドレス指定可能空間内のアドレスから読み出したり、または該アドレスに書き込まれたりすることのできるいかなる情報をも包含するよう広く解釈されるべきである。
【００１０】
図３に示されるように、メモリ３０２は動きモデルデータベース３０３、システムプロセス５００（図５との関連で後述）、動きトレーニングプロセス６００（図６との関連で後述）および動き検出プロセス（図７との関連で後述）を含んでいる。ハンドヘルド装置３００はまた、動き検出サブシステム４００（図４との関連で後述）、無線周波（RF）通信サブシステム３０５および赤外線検出サブシステム（IDS:  infrared  detection  subsystem）３１０を含んでいる。
【００１１】
RF通信サブシステム３０５はハンドヘルド装置３００と一つまたは複数のベース装置２１０〜２１４との間の通信を既知の仕方で提供する。たとえば、RF通信サブシステム３０５は、無線通信のためのIEEE802.11規格またはそのいかなる拡張を利用してもよい。IDS３１０は、ベース装置２１０〜２１４に装置３００によって送信されるコマンドを実行すべきであると信号を送るために赤外光を指向的な仕方で放出する。その赤外線信号を検出したベース装置２１０〜２１４だけが送信されたコマンドを実行すべきである。コマンドはベース装置２１０〜２１４にRF通信サブシステム３０５を介して既知の仕方で転送される。代替的な実施形態では、コマンドは赤外線信号（たとえばIRブラスター規格を使ったもの）を既知の仕方で変調することによって転送されうる。
【００１２】
図４は、動き検出サブシステム４００の例示的な実施形態を示している。動き検出サブシステム４００はx軸加速計センサー４１０、y軸加速計センサー４１１、z軸加速計センサー４１２および対応するアナログ‐デジタル変換器４１５、４１６、４１７を含んでいる。加速計センサー４１０、４１１、４１２はそれぞれ装置３００のx軸、y軸、z軸に沿った加速度を検出する。加速計センサー４１０、４１１、４１２はたとえば、米国カリフォルニア州ユニオン・シティのNECTokinから市販されている3D  Motion  Sensorsを使って具現してもよい。アナログ‐デジタル変換器４１５、４１６、４１７は加速計センサー４１０、４１１、４１２によってそれぞれ検出された加速度を、プロセッサ３０１が読めるデジタル形式に変換する。代替的な実施形態では、装置３００の位置、配向および／または速度を決定するために、応力感応性抵抗素子、傾斜センサーおよび磁気方向センサーを含むその他の構成要素が利用されうる。
【００１３】
図５は、システムプロセス５００の例示的な実施形態を示している。システムプロセス５００は最初はステップ５０５でコマンドが入力されるのを待つ。ステップ５０５の間にユーザーがトレーニングコマンドを入力した場合、システムプロセス５００はステップ５１０を実行し、動きトレーニングプロセス６００が呼び出される。ステップ５０５の間にユーザーがコマンドを表す身振りまたは動きをした場合には、システムプロセス５００はステップ５１５を実行し、動き検出プロセス７００が呼び出される。呼び出されたプロセス６００、７００が完了すると、システムプロセス５００はステップ５０５に戻って新たなコマンドの入力を待つ。
【００１４】
図６は動きトレーニングプロセス６００の例示的な実施形態を示している。動きトレーニングプロセス６００は、ユーザーによって実演された新しい身振りおよび動きを、既存または新規のコマンドの同定に使用するために学習する。たとえば、ユーザー２０１は、装置３００をテレビ２１０に向けて振る動きのような振り運動を検出するよう装置３００をトレーニングしたいことがありうる。ユーザーはまずハンドヘルド装置３００のスイッチを押して、これから新しい身振りが生成されることを示す。（あるいはまた、ユーザーはある動きをトレーニングプロセスが実行されるべきであるという指標として解釈するよう、ハンドヘルド装置３００をトレーニングすることもできる。）動きトレーニングプロセス６００は最初は加速計センサー４１０、４１１、４１２の一つまたは複数によって動きが検出されるのを待ち（ステップ６０１）、次いでアナログ‐デジタル変換器４１５、４１６、４１７から読み込まれたデータを周期的にサンプリングして保存することによってセンサー４１０、４１１、４１２によって検出された動きを記録する（ステップ６０５）。サンプリングステップ６０５の間に読み込まれた標本値の一セットごとに、ある指定された時間期間にわたって何の動きも検出されなかったかどうか試験が行われる（ステップ６０８）。身振りまたは動きが完了したかどうかを調べるのである。ステップ６０８で動きが検出された場合には、ステップ６０５が繰り返されて次の標本値のセットを読み込む。そうでない場合には、動きトレーニングプロセス６００は、ステップ６１０で、取り込まれた動きのモデルを生成および保存する。動きモデルは既知の仕方で生成される。たとえば、非特許文献１〜５に示した刊行物は動きおよび身振りを解析し、比較し、モデル化する方法を記載している。それらはここに参照によって組み込まれる。
【００１５】
生成されたモデルは、ユーザー２０１によってなされる将来の身振りおよび動きを解釈するために使用されることになる。ステップ６１５では、ステップ６１０で生成されたモデルに、そのモデルに対応する動きが検出されたときに実行されるべきコマンドまたはプロセスが割り当てられる。実行されるべきコマンドは公知の諸方法を利用して同定される。たとえば、コマンドに対応するハンドヘルド装置３００上のスイッチを押す、あるいはコマンドに対応するコードをキーパッドで入力するなどである。代替的な実施形態では、ユーザーは、システムに対する複数の行動を実行する（たとえばタッチスクリーン上で）ことによって一連のコマンドを入力（記録）できる。MS  Wordにおけるマクロの記録と同様である。するとその一連のコマンドが単一の身振りに関連付けられる。割り当てられたコマンドまたはプロセスは、関連付けられた動きモデルとともに動きモデルデータベース３０３に保存される。
【００１６】
図７は、動き検出プロセス７００の例示的な実施形態を示している。動き検出プロセス７００はユーザー２０１によってなされた身振りおよび動きを解釈して、実行されるべきコマンドを決定する。たとえば、ユーザー２０１がハンドヘルド装置３００をテレビ２１０に向けて振る動きをした場合、ハンドヘルド装置３００はその身振りを装置３００からテレビ２１０にデータを転送する命令として解釈する。動き検出プロセス７００は最初は、加速計センサー４１０、４１１、４１２によって検出された動きを、アナログ‐デジタル変換器４１５、４１６、４１７から読み込まれたデータを周期的にサンプリングして保存することによって記録する（ステップ７０５）。サンプリングステップ７０５の間に読み込まれた標本値の一セットごとに、ある指定された時間期間にわたって何の動きも検出されなかったかどうか試験が行われる（ステップ７０８）。身振りまたは動きが完了したかどうかを調べるのである。ステップ７０８で動きが検出された場合には、ステップ７０５が繰り返されて次の標本値のセットを読み込む。そうでない場合には、動き検出プロセス７００は、ステップ７０５の間に収集されたデータを装置３００に保存されている動きモデルと比較する（ステップ７１０）。ステップ７１０の間に各モデル比較についてスコアが生成される。ステップ７１０で最高のスコアを達成したモデルに関連付けられたコマンドまたはプロセスが次いでステップ７１５で実行される。たとえば、最高スコアのモデルが「振り運動」モデルであった場合にデータ転送プロセス（図示せず）が既知の仕方で実行される。データ転送プロセスはたとえば、802.11規格を利用してよく知られた仕方で達成される。ステップ７２０ではIDS３１０も作動させられ、それにより振り運動の方向に赤外線信号が放出されるようにする。その赤外線信号を検出したベース装置２１０〜２１４だけがRF通信サブシステム３０５を介して転送されるデータを受信することになる。
【００１７】
図８は、図２Ａの振り運動を表す例示的な動きモデルを示している。図のように、z軸加速計は動きはxy平面内であることを示している（z軸方向には動きなし）。x軸加速計によって示されるように、動きはx軸に沿ったすばやい加速、動きの中間点でのピーク速度および動きが完了するころの増大する減速を示している。同様だがより小さな動作がy軸に沿っても起こっている。
【００１８】
ここで示され、記載された実施形態および変形は単に本発明の原理を解説するものであって、当業者が本発明の範囲および精神から外れることなくさまざまな修正を実施しうることは理解されるものとする。
【図面の簡単な説明】
【００１９】
【図１】本発明の例示的なハンドヘルド装置を示す図である。
【図２Ａ】図１のハンドヘルド装置によってコマンドとして解釈される身振りを示す図である。
【図２Ｂ】図１のハンドヘルド装置によってコマンドとして解釈される身振りを示す図である。
【図３】図１のハンドヘルド装置のブロック概略図である。
【図４】動き検出サブシステムの例示的な実施形態を示す図である。
【図５】図１のハンドヘルド装置のシステムプロセスの例示的な実装を記述するフローチャートである。
【図６】動きトレーニングプロセスの例示的な実装を記述するフローチャートである。
【図７】動き検出プロセスの例示的な実装を記述するフローチャートである。
【図８】３つの垂直な平面のそれぞれにおける期待される加速に基づいて振り運動の動きモデルを図解するグラフである。
【図１】
2007518511.tif 000003
【図２Ａ】
2007518511.tif 000004
【図２Ｂ】
2007518511.tif 000005
【図３】
2007518511.tif 000006
【図４】
2007518511.tif 000007
【図５】
2007518511.tif 000008
【図６】
2007518511.tif 000009
【図７】
2007518511.tif 000010
【図８】
2007518511.tif 000011
【国際調査報告】
2007518511.tif 000012
2007518511.tif 000013
2007518511.tif 000014