目标检测笔记No.5MMdetection 2.10.0安装(更新2.19.0)

官方文档参考
版本的不同其实对应的基本上是使用的mmcv-full库版本的不同,这个一直是安装mmdet的难点所在,好像现在也不难了。
mmdetection 是一个基于pytorch深度学习框架的用于目标检测和分割任务的开源项目。其安装基本傻瓜可以分为三个步骤1)前置基础库安装 python、pytorch、requirements文件中的库;2)mmcv-full 安装;3)mmdet代码setup(这个感觉关系到内部机制的调用、注册)

0 安装前提

linux下包含以下:

Python 3.6+
PyTorch 1.3+
CUDA 9.2+ (If you build PyTorch from source, CUDA 9.0 is also compatible)
GCC 5+
MMCV

检查代码

gcc -v  #不报错,说明已有GCC 5+

windows应该也可以安装具体参考官方文档。

1 创建虚拟环境

conda create -n open-mmlab python=3.7 -y
conda activate open-mmlab

2 安装pytorch 和 torchvision

conda install pytorch==1.7.1 cudatoolkit==11.0 torchvision -c pytorch

由于使用CUDA是11.2的版本,这里我选择pytorch=1.7.1 torchvision=0.8.2 。

3 先MMCV 教程中的行不通

这个安装真的很容易出错,当然不出错最好。若出错了可以跳过先进入下一步,这个操作顺序不影响。

mmcv也是mmdetection团队开发的一个CV库,提供了很多基本功能,所以需要先安装这个。后续你也可以根据自己的需要对这个库进行修改,但是每次修改好你都需要使用如下命令重新安装mmcv,否则你的修改是起不了作用的。
mmdetection安装教程

3.1 常见错误 ModuleNotFoundError

注意本地安装git
注意:一定要安装mmcv-full,不然报错

不然mmdet 错误ModuleNotFoundError: No module named ‘mmcv._ext‘

当后续跑程序的时候会报无法import mmcv相关模块的错误时,说明没有安装mmcv-full,仅仅只是安装了mmcv。
一开始安装的使用以下命令,这个命令我试了一下就是仅安装mmcv的,源自网上教程:

git clone https://github.com/open-mmlab/mmcv.git # 网上克隆
cd mmcv   #进入文件夹
pip install . #安装

这一点在卸载的时候也可以检查,当输入pip uninstall mmcv-full提示并没有安装此包,这也能表明仅仅安装了mmcv。

解决方法-卸载-重装

方法一、命令
pip uninstall mmcv #将原先的包卸载
# pip install mmcv-full 
# 推荐
# pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/index.html

更新 直接 pip 安装对应版本的库 版本2.19.0

pip install mmcv-full==1.3.17

运行demo 不报错啦

方法二、手动下载安装包whl (推荐)

下载链接
但是版本不全

pip install 文件名.whl

3.2 常见错误 Building wheel for mmcv-full (setup.py) … error…ERROR: Command errored out with exit status 1…

这错误红红一片,具体原因不清楚,论坛上有说时 gcc -v 与ld -v不匹配的原因。

解决方法 尝试各种mmcv-full安装方法

除了官网给出的 pip自动安装,源码安装

whl安装

从地址中找到对应的cuda、pytorch、Python和操作系统版本,下载下来之后使用如下指令安装:

pip install ***.whl #**是下载下来的whl文件的名字 

whl下载地址

4 后MMdetection

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection

安装mmdetection

pip install -r requirements/build.txt
python setup.py develop  # or pip install -v -e . 备注里的命令没有执行成功话,选择备注中命令

5 测试一下

官网教程中给出的方法

cd mmdetection # 进入文件夹

创建 is_successful.py

from mmdet.apis import init_detector, inference_detector

config_file = 'configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py'
# download the checkpoint from model zoo and put it in `checkpoints/`
# url: http://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth
checkpoint_file = 'checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth'
device = 'cuda:0'
# init a detector
model = init_detector(config_file, checkpoint_file, device=device)
# inference the demo image
inference_detector(model, 'demo/demo.jpg')

不报错,说明安装成功!

or 终端输入命令

或者,在终端输入,

python demo/image_demo.py  demo/demo.jpg configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py  checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth

这里命令完成的是检测单张图片,那么需要有模型的configs 和已经训练好的模型参数的pth文件,需在mmdetection文件夹中创建checkpoints文件夹,手动下载相关已经训练好的参数文件作为测试。

查看配置

mmdetection目录下,运行以下命令:

 python mmdet/utils/collect_env.py

后续还遇到了不能show的问题

_tkinter.TclError: couldn't connect to display "localhost:10.0"

目前参考,不报错,但也不显示效果图。
请指教!
更新不能显示的话那就保存图片再查看。

推荐比较新的教程:
1-Ubuntu18.04.1系统安装mmdetection(含torch、torchvision、mmcv-full)
2-Ubuntu安装mmcv和mmdetection
3-pip install mmcv error

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值