自动驾驶占用网络OCC学习笔记
第一章 mmdetection3d 开发环境搭建
文章目录
一、硬件环境准备
笔者所用的硬件环境如下:
GPU: GeForce RTX 5060 Ti 16G
Linux: Ubuntu 22.04.5 LTS
二、安装 cuda toolkit(默认已经安装完成显卡驱动)
1. 查询显卡信息
代码如下(示例):
nvidia-smi
python -m pip install -e . --no-build-isolation
显卡最高支持的cuda 版本是13.0,向下兼容。但是由于5060Ti 是新架构,所以最低支持的版本是12.8. 查询英伟达官网 可以获取显卡对应的算力等级。
python -m pip install -e . --no-build-isolation
2.安装CUDA Toolkit 12.8
打开英伟达官网找到 cuda 12.8 下载网站,下载安装CUDA Toolkit 12.8, 选择runfile
注意在运行界面, 只勾选 CUDA Toolkit. 避免安装驱动和旧显卡驱动冲突,但要注意cuda 12.8 对旧显卡驱动的版本要求(建议550及以上)

安装完成后查看cuda 的安装路径

永久修改环境变量使得安装nvcc 命令生效.
nano ~/.bashrc
文件末尾添加nvcc路径

export PATH=/usr/local/cuda-12.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.8/lib64:$LD_LIBRARY_PATH
使得更改生效
source ~/.bashrc
运行nvcc命令查看cuda 安装的版本信息
nvcc --version

三.安装mmdetection3d 及其依赖
参考mmdetection3d 官方教程完成安装,需要注意版本匹配问题
3.1. 创建conda 开发环境(关于conda的安装请自行百度)
创建python3.9 的开发环境,低于python3.9 对应cuda 版本的pytorch 不支持,高于3.9 对应的mmdeteciotn3d 不稳定。笔者建议选择python3.9 开发环境。
conda create --name openmmlab python=3.9 -y
conda activate openmmlab
查看python 版本
python3 --version

3.2. 安装pytorch
登录pytorch 官网安装对应的cuda12.8 的pytorch 版本,建议选择低版本的pytorch 以获取稳定性的支持。
笔者使用的是pytorch 2.7.0 + cu128

pip install torch==2.7.0 torchvision==0.22.0 torchaudio==2.7.0 --index-url https://download.pytorch.org/whl/cu128
等待下载安装

安装成功!

验证安装

3.3. 使用MIM 安装依赖
pip install -U openmim
3.3.1 安装MMEngine
mim install mmengine
3.3.2 使用源码安装MMCV v2.1.0
针对pytorch 2.7.0 mmcv 没有匹配的预编译包,建议使用源码安装。
克隆MMCV 仓库到你自己的路径
git clone https://github.com/open-mmlab/mmcv.git
参见帖子:

打开mmcv 文件夹并切换到 v2.1.0 分支
cd mmcv
git checkout v2.1.0

开始编译。注意加上–no-build-isolation 属性,以解决ModuleNotFoundError: No module named ‘mmcv._ext’ issue.
参见帖子:
https://github.com/open-mmlab/mmdetection/issues/11983
https://github.com/open-mmlab/mmdetection3d/issues/2776
python -m pip install -U pip setuptools wheel
export SETUPTOOLS_ENABLE_FEATURES="legacy-editable"
python -m pip install -e . --no-build-isolation
安装期间不要动鼠标,期间可能出现屏幕卡死现象,重启电脑多试几次。
安装成功!

3.3.3 使用MIM安装mmdet
mim install 'mmdet>=3.0.0'

3.3.4 使用源码安装mmdet3d
切换到v1.4.0分支
git clone https://github.com/open-mmlab/mmdetection3d.git
git checkout v1.4.0
编译
python -m pip install -U pip setuptools wheel
export SETUPTOOLS_ENABLE_FEATURES="legacy-editable"
python -m pip install -e . --no-build-isolation --config-settings editable_mode=compat

3.3.5 运行例程测试安装完成
下载配置文件
mim download mmdet3d --config pointpillars_hv_secfpn_8xb6-160e_kitti-3d-car --dest .
把这两个文件放到你自己mmdetection3d 的路径下面

运行脚本
python demo/pcd_demo.py demo/data/kitti/000008.bin pointpillars_hv_secfpn_8xb6-160e_kitti-3d-car.py hv_pointpillars_secfpn_6x8_160e_kitti-3d-car_20220331_134606-d42d15ed.pth --show
如果出现下面的图表示安装成功

