首先定义相机的一些参数(可以根据自己的相机参数进行相机参数的相应修改)
const double camera_factor = 1000;
const double camera_cx = 325.5;
const double camera_cy = 253.5;
const double camera_fx = 518.0;
const double camera_factor = 1000;
const double camera_cx = 325.5;
const double camera_cy = 253.5;
const double camera_fx = 518.0;
const double camera_fy = 519.0;
深度图与点云数据之间的映射关系如下:
cv::Mat mDepth= cv::imread("C:\\Users\\XiRobot\\Desktop\\新兴铸管采图\\Right\\0_depth_09-19-16.png",-1);
PointCloud::Ptr cloud(new PointCloud);
// 遍历深度图
for (int m = 0; m < mDepth.rows; m++)
{
for (int n = 0; n < mDepth.cols; n++)
{
// 获取深度图中(m,n)处的值
ushort d = mDepth.ptr<ushort>(m)[n];