Mask Scoring R-CNN——源码运行记录
Mask Scoring R-CNN——源码运行记录
最近在跑该模型,遇到了很多问题,github上给的东西不足以将这个模型给正常运行起来,所以在此记录一下
github源码地址
1、环境说明
各个版本的信息:ubuntu18.04.3 (linux服务器)+ CUDA9+torch1.0+torchvision0.2+python3.6.2 + gcc5
如果不知道各个东西的含义的,可以查看我的另外一篇博文:显卡,显卡驱动,nvcc, cuda driver,cudatoolkit,cudnn
python、torch、torchvision版本信息(可查看下面第2点具体的操作)
cuda版本信息:CUDA下载与安装
gcc 版本信息:gcc安装与多版本之间切换
2、具体的版本下载操作
这边我们还是利用Anaconda Linux 安装 Anaconda 建立虚拟环境来进行各个版本信息的安装,在此之前,请先确定上面的CUDA、gcc版本已经安装完毕
关于pychorch的版本信息,不同的linux服务器可能不同,可参照Pychorch 官网下载 下面的话,主要是针对我ubuntu18.04 CUDA9.0 下载pytorch为1.0.0、 torchvision为0.2.1 的命令(针对这个模型),其他的可以查看 Pytorch 旧版本下载
# 创建一个名称为ms_rcnn的虚拟环境
conda create -n ms_rcnn python = 3.6.2 ipython# maskrcnn_benchmark and coco api dependencies
pip install ninja yacs cython matplotlib# 针对 ubuntu18.04 CUDA9.0 下载pytorch为1.0.0、 torchvision为0.2.1 的命令
conda install pytorch==1.0.0 torchvision==0.2.1 cuda90 -c pytorch# 下面的根据官网的下载即可,可以自己在git下载下来再ftp传上去,然后install也可
# 可能文件夹的名称会和下面的不一样,cd的时候注意一下# install torchvision
cd ~/github
git clone https://github.com/pytorch/vision.git
cd vision
python setup.py install# install pycocotools
cd ~/github
git clone https://github.com/cocodataset/cocoapi.git
cd cocoapi/PythonAPI
python setup.py build_ext install# install PyTorch maskscoring_rcnn
cd ~/github
git clone https://github.com/zjhuang22/maskscoring_rcnn.git
cd maskscoring_rcnn
# the following will install the lib with
# symbolic links, so that you can modify
# the files if you want and won't need to
# re-build it
python setup.py build develop
3、准备coco的数据集
自己建立一个dataset 文件夹,然后把数据集下载在该目录下并解压,建议直接wget 下载
wget http://images.cocodataset.org/zips/train2014.zip #下载coco train2014训练集图片wget http://images.cocodataset.org/zips/val2014.zip #下载coco val2014验证集图片wget http://images.cocodataset.org/zips/test2014.zip #下载coco test2014 测试集图片wget https://dl.dropboxusercontent.com/s/o43o90bna78omob/instances_minival2014.json.zip?dl=0 #下载minival jsonwget https://dl.dropboxusercontent.com/s/s3tw5zcg7395368/instances_valminusminival2014.json.zip?dl=0 #下载validation-minus-minival json
annotations包:
链接:https://pan.baidu.com/s/1vkF9kRmNOoIKopaZ4Qm1Xg 提取码:0907
根据该文件位置及其文件名称,修改文件(maskrcnn_benchmark/config/paths_catalog.py),例如我这边就将datasets改为了…/datasets
然后就正常运行:
python tools/train_net.py --config-file "configs/e2e_ms_rcnn_R_50_FPN_1x.yaml" SOLVER.IMS_PER_BATCH 2 SOLVER.BASE_LR 0.0025 SOLVER.MAX_ITER 720000 SOLVER.STEPS "(480000, 640000)" TEST.IMS_PER_BATCH 1
4、运行常见问题
4.1 error: 不存在instances_minival2014.json和instances_valminusminival2014.json
解决办法:paths_catalog.py 文件路径要对应你下载的这两个文件
4.2 error: RuntimeError: DataLoader worker (pid(s) 13952, 14260) exited unexpectedly
解决办法:进程问题,可以修改maskrcnn_benchmark/config/default.py文件将NUM_WORKERS = 0
4.3 error: RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED
报错原因:
可能是cuda,cudnn,python,torch等的版本不匹配(一定要是上面的环境,踩坑来着重说明)下载对应的版本信息,然后删除build 文件夹,重新去build一下
如果想跑的快一点,可以尝试修改(maskrcnn_benchmark/config/default.py)
NUM_CLASSES = 2
NUM_WORKERS = 0
_C.SOLVER.IMS_PER_BATCH = 2
_C.TEST.IMS_PER_BATCH = 1
更改configs/e2e_mask_rcnn_R_50_FPN_1x.yaml
BASE_LR: 0.002
MAX_ITER: 3000 (改小为了更快看结果)
Mask Scoring R-CNN——源码运行记录相关推荐
- r语言 html gif,哈佛教授公开R语言源码,教你用R制作gif动图
原标题:哈佛教授公开R语言源码,教你用R制作gif动图 作者Rafael Irizarry是哈佛大学以及the Dana-Farber Cancer Institute的应用统计教授,他专注于研究基因 ...
- 哈佛教授公开R语言源码,教你用R制作gif动图
在日常教学的过程中,我有时会用动画来形象地解释概念,并且通过 @rafalab账号(https://twitter.com/rafalab)在社交媒体上分享. John Storey最近问我是否可以公 ...
- 【深度学习】2个经典的练手CNN源码与MNIST数据集测试结果
对刚入门深度学习的童鞋,这2个简单的工程可快速入门.建议手敲一遍,可快速熟悉代码和CNN的实现流程. #1.导入相关库 import numpy as np import tensorflow as ...
- pytorch定义神经卷积网络CNN源码
import torch import torch.nn as nn import torch.nn.functional as F import torch.optim as optim # tor ...
- CentOS6.5下编译R源码并安装Spark R
不多说,直接上干货! 为了使用SparkR,决定要在Spark所在的Linux上装上R,结果血泪篇了.主要原因是公司内部的虚机,无法连外网,所以网上很多的直接rpm或者yum的方法都没用,需要自己编译 ...
- Android高版本P/Q/R源码编译指南
Android高版本P/Q/R源码编译指南 Android源码编译系列博客: Android.bp你真的了解吗 Android.bp入门指南之Android.mk转换成Android.b ...
- openlayers中使用rBush(R树)来存放要素等信息,本文修改了一点其中的rbush源码中的demo,使用canvas画出了insert和delete操作(建立树和删除树中数据)
openlayers中使用rBush(R树)来存放要素等信息,本文修改了一点其中的rbush源码中的demo,使用canvas画出了insert和delete操作(建立树和删除树中数据) 修改后的源代 ...
- CNN反向传播源码实现——CNN数学推导及源码实现系列(4)
前言 本系列文章链接: CNN前置知识:模型的数学符号定义--卷积网络从零实现系列(1)_日拱一两卒的博客-CSDN博客https://blog.csdn.net/yangwohenmai1/arti ...
- c++ 实现深度学习网络结构【附源码】
文章目录 前言 一.基本函数定义 1.高低配置电脑一些不同 2.数字转换成字符串 3.将两个字符串相连 二.数据加载 1.结构体设计 2.读取图像 3.读取标签 4.将结构体图像转为图片文件 三.矩阵 ...
最新文章
- 4-2 ADO.NET-查询和检索数据5
- 研究consul的service mesh功能
- 【转】hadoop深入研究:(十一)——序列化与Writable实现
- 多个video标签,控制最多只能一个同时播放
- mplab x ide 中文使用手册_SCI必备利器:翻译又快又准,强推这款超牛X的神器!...
- SWT中Button事件的几种不同写法
- 嵌入式java基准测试_Java正则表达式库基准测试– 2015年
- 数据结构(四)串的动态数组存储
- SpringBoot2 整合ElasticJob框架,定制化管理流程
- 【clickhouse】数据仓库中的拉链表(Clickhouse 实现)
- ubuntu 14.04配置lamp粗略
- 用友T1-商贸宝库存商品明细账
- openGL使用高度贴图模拟地球表面凹凸效果
- OpenG 编程指南英文整理
- Finished, saving caches
- flask架设微信小程序服务器,苹果手机能正常访问,安卓不行(ssl的中间证书问题)
- Armv8架构虚拟化
- cmd打开计算机窗口,如何打开命令行窗口,教您电脑怎么打开cmd命令行窗口
- 为什么mac电脑识别不出来u盘?macbook识别不了u盘的解决办法
- codeforces-D. Colored Boots