JP2008140101A - 無制約、リアルタイム、かつマーカ不使用の手トラッキング装置 - Google Patents
無制約、リアルタイム、かつマーカ不使用の手トラッキング装置 Download PDFInfo
- Publication number
- JP2008140101A JP2008140101A JP2006325202A JP2006325202A JP2008140101A JP 2008140101 A JP2008140101 A JP 2008140101A JP 2006325202 A JP2006325202 A JP 2006325202A JP 2006325202 A JP2006325202 A JP 2006325202A JP 2008140101 A JP2008140101 A JP 2008140101A
- Authority
- JP
- Japan
- Prior art keywords
- hand
- particle
- shape
- model
- probability
- 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
Images
Landscapes
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
【課題】無制約でマーカを用いない、人の手の動きをリアルタイムで取得する装置を提供する。
【解決手段】手トラッカ90は、3次元手モデル116の記憶部と、肌色バイナリマップ140とエッジ画像142とを抽出する画像プロセッサ104と、肌色バイナリマップ140とエッジ画像142とに基づき、手モデル116にパーティクルフィルタ処理を適用して現フレーム102中の手の姿勢と位置とを推定するパーティクルフィルタユニット108及び110と、推定結果により手モデル116を更新する組合せ及び更新モジュール112及び114とを含む。パーティクルフィルタユニット108及び110はzバッファを含み、パーティクル形状のzバッファ投影画像を肌色マップ140及びエッジ画像142と比較することによって、パーティクル形状の確率を計算する。
【選択図】 図9
【解決手段】手トラッカ90は、3次元手モデル116の記憶部と、肌色バイナリマップ140とエッジ画像142とを抽出する画像プロセッサ104と、肌色バイナリマップ140とエッジ画像142とに基づき、手モデル116にパーティクルフィルタ処理を適用して現フレーム102中の手の姿勢と位置とを推定するパーティクルフィルタユニット108及び110と、推定結果により手モデル116を更新する組合せ及び更新モジュール112及び114とを含む。パーティクルフィルタユニット108及び110はzバッファを含み、パーティクル形状のzバッファ投影画像を肌色マップ140及びエッジ画像142と比較することによって、パーティクル形状の確率を計算する。
【選択図】 図9
Description
この発明は人の手のトラッキングシステムに関し、特に、効果的な、無制約のリアルタイム、マーカ不使用の、人の手のトラッキングシステムに関する。
自然な方法で人と相互に交流しあうように設計されたロボットにはいずれも、無制約の手トラッカが必要である。ヒューマノイドがマーカ不使用の手トラッカを用いて示すことができる能力は、スキルの学習、目と手との協調を介して人にものを渡したり交換したりするといった、人との相互交流に関する対話的な模倣、及び身振りの理解が可能になること、等に及ぶ。人はまたこのシステムを用いて、指さすことでロボットの注意を引くことができる。手トラッカシステムは、これらの課題において必要なものに対する解決を与えようとするものである。
マーカを用いる、グローブ(手ぶくろ)を用いる手トラッカは十分に検討されてきた。これらの技術は通常、良好なトラッキング結果をもたらす。我々が目指す応用では、ロボットは自然な環境でいかなるランダムな手もトラックできなければならないので、固定したマーカ等の何らかの準備を当てにすることはできない。このため、マーカを使わない解決策をとることとした。
マーカ不使用の手トラッキングは通常、映像入力ストリームを解釈することにより行なう。撮影されたフレームから手がかりを探す。よく用いられる手がかりは手の輪郭であって、これは入力フレームにエッジフィルタを適用することで見出すことができる。別の手がかりは目に見える手の面であって、これは肌の色をフィルタ処理することで抽出できる。トラッカによって推定された手の形状を入力画像の手がかりと比較し、予め定められた身振りの確率を得る。手がかりとの比較には、姿勢データベースまたは3D手モデルの投影モデルを用いる。
予め定義された手の姿勢を認識するという問題は、通常、姿勢データベースを用いるシステムによって解決される。一例は、非特許文献1に開示された外観ベースの身振り認識であり、これは隠れマルコフモデルを用いて手話データベース中の身振りを検出する。
本件発明の目的により近いのは、最近非特許文献2においてエロルが十分に検討している、複数自由度の手トラッカである。この検討においては、3つのカテゴリによって区別される、この分野での最近の展開が示されている。すなわち、単一フレーム推定器、単一仮説推定器及び複数仮説推定器である。
[単一フレーム推定器]
第1のカテゴリは、前のフレームの先行する知識に依存しない、単一フレームの姿勢推定器である。可能な解決策の一つは、運動学的なパラメータでラベル付けされた一組のテンプレート上でのグローバルな検索である。非特許文献3では、これらのテンプレートが3D手モデルを用いて生成され、ツリー構造で記憶される。姿勢を検出するために、ツリーが先行する知識無しで探索される。
第1のカテゴリは、前のフレームの先行する知識に依存しない、単一フレームの姿勢推定器である。可能な解決策の一つは、運動学的なパラメータでラベル付けされた一組のテンプレート上でのグローバルな検索である。非特許文献3では、これらのテンプレートが3D手モデルを用いて生成され、ツリー構造で記憶される。姿勢を検出するために、ツリーが先行する知識無しで探索される。
これらのシステムは前のフレームから独立しているため、前のフレームのトラッキング誤差からの修復を必要とせず、この結果、頑健な挙動が得られる。しかし、テンプレートデータベースを構築することが必要であるため、システムの表現に対する性能は、姿勢の離散的なサブセットに制限されてしまい、これは本件発明の無制約のトラッキングという目標と矛盾する。グローバルな検索は、非常に大きな計算コストがかかる。トラッキングのために連続した関節空間を用いることは、リアルタイムのシステムでは現実的でない。多数のフレームにわたってトラッキングを行なうことにより、形状空間内で局部的な検索が行なわれるのみとなるため、より少ない資源しか用いないシステムを実現できる。
[単一仮説推定器]
第2のカテゴリは、前の推定から得られた単一の仮説を先行知識として用いる手トラッカを含む。画像から抽出された手がかりにあるモデルを当てはめるために最もよく用いられる方策は、標準的な最適化技術を用いることである。
第2のカテゴリは、前の推定から得られた単一の仮説を先行知識として用いる手トラッカを含む。画像から抽出された手がかりにあるモデルを当てはめるために最もよく用いられる方策は、標準的な最適化技術を用いることである。
非特許文献4では、分割統治(divide−and−conquer)の方策が提案されている。第1に、手の全体の動きが推定され、次いで関節角度を推定する。この手順が、収束するまで繰返し適用される。単一仮説のトラッキング問題を解くために、カルマンフィルタもまた用いられている。非特許文献5では、アンセンテッド(unscented)カルマンフィルタ(UKF)を用いて手をトラッキングしている。
これらのシステムは勾配検索を用いているため、局所的最小値にしか到達できず、グローバルな最小値に到達しないためにトラッキング誤差を生ずる危険性が常にある。
[複数仮説推定器]
単一仮説トラッカに対して、複数仮説トラッカはシーケンスをトラッキングしつつ、複数のポーズ推定を継続しようとする。これによって、最小値に達するチャンスが増大する。この思想は、現在のフレームまでの状態の確率分布を保持するベイズフィルタ処理というフレームワークで最も良く実現される。再帰的ベイズフィルタを実現するよく知られた技術の一つがパーティクルフィルタである。
単一仮説トラッカに対して、複数仮説トラッカはシーケンスをトラッキングしつつ、複数のポーズ推定を継続しようとする。これによって、最小値に達するチャンスが増大する。この思想は、現在のフレームまでの状態の確率分布を保持するベイズフィルタ処理というフレームワークで最も良く実現される。再帰的ベイズフィルタを実現するよく知られた技術の一つがパーティクルフィルタである。
パーティクルフィルタ処理はまた、非特許文献6でマイケル・イサード及びアンドルー・ブレークによって紹介された凝縮(Condensation)アルゴリズムとしても知られている。凝縮アルゴリズムは、散乱において曲線をトラッキングするように設計されている。カルマンフィルタは、択一的な仮説を同時に表すことのできないガウス密度に基づいているため、このような作業には不適である。
パーティクルとは、ある対(sn,Πn)であって、snはパーティクルnの形状ベクトルであり、Πnはこの形状の確率である。手トラッカについて、各パーティクルは形状ベクトルとその確率とからなり、形状ベクトルの値の各々は運動学的な手モデルの角度又は平行移動を表す。従ってベクトルの次元は手の運動のDOF(Degree−Of−Freedom:自由度)の数と等しくなる。Πnはsnの状態を評価することによって計算される。これは、映像フレームの目に見える面又はエッジ等の異なる手がかりを検索することでなされる。この実施例では、手画像の目に見える面とエッジとの両者を用いた。確率分布はパーティクルの組S=(s1,Π1),…,(sN,ΠN)によってモデル化される。
パーティクルフィルタの繰返しごとの主なステップは、最後の繰返しの組St−1からのパーティクルの組Stをサンプリングするステップと、snの各々を評価してその確率Πnを得るステップと、重み平均smeanを計算するステップとを含む。smeanは、現在仮定されている手の姿勢の推定を表す。
P.ドルー、「外観ベースの身振り認識」学位論文、RWTHアーヘン大学、アーヘン、ドイツ、2005年1月(P. Dreuw, "Appearance-based gesture recognition," Diploma Thesis, RWTH Aachen University, Aachen, Germany, January 2005.) A.エロル、G.ベービス、M.ニコレスク、R.D.ボイル及びX.トムブリー、「視界ベースの完全dofの手の動き推定に関する検討」CVPR’05、コンピュータビジョン及びパターン認識に関する2005年IEEEコンピュータソサエティ会議予稿集、(CVPR’05)−ワークショップ。ワシントンDC、アメリカ合衆国、IEEEコンピュータソサエティ、2005、75ページ(A. Erol, G. Bebis, M. Nicolescu, R. D. Boyle, and X. Twombly, "A review on vision-based full dof hand motion estimation," in CVPR ’05: Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR’05) -Workshops. Washington, DC, USA: IEEE Computer Society, 2005, p. 75.) B.ステンガー、A.タヤナンタン、P.トル、及びR.シポラ、「階層的検出を用いた手の姿勢推定」2004年。[オンライン]、citeseer.ist.psu.edu/stenger04hand.htmlで入手可能(B. Stenger, A. Thayananthan, P. Torr, and R. Cipolla, "Hand pose estimation using hierarchical detection," 2004. [Online]. Available: citeseer.ist.psu.edu/stenger04hand.html.) Y.ウー及びT.S.ヒュアン、「多関節の人の手の動きキャプチャ:分断攻略の方策」、ICCV(IEEEコンピュータビジョンに関する国際会議)’99、第1巻、606ページ、1999年( Y. Wu and T. S. Huang, "Capturing articulated human hand motion: A divide-and-conquer approach," ICCV (IEEE International Conference On Computer Vision) '99, vol. 01, p. 606, 1999.) B.ステンガー、P.R.S.メンドンカ、及びR.シポラ、「多関節の手のモデルベースの3dトラッキング」、CVRP(コンピュータビジョン及びパターン認識に関するIEEE会議)、第2巻、310ページ、2001年( B. Stenger, P. R. S. Mendonca, and R. Cipolla, "Model-based 3d tracking of an articulated hand," CVPR (IEEE Conference on Computer Vision and Pattern Recognition), vol. 02, p. 310, 2001.) M.イサード及びA.ブレーク、「凝縮―視覚的トラッキングのための条件付き濃度伝播」、コンピュータビジョン国際ジャーナル、第29巻第1号、5−28ページ、1998年。[オンライン]、citeseer.ist.psu.edu/isard98condensation.htmlで入手可能(M.Isard and A. Blake, "Condensation - conditional density propagation for visual tracking," International Journal of Computer Vision, vol. 29, no. 1, pp. 5-28, 1998. [Online]. Available: citeseer.ist.psu.edu/isard98condensation.html.) J.リー及びT.L.クニイ、「手の姿勢のモデルベース分析」、IEEEコンピュータグラフィック及びアプリケーション、第15巻、第5号、77−86ページ、1995年(J. Lee and T. L. Kunii, "Model-based analysis of hand posture," IEEE Computer Graphics and Applications, vol. 15, no. 5, pp. 77-86, 1995.) N.シマダ、K.キムラ及びY.シライ、「単眼カメラを用いた2−d外観取得に基づくリアルタイムの3−d手姿勢推定」、RATFG−RTS(リアルタイムシステムにおける顔及び身振りの認識、分析及びトラッキングに関する国際ワークショップ)、第00巻、0023ページ、2001年(N. Shimada, K. Kimura, and Y. Shirai, "Real-time 3-d hand posture estimation based on 2-d appearance retrieval using monocular camera," RATFG-RTS (International Workshop on Recognition, Analysis, and Tracking of Faces and Gestures in Real-Time Systems), vol. 00, p. 0023, 2001.) A.ウデ、V.ワイアート、M.リン及びG.チェン、「ヒューマノイドロボットの視覚注目点の分布」、IEEE−RAS/RSJヒューマノイドロボットに関する国際会議(Humanoids 2005)、2005年( A. Ude, V. Wyart, M. Lin, and G. Cheng, "Distributed visual attention on a humanoid robot," in IEEE-RAS/RSJ International Conference on Humanoid Robots (Humanoids 2005), 2005.) J.ドイッチャー、A.ブレーク及びI.リード、「アニールされたパーティクルフィルタ処理によってキャプチャされた多関節の体の動き」CVPR、第02巻、2126ページ、2000年(J. Deutscher, A. Blake, and I. Reid, "Articulated body motion capture by annealed particle filtering," CVPR, vol. 02, p. 2126, 2000.)
P.ドルー、「外観ベースの身振り認識」学位論文、RWTHアーヘン大学、アーヘン、ドイツ、2005年1月(P. Dreuw, "Appearance-based gesture recognition," Diploma Thesis, RWTH Aachen University, Aachen, Germany, January 2005.) A.エロル、G.ベービス、M.ニコレスク、R.D.ボイル及びX.トムブリー、「視界ベースの完全dofの手の動き推定に関する検討」CVPR’05、コンピュータビジョン及びパターン認識に関する2005年IEEEコンピュータソサエティ会議予稿集、(CVPR’05)−ワークショップ。ワシントンDC、アメリカ合衆国、IEEEコンピュータソサエティ、2005、75ページ(A. Erol, G. Bebis, M. Nicolescu, R. D. Boyle, and X. Twombly, "A review on vision-based full dof hand motion estimation," in CVPR ’05: Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR’05) -Workshops. Washington, DC, USA: IEEE Computer Society, 2005, p. 75.) B.ステンガー、A.タヤナンタン、P.トル、及びR.シポラ、「階層的検出を用いた手の姿勢推定」2004年。[オンライン]、citeseer.ist.psu.edu/stenger04hand.htmlで入手可能(B. Stenger, A. Thayananthan, P. Torr, and R. Cipolla, "Hand pose estimation using hierarchical detection," 2004. [Online]. Available: citeseer.ist.psu.edu/stenger04hand.html.) Y.ウー及びT.S.ヒュアン、「多関節の人の手の動きキャプチャ:分断攻略の方策」、ICCV(IEEEコンピュータビジョンに関する国際会議)’99、第1巻、606ページ、1999年( Y. Wu and T. S. Huang, "Capturing articulated human hand motion: A divide-and-conquer approach," ICCV (IEEE International Conference On Computer Vision) '99, vol. 01, p. 606, 1999.) B.ステンガー、P.R.S.メンドンカ、及びR.シポラ、「多関節の手のモデルベースの3dトラッキング」、CVRP(コンピュータビジョン及びパターン認識に関するIEEE会議)、第2巻、310ページ、2001年( B. Stenger, P. R. S. Mendonca, and R. Cipolla, "Model-based 3d tracking of an articulated hand," CVPR (IEEE Conference on Computer Vision and Pattern Recognition), vol. 02, p. 310, 2001.) M.イサード及びA.ブレーク、「凝縮―視覚的トラッキングのための条件付き濃度伝播」、コンピュータビジョン国際ジャーナル、第29巻第1号、5−28ページ、1998年。[オンライン]、citeseer.ist.psu.edu/isard98condensation.htmlで入手可能(M.Isard and A. Blake, "Condensation - conditional density propagation for visual tracking," International Journal of Computer Vision, vol. 29, no. 1, pp. 5-28, 1998. [Online]. Available: citeseer.ist.psu.edu/isard98condensation.html.) J.リー及びT.L.クニイ、「手の姿勢のモデルベース分析」、IEEEコンピュータグラフィック及びアプリケーション、第15巻、第5号、77−86ページ、1995年(J. Lee and T. L. Kunii, "Model-based analysis of hand posture," IEEE Computer Graphics and Applications, vol. 15, no. 5, pp. 77-86, 1995.) N.シマダ、K.キムラ及びY.シライ、「単眼カメラを用いた2−d外観取得に基づくリアルタイムの3−d手姿勢推定」、RATFG−RTS(リアルタイムシステムにおける顔及び身振りの認識、分析及びトラッキングに関する国際ワークショップ)、第00巻、0023ページ、2001年(N. Shimada, K. Kimura, and Y. Shirai, "Real-time 3-d hand posture estimation based on 2-d appearance retrieval using monocular camera," RATFG-RTS (International Workshop on Recognition, Analysis, and Tracking of Faces and Gestures in Real-Time Systems), vol. 00, p. 0023, 2001.) A.ウデ、V.ワイアート、M.リン及びG.チェン、「ヒューマノイドロボットの視覚注目点の分布」、IEEE−RAS/RSJヒューマノイドロボットに関する国際会議(Humanoids 2005)、2005年( A. Ude, V. Wyart, M. Lin, and G. Cheng, "Distributed visual attention on a humanoid robot," in IEEE-RAS/RSJ International Conference on Humanoid Robots (Humanoids 2005), 2005.) J.ドイッチャー、A.ブレーク及びI.リード、「アニールされたパーティクルフィルタ処理によってキャプチャされた多関節の体の動き」CVPR、第02巻、2126ページ、2000年(J. Deutscher, A. Blake, and I. Reid, "Articulated body motion capture by annealed particle filtering," CVPR, vol. 02, p. 2126, 2000.)
信頼性のある手トラッカが必要とされているため、第3のカテゴリの方法は単一仮説のトラッカに比べてより有望であるように思われる。しかし、これらは計算に関してより高価である。自然なやり方で人と相互に交流するように設計されたロボットはどれもリアルタイムのトラッキング能力を要するため、第3のカテゴリの効果的な手トラッキング装置が必要である。
従って、この発明の目的の一つは、無制約、リアルタイム、マーカ不使用の、複数仮説推定器型の手トラッキングシステムであって、人の手の動きをリアルタイムで効果的かつ信頼性をもってキャプチャする装置を提供することである。
この発明の第1の局面に従えば、パーティクルフィルタ処理を用いて映像シーケンスにおける手のトラッキングを行なうための手トラッキング装置は、3次元の手モデルを記憶するための記憶手段と、映像シーケンスの現在のフレームから手の姿勢の手がかりを抽出するための手がかり抽出手段と、手がかりと現在の3次元の手モデル形状とにパーティクルフィルタ処理を施して現在のフレーム中の手の姿勢を推定するための推定手段と、推定手段によって推定された姿勢を用いて3次元の手モデル形状を更新する手段とを含む。
前記推定手段は、3次元の手モデルにランダムノイズを付加して3次元の手モデルの形状を表す予め定められた数のパーティクルを生成する手段と、パーティクルの各々に対しzバッファ画像を生成するためのzバッファ処理手段とを含む。zバッファ画像は3次元の手モデルの、映像シーケンスを出力する画像キャプチャ装置の画像面への投影である。前記推定手段はさらに、手がかりとzバッファ画像とに基づいて、手の形状の各々の確率を計算するための確率計算手段と、パーティクルのそれぞれの確率を、手形状のそれぞれの重みとして用いて、手形状について計算された手形状の重み合計を計算するための加重合計手段と、を含む。
3次元の手モデルは記憶手段に予め記憶される。手の姿勢の手がかりが映像シーケンスの現在のフレームから手がかり抽出手段によって抽出される。肌色の面及び/又はエッジが手がかりとして使用される。推定手段は3次元手モデルと手がかりとにパーティクルフィルタ処理を施して現在のフレームにおける手の姿勢を推定する。3次元手モデル形状は推定された姿勢によって更新される。
推定手段では、予め定められた数のパーティクル形状が生成される。手形状の各々について、投影のzバッファ画像が生成される。手がかりをzバッファ画像と比較することによって、推定手段は手形状の確率を計算することができる。推定された手の姿勢の加重合計により、3次元手モデル形状が更新される。
確率の計算にzバッファ画像が用いられるので、隠れた部分ではなく可視部分のみが検索される。従って、迅速にトラッキングを行なうことができ、リアルタイムのトラッキングが可能となる。
好ましくは、3次元の手モデルは掌部分と指部分とを含む。確率計算手段は指パーティクルの第1の部分の確率を計算するための第1の評価手段を含む。第1の部分のパーティクル形状の指部分の各々は3次元モデルの現在の指部分と置換えられている。確率計算手段はさらに、パーティクルの第2の部分の確率を計算するための第2の評価手段を含む。第2の部分のパーティクルの掌部分の各々は3次元モデルの現在の掌部分と置換えられている。加重合計手段はそれぞれの確率を重みとして用いて、指形状の第1の部分の加重合計を計算するための第1の合計手段と、それぞれの確率を重みとして用いて、手形状を表すパーティクルの第2の部分の加重合計を計算するための第2の合計手段と、を含む。組合せ手段は、第1の合計手段によって出力された加重合計の掌部分と、第2の合計手段によって出力された加重合計の指部分とを組合せるための手段を含む。
第1の評価手段は指形状を表すパーティクルの第1の部分の確率を計算する。第1の部分のパーティクル形状の指部分が手モデルの現在の指部分と置換されているので、確率の計算においては掌部分のみが考慮される。同様に、第2の評価手段はパーティクルの第2の部分の確率を計算する。第2の部分のパーティクル形状の掌部分が、手モデルの現在の掌部分と置換されているので、確率の計算においては指部分のみが考慮される。このようにして、掌部分の姿勢の加重合計が第1の評価手段の出力に基づいて計算される。指の姿勢の加重合計は第2の評価手段の出力に基づいて計算される。これらの結果を組合せることにより、手全体の姿勢が推定される。
検索空間が2つの空間(掌部分及び指部分)に分解されるので、計算のコストが実質的に減じられ、リアルタイムのトラッキングが実現可能になる。
より好ましくは、第1の評価手段は並列に動作可能な複数の第1の計算ユニットによって実現される。複数の第1の計算ユニットの各々は手形状の第1の部分(指形状)の一部の確率を計算するようにプログラムされる。
さらに好ましくは、第2の評価手段は並列に動作可能な複数の第2の計算ユニットによって実現される。複数の第2の計算ユニットの各々はパーティクル形状の第2の部分の一部の確率を計算するようにプログラムされる。
各パーティクルでの、計算コストのかかる評価が他のパーティクル全てから独立しているので、これらを複数のコンピュータで並列に行なうことができる。従って、繰返しごとに必要とされる時間を減じることができ、リアルタイムのトラッキングが実現可能となる。
<特徴>
[手トラッカの実現例]
A.無制約のトラッキング
パーティクルフィルタが有望と思われるのは、計算コストがパーティクルのバランスのとれた並列実行で説明できるからである。なぜなら、コストが増加する時そのコストは独立した確率計算という形で生じるからである。従って、この発明の第1の実施の形態は、手の姿勢を推定するのにパーティクルフィルタを用いる。人の手のDOFは比較的大きいので、検索空間が広くなりがちである。従ってこの実施の形態では、検索空間を2つに分解する。すなわち、手と指とである。手の姿勢と指の姿勢とを別々に推定した後、装置はこれらを組合せて、手全体の新たな姿勢を得る。
[手トラッカの実現例]
A.無制約のトラッキング
パーティクルフィルタが有望と思われるのは、計算コストがパーティクルのバランスのとれた並列実行で説明できるからである。なぜなら、コストが増加する時そのコストは独立した確率計算という形で生じるからである。従って、この発明の第1の実施の形態は、手の姿勢を推定するのにパーティクルフィルタを用いる。人の手のDOFは比較的大きいので、検索空間が広くなりがちである。従ってこの実施の形態では、検索空間を2つに分解する。すなわち、手と指とである。手の姿勢と指の姿勢とを別々に推定した後、装置はこれらを組合せて、手全体の新たな姿勢を得る。
身振りの見え方を学習する身振り認識システムは、特化した手トラッカの一例である。このようなシステムはそのドメインにおいては良好な性能を発揮するが、これは任意の手形状をトラッキングするように設計されてはいない。ヒューマノイドロボットに、人為的な制限を導入することなく人と自然な相互交流を行なわせたい。そのため、ここでの方策は、トラッキングされた手形状を偏りなく表現できるようにすることであり、それによって我々のヒューマノイドの挙動モジュールが、手の動きに反応しかつこれを解釈することが可能になる。これは、模倣、注意を引くこと、及び意図の推定、目と手との強調、身振りの認識といった、異なる要件の様々な課題の基礎として用いることができる。
この目標を達成するために、この実施の形態では非特許文献7に開示されたのと同様のモデルを用いた、モデルベースの方策を選択した。3Dの手モデルを形状表現のための手段として用いることにより、予め決められた、手の姿勢の集合に制限されることがなくなる。非特許文献8においてシマダは3Dの手モデルを用いて手姿勢テンプレートのラベル付データベースを構築しており、これはその後、手の動きをトラッキングするのに用いられている。この方策の結果主として得られるのは、離散的な運動学的パラメータが付された手の姿勢である。
これに対して、この実施の形態では、3Dの手モデルを直接シーンに投影し、このため、連続した関節の角度範囲において正確な運動学的パラメータを知ることができる。データベースを用いることは、一般に計算上は安価である。しかし、この場合計算量が少なくなる代わりにかなりの量のメモリと検索時間とを必要とする。
モデルを直接使用することにいくつかの利点がある。その構造的パラメータをダイナミックに変更することもでき、また、異なる手に合わせるために、モデルを完全に交換することもできる。また、動いた状態で投影の詳細を自由に変更することができ、これは投影特性の異なる中心視覚及び広角カメラシステムが用いられているヒューマノイドロボットヘッドには特に重要である。これに対して、テンプレートを用いたシステムは、各カメラについて別個のデータベースを必要とするであろう。加えて、異なる課題に対してモデルの自由度を調整することができる。全ての姿勢が実行時に生成されるので、この実施の形態のシステムは、姿勢データベースに係る必要メモリ量が指数関数的に増えてしまうことがなく、次元に制約されずに済む。
B.リアルタイムの要件
非特許文献2の結論の一つは、リアルタイムの3D手トラッカが不足している、というものであった。環境及び人との相互交流をするためには、リアルタイムのシステムを生成する必要がある。従って、トラッキングの過程に長い遅延が導入されるのは受容できない。目標は、リアルタイムのトラッキングシステムを構築して、ロボットと人とのコミュニケーションのための自然な手段を確立することである。
非特許文献2の結論の一つは、リアルタイムの3D手トラッカが不足している、というものであった。環境及び人との相互交流をするためには、リアルタイムのシステムを生成する必要がある。従って、トラッキングの過程に長い遅延が導入されるのは受容できない。目標は、リアルタイムのトラッキングシステムを構築して、ロボットと人とのコミュニケーションのための自然な手段を確立することである。
この要件を念頭に置くと、パーティクルフィルタシステムは有望であると思われる。これは分散されたシステム部分間で必要とされるコミュニケーションを最小にするようなやり方で並列化されているので、非常にうまくその規模を調節できる。この特性を活かすことによって、非特許文献9で提案された分散視覚クラスタをベースに、分散されたパーティクルフィルタを実現することができた。計算上最もコストのかかる作業は各パーティクルの確率を計算することである。ここでは非特許文献8と同様の構成を選択し、1台のコンピュータでトラッキングを管理するとともに画像の撮影と前処理とを行ない、いくつかのクラスタノードで確率関数を計算する(図15を参照)。
リアルタイムが必要な応用の一つは、模倣である。この目標を達成するために、トラッカシステムの推定角度をロボットの手の関節角度に変換する。手の姿勢を模倣するのに、商業的に入手可能なロボットハンドを用いた。結果を図1に示す。
[マーカ不使用のトラッカシステム]
A.データフローの概観
図2はこの実施の形態に従ったデータフローの概観を示す。図2を参照して、人の手の入力画像50は、肌色フィルタによってフィルタ処理され、肌色の面を示すバイナリマップ52が生成される。バイナリマップ52を用いて、入力画像50から切出された手画像54が得られる。ソーベルフィルタ等のエッジフィルタを画像54に適用することにより、エッジフィルタ処理された画像56が得られる。
A.データフローの概観
図2はこの実施の形態に従ったデータフローの概観を示す。図2を参照して、人の手の入力画像50は、肌色フィルタによってフィルタ処理され、肌色の面を示すバイナリマップ52が生成される。バイナリマップ52を用いて、入力画像50から切出された手画像54が得られる。ソーベルフィルタ等のエッジフィルタを画像54に適用することにより、エッジフィルタ処理された画像56が得られる。
先の繰返しで準備された3Dの手モデル58から、3D手モデル58にランダムノイズ59を付加することによって、所定の数(この実施の形態では3000)のパーティクルが生成される。パーティクルの各々は可能な手の姿勢を表す。
パーティクルの各々について、zバッファ画像60が生成される。モデル形状のzバッファ画像60は、それぞれブロック62と64で示すように、肌色フィルタ処理されたバイナリマップ52及びエッジフィルタ処理された画像56と比較される。これらの結果を用いて、ブロック66に示されるように、パーティクルのモデル形状の手の姿勢確率が計算される。これがどのように行なわれるかは、後に詳細に説明する。
ブロック68に示すようなパーティクルの形状の加重合計により、3D手モデル58の新たな形状が推定される。形状の確率は、この計算において重みとして用いられる。
フレームサイクルの各々について、上述の計算が行なわれ、繰返しごとの手姿勢が推定される。以下では、上述の処理の各々をさらに詳細に説明する。
B.画像の取得と前処理
図3を参照して、このシステムでは、ヒューマノイドの頭部に見られるような、眼球間の距離の小さい較正済のステレオカメラ32を用いる。ステレオカメラを選択したのは、手について2つの視点があれば、深さ推定において1つの視野では無視できるほど小さい誤差も、第2の視野では目に見えるものとなるため、3D空間での位置づけがより良好となるからである。
図3を参照して、このシステムでは、ヒューマノイドの頭部に見られるような、眼球間の距離の小さい較正済のステレオカメラ32を用いる。ステレオカメラを選択したのは、手について2つの視点があれば、深さ推定において1つの視野では無視できるほど小さい誤差も、第2の視野では目に見えるものとなるため、3D空間での位置づけがより良好となるからである。
手30のステレオ画像を撮影したあと、HSV空間で肌色を検出し、画像中の肌色の面のバイナリマップを生成し、これを肌面の手がかりの評価にも用いる。その後、このマスクを用いて画像のうち無関係の部分全てをカットし、元の画像から得られた面にエッジフィルタを適用して、手のエッジ画像を得る。これらの画像に基づき、ロボットの手34は手30の姿勢を模倣するように制御される。
C.3Dの手モデル
円錐断面のみからなる3Dの手モデル(図4、図5)を用いる。図4を参照して、このモデル58は非常に高速にフレームに投影して手がかりを検出することが可能であり、その一方で依然として、手と指の動きをトラッキングするためには十分正確である。図4において、「DIP」、「PIP」、「MCP」、「CMC」、「IP」及び「TM」は、「遠位指節間関節」、「近位指節間関節」、「中手指節間関節」、「手根中手関節」、「指節間関節」及び「拇指手根中手関節」をそれぞれ意味する。図4において、白の丸は1DOFの関節を示し、黒の丸は2DOFの関節を示す。
円錐断面のみからなる3Dの手モデル(図4、図5)を用いる。図4を参照して、このモデル58は非常に高速にフレームに投影して手がかりを検出することが可能であり、その一方で依然として、手と指の動きをトラッキングするためには十分正確である。図4において、「DIP」、「PIP」、「MCP」、「CMC」、「IP」及び「TM」は、「遠位指節間関節」、「近位指節間関節」、「中手指節間関節」、「手根中手関節」、「指節間関節」及び「拇指手根中手関節」をそれぞれ意味する。図4において、白の丸は1DOFの関節を示し、黒の丸は2DOFの関節を示す。
人の手のDOFは22であるが、複雑さを避けるために、この運動学的手モデル58の自由度を、各指ごとに屈曲に関する1自由度に制限した。非特許文献2で見られるように、θDIP=θPIPと設定した。θPIPは各指のPIP角度を表し、θDIPは各指のDIP角度を表す。モデル58の関節の角度を表すために、以下でも同様の表記を用いる。
加えて、このトラッカは、検索空間の次元数を減じるために、θPIP=θMCPと仮定している。全体のモデルは、手の姿勢と位置について6の自由度、各指について2の自由度から成る。このシステムの現在の版では、拇指は標準位置に固定されている。従って、各パーティクルの形状ベクトルsnは次元14を有する。
D.自己重なりの解決策
ドイッチャーは、非特許文献10において画像の手がかりを評価する方法を提案している。彼は画像中の投影された体の部分の各々を直接評価している。手モデルの投影で自己と重なって隠れた部分の検索を避けるために、本実施の形態では彼の方法を修正した。隠れた部分ではなく、見える部分のみを検索するために、この実施の形態ではzバッファ方策を提案する。
ドイッチャーは、非特許文献10において画像の手がかりを評価する方法を提案している。彼は画像中の投影された体の部分の各々を直接評価している。手モデルの投影で自己と重なって隠れた部分の検索を避けるために、本実施の形態では彼の方法を修正した。隠れた部分ではなく、見える部分のみを検索するために、この実施の形態ではzバッファ方策を提案する。
zバッファ処理の思想は、遠い対象物を先に描き、より近い、重なる対象物によって上書きされるように、重なって隠れた対象物を描くことである。zバッファ処理を用いてこの3D手モデルを正確に投影できるようにするためには、投影面からの距離に従って分類した指部分の順序付けしたリストが必要である。この投影面は、ステレオカメラシステム内で同一ではないので、各カメラについて別個のzバッファを生成する必要がある。
3D手モデル要素を投影するために、各カメラの較正マトリックスの逆行列を用いる。近似として、視点の座標系に変換した各指の重心を比較する。その後、投影面と垂直となったz軸に従い、最も大きいz座標から始まるよう指部分をソートする。リストを生成した後、指の各要素をリストの順序に従ってバッファに描き、それによって指部分がエッジ又は面の手がかりを表すかどうかをコード化する。こうすることにより、自己と重なる手がかりのインデックスを、重複する指のもので上書きすることになる。どちらもバッファの同じ位置に書込まれることになるからである。深さ情報は、エッジ及び面の輝度により表わされる。
その後図6に例示されるようにzバッファを算出するが、ここでは、各画素についてエッジが予測されるか、手の面が予測されるか、又は何もないと予測されるかがわかっている。これらの投影は最終的に、前処理された画像との比較に用いられる。
E.形状確率の評価
前処理されたフレームで見出されたエッジと面との手がかりに基づいて、各パーティクルの形状を評価する。各パーティクルnのエッジ確率Πeと面確率Πaとを計算するために、以下の式を用いる。
前処理されたフレームで見出されたエッジと面との手がかりに基づいて、各パーティクルの形状を評価する。各パーティクルnのエッジ確率Πeと面確率Πaとを計算するために、以下の式を用いる。
さらに、2つの指部分間の最短距離を計算することにより、指間の衝突も検出する。もしこの距離がそれらの半径の合計より小さければ、衝突があると仮定して、Πcollにより確率関数内でこの状態にペナルティを与える。次に各パーティクルの確率Πnを以下のように計算する
パーティクルフィルタの次の繰返しのために、パーティクルの組を再サンプリングしなければならない。基本的に、非特許文献6でイサードが説明しているように、古いパーティクルの組に対する要素分解した(factored)再サンプリングを用いる。この方策を用いることにより、手のトラッキングが可能となるが、個々の指のトラッキングはできない。姿勢形状がうまくアライメントされていないパーティクルは、モデル中の指を画像中の隣の指と比較してしまうことがあるために、指トラッキングの評価を低下させるという問題に直面した。
性能を向上させるために、パーティクルの組を2つの分離した組に分割してみた。第1の組を、現在の指形状での手(掌)の姿勢をトラッキングするために用い、このため、前回の繰返しでの平均指形状をこのパーティクルの組に割当てる。すなわち、パーティクル形状の指要素を、前回の繰返しで得られた現在の指形状で置換える。姿勢は全てのパーティクルから、それらの重みを考慮して再サンプリングされる。第2の組は、前回知られた手(掌)の姿勢での指をトラッキングするのに用いられる。この目的のために、前回の繰返しでの平均の手(掌)姿勢をこの組の全てのパーティクルに割当てる。すなわち、パーティクル形状の手(掌)要素を、前回の繰返しで得られた現在の手(掌)形状と置換える。その後、全てのパーティクルから指形状を再サンプリングする。再サンプリングの後、両方の組をマージする。
この方策を用いることによって、第2の組での指形状の検索にあたって前回知られた位置にパーティクルを集中させるという利点が得られ、実際上、検索空間の次元を6自由度だけ減じることができる。同時に、第1の組を用いて前回知られた指形状を用いて新たな手の姿勢を検索する。パーティクルの平均をこのようにして割当てることにより、多数の仮説を表すためのパーティクルフィルタの属性を保存する。
G.分散リアルタイムトラッキング
パーティクルフィルタは、クラスタの並列化によく適している。というのも、計算上コストのかかる各パーティクルの評価が、全ての他のパーティクルから独立しているからである。しかし、パーティクルを全てのクラスタノードに分配し、対応の確率を集めるためには通信が必要である。ここでは、前処理された画像を分配することも必要である。
パーティクルフィルタは、クラスタの並列化によく適している。というのも、計算上コストのかかる各パーティクルの評価が、全ての他のパーティクルから独立しているからである。しかし、パーティクルを全てのクラスタノードに分配し、対応の確率を集めるためには通信が必要である。ここでは、前処理された画像を分配することも必要である。
この実施の形態のクラスタノードは標準的なギガビットのネットワークを介して相互に接続されている。画像を送るために必要なトラフィックを最小にするため、ブロードキャストを用いた。分散パーティクルフィルタを実現するために、非特許文献9で提案された分散視覚クラスタ(Distributed Vision Cluster)を用いる。各ノードにおいて多数の評価スレッドを開始することで、マルチプロセッサ、マルチコアのシステムの利益を享受することもできる。ステレオ画像の評価を、パーティクルフィルタの繰返しごとに1画像のみにインターリーブすることで、性能をほぼ2倍にできることがわかった。全ての試験とベンチマークのために、実験的に決定した3000個のパーティクルを用いた。より多くのパーティクルを用いてもそれほどトラッキングが改善されず、2000個より少ないパーティクルでは結果がかなり低下した。
分散視覚クラスタにより、パーティクルフィルタは9個のクラスタを用いて6.84倍の速度まで拡大することができたが、これは76.1%の効率である。10.2FPSに到達することができた。測定のために、クラスタノードではデュアル2.16GHzのCPUを用いた。性能尺度を図8に示す。
<システムの構造>
図9はこの実施の形態の手モデルトラッカ90の全体構造を示す。図9を参照して、手モデルトラッカ90は、ステレオカメラ32から出力されるステレオ画像出力をキャプチャするためのフレーム撮影部100と、フレーム撮影部100によってキャプチャされたステレオ画像を記憶するためのフレームメモリ102と、フレームメモリ102に記憶されたステレオ画像を処理して、手の肌色バイナリマップ140とエッジ画像142とを出力するための画像前処理モジュール104と、これらを記憶するためのメモリ106とを含む。
図9はこの実施の形態の手モデルトラッカ90の全体構造を示す。図9を参照して、手モデルトラッカ90は、ステレオカメラ32から出力されるステレオ画像出力をキャプチャするためのフレーム撮影部100と、フレーム撮影部100によってキャプチャされたステレオ画像を記憶するためのフレームメモリ102と、フレームメモリ102に記憶されたステレオ画像を処理して、手の肌色バイナリマップ140とエッジ画像142とを出力するための画像前処理モジュール104と、これらを記憶するためのメモリ106とを含む。
手モデルトラッカ90はさらに、3Dの手モデル116を記憶するための記憶部(メモリ)と、3Dの手モデル116にランダムなノイズを付加して3000個のパーティクルを生成するための乱数発生モジュール118と、手の姿勢を推定するためのパーティクル形状を記憶するパーティクルメモリ120と、指の姿勢を推定するためのパーティクル形状を記憶するパーティクルメモリ122とを含む。
手モデルトラッカ90はさらに、手の姿勢のためのパーティクルフィルタユニット108と、指の姿勢のためのパーティクルフィルタユニット110と、推定された手の姿勢と指の姿勢とを組合わせるための組合せブロック112と、組合せブロック112の出力を用いて3D手モデル116を更新するモデル更新モジュール114とを含む。
図10は画像前処理モジュール104のブロック図を示す。図10を参照して、画像前処理モジュール104は、フレームメモリ102に記憶された手画像から肌色の面を検出し、肌色バイナリマップ140を出力するための肌色フィルタ180と、肌色バイナリマップ140をマスクとして用いて元の画像のうち無関係な部分をカットすることによって、フレームメモリ102に記憶された画像の一部を抽出するためのマスキングモジュール184と、マスキングモジュール184から出力された手の切出画像186からエッジ画像を検出するためのエッジフィルタ188とを含む。エッジフィルタ188の出力がエッジ画像142である。
図11は手の姿勢のためのパーティクルフィルタユニット108の詳細をブロック図で示す。図11を参照して、パーティクルフィルタユニット108は、肌色バイナリマップ140と、エッジ画像142と、手のパーティクルモデル形状とを記憶するためのパーティクル形状メモリ200と、各々がその評価ユニットに割当てられたモデル形状の確率を計算するための、多数の評価ユニット202A−202Nと、それぞれの確率を重みとして用いて、手の形状の加重合計を計算することによって、新たな手の姿勢を出力するための、加重合計モジュール204と、を含む。
評価ユニット202A−202Nの各々はパーティクルモデル形状のうち手の姿勢に関する部分のみを受け、これらを現在の指形状と組合せる。これらの形状を用いて、評価ユニット202A−202Nはパーティクルの確率を計算する。
評価ユニット202A−202Nの各々は同じ構造を有する。図12は、評価ユニット202A−202Nの一つである評価ユニット202Kの詳細を示す。図12を参照して、評価ユニット202Kはこのユニットに割当てられた手の姿勢のパーティクルモデル形状の各々を現在の指形状と組合せ、結果として得られるパーティクル形状ベクトルを出力するためのベクトル形成モジュール218と、ベクトル形成モジュール218から出力されたパーティクル形状ベクトルを記憶するためのメモリ220と、パーティクル形状ベクトルの要素をカメラ32の較正マトリックスの逆行列を用いて、カメラ32の画像面に投影するのに適した座標系に変換するための座標変換モジュール222とを含む。この新たな座標系は、画像面にX軸及びY軸を有し、さらに画像面に垂直なZ軸を有する。
評価ユニット202Kはさらに、メモリ220に記憶された形状の手の部分の重心を計算するための重心計算モジュール224と、手の各部分のそれぞれの重心のZ座標の降順で、手の各部分をソートし、手の各部分の順序付きのリスト228を出力するためのソートモジュール226と、zバッファ232と、リスト228の順序で、zバッファ232にパーティクル形状の投影画像を描画するための手部分描画モジュール230と、手の各部分間の衝突を検出し、衝突に関しそれぞれのペナルティを計算するための衝突検出モジュール234と、肌色バイナリマップとエッジ画像とを記憶するためのメモリ236と、メモリ236に記憶された肌色バイナリマップ及びエッジ画像と、zバッファ232内の画像と、衝突検出モジュール234によって計算された衝突ペナルティとを用いて、このユニット202Kに割当てられたパーティクル形状の各々の確率を計算するための確率計算モジュール238とを含む。結果として得られる、K番目の評価ユニット202Kに割当てられた手形状のj番目のパーティクルの確率ΠH,K,jが、図11に示す加重合計モジュール204に与えられる。
指のためのパーティクルフィルタユニット110の詳細を図13に示す。図13を参照して、パーティクルフィルタユニット110は、肌色バイナリマップ140とエッジ画像142と、指のパーティクルモデル形状とを記憶するためのパーティクル形状メモリ240と、各々がその評価ユニットに割当てられたモデル形状の確率を計算する多数の評価ユニット242A−242Nと、それぞれの確率を重みとして用いて、指形状を付加することにより、新たな指姿勢を出力するための加重合計モジュール244と、を含む。
評価ユニット242A−242Nの各々は、パーティクルモデル形状のうち指姿勢に関する部分のみを受け、これらを現在の手形状と組合せる。これらの形状を用いて、評価ユニット242A−242Nはパーティクルの確率を計算する。
評価ユニット242A−242Nの各々は同じ構造を有する。図14は評価ユニット242A−242Nの一つである評価ユニット242Kの詳細を示す。図14を参照して、評価ユニット242Kは、このユニットに割当てられた指のパーティクルモデル形状の各々を現在の手の形状と組合せ、結果として得られる手形状ベクトルを出力するためのベクトル形成モジュール258と、ベクトル形成モジュール258から出力されるパーティクル形状ベクトルを記憶するためのメモリ260と、パーティクル形状ベクトルの要素をカメラ32の画像面に投影するのに適した座標系に変換するための座標変換モジュール262とを含む。この新たな座標系は、画像面にX軸及びY軸を有し、さらに画像面に垂直なZ軸を有する。
評価ユニット242Kはさらに、メモリ260に記憶された形状の手の各部分の重心を計算するための重心計算モジュール264と、手部分のそれぞれの重心のZ座標の降順で、手の各部分をソートし、手の各部分の順序付きリスト268を出力するためのソートモジュール266と、zバッファ272と、リスト268の順序で、zバッファ272にパーティクル形状の投影画像を描画するための手部分描画モジュール270と、手の各部分間の衝突を検出し、衝突に関しそれぞれのペナルティを計算するための衝突検出モジュール274と、肌色バイナリマップとエッジ画像とを記憶するためのメモリ276と、メモリ276に記憶された肌色バイナリマップ及びエッジ画像と、zバッファ272内の画像と、衝突検出モジュール274によって計算された衝突ペナルティとを用いて、このユニット242Kに割当てられたパーティクル形状の各々の確率を計算するための確率計算モジュール278とを含む。結果として得られる、K番目の評価ユニット242Kに割当てられた指形状のj番目のパーティクルの確率ΠF,K,jが、図13に示す加重合計モジュール244に与えられる。
<動作>
手モデルトラッカ90は以下のように動作する。図9を参照して、3D手モデル116は図4及び図5に示す初期3D手モデル58を記憶する。カメラ32はステレオ画像信号を出力する。各ステレオフレームはフレーム撮影部100によって撮影され、フレームメモリ102に記憶される。
手モデルトラッカ90は以下のように動作する。図9を参照して、3D手モデル116は図4及び図5に示す初期3D手モデル58を記憶する。カメラ32はステレオ画像信号を出力する。各ステレオフレームはフレーム撮影部100によって撮影され、フレームメモリ102に記憶される。
図10を参照して、肌色フィルタ180はHSV空間における画像中の肌色面を検出して肌色バイナリマップ140を生成する。このマップはマスキングモジュール184によって、画像中の関連のない部分全てをカットするのに用いられ、これによって切出された手画像186が生成され、この結果として得られる、切出された手画像186にエッジフィルタ188が適用されてエッジ画像142が得られる。
結果として得られる肌色バイナリマップ140とエッジ画像142とが手姿勢のためのパーティクルフィルタユニット108と指姿勢のためのパーティクルフィルタユニット110とに与えられる。
一方で、乱数発生モジュール118がランダムノイズを発生し、これらを3D手モデル116に付加して3000個のパーティクルを生成する。パーティクルの半数はパーティクルメモリ120に記憶され、残りの半数はパーティクルメモリ122に記憶される。前者は次の手姿勢を推定するのに用いられ、後者は次の指姿勢を推定するのに用いられる。
図11を参照して、肌色バイナリマップ140とエッジ画像142とはパーティクル形状メモリ200に記憶される。手姿勢のパーティクル形状はパーティクル形状メモリ200に記憶される。これらはともに、評価ユニット202A−202Nの各々に与えられる。現在の指形状が評価ユニット202A−202Nの各々に供給される。
図12を参照して、手姿勢のパーティクル形状と、現在の指形状のパーティクルフィルタとがベクトル形成モジュール218によって組合されてパーティクル形状ベクトルが形成され、これはメモリ220に記憶される。座標変換モジュール222はベクトルの座標系を、zバッファ処理に適したものに変換する。重心計算モジュール224はパーティクル形状の手部分の各々の重心を計算する。
ソートモジュール226は手部分をそれらのZ座標の降順でソートして、リスト228を生成する。手部分描画モジュール230は手の各要素をzバッファ232に描画して、より遠くの対象物が先に描画され、より近い、重なる対象物によって上書きされるようにし、指部分と、これがエッジ又は面の手がかりを表すかどうかを符号化する。手部分描画モジュール230により、自己に隠される手がかりのインデックスが、重なる指のものによって上書きされる。
図6に例示されるzバッファ232を参照して、各画素について、エッジが予測されるか、面が予測されるか、何もないことが予測されるかは分かっている。これらの投影は最終的には確率計算モジュール238で前処理された画像との比較のために用いられる。
確率計算モジュール238は、上述の式(1)−(4)を用いて、前処理されたフレームで見出されメモリ236に記憶されたエッジ及び面の手がかりに基づいて各パーティクル形状の確率を計算する。
衝突検出モジュール234は、2つの指部分間の最短距離を計算することによって、指間の衝突を検出する。もしこの距離が指の半径の合計より短ければ、衝突が生じていると仮定され、この状態にはΠcollにより確率関数におけるペナルティが与えられる。その後各パーティクルの確率Πnが、式(5)を用いて確率計算モジュール238によって計算される。
こうして、各形状についてその確率ΠH,K,jが計算され、図11に示す加重合計モジュール204に与えられる。
確率ΠH,K,jの全てが与えられると、加重合計モジュール204は全ての手のパーティクルの加重平均を計算し、式(6)を用いて手の姿勢について現在の手形状smean,Hを推定する。同様に、指姿勢のためのパーティクルフィルタ110は、式(6)を用いて指の姿勢について現在の指形状smean,Fを推定する。手の姿勢についての手形状smean,Hと、指の姿勢についての指形状smean,Fとが与えられると、図9に示される組合せブロック112は、推定された手の姿勢を推定された指の姿勢と組合せることができる。結果として得られる推定された手全体の形状がモデル更新モジュール114に与えられ、更新モジュール114は推定された手全体の形状で3Dの手モデル116を更新する。
キャプチャされたステレオ画像の各々について上述の推定を繰返すことにより、手モデルトラッカ90は手の姿勢をリアルタイムでトラッキングする。手全体の姿勢を推定するのにパーティクルフィルタが用いられるので、局所的最小にしか到達しない可能性は低い。従って、手モデルトラッカ90は手の姿勢を信頼性をもってトラッキングする。検索空間の分解(手の姿勢と指の姿勢)により、トラッキングは各繰返しごとに短時間で実行でき、信頼性のあるリアルタイムのトラッキングが可能となった。
<コンピュータハードウェア構成>
上述の手モデルトラッカ90は、高速ネットワークを介して相互に接続された複数のコンピュータで実現できる。図15を参照して、手モデルトラッカ90を実現するためのコンピュータシステム320は、ステレオ画像を撮影し、撮影された画像の前処理を行なうためのカメラ32に接続されたパーソナルコンピュータ(PC)332と、各々がデュアルコアCPU構成を有し、評価ユニット202A−202N及び242A−242Nとして動作するように構成されたコアCPUを各々が有するPC334A−334Xと、評価ユニット202A−202N及び242A−242Nから出力された確率を用いて、手形状及び指形状の重み平均を計算し、推定された手の姿勢を推定された指の姿勢と組合せるためのPC338と、3D手モデルを記憶しPC338の出力を用いてこれを更新するためのPC336と、推定された手の姿勢に従ってロボットハンドを制御するハンド制御部340と、PC332、334A−334X、336、338及び340を接続する高速ネットワーク330とを含む。
上述の手モデルトラッカ90は、高速ネットワークを介して相互に接続された複数のコンピュータで実現できる。図15を参照して、手モデルトラッカ90を実現するためのコンピュータシステム320は、ステレオ画像を撮影し、撮影された画像の前処理を行なうためのカメラ32に接続されたパーソナルコンピュータ(PC)332と、各々がデュアルコアCPU構成を有し、評価ユニット202A−202N及び242A−242Nとして動作するように構成されたコアCPUを各々が有するPC334A−334Xと、評価ユニット202A−202N及び242A−242Nから出力された確率を用いて、手形状及び指形状の重み平均を計算し、推定された手の姿勢を推定された指の姿勢と組合せるためのPC338と、3D手モデルを記憶しPC338の出力を用いてこれを更新するためのPC336と、推定された手の姿勢に従ってロボットハンドを制御するハンド制御部340と、PC332、334A−334X、336、338及び340を接続する高速ネットワーク330とを含む。
図16はPC332の典型的な構成を示す。図16を参照して、PC332は、デュアル計算ユニットを有するデュアルコアCPU376と、ブートアッププログラムを記憶するための読出専用メモリ(ROM)378と、デュアルコアCPU376によって実行されるべきプログラムを記憶し、プログラムで用いられる変数を記憶するためのランダムアクセスメモリ(RAM)380と、プログラム、変数の初期値、初期3D手モデル及び他のデータを記憶するためのハードディスク374とを含む。
PC332はさらに、DVD382からデータを読出し、データを書込むためのディジタル多用途ディスク(DVD)ドライブ370と、キーボード366及びマウス368と、モニタ362、カメラ32が接続されたビデオキャプチャボード388と、ポータブルメモリ384からデータを読出し、データを書込むためのメモリポート372と、PC332をネットワーク330に接続可能とするためのネットワークインターフェイス396と、を含む。
他のPC334A−334X、336、338及び340は同じ構成を有する。しかし、これらのPCは全てPC332から制御可能となっているので、これらのPCにマウス、キーボード、またはモニタを設ける必要はない。
<結果>
複雑な多関節の対象物に対するトラッキングの性能を評価するのはなかなかむずかしい。通常は映像シーケンスからの比較用データを容易に得ることができないからである。手のトラッキングにおいては、データグローブ又はマーカ等のより正確な方法を容易に用いることもできない。これらが手の外観を変えてしまうからである。
複雑な多関節の対象物に対するトラッキングの性能を評価するのはなかなかむずかしい。通常は映像シーケンスからの比較用データを容易に得ることができないからである。手のトラッキングにおいては、データグローブ又はマーカ等のより正確な方法を容易に用いることもできない。これらが手の外観を変えてしまうからである。
我々は、2段階の評価を行なうことを選択した。第1に、自然な映像を用いて、本発明のトラッカがある姿勢と別の姿勢との間でトラッキングを行なうことで実世界とうまく作用することを示した。トラッカの性能を示すために、比較用データが既知の人工的映像シーケンスを生成して、システムのトラッキング誤差を評価した。
A.自然な映像シーケンス
手の5つの姿勢を選択して、各対の間の遷移をトラッキングした。遷移が終了したあと、正確な姿勢までトラッカが完全に収束するまでに必要なフレームの数に注目した。全ての映像のキャプチャ速度は30FPSであった。
手の5つの姿勢を選択して、各対の間の遷移をトラッキングした。遷移が終了したあと、正確な姿勢までトラッカが完全に収束するまでに必要なフレームの数に注目した。全ての映像のキャプチャ速度は30FPSであった。
図17は合成の手ステレオ投影(フレーム150から400)のためのトラッキングシーケンスを示す。第1の行は面の手がかりのための入力を示し、第2の行はエッジの手がかりのための入力を示す。
B.合成映像シーケンス
第2の実験では、3D手モデル(図18)のステレオアニメーションシーケンスを投影することによって制作された合成映像を用いた。提示されたシーケンスから、各シーケンスの比較用データを導出することができる。従って、トラッキングされた値と比較用データとを比較でき、図19の結果が得られる。
第2の実験では、3D手モデル(図18)のステレオアニメーションシーケンスを投影することによって制作された合成映像を用いた。提示されたシーケンスから、各シーケンスの比較用データを導出することができる。従って、トラッキングされた値と比較用データとを比較でき、図19の結果が得られる。
図19は人差し指のMCPの2つのDOFについて、推定値と比較用データとの比較を示す。図19からわかるように、トラッキングされた値と比較用データとの誤差はきわめて小さい。
図20では、400フレームにわたるトラッキングでの手の姿勢誤差をみることができる。図20からわかるように、平均誤差(θMCP)はフレーム300で最高の0.06ラジアンに達したのみである。
<結論>
この発明においては、パーティクルフィルタを用いた、マーカ不使用の手及び指トラッキングシステムの実施の形態を提示した。人の手のような、多関節で自己の重なりにより隠れた部分のある対象物の手がかりを正確に評価する、新規なzバッファを用いる方法を提案した。指を正確にトラッキングできるようにするために、検索空間を区分するパーティクル再サンプリングを提案した。PCクラスタに分散したパーティクルフィルタを用いてこれを実現し、トラッキングの結果を高いフレームレートで達成することが可能となった。トラッキングシステムの有効性は、20自由度の精巧なロボットハンドをリアルタイムで制御することで示された。
この発明においては、パーティクルフィルタを用いた、マーカ不使用の手及び指トラッキングシステムの実施の形態を提示した。人の手のような、多関節で自己の重なりにより隠れた部分のある対象物の手がかりを正確に評価する、新規なzバッファを用いる方法を提案した。指を正確にトラッキングできるようにするために、検索空間を区分するパーティクル再サンプリングを提案した。PCクラスタに分散したパーティクルフィルタを用いてこれを実現し、トラッキングの結果を高いフレームレートで達成することが可能となった。トラッキングシステムの有効性は、20自由度の精巧なロボットハンドをリアルタイムで制御することで示された。
このトラッキングシステムに人の全身のトラッカを組合せることで、非常に大きな利益が得られる。腕の姿勢を利用して手首の位置を得ることが可能となり、したがって、手の向きについての検索空間を大きく削減することができる。
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味および範囲内でのすべての変更を含む。
30 手
32 カメラ
34 ロボットハンド
58、116 3D手モデル
90 手モデルトラッカ
100 フレーム撮影部
102 フレームメモリ
104 画像前処理モジュール
106、220、236、260、276 メモリ
108 手のためのパーティクルフィルタユニット
110 指のためのパーティクルフィルタユニット
112 組合せブロック
114 モデル更新モジュール
118 乱数発生モジュール
120及び122 パーティクルメモリ
200、240 パーティクル形状メモリ
202A−202N及び242A−242N 評価ユニット
204、244 加重合計モジュール
218、258 ベクトル形成モジュール
222、262 座標変換モジュール
224、264 重心計算モジュール
226、266 ソートモジュール
228、268 リスト
230、270 手部分描画モジュール
232、272 zバッファ
234、274 衝突検出モジュール
238、278 確率計算モジュール
32 カメラ
34 ロボットハンド
58、116 3D手モデル
90 手モデルトラッカ
100 フレーム撮影部
102 フレームメモリ
104 画像前処理モジュール
106、220、236、260、276 メモリ
108 手のためのパーティクルフィルタユニット
110 指のためのパーティクルフィルタユニット
112 組合せブロック
114 モデル更新モジュール
118 乱数発生モジュール
120及び122 パーティクルメモリ
200、240 パーティクル形状メモリ
202A−202N及び242A−242N 評価ユニット
204、244 加重合計モジュール
218、258 ベクトル形成モジュール
222、262 座標変換モジュール
224、264 重心計算モジュール
226、266 ソートモジュール
228、268 リスト
230、270 手部分描画モジュール
232、272 zバッファ
234、274 衝突検出モジュール
238、278 確率計算モジュール
Claims (4)
- パーティクルフィルタ処理を用いて映像シーケンスにおける手のトラッキングを行なうための手トラッキング装置であって、
3次元の手のモデルを記憶するための記憶手段と、
ビデオシーケンスの現在のフレームから手の姿勢の手がかりを抽出するための手がかり抽出手段と、
前記手がかりと現在の3次元の手のモデル形状とにパーティクルフィルタ処理を施して現在のフレーム中の手の姿勢を推定するための推定手段と、
前記推定手段によって推定された姿勢を用いて前記3次元の手のモデル形状を更新するための手段とを含み、
前記推定手段は、
3次元の手のモデルにランダムノイズを付加して前記3次元の手のモデルに対し予め定められた数のパーティクルの形状を生成する手段と、
手の形状を表す前記パーティクルの各々に対しzバッファ画像を生成するためのzバッファ処理手段とを含み、前記zバッファ画像は前記3次元の手のモデルの、前記ビデオシーケンスを出力する画像キャプチャ装置の画像面への投影であり、前記推定手段はさらに
前記手がかりと前記zバッファ画像とに基づいて、前記手の形状の各々の確率を計算するための確率計算手段と、
前記手の形状のそれぞれの確率を、前記手の形状を表すパーティクルのそれぞれの重みとして用いて、前記パーティクルの形状について計算された前記手の形状の重み合計を計算するための加重合計手段とを含む、手トラッキング装置。 - 前記3次元の手のモデルは掌部分と指部分とを含み、前記確率計算手段は、
前記パーティクルの第1の部分の確率を計算するための第1の評価手段を含み、前記第1の部分のパーティクル形状の指部分の各々は前記3次元モデルの現在の指部分と置換えられており、前記確率計算手段はさらに、
前記パーティクルの第2の部分の確率を計算するための第2の評価手段を含み、前記第2の部分のパーティクル形状の掌部分の各々は前記3次元モデルの現在の掌部分と置換えられており、
前記加重合計手段は
それぞれの確率を重みとして用いて、前記パーティクルの前記第1の部分の加重合計を計算するための第1の合計手段と、
それぞれの確率を重みとして用いて、前記パーティクルの前記第2の部分の加重合計を計算するための第2の合計手段とを含み、
前記組合せ手段は、前記第1の合計手段によって出力された加重合計の掌部分と、前記第2の合計手段によって出力された加重合計の指部分とを組合せるための手段を含む、請求項1に記載の手トラッキング装置。 - 前記第1の評価手段は並列に動作可能な複数の第1の計算ユニットによって実現され、前記複数の第1の計算ユニットの各々は前記パーティクル形状の前記第1の部分の一部の確率を計算するようにプログラムされる、請求項2に記載の手トラッキング装置。
- 前記第2の評価手段は並列に動作可能な複数の第2の計算ユニットによって実現され、前記複数の第2の計算ユニットの各々は前記パーティクル形状の前記第2の部分の一部の確率を計算するようにプログラムされる、請求項2又は請求項3に記載の手トラッキング装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006325202A JP2008140101A (ja) | 2006-12-01 | 2006-12-01 | 無制約、リアルタイム、かつマーカ不使用の手トラッキング装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006325202A JP2008140101A (ja) | 2006-12-01 | 2006-12-01 | 無制約、リアルタイム、かつマーカ不使用の手トラッキング装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008140101A true JP2008140101A (ja) | 2008-06-19 |
Family
ID=39601494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006325202A Pending JP2008140101A (ja) | 2006-12-01 | 2006-12-01 | 無制約、リアルタイム、かつマーカ不使用の手トラッキング装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008140101A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011186730A (ja) * | 2010-03-08 | 2011-09-22 | Sony Corp | 情報処理装置および方法、並びにプログラム |
CN103985139A (zh) * | 2014-05-20 | 2014-08-13 | 重庆大学 | 基于颜色模型与预测向量簇模型信息融合的粒子滤波目标跟踪方法 |
CN104000698A (zh) * | 2014-06-04 | 2014-08-27 | 西南交通大学 | 一种融合稀疏表示粒子滤波的电动助力车的避障方法 |
CN104794737A (zh) * | 2015-04-10 | 2015-07-22 | 电子科技大学 | 一种深度信息辅助粒子滤波跟踪方法 |
CN104952104A (zh) * | 2014-03-26 | 2015-09-30 | 联想(北京)有限公司 | 一种三维人体姿态估计方法和装置 |
US9240053B2 (en) | 2010-03-15 | 2016-01-19 | Bae Systems Plc | Target tracking |
US9305244B2 (en) | 2010-03-15 | 2016-04-05 | Bae Systems Plc | Target tracking |
JP2023521952A (ja) * | 2020-07-27 | 2023-05-26 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | 3次元人体姿勢推定方法及びその装置、コンピュータデバイス、並びにコンピュータプログラム |
-
2006
- 2006-12-01 JP JP2006325202A patent/JP2008140101A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011186730A (ja) * | 2010-03-08 | 2011-09-22 | Sony Corp | 情報処理装置および方法、並びにプログラム |
US9240053B2 (en) | 2010-03-15 | 2016-01-19 | Bae Systems Plc | Target tracking |
US9305244B2 (en) | 2010-03-15 | 2016-04-05 | Bae Systems Plc | Target tracking |
CN104952104A (zh) * | 2014-03-26 | 2015-09-30 | 联想(北京)有限公司 | 一种三维人体姿态估计方法和装置 |
CN103985139A (zh) * | 2014-05-20 | 2014-08-13 | 重庆大学 | 基于颜色模型与预测向量簇模型信息融合的粒子滤波目标跟踪方法 |
CN104000698A (zh) * | 2014-06-04 | 2014-08-27 | 西南交通大学 | 一种融合稀疏表示粒子滤波的电动助力车的避障方法 |
CN104794737A (zh) * | 2015-04-10 | 2015-07-22 | 电子科技大学 | 一种深度信息辅助粒子滤波跟踪方法 |
CN104794737B (zh) * | 2015-04-10 | 2017-12-15 | 电子科技大学 | 一种深度信息辅助粒子滤波跟踪方法 |
JP2023521952A (ja) * | 2020-07-27 | 2023-05-26 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | 3次元人体姿勢推定方法及びその装置、コンピュータデバイス、並びにコンピュータプログラム |
JP7503643B2 (ja) | 2020-07-27 | 2024-06-20 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | 3次元人体姿勢推定方法及びその装置、コンピュータデバイス、並びにコンピュータプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hasson et al. | Learning joint reconstruction of hands and manipulated objects | |
Stenger et al. | Model-based hand tracking using a hierarchical bayesian filter | |
JP4148281B2 (ja) | モーションキャプチャ装置及びモーションキャプチャ方法、並びにモーションキャプチャプログラム | |
Knoop et al. | Sensor fusion for 3D human body tracking with an articulated 3D body model | |
Chen et al. | Unsupervised learning of visual 3d keypoints for control | |
JP2008140101A (ja) | 無制約、リアルタイム、かつマーカ不使用の手トラッキング装置 | |
Li et al. | Hybrik-x: Hybrid analytical-neural inverse kinematics for whole-body mesh recovery | |
Aristidou | Hand tracking with physiological constraints | |
Krejov et al. | Combining discriminative and model based approaches for hand pose estimation | |
Bandouch et al. | A self-training approach for visual tracking and recognition of complex human activity patterns | |
CN110348321A (zh) | 基于骨骼时空特征及长短时记忆网络的人体动作识别方法 | |
Knoop et al. | Fusion of 2D and 3D sensor data for articulated body tracking | |
Gumpp et al. | Unconstrained real-time markerless hand tracking for humanoid interaction | |
Tang et al. | Opening the black box: Hierarchical sampling optimization for hand pose estimation | |
Wang et al. | Six-dimensional target pose estimation for robot autonomous manipulation: Methodology and verification | |
Ahmad et al. | Tracking hands in interaction with objects: A review | |
Infantino et al. | A cognitive architecture for robotic hand posture learning | |
WO2021155653A1 (zh) | 基于协作差分进化滤波的人手-物体交互过程跟踪方法 | |
Kwolek et al. | Real-time multi-view human motion tracking using 3D model and latency tolerant parallel particle swarm optimization | |
Sigalas et al. | Visual tracking of independently moving body and arms | |
Lefebvre-Albaret et al. | Body posture estimation in sign language videos | |
Hecht et al. | Markerless human motion tracking with a flexible model and appearance learning | |
Hüser et al. | Visual programming by demonstration of grasping skills in the context of a mobile service robot using 1D-topology based self-organizing-maps | |
Xie et al. | RHOBIN Challenge: Reconstruction of human object interaction | |
Banzi et al. | A novel hand pose estimation using dicriminative deep model and Transductive learning approach for occlusion handling and reduced descrepancy |