Cascade rcnn在linux环境下运行的调试记录(pytorch版本)

这个cascade RCNN的调试是真的折磨人,对于新手的我,查了各种各样奇奇怪怪的资料,终于调通了。以此记录,如果能帮助到大家,那就更好了。

第一步 下载工程

我的工程目录是这样的
在这里插入图片描述
此处我们默认大家可以正确导入数据集,因为此处主要记录的是如何生成nms里面调用的_C库。

第二步 观察setup.py

用命令行进入 到 lib文件夹
在这里插入图片描述
那么我们此时,先别急着运行什么,我们先打开setup.py,看看里面的头文件结构是什么
在这里插入图片描述
从这个头文件可以知道,这份代码肯定是用的pytorch1.0以上的编译环境,因为它调用了这一句from setuptools import setup

第三步 配置环境

如果没有虚拟环境就先配置一下虚拟环境

conda create -n torch(1.0) python==3.7

然后建立好环境后激活一下

conda activate torch(1.0)

接着呢~,我们先安装一下requirement.txt里面的环境
在这里插入图片描述
然后配置好后,就进入重头戏了。我们知道如果直接运行肯定会发现报这个错
no module....._C
然后到处找都没找到这个_C是哪里的,其实是编译nms文件夹里面的.c、.h以及csrc文件夹里面的头文件来生成的一个.so的加密文件,至于为什么加密,我也不知道,反正是能加速吧
此时,你先查看一下自己的cuda版本,这个很重要,非常重要,因为这里就决定你最后编译后的文件是什么cuda版本,如果这里不查,到后面配环境配错了,是运行不出那个_C库的
查看cuda的命令是nvcc -V
我自己是cuda10
然后就在自己的虚拟环境里面配置pytorch,原封不动地复制就可以

conda install pytorch==1.0.1 torchvision==0.2.2 cudatoolkit=10.0 -c pytorch

如果由于网速的问题,可以这么办

conda install pytorch==1.0.1 torchvision==0.2.2 cudatoolkit=10.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64/

然后安装好之后就开始编译
在命令行里面输入这个

python setup.py build develop

最后就可以生成这个文件
在这里插入图片描述
这样就可以了。
此处注意一下,gcc的版本最后要和自己的Ubuntu版本匹配,我的是Ubuntu18,对应的是gcc 7.5
还有就是如果有make.sh这个东东,也可以编译这个都行
sh make.sh

报错记录

如果出现这个错误
/usr/local/cuda-10.0/nvcc: No such file or directory
你只需要在命令行输出
export CUDA_HOME=/usr/local/cuda-10.0/
如果出现 _cudaPopcallConfiguration 以及出现ImportError: libcudart.so.8.0 cannot open shared object file: No such file or directory
那肯定是你的pytorch和cuda版本不匹配

如果在setup.py里面的头文件是
from torch.utils.ffi import create_extension
那就是旧版本的torch环境才行,需要切换回0.3.1

如果出现类似 libtorch.so.1: undefined symbol: _ZTIN2at10TensorImplE
你只需要这样办
conda install python=3.6

如果出现类似scipy的问题, 那就
pip install scipy==1.2.1

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值