YOLOv8模型改进 第三讲 添加多核感知网络PKINet

        遥感图像(RSIs)中的目标检测面临着一系列日益严峻的挑战,主要包括目标尺度的显著变化和背景的多样性。以往的方法通常通过增大骨干网络的空间感受野来应对这些问题,具体方法包括使用大卷积核或膨胀卷积。然而,使用大卷积核时,通常会引入大量的背景噪声,而膨胀卷积则可能导致特征表示过于稀疏。为了解决这些问题,本文提出了一种多核感知网络(PKINet)。PKINet采用无膨胀的多尺度卷积核来提取不同尺度的目标特征,并有效捕捉局部背景信息。同时,文中并行引入了上下文锚点注意力(CAA)模块,以捕捉长距离的上下文信息。这两个组件的结合显著提升了PKINet在四个具有挑战性的遥感检测基准数据集上的性能,包括DOTA-v1.0、DOTA-v1.5、HRSC2016和DIOR-R。

1.PKINet的网络结构

PKINet的设计旨在有效处理遥感图像中的目标检测任务,尤其是针对目标尺度变化大和背景复杂的情况。其网络结构主要由以下几个核心组件构成:

1. Stem层

        Stem层负责对输入图像进行初步特征提取,生成初步的特征。

2. PKI模块(Poly Kernel Inception Module)

        多尺度卷积:PKI模块使用不同大小的卷积核(如3x3、5x5、7x7和11x11)进行特征提取。这样可以捕捉到不同尺度的目标特征,增强对各种目标的识别能力。

        无膨胀卷积:采用普通卷积而非膨胀卷积,避免引入过多背景噪声,保持特征表示的密集性。

        深度可分离卷积:使用深度可分离卷积来减少计算复杂度和参数量,通过空间卷积和逐点卷积相结合,提升特征提取的效率。

3. CAA模块(Context Anchor Attention Module)

        上下文信息捕捉:CAA模块通过全局平均池化操作提取图像的全局上下文特征,并生成注意力权重。

        特征加权:这些权重随后与输入特征图相乘,动态调整特征的响应,增强重要特征的表达能力,抑制不重要的背景信息。

        并行引入:CAA模块与PKI模块并行使用,能够有效结合局部特征与长距离上下文信息,从而提升目标检测的性能。

4. 残差结构

        PKINet在PKI模块和CAA模块之间使用残差连接,确保信息的有效流动。这种连接可以减轻深层网络中的梯度消失问题,提高训练效率。

2. 添加多核感知网络PKINet

 由于PKINet是一个backbone,因此本研究只使用PKI模块对YOLOv8做改进。本次改进主要有两种,一是直接使用stage I替换CF2,另一个是将CF2和PKI Block相结合变成C2f_PKIBlock替换原来的CF2模块。

 接下来,我们将详细介绍如何将PKI集成到 YOLOv8 模型中。

这是我的GitHub代码:tgf123/YOLOv8_improve (github.com)

这是改进讲解:YOLOv8模型改进 第三讲 添加多核感知网络PKINet以及CAA模块_哔哩哔哩_bilibili 

2.1  如何添加

        1. 首先,在我上传的代码中yolov8_improve中找到PKInet.py代码部分,它包含两个部分一个是PKInet.py的核心代码,一个是yolov8模型的配置文件。 

        2. 然后我们在modules文件夹下面创建PKInet.py文件,然后将PKInet的核心代码放入其中

 

         3. 然后在 task.py文件中导入

from ultralytics.nn.modules.PKInet import C2f_PKIBlock,PKIStage

        4.  然后将 C2f_PKIBlock和PKIStage添加到下面当中

        5. 然后将 C2f_PKIBlock和PKIStage添加到下面当中

        6. 然后将配置文件复制到文件夹中训练模型,你可以选择两个模块,一个C2f_PKIBlock,一个是PKIStage,可以使用着两个模块来替换原cf2模块。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值