Template Class NDTCuda

Inheritance Relationships

Base Type

Class Documentation

template<typename PointSource, typename PointTarget>
class NDTCuda : public fast_gicp::LsqRegistration<PointSource, PointTarget>

Public Types

using Scalar = float
using Matrix4 = typename pcl::Registration<PointSource, PointTarget, Scalar>::Matrix4
using PointCloudSource = typename pcl::Registration<PointSource, PointTarget, Scalar>::PointCloudSource
using PointCloudSourcePtr = typename PointCloudSource::Ptr
using PointCloudSourceConstPtr = typename PointCloudSource::ConstPtr
using PointCloudTarget = typename pcl::Registration<PointSource, PointTarget, Scalar>::PointCloudTarget
using PointCloudTargetPtr = typename PointCloudTarget::Ptr
using PointCloudTargetConstPtr = typename PointCloudTarget::ConstPtr
using Ptr = pcl::shared_ptr<NDTCuda<PointSource, PointTarget>>
using ConstPtr = pcl::shared_ptr<const NDTCuda<PointSource, PointTarget>>

Public Functions

NDTCuda()
virtual ~NDTCuda() override
void setDistanceMode(NDTDistanceMode mode)
void setResolution(double resolution)
void setNeighborSearchMethod(NeighborSearchMethod method, double radius = -1.0)
virtual void swapSourceAndTarget() override
virtual void clearSource() override
virtual void clearTarget() override
virtual void setInputSource(const PointCloudSourceConstPtr &cloud) override
virtual void setInputTarget(const PointCloudTargetConstPtr &cloud) override

Protected Functions

virtual void computeTransformation(PointCloudSource &output, const Matrix4 &guess) override
virtual double linearize(const Eigen::Isometry3d &trans, Eigen::Matrix<double, 6, 6> *H, Eigen::Matrix<double, 6, 1> *b) override
virtual double compute_error(const Eigen::Isometry3d &trans) override

Protected Attributes

std::unique_ptr<cuda::NDTCudaCore> ndt_cuda_