JP2018181169A - 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体 - Google Patents
情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体 Download PDFInfo
- Publication number
- JP2018181169A JP2018181169A JP2017083349A JP2017083349A JP2018181169A JP 2018181169 A JP2018181169 A JP 2018181169A JP 2017083349 A JP2017083349 A JP 2017083349A JP 2017083349 A JP2017083349 A JP 2017083349A JP 2018181169 A JP2018181169 A JP 2018181169A
- Authority
- JP
- Japan
- Prior art keywords
- distance
- area
- point
- space
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
【課題】基準となるタッチ面の上に物体が配置され得る環境において当該物体に対するタッチ操作を行う場合であっても、指示点とタッチ面間の距離計算における計算量を大幅に削減することができる情報処理装置を提供する。【解決手段】情報処理装置は、3次元操作空間における基準タッチ面とこの面に動的に配置される配置物体上の上面(入力対象面)を撮像し、撮像結果から空間内の被写体までの距離を示す距離画像を取得する。また、距離画像から空間のうち背景を示す背景画像を取得する。この距離画像と背景画像に基づいて、空間内におけるユーザの手における指示点を取得する。情報処理装置は、これらの取得結果に基づいて取得した第一基準点、第二基準点に基づいて、空間内における指先高さを導出し、これに基づいて、入力対象面に対するユーザの手によるタッチ操作があったか否かなどの指示状態を識別する。【選択図】図3
Description
本発明は、指示物体とタッチ面の近接状態に基づいてタッチ操作を認識する技術に関する。
近年、プロジェクタを用いて重畳表示を行う新しいユーザインターフェース(以下、UIと称す)システムが開発されている。
このようなUIシステムでは、テーブルや壁、あるいは文書や物体の表面上にボタン等のタッチ操作可能なユーザインターフェース部品(以下、UI部品と称す)を投影し、投影されたUI部品をユーザがタッチ操作する、というものである。
このようなUIシステムにおいては、UIシステムを構成する機器の持ち運びが容易であり、さらに物理媒体と電子媒体を組み合わせたリッチなインタラクションが可能になるといった利点がある。また、このようなUIシステムにおいては、様々な物体を対象にしてタッチ操作を行うことが可能になるため、例えばタッチパネルなどの機器を必要としない、という利点もある。
このようなUIシステムでは、テーブルや壁、あるいは文書や物体の表面上にボタン等のタッチ操作可能なユーザインターフェース部品(以下、UI部品と称す)を投影し、投影されたUI部品をユーザがタッチ操作する、というものである。
このようなUIシステムにおいては、UIシステムを構成する機器の持ち運びが容易であり、さらに物理媒体と電子媒体を組み合わせたリッチなインタラクションが可能になるといった利点がある。また、このようなUIシステムにおいては、様々な物体を対象にしてタッチ操作を行うことが可能になるため、例えばタッチパネルなどの機器を必要としない、という利点もある。
例えば、特許文献1に開示された装置は、操作対象面が変形可能なシステムであり、三次元位置の計測に基づいて物体がタッチ対象面に接触したことを検出する場合、ユーザの作業に合わせて操作対象面の三次元位置情報を更新する、というものである。
この装置では、操作を行う指示点として認識すべき認識対象(例えば、ユーザの指先)と、タッチ面との近接状態を距離に基づいて検出する。そして、所定の距離の閾値よりも近接していると判別した場合には、前記タッチ面がタッチ操作のために接触されたと認識する、というものである。
この装置では、操作を行う指示点として認識すべき認識対象(例えば、ユーザの指先)と、タッチ面との近接状態を距離に基づいて検出する。そして、所定の距離の閾値よりも近接していると判別した場合には、前記タッチ面がタッチ操作のために接触されたと認識する、というものである。
しかしながら、特許文献1に開示された装置では、距離取得における計算の計算量が多くなってしまう、という課題が残る。そのため、機器に対する負荷が大きくなり、処理速度等に影響を与えてしまう、という問題がある。
本発明は、基準となる面の上に物体が配置され得る環境において当該物体に対するタッチ操作を行う場合であっても、指示点と物体のタッチ面間の距離計算における計算量を大幅に削減することができる情報処理装置を提供することを、主たる目的とする。
本発明に係る情報処理装置は、所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する距離情報取得手段と、前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する背景取得手段と、前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する指示点取得手段と、前記指示点を第一基準点として取得し、当該指示点から前記第1の領域に向けた垂線が当該第1の領域と交差する交点を第二基準点として取得する基準点取得手段と、前記第一基準点と第二基準点とに基づく領域から前記空間内における前記指示点と前記第2領域との距離を導出する距離取得手段と、前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する識別手段と、を有することを特徴とする。
本発明によれば、基準となる面の上に物体が配置され得る環境において当該物体に対するタッチ操作を行う場合であっても、指示点と物体のタッチ面間の距離計算における計算量を大幅に削減することができる。
以下、本発明の実施形態について図面を参照して詳細に説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。
[第1実施形態]
図1は、本実施形態に係るテーブルトップシステムの外観の一例を示す図である。
テーブルトップシステムSは、所定の空間(3次元操作空間)における指示物体を介したタッチ操作などの指示状態を識別する情報処理装置100、テーブル面101を含んで構成される。また、情報処理装置100は、後述するプロジェクタ118が各種画像を投影する際の投影光を出射する投影光照射部107、距離センサ115を含んで構成される。距離センサ115で取得した距離情報から距離画像を取得できる。なお、図1に示す受光部106は、距離センサ115の受光部である。
図1は、本実施形態に係るテーブルトップシステムの外観の一例を示す図である。
テーブルトップシステムSは、所定の空間(3次元操作空間)における指示物体を介したタッチ操作などの指示状態を識別する情報処理装置100、テーブル面101を含んで構成される。また、情報処理装置100は、後述するプロジェクタ118が各種画像を投影する際の投影光を出射する投影光照射部107、距離センサ115を含んで構成される。距離センサ115で取得した距離情報から距離画像を取得できる。なお、図1に示す受光部106は、距離センサ115の受光部である。
情報処理装置100は、投影光照射部107から投影光を照射する。これにより、テーブルの表面や壁面上などの任意の平面をユーザの手を介した操作、例えばタッチ操作を受け付けるタッチ面として設定する。また、随時テーブル上や壁面に動的に配置された物体(配置物体)が存在する場合、情報処理装置100は距離センサ115を介して、配置物体の面がタッチ面(入力対象面)となるように更新する。
なお、説明においては、空間内においてタッチ操作を行う指示物体はユーザの手であり、その指先が指示点であるとする。
なお、説明においては、空間内においてタッチ操作を行う指示物体はユーザの手であり、その指先が指示点であるとする。
例えば、図1に示すテーブルトップシステムSの場合では、情報処理装置100をテーブル面101上に設置して、テーブル面101上及びテーブル面101上に配置された配置物体104に所定の画像(以下、表示画像と称す)を投影する。図1に示す円形画像105は、情報処理装置100によって物体上、つまり配置物体104上に投影されたUI部品の一例である。また、テーブル面101はそれ自体がタッチ操作を受け付け可能なタッチ面(以下、基準タッチ面と称す)となる。
このように構成されたテーブルトップシステムSにおけるタッチ面は、配置物体104が配置されている領域では配置物体104の上面となり、それ以外では基準タッチ面であるテーブル面となる。以下、情報処理装置100によってテーブル面101上において投影されるUI部品や写真などの各種画像を総称して表示アイテムと称す。
距離センサ115は、例えば赤外パターン投影方式の距離センサである。また、距離センサ115の受光部106は、距離センサ115の出力値(距離情報)から取得する距離画像の視点となる。
本実施形態では、受光部106は、タッチ面に対して上方から見下ろす画角で計測する位置に設置される。計測結果に基づいて距離センサ115の出力値(距離情報)から取得する距離画像は、画像の各画素に受光部106から被写体(例えば、配置物体104の上面)までの距離が反映された画像である。
本実施形態では、受光部106は、タッチ面に対して上方から見下ろす画角で計測する位置に設置される。計測結果に基づいて距離センサ115の出力値(距離情報)から取得する距離画像は、画像の各画素に受光部106から被写体(例えば、配置物体104の上面)までの距離が反映された画像である。
なお、距離画像の取得方法は、環境光やテーブル面への表示に対して影響が小さい赤外パターン投影方式を用いる場合を例に挙げて説明する。これ以外にも、用途に応じて視差方式や赤外光反射時間方式などを利用することも可能である。
また、例えばユーザの手を介したジェスチャ操作やタッチ操作を受け付け可能な領域を操作領域102とする。操作領域102においては、情報処理装置100による投影が可能な範囲と、距離センサ115の視野範囲とが一致しているものとする。
また、例えばユーザの手を介したジェスチャ操作やタッチ操作を受け付け可能な領域を操作領域102とする。操作領域102においては、情報処理装置100による投影が可能な範囲と、距離センサ115の視野範囲とが一致しているものとする。
また、本実施形態に係るテーブルトップシステムSでは、ユーザの手を表す手103は操作領域102と距離センサ115の受光部106の間の空間に挿入可能に構成される。
以下、ユーザが手を使って表示アイテムを操作するジェスチャ操作を受け付ける場合を例に挙げて情報処理装置100の動作を説明する。
なお、本実施形態においては図1に示す操作領域102に対して平行な二次元平面上にx軸とy軸を設定し、操作領域102に直交する高さ方向にz軸を設定して三次元位置情報を座標値として扱うものとする。
ただし、タッチ面が平面でない場合、あるいはユーザとタッチ面との位置関係によっては、必ずしもタッチ面に平行あるいは直交の関係の座標軸ではなくてもよい。この場合、例えばz軸は認識対象とタッチ面との近接関係(両者の間の距離の大きさの程度)を検出する方向に設定し、z軸と交わる方向にx軸とy軸とを設定することができる。
また、例表示アイテムがテーブル面101に投影される場合に限らず、例えば壁面に投影光が照射される場合や、投影面が平面でない場合であっても本発明を適用することは可能である。
なお、本実施形態においては図1に示す操作領域102に対して平行な二次元平面上にx軸とy軸を設定し、操作領域102に直交する高さ方向にz軸を設定して三次元位置情報を座標値として扱うものとする。
ただし、タッチ面が平面でない場合、あるいはユーザとタッチ面との位置関係によっては、必ずしもタッチ面に平行あるいは直交の関係の座標軸ではなくてもよい。この場合、例えばz軸は認識対象とタッチ面との近接関係(両者の間の距離の大きさの程度)を検出する方向に設定し、z軸と交わる方向にx軸とy軸とを設定することができる。
また、例表示アイテムがテーブル面101に投影される場合に限らず、例えば壁面に投影光が照射される場合や、投影面が平面でない場合であっても本発明を適用することは可能である。
図2は、情報処理装置100のハードウェア構成の一例を説明するための図である。
図2(a)は、本実施形態における情報処理装置100のハードウェア構成の一例を示すブロック図である。
図2(a)は、本実施形態における情報処理装置100のハードウェア構成の一例を示すブロック図である。
情報処理装置100は、CPU(Central Processing Unit)110、RAM(Random Access Memory)111、ROM(Read Only Memory)112、バス113、入出力I/F(インターフェース)114を含んで構成される。また、情報処理装置100は、距離センサ115、記憶装置116、ディスプレイI/F117、プロジェクタ118を有する。
CPU110は、バス113を介して接続する各デバイスを統括的に制御する。
ROM112は、オペレーティングシステム(OS)、各処理プログラム、デバイスドライバ等を格納する。
RAM111は、高速にアクセス可能なCPU110の主メモリ、ワークエリア等の一時記憶領域として用いられる。なお、OSおよび各処理プログラム等は外部の記憶装置116に格納されていてもよく、その場合は電源投入時に必要な情報がRAM111に適宜読み込まれる。
ROM112は、オペレーティングシステム(OS)、各処理プログラム、デバイスドライバ等を格納する。
RAM111は、高速にアクセス可能なCPU110の主メモリ、ワークエリア等の一時記憶領域として用いられる。なお、OSおよび各処理プログラム等は外部の記憶装置116に格納されていてもよく、その場合は電源投入時に必要な情報がRAM111に適宜読み込まれる。
ディスプレイI/F117は、情報処理装置100内部で生成される表示アイテム(表示画像)をプロジェクタ118(投影光照射部107)が処理可能な信号に変換する。
入出力I/F114は、距離センサ115から出力された距離情報を受け付けて、情報処理装置100が処理可能な情報に変換する。また、入出力I/F114は、記憶装置116と情報処理装置100との間で相互にデータの変換を行う。
なお、記憶装置116は、例えばディスクデバイスやフラッシュメモリなどであり、入出力I/F114を介して接続される記憶装置である。
入出力I/F114は、距離センサ115から出力された距離情報を受け付けて、情報処理装置100が処理可能な情報に変換する。また、入出力I/F114は、記憶装置116と情報処理装置100との間で相互にデータの変換を行う。
なお、記憶装置116は、例えばディスクデバイスやフラッシュメモリなどであり、入出力I/F114を介して接続される記憶装置である。
ここで、情報処理装置100が投影するデジタルデータは記憶装置116に格納されているものとして説明を進める。本実施形態においては、距離センサ115は操作領域102上の情報を取得するために用いられる距離情報取得部として機能する。
また、距離センサ115により取得された画像(距離画像)は、入力画像としてRAM111で一時保存され、CPU110によって適宜処理されてその後破棄される。なおこれに限らず、例えば適宜必要なデータを記憶装置116に蓄積するように構成してもよい。
また、距離センサ115により取得された画像(距離画像)は、入力画像としてRAM111で一時保存され、CPU110によって適宜処理されてその後破棄される。なおこれに限らず、例えば適宜必要なデータを記憶装置116に蓄積するように構成してもよい。
図2(b)は、情報処理装置100の機能構成の一例を説明するためのブロック図である。
情報処理装置100は、距離情報を取得する距離情報取得部120、背景情報を取得する背景情報取得部121、指示点取得部122、基準点取得部123、距離取得部124、タッチ認識部125、保持部126を含んで構成される。なお、これらの各機能部は、CPU110がROM112に格納された各種プログラムをRAM111に展開して、後述する各処理を実行することで実現される。
情報処理装置100は、距離情報を取得する距離情報取得部120、背景情報を取得する背景情報取得部121、指示点取得部122、基準点取得部123、距離取得部124、タッチ認識部125、保持部126を含んで構成される。なお、これらの各機能部は、CPU110がROM112に格納された各種プログラムをRAM111に展開して、後述する各処理を実行することで実現される。
また、CPU110を用いたソフトウェア処理の代替として、例えばハードウェアを構成する場合には各機能部の処理に対応させた演算部や回路を構成すればよい。
距離情報取得部120は、距離センサ115を介して距離画像を取得する距離情報取得手段として機能する。距離情報から生成された距離画像を必ず取得する必要はない。
背景情報取得部121は、距離センサ115を介して背景画像(以下、背景距離画像と称す)を取得する背景取得手段として機能する。背景距離画像は、例えばユーザが手を操作領域102に侵入させる前のテーブル面101を撮像した距離画像である。
背景情報取得部121は、距離センサ115を介して背景画像(以下、背景距離画像と称す)を取得する背景取得手段として機能する。背景距離画像は、例えばユーザが手を操作領域102に侵入させる前のテーブル面101を撮像した距離画像である。
指示点取得部122は、例えばユーザの指先を指示点とし、この指示点の座標情報(世界座標)を検出して取得する。
基準点取得部123は、指示点からタッチ面に向けて下ろした垂線が当該タッチ面と交差するタッチ点(第1の交点)と指示点とを結ぶ線分上に存在する世界座標上の第一基準点を取得する。また、基準点取得部123は、指示点から基準タッチ面に向けて下ろした垂線が当該基準タッチ面と交差する基準タッチ点(第2の交点)と指示点とを結ぶ線分上に存在する第二基準点を取得する。詳細は後述する。
基準点取得部123は、指示点からタッチ面に向けて下ろした垂線が当該タッチ面と交差するタッチ点(第1の交点)と指示点とを結ぶ線分上に存在する世界座標上の第一基準点を取得する。また、基準点取得部123は、指示点から基準タッチ面に向けて下ろした垂線が当該基準タッチ面と交差する基準タッチ点(第2の交点)と指示点とを結ぶ線分上に存在する第二基準点を取得する。詳細は後述する。
距離取得部124は、指示点からタッチ面(例えば、配置物体104の上面:指示を受け付ける入力対象面)に向けて下ろした垂線の長さに相当する距離を指先高さとして導出する。
タッチ認識部125は、ユーザの手を介して行われた操作内容(例えば、タッチ操作であるか否か)、つまり指示物体の指示状態を識別する識別手段として機能する。
保持部126は、ROM112、あるいは記憶装置116のいずれかに対応する機能部であり、プロジェクタ118が投影する画像の基となる画像データ等を保持する。
タッチ認識部125は、ユーザの手を介して行われた操作内容(例えば、タッチ操作であるか否か)、つまり指示物体の指示状態を識別する識別手段として機能する。
保持部126は、ROM112、あるいは記憶装置116のいずれかに対応する機能部であり、プロジェクタ118が投影する画像の基となる画像データ等を保持する。
この他、例えばユーザが手を振る動作(手ぶり)などの空間ジェスチャ動作を認識するためのジェスチャ認識部を設けるなど情報処理装置100の使用目的やアプリケーションに応じた機能部を構成することができる。
次に、情報処理装置100が行う処理の詳細について図3〜図6を用いて説明する。
次に、情報処理装置100が行う処理の詳細について図3〜図6を用いて説明する。
[情報処理装置100の処理]
図3は、情報処理装置100によるユーザ操作の認識処理の処理手順の一例を示すフローチャートである。なお、図3に示す各処理は、主としてCPU110により実行される。
また、図4は、ユーザの手(指先)と配置物体104の状態を説明するための図である。
図4(a)は、配置物体104上に指先201が存在する状態を世界座標のX軸方向から見た場合の一例を示す図である。また、図4(b)、(c)は、図4(a)に示す状態と同じタイミングにおいて距離センサ115が取得した距離情報から得られた距離画像の一例を示す図である。
なお、図4(b)、(c)に示す配置物体104は、距離情報を取得した際のレンズ歪みや座標変換誤差などによる「歪み」が生じているものとして示している。
図3は、情報処理装置100によるユーザ操作の認識処理の処理手順の一例を示すフローチャートである。なお、図3に示す各処理は、主としてCPU110により実行される。
また、図4は、ユーザの手(指先)と配置物体104の状態を説明するための図である。
図4(a)は、配置物体104上に指先201が存在する状態を世界座標のX軸方向から見た場合の一例を示す図である。また、図4(b)、(c)は、図4(a)に示す状態と同じタイミングにおいて距離センサ115が取得した距離情報から得られた距離画像の一例を示す図である。
なお、図4(b)、(c)に示す配置物体104は、距離情報を取得した際のレンズ歪みや座標変換誤差などによる「歪み」が生じているものとして示している。
図3に示すように、CPU110は、距離情報取得部120、距離センサ115を介して、距離画像を一定時間毎に時系列に従って取得する(S100)。取得した距離画像は、ノイズ除去等の前処理を行った上でRAM111に随時保持される。
なお、時系列に従って取得した画像、又は、実行した処理などそれぞれを識別するために、例えば一意の番号あるいは時刻などが付与されるものとする。以下、この番号あるいは時刻のことをフレームと称す。
なお、時系列に従って取得した画像、又は、実行した処理などそれぞれを識別するために、例えば一意の番号あるいは時刻などが付与されるものとする。以下、この番号あるいは時刻のことをフレームと称す。
CPU110は、背景情報取得部121を介して、RAM111に保持された距離画像と背景距離画像の差分(背景差分)に基づいて手領域を取得する(S101)。生成された背景距離画像を用いずに、背景の距離情報と前記空間に手領域が存在する状態で取得した距離情報とを用いて差分を求めても良い。
具体的には、CPU110は、距離画像中において背景距離画像よりZ軸(図4(a)参照)方向のZ値が大きく、且つ、操作領域102の境界に接している連結した領域を手領域として取得する。手領域として、操作領域102の外から内に侵入している領域が取得される。
具体的には、CPU110は、距離画像中において背景距離画像よりZ軸(図4(a)参照)方向のZ値が大きく、且つ、操作領域102の境界に接している連結した領域を手領域として取得する。手領域として、操作領域102の外から内に侵入している領域が取得される。
CPU110は、指示点取得部122を介して、ユーザの指先を指示点とする指先201の座標情報を取得する(S102)。
具体的には、手領域のうち操作領域102の境界と接しているピクセルの重心を手の侵入位置として取得する。そして、手領域において距離画像座標における侵入位置からユークリッド距離が最も大きい点を指先201の座標情報として取得する。
このようにして、指先201の世界座標(Xt、Yt、Zt)と距離画像座標(Ut、Vt、Dt)を取得することができる。なお、指先の世界座標の取得方法はこの方法に限らず、例えばユークリッド距離以外の測地線距離等の尺度を用いたり、あるいは輪郭の形状に基づいて取得したりしてもよい。
具体的には、手領域のうち操作領域102の境界と接しているピクセルの重心を手の侵入位置として取得する。そして、手領域において距離画像座標における侵入位置からユークリッド距離が最も大きい点を指先201の座標情報として取得する。
このようにして、指先201の世界座標(Xt、Yt、Zt)と距離画像座標(Ut、Vt、Dt)を取得することができる。なお、指先の世界座標の取得方法はこの方法に限らず、例えばユークリッド距離以外の測地線距離等の尺度を用いたり、あるいは輪郭の形状に基づいて取得したりしてもよい。
CPU110は、基準点取得部123を介して、指先201の世界座標(Xt、Yt、Zt)を第一基準点として取得する(S103)。
CPU110は、基準点取得部123を介して、指先201から基準タッチ面であるテーブル面101に向けて下ろした垂線と当該テーブル面101とが交差する足202(図4(a)参照)の位置を第二基準点として取得する(S104)。
このようにして、指先201における垂線の足202の世界座標(Xt、Yt、0)と距離画像座標(U0、V0、D0)を取得する。
CPU110は、基準点取得部123を介して、指先201から基準タッチ面であるテーブル面101に向けて下ろした垂線と当該テーブル面101とが交差する足202(図4(a)参照)の位置を第二基準点として取得する(S104)。
このようにして、指先201における垂線の足202の世界座標(Xt、Yt、0)と距離画像座標(U0、V0、D0)を取得する。
CPU110は、距離取得部124を介して、指先201からタッチ面(図4(a)に示す配置物体104の上面)に向けて下ろした垂線の長さを指先高さとして取得する(S105)。処理の詳細については後述する。
CPU110は、タッチ認識部125を介して、ユーザが配置物体104に対して行った操作がタッチ操作であるか否かを識別する(S106)。
具体的には、取得した指先高さと閾値に基づいて、ユーザの指先がタッチ面(図4(a)に示す配置物体104の上面)に近接している状態(以下、タッチ状態と称す)であるか、あるいはユーザの指先がタッチ面から離れているリリース状態であるか否かを判別する。つまり、タッチ面(以下、「第2の領域」とも記載する)に対する指示物体の指示状態を識別する。
時系列に従って判別された現在と過去の近接状態(タッチ状態あるいはリリース状態)と、指先位置とに基づいてユーザの操作がタッチ操作であるか否かを識別する。
なお、タッチ操作は、例えばタッチ、タップ、ダブルタップ、フリック、ドラッグなどの単一の指先によって行われるシングルタッチ操作、あるいは拡大縮小や回転などの複数の指先によって行われるマルチタッチ操作などがある。また、タッチ状態は、ユーザの指先がタッチ面に接触している場合の他、例えばその距離が所定の閾値の距離以下であればタッチ状態であると判別する。
具体的には、取得した指先高さと閾値に基づいて、ユーザの指先がタッチ面(図4(a)に示す配置物体104の上面)に近接している状態(以下、タッチ状態と称す)であるか、あるいはユーザの指先がタッチ面から離れているリリース状態であるか否かを判別する。つまり、タッチ面(以下、「第2の領域」とも記載する)に対する指示物体の指示状態を識別する。
時系列に従って判別された現在と過去の近接状態(タッチ状態あるいはリリース状態)と、指先位置とに基づいてユーザの操作がタッチ操作であるか否かを識別する。
なお、タッチ操作は、例えばタッチ、タップ、ダブルタップ、フリック、ドラッグなどの単一の指先によって行われるシングルタッチ操作、あるいは拡大縮小や回転などの複数の指先によって行われるマルチタッチ操作などがある。また、タッチ状態は、ユーザの指先がタッチ面に接触している場合の他、例えばその距離が所定の閾値の距離以下であればタッチ状態であると判別する。
CPU110は、背景情報取得部121を介して、背景距離画像を取得する(S107)。なお、取得した背景距離画像はRAM111に随時保持される。
なお、背景距離画像の取得は、例えば手領域に相当する領域以外について背景距離画像を距離画像に置き換えることで取得することができる。
なお、背景距離画像の取得は、例えば手領域に相当する領域以外について背景距離画像を距離画像に置き換えることで取得することができる。
また、ステップS107の処理により、基準タッチ面であるテーブル面101上に配置物体104が配置するなどしてタッチ面が変更されてしまう場合であっても、配置物体104の上面に対するユーザのタッチ操作を識別することが可能になる。
なお、背景距離画像の初期値は、例えばユーザが手を操作領域に侵入させる前のテーブル面を撮像した距離画像などとすればよい。
次に、ステップS105の処理(指先高さ取得処理)の詳細について説明する。
なお、背景距離画像の初期値は、例えばユーザが手を操作領域に侵入させる前のテーブル面を撮像した距離画像などとすればよい。
次に、ステップS105の処理(指先高さ取得処理)の詳細について説明する。
図5は、ステップS105の処理の詳細を示すフローチャートである。
例えば、タッチ面の形状が随時変化する場合、指先高さを予め計算しておくことはできない。このような場合、一般的には指先を基点とし、これを含む固定の大きさの探索窓(探索対象領域)を設定する。そして、探索窓内の各ピクセルを世界座標に変換し、指先の世界座標位置から物体の上面(XY平面上)までの距離が最小になるピクセルを探索する。探索結果のピクセルをタッチ点として決定し、決定したタッチ点と指先の世界座標のZ軸方向の差分を指先高さとする。このように探索対象領域内をすべて探索して指先高さを取得することになるが、この場合、正確な指先高さを取得するには探索窓の大きさを十分に大きく設定する必要がある。
しかしながらこの場合、ユーザの指の向きや手の画像中の大きさに関わらず、十分に大きく、且つ、同じ大きさの固定された探索窓を常に使うことになるため、結果として探索のための計算量が多くなってしまうことになる。
例えば、タッチ面の形状が随時変化する場合、指先高さを予め計算しておくことはできない。このような場合、一般的には指先を基点とし、これを含む固定の大きさの探索窓(探索対象領域)を設定する。そして、探索窓内の各ピクセルを世界座標に変換し、指先の世界座標位置から物体の上面(XY平面上)までの距離が最小になるピクセルを探索する。探索結果のピクセルをタッチ点として決定し、決定したタッチ点と指先の世界座標のZ軸方向の差分を指先高さとする。このように探索対象領域内をすべて探索して指先高さを取得することになるが、この場合、正確な指先高さを取得するには探索窓の大きさを十分に大きく設定する必要がある。
しかしながらこの場合、ユーザの指の向きや手の画像中の大きさに関わらず、十分に大きく、且つ、同じ大きさの固定された探索窓を常に使うことになるため、結果として探索のための計算量が多くなってしまうことになる。
これに対して本実施形態に係る情報処理装置100では、従来よりも計算量が少なくなると考えられる探索窓を得るために、第二基準点を求めている。そして、世界座標における第一基準点(指先201)と第二基準点(足202)に基づいて、探索窓の大きさを設定する。以下、この点を中心に処理手順を説明する。
CPU110は、世界座標における第一基準点(指先201)と第二基準点(足202)に基づいて、これらを対角点とする探索対象領域(探索窓:図4(b)に示す点線の矩形領域)を設定する(S200)。
ここで指先高さは、図4(a)に示すように、世界座標において指先201からタッチ面である配置物体104上に向けて下ろした垂線の足であるタッチ点203と、指先201との距離が指先高さとなる。また、図4(a)に示すように、タッチ点203は世界座標において第一基準点である指先201と、第二基準点である垂線の足202とを結ぶ線分上に存在する。そのため、探索対象領域(探索窓)内には常にタッチ点203が含まれるものとなる。
ステップS200の処理において設定された探索窓は、指先高さを取得するために必要な領域を確実に含むが必要以上に大きくなることはなく、また、従来の探索窓の大きさより小さくなる場合が殆どである。そのため、従来よりも探索すべき探索対象領域が削減されることになり、指先高さを導出する際の計算量を大幅に削減することが可能になる。
ここで指先高さは、図4(a)に示すように、世界座標において指先201からタッチ面である配置物体104上に向けて下ろした垂線の足であるタッチ点203と、指先201との距離が指先高さとなる。また、図4(a)に示すように、タッチ点203は世界座標において第一基準点である指先201と、第二基準点である垂線の足202とを結ぶ線分上に存在する。そのため、探索対象領域(探索窓)内には常にタッチ点203が含まれるものとなる。
ステップS200の処理において設定された探索窓は、指先高さを取得するために必要な領域を確実に含むが必要以上に大きくなることはなく、また、従来の探索窓の大きさより小さくなる場合が殆どである。そのため、従来よりも探索すべき探索対象領域が削減されることになり、指先高さを導出する際の計算量を大幅に削減することが可能になる。
図5の説明に戻り、CPU110は、ステップS200の処理において設定した探索窓内の各ピクセルと指先201の世界座標における距離値に基づいて、指先位置からの最短距離を指先高さとして取得する(S201)。具体的には、探索窓内の各ピクセルを世界座標に変換し、指先201の世界座標からのXY平面上(物体の上面)の距離が最小になるピクセルをタッチ点として決定する。決定したタッチ点と指先201の世界座標のZ軸方向の差を指先高さとして取得する。このようにして、指先201とタッチ点203(タッチ面)間の距離値が指先高さとして取得される。
このように、本実施形態に係る情報処理装置100では、基準となるタッチ面の上に物体が配置され得る環境において当該物体に対するタッチ操作を行う場合であっても、指示点と物体のタッチ面間の距離計算における計算量を大幅に削減することができる。
なお、ステップS200の処理において探索窓を設定する際にセンサの取得する距離情報に含まれる誤差を考慮して探索領域にマージンを含めてもよい。例えば、CPU110は、第一基準点と第二基準点を対角点とする矩形領域を、所定サイズ拡げた領域を探索領域に設定してもよい。
また、本実施形態では操作領域102を撮像するために距離センサ115を用いた場合を例に挙げて説明した。その他にも、操作領域102における三次元情報を取得できるセンサであれば何を採用してもよい。例えば、ステレオRGBカメラなどを用いてもよい。
なお、ステップS200の処理において探索窓を設定する際にセンサの取得する距離情報に含まれる誤差を考慮して探索領域にマージンを含めてもよい。例えば、CPU110は、第一基準点と第二基準点を対角点とする矩形領域を、所定サイズ拡げた領域を探索領域に設定してもよい。
また、本実施形態では操作領域102を撮像するために距離センサ115を用いた場合を例に挙げて説明した。その他にも、操作領域102における三次元情報を取得できるセンサであれば何を採用してもよい。例えば、ステレオRGBカメラなどを用いてもよい。
[第2実施形態]
第1実施形態では、第一基準点である指先201と第二基準点である垂線の足202を対角点とする可変の探索窓(探索対象領域)とし、この探索対象領域内を探索することで計算量を削減する場合について説明した。例えば、配置物体が大きくZ方向に長い場合には可変の探索窓であってもその大きさが大きくなってしまい、その結果、計算量が十分に削減されないこともある。
第1実施形態では、第一基準点である指先201と第二基準点である垂線の足202を対角点とする可変の探索窓(探索対象領域)とし、この探索対象領域内を探索することで計算量を削減する場合について説明した。例えば、配置物体が大きくZ方向に長い場合には可変の探索窓であってもその大きさが大きくなってしまい、その結果、計算量が十分に削減されないこともある。
本実施形態では、配置物体がZ方向に長い場合であっても計算量を削減することができる情報処理装置について説明する。なお、第1実施形態において説明した機能構成と同じものは同一の符号を付すとともに、その説明を省略する。
また、第1実施形態に係る情報処理装置100と本実施形態に係る情報処理装置との違いは、当該第1実施形態に係る情報処理装置100が行うステップS105の処理が異なる。この点を中心に説明を進める。
また、第1実施形態に係る情報処理装置100と本実施形態に係る情報処理装置との違いは、当該第1実施形態に係る情報処理装置100が行うステップS105の処理が異なる。この点を中心に説明を進める。
図6は、本実施形態に係る情報処理装置が行う指先高さ取得処理の処理手順の一例を示すフローチャートである。
なお、本実施形態に係る情報処理装置は、第1実施形態に係る情報処理装置100とは異なり探索窓を設定しない。
本実施形態に係る情報処理装置では、この探索窓の設定に代えて、第二基準点である垂線の足202と第一基準点である指先201を世界座標で結んだ線分を用いる。具体的には、この線分を距離画像座標系に投影した線上とその近傍を探索する。これにより、配置物体がZ方向に長い場合であっても計算量を十分に削減することが可能になる。
なお、本実施形態に係る情報処理装置は、第1実施形態に係る情報処理装置100とは異なり探索窓を設定しない。
本実施形態に係る情報処理装置では、この探索窓の設定に代えて、第二基準点である垂線の足202と第一基準点である指先201を世界座標で結んだ線分を用いる。具体的には、この線分を距離画像座標系に投影した線上とその近傍を探索する。これにより、配置物体がZ方向に長い場合であっても計算量を十分に削減することが可能になる。
CPU110は、世界座標における第一基準点(指先201)と第二基準点(足202)に基づいて、これらを結ぶ線分を取得する(S300)。なお、タッチ点203はこの線分上に存在する。
CPU110は、ステップS300の処理において取得した線分を距離画像座標系に投影した線(図4(c)に示す破線)として設定する(S301)。
具体的には、線分上で既定の刻み幅(例えば、3[mm])毎にとった点を距離画像座標系に変換して距離値を無視することで、2次元点の集合として線を設定する。なお、距離画像座標系においてこの線上にタッチ点203は存在する。また、先述したようにレンズ歪みや座標変換誤差のためこの線は、図4(c)に示すように一般的に直線にはならない。
CPU110は、ステップS300の処理において取得した線分を距離画像座標系に投影した線(図4(c)に示す破線)として設定する(S301)。
具体的には、線分上で既定の刻み幅(例えば、3[mm])毎にとった点を距離画像座標系に変換して距離値を無視することで、2次元点の集合として線を設定する。なお、距離画像座標系においてこの線上にタッチ点203は存在する。また、先述したようにレンズ歪みや座標変換誤差のためこの線は、図4(c)に示すように一般的に直線にはならない。
CPU110は、ステップS301の処理において設定した線上とその近傍を探索し、指先位置からの最短距離を指先高さとして取得する(S302)。
具体的には、設定した線の各点とそれらの近傍を探索して、世界座標系における指先との距離を算出し、算出結果のうち最小値を指先高さとして取得する。なお、線上のみならずその近傍も探索するのは、量子化誤差に対応するためである。
具体的には、設定した線の各点とそれらの近傍を探索して、世界座標系における指先との距離を算出し、算出結果のうち最小値を指先高さとして取得する。なお、線上のみならずその近傍も探索するのは、量子化誤差に対応するためである。
[第3実施形態]
例えば、装置の設置環境等によっては距離画像に含まれるノイズが多くなり、手領域を正確に抽出できない場合もある。
具体的には、第1、第2実施形態ではステップS101の処理において背景差分を行い、距離画像中で背景距離画像よりZ値が大きく、且つ、操作領域の境界に接している連結した領域を前記手領域として取得している。しかし、距離画像に含まれるノイズが多い場合には手が存在しない領域も手領域として検出される恐れがある。
このような場合、前景(ユーザの手)と背景(配置物体)の差が所定の閾値より大きい場合のみそれらを手領域として抽出する。その際は、指先位置は必ずその閾値より高くなることを利用して、探索範囲をさらに絞ることが可能になる。
例えば、装置の設置環境等によっては距離画像に含まれるノイズが多くなり、手領域を正確に抽出できない場合もある。
具体的には、第1、第2実施形態ではステップS101の処理において背景差分を行い、距離画像中で背景距離画像よりZ値が大きく、且つ、操作領域の境界に接している連結した領域を前記手領域として取得している。しかし、距離画像に含まれるノイズが多い場合には手が存在しない領域も手領域として検出される恐れがある。
このような場合、前景(ユーザの手)と背景(配置物体)の差が所定の閾値より大きい場合のみそれらを手領域として抽出する。その際は、指先位置は必ずその閾値より高くなることを利用して、探索範囲をさらに絞ることが可能になる。
本実施形態では、前景物体を抽出する際の閾値を設ける場合に、さらに計算量を削減することができる情報処理装置について説明する。なお、第1、第2実施形態において説明した機能構成と同じものは同一の符号を付すとともに、その説明を省略する。
図7は、本実施形態に係る情報処理装置によるユーザ操作の認識処理の処理手順の一例を示すフローチャートである。なお、図7に示す各処理は、主としてCPU110により実行される。
また、図8は、ユーザの手(指先)と配置物体104の状態を説明するための図である。
図8(a)は、配置物体104上に指先201が存在する状態を世界座標のX軸方向から見た場合の一例を示す図である。また、図8(b)は、図8(a)に示す状態と同じタイミングにおいて距離センサ115が取得した距離画像の一例を示す図である。
なお、図8(b)に示す配置物体104は、距離画像として取得した際のレンズ歪みや座標変換誤差などによる「歪み」が生じているものとして示している。
また、図8は、ユーザの手(指先)と配置物体104の状態を説明するための図である。
図8(a)は、配置物体104上に指先201が存在する状態を世界座標のX軸方向から見た場合の一例を示す図である。また、図8(b)は、図8(a)に示す状態と同じタイミングにおいて距離センサ115が取得した距離画像の一例を示す図である。
なお、図8(b)に示す配置物体104は、距離画像として取得した際のレンズ歪みや座標変換誤差などによる「歪み」が生じているものとして示している。
また、本実施形態に係る情報処理装置が行うステップS400〜S407の処理の内、第1実施形態に係る情報処理装置100が行う各処理と異なるものは、ステップS101に対するステップS401、ステップS103に対するステップS403の処理である。この点を中心に説明を進める。
図7に示すように、CPU110は、背景情報取得部121を介して、RAM111に保持された距離画像と背景距離画像の差分(背景差分)に基づいて手領域を取得する(S401)。
具体的には、CPU110は、距離画像中において背景距離画像より所定の閾値(第1の閾値)以上Z値が大きく、且つ、操作領域102の境界に接している連結した領域を前景領域(手領域)として取得する。なお、図8(a)では水平方向に延びる点線が閾値(第1の閾値)を表している。
具体的には、CPU110は、距離画像中において背景距離画像より所定の閾値(第1の閾値)以上Z値が大きく、且つ、操作領域102の境界に接している連結した領域を前景領域(手領域)として取得する。なお、図8(a)では水平方向に延びる点線が閾値(第1の閾値)を表している。
CPU110は、基準点取得部123を介して、世界座標において指先201から基準タッチ面であるテーブル面101に向けて下ろした垂線上に存在し、且つ、指先201から所定の距離だけ離れた位置の点を第一基準点300として取得する(S403)。
なお、所定の距離は第1の閾値以下であるとする。また、図8(a)では所定の距離が閾値に等しいものとして示している。
このようにして、第一基準点300の世界座標(Xt、Yt、Zt´)と距離画像座標(Ut´、Vt´、Dt´)を取得する。なお、第一基準点300は、タッチ点203よりZ値が大きく、且つ、指先201よりZ値が小さいものとなる。
なお、所定の距離は第1の閾値以下であるとする。また、図8(a)では所定の距離が閾値に等しいものとして示している。
このようにして、第一基準点300の世界座標(Xt、Yt、Zt´)と距離画像座標(Ut´、Vt´、Dt´)を取得する。なお、第一基準点300は、タッチ点203よりZ値が大きく、且つ、指先201よりZ値が小さいものとなる。
本実施形態に係る情報処理装置により設定される探索窓(図8(b)に示す点線の矩形)は、指先201を第一基準点として用いた第1実施形態に係る探索窓(図4(b)参照)と比較して、探索窓のサイズが小さくなる。そのため、前景物体を抽出する際の閾値を設ける場合であっても計算量を削減することが可能になる。
[第4実施形態]
これまで説明した各実施形態では、配置物体を背景として扱い検出はしなかった。しかし、アプリケーションによっては配置物体を検出する場合もある。
配置物体の検出は、例えばテーブル面101より所定の閾値以上高いピクセルの塊であり、且つ、操作領域の端に接していないものを配置物体として検出したりする。この配置物体を検出するときの当該配置物体は所定の閾値以上の高さを有する、という情報に基づいてさらに計算量を削減することが可能となる。
これまで説明した各実施形態では、配置物体を背景として扱い検出はしなかった。しかし、アプリケーションによっては配置物体を検出する場合もある。
配置物体の検出は、例えばテーブル面101より所定の閾値以上高いピクセルの塊であり、且つ、操作領域の端に接していないものを配置物体として検出したりする。この配置物体を検出するときの当該配置物体は所定の閾値以上の高さを有する、という情報に基づいてさらに計算量を削減することが可能となる。
本実施形態では、配置物体を検出する場合であっても計算量を削減することができる情報処理装置について説明する。なお、第1、第2、第3実施形態において説明した機能構成と同じものは同一の符号を付すとともに、その説明を省略する。
図9は、本実施系形態に係る情報処理装置のハードウェア構成の一例を説明するための図である。なお、第1実施形態に係る情報処理装置100のハードウェア構成(図2(b)参照)との差異は、本実施系形態に係る情報処理装置が配置物体取得部127を有する点である。配置物体取得部127は、配置物体が存在する領域を検出して取得する。詳細は後述する。
図10は、本実施形態に係る情報処理装置によるユーザ操作の認識処理の処理手順の一例を示すフローチャートである。なお、図10に示す各処理は、主としてCPU110により実行される。
また、図11は、ユーザの手(指先)と配置物体104の状態を説明するための図である。
図11(a)は、配置物体104上に指先201が存在する状態を世界座標のX軸方向から見た場合の一例を示す図である。また、図11(b)は、図11(a)に示す状態と同じタイミングにおいて距離センサ115が取得した距離画像の一例を示す図である。
なお、図11(b)に示す配置物体104は、距離画像として取得した際のレンズ歪みや座標変換誤差などによる「歪み」が生じているものとして示している。
また、図11は、ユーザの手(指先)と配置物体104の状態を説明するための図である。
図11(a)は、配置物体104上に指先201が存在する状態を世界座標のX軸方向から見た場合の一例を示す図である。また、図11(b)は、図11(a)に示す状態と同じタイミングにおいて距離センサ115が取得した距離画像の一例を示す図である。
なお、図11(b)に示す配置物体104は、距離画像として取得した際のレンズ歪みや座標変換誤差などによる「歪み」が生じているものとして示している。
図10に示すように、CPU110は、距離情報取得部120、距離センサ115を介して、距離画像を一定時間毎に時系列に従って取得する(S700)。
CPU110は、背景情報取得部121を介して、RAM111に保持された距離画像と背景距離画像の差分(背景差分)に基づいて手領域を取得する(S701)。本処理は、図3に示すステップS101の処理、あるいは図7に示すステップS401の処理と同等の処理である。
CPU110は、背景情報取得部121を介して、RAM111に保持された距離画像と背景距離画像の差分(背景差分)に基づいて手領域を取得する(S701)。本処理は、図3に示すステップS101の処理、あるいは図7に示すステップS401の処理と同等の処理である。
CPU110は、指示点取得部122を介して、ユーザの指先を指示点とする指先201の座標情報を取得する(S702)。
CPU110は、配置物体取得部127を介して、RAM111に保持された距離画像と初期背景距離画像の差分に基づいて配置物体領域を取得する(S703)。
この初期背景距離画像は、例えば背景情報取得部121を介して取得した、ユーザが手を操作領域102に侵入させる前のテーブル面101を撮像した距離画像である。なお、初期背景距離画像は、認識処理の開始から終了まで保持される。
具体的には、CPU110は、距離画像において初期背景距離画像より所定の閾値(第2の閾値)以上Z値が大きく、且つ、操作領域102の境界に接していない連結した領域を配置物体領域として取得する。図11(a)水平方向に延びる点線が閾値(第2の閾値)を表している。
CPU110は、配置物体取得部127を介して、RAM111に保持された距離画像と初期背景距離画像の差分に基づいて配置物体領域を取得する(S703)。
この初期背景距離画像は、例えば背景情報取得部121を介して取得した、ユーザが手を操作領域102に侵入させる前のテーブル面101を撮像した距離画像である。なお、初期背景距離画像は、認識処理の開始から終了まで保持される。
具体的には、CPU110は、距離画像において初期背景距離画像より所定の閾値(第2の閾値)以上Z値が大きく、且つ、操作領域102の境界に接していない連結した領域を配置物体領域として取得する。図11(a)水平方向に延びる点線が閾値(第2の閾値)を表している。
CPU110は、基準点取得部123を介して、指先201の世界座標(Xt、Yt、Zt)を第一基準点として取得する。また、CPU110は、基準点取得部123を介して、指先201から基準タッチ面であるテーブル面101に向けて下ろした垂線と当該テーブル面101とが交差する足202の位置を第二基準点として取得する(S704)。
CPU110は、ステップS704の処理において取得した第二基準点(足202)が距離画像中において配置物体104の上に存在するか否かを判別する(S705)。
なお、本実施形態に係る情報処理装置では、第二基準点(足202)のデプス値が基準タッチ面であるテーブル面101に相当するデプス値と等しい場合、当該第二基準点は配置物体104の上に存在しないと判別する。つまり、この垂線上に配置物体104の少なくとも一部が存在するか否かが判別される。
なお、本実施形態に係る情報処理装置では、第二基準点(足202)のデプス値が基準タッチ面であるテーブル面101に相当するデプス値と等しい場合、当該第二基準点は配置物体104の上に存在しないと判別する。つまり、この垂線上に配置物体104の少なくとも一部が存在するか否かが判別される。
配置物体104の上に存在しないと判別した場合(S705:No)、ステップS706の処理に移行する。また、配置物体104の上に第二基準点が存在すると判別した場合(S705:Yes)、ステップS707の処理に移行する。
CPU110は、基準点取得部123を介して、指先201からテーブル面101に向けて下ろした垂線上に存在し、且つ、基準タッチ面から所定の距離だけ高い位置にある点400を第二基準点(第二基準点400)として更新する(S706)。なお、所定の距離は、第2の閾値以下であるとする。
このようにして、第二基準点である点400の世界座標(Xt、Yt、Z1)と距離画像座標(U1、V1、D1)が取得される。なお、第二基準点である点400はタッチ点203よりZ値が小さいものである。
このようにして、第二基準点である点400の世界座標(Xt、Yt、Z1)と距離画像座標(U1、V1、D1)が取得される。なお、第二基準点である点400はタッチ点203よりZ値が小さいものである。
CPU110は、距離取得部124を介して、指先201からタッチ面(図11(a)に示す配置物体104の上面)に向けて下ろした垂線の長さを指先高さとして取得する(S707)。
CPU110は、タッチ認識部125を介して、ユーザが行った操作がタッチ操作であるか否かを識別する(S708)。
CPU110は、背景情報取得部121を介して、背景距離画像を取得する(S709)。
CPU110は、タッチ認識部125を介して、ユーザが行った操作がタッチ操作であるか否かを識別する(S708)。
CPU110は、背景情報取得部121を介して、背景距離画像を取得する(S709)。
本実施形態に係る情報処理装置により設定される探索窓(図11(b)に示す点線の矩形)は、足202を第二基準点として用いた第1実施形態に係る探索窓(図4(b)参照)と比較して、探索窓のサイズが小さくなる。そのため、配置物体を検出する場合であっても計算量を削減することが可能になる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム等のコンピュータにおける1つ以上のプロセッサがコンピュータプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上記説明した実施形態は、本発明をより具体的に説明するためのものであり、本発明の範囲が、これらの例に限定されるものではない。
Claims (16)
- 所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する距離情報取得手段と、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する背景取得手段と、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する指示点取得手段と、
前記指示点を第一基準点として取得し、当該指示点から前記第1の領域に向けた垂線が当該第1の領域と交差する交点を第二基準点として取得する基準点取得手段と、
前記第一基準点と第二基準点とに基づく領域から前記空間内における前記指示点と前記第2領域との距離を導出する距離取得手段と、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する識別手段と、を有することを特徴とする、
情報処理装置。 - 所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する距離情報取得手段と、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する背景取得手段と、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する指示点取得手段と、
前記指示点から前記第2の領域に向けた垂線が当該第2の領域と交差する第1の交点と当該指示点とを結ぶ線分上に存在する第一基準点を取得し、当該指示点から前記第1の領域に向けた垂線が当該第1の領域と交差する第2の交点を第二基準点として取得する基準点取得手段と、
前記第一基準点と第二基準点とに基づく領域から前記空間内における前記指示点と前記第2領域との距離を導出する距離取得手段と、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する識別手段と、を有することを特徴とする、
情報処理装置。 - 所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する距離情報取得手段と、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する背景取得手段と、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する指示点取得手段と、
前記指示点を第一基準点として取得し、当該示点から前記第1の領域に向けた垂線が当該第1の領域と交差する第2の交点と当該指示点とを結ぶ線分上に存在する第二基準点を取得する基準点取得手段と、
前記第一基準点と第二基準点とに基づく領域から前記空間内における前記指示点と前記第2領域との距離を導出する距離取得手段と、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する識別手段と、を有することを特徴とする、
情報処理装置。 - 前記距離取得手段は、前記背景画像において前記第一基準点と前記第二基準点を対角点とする領域を設定し、設定した当該領域を探索することで前記距離を取得することを特徴とする、
請求項1、2又は3に記載の情報処理装置。 - 前記距離取得手段は、前記空間内において前記第一基準点と前記第二基準点を結んだ線分を前記背景画像に投影し、当該投影された線上、又は、その近傍を探索することで前記距離を導出することを特徴とする、
請求項1乃至4いずれか1項に記載の情報処理装置。 - 前記指示点取得手段は、前記距離画像の距離情報と前記背景画像の距離情報を比較し、その差分が第1の閾値よりも大きい領域を前景領域として抽出し、抽出した前景領域から前記指示点を検出することを特徴とする、
請求項1、2又は3に記載の情報処理装置。 - 前記基準点取得手段は、前記指示点よりも所定の距離だけ前記第1の領域側に近い位置を前記第一基準点として取得し、当該所定の距離は前記第1の閾値以下であることを特徴とする、
請求項6に記載の情報処理装置。 - 前記空間のうち前記物体が存在する領域を検出して取得する配置物体取得手段を有し、
前記配置物体取得手段は、前記距離画像の距離情報と前記物体が存在しないときの距離画像の距離情報を比較し、その差分が第2の閾値よりも大きい領域を配置物体領域として取得することを特徴とする、
請求項1、2又は3に記載の情報処理装置。 - 前記基準点取得手段は、前記指示点から前記第1の領域に向けた垂線上に前記物体の少なくとも一部が存在する場合、当該指示点から当該第1の領域に向けた垂線上に存在し、且つ、当該第1の領域から所定の距離だけ高い位置を前記第二の基準点として取得し、当該所定の距離は前記第2の閾値以下であることを特徴とする、
請求項8に記載の情報処理装置。 - 情報処理装置の制御方法であって、
所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する工程と、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する工程と、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する工程と、
前記指示点を第一基準点として取得し、当該指示点から前記第1の領域に向けた垂線が当該第1の領域と交差する交点を第二基準点として取得する工程と、
前記第一基準点と第二基準点とに基づく領域から前記第2の領域を求め、前記空間内における前記指示点と前記第2領域との距離を導出する工程と、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する工程と、を有することを特徴とする、
情報処理装置の制御方法。 - 情報処理装置の制御方法であって、
所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する工程と、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する工程と、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する工程と、
前記指示点から前記第2の領域に向けた垂線が当該第2の領域と交差する第1の交点と当該指示点とを結ぶ線分上に存在する第一基準点を取得し、当該指示点から前記第1の領域に向けた垂線が当該第1の領域と交差する第2の交点を第二基準点として取得する工程と、
前記第一基準点と第二基準点とに基づく領域から前記空間内における前記指示点と前記第2領域との距離を導出する工程と、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する工程と、を有することを特徴とする、
情報処理装置の制御方法。 - 情報処理装置の制御方法であって、
所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する工程と、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する工程と、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する工程と、
前記指示点を第一基準点として取得し、当該示点から前記第1の領域に向けた垂線が当該第1の領域と交差する第2の交点と当該指示点とを結ぶ線分上に存在する第二基準点を取得する工程と、
前記第一基準点と第二基準点とに基づく領域から前記空間内における前記指示点と前記第2領域との距離を導出する工程と、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する工程と、を有することを特徴とする、
情報処理装置の制御方法。 - コンピュータを情報処理装置として動作させるためのコンピュータプログラムであって、
前記コンピュータを、
所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する距離情報取得手段、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する背景取得手段、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する指示点取得手段、
前記指示点を第一基準点として取得し、当該指示点から前記第1の領域に向けた垂線が当該第1の領域と交差する交点を第二基準点として取得する基準点取得手段、
前記第一基準点と第二基準点とに基づく領域から前記第2の領域を求め、前記空間内における前記指示点と前記第2領域との距離を導出する距離取得手段、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する識別手段、として機能させることを特徴とする、
コンピュータプログラム。 - コンピュータを情報処理装置として動作させるためのコンピュータプログラムであって、
前記コンピュータを、
所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する距離情報取得手段、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する背景取得手段、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する指示点取得手段、
前記指示点から前記第2の領域に向けた垂線が当該第2の領域と交差する第1の交点と当該指示点とを結ぶ線分上に存在する第一基準点を取得し、当該指示点から前記第1の領域に向けた垂線が当該第1の領域と交差する第2の交点を第二基準点として取得する基準点取得手段、
前記第一基準点と第二基準点とに基づく領域から前記第2の領域を求め、前記空間内における前記指示点と前記第2領域との距離を導出する距離取得手段、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する識別手段、として機能させることを特徴とする、
コンピュータプログラム。 - コンピュータを情報処理装置として動作させるためのコンピュータプログラムであって、
前記コンピュータを、
所定の空間における第1の領域と当該第1の領域に動的に配置される物体上の第2の領域を計測し、前記計測に用いたセンサから当該空間内の被写体までの距離を示す距離情報を取得する距離情報取得手段、
前記距離情報に基づいて、前記空間のうち背景を示す背景情報を取得する背景取得手段、
前記背景情報と前記空間内に所定の指示物体が存在する状態で取得した前記距離情報とに基づく、前記空間内における所定の指示物体の領域から指示点を検出する指示点取得手段、
前記指示点を第一基準点として取得し、当該示点から前記第1の領域に向けた垂線が当該第1の領域と交差する第2の交点と当該指示点とを結ぶ線分上に存在する第二基準点を取得する基準点取得手段、
前記第一基準点と第二基準点とに基づく領域から前記第2の領域を求め、前記空間内における前記指示点と前記第2領域との距離を導出する距離取得手段、
前記距離取得手段が導出した距離に基づいて、前記第2の領域に対する前記指示物体の指示状態を識別する識別手段、として機能させることを特徴とする、
コンピュータプログラム。 - 請求項13、14、15いずれか一項に記載のコンピュータプログラムをコンピュータが読み取り可能に記憶した記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017083349A JP2018181169A (ja) | 2017-04-20 | 2017-04-20 | 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017083349A JP2018181169A (ja) | 2017-04-20 | 2017-04-20 | 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018181169A true JP2018181169A (ja) | 2018-11-15 |
Family
ID=64275651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017083349A Pending JP2018181169A (ja) | 2017-04-20 | 2017-04-20 | 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018181169A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111831161A (zh) * | 2020-07-23 | 2020-10-27 | 吕嘉昳 | 基于触摸方法自动识别显示屏幕中触点位置的方法 |
-
2017
- 2017-04-20 JP JP2017083349A patent/JP2018181169A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111831161A (zh) * | 2020-07-23 | 2020-10-27 | 吕嘉昳 | 基于触摸方法自动识别显示屏幕中触点位置的方法 |
CN111831161B (zh) * | 2020-07-23 | 2023-10-03 | 吕嘉昳 | 基于触摸方法自动识别显示屏幕中触点位置的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5991041B2 (ja) | 仮想タッチスクリーンシステム及び双方向モード自動切換方法 | |
JP6248533B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP6723814B2 (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
US9836130B2 (en) | Operation input device, operation input method, and program | |
US9916043B2 (en) | Information processing apparatus for recognizing user operation based on an image | |
JP2016091457A (ja) | 入力装置、指先位置検出方法及び指先位置検出用コンピュータプログラム | |
JP6452456B2 (ja) | 情報処理装置とその制御方法、プログラム、記憶媒体 | |
JP6127564B2 (ja) | タッチ判定装置、タッチ判定方法、およびタッチ判定プログラム | |
JPWO2017029749A1 (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
KR20150106823A (ko) | 제스처 인식 장치 및 제스처 인식 장치의 제어 방법 | |
US10254893B2 (en) | Operating apparatus, control method therefor, and storage medium storing program | |
JP6452369B2 (ja) | 情報処理装置とその制御方法、プログラム、記憶媒体 | |
JP2016018458A (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
CN106598422B (zh) | 混合操控方法及操控系统和电子设备 | |
CN106569716B (zh) | 单手操控方法及操控系统 | |
JP2016071547A (ja) | 情報処理装置とその制御方法、プログラム、記憶媒体 | |
JP2017219942A (ja) | 接触検出装置、プロジェクタ装置、電子黒板装置、デジタルサイネージ装置、プロジェクタシステム、接触検出方法、プログラム及び記憶媒体。 | |
JP6501806B2 (ja) | 情報処理装置、操作検出方法、及びコンピュータプログラム | |
JP2018181169A (ja) | 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体 | |
JP6555958B2 (ja) | 情報処理装置、その制御方法、プログラム、および記憶媒体 | |
JP6643825B2 (ja) | 装置及び方法 | |
JP2018063555A (ja) | 情報処理装置、情報処理方法及びプログラム | |
TWI444875B (zh) | 多點觸碰輸入裝置及其使用單點觸控感應板與影像感測器之資料融合之介面方法 | |
JP2017049661A (ja) | 情報処理装置とその制御方法、プログラム、記憶媒体 | |
JP2017049662A (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 |