记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 ...
随机推荐
- 集合框架(06)Arrays
Arrays Arrays:用于操作数组的工具类,里面都是静态方法 ---数组变集合 1.asList:将数组变成List集合 把数组变成list集合的好处?可以使用集合的思想和方法来操作数组中的元素 ...
- C语言基础之变量、作用域
1.变量的定义 变量类型 变量名; int score; 2.变量的赋值 score = 100; score = a; score = b = 100; 3.变量的输出 int a = 200; p ...
- 2.IsoDep类
IsoDep 类概述: Provides access to ISO-DEP (ISO 14443-4) properties and I/O operations on a Tag. Acquire ...
- Spark-class启动脚本解读
#!/usr/bin/env bash # # Licensed to the Apache Software Foundation (ASF) under one or more # contrib ...
- DevExpress.XtraTreeList
1. DevExpress.XtraTreeList控件 将其简称为tree,tree其实就是一个树表控件,他像树一样包含具有父子关系的若干节点,同时每个节点又是一个带有多个字段的记录 ...
- jstl <fmt:formatDate>标签
<fmt:formatDate>标记用于在各种不同的方式来格式化日期 属性: <fmt:formatDate>标签具有以下属性: 属性 描述 必需 默认值 value 要显示的 ...
- java源码阅读String
1类签名与注释 public final class String implements java.io.Serializable, Comparable<String>, CharSeq ...
- 为什么实现Serializbale接口就能够进行序列化?
从所周知,Serializbale接口是个空的接口,并没有定义任何方法.那么问题来了,为什么需要序列化的接口只要实现Serializbale接口就能够进行序列化? 这要从序列化过程的源码说起.举个例子 ...
- 使用RTTI为继承体系编写”==”运算符
转载请注明出处:http://www.cnblogs.com/inevermore/p/4012079.html RTTI,指的是运行时类型识别技术. 先看一个貌似无关的问题: 为继承体系 ...
- MySQL几个性能指标
近期参加了一个DBA MySQL的分享,主要从MySQL的性能指标分析.同步及运维三个方面分享一些经验,其中,一些经验值还是值得记录下来的: 对于一个MySQL实例,CRUD上限经验值如下: Quer ...