Maskrcnn_benchmark最新安装教程以及错误解决方法(Ubuntu16.04)——目标检测、目标识别

Maskrcnn_benchmark最新2019安装教程以及错误解决方法(Ubuntu16.04)

0、序言

​ 最近要做一些目标检测、识别的相关工作,用到了何大神的maskrcnn,但是在配maskrcnn环境问题上出了很多错误,浪费了很多时间,特此做了安装踩坑总结,希望有所帮助。 其中借用了很多大佬的经验,链接已给出,感谢。

一、电脑配置如下

系统:Ubuntu 16.04

显卡:NVIDIA RTX 2070

cuda版本:10.0.130(deb文件安装)

cudnn版本:7.6.1

显卡驱动410.48(此为安装cuda10.0时其自带的版本)

GCC版本:5.4.0

二、安装步骤及遇到的错误

1、安装

(1)先按照官方安装指南安装,大部分步骤无问题。依个人经验在以下步骤需要注意。

(2)安装到第四步,即安装pytorch 与 cudatoolkit时容易出问题,本人电脑按照官方教程来安装不会成功,用以下指令可以成功:

conda install -c pytorch pytorch-nightly torchvision cudatoolkit=10.0
pip install torchvision==0.2.2

还有一种是根据pytorch官方指令安装pytorch,虽然本电脑未成功,但有问题可以试试

(3)安装到第六步,执行 python setup.py install --cuda_ext --cpp_ext 时,可能会出现错误。可以执行

 python setup.py install

去掉后边的–cuda_ext --cpp_ext。可以成功。但是在我第二次重头再安装maskrcnn_benchmark时候,敲全部的指令 python setup.py install --cuda_ext --cpp_ext 也不会出现问题,原因未知。

(4)另外按照官方安装步骤安装完并没有安装cudnn,可以自己手动在该环境下安装cudnn 7.6的版本,指令如下 :

conda install cudnn=7.6

2、遇到的错误

(1)跑程序时出现:

ImportError: /home/ouc/.conda/envs/MaskRCNN/lib/python3.6/site-packages/torchvision/_C.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN2at7getTypeERKNS_6TensorE

此问题是由于torchvision未安装好。有两种解决方式:
一为:先执行:

conda uninstall pytorch
conda uninstall pytorch-nightly
conda uninstall torch
codna uninstall torchvision

然后执行:

​conda install -c pytorch pytorch-nightly torchvision cudatoolkit=10.0
pip install torchvision==0.2.2

二为:通过以下指令:

git clone https://github.com/pytorch/vision.git
cd vision/
python setup.py install

重新安装后,记得重新执行maskrcnn_benchmark官方指南中的:

cd maskrcnn-benchmark
python setup.py build develop

这两种方法都可以解决此方式,但推荐第一种。通过第二种也可以解决此问题,但可能有其他遗留问题。

(2)若用方法二解决问题(1)后会出现,在vision目录下python->import torchvision没问题,换个目录就报错的问题。

解决方法:将vision下的torchvisiontorchvision.egg-info文件夹复制到/.anaconda/envs/Maskrcnn_benchmark/lib/python3.6/site-packages下面即可,删除原来的。

(3)还有一些在安装电脑配置时的一些问题,链接放在这里

CUDA的安装与卸载及问题汇总
安装完CUDA后,nvcc -V查不到信息,问题解决方法

你可能感兴趣的:(深度学习,目标检测,目标识别)