
💡💡💡本文提出EFEN-YOLOv8表面缺陷检测模型,主要创新如下:


AI小怪兽 | 计算机视觉布道者 | 视觉检测领域创新者
深耕计算机视觉与深度学习领域,专注于视觉检测前沿技术的探索与突破。长期致力于YOLO系列算法的结构性创新、性能极限优化与工业级落地实践,旨在打通从学术研究到产业应用的最后一公里。
🚀 核心专长与技术创新
🏆 行业影响力与商业实践
💡 未来方向与使命
秉持 “让每一行代码都有温度” 的技术理念,未来将持续聚焦于实时检测、语义分割及工业缺陷检测的商业化闭环等核心方向。愿与业界同仁协同创新,共同推动技术边界,以坚实的技术能力赋能实体经济与行业变革。

摘要:工业环境中的表面缺陷严重影响着产品的外观、质量及生产效率。尽管深度学习方法展现出良好前景,但现有架构在工业场景中的特征提取能力往往不足。本文提出EFEN-YOLOv8——一种注重高效特征提取以提升检测精度的新型缺陷检测框架。该方法引入了𝛽-FEIoU损失函数,可同时处理缺陷-背景区分与正负样本不平衡问题。其中,浅层注意力卷积模块增强了网络早期层的特征定位能力,而大分离核注意力模块则通过扩大感受野来提升处理效率。此外,加权的多孔空间金字塔池化特征融合模块促进了多尺度特征融合,使模型能捕获更丰富的抽象信息并提升表征能力。全面的实验验证(包括对不同数据划分进行统计显著性检验)表明,本方法性能优于现有方案。相较于基线模型,我们的框架在NEU-DET数据集上实现了7.4%的mAP提升,在GC10-DET数据集上取得了3.3%的性能增强,且在8:2和9:1两种训练-测试配置下均保持稳定的性能表现。这些结果验证了该方法具备强大的泛化能力,并确立了其在工业表面缺陷检测应用中的有效性。
伪代码:
import torch
import torch.nn as nn
class SpatialFeatureCaptureModule(nn.Module):
"""
空间特征捕获模块 (Spatial Feature Capture Module)
目标:增强网络对缺陷局部细节和上下文信息的捕获能力。
设计思路:通过并行的空洞卷积 (Dilated Convolution) 和 深度可分离卷积 (Depthwise Separable Conv)
来提取多感受野的特征,而不显著增加参数量。
"""
def __init__(self, in_channels, out_channels):
super().__init__()
# 分支1: 标准卷积,保留原始特征
self.conv_std = nn.Conv2d(in_channels, out_channels, 1)
# 分支2: 空洞卷积,扩大感受野,捕获更广的上下文
self.conv_dilated = nn.Conv2d(in_channels, out_channels, 3, padding=2, dilation=2)
# 分支3: 深度可分离卷积,高效提取空间细节
self.conv_depthwise = nn.Sequential(
nn.Conv2d(in_channels, in_channels, 3, padding=1, groups=in_channels), # 逐通道卷积
nn.Conv2d(in_channels, out_channels, 1) # 点卷积
)
self.fusion_conv = nn.Conv2d(out_channels*3, out_channels, 1) # 特征融合
self.activation = nn.SiLU() # YOLOv8常用激活函数
def forward(self, x):
x1 = self.conv_std(x)
x2 = self.conv_dilated(x)
x3 = self.conv_depthwise(x)
# 在通道维度拼接多尺度特征
fused = torch.cat([x1, x2, x3], dim=1)
out = self.activation(self.fusion_conv(fused))
return out
class MultiLevelWeightedAttention(nn.Module):
"""
多级加权注意力模块 (Multi-Level Weighted Attention)
目标:自适应地加权不同层级和通道的特征,突出与缺陷相关的关键信息。
设计思路:结合通道注意力 (Channel Attention) 和空间注意力 (Spatial Attention),
并设计一种跨层级的权重传播机制。这符合YOLOv8这类检测网络对不同层级特征重要性进行动态调整的需求[citation:1]。
"""
def __init__(self, channels_list, reduction=16):
"""
:param channels_list: 需要融合的不同层级的通道数列表,例如 [256, 512, 1024]
"""
super().__init__()
self.levels = len(channels_list)
# 为每个层级特征建立独立的通道注意力子模块
self.channel_attentions = nn.ModuleList()
for c in channels_list:
self.channel_attentions.append(
nn.Sequential(
nn.AdaptiveAvgPool2d(1),
nn.Conv2d(c, c // reduction, 1),
nn.SiLU(),
nn.Conv2d(c // reduction, c, 1),
nn.Sigmoid() # 输出0-1的权重
)
)
# 一个轻量的空间注意力模块,处理融合后的特征
self.spatial_attention = nn.Sequential(
nn.Conv2d(sum(channels_list), 1, 7, padding=3), # 使用较大卷积核感知空间关系
nn.Sigmoid()
)
# 最终的特征融合与降维卷积
self.final_conv = nn.Conv2d(sum(channels_list), channels_list[-1], 1)
def forward(self, feature_maps):
"""
:param feature_maps: 列表,包含来自Backbone不同层级的特征图
"""
assert len(feature_maps) == self.levels
weighted_features = []
# 步骤1: 对每个层级的特征施加通道注意力权重
for feat, ca in zip(feature_maps, self.channel_attentions):
channel_weight = ca(feat)
weighted = feat * channel_weight
weighted_features.append(weighted)
# 步骤2: 将所有加权后的特征上采样或下采样到同一尺寸后拼接
target_size = feature_maps[-1].shape[2:] # 以最深层的特征尺寸为准
aligned_features = []
for feat in weighted_features:
if feat.shape[2:] != target_size:
feat_aligned = nn.functional.interpolate(feat, size=target_size, mode='bilinear')
else:
feat_aligned = feat
aligned_features.append(feat_aligned)
concat_feat = torch.cat(aligned_features, dim=1)
# 步骤3: 施加空间注意力权重
spatial_weight = self.spatial_attention(concat_feat)
spatially_weighted = concat_feat * spatial_weight
# 步骤4: 最终融合并输出
output = self.final_conv(spatially_weighted)
return output
class EFEN_YOLOv8_Neck(nn.Module):
"""
EFEN-YOLOv8 增强型特征提取颈部网络 (Neck)
目标:将上述模块无缝集成到YOLOv8的PAFPN结构中,构成完整的EFEN-YOLOv8网络颈部。
设计思路:在标准的FPN/PAFPN路径中,插入空间特征捕获模块来细化每个层级的特征;
在多层特征融合的关键节点(如自顶向下和自底向上路径交汇处),应用多级加权注意力模块。
"""
def __init__(self, backbone_channels=[256, 512, 1024], neck_channels=[256, 512, 1024]):
super().__init__()
# 1. 使用空间特征捕获模块替换或增强标准的C2f/C3模块
self.sfc_modules = nn.ModuleList()
for c in neck_channels:
self.sfc_modules.append(SpatialFeatureCaptureModule(c, c))
# 2. 定义上采样、下采样和连接操作(参考标准YOLOv8 Neck)
self.upsample = nn.Upsample(scale_factor=2, mode='nearest')
self.downsample = nn.MaxPool2d(2, stride=2)
# 3. 在多尺度特征融合点定义多级加权注意力模块
self.mlwa_fusion = MultiLevelWeightedAttention([neck_channels[0], neck_channels[1]])
def forward(self, backbone_features):
"""
:param backbone_features: 来自Backbone的三个层级特征 [P3, P4, P5]
"""
p3, p4, p5 = backbone_features
# 首先,使用SFC模块对每个层级的特征进行增强
p3_sfc = self.sfc_modules[0](p3)
p4_sfc = self.sfc_modules[1](p4)
p5_sfc = self.sfc_modules[2](p5)
# 模拟PAFPN的自顶向下路径(上采样融合)
p5_up = self.upsample(p5_sfc)
p4_fused_td = p4_sfc + p5_up # 简单相加融合,此处可进一步用MLWA[citation:1]
p4_fused_td = self.sfc_modules[1](p4_fused_td) # 再次增强
p4_up = self.upsample(p4_fused_td)
p3_fused_td = p3_sfc + p4_up
p3_fused_td = self.sfc_modules[0](p3_fused_td)
# 模拟PAFPN的自底向上路径(下采样融合)
p3_down = self.downsample(p3_fused_td)
p4_fused_bu = p4_fused_td + p3_down
# 在一个关键融合点应用多级加权注意力
p3_p4_attended = self.mlwa_fusion([p3_fused_td, p4_fused_bu])
p4_down = self.downsample(p4_fused_bu)
p5_fused_bu = p5_sfc + p4_down
# 最终输出三个增强后的检测层特征
return [p3_p4_attended, p4_fused_bu, p5_fused_bu]
# 以下是使用EFEN-YOLOv8 Neck构建完整网络的示意代码
class EFEN_YOLOv8(nn.Module):
def __init__(self, backbone, num_classes=80):
super().__init__()
self.backbone = backbone # 假设已有一个YOLOv8 Backbone
self.neck = EFEN_YOLOv8_Neck()
# 这里需接上标准的YOLOv8 Detection Head(检测头)
# self.detect_head = Detect(...)
def forward(self, x):
backbone_features = self.backbone(x)
neck_features = self.neck(backbone_features)
# predictions = self.detect_head(neck_features)
# return predictions
return neck_features # 此处先返回颈部特征用于示意在汽车、航空航天、建筑及制造等领域,材料展现出为满足苛刻运行要求而设计的特殊性能。然而,环境暴露与加工条件会引发包括划痕、点蚀、腐蚀和分层在内的表面缺陷,这些缺陷不仅损害产品外观美感与结构完整性,还会缩短其使用寿命。传统的检测方法主要依赖人工目视检查,引入了人为误差、因疲劳导致的不一致性、高昂的运营成本以及低下的吞吐量——这些局限性使得此类方法难以满足现代工业应用的需求。其他替代方法包括激光扫描、漏磁检测、涡流评估和超声波检测等;然而,这些技术需要严格的规范要求,导致巨大的资本支出,并且易受环境干扰,从而限制了它们在生产环境中的广泛应用 [1]。
自动化与计算机视觉的进步催生了创新的表面缺陷检测范式。早期方法采用人工特征提取结合图像预处理进行分类。Ashour等人[2]利用灰度共生矩阵从钢带图像中提取多方向纹理特征以进行缺陷识别。同样,Carvalho等人[3]通过专门的特征提取开发了像素聚类技术,而Schneider等人[4]则捕获了时间、频谱和分布域的信号特征,并结合特征选择机制以提高识别准确率。尽管这些方法在特定操作环境下取得了足够的性能,但它们表现出领域特定的特征提取限制,从根本上限制了其泛化能力并带来了巨大的可扩展性挑战。
深度学习以其卓越的表征能力彻底改变了缺陷检测,优化的目标检测算法进一步提升了检测效率。以R-CNN系列[5,6]为代表的两阶段方法通过区域提议机制实现了极高的准确率,而包括YOLO变体[7,8]和SSD架构[9]在内的单阶段方法则因其计算效率在实时场景中表现出色。近期研究展示了持续的创新:Sun等人[10]通过引入注意力引导的特征编码和基于多级网格的感兴趣区域融合模块,提升了R-CNN的性能。Liu等人[11]通过在主干网络中集成FocalNextBlock来增强特征提取。基于Transformer的DETR[12]开创了端到端的单阶段检测,而RT-DETR[13]在保持较大参数量的同时解决了计算开销问题。Wei等人[14]提出了一种结合感受野注意力卷积与上下文广播中值模块的视觉Transformer,在金属表面缺陷检测方面取得了显著改进。
表面缺陷呈现出多方面的挑战,其特点包括不规则的几何形状、可变的尺寸、不一致的长宽比以及不均匀的光照模式。这种多变性削弱了检测算法的有效性,而复杂的背景则对参数密集型网络施加了额外的计算负担。目标检测框架在多尺度泛化方面遇到特殊困难,需要进行大量下采样操作,这会损害小目标检测能力。在背景复杂且缺陷区域微小的场景中,特征提取变得异常困难。单阶段架构为时间关键型应用提供了最佳解决方案,通过统一的检测流程实现了良好的速度-精度权衡,从而提高了实际部署的可行性。然而,在不同工业场景中仍存在显著的优化空间。鉴于模型性能在不同应用领域差异显著,策略性地选择检测器对于最大化检测效率至关重要。本文提出EFEN-YOLOv8,这是一个基于YOLOv8构建的增强框架,专为复杂工业环境下的稳健缺陷检测而设计。主要贡献包括:
基于深度学习的目标检测已成为表面缺陷检测的主导范式,这得益于新型卷积架构、注意力机制、损失函数优化以及多尺度特征融合策略的进步。
卷积方法。 卷积操作提取分层特征表示,同时通过可学习的滤波器实现空间维度操控。与全连接架构不同,卷积层实现了参数效率,这推动了对专用卷积变体的大量研究。Dent等人[15]开发了空间深度卷积块,通过对特征图进行特定操作保留完整的通道信息,在低分辨率图像和小目标检测上展现出增强的性能。Wang等人[16]将自注意力与图卷积相结合,同时采用轻量级深度可分离卷积模块,既实现了计算加速,又提升了对具有挑战性的缺陷模式的识别能力。Zhong等人[17]引入了双卷积,该结构通过并行的3×3和1×1卷积核对相同的输入通道进行处理,优化了特征提取,并在YOLOv3实现中带来了显著的精度提升。Shahaf等人[18]利用小波变换进行多频分析,通过基于卷积的空间混合捕获丰富的低频分量和全局感受野,从而增强了CNN对几何变化和结构损伤的鲁棒性。Chen等人[19]提出了部分卷积,将标准卷积应用于选定的输入通道,同时保持其他通道不变,显著降低了计算开销和内存消耗。每种技术都提供了独特的计算和表征优势,需要根据具体的应用需求和性能约束进行谨慎选择。
注意力机制。 尽管卷积擅长局部特征提取,但注意力机制提供了全局上下文建模能力,增强了长距离依赖关系的捕获,并能够选择性地聚焦于显著的输入区域。Li等人[20]集成了双重通道-空间注意力以增强神经架构内的特征融合。Tang等人[21]开发了联合注意力框架,抑制背景干扰的同时强调缺陷特征,从而提升了网络的分析能力。然而,增强的注意力模块可能引入计算开销和收敛挑战。Guo等人[22]提出了大核注意力,统一了卷积和自注意力的优势,融合了局部结构建模、长距离依赖捕获和自适应感受野调整。Kang等人[23]通过通道缩减注意力解决了全局上下文提取中的计算效率问题,该机制将查询和键的维度压缩到一,大幅降低了自注意力的计算复杂度。Wang等人[24]专注于用于细节保留和推理加速的多头注意力,采用了跳跃敏感的特征融合模块,在保持纹理提取保真度的同时增强了检测性能。尽管取得了这些进展,许多注意力机制仍受限于其有限的感受野,阻碍了对检测微小或细微表面异常至关重要的细粒度特征捕获。
损失函数。 损失函数优化是提升模型稳定性和收敛效率的关键途径,直接影响训练动态和回归精度。Hu等人[25]将均方误差、交叉熵和CIoU组件合成为一个统一的损失公式,该公式在约束分类性能的同时提高了模型稳定性和准确率。Liao等人[26]设计了一种基于角度的损失函数,考虑了预测框与真实框中心点之间的几何关系,通过L1和Alpha-IoU的集成来平衡各部分的贡献,从而实现优异的检测精度和更快的收敛速度。Li等人[27]通过类别特定的加权方案,直接将定位质量纳入分类损失,使检测模型能够优先处理困难样本,并解决传统目标检测范式固有的分类-定位不一致问题。Luo等人[28]为边界框回归引入了UNI-IoU损失,通过适应预测质量变化的动态注意力机制来优化精度。尽管现有的损失函数主要最小化预测与真实标签之间的空间差异,但它们很少考虑缺陷类别间的相互关系,这代表着一个重要的改进机会。
多尺度融合。 尽管取得了上述进展,但由于多尺度特征融合与提取能力不足,小缺陷检测仍然具有挑战性。近期研究[1,26,29,30]已将包含丰富小目标信息的高分辨率特征图融入融合网络,采用复杂的双向特征金字塔网络来提升小目标检测精度。Li等人[31]将自上而下的上采样与自下而上的下采样路径相结合,在多尺度融合架构中同时强调位置信息和语义信息。Zhang等人[32]将空洞空间金字塔池化模块集成到YOLOv5中,通过捕获多样的语义信息,显著提升了在有限数据集上的小目标检测性能。Li等人[33]在主干网络中引入了简化的空间金字塔池化-快速结构,实现了在四个不同尺度上的特征提取。Yang等人[34]提出了用于特征增强的焦点调制机制,采用注意力机制聚焦于显著图像区域并提升区域识别能力。与SPPF相比,焦点调制能够处理可变大小的输入,同时实现更优的目标识别和定位精度。
尽管这些方法在特定情境下表现出有效性,但它们在复杂场景中存在根本性局限。浅层网络通常包含噪声多、层次低的特征,而深层网络往往难以保留精确定位所必需的细粒度空间细节。这种层级信息差异阻碍了对关键区域的有效注意力分配。尽管ASPP及类似架构成功整合了多层次信息,但它们未能充分区分有判别力的特征,限制了模型增强潜力和突破性性能。为了应对这些挑战,检测框架必须展现出卓越的全局建模能力,有效区分异构特征,并评估它们对决策的相对重要性。通过增强的浅层特征注意力和全面的局部-全局信息整合,我们提出的架构实现了更有效的特征区分和更优的检测性能。
YOLOv8算法与EFEN-YOLOv8架构
YOLOv8框架由四个主要部分组成:主干特征提取网络、颈部特征融合网络、检测头以及结合分类与定位目标的损失函数。我们提出的EFEN-YOLOv8架构(如图1所示)引入了多项关键修改以应对缺陷检测挑战。我们将主干网络中前两个C2f模块替换为SAConv模块,该模块提供了扩展的感受野和加权注意力机制。LSKA注意力被策略性地集成在融合层和检测头之前,以增强缺陷特征识别能力。我们新颖的WASPP模块在强调特征重要性的同时,整合了多个尺度的多样化语义信息。最后,我们提出了𝛽-FEIoU损失函数,以增强缺陷区分能力,并缓解缺陷检测数据集中固有的正负样本不平衡问题。

浅层注意力卷积
深度卷积网络中的分层特征学习揭示了网络不同深度所具有的独特表征特性。位于输入数据附近的浅层保留了细粒度的空间信息,包括纹理模式、边缘结构和低级视觉基元,这些对于精确定位至关重要。相反,深层通过非线性变换逐步抽象出语义概念,实现了高级推理和复杂模式识别。早期特征学习的质量从根本上影响后续网络性能,因为初始表征构成了所有下游处理的基础。然而,标准卷积操作由于感受野受限,在建立长距离空间依赖关系方面存在固有局限性,这对细粒度空间关系至关重要的早期层影响尤为显著。
对于表面缺陷检测,浅层信息对于识别微小异常和细微纹理变化不可或缺。传统CNN由于有限的空间连接性和注意力机制不足,常常无法充分保留和提炼这些关键的浅层特征。为了解决这些局限性并增强浅层对缺陷的敏感性,我们引入了浅层注意力卷积模块。该模块专门设计用于增强细粒度特征表征,同时保持计算效率。SAConv的操作机制如图2所示。

SAConv通过一个为浅层特征增强而优化的双阶段架构运行。初始阶段通过不同尺寸的异质卷积核捕获多尺度空间依赖关系。小卷积核保留了检测细微缺陷所必需的细粒度细节分辨率,而大卷积核则扩展了空间感受野以捕获更广泛的上下文信息。这种多核交互实现了跨不同尺度的全面空间关系建模,促进了跨越局部和半全局空间上下文的稳健特征学习。
后续阶段采用自适应池化操作结合注意力机制来细化特征定位和重要性加权。这种池化策略确保了对分散缺陷信息的有效聚合,而注意力机制则放大了对准确检测至关重要的判别性特征。通过这种综合方法,SAConv在浅网络深度保持了丰富的空间细节,同时增强了对细微异常的敏感性,最终以最小的计算开销提升了检测性能。
𝛽-FEIoU损失函数
表面缺陷检测中的类间空间关系显著影响分类性能,尤其是在视觉上相似的缺陷类别表现出重叠特征时。某些缺陷类型在采集过程中表现出强烈的结构相似性,例如金属表面上油渍与水反射之间可比的灰度分布。这些视觉模糊性损害了网络的区分能力,导致次优的特征学习和分类错误。传统损失函数假设简化的特征分布,未能充分考虑类别间细微的相似性,通常将不同但视觉上可比的缺陷视为不可区分的。当类别间的结构差异虽然细微但对准确分类至关重要时,这一局限性就表现为区分能力不足。

我们提出了𝛽-FEIoU损失函数来增强模型对细粒度类别差异的敏感性。𝛽-FEIoU公式优先考虑相似类别之间的空间和结构变化,使得在训练过程中能够更好地捕获判别性特征。如公式(1)所示,𝛽-FEIoU引入了一个自适应加权因子𝛽,该因子根据预测特征与真实标签特征的重叠度动态调节损失幅度。这种机制强调了表现出高类间相似性的区域,最终增强了模型区分视觉上可比但语义上不同的缺陷的能力。通过增强的空间关系建模,𝛽-FEIoU在具有挑战性的检测场景中提高了分类准确率和鲁棒性。

EIoU 损失函数 [35] 如公式(2)所示,并通过全面的几何惩罚项增强了边界框回归(如图3所示)。

其中 w_c 和 h_c 表示包围预测框和真实框的最小外接矩形的宽度和高度,d 表示指定点之间的欧几里得距离。
Focal损失分量通过基于分类难度动态重加权训练样本,解决了缺陷检测中普遍存在的前景-背景不平衡问题。该机制减少了易分类样本的影响,同时强调困难负样本,有效缓解了单阶段检测框架特有的正负样本失衡问题。Focal损失公式见公式(3):

大分离核注意力
表面缺陷呈现出多方面的检测挑战,包括不规则的几何形状、不连续的边界和复杂的边缘伪影,这些问题通常与显著的背景噪声和成像干扰叠加在一起。这些条件严重阻碍了在复杂工业环境中准确定位缺陷。为了增强特征区分能力和改进缺陷表征,我们在最终预测层之前集成了大分离核注意力机制。这种策略性布局使得能够增强对关键缺陷特征的关注,同时保持计算效率。如图4所示,LSKA将传统的2D卷积核分解为级联的1D可分离操作,通过深度可分离卷积和空洞卷积路径顺序应用。这种分解策略显著降低了计算开销和内存需求,同时保留了捕获复杂缺陷模式中全局空间依赖关系所必需的大感受野能力。

LSKA机制通过多阶段注意力计算过程运行:


其中 * 和 ⊗ 分别表示卷积和逐元素乘法操作。中间特征 Z'_C 表示具有 (2d−1) × (2d−1) 核尺寸的深度可分离卷积输出,捕获局部空间关系的同时缓解了空洞操作固有的网格伪影。空洞卷积采用核尺寸 ⌊k/d⌋ × ⌊k/d⌋,其中 ⌊·⌋ 表示向下取整函数。注意力图 A_c 由 1×1 卷积产生,用于通道特征重新校准。通过这种分层处理,空洞深度可分离卷积从局部特征 Z'_C 中提取全局空间上下文,同时通过可分离核分解保持计算效率。
经验分析表明,较大的LSKA核尺寸会引入不成比例的性能提升所带来的计算开销。实验验证显示,在两个评估数据集上,中等核尺寸均能达到最佳检测精度,这表明在感受野覆盖范围与计算效率之间达到了有效平衡。全面的核分析见第四节。
加权空洞空间金字塔池化
卷积操作具有固有的空间局部性约束,主要捕获有限感受野内的局部模式。尽管这种局部性支持有效的细粒度特征提取,但它从根本上限制了全面场景分析所必需的全局上下文建模和高级语义理解。多尺度卷积策略通过融合不同感受野配置来捕获跨空间尺度的分层语义信息,从而解决了这一局限。然而,从异构感受野提取的特征对特定检测任务具有不同的相关性,其中大部分可能与关键的判别模式无关。我们提出了加权空洞空间金字塔池化模块,作为传统ASPP架构的增强变体,如图5所示。WASPP集成了多个并行卷积通路,分别采用标准卷积核(1×1,3×3)和具有系统空洞率(6, 12, 18)的空洞卷积,以高效捕获多尺度上下文信息。这种分层设计能够同时提取局部细节和全局上下文,同时为实时应用保持计算上的易处理性。

为了增强判别性特征选择,WASPP内的每个卷积分支将提取的特征送入专用通道,随后通过sigmoid激活函数进行自适应重要性加权。这种注意力机制强调显著特征,同时抑制无关信息,使得能够选择性地聚焦于任务关键的空间模式。加权后的特征与原始卷积输出进行拼接,促进了既保留原始特征信息又融合了精炼特征信息的全面多尺度表征。
该模块集成了自适应全局平均池化,随后是1×1卷积和双线性上采样,以确保所有特征通路空间维度的一致性。最终的特征整合通过拼接和随后的1×1卷积进行,以实现维度一致性和特征精炼。该架构通过利用多尺度核配置和注意力引导的特征选择,有效克服了传统卷积在全局上下文建模方面的局限。通过对跨不同尺度的局部和全局信息进行系统性整合,WASPP增强了语义理解,同时保持了计算效率,最终提升了模型在复杂工业环境中识别和定位复杂缺陷模式的能力。
为评估所提框架的有效性,我们进行了全面的实验,使用NEU-DET数据集进行初始模块验证,并在GC10-DET数据集上进行泛化能力验证。
数据集
NEU-DET数据集。 NEU-DET数据集由中国东北大学开发,其挑战性在于存在显著噪声、光照不均、缺陷形态多样以及类内差异大等特点,使其特别适合验证鲁棒的检测算法。该数据集包含六类表面缺陷共1800张图像,每类300个样本,分辨率为200×200像素,如图6所示。缺陷类别包括:裂纹、点蚀、氧化皮、划痕、夹杂和斑块。如图6中的代表性样本所示,每个缺陷类别都表现出独特的形态特征,具有不规则的空间分布和不同的视觉复杂度。值得注意的是,裂纹样本显示出显著的背景噪声和不均匀光照,这些因素可能掩盖关键的缺陷边界,导致漏检和特征学习受损,最终挑战模型的鲁棒性和检测精度。

GC10-DET数据集。 GC10-DET数据集包含2294张高分辨率图像,尺寸为2048×1000像素,涵盖十种不同的钢材表面缺陷类别,如图7所示。缺陷分类包括:冲孔、焊缝线、月牙弯、水渍、油渍、丝斑、夹杂、轧制凹坑、折痕和腰折。该数据集通过更高分辨率的图像和更多的缺陷类别提供了更高的复杂性,能够全面评估模型在不同工业表面条件下的泛化能力。

评估指标
遵循标准的目标检测评估协议,我们采用精确率、召回率、平均精度、平均精度均值、计算复杂度和模型参数作为主要性能指标。评估指标定义如下:

其中,TP代表真正例检测,FP表示假正例预测,FN表示假反例(漏检),n对应缺陷类别的总数。平均精度计算为每个类别的精确率-召回率曲线下面积,而平均精度均值表示所有类别的AP平均值。对于单类别场景,mAP简化为AP。
实验配置
实验在配备NVIDIA RTX 3060 GPU的Windows工作站上进行,使用CUDA 12.3、PyTorch 1.12.0框架和Python 3.8.5环境。训练主要采用9:1的训练-测试划分,部分实验使用8:2划分以评估鲁棒性。训练超参数包括350个训练周期、初始学习率0.01、批次大小16、动量系数0.937和权重衰减0.0005,通过随机梯度下降进行优化。
损失函数对比分析
损失函数设计通过量化预测与目标之间的差异来从根本上影响模型优化,有效的公式通过平衡的训练效率和泛化能力来增强鲁棒性。我们评估了提出的𝛽-FEIoU损失与现有IoU变体(CIoU、DIoU、WIoU、SIoU和EIoU)在多种数据划分方案下的性能,以评估其一致性和鲁棒性。表1和表2展示了全面的对比结果,证明了𝛽-FEIoU在所有缺陷类别上均具有优越的平衡性能,不受数据划分策略影响。在9:1配置下,𝛽-FEIoU达到76.0% mAP,比次优方法高出0.3个百分点。更具挑战性的8:2划分进一步验证了我们方法的有效性,𝛽-FEIoU保持在73.6% mAP的最佳性能,而SIoU为72.6%。这种在不同训练数据可用性下的一致性证明了我们损失公式的鲁棒性。

类别特异性分析揭示了不同损失函数间的性能特点。具体来说,DIoU在裂纹缺陷检测中表现出色,EIoU优化了斑块检测,而𝛽-FEIoU在所有缺陷类别上都表现出卓越的稳定性和平衡性能。在特别具有挑战性的裂纹类别中,我们的方法在不同数据划分方案下分别取得了44.4%和50.3%的性能。这些数字分别比表现最弱的基线方法提高了8.9%和2.9%。关键在于,在9:1和8:2数据划分之间观察到的性能差异为不同损失函数的固有稳定性提供了关键见解。值得注意的是,𝛽-FEIoU表现出异常的抗性,即使在训练数据显著减少的情况下,性能也只下降了2.4%。这强烈表明了其优越的泛化能力。相反,传统方法如CIoU和EIoU遭受了更大幅度的性能下降,表明它们在面对有限训练样本时更容易过拟合。
𝛽-FEIoU的有效性源于EIoU回归损失与Focal损失分类的协同整合,并通过我们自适应的𝛽加权机制得到增强。Focal损失分量有效处理了背景与缺陷区域之间的类别不平衡,而𝛽参数能够基于检测难度和类间关系进行动态调整。这种双重机制加速了收敛,同时增强了对细微缺陷变化的区分能力。通过对不同缺陷类别和数据划分场景的全面评估,𝛽-FEIoU在工业表面缺陷检测应用中始终表现出优越的平衡性能和卓越的鲁棒性。
LSKA核尺寸的影响
LSKA采用一种复杂的注意力机制,将传统的二维卷积核在深度卷积层内分解为沿水平和垂直轴级联的一维操作。我们评估了六种不同的核尺寸:7、11、23、35、41和53像素。考虑到两个数据集中表面缺陷的形态多样性,包括显著的尺度变化和异质的几何模式(如细长形、三角形和半圆形),核尺寸的选择对检测性能至关重要。
表3和表4表明,较小的卷积核由于固有的空间局部性限制,始终产生次优的整体精度,这限制了其在扩展空间上下文中全面捕获缺陷信息的能力。中等尺寸的核(11和23)在细粒度缺陷特征检测方面表现出优越性能,特别是在识别需要平衡局部-全局上下文整合的不规则细长或弯曲缺陷特征方面表现出色。相反,较大的核提供了增强的全局上下文信息,并在检测显著的缺陷特征方面实现了更高的精度,在具有规则几何模式(如大斑块或月牙形异常)的广阔区域上表现出最佳性能。然而,这种扩展的感受野会损害空间定位精度,从而降低了对需要细粒度空间区分能力的微小缺陷特征的检测效果。


经验结果表明,对于NEU-DET数据集,核尺寸为23时达到了最佳权衡(77.0% mAP),而对于GC10-DET数据集,核尺寸为11时达到了最佳权衡(67.2% mAP),此时在捕获足够上下文信息的同时,没有牺牲检测细微表面异常所必需的空间精度。这种依赖于数据集的最佳核尺寸反映了每个工业表面检测场景中固有的不同缺陷特征和复杂程度。
消融实验
为了验证所提架构增强的有效性,我们以YOLOv8n为基线框架进行了全面的消融实验。表5展示了在NEU-DET数据集上每种模块配置的消融结果。消融结果显示了每个架构组件的独特性能特征。最初,虽然WASPP模块(YOLOv8n_1)引入了显著的参数量开销和计算复杂度,但它实现了显著的检测改进,达到了76.5% mAP,而基线为73.0%。单独的SAConv模块(YOLOv8n_2)表现出最小的性能提升,仅实现了边际改进且参数量增加可忽略不计。这种有限的效果表明SAConv需要与上下文注意力机制协同整合才能充分发挥其潜力。LSKA注意力机制(YOLOv8n_3)展现出显著的独立有效性,以最小的计算开销达到了75.2% mAP。这2.2%的改进验证了LSKA增强上下文特征关系并将模型注意力导向关键缺陷特征的能力。𝛽-FEIoU损失函数(YOLOv8n_4)显著提高了回归性能,达到76.0% mAP,同时保持了与基线相同的参数量和计算复杂度,证实了我们自适应损失公式的有效性。逐步集成模块揭示了引人注目的协同效应。将𝛽-FEIoU与LSKA结合(YOLOv8n_5)产生了77.0% mAP,表明增强的损失优化有助于提高注意力机制的性能。加入SAConv(YOLOv8n_6)带来了显著的改进,达到79.2% mAP,验证了我们的假设,即SAConv的有效性依赖于LSKA提供的充分上下文交互。这种配置使SAConv能够有效提取浅层特征、丰富空间信息并强调多尺度感受野的重要性。

包含所有提出组件的完整架构达到了80.4% mAP,相比基线YOLOv8n有显著的7.4%提升。虽然这种配置增加了计算成本,但对于需要高精度的工业缺陷检测应用来说,显著的性能提升证明了计算开销的合理性。系统的消融研究验证了每个组件的贡献,并展示了集成架构增强的协同效益。为了全面评估特征提取能力,我们采用HiResCam可视化方法将我们的增强架构与基线实现进行比较,如图8所示。对比分析揭示了在不同缺陷类别上的优越特征提取性能。对于裂纹缺陷,虽然图像中只有单个缺陷被明确标注,但存在多个未标记的异常。我们的模型成功地识别了多个未标注的实例,显示出对细微缺陷模式增强的敏感性。同样,对于具有广泛空间分布特征的点蚀缺陷,基线模型表现出不足的特征学习能力,而我们的架构则展示了全面的缺陷提取能力。在所有缺陷类别上的一致改进验证了我们模型增强的特征提取效能,并证实了架构增强的有效性。

性能对比分析
为了全面验证所提架构的有效性,我们与先进检测框架和当代方法进行了广泛比较。我们统一了所有评估模型的输入图像尺寸,以确保一致的实验条件。开源架构(YOLOv5、YOLOv8、YOLOv11、YOLOX、Faster R-CNN、SSD、RT-DETR)使用其各自的默认超参数配置和相同的训练协议在NEU-DET数据集上进行了重新训练。对于近期文献[39-42]中引用的当代方法,我们基于已发表的方法描述实现了它们的方法,并应用了与我们提出的框架相匹配的一致实验条件。未指定的参数遵循我们的实现标准,以保持公平的比较评估。
表6表明,我们提出的架构实现了优越的整体检测性能,达到了80.4% mAP,同时保持了合理的计算效率。虽然我们的模型相比某些轻量级架构参数量更高,但在所有评估方法中提供了最高的检测精度。性能分析揭示了关于架构权衡和检测能力的几个关键见解。考察类别特异性性能,我们的方法在大多数缺陷类型上表现出优越或相当的准确率。值得注意的是,我们的模型在夹杂和点蚀缺陷上取得了卓越性能,显著优于所有对比方法。对于斑块缺陷,我们的方法达到了95.1% mAP,与领先方法的性能相当,同时保持了优越的整体平衡性。我们方法表现稍显不足的唯一类别是裂纹缺陷,Wu等人[40]和YOLOv11n分别达到了53.5%和51.5%,而我们为49.4%。这一局限可能源于裂纹检测固有的挑战性,其特征是细微、细长的特征,需要专门的架构考虑。

与资源密集型架构相比,计算效率分析显示出有利的权衡。相对于Faster R-CNN,我们的模型显著降低了计算需求,同时实现了更高的检测精度。同样,与SSD和RT-DETR相比,我们的架构以显著更低的参数量开销和计算复杂度提供了更高的精度。虽然Wu等人[40]等轻量级方法实现了更高的参数效率,但我们的方法在检测性能上大幅超越它们2.3个百分点,证明了适度的计算开销是合理的。我们的方法在需要细粒度特征区分的挑战性缺陷类别上表现出特别强的性能,确立了其在检测精度至关重要的工业表面检测应用中的有效性。
泛化实验
为了评估所提架构的泛化能力,我们在GC10-DET数据集上进行了性能评估,将其作为独立的验证基准。表7展示了泛化结果,我们的方法在多个缺陷类别上相比先进检测器表现出优越性能。特别值得注意的是,在冲孔缺陷上达到了99.4%的异常精度,为该类别设立了新的性能基准。

然而,在压痕缺陷上出现了性能下降,这主要归因于数据集中固有的严重类别不平衡。具体来说,85个压痕样本与884个丝斑样本之间的巨大差异造成了明显的失衡,阻碍了训练期间有效的特征分布学习。这种不平衡加剧了领域偏移的复杂性[46],并加剧了少数类别的学习难度。因此,模型表现出对高频类别(如丝斑)的固有偏向,导致压痕缺陷的系统性误分类。尽管存在这些挑战,我们的架构仍实现了72.1%的整体检测精度,大幅超越了现有的领先检测器,比YOLOv8n高出3.3%。这一性能增益验证了其在不同数据集上的强大泛化能力,并展示了在更广泛的工业部署场景中的巨大潜力。
定性分析
图9展示了一个全面的定性比较,展示了所提出的EFEN-YOLOv8架构在不同工业缺陷场景下的优越检测性能。可视化结果表明,虽然包括YOLOv11n、YOLOv8n、RT-DETR以及Dong等人和Wu等人的近期方法在内的竞争方法在不同缺陷类别上表现各异,但我们提出的方法始终提供稳健的检测并具有高置信度得分。

值得注意的是,对于表面裂纹等挑战性缺陷类别,我们的方法相比基线方法实现了显著更高的置信度得分,同时通过精确拟合的边界框保持了卓越的定位精度。斑块检测结果表现出特别强的性能,能够成功识别并独立标记每个缺陷,从而验证了我们方法有效区分负样本的能力。这种多类别缺陷分析验证了我们架构改进对增强检测鲁棒性和准确性的贡献。尽管某些竞争方法在个别情况下偶尔获得更高的置信度得分,但它们在全面评估范围内表现出不一致的性能,经常产生宽松的边界框或完全无法检测到细微缺陷。可视化证实了我们的结果证明了所提架构在实际工业测试应用中的可行性。
使用随机数据划分的鲁棒性分析
消融实验的鲁棒性分析。 为了严格评估每个提出模块的功效,我们进行了全面的统计显著性检验。这包括在NEU-DET数据集上使用9:1训练-测试划分进行的五次独立实验,每次实验使用不同的随机种子初始化。表8展示了详细的统计分析,包括平均性能、标准差、95%置信区间以及将每个模块贡献与基线YOLOv8n进行比较的配对t检验结果。

统计分析明确表明,所有提出的模块都带来了显著的性能改进,增强了对其各自功效的信心。具体来说,WASPP获得了最显著的个体增益,性能提高了+3.5%(p < 0.001)。紧随其后的是𝛽-FEIoU,贡献了+2.9%(p < 0.001),以及LSKA,带来了+2.7%的增强(p < 0.001)。尽管SAConv表现出最温和的独立改进,增益为+0.8%(p < 0.05),但其贡献在统计上仍然是显著的。关键是,SAConv单独使用时相对温和的性能验证了一个关键的架构假设:该模块的全部潜力只有通过与上下文注意力机制(特别是LSKA)的协同整合才能被释放。这种协同效应在组合配置中观察到的显著性能增益中得到了强有力的证明(表5)。进一步确认我们实验结果鲁棒性和可重复性的是所有配置下观察到的统一低标准差(𝜎 ≤ 0.53)和狭窄的置信区间。总的来说,这些发现提供了有力的统计证据,表明每个提出的组件都可靠且显著地促进了最终架构的优越检测性能。
模型性能的鲁棒性分析。 为确保实验的鲁棒性和统计可靠性,我们采用了严格的验证框架。具体来说,我们在NEU-DET和GC10-DET两个数据集上进行了五次独立实验,每次使用不同的随机种子初始化,并在两种训练/测试比例(8:2和9:1)下进行评估。关键是,每次迭代都进行数据集打乱,以确保训练和测试划分之间的统计独立性。表9展示了这五折实验验证的详细结果,包括mAP得分的均值、标准差和95%置信区间。我们的统计分析突出了不同配置和数据集之间的显著性能差异。值得注意的是,将训练数据比例从80%增加到90%在两个数据集上均带来了一致的显著改进:NEU-DET记录了4.3个百分点的提升(从76.1%到80.4%),而GC10-DET则表现出更明显的11.3个百分点的提升(从60.8%到72.1%)。这些增益明确表明,我们提出的架构显著受益于更大的训练集,特别是对于具有复杂缺陷模式的挑战性数据集。

NEU-DET相对于GC10-DET始终表现出更优越的性能,突显了数据集复杂性的根本差异。例如,NEU-DET的特征是本质上更易区分的缺陷模式,从而促进了更有效的模型学习。这种差异可能归因于GC10-DET中严重的类别不平衡,其中某些缺陷类别训练样本不足。这种不平衡阻碍了充分的特征学习,不可避免地导致这些少数类别性能下降。此外,方差分析为模型稳定性和数据集特征提供了关键见解。NEU-DET在所有实验配置下都表现出极低的标准差(𝜎 ≤ 0.36),意味着无论随机初始化如何,都具有鲁棒且一致的性能。相反,GC10-DET表现出显著升高的方差(𝜎 = 1.63–2.51),在8:2划分方案中最为明显,表明其对训练不稳定性和收敛困难的敏感性更高。NEU-DET观察到的受限置信区间([75.72,76.48]和[79.95,80.85])证明了性能估计的卓越精确性,而GC10-DET特征性的明显更宽区间([57.48,64.12]和[70.09,74.11])则突显了该挑战性数据集固有的复杂性和检测变异性。
混淆矩阵分析与性能见解。 图10展示了不同训练-测试比例下的混淆矩阵,为模型在缺陷类别上的分类能力和性能特征提供了全面的见解。在GC10-DET数据集上,提出的EFEN-YOLOv8表现出异常的分类性能,大多数类别的对角线值超过0.70。特别值得注意的是焊封、月牙弯和水斑缺陷,它们表现出优越的检测精度。这种高精度性能表明增强架构内在的有效特征提取和区分能力。同样,在NEU-DET数据集上,包括夹杂、斑块和划痕在内的类别保持了高于0.90的稳健检测精度,验证了模型在不同工业场景下的有效性。

分析揭示了独特的性能模式,突显了现实世界缺陷检测挑战中固有的复杂性。表现出相似视觉特征的类别,例如与自然表面变化非常相似的龟裂模式,呈现出固有的分类复杂性——这是工业质量控制挑战性的反映,而非架构缺陷。不同训练-测试比例(9:1和8:2)下的对比性能展示了模型对不同数据分布的适应性,同时在所有配置上相对于基线方法保持了一致的改进。
尽管实现了最先进的性能,某些挑战性场景仍值得持续研究。这些包括检测存在于正常与缺陷样本分类边界的高度细微缺陷,以及针对工业环境中特定缺陷类型出现频率极低的严重不平衡数据集的优化策略。特别是,缺陷样本的不平衡或稀缺导致了某些类型检测性能不佳。然而,这些观察结果为未来的研究指明了清晰的方向,同时确认了所提架构在增强实际缺陷检测能力方面取得的显著进步。
本文提出了EFEN-YOLOv8,一种集成了四项关键创新的新型缺陷检测架构。SAConv模块通过加权注意力机制增强了浅层特征定位能力,实现了具有差异特征强调的早期缺陷识别。提出的𝛽-FEIoU损失函数解决了类别区分挑战,同时缓解了正负样本不平衡,同时加速了收敛并增强了回归精度。集成的LSKA注意力机制在样本平衡优化后放大了缺陷特征的聚焦。WASPP模块通过自适应加权促进多尺度特征融合,以强调关键特征的重要性。
全面的实验验证证明了该架构在多种评估场景下的有效性。在NEU-DET数据集上,我们的模型在9:1数据划分且无预处理的情况下达到了80.4%的检测精度,在更具挑战性的8:2划分下保持了76.1%的鲁棒性能,在所有缺陷类别上均表现出显著改进。值得注意的是,具有挑战性的Cr缺陷类别mAP从37.0%显著提升至49.4%,同时在其他缺陷类型上保持优越性能。通过使用不同随机种子进行的五折交叉验证的统计显著性分析确认了模型的可靠性,得出极低的方差(𝜎 ≤ 0.36)和狭窄的置信区间,表明其在不同实验配置下的一致性性能。在GC10-DET数据集上,模型达到了72.1%的精度,代表了3.3%的改进,验证了该架构在异构数据集上的鲁棒性和泛化能力。虽然相比现有方法取得了显著改进,但本研究也识别出可以通过持续研究进一步提升表面缺陷检测能力的领域。混淆矩阵分析揭示,某些挑战性场景,包括分类边界附近的高度细微缺陷和严重不平衡的工业数据集,代表了持续的研究机会而非根本性局限。该模型的计算效率有利于工业部署,尽管在资源受限环境中仍存在优化机会。不同数据集上的性能变化展示了多样化工业应用固有的复杂性,同时在基线方法上保持了显著的改进,表明了领域自适应技术的有前景方向。
未来的研究方向包括通过数据集优化和架构增强进行算法改进,以最小化误检率,同时提高整体准确性和鲁棒性。提出的方法改进包括通过先进滤波技术、基于CLAHE[47]的噪声抑制、复杂的图像增强算法以及通过对抗生成网络[48]进行数据增广来实现噪声缓解。此外,将研究模型剪枝策略以减少计算开销,从而提升推理速度和整体检测效率。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。