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.