Faster R-CNN利用新的网络结构来训练
前言
最近利用Faster R-CNN训练数据,使用ZF模型,效果无法有效提高。就想尝试对ZF的网络结构进行改造,记录下具体操作。
一、更改网络,训练初始化模型
这里为了方便,我们假设更换的网络名为LeNet。
首先,需要先训练在Faster R-CNN中用来初始化网络的模型:LeNet.caffemodel。
这里比较简单,直接用完整的LeNet去训练一部分数据(VOC2007,VOC2012均可),数据初始大小resize为224*224,即可得到初始化网络的模型。
二、在Faster R-CNN中更相关内容(Faster R-CNN是基于matlab)
1.文件夹"experiments":
(1)添加文件script_faster_rcnn_VOC2007_LeNet.m(内容同script_faster_rcnn_VOC2007_ZF.m,将文件中的ZF替换为LeNet)。
(2)子文件夹"+Model"添加文件LeNet_for_Faster_RCNN_VOC2007.m(内容同ZF_for_Faster_RCNN_VOC2007.m,将文件中的ZF替换为LeNet)
(3)子文件夹"models"中内容也需要更换,具体改动见下面"文件夹"models"中内容修改和添加"
2.文件夹"fetch_data"中:
(1)添加文件fetch_model_LeNet.m(内容同fetch_model_ZF.m,将ZF替换为LeNet)
3.文件夹"functions":
(1)子文件夹"rpn"中proposal_train.m部分内容修改:

同理 proposal_test.m。
(2) 子文件夹"fast_rcnn"中fast_rcnn_train.m文件修改如同(1)。
4.文件夹"models":
选取子文件夹"rpn_prototxts"为例
(1)添加文件夹"LeNet",将文件夹"ZF"中的所有文件都拷贝过来,然后对每个文件进行修改:
train_val.prototxt:将主体网络ZF替换为LeNet,然后对文件里的参数作出更改,如下图。

test.prototxt:将主体网络ZF替换为LeNet即可,并修改网络名称为LeNet。
solver_xxxx.prototxt:

(2)添加文件夹"LeNet_fc6",将文件夹"ZF_fc6"中的所有文件都拷贝过来,然后对每个文件进行修改,修改方式如上。
对于子文件夹"fast_rcnn_prototxts"来说,添加和修改方式如上述(1)(2)一致。
三、总结
做完上述工作,即可顺利的利用自己的网络来进行Faster R-CNN的训练了。
Faster R-CNN利用新的网络结构来训练的更多相关文章
- R语言利用ROCR评测模型的预测能力
R语言利用ROCR评测模型的预测能力 说明 受试者工作特征曲线(ROC),这是一种常用的二元分类系统性能展示图形,在曲线上分别标注了不同切点的真正率与假正率.我们通常会基于ROC曲线计算处于曲线下方的 ...
- 利用caffe的solverstate断点训练
你可以从系统 /tmp 文件夹获取,名字是什么 caffe.ubuntu.username.log.INFO.....之类 ====================================== ...
- R中利用apply、tapply、lapply、sapply、mapply、table等函数进行分组统计
apply函数(对一个数组按行或者按列进行计算): 使用格式为: apply(X, MARGIN, FUN, ...) 其中X为一个数组:MARGIN为一个向量(表示要将函数FUN应用到X的行还是列) ...
- R语言︱构造新序列
1.数值构造函数rep与seq #数值构造rep与seq rep(1:4,each=2)#依次重复1:4两遍 rep(1:4,2) #注意,重复1:4两遍 seq(from=3,to=5,by=0.2 ...
- 太恐怖了!黑客正在GPON路由器中利用新的零日漏洞
即使在意识到针对GPONWi-Fi路由器的各种主动网络攻击之后,如果您还没有将其从互联网上带走,那么请小心,因为一个新的僵尸网络已加入GPON组织,该组织正在利用未公开的零日漏洞(零时差攻击). 来自 ...
- 利用新浪云平台(SAE) 搭建 HUSTOJ 简易教程
前言: OnlineJudge(OJ)是一种代码在线判定平台,这里有许多的编程题目供你选择,你可以选择题目提交代码,OJ会自动返回你的代码的判定结果.是一种很方便的编程.算法练习平台.详情可见:百度百 ...
- R中利用SQL语言读取数据框(sqldf库的使用)
熟悉MySQL的朋友可以使用sqldf来操作数据框 # 引入sqldf库(sqldf) library(sqldf) # 释放RMySQL库的加载(针对sqldf报错) #detach("p ...
- 如何利用新浪官方的短网址API接口实现T.cn短链接的压缩生成
短网址的实现原理就是有一个数据表会配置文件将短网址和实际网址进行对应,当请求某个短网址时,程序跳转到对应的实际网址上去,从而实现网址的访问.目前国内最稳定最好用的是新浪T.cn短链接. 之前新浪提供了 ...
- 警惕黑客利用新方法绕过Office安全链接
东方联盟黑客安全研究人员透露,一些黑客已经发现绕过MicrosoftOffice365的安全功能,该功能最初旨在保护用户免受恶意软件和网络钓鱼攻击. 被称为安全链接的功能已被包含在Office365软 ...
随机推荐
- LNMP环境搭建——MySQL篇
The world's most popular open source database 1.Install MySQL root@kallen:~# apt-get install mysql-s ...
- jQuery自动加载更多程序(转)
jQuery自动加载更多程序 1.1.1 摘要 现在,我们经常使用的微博.微信或其他应用都有异步加载功能,简而言之,就是我们在刷微博或微信时,移动到界面的顶端或低端后程序通过异步的方式进行加载数据 ...
- angularJS 状态样式绑定
angularJS提供输入框不同状态下的样式绑定 输入框有4种状态 ng-model 指令可以为应用数据提供状态值(invalid, dirty, touched, error): <!DOCT ...
- C#面试基础问题0
传入某个属性的set方法的隐含参数的名称是什么?value,它的类型和属性所声名的类型相同. 如何在C#中实现继承?在类名后加上一个冒号,再加上基类的名称. C#支持多重继承么?不支持.可以用接口来实 ...
- MSBuild入门(续)
MSBuild基本概念(续) 在上一篇简单的介绍了下MSBuild中的四个基本块,每块介绍比较单薄,在这里对在大多数的项目模版生成的*.*proj文件中比较常见一些用法和概念做些补充.主要有一下几方面 ...
- Error: Could not find or load main class org.apache.flume.tools.GetJavaProperty
问题: [root@master conf]# flume-ng version Error: Could not find or load main class org.apache.flume.t ...
- atitti.atiNav 手机导航组件的设计
atitti.atiNav 手机导航组件的设计 1.1. 三大按键导航功能,back,menu ,home1 1.2. header页头组件,为移动页面顶部的导航条设计.1 1.3. 页头主题设计1 ...
- makefile之foreach函数
#$(foreach <var>,<list>,<text>) #把参数<list>中的单词逐一取出放到参数<var>所指定的变量中,然后再 ...
- application/x-www-form-urlencoded和multipart/form-data的区别
在学习<form>元素时,enctype属性有三个值 enctype属性表格: 值 描述 application/x-www-form-urlencoded 在发送前编码所有字符(默认) ...
- Javaweb开发中关于不同地方出现的绝对路径和相对路径
1.转发和包含路径 a)以“/”开头:相对当前项目路径,即默认为http://localhost:8080/项目名/ b)不以“/”开头:相对当前Servlet路径. eg:在Aservlet中写“B ...