安装条件

  • Linux(不正式支持Windows)

  • Python 3.5+

  • PyTorch 1.1或更高版本

  • CUDA 9.0或更高

  • NCCL 2

  • GCC 4.9或更高

  • mmcv(https://github.com/open-mmlab/mmcv)

我们已经测试了以下版本的操作系统和软件:

  • OS: Ubuntu 16.04/18.04 and CentOS 7.2

  • CUDA: 9.0/9.2/10.0/10.1

  • NCCL: 2.1.15/2.2.13/2.3.7/2.4.2

  • GCC(G++): 4.9/5.3/5.4/7.3

安装 mmdetection

a. 创建一个conda虚拟环境并激活它

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

b. 按照官方说明安装PyTorch和Torchvision(https://pytorch.org/) ,例如,

conda install pytorch torchvision -c pytorch

c. 克隆mmdetection存储库

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

d. 安装构建要求,然后安装mmdetection。(我们通过github repo安装pycocotools而不是pypi,因为pypi版本较旧并且与最新的numpy不兼容。)

pip install -r requirements/build.txt
pip install "git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI"
pip install -v -e .## or "python setup.py develop"

注意:

1.git commit的id将在步骤d中写入版本号,例如0.6.0 + 2e7045c。该版本还将保存在经过训练的模型中。建议你每次从github获取一些更新时都运行步骤d。如果修改了C++/CUDA代码,则此步骤为强制性的。

2.按照上述说明,mmdetection将安装在dev模式下,对代码进行的任何本地修改都将生效,而无需重新安装它(除非你提交了一些提交并希望更新版本号)。

3.如果要使用 opencv-python-headless 来代替 opencv-python,可以在安装MMCV之前先安装它。

4.一些依赖关系是可选的。只需运行 pip install -v -e .,将只会安装最低运行时间要求。要使用可选的依赖项如albumentationsimagecorruptions,并使用pip install -r requirements/optional.txt 手动安装它们,或者在调用pip时指定所需的附加项(例如pip install -v -e .[optional])。对于额外字段的有效键为:all,tests,build,和 optional

另一个选择: Docker Image

我们提供了一个Dockerfile(https://github.com/open-mmlab/mmdetection/blob/master/docker/Dockerfile)来构建映像。

## 使用PyTorch 1.1、CUDA 10.0和CUDNN 7.5构建图像
docker build -t mmdetection docker/

准备数据集

建议将数据集根符号链接到$MMDETECTION/data。如果文件夹结构不同,则可能需要更改配置文件中的相应路径。

mmdetection
├── mmdet
├── tools
├── configs
├── data
│├── coco
││├── annotations
││├── train2017
││├── val2017
││├── test2017
│├── cityscapes
││├── annotations
││├── train
││├── val
│├──VOCdevkit
││├── VOC2007
││├── VOC2012

必须使用cityscapesScripts工具箱(https://github.com/mcordts/cityscapesScripts)将城市景观注释转换为coco格式。我们计划提供一个易于使用的转换脚本。目前,我们建议你遵循maskrcnn-benchmark工具箱(https://github.com/facebookresearch/maskrcnn-benchmark/tree/master/maskrcnn_benchmark/data) 中提供的说明 。使用此脚本时,所有图像都必须移到同一文件夹中。在linux系统上,例如可以通过以下方式对火车图像进行处理:

cd data/cityscapes/
mv train/*/*train/

从零开始的安装脚本

这是一个完整的脚本,用于使用conda设置mmdetection并链接数据集路径(假设你的COCO数据集路径为$ COCO_ROOT)。

conda create -n open-mmlab python=3.7-y
conda activate open-mmlab
conda install -c pytorch pytorch torchvision -y
git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -r requirements/build.txt
pip install "git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI"
pip install -v -e .
mkdir data
ln -s $COCO_ROOT data

使用多个MMDetection版本

如果你的机器上有多个mmdetection,并且你想交替使用它们,则建议的方法是创建多个conda环境并对不同版本使用不同的环境。

另一种方法是插入下面的代码到主脚本(train.py,test.py或任何其他脚本运行)

import os.path as osp
import sys
sys.path.insert(0,osp.join(osp.dirname(osp.abspath(__file__)),'../'))

或者在相应文件夹的终端中运行以下命令以临时使用当前文件夹。

export PYTHONPATH=`pwd`:$PYTHONPATH

原文链接:https://mmdetection.readthedocs.io/en/latest/INSTALL.html

☆ END ☆

如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「uncle_pn」,欢迎添加小编微信「 mthler」,每日朋友圈更新一篇高质量博文(无广告)。

扫描二维码添加小编↓

【目标检测】MMDetection专栏之MMDetection安装|一相关推荐

  1. 【目标检测】MMDetection专栏之MMDetection入门|二

    本页提供有关MMDetection用法的基本教程.有关安装说明,请参阅[目标检测]MMDetection专栏之MMDetection安装https://mp.weixin.qq.com/s/J8LGy ...

  2. 点云目标检测BRNET || 1. 基于MMDetection的BRNet工程环境配置与测试

    1. BRNET 的环境配置 工程链接:https://github.com/cheng052/BRNet 改工程是基于MMDetection3D的框架下实现的,所以在配置环境时,需要先安装MMDet ...

  3. LabelImg(目标检测标注工具)的安装与使用教程

  4. Yolov5 安装详细教程及目标检测和识别

    文章内容: 1.在 Anaconda 环境下,进行目标检测程序(Yolov5)的下载及安装,实现 Yolov5 的整体安装: 2.通过调用手机摄像头进行简单的目标检测和识别. 目录 1 任务目标 2 ...

  5. python实现yolo目标检测_Yolov5—实现目标检测(win10)

    Yolov5-实现目标检测(win10) 该方法可以在win10上实现Yolov5的目标检测,配置前需要安装Anaconda3 一.环境配置 源码下载地址:https://github.com/ult ...

  6. Ubuntu Tensorflow object_detection API 目标检测环境搭建

    Ubuntu 16.04下安装TensorFlow Object Detection API(对象检测API) Ubuntu 16.04下搭建TensorFlow运行环境(用Anaconda)     ...

  7. 10行代码带你搞定目标检测(附代码)

    来源:大数据文摘 本文约2700字,建议阅读5分钟. 本文介绍采用代码搞定目标检测的技术. 计算机视觉是人工智能的一个重要领域,是关于计算机和软件系统的科学,可以对图像和场景进行识别.理解.计算机视觉 ...

  8. python包裹和运费_这个Python库真的太好用了,10行代码就能轻松搞定目标检测

    目标检测是指计算机和软件系统对图像或场景中的目标进行定位和识别的任务. 目标检测已广泛应用于人脸检测.车辆检测.人流量统计.网络图像.安防系统和无人驾驶等多个领域. 早期目标检测的实现基于经典算法,比 ...

  9. Tensorflow object detection API训练自己的目标检测模型 详细配置教程 (一)

    Tensorflow object detection API 简单介绍Tensorflow object detection API: 这个API是基于tensorflow构造的开源框架,易于构建. ...

最新文章

  1. [技术速递]MSDN在线改版,新风格新体验
  2. ibatis mybatis传入List参数
  3. Linux 底层原理 —— epoll 与多路复用
  4. 手动创建Oracle实例
  5. 多租户数据中心采用SDN的优势和挑战
  6. 解析Hibernate中的持久化—ORM
  7. [渝粤教育] 西南科技大学 电力电子技术 在线考试复习资料
  8. php设置mysql 编码_PHP和Mysql中转UTF8编码问题汇总
  9. 欧姆龙cp1h指令讲解_欧姆龙PLC功能指令
  10. 科技文献检索课题 计算机,科技文献检索课题.doc
  11. Django学习 day61之Django第七日
  12. 史上最牛的Linux视频教程—兄弟连 学习笔记1
  13. echarts 地图显示(定位图标)
  14. java根据经纬度获取详细地址
  15. 2014湖南农业大学ACM校赛
  16. ewb交通灯报告和文件_基于ewb平台的交通灯电路设计.doc
  17. linux PWM驱动屏幕亮度及pwm子系统框架(Linux驱动开发篇)
  18. 你该知道的浏览器请求与Header
  19. 计算机是概念化还是程序化的,思维的基本特征知识点的理解
  20. Lesson 15 Fifty pence worth of trouble

热门文章

  1. Golang Gin embed static 静态文件嵌入
  2. mysql查询练习2
  3. 三星SAMSUNG SCX-3205 驱动
  4. shell之作为密码生成器
  5. 四、数据透视表公式与函数
  6. 一文读懂电影《流浪地球》没有交代清楚的烧脑科学知识
  7. vue.js学习笔记:audio标签实现钢琴弹奏
  8. css3鼠标悬浮让图片出现闪光
  9. 实现船务提单资料自动生成,博为小帮软件机器人助力外贸报关录单
  10. 效率提升:用 Notion 实现个人任务管理监控