Kinect SDK ベータ 3 でこれを行うことができましたが、それ以来 Kinect 用に開発しておらず、多くの変更が加えられているようです。
各ジョイントを変数として保存し、それらの値を .csv ファイルに書き込んで、後で解析できるようにしたいと考えています。(できればC#を使用しますが、C++バージョンでも作業できます)
質問
-各関節の数値を取得するには、何を呼び出す必要がありますか?
どんな助けでも感謝します!
Kinect SDK ベータ 3 でこれを行うことができましたが、それ以来 Kinect 用に開発しておらず、多くの変更が加えられているようです。
各ジョイントを変数として保存し、それらの値を .csv ファイルに書き込んで、後で解析できるようにしたいと考えています。(できればC#を使用しますが、C++バージョンでも作業できます)
質問
-各関節の数値を取得するには、何を呼び出す必要がありますか?
どんな助けでも感謝します!
データは、X/Y/Z 座標を含むSkeleton
一連のコレクションです。Joint
他のタイプのオブジェクトと同じように、それらを保存して書き込むことができます。
a の値を取得する方法は、Microsoft がKinect for Windows サンプル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 ツールボックスには、3 つのストリームすべてを記録および再生できる機能が付属しています。