Point Cloud Library (PCL)
1.9.1
|
39 #ifndef PCL_JOINT_ICP_H_
40 #define PCL_JOINT_ICP_H_
43 #include <pcl/registration/icp.h>
54 template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar =
float>
76 typedef boost::shared_ptr<JointIterativeClosestPoint<PointSource, PointTarget, Scalar> >
Ptr;
77 typedef boost::shared_ptr<const JointIterativeClosestPoint<PointSource, PointTarget, Scalar> >
ConstPtr;
122 reg_name_ =
"JointIterativeClosestPoint";
135 PCL_WARN (
"[pcl::%s::setInputSource] Warning; JointIterativeClosestPoint expects multiple clouds. Please use addInputSource.",
159 PCL_WARN (
"[pcl::%s::setInputTarget] Warning; JointIterativeClosestPoint expects multiple clouds. Please use addInputTarget.",
229 #include <pcl/registration/impl/joint_icp.hpp>
231 #endif //#ifndef PCL_JOINT_ICP_H_
void determineRequiredBlobData()
Looks at the Estimators and Rejectors and determines whether their blob-setter methods need to be cal...
This file defines compatibility wrappers for low level I/O functions.
virtual void setInputSource(const PointCloudSourceConstPtr &cloud)
Provide a pointer to the input source (e.g., the point cloud that we want to align to the target)
boost::shared_ptr< PointCloud< PointSource > > Ptr
PointIndices::Ptr PointIndicesPtr
boost::shared_ptr< const CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > > ConstPtr
CorrespondenceEstimation::Ptr CorrespondenceEstimationPtr
std::vector< PointCloudTargetConstPtr > targets_
void clearCorrespondenceEstimations()
Reset my list of correspondence estimation methods.
IterativeClosestPoint provides a base implementation of the Iterative Closest Point algorithm.
virtual void setInputSource(const PointCloudSourceConstPtr &)
Provide a pointer to the input source (e.g., the point cloud that we want to align to the target)
virtual void computeTransformation(PointCloudSource &output, const Matrix4 &guess)
Rigid transformation computation method with initial guess.
virtual ~JointIterativeClosestPoint()
Empty destructor.
const std::string & getClassName() const
Abstract class get name method.
Abstract CorrespondenceEstimationBase class.
virtual void setInputTarget(const PointCloudTargetConstPtr &cloud)
Provide a pointer to the input target (e.g., the point cloud that we want to align to the target)
PointCloudSource::Ptr PointCloudSourcePtr
JointIterativeClosestPoint()
Empty constructor.
PointCloudTarget::ConstPtr PointCloudTargetConstPtr
boost::shared_ptr< ::pcl::PointIndices > Ptr
boost::shared_ptr< CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > > Ptr
pcl::search::KdTree< PointSource > KdTreeReciprocal
IterativeClosestPoint< PointSource, PointTarget, Scalar >::Matrix4 Matrix4
boost::shared_ptr< KdTree< PointT, Tree > > Ptr
PointCloudTarget::Ptr PointCloudTargetPtr
pcl::search::KdTree< PointTarget >::Ptr KdTreePtr
IterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudSource PointCloudSource
Registration< PointSource, PointTarget, Scalar >::Matrix4 Matrix4
std::vector< PointCloudSourceConstPtr > sources_
void addInputSource(const PointCloudSourceConstPtr &cloud)
Add a source cloud to the joint solver.
boost::shared_ptr< JointIterativeClosestPoint< PointSource, PointTarget, Scalar > > Ptr
void addInputTarget(const PointCloudTargetConstPtr &cloud)
Add a target cloud to the joint solver.
void clearInputTargets()
Reset my list of input targets.
void addCorrespondenceEstimation(CorrespondenceEstimationPtr ce)
Add a manual correspondence estimator If you choose to do this, you must add one for each input sourc...
boost::shared_ptr< ::pcl::PointIndices const > ConstPtr
KdTree::Ptr KdTreeReciprocalPtr
boost::shared_ptr< const PointCloud< PointSource > > ConstPtr
boost::shared_ptr< const JointIterativeClosestPoint< PointSource, PointTarget, Scalar > > ConstPtr
IterativeClosestPoint< PointSource, PointTarget, Scalar >::PointCloudTarget PointCloudTarget
PointCloudSource::ConstPtr PointCloudSourceConstPtr
CorrespondenceEstimation::ConstPtr CorrespondenceEstimationConstPtr
pcl::search::KdTree< PointTarget > KdTree
JointIterativeClosestPoint extends ICP to multiple frames which share the same transform.
virtual void setInputTarget(const PointCloudTargetConstPtr &)
Provide a pointer to the input target (e.g., the point cloud that we want to align to the target)
std::vector< CorrespondenceEstimationPtr > correspondence_estimations_
void clearInputSources()
Reset my list of input sources.
std::string reg_name_
The registration method name.
pcl::registration::CorrespondenceEstimationBase< PointSource, PointTarget, Scalar > CorrespondenceEstimation
PointIndices::ConstPtr PointIndicesConstPtr