本发明涉及数字图像处理领域,具体涉及一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法。
背景技术:
1、由于太阳能电池片制作工艺复杂,在制作流程过程中极易出现划痕、叉隐、黑点、无电等缺陷,这些缺陷的存在极大降低了太阳能电池板转换效率,还会缩短太阳能电池板的寿命。因此出厂前对太阳能电池板表面的缺陷进行检测尤为重要。
2、目前,基于深度学习的目标检测算法包括两种,一种是两阶段目标检测算法,对于两阶段目标检测算法首先通过算法来生成一些样本候选框,之后在通过卷积神经网络进行样本分类。常见的两阶段目标检测的算法有r-cnn、faster-r-cnn等等。另一种是一阶段目标检测算法,此算法直接将目标定位的问题转化成回归问题,与两阶段目标检测的区别在于,不需要候选框,比较常见的一阶段目标检测算法有yolo系列、ssd等。现在的网络虽然可以运用在太阳能电池板缺陷检测,但其精确度还有很大的提升空间。
技术实现思路
1、本发明的目的是开发一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,通过对yolov5s模型的改进,提高太阳能电池板缺陷的检测精度。
2、本发明的上述技术目的是通过以下技术方案得以实现的:
3、本发明提供的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,包括如下步骤:
4、获取太阳能电池板数据集;
5、改进yolov5s模型的动态头部dyhead框架;
6、改进yolov5s主干网络的c3模块;
7、改进yolov5s模型的定位loss;
8、改进yolov5s模型的头部网络层;
9、采用太阳能电池片数据集对改进后的yolov5s模型进行训练,得到太阳能电池板缺陷检测模型;
10、采用太阳能电池板缺陷检测模型对太阳能电池板的缺陷进行检测。
11、进一步的,获取太阳能电池板数据集,包括获取太阳能电池板图像,对太阳能电池板图像进行增强、缺陷标注。
12、进一步的,改进yolov5s模型的动态头部dyhead框架,包括采用dconv替换所述动态头部dyhead框架的conv。
13、进一步的,改进yolov5s模型的动态头部dyhead框架,包括:将yolov5s模型头部的conv、c3模块和concat模块全部替换成动态头部dyhead框架的conv;
14、将动态头部dyhead框架的conv替换为dconv。
15、进一步的,改进yolov5s主干网络的c3模块,包括将感受野增强模块rfi加入到c3模块中。
16、进一步的,将感受野增强模块rfi代替yolov5s中c3模块的瓶颈。
17、进一步的,感受野增强模块rfi包括基于扩展卷积的多分支和采集加权层。
18、进一步的,改进yolov5s模型的定位loss,包括在所述定位loss中添加高斯沃瑟斯坦距离,进行一定比例的融合,比例范围是0~1。
19、本发明中,yolov5s定位loss的iou与归一化沃瑟斯坦距离各取一半,既0.5+0.5(yolov5s的iou损失函数取值范围在0-1之间)。具体来说就是通过修改iou_ratio来修改两者的比例(增大iou_ratio就增加yolov5s iou损失函数的比重,减小iou_ratio就增加高斯沃瑟斯坦距离损失函数的比重),然后通过相加得到模型最终的ibox。
20、进一步的,yolov5s模型的头部网络层,包括在所述头部网络层添加se自适应注意力模块。
21、进一步的,se自适应注意力模块的构建方法如下:将每个学习到的过滤器都与接受域一起操作,并使用全局平均池来生成通道统计信息,计算公式如下:选择s型激活门控机制对自适应进行再校正,计算公式如下:s=fex(z,w)=σ(w2δ(w1z));其中,δ为激活函数relu;w1、w2分别用于降维和升维的两个全连接层权重。
22、综上所述,本发明具有以下有益效果:
23、1、通过自制的数据集,使得实验所需要的太阳能电池片表面缺陷数据更能满足实验环境,有利于检测精确的提升;
24、2、改进动态头部dyhead框架,将动态头框架的conv替换为动态卷积dconv,在不增加模型深度和宽度的情况下,增加模型的复杂性,改进后的动态头部相比于yolov5s原模型precision、recall、map分别提高了7.3%、8.7%、4.7%;
25、3、改进yolov5s主干网络的c3模块,加入改进后的感受野增强模块rfi,完成感受野的增强,相比于yolov5s原模型precision、recall、map分别提高了8.1%、6.3%、4.6%;
26、4、改进yolov5s定位loss,在yolov5s的定位loss中添加高斯沃瑟斯坦距离,进行一定比例的融合,增强检测模型对小目标缺陷的位置偏差,相比于yolov5s原模型precision、recall、map分别提高了7.8%、8.0%、4.7%;
27、5、改进yolov5s的头部,添加se自适应注意力模块,增强检测模型的分类和定位精度,相比于yolov5s原模型precision、recall、map分别提高了2.9%、7.3%、2.2%。
1.一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述获取太阳能电池板数据集,包括获取太阳能电池板图像,对所述太阳能电池板图像进行增强、缺陷标注。
3.根据权利要求1所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述改进yolov5s模型的动态头部dyhead框架,包括采用dconv替换所述动态头部dyhead框架中的conv。
4.根据权利要求3所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述改进yolov5s模型的动态头部dyhead框架,包括:将yolov5s模型头部的conv、c3模块和concat模块全部替换成动态头部dyhead框架的conv;
5.根据权利要求1所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述改进yolov5s主干网络的c3模块,包括将感受野增强模块rfi加入到c3模块中。
6.根据权利要求5所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述改进yolov5s主干网络的c3模块,是将所述感受野增强模块rfi代替yolov5s中c3模块的瓶颈。
7.根据权利要求5或6所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述感受野增强模块rfi包括基于扩展卷积的多分支和采集加权层。
8.根据权利要求1所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述改进yolov5s模型的定位loss,包括在所述定位loss中添加高斯沃瑟斯坦距离,并进行一定比例的融合,所述比例范围是0~1。
9.根据权利要求4所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,改进yolov5s模型的头部网络层,包括在所述头部网络层添加se自适应注意力模块。
10.根据权利要求9所述的一种基于改进yolov5s的高精度太阳能电池板缺陷检测方法,其特征在于,所述se自适应注意力模块的构建方法如下:将每个学习到的过滤器都与接受域一起操作,并使用全局平均池来生成通道统计信息,计算公式如下:其中,zc为统计量z的第c个元素,fsq为全局空间信息转换公式,uc为转换输出u在第c个单元的转换输出,h;w分别高空间维度;宽空间维度,i;j分别为高空间维度;宽空间维度的变量;选择s型激活门控机制对自适应进行再校正,计算公式如下:s=fex(z,w)=σ(w2δ(w1z));其中,δ为激活函数relu;w1、w2分别用于降维和升维的两个全连接层权重。