栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

CenterFusion代码复现

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CenterFusion代码复现

CenterFusion代码复现

参考代码:GitHub - mrnabati/CenterFusion: CenterFusion: Center-based Radar and Camera Fusion for 3D Object Detection

一、环境配置

注意:此次复现使用Featurize服务器实现,默认环境Python 3.7,如何在该服务器上保存用户自建虚拟环境可参考在 Featurize 中如何保存自建环境_哔哩哔哩_bilibili

1.安装虚拟环境(可选):

mkvirtualenv centerfusion

此步骤在服务器上可以忽略

2.安装PyTorch:

pip install torch torchvision

这里需要在服务器上永久保存该环境,故改为pip install --user torch torchvision

3.安装 COCOAPI:

pip install cython

pip install -U 'git+[GitHub - cocodataset/cocoapi: COCO API - Dataset @ http://cocodataset.org/](https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI)

同上,改为

pip install --user cython

pip install --user -U 'git+[GitHub - cocodataset/cocoapi: COCO API - Dataset @ http://cocodataset.org/](https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI)

4.安装CenterFusion仓库,并设置CF_ROOT路径

CF_ROOT=/path/to/CenterFusion git clone --recursive https://github.com/mrnabati/CenterFusion.git $CF_ROOT

这里我手动将CenterFusion库导入到服务器的work目录下,并将CF_ROOT路径改为CF_ROOT=/home/featurize/work/CenterFusion

5.安装需求文件:

cd $CF_ROOT

pip install -r requirements.txt

同上,改为pip install --user -r requirements.txt

6.创建可变形卷积库:

cd $CF_ROOT/src/lib/model/networks/DCNv2

./make.sh

注意:如果目录中不存在 DCNv2 文件夹,需手动下载

cd $CF_ROOT/src/lib/model/networks

git clone https://github.com/CharlesShang/DCNv2/

这里Featurize虚拟机中是不存在DCNv2文件夹的,需要手动从GitHub上下载对应版本,若版本过高会报错。导入后重新运行上述代码。

二、准备数据集 1.从nuScenes上下载数据集

这里数据集版本很多,有两种办法可以实现复现要求。

PlanⅠ:按照Github上的目录结构,分别下载Full dataset(v1.0)中的Mini、Trainval(Trainval可以只选择其中一个part)和Test版本(三个数据集,共90G左右),并按照目录结构导入到服务器中。

PlanⅡ:只下载Full dataset(v1.0)中的Mini版本,这样做需要将convert_nuScenes.py文件中的train、val和test部分注释掉。

2.解压缩目录中下载的文件,并导入${CF_ROOT}datanuscenes中

这里如果想在服务器上实现,需要先将下载的数据集文件v1.0-mini.tar的后缀名改为tar.gz,再导入到服务器中,服务器会自动解压缩并存入数据集下载目录里。

3.运行convert_nuScenes.py文件,将 nuScenes 数据集转换为 COCO 格式

同上,如果在服务器上实现,需要修改convert_nuScenes.py文件中的数据集路径。

三、预训练模型

原作者在google drive上提供了预训练好的模型。

四、训练

五、测试

这里贴一下测试结果。

六、查看可视化结果 1.在test.sh中添加--debug 4参数

2.将CenterFusion/src/lib/utils下的debugger.py做部分修改

具体修改方法可参考debug mode in test.sh gives error (-5:Bad argument) in function ‘line’ · Issue #42 · mrnabati/CenterFusion · GitHub

3.在CenterFusion/exp/ddd/centerfusion/debug中查看可视化结果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/744034.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号