我正在寻找一种将 kinect RGB 和深度值转换为 XYZ 坐标的简单方法 使用 MATLAB。 我的目标是一个函数,输入为:Kinect 相机拍摄的每个点的 RGB 和深度值,输出为:每个点的 x、y 和 z 值。
[RGB, 深度] = RGB_D2XYZ(XYZ)
谢谢, 本
最佳答案
你可以看看这篇很棒的文章。他们有一个函数调用 DepthToCloud.m。您只需要确保通过图像中心和左上角即可。
他们也在使用 Kinect,因此您实际上不需要更改很多参数。
文章可以查here
编辑
您可以使用 mexopencv 或 OpenCV Matlab 包装器来捕获图像并进行校准。在 OpenCV 有一个很棒的函数调用 reporjectImageTo3D
之后。但是这个函数需要矩阵Q
。这是投影矩阵。如果您想通过这种方式进行操作,请查看 OpenCV 文档。其他 depthToCloud 也非常好。
关于matlab - 将kinect RGB和深度值转换为XYZ坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20497445/