代码参考https://blog.csdn.net/u014796085/article/details/83931150#_11

下载的数据集使用matlab分割,自己写了一个17flowers 数据集分割python方法

import os
import shutil
path = 'C:/Users/Administrator/Downloads/17flowers/jpg'
files = os.listdir(path)
n=80
c=[files[i:i+n] for i in range(0,len(files),n)]
print(len(c[16]))
for i in range(len(c)):os.makedirs(path + '/' + str(i))for j in range(len(c[i])):shutil.move(path + '/' + c[i][j], path + '/' + str(i))

解读参考https://blog.csdn.net/u014796085/article/details/83352821

使用白化梳理一遍论文:

目标识别就是图像分类加定位,就是我输入一个图片,输出这个图片物体的类别和物体在图片中的坐标。

举例:

1.总结:R-CNN(就是region proposal + cnn)就是我先把图片分成2000分,然后把2000个图片通过CNN图像分类,得到2000个图像中物体类别得分最高的那个框,就是把物体的类别和坐标找到了。

具体训练步骤:

1.因为训练cnn需要大量的数据,但是具有物体位置标签的数据不多,但是具有物体分类标签的数据很多。所以首先是通过预训练ILSVRC数据集,训练alexnet网络的参数。

2.因为PASCAL VOC 2007数据集,具有20个类,9963张图片,和每张图片中对应的物体的标签和位置。每张图片经过selective search分成2000份,然后把分割的图片和标记的图片对比,其中iou>0.5的标记为对应的物体,<0.5的标记为背景类。

举例:一个具有小狗的图片被分成2000张,每张图片和人工标记出小狗的那个位置对比,只要是占比重大于本身的一半就认为是小狗,不然就认为是背景。

3.训练SVM分类器,得到每个图片的分类得分。输入就是通过alexnet得到的4096的图像特征向量,输出就是21个类比的得分。因为负样本过多,文中采用了难负例挖掘。这样一个图片就得到了2000*21个得分。通过非大值抑制方法,干掉一些框框。得到少量的数据框。比如1*20个数据,然后再踢出每个类别中得分少于阈值的数据,比如类别得分只有0.1 那么这一类就可以去掉,得到1*2个框框

4.训练boundingbox回归,也就对框框进行线性回归,好吧我们已经得到了框框,但是这个框是我们一开始截取的,和真实值是有差距的,那么我们在把这个框做一个线性回归,就是把x,y和原始真正的x,y比较,减少他们的差值。

具体测试步骤:

1.一个图片的2000张分割,

2.分割后的图片重新弄城227*227大小

3.2000个图片送入alexnet得到2000*4096个特征向量

4.2000*4096在送入svm 得到2000*21个数据

5.极大值抑制得到1*21个,类别小于阈值的得到1*2个框

6.框框线性回顾,得到1*2最终数据

R-CNN解读+代码梳理相关推荐

  1. TensorFlow-SSD测试代码梳理

    TensorFlow-SSD测试代码梳理,相信看过后对SSD的整个流程都一目了然了. 硬件:NVIDIA-GTX1080 软件:Windows7.python3.6.5.tensorflow-gpu- ...

  2. R语言解读自回归模型

    R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒.直到大数据的爆发,R语言变成了一门炙手可 ...

  3. R语言统计代码运行耗时实战:计算代码运行时间、使用proc.time函数计算代码运行时间

    R语言统计代码运行耗时实战:计算代码运行时间.使用proc.time函数计算代码运行时间 目录

  4. Unet论文解读代码解读

    论文地址:http://www.arxiv.org/pdf/1505.04597.pdf 论文解读 网络 架构: a.U-net建立在FCN的网络架构上,作者修改并扩大了这个网络框架,使其能够使用很少 ...

  5. 开源项目Hopsan代码梳理、流程分析

    Hosan开源项目是液压.电力等行业的仿真开源软件,由瑞典林平大学开发,可以仿真电力.液压等.更具体的了解,请参考:<Hopsan -- 液压.电力等行业的仿真开源软件>. Hosan开源 ...

  6. ++代码实现 感知机的原理_决策树ID3原理及R语言python代码实现(西瓜书)

    决策树ID3原理及R语言python代码实现(西瓜书) 摘要: 决策树是机器学习中一种非常常见的分类与回归方法,可以认为是if-else结构的规则.分类决策树是由节点和有向边组成的树形结构,节点表示特 ...

  7. Faster R CNN

    Faster R CNN 3 FASTER R-CNN 我们的Faster R CNN 由两个模块组成,第一个模块是 proposes regions 的全卷积网络,第二个是使用 proposed r ...

  8. 融资预审复核 代码梳理

    融资预审复核 代码梳理 /finaPreVerify/approve_Fh 前端传送:ec_no=RF00318211100101004&agree_flag=0 后端传参: FinaEn f ...

  9. 一篇不错的Android Audio架构代码梳理总结

     一篇不错的Android Audio架构代码梳理总结 2014-08-22 14:03:41 分类: LINUX 为android系统添加USB AUDIO设备的放音和录音功能 分类: Androi ...

  10. ADB(二)_ADBD_main()函数代码梳理

    前言 前文 ADB(一)_概况了解 前面我们对ADB从整体上进行了简单的概括梳理,我们对adb的了解应该比日常开发了解的更多了.现在就需要从局部对adb进行分析,了解它组成部分的具体工作原理是怎么样的 ...

最新文章

  1. MSSQL2000 数据库文件迁移到 MSSQL2005 可能要用的一些命令
  2. Android图片资源获取原则
  3. 还分不清芯片封装?给你整理好了常用的IC封装,点击收藏!
  4. java原子类场景,CAS你知道吗?原子类AtomicInteger的ABA问题谈谈?,原子共面问题...
  5. 在eclipse里如何快速定位到某一行?
  6. 桥接设计模式(Bridge)
  7. NHibernate初探(一)简单且完整的示例
  8. idea更换源_IDEA修改Maven替换阿里源
  9. 9点EXCEL计算公式
  10. c语言注释工具,C语言注释删除小工具下载
  11. 原生js和jquery 获取文档高度
  12. 微信公众平台如何审核
  13. 过年不让放炮,我用Python实现了1000响大地红的特效
  14. 百度网盘提速法,不用插件,不用安装脚本
  15. c语言程序 出圈游戏,【出圈】 (C语言代码)
  16. 如果有人能力不如你工资比你高怎么看?
  17. android 第三方登录和分享(5)
  18. 【干货】软件安装报“不能注册DLL/OCX:RegSvr32失败;退出代码Ox3”
  19. 基于python+PHP+mysql的小区快递自助取件系统
  20. 【学术相关】为什么美国学生学的数学比我们简单,却能做出很牛逼的东西?...

热门文章

  1. BP神经网络python代码详细解答(来自原文)
  2. JavaScript运算符运算优先级
  3. 渗透测试神器Nmap使用教程
  4. FFmpeg转码音视频不同步情况总结
  5. 10款非常棒的开源论坛系统推荐
  6. win10 office2007,excel2007,word2007等每次打开都要配置进度
  7. sap新手学习第一天
  8. 随机森林----评论情感分析系统
  9. CREO图文教程:三维设计案例之水龙头的螺旋弹簧设计图文教程之详细攻略
  10. Matlab求矩阵均值