gpt4 book ai didi

c# - 如何将kinect骨架数据保存到文件中?

转载 作者:行者123 更新时间:2023-11-30 02:56:31 25 4
gpt4 key购买 nike

我能够在 Kinect SDK beta 3 中做到这一点,但从那以后我就没有为 Kinect 开发过很多东西似乎已经改变了。

我想将每个关节保存为一个变量,并将这些值写入一个我可以稍后解析的 .csv 文件。 (最好使用 c#,但我也可以使用 c++ 版本)

问题

-我需要调用什么才能获得每个关节的数值?

如有任何帮助,我们将不胜感激!

最佳答案

Skeleton 数据只是一系列Joint 集合,包含X/Y/Z 坐标。您可以像任何其他类型的对象一样保存和编写它们。

Microsoft 为 Kinect for Windows Samples 提供的多个示例显示了获取 Joint 的值。 .请浏览这些示例以获得使用最新 Kinect SDK 的基础。

这是解析 SkeletonFrame 并处理单个骨架的基本回调:

private void OnSkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e)
{
using (SkeletonFrame skeletonFrame = e.OpenSkeletonFrame())
{
if (skeletonFrame == null || skeletonFrame.SkeletonArrayLength == 0)
return;

// resize the skeletons array if needed
if (_skeletons.Length != skeletonFrame.SkeletonArrayLength)
_skeletons = new Skeleton[skeletonFrame.SkeletonArrayLength];

// get the skeleton data
skeletonFrame.CopySkeletonDataTo(_skeletons);

foreach (var skeleton in _skeletons)
{
// skip the skeleton if it is not being tracked
if (skeleton.TrackingState != SkeletonTrackingState.Tracked)
continue;

// print the RightHand Joint position to the debug console
Debug.Writeline(skeleton.Joints[JointType.HandRight]);
}
}
}

另外,Kinect Toolbox带有允许您录制和重放所有 3 个流的功能。

关于c# - 如何将kinect骨架数据保存到文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15419296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com