Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D Class Reference

#include <fast_correlative_scan_matcher_3d.h>

Classes

struct  Result
 
struct  SearchParameters
 

Public Member Functions

 FastCorrelativeScanMatcher3D (const HybridGrid &hybrid_grid, const HybridGrid *low_resolution_hybrid_grid, const std::vector< TrajectoryNode > &nodes, const proto::FastCorrelativeScanMatcherOptions3D &options)
 
 FastCorrelativeScanMatcher3D (const FastCorrelativeScanMatcher3D &)=delete
 
std::unique_ptr< ResultMatch (const transform::Rigid3d &global_node_pose, const transform::Rigid3d &global_submap_pose, const TrajectoryNode::Data &constant_data, float min_score) const
 
std::unique_ptr< ResultMatchFullSubmap (const Eigen::Quaterniond &global_node_rotation, const Eigen::Quaterniond &global_submap_rotation, const TrajectoryNode::Data &constant_data, float min_score) const
 
FastCorrelativeScanMatcher3Doperator= (const FastCorrelativeScanMatcher3D &)=delete
 
 ~FastCorrelativeScanMatcher3D ()
 

Private Member Functions

Candidate3D BranchAndBound (const SearchParameters &search_parameters, const std::vector< DiscreteScan3D > &discrete_scans, const std::vector< Candidate3D > &candidates, int candidate_depth, float min_score) const
 
std::vector< Candidate3DComputeLowestResolutionCandidates (const SearchParameters &search_parameters, const std::vector< DiscreteScan3D > &discrete_scans) const
 
DiscreteScan3D DiscretizeScan (const SearchParameters &search_parameters, const sensor::PointCloud &point_cloud, const transform::Rigid3f &pose, float rotational_score) const
 
std::vector< DiscreteScan3DGenerateDiscreteScans (const SearchParameters &search_parameters, const sensor::PointCloud &point_cloud, const Eigen::VectorXf &rotational_scan_matcher_histogram, const Eigen::Quaterniond &gravity_alignment, const transform::Rigid3f &global_node_pose, const transform::Rigid3f &global_submap_pose) const
 
std::vector< Candidate3DGenerateLowestResolutionCandidates (const SearchParameters &search_parameters, int num_discrete_scans) const
 
transform::Rigid3f GetPoseFromCandidate (const std::vector< DiscreteScan3D > &discrete_scans, const Candidate3D &candidate) const
 
std::unique_ptr< ResultMatchWithSearchParameters (const SearchParameters &search_parameters, const transform::Rigid3f &global_node_pose, const transform::Rigid3f &global_submap_pose, const sensor::PointCloud &point_cloud, const Eigen::VectorXf &rotational_scan_matcher_histogram, const Eigen::Quaterniond &gravity_alignment, float min_score) const
 
void ScoreCandidates (int depth, const std::vector< DiscreteScan3D > &discrete_scans, std::vector< Candidate3D > *const candidates) const
 

Private Attributes

const HybridGrid *const low_resolution_hybrid_grid_
 
const proto::FastCorrelativeScanMatcherOptions3D options_
 
std::unique_ptr< PrecomputationGridStack3Dprecomputation_grid_stack_
 
const float resolution_
 
RotationalScanMatcher rotational_scan_matcher_
 
const int width_in_voxels_
 

Detailed Description

Definition at line 66 of file fast_correlative_scan_matcher_3d.h.

Constructor & Destructor Documentation

◆ FastCorrelativeScanMatcher3D() [1/2]

cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::FastCorrelativeScanMatcher3D ( const HybridGrid hybrid_grid,
const HybridGrid low_resolution_hybrid_grid,
const std::vector< TrajectoryNode > &  nodes,
const proto::FastCorrelativeScanMatcherOptions3D &  options 
)

Definition at line 130 of file fast_correlative_scan_matcher_3d.cc.

◆ ~FastCorrelativeScanMatcher3D()

cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::~FastCorrelativeScanMatcher3D ( )

Definition at line 143 of file fast_correlative_scan_matcher_3d.cc.

◆ FastCorrelativeScanMatcher3D() [2/2]

cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::FastCorrelativeScanMatcher3D ( const FastCorrelativeScanMatcher3D )
delete

Member Function Documentation

◆ BranchAndBound()

Candidate3D cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::BranchAndBound ( const SearchParameters search_parameters,
const std::vector< DiscreteScan3D > &  discrete_scans,
const std::vector< Candidate3D > &  candidates,
int  candidate_depth,
float  min_score 
) const
private

Definition at line 394 of file fast_correlative_scan_matcher_3d.cc.

◆ ComputeLowestResolutionCandidates()

