本文整理天池比赛论坛分享:https://tianchi.aliyun.com/forum/postDetail?postId=195955
仅做收藏、学术分享
一. 总体方案概述
- 虽然当前深度学习技术十分火爆,但它占AOI落地项目中的比例仅约10%。传统算法依然无法被完全取代,它有着计算复杂度低、调试成本低等优点。
-
为了结合深度学习算法和传统算法的优势,我们提出Deep and Shallow Fusion Network (DSFNet),
该网络将传统算法提取的特征在模型的深层和浅层按通道进行拼接。这样的结构仅用单模型ResNeSt50就取得了优异的成绩。 -
我们对仅在模型的深层或者浅层拼接分别进行了实验,发现只有同时进行拼接效果最好。
二. 传统特征提取
- 用surf算子提取瑕疵图和模板图的特征点,再通过透视变换将模板与瑕疵图对齐,最后差分得到传统特征,其流程框图如下:
- 由于瓷砖的花纹复杂,与瑕疵难以区分。这样对齐差分后,可以抑制绝大部分的噪声,而突出瑕疵的特征。
三.其他性能优化措施
- anchor_scale和anchor_size设置。 对于不同的检测任务,往往需要统计训练数据来针对性的设置这两个参数,这样才能将模型的性能最大化。
- 可变形卷积增加了模型对各种目标形状的建模能力,是个稳定的涨分点。
- 双阈值,对于提高ACC效果明显, 会略微降低MAP。需要调到合适值,才能达到总score最大化。
-
Backbone是ResNeSt50。由于split-attention模块能够实现跨通道注意力机制,所以这个模型正好适合我们按通道拼接的传统特征和深度模型特征。
-
后期还利用差分图像做了瑕疵增广实验,由于时间关系,未能测试。
四.github地址
- 正在整理,即将开放.