(57)【要約】【課題】  被写体の特定部位の往復運動を検出するジェスチャ検出方法、ジェスチャ検出プログラムおよびジェスチャ検出装置を提供する。【解決手段】  特定部位の座標の時系列データから、速度ベクトルの時系列データを速度ベクトル算出部１０５で算出し、その時系列の速度ベクトルから、そのベクトルの大きさが所定の大きさよりも大きい区間を動作区間検出部１０６で検出する。次に動作区間検出部１０６で検出された区間に含まれる速度ベクトルから代表速度ベクトル検出部１０７で代表速度ベクトルを算出し、記憶部１０８に時系列データとして記憶する。往復動作判定部１０９は記憶部１０８に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算し、その計算された交角が所定の閾値よりも大きい場合に往復動作が行われたと判定する。【選択図】  図１
2005352531.tif 000002
【特許請求の範囲】
【請求項１】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記速度ベクトル算出ステップで求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出ステップと、
前記区間検出ステップで検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算ステップと、
前記交角計算ステップによって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項２】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記速度ベクトル算出ステップで求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出ステップと、
前記区間検出ステップで検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の第１の交角を計算する第１の交角計算ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、一つおきに現れた２つ代表速度ベクトルから代表速度ベクトル間の第２の交角を計算する第２の交角計算ステップと、
前記第１の交角計算ステップによって計算された前記第１の交角が第１の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと、
前記往復動作判定ステップで往復動作が行われたと判定され、さらに前記第２の交角計算ステップで計算された第２の交角が第２の閾値よりも小さい場合、前記特定部位の往復動作が反復して行われたと判定する反復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項３】
前記代表速度ベクトルが、前記区間検出ステップで検出される区間に含まれる速度ベクトルのうち、そのベクトルの大きさが最大である速度ベクトルであることを特徴とする請求項１または請求項２に記載のジェスチャ検出方法。
【請求項４】
前記代表速度ベクトルが、前記区間検出ステップで検出される区間に含まれる速度ベクトルの平均ベクトルであることを特徴とする請求項１または請求項２に記載のジェスチャ検出方法。
【請求項５】
前記代表速度ベクトルが、前記区間検出ステップで検出される区間に含まれる速度ベクトルのうち、前記区間の中心時刻の速度ベクトルであることを特徴とする請求項１または請求項２に記載のジェスチャ検出方法。
【請求項６】
前記特定部位の座標の時系列データが、頭部の特定部位の座標の時系列データであることを特徴とする請求項１または請求項２に記載のジェスチャ検出方法。
【請求項７】
前記被写体を撮影した動画像データから前記特定部位の座標の時系列データを求めるステップをさらに有することを特徴とする請求項１または請求項２に記載のジェスチャ検出方法。
【請求項８】
前記速度ベクトルが角速度ベクトルであることを特徴とする請求項１または請求項２に記載のジェスチャ検出方法。
【請求項９】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記速度ベクトル算出ステップで求まる速度ベクトルの大きさが所定の大きさよりも大きく、かつ直前の時刻の速度ベクトルの大きさが前記所定の大きさよりも小さい時刻を検出する時刻検出ステップと、
前記時刻検出ステップで検出された時刻から一定の時間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算ステップと、
前記交角計算ステップによって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項１０】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記速度ベクトル算出ステップで求まる速度ベクトルの大きさが所定の大きさよりも大きく、かつ直前の時刻の速度ベクトルの大きさが前記所定の大きさよりも小さい時刻を検出する時刻検出ステップと、
前記時刻検出ステップで検出された時刻から一定の時間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の第１の交角を計算する第１の交角計算ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、一つおきに現れた２つ代表速度ベクトルから代表速度ベクトル間の第２の交角を計算する第２の交角計算ステップと、
前記第１の交角計算ステップによって計算された前記第１の交角が第１の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと、
前記往復動作判定ステップで往復動作が行われたと判定され、さらに前記第２の交角計算ステップで計算された第２の交角が第２の閾値よりも小さい場合、前記特定部位の往復動作が反復して行われたと判定する反復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項１１】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記速度ベクトル算出ステップで求まる速度ベクトルの大きさが所定の大きさよりも小さい区間を検出する静止区間算出ステップと、
前記静止区間算出ステップで算出された静止区間のうち、連続する２つの静止区間の間の区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算ステップと、
前記交角計算ステップによって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項１２】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記速度ベクトル算出ステップで求まる速度ベクトルの大きさが所定の大きさよりも小さい区間を検出する静止区間算出ステップと、
前記静止区間算出ステップで算出された静止区間のうち、連続する２つの静止区間の間の区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の第１の交角を計算する第１の交角計算ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、一つおきに現れた２つ代表速度ベクトルから代表速度ベクトル間の第２の交角を計算する第２の交角計算ステップと、
前記第１の交角計算ステップによって計算された前記第１の交角が第１の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと、
前記往復動作判定ステップで往復動作が行われたと判定され、さらに前記第２の交角計算ステップで計算された第２の交角が第２の閾値よりも小さい場合、前記特定部位の往復動作が反復して行われたと判定する反復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項１３】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記時系列の速度ベクトルのうち、そのベクトルの大きさが所定の大きさよりも大きく、かつ極大となる時刻の速度ベクトルを検出し、その検出した速度ベクトルを記憶手段に記憶する記憶ステップと、
前記記憶手段に記憶された速度ベクトルのうち、連続した２つの速度ベクトルから速度ベクトル間の交角を計算する交角計算ステップと、
前記交角計算ステップによって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと、
を有することを特徴とするジェスチャ検出方法。
【請求項１４】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記時系列の速度ベクトルのうち、そのベクトルの大きさが所定の大きさよりも大きく、かつ極大となる時刻の速度ベクトルを検出し、その検出した速度ベクトルを記憶手段に記憶する記憶ステップと、
前記記憶手段に記憶された速度ベクトルのうち、連続した２つの速度ベクトルから速度ベクトル間の第１の交角を計算する第１の交角計算ステップと、
前記記憶手段に記憶された速度ベクトルのうち、一つおきに現れた２つの速度ベクトルから速度ベクトル間の第２の交角を計算する第２の交角計算ステップと、
前記第１の交角計算ステップによって計算された前記第１の交角が第１の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと、
前記往復動作判定ステップで往復動作が行われたと判定され、さらに前記第２の交角計算ステップで計算された第２の交角が第２の閾値よりも小さい場合、前記特定部位の往復動作が反復して行われたと判定する反復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項１５】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記座標の時系列データから前記特定部位の単位時間当たりの変位の大きさが所定の大きさよりも大きい区間を検出する区間検出ステップと、
前記区間検出ステップで検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算ステップと、
前記交角計算ステップによって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項１６】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、
前記座標の時系列データから前記特定部位の単位時間当たりの変位の大きさが所定の大きさよりも大きい区間を検出する区間検出ステップと、
前記区間検出ステップで検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の第１の交角を計算する第１の交角計算ステップと、
前記記憶手段に記憶された代表速度ベクトルのうち、一つおきに現れた２つ代表速度ベクトルから代表速度ベクトル間の第２の交角を計算する第２の交角計算ステップと、
前記第１の交角計算ステップによって計算された前記第１の交角が第１の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップと、
前記往復動作判定ステップで往復動作が行われたと判定され、さらに前記第２の交角計算ステップで計算された第２の交角が第２の閾値よりも小さい場合、前記特定部位の往復動作が反復して行われたと判定する反復動作判定ステップと
を有することを特徴とするジェスチャ検出方法。
【請求項１７】
コンピュータに、被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出させるジェスチャ検出プログラムであって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出機能と、
前記速度ベクトル算出機能により求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出機能と、
前記区間検出機能によって検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶機能と、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算機能と、
前記交角計算機能によって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定機能と
を有することを特徴とするジェスチャ検出プログラム。
【請求項１８】
コンピュータに、被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出させるジェスチャ検出プログラムであって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出機能と、
前記速度ベクトル算出機能により求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出機能と、
前記区間検出機能によって検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶機能と、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の第１の交角を計算する第１の交角計算機能と、
前記記憶手段に記憶された代表速度ベクトルのうち、一つおきに現れた２つ代表速度ベクトルから代表速度ベクトル間の第２の交角を計算する第２の交角計算機能と、
前記第１の交角計算機能によって計算された前記第１の交角が第１の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定機能と、
前記往復動作判定機能によって往復動作が行われたと判定され、さらに前記第２の交角計算機能によって計算された第２の交角が第２の閾値よりも小さい場合、前記特定部位の往復動作が反復して行われたと判定する反復動作判定機能と
を有することを特徴とするジェスチャ検出プログラム。
【請求項１９】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出装置であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出手段と、
前記速度ベクトル算出手段で求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出手段と、
前記区間検出手段で検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶手段と、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算手段と、
前記交角計算手段で計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定手段と
を備えることを特徴とするジェスチャ検出装置。
【請求項２０】
被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出装置であって、
前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出手段と、
前記速度ベクトル算出手段で求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出手段と、
前記区間検出手段で検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶手段と、
前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の第１の交角を計算する第１の交角計算手段と、
前記記憶手段に記憶された代表速度ベクトルのうち、一つおきに現れた２つ代表速度ベクトルから代表速度ベクトル間の第２の交角を計算する第２の交角計算手段と、
前記第１の交角計算手段で計算された前記第１の交角が第１の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定手段と、
前記往復動作判定手段で往復動作が行われたと判定され、さらに前記第２の交角計算手段で計算された第２の交角が第２の閾値よりも小さい場合、前記特定部位の往復動作が反復して行われたと判定する反復動作判定手段と
を備えることを特徴とするジェスチャ検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジェスチャ検出方法、ジェスチャ検出プログラムおよびジェスチャ検出装置に関し、特に運動する被写体の特定部位の座標の時系列データを用いて、高精度かつ頑健かつ高速に被写体のジェスチャを検出するジェスチャ検出方法、ジェスチャ検出プログラムおよびジェスチャ検出装置に関する。
【背景技術】
【０００２】
人間などの被写体のジェスチャを自動認識することができれば、さまざまな分野で幅広い利用が可能である。例えば、家電機器ではリモコンによらない遠隔操作、コンソール端末ではユーザインターフェースの操作性向上、またキーボードやマウスの操作に不慣れなユーザへの入力支援、手話の認識、ゲーム機器の入力インターフェース、運転中のドライバーの機器操作支援などの分野に応用可能である。
【０００３】
ここで、従来のジェスチャ検出方法としては、あらかじめ検出しようとするジェスチャの標準パターンを作成して記憶しておき、この記憶された標準パターンと入力されたジェスチャとの間でパターンマッチングを行ってジェスチャを検出する方法があった（例えば、特許文献１参照。）。
【０００４】
また、従来の標準パターンを用いないジェスチャ検出方法としては、運動している人物を被写体として、その頭部の上下方向の移動量を検出し、その移動量を所定の閾値と比較して、移動量が閾値を超える場合には頷き動作が行われたと判定するジェスチャ検出方法があった（例えば、特許文献２参照。）。
【特許文献１】特開平６−１２４９３号公報（第１３頁、図１）
【特許文献２】特開２０００−１６３１９６号公報（第１０頁、図６）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の特許文献１に開示されたジェスチャ検出方法によれば、精度よくジェスチャを検出するためには、検出しようとするあらゆるジェスチャについて、例えばユーザごとに標準パターンのデータベースを作成しておかなければならないため、標準パターンの作成に多大な労力を要するという問題があった。
【０００６】
また、同じジェスチャであっても、その動きの速さが変われば、標準パターンと入力されたジェスチャの間で時間的な伸縮を考慮してパターンマッチングを行わなければならないため、マッチングに多大な計算量を必要とするという問題もあった。
【０００７】
また、撮影された動画像データから運動する特定部位の動きを算出し、これに基づいてジェスチャを検出する場合には、多大な労力を払って標準パターンを作成したとしても、動画像データに重畳する不測のノイズの影響によって標準パターンと入力されたジェスチャの間でミスマッチが生じ、ジェスチャの誤検出が生じるという問題もあった。
【０００８】
更に、特許文献２のジェスチャ検出方法によれば、例えば被写体である人物の頭部がＶ字型の軌跡を描くような頷き動作とは言えない運動を行った場合にも、頭部の上下動における移動量が所定値を超えれば頷き動作であるとして誤検出してしまうという問題があった。
【０００９】
本発明は、上記従来技術の問題点を解決するためになされたものであって、被写体の特定部位の所定の速度ベクトル間の相対的関係のみによってジェスチャの検出を行うことにより、高精度かつ頑健かつ高速なジェスチャ検出方法、ジェスチャ検出プログラムおよびジェスチャ検出装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明のジェスチャ検出方法は、被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出方法であって、前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出ステップと、前記時系列の速度ベクトルから、そのベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出ステップと、前記動作区間検出ステップに含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶ステップと、前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算ステップと、前記交角計算ステップによって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定ステップとを有することを特徴とする。
【００１１】
また本発明のジェスチャ検出プログラムは、コンピュータに、被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出させるジェスチャ検出プログラムであって、前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出機能と、前記速度ベクトル算出機能により求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出機能と、前記区間検出機能によって検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶機能と、前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算機能と、前記交角計算機能によって計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定機能とを有することを特徴とする。
【００１２】
また本発明のジェスチャ検出装置は、被写体の特定部位の座標の時系列データから、前記特定部位の動作を検出するジェスチャ検出装置であって、前記座標の時系列データから前記特定部位の速度ベクトルの時系列データを算出する速度ベクトル算出手段と、前記速度ベクトル算出手段で求まる速度ベクトルの大きさが所定の大きさよりも大きい区間を検出する区間検出手段と、前記区間検出手段で検出された区間に含まれる速度ベクトルから代表速度ベクトルを得、その得られた代表速度ベクトルを記憶手段に記憶する代表速度ベクトル記憶手段と、前記記憶手段に記憶された代表速度ベクトルのうち、連続した２つの代表速度ベクトルから代表速度ベクトル間の交角を計算する交角計算手段と、前記交角計算手段で計算された前記交角が所定の閾値よりも大きい場合、前記特定部位の往復動作が行われたと判定する往復動作判定手段とを備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、被写体の特定部位の座標の時系列データから速度ベクトルの時系列データを得て、所定の速度ベクトル間の相対的関係のみに基づいて、前記被写体の特定部位の往復動作を検出することにより、検出しようとするジェスチャの標準パターンを用いることなく、高精度かつ頑健かつ高速なジェスチャの検出が可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施形態について説明する。
【実施例１】
【００１５】
図１は、本発明の第１の実施形態に係わるジェスチャ検出方法を実現するためのジェスチャ検出システムの一例を示す構成図である。本実施形態に係わるジェスチャ検出システムは、被写体である人物の頭の縦振り（頷き）動作と、頭の横振り動作というジェスチャを検出するシステムである。
【００１６】
第１の実施形態に係わるジェスチャ検出システム１０１は、画像入力部１０２、顔特徴点検出部１０３、顔中心座標計算部１０４、速度ベクトル算出部１０５、動作区間検出部１０６、代表速度ベクトル算出部１０７、記憶部１０８、往復動作判定部１０９、反復動作判定部１１０、頷き横振り判定部１１１を備えている。これらの各構成要素の一部または全部は、ハードウェアによって構成しても良いし、ソフトウェアによって構成しても良い。
【００１７】
次に、第１の実施形態に係わるジェスチャ検出システム１０１の構成と動作について説明する。
【００１８】
画像入力部１０２は、システム外部からビデオカメラ等で撮影された人物（被写体）の画像を受信し、画像処理しやすいようにデジタル形式の電子データに変換して顔画像データを作成し、その時系列データを顔特徴点検出部１０３に送る。なお、以下では各時刻の顔画像データをフレームと呼ぶ。
【００１９】
顔特徴点検出部１０３は、画像入力部１０２から送られてくる時系列の顔画像データから、フレームごとに顔特徴点を検出する。ここで顔特徴点とは、目、鼻、口などユーザの顔の特徴となる部分をいう。顔画像データから顔特徴点を検出する方法としては、例えば特許第３２７９９１３号公報に掲載された方法を用いることができる。
【００２０】
なお、以下では顔特徴点として鼻孔を例に挙げて説明する。顔特徴点として鼻孔を検出した場合には、図２に示すように右の鼻孔の座標（ｘrf，ｙrf）と左の鼻孔の座標（ｘlf，ｙlf）がフレームごとに得られる。なお、ｆはフレーム番号を表すパラメータである。次に、顔特徴点検出部１０３で検出された顔特徴点である右の鼻孔の座標（ｘrf，ｙrf）と左の鼻孔の座標（ｘlf，ｙlf）は、顔中心座標計算部１０４に送られる。
【００２１】
顔中心座標計算部１０４は、顔特徴点検出部１０３から送られてくる右の鼻孔の座標と左の鼻孔の座標から、顔の中心点の座標（以下、顔中心座標と呼ぶ）を計算する。ここでは顔中心点とは、右の鼻孔と左の鼻孔の中心点をいい、顔中心座標（ｘf，ｙf）はフレームごとに（１）式により求まる。
【００２２】
【数１】
2005352531.tif 000003
【００２３】
顔中心座標計算部１０４で計算された顔中心座標（ｘf，ｙf）は、次に速度ベクトル算出部１０５に送られる。
【００２４】
速度ベクトル算出部１０５は、顔中心座標計算部１０４から送られてくる顔中心座標（ｘf，ｙf）から、フレームごとに顔中心点の動きの速度ベクトルを計算する。顔中心点の動きの速度ベクトルＶf＝（ｖxf，ｖyf）は、フレーム間の顔中心座標の変位として、（２）式により求まる。
【００２５】
【数２】
2005352531.tif 000004
【００２６】
ここでΔｔは、画像入力部１０２に入力される画像の第ｆフレームが撮影された時間と第ｆ＋１フレームが撮影された時間の時間間隔を表す。
【００２７】
また、フレームごとに画像に表れる顔の大きさが変化する場合には、（２）式の代わりに、第ｆ＋１フレームの画像における両目の間隔ｗf+1を求めて、（３）式のように正規化した速度ベクトルを顔中心座標の速度ベクトル（ｖxf，ｖyf）としてもよい。
【００２８】
【数３】
2005352531.tif 000005
【００２９】
なお、（２）式では連続する２つのフレーム間の顔中心座標の変位を速度ベクトルとして求めたが、（４）式に示すように、適当なフレーム間隔で顔中心座標の変位を求め、これを顔中心座標の速度ベクトル（ｖxf，ｖyf）としてもよい。
【００３０】
【数４】
2005352531.tif 000006
【００３１】
ここでΔｔ´は、画像入力部１０２に入力される画像の第ｆフレームが撮影された時間と第ｆ＋ｉフレームが撮影された時間の時間間隔を表す。
【００３２】
さらに（２）式乃至（４）式で顔中心座標の速度ベクトルを求めた後、（５）式に示すように顔中心座標の速度ベクトルの平滑化処理を行って、（ｖxf´，ｖyf´）を顔中心座標の速度ベクトルとしてもよい。
【００３３】
【数５】
2005352531.tif 000007
【００３４】
このように平滑化処理を行えば、顔画像データにノイズが重畳することにより顔特徴点検出部１０３において顔特徴点の検出を誤った場合であっても、その誤りが顔中心点の動きの速度ベクトルに与える影響を低減することが可能になる。
【００３５】
上記（２）式乃至（５）式のいずれかの方法により、速度ベクトル算出部１０５で計算された顔中心点の動きの速度ベクトルＶf＝（ｖxf，ｖyf）は、動作区間検出部１０６に送られる。
【００３６】
動作区間検出部１０６は、速度ベクトル算出部１０５から送られてくる顔中心点の動きの速度ベクトルを用いて、顔中心点が動作を行っている時間区間（動作区間）を検出する。ここで動作区間とは、その区間に含まれる速度ベクトルの大きさが、すべて所定の閾値よりも大きい時間区間をいう。すなわち、速度ベクトルの時系列データを｛Ｖ1，Ｖ2，・・・，Ｖf，・・・｝と表した場合に、（６）式に示される条件を満たすフレームによって構成される連続した区間をいう。
【００３７】
【数６】
2005352531.tif 000008
【００３８】
ここで、ＴＨVは、あらかじめ定めた速度ベクトルの大きさの閾値である。また、‖Ｖf‖は、第ｆフレームにおける速度ベクトルＶf＝（ｖxf，ｖyf）の大きさを表し、（７）式によって計算される。
【００３９】
【数７】
2005352531.tif 000009
【００４０】
なお、ここでは速度ベクトルＶf＝（ｖxf，ｖyf）の大きさを（７）式によって求めたが、速度ベクトルの特定の成分の大きさを、そのまま速度ベクトルの大きさとして用いることも可能である。例えば、顔中心点が図２においてｙ軸方向に往復運動している場合には、｜ｖxf｜≪｜ｖyf｜となるため、速度ベクトルＶfのｙ成分の大きさｖyfを速度ベクトルＶfの大きさとして用いて、（６）式によって動作区間を検出することも可能である。
【００４１】
このようにして動作区間検出部１０６で検出された動作区間は、代表速度ベクトル算出部１０７に送られる。
【００４２】
代表速度ベクトル算出部１０７は、動作区間検出部１０６で検出された各動作区間について、その動作区間に含まれる速度ベクトルから代表速度ベクトルを算出する。ここでは代表速度ベクトルは、動作区間に含まれる速度ベクトルのうち、そのベクトルの大きさがそれぞれの動作区間の中で最大となる速度ベクトルであるとする。この場合、動作区間検出部１０６で検出された動作区間の一つを第fsフレームから第feフレームの区間とし、その区間に含まれる速度ベクトルの時系列データを｛Ｖfs，Ｖfs+1，・・・，Ｖfe｝、代表速度ベクトルをＶRとすると、代表速度ベクトルＶRは（８）式を満たす速度ベクトルとなる。
【００４３】
【数８】
2005352531.tif 000010
【００４４】
このようにして、代表速度ベクトル算出部１０７は、動作区間検出部１０６で動作区間が検出されるたびに代表速度ベクトルＶRを算出する。そして、代表速度ベクトル算出部１０７で算出された代表速度ベクトルＶRは、時系列データとして、出現順に記憶部１０８に記憶される。
【００４５】
往復動作判定部１０９は、記憶部１０８に記憶された代表速度ベクトルを順次読み出して、その読み出した代表速度ベクトルから顔中心点が往復運動を行っているか否かを判定する。
【００４６】
以下、往復動作判定部１０９において、代表速度ベクトルから顔中心点の往復運動の有無を判定する方法について説明する。ここでは、頭の縦振り（頷き）動作を例にして説明する。
【００４７】
頷き動作は、頭を下方に振る動作と、これに連続して行われる頭を上方に戻す動作とによって構成される。すなわち、顔中心点に着目すると、頷き動作は図３に示すように顔中心点の上下方向の往復運動として把握することができる。
【００４８】
ここで上下方向の往復運動では、下方向への運動中における任意の時刻の顔中心点の速度ベクトルの向きと、上方向への運動中における任意の時刻の顔中心点の動きの速度ベクトルの向きは、図４に示すようにほぼ逆方向となる。したがって、両者の速度ベクトルが形成する相対的な角度（交角）θSを求めると、その交角θSは１８０度に近くなる。
【００４９】
次に、往復運動における顔中心点の動きの速度ベクトルの大きさの変化について説明する。図５は、この速度ベクトルの大きさの時間変化を示す図である。往復運動開始前は、顔中心点は静止の状態であり、速度ベクトルの大きさは「０」である。そして、顔中心点が下方へ運動を開始すると速度ベクトルの大きさが増し、速度ベクトルの大きさが極大となる時刻Ｔ１を経て、折り返し点に達する。折り返し点では、顔中心点の運動が下方へ向かう運動から上方へ向かう運動へと移行するため、速度ベクトルの大きさは一時「０」となる。その後、顔中心点が上方へ運動を開始すると再び速度ベクトルの大きさが増し、速度ベクトルの大きさが極大となる時刻Ｔ２を経て、もとの位置まで戻り静止する。
【００５０】
ここで、（６）式の閾値ＴＨVを適切な値に定めれば、図５に示すように、動作区間検出部１０６は、１度の頷き動作の中で２回の動作区間を検出することになる。また、上述したように、代表速度ベクトル算出部１０７で算出される代表速度ベクトルを、動作区間検出部１０６で検出される動作区間に含まれる速度ベクトルのうち、その大きさが最大の速度ベクトルであるとすると、図５において時刻Ｔ１および時刻Ｔ２の速度ベクトルが代表速度ベクトルとして選択されることになる。したがって、これらの時刻における速度ベクトルが代表速度ベクトルとして、連続して記憶部１０８に記憶される。
【００５１】
また、このようにして記憶部１０８に記憶された時刻Ｔ１，Ｔ２における速度ベクトルの向きは、時刻Ｔ１においては下向き、時刻Ｔ２において上向きであるから、両者の速度ベクトルが形成する交角θSを計算すると１８０度に近くなる。
【００５２】
そこで、記憶部１０８に記憶された連続する２つの代表速度ベクトル間の交角θSを計算し、その交角θSが１８０度に近い場合には、顔中心点が往復運動を行ったと判断、すなわち頷き動作が行われたと判定することができる。具体的には、代表速度ベクトル間の交角θSを、所定の閾値ΘSと比較し、θS≧ΘSである場合には頷き動作が行われたと判定すればよい。ここで閾値ΘSは、頷き動作として許容する代表速度ベクトル間の交角の値であり、被写体である人物の頷き動作を誤りなく検出するためには、この値を１４５度以上に設定することが望ましい。
【００５３】
なお、代表速度ベクトル間の交角の代わりに、交角の余弦（ｃｏｓθS）を求めて、これを閾値ＴＨΘSと比較しても良い。交角の余弦（ｃｏｓθS）は、時刻Ｔ１およびＴ２の速度ベクトルをそれぞれＶT1、ＶT2とすると、（９）式によって求めることができる。
【００５４】
【数９】
2005352531.tif 000011
【００５５】
ここで、ＶT1・ＶT2は、ＶT1とＶT2の内積を表す。
【００５６】
この場合、交角の余弦に対する閾値ＴＨΘSに対して、ｃｏｓθS≦ＴＨΘSの場合に、頷き動作が行われたと判定すればよい。
【００５７】
一方、顔中心点が図６に示すような往復運動とは言えないＶ字型の軌跡をたどる動きを行った場合には、記憶部１０８に連続して記憶された代表速度ベクトル間の交角θS´は、図７に示すように１８０度を大きく下回ることになる。したがって、所定の閾値ΘSとの比較結果がθS´＜ΘSとなり、頷き動作ではないと判定することができる。
【００５８】
また、人物の頷き動作では、顔中心点が図３に示すように正確に上下方向の往復運動を行うのではなく、例えば図８に示すように、わずかに左や右に傾いた往復運動を行う場合もある。しかし、このような頷き動作であったとしても、往復運動であれば、図９に示すように、下方向への運動中における任意の時刻の速度ベクトルと、上方向への運動中における対応する任意の時刻の速度ベクトルが形成する相対的な交角θSは、ほぼ１８０度となる。そのため、上述した方法を用いれば、図８のような傾きのある往復運動であっても、正確に頷き動作と判定することができる。
【００５９】
なお、上述した方法では、代表速度ベクトル間の相対的な交角θSを閾値ΘSと比較することによって頷き動作の有無を判定しているため、ジェスチャ検出のために標準パターンとのマッチングを必要としない。そのため、標準パターンをあらかじめ用意する必要がなく、また標準パターンとのミスマッチによるジェスチャの誤検出という問題も生じることがないことから、高精度なジェスチャの検出が可能となる。さらに、標準パターン作成のための労力も削減することが可能であり、マッチングに必要となる計算量も削減することができる。
【００６０】
なお、ここでは頷き動作を例にして往復動作判定部１０９の動作を説明したが、頭の横振り動作についても同様の方法によって検出することが可能である。すなわち、頭の横振り動作では、顔中心座標の運動は図１０に示すように、横方向の往復運動となる。そのため、左方向への運動中と右方向への運動中に、動作区間検出部１０６において動作区間が検出される。そして代表速度ベクトル算出部１０７において、各動作区間から代表速度ベクトルが算出され、連続して記憶部１０８に記憶される。また、これらの代表速度ベクトルの向きは、それぞれ左方向と右方向となり、両者の相対的な交角は１８０度に近くなる。したがって、上述したように記憶部１０８に記憶された代表速度ベクトルのうち、連続して記録された代表速度ベクトル間の交角を計算して、これを所定の閾値と比較することにより往復運動の有無を判定すれば、頭の横振り動作の検出を行うことが可能となる。
【００６１】
反復動作判定部１１０では、記憶部１０８に記憶された代表速度ベクトルを順次読み出し、その代表速度ベクトルから顔中心点が往復運動を反復して行っているか否かを判定する。
【００６２】
以下、代表速度ベクトルから顔中心点が往復運動を反復して行っているか否かを判定する方法について説明する。ここでは、被写体である人物が頷き動作を繰り返して行っている場合を例にして説明する。
【００６３】
上述したように、被写体の１回の頷き動作は、図３に示すように顔中心点の上下方向の往復運動として把握することができる。したがって、被写体が頷き動作を繰り返した場合には、顔中心点の運動は、図１１に示すような上下方向の往復運動の繰り返しとして把握することができる。
【００６４】
このような上下方向の往復運動が繰り返して行われる場合には、速度ベクトルの大きさの時間変化は図１２のようになる。したがって、動作区間検出部１０６によって検出される動作区間は、図１２示すように、下方向への運動中と上方向への運動中に交互に検出される。さらに図１２に示すように速度ベクトルの大きさが極大となる時刻を（Ｔ１、Ｔ２、Ｔ３・・・）とすると、代表速度ベクトル算出部１０７では、これらの時刻における速度ベクトルが各動作区間の代表速度ベクトルとして選択され、選択された代表速度ベクトルが順番に記憶部１０８に記憶される。
【００６５】
ここで、時刻Ｔ１、Ｔ３、Ｔ５・・・の速度ベクトルは、下方向への運動中に表れる速度ベクトルであるから、その向きはすべて下方向となる。また、時刻Ｔ２、Ｔ４・・・の速度ベクトルは、上方向への運動中に表れる速度ベクトルであるから、その向きはすべて上方向となる。したがって、この場合、記憶部１０８に一つおきに記憶された代表速度ベクトルの間で速度ベクトルの相対的な交角θRを求めると、図１３に示すように、その交角θRは０度に近くなる。
【００６６】
そこで、まず往復動作判定部１０９において、記憶部１０８に連続して記憶された代表速度ベクトルを読み出し、その代表速度ベクトル間が形成する相対的な交角θSを計算し、その交角θSが１８０度に近ければ顔中心座標は往復運動を行ったと判定する。この判定結果は反復動作判定部１１０に送られる。
【００６７】
次に、反復動作判定部１１０において、一の代表速度ベクトルと、その２つ前に現れた代表速度ベクトルとの間で２つの速度ベクトルの相対的な交角θRを計算する。このとき、その交角θRが０度に近ければ、顔中心点が往復運動を反復して行ったと判定する。このような処理を行うことにより、頷き動作が繰り返して行われたことを検出することができる。具体的には、代表速度ベクトル間の交角θRを、所定の閾値ΘRと比較し、θR≦ΘRである場合には頷き動作が繰り返して行われたと判定すればよい。ここで閾値ΘRは、頷き動作が反復して行われていることを許容する代表速度ベクトル間の交角の値であり、被写体の頷き動作が反復していることを誤りなく検出するためには、この値を３５度以下に設定することが望ましい。
【００６８】
次に、頷き横振り判定部１１１では、往復動作判定部１０９で検出された往復運動が、頷き動作であるのか、頭の横振り動作であるのかを判定する。
【００６９】
上述したように、人物の頷き動作は、顔中心点の上下方向の往復運動として把握することができる。また、頭の横振り動作は、顔中心点の左右方向の往復運動として把握することができる。そこで、頷き横振り判定部１１１は、図１４に示すように、記憶部１０８に記憶された代表速度ベクトルをＶR＝（ｖx，ｖy）と表した場合に、｜ｖx｜≦｜ｖy｜であれば、顔中心点が上下方向に大きく変位しているため、その往復運動を頷き動作と判定する。逆に、｜ｖx｜＞｜ｖy｜であれば、顔中心点が左右方向に大きく変位しているため、その往復運動を横振り動作と判定する。ここで｜ｖx｜および｜ｖy｜は、それぞれ代表速度ベクトルＶR＝（ｖx，ｖy）のｘ成分およびｙ成分の大きさを表す。
【００７０】
このように、頷き横振り判定部１１１では、代表速度ベクトルＶR＝（ｖx，ｖy）のｘ成分とｙ成分の大きさを比較して、顔中心点の往復運動が上下方向か左右方向かを判定することにより、その動作が頷きであるか横振りであるかを判定することができる。
【００７１】
なお、上述した例では、顔中心点の往復運動を頷き動作か横振り動作かのいずれかに分類して判別結果を求めていた。しかし、実際の人物のジェスチャでは、頷きとも横振りともとることができない、斜め方向の頭の往復運動を意図して行う場合もある。例えば、ユーザとシステムとの間で質疑応答が行なわれるような場合では、システムの質問に対して、ユーザが頷きも頭の横振りも行わずに、頭を斜め方向に振ることがある。このような場合は、ユーザはシステムの質問に対して同意（頷き）や非同意（横振り）の意図を表しているのではなく、疑問や躊躇などの意図を表していることが多い。そのため、顔中心点が頷き動作とも横振り動作とも判別しがたい斜め方向の往復運動を行った場合には、その往復運動を頷きまたは横振りと判定して結果を出力するのではなく、頷き動作とも横振り動作とも判別せず、結果の出力を保留することが望まれる場合もある。
【００７２】
そこで、以下では斜め方向の往復運動が行われた場合に、結果の出力を保留する方法について説明する。ここでは説明を簡単にするため、図１５の斜線で示される領域１の範囲で頭の往復運動が行われた場合には結果の出力を保留し、一方、無地で示される領域２の範囲で頭の往復運動が行われた場合には、頷き動作または横振り動作のいずれかの判別結果を出力するものとする。
【００７３】
ここで、図１５の下斜め３０度方向の領域１と領域２の境界における往復運動では、代表速度ベクトルＶR＝（ｖx，ｖy）のｘ成分の大きさｖxと、ｙ成分の大きさｖyの比は、｜ｖx｜：｜ｖy｜＝１：√３となる。また、左斜め３０度方向または右斜め３０度方向の領域１と領域２の境界における往復運動では、代表速度ベクトルＶR＝（ｖx，ｖy）のｘ成分の大きさｖxと、ｙ成分の大きさｖyの比は、｜ｖx｜：｜ｖy｜＝√３：１となる。ここで｜ｖx｜と｜ｖy｜から（１０）式でｒを定義する。
【００７４】
【数１０】
2005352531.tif 000012
【００７５】
このとき、図１５に示す領域１における往復運動では、ｒ≦√３となる。一方、図１５に示す領域２における往復運動では、ｒ＞√３となる。そこでＲ＝√３と定めた場合、頷き横振り判定部１１１は、ｒ＞Ｒの場合には、頷き動作または横振り動作のいずれかを判定結果として出力し、ｒ≦Ｒの場合には、判定結果の出力を保留する。このようにすることで、図１５に示す領域２の範囲で往復運動を行った場合のみ頷き動作か横振り動作かの判定結果を出力し、領域１の範囲で往復運動を行った場合には判定結果の出力を保留することができる。
【００７６】
このような方法により、顔中心点の往復運動が頷き動作とも横振り動作とも判別しがたい斜め方向の往復運動である場合には、結果の出力を保留することができ、ジェスチャを行った被写体である人物が意図しない判別結果が出力されることを防ぐことができる。
【００７７】
また、頷き横振り判定部１１１では、反復動作判定部１１０における結果をも用いて頷き動作または頭の横振り動作の判定を行っても良い。すなわち、被写体である人物が頷き動作や頭の横振り動作を行う場合、頷き動作が１回の往復運動で完結する場合が多いのに対して、頭の横振り運動では、往復運動が複数回行われることが多い。そこで、頭の横振り動作については、頭を横に振る往復運動が反復して行われた場合のみ頭の横振り動作が行われたと判定する。このようにすることにより、より高精度に被写体の頷き動作、頭の横振り動作を検出することができる。
【００７８】
この場合、まず頷き横振り判定部１１１は、代表速度ベクトルＶR＝（ｖx，ｖy）のｘ成分とｙ成分の大きさを比較して、往復運動が頷き動作であるか横振り動作であるかを判別する。このとき、往復運動が横振り動作であると判定した場合には、反復動作判定部１１０の判定結果を参照する。すなわち、反復動作判定部１１０において往復運動が反復して行われていると判定されている場合には、頷き横振り判定部１１１はユーザが頭の横振り動作を行ったと判定する。逆に、往復運動が１回だけで完了し、反復して行われていと判定されている場合には、ユーザは頭の横振り動作を行っていないと判定する。
【００７９】
このように、頷き横振り判定部１１１において、反復動作判定部１１０の結果を用いることにより、より高精度に被写体である人物の頷き動作および横振り動作を検出することができる。
【００８０】
次に、図１６に示すフローチャートを用いて、本実施形態に係わるジェスチャ検出システム１０１の処理の動作を説明する。
【００８１】
ステップＳ１０１では、外部からジェスチャ検出システム１０１の画像入力部１０２に画像データが入力される。入力された画像データは顔特徴点検出部１０３に送られ、ステップＳ１０２に進む。
【００８２】
ステップＳ１０２では、顔特徴点検出部１０３において、顔の特徴点が検出される。検出された顔の特徴点は顔中心座標計算部１０４に送られ、ステップＳ１０３に進む。
【００８３】
ステップＳ１０３では、顔中心座標計算部１０４において、顔特徴点検出部１０３で検出された顔の特徴点の座標から顔中心点の座標が計算され、ステップＳ１０４に進む。
【００８４】
ステップＳ１０４では、速度ベクトル算出部１０５において、顔中心座標計算部１０４で求められた顔中心座標から、フレームごとに顔中心点の速度ベクトルが計算され、ステップＳ１０５に進む。
【００８５】
ステップＳ１０５では、動作区間検出部１０６において、速度ベクトル算出部１０５で求められたフレームごとの顔中心座標の速度ベクトルから、動作区間を検出する。動作区間検出部１０６において、動作区間が検出された場合にはステップＳ１０６に進み、動作区間が検出されなければステップＳ１１２に進む。
【００８６】
ステップＳ１０６では、動作区間検出部１０６において検出された動作区間に含まれる速度ベクトルから、代表速度ベクトル算出部１０７において代表速度ベクトルが算出される。代表速度ベクトル算出部１０７において算出された代表速度ベクトルは、ステップＳ１０７で、記憶部１０８に記憶される。
【００８７】
次に、ステップＳ１０８では、往復動作判定部１０９において、顔中心点が往復運動を行っているか否かが判定される。往復動作判定部１０９においては、記憶部１０８に記憶された最新の代表速度ベクトルと、その１つ前に現れた代表速度ベクトルとの間で速度ベクトル間の相対的な交角θSが計算され、これをあらかじめ定めた閾値ΘSと比較して往復運動の有無が判定される。往復動作判定部１０９において往復運動が存在すると判定された場合にはステップＳ１０９に進み、往復運動が存在しないと判定された場合にはステップＳ１１２に進む。
【００８８】
ステップＳ１０９では、反復動作判定部１１０において、顔中心点が往復運動を反復して行っているか否かが判定される。反復動作判定部１１０においては、記憶部１０８に記録された最新の代表速度ベクトルと、その２つ前に現れた代表速度ベクトルとの間で速度ベクトル間の相対的な交角θRが計算され、これをあらかじめ定めた閾値ΘRと比較して反復運動の有無が判定される。反復動作判定部１１０において往復運動が反復して行われていると判定された場合にはステップＳ１１０に進み、往復運動が反復して行われてはいないと判定された場合にはステップＳ１１２に進む。
【００８９】
ステップＳ１１０では、頷き横振り判定部１１１において、往復動作判定部１０９で検出された被写体である人物の頭の往復運動が、頷き動作であるのか、頭の横振り動作であるのかが判定される。頷きと横振りの判別は、記憶部１０８に記憶された最新の顔中心点の代表速度ベクトルの上下方向の速度成分の大きさと、左右方向の速度成分の大きさを比較することによって行われる。上下方向の速度成分の大きさが左右方向の速度成分の大きさ以上であれば、頷き動作であると判定され、そうでなければ頭の横振り動作であると判定される。
【００９０】
次に、ステップＳ１１１に進み、頷き横振り判定部１１１で得られた判定結果がユーザに対して出力される。
【００９１】
最後のステップＳ１１２では、すべての画像データについて処理が行われたか否かが判定され、すべての画像データについての処理が完了していれば処理を終了し、完了していなければステップＳ１０１に戻る。
【００９２】
このように、第１の実施形態に係わるジェスチャ検出システムによれば、顔中心座標の２つの代表速度ベクトルが形成する相対的な交角に基づいて、顔中心点が往復運動や反復運動を行っているか否かを判定することにより、被写体である人物の頷き動作または頭の横振り動作およびこれらの反復動作であるジェスチャを高精度かつ頑健かつ高速に検出することができる。
【００９３】
なお、上述した第１の実施形態に係わるジェスチャ検出システムでは、代表速度ベクトル算出部１０７で算出される代表速度ベクトルを、動作区間検出部１０６で検出される動作区間に含まれる速度ベクトルのうち、その大きさが最大の速度ベクトルであるとしたが、代表速度ベクトルは、上述した動作区間に含まれる速度ベクトルの平均ベクトルであってもよい。
【００９４】
すなわち、被写体である人物の頷き動作では、図５に示すように、頭の下方向への運動中と上方向の運動中に、動作区間検出部１０６において動作区間が検出されるため、各区間に含まれる速度ベクトルは、それぞれの区間ですべて下向きまたは上向きとなる。したがって、それぞれの動作区間に含まれた速度ベクトルの平均ベクトルを算出すると、平均ベクトルについても、それぞれの区間で下向きまたは上向きとなる。よって、このようにして算出される平均ベクトルを代表速度ベクトルとして、そのベクトル間の相対的な交角を求めれば、第１の実施形態と同様に、被写体である人物の頷き動作または頭の横振り動作およびこれらの反復動作であるジェスチャを高精度かつ頑健かつ高速に検出することができる。また、このように速度ベクトルの平均ベクトルを代表速度ベクトルとすることにより、速度ベクトルの時系列データにノイズが重畳する場合であっても、ノイズの影響が平滑化されることになり、より高精度なジェスチャの検出が可能になる。
【００９５】
さらに、代表速度ベクトル算出部１０７で算出される代表速度ベクトルは、動作区間検出部１０６で検出される動作区間の中心時刻の速度ベクトルであってもよい。すなわち、頷き動作が滑らかに行われている場合には、動作区間の中心付近の時刻において速度ベクトルの大きさが最大となると考えられるため、この動作区間の中心時刻の速度ベクトルを代表速度ベクトルとすれば、上述した第１の実施形態のように、被写体である人物の頷き動作または頭の横振り動作およびこれらの反復動作であるジェスチャを高精度かつ頑健かつ高速に検出することができる。
【００９６】
また、第１の実施形態に係わるジェスチャ検出システムでは、顔中心点の座標は２次元座標として表したが、顔中心点の座標を３次元座標で表し、３次元座標の時系列データから被写体の頷き動作や頭の横振り動作を検出することも可能である。すなわち、複数のカメラを用いて被写体の頭部の画像データを撮影し、これらの画像データからステレオ視の原理に基づいて、顔中心点の３次元座標を求めれば、上述した方法の２次元座標を３次元座標に置き換えることにより、被写体である人物の頷き動作や頭の横振り動作の検出が可能となる。
【００９７】
また、第１の実施形態に係わるジェスチャ検出システムは、被写体である人物の頷き動作と頭の横振り動作の検出を行うが、往復運動であれば頷き動作や横振り動作に限定されることなく適用することが可能である。すなわち、手を上下に往復運動させるジェスチャや体全体で屈伸運動を行うジェスチャであっても、上述した方法を用いれば、これらのジェスチャの検出が可能である。さらに、例えば手に何らかの物体を持ち、この物体を上下させるような場合であっても、上述した方法を用いれば、これらの物体の動きを検出することが可能である。
【実施例２】
【００９８】
実施例１では、被写体である人物の頷き動作や頭の横振り動作を顔中心点の２次元平面上における往復運動として捉え、顔中心点の動きを２次元座標（ｘ，ｙ）の時系列データとして表していた。
【００９９】
しかし、頷き動作や頭の横振り動作は、頭の上下方向と左右方向への回転と捉えることも可能である。そこで実施例２では、被写体である人物の頷き動作や頭の横振り動作を、顔の向きを上下方向と左右方向に回転させる運動として捉え、顔の向きを上下方向の回転角ψと左右方向の回転角φの２次元座標（ψ，φ）の時系列データとして表し、この座標の時系列データから被写体である人物の頷き動作と頭の横振り動作を検出する方法について示す。
【０１００】
図１７は、本発明の第２の実施形態に係わるジェスチャ検出方法を実現するためのジェスチャ検出システムの一例を示す構成図である。
【０１０１】
この第２の実施形態に係わるジェスチャ検出システム２０１は、画像入力部２０２、顔特徴点検出部２０３、顔向き座標計算部２０４、角速度ベクトル算出部２０５、動作区間検出部２０６、代表角速度ベクトル算出部２０７、記憶部２０８、往復動作判定部２０９、反復動作判定部２１０、頷き横振り判定部２１１を備えている。これらの各構成要素の一部または全部は、ハードウェアによって構成しても良いし、ソフトウェアによって構成しても良い。
【０１０２】
次に、第２の実施形態に係わるジェスチャ検出システム２０１の構成と動作について説明する。
【０１０３】
画像入力部２０２は、システム外部からビデオカメラ等で撮影されたユーザの画像を受信し、画像処理しやすいようにデジタル形式の電子データに変換して顔画像データを作成し、その時系列データを顔特徴点検出部２０３に送る。なお、以下では各時刻の顔画像データをフレームと呼ぶ。
【０１０４】
顔特徴点検出部２０３は、画像入力部２０２から送られてくる時系列の顔画像データから、フレームごとに顔特徴点を検出する。顔特徴点を検出する方法としては、上述した特許第３２７９９１３号公報に掲載された方法を用いることができる。
【０１０５】
ここでは、顔特徴点として左右の目および左右の鼻孔を例に挙げて説明する。顔特徴点として左右の目および左右の鼻孔を検出した場合には、図１８に示すように左目の座標（ｘelf，ｙelf）、右目の座標（ｘerf，ｙerf）、左の鼻孔の座標（ｘnlf，ｙnlf）、右の鼻孔の座標（ｘnrf，ｙnrf）がフレームごとに得られる。なお、ここでｆはフレーム番号をあらわすパラメータである。
【０１０６】
次に、この顔特徴点検出部２０３によって検出された左右の目および左右の鼻孔の座標の顔特徴点は、顔向き座標計算部２０４に送られる。
【０１０７】
顔向き座標計算部２０４は、顔特徴点検出部２０３から送られてくる左右の目および左右の鼻孔の座標から、顔向き座標を計算する。
【０１０８】
ここでは、顔向き座標計算部２０４で計算される顔向き座標（ψ，φ）を、図１９に示すように、左右の目と鼻孔の中心点の３点で定まる二等辺三角形の垂直方向に対する傾角ψと、鼻孔の中心点の顔正面からのふれ角φと定義する。
【０１０９】
顔向き座標計算部２０４は、各フレームの顔向き座標（ψf，φf）を計算するために、まずフレームごとに、左目の座標（ｘelf，ｙelf）と右目の座標（ｘerf，ｙerf）が、それぞれ（−１，０）および（１，０）となるように座標変換を行い、変換した座標上で左右の鼻孔の中心座標（ｕf，ｙf）を求める。次に、顔向き座標計算部２０４は、この鼻孔の中心座標（ｕf，ｙf）を用いて顔向き座標（ψf，φf）を計算する。ここで、各フレームの顔向き座標であるψfおよびφfは、鼻孔の中心座標（ｕf，ｙf）により、近似的に（１１）式のように計算することができる。
【０１１０】
【数１１】
2005352531.tif 000013
【０１１１】
ここでｙMaxは、図２０に示すように、上記変換座標上における左右の目の中点から鼻孔の中心までの距離の最大値である。このｙMaxの値は、あらかじめ実験的に求めておくと良い。
【０１１２】
角速度ベクトル算出部２０５は、顔向き座標計算部２０４で計算される顔向き座標（ψf，φf）から、フレームごとに顔向きの回転の角速度ベクトルを計算する。顔向きの回転の角速度ベクトル（以下、顔向きの角速度ベクトルと呼ぶ）Ｖf＝（ｖψf，ｖφf）は、フレーム間の顔向き座標の変位として（１２）式によって求めることができる。
【０１１３】
【数１２】
2005352531.tif 000014
【０１１４】
ここでΔｔは、画像入力部２０２に入力される画像の第ｆフレームが撮影された時間と第ｆ＋１フレームが撮影された時間の時間間隔を表す。この角速度ベクトル算出部２０５で計算された顔向きの角速度ベクトルＶf＝（ｖψf，ｖφf）は、動作区間検出部２０６に送られる。
【０１１５】
動作区間検出部２０６は、角速度ベクトル算出部２０５から送られてくる顔向きの角速度ベクトルＶfを用いて、顔を回転させる動作を行っている時間区間（動作区間）を検出する。ここで動作区間とは、その区間に含まれる角速度ベクトルの大きさが、すべて所定の閾値よりも大きい時間区間をいう。すなわち、角速度ベクトルの時系列データを｛Ｖ1，Ｖ2，・・・，Ｖf，・・・｝と表した場合に、（１３）式に示される条件を満たすフレームによって構成される連続した区間をいう。
【０１１６】
【数１３】
2005352531.tif 000015
【０１１７】
ここで、ＴＨVは、あらかじめ定めた角速度ベクトルの大きさの閾値である。また、‖Ｖf‖は、第ｆフレームにおける角速度ベクトルＶf＝（ｖψf，ｖΦf）の大きさを表す。
【０１１８】
このようにして、動作区間検出部２０６で検出された動作区間は、代表角速度ベクトル算出部２０７に送られる。
【０１１９】
代表角速度ベクトル算出部２０７は、動作区間検出部２０６で検出された各動作区間について、その動作区間に含まれる角速度ベクトルから代表角速度ベクトルＶRを算出する。ここでは代表角速度ベクトルＶRは、動作区間に含まれる角速度ベクトルのうち、そのベクトルの大きさがそれぞれの動作区間の中で最大となる角速度ベクトルであるとする。この場合、動作区間検出部２０６で検出された動作区間の一つを第fsフレームから第feフレームの区間とし、その区間に含まれる角速度ベクトルの時系列データを｛Ｖfs，Ｖfs+1，・・・，Ｖfe｝、代表角速度ベクトルをＶRとすると、代表角速度ベクトルＶRは（１４）式を満たす速度ベクトルとなる。
【０１２０】
【数１４】
2005352531.tif 000016
【０１２１】
このようにして、代表角速度ベクトル算出部２０７は、動作区間検出部２０６で動作区間が検出されるたびに代表角速度ベクトルＶRを算出する。そして、算出された代表角速度ベクトルＶRは、時系列データとして記憶部２０８に記憶される。
【０１２２】
往復動作判定部２０９は、記憶部２０８に記憶された代表角速度ベクトルから、顔向きが回転による往復運動を行っているか否かを判定する。
【０１２３】
次に、記憶部２０８に記憶された代表角速度ベクトルから、顔向きの往復運動の有無を判定する方法について説明する。ここでは、頭の縦振り（頷き）動作を例にして説明する。
【０１２４】
上述したように頷き動作は、頭を下方に振る動作と、これに連続して行われる頭を上方に戻す動作とによって構成される。すなわち、顔向き角度に着目すると、頷き動作は、図２１に示すように、顔向きの上下方向への回転による往復運動として把握することができる。
【０１２５】
ここで、顔向きの上下方向への回転による往復運動においては、下方向への回転運動中における任意の時刻の顔向きの角速度ベクトルの向きは、回転面に対して垂直方向であり、かつ上記回転方向に右ねじが回転する場合の右ねじの進行方向となる。これを図示すると図２２（ｂ）のようになる。一方、上方向への回転運動中における任意の時刻の顔向き座標の角速度ベクトルの向きも同様に考えることができるので、これを図示すると図２２（ｃ）のようになる。
【０１２６】
したがって、下方向への回転運動中における顔向きの角速度ベクトルと上方向への回転運動中における顔向きの角速度ベクトルの向きは、ほぼ逆方向となる。したがって、両者の角速度ベクトルが形成する相対的な角度（交角）θSを求めると、その交角は１８０度に近くなる。
【０１２７】
次に、往復運動における顔向きの角速度ベクトルの大きさの変化について説明する。図２３は、この角速度ベクトルの大きさの時間変化を示した図である。往復運動開始前は静止の状態であり、顔向きの角速度ベクトルの大きさは「０」である。そして、顔向きが下方向へ回転を開始すると角速度ベクトルの大きさが増し、角速度ベクトルの大きさが極大となる時刻Ｔ１を経て、折り返し点に達する。折り返し点では、顔向きが下方へ向かう回転運動から上方へ向かう回転運動へと移行するため、角速度ベクトルの大きさは一時「０」となる。次に、顔向きが上方向へ回転を開始すると再び角速度ベクトルの大きさが増し、角速度ベクトルの大きさが極大となる時刻Ｔ２を経て、もとの位置まで戻り静止する。
【０１２８】
ここで、（１３）式の閾値ＴＨVを適切な値に定めれば、図２３に示すように、動作区間検出部２０６は、１度の頷き動作の中で２回の動作区間を検出することになる。また、上述したように、代表角速度ベクトル算出部２０７で算出される代表角速度ベクトルを、動作区間検出部２０６で検出される動作区間に含まれる速度ベクトルのうち、その大きさが最大の角速度ベクトルであるとすると、図２３において時刻Ｔ１および時刻Ｔ２の速度ベクトルが代表角速度ベクトルとして選択されることになる。したがって、これらの時刻における角速度ベクトルが代表角速度ベクトルとして、連続して記憶部２０８に記憶される。
【０１２９】
また、上述したように、下方向への回転運動中における角速度ベクトルの向きと上方向への回転運動中における角速度ベクトルの向きは、ほぼ逆方向となるため、両者の角速度ベクトルが形成する交角θSを計算すると１８０度に近くなる。
【０１３０】
そこで、往復動作判定部２０９は、記憶部２０８に記憶された連続する２つの代表角速度ベクトルを読み出し、２つの代表角速度ベクトル間の交角θSを計算する。そして、その交角θSが１８０度に近い場合には、顔向き座標が往復運動を行ったと判定、すなわち頷き動作が行われたと判定する。具体的には、代表角速度ベクトルの交角θSを所定の閾値ΘSと比較して、θS≧ΘSである場合には頷き動作が行われたと判定すればよい。
【０１３１】
次に、顔の向きが図２４に示すような往復運動とは言えないＶ字型の軌跡をたどる回転運動を行った場合には、記憶部２０８に連続して記憶された代表角速度ベクトル間の交角θS´は、図２４に示すように１８０度を大きく下回るため、往復動作判定部２０９における閾値ΘSとの比較結果はθS´＜ΘSとなり、頷き動作ではないと判定することができる。
【０１３２】
また、被写体の頷き動作では、図２５に示すように、わずかに左や右に傾いた往復運動を行う場合もある。しかし、このような頷き動作であっても往復運動であれば、図２５に示すように、下方向への回転運動中における任意の時刻の角速度ベクトルと、上方向への回転運動中における任意の時刻の角速度ベクトルが形成する相対的な交角θSは、ほぼ１８０度となる。そのため、上述した方法を用いれば、このような傾きのある往復運動であっても、正確に頷き動作と判定することができる。
【０１３３】
なお、ここでは、頷き動作を例にして往復動作判定部２０９の動作を説明したが、頭の横振り動作についても同様の方法によって検出することが可能である。すなわち、頭の横振り動作では、顔の向きの動きは、図２６に示すように、顔向きの左方向と右方向への回転運動となる。そのため、左方向への回転運動中と右方向への回転運動中に、動作区間検出部２０６において動作区間が検出される。そして代表角速度ベクトル算出部２０７において、各動作区間からが代表角速度ベクトルが算出され、連続して記憶部２０８に記憶される。また、これらの代表角速度ベクトルの向きは、それぞれ回転面に対して下方向と上方向となり、両者の相対的な交角θSは１８０度に近くなる。したがって、上述したように記憶部２０８に記憶された代表角速度ベクトルのうち、連続して現れた代表角速度ベクトル間の交角θSを計算して、これを所定の閾値ΘSと比較することにより往復運動の有無を判定すれば、頭の横振り動作の検出を行うことが可能となる。
【０１３４】
次に、反復動作判定部２１０では、記憶部２０８に記憶された代表角速度ベクトルから、顔向き座標が往復運動を反復して行っているか否かを判定する。
【０１３５】
以下、代表角速度ベクトルから顔の向きが往復運動を反復して行っているか否かを判定する方法について説明する。ここでは、被写体である人物が頷き動作を繰り返し行っている場合を例にして説明する。
【０１３６】
被写体である人物の１回の頷き動作は、図２１に示すような顔の向きの上下方向の回転による往復運動として把握することができる。したがって、被写体である人物が頷き動作を繰り返した場合には、顔の向きの運動は、図２７に示すような上下方向の往復運動の繰り返しとして把握することができる。
【０１３７】
上下方向の回転による往復運動が繰り返して行われる場合には、角速度ベクトルの大きさの時間変化は図２８のようになる。したがって、動作区間検出部２０６によって検出される動作区間は、図２８に示すように、下方向への回転運動中と上方向への回転運動中に交互に検出される。さらに図２８に示すように、角速度ベクトルの大きさが極大となる時刻を（Ｔ１、Ｔ２、Ｔ３・・・）とすると、代表角速度ベクトル算出部２０７では、これらの時刻における角速度ベクトルが各動作区間の代表角速度ベクトルとして選択され、選択された代表角速度ベクトルが順番に時系列データとして記憶部２０８に記憶される。
【０１３８】
ここで、時刻Ｔ１、Ｔ３、Ｔ５・・・の角速度ベクトルは、下方向への回転運動中に表れる代表角速度ベクトルである。一方、Ｔ２、Ｔ４・・・の角速度ベクトルは上方向への回転運動中に表れる代表角速度ベクトルである。したがって、この場合、記憶部２０８に一つおきに記憶された代表角速度ベクトルの間で角速度ベクトルの相対的な交角θRを求めると、その交角は０度に近くなる。
【０１３９】
そこで、まず往復動作判定部２０９において、記憶部２０８に連続して記憶された代表角速度ベクトル間が形成する相対的な交角θSを計算し、その交角θSが１８０度に近ければ、顔向き座標は回転による往復運動を行ったと判定する。この判定結果は反復動作判定部２１０に送られる。
【０１４０】
次に、反復動作判定部２１０において、一の代表角速度ベクトルと、その２つ前に現れた代表角速度ベクトルとの間で２つの角速度ベクトル間の相対的な交角θRを計算する。このとき、その交角θRが０度に近ければ、顔向き座標が往復運動を反復して行ったと判定する。このような処理を行うことにより、頷き動作が繰り返して行われたことを検出することが可能となる。具体的には、反復動作判定部２１０は代表角速度ベクトル間の交角θRを、所定の閾値ΘRと比較し、θR≦ΘRである場合には頷き動作が繰り返して行われたと判定すればよい。
【０１４１】
頷き横振り判定部２１１では、往復動作判定部２０９で検出された往復運動が、頷き動作であるのか、頭の横振り動作であるのかを判定する。
【０１４２】
被写体である人物の頷き動作は、顔の向きの上下方向の回転による往復運動として把握することができる。また頭の横振り動作は、顔の向きの左右方向の回転による往復運動として把握することができる。
【０１４３】
そこで、記憶部２０８に記憶された代表角速度ベクトルをＶR＝（ｖψ，ｖφ）と表した場合、頷き横振り判定部２１１は、｜ｖψ｜≧｜ｖφ｜であれば、顔向き座標が上下方向に大きく変位しているため、その往復運動を頷き動作と判定する。逆に、｜ｖψ｜＜｜ｖφ｜であれば、顔向き座標が左右方向に大きく変位しているため、その往復運動を頭の横振り動作と判定する。ここで、｜ｖψ｜は代表角速度ベクトルＶRのψ成分の大きさを、｜ｖφ｜は代表角速度ベクトルＶのφ成分の大きさを表す。
【０１４４】
このように、第２の実施形態に係わるジェスチャ検出システムによれば、顔向き座標の２つの代表角速度ベクトルが形成する相対的な交角に基づいて、顔向き座標が回転による往復運動や反復運動を行っているか否かを判定することにより、被写体である人物の頷き動作または頭の横振り動作およびこれらの反復動作であるジェスチャを検出することができる。
【０１４５】
なお、本実施形態では、顔向き座標のみを用いて被写体の頷き動作や頭の横振り動作の有無を判定したが、さらに第１の実施形態で用いた顔中心座標をも同時に用いて、例えば両者の結果のいずれもが往復運動の存在を示している場合のみ、被写体である人物の頷き動作や頭の横振り動作が存在すると判定することも可能である。このように、顔向き座標と顔中心座標を同時に用いて被写体のジェスチャを判定することにより、より高精度なジェスチャの検出が可能となる。
【実施例３】
【０１４６】
実施例１では、速度ベクトル算出部１０５で算出される速度ベクトルの大きさが所定の閾値よりも大きい区間を、動作区間検出部１０６で検出し、検出された動作区間に含まれる速度ベクトルから、代表速度ベクトル算出部１０７において代表速度ベクトルを算出していた。
【０１４７】
実施例３では、速度ベクトル算出部１０５で算出される速度ベクトルの大きさが所定の閾値を越えた時刻を検出し、検出された時刻から一定の時間内に含まれる速度ベクトルから代表速度ベクトルを算出することによりジェスチャを検出する方法について説明する。
【０１４８】
図２９は、本発明の第３の実施形態に係わるジェスチャ検出方法を実現するためのジェスチャ検出システムの一例を示す構成図である。
【０１４９】
この第３の実施形態に係わるジェスチャ検出システム３０１は、画像入力部３０２、顔特徴点検出部３０３、顔中心座標計算部３０４、速度ベクトル算出部３０５、動作開始時刻検出部３０６、代表速度ベクトル算出部３０７、記憶部３０８、往復動作判定部３０９、反復動作判定部３１０、頷き横振り判定部３１１を備えている。これらの各構成要素の一部または全部は、ハードウェアによって構成しても良いし、ソフトウェアによって構成しても良い。
【０１５０】
次に、第３の実施形態に係わるジェスチャ検出システム３０１の構成と動作について説明する。なお、以下では第１の実施形態に係わるジェスチャ検出システム１０１と共通する部分（画像入力部３０２、顔特徴点検出部３０３、顔中心座標計算部３０４、速度ベクトル算出部３０５、記憶部３０８、反復動作判定部３１０、頷き横振り判定部３１１）については説明を省略する。
【０１５１】
動作開始時刻検出部３０６は、速度ベクトル算出部３０５から送られてくる顔中心点の動きの速度ベクトルを用いて、顔中心点が動作を開始する時刻（動作開始時刻）を検出する。ここで動作開始時刻とは、速度ベクトルの大きさが所定の閾値よりも大きく、かつ、直前の時刻の速度ベクトルの大きさが所定の閾値以下となる時刻をいう。すなわち、動作開始時刻とは、例えば、速度ベクトルの時系列データを｛Ｖ1，Ｖ2，・・・，Ｖf，・・・｝と表した場合に、（１５）式に示される条件を満たすフレームｆに対応する時刻をいう。
【０１５２】
【数１５】
2005352531.tif 000017
【０１５３】
ここで、ＴＨVは、あらかじめ定めた速度ベクトルの大きさの閾値である。
【０１５４】
なお、（１５）式では、直前の時刻の速度ベクトルを、‖Ｖf‖＞ＴＨVとなるフレームの1フレーム前のフレームの速度ベクトルとして条件を定めていたが、直前の時刻の速度ベクトルを、あらかじめ定めたＮフレームだけ前のフレームの速度ベクトルとして、（１６）式に示される条件を満たすフレームｆに対応する時刻を動作開始時刻としてもよい。
【０１５５】
【数１６】
2005352531.tif 000018
【０１５６】
なお、（１６）式を満たすフレームが連続する場合には、例えば、それらのフレームのうち、最初のフレームに対応する時刻を動作開始時刻とすればよい。
【０１５７】
動作開始時刻検出部３０６で検出された動作開始時刻は、代表速度ベクトル算出部３０７に送られる。
【０１５８】
代表速度ベクトル算出部３０７は、動作開始時刻検出部３０６で検出された動作開始時刻から、あらかじめ定めた一定時間の区間に含まれる速度ベクトルから代表速度ベクトルを算出する。例えば、動作開始時刻検出部３０６で検出された動作開始時刻に対応するフレームｆsからＮフレームの区間に含まれる速度ベクトルから代表速度ベクトルを算出するようにすればよい。ここで、動作開始時刻検出部３０６で検出された動作開始時刻に対応するフレームｆsからＮフレームの区間に含まれる速度ベクトルを｛Ｖfs，Ｖfs+1，・・・，Ｖfs+N｝、代表速度ベクトルをＶRとすると、代表速度ベクトルＶRは（１７）式を満たす速度ベクトルとなる。
【０１５９】
【数１７】
2005352531.tif 000019
【０１６０】
なお、（１７）式では、上述した区間に含まれる速度ベクトルのうち、その大きさが最大となる速度ベクトルを代表速度ベクトルＶRとしたが、代表速度ベクトルＶRは、上述した区間に含まれる速度ベクトルの平均ベクトルであってもよいし、動作開始時刻からＮフレーム後の時刻の速度ベクトルを、そのまま代表速度ベクトルＶRとしてもよい。
【０１６１】
このようにして、代表速度ベクトル算出部３０７は、動作開始時刻検出部３０６で動作開始時刻が検出されるたびに代表速度ベクトルＶRを算出する。そして代表速度ベクトル算出部３０７で算出された代表速度ベクトルＶRは、時系列データとして記憶部３０８に記憶される。
【０１６２】
往復動作判定部３０９は、記憶部１０８に記憶された代表速度ベクトルを順次読み出して、その読み出した代表速度ベクトルから顔中心点が往復運動を行っているか否かを判定する。
【０１６３】
ここで、頭の縦振り（頷き）動作を例に取ると、頷き動作においては、顔中心点の動きの速度ベクトルの大きさの時間変化は、図３０のようになる。したがって、動作開始時刻検出部３０６における速度ベクトルの大きさに対する閾値ＴＨvを適切な値に定めれば、図３０に示すように、１回の頷き動作の中で、顔中心点の下方向への運動中と上方向への運動中に、それぞれ１回ずつ動作開始時刻検出部３０６で動作開始時刻（ＴS１、ＴS２）が検出されることになる。したがって、代表速度ベクトル算出部３０７において、代表速度ベクトルを算出する区間を、動作開始時刻検出部３０６で検出された動作開始時刻からＮフレームとすると、図３０に示すように下方向への運動中と、上方向への運動中にそれぞれ代表速度ベクトルを算出する区間を得ることができる。
【０１６４】
ここで、これらの区間に含まれる速度ベクトルの向きは、下方向への運動中においてはすべて下向きとなり、上方向への運動中においてはすべて上向きとなる。したがって、代表速度ベクトル算出部３０７において、それぞれの区間から代表速度ベクトルを算出すれば、両者の速度ベクトルが形成する交角を計算すると１８０度に近くなる。
【０１６５】
そこで、往復動作判定部３０９では、記憶部３０８に記憶された連続する２つの代表速度ベクトル間の交角を計算し、その交角が１８０度に近い場合には、顔中心点が往復運動を行ったと判断、すなわち頷き動作が行われたと判定することができる。
【０１６６】
このように、第３の実施形態に係わるジェスチャ検出システムによれば、顔中心点の動きの速度ベクトルの大きさが所定の閾値を越えた時刻を検出し、その時刻から一定時間の区間に含まれる速度ベクトルから代表速度ベクトルを求めて、顔中心点が往復運動や反復運動を行っているか否かを判定することにより、被写体である人物のジェスチャを高精度かつ頑健かつ高速に検出することができる。
【実施例４】
【０１６７】
実施例１では、速度ベクトル算出部１０５で算出される速度ベクトルの大きさが所定の閾値よりも大きい区間を、動作区間検出部１０６で検出し、検出された動作区間に含まれる速度ベクトルから、代表速度ベクトル算出部１０７において代表速度ベクトルを算出していた。
【０１６８】
実施例４では、速度ベクトル算出部１０５で算出される速度ベクトルの大きさが所定の閾値よりも小さく、顔中心点が静止していると考えられる静止区間を時系列データとして検出していき、検出された静止区間と静止区間の間の区間に含まれる速度ベクトルから代表速度ベクトルを算出することによりジェスチャを検出する方法について説明する。
【０１６９】
図３１は、本発明の第４の実施形態に係わるジェスチャ検出方法を実現するためのジェスチャ検出システムの一例を示す構成図である。
【０１７０】
この第４の実施形態に係わるジェスチャ検出システム４０１は、画像入力部４０２、顔特徴点検出部４０３、顔中心座標計算部４０４、速度ベクトル算出部４０５、静止区間検出部４０６、代表速度ベクトル算出部４０７、記憶部４０８、往復動作判定部４０９、反復動作判定部４１０、頷き横振り判定部４１１を備えている。これらの各構成要素の一部または全部は、ハードウェアによって構成しても良いし、ソフトウェアによって構成しても良い。
【０１７１】
次に、第４の実施形態に係わるジェスチャ検出システム４０１の構成と動作について説明する。なお、以下では第１の実施形態に係わるジェスチャ検出システム１０１と共通する部分（画像入力部４０２、顔特徴点検出部４０３、顔中心座標計算部４０４、速度ベクトル算出部４０５、記憶部４０８、反復動作判定部４１０、頷き横振り判定部４１１）については説明を省略する。
【０１７２】
静止区間検出部４０６は、まず、速度ベクトル算出部４０５から送られてくる顔中心点の動きの速度ベクトルを用いて、顔中心点が静止している時間区間（静止区間）を検出する。ここで静止区間とは、その区間に含まれる速度ベクトルの大きさが、すべて所定の閾値よりも小さい時間区間をいう。すなわち、速度ベクトルの時系列データを｛Ｖ1，Ｖ2，・・・，Ｖf，・・・｝と表した場合に、（１８）式に示される条件を満たすフレームによって構成される連続した区間をいう。
【０１７３】
【数１８】
2005352531.tif 000020
【０１７４】
ここで、ＴＨVは、あらかじめ定めた速度ベクトルの大きさの閾値である。
【０１７５】
静止区間検出部４０６で検出された静止区間は、時系列データとして代表速度ベクトル算出部４０７に送られる。
【０１７６】
代表速度ベクトル算出部４０７は、静止区間検出部４０６で検出された静止区間を受け取り、連続する２つの静止区間の間に含まれる区間を動作区間として、その動作区間に含まれる速度ベクトルから代表速度ベクトルを算出する。すなわち、図３２に示すように、静止区間検出部４０６から２つの静止区間Ｓ１、Ｓ２が送られてきた場合、代表速度ベクトル算出部は、静止区間Ｓ１とＳ２の間に含まれる動作区間Ｍ１を検出し、次に動作区間Ｍ１に含まれる速度ベクトルから代表速度ベクトルを算出する。
【０１７７】
代表速度ベクトル算出部４０７で算出される代表速度ベクトルは、動作区間Ｍ１に含まれる速度ベクトルのうち、その大きさが最大の速度ベクトルであってもよいし、動作区間Ｍ１に含まれる速度ベクトルの平均ベクトルであってもよいし、動作区間Ｍ１の中心時刻に対応するフレームの速度ベクトルであってもよい。
【０１７８】
このようにして、代表速度ベクトル算出部４０７は、静止区間検出部４０６で静止区間が検出されるたびに、検出された静止区間と静止区間の間の区間に含まれる速度ベクトルから代表速度ベクトルを算出する。そして代表速度ベクトル算出部４０７で算出された代表速度ベクトルは、時系列データとして記憶部４０８に記憶される。
【０１７９】
往復動作判定部４０９は、記憶部４０８に記憶された代表速度ベクトルを順次読み出し、その読み出した代表速度ベクトルから顔中心点が往復運動を行っているか否かを判定する。
【０１８０】
ここで、頭の縦振り（頷き）動作を例に取ると、頷き動作においては、顔中心点の動きの速度ベクトルの大きさの時間変化は図３３のようになる。したがって、静止区間検出部４０６における速度ベクトルの大きさに対する閾値ＴＨVを適切な値に定めれば、静止区間検出部４０６は、図３３に示すように、１回の頷き動作の中で、下方向への運動を開始したとき（Ｓ１）と、下方向への運動から上方向への運動に移行するとき（Ｓ２）、および頷き動作が完了し顔中心点がもとの位置に戻り静止するとき（Ｓ３）の３回静止区間を検出することになる。したがって、代表速度ベクトル算出部４０７で、静止区間検出部４０６で検出された連続する２つの静止区間の間の区間を動作区間として検出すると、図３３に示すように、１回の頷き動作の中で、下方向への運動中と上方向への運動中の２つの動作区間（Ｍ１、Ｍ２）が検出されることになる。
【０１８１】
ここで、これらの動作区間Ｍ１、Ｍ２に含まれる速度ベクトルの向きは、下方向への運動中においては、すべて下向きとなり、上方向への運動中においては、すべて上向きとなる。したがって、代表速度ベクトル算出部４０７で、それぞれの動作区間から代表速度ベクトルを算出すれば、両者の代表速度ベクトルが形成する交角は１８０度に近くなる。
【０１８２】
そこで、往復動作判定部４０９では、記憶部４０８に記憶された連続する２つの代表速度ベクトル間の交角を計算し、その交角が１８０度に近い場合には、顔中心点が往復運動を行ったと判断、すなわち頷き動作が行われたと判定することができる。
【０１８３】
このように、第４の実施形態に係わるジェスチャ検出システムによれば、顔中心点の動きの速度ベクトルが所定の閾値よりも小さい区間を静止区間として検出し、検出された連続する２つの静止区間の間に含まれる区間を動作区間として、その動作区間に含まれる速度ベクトルから代表速度ベクトルを求めて、顔中心点が往復運動や反復運動を行っているか否かを判定することにより、被写体である人物のジェスチャを高精度かつ頑健かつ高速に検出することができる。
【実施例５】
【０１８４】
実施例１では、速度ベクトル算出部１０５で算出される速度ベクトルの大きさが所定の閾値よりも大きい区間を、動作区間検出部１０６で検出し、検出された動作区間に含まれる速度ベクトルから、代表速度ベクトル算出部１０７において代表速度ベクトルを算出していた。
【０１８５】
実施例５では、速度ベクトル算出部１０５で算出される速度ベクトルの大きさが所定の閾値よりも大きく、かつ極大となる時刻の速度ベクトルを検出することによりジェスチャを検出する方法について説明する。
【０１８６】
図３４は、本発明の第５の実施形態に係わるジェスチャ検出方法を実現するためのジェスチャ検出システムの一例を示す構成図である。
【０１８７】
この第５の実施形態に係わるジェスチャ検出システム５０１は、画像入力部５０２、顔特徴点検出部５０３、顔中心座標計算部５０４、速度ベクトル算出部５０５、ピーク速度ベクトル算出部５０６、記憶部５０７、往復動作判定部５０８、反復動作判定部５０９、頷き横振り判定部５１０を備えている。これらの各構成要素の一部または全部は、ハードウェアによって構成しても良いし、ソフトウェアによって構成しても良い。
【０１８８】
次に、第５の実施形態に係わるジェスチャ検出システム５０１の構成と動作について説明する。なお、以下では第１の実施形態に係わるジェスチャ検出システム１０１と共通する部分（画像入力部５０２、顔特徴点検出部５０３、顔中心座標計算部５０４、速度ベクトル算出部５０５、記憶部５０７、反復動作判定部５０９、頷き横振り判定部５１０）については説明を省略する。
【０１８９】
ピーク速度ベクトル検出部５０６は、速度ベクトル算出部５０５から送られてくる顔中心点の動きの速度ベクトルを用いて、速度ベクトルの大きさが所定の閾値よりも大きく、かつ極大となる時刻の速度ベクトル（ピーク速度ベクトル）を検出する。ここで、速度ベクトルの大きさが極大となる時刻とは、その時刻の速度ベクトルの大きさが局所的に最大、すなわちその時刻のまわりの適当な範囲内で最大となる時刻をいう。したがって、ピーク速度ベクトルは、速度ベクトルの時系列データを｛Ｖ1，Ｖ2，・・・，Ｖf，・・・｝と表した場合に、例えば、（１９）式に示される条件を満たすフレームの速度ベクトルとして求めることができる。
【０１９０】
【数１９】
2005352531.tif 000021
【０１９１】
ここで、ＴＨVは、あらかじめ定めた速度ベクトルの大きさの閾値である。
【０１９２】
なお、（１９）式では、連続した３つのフレームの速度ベクトルの大きさを比較してピーク速度ベクトルを求めているが、連続する複数のフレームの速度ベクトルの大きさが等しい場合を考慮して、（２０）式に示される条件を満たす、大きさの等しい連続したフレームの速度ベクトルを求め、そのうちの一つをピーク速度ベクトルとしてもよい。
【０１９３】
【数２０】
2005352531.tif 000022
【０１９４】
また、（１９）式では、連続した３つのフレームの速度ベクトルのうち、その大きさが最大のものをピーク速度ベクトルとしているが、Ｖf-1やＶf+1のように、その大きさが局所的に、ほぼ最大となる時刻の速度ベクトルをピーク速度ベクトルとしても、本発明の趣旨の範囲内である。
【０１９５】
このようにして、ピーク速度ベクトル検出部５０６で検出されたピーク速度ベクトルは、記憶部５０７に送られ、時系列データとして記憶部５０７に記憶される。
【０１９６】
往復運動判定部５０８は、記憶部５０７に記憶されたピーク速度ベクトルを順次読み出して、その読み出したピーク速度ベクトルから顔中心点が往復運動を行っているか否かを判定する。
【０１９７】
ここで、頭の縦振り（頷き）動作を例に取ると、頷き動作においては、顔中心点の動きの速度ベクトルの大きさの時間変化は、図３５のようになる。したがって、速度ベクトルの大きさに対する閾値ＴＨVを適切に定めれば、図３５に示すように、１回の頷き動作の中で、顔中心点の下方向への運動中（Ｔ１）と上方向への運動中（Ｔ２）に、それぞれ１回ずつピーク速度ベクトル検出部５０６においてピーク速度ベクトルが検出され、記憶部５０７に順番に記憶されることになる。
【０１９８】
また、このようにして記憶部５０７に記憶された時刻Ｔ１，Ｔ２におけるピーク速度ベクトルの向きは、時刻Ｔ１においては下向き、時刻Ｔ２において上向きであるから、両者の速度ベクトルが形成する交角を計算すると１８０度に近くなる。
【０１９９】
そこで、記憶部５０７に記憶された連続する２つのピーク速度ベクトル間の交角を計算し、その交角が１８０度に近い場合には、顔中心点が往復運動を行ったと判断、すなわち頷き動作が行われたと判定することができる。
【０２００】
このように、第５の実施形態に係わるジェスチャ検出システムによれば、顔中心点の動きの速度ベクトルが所定の閾値よりも大きく、かつ極大となる時刻の速度ベクトルをピーク速度ベクトルとして検出して、顔中心点が往復運動や反復運動を行っているか否かを判定することにより、被写体である人物のジェスチャを高精度かつ頑健かつ高速に検出することができる。
【実施例６】
【０２０１】
実施例１では、速度ベクトル算出部１０５で算出される速度ベクトルの大きさが所定の閾値よりも大きい区間を、動作区間検出部１０６で検出していた。
【０２０２】
実施例６では、顔中心座標計算部１０４で得られる顔中心座標の時系列データを用いて、動作区間を検出する方法について説明する。
【０２０３】
図３６は、本発明の第６の実施形態に係わるジェスチャ検出方法を実現するためのジェスチャ検出システムの一例を示す構成図である。
【０２０４】
この第６の実施形態に係わるジェスチャ検出システム６０１は、画像入力部６０２、顔特徴点検出部６０３、顔中心座標計算部６０４、速度ベクトル算出部６０５、動作区間検出部６０６、代表速度ベクトル算出部６０７、記憶部６０８、往復動作判定部６０９、反復動作判定部６１０、頷き横振り判定部６１１を備えている。これらの各構成要素の一部または全部は、ハードウェアによって構成しても良いし、ソフトウェアによって構成しても良い。
【０２０５】
次に、第６の実施形態に係わるジェスチャ検出システム６０１の構成と動作について説明する。なお、以下では第１の実施形態に係わるジェスチャ検出システム１０１と共通する部分（画像入力部６０２、顔特徴点検出部６０３、記憶部６０８、往復動作判定部６０９、反復動作判定部６１０、頷き横振り判定部６１１）については説明を省略する。
【０２０６】
顔中心座標計算部６０４では、顔特徴点検出部６０３から送られてくる右の鼻孔の座標と左の鼻孔の座標から顔中心座標を計算して、これを速度ベクトル算出部６０５および動作区間検出部６０６に送る。
【０２０７】
速度ベクトル算出部６０５は、顔中心座標計算部６０４から送られてくる顔中心座標から、フレームごとに顔中心点の動きの速度ベクトルを計算する。次に速度ベクトル算出部６０５で求められた速度ベクトルは、代表速度ベクトル算出部６０７に送られる。
【０２０８】
動作区間検出部６０６は、顔中心座標計算部６０４から送られてくる顔中心座標の時系列データから、顔中心座標の単位時間当たりの変位の大きさが所定の閾値よりも大きい区間を動作区間として検出する。すなわち、第ｆフレームの顔中心座標を（ｘf，ｙf）と表すと、動作区間検出部６０６は、例えば、（２１）式で表される条件を満たすフレームｆによって構成された連続する区間を動作区間として検出する。
【０２０９】
【数２１】
2005352531.tif 000023
【０２１０】
ここでｎは、顔中心座標の変位を計算する２つのフレーム間の間隔を表すパラメータである。またΔｔは単位時間を表し、第ｆフレームが撮影された時間と第ｆ＋ｎフレームが撮影された時間の時間間隔である。また、ＴＨPは、あらかじめ定めた顔中心座標の単位時間あたりの変位の大きさに対する閾値である。
【０２１１】
なお、各フレームで単位時間Δｔを一定に保って単位時間あたりの変位の大きさを求める場合には、（２２）式を用いて動作区間を検出してもよい。
【０２１２】
【数２２】
2005352531.tif 000024
【０２１３】
さらに、各フレーム間の変位の軌跡を考慮して、（２３）式を用いて動作区間を検出してもよい。
【０２１４】
【数２３】
2005352531.tif 000025
【０２１５】
このようにして動作区間検出部６０６で検出された動作区間は、代表速度ベクトル算出部６０７に送られる。
【０２１６】
代表速度ベクトル算出部６０７は、動作区間検出部６０６で検出された各動作区間について、速度ベクトル算出部６０５から送られた速度ベクトルのうち、その動作区間に含まれる速度ベクトルから代表速度ベクトルを算出する。
【０２１７】
このように、第６の実施形態に係わるジェスチャ検出システムによれば、顔中心点の単位時間当たりの変位の大きさから動作区間を検出することができ、第１の実施形態に係わるジェスチャ検出システムと同様に、被写体である人物の頷き動作または頭の横振り動作およびこれらの反復動作であるジェスチャを高精度かつ頑健かつ高速に検出することができる
【図面の簡単な説明】
【０２１８】
【図１】本発明の第１の実施形態に係わるジェスチャ検出システムの構成を示すブロック図。
【図２】第１の実施形態の顔特徴点の２次元座標を示す図。
【図３】第１の実施形態の頷き動作における顔中心点の動きを示す図。
【図４】第１の実施形態の頷き動作における速度ベクトル間の交角を示す図。
【図５】第１の実施形態の頷き動作における顔中心点の速度ベクトルの大きさの時間変化と動作区間を示す図。
【図６】第１の実施形態の頷き動作とはいえない動作における顔中心点の動きを示す図。
【図７】第１の実施形態の頷き動作とはいえない動作における速度ベクトル間の交角を示す図。
【図８】第１の実施形態の傾いた頷き動作における顔中心点の動きを示す図。
【図９】第１の実施形態の傾いた頷き動作における速度ベクトル間の交角を示す図。
【図１０】第１の実施形態の頭の横振り動作における顔中心点の動きを示す図。
【図１１】第１の実施形態の頷き動作を反復して行った場合における顔中心点の動きを示す図。
【図１２】第１の実施形態の頷き動作を反復して行った場合の顔中心点の速度ベクトルの大きさの時間変化を示す図。
【図１３】第１の実施形態の頷き動作を反復して行った場合の代表速度ベクトル間の交角を示す図。
【図１４】第１の実施形態の代表速度ベクトルの一例を示す図。
【図１５】第１の実施形態の頷き横振り判定部の動作例を説明するための図。
【図１６】第１の実施形態に係わるジェスチャ検出システムの処理の動作を示すフローチャート。
【図１７】本発明の第２の実施形態に係わるジェスチャ検出システムの構成を示すブロック図。
【図１８】第２の実施形態の顔特徴点の２次元座標を示す図。
【図１９】第２の実施形態の顔向き座標（ψ，φ）を示す図。
【図２０】第２の実施形態のｙMaxを説明するための図。
【図２１】第２の実施形態の頷き動作における顔向きの変化を示す図。
【図２２】第２の実施形態の頷き動作における顔向きの角速度ベクトルを示す図。
【図２３】第２の実施形態の頷き動作における顔向きの角速度ベクトルの大きさの時間変化を示す図。
【図２４】第２の実施形態の頷き動作とはいえない動作の顔向きの角速度ベクトルを示す図。
【図２５】第２の実施形態の傾いた頷き動作における顔向きの角速度ベクトルを示す図。
【図２６】第２の実施形態の頭の横振り動作における顔向きの角速度ベクトルを示す図。
【図２７】第２の実施形態の頷き動作を反復して行った場合の顔向きの変化を示す図。
【図２８】第２の実施形態の頷き動作を反復して行った場合の顔向きの角速度ベクトルの大きさの時間変化を示す図。
【図２９】本発明の第３の実施形態に係わるジェスチャ検出システムの構成を示すブロック図。
【図３０】第３の実施形態の頷き動作における顔中心点の速度ベクトルの大きさの時間変化と動作開始時刻を示す図。
【図３１】本発明の第４の実施形態に係わるジェスチャ検出システムの構成を示すブロック図。
【図３２】第４の実施形態における速度ベクトルの大きさの時間変化と静止区間および動作区間の関係を示す図。
【図３３】第４の実施形態の頷き動作における顔中心点の速度ベクトルの大きさの時間変化と静止区間および動作区間を示す図。
【図３４】本発明の第５の実施形態に係わるジェスチャ検出システムの構成を示すブロック図。
【図３５】第５の実施形態の頷き動作における顔中心点の速度ベクトルの大きさの時間変化と速度ベクトルが極大になる時刻を示す図。
【図３６】本発明の第６の実施形態に係わるジェスチャ検出システムの構成を示すブロック図。
【符号の説明】
【０２１９】
１０１、２０１、３０１、４０１、５０１、６０１・・・ジェスチャ検出システム
１０２、２０２、３０２、４０２、５０２、６０２・・・画像入力部
１０３、２０３、３０３、４０３、５０３、６０３・・・顔特徴点検出部
１０４、３０４、４０４、５０４、６０４・・・顔中心座標計算部
１０５、３０５、４０５、５０５、６０５・・・速度ベクトル算出部
１０６、２０６、６０６・・・動作区間検出部
１０７、３０７、４０７、６０７・・・代表速度ベクトル検出部
１０８、２０８、３０８、４０８、５０７、６０８・・・記憶部
１０９、２０９、３０９、４０９、５０８、６０９・・・往復運動判定部
１１０，２１０、３１０、４１０、５０９、６１０・・・反復運動判定部
１１１，２１１、３１１、４１１、５１０、６１１・・・頷き横振り判定部
２０４・・・顔向き座標計算部
２０５・・・角速度ベクトル算出部
２０７・・・代表角速度ベクトル検出部
３０６・・・動作開始時刻検出部
４０６・・・静止区間検出部
５０６・・・ピーク速度ベクトル検出部
【図１】
2005352531.tif 000026
【図２】
2005352531.tif 000027
【図３】
2005352531.tif 000028
【図４】
2005352531.tif 000029
【図５】
2005352531.tif 000030
【図６】
2005352531.tif 000031
【図７】
2005352531.tif 000032
【図８】
2005352531.tif 000033
【図９】
2005352531.tif 000034
【図１０】
2005352531.tif 000035
【図１１】
2005352531.tif 000036
【図１２】
2005352531.tif 000037
【図１３】
2005352531.tif 000038
【図１４】
2005352531.tif 000039
【図１５】
2005352531.tif 000040
【図１６】
2005352531.tif 000041
【図１７】
2005352531.tif 000042
【図１８】
2005352531.tif 000043
【図１９】
2005352531.tif 000044
【図２０】
2005352531.tif 000045
【図２１】
2005352531.tif 000046
【図２２】
2005352531.tif 000047
【図２３】
2005352531.tif 000048
【図２４】
2005352531.tif 000049
【図２５】
2005352531.tif 000050
【図２６】
2005352531.tif 000051
【図２７】
2005352531.tif 000052
【図２８】
2005352531.tif 000053
【図２９】
2005352531.tif 000054
【図３０】
2005352531.tif 000055
【図３１】
2005352531.tif 000056
【図３２】
2005352531.tif 000057
【図３３】
2005352531.tif 000058
【図３４】
2005352531.tif 000059
【図３５】
2005352531.tif 000060
【図３６】
2005352531.tif 000061