Kinect 颜色指向深度/相机点



我正在开发煤渣和 kinect v2 应用程序,目前我坚持将颜色点映射到深度点。我在颜色框中搜索了某种颜色的特定点,因此我有了颜色框点 x 和 y。

我想从中获取深度,但当然深度框架是不同的分辨率和视角,因此您不能只是索引它。

我找不到任何颜色点到深度点甚至相机点的映射器。除了自己进行测量之外,还有其他简单的方法可以做到这一点吗?

我的问题与此类似:如何使用 Kinect 从不同的对象获取真实世界的坐标(x、y、z),但我不需要实际的真实世界坐标。但是,那里的答案并没有完全解释做我需要的。

你必须使用 CoordinateMapperClass。对于您的情况:
使用该函数

 public void MapColorFrameToDepthSpace (
         Array<UInt16>[] depthFrameData,
         out Array<DepthSpacePoint>[] depthSpacePoints
)

您必须使用 kinect 传感器的坐标映射器。您的映射与 MapColorFrameToDepthFrame 或空间相关。此功能在 kinect v2 SDK 上可用。

完成此步骤后,您将拥有3个信息(Xview,Yview,Zworld)Yworld和Xworld你可以找到这些公式

Yworld =  Zworld * Yview / focal_length 
Xworld = Zworld  * Xview / focal_length

现在您知道任何图像点的世界坐标

您可以轻松测量两点之间的距离。

Distance_of_p1_p2(mm) = Sqrt ( Square(p2.Xworld - p1.Xworld) +  Square(p2.Yworld - p1.Yworld) + Square(p2.Zworld - p1.Zworld)) 

最新更新