BEV Fusion 复现 --- 环境与数据集部署篇
·
环境配置基础步骤
创建conda环境并安装PyTorch
conda create --name bevfusion python=3.8 -y
conda activate bevfusion
conda install pytorch==2.1.0 torchvision==0.16.0 pytorch-cuda=12.1 -c pytorch -c nvidia -y
验证CUDA可用性
import torch
print(torch.cuda.is_available()) # 预期输出True
mmcv-full安装方法
使用预编译wheel文件安装
pip install https://download.openmmlab.com/mmcv/dist/cu121/torch2.1/mmcv_full-1.7.2-cp38-cp38-win_amd64.whl
python -c "import mmcv; print(mmcv.__version__)" # 预期输出1.7.2
其他依赖安装
安装必要组件
pip install mmdet==2.28.2 mmsegmentation==0.30.0 timm yapf einops torchpack
CUDA Toolkit安装
下载地址
https://developer.nvidia.com/cuda-downloads
环境变量配置要求
CUDA_PATH设置为C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.6Path中添加%CUDA_PATH%\bin并置于首位
项目编译方法
使用VS 2022命令提示符执行
cd C:\项目路径\bevfusion-of-mit
conda activate bevfusion
python setup.py develop
数据集处理流程
解压脚本示例
import tarfile, re
from pathlib import Path
from tqdm import tqdm
p = Path(r"D:\BaiduNetdiskDownload")
tars = sorted(p.glob("v1.0-trainval*_blobs.tar"),
key=lambda x: int(re.search(r'trainval(\d+)_blobs', x.name).group(1)))
for tar in tqdm(tars, desc="解压进度"):
with tarfile.open(tar) as t:
t.extractall(path=p)
tar.unlink()
生成数据索引命令
python tools/create_data.py nuscenes --root-path ./data/nuscenes --out-dir ./data/nuscenes --extra-tag nuscenes
模型测试验证
下载预训练模型
mkdir pretrained
cd pretrained
wget https://bevfusion.mit.edu/downloads/pretrained/bevfusion-det.pth
wget https://bevfusion.mit.edu/downloads/pretrained/bevfusion-seg.pth
执行测试命令
python tools/test.py configs/nuscenes/det/transfusion/secfpn/camera+lidar/swint_v0p075/convfuser.yaml pretrained/bevfusion-det.pth --eval bbox
目录结构规范
标准项目结构
bevfusion-of-mit/
├── data/nuscenes/
│ ├── samples/
│ ├── sweeps/
│ ├── v1.0-trainval/
│ ├── maps/
│ ├── nuscenes_infos_train.pkl
│ └── nuscenes_infos_val.pkl
├── pretrained/
│ ├── bevfusion-det.pth
│ └── bevfusion-seg.pth
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)