marker_divergence — DRIVE tactorque op

• 資料種類:matrix × matrix × scalar → table

• 呼叫: import fullseye as fs; fs.ledger.marker_divergence(pts, u, radius: 'float', min_neighbors: 'int' = 4, k_max: 'int' = 24) -> 'dict'(要直接呼叫實作,import tactorque; tactorque.marker_divergence(pts, u, radius: 'float', min_neighbors: 'int' = 4, k_max: 'int' = 24) -> 'dict';從台帳取用則 opsdrive.get("marker_divergence"))

用法

由散布的標記 pts (N, 2) 與位移 u (N, 2) 求各點的散度 div = ∂ux/∂x + ∂uy/∂y 與旋度 curl = ∂uy/∂x − ∂ux/∂y(單位為 u 的單位 ÷ pts 的單位)。對鄰域半徑 radius 內(最多 k_max 個)的點以最小平方擬合平面 c0 + c1 x + c2 y(規則網格 + 半徑 1.01 個間距時等價於 5 點中心差分,與 sceneflow.flow_divergence 相差 1e-15;半徑 1.5 個間距的 9 點為列平均差分,在邊緣相差 11 %,實測)。對所有點一次性批次求解正規方程。鄰域點數少於 min_neighbors,或正規方程奇異(共線)的點,valid = False,div/curl = nan(fail-closed:不會悄悄設為 0)。FEM 的散布節點也用同一 op。Raises ValueError:pts/u 不是 (N, 2),形狀不同,radius ≤ 0,N < min_neighbors。

參考(範例資料、文獻)

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

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

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

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

• poc_tactile_dipole_torque — py -3.11 examples/poc_tactile_dipole_torque.py

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

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

同類別(tactorque)

punch_pressure · punch_surface_uz · hertz_pressure_shifted · ellipse_pressure_shifted · pressure_first_moment · boussinesq_kernel · boussinesq_surface_displacement · surface_divergence_closed_form


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

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