(57)【要約】【課題】ジェスチャの認識精度を向上させることができるジェスチャ判定装置及びジェスチャ判定方法を提供する。【解決手段】ジェスチャ判定装置１は、撮像された画像３５に基づいて操作者の手の特徴点Ｐを算出する特徴点算出部４と、算出された特徴点Ｐの移動方向を第１の軸成分（Ｘ軸成分：ＰＸ）及び第２の軸成分（Ｙ軸成分：ＰＹ）に分離して特徴点Ｐごとにいずれの軸成分が大きいか判定し、大きい方の軸成分が一方の軸成分の正負方向のみであった場合、複数の特徴点Ｐから得られる軌跡１０に基づいて軌跡１０の形状に近い仮想的な楕円１５を設定し、軌跡１０を構成する特徴点Ｐのうち、楕円１５の外側に位置する特徴点Ｐが内側に位置する特徴点Ｐよりも多い場合、なされたジェスチャが円を描くジェスチャであると判定する制御部６と、を備えて概略構成されている。【選択図】図６
2018077744.tif 000002
【特許請求の範囲】
【請求項１】
撮像された画像に基づいて操作者の手の特徴点を算出する特徴点算出部と、
算出された特徴点の移動方向を第１の軸成分及び第２の軸成分に分離して特徴点ごとにいずれの軸成分が大きいか判定し、大きい方の軸成分が一方の軸成分の正負方向のみであった場合、複数の特徴点から得られる軌跡に基づいて前記軌跡の形状に近い仮想的な楕円を設定し、前記軌跡を構成する特徴点のうち、前記楕円の外側に位置する特徴点が内側に位置する特徴点よりも多い場合、なされたジェスチャが円を描くジェスチャであると判定する判定部と、
を備えたジェスチャ判定装置。
【請求項２】
前記判定部は、前記楕円の内側に位置する特徴点が外側に位置する特徴点よりも多い場合、なされたジェスチャが手を払うジェスチャであると判定する、
請求項１に記載のジェスチャ判定装置。
【請求項３】
前記判定部は、前記軌跡の前記一方の軸成分の軸における座標の最大値と最小値を通る直線を設定し、前記直線が前記一方の軸成分の軸と一致するように前記軌跡を平行移動及び回転移動させ、移動させた前記軌跡に基づいて長径と短径を定めて前記楕円を設定する、
請求項１又は２に記載のジェスチャ判定装置。
【請求項４】
前記判定部は、前記軌跡の最大値と最小値の間に含まれる複数の特徴点から選択された特徴点と前記楕円を比較してなされたジェスチャを判定する、
請求項１乃至３のいずれか１項に記載のジェスチャ判定装置。
【請求項５】
前記判定部は、前記楕円と比較する特徴点の数を奇数とする、
請求項４に記載のジェスチャ判定装置。
【請求項６】
撮像された画像に基づいて手の特徴点を算出し、
算出された特徴点の移動方向を第１の軸成分及び第２の軸成分に分離して特徴点ごとにいずれの軸成分が大きいか判定し、
大きい方の軸成分が一方の軸成分の正負方向のみであった場合、複数の特徴点から得られる軌跡に基づいて前記軌跡の形状に近い仮想的な楕円を設定し、
前記軌跡を構成する特徴点のうち、前記楕円の外側に位置する特徴点が内側に位置する特徴点よりも多い場合、なされたジェスチャが円を描くジェスチャであると判定する、
ジェスチャ判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジェスチャ判定装置及びジェスチャ判定方法に関する。
【背景技術】
【０００２】
従来の技術として、手が表現されている一連の画像をリアルタイムで受け付ける入力手段と、一連の画像各々に表現されている手をベクトルで表して、当該ベクトルを処理することによりハンドジェスチャを認識する処理手段と、を備えたハンドジェスチャ認識システムが知られている（例えば、特許文献１参照。）。
【０００３】
このハンドジェスチャ認識システムの処理手段は、さらに、一連の画像各々に表現されている手各々を、実数値の重心を用いて算出された回転ベクトルで表すことで、画素のグリッド量子化によることなく手をセクタ化するベクトル処理手段と、ベクトル処理手段で処理された一連の回転ベクトルを分析することにより、ハンドジェスチャを認識する認識手段と、を備えている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−２１４３４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし従来のハンドジェスチャ認識システムは、手を撮像するカメラの位置と手の位置の関係によっては、撮影された手の軌跡が歪んでジェスチャの認識精度が低下する可能性がある。
【０００６】
従って本発明の目的は、ジェスチャの認識精度を向上させることができるジェスチャ判定装置及びジェスチャ判定方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一態様は、撮像された画像に基づいて操作者の手の特徴点を算出する特徴点算出部と、算出された特徴点の移動方向を第１の軸成分及び第２の軸成分に分離して特徴点ごとにいずれの軸成分が大きいか判定し、大きい方の軸成分が一方の軸成分の正負方向のみであった場合、複数の特徴点から得られる軌跡に基づいて軌跡の形状に近い仮想的な楕円を設定し、軌跡を構成する特徴点のうち、楕円の外側に位置する特徴点が内側に位置する特徴点よりも多い場合、なされたジェスチャが円を描くジェスチャであると判定する判定部と、を備えたジェスチャ判定装置を提供する。
【発明の効果】
【０００８】
本発明によれば、ジェスチャの認識精度を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】図１（ａ）は、実施の形態に係るジェスチャ判定装置の一例が搭載された車両内部の概略図であり、図１（ｂ）は、ジェスチャ判定装置の一例を示すブロック図である。
【図２】図２（ａ）は、実施の形態に係るジェスチャ判定装置の撮像部が撮像する画像の一例を示す概略図であり、図２（ｂ）は、特徴点の算出方法の一例を説明するための概略図である。
【図３】図３（ａ）は、実施の形態に係るジェスチャ判定装置が検出した特徴点の軌跡の一例を示す概略図であり、図３（ｂ）は、特徴点の移動方向の軸成分への分解の一例について説明するための概略図であり、図３（ｃ）は、仮想的に設定された楕円の一例を示す概略図である。
【図４】図４（ａ）〜図４（ｄ）は、実施の形態に係るジェスチャ判定装置の仮想的な楕円の設定の一例を説明するための概略図である。
【図５】図５（ａ）〜図５（ｄ）は、実施の形態に係るジェスチャ判定装置の仮想的な楕円の設定の一例を説明するための概略図である。
【図６】図６は、実施の形態に係るジェスチャ判定装置のジェスチャの判定の一例を示す第１のフローチャートである。
【図７】図７は、実施の形態に係るジェスチャ判定装置の軌跡を平行移動及び回転移動させる動作の一例を示す第２のフローチャートである。
【図８】図８は、実施の形態に係るジェスチャ判定装置が設定した楕円と特徴点とに基づいてジェスチャを判定する動作の一例を示す第３のフローチャートである。
【発明を実施するための形態】
【００１０】
（実施の形態の要約）
実施の形態に係るジェスチャ判定装置は、撮像された画像に基づいて操作者の手の特徴点を算出する特徴点算出部と、算出された特徴点の移動方向を第１の軸成分及び第２の軸成分に分離して特徴点ごとにいずれの軸成分が大きいか判定し、大きい方の軸成分が一方の軸成分の正負方向のみであった場合、複数の特徴点から得られる軌跡に基づいて軌跡の形状に近い仮想的な楕円を設定し、軌跡を構成する特徴点のうち、楕円の外側に位置する特徴点が内側に位置する特徴点よりも多い場合、なされたジェスチャが円を描くジェスチャであると判定する判定部と、を備えて概略構成されている。
【００１１】
このジェスチャ判定装置は、円を描くジェスチャの軌跡が歪んで一方の軸成分の正負方向のみが検出されるような判定が困難な場合であっても軌跡に近い楕円を設定し、軌跡を構成する特徴点が楕円の外側に多ければ円を描くジェスチャであると判定するため、手を払うジェスチャであるとされる誤判定が抑制されるので、この構成を採用しない場合と比べて、ジェスチャの認識精度を向上させることができる。
【００１２】
[実施の形態]
（ジェスチャ判定装置１の概要）
図１（ａ）は、実施の形態に係るジェスチャ判定装置の一例が搭載された車両内部の概略図であり、図１（ｂ）は、ジェスチャ判定装置の一例を示すブロック図である。図２（ａ）は、実施の形態に係るジェスチャ判定装置の撮像部が撮像する画像の一例を示す概略図であり、図２（ｂ）は、特徴点の算出方法の一例を説明するための概略図である。図３（ａ）は、実施の形態に係るジェスチャ判定装置が検出した特徴点の軌跡の一例を示す概略図であり、図３（ｂ）は、特徴点の移動方向の軸成分への分解の一例について説明するための概略図であり、図３（ｃ）は、仮想的に設定された楕円の一例を示す概略図である。なお、以下に記載する実施の形態に係る各図において、図形間の比率は、実際の比率とは異なる場合がある。また図１（ｂ）では、主な情報の流れを矢印で示している。さらに数値範囲を示す「Ａ〜Ｂ」は、Ａ以上Ｂ以下の意味で用いるものとする。
【００１３】
ジェスチャ判定装置１は、一例として、図１（ａ）に示すように、車両８に配置されている。操作者は、例えば、表示装置８５の上側に配置された撮像部３の撮像領域３０においてジェスチャをすることにより、ジェスチャ判定装置１に電磁気的に接続された電子機器の操作を行うことができる。この表示装置８５は、例えば、電子機器の表示部として機能するのであり、センターコンソール８０に配置される。また電子機器は、例えば、車両８に搭載されたナビゲーション装置、空調装置、音楽及び映像再生装置などである。
【００１４】
このジェスチャ判定装置１は、図１（ａ）〜図３（ｃ）に示すように、撮像された画像３５に基づいて操作者の手の特徴点Ｐを算出する特徴点算出部４と、算出された特徴点Ｐの移動方向を第１の軸成分（Ｘ軸成分：ＰＸ）及び第２の軸成分（Ｙ軸成分：ＰＹ）に分離して特徴点Ｐごとにいずれの軸成分が大きいか判定し、大きい方の軸成分が一方の軸成分の正負方向のみであった場合、複数の特徴点Ｐから得られる軌跡１０に基づいて軌跡１０の形状に近い仮想的な楕円１５を設定し、軌跡１０を構成する特徴点Ｐのうち、楕円１５の外側に位置する特徴点Ｐが内側に位置する特徴点Ｐよりも多い場合、なされたジェスチャが円を描くジェスチャであると判定する判定部としての制御部６と、を備えて概略構成されている。なお制御部６は、後述するように、楕円１５と比較する特徴点Ｐの数を奇数とするように構成されている。
【００１５】
制御部６は、軌跡１０の最大値と最小値の間に含まれる複数の特徴点Ｐから選択された特徴点Ｐと楕円１５を比較してなされたジェスチャを判定するように構成されている。
【００１６】
具体的には、制御部６は、楕円１５の内側に位置する特徴点Ｐが外側に位置する特徴点Ｐよりも多い場合、なされたジェスチャが手を払うジェスチャであると判定する。
【００１７】
また制御部６は、軌跡１０の一方の軸成分の軸における座標の最大値と最小値を通る直線を設定し、直線が一方の軸成分の軸と一致するように軌跡１０を平行移動及び回転移動させ、移動させた軌跡１０に基づいて長径と短径を定めて楕円１５を設定する。
【００１８】
ジェスチャ判定装置１は、例えば、図１（ｂ）に示すように、特徴点Ｐを時系列的に記憶する記憶部５を備えている。
【００１９】
（撮像部３の構成）
撮像部３は、例えば、ＣＣＤ（Charge Coupled Device）イメージセンサやＣＭＯＳ（Complementary Metal Oxide Semiconductor）イメージセンサなどの固体撮像素子を有して構成されている。この撮像部３は、表示装置８５の正面を撮像領域３０としている。
【００２０】
そして撮像部３は、周期的に撮像した画像３５の情報を画像情報Ｓ１として制御部６に出力するように構成されている。なお撮像部３の設置場所は、センターコンソール８０に限定されず、例えば、ステアリングコラムや天井などの操作者の手が撮像可能な場所であれば良い。
【００２１】
（特徴点算出部４の構成）
特徴点算出部４は、例えば、図２（ａ）に示すように、撮像された画像３５から手画像３６の特徴点Ｐの座標を算出するように構成されている。
【００２２】
特徴点算出部４は、例えば、図２（ａ）及び図２（ｂ）に示すように、撮像部３から取得した画像情報Ｓ１に基づいて画像３５の二値化処理を行って手画像３６の二値化画像３７を生成する。この二値化処理は、例えば、手画像３６が含まれない画像３５と含まれる画像３５とを比較して背景画像を消去して手画像３６を抽出し、これに二値化処理を行って手画像３６を得る。
【００２３】
次に特徴点算出部４は、手画像３６の重心Ｇを算出する。この重心Ｇは、例えば、手画像３６の画素値の平均を計算することによって得られる。そして特徴点算出部４は、例えば、図２（ｂ）に示すように、求めた重心Ｇから最も遠い点を特徴点Ｐと定める。なお特徴点Ｐは、重心Ｇから最も遠い点に限定されず、パターンマッチングや指先検出方法に応じて得られた複数の指先のいずれかを特徴点Ｐとしても良い。
【００２４】
特徴点Ｐは、画像３５に設定されたＸＹ座標系の座標として表される。このＸＹ座標系は、例えば、図２（ａ）及び図２（ｂ）に示すように、画像３５の中央を原点として横方向の軸がＸ軸、縦方向の軸がＹ軸とされている。
【００２５】
特徴点算出部４は、算出した特徴点Ｐ（Ｘ，Ｙ）の情報である特徴点情報Ｓ２を生成して制御部６に出力する。制御部６は、取得した特徴点Ｐを時系列的に記憶部５に記憶させる。
【００２６】
（記憶部５の構成）
記憶部５は、例えば、半導体メモリである。この記憶部５には、時系列的に特徴点Ｐの座標値が記憶されている。
【００２７】
ここで以下では、１枚の画像３５を１フレームと記載する。また数フレームとは、一桁程度のフレームを示している。さらにウインドウとは、数フレームより大きいフレーム間（一定の数のフレームの集合）を示している。本実施の形態では、操作者が手を回転させるジェスチャを行う場合、手を０．５〜１回転させるのに５００フレームを要すると仮定し、数フレームを５フレーム、ウインドウを５００フレーム間と規定する。なお数フレーム及びウインドウは、撮像周期、認識精度、判定速度などによって変化する。
【００２８】
記憶部５は、ウインドウ、つまり５００フレームに達するように特徴点Ｐの座標値を記憶し、５００フレームに達すると、古いフレームの座標値を消去して更新するように構成されている。
【００２９】
（制御部６の構成）
制御部６は、例えば、記憶されたプログラムに従って、取得したデータに演算、加工などを行うＣＰＵ（Central Processing Unit）、半導体メモリであるＲＡＭ（Random Access Memory）及びＲＯＭ（Read Only Memory）などから構成されるマイクロコンピュータである。このＲＯＭには、例えば、制御部６が動作するためのプログラムが格納されている。ＲＡＭは、例えば、一時的に演算結果などを格納する記憶領域として用いられる。また制御部６は、その内部にクロック信号を生成する手段を有し、このクロック信号に基づいて動作を行う。なおＲＡＭは、例えば、記憶部５として用いられても良い。
【００３０】
制御部６は、算出された特徴点Ｐの移動方向を第１の軸成分（ＰＸ）及び第２の軸成分（ＰＹ）に分離して特徴点Ｐごとにいずれの軸成分が大きいか判定するように構成されている。制御部６は、例えば、図３（ａ）及び図３（ｂ）に示すように、数フレームの特徴点Ｐの移動に基づいて軸成分ＰＸ、軸成分ＰＹに分離し、大きい方の軸成分をその特徴点Ｐの移動方向とする。なお図３（ａ）及び図３（ｃ）に示す特徴点Ｐ１〜特徴点Ｐ８は、例えば、移動方向を算出する際の数フレームの最初のフレームにおける特徴点であるものとする。
【００３１】
移動方向は、さらに大きな方の軸成分の正負によって分けられ、軸成分ＰＸの正負によって右（Ｒ）方向と左（Ｌ）方向、軸成分ＰＹの正負によって上（Ｕ）方向と下（Ｄ）方向に分けられる。図３（ｂ）では、軸成分ＰＹが軸成分ＰＸより大きく、正方向であるので、特徴点Ｐの移動方向は、上方向（Ｕ）となる。
【００３２】
図３（ａ）では、特徴点Ｐ１〜特徴点Ｐ８を含む軌跡１０の一例を示している。この特徴点Ｐ１〜特徴点Ｐ８の移動方向は、図３（ａ）に示すように、上（Ｕ）→上（Ｕ）→下（Ｄ）→下（Ｄ）→下（Ｄ）→下（Ｄ）→下（Ｄ）→上（Ｕ）となり、Ｙ軸の正方向と負方向、つまり移動方向の大きな軸成分がＹ軸の軸成分ＰＹのみとなっている。
【００３３】
このような場合、制御部６は、例えば、図３（ｃ）に示すように、特徴点Ｐ１〜特徴点Ｐ８から得られる軌跡１０に基づいて軌跡１０の形状に近い仮想的な楕円１５を設定する。この楕円１５は、軌跡１０の一方の軸成分の軸における座標の最大値Ｙｍａｘと最小値Ｙｍｉｎを通る直線を設定し、直線が一方の軸成分の軸と一致するように軌跡１０を平行移動及び回転移動させ、移動させた軌跡１０に基づいて長径ｂと短径ａを定めて設定される。
【００３４】
そして制御部６は、軌跡１０を構成する特徴点Ｐのうち、軌跡１０の最大値と最小値の間に含まれる複数の特徴点Ｐから選択された特徴点Ｐと楕円１５を比較してなされたジェスチャを判定するように構成されている。図３（ａ）では、特徴点Ｐ３〜特徴点Ｐ７が選択された特徴点となっている。
【００３５】
図３（ｃ）の場合、制御部６は、特徴点Ｐ３〜特徴点Ｐ７の全てが楕円１５の外側に位置するので、円を描くジェスチャが行われたと判定する。
【００３６】
以下に、本実施の形態のジェスチャ判定装置１の動作の一例について図４（ａ）〜図５（ｄ）の図面、及び図６〜図８の第１のフローチャート〜第３のフローチャートに従って説明する。図４（ａ）〜図５（ｄ）は、時計回りにジェスチャがなされた場合の軌跡１０を示している。なおこのジェスチャは、一例として、５００フレーム間では、完結していないジェスチャとしている。
【００３７】
（動作）
図４（ａ）〜図５（ｄ）は、実施の形態に係るジェスチャ判定装置の仮想的な楕円の設定の一例を説明するための概略図である。図６は、実施の形態に係るジェスチャ判定装置のジェスチャの判定の一例を示す第１のフローチャートである。図７は、実施の形態に係るジェスチャ判定装置の軌跡を平行移動及び回転移動させる動作の一例を示す第２のフローチャートである。図８は、実施の形態に係るジェスチャ判定装置が設定した楕円と特徴点とに基づいてジェスチャを判定する動作の一例を示す第３のフローチャートである。なお以下では、図４（ａ）〜図５（ｄ）に示すように、Ｙ軸側が長軸となる軌跡１０について説明する。またＸ軸側が長軸となる軌跡１０の場合、第２のフローチャート及び第３のフローチャートのＸとＹを逆にしたフローチャートによってジェスチャの判定が行われる。
【００３８】
ジェスチャ判定装置１の撮像部３は、周期的に撮像領域３０を撮像して画像情報Ｓ１を出力する。特徴点算出部４は、取得した画像情報Ｓ１に手画像３６が含まれている場合、特徴点Ｐの座標（Ｘ（ｎ），Ｙ（ｎ））を算出して特徴点情報Ｓ２として制御部６に出力する。
【００３９】
制御部６は、フレームの番号をｎ＝０としてリセットした後（Ｓｔｅｐ１）、フレームの番号をｎ＝ｎ＋１とし（Ｓｔｅｐ２）、特徴点Ｐの座標（Ｘ（ｎ），Ｙ（ｎ））を記憶部５に記憶させる（Ｓｔｅｐ３）。次に制御部６は、数フレームの特徴点Ｐの移動に基づいて特徴点Ｐの移動方向を判定して記憶部５に記憶させる（Ｓｔｅｐ４）。
【００４０】
制御部６は、フレームの数Ｎが５００より小さいか確認する。制御部６は、フレームの数Ｎが５００より小さい場合（Ｓｔｅｐ５：Ｙｅｓ）、ステップ２に処理を進める。
【００４１】
制御部６は、フレームの数Ｎが５００となると（Ｓｔｅｐ５：Ｎｏ）、記憶させた移動方向が一定方向のみであるか確認する。この一定方向とは、軸成分に分解した移動方向がＸとＹの一方の軸成分の正方向又は負方向のみとなる場合である。
【００４２】
制御部６は、移動方向が一定方向のみである場合（Ｓｔｅｐ６：Ｙｅｓ）、払うジェスチャが行われたと判定する（Ｓｔｅｐ１１）。そして制御部６は、判定結果に基づいて払うジェスチャに応じたジェスチャ情報Ｓ３を生成して接続された電子機器に出力してジェスチャの判定動作を終了する（Ｓｔｅｐ１０）。
【００４３】
ここでステップ６において制御部６は、移動方向が上下のみ、つまりＹ軸成分の正方向及び負方向のみである場合（Ｓｔｅｐ６：Ｙｅｓ）、図７に示す第２のフローチャートに処理を進める。
【００４４】
また制御部６は、移動方向が上下のみでなく（Ｓｔｅｐ７：Ｎｏ）、左右方向のみ、つまりＸ軸成分の正方向及び負方向のみである場合（Ｓｔｅｐ８：Ｙｅｓ）、第２のフローチャートのＸとＹを入れ替えたフローチャートに処理を進める。
【００４５】
またステップ８において制御部６は、移動方向が左右のみでない場合（Ｓｔｅｐ８：Ｎｏ）、円を描くジェスチャが行われたと判定し（Ｓｔｅｐ９）、判定結果に基づいて円を描くジェスチャに応じたジェスチャ情報Ｓ３を生成して接続された電子機器に出力してジェスチャの判定動作を終了する（Ｓｔｅｐ１０）。
【００４６】
続いて移動方向が上下方向のみの場合の第２のフローチャートについて説明する。
【００４７】
制御部６は、記憶部５から時系列的に特徴点Ｐの座標（Ｘ（ｉ），Ｙ（ｉ））を読み出してＹ軸成分の最大値（Ｙｍａｘ）と最小値（Ｙｍｉｎ）を探索する。具体的には、制御部６は、まず最大値を探索するため、Ｙｍａｘ＝０（Ｓｔｅｐ２０）、ｉ＝０（Ｓｔｅｐ２１）、ｊ＝０（Ｓｔｅｐ２２）及びＹｍｉｎ＝０（Ｓｔｅｐ２３）として各値をリセットする。そして制御部６は、ｉ＝ｉ＋１として（Ｓｔｅｐ２４）、ＹｍａｘとＹ（ｉ）とを比較する。なおｉ＝１のとき、Ｙｍａｘは、Ｙ（１）である。
【００４８】
制御部６は、Ｙｍａｘ＜Ｙ（ｉ）が成り立つ場合（Ｓｔｅｐ２５：Ｙｅｓ）、ＹｍａｘをＹ（ｉ）に更新する（Ｓｔｅｐ２６）。そして制御部６は、ｍａｘ＝ｉとして（Ｓｔｅｐ２７）、このｉが５００以上となるか確認する。制御部６は、ｉが５００より小さい場合（Ｓｔｅｐ２８：Ｙｅｓ）、ステップ２４に処理を進める。このステップ２４〜ステップ２８は、Ｙｍａｘを探索する処理である。
【００４９】
ここでステップ２５において制御部６は、Ｙｍａｘ≧Ｙ（ｉ）である場合（Ｓｔｅｐ２５：Ｎｏ）、ステップ２８に処理を進める。
【００５０】
制御部６は、ｉが５００以上となった場合（Ｓｔｅｐ２８：Ｎｏ）、Ｙｍｉｎを探索する処理を開始する。具体的には、制御部６は、最小値を探索するため、ｊ＝ｊ＋１として（Ｓｔｅｐ２９）、ＹｍｉｎとＹ（ｊ）とを比較する。なおｊ＝１のとき、Ｙｍｉｎは、Ｙ（１）である。
【００５１】
制御部６は、Ｙｍｉｎ＞Ｙ（ｊ）が成り立つ場合（Ｓｔｅｐ３０：Ｙｅｓ）、ＹｍｉｎをＹ（ｊ）に更新する（Ｓｔｅｐ３１）。そして制御部６は、ｍｉｎ＝ｊとして（Ｓｔｅｐ３２）、このｊが５００以上となるか確認する。制御部６は、ｊが５００より小さい場合（Ｓｔｅｐ３３：Ｙｅｓ）、ステップ２９に処理を進める。このステップ２９〜ステップ３３は、Ｙｍｉｎを探索する処理である。
【００５２】
ここでステップ３０において制御部６は、Ｙｍｉｎ≦Ｙ（ｊ）である場合（Ｓｔｅｐ３０：Ｎｏ）、ステップ３３に処理を進める。
【００５３】
上述のように、制御部６は、５００フレーム分の特徴点Ｐに基づいて、ステップ２４〜ステップ２８において軌跡１０の最大値Ｙｍａｘ、ステップ２９〜ステップ３３において軌跡１０の最小値Ｙｍｉｎを設定する。
【００５４】
次に制御部６は、例えば、図４（ａ）に示すように、得られたＹｍａｘ及びＹｍｉｎを通る直線Ｙ＝αＸ＋βを定める。具体的には、制御部６は、この直線の傾きをα＝（Ｙｍａｘ−Ｙｍｉｎ）／（Ｘ（ｍａｘ）−Ｘ（ｍｉｎ））として求める（Ｓｔｅｐ３４）。なおＸ（ｍａｘ）及びＸ（ｍｉｎ）は、Ｙｍａｘ及びＹｍｉｎのＸ座標値である。
【００５５】
次に制御部６は、この直線のＹ切片を特徴点Ｐ（Ｙｍａｘ，Ｘ（ｍａｘ））を用いてβ＝Ｙｍａｘ−α・Ｘ（ｍａｘ）として求める（Ｓｔｅｐ３５）。
【００５６】
そして制御部６は、例えば、図４（ｂ）に示すように、この直線がＸＹ座標系の原点を通るように、ステップ３７〜ステップ３９において軌跡１０を平行移動させる。具体的には、制御部６は、ｋ＝０としてリセットした後（Ｓｔｅｐ３６）、ｋ＝ｋ＋１として（Ｓｔｅｐ３７）、特徴点Ｐの座標Ｘ（ｋ）をＸ（ｋ）＝Ｘ（ｋ）＋α／βにより座標変換する（Ｓｔｅｐ３８）。次に制御部６は、ｋ＜５００である場合（Ｓｔｅｐ３９：Ｙｅｓ）、ステップ３２に処理を進める。制御部６は、ステップ３７〜ステップ３９を５００フレーム分繰り返すことにより、直線が原点を通るように、軌跡１０をＹ軸に平行に平行移動させる。
【００５７】
次に制御部６は、例えば、図４（ｂ）及び図４（ｃ）に示すように、平行移動させた軌跡１０を、直線とＹ軸が一致するように角度θ回転させる。まず制御部６は、ｃｏｓθ＝Ｙｍｉｎ／√（Ｘ（ｍｉｎ）２＋Ｙｍｉｎ２）を算出すると共に（Ｓｔｅｐ４０）、ｓｉｎθ＝Ｘ（ｍｉｎ）／√（Ｘ（ｍｉｎ）２＋Ｙｍｉｎ２）を算出する（Ｓｔｅｐ４１）。
【００５８】
次に制御部６は、ｌ＝０としてリセットした後（Ｓｔｅｐ４２）、ｌ＝ｌ＋１とし（Ｓｔｅｐ４３）、回転行列による変換によって、Ｘ（ｌ）＝Ｘ（ｌ）・ｃｏｓθ−Ｙ（ｌ）・ｓｉｎθを算出すると共に（Ｓｔｅｐ４４）、Ｙ（ｌ）＝Ｘ（ｌ）・ｓｉｎθ＋Ｙ（ｌ）・ｃｏｓθを算出する（Ｓｔｅｐ４５）。
【００５９】
制御部６は、ｌ＜５００である場合（Ｓｔｅｐ４６：Ｙｅｓ）、ステップ４３に処理を進めて他の特徴点Ｐの座標を回転させる。また制御部６は、ｌが５００以上となった場合（Ｓｔｅｐ４６：Ｎｏ）、μ＝０としてリセットした後（Ｓｔｅｐ４７）、μ＝μ＋１として（Ｓｔｅｐ４８）、Ｘ（μ）＝０が成り立つか確認する。制御部６は、Ｘ（μ）＝０となる場合（Ｓｔｅｐ４９：Ｙｅｓ）、このＸ（μ）の際のＹ（μ）がＹ（ｍａｘ）であるか確認する。なおステップ４９において制御部６は、Ｘ（μ）≠０の場合（Ｓｔｅｐ４９：Ｎｏ）、ステップ４８に処理を進める。
【００６０】
制御部６は、Ｙ（ｍａｘ）＝Ｙ（μ）が成立する場合（Ｓｔｅｐ５０：Ｙｅｓ）、仮想的な楕円１５を設定する図８の第３のフローチャートに処理を進める。なおステップ５０において制御部６は、Ｙ（ｍａｘ）≠Ｙ（μ）の場合（Ｓｔｅｐ５０：Ｎｏ）、ステップ２０に処理を進めて再度軌跡１０の平行移動と回転移動を行う。
【００６１】
続いて仮想的な楕円１５の設定とジェスチャの判定に関する第３のフローチャートについて説明する。
【００６２】
制御部６は、変換前の軌跡１０のＹｍａｘとＹｍｉｎが変換後の軌跡１０の最大値と最小値とは限らないので、これを考慮して仮想的な楕円１５の中心（ｐ，ｑ）を定める。まず制御部６は、Ｘ（ｍａｘ）とＸ（ｍｉｎ）の大小を確認し、Ｘ（ｍａｘ）＜Ｘ（ｍｉｎ）の場合（Ｓｔｅｐ６０：Ｎｏ）、ｐ＝Ｘ（ｍａｘ）とする（Ｓｔｅｐ６１）。また制御部６は、Ｘ（ｍａｘ）≧Ｘ（ｍｉｎ）の場合（Ｓｔｅｐ６０：Ｙｅｓ）、ｐ＝Ｘ（ｍｉｎ）とする（Ｓｔｅｐ６２）。図４（ｄ）は、Ｘ（ｍａｘ）≧Ｘ（ｍｉｎ）の場合、つまり右に傾いている場合を示しており、ｐ＝Ｘ（ｍｉｎ）となっている。
【００６３】
次に制御部６は、例えば、図５（ａ）に示すように、（Ｙｍａｘ−Ｙｍｉｎ）／２を計算して長径ｂを求める（Ｓｔｅｐ６３）。そして制御部６は、例えば、図５（ｂ）に示すように、ｑ＝ｂ＋Ｙｍｉｎを求める（Ｓｔｅｐ６４）。
【００６４】
次に制御部６は、Ｙｍａｘが得られるフレーム（ｍａｘ）とＹｍｉｎが得られるフレーム（ｍｉｎ）との中間のフレームであるｍｉｄを求める（Ｓｔｅｐ６５）。図５（ｃ）に示す丸印は、ｍａｘ、ｍｉｄ、ｍｉｎの一例を示している。制御部６は、このｍｉｎ〜ｍａｘのフレームに含まれる特徴点から選択された奇数個の特徴点と仮想的な楕円１５とを比較する。
【００６５】
次に制御部６は、例えば、図５（ｄ）に示すように、Ｘ（ｍｉｄ）−ｐを計算して短径ａを求める（Ｓｔｅｐ６６）。
【００６６】
ここで制御部６は、Ｘ（ｍｉｄ）がＸ軸の正の領域（第１象限及び第４象限）に位置するのか負の領域（第２象限及び第３象限）に位置するのか確認する。制御部６は、Ｘ（ｍｉｄ）＞０が成り立つ場合（Ｓｔｅｐ６７：Ｙｅｓ）、Ｘの座標値を変換せずにステップ７２に処理を進める。また制御部６は、Ｘ（ｍｉｄ）≦０である場合（Ｓｔｅｐ６７：Ｎｏ）、ｍ＝０としてリセットした後（Ｓｔｅｐ６８）、ｍ＝ｍ＋１として（Ｓｔｅｐ６９）、Ｘ（ｍ）＝Ｘ（−ｍ）に変換する（Ｓｔｅｐ７０）。そして制御部６は、ｍ＜５００である場合（Ｓｔｅｐ７１：Ｙｅｓ）、ステップ６９に処理を進め、ｍ≧５００である場合（Ｓｔｅｐ７１：Ｎｏ）、ステップ７２に処理を進める。この変換によってフレームのｍｉｎ〜ｍａｘ間の軌跡１０は、第１象限及び第４象限に位置することとなる。
【００６７】
ここで仮想的な楕円１５は、例えば、座標（ｐ，ｑ）を中心１５０、短径をａ、長径をｂとした場合、（Ｘ−ｐ）２／ａ２＋（Ｙ−ｑ）２／ｂ２＝１で表される。以下では、この式を用いて軌跡１０の特徴点Ｐが楕円１５の内側なのか外側なのかを確認する。
【００６８】
制御部６は、ステップ７２においてフレームのｍａｘとフレームのｍｉｎのどちらが先のフレームであるのかを確認する。制御部６は、フレームのｍａｘがフレームのｍｉｎよりも後である場合（Ｓｔｅｐ７２：Ｙｅｓ）、ξ＝ｍａｘ、λ＝ｍｉｎ、ｃｏ＝２とする（Ｓｔｅｐ７３）。また制御部６は、フレームのｍｉｎがフレームのｍａｘよりも後である場合（Ｓｔｅｐ７２：Ｎｏ）、ξ＝ｍｉｎ、λ＝ｍａｘ、ｃｏ＝１とする（Ｓｔｅｐ７４）。
【００６９】
ここで特徴点Ｐが第１象限に位置する場合は、楕円１５の上述の式をＹについて解いた式（Ｙ＝ｑ±ｂ√１−（Ｘ−ｐ）２／ａ２）のＹ１＝ｑ＋ｂ√１−（Ｘ−ｐ）２／ａ２が比較に用いられ、第４象限に位置する場合、Ｙ４＝ｑ−ｂ√１−（Ｘ−ｐ）２／ａ２が用いられる。
【００７０】
また軌跡１０の方向は、ｍｉｎ〜ｍｉｄ、ｍｉｄ〜ｍａｘを経由する反時計回りの回転方向と、ｍａｘ〜ｍｉｄ、ｍｉｄ〜ｍｉｎを経由する時計回りの回転方向がある。
【００７１】
そして第１象限に特徴点Ｐが位置する場合、特徴点ＰのＹ座標値（Ｙｐ）が楕円１５の内側なのか外側なのかを調べるには、Ｘ座標値（Ｘｐ）におけるＹｐ−Ｙ１の符号を調べれば良い。つまり制御部６は、Ｙｐ−Ｙ１が正の場合、楕円１５の外に位置すると判定し、負の場合、楕円１５の内に位置すると判定する。
【００７２】
さらに第４象限に特徴点Ｐが位置する場合、特徴点ＰのＹ座標値（Ｙｐ）が楕円１５の内側なのか外側なのかを調べるには、Ｘ座標値（Ｘｐ）におけるＹｐ＋Ｙ４の符号を調べれば良い。つまり制御部６は、Ｙｐ＋Ｙ４が正の場合、楕円１５の内に位置すると判定し、負の場合、楕円１５の外に位置すると判定する。
【００７３】
上述のｃｏは、この第１象限と第４象限の違いを調整するために設けられた定数である。
【００７４】
制御部６は、判定数Ｉ＝０としてリセットした後（Ｓｔｅｐ７５）、ｕ＝λとする（Ｓｔｅｐ７６）。つまり制御部６は、時系列的に早い順番で特徴点Ｐの座標と楕円１５とを比較する。次に制御部６は、ｕ＝ｕ＋γとする（Ｓｔｅｐ７７）。ここでγは、（ξ−λ）／△である。この△は、任意の数である。このγは、判定に用いる特徴点Ｐの数を規定するものであり、比較に用いられる特徴点Ｐの数が奇数となるように△が定められる。
【００７５】
制御部６は、Ｎａ＝Ｎａ＋１として（Ｓｔｅｐ７８）、λ〜ｍｉｄ間（第４象限）、又はξ〜ｍｉｄ間（第１象限）でＮａ回、（Ｙ（ｕ）−[ｑ−ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝・（−１）ｃｏ]）・（−１）ｃｏを計算する。
第４象限の場合（ｍｉｎ＜ｍａｘ  λ＝ｍｉｎ  ξ＝ｍａｘ  ｃｏ＝２）
Ｙ（ｕ）−[ｑ−ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝]
第１象限の場合（ｍａｘ＜ｍｉｎ  ξ＝ｍｉｎ  λ＝ｍａｘ  ｃｏ＝１）
（Ｙ（ｕ）−[ｑ＋ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝]）・（−１）
【００７６】
制御部６は、（Ｙ（ｕ）−[ｑ−ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝・（−１）ｃｏ]）・（−１）ｃｏ＜０の場合（Ｓｔｅｐ７９：Ｙｅｓ）、特徴点Ｐが楕円１５の外側にあるとして判定値Ｉに１を加える（Ｓｔｅｐ８０）。また制御部６は、（Ｙ（ｕ）−[ｑ−ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝・（−１）ｃｏ]）・（−１）ｃｏ≧０の場合（Ｓｔｅｐ７９：Ｎｏ）、ステップ８１に処理を進める。
【００７７】
制御部６は、ｕ＜ｍｉｄである場合（Ｓｔｅｐ８１：Ｙｅｓ）、ステップ７７に処理を進める。また制御部６は、ｕ≧ｍｉｄである場合（Ｓｔｅｐ８１：Ｎｏ）、ｕ＝ｕ＋γとする（Ｓｔｅｐ８２）。なお当該ｕ＋γは、ｍｉｄ以降の特徴点を指定する番号である。
【００７８】
そして制御部６は、Ｎｂ＝Ｎｂ＋１として（Ｓｔｅｐ８３）、ｍｉｄ〜ξ間（第１象限）、又はｍｉｄ〜λ間（第４象限）でＮｂ回、（Ｙ（ｕ）−[ｑ＋ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝・（−１）ｃｏ]）・（−１）ｃｏを計算する。
第１象限の場合（ｍｉｎ＜ｍａｘ  λ＝ｍｉｎ  ξ＝ｍａｘ  ｃｏ＝２）
Ｙ（ｕ）−[ｑ＋ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝]
第４象限の場合（ｍａｘ＜ｍｉｎ  ξ＝ｍｉｎ  λ＝ｍａｘ  ｃｏ＝１）
（Ｙ（ｕ）−[ｑ−ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝]）・（−１）
【００７９】
制御部６は、（Ｙ（ｕ）−[ｑ＋ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝・（−１）ｃｏ]）・（−１）ｃｏ＞０の場合（Ｓｔｅｐ８４：Ｙｅｓ）、特徴点Ｐが楕円１５の外側にあるとして判定値Ｉに１を加える（Ｓｔｅｐ８５）。また制御部６は、（Ｙ（ｕ）−[ｑ＋ｂ・√｛１−（Ｘ（ｕ）−ｐ）２/ａ２｝・（−１）ｃｏ]）・（−１）ｃｏ≦０の場合（Ｓｔｅｐ８４：Ｎｏ）、ステップ８６に処理を進める。
【００８０】
制御部６は、ｕ＜（ξ−λ）である場合（Ｓｔｅｐ８６：Ｙｅｓ）、ステップ８３に処理を進める。また制御部６は、ｕ≧（ξ−λ）である場合（Ｓｔｅｐ８６：Ｎｏ）、（Ｎａ＋Ｎｂ）/２を算出する。なおＮａ＋Ｎｂは、奇数（２ν＋１  νは整数）である。
【００８１】
制御部６は、Ｉ＜（Ｎａ＋Ｎｂ）/２の場合（Ｓｔｅｐ８７：Ｙｅｓ）、特徴点Ｐが楕円１５の外側に多いので円を描くジェスチャが行われたと判定し、判定結果に基づいて円を描くジェスチャに応じたジェスチャ情報Ｓ３を生成して接続された電子機器に出力してジェスチャの判定動作を終了する（Ｓｔｅｐ１０）。
【００８２】
また制御部６は、Ｉ≧（Ｎａ＋Ｎｂ）/２の場合（Ｓｔｅｐ８７：Ｎｏ）、特徴点Ｐが楕円１５の内側に多いので払うジェスチャが行われたと判定し、判定結果に基づいて払うジェスチャに応じたジェスチャ情報Ｓ３を生成して接続された電子機器に出力してジェスチャの判定動作を終了する（Ｓｔｅｐ１０）。
【００８３】
（実施の形態の効果）
本実施の形態に係るジェスチャ判定装置１は、ジェスチャの認識精度を向上させることができる。具体的には、ジェスチャ判定装置１は、円を描くジェスチャの軌跡１０が歪んで一方の軸成分の正負方向のみが検出されるような判定が困難な場合であっても軌跡１０に近い楕円１５を設定し、軌跡１０を構成する特徴点Ｐが楕円１５の外側に多ければ円を描くジェスチャであると判定するため、手を払うジェスチャであるとされる誤判定が抑制されるので、この構成を採用しない場合と比べて、ジェスチャの認識精度が向上する。
【００８４】
ジェスチャ判定装置１は、軌跡１０を構成する全ての特徴点Ｐと楕円１５とを比較するのではなく、フレームのｍｉｎ〜ｍａｘの間の特徴点Ｐから奇数個選択された特徴点Ｐと楕円１５とを比較するので、この構成を採用しない場合と比べて、記憶されたフレーム間では、円を描くジェスチャが途中までであっても精度良くジェスチャを判定することができる。
【００８５】
他の実施の形態としてジェスチャ判定装置１は、撮像された画像３５に基づいて手の特徴点Ｐを算出し、算出された特徴点Ｐの移動方向を第１の軸成分及び第２の軸成分に分離して特徴点Ｐごとにいずれの軸成分が大きいか判定し、大きい方の軸成分が一方の軸成分の正負方向のみであった場合、複数の特徴点Ｐから得られる軌跡１０に基づいて軌跡１０の形状に近い仮想的な楕円１５を設定し、軌跡１０を構成する特徴点Ｐのうち、楕円１５の外側に位置する特徴点Ｐが内側に位置する特徴点Ｐよりも多い場合、なされたジェスチャが円を描くジェスチャであると判定する、ジェスチャ判定方法を実行するように構成される。
【００８６】
上述の実施の形態に係るジェスチャ判定装置１は、例えば、用途に応じて、その一部が、コンピュータが実行するプログラム、ＡＳＩＣ（Application Specific Integrated Circuit）及びＦＰＧＡ（Field Programmable Gate Array）などによって実現されても良い。
【００８７】
以上、本発明のいくつかの実施の形態を説明したが、これらの実施の形態は、一例に過ぎず、特許請求の範囲に係る発明を限定するものではない。これら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、本発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更などを行うことができる。また、これら実施の形態の中で説明した特徴の組合せの全てが発明の課題を解決するための手段に必須であるとは限らない。さらに、これら実施の形態は、発明の範囲及び要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８８】
１…ジェスチャ判定装置、３…撮像部、４…特徴点算出部、５…記憶部、６…制御部、８…車両、１０…軌跡、１５…楕円、３０…撮像領域、３５…画像、３６…手画像、３７…二値化画像、８０…センターコンソール、８５…表示装置、１５０…中心
【図１】
2018077744.tif 000003
【図２】
2018077744.tif 000004
【図３】
2018077744.tif 000005
【図４】
2018077744.tif 000006
【図５】
2018077744.tif 000007
【図６】
2018077744.tif 000008
【図７】
2018077744.tif 000009
【図８】
2018077744.tif 000010