记pytorch版faster rcnn配置运行中的一些坑
记pytorch版faster rcnn配置运行中的一些坑
项目地址
https://github.com/jwyang/faster-rcnn.pytorch
一般安装配置参考README.md文件
配置详情
- Python3.6
- pytorch1.0
- GPURTX2080
- CUDA10.0
参考博客
https://blog.csdn.net/weixin_43380510/article/details/83004127
1. 分支爬取错误
git clone -b pytorch-1.0 https://github.com/jwyang/faster-rcnn.pytorch.git
不同分支的项目需求配置不一样,比如主分支是支持pytorch-0.4.0,上述克隆的分支是支持pytorch-1.0的
2.ImportError: cannot import name '_mask'
训练时遇到无法导入_mask的问题
https://github.com/jwyang/faster-rcnn.pytorch/issues/410
https://github.com/cocodataset/cocoapi/issues/59#issuecomment-469859646
原因应该是项目中/lib/pycocotools里的文件过于老旧,将https://github.com/cocodataset/cocoapi/tree/master/PythonAPI/pycocotools中的文件复制到/lib/pycocotools文件中,然后进入lib目录下,执行下列代码
python setup.py build develop
3.训练过程发生assert(boxes[:,2]>=boxes[:,0]).all()
这个问题是由于标注框中含有0导致的,网上有很多的解决办法,比如https://blog.csdn.net/xzzppp/article/details/52036794,但是个人觉得这样其实改变了代码原本用意,所以没有采用。我所采用的解决方法其实很简单,就是在自己制作数据集,写XML文件的时候,遇到边框为0的时候+1,也就是起始从1开始,而不是从0开始。
4.修改检测类别
修改/lib/datasets/pascal_voc.py文件

将上述代码修改成你需要的检测的类别。
例:
self._classes = ('__background__', # always index 0
'apple', 'banana)
5.清空缓存
当重新训练的时候,往往会遇到图片读取错误的问题,这个便是因为缓存没有清空。原因是当训练数据集的时候,会读取data/cache目录下的.pkl缓存文件,所以每次重新训练的时候,一定要记得删除data/cache文件夹下的缓存文件。
6.运行demo.py文件模型数量过多
修改demo.py文件

对应4,修改成对应检测类别
记pytorch版faster rcnn配置运行中的一些坑的更多相关文章
- Tensorflow版Faster RCNN源码解析(TFFRCNN) (2)推断(测试)过程不使用RPN时代码运行流程
本blog为github上CharlesShang/TFFRCNN版源码解析系列代码笔记第二篇 推断(测试)过程不使用RPN时代码运行流程 作者:Jiang Wu 原文见:https://hom ...
- python 版Faster Rcnn
直接按照官网https://github.com/rbgirshick/py-faster-rcnn上的教程对faster Rcnn进行编译的时候,会发有一些层由于cudnn版本的更新,会报错如下: ...
- Tensorflow版Faster RCNN源码解析(TFFRCNN) (3)推断(测试)过程使用RPN时代码运行流程
本blog为github上CharlesShang/TFFRCNN版源码解析系列代码笔记第三篇 推断(测试)过程不使用RPN时代码运行流程 作者:Jiang Wu 原文见:https://hom ...
- Tensorflow版Faster RCNN源码解析(TFFRCNN) (1) VGGnet_test.py
本blog为github上CharlesShang/TFFRCNN版源码解析系列代码笔记第1篇 VGGnet_test.py ----作者:Jiang Wu(吴疆),未经允许,禁止转载--- -- ...
- [计算机视觉][神经网络与深度学习]Faster R-CNN配置及其训练教程2
faster-rcnn分为matlab版本和python版本,首先记录弄python版本的环境搭建过程.matlab版本见另一篇:faster-rcnn(testing): ubuntu14.04+c ...
- faster rcnn相关内容
转自: https://zhuanlan.zhihu.com/p/31426458 faster rcnn的基本结构 Faster RCNN其实可以分为4个主要内容: Conv layers.作为一种 ...
- faster rcnn 详解
转自:https://zhuanlan.zhihu.com/p/31426458 经过R-CNN和Fast RCNN的积淀,Ross B. Girshick在2016年提出了新的Faster RCNN ...
- [转]CNN目标检测(一):Faster RCNN详解
https://blog.csdn.net/a8039974/article/details/77592389 Faster RCNN github : https://github.com/rbgi ...
- Faster RCNN学习笔记
感谢知乎大神的分享 https://zhuanlan.zhihu.com/p/31426458 Ross B. Girshick在2016年提出了新的Faster RCNN,在结构上,Faster R ...
随机推荐
- 如何隐藏 Safari 中 input 标签的 autofill 图标
Safari 浏览器会为 <input type="passport"> 标签自动添加一个小锁的图标(如下图),本意上是让用户可以从这里选择相应的 用户名/密码 进行自 ...
- 【log4j】springboot项目启动 ,使用的druid数据源,log4j报错 log4j:WARN Please initialize the log4j system properly.
springboot项目启动 ,使用的druid数据源,log4j报错 -- :: --- [ restartedMain] o.hibernate.annotations.common.Versio ...
- mysql 将多个查询结果合并成一行
mysql中的多行查询结果合并成一个 SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id AND ...
- 数据库读写锁的实现(C++)
一.基本概念 在数据库中,对某数据的两个基本操作为写和读.分布有两种锁控制:排它锁(X锁).共享锁(S锁). 排它锁(x锁):若事务T对数据D加X锁,则其他不论什么事务都不能再对D加不论什么类型的锁. ...
- LAMP中php配置
内容概要:一. php配置1. 配置disable_functiondisable_functions = eval,assert,popen,passthru,escapeshellarg,esc ...
- 改变PS1变量的颜色
2016.1.11今天学了改变PS1的颜色,怎么增加PS1变量找到文件(.bash_profile),或者bashrc export PS1="\[\e[32;1m\]Test $PWD&g ...
- 机器学习算法实践:决策树 (Decision Tree)(转载)
前言 最近打算系统学习下机器学习的基础算法,避免眼高手低,决定把常用的机器学习基础算法都实现一遍以便加深印象.本文为这系列博客的第一篇,关于决策树(Decision Tree)的算法实现,文中我将对决 ...
- RxJava操作符总结之过滤
RxJava操作符总结之过滤 jsut() just(T t1, T t2, T t3 ....) ,just能够传入多个同样类型的參数,并将当前參数一个接着一个的发送. Observable.jus ...
- php权威编程有趣部分
1.isset empty如果遇到null,isset判断为false;empty 判断为trueisset(var1, var2,...) 可以判断多个变量 2.unsetunset可以取消之前定义 ...
- vue 的 起手式
代码: vue.js // vue 起手势 (function(root,factory) { root.Vue = factory(); })(this,function(){ // 设置基础的默认 ...