std::vector< Candidate3D > cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::ComputeLowestResolutionCandidates ( const SearchParameters search_parameters,
const std::vector< DiscreteScan3D > &  discrete_scans 
) const
private

Definition at line 375 of file fast_correlative_scan_matcher_3d.cc.

◆ DiscretizeScan()

DiscreteScan3D cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::DiscretizeScan ( const SearchParameters search_parameters,
const sensor::PointCloud point_cloud,
const transform::Rigid3f pose,
float  rotational_score 
) const
private

Definition at line 218 of file fast_correlative_scan_matcher_3d.cc.

◆ GenerateDiscreteScans()

std::vector< DiscreteScan3D > cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::GenerateDiscreteScans ( const SearchParameters search_parameters,
const sensor::PointCloud point_cloud,
const Eigen::VectorXf &  rotational_scan_matcher_histogram,
const Eigen::Quaterniond &  gravity_alignment,
const transform::Rigid3f global_node_pose,
const transform::Rigid3f global_submap_pose 
) const
private

Definition at line 263 of file fast_correlative_scan_matcher_3d.cc.

◆ GenerateLowestResolutionCandidates()

std::vector< Candidate3D > cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::GenerateLowestResolutionCandidates ( const SearchParameters search_parameters,
int  num_discrete_scans 
) const
private

Definition at line 315 of file fast_correlative_scan_matcher_3d.cc.

◆ GetPoseFromCandidate()

transform::Rigid3f cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::GetPoseFromCandidate ( const std::vector< DiscreteScan3D > &  discrete_scans,
const Candidate3D candidate 
) const
private

Definition at line 386 of file fast_correlative_scan_matcher_3d.cc.

◆ Match()

std::unique_ptr< FastCorrelativeScanMatcher3D::Result > cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::Match ( const transform::Rigid3d global_node_pose,
const transform::Rigid3d global_submap_pose,
const TrajectoryNode::Data constant_data,
float  min_score 
) const

Definition at line 146 of file fast_correlative_scan_matcher_3d.cc.

◆ MatchFullSubmap()

std::unique_ptr< FastCorrelativeScanMatcher3D::Result > cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::MatchFullSubmap ( const Eigen::Quaterniond &  global_node_rotation,
const Eigen::Quaterniond &  global_submap_rotation,
const TrajectoryNode::Data constant_data,
float  min_score 
) const

Definition at line 165 of file fast_correlative_scan_matcher_3d.cc.

◆ MatchWithSearchParameters()

std::unique_ptr< FastCorrelativeScanMatcher3D::Result > cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::MatchWithSearchParameters ( const SearchParameters search_parameters,
const transform::Rigid3f global_node_pose,
const transform::Rigid3f global_submap_pose,
const sensor::PointCloud point_cloud,
const Eigen::VectorXf &  rotational_scan_matcher_histogram,
const Eigen::Quaterniond &  gravity_alignment,
float  min_score 
) const
private

Definition at line 191 of file fast_correlative_scan_matcher_3d.cc.

◆ operator=()

FastCorrelativeScanMatcher3D& cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::operator= ( const FastCorrelativeScanMatcher3D )
delete

◆ ScoreCandidates()

void cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::ScoreCandidates ( int  depth,
const std::vector< DiscreteScan3D > &  discrete_scans,
std::vector< Candidate3D > *const  candidates 
) const
private

Definition at line 349 of file fast_correlative_scan_matcher_3d.cc.

Member Data Documentation

◆ low_resolution_hybrid_grid_

const HybridGrid* const cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::low_resolution_hybrid_grid_
private

Definition at line 149 of file fast_correlative_scan_matcher_3d.h.

◆ options_

const proto::FastCorrelativeScanMatcherOptions3D cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::options_
private

Definition at line 145 of file fast_correlative_scan_matcher_3d.h.

◆ precomputation_grid_stack_

std::unique_ptr<PrecomputationGridStack3D> cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::precomputation_grid_stack_
private

Definition at line 148 of file fast_correlative_scan_matcher_3d.h.

◆ resolution_

const float cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::resolution_
private

Definition at line 146 of file fast_correlative_scan_matcher_3d.h.

◆ rotational_scan_matcher_

RotationalScanMatcher cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::rotational_scan_matcher_
private

Definition at line 150 of file fast_correlative_scan_matcher_3d.h.

◆ width_in_voxels_

const int cartographer::mapping::scan_matching::FastCorrelativeScanMatcher3D::width_in_voxels_
private

Definition at line 147 of file fast_correlative_scan_matcher_3d.h.


The documentation for this class was generated from the following files:


cartographer
Author(s): The Cartographer Authors
autogenerated on Mon Feb 28 2022 22:00:59