gaussians_to_voxel — 3D transform op

• 数据种类:points → voxel

• 调用: import fullseye as fs; fs.ledger.gaussians_to_voxel(means, scales, opacities, size, bounds, device='cpu')(要直接调用实现,import match3d; match3d.gaussians_to_voxel(means, scales, opacities, size, bounds, device='cpu');从台账取用则 ops3d.get("gaussians_to_voxel"))

• GPU:该算子有 GPU 路径(device="cuda")

用法

3DGS(各向异性高斯)→ 密度体素。把每个高斯按 opacity 置于 means,再用平均 scale 平滑。

近似(各向同性 splat + 平滑): 精确的各向异性协方差光栅化很重,所以先以 opacity 为权重对 means 做 splat → 按 scale 平均值做 gaussian 平滑。对匹配的 coarse alignment 已足够。

参数: means (N,3) 中心;opacities 被 reshape 为长度 N,作为 splat 的权重(在 points_to_voxel 加 1 的地方改加 opacity)。scales 不论形状都汇总为 1 个平均值,以 σ = mean(scales)/mean(hi − lo)·size(world 长度 → voxel 长度)作为平滑宽度(下限 0.5 voxel;scales 为空时 σ=1)。各向异性、旋转被忽略。bounds=(lo, hi) 为必需(不可为 None;由 _lo_hi 校验,不合法则 ValueError)。范围外的中心被 clip 到边缘 voxel。返回值 (size, size, size) float64,轴顺序为 means 的列顺序。opacity 总和大致守恒,但不做归一化。若要转为点云,用 gaussians_to_points。

参考(示例数据、文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

可运行的示例(实际调用该算子并已验证的样例)

• transforms_repr — py -3.11 examples_3d/transforms_repr.py

类型可衔接的下一个算子(可接受 voxel 作为输入)

voxel_to_mips · voxel_to_mesh · signed_distance_field · to_points · sobel3d · hessian3d · curvature_maps · edt_jfa

同类别(transform)

points_to_voxel · mesh_to_voxel · mesh_to_points · depth_to_points · voxel_to_mips · voxel_to_mesh · tsdf_from_depth · signed_distance_field


*Provenance: match3d.py — 3D 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

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