説明

赤外レーザーを使用するコンピュータービジョンベースのマルチタッチセンシング

主張される主題が、複数の入力を同時に検出することを容易にするシステムおよび/または方法を提供する。レーザーコンポーネントは、赤外(IR)レーザースポットからレーザーラインを作成できるライン生成(LG)オプティクに連結することが可能であり、レーザーコンポーネントおよびラインLGオプティクが、IR光の平面を出射する。カメラデバイスは、光の平面により覆われる領域内のイメージの一部をキャプチャする。カメラデバイスは、出射されるIR光の平面内の遮断を検出するために、可視光を遮断してIR光を通すIRパスフィルターに連結する。イメージ処理コンポーネントは、出射されるIR光の平面により覆われる領域内の遮断の位置を確定する。

【発明の詳細な説明】
【背景技術】
【0001】
コンピューティングデバイスは、技術性能が増大しており、そのようなデバイスは、限られたデバイス空間内に複数の機能を与えることができる。コンピューティングデバイスは、制限されないが、モバイル通信デバイス、デスクトップコンピューター、ラップトップ、携帯電話機、PDA、ページャー、タブレット、メッセンジャーデバイス、ハンドヘルド、ポケットトランスレータ、バー・コード・スキャナー、スマートフォン、スキャナー、ポータブル・ハンドヘルド・スキャナー、およびデータインタラクションを可能にする他のあらゆるコンピューティングデバイスであるとすることができる。各デバイスが、ユーザーのために特定の機能を用いるが、デバイスは発展し続け、消費者のニーズに訴えるために、重複する機能性を与えている。言い換えれば、コンピューティングデバイスが、複数の特徴および/またはアプリケーションを組み込んだため、デバイスはお互いの機能性を侵害することとなった。例えば、携帯電話機は、セルラーサービス、電話帳、カレンダー、ゲーム、ボイスメール、ページング、ウェブブラウジング、ビデオキャプチャ、ビデオキャプチャ、音声メモ、音声認識、ハイエンドの携帯電話機(例えば、スマートフォンは、特徴および機能性において、ますます携帯型コンピューター/ラップトップと同様のものになりつつある)等を提供することができる。
【0002】
結果として、パーソナルコンピューティングデバイスは、情報を入力するための様々な技術および/または方法を組み込むこととなった。パーソナルコンピューティングデバイスは、制限されないが、キーボード、キーパッド、タッチパッド、タッチスクリーン、スピーカ、スタイラスペン(例えば、ワンド)、ライティングパッド等であるデバイスを用いて、情報を入力することを容易にする。しかし、キーパッド、スピーカおよびライティングパッド等の入力デバイスは、各ユーザーがデータ入力の技術(例えば、音声、および/またはライティング)を同様に利用することができないという、ユーザーパーソナライゼーションの欠陥を生じる。例えば、アメリカでライティング認識を用いる消費者は、英語で書くことができるのに、別個のおよび/または異なる文字のバリエーションが存在する。
【0003】
さらに、コンピューティングデバイスを利用して、このような上述の技術を介して入力されるデータまたはデータインタラクションを通信できる。例えば、ユーザーは、自分のコンピュータースクリーンを共有するために、他人がかなり似た情報および/またはインタラクションを見る/閲覧することを許可するデスクトップ共有アプリケーションを使用できる。別の例において、ラップトップをプロジェクタと共に使用して、会議中の個人のグループに対してデータを通信および/または表示することができる。さらに、PDAを表示装置(例えば、プロジェクタ、テレビ、フラットパネル、モニタ等)と共に使用して、デバイス、アプリケーション、ハードウェア等のレーザーの機能性を使用しながら、スライドショーを提供できる。加えて、コンピューティングデバイスを適用、またはコンピューティングデバイスを改造して、入力およびデータ共有技術を向上させることは、困難でありコスト的に危険を冒すことになり得る。
【発明の概要】
【0004】
以下では、本明細書に記載されるいくつかの側面の基本的理解を提供するために、イノベーションを簡略化した要約を示す。この要約は、主張される主題の広範囲な概要ではない。主張される主題の重要または決定的な要素を確認することも、主題のイノベーションの範囲を明確にすることも意図していない。その唯一の目的は、後に示すさらに詳細な記載の前置きとして、主張される主題のいくつかの概念を簡略化した形式で示すことである。
【0005】
主題のイノベーションは、データインタラクションに対する複数のタッチ検出の利用を容易にするシステムおよび/または方法に関する。特に、イメージ処理コンポーネントは、赤外(IR)光の平面に検出される遮断に関するデータの一部を受信することが可能であり、そのような遮断を、対応する位置、大きさ、および形を、ディプレイ上または投影されるイメージ上にマッピングするために、イメージ処理技法により分析できる。一般に、主題のイノベーションでは、出射されるIR光の平面における少なくとも1つの遮断をキャプチャすることにより、ジェスチャ、タッチイベント、動き、および/または物体を、検出することが可能になる。レーザーコンポーネントは、例えば、ほぼ平らな表面にわたってIR光の平面を伝送するために、ライン生成(LG)オプティクに連結できる。IR光の平面における遮断は、IRパスフィルターに連結されるカメラデバイスにより、キャプチャまたは検出することができる。そのような遮断を、例としてディスプレイとのデータインタラクションの強化を可能にするために、イメージ処理コンポーネントにより受信して変換できる。
【0006】
主題のイノベーションの別の側面に従うと、アプリケーションフレームワーク(例えば、プラグイン等)を用いて、イメージ処理コンポーネントを利用できる。アプリケーションフレームワークは、検出されキャプチャされたタッチイベント、ジェスチャ、動き等を活用して、データインタラクションの強化を可能にすることができる。例えば、アプリケーションフレームワークは、途切れの無い滑らかなデータ操作を可能にするために、表面コンピューティング技術を含むことができる。主張される主題の他の側面において、IR光の平面に検出される遮断に基づき、データの収集およびインタラクションに複数のレーザーを利用することを容易にする方法が提供される。
【0007】
以下の記載および付属の図面では、主張される主題の特定の例示的な側面を詳細に記載する。これらの側面は、イノベーションの原理を用いることができる種々の方法のほんのいくつかを示すが、主張される主題は、全てのそのような側面およびそれと同等のものを含むことを意図する。主張される主題の他の利点および新規な特徴は、以下のイノベーションについての発明を実施するための形態から、図面と併せて検討する際に明らかになるであろう。
【図面の簡単な説明】
【0008】
【図1】ディスプレイとの複数のタッチインタラクションを可能にすることを容易にする例示的なシステムのブロック図である。
【図2】IR光の平面に検出される遮断に基づいてデータの収集およびインタラクションのために複数のレーザーを利用することを容易にする例示的なシステムのブロック図である。
【図3】検出されるタッチイベントに従ってディスプレイとのデータインタラクションを提供することを容易にする例示的なシステムのブロック図である。
【図4】アプリケーションフレームワークによるデータの収集およびインタラクションのために少なくとも1つのIR出射レーザーを利用することを容易にする例示的なシステムのブロック図である。
【図5】表面全体に投影されるIR光の平面における遮断を検出することによって複数のタッチインタラクションを可能にすることを容易にする例示的なシステムのブロック図である。
【図6】主題のイノベーションに従って少なくともカメラデバイスおよびレーザーコンポーネントを使用して複数のインタラクションを検出することを容易にする例示的なシステムのブロック図である。
【図7】IR光の平面に検出される遮断に基づいてデータの収集およびインタラクションに少なくとも1つのレーザーを利用するための例示的な手順を示す図である。
【図8】アプリケーションフレームワークによるデータの収集およびインタラクションのために少なくとも1つのIR出射レーザーを利用することを容易にする例示的な手順を示す図である。
【図9】主張される主題の新たな側面を用いることができる例示的なネットワーク環境を示す図である。
【図10】主張される主題に従って用いることができる例示的な動作環境を示す図である。
【発明を実施するための形態】
【0009】
主張される主題を、図面を参照して記載し、全体を通して同一の参照符号を同一の要素の参照に使用する。以下の記載において、説明の目的で、多数の特定の詳細を、主題のイノベーションの全体の理解を提供するために記載する。しかし、主張される主題が、これらの特定の詳細無しで実践され得ることは、明らかであろう。別の例において、公知の構造およびデバイスを、主題のイノベーションの記載を容易にするためにブロック図の形式において示す。
【0010】
本明細書において利用されるような、用語「コンポーネント」、「システム」「データストア」「エンジン」、「レーザー」、「オプティク」、「カメラ」、「ディスプレイ」、「デバイス」等は、コンピューター関連のエンティティ、ハードウェア、ソフトウェア(例えば、実行中の)、および/またはファームウェアを参照することを意図する。例えば、コンポーネントは、プロセッサ上で稼働するプロセス、プロセッサ、オブジェクト、実行ファイル、プログラム、関数、ライブラリ、サブルーチン、および/またはコンピューターもしくはソフトウェアとハードウェアとの組み合わせとすることができる。実例として、サーバー上で稼働するアプリケーションも、そのサーバーも、コンポーネントとすることができる。1つまたは複数のコンポーネントを、1プロセス内に備えることが可能であり、コンポーネントは、1つのコンピューター上に配置、および/または2つ以上のコンピューター間に分散させることができる。
【0011】
さらに、主張される主題は、ソフトウェア、ファームウェア、ハードウェア、またはそのあらゆる組み合わせを製造するための標準のプログラムおよび/またはエンジニアリング技術を使用する、方法、装置、または製造物として実装されて、コンピューターを制御し、開示される主題を実装してもよい。本明細書において使用される用語の「製造物」は、あらゆるコンピューター読み取り可能なデバイス、キャリア、または媒体からアクセス可能なコンピュータープログラムを包含することを意図する。例えば、コンピューター読み取り可能な媒体は、制限されないが、磁気記憶装置(例えば、ハードディスク、フロッピーディスク、磁気ストリップ...)、光ディスク(例えば、CD(compact disk)、DVD(digital versatile disk)...)、スマートカード、およびフラッシュ・メモリ・デバイス(例えば、カード、スティック、キードライブ...)を含むことができる。加えて、搬送波を用いて、例えば電子メールを送信および受信をするのに、または例えばインターネットもしくはローカル・エリア・ネットワーク(LAN)のネットワークにアクセスするのに使用されるもの等のコンピューター読み取り可能な電子データを搬送できることを認識すべきである。もちろん、主張される主題の範囲または精神から逸脱することなく、この構成に多くの修正がなされ得ることを、当業者は、認識するであろう。さらに、単語「例示の」は、本明細書で使用して、例、事例、または例証としての役割を果たすことを意味する。本明細書において「例示」として記載されるあらゆる側面または設計は、他の側面または設計においては、必ずしも好ましいまたは利点のあるものとして解釈されるわけではない。
【0012】
ここで、図面を参照して、図1は、ディスプレイとの複数のタッチインタラクションを可能にすることを容易にするシステム100を示す。システム100は、検出されるタッチイベントに基づきデータインタラクションを可能にすることができる、イメージ処理コンポーネント102を含むことができて、タッチイベントは、レーザーコンポーネント104からのIR光をカメラデバイス108でトラッキングすることにより検出できる。一般に、システム100は、レーザーコンポーネント104から伝送されるIR光の平面における遮断を検出することにより、動き、ジェスチャ、入力、タッチイベント、物体等を検出できる。IR光の平面における遮断を、イメージ処理コンポーネント102によって評価できて処理できる。レーザーコンポーネント104から出射される光のそのような平面を、カメラデバイス108によりリアルタイムに監視できることは認識すべきである。IR光の平面に検出される遮断に少なくとも部分的に基づき、イメージ処理コンポーネント102は、遮断を、データインタラクションで利用されるように、対応する位置、形、大きさ等に変換できる。特に、レーザーコンポーネント104は、ライン生成(LG)オプティク106に連結され、レーザースポットからレーザーラインを作成できる。LGオプティク106およびレーザーコンポーネント104は、光の平面を出射することが可能であり、光の平面における遮断は、カメラデバイス108およびイメージ処理コンポーネント102により、それぞれ検出および処理することができる。カメラデバイス108は、可視光を遮断してIR光を通すためにIRパスフィルター110を含むことができることを認識すべきである。
【0013】
システム100を、例えば、制限されないが、ジェスチャ、手の動き、手によるインタラクション、物体によるインタラクション、および/またはIR光の平面を遮断することができる他のあらゆる適切な実体的な物体等のタッチイベントをキャプチャするために利用できる。例えば、出射されるIR光の平面を遮断する、手によるインタラクションは、ディスプレイ上での対応するデータインタラクションに変換されるように、システム100によりリアルタイムで検出できる。したがって、タッチイベント検出は、LGオプティク106を有するレーザーコンポーネント104と、IRパスフィルター110を有するカメラデバイス108と、イメージ処理コンポーネント102との構成により、実施できる。タッチイベントは、レーザーコンポーネント104により出射されるIR光の平面のあらゆる適切な遮断とすることができ、遮断は、LGオプティク106およびレーザーコンポーネント104から出射される光の平面の一部が妨害されたものであることを認識すべきである。さらに、システム100が、タッチイベント検出を提供するための、コンパクトで、サイズ効率が良く、コスト効率の良い、レガシーなデバイス適合性のある解決策であることを認識すべきである。
【0014】
例として、IR光の平面は、物体により遮断されることがある。そのような遮断の検出に基づき、イメージ処理コンポーネント102は、位置、大きさ、形、遮断の特徴(例えば、トラッキング、期間等)等を識別するためにデータを分析できる。イメージ処理コンポーネント102は、そのようなデータを、例えば、ディスプレイ上の対応する位置に変換できる。ディスプレイ(例えば、以下でより詳細に検討するもの)は、さらに、IR光の平面における遮断の原因となった物体の対応する形および/または大きさをレンダリングすることができる。例えば、スライドのプレゼンテーションを表示し、発表者は、システム100で(例えば、手の動きがキャプチャされディスプレイに対して変換される、等)、そのようなデータとインタラクションを行うことができる(例えば、情報をハイライトする、ジェスチャでスライドを交換する、アプリケーションを開く、タッチスクリーンで入力する、等)。別の例において、ユーザーの机の表面に、平行に出射されるIR光の平面を有すようにして、机の表面をデータ入力またはタッチイベント検出のための領域に変換できる。したがって、机の表面からのIR光の平面における遮断を、例えば、モニタまたはディスプレイ上のデータに対するデータインタラクションに利用できる。別の例において、システム100は、IR光の平面がモニタのスクリーンまたは表面に対して平行に出射されることが可能なモニタと共に、実装できる。そのような遮断の検出を、イメージ処理コンポーネント102により、表示されるあらゆるデータに対応するよう変換できる。
【0015】
システム100は、レーザーコンポーネント104から生成されるIR光を利用するものとして検討されるが、あらゆる適切な光源またはレーザーコンポーネント104を用いて、遮断されることがある光の平面を生成できる(例えば、光の平面における遮断を利用して動きを検出できる)ことは認識されるべきである。例えば、十分に明るい赤色レーザー(例えば、緑色レーザーおよび/または色を問わず他のあらゆる適切なレーザー)、および/または十分に暗い部屋を使用して、動き検出を可能にするそのような光源における遮断を検出および/または識別することができる。可視レーザー光または光源は、ユーザーにとっては目をそらすようなものであり得るが、光の平面がほぼ平行でかつ表面より上にある場合、有用なフィードバックをさらに提供することができる。さらに、光の平面は、ディスプレイの表面より上でディスプレイの表面から離すことができる(例えば、レーザー光または光源の波長を問わずに)。例えば、そのような例は、ゲーム、オンラインゲーム、コンソールゲーム等で利用できる。
【0016】
加えて、システム100は、適切なおよび/または必要なあらゆるインターフェースコンポーネント(図示せず)を含めることができ、それにより、種々のアダプタ、コネクタ、チャネル、通信路等を提供して、イメージ処理コンポーネント102、レーザーコンポーネント104、LGオプティク106、カメラデバイス108、および/またはIRパスフィルター110を、あらゆる動作システムおよび/またはデータベースシステムに実質的に統合し、および/またはお互いに統合する。加えて、インターフェースコンポーネントは、種々のアダプタ、コネクタ、チャネル、通信路等を提供することが可能であり、これらにより、イメージ処理コンポーネント102、レーザーコンポーネント104、LGオプティク106、カメラデバイス108、および/またはIRパスフィルター110、ならびにシステム100に関連する他のあらゆるデバイスおよび/またはコンポーネントとのインタラクションを提供する。
【0017】
図2は、IR光の平面に検出される遮断に基づき、データの収集およびインタラクションに複数のレーザーを利用することと容易にするシステム200を示す。システム200は、伝送されるIR光の平面に検出される遮断に関連する位置を確定することが可能なイメージ処理コンポーネント102を含むことができる。イメージ処理コンポーネント102は、IR光の平面の遮断の位置をデータインタラクションのための対応する位置に変換できる。検討したように、IR光の平面における遮断は、IRパスフィルター110を使用するカメラデバイス108で検出できる。さらに、カメラデバイス102を、IR光に関連するイメージおよび/またはデータをキャプチャすることが可能なあらゆる適切なイメージデバイスとすることができることを認識すべきである。例えば、カメラデバイス108は、カメラ、ビデオカメラ、IRカメラ、IRビデオカメラ、ウェブカメラ、カメラ付きスマートフォン、および/またはカメラの能力を備える他のあらゆる適切なデバイスとすることができる。
【0018】
IR光の平面は、例えば、レーザーコンポーネントからレーザーコンポーネントまで等の、ただし、Nは正の整数、あらゆる適切な数のレーザーコンポーネント202により生成できる。さらに、レーザーコンポーネントの数が増えることで、IR光の平面に対してより大きな表面領域の対象範囲を提供することでき、それによりタッチイベント検出の強化が可能になることは理解すべきである。図示するように、各レーザーコンポーネント202は、それぞれのLGオプティクを含み、さらに、あらゆる適切な数のLGオプティクが使用できる(例えば、2つ以上のレーザーコンポーネントが単一のLGオプティクを共有できる等)ことを認識および理解すべきである。例えば、正方形として形成されるほぼ平らな表面上の一構成において、第1のレーザーコンポーネントを、第1の角(例えば、北西の角)に配置し、および第2のレーザーコンポーネントを第2の角(例えば、北東の角)に配置して、IR光の平面を、表面に平行に投影することを可能にする。別の例において、正方形に形成される表面は、より大きな表面領域の対象範囲を提供するために(例えば、より大きなIR光の平面が、正方形に形成された表面の表面領域を覆う)、各角にレーザーコンポーネントを含むことができる。
【0019】
特定の例において、カメラデバイス108は、投影面(例えば、IR光の平面を平行に投影可能な表面)の上方に取り付けできる。少なくとも1つのレーザーコンポーネントおよびそれぞれのLGオプティクは、投影面上に取り付けて、そこから出射される光の平面が、投影される表面に対して平行になるようにすることができる。言い換えれば、レーザーコンポーネントは、LGオプティク(複数の)からの赤外光が、投影面を覆う赤外光の平面を形成するように、方向づけて置かれる。投影面からIR光の平面までの高さを、意図される使用またはデータインタラクションに対する選択に基づいて調整できることを認識すべきである。
【0020】
システム200は、イメージ処理コンポーネント102、少なくとも1つのレーザーコンポーネント202、LGオプティク、カメラデバイス108、IRパスフィルター110等に関するあらゆる適切なデータを含むことが可能なデータストア204を、さらに含むことができる。例えば、データストア204は、制限されないが、レーザーコンポーネント構成設定、カメラデバイス構成設定、レーザーコンポーネント方向設定、レーザーコンポーネント方向定義、ユーザー選択、ユーザーパスワード、ユーザー名、マッピング、イメージ処理データ、遮断検出データ、遮断の検出に関する感度設定、位置データ、IR感度設定、IR光の平面における遮断の原因に関するサイズデータ、IR光の平面における遮断の原因に関する形状データ、イメージ処理技法、イメージ処理データ、イメージ・トラッキング・データ、2値化データ、IR変調データ、LGオプティク設定(例えば、拡張サイズ、強度等)、表面領域データ(例えば、表面の大きさ、表面の位置、表面のタイプ、等)、ジェスチャ、動き、アプリケーションフレームワークデータ等を含むことができる。
【0021】
データストア204は、例えば、揮発性メモリか不揮発性メモリかのいずれかとすることができて、または揮発性メモリ不揮発性メモリいずれも含むことができることを認識すべきである。実例として、制限としてではなく、不揮発性メモリは、ROM(read only memory)、PROM(programmable ROM)、EPROM(electrically programmable ROM)、EEPROM(electrically erasable programmable ROM)、またはフラッシュメモリを含むことができる。揮発性メモリは、RAM(random access memory)を含むことができ、これは外部キャッシュメモリとして動作する。実例として制限としてではなく、RAMは、SRAM(static RAM)、DRAM(dynamic RAM)、SDRAM(synchronous DRAM)、DDR SDRAM(double data rate SDRAM)、ESDRAM(enhanced SDRAM)、SLDRAM(Synchlink DRAM)、RDRAM(Rambus direct RAM)、DRDRAM(direct Rambus dynamic RAM)、およびRDRAM(Rambus dynamic RAM)等の多くの形において利用できる。主題のシステムおよび方法のデータストア204は、制限されることなしに、これらおよび他のあらゆる適切なタイプのメモリを備えることが意図される。加えて、データストア204は、サーバー、データベース、ハードドライブ、ペンドライブ、外部ハードドライブ、ポータブルハードドライブ等とすることができることを認識すべきである。
【0022】
図3は、検出されるタッチイベントに従って、ディスプレイとのデータインタラクションを提供することを容易にするシステム300を示す。システム300は、データインタラクションで使用するためのIR光の平面に検出される遮断に関するあらゆる適切なデータを受信することができるイメージ処理コンポーネント102を含むことができる。特に、レーザーコンポーネント104から(LGオプティク106を用いて)伝送されるIR光の平面を遮断するタッチイベント(例えば、物体、ジェスチャ、動き、手、実体的な物体等)は、カメラデバイス108により(IRパスフィルター110を用いて)検出できる。さらに、システム300は、データインタラクションを提供するためにタッチイベントをリアルタイムでトラッキングできることを認識するべきである。例えば、IR光の平面における遮断を、それに関する遮断および動きのリアルタイムのビデオを提供するように、システム300によって監視できて、検出できる。
【0023】
イメージ処理コンポーネント102は、あらゆる適切なイメージ処理技術を利用して、キャプチャされたイメージ(例えば、カメラデバイス108およびIRパスフィルター110から)を、ディスプレイ302上の投影されたイメージと整列させることができる。例えば、キャプチャされたイメージ内の点を決定することが可能であり(例えば、遮断の位置、遮断の形、遮断の大きさ等)、および/またはディスプレイ302上の投影されたイメージ内の対応する点を計算できる。別の例においては、ユーザーの手または指を、IR光の平面が平行に投影される表面上に置くことができる。この例では、指または手は、IR光の一部を捕らえる(例えば、IR光の平面を遮断する)ことが可能であり、この部分を、カメラデバイス108により明るい部位としてキャプチャすることができる(例えば、IRパスフィルター110を利用して)。明るい部位のそのような部分を、イメージ処理コンポーネント102によりトラッキングされる物体として検出できる。例えば、イメージ処理コンポーネント102は、2値化、イメージ分析、キャプチャされたイメージの分析等を用いることができる。さらに、ディスプレイ302は、あらゆる適切なディスプレイコンポーネント、制限されないが、例えば、モニタ、テレビ、液晶ディスプレイ(LCD)、プラズマ、リアプロジェクションディスプレイ、フロントプロジェクションディスプレイ、陰極線管(CRT)モニタ、フラットパネル、コンピューティングデバイスのディスプレイ、携帯情報端末(PDA)スクリーン、ラップトップディスプレイ、コンピューターモニタ、スマートフォンディスプレイ、セルラー・デバイス・スクリーン、モバイル通信デバイスディスプレイ、携帯型ゲーム・デバイス・ディスプレイ等とすることができることを認識すべきである。
【0024】
図4は、アプリケーションフレームワークを用いて、データの収集およびインタラクションに少なくとも1つのIR出射レーザーを利用すること容易にするシステム400を示す。システム400は、IR光の平面の検出される遮断をディスプレイ302上の対応する位置、大きさ、および形に変換させることを可能にするイメージ処理コンポーネント102を含むことができる。特に、レーザーコンポーネント104は、LGオプティク106に連結されて、IR光の平面を生成できる。IR光のそのような平面の遮断また分断(例えば、IR光の平面の一部を反射する物体等)は、カメラデバイス108によりIRパスフィルター110を利用して検出できる。
【0025】
IR光の平面の遮断の、マッピング、変換、ならびに、対応する大きさ、形、および/または位置は、ディスプレイ302と共に利用され得る。例えば、動き、ジェスチャ、および/または物体は、システム300により検出可能であり、そのような動き、ジェスチャおよび/または物体を、ディスプレイ302に表示および/または再現できる。特に、スタイラスペンは、書く際にIR光の平面を遮断して、そのときシステム300は、そのような動きをIR光の平面の遮断に基づき検出およびトラッキング可能であり、そのような動きをディスプレイ302上にレンダリングすることができる。さらにその上、個々の動きまたはジェスチャの検出により、関数または出力を起動できる。例として、例えばクエスチョンマークを書くこと等の検出される動きによって、ヘルプの機能またはアプリケーションを起動できる。
【0026】
検出されるタッチイベントを(例えば、動き、ジェスチャ、物体等を)、あらゆる適切なコンポーネント、デバイス、アプリケーション、ソフトウェア、ハードウェア等に関連して利用できることを認識するべきであり、理解するべきである。特に、検出されるタッチイベントを、アプリケーションフレームワーク402によって利用できる。例として、アプリケーションフレームワーク402は、データ(例えば、イメージ、アイコン、ファイル、ビデオ、音声クリップ、データ等)とのインタラクションを可能にする表面コンピューティングに関連するソフトウェアを含むことができる。表面コンピューティングソフトウェアは、動きおよび/またはジェスチャに、制限されないが、ズーミング、パニング、ストレッチング等の機能を制御させることを可能にする。さらにその上、表面コンピューティングアプリケーションは、別個の形または物体(例えば、定義された大きさの検出された矩形上で再生されるビデオ、携帯電話機の検出されたイメージ、検出の特定パターン上に表示されるイメージ等)で認識できる。一般に、表面コンポーネントは、専門的なコンピューターグラフィックユーザーインターフェース(GUI)を用いるソフトウェアおよび/またはハードウェアの一部とすることができる。例えば、ユーザーは、タッチイベント検出がシステム400によりキャプチャされる、タッチセンシティブなスクリーンまたはディスプレイと直接インタラクションを行うことができる。別の例において、アプリケーションフレームワーク402は、データをユーザーの手でつかませることが可能であり、そのような情報をオブジェクト間で自然なジェスチャおよびタッチで移動させるデジタルコンテンツインタラクションに関するソフトウェアを含むことができる。特に、卓上ディスプレイを、システム400と共に、検出されるタッチイベントと結び付けて利用して、データとの途切れの無いインタラクションを可能にすることができる。
【0027】
図5は、表面全体に投影されるIR光の平面における遮断を検出することにより、複数のタッチインタラクションを可能にすることを容易にする、システム500を示す。システム500は、LGオプティク106を利用してレーザーコンポーネント104から出射されるIR光の平面を遮断するリアルタイムのタッチイベントを検出可能な、イメージ処理コンポーネント102を含むことができる。特に、IR光の平面は、表面502に対して平行に投影され、IR光のそのような平面における遮断を、IRパスフィルター110を利用してカメラデバイス108により検出できる。IR光の平面を遮断する物体に基づき、IR光が検出され、それにより、カメラデバイス108およびIRパスフィルター110がそのようなタッチイベントをキャプチャすることが可能にされる(例えば、動き、ジェスチャ、IR光における遮断等)。表面502は、あらゆるほぼ平らな表面、制限されないが、例えば、机、テーブル、壁、ディスプレイ、テレビ、ラップトップ、床、天井、地面の断面、コンクリートの断面、木片、黒板、投影スクリーン、自動車のフロントガラス、自動車の窓、自動車のダッシュボード、デバイスに関連するほぼ平らな表面、車に関するほぼ平らな表面(例えば、自動車、トラック、オフロードカー(ATV)、オートバイ、モペット、スクータ等)、飛行機のトレー等とすることができることを認識すべきである。一般に、主題のイノベーションを種々のありふれた表面で利用して、検出されるタッチイベントを介したデータインタラクションを可能にすることができる。さらに別の例において、システム500は、表面502(例えば、レーザーコンポーネント104および/またはLGオプティク106は、机に埋め込まれる等)に組み込むことができる。
【0028】
タッチイベント検出システム500は、レーザーコンポーネント104および/またはLGオプティク106に対して種々の設定をさらに利用することができる。例えば、レーザーコンポーネント104の拡張サイズは、IR光の平面が覆うべき表面502の領域に少なくとも部分的に基づいて、調整できる。より大きな拡張サイズ(例えば、より大きな対象範囲の角度)により、表面502のより大きな角度が覆われるが、その区域が狭まる。より小さな拡張サイズにより、表面502の角度のある(例えば、円錐形状の)対象範囲が制限されるが、その区域が広がる(例えば、レーザーからの距離)。レーザーコンポーネント104に対する設定にあらゆる適切な調整を利用できることは認識されるべきである。
【0029】
システム500は、レーザーコンポーネント104および/またはLGオプティク106により生成されないIR光を補償するために、IR変調コンポーネント504をさらに含むことができる。レーザーコンポーネント104および/またはLGオプティク106により生成されないIR光は、例えば、昼光、定常光、白色光、ハロゲンライト等とすることができる。このIR光を補償または除去するために、IR変調コンポーネント504は、レーザーコンポーネント104を「ON」および「OFF」することができ、複数のイメージが、レーザーコンポーネント104がONおよびOFFの状態のイメージの対を含む。言い換えれば、1つのイメージが定常光を有し(例えば、カメラデバイス108およびレーザーコンポーネント104が「OFF」の状態のときに検出されるもので、第1のコレクションとも称する)、他方のイメージが、定常光に加えてIR生成光を有する(例えば、カメラデバイス108およびレーザーコンポーネント104が「ON」の状態のときに検出されるもので、第2のコレクションとも称する)。これらの2つのイメージを取り去って(例えば、第2のコレクションと共に取り去られる第1のコレクション)、検出から定常光を取り除くことができる。これは、レーザーコンポーネント104および/またはLGオプティク106により生成されない定常光のまたは屈折されたIR光を補償するために、フィルターまたはスクリーンとして利用できる。
【0030】
図6は、主題のイノベーションに従って、少なくともカメラデバイスおよびレーザーコンポーネントを使用して複数のインタラクションを検出することを容易にするための、インテリジェンスを用いるシステム600を示す。システム600は、先行する図面において説明したそれぞれのコンポーネント、オプティク、デバイス、およびフィルターとほぼ同様である、イメージ処理コンポーネント102、レーザーコンポーネント104、LGオプティク106、カメラデバイス108、およびIRパスフィルター110を含むことができる。システム600は、インテリジェントコンポーネント602をさらに含むことができる。インテリジェントコンポーネント602を、イメージ処理コンポーネント102が利用して、システム600の構成を利用したタッチイベントの検出を容易にすることができる。例えば、インテリジェントコンポーネント602は、IR光の平面の遮断の位置、IR光平面における遮断に関する大きさ、IR光平面における遮断に関する形、IR光の平面におけるタッチイベントに関するトラッキング、ユーザー選択、LGオプティク106の設定、カメラデバイス108の方向、レーザーコンポーネント104の方向、ディスプレイに関する設定、変調の周波数/設定、定常光検出、ジェスチャ評価、動き評価、タッチイベント予測等を推論できる。
【0031】
インテリジェントコンポーネント602は、IR光の平面における遮断およびそれに関連する特徴(例えば、大きさ、位置、形等)を識別するために、情報価値(VOI)計算を用いることができる。例えば、VOI計算を利用することにより、最も理想的なおよび/または適切な遮断の検出またはタッチイベントを、識別および利用できる(例えば、第1のデータインタラクションに関連する第1のタッチイベントを、第2のデータインタラクションに関連する第2のタッチイベントに比較して優先度を低くすることができる等)。さらに、インテリジェントコンポーネント602は、イベントおよび/またはデータを介してキャプチャされるような観察結果の組から、システム、環境、および/またはユーザーについて、推論に備える、または状態を推論することができることを理解すべきである。推論を利用して、例えば、特定のコンテキストまたは動作を識別することが可能であり、または状態全体の確立分布を生成できる。推論は、確率的なものであり、すなわち、データおよびイベントを考慮したことに基づく、対象の状態全体の確立分布の計算である。さらに、推論は、イベントおよび/またはデータの組から高レベルのイベントを構成するために用いる技術を引用できる。そのような推論により、観察されたイベントおよび/または記憶されるイベントデータの組から、そのイベントに時間的に密接に近接した相互関係があるかどうかに関わらず、およびそのイベントおよびデータが、1つまたは数個のイベントソースおよびデータソースによるものなのかどうかに関わらず、新しいイベントまたは動作が構築されることになる。種々の分類(明示的および/または暗示的に訓練される)スキームおよび/またはシステム(例えば、サポートベクトルマシン、ニューラルネットワーク、エキスパートシステム、ベイジアン信念ネットワーク、ファジー理論、データ融合エンジン...)を、主張される主題に関連して自動的なおよび/または推論される動作を実行することに関連して、用いることができる。
【0032】
分類子は、入力属性ベクトル、x=(xl,x2,x3,x4,xn)を、その入力がクラス(class)に属するという信頼度(confidence)、すなわち、f(x)=confidence(class)にマッピングする関数である。そのような分類は、確立的なおよび/または統計的なベースの分類を用いて(例えば、分析ユーティリティおよびコストに組み入れて)、ユーザーが自動的に実行されることを望む動作を予知または推論することができる。サポートベクトルマシン(SVM)は、用いることができる分類子の一例である。SVMは、可能性のある入力の空間内の超曲面を見つけることにより作動し、その超曲面は、トリガする基準を非トリガのイベントから分離することを試みる。直観的に、このことは、訓練データに似ているが同一ではないテストデータに対して、分類を正しいものにする。他の有向および無向のモデル分類のアプローチは、独立性の異なるパターンを用いることができる場合、例えば、ナイーブベイズ、ベイジアンネットワーク、決定木、ニューラルネットワーク、ファジー理論モデル、および確率的分類モデルを含むことができる。さらに本明細書において使用される分類は、優先度のモデルを開発するために利用される統計的回帰を含める。
【0033】
さらに、イメージ処理コンポーネント102は、種々のタイプのユーザーインターフェースを提供してユーザーとイメージ処理コンポーネント102に連結されるあらゆるコンポーネントとの間のインタラクションを容易にするプレゼンテーションコンポーネント604を利用できる。図示するように、プレゼンテーションコンポーネント604は、イメージ処理コンポーネント102で利用可能な、分離されたエンティティである。しかし、プレゼンテーションコンポーネント604および/または同様のビューコンポーネントがイメージ処理コンポーネント102および/またはスタンドアロンの装置に組み込むことができることを認識すべきである。プレゼンテーションコンポーネント604は、1つまたは複数のグラフィカルユーザーインターフェース(GUI)、コマンドラインインターフェース等を提供できる。例えば、ユーザーにデータをロード、インポート、読み込み等するための領域または手段を提供可能であり、その結果を提供する領域を含むことができる、GUIがレンダリングされる。これらの領域は、既知のテキストの領域、および/またはダイアログボックス、スタティック制御、ドロップダウンメニュー、リストボックス、ポップアップメニュー、編集制御として、コンボボックス、ラジオボタン、チェックボックス、プッシュボタン、およびグラフィックボックスを備えるグラフィックの領域を備えることができる。加えて、ナビゲーション用の垂直および/または水平スクロールバーやツールバーボタン等の表示を容易にして、ある領域を可視化するかどうかを決めるためのユーティリティを、用いることができる。例えば、ユーザーは、イメージ処理コンポーネント102に連結されるおよび/または組み込まれる、1つまたは複数のコンポーネントとインタラクションすることができる。加えて、プレゼンテーションコンポーネント604が、表面コンピューティング(surface computing)ソフトウェア、ハードウェア、および/またはそのあらゆる適切な組み合わせを用いることができることは認識すべきである。
【0034】
さらにユーザーは、領域とのインタラクションを行って、種々のデバイス、例えば、マウス、ローラボール、タッチバッド、キーパッド、キーボード、タッチスクリーン、ペン、および/または音声駆動、身体動作検出等を介して、情報を選択および提供することもできる。通常、プッシュボタンまたはキーボード上のエンターキー等のメカニズムは、検索を開始するために情報を入力した後に、用いることができる。しかし、主張される主題はそのように限定されないことは認識すべきである。例えば、単にチェックボックスをハイライトにするだけで、情報の伝達を開始することができる。別の例において、コマンドラインインターフェースを用いることができる。例えば、コマンドラインインターフェースは、(例えば、ディスプレイ上のテキストメッセージおよび音声トーンを介して)テキストメッセージの提供を介してユーザーに情報の入力を促すことができる。ユーザーは次に、インターフェースプロンプトに与えられる選択肢に対応する英数字の入力、またはプロンプトに示される質問に対する応答、等の適切な情報を与えることができる。コマンドラインインターフェースを、GUIおよび/またはAPIと関連して用いることができることを認識すべきである。加えて、コマンドラインインターフェースは、ハードウェア(例えば、ビデオカード)および/もしくはグラフィックのサポートが限られたディスプレイ(例えば、白黒、EGA、VGA、SVGA等)、ならびに/または低帯域幅の通信チャネルとの関連で用いることができる。
【0035】
図7〜8は、主張される主題に従う、手順および/またはフロー図を示す。説明を簡略化するために、手順は、一連の動作として示し記載する。主題のイノベーションが、例示した動作および/または動作の順番により制限されないことは理解および認識されるべきである。例えば、動作は、種々の順番でおよび/または同時に、本明細書に提供および記載しない他の動作と共に、起こり得る。さらに、主張される主題に従う手順を実装するために、例示した全ての動作が必要なわけではない。加えて、当業者は、手順を、代替として、一連の相互に関連する状態として状態図またはイベントを介して表すことができることを理解および認識するであろう。加えて、以下および本明細書全体にわたって開示される手順を、製品に記憶させることが可能であり、そのような手順をコンピューターに移送および転送することを容易にすることができることをさらに認識すべきである。用語「製品」は、本明細書において使用されるとき、あらゆるコンピューター読み取り可能なデバイス、キャリア、または媒体からアクセス可能なコンピュータープログラムを包含することを意図する。
【0036】
図7は、IR光の平面に検出される遮断に基づき、データの収集およびインタラクションのために少なくとも1つのレーザーを利用することを容易にする、方法700を示す。参照符号702にて、出射されるIR光の平面における少なくとも1つの遮断の検出に関するデータの一部を受信することができる。例えば、出射されるIR光の平面は、IR光の平面を伝送可能なあらゆる適切なレーザーコンポーネントから出射することができる。特に、レーザーコンポーネントは、IR光の平面を提供するためにライン生成(LG)オプティクを用いることができる。出射されるIR光の平面における少なくとも1つの遮断の検出に関するデータの一部は、例えば、IR光の反射を検出可能なあらゆる適切なデバイスにより、キャプチャすることができる。
【0037】
参照符号704にて、出射されるIR光の平面における遮断の位置を、計算する。出射されるIR光の平面における遮断の検出に少なくとも部分的に基づき、検出される遮断の対応する位置を計算する。例として、IR光の平面における遮断に対する検出の点に関するデータを、IR光の平面により覆われる表面領域に関連して遮断の位置を識別するために分析する。参照符号706にて、出射されるIR光の平面における遮断の大きさ、またはIR光の平面における遮断の形のうちの少なくとも1つを、確定する。例えば、IR光の平面における遮断の大きさを、その正確な描画をディスプレイ上にレンダリングするための大きさと同様に、識別する。したがって、IR光の平面を遮断する手を、IR光の平面を遮断する指と比較して、正確に計算および/または確定できる。言い換えれば、IR光の平面を遮断する物体の位置、大きさ、および形を、決定できる。参照符号708にて、出射されるIR光の平面における遮断の位置、大きさ、および形を、ディスプレイへマッピングする。
【0038】
方法700は、IR光を利用するものとして検討されるが、あらゆる適切な光源またはレーザーコンポーネント104を用いて、遮断できる光の平面を生成できる(例えば、光の平面における遮断を、動きを検出するために利用できる)ことは認識すべきである。例えば、十分に明るい赤色レーザーおよび/または十分に暗い部屋を用いて、動きの検出を可能にするそのような光源における遮断を検出および/または識別することができる。可視レーザー光または光源は、ユーザーにとっては目をそらすようなものであり得るが、光の平面がほぼ平行でかつ表面より上にある場合、有用なフィードバックをさらに提供することができる。さらに、光の平面は、ディスプレイの表面より上でディスプレイの表面から離すことができる(例えば、レーザー光または光源の波長を問わずに)。例えば、そのような例を、ゲーム、オンラインゲーム、コンソールゲーム等により利用できる。
【0039】
図8は、アプリケーションフレームワークを用いて、データの収集およびインタラクションに少なくとも1つのIR出射レーザーを利用する方法800を示す。参照符号802にて、IR光の平面を、表面にほぼ平行に出射する。表面は、制限されないが、机、テーブル、壁、ディスプレイ、テレビ、ラップトップ、床、天井、地面の断面、コンクリートの断面、木片、黒板、投影スクリーン、自動車のフロントガラス、自動車の窓、自動車のダッシュボード、デバイスに関連するほぼ平らな表面、車に関するほぼ平らな表面(例えば、自動車、トラック、オフロードカー(ATV)、オートバイ、モペット、スクータ等)等とすることができることを認識すべきである。一般に、主題のイノベーションを種々のありふれた表面で利用して、検出されるタッチイベントを介したデータインタラクションを可能にすることができる。さらに別の例において、システム500は、表面502(例えば、レーザーコンポーネント104および/またはLGオプティク106は、机に埋め込まれる等)、飛行機のトレー、および/またはほぼ平らな他のあらゆる適切な表面に組み込むことができる。
【0040】
参照符号804にて、リアルタイムにおけるIR光の検出の一部に基づいて、IR光の平面における少なくとも1つの遮断をトラッキングする。言い換えれば、IR光の平面のリアルタイムな監視により、遮断のトラッキングを供給して、さらにその上、IR光の平面の連続的なトラッキングに基づいて動きのトラッキングを供給する。参照符号806にて、イメージ処理技法を用いて、IR光の平面における遮断の位置、大きさ、または形のうちの少なくとも1つを計算する。例として、検出され計算された遮断を、対応するディスプレイにレンダリングまたはマッピングすることができて、そのような表示によって、それぞれの位置、大きさ、および/または形により再現される遮断を示すことができる。
【0041】
参照符号808にて、IR光の平面においてトラッキングされる遮断は、表面コンピューティングソフトウェアの一部により利用して、データインタラクションを強化する。表面コンピューティングソフトウェアは、動きおよび/またはジェスチャに、制限されないが、ズーミング、パニング、ストレッチング等の機能を制御させることを可能にする。さらに、表面コンピューティングアプリケーションは、別個の形または物体(例えば、定義された大きさの検出された矩形上で再生されるビデオ、携帯電話機の検出されたイメージ、検出の特定パターン上に表示されるイメージ等)で認識を行うことができる。一般に、表面コンポーネントは、専門的なコンピューターグラフィックユーザーインターフェース(GUI)を用いるソフトウェアおよび/またはハードウェアの一部とすることができる。言い換えれば、IR光および記載する技術を利用する、ジェスチャ、動き、および/またはタッチイベントを検出する方法は、あらゆる適切な表面コンピューティングソフトウェア、ハードウェア、および/またはそのあらゆる適切な組み合わせと関連して利用できる。
【0042】
主張される主題の種々の側面を実装するための追加のコンテキストを提供するために、図9から10および以下の検討では、主題のイノベーションの種々の側面を実装できる適切なコンピューティング環境の簡潔な概要を提供することを意図する。例えば、タッチイベントまたはIR光の平面とのインタラクションを検出するために利用されるイメージ処理コンポーネントは、先行の図面において説明したように、そのような適切なコンピューティング環境において実装できる。主張される主題は、ローカルコンピューターおよび/またはリモートコンピューター上で稼働するコンピュータープログラムのコンピューター実行可能命令の一般的コンテキストで上述したが、当業者は、主題のイノベーションがまた、他のプログラムモジュールとの組み合わせにおいて実装できることを認識するであろう。一般に、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造等を含み、これらは特定のタスクを実行し、および/または特定の抽象データ型を実装する。
【0043】
さらに、当業者は、本発明の方法が他のコンピューターシステム構成で実践することができて、この構成は、シングルプロセッサまたはマルチプロセッサコンピューターシステム、ミニコンピューター、メインフレームコンピューター、パーソナルコンピューターも同様に、ハンドヘルドコンピューティングデバイス、マイクロプロセッサベースおよび/またはプログラム可能の家庭用電化製品等を含み、それぞれが1つまたは複数の関連するデバイスと動作可能に通信することができるということを認識するであろう。主張される主題の例示される側面はまた、特定のタスクが、通信ネットワークを介してリンクされるリモート処理デバイスにより実行される、分散型コンピューティング環境において、実践することができる。しかし、全てではなくとも、いくつかの主題のイノベーションの側面を、スタンドアロンのコンピューター上で実践できる。分散型コンピューティング環境において、プログラムモジュールは、ローカルおよび/またはリモートのメモリ記憶装置に設置することができる。
【0044】
図9は、主張される主題がインタラクションすることが可能な、サンプルコンピューティング環境900の概略ブロック図である。システム900は、1つまたは複数のクライアント910を含む。(複数の)クライアント910は、ハードウェアおよび/またはソフトウェア(例えば、スレッド、プロセス、コンピューティングデバイス)とすることができる。さらに、システム900は、1つまたは複数のサーバー920を含む。(複数の)サーバー920は、ハードウェアおよび/またはソフトウェア(例えば、スレッド、プロセス、コンピューティングデバイス)とすることができる。サーバー920は、例えば、スレッドを格納して、主題のイノベーションを用いることにより変換を実行できる。
【0045】
クライアント910とサーバー920との間の1つの可能性のある通信は、2つ以上のコンピュータープロセス間で伝送するのに適したデータパケットの形式とすることができる。システム900は、(複数の)クライアント910と(複数の)サーバー920との間の通信を容易にするのに用いることができる通信フレームワーク940を含む。(複数の)クライアント910は、(複数の)クライアント910にローカルな情報を記憶するのに用いることができる1つまたは複数のクライアントデータストア950に動作可能に接続される。同様に、(複数の)サーバー920は、サーバー920にローカルな情報を記憶するのに用いることができる1つまたは複数のサーバーデータストア930に動作可能に接続される。
【0046】
図10を参照すると、主張される主題の種々の側面を実装するための例示の環境1000は、コンピューター1012を含む。コンピューター1012は、処理装置1014、システムメモリ1016、およびシステムバス1018を含む。システムバス1018は、制限されないが、システムメモリ1016を含むシステムコンポーネントを処理装置1014に連結する。処理装置1014は、種々の利用可能なプロセッサのうちのどれでもであるとすることができる。デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャもまた、処理装置1014として用いることができる。
【0047】
システムバス1018は、制限されないが、メモリバスもしくはメモリコントローラ、周辺機器用バスもしくは外部バス、ならびに/またはISA(Industrial Standard Architecture)、MSA(Micro−Channel Architecture)、EISA(Extended ISA)、IDE(Intelligent Drive Electronics)、VLB(VESA Local Bus)、PCI(Peripheral Component Interconnect)、カードバス、USB(Universal Serial Bus)、AGP(Advanced Graphics Port)、PCMCIA(Personal Computer Memory Card International Association bus)、Firewire(IEEE1394)、およびSCSI(Small Computer Systems Interface)を含むあらゆる様々な利用可能なバスアーキテクチャを使用するローカルバスを含むいくつかの種類のバス構造のうちのどれでもよいとすることができる。
【0048】
システムメモリ1016は、揮発性メモリ1020および不揮発性メモリ1022を含む。基本入出力システム(BIOS)は、起動時等に、コンピューター1012における要素間で情報を転送する基本ルーチンを含むのもで、不揮発性メモリ1022に記憶される。制限ではなく例示の目的で、不揮発性メモリ1022は、ROM(read only memory)、PROM(programmable ROM)、EPROM(electrically programmable ROM)、EEPROM(electrically erasable programmable ROM)、またはフラッシュメモリを含むことができる。揮発性メモリ1020は、RAM(random access memory)を含み、外部キャッシュメモリとして動作する。実例として制限としてではなく、RAMは、SRAM(static RAM)、DRAM(dynamic RAM)、SDRAM(synchronous DRAM)、DDR SDRAM(double data rate SDRAM)、ESDRAM(enhanced SDRAM)、SLDRAM(Synchlink DRAM)、RDRAM(Rambus direct RAM)、DRDRAM(direct Rambus dynamic RAM)、およびRDRAM(Rambus dynamic RAM)等の多くの形式で利用できる。
【0049】
さらにコンピューター1012は、着脱可能/着脱不能な、揮発性/不揮発性のコンピューター記憶媒体を含む。図10で、例えば、ディスク記憶装置1024を示す。ディスク記憶装置1024は、制限されないが、磁気ディスクドライブ、フロッピーディスクドライブ、テープドライブ、Jazドライブ、Zipドライブ、LS−100ドライブ、フラッシュメモリカード、またはメモリスティック等のデバイスが含む。加えて、ディスク記憶装置1024は、制限されないが、CD−ROM(compact disk ROM)デバイス、CD−R(CD recordable)ドライブ、CD−RW(CD rewritable)ドライブ、またはDVD−ROM(digital versatile disk ROM)ドライブ等の光ディスクドライブを含む他の記憶媒体とは別に、またはこれと組み合わせて記憶媒体を含むことができる。ディスク記憶装置1024とシステムバス1018の接続を容易にするために、通常、インターフェース1026等の着脱可能または着脱不能なインターフェースが使用される。
【0050】
図10は、ユーザーと、適切な動作環境1000において説明される基本的なコンピューターリソースとの間を媒介するものとして動作するソフトウェアを説明することを認識すべきである。そのようなソフトウェアは、オペレーティングシステム1028を含む。オペレーティングシステム1028は、ディスク記憶装置1024上に記憶することができ、コンピューターシステム1012のリソースを制御して割り当てる動作を行う。システムアプリケーション1030は、システムメモリ1016内またはディスク記憶装置1024上に記憶されるプログラムモジュール1032およびプログラムデータ1034を介する、オペレーティングシステム1028によるリソースの管理を活用する。主張される主題は、種々のオペレーティングシステムまたはオペレーティングシステムの組み合わせと共に実装できることを認識すべきである。
【0051】
ユーザーは、(複数の)入力デバイス1036を介してコマンドまたは情報をコンピューター1012に入力する。入力デバイス1036は、制限されないが、マウス、トラックボール、スタイラスペン、タッチパッド、キーボード、マイク、ジョイスティック、ゲームパッド、パラボラアンテナ、スキャナー、テレビチューナカード、デジタルカメラ、デジタルビデオカメラ、ウェブカメラ等のポインティングデバイスを含む。これらおよび他の入力デバイスは、(複数の)インターフェースポート1038を介してシステムバス1018を通して、処理装置1014に接続する。(複数の)インターフェースポート1038は、例えば、シリアルポート、パラレルポート、ゲームポート、およびUSB(universal serial bus)を含む。(複数の)出力デバイス1040は、(複数の)入力デバイス1036と同じタイプのポートをいくつか使用する。したがって、例えば、USBポートを使用して、コンピューター1012に入力を与えて、コンピューター1012から出力デバイス1040へ情報を出力することができる。出力アダプタ1042は、他の出力デバイス1040の中でも、特別なアダプタを必要とする、モニタ、スピーカ、およびプリンタ等のいくつかの出力デバイス1040があることを例示するために与えている。出力アダプタ1042は、制限ではなく例示の目的で、出力デバイス1040とシステムバス1018との間の接続手段を提供するビデオカードおよびサウンドカードを含む。他のデバイスおよび/またはデバイスのシステムが、(複数の)リモートコンピューター1044等の入力および出力両方の能力を提供することに留意すべきである。
【0052】
コンピューター1012は、(複数の)リモートコンピューター1044等の1つまたは複数のリモートコンピューターへの論理接続を使用して、ネットワーク化された環境で動作する。(複数の)リモートコンピューター1044は、パーソナルコンピューター、サーバー、ルータ、ネットワークPC、ワークステーション、マイクロプロセッサベースの電化製品、ピアデバイス、または他の共有のネットワークノード、等とすることができて、通常、コンピューター1012に関して記載した要素のうちの多くのまたは全てを含む。簡潔にする目的で、メモリ記憶装置1046のみを、(複数の)リモートコンピューター1044と共に示してある。(複数の)リモートコンピューター1044は、コンピューター1012に、ネットワークインターフェース1048を通して論理的に接続され、そして、通信接続1050を介して物理的に接続される。ネットワークインターフェース1048は、ローカルエリアネットワーク(LAN)およびワイドエリアネットワーク(WAN)等の、有線および/または無線の通信ネットワークを包含する。LAN技術は、FDDI(Fiber Distributed Data Interface(光ファイバー分散データインタフェース))、CDDI(Copper Distributed Data Interface)、イーサネット(登録商標)、トークンリング等を含む。WAN技術は、制限されないが、ポイントツーポイント接続、ISDN(Integrated Services Digital Network(総合デジタルサービス網))およびその上の種々のもの等の回路交換網、パケット交換網、ならびに、DSL(Digital Subscriber Line)を含む。
【0053】
(複数の)通信接続1050とは、ネットワークインターフェース1048をバス1018に接続するために用いるハードウェア/ソフトウェアをいう。通信接続1050を、明確に例示するためにコンピューター1012の内部に示してあるが、コンピューター1012の外部にすることもできる。ネットワークインターフェース1048への接続に必要なハードウェア/ソフトウェアは、例えば、単に例示の目的で、通常の電話回線用のモデム、ケーブルモデムおよびDSLモデム、ISDNアダプタ、ならびにイーサネットカードを含むモデム等の内部技術および外部技術を含む。
【0054】
上記のものは、主題のイノベーションの例を含む。もちろん、主張される主題を記載するために、コンポーネントまたは手順の全ての考え得る組み合わせを記載することは不可能であるが、当業者は、主題のイノベーションの多くのさらなる組み合わせおよび置換が可能であることを認識することができであろう。したがって、主張される主題は、添付の請求項の精神および範囲内にある全てのそのような代替、修正、および変形を包含することを意図する。
【0055】
特に、また、上記のコンポーネント、デバイス、回路、システム、等により実行される種々の機能については、そのようなコンポーネントの記載に使用される用語(「手段」への参照を含み)は、特に示さない限り、記載されるコンポーネント(例えば、機能的に等価なもの)の特定の機能を実行し、開示される構造とは構造的に等価でない場合でも、本明細書に記載される主張される主題の例示の側面における機能を実行するあらゆるコンポーネントに対応することを意図する。この点において、イノベーションは、システムと、同様に、主張される主題の種々の方法の動作および/またはイベントを実行するためのコンピューター実行可能命令を有するコンピューター読み取り可能な媒体とを含むことをさらに認識すべきである。
【0056】
本イノベーションを実装する複数の方法、例えば、アプリケーションおよびサービスに本発明の通知技術を使用させることを可能にする、適切なAPI、ツールキット、ドライバコード、オペレーティングシステム、制御、スタンドアロンまたはダウンロード可能なソフトウェアオブジェクト、等がある。主張される主題では、API(または他のソフトウェアオブジェクト)の観点から、また、本発明に従う通知技術に従って動作するソフトウェアオブジェクトまたはハードウェアオブジェクトの観点からの使用を意図する。したがって、本明細書に記載されるイノベーションの種々の実装は、全体としてハードウェアに、部分的にハードウェアに、および部分的にソフトウェアに、ソフトウェアも同様においてである側面を有することができる。
【0057】
前述のシステムを、いくつかのコンポーネント間のインタラクションに対して記載した。そのようなシステムおよびコンポーネントが、コンポーネントもしくは特定のサブコンポーネント、特定のサブコンポーネントもしくはサブコンポーネントのいくつか、および/または追加のコンポーネント、ならびに、これらを種々に置換したものおよび組み合わせたものを含むことができることは認識すべきである。サブコンポーネントはまた、親のコンポーネント内に(階層的に)含まれるよりもむしろ、他のコンポーネントと通信可能に連結されるコンポーネントとして実装することができる。加えて、1つまたは複数のコンポーネントを、集約された機能性を提供する単一のコンポーネントにまとめるか、またはいくつかの分離したサブコンポーネントに分けることができて、1つまたは複数のあらゆる中間層、例えば管理層を与えて、統合された機能性を提供するために、そのようなサブコンポーネントに通信可能に連結させることができることに留意すべきである。本明細書に記載するあらゆるコンポーネントはまた、本明細書に特に記載しないが一般に当業者には既知である1つまたは複数の他のコンポーネントとインタラクションを行うことができる。
【0058】
加えて、主題のイノベーションの特定の特徴が、いくつかの実装のうちのただ1つに対して開示される一方で、そのような特徴は、あらゆる所定のまたは特定のアプリケーションに望ましく有利であろう他の実装の1つまたは複数の他の特徴と組み合わせることができる。さらに、用語「含まれる」、「含む」、「有する」、「含有する」、これらの変形、および他の同様の単語は、発明を実施するための形態または請求項において使用される範囲において、これらの用語は、あらゆる追加的なまたは他の要素を除外することなく、オープンな移行語としての用語「備える」と同様に包括的であることを意図する。

