対話型入力システム
【課題】新規な対話型入力システムを提供する。
【解決手段】対話型入力システムは、概ね水平な主要な軸と、概ね垂直な副次的な軸とを有する矩形の入力領域であって、複数の重なる入力副領域に分割されている矩形の入力領域と、各入力副領域に関連付けられた撮像装置の組であって、各組の撮像装置は、異なった位置から各入力副領域を望み、かつ重なる視野を有する撮像装置の組とを有する。
【解決手段】対話型入力システムは、概ね水平な主要な軸と、概ね垂直な副次的な軸とを有する矩形の入力領域であって、複数の重なる入力副領域に分割されている矩形の入力領域と、各入力副領域に関連付けられた撮像装置の組であって、各組の撮像装置は、異なった位置から各入力副領域を望み、かつ重なる視野を有する撮像装置の組とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は対話型入力システムに関する。
【背景技術】
【0002】
タッチシステムが当該技術では公知であり、一般に、ユーザ入力を生成するためにポインタを使用して接触が行われるタッチ表面を有しているタッチスクリーンを含む。タッチ表面へのポインタの接触が検出され、この接触は、接触が行われたタッチ表面の領域に応じて、対応する出力を生成するのに使用される。一般的なタッチシステムは、ポインタのタッチ表面への接触を同定するためアナログ抵抗方式、電磁方式、容量方式、音声方式、または人工視覚方式を使用している。
【0003】
たとえば、2001年7月5日に出願され、2002年1月10日に公開番号WO02/03316で公開され、本発明の譲受人であるSMART Technologies Inc.に譲渡されているPCT出願PCT/CA01/00980号は、コンピュータが生成した画像が表示される受動的タッチ表面を含むタッチ画面を有している、カメラベースのタッチシステムを開示している。長方形のベゼル、つまり枠がタッチ表面を囲んでいて、デジタルカメラをその枠の角の位置で支持している。これらのデジタルカメラは、タッチ表面を囲んで見渡している、重なっている視野を有している。デジタルカメラは、タッチ表面を見渡している画像群を異なる位置から取得し、画像データを生成する。デジタルカメラによって取得された画像データは、ポインタが、取得された画像データ内に存在するかどうかを判定するためにデジタルシグナルプロセッサによって処理される。ポインタが、取得された画像データ内に存在すると判定されると、デジタルシグナルプロセッサはポインタの特徴データをマスタコントローラに伝達し、それに対して、マスタコントローラは、ポインタの特徴データを処理し、ポインタのタッチ表面に対する位置(x,y)座標を三角測量を使用して求める。ポインタ座標データは、1つまたは2つ以上のアプリケーションプログラムを実行するコンピュータに伝達される。コンピュータはポインタ座標データを使用して、タッチ表面上に表示されている、コンピュータが生成した画像を更新する。したがって、ポインタのタッチ表面上への接触は、コンピュータによって実行されるアプリケーションプログラムの実行の制御に使用するために書き込みや描画として記録することができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】PCT/CA01/00980号
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述したタッチシステムは非常に良好に動作するが、カメラの視野群がタッチ表面全体を含むように構成されているので、カメラの解像度によって、製作可能なタッチシステムの大きさが制限されていた。
【0006】
教育機関などの多くの環境では、目に見えるプレゼンテーションを多人数の集団にすることができるように大規模なタッチシステムが望まれている。並べて設置された一連のタッチパネルから作られた非常に大規模なタッチシステムが検討されている。このタッチシステムでは、大規模なタッチ表面が得られるが、タッチ表面を囲んでいる個々の枠のためにタッチ表面は連続していない。また、1つのタッチ表面から他のタッチ表面へのポインタの動きを追跡することは、面倒で、ユーザにとって使いにくい。以上からわかるように、非常に大規模のタッチシステムに対する改良が望まれている。
【0007】
したがって、本発明の目的は、対話型入力システム、タッチシステム、入力副領域の向きを設定する方法、入力副領域と関連付けられたマウス入力を処理する方法、ポインタの種類をアプリケーションプログラムに報告する方法、互いに重なる第1と第2の入力副領域の間をポインタが動く間の、滑らかなポインタ遷移を得る方法を提供することである。
【課題を解決するための手段】
【0008】
本発明の一態様によれば、概ね隣接している入力領域を定め、各々が内部でのポインタの動きに応答してポインタ座標データを生成する少なくとも2つの重なっている座標入力副領域を有しているポインタ追跡システムにおいて、座標入力副領域の重なっている部分を横切ってポインタを追跡する方法であって、
座標入力副領域群の重なっている部分内でのポインタの動きを検出することと、
重なっている部分内でのポインタの動きの結果として座標入力副領域の各々によって生成されたポインタ座標データを、定められたロジックに従って処理して、ポインタの動きを表す1組のポインタ座標データを生成することと、
を有しているポインタの追跡方法が提供される。
【0009】
一実施態様では、ポインタ座標データは定められたロジックに従って組み合わされる。定められたロジックは、重み付き平均技法であってもよい。座標入力副領域は、部分的にのみ重なっていてもよい。各座標入力副領域は、座標入力副領域を見渡す、重なっている画像を取得することと、取得された画像の各々でポインタの存在を検出することと、検出されたポインタ群を三角測量してポインタの(x,y)座標を求めることと、によってポインタ座標データを生成する。
【0010】
隣接している入力領域に概ね広がっている画像を、ポインタの動作を反映するように更新して表示してもよい。画像は、各々がそれぞれの座標入力副領域に対応している画像区分群を有していてもよい。隣接している座標入力副領域に対応している画像区分群は、座標入力副領域の重なっている部分内で実質的に継ぎ目なしにつながっている。
【0011】
本発明の他の態様によれば、重なって概ね隣接しているタッチ表面を定めていて、各々がタッチ表面へのポインタの接触に応答して、入力表面上に表示されている画像データを更新するように処理されるポインタ座標データを生成する複数の座標入力副領域を有しているタッチシステムにおいて、ポインタのタッチ表面に対する接触位置を検出する方法であって、
各座標入力副領域の重なっている画像群を取得することと、
ポインタが、隣接している座標入力副領域と重なっていない座標入力副領域の一部上に接触したときに、取得された画像群を処理してポインタデータを導き出し、導き出されたポインタデータを用いてポインタの位置を三角測量し、それによってポインタのタッチ表面に対する接触位置を求めることと、
ポインタが、隣接している座標入力副領域と重なっている座標入力副領域の一部上に接触したときに、各座標入力副領域について、取得された画像群を処理してポインタデータを導き出し、導き出されたポインタデータを使用してポインタの位置を三角測量し、その後、三角測量された位置を定められたロジックに従って処理し、それによってポインタのタッチ表面に対する接触位置を求めることと、
を有しているポインタの接触位置を検出する方法が提供される。
【0012】
本発明のさらに他の態様によれば、
重なって概ね隣接しているタッチ表面を定め、各々がタッチ表面へのポインタの接触に応答して、重なっている画像群を取得し、入力表面上に表示されている画像データを更新するために処理されるポインタ座標データを生成する複数の座標入力副領域を有し、
ポインタが、隣接している座標入力副領域と重なっていない座標入力副領域の一部上に接触しとき、座標入力副領域は、取得された画像群を処理してポインタデータを導き出し、導き出されたポインタデータを使用してポインタの位置を三角測量し、それによってポインタのタッチ表面に対する接触位置を求め、
ポインタが、隣接している座標入力副領域と重なっている座標入力副領域の一部上に接触したとき、重なっている各座標入力副領域は、取得された画像群を処理してポインタ座標データを導き出し、導き出されたポインタデータを使用してポインタの位置を三角測量し、その後、三角測量された位置を定められたロジックに従って処理し、それによってポインタのタッチ表面に対する接触位置を求める、
タッチシステムが提供される。
【0013】
本発明のまたさらに他の態様によれば、
大規模なタッチ表面と、
タッチ表面の少なくとも一方の面に沿って間隔をおいた位置に配置され、各々がタッチ表面の少なくとも一部を見渡す少なくとも3つの撮像装置であって、撮像装置の視野がタッチ表面上の各位置が少なくとも2つの撮像装置の視野に入るように重なっている撮像装置群と、
撮像装置群と通信して、タッチ表面に接触するポインタの画像群を取得する選択された撮像装置群によって生成された画像データを処理してポインタの接触位置を三角測量を使用して計算する処理手段と、
を有するタッチシステムが提供される。
【0014】
撮像装置群はポインタの撮像装置群への近さに基づいて選択される。撮像装置群の視野は、タッチ表面上の多くの位置が少なくとも3つの撮像装置群の視野に入るように重なっていてもよい。処理手段は、ポインタが少なくとも3つの撮像装置の視野内で接触しているときに、三角測量の結果を平均する。一実施態様では、撮像装置群はタッチ表面から横方向に間隔をおいており、かつタッチ表面の平面の上方に配置されている。
【0015】
本発明は、複数の重なっている座標入力副領域によって定められている入力領域上へのポインタの接触を、ユーザにわかりやすく効果的に追跡することができるという利点を有している。また、重なっている隣接している座標入力副領域間に遷移区域が設けられているので、座標入力イベントを座標入力副領域間で円滑に移動させることができる。遷移区域によって、隣接している座標入力副領域同士を揃える際の許容度も大きくなる。
【図面の簡単な説明】
【0016】
【図1】一連の座標入力副領域に分割されていて横長の長方形の概ね隣接しているタッチ表面を有している本発明の非常に大規模なタッチシステムの前部平面図である。
【図2】図1のタッチシステムの概略ブロック図である。
【図3a】タッチ表面を見渡していて重なっている画像を取得するために使用されるカメラの位置と向きを示しているタッチ表面の前部平面図である。
【図3b】タッチ表面を見渡していて重なっている画像を取得するために使用されるカメラの位置と向きを示しているタッチ表面の前部平面図である。
【図4a】タッチ表面を囲んでいて照明されているベゼルの一部の平面図である。
【図4b】タッチ表面を囲んでいて照明されているベゼルの一部の平面図である。
【図5】座標入力副領域の向きの設定中に実行される手順を示すフローチャートである。
【図6】タッチ表面上へのポインタの接触の処理中に実行される手順を示すフローチャートである。
【図7】タッチ表面を見渡していて重なっている画像を取得する他のカメラ配列の平面図である。
【図8】タッチ表面を見渡していて重なっている画像を取得する他のカメラ配列の平面図である。
【図9a】図8のタッチ表面上へのさまざまなポインタ接触を示す図である。
【図9b】図8のタッチ表面上へのさまざまなポインタ接触を示す図である。
【図9c】図8のタッチ表面上へのさまざまなポインタ接触を示す図である
【発明を実施するための形態】
【0017】
本発明の実施形態を添付の図面を参照してより詳細に説明する。
【0018】
図1と2を参照すると、非常に大規模な対話型タッチシステムが示されていて、全体が参照番号100によって示されている。タッチシステム100は、照明されているベゼル104に囲まれた、細長く、概ね長方形の隣接しているタッチ表面102を有している。照明されているベゼル104はタッチ表面102全体を赤外線で背面照明し、2002年1月30日に出願された、本発明の譲受人であるSMART Technologies, Inc.に譲渡されているAkitt他による米国特許出願第10/354、168号に記述されている種類のものである。
【0019】
カメラの複数の組106、この例では、カメラの3つの組106がタッチ表面102に組合されている。カメラの組106は、タッチ表面102の長さ方向に沿って配置されている。カメラの各組106は、長方形の各角を定めるように配置された4つのカメラを含んでいる。各組106のカメラは、タッチ表面102の一部を見渡すように向きが設定された、重なっている視野を有していて、それによって、タッチ入力副領域、つまり座標入力副領域を定めている。したがって、本実施形態では、カメラの組106は、横に並んだ一連の3つの座標入力副領域CIR1、CIR2、CIR3をそれぞれ定めている。カメラの視野は、隣接するカメラの組によって定められている座標入力副領域群が重なって2つの遷移区域TZ1/2とTZ2/3がそれぞれ定まるように、向きも設定されている。
【0020】
カメラの各組106はマスタコントローラ108と通信する。各マスタコントローラ108は、対応しているカメラの組106から受け取ったポインタ特性データを処理して、カメラが取得した画像内に写っているポインタの位置を三角測量を使用して(x,y)座標について求める。マスタコントローラ108は、ポインタ座標データをコンピュータ110に送信して、コンピュータ110がポインタ座標データを書き込みまたは描画として記録したり、ポインタ座標データをマウスイベントとして使用して、コンピュータ110によって実行されるアプリケーションプログラムの実行を制御できるようにする。コンピュータ110は、画像データをプロジェクタP1からP3に送信し、プロジェクタP1からP3は、画像をタッチ表面102に投影する。画像データは、タッチ表面102に投影されている画像がポインタの動作を反映するように、受信したポインタ座標データに応答して、コンピュータ110によって更新される。
【0021】
各プロジェクタは異なる座標入力副領域に対応していて、座標入力副領域上に画像を投影する。図からわかるように、プロジェクタP1は画像I1を座標入力副領域CIR1上に投影し、プロジェクタP2は画像I2を座標入力副領域CIR2上に投影し、プロジェクタP3は画像I3を座標入力副領域CIR3上に投影する。投影された画像I1、I2、I3は、遷移区域TZ1/2とTZ2/3の概ね中点にある垂直な線に沿って揃えられて継ぎ目なく接合され、タッチ表面102にわたって広がっている滑らかで連続した画像が得られる。この例のコンピュータ110は、デスクトップアプリケーションを実行する。各座標入力副領域は、後述の方向設定手続きの間にデスクトップの特定の部分に対応付けられる。その結果、適切なデスクトップ部分が座標入力副領域上に表示されるように、コンピュータ110は画像データをプロジェクタP1からP3に送る。
【0022】
ツールトレイ112も、各座標入力副領域に対応している。各ツールトレイ112は、割り当てられたさまざまな属性を有している多数のポインタ、つまりツール(不図示)を保持している。この例では、各ツールトレイは、多数の色付きのペンと消しゴムを収容している。ツールがツールトレイから取り上げられると、ツールトレイ112は、対応しているマスタコントローラ108に信号を送信し、それに対して、マスタコントローラ108は信号をコンピュータ110に伝達して選択されたツールが識別できるようにする。このようにして、タッチ表面102への接触に色付きのペンが使用されると、ペンの動きを追った適切な色の筆記がタッチ表面上に投影される。タッチ表面102への接触に消しゴムが使用されると、タッチ表面に投影されている筆記の、消しゴムが移動した部分が消去される。良く知られているように、デスクトップアプリケーションは、各座標入力副領域への接触に使用されるポインタに属性を割り当てるように、条件を設定することができる。
【0023】
図1、3a、3bをここで参照して、カメラの組106内のカメラの位置と向きを詳しく説明する。座標入力副領域CIR1に対応しているカメラの組106は、タッチ表面102の左上部と左下部の角に配置されているカメラC1とC0およびタッチ表面102の長さ方向の中間位置で、タッチ表面102の上部と下部に配置されているカメラC2とC3を含んでいる。カメラC1は、その光軸が概ね中間のカメラC3の方を向くように向きが設定されていて、垂直方向に対して45度の角度をなしている。カメラC0は、その光軸が概ね中間のカメラC2に向くように向きが設定されていて、垂直方向に対して45度の角度をなしている。中間のカメラC2は、その視野の縁がカメラC0の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。中間のカメラC3は、その視野の縁がカメラC1の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。
【0024】
座標入力副領域CIR3に対応しているカメラの組106は、タッチ表面102の右上部と右下部の角に配置されているカメラC2″とC3″およびタッチ表面102の長さ方向の中間位置で、タッチ表面102の上部と下部に配置されているカメラC1″とC0″を含んでいる。カメラC2″は、その光軸が概ね中間のカメラC0″を向くように向きが設定されていて、垂直方向に対して45度の角度をなしている。カメラC3″は、その光軸が概ね中間のカメラC1″を向くように方向が設定されていて、垂直方向に対して45度の角度をなしている。中間のカメラC1″は、その視野の縁がカメラC3″の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。中間のカメラC0″は、その視野の縁がカメラC2″の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。
【0025】
座標入力副領域CIR2に対応しているカメラの組106は、タッチ表面102の上部に沿って配置されている横方向に間隔をおいたカメラC1′とC2′およびタッチ表面102の下部に沿って配置されている横方向に間隔をおいたカメラC0′とC3′を含んでいる。左上部のカメラC1′は、カメラC1とC2との間に位置していて、その視野の縁がカメラC3′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。右上部のカメラC2′は、カメラC1″とC2″との間に位置していて、その視野の縁がカメラC0′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。左下部のカメラC0′は、カメラC0とC3との間に位置していて、その視野の縁がカメラC2′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。右下部のカメラC3′は、カメラC0″とC3″との間に位置していて、その視野の縁がカメラC1′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。
【0026】
タッチ表面102の各角と上下に沿って配置されているカメラは、図4aと4bに示しているように、照明されたベゼル104に収容されている。各カメラは、2003年3月11日に出願された、本発明の譲受人であるSMART Technologies Inc.に譲渡されているMorrison他による米国特許出願第10/384,796号に開示されている種類のものである。各カメラは、90°よりもわずかに広い視野を有していて、タッチ表面102を見渡す画像を非常に高いフレームレートで取得するように動作可能である。各カメラによって取得された画像は、カメラ内で処理されて、取得された画像内にポインタが存在しているかどうかが判定される。ポインタがカメラによって取得された画像内に存在する場合、ポインタの特徴データがカメラによって生成され、関係するマスタコントローラ108に伝達される。マスタコントローラ108は、ポインタ特徴データを重なっている視野を有している1対のカメラから受信すると、ポインタ特徴データを三角測量してポインタの位置を(x,y)座標について計算する。
【0027】
各座標入力副領域は、座標入力副領域の対向している角にあるカメラ間の対角線を使用して4つの4分領域に分割される。各4分領域内でのポインタ追跡を可能にする画像の取得は、カメラの組の中の異なるカメラの対が受け持つ。上部の4分領域QTはカメラの組の中の左下部と右下部のカメラが受け持ち、下部の4分領域QBはカメラの組の中の左上部と右上部のカメラが受け持ち、左の4分領域QLはカメラの組の中の左上部と左下部のカメラが受け持ち、右の4分領域QRはカメラの組の中の右上部と右下部のカメラが受け持つ。
【0028】
各カメラは、座標入力副領域の2つの4分領域を見渡す画像の取得だけを受け持つため、各カメラの視野は座標入力副領域の1/2だけをカバーすればよい。この要件を十分に満たした視野を有しているカメラを使用することによって、カメラの向きの設定の柔軟性が大きくなる。たとえば、中間のカメラを傾けてそれらカメラの視野の縁が垂直方向に対して10°の角度をなすようにすることで、4:3の縦横比を維持したまま、カメラをタッチ表面内に配置せずに済むようにすることでカメラによるブラインドスポット(blind spot)を発生させずに、カメラの視野にタッチ表面102全体を入れることができる。以上からわかるように、中間の4つカメラをタッチ表面102上に配置した場合、それらのカメラはタッチ表面の一部分で互いの視野を遮断することになる。また、視野の縁が垂直方向に対して小さい角度をなすように中間のカメラを配置することで、照明されたベゼル104による赤外線照明と概ね同一線上になるように、カメラの位置に赤外線照明を設けることができる。これによって、暗い点がタッチ表面の上部と下部に沿って中間のカメラの位置に発生するのを避けることができる。
【0029】
ここでタッチシステム100の全体動作を説明する。最初に、タッチシステム100を較正して、座標入力副領域の座標系が表示座標系にマッピングされ、遷移区域内の座標入力副領域群の重なっている部分が互いにマッピングされるように、向き設定手続きがコンピュータ110によって実行される。
【0030】
タッチシステム100が較正された状態で、ポインタが、遷移区域の外側の座標入力副領域群のうちの1つの内部の4分領域に接触すると、その4分領域に割り当てられている1対のカメラによって取得された画像がカメラと、その関係するマスタコントローラ108によって、本発明の譲受人であるSMART Technologies Inc.に譲渡されたMorrison他による米国特許出願第10/294,917号に記述されているように処理される。このようにして、ポインタの接触部分を囲んでいる境界ボックス、つまり境界領域が決定され、座標入力副領域に対するポインタの位置を(x,y)座標について計算することができる。したがって、この場合、1つのマスタコントローラ108だけがポインタ座標データをコンピュータ110に通知する。コンピュータ110は、ポインタの接触が書き込みイベントの場合、ポインタ座標データを書き込みまたは描画として記録し、ポインタの接触がマウスイベントの場合、コンピュータ110によって実行されているアクティブなアプリケーションプログラムにポインタ座標データを渡す。
【0031】
一般に、ポインタの接触が書き込みイベントであるか、マウスイベントであるかを判定するために、ツールの種類と最初の接触の点が調べられる。描画ツールを使用して接触が行われ、接触が、投影されているデスクトップ部分内の指定された書き込み領域内である場合、ポインタの接触は書き込みイベントとして扱われ、そうでない場合、ポインタの接触はマウスイベントとして扱われる。最初の接触で、ポインタにはポインタ識別子(ID)が与えられ、ポインタIDは、割り当てられたポインタの任意の属性(つまり、形状、色、幅等)と共に保存される。
【0032】
ポインタが遷移区域内のタッチ表面102に接触したときには、遷移区域を監視する2組のカメラに関係する2つのマスタコントローラ108が、前述と同様にポインタ座標を生成し、生成されたポインタ座標をコンピュータ110に伝達する。通知された2つのポインタ座標を受信すると、コンピュータ110は、定められたロジック、この場合は重み付き平均技法を使用して、ポインタの接触位置を表している1つの(x,y)座標の対を生成する。コンピュータ110は次に、ポインタの接触が書き込みイベントの場合、ポインタ座標データを書き込みまたは描画として記録し、ポインタの接触がマウスイベントの場合、ポインタ座標データを、コンピュータ110によって実行されているアクティブなアプリケーションプログラムに渡す。
【0033】
重み付き平均技法を使用して、遷移区域内でポインタの位置を求めることによって、ポインタが1つの座標入力副領域から隣接している座標入力副領域に移動するときにポインタの滑らかな動きが達成される。ポインタが1つの座標入力副領域から隣接している座標入力副領域に移動するとき、ポインタに割り当てられている属性はポインタのIDと共に保存されているので、ポインタの属性はコンピュータ110によって保持される。あるいは、ポインタが1つの座標入力副領域から隣接している座標入力副領域に移動するとき、ポインタの属性を、ポインタアップイベントの後、またはある期間ポインタが動作しなかった後に、新しい座標入力副領域に対応しているデスクトップ部分によって設定されている属性に変更することもできる。
【0034】
図5と6を参照して、向き設定手続きとポインタの追跡をさらに具体的に説明する。
【0035】
向き設定手続き
コンピュータ110によって実行される向き設定手続きは、本発明の譲受人であるSMART Technologies Inc.に譲渡されたMartinに対する米国特許第5,448,263号に記述されている向き設定手順と同様である。ここで図5を参照すると、向きの設定時にコンピュータ110によって実行される手順が示されている。向き設定手続きが開始されると(ステップ200)、プロジェクタの1つによって、そのプロジェクタに対応している座標入力副領域上に、向き目標設定用のデスクトップ部分が目標と共に投影される(ステップ202)。向き設定用のデスクトップ部分が、正しい座標入力副領域上に表示されている場合、デスクトップ部分が、座標入力副領域に対応付けられ、ユーザは、座標入力副領域の目標の位置にポインタを使用して接触するように促される(ステップ204と206)。接触するたびに生成されたポインタ座標データが収集されて、座標入力副領域の座標系を表示座標系にマッピングすることができる(ステップ208)。目標の各々に対するポインタ座標データが生成されると(ステップ210)、コンピュータ110は、座標入力副領域が、複数の重なっている座標入力副領域の構成の一部であることを示す適切なフラグが設定されているかどうかを判定する(ステップ212)。
【0036】
座標入力副領域が、複数の重なっている座標入力副領域構成の一部である場合は、コンピュータ110は、向きが設定された座標入力副領域が、デスクトップ部分が表示されていて、向きを設定中の座標入力副領域の右側に存在するかどうかを判定する(ステップ214)。そのような向きの座標入力副領域が存在していると、向きを設定中の座標入力副領域を表しているオブジェクトが、右隣の座標入力副領域のアドレスを含むように更新される(ステップ216)。コンピュータ110は次に、右隣の座標入力副領域を表しているオブジェクトを、向きを設定中の、つまり左隣の座標入力副領域のアドレスを含むように更新する(ステップ218)。
【0037】
ステップ218の完了時、または、向きが設定済みの座標入力副領域が右側に存在しないとステップ214で判定された場合、コンピュータ110は、向きが設定済みの座標入力副領域が、デスクトップ部分が表示されている、向きを設定中の座標入力副領域の左側に存在するかどうかを判定する(ステップ220)。そのような向きを有する座標入力副領域が存在している場合、向きを設定中の座標入力副領域を表しているオブジェクトが、左側の座標入力副領域のアドレスを含むように更新される(ステップ222)。コンピュータ110は次に、左隣の座標入力副領域を表しているオブジェクトを、向きを現在設定中の、つまり右隣の座標入力副領域のアドレスを含むように更新する(ステップ224)。
【0038】
ステップ224の完了時、または向きが設定された座標入力副領域が左に存在しないとステップ220で判定された場合、または、ステップ212で判定されたように、座標入力副領域が、複数の重なっている座標入力副領域構成の一部ではない場合、ステップ208で求められたポインタ座標データが登録場所に保存される(ステップ226)。向き設定手続きが、他の座標入力副領域群に対して行なわれなかった場合、デスクトップの他の部分が目標と共に、隣接している座標入力副領域上に表示され、方向設定手続きはステップ204に戻る(ステップ228)。向き設定手続きが、他の座標入力副領域群に対して行なわれた場合や、ステップ212で判定されたように、座標入力副領域が複数の重なっている座標入力副領域構成の一部ではない場合、向き設定手続きは終了する。
【0039】
ステップ204で、デスクトップ部分が適切な座標入力副領域上に表示されていない場合、デスクトップ部分を、スペースバーを押して、次の座標入力副領域に移動することができる(ステップ230)。スペースバーが押されると、コンピュータ110は、デスクトップ部分が、隣接している座標入力副領域上に表示されるように、出力画像データを次のプロジェクタに送信する(ステップ232)。
【0040】
ステップ226で登録場所に保存されたポインタ座標データによって、タッチ表面102全体に対するポインタの接触を表示座標にマッピングすることと、座標入力副領域群の重なっている部分を登録することができる。
【0041】
ポインタの追跡
ポインタ座標データが、対応している座標入力副領域上へのポインタの接触に応答してマスタコントローラ108から出力されると、ポインタ座標データはコンピュータ110に送られる(ステップ300)。それに応答して、コンピュータ110は、向き設定手続きの結果を使用してポインタ座標データの向きを表示座標の方へ設定し(ステップ302)、それから、ポインタ座標データを調べてポインタの接触がマウスイベントか書き込みイベントかを判断する(ステップ304)。ポインタの接触がマウスイベントを表している場合、マウスイベントが、その種類を判定するために調べられる(ステップ306)。マウスイベントが、座標入力副領域への最初の接触を表している場合、マウスダウンイベントが複数の座標入力副領域に共有されている遷移区域内の他の座標入力副領域上に存在しているかどうかが判定される(ステップ308)。そのようなマウスダウンイベントが他の座標入力副領域上に存在しない場合、マウスイベントが生成され(ステップ310)、座標入力副領域に対する生成されたマウスイベントが保存される(ステップ312)。保存されたマウスイベントは次に、コンピュータ110上で実行中のアクティブなアプリケーションに渡される(ステップ314)。ステップ308で、マウスダウンイベントが存在している場合、すべてのマウスダウンイベントの位置を現在のマウスイベントの位置と平均することで新しいマウスイベントが生成される(ステップ316)。生成された新しいマウスイベントは同様に保存され(ステップ312)、コンピュータ110上で実行中のアクティブなアプリケーションに渡される(ステップ314)。
【0042】
ステップ306で、マウスイベントが座標入力副領域内の、移動による接触である場合、すべてのマウスダウンイベントの位置を現在のマウスイベントの位置と平均することで新しいマウスイベントが生成される(ステップ316)。生成された新しいマウスイベントは同様に保存され(ステップ312)、コンピュータ110上で実行中のアクティブなアプリケーションに渡される(ステップ314)。
【0043】
ステップ306では、マウスイベントが座標入力副領域からのマウスを離す接触を表している場合、座標入力副領域に対応しているマウスデータが削除される(ステップ320)。それから、マウスダウンイベントが他の座標入力副領域に存在しているかどうかが判定される(ステップ322)。マウスダウンイベントが存在しない場合、リムーブマウスイベントが生成され(ステップ324)、生成されたリムーブマウスイベントがコンピュータ110上で実行中のアクティブなアプリケーションプログラムに渡される(ステップ314)。マウスダウン状態が他の座標入力副領域に存在している場合、マウスイベントは無視される(ステップ326)。
【0044】
ステップ304で、ポインタの座標入力副領域上への接触が書き込みイベントを表している場合、書き込みイベントはその種類が調べられる(ステップ340)。書き込みイベントが、入力副領域への最初の接触を表している場合、接触ダウン情報が、ポインタ(x,y)座標データと共に保存される(ステップ342)。それから、この保存された情報が、隣接している座標入力副領域上へのポインタ接触に一致しているかどうかが判定される(ステップ344)。保存された情報が、隣接している座標入力副領域上へのポインタ接触に一致していない場合、書き込みイベントに対する接触識別子が生成される。(ステップ346)。この接触識別子に対するポインタ情報が保存される(ステップ348)。ポインタ(x,y)座標データはコンピュータ110によって書き込みまたは描画として記録される(ステップ350)。
【0045】
ステップ344で、保存された情報が、遷移区域でのポインタ接触を示している隣接している座標入力副領域上へのポインタの接触と一致している場合、接触識別子とポインタ情報が、隣接した座標入力副領域から取得される(ステップ352)。次に、ポインタが、現在の座標入力副領域に対応している投影されているデスクトップ部分に接触したのか、または隣接している座標入力副領域に対応している投影されているデスクトップ部分へ接触したのかが判定される(ステップ354)。ポインタが隣接している座標入力副領域に接触していた場合、記録されているポインタ(x、y)座標データが、隣接している座標入力副領域によって処理されるため、ポインタ座標データは無視される(ステップ356)。そうでない場合、ポインタ座標データは、コンピュータ110によって書き込みまたは描画として記録される(ステップ350)前に、隣接している座標入力副領域によって記録されているポインタ(x、y)座標データと平均される(ステップ358)。
【0046】
ポインタ座標データの平均中に、コンピュータ110は、定められたロジックに従って、通知されたy座標を処理して、1つのy座標を求める。具体的には、コンピュータ110は、重み付き平均技法を使用してy座標を計算する。コンピュータ110によって使用される、y座標を1対の通知されたy座標から計算する重み付き平均技法は、ポインタが座標入力副領域CIRxから遷移区域に進入し、座標入力副領域CIRx+1へ向かう方向に移動していると仮定して、以下の規則に従う。
y座標=(100−P%)×CIRxのy座標+P%×CIRx+1のy座標
ここで、P%は、遷移区域をx方向に移動した、パーセントで表した距離である。
【0047】
以上からわかるように、この場合、第1の遷移境界、つまり座標入力副領域CIRxと遷移区域との間の境界では、y座標は、座標入力副領域CIRxに対応しているマスタコントローラ108によって通知されているy座標に等しい。第2の遷移境界、つまり遷移区域と座標入力副領域CIRx+1との間の境界では、y座標は、座標入力副領域CIRx+1に対応しているマスタコントローラ108によって通知されているy座標に等しい。遷移区域の中間点では、y座標は、座標入力副領域CIRx+1とCIRx+1に対応している両マスタコントローラ108によって通知されているy座標の平均に等しい。
【0048】
ステップ340で、書き込みイベントが座標入力副領域上での移動による接触を表している場合、ポインタ(x,y)座標データが保存される(ステップ360)。次に、ポインタ(x,y)座標データが、隣接している座標入力副領域によって生成されたポインタ(x,y)座標データに一致するかどうかが判定される(ステップ362)。ポインタ(x,y)座標データが、隣接している座標入力副領域によって生成されたポインタ(x,y)座標データに一致していない場合、ポインタ(x,y)座標データは、コンピュータ110によって書き込みまたは描画として記録される(ステップ350)。ポインタ(x,y)座標データが、隣接している座標入力副領域によって生成されたポインタ(x,y)座標データに一致している場合、ポインタが現在の座標入力副領域上に対応している投影されているデスクトップ部分上、または隣接している座標入力副領域上に対応している投影されているデスクトップ部分上に接触したかどうかが判定される(ステップ354)。ポインタが、隣接している座標入力副領域に接触していた場合、記録されているポインタ(x、y)座標データが、隣接している座標入力副領域によって処理されるため、ポインタ座標データは無視される(ステップ356)。そうでない場合、ポインタ座標データは、コンピュータ110によって書き込みまたは描画として記録される(ステップ350)前に、前述のようにして隣接している座標入力副領域によって記録されているポインタ(x、y)座標データと平均される(ステップ358)。
【0049】
ステップ340で、書き込みイベントが、接触が解除された状態を表している座標入力副領域へのロスト接触を表している場合(ステップ380)、隣接している座標入力副領域が、一致している書き込みイベントを生成したかどうかが判定される(ステップ382)。そうでない場合、ステップ350で、クリア接触状態イベントがコンピュータ110によって生成され、記録される。隣接している座標入力副領域が、一致している書き込みイベントを生成した場合、書き込みイベントは無視される(ステップ384)。
【0050】
カメラの各組106は、対応しているマスタコントローラ108と通信するように図示されているが、取得された画像から導き出されたポインタデータを三角測量する他の処理構成を使用してもよい。たとえば、1つのマスタコントローラ108を各組106のカメラによって生成されたポインタデータの三角測量に使用してもよい。この場合、座標入力副領域を見渡す複数の画像が同時に取得されるように同期信号をカメラの各組に同時に伝達することが好ましい。
【0051】
また、タッチシステム100は、各座標入力副領域に対応しているプロジェクタを有しているように説明しているが、他のプロジェクタ構成を使用してもよいことが理解されるであろう。たとえば、タッチ表面102に広がる画像を投影する1つのプロジェクタ、または、タッチ表面102に広がる、重なっている複数の画像を投影する複数のプロジェクタの他の組み合わせが適している。複数のプロジェクタが使用される場合、投影された複数の画像は重なっていてもよい。たとえば、望むならば、各プロジェクタが、タッチ表面102全体に広がる画像を投影してもよく、この場合、投影されている各画像は完全に重なっている。あるいは、投影されている複数の画像は、遷移区域だけで重なっていてもよい。この場合、投影されている複数の画像は、遷移区域TZ1/2とTZ2/3内の画像の縁の位置で混じり合って、タッチ表面102に広がる滑らかで連続した画像が得られる。
【0052】
当業者に理解されるように、重なっている複数の座標入力副領域は、図示のように水平の列になるように配置されている必要はない。複数の座標入力副領域は、垂直の列に配置したり、N×Mの行列状に配置してもよい。
【0053】
前述の例では、タッチ表面102とカメラの向きは、座標入力副領域の形状に合うように4:3の縦横比を維持するように構成されている。座標入力副領域の縦横比が1と等しいかそれよりも小さい場合、中央のカメラの向きを、その視野の縁が垂直になるように設定することができる。あるいは、この場合、カメラの向きはそのままで、カメラの視野を広げることもできる。実際、カメラの視野で座標入力副領域の割り当てられた4分領域を観察できるならば、カメラを垂直方向の事実上任意の角度に向けることができる。
【0054】
望むならば、タッチ表面102への接触に使用される各ポインタにグローバル属性を割り当て、それによって各座標入力副領域に対応しているツールトレイを不要にすることもできる。また、コンピュータ110は、タッチ表面102上の各部分に表示される1つのデスクトップアプリケーションを実行する必要はない。その代わりに、コンピュータ110は、1つの座標入力副領域から他の座標入力副領域へポインタの属性を移動できるようにしながら、各座標入力副領域上で個別のアプリケーションプログラムを実行して表示することもできる。
【0055】
タッチシステム100は、タッチ表面102上でのポインタの検出にマシンビジョンを使用しているので、タッチシステム100は、各々がポインタを使用して異なった位置でタッチ表面に同時に接触する複数のユーザをサポートすることができる。この場合、ユーザの入力を視覚的に区別できるようにする必要はないが、異なるユーザがポインタを使用して入力した書き込みは通常、投影されている画像内に異なる色を使用したり、他の視覚的な区別を使用して表示される。ポインタが座標入力副領域同士間を移動して、複数のユーザが同じ座標入力副領域に対してポインタを接触させるようになった場合、最後の接触との近さに基づいた判定アルゴリズムを使用して、ポインタの複数の接触を区別する。
【0056】
ここで図7を参照すると、大規模なタッチシステム用の他のカメラ配列が示されている。本実施形態では、カメラC1からC8が、タッチ表面402の上部にだけ沿って配置されていて、タッチ表面にわたって下方を見下ろしている。特に、カメラはタッチ表面402の左上部と右上部の角に配置されている。カメラの中間の対は、タッチ表面402の上部に沿って間隔をおいた位置に配置されている。カメラの視野は点線で示している。図からわかるように、カメラ群の視野は、タッチ表面402上の各位置が少なくとも2つのカメラの視野に入るように重なっている。このような配置によっても、もちろん、三角測量を使用してタッチ表面402全体にわたってポインタを追跡することができる。
【0057】
図8は、大規模なタッチシステム用のさらに他のカメラ配列を示している。本実施形態では、等間隔のカメラC1からC7が、タッチ表面502の上部の縁の上方に配置されていて、タッチ表面にわたって下方を見下ろしている。カメラ群の視野は点線で示されて、図からわかるように、カメラ群の視野はタッチ表面502上の各位置が少なくとも2つのカメラの視野に入るように重なっている。このような配置によっても、三角測量を使用してタッチ表面502全体にわたってポインタを追跡することができる。実際、本実施形態では、タッチ表面502上のほとんどの位置は、2つよりも多くのカメラの視野に入るので、各ポインタのタッチ表面上への接触について複数の三角測量の結果を生成することができる。ポインタの接触位置を求めるために使用する三角測量結果を選択するために、ポインタの接触位置に応じて、異なるロジックを使用することができる。
【0058】
たとえば、図9aに示されているように、タッチ表面502上のポインタPの位置は、カメラC1とC2によって取得された画像から導き出されたポインタ情報を三角測量することと、場合によっては、カメラC3によって取得された画像から導き出されたポインタ情報を三角測量することによって計算することができる。この後者の場合、カメラC1とC3およびカメラC2とC3によって取得された画像から導き出されたポインタ情報を三角測量することで、複数の三角測量結果を得ることができる。複数の三角測量結果を平均したり他のロジックに従って処理して、1つのポインタの接触位置が得られる。カメラC3がポインタPから遠すぎると考えられる場合、カメラC3を無視することができる。あるいは、カメラC3によって取得された画像から導き出されたポインタ情報をポインタの追跡に使用して、いつポインタがカメラC3の特定の近傍に達したかを判定することができる。ポインタPがカメラC3の特定の近傍に達したときには、カメラC3によって取得された画像群から導き出されたポインタ情報を三角測量してタッチ表面502へのポインタの接触位置を求めることができる。
【0059】
図9bと9cは、ポインタのタッチ表面502上の他の位置と、カメラによって取得された画像群から導き出されたさまざまな三角測量結果を示している。図9bの例では、タッチ表面502上のポインタPの位置は、カメラC1、C2、C3によって取得された画像から導き出される。具体的には、カメラの対C1とC2、カメラの対C1とC3、カメラの対C2とC3によって取得された画像群から導き出された三角測量結果が平均されるか、他のロジックに従って処理されて1つの接触位置が得られる。カメラC4を使用してポインタPを画像内で撮像できるならば、カメラC4も使用してもよい。カメラC4がポインタPから遠すぎると考えられる場合、カメラC4を無視することができる。あるいは、カメラC4によって取得された画像から導き出されたポインタ情報をポインタの追跡に使用して、ポインタがカメラC4の特定の近傍にいつ達したかを判定することができる。ポインタPがカメラC4の特定の近傍に達したときには、カメラC4によって取得された画像から導き出されたポインタ情報を三角測量してタッチ表面502上のポインタの位置を求めることができる。この場合、カメラの対C1とC4、カメラの対C2とC4、カメラの対C3とC4によって取得された画像群から導き出された三角測量結果を、他の三角測量結果と組み合わせて使用することができる。
【0060】
図9cの例では、タッチ表面502上のポインタPの位置は、カメラC2とC3によって取得された画像群から導き出される。カメラC1とC4を使用してポインタPを画像内で撮像できる場合は、カメラC1とC4も使用することができる。カメラC1とC4がポインタPから遠すぎると考えられる場合は、カメラC1とC4を無視することができる。あるいは、カメラC1とC4によって取得された画像から導き出されたポインタ情報をポインタの追跡に使用して、ポインタがカメラC1とC4の特定の近傍にいつ達したかを判定することができる。ポインタPがカメラC1とC4の特定の近傍に達したときには、これらのカメラによって取得された画像群から導き出されたポインタ情報を三角測量してタッチ表面502上のポインタの位置を求めることができる。特に、カメラの対C1とC2、カメラの対C1とC3、カメラの対C1とC4、カメラの対C2とC3、カメラの対C2とC4、カメラの対C3とC4によって取得された画像群から導き出された三角測量結果が平均されるか、他のロジックに従って処理されて1つのポインタ接触位置が得られる。以上からわかるように、カメラの異なる対の視野に入るタッチ表面502上の領域は、図1から6の実施形態を参照して説明した遷移区域と同様である。
【0061】
当業者は、前述の実施形態は視覚をもとにしたタッチシステムを示しているが、ポインタを追跡する本方法は、遷移区域群を定めている、重なっている入力領域群を有している他の種類のタッチシステムにも使用可能なことを理解することであろう。
【0062】
本発明の実施形態を、図を参照して説明したが、当業者は添付の請求の範囲によって定まる本発明の要旨と範囲から逸脱することなく変形や修正が可能なことを理解するであろう。
【技術分野】
【0001】
本発明は対話型入力システムに関する。
【背景技術】
【0002】
タッチシステムが当該技術では公知であり、一般に、ユーザ入力を生成するためにポインタを使用して接触が行われるタッチ表面を有しているタッチスクリーンを含む。タッチ表面へのポインタの接触が検出され、この接触は、接触が行われたタッチ表面の領域に応じて、対応する出力を生成するのに使用される。一般的なタッチシステムは、ポインタのタッチ表面への接触を同定するためアナログ抵抗方式、電磁方式、容量方式、音声方式、または人工視覚方式を使用している。
【0003】
たとえば、2001年7月5日に出願され、2002年1月10日に公開番号WO02/03316で公開され、本発明の譲受人であるSMART Technologies Inc.に譲渡されているPCT出願PCT/CA01/00980号は、コンピュータが生成した画像が表示される受動的タッチ表面を含むタッチ画面を有している、カメラベースのタッチシステムを開示している。長方形のベゼル、つまり枠がタッチ表面を囲んでいて、デジタルカメラをその枠の角の位置で支持している。これらのデジタルカメラは、タッチ表面を囲んで見渡している、重なっている視野を有している。デジタルカメラは、タッチ表面を見渡している画像群を異なる位置から取得し、画像データを生成する。デジタルカメラによって取得された画像データは、ポインタが、取得された画像データ内に存在するかどうかを判定するためにデジタルシグナルプロセッサによって処理される。ポインタが、取得された画像データ内に存在すると判定されると、デジタルシグナルプロセッサはポインタの特徴データをマスタコントローラに伝達し、それに対して、マスタコントローラは、ポインタの特徴データを処理し、ポインタのタッチ表面に対する位置(x,y)座標を三角測量を使用して求める。ポインタ座標データは、1つまたは2つ以上のアプリケーションプログラムを実行するコンピュータに伝達される。コンピュータはポインタ座標データを使用して、タッチ表面上に表示されている、コンピュータが生成した画像を更新する。したがって、ポインタのタッチ表面上への接触は、コンピュータによって実行されるアプリケーションプログラムの実行の制御に使用するために書き込みや描画として記録することができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】PCT/CA01/00980号
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述したタッチシステムは非常に良好に動作するが、カメラの視野群がタッチ表面全体を含むように構成されているので、カメラの解像度によって、製作可能なタッチシステムの大きさが制限されていた。
【0006】
教育機関などの多くの環境では、目に見えるプレゼンテーションを多人数の集団にすることができるように大規模なタッチシステムが望まれている。並べて設置された一連のタッチパネルから作られた非常に大規模なタッチシステムが検討されている。このタッチシステムでは、大規模なタッチ表面が得られるが、タッチ表面を囲んでいる個々の枠のためにタッチ表面は連続していない。また、1つのタッチ表面から他のタッチ表面へのポインタの動きを追跡することは、面倒で、ユーザにとって使いにくい。以上からわかるように、非常に大規模のタッチシステムに対する改良が望まれている。
【0007】
したがって、本発明の目的は、対話型入力システム、タッチシステム、入力副領域の向きを設定する方法、入力副領域と関連付けられたマウス入力を処理する方法、ポインタの種類をアプリケーションプログラムに報告する方法、互いに重なる第1と第2の入力副領域の間をポインタが動く間の、滑らかなポインタ遷移を得る方法を提供することである。
【課題を解決するための手段】
【0008】
本発明の一態様によれば、概ね隣接している入力領域を定め、各々が内部でのポインタの動きに応答してポインタ座標データを生成する少なくとも2つの重なっている座標入力副領域を有しているポインタ追跡システムにおいて、座標入力副領域の重なっている部分を横切ってポインタを追跡する方法であって、
座標入力副領域群の重なっている部分内でのポインタの動きを検出することと、
重なっている部分内でのポインタの動きの結果として座標入力副領域の各々によって生成されたポインタ座標データを、定められたロジックに従って処理して、ポインタの動きを表す1組のポインタ座標データを生成することと、
を有しているポインタの追跡方法が提供される。
【0009】
一実施態様では、ポインタ座標データは定められたロジックに従って組み合わされる。定められたロジックは、重み付き平均技法であってもよい。座標入力副領域は、部分的にのみ重なっていてもよい。各座標入力副領域は、座標入力副領域を見渡す、重なっている画像を取得することと、取得された画像の各々でポインタの存在を検出することと、検出されたポインタ群を三角測量してポインタの(x,y)座標を求めることと、によってポインタ座標データを生成する。
【0010】
隣接している入力領域に概ね広がっている画像を、ポインタの動作を反映するように更新して表示してもよい。画像は、各々がそれぞれの座標入力副領域に対応している画像区分群を有していてもよい。隣接している座標入力副領域に対応している画像区分群は、座標入力副領域の重なっている部分内で実質的に継ぎ目なしにつながっている。
【0011】
本発明の他の態様によれば、重なって概ね隣接しているタッチ表面を定めていて、各々がタッチ表面へのポインタの接触に応答して、入力表面上に表示されている画像データを更新するように処理されるポインタ座標データを生成する複数の座標入力副領域を有しているタッチシステムにおいて、ポインタのタッチ表面に対する接触位置を検出する方法であって、
各座標入力副領域の重なっている画像群を取得することと、
ポインタが、隣接している座標入力副領域と重なっていない座標入力副領域の一部上に接触したときに、取得された画像群を処理してポインタデータを導き出し、導き出されたポインタデータを用いてポインタの位置を三角測量し、それによってポインタのタッチ表面に対する接触位置を求めることと、
ポインタが、隣接している座標入力副領域と重なっている座標入力副領域の一部上に接触したときに、各座標入力副領域について、取得された画像群を処理してポインタデータを導き出し、導き出されたポインタデータを使用してポインタの位置を三角測量し、その後、三角測量された位置を定められたロジックに従って処理し、それによってポインタのタッチ表面に対する接触位置を求めることと、
を有しているポインタの接触位置を検出する方法が提供される。
【0012】
本発明のさらに他の態様によれば、
重なって概ね隣接しているタッチ表面を定め、各々がタッチ表面へのポインタの接触に応答して、重なっている画像群を取得し、入力表面上に表示されている画像データを更新するために処理されるポインタ座標データを生成する複数の座標入力副領域を有し、
ポインタが、隣接している座標入力副領域と重なっていない座標入力副領域の一部上に接触しとき、座標入力副領域は、取得された画像群を処理してポインタデータを導き出し、導き出されたポインタデータを使用してポインタの位置を三角測量し、それによってポインタのタッチ表面に対する接触位置を求め、
ポインタが、隣接している座標入力副領域と重なっている座標入力副領域の一部上に接触したとき、重なっている各座標入力副領域は、取得された画像群を処理してポインタ座標データを導き出し、導き出されたポインタデータを使用してポインタの位置を三角測量し、その後、三角測量された位置を定められたロジックに従って処理し、それによってポインタのタッチ表面に対する接触位置を求める、
タッチシステムが提供される。
【0013】
本発明のまたさらに他の態様によれば、
大規模なタッチ表面と、
タッチ表面の少なくとも一方の面に沿って間隔をおいた位置に配置され、各々がタッチ表面の少なくとも一部を見渡す少なくとも3つの撮像装置であって、撮像装置の視野がタッチ表面上の各位置が少なくとも2つの撮像装置の視野に入るように重なっている撮像装置群と、
撮像装置群と通信して、タッチ表面に接触するポインタの画像群を取得する選択された撮像装置群によって生成された画像データを処理してポインタの接触位置を三角測量を使用して計算する処理手段と、
を有するタッチシステムが提供される。
【0014】
撮像装置群はポインタの撮像装置群への近さに基づいて選択される。撮像装置群の視野は、タッチ表面上の多くの位置が少なくとも3つの撮像装置群の視野に入るように重なっていてもよい。処理手段は、ポインタが少なくとも3つの撮像装置の視野内で接触しているときに、三角測量の結果を平均する。一実施態様では、撮像装置群はタッチ表面から横方向に間隔をおいており、かつタッチ表面の平面の上方に配置されている。
【0015】
本発明は、複数の重なっている座標入力副領域によって定められている入力領域上へのポインタの接触を、ユーザにわかりやすく効果的に追跡することができるという利点を有している。また、重なっている隣接している座標入力副領域間に遷移区域が設けられているので、座標入力イベントを座標入力副領域間で円滑に移動させることができる。遷移区域によって、隣接している座標入力副領域同士を揃える際の許容度も大きくなる。
【図面の簡単な説明】
【0016】
【図1】一連の座標入力副領域に分割されていて横長の長方形の概ね隣接しているタッチ表面を有している本発明の非常に大規模なタッチシステムの前部平面図である。
【図2】図1のタッチシステムの概略ブロック図である。
【図3a】タッチ表面を見渡していて重なっている画像を取得するために使用されるカメラの位置と向きを示しているタッチ表面の前部平面図である。
【図3b】タッチ表面を見渡していて重なっている画像を取得するために使用されるカメラの位置と向きを示しているタッチ表面の前部平面図である。
【図4a】タッチ表面を囲んでいて照明されているベゼルの一部の平面図である。
【図4b】タッチ表面を囲んでいて照明されているベゼルの一部の平面図である。
【図5】座標入力副領域の向きの設定中に実行される手順を示すフローチャートである。
【図6】タッチ表面上へのポインタの接触の処理中に実行される手順を示すフローチャートである。
【図7】タッチ表面を見渡していて重なっている画像を取得する他のカメラ配列の平面図である。
【図8】タッチ表面を見渡していて重なっている画像を取得する他のカメラ配列の平面図である。
【図9a】図8のタッチ表面上へのさまざまなポインタ接触を示す図である。
【図9b】図8のタッチ表面上へのさまざまなポインタ接触を示す図である。
【図9c】図8のタッチ表面上へのさまざまなポインタ接触を示す図である
【発明を実施するための形態】
【0017】
本発明の実施形態を添付の図面を参照してより詳細に説明する。
【0018】
図1と2を参照すると、非常に大規模な対話型タッチシステムが示されていて、全体が参照番号100によって示されている。タッチシステム100は、照明されているベゼル104に囲まれた、細長く、概ね長方形の隣接しているタッチ表面102を有している。照明されているベゼル104はタッチ表面102全体を赤外線で背面照明し、2002年1月30日に出願された、本発明の譲受人であるSMART Technologies, Inc.に譲渡されているAkitt他による米国特許出願第10/354、168号に記述されている種類のものである。
【0019】
カメラの複数の組106、この例では、カメラの3つの組106がタッチ表面102に組合されている。カメラの組106は、タッチ表面102の長さ方向に沿って配置されている。カメラの各組106は、長方形の各角を定めるように配置された4つのカメラを含んでいる。各組106のカメラは、タッチ表面102の一部を見渡すように向きが設定された、重なっている視野を有していて、それによって、タッチ入力副領域、つまり座標入力副領域を定めている。したがって、本実施形態では、カメラの組106は、横に並んだ一連の3つの座標入力副領域CIR1、CIR2、CIR3をそれぞれ定めている。カメラの視野は、隣接するカメラの組によって定められている座標入力副領域群が重なって2つの遷移区域TZ1/2とTZ2/3がそれぞれ定まるように、向きも設定されている。
【0020】
カメラの各組106はマスタコントローラ108と通信する。各マスタコントローラ108は、対応しているカメラの組106から受け取ったポインタ特性データを処理して、カメラが取得した画像内に写っているポインタの位置を三角測量を使用して(x,y)座標について求める。マスタコントローラ108は、ポインタ座標データをコンピュータ110に送信して、コンピュータ110がポインタ座標データを書き込みまたは描画として記録したり、ポインタ座標データをマウスイベントとして使用して、コンピュータ110によって実行されるアプリケーションプログラムの実行を制御できるようにする。コンピュータ110は、画像データをプロジェクタP1からP3に送信し、プロジェクタP1からP3は、画像をタッチ表面102に投影する。画像データは、タッチ表面102に投影されている画像がポインタの動作を反映するように、受信したポインタ座標データに応答して、コンピュータ110によって更新される。
【0021】
各プロジェクタは異なる座標入力副領域に対応していて、座標入力副領域上に画像を投影する。図からわかるように、プロジェクタP1は画像I1を座標入力副領域CIR1上に投影し、プロジェクタP2は画像I2を座標入力副領域CIR2上に投影し、プロジェクタP3は画像I3を座標入力副領域CIR3上に投影する。投影された画像I1、I2、I3は、遷移区域TZ1/2とTZ2/3の概ね中点にある垂直な線に沿って揃えられて継ぎ目なく接合され、タッチ表面102にわたって広がっている滑らかで連続した画像が得られる。この例のコンピュータ110は、デスクトップアプリケーションを実行する。各座標入力副領域は、後述の方向設定手続きの間にデスクトップの特定の部分に対応付けられる。その結果、適切なデスクトップ部分が座標入力副領域上に表示されるように、コンピュータ110は画像データをプロジェクタP1からP3に送る。
【0022】
ツールトレイ112も、各座標入力副領域に対応している。各ツールトレイ112は、割り当てられたさまざまな属性を有している多数のポインタ、つまりツール(不図示)を保持している。この例では、各ツールトレイは、多数の色付きのペンと消しゴムを収容している。ツールがツールトレイから取り上げられると、ツールトレイ112は、対応しているマスタコントローラ108に信号を送信し、それに対して、マスタコントローラ108は信号をコンピュータ110に伝達して選択されたツールが識別できるようにする。このようにして、タッチ表面102への接触に色付きのペンが使用されると、ペンの動きを追った適切な色の筆記がタッチ表面上に投影される。タッチ表面102への接触に消しゴムが使用されると、タッチ表面に投影されている筆記の、消しゴムが移動した部分が消去される。良く知られているように、デスクトップアプリケーションは、各座標入力副領域への接触に使用されるポインタに属性を割り当てるように、条件を設定することができる。
【0023】
図1、3a、3bをここで参照して、カメラの組106内のカメラの位置と向きを詳しく説明する。座標入力副領域CIR1に対応しているカメラの組106は、タッチ表面102の左上部と左下部の角に配置されているカメラC1とC0およびタッチ表面102の長さ方向の中間位置で、タッチ表面102の上部と下部に配置されているカメラC2とC3を含んでいる。カメラC1は、その光軸が概ね中間のカメラC3の方を向くように向きが設定されていて、垂直方向に対して45度の角度をなしている。カメラC0は、その光軸が概ね中間のカメラC2に向くように向きが設定されていて、垂直方向に対して45度の角度をなしている。中間のカメラC2は、その視野の縁がカメラC0の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。中間のカメラC3は、その視野の縁がカメラC1の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。
【0024】
座標入力副領域CIR3に対応しているカメラの組106は、タッチ表面102の右上部と右下部の角に配置されているカメラC2″とC3″およびタッチ表面102の長さ方向の中間位置で、タッチ表面102の上部と下部に配置されているカメラC1″とC0″を含んでいる。カメラC2″は、その光軸が概ね中間のカメラC0″を向くように向きが設定されていて、垂直方向に対して45度の角度をなしている。カメラC3″は、その光軸が概ね中間のカメラC1″を向くように方向が設定されていて、垂直方向に対して45度の角度をなしている。中間のカメラC1″は、その視野の縁がカメラC3″の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。中間のカメラC0″は、その視野の縁がカメラC2″の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。
【0025】
座標入力副領域CIR2に対応しているカメラの組106は、タッチ表面102の上部に沿って配置されている横方向に間隔をおいたカメラC1′とC2′およびタッチ表面102の下部に沿って配置されている横方向に間隔をおいたカメラC0′とC3′を含んでいる。左上部のカメラC1′は、カメラC1とC2との間に位置していて、その視野の縁がカメラC3′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。右上部のカメラC2′は、カメラC1″とC2″との間に位置していて、その視野の縁がカメラC0′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。左下部のカメラC0′は、カメラC0とC3との間に位置していて、その視野の縁がカメラC2′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。右下部のカメラC3′は、カメラC0″とC3″との間に位置していて、その視野の縁がカメラC1′の方をわずかに向くように向きが設定されていて、垂直方向に対して10度の角度をなしている。
【0026】
タッチ表面102の各角と上下に沿って配置されているカメラは、図4aと4bに示しているように、照明されたベゼル104に収容されている。各カメラは、2003年3月11日に出願された、本発明の譲受人であるSMART Technologies Inc.に譲渡されているMorrison他による米国特許出願第10/384,796号に開示されている種類のものである。各カメラは、90°よりもわずかに広い視野を有していて、タッチ表面102を見渡す画像を非常に高いフレームレートで取得するように動作可能である。各カメラによって取得された画像は、カメラ内で処理されて、取得された画像内にポインタが存在しているかどうかが判定される。ポインタがカメラによって取得された画像内に存在する場合、ポインタの特徴データがカメラによって生成され、関係するマスタコントローラ108に伝達される。マスタコントローラ108は、ポインタ特徴データを重なっている視野を有している1対のカメラから受信すると、ポインタ特徴データを三角測量してポインタの位置を(x,y)座標について計算する。
【0027】
各座標入力副領域は、座標入力副領域の対向している角にあるカメラ間の対角線を使用して4つの4分領域に分割される。各4分領域内でのポインタ追跡を可能にする画像の取得は、カメラの組の中の異なるカメラの対が受け持つ。上部の4分領域QTはカメラの組の中の左下部と右下部のカメラが受け持ち、下部の4分領域QBはカメラの組の中の左上部と右上部のカメラが受け持ち、左の4分領域QLはカメラの組の中の左上部と左下部のカメラが受け持ち、右の4分領域QRはカメラの組の中の右上部と右下部のカメラが受け持つ。
【0028】
各カメラは、座標入力副領域の2つの4分領域を見渡す画像の取得だけを受け持つため、各カメラの視野は座標入力副領域の1/2だけをカバーすればよい。この要件を十分に満たした視野を有しているカメラを使用することによって、カメラの向きの設定の柔軟性が大きくなる。たとえば、中間のカメラを傾けてそれらカメラの視野の縁が垂直方向に対して10°の角度をなすようにすることで、4:3の縦横比を維持したまま、カメラをタッチ表面内に配置せずに済むようにすることでカメラによるブラインドスポット(blind spot)を発生させずに、カメラの視野にタッチ表面102全体を入れることができる。以上からわかるように、中間の4つカメラをタッチ表面102上に配置した場合、それらのカメラはタッチ表面の一部分で互いの視野を遮断することになる。また、視野の縁が垂直方向に対して小さい角度をなすように中間のカメラを配置することで、照明されたベゼル104による赤外線照明と概ね同一線上になるように、カメラの位置に赤外線照明を設けることができる。これによって、暗い点がタッチ表面の上部と下部に沿って中間のカメラの位置に発生するのを避けることができる。
【0029】
ここでタッチシステム100の全体動作を説明する。最初に、タッチシステム100を較正して、座標入力副領域の座標系が表示座標系にマッピングされ、遷移区域内の座標入力副領域群の重なっている部分が互いにマッピングされるように、向き設定手続きがコンピュータ110によって実行される。
【0030】
タッチシステム100が較正された状態で、ポインタが、遷移区域の外側の座標入力副領域群のうちの1つの内部の4分領域に接触すると、その4分領域に割り当てられている1対のカメラによって取得された画像がカメラと、その関係するマスタコントローラ108によって、本発明の譲受人であるSMART Technologies Inc.に譲渡されたMorrison他による米国特許出願第10/294,917号に記述されているように処理される。このようにして、ポインタの接触部分を囲んでいる境界ボックス、つまり境界領域が決定され、座標入力副領域に対するポインタの位置を(x,y)座標について計算することができる。したがって、この場合、1つのマスタコントローラ108だけがポインタ座標データをコンピュータ110に通知する。コンピュータ110は、ポインタの接触が書き込みイベントの場合、ポインタ座標データを書き込みまたは描画として記録し、ポインタの接触がマウスイベントの場合、コンピュータ110によって実行されているアクティブなアプリケーションプログラムにポインタ座標データを渡す。
【0031】
一般に、ポインタの接触が書き込みイベントであるか、マウスイベントであるかを判定するために、ツールの種類と最初の接触の点が調べられる。描画ツールを使用して接触が行われ、接触が、投影されているデスクトップ部分内の指定された書き込み領域内である場合、ポインタの接触は書き込みイベントとして扱われ、そうでない場合、ポインタの接触はマウスイベントとして扱われる。最初の接触で、ポインタにはポインタ識別子(ID)が与えられ、ポインタIDは、割り当てられたポインタの任意の属性(つまり、形状、色、幅等)と共に保存される。
【0032】
ポインタが遷移区域内のタッチ表面102に接触したときには、遷移区域を監視する2組のカメラに関係する2つのマスタコントローラ108が、前述と同様にポインタ座標を生成し、生成されたポインタ座標をコンピュータ110に伝達する。通知された2つのポインタ座標を受信すると、コンピュータ110は、定められたロジック、この場合は重み付き平均技法を使用して、ポインタの接触位置を表している1つの(x,y)座標の対を生成する。コンピュータ110は次に、ポインタの接触が書き込みイベントの場合、ポインタ座標データを書き込みまたは描画として記録し、ポインタの接触がマウスイベントの場合、ポインタ座標データを、コンピュータ110によって実行されているアクティブなアプリケーションプログラムに渡す。
【0033】
重み付き平均技法を使用して、遷移区域内でポインタの位置を求めることによって、ポインタが1つの座標入力副領域から隣接している座標入力副領域に移動するときにポインタの滑らかな動きが達成される。ポインタが1つの座標入力副領域から隣接している座標入力副領域に移動するとき、ポインタに割り当てられている属性はポインタのIDと共に保存されているので、ポインタの属性はコンピュータ110によって保持される。あるいは、ポインタが1つの座標入力副領域から隣接している座標入力副領域に移動するとき、ポインタの属性を、ポインタアップイベントの後、またはある期間ポインタが動作しなかった後に、新しい座標入力副領域に対応しているデスクトップ部分によって設定されている属性に変更することもできる。
【0034】
図5と6を参照して、向き設定手続きとポインタの追跡をさらに具体的に説明する。
【0035】
向き設定手続き
コンピュータ110によって実行される向き設定手続きは、本発明の譲受人であるSMART Technologies Inc.に譲渡されたMartinに対する米国特許第5,448,263号に記述されている向き設定手順と同様である。ここで図5を参照すると、向きの設定時にコンピュータ110によって実行される手順が示されている。向き設定手続きが開始されると(ステップ200)、プロジェクタの1つによって、そのプロジェクタに対応している座標入力副領域上に、向き目標設定用のデスクトップ部分が目標と共に投影される(ステップ202)。向き設定用のデスクトップ部分が、正しい座標入力副領域上に表示されている場合、デスクトップ部分が、座標入力副領域に対応付けられ、ユーザは、座標入力副領域の目標の位置にポインタを使用して接触するように促される(ステップ204と206)。接触するたびに生成されたポインタ座標データが収集されて、座標入力副領域の座標系を表示座標系にマッピングすることができる(ステップ208)。目標の各々に対するポインタ座標データが生成されると(ステップ210)、コンピュータ110は、座標入力副領域が、複数の重なっている座標入力副領域の構成の一部であることを示す適切なフラグが設定されているかどうかを判定する(ステップ212)。
【0036】
座標入力副領域が、複数の重なっている座標入力副領域構成の一部である場合は、コンピュータ110は、向きが設定された座標入力副領域が、デスクトップ部分が表示されていて、向きを設定中の座標入力副領域の右側に存在するかどうかを判定する(ステップ214)。そのような向きの座標入力副領域が存在していると、向きを設定中の座標入力副領域を表しているオブジェクトが、右隣の座標入力副領域のアドレスを含むように更新される(ステップ216)。コンピュータ110は次に、右隣の座標入力副領域を表しているオブジェクトを、向きを設定中の、つまり左隣の座標入力副領域のアドレスを含むように更新する(ステップ218)。
【0037】
ステップ218の完了時、または、向きが設定済みの座標入力副領域が右側に存在しないとステップ214で判定された場合、コンピュータ110は、向きが設定済みの座標入力副領域が、デスクトップ部分が表示されている、向きを設定中の座標入力副領域の左側に存在するかどうかを判定する(ステップ220)。そのような向きを有する座標入力副領域が存在している場合、向きを設定中の座標入力副領域を表しているオブジェクトが、左側の座標入力副領域のアドレスを含むように更新される(ステップ222)。コンピュータ110は次に、左隣の座標入力副領域を表しているオブジェクトを、向きを現在設定中の、つまり右隣の座標入力副領域のアドレスを含むように更新する(ステップ224)。
【0038】
ステップ224の完了時、または向きが設定された座標入力副領域が左に存在しないとステップ220で判定された場合、または、ステップ212で判定されたように、座標入力副領域が、複数の重なっている座標入力副領域構成の一部ではない場合、ステップ208で求められたポインタ座標データが登録場所に保存される(ステップ226)。向き設定手続きが、他の座標入力副領域群に対して行なわれなかった場合、デスクトップの他の部分が目標と共に、隣接している座標入力副領域上に表示され、方向設定手続きはステップ204に戻る(ステップ228)。向き設定手続きが、他の座標入力副領域群に対して行なわれた場合や、ステップ212で判定されたように、座標入力副領域が複数の重なっている座標入力副領域構成の一部ではない場合、向き設定手続きは終了する。
【0039】
ステップ204で、デスクトップ部分が適切な座標入力副領域上に表示されていない場合、デスクトップ部分を、スペースバーを押して、次の座標入力副領域に移動することができる(ステップ230)。スペースバーが押されると、コンピュータ110は、デスクトップ部分が、隣接している座標入力副領域上に表示されるように、出力画像データを次のプロジェクタに送信する(ステップ232)。
【0040】
ステップ226で登録場所に保存されたポインタ座標データによって、タッチ表面102全体に対するポインタの接触を表示座標にマッピングすることと、座標入力副領域群の重なっている部分を登録することができる。
【0041】
ポインタの追跡
ポインタ座標データが、対応している座標入力副領域上へのポインタの接触に応答してマスタコントローラ108から出力されると、ポインタ座標データはコンピュータ110に送られる(ステップ300)。それに応答して、コンピュータ110は、向き設定手続きの結果を使用してポインタ座標データの向きを表示座標の方へ設定し(ステップ302)、それから、ポインタ座標データを調べてポインタの接触がマウスイベントか書き込みイベントかを判断する(ステップ304)。ポインタの接触がマウスイベントを表している場合、マウスイベントが、その種類を判定するために調べられる(ステップ306)。マウスイベントが、座標入力副領域への最初の接触を表している場合、マウスダウンイベントが複数の座標入力副領域に共有されている遷移区域内の他の座標入力副領域上に存在しているかどうかが判定される(ステップ308)。そのようなマウスダウンイベントが他の座標入力副領域上に存在しない場合、マウスイベントが生成され(ステップ310)、座標入力副領域に対する生成されたマウスイベントが保存される(ステップ312)。保存されたマウスイベントは次に、コンピュータ110上で実行中のアクティブなアプリケーションに渡される(ステップ314)。ステップ308で、マウスダウンイベントが存在している場合、すべてのマウスダウンイベントの位置を現在のマウスイベントの位置と平均することで新しいマウスイベントが生成される(ステップ316)。生成された新しいマウスイベントは同様に保存され(ステップ312)、コンピュータ110上で実行中のアクティブなアプリケーションに渡される(ステップ314)。
【0042】
ステップ306で、マウスイベントが座標入力副領域内の、移動による接触である場合、すべてのマウスダウンイベントの位置を現在のマウスイベントの位置と平均することで新しいマウスイベントが生成される(ステップ316)。生成された新しいマウスイベントは同様に保存され(ステップ312)、コンピュータ110上で実行中のアクティブなアプリケーションに渡される(ステップ314)。
【0043】
ステップ306では、マウスイベントが座標入力副領域からのマウスを離す接触を表している場合、座標入力副領域に対応しているマウスデータが削除される(ステップ320)。それから、マウスダウンイベントが他の座標入力副領域に存在しているかどうかが判定される(ステップ322)。マウスダウンイベントが存在しない場合、リムーブマウスイベントが生成され(ステップ324)、生成されたリムーブマウスイベントがコンピュータ110上で実行中のアクティブなアプリケーションプログラムに渡される(ステップ314)。マウスダウン状態が他の座標入力副領域に存在している場合、マウスイベントは無視される(ステップ326)。
【0044】
ステップ304で、ポインタの座標入力副領域上への接触が書き込みイベントを表している場合、書き込みイベントはその種類が調べられる(ステップ340)。書き込みイベントが、入力副領域への最初の接触を表している場合、接触ダウン情報が、ポインタ(x,y)座標データと共に保存される(ステップ342)。それから、この保存された情報が、隣接している座標入力副領域上へのポインタ接触に一致しているかどうかが判定される(ステップ344)。保存された情報が、隣接している座標入力副領域上へのポインタ接触に一致していない場合、書き込みイベントに対する接触識別子が生成される。(ステップ346)。この接触識別子に対するポインタ情報が保存される(ステップ348)。ポインタ(x,y)座標データはコンピュータ110によって書き込みまたは描画として記録される(ステップ350)。
【0045】
ステップ344で、保存された情報が、遷移区域でのポインタ接触を示している隣接している座標入力副領域上へのポインタの接触と一致している場合、接触識別子とポインタ情報が、隣接した座標入力副領域から取得される(ステップ352)。次に、ポインタが、現在の座標入力副領域に対応している投影されているデスクトップ部分に接触したのか、または隣接している座標入力副領域に対応している投影されているデスクトップ部分へ接触したのかが判定される(ステップ354)。ポインタが隣接している座標入力副領域に接触していた場合、記録されているポインタ(x、y)座標データが、隣接している座標入力副領域によって処理されるため、ポインタ座標データは無視される(ステップ356)。そうでない場合、ポインタ座標データは、コンピュータ110によって書き込みまたは描画として記録される(ステップ350)前に、隣接している座標入力副領域によって記録されているポインタ(x、y)座標データと平均される(ステップ358)。
【0046】
ポインタ座標データの平均中に、コンピュータ110は、定められたロジックに従って、通知されたy座標を処理して、1つのy座標を求める。具体的には、コンピュータ110は、重み付き平均技法を使用してy座標を計算する。コンピュータ110によって使用される、y座標を1対の通知されたy座標から計算する重み付き平均技法は、ポインタが座標入力副領域CIRxから遷移区域に進入し、座標入力副領域CIRx+1へ向かう方向に移動していると仮定して、以下の規則に従う。
y座標=(100−P%)×CIRxのy座標+P%×CIRx+1のy座標
ここで、P%は、遷移区域をx方向に移動した、パーセントで表した距離である。
【0047】
以上からわかるように、この場合、第1の遷移境界、つまり座標入力副領域CIRxと遷移区域との間の境界では、y座標は、座標入力副領域CIRxに対応しているマスタコントローラ108によって通知されているy座標に等しい。第2の遷移境界、つまり遷移区域と座標入力副領域CIRx+1との間の境界では、y座標は、座標入力副領域CIRx+1に対応しているマスタコントローラ108によって通知されているy座標に等しい。遷移区域の中間点では、y座標は、座標入力副領域CIRx+1とCIRx+1に対応している両マスタコントローラ108によって通知されているy座標の平均に等しい。
【0048】
ステップ340で、書き込みイベントが座標入力副領域上での移動による接触を表している場合、ポインタ(x,y)座標データが保存される(ステップ360)。次に、ポインタ(x,y)座標データが、隣接している座標入力副領域によって生成されたポインタ(x,y)座標データに一致するかどうかが判定される(ステップ362)。ポインタ(x,y)座標データが、隣接している座標入力副領域によって生成されたポインタ(x,y)座標データに一致していない場合、ポインタ(x,y)座標データは、コンピュータ110によって書き込みまたは描画として記録される(ステップ350)。ポインタ(x,y)座標データが、隣接している座標入力副領域によって生成されたポインタ(x,y)座標データに一致している場合、ポインタが現在の座標入力副領域上に対応している投影されているデスクトップ部分上、または隣接している座標入力副領域上に対応している投影されているデスクトップ部分上に接触したかどうかが判定される(ステップ354)。ポインタが、隣接している座標入力副領域に接触していた場合、記録されているポインタ(x、y)座標データが、隣接している座標入力副領域によって処理されるため、ポインタ座標データは無視される(ステップ356)。そうでない場合、ポインタ座標データは、コンピュータ110によって書き込みまたは描画として記録される(ステップ350)前に、前述のようにして隣接している座標入力副領域によって記録されているポインタ(x、y)座標データと平均される(ステップ358)。
【0049】
ステップ340で、書き込みイベントが、接触が解除された状態を表している座標入力副領域へのロスト接触を表している場合(ステップ380)、隣接している座標入力副領域が、一致している書き込みイベントを生成したかどうかが判定される(ステップ382)。そうでない場合、ステップ350で、クリア接触状態イベントがコンピュータ110によって生成され、記録される。隣接している座標入力副領域が、一致している書き込みイベントを生成した場合、書き込みイベントは無視される(ステップ384)。
【0050】
カメラの各組106は、対応しているマスタコントローラ108と通信するように図示されているが、取得された画像から導き出されたポインタデータを三角測量する他の処理構成を使用してもよい。たとえば、1つのマスタコントローラ108を各組106のカメラによって生成されたポインタデータの三角測量に使用してもよい。この場合、座標入力副領域を見渡す複数の画像が同時に取得されるように同期信号をカメラの各組に同時に伝達することが好ましい。
【0051】
また、タッチシステム100は、各座標入力副領域に対応しているプロジェクタを有しているように説明しているが、他のプロジェクタ構成を使用してもよいことが理解されるであろう。たとえば、タッチ表面102に広がる画像を投影する1つのプロジェクタ、または、タッチ表面102に広がる、重なっている複数の画像を投影する複数のプロジェクタの他の組み合わせが適している。複数のプロジェクタが使用される場合、投影された複数の画像は重なっていてもよい。たとえば、望むならば、各プロジェクタが、タッチ表面102全体に広がる画像を投影してもよく、この場合、投影されている各画像は完全に重なっている。あるいは、投影されている複数の画像は、遷移区域だけで重なっていてもよい。この場合、投影されている複数の画像は、遷移区域TZ1/2とTZ2/3内の画像の縁の位置で混じり合って、タッチ表面102に広がる滑らかで連続した画像が得られる。
【0052】
当業者に理解されるように、重なっている複数の座標入力副領域は、図示のように水平の列になるように配置されている必要はない。複数の座標入力副領域は、垂直の列に配置したり、N×Mの行列状に配置してもよい。
【0053】
前述の例では、タッチ表面102とカメラの向きは、座標入力副領域の形状に合うように4:3の縦横比を維持するように構成されている。座標入力副領域の縦横比が1と等しいかそれよりも小さい場合、中央のカメラの向きを、その視野の縁が垂直になるように設定することができる。あるいは、この場合、カメラの向きはそのままで、カメラの視野を広げることもできる。実際、カメラの視野で座標入力副領域の割り当てられた4分領域を観察できるならば、カメラを垂直方向の事実上任意の角度に向けることができる。
【0054】
望むならば、タッチ表面102への接触に使用される各ポインタにグローバル属性を割り当て、それによって各座標入力副領域に対応しているツールトレイを不要にすることもできる。また、コンピュータ110は、タッチ表面102上の各部分に表示される1つのデスクトップアプリケーションを実行する必要はない。その代わりに、コンピュータ110は、1つの座標入力副領域から他の座標入力副領域へポインタの属性を移動できるようにしながら、各座標入力副領域上で個別のアプリケーションプログラムを実行して表示することもできる。
【0055】
タッチシステム100は、タッチ表面102上でのポインタの検出にマシンビジョンを使用しているので、タッチシステム100は、各々がポインタを使用して異なった位置でタッチ表面に同時に接触する複数のユーザをサポートすることができる。この場合、ユーザの入力を視覚的に区別できるようにする必要はないが、異なるユーザがポインタを使用して入力した書き込みは通常、投影されている画像内に異なる色を使用したり、他の視覚的な区別を使用して表示される。ポインタが座標入力副領域同士間を移動して、複数のユーザが同じ座標入力副領域に対してポインタを接触させるようになった場合、最後の接触との近さに基づいた判定アルゴリズムを使用して、ポインタの複数の接触を区別する。
【0056】
ここで図7を参照すると、大規模なタッチシステム用の他のカメラ配列が示されている。本実施形態では、カメラC1からC8が、タッチ表面402の上部にだけ沿って配置されていて、タッチ表面にわたって下方を見下ろしている。特に、カメラはタッチ表面402の左上部と右上部の角に配置されている。カメラの中間の対は、タッチ表面402の上部に沿って間隔をおいた位置に配置されている。カメラの視野は点線で示している。図からわかるように、カメラ群の視野は、タッチ表面402上の各位置が少なくとも2つのカメラの視野に入るように重なっている。このような配置によっても、もちろん、三角測量を使用してタッチ表面402全体にわたってポインタを追跡することができる。
【0057】
図8は、大規模なタッチシステム用のさらに他のカメラ配列を示している。本実施形態では、等間隔のカメラC1からC7が、タッチ表面502の上部の縁の上方に配置されていて、タッチ表面にわたって下方を見下ろしている。カメラ群の視野は点線で示されて、図からわかるように、カメラ群の視野はタッチ表面502上の各位置が少なくとも2つのカメラの視野に入るように重なっている。このような配置によっても、三角測量を使用してタッチ表面502全体にわたってポインタを追跡することができる。実際、本実施形態では、タッチ表面502上のほとんどの位置は、2つよりも多くのカメラの視野に入るので、各ポインタのタッチ表面上への接触について複数の三角測量の結果を生成することができる。ポインタの接触位置を求めるために使用する三角測量結果を選択するために、ポインタの接触位置に応じて、異なるロジックを使用することができる。
【0058】
たとえば、図9aに示されているように、タッチ表面502上のポインタPの位置は、カメラC1とC2によって取得された画像から導き出されたポインタ情報を三角測量することと、場合によっては、カメラC3によって取得された画像から導き出されたポインタ情報を三角測量することによって計算することができる。この後者の場合、カメラC1とC3およびカメラC2とC3によって取得された画像から導き出されたポインタ情報を三角測量することで、複数の三角測量結果を得ることができる。複数の三角測量結果を平均したり他のロジックに従って処理して、1つのポインタの接触位置が得られる。カメラC3がポインタPから遠すぎると考えられる場合、カメラC3を無視することができる。あるいは、カメラC3によって取得された画像から導き出されたポインタ情報をポインタの追跡に使用して、いつポインタがカメラC3の特定の近傍に達したかを判定することができる。ポインタPがカメラC3の特定の近傍に達したときには、カメラC3によって取得された画像群から導き出されたポインタ情報を三角測量してタッチ表面502へのポインタの接触位置を求めることができる。
【0059】
図9bと9cは、ポインタのタッチ表面502上の他の位置と、カメラによって取得された画像群から導き出されたさまざまな三角測量結果を示している。図9bの例では、タッチ表面502上のポインタPの位置は、カメラC1、C2、C3によって取得された画像から導き出される。具体的には、カメラの対C1とC2、カメラの対C1とC3、カメラの対C2とC3によって取得された画像群から導き出された三角測量結果が平均されるか、他のロジックに従って処理されて1つの接触位置が得られる。カメラC4を使用してポインタPを画像内で撮像できるならば、カメラC4も使用してもよい。カメラC4がポインタPから遠すぎると考えられる場合、カメラC4を無視することができる。あるいは、カメラC4によって取得された画像から導き出されたポインタ情報をポインタの追跡に使用して、ポインタがカメラC4の特定の近傍にいつ達したかを判定することができる。ポインタPがカメラC4の特定の近傍に達したときには、カメラC4によって取得された画像から導き出されたポインタ情報を三角測量してタッチ表面502上のポインタの位置を求めることができる。この場合、カメラの対C1とC4、カメラの対C2とC4、カメラの対C3とC4によって取得された画像群から導き出された三角測量結果を、他の三角測量結果と組み合わせて使用することができる。
【0060】
図9cの例では、タッチ表面502上のポインタPの位置は、カメラC2とC3によって取得された画像群から導き出される。カメラC1とC4を使用してポインタPを画像内で撮像できる場合は、カメラC1とC4も使用することができる。カメラC1とC4がポインタPから遠すぎると考えられる場合は、カメラC1とC4を無視することができる。あるいは、カメラC1とC4によって取得された画像から導き出されたポインタ情報をポインタの追跡に使用して、ポインタがカメラC1とC4の特定の近傍にいつ達したかを判定することができる。ポインタPがカメラC1とC4の特定の近傍に達したときには、これらのカメラによって取得された画像群から導き出されたポインタ情報を三角測量してタッチ表面502上のポインタの位置を求めることができる。特に、カメラの対C1とC2、カメラの対C1とC3、カメラの対C1とC4、カメラの対C2とC3、カメラの対C2とC4、カメラの対C3とC4によって取得された画像群から導き出された三角測量結果が平均されるか、他のロジックに従って処理されて1つのポインタ接触位置が得られる。以上からわかるように、カメラの異なる対の視野に入るタッチ表面502上の領域は、図1から6の実施形態を参照して説明した遷移区域と同様である。
【0061】
当業者は、前述の実施形態は視覚をもとにしたタッチシステムを示しているが、ポインタを追跡する本方法は、遷移区域群を定めている、重なっている入力領域群を有している他の種類のタッチシステムにも使用可能なことを理解することであろう。
【0062】
本発明の実施形態を、図を参照して説明したが、当業者は添付の請求の範囲によって定まる本発明の要旨と範囲から逸脱することなく変形や修正が可能なことを理解するであろう。
【特許請求の範囲】
【請求項1】
対話型入力システムであって、
概ね水平な主要な軸と、概ね垂直な副次的な軸とを有する矩形の入力領域であって、複数の重なる入力副領域に分割されている矩形の入力領域と、
各入力副領域に関連付けられた撮像装置の組であって、各組の撮像装置は、異なった位置から各入力副領域を望み、かつ重なる視野を有する撮像装置の組と、
を有する対話型入力システム。
【請求項2】
撮像装置の各組が、前記入力副領域を囲む、4辺の多角形の隅を形成する、間隔をおい位置する少なくとも4つの撮像装置を含む、請求項1に記載の対話型入力システム。
【請求項3】
少なくとも幾つかの組の撮像装置は、関連付けられた入力領域を、該入力領域の概ね水平な周縁に対して異なった角度で望む、請求項2に記載の対話型入力システム。
【請求項4】
前記入力領域の端に隣接する入力副領域に関連付けられた撮像装置の各組について、撮像装置の第1の対が、関連付けられた入力副領域を第1の角度で望み、撮像装置の第2の対が、関連付けられた入力副領域を第2の異なった角度で望む、請求項3に記載の対話型入力システム。
【請求項5】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、前記入力副領域の向きを設定する方法であって、
画像セグメントを前記入力副領域の選択された1つの入力副領域の上に提示することと、
前記の選択された入力副領域に隣接する入力副領域が存在するかどうか判定することと、
もし存在するならば、隣接する入力副領域を、前記の選択された入力副領域に登録することと、
を有する入力副領域の向きを設定する方法。
【請求項6】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、入力副領域と関連付けられたマウス入力を処理する方法であって、
前記マウス入力が、前記入力副領域と関連付けられた第1の入力イベントであるかどうか判定するために前記マウス入力を調べることと、
もしそうであれば、前記入力副領域と重なる他の入力副領域の一部と関連付けられたマウスダウンイベントが存在するかどうか判定することと、
前記の重なる一部と関連付けられたマウスダウンイベントが存在しないならば、前記マウス入力を用いて前記入力副領域のためのマウスダウンイベントを生成することと、
前記の重なる一部と関連付けられたマウスダウンイベントが存在するならば、前記マウスダウンイベントと前記マウス入力を統合して前記入力副領域のための前記マウスダウンイベントを生成することと、
を有する、入力副領域と関連付けられたマウス入力を処理する方法。
【請求項7】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、ポインタの種類をアプリケーションプログラムに報告する方法であって、
ポインタ入力が、前記入力副領域と関連付けられた第1の入力イベントであるかどうか判定するために前記ポインタ入力を調べることと、
もしそうであれば、前記第1の入力イベントを生成するために描画ツールが使用され、前記ポインタ入力が、指定された書き込み領域内にあるかどうか判定し、もしそうであれば、書き込みイベントを前記アプリケーションプログラムに報告することと、
もしそうでなければ、前記第1の入力イベントをマウスイベントとして報告することと、
を有する、ポインタの種類をアプリケーションプログラムに報告する方法。
【請求項8】
各入力副領域が、その中のポインタの動きに応答してポインタ座標データを生成する、入力領域を定める、互いに重なる第1と第2の入力副領域の間をポインタが動く間の、滑らかなポインタ遷移を得る方法であって、
前記第1の入力副領域からの複数のポインタ座標をコンピュータに報告することと、
いつ前記の複数のポインタ座標が前記の2つの副領域の間の遷移領域に入り、それによって少なくとも2組のポインタ座標を生成したかを判定することと、
前記の少なくとも2組のポインタ座標を前記コンピュータに報告し、前記コンピュータが前記の少なくとも2組のポインタ座標上で統合動作を行って、単一の組のポインタ座標を生成することと、
を有する、互いに重なる第1と第2の入力副領域の間をポインタが動く間の、滑らかなポインタ遷移を得る方法。
【請求項9】
タッチシステムであって、
大規模なタッチ表面と、
間隔をおいた位置に配置され、各々が前記タッチ表面の少なくとも一部を見渡す少なくとも3つの撮像装置であって、該撮像装置の視野が、前記タッチ表面上の各位置が少なくとも2つの撮像装置の視野に入るように重なっている撮像装置の組と、
前記撮像装置の組と通信して、前記タッチ表面に接触するポインタの画像群を取得する選択された撮像装置の組によって生成された画像データを処理して前記ポインタの接触位置を三角測量を使用して計算する処理手段と、
を有するタッチシステム。
【請求項10】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、前記入力副領域の向きを設定する方法であって、
前記入力副領域の選択された1つの入力副領域に画像セグメントを表示することと、
選択された入力副領域に隣接する入力副領域が存在するとき、該隣接する入力副領域を、前記の選択された入力副領域に登録することと、
を有する入力副領域の向きを設定する方法。
【請求項11】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムの入力副領域の向きを設定することと、
前記入力副領域の選択された1つの入力副領域に画像セグメントを表示することと、
前記の選択された入力副領域に隣接する入力副領域が存在するとき、該隣接する入力副領域を、前記の選択された入力副領域に登録することと、
を有する方法。
【請求項12】
対話型入力システムであって、
入力領域を定める、少なくとも2つの重なる入力副領域と、
撮像装置の組であって、該撮像装置の前記組によって取得された画像内にポインタが存在することを検出し、該画像内のポインタの動きに応答してポインタ座標を生成する各入力副領域に関連付けられた撮像装置の組と、
前記ポインタ座標データを受信するように前記撮像装置の組と通信する少なくとも1つのプロセッサであって、前記入力副領域の選択された1つの入力副領域に画像セグメントを表示する動作を行うことによって、入力副領域を向くように前記ポインタ座標データを処理し、前記の選択された入力副領域に隣接する入力副領域が存在するとき、該隣接する入力副領域を、前記の選択された入力副領域に登録するプロセッサと、
を有する対話型入力システム。
【請求項13】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、入力副領域と関連付けられたポインタ座標データを処理する方法であって、
前記入力副領域と関連付けられた、指定された書き込み領域内のポインタ座標データを書き込みイベントまたはマウスイベントとして示すこと、を有する、入力副領域と関連付けられたポインタ座標データを処理する方法。
【請求項14】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、前記入力副領域の間をポインタが動く間の、滑らかなポインタ接触遷移を得る方法であって、
前記入力副領域の選択された1つの入力副領域からのポインタ座標データを報告することと、
いつ前記ポインタ接触が前記入力副領域と隣接する入力副領域の間の重なる部分に入り、それによって前記隣接する入力副領域のためのポインタ座標データを生成したかを検出することと、
前記ポインタ座標データを、前記隣接する入力副領域のためのポインタ座標データと統合し、単一の組のポインタ座標データを生成することと、
を有する、入力副領域の間の、滑らかなポインタ接触遷移を得る方法。
【請求項15】
対話型入力システムであって、
入力領域を定める、少なくとも2つの重なる入力副領域と、
撮像装置の組であって、該撮像装置の前記組によって取得された画像内にポインタが存在することを検出し、該画像内のポインタの動きに応答してポインタ座標データを生成する各入力副領域に関連付けられた撮像装置の組と、
前記ポインタ座標データを受信するように前記撮像装置の組と通信する少なくとも1つのプロセッサであって、
前記入力副領域の選択された1つの入力副領域からのポインタ座標データを報告する、
いつ前記ポインタ接触が前記入力副領域と隣接する入力副領域の間の重なる部分に入り、それによって前記隣接する入力副領域のためのポインタ座標データを生成したかを検出する、
前記ポインタ座標データを、前記隣接する入力副領域のためのポインタ座標データと統合し、単一の組のポインタ座標データを生成する、
の動作を行うことによって入力副領域前記入力副領域間の滑らかなポインタ接触をもたらすように前記ポインタ座標データを処理するプロセッサと、
を有する対話型入力システム。
【請求項1】
対話型入力システムであって、
概ね水平な主要な軸と、概ね垂直な副次的な軸とを有する矩形の入力領域であって、複数の重なる入力副領域に分割されている矩形の入力領域と、
各入力副領域に関連付けられた撮像装置の組であって、各組の撮像装置は、異なった位置から各入力副領域を望み、かつ重なる視野を有する撮像装置の組と、
を有する対話型入力システム。
【請求項2】
撮像装置の各組が、前記入力副領域を囲む、4辺の多角形の隅を形成する、間隔をおい位置する少なくとも4つの撮像装置を含む、請求項1に記載の対話型入力システム。
【請求項3】
少なくとも幾つかの組の撮像装置は、関連付けられた入力領域を、該入力領域の概ね水平な周縁に対して異なった角度で望む、請求項2に記載の対話型入力システム。
【請求項4】
前記入力領域の端に隣接する入力副領域に関連付けられた撮像装置の各組について、撮像装置の第1の対が、関連付けられた入力副領域を第1の角度で望み、撮像装置の第2の対が、関連付けられた入力副領域を第2の異なった角度で望む、請求項3に記載の対話型入力システム。
【請求項5】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、前記入力副領域の向きを設定する方法であって、
画像セグメントを前記入力副領域の選択された1つの入力副領域の上に提示することと、
前記の選択された入力副領域に隣接する入力副領域が存在するかどうか判定することと、
もし存在するならば、隣接する入力副領域を、前記の選択された入力副領域に登録することと、
を有する入力副領域の向きを設定する方法。
【請求項6】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、入力副領域と関連付けられたマウス入力を処理する方法であって、
前記マウス入力が、前記入力副領域と関連付けられた第1の入力イベントであるかどうか判定するために前記マウス入力を調べることと、
もしそうであれば、前記入力副領域と重なる他の入力副領域の一部と関連付けられたマウスダウンイベントが存在するかどうか判定することと、
前記の重なる一部と関連付けられたマウスダウンイベントが存在しないならば、前記マウス入力を用いて前記入力副領域のためのマウスダウンイベントを生成することと、
前記の重なる一部と関連付けられたマウスダウンイベントが存在するならば、前記マウスダウンイベントと前記マウス入力を統合して前記入力副領域のための前記マウスダウンイベントを生成することと、
を有する、入力副領域と関連付けられたマウス入力を処理する方法。
【請求項7】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、ポインタの種類をアプリケーションプログラムに報告する方法であって、
ポインタ入力が、前記入力副領域と関連付けられた第1の入力イベントであるかどうか判定するために前記ポインタ入力を調べることと、
もしそうであれば、前記第1の入力イベントを生成するために描画ツールが使用され、前記ポインタ入力が、指定された書き込み領域内にあるかどうか判定し、もしそうであれば、書き込みイベントを前記アプリケーションプログラムに報告することと、
もしそうでなければ、前記第1の入力イベントをマウスイベントとして報告することと、
を有する、ポインタの種類をアプリケーションプログラムに報告する方法。
【請求項8】
各入力副領域が、その中のポインタの動きに応答してポインタ座標データを生成する、入力領域を定める、互いに重なる第1と第2の入力副領域の間をポインタが動く間の、滑らかなポインタ遷移を得る方法であって、
前記第1の入力副領域からの複数のポインタ座標をコンピュータに報告することと、
いつ前記の複数のポインタ座標が前記の2つの副領域の間の遷移領域に入り、それによって少なくとも2組のポインタ座標を生成したかを判定することと、
前記の少なくとも2組のポインタ座標を前記コンピュータに報告し、前記コンピュータが前記の少なくとも2組のポインタ座標上で統合動作を行って、単一の組のポインタ座標を生成することと、
を有する、互いに重なる第1と第2の入力副領域の間をポインタが動く間の、滑らかなポインタ遷移を得る方法。
【請求項9】
タッチシステムであって、
大規模なタッチ表面と、
間隔をおいた位置に配置され、各々が前記タッチ表面の少なくとも一部を見渡す少なくとも3つの撮像装置であって、該撮像装置の視野が、前記タッチ表面上の各位置が少なくとも2つの撮像装置の視野に入るように重なっている撮像装置の組と、
前記撮像装置の組と通信して、前記タッチ表面に接触するポインタの画像群を取得する選択された撮像装置の組によって生成された画像データを処理して前記ポインタの接触位置を三角測量を使用して計算する処理手段と、
を有するタッチシステム。
【請求項10】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、前記入力副領域の向きを設定する方法であって、
前記入力副領域の選択された1つの入力副領域に画像セグメントを表示することと、
選択された入力副領域に隣接する入力副領域が存在するとき、該隣接する入力副領域を、前記の選択された入力副領域に登録することと、
を有する入力副領域の向きを設定する方法。
【請求項11】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムの入力副領域の向きを設定することと、
前記入力副領域の選択された1つの入力副領域に画像セグメントを表示することと、
前記の選択された入力副領域に隣接する入力副領域が存在するとき、該隣接する入力副領域を、前記の選択された入力副領域に登録することと、
を有する方法。
【請求項12】
対話型入力システムであって、
入力領域を定める、少なくとも2つの重なる入力副領域と、
撮像装置の組であって、該撮像装置の前記組によって取得された画像内にポインタが存在することを検出し、該画像内のポインタの動きに応答してポインタ座標を生成する各入力副領域に関連付けられた撮像装置の組と、
前記ポインタ座標データを受信するように前記撮像装置の組と通信する少なくとも1つのプロセッサであって、前記入力副領域の選択された1つの入力副領域に画像セグメントを表示する動作を行うことによって、入力副領域を向くように前記ポインタ座標データを処理し、前記の選択された入力副領域に隣接する入力副領域が存在するとき、該隣接する入力副領域を、前記の選択された入力副領域に登録するプロセッサと、
を有する対話型入力システム。
【請求項13】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、入力副領域と関連付けられたポインタ座標データを処理する方法であって、
前記入力副領域と関連付けられた、指定された書き込み領域内のポインタ座標データを書き込みイベントまたはマウスイベントとして示すこと、を有する、入力副領域と関連付けられたポインタ座標データを処理する方法。
【請求項14】
入力領域を定める、重なる入力副領域を少なくとも2つ含み、各入力副領域は、その中でのポインタの動きに応答してポインタ座標データを生成する対話型入力システムにおいて、前記入力副領域の間をポインタが動く間の、滑らかなポインタ接触遷移を得る方法であって、
前記入力副領域の選択された1つの入力副領域からのポインタ座標データを報告することと、
いつ前記ポインタ接触が前記入力副領域と隣接する入力副領域の間の重なる部分に入り、それによって前記隣接する入力副領域のためのポインタ座標データを生成したかを検出することと、
前記ポインタ座標データを、前記隣接する入力副領域のためのポインタ座標データと統合し、単一の組のポインタ座標データを生成することと、
を有する、入力副領域の間の、滑らかなポインタ接触遷移を得る方法。
【請求項15】
対話型入力システムであって、
入力領域を定める、少なくとも2つの重なる入力副領域と、
撮像装置の組であって、該撮像装置の前記組によって取得された画像内にポインタが存在することを検出し、該画像内のポインタの動きに応答してポインタ座標データを生成する各入力副領域に関連付けられた撮像装置の組と、
前記ポインタ座標データを受信するように前記撮像装置の組と通信する少なくとも1つのプロセッサであって、
前記入力副領域の選択された1つの入力副領域からのポインタ座標データを報告する、
いつ前記ポインタ接触が前記入力副領域と隣接する入力副領域の間の重なる部分に入り、それによって前記隣接する入力副領域のためのポインタ座標データを生成したかを検出する、
前記ポインタ座標データを、前記隣接する入力副領域のためのポインタ座標データと統合し、単一の組のポインタ座標データを生成する、
の動作を行うことによって入力副領域前記入力副領域間の滑らかなポインタ接触をもたらすように前記ポインタ座標データを処理するプロセッサと、
を有する対話型入力システム。
【図1】
【図2】
【図3a】
【図3b】
【図4a】
【図4b】
【図5】
【図6】
【図7】
【図8】
【図9a】
【図9b】
【図9c】
【図2】
【図3a】
【図3b】
【図4a】
【図4b】
【図5】
【図6】
【図7】
【図8】
【図9a】
【図9b】
【図9c】
【公開番号】特開2011−258244(P2011−258244A)
【公開日】平成23年12月22日(2011.12.22)
【国際特許分類】
【出願番号】特願2011−209880(P2011−209880)
【出願日】平成23年9月26日(2011.9.26)
【分割の表示】特願2005−268(P2005−268)の分割
【原出願日】平成17年1月4日(2005.1.4)
【出願人】(592221263)スマート テクノロジーズ ユーエルシー (15)
【氏名又は名称原語表記】SMART TECHNOLOGIES ULC
【Fターム(参考)】
【公開日】平成23年12月22日(2011.12.22)
【国際特許分類】
【出願日】平成23年9月26日(2011.9.26)
【分割の表示】特願2005−268(P2005−268)の分割
【原出願日】平成17年1月4日(2005.1.4)
【出願人】(592221263)スマート テクノロジーズ ユーエルシー (15)
【氏名又は名称原語表記】SMART TECHNOLOGIES ULC
【Fターム(参考)】
[ Back to top ]