2013-02-28 103 views
1

我正在進行手勢的一次性學習。大多數手勢都涉及左右手的移動,使用Kinect SDK的骨架追蹤庫可以輕鬆檢測手關節。我面臨的問題是如何猜測手勢的開始以及手勢何時結束,以便我可以將手關節軌跡的座標提供給我的算法,最終對手勢進行分類?如何檢測kinect中手勢的開始和結束?

+0

您是否正在檢測系統正在學習的手勢的開始/結束,或系統已知的手勢的開始/結束?我在你的問題中都讀過,所以我不確定。 – 2013-02-28 14:58:55

+0

我需要它,而系統正在學習手勢。我需要在用戶啓動手勢時開始記錄軌跡。如何檢測這個起點?我想我會使用類似的技術,同時比較查詢手勢和系統已經學過的手勢。 – 2013-02-28 15:55:57

回答

4

您無法檢測學習引擎中未知手勢的開始。必須有一些離散的行動,告訴系統一個手勢即將開始供其學習。如果沒有這種離散操作,系統無法知道手勢的起點是什麼運動,v.s.訴訟之間的訴訟一個動議開始,v.s.發動機應該不在意的任意動作。

有可能的工作,根據您的情況可以通過幾個動作:

  1. 鍵盤或鼠標動作
  2. 已知的手勢來表示一個新的手勢開始/結束
  3. 使用語音識別以通知引擎您正在開始/結束
  4. 一些帶有短暫倒計時器的動作,用於用戶進入手勢的「位置1」並在出現提示時開始。
  5. 對所有手勢都有單一來源 - 在短時間內握住你的手錶示學習行爲的開始。

如果沒有某種形式的離散動作,系統就無法知道你想要什麼。它總是會猜測,而且你總是會遇到系統猜測錯誤的情況。

對於執行已知手勢,您的方法取決於您如何存儲數據以及手勢的複雜程度。下面是您可以查看,看看他們如何兩種工作姿勢庫:

他們還可以幫助給你想要如何開始的想法/結束手勢的基礎上,如何爲每種情況存儲手勢數據。