Anomalib:PatchCore使用API与CLI精度不一致(4)

        在前几篇博文中,我使用Win11+Docker配置了anomalib,并成功的训练了我自己的一个火腿肠缺陷检测的数据集,其中使用的模型就是PatchCore。由于我的数据集比较大并且面临着跨域的问题(不同的火腿品种、不同设备采集),因此检测的效果不是很好,F1-Score为0.75。

        为了排查是否代码存在问题,我重新运行了MVTecAD数据集的bottle类别,发现其精度也是0.7左右。这说明我的代码可能是存在问题的。

        解决办法:

        我重新使用CLI接口在MVTecAD数据集上训练了bottle类别,准确率达到99.7,这与API模式存在非常大的区别。之后我再次在我自己的训练集上进行了训练,这次我的准确率达到了99.4%,这远远超出了我的预期,推理速度大约为160ms(3070GPU)。以下图像分别为合格,缺陷类别1,缺陷类别2.可以看到,能够很好的识别到缺陷位置了。

8006df26933b43e69d99894cdf4e58e3.pngda5707af73a54e4485d50abdbb807214.pngb5296635d6494c9eb2b41f421be948d3.png

        在我的结果中存在这样一种缺陷,它是由合格品剪掉一块形成的,但这个没有被有效的检测到。我是这样理解的,这种产品的每个patch都是符合正常品特征的,但貌似模型没有能够充分的理解一个正常品应该包含的各个组成部分,从而使这种部分结构缺失的样本被漏掉。这应该更加属于一种逻辑缺陷。246c23c98c354da08e53e52622f262c1.png

 

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值