cs231n spring 2017 lecture11 Detection and Segmentation
1. Semantic Segmentation
把每个像素分类到某个语义。
为了减少运算量,会先降采样再升采样。降采样一般用池化层,升采样有各种“Unpooling”、“Transpose Convolution”(文献中也叫“Upconvolution”之类的其他名字)。
这个问题的训练数据的获得非常昂贵,因为需要一个像素一个像素的贴标签。

2. Classification + Localizatoin
一般用同一个网络,一方面得出分类,一方面得出Bounding box的位置和大小。

3. Object Detection
预先设定好要找哪些objects,一旦图片里发现,就框出来。Classification + Localizatoin一般是针对单个物体,而这里是针对多个物体。
Sliding window:计算量太大,舍弃。
Region Proposals:先找可能有物体的图片区域,然后一个个处理,在CPU上大概几秒的时间。这种方法在深度学习之前就出来了。
R-CNN:先找出region proposal,然后把region proposal调整成神经网络需要的大小,然后给神经网络计算,最后通过SVM分类。
训练很慢(84h),也非常耗内存。预测也很慢(47秒 VGG16)

Fast R-CNN:相比R-CNN快很多,训练(8.75h),预测(计算region proposal花2秒,神经网络预测花0.32秒)。
训练的时候把下图中的Linear + softmax和Linear加起来得到multi-task loss。

Faster R-CNN:用卷积层去预测region proposal。比Fast R-CNN更快,预测耗时0.2秒。

YOLO(Redmon et al., CVPR 2016)/SSD(Liu et al, "Single-Shot MultiBox Detecotr", ECCV 2016):这两种方法没有用region proposal,更快,但是相对不那么准。Faster R-CNN更慢,但是更准。
Object Detection + Captioning (DenseCap, CVPR 2016)
4. Instance Segmentation
Semantic Segmentation和Object Detection的结合,找出多个物体,并且判断每个像素属于哪个分类。
Mask R-CNN (He et al., 2017),网络有两个分支,第一个执行Object Detection,第二个执行Semantic Segmentation。这个网络把之前的都融合起来,是集大成者,表现非常非常好。在Object Detection分支加入对人体关节的识别,还能识别人的pose。基于Faster R-CNN,接近real-time。

cs231n spring 2017 lecture11 Detection and Segmentation的更多相关文章
- cs231n spring 2017 lecture11 Detection and Segmentation 听课笔记
1. Semantic Segmentation 把每个像素分类到某个语义. 为了减少运算量,会先降采样再升采样.降采样一般用池化层,升采样有各种"Unpooling"." ...
- cs231n spring 2017 lecture13 Generative Models 听课笔记
1. 非监督学习 监督学习有数据有标签,目的是学习数据和标签之间的映射关系.而无监督学习只有数据,没有标签,目的是学习数据额隐藏结构. 2. 生成模型(Generative Models) 已知训练数 ...
- cs231n spring 2017 lecture9 CNN Architectures 听课笔记
参考<deeplearning.ai 卷积神经网络 Week 2 听课笔记>. 1. AlexNet(Krizhevsky et al. 2012),8层网络. 学会计算每一层的输出的sh ...
- cs231n spring 2017 lecture7 Training Neural Networks II 听课笔记
1. 优化: 1.1 随机梯度下降法(Stochasitc Gradient Decent, SGD)的问题: 1)对于condition number(Hessian矩阵最大和最小的奇异值的比值)很 ...
- cs231n spring 2017 Python/Numpy基础 (1)
本文使根据CS231n的讲义整理而成(http://cs231n.github.io/python-numpy-tutorial/),以下内容基于Python3. 1. 基本数据类型:可以用 prin ...
- cs231n spring 2017 lecture13 Generative Models
1. 非监督学习 监督学习有数据有标签,目的是学习数据和标签之间的映射关系.而无监督学习只有数据,没有标签,目的是学习数据额隐藏结构. 2. 生成模型(Generative Models) 已知训练数 ...
- cs231n spring 2017 lecture9 CNN Architectures
参考<deeplearning.ai 卷积神经网络 Week 2 听课笔记>. 1. AlexNet(Krizhevsky et al. 2012),8层网络. 学会计算每一层的输出的sh ...
- cs231n spring 2017 lecture7 Training Neural Networks II
1. 优化: 1.1 随机梯度下降法(Stochasitc Gradient Decent, SGD)的问题: 1)对于condition number(Hessian矩阵最大和最小的奇异值的比值)很 ...
- cs231n spring 2017 Python/Numpy基础
本文使根据CS231n的讲义整理而成(http://cs231n.github.io/python-numpy-tutorial/),以下内容基于Python3. 1. 基本数据类型:可以用 prin ...
随机推荐
- windows下python自带的pip安装速度过慢解决方案
自带下载地址为国外源下载速度时常在20KB以内切换为国内源直接满速! 国内源: 新版ubuntu要求使用https源,要注意. 清华:https://pypi.tuna.tsinghua.edu.cn ...
- Excel Old format or invalid type library 错误原因
Old format or invalid type library 错误原因 调用excel方法失败,Old format or invalid type library 解决方案: 1,这是Exc ...
- 使用pyintaller打包python3.6项目,并用c#调用该脚本
一.pythoninstaller 打包python项目 前提:安装python3.6环境+pycharm 1. 安装pyinstaller pip install pyinstaller 2. cm ...
- CodeForces 1292A NEKO's Maze Game(思维)
#include <stdio.h> #include <string.h> #include <iostream> #include <string> ...
- 用Python3生成30万条excel数据(xlsx格式)
在B/S架构的系统测试中,有时需要通过导入excel文件来生成一些数据记录,当数据量小的时候,一般不会出现什么问题,而当导入的数据量巨大时,对系统的性能就是一个考验了.为了验证系统的性能,有时需要导入 ...
- python编程:从入门到实践----第六章:字典>练习
6-1 人:使用一个字典来存储一个熟人的信息,包括名.姓.年龄和居住的城市.该字典应包含键first_name .last_name .age 和city .将存储在该字典中的每项信息都打印出来. f ...
- ubuntu14 编译tensorflow C++ 接口
tensorflow1.11 bazel 0.15.2 protobuf 3.6.0 eigen 3.3.5 wget -t 0 -c https://github.com/eigenteam/eig ...
- AFN Post请求,报错400(code:-1011)
解决方法: 声明请求的参数格式是json, post的数据格式还是传字典. 声明代码: AFHTTPSessionManager *manager = [AFHTTPSessionManager ma ...
- python-day2爬虫基础之爬虫基本架构
今天主要学习了爬虫的基本架构,下边做一下总结: 1.首先要有一个爬虫调度端,来启动爬虫.停止爬虫或者是监视爬虫的运行情况,在爬虫程序中有三个模块,首先是URL管理器来对将要爬取的URL以及爬取过的UR ...
- Canvas 橡皮擦效果
引子 解决了第一个问题图像灰度处理之后,接着就是做擦除的效果. Origin My GitHub 思路 一开始想到 Canvas 的画布可以相互覆盖的特性,彩色原图作为背景,灰度图渲染到 Canvas ...