【特許請求の範囲】
【請求項1】
入力の検出を容易にするシステムであって、
IRレーザースポットからレーザーラインを作成するLGオプティクに連結されるレーザーコンポーネントであって、前記レーザーコンポーネントおよび前記LGオプティクはIR光の平面を出射する、レーザーコンポーネント(104、106)と、
前記光の平面により覆われる領域内のイメージの一部をキャプチャするカメラデバイス(108)と、
前記カメラデバイスに連結され、前記出射されるIR光の平面の遮断を検出するために可視光を遮断してIR光を通すIRパスフィルター(108,110)と、
前記出射されるIR光の平面により覆われる領域内の遮断の位置を確定するイメージ処理コンポーネント(102)と
を備えたことを特徴とするシステム。
【請求項2】
前記イメージ処理コンポーネントが、前記カメラデバイスによりキャプチャされる前記検出される遮断に少なくとも部分的に基づき、前記遮断の大きさまたは前記遮断の形のうち少なくとも1つを計算することを特徴とする請求項1に記載のシステム。
【請求項3】
前記イメージ処理コンポーネントが、前記IR光の平面の遮断についての位置をディスプレイ上の対応する位置にマッピングすることを特徴とする請求項1に記載のシステム。
【請求項4】
前記ディスプレイは、モニタ、テレビ、LCD、プラズマ、リアプロジェクションディスプレイ、フロントプロジェクションディスプレイ、CRTモニタ、フラットパネル、コンピューティングデバイス用のディスプレイ、PDAスクリーン、ラップトップディスプレイ、コンピューターモニタ、スマートフォンディスプレイ、セルラー・デバイス・スクリーン、モバイル通信デバイスディスプレイ、または携帯型ゲーム・デバイス・ディスプレイのうち少なくとも1つであることを特徴とする請求項3に記載のシステム。
【請求項5】
前記レーザーコンポーネントおよび前記LGオプティクは、ほぼ平らな表面に対してほぼ平行に前記IR光の平面を伝送することを特徴とする請求項1に記載のシステム。
【請求項6】
前記ほぼ平らな表面は、ディスプレイ、机、テーブル、壁、テレビ、ラップトップ、床、天井、地面の断面、コンクリートの断面、木片、黒板、投影スクリーン、自動車のフロントガラス、自動車の窓、自動車のダッシュボード、デバイスに関連するほぼ平らな表面、車に関するほぼ平らな表面、または飛行機のトレーのうち少なくとも1つに関連することを特徴とする請求項5に記載のシステム。
【請求項7】
少なくとも1つのLGオプティクに連結される複数のレーザーコンポーネントであって、ほぼ平らな表面の領域を覆うIR光の平面を出射するよう方向づけられる、レーザーコンポーネントをさらに備えたことを特徴とする請求項5に記載のシステム。
【請求項8】
前記イメージ処理コンポーネントが、前記IR光の平面内の前記検出される遮断をリアルタイムにトラッキングすることを特徴とする請求項1に記載のシステム。
【請求項9】
前記イメージ処理コンポーネントが、キャプチャされたイメージを前記IR光の平面内の遮断から受信して、イメージ処理技法を用いて、ディスプレイ上の対応する位置に前記遮断の形および大きさを再作成し、前記ディスプレイ上の前記対応する位置は、前記検出される遮断の位置を表すマッピングされた座標であることを特徴とする請求項1に記載のシステム。
【請求項10】
前記IR光の平面内の遮断が、前記IR光の平面の一部を吸収する物体からの反射であり、前記遮断は、タッチイベント、ジェスチャ、動き、または物体のうち少なくとも1つにより生じることを特徴とする請求項1に記載のシステム。
【請求項11】
前記レーザーコンポーネントまたは前記LGオプティクのうち少なくとも1つにより生成されない、IR光の一部を補償するIR変調コンポーネントをさらに備えたことを特徴とする請求項1に記載のシステム。
【請求項12】
前記カメラデバイスが、
「OFF」コマンド中、前記レーザーコンポーネントにより生成されない前記IR光の一部を含むIR光の第1のコレクションと、
前記IR光の平面と、「ON」コマンド中、前記レーザーコンポーネントにより生成されないIR光の一部とを含むIR光の第2のコレクションと
をキャプチャする間、前記IR変調コンポーネントが、前記「OFF」コマンドおよび前記「ON」コマンドのレーザーのシーケンスを制御することを特徴とする請求項11に記載のシステム。
【請求項13】
前記IR変調コンポーネントは、IR光の前記第2のコレクションおよびIR光の前記第1のコレクションを差し引くことにより、前記レーザーコンポーネントにより生成されない前記IR光の一部を識別して、前記レーザーコンポーネントにより生成されない前記IR光の一部は、前記カメラデバイスからフィルターで除去されることを特徴とする請求項12に記載のシステム。
【請求項14】
データ入力またはデータインタラクションのうち少なくとも1つに対して前記IR光の平面内の遮断の前記確定された位置を活用するアプリケーションフレームワークをさらに備えたことを特徴とする請求項1に記載のシステム。
【請求項15】
前記アプリケーションフレームワークは、ソフトウェアの一部、ハードウェアの一部、またはソフトウェアの一部およびハードウェアの一部の組み合わせのうち少なくとも1つを含み、データインタラクションを可能にするために、前記IR光の平面内の検出される遮断に関するデータの一部を受信することを特徴とする請求項14に記載のシステム。
【請求項16】
前記アプリケーションフレームワークは、前記IR光の平面内の前記キャプチャされた遮断によりタッチ検出が与えられるタッチセンシティブなスクリーンを有する表面コンピューティング技術を利用することを特徴とする請求項15に記載のシステム。
【請求項17】
ディスプレイとの複数のタッチインタラクションを可能にすることを容易にするコンピューターに実装される方法であって、
レーザー光の平面の輝度レベルがユーザーに可視であること、または前記レーザー光の平面がレーザー光をユーザーに対して可視にする暗度レベルを有する環境内で生成されることのうち少なくとも1つを有する前記レーザー光の平面を生成するステップと、
前記出射されるレーザー光の平面内の少なくとも1つの遮断の検出に関するデータの一部を受信するステップ(702)と、
前記出射されるレーザー光の平面内の遮断の位置を計算するステップ(704)と、
前記出射されるレーザー光の平面内の遮断の大きさ、または前記レーザー光の平面内の遮断の形のうち少なくとも1つを確定するステップ(706)と、
前記出射されるレーザー光の平面内の遮断の前記位置、前記大きさ、および前記形を前記ディスプレイにマッピングするステップ(708)と
を備えたことを特徴とする方法。
【請求項18】
表面に対してほぼ平行に前記レーザー光の平面を出射するステップと、
前記レーザー光の平面内の少なくとも1つの遮断をリアルタイムにトラッキングするステップと
をさらに備えたことを特徴とする請求項17に記載の方法。
【請求項19】
アプリケーションフレームワークにより前記出射されるレーザー光の平面内の遮断の前記マッピングされた位置、大きさ、および形を受信するステップと、
前記アプリケーションフレームワークを利用して、前記出射されるレーザー光の平面内の遮断により検出される前記データ入力に基づき、データとのインタラクションを行うステップであって、前記アプリケーションフレームワークが少なくとも1つの表面コンピューティング技術を用いる、ステップと
をさらに備えたことを特徴とする請求項18に記載の方法。
【請求項20】
ディスプレイとの複数のタッチインタラクションを可能にすることを容易にするコンピューターに実装されるシステムであって、
表面に対してほぼ平行にIR光の平面を出射する手段(104、106、202、502、802)と、
前記IR光の平面内の少なくとも1つの遮断をリアルタイムにトラッキングする手段(108、110、102、702、804)と、
前記出射されるIR光の平面内の前記少なくとも1つの遮断の検出に関するデータの一部を受信する手段(102、702、806)と、
前記出射されるIR光の平面内の遮断の位置を計算する手段(102、108、110、704、806)と、
前記出射されるIR光の平面内の遮断の大きさ、または前記IR光の平面内の遮断の形のうち少なくとも1つを確定する手段(102、108、110、706、806)と、
前記出射されるIR光の平面内の遮断の前記位置、前記大きさ、および前記形をディスプレイにマッピングする手段(102、302、708、806)と、
前記IR光の平面を出射する手段により生成されないIR光の一部を除去する手段(102、504)と、
前記IR光の平面内の遮断を利用して、データの一部とのインタラクションを行う手段(102、402、808)と、
前記IR光の平面内の少なくとも1つの遮断の前記検出に関するデータの一部に関連して表面コンピューティング技術を用いる手段(102、402、808)と
を備えたことを特徴とするシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公表番号】特表2011−525270(P2011−525270A)
【公表日】平成23年9月15日(2011.9.15)
【国際特許分類】
【出願番号】特願2011−509511(P2011−509511)
【出願日】平成21年3月31日(2009.3.31)
【国際出願番号】PCT/US2009/038979
【国際公開番号】WO2009/139971
【国際公開日】平成21年11月19日(2009.11.19)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】