signed_surface_distance — SHAPESTAT deviation op

• 資料種類:points × points → signal

• 呼叫: import fullseye as fs; fs.ledger.signed_surface_distance(query, surface, surface_normals=None, k: 'int' = 1)(要直接呼叫實作,import shapestats; shapestats.signed_surface_distance(query, surface, surface_normals=None, k: 'int' = 1);從台帳取用則 opsshapestat.get("signed_surface_distance"))

用法

查詢點到曲面的帶正負號距離。→ (N,)。

正負號由面的法線決定(外側為正)。1-D 輪廓有 profileops.profile_deviation,而 3-D 卻沒有相應的東西 —— 這是 2026-09-06 PoC 暴露出的漏洞。

省略法線時用 normals_orient.estimate_oriented_normals 估計 —— 若不帶朝向,正負號會逐點散亂(單純的 PCA 法線正負號任意,旋轉後 4 成會翻面。與 pointcloud.fpfh 踩過的是同一個坑)。

k 是決定正負號時使用的最近鄰個數。為 1 時就是押注於最近鄰 1 點的法線,在有雜訊的面上正負號會跳變。設為 2 以上時,依距離加權的平均朝向來決定(距離本身仍取最近鄰)。

詳細使用指南

• shape_statistics 族使用指南

參考(範例資料、文獻)

• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。

• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。

• 演算法的正典(作者、年份)與用途見上面的族使用指南。

可執行的範例(實際呼叫該運算子並已驗證的樣例)

• poc_am_thermal_to_ct — py -3.11 examples/poc_am_thermal_to_ct.py

• shapestat_landmark_tour — py -3.11 examples/shapestat_landmark_tour.py

型別可銜接的下一個運算子(可接受 signal 作為輸入)

shape_reconstruct

同類別(deviation)

—


*Provenance: shapestats.py — SHAPESTAT 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.