(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
(実施の形態の要約)
実施の形態に係るジェスチャ判定装置は、検出対象を撮像して複数の画像を生成する撮像部と、複数の画像に基づいて検出対象の移動量を算出する移動量算出部と、算出された移動量に基づいて検出対象の移動速度を算出する移動速度算出部と、算出された移動量と移動速度に基づいて払うジェスチャを判定すると共に、撮像部の光軸に基づいて設定された三次元座標系の座標軸ごとの移動量の成分のうち、最も移動量が多い成分の方向を払うジェスチャの移動方向とする判定部と、を備えて概略構成されている。
【0011】
このジェスチャ判定装置は、払うジェスチャを判定する際、最も移動量が多い成分の方向を払うジェスチャの方向とするので、ジェスチャの始点と終点に基づいて払うジェスチャの方向を判定する場合と比べて、より正確な方向を判定でき、操作者の意図に反したジェスチャの判定を抑制することができる。
【0012】
[実施の形態]
(ジェスチャ判定装置1の概要)
図1(a)は、実施の形態に係るジェスチャ判定装置が搭載された車両内部の一例を示す概略図であり、
図1(b)は、ジェスチャ判定装置の一例を示すブロック図であり、
図1(c)は、ジェスチャ判定装置が接続された車両通信システムの一例を示すブロック図である。
図2(a)は、実施の形態に係るジェスチャ判定装置が撮像する画像の一例を示す概略図であり、
図2(b)は、移動速度と移動量の一例について説明するための概略図であり、
図2(c)は、判定された移動方向と払い方向の関係を示すジェスチャ情報の一例を示すテーブルである。なお、以下に記載する実施の形態に係る各図において、図形間の比率は、実際の比率とは異なる場合がある。また
図1(b)及び
図1(c)では、主な信号や情報の流れを矢印で示している。
【0013】
ジェスチャ判定装置1は、例えば、なされたジェスチャに基づいて車両8に搭載された電子機器の操作を可能とするものである。操作者は、予め定められたジェスチャを行うことでジェスチャに対応する電子機器の機能を操作することができる。この電子機器は、一例として、
図1(c)に示すナビゲーション装置84及び音楽及び映像再生装置85などである。ジェスチャ判定装置1及び電子機器は、一例として、
図1(c)に示すように、車両通信システム81を構成している。なお本実施の形態では、操作者の手9を検出対象とする。
【0014】
このジェスチャ判定装置1は、
図1(a)〜
図2(b)に示すように、手9を撮像して複数の画像35を生成する撮像部3と、複数の画像35に基づいて手9の移動量40を算出する移動量算出部4と、算出された移動量40に基づいて手9の移動速度50を算出する移動速度算出部5と、算出された移動量40と移動速度50に基づいて払うジェスチャを判定すると共に、撮像部3の光軸に基づいて設定された三次元座標系の座標軸ごとの移動量40の成分のうち、最も移動量40が多い成分の方向を払うジェスチャの移動方向とする判定部としての制御部6と、を備えて概略構成されている。
【0015】
この制御部6は、移動速度しきい値と移動量しきい値63を有し、移動速度50が移動速度しきい値以上となる間の移動量(判定移動量57)が移動量しきい値63以上である場合、払うジェスチャが行われたと判定する。
【0016】
また制御部6は、移動速度しきい値として第1の移動速度しきい値61と第1の移動速度しきい値61より低い値の第2の移動速度しきい値62を有し、第1の移動速度しきい値61によって払うジェスチャの判定のための判定移動量57の算出の開始を判定し、第2の移動速度しきい値62によって判定移動量57の算出の終了を判定する。
【0017】
なお第1の移動速度しきい値61及び第2の移動速度しきい値62は、後述する
図3(a)〜
図3(c)においてV
1及びV
2としている。
【0018】
上述の三次元座標系は、例えば、
図2(a)に示すXYZ座標系である。このXYZ座標系の原点は、例えば、画像35の中央となる。X軸は、画像35の左右方向の軸であり、右側が正(+)となっている。Y軸は、画像35の上下方向の軸であり、上側が正(+)となっている。Z軸は、
図2(a)の紙面の奥から手前方向の軸であり、画像35の法線方向が正(+)となっている。このZ軸の正方向は、撮像部3の光軸と一致している。また上下左右は、例えば、運転席に着座する操作者から見て車両8の上下左右となる。
【0019】
(撮像部3の構成)
撮像部3は、例えば、CCDイメージセンサ(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの半導体素子を用いた撮像装置である。そして撮像部3は、例えば、三次元座標系における位置を検出することができるステレオカメラなどにより構成される。なお撮像部3は、単眼カメラによって構成されても良いが単眼カメラであっても距離画像を生成可能なものが好ましい。
【0020】
この撮像部3は、一例として、
図1(a)に示すように、車両8のセンターコンソール80に配置された表示装置87の上側に配置されている。従って撮像領域30は、表示装置87の正面の領域である。撮像部3は、例えば、表示装置87の正面において行われたジェスチャを撮像する。また、この撮像部3は、例えば、近赤外線を撮像領域30方向に照射して撮像するように構成されている。
【0021】
撮像部3は、周期的に撮像領域30を撮像し、撮像した画像の情報として画像情報S
1を生成して制御部6に出力する。この画像情報S
1は、一例として、三次元座標系の位置の情報を含んでいる。なお撮像部3は、例えば、1秒間に30枚の画像を撮像する。
【0022】
(移動量算出部4の構成)
移動量算出部4は、撮像部3から取得した画像情報S
1に基づいて手9の特徴点90の移動量40を算出するように構成されている。この特徴点90は、例えば、
図2(a)に示すように、手9の重心座標や指先座標などである。本実施の形態の特徴点90は、重心座標である。
【0023】
図2(b)は、1画像(1フレーム)ごとの特徴点90の移動を示している。移動量算出部4は、例えば、一のフレームの特徴点90と、一のフレームの次のフレームの特徴点90と、を結んだ長さを移動量40として算出する。
【0024】
そして移動量算出部4は、移動量40と共にXYZ座標系の各成分の移動量(X移動量41、Y移動量42及びZ移動量)を算出する。本実施の形態では、一例として、特徴点90がZ軸方向に移動していないものとして説明する。
【0025】
移動量算出部4は、算出した特徴点90の移動量40、及び各成分の移動量の情報を移動量情報S
2としてフレームごとに出力する。
【0026】
(移動速度算出部5の構成)
移動量算出部4は、移動量算出部4から取得した移動量情報S
2に基づいて特徴点90の移動速度50を算出するように構成されている。この移動速度50は、フレーム間の時間と移動量40から算出される。
【0027】
また移動速度算出部5は、移動量40の各成分の移動量に基づいて移動速度50の各成分を算出する。そして移動速度算出部5は、移動速度50、及び各成分の移動速度の情報を移動速度情報S
3としてフレームごとに出力する。
【0028】
(制御部6の構成)
図3(a)は、実施の形態に係るジェスチャ判定装置が算出する移動速度と時間のグラフの一例であり、
図3(b)は、移動速度(X成分)と時間のグラフの一例であり、
図3(c)は、移動速度(Y成分)と時間のグラフの一例である。この
図3(a)〜
図3(c)は、一例として、X軸の正方向に手を払った後、手が意図せずY軸の上方向に移動したようなジェスチャを示している。
【0029】
制御部6は、例えば、記憶されたプログラムに従って、取得したデータに演算、加工などを行うCPU(Central Processing Unit)、半導体メモリであるRAM(Random Access Memory)及びROM(Read Only Memory)などから構成されるマイクロコンピュータである。このROMには、例えば、制御部6が動作するためのプログラムが格納されている。RAMは、例えば、一時的に演算結果などを格納する記憶領域として用いられる。
【0030】
制御部6は、例えば、
図1(b)に示すように、第1の移動速度しきい値61と、第2の移動速度しきい値62と、移動量しきい値63と、ジェスチャ情報64と、時間しきい値65と、を有している。
【0031】
第1の移動速度しきい値61は、
図3(a)〜
図3(b)に示すように、払うジェスチャを判定するための移動量(判定移動量57)の算出の開始を判定するためのしきい値である。また第2の移動速度しきい値62は、払うジェスチャを判定するための移動量(判定移動量57)の算出の終了を判定するためのしきい値であり、第1の移動速度しきい値61よりも低い値とされる。
【0032】
この第1の移動速度しきい値61及び第2の移動速度しきい値62は、移動速度しきい値付近の移動速度で手9が移動した際、ジェスチャの判定開始と終了が短時間で繰り返されて精度の良い判定ができなくなることを抑制するために設けられている。
【0033】
制御部6は、移動速度50の各成分と第1の移動速度しきい値61とを比較し、いずれかの移動速度成分が第1の移動速度しきい値61以上であり、特徴点90が移動する前に、予め定められた時間T
1以上静止していた場合(判定開始トリガ)、判定移動量57の算出、つまりジェスチャの判定を開始する。また制御部6は、移動速度50の各成分と第2の移動速度しきい値62とを比較し、移動速度成分が第2の移動速度しきい値62以下となった後、特徴点90が予め定められた時間T
2以上静止した場合(判定終了トリガ)、判定移動量57の算出を停止してジェスチャの判定を終了する。
【0034】
なお変形例としてジェスチャの判定開始トリガは、例えば、手の形状が規定された形状である条件などが満足されることであっても良い。この規定された形状とは、一例として、指が予め定められた本数伸ばされた形状などである。制御部6は、上述の時間T
1の経過、又は当該条件が満足されたことをジェスチャの判定開始トリガとしても良い。
【0035】
また変形例としてジェスチャの判定終了トリガは、例えば、第2の移動速度しきい値62よりも小さい第3の移動速度しきい値以下になる条件や予め定められた払うジェスチャの条件が満たされた場合などであっても良い。制御部6は、上述の時間T
2の経過、又は当該条件が満たされたことをジェスチャの判定終了トリガとしても良い。
【0036】
この判定移動量57は、例えば、移動量算出部4が算出した移動量40を積算して算出されても良いし、移動量算出部4によって算出されて制御部6に出力されても良い。判定移動量57は、X判定移動量55及びY判定移動量56などのように成分ごとに算出される。なお上述の時間T
1及び時間T
2は、一例として、1秒である。
【0037】
移動量しきい値63は、払うジェスチャを判定するためのしきい値である。制御部6は、移動量しきい値63とジェスチャの判定開始から終了までの判定移動量57の各成分とを比較し、判定移動量57の各成分のうちいずれかが移動量しきい値63以上である場合、払うジェスチャが行われたと判定する。
【0038】
なお変形例として制御部6は、判定移動量57が移動量しきい値63以上である場合、払うジェスチャがなされたと判定しても良い。この場合、払うジェスチャの方向は、判定移動量57の成分のうち、最大の成分により判定される。
【0039】
ジェスチャ情報64は、例えば、
図2(c)に示すように、払い方向を定めるために用いられる。制御部6は、ジェスチャ情報64に基づいて、判定された移動方向がX軸の正方向、つまり符号がプラス(+)であった場合、右方向にジェスチャがなされたと判定し、負方向、つまり符号がマイナス(−)であった場合、左方向にジェスチャがなされたと判定する。
【0040】
また制御部6は、ジェスチャ情報64に基づいて、判定された移動方向がY軸の正方向、つまり符号がプラス(+)であった場合、上方向にジェスチャがなされたと判定し、負方向、つまり符号がマイナス(−)であった場合、下方向にジェスチャがなされたと判定する。
【0041】
さらに制御部6は、ジェスチャ情報64に基づいて、判定された移動方向がZ軸の正方向、つまり符号がプラス(+)であった場合、後方向にジェスチャがなされたと判定し、負方向、つまり符号がマイナス(−)であった場合、前方向にジェスチャがなされたと判定する。なお後方向は、車両8が後退する方向、前方向は、車両8が前進する方向である。
【0042】
時間しきい値65は、ジェスチャの判定開始トリガとなる特徴点90の静止時間に関するしきい値である時間T
1、及びジェスチャの判定終了トリガとなる特徴点90の静止時間に関するしきい値である時間T
2である。
【0043】
ここで操作者が、手の移動方向が斜め下方向になるような下方向に払うジェスチャを行った場合、一例として、
図2(b)に示すように、特徴点90が斜め下に移動して軌跡91を描く。
【0044】
この場合、横方向(X軸方向)の始点から終点までの移動量であるX総移動量72が、下方向(Y軸方向)の始点から終点までの移動量であるY総移動量73より大きくなることがある。このように始点と終点から移動方向を判定すると、総移動量の大きさからX軸方向の払い動作と誤って判定される可能性がある。なおX総移動量72は、例えば、
図2(b)に示すように、始点と終点の特徴点90から得られる総移動量のX成分である。またY総移動量73は、例えば、
図2(b)に示すように、当該総移動量のY成分である。
【0045】
本実施の形態の制御部6は、
図3(b)及び
図3(c)に示すように、第1の移動速度しきい値61以上、第2の移動速度しきい値62以下となる間に特徴点90が移動する判定移動量57を成分ごとに算出する。
【0046】
制御部6は、例えば、移動速度50のX成分が、
図3(b)に示すようなグラフである場合、第1の移動速度しきい値61以上、第2の移動速度しきい値62以下の斜線の部分であるX判定移動量55を算出する。
【0047】
また制御部6は、例えば、移動速度50のY成分が、
図3(c)に示すようなグラフである場合、第1の移動速度しきい値61以上、第2の移動速度しきい値62以下の斜線の部分であるY判定移動量56を算出する。
【0048】
制御部6は、このX判定移動量55及びY判定移動量56と移動量しきい値63とを比較する。制御部6は、X判定移動量55が移動量しきい値63以上である場合、X軸の正方向に払うジェスチャが行われたと判定する。また制御部6は、Y判定移動量56が移動量しきい値63以上である場合、Y軸の正方向に払うジェスチャが行われたと判定する。
【0049】
さらに制御部6は、X判定移動量55及びY判定移動量56の両方が移動量しきい値63以上である場合、総移動量が大きい軸方向に払うジェスチャが行われたと判定する。従って制御部6は、
図3(b)及び
図3(c)に示すように、X判定移動量55がY判定移動量56より多いので、払うジェスチャがX軸の正方向になされと判定する。
【0050】
また制御部6は、一例として、
図2(b)に示すように特徴点90が移動する場合、第1の移動速度しきい値61以上、第2の移動速度しきい値62以下の間の移動量としてのY判定移動量56がX判定移動量55よりも大きいので、払うジェスチャがY軸の負方向になされと判定し、操作者の意図に応じた判定を行うことができる。
【0051】
制御部6は、判定したジェスチャの情報として操作情報S
4を生成して接続された電子機器に出力する。
【0052】
この手9を払うジェスチャは、一例として、操作対象の電子機器が表示装置87に表示させている表示画像を移動方向にスクロールさせるジェスチャである。操作対象の電子機器は、例えば、操作情報S
4に基づいて手9の移動方向に表示画像をスクロールさせる。
【0053】
(車両通信システム81の構成)
車両通信システム81は、一例として、CAN(Controller Area Network)などの規格を用いた通信システムである。車両通信システム81は、例えば、車両LAN(Local Area Network)82を介してジェスチャ判定装置1やナビゲーション装置84などが通信を行う。
【0054】
この車両通信システム81は、一例として、
図1(c)に示すように、ジェスチャ判定装置1、車両制御部83、ナビゲーション装置84、音楽及び映像再生装置85、空調装置86及び表示装置87などが通信できるように構成されている。車両制御部83は、例えば、この車両通信システム81を制御するマイクロコンピュータである。
【0055】
ジェスチャ判定装置1が操作対象としてナビゲーション装置84が操作される場合、ジェスチャ判定装置1から出力された操作情報S
4は、車両LAN82を介してナビゲーション装置84に入力する。ナビゲーション装置84は、入力した操作情報S
4に基づいて動作を行う。
【0056】
以下に、本実施の形態のジェスチャ判定装置1の払うジェスチャの判定に関する動作の一例について
図4のフローチャートに従って説明する。
【0057】
(動作)
車両8の電源が投入されると、ジェスチャ判定装置1の撮像部3は、画像情報S
1を周期的に出力する。移動量算出部4は、画像情報S
1を取得すると、特徴点90の移動量40を算出して移動量情報S
2を出力する。移動速度算出部5は、移動量情報S
2を取得すると、特徴点90の移動速度50を算出して移動速度情報S
3を出力する(Step1)。
【0058】
制御部6は、取得した移動量情報S
2に基づいて特徴点90の移動開始、つまりジェスチャの判定開始トリガの有無を監視する。なお移動量算出部4及び移動速度算出部5は、手9が撮像されていない場合や特徴点90が静止している場合でも移動量情報S
2及び移動速度情報S
3を出力する。
【0059】
制御部6は、移動量情報S
2及び移動速度情報S
3に基づいて特徴点90が少なくとも時間T
1以上静止した後、移動したことを確認した場合、判定開始トリガが得られたとして払うジェスチャの判定を開始する(Step2:Yes)。
【0060】
なお
図3(a)〜
図3(c)に示すジェスチャでは、例えば、この時間T
1以上静止した後、移動を開始した時間は、時間t
1である。
【0061】
制御部6は、得られた移動速度50の各成分と第1の移動速度しきい値61とを比較する。制御部6は、移動速度50の各成分のうち少なくとも1つの成分が第1の移動速度しきい値61以上となると(Step3:Yes)、払うジェスチャを判定するため、移動量40を成分ごとに積算して判定移動量57を算出する(Step4)。
【0062】
なお
図3(a)〜
図3(c)に示すジェスチャでは、例えば、時間t
2において移動速度50のX成分が第1の移動速度しきい値61以上となってX判定移動量55の積算が開始され、時間t
4において移動速度50のY成分が第1の移動速度しきい値61以上となってY判定移動量56の積算が開始される。
【0063】
制御部6は、第1の移動速度しきい値61以上となった移動速度50の成分と第2の移動速度しきい値62とを比較する。なお制御部6は、第1の移動しきい値61以上となっていない移動速度50の成分と第1の移動速度しきい値61との比較を継続して行う。
【0064】
制御部6は、判定移動量57が積算されている移動速度50の成分のうち少なくとも1つの成分が第2の移動速度しきい値62以下となると(Step5:Yes)、特徴点90が時間T
2の間、静止するか確認する。
【0065】
制御部6は、ステップ6の「Yes」が成立する、つまり特徴点90が時間T
2の間、静止した場合(Step6:Yes)、完了トリガ有りと確認する。そして制御部6は、判定移動量57の各成分と移動量しきい値63とを比較する。
【0066】
制御部6は、判定移動量57の各成分のいずれかが移動量しきい値63以上である場合(Step7:Yes)、払うジェスチャが行われたと判定する(Step8)。そして制御部6は、ジェスチャ情報64に基づいて払うジェスチャの方向を判定して操作情報S
4を生成し、接続された電子機器に出力して判定動作を終了する(Step9)。
【0067】
なお
図3(a)〜
図3(c)に示すジェスチャでは、移動速度50のX成分が時間t
3において第2の移動しきい値62以下となってX判定移動量55の積算が終了するが、特徴点90が静止せず移動している。そしてこのジェスチャでは、時間t
4において移動速度50のY成分が第1の移動速度しきい値61以上となり、第2の移動速度しきい値62以下となる時間t
5までY判定移動量56が積算される。従って
図3(a)に示すように、時間t
3〜時間t
4まで静止する時間がないので完了トリガが確認されず、Y成分が停止する時間t
6から時間T
2後の時間t
7において静止していると完了トリガが確認される。
【0068】
なお変形例として制御部6は、特徴点90がフレームアウトする場合、つまり手9が撮像領域30から外れた場合を完了トリガとしても良い。従って制御部6は、特徴点90が時間T
2の間静止するか、又は特徴点90がフレームアウトした場合、完了トリガ有りと判定する。この場合、ジェスチャの判定が中断されることを抑制することができる。
【0069】
ここでステップ5において制御部6は、移動速度50が第2の移動速度しきい値62以下とならない場合(Step5:No)、ステップ4に戻って判定移動量57を算出する。
【0070】
またステップ7において制御部6は、判定移動量57の各成分が移動量しきい値63より小さい場合(Step7:No)、払うジェスチャがなされていないと判定し(S10)、判定動作を終了する。
【0071】
(実施の形態の効果)
本実施の形態に係るジェスチャ判定装置1は、操作者の意図に反したジェスチャの判定を抑制することができる。具体的には、ジェスチャ判定装置1は、払うジェスチャが判定された場合、第1の移動速度しきい値61以上となって第2の移動しきい値62以下となるまでに積算された判定移動量57の各成分のうち最も大きい成分の方向を払うジェスチャの方向とする。従ってジェスチャ判定装置1は、ジェスチャの始点と終点に基づいて払うジェスチャの方向を判定する場合と比べて、より正確な方向を判定でき、操作者の意図に反したジェスチャの判定を抑制することができる。
【0072】
ジェスチャ判定装置1は、移動速度しきい値が第1の移動速度しきい値61及び第2の移動速度しきい値62に分かれているので、この構成を採用しない場合と比べて、移動速度しきい値付近の移動速度で手9が移動した際、ジェスチャの判定開始と終了が短時間で繰り返されて精度の良い判定ができなくなることを抑制することができる。
【0073】
ジェスチャ判定装置1は、例えば、
図3(a)〜
図3(c)に示すように、手9を一方向に払った後、手9が他方向に移動するようなジェスチャが行われたとしても、時間T
1及び時間T
2によって開始トリガ及び終了トリガを規定するので、複数のジェスチャではなく一連のジェスチャとして判定することができる。
【0074】
なお上述のジェスチャ判定装置1は、表示装置87の正面のジェスチャを検出するように構成されていたがこれに限定されず、ステアリングやフロアコンソールなどの近傍で行われたジェスチャを検出するように構成されても良いし、タッチパッドなどの入力装置の近傍で行われたジェスチャを検出するように構成されても良い。
【0075】
上述の実施の形態及び変形例に係るジェスチャ判定装置1は、例えば、用途に応じて、その一部が、コンピュータが実行するプログラム、ASIC(Application Specific Integrated Circuit)及びFPGA(Field Programmable Gate Array)などによって実現されても良い。
【0076】
以上、本発明のいくつかの実施の形態及び変形例を説明したが、これらの実施の形態及び変形例は、一例に過ぎず、特許請求の範囲に係る発明を限定するものではない。これら新規な実施の形態及び変形例は、その他の様々な形態で実施されることが可能であり、本発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更などを行うことができる。また、これら実施の形態及び変形例の中で説明した特徴の組合せの全てが発明の課題を解決するための手段に必須であるとは限らない。さらに、これら実施の形態及び変形例は、発明の範囲及び要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。