2.2.算法改进
在表面缺陷检测中测试,现有的Yolov8的目标检测与目标分割对小目标的处理并不理想,但引入BIFPN层之后,算法在小目标检测方面有了很大的提升。
BIFPN是Google Brain《EfficientDet: Scalable and Efficient Object Detection》提出。BIFPN原理介绍:BIFPN是一种特征金字塔网络,它能够自适应地融合不同尺度的特征并进行上下文信息的传递。通过使用BIFPN,可以提高Yolov8对小目标的检测精度。
特征金字塔网络(FPN)特征金字塔网络是一种常用的目标检测算法中的模块,它通过自上而下和自下而上的方式融合来自不同层级的特征。这种设计可以提供多尺度的特征表示,从而使得算法能够在不同大小的目标上进行检测。
双向特征金字塔网络(BiFPN)传统的特征金字塔网络在融合特征时只使用了上采样和下采样的操作,而没有引入跳跃连接。受到残差网络的启发,BiFPN引入了跳跃连接,使特征在不同层级之间可以直接传递。这种设计可以更好地保留高层级和低层级特征的语义信息。
加权双向特征金字塔网络(BIFPN)BIFPN在BiFPN的基础上进行了改进,引入了特征金字塔网络中的特征融合操作。具体而言,BIFPN在每个融合节点处引入了一个权重系数,用于控制特征的融合程度。这种设计可以使得网络能够更灵活地适应不同大小目标的检测需求。
下图表示各类网络模型的结构:( a ) FPN 引入自上而下的路径来融合从 3 级到 7 级(P3 ‑ P7)的多尺度特征;( b ) PANet 在 FPN 之上添加了一个额外的自下而上的路径;( c ) NAS‑FPN 使用神经架构搜索找到不规则的特征网络拓扑,然后重复应用相同的块;( d ) BiFPN 双向跨尺度连接和加权特征融合,具有更好的准确性和效率权衡。