OpenPCDet 实验资料、调试提示词与工具索引

整理 OpenPCDet 实验中用到的 KITTI road plane 资料、nuScenes 子集划分、模型参数量统计、代码分析提示词和常用工具。

这篇文章整理 OpenPCDet 实验中零散但常用的资料链接、工具脚本和代码分析提示词,方便后续查找。

1. KITTI road plane 资料

关于 KITTI road plane 的生成和下载,可以参考:

1
2
https://github.com/sshaoshuai/PointRCNN/issues/12#issuecomment-484769943
https://github.com/kujason/avod?tab=readme-ov-file

road plane 在一些基于 KITTI 的 3D 检测方法中会用到,配置数据集时需要注意相关文件是否完整。

2. nuScenes 数据集子集划分

如果想把 nuScenes 数据集拆分为 20% 子集,可以使用:

1
create_subset.py

建议在使用子集实验时记录清楚:

  • 子集比例;
  • 随机种子;
  • train / val 划分方式;
  • 使用的 sample token;
  • 是否保持类别分布一致。

否则不同实验之间可能无法公平比较。

3. 模型参数量统计

需要注意:

1
.pth 文件大小不等于模型参数量

模型参数量可以使用:

1
tools/count_params.py

建议同时记录:

  • 参数量;
  • checkpoint 大小;
  • FLOPs;
  • 推理速度;
  • 显存占用。

这样比单独记录 .pth 文件大小更有意义。

4. 显卡监控工具

安装:

1
pip install nvitop

运行:

1
nvitop -m full

训练模型时可以用它观察:

  • 显存占用;
  • GPU 利用率;
  • 温度;
  • 功耗;
  • 当前占用 GPU 的进程。

5. 代码分析提示词

如果需要让 AI 辅助分析 OpenPCDet 代码,可以使用下面的提示词。

5.1 分析 VFE 过程

1
以下是这篇论文的 VFE 过程。我是一名 3D 目标检测学习的新手,请根据代码和输入点云举例,用类似 debug 的形式,通俗易懂地一步一步分析 VFE 的过程。

5.2 分析 OpenPCDet 数据流

1
请用点云举例,一步一步分析 OpenPCDet 中 VFE、backbone、dense head 等模块的数据流变化。请结合代码,用类似 debug 的形式解释每一步输入输出的 shape 和含义。

5.3 分析某个模块

1
我是 3D 目标检测新手。请结合 OpenPCDet 源码,以一帧 KITTI 点云为例,用 debug 的方式逐行解释这个模块的输入、输出、shape 变化和每一步的作用。

5.4 分析论文改进点

1
请根据这篇论文的模型结构和 OpenPCDet 中的实现代码,帮我分析它相对于 PointPillar / SECOND / DSVT 的主要改进点,并说明这些改进可能影响哪些类别和哪些指标。

6. 实验记录模板

建议每次实验都单独记录:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
## 实验名称

### 基本信息

- 日期:
- 数据集:
- 模型:
- 配置文件:
- 代码文件:
- checkpoint:
- GPU:
- batch size:
- epoch:

### 修改内容

- 修改点 1:
- 修改点 2:
- 修改点 3:

### 训练命令

```bash
python train.py --cfg_file ...

测试命令

1
python test.py --cfg_file ... --ckpt ...

结果

类别EasyModerateHard
Car
Pedestrian
Cyclist

备注

  • 是否出现报错:
  • 是否保存提交文件:
  • 是否需要复跑:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17

## 7. 推荐的实验目录管理方式

可以按下面方式组织:

```text
experiments/
├── 2026-05-18-dsvt-baseline/
│   ├── config.yaml
│   ├── notes.md
│   ├── train.log
│   └── eval.log
├── 2026-05-19-dsvt-cross-xy/
│   ├── config.yaml
│   ├── notes.md
│   ├── train.log
│   └── eval.log

这样做的好处是:

  • 每个实验独立;
  • 配置和结果能一一对应;
  • 后续写论文或报告时容易追溯;
  • 出现问题时方便回滚。

总结

这篇文章主要作为资料索引使用。OpenPCDet 实验中很多问题不是一次性解决的,建议把链接、脚本、提示词和实验记录模板长期维护起来,后续会非常省时间。

使用 Hugo 构建
主题 StackJimmy 设计