DenseBox: Unifying Landmark Localization with End to End Object Detection
DenseBox: Unifying Landmark Localization with End to End Object Detection
- arxiv: http://arxiv.org/abs/1509.04874
- demo: http://pan.baidu.com/s/1mgoWWsS
- KITTI result: http://www.cvlibs.net/datasets/kitti/eval_object.php
DenseBox是一个完整的基于CNN的物体检测框架,它通过精心的网络设计,能够处理不同尺度的检测,实现更精确的定位回归。模型训练中所采用特征融合,多任务训练,难负样本挖掘等方法也是被广泛证明有效的。同时它也KITTI上的结果也从另一个角度说明,只要模型设计和训练得当,小模型已经有足够好的效果。但是对于ADAS而言,光有检测是远远不够的,往往需要通过系统的冗余,采取相对保守的策略来规避最差的情况。
本文的贡献有以下几点:
1,实现了end-to-end的学习,同时完成了对bounding box和物体类别的预测;
2,在多任务学习中融入定位信息,提高了检测的准确率。
百度深度学习研究院 的目标检测工作 类似 Faster R-CNN,是地平线ADAS的车辆检测 核心算法
从上图可以看到,只需要单独的卷积网络就可以同时输出多个预测到的bounding box和分类结果,除了nms之外,检测系统的所有组成部分都构建在FCN之中。
Densebox for Detection
1、Ground Truth Generation
在图像预处理阶段,在保证人脸和足够的背景信息下对图片进行了剪切。
在训练过程中,将原始图片剪切到240*240大小,保证处于中心的脸部高度为50p,输出的ground truth是一个5通道的大小为60*60的特征图。
2、Model Design
上图是本文的网络结构图。红色部分表示存在学习参数。前12个conv层的网络参数由VGG19模型参数直接初始化,conv4_4的输出作为后续四个1*1卷积层的输入,前两个输出的是通道1的特征图,用于分类预测,后两个利用通道4的特征图来预测bounding box的相对位置。这种有两个输出分支的结构和Fast R-CNN很相似,在第一个输出端口定义分类损失函数,在第二个定义bounding-box回归损失函数,这样就可定义完整的损失函数。
模型是从19层的VGG模型演变来的。
Multi-Level Feature Fusion: 将不同卷积层的特征联系起来可以提高检测效果
如果只做简单的全卷积,在高层的特征空间里很难保留物体的细节特征。这对于小物体的检测以及遮挡物体的定位都会带来不利的影响。图像分割中常常使用特征融合的方法,即把浅层的特征与高层的特征经过尺度变换后拼在一起。拼接的方式基本有两种,一种是像GoogLeNet一样,按channel维度拼起来,第二种就是孙健的ResNet那样,把它们直接相加。现在这种做法也变成了趋势,越来越多人做视觉任务都用了类似的方法。经过多层卷积,下采样后得到低分辨率的高维表达,可以抽象出物体的高层语意表达,捕获物体的上下文空间信息,相当于是一个bottom-up的表达抽象过程。然后再逐步把前面层的特征组合起来,补充细节信息,这相当于再做一个top-down的修正。
3、Multi-Task Training
两个任务:1)目标有无,2)目标的位置
均衡抽样Balance Sample:
- Ignoring Gray Zone:
除了产生正样本的区域, 即下图中红色的区域外, 还会产生灰色的区域(gray zone) 或者是说模糊的区间。这些灰色地带被判别为正样本或者负样本都是不合理的, 训练的时候模型不应该对这些区域的预测正确与否产生惩罚。
- Hard Negative Mining:
地平线采用多任务学习(multi-task learning)的方式对网络进行端到端(end-to-end)的训练。多任务训练体现在同时进行分类和回归的学习,以及不同尺度对应的网络分支也会进行监督学习。多任务学习有助于网络训练的整体稳定,同时还能加快收敛。除此之外对于分类任务,地平线也用了在线难负样本挖掘(online hard negative mining)方法训练CNN。这个方法最近被证实在训练CNN检测器的时候很有效。其实在很早以前大家用boosting, DPM等方法的时候就已经这么做了,地平线也很早就在我们的方法里头用了这个策略。具体来说,会首先保持正负样本比例为1:1,然后让所有的负样本,一半从最难(即分类最糟糕)的一部分中采样,另一半则为随机采样。另外,我们用hinge loss来做分类,用简单的L2 loss 做检测框的回归。还有个细节就是地平线在训练中还用了梯度修剪(clip gradient)的方法来缓和训练过程中梯度不稳定的情况。
- Loss with Mask
Landmark 改善定位模型
对比:
传统的NN-based Face Detector;
OverFeat[1]中提出了将分类和定位问题一起解决的思想,但这两个任务在训练阶段是分开进行的,并且需要复杂的后续处理来得到检测结果,而在本文中多任务的学习是end-to-end;
DDFD[2]是一个基于CNN的人脸检测系统,它比R-CNN的性能更好的原因在于R-CNN在proposal的产生过程中会遗失一些脸部信息。但DDFD的类别预测和bounding box定位也是分为两个阶段进行的;
Faster R-CNN[3]通过RPN完成proposal的生成,RPN需要预先定义好的anchors,而且RPN是在多尺度物体上进行训练的。
MultiBox[4]运用CNN来生成proposal而不是selective search,它生成的bounding box不具有不变性,而本文生成的bounding box和RPN一样,具有转换不变性;
YOLO[5]和DenseBox一样也可完成end-to-end的学习,但两者的输出层设计不一样。YOLO针对每个图像输出49个bounding box, 最终在分类的时候是基于低分辨率的特征图像,这导致原图像中面积很小的物体在经过多次的卷积之后,其信息很难在低分辨率的特征图中进行保存,DenseBox则通过上采样层来保证分辨率相对较高的输出,同时运用了下采样。这使得网络在处理小物体和高度重合的物体上有很大的优势.
实验:
KITTI 数据集车辆检测上面的结果:
DenseBox: Unifying Landmark Localization with End to End Object Detection相关推荐
- DenseBox Unifying Landmark Localization with End to End Object Detection
前言 最近开始阅读AnchorFree系列的论文,2015年发布在CVPR的DenseBox基于AnchorFree思路的one-stage目标检测有必要阅读一下,了解下AnchorFree的一些思路 ...
- Delving into Localization Errors for Monocular 3D Object Detection 论文学习
论文地址:Delving into Localization Errors for Monocular 3D Object Detection Github地址:Delving into Locali ...
- Unifying Voxel-based Representation with Transformer for 3D Object Detection (UVTR)论文笔记
原文链接:https://arxiv.org/abs/2206.00630 1.引言 统一表达对多模态的知识迁移和特征融合是必不可少的. 目前的统一表达可大致分为输入级和特征级的.输入级方法在网络开始 ...
- 文献记录(part41)--Residual multi-task learning for facial landmark localization and expression ...
学习笔记,仅供参考,有错必纠 关键词:面部地标定位:面部表情识别:深层神经网络:多任务学习 随便看看- 文章目录 Residual multi-task learning for facial lan ...
- Dynamic Head: Unifying Object Detection Heads with Attentions
Dynamic Head 论文标题:Dynamic Head: Unifying Object Detection Heads with Attentions 论文地址:https://arxiv.o ...
- Dynamic Head: Unifying Object Detection Heads with Attentions 阅读
Abstract 这里就是说在目标检测领域,很多工作都想提高检测头的性能,这篇文章提出了动态头,也就是Dynamic Head,来将检测头和注意力(Attention)结合.在尺度(scale-awa ...
- Dynamic Head: Unifying Object Detection Heads with Attentions论文阅读
Dynamic Head: Unifying Object Detection Heads with Attentions论文阅读 摘要 介绍 相关工作 方法 Dynamic Head 扩展到现存的检 ...
- Dynamic Head Unifying Object Detection Heads with Attentions 论文阅读笔记
Dynamic Head Unifying Object Detection Heads with Attentions论文阅读笔记 这是微软在CVPR2021发表的文章,在coco数据集上取得了目前 ...
- Deep Learning for Weakly-Supervised Object Detection and Object Localization: A Survey
摘要 弱监督目标检测(WSOD)和定位(WSOL),即使用图像级标签检测图像中包含边界框的多个或单个实例,是CV领域中长期存在且具有挑战性的任务. 随着深度神经网络在目标检测中的成功,WSOD和WSO ...
最新文章
- 微信快速开发框架(六)-- 微信快速开发框架(WXPP QuickFramework)V2.0版本上线--源码已更新至github...
- bootstrap怎么用_不用自己写css,不用bootstrap,写样式有tailwindcss就足够了
- IDE:集成开发环境(Integrated Development Environment)
- 决策实验(1)——分钱任务
- Linux文件系统上的特殊权限 SUID, SGID, Sticky(粘之位)
- IDEA中Project 和 Module的区别
- java地狱猫_ES6 ES6变量的声明
- [jQuery] 根据表单的不同参数跳转不同的链接
- “约见”面试官系列之常见面试题第三十一篇之vue-router得守卫(建议收藏)
- 线性代数基础(矩阵、范数、正交、特征值分解、奇异值分解、迹运算)
- ant编译mysql驱动
- 如何自定义已有架构的css样式
- 数据有什么特征和作用
- 高中信息技术——Flash动画制作刷题点整理(一)
- 【设计模式】建造者模式(生成器模式)
- JAVA基础—适配器设计模式
- 导致UIButton半透明的原因
- iOS 幸运转盘抽奖+粒子动画
- 解决IDEA编译(java找不到符号)问题
- 计算机b类b级2020,CPU天梯图2020_笔记本CPU天梯图2020最新版【7月更新】-太平洋IT百科...