JP2018055685A - 情報処理装置、その制御方法、プログラム、および記憶媒体 - Google Patents
情報処理装置、その制御方法、プログラム、および記憶媒体 Download PDFInfo
- Publication number
- JP2018055685A JP2018055685A JP2017176376A JP2017176376A JP2018055685A JP 2018055685 A JP2018055685 A JP 2018055685A JP 2017176376 A JP2017176376 A JP 2017176376A JP 2017176376 A JP2017176376 A JP 2017176376A JP 2018055685 A JP2018055685 A JP 2018055685A
- Authority
- JP
- Japan
- Prior art keywords
- image
- distance
- pixel
- input
- correction value
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/042—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
- G06F3/0425—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/041—Indexing scheme relating to G06F3/041 - G06F3/045
- G06F2203/04101—2.5D-digitiser, i.e. digitiser detecting the X/Y position of the input means, finger or stylus, also when it does not touch, but is proximate to the digitiser's interaction surface and also measures the distance of the input means within a short range in the Z direction, possibly with a separate measurement setup
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
【課題】 本発明は、距離の誤差が領域毎に異なる傾向で経時的に変化し得る距離画像に基づいて距離画像中の任意の位置に存在する物体を検出する処理の精度を向上させることを目的とする。【解決手段】 本発明は、上記の目的を達成するために、所定の面101と交差する方向に撮像部103を向けて撮像することにより取得された、各画素に前記方向に沿った距離が反映された入力画像を繰り返し取得する入力取得部210と、取得された入力画像のうち、前記所定の面と前記撮像部の間に存在する物体が撮像された物体領域を特定する特定部213と、前記入力画像のうち前記物体領域を除く部分の画素に反映された距離と、前記撮像部と前記所定の面の間の基準距離との差分に基づく補正値を使って、前記入力取得手段に繰り返し取得される入力画像の各画素に反映された距離を補正する補正部211とを備える。【選択図】 図2
Description
本発明は、距離画像センサで観測される距離画像の誤差を補正する技術に関する。
近年では、机や壁など任意の対象面に投影されたユーザインタフェース(以下、UI)や、机に載置された物体に対してタッチなどのジェスチャ操作が行われる場面がある。このような場面においては、TOF(Time Of Flight)方式の距離画像センサなど、被写体までの距離情報を得られる距離画像の撮像部を用いて対象面を撮像し、撮像部と対象面の間に存在する手や物体を検出することで操作を認識する場合が多い。具体的には、距離画像中に検出した手の指先の座標とその座標に相当する距離に基づいて指先の3次元の位置を導出し、その位置や軌跡に基づいて操作を認識する。
ここで距離画像に含まれる距離情報の精度はセンサの設置環境や温度に起因して変化する傾向があり、時間経過とともに誤差が変化する。ジェスチャ操作中の数十秒の間に数十mmの範囲で誤差が変化する場合もあるため、指先の3次元位置を高精度に検出する上で距離画像に含まれる距離情報を自動的に補正することが必要となる。
特許文献1は、距離画像中の載置面の内、物体が存在しないと予め想定される領域の計測距離と、予め定められた基準距離との誤差を相殺するように距離画像を補正することを開示している。
距離画像の誤差は領域(画素)毎に異なる傾向で経時的に変化する場合があり、距離画像全体を一律に補正しても適切な距離が得られないことがある。一方、ジェスチャ操作中のように、距離画像中の手や物体の位置を予め想定できない場合であっても、領域毎に適切な補正を行う必要がある。特許文献1は、そのような場合に対する考慮はなされていない。
本発明は、距離の誤差が領域毎に異なる傾向で経時的に変化し得る距離画像に基づいて距離画像中の任意の位置に存在する物体を検出する処理の精度を向上させることを目的とする。
本発明は、上記の目的を達成するために、所定の面と交差する方向に撮像部を向けて撮像することにより取得された、各画素に前記方向に沿った距離が反映された入力画像を繰り返し取得する入力取得手段と、前記入力取得手段によって取得された入力画像のうち、前記所定の面と前記撮像部の間に存在する物体が撮像された物体領域を特定する特定手段と、前記入力画像のうち前記物体領域を除く部分の画素に反映された距離と、前記撮像部と前記所定の面の間の基準距離との差分に基づく補正値を使って、前記入力取得手段に繰り返し取得される入力画像の各画素に反映された距離を補正する補正手段とを備える。
本発明によれば、距離の誤差が領域毎に異なる傾向で経時的に変化し得る距離画像に基づいて距離画像中の任意の位置に存在する物体を検出する処理の精度が向上する。
以下、本発明に係る実施形態の情報処理を、図面を参照して詳細に説明する。なお、実施例に記載する構成は例示であり、本発明の範囲をそれらの構成に限定する趣旨のものではない。
<第1実施形態>
一般的に「タッチ」とは、物体の表面やそこに投影されたアイテムの表示領域に指先を接触または近接させることにより当該物体およびアイテムに対するタッチ入力を開始する動作である。また、「リリース」とは、タッチ後の物体およびアイテムから接触または近接させた指先を離すことにより、当該物体およびアイテムに対するタッチ入力を終了する動作である。タッチを採用する多くの情報処理装置は、タッチからリリースに至る間の指先の位置、動き、速度等に基づいて「タップ」、「ムーブ」、「フリック」等の様々なタッチ操作を認識することができる。例えば、指先を対象面にタッチした後、対象面に沿った方向にはほぼ動かさずにすぐリリースするという一流れの入力は「タップ」と呼ばれ、タッチした対象を選択するための指示として認識されることが多い。本実施形態では、タップ操作をUI選択のための入力として認識し、認識する度に操作者に対してフィードバックを行う情報処理装置を例に説明する。
一般的に「タッチ」とは、物体の表面やそこに投影されたアイテムの表示領域に指先を接触または近接させることにより当該物体およびアイテムに対するタッチ入力を開始する動作である。また、「リリース」とは、タッチ後の物体およびアイテムから接触または近接させた指先を離すことにより、当該物体およびアイテムに対するタッチ入力を終了する動作である。タッチを採用する多くの情報処理装置は、タッチからリリースに至る間の指先の位置、動き、速度等に基づいて「タップ」、「ムーブ」、「フリック」等の様々なタッチ操作を認識することができる。例えば、指先を対象面にタッチした後、対象面に沿った方向にはほぼ動かさずにすぐリリースするという一流れの入力は「タップ」と呼ばれ、タッチした対象を選択するための指示として認識されることが多い。本実施形態では、タップ操作をUI選択のための入力として認識し、認識する度に操作者に対してフィードバックを行う情報処理装置を例に説明する。
ここで、スマートフォンやタブレットPCなどの携帯型装置では、多くの場合、表示画面に設けたタッチセンサにより操作者の指先が表示画面に接触したことを直接検出し、タッチ入力を認識することができる。これに対し、タッチセンサを設けない任意の物体上の面に対するタッチ入力を検出する場合は、距離画像センサ(デプスセンサともいう)を用いて指先の位置および指先と対象面との間の距離を計測することが一般的である。そして、その距離が所定の距離より大きい状態から小さい状態に遷移することを「タッチ」、所定の距離よりも小さい状態から大きい状態に遷移することを「リリース」として認識する。距離画像とは、各画素の値に、基準となる位置(例えば、撮像部のレンズ中心など)からその画素に撮像された被撮像面までの、画像の奥行き方向に沿った距離に対応する情報が反映された画像である。代表的な距離画像の撮像部としてTOF方式の距離画像センサが知られている。TOF方式の距離画像センサは、センサから発したレーザ光が撮像対象物に反射されて戻ってくるまでの時間差(位相差)から距離計測を行う。ただし、TOF方式をはじめとする距離画像センサは、設置環境や温度に起因して距離計測精度が変化する傾向がある。特に、ジェスチャ操作中の数十秒の間に数十mmの範囲で誤差が変化する場合もあり、そのような状況では、指先の3次元位置や操作面との接触判定を高精度に検出することが困難である。その結果、タップ操作による選択が認識されないことや、操作者の意図と異なる位置に認識されてしまうことがある。
距離画像の誤差は領域(画素)毎に異なる傾向で経時的に変化する場合があり、距離画像全体を一律に補正しても適切な距離が得られないことがある。一方、ジェスチャ操作中のように、距離画像中の手や物体の位置を予め想定できない場合であっても、領域毎に適切な補正を行う必要がある。
そこで、本実施形態では、対象面と手が撮像された距離画像の画素毎に異なる距離誤差を、経時的に変化する誤差の程度に応じて補正する。具体的には、対象面が撮像された距離画像と、対象面が撮像された際に取得されると推測される基準画像との差分に基づき補正値画像を導出し、補正値画像を用いて距離画像の画素毎の距離の誤差を補正する。特にジェスチャ実行中に撮像部と対象面の間に手が存在する場合には、手領域を除いた画素における差分に基づき補正値画像を導出する。
以下、第1実施形態として、テーブルトップインタフェース(以下、IF)システムのテーブルに投影表示されたUIを操作者が片手の指先によるタッチ入力によって選択し、選択されたUIに応じて投影表示される内容を変更する場合を例に挙げて説明する。利用されるタッチ入力はタップ操作であるとし、テーブルトップIFシステムに搭載された距離画像センサによって操作が認識されるとする。ここで、撮像部は距離画像センサ、対象面はテーブルトップIFシステムのテーブル、撮像部と対象面の間に存在する物体は操作者の手である。なお、以下では、操作者の手によって操作される例を挙げるが、本実施形態は、スタイラスやロボットアームなどの物体によって操作される場合にも適用可能である。また、撮像部と対象面の間に存在する物体として、手以外の物体がテーブル上に載置される場合にも適用可能である。また、テーブルトップIFシステムに限らず、直立したスクリーンやホワイトボード等にテーブルを置き換えて本実施形態を適用することも可能である。
[システムの外観]
図1は、本実施形態に係る情報処理装置100を設置したテーブルトップIFシステムの外観の一例である。また、3次元空間内の位置情報を定義する世界座標系の座標軸も示す。対象面101は、テーブルトップIFシステムのテーブル部分であり、操作者は対象面101に対して手102の指先でタッチ〜リリースすることでタップ操作を行うことが可能である。本実施形態では、対象面101の上方に、対象面101を見下ろすようにして距離画像センサ103が設置される。従って撮像される距離画像では、奥行き方向が対象面101と交差する。すなわち、撮像される距離画像の奥行き方向が対象面101からの距離(高さ)に関連し、この情報がタップ操作の認識に利用される。情報処理装置100は、距離画像中で対象面101よりも前景となる領域を抽出することにより、対象面101上の空間に存在する操作者の手102を検出する。さらに、手102に相当する手領域を解析することにより、距離画像中の指先に相当する座標および距離を取得し、それらに基づき世界座標系における指先の位置を導出する。本実施形態では、距離画像センサ103としてTOF方式のセンサを利用する。なお、距離画像を得られるセンサであれば、必ずしもTOF方式のセンサである必要はなく、パターン光投影方式の赤外光センサやステレオカメラで代用することも可能である。プロジェクタ104は、対象面101に表示画像105の投影表示を行う。表示画像105は、たとえばGUI(Graphical User Interface)を表現するUI画像であり、UI部品である1以上のアイテムを含む。本システムでは、操作者は投影された表示画像105に含まれるアイテム106に対してタップ操作を行う。また、プロジェクタ104は、タップ操作に対する視覚的フィードバックとして、異なる内容の表示画像105や異なる色のアイテム106を投影することが可能である。
図1は、本実施形態に係る情報処理装置100を設置したテーブルトップIFシステムの外観の一例である。また、3次元空間内の位置情報を定義する世界座標系の座標軸も示す。対象面101は、テーブルトップIFシステムのテーブル部分であり、操作者は対象面101に対して手102の指先でタッチ〜リリースすることでタップ操作を行うことが可能である。本実施形態では、対象面101の上方に、対象面101を見下ろすようにして距離画像センサ103が設置される。従って撮像される距離画像では、奥行き方向が対象面101と交差する。すなわち、撮像される距離画像の奥行き方向が対象面101からの距離(高さ)に関連し、この情報がタップ操作の認識に利用される。情報処理装置100は、距離画像中で対象面101よりも前景となる領域を抽出することにより、対象面101上の空間に存在する操作者の手102を検出する。さらに、手102に相当する手領域を解析することにより、距離画像中の指先に相当する座標および距離を取得し、それらに基づき世界座標系における指先の位置を導出する。本実施形態では、距離画像センサ103としてTOF方式のセンサを利用する。なお、距離画像を得られるセンサであれば、必ずしもTOF方式のセンサである必要はなく、パターン光投影方式の赤外光センサやステレオカメラで代用することも可能である。プロジェクタ104は、対象面101に表示画像105の投影表示を行う。表示画像105は、たとえばGUI(Graphical User Interface)を表現するUI画像であり、UI部品である1以上のアイテムを含む。本システムでは、操作者は投影された表示画像105に含まれるアイテム106に対してタップ操作を行う。また、プロジェクタ104は、タップ操作に対する視覚的フィードバックとして、異なる内容の表示画像105や異なる色のアイテム106を投影することが可能である。
なお、対象面101を上方からみた画像が得られる構成であれば、必ずしも距離画像センサ103が上方に設置されている必要はない。例えば、対象面101の上方に設置されたミラーを撮像するように構成したとしても、対象面101を上方から見た画角の画像が得られる。プロジェクタ104も同様に、図1の例では、斜め上方から見下ろすように対象面101上への投影を行うが、異なる方向に向けて投影された投影光を、ミラーなどを利用して対象面101に反射させてもよい。
また、手領域の検出を目的として、可視光センサや赤外センサを対象面101の上方に設置するとしてもよい。可視光センサによって撮像された可視光画像中の肌色領域を抽出し利用することにより、手領域の検出精度が向上する場合がある。ただし、肌色抽出を行う際には、プロジェクタ104が投影表示する表示画像105は、色調や光量を制限することが好ましい。また、プロジェクタ104の投影周期と可視光センサの撮像周期とを同期して、操作者が視覚的に確認できないレベルで高速に投影と撮像を切り替えることで、投影光の影響を受けずに肌色抽出による手領域検出を行うことも可能である。また、赤外センサによって撮像された赤外画像に基づき、たとえば対象面101を撮像した際の輝度と大きく異なる画素を手領域として検出することも可能である。
[装置の構成]
図2(a)は、本実施形態に係る情報処理装置100を含むテーブルトップIFシステムのハードウェア構成図である。中央処理ユニット(CPU)200は、RAM202をワークメモリとして、ROM201や記憶装置203に格納されたOSやプログラムを実行して、各種処理の演算や論理判断などを行い、システムバス204に接続された各構成を制御する。CPU200が実行する処理には、後述する距離画像の補正処理やタッチ入力の認識処理が含まれる。記憶装置203は、ハードディスクドライブや各種インタフェースによって接続された外部記憶装置などであり、実施形態の補正処理・認識処理にかかるプログラムや各種データを記憶する。距離画像センサ103は、CPU200の制御に従い、対象面101と対象面101上の操作者の手102を含む空間の距離画像を撮像し、撮影した距離画像をシステムバス204に出力する。本実施形態では、距離画像の取得方法として、環境光や対象面101上の投影表示による影響が小さい赤外光を利用する方式を基に説明するが、用途に応じて視差方式などを利用することも可能である。プロジェクタ104は、CPU200の制御に従い、対象面101に操作対象となるアイテム106を含む表示画像105やタップ操作に対するフィードバックを投影表示する。
図2(a)は、本実施形態に係る情報処理装置100を含むテーブルトップIFシステムのハードウェア構成図である。中央処理ユニット(CPU)200は、RAM202をワークメモリとして、ROM201や記憶装置203に格納されたOSやプログラムを実行して、各種処理の演算や論理判断などを行い、システムバス204に接続された各構成を制御する。CPU200が実行する処理には、後述する距離画像の補正処理やタッチ入力の認識処理が含まれる。記憶装置203は、ハードディスクドライブや各種インタフェースによって接続された外部記憶装置などであり、実施形態の補正処理・認識処理にかかるプログラムや各種データを記憶する。距離画像センサ103は、CPU200の制御に従い、対象面101と対象面101上の操作者の手102を含む空間の距離画像を撮像し、撮影した距離画像をシステムバス204に出力する。本実施形態では、距離画像の取得方法として、環境光や対象面101上の投影表示による影響が小さい赤外光を利用する方式を基に説明するが、用途に応じて視差方式などを利用することも可能である。プロジェクタ104は、CPU200の制御に従い、対象面101に操作対象となるアイテム106を含む表示画像105やタップ操作に対するフィードバックを投影表示する。
なお図1の利用例では、距離画像センサ103、プロジェクタ104はそれぞれ情報処理装置100に入出力用のインタフェースを介して接続された外部装置であり、情報処理装置100と協同して情報処理システムを構成する。ただし、これらのデバイスは、情報処理装置100に一体化されていても構わない。
図2(b)は、本実施形態における情報処理装置100の機能構成の一例を示すブロック図である。各機能部は、CPU200が、ROM201に格納されたプログラムをRAM202に展開し、後述する各フローチャートに従った処理を実行することで実現される。また例えば、CPU200を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。
入力取得部210は、距離画像センサ103によって撮像された距離画像を、入力画像として一定時間ごとに取得し、RAM202に随時保持する。取得される入力画像は、リアルタイム映像の各フレーム画像に相当する。なお入力取得部210が取得し、各機能部とやり取りする対象は、実際には画像データに対応する信号であるが、本明細書では単に「距離画像を取得する」、または「入力画像を取得する」として説明する。
補正部211は、入力取得部210によって取得された入力画像の各画素に画素値として保持される距離を、補正値画像に基づいて補正する。補正値画像とは、入力画像の各画素に対応する画素を持つ画像で、各画素には入力画像中の対応する画素に保持された距離を補正する値を保持する。補正値画像を導出する処理については後述する。以下では、補正値画像によって補正された距離画像を「補正入力画像」と記すことがある。
基準取得部212は、撮像部と対象面の位置関係に基づき予め定められる基準画像を取得する。基準画像は、撮像部と対象面の間の基準となる距離を定めるものである。本実施形態では、入力画像の各画素に対応する画素を持つ画像で、各画素には距離画像センサ103によって計測誤差が生じない理想的な状況で対象面が撮像された際に取得されるべき値が保持される。基準画像の各画素値は、たとえば、距離画像センサのレンズ特性および世界座標系との並進・回転移動パラメータ、さらに対象面であるテーブルが世界座標系のどの平面と一致するかの情報に基づいて予め算出することが可能である。または、距離画像センサとテーブルの間の実測距離を各画素に与えることで基準画像を生成することも可能である。本実施形態では、基準取得部212は、距離画像センサ103と対象面101の位置関係が確定した時点で生成され、記憶装置203に記憶されていた距離画像を読み出し、RAM202に保持する。
特定部213は、入力された距離画像のうち手領域を特定する。手領域とは、距離画像のうち、操作者の手102が映っている領域である。本実施形態では、補正入力画像と、基準画像の対応する画素同士の差分を算出し、差分の大きさに基づいて対象面から所定距離以上離れている(前景側に存在する)とみなされる画素の集合を手領域として特定する。ここで補正された入力画像から手領域を特定するのは、補正されたことで各画素が持つ距離値に生じた計測誤差の影響が低減されており、より正確に手領域の境界を判定可能であるからである。また、手以外の物体が操作に用いられる場合など、撮像部である距離画像センサ103と対象面101の間に存在し得るシステムでは、特定部213は手およびそれらを含め物体が撮像されている領域を物体領域として特定する。
差分導出部214は、入力画像と基準画像の対応する画素同士の差分を算出する処理を行い、得られた差分値を対応する画素の画素値として保持する差分画像を導出する。ここで、入力画像中の、対象面だけが撮像されている画素(物体領域ではない画素)に限れば、理想的には、入力画像から得られる距離情報と基準画像から得られる距離情報は一致し、その差分はゼロとなる。しかしながら一致しない場合、その差分はセンサ設置環境や温度などに起因する誤差に相当するとみなすことができる。本実施形態は、この誤差に相当する距離画像と基準画像の差分を相殺するような補正値画像を導出し、距離画像を補正する。
補正値導出部215は、補正値画像を導出する。補正値画像とは、入力画像の各画素に対応する画素を持つ画像で、各画素には、入力画像の各画素に反映された距離を補正するための値が保持される。本実施形態では、入力取得部210によってある周期で取得された入力画像に基づいて導出される補正値画像は、次の周期で取得される入力画像を補正するために利用される。すなわち、情報処理装置100の起動後の最初のフレームで取得される入力画像を除けば、入力画像が得られた時既に前のフレームの入力画像に基づいて導出された補正値画像がRAM202に保持された状態にある。情報処理装置100が起動されてから最初に取得される入力画像については、初期画像として用意された補正値画像が利用される。補正値導出部215は、現フレームの補正入力画像内に手領域が特定されている場合、既にRAM202に保持されている補正値画像のうち、特定されている手領域を除いた領域(画素)に対応する部分に、差分画像の対応する部分を統合する。そして、補正値画像の内部で画素値が不連続になったり、画素値が存在しない欠損領域が発生したりすることを回避するために、補正値画像の各画素に分布する距離値を任意の平面に近似する。なお現フレームの入力画像とは、最後に取得された入力画像である。
位置導出部216は、入力画像内に特定された手領域のうち所定の条件を満たす位置の画像座標を、入力位置として検出する。本実施形態では、操作者の手102のうち指先部分を特定するため、手領域の輪郭点を抽出し、その曲率が最も指先らしいとみなされる輪郭点を入力位置として検出する。ただし、入力位置の検出方法はこれに限らない。たとえば、距離画像の端部と手領域の交点からの距離が最長となる手領域中の画素の位置を、手領域のうち最も指先らしい位置として検出し、入力位置としてもよい。このような置き換えにより、検出処理のために生じる計算を簡略化できる場合がある。また、位置導出部216は、画像座標の状態で検出した入力位置および、入力位置に相当する画素または画素群が保持する距離値を座標系変換し、入力位置の世界座標を導出する。本実施形態では、距離画像センサのレンズ特性および世界座標系との並進・回転移動パラメータを用いることにより、距離画像中の座標系と距離値で定義されていた入力位置を世界座標に変換する。なお、操作に利用される物体が手ではなく、例えばスタイラスの場合も、同様に物体領域の端部など所定の一部を、入力位置として検出し、その位置を世界座標に変換して取得する。
認識部217は、入力位置の世界座標の軌跡に基づき、指先による対象面へのタップ操作を認識する。本実施形態では、少なくとも指先と対象面との距離が所定距離以下に近づいてから離れるまでの間の経過時間と対象面に水平な方向への移動量とがそれぞれ所定値以下であることに基づきタップ操作を認識する。
表示制御部218は、ROM201や記憶装置203に記憶された情報を用いて、プロジェクタ104で対象面101に投影表示する表示画像105を生成、変更し、出力する。本実施形態では、所定の位置(たとえば、アイテム106の表示領域内)においてタップ操作が認識された場合に、表示画像105の内容を変更して表示する。
[タッチ入力による認識処理の説明]
図3のフローチャートに従って第1実施形態で実行される、タッチ入力の認識処理の流れを説明する。ここでは一例として、対象面101にプロジェクタ104より投影表示された表示画像105内のアイテム106が、操作者のタップ操作によって選択されたことに応じて、表示画像105の内容を変更するアプリケーションが動作する状況を説明する。以下、図3のフローチャートで表される処理を「タッチ入力認識処理」と呼ぶことがある。図3のフローチャートの処理は、情報処理装置の各機能部を構成するCPU200がROM201に格納されたプログラムをRAM202に展開して実行することで実現される。本実施形態では、距離画像センサ103によって撮像された距離画像が情報処理装置100に入力されたことに応じて図3のフローチャートの処理が開始される。また本実施形態では、図3のフローチャートの処理が、距離画像センサ103から距離画像が入力される毎に繰り返される。従って処理が繰り返される周期は、距離画像センサ103の撮像映像のフレームレートに一致する。なお、以下では適宜、第1実施形態の距離画像の補正処理および補正値画像の導出処理の全体プロセスを表す図5を参照する。
図3のフローチャートに従って第1実施形態で実行される、タッチ入力の認識処理の流れを説明する。ここでは一例として、対象面101にプロジェクタ104より投影表示された表示画像105内のアイテム106が、操作者のタップ操作によって選択されたことに応じて、表示画像105の内容を変更するアプリケーションが動作する状況を説明する。以下、図3のフローチャートで表される処理を「タッチ入力認識処理」と呼ぶことがある。図3のフローチャートの処理は、情報処理装置の各機能部を構成するCPU200がROM201に格納されたプログラムをRAM202に展開して実行することで実現される。本実施形態では、距離画像センサ103によって撮像された距離画像が情報処理装置100に入力されたことに応じて図3のフローチャートの処理が開始される。また本実施形態では、図3のフローチャートの処理が、距離画像センサ103から距離画像が入力される毎に繰り返される。従って処理が繰り返される周期は、距離画像センサ103の撮像映像のフレームレートに一致する。なお、以下では適宜、第1実施形態の距離画像の補正処理および補正値画像の導出処理の全体プロセスを表す図5を参照する。
ステップS300では、入力取得部210が、距離画像センサ103から、入力画像500として、表示画像105が投影される対象面101(テーブル)の少なくとも一部を含む空間を撮像した距離画像を取得する。また、操作者による操作が行われる状況であれば、入力画像500には、対象面101と距離画像センサ103の間に存在する操作者の手102が含まれる。ステップS301では、補正部211が、入力取得部210によって取得された入力画像500の各画素が保持する距離を、RAM202に保持されている補正値画像501に基づいて補正し、補正入力画像502を得る。本実施形態では、入力画像500の各画素の値に、補正値画像501の対応する画素の値を加算することで補正を行う。なお、補正の方法はこれに限らず、たとえば乗除算や減算を伴う方法で誤差を補正することも可能である。補正値画像の導出方法については後述のS304で説明する。ステップS301が処理される時にRAM202に保持されている補正値画像は、前のフレームの入力画像500に基づいて導出された画像か、初期状態として用意された初期画像である。
ステップS302では、基準取得部212が、撮像部と対象面の間の基準となる距離を定めた基準画像503を取得する。本実施形態では、距離画像センサのレンズ特性および世界座標系との並進・回転移動パラメータ、テーブル位置情報が世界座標系のどの平面と一致するかの情報504に基づいて算出された画素値を各画素に保持する基準画像503が、予め記憶されている。基準画像503の生成は、たとえば情報処理装置100が設置され、対象面101と距離画像センサ103の位置関係が定まった時点で行われる。
ステップS303では、特定部213が、補正された入力画像500内の手領域505を特定する。本実施形態では、補正入力画像502と基準画像503の差分を画素毎に求め、差分が閾値以上となる画素の集合を手領域505として特定する。これは基準画像503が表す対象面よりも前景にある領域を手領域505として抽出することに相当する。ここで、閾値として、距離画像のノイズの幅より大きく、操作者の手や指の厚みより小さい値を設定することによって、ノイズと欠損の少ない手領域505の特定が可能となる。なお、手領域505の特定方法はこれに限らず、例えば背景差分法を用いて特定することも可能である。その場合は、手が対象面と距離画像センサ103の間存在しない時点において得られた距離画像を背景画像として予め記憶し、それ以降の時点で得られた入力画像500と画素毎に差分を取る。その結果、背景画像よりも前景にある補正入力画像502中の領域を手領域505として特定できる。また、可視光画像の撮像部(可視光画像センサ)を別途設置した上で、可視光画像センサによって撮像された可視光画像中の肌色領域を抽出し利用して手領域505を特定することも可能である。環境によっては可視光画像を利用することで手領域505の検出精度が高まる場合がある。また、赤外画像の撮像部(赤外画像センサ)を別途設置した上で、赤外画像センサによって撮像された赤外画像中の対象面101に対する輝度と大きく異なる画素を手領域505として検出することも可能である。なお、手以外の物体が撮像部と対象面間に存在し得るシステムである場合には、それらが撮像された物体領域も手領域505と同様に特定し、後述の補正値画像501の計算処理に用いられる。
ステップS304では、差分導出部214および補正値導出部215が、補正値画像501を導出する。ここで導出された補正値画像501は、次フレームのタッチ入力認識処理における補正処理(ステップS301)において利用される。補正値画像501の導出処理については後述する。
ステップS305では、特定部213が、手領域505が特定されたか否かを判定し、手領域505が特定された場合(ステップS302でYes)、ステップS306に進む。手領域505が特定されていない場合(ステップS302でNo)、ステップS311に進む。ステップS306では、位置導出部216が、入力位置として、特定された補正入力画像502内の手領域505から、指先に相当する位置を検出する。本実施形態では、手領域505の輪郭点を抽出し、その曲率が最も指先らしいとみなされる輪郭点を入力位置として検出する。ステップS307では、位置導出部216が、距離画像中に検出された入力位置の画像座標と、該当画素(又は画素群)に格納された距離値に基づき、世界座標系における指先の位置を導出する。本実施形態では、距離画像センサのレンズ特性および世界座標系との並進・回転移動パラメータを用いることにより、距離画像中の入力位置を世界座標に変換する。位置導出部216は、導出した入力位置の世界座標を、所定のフレーム分だけRAM202に蓄積する。
ステップS308では、認識部217が、RAM202に蓄積された入力位置の情報を参照し、入力位置の軌跡に基づいて、情報処理装置100に入力された操作を認識される。本実施形態では、少なくとも入力位置と対象面101の間の距離の変化に基づいて、操作者の指先による対象面101へのタップ操作を認識する。タップ操作は、指先と対象面との距離が所定距離以下に近づいてから離れるまでの間の経過時間と対象面に水平な方向への移動量とがそれぞれ所定値以下であることに基づき認識される。
ステップS309では、認識部217が、タップ操作が所定領域(表示画像105中のアイテム106が表示される範囲)において認識されたか否かを判定し、タップ操作が認識された場合(ステップS309でYes)、ステップS310に進む。タップ操作が認識されていない場合(ステップS309でNo)、ステップS311に進む。ステップS310では、表示制御部218が、タップ操作が所定領域内で認識されたことに応じて、表示画像105の内容を変更する。本実施形態では、表示画像105に含まれる画像の色を変更するものとする。ステップS311では、表示制御部218が、プロジェクタ104により対象面101へ表示画像105を投影表示する。なお、タップ操作は一例であり、情報処理装置100は、事前の設定に応じて多種のジェスチャ操作を認識可能となる。上記のようにタップ操作を含む多くのジェスチャ操作は、単一の入力画像500ではなく複数の連続した入力画像の系列において蓄積された入力位置の軌跡、あるいは手領域505の状態の遷移に基づき認識される。
[補正値画像の導出処理の説明]
ここで、ステップS304の補正値画像の導出処理について説明する。図4は第1実施形態に実行される補正値画像の導出処理の流れを表すフローチャートである。図4のフローチャートの処理は、ステップS303の距離画像中の手領域特定処理が行われたことに応じて開始される。
ここで、ステップS304の補正値画像の導出処理について説明する。図4は第1実施形態に実行される補正値画像の導出処理の流れを表すフローチャートである。図4のフローチャートの処理は、ステップS303の距離画像中の手領域特定処理が行われたことに応じて開始される。
まず、ステップS400では、差分導出部214が、ステップS300で取得された入力画像500と、ステップS302で取得された基準画像503との画素毎の差分値を導出する。そして、導出された差分値を、対応する画素の画素値として保持する差分画像506を得る。距離画像中の対象面(テーブル)が映っている画素に限れば、画素毎の差分値が当該時点における画素毎の距離計測誤差であり、本来は0になることが望ましい。そこで、本実施形態では、入力画像500に生じている距離計測誤差を相殺することができる値である差分画像506の画素値を、新たな補正値画像507の画素値として利用する。ただし、撮像部と対象面の間に手が存在する場合、つまり入力画像500中に手領域505が含まれる場合、手領域505中の画素において差分値は距離計測誤差に相当せず、補正値画像507の画素値には適さない。
そこで、ステップS401では、補正値導出部215が、差分画像506のうちステップS303で特定された手領域505に対応する領域を除く領域(画素)を、補正値画像507の対応する部分に統合する。本実施形態では、補正値画像501の画素値を、差分画像506の対応する画素値で上書きすることを統合とする。ただし、統合の方法はこれに限らない。たとえば差分画像506の画素値と元の補正値画像501の画素値との重みづけ和を新たな補正値とすることで、突発的なノイズに伴う極端な補正値の変化を抑制することが可能となる。なお、ステップS303では、補正された入力画像500内の手領域505を特定している。しかしながら、本実施形態では入力画像500、補正入力画像502、基準画像503、補正値画像501、差分画像506が有する画素は全て対応関係を有する。従って、補正入力画像502について特定された手領域505を定義する画像座標(画像内に定義された2次元座標系で示される座標)は、差分画像506や補正値画像507を導出する際にも、手が存在することによる影響を受ける領域として扱うことができる。
このように本実施形態では、ステップS401において、補正値画像507の手領域505に相当する画素においては、最新の入力画像500に基づいて導出された補正値が統合されない。しかしそれだけでは操作者の手がテーブル上でおおよそ静止し、距離画像における手領域505の位置にしばらく変化が無い場合、時間経過に伴い誤差の程度が変化するにもかかわらず、当該領域にける補正値がしばらく更新されない。そこで本実施形態では、ステップS402において、補正値導出部215が、補正値画像507を平面で近似することで、手領域505に相当する部分の画素値にも、入力画像500に基づいて導出された新しい補正値が割り当てされる。これにより、時間の経過に伴って距離計測誤差の大きさが変化しているにも関わらず、手領域505に相当する画素では補正値が更新されないといった問題を解消することができる。なお、補正値画像507を近似する対象は平面に限らず、任意の面で近似するとしてもよい。たとえば、距離計測誤差の空間的特性が理論的・経験的に既知である場合には、それに基づいた任意の曲面などで近似することで、より効果的な補正値画像507を導出することができる。また、手領域505に相当する画素の補正値をその近傍画素の補正値から補間することで、平面近似により生じる手領域505外の補正値の劣化を抑えることも可能である。こうした近似・補間による補正画像の更新は、距離画像の各画素に生じる誤差が空間的に連続的である(隣接画素間の誤差の差が小さい)場合に特に有効である。
ステップS403では、補正部211が、新たに導出された補正値画像507をRAM202に保持する。保持された補正値画像507は、次フレームのタッチ入力認識処理におけるステップS301の補正処理で使用される。距離画像の各画素に生じる誤差の経時変化が連続的である(フレーム間の誤差の差が小さい)場合、直前フレームで導出された補正値画像によって適切に補正することが可能である。なお、本実施形態では、ステップS301において、RAM202から読み出した補正値画像に基づいて距離画像を補正するが、最初のフレームにおいては、前のフレームの入力画像に基づいて導出された補正値画像は存在しない。本実施形態では、最初のフレームでは、手領域が含まれないことが既知である距離画像をタッチ入力認識処理の開始に先駆けて取得し、該距離画像と基準画像との差分画像を補正値画像の初期画像としてRAM202に保持しておく。これにより、タッチ入力認識処理の最初のフレームから距離画像を適切に補正することが可能になる。
以上が、本実施形態で実行されるタッチ入力の認識処理、および補正値画像の導出処理である。ただし、上述したステップS301では、既にRAM202に保持されている補正値画像に基づいて入力画像を補正したが、ステップS304で導出された補正値画像に基づいて入力画像を再補正する処理をステップS304以降に追加してもよい。これにより、経時的な誤差の変動が激しい環境では、1フレーム前に導出された補正値画像を用いる場合に比べ、より距離計測誤差を相殺する効果の高い補正を行うことが可能になる場合もある。また、上述した例では、ステップS401において、手領域を除く領域において補正値画像を統合するとしたが、対象面上に操作者の手以外の物体が存在し得るシステムにおいては物体が撮像された領域を同様に扱えばよい。すなわち、距離画像中に特定した上で(ステップS303)、差分画像のうち手領域および物体領域を除く部分を補正値画像に統合することで(ステップS401)、物体が存在する場合であっても、補正値画像を正しく導出することが可能である。
以上説明したように、本実施形態では、撮像部から対象面までの距離を反映するように繰り返し撮像される距離画像と、予め定められた対象面と撮像部との間の基準距離と差分を利用し、リアルタイムに距離画像に生じる距離計測誤差を補正する。特に、撮像部と対象面の間に手が存在するジェスチャ操作の実行中には、補正値の導出に利用する距離情報から手領域を除いた上で、手領域の部分で生じる距離計測誤差の補正を行う。これにより、ジェスチャ操作の実行中であっても、リアルタイムに変化する距離計測誤差に対して信頼性の高い補正が可能となる。
<変形例>
次に、第1実施形態の変形例として、補正値画像の導出処理において、物体が存在する領域の境界付近で補正値が誤って計算されることを抑制するための処理を追加する例を示す。第1実施形態では、入力画像と基準画像のうち、入力画像で手等の物体ではなく対象面が撮像されている部分に相当する画素毎の差分値は、入力画像に生じた距離計測誤差に対応するとみなした。これは入力画像において、物体が撮像された領域が過不足なく正確に特定され得る環境で、かつ入力画像に生じる距離計測誤差が物体の存在による影響は受けず全体で一様であることを前提とした方法である。しかしながら、装置の設置環境や操作に用いられる物体の特性等により、手領域と対象面が撮像された部分との境界付近には、欠損や計測誤差の極端な変化が生じる場合もある。たとえば特定された物体領域が部分的に欠損した場合、欠損部を対象面が撮像された部分とみなされてしまうと、その部分の補正値が極端に大きくなり正確な操作認識の妨げになり得る。また、物体領域近傍の距離計測値は、距離画像センサ103から照射された赤外光が物体に反射する等の影響によって誤差が一時的に極端に大きくなる傾向がある。これに伴って、手領域近傍の補正値も一時的に極端に変化してしまい、前のフレームを使って導出された補正値では補正しきれないことがある。
次に、第1実施形態の変形例として、補正値画像の導出処理において、物体が存在する領域の境界付近で補正値が誤って計算されることを抑制するための処理を追加する例を示す。第1実施形態では、入力画像と基準画像のうち、入力画像で手等の物体ではなく対象面が撮像されている部分に相当する画素毎の差分値は、入力画像に生じた距離計測誤差に対応するとみなした。これは入力画像において、物体が撮像された領域が過不足なく正確に特定され得る環境で、かつ入力画像に生じる距離計測誤差が物体の存在による影響は受けず全体で一様であることを前提とした方法である。しかしながら、装置の設置環境や操作に用いられる物体の特性等により、手領域と対象面が撮像された部分との境界付近には、欠損や計測誤差の極端な変化が生じる場合もある。たとえば特定された物体領域が部分的に欠損した場合、欠損部を対象面が撮像された部分とみなされてしまうと、その部分の補正値が極端に大きくなり正確な操作認識の妨げになり得る。また、物体領域近傍の距離計測値は、距離画像センサ103から照射された赤外光が物体に反射する等の影響によって誤差が一時的に極端に大きくなる傾向がある。これに伴って、手領域近傍の補正値も一時的に極端に変化してしまい、前のフレームを使って導出された補正値では補正しきれないことがある。
物体が存在する領域近傍で生じやすい上記のような問題に対し、本変形例では、入力画像において、補正値の導出に適さない領域を特定し、その内部の距離情報は補正に利用しない。具体的には、補正値の導出に適さない領域をマスクするマスク画像を導出し、入力画像と基準画像の差分画像のうち、マスク画像でマスクされない領域に当たる画素を補正に利用する。補正値の導出に適さない領域とは、すなわち基準となる対象面101までの距離計測値が得られていないとみなされる領域である。本変形例では特に、物体領域中の、補正入力画像と基準画像との画素値の差(距離差)が小さい画素の近傍ほど、特定された物体領域が欠損している可能性が高いとみなす。そこで、補正入力画像と基準画像と画素毎の距離差を考慮してマスク画像を導出する。新たにマスク画像を生成することにより、特定された物体領域に欠損がある場合や、物体領域近傍にノイズが多い場合に、補正値画像による補正精度が劣化する現象を抑制することが可能になる。
以下、第1実施形態と同様に、テーブルトップIFシステムのテーブルに投影表示されたUIを操作者が片手の指先によるタッチ入力によって選択し、選択されたUIに応じて投影表示される内容を変更する場合を例に挙げて説明する。ただし、変形例においても、操作の主体は操作者の手に限られない。また、対象面はテーブルに限られない。
[装置の構成]
変形例に係るテーブルトップIFシステムの外観および装置の構成は、図1および図2に示した第1実施形態のものに準じる。従って共通する各要素について、詳細な説明を省略する。
変形例に係るテーブルトップIFシステムの外観および装置の構成は、図1および図2に示した第1実施形態のものに準じる。従って共通する各要素について、詳細な説明を省略する。
図6は、変形例における情報処理装置100の機能構成の一例を示すブロック図である。各機能部は、CPU200が、ROM201に格納されたプログラムをRAM202に展開し、第1実施形態に準じた各フローチャートに従った処理を実行することで実現される。ただし、代替としてハードウェアを用いることも可能である。なお図2(b)に示した第1実施形態と同等の機能を有する機能部には同じ番号を付して詳細な説明は省略している。ここでは第1実施形態と異なる点を説明する。
マスク導出部600は、特定部213によって特定された距離画像中の手領域に基づき、マスク画像を導出する。導出されたマスク画像は、補正値導出部215で行われる差分画像と補正値画像の統合に用いられる。
[補正値画像の導出処理の説明]
変形例に係るタッチ入力の認識処理の流れは、図3に示した第1実施形態のフローチャートに準じる。ここでは、第一実施形態とは異なる変形例の補正値画像の導出処理(ステップS304に相当)を図7のフローチャートに従って説明する。なお、図4に示した第1実施形態のフローチャートと同等の処理を行うステップには同じ番号を付して詳細な説明は省略している。ここでは第1実施形態と異なる点を説明する。なお、以下では適宜、変形例における補正値画像の導出処理の全体プロセスを表す図8を参照する。図8において、図5との共通部分には図5と同じ番号を付与する。
変形例に係るタッチ入力の認識処理の流れは、図3に示した第1実施形態のフローチャートに準じる。ここでは、第一実施形態とは異なる変形例の補正値画像の導出処理(ステップS304に相当)を図7のフローチャートに従って説明する。なお、図4に示した第1実施形態のフローチャートと同等の処理を行うステップには同じ番号を付して詳細な説明は省略している。ここでは第1実施形態と異なる点を説明する。なお、以下では適宜、変形例における補正値画像の導出処理の全体プロセスを表す図8を参照する。図8において、図5との共通部分には図5と同じ番号を付与する。
ステップS700では、マスク導出部600が、補正入力画像502と基準画像503の、手領域800内の画素同士での画素値の差分を導出する。ここで導出される差分は、対象面から補正入力画像502の撮像面までの距離の大きさに相当する。ステップS701では、マスク導出部600が、手領域800内の画素毎に、導出された差分値に基づいてマスク距離閾値を決定する。マスク距離閾値とは、入力画像500内に定義される2次元の画像座標系で定義される距離の閾値である。本変形例では、手領域800内のある画素からの距離(画像座標での画素間距離)が、その画素について決定されたマスク距離閾値以内である手領域800外の画素は、対象面101に対する距離計測値が正確ではない可能性が比較的高いとみなす。対象面101に対する距離計測値が正確に得られていない場合には、手領域800に欠損がある場合が含まれる。手領域800の欠損は、手の一部が対象面に触れていたり、触れていなくても近づいている場合に生じ易い。従ってステップS701では、対象面から補正入力画像502の撮像面までの距離の大きさを表す差分値と所定の閾値を用い、手が撮像された領域内の画素であるにも関わらず、補正入力画像502の撮像面がある程度対象面に近いとみなされる画素を特定する。つまり、差分値が小さい(対象面に近い)画素の近傍ほど、手領域800には欠損が発生している可能性が高いと考えられる。そこでステップS701においてマスク導出部600は、差分値が小さい画素ほど、大きい値をマスク距離閾値として決定する。
ステップS702では、マスク導出部600が、マスク画像801を導出する。本変形例では、手領域800内の各画素について決定されたマスク距離閾値を利用し、その画素からの距離(画像座標で算出される距離)がマスク距離閾値以内である画素を、マスク領域802の一部とする。手領域800内の全ての画素について、同処理を行い、いずれの画素からもマスク距離閾値より遠くに存在し、マスク領域802の一部として特定されなかった画素は、マスク画像801において非マスク領域となる。なお、手領域800内の画素が全てマスクされることは、第1の実施形態と同様であるので、手領域800内の画素からの距離をマスク距離閾値と比較する処理の対象とする画素は、手領域800外の画素に限定してもよい。ステップS703では、補正値導出部215が、差分画像のうちマスク画像801のマスク領域802を除く領域(画素)に相当する部分を、新たな補正値画像803に統合する。本変形例においても、補正値画像501の画素値を、差分画像506の対応する画素の画素値で上書きすることを統合という。ただし、統合の方法はこれに限らず、たとえば差分画像506の画素値と元の補正値画像501の画素値との重みづけ加算とすることで、突発的なノイズに伴う極端な補正値の変化を抑制することが可能となる。
以上により、本変形例では、補正値画像の導出処理において、物体領域の境界付近において補正値が誤って計算されることを抑制することができる。特に、特定された手領域に欠損がある場合や、手領域近傍にノイズが多い場合に、補正値画像による補正精度が劣化する現象を抑制することが可能である。
なお、第1の実施形態、及びその変形例において、基準画像及び補正値画像は、入力画像の各画素に対応する画素をもつ画像、すなわち二次元マトリクス形式のデータとして扱う例を示した。しかしながら、入力画像の各画素に反映された距離値との対応関係が明確に定められていれば、基準距離あるいは補正値との必ずしも画像の形式ではなく、例えば一次元マトリクスとして導出され、保持されてもよい。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100 情報処理装置
210 入力取得部
211 補正部
212 基準取得部
213 特定部
214 差分取得部
215 補正値導出部
216 位置導出部
217 認識部
218 表示制御部
210 入力取得部
211 補正部
212 基準取得部
213 特定部
214 差分取得部
215 補正値導出部
216 位置導出部
217 認識部
218 表示制御部
Claims (20)
- 所定の面と交差する方向に撮像部を向けて撮像することにより取得された、各画素に前記方向に沿った距離が反映された入力画像を繰り返し取得する入力取得手段と、
前記入力取得手段によって取得された入力画像のうち、前記所定の面と前記撮像部の間に存在する物体が撮像された物体領域を特定する特定手段と、
前記入力画像のうち前記物体領域を除く部分の画素に反映された距離と、前記撮像部と前記所定の面の間の基準距離との差分に基づく補正値を使って、前記入力取得手段に繰り返し取得される入力画像の各画素に反映された距離を補正する補正手段と
を備えることを特徴とする情報処理装置。 - 前記補正手段によって補正された入力画像のうち、前記物体領域に相当する部分の一部を入力位置として導出する位置導出手段と、
前記入力取得手段に繰り返し取得される入力画像に基づいて得られる前記入力位置と前記所定の面との間の距離の変化に基づいて、前記情報処理装置に入力された指示を認識する認識手段を更に備えることを特徴とする請求項1に記載の情報処理装置。 - 前記位置導出手段は、補正された前記入力画像において、前記物体領域に相当する部分のうち所定の条件を満たす位置を前記入力位置とし、前記入力位置の座標と、該座標に対応する画素に反映された距離の値に基づき、前記物体領域の3次元における位置を導出することを備えることを特徴とする請求項2に記載の情報処理装置。
- 前記位置導出手段は、前記所定の面と前記撮像部の間に存在する物体が操作者の手の場合、前記特定された領域のうち前記手のうち指先に相当する位置を前記入力位置として導出することを特徴とする請求項2又は3のいずれか1項に記載の情報処理装置。
- 前記認識手段は、前記入力位置と前記所定の面との間の距離が、所定の距離より大きい状態から小さい状態に遷移することをタッチ入力として認識することを特徴とする請求項2乃至4のいずれか1項に記載の情報処理装置。
- 前記補正手段は、前記入力取得手段によって前記入力画像が取得される毎に、前記入力画像のうち前記物体領域を除く部分の画素に反映された距離と、前記撮像部と前記所定の面の間の基準距離との差分に基づく補正値を使って、前記入力取得手段が次に取得する入力画像を補正する補正することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
- 前記撮像部は距離画像センサであって、前記入力取得手段は、前記距離画像センサによって撮像された距離画像を前記入力画像として取得することを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
- 前記撮像部は可視光センサであって、前記入力取得手段は、前記可視光センサによって撮像された可視光画像を前記入力画像として取得することを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
- 前記撮像部は赤外光センサであって、前記入力取得手段は、前記赤外光センサによって撮像された赤外画像を前記入力画像として取得することを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
- 前記撮像部と前記所定の面の間の基準距離が各画素に反映された基準画像を取得する基準取得手段を更に備え、
前記補正手段は、前記入力画像のうち前記物体領域を除く部分の各画素に反映された距離と、前記基準画像のうち前記物体領域に相当する部分を除く各画素に反映された距離との差分に基づく補正値を使って、前記入力取得手段に繰り返し取得される入力画像の各画素に反映された距離を補正することを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。 - 前記入力画像のうち前記物体領域を除く部分の各画素に反映された距離と、前記基準画像のうち前記物体領域に相当する部分を除く各画素に反映された距離との差分の値を使って、前記入力画像の各画素に反映された距離を補正する補正値を画素毎に保持する補正値画像を導出する補正値導出手段を更に備え、
前記補正手段は、前記入力取得手段に繰り返し取得される入力画像の各画素が保持する値に、前記補正値画像の対応する画素が保持する値を加算することで、該入力画像を補正することを特徴とする請求項10に記載の情報処理装置。 - 前記補正値導出手段は、前記入力画像および前記基準画像のうち前記物体領域に相当する部分を除く各画素について算出される前記差分の値を、前記補正値画像の対応する画素が保持する補正値とすることを特徴とする請求項11に記載の情報処理装置。
- 前記補正値導出手段は、前記入力取得手段によって前記入力画像が取得される毎に前記補正値画像を導出し、最後に取得された前記入力画像および前記基準画像のうち前記物体領域に相当する部分を除く各画素について算出される前記差分の値と、既に導出された前記補正値画像の対応する画素が保持する補正値との重みづけ和を、前記補正値画像の該画素が保持する新たな補正値とすることを特徴とする請求項11に記載の情報処理装置。
- 前記補正値導出手段は、前記入力画像および前記基準画像のうち前記物体領域に相当する部分を除く各画素について算出される前記差分の値に基づいて、各画素に保持される値が平面あるいは曲面に近似された前記補正値画像を導出することを特徴とする請求項11に記載の情報処理装置。
- 前記補正値導出手段は、前記入力画像および前記基準画像のうち前記物体領域に相当する部分を除く各画素について算出される前記差分の値に基づき、前記補正値画像の対応する画素の画素値として保持する値を決定し、さらに前記補正値画像のうち前記物体領域に含まれる画素の画素値として保持する値を、前記物体領域の近傍の画素に保持されている値から補間して決定することを特徴とする請求項11に記載の情報処理装置。
- 前記補正値導出手段は、前記入力画像および前記基準画像のうち前記物体領域と前記物体領域からの画素間距離が閾値以内の画素に相当する部分を除く各画素について算出される前記差分の値を使って、前記補正値画像を導出することを特徴とする請求項11に記載の情報処理装置。
- 前記補正値導出手段は、前記物体領域と前記所定の面の距離の差が小さいほど大きい閾値に基づいて、前記物体領域からの画素間距離が閾値以内の画素を特定することを特徴とする請求項16に記載の情報処理装置。
- 入力取得手段により、所定の面と交差する方向に撮像部を向けて撮像することにより取得された、各画素に前記方向に沿った距離が反映された入力画像を繰り返し取得する入力取得工程と、
特定手段により、取得された前記入力画像のうち、前記所定の面と前記撮像部の間に存在する物体が撮像された物体領域を特定する特定工程と、
補正手段により、前記入力画像のうち前記物体領域を除く部分の画素に反映された距離と、前記撮像部と前記所定の面の間の基準距離との差分に基づく補正値を使って、前記入力取得工程で繰り返し取得される入力画像の各画素に反映された距離を補正する補正工程と
を備えることを特徴とする情報処理装置の制御方法。 - コンピュータが読み込み実行することによって、前記コンピュータを、請求項1乃至17のいずれか1項に記載の情報処理装置として動作させるプログラム。
- 請求項19に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016183795 | 2016-09-21 | ||
JP2016183795 | 2016-09-21 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018055685A true JP2018055685A (ja) | 2018-04-05 |
Family
ID=61621011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017176376A Pending JP2018055685A (ja) | 2016-09-21 | 2017-09-14 | 情報処理装置、その制御方法、プログラム、および記憶媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10365770B2 (ja) |
JP (1) | JP2018055685A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102570059B1 (ko) * | 2018-08-16 | 2023-08-23 | 엘지이노텍 주식회사 | 센싱 방법 및 장치 |
WO2020208974A1 (ja) * | 2019-04-10 | 2020-10-15 | 株式会社村上開明堂 | 基準位置設定方法及び操作検出装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012206851A1 (de) * | 2012-04-25 | 2013-10-31 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Ermitteln einer im Lichtkegel eines projizierten Bildes ausgeführten Geste |
JP2014163833A (ja) | 2013-02-26 | 2014-09-08 | Optex Co Ltd | 寸法計測システムおよび寸法計測方法 |
JP6047763B2 (ja) * | 2014-09-03 | 2016-12-21 | パナソニックIpマネジメント株式会社 | ユーザインターフェース装置およびプロジェクタ装置 |
-
2017
- 2017-09-14 JP JP2017176376A patent/JP2018055685A/ja active Pending
- 2017-09-19 US US15/709,239 patent/US10365770B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10365770B2 (en) | 2019-07-30 |
US20180081495A1 (en) | 2018-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6075122B2 (ja) | システム、画像投影装置、情報処理装置、情報処理方法およびプログラム | |
JP5680976B2 (ja) | 電子黒板システム及びプログラム | |
US10134118B2 (en) | Information processing apparatus and method of obtaining information about a projection surface on which a target is projected | |
US9336603B2 (en) | Information processing device and information processing method | |
US9916043B2 (en) | Information processing apparatus for recognizing user operation based on an image | |
JP6723814B2 (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
WO2017029749A1 (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
US20160259402A1 (en) | Contact detection apparatus, projector apparatus, electronic board apparatus, digital signage apparatus, projector system, and contact detection method | |
US10042426B2 (en) | Information processing apparatus for detecting object from image, method for controlling the apparatus, and storage medium | |
JP2018055685A (ja) | 情報処理装置、その制御方法、プログラム、および記憶媒体 | |
JP6229554B2 (ja) | 検出装置および検出方法 | |
US10416814B2 (en) | Information processing apparatus to display an image on a flat surface, method of controlling the same, and storage medium | |
JP2017084307A (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
JP6555958B2 (ja) | 情報処理装置、その制御方法、プログラム、および記憶媒体 | |
JP6057407B2 (ja) | タッチ位置入力装置及びタッチ位置入力方法 | |
JP2017049662A (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
US10073561B2 (en) | Touch apparatus and correction method thereof | |
US20230419735A1 (en) | Information processing device, information processing method, and storage medium | |
JP2012113653A (ja) | 制御装置、入力装置、入力判定方法、プログラム | |
US20240069647A1 (en) | Detecting method, detecting device, and recording medium | |
US20240070889A1 (en) | Detecting method, detecting device, and recording medium | |
JP6375279B2 (ja) | 相対位置判定方法、ディスプレイ制御方法、及び当該方法を適用するシステム | |
JP2015219547A (ja) | 機器制御システム、機器制御プログラムおよび機器制御装置 |