robust_fit op• Data kinds: points × normals → primitive
• Call: import fullseye as fs; fs.ledger.ransac_cylinder(points, normals, thresh, iters=800, seed=0) (to call the implementation directly, import ransac_fit; ransac_fit.ransac_cylinder(points, normals, thresh, iters=800, seed=0); from the registry, ops3d.get("ransac_cylinder"))
Outlier-robust RANSAC cylinder fitting (point normals are required).
> The detailed description below is the original text — the summary and the headings are translated.
円筒表面の法線は軸に直交するので、2 点の法線の外積で軸方向を推定 → 軸に直交な平面へ
全点を投影 → その平面内で円をフィット → |投影距離 - r| < `thresh` の inlier を
最大化。最終 inlier ではより頑健に軸を再推定(法線群の SVD の最小特異方向 = 軸)し、
投影円を最小二乗リフィットする。法線が無ければ呼び出し側で estimate してから渡す。
Args:
points: (N,3) 点群。
normals: (N,3) 各点の(単位)法線。
thresh: inlier とみなす |投影距離-r| のしきい値。
iters: RANSAC 反復数。
seed: 乱数シード(決定論)。
Returns:
(params, inlier_mask, info)。params = {"axis": (3,) 単位軸, "point": (3,) 軸上の一点,
"radius": float}。info には inlier 数 `n_inliers / 比 inlier_ratio / iters`。
• blas_threads_and_memory — 行列分解が遅い理由の知識 — BLAS スレッド・キャッシュ・メモリ配置
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• ransac_prim — py -3.11 examples_3d/ransac_prim.py
primitive as input)fuse_to_voxel · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line · distance_line_line · distance_segment_segment
robust_fit)ransac_plane · ransac_sphere · ransac_line · fit_cone · fit_torus · fit_ellipsoid
*Provenance: ransac_fit.py — 3D operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.