基于改进YOLOv7-ByteTrack 的鸵鸟多目标跟踪研究

作者: 卢海涛 伍鹏

基于改进YOLOv7-ByteTrack 的鸵鸟多目标跟踪研究0

摘要:鸵鸟养殖作为现代畜牧业的重要组成部分,全球的养殖规模正逐年以15%左右的速度增长。鸵鸟多目标跟踪技术在提升养殖管理效率和精准度方面具有重要作用。然而,目前针对鸵鸟的多目标跟踪算法在目标检测精度和跟踪稳定性上仍存在不足,尤其是在处理小目标和高密度目标场景时容易出现漏检与跟踪丢失问题。为解决上述问题,文章提出了一种基于YOLOv7与ByteTrack的多目标跟踪算法。该算法在YOLOv7主干网络中引入注意力机制EMCA,显著提升了对小目标的感知能力;在ByteTrack算法中,帧内关系模块结合匈牙利算法实现高效目标关联,减少漏检和身份切换的几率。实验结果表明,该算法相较于原始YOLOv7在处理速度上提升了7.9%,跟踪准确性(MOTA) 在多个关键指标上均有显著提升:相较于DeepSORT和DeepMOT分别提高了13.3%和10%。此外,ByteTrack算法在避免跟踪丢失方面表现尤为突出。该研究为现代化鸵鸟养殖提供了高效可靠的多目标跟踪技术支持,具有重要的实际应用价值,为推动智能化畜牧业发展提供了参考。

关键词:畜牧业;鸵鸟养殖;计算机视觉;目标检测与跟踪;YOLOv7;ByteTrack

中图分类号:TP312 文献标识码:A

文章编号:1009-3044(2025)01-0005-07 开放科学(资源服务) 标识码(OSID) :

0 引言

畜禽业是农业农村经济的重要支柱产业之一,在中国国民经济中占据重要地位。然而,目前我国畜禽养殖业面临着规模大而不强、多而不优的问题[1]。为提高畜禽养殖的效益和质量,需要引入先进的技术手段。鸵鸟的多目标跟踪技术对于后续鸵鸟的生态学和行为研究,以及在农业和养殖业中有效管理它们具有重要意义。

目前,国内外动物行为研究最为准确的方式仍然是通过传感技术来直接检测动物的体征,但传感技术需要对动物佩戴电子设备[2-3],不仅投资价格高昂,而且容易引起动物的应激反应。

近年来,计算机视觉技术的快速发展为畜禽养殖业带来了新的机遇[4]。SORT目标跟踪框架[5]首次将卡尔曼滤波[6]与匈牙利算法[7]引入目标跟踪领域,开启了目标追踪的新篇章。匈牙利算法用于处理上下两张图片中目标的关联性,而预测下一张图片目标的位置则使用卡尔曼滤波。SORT使用低精度模型完成了目标的匹配,但未对目标的外部特征进行提取,影响了跟踪的稳定性。2017 年提出的DeepSORT 模型[8]在SORT框架下进行了改进,加入了目标外观特征的考虑,降低了遮挡目标身份频繁发生跳变的问题,从而在多目标跟踪任务中取得了显著的性能提升。Sun 等[9] 提出DeepMOT(Deep Affinity Network for MultipleObject Tracking) 模型,通过跨帧匹配方式解决了数据集样本数量不足的问题,并考虑了多尺度多感受野信息,亲和度估计阶段集成了特征相似度计算和数据关联过程,考虑了实际过程中的FP和FN情况。该框架为多目标跟踪领域提供了重要启示,为后续研究提供了理论基础和实践参考。

在鸵鸟养殖跟踪中,如果养殖密度过大,鸵鸟间的遮挡严重将无法正常实时跟踪每一只鸵鸟。为避免追踪过程的丢失,使用改进的YOLOv7[10]模型可以在实时视频中更加准确地检测和定位鸵鸟,并利用改进的ByteTrack[11]算法对每一个目标进行跟踪,不会因为目标暂时的遮挡而抛弃这一追踪目标,从而实现对鸵鸟个体的行为追踪。通过将计算机视觉技术与畜禽养殖相结合,可以实现对鸵鸟行为的自动监测和识别,提供实时的健康状况评估,这将有助于畜禽养殖业的智能化发展,提高养殖效率、产品质量和动物福利,进一步推动畜禽业的可持续发展。

1 本文算法

