【发布时间】:2016-04-15 06:56:58
【问题描述】:
我尝试将每个关节位置 (xyz) 保存到文本文件中。以下是部分代码:
private void KinectAllFramesReady(object sender, AllFramesReadyEventArgs)
{
.
.
.
//Some initialization code//
.
.
.
using (SkeletonFrame skeletonFrame = e.OpenSkeletonFrame())
{
if (skeletonFrame != null)
{
if ((this.skeletonData == null) || (this.skeletonData.Length != skeletonFrame.SkeletonArrayLength))
{
this.skeletonData = new Skeleton[skeletonFrame.SkeletonArrayLength];
}
skeletonFrame.CopySkeletonDataTo(this.skeletonData);
haveSkeletonData = true;
//===============
foreach (var skeleton in skeletonData)
{
if (skeletonFrame != null)
{
if (skeleton.TrackingState == SkeletonTrackingState.Tracked)
{
// check the record check box
//if (obj.RecCheckStat == true)
if (RecordCheckBox.IsChecked == true)
{
//save skeleton to string
Directory.CreateDirectory(folder_path);
File.WriteAllText(file_path, currentSkeleton);
}
}
}
}
//===============
}
}
}
.
.
.
//Draw skeleton-depth-color//
.
.
.
}
似乎使用函数中的foreach (var skeleton in skeletonData),每4-5秒就会出现帧延迟(骨架移动,而不是帧速率)。
知道如何解决这个问题吗?谢谢各位。
【问题讨论】: