Commit 4ddd51a
committed
sample_consensus: reduce SampleConsensusModelEllipse3D template instantiations
Move the Levenberg-Marquardt optimization logic into a non-templated
pcl::internal::optimizeModelCoefficientsEllipse3D function in the
source file, reducing redundant template instantiations from 61 to 44.
This results in a ~7% reduction in build time and 10% runtime speedup
for the pcl_sample_consensus library.
Move the get_ellipse_point, dvec2ellipse, and golden_section_search
math helpers into pcl::internal in the header to allow shared access
without exposing them as class members.
Additionally:
- Fix projectPoints to write to projected_points[inlier] instead of
projected_points[i++] when copy_data_fields is true, consistent with
other SAC models
- Fix modernize-return-braced-init-list lint warning1 parent c423d30 commit 4ddd51a
3 files changed
Lines changed: 268 additions & 300 deletions
File tree
- sample_consensus
- include/pcl/sample_consensus
- impl
- src
0 commit comments