|
本帖最后由 FeelweeL 于 2014-9-2 20:13 编辑
官网配准模块里的第二个例程:如何逐步配准多幅点云(http://www.pclcn.org/study/shownews.php?lang=cn&id=78)里面有定义一个点代表MyPointRepresentation,然后设置点代表:
//以< x, y, z, curvature >形式定义一个新的点
class MyPointRepresentation : public pcl::PointRepresentation <PointNormalT>
......
......
//举例说明我们自定义点的表示(以上定义)
MyPointRepresentation point_representation;
//调整'curvature'尺寸权重以便使它和x, y, z平衡
float alpha[4] = {1.0, 1.0, 1.0, 1.0};
point_representation.setRescaleValues (alpha);
//
......
//设置点表示
reg.setPointRepresentation (boost::make_shared<const MyPointRepresentation> (point_representation));
reg.setInputCloud (points_with_normals_src);
reg.setInputTarget (points_with_normals_tgt);
这和第一个例程:”如何使用icp算法“有些不同。设置点代表有什么作用,会影响KD树的搜素吗?而且这个例子里icpi配准用的是PointNormal类型的点,KD树差早最近邻的时候会怎么计算最近邻呢?
想参考借鉴这个例子,但是一直不理解,还望论坛里的大神能解释指点一下:handshake
|
|