2012-09-17 28 views

回答

1

我會看到Comparing a saved movement with other movement with Kinect跟蹤整個身體。答案顯示代碼here,其中顯示瞭如何保存骨架數據。如果你想跟蹤關節而不是整個身體(當前效果更好,但是當跟蹤整個身體起作用時,使用它是因爲它更有效和更有效),因此可以使用mapping an ellipse to a joint in kinect sdk 1.5來跟蹤關節。

+0

的感謝!是爲.net編寫的代碼嗎?我該如何編譯它? – memyself

+0

它的c#,dowlload cisual c#2010從msdn與kinect sdk – Kinected

+0

@memyself也id這個問題解決了你的問題點擊我的amswer旁邊的小綠色複選標記 – Kinected

0

您的情況非常簡單,但需要對該對象進行初始化,因爲一般而言,術語「對象」不明確。它可以是最接近的物體或移動物體,或者甚至是被觸摸的物體,具有一定的顏色,尺寸或形狀。

我們假設你通過運動來定義對象,無論在你的點雲中的任何移動是否是一個對象。我建議這樣做:

  • 目標檢測很容易,如果物體的移動速度比其規模更因爲
    ,那麼你只可以減去深度地圖,並與你的對象最終:
    depth1-depth2 > T但如果物體慢慢移動只移動其大小的 小數部分,您必須使用 所具有的任何高頻率信息,這些信息可以是深度或顏色,也可以是兩者兼有。這將是嘈雜下圖,只要你有你的選擇的對象,你可能想通過運行一些morphological filters清理它顯示

enter image description here

  • (侵蝕+ 擴張)擦除噪音,並得到一個blob。之後,您只需 需要找到blob中的某些功能,例如平均深度或平均顏色,並在圍繞對象之前的 位置的小窗口中查找它們以便重新發現該對象;
  • 終於不要忘記更新這些功能,因爲對象通過移動 。

您可能需要使用一些其他的想法是:深度梯度,在深度連接的部件,預錄製背景深度清潔減法,運行上通過鼠標點擊所選的縱深區域grabCut等