本文结合改进的YOLOv7和ByteTrack算法,提出了一种新的整体框架,如图1所示,包含数据预处理、改进的YOLOv7目标检测和ByteTrack目标追踪三个部分:1) 通过MixUp[12]扩充数据集,用以提升模型的泛化能力和对抗样本;2) 优化YOLOv7模型,添加EMCA[13]注意力机制模块,提高对小目标检测的精度;3) 在颈部特征提取网络中引入PSAM[14]消除冗余信息,增强模型在复杂环境中的特征获取能力;4) 引入ByteTrack算法进行目标追踪,大大减少目标丢失概率。

1.1 数据预处理

将采集的视频切分后进行筛选,去除错误图片,使用MixUp对数据进行增强。基于MixUp的虚拟样本的构建如公式(1) 和公式(2) :

式中:λϵ [0,1],是从beta分布中随机采样的数,而(xi,yi )和(xj,yj )是同一批数据中随机的两个图片对应的标签。MixUp不仅要对样本进行线性插值,也需要对标签进行线性插值,否则会出现样本和标签不匹配的问题,影响后续数据的训练。

MixUp会鼓励模型对训练样本形成线性理解,这意味着对样本的判断不会过于绝对,从而可以减少过拟合,使模型最终形成的决策边界更加平滑。模型在面对不确定性时不会呈现非黑即白的判断。由于构建了模型对样本的线性理解,这使得模型更容易从噪声样本中学习到这种线性特征。对样本的线性理解会扩展模型的认知范围,因为模型需要理解样本线性所带来的细微差别。较大的认知范围使模型有潜力对训练集样本分布范围外的样本做出判断,进一步提升模型的泛化能力。

1.2 YOLOv7目标检测部分

1.2.1 YOLOv7模型

改进的YOLOv7 模型如图2所示,由输入模块、主干网络以及头部网络三个主要模块组成。输入模块的作用是对图像进行预处理,并将其传递给主干网络进行后续处理。主干网络由CBS 卷积层、E-ELAN卷积层、MPConv卷积层和EMCA注意力模块组成[15]。E-ELAN是一种优化的层级聚合结构,通过保留原始梯度路径,增强了模型的学习效率。EMCA卷积层利用多尺度聚合来创建全局感知,从而提高模型的特征提取能力。MP-Conv卷积层在标准CBS层基础上加入了Maxpool操作,形成上下双分支结构。通过最后的特征融合(Concat) ,上下分支提取的特征得以整合。

特殊的SPP结构如图3所示,通过最大池化获得不同的感受野,使算法适应不同分辨率的图像。其中,CSP模块将特征分为两部分,一部分进行常规处理,另一部分进行SPP结构处理,然后将两部分进行合并,这样可以减少一半的计算时间。紧接着用PSAM金字塔空间注意力模块来细化底层特征,它减轻了背景噪声的阻碍,突出了前景信息,产生了更易区分的边缘锐利的特征表示。最后通过REPcon结构调整不同尺度的特征。

1.2.2 EMCA 注意力模块

通常注意力模块被设计为调整注意力的权重,来优化对学习特征的关注,以抑制干扰信号。EMCA是一种基于通道注意力的新型特征重新校准模块,它使用全局信息来强调信息特征并选择性地抑制不太有用的特征,从而提高了网络所产生的特征质量。与常规的注意力机制不同,多尺度注意力块从所有先前的注意力块获得额外的输入,它将其细化的特征映射传递到所有后续块,通过利用多尺度聚合来创建全局感知。

本文使用来自较早层的较大尺度,这些尺度可以捕获细粒度信息,有助于精确定位,同时关注来自最后层的特征,这些特征可以编码抽象语义信息。在目标识别和分割任务中尤为明显,特别是在处理复杂的场景或遮挡时,能够更准确地保留关键特征。这不仅能够精确定位目标,还能有效适应目标外观的变化,从而提高网络的鲁棒性和泛化能力。

设函数F (x)表示一个CNN块,该块由连续的CNN 层组成,中间穿插着非线性激活。给定任意输入x ∈ RHi × wi × Ci,输出y ∈ RH0 × w0 × C0 由映射函数F生成,其中,Hi、Wi、Ci 是输入x 的高度、宽度和通道尺寸,而H0、W0、C0 为输出y的高度、宽度和通道尺寸。在每个CNN block F 的尾部附加CA模块C,生成有意义的尺度S,代表每个通道的重要性。然后通过将CNN输出y乘以学习到的尺度S来对其进行细化,为下一个 CNN块生成一个细化的输入x。将这种集成机制称为密集集成,即CA模块在每个CNN块后插入网络,可以用公式(3) 表示:

