(57)【特許請求の範囲】
【請求項１】
第１のデバイス上のウェブブラウザアプリケーションで表示されるウェブページのコードを解析して、前記ウェブページ内のアクション可能領域を特定する段階と、
前記アクション可能領域の選択を実行するユーザのジェスチャーを提案すべく、表示された前記ウェブページに対するユーザの交信前に、前記第１のデバイス上の前記ウェブブラウザアプリケーションによって、前記ウェブページの表示内の前記アクション可能領域を視覚キューで拡張する又は置き換える段階と、
前記第１のデバイスに対するユーザの動きを特定する段階と、
前記ユーザの動きを入力ジェスチャーとして特定する段階と、
前記入力ジェスチャーを処理して、前記アクション可能領域の選択を決定する段階と、
前記選択を前記ウェブブラウザアプリケーションに提供して、前記第１のデバイス上に表示される前記選択されたアクション可能領域の関連づけられた追加情報を利用可能とする段階と
を備え、
前記コードは、前記アクション可能領域に対応する前記追加情報を有し、前記第１のデバイスとは異なりかつ位置決めカーソルを有する第２のデバイスで前記ウェブページが表示される場合には、前記追加情報は、前記第２のデバイスの位置決めカーソルが前記アクション可能領域の上に移動したことに応じて表示されるものである
方法。
【請求項２】
前記ユーザの動きを入力ジェスチャーとして特定する段階は、
前記入力ジェスチャーに関連付けられている動きを特定する段階を有する、
請求項１に記載の方法。
【請求項３】
前記入力ジェスチャーを処理して、前記アクション可能領域の選択を決定する段階は、
前記入力ジェスチャーに関連付けられている前記動きを処理して、対応するウェブブラウザアクションを決定する段階を有する、
請求項２に記載の方法。
【請求項４】
前記入力ジェスチャーに関連付けられている前記動きを処理する段階は、
前記ウェブブラウザアプリケーションに通信可能に連結されているジェスチャーライブラリにアクセスする段階と、
前記ジェスチャーライブラリ内で前記動きを特定する段階と、
前記ジェスチャーライブラリ内で特定された前記動きに対応する前記ウェブブラウザアクションを選択する段階と
を有する、請求項３に記載の方法。
【請求項５】
コンピュータに、
第１のデバイスで動作するウェブブラウザアプリケーションで表示されるウェブページのコードを解析して、前記ウェブページ内のアクション可能領域を特定する手順と、
前記アクション可能領域の選択を実行するユーザのジェスチャーを提案すべく、表示された前記ウェブページに対するユーザの交信前に、前記第１のデバイス上で、前記ウェブページの表示内の前記アクション可能領域を視覚キューで拡張する又は置き換える手順と、
前記第１のデバイスに対するユーザの動きを特定する手順と、
前記ユーザの動きを入力ジェスチャーとして特定する手順と、
前記入力ジェスチャーを処理して、前記アクション可能領域の選択を決定する手順と、
前記選択を前記ウェブブラウザアプリケーションに提供して、前記第１のデバイス上に表示される前記選択されたアクション可能領域に関連づけられた追加情報を利用可能とする手順と
を実行させ、
前記コードは、前記アクション可能領域に対応する前記追加情報を有し、前記第１のデバイスとは異なりかつ位置決めカーソルを有する第２のデバイスで前記ウェブページが表示される場合には、前記追加情報は、前記第２のデバイスの位置決めカーソルが前記アクション可能領域の上に移動したことに応じて表示されるものである
プログラム。
【請求項６】
コンピュータに、
前記入力ジェスチャーに関連付けられている動きを特定することで、前記ユーザの動きに対応するアクションを特定する手順をさらに実行させる、
請求項５に記載のプログラム。
【請求項７】
コンピュータに、
前記入力ジェスチャーに関連付けられている前記動きを処理して、対応するウェブブラウザアクションを決定することで、前記入力ジェスチャーを処理して、前記ウェブブラウザアクションを決定する手順をさらに実行させる、
請求項６に記載のプログラム。
【請求項８】
コンピュータに、
前記ウェブブラウザアプリケーションに通信可能に連結されているジェスチャーライブラリにアクセスする手順と、
前記ジェスチャーライブラリ内で前記動きを特定する手順と、
前記ジェスチャーライブラリ内で特定された前記動きに対応する前記ウェブブラウザアクションを選択する手順と
をさらに実行させる、
請求項７に記載のプログラム。
【請求項９】
第１のコンピューティングプラットフォーム上に表示されるウェブページのコードを解析して、前記ウェブページ内のアクション可能領域を特定する段階と、
前記アクション可能領域の選択を実行するユーザのジェスチャーを提案すべく、表示された前記ウェブページに対するユーザの交信前に、前記第１のコンピューティングプラットフォーム上で、前記ウェブページの表示内の前記アクション可能領域を視覚キューで拡張する又は置き換える段階と
を備え、
前記アクション可能領域は、前記アクション可能領域のユーザの選択に応じて追加情報をユーザに提供し、
前記コードは、前記第１のコンピューティングプラットフォームとは異なりかつ位置決めカーソルを有する第２のコンピューティングプラットフォームで前記ウェブページが表示される場合には、前記追加情報が、前記第２のコンピューティングプラットフォームの位置決めカーソルが前記アクション可能領域の上に移動したことに応じて表示されるように構成される
方法。
【請求項１０】
前記視覚キューは、アイコン、テキスト、または、前記ウェブページの縮小部分を含む、
請求項９に記載の方法。
【請求項１１】
前記視覚キューはアイコンを含み、該アイコンはジェスチャーを示す、
請求項１０に記載の方法。
【請求項１２】
コンピュータに、
第１のコンピューティングプラットフォーム上に表示されるウェブページのコードを解析して、前記ウェブページ内のアクション可能領域を特定する手順と、
前記アクション可能領域の選択を実行するユーザのジェスチャーを提案すべく、表示された前記ウェブページに対するユーザの交信前に、前記第１のコンピューティングプラットフォーム上で、前記ウェブページの表示内の前記アクション可能領域を視覚キューで拡張する又は置き換える手順と
を実行させ、
前記アクション可能領域は、前記アクション可能領域のユーザの選択に応じて追加情報をユーザに提供し、
前記コードは、前記第１のコンピューティングプラットフォームとは異なりかつ位置決めカーソルを有する第２のコンピューティングプラットフォームで前記ウェブページが表示される場合には、前記追加情報が、前記第２のコンピューティングプラットフォームの位置決めカーソルが前記アクション可能領域の上に移動したことに応じて表示されるように構成される
プログラム。
【請求項１３】
コンピュータに、
前記アクション可能領域それぞれを表す１以上の視覚キューを表示する手順をさらに実行させる、
請求項１２に記載のプログラム。
【請求項１４】
コンピュータに、
アイコン、テキスト、又は、前記ウェブページの縮小部分を含む１以上の視覚キューを表示する手順をさらに実行させる、
請求項１２または１３に記載のプログラム。
【請求項１５】
コンピュータに、
ジェスチャーを示すアイコンを表示する手順をさらに実行させる、
請求項１２から１４のいずれか一項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本特許文書の開示の一部は、著作権保護対象物である材料を含んでいる。著作権所有者は、特許商標庁の特許ファイルまたは記録にある特許文書または特許開示物のファックスによる再生であれば何人にも反対しないが、その他の使用法に関してはすべての著作権を主張する。
【背景技術】
【０００２】
パーソナルコンピューティング技術及び携帯電話デバイスは、この１０年で劇的な変化を遂げた。パーソナルコンピューティング（ＰＣ）デバイスは、ますます普及しており、よりフォームファクターが小さく（ネットブック及びタブレット等）、計算力が増したものに進化している。同時に、携帯電話市場が、音声通信デバイスのみならず、電子メール、文書及びカメラ機能を含む、個人情報管理デバイスへと進化を遂げている。この結果、大型及び小型のＰＣデバイス両方が、消費者が日常生活を送る上で欠かせないものとなっている。
【０００３】
これらデバイスが市場に浸透して、その方面に精通した消費者が増えるにつれて、従来のＰＣ中心の入力スキーム及びＰＣ中心のユーザインターフェースが、多彩なユーザ体験の妨げになることが明らかになってきている。ここで利用する「ＰＣ中心の」という表現は、マウス、ペン、タッチスクリーンその他の既存のインターフェースを有するＰＣに基づく、従来のプラットフォームのことを示す。ユーザは、従来のＰＣ中心のデバイス同様に、ハンドヘルド型のスマートフォンまたはＭＩＤでアプリケーションを利用したいと思うであろうし、これは、アプリケーション開発業者にとっては様々な課題が提起されることを意味している。たとえば、設置面積の大きいＰＣ用に設計されたアプリケーションは、小さな計算力の小さなフォームファクターで動かすことが難しい（動かせたとしても）。たとえば、主にフォームファクターのせいで、モバイルデバイスのアプリケーションは、通常、ＰＣ中心のデバイス（たとえば大型スクリーン、マウス、または、スクリーン上のカーソルを制御する他のデバイスを有するようなデバイス）に利用可能な類似したアプリケーションより低い機能またはこれらとは異なる機能を有している場合が多い。ハンドヘルドデバイスのアプリケーションフィーチャは、ハンドヘルドデバイス用に、通常は機能を減らして、「機能低下（dumbed down）」されていたり、凝縮されていたり（condensed）することが多い。
【０００４】
これら変更されたアプリケーションのうち、最もよく見る例が、ハンドヘルドデバイスで実行されている通常のウェブブラウザである。これらブラウザは、キーボード、マウス、トラックボール、及び、トラックパッド／タッチパッド等の入力デバイスを利用して、「カーソル」（テキストまたはポインタ）をスクリーン上で動かす、ＰＣ中心のパラダイムに基づいているために、限られた閲覧機能しか提供しない。この代わりに、現在のパラダイムには、ユーザが指またはペンを利用してデバイスに入力を提供するような、タッチスクリーンの入力を受け付けているものもある。タッチスクリーンの技術も、ＰＣ中心の環境内で設計されているので、通常は様々なＰＣ中心の機能を利用している。しかし、これらのＰＣ中心の種類の入力デバイスがない場合には、ハンドヘルドデバイス上で実行されるブラウザの開発業者は、彼らのアプリケーションをハンドヘルドデバイス用に適合させる必要がある（通常は、機能を低下させることで）。
【０００５】
機能に加えて、ＰＣ中心のアプリケーションの基本的なユーザインターフェースは、さらに、限定的なスクリーンの設置条件またはハンドヘルドデバイスの他の限定を考慮に入れるために、修正または設計変更を余儀なくされるだろう。ブラウザの例に戻ると、ハンドヘルドデバイスの上のブラウザのユーザインターフェースは、ＰＣ中心のプラットフォームが基とする元のブラウザに類似したものではあるが、ハンドヘルドインターフェースは、ハンドヘルドデバイスの限定を補うように簡略化されている場合が多い。この要素は、ハンドヘルドデバイスでは入力スキームに制約が多いことと考え合わせても、既存のＰＣ中心のユーザとの交信パラダイムが急速に廃れてしまう可能性を示している。
【０００６】
本発明は、添付図面を例として説明され、添付図面に限定はされない。添付図面において同様の参照番号は同様の部材を示す。
【図面の簡単な説明】
【０００７】
【図１】本発明の一実施形態を示す。
【図２】本発明の一実施形態における変換ストア内の情報セットを示す。
【図３】本発明の一実施形態における変換ストア内の別の情報セットを示す。
【図４】本発明の一実施形態を示す。
【図５Ａ】本発明の一実施形態を示す。
【図５Ｂ】本発明の一実施形態を示す。
【図５Ｃ】本発明の一実施形態を示す。
【図６Ａ】本発明の一実施形態を示す。
【図６Ｂ】本発明の一実施形態を示す。
【図６Ｃ】本発明の一実施形態を示す。
【図７】本発明の一実施形態における実施形態の初期化の例を示す。
【図８】本発明の一実施形態を示すフローチャートである。
【図９】本発明の一実施形態を示すフローチャートである。
【図１０】本発明の一実施形態を示すフローチャートである。
【発明を実施するための形態】
【０００８】
本発明の実施形態は、入力デバイス及びカーソルといった従来の部材から独立した、ウェブブラウザを操作する新しいパラダイムをユーザに提供する。より詳しくは、本発明の実施形態は、従来の入力デバイス、及び、タッチスクリーンの両方または片方が必要ではない、ジェスチャーによってウェブブラウザ上のコンテンツと相互作用するための方法、装置、及び、システムを提供する。ここで利用される「ジェスチャー」という用語は、これらに限定はされないが手、眼、及び、その他の身体部分の少なくとも１つの動きを含む、様々な動作のことを示す。簡潔にする目的から、ここに提示する多くの例では、手のジェスチャーが利用されるが、本発明の実施形態はこれに限定はされない。本明細書では、本発明の「一実施形態」「１つの実施形態」といった言い回しは、その実施形態との関連で記載される特定の特徴、構造、または特性が、本発明の少なくとも１つの実施形態に含まれることを意味する。したがって、「１つの実施形態では」「一実施形態では」等の言い回しが明細書の随所で見られるからといって、これらが必ずしも同じ実施形態のことを言及しているわけではない。
【０００９】
加えて、本明細書に「デバイス」「機械、マシン」「装置」といった用語は、これらに限定はされないがサーバ、デスクトップコンピューティングデバイス、ポータブルコンピューティングデバイス（ラップトップ、ノートブック、ネットブック、及びハンドヘルドを含む）、セットトップボックス、及びゲームコンソールを含む複数のシングルプロセッサまたはマルチプロセッサベースのコンピューティングデバイスのいずれかを含むことができる概念であってよい。ハンドヘルドデバイスは、これらに限定はされないが、携帯電話機、スマートフォン、情報携帯端末（ＰＤＡ）、モバイルインターネットデバイス（ＭＩＤ）、ラップトップ、デジタルカメラ、メディアプレーヤ、ウルトラモバイルパーソナルコンピュータ（ＵＭＰＣ）、及び、ネットワークにローミングできたり接続できたりする任意のコンピューティングデバイスを含む概念であってよい。
【００１０】
本発明の実施形態は、プラットフォームまたはサイズに関わらず、ユーザに対して、ウェブブラウザとの、カスタマイズされた交信体験を可能とする。より詳しくは、本発明の実施形態によれば、ユーザは、外部の物理的な入力デバイスがなくとも、及び、入力スクリーンまたは表示デバイス上に物理的に触らなくとも、ジェスチャーを利用することでウェブブラウザと交信することができるようになる。本発明の実施形態は、本発明の精神を逸脱しなければ、様々なプラットフォームの上での実装に適合させることができる。
【００１１】
本発明の一実施形態においては、ユーザは、ジェスチャーを利用してウェブブラウズ動作を行うことができる。一実施形態では、ジェスチャー入力スキームには、加速度計及びカメラを少なくとも含む動き検知ソースと、ジェスチャー検知モジュールと、ジェスチャー処理モジュールとが含まれてよい。動き検知ソース、ジェスチャー検知モジュール、及び、ジェスチャー処理モジュールは、別個のコンポーネントとして実装されてもよいし、本発明の実施形態の精神を逸脱しない様々なやり方で、組み合わせてもよい。したがってたとえば一実施形態では、動き検知ソースを、ジェスチャー検知モジュールと組み合わせて、１つのコンポーネントにすることもできる。別の実施形態では、ジェスチャー検知モジュールと、ジェスチャー処理モジュールとを、１つのコンポーネントに組み合わせてもよい。簡潔に説明するために、以下の記載では、各モジュールの機能を別個に説明する。様々な実施形態でも、実装のためにどのように組み合わせられようが（組み合わせられまいが）、各モジュールの機能は同じである。
【００１２】
動き検知ソースは、ユーザの動き（たとえば手の動き、眼の動き、体の動き等）を特定して、動きデータを取得する。その後、ジェスチャー検知モジュールは、動きデータが特定の動きに関するものであって、プラットフォームに渡すイベントではないと判断する。つまり、ジェスチャー検知モジュールは、デバイスに入力を提供するジェスチャーであって、単なるデバイスの動きではないと判断する。この動きは、ジェスチャー処理モジュールに渡されて、ジェスチャー処理モジュールは、動きを変換して、ユーザがウェブブラウザ内で実行しようとしている動作を判断することができる。
【００１３】
今日では、様々な動き検知技術が存在しており、本発明の精神から逸脱せずに本発明の実施形態で利用することができる。これら動き検知技術の例は、よくゲームプラットフォームで利用されている。たとえば、Ｎｉｎｔｅｎｄｏ（登録商標）ＣｏｒｐｏｒａｔｉｏｎのＷｉｉゲームプラットフォームは、Ｗｉｉの遠隔コントローラで加速度計を利用している。Ｗｉｉの遠隔コントローラの加速度計は、動き、動きの方向、及び、速度情報を特定して、ベースのＷｉｉユニットのトランシーバと連携することで、ユーザの動作がスクリーンで模倣される。同様に、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｃｏｒｐｏｒａｔｉｏｎから最近発売されたＫｉｎｅｃｔは、カメラを利用してユーザの動きを検知して、ゲームにおいてこれを再現する。ほかにも、様々なユーザ向けにカメラによるジェスチャー認識技術を活用するゲーム関連ではない様々な製品が、Ｇｅｓｔｕｒｅ  Ｔｅｋ（登録商標）などの会社により販売されている。
【００１４】
本発明の実施形態は、これら既存の動き検知技術を活用して、ウェブ閲覧における、動きに基づく入力スキームを向上させる。具体的には、本発明の実施形態は、カメラ、加速度計の両方または片方を利用して、ジェスチャーを検知して捉え、ジェスチャーがウェブブラウザの入力であると意図されていることを確かめて、ジェスチャーを、ユーザがウェブブラウザ上でとることを望む特定の動作の指標に変換する。一例として、ユーザが、ウェブブラウザのスクリーンのある領域にズームするために手で掴む動作を行ったと想定する。この実施形態では、カメラと加速度計とが（両方あわさって動き検知ソースを構成する）、動作のデータストリームを、ジェスチャー検知を行うコンポーネント（ジェスチャー検知モジュール）に提供することができる。
【００１５】
一実施形態では、ジェスチャー検知モジュールは、プラットフォーム上のオペレーティングシステムの一コンポーネントであり、この動きが、オペレーティングシステムが認識するような動きのイベントではないと特定することができる。その後、ジェスチャー検知モジュールは、この動きが、ウェブブラウザに入力されるべきジェスチャーとして意図されていると判断して、この動きをジェスチャー処理モジュールに提供する。そして、ジェスチャー処理モジュールは、動きを、ウェブブラウザのコンポーネントが理解できる動作に変換して、ブラウザに動作を伝える。一実施形態では、この変換プロセスで、特定のジェスチャーを特定のブラウザ動作に相関付けるジェスチャーライブラリを利用する。適切なブラウザ動作への変換がなされて、ブラウザに送られると、ブラウザは、ユーザが意図している動作を実行することができる。
【００１６】
今の例では、カメラは、手で掴む動作を捉えて、ジェスチャー検知モジュールにストリーミングする。ジェスチャー検知モジュールは、手で掴む動作を、データストリームから受信して、これが入力として意図されているものであると判断する。ジェスチャー検知モジュールは、ジェスチャー処理モジュールに、動作が手で掴むことを意味している旨を伝える。次いで、ジェスチャー処理モジュールは、ジェスチャーレポジトリを調べて、手で掴む動作をどの動作に変換すべきかを判断して、「ズーム」要求であると判断すると、ブラウザに、ウェブブラウザのスクリーン上の適切な領域にズームするようブラウザに通知する。これに応じて、ウェブブラウザはズーム動作を行い、ユーザの望む最終的結果をユーザに提供する。
【００１７】
図１は、本発明の一実施形態の一例を示す。図示されているようにユーザが動きを行っている場合を想定する。コンピューティングプラットフォーム（コンピューティングプラットフォーム１００）に連結されている動き検知ソース（カメラ１０５と加速度計１１０とを合わせたもの）は、手で掴む動きを特定して捉え、この動作の動きデータストリームをジェスチャー検知モジュール１１５に提供する。ジェスチャー検知モジュール１１５は、動きを調べ、これがコンピューティングプラットフォーム１００のオペレーティングシステムに渡すべき動きイベントではないことを確かめる。ジェスチャー検知モジュール１１５は、次に、動きが、ウェブブラウザへの入力を意図されているジェスチャーであると判断して、ジェスチャー検知モジュール１１５が、この情報をジェスチャー処理モジュール１２０に提供する。
【００１８】
ジェスチャー検知モジュール１１５からジェスチャー情報を受け取ると、ジェスチャー処理モジュール１２０は、ジェスチャー情報を調べて、変換ストア（ジェスチャーライブラリ１２５）に照らしあわせて情報を処理する。本発明の一実施形態では、変換ストアには、様々なユーザのジェスチャーと、ウェブブラウザで実行されるべき特定の動作との間のマッピングが含まれている。この例では、ジェスチャー処理モジュール１２０は、手で掴む動作を、ユーザからの「ズーム」要求に変換する。ジェスチャー処理モジュール１２０は、その後、ウェブブラウザ１３０に、ユーザの要求についてのズーム要求を送信してよい。
【００１９】
本発明の一実施形態では、ジェスチャー検知モジュール１１５が、コンピューティングプラットフォーム１００で実行されるオペレーティングシステムの延長として実装されてよいが、本発明の実施形態がこの形態に限定されるわけではない。同様に、ジェスチャー処理モジュール１２０が、ウェブブラウザ１３０の延長として実装されてよいが、本発明の実施形態がこの形態に限定されるわけではない。別の実施形態では、ジェスチャー処理モジュール１２０が、ウェブブラウザ１３０に連結される、独立したモジュールであってもよい。
【００２０】
図２は、本発明の実施形態におけるジェスチャーライブラリ１２５に格納されている情報の一例を示す。具体的には、図２は、ジェスチャー処理モジュールが変換する可能性のある様々な動作を示している。たとえば、図１で上述した例に関していうと、ユーザが両方の拳を合わせる動作をした場合、この動きがカメラ１０５及び加速度計１１０により捉えられて、ジェスチャー検知モジュール１１５に提供されて、動作がジェスチャーであると特定された後に、ジェスチャー処理モジュール１２０に中継される。ジェスチャー処理モジュール１２０は、このジェスチャーをジェスチャーライブラリ１２５のジェスチャーリストと比較してよい。図２に示すように、ジェスチャー処理モジュール１２０は、ジェスチャーライブラリ１２５を調べて、このユーザの動作（両方の拳を合わせる動作）を、「タブを閉じる」要求に変換して、ジェスチャー処理モジュール１２０は、このジェスチャーを、タブを閉じる命令に置き換えて、この命令をウェブブラウザ１３０に提供する。
【００２１】
同様に、図３は、ジェスチャーライブラリ１２５の情報の別の例を示している。この例では、カメラ及び加速度計が検知した様々な動作をジェスチャーに変換することができる。したがい、ユーザが加速度計１１０が検知する、揺れの動作を行う場合、この動作は最終的に、ユーザが揺らしている方向に応じて、ページを前後に繰る要求としてウェブブラウザ１２５に渡されてよい。本発明の様々な実施形態では、ジェスチャーとウェブブラウザ１２５への変換された動作要求のリストが、所定の基準に従って自動的に、またはアプリケーション開発者による手動で、動的に更新可能なリストであってよい。
【００２２】
ウェブブラウザを操作するために新しいパラダイムのためのジェスチャーに基づく入力スキームに加えて、本発明の実施形態は、さらに、ウェブブラウザ内の可能性のある様々な動作を特定して露呈させる。従来のＰＣ中心の環境で見られるウェブページは、通常、マウスが存在することを想定している。したがって例えば、ウェブページが、ユーザがこの領域で動作を行うまではユーザには直接的に分からない「アクション領域」を含んでいる場合がある。ウェブページがマウスの移動（hover）を検知したときにはじめて、ユーザに利用可能な、隠されていたテキストまたは動作が表示される。
【００２３】
図４は、本発明の一実施形態の一例を示す。図示されているように、従来のＰＣ中心のウェブブラウザ（「ウェブブラウザ４０５」）用に開発されたアプリケーション（「アプリケーション４００」）は、通常、位置決めカーソルを、所定の時間の間、グラフィックインターフェースのアクション可能な領域（「アクション可能領域４１０」）に位置させる取決め（convention）を利用する。アプリケーション４００は、この領域に関する情報を提供する別のテキスト（隠されたテキスト４１５）を表示して、応答する。したがってこの環境においては、ユーザが、隠されていた情報を見ると、さらなる命令を実行させるために選択することで（たとえば、隠れていた情報４１５内に明らかになった「企業責任」へのリンクをクリックして）、新たなウェブページに導かれてよい。
【００２４】
しかし、フォームファクターが小さいデバイス（たとえばＭＩＤ）では通常、この種の機能は利用可能ではない。たとえば接触式のデバイスでは、位置決めをするカーソルがないために、この技術を利用することができない。入力デバイスがあるハンドヘルドデバイスであっても（たとえば棒状のＴＶリモコン）、ユーザは、ポインタを特定の位置に位置させたり保持したりするのが難しい場合がある。この結果、これらのプラットフォームで実行されているウェブブラウザアプリケーションには、通常、この「アクション可能な領域」機能が含まれていない。
【００２５】
本発明の実施形態においては、ウェブアプリケーションが、全てのプラットフォームに同じ機能を提供することができる。本発明の実施形態は、一部のデバイスタイプでは特定、動作が難しかった１以上のグラフィックユーザインターフェース構成をユーザに利用可能とする新たなパラダイムを提供することができる。より詳しくは、アクション可能な領域の上に位置決めカーソルを移動させるのではなく、本発明の一実施形態では、アプリケーション４００のアクション可能な領域全体を特定して、どのプラットフォームアプリケーション４００が実行中であっても見ることができる視覚キューのセット（「視覚キュー４１５」）を提供する。視覚キュー４１５は、プラットフォームごとにカスタマイズすることができるので、ユーザに、非常に新しく、向上した交信体験を提供することができる。
【００２６】
図５Ａから図５Ｃは、視覚キューを利用してウェブブラウザとの交信の新たなパラダイムを向上させることができる、本発明の一実施形態を示す。この例では、ユーザは電話を利用することを想定しているが、本発明の他の実施形態は、前述したような様々なデバイスに実装することができる。図５Ａに示すように、ウェブページを電話で受け取ると（たとえば図４に示すアプリケーション４００）、このウェブページのコード（コード５００）を構文解析して、コード解析モジュール５００に送り、コード解析モジュール５００で、ウェブページが、アクション可能領域を含んでいると判断される。当技術分野では、今日のウェブページが通常ＨＴＭＬ（ハイパーテキストマークアップ言語）、ＸＨＴＭＬ（拡張可能ハイパーテキストマークアップ言語）、及び、ＸＭＬ（拡張可能マークアップ言語）の少なくとも１つで記述されることは公知である。通常、ウェブブラウザは、言語をＤＯＭに構文解析する際にウェブレイアウトエンジン（たとえば、Ｍｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  ＥｘｐｌｏｒｅｒブラウザのＴｒｉｄｅｎｔ／ＭＳＨＴＭＬ）を利用する。ＤＯＭは、ＨＴＭＬ，ＸＨＴＭＬ及びＸＭＬ文書のオブジェクトを表し、これらと相互作用するためのプラットフォームを超えた、言語から独立している取決めである。ここでは既存の言語及び取決めを例にとって説明を行うが、本発明の実施形態はこれに限定はされない。当業者であれば、将来開発されるウェブマークアップ言語及び取決めの片方または両方を、本発明の実施形態の実施に適合させることが簡単であることを理解するだろう。
【００２７】
ウェブページのタグは、ＤＯＭにより、ウェブページ上の様々なアイテムの（他のアイテムに対する）位置を決定するために利用される。図示しているように、コード解析機５０５が、ウェブページのアクション可能な領域を複数特定すると、これらアクション可能な領域に関する情報が連結されてよい。収集されて連結された情報の種類の例をテーブル５１０に示す。具体的には、この例では、コード解析機５０５が、それぞれがあるアクション（たとえば図示されている「上に移動（floatover）」）及び該当アクションのタグ（<id=xyz>）に対応している３つの異なるアクション（Ｘ、Ｙ、及びＺ）を特定する。この例で利用されている「上に移動」という用語は、移動（hover）、マウスの移動、マウスオーバ等の移動、などの他の用語で表現される場合もある。
【００２８】
アクション可能な領域が図５Ａで示すように特定されたと想定して、図５Ｂは、本発明の実施形態がどのように視覚キューをユーザに提示するかを示す。具体的には、図示されているように、一実施形態で、アクション可能な領域がウェブページに存在することが検知されると、ユーザ選択ボックス（選択ボックス５２０）が表示されてよい。ユーザは、自身が見たいアクション可能領域の種類を選択することができる。一実施形態では、ユーザは、これに加えて、アクション可能領域の種類を選択するために、ジェスチャーを利用してよい。本発明の本実施形態によれば、ユーザは、前述したようにジェスチャーによってウェブアプリケーションへの入力を提供することができるのみならず、直接交信しなくてもウェブブラウザアプリケーション内のアクション可能領域を特定することもできる。したがって、たとえば、アクション可能なアイテムの種類それぞれが数と関連付けられていれば、たとえば、５つの指を挙げることで、本発明の実施形態では、このジェスチャーを、５という数に関連付けられているアイテムの「選択」に利用することができる。
【００２９】
次に、選択されたアクション可能領域の種類を、拡張ウェブページ５２５に様々な方法で表示してよい。拡張ウェブページ５２５（ａ）−（ｄ）という、拡張ウェブページ５２５の様々な例が挙げられているが、本発明の実施形態はこれらに限定はされない。たとえば、拡張ウェブページ５２５（ａ）は、アクション可能な領域４１０内でユーザが利用可能な全てのアクションアイテムのサイドメニューの形態で重ね合わせられるリストを含んでよい。または、これらのアイテムは、本発明の実施形態の精神を逸脱しない様々な他の方法で表示されてもよい。
【００３０】
メニューアイテムの実際の表示、及び、表示されるアクションの両方または片方が、ユーザがウェブページを読むデバイスに適した任意の種類の視覚キュー（視覚キュー５３０）であってよい。電話の例の場合には、小さな表示スクリーンであると想定すると、視覚キュー５１０はリンクへのテキストにより表されてよいだろう。別の例では、ユーザに対して、ユーザがリンクをアクティベートする際に利用可能なジェスチャーを示すアイコンを提示してもよい。また別の実施形態では、ユーザには、単に、選択可能なアクティブなウェブページの部分が提示されてもよい。
【００３１】
本発明の一実施形態では、ユーザが複数の視覚キュー５１０を見ることができるようになり、ページ上に選択可能、アクション可能な領域があることに気づくと、ユーザは、図５Ｃに示すように、視覚キュー５１０を選択してよい。本発明の一実施形態では、ユーザは、ジェスチャー（たとえば人差し指を前に差し出して、「リンク選択」を示す）を利用して、リンク先に行くことができる。前述したように、このジェスチャーは捉えられ、特定され、処理されてよく、ユーザの入力が、ウェブブラウザのユーザインターフェースに入力としてルーティングされてよい。次いで、ユーザに、製品のデモが提示される（リンクにより指定される）。
【００３２】
図６Ａ〜図６Ｃは、本発明の一実施形態を示す。具体的には、図示されているように、アクション可能領域４１０がウェブブラウザ４０５内のウェブページに表示されている図４の例に戻って説明する。表示されているウェブページは、入力デバイス及びユーザインターフェースに関わらず、任意のプラットフォームで実行されているウェブアプリケーションを表示するものであってよい。一実施形態では、表示されるウェブページは、アクション可能領域４１０（カーソルがこの領域の上に移動したときに隠されている情報４１５が表示される）を含んでよい（これは図４に示されている）。解析されてページにアクション可能領域が含まれているかと判断されると、本発明の実施形態では、視覚キュー（視覚キュー６００）が見えるようになり、アクション可能領域４００が表される。
【００３３】
この例では、視覚キュー６００は、人差し指が前に差し出されるアイコンである。前述したように、視覚キュー６００は、本発明の実施形態を逸脱しない他の形式で表されてもよい。ここでジェスチャーアイコンを利用することで、ユーザは、自身がそのジェスチャーを行うことで、アクション可能領域４１０を選択することができる、とわかる。ユーザがいずれかの入力手段によって視覚キュー６００を選択すると、アクションが、ユーザからのジェスチャーとして解釈されてよい。または、別の一実施形態では、ユーザがアイコンに示されているジェスチャーを行い、上述したようにジェスチャーが捉えられて入力であると判断されると、ジェスチャーがジェスチャー処理モジュール１２０に渡されてもよい。いずれのシナリオの場合にも、ユーザの動きは、「リンク先に行く」要求に変換されてよい。命令を受け取ると、ウェブブラウザ１３０は、図６Ｃに示すようにリンク先に行き、このようにして、ユーザには、前には利用できなかったアイテムのリストの全貌が見えるようになる。
【００３４】
図７は、本発明の一実施形態における初期化プロセスを示す。具体的には、示されているように、様々なジェスチャー（ブラウザジェスチャーまたは視覚キュージェスチャー）を、プラットフォームのジェスチャーフレームワークに登録しておくことができる。ジェスチャーのフレームワークは当業者によく知られたものであり、本発明の実施形態があいまいになるといけないので、ここでは詳述を避ける。登録されると、これらのジェスチャーはジェスチャー認識フレームワークの一部となり、その後は、プラットフォームがジェスチャーとみなす動作を受け取ると、アクセスすることができるようになる。
【００３５】
図８は、本発明の一実施形態を示すフローチャートである。以下の動作は、一連のプロセスとして記載されているかもしれないが、多くの動作は、実際には並列、同時、または、並列および同時に実行されてよい。加えて、一以上の実施形態では、動作の順序を、本発明の実施形態の精神を逸脱しない範囲で並べ替えることができる。８０１で、ウェブページをデバイス上に表示してよい。ウェブページのコードを８０２で解析して、アクション可能な領域がページ内に存在しているかを判断する。存在している場合には、本発明の一実施形態では、８０３で、アクション可能領域を視覚キューで置き換えてよい。ユーザは、８０４で、ジェスチャーを行うことによりウェブページと相互作用することができる。ユーザのジェスチャーは、８０５で、動き取得モジュールにより捉えられてよい。８０５で、動き取得モジュールは、捉えた動きをジェスチャー検知モジュールに提供して、動きが入力として解釈されるべきアクションであるかを判断する。入力がユーザからのものであると特定されると、ジェスチャー検知モジュールは、８０６で、このアクションをジェスチャー処理モジュールに渡してよい。ジェスチャー検知モジュールは、８０７で、ジェスチャーライブラリを調べて、ユーザのジェスチャーの意味を判断してよい。８０８で、ジェスチャーが特定されて、ウェブブラウザへの入力に変換されると、ジェスチャー処理モジュールは、８０９で、ウェブブラウザに入力を提供してよい。
【００３６】
図９は、本発明の一実施形態においてジェスチャー処理モジュールが上述したステップ８０７でジェスチャーライブラリを調べる方法を示すフローチャートである。以下の動作は、一連のプロセスとして記載されているかもしれないが、多くの動作は、実際には並列、及び、同時の片方または両方で実行されてよい。加えて、一以上の実施形態では、動作の順序を、本発明の実施形態の精神を逸脱しない範囲で並べ替えることができる。図示されているように、ジェスチャー処理モジュールは、８０７で、ジェスチャーライブラリを調べて、９０１でブラウザがブラウザジェスチャーであるかを判断することで、アクションを判断してよい。判断結果が肯定的である場合には、９０２で、動き検知モジュールが、ジェスチャーを入力として解釈すべきかを判断する。他方、９０１でジェスチャーがブラウザジェスチャーではない場合には、９０３でこのジェスチャーが、ウェブページ上で隠されているアイテムを示す視覚キュージェスチャーであるかを調べる。したがって、たとえばジェスチャーは、アクション可能な領域を特定するためのジェスチャーであるか、アクション可能な領域のアイテムを選択するためのジェスチャーであるか、及び、「隠されている」アイテムに対して他のアクションを実行するためのジェスチャーであるか、判断するために調べられてよい。ジェスチャーが、視覚キュージェスチャーであると判断された場合には、ジェスチャーによる入力を動き取得モジュールにより捉えて、９０２で処理して、ジェスチャーが入力であるかを判断してよい。
【００３７】
図１０は、本発明の実施形態において実装可能な別の視覚キューを示すフローチャートである。以下の動作は、一連のプロセスとして記載されているかもしれないが、多くの動作は、実際には並列、及び、同時の片方または両方で実行されてよい。加えて、一以上の実施形態では、動作の順序を、本発明の実施形態の精神を逸脱しない範囲で並べ替えることができる。１００１で、ウェブブラウザが、ウェブページをプラットフォームにロードしてよい。本発明の一実施形態では、プラットフォームが１００２で構築されると、１００３で、ユーザに、適切な視覚キューと拡張ウェブページとが提示されてよい。そうではない場合、つまり、プラットフォームが視覚キュー用に構成されていない場合には、ウェブページは、視覚キューなしで表示され続けてよい。
【００３８】
ユーザは、１００４で、拡張ウェブページと交信し続けてよい。１００５で、ユーザの入力が調べられ、ユーザが視覚キュー及び拡張インターフェースを終了（deactivate）させようとしているかを判断してよい。１００６で、ユーザ入力が視覚キューの終了を意図している場合には、視覚キュー及びインターフェースを取り除き、ウェブページを元のページにし直す。このような入力が受信されていない場合には、ユーザは、１００７で、１００８で新たなウェブページがロードされるまでの間、拡張ウェブページとの交信を続けることができる。
【００３９】
本発明の実施形態におけるスキームは、様々なコンピューティングデバイスで実装可能である。一実施形態では、コンピューティングデバイスは、縮小命令セット・コンピュータ（ＲＩＳＣ）エンジンまたは特定用途向けの処理エンジン（たとえばグラフィック処理ユニット（ＧＰＵ）、デジタル信号処理ユニット（ＤＳＰ）またはエンベデッドマイクロコントローラ）であってよい１以上のプロセッサ等の他の様々な公知のコンポーネントを含んでよい。
【００４０】
プロセッサ及び機械アクセス可能な記憶媒体は、ブリッジ／メモリコントローラを利用して通信可能に連結することができ、プロセッサは、機械アクセス可能な記憶媒体に格納されている命令を実行することができるものであってよい。ここで述べる機械アクセス可能な記憶媒体は、限定ではないが、機械またはデバイスにより製造または形成される粒子の有形配置（ハードディスク等の記憶媒体、フロッピー（登録商標）ディスク、光ディスク、ＣＤ−ＲＯＭ，ＣＤ−ＲＷ、及び光磁気ディスク等の任意の他の種類のディスク、ＲＯＭ、ＤＲＡＭ等のＲＡＭ、ＳＲＡＭ、ＥＰＲＯＭ、フラッシュメモリ、ＥＥＰＲＯＭ等の半導体素子、磁気カードまたは光カード、または、電子命令の格納に適した任意の他の種類の媒体）であってよい。
【００４１】
ブリッジ／メモリコントローラは、グラフィックコントローラに連結されてよく、グラフィックコントローラは、表示デバイス上の表示データの出力を制御してよい。表示デバイスには、限定ではないが、容量性、抵抗性、表面弾性波（ＳＡＷ）、赤外線、及び光学撮像等の任意の適切な接触式技術を利用して実装可能な接触式の表示デバイス（ここでは「タッチスクリーン」とも称される場合がある）を含んでよい。一実施形態の接触式表示デバイスは、任意の適切な多接触技術を利用して実装してもよい。接触式表示デバイスは、たとえば液晶ディスプレイ（ＬＣＤ）用等の任意の適切な表示技術を利用して実装可能なディスプレイを含む。少なくとも１つの実施形態用のシステム制御論理には、１以上の表示インターフェースを接触式表示デバイスに提供する１以上のグラフィックコントローラが含まれてよい。
【００４２】
ブリッジ／メモリコントローラは、１以上のバスに連結されてよい。これらエレメントの１以上が、１つのパッケージの上で、または複数のパッケージまたはダイを利用して、プロセッサと集積されてよい。ユニバーサルシリアルバス（「ＵＳＢ」）ホストコントローラ等のホストバスコントローラが、バス（１または複数）と連結されてよく、複数の素子をＵＳＢに連結してよい。たとえばキーボード及びマウス等のユーザ入力デバイスを、入力データを提供するためにコンピューティングデバイスに含めることができる。別の実施形態では、ホストバスコントローラが、Ｅｔｈｅｒｎｅｔ（登録商標）、Ｇｉｇａｂｉｔ  Ｅｔｈｅｒｎｅｔ（登録商標）、ＰＣＩ、ＰＣＩ  Ｅｘｐｅｓｓ、ＦｉｒｅＷｉｒｅ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＦｉ、赤外線その他の既存の及び将来の規格を含む様々な他のインターコネクト規格に準拠していてよい。
【００４３】
前述した明細書では、本発明が特定の例示的な実施形態を参照して説明された。しかし、請求項に示されている本発明の広義の精神及び範囲を逸脱せずに様々な変更例及び変形例が可能である。したがって、明細書及び図面は、例示を意図しており、限定的な意味で受け取られるべきではない。
【図１】
0005658376.tif 000002
【図２】
0005658376.tif 000003
【図３】
0005658376.tif 000004
【図４】
0005658376.tif 000005
【図５Ａ】
0005658376.tif 000006
【図５Ｂ】
0005658376.tif 000007
【図５Ｃ】
0005658376.tif 000008
【図６Ａ】
0005658376.tif 000009
【図６Ｂ】
0005658376.tif 000010
【図６Ｃ】
0005658376.tif 000011
【図７】
0005658376.tif 000012
【図８】
0005658376.tif 000013
【図９】
0005658376.tif 000014
【図１０】
0005658376.tif 000015