(57)【特許請求の範囲】
【請求項１】
一連のカメラ画像からユーザの関与表示ジェスチャを認識するステップと、
認識された前記関与表示ジェスチャ及び前記ユーザの顔に少なくとも一部分基づいて前記ユーザのユーザ基準位置を識別するステップであって、ここで、前記ユーザ基準位置は認識された前記関与表示ジェスチャの位置と前記ユーザの前記顔に対応する顔位置との間の距離に基づいて識別され、前記ユーザ基準位置は前記関与表示ジェスチャの前記位置とは異なる、ステップと、
前記ユーザ基準位置を使用して１つ以上のカメラ画像を前記ユーザに合焦するステップと、
コントロールとユーザの描写を含むユーザインタフェースを生成するステップと、
認識された前記関与表示ジェスチャに基づいて前記描写を前記コントロールと相互連動させるステップと、
前記相互連動に基づいてテレコミュニケーションセッションを制御するステップと、を含む、コンピュータにより実施される方法。
【請求項２】
テレコミュニケーションセッションを制御するステップは、
前記テレコミュニケーションセッションを第１の状態から、異なる第２の状態に変更するステップをさらに含み、
第１の状態又は第２の状態は、スタンバイ状態、通知状態、発信コール状態、接続状態、ミュート状態、メニュー状態、接続オプション状態、直接ダイアル状態、リダイアル状態、検索状態、ブラウザ状態、メッセージメニュー状態、メッセージ再生状態、又は構成設定状態を含む、請求項１記載の方法。
【請求項３】
前記テレコミュニケーションセッションは、音声とビデオのテレコミュニケーションセッションをさらに含む、請求項１記載の方法。
【請求項４】
前記テレコミュニケーションセッションを制御するステップは、
関与表示ジェスチャの認識に基づいて、前記テレコミュニケーションセッションをスタンバイ状態からコール又はメニュー状態に変更するステップをさらに含む、請求項１記載の方法。
【請求項５】
ユーザの識別を決定するステップと、
決定された識別に基づいて前記コントロールを使用可能とするステップと、をさらに含む、請求項１記載の方法。
【請求項６】
ユーザの前記決定された識別がコールの目的とされる受信者に適合した場合に限り、前記テレコミュニケーションセッションを接続状態からコール状態に変更するステップをさらに含む、請求項５記載の方法。
【請求項７】
前記カメラ画像の中の複数のユーザの識別を決定するステップと、
決定された複数の識別の少なくとも一つに基づいて前記コントロールを使用可能又は使用不可にするステップと、をさらに含む、請求項１記載の方法。
【請求項８】
前記テレコミュニケーションセッションを制御するステップは、
非関与表示ジェスチャの認識に基づいて、前記テレコミュニケーションセッションをスタンバイ状態に変更するステップをさらに含む、請求項１記載の方法。
【請求項９】
前記カメラ画像の一つを合焦するステップは、移動しているユーザにカメラの焦点を保持するステップをさらに含む、請求項１記載の方法。
【請求項１０】
前記カメラ画像の一つを合焦するステップは、前記カメラ画像の一つをユーザを中心に合わせるステップをさらに含む、請求項１記載の方法。
【請求項１１】
ユーザが中心となるように音声を定位するステップをさらに含む、請求項１記載の方法。
【請求項１２】
第１のユーザが前記関与表示ジェスチャを実行した後に第２のユーザが第２の関与表示ジェスチャを実行したことを認識するステップをさらに含み、
前記テレコミュニケーションセッションを制御するステップが、前記第２のユーザが前記第２の関与表示ジェスチャを実行したことの認識に基づいて、前記第２のユーザに焦点を変更するステップをさらに含む、請求項１記載の方法。
【請求項１３】
前記第１のユーザが焦点を放棄したか否かを判定するステップを含み、
前記第１のユーザが前記焦点を放棄した場合に限り、前記焦点は変更される、請求項１２記載の方法。
【請求項１４】
前記第１のユーザが焦点を放棄したか否かを判定するステップが、
前記第１のユーザが話しを終えたか否かを判定するステップをさらに含む、請求項１３記載の方法。
【請求項１５】
前記第１のユーザが焦点を放棄したか否かを判定するステップが、前記第１のユーザが放棄ジェスチャを実行したか否かを判定するステップをさらに含む、請求項１３記載の方法。
【請求項１６】
ユーザの識別を決定するステップをさらに含み、
前記テレコミュニケーションセッションを制御するステップは、ブラウザ状態で、決定された識別に対応する連絡先群を表示するステップをさらに含む、請求項１記載の方法。
【請求項１７】
顔認識に基づいてユーザの識別を決定するステップをさらに含み、
前記テレコミュニケーションセッションを制御するステップは、前記ユーザによってかけられたコールの受信者に、決定された前記ユーザの識別を送信するステップをさらに含む、請求項１記載の方法。
【請求項１８】
一連のカメラ画像からユーザの関与表示ジェスチャを認識し、
認識された前記関与表示ジェスチャ及び前記ユーザの顔に少なくとも一部分基づいて前記ユーザのユーザ基準位置を識別し、ここで、前記ユーザ基準位置は認識された前記関与表示ジェスチャの位置と前記ユーザの前記顔に対応する顔位置との間の距離に基づいて識別され、前記ユーザ基準位置は前記関与表示ジェスチャの前記位置とは異なり、
前記ユーザ基準位置を使用して１つ以上のカメラ画像を前記ユーザに合焦し、
コントロールとユーザの描写を含むユーザインタフェースを生成し、
認識された前記関与表示ジェスチャに基づいて前記描写を前記コントロールと相互連動させ、
前記相互連動に基づいてテレコミュニケーションセッションを制御するように構成されたプロセッサを含む、デバイス。
【請求項１９】
一連のカメラ画像からユーザの関与表示ジェスチャを認識するステップと、
認識された前記関与表示ジェスチャ及び前記ユーザの顔に少なくとも一部分基づいて前記ユーザのユーザ基準位置を識別するステップであって、ここで、前記ユーザ基準位置は認識された前記関与表示ジェスチャの位置と前記ユーザの前記顔に対応する顔位置との間の距離に基づいて識別され、前記ユーザ基準位置は前記関与表示ジェスチャの前記位置とは異なる、ステップと、
前記ユーザ基準位置を使用して１つ以上のカメラ画像を前記ユーザに合焦するステップと、
コントロールとユーザの描写を含むユーザインタフェースを生成するステップと、
認識された前記関与表示ジェスチャに基づいて前記描写を前記コントロールと相互連動させるステップと、
前記相互連動に基づいてテレコミュニケーションセッションを制御するステップと、
を含む動作を、実行時に、コンピュータに実行させる命令を含むコンピュータプログラムで符号化されたコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的にはユーザ入力機構に関し、少なくとも一つの特定の構成部が、ユーザが音声とビデオ通信を制御することを可能とするように構成されたユーザ入力機構を対象とする。
【背景技術】
【０００２】
[関連出願についてのクロス・リファレンス]
本出願は、引用によって本出願に組み込まれる、２００７年９月２４日出願の米国仮特許出願番号第６０／９７４，７７４号の優先権を主張する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
様々なビデオをベースとした電子制御システムが、ユーザが、コンピュータアプリケーション、あるいはその他の音声又はビデオアプリケーションと相互連動（ｉｎｔｅｒａｃｔ）することを可能としている。しかしながら、これらのシステムは、テキスト、数字の入力、又は、多数のオプションからの選択を行うにはあまり適合していなかった。
【課題を解決するための手段】
【０００４】
一代表的な実施例によると、ユーザは、指定された様々なジェスチャを実行することによって、テレビ会議セッションなどの通信セッションを制御することができる。様々な時間にユーザの画像にアクセスすることによって、ジェスチャは自動的に認識され、マッピングされて、テレコミュニケーションセッションの開始又は終了の入力、セッションを様々な状態に移行させる入力などの、入力が制御される。いくつかある特徴の中で、インタフェースは、最初に認識されたユーザの描写（例えば、アバター）の周りを囲う、カスタマイズされたアイコンを表示してもよい。これによって、ユーザの身体の直接的、直感的、及び自然な動きによって、容易に文字のコマンドを選択できる。
【０００５】
他の代表的な実施例によると、コンピュータにより実施される処理は、一連のカメラ画像からユーザのジェスチャを認識するステップと、コントロールとユーザの描写を含むユーザインタフェースを生成するステップとを含む。この処理は、認識されたジェスチャに基づいて描写をコントロールと相互連動させるステップと、相互連動に基づいてテレコミュニケーションセッションを制御するステップと、も含む。
【０００６】
実施例は、１以上の以下の特徴を含んでもよい。例えば、テレコミュニケーションセッションを制御するステップは、テレコミュニケーションセッションを第１の状態から、異なる第２の状態に変更するステップをさらに含み、第１の状態又は第２の状態は、スタンバイ状態、通知状態、発信コール状態、接続状態、ミュート状態、メニュー状態、接続オプション状態、直接ダイアル状態、リダイアル状態、検索状態、ブラウザ状態、メッセージメニュー状態、メッセージ再生状態、又は構成設定状態を含んでもよい。テレコミュニケーションセッションは、音声とビデオのテレコミュニケーションセッションをさらに含んでもよい。
【０００７】
他の代表的な実施例では、テレコミュニケーションセッションを制御するステップは、関与表示ジェスチャの認識に基づいて、テレコミュニケーションセッションをスタンバイ状態からコール又はメニュー状態に変更するステップをさらに含んでもよい。この処理は、ユーザの識別を決定するステップと、決定された識別に基づいてコントロールを使用可能とするステップと、をさらに含んでもよい。この処理は、ユーザの決定された識別がコールの目的とされる受信者に適合した場合に限り、テレコミュニケーションセッションを接続状態からコール状態に変更するステップをさらに含んでもよい。この処理は、画像の中のユーザの識別を決定するステップと、決定された識別の少なくとも一つに基づいてコントロールを使用可能又は使用不可にするステップと、をさらに含んでもよい。
【０００８】
さらなる代表的な実施例では、テレコミュニケーションセッションを制御するステップは、非関与表示ジェスチャの認識に基づいて、テレコミュニケーションセッションをスタンバイ状態に変更するステップをさらに含んでもよい。この処理は、カメラ画像の一つをユーザに合焦するステップをさらに含んでもよい。カメラ画像の一つを合焦するステップは、移動しているユーザにカメラの焦点を保持するステップ、又は、カメラ画像の一つをユーザを中心に合わせるステップをさらに含んでもよい。この処理は、ユーザが中心となるように音声を定位するステップをさらに含んでもよい。ユーザのジェスチャを認識するステップは、第１のユーザが第１の関与表示ジェスチャを実行した後に第２のユーザが第２の関与表示ジェスチャを実行したことを認識するステップをさらに含み、テレコミュニケーションセッションを制御するステップが、第２のユーザが第２の関与表示ジェスチャを実行したことの認識に基づいて、第２のユーザに焦点を変更するステップをさらに含んでもよい。
【０００９】
他の代表的な実施例では、この処理は、第１のユーザが焦点を放棄したか否かを判定するステップを含み、第１のユーザが焦点を放棄した場合に限り、焦点は変更されるようにしてもよい。第１のユーザが焦点を放棄したか否かを判定するステップが、第１のユーザが話しを終えたか否かを判定するステップ、又は、第１のユーザが放棄ジェスチャを実行したか否かを判定するステップをさらに含んでもよい。この処理は、ユーザの識別を決定するステップをさらに含み、テレコミュニケーションセッションを制御するステップは、ブラウザ状態で、決定された識別に対応する連絡先群を表示するステップ、又は、ユーザによってかけられたコールの受信者に、決定されたユーザの識別を送信するステップをさらに含んでもよい。
【００１０】
他の代表的な実施例によると、デバイスは、一連のカメラ画像からユーザのジェスチャを認識し、コントロールとユーザの描写を含むユーザインタフェースを生成するように構成されたプロセッサを含む。プロセッサは、認識されたジェスチャに基づいて描写をコントロールと相互連動させ、相互連動に基づいてテレコミュニケーションセッションを制御するようにさらに構成される。
【００１１】
他の代表的な実施例によると、コンピュータ可読媒体はコンピュータプログラムで符号化される。コンピュータプログラムは、実行されると、一連のカメラ画像からユーザのジェスチャを認識するステップと、コントロールとユーザの描写を含むユーザインタフェースを生成するステップと、を含む動作を実行させる。この動作はまた、認識されたジェスチャに基づいて描写をコントロールと相互連動させるステップと、相互連動に基づいてテレコミュニケーションセッションを制御するステップと、を含む。
【００１２】
他の代表的な実施例によると、システムは、１以上のコンピュータと、１以上のコンピュータと連結したコンピュータ可読媒体とを含む。コンピュータ可読媒体は、自体の中に命令を保存している。かかる命令は、１以上のコンピュータによって実行されると、１以上のコンピュータに、一連のカメラ画像からユーザのジェスチャを認識するステップと、コントロールとユーザの描写を含むユーザインタフェースを生成するステップと、を含む動作を実行させる。この動作はまた、認識されたジェスチャに基づいて描写をコントロールと相互連動させるステップと、相互連動に基づいてテレコミュニケーションセッションを制御するステップと、を含む。
【００１３】
１以上の実施例の詳細について、以下、添付の図面を参照して説明する。本開示のその他の潜在的な特徴及び利点も、記載と図面、及び特許請求の範囲から明かになる。
【図面の簡単な説明】
【００１４】
【図１】機能強化されたカメラをベースとした入力を説明する概念図である。
【図２】機能強化されたカメラをベースとした入力を実施するために使用されるデバイスのブロック図である。
【図３】デバイスの構成要素の構成を示す図である。
【図４】機能強化されたカメラをベースとした入力を使用する代表的な処理を示す図である。
【図５】ユーザの描写を含むインタフェースの代表的な例を説明する図である。
【図６】ユーザの描写を含むインタフェースの代表的な例を説明する図である。
【図７】ユーザの描写を含むインタフェースの代表的な例を説明する図である。
【図８】図形と接触したユーザの描写の例を示す図である。
【図９】図形と接触したユーザの描写の例を示す図である。
【図１０】項目を選択するインタフェースの例を示す図である。
【図１１】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１２】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１３】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１４】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１５】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１６】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１７】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１８】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図１９】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２０】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２１】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２２】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２３】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２４】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２５】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２６】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２７】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２８】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図２９】ガイドラインに沿って配置された項目の代表的な選択を説明する図である。
【図３０】システムの状態を説明するフロー図である。
【図３１】通知ユーザインタフェースの例を示す図である。
【図３２】関与表示ハンドジェスチャを実行するユーザを含む、カメラ画像の例を説明する図である。
【図３３】非関与表示ハンドジェスチャを実行するユーザを含む、カメラ画像の例を説明する図である。
【図３４】会議テーブルに座った複数の人々を含むカメラ画像の例を説明する図である。
【図３５】カメラ画像をクロッピング及びスケール変換することによって、ユーザに合焦する例を示す図である。
【図３６】カメラ画像をクロッピング及びスケール変換することによって、ユーザに合焦する例を示す図である。
【図３７】第１のユーザから第２のユーザに焦点を変更するカメラ画像の例を示す図である。
【図３８】メニュー状態ユーザインタフェースの例を示す図である。
【図３９】直接ダイアル状態ユーザインタフェースの例を示す図である。
【図４０】リダイアル状態ユーザインタフェースの例を示す図である。
【図４１】リダイアル状態ユーザインタフェースの例を示す図である。
【図４２】接続オプション及び情報状態ユーザインタフェースの例を示す図である。
【図４３】メッセージ再生状態のユーザインタフェースの例を示す図である。
【図４４】他の代表的な実施例に係る、代表的なコンピュータ処理システムの構成を説明する図である。
【発明を実施するための形態】
【００１５】
本書で説明する機能強化された（ｅｎｈａｎｃｅｄ）手法を用いると、ユーザは、テレビ会議セッションなどの通信セッションを、様々な指定されたジェスチャを実行することによって、制御することが可能となる。様々な時間でユーザの画像にアクセスすることによって、ジェスチャは自動的に認識され、マッピングされて、テレコミュニケーションセッションの開始又は終了の入力、又は、セッションを様々な状態とする入力などの、入力を制御する。他の特徴の中で特に、インタフェースは、最初に、認識されたユーザの描写（例えば、アバター）を囲む、カスタマイズされたアイコンを表示して、ユーザの身体の直接的、直感的、及び自然な動きを通してキャラクタのコマンドの選択を容易にすることができる。
【００１６】
カメラ追跡を用いて、ユーザが音声及びビデオ通信を制御することを可能にするアプローチについて説明する。このアプローチは、例えば、通信システムが物理的にユーザの到達範囲外にある可能性のある役員室の環境、又は、ユーザがビジネスの環境にいるように現れることを希望する可能性のある他の場所で、使用することができる。このアプローチは、例えば、ソファに座っているユーザが、テレビ受信機又は他のディスプレイ装置に表示されるインタフェースを含む、通信システムと相互連動する可能性のある居間の環境でも使用してもよい。
【００１７】
アプローチは、一連のカメラ画像からユーザのジェスチャを認識し、コントロールとユーザの描写を含むユーザインタフェースを生成することができる。認識されたジェスチャに基づいて、システムは、描写をコントロールと相互連動させ、相互連動に基づいてテレコミュニケーションを制御することができる。
【００１８】
例えば、システムは、ユーザのハンドジェスチャを検出して、検出されたハンドジェスチャに基づいて機能を実行するように構成された、ハンドジェスチャ識別処理を含んでもよい。例えば、ユーザは、手、腕、又は身体の「関与表示（ｅｎｇａｇｅｍｅｎｔ）」ジェスチャを実行することによって、着信に応答してもよい。複数のユーザが呼に参加する実施例では、ユーザは、同一のジェスチャ、又は、「非関与表示」ジェスチャ、「焦点の変化」ジェスチャ、又は、「コントロール解除」ジェスチャなどの、異なるジェスチャを実行することによって、焦点を取得する、又は、焦点を変化することができる。
【００１９】
図１は、機能強化されたカメラをベースとした入力を説明するコンテキスト図である。図１は、居間１０２の図を含む。ユーザ１０４（すなわち、「ボブ」）は、カジュアルな服装をして、居間１０２の長椅子に、子供１０６の隣に座っている。ユーザ１０４と子供１０６は、ディスプレイ１０８（例えば、テレビ画面）の前に座っている。コールを受ける前は、番組を見ている、又はビデオゲームをプレイしていてもよい。
【００２０】
ディスプレイ１０８は、メディアハブ１１０に接続されている。メディアハブ１１０は、テレビ又はビデオ会議のコールを受けるように構成されている。メディアハブ１１０は、カメラ１１２（例えば、ウェブカメラ）に接続されている、又は、カメラ１１２（例えば、ウェブカメラ）を含む。本実施例では、ディスプレイ１０８は、スピーカ１１３を含む。他の実施例では、スピーカ１１３は、メディアハブに含まれる、又は、メディアハブとディスプレイ１０８（例えば、テレビ・スピーカ）の外部にある。メディアハブ１１０は、また、周囲の音を受けて、デジタル処理するマイクロホンを含む、あるいは、該マイクロホンに接続されている。
【００２１】
一つの例では、メディアハブ１１０は、着信を検出すると、ユーザ１０４に、音声、及び／又は、ビデオメッセージを用いて、ユーザ１０４に通知する。この例では、スピーカ１１３から「着信：取締役会」を示す音声が出力され、ユーザ１０４は、ユーザの会社の取締役会から着信があったことが通知される。このような通知は、例えば、テキスト音声変換機能をコーラＩＤ（発信者−ＩＤ）システムに適用する、又は、他の機構によって生成することができる。ボブのカジュアルな服装と周囲環境は、公式なテレビ会議を行う場合、懸念を生じかねないが、本書に記載の機能強化されたアプローチでは、カジュアルな服装と周囲環境を隠して、可視化されたアバターを生成することによって、又は、より好適な可視化によって置き換えることによって、これらの問題に対処している。
【００２２】
着信の検出に応答して、着信を受ける前までユーザ１０４が見ていたディスプレイ１０８の映像内容を、場合によっては、置換する、又は、該映像内容に部分的、又は完全に重ねて、ユーザインタフェース１２０をディスプレイ１０８に表示することができる。ユーザインタフェース１２０は、ユーザの描写１２１を含む。この例では、ユーザの描写１２１は、カメラの視野の領域１２４において、カメラ１１２によって撮像されたユーザ１０４の顔１２２を表示するアバターである。
【００２３】
ユーザ１０４がビジネススーツを着ていなくても、ユーザの描写１２１は、ユーザインタフェース１２０において、スーツとネクタイを着用して表示される。ユーザの描写１２１の外見（例えば、アバターの外見）は、発信者の識別、時刻、ユーザの好み、又は、その他の要因に基づいて変化してもよい。例えば、ユーザの設定に応じて、ユーザの描写は、ユーザ１０４により似せる、又は、より異ならせるように構成してもよい。より極端な例では、ユーザ描写１２１は、タキシードを着用している、又は、ユーザの実際の服装よりもカジュアルな服装（すなわち、水着）を着用していてもよい。さらに、ユーザの顔１２２又は他の身体部分を、例えば、より痩せて見える、異なった髪型又はスタイルで見える、アクセサリ（即ち、宝飾品）を取り外して見える、又は、全体的に全く異なって見える（即ち、宇宙人、アニメのキャラクタ、他の人間、又はその他の阿野）ように変化させてもよい。
【００２４】
ユーザインタフェース１２０は、項目１２６〜１３２の描写を含む。項目１２６〜１３２は、ガイドライン１３４に沿って配列してもよい。ガイドライン１３４は表示されてもよいし、表示されなくてもよい。
【００２５】
ユーザ描写１２１は、ユーザ１０４のジェスチャの動きに応じて制御される。例えば、ユーザ１０４が自身の左腕１３６を上げると、ユーザ描写１２１の左腕１３８も対応して上がる。他の例では、ユーザの動きとユーザ描写の動きとをミラー（ｍｉｒｒｏｒ）させてもよい。ユーザ１０４は自身の腕１３６を動かして、ユーザ描写１２１の手１４０を、項目１２６〜１３２の一つに近接させる、又は、重ね合わせることができる。例えば、手１４０が「コールを受ける」項目１３０に重なると、項目１３０と相互連動（ｉｎｔｅｒａｃｔｉｏｎ）するようにしてもよい。「コールを受ける」項目１３０との相互連動の結果、着信は受け付けられる。
【００２６】
図１は、役員室１５０の図を含む。発信者１５２（すなわち、「ジェーン」）が役員室１５０で他の人々とともに立っている。発信者１５２は、同様のシステムを用いて同様のジェスチャを実行し、コールしている。ユーザ１０４が発信者１５２からの着信を受け入れた結果、ユーザ描写１２１の画像１５４が、役員室１５０に設置されたディスプレイ１５６に表示される。画像１５４は、ユーザ１０４の周りを中心として、居間１０２の他の存在（すなわち、子供１０６）は表示しない。カメラ１５８とマイクロホンとともに、ディスプレイ１５６も、役員室１５０に配置されたメディアハブに接続されてもよい。
【００２７】
カメラ１５８によって撮像された発信者１５２の描写１６０は、ディスプレイ１０８に表示される。役員室のマイクロホンによって集音された発信者１５２の声の音声（すなわち、「今日はボブさん。こちらジェーンです」）は、スピーカ１１３で再生される。ディスプレイ１０８の挿入画像１６２はユーザインタフェース１２０を表示し、ユーザが通信を制御すること、例えば、コールの切断、又は、コールをミュートにすることなどを可能としている。
【００２８】
ユーザインタフェース１２０は、また、メニューボタン１７０、ユーザ設定ボタン１７２、消去ボタン１７４、オートコンプリートボタン１７６、使用不可状態のボタン１７８、ダイアルボタン１８０、テキスト領域１８２を含む。メニューボタン１７０を選択すると、追加の機能が表示されるようにしてもよい。ユーザ設定ボタン１７２を選択すると、ユーザ１０４に固有の設定が構成されるようにしてもよい。例えば、顔検出及び認識処理は、ユーザ１０４を識別していてもよい。
【００２９】
ユーザ１０４は、電話番号、連絡先、又はテキストメッセージをテキスト領域１８２に入力してもよい。例えば、ガイドライン１３４に沿って文字の描写が表示され、選択された文字がテキスト領域１８２に表示されるようにしてもよい。ユーザがダイアルボタン１８０を選択すると、テキスト領域１８２に表示された電話番号又は連絡先にコールが接続するようにしてもよい。オートコンプリートボタン１７６を選択すると、テキスト領域１８２に表示されたテキストと部分的に適合する、以前にダイアルされた数字又は連絡先が受け付けられるようにしてもよい。ユーザが消去ボタン１７３を選択すると、テキスト領域１８２から文字が消去されるようにしてもよい。
【００３０】
ユーザ１０４が音声メールの項目１２６を選択すると、音声メール機能がナビゲートされるようにしてもよい。無視の項目１２８を選択すると、着信が無視されるようにしてもよい。オフィスへ転送の項目１３２を選択すると、例えば、着信がオフィスの内線に転送されるようにしてもよい。
【００３１】
ボタン１７８は、子供１０６の存在の検出、又は、他の理由により、使用不可状態とすることができる。子供がカメラ１１２の視野の中に検出された場合、例えば、スピードダイアル又は長距離ダイアル機能、アダルト向けコンテンツへのアクセスを使用不可としてもよい。他の例では、ボタン１７８に関連する機能を、例えば、テキストメッセージングサービスが修理中、又はサービスが停止中の場合などに、通信プロバイダによって使用不可となるようにしてもよい。
【００３２】
図２は、機能強化されたカメラをベースとした入力を実施するために使用するデバイス２００のブロック図である。簡略には、デバイス２００は、特に、ユーザインタフェース２０１、ストレージ媒体２０２、カメラ２０４、プロセッサ２０５、マイクロホン２０６、１以上のスピーカ２０７、ネットワークインタフェース２０８を含む。個別の構成要素、又はそれらの関連する機能は組み合わせてもよい。
【００３３】
デバイス２００の代表的な物理的構成部又は構成要素について図３に示す。カメラ３０１とマイクロホン３０２はプロセッサ３０３に接続され、ディスプレイ１０４の頂部に配置されている。スピーカ３０５はディスプレイ３０４に取り付けられており、プロセッサ３０３はネットワーク３０６に接続されている。
【００３４】
図２に戻ると、プロセッサ２０５はＰＣ（パーソナルコンピュータ）、ケーブルテレビ受信機、ビデオゲームコンソール、電話、又はその他の種類のデバイスに含まれてよい。プロセッサ２０５は、任意の種類の電子デバイスに含まれてもよく、複数のプロセッサと組み合わせて動作してもよい。カメラ２０４はカメラ画像を撮像又は生成し、得られたカメラ画像はプロセッサ２０５に送付されてもよい。プロセッサ２０５は、本書に開示する技術を用いてカメラ画像を処理することができる。
【００３５】
マイクロホン２０６は、全指向性又は単方向性であってもよく、フィルタリングされた、又はフィルタリングされていない音声入力を受け取り、音声データを生成することができる音声データはプロセッサ２０５に送られる。プロセッサ２０５は、ユーザインタフェース２０１にレンダリングするユーザインタフェースを生成することができる。プロセッサ２０５はまた、音声データを生成することができる。生成された音声データはスピーカ２０７に送られて音声に変換される。
【００３６】
デバイス２００によって機能強化されたカメラをベースとした入力を用いて、ユーザインタフェースのコントロールとの相互連動、例えば、ユーザによる項目の選択などを容易にすることができる。コントロールとの相互連動は、再帰反射器、ジャイロ装置、又は、リモコンなどの特殊な対象物（ｏｂｊｅｃｔ）をユーザが手に保持することを不要とし、むしろ直感的な腕又は手の動きをカーソル又は他の入力にマッピングする。システムの特定の所望の構成に基づいて、特殊な機器を用いてもよい。
【００３７】
ユーザインタフェース２０１は、ユーザがデバイス、又はデバイスによって呼び出されたアプリケーションと相互連動することを可能とする仕組みである。ユーザインタフェース２０１は、入力と出力の両方に影響を与え、ユーザがデバイスを走査すること、又は、デバイスがユーザの走査の結果を生成することを可能とする。デバイス２００は、グラフィカルユーザインタフェース（ＧＵＩ）、音声ユーザインタフェース、又は感知性又は触覚性ユーザインタフェースなど、任意の種類のユーザインタフェース２０１を用いることができる。
【００３８】
ユーザインタフェース２０１は、視覚的なディスプレイ画像を提供するように構成することができる。例えば、ユーザインタフェース２０１は、モニタ、テレビ受信機、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ装置、プロジェクタ画面を有するプロジェクタ、裸眼立体ディスプレイ、陰極線管（ＣＲＴ）ディスプレイ、ＤＬＰ（ｄｉｇｉｇｔａｌ  光  ｐｒｏｃｅｓｓｉｎｇ）ディスプレイ、又は、ディスプレイ画像を提供するように構成されたその他の任意の種類のディスプレイ装置でよい。ユーザインタフェース２０１は、１以上のディスプレイ装置を含んでもよい。いくつかの構成では、ユーザインタフェース２０１は、コントロールと、アバターなどのオブジェクトを含む、アプリケーションによって生成されたディスプレイ画像など、アプリケーションに関連する画像を表示するように構成することができる。ストレージ媒体２０２は、情報又はデータを保存、及び記録し、光学式記憶媒体、磁気記憶媒体、フラッシュメモリ、又はその他の種類のストレージ媒体であってもよい。
【００３９】
カメラ２０４は、静止画像又は一連の動画像として画像を撮像するために用いるデバイスである。カメラ２０４は可視スペクトルの光を、あるいは、赤外線などの電磁スペクトルの他の部分とともに使用してもよい。例えば、カメラ２０４は、デジタルカメラ、デジタルビデオカメラ、又は、画像を撮像するために構成された、その他の任意の種類のデバイスでもよい。カメラ２０４は、１以上のカメラを含んでもよい。いくつかの例では、カメラ２０４は、アプリケーションと相互連動する、オブジェクト又はユーザの画像を撮像するように構成することができる。例えば、カメラ２０４は、カメラ２０４の視野の中でアプリケーションと物理的に相互連動するユーザ又は人物の画像を撮像するように構成することができる。
【００４０】
カメラ２０４は、ステレオカメラ、タイムオブフライトカメラ、又はその他の任意のカメラでよい。例えば、カメラ２０４は、動き、同様に、ユーザのジェスチャを検出するために背景画像をサンプリングすることができる画像検出器でもよい。カメラ２０４は、グレースケール画像、カラー画像、又は、距離画像を生成することができるステレオカメラ又はタイムオブフライトカメラなどのように、距離画像を生成することができる。ステレオカメラは、わずかに異なる視点で画像を取得する二つの画像センサを含むことができる。プロセッサは、異なる視点から取得された画像を比較し、画像の部分の距離を算出する。タイムオブフライトカメラは、光のパルスを生成するエミッタを含んでもよい。この光は赤外光でもよく、光のパルスがエミッタから対象物に至り、センサに戻る時間を測定して、画像の部分の距離を算出する。
【００４１】
デバイス２００は、有線又は無線経路を介してカメラ２０４及びユーザインタフェース２０１と電気的に接続し、プロセッサ２０５の動作を制御して、カメラをベースとした入力を行うように構成されている。一つの構成では、デバイス２００は、プロセッサ２０５又は他の制御回路を用いて、機能強化されたカメラをベースとした入力を行うアプリケーションを実行する。具体的には、デバイスはカメラ２０４から入力を受信し、受信した入力を処理して、ユーザインタフェース２０１のユーザの描写の位置と動きを算出し、これらの動きに基づいてコントロールと相互連動する。
【００４２】
一つの代表的な実施例では、カメラを用いてジェスチャを実行するユーザの画像を検出して、入力が行われる。例えば、携帯電話をテーブルに配置し、携帯電話は前を向いたカメラを用いて、ユーザの画像を生成するように動作することができる。あるいは、オプティカルフロー又はその他のアプローチを用いて、「左に傾く」ジェスチャを検出し、この検出したジェスチャを用いてユーザの描写を左に動かし、コントロールの左側にある項目を選択する、あるいは、「前方及び右に傾く」ジェスチャを検出して、ユーザの描写を上方、及び中立位置の右に動かし、コントロールの右上側にある項目を選択するなどして、ジェスチャをカメラ２０４を用いて検出又は認識してもよい。
【００４３】
したがって、カメラ２０４は、その他の種類の入力デバイス、又は、ジャイロスコープ、加速度計又はオプティカルフロー追跡器などの、デバイス２００の角度位置を検出することができるモジュールで置き換えることができる。このため、カメラを、傾斜センサの入力で捕捉する、又は、置き換えて、ユーザによる所望の機能又はコマンドを実行するようにしてもよい。このように、ユーザのジェスチャの検出は、カメラを使用せずに行ってもよい。例えば、ユーザインタフェースのコントロールに可視化するのと同じ種類のストロークパターンでデバイスを動かすことにより、ユーザは、同様のインタフェース又はアプリケーションを直接的、直感的、及び、視覚的に楽しく刺激のある手法で制御することができる。
【００４４】
マイクロホン２０６は、空間的に音を定位するように動作する複数のセンサを含んでもよい。マイクロホン２０６は、背景ノイズを抑圧して、エコーを消去するように動作するフィルタリング処理を含んでもよい。コンピュータモニタがオンボードのマイクロホンを含むなど、マイクロホン２０６はユーザインタフェース２０１の一部でもよく、又は、内蔵マイクロホンを有するウェブカメラがコンピュータモニタのＵＳＢポートと接続するなどして、ユーザインタフェース２０１から独立してもよい。音声スピーカ２０７は音声を生成するように動作する。マイクロホン２０６と同様に、音声スピーカ２０７は、ユーザインタフェース２０１の一部でもよく、又は、ユーザインタフェース２０１から独立してもよい。
【００４５】
プロセッサ２０５は、ネットワークインタフェース２０８を介して１以上のネットワークと接続することができる。プロセッサ２０５は、音声又はビデオ通信を他のシステムに送信することができる、コンピュータ、電話又はビデオネットワーク（例えば、インターネット、ＶＯＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、公衆交換電話網（ＰＳＴＮ）、テレビ会議サービス、又は、ケーブルテレビサービス）と接続することができる。ネットワークは、例えば、１以上のインターネット、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、アナログ又はデジタルの有線又は無線の電話網（例えば、ＰＳＴＮ、ＩＳＤＮ（Ｉｎｔｅｇｒａｔｅｄ  Ｓｅｒｖｅｃｅｓ  Ｄｉｇｉｔａｌ  Ｎｅｔｗｏｒｋ）、ｘＤＳＬ（Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ））、無線、テレビ、ケーブル、衛星、及び／又は、データ又はＶＯＩＰサービスを伝送するための、その他の任意の配信又はトンネリング機構を含むことができる。
【００４６】
ネットワークはさらに、回線交換方式の音声ネットワーク、パケット交換方式のデータネットワーク、又は、音声通信を伝送することができるその他の任意のネットワークを含むことができる。例えば、回線交換方式の音声ネットワークはＰＳＴＮを含むことができる。パケット交換方式のデータネットワークは、ＩＰ（ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ）、Ｘ．２５、又はフレームリレー、又は、その他の互換性のある技術に基づくネットワークを含むことができ、例えば、ＶＯＩＰ、又は、音声データ通信のために使用される他の互換性のあるプロトコルを用いて音声をサポートすることができる。ネットワークは、複数のネットワーク又はサブネットワークを含むことができる。ネットワーク又はサブネットワークの各々は、例えば、有線又は無線のデータ経路を有することができる。
【００４７】
デバイス２００は、音声及びビデオ通信を促す処理を実施することができる。例えば、プロセッサ２０５は、音声及びビデオ通信に関連するアプリケーションを実行して、ユーザを音声及びビデオ通信に関連するアプリケーションと相互連動させることができるインタフェースを、ユーザインタフェース２０１に描写することができる。
【００４８】
デバイス２００は、音声データ伸長処理を実施することができる。遠隔のユーザからの音声は圧縮データとしてネットワークを介して送信され、スピーカ２０７によって音声に変換される前に伸長することができる。音声データ伸長処理は、ＣＥＬＰ（Ｃｏｄｅ  Ｅｘｃｉｔｅｄ  Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｏｎ）、ＡＡＣ（Ａｄｖａｎｃｅｄ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ）などの、音声圧縮方法を用いることができる。
【００４９】
デバイス２００は、ビデオデータ伸長処理を実施することができる。遠隔ユーザのビデオは、圧縮されたデータとしてネットワークを介して送信され、ユーザインタフェース２０１によって表示される前に伸長することができる。画像伸長処理は、ＩＴＵ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ）Ｈ．３２３、Ｈ．２６４、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）ＭＰＥＧ−２、ＭＰＥＧ−４などの画像圧縮方法を用いることができる。
【００５０】
デバイス２００は、音声エコーキャンセル処理を実施することができる。エコーキャンセルは、音響エコーキャンセルを含むことができる。音声エコーは、スピーカ２０７によって生成された音が、マイクロホン２０６によって検知されると発生することがある。即ち、ネットワークを介して送信され、スピーカ２０７によって再生される遠隔のユーザからの音声は、マイクロホン２０６によって検知され、ネットワークを介して遠隔のユーザに戻される可能性がある。これは、好ましいことではない。音響エコーは、スピーカ２０７、マイクロホン２０６、環境（例えば、部屋の残響又は音響特性）の特性によって影響を受けることがある。
【００５１】
音響エコーキャンセル処理は、基準音声信号をサンプリングするステップと、スピーカを用いて基準音声信号から音声を生成するステップと、マイクロホンを用いて、スピーカによって生成された音声を検知するステップと、マイクロホンによって検知された音声を第２の音声信号としてサンプリングするステップと、を含むことができる。スピーカ、マイクロホン、及び環境の特性の影響を相殺するための予測基準音声信号は、第２の音声信号と比較して生成することができる。予測基準音声信号を第２の音声信号から除去して、エコーが抑圧された、又は除去された第３の音声信号を生成することができる。本開示は、特定のエコーキャンセル処理に限定されず、エコーキャンセルのための他の技術を使用してもよい。
【００５２】
デバイス２００は、音声データ圧縮処理を実行することができる。マイクロホンによって検知され、エコーキャンセル処理によって処理された、ローカルユーザからの音声は、圧縮して、ネットワークを介して遠隔のユーザに圧縮されたデータとして送信することができる。音声データ圧縮処理は、ＣＥＬＰ（Ｃｏｄｅ  Ｅｘｃｉｔｅｄ  Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｏｎ）、ＡＡＣ（Ａｄｖａｎｃｅｄ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ）などの、音声圧縮方法を用いることができる。
【００５３】
システムは、画像データ圧縮処理を実行することができる。カメラによって撮像された、ローカルユーザの画像は、圧縮して、ネットワークを介して遠隔のユーザに圧縮されたデータとして送信することができる。画像圧縮処理は、ＩＴＵ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ）Ｈ．３２３、Ｈ．２６４、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）ＭＰＥＧ−２、ＭＰＥＧ−４などの画像圧縮方法を用いることができる。
【００５４】
プロセッサ２０５は、ハンドジェスチャ識別処理、顔検出処理、顔識別処理、ユーザ位置処理、ユーザの描写を生成するための処理、ユーザの位置をアプリケーションが生成した項目と比較する処理を含む、複数のカメラ追跡処理を実行するように動作することができる。これらの処理のいくつかは、オプションであり、組み合わせてもよい。システムは、これらの処理に限定されず、他の処理を実行して、本開示に記載の技術を実施してもよい。
【００５５】
いくつかの実施例では、プロセッサ２０は、音声伸長処理、画像伸長処理、エコーキャンセル処理、音声圧縮処理、画像圧縮処理を含む、複数の音声及びビデオ通信処理を実行するように動作することができる。音声及びビデオ通信を促す処理のいくつか、又は全てを、プロセッサ２０５が実行してもよい。あるいは、プロセッサ２０５が、通信動作を実行する外部のデバイスと通信してもよい。
【００５６】
デバイス２００を、パーソナルコンピュータ（ＰＣ）又はセットトップボックスとして説明したが、かかる説明は、簡潔さのみを目的とするものであり、他の実施例又は具現化も想到可能である。例えば、デバイス２００を、テレビ受信器、ミュージックプレーヤ、デジタルピクチャフレーム、ＵＭＰＣ（ｕｌｔｒａ−ｍｏｂｉｌｅ  ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ）、ＭＩＤ（ｍｏｂｉｌｅ  ｉｎｔｅｒｎｅｔ  ｄｅｖｉｃｅ）、デジタルピクチャフレーム（ＤＰＦ）、ポータブルメディアプレーヤ（ＰＭＰ）、汎用コンピュータ、又は、専用コンピュータ（例えば、デスクトップコンピュータ、ワークステーション、又はラップトップコンピュータ）、サーバ、ゲーム機又はコンソール、又は、命令を実行するように構成された、プロセッサ又は他の制御回路を含む、他の任意の種類の電子デバイス、又は、ユーザインタフェースを含む他の任意の装置として実装してもよい。
【００５７】
図４は、テレコミュウニケーションセッションを制御するための代表的な処理４００を説明する図である。簡潔には、処理４００は、一連のカメラ画像からユーザの処理を認識するステップと、コントロールとユーザの描写を含むユーザインタフェースを生成するステップと、認識されたジェスチャに基づいて、描写をコントロールと相互連動させるステップと、相互連動に基づいてテレコミュニケーションセッションを制御するステップと、を含む。他の処理を用いてもよい。処理４００は、図示とは異なる順序で行ってもよく、又は、より少ない動作、又はより多くの動作を含んでもよい。
【００５８】
より詳細には、処理４００が開始すると（Ｓ４０１）、ユーザのジェスチャが一連のカメラ画像から認識される（Ｓ４０２）。例えば、１以上のカメラ画像を観測して、ハンドジェスチャ、又は、他のオブジェクト又は身体部分によって行ったジェスチャを識別することができる。例えば、カメラは、ディスプレイ装置に表示されるインタフェースと相互連動するユーザの一以上の画像を撮像することができる。プロセッサは、カメラによって撮像された画像にアクセスして、画像処理を実行することによってハンドジェスチャを識別することができる。
【００５９】
本書で使用する「ジェスチャ」とは、１以上の人体の一部又は全体を用いた非言語コミュニケーションの形態を意味し、会話などの言語コミュニケーションと対比するものである。例えば、ジェスチャは、第１の位置、姿勢又は表現と第２の位置、姿勢又は表現との間の動き、変化又は変形として定義されてもよい。代表的なジェスチャとして、例えば、「エアクオーツ」のジェスチャ、お辞儀のジェスチャ、挨拶、頬キス、指又は手の動き、ひざまずくこと、頭を振ること、又は頭の動き、ハイファイブ、頷き、悲しい顔、拳を上げること、敬礼、手を上げる、又は手を振る動き、親指を立てる動き、手で円を描く動き、手を振るジェスチャ、指を指すジェスチャなどを含むことができる。
【００６０】
したがって、一連の画像から、ユーザの考え、意見、感情、コミュニケーション、コマンド、実演又は表現を定義するジェスチャを導き出すことができる。例えば、ユーザのジェスチャは、１つ又は複数の指ジェスチャ、１つのハンドジェスチャ、１つの手及び腕のジェスチャ、１つの手、腕、及び身体ジェスチャ、両手で行うジェスチャ、頭部のポーズ又は姿勢の変化、目の位置の変化、顔の表情の変化、身体のポーズ又は姿勢の変化、又は、その他のいかなる表現可能な身体の状態の変化であってもよい。
【００６１】
簡潔のため、当該ジェスチャを行うために用いる身体の１以上の部分を概して、「コントロールオブジェクト」と呼ぶ。例えば、ユーザは、身体全体、又は、その他の物理的な物体を用いてコマンドを表現してもよく、そのような場合、身体全体又はその他の物理的な物体がコントロールオブジェクトとなりうる。ユーザは、目をまばたく、鼻を広げる、指をひらひらさせることによって、より微細にコマンドを表現することができる。その場合、まぶた、鼻又は指がコントロールオブジェクトとなりうる。一つの画面、又は二つの画面の間のユーザのジェスチャは、使用可能、又は「関与表示」ジェスチャを表すことができる。コントロールオブジェクトはまた、赤外線フィンガーライト、再帰反射器、又はリモコンなどの物理的なデバイスでもよい。
【００６２】
ハンドジェスチャを識別する処理は、動きを分析するステップを含むことができる。動きを分析するステップは、一連のカメラ画像からオプティカルフローマップを算出するステップと、類似した方向及び大きさの動きを有するフローマップの領域をクラスタ化するステップと、クラスタ化された時間期間の動きを統計モデル（例えば、隠れマルコフモデル）と比較して、動きをジェスチャとして分類するステップと、を含む。動きは、外見と位置が変わらないので、赤外線カメラ画像シーケンス（例えば、皮膚色とは依存しない）で検出することができる。動きが赤外線カメラ画像で検出される実施例では、ジェスチャは、低い周辺光で検出することができる。動きの分析は、距離を測定することができるカメラ（例えば、ステレオカメラ、タイムオブフライトカメラ）を用いた場合、二次元の動き、又は、三次元の動きを用いることができる。
【００６３】
ハンドジェスチャを識別する処理は、色を分析するステップを含んでもよい。色を分析するステップは、カメラ画像を色モデルと比較するステップと、人間の皮膚と一致した色を有するカメラ画像の部分を識別するステップと、人間の皮膚と一致する色を有するカメラ画像の部分をクラスタ化するステップと、クラスタがサイズと形状の基準群に適合する場合は、そのクラスタを手として分類するステップと、を含む。色を分析するステップは、クラスタの形状を手のポーズの基準群と比較して、手のポーズをハンドジェスチャとして識別するステップを、さらに含むことができる。色を分析するステップは、あるいは、時間期間にわたる、手のクラスタの位置の経路を生成するステップと、この経路を統計モデルと比較して、動きをジェスチャとして分類するステップと、含んでもよい。
【００６４】
ハンドジェスチャを識別する処理は、特徴を分析するステップを含むことができる。特徴を分析するステップは、カメラ画像の中の基本的な形状特徴（例えば、エッジ）を識別するステップと、手に相当することができる、特徴群を識別するステップを含むことができる。特徴の空間的構成を、統計モデルと比較して、手のポーズ又は手の動きをジェスチャとして分類することができる。
【００６５】
ハンドジェスチャを識別する処理は、手の位置を顔（又は身体）の位置と比較するステップと、相対的な手の位置を使用するステップと、をさらに含むことができる。顔の位置は、顔検出処理によって決定することができ、検出された顔の位置に対する相対的な手の位置を使用して、ジェスチャ又は他の入力コマンドを検出することができる。
【００６６】
ハンドジェスチャを識別する処理は、動き、色、形状の技術を組み合わせることができる。本開示は、特定のハンドジェスチャ検出処理に限定されず、ハンドジェスチャ又は他の入力コマンドを検出する他の技術を使用してもよい。
【００６７】
システムは、１以上のカメラ画像の中の顔を検出する処理を実施することができる。顔検出処理は、１以上のカメラ画像の中で人間の顔の場所、サイズ、又はその他の物理的特性を決定することができる。
【００６８】
カメラ画像の中の顔を検出する処理は、色を分析する処理を含むことができる。色を検出する処理は、カメラ画像を色モデルと比較するステップと、人間の皮膚と顔の特徴と一致する色を有するカメラ画像の部分を識別するステップと、人間の皮膚と顔の特徴と一致する色を有するカメラ画像の部分をクラスタ化するステップと、クラスタがサイズと形状の基準群に適合する場合は、そのクラスタを顔として分類するステップと、を含む。
【００６９】
カメラ画像の中の顔を検出する処理は、特徴を分析するステップを含むことができる。特徴を分析するステップは、１以上のカメラ画像の中の特徴（例えば、エッジ）を識別するステップと、顔に相当することができる、特徴群を識別するステップを含むことができる。本開示は、特定の顔検出処理に限定されず、顔を検出する他の技術を使用してもよい。
【００７０】
システムは、１以上のカメラ画像の中の顔を認識して特定のユーザを識別する処理を実施することができる。例えば、プロセッサ１０３は、カメラ１０１によって撮像された画像を分析して、カメラ１０１の前方に位置するユーザの顔を検出することができる。顔を検出した後、プロセッサ１０３は、検出された顔を分析して、検出された顔が、識別可能なユーザ又は既知のユーザに属するか否かを判断することができる。
【００７１】
カメラ画像の中の顔を識別する処理は、顔が検出された画像の部分を選択するステップと、画像のその部分を、テンプレートと比較するステップを含むことができる。システムは、ユーザのテンプレートを含むことができる。テンプレートは、以下により詳細に説明する技術を用いて、構成設定状態（ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｓｔａｔｅ）で生成することができる。
【００７２】
カメラ画像の中の顔を識別する処理は、距離カメラ（例えば、ステレオカメラ又はタイムオブフライトカメラ）を用い、三次元の顔認識処理を含むことができる。三次元の顔認識処理は、（例えば、顔検出処理の結果を用いて）顔が検出された画像の部分を選択するステップと、検出された顔の三次元モデル（例えば、メッシュデータ）とテクスチャモデルを生成するステップと、三次元モデルとテクスチャモデルをユーザのテンプレートと比較するステップを含むことができる。テンプレートは、以下により詳細に説明する技術を用いて、構成設定状態で生成することができる。
【００７３】
カメラ画像の中の顔を識別する処理は、固有画像（ｅｉｇｅｎｉｍａｇｅ）処理を用いるステップを含むことができる。固有画像顔認識処理は、（例えば、顔検出処理の結果を用いて）顔が検出された画像の部分を選択するステップと、共分散マトリクスを算出するステップと、共分散マトリクスの固有ベクトルと固有値を算出するステップと、主成分分析を実行して、主成分を選択し、固有値と固有ベクトルの次元数を削減するステップと、得られた固有画像データを所定の固有画像データ群とを比較して、検出された顔と、所定の固有画像データ群の顔との間の類似測定値群を生成するステップと、統計分析を実行して、固有画像を特定のユーザの顔として分類するステップと、を含むことができる。統計分析は、以下により詳細に説明する技術を用いて構成設定状態で実行された、学習処理の間に生成されたデータを使用することができ、本開示は、特定の顔識別処理に限定されず、顔を識別する他の技術を用いてもよい。
【００７４】
システムは、ユーザと関連するカメラ画像の部分を識別する処理を実施することができる。ユーザの位置は、1以上のユーザの手の位置を含むことができる。あるいは、ユーザの位置は、ユーザの身体、又は、ユーザの顔の位置を含むことができる。ユーザの位置は、ユーザの形状の記載を含んでもよい（例えば、シルエット又は輪郭）。ユーザの位置は、例えば、カメラ画像のピクセルごとに、ピクセルを前景（例えば、ユーザの一部）又は背景として分類する区分データを含んでもよい。ユーザの位置処理は、区分されたカメラ画像を生成する処理を含んでもよい。
【００７５】
区分されたカメラ画像は、クロマキー処理されたカメラ画像でもよい。クロマキー処理されたカメラ画像は、色のついた背景の前に立ったユーザから取得することができる。いくつかの実施例では、クロマキー処理は、背景の色と適合する色のカメラ画像の部分を識別し、それらの部分を背景として分類する。背景の色から外れた色のカメラ画像の部分は、ユーザの部分の可能性があり、前景として分類される。
【００７６】
クロマキー処理は、背景の色モデルを生成するステップを含むことができる。色モデルは、背景を表す色の範囲を定義することができる。クロマキー処理は、画像と色モデルとを比較するステップと、ピクセルごとに、ピクセルの色の値が、色モデルが示す色の範囲の中にある場合は背景として、そうでない場合は前景として分類するステップと、を含むことができる。
【００７７】
クロマキー処理は、ノイズを削減し、小さな孤立クラスタの分類を変更する（例えば、前景として分類されてもよい背景の孤立部分を削除し、前景の穴を埋める）、フィルタリング処理をさらに含むことができる。フィルタ処理は、畳み込みカーネルを含むことができる。
【００７８】
区分されたカメラ画像は、デプスキー（ｄｅｐｔｈ  ｋｅｙｅｄ）カメラ画像でもよい。デプスキーカメラ画像は、通常、範囲を判定できるカメラ（例えば、ステレオカメラ又はタイムオブフライトカメラ）によって取得する。タイムオブフライトカメラの一例は、赤外線エミッタが赤外線光のパルスを放射し、光が対象物に至り、カメラに戻る時間を光センサが測定する、Ｃａｎｅｓｔａ社製のものを含む。タイムオブフライトカメラは、測定された時間に基づいて対象物の距離を算出する。
【００７９】
ステレオカメラの一例は、ステレオカメラが、複数の視点からのシーンの画像を撮像する複数の光センサを含み、複数の画像を比較して、複数の視点の間の対象物の位置の差異を判定する、Ｔｙｚｘ社製のものを含む。ステレオカメラは、判定した差異に基づいて対象物の距離を算出する。
【００８０】
画像の部分は、画像の部分に含まれる対象物の距離に基づいて、前景と背景に分類することができる。分類処理は、距離を閾値と比較し、距離が閾値より短い場合は部分を前景として分類し、距離が閾値よりも長い場合は部分を背景として分類するステップを含むことができる。例えば、分類処理は、距離と背景モデルを比較するステップを含むことができる。背景モデルは、ユーザのいないシーンの部分（例えば、床と家具）の深さを表す。この例では、分類処理は、距離がモデルの対応する部分よりも短い場合は部分を前景として分類し、距離がモデルの対応する部分以上の場合は部分を背景として分類する。
【００８１】
デプスキー処理は、ノイズを削減し、小さな孤立クラスタの分類を変更する（例えば、前景として分類されてもよい背景の孤立部分を削除し、前景の穴を埋める）、フィルタリング処理をさらに含むことができる。フィルタ処理は、畳み込みカーネルを含むことができる。
【００８２】
区分されたカメラ画像は、背景モデルを用いて区分してもよい。クロマキー処理されたカメラ画像は、任意の静止した背景の前に立ったユーザから取得することができる。カメラ画像は、背景の予想される外観を表す背景モデルと比較することができる。背景モデルは、背景の部分（例えば、ピクセル）ごとに、背景を表す色の範囲を有することができる。背景色モデルは、ユーザのいないシーンの画像を保存することによって取得することができる。カメラ画像の部分は、その部分の色が背景色モデルの対応する部分の色と類似している場合は、背景として分類することができる。カメラ画像の部分は、その部分の色が背景色モデルの対応する部分の色と類似していない場合は、前景として分類することができる。
【００８３】
背景区分処理は、ノイズを削減し、小さな孤立クラスタの分類を変更する（例えば、前景として分類されてもよい背景の孤立部分を削除し、前景の穴を埋める）、フィルタリング処理をさらに含むことができる。フィルタ処理は、畳み込みカーネルを含むことができる。背景区分処理は、背景又は周辺光の変化を補償するために背景モデルを更新する学習処理をさらに含むことができる。
【００８４】
区分されたカメラ画像は、皮膚色モデルを用いて区分してもよい。カメラ画像は、ユーザの皮膚の予想される外見を表す皮膚色モデルと比較することができる。皮膚色モデルは、サンプリングされた多数の人々の画像の皮膚色に基いて、予め定義しておくことができる。いくつかの実施例では、カメラ画像の部分は、その部分の色が皮膚色モデルの中の色と類似している場合は、前景として分類することができる。カメラ画像の部分は、その部分の色が皮膚色モデルの中の色と類似していない場合は、背景として分類することができる。
【００８５】
区分されたカメラ画像は、動画像でもよい。動きを含む画像の部分を前景として分類し、静止して見える画像の部分を背景として分類することができる。カメラ画像を動きによって区分する処理は、一連のカメラ画像を取得するステップと、連続する画像の間の差異を算出するステップと、差異を閾値と比較するステップと、を含むことができる。動き区分処理は、ノイズを削減し、小さな孤立クラスタの分類を変更する（例えば、前景として分類されてもよい背景の孤立部分を削除し、前景の穴を埋める）、フィルタリング処理をさらに含むことができる。フィルタ処理は、畳み込みカーネルを含むことができる。
【００８６】
動き区分処理は、動き履歴処理をさらに含むことができる。いくつかの例では、動き履歴処理は、ピクセルごとに最新の動きに対応する時間の描写を保存する。動き履歴処理は、ピクセルごとに、動き履歴からその動きが時間閾値の中で発生したことが明らかであると、そのピクセルを前景として分類し、そうでない場合はそのピクセルを背景として分類することができる。
【００８７】
区分データが表すユーザ位置を、ユーザの手に対応するユーザ位置に改良する処理は、区分されたカメラ画像の前景部分の形状を分析するステップを含むことができる。例えば、処理は、最上位の前景部分（例えば、ピクセル）を識別し、ユーザ位置を最上位の前景部分の位置として算出してもよい。あるいは、区分されたカメラ画像の前景部分の形状を分析するステップは、前景部分の輪郭を生成する処理、輪郭の形状特徴を識別する処理、及び、形状特徴を手として識別する処理を含むことができる。ユーザ位置を、手の位置として算出してもよい。
【００８８】
ユーザの手に対応するユーザ位置を判定する処理は、カメラ画像を分析して、ユーザの手を識別するステップと、手の位置を判定するステップを含むことができる。カメラ画像の中で手の位置を識別する代表的な方法は、カメラ画像の部分を、ユーザの皮膚の予想される外見を表す皮膚色モデルと比較する。カメラ画像の部分は、その部分の色が皮膚色モデルの中の色と類似している場合は、皮膚として分類することができる。皮膚として分類された部分を、部分のクラスタにクラスタ化され、全体の位置とサイズが１以上の基準に適合する部分のクラスタを手として分類することができる。本開示は、カメラ画像の中の手の位置を識別する特定の方法に限定されず、手を追跡する他の方法を採用してもよい。
【００８９】
図４に戻り、ジェスチャが認識されると、コントロールとユーザの描写を含むユーザインタフェースが生成される（Ｓ４０４）。ユーザの描写は、インタフェースと相互連動するために必要とする学習と技能を最小にするために表示することができる。ユーザの描写は、ユーザが、画面上の項目の位置に対する自身の手の位置を認識して、自身の手の位置を項目位置と一致するように動かすことを容易にできる。ユーザの描写は、例えば、アバター、又は、マウスカーソルでもよい。
【００９０】
ユーザインタフェースが生成されると、描写は、認識されたジェスチャに基づいてコントロールと相互連動する（Ｓ４０６）。例えば、ユーザの描写に近接した（例えば、マウスカーソルに近接した、又は、アバターの手に近接した）ボタン又は項目を選択することができる。
【００９１】
描写とユーザインタフェースのコントロールとの相互連動に基づいて、テレコミュニケーションセッションが制御され（Ｓ４０８）、処理４００は終了する（Ｓ４０１）。いくつかの例を挙げると、例えば、着信が受け付けられるか、あるいは拒否される、音声メールメッセージが再生される、又は、電話番号又は連絡先がダイアルされる。
【００９２】
図５に、代表的なユーザインタフェース５００を示す。ユーザインタフェース５００は、ユーザ描写５０１を含む。ユーザインタフェース５００は、項目５０２、テキスト５０３、ボタン５０４、５０５、５０６、５０７などの前景図形群を含むことができる。前景図形群は、一部がユーザ描写５０１に描写されてもよく、部分的にユーザ描写５０１を遮蔽してもよい。
【００９３】
ユーザインタフェース５００を表示することは、カメラ画像を第２の画像と混合することを含むことができる。第２の画像は、アプリケーションにより生成された画像、ビデオゲーム画像、テレビ画像などを含むことができる。カメラ画像を混合することは、例えば、ユーザインタフェースのピクセルごとに、カメラ画像のピクセル値と第２の画像のピクセル値を結合することを含むことができる。以下に示すように、式（１）を用いて、カメラ画像と第２の画像とを混合してもよい。ここでＤは結果を表し、Ｃはカメラ画像を表し、Ｓは第２の画像を表し、ｘとｙは、画像の中のピクセル位置を示し、αは、０から１の範囲の混合比を表す。
【数１】
0005559691.tif 000002
【００９４】
図６に、ユーザ描写６０１を含むユーザインタフェース６００の他の例を示す。ユーザの描写を表示する実施例は、区分された画像を表示するステップを含むことができる。区分された画像は、前景部分と背景部分に区分されている。いくつかの実施例では、ユーザの描写の部分となりうる画像の部分（例えば、ピクセル、エリア、ブロック、ポイント又は領域）を、前景として分類し、ユーザの描写の部分となる見込みのない部分を背景として分類する。
【００９５】
区分された画像を表示することは、前景として分類された部分のみをレンダリングすることを含むことができる。前景として分類された部分のみをレンダリングする一実施例は、前景部分は不透明に、背景部分は透明になるように、不透過度を表すアルファチャネルを生成するステップを含むことができる。この実施例では、ユーザ描写６０１はアルファチャネルを用いて背景図形群と結合され、ユーザ描写６０１は背景図形６０３を（例えば、エリア６０２において）遮蔽する。項目６０４、テキスト６０６、ボタン６０８、６１０、６１２、６１４の描写を含む前景図形群は、結合されたユーザ描写６０１と背景図形の上にレンダリングされ、部分的にユーザ描写６０１と背景図形を遮蔽する。追加の前景及び背景図形はアプリケーションによって生成することができる。
【００９６】
図７に、ユーザ描写７０１を含むユーザインタフェース７００のさらなる例を示す。ユーザの描写を表示する実施例は、コンピュータマウスカーソル又は手の図形描写など、コンピュータが生成した画像を表示するステップを含むことができる。図７に示すように、コンピュータが生成した画像７０１の位置は、ユーザの位置７０２に対応してもよく、ユーザの描写であってもよい。
【００９７】
ユーザの描写を表示する実施例は、（例えば、ビデオ会議コールで）発信するビデオのプレビューを表示するステップを含むことができる。ユーザがインタフェースと相互連動することを支援するために、ユーザの他の描写を表示してもよい。ユーザがインタフェースと相互連動することを支援するために、ユーザの動き（例えば、過去の動き又は動き履歴）の描写を表示してもよい。
【００９８】
システムは、ボタンなどの前景図形にユーザが接触した時を検出する処理を実施することができる。ユーザは、ユーザの描写、又は、描写の一部が、前景図形によって占められる位置と一致するユーザインタフェースの中の位置を占める、指し示す、又は近接する時を検出する処理を実施することができる。
【００９９】
図８に、図形と接触したユーザの描写の例を示す。ユーザの接触を判定する処理は、カメラ画像が前景部分と背景部分とに区分されたカメラ画像を分析するステップを含むことができる。図８に示すように、ユーザを表す可能性のある画像の部分（例えば、ピクセル）を前景８０３として分類し、ユーザを表す見込みのない画像の部分（例えば、ピクセル）を背景として分類することができる。領域８０１は、ボタン８０２などのように、相互連動する前景図形のサイズと位置を表すように領域８０１を規定することができる。処理は、陰影を付けたエリア８０４に示すように、領域の中（例えば、領域８０１の中）において、区分されたカメラ画像の部分（例えば、ピクセル）を判定することができる。区分されたカメラ画像を用いて接触を判定する処理は、領域８０１の中の前景部分（例えば、ピクセル）の数をカウントするステップと、カウントした数と閾値を比較するステップと、カウントした数が閾値を上回る場合、接触したとして領域を分類するステップと、を含むことができる。
【０１００】
いくつかの実施例では、区分けされたカメラ画像を用いてユーザ位置を判定する処理は、ある時間期間における領域８０１の中のカウントした前景部分（例えば、ピクセル）の数を累積するステップを含むことができる。ビデオフレームごとに、累積したカウント数から所定の数を最小でゼロまで引き、累積したカウント数に最新のカウント数を最大で閾値となるまで追加することができる。累積したカウント数が閾値に到達すると、領域を接触されたと分類することができる。前景図形は、ユーザに視覚的なフィードバックを与えるため、閾値に対する累積したカウント数の描写を含んでもよい。例えば、図形は、棒グラフ又は円グラフ８０５を含んでもよく。又は、累積したカウント数に応じて色又はサイズを描写するようにしてもよい。
【０１０１】
図９に、図形と接触したユーザの描写の他の例を示す。ユーザの接触を判定する処理は、ユーザの位置と領域とを比較するステップを含むことができる。図９に示すように、領域９０１は、領域９０１が相互連動する、ボタン９０２などの前景図形のサイズと位置を表すように定義することができる。ユーザの位置を用いて接触を判定する処理は、ユーザ位置９０３が領域９０１の中にある時、領域９０１を接触されたと分類するステップを含むことができる。
【０１０２】
いくつかの実施例では、区分されたカメラ画像を用いてユーザ位置を判定する処理は、ユーザ位置が領域の中にある時間期間又はビデオフレームの数をカウントするステップを含むことができる。ビデオフレームごとに、ユーザの位置が領域の中にあると判定された場合、カウントの数を（最大値の閾値まで）増加させ、ユーザの位置が領域の中にない場合はカウントの数を（最小値のゼロになるまで）減少させる。累積されたカウント数が閾値に到達した場合、領域は、接触されたと分類することができる。前景図形は、ユーザに視覚的なフィードバックを与えるため、閾値に対する累積したカウント数の描写を含んでもよい。例えば、図形は、棒グラフ又は円グラフ９０５を含んでもよく。又は、累積したカウント数に応じて色又はサイズを描写するようにしてもよい。
【０１０３】
システムは、ユーザの項目選択を容易にする機能強化されたユーザインタフェース処理を実施してもよい。項目は、テキスト、数字を含むことができ、機能強化されたユーザインタフェース処理は、テキスト及び数字の入力を容易にする。
【０１０４】
図１０に、アイコン又はアバター（波線の円で描く）などのオブジェクト１００２と、ガイドライン１００４をさらに有するコントロール１００５と、を含むユーザインタフェース１００１を示す。ガイドライン１００４は、図１０では波線で描かれいているが、他の代表的な実施例では、ガイドライン１００４は実線で描かれるか、又は、全く描かれない。
【０１０５】
コントロール１００５は、文字１００６などの項目の直感的な選択又は出力を可能とすると同時に、ガイドライン１００４に隣接する、近傍にある、部分的又は完全に境界される、あるいは、画定される領域のオブジェクト１００２の一部又は全体を表示することができる。ユーザが、テキストデータの入力を要求する入力フィールドを選択するなどして、項目を出力又は選択すると判断されると、コントロール１００５は、項目１００６とオブジェクト１００２を表示することができるユーザインタフェース１００１の場所に配置される。このため、オブジェクト１００２に対して、関連して、基づいて、又は関して画定される。換言すると、オブジェクト１００２の位置は、ガイドライン１００４とコントロール１００５のその他の要素が方向付けされる、配列される、又は、他の要素を配置することができる、アンカー位置を表すことができる。
【０１０６】
このアンカー位置を決定するため、ガイドライン１００４を画定するオブジェクトと、そのオブジェクトの位置が決定される。いくつかのケースでは、コントロール１００５がアバター、ユーザの画像、つまみ、アイコン、リスト、データのテーブル、データのグラフ、テキスト入力フィールド、他のコントロール又はウィジェット、又は、ユーザインタフェース１００１の既知の空白領域と関連して、又は、含んで出力される場合など、オブジェクトは予め決定、又は画定しておいてもよい。他のケースでは、ユーザがテキストフィールドにタブ操作をし、テキストフィールドをオブジェクトして使用する時、ユーザインタフェース１００１の空白領域がユーザインタフェース１００１の現在の状態に基づいて配置される場合、画面で最大、最重要、最も色彩に富んでいる、又は最も色彩に乏しい対象物がオブジェクトとして動的に決定される場合、中心（ｉｎ−ｆｏｃｕｓ）要素、領域又はウインドウがオブジェクトとして動的に決定される場合など、オブジェクトは、コントロール１００５が出力される時に動的に決定される。
【０１０７】
これらのケース又は他のケースでは、オブジェクト１００２のサイズ、形状、位置、境界、その他のコンテキストが検出され、ガイドライン１００４は、これらの検出されたコンテキストとの関係で定義される。例えば、ガイドライン１００４は、オブジェクト、又はオブジェクトの一部と重複関係又は非重複関係、分岐関係、分割関係、空間的に制約される、又は制限される関係、又は、オブジェクト１００２のサイズ、形状、割合、解剖学的モデルに基づくその他の任意の関係を有するように定義してもよい。
【０１０８】
要約すると、特に、ユーザインタフェース１００１は、オブジェクト１００２と、項目群を形成する項目１００６とを含む。オブジェクト１００２は、ユーザの描写でもよい。項目１００６は、ユーザが便利に信頼性をもって各項目を選択できるようなサイズと位置に表示されるように、項目１００６は動的な方式で表示することができる。項目１００６の各々を大きなサイズでユーザインタフェース１００１の中に、又はガイドライン１００４と配列することが困難である場合、項目１００７の部分群をより大きなサイズで描写してもよい。
【０１０９】
図１１〜１５に、ガイドラインに沿って配列された項目群から特定の項目を選択する代表的な例を図示する。図１１において、項目群１１０１は、ガイドライン１１０１Ａに沿って配列されており、カーソル１１０４は関心のある項目１１０１ｒに向けて移動する。カーソル１１０４はマッピングされてアバターの手として描写される。
【０１１０】
図１２において、カーソル１２０４の位置がガイドライン１２０２を交差する。ガイドライン１２０２との交差により、各項目とカーソル１２０４との間の距離に基づいて、項目群１２０１の部分群１２０１ａを選択又は識別するさらなる検出処理を開始することができる。カーソル１２０４の位置は、カメラ画像で検出される、ユーザの身体の周りの空間のユーザの手の位置に基づいて決定される。
【０１１１】
項目１２０１の部分群１２０１ａをフォントのスケール又はサイズを大きくして表示し、ユーザによるより簡便でより直感的な選択を容易にする。項目１２０１の部分群１２０１ａの選択、及び、項目１２０１の部分群１２０１ａの表示の拡大は、カーソル１２０４がガイドライン１２０２を交差したことの検出に応じて、又は、ガイドライン１２０２に対するカーソル１２０４の位置とは無関係に行うことができる。カーソル１２０４がガイドライン１２０２を基本位置１２０６で交差したこと、又は、項目が選択されたことが検出されると、例えば、音、画像、点滅光、及び／又は、振動などの触覚出力を含む、ユーザへのフィードバックを生成することができる。
【０１１２】
図１３においてユーザは関心項目１３０１ｒを選択する。部分項目群１３０１が強調表示されるので、ユーザがそのエリアの中の関心項目１３０１ｒを含む一般エリアを選択し、そのエリアの中の項目を「ズームイン」し、文字「Ｒ」を表す関心項目１３０１ｒを信頼性と利便性をもって選択することができる。選択は、マウスイベント、キーボード又はキーボードの打ち込み、ジェスチャ認識、カメラをベースとした入力、又は、その他の多くのアプローチによって行うことができる。
【０１１３】
カーソル１３０４がガイドライン１３０２を交差した位置を表す基本位置１３０６の場所は、多くの方法によって検出することができる。例えば、図１４に示すように、基本位置１４０６の場所は、カーソル１４０４がガイドライン１４０１の上方、又は、項目１４０１ｒなどの強調表示された項目と最も近接して検出された後の時間に観察されたカーソル１４０４と最も近接したガイドライン１４０１の位置として決定することができる。
【０１１４】
基本位置は、他のアプローチを用いて検出してもよい。例えば、基本位置１４０６の場所は、カーソル１４０４がガイドライン１４０１を交差する際に検出する、又は、ガイドライン１４０１を交差した前後の時間のカーソル１４０４の位置を用いて検出することができる。図１５に、例えば、ガイドライン１５０２を交差する前の時間に観察されたカーソルの位置を表す端点１５０８と、ガイドライン１５０２を交差した後の時間に観察されたカーソルの位置を表す端点１５１０とを示す。基本位置１５０６は、端点１５０８と１５１０とによって画定される線分１５０４のとガイドライン１５０１との交点として決定することができる。
【０１１５】
図１２に戻ると、項目１２０１の部分群１２０１を強調表示することは、部分群１２０１ａを構成する項目に対応するガイドライン１２０２に沿った位置を決定することを含むことができる。いくつかの実施例では、基本位置１２０６に近接して位置する項目は、強調表示される（例えば、大きなサイズで表示される）項目１２０１の部分群１２０１ａの部分として選択される。こうして、基本位置１２０６に近接する項目は、強調表示されていないオリジナルの位置の中に、又は、それらの近傍に残り、基本位置１２０６から離れた項目は、項目１２０１の部分群１２０１ａのサイズが増加するように、外側に移動する。
【０１１６】
部分群１２０１ａが強調表示された後、部分群１２０１ａの中にない項目の位置は、以下の式（２）にを用いて決定することができる。
【数２】
0005559691.tif 000003
【０１１７】
式（２）において、Ｘｉは、オリジナルの状態におけるガイドラインに沿った項目ｉの位置を表す。Ｘｉ’は、拡大された状態におけるガイドラインに沿った項目ｉの位置を表す。Ｘｂは、ガイドラインに沿った基本位置を表す。Ｓｉは、オリジナルの状態における項目ｉの基本サイズを表す。Ｓｉ’は、拡大された状態における項目ｉのサイズを表す。
【０１１８】
図１６に、部分項目群を強調表示する前の第１の状態１６０１と、部分項目群を強調表示した後の第２の状態１６０２の部分項目群を示す。例えば、カーソル１６０４が項目「Ｓ」の下で最初にガイドライン１６０５を（基本位置１６０６が項目「Ｓ」と一致するように）交差した場合、項目「Ｓ」はそのオリジナルの位置に残り、項目「Ｒ」は距離１６０７をもってオリジナルの位置から左側に移動する。第２の状態１６０２はこのように、強調表示に続いて、項目のスケール変更されたサイズと位置を示す。
【０１１９】
図１７に、部分項目群を強調表示する前の第１の状態１７０１と、部分項目群が強調表示された後の第２の状態１７０２の部分項目群を示す。例えば、カーソル１７０４が項目「Ｑ」の下でガイドライン１７０５を（基本位置１７０６が項目「Ｑ」と一致するように）交差した場合、項目「Ｑ」はそのオリジナルの位置に残り、項目「Ｒ」は距離１７０７をもってオリジナルの位置から右側に移動する。第２の状態１７０２はこのように、強調表示に続いて、スケール変更された項目を示す。したがって、特定の項目を選択するために使用するカーソル１７０４の位置は、カーソル１７０４が最初にガイドライン１７０５を交差した位置に依存することができる。
【０１２０】
図１８に、部分項目群の強調表示に関連する状態１８０１〜１８０４の部分項目群を示す。具体的には、図１８は、項目１８１０ａ〜ｃの第１から第３の部分項目群１８０６〜１８０８のそれぞれを選択して強調表示する概要を示す。第２と第３の部分群１８０７、１８０８は、第１と第２の部分群１８０６、１８０７に対するカーソル１８１１の位置に応じて配置される。
【０１２１】
状態１８０１では、項目１８１０ａは、オリジナルの強調表示されていないサイズと位置を反映する。状態１８０２では、項目１８１０ｂの第１の部分群１８０６が選択されて強調表示される。状態１８０３では、項目１８１０ｃの第２の部分群１８０７が選択されて強調表示される。状態１８０４では、項目１８１０ｄの第３の部分群１８０８が選択されて強調表示される。
【０１２２】
状態１８０２では、カーソル１８１１ａが項目「Ｓ」の下で最初にガイドライン１８１２ａを（基本位置が項目「Ｓ」と一致するように）交差する。項目「Ｓ」はそのオリジナルの位置に残り、周りの文字がそれらのオリジナルの位置から外側に移動する。状態１８０２から状態１８０３への推移では、カーソル１８１１ｂが右側に移動すると、カーソル１８１１ｃのある距離の中にある項目１８１０ｃの第２の部分群１８０７が状態１８０３で選択される。カーソル１８１１ｃがガイドライン１８１２ｃに沿って拡大された項目「Ｔ」と一致するように移動すると、項目「Ｔ」はその拡大された位置に残り、項目「Ｖ」が強調表示されて、ガイドライン１８１２ｃに沿って距離１８１５さらに右側に移動する。
【０１２３】
項目「Ｗ」〜「Ｚ」などの特定の項目についてガイドライン１８１２ｃに十分な空間が存在しない場合、項目はガイドラインの端部から「押し出され」、表示されない。状態１８０３から状態１８０４への遷移では、カーソル１８１１ｃがガイドライン１８１２ｃの右端の方向にさらに移動を続けると、第２の部分群１８０７の部分である追加の項目を表示するための十分な空間がなくなる場合がある。このような場合、第３の部分群１８０８は（第２の部分群１８０７の部分群として）形成されなくてもよい。
【０１２４】
例えば、項目「Ｕ」などの第２の部分群１８０７の右部分の項目、又は、項目「Ｗ」〜「Ｚ」などのガイドラインの端部から「押し出され」た項目を選択する場合、ユーザはガイドライン１８１２ｃをカーソル１８１１ｃを用いて再び交差して、ガイドライン１８１２ｃを三回交差して、所望の項目に近接する新しい基本位置を確立することができる。さらに、項目をガイドライン１８１２ｃの右端部に「押し出す」代わりに、ガイドラインの左端部の項目を代わりに「押し出し」て、右端部で「押し出さ」れたであろう項目の表示を可能としてもよい。いくつかの実施例では、項目を「押し出す」代わりに、ガイドラインで利用可能な空間に応じて、サイズを縮小し、ガイドラインに全ての項目を表示することができる。
【０１２５】
他の実施例では、ガイドラインの右端部で「押し出され」た項目を、ガイドラインの左端部に表示することができる。連続型（例えば、円形）ガイドラインを用いた実施例では、項目は、ガイドラインの周りを押し回しされてもよい。したがって、ユーザがカーソルを連続型ガイドラインの周りに時計方向に移動することができる、円形のガイドラインの例では、現在の部分項目群から除外された項目が、（部分群が追加されるので、項目が増加する空間を設けるために）カーソルより遅い角速度で時計方向に移動することができる。この例では、ガイドラインの周りを項目が１回転するごとに、カーソルはガイドラインの間を複数回回転することができる。
【０１２６】
スクロール処理を用いて、さもなければガイドラインの端部から「押し出され」たであろう項目の選択を容易にしてもよい。スクロール処理は、例えば、カーソル１８１１ｃがガイドライン１８１２ｃの端部から所定の距離の中にあるか否かを判定するステップと、速度を項目位置に適用するステップとを含むことができる。項目位置は、基本位置に対して算出し（上述の式（１）を参照）、速度を基本位置に適用し、項目をそれに応じて移動させることができる。
【０１２７】
図１９に、水平軸１９０１がガイドラインに沿った位置を表し、垂直軸１９０２が速度を表す、代表的な速度関数を示す。この速度関数を用いて、カーソル位置がガイドラインの端部に近接した場合、速度を適用することによって、項目を移動又はシフトさせる。カーソル位置がガイドラインの中央にある場合は、項目は移動、又はシフトされない。
【０１２８】
図２０に、ガイドラインに対するカーソルの位置の間の距離（水平軸２００２によって反映）に基づく部分項目群の項目（垂直軸２００１によって反映）のサイズを変更する時に使用可能な代表的なスケーリング関数を示す。曲線２００４によって表されるように、項目のサイズ（Ｓｉ’）は、カーソルの現在位置の関数とすることができる。強調表示されていない１以上の項目に対応する基本サイズ（Ｓｉ）は、カーソルがガイドラインを交差していない場合、ポイント２００５を参照して決定することができる。線２００６は、強調表示された項目に対応する最大サイズを規定する。
【０１２９】
一代表的な実施例では、曲線２００４の傾きは、ポイント２００５の近傍で略１：１であり、項目のサイズは、カーソルとの距離（ｐｒｏｘｉｍｉｔｙ）が減少するにつれて線形比例して大きく表示される。項目の拡大は、最大サイズに近づくと徐々に少なくなり始め、カーソルが次第に強調表示された項目に近づくにつれ、芸術的に美しい推移を遂げる。
【０１３０】
図２１及び図２２を参照して、機能強化されたコントロール、例えば、カーソル２１０１がガイドライン２１０２を交差する時の、スケーリング関数の使用を説明する。高さ２１０４は、カーソル２１０１の位置とガイドライン２１０２との間の距離を表し、高さ２１０５は、部分群２１０７の中の項目２１０６ｒなどの項目のサイズを表す。部分群２１０７の項目の高さ２１０５は、高さ２１０４に応じてスケール変更されるので、カーソル２１０１がガイドライン２１０２を少量交差した図２１では、カーソル２２０１がガイドライン２２０２をより少量交差した図２２の場合よりも項目が大きく表示される。このように、カーソル２１０１の位置は、カメラをベースとした入力を用いて決定することができる。
【０１３１】
図２３及び図２４に、部分項目群が強調表示された代表的なガイドラインを示す。具体的には、図２３に、項目２３０４の部分群２３０２が拡大して表示された、代表的なガイドライン２３０１を示す。項目２３０４の部分群２３０２を選択することは、所定の数の項目を選択すること、又は、項目のサイズに基づいて部分群２３０２の中に複数の項目を動的に選択することを含む。
【０１３２】
部分群２３０２に含む項目の数は、部分群２３０２に項目がガイドライン２３０１の全長２３０７に及ぶ、又は、ガイドライン２３０１の一部に及ぶように動的に選択することができる。図２３に示すように、部分群２３０２から除外された項目２３０５ａ、２３０５ｂも、ガイドライン２３０１に沿って表示することができる。部分群２３０２の項目の数は、また、部分群の中の項目のサイズに基づいて変化してもよく、部分群２１０７（図２１）の幅と部分群２２０７（図２２）の幅が同一であっても、例えば、部分群２１０７が５つの項目を表示し、部分群２２０７が３つの項目を表示してもよい。
【０１３３】
大きなサイズで部分群の項目を表示することによって、項目を強調表示することは、図２３に示すように、強調表示された項目の全てを同一の大きさのサイズで表示することを含んでもよく、また、図２４に示すように、部分群の中の個々の項目を、カーソルの位置に対するガイドラインに沿った位置に応じたサイズで表示してもよい。
【０１３４】
図２４に、項目２４０４の部分群２４０２を項目のサイズを変更して表示する代表的なガイドライン２４０１を示す。例えば、部分群２４０２の端部にある項目２４０５ｐ、２４０５ｔ（それぞれ文字「Ｐ」と「Ｔ」を表す）のサイズは、項目２４０５ｒ（文字「Ｒ」を表す）などの部分群２４０２の中央の１以上の項目よりも小さいサイズとしてもよい。部分群２４０２の項目をサイズを変更して表示することは、見栄えが芸術的に美しくなり、機能強化されたコントロールをより直感的に使用できるようにする。図２４に示すように、部分群２４０２から除外された項目２４０５ａ、２４０５ｂも、ガイドライン２４０１に沿って表示することができる。
【０１３５】
部分群２３０２、２４０２の項目を大きなサイズで表示することは、項目をアニメーション化（ａｎｉｍａｔｉｎｇ）することを含むことができる。アニメーション処理は、部分群の項目を拡大することと、項目の位置を短い時間期間にわたってガイドラインに沿って並進（例えば、項目をガイドラインに対して垂直に保ちながら）することを含む。部分群２３０２、２４０２から除外された項目は、部分群２３０２、２４０２に「スペースを設けるため」サイズを縮小してアニメーション化されて、ガイドラインに沿って外側に移動することができる。
【０１３６】
ガイドラインの端部から「押し出さ」れた項目は、単に消えてもよいし、又は、アニメーション化されてガイドラインのエッジから落ちてもよいし、又は、燃焼、内破、蒸発、爆発、液体化、炸裂、又はその他の技術など、視覚的に刺激のある、又はユーモアのある手法で破壊されてもよい。同様に、ガイドラインにスペースが生じたために既に「押し出さ」れた項目を再表示する場合も、単純に再表示してもよいし、又は、アニメーション化して、ユーザインタフェースの頂部からガイドラインに下りて戻ってくる、あるいは、視覚的に刺激のある、又はユーモアのある手法で自発的に生成されるようにしてもよい。
【０１３７】
ガイドラインが不連続型の場合、項目をアニメーション化して、途切れ目を横断して移動するようにしてもよい。項目を、高速度で隙間を横断するようにアニメーション化する、又は、上述の視覚効果の何れかを用いて、「押し出さ」れて「再表示」されるようにアニメーション化することができる。同様に、ガイドラインの端部で「押し出さ」れ、対向する端部で再表示する項目を、ガイドラインの端点の間を高速で移動するようにアニメーション化する、又は、上述の視覚効果の何れかを用いて、「押し出さ」れて「再表示」されるようにアニメーション化してもよい。
【０１３８】
図２５に、ガイドラインに沿った項目の作動を示す。ここで、「作動」又は「強調表示」とは一般的に、選択する項目の決定に関する。選択する項目を決定するシステムは、ヒステリシスを用いる。選択は、カーソルが最初にガイドラインを横断した時に最初に選択された項目を決定することを含む。最初に選択された項目とは、基本位置との距離が最も近接した位置にある項目とすることができる。したがって、カーソルが項目の間に配置される際に二つの隣接する項目の間で不意のフリッカーを削減するため、選択は、カーソルが隣接する項目の間の中点から所定の距離移動する都度、新たに選択された項目を決定することを含んでもよい。
【０１３９】
例えば、二つの項目２５０２ｒ、２５０２ｓのガイドライン２５０１に沿った位置が線２５０４ｒ、２５０４ｓで示され、項目２５０２ｒ、２５０２ｓの中点の位置は、線２５０５で示され、距離２５０６は、所定の距離を表す。例えば、項目２５０２ｓ（即ち、文字「Ｓ」）が最初に選択された項目である場合、ユーザはカーソルを線２５０７の左、中点２５０５の上方に項目２５０２ｒ（即ち、文字「Ｒ」）に向かって所定の距離２５０６、動かし、項目２５０２ｒを選択する。項目２５０２ｒが続けて選択された場合、項目２５０２ｓを再選択するためには、ユーザはカーソルを線２５０９の右、中点２５０５の上方に項目２５０２ｓに向って所定の距離２５０６動かす。
【０１４０】
所定の距離は、ユーザが静止を保とうとしている間のユーザの無意識の身体の震えによる影響、又は入力装置の制限を考慮して、カーソルが揺れる又は振れると予想されうる、所望の最大距離に基づいて定義することができる。カーソルの位置がガイドラインの下方にある、カーソルが特定のユーザインタフェースの内部、あるいは、機能強化されたコントロールによって占有されるユーザインタフェースの領域に見つからない、又は存在しない場合、項目は選択されないようにすることができる。項目の選択は、、例えば、音、画像、及び／又は、振動などの触覚出力を含む、ユーザフィードバックをさらに生成してもよい。
【０１４１】
部分群の項目を表示することは、それらの外見が選択の状態についてユーザフィードバックを提供するように、項目を表示することを含むことができる。例えば、選択された項目を、固有の色で表示する、又は、輝いて見えるなどの視覚効果を用いて表示することができる。現在選択されている項目が、項目が選択された状態に第１の所定の持続時間閾値より長くある場合、作動又は強調表示されるようにしてもよい。この場合、カーソルがある時間期間、項目の上に保持されると、項目は作動する。選択された項目が第２の所定の持続時間閾値よりも長い間選択され続けていると、作動は反復される、又は無効になるようにしてもよい。
【０１４２】
さらに、項目は、カーソルの位置がある時間期間静止している場合、作動される、又は、強調表示されるようにしてもよい。所定の時間閾値を上回る間、ガイドラインに対して平行の位置成分の変化が所定の距離閾値より少ない場合、カーソルは、静止していると分類することができる。例えば、カーソルの位置に最も近い項目が識別され、作動される。カーソルが第２の所定の持続時間閾値よりも長く静止しているとして分類されているた場合、作動は反復される、又は無効になるようにしてもよい。さらに、ガイドラインに対するカーソル位置の距離に基づいて、項目を作動してもよい。例えば、この距離が所定の距離閾値を上回った場合、項目が作動するようにしてもよい。
【０１４３】
他の例では、項目の作動は、項目選択の後の、他の種類のユーザ入力によって行われるようにすることができる。例えば、ユーザは、選択された項目を作動するために、他の種類のユーザ入力を行ってもよい。これらの例では、選択された項目を作動するため、ユーザは、（例えば、コントローラの）ユーザ入力ボタンに接触する、音声入力を行う（例えば、「作動」と発話する）、他の種類のジェスチャを行う（例えば、項目の選択に用いた手をディスプレイの方向に動かす、又は、ユーザの他方の手を、選択された項目を作動するためのユーザインタフェースの他の部分に動かす）、又は、他の任意の種類のユーザ入力を行うことができる。
【０１４４】
図２６〜２９に、代表的な項目群を示す。図２６において、項目２６０１は、英語アルファベットの文字を含む。さらに、項目２６０１は、作動される、又は、選択されると、第２の項目群を開く、項目２６０２とを含む。選択されると、第２の項目群を、項目２６０１、又は、項目２６０１の部分とともに、ガイドラインに表示することができる。また、第２の項目群は、ガイドライン２６０４で項目２６０１を置き換えてもよい。項目２６０２を表すために用いる記号から、ユーザは第２の項目群が数字を含むことを直感的に判断できるようにしてもよい。
【０１４５】
図２７に、ガイドライン２７０２に配列された項目２７０１を示す。項目２７０１は、図２６において、項目２６０２が選択されると表示される。第２の項目群が選択された場合、カーソルをガイドライン２７０２の下方から移動する、又は、カーソルを項目２７０１を表示するユーザインタフェースから移動すると、項目２６０１を再選択又は再作動することができる。項目２７０１は、項目２６０１を作動する、再び開く、あるいは、再選択する項目２７０４を含む。項目２７０４を表すために用いる記号から、ユーザは項目２６０１が英語のアルファベットの文字を含むことを直感的に判断できるようにしてもよい。
【０１４６】
図２８に、ガイドライン２８０３に配列された項目２８０１を示す。項目は各々、標準的な電話の電話キーパッドのキーと関連付けられて公知である、標準的な数字と文字の組み合わせを表している。図２９に、項目２８０１の項目２８０２が選択された時（図２８を参照）に表示される、項目２９０１を示す。項目２９０１は、標準的な電話キーパッドのキー番号「７」に関連付けられた文字の組み合わせを含む。
【０１４７】
図２６〜２９に示された項目を用いて、順に文字を入力し、テキストフィールドに言葉を形成するなどする、カメラをベースとしたテキスト入力機構を提供することができる。数字、文字、テキスト、記号、又は所定のテキストを作動して、数字、文字、テキスト、記号、又は所定のテキストを、既に入力されている文字列に付加することができる。あるいは、項目（図２６の項目２６０１からの項目など）の作動は、さらなる項目群を表示してもよく、さらなる項目群の項目の作動は、作動した文字を文字列に付加するようにしてもよい。項目の一つは、項目の列から最新の項目を除去することを容易とする、バックスペース項目でもよい。
【０１４８】
カメラをベースとしたテキスト入力機構は、文字を組み合わせて複合文字を形成するこを含むことができる。日本語テキスト入力のテキスト入力機構は、（日本語パーソナルコンピュータキーボードのユーザには馴染みのある方法で）カナ文字を組み合わせて漢字文字を形成する処理を含む。第１の項目群は、カナを表す項目を含むことができる。カナ項目が作動すると、対応するカナ文字が文字列に付加される。項目群は、作動すると、最新のカナ文字の列を漢字に変換する処理を作動する動作を表す項目を含むことができる。最新のカナ文字の列を漢字に変換する処理は、第２の候補漢字の項目群を表示することを含むことができる。漢字項目を作動すると、最新のカナ文字の列を作動した漢字で置換する処理を作動する。このカメラをベースとしたテキスト入力方法は、他の言語に拡張することができる。
【０１４９】
代替の日本語テキスト入力の方法は、カナを表す第１の項目群を表示することを含むことができる。カナ項目が作動すると、第２の項目群が表示される。第２の項目群は、作動したカナがその一部を形成する漢字を含むことができる。この群は、上述の第２の群よりも大きくてもよい。このテキスト入力方法は他の言語に拡張することができる。
【０１５０】
テキスト入力機構は、項目群に確認項目を含むことができる。作動すると、確認項目は、処理を作動して、文字列がアプリケーションに提供される。さらに、テキスト入力機構は、予測テキスト完了処理を含むことができる。予測テキスト完了処理は、辞書を検索して、上記文字列の文字を含む最も確率の高いテキストを検索する。最も確率の高いテキストは、出力フィールドに表示してもよい。予測テキスト完了処理で使用される辞書は、テキスト入力機構で使用したコンテキストに基づいて選択することができる。例えば、辞書は、テキスト入力機構を用いて名称を入力する場合、名称を含むことができる。
【０１５１】
アプリケーション処理は、アプリケーションの状態に応じて、ユーザインタフェースの項目を決定することができる。項目を作動することは、メッセージをアプリケーション処理に提供することを含む。アプリケーション処理は、メッセージに基づいて制御されるようにしてもよい。
【０１５２】
図３０に、システムの代表的な状態を示す。システムは、図３０に示すように様々な状態を含むことができる。システムは次の状態を含んでもよい。すなわち、システムは、システムが着信又はユーザがシステムを作動することを待つスタンバイ状態３００１、システムが、ユーザに着信を通知し、ユーザがシステムを作動するのを待つ、通知状態３００２、システムが、他のシステムとの音声又はビデオ通信を促すコール状態３００３、システムが、ユーザに選択するためのオプションと機能を表示するメニュー状態３００４、システムが、ユーザが電話番号又はアドレスを入力することを可能とする直接ダイアル状態３００５、システムが、ユーザが直近のコールに対応する連絡先を選択することを可能とするリダイアル状態３００６、システムが、ユーザが名称を入力すると、適合する連絡先をデータベースから見つける検索状態３００７、システムがユーザにデータベースから連絡先を閲覧することを可能とするブラウザ状態３００８、システムが連絡先に関する情報を表示し、ユーザに連絡先にコールする意図を確認する接続オプション及び確認状態３００９、システムが、遠隔のシステムとの接続を確立する接続状態３０１０、システムが、ユーザが検討するメッセージを選択することを可能とするメッセージメニュー状態３０１１、システムがメッセージを再生するメッセージ再生状態３０１２、コールをミュート（消音）とするメッセージミュート状態３０１３、ユーザが、自身の顔を登録するなど、システムを構成設定することができる構成設定状態３０１４を含むことができる。システムは、より少ない状態を含んでもよいし、ここに記載されていない他の状態を含んでもよい。システムは、図３０に示すものとは異なる手法又は順序で様々な状態に入ってもよい。
【０１５３】
システムは、スタンバイ状態３００１を含む。スタンバイ状態３００１の間、システムは、偶発的なユーザの動きに反応しない、又は、ディスプレイ装置１０４に不必要なものを表示しないなど、目立った動作はしないようにすることができる。これによって、システムがスタンバイの場合、ディスプレイを他のアプリケーション又は、他の目的のため（例えば、テレビを見る、ビデオゲームをするなど）に使用することができる。
【０１５４】
スタンバイ状態３００１の間、システムは、ネットワークで着信を監視することができる。着信又はその他のメッセージを受信すると、システムは、通知状態３００２に入ることができる。
【０１５５】
システムは、着信を受信すると、ディスプレイ装置に制御信号を送信するように構成することができる。制御信号は、ディスプレイ装置をオンにして、入力設定を選択し、ディスプレイ装置が、システムによって生成される画像を表示するようにする。システムは、着信を受信すると、制御信号を他のアプリケーション又はデバイスに送信するように構成することができる。例えば、コールを受信すると、制御信号は、実行しているアプリケーション又はプログラムを中断してもよい（例えば、コールを受信すると、プレイしているビデオゲーム又は見ているテレビ番組を中断する）。制御信号は、いくつかの例を挙げると、赤外線信号、直接配線接続を介した電子信号、又はネットワークメッセージなどでもよい。
【０１５６】
システムは、顔検出処理で顔を検出すると、通知状態３００２に入るようにしてもよい。これによって、システムが、ユーザが不在なのに、ディスプレイ装置をオンにすることを回避することができる。
【０１５７】
システムは、複数のユーザへのコールを受信するように構成してもよい。システムは、
コールの宛先のユーザに対応するユーザの顔を識別する顔認識処理を条件に通知状態３００２に入るようにすることができる。これによって、宛先とする受信者が不在なのに、他のユーザの活動を中断させることを回避することができる。これは、宛先とする受信者のプライバシー保護を確実に支援することもできる。
【０１５８】
着信が検出されると、システムが通知状態３００２に入るようにしてもよい。通知状態３００２では、システムがディスプレイ装置に視覚的な合図（ｖｉｓｕａｌ  ｃｕｅ）を表示させることができる。
【０１５９】
図３１に、通知ユーザインタフェース３１０１の一例を描写する。視覚的な合図３１０２は、他のアプリケーション又は他のデバイスによって生成される映像内容３１０３（例えば、図３１に示すようにテレビ番組又はビデオゲーム）の上に重ね合わせることができる。通知状態３００２では、システムはまた、音声スピーカに音響的な合図を生成させることができる。音響的な合図は、他のアプリケーション又は他のデバイスによって生成される、例えば、テレビ番組又はビデオゲームのサウンドトラックなどの他の音声内容と混合することができる。
【０１６０】
スタンバイ状態３００１及び通知状態３００２の間、システムは、カメラによって撮像された画像を関与表示ハンドジェスチャについて監視することができる。ユーザは関与表示ハンドジェスチャを実行することによってシステムに関与するように、プロセッサは、関与表示ハンドジェスチャを検出するようにしてもよい。関与表示ハンドジェスチャは、ユーザにより偶発的に行われる見込みの少ないジェスチャでよく、ユーザの描写をディスプレイ装置に表示する必要なく実行される、十分に容易なもとすることができる。
【０１６１】
図３２に、関与表示ハンドジェスチャを実行するユーザを含む、カメラ画像の例を示す。図３２に示すように、代表的な関与表示ハンドジェスチャは、ユーザの頭上にくるまで手を上方に上げる垂直な動きを含む。このジェスチャは十分にまれであり、ユーザにより偶発的に又は無意識に実行される見込みは少ない。ユーザはこのジェスチャを、学校で学生が手を上げて、先生に「関与表示」を行うことを連想でき、直感的に考えることができる。
【０１６２】
関与表示ジェスチャは、所定の時間期間にわたって保たれるディスプレイの前でカメラの追跡領域でジェスチャとして表現される、特定の手のポーズ又は手の動きのシーケンスでもよい。一つの代表的なジェスチャは、全ての指と親指を広く広げてまっすぐの位置で保つ手のポーズである。他の例は、ユーザが腕を自身の顔の前に伸ばし、自身の顔の前で円を描いて行う円形の手の動き又は手を振る動きである。基本的に、関与表示ジェスチャは、ユーザインタフェースを生成するデバイスに、ユーザが、カメラをベースとしたさらなる入力を行う準備ができたことを知らせるものである。誤操作を減らすため、関与表示ジェスチャは、通常の会話で無意識にボディランゲージとともに行われることのないジェスチャ、又は、通常の人間活動の一般的な行為として行われることのなジェスチャなど、非定型のジェスチャがよい。
【０１６３】
システムがスタンバイ状態３００１及び／又は通知状態３００２の間に、ハンドジェスチャ識別処理は、関与表示ハンドジェスチャを識別することができる。図３０に示すように、システムは、スタンバイ状態３００１で関与表示ハンドジェスチャが検出された時にメニュー状態３００４に入ることができる。システムは、通知状態３００２で関与表示ハンドジェスチャが検出された時にコール状態３００３に入ることができる。
【０１６４】
システムは、コールの目的とする受信者、又は、システムで認定されたユーザのみがコールに応答できるように構成することができる。ハンドジェスチャ識別処理は、関与表示ハンドジェスチャを検出することができ、顔認識処理は、関与表示ハンドジェスチャを実行するユーザを識別することができる。この例では、関与表示ハンドジェスチャを行うユーザが顔認識処理によって、コールの目的とする受信者、又は、システムの認定ユーザとして識別された場合、あるいは、そのような場合に限り、システムはコール状態３００３に入るようにすることができる。
【０１６５】
非関与表示ハンドジェスチャを定義してもよい。非関与表示ハンドジェスチャは、ユーザにより偶発的に行われる見込みの少ないジェスチャでよい。図３３に、非関与表示ハンドジェスチャを実行するユーザを含む、カメラ画像の例を示す。図３３に示すように、代表的な非関与表示ハンドジェスチャは、手を水平方向に動かすことを含むことができる。
【０１６６】
システムは、非関与表示ハンドジェスチャを検出すると、通知メッセージをミュートにするように構成することができる。通知状態３００２において、プロセッサにより実行されるハンドジェスチャ識別処理が、カメラによって撮像された画像を非関与表示ハンドジェスチャについて監視することができる。プロセッサが非関与表示ハンドジェスチャを検出した場合、プロセッサは、スタンバイ状態３００１に戻るようにシステムを導くことができる。
【０１６７】
いくつかの実施例では、システムは、非関与表示ハンドジェスチャを検出した時にコールを切断するように構成することができる。コール状態３００３において、プロセッサにより実行されるハンドジェスチャ識別処理は、カメラによって撮像されたモニタ画像を非関与表示ハンドジェスチャについて監視し、プロセッサが非関与表示ハンドジェスチャを検出した場合、プロセッサは、スタンバイ状態３００１に戻るようにシステムを導くことができる。
【０１６８】
ミュートハンドジェスチャも定義してもよい。ハンドジェスチャ識別処理は、カメラによって撮像された画像をミュートハンドジェスチャについて監視し、ミュートハンドジェスチャを検出した場合は、ミュート状態３０１３に入るようにすることができる。
【０１６９】
システムは、ユーザに合焦するように構成してもよい。ユーザに合焦することは、カメラをパン又はズームして、ユーザの顔がカメラ画像の中央に特定のサイズで表示されるようにすることを含むことができる。ユーザに合焦することは、カメラ画像を、クロッピングして、スケール変更し、ユーザの顔がカメラ画像の中央に特定のサイズで表示されるようにすることを含むことができる。特定のサイズを、動きの範囲の中で、カメラ画像が、ユーザの腕を含むように定義することができる。また、ユーザが、カメラ画像のエッジから所定の距離の範囲内に到達できるように、特定のサイズを定義しして、相互連動する項目及びボタン（例えば、図５の項目５０２、５０４、５０５、５０６、５０７）を確実にユーザの到達範囲内とすることができる。
【０１７０】
システムは、ユーザ基準位置に基づいてユーザに合焦するように構成してもよい。ユーザ基準位置は、顔検出処理によって検出することができる。例えば、ユーザ基準位置を、関与表示ハンドジェスチャが検出された位置と最も近接する顔位置として決定してもよい。
【０１７１】
図３４に、会議テーブルに座った複数の人間を含む、カメラ画像の例を示す。会議テーブルに座った複数の人間は、ビデオ会議セッションで拡大することができる。図３４に示す、数字３４０１、３４０２、３４０３、３４０４、３４０５は、顔検出処理によって決定された顔位置を表す。関与表示ハンドジェスチャの位置は、番号３４０６で示されている。近接する顔位置（３４０４）がユーザ基準位置として選択される。近接する顔位置は、顔位置とジェスチャ位置との間の距離の水平成分の最小絶対値（３４０７）を有する顔位置とジェスチャ位置の組として算出してもよい。関与表示ハンドジェスチャの間、手の位置は頭の上方にあると予想されるため、距離の水平成分を分離することは有利であり得る。ユーザ基準位置は、また、区分された画像の前景部分の重心をユーザ位置として決定するユーザ位置処理によって決定してもよい。
【０１７２】
ユーザが移動している間、システムは、ユーザ基準位置を追跡して（例えば、カメラ画像がユーザを追う）、カメラが、ユーザに合焦を維持するようにすることができる。カメラのパンニングとズーミングは、ユーザが、（例えば、ビデオ会議中に）送信された画像の中に確実に留まることを支援することができる。カメラのパンニングとズーミングは、また、ディスプレイ装置に表示することができるボタンが、確実にユーザが容易に到達できる範囲に留まることを支援することができる。
【０１７３】
カメラをパンニング及びズーミングすることは、制御情報を電動アクチュエータに送信することを含むことができる。電動アクチュエータは、カメラ視点をパンニングし、カメラ光学部を操作して、カメラ画像をズームすることができる。ユーザに合焦することは、画像処理又はその他の演算技術を用いて、パン及びズーム機能をシミュレートすることを含むことができる。例えば、ユーザに合焦することは、カメラ画像をクロッピング及びスケール変更することによって、パン及びズーム機能をシミュレートすることを含むことができる。
【０１７４】
図３５及び３６に、カメラ画像をクロッピング及びスケール変更することによって、ユーザに合焦する例を示す。図３５に示すように、カメラ画像３５０１をクロッピングすることは、ユーザ基準位置３５０３を有するカメラ画像の部分３５０２を選択することを含むことができる。同様に、図３６に示すように、カメラ画像３６０１をクロッピングすることは、ユーザ基準位置３６０３を有するカメラ画像の部分３６０２を選択することを含むことができる。カメラ画像をスケール変更することは、画像を拡大又はデシメーション（ｄｅｃｉｍａｔｉｏｎ）することによって画像を生成することを含み、こうして生成された画像のサイズを、その部分のサイズとは異なるようにすることができる。
【０１７５】
システムは、ユーザ基準位置に基づいて、ユーザが中心となるように音を定位することをさらに含むことができる。マイクロホンは、複数のセンサ（例えば、複数のマイクロホン）を含むことができる。音像定位（ｓｏｕｎｄ  ｌｏｃａｌｉｚａｔｉｏｎ）処理は、ユーザ基準位置に対応する方向からの音の感度を高くし、その他の方向からの音の感度を低くすることができる。例えば、音像定位処理を実行するプロセッサは、ユーザ基準位置から離れて配置されたマイクロホン又はセンサをオフにすることができる（例えば、プロセッサは、最も近接したマイクロホン又はセンサをオンのままにすることができる）。音像定位処理は、マイクロホンアレイのセンサによって受信された信号の位相と振幅を比較するビームフォーミング処理を用いることができる。
【０１７６】
システムは、複数ユーザ環境（例えば、役員室）の場合、第１のユーザから第２のユーザに焦点を変更するように構成することができる。第１のユーザは、上述のように、ハンドジェスチャ（例えば、関与表示ハンドジェスチャ）を実行して、焦点を得ることができる。後に（しかし、同一のコールの間に）、第２のユーザがハンドジェスチャ（例えば、関与表示ハンドジェスチャ、又は、焦点移動ジェスチャ）を実行して、第１のユーザから焦点を得ることができる。例えば、第２のユーザによって実行された関与表示ハンドジェスチャの検出に応じて、カメラ画像が第１のユーザから第２のユーザにパンニングし、マイクロホンが第２のユーザに音を定位することができる。
【０１７７】
図３７に、第１のユーザから第２のユーザに焦点を変更するカメラ画像の例を示す。（図３６の例と同様の画像を描写する）図３７に示すように、カメラ画像３７０１の第１の部分３７０２を第１のユーザ基準位置３７０３に基づいて選択する。システムは、コール状態３００３の際に動作するハンドジェスチャ識別処理を含む。カメラをパンニング及びズーミングすることがカメラ画像のクロッピングとスケール変更を含む実施例では、ハンドジェスチャ識別処理は、（例えば、部分３７０２のみではなく）全カメラ画像３７０１を分析し、第２のユーザを識別することができる。第２のユーザによる関与表示ハンドジェスチャが検出されると、第２のユーザ基準位置３７０５に基づいてカメラ画像３７０１の第２の部分３７０４が選択される。カメラ画像の部分（３７０２又は３７０４）は、画像圧縮処理によって圧縮して、ネットワークを介して送信することができる。この例では、複数ユーザ環境のユーザは、ハンドジェスチャを実行することによって、自らを発言者（ａｃｔｉｖｅ  ｓｐｅａｋｅｒ）として選択させることができる。
【０１７８】
システムはさらに、ユーザが焦点を得ることができる時に、制限を課す調停処理を含むことができる。例えば、調停処理は、第１のユーザの方向からの定位された音を分析し、音を音声と非音声とに分類し、第１のユーザの音声が検出されない場合に限り、第２のユーザが焦点を得ることを許可することによって、第２のユーザが第１のユーザを中断させることのないようにすることができる。調停処理は、焦点を取得するためのユーザ要求の待ち行列を作り、第１のユーザの音声がもはや検出されなくなると、待ち行列で２番目のユーザに焦点を合わせることができる。あるいは、調停処理は、焦点を取得するためのユーザ要求の待ち行列を作り、ジェスチャ識別処理が、第１のユーザにより実行されるハンドジェスチャを検出した時に、待ち行列で２番目のユーザに焦点を合わせることができる。これによって、第１のユーザは、自身が終了し、焦点を放棄する時を伝えることができる。
【０１７９】
コール状態３００３の間、システムは、合焦されたユーザのプレビュー画像を表示することができる。プレビュー画像は、パンニング及びズーミングされたカメラ画像、又は、クロッピングされてスケール変更されたカメラ画像の部分を含むことができる。プレビュー画像は、ユーザインタフェースの一部を占めることができる。遠隔のユーザの１以上のビデオ画像が、ユーザインタフェースの他の部分を占めてもよい。
【０１８０】
システムに関与する、着信に応答する、などのいくつかの動作は、ハンドジェスチャを実行することによって、直接のユーザフィードバックなしに、実行することができる。しかし、直接のユーザフィードバックなしに、ユーザが実行可能なハンドジェスチャの数と複雑さは、ユーザの学習によって制限することができる。いくつかのシステム状態において、いくつかの動作は、連絡先の選択、又は、番号のダイアルなど、複雑なユーザとの相互連動を必要とする。これらの状態において、システムはユーザの描写を表示することができる。ユーザの描写を表示することは、ユーザが、画面の項目に接触することを支援することができ、ユーザの学習要件を減らし、直感的なインタフェースを実現する。ユーザの描写を生成する処理、ユーザの位置とアプリケーションが生成する項目とを比較する処理、及び、テキスト及び数字の入力を容易にする、機能強化されたユーザインタフェース処理について、以下、説明する。
【０１８１】
システムは、メニュー状態３００４を含むことができる。メニュー状態３００４は、ユーザが異なる状態を選択する、ユーザがシステムのオプション又は設定を変更することを可能とする。図３８に、メニュー状態ユーザインタフェース３８０１の一例を示す。メニュー状態ユーザインタフェース３８０１は、選択されると、システムを他の状態に切り替える、ボタン群（３８０２〜３８０７）を含む。ボタンの各々は、各ボタンのアイコン画像又はテキストによって各状態を表すことができる。
【０１８２】
メニュー状態３００４は、ユーザの識別（ｉｄｅｎｔｉｔｙ）を決定する顔認識処理を含むことができる。ユーザが認識されない場合、状態を使用不可とする、又は、特定の機能へのアクセスを不許可とすることができる。例えば、直接ダイアル状態は任意の連絡先にダイアルすることができるため、子供は直接ダイアル状態３００５に入れないようにしてもよい。メニュー状態で状態（例えば、チェックしていないメッセージの数）を表示してもよい。
【０１８３】
システムは直接ダイアル状態３００５を含むことができる。直接ダイアル状態３００５で、ユーザは、連絡先の番号又はアドレス（例えば、電話番号、電子メールアドレス、Ｓｋｙｐｅユーザハンドル名、Ｘｂｏｘ  Ｌｉｖｅゲーマータグなど）を入力することができる。直接ダイアル状態３００５は、ユーザの項目の選択を容易にする、機能強化されたユーザインタフェースを使用することができる。ユーザの項目の選択を容易にする機能強化されたユーザインタフェース処理は、数字、文字、一般的なフレーズ（例えば、「．ｃｏｍ」ローカル電話エリアコード）、機能（例えば、バックスペース）を表す項目群を含むことができる。項目群は、通信ネットワークに基づいて決定することができる（例えば、電話回線網との接続が可能な場合は、項目群は数字を含むことができる）。文字又は数字はテキストとして入力することができる。
【０１８４】
図３９に、直接ダイアル状態ユーザインタフェース３９００の一例を示す。文字を表す項目群が項目３９０２の描写として表示される。機能強化されたユーザインタフェース処理によって入力されるテキストは、テキスト３９０３として図示される。直接ダイアル状態３００５では、最新の数字又は文字を削除することができるバックスペース機能のため、ボタン（例えば、ボタン３９０４）を表示する、又は、ハンドジェスチャを認識することができる。
【０１８５】
直接ダイアル状態３００５では、直前に入力された連絡先又は電話番号との通信を初期化する処理を開始するダイアル機能のため、ボタン（例えば、ボタン３９０５）を表示する、又はハンドジェスチャを認識することができる。ダイアル機能のためボタン又はハンドジェスチャはデフォルトでは使用不可であるが、連絡先情報の入力が完了した（例えば、正しい桁数の電話番号が入力された）と判断されると、使用可能とすることができる。直接ダイアル状態３００５、又は接続オプション状態３００９では、複数の様々な接続オプション（例えば、音声のみ、又は、音声と画像）を表す複数のダイアル機能を利用可能とすることができる。ダイアル機能を選択すると、システムは、接続オプション状態３００９に入ることができる。あるいは、システムは、接続オプション状態を飛び越えて接続状態３０１０に直接進むことができる。
【０１８６】
直接ダイアル状態３００５はオートコンプリート処理を含むことができる。オートコンプリート処理は、部分的に入力された連絡先の番号又はアドレスに基づいて適合する可能性のある連絡先群を検索する。連絡先群は、最近ダイアルされた連絡先群、不在着信コール群、アドレス帳の連絡先群を含むことができる。オートコンプリート処理は、顔認識処理によって決定されたユーザの識別に基づいて連絡先群をフィルタリングすることを含んでもよい。例えば、識別されたユーザによってダイアルされた連絡先、又は、識別されたユーザの個人アドレス帳の連絡先のみを、適合する可能性があるとして考慮に含めてもよい。これは、ユーザのプライバシーを機能強化することができる。直接ダイアル状態３００５において、オートコンプリート処理は、適合する可能性はユーザによって入力されたテキストとは区別される視覚的な様式（例えば、色）で表示してもよい（例えば、図３９に示すテキスト３９０３の灰色文字）。オートコンプリート機能によって示された連絡先を受け付け、連絡先との通信を初期化する処理を開始するための受け付け機能のため、ボタン（例えば、３９０６）を表示する、又は、ハンドジェスチャを認識することができる。
【０１８７】
直接ダイアル状態３００５は、ユーザの識別を決定する顔認識処理を含むことができる。ユーザが入力し、ダイアルすることができる連絡先は、ユーザの識別に基づいて制限されてもよい。例えば、認識されないユーザは、長距離電話の番号をダイアルできないようにすることができる。
【０１８８】
直接ダイアル状態３００５は、システムをメニュー状態３００４に戻す終了機能のため、ボタン（例えば、ボタン３９０７）を表示する、又は、ハンドジェスチャを認識することができる。あるいは、終了機能は、スタンバイ状態３００１に戻してもよい。
【０１８９】
システムは、検索状態３００７を含むことができる。検索状態では、ユーザは、名前を入力することができる。システムは、入力された名前に対して適合する可能性について連作先群を検索することができる。検索状態は、ユーザの項目選択を容易にする機能強化されたユーザインタフェースを使用することができる。機能強化されたユーザインタフェースは、文字、数字、機能（例えば、バックスペース）を表す項目群を含むことができる。入力された文字又は数字は、テキストとして表示してもよい。
【０１９０】
例えば、図３９のユーザインタフェース３９００は、ユーザが項目３９０２から文字を選択し、入力された文字をテキスト３９０３として表示する、検索状態ユーザインタフェースの一例を図示する。直接ダイアル状態３００５と同様に、検索状態３００７は、オートコンプリート処理を含むことができる。部分的に入力された連絡先、又は、完全に入力された連絡先に基づいて、検索処理は、適合する可能性について検索する。連絡先群は、最近ダイアルされた連絡先群、不在着信コール群、アドレス帳の連絡先群を含むことができる。オートコンプリート処理は、顔認識処理によって決定されたユーザの識別に基づいて連絡先群をフィルタリングすることを含んでもよい。例えば、そのユーザによってダイアルされた連絡先、又は、そのユーザの個人アドレス帳の連絡先のみを、適合する可能性があるとして考慮に含めてもよい。これは、ユーザのプライバシーを機能強化することができる。検索状態３００７は、オートコンプリート処理で適合する可能性についてユーザによって入力されたテキストとは区別される視覚的な様式（例えば、色）で表示してもよい（例えば、図３９に示すテキスト３９０３の灰色文字）。検索状態３００７は、オートコンプリート機能によって示された連絡先を受け付け、連絡先との通信を初期化する処理を開始するための受け付け機能のため、ボタン（例えば、３９０６）を表示する、又は、ハンドジェスチャを認識することができる。
【０１９１】
検索状態３００７は、システムをメニュー状態３００４に戻す終了機能のため、ボタン（例えば、ボタン３９０７）を表示する、又は、ハンドジェスチャを認識することができる。あるいは、終了機能は、スタンバイ状態３００１に戻してもよい。システムは、リダイアル状態３００６を含むことができる。リダイアル状態３００６では、ユーザは、以前にダイアルした連絡先を選択することができる。リダイアル状態３００６は、連絡先群をリストすることができる。連絡先群は、最近ダイアルした連絡先、発信コール、着信コール、不在着信コールを含むことができる。
【０１９２】
リダイアル状態３００６は、ユーザの識別を決定する顔認識処理を含むことができる。連絡先群は、ユーザの識別に基づいて連絡先群をフィルタリングしてもよい。例えば、識別されたユーザによって過去にダイアルされた連絡先のみを含めてもよい。
【０１９３】
図４０に、リダイアル状態ユーザインタフェース４０００の一例を図示する。リダイアル状態は、連絡先群の部分群に対応する、ボタン群（例えば、ボタン４００１）を表示する、又は、ハンドジェスチャ群を認識することができる。連絡先が選択されると、システムは、選択された連絡先との通信を初期化する処理を開始することができる。あるいは、システムは、連絡先と関連する機能を表す、追加のボタンを表示する、又は追加のハンドジェスチャを認識してもよい。連絡先と関連する機能は、連絡先に関する情報を表示すること、連絡先との通信方法（例えば、連絡先の携帯電話、オフィス、又は家庭の電話番号にダイアルする）を選択すること、連絡先にメッセージを送信する、又は、連絡先を群から削除することを含むことができる。
【０１９４】
リダイアル状態は、ボタン（例えば、ボタン４００２、４００３）を表示する、又は、ハンドジェスチャを認識して、連絡先の部分群をスクロールすることをさらに含むことができる。ボタン４００２、４００３の一つを選択すると、連絡先の新しい部分群を選択することができる。スクロールによって、ユーザは、多数の連絡先の中からの選択が可能となる。
【０１９５】
リダイアル状態３００６は、ユーザの項目選択を容易にする機能強化されたユーザインタフェースを使用することができる。機能強化されたユーザインタフェースは、連絡先を表す群を含むことができる。図４１に、リダイアル状態ユーザインタフェース４１００の一例を図示する。大きなリストが表示されるように、項目群４１０２は小さいサイズで表示される。連絡先のサイズと位置は、連絡先の選択を容易にするために動的に調整される。図４１に示すように、項目群４１０２は、ガイドライン４１０１に対して配列することができる。この図では、ガイドラインは垂直向きになっている。機能強化されたユーザインタフェースは、カテゴリーを表す第１の群を含むことができる。第１の群の項目を選択することにより、第１の選択されたカテゴリーの下で埋められた連絡先フィールドを含む第２の項目群を表示することができる。カテゴリーは、アルファベットの文字を含み、カテゴリーの項目はその文字で開始する連絡先を含むことができる。
【０１９６】
連絡先を表示することは、連絡先の状態を表示することを含んでもよい。状態は、連絡先の利用可能性（例えば、連絡先が現在オンラインか否か）を表してもよい。リダイアル状態３００６は、システムをメニュー状態３００４に戻す終了機能のため、ボタン（例えば、ボタン４１０４）を表示する、又は、ハンドジェスチャを認識することができる。あるいは、終了機能は、スタンバイ状態３００１に戻してもよい。
【０１９７】
システムは、ブラウザ状態３００８を含むことができる。ブラウザ状態３００８では、ユーザは既知の連絡先を選択することができる。ブラウザ状態３００８は、連絡先群をリストしてもよい。連絡先群は、個人連絡先リストの連絡先、遠隔データベースの連絡先（例えば、オンライン電話帳、社員名簿）を含むことができ、また、人名、会社名、部署名などを含んでもよい。
【０１９８】
ブラウザ状態３００８は、ユーザの識別を決定する顔認識処理を含むことができる。ユーザの識別に基づいて連絡先群をフィルタリングしてもよい。例えば、連絡先群は、識別されたユーザの個人アドレス帳の連絡先を含んでもよい。他の例では、連絡先群は、認定されたユーザが識別されない場合、データベースの連絡先を除外してもよい（例えば、未成年のユーザが成人向けビジネスに連絡することを回避することができる）。
【０１９９】
ブラウザ状態３００８のユーザインタフェースは、図４０に図示したユーザインタフェース４０００と類似に表示することができる。ブラウザ状態３００８は、連絡先群の部分群の連絡先ごとにボタンを表示する、又はハンドジェスチャを認識することができる。連絡先が選択されると、システムは、選択された連絡先との通信を初期化する処理を開始することができる。さらに、システムは、連絡先と関連する機能を表す、追加のボタンを表示する又は追加のハンドジェスチャを認識してもよい。連絡先と関連する機能は、連絡先に関する情報を表示すること、連絡先との通信方法（例えば、連絡先の携帯電話、オフィス、又は家庭の電話番号にダイアルする）を選択すること、連絡先にメッセージを送信する、又は、連絡先に関する情報（アドレス又は宣伝）を表示することを含むことができる。これらのオプションは、リダイアル状態３００６、又は、接続オプション状態３００９で提示してもよい。ダイアル機能を選択すると、システムは、接続オプション状態３００９に入ることができる。あるいは、システムは、接続オプション状態を飛び越えて接続状態３０１０に直接進むことができる。
【０２００】
ブラウザ状態３００８は、１以上のボタンを表示する、又は、ハンドジェスチャを認識して、連絡先の部分群をスクロールすることをさらに含むことができる。スクロールボタンが選択される、又は、スクロールハンドジェスチャが実行されると、連絡先の新しい部分群を選択することができる。スクロールによって、ユーザは、多数の連絡先の中からの選択が可能となる。
【０２０１】
ブラウザ状態３００８は、ユーザの項目選択を容易にする機能強化されたユーザインタフェースを使用することができる。連絡先は小さいサイズで表示してもよい。連絡先のサイズと位置は、連絡先の選択を容易にするために動的に調整してもよい。機能強化されたユーザインタフェースは、カテゴリーを表す第１の群を含むことができる。第１の群の項目を選択することにより第２の項目群を表示することができる。第２の群は、第１の選択されたカテゴリーの下で埋められた連絡先フィールドを含む。カテゴリーは、アルファベットの文字を含み、カテゴリーの項目はその文字で開始する連絡先を含むことができる。カテゴリーは、ユーザとの関係を表すキーワード（例えば、友人、家族、仕事関係者）を含んでもよい。カテゴリーは、サービス（例えば、販売、サポート、出荷）を表すキーワードを含んでもよい。
【０２０２】
連絡先を表示することは、連絡先の状態を表示することを含んでもよい。状態は、連絡先の利用可能性（例えば、連絡先が現在オンラインか否か、在席か、離席か、邪魔しないことを要求しているか）を表してもよい。状態は、アイコン（例えば、アイコン４００５）によって表してもよい。接続オプション及び情報状態３００９は、複数の様々な接続オプション（例えば、音声のみ、又は、音声と画像、連絡先の携帯電話、オフィス、又は家庭の電話番号にダイアルする）ことを表すことができる。接続オプション及び情報状態３００９は、連絡先にメッセージを送信する、連絡先群に連絡先を追加、又は、連絡先群から連絡先を削除するオプションを提供してもよい。接続オプション及び情報状態３００９は、連絡先に関する情報をさらに表示してもよい。
【０２０３】
図４２に、接続オプション及び情報状態ユーザインタフェース４２００の例を示す。状態３００９は、接続方法ごとに、ボタン（例えば、ボタン４２０１、４２０２、４２０３）を含む、又は、ハンドジェスチャを認識してもよい。接続方法を選択することによって、処理が接続状態３０１０に移行するようにしてもよい。接続方法を表示することは、接続方法の状態を表示することを含んでもよい。状態は、その方法による連絡先との接続の利用可能性（例えば、連絡先が現在オンラインであるか否か、離席か、又は邪魔されないことを要求しているか）を表してもよい。状態は、アイコン（例えば、アイコン４２０４）によって表してもよい。
【０２０４】
接続オプション状態３００９は、メッセージ機能のため、ボタン（例えば、ボタン４２０５）を含んでもよいし、又は、ハンドジェスチャを認識してもよい。メッセージ機能は、ユーザがメッセージを記録することを可能にする。メッセージは連絡先に送信してもよい。
【０２０５】
連絡先がユーザの連絡先リストにない場合、接続オプション状態３００９は、連絡先をユーザの連絡先リストに追加する機能のため、ボタンを含んでもよいし、又は、ハンドジェスチャを認識してもよい。連絡先がユーザの連絡先リストの連絡先にある場合、状態は、連絡先をユーザの連絡先リストから削除する機能のため、ボタン（例えば、ボタン４２０６）を含んでもよいし、又は、ハンドジェスチャを認識してもよい。状態は、また、システムをメニュー状態３００４に戻す終了機能のため、ボタン（例えば、ボタン４２０７）を表示する、又は、ハンドジェスチャを認識することができる。あるいは、終了機能は、スタンバイ状態３００１に戻してもよい。
【０２０６】
接続オプション状態３００９は、連絡先４２０８、又は連絡先に関する情報４２０９を表示してもよい。接続先に関する情報を表示することは、データベースから情報を検索して取り出すことを含むことができる。システムは、接続状態３０１０で選択された連絡先との通信を初期化する処理を含んでもよい。ユーザによる電話番号又は連絡先の入力の完了、オートコンプリート処理の開始、ダイアル機能の選択、着信の受け付けなどに応じて、処理は、接続状態３０１０に進むことができる。
【０２０７】
システムは、顔認識処理を含んでもよい。遠隔のユーザとの通信が確立すると、発信者の識別を送信し、遠隔のユーザのシステムが、コールしている人間の識別を表示できるようにしてもよい。システムは、接続状態３０１０の間、接続状態を表示してもよい。接続状態は、接続の強度（例えば、強弱）を示してもよく、又は、接続の利用可能性（例えば、接続しているか、切断しているか）を示してもよい。
【０２０８】
メッセージメニュー状態３０１１は、ユーザがメッセージをチェックすることを可能にする。メッセージメニュー状態３０１１は、メッセージのリストを提示してもよい。メッセージのリストは、図４０又は図４１に示す連絡先のリストと同様としてもよい。メッセージを選択すると、メッセージをメッセージ再生状態３１０２で再生することができる。
【０２０９】
メッセージ再生状態３０１２でメッセージを再生することは、音声又はビデオの録画を提示することを含んでもよい。メッセージ再生状態３０１２は、再生動作（例えば、一時停止、早送り、巻き戻し、消去）に対応するボタン群を表示してもよく、又はハンドジェスチャ群を認識してもよい。
【０２１０】
メッセージ再生状態３０１２の一実施例では、ユーザの描写は、再生するビデオ録画の一部を遮ってもよい。ユーザの描写は、録画されたビデオと混合されてもよい。あるいは、ユーザの描写は、メッセージ状態ユーザインタフェースの独立した一部として表示してもよい。
【０２１１】
図４３に、メッセージ再生状態のユーザインタフェースの一例を図示する。図４３の例に示すように、ユーザインタフェース４３００は、録画されたビデオが再生されている部分４３０１を含むことができる。ユーザインタフェース４３００は、ユーザの描写が表示されている部分４３０２も含むことができる。部分４３０２がボタン（例えば、ボタン４３０３）を含み、再生動作にアクセスできるようにしてもよい。ユーザインタフェースはさらに、連絡先及びメッセージ（日付と時間）に関する情報４３０４を含んでもよい。
【０２１２】
ミュート状態３０１３は、ローカルユーザにコール時のプライバシーを提供することができる。ミュート状態３０１３は、遠隔のユーザを継続して表示してもよい。ミュート状態３０１３は、コールを再開して、再びコール状態３００３に入るためのボタンを含んでもよく、又はハンドジェスチャを認識してもよい。ミュート状態３０１３は、コールを終了して、スタンバイ状態３００１又はメニュー状態３００４に入るためのボタンを含んでもよく、又はハンドジェスチャを認識してもよい。ミュート状態３０１３は、直接ダイアル３００５、リダイアル３００６、検索３００７、又はブラウザ状態３００８に入るためのボタンを含んでもよく、又はハンドジェスチャを認識してもよい。選択された連絡先を、既存のコールに追加してもよい（例えば、三者通話）。
【０２１３】
システムは、構成設定状態３０１４を含んでもよい。構成設定状態３０１４は、通信とネットワークオプション（例えば、IPアドレス）を提示してもよい。構成設定状態３０１４は、個人アドレス帳機能（例えば、連絡先の追加、編集又は削除）を提示してもよい。構成設定状態３０１４は、ユーザの顔を分析して、ユーザの名前とともに保存する、顔認識学習処理を含んでもよい。保存された画像は、顔認識処理においてテンプレートとして用いることができる。
【０２１４】
図４４は、汎用又は専用コンピュータシステム４４００の一例の概略図である。本システム４４００は、一実施例に係る処理４００で説明した動作について使用してもよい。システム４４００はプロセッサ４４１０、メモリ４４２０、ストレージデバイス４４３０、入力／出力デバイス４４４０を含む。構成部４４１０、４４２０、４４３０、４４４０の各々は、システムバス４４５０を用いて相互接続されている。プロセッサ４４１０は、システムの内部で実行する命令の処理を行うことができる。一実施例では、プロセッサ４４１０は、シングルスレッド（ｓｉｎｇｌｅ−ｔｈｒｅａｄｅｄ）プロセッサである。他の実施例では、プロセッサ４４１０は、マルチスレッド（ｍｕｌｔｉ−ｔｈｒｅａｄｅｄ）プロセッサである。プロセッサ４４１０は、メモリ４４２０又はストレージデバイス４４３０に保存された命令を実行し、入力／出力デバイス４４４０のユーザインタフェースに図形情報を表示することができる。
【０２１５】
メモリ４４２０は、情報をシステム４４００内部の情報を保存する。一実施例では、メモリ４４２０は、コンピュータ可読媒体である。一実施例では、メモリ４４２０は、揮発性メモリユニットである。他の実施例では、メモリ４４２０は、不揮発性メモリユニットである。
【０２１６】
ストレージデバイス４４３０は、システム４４００のためのマスストレージを提供することができる。一実施例では、ストレージデバイス４４３０は、コンピュータ可読媒体である。様々な異なる実施例では、ストレージデバイス４４３０は、フロッピー（登録商標）ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、又はテープデバイスであってもよい。
【０２１７】
入力／出力デバイス４４４０は、システム４４００に入力／出力動作を行わせる。一実施例では、入力／出力デバイス４４４０は、キーボード及び／又は、ポインティングデバイスを含む。他の実施例では、入力／出力デバイス４４４０は、グラフィカルユーザインタフェースを表示するためのディスプレイ装置を含む。
【０２１８】
記載した本機能は、デジタル電子回路、コンピュータハードウェア、ファームウェア、ソフトウェア、又は、それらの組み合わせで実装してもよい。装置は、例えば、プログラマブルプロセッサによって実行されるために、マシン可読媒体、又は伝播される信号などの情報坦体で有形に具現化されるコンピュータプログラム製品によって実装してもよい。方法ステップは、命令のプログラムを実行して、入力データで動作して出力を生成することによる記載の実施例の機能を実行する、プログラマブルプロセッサによって実行してもよい。記載の機能は、データストレージシステム、少なくとも一つの入力デバイス、及び、少なくとも一つの出力デバイスとデータ及び命令を送受信するように連結された、少なくとも一つのプログラマブルプロセッサを含む、プログラマシステムで実行可能な１以上のコンピュータプログラムによって有利に実装することができる。コンピュータプログラムは命令群であり、特定の動作を実行する、又は特定の結果を生じるためにコンピュータで直接的に、又は間接的に利用してもよい。コンピュータプログラムは、コンパイラ型言語、インタプリタ型言語を含む、任意の形式のプログラミング言語で記述されてよい。コンピュータプログラムは、スタンドアローンプログラムとして、又は、モジュール、コンポーネント、サブルーチン又は、コンピューティング環境の使用に好適なその他のユニットとして展開することができる。
【０２１９】
命令プログラムを実行するための好適なプロセッサは、例えば、汎用及び専用マイクロプロセッサ、及び、任意の種類のコンピュータの単一（ｓｏｌｅ）プロセッサ、又はマルチプロセッサの一つでもよい。一般的に、プロセッサは、読み出し専用メモリ、又はランダムアクセスメモリ、あるいは、その両方から、命令とデータを受け取る。コンピュータの基本要素は、命令を実行するプロセッサと、命令とデータを保存する１以上のメモリである。一般的に、コンピュータは、データファイルを保存する１以上のマスストレージデバイスを含む、又は、該マスストレージデバイスと通信をして動作可能に接続される。かかるマスストレージデバイスは、内部ハードディスク及び脱着可能なディスクなどの磁気ディスク、光磁気ディスク、及び光ディスクを含む。コンピュータプログラム命令とデータを有形に具現化するために好適なストレージデバイスは、例えば、半導体メモリ、磁気ディスク、磁気光ディスク、及びＣＤ−ＲＯＭ、ＤＶＤ―ＲＯＭディスクを含むあらゆる形式の不揮発性メモリを含む。かかる半導体メモリとして、例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリがあげられる。磁気ディスクとして、例えば、内部ハードディスク及び脱着可能なディスがあげられる。プロセッサ及びメモリは、ＡＳＩＣｓ（ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔｓ）によって追加されてもよいし、該ＡＳＩＣｓに統合されてもよい。
【０２２０】
ユーザとの相互連動を提供するため、本機能を、ユーザに情報を表示するディスプレイ装置、キーボード及びポインティングデバイスを有するコンピュータに実装してもよい。ディスプレイ装置は、例えば、ＣＲＴ（陰極線管）又はＬＣＤ（液晶ディスプレイ）モニタなどでよく、ポインティングデバイスは、例えば、ユーザがコンピュータに入力を行うことができるマウス又はトラックボールなどでよい。
【０２２１】
本機能は、データサーバなどの、バックエンドコンポーネントを含むコンピュータシステム、又は、アプリケーションサーバ又はインターネットサーバなどの、ミドルウェアコンポーネントを含むコンピュータシステム、又は、グラフィカルユーザインタフェース又はインターネットブラウザ、又はそれらの任意の組み合わせを有する、クライアントコンピュータなどの、フロントエンドコンポーネントを含むコンピュータシステムに実装してもよい。システムのコンポーネントは、通信ネットワークなどの任意の形式又は媒体のデジタルデータ通信によって接続されてもよい。通信ネットワークの例として、例えば、ＬＡＮ、ＷＡＮ、及びインターネットを形成するコンピュータとネットワークが含まれる。
【０２２２】
コンピュータシステムは、クライアントとサーバを含んでもよい。クライアントとサーバは、一般的に、相互に離れて、通常、上述したものなどのネットワークを介して相互連動する。クライアントとサーバの関係は、それぞれのコンピュータで動作し、相対的にクライアントとサーバの関係を有するコンピュータプログラムによって生じる。
【０２２３】
複数の実施例について説明した。しかしながら、特許請求の範囲の趣旨と範囲から逸脱することなく、様々な変形が可能であることは理解される。したがって、これ以外の実施の形態も以下に記載する特許請求の範囲の中に含まれる。
【図１】
0005559691.tif 000004
【図２】
0005559691.tif 000005
【図３】
0005559691.tif 000006
【図４】
0005559691.tif 000007
【図５】
0005559691.tif 000008
【図６】
0005559691.tif 000009
【図７】
0005559691.tif 000010
【図８】
0005559691.tif 000011
【図９】
0005559691.tif 000012
【図１０】
0005559691.tif 000013
【図１１】
0005559691.tif 000014
【図１２】
0005559691.tif 000015
【図１３】
0005559691.tif 000016
【図１４】
0005559691.tif 000017
【図１５】
0005559691.tif 000018
【図１６】
0005559691.tif 000019
【図１７】
0005559691.tif 000020
【図１８】
0005559691.tif 000021
【図１９】
0005559691.tif 000022
【図２０】
0005559691.tif 000023
【図２１】
0005559691.tif 000024
【図２２】
0005559691.tif 000025
【図２３】
0005559691.tif 000026
【図２４】
0005559691.tif 000027
【図２５】
0005559691.tif 000028
【図２６】
0005559691.tif 000029
【図２７】
0005559691.tif 000030
【図２８】
0005559691.tif 000031
【図２９】
0005559691.tif 000032
【図３０】
0005559691.tif 000033
【図３１】
0005559691.tif 000034
【図３２】
0005559691.tif 000035
【図３３】
0005559691.tif 000036
【図３４】
0005559691.tif 000037
【図３５】
0005559691.tif 000038
【図３６】
0005559691.tif 000039
【図３７】
0005559691.tif 000040
【図３８】
0005559691.tif 000041
【図３９】
0005559691.tif 000042
【図４０】
0005559691.tif 000043
【図４１】
0005559691.tif 000044
【図４２】
0005559691.tif 000045
【図４３】
0005559691.tif 000046
【図４４】
0005559691.tif 000047