根据上述公式,CA模块的输出依赖于所有先前层的输出,增加了梯度路径的长度。增加梯度路径会使反向传播过程变得更加复杂。此外,在任意精细化CNN输出xk 的反向传播过程中,所有前面的CNN 块Fk - 1、Fk - 2,...,F(1) 的梯度都被考虑在内,如公式(4) 所示,表示CNN权重的更新步骤如下:

不同于现有CA模块强调内部设计而忽视对最佳集成方法的研究,EMCA 是一种更加高效的集成机制。公式(1) 为密集积分,公式(4) 将导致在更新CA模块权重时使用大量重复的梯度。因此,新的整合机制的构架如图4所示。为避免在更新CA模块时使用重复的梯度,仅将其整合到最后的CNN模块中,而不是将其整合到每一个CNN块中。该机构的前馈传递方程和权重更新公式如公式(5) 、(6) 所示:

从上式可以看出,细化后的输出xk 只依赖于相关CA模块Ck - 1,而不是依赖于之前的整个CA模块,如公式(3) 所示。与之相反,EMCA模块(如图4所示) 利用了当前CNN块输出的一个覆盖区域,用来界定当前图3 SPPCSPC 模块CNN块旁边将有多少个先前的多尺度CNN块的输出会被与当前CNN块合并。为了合并先前的多尺度特征,提出了多尺度聚合块(Multiscale AggregationBlock, MAB) 。此外,为了控制将合并多少个先前的多尺度特征,引入了覆盖区域(R) 。

CNN块旁边将有多少个先前的多尺度CNN块的输出会被与当前CNN块合并。为了合并先前的多尺度特征,提出了多尺度聚合块(Multiscale AggregationBlock, MAB) 。此外,为了控制将合并多少个先前的多尺度特征,引入了覆盖区域(R) 。

1) 通过引入覆盖区域,将当前CNN块的输出与多尺度CNN块的特征进行融合,全面利用全局和局部信息,弥补传统注意力模块只关注局部特征的不足。

2) 设计多尺度聚合块(MAB) ,通过空间和通道维度的对齐操作,有效整合来自不同尺度的特征信息,提升特征表达能力。

3) 在实现特征重新校准的同时,避免了传统密集集成带来的冗余计算,优化了模型的计算效率,适合高效实时目标检测和跟踪任务。

1.2.3 金字塔空间注意力模块(PSAM)

在整个YOLOv7的头部网络head部分,采用了金字塔空间注意力模块(PSAM) ,以消除低层特征中的冗余信息,抑制背景干扰。鸵鸟大多群居聚集在一起,导致目标特征的背景过于复杂。为了缓解这个问题,一种常用的方法是连续下采样特征图,使其规模接近卷积感受野的规模。在图2中,该模块首先使用堆叠金字塔结构逐步将输入从较深细化到较浅。随着来自更深层的语义信息的参与,较浅层的冗余特征被抑制。这个过程的公式如下:

式中:F si ,ⅈ = 1,2,3是第i 层的精细化特征图。然后对它们应用空间注意力机制[16]。生成的空间注意图也由深到浅进行级联,使其更具代表性。最后将每一层生成的注意图与相对应的编码器特征相乘,得到精细化的特征图:

式中:conv_7表示用7×7内核进行卷积运算,后面跟着一个BN和一个ReLU。Sa表示空间注意力模块,这是通过连接全局平均池化和全局最大池化的输出,然后经过7×7卷积和Sigmoid层来实现的。

然而,这种方法仍然存在以下局限性:1) 可能导致大规模显著对象或大尺寸输入图像的特征不一致,其中在最深处获得的特征仍保持局部性质,无法覆盖完整的显著对象。2) 连续下采样可能会严重且不可逆地破坏小尺度显著对象的信息,增加了检测此类对象的难度。

为解决这些问题,笔者采用了Transformer指导的双流策略。Transformer引导的双流编码器通过利用长程相关性,既能保留小尺度显著对象的有用信息,又能保持大尺度显著对象的特征一致性。

上一篇 点击页面呼出菜单 下一篇