[神经网络]Anchor_Free网络(YoloX,CenterNet)

这篇具有很好参考价值的文章主要介绍了[神经网络]Anchor_Free网络(YoloX,CenterNet)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        Anchor_Free网络不同于传统的目标检测网络需要先生成很多先验框再从中筛选+回归生成预测框。其可以直接从目标的中心点向周围发散一个预测框。这样做有两个好处:①省略了生成大量先验框的过程,可以一定程度增加预测速度;②预测框没有预设长宽比,对于长宽比异常的目标识别精度更有精度。

[神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习                ​​​​​​​        ​​​​​​​    [神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习

        从上面的图可以很清楚的看出Anchor_Free(左)和Anchor_Base(右)在处理预测框上的区别。

一、CenterNet

        CenterNet是一种经典的Anchor_Free网络,其网络结构如下图所示:可以分为骨干网络高分辨率特征图生成网络分类头

[神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习

         1.骨干网络

        骨干网络一般为ResNet50或Hourglass Net。这里以ResNet50为例,512x512的图像经过特征提取会得到一个16x16x2048的特征图。并不像Yolo一样需要抽取多个不同尺寸的特征。

        2.高分辨率特征图生成网络

        即网络结构图中的三个ConvTranspose(反卷积)模块,对于特征图(16x16x2048)而言,三次反卷积会最终生成一个128x128x64的特征图(每次反卷积特征的高宽会放大2倍),使用这个特征图网络即可通过Center Head预测出最终结果。

        3.Center Head

        Center Head将128x128x64的特征图划分为128个区域,每个区域中存在一个特征点。当物体的中心落入某个区域时,该区域的特征点(通常是区域左上角的点)会作为基点来确定物体。

        Center Head会利用特征图进行三个卷积,分别进行热力图预测中心点预测宽高预测

        ①热力图预测:用来判断每一个热力点(特征点)是否存在物体,以及物体的种类,其通道数为num_classes(种类数),输出结果为(128x128x num_classes)

                num_classes通道为每个种类的概率,经过激活函数即可判断最有可能的类型

        ②中心点预测:用来判断中心点到热力点的偏移情况,通道数为2,输出结果为(128x128x2)

                2维通道代表中心点相对于特征点右下角的偏移情况

        ③宽高预测:用来预测每个物体的宽高情况,通道数为2,输出结果为(128x128x2)

                2维通道代表物体预测框的宽和高

        CenterNet同样需要非极大抑制操作来确保同一类型的预测框不会过多叠加,但是不同的是其需要在生成预测框之前,在热力图预测结果上进行非极大抑制

二、YoloX

        Yolo系列向来都是经典的Anchor_Base网络,而YoloX通过对预测头(Yolo Head)的修改是的其能在不适用先验框的情况下生成预测框。

        YoloX的大体结构和传统的Yolo差别不大,也使用Darknet作为骨干网络,最大的修改来自与Yolo Head,网络结构图下图,依旧能分为骨干网络、FPN加强特征提取网络、Yolo Head预测头

[神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习

         1.骨干网络

        为改进的CSPDarknet,这个网络会输出三个不同尺寸的特征图,称为有效特征层。由上面的网络图可以看出,CSPDarknet主要由两种模块构成:Conv2D_BN_SiLU和CSPLayer,同时在输入的时候使用了Focus结构,最后一层使用了SPP提高网络的感受野。

        Conv2D_BN_SiLU实际上就是一个残差网络模块,知识其激活函数从ReLu换成了SiLU,SiLU具备无上界有下界、平滑、非单调的特性。SiLU在深层模型上的效果优于 ReLU。可以看做是平滑的ReLU激活函数,其公式可以写作:。

        CSPLayer类似于ShuffleNet中的Channel Split操作,该模块将输入特征拆分为左右两个部分,左边直接连接到输出,右边则正常进行残差运算。结构如下图所示:

[神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习

         Focus结构不难理解,其在图片中每隔一个像素点获取一个值。每获取四个值时便将这四个值进行堆叠生成一个特征层,相当于将原来的3通道变为了12通道,操作图如下图所示:

[神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习

         SPP结构通过不同池化核大小的最大池化进行特征提取,以提高网络的感受野,在YoloV4中该结构被用在FPN中,而YoloX中则将其用在了骨干网络上。

        2.FPN网络

        同样是对骨干网络输出的三个特征进行上采样融合和下采样融合,结构如图,主要的特点是采用了CSPLayer替代传统卷积,在这里就不再赘述,可以参考之前YoloV7的文章。

[神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习

[神经网络]YoloV7https://blog.csdn.net/weixin_37878740/article/details/131590277?spm=1001.2014.3001.5501

        3.Yolo Head

        这是YoloX最大的不同点,以前的Yolo网络的所有解耦头都是连载一起的(即分类和回归由一个1x1卷积实现),而YoloX将其进行了拆分,到最终预测的时候再整合起来。

[神经网络]Anchor_Free网络(YoloX,CenterNet),神经网络,学习笔记,神经网络,人工智能,深度学习

         从上图可见,此分类头一共三个输出Cls用来判断每个特征点包含的物体种类(num_classes个通道),Reg为回归参数(4个通道),用来调整预测框,Obj用来判断特征点是否含有物体(1个通道)。文章来源地址https://www.toymoban.com/news/detail-542473.html

到了这里,关于[神经网络]Anchor_Free网络(YoloX,CenterNet)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 神经网络基础-神经网络补充概念-17-计算神经网络的输出

    计算神经网络的输出通常涉及前向传播(Forward Propagation)的过程,其中输入数据通过网络的层级结构,逐步被传递并变换,最终生成预测结果。下面我将为你展示一个简单的神经网络前向传播的示例。 假设我们有一个具有以下参数的简单神经网络: 输入层:2个神经元 隐藏

    2024年02月12日
    浏览(42)
  • 神经网络与卷积神经网络

    全连接神经网络是一种深度学习模型,也被称为多层感知机(MLP)。它由多个神经元组成的层级结构,每个神经元都与前一层的所有神经元相连,它们之间的连接权重是可训练的。每个神经元都计算输入的加权和,并通过一个非线性激活函数进行转换,然后将结果传递到下一

    2024年02月10日
    浏览(49)
  • 神经网络实验--卷积神经网络

    本实验主要为了掌握深度学习的基本原理;能够使用TensorFlow实现卷积神经网络,完成图像识别任务。 文章目录 1. 实验目的 2. 实验内容 3. 实验过程 题目一: 题目二: 实验小结讨论题 ①掌握深度学习的基本原理; ②能够使用TensorFlow实现卷积神经网络,完成图像识别任务。

    2024年02月06日
    浏览(55)
  • 神经网络基础-神经网络补充概念-40-神经网络权重的初始化

    神经网络权重的初始化是深度学习中的重要步骤,良好的权重初始化可以加速模型的训练收敛,提高模型的性能和稳定性。以下是一些常用的权重初始化方法: 零初始化(Zero Initialization):将权重初始化为零。然而,这种方法不太适合深层神经网络,因为它会导致所有神经

    2024年02月12日
    浏览(51)
  • 【神经网络】循环神经网络RNN和长短期记忆神经网络LSTM

    欢迎访问Blog总目录! 一文看尽RNN(循环神经网络) - 知乎 (zhihu.com) 一文搞懂RNN(循环神经网络)基础篇 - 知乎 (zhihu.com) 循环神经网络(Recurrent Neural Network, RNN)是一类以 序列 (sequence)数据为输入,在序列的演进方向进行 递归 (recursion)且所有节点(循环单元)按链式连

    2024年04月10日
    浏览(48)
  • 卷积神经网络与前馈神经网络

    常见的人工神经网络结构 人工神经网络是一类由人工神经元组成的网络,常见的神经网络结构包括: 前馈神经网络(Feedforward Neural Network,FNN):最简单的神经网络结构,由一个输入层、一个输出层和若干个隐藏层组成,信号只能从输入层流向输出层,不允许在网络中形成回

    2023年04月26日
    浏览(44)
  • 神经网络 04(神经网络的搭建)

    tf.Keras 中构建模有两种方式,一种是通过  Sequential  构建,一种是通过  Model  类构建。前者是按 一定的顺序对层进行堆叠 ,而后者可以用来 构建较复杂的网络模型 。首先我们介绍下用来构建网络的全连接层: units: 当前层中包含的神经元个数 Activation: 激活函数,relu,sig

    2024年02月09日
    浏览(30)
  • 神经网络基础-神经网络补充概念-53-将batch norm拟合进神经网络

    梯度消失问题的缓解:在深度神经网络中,梯度消失是一个常见的问题,特别是在深层网络中。批归一化通过在每个批次内对输入进行标准化,使得激活函数的输入分布更稳定,从而减轻了梯度消失问题,使得梯度更容易传播,促进了训练过程的稳定性和效率。 加速收敛:由

    2024年02月12日
    浏览(30)
  • 《神经网络入门》神经网络的思想 (一)

    我们知道神经网络是一个模拟人脑的数学建模,首先我们来了解一下生物神经元是怎么工作的。 人的大脑是由非常多神经元相互连接形成的网络构成的。一个神经元,可以从其他神经元接收信号,也可以向其他神经元发送信号。 神经元由细胞体、树突、轴突三个主要部分构

    2024年04月09日
    浏览(53)
  • 神经网络基础-神经网络补充概念-61-单层卷积网络

    单层卷积网络是一种简单的神经网络结构,它仅包含一个卷积层,通常紧跟着一个激活函数以及可能的池化层和全连接层。这种结构可以用来提取输入数据的特征,适用于一些简单的任务。

    2024年02月12日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包