45 #include <pcl/sample_consensus/ransac.h>
46 #include <pcl/sample_consensus/sac_model_registration.h>
47 #include <pcl/registration/registration.h>
48 #include <pcl/registration/transformation_estimation_svd.h>
49 #include <pcl/registration/transformation_estimation_point_to_plane_lls.h>
50 #include <pcl/registration/correspondence_estimation.h>
51 #include <pcl/registration/default_convergence_criteria.h>
93 template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar =
float>
108 typedef boost::shared_ptr<IterativeClosestPoint<PointSource, PointTarget, Scalar> >
Ptr;
109 typedef boost::shared_ptr<const IterativeClosestPoint<PointSource, PointTarget, Scalar> >
ConstPtr;
181 std::vector<pcl::PCLPointField> fields;
184 for (
size_t i = 0; i < fields.size (); ++i)
187 else if (fields[i].name ==
"y")
y_idx_offset_ = fields[i].offset;
188 else if (fields[i].name ==
"z")
z_idx_offset_ = fields[i].offset;
189 else if (fields[i].name ==
"normal_x")
194 else if (fields[i].name ==
"normal_y")
199 else if (fields[i].name ==
"normal_z")
216 std::vector<pcl::PCLPointField> fields;
219 for (
size_t i = 0; i < fields.size (); ++i)
221 if (fields[i].name ==
"normal_x" || fields[i].name ==
"normal_y" || fields[i].name ==
"normal_z")
289 template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar =
float>
301 typedef boost::shared_ptr<IterativeClosestPoint<PointSource, PointTarget, Scalar> >
Ptr;
302 typedef boost::shared_ptr<const IterativeClosestPoint<PointSource, PointTarget, Scalar> >
ConstPtr;
307 reg_name_ =
"IterativeClosestPointWithNormals";
330 #include <pcl/registration/impl/icp.hpp>
332 #endif //#ifndef PCL_ICP_H_