如果运行过程中报import XXX module isssue, 可以对比参考下面的包版本进行升级或降级。操作之后需要重新运行mmdetecion3d 包确保更改同步。
conda list | sort
#
absl-py 0.15.0 pypi_0 pypi
addict 2.4.0 pypi_0 pypi
aliyun-python-sdk-core 2.16.0 pypi_0 pypi
aliyun-python-sdk-kms 2.16.5 pypi_0 pypi
anyio 4.12.0 pypi_0 pypi
appdirs 1.4.4 pypi_0 pypi
argon2-cffi 25.1.0 pypi_0 pypi
argon2-cffi-bindings 25.1.0 pypi_0 pypi
arrow 1.4.0 pypi_0 pypi
asttokens 3.0.1 pypi_0 pypi
async-lru 2.0.5 pypi_0 pypi
attrs 25.4.0 pypi_0 pypi
babel 2.17.0 pypi_0 pypi
beautifulsoup4 4.14.3 pypi_0 pypi
black 20.8b1 pypi_0 pypi
bleach 6.2.0 pypi_0 pypi
blinker 1.9.0 pypi_0 pypi
bzip2 1.0.8 h5eee18b_6
ca-certificates 2025.12.2 h06a4308_0
cachetools 6.2.2 pypi_0 pypi
certifi 2025.11.12 pypi_0 pypi
cffi 2.0.0 pypi_0 pypi
charset-normalizer 3.4.4 pypi_0 pypi
click 8.1.8 pypi_0 pypi
colorama 0.4.6 pypi_0 pypi
comm 0.2.3 pypi_0 pypi
configargparse 1.7.1 pypi_0 pypi
contourpy 1.3.0 pypi_0 pypi
crcmod 1.7 pypi_0 pypi
cryptography 46.0.3 pypi_0 pypi
cycler 0.12.1 pypi_0 pypi
dash 2.9.3 pypi_0 pypi
dash-core-components 2.0.0 pypi_0 pypi
dash-html-components 2.0.0 pypi_0 pypi
dash-table 5.0.0 pypi_0 pypi
debugpy 1.8.17 pypi_0 pypi
decorator 5.2.1 pypi_0 pypi
defusedxml 0.7.1 pypi_0 pypi
descartes 1.1.0 pypi_0 pypi
exceptiongroup 1.2.2 pypi_0 pypi
executing 2.2.1 pypi_0 pypi
expat 2.7.3 h7354ed3_3
fastjsonschema 2.21.2 pypi_0 pypi
filelock 3.14.0 pypi_0 pypi
fire 0.7.1 pypi_0 pypi
flake8 7.3.0 pypi_0 pypi
flask 3.1.2 pypi_0 pypi
fonttools 4.60.1 pypi_0 pypi
fqdn 1.5.1 pypi_0 pypi
fsspec 2025.9.0 pypi_0 pypi
grpcio 1.74.0 pypi_0 pypi
h11 0.16.0 pypi_0 pypi
httpcore 1.0.9 pypi_0 pypi
httpx 0.28.1 pypi_0 pypi
idna 3.11 pypi_0 pypi
imageio 2.37.2 pypi_0 pypi
importlib-metadata 8.7.0 pypi_0 pypi
importlib-resources 6.5.2 pypi_0 pypi
iniconfig 2.1.0 pypi_0 pypi
ipykernel 6.31.0 pypi_0 pypi
ipython 8.18.1 pypi_0 pypi
ipywidgets 8.1.8 pypi_0 pypi
isoduration 20.11.0 pypi_0 pypi
itsdangerous 2.2.0 pypi_0 pypi
jedi 0.19.2 pypi_0 pypi
jinja2 3.1.6 pypi_0 pypi
jmespath 0.10.0 pypi_0 pypi
joblib 1.5.2 pypi_0 pypi
json5 0.12.1 pypi_0 pypi
jsonpointer 3.0.0 pypi_0 pypi
jsonschema 4.25.1 pypi_0 pypi
jsonschema-specifications 2025.9.1 pypi_0 pypi
jupyter 1.1.1 pypi_0 pypi
jupyter-client 8.6.3 pypi_0 pypi
jupyter-console 6.6.3 pypi_0 pypi
jupyter-core 5.8.1 pypi_0 pypi
jupyter-events 0.12.0 pypi_0 pypi
jupyterlab 4.5.0 pypi_0 pypi
jupyterlab-pygments 0.3.0 pypi_0 pypi
jupyterlab-server 2.28.0 pypi_0 pypi
jupyterlab-widgets 3.0.16 pypi_0 pypi
jupyter-lsp 2.3.0 pypi_0 pypi
jupyter-server 2.17.0 pypi_0 pypi
jupyter-server-terminals 0.5.3 pypi_0 pypi
kiwisolver 1.4.7 pypi_0 pypi
lark 1.3.1 pypi_0 pypi
lazy-loader 0.4 pypi_0 pypi
ld_impl_linux-64 2.44 h153f514_2
libexpat 2.7.3 h7354ed3_3
libffi 3.4.4 h6a678d5_1
libgcc 15.2.0 h69a1729_7
_libgcc_mutex 0.1 main
libgcc-ng 15.2.0 h166f726_7
libgomp 15.2.0 h4751f2c_7
libnsl 2.0.0 h5eee18b_0
libstdcxx 15.2.0 h39759b7_7
libstdcxx-ng 15.2.0 hc03a8fd_7
libuuid 1.41.5 h5eee18b_0
libxcb 1.17.0 h9b100fa_0
libzlib 1.3.1 hb25bd0a_0
llvmlite 0.39.1 pypi_0 pypi
lyft-dataset-sdk 0.0.8 pypi_0 pypi
markdown 3.9 pypi_0 pypi
markdown-it-py 3.0.0 pypi_0 pypi
markupsafe 2.1.5 pypi_0 pypi
matplotlib 3.5.2 pypi_0 pypi
matplotlib-inline 0.2.1 pypi_0 pypi
mccabe 0.7.0 pypi_0 pypi
mdurl 0.1.2 pypi_0 pypi
mistune 3.1.4 pypi_0 pypi
mmcv 2.1.0 pypi_0 pypi
mmdet 3.3.0 pypi_0 pypi
mmdet3d 1.4.0 pypi_0 pypi
mmengine 0.10.7 pypi_0 pypi
model-index 0.1.11 pypi_0 pypi
mpmath 1.3.0 pypi_0 pypi
mypy-extensions 1.1.0 pypi_0 pypi
# Name Version Build Channel
narwhals 2.13.0 pypi_0 pypi
nbclient 0.10.2 pypi_0 pypi
nbconvert 7.16.6 pypi_0 pypi
nbformat 5.10.4 pypi_0 pypi
ncurses 6.5 h7934f7d_0
nest-asyncio 1.6.0 pypi_0 pypi
networkx 3.2.1 pypi_0 pypi
ninja 1.13.0 pypi_0 pypi
notebook 7.5.0 pypi_0 pypi
notebook-shim 0.2.4 pypi_0 pypi
numba 0.56.4 pypi_0 pypi
numpy 1.23.5 pypi_0 pypi
nuscenes-devkit 1.1.10 pypi_0 pypi
nvidia-cublas-cu12 12.8.3.14 pypi_0 pypi
nvidia-cuda-cupti-cu12 12.8.57 pypi_0 pypi
nvidia-cuda-nvrtc-cu12 12.8.61 pypi_0 pypi
nvidia-cuda-runtime-cu12 12.8.57 pypi_0 pypi
nvidia-cudnn-cu12 9.7.1.26 pypi_0 pypi
nvidia-cufft-cu12 11.3.3.41 pypi_0 pypi
nvidia-cufile-cu12 1.13.0.11 pypi_0 pypi
nvidia-curand-cu12 10.3.9.55 pypi_0 pypi
nvidia-cusolver-cu12 11.7.2.55 pypi_0 pypi
nvidia-cusparse-cu12 12.5.7.53 pypi_0 pypi
nvidia-cusparselt-cu12 0.6.3 pypi_0 pypi
nvidia-nccl-cu12 2.26.2 pypi_0 pypi
nvidia-nvjitlink-cu12 12.8.61 pypi_0 pypi
nvidia-nvtx-cu12 12.8.55 pypi_0 pypi
open3d 0.19.0 pypi_0 pypi
opencv-python 4.11.0.86 pypi_0 pypi
opendatalab 0.0.10 pypi_0 pypi
openmim 0.3.9 pypi_0 pypi
_openmp_mutex 5.1 1_gnu
openssl 3.0.18 hd6dcaed_0
openxlab 0.1.3 pypi_0 pypi
ordered-set 4.1.0 pypi_0 pypi
oss2 2.17.0 pypi_0 pypi
overrides 7.7.0 pypi_0 pypi
# packages in environment at /home/pax/anaconda3/envs/openmmlab:
packaging 24.2 pypi_0 pypi
pandas 1.4.4 pypi_0 pypi
pandocfilters 1.5.1 pypi_0 pypi
parso 0.8.5 pypi_0 pypi
pathspec 0.12.1 pypi_0 pypi
pexpect 4.9.0 pypi_0 pypi
pillow 11.3.0 pypi_0 pypi
pip 25.3 pyhc872135_0
platformdirs 4.4.0 pypi_0 pypi
plotly 6.5.0 pypi_0 pypi
pluggy 1.6.0 pypi_0 pypi
plyfile 1.0.3 pypi_0 pypi
prometheus-client 0.23.1 pypi_0 pypi
prompt-toolkit 3.0.52 pypi_0 pypi
protobuf 4.21.12 pypi_0 pypi
psutil 7.1.3 pypi_0 pypi
pthread-stubs 0.3 h0ce48e5_1
ptyprocess 0.7.0 pypi_0 pypi
pure-eval 0.2.3 pypi_0 pypi
pycocotools 2.0.10 pypi_0 pypi
pycodestyle 2.14.0 pypi_0 pypi
pycparser 2.23 pypi_0 pypi
pycryptodome 3.23.0 pypi_0 pypi
pyflakes 3.4.0 pypi_0 pypi
pygments 2.19.2 pypi_0 pypi
pyparsing 3.2.5 pypi_0 pypi
pyquaternion 0.9.9 pypi_0 pypi
pytest 8.4.2 pypi_0 pypi
python 3.9.25 h0dcde21_1
python-dateutil 2.9.0.post0 pypi_0 pypi
python-json-logger 4.0.0 pypi_0 pypi
pytokens 0.3.0 pypi_0 pypi
pytz 2023.4 pypi_0 pypi
pywavelets 1.6.0 pypi_0 pypi
pyyaml 6.0.3 pypi_0 pypi
pyzmq 27.1.0 pypi_0 pypi
readline 8.3 hc2a1206_0
referencing 0.36.0 pypi_0 pypi
regex 2025.11.3 pypi_0 pypi
requests 2.32.5 pypi_0 pypi
retrying 1.4.2 pypi_0 pypi
rfc3339-validator 0.1.4 pypi_0 pypi
rfc3986-validator 0.1.1 pypi_0 pypi
rfc3987-syntax 1.1.0 pypi_0 pypi
rich 13.4.2 pypi_0 pypi
rpds-py 0.27.1 pypi_0 pypi
scikit-image 0.19.3 pypi_0 pypi
scikit-learn 1.6.1 pypi_0 pypi
scipy 1.13.1 pypi_0 pypi
send2trash 1.8.3 pypi_0 pypi
setuptools 80.9.0 pypi_0 pypi
shapely 1.8.5 pypi_0 pypi
six 1.15.0 pypi_0 pypi
soupsieve 2.8 pypi_0 pypi
sqlite 3.51.0 h2a70700_0
stack-data 0.6.3 pypi_0 pypi
sympy 1.14.0 pypi_0 pypi
tabulate 0.9.0 pypi_0 pypi
tensorboard 2.20.0 pypi_0 pypi
tensorboard-data-server 0.7.2 pypi_0 pypi
termcolor 3.1.0 pypi_0 pypi
terminado 0.18.1 pypi_0 pypi
terminaltables 3.1.10 pypi_0 pypi
threadpoolctl 3.6.0 pypi_0 pypi
tifffile 2024.8.30 pypi_0 pypi
tinycss2 1.4.0 pypi_0 pypi
tk 8.6.15 h54e0aa7_0
toml 0.10.2 pypi_0 pypi
tomli 2.3.0 pypi_0 pypi
torch 2.7.0+cu128 pypi_0 pypi
torchaudio 2.7.0+cu128 pypi_0 pypi
torchvision 0.22.0+cu128 pypi_0 pypi
tornado 6.5.2 pypi_0 pypi
tqdm 4.65.2 pypi_0 pypi
traitlets 5.14.3 pypi_0 pypi
trimesh 4.2.0 pypi_0 pypi
triton 3.3.0 pypi_0 pypi
typed-ast 1.5.5 pypi_0 pypi
typing-extensions 4.15.0 pypi_0 pypi
tzdata 2025.2 pypi_0 pypi
uri-template 1.3.0 pypi_0 pypi
urllib3 1.26.20 pypi_0 pypi
wcwidth 0.2.14 pypi_0 pypi
webcolors 24.11.1 pypi_0 pypi
webencodings 0.5.1 pypi_0 pypi
websocket-client 1.9.0 pypi_0 pypi
werkzeug 3.1.4 pypi_0 pypi
wheel 0.45.1 py39h06a4308_0
widgetsnbextension 4.0.15 pypi_0 pypi
xorg-libx11 1.8.12 h9b100fa_1
xorg-libxau 1.0.12 h9b100fa_0
xorg-libxdmcp 1.1.5 h9b100fa_0
xorg-xorgproto 2024.1 h5eee18b_1
xz 5.6.4 h5eee18b_1
yapf 0.43.0 pypi_0 pypi
zipp 3.23.0 pypi_0 pypi
zlib 1.3.1 hb25bd0a_0
359

被折叠的 条评论
为什么被折叠?



