(57)【要約】  タッチ・スクリーン・デバイスを使用してタッチ入力を行なうのを可能にする手法およびテクノロジが提供されている。スクリーン上に表示されたターゲットを選択する試みに応答して、コールアウト（callout）がスクリーンの非オクルージョン・エリア（non-occluded area）にレンダリングされるのを可能にしている。このコールアウトは、ターゲットを選択する試みが行なわれたときに選択エンティティによって遮蔽されているスクリーンのエリアの表現を含んでいる。
2010512587.tif 000002
【特許請求の範囲】
【請求項１】
スクリーンを備えたタッチ・スクリーン・デバイスにおいて、タッチ入力のための方法であって、
ターゲットを前記スクリーン上に表示するステップと、
前記ターゲットを選択する試みに応答して前記スクリーン上にコールアウトをレンダリングするステップと
を含み、前記コールアウトは、前記スクリーンの非オクルージョン・エリア内に前記スクリーンのオクルージョン・エリアの表現を含んでいることを特徴とする方法。
【請求項２】
実際の接触ポイントを表しているポインタを前記スクリーン上にレンダリングするステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記スクリーンの前記非オクルージョン・エリアに表示された前記ターゲットの表現の上に前記ポインタを導くステップをさらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記スクリーンの前記非オクルージョン・エリアに表示された前記ターゲットの前記表現の上に前記ポインタが置かれているときターゲット取得をコミットするステップをさらに含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記ターゲットを選択する前記試みは、選択エンティティが置かれている前記スクリーンの前記オクルージョン・エリアに接触して、選択エンティティの個所の前記スクリーン上に表示された前記ターゲットを選択するのを試みるステップと、
前記選択エンティティの個所の前記ターゲットにとってオクルージョン・が問題となっているかどうかを判断するステップと、
をさらに含み、
前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっている場合は前記コールアウトがレンダリングされ、前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっていない場合は前記コールアウトがレンダリングされないことを特徴とする請求項４に記載の方法。
【請求項６】
前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているかどうかを判断するステップは、
前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているかどうかを前記ターゲットのサイズに基づいて判断するステップを、さらに含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記オクルージョン・エリアに対して相対的に小さなターゲットにとってオクルージョンは問題であり、および前記オクルージョン・エリアに対して相対的に大きなターゲットにとってオクルージョンは問題ではなく、前記ターゲットが前記オクルージョン・エリアに対して相対的に大きなターゲットを含んでいるとき前記コールアウトはレンダリングされないことを特徴とする請求項６に記載の方法。
【請求項８】
前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているかどうかを判断するステップは、
前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているかどうかを、ドエル・タイムアウト期間に基づいて判断するステップをさらに含むことを特徴とする請求項５に記載の方法。
【請求項９】
前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているかどうかを判断するステップは、
前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているかどうかを、ユーザから受けたコマンドに基づいて判断するステップをさらに含むことを特徴とする請求項５に記載の方法。
【請求項１０】
実際の接触ポイントは前記スクリーン上の前記選択エンティティのカレント選択ポイントであり、コールアウトをレンダリングするステップは、
前記スクリーンの前記オクルージョン・エリアに接触したことに応答して前記非オクルージョン・エリアに前記コールアウトを表示するステップを含み、前記コールアウトは前記スクリーンの前記非オクルージョン・エリア内の前記スクリーンの前記オクルージョン・エリアの表現を含んでいることを特徴とする請求項５に記載の方法。
【請求項１１】
前記スクリーンの前記非オクルージョン・エリアに表示された前記ターゲットの表現の上に前記ポインタを導くステップは、
前記選択エンティティを前記スクリーン上に残しておくステップと、
前記コールアウトから返されたビジュアル・フィードバックに基づいて、前記スクリーンの表面上に前記選択エンティティを移動することによって前記スクリーンの前記非オクルージョン・エリアに表示された前記ターゲットの表現の上にポインタを導くステップと、
を含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記スクリーンの前記非オクルージョン・エリアに表示された前記ターゲットの前記表現の上に前記ポインタが置かれているときターゲット取得をコミットするステップは、
前記非オクルージョン・エリアに表示された前記ターゲットの表現の上に前記ポインタが置かれて前記ターゲットを選択するときに、前記選択エンティティを前記スクリーンの前記表面からリフトオフして前記選択エンティティを定義するステップと、
前記選択エンティティが前記スクリーンからリフトオフされたとき前記コールアウトを除去するステップと、
を含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記オクルージョン・エリアは、前記ターゲットが置かれていて、選択エンティティによって隠された、前記スクリーンのエリアを含んでいることを特徴とする請求項１に記載の方法。
【請求項１４】
請求項１に記載のステップを実行するためにコンピュータ実行可能命令を収めているコンピュータ可読媒体。
【請求項１５】
ターゲットを含む情報を表示するタッチ・スクリーンと、
前記タッチ・スクリーン上に表示されたターゲットを選択する試みに応答して前記タッチ・スクリーンの非オクルージョン・エリア上にコールアウトをレンダリングするためのコンピュータ実行可能命令を有するコンピュータ可読媒体と、
を備え、前記スクリーンは、前記ターゲットが置かれていて、選択エンティティによって隠されたオクルージョン・エリアを含み、前記コールアウトは、前記スクリーンの前記非オクルージョン・エリア内の前記スクリーンの前記オクルージョン・エリアの表現を含んでいることを特徴とするタッチ・スクリーン・デバイス。
【請求項１６】
前記タッチ・スクリーン上に表示された前記ターゲットを選択する試みに応答して前記タッチ・スクリーンの前記非オクルージョン・エリア上にポインタをレンダリングするためのコンピュータ実行可能命令を有するコンピュータ可読媒体をさらに備え、前記ポインタは前記スクリーン上の選択エンティティの実際の接触ポイントを表しており、前記ポインタは前記タッチ・スクリーンの前記非オクルージョン・エリアに表示された前記ターゲットの前記表現の上に移動可能であることを特徴とする請求項１５に記載のタッチ・スクリーン・デバイス。
【請求項１７】
前記ターゲットは、前記非オクルージョン・エリアに表示された前記ターゲットの表現の上に前記ポインタが置かれている間に前記選択エンティティを前記スクリーンの前記表面からリフトオフすることによって選択され、さら、
前記選択エンティティが前記タッチ・スクリーンの表面を押して、前記スクリーン上に表示された前記ターゲットを選択するのを試みたとき、前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているかどうかを判断するためのコンピュータ実行可能命令を有するコンピュータ可読媒体と、
前記選択エンティティが前記タッチ・スクリーンからリフトオフされたとき前記コールアウトを除去するためのコンピュータ実行可能命令を有するコンピュータ可読媒体と
を備えたことを特徴とする請求項１６に記載のタッチ・スクリーン・デバイス。
【請求項１８】
選択エンティティを使用してスクリーンの表面を押すことによって選択可能である少なくとも１つのターゲットを表示するように設計されたスクリーンを備えたディスプレイ・デバイスであって、
前記選択エンティティを使用して前記ターゲットを選択する試みに応答して前記スクリーンの非オクルージョン・エリア（occluded area）にレンダリングされるコールアウトを備え、前記コールアウトは、前記ターゲットが置かれていて、前記選択エンティティによって隠されたスクリーンのオクルージョン・エリアの表現を含み、前記オクルージョン・エリアの表現は前記ターゲットの表現を含んでいることを特徴とするディスプレイ・デバイス。
【請求項１９】
前記スクリーン上の前記選択エンティティの実際の接触ポイントを表しているポインタをさらに備え、前記ポインタは前記非オクルージョン・エリアに表示され、前記実際の接触ポイントは前記オクルージョン・エリア内の実際のカレント接触ポイントを表しており、
前記ポインタは前記スクリーンの前記表面上に前記選択エンティティを移動することによって移動可能であり、前記コールアウトによってユーザに提供されたビジュアル・フィードバックは、前記スクリーンの前記非オクルージョン・エリアに表示された前記ターゲットの前記表現の上に前記ポインタを、ユーザが移動するのを可能にしていることを特徴とする請求項１８に記載のディスプレイ・デバイス。
【請求項２０】
前記コールアウトは、前記選択エンティティの個所の前記ターゲットにとってオクルージョンが問題となっているときにのみ表示され、前記コールアウトは、前記ディスプレイ・デバイスの前記スクリーン上の大きなターゲットを前記ユーザが選択するのを試みたとき表示されないことを特徴とする請求項１９に記載のディスプレイ・デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タッチ入力における指／接触部／センス結果におけるズレに関する。
【背景技術】
【０００２】
パーソナル・デジタル・アシスタント（ＰＤＡ）、モバイル電話／ＰＤＡハイブリッド、およびウルトラ・モバイル・パーソナル・コンピュータ（ＵＭＰＣ）などの多くのデバイスは、ペンをベースとした入力を利用して、ユーザがスクリーン上の選択ポイントを明確に定義するのを支援しており、しかもこれらのデバイスはタッチ入力もサポートしている。ペンまたはスタイラスは細いのが通常であり、ユーザの手とスクリーンの間に垂直方向のオフセット（vertical offset：垂直方向の間隔）を設けるのを支援し、スクリーン上に現れたターゲットがユーザの指または手によって遮蔽（occlude）されないようにしている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、スタイラスを手に取る（retrieving）には時間がかかり、例えば、片手で操作するような状況では不便になることがあり、また、例えば、短時間にまたは断続的にやりとりするような状況では非効率になることがある。
【０００４】
スタイラスの使用が非効率または不便であるとき、ユーザは指または他の「タッチ入力」を使用して、デバイスのスクリーン上に表示されたオブジェクトを選択することが時々ある。例えば、このことがよく起るケースとして、ミーティング時間の確認、マップのナビゲーション、またはメディア・プレイヤの制御といった断続的または短時間のやりとりの場合がある。
【課題を解決するための手段】
【０００５】
ユーザがタッチを使用してタッチ・スクリーン・デバイスを操作するとき、オクルージョン（occlusion：遮蔽）を防止し、明確な選択ポイントを定義することによって、ユーザが指などの選択エンティティを使用してユーザ・インターフェースを操作できるようにすることを目的としたシフト・ポインティング手法が提供される。タッチ・センシティブ・ディスプレイ・デバイス（touch sensitive display device）のスクリーン上に表示された小さなターゲットをユーザが選択するのを試みたとき、このシフト・ポインティング手法によれば、オクルージョン・スクリーン・エリア（occluded screen area）の表現を示すコールアウト（callout）が作成、表示され、オクルージョン・スクリーン・エリアの表現が非オクルージョン・スクリーン・ロケーション（non-occluded screen location）内に置かれる。オクルージョン・エリア（occluded area）とは、ユーザの指または他の選択エンティティによって、遮蔽されたタッチ・スクリーンのエリアである。コールアウトは、ユーザの指または他の選択エンティティのカレント選択ポイントを表すポインタも示している。コールアウトから返されたビジュアル・フィードバックを使用すると、ユーザはスクリーン表面上の指または他の選択エンティティを移動（例えば、ドラッギングまたはローリング）することによってポインタをターゲット内に導くことができる。そのあと、ユーザは、指または他の選択ポイントをデバイスのスクリーンからリフトオフすることによってターゲット取得（target acquisition）をさせる（コミットする）こと（例えば、小さなターゲットを選択させること）ができる。これとは対照的に、タッチ・スクリーン・デバイスのスクリーン上の比較的大きなターゲットを選択するのを試みたときは、コールアウトは作成されないので、ユーザは未変更タッチ・スクリーンのフルパフォーマンスを享受する。
【０００６】
以上のように、ポインタをオフセットすることのほかに、シフト・ポインティング手法によれば、スクリーン上のコンテンツをオフセットし、大幅に改善されたターゲッティング・パフォーマンスが得られるようにする。これらの手法によると、ユーザは、支援無しのタッチ・スクリーン（unaided touch screen）よりも大幅に低いエラー発生率（error rate）で小さなターゲットを選択することができ、ユーザの指（または他の選択エンティティ）によるターゲットのオクルージョンによって起るエラーを減少し、指（または他の選択エンティティ）のどの部分がディスプレイまたはスクリーン上の選択ポイントを定義しているかのあいまいさを少なくすることができる。その結果、タッチ・スクリーン・デバイスでタッチ入力を使用するときのエラー発生率を低減することができる。
【０００７】
上述した簡単な説明は、以下の詳細な説明の個所で詳しく説明されている概念のいくつかを選んで簡単に紹介したものである。この簡単な説明は、請求項に記載の主題のキーとなる特徴または基本的特徴を特定するものではなく、また請求項に記載の主題の範囲を判断する際の一助として使用されるものでもない。
【０００８】
例示の実施形態のより完全な理解が得られるようにするために、以下では詳細な説明と請求項を参照することによって添付図面と関連付けて説明するが、図面全体を通して類似のエレメントは類似の参照符号を付けて示している。
【図面の簡単な説明】
【０００９】
【図１】例示の一実施形態によるコンピュータ・システムの例を示す簡略概略図である。
【図２】例示の一実施形態によるタッチ・スクリーン・デバイスの前面を示す簡略化した概略図である。
【図３】タッチ・スクリーン・デバイスのスクリーン上に表示された望みのターゲットを、例示の一実施形態に従ってタッチ入力を使用して選択するための手法を示す例示のフロー図である。
【図４】（ａ）乃至（ｅ）は、タッチ・スクリーン・デバイスのスクリーン上に表示された比較的小さなターゲットを、例示の一実施形態に従ってタッチ入力を使用して選択するためのエスカレーションまたは「シフト・ポインティング」手法を示す例示の一連の図である。
【図５】（ａ）乃至（ｂ）は、タッチ・スクリーン・デバイスのスクリーン上に表示された比較的大きなターゲットを、例示の別実施形態に従ってタッチ入力を使用して選択するための正規手法を示す例示の一連の図である。
【図６】（ａ）はユーザがターゲットを選択するのを試みたときのユーザの指の接触エリアを示す図であり、（ｂ）は比率ＳF／ＳTがロジスティック関数を使用してどのようにドエル・タイムアウト（ｄｗｅｌｌ  ｔｉｍｅｏｕｔ）に対応付けられるかを示すグラフである。
【図７】（ａ）乃至（ｂ）は、タッチ・スクリーン・デバイスのスクリーン上のユーザの指の異なるロケーションに対してコールアウトおよびポインタを位置づける例を示す図である。
【図８】（ａ）はユーザ側から見たときのターゲット、ユーザの指および入力ポイントを示す図であり、（ｂ）はハードウェア側から見たときのターゲット、ユーザの指および入力ポイントを示す図である。
【図９】ユーザが小さなターゲットを選択するのを試みたときコールアウトに適用可能であるズーミングエンハンスメントを示す図である。
【発明を実施するための形態】
【００１０】
以下の詳細説明は本質上単なる例示であり、本発明または本発明の応用と用途を限定するものではない。本明細書の中で用いられている「例示（exemplary）」という用語は、「例、事例、または図例として使用されること」を意味している。本明細書に「例示」として記載されているどの実施形態も、必ずしも他の実施形態よりも好適または有利であると解されるものではない。以下に説明されている実施形態は、いずれも、この分野の精通者が本発明を実施または使用するのを可能にするために用意された例示の実施形態であり、請求項によって明確化されている本発明の範囲を限定するものではない。
【００１１】
例示の実施形態は、本明細書では、機能および／または論理ブロック・コンポーネントおよび種々の処理ステップの観点から説明されている。なお、当然に理解されるように、このようなブロック・コンポーネントは特定の機能を実行するように構成された任意の数のハードウェア、ソフトウェアおよび／またはファームウェア・コンポーネントによって実現することが可能である。例えば、ある実施形態は種々の集積回路コンポーネント、例えば、メモリ・エレメント、デジタル信号処理エレメント、ロジック・エレメント、ルックアップ・テーブルなどを採用していることがあり、これらのエレメントは１または２以上のマイクロ・プロセッサまたは他のコントロール・デバイスの制御の下で種々の機能を実行することが可能である。さらに、この分野の精通者ならば理解されるように、実際の実施形態は、任意の数のデータ伝送プロトコルと関連付けて実施されることがあり、本明細書に説明しているシステムは単なる１つの例示実施形態である。
【００１２】
説明を簡単にするために、コンピューティング・デバイスのオペレーション、タッチ・スクリーンのオペレーション、ディスプレイ・エレメント上のグラフィックスのレンダリング、およびシステムのその他の機能上の側面（およびシステムの個々の動作エレメント）に関係する従来の手法は、本明細書では詳しい説明が省略されていることがある。さらに、本明細書に含まれる種々の図面に示した接続ラインは、種々のエレメント間の機能的関係および／または物理的結合の例を示したものである。当然に理解されるように、例示の実施形態には、多くの代替的または付加的機能関係または物理的結合が存在していることがある。
【００１３】
図１は、タッチ・スクリーン・デバイスを実現するためのコンピュータ・システム１００の例を示す簡略概要図である。コンピュータ・システム１００は、適当な動作環境の単なる一例であり、本明細書に説明されている実施形態の使用または機能の範囲に関してなんらの制限があることを示唆するものではない。このような実施形態と共に使用するのに適した他の周知のコンピューティング・システム、環境、および／または構成としては、パーソナル・コンピュータ、サーバ・コンピュータ、ハンドヘルド・デバイスまたはラップトップ・デバイス、パーソナル・デジタル・アシスタント、モバイル電話、ＡＴＭ（Automated Teller Machine）およびインフライト・エンターテインメント・システム（in-flight entertainment system）などのキオスク・ベースのコンピュータ、リテール・プロダクト情報システム（retail product information system）、ＧＰＳ（Global Positioning System）ナビゲーション・デバイス、ロケーション・マップ、ビルディング・ディレクトリ、ポータブル・メディア・プレイヤ、電子ブック、トランジット・キオスク、博物館情報ディスプレイ、マルチプロセッサ・システム、マイクロ・プロセッサ・ベースのシステム、プログラマブル・コンシューマ・エレクトロニクス、ネットワークＰＣ、ミニ・コンピュータ、メインフレーム・コンピュータ、上記システムまたはデバイスのいずれかを含む分散コンピューティング環境などがあるが、これらに限定されない。
【００１４】
コンピュータ・システム１００は、プログラム・モジュールのように、１つまたは２つ以上のコンピュータまたは他のデバイスによって実行されるコンピュータ実行可能命令の一般的コンテキストの中で説明することができる。一般的に、プログラム・モジュールには、特定のタスクを実行し、または特定の抽象データ型を実現するルーチン、プログラム、オブジェクト、コンポーネント、データ構造、および／またはその他のエレメントが含まれている。代表例として、プログラム・モジュールの機能は、種々の実施形態で所望されるように結合されていることも、分散されていることもある。
【００１５】
コンピュータ・システム１００は、一般的なコンピュータと同じように、少なくともある種の形体のコンピュータ可読媒体を備えている。コンピュータ可読媒体は、コンピュータ・システム１００によってアクセスすることも、および／またはコンピュータ・システム１００によって実行されるアプリケーションによってアクセスすることも可能な任意の利用可能な媒体にすることができる。例を挙げると、コンピュータ可読媒体としては、コンピュータ記憶媒体と通信媒体があるが、これらに限定されない。コンピュータ記憶媒体としては、コンピュータ可読命令、データ構造、プログラム・モジュールまたはその他のデータなどの情報をストアしておくためのいずれかの方法またはテクノロジで実現された揮発性、不揮発性、取り外し可能および取り外し不能の媒体があるが、これらに限定されない。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリまたはその他のメモリ・テクノロジ、ＣＤ−ＲＯＭ、ＤＶＤ（digital versatile disk）またはその他の光ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたはその他の磁気ストレージ・デバイス、または所望の情報をストアするために使用可能で、コンピュータ・システム１００によってアクセス可能であるその他の任意の媒体が含まれている。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラム・モジュールまたはその他のデータを、搬送波などの変調データ信号またはその他のトランスポートメカニズムで具現化しており、その中には任意の情報配信媒体が含まれている。ここで「変調データ信号（modulated data signal）」とは、その特性の１つまたは２つ以上が信号の中の情報を符号化するような形でセットまたは変更されている信号を意味している。例を挙げると、通信媒体には、ワイヤード・ネットワークまたは直接ワイヤード・コネクションなどのワイヤード媒体、および音響、ＲＦ、赤外線およびその他のワイヤレス媒体などのワイヤレス媒体が含まれているが、これらに限定されない。上記に挙げたものを任意に組み合わせたものも、コンピュータ可読媒体の範囲に含まれることは当然である。
【００１６】
図１に戻って説明すると、コンピュータ・システム１００は、その最も基本的な構成では、通常、少なくとも１つの処理ユニット１０２および適当な容量のメモリ１０４を装備している。コンピューティング・システム１００の正確な構成およびタイプにもよるが、メモリ１０４には、揮発性メモリ（ＲＡＭなど）、不揮発性メモリ（ＲＯＭ、フラッシュ・メモリなど）またはこれらを組み合わせたものがある。この最も基本的な構成は、図１に参照符号１０６で示されている。さらに、コンピュータ・システム１００は追加の特徴または機能を備えていることもある。例えば、コンピュータ・システム１００は、追加のストレージ（取り外し可能および／または取り外し不能）を備えていることがあり、その中には、磁気または光ディスクまたはテープが含まれているが、これに限定されない。この追加のストレージは、図１に取り外し可能ストレージ１０８および取り外し不能ストレージ１１０で示されている。メモリ１０４、取り外し可能ストレージ１０８、および取り外し不能ストレージ１１０は、いずれも上記に定義されているコンピュータ記憶媒体の例である。
【００１７】
コンピュータ・システム１００は、システムが他のデバイスと通信するのを可能にする通信コネクション１１２を装備していることもある。通信コネクション１１２は上記に定義されている通信媒体の処理と関係付けられていることもある。
【００１８】
コンピュータ・システム１００は、キーボード、マウスまたはその他のポインティング・デバイスなどの入力デバイス１１４、音声入力デバイス、ペン、スタイラスまたはその他の入力デバイスなどを備え、これらのデバイスとやりとりすることができる。図２を参照して以下に記載されている例示の実施形態では、コンピュータ・システム１００は、タッチ入力を受け取り、ユーザがスクリーン上に表示されたある種のオブジェクトを選択するのを可能にするスクリーン、ディスプレイまたはその他のユーザインターフェース（ＵＩ）を装備している。本明細書に説明している例示の実施形態では、タッチ入力が利用されているが、本明細書に説明している実施形態は、ペンまたはスタイラスを使用して行なわれるような、どのような同等のタッチベースの入力もサポートするように等しく構成するが可能である。コンピュータ・システム１００は、ディスプレイ、スピーカ、プリンタなどの出力デバイスを備えていることもあれば、これらのデバイスとやりとりすることもある。これらのデバイスはすべてこの分野では周知であるので、ここで詳しく説明することは省略する。
【００１９】
概要  
タッチ入力を使用すると便利であるが、ターゲットとする時間およびエラー発生率が増加する可能性がある。残念ながら、ペンまたはスタイラス入力用に設計されたユーザ・インターフェースは小さなターゲットを含んでいることがよくあるため、そのようなケースでは、指で選択することが緩慢になり、エラーを引き起こしやすくなっている。例えば、指またはその他の形体の「タッチ入力」を使用すると、小さなターゲットが遮蔽（occlude）されるため、ターゲット選択と取得をビジュアル・フィードバックなしで行なわざるを得なくなる。そのために、選択と取得がエラーを引き起こしやすくなっている。
【００２０】
指は微妙な制御の点でスタイラスよりも精度が若干劣っているが、精度だけが、タッチ入力に関連してエラー発生率を高くする理由ではない。タッチ入力に関連してエラー発生率を高くする他の理由として、ターゲットのオクルージョンに関連して指の接触エリアによって生じるあいまいな選択ポイントに起因していることがある。例えば、ユーザは、指の接触エリアのサイズよりも小さなターゲットを選択するときターゲットを取得したかどうかを判断することが困難である。残念ながら、ユーザの指は指の接触エリアより小さいターゲットを遮蔽するため、ユーザがビジュアル・フィードバックを見ることの妨げとなっている。
【００２１】
概要を説明すると、ＰＤＡやＵＭＰＣのようなペン・ベースのデバイスまたはタッチ・スクリーン・デバイスの操作を向上できる手法およびテクノロジが提供され。これらの手法およびテクノロジは、ユーザの指または他の選択エンティティ（例えば、身体の別の部分）がタッチ・スクリーン・デバイスのスクリーンに触れて、スクリーン上に表示されたオブジェクトを選択するのを試みたとき、タッチ入力を行なうことを可能にする。ユーザがターゲットを選択するのを試みるとき、コールアウトをスクリーンの非オクルージョン・スクリーン・エリア（non-occluded screen area）にレンダリングすることができる。このコールアウトには、ユーザの指（または他の選択エンティティ）によって遮蔽されたスクリーンのエリアの表現が含まれている。一部の実施形態では、「遮蔽されたスクリーンのエリアの表現」は、ユーザの指（またはその他の選択エンティティ）によって遮蔽されたスクリーンのコピーを含んでいることもある。
【００２２】
以下の説明では、ユーザが自分の指を使用してターゲットを選択するのを試みるときのシナリオと関連付けて、エスカレーション（escalation）または「シフト・ポインティング」手法が説明されている。しかし、当然に理解されるように、エスカレーションまたは「シフト・ポインティング」手法は、一般的には、ユーザがいずれかの「選択エンティティ」を使用してターゲットを選択するのを試みたときにも、いつでも適用可能である。本明細書の中で用いられている「選択エンティティ」という用語には、オクルージョン・エリアに表示されているターゲットをユーザが選択エンティティを使用して選択するのを試みたとき、タッチ・スクリーン・デバイスのエリアをブロックまたは、遮蔽している、指や指の爪などの身体部分またはその他の選択器具（selection instrument）を含むことが可能である。
【００２３】
図２は、タッチ・スクリーン・デバイス２００の前面を示す簡略概略図である。タッチ・スクリーン・デバイス２００は、適当に構成されたコンピューティング・デバイスまたはシステム、例えば、コンピュータ・システム１００の内部に実装されていることがある。
【００２４】
タッチ・スクリーン・デバイス２００は、ユーザが選択しようとする所望のターゲットを含む情報を表示するタッチ・スクリーン２０２を備えている。本明細書の中で用いられている「タッチ・スクリーン」という用語は、スクリーン、ディスプレイまたはその他のＵＩのエリアを押すことによってタッチ入力を可能にし、スクリーン、ディスプレイまたはその他のＵＩ上に表示されたオブジェクトを選択するように構成または設計されたスクリーン、ディスプレイまたはその他のＵＩを指している。例えば、ユーザは、スタイラスやペンのようなデバイスを使用してスクリーンを押したり、ユーザの指や他の付属部分を使用してスクリーンにタッチしたりすることができる。タッチ・スクリーン・デバイスは、いくつかのエレクトロニック・デバイスのいずれにも実装させることが可能であり、その中には、例えば、セルラ電話、ＰＤＡ、ラップトップ・コンピュータ、ビデオ・ゲーム、エレクトロニック・トイ（電子玩具）、種々のアプリケーション用の電子制御パッドなどのポータブル機器や、ＡＴＭなどの情報配布用固定キオスク（fixed kiosk）、がある。
【００２５】
ユーザがタッチ・スクリーン２０２上に表示された所望のターゲット（図２に図示されていない）を選択するのを試みるとき、ユーザは自分の指をタッチ・スクリーン２０２上の所望のターゲットの上に置くことができる。ユーザの指によって隠されたタッチ・スクリーン２０２のエリアは、タッチ・スクリーン２０２のオクルージョン・スクリーン・エリア（occluded screen area）２０４と呼ぶことができる。このオクルージョン・スクリーン・エリア２０４は、ユーザの指によって隠されていて、ユーザが選択するのを試みている所望のターゲットが置かれているスクリーン２０２のエリアを含んでいる。この所望のターゲットは、オクルージョン・スクリーン・エリア２０４内にあるスクリーン２０２上の第１のエリアを占めている。
【００２６】
ユーザの指がタッチ・スクリーン２０２の表面にタッチし、スクリーン２０３上に表示された所望のターゲットを選択するのを試みると、タッチ・スクリーン・デバイス２００内のモジュール（１または複数）は処理ユニット１０２と協力して動作し、オクルージョンが所望のターゲット（ユーザの指の個所に置かれた）にとって問題となっているかどうかを判断する。
【００２７】
オクルージョンがユーザの指の個所に置かれた所望のターゲットにとって問題となるおそれがあると判断されたときは、コールアウト２０６およびポインタ２０８が表示またはレンダリングされることがある。コールアウト２０６およびポインタ２０８を表示またはレンダリングする判断は、「エスカレーション（escalation）」と呼ぶことができる。コールアウト２０６およびポインタ２０８を表示またはレンダリングするか否か（つまり、エスカレーションを行なうか否か）を判断するための例示の手法の中には、例えば、ユーザ入力をベースとするトリガ（user-input-based trigger）、ドエル・タイマをベースとするトリガ（dwell timer-based trigger）、またはターゲット・サイズをベースとするトリガ（target size-based trigger）を含むことが可能であるが、これらに限定されない。エスカレーションを行なうかどうかを判断する手法は、以下に詳しく説明されている。
【００２８】
本明細書の中で用いられている「コールアウト（callout）」の用語は、オクルージョン・スクリーン・エリアのシフトした表現（この中には、通常、所望のターゲットの表現が含まれる）を指している。一部の実施形態では、「遮蔽されているスクリーンのエリアの表現」は、ユーザの指（またはその他の選択エンティティ）によって遮蔽されたスクリーン・エリアのコピーを含んでいることがある。一部の実施形態では、コールアウトは、入力の動きやディスプレイの更新に応答して、またはその他の理由で移動できるので、必ずしも静止位置に置かれているとは限らない。コールアウトは、通常、任意の適切なサイズにすることも、任意の適切な形状にすることもできるの。図２に示す特定例では、コールアウト２０６のコピー部分が図示のように円形形状または枠になっているが、このコピー部分は矩形の形状または枠、四角の形状または枠、楕円の形状または枠、フキダシ（cartoon bubble）形状または枠、またはこれらを任意に組み合わせたものにすることも可能である。コールアウト２０６は、適切であれば、非オクルージョン・スクリーン・エリア（図２に網目状に示している）内のどのロケーションにも置いておくこと（または平行移動すること）もできる。コールアウト配置の例は図７を参照して以下に示されている。さらに、コールアウト２０６は、実施形態に応じて、オクルージョン・エリアと同じサイズにすることも、オクルージョン・エリアよりも小さくすることも、オクルージョン・エリアよりも大きくすることもできる。図９を参照して以下に説明する１つの例示の「ズーム」実施形態では、コールアウト２０６はオクルージョン・エリアよりも大きくなっている。この実施形態は、所望のターゲットが特に小さく、選択が困難であるような事情のとき利用すると、特に便利である。
【００２９】
本明細書の中で用いられている「ポインタ」の用語は、ユーザの指などの入力デバイスによって指定された現在のシステム入力座標のことを指し、スクリーン上の実際の接触または選択ポイントを表している。一実施形態では、指の個所に置かれているシフトされたポインタ２０８と実際の接触ポイントは、図２に示すように破線で結ばれている。実際の接触ポイントは、オクルージョン・スクリーン・エリア２０４内にユーザの指が実際に置かれている現在の接触または選択ポイントを表している。従って、ポインタ２０８をオフセットすることのほかに、コールアウト２０６は、オクルージョン・スクリーンコンテンツの表現をオフセットするため、ターゲットとするパフォーマンスを大幅に向上することができる。
【００３０】
エスカレーションを行なうとの決定がされると、タッチ・スクリーン・デバイス２００内のモジュール（１または２以上）は処理ユニット１０２と協力して動作し、タッチ・スクリーン２０２の非オクルージョン・スクリーンエリア（図２に網目状に示されている）にコールアウト２０６とポインタ２０８を表示またはレンダリングするコンピュータ命令を実行する。
【００３１】
ユーザが所望のターゲットを選択するのを試みる際ポインタ２０８は移動可能であるので、スクリーン２０２の表面上に指を動かすことによってポインタ２０８を移動することができる。コールアウト２０６によってユーザに返されたビジュアル・フィードバックを使用すると、ユーザは、コールアウト２０６に表示された所望のターゲットの表現上にポインタ２０６を移動することができる。例えば、ユーザはタッチ・スクリーン２０６のオクルージョン・スクリーン・エリア２０４上に指を置いたままにすることによって、コールアウト２０６に表示された所望のターゲットの表現上にポインタ２０８を導き、ポインタ２０８が所望のターゲットの表現の上にくるまで（非オクルージョン・スクリーン・エリア２０４内で）タッチ・スクリーン２０２の表面上に指を移動またはローリングすることによって、ポインタ２０８を導くことができる。
【００３２】
所望のターゲットを選択するには、ユーザは、ポインタ２０８がコールアウト２０６に表示された所望のターゲットの表現の上に置かれているときスクリーン２０２の表面から自分の指をリフトオフすることによってターゲット取得をコミットする。一実施形態では、ターゲット取得が正しく行なわれたことは、クリック・サウンドで確認することができ、他方、ターゲット取得の試みが失敗すると、エラー・サウンドが鳴ることになる。タッチ・スクリーン・デバイス２００内のモジュール（１または２以上）は、ユーザがタッチ・スクリーン２０２の表面から自分の指をリフトオフしたとき処理ユニット１０２と協力して動作し、コールアウト２０６とポインタ２０８を除去する。
【００３３】
図３は、タッチ・スクリーン・デバイスのスクリーン上に表示された所望のターゲットを、例示の一実施形態に従ってタッチ入力を使用して選択するための手法を示す例示フロー図３００である。以下では、図４（ａ）乃至図４（ｅ）および図５（ａ）乃至図５（ｂ）を参照して図３を説明し、図３の手法が例示の一実施形態に従ってどのように適用できるかを具体例で説明する。図４（ａ）乃至図４（ｅ）は、タッチ・スクリーン・デバイスのスクリーン上に表示された比較的小さなターゲットを、例示の一実施形態に従ってタッチ入力を使用して選択するためのエスカレーションまたは「シフト・ポインティング」手法を一連の図例で説明したものである。図５（ａ）乃至図５（ｂ）は、タッチ・スクリーン・デバイスのスクリーン上に表示された比較的大きなターゲットを、例示の一実施形態に従ってタッチ入力を使用して選択するための正規手法を一連の図例で説明したものである。
【００３４】
ステップ３１０において、ユーザはタッチ・スクリーン・デバイスのスクリーン上に表示された所望のターゲットを、自分の指でデバイスのディスプレイ面（例：デバイスの表面）に触れることによって取得または選択するのを試みている。例えば、図４（ａ）および図５（ａ）に示すように、ユーザは自分の指４０１、４０５でスクリーンの表面（または他の身体部分またはデバイスを含む他のオブジェクト）を押して、所望のターゲット４１０、５１０を選択するのを試みている。図４（ａ）において、所望のターゲット４１０は、ユーザの指４０１の個所のスクリーン上に表示された第１の小さなエリアを占めている。所望のターゲット４１０は、いくつかの他の見込まれるターゲット（ｐｏｓｓｉｂｌｅ  ｔａｒｇｅｔｓ）（小さな矩形で図示）の近くにある。ユーザの指４０１によって隠された（および所望のターゲット４１０と他の見込まれるターゲットが置かれている）スクリーンのエリアは、以下では、ユーザには見えない「オクルージョン」エリア（“occluded” area）と呼ぶことにする。図５（ａ）において、所望のターゲット５１０は、スクリーン上に表示され、ユーザの指５０１によって完全には隠されていない相対的に大きなエリアを占めている。言い換えれば、図５（ａ）において、所望のターゲット５１０の一部がまだ見えるために、所望のターゲット５１０が一部だけが遮蔽されている。
【００３５】
条件付きエスカレーション（conditional escalation）は、オクルージョンの問題を解決し、ユーザが小さなターゲットを確実に選択するのを可能にしている。エスカレーションまたはシフト・ポインティング手法によると、やりとりするオーバヘッドが本当に必要になる状況（例えば、小さなターゲット）に限定されることが保証されるので、大幅に時間量を節約することができる。ステップ３２０において、タッチ・スクリーン内のプロセッサまたは他のモジュールは、特定の所望のターゲットに対して「エスカレーション」が必要であるかどうかを判断する。一般的に、タッチ・スクリーン内のプロセッサまたは他のモジュールは、ユーザの指の個所のオクルージョン・スクリーン・エリア（occluded screen area）内に表示された見込まれるターゲットにとってオクルージョンが問題となっているかどうかを判断する。エスカレーションを行なうべきかどうかを判断するために（例えば、コールアウトおよびポインタを表示またはレンダリングするかどうかを判断するために）、種々の手法をいくつでも使用することが可能である。これらの手法としては、例えば、ユーザ入力をベースとするトリガ、ドエル・タイマをベースとするトリガ、またはターゲット・サイズをベースとするトリガがあるが、これらに限定されない。これらの手法は以下で説明する。
【００３６】
エスカレーションが必要でない（例えば、ユーザの指の個所の所望のターゲットにとってオクルージョンが問題でない）と判断されたときは、ステップ３２５において、タッチ・スクリーン・デバイスは、未改良タッチ・スクリーン（unmodified touch screen）などの通常または正規の態様で動作することを続ける（例えば、エスカレーションを起動することなく）。プロセス３００は、次の所望のターゲットを待ち、ループしてステップ３１０に戻る。図５（ａ）および図５（ｂ）に示す例示のシナリオでは、ユーザがタッチ・スクリーン・デバイスのスクリーン上の比較的大きなターゲットを選択するのを試みたときは、コールアウトは生成されず、または表示されない。自分の指を即時にリフトすることにより、ユーザは、援助なしのタッチ・スクリーン（unaided touch screen）をあたかも使用しているように、選択を行なう。この場合、援助なしのタッチ・スクリーンの入力は簡単であるので、比較的大きなサイズのターゲットの場合に適している。
【００３７】
エスカレーションまたはシフト・ポインティング手法は、タッチ・スクリーン・ユーザが期待した通りの振る舞いも行なうので、ユーザは実際のターゲット自体を目標にすることができる。ユーザは実際のターゲットを目標にすることができるので、エスカレーションまたはシフト・ポインティング手法は正規のペンおよびタッチ入力との互換性を保っている。このように互換性があるため、ペンおよびタッチ入力との間で切り換えるとき、やりとりに統一性が保たれている。また、エスカレーションまたはシフト・ポインティング手法をウォークアップ（walk-up）シナリオにおいて展開したり、既存システムを改良したりするのを容易にしている。
【００３８】
エスカレーションが必要である（例えば、ユーザの指の個所の所望のターゲットにとってオクルージョンが問題である）と判断されたときは、ステップ３３０において、コールアウトおよびポインタがスクリーンの非オクルージョン・エリアにレンダリングまたは表示されることが可能である。
【００３９】
エスカレーションまたはシフト・ポインティング手法は、タッチ・スクリーン・ユーザが実際のターゲット自体を目標にすることができると言う点で、ユーザの期待した通りの振る舞いも行なう。ユーザは実際のターゲットを目標にすることができるので、エスカレーションまたはシフト・ポインティング手法は正規のペンおよびタッチ入力との互換性を保っている。このように互換性があるため、ペンおよびタッチ入力との間で切り換えるとき、やりとりに統一性が保たれている。また、このことは、エスカレーションまたはシフト・ポインティング手法をウォークアップ（walk-up）シナリオにおいて展開したり、既存システムを改良設定したりするのを容易にしている。
【００４０】
コールアウトおよびポインタは、オクルージョンに関連する問題を除去するのに役立つと共に、実際の接触ポイントまたは選択ポイントのあいまいさに関連して起る問題を軽減するのにも役立っている。例えば、図４（ｂ）に示すように、コールアウト４０６およびポインタ４０８は、スクリーンの非オクルージョン・エリアに提供され、、すなわち表示されることができる。コールアウト４０６は、スクリーンの非オクルージョン・エリア上にオクルージョン・スクリーン・エリア（例えば、ユーザの指４１０によって隠されたエリア）の表現を表示する。このオクルージョン・スクリーン・エリアの表現は、例えば、所望のターゲット４０１のコピー４０１’を含むことが可能である。ポインタ４０８は、スクリーン上のユーザの指の実際の接触ポイントまたは選択ポイントを表している。ポインタ４０８が初期に表示されるとき、ポインタ４０８は所望のターゲット４０１のコピー４０１’と一致していない。
【００４１】
さらに、当然に理解されるように、コールアウト４０６の位置がターゲットおよびユーザの指の上に表示されるものとして示されているが、図６に関連して以下で説明するように、コールアウト４０６は、ターゲットまたはユーザの指のどちらに対しても、好都合であれば、スクリーンの非オクルージョン・エリア内のどのロケーションにも位置づけることが可能である。コールアウトおよびポインタの配置は、オクルージョンを最小限にし、予測性を最大限にしてビジュアルの再方向付けが加速されるような形で行なう必要がある。
【００４２】
ステップ３４０において、ユーザはポインタを所望のターゲットの表現上に導いて、所望のターゲットを選択する。例えば、図４（ｃ）に示すように、自分の指４１０をスクリーンと接触したままにして、ユーザはコールアウト４０６から戻されたビジュアル・フィードバックに基づいて、ポインタ４０８の位置を導くことができる。ユーザは、スクリーンの非オクルージョン・スクリーン・エリアに表示された所望のターゲット４０１のコピー４０１’上にポインタ４０８が置かれるまでスクリーンの表面上で自分の指を動かすことによって動きを補正し、ポインタ位置を微調整することができる。
【００４３】
ポインタが所望のターゲットの表現の上に置かれたとき、ステップ３５０において、ユーザは所望のターゲットのターゲット取得をコミットする。例えば、図４（ｄ）に示すように、所望のターゲットを選択するには、ユーザは、非オクルージョン・スクリーン・エリアに表示された所望のターゲット４０１のコピー４０１’上にポインタ４０８が置かれている間にスクリーンの表面から自分の指４１０をリフトオフすることによって（例えば、テーク・オフ選択）所望のターゲットのターゲット取得をコミットする。一実施形態では、ターゲット取得が成功したことは、クリック・サウンドで確認することができ、他方、ターゲット取得が失敗したことは、エラーのサウンドで知ることができる。別の実施形態では、正しい位置がビジュアルで確認されたとき、指４１０をリフトすると、ターゲット４０１が選択され、短時間の蛍光残像（brief Phosphor afterglow）が起り、選択が完了する。
【００４４】
ステップ３６０において、ユーザがスクリーンの表面から自分の指をリフトオフしたときコールアウトとポインタが除去される。例えば、図４（ａ）に示すように、コールアウト４０６とポインタ４０８は、ユーザがスクリーンの表面から自分の指（図示せず）をリフトオフすると除去され、所望のターゲットが選択される。
【００４５】
エスカレーションを実行すべきかどうかを判断するための手法  
一実施形態では、ユーザ入力をベースとするトリガ（user-input-based trigger）を使用してエスカレーションまたは「シフト・ポインティング手法」をトリガすることを可能にしている。例えば、ユーザはボタンを押すか、または別の入力デバイスを選択してエスカレーションをトリガすることができる。
【００４６】
別の実施形態では、ターゲット・サイズをベースとするトリガ（target size-based trigger）を使用してエスカレーションまたは「シフト・ポインティング手法」をトリガすることを可能にしている。プロセッサまたはその他のモジュールは、所望のターゲットにとってオクルージョンが問題となっているかどうかを、選択エンティティ（例えば、ユーザの指）の接触エリアに対する所望のターゲットのサイズに基づいて判断することができる。例えば、所望のターゲットの最小寸法が代表的な指接触直径よりも小さいときオクルージョンが問題になることがあるので、プロセッサまたはその他のモジュールは、指によってオクルージョンされるのに十分に小さなターゲットが存在するかどうか（例えば、所望のターゲットは選択エンティティ（例えば、ユーザの指）の接触エリアに対して小さなターゲットを含んでいるかどうか）を判断することができる。一実施形態では、比較的小さなターゲットを選択すると、オクルージョンのためにエラーを引き起こしやすくする概算しきい値のサイズまたは「オクルージョンしきい値（ｏｃｃｌｕｓｉｏｎ  ｔｈｒｅｓｈｏｌｄ）」が設けられている。ユーザが自分の指を使用してスクリーンの表面を押して所望のターゲットを選択するのを試みると（例えば、オクルージョン・スクリーン・エリアに触れるか、圧力を加えると）、タッチ・スクリーン・デバイス内のプロセッサまたは他のモジュールは、所望のターゲットがオクルージョンしきい値よりも小さいかどうかを判断する。所望のターゲットがオクルージョンしきい値よりも小さければ、エスカレーションまたはシフト・ポインティング手法が実行される。これに対して、ユーザがスクリーン上の比較的大きなターゲットを選択するのを試みたときは、オクルージョンは問題とならないのが一般的である。そのために、オクルージョンしきい値よりも大きなターゲットについては、このエスカレーションまたはシフト・ポインティング手法は、スクリーン上にコールアウトをレンダリングまたは表示をせず、その代わりに、未改良タッチ・スクリーンと同じように動作する。
【００４７】
さらに別の実施形態では、ドエル・タイマをベースとするトリガ（dwell timer-based trigger）を使用してエスカレーションまたは「シフト・ポインティング手法」をトリガすることを可能にしている。例えば、プロセッサまたはその他のモジュールは、ユーザの指がしきい値時間よりも長い時間の間ディスプレイに接触していたかどうかを判断する。ユーザの指がしきい値時間よりも長い時間の間ディスプレイに接触していれば、プロセッサまたはその他のモジュールは、エスカレーションまたはシフト・ポインティング手法を実行すべきであると判断する。ユーザの指がしきい値時間よりも短い時間の間またはしきい値時間と同じ時間の間ディスプレイに接触していたときは、プロセッサまたはその他のモジュールは、エスカレーションまたはシフト・ポインティング手法を実行すべきでなく、正規の援助なしのタッチ・スクリーンを実行すべきであると判断する。
【００４８】
ためらいおよび選択のあいまいさに基づくエスカレーション  
さらに別の実施形態では、エスカレーションを行なうべきかどうかの判断を、ターゲット・サイズをベースとするトリガだけ、またはドエル・タイマをベースとするトリガだけに基づくのではなく、両方の実施形態からの考え方が、次のターゲット選択の試みにおいてエスカレーションを行なって、「シフト・ポインティング手法」を使用するか否かを判断する際に、結合することができる。
【００４９】
ドエル・タイムの使用に関して、エスカレーションを行なうかどうかの最終的判断はユーザに任されている。例えば、ターゲット・サイズとロケーションに関する追加知識が完全にないときは、固定ドエル・タイムアウト（例えば、３００ミリ秒）を使用することができる。固定ドエル・タイムアウトが経過したときは、エスカレーションまたはシフト・ポインティングが実行されるべきである。しかし、タッチ・スクリーン・デバイスがターゲット・サイズとロケーションに関する情報を提供するときは、シフト・ポインティング手法は、ドエル・タイムアウトを、「選択のあいまいさ」に基づいて判断または計算することができる。一実施形態では、図６（ａ）および図６（ｂ）を参照して以下に説明するように、スクリーン接触とエスカレーションの間のドエル・タイムアウトを定義することができる。ドエル・タイムアウトの持続時間は、ユーザの指の個所のターゲットのサイズに応じて変化することがあり、選択のあいまいさは、ユーザの指の個所に置かれた最小ターゲット・サイズをオクルージョンしきい値と比較することにより判断または推定することができる。
【００５０】
ターゲットがオクルージョンしきい値に比べて小さいときは、選択のあいまいさが相対的に高いので、ドエル・タイムアウトは非常に短い持続時間にセットすることができ、エスカレーションはほとんど即時に行なわれる。しかし、ターゲットがオクルージョンしきい値に比べてはるかに大きい場合は、オクルージョンは問題とならない。このケースでは、エスカレーションは必要でないのでドエル・タイムアウトはもっと長い時間にセットすることができ、ユーザは単純で直接的な接触を利用することができる。そのために、相対的に大きなターゲットの場合は、ドエル・タイムアウトは相対的に長く、ユーザはエスカレーションなしでターゲットを取得できるので、未改良タッチ・スクリーンと同じパフォーマンスが得られる。
【００５１】
ターゲットがオクルージョンしきいちとほぼ同サイズの場合は、選択のあいまいさの度合いはそれ自体があいまいである（ユーザは、選択するときの確信度に応じてエスカレーションを必要とする場合と、必要としない場合がある）。このケースでは、ドエル、タイムアウトは、ためらってエスカレーション起動を制御するのに十分に短い時間だけ待った後に行なわれる。ユーザがエスカレーションまたはシフト・ポインティング手法の起動を望む場合は、ユーザはある時間期間の間自分の指をスクリーンの表面に置いたままにして待つことができる。エスカレーションを避けるには、ユーザは自分の指をスクリーンの表面から即時にリフトオフすることができる。
【００５２】
図６（ａ）は、ユーザがターゲット６０１を選択するのを試みたときのユーザの指６１０の接触エリア６０５を示す図である。図６（ａ）は、オクルージョンしきい値（ＳF）およびユーザの指６１０の個所に置かれた最小ターゲット６０１の最小寸法（ＳT）も示している。一実施形態では、オクルージョンしきい値（ＳF）はユーザの指６１０の接触エリア６０５の最大寸法である。オクルージョンしきい値（ＳF）および最小ターゲット６０１の最小寸法（ＳT）は、オクルージョンしきい値（ＳF）と指の個所に置かれた最小ターゲットの最小寸法（ＳT）との比率を計算するために使用できる。
【００５３】
図６（ｂ）は、比率ＳF／ＳTがロジスティック関数（logistic function）を使用してどのようにドエル・タイムアウトと対応付けられるかを示すグラフである。ロジスティック関数は、次の数学式によって定義されている。
【００５４】
【数１】
2010512587.tif 000003
【００５５】
ただし、ａ、ｍ、ｎ、およびτは実パラメータである。
【００５６】
オクルージョンしきい値（ＳF）と指の個所に置かれた最小ターゲットの最小寸法（ＳT）との比率は、ロジスティック関数を使用してドエル・タイムに対応付けることができる。一実施形態では、実パラメータはａ＝１、ｍ＝０、およびτ＝３にセットすることができる。図６Ｂに示すように、これらの実パラメータをロジスティック関数で使用すると、小さなターゲットを〜０ｍｓに、大きなターゲットを〜１５００ｍｓに、およびオクルージョンしきい値に近いターゲットを約３００ｍｓに対応付けるスムーズな曲線が得られる。言い換えれば、この曲線は、非常に小さなターゲットについては０ｍｓに近い最小遅延時間にヒットし、大きなターゲットについては１５００ｍｓ前後の最大遅延時間にヒットし、オクルージョンしきい値のサイズに近いターゲットについては３００ｍｓ近くの遅延時間にヒットしている。
【００５７】
オクルージョンしきい値の推定  
オクルージョンしきい値（ＳF）は、おおよそ指の接触エリアと関係があるが、タッチＰＤＡおよびＭＰＣで一般に使用されているセンシティブスクリーンは１つの入力ポイントだけを報告し、指の接触ポイントを報告していない。経時的オクルージョンしきい値の推定は、エスカレーションが使用されるときのターゲット・サイズとエスカレーションが使用されないときのターゲット・サイズに基づいて判断することができる。初期推定ＳFから始めたあと、ＳF＜ＳTのときユーザがエスカレーションを行なう場合はオクルージョンしきい値（ＳF）をｓだけ増加し、ＳF＞ＳTのときユーザがエスカレーションを行なわない場合はオクルージョンしきい値（ＳF）をｓだけ減少する。ただし、ｓ＝ｗ｜ＳF−ＳT｜であり、ｗは経時的オクルージョン推定を平滑化するハンド調整重み（ｈａｎｄ−  ｔｕｎｅｄ  ｗｅｉｇｈｔ）である。一実施形態では、０．１２５に相当する重み（ｗ）を使用すると、平滑さと学習レートの間に良好なバランスが得られる。
【００５８】
この方式が潜在的に持つ利点は、ユーザが好んで指爪を使用して（指または指先を使用するのではなく）ターゲットを選択する場合、オクルージョンしきい値（ＳF）が小さくなり、非常に小さいターゲットについてのみエスカレーションが瞬時に行なわれることである。スタイラスがデバイス・ホルスタ（device holster）の中にあるかどうかを検知できるデバイスの場合は、このアプローチによると、指とペン入力についてそれぞれ独立のオクルージョンしきい値（ＳF）を学習することができる。センサ・データがない場合には、重み（ｗ）を比較的高い値にセットすると、新しいオクルージョンしきい値（ＳF）を学習して、ユーザの入力スタイルの変化に対応することが可能になる。
【００５９】
図７（ａ）乃至図７（ｄ）は、タッチ・スクリーン・デバイスのスクリーン上のユーザの指７１０の異なるロケーションに相対するコールアウト７０６とポインタ７０８の位置付けの例を示す図である。図７（ａ）乃至図７（ｄ）は、このエスカレーションまたはシフト・ポインティング手法が、アクセス不能なスクリーン・エリアが生じさせないことを示している。コールアウトの位置は、スクリーンの非オクルージョン・エリア内にあって、所望のターゲット７０１および／またはユーザの指７１０に相対するどのロケーションにも表示することができる。例えば、図７（ａ）に示す図では、コールアウト７０６Ａは、ユーザの指７１０Ａおよびスクリーンの非オクルージョン・エリア内の所望のターゲット７０１Ａのすぐ上にオフセットされている。図７（ｂ）において、スクリーンのエッジでクリッピングするのを防止するために、コールアウト７０６Ｂは、ユーザの指７１０Ｂおよびスクリーンの非オクルージョン・エリア内の所望のターゲットの右で、その上にオフセットされている。コールアウト７０６Ｂをさらにスクリーンの中央に向かって位置づけると、エッジ付近のクリッピングが防止される。図７（ｃ）において、スクリーンの上部エッジでクリッピングするのを防止するために、所望のターゲット７０１Ｃはディスプレイの上部エッジの近くに置かれている。そのために、クリッピングを防止するために、コールアウト７０６Ｃは、ユーザの指７１０Ｃの左で、スクリーンの非オクルージョン・エリア内の所望のターゲット７０１Ｃの若干下方にオフセットすることができる。以上から理解されるように、コールアウト７０６Ｃを左にオフセットすることが不可能であれば、コールアウト７０６Ｃを図７（ｄ）に示すように右にオフセットすることが可能であり、そこではコールアウト７０６Ｄは、ユーザの指７１０Ｄの右側で、スクリーンの非オクルージョン・エリアの所望のターゲット７０１Ｄの下方にオフセットすることができる。コールアウト７０６の相対的ロケーションを調整することにより、エスカレーションまたはシフト・ポインティング手法はスクリーン上のどこにも置かれているターゲットを処理するので、そうでない場合にスクリーンのエッジで起る可能性のあるクリッピング問題を防止することができる。さらに、以上から理解されるように、「利き手の検出（ｈａｎｄｅｄｎｅｓｓ  ｄｅｔｅｃｔｉｏｎ）」を利用すると、左利きのユーザの場合のコールアウト７０６の配置または位置付けを逆にすることができる。
【００６０】
ユーザ側から見た入力ポイントの補正  
図８（ａ）は、ユーザ側から見たときのターゲット８０１、ユーザの指８１０および入力ポイント８０７を示す図である。多くのタッチ・スクリーン・デバイスでは、単一の選択ポイントが、計算されて、ほぼ中間の指接触エリアに、置かれる。図８（ｂ）は、ハードウェア側から見たときのターゲット８０１、ユーザの指の接触エリア８０９および入力ポイント８０７’を示す図である。ユーザによっては、接触ポイントが意図するターゲットの若干下にあることがよくある。シフト・ポインティング手法は、初期接触ポイントに相対するポインタ位置を表示する。一部の実施形態では、初期接触ポイントに相対するポインタのロケーションは、ユーザ側から見た接触ポイントを反映するように調整することができる。
【００６１】
例えば、一実施形態では、シフト・ポインティング手法は、単一の接触ポイントに基づいて入力位置を調整することができる。ハードウェア側から見た入力ポイント８０７’をユーザ側から見た入力ポイント８０７に対応付ける補正ベクトル（Ｖ）の推定は、定期的に計算することができる。例えば、一実施形態では、補正ベクトル（Ｖ）の推定は、Ｖt+1＝Ｖt＋ｗ（Ｐ2−Ｐ1）のように、補正した最終的リフトオフ・ポイント（Ｐ2）と初期接触ポイント（Ｐ1）の間に加重ベクトルを加えることによって更新することができる。ただし、ｗはハンド調整重み（hand-tuned weight）である。一実施形態では、ハンド調整重み（ｗ）をほぼ０．３３にセットすると、反復的調整を緩慢にしなくても推定を平滑化することができる。この結果、Ｖの推定が収束したあとの微調整時間が短縮するので、ユーザは更なる調整を行なうことなく、選択したターゲットを簡単に確認することができる。しかし、指と異なり、親指の接触形状は、ディスプレイ上の接触ロケーションに応じて変化する傾向がある。このことは、単一調整ベクトルを非効率にする。ロケーション別調節ベクトル（location specific adjustment vectors）の間に線形補間を行なうと、この問題を軽減することができる。
【００６２】
コールアウトの拡大または「ズーミング」  
エスカレーションまたはシフト・ポインティング手法の１つの目的は、ターゲット・オクルージョンを回避することによってユーザがターゲットを取得できるようにすることである。使用上のケースによっては、ターゲットが特に小さいことがある。例えば、上述したシフト・ポインティング手法は、６またはそれ以上のピクセル（約２．６ｍｍ）であるターゲットを取得する場合に効率よく働くが、ケースによっては、ユーザは６ピクセルよりも小さいターゲットを取得したいことがある。一部の実施形態では、このシフト・ポインティング手法を、ズーミングで機能強化し、制御表示（control display；ＣＤ）比率を操作してターゲット選択の精度を向上し、ポインティング正確さを高精度にすることができる。
【００６３】
図９は、ユーザが小さなターゲットを選択するのを試みたとき、エスカレーションまたはシフト・ポインティング手法によって得られるコールアウト９０６に適用できるズーミング機能強化を示す図である。特に小さなターゲットの場合、上述した手法は、コールアウト９０６を拡大し、コールアウト９０６とコールアウト９０６が複製するオクルージョン・スクリーン・エリアとの表示比率を大きくすることにより、ズーミング機能をさらに実現することができる。ズーミング機能が実現されているときは、コールアウト９０６に表示されるオクルージョン・スクリーン・エリアの再生はユーザの指によってオクルージョンされた実際のエリアよりもサイズが大きくなるので、コールアウト９０６は、拡大バージョンのオクルージョン・スクリーン・エリアを提示することになる。
【００６４】
一部の実施形態では、コールアウト９０６は、トラッキング・メニューと同じように指と一緒に走行するように改良することができるので、ユーザはそこを越えてコンテンツに到達することができる。指はポインタ９０８の位置と直接に対応付けられていないので、コールアウト９０６は、補正フェーズ期間にオクルージョンされないように移動される。コールアウト９０６の初期位置は、初期接触ポイントに相対して配置することができる。接触ポイントがしきい値の直径を越えて移動すると、コールアウト９０６はトラッキング・メニューと同じように指と一緒に移動する。この結果、増加したズーム空間（または高ＣＤ比率で増加したモータ空間）が与えられているとき、初期接触ポイントが所望のターゲットから余りに離れている場合にフレームによって隠された初期エリアを越えて微調整を行なうことが可能になる。
【００６５】
この特定例では、エスカレーションが実行され、コールアウト９０６内に表示されたオクルージョン・スクリーン・エリアの表現が拡大されている。以上から理解されるように、ディスプレイのサイズ、オクルージョン・エリアのサイズまたは特定ターゲットのサイズに応じて、それが適当であれば、どのような倍率係数でも使用することができる。コールアウトの拡大が大きくなると、コールアウトが表示するコンテンツは少なくなる。このように拡大すると、ピクセルサイズのターゲットの可視性が保証されるが、確実なターゲット取得を可能にするには十分でないことがある。一部の実施形態では、ズーミングは、制御対表示（ＣＤ）比率を向上すると、さらに補強することができる。
【００６６】
制御対表示（ＣＤ）比率の向上  
制御対表示比率（ＣＤ）は、実際の指の動き（「制御」）とディスプレイ上のシステム・ポインタの動き（「表示」）とを対応付けたものである。ＣＤ比率を１以上に大きくすると、指は一定のポインタ距離をカバーするためにポインタよりも遠くに動く必要がある。ＣＤ比率を１以下に小さくすると、指は一定のポインタ距離をカバーするためにポインタよりも短い距離だけ動くことができる。この操作は、ＣＤ比率の逆である「ゲイン（ｇａｉｎ）」とも呼ばれている。ある制御の動きが与えられているとき、ゲインはその結果のポインタの動きを増減する。ゲインが小さいときは、ポインタの動きは一定の制御の動き以下になる。
【００６７】
ユーザがあるターゲットを目標とするのを可能にするために、多くのタッチ・スクリーン・デバイスは、ＣＤ比率を１として操作されている。例えば、ポインタ位置は指の入力位置と１：１で対応付けることができる。しかし、ユーザの指がいったんスクリーンと接触したとき、ポインタはユーザにビジュアル・フィードバックを返すように表示することができる。そのあと、指の動きはポインタを相対的に制御し、ポインタはポインタに向かう指よりも早くまたは遅く動くことができる。これに対処するために、機能強化バージョンのシフト・ポインティング手法では、エスカレーション時に、ＣＤ比率を最大８：１まで調節することが可能になっている。スクリーン上のポインタの動きは低速になり、１ピクセルのターゲットはモータ空間において８ピックセルに拡張される。代替的実施形態では、ＣＤ比率は、パンタグラフに似たハンドルで調節することも、安定化の目的のために初期タッチポイントからの距離に基づいて調節することも、可能になっている。
【００６８】
上述したように、ターゲットの元の位置に関係なく、コールアウトは指によるオクルージョンを回避するように位置づけられる。ケースによっては、指を動かすと、元のターゲット位置がオクルージョンされるなくなる場合がある。タッチ・センシティブ・ディスプレイの入力エリアは有限であるので、ＣＤ比率を１以上に大きくすると、「モータ空間（motor space）」のレンジをディスプレイ空間の１／ＣＤに減少させる。制御空間（control space）における指の動きは「モータ空間」の動きと呼ばれることがあるが、これは人々が認知モータプロセス（cognitive motor process）でこの動きを制御するからである。これは、初期接触ポイントがディスプレイのエッジからＸピクセルだけ離れていて、ターゲットからＸ／ＣＤピクセルだけ離れていると問題になることがある。シフト・ポインティング手法はリフトオフによる選択を採用しているので、ユーザがターゲットを選択する方法がない。この問題に対処するために、シフト・ポインティング手法は、すべての中間ピクセルが選択可能であるエッジにより近いポイントにスナップするように、またはポインタ加速を使用して長い距離を遅く（long-slow）、短い距離を高速（short-fast）で動く急速な連続（quick succession）がクラッチング（clutching）をシミュレートするように改良可能になっている。
【００６９】
以上、少なくとも１つの例示の実施形態を上述の詳細説明の中で示して説明してきたが、当然に理解されるように、変形実施形態は非常に多数存在している。また、当然に理解されるように、本明細書に記載した１つまたは複数の例示の実施形態は、システム、方法、またはデバイスの範囲、応用可能性または構成をいかなる態様においても限定するものではない。むしろ、上述した詳細説明は、この分野の精通者が記載された１つまたは複数の実施形態を実現するための便利なロードマップとなるものである。さらに、当然に理解されるように、請求項によって明確化されている範囲から逸脱しない限り、エレメントの機能および構成は種々態様に変更が可能であり、その中には、本特許出願時に公知であった等価物または予見可能であった等価物が含まれている。
【図１】
2010512587.tif 000004
【図２】
2010512587.tif 000005
【図３】
2010512587.tif 000006
【図４】
2010512587.tif 000007
【図５】
2010512587.tif 000008
【図６】
2010512587.tif 000009
【図７】
2010512587.tif 000010
【図８】
2010512587.tif 000011
【図９】
2010512587.tif 000012
【国際調査報告】
2010512587.tif 000013
2010512587.tif 000014