Struct KeyframePointCloudMap::TCreationOptions
Defined in File KeyframePointCloudMap.h
Nested Relationships
This struct is a nested type of Class KeyframePointCloudMap.
Inheritance Relationships
Base Type
public mrpt::config::CLoadableOptions
Struct Documentation
-
struct TCreationOptions : public mrpt::config::CLoadableOptions
Public Functions
-
TCreationOptions() = default
-
void loadFromConfigFile(const mrpt::config::CConfigFileBase &c, const std::string &s) override
-
void dumpToTextStream(std::ostream &out) const override
-
void writeToStream(mrpt::serialization::CArchive &out) const
-
void readFromStream(mrpt::serialization::CArchive &in)
Public Members
-
uint32_t max_search_keyframes = 3
Maximum number of key-frames to search for NN.
-
uint32_t k_correspondences_for_cov = 20
-
double rotation_distance_weight = 2.0
Weight converting angular distance [rad] to equivalent linear distance [m] for keyframe proximity ranking. Higher values favor angularly-close (similar orientation) frames.
-
uint32_t num_diverse_keyframes = 1
Number of keyframe slots (out of max_search_keyframes) reserved for angularly diverse and/or more distant keyframes. Must be < max_search_keyframes.
-
bool use_view_direction_filter = true
If true (default), and if both the reference and query point clouds contain per-point view-direction fields (“view_x”, “view_y”, “view_z” - unit vectors pointing FROM the point TOWARD the sensor at acquisition time), then a cov-to-cov pairing is accepted only when the angle between the two view directions is at most
max_view_angle_deg.The rationale is that two points on opposite sides of a thin surface (e.g. a wall seen from the front vs. the back, or a thin pole) will have nearly anti-parallel view vectors. Pairing them would produce a badly conditioned or outright wrong ICP residual. 120° is a reasonable default: it rejects pairs whose view directions differ by more than 120° (cos < -0.5) while keeping pairs seen from “similar enough” directions.
Setting this to
false, or to a threshold ≥ 180°, effectively disables the filter even when view fields are present.
-
double max_view_angle_deg = 120.0
Maximum allowed angle [degrees] between the view-direction vectors of a candidate cov-to-cov pair. Only used when
use_view_direction_filteristrueand the view fields are present. Default: 120°.
-
TCreationOptions() = default