kinect对象测量

时间:2011-08-12 13:28:25

标签: camera kinect

我目前正试图找出一种用kinect

计算给定对象大小的方法

因为我有以下数据

镜头的角度视野 距离 和800 * 600分辨率的宽度(以像素为单位)

我相信这是可以计算的。有没有人有数学技能给我一点帮助?

1 个答案:

答案 0 :(得分:3)

对于某些trigonometry,应该可以近似。

如果你绘制一个right trangle ABC,相机在一条腿(A)和远端的物体(边缘BC),直角是(C),那么高度该物体将成为BC腿的高度。到像素的距离可能是腿AC或AB的距离。 Kinect传感器规格将对此进行调节。如果你到达像素的中心距离,那么它将是AC。如果你有到像素角的距离,那么距离将是AB。

用A表示像素占据的相机角度,d是直角的斜边距离,y是远腿的距离(边缘BC):

sin(A) = y / d

y = d sin(A)

y是投影到物体平面中的像素的长度。你可以通过将天使的sin乘以与物体的距离来计算它。

在这里,我承认我不知道kinect的API,以及它提供的详细程度。你说你有视野的角度。您可能会认为800x600像素网格的每个像素占据了相机视野的相等角度。如果你这样做,那么你可以将视野分成相等的部分,以测量每个像素中物体的线性尺寸。

您还提到您与物体的距离。我假设你有一个800x600网格的每个像素的距离图。如果这是不正确的,如果您对被测对象做出一些假设,可以进行一些计算来近似涉及感兴趣对象的像素的距离网格。