2012-05-02 11 views
-1

私はMicrosoft Kinectカメラデバイスを使用するアプリケーションを持っています。Kinect - 手関節の加速度を1秒間で計算する方法

3次元空間(X - Y - Z)で私の手の位置を知ることができ、各軸の毎秒の手の加速を計算したいと思います。

基本的に、私は開始点の座標を持ち、その開始点から1秒後にも、その2点の間の手の加速を計算したいと思います。

StartPoint - (x1, y1, z1)

EndPoint after 1 sec from StartPoint (30 frames) - (x2, y2, z2)

Acceleration between StartPoint and EndPoint = ?

また、私は時間をかけて私の手の他のすべての座標を取得することができますが、私は開始点と終了の間の期間の加速度を計算したいですポイント。

あなたは説明したり、私に方法を教えていただけますか?

+1

各軸(X、YおよびZ)の加速を表し、(距離ユニティ/second²)で表されます。これは基本的な数学/物理学の問題です。答えはあなたの情報を与えられないということです。加速度(a)は速度(v)の経時変化(a = dv/dt)なので、2つの速度測定が必要なので、a =(v1-v0)/(t1-t0)です。あなたは2つの速度測定値を持っていません。あなたは2つの位置測定値を持っています。これは速度を計算することができることを意味します。v = dp/dt =(p1-p0)/(t1-t0) – mankoff

+0

だから私はkinectを持っていると言いました。キネクトで私は毎秒自分の関節の位置を得ることができます。さらに、1秒に30フレームがあることを考慮して、各フレームでの関節の位置を計算します。だから私は多くのポジションを持っているだけでなく、それらの間の加速を計算したいので2を挙げました。 – Simon

+0

私はフィジックスSXサイトであなたのポストを見る。重複は投稿しないでください。 – mankoff

答えて

3

エンドポイントへのStartPointのからの距離は3つの値のベクトルであり、それができるあなたに速度を与えます(距離団結/秒)今

velocity(EndPoint.X - StartPoint.X, EndPoint.Y - StartPoint.Y, EndPoint.Z - StartPoint.Z)

、あなたは加速をしたい場合、あなたはよ速度をと同じにする必要があります。開始点の速度と速度を1秒後に指定します。

acceleration(EndVelocity.X - StartVelocity.X, EndVelocity.Y - StartVelocity.Y, EndVelocity.Z - StartVelocity.Z)

加速度これは、オンラインショップの問題ではない

関連する問題