MMDetection亲测安装教程

MMDetection是一个基于 PyTorch 的目标检测开源工具箱。接下来就安装看看吧。

本人安装环境:

  • 系统环境:Ubuntu 20.04.2 LTS
  • cuda版本:11.0
  • cudnn版本:8.0.5
  • torch版本:1.7.0
  • torchvision版本:0.8.0

在Linux下查看cuda和cudnn的版本:

cat /usr/local/cuda/version.txt
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

【注】新版本的cudnn的版本文件不在cudnn.h文件里,而是在cudnn_version.h,所以使用 cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 命令没有输出。

进入安装正题!

1.创建虚拟环境,并激活虚拟环境

conda create -n mmdetection python=3.7
conda acitvate mmdetection

2.安装pytorch

pytorch根据自己的cuda和要安装的版本在PyTorch官网可以找到命令。

conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=11.0 -c pytorch

3.安装 mmcv-full

MMDetection 和 MMCV 版本兼容性见github说明,需要安装正确的 MMCV 版本以避免安装出现问题。

参考 MMCV 获取不同版本的 MMCV 所兼容的的不同的 PyTorch 和 CUDA 版本。
在这里插入图片描述
例如:在 CUDA 11 和 PyTorch 1.7.0 的环境下,可以使用下面命令安装最新版本的 MMCV:

pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/index.html

4.安装mmdetection

pip install mmdet -i https://pypi.tuna.tsinghua.edu.cn/simple

5.测试mmdetection是否安装成功

在mmdetection目录下新建test.py和checkpoints文件夹,打开网址下载好权重文件放在checkpoints文件夹下,运行以下代码即可。

from mmdet.apis import init_detector, inference_detector

config_file = 'configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py'
# 从 model zoo 下载 checkpoint 并放在 `checkpoints/` 文件下
# 网址为: 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'
# 初始化检测器
model = init_detector(config_file, checkpoint_file, device=device)
# 推理演示图像
img = 'demo/demo.jpg'
result = inference_detector(model, img)
model.show_result(img, result)
# 将推理的结果保存
model.show_result(img, result, out_file='result.jpg')

运行虽然没错,但出现了一个警告:

UserWarning: “ImageToTensor” pipeline is replaced by “DefaultFormatBundle” for batch inference. It is recommended to manually replace it in the test data pipeline in your config file. ‘data pipeline in your config file.’, UserWarning)

解决方案:官方文档也给出了修改。在mmdetection/configs/_ base_/datasets/coco_detection.py下面修改test_pipeline。只修改了一行,把ImageToTensor改为DefaultFormatBundle,并将后面的keys=[‘img’]删掉。之后再运行就没有警告了。
在这里插入图片描述

在这里插入图片描述
如果成功安装 MMDetection,则上面的代码可以完整地运行。

6.安装其他依赖包

进入到mmdetection项目目录中

cd mmdetection
pip install -r requirements/build.txt

可看到,一共有四个安装依赖文件:build.txt, optional.txt, runtime.txt, tests.txt。

  • 25
    点赞
  • 111
    收藏
    觉得还不错? 一键收藏
  • 22
    评论
Transformer发轫于NLP(自然语言处理),并跨界应用到CV(计算机视觉)领域。 Swin Transformer是基于Transformer的计算机视觉骨干网,在图像分类、目标检测、实例分割、语义分割等多项下游CV应用中取得了SOTA的性能。该项工作也获得了ICCV 2021顶会最佳论文奖。本课程将手把手地教大家使用labelme标注和使用Swin Transformer训练自己的数据集进行图片和视频的实例分割。  本课程将介绍Transformer及在CV领域的应用、Swin Transformer的原理。 本课程以汽车驾驶场景图片和视频开展项目实践:对汽车行驶场景中的路坑、车、车道线进行物体标注和实例分割。  课程在Windows和Ubuntu系统上分别做项目演示。包括:安装软件环境、安装Pytorch安装Swin-Transformer-Object-Detection、标注自己的数据集、准备自己的数据集、数据集格式转换(Python脚本完成)、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计、日志分析。  本课程提供项目的数据集和相关Python程序文件。相关课程: 《Transformer原理与代码精讲(PyTorch)》https://edu.csdn.net/course/detail/36697《Transformer原理与代码精讲(TensorFlow)》https://edu.csdn.net/course/detail/36699《ViT(Vision Transformer)原理与代码精讲》https://edu.csdn.net/course/detail/36719《DETR原理与代码精讲》https://edu.csdn.net/course/detail/36768《Swin Transformer实战目标检测:训练自己的数据集》https://edu.csdn.net/course/detail/36585《Swin Transformer实战实例分割:训练自己的数据集》https://edu.csdn.net/course/detail/36586《Swin Transformer原理与代码精讲》 https://download.csdn.net/course/detail/37045
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值