3D 占据栅格(Occupancy)
3D 占据栅格传感器(AIASDGOccupancySensor)在传感器周围(或全场景)构建三维体素网格,检测每个体素的空间占据状态,并导出供占据预测网络(Occupancy Network)训练或三维场景分析使用的数据。
1. 放置与配置
- 在关卡中放置
AIASDGOccupancySensorActor(或挂载到载具 Pawn 上),确认SensorName(默认"occupancy")。 - 在
capture_config.json的sensors.occupancy.instances[]中配置实例:
"sensors": {
"occupancy": {
"fps": 10,
"instances": [
{
"name": "occupancy",
"enabled": true,
"model": "medium",
"volume_shape": "box",
"mode": "per_frame",
"voxel_size_cm": 25.0,
"dimensions": [128, 128, 32]
}
]
}
}
2. 预设档位与参数说明
预设档位(model)
model 值 | 默认体素边长 (voxel_size_cm) | 默认网格尺寸 (dimensions) | 默认覆盖范围 |
|---|---|---|---|
fine | 4.0 cm | [200, 200, 50] | 8 m × 8 m × 2 m(近距精细几何) |
medium(默认) | 25.0 cm | [128, 128, 32] | 32 m × 32 m × 8 m(车载/无人机标准感知范围) |
coarse | 64.0 cm | [128, 128, 16] | 81.9 m × 81.9 m × 10.2 m(大范围粗粒度) |
custom | 自定义 | 自定义 | 由 voxel_size_cm 与 dimensions 决定 |
配置参数表
| 字段名 | 类型 | 默认值 | 说明 |
|---|---|---|---|
name | string | "occupancy" | 对应关卡中 AIASDGOccupancySensor 的 SensorName |
enabled | bool | true | 是否启用该占据栅格实例 |
model | string | "medium" | 预设档位:fine | medium | coarse | custom |
volume_shape | string | "box" | 采样体积形状:box(长方体)或 cylinder(圆柱体) |
mode | string | "per_frame" | per_frame(逐帧随传感器输出局部占据网格)或 global / scanner(增量扫描累积全局地图) |
voxel_size_cm | float | 25.0 | 单个体素边长(厘米) |
dimensions | int[3] | [128, 128, 32] | 网格三轴体素数量 [Nx, Ny, Nz] |
cylinder_radius_cm | float | 0.0 | cylinder 模式下的水平半径(厘米,0 为自动取 Nx * voxel_size_cm / 2) |
ignore_movable | bool | false | true 时忽略动态可动物体(仅构建静态环境地图);默认 false 包含动态物体 |
ignore_tags | string[] | [] | 忽略带有指定 Actor Tag 的物体(如载具自身) |
3. 可视化查看
采集完成后,可通过 Dashboard 服务或生成的静态 occupancy_3d.html 在浏览器中交互式查看逐帧 3D 体素占据网格与高度着色分布。