深度学习(主要是CNN)用于图片的分类和检测总结
深度学习(主要是CNN)用于图片的分类和检测总结
2014-12-4阅读920 评论0
前言: 主要总结一下自己最近看文章和代码的心得。
1. CNN用于分类:具体的过程大家都知道,无非是卷积,下采样,激活函数,全连接等。CNN用于分类要求它的输入图片的大小是固定的(其实不单单是CNN,很多其它的方法也是这样的),这是它的一个不足之处之一。目前的大部分CNN都是用来做分类比较多。
2. CNN用于检测:主要的方法有两种,细分一下有三种,
第一种最为简单和暴力的,通过滑动窗口的方法,提取一个固定大小的图像patch输入到CNN网络中,得到该patch的一个类别,这样得到一个图片密集的类别得分图。显然,这种方法的一个弊端就是运算量太大,如果图片的分辨率比较的大,就根本无法进行下去,更何况,这还是在没有考虑图片多尺度检测的情况。
第二种方法,在第一种方法的基础之上,采用了动态规划的思想,避免了重复计算问题。对于CNN来说,直到第一个全连接层之前,它的输入图片大小是可以不固定的,但是有了全连接层之后,就要求输入大小保持一致,第二种方法是先把任意大小的图片进行输入CNN直到第一个全连接层,然后再在它的基础上进行固定大小的滑动窗口输入到全连接层中,由于第一个全连接层之前进行了大量的下采样操作,所以这时候的滑动窗口的数目就大大的减少了,而且前面的卷积操作就要计算一次,没有重复计算的问题。CNN里面有一个trick就是把训练好了的用于分类的网络,把它的全连接层参数转化为卷积层参数。这样改造后的CNN就成了全卷积CNN,它的输入是可以任意的,而它的输出是patch 的类别得分。这个在Caffe里面有一个例子说明怎么转换。网址在这里:http://nbviewer.ipython.org/github/BVLC/caffe/blob/master/examples/net_surgery.ipynb
第三种方法,跟前两种不同的是,它不是采用滑动窗口的方法,而是采用提取子窗口的方法,这种方法最典型的是今年的CVPR2014的R-CNN方法,它先采用一个方法来进行生成1000-2000左右的窗口区域(类似于目标显著性检测,但又不同,英文的说法叫Objectness,不好翻译),然后再把这些窗口归一化到相同的大小放到CNN里面去做分类。(当然RCNN的方法只是用训练好了的CNN进行提特征,它还需要进行对每一个类别进行训练SVM分类器)。显然这种方法的优点的是比前两种快,因为分类的窗口少,但是它也有不足就是,它要保证要检测的目标在这些1000-2000个提取的窗口中的概率要足够的高,也就是要有比较高的召回率。再者,它要保证这1000-2000个窗口的提取要足够的快,(在R-CNN中,由于它采用的方法生成窗口很慢,所以实际上整个检测是比较慢的。)
深度学习(主要是CNN)用于图片的分类和检测总结相关推荐
- 深度学习用于图片的分类和检测总结
1. CNN用于分类:具体的过程大家都知道,无非是卷积,下采样,激活函数,全连接等.CNN用于分类要求它的输入图片的大小是固定的(其实不单单是CNN,很多其它的方法也是这样的),这是它的一个不足之处之 ...
- 1 图片channels_深度学习中各种图像库的图片读取方式
深度学习中各种图像库的图片读取方式总结 在数据预处理过程中,经常需要写python代码搭建深度学习模型,不同的深度学习框架会有不同的读取数据方式(eg:Caffe的python接口默认BGR格式,Te ...
- (转)深度学习中各种图像库的图片读取方式
https://blog.csdn.net/u013841196/article/details/81194310 深度学习中各种图像库的图片读取方式总结 在数据预处理过程中,经常需要写python代 ...
- 深度学习中各种图像库的图片读取方式
深度学习中各种图像库的图片读取方式总结 在数据预处理过程中,经常需要写python代码搭建深度学习模型,不同的深度学习框架会有不同的读取数据方式(eg:Caffe的python接口默认BGR格式,Te ...
- 机器学习与深度学习——通过奇异值分解算法压缩图片
机器学习与深度学习--通过奇异值分解算法压缩图片 什么是奇异值分解? 奇异值分解(Singular Value Decomposition,SVD)是一种重要的线性代数方法,用于将一个矩阵分解成三个部 ...
- 基于深度学习的恶意样本行为检测(含源码) ----采用CNN深度学习算法对Cuckoo沙箱的动态行为日志进行检测和分类...
from:http://www.freebuf.com/articles/system/182566.html 0×01 前言 目前的恶意样本检测方法可以分为两大类:静态检测和动态检测.静态检测是指并 ...
- 深度学习主题月:飞桨三大系列锦标赛奖金翻倍,快来报名!
10月深度学习主题月,飞桨PaddlePaddle.AI Studio.EasyDL各具匠心,不仅全方位向大家展示完整的信息和教程,更是鼓励大家在实践中应用,为大家准备了翻倍奖金.算力支持.AI代金券 ...
- 深度学习-第T2周——彩色图片分类
深度学习-第T2周--彩色图片分类 深度学习-第P1周--实现mnist手写数字识别 一.前言 二.我的环境 三.前期工作 1.导入依赖项并设置GPU 2.导入数据集 3.归一化 4.可视化图片 四. ...
- 深度学习之数据处理——如何将图片和标签打乱并划分为训练集和测试集
深度学习之数据处理--如何将图片和标签打乱并划分为训练集和测试集 记录我的第一篇CSDN博客 最近我在网上找到Office31数据集,这个数据集中包含了三个子数据集,分别为:Amazon.dslr.w ...
最新文章
- 企业运维——机房建设的一些建议
- qpushbutton 设置字体大小_怎样设置Qpushbutton 的大小
- aspx网页背景图片设置代码_python 30行代码自动填写问卷(单选题和多选题)
- Python中如何修改字符串的值
- Topic交换器-编写生产者
- 为自己而活,这很难吗?
- vue 字符串分割_嗯哼vue组件taginput包教不包会
- php角色权限安全,php – 安全的chmod权限?
- 小型团队快速开发方法
- BTA 常问的 Java基础40道常见面试题及详细答案,java初级面试笔试题
- Hibernate事务
- 杭电 -- 2553 N皇后问题
- Java宠物管理系统(运用接口简易版)
- matlab 小波分析实例,小波分析MATLAB实例
- candence的图纸大小设置_标准制图图纸尺寸大小
- 黑科技之中文计算机语言,双语 - 小巧玲珑的计算机语言 - Red
- c语言算术转换例子,关于C语言算术表达式中“寻常算术转换”的问题
- ClickHouse原理及使用
- Solr实现京东搜索
- 动态规划入门及规则分析(典型)
热门文章
- iis占用服务器内存,W3wp.exe 进程占用内存高消耗CPU近100%导致网站反应速度缓慢的解决方案...
- ProgressBar(圆形、水平进度条)的基本使用(点击Button1按钮,显示或消失圆形ProgressBar)(每点击一次Button2按钮,水平进度条增加10%)
- cifar-10 cnn 分类
- python elif 用法_Python入门高级教程--Python 条件语句
- 指令流水 一个时钟周期 出一个结果_以SM3算法为例,构建一个软硬协作算法加速器:性能分析与优化...
- Leetcode 144. 二叉树的前序遍历 (每日一题 20210820)
- Leetcode 455.分发饼干 (每日一题 20210708 同类型题)
- 文巾解题 1. 两数之和
- Linux疑难杂症解决方案100篇(十)-uptime命令查看linux系统负载
- xss绕过字符过滤_XSS过滤器绕过总结