struct mp2p_icp::CovFeatureResult
Overview
Output of CovFeatureEvaluator::evaluate().
#include <IcpCovFeatures.h> struct CovFeatureResult { // fields bool ok = false; Eigen::Matrix<double, 6, 6> H = Eigen::Matrix<double, 6, 6>::Zero(); Eigen::Matrix<double, 6, 1> g = Eigen::Matrix<double, 6, 1>::Zero(); double sigma2 = 0; Eigen::Matrix<double, 6, 6> Sigma_a = Eigen::Matrix<double, 6, 6>::Zero(); Eigen::Matrix<double, 6, 6> L_a = Eigen::Matrix<double, 6, 6>::Zero(); std::vector<float> features; };
Fields
bool ok = false
False when the solution has too few associations to define the cost locally, or when the analytic covariance is not positive definite (e.g. every matched residual is exactly zero, so sigma2 is zero); then only the residual, scene and context features are meaningful and the analytic covariance is undefined.
Eigen::Matrix<double, 6, 6> H = Eigen::Matrix<double, 6, 6>::Zero()
Gauss-Newton Hessian and gradient of the common cost at the solution, in the right tangent [x y z rx ry rz] of the solution.
double sigma2 = 0
A-posteriori unit-weight variance of the common cost [m^2].
Eigen::Matrix<double, 6, 6> Sigma_a = Eigen::Matrix<double, 6, 6>::Zero()
Common analytic covariance sigma2 * H^-1 (condition-limited) and its lower Cholesky factor, same tangent as H.
std::vector<float> features
Feature vector, in the order of CovFeatureEvaluator::featureNames().