目标检测-One Stage-CenterNet

文章目录


前言

前文提到的YOLOv3YOLOv4YOLOv5都是基于Anchor的算法(anchor-based),这类算法有如下缺点:

  1. 产生大量的预测框,计算量大
  2. 正负样本不平衡问题:产生的预测框大部分是负样本
  3. 对预定义anchor依赖:anchor-based方法的anchor box的尺度是一个超参数,不同的超参设置会影响模型性能

因此出现了anchor-free这类不依赖于预定义锚框的算法,使得模型更灵活,并且在处理各种目标形状和大小时更具鲁棒性,在一些场景下取得了与传统锚框方法相媲美甚至更好的性能。

CenterNet 就是经典的 anchor-free 目标检测算法(CVPR 2019)


提示:以下是本篇文章正文内容,下面案例可供参考

一、CenterNet的网络结构和流程

  1. 图像预处理:对图片进行随机翻转,随机缩放(0.6~1.3倍),图片裁剪和颜色增强。
  2. 将图像输入backbone(Hourglass/ResNet/DLA/...)得到下采样为原来R分之一大小的特征图

ps:

  • Hourglass Network(时钟网络)是一种用于姿态估计和目标检测的神经网络结构,最初由Alejandro Newell等人于2016年提出。它的名字来自于其整体网络结构的形状,看起来像一个沙漏或时钟的形状。
  • Hourglass Network 的主要特点是通过堆叠多个相互连接的 Hourglass 模块,实现对不同尺度特征的提取和整合。Hourglass 模块本身是一个自我包含的网络结构,具有先下采样(down-sampling)然后上采样(up-sampling)的结构,以捕捉底层和高层特征。
  1. 将获得的特征图同时输入HeatMap、OffSet、Size三个组件,得到的目标框的分类和回归情况

ps:

  • HeatMap:经过卷积模块,预测特征图中每个像素是否是目标的中心点
  • OffSet:经过卷积模块,以特征图中每个像素为中心点,回归目标边界框中心点的偏移量
  • Size:经过卷积模块,以特征图中每个像素为中心点,回归目标边界框的大小(宽度、高度)
  1. 预测框转换:将上述结果合并,得到预测框的类别和位置信息

ps:

  1. 首先,对HeatMap的通道做Argmax和max处理,得出分类的index和最高得分。根据得分置信度过滤掉低于阈值的物体中心(此时的过滤完的结果已经带有分类信息和物体中心位置的坐标了)。
  2. 将Offset的偏移量加到HeatMap中的物体中心坐标上,进行修正。
  3. 根据上面HeatMap的过滤结果,对置信度高于阈值的WidthHeight进行转换,xyhw -> x1y1x2y2,就得到预测框了。
    最后将预测框结果进行归一化,方便后面预测框转换计算。
  1. 后处理:虽然论文作者一直强调自己这个模型是一个完全端到端的设计,不需要nms等后处理操作。只需要一个3x3的max_pooling层就可以替代nms。但是实际使用中,无论模型的预测结果还是训练数据,都在结果转换后进行nms。

二、CenterNet的创新点

  1. 用HeatMap预测的目标中心点代替Anchor机制来预测目标,使用更大分辨率的输出特征图(相对于原图缩放了4倍),因此无需用到多层特征,实现了真正的Anchor-Free,训练上更加简便,并且由于无需额外生成anchor,在保证精度的同时,速度显著提升。
  2. 网络可拓展性非常强,论文中介绍了实现3D目标检测和人体姿态估计任务。具体来说对于3D目标检测,直接回归得到目标的深度信息,3D目标框的尺寸,目标朝向;对于人体姿态估计来说,将关键点位置作为中心的偏移量,直接在中心点回归出这些偏移量的值。

总结

CenterNet是anchor-free中的一个里程碑之作。除了目标检测之外,CenterNet还能应用到其他视觉任务中,如人体关键点,姿态预测等。

模型简单而精巧的设计,使得CenterNet在运行速度和精度的平衡上取得了很好的结果。

相关推荐
喵~来学编程啦19 分钟前
【论文精读】LPT: Long-tailed prompt tuning for image classification
人工智能·深度学习·机器学习·计算机视觉·论文笔记
深圳市青牛科技实业有限公司32 分钟前
【青牛科技】应用方案|D2587A高压大电流DC-DC
人工智能·科技·单片机·嵌入式硬件·机器人·安防监控
水豚AI课代表1 小时前
分析报告、调研报告、工作方案等的提示词
大数据·人工智能·学习·chatgpt·aigc
几两春秋梦_1 小时前
符号回归概念
人工智能·数据挖掘·回归
用户691581141652 小时前
Ascend Extension for PyTorch的源码解析
人工智能
用户691581141652 小时前
Ascend C的编程模型
人工智能
-Nemophilist-2 小时前
机器学习与深度学习-1-线性回归从零开始实现
深度学习·机器学习·线性回归
成富3 小时前
文本转SQL(Text-to-SQL),场景介绍与 Spring AI 实现
数据库·人工智能·sql·spring·oracle
CSDN云计算3 小时前
如何以开源加速AI企业落地,红帽带来新解法
人工智能·开源·openshift·红帽·instructlab
艾派森3 小时前
大数据分析案例-基于随机森林算法的智能手机价格预测模型
人工智能·python·随机森林·机器学习·数据挖掘