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的更多相关文章

  1. [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物体位姿 ...

  2. Arbitrary-Oriented Object Detection with Circular Smooth Label(ECCV2020,旋转目标检测)

    论文链接:https://arxiv.org/abs/2003.05597 code:https://github.com/Thinklab-SJTU/CSL_RetinaNet_Tensorflow ...

  3. 【TensorFlow】Win7下使用Object Detection API 训练自己的数据集,并视频实时检测

    说明: 图片:自己开的摄像头,截取的图片.选择了200张图片.下面会有截取的脚本. 使用labelImg工具进行图片进行标注.产生PascalVOC格式的XML文件.[labelImg工具的安装和使用 ...

  4. 行人检测(Pedestrian Detection)资源

    一.论文 综述类的文章 [1]P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the stat ...

  5. 目标检测之行人检测(Pedestrian Detection)---行人检测之简介0

    一.论文 综述类的文章 [1]P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the stat ...

  6. SIGAI深度学习第四集 深度学习简介

    讲授机器学习面临的挑战.人工特征的局限性.为什么选择神经网络.深度学习的诞生和发展.典型的网络结构.深度学习在机器视觉.语音识别.自然语言处理.推荐系统中的应用 大纲: 机器学习面临的挑战 特征工程的 ...

  7. 【计算机视觉】行人检测(Pedestrian Detection)资源

    一.论文 综述类的文章 [1]P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the stat ...

  8. 使用面向对象思想处理cookie

    实例:使用面向对象思想处理cookie如果读者对cookie 不熟悉,可以在第七章学习它的使用方法,虽然在那里创建了几个通用函数用于cookie 的处理,但这些函数彼此分离,没有体现出是一个整体.联想 ...

  9. Object类型知识总结,你掌握了多少?

      Object类型    ECMAScript中的对象其实就是一组数据和功能的集合.对象可以通过执行new操作符后跟要创建的对象类型的名称来创建.而创建Object类型的实例并为其添加属性和(或)方 ...

  10. 论文阅读笔记五十三: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 摘要 相比模型的结构 ...

随机推荐

  1. STM32F103C8T6与W5500的运行示例

    模块说明 W5500的厂商是韩国WIZnet, 特性如下 全硬件TCP/IP协议栈: TCP,UDP,ICMP,IPv4,ARP,IGMP,PPPoE -- 注意只有IPv4 支持SPI模式0,3, ...

  2. [技术选型与调研] 流程引擎/工作流引擎:Activiti、Flowable、Camunda

    1 概述:流程与流程引擎 低代码平台.办公自动化(OA).BPM平台.工作流系统均需要流程引擎功能 [工作流引擎的三大功能] 1)验证当前过程状态:在给定当前状态的情况下,检查是否有效执行任务. 2) ...

  3. Spring Boot学生信息管理系统项目实战-3.专业管理

    1.获取源码 源码是捐赠方式获取,详细请QQ联系我 :) 2.实现效果 3.项目源码 只挑重点讲,详细请看源码. 专业管理实现学校专业的增删改查,与学院管理相关联. 前端代码 <!--编辑表单- ...

  4. TCP/IP的确认号,序列号和超时重传的学习笔记

    一:确认应答和序列号 在tcp中,发送端的数据到达主机时,接收端会返回一个已收到的通知.这个消息叫做确认应答(ACK). 当发送端发送数据后,会等待对端的确认应答.如果有确认应答,说明数据已经成功到达 ...

  5. DVWA sqli

    level low 可以看到查询请求为 http://192.168.31.xxx/vulnerabilities/sqli/?id=1&Submit=Submit# ##### id 改为 ...

  6. 具备有效期的localStorage存储

    具备有效期的localStorage存储 类方式 // 具备有效期的localStorage存储-类方式. class LocalStorageWrapper { // 存储数据到localStora ...

  7. 2021-06-28 CSS变量设置颜色

    说明 css变量只能以[–]开头. 距离当前dom元素层级最近的父元素作用域css变量的值更容易生效. css变量在css文件中只能以var()函数来使用. 代码 <!DOCTYPE html& ...

  8. Telegraph多线程下载器v0.5--tkinter

    介绍 最近在拿python写一点小工具,结合之前的多线程.线程池技术做了个GUI版的Telegraph图册批量下载工具. 因为开发平台是在Mac,虽然对Windows平台的也进行了打包,但最垃圾的Wi ...

  9. 异常处理之raise A from B

    raise A from B 语句用于连锁chain异常 from 后面的B可以是: - 异常类 - 异常实例 - None 如果B是异常类或者异常实例,那么B会被设置为A的__cause__属性,表 ...

  10. PicGo如何设置阿里云图床

    打开阿里云官网.注册并且登录.然后产品下拉列表里面通过搜索或者直接找到存储.对象存储OSS 默认你已经激活了,然后进入到控制台里面. 注意事项 Bucket名称需要全英文,不能有大写字母 服务器选国内 ...