我希望使用kinect v2获得基于颜色的点云数据的质心。即使在搜索了很长时间后,我也找不到能够完成这项任务的软件包。但由于这是一个普遍问题,我认为应该有一个现有的包。
请帮忙。提前谢谢!
答案 0 :(得分:2)
如果您正在使用PCL,则可以
pcl::PointXYZRGB centroid;
pcl::computeCentroid(*cloud, centroid);
否则它只是积分的平均值。例如:
pcl::PointXYZI centroid;
float x = 0, y = 0, z = 0;
for (int k = 0; k < cloud->size(); k++)
{
x += cloud->at(k).x;
y += cloud->at(k).y;
z += cloud->at(k).z;
}
centroid.x = x / (cloud->size() + 0.0);
centroid.y = y / (cloud->size() + 0.0);
centroid.z = z / (cloud->size() + 0.0);