复现 MonoEF:Monocular 3D Object Detection: An Extrinsic Parameter Free Approach
复现 MonoEF:Monocular 3D Object Detection: An Extrinsic Parameter Free Approach
时间:2022年7月13日
代码连接:
https://github.com/ZhouYunsong-SJTU/MonoEF
1.安装环境
环境:环境与代码中要求的环境一样。
Ubuntu 16.04
Python 3.7
Pytorch 1.3.1
CUDA 10.0
这里pytorch版本1.3.1为什么用这么低的?原因:因为代码中用到了DCN模块,DCN模块需要这么低的pytorch版本。如果要用高版本的pytorch,DCN模块要自己找最新的,然后安装新版的。
2.kitti数据集
kitti数据集的划分,及ImageSets中数据集的划分,可以看我的另一篇博客“kitti数据集划分”。
kitti
│──training
│ ├──calib
│ ├──label_2
│ ├──image_2
│ └──ImageSets
└──testing├──calib ├──image_2└──ImageSets
3.下载代码+编译setup.py
1.下载好MonoEF代码后,进入到MonoEF路径下,再下载SMOKE代码!!SMOKE代码连接https://github.com/lzccccc/SMOKE
估计作者的工作是基于SMOKE的,所以要在自己的代码中还要再下载别人SMOKE的代码。
路径大致如下:
--monoEF--configs--datasets--dcn--smoke--SMOKE--tools--make.sh--setup.py--test.sh--train.sh
注意:smoke和SMOKE不要弄混了,smoke文件夹代码是MonoEF自带的。而SMOKE是从https://github.com/lzccccc/SMOKE下载的,SMOKE是另一个人的工作。
2.进入SMOKE,执行
python setup.py build develop
3.回到MonoEF,执行
python setup.py build develop
4.进入MonoEF/dcn/DCNv2_latest,执行
python setup.py install develop
否则会报错:
no module named _ext
所以是运行了3个不同的setup.py,SMOKE的setup.py,MonoEF的setup.py, DCN的setup.py
4.下载SMOKE的pretrained weights
如果不下载的SMOKE的与训练权重,会报错:
FileNotFoundError: [Errno 2] No such file or directory: './SMOKE/pre_trained/model_final.pth'
权重文件在SMOKE官方代码中提供了连接,不过是google云盘的连接,大小223.43MB。下载好后放在./SMOKE/pre_trained/model_final.pth路径下即可。注意路径名字,别弄错名字了。
为了防止有的学者访问不了google云盘,我在baidu云盘创建了一个备份,如下:
链接:https://pan.baidu.com/s/1ZeaE462nBsiHtdAgFwMvUA
提取码:cumt
5.环境配置
MonoEF和SMOKE官方代码竟然都没有requirement.txt,真离谱!!导致运行代码,一会一个报错:no module named XXX !!!
我这里列举的可能不全,少哪个包,安哪个包!
no module named cv2
no module named skimage
no module named PIL
no module named tqdm
cannot import name PILLOW_VERSION from PIL
着重说一下pillow包,pillow版本太高会报错,pillow安6.1版就好了。
解决方法:
pip install pillow==6.1
pip install opencv-python
pip install scikit-image
pip install tqdm
6.修改代码
MonoEF/tools/plain_train_net.py 中的第6行代码:
sys.path.append('/media/lion/Seagate_Backup/SenseTimeResearch/pod_ad/Smoke_sequence_2/SMOKE/')
修改为自己的SMOKE路径即可。注意:不能用相对路径只能用绝对路径!!!
例如: 我的SMOKE路径是:/root/MonoEF-main/SMOKE,则修改为:
sys.path.append('/root/MonoEF-main/SMOKE')
再次提醒,不能用相对路径,只能用绝对路径。
如果不修改这行代码,会报错,报错内容如下:
Traceback (most recent call last):File "tools/plain_train_net.py", line 9, in <module>from smoke.config import cfg
ModuleNotFoundError: No module named 'smoke'
6.训练与检测
单个GPU训练:
python tools/plain_train_net.py --config-file "configs/smoke_gn_vector.yaml"
几秒就训练完了。真奇怪。
复现 MonoEF:Monocular 3D Object Detection: An Extrinsic Parameter Free Approach相关推荐
- 论文阅读笔记:(2021.06, cvpr) Monocular 3D Object Detection: An Extrinsic Parameter Free Approach
这是一篇发表在了cvpr 2021上,能够在线估计外参的单目3D目标检测算法,借鉴了visual odometry和style transfer的方法,效果好, 速度快(~30ms), 意料之外,情理 ...
- Delving into Localization Errors for Monocular 3D Object Detection 论文学习
论文地址:Delving into Localization Errors for Monocular 3D Object Detection Github地址:Delving into Locali ...
- FCOS3D: Fully Convolutional One-Stage Monocular 3D Object Detection
Paper name FCOS3D: Fully Convolutional One-Stage Monocular 3D Object Detection Paper Reading Note UR ...
- 【论文翻译】FCOS3D: Fully Convolutional One-Stage Monocular 3D Object Detection
文章目录 PaperInfo Abstract 1 Introduction 2 Related Work 2D Object Detection Monocular 3D Object Detect ...
- 论文精读《OFT: Orthographic Feature Transform for Monocular 3D Object Detection》
OFT: Orthographic Feature Transform for Monocular 3D Object Detection 文章目录 OFT: Orthographic Feature ...
- 论文精读 《CaDNN: Categorical Depth Distribution Network for Monocular 3D Object Detection》
CaDNN: Categorical Depth Distribution Network for Monocular 3D Object Detection 文章目录 CaDNN: Categori ...
- 【3D目标检测】SMOKE: Single-Stage Monocular 3D Object Detection via Keypoint Estimation
目录 前提 概述 细节 网络结构 特征提取网络 检测头1:关键点检测 检测头2:3D参数回归 损失函数 前提 需要先了解下CenterNet [目标检测]Objects as Points 概述 本文 ...
- MONODISTILL: LEARNING SPATIAL FEATURES FOR MONOCULAR 3D OBJECT DETECTION
Paper name MONODISTILL: LEARNING SPATIAL FEATURES FOR MONOCULAR 3D OBJECT DETECTION Paper Reading No ...
- 【论文翻译】Orthographic Feature Transform for Monocular 3D Object Detection
标题:<Orthographic Feature Transform for Monocular 3D Object Detection> 作者:Thomas Roddick, Alex ...
最新文章
- input type=file /,美化自定义上传按钮
- 动态参数 名称空间 作用域 作用域链 加载顺序 函数的嵌套 global nonlocal 等的用法总结...
- Web应用_Tomcat部署及优化
- nodejs unhandledPromiseRejectionWarning警告信息
- 《ASP.NET Core 微服务实战》-- 读书笔记(第11章)
- python调用PostgreSQL 11
- moodle架构分析---表现层的设计(二)
- python中的zip、map、reduce 、lambda、filter函数的使用
- 1086: [SCOI2005]王室联邦
- [开源 .NET 跨平台 Crawler 数据采集 爬虫框架: DotnetSpider] [四] JSON数据解析
- 181104每日一句
- Unity3D关于VR的Demo(一)
- C语言strtok_r和strtok使用方法
- TC SRM599 div2 p950
- 物联网毕业设计 单片机火灾报警器设计与实现
- 用CentOS 7安装cadence搭建适合IC Design的科研环境(四)——IC617、MMSIM151、calibre2015安装过程step by step
- 特斯拉Autopilot软件重写
- 数据处理-18.数据采集渠道
- Codeforces 7D
- 期货反向跟单--仍然逃不过二八定律