ViewDesignEngine  3.1.0
高性能 CAD 计算几何引擎
icp.h
浏览该文件的文档.
1 #pragma once
2 #include "vde/core/point.h"
3 #include "vde/core/transform.h"
4 #include <vector>
5 
6 namespace vde::core {
11 
19 struct ICPResult {
22 
28  double rms_error;
29 
32 
34  bool converged;
35 };
36 
68 [[nodiscard]] ICPResult icp_register(const std::vector<Point3D>& source,
69  const std::vector<Point3D>& target,
70  int max_iter = 50,
71  double tolerance = 1e-6);
72 
73 } // namespace vde::core
Eigen::Transform< double, 3, Eigen::Affine > Transform3D
三维仿射变换类型
Definition: transform.h:15
ICPResult icp_register(const std::vector< Point3D > &source, const std::vector< Point3D > &target, int max_iter=50, double tolerance=1e-6)
迭代最近点(ICP)刚体点云配准
Definition: aabb.h:6
Point< double, 2 > Point2D
双精度二维点
Definition: math_types.h:41
Point< double, 3 > Point3D
双精度三维点
Definition: math_types.h:43
Vector< double, 2 > Vector2D
双精度二维向量
Definition: math_types.h:53
Vector< double, 3 > Vector3D
双精度三维向量
Definition: math_types.h:55
ICP(迭代最近点)配准结果
Definition: icp.h:19
double rms_error
配准后的均方根误差
Definition: icp.h:28
Transform3D transform
将 source 对齐到 target 的刚体变换
Definition: icp.h:21
bool converged
是否在达到最大迭代次数前收敛
Definition: icp.h:34
int iterations
实际使用的迭代次数
Definition: icp.h:31