热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【学习笔记】三种POINT_BASED的二维目标检测方法的差异和发展

本文简要介绍了CornerNet,ExtremeNet,CenterNet三种POINT_BASED的二维目标检测方法的差异和发展

1 CornerNet

paper,code
利用卷积网络,对所有的左上角点生成一幅热力图,对所有右下角点生成一幅热力图,并且对所有检测到的角点生成一个嵌入式向量。训练网络将属于同一目标的角点预测成相同的嵌入式向量。
【学习笔记】三种POINT_BASED的二维目标检测方法的差异和发展
该网络通过串联多个hourglass module组成,每个hourglass module都是先通过一系列的降采样操作缩小输入的大小,然后通过上采样恢复到输入图像大小。
两个输出分支模块分别表示左上角点预测分支和右下角点预测分支,每个分支模块包含一个corner pooling层和3个输出:heatmaps、embeddings和offsets。
heatmaps是输出预测角点信息,可以用维度为CHW的特征图表示,其中C表示目标的类别,每个点的预测值为0到1,表示该点是角点的分数;embeddings用来找到属于同一个目标的左上角角点和右下角角点,通过判断两个embedding vector的相似性确定同一物体,距离小于某一阈值则划为同一目标;offsets用来对预测框做微调,表示ground true与anchor的偏移。
【学习笔记】三种POINT_BASED的二维目标检测方法的差异和发展

2 ExtremeNet

paper,code
提出检测物体的“最左”、“最右”、“最上”和“最下”四个点,这四个点在图像特征上,更有意义,网络更好学。
通过关键点检测网络检测出四个极值点和1个中心点,通过几何关系对提取到的关键点进行分组,一组5个极值点对应一个检测结果。

2.1 关键点检测
使用fully convolutional encoder-decoder network预测一个多通道heatmap,每个通道都对应一个类别的关键点。使用HourglassNetwork作为backbone,对每张heatmap进行加权逐点逻辑回归,加权目的是减少ground truth周围的虚警惩罚。

2.2 关键点分组

  1. 提取极值点。提取heatmap中所有的极值点,极值点定义为在3x3滑动窗口中的极大值。
  2. 暴力枚举。对于每一种极值点组合计算它们的中心点,如果center map对应位置上的响应超过预设阈值,则将这一组5个点作为一个备选,该备选组合的分数为5个对应点的分数平均值。
    【学习笔记】三种POINT_BASED的二维目标检测方法的差异和发展

3 CenterNet

paper,code
用一组角点及中心点表示每个目标物,在CornerNet的基础上增加了一个用于预测中心关键点的heatmap,同时,预测中心关键点的偏移,然后基于CornerNet提出的方法选择前k个候选框。
为了更好的检测中心的关键点即角点,提出了两个方法:

  1. center pooling:用于预测中心关键点的分支,有利于获得更多目标物的中心区域,进而更易感知proposal的中心区域。通过取中心位置横向与纵向响应值的和的最大值实现此方法。
  2. cascade corner pooling:增加原始的corner pooling感知内部信息的功能。结合了feature map中目标物内部及边界方向的响应值和的最大值来预测角点。
    【学习笔记】三种POINT_BASED的二维目标检测方法的差异和发展


推荐阅读
  • 开发笔记:共享单车数据分析
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了共享单车数据分析相关的知识,希望对你有一定的参考价值。共享单车数据分析和共享单车用户行为分析PPT从数据分 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • MPLS VP恩 后门链路shamlink实验及配置步骤
    本文介绍了MPLS VP恩 后门链路shamlink的实验步骤及配置过程,包括拓扑、CE1、PE1、P1、P2、PE2和CE2的配置。详细讲解了shamlink实验的目的和操作步骤,帮助读者理解和实践该技术。 ... [详细]
  • 重入锁(ReentrantLock)学习及实现原理
    本文介绍了重入锁(ReentrantLock)的学习及实现原理。在学习synchronized的基础上,重入锁提供了更多的灵活性和功能。文章详细介绍了重入锁的特性、使用方法和实现原理,并提供了类图和测试代码供读者参考。重入锁支持重入和公平与非公平两种实现方式,通过对比和分析,读者可以更好地理解和应用重入锁。 ... [详细]
  • 本文介绍了Java集合库的使用方法,包括如何方便地重复使用集合以及下溯造型的应用。通过使用集合库,可以方便地取用各种集合,并将其插入到自己的程序中。为了使集合能够重复使用,Java提供了一种通用类型,即Object类型。通过添加指向集合的对象句柄,可以实现对集合的重复使用。然而,由于集合只能容纳Object类型,当向集合中添加对象句柄时,会丢失其身份或标识信息。为了恢复其本来面貌,可以使用下溯造型。本文还介绍了Java 1.2集合库的特点和优势。 ... [详细]
  • linux进阶50——无锁CAS
    1.概念比较并交换(compareandswap,CAS),是原⼦操作的⼀种,可⽤于在多线程编程中实现不被打断的数据交换操作࿰ ... [详细]
  • 本文介绍了一种求解最小权匹配问题的方法,使用了拆点和KM算法。通过将机器拆成多个点,表示加工的顺序,然后使用KM算法求解最小权匹配,得到最优解。文章给出了具体的代码实现,并提供了一篇题解作为参考。 ... [详细]
  • 1Lock与ReadWriteLock1.1LockpublicinterfaceLock{voidlock();voidlockInterruptibl ... [详细]
  • 本文介绍了如何使用MATLAB调用摄像头进行人脸检测和识别。首先需要安装扩展工具,并下载安装OS Generic Video Interface。然后使用MATLAB的机器视觉工具箱中的VJ算法进行人脸检测,可以直接调用CascadeObjectDetector函数进行检测。同时还介绍了如何调用摄像头进行人脸识别,并对每一帧图像进行识别。最后,给出了一些相关的参考资料和实例。 ... [详细]
  • 本文介绍了利用ARMA模型对平稳非白噪声序列进行建模的步骤及代码实现。首先对观察值序列进行样本自相关系数和样本偏自相关系数的计算,然后根据这些系数的性质选择适当的ARMA模型进行拟合,并估计模型中的位置参数。接着进行模型的有效性检验,如果不通过则重新选择模型再拟合,如果通过则进行模型优化。最后利用拟合模型预测序列的未来走势。文章还介绍了绘制时序图、平稳性检验、白噪声检验、确定ARMA阶数和预测未来走势的代码实现。 ... [详细]
  • Grafana 9 正式发布
    grafa ... [详细]
  • 注意力汇聚:NadarayaWatson 核回归
    Nadaraya-Watson核回归是具有注意力机制的机器学习范例。Nadaraya-Watson核回归的注意力汇聚是对训练数据中输出的加权平均。从注意力的角度来看, ... [详细]
  • seaborn箱线图_Seaborn线图的数据可视化
    seaborn箱线图Hello,folks!Inthisarticle,wewillbetakingtheSeaborntutorialaheadandunderstandingt ... [详细]
  • 循环发电厂电能输出预测
    前言本次项目是就某联合循环发电厂的数据,运用线性回归模型进行预测电能输出,若文中出现错误的地方,还望指正,谢谢!目录1.数据来源及背景2.数据探索分析3.相关分析4.回 ... [详细]
  • Python交叉分析学习笔记
    Python交叉分析学习笔记本文将介绍两种方法来进行交叉分析:1.独立T检验2.数据透视表。数据源:百度网盘,课程来源:慕课网数据源共包括10个变量,如下:satisfaction ... [详细]
author-avatar
jinnee5921_866
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有