Class QualityEvaluator_RangeImageSimilarity

Inheritance Relationships

Base Type

Class Documentation

class QualityEvaluator_RangeImageSimilarity : public mp2p_icp::QualityEvaluator

Matching quality evaluator: simple ratio [0,1] of paired entities.

Implementation of the method in the papper:

  • ”Analyzing the Quality of Matched 3D Point Clouds of Objects”, Igor Bogoslavskyi, Cyrill Stachniss, IROS 2017.

This implementation reprojects points into range images with the resolution defined in parameters and compares the likelihood of both range images to be generated from the same point clouds.

At present, the PT_LAYER_RAW layer of points is the only one that is used to evaluate the depth images.

Public Functions

virtual void initialize(const mrpt::containers::yaml &params) override

See base class. Parameters:

ncols: 200
nrows: 100
cx: 100
cy: 50
fx: 50
fy: 50
sigma: 0.1
#debug_show_all_in_window: false
virtual Result evaluate(const metric_map_t &pcGlobal, const metric_map_t &pcLocal, const mrpt::poses::CPose3D &localPose, const Pairings &pairingsFromICP) const override

See base class. This implementation does NOT use pairingsFromICP at all, it can be empty.

mrpt::math::CMatrixDouble projectPoints(const mrpt::maps::CPointsMap &pts, const std::optional<mrpt::poses::CPose3D> &relativePose = std::nullopt) const
std::vector<double> scores(const mrpt::math::CMatrixDouble &m1, const mrpt::math::CMatrixDouble &m2) const

Public Members

mrpt::img::TCamera rangeCamera

Parameters for the simulated camera

double sigma = 0.1
double penalty_not_visible = 2.0

!< Uncertainty of depth ranges [meters]

Penalty for pixels only visible from one view point [in “sigmas”]

bool debug_show_all_in_window = false
bool debug_save_all_matrices = false