geometry op• 数据种类:points → primitive
• 调用: import fullseye as fs; fs.ledger.fit_plane_3d(points)(要直接调用实现,import match3d; match3d.fit_plane_3d(points);从台账取用则 ops3d.get("fit_plane_3d"))
点群 → 最小二乘平面(过重心,法线=最小主轴,残差 RMS)。返回 (point, normal, resid)。
取 (N,3) 点云(列数不为 3、不足 3 点则 ValueError)的质心 c,以散布矩阵最小特征值的特征向量为法线(使正交距离平方和最小。resid = sqrt(λ_min/N) = 到平面的正交距离的 RMS)。normal 为单位向量,符号任意(若要朝外,根据与视点或质心的关系翻转)。3 点时为严格通过它们的平面,resid=0(BLAS 的负舍入误差 clamp 为 0)。点呈直线状(第 2 个特征值也为 0)时法线不确定。对离群值敏感(先用 ransac_plane / plane_segmentation 取得内点)。仅限 3-D。
后续: distance_point_plane / angle_between_planes / intersect_planes,高度场的平面度则用 surface_form_error(degree=1)。
• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。
• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。
• geometry_metrology — py -3.11 examples_3d/geometry_metrology.py
primitive 作为输入)fuse_to_voxel · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line · distance_line_line · distance_segment_segment
geometry)line_from_2points · plane_from_3points · angle_3points · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line
*Provenance: match3d.py — 3D 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.