DeepID-Net:multi-stage and deformable deep CNNs for object detection
2015-11-02 17:01
1226 查看
论文贡献:
1.融合多种技术进行目标检测:feature representation learning, part deformation learning, sub-box feature extraction, context modeling, model averaging, and bounding box location refinement
2.预训练方法:使用1000类object-level带标记的样本,之前的使用image-level带标记的样本。
3.形变限制池化层(def-pooling)学习part的信息
4.multi-stage 训练,每步的分类器处理不同难度的样本,所有的分类器联合优化
5.model average策略,不同的网络结构和训练策略组成的不同模型进行融合。
baseline方法:RCNN
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/d59b1a3b384c55cdcc1c6072552496d4)
论文对RCNN方法做了改动或修补,框架如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/b1c004189f133c0f199eefa5a2e34e3a)
bbox rejection
Selective Search 提取proposals,使用现有的RCNN方法对bbox进行打分,得分满足以下条件的bbox剔除:
||si||<−1.1||s_i||<-1.1
得分是-1的是支持向量,剔出了94%的样本。
使用Deep-ID Net进行bbox分类
Deep-ID网络架构如下所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/fce1d04bfe68865fd2d8341ea8eb5108)
新的预训练策略
1.使用带标记object-level 1000类图像预训练网络
2.200-类目标检测任务微调
带有multi-stage 训练的全连接层
类似于级联,又能用BP联合优化的多级分类器,不同级分类器处理不同难度的样本,在conv5后实现,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/42688bb90c119f01350fbc4175bad1a6)
conv5层后面加了多个fc6,fc7,对于t步,权值随机初始化,BP进行训练,1~t的权值联合优化,每步新引入的分类器处理上一步被错分的样本,算法如下所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/ee937d38fc7d8563f9edc05405de75f4)
def-pooling层
目标的局部大小不一,设计不同尺寸的分类器与conv5层卷积,def-pooling层的结果如下所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/c3d82ee08963ecae1ab1379eee88fdb6)
包含四部分:
1.conv5层分别与3*3,5*5,9*9的滤波器卷积获得128通道的part特征图,用conv61,conv62,conv63表示。
2.输入def层学习形变约束
3.将def层的输出与1*1的滤波器卷积,得到fc7层
4.fc7层用来做类别预测
M表示con6输出的大小V*H,def层在block B内对M进行下采样:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/ca9732ebf45e5f3a86e037bcd5420bb4)
其中kx,kyk_x,k_y是下采样步长,(kx⋅x,ky⋅y)(k_x\cdot x,k_y\cdot y)是block中心,若cn=0c_n=0,对part放在任何位置没有惩罚,退化为最大池化,即def池化与最大池化的区别是有惩罚项。若V=kx,H=kyV=k_x,H=k_y,def池化层退化为deformation层,形变层可认为是DPM中所使用的二次形变约束,M的输出只有一个,下图显示了该方法的细节。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/6ed44c4f2c96d61e8e22c586d286e797)
def池化层与deformation层的区别:
deformation层只有一个输出,def层在多个空间位置有多个输出,可学习共享的模式,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/0a80273b3eacd906a0b391998d4e702e)
sub-box特征
将bboxr0r_0划分为四个子窗口,子窗口尺寸为根窗口的一半,对于任意一个子窗口,选取在SS方法产生的bbox中选取与其IOU最大的,对四个窗口的特征求最大求平均得到最大池化和平均池化子窗口特征,与根窗口特征串联,得到r0r_0最终的特征。subbox将mAP提升0.5%。
图像上下文信息
由于图像带有场景信息,1000类图像识别结果可以作为上下文特征,如下使用:
1.将1000类图像识别得分和200类目标检测得分串联得到1200维特征向量;
2.学习200类1-all线性SVM,测试时将1200维特征向量的线性组合作为refined的得分。
下图显示了排球1000类图像识别的得分,对泳帽和高尔夫球进行了抑制:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201909/08/cadf2a4ce3ca6db6190ed1733caa6e4d)
模型平均
使用了10个模型对结果进行平均,10个模型仅在预训练方式,损失函数,是否有def池化/subbox特征/proposal 剔除之间变换,每个模型参数如下表所示,模型平均后mAP为40.7%。
1.融合多种技术进行目标检测:feature representation learning, part deformation learning, sub-box feature extraction, context modeling, model averaging, and bounding box location refinement
2.预训练方法:使用1000类object-level带标记的样本,之前的使用image-level带标记的样本。
3.形变限制池化层(def-pooling)学习part的信息
4.multi-stage 训练,每步的分类器处理不同难度的样本,所有的分类器联合优化
5.model average策略,不同的网络结构和训练策略组成的不同模型进行融合。
baseline方法:RCNN
论文对RCNN方法做了改动或修补,框架如下:
bbox rejection
Selective Search 提取proposals,使用现有的RCNN方法对bbox进行打分,得分满足以下条件的bbox剔除:
||si||<−1.1||s_i||<-1.1
得分是-1的是支持向量,剔出了94%的样本。
使用Deep-ID Net进行bbox分类
Deep-ID网络架构如下所示:
新的预训练策略
1.使用带标记object-level 1000类图像预训练网络
2.200-类目标检测任务微调
带有multi-stage 训练的全连接层
类似于级联,又能用BP联合优化的多级分类器,不同级分类器处理不同难度的样本,在conv5后实现,如下图所示:
conv5层后面加了多个fc6,fc7,对于t步,权值随机初始化,BP进行训练,1~t的权值联合优化,每步新引入的分类器处理上一步被错分的样本,算法如下所示:
def-pooling层
目标的局部大小不一,设计不同尺寸的分类器与conv5层卷积,def-pooling层的结果如下所示:
包含四部分:
1.conv5层分别与3*3,5*5,9*9的滤波器卷积获得128通道的part特征图,用conv61,conv62,conv63表示。
2.输入def层学习形变约束
3.将def层的输出与1*1的滤波器卷积,得到fc7层
4.fc7层用来做类别预测
M表示con6输出的大小V*H,def层在block B内对M进行下采样:
其中kx,kyk_x,k_y是下采样步长,(kx⋅x,ky⋅y)(k_x\cdot x,k_y\cdot y)是block中心,若cn=0c_n=0,对part放在任何位置没有惩罚,退化为最大池化,即def池化与最大池化的区别是有惩罚项。若V=kx,H=kyV=k_x,H=k_y,def池化层退化为deformation层,形变层可认为是DPM中所使用的二次形变约束,M的输出只有一个,下图显示了该方法的细节。
def池化层与deformation层的区别:
deformation层只有一个输出,def层在多个空间位置有多个输出,可学习共享的模式,如下图所示:
sub-box特征
将bboxr0r_0划分为四个子窗口,子窗口尺寸为根窗口的一半,对于任意一个子窗口,选取在SS方法产生的bbox中选取与其IOU最大的,对四个窗口的特征求最大求平均得到最大池化和平均池化子窗口特征,与根窗口特征串联,得到r0r_0最终的特征。subbox将mAP提升0.5%。
图像上下文信息
由于图像带有场景信息,1000类图像识别结果可以作为上下文特征,如下使用:
1.将1000类图像识别得分和200类目标检测得分串联得到1200维特征向量;
2.学习200类1-all线性SVM,测试时将1200维特征向量的线性组合作为refined的得分。
下图显示了排球1000类图像识别的得分,对泳帽和高尔夫球进行了抑制:
模型平均
使用了10个模型对结果进行平均,10个模型仅在预训练方式,损失函数,是否有def池化/subbox特征/proposal 剔除之间变换,每个模型参数如下表所示,模型平均后mAP为40.7%。
相关文章推荐
- IOS开发基础Object-C(06)—@property 和@synthesize语法
- UiObject官方文档,个人翻译
- Objective-C的反射
- Objective-OC中的Category(分类)
- Binarized Normed Gradients for Objectness Estimation at 300fps阅读笔记
- FMDB使用
- object-c编程tips-jastor自动解析
- Object-C NSSet类型
- JS入门之ActiveXObject对象
- Objective-C 入门博客链接
- Object-C系列-<present and dismiss>
- IOS开发基础Object-C(05)—OC变量的作用域、self
- Object-C系列-<深入CoreData与问题整理>
- qobject_cast用法
- org.hibernate.TransientObjectException: The given object has a null identifier:
- java 写出和读入 Object对象
- Objective-C 的现代语法和新特性
- 黑马程序员-------Objective-C基础
- Objective-C的MKNetworkKit开发框架解析
- Objective-C 二维数组详解