MMDetection3D环境配置实战:从零到一搭建3D检测开发环境

发布时间:2026/5/27 13:02:27

MMDetection3D环境配置实战:从零到一搭建3D检测开发环境 1. 环境准备从硬件到软件的全面检查第一次接触3D目标检测的朋友们千万别急着敲命令。我见过太多人卡在环境问题上浪费好几天时间其实只要前期准备充分后续安装就能一气呵成。咱们先来做个全面体检硬件方面你需要一块NVIDIA显卡GTX 1060起步显存建议6GB以上。去年我在笔记本的MX450显卡上折腾时连最简单的点云demo都跑不起来血的教训啊用nvidia-smi命令查看显卡信息时要特别注意CUDA版本是否显示正常。如果报错八成是驱动没装好。系统环境推荐Ubuntu 18.04/20.04 LTS这是大多数深度学习框架验证过的稳定版本。最近帮学弟在Ubuntu 22.04上配置时就遇到了glibc版本冲突的问题最后不得不降级解决。建议新手别用太新的发行版容易踩坑。关键依赖检查清单GCC 5.4gcc --versionCMake 3.14cmake --versionNVCC编译器nvcc -V显卡驱动cat /proc/driver/nvidia/version注意如果公司服务器需要sudo权限建议提前联系管理员安装驱动。我有次在客户现场调试就因为没有sudo权限导致CUDA安装失败项目延期了三天。2. Conda环境搭建隔离的Python沙盒新手最容易犯的错误就是直接往系统Python里装库。去年团队来了个实习生把MMDetection3D装到了base环境结果导致其他项目全部崩溃。用conda创建独立环境才是正道# 安装Miniconda比Anaconda更轻量 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh -b -p $HOME/miniconda source ~/miniconda/bin/activate创建环境时python版本很关键。经过实测MMDetection3D 1.x对Python 3.8兼容性最好。太新的3.10版本可能会导致spconv编译失败conda create -n mmdet3d python3.8 -y conda activate mmdet3d环境配置好后建议先安装基础工具链。这个步骤很多教程会忽略但实际开发中非常有用pip install ipython jupyterlab matplotlib tqdm conda install -c conda-forge openblas ninja3. PyTorch与CUDA的版本舞蹈版本匹配是环境配置中最头疼的部分。上个月我在复现ICCV2023的论文时就因为PyTorch版本不对导致精度下降5%。这里分享个万能组合对于RTX 30系显卡conda install pytorch1.12.1 torchvision0.13.1 torchaudio0.12.1 cudatoolkit11.3 -c pytorchGTX 10/20系显卡可以用conda install pytorch1.10.1 torchvision0.11.2 torchaudio0.10.1 cudatoolkit11.3 -c pytorch验证安装时别只用简单的import torch要实际测试CUDA是否可用import torch print(torch.cuda.is_available()) # 必须返回True print(torch.rand(2,3).cuda()) # 应该在GPU上创建张量如果遇到CUDA initialization错误八成是驱动版本不匹配。这时候需要查看nvidia-smi显示的驱动版本对照NVIDIA官网的CUDA兼容性表格重装对应版本的CUDA Toolkit4. MMCV全家桶安装指南MMCV是OpenMMLab系列的基础库版本要求非常严格。上周在客户服务器上就遇到了mmcv-full与mmdet3d版本冲突的问题最后发现是pip缓存导致的。推荐使用openmim管理pip install -U openmim mim install mmengine mim install mmcv2.0.0rc4,2.2.0安装完成后建议运行这个测试脚本from mmcv.ops import get_compiling_cuda_version print(get_compiling_cuda_version()) # 应该与nvcc -V一致常见问题解决方案报错Could not build wheels for mmcv-full安装系统依赖sudo apt install build-essential gcc g报错GLIBCXX not found更新GCC版本或conda安装libgcc内存不足添加--no-cache-dir参数5. MMDetection3D核心安装官方提供两种安装方式我强烈推荐源码安装方便后续调试和二次开发git clone -b dev-1.x https://github.com/open-mmlab/mmdetection3d.git cd mmdetection3d pip install -v -e . # -e表示可编辑模式安装过程中最可能卡在spconv这个依赖。经过多次实践我发现spconv2.0的兼容性最好pip install spconv-cu1132.0.0 # CUDA11.3版本如果遇到编译错误试试这个万能解法先卸载所有spconv版本安装系统依赖sudo apt install libboost-all-dev指定Torch版本重新编译6. 验证环境从Hello World到实际推理最简单的验证方法是直接导入包import mmdet3d print(mmdet3d.__version__)但更靠谱的方式是跑通完整pipeline。这里分享一个经过验证的demo流程下载预训练模型和配置mim download mmdet3d --config pointpillars_hv_secfpn_8xb6-160e_kitti-3d-car --dest .准备测试数据如果没有官方数据可以用这个自制样本import numpy as np points np.random.rand(1000,4).astype(np.float32) # 随机生成1000个点 points[:,3] 0.5 # 反射强度 np.save(test.npy, points)运行推理python demo/pcd_demo.py test.npy \ pointpillars_hv_secfpn_8xb6-160e_kitti-3d-car.py \ hv_pointpillars_secfpn_6x8_160e_kitti-3d-car_20220331_134606-d42d15ed.pth \ --out-dir output如果看到output目录下生成可视化结果恭喜你环境配置成功。我在AWS g4dn.xlarge实例上测试整个流程大概需要30分钟。记得安装完成后用conda env export environment.yml备份环境配置下次迁移时能节省大量时间。

相关新闻