将kinect RGB和深度值转换为XYZ坐标



我正在寻找一种将kinect RGB和深度值转换为XYZ坐标的简单方法使用MATLAB。我的目标是一个函数,输入:RGB和Kinect相机拍摄的每个点的深度值,并输出每个点的:x、y和z值。

[RGB,深度]=RGB_D2XYZ(XYZ)

谢谢,Ben

您可以看看这篇很棒的文章。他们有一个叫做DepthToCloud.m的函数。你只需要确保通过图像中心和左上角。

他们也在使用Kinect,所以你真的不需要更改太多参数。

文章可以在这里找到

编辑

您可以使用mexoccv或OpenCV Matlab包装器来捕捉图像并进行校准。OpenCV之后有一个很棒的函数调用reporjectImageTo3D。但这个函数需要矩阵CCD_ 2。这是投影矩阵。如果你想这样做,可以看看OpenCV文档。其他部门ToCloud也很好。

最新更新