2014-10-09 49 views
0

我正在使用库kinect4WinSDK(处理)的Kinect 1414。 首先,我有深度值6400和30之间000原始值I转换它与此:获取kinect 3D位置值

if (raw==0x0000) z=0.0; 
else if (p.raw>=0x8000) p.z=4.0; 
else p.z=0.8+(float(p.raw-6576)*0.00012115165336374002280501710376283); 

然而,我的x和y值是在范围[0,1] x和[-1,1]为y。我希望这些价值在米。你可以帮我吗? 谢谢,

约恩

回答

0

的事情是,你需要获得计算机空间(Kinect的空间),对应的真实世界1米。 kinect本身不是衡量任何标准单位。因此,您需要将真实世界1米映射到Kinect距离。为了得到4米的距离,用两端的kinect骨架手标记它,并在计算机空间中获得距离,并假设它是x。现在,如果您在现实世界中获得了d距离,则相应的Kinect空间距离为(x/4c)* d。 C可以被计算。