37#ifndef PCL_REGISTRATION_IMPL_TRANSFORMATION_ESTIMATION_3POINT_H_
38#define PCL_REGISTRATION_IMPL_TRANSFORMATION_ESTIMATION_3POINT_H_
40#include <pcl/common/eigen.h>
41#include <pcl/registration/transformation_estimation_3point.h>
44template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar>
52 PCL_ERROR(
"[pcl::TransformationEstimation3Point::estimateRigidTransformation] "
53 "Number of points in source (%zu) and target (%zu) must be 3!\n",
65template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar>
75 "[pcl::TransformationEstimation3Point::estimateRigidTransformation] Number of "
76 "indices in source (%zu) and points in target (%zu) must be 3!\n",
88template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar>
98 PCL_ERROR(
"[pcl::TransformationEstimation3Point::estimateRigidTransformation] "
99 "Number of indices in source (%lu) and target (%lu) must be 3!\n",
111template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar>
119 if (correspondences.size() != 3) {
120 PCL_ERROR(
"[pcl::TransformationEstimation3Point::estimateRigidTransformation] "
121 "Number of correspondences (%lu) must be 3!\n",
122 correspondences.size());
132template <
typename Po
intSource,
typename Po
intTarget,
typename Scalar>
157 Eigen::Matrix<Scalar, 3, 1>
s1 =
161 Eigen::Matrix<Scalar, 3, 1>
s2 =
171 Eigen::Matrix<Scalar, 3, 1>
t1 =
175 Eigen::Matrix<Scalar, 3, 1>
t2 =
Iterator class for point clouds with or without given indices.
std::size_t size() const
Size of the range the iterator is going through.
void demeanPointCloud(ConstCloudIterator< PointT > &cloud_iterator, const Eigen::Matrix< Scalar, 4, 1 > ¢roid, pcl::PointCloud< PointT > &cloud_out, int npts=0)
Subtract a centroid from a point cloud and return the de-meaned representation.
unsigned int compute3DCentroid(ConstCloudIterator< PointT > &cloud_iterator, Eigen::Matrix< Scalar, 4, 1 > ¢roid)
Compute the 3D (X-Y-Z) centroid of a set of points and return it as a 3D vector.
std::vector< pcl::Correspondence, Eigen::aligned_allocator< pcl::Correspondence > > Correspondences
IndicesAllocator<> Indices
Type used for indices in PCL.