齿轮作为工业传动系统的核心部件,其表面质量直接影响设备寿命和运行安全。传统人工检测存在效率低(每人每天仅能检测200-300件)、漏检率高(约15%)的问题。我们团队基于改进DETR算法开发的检测系统,在产线实测中达到98.6%的识别准确率,单件检测耗时仅0.3秒。
这个项目最硬核的部分在于:我们不仅开源了完整代码和标注数据集(含6类常见缺陷的12,845张高清图像),还同步公开了中英文论文和技术报告。这在工业检测领域极为罕见——多数企业将此类数据视为商业机密。之所以选择全面开源,是希望推动行业检测标准的统一化。
原生DETR在COCO数据集表现优异,但直接用于工业检测会出现:
我们在VisDrone数据集上的对比实验显示,原始DETR对小于32px目标的召回率仅有61.2%,这是无法接受的质量风险。
采用跨层特征融合策略:
python复制class FeatureFusion(nn.Module):
def __init__(self, in_channels):
super().__init__()
self.conv1x1 = nn.Conv2d(in_channels*2, in_channels, 1)
self.attention = CBAM(in_channels) # 引入注意力机制
def forward(self, high_feat, low_feat):
up_feat = F.interpolate(high_feat, scale_factor=2, mode='nearest')
fused = torch.cat([up_feat, low_feat], dim=1)
return self.attention(self.conv1x1(fused))
实测表明该设计使小目标召回率提升27.6%。
传统DETR的固定100query在齿轮检测中效率低下。我们设计动态机制:
在解码器加入金字塔特征:
| 组件 | 配置 | 备注 |
|---|---|---|
| 工控机 | i7-11800H + RTX 3060 | 需配备GPIO接口 |
| 触发模块 | 光电传感器E3Z-T61 | 响应时间<1ms |
| 分拣机构 | SMC电动滑台MXS40-300 | 重复精度±0.02mm |
关键提示:必须做振动隔离!我们曾因电机振动导致误检率上升3.2个百分点,后加装减震垫解决。
在3家齿轮厂的实际测试数据:
| 缺陷类型 | 传统方法(F1) | 改进DETR(F1) | 提升幅度 |
|---|---|---|---|
| 齿面划痕 | 0.812 | 0.963 | +18.6% |
| 齿根裂纹 | 0.653 | 0.924 | +41.5% |
| 锈蚀斑点 | 0.901 | 0.982 | +9.0% |
特别在微弱裂纹检测上,人工检出率仅68%,而我们的系统达到92.4%召回率。某客户反馈,这套系统帮他们避免了价值230万元的批次质量问题。
尝试过的方案:
python复制def add_specular(img):
h,w = img.shape[:2]
y,x = np.ogrid[:h,:w]
center = (np.random.randint(0,w), np.random.randint(0,h))
radius = np.random.randint(20, min(h,w)//2)
mask = ((x-center[0])**2 + (y-center[1])**2) <= radius**2
intensity = np.random.uniform(0.3,0.7)
img[mask] = np.clip(img[mask]*1.5 + intensity*255, 0, 255)
return img
初期因处理延迟导致产线降速:
现在系统可匹配60件/分钟的生产节拍,比人工检测快8倍。
我们开源的齿轮缺陷数据集包含:
标注规范特别规定:
重要教训:初期未规定标注一致性标准,导致相同缺陷不同工程师标注IOU差异达0.3,后通过制定详细标注手册解决。
这套系统目前已在7家制造企业稳定运行超过6000小时,最关键的收获是:工业AI项目成功=20%算法+80%工程细节。我们开源的不仅仅是代码,更是一整套经过实战检验的工业AI落地方法论。