YOLOv5瓷砖表面瑕疵质检

https://mp.weixin.qq.com/s/0mzt1fD5JfkVb3KckN1RAw

佛山作为国内最大的瓷砖生产制造基地之一,拥有众多瓷砖厂家和品牌。经前期调研,瓷砖生产环节一般(不同类型砖工艺不一样,这里以抛釉砖为例)经过原材料混合研磨、脱水、压胚、喷墨印花、淋釉、烧制、抛光,最后进行质量检测和包装。得益于产业自动化的发展,目前生产环节已基本实现无人化。而质量检测环节仍大量依赖人工完成。一般来说,一条产线需要配2~6名质检工,长时间在高光下观察瓷砖表面寻找瑕疵。这样导致质检效率低下、质检质量层次不齐且成本居高不下。瓷砖表检是瓷砖行业生产和质量管理的重要环节,也是困扰行业多年的技术瓶颈。

在产线上架设专业拍摄设备,实地采集生产过程真实数据,解决企业真实的痛点需求。数据覆盖到了瓷砖产线所有常见瑕疵,包括粉团、角裂、滴釉、断墨、滴墨、B孔、落脏、边裂、缺角、砖渣、白边等。实拍图示例如下:

图片

针对某些缺陷在特定视角下的才能拍摄到,每块砖拍摄了三张图,包括低角度光照黑白图、高角度光照黑白图、彩色图,示例如下:

图片

数据主要分为两种:

  1. 白板瓷砖。花色简单,数量总共约12000张,包含训练集和测试集.

  2. 复杂瓷砖。花色相对复杂,并提供相应的模板图片(同花色且无瑕疵图片),数量总共约12000张,包含训练集和测试集。

复杂瓷砖包含有瑕疵图片带模板、无瑕疵图片和标注数据。标注数据标注模板图片、瑕疵位置和类别信息。示例如下:

图片

瓷砖瑕疵检测极客奖方案代码 获取方式:

关注微信公众号 datayx  然后回复 yolo 即可获取。

一、生成voc格式的数据集

图片

图片

二、自动绘制瑕疵点

图片

图片

图片

绘制瑕疵点之后的图像如下图所示

图片

可以看出瑕疵点较小,因此对瓷砖图片进行切图处理。

三、 对瓷砖进行切图处理

为了提高识别的精度,对瓷砖图片进行切图处理,参照这篇文章的代码对图片进行切图处理。

https://blog.csdn.net/weixin_45734379/article/details/112908630

图片

图片

四、将voc格式的数据集转换为yolo(.txt)格式的数据集

yolov5模型进行目标检测,必须使用yolo格式的数据
因此利用下面的程序创建yolo格式的数据

图片

图片

图片

生成的yolo格式数据如下图所示,最前面的数字 4 为瑕疵点类别编号,后面的数据为瑕疵点的位置

图片

五、将Yolo格式数据自动划分成训练集(train2017),测试集(val2017)

程序生成的数据集存放方式如下图所示

图片

五、Yolov5模型的训练

模型环境的建立和模型训练流程

https://blog.csdn.net/weixin_45652435/article/details/113095444

模型训练之前需要更改coco128.yaml 和 yolov5s.yaml中的nc(识别对象的类别数目)和 names

进入Yolov5的环境,切换到相应的目录,对模型进行训练

图片

六、对需要检测的图片进行预测,生成 json 文件

图片

原文地址:https://www.cnblogs.com/shuimuqingyang/p/15687489.html