CSP:Object as Point同会议论文,相似思想用于人脸和行人检测 | CVPR 2019
CSP将目标定义为中心点和尺寸,通过网络直接预测目标的中心和寸尺,相对于传统的RCNN类型检测算法轻量化了不少。整体思想与Object as Points撞车了,真是英雄所见略同
来源:晓飞的算法工程笔记 公众号
论文: Center and Scale Prediction: A Box-free Approachfor Pedestrian and Face Detection(High-level Semantic Feature Detection: A New Perspective for Pedestrian Detection)

Introduction
目前一些研究基于深度卷积网络进行边缘检测,获得了不错的效果。论文认为既然卷积网络能够预测边缘,那网络必然也能预测物体的中心点及其尺寸。于是论文将检测的目标定义为中心点及尺寸,提出了CSP(Center and Scale Prediction)

CSP的网络结构大致如图1所示,在主干网络上分别预测目标中心点的位置及其对应的尺寸。这篇文章的整体思想与CenterNet(zhou. etc)基本一致,但不是抄袭,因为是同一个会议上的论文,CenterNet主要研究常规的目标检测,而这篇主要研究人脸检测和行人检测。但CSP仍然需要进行NMS的后处理,较CenterNet更逊色一些,但不妨碍我们进行简单地了解,包括学习论文的训练方法以及参数。
Overall architecture

CSP检测算法的结构如图2所示,主干网络由ImageNet的预训练网络截断所得,主要分为特征提取部分以及预测部分。
Feature Extraction
以ResNet-50为例,卷积层分为五个阶段,下采样比例分别为2、4、8、16和32,论文进行了以下修改与设置:
- 将第五阶段的卷积更换为空洞卷积,使其保持下采样比例为16。
- 为了融合浅层和高层特征,在Concatenate前将多阶段输出进行反卷积扩大至同一分辨率。
- 由于不同阶段特征图的分辨率不同,使用L2-normalization将各阶段特征图的范数缩放为10。
- 论文通过实验最终只选用了第3、第4和第5阶段的特征进行检测。
- 给定大小为\(H\times W\)的输入图片,最终的concatenated特征图大小为\(H/r \times W/r\),r为4时性能最好。
Detection Head
在获得concatenated特征图\(\Phi_{det}\)后,使用简单的detection head将特征转化为检测结果。首先采用\(3\times 3\)卷积层输出256维特征,然后分别使用\(1\times 1\)卷积层来产生偏移值预测,尺寸图和中心点热图。
Training

Ground Truth
给定GT标注,能够自动地生成对应的GT中心点位置和尺寸。将GT标注对应特征图上的位置设定为中心点正样本,其它位置均为负样本。尺寸可定义为目标的高和宽,对于使用line annotation标注的行人数据集,其长宽比固定为0.41,仅需预测高度即可。对于GT尺寸,正样本位置\(k\)的值定义为\(log(h_k)\),在其半径范围2以内的位置也设为同样的值,其余设置为零。而若加入偏移值预测分支,该分支的GT定义为\((\frac{x_k}{r}-\lfloor \frac{x_k}{r}\rfloor, \frac{y_k}{r}-\lfloor
\frac{y_k}{r} \rfloor )\)。
Loss Function
对于中心点预测分支,将其视为分类任务使用交叉熵损失进行训练。为了让训练更加平滑,跟CornerNet一样定义高斯核,在特征图上对GT点进行半径范围内的扩展:

\(K\)为图片中的目标数,\((x_k, y_k, w_k, h_k)\)为中心坐标以及宽高,方差\((\sigma^k_w, \sigma^k_h)\)与目标的高和宽成比例,如果高斯区域有重叠,则取最大值。为了防止正负样本极度不平衡,加入focal loss的权值进行平衡:


\(p_{ij}\in [0,1]\)代表网络预测该位置为目标中心的概率,\(y_{i,j}\in {0, 1}\)代表GT标签。
对于尺寸预测,将其视为回归任务使用smooth L1损失进行训练:

\(s_k\)和\(t_k\)分别代表网络预测结果和每个目标的GT。如果使用了偏移值分支,则同样将其视为回归任务进行训练。完整的优化目标为:

\(\lambda_c\), \(\lambda_s\), \(\lambda_o\)分别设置为0.01,1和0.1
Inference
在测试的时候,CSP直接进行简单的前向推理,保留中心热图中置信度大于0.01的位置及其尺寸结果,生成对应的预测框并映射到原图尺寸,对所有保留的预测结果进行NMS处理。如果使用了偏移值预测分支,则对映射后的中心点进行调整。
Conclusion
CSP将目标定义为中心点和尺寸,通过网络直接预测目标的中心和寸尺,相对于传统的RCNN类型检测算法轻量化了不少。整体思想与Object as Points撞车了,发表于同一期会议,真是英雄所见略同了。
如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

