Det3D 项目安装与使用指南
Det3D 项目地址: https://gitcode.com/gh_mirrors/det/Det3D
1. 项目介绍
Det3D 是一个基于 PyTorch 的通用 3D 物体检测代码库,旨在提供多种 3D 物体检测算法的实现,如 PointPillars、SECOND、PIXOR 等。该项目支持多个数据集,包括 KITTI、nuScenes 和 Lyft,并且提供了在主要基准测试上的最先进方法。Det3D 的主要特点包括多数据集支持、点云和体素模型库、分布式训练和验证、以及灵活的锚点维度设置。
2. 项目快速启动
2.1 安装环境要求
- Linux
- Python 3.6+
- PyTorch 1.1-1.6
- CUDA 10.0/10.1
- CMake 3.13.2 或更高版本
- spconv
- nuscenes-devkit
2.2 安装步骤
-
安装 spconv
sudo apt-get install libboost-all-dev git clone https://github.com/poodarchu/spconv --recursive cd spconv && python setup.py bdist_wheel cd ./dist && pip install *.whl
-
安装 nuscenes-devkit
pip install nuscenes-devkit
-
安装 Det3D
git clone https://github.com/poodarchu/Det3D.git cd Det3D python setup.py build develop
2.3 常见安装问题
-
ModuleNotFoundError: No module named 'det3d.ops.nms.nms'
解决方法:重新运行
python setup.py build develop
。 -
*"values of 'package_data' dict" must be a list of strings (got 'json')
解决方法:使用
setuptools 39.1.0
。pip install setuptools==39.1.0
3. 应用案例和最佳实践
3.1 数据集准备
Det3D 支持多个数据集,如 KITTI、nuScenes 和 Lyft。在使用前,请确保数据集已正确下载并放置在项目目录中。
3.2 模型训练
以 nuScenes 数据集为例,训练 PointPillar 模型:
python tools/train.py configs/pointpillars/pointpillars_nus_1x.py
3.3 模型评估
训练完成后,可以使用以下命令进行模型评估:
python tools/test.py configs/pointpillars/pointpillars_nus_1x.py work_dirs/pointpillars_nus_1x/latest.pth --eval bbox
4. 典型生态项目
4.1 MMDetection3D
MMDetection3D 是一个基于 PyTorch 的开源 3D 物体检测工具箱,支持多种 3D 检测算法和数据集。Det3D 与 MMDetection3D 在功能和架构上有相似之处,可以相互借鉴和补充。
4.2 SECOND.PyTorch
SECOND.PyTorch 是一个基于 PyTorch 的 3D 物体检测库,专注于 SECOND 算法的实现。Det3D 中包含了 SECOND 的实现,可以作为参考和对比。
4.3 PointRCNN
PointRCNN 是一个基于点云的 3D 物体检测算法,Det3D 中提供了 PointRCNN 的实现。通过对比和学习 PointRCNN 的实现,可以更好地理解 3D 物体检测的原理和方法。
通过以上模块的介绍和实践,您可以快速上手 Det3D 项目,并将其应用于实际的 3D 物体检测任务中。