卷积神经网络中的图像特征——以YOLOv5为例进行可视化

一、图像特征

1. 图像低层特征
  • 图像低层特征指的是:边缘、颜色和纹理等特征。
  • 低层特征的分辨率较高,包含较多的位置、细节信息,但其包含的语义信息较少,噪声较多。
  • 原始图像和浅层卷积网络输出的特征图属于低层特征,从低层特征图中可以看清轮廓、边缘等信息。
2. 图像高层特征
  • 图像的高层语义特征是指人所能理解的东西,比如沙发、狗、瓶子等。
  • 高层特征包含较多的语义信息,但其分辨率较低,对位置和细节的感知能力也较差。
  • 经过深层的卷积网络,可以有效归纳出语义信息,就是类似某个区域就是什么东西,并不需要显示具体的纹理信息。
3. 示例
  • 下面以YOLOv5网络为例,可视化展示了原始图像经过每一层网络后的输出特征图(共23层,逐层可视化),YOLOv5的网络结构如下:在这里插入图片描述
  • 原始输入图像
    在这里插入图片描述
    - Conv输出的的特征图(第0层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第1层的输出)
    在这里插入图片描述
    - C3输出的特征图(第2层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第3层的输出)
    在这里插入图片描述
    - C3后的特征图(第4层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第5层的输出)
    在这里插入图片描述
    - C3输出的特征图(第6层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第7层的输出)
    在这里插入图片描述
    - C3输出的特征图(第8层的输出)
    在这里插入图片描述
    - SPPF输出的特征图(第9层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第10层的输出)
    在这里插入图片描述
    - Upsample输出的特征图(第11层的输出)
    在这里插入图片描述
    - Concat输出的特征图(第12层的输出)
    在这里插入图片描述
    - C3输出的特征图(第13层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第14层的输出)
    在这里插入图片描述
    - Upsample输出的特征图(第15层的输出)
    在这里插入图片描述
    - Concat输出的特征图(第16层的输出)
    在这里插入图片描述
    - C3输出的特征图(第17层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第18层的输出)
    在这里插入图片描述
    - Concat输出的特征图(第19层的输出)
    在这里插入图片描述
    - C3输出的特征图(第20层的输出)
    在这里插入图片描述
    - Conv输出的特征图(第21层的输出)
    在这里插入图片描述
    - Concat输出的特征图(第22层的输出)
    在这里插入图片描述
    - C3输出的特征图(第23层的输出)
    在这里插入图片描述

二、特征融合

1. 多尺度特征融合
  • 低层网络的感受野比较小,几何信息表征能力强,虽然分辨率高,但是语义信息表征能力弱。
  • 高层网络的感受野比较大,可以理解为CNN从更加全局的角度对图像做特征提取,因此产生更加高层次的语义信息,语义信息表征能力强,但是特征图的分辨率低,几何信息的表征能力弱(空间几何特征细节缺乏)。
  • 低层网络的几何信息高层网络的语义信息相融合,是提高检测和分割性能的重要手段。
2. FPN
  • FPN(特征图金字塔网络),主要解决的是物体检测中的多尺度问题,通过简单的网络连接改变,在基本不增加原有模型计算量的情况下,大幅度提升了小物体检测的性能。

  • 算法大致结构如下:一个自底向上的线路,一个自顶向下的线路,横向连接。
    在这里插入图片描述

  • 自底向上:
    自底向上的过程就是神经网络的前向传播过程,特征图经过卷积核计算,尺寸会越变越小。

  • 自上而下:
    自上而下的过程是把更抽象、语义更强的高层特征图进行上采样。

  • 横向连接:
    横向连接则是将上采样的结果和自底向上生成的相同大小的特征图进行融合,横向连接的两层特征在空间尺寸相同,这样做可以利用低层定位细节信息。

参考文章

关于encoder-decoder网络 - 特征融合

深度特征融合—高低层(多尺度)特征融合

对图像中语义信息、高层和底层特征的理解

CNN中的底层、高层特征、上下文信息、多尺度

多尺度特征融合

FPN(特征金字塔)结构笔记

猜你喜欢

转载自blog.csdn.net/python_plus/article/details/129043914