特許第6812076号(P6812076)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社エクスビジョンの特許一覧

特許6812076ジェスチャ認識装置およびジェスチャ認識プログラム
<>
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000002
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000003
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000004
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000005
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000006
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000007
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000008
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000009
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000010
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000011
  • 特許6812076-ジェスチャ認識装置およびジェスチャ認識プログラム 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6812076
(24)【登録日】2020年12月18日
(45)【発行日】2021年1月13日
(54)【発明の名称】ジェスチャ認識装置およびジェスチャ認識プログラム
(51)【国際特許分類】
   G06T 7/20 20170101AFI20201228BHJP
   G06F 3/0346 20130101ALI20201228BHJP
   G06F 3/01 20060101ALI20201228BHJP
【FI】
   G06T7/20 300A
   G06F3/0346 422
   G06F3/01 570
【請求項の数】13
【全頁数】14
(21)【出願番号】特願2017-16471(P2017-16471)
(22)【出願日】2017年2月1日
(65)【公開番号】特開2018-124801(P2018-124801A)
(43)【公開日】2018年8月9日
【審査請求日】2020年1月31日
(73)【特許権者】
【識別番号】511292161
【氏名又は名称】株式会社エクスビジョン
(74)【代理人】
【識別番号】100101982
【弁理士】
【氏名又は名称】久米川 正光
(72)【発明者】
【氏名】小室 孝
(72)【発明者】
【氏名】手島 友昭
(72)【発明者】
【氏名】ゼログ アレクシィ
(72)【発明者】
【氏名】ムハンマド サクティ アルヴィッサリム
【審査官】 堀井 啓明
(56)【参考文献】
【文献】 特開2012−178036(JP,A)
【文献】 特開2010−244194(JP,A)
【文献】 特開2013−164834(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T7/20
G06F3/01
G06F3/0346
(57)【特許請求の範囲】
【請求項1】
操作者のジェスチャを認識するジェスチャ認識装置において、
センサによって時系列的に取得されたフレーム単位のセンサ画像について、オプティカルフローをフレーム毎に算出するオプティカルフロー算出部と、
前記オプティカルフロー中の動きベクトルの角度を階級毎に分類し、当該角度の度数の分布を示すヒストグラムをフレーム毎に生成するヒストグラム生成部と、
時系列的に連続した複数フレームのヒストグラムを時間軸方向に並べることによって、角度軸と時間軸とを含む空間として規定される特徴量画像を生成する特徴量画像生成部と、
前記特徴量画像に基づいて、操作者のジェスチャを識別するジェスチャ識別部と
を有することを特徴とするジェスチャ認識装置。
【請求項2】
前記特徴量画像生成部は、時間の経過に伴い、時系列的に最も新しいヒストグラムを追加し、時系列的に最も古いヒストグラムを破棄し、かつ、それ以外のヒストグラムを時間軸方向にシフトさせた特徴量画像を生成することを特徴とする請求項1に記載されたジェスチャ認識装置。
【請求項3】
前記ジェスチャ識別部への入力に先立ち、同一のジェスチャに関する時間軸方向の長さが一致するように、前記特徴量画像を時間軸方向に伸縮するスケーリング処理部をさらに有することを特徴とする請求項1または2に記載されたジェスチャ認識装置。
【請求項4】
前記特徴量画像において、操作者のジェスチャに由来する特徴量の領域と、操作者のジェスチャに由来しない特徴量の領域とを規定したマスク画像がジェスチャ毎に予め用意されており、
前記特徴量生成部によって生成された前記特徴量画像、または、前記スケーリング処理部によって正規化された前記特徴量画像に対して、前記マスク画像のそれぞれを適用して、前記特徴量画像より、操作者のジェスチャに由来しない特徴量を除去するマスク処理部をさらに有することを特徴とする請求項1から3のいずれかに記載されたジェスチャ認識装置。
【請求項5】
前記マスク画像は、複数の特徴量画像のサンプルを用いた主成分分析により、操作者のジェスチャに由来する特徴量を抽出し、当該特徴量を重み付けすることによって生成されることを特徴とする請求項4に記載されたジェスチャ認識装置。
【請求項6】
前記ジェスチャ識別部は、
前記マスク処理部によってマスク画像が適用された特徴量画像のそれぞれが個別に入力され、個別に割り当てられたジェスチャであるか否かを識別する複数の識別器を有することを特徴とする請求項4に記載されたジェスチャ認識装置。
【請求項7】
前記識別器のそれぞれは、前記特徴量画像と、前記ジェスチャとが対応付けられた教師データを用いた学習によって、自己が有する関数の内部パラメータが調整されていることを特徴とする請求項6に記載されたジェスチャ認識装置。
【請求項8】
操作者のジェスチャを認識するジェスチャ認識プログラムにおいて、
センサによって時系列的に取得されたフレーム単位のセンサ画像について、オプティカルフローをフレーム毎に算出する第1のステップと、
前記オプティカルフロー中の動きベクトルの角度を階級毎に分類し、当該角度の度数の分布を示すヒストグラムをフレーム毎に生成する第2のステップと、
時系列的に連続した複数フレームのヒストグラムを時間軸方向に並べることによって、角度軸と時間軸とを含む空間として規定される特徴量画像を生成する第3のステップと、
前記特徴量画像に基づいて、操作者のジェスチャを識別する第4のステップと
を有する処理をコンピュータに実行させることを特徴とするジェスチャ認識プログラム。
【請求項9】
前記第3のステップは、時間の経過に伴い、時系列的に最も新しいヒストグラムを追加し、時系列的に最も古いヒストグラムを破棄し、かつ、それ以外のヒストグラムを時間軸方向にシフトさせた特徴量画像を生成するステップであることを特徴とする請求項8に記載されたジェスチャ認識プログラム。
【請求項10】
前記第4のステップに先立ち、同一のジェスチャに関する時間軸方向の長さが一致するように、前記特徴量画像を時間軸方向に伸縮する第5のステップをさらに有することを特徴とする請求項8または9に記載されたジェスチャ認識プログラム。
【請求項11】
前記第3のステップによって生成された前記特徴量画像、または、前記第5のステップによって正規化された前記特徴量画像に対して、ジェスチャ毎に予め用意されたマスク画像のそれぞれを適用して、前記特徴量画像より、操作者のジェスチャに由来しない特徴量を除去する第6のステップをさらに有し、
前記マスク画像は、前記特徴量画像において、操作者のジェスチャに由来する特徴量の領域と、操作者のジェスチャに由来しない特徴量の領域とを規定することを特徴とする請求項8から10のいずれかに記載されたジェスチャ認識プログラム。
【請求項12】
前記マスク画像は、複数の特徴量画像のサンプルを用いた主成分分析により、操作者のジェスチャに由来する特徴量を抽出し、当該特徴量を重み付けすることによって生成されることを特徴とする請求項11に記載されたジェスチャ認識プログラム。
【請求項13】
前記第4のステップは、
前記マスク画像が適用された特徴量画像のそれぞれが個別に入力され、個別に割り当てられたジェスチャであるか否かを並行的に識別するステップであることを特徴とする請求項10に記載されたジェスチャ認識プログラム。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、操作者のジェスチャを認識するジェスチャ認識装置およびジェスチャ認識プログラムに関する。
【背景技術】
【0002】
従来より、カメラ等のセンサによって取得された時系列的なセンサ画像を用いて、操作者のジェスチャを認識するための様々な手法が提案されている。例えば、特許文献1には、複数の時間フレームの画像から得られたオプティカルフローを用いて、動物体の行動を認識する動物体行動認識装置が開示されている。この認識装置において、動物体の行動における各動作は、画像から抽出されたオプティカルフローの方向が特徴ベクトルで表現される。すなわち、θijをメッシュ(i,j)のフローベクトルの平均の方向(x軸とのなす角)とすると、これを並べたもの(θ00,θ01,・・・,θij,・・・,θMN)が特徴ベクトルfθとなる。行動の時系列モデルは、各認識カテゴリに対応する確率的状態遷移モデルとして、学習データによるトレーニングによって獲得される。これらの時系列モデルについて、特徴ベクトルfθ等を用いて、認識対象行動を生成する確率が個別に計算され、最大の尤度をもつものが認識結果として選択される。
【0003】
また、特許文献2には、動作解析対象の運動を解析する動作解析方法が開示されている。この解析方法では、まず、動作解析対象の運動を撮像した動画像データから、方向別ヒストグラムに基づいて、第一段階の特徴データが算出される。この方向別ヒストグラムは、動画像データから抽出された動きベクトル(局所的な動き情報)を方向別にヒストグラム化したものである。つぎに、近隣の時刻間における動きベクトルの複数方向別ヒストグラムの絶対値差分和を評価値として用いて、第一段階の特徴データの時系列変化から動画像データが分割される。つぎに、第一段階の特徴データから分割区間毎に第二段階の時系列特徴データが算出され、分割区間列データが獲得される。そして、分割区間列データの類似度を閾値により評価することで、隣接する分割区間を要素動作に統合して分類した要素動作列データが獲得される。それと共に、現要素動作とその二つ前の要素動作での、積算され正規化された動きベクトル方向ヒストグラムの類似度が閾値処理によって判定される。要素動作の連続回数が閾値以上となった場合には、一動作として検出され、要素動作列を一動作に統合して分類した一動作列データが獲得される。最後に、一動作列データに基づき一動作が解析される。
【0004】
さらに、特許文献3には、人物を撮影した映像から、人物の動作を検出する人物動作検出装置が開示されている。この検出装置では、まず、映像のフレーム画像ごとに特徴点が検出され、フレーム画像毎に特徴点の特徴量のマッチングを行うことで、特徴点の位置を時間方向に追跡した軌跡が特徴点軌跡情報として生成される。つぎに、 特徴点軌跡情報に含まれる特徴点の位置に基づいて、時間特徴量が生成される。この時間特徴量は、特徴点のフレーム画像毎の移動ベクトルの向きおよび大きさを、向きおよび大きさの取り得る範囲を予め定めた数に分割した範囲幅ごとに累計したものである。それと共に、特徴点の軌跡の特徴量が軌跡特徴量として生成される。つぎに、学習データを参照して、所定時間区間毎に、所定時間区間内に軌跡の終点が存在する複数の軌跡特徴量から、軌跡特徴量が属するクラスタを累計した分布が生成される。この学習データは、複数の軌跡特徴量を予め定めた数のクラスタにクラスタリングしておき、既知の動作を構成する複数の軌跡特徴量をクラスタ毎に累計した分布を、既知の動作ごとに対応付けたものである。最後に、識別対象となる分布が動作毎のクラスタの分布と類似するか否かにより、人物の動作が識別される。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平5−046583号公報
【特許文献2】特開2009−205282号公報
【特許文献3】特開2012−088881号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述した特許文献1に係る手法では、1フレームの画像をN×M個のブロックに分割し、個々のブロックにおけるフロー方向の平均を全ブロックについて並べたものが特徴量として用いられており、画像全体におけるフロー方向のヒストグラムを生成するものではない。また、動物体の行動認識は1フレームで完結し、時系列の情報は状態遷移という形で取り扱われているため、まとまったフレーム数の情報からジェスチャの種類を認識するものではない。さらに、動物体(人物)が常に同じ位置にいることが前提になっており、位置の変化に対応していない。
【0007】
また、特許文献2に係る手法では、画像全体でフロー方向のヒストグラムを生成しているものの、フロー方向のヒストグラムの時系列変化から動作の分割点を検出し、動画像データを分割した上で、分割したデータを類似度に基づき統合・分類している。すなわち、この手法は、フロー方向のヒストグラムの時系列全体を識別に用いるのではなく、あるフレームにおけるフロー方向のヒストグラム(あるいは、それを分割区間で積算したもの)を用いて分割・統合・分類を行うものである。
【0008】
さらに、特許文献3に係る手法では、オプティカルフローではなく、特徴点の軌跡を用いて、人物動作の検出が行われる。すなわち、軌跡単位で時系列データが作成され、分類(割り当て)を行った上で、それらをすべての軌跡に関して統合(ヒストグラム化)したものに基づいて、全体の動作が識別される。特許文献3には、その記載事項として、オプティカルフローという用語が用いられているが、これは、特徴点の追跡にオプティカルフローの計算と同じ方法(Lucas-Kanade法、略して「LK法」)が使われているということであって、オプティカルフローそのものを使っているわけではない。また、この手法では、入力動画像から得られた軌跡に基づきヒストグラムを生成しているが、このヒストグラムは、フロー方向のヒストグラムではなく、クラスタのヒストグラムである。すなわち、事前に学習用の動画像から取得した軌跡をクラスタリング(分類)しておき、入力動画像から得られた軌跡を、それに近いクラスタに割り当ててヒストグラムを作成するという方式である。
【0009】
本発明の目的は、センサによって取得された時系列的なセンサ画像を用いて、操作者のジェスチャを認識する新規な手法を提供することである。
【課題を解決するための手段】
【0010】
かかる課題を解決すべく、第1の発明は、オプティカルフロー算出部と、ヒストグラム生成部と、特徴量画像生成部と、ジェスチャの識別部とを有し、操作者のジェスチャを認識するジェスチャ認識装置を提供する。オプティカルフロー算出部は、センサによって時系列的に取得されたフレーム単位のセンサ画像について、オプティカルフローをフレーム毎に算出する。ヒストグラム生成部は、オプティカルフロー中の動きベクトルの角度を階級毎に分類し、この角度の度数の分布を示すヒストグラムをフレーム毎に生成する。特徴量画像生成部は、時系列的に連続した複数フレームのヒストグラムを時間軸方向に並べることによって、角度軸と時間軸とを含む空間として規定される特徴量画像を生成する。ジェスチャ識別部は、特徴量画像に基づいて、操作者のジェスチャを識別する。
【0011】
ここで、第1の発明において、上記特徴量画像生成部は、時間の経過に伴い、時系列的に最も新しいヒストグラムを追加し、時系列的に最も古いヒストグラムを破棄し、かつ、それ以外のヒストグラムを時間軸方向にシフトさせた特徴量画像を生成することが好ましい。
【0012】
第1の発明において、スケーリング処理部を設けてもよい。このスケーリング処理部は、ジェスチャ識別部への入力に先立ち、同一のジェスチャに関する時間軸方向の長さが一致するように、特徴量画像を時間軸方向に伸縮する。また、第1の発明において、マスク処理部をさらに設けてもよい。このマスク処理部は、特徴量画像生成部によって生成された特徴量画像、または、スケーリング処理部によって正規化された特徴量画像に対して、マスク画像のそれぞれを適用して、特徴量画像より、操作者のジェスチャに由来しない特徴量を除去する。マスク画像は、ジェスチャ毎に予め用意されており、それぞれが、特徴量画像において、操作者のジェスチャに由来する特徴量の領域と、操作者のジェスチャに由来しない特徴量の領域とを規定する。また、マスク画像は、複数の特徴量画像のサンプルを用いた主成分分析により、操作者のジェスチャに由来する特徴量を抽出し、当該特徴量を重み付けすることによって生成することが好ましい。
【0013】
第1の発明において、上記ジェスチャ識別部は、複数の識別器を有していてもよい。それぞれの識別器は、マスク画像の適用後の特徴量画像のそれぞれが個別に入力され、個別に割り当てられたジェスチャであるか否かを識別する。また、それぞれの識別器は、特徴量画像と、ジェスチャとが対応付けられた教師データを用いた学習によって、自己が有する関数の内部パラメータが調整されていることが好ましい。
【0014】
また、第2の発明は、操作者のジェスチャを認識するジェスチャ認識プログラムを提供する。このプログラムは、センサによって時系列的に取得されたフレーム単位のセンサ画像について、オプティカルフローをフレーム毎に算出する第1のステップと、オプティカルフロー中の動きベクトルの角度を階級毎に分類し、この角度の度数の分布を示すヒストグラムをフレーム毎に生成する第2のステップと、時系列的に連続した複数フレームのヒストグラムを時間軸方向に並べることによって、角度軸と時間軸とを含む空間として規定される特徴量画像を生成する第3のステップと、特徴量画像に基づいて、操作者のジェスチャを識別する第4のステップとを有する処理をコンピュータに実行させる。
【0015】
ここで、第2の発明において、上記第3のステップは、時間の経過に伴い、時系列的に最も新しいヒストグラムを追加し、時系列的に最も古いヒストグラムを破棄し、かつ、それ以外のヒストグラムを時間軸方向にシフトさせた特徴量画像を生成するステップであることが好ましい。
【0016】
第2の発明において、上記第4のステップに先立ち、第5のステップを実行してもよい。第5のステップでは、同一のジェスチャに関する時間軸方向の長さが一致するように、特徴量画像を時間軸方向に伸縮する。また、第2の発明において、第6のステップをさらに実行してもよい。第6のステップでは、上記第3のステップにおいて生成された特徴量画像、または、上記第5のステップにおいて正規化された特徴量画像に対して、ジェスチャ毎に予め用意されたマスク画像のそれぞれを適用して、特徴量画像より、操作者のジェスチャに由来しない特徴量を除去する。マスク画像は、特徴量画像において、操作者のジェスチャに由来する特徴量の領域と、操作者のジェスチャに由来しない特徴量の領域とを規定する。また、マスク画像は、複数の特徴量画像のサンプルを用いた主成分分析により、操作者のジェスチャに由来する特徴量を抽出し、当該特徴量を重み付けすることによって生成することが好ましい。
【0017】
第2の発明において、上記第4のステップは、マスク画像の適用後の特徴量画像のそれぞれが個別に入力され、個別に識別器に割り当てられたジェスチャであるか否かを並行的に識別するステップを含んでいてもよい。
【発明の効果】
【0018】
本発明によれば、操作者のジェスチャは、時系列的に連続した複数フレームのヒストグラムを並べた特徴量画像上において、ジェスチャの動きに依存し、かつ、その位置に関して不変(invariant)な特徴量の固有なパターンとなって現れる。よって、この特徴量画像から、ジェスチャの種類を適切に識別することができる。
【図面の簡単な説明】
【0019】
図1】ジェスチャ認識装置のブロック構成図
図2】ジェスチャ認識処理のフローチャート
図3】動きベクトルの角度に関するヒストグラムの説明図
図4】特徴量画像の説明図
図5】手の動きの角度の説明図
図6】「チェック(レ点)」のジェスチャ時における特徴量画像を示す図
図7】「手のひらを回す」のジェスチャ時における特徴量画像を示す図
図8】「進む」のジェスチャ時における特徴量画像を示す図
図9】スケーリング処理の説明図
図10】マスク画像の生成手順を示す図
図11】次回のサイクルにおける特徴量画像の説明図
【発明を実施するための形態】
【0020】
図1は、本実施形態に係るジェスチャ認識装置のブロック構成図である。このジェスチャ認識装置1は、操作者の手の動き、あるいは、操作者によって操作される操作子(例えば、手で動かされるポインタ)の動きを検出して、操作者のジェスチャとして認識する。本ジェスチャ認識の特徴は、手や操作子といった物体を直接認識することなく、オプティカルフローにおける動きベクトルの角度(方向)の度数分布をヒストグラムとして算出し、時系列的なヒストグラム群に基づいて、ジェスチャを認識する点にある。
【0021】
ジェスチャ認識装置1は、センサ2と、前段の処理系3〜4と、記憶部5と、後段の処理系6〜9とを有する。センサ2は、所定のフレーム間隔でセンサ画像を時系列的に取得する。本実施形態では、センサ2として、不要なコストアップを避ける観点から、入手が容易で安価な可視光の単眼カメラを用い、このカメラによって撮像された撮像画像をセンサ画像として用いる。しかしながら、センサ2は、単眼カメラに限らず、赤外線カメラなどであってもよいし、ステレオカメラやマルチカメラを構成するカメラの一つを用いてもよい。また、カメラに代えてレーザなどを用い、レーザの反射強度の二次元的な分布を示すレーザ画像などをセンサ画像として用いてもよい。
【0022】
前段の処理系は、オプティカルフロー算出部3と、ヒストグラム生成部4とを有する。ここでの処理としては、まず、オプティカルフロー算出部3において、センサ2によって取得されたセンサ画像について、オプティカルフローが算出される。そして、ヒストグラム生成部4において、このオプティカルフロー中における動きベクトルの角度の度数分布を示すヒストグラムが生成される。ヒストグラムの生成は、1フレームのセンサ画像全体に対して行われ、「フレーム毎」に繰り返される。ここで、「フレーム毎」とは、必ずしも1フレーム毎である必要はなく、フレームを間引いた所定のフレーム間隔も含む。
【0023】
記憶部5は、ヒストグラム生成部4によって生成されたヒストグラムを記憶・保持する。上述したように、ジェスチャの認識は、時系列的なヒストグラム群、すなわち、連続した複数フレーム分のヒストグラムを用いて行われる。記憶部5としては、例えば、FIFO(Fast-In-Fast-Out)メモリのような、所定数のヒストグラムを最新のものから順に管理・記憶するものを用いてもよい。この場合、特徴量画像生成部6は、記憶部5に記憶されたヒストグラム群を時系列的な順序を保ちながら一括で読み出せばよく、自己においてヒストグラム群を管理する必要はない。もちろん、ヒストグラム群の管理は、記憶部5ではなく、特徴量画像生成部6にて行うことも可能である。
【0024】
後段の処理系は、特徴量画像生成部6と、ジェスチャ識別部9とを主体に構成されており、ジェスチャの認識精度を高める等の観点から、スケーリング処理部7と、マスク処理部8とが付加されている。ここでの処理としては、まず、特徴量画像生成部6において、記憶部5から読み出されたヒストグラム群を用いて、後述する特徴量画像が生成される。そして、ジェスチャ識別部9において、特徴量画像に基づいて、操作者のジェスチャが識別される。識別すべきジェスチャの種類がn(n≧2)個の場合、ジェスチャ識別部9は、並列に設けられたn個の識別器91〜9nを備えている。スケーリング処理部7およびマスク処理部8は、ジェスチャ識別部9への入力に先立ち、特徴量画像生成部6によって生成された特徴量画像に対して、前処理(スケーリング処理およびマスク処理)を施す。なお、マスク処理部8において行われるマスク処理は、識別すべきジェスチャの種類毎に異なるマスク画像が用いられる関係上、並列に設けられたn個のマスク部81〜8nを備えている。
【0025】
ジェスチャ認識装置1は、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)などの集積回路によって、ハードウェアとして構成することができる。また、コンピュータに所定のコンピュータプログラムをインストールすることによって、ソフトウェア的に構成してもよい。後者の場合、前段の処理系3〜4および後段の処理系6〜9は、コンピュータプログラムの実行によって実現される機能的なブロックに相当する。
【0026】
つぎに、図2に示すフローチャートを参照しつつ、ジェスチャ認識装置1において実行される処理の詳細について説明する。同図に示した一連の手順は、カメラ2によって取得された1フレームのセンサ画像を処理対象として1サイクルで実行され、所定のフレーム間隔で繰り返される。
【0027】
まず、ステップ1において、今回のサイクルで処理対象となる1フレームのセンサ画像が入力される。センサ画像には、ジェスチャを行う操作者と、背景とが含まれている。
【0028】
つぎに、ステップ2において、オプティカルフロー算出部3は、ステップ1で入力されたセンサ画像のオプティカルフローを算出する。オプティカルフローの算出手法には様々なものが存在するが、本実施形態では、オプティカルフローの値を良好に推定可能な手法として周知なLK法(LucasKanade法)と、ブロックマッチング法とを用いる。LK法は、概略的には、最小二乗法でオプティカルフロー(移動物体の動きベクトル)を推定し、この推定解を山登り法を使って真値に近づけるものである。また、ブロックマッチング法とは、あるフレームの画像平面を二次元方向に分割して複数のブロックを定義した上で、それぞれのブロック(相関元)について、次フレームの画像平面を検索し、最も相関の高いブロック(相関先)を特定する手法である。なお、このステップ2において、操作者のジェスチャ部分(すなわち、動いている部分)だけを取得するために、フレーム間の差分の大きいところだけを使うようにしてもよい。
【0029】
ステップ3において、ヒストグラム生成部4は、今回のサイクルで生成されたオプティカルフローに基づいて、動きベクトルの角度(方向)に関するヒストグラムを生成する。図3は、このヒストグラムの説明図である。動きベクトルが取り得る角度θである0〜360度の範囲は、複数の角度階級に分割される。同図は、図が複雑化するのを避けるため、8つの角度階級θ1〜θ8(以下、単に「角度θ1〜θ8」と称する。)に分割した例を示しているが、実際には、より細かな角度階級に分割されている。そして、オプティカルフローに含まれる全ての動きベクトルについて、角度θ1〜θ8のいずれかに分類・投票していく。これにより、このオプティカルフローについて、動きベクトルの角度に関する度数(出現頻度)の分布がヒストグラムとして生成される。図示したヒストグラムでは、角度θ3が高度数領域(白色領域)、すなわち最頻値であり、角度θ2,θ4が中度数領域(薄いハッチング領域)、角度θ1,θ5が低度数領域(濃いハッチング領域)、角度θ6〜θ8が極低度数領域(度数0および黒色領域)である。背景に変化がない理想的な使用環境を想定した場合、高度数領域θ3は、操作者のジェスチャの動きに由来したものと捉えることができる。なお、演算量の低減を図るために、ヒストグラムの生成に際しては、動きベクトルが0の部分は演算対象から除外してもよい。また、度数としては、単純な度数ではなく、フロー強度に応じた重み付きの度数を用いてもよい。なお、本明細書において、「ヒストグラム」とは、数値列としてコンピュータで処理可能な度数分布を意味し、図3に示した棒グラフのように視覚化されていることを要しない。
【0030】
ステップ4において、今回のサイクルで生成されたヒストグラムが記憶部5に追加・記憶される。上述したように、記憶部5自体がヒストグラム群を時系列的に管理・記憶している場合、今回のサイクルにおける新たなヒストグラムが追加に伴い、記憶部5に記憶されているヒストグラム群のうち、最も古いものが破棄される。
【0031】
ステップ5において、特徴量画像生成部6は、記憶部5から所定のフレーム数のヒストグラム群を読み出し、これらに基づいて特徴量画像を生成する。この特徴量画像は、時系列的に連続した複数フレームのヒストグラムを時間軸方向に並べることによって、角度軸と時間軸とを含む空間として規定される。本明細書において、「特徴量画像」という表現は、画像として表されるもの全体が特徴量であるという意味で用いている。一般に、機械学習などの分野では、単一の数量だけでなく、数量の集まりも「量」と呼ぶ。特徴量画像の生成に際しては、必要に応じて、輝度(度数)の正規化を行ってもよい。図4は、一例として、8フレーム分のヒストグラム群よりなる特徴量画像の説明図である。今回のサイクルをt0とすると、今回のサイクルt0で生成されたヒストグラムH(t0)と、これに先立つ7サイクル分のヒストグラムH(t-1)〜H(t-7)が時間軸方向に並べられる。これにより、特徴量画像は、角度軸と時間軸とを含む空間として規定されることになる。また、この特徴量画像は、角度方向に8個、時間方向に8個の合計64個の特徴量よりなり、それぞれの特徴量は、図3と同様の色づけで示すように、動きベクトルの角度に関する度数を示している。ここで、白色領域として示した高度数領域に着目すると、過去t-7から現在t0に至る時間の経過において、角度θ1から角度θ8に向かって一定の割合で変化していることが理解できる。これは、背景に変化がない理想的な使用環境を想定した場合、操作者が一定の割合で角度を変えるジェスチャを行っているものと捉えることができる。
【0032】
操作者のジェスチャは、特徴量画像と相関性を有しており、特徴量の固有なパターンとなって現れる。このパターンは、操作者のジェスチャの動きによって変化し、その位置に関して不変(invariant)である。このことから、特徴量画像のパターンに着目することで、ジェスチャの種類を識別することが可能となる。以下、操作者のジェスチャとして手の動きに着目した具体例について説明する。手の動きの角度については、図5のように定義するものとする。
【0033】
図6は、「チェック(レ点)」のジェスチャ時における特徴量画像を示す図である。このジェスチャは、斜め下方(315度(-45度))に直線状に動かす第1の動作と、斜め上方(45度)に直線状に動かす第2の動作とを含む。この場合、第1の動作を継続している期間(t-7)〜(t-4)、特徴量画像上において、白色領域(高度数領域)がθ=315(一定)の位置に現れる。また、第2の動作を継続している期間(t-4)〜(t0)、白色領域がθ=45(一定)の位置に現れる。このような特徴量のパターンは、「チェック(レ点)」のみに依存した固有性を有すると共に、センサ画像上における手の位置がどこであっても変わらない(位置不変性)。このことから、特徴量画像が図6のようなパターンである場合、操作者のジェスチャが「チェック(レ点)」であると識別できる。
【0034】
図7は、「手のひらを回す」のジェスチャ時における特徴量画像を示す図である。このジェスチャは、一定の速度で円状(0度〜360度)に動かす動作である。この場合、円状に動かす動作を継続している期間(t-7)〜(t0)、特徴量画像上において、θ=0からθ=360に向かって、一定の傾きを有する直線状の白色領域が現れる。このような特徴量のパターンは、「手のひらを回す」のみに依存した固有性と、位置不変性とを有する。このことから、特徴量画像が図7のようなパターンである場合、操作者のジェスチャが「手のひらを回す」であると識別できる。
【0035】
図8は、「進む」のジェスチャ時における特徴量画像を示す図である。このジェスチャは、右方向(0度/360度)に直線状に動かす第1の動作と、左方向(180度)に直線状に動かす第2の動作とを含む。この場合、第1の動作を継続している期間(t-7)〜(t-4)、特徴量画像上において、白色領域がθ=0,360の2箇所に現れる。また、第2の動作を継続している期間(t-4)〜(t0)、白色領域がθ=150の位置に現れる。このような特徴量のパターンは、「進む」のみに依存した固有性と、位置不変性とを有する。このことから、特徴量画像が図8のようなパターンである場合、操作者のジェスチャが「進む」であると識別できる。
【0036】
ステップ6において、スケーリング処理部7は、ステップ5で生成された特徴量画像に対してスケーリング処理を行う。スケーリング処理では、同一のジェスチャに関する時間軸方向の長さが一致するように、特徴量画像が時間軸方向に伸縮(延長/短縮)される。例えば、図9に示すように、3つのジェスチャはいずれも「チェック(レ点)」のジェスチャだが、左側の動作が最も遅いため時間軸方向が長い(フレーム数が多い)のに対して、右側の動作が最も遅いため時間軸方向が短くなっている(フレーム数が少ない)。そこで、これらの特徴量画像を伸縮して、時間軸方向の長さが揃うように処理される。このようなスケーリング処理を行う理由は、特徴量画像における時間軸方向の長さを揃えて、以後の処理を統一するためである。なお、スケーリング処理は、複数のスケール(倍率)に対してそれぞれ行ってもよい(マルチスケール)。
【0037】
ステップ7において、マスク処理部8は、ステップ6でスケーリング処理(正規化)が施された特徴量画像に対して、予め用意されたマスク画像を適用することによって、マスク処理を行う。マスク画像はジェスチャ毎に個別のものが用意されており、マスク処理部8を構成する各マスク部81〜8nには、自己に割り当てられたジェスチャ用のマスク画像が格納されている。マスク画像は、特徴量画像に対応したサイズを有すると共に、操作者のジェスチャに由来する特徴量の領域と、操作者のジェスチャに由来しない特徴量の領域とを規定している。特徴量画像にマスク画像を適用することで、特徴量画像において、操作者のジェスチャに由来しない特徴量が除去され、操作者のジェスチャに由来する特徴量のみが抽出される。このようなマスク処理を行う理由は、ジェスチャの誤認識を低減するためである。本実施形態に係るジェスチャ認識手法では、手や操作子といった物体の直接的な認識は行っていないため、1フレームのオプティカルフロー全体において、動きベクトルが操作者のジェスチャに由来したものか、背景として存在する物体の動き(例えば、風による観葉植物の動き)に由来したものかを容易には区別できない。そのため、背景が変化しない使用環境下では特段問題はないとしても、使用環境が限られてしまう可能性がある。そこで、本実施形態では、ジェスチャ由来の特徴量と、非ジェスチャ(背景)由来の特徴量との切り分けを、マスク画像によって定義された領域的な区分に基づいて行う。これにより、背景の変化が生じ得る使用環境下でも、背景の動きがジェスチャとして誤って認識されることを有効に抑制できる。なお、このマスク処理については、その前処理としてのスケーリング処理(正規化)を必須とするものではなく、ステップ5で生成された特徴量画像に対して直接行ってもよい。
【0038】
図10は、一例として、図6に示した「チェック(レ点)」のジェスチャに対応したマスク画像の生成手順を示す図である。まず、「チェック(レ点)」のジェスチャに関する実際の特徴量画像を多数サンプルとして用意する。つぎに、これらのサンプルについて、主成分分析(Principal Component Analysis;PCA)を行い、「チェック(レ点)」に由来する特徴量を抽出する。ここで、主成分分析とは、相関のある多数の変数から相関のない少数で全体のばらつきを最もよく表す主成分と呼ばれる変数を合成する多変量解析の一手法であり、データの特徴を抽出するのに役立つ手法として周知である。最後に、特徴量画像上において抽出された特徴量を二値化(重み付け)することによって、このジェスチャに由来する固有のマスク画像が生成される。なお、特徴量の重み付け手法としては、二値化に限らず、多値の重み付けを行ってもよい。
【0039】
ステップ8において、ジェスチャ識別部9は、ステップ7におけるマスク処理後の特徴量画像(換言すれば、角度軸と時間軸とを含む空間(二次元空間)上における度数の分布)に基づいて、操作者のジェスチャを識別する。上述したように、ジェスチャ識別部9は、複数の識別器91〜9nを有し、それぞれに対して、ジェスチャJ1〜Jnのいずれかが割り当てられている。それぞれの識別器91〜9nは、ジェスチャ固有のマスク処理が施された特徴量画像を入力とし、自己に割り当てられたジェスチャであると識別した場合には「1」、そうでない場合には「0」を出力する。
【0040】
ジェスチャ識別部9としては、例えば、一般的な顔認識等でも用いられており、高速処理が可能なAdaBoostと呼ばれるアルゴリズムを用いることができる。AdaBoostでは、まず、サンプル(特徴ベクトルと教師信号であるクラスの組)への重みが、最初は1/N(Nはサンプル数)で初期化される。つぎに、K個の弱識別器を生成するものとし、最初に1つめの弱識別器が生成される。弱識別器の生成方法としては、重み付きのサンプルを利用して、一般的な機械学習アルゴリズムを利用した学習が行われる。つぎに、弱識別器の誤り率が算出される。誤り率は、各サンプルを見たときに、サンプルのクラスと弱識別器の出力クラスが一致しないサンプルの重みを足し合わせたものとなる。つぎに、誤り率から弱識別器の信頼度が算出される。具体的には、誤り率が小さいほど、信頼度が大きくなるように設定される。そして、サンプルへの重みが更新される。サンプルへの重みは、弱識別器が正しく識別できたサンプルについては低く、弱識別器が間違って識別したサンプルについては高くなるように更新される。最後に、サンプルの重みの総和が1になるように正規化される。以上の一連の手順を2つめの弱識別器について同様に繰り返し、K個の弱識別器の生成が完了すると、本アルゴリズムが終了する。なお、最終的な識別は、全ての弱識別器を信頼度で重み付けした上で、多数決を取ることによって行われる。
【0041】
なお、ジェスチャ識別部9としては、AdaBoost以外に、ニューラルネットワーク、サポートベクターマシンといった機械学習(教師あり学習)を用いてもよい。
【0042】
以上の一連の手順を経て、今回のサイクルにおける処理が終了し、次回のサイクルにおける処理の開始を待つ。これ以降のサイクルにおいても同様の処理が繰り返される。その際、ステップ5で生成される特徴量画像は経時的に更新され、操作者のジェスチャに追従して変化する。図11は、サイクルt0の次のサイクルt1における特徴量画像の説明図である。図4に示したサイクルt0の特徴量画像と異なるのは、時系列的に最も新しいヒストグラムH(t1)が追加されていること、時系列的に最も古いヒストグラムH(t-7)が破棄されていること、および、それ以外のヒストグラムH(t0)〜H(t-6)を時間軸方向(過去)にシフトしていることである。このような特徴量画像の経時的な更新は、上述したFIFOメモリを用いることによって実現できるほか、リングバッファを用いることによって実現してもよい。また、記憶部5ではなく、特徴量画像生成部6において、特徴量画像を部分的に追加・破棄・シフトすることによって実現することも可能である。
【0043】
このように、本実施形態によれば、操作者のジェスチャは、時系列的に連続した複数フレームのヒストグラムを並べた特徴量画像上において、位置に関して不変(invariant)な特徴量のユニークなパターンとなって現れる。よって、ジェスチャ識別部9は、特徴量画像生成部5によって生成された特徴量画像に基づき、ジェスチャの種類を適切に識別することができる。
【0044】
また、本実施形態によれば、ジェスチャ識別部9への入力に先立ち、特徴量画像にスケーリング処理(正規化)を施すことによって、ジェスチャ認識を含む以後の処理を統一することができる。
【0045】
さらに、本実施形態によれば、スケーリング処理が施された特徴量画像に対して、ジェスチャ毎に用意されたマスク画像を用いたマスク処理を施すことによって、特徴量画像から操作者のジェスチャに由来しない特徴量を除去することができる。これにより、背景の変化が生じ得る使用環境下であっても、ジェスチャの誤認識を有効に低減することが可能になる。
【符号の説明】
【0046】
1 ジェスチャ認識装置
2 カメラ
3 オプティカルフロー算出部
4 ヒストグラム生成部
5 記憶部
6 特徴量画像生成部
7 スケーリング処理部
8 マスク処理部
9 識別器

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11