CSP:Object as Point同会议论文,相似思想用于人脸和行人检测 | CVPR 2019的更多相关文章
- [CVPR 2019]Normalized Object Coordinate Space for Category-Level 6D Object Pose and Size Estimation
论文地址:https://arxiv.org/abs/1901.02970 github链接:https://github.com/hughw19/NOCS_CVPR2019 类别级6D物体位姿 ...
- Arbitrary-Oriented Object Detection with Circular Smooth Label(ECCV2020,旋转目标检测)
论文链接:https://arxiv.org/abs/2003.05597 code:https://github.com/Thinklab-SJTU/CSL_RetinaNet_Tensorflow ...
- 【TensorFlow】Win7下使用Object Detection API 训练自己的数据集,并视频实时检测
说明: 图片:自己开的摄像头,截取的图片.选择了200张图片.下面会有截取的脚本. 使用labelImg工具进行图片进行标注.产生PascalVOC格式的XML文件.[labelImg工具的安装和使用 ...
- 行人检测(Pedestrian Detection)资源
一.论文 综述类的文章 [1]P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the stat ...
- 目标检测之行人检测(Pedestrian Detection)---行人检测之简介0
一.论文 综述类的文章 [1]P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the stat ...
- SIGAI深度学习第四集 深度学习简介
讲授机器学习面临的挑战.人工特征的局限性.为什么选择神经网络.深度学习的诞生和发展.典型的网络结构.深度学习在机器视觉.语音识别.自然语言处理.推荐系统中的应用 大纲: 机器学习面临的挑战 特征工程的 ...
- 【计算机视觉】行人检测(Pedestrian Detection)资源
一.论文 综述类的文章 [1]P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the stat ...
- 使用面向对象思想处理cookie
实例:使用面向对象思想处理cookie如果读者对cookie 不熟悉,可以在第七章学习它的使用方法,虽然在那里创建了几个通用函数用于cookie 的处理,但这些函数彼此分离,没有体现出是一个整体.联想 ...
- Object类型知识总结,你掌握了多少?
Object类型 ECMAScript中的对象其实就是一组数据和功能的集合.对象可以通过执行new操作符后跟要创建的对象类型的名称来创建.而创建Object类型的实例并为其添加属性和(或)方 ...
- 论文阅读笔记五十三:Libra R-CNN: Towards Balanced Learning for Object Detection(CVPR2019)
论文原址:https://arxiv.org/pdf/1904.02701.pdf github:https://github.com/OceanPang/Libra_R-CNN 摘要 相比模型的结构 ...
随机推荐
- Spring Boot图书管理系统项目实战-10.借还统计
导航: pre: 9.归还图书 next:11.检索图书 只挑重点的讲,具体的请看项目源码. 1.项目源码 需要源码的朋友,请捐赠任意金额后留下邮箱发送:) 2.页面设计 2.1 bookStat. ...
- bootstrap响应式网页布局
bootstrap可以说是没有布局和审美概念的后端狗的福利.使用它的栅格系统可以轻松的对网页进行布局,而且可以做到响应式的布局.看起来很酷,接下来我就会总结自己在开发博客系统中用到的知识点及实战案例给 ...
- 启动MySQL5.7服务无法启动或Table 'mysql.plugin' doesn't exist
首先说一下我这个是mysql5.7.16免安装版,不过这个问题对于5.7版本应该都适用. 问题重现: 安装过程也说一下吧: 1.将下载的压缩文件解压到指定目录, 我的是:E:\program\ ...
- jupyter notebook更改默认工作目录
jupyter notebook默认配置路径:C:\Users\Administrator\.jupyter\jupyter_notebook_config.py 如果找不到配置文件,可以生成一个 j ...
- 【Java复健指南08】OOP中级03【完结】-Object类和一些练习
前情回顾:https://www.cnblogs.com/DAYceng/category/2227185.html Object类 equals方法 "=="与equals的区别 ...
- 【LeetCode二叉树#05】平衡二叉树
力扣题目链接(opens new window)](https://leetcode.cn/problems/balanced-binary-tree/) 给定一个二叉树,判断它是否是高度平衡的二叉树 ...
- 02、etcd单机部署和集群部署
上一章我们认识了etcd,简单的介绍了 etcd 的基础概念,但是理解起来还是比较抽象的.这一章我们就一起来部署下 etcd .这样可以让我们对 etcd 有更加确切的认识. 1.etcd单实例部署 ...
- Mysql 删除binlog日志方法
方法1 RESET MASTER; 解释: 该方法可以删除列于索引文件中的所有二进制日志,把二进制日志索引文件重新设置为空,并创建一个以.000001为后缀新的二进制日志文件. 该语法一般只用在主从环 ...
- 【Azure 应用服务】使用App Service for Linux/Container时,如果代码或Container启动耗时大于了230秒,默认会启动失败。
问题描述 使用App Service for Linux/Container时,从Docker的日志中,我们可以看见有 warmup 行为,而此行为默认时间为230秒,如果超出了这个时间,就会导致Co ...
- 【Azure 应用服务】应用服务中发布Docker Container,如何添加卷(如Azure File Share)以便永久存储文件
问题描述 应用服务中发布Docker Container,如何添加卷(如Azure File Share)以便永久存储文件 问题解答 App Service可以通过门户配置Mount Storage, ...