基于卷积神经网络的太阳能电池片断栅缺陷检测方法与流程

文档序号:15494071发布日期:2018-09-21 21:16阅读:644来源:国知局

本发明涉及图像处理与计算机视觉技术领域,特别涉及一种基于密集连接卷积神经网络的太阳能电池片断栅缺陷检测方法。



背景技术:

太阳能电池片中的断栅缺陷不仅会减少电池片的使用寿命而且会影响太阳能电池片进行光电转换的转换效率,因此对太阳能电池片进行缺陷检测是太阳能电池片质量控制的重要一步。缺陷在可见光条件下不容易被人眼发现,而电致发光成像技术能够帮助突出缺陷区域因此被广泛的用于太阳能电池片成像。近年来,随着机器视觉技术日趋成熟,越来越多的制造企业开始摆脱人眼缺陷检测而采用机器视觉算法来帮助生产线实现缺陷检查、测量和自动识别等功能,以提高效率并降低成本,从而实现生产效益最大化。

目前基于机器视觉的太阳能电池片外部缺陷检测算法研究还较少,大多研究集中于对隐裂缺陷的检测,而其中针对断栅缺陷检测的检测算法更是少之又少,目前可查的只有两种算法。已有的缺陷检测算法多利用电致发光成像中缺陷图像的灰度值差异和形状差异来识别缺陷图像,但是对于背景干扰大、对比度低的多晶硅太阳能电池片却很难准确识别。对于多晶硅太阳能电池片断栅缺陷的检测算法有两种,一种是傅里叶图像重建组合算法,一种是基于谱聚类的监督分类算法。傅里叶图像重建算法是建立在缺陷区域亮度低于背景区域且缺陷形状表现为线性或者柱形的条件下的,检测效果严重依赖于重建图像的阈值。基于谱聚类的监督算法是首先对每个像素提取的特征进行谱聚类分为缺陷特征和非缺陷特征,然后测试时通过距离计算区分缺陷像素和无缺陷像素,完成对目标缺陷的检测的,此方法依赖于提取特征好坏,虚警率较高。



技术实现要素:

为了降低传统断栅检测的虚警率,提高太阳能电池片中断栅检测的效率和正确率,本发明提供一种基于卷积神经网络的太阳能电池片断栅缺陷检测方法,如图1,包括:

s1、将采集到的太阳能电池片图片进行清洗,并分为训练集和测试集;

s2、使用水平积分投影方法提分别取出训练集和测试集的感兴趣区域(regionofinterest,roi),然后将训练集和测试集的感兴趣区域分别分成若干个图像块;

s3、根据图像块的中心区域含有的缺陷像素的数量,将训练集的图像块分为正样本和负样本,并对正样本进行数据增强、对负样本进行随机采样;

s4、将正样本和负样本输入密集连接卷积神经网络,训练得到一个基于图像块的二分类器;

s5、将测试集的图像块输入基于图像块的二分类器,得到分类结果,并根据分类结果计算连通区域,剔除离散的图像块位置;

s6、根据图像块位置,定位缺陷位置并标记在测试图上,绘出太阳能电池片缺陷位置的外接矩形。

优选的,所述使用水平积分投影方法分别提取出训练集和测试集的感兴趣区域包括:根据水平投影的计算公式计算出训练集和测试集的太阳能电池片图像的水平投影曲线,根据水平投影曲线中灰度值的变化确定太阳能电池片的边缘宽度tp,太阳能电池片的边缘宽度tp与太阳能电池板的母线宽度bl之间的宽度或者两条太阳能电池板的母线之间的宽度为感兴趣区域的宽度tr。

优选的,水平投影曲线计算公式为:

其中,h(y)表示图像宽为y处的投影值,m表示图像的长,n表示图像的宽,g(i,y)表示图像宽为y、长为i处的灰度值。

优选的,根据水平投影曲线中灰度值的变化确定训练集和测试集中太阳能电池片边缘宽度tp,表示为:

其中,g(tr+j+tp)表示在位置(tr+j+tp)处的灰度值,bl表示母线的宽度,tp表示电池板边缘的宽度,tr表示感兴趣区域的宽度,n表示太阳能电池片图像的宽,图像的大小为m×n。

优选的,使用滑动窗口将感兴趣区域分成若干个图像块,所述滑动窗口以滑动步长为滑动窗口长度的一半的滑动规则来获取图像块,其中滑动窗口的尺寸由统计的缺陷宽度均值确定。

优选的,步骤s3包括:

统计图像块的中心区域被标注缺陷像素的个数占据中心区域总像素的比例,若缺陷像素的数量超过中心区域总像素的一半,则将这个图像块作为正样本,否则视为负样本;

对正样本进行数据增强处理,同时对负样本进行随机采样,保证随机采样后的负样本的数量不超过正样本的3倍。

优选的,密集连接卷积神经网络的结构为:

基于图像块的二分类器由密集连接网络层、大小为3×3的第一卷积(convolution,conv)层、大小为8×8的第一池化(pooling)层、全连接(fullyconnected,fc)层和softmax层构成,其中:

全连接层,用于将所有输出数据汇总;

softmax层,用于输出每一类数据的概率;

密集连接网络包括3个密集连接块(denseblock),相邻两个密集连接块之间包括一个大小为1×1的卷积层和一个大小为2×2的池化层。

优选的,训练一个基于图像块的二分类器包括:

所述密集连接块有4层hl操作,每一层的输入拼接了前面所有层的输出,第l层的输出表示为:

fl=hl([f0,f1,...,fl-1]);

其中,fl表示l层中产生的特征图,hl操作由样本归一化层、整流线性激活层和3×3的卷积层构成。

优选的,根据分类结果计算连通区域,剔除离散的图像块位置,包括:设置概率阈值p,对于由softmax输出的概率值,令大于概率阈值p的图像的索引值为1,否则图像块的索引值为0,计算由索引值构成的矩形8领域连通域的索引值之和,若小于7则剔除该区域。

本发明首次将密集连接卷积神经网络原理运用到多晶硅太阳能电池片的断栅缺陷检测算法。通过深度学习设计的分类器,能够很好的自主学习缺陷图像特征,摈弃了人为设计特征的不足,同时适用于复杂背景;本发明有效的解决了工业缺陷数据集数据量欠缺的问题,同时获取了图片中更加详细的信息,改善了多晶硅太阳能电池片断栅缺陷背景复杂、对比度低、难检测的问题。

附图说明

图1为本发明基于卷积神经网络的太阳能电池片断栅缺陷检测方法的流程图;

图2为本发明感兴趣区域提取示意图;

图3为本发明密集连接卷积神经网络分类器的结构图;

图4为本发明多晶硅太阳能电池片断栅缺陷检测结果图。

具体实施方式

下面将结合附图,对本发明的优选实施例进行详细的描述。

本发明提供一种基于卷积神经网络的太阳能电池片断栅缺陷检测方法,如图1,包括:

s1、将采集到的太阳能电池片图片进行清洗,并分为训练集和测试集;

s2、使用水平积分投影方法分别提取出训练集和测试集的感兴趣区域rio,然后将训练集和测试集的感兴趣区域分别分成若干个图像块;

s3、根据图像块的中心区域含有的缺陷像素的数量,将训练集的图像块分为正样本和负样本,并对正样本进行数据增强、对负样本进行随机采样;

s4、将正样本和负样本输入密集连接卷积神经网络,训练得到一个基于图像块的二分类器;

s5、将测试集的图像块输入基于图像块的二分类器,得到分类结果,并根据分类结果计算连通区域,剔除离散的图像块位置;

s6、根据图像块位置,定位缺陷位置并标记在测试图上,绘出太阳能电池片缺陷位置的外接矩形。

进一步的,测试集的图像块输入基于图像块的二分类器后,基于图像块的二分类器判断测试集的每一个图像块属于正样本还是负样本,并计算正样本和负样本在所有图像块中的比例。

优选的,所述使用水平积分投影方法分别提取出训练集和测试集的感兴趣区域包括:根据水平投影的计算公式计算出训练集和测试集的太阳能电池片图像的水平投影曲线,如图2,根据水平投影曲线中灰度值的变化确定太阳能电池片的边缘位置tp,太阳能电池片的边缘位置tp与太阳能电池板的母线位置bl之间的位置或者两条太阳能电池板的母线之间的位置为感兴趣区域tr。

优选的,水平投影曲线计算公式为:

其中,h(y)表示图像宽为y处的投影值,m表示图像的长,n表示图像的宽,g(i,y)表示图像宽为y、长为i处的灰度值。

优选的,太阳能电池板在拍照过程中有可能发生错位,如图2中,根据图像的水平投影图与图像对应,可以根据母线的位置bl得到太阳能电池板边缘的宽度tp,表示为:

其中,g(tr+j+tp)表示在位置(tr+j+tp)处的灰度值,bl表示母线的宽度,tp表示太阳能电池板边缘的宽度,tr表示感兴趣区域的高度,n表示图像的宽度。

在生产线中,tr和bl的宽度值是已知的,因此得到

tp的宽度后可以找到rio区域。

优选的,步骤s3包括:

统计图像块的中心区域被标注缺陷像素的个数占据中心区域总像素的比例,若缺陷像素的数量超过中心区域总像素的一半,则将这个图像块作为正样本,否则视为负样本;

对正样本进行数据增强处理,同时对负样本进行随机采样,保证负样本的数量不超过正样本的3倍;其中数据增强操作包括镜像变换、上下翻转、左右翻转、旋转等。

如图2,本发明实施例中,数据集中太阳能电池片图像的大小为1024×1024,根据统计的断栅缺陷尺度的大小分布,设定滑动窗口的大小为32×32,为保证更加精确的定位同时增加样本量,滑动步长为16获取图像块,所以通过滑动窗口得到的图像块的大小为32×32,中心区域可取以图像块的中心位置为中心的16×16的区域,即中心区域的大小为16×16,当中心区域的的缺陷像素超过中心区域的一半8×8时,这个图样块作为正样本,否则作为负样本。

优选的,密集连接卷积神经网络的结构,如图3,为:

如图3,所述基于图像块的二分类器由密集连接网络层、大小为3×3的第一卷积层、大小为8×8的第一池化层、全连接层和softmax层构成,其中:

全连接层,用于将所有输出数据汇总;

softmax层,用于输出每一类数据的概率;

密集连接网络层包括3个密集连接块,相邻两个密集连接块之间包括一个大小为1×1的第二卷积层和一个大小为2×2的第二池化层;

所述密集连接块有4层hl操作,每一层的输入拼接了前面所有层的输出,第l层的输出表示为:

fl=hl([f0,f1,...,fl-1]);

其中,fl表示l层中产生的特征图,hl操作由样本归一化层(batchnormalization,bn)、整流线性激活层(rectifiedlinearunits,relu)和3×3的卷积层构成。

优选的,根据分类结果计算连通区域,剔除离散的图像块位置,包括:设置概率阈值p,对于由softmax输出的概率值,令大于概率阈值p的图像的索引值为1,否则图像块的索引值为0,计算由索引值构成的矩形8领域连通域的索引值之和,若小于7则剔除该区域。

图4左边为检测结果,右边为工人标注真实断栅的位置;从图中可以看出,该方法可以在复杂背景以及对比度低的情况下,检测出断栅缺陷,并能达到很好的检测效果。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。

以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1