使用Unet网络做零件缺陷检测
Unet网络
1.U-Net网络左边可视为编码器,右边可视为解码器。
2.编码器包括四个模块,每个模块用两个valid卷积层加上一个max pooling组成。
3.解码器同样是四个模块,每个模块有两个valid卷积层和一个转置卷积层组成。
4.此外,该网络还是用跳跃连接,将编码器与解码器中具有相同大小的模块进行连接
将编码器网络改为ResNet50
结果展示
反思总结
1、结果显示,模型在训练集中的IOU远高于测试集中IOU,判断为过拟合。为了防止过拟合,可考虑添加dropout或者加入L2正则化
2、损失函数选择上,考虑Dice Loss与BCE Loss并重,以一定比例均衡
代码
在代码上参考了github上的一份代码,并对其进行了一些的修改,其中添加了一个unet1.py是原始的unet网络,而该代码的unet网络,主干网络由VGG和resnet50组成。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Infinite's journey!