Kinect SDK 1.6和Joint.ScaleTo方法

INE*_*ile 2 wpf kinect kinect-sdk

我正在使用Kinect SDK 1.6,我正在关注Windows Kinect Quickstart系列Skeleton Tracking Funamentals教程,可在此处获得.

即使这些教程是针对SDK 1.0制作的,所有内容都很顺利,直到我按照说明将手的位置映射到自定义大小的窗口(例如1280x720).

Dan Fernandez正在使用以下代码行来实现这一目标

    private void ScalePosition(FrameworkElement element, Joint joint)
    {
        // Convert the value to X/Y;
        Joint scaledJoint = joint.ScaleTo(1280, 720);

        ....
    }    
Run Code Online (Sandbox Code Playgroud)

好吧,该方法ScaleTo不是自定义函数,它应该在Kinect SDK中提供,但根据我的编辑器,没有这样的方法.我无法找到它,我认为它可能已被移动/重命名/自SDK 1.0以来的任何东西.

只是为了确保一切都井然有序,这里是我的using清单,其他人(骷髅跟踪等)正在工作,所以我真的无法搞清楚

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

using Microsoft.Kinect;
using Microsoft.Kinect.Toolkit;
using Microsoft.Samples.Kinect.WpfViewers;
Run Code Online (Sandbox Code Playgroud)

我可以根据要求提供有关我代码的更多详细信息.

小智 8

如果你有正确的Coding4Fun参考,你实际上只是错过了这个:

using Coding4Fun.Kinect.Wpf;
Run Code Online (Sandbox Code Playgroud)

在代码的开头.


小智 5

如果需要,您可以将此SDK与最新的Microsoft SDK结合使用ScaleTo():

http://c4fkinect.codeplex.com/

它是开源的,所以你也可以使用他们的代码并拥有自己的代码ScaleTo().

请记住添加正确的using指令:

using Coding4Fun.Kinect.Wpf;
Run Code Online (Sandbox Code Playgroud)

如何在C#中使用新的Kinect SDK扩展关节