JP2018049498A - 画像処理装置、操作検出方法、コンピュータプログラム、及び記憶媒体 - Google Patents
画像処理装置、操作検出方法、コンピュータプログラム、及び記憶媒体 Download PDFInfo
- Publication number
- JP2018049498A JP2018049498A JP2016185155A JP2016185155A JP2018049498A JP 2018049498 A JP2018049498 A JP 2018049498A JP 2016185155 A JP2016185155 A JP 2016185155A JP 2016185155 A JP2016185155 A JP 2016185155A JP 2018049498 A JP2018049498 A JP 2018049498A
- Authority
- JP
- Japan
- Prior art keywords
- distance
- image
- distance image
- correction
- detecting
- 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
Landscapes
- Position Input By Displaying (AREA)
Abstract
【課題】従来よりもタッチ操作の検出精度を向上させた画像処理装置を提供する。【解決手段】画像処理装置100は、ユーザがタッチ操作する操作面までの距離を表す距離画像を取得する距離画像取得部101と、距離画像取得部101で取得した距離画像を複数に分割した部分領域毎に、距離画像からタッチ操作を検出するための補正パラメータを生成する補正部107と、距離画像及び補正パラメータに基づいて、タッチ操作を検出する操作検出部103と、を備える。【選択図】図3
Description
本発明は、ユーザのジェスチャをユーザインタフェースに用いるための画像処理装置に関する。特に、ユーザが指や手、スタイラスペン等の指示体により所定の面上をタッチ操作することで入力を行うユーザインタフェースに関する。
可視光カメラや赤外線カメラ、距離画像センサ等によりユーザの身体の一部領域(例えば手領域)を検出して、その動きや位置からユーザのジェスチャを認識し、認識したジェスチャを入力操作として認識する入力装置がある。例えば、テーブルのような操作台の表面に画像やUI(User Interface)部品を投影しておき、ユーザが操作台上で投影された画像やUI部品を操作するテーブルトップインタフェースにおいても、ユーザのジェスチャ認識が行われる。この場合、ユーザのジェスチャとして画像やUI部品に対するタッチ操作が認識される。特許文献1は、2つのカメラにより撮像された撮像画像に含まれる手指の3次元座標位置を計測し、計測した手指の3次元座標位置に応じて、手指により操作される位置を示す選択位置確認画像を被操作対象物に表示するシステムを開示する。
操作台に表示された画像やUI部品に対するタッチ操作では、タッチする指先の位置を正確に検出する必要がある。指先の位置は、カメラや距離画像センサで取得された撮像画像(以下、「距離画像」という。)に基づいて計測される。指先の位置は、カメラや距離画像センサから指先までの距離で表される。この距離の計測誤差は、指先の位置の検出に大きな影響を与える。ステレオカメラや距離画像センサを用いた距離計測方法では、同じ距離となる位置を測定する場合であっても、距離画像によって距離が変動することがある。この変動を吸収するために画像処理装置は、タッチ操作の検出のための移動領域検出やタッチ判定のための閾値を適切に設定する必要がある。タッチ操作の誤検出を削減するためには、距離の変動範囲内にない、余裕のある閾値を設定する必要がある。しかしながら、距離の変動は、指先等の指示体までの距離、カメラや距離画像センサの光軸からのズレ、外光の影響等により、画像中の位置により変動値が異なる。そのために、距離画像中で最も変動値の大きい位置に合わせて閾値を設置しなければならず、タッチ操作の検出精度が低下する。
本発明は、上記課題に鑑みてなされたものであり、従来よりもタッチ操作の検出精度を向上させた画像処理装置を提供することを目的とする。
本発明の画像処理装置は、ユーザがタッチ操作する操作面までの距離を表す距離画像を取得する距離画像取得手段と、前記距離画像取得手段が取得する前記距離画像を複数に分割した部分領域毎に、前記距離画像から前記タッチ操作を検出するための補正パラメータを生成する補正手段と、前記距離画像及び前記補正パラメータに基づいて、前記タッチ操作を検出する操作検出手段と、を備えることを特徴とする。
本発明によれば、距離画像の部分領域毎にタッチ操作の判定のための補正パラメータを適切に設定することで、タッチ操作の検出精度を向上させることができる。
以下、実施の形態を図面を参照しつつ詳細に説明する。
(構成)
図1は、本実施形態の画像処理装置を備える画像処理システムの構成図である。画像処理システムは、画像処理装置100、画像やUI部品が投影される操作面を有する操作台301、可視光カメラ205、距離画像センサ206、及びプロジェクタ207を備える。画像処理装置100は、可視光カメラ205、距離画像センサ206、及びプロジェクタ207に接続され、各装置の制御装置として機能するパーソナルコンピュータ等の情報処理装置である。
図1は、本実施形態の画像処理装置を備える画像処理システムの構成図である。画像処理システムは、画像処理装置100、画像やUI部品が投影される操作面を有する操作台301、可視光カメラ205、距離画像センサ206、及びプロジェクタ207を備える。画像処理装置100は、可視光カメラ205、距離画像センサ206、及びプロジェクタ207に接続され、各装置の制御装置として機能するパーソナルコンピュータ等の情報処理装置である。
可視光カメラ205は、操作台301の操作面の可視画像を撮影するように設けられる撮像装置である。可視光カメラ205は、操作台301の操作面上の物を撮影する。可視光カメラ205は、撮影することで取得した可視画像の画像データを画像処理装置100へ送信する。
距離画像センサ206は、操作台301の操作面までの距離画像を検出するように設けられる。距離画像センサ206は検出した距離画像を表す距離画像データを画像処理装置100へ送信する。距離画像は、操作面上を移動する物体の検出に用いられる画像であり、距離画像センサ206から操作面の全体を画角に含む各画素までの距離を表す。距離画像センサ206は、赤外光等の光を照射してその反射時間によって距離を測定するものや、パターン光を照射してその形状から距離を計測するもの、あるいはステレオカメラ等により実現される。また、距離画像センサ206は、可視光カメラ205と機能を兼ね備えていてもよい。なお、操作面上の物体の移動を検出可能な移動検出装置であれば、距離画像センサ206に代えてモーションセンサを用いることも可能である。距離画像は、距離画像センサ206からの距離、照射する赤外光の強度、光軸中心からの距離、照明条件等により、同一画素の距離を計測しても、連続して取得した距離画像の各フレームによって、各画素の距離が変動することがある。
プロジェクタ207は、画像処理装置100の制御により、操作台301の操作面上に画像やUI部品を投影する表示装置である。可視光カメラ205、距離画像センサ206、及びプロジェクタ207は、画像処理装置100のユーザインタフェースとして用いることができる。例えばユーザが操作面に投影されたUI部品をタッチ操作する場合、タッチする位置やジェスチャが、距離画像センサ206もしくは可視光カメラ205により撮像される画像に基づいて検出される。検出結果は画像処理装置100へ送信される。画像処理装置100は、距離画像センサ206もしくは可視光カメラ205の撮像結果に基づいて、ユーザのタッチ操作を判定して、タッチ操作に応じた処理を行うことができる。なお、操作面をディスプレイにより構成して、プロジェクタ207を用いずに操作面に画像を表示する構成であってもよい。本実施形態では、画像処理装置100は、距離画像センサ206から取得する距離画像データに基づいて、ユーザのタッチ操作を判定する。
図2は、画像処理装置100のハードウェア構成図である。画像処理装置100は、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、及び記憶部204を備える。画像処理装置100は、I/Oインタフェース208を介して可視光カメラ205、距離画像センサ206、及びプロジェクタ207に接続される。CPU201、ROM202、RAM203、記憶部204、及びI/Oインタフェース208は、バスを介して相互に通信可能に接続される。
CPU201は、ROM202或いは記憶部204からコンピュータプログラムを読み込み、RAM203を作業領域に用いて実行することで画像処理システム全体の動作を制御する。CPU201の制御により、可視光カメラ205は撮影を行い、距離画像センサ206は距離画像を取得し、プロジェクタ207は画像を表示する。記憶部204は、ハードディスク等の大容量記憶装置であり、コンピュータプログラムの他に、画像処理システムにより処理に用いる各種のデータを保存する。
図3は、画像処理装置100の機能ブロック図である。画像処理装置100の各機能は、CPU201がコンピュータプログラムを実行することで実現される。画像処理装置100は、距離画像取得部101、移動領域検出部102、操作検出部103、通知部104、静止領域検出部105、距離変動計測部106、及び補正部107として機能する。
距離画像取得部101は、距離画像センサ206から距離画像データを取得する。移動領域検出部102は、距離画像取得部101で取得した距離画像データによる距離画像に基づいて、操作面上のユーザの手指、スタイラスペン等の指示体が移動した移動領域を検出する。操作検出部103は、移動領域の位置、動作に基づいて、ユーザのタッチ操作等の操作を検出する。つまり、移動領域検出部102が指示体の動きを検出し、操作検出部103が検出された指示体の動きからユーザの操作を検出する。
通知部104は、操作検出部103が検出した操作を、操作に応じた処理を行う装置に通知する。例えば、通知部104は、UI部品の移動の操作であれば、当該装置に操作内容を通知する。当該装置は、通知に応じて当該UI部品に操作を反映させ、操作が反映されたUI部品をプロジェクタ207により操作台301の操作面に表示させる。静止領域検出部105は、距離画像データによる距離画像に基づいて静止領域を検出する。静止領域は、距離の変動値が所定量以下の画素である。ユーザの手や指、スタイラスペン等の指示体は、移動するために距離が変動する。そのために距離画像中の指示体の動いた領域は静止領域にならない。距離変動計測部106は、複数の距離画像データによる複数の距離画像に基づいて、静止領域の距離の変動値を計測する。補正部107は、静止領域の距離変動の計測結果に基づいて、移動領域検出及び操作検出のためのパラメータの補正値を生成する。
(操作検出処理)
図4は、このような構成の画像処理システムによりユーザの操作を検出する処理を表すフローチャートである。ここでは、ユーザの指による操作面のタッチ操作を検出する処理について説明する。
図4は、このような構成の画像処理システムによりユーザの操作を検出する処理を表すフローチャートである。ここでは、ユーザの指による操作面のタッチ操作を検出する処理について説明する。
画像処理装置100は、距離画像取得部101により、距離画像センサ206から距離画像データを取得する(S401)。図5は、距離画像の説明図である。図5(a)は距離画像の例示図である。距離画像は、画像中の各画素の座標(x,y)に対する距離Dを含む。なお、操作面がXY平面である。距離画像センサ206は、TOF(Time-of-Flight)方式やパターン照射方式等によって各画素との距離を計測する。距離画像に基づいてユーザの指が検出される。検出方式は背景差分、パターンマッチング、統計モデル等の手法を用いることができる。ここで検出した指の座標とその距離値(x,y,D)を実世界座標系(X,Y,Z)に変換する。図5(b)は実世界座標系の例示図である。距離画像系(x,y,D)と実世界座標系(X,Y,Z)との変換式は以下の式1で表される。
r00〜r22、t0〜t2、fx、fy、cx、cyは距離画像センサ206の設置時にキャリブレーションによって予め求めるパラメータである。各パラメータは、実世界座標(X,Y、Z)と画像座標(x,y)との対応関係が取れた既知の点がパラメータ数以上あれば、最小二乗法等で予め算出される。
画像処理装置100は、静止領域検出部105により、所定枚数(時系列にNフレーム(Nは2以上の整数))の距離画像を取得したかを判断する(S402)。静止領域検出部105は、Nフレーム分の距離画像データの取得を判断する。Nフレーム分の距離画像データを取得した場合(S402:Y)、静止領域検出部105は、取得した複数の距離画像データに基づいて静止領域を検出する(S403)。本実施形態のS403の処理で検出される静止領域は、最新のフレームにおいて、そのフレームで新たに判明した静止部分である。そのため前フレームで静止領域として検出された部分のうち、距離の変化が生じていない、あるいは距離の変化が小さい部分は、最新のフレームにおいては新たな静止領域として検出されない。図6は、静止領域の説明図である。
図6(a)は、距離画像中の操作台画像601を表す。操作台301には何も表示されておらず、ユーザの手も操作台301上にない。静止領域検出部105は、距離画像中の距離の値域を制限し、この値域内で、複数の距離画像における距離の変化が小さい領域を、静止領域として検出する。図6(a)では、現実の操作台301の高さが既知であり、操作台画像601の各画素までの距離が一定の範囲内に収まる。そのために静止領域検出部105は、操作台画像601の全面を静止領域として検出する。静止領域は太枠で囲われる領域である。
図6(b)は、UI部品を操作可能とした操作可能領域を予め操作台301の一部の領域に限定している場合を表す。この場合、静止領域検出部105は、操作台画像601の一部の領域(太枠内)である操作可能領域の範囲内で静止領域を検出する。
図6(c)は、静止領域検出部105が取得する複数フレーム(例えばNフレーム)分の距離画像において、左下から右方向へ手が動いた場合の静止領域を太枠で表す。各フレームにおいて、静止領域検出部105は、直近で静止領域として検出されていた操作台画像601からの距離(高さ)の変化が大きい領域として手領域を検出する。各フレームから検出された手領域は、Nフレーム間で距離の変化が大きいため、静止領域ではない。また、手領域に含まれない他の部分については、前フレームで静止領域として検出された操作台部分からの距離(高さ)の変化が小さいので、新たな静止領域として検出されない。従って、図6(c)の状態において、静止領域検出部105は静止領域を検出しない。
図6(d)は、図6(a)のように操作台301の全体を予め静止領域として検出した後に、厚みのある本等の物体を操作台301上に載置した場合の静止領域を太線で表す。距離画像内の物体は物体画像602である。この場合、静止領域検出部105は、既に検出した操作台画像601から距離が変化した領域で、且つNフレームの距離画像で距離の変化が小さい領域を静止領域として検出する。つまり静止領域検出部105は、物体画像602の領域を静止領域として検出する。
図6(e)は、図6(d)の状態で物体に操作のための手が重なった場合を表す。この場合、静止領域検出部105は、各フレームで図6(d)から距離変化が大きい手領域を検出する。操作する手は動くので、手領域は、Nフレームの距離画像で距離の変化が大きいことから、静止領域として検出されない。さらに、物体画像602のうち手領域に含まれない他の部分は、図6(d)から距離の変化が小さいために静止した状態ではあるが、このフレームでの新たな静止領域としては検出されない。
S403の処理において静止領域検出部105が新たな静止領域を検出した場合(S404:Y)、距離変動計測部106は、検出された静止領域の距離の変動値を計測する(S405)。変動値の計測は、静止領域内の画素毎或いは静止領域を分割した部分領域毎に行われる。本実施形態では、画素毎に行う場合について説明する。図7は、静止領域の距離の変動値の説明図である。
図7(a)は、距離画像中の距離の変動値を計測する3点(点A、B、C)の位置を表す。操作台301の奥側から順に点A、点B、点Cが設定される。各点A、B、Cは、操作台301に静止している。図7(b)は、複数の距離画像に基づいて取得した各点A、B、Cの距離を表すグラフである。点A、点B、点Cが静止しているために、本来、各点A、B、Cの距離は、一定である。しかしながら図7(b)に示すように、距離画像センサ206の計測誤差により、距離が複数フレーム間で変動する。また、距離画像センサ206から測定対象となる画素(点A、B、C)までの距離、光軸中心からのズレ、距離画像センサ206の投影光強度、外光等により、画素毎に、距離の変動幅が異なる。距離の変動幅は、図7(b)に示すように、距離画像センサ206から遠いほど大きくなる。距離変動計測部106は、複数の距離画像により計測した画素毎の距離に基づいて、画素毎に距離の標準偏差を算出する。距離変動計測部106は、算出した画素毎に距離の標準偏差を、画素毎の距離の変動値としてRAM203に保存する。
補正部107は、RAM203に保存される画素毎の距離の変動値に基づいて、画素毎の補正パラメータを生成する(S406)。補正部107は、画素毎に移動領域検出のための補正値、タッチ判定のための補正値、及びタッチ位置の補正値を補正パラメータとして生成する。各補正値(補正パラメータ)の生成処理の詳細は後述する。
Nフレーム分の距離画像データを取得していない場合(S402:N)、新たな静止領域を検出していない場合(S404:N)、或いは各補正パラメータの生成後に移動領域検出部102は、距離画像から移動領域を検出する(S410)。図8は、移動領域の説明図である。本実施形態では、背景差分法により移動領域を検出する例を示すが、その他に、時系列の距離画像間の差異によるフレーム間差分法や、各画素の距離から変換した高さの絶対値により、移動領域を検出してもよい。図8(a)は、移動領域検出部102が取得する距離画像の例示図であり、操作台301及び操作するユーザの手が距離画像に含まれる。図8(b)は、操作台301のみの距離画像の例示図であり、背景画像として用いられる。背景画像は、操作台301に何も無い状態で予め撮像された距離画像である。また、背景画像は、S403の処理で静止領域検出部105が逐次検出する静止領域から生成されてもよい。図8(c)は、背景差分画像の例示図である。移動領域検出部102は、図8(a)の取得した距離画像と図8(b)の背景画像とから背景差分画像を生成し、背景差分画像の各画素の距離(可視光カメラ205で撮像した画像を用いる場合には輝度値)が閾値以上となる領域を移動領域801として検出する。この閾値は、補正部107で生成された画素毎の移動領域検出のための補正値である。
移動領域が検出されると、操作検出部103は、ユーザによる操作台301へのタッチ操作等の操作を検出する(S411)。操作検出部103は、例えば図8(c)の移動領域801中から指先等の操作位置を検出する。操作位置は、移動領域801の中で操作台301の外側から最も遠い点の検出や、輪郭形状のパターンマッチングで検出される。操作検出部103は、検出した操作位置の距離を距離画像から取得し、画像中の各画素の座標(x,y)及び距離Dから、上記の式1により実世界座標(X,Y,Z)を算出する。操作検出部103は、タッチしたかの判定を、算出した高さZと操作台301の高さとの差が閾値以内であるかにより行う。この閾値は、補正部107で生成された画素毎のタッチ判定のための補正値である。
タッチ操作の判定後に、通知部104はタッチ操作に基づく制御内容を、操作に応じた処理を行う装置に通知する(S412)。画像処理装置100は、処理を継続する場合にはS401の処理に戻って、S401以降の処理を繰り返し実行する(S413:Y)。処理を継続しない場合(S413:N)、画像処理装置100は、処理を終了する。
補正パラメータの生成処理について説明する。上記の通り、補正部107は、RAM203に保存される画素毎の距離の変動値に基づいて、移動領域検出のための補正値、タッチ判定のための補正値、及びタッチ位置の補正値を生成する。
補正部107は、移動領域検出のための補正値を生成する(S407)。図9は、移動領域検出のための補正値の説明図である。図9は、図7(a)の点A、B、Cにおける距離の変動幅と、その際に設定すべき移動領域検出のための閾値(補正値)との関係を表す。図9(a)は、点Aについての距離の変動幅と、閾値との関係を表す。図9(b)は、点Bについての計離の変動幅と、閾値との関係を表す。図9(c)は、点Cについての距離の変動幅と、閾値との関係を表す。各点A、B、Cにおいて、距離の変動幅が異なる。各点A、B、Cにおいて、距離の変動幅に含まれないように、移動領域検出のための閾値が設定される。つまり補正部107は、画素毎に閾値を設定する。例えば、補正部107は、距離の変動値として画素毎にRAM203に保存される標準偏差σにより、a*σ+b(a、bは定数)の値を移動領域検出のための閾値(補正値)として設定する。このようにして設定される移動領域検出のための閾値(補正値)は、画素毎の距離の変動値の大きさに応じて、適切な値となる。
補正部107は、タッチ判定のための補正値及びタッチ位置の補正値を生成する(S408、S409)。図10は、タッチ時の距離画像から検出される移動領域及び操作位置の高さの説明図である。
図10(a)は、ユーザが、操作のための手を操作台301の操作面に接触させずに浮かせている場合の距離画像を表す。この場合、移動領域検出部102は、距離画像では操作台301までの距離と手までの距離とが明確に異なるために、手領域全体を移動領域として検出可能である。
図10(b)は、ユーザが、距離の変動値の小さい領域で操作台301にタッチした場合の距離画像を表す。この場合、操作台301までの距離と指先までの距離との差が小さくなり、S407の処理で設定される移動領域検出のための閾値よりも、閾値が小さくなる領域が生じる。この領域は、手領域として検出されない。そのために距離画像の手領域は指先が欠ける。タッチした手領域の欠けた指先が、タッチ操作位置1001となる。タッチ操作位置1001は、実際のタッチ位置よりも欠けた指先分だけ手領域側の位置になる。
図10(c)は、ユーザが、距離の変動値の大きい領域で操作台301にタッチした場合の距離画像を表す。この場合、S407の処理で設定される移動領域検出のための閾値が大きくなるために、指先の欠けが図10(b)の場合よりも大きくなり、タッチ操作位置1002は、タッチ操作位置1002よりも手領域側の位置になる。
図10(d)は、ユーザが、距離の変動値の小さい領域で操作台301にタッチした場合(図10(b)の場合)の、操作面と指先との関係を表す。図10(e)は、ユーザが、距離の変動値の大きい領域で操作台301にタッチした場合(図10(c)の場合)の、操作面と指先との関係を表す。ユーザは、距離の変動値の大きさにかかわらず、操作台301の操作面を同様にタッチする。しかし計測した距離の変動値によって、距離画像の手領域の指先の欠ける量が異なる。そのために、操作位置として検出される位置の高さが異なり、単一の高さでタッチ判定を行うと図10(e)に合わせなければタッチを検出できなくなる。その場合、図10(d)の位置では指先が多少浮いていてもタッチと判定されることが好ましい。
そのために補正部107は、S408の処理で、タッチ判定のための高さを補正するための補正値を生成する。補正部107は、画素毎にRAM203に保存される変動値(標準偏差σ)に基づいて、タッチ判定のための補正値を生成する。移動領域検出のための補正値と同様に、補正部107は、c*σ+d(c、dは定数)の値をタッチ判定のための補正値として設定する。このようにして設定されるタッチ判定のための補正値は、画素毎の距離の変動値の大きさに応じて、適切な値に設定される。
補正部107は、S409の処理で、タッチ位置の補正値を生成する。図10(b)、図10(c)に示すように、距離の変動によって、距離画像の手領域の指先の欠ける量が異なる。そのために、補正部107は、指先等の操作位置の方向に対して距離変動に応じたタッチ位置の補正値を生成する。補正部107は、画素毎にRAM203に保存される変動値(標準偏差σ)に基づいて、タッチ位置の補正値を生成する。補正値は、標準偏差σに応じて大きくなるように、e*σ+f(e、fは定数)等の式により算出される。
以上のように補正部107は、S406の処理により、画素毎に保存する標準偏差に基づいて、画素毎の移動領域検出のための補正値、タッチ判定のための補正値、及びタッチ位置の補正値を生成する。各補正値(補正パラメータ)は、静止領域内の各画素に対応して生成される。また、この段階では各画素に対して各補正値を生成するのみであり、各補正値は、S410、S411の処理で適用される。
S410の移動領域検出処理では、距離画像中の移動領域が、背景差分法等の手法により検出される。この際、移動領域検出部102は、各画素の差分値が閾値よりも大きいか否かに基づいて、移動領域を検出する。この閾値は、S407の処理で生成される補正値が設定されている画素については、該補正値が用いられ、補正値が設定されていない画素については予め設定されている初期閾値が用いられる。
S411の操作検出処理では、タッチ判定のための補正値及びタッチ位置の補正値に基づいて、タッチ操作が検出される。図11は、ユーザの操作の検出処理(S411の処理)を表すフローチャートである。
操作検出部103は、移動領域の操作位置及び操作位置の方向を検出する(S1101)。操作検出部103は、図8(c)で説明した移動領域801の先端等を操作位置として検出する。また、操作検出部103は、移動領域801から操作位置の周辺領域の重心に対する操作位置の方向を算出する等の方法で、操作位置の方向を検出する。
操作検出部103は、操作位置に対するタッチ判定を行う(S1102)。操作検出部103は、操作位置の高さZが操作台301の高さに十分に近いか否かの閾値に応じて、タッチ判定を行う。この際、操作検出部103は、操作位置の判定のための閾値に、タッチ判定のための補正値が設定されている画素については該補正値を用い、補正値が設定されていない画素については予め設定されている初期閾値を用いる。
タッチ判定の結果、操作位置に対してタッチが行われていない場合(S1103:Y)、操作検出部103は、操作検出処理を終了する。操作位置に対してタッチが行われている場合(S1103:Y)、操作検出部103は、移動領域がタッチした位置を操作位置の方向とタッチ位置の補正値に基づいて補正して、操作検出処理を終了する(S1104)。操作検出部103は、S1101の処理で検出した操作位置の方向に対して、タッチ位置の補正値に基づいてタッチ位置を移動させる。図12は、タッチ位置の補正の説明図である。図中、矢印の長さがタッチ位置の移動量に相当し、補正値に応じてこの長さが変化する。なお、タッチ位置の補正は距離画像の座標系で行ってもよく、図5(b)の実世界座標系に基づいて行ってもよい。
以上のような本実施形態の画像処理システムは、複数の距離画像における同一点の距離の変動値を、距離画像の画素或いは距離画像を分割した部分領域毎に計測し、計測した距離の変動値に基づいてタッチ操作検出のための補正パラメータを生成する。生成される補正パラメータは、移動領域の検出のための補正値、タッチ判定のための補正値、タッチ位置の補正値等である。そのために、距離の変動値が距離画像内ので場所によって異なる場合であっても、各場所で適切な補正パラメータが設定され、適切に操作を検出することができる。よって本実施形態の画像処理システムは、従来よりもタッチ操作の検出精度が向上する。
画像処理装置100は、予め手等の指示体がない状態で操作台301の操作面の全体、或いは距離画像全体の各画素における距離の変動値を距離変動計測部106で計測し、これに基づいて補正パラメータを生成するように構成されていてもよい。この場合、静止領域検出部105が静止領域を検出する必要がなくなる。
補正部107は、距離の変動値に基づいて移動領域検出の移動領域検出のための補正値、タッチ判定のための補正値、及びタッチ位置の補正値をすべて生成するが、これに限らず、これらの補正値の少なくとも一つを生成すればよい。画像処理装置100は、距離の変動値に基づいて少なくとも一つの補正値が画素毎に生成されて操作の検出に用いられる構成であってもよい。
画像処理装置100は、タッチ操作の検出処理を、画素毎の他に、距離画像を分割した部分領域毎に行ってもよい。部分領域は、例えば距離画像を一定の格子状に区切った領域や、画素間の距離と輝度差の結合によって形成されるスーパーピクセル等の領域である。また、画像処理装置100は、画素毎に独立して距離の変動値を算出して補正パラメータを生成するが、隣接する画素間で距離の変動値もしくは補正パラメータを移動平均フィルタ等により平滑化することで生成してもよい。
上記では、画像処理装置100が距離画像センサ206から取得する距離画像を用いてタッチ操作を検出する構成を説明した。これに限らず画像処理装置100は、可視光カメラ205をステレオカメラにして取得するステレオ画像から距離画像を生成し、上記と同様の処理によりタッチ操作を検出してもよい。
距離画像センサ206は、操作台301の操作面に限らず、例えば壁を操作面として、垂直な壁に対する指示体の操作の検出に用いられてもよい。この場合、距離画像センサ206は、水平方向に向けられる。
画像処理装置100は、距離の変動値を計測を、複数枚の距離画像に基づいて行う他に、以下のように行ってもよい。例えば、画像処理装置100は、静止領域検出部105により、M枚の距離画像から予め静止領域を検出する。その後、画像処理装置100は、距離変動計測部106により、静止領域内の各画素について移動領域が重ならない時系列の距離画像からNサンプル(好ましくはM<N)の距離を画素毎に計測して距離の変動値を算出する。図13は、このような距離の変動値の算出方法の説明図である。
図13(a)は、操作台301の操作面上で新たに検出された物体の静止領域1301を表す。静止領域1301を検出した画像処理装置100は、その後のフレームにより、静止領域1301の各画素の時系列の距離画像からNサンプルの距離を蓄積する。その間、例えば図13(b)のようなフレームの距離画像では、静止領域1301にかかる手が移動領域として検出される。手が移動領域として検出されるタイミングで、画像処理装置100の距離変動計測部106は、移動領域内の画素の距離を取得せず、移動領域外の画素の距離を取得する。距離変動計測部106は、静止領域の全画素でN個の距離の値を蓄積した時点で、S405の処理により静止領域の各画素の距離の変動値を計測する。補正部107はこの変動値に基づいて、S406の処理により補正パラメータを生成する。
以上のような処理により、画像処理装置100は、操作台301への物体の載置等により距離の変化した静止領域が新たに出現した場合に、距離の変動値を取得するのに十分な数の距離画像を取得する前に、一旦静止領域を確定させる。これにより画像処理装置100は、操作検出を安定して行うことができる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Claims (10)
- ユーザがタッチ操作する操作面までの距離を表す距離画像を取得する距離画像取得手段と、
前記距離画像取得手段が取得する前記距離画像を複数に分割した部分領域毎に、前記距離画像から前記タッチ操作を検出するための補正パラメータを生成する補正手段と、
前記距離画像及び前記補正パラメータに基づいて、前記タッチ操作を検出する操作検出手段と、を備えることを特徴とする、
画像処理装置。 - 前記部分領域毎に、距離の変動値を計測する距離変動計測手段をさらに備えており、
前記補正手段は、前記部分領域毎の前記変動値に基づいて、前記部分領域毎の前記補正パラメータを生成することを特徴とする、
請求項1記載の画像処理装置。 - 複数の前記距離画像に基づいて距離の変動値が所定量以下の静止領域を検出する静止領域検出手段をさらに備えており、
前記距離変動計測手段は、前記静止領域に含まれる前記部分領域の前記変動値を計測することを特徴とする、
請求項2記載の画像処理装置。 - 前記補正手段は、前記部分領域毎に、前記変動値に基づいて、タッチ操作を行う指示体が移動した移動領域を検出するための閾値である補正パラメータを生成することを特徴とする、
請求項2又は3記載の画像処理装置。 - 前記補正手段は、前記部分領域毎に、前記変動値に基づいて、前記操作面へのタッチを判定するための操作面からの距離の閾値である補正パラメータを生成することを特徴とする、
請求項2〜4のいずれか1項記載の画像処理装置。 - 前記補正手段は、前記部分領域毎に、前記変動値に基づいて、タッチ位置の補正値である補正パラメータを生成することを特徴とする、
請求項2〜5のいずれか1項記載の画像処理装置。 - 前記補正手段は、前記距離画像の画素毎に、前記距離画像から前記タッチ操作を検出するための補正パラメータを生成することを特徴とする、
請求項1〜6のいずれか1項記載の画像処理装置。 - ユーザがタッチ操作する操作面までの距離を表す距離画像を検出する検出手段と、画像処理装置とを備えた画像処理システムにより実行される方法であって、
画像処理装置が、
前記検出手段が検出した前記距離画像を複数に分割した部分領域毎に、前記距離画像から前記タッチ操作を検出するための補正パラメータを生成して、前記距離画像及び前記補正パラメータに基づいて、前記タッチ操作を検出することを特徴とする、
操作検出方法。 - コンピュータを、
ユーザがタッチ操作する操作面までの距離を表す距離画像を取得する距離画像取得手段、
前記距離画像取得手段が取得する前記距離画像を複数に分割した部分領域毎に、前記距離画像から前記タッチ操作を検出するための補正パラメータを生成する補正手段、
前記距離画像及び前記補正パラメータに基づいて、前記タッチ操作を検出する操作検出手段、
として機能させるためのコンピュータプログラム。 - 請求項9記載のコンピュータプログラムを記憶するコンピュータにより読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016185155A JP2018049498A (ja) | 2016-09-23 | 2016-09-23 | 画像処理装置、操作検出方法、コンピュータプログラム、及び記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016185155A JP2018049498A (ja) | 2016-09-23 | 2016-09-23 | 画像処理装置、操作検出方法、コンピュータプログラム、及び記憶媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018049498A true JP2018049498A (ja) | 2018-03-29 |
Family
ID=61766349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016185155A Pending JP2018049498A (ja) | 2016-09-23 | 2016-09-23 | 画像処理装置、操作検出方法、コンピュータプログラム、及び記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018049498A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020013021A1 (ja) * | 2018-07-13 | 2020-01-16 | 株式会社ニコン | 検出装置、処理装置、検出方法、及び処理プログラム |
CN112689815A (zh) * | 2018-10-12 | 2021-04-20 | 深圳市柔宇科技股份有限公司 | 手写笔及输入装置 |
-
2016
- 2016-09-23 JP JP2016185155A patent/JP2018049498A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020013021A1 (ja) * | 2018-07-13 | 2020-01-16 | 株式会社ニコン | 検出装置、処理装置、検出方法、及び処理プログラム |
CN112689815A (zh) * | 2018-10-12 | 2021-04-20 | 深圳市柔宇科技股份有限公司 | 手写笔及输入装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6201379B2 (ja) | 位置算出システム、位置算出プログラム、および、位置算出方法 | |
JP6146094B2 (ja) | 情報操作表示システム、表示プログラム、および、表示方法 | |
TWI498580B (zh) | 長度量測方法與長度量測裝置 | |
JP5802247B2 (ja) | 情報処理装置 | |
JP6723814B2 (ja) | 情報処理装置、その制御方法、プログラム、及び記憶媒体 | |
JP2016091457A (ja) | 入力装置、指先位置検出方法及び指先位置検出用コンピュータプログラム | |
US20140232696A1 (en) | Information processing apparatus and information processing method | |
US20120050194A1 (en) | Information processing apparatus and information processing method | |
JP2016184362A (ja) | 入力装置、入力操作検出方法及び入力操作検出用コンピュータプログラム | |
US10379678B2 (en) | Information processing device, operation detection method, and storage medium that determine the position of an operation object in a three-dimensional space based on a histogram | |
JP2013149228A (ja) | 位置検出装置、および位置検出プログラム | |
JP2017219942A (ja) | 接触検出装置、プロジェクタ装置、電子黒板装置、デジタルサイネージ装置、プロジェクタシステム、接触検出方法、プログラム及び記憶媒体。 | |
JP6070211B2 (ja) | 情報処理装置、システム、画像投影装置、情報処理方法およびプログラム | |
JP2018049498A (ja) | 画像処理装置、操作検出方法、コンピュータプログラム、及び記憶媒体 | |
JP6229554B2 (ja) | 検出装置および検出方法 | |
CN115793893B (zh) | 触摸书写笔迹生成方法、装置、电子设备及存储介质 | |
JP6555958B2 (ja) | 情報処理装置、その制御方法、プログラム、および記憶媒体 | |
EP2975503A2 (en) | Touch device and corresponding touch method | |
JP6652004B2 (ja) | 情報処理装置、インタラクション方法、およびインタラクションプログラム | |
JP2016139396A (ja) | ユーザーインターフェイス装置、方法およびプログラム | |
JP2016153996A (ja) | 座標取得システム、ディスプレイ装置、座標取得方法およびプログラム | |
JP2009151516A (ja) | 情報処理装置および情報処理装置用操作者指示点算出プログラム | |
JP2019168251A (ja) | 形状測定装置、形状測定方法及びプログラム | |
EP3059664A1 (en) | A method for controlling a device by gestures and a system for controlling a device by gestures | |
JP6733789B2 (ja) | 入力装置、入力操作検出方法及び入力操作検出用コンピュータプログラム |