GLIM
Loading...
Searching...
No Matches
Public Member Functions | List of all members
glim::CloudCovarianceEstimation Class Reference

Point covariance estimation. More...

#include <cloud_covariance_estimation.hpp>

Public Member Functions

 CloudCovarianceEstimation (const int num_threads=1)
 
void estimate (const std::vector< Eigen::Vector4d > &points, const std::vector< int > &neighbors, std::vector< Eigen::Vector4d > &normals, std::vector< Eigen::Matrix4d > &covs) const
 Estimate point normals and covariances.
 
void estimate (const std::vector< Eigen::Vector4d > &points, const std::vector< int > &neighbors, const int k_neighbors, std::vector< Eigen::Vector4d > &normals, std::vector< Eigen::Matrix4d > &covs) const
 Estimate point normals and covariances.
 
std::vector< Eigen::Matrix4d > estimate (const std::vector< Eigen::Vector4d > &points, const std::vector< int > &neighbors, const int k_neighbors) const
 Estimate point covariances.
 
std::vector< Eigen::Matrix4d > estimate (const std::vector< Eigen::Vector4d > &points, const std::vector< int > &neighbors) const
 Estimate point covariances.
 
Eigen::Matrix4d regularize (const Eigen::Matrix4d &cov, Eigen::Vector3d *eigenvalues=nullptr, Eigen::Matrix3d *eigenvectors=nullptr) const
 Regularize a covariance matrix.
 

Detailed Description

Point covariance estimation.

Member Function Documentation

◆ estimate() [1/2]

void glim::CloudCovarianceEstimation::estimate ( const std::vector< Eigen::Vector4d > &  points,
const std::vector< int > &  neighbors,
const int  k_neighbors,
std::vector< Eigen::Vector4d > &  normals,
std::vector< Eigen::Matrix4d > &  covs 
) const

Estimate point normals and covariances.

Parameters
pointsInput points
neighborsNeighbor indices (must be N * m, where N is the number of points)
k_neighborsNumber of neighbors used for estimation (must be <= m)
normals[output] Estimated normals
covs[output] Estimated covariances

◆ estimate() [2/2]

void glim::CloudCovarianceEstimation::estimate ( const std::vector< Eigen::Vector4d > &  points,
const std::vector< int > &  neighbors,
std::vector< Eigen::Vector4d > &  normals,
std::vector< Eigen::Matrix4d > &  covs 
) const

Estimate point normals and covariances.

Parameters
pointsInput points
neighborsNeighbor indices (must be N * k, where N is the number of points)
normals[output] Estimated normals
covs[output] Estimated covariances

◆ regularize()

Eigen::Matrix4d glim::CloudCovarianceEstimation::regularize ( const Eigen::Matrix4d &  cov,
Eigen::Vector3d *  eigenvalues = nullptr,
Eigen::Matrix3d *  eigenvectors = nullptr 
) const

Regularize a covariance matrix.

Parameters
covInput covariance matrix
eigenvalues[output] Eigenvalues of the covariance matrix
eigenvectors[output] Eigenvectors of the covariance matrix
Returns
Regularized covariance matrix

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