(57)【要約】仮想装置（５０）と共に使用されるシステム（１０）は、コンパニオン装置（８０）へ情報を転送し、そして２つの光学システムＯＳ１（２０）、ＯＳ２（６０）を備えている。構造化光の実施形態では、ＯＳ１（２０）は、仮想装置（５０）と平行に且つその上に光学的エネルギーの扇状ビーム平面（３０）を放射する。ユーザオブジェクト（１１０）が当該ビーム平面を貫通すると、ＯＳ２（６０）は、その事象を登録する。三角法により、仮想接触を位置決めし、そしてユーザが意図した情報をコンパニオンシステム（８０，９０）へ転送することができる。非構造化光の実施形態では、ＯＳ１（２０）は、視野が当該平面を定義するデジタルカメラであるのが好ましく、当該平面は、光学的エネルギーの能動的ソースにより照射される。能動的ソース、ＯＳ１（２０）及びＯＳ２（６０）は、周囲光の影響を減少するように同期して動作するのが好ましい。非構造化受動光の実施形態は、光学的エネルギーのソースが周囲光であること以外は同じである。減算技術は、信号／雑音比を高めるのが好ましい。コンパニオン装置（８０）は、実際に、本発明の構成を収容できる。
2004513416.tif 000002
【特許請求の範囲】
【請求項１】
ユーザオブジェクトと仮想転送装置との相互作用から情報を得るための方法であって、
（ａ）上記仮想転送装置の推定位置に実質的に平行で且つその上に離間された平面を定義し、
（ｂ）ユーザオブジェクトが上記平面を貫通して上記仮想転送装置と相互作用するときを感知し、そして
（ｃ）上記平面における上記ユーザオブジェクトの一部分の相対的位置を決定する、
という段階を備えた方法。
【請求項２】
更に、（ｄ）上記仮想転送装置に対する上記ユーザオブジェクト貫通の位置に相応する情報をコンパニオン装置へ転送する段階を備え、
上記ユーザオブジェクトと上記仮想転送装置との相互作用は、上記コンパニオン装置の動作に影響する請求項１に記載の方法。
【請求項３】
上記段階（ａ）は、光学的エネルギーの平面を発生することを含み、そして上記段階（ｂ）は、上記ユーザオブジェクトが上記平面を貫通するときに上記光学的エネルギーの反射部分を検出することを含む請求項１に記載の方法。
【請求項４】
上記段階（ａ）は、上記平面を定義するカメラを用意することを含み、そして上記段階（ｂ）は、上記ユーザオブジェクトと上記平面との相互作用を観察することを含む請求項１に記載の方法。
【請求項５】
上記段階（ｂ）及び（ｃ）の少なくとも一方は、三角法分析を使用して実行される請求項１に記載の方法。
【請求項６】
上記コンパニオン装置は、（ｉ）ＰＤＡ、（ｉｉ）ポータブル通信装置、（ｉｉｉ）電子装置、（ｉｖ）電子ゲーム機、及び（ｖ）楽器のうちの少なくとも１つを含み、そして上記仮想転送装置は、（Ｉ）仮想キーボード、（ＩＩ）仮想マウス、（ＩＩＩ）仮想トラックボール、（ＩＶ）仮想ペン、（Ｖ）仮想トラックパッド、及び（ＶＩ）ユーザインターフェイスセレクタのうちの少なくとも１つである請求項２に記載の方法。
【請求項７】
上記仮想転送装置は、（ｉ）テーブル・トップ、（ｉｉ）デスク・トップ、（ｉｉｉ）壁、（ｉｖ）ポイント・オブ・セール機器、（ｖ）ポイント・オブ・サービス機器、（ｖｉ）キオスク、（ｖｉｉ）乗物内の面、（ｖｉｉｉ）投影型ディスプレイ、（ｉｘ）物理的ディスプレイ、（ｘ）ＣＲＴ、及び（ｘｉ）ＬＣＤのうちの少なくとも１つから選択された作用面にマップされる請求項１に記載の方法。
【請求項８】
上記段階（ａ）及び（ｂ）の少なくとも一方は、レンズ及び像平面を有するカメラを用意することを含み、そして更に、上記レンズ及び上記像平面の少なくとも一方を傾斜することにより上記カメラの解像度及び視野深度の少なくとも一方を改善することを含む請求項１に記載の方法。
【請求項９】
上記段階（ａ）は、光学的ソースを使用して上記平面を定義することを含み、そして
上記段階（ｂ）は、上記平面の貫通を感知するためのカメラを用意することを含む請求項１に記載の方法。
【請求項１０】
上記光学的ソース及び上記カメラの動作を同期させる段階を更に備え、上記段階（ｂ）及び（ｃ）の少なくとも一方において得られる情報の精度に対する周囲光の影響を減少させる請求項９に記載の方法。
【請求項１１】
上記光学的ソースは、周囲光を排除するのに使用される符牒を保持した光学的エネルギーを放射する請求項９に記載の方法。
【請求項１２】
上記段階（ａ）は、第１カメラで上記平面を定義することを含み、
上記段階（ｂ）は、上記平面の貫通を感知するための第２カメラを用意することを含み、そして更に、
光学的エネルギーのソースをほぼ上記仮想転送装置に向け、そして
上記光学的エネルギーのソースと、上記第１カメラ及び第２カメラの少なくとも一方との動作を同期させ、
上記段階（ｂ）及び（ｃ）の少なくとも一方において得られる情報の精度に対する周囲光の影響を減少するようにした請求項１に記載の方法。
【請求項１３】
上記段階（ｂ）は、上記ユーザオブジェクトが上記平面から離れたときを感知することにより、周囲光により発生される情報を収集することを含み、そして
上記段階（ｂ）及び（ｃ）の少なくとも一方は、上記ユーザオブジェクトが上記転送装置と相互作用するときに収集される情報から上記情報を差し引くことを含み、
周囲光の影響を減少するようにした請求項１に記載の方法。
【請求項１４】
仮想転送装置と共に使用されるユーザ操作型のユーザオブジェクトがコンパニオン装置へ情報を転送できるようにするシステムであって、
少なくとも１つのソフトウェアルーチンを記憶するメモリを含む中央プロセッサユニットと、
上記仮想転送装置の推定位置に実質的に平行で且つその上に離間された平面を定義する第１光学システムと、
上記平面の少なくとも一部分を包囲する当該視野を有し、そして上記平面にユーザオブジェクトが貫通するのに応答して、上記仮想転送装置と相互作用させる第２光学システムと、
上記平面における上記ユーザオブジェクトの一部分の相対的な位置を決定するための手段と、
を備えていて、上記ユーザオブジェクトが上記仮想転送装置と共に上記コンパニオン装置の動作に影響し得るようにする情報を、上記コンパニオン装置に転送するようにしたシステム。
【請求項１５】
上記決定する手段は、三角法分析を使用して上記相対的な位置を決定する請求項１４に記載のシステム。
【請求項１６】
上記決定する手段は、上記ルーチンを実行して上記相対的な位置を決定する上記プロセッサユニットを含む請求項１４に記載のシステム。
【請求項１７】
上記第１光学システムは、光学的エネルギーの平面を発生する手段を含み、そして
上記第２光学システムは、上記ユーザオブジェクトが上記平面を貫通するときに上記光学的エネルギーの反射部分を検出するカメラセンサを含む請求項１４に記載のシステム。
【請求項１８】
上記第１光学システムは、（ｉ）上記平面を発生するためのレーザと、（ｉｉ）上記平面を発生するためのＬＥＤの少なくとも一方を含み、そして
上記第２光学システムは、上記ユーザオブジェクトが上記平面を貫通するときに上記光学的エネルギーの反射部分を検出するカメラセンサを含む請求項１４に記載のシステム。
【請求項１９】
上記ユーザオブジェクトの貫通に対する上記第２光学システムの応答性を高める一方、周囲光に対する上記応答性を下げるための手段を更に備えた請求項１４に記載のシステム。
【請求項２０】
上記応答性を高める手段は、（ａ）上記平面の発生に関連した符牒を与え、（ｂ）上記第１光学システムにより定義される上記平面内のエネルギーと、上記第２光学システムの応答性とに対して共通の波長を選択し、そして（ｃ）上記第１光学システムの動作と上記第２光学システムの動作とを同期させることの少なくとも１つを含む請求項１９に記載のシステム。
【請求項２１】
上記第１光学システムは、上記平面を定義する第１カメラセンサを含む請求項１４に記載のシステム。
【請求項２２】
上記第１光学システムは、上記平面を定義する第１カメラセンサを含み、
上記第２光学システムは、上記貫通を感知する第２カメラを含み、
更に、上記仮想転送装置にほぼ向けられた光学エネルギーのソースと、
少なくとも２つの同じ第１光学システム、上記第２光学システム及び上記光学エネルギーのソースの動作を同期させる手段と、
を備え、上記システムで得られる情報の精度に対する周囲光の影響を減少する請求項１４に記載のシステム。
【請求項２３】
上記第１光学システムは、所望の波長の光学エネルギーの発生器を備え、そして
上記第２光学システムは、実質的に上記所望の波長の光学エネルギーしか感知しない請求項１４に記載のシステム。
【請求項２４】
上記コンパニオン装置は、（ｉ）ＰＤＡ、（ｉｉ）ポータブル通信装置、（ｉｉｉ）電子装置、（ｉｖ）電子ゲーム機、及び（ｖ）楽器のうちの少なくとも１つを含み、そして上記仮想転送装置は、（Ｉ）仮想キーボード、（ＩＩ）仮想マウス、（ＩＩＩ）仮想トラックボール、（ＩＶ）仮想ペン、（Ｖ）仮想トラックパッド及び（ＶＩ）ユーザインターフェイスセレクタのうちの少なくとも１つである請求項１４に記載のシステム。
【請求項２５】
上記仮想転送装置は、（ｉ）テーブル・トップ、（ｉｉ）デスク・トップ、（ｉｉｉ）壁、（ｉｖ）ポイント・オブ・セール機器、（ｖ）ポイント・オブ・サービス機器、（ｖｉ）キオスク、（ｖｉｉ）乗物内の面、（ｖｉｉｉ）投影型ディスプレイ、（ｉｘ）物理的ディスプレイ、（ｘ）ＣＲＴ、及び（ｘｉ）ＬＣＤのうちの少なくとも１つから選択された作用面にマップされる請求項１４に記載のシステム。
【請求項２６】
上記第１動作システム及び上記第２動作システムの少なくとも一方は、レンズ及び像平面を有するカメラセンサであり、
上記レンズ及び像平面の少なくとも一方は、解像度及び視野深さの少なくとも一方を増加するように傾斜される請求項１４に記載のシステム。
【請求項２７】
バックグランドオブジェクトから上記ユーザオブジェクトを区別し易くする手段を更に備えた請求項１４に記載のシステム。
【発明の詳細な説明】
【０００１】
【関連出願】
本出願人の２００１年４月２７日に出願された「Ｉｎｐｕｔ Ｍｅｔｈｏｄｓ Ｕｓｉｎｇ Ｐｌａｎａｒ Ｒａｎｇｅ Ｓｅｎｓｏｒｓ」と題する出願中の米国プロビジョナル特許出願第６０／２８７，１１５号；２００１年２月２７日に出願された「Ｖｅｒｔｉｃａｌ Ｔｒｉａｎｇｕｌａｔｉｏｎ Ｓｙｓｔｅｍ ｆｏｒ ａ Ｖｉｒｔｕａｌ Ｔｏｕｃｈ−Ｓｅｎｓｉｔｉｖｅ Ｓｕｒｆａｃｅ」と題する出願中の米国プロビジョナル特許出願第６０／２７２，１２０号；及び２０００年９月７日に出願された「Ａｐｐｌｉｃａｔｉｏｎ ｏｆ Ｉｍａｇｅ Ｐｒｏｃｅｓｓｉｎｇ Ｔｅｃｈｎｉｑｕｅｓ ｆｏｒ ａ Ｖｉｒｔｕａｌ Ｋｅｙｂｏａｒｄ Ｓｙｓｔｅｍ」と題する出願中の米国プロビジョナル特許出願第６０／２３１，１８４号から優先権が主張される。更に、本出願は、２０００年２月１１日に出願された「Ｍｅｔｈｏｄ Ａｎｄ Ａｐｐａｒａｔｕｓ ｆｏｒ Ｅｎｔｅｒｉｎｇ Ｄａｔａ Ｕｓｉｎｇ Ａ Ｖｉｒｔｕａｌ Ｉｎｐｕｔ Ｄｅｖｉｃｅ」と題する出願中の米国特許出願第０９／５０２，４９９号の一部継続出願である。上記出願は、各々、参考としてここに援用するものである。
【０００２】
【技術分野】
本発明は、一般に、コマンド及び／又はデータをシステムに入力又は転送するための装置に対するスタイラス又はユーザの指の接近度を感知することに係り、より詳細には、コマンド及び／又はデータ及び／又は他の情報をシステムに入力又は転送するのに使用される仮想装置に対してこのように感知することに係る。
【０００３】
【背景技術】
仮想入力装置を使用して、コマンド及び／又はデータを入力し、及び／又は他の情報を電子システム、例えば、コンピュータシステムや楽器や電話にも転送することがしばしば望まれる。例えば、コンピュータは、今や、ほとんどポケットサイズで実施できるが、ミニ・キーボードでデータやコマンドを入力することは時間がかかる上にエラーを発生し易い。多数のセルラー電話は、今日、ｅ−メール通信を取り扱うことができるが、小型電話のタッチパッドを使用してメッセージを実際に入力することは困難である。
【０００４】
例えば、ＰＤＡは、多くのコンピュータ機能を有するが、キーボードが非常に小さかったり又は存在しなかったりすることで悩まされている。ユーザの指又はスタイラスが仮想キーボードに接触したときを決定し、そしてどの指がどの仮想キーに接触したかを決定するためのシステムが使用できれば、キーボード情報に代わって、システムの出力をＰＤＡにおそらく入力することができる。（「指（１つ又は複数）」及び「スタイラス」という用語は、ここでは、交換可能に使用される。）この例では、仮想キーボードは、広げるとおそらくキーボードのサイズになる紙片で、ユーザの手を誘導するためにキーがプリントされているものである。仮想キーボード又は他の入力装置は単なる作用面で、センサも機械的又は電子的部品も持たないことが理解されよう。紙及びキーは、実際には情報を入力せず、ユーザの指と、キーが存在する紙の部分、又は紙がない場合には、作用面の部分との間の相互作用又は界面を使用して、ＰＤＡに情報を入力することができる。同様の仮想装置及びシステムは、ｅ−メールをセルラー電話に入力するのに有用である。仮想ピアノ型キーボードを使用して、実際の楽器を演奏することもできる。問題は、ユーザの指又はスタイラスが仮想装置に対して存在する場所をいかに検出し又は感知するかである。
【０００５】
コース氏の「Ｍｅｔｈｏｄ ａｎｄ Ｄｅｖｉｃｅ Ｆｏｒ Ｏｐｔｉｃａｌ Ｉｎｐｕｔ Ｏｆ Ｃｏｍｍａｎｄｓ ｏｒ Ｄａｔａ」と題する米国特許第５，７６７，８４８号（１９９８年）は、二次元のＴＶビデオカメラを使用して仮想装置を実施するように試みている。このような光学的システムは、ルミナンスデータに依存し、周囲光の安定したソースを必要とするが、不都合なことに、ルミナンスデータは、像形成システムに混乱を生じさせる。例えば、像の前景におけるユーザの指は、背景の領域から区別することができない。更に、ユーザの手から生じて仮想装置の障害となる影や他の像阻止現象が、コース氏のシステムの実施を動作的に不正確にすると思われる。又、コース氏は、ユーザの指の輪郭、仮想装置に対する指の位置を検査し、そして指の動きを決定することも必要とする。
【０００６】
又、１９９９年９月２２日に出願された「ＣＭＯＳ−Ｃｏｍｐａｔｉｂｌｅ Ｔｈｒｅｅ−Ｄｉｍｅｎｓｉｏｎａｌ Ｉｍａｇｅ Ｓｅｎｓｏｒ ＩＣ」と題するバンジ氏等の米国特許出願第０９／４０６，０５９号は、コマンド及びデータを電子システムに入力するために仮想装置と共に使用できる精巧な三次元像形成システムを開示している。この特許出願には、種々のレンジファインダーシステムが開示され、これらシステムは、ユーザの指先と、仮想入力装置、例えば、キーボートとの間の界面を決定するのに使用できる。飛行時間測定を使用して像が三次元で決定される。光源は、ターゲットオブジェクト、例えば、仮想装置に向かって光学的エネルギーを放射し、そして像形成経路内でオブジェクトの部分によって反射されたエネルギーがホトダイオードのアレーにより検出される。種々の精巧な技術を使用して、光学的エネルギーの放射と、ホトダイオードアレーによるその検出との間の実際の飛行時間が決定される。この測定は、ターゲットオブジェクト上のポイントへのベクトル距離を、三次元、例えば、（Ｘ、Ｙ、Ｚ）で計算できるようにする。この開示されたシステムは、反射された放射エネルギーを検査し、そして周囲光なしに機能することができる。例えば、ターゲットオブジェクトがコンピュータキーボードのレイアウト、おそらく、キーがプリントされた紙片である場合には、このシステムは、ユーザのどの指がターゲットのどの部分、例えば、どの仮想キーに、どんな順序で接触したか決定することができる。もちろん、紙片は任意であり、ユーザの指を誘導するのに使用されるものである。
【０００７】
バンジ氏の発明で得られる三次元データは、ユーザの指がタッチ面、例えば、仮想入力装置に接触したときに、ユーザの指を位置決めするようにソフトウェア処理することができる。このソフトウェアは、関連電子装置又はシステム（例えば、コンピュータ、ＰＤＡ、セル電話、キオスク装置、ポイント・オブ・セール装置等）により実行されるアプリケーションにキーボード事象を入力する要求があったときに表面上の位置に接触する指を識別することができる。バンジ氏のシステムは、三次元像形成を使用するコンピュータシステムにコマンド及び／又はデータを入力してユーザの指と仮想入力装置との界面を分析するように機能しそしてそのように使用できるが、あまり複雑でなくそしておそらくそれほど精巧でないシステムが要望される。バンジ氏のシステムと同様に、そのような新規なシステムは、比較的安価で大量生産できねばならず、且つバッテリ動作を実現できるように動作電力消費が比較的僅かでなければならない。
本発明は、このようなシステムを提供する。
【０００８】
【発明の開示】
本発明は、ユーザの指又はスタイラスと、作用面上に定義された受動的なタッチ面（例えば、仮想入力装置）との間の相互作用を、平面擬似三次元感知を使用して位置決めする。擬似三次元感知とは、三次元空間に任意に方向付けされる二次元表面を基準として使用して、相互作用点の決定を本質的に三次元で実行できることを意味する。タッチが検出されると、本発明は、タッチ領域を位置決めして、仮想入力装置上のどこでタッチが生じたか、そしてタッチされて位置決めされた領域に対応して、どんなデータ又はコマンドストロークをタッチに応答して発生すべきかを決定する。或いは又、仮想入力装置は、仮想マウス又はトラックボールを含んでもよい。このような実施形態では、本発明は、仮想入力装置との接触点の座標を検出して報告し、これら座標は、アプリケーションに結合され、おそらく、ディスプレイ上のカーソルを移動し（仮想マウス又はトラックボールの実施形態の場合）及び／又は描写又は書き込みアプリケーションのためにいわゆるデジタルインクを塗布する（仮想ペン又はスタイラス実施形態の場合）。種々の実施形態において、好ましくは三角分析法を使用して、ユーザオブジェクトと仮想入力装置との「接触」が生じる場所が決定される。
【０００９】
いわゆる構造化光の実施形態では、本発明は、仮想入力装置が画成される作用面に平行で且つ小さな分離距離ΔＹだけその上にあるビーム角φの扇状ビームを画成する光学エネルギーの平面を発生する第１光学システム（ＯＳ１）を備えている。この実施形態では、当該平面は、ＯＳ１、通常、レーザ又はＬＥＤ光発生器により形成される光の平面である。２つの平行な平面は、通常は、水平であるが、垂直や他の便利な角度に配置されてもよい。本発明は、更に、ＯＳ１により放射されるものと同じ波長の光学的エネルギーに応答する第２光学システム（ＯＳ２）を備えている。このＯＳ２は、ＯＳ１の上に配置され、そして仮想入力装置が画成される領域に向かって扇状ビーム平面に対してオフセットθの角度が付けられるのが好ましい。ＯＳ２は、ＯＳ１により放射されるエネルギーに応答するが、光学エネルギーの波長は、人間には見えなくてよい。
【００１０】
又、本発明は、能動的又は受動的である非構造化光の構成を使用して実施することもできる。受動的な三角法実施形態では、ＯＳ１が、光学的エネルギーの能動的ソースではなくカメラであり、そしてＯＳ２は、ＯＳ１と同じ光学的エネルギーに応答するカメラであり、そして上述したように配置されるのが好ましい。このような実施形態では、当該平面がＯＳ１カメラの走査線の投影平面である。能動的な三角法実施形態のような非構造化光の実施形態では、ＯＳ１及びＯＳ２がカメラであり、そして本発明は、更に、ＯＳ１及びＯＳ２が応答する波長を有する光学的エネルギーを放射する能動的な光源を備えている。任意であるが、このような実施形態では、ＯＳ１及びＯＳ２は、各々、能動的な光源からの出力に同期されたシャッターメカニズムを含むことができ、ＯＳ１及びＯＳ２のシャッターは、光学的エネルギーが放射されたときに開き、そうでないときには閉じている。２つのカメラを使用する非構造化光構成の利点は、作用面の隆起又は不規則性が良好に許容されることである。ＯＳ１により画成される平面は、作用面の最も高いｙ次元ポイント（例えば、隆起）に合致するようにＯＳ１感知ピクセルエレメントの適当な行を選択することにより、選択できる。
【００１１】
構造化光の実施形態では、ＯＳ２は、オブジェクト、例えば、ユーザの指又はスタイラスが、仮想入力装置が画成された作用面領域にタッチし始めるまで、光学的エネルギーを検出しない。しかしながら、オブジェクトが、ＯＳ１により放射される光学的エネルギーの平面を貫通するや否や、その平面に交差する指又はスタイラスの部分が照射される（ユーザに見えるように又は見えないように）。ＯＳ２は、照射されたオブジェクトの領域によりＯＳ２に向かって反射された光学的エネルギーを検出することにより当該平面との交差を感知する。本発明にとって重要なのは、ＯＳ１の構成により決定される本質的に１つの平面だけであり、仮想入力装置に平行に三次元空間に画成できる他の全ての平面は、無関係なものとして無視できる。従って、平面三次元センサシステムは、放射された扇状ビーム平面に生じるユーザと仮想入力装置との相互作用を感知し、そして他の平面における相互作用は無視する。
【００１２】
このように、本発明は、オブジェクトが仮想入力装置にタッチしたことを検出する。関連タッチ交差が生じたことを感知すると、本発明は、次いで、仮想装置の平面におけるタッチの位置を二次元的に位置決めする。好ましい実施形態では、位置決め事象は、仮想コンピュータキーボード又は楽器キーボード上のどの仮想キーにユーザがタッチしたか識別することを含む。ユーザは、一度に２つ以上の仮想キー、例えば、「シフト」キー及び別のキーにタッチすることができる。タッチの時間的順序も、本発明により決定されることに注意されたい。従って、ユーザが「シフト」及び「ｔ」の仮想キーにタッチし、次いで、文字「ｈ」そして「ｅ」の仮想キーにタッチした場合には、本発明は、「Ｔ」そして「ｈ」次いで「ｅ」、即ち「Ｔｈｅ」が入力されたと確認する。本発明は、周囲光には依存せず、従って、ユーザが仮想入力装置の位置を知っていると仮定すれば、周囲光がなくても完全に動作できることが明らかである。
【００１３】
構造化光及び／又は非構造化光の受動的三角法を使用して、ユーザの手と感知平面との間の接触点（ｘ、ｚ）を決定することができる。ＯＳ１とＯＳ２との間の基線距離Ｂは既知であるから、ＯＳ１とＯＳ２と点（ｘ、ｚ）との間に三角形が形成され、その辺はＢであり、そして投影線Ｒ１及びＲ２がＯＳ１、ＯＳ２から（ｘ、ｚ）へと延びる。ＯＳ１及びＯＳ２は、基準平面からの三角形の角度距離と、投影線により形成された角度α１及びα２とを決定できるようにし、そして三角法で表面上の点（ｘ、ｚ）までの距離ｚ及び投影線の長さが得られる。
【００１４】
本発明に関連したプロセッサユニットは、ユーザが制御するオブジェクトと仮想入力装置との各交点を識別するためのソフトウェアを実行し、そしてそこから、好ましくは三角法分析を使用して、ユーザが意図する適切な入力データ及び／又はコマンドを決定する。これらデータ及び／又はコマンドは、本発明により、仮想入力装置を使用する装置又はシステムへの入力として出力できる。もし必要であれば、本発明は、コンパニオン装置又はシステム内で実施することができ、特に、ＰＤＡやセルラー電話や他の小さなフォームファクタの装置又はシステムで、多くの場合にキーボード等の大きなユーザ入力装置をもたないものに対して実施することができる。
【００１５】
【発明を実施するための最良の形態】
本発明の他の特徴及び効果は、添付図面を参照した好ましい実施形態の以下の詳細な説明から明らかとなろう。
図１Ａは、擬似平面三次元感知システム１０の好ましい実施形態を示し、このシステムは、構造化光システム実施例では、仮想入力装置５０及び／又は５０’及び／又は５０”が画成された平らな作用面４０に平行に光学的エネルギーの扇状ビーム平面３０を放射する第１光学システム（ＯＳ１）２０を備えている。好ましくは、扇状ビームは、扇角度φを定義し、そして作用面から小さな分離距離ΔＹだけ離間される。作用面にタッチしようとするオブジェクト（例えば、ユーザの指又はスタイラス）は、先ず、扇状ビームに接触しなければならず、従って、放射された光学的エネルギーが照射される（目に見えるか又は見えない）。扇状ビーム平面３０及び作用面の平面４０は、図１Ａでは水平に示されているが、これら２つの平面は、垂直に配置されてもよいし、又は実際には、システムに対して望まれる他のいかなる角度に配置されてもよい。作用面４０は、作業デスクの一部分、テーブル・トップ、乗物の一部分、例えば、航空機のトレー、風防ガラス又はダッシュボード、壁、投影像を含むディスプレイ、又はＣＲＴ、ＬＣＤ等のディスプレイであるが、これに限定されないことに注意されたい。ここで使用する「平面」という語は、完全な平面のサブセットを含むことを理解されたい。例えば、扇状ビーム平面３０は、巾が限定されて、あらゆる方向に無限に延びるのではないが、平面と称される。
【００１６】
「仮想入力装置」とは、おそらくプリントされた像を保持する紙を配置することにより入力装置の像が作用面４０に与えられるか、又はおそらくシステム１０が入力装置の可視像を作用面に投影するか、或いは作用面４０には文字通り目に見える像はないことを意味する。従って、仮想入力装置５０、５０’、５０”は、作用キーのような機械的な部品を必要とせず、指又はスタイラスによるタッチを感知する必要がなく、要約すれば、仮想入力装置は受動的であるのが好ましい。
【００１７】
図１Ａの例では、仮想入力装置５０は、フルサイズであるか或いは実際のキーボードサイズから拡大又は縮小されたコンピュータ型キーボードである。もし希望であれば、仮想入力装置は、仮想トラックボール５０’及び／又は仮想タッチパッド５０”より成るか又はそれを含んでもよい。システム１０が、仮想キーボード入力装置５０或いは仮想トラックボール５０’又は仮想タッチパッド５０”と共に使用される場合には、約５０°ないし９０°そして好ましくは約９０°の扇角度φであれば、一般的に使用される距離において扇状ビーム３０が仮想入力装置全体を包囲するように確保する。更に、このような仮想入力装置に対して、分離距離ΔＹは、数ｍｍまで、そして好ましくは約１ｍｍであれば、充分に機能する。
【００１８】
システム１０は、更に、第２の光学システム（ＯＳ２）６０、通常は、平面センサを伴うカメラを備え、これは、ＯＳ１２０から、その上に離間され、そして作用面４０及び平面３０に向かって約１０°ないし約９０°そして好ましくは約２５°の角度θに傾斜されるのが好ましい。更に、システム１０は、他のタスクの中でも、ＯＳ１及びＯＳ２を監視する電子処理システム７０を備えている。このシステム７０は、少なくとも、中央処理ユニット（ＣＰＵ）と、リードオンリメモリ（ＲＯＭ）及びランダムアクセスメモリ（ＲＡＭ）を含む関連メモリとを備えているのが好ましい。
【００１９】
図１Ａにおいて、システム１０の要素ＯＳ１　２０、ＯＳ２　６０及びプロセッサユニット７０は、装置８０上又は内に配置されて示されている。該装置８０は、システム１０のスタンドアローン実施でもよいし、或いは実際上、仮想入力装置５０を使用してデータ又はコマンドを入力するシステム又は装置でもよい。後者のケースでは、装置８０は、コンピュータ、ＰＤＡ（図１Ａに示すような）、セルラー電話、楽器等であるが、これに限定されるものではない。システム又は装置８０が仮想入力装置によって制御されない場合には、そのように制御される装置９０をシステム／装置８０に電気的に接続して、仮想装置５０からデータ及び／又はコマンドを受信することができる。仮想装置がトラックボール（又はマウス）５０’或いはタッチパッド５０”である場合には、ユーザとこのような仮想装置との相互作用が、タッチ座標（ｘ、ｚ）より成る生の情報又はデータを、装置８０により使用するために直接出力することができる。例えば、ユーザと仮想入力装置５０’又は５０”との相互作用は、ディスプレイ１４０上にカーソル１６０を再位置設定するか、さもなければ、装置８０により実行されるアプリケーションを変更するか、或いは仮想マウス又はトラックボール５０’を使用し又はスタイラス１２０’及び仮想タッチパッド５０”を使用してユーザが「書き込もう」とするものをたどるいわゆるデジタルインク１８０の軌跡を敷設する。システム／装置９０は、ワイヤ又はワイヤレスを含むがこれに限定されない媒体１００によりシステム８０に電気的に接続することもできるし、或いはインターネットを含むネットワークであってもよい。
【００２０】
構造化光実施例では、ＯＳ１　２０が、ｘ−ｚ平面４０に平行に扇状ビーム３０において光学的エネルギーを放射する。ＯＳ１は、レーザ線発生器又はＬＥＤ線発生器を含むが、他の光学的エネルギーソースを使用して平面３０を放射することもできる。線発生器ＯＳ１と称されるのは、第２平面が交差したときにＯＳ２が見るものを第２平面上の線として照射する光の平面を放射するからである。例えば、円筒状のオブジェクトが平面３０に交差する場合には、ＯＳ２は、その事象を、楕円の弧の照射された部分として見ることになり、その縦横比は、平面３０及び面４０より上のＯＳ２の距離に依存する。従って、周囲光を除き、平面３０上で楕円弧をＯＳ２が検出すると、例えば、１２０Ｒのようなオブジェクトが平面３０に接触するか又はそれを貫通したというタッチ事象を表わす。種々様々な光学的放射器を使用してもよいが、おそらく３００ｎｍないし１０００ｎｍの波長においておそらく３ｍＷの平均電力を出力するレーザダイオードを使用することができる。周囲光波長（例えば、おそらく３５０ｎｍないし７００ｎｍ）を使用できるが、このような波長が回避されれば、フィルタやシャッターなしに周囲光の影響を最小限にすることができる。従って、約６００ｎｍ（可視光線の赤）ないしおそらく１０００ｎｍ（深い赤外線）までの波長を使用することができる。８５０ｎｍ波長の光学的エネルギーを出力するレーザダイオードは、経済的な放射器を表わすが、ＯＳ２は、周囲光の影響を減少するためのフィルタを含むのが好ましい。
【００２１】
ＯＳ１は、構造化光の実施例では固定であるのが好ましいが、扇状ビーム３０は、光学的エネルギーの単一放射線を機械的にスイープして扇状ビーム平面３０を画成することにより発生できることが理解されよう。図２Ｂに示すように、ＯＳ１は、実際には、扇状ビームを放射する光学的エネルギー放射器２０−Ａと、扇状ビーム３０を面４０に対して実質的に平行に向ける反射ミラー２０−Ｂとを備えている。本発明の説明上、構造化光の実施例では、ＯＳ１　２０により放射される光学的エネルギーは、人間の目に見えるものでもよいし、見えないものでもよい。ＯＳ２　６０は、ＯＳ１　２０により放射された波長の光学的エネルギーに応答するカメラシステムを含むのが好ましい。「応答する」とは、ＯＳ２が、ＯＳ１により放射された同じ波長のエネルギーを確認し、そして理想的には、実質的に異なる波長のエネルギーは確認せず即ちそれには応答しないことを意味する。例えば、ＯＳ２は、ＯＳ１により放射される以外の波長の光学的エネルギーを検出しないフィルタシステム、例えば、カラーフィルタを含む。
【００２２】
もし希望であれば、ＯＳ２は、例えば、ユニット７０の制御のもとで、ＯＳ１及びＯＳ２を同時に同期してスイッチオン及びオフにすることにより、実質的にＯＳ１から放射される光学的エネルギーにしか応答しないようにすることができる。ＯＳ１及びＯＳ２は、同期状態で機能的に開閉する要素２２として示されたシャッターメカニズムを含むのが好ましい。例えば、電子的処理システム７０は、所望のデューティサイクルで時間周期ｔ１（但し、ｔ１は、おそらく約０．１ｍｓないし約３５ｍｓの範囲）の間にＯＳ１、ＯＳ２又はシャッターメカニズム２２を同期してスイッチオンし、次いで、ＯＳ１及びＯＳ２をスイッチオフすることができる。もし希望であれば、ＯＳ１は、常時動作することができ、この場合には、ＯＳ１　２０の前方にあるシャッター２２がオープンであるときだけ平面３０を放射することが許される。種々のシャッター構成において、同期スイッチングの繰り返し率は、充分な割合のフレームデータ収集を促進するためには２０Ｈｚないしおそらく３００Ｈｚの範囲であるのが好ましい。動作電力を節約しそして計算オーバーヘッドを減少するために、おそらく３０Ｈｚないし１００Ｈｚの繰り返し率が、受け入れられる割合を表わす。もちろん、ＯＳ２が実質的にＯＳ１により放射された光学的エネルギーにしか応答しないよう確保するための他の装置及び方法も使用することができる。図示を容易にするため、シャッター２２は、機械的要素として示されているが、実際には、シャッター２２の概念は、光源及びカメラを種々のやり方のいずれかでターンオン及びオフにすることを含むものと理解されたい。
【００２３】
もし希望であれば、本発明に使用される光学的エネルギーのソース（１つ又は複数）は、このようなエネルギーを周囲光のエネルギーから良好に見分けられるようにするために、いわゆる符牒を搬送させることができる。例えば、このようなソースを固定周波数で変調し、本発明に使用されるカメラ又は他のセンサユニットがこのようなエネルギーを容易に確認できるようにする一方、周囲光エネルギーは、このような符牒がないために実質的に拒絶されるようにしてもよいが、これに限定されない。手短に言えば、周囲光とは異なる波長を光学的エネルギーに対して選択するような符牒技術や、光源及びカメラセンサの同期動作に関連した技術や、光源のエネルギーを変調し又は他のやり方でタグ付けする技術は、全て、本発明により収集される情報の信号対雑音比を改善することができる。
【００２４】
作用面４０が、ＯＳ１により放射される波長に対して反射性であるか非反射性であるかは、要求されないことに注意されたい。というのは、光学的エネルギーの扇状ビーム又は他の放射は、表面それ自体に到達しないからである。仮想入力装置は、完全に受動的であるのが好ましいことにも注意されたい。装置５０は、受動的であるので、フルサイズ装置より小さくなるように必要に応じてスケーリングすることができる。更に、受動的な仮想入力装置のコストは、特に、「装置」が実際の入力装置のプリントされたグラフィック像を保持する単なる紙片である場合には皆無である。
【００２５】
図１Ａにおいて、最初に、システム１０のユーザは、仮想入力装置５０に接近していないと仮定する。構造化光の実施例では、ＯＳ１は、光学的エネルギーの扇状ビーム平面３０を放射するが、ＯＳ２は、平面３０に交差するオブジェクトがないので何も検出しない。ここで、ユーザの左手１２０Ｌ又は右手１２０Ｒの指の一部分１１０が下方に移動して、仮想入力装置５０が画成された作用面４０のエリアの一部分にタッチしたと仮定する。或いは又、ユーザ制御スタイラス１２０’の一部分１１０’が下方に移動して、作用面４０の当該部分にタッチしてもよい。本発明の説明において、タッチとは、本発明に関連したソフトウェアにより、コンパニオン装置又はシステム８０又は９０、例えば、ノートブック、ＰＤＡ、セルラー電話、キオスク装置、ポイント・オブ・セール（ＰＯＳ）装置等で実行されるアプリケーションへキーボード事象を送信するための要求として解釈される。
【００２６】
図１Ａにおいて、ユーザの指が下方に移動して、光学的エネルギー平面３０に交差し始めると、ＯＳ１に向いた指先の一部分がここで光学的エネルギー１３０を反射する。少なくとも若干の反射された光学的エネルギー１３０がＯＳ２により検出される。というのは、反射されたエネルギーの波長が、ＯＳ１により放射されたエネルギーと同じであり、そしてＯＳ２がこのような波長のエネルギーに応答するからである。従って、平面擬似三次元感知システム１０は、扇状ビーム平面３０により画成された当該平面に生じるユーザ制御オブジェクト（例えば、指、スタイラス等）の相互作用より反射される光学的エネルギーを検出する。他の平面に生じる相互作用（１つ又は複数）は、関連のないものと思われ、本発明では無視される。
【００２７】
従って、ユーザの手又はおそらくスタイラスの一部分のようなオブジェクトが、ＯＳ１　２０により放射された光学的エネルギー平面３０に交差するまでは、ＯＳ２　６０が検出すべき光学的反射エネルギー１３０は存在しない。このような状態のもとでは、システム１０は、ユーザ入力が行われていないことを知る。しかしながら、光学的エネルギー平面に貫通するや否や、その貫通するオブジェクト（例えば、指先、スタイラス尖端等）の交差がＯＳ２　６０によって検出され、そして貫通の位置（ｘ、ｚ）を、システム１０に関連したプロセッサユニット７０により決定することができる。図１Ａにおいて、ユーザの左人差し指が、座標（ｘ７、ｚ３）として定義された仮想入力装置５０の部分にタッチする場合には、本発明に関連したソフトウェアは、文字「ｔ」が「押された」と決定できる。「シフトキー」は押されないので、押された文字は、小文字の「ｔ」であると理解される。
【００２８】
図示された実施形態では、システム１０は、ユーザが実際のキーボードに入力したデータ及び／又はコマンドを表わすキーストロークを発生してシステム８０又は９０へ入力することができる。システム８０又は９０へのこのような入力を使用して、ユーザにより仮想入力装置５０に情報が入力されたときにその情報１４０をディスプレイ１５０に示すことができる。もし希望であれば、拡大カーソル領域１６０を実施し、情報を入力するユーザの助けとなるように付加的な可視入力を与えることができる。もし希望すれば、プロセッサユニット７０は、システム８０及び／又は９０が、ユーザの助けとなる可聴フィードバックを放射し、例えば、仮想入力装置５０における仮想キーの「押圧」に対応して電子的なキークリック音１７０を放射するようにさせることができる。システム８０又は９０が、コンピュータ又はＰＤＡ或いはセルラー電話ではなく楽器である場合には、楽音１７０が放射され、そして仮想入力装置５０は、ピアノの鍵盤又は合成音楽発生器に関連したキーボードと同様の構成をもつことができる。
【００２９】
図１Ｂは、非構造化の能動的光システム１０を示し、ここでは、第１光学システムＯＳ１のカメラ２０’が、図１Ａの実施形態において光学的放射器ＯＳ１により画成された平面３０に本質的に取って代わる当該平面３０’を画成する。カメラ２０’のＯＳ１は、図１Ａの実施形態においてカメラ６０のＯＳ２と同様のカメラ６０　ＯＳ２と同様であるのが好ましい。例えば、ＯＳ１　２０’は、少なくとも１行の、そして好ましくは多数の行のピクセル検出エレメントより成るセンサアレーを有する。図１Ｂの実施形態は、ＯＳ１　２０’とＯＳ２　６０との中間に配置された１つ以上の光源１９０が、カメラＯＳ１　２０’及びカメラＯＳ２　６０により検出できる波長の光学的エネルギーを発生するという点で、能動的である。カメラＯＳ１及びＯＳ２による検出に対する周囲光の影響を減少するため、各カメラ及び各光学的エネルギー放射器１９０は、好ましくは例えばユニット７０により同期されるシャッターメカニズムと協働するのが好ましい。従って、シャッター２２が、放射器１９０からの光学的エネルギーが仮想入力装置５０、５０’、５０”に向かって放射するのを許す時間中に、同様のシャッター２２が、カメラＯＳ１及びＯＳ２が光学的エネルギーを検出するのを許す。ユーザオブジェクト、例えば、１２０Ｌと平面３０’との相互作用は、ＯＳ１及びＯＳ２により検出される。次いで、交点の位置が、例えば、後述の三角法を使用して計算される。
【００３０】
図１Ｂにおいて、作用面４０の平面において隆起即ち不規則部が、ユーザオブジェクト１２０Ｌとの接触点１１０付近に示されている。第２のカメラＯＳ１　２０’の存在の利点は、当該平面３０’が、作用面４０の最も高い不規則部分のすぐ上に存在するように、おそらくユニット７０により選択できることである。図１Ａの実施形態で作用面４０に不規則部が存在する場合には、レーザ平面３０を作用面に対してどうにかして位置設定し直すことが必要である。しかし、図１Ｂでは、ＯＳ１　２０’を伴う検出アレーから適当なピクセル線を選択するだけで、このような位置設定し直しの作用が電子的に得られる。
【００３１】
図１Ｂの構成は、信号対雑音比を改善するための種々の方法に適していることに注意されたい。例えば、シャッター２２は、放射器１９０が例えば制御ユニット７０によりターンオフされた時間中に、カメラＯＳ１及びＯＳ２が像データを収集できるようにする。このようにＯＳ１及び／又はＯＳ２により収集された像データは、周囲光により生じるバックグランドノイズを表わす。（この場合も、周囲光の影響を最小にするために、放射器１９０及びカメラＯＳ１、ＯＳ２は、周囲光から外れた波長領域で動作するのが好ましいことを理解されたい。）バックグランドノイズ信号と称するものが収集されると、カメラＯＳ１及びＯＳ２は、ここで、通常にそして放射器１９０と同期して動作することができる。放射器１９０と同期してカメラＯＳ１及びＯＳ２により収集された像データは、実際のデータ、例えば、ユーザオブジェクトと平面３０’との間の界面に、周囲光による何らかの（不所望な）作用を加えたものを含む。次いで、プロセッサユニット７０（又は別のユニット）は、この実際のデータにノイズを加えた信号から、バックグランドノイズ信号を動的に減算して、実際のデータ信号を得、信号／ノイズ比を高める。
【００３２】
図１Ｃは、本発明の非構造化受動的実施形態を示す。図１Ｃのシステム１０は、どんな周囲光ソース１９５が存在しても、像形成中に使用される光学的エネルギーが与えられるという点で受動的である。図１Ｂのシステム１０と同様に、ＯＳ１は、当該平面３０’を画成するカメラ２０’であり、そしてＯＳ２は、カメラ６０である。典型的に、平面３０’は、通常数ｍｍの距離である距離ΔＹ’だけ作用面４０の上に画成される。ユーザオブジェクトと平面３０’との相互作用は、周囲光ソース１９５からの光学的エネルギーを使用してＯＳ１及びＯＳ２により検出される。次いで、三角法を使用して、本明細書のどこかに述べるように平面３０’との相互作用点又は交点が位置決めされる。
【００３３】
図２Ａは、ユーザの指即ちオブジェクト１２０Ｒと平面３０との間の交差点の位置（ｘ、ｚ）を、三角法を用いて決定する幾何学を示す。図２Ａ及び２Ｂは、図１Ａないし１Ｃに示された種々の実施形態の分析を説明するのに使用される。
ここに使用する三角法は、投影線、例えば、ＯＳ１　２０、ＯＳ２　６０のような２つの光学システムのＲ１、Ｒ２により形成された三角形の幾何学的分析により当該視野における表面の形状を決定する上で助けとなる。基線Ｂは、２つの光学システムＯＳ１、ＯＳ２の投影の中心を結ぶ線の既知の長さを表わす。当該視野における可視表面上の点（ｘ、ｚ）に対し、点の位置と、ＯＳ１及びＯＳ２の位置とによって三角形が画成される。三角形の３辺は、Ｂ、Ｒ１及びＲ２である。ＯＳ１及びＯＳ２は、基準平面からの三角形の角度距離と、表面の点を２つの光学システムの投影の中心と結ぶ投影線により形成された角度α１及びα２とを決定することができる。角度α１及びα２と基線Ｂとで、三角形の形状が完全に決定される。簡単な三角法を使用して、表面の点（ｘ、ｚ）までの距離と、投影線Ｒ１及び／又はＲ２の長さとを得ることができる。
【００３４】
ＯＳ１　２０を単一ユニットとして実施する必要はない。例えば、図２Ｂは、第１光学システムが２つに分けられ、一方の部分ＯＳ１−Ａ　２０−ＡがＯＳ２から距離Ｄに配置された光放射器でありそして第２部分ＯＳ１−Ｂ　２０−Ｂがミラーのような光反射器である構造化光の実施例を示す。ＯＳ１−Ａにより発生される到来する扇状ビームは、ミラー２０−Ｂにより偏向されて、平面３０を形成する。図２Ｂの向きでは、ミラー２０−Ｂは、水平面に対して約４５°に傾斜され、そして偏向は、実質的に垂直面から実質的に水平面までである。図２Ｂ、及び実際には受動光の実施例では、ＯＳ２　６０は、一般的に当該視野に向けて角度φに照準されたカメラであり、即ちユーザの指又はスタイラスは、扇状平面３０の下に配置された仮想入力装置を「使用」するようにされる。
【００３５】
本発明による三角法は、平面センサをもつ標準的なカメラをＯＳ２　６０として使用するのが好ましい。ＯＳ１　２０の性質は、２つの若干広い三角法クラスの間を区別する。構造化光の三角法では、ＯＳ１　２０は、通常、レーザ等であって、そのビームは、移動点を表面上の投影するように移動される単一線の形状にされる。或いは又、レーザビームは、平らなものであって、平面的なカーブを投影するように移動されてもよい。上述したように、三角法システムの別のクラスは、カメラがＯＳ１　２０として使用される受動的な三角法と称される。構造化光のシステムは、光の平面を投影する必要があるために、構築するのが複雑で且つ多くの動作電力を消費する。受動的なシステムは、安価で、且つ消費電力が低い。しかしながら、受動的なシステムは、例えば、２つの像のポイントのどの対が現実世界における同じポイントの投影であるかを決定するために、いわゆる対応性の問題を解決しなければならない。以下に述べるように、本発明により、受動的な非構造化光の三角法実施例が使用される。
【００３６】
システム１０は、ＯＳ１が能動的に光を放射しそしてＯＳ２がカメラである構造化光システムとして実施されるか、又はＯＳ１及びＯＳ２が両方ともカメラであり、ＯＳ２及びＯＳ１からの情報が処理ユニット、例えば、７０に接続され、該ユニットが、どんな事象が生じるか決定できる受動的システムとして実施される。いずれの実施形態においても、１２０Ｒのようなオブジェクトが、ＯＳ１　２０に関連した投影平面３０に交差するときには、その交差を検出することができる。ＯＳ１が光学的エネルギーを放射する構造化光の実施形態では、交差されたオブジェクト１２０Ｒから反射されて通常カメラであるＯＳ２により検出される光学的エネルギーによって交差が指示される。受動光の実施形態では、カメラであるＯＳ１と、これもカメラであるＯＳ２とによって交差が見られる。各々の実施形態において、平面３０との交差は、（ｘ、ｚ）平面交差の下にある表面４０の領域にオブジェクト１２０Ｒがタッチしたかのように検出される。システム１０は、好ましくは、コンピュータシステム７０を備え、これは、ＯＳ１、ＯＳ２からデータを受け取り、そして幾何学を使用して、構造化光の実施形態では反射像座標から、又は受動的システムではカメラ像座標から平面交差位置（ｘ、ｚ）を決定する。このようにして、平面３０の初期及び継続的な接触及び貫通（例えば、タッチ事象）を検出し、そして平面における交差座標位置を決定する二重のタスクが達成される。
【００３７】
以上を要約すると、平面３０と１２０Ｒのような侵入オブジェクトとの交差をＯＳ１が確認したときにタッチ事象が検出されそして宣言される。２カメラシステムでは、ＯＳ１及びＯＳ２から認知される像のポイント間に対応関係が確立される。その後、ＯＳ２カメラの座標が、タッチ領域（ｘ軸、ｚ軸）の座標に変換され、平面３０の当該エリア内の事象の（ｘ、ｚ）座標位置が探索される。このような変換は、ＯＳ２に見えるポイントの像座標から平面３０の交差位置を計算するためのアルゴリズムを実行するプロセッサユニット７０により行われるのが好ましい。更に、受動光システムは、ＯＳ１及びＯＳ２からの像におけるバックグランドから侵入オブジェクトを区別しなければならない。システム１０が、受動光システムである場合には、カメラＯＳ１からの像とカメラＯＳ２からの像との間に対応関係を確立する必要がある。システム１０が、構造化光システムである場合には、周囲光からの干渉を最小にすることが望まれる。
【００３８】
平面３０における（Ｘ、Ｚ）交差即ち尖端位置の計算について以下に考える。遠近法投影において、世界における平面とその像は、ホモグラフィーと称される
2004513416.tif 000003
【００３９】
このホモグラフィーマトリクスは、校正手順を使用して見つけることができる。センサは表面上にのせられるので、表面に対するセンサの位置は一定であり、校正手順は一度実行するだけでよい。校正のために、センサがのせられる平らな
2004513416.tif 000004
【００４０】
受動光実施形態に対する像の対応性について以下に説明する。カメラＯＳ１２０及びＯＳ２　６０は、空間内の同じ平面を見る。その結果、ＯＳ１からの線走査カメラ像とＯＳ２からのカメラ像との間のマッピングそれ自体がホモグラフィーとなる。これは、尖端がさえぎる位置の計算について上述したＯＳ２カメラ像と平面３０のタッチ面との間のマッピングに類似している。従って、同様の手順を使用してこのマッピングを計算することができる。
【００４１】
線走査カメラＯＳ１　２０は、単一の線へと折り畳まれたタッチ面を本質的に見るか又はかすめるので、２つの像間のホモグラフィーは退化することに注意されたい。各ＯＳ２カメラ点の場合には、１つのＯＳ１線走査像点があるが、各ＯＳ１線走査像点の場合には、ＯＳ２カメラ点の全線がある。この退化のために、上述したＤＬＴアルゴリズムは、点対線の対応性を生じるように（平凡に）変更される。
【００４２】
定義によれば、本発明の受動光実施形態は、周囲光に対して何ら制御をもたず、そして侵入する交差オブジェクト又は尖端を一般的なバックグランドから区別するよう挑戦することができる。手短に言えば、ＯＳ１像又はＯＳ２像における特定像ピクセルが１２０Ｒのようなオブジェクトの点の像を表わすか又は一般的なバックグランドにおける点であるかをいかに言うかである。システム７０により実行できるアルゴリズムについて以下に説明する。
【００４３】
2004513416.tif 000005
【００４４】
2004513416.tif 000006
【００４５】
2004513416.tif 000007
【００４６】
特に、構造化光三角法実施形態の場合に周囲光の干渉を減少するための技術について以下に説明する。このような実施形態では、ＯＳ２は、周囲光と、線発生器により発生されて侵入するオブジェクトにより反射されて戻される光との間を区別することが必要である。
第１の方法を使用すると、ＯＳ１は、周囲光が、例えば、近赤外線において僅かな電力しかもたない光スペクトルの領域にエネルギーを放射する。カメラＯＳ２の赤外線フィルタは、ＯＳ２センサにより検出された光が主としてオブジェクト（例えば、１２０Ｒ）からカメラＯＳ２のレンズへ反射されるよう確保することができる。
【００４７】
第２の方法では、ＯＳ１は、スペクトルの可視部分であるが、周囲光より実質的に明るい部分において動作する。これは、原理的には、いかなる色の光源でも達成できるが、屋内用途の場合には、ＯＳ１に対して青−緑光源（５００ｎｍ−５５０ｎｍ）を使用するのが有用である。というのは、標準的な蛍光灯が、この帯域では比較的低い放射しかもたないからである。ＯＳ２は、他の波長に対する応答が実質的に減衰されるよう確保するために、整合フィルタを含むのが好ましい。
2004513416.tif 000008
【００４８】
2004513416.tif 000009
【００４９】
図１Ａにおいて、装置８０が、ＰＤＡやセルラー電話のようなコンパクトシステムである場合には、本発明を実施するのに必要なサイズを減少することが特に望ましくなる。図１Ａ−１Ｃ、２Ａ、２Ｂに示すように、ＯＳ２が平面３０又は表面４０に対してある角度θに傾斜された場合には、全体的に小さなフォームファクタを得ることができる。しかし、角度θが減少するにつれて、カメラＯＳ２は、平面３０を更に浅い角度から見ることになる。平面３０の感知エリア、即ちその下の仮想入力装置を操作するためにユーザオブジェクトにより「タッチ」されるべき表面の四角形が固定サイズである場合には、距離Ｂ及び角度θが減少するにつれて、視野により抱かれる有効エリアが減少することになる。その結果、ＯＳ２の有効解像度を低下し、従って、図３Ａに示すｚ深さ測定の精度を低下する。ここで、Ｌは、ＯＳ２に関連したカメラレンズを表わし、そのピクセル検出器の平面は、ＯＳ２と表示された直線で示されている。
【００５０】
図３Ａに示すように、ＯＳ２を平面３０に近づけるように移動すると、視点がより浅くなると共に、カメラ像がより小さくなって正確に認知できなくなる。これらの悪い副作用は、図３Ｂに示すように、カメラＯＳ２のピクセル検出器の平面を傾斜させ、実際には平面３０とほぼ平行に傾斜させることにより減少することができる。図３Ｂの傾斜構成では、実質的に多数の像走査線が平面３０の感知エリアからの線の円錐に交差し、従って、深さ解像度を高める。例えば、図３Ａの比較的小さな距離Ｄｘを、多数の像走査線がここで使用されていることを表わしている図３Ｂの大きな距離Ｄｘ’と比較する。更に、ＯＳ２カメラセンサ平面が、タッチ面の平面又は平面３０に対して更に平行な状態になるにつれて、タッチ面の像の歪が少なくなる。これは、タッチ面（又は平面３０）の平行線がＯＳ２カメラ像において平行に保たれることを意味する。その効果は、アフィン変換（シフト及びスケール）に対してホモグラフィーＨが簡単化されることである。更に、像の解像度は、当該視野内の全感知エリアにわたり更に均一になる。
【００５１】
図３Ｃの構成について以下に考える。平面３０上の当該タッチ感知エリアにおける異なる点は、カメラＯＳ２のレンズＬから異なる距離にあることが明らかである。これは、レンズＬが図３Ａ又は図３Ｂに示されたように配置された場合には当該感知エリア全体に正確に焦点を合わすことができないことを意味する。カメラの虹彩を閉じると、視野深さが増加するが、得られる像は薄暗くなり、そして像の信号対雑音比が低下する。
【００５２】
従って、図３Ｃの構成は、レンズＬが図３Ｂに対して位置設定し直されるようにして使用される。この構成では、タッチ面３０、カメラＯＳ２センサ及びカメラレンズＬは、それらの各々の平面が共通の線、即ち図３Ｃにおいて無限点にある線に交差するようないわゆるシェイムフラグ（Ｓｃｈｅｉｍｐｆｌｕｇ）条件を満足すると言える。シェイムフラグ条件に関する更なる詳細は、１９９５年、マグロー・ヒル・インク、編集長ミッシェル・ベース、ハンドブック・オブ・オプチックスに掲載された「Ｔｈｅ Ｏｐｔｉｃａｌ Ｓｏｃｉｅｔｙ ｏｆ Ａｍｅｒｉｃａ」に見ることができる。図３Ｃにおいて、当該光学システムがこの条件を満足するときに、タッチ面３０上の全ての点に焦点が合わされる。従って、適切に傾斜されたセンサＯＳ２、シェイムフラグ条件を満足する適切に配置されたレンズＳを使用することにより、ＯＳ２が見た表面平面３０上の当該点の像は、焦点が合わされて、ほとんど歪のない高い解像度を示す。しかし、シェイムフラグ条件を満足することは、像の輝度を失うことになる。というのは、平面３０上の感知エリアの中心から見たときにレンズが抱く角度が、図３Ｂの構成に対して減少されるからである。その結果、ある用途では、ＯＳ２のカメラレンズを図３Ｂと図３Ｃとの中間の向きに配置することにより、焦点の鋭さと像の輝度との間で妥協点に到達するのが好ましい。図３Ｄは、１つのこのような中間構成を示し、レンズＬは、ＯＳ２の平面及び平面３０に対してシェイムフラグ条件を満足する向きから若干離れるように意図的に傾斜されている。
【００５３】
このような中間の向きは、シェイムフラグ条件を僅かに満足しないだけであり、従って、レンズ軸が平面３０の感知エリアの中心を直接指すような構成よりも依然として良好な焦点状態を示す。図３Ｅは、シェイムフラグ条件が厳密に照合されるが、カメラセンサが水平から離れるように傾斜されるような別の中間構成を示す。図３Ｅの構成は、正確な焦点を得ることができるが、図３Ｃの構成より像の解像度が若干低くそして歪が大きい。
【００５４】
図４は、システム１０内のプロセッサユニット７０の動作部分を示すブロック図であり、このプロセッサユニットは、当該平面３０との（ｘ、ｚ）交差を感知しそして識別するためにここに述べる種々の三角法及び他の計算を実行するのが好ましい。図４の左側部分として、ＯＳ１　２０及びＯＳ２　６０からの情報がピクセルマップ２００−１、２００−２に各々入力される。図４において、ＯＳ１及びＯＳ２の入力は、本発明による平面レンジセンサシステム１０の光学システム１（２０）及び光学システム２（６０）により発生されたデジタル像のフレームのストリームを指す。好ましい実施形態では、光学システムは、少なくとも約３０フレーム／秒（ｆｐｓ）を発生する。３０ｆｐｓでは、ユーザの指又はスタイラスの尖端が２つのフレーム間に仮想入力装置に「タイピング」しながら数ピクセル移動できるという点で高いフレームレートが望まれる。ピクセルマップモジュール２００−１、２００−２は、計算ユニット７０に関連したメモリにおいてＯＳ１及びＯＳ２からのデジタルフレームを構成する。同期モジュール２１０は、２つの光学システムがほぼ同時にデジタル像のフレームを発生するように確保する。もし希望があれば、手前のフレーム（時間的に）が他のモジュールによって処理されている間にあるフレームの構成を許すように二重バッファシステムを実施してもよい。タッチ検出モジュール２２０は、指先又はスタイラスの輪郭がフレームの選択された行に現れたときにタッチを検出する（例えば、ユーザの指又はスタイラスと光学的平面との交差がＯＳ１により感知される）。タッチが検出されると、尖端検出モジュール２３０が、対応する指先の輪郭を適当なピクセルマップ２００−１又は２００−２に記録する。図４において、ＯＳ１が光ビーム発生器である構造化光実施形態では、ピクセルマップが発生されず、そしてタッチ検出は、ＯＳ１からではなくＯＳ２からの入力を使用する。
【００５５】
タッチ位置モジュール２４０は、タッチ検出モジュール２２０からタッチが報告されるときに尖端検出モジュール２３０からの尖端ピクセル座標を使用して、タッチ面におけるタッチの（ｘ−ｚ）座標を見出す。タッチとは、構造化光実施形態では光学的放射器ＯＳ１に関連した、又は受動光実施形態ではカメラＯＳ１の視野面に関連した平面３０を貫通することに等しいことに注意されたい。ピクセル座標をＸ−Ｚタッチ位置に変換するための数学的方法は、本明細書のどこかで説明する。
【００５６】
キー識別モジュール２６０は、タッチのＸ−Ｚ位置を使用し、そしてその位置を、好ましくは計算ユニット７０に関連したメモリに記憶されたキーボードレイアウトテーブル２５０を使用してキー識別にマップする。キーボードレイアウトテーブル２５０は、典型的に、原点ゼロに対する各キーの上／下／左／右座標を定義する。従って、キー識別モジュール２６０の機能は、テーブル２５０のサーチを実行しそしてどのキーがタッチ点の（ｘ、ｚ）座標を含むか決定することである。タッチした（仮想）キーが識別されたときには、変換モジュール２７０がそのキーを所定の「キーコード」値にマップする。「キーコード」値は、キーストローク事象の通知の受信を待機しているコンパニオン装置又はシステム８０（コンパニオン装置で実行される）で実行されているアプリケーションへ出力されるか又は通される。実行中のアプリケーションは、キーストローク事象を解釈し、そしてそれに意味を指定する。例えば、テキスト入力アプリケーションは、その値を使用して、どんな記号がタイプされたか決定する。電子ピアノアプリケーションは、どんな音符が押されたか決定し、そしてその音符を演奏し等々を行う。
【００５７】
或いは又、図４に示すように、Ｘ−Ｚタッチ座標は、アプリケーション２８０に直接通すことができる。アプリケーション２８０は、座標データを使用して、仮想マウス又は仮想トラックボール実施形態ではディスプレイ上のカーソル位置を制御し、或いは仮想ペン又は仮想スタイラス実施形態では描写又は手書き型アプリケーションに対してディスプレイ上に軌跡が示されるデジタルインクのソースを制御することができる。
【００５８】
図５Ａは、仮想装置５０がここでは５つの領域をもつ制御器でありそしてコンパニオン装置８０、９０がモニタを備えたシステム１０を示す簡単な図である。この実施形態では、コンパニオン装置８０又は９０は、アイコン１４０を含むディスプレイ１５０と共に示されており、１つのアイコンがカーソル３１０で包囲され、そしてユーザは、仮想装置５０’、ここでは仮想トラックボール又はマウスを使用してそれを動かすことができる。例えば、仮想装置５０’内で、ユーザの手１２０Ｒ（又はスタイラス）の一部分が仮想領域３００−１を押した場合に、コンパニオン装置８０、９０に表示されたカーソル３１０は、左へ移動するように指令される。仮想領域３００−２が押された場合には、カーソルは上方に移動することになる。仮想領域３００−３が押されると、カーソルは右へ移動し、例えば、パンの塊のアイコンを「選択」し、そして仮想領域３００−４が押されると、カーソルは、装置８０、９０のディスプレイの底に向かって移動する。ユーザが第５領域３００−５即ち「親指を立てた」領域を押すと、コンパニオン装置８０、９０は、ユーザ選択がここで完了したことを知る。図５Ａにおいて、ユーザがここで領域３００−５を押すと、「ホットドッグ」アイコンが選択される。装置８０、９０が、例えば、スーパーマーケットのキオスクである場合には、「ホットドッグ」アイコンを選択すると、ディスプレイが、マーケットのどこでホットドッグを売っているかを示すか、又は売っているホットドッグの種々のブランドの価格を示すか、或いは装置８０、９０でホットドッグを販売することもできる。装置８０、９０が運送の設定に使用される場合には、アイコン（又はワード）が種々の行先となり、そして装置８０又は９０は、行先までのルート、スケジュール、及び料金を示すことができ、そしてバス、地下鉄、航空機、ボート等に使用するためのチケットを販売することもできる。ユーザは、例えば、旅行の起点及び旅行の行先点を表わす入力装置５０’の２つの領域を押すことができ、その際に、システム１０は、適切な輸送乗物、スケジュール、料金等を表示させ、そしてもし希望があれば、プリントアウトすることもできる。システム１０により発生される情報は、単に生の（ｘ、ｚ）座標に過ぎず、コンパニオン装置によって実行されるソフトウェアアプリケーションは、これを使用して、カーソル又は他の情報をディスプレイ上に再位置設定することができる。
【００５９】
図５Ａにおいて、仮想装置５０’は、受動的であり、即ちその輪郭をその下の作用面に印刷又は塗装してもよいし、或いはおそらくその輪郭をシステム１０により投影することもできる。仮想装置５０における種々の当該領域は、ｘ−ｚ平面に対する座標に関して識別することができる。図４のキーボードレイアウト２５０における情報に対応する以下のテーブル１の情報について考える。
【表１】
2004513416.tif 000010
【００６０】
ユーザの指（又はスタイラス）が仮想入力装置５０の領域にタッチすると、タッチ位置モジュール２４０（図４を参照）がタッチ点１１０の（ｘ、ｚ）座標を決定する。図５において、タッチ点１１０は、「Ｂ」領域３００−４内にある。キー識別モジュール２６０は、この例ではテーブル１に示すようなキーボードレイアウト２５０の情報を使用して、当該（ｘ、ｚ）平面内のどこにタッチ点座標が生じたかを決定する。例えば、タッチ座標（ｘ、ｚ）が（１．５、０．５）であると仮定する。好ましくはユニット７０（図１Ａを参照）に関連したメモリに記憶されてユニット７０により実行されるサーチルーチンが、１＜ｘ＜２及び−１＜ｚ＜１であると決定する。テーブル１の情報をサーチすると、キー識別モジュールは、タッチ点１１０がエントリーＢ内に入ることを決定する。この例では、コンパニオン装置８０及び９０は、領域Ｂがタッチされたことを知らせるデータをシステム１０から受け取る。システム１０のプロセッサユニット７０は、事象に関連したタスク、例えば、ディスプレイ上でカーソルを下方に移動するタスクを実行するのに必要な他の情報をコンパニオン装置に受信させることができる。
【００６１】
図５Ｂは、図１Ａに示したものと同様のシステム１０の実施形態を示す。図５Ｂにおいて、仮想入力装置５０は、コンピュータキーボードであり、そしてコンパニオン装置８０、９０は、移動トランシーバ、例えば、セルラー電話である。システム１０は、実際上、装置８０、９０内に実施できることを理解されたい。従って、ＯＳ１は、装置８０、９０の下部から扇状ビーム３０を放射し、そしてＯＳ２は、同じ装置の上部に配置される。仮想入力装置５０は、もし希望であれば、装置８０、９０から光学的に投影することができる。或いは、仮想入力装置５０は、例えば、プラスチックや紙等の折り畳み可能な基板に印刷され、これを装置８０、９０内に保持し、次いで、取り出して、広げ又は延ばして、装置８０、９０の前方の平らな作用面上に配置することができる。装置８０、９０の前方における仮想入力装置５０の位置は、ＯＳ１がその仮想入力装置を包囲する扇状ビーム３０を放射でき、そしてＯＳ２が、オブジェクト、例えば、ユーザの指やカーソル等と、仮想入力装置５０の当該領域の上に横たわる扇状ビームの位置との交差１１０を検出できるようなものである。
【００６２】
図５Ｂにおいて、ＯＳ２は、オブジェクト１２０Ｒが扇状ビーム３０をさえぎるまで光学的反射エネルギーを検出せず、そのさえぎったときに、ＯＳ１により放射されたある光学的エネルギーが反射され（１３０）そしてＯＳ２により検出される。図１Ａに示された（ｘ、ｚ）座標システムに対し、そのさえぎり点１１０は、おおよそ位置（１３、５）となる。図４を参照すれば、キーボードレイアウトテーブル２５０は、各仮想キーに対して少なくとも１つのエントリーを有し、例えば、「１」、「２」、・・「Ｑ」、「Ｗ」、・・「ＳＨＩＦＴ」が仮想入力装置５０に定義されることを理解されたい。図５Ａを参照して述べたものと同様のエントリーサーチプロセスが好ましくはユニット７０によって実行され、そしてタッチ点１１０の下にある関連仮想キーを識別することができる。図５Ｂにおいて、関連キーは、「Ｉ」であり、ユーザの手１２０Ｒの一部分（又はスタイラス）によってセルラー電話８０、９０へ入力されるｅ−メールメッセージテキスト１４０の一部分としてディスプレイ１５０に文字「Ｉ」が示されている。セルラー電話キーパッドを使用して手間をかけてメッセージを入力するのとは対照的に、仮想キーパッド５０を使用してセルラー電話８０、９０にメッセージを迅速にタッチ式に入力できることが明らかであろう。
【００６３】
図５Ｃには、作用スペース４０がおそらく店舗又は商店街の垂直の壁であり、そして仮想入力装置５０も垂直に配置されたシステム１０の実施形態が示されている。この実施形態では、仮想入力装置５０は、多数のアイコン及び／又はワード３２０と共に示され、ユーザの手１２０が例えばタッチ点１１０にタッチすると、コンパニオン装置８０、９０のディスプレイ１５０に適当なテキスト及び／又はグラフィック像１４０が現れる。図示された例では、アイコン３２０は、店内の位置又は部門を表わし、そしてディスプレイ１５０は、アイコン領域にユーザがタッチするのに応答して更に別の情報を対話式に与える。商店街の場合は、種々のアイコンが、全店舗、又は店舗内の部門又は領域、等を表わす。１１０のようなタッチ点の検出及び位置決めは、図３Ａ及び３Ｂの実施形態を参照して述べたように実行されるのが好ましい。システム１０内のプロセッサユニット７０は、プロセッサユニット７０内に記憶されるか又はそこにロードできるソフトウェアを実行して、仮想入力装置５０のどんなアイコン又はテキスト部分にタッチしたか、そしてどんなコマンド及び／又はデータをホストシステム８０、９０へ通信しなければならないかを決定するのが好ましい。
【００６４】
図５Ｃの実施形態において、仮想入力装置５０が頻繁に変更されがちな場合、例えば、おそらくそれがレストランのメニューであって、ディスプレイ１５０がカロリーやソースの内容等の詳細情報を与えることができる場合には、仮想入力装置５０が壁４０内から後方投影される。種々のアイコン３２０のレイアウト及び位置が変更される場合には、システム１０のユニット７０内に記憶されるマッピング情報も変更される。固定位置に固定サイズのアイコンを有して仮想入力装置の性質及び内容を必ずしもロックせずに迅速に変更できるようにするのが非常に有用であろう。もし希望であれば、幾つかのアイコンは、実際に、装置５０上でサイズ及び位置が固定され、そしてユーザがそれにタッチすることを使用して、入力装置５０に何が示されユニット７０内のソフトウェアにより何がマップされるかの再マッピングを選択することができる。広告を含む情報を単に表示するのに加えて、コンパニオン装置８０、９０を使用して、ユーザのためのプロモーションクーポン３３０を発行することもできる。
【００６５】
図６を参照すれば、タッチ事象を登録しそしてその位置を決定するやり方は、システム１０が構造化光システムであるか受動光システムであるかに基づいて、システム１０により決定される。上述したように、構造化光システムでは、ＯＳ１が線発生レーザシステムであり、そして受動光システムでは、ＯＳ１がデジタルカメラである。各システムは、平面３０を画成し、これは、１２０Ｒのようなオブジェクトによりさえぎられたときにタッチ事象を定義し、その（ｘ、ｚ）座標が次いで決定される。仮想タッチの（ｘ、ｚ）座標が決定されると、本発明は、システムを使用する操作者によりどんな入力又はコマンドが意図されたか決定することができる。このような入力又はコマンドは、コンパニオン装置へ通され、この装置は、実際に、本発明の構成を収容することができる。
【００６６】
システム１０が受動光システムである場合には、指先の輪郭が、デジタルカメラであるＯＳ１の選択されたフレーム行に現れたときに、タッチ事象が登録される。平面３０におけるタッチの（ｘ、ｚ）位置は、タッチがＯＳ１において検出されたときにＯＳ２における対応オブジェクト尖端（例えば、１２０Ｒ）のピクセル位置により決定される。図６に示すように、カメラＯＳ１からタッチ点までのレンジ即ち距離は、ピクセルフレームの「近方」端からのピクセル数のアフィン関数である。
【００６７】
上述したように、構造化光実施形態では、ＯＳ１が通常レーザ線発生器であり、そしてＯＳ２が主としてＯＳ１により放射された光エネルギーの波長を感知するカメラである。上述したように、これは、狭帯域光フィルタをＯＳ２に設置して、ＯＳ１により放射されたものに対応する波長だけが通過するようにすることにより達成できる。或いは又、ＯＳ２は、ＯＳ１のパルス出力と同期して開閉するシャッターを備えてもよく、例えば、ＯＳ２は、ＯＳ１が光学的エネルギーを放射するときだけ光学的エネルギーを見ることができる。構造化光システムの実施形態では、ＯＳ２は、平面３０をさえぎるオブジェクトだけを検出し、従って、ＯＳ１により放射されたエネルギーを反射するのが好ましい。
【００６８】
上記のケースでは、タッチ感知検出及びレンジ計算がシステム１０により実行される。従って、オブジェクト、例えば、指先１２０Ｒの輪郭がＯＳ２の視野範囲内に現れたときに、タッチ事象が登録される。上記の例と同様に、レンジ距離は、ピクセルフレームの「近方」端からのピクセル数のアフィン関数として計算することができる。
【００６９】
本発明により図４において実施される分析ステップの更に別の例を以下に説明する。仮想入力装置は、図１Ａに示すようなキーボード５０であり、そしてシステム１０は、ユーザが仮想キーボード５０上で「タッチ」した仮想キーに対応する走査コードを少なくとも含む情報を出力することが予想されると仮定する。図１Ａ及び図２Ａにおいて、上部（例えば、仮想キー「ＥＳＣ」、「Ｆ１」、「Ｆ２」等をもつ行）は、光学システムＯＳ１　２０から約２０ｃｍの距離にあると仮定する。又、カメラＯＳ２　６０が、約１０ｃｍ高さのＰＤＡ又は他の装置８０に取り付けられ、そして平面３０に対して既知の角度α１＝１２０°に配置されると仮定する。又、カメラＯＳ２　６０が、焦点距離約４ｍｍのレンズと、４８０行及び６４０列に配列されたカメラセンサとを有すると仮定する。
【００７０】
仮想キーボード５０の左上隅のＺ座標は、規定により、ｘ＝０及びｚ＝０、例えば、（０、０）となるようにセットされる。像内の点を仮想装置上の点にマップするホモグラフィーＨは、カメラＯＳ２　６０の傾斜に依存する。上記構成に対する例示的なホモグラフィーマトリクスは、次の通りである。
【数１】
2004513416.tif 000011
上記マトリクスは、本明細書のどこかで述べた校正手順の間に一度だけ決定すればよいのが好ましい。
【００７１】
図１Ａ及び図７を参照すれば、ユーザ１２０Ｌが、文字「Ｔ」に対応する仮想キーボード５０の領域にタッチすると仮定し、文字「Ｔ」は、ユーザの指を誘導するように基板に印刷されてもよいし、又はおそらくシステム１０により投影される仮想入力装置の像の一部分であってもよい。上述した座標系を使用すると、キー「Ｔ」は、図７に示すように、水平座標ｘｍｉｎ＝１０．５とｘｍａｘ＝１２．４ｃｍの間に存在し、そして垂直座標ｚｍｉｎ＝１．９とｚｍａｘ＝３．８ｃｍの間に存在すると言える。
【００７２】
図６を参照すれば、ユーザの指１２０Ｌ（又はスタイラス）がセンサＯＳ１　２０の平面に交差する前には、該センサは、光を検出せず、図面の下部にビネット３４０で示されたように黒のピクセルで作られた像を見る。しかしながら、ユーザオブジェクトが光学的平面３０に交差するや否や、交差事象即ち界面がＯＳ１２０に見えるようになる。ここで、ＯＳ１　２０は、図６の下部にビネット３５０で示したものと同様の像を発生する。ユーザオブジェクト（例えば、指１２０Ｌ）の下方に移動する尖端１１０が表面４０に到達すると、指が更に見えるようになる。ここで、例えば、エッジ検出を使用してユニット７０により指の輪郭が決定される。このような決定は、図６の下部に「タッチ」事象ビネット３６０として示されている。次いで、図４のタッチ検出モジュール２２０は、ユーザオブジェクトが表面４０にタッチしたと決定し、そして尖端検出モジュール２３０にそれを通知する。
【００７３】
図１Ａにおいて明らかなように、仮想「Ｔ」キーは、仮想キーボード５０の第２行に見られ、それ故、センサＯＳ１　２０に比較的接近している。図６において、この状態は、位置１１０’における指先に対応する。更に図６に示されたように、指先位置１１０’の下部が光学システムＯＳ２　６０のセンサに投影されるのは、像の頂部に比較的接近している。このように形成される指先像のエッジは、図６の上部にビネット３７０で示されたものと同様である。ビネット３７０では、図示された２つのグレーの方形が、指先の下部エッジのピクセルを表わしている。
【００７４】
一方、仮想キーボード５０の下部に接近した即ちセンサＯＳ１　２０から更に離れたスペースバー又は他のキーにユーザが接触すると、図６に指先位置１１０で示された状態が生じる。仮想キーボードにおけるこのような比較的遠い位置は、像の下部に接近したピクセルにマップされ、そして図６の上部のビネット３８０で示されたものと同様のエッジ像が生じる。中間仮想キーの接触状態は、図６の上部にビネット３９０として示されたものと同様のエッジ像を形成する。
【００７５】
仮想キー「Ｔ」が押される上記例では、図４の尖端検出モジュール２３０は、エッジ検出アルゴリズムを実行し、従って、像の行６５及び列４９２にある一般化された接触領域を表わす「しみ」の下部中心を見つける。それ故、均質像座標ベクトルｐが次のように形成される。
【数２】
2004513416.tif 000012
【００７６】
2004513416.tif 000013
従って、ユーザオブジェクト即ち指１２０Ｌは、座標ｘ＝１１．５３及びｚ＝２．４９ｃｍを有する位置点において仮想キーボード５０にタッチしたと決定される。図４のキー識別モジュール２６０は、ｘｍｉｎ≦１１．５３＜ｘｍａｘそしてｙｍｉｎ≦２．４９＜ｙｍａｘとなるようなキーに対してキーボードレイアウト２５０をサーチする。
【００７７】
これらの条件は、仮想「Ｔ」キーに対して満足される。というのは、１０．５＜１１．５３＜１２．４そして１．９＜２．４９＜３．８だからである。それ故、図４を参照すれば、キー識別モジュール２６０は、ユーザオブジェクトが仮想キーボード５０上の仮想キー「Ｔ」にタッチしていると決定し、そしてこの出来事を変換モジュール２７０に通知する。
この出来事は、必ずしもキーストロークでなくてもよい。例えば、ユーザオブジェクト即ち指は、「Ｔ」キーに早期に接触しそしてその後キーにタッチ接触状態に保たれてもよい。このような場合には、コンパニオン装置８０又は９０で実行されるアプリケーション２８０にキーストローク事象を通信しなくてもよい。
【００７８】
キー変換モジュール２７０は、各キーのアップ状態又はダウン状態を内部に記憶するのが好ましい。このモジュールは、いずれかのキーが状態を変化したかどうかフレームごとに決定する。上記例において、キー「Ｔ」が現在フレームではダウン状態にあるが手前のフレームではアップ状態にあったことが分かった場合には、変換モジュール２７０は、「キーコード」メッセージをアプリケーション２８０に送信する。この「キーコード」は、「キーダウン」事象識別子を、「Ｔ」キーを識別する「キーＩＤ」タグと共に含み、従って、「Ｔ」キーがユーザオブジェクトにより丁度「押された」ことをアプリケーション２８０に通知する。「Ｔ」キーが手前のフレーム中にダウン状態にあったことも分かると、「キーコード」は、「キー保持」事象識別子を、「Ｔ」キーに関連した「キーＩＤ」と共に含む。キーがダウン状態にある各フレーム（第１フレームを除く）において「キー保持」事象を送信すると、アプリケーション２８０を、キーに関する状態を維持しなければならないことから解放する。キー「Ｔ」が現在フレームではアップ状態にあるが手前のフレームではダウン状態にあったことが分かると、変換モジュール２７０は、「キーアップ」事象識別子を、この場合も「Ｔ」キーを識別する「キーＩＤ」タグと共に有する「キーコード」を送信し、「Ｔ」キーがユーザオブジェクトにより丁度「放された」ことをアプリケーション２８０に通知する。
【００７９】
以上の説明から、フレーム像は、ユーザオブジェクト、例えば、指先の尖端だけを含めば充分であることが明らかであろう。本発明の種々の実施形態は、仮想入力又は仮想転送装置より若干上に定義された比較的浅い体積内から収集される完全三次元未満の像情報を使用する。これらの実施形態を実施するシステムは、比較的安価に製造しそして自蔵バッテリ電源から動作することができる。実際に、このシステムは、ユーザからの情報の入力又は転送を急がせるために、ＰＤＡやセルラー電話等の一般的な装置内に構成することができる。上述したように、周囲光による不所望な作用は、能動光の実施形態では波長の選択により、カメラ（１つ又は複数）と光源との同期により、又はバックグランドノイズを表わす像を収集して減算除去する信号処理技術により減少することができる。
【００８０】
特許請求の範囲に規定された本発明の精神及び範囲から逸脱せずに、上述した実施形態の説明に対して多数の変更や修正がなされ得ることが明らかであろう。
【図面の簡単な説明】
【図１Ａ】
本発明により仮想入力装置へのユーザ入力を検出するのに使用される平面擬似三次元検出構造化光システムを示す図である。
【図１Ｂ】
本発明により仮想入力装置へのユーザ入力を検出するのに使用される平面擬似三次元検出非構造化能動的光システムを示す図である。
【図１Ｃ】
本発明により仮想入力装置へのユーザ入力を検出するのに使用される平面擬似三次元検出非構造化受動光システムを示す図である。
【図２Ａ】
本発明により三角法を使用する位置決定に関連した幾何学を示す図である。
【図２Ｂ】
本発明により離間された光学放射器及び反射器を第１光学システムとして使用するところを示す図である。
【図３Ａ】
本発明により有効視野及び像クオリティに対するＯＳ２センサ、ＯＳ２レンズ及び検出平面の向きの変化に関連した設計上の妥協を示す図である。
【図３Ｂ】
本発明により有効視野及び像クオリティに対するＯＳ２センサ、ＯＳ２レンズ及び検出平面の向きの変化に関連した設計上の妥協を示す図である。
【図３Ｃ】
本発明により有効視野及び像クオリティに対するＯＳ２センサ、ＯＳ２レンズ及び検出平面の向きの変化に関連した設計上の妥協を示す図である。
【図３Ｄ】
本発明により有効視野及び像クオリティに対するＯＳ２センサ、ＯＳ２レンズ及び検出平面の向きの変化に関連した設計上の妥協を示す図である。
【図３Ｅ】
本発明により有効視野及び像クオリティに対するＯＳ２センサ、ＯＳ２レンズ及び検出平面の向きの変化に関連した設計上の妥協を示す図である。
【図４】
本発明の実施形態により図１Ｂの例示的システムにおいてプロセッサユニットにより実行される機能を示すブロック図である。
【図５Ａ】
本発明により仮想装置が５つのユーザ選択可能な領域を有しそしてコンパニオン装置がモニタであるような実施形態を示す図である。
【図５Ｂ】
本発明により仮想装置がコンピュータのキーボードでありそしてコンパニオン装置が移動トランシーバであるような実施形態を示す図である。
【図５Ｃ】
本発明により仮想装置が壁に取り付けられるか又は投影されそしてコンパニオン装置がモニタであるような実施形態を示す図である。
【図６】
本発明による平面レンジ感知を示す図である。
【図７】
本発明によりタッチ位置を計算してそれをその対応情報或いはデータ又はコマンドを出力するのに使用するための座標距離測定の一例を示す図である。
【図４】
2004513416.tif 000014
【図５Ａ】
2004513416.tif 000015
【図６】
2004513416.tif 000016
【国際公開パンフレット】
2004513416.tif 000017
2004513416.tif 000018
2004513416.tif 000019
2004513416.tif 000020
2004513416.tif 000021
2004513416.tif 000022
2004513416.tif 000023
2004513416.tif 000024
2004513416.tif 000025
2004513416.tif 000026
2004513416.tif 000027
2004513416.tif 000028
2004513416.tif 000029
2004513416.tif 000030
2004513416.tif 000031
2004513416.tif 000032
2004513416.tif 000033
2004513416.tif 000034
2004513416.tif 000035
2004513416.tif 000036
2004513416.tif 000037
2004513416.tif 000038
2004513416.tif 000039
2004513416.tif 000040
2004513416.tif 000041
2004513416.tif 000042
2004513416.tif 000043
2004513416.tif 000044
2004513416.tif 000045
2004513416.tif 000046
2004513416.tif 000047
2004513416.tif 000048
2004513416.tif 000049
2004513416.tif 000050
2004513416.tif 000051
2004513416.tif 000052
2004513416.tif 000053
2004513416.tif 000054
2004513416.tif 000055
2004513416.tif 000056
2004513416.tif 000057
2004513416.tif 000058
2004513416.tif 000059
2004513416.tif 000060
2004513416.tif 000061
2004513416.tif 000062
2004513416.tif 000063
2004513416.tif 000064
2004513416.tif 000065
【国際調査報告】
2004513416.tif 000066
2004513416.tif 000067
2004513416.tif 000068