本发明属于太阳能电池技术领域,更具体地,涉及一种基于cis图像采集的太阳能电池片缺陷检测系统和方法。
背景技术:
太阳能作为一种免费、清洁、安全、丰富的可再生能源越来越受到人们的青睐。而太阳能电池作为将太阳辐射进行光热电转化或者光电直接转化的器件,在制造及检测上的研究日益热门。
太阳能电池片作为太阳能电池的核心器件,其制造工艺的质量直接影响太阳电池的发电效率、短路电流、断路电压、使用寿命等。制造工艺过程中需要经历切割与制绒两部分,再经过化学腐蚀与清洗出去表面损伤层。因为太阳能电池片易碎,在生产加工过程(表面腐蚀、制绒、扩散、表面成膜、网印、钝化、烧结等)中,可能由于某些工艺缺陷或者生产环境的影响造成太阳能电池片表面的缺陷。因此研究出实时性好,识别效率高,能识别多种缺陷的太阳能电池片检测系统和方法是很有必要的。
技术实现要素:
针对现有技术的缺陷,本发明的目的在于提供一种基于cis图像采集的太阳能电池片缺陷检测系统,旨在解决太阳能电池片缺角、崩边、孔洞、污物的检测问题。
本发明提供了一种基于cis图像采集单元的太阳能电池片缺陷检测系统,包括:传送装置,图像采集装置和数据处理模块;图像采集装置位于传送装置的正上方,图像采集装置与数据处理模块连接;太阳能电池片通过所述传送装置进行运输,当太阳能电池片经过所述图像采集装置下方时,图像采集装置对太阳能电池片进行图像采集并传输给数据处理模块,所述数据处理模块对采集的图像进行缺陷分析检测。
更进一步地,图像采集装置包括:cis图像采集单元和两个条形光源,cis图像采集单元设置在传送装置的正上方,两侧各安装有一个条形光源,用于使得被采集的太阳能电池片的图像亮度均匀。
更进一步地,cis图像采集单元包括:fpga模块,分别与fpga模块连接的cis图像采集模块、模数转换模块、存储模块、采集速度匹配模块和图像输出模块,以及用于提供工作电源的电源模块;所述cis图像采集模块用于对太阳能电池片进行图像采集并输出一系列模拟数据;所述模数转换模块用于将模拟数据转化为数字信号;所述fpga模块用于实现整个系统的时序控制;所述采集速度匹配模块用于根据传送装置的传送速度调整cis图像模块采集图像速率;所述存储模块用于缓存采集到的数字图像数据;所述图像输出模块用于将采集到的太阳能电池片图像发送给所述数据处理模块。
本发明还提供了一种基于cis图像采集单元的太阳能电池片缺陷检测方法,包括下述步骤:
(1)通过图像采集装置对太阳能电池片进行图像采集;
(2)根据采集的图像对太阳能电池片进行校正获得校正后的太阳能电池片图像;
(3)对所述太阳能电池片图像进行缺角处理或崩边处理后获得缺陷检测结果。
更进一步地,在步骤(2)后还包括:(2.0)对所述太阳能电池片图像进行去除电极和栅线的处理后获得标准化的太阳能电池片灰度图。其中,步骤(2.0)可以在步骤(2)之后步骤(3)之前,也可以在步骤(3)之后。
更进一步地,所述去除电极和栅线的处理具体为:
(2.01)对太阳能电池片校正后图像的图像进行灰度化处理后获得太阳能电池片灰度图;
(2.02)在灰度图上,利用形态学开运算去除水平栅线,获得去除水平栅线后的太阳能电池片灰度图;
(2.03)在去除水平栅线后的太阳能电池片灰度图上,利用最大类间方差法对去除水平栅线后的太阳能电池片进行二值化处理,利用水平扫描定位电极并去除电极,获得去除水平栅线和电极的太阳能电池片灰度图;
(2.04)在去除水平栅线和电极的太阳能电池片灰度图上,利用水平扫描定位竖直栅线和边界线并去除,获得标准化的太阳能电池片灰度图。
更进一步地,在步骤(2.0)后还包括:(2.1)对标准化的太阳能电池片灰度图像进行孔洞处理或污物处理后获得缺陷检测结果。
更进一步地,所述孔洞处理具体为:
(2.11)在标准化的太阳能电池片灰度图上,利用找轮廓的方法寻找孔洞与污物的位置。
(2.12)利用(2.11)找到的位置,计算位置区域的灰度值均值,与设定阈值进行比较,判断缺陷为孔洞还是污物,并分别统计两者的个数。
更进一步地,所述污物处理具体为:
(2.11)在标准化的太阳能电池片灰度图上,利用找轮廓的方法寻找孔洞与污物的位置。
(2.12)利用(2.11)找到的位置,计算位置区域的灰度值均值,与设定阈值进行比较,判断缺陷为孔洞还是污物,并分别统计两者的个数。
更进一步地,步骤(2)具体为:
s21对采集的太阳能电池片图像进行灰度化处理后获得太阳能电池片灰度图;
s22在灰度图上通过搜索获得表示太阳能电池片的四条边界的像素点;其中,通过按照上边界、下边界、左边界和右边界的顺序进行搜索;
s23对四条边界的像素点进行筛选并获得太阳能电池片的四条校正边界;
s24计算出四条校正边界之间的交点,即太阳能电池片的四个角点;
s25根据太阳能电池片的四个角点与设定的四个角点获得透视变换矩阵,并通过所述透视变换矩阵对采集的图像进行透视变换后获得太阳能电池片校正后的图像。
更进一步地,步骤(3)中所述缺角处理具体为:
(3.11)对太阳能电池片校正后图像的图像进行灰度化处理后获得太阳能电池片灰度图;
(3.12)在灰度图上,利用三种步长搜索方式从水平向右和垂直向下检测太阳能电池片左上角是否缺角;
(3.13)在灰度图上,利用三种步长搜索方式从水平向左和垂直向下检测太阳能电池片右上角是否缺角;
(3.14)在灰度图上,利用三种步长搜索方式从水平向右和垂直向上检测太阳能电池片左下角是否缺角;
(3.15)在灰度图上,利用三种步长搜索方式从水平向左和垂直向上检测太阳能电池片右下角是否缺角。
更进一步地,步骤(3)中所述崩边处理具体为:
(3.11)对太阳能电池片校正后图像的图像进行灰度化处理后获得太阳能电池片灰度图;
(3.12)在灰度图上,对左右边界进行投影,分别记录崩边区域像素点的个数;
(3.13)在灰度图上,对上下边界进行投影,分别记录崩边区域像素点的个数;
(3.14)比较获得崩边区域像素点的个数与设定阈值,判断是否为崩边,并且统计崩边个数;
(3.15)考虑到太阳能电池片四个角是缺角的情况,确定四条边的连续边界的起点和终点后,重复步骤(3.12)-(3.14)。
通过本发明所构思的以上技术方案,与现有技术相比,由于利用cis图像采集系统进行采图,能够提高图像采集的速率,增强实时性,并且降低成本的有益效果;由于本发明提供的缺陷检测方法,能够满足多种缺陷的检测,通用性较高,并且在保证检测速率的情况下,检测的准确率较高,很好的满足了现在工业检测领域的需求。
附图说明
图1为本发明基于cis图像采集的太阳能电池片缺陷检测系统的示意图;
图2为本发明基于cis图像采集的太阳能电池片缺陷检测方法的控制流程示意图;
图3为本发明中cis图像采集单元的原理框图;
图4为本发明中太阳能电池片的校正方法流程示意图;
图5为本发明中太阳能电池片缺角的检测方法流程示意图;
图6为本发明中太阳能电池片崩边的检测方法流程示意图;
图7为本发明中太阳能电池片孔洞与污物的检测方法流程示意图;
图8为本发明中3个像素点组成的检测模板扫描示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明涉及一种基于cis(contactimagesensor,接触式图像传感器)图像采集系统的太阳能电池片缺陷检测系统和方法。如图1所示,本发明提供的基于cis图像采集单元的太阳能电池片缺陷检测系统包括:传送装置1,图像采集装置2和数据处理模块3;图像采集装置2位于传送装置1的正上方,同时图像采集装置2通过数据线与数据处理模块3连接。太阳能电池片通过传送装置1进行运输,当太阳能电池片经过图像采集装置2下方时,图像采集装置2对太阳能电池片进行图像采集,然后将图像传输给数据处理模块3,数据处理模块3对其进行缺陷分析检测。
图像采集装置2包括cis图像采集单元21和两根均匀条形光源22;图像采集装置内部上方正中央安装有cis图像采集单元21,在装置内部两侧各安装有一根均匀条形光源。如图2,图像采集装置21包括:cis图像采集模块、模数转换模块、fpga模块(field-programmablegatearray,现场可编程门阵列)、存储模块、电源模块、采集速度匹配模块、图像输出模块。系统工作时,cis图像采集模块对下方经过的太阳能电池片进行图像采集并输出一系列模拟数据,经过模数转化器转化为数字信号,fpga负责整个系统的时序控制,采集速度匹配模块根据传送装置的传送速度调整cis图像模块采集图像速率,fpga将采集到的数字图像数据缓存到存储模块中,然后通过图像输出模块将采集到的太阳能电池片图像发送到数据处理模块,电源模块为整个系统供电,需要外部5v供电。均匀条形光源是一种各发光点光照强度一样的条形光源,目的在于使太阳能电池片图像亮度均匀,避免因为图像各部分亮度不一致,而影响之后的检测结果。
本发明通过图像采集装置进行图像采集,提高实时性且降低成本,本系统和方法检测的太阳能电池片的缺陷包括:缺角、崩边、孔洞、污物,检测的缺陷种类多且保证了检测效率。
在本发明提供的基于cis图像采集单元的太阳能电池片缺陷检测系统中,通过cis图像采集单元的扫描,获得太阳能电池片的彩色图像,通过对彩色图像进行灰度化处理。然后对灰度图进行四条边界搜索,确定边界交点(角点),通过透视变化,获得校正后的太阳能电池片的图像。然后分别对太阳能电池片四个角进行扫描,判断其是否缺角且统计缺角个数。然后分别对太阳能电池片四条边进行扫描,判断其是否崩边且统计崩边个数。然后通过形态学方法去除太阳能电池片的水平栅线、竖直栅线、电极、边界线,最后通过找轮廓方法,寻找孔洞和污物,根据灰度值判断孔洞与污物且分别统计个数。
本发明还提供了一种基于cis图像采集单元的太阳能电池片缺陷检测方法,具体步骤如下:
(1)通过图像采集装置对太阳能电池片进行图像采集
图像采集装置是通过cis图像采集单元进行图像采集,cis图像采集单元扫描一次能得到若干行图像信息(每一次扫描的行数根据传送装备的速度和采集图像的分辨率设定),从而得到了太阳能电池片的图像。
(2)校正太阳能电池片
s21对采集的太阳能电池片图像进行灰度化处理后获得太阳能电池片灰度图。
s22在灰度图上通过搜索获得表示太阳能电池片的四条边界的像素点;其中,通过按照上边界、下边界、左边界和右边界的顺序进行搜索。
s23对四条边界的像素点进行筛选并获得太阳能电池片的四条校正边界;
s24计算出四条校正边界之间的交点,即太阳能电池片的四个角点。
s25根据太阳能电池片的四个角点与设定的四个角点获得透视变换矩阵,并通过所述透视变换矩阵对采集的图像进行透视变换后获得太阳能电池片校正后的图像。
(3)检测太阳能电池片缺角
s31对太阳能电池片校正后图像的图像进行灰度化处理后获得太阳能电池片灰度图。
s32在灰度图上,利用三种步长搜索方式从水平向右和垂直向下检测太阳能电池片左上角是否缺角。
s33在灰度图上,利用三种步长搜索方式从水平向左和垂直向下检测太阳能电池片右上角是否缺角。
s34在灰度图上,利用三种步长搜索方式从水平向右和垂直向上检测太阳能电池片左下角是否缺角。
s35在灰度图上,利用三种步长搜索方式从水平向左和垂直向上检测太阳能电池片右下角是否缺角。
(4)检测太阳能电池片崩边
s41对太阳能电池片校正后图像的图像进行灰度化处理后获得太阳能电池片灰度图。
s42在灰度图上,对左右边界进行投影,分别记录崩边区域像素点的个数。
s43在灰度图上,对上下边界进行投影,分别记录崩边区域像素点的个数。
s44比较获得崩边区域像素点的个数与设定阈值,判断是否为崩边,并且统计崩边个数。
s45考虑到太阳能电池片四个角是缺角的情况,确定四条边的连续边界的起点和终点后,重复上述s42-s44步骤。
(5)检测太阳能电池片孔洞与污物
s51对太阳能电池片校正后图像的图像进行灰度化处理后获得太阳能电池片灰度图。
s52在灰度图上,利用形态学开运算去除水平栅线,获得去除水平栅线后的太阳能电池片灰度图。
s53在去除水平栅线后的太阳能电池片灰度图上,利用最大类间方差法(ostu算法)对去除水平栅线后的太阳能电池片进行二值化处理,利用水平扫描定位电极并去除电极,获得去除水平栅线和电极的太阳能电池片灰度图。
s54在去除水平栅线和电极的太阳能电池片灰度图上,利用水平扫描定位竖直栅线和边界线并去除它们,获得标准化的太阳能电池片灰度图。
s55在标准化的太阳能电池片灰度图上,利用找轮廓的方法寻找孔洞与污物的位置。
s56利用s55找到的位置,计算位置区域的灰度值均值,与设定阈值进行比较,判断缺陷为孔洞还是污物,并分别统计两者的个数。
本发明提供的基于cis图像采集单元的太阳能电池片缺陷检测系统和方法,至少能带来以下有益效果:在本发明中,利用cis图像采集单元进行图像采集,提高了图像采集的速率,增强了实时性,并且降低了成本。同时,本发明提供的缺陷检测方法,能够满足多种缺陷的检测,通用性较高,并且在保证检测速率的情况下,检测的准确率较高,很好的满足了现在工业检测领域的需求。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面结合附图和实施例对本发明进行具体的描述。下面描述中的附图仅仅是本发明的一些实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
如图1所示,本发明提供一种基于cis图像采集单元的太阳能电池片缺陷检测系统。从图中可以看出,本系统包括:传送装置1,图像采集装置2和数据处理模块3。具体流程如下:太阳能电池片通过传送装置进行传送,通过装置箱下方时,cis图像采集管对太阳能电池片进行图像采集,同时通过usb3.0将图像传给数据处理模块,为了之后的缺陷检测。在图像采集过程中,传送装置通过电缆给cis图像采集单元实时传输当前传送装置的速度,以此来调节cis图像采集管的采集频率。
如图2所示,本发明提供一种基于cis图像采集单元的太阳能电池片缺陷检测方法。从图中可以看出,本发明包括六个过程:校正太阳能电池片、检测太阳能电池片缺角、检测太阳能电池片崩边、去除太阳能电池片电极和栅线、检测太阳能电池片孔洞与污物。
如图4所示,校正太阳能电池片的具体步骤包括:
太阳能电池片在传送装置上是任意摆放的,导致cis图像采集单元采集到的图像中太阳能电池片的位置与方向也是任意的。为了之后更方便的处理图像,所以需要将太阳能电池片在图像中的区域截取出来,并且校正。
s21读取太阳能电池片图像,并对其进行灰度化处理。
s22在灰度图上分别搜索查找太阳能电池片上、下、左、右四条边界。
在搜索四条边界时,搜索的方式分为三种方式:大步长搜索、小步长搜索、逐像素搜索。大步长搜索即为按指定较大行数进行搜索,通常指定较大行数为10的整数倍,比如:10行;小步长搜索即为按指定较小行数进行搜索,通常小步长行数为大步长的行数一半,比如:5行;逐像素搜索即为按1行数进行搜索。通过三种不同步长搜索方式查找边界,既能提高搜索效率,同时也能保证搜索的准确性。
首先搜索上边界,如果搜索的起始像素点的灰度值小于边界灰度阈值(即为图像灰度均值),就判断起始像素点在太阳能电池片区域内,采用逐像素搜索向上搜索直至找到灰度值小于边界灰度阈值的像素点,即为上边界点。如果搜索的起始像素点不在太阳能电池片区域内,先采用大步长搜索直至像素点的灰度值小于边界灰度阈值,此时搜索位置已在太阳能电池片内,再采用小步长搜索向上搜索直至像素点灰度值大于边界灰度阈值,此时搜索位置已在太阳能电池片外,最后采用逐像素搜索向下搜索直至找到灰度值小于边界灰度阈值的像素点,即为上边界点。然后水平方向搜索,获得一系列的上边界点。
计算每个上边界点的梯度g(x,y)=dx(i,j)+dy(i,j),其中dx(i,j)=i(i+1,j)-i(i,j),dy(i,j)=i(i,j+1)-i(i,j),(i,j)为像素点的坐标,i为该像素点的灰度值。并且将这些边界点按照梯度大小进行升序排列,选择梯度的中值的像素点作为k-means聚类算法的初始质心,然后计算搜索出的上边界点与质心的欧式距离,然后与距离阈值(用于筛选出有效上边界点,通常根据实际所需精度选取)进行比较,若小于距离阈值,则该点为有效点。通过这样可以去除异样的上边界点(噪声点、孤立点),获得有效的上边界点。利用有效的上边界点进行最小二乘法拟合直线,求得直线即为上边界。
对于下边界,也是利用三种步长搜索,只是先向下搜索,再水平方向搜索获得一系列的下边界点,之后利用k-means聚类算法得到有效下边界点,然后利用最小二乘法拟合直线,获得下边界。
对于左边界,也是利用三种步长搜索,只是先向左搜索,再垂直方向搜索获得一系列的左边界点,之后利用k-means聚类算法得到有效左边界点,然后利用最小二乘法拟合直线,获得左边界。
对于右边界,也是利用三种步长搜索,只是先向右搜索,再垂直方向搜索获得一系列的下边界点,之后利用k-means聚类算法得到有效右边界点,然后利用最小二乘法拟合直线,获得右边界。
s23校正四条边界。令四条边界的直线方程为y=k1x+b1,y=k2x+b2,y=k3x+b3,y=k4x+b4(k1,k2,k3,k4为上下左右边界的斜率,b1,b2,b3,b4为上下左右边界的截距)。
根据夹角公式tanθ1=(k1-k2)/(1+k1k2)(θ1为上下边界的夹角),判断上下边界的平行情况,若θ1小于角度阈值(用于判断上下边界的平行情况,通常取5°),则无需校正上下边界;若θ1大于角度阈值,则令km=(k3+k4)/2(km为左右边界斜率的均值),通过上下边界与左右边界的垂直程度,即||k1km||与||k2km||,若||k1km||大于||k2km||,则上边界更垂直于左右边界,则下边界方程为y=k1x+b2;若||k1km||小于||k2km||,则下边界更垂直于左右边界,则上边界方程为y=k2x+b1;通过这样校正了上下边界。
同理,通过判断左右边界夹角以及与上下边界的垂直情况,可以校正左右边界。
s24计算出四条边界之间的交点,即太阳能电池片的四个角点。
已知任意两条直线y=k1x+b1和y=k2x+b2,且k1≠0∪k2≠0,(k1,k2分别为两条直线的斜率,b1,b2分别为两条直线的截距)则两条直线的交点为:
x0=(b2-b1)/(k2-k1),y0=(k1b2-k2b1)/(k1-k2)
以此来求出太阳能电池片的四个角点。
s25使用计算出的四个角点与校正后的四个角点获得透视变换矩阵,并且进行透视变换,得到太阳能电池片校正后的图像。
校正后的四个角点是固定的,分别为(0,0),(0,width-1),(height-1,0),(width-1,heigt-1)(width,height分别为校正图像的宽高)。
透视变换是将图片投影到一个新视面,也称作投影映射。通用的变换公式为:
如图5所示,检测太阳能电池片缺角的具体步骤包括:
s31读取太阳能电池片校正后的图像,并对其进行灰度化处理。
在检测缺角时,会利用到s22中的三种搜索方式:大步长搜索、小步长搜索、逐像素搜索。
s32检测太阳能电池片左上角是否缺角。
首先以图8的3个像素点组成的检测模板垂直向下进行逐像素扫描检测,若起始模版的3个像素点灰度值均小于缺角阈值(该阈值是用来判断缺角边界点,通常取值为大于图像灰度均值即可),则判断该点为缺角的边界点a。然后从边界点a开始以大步长垂直向下进行扫描检测,直至像素点的灰度值小于缺角阈值,此时搜索位置已在太阳能电池片内,再采用小步长搜索垂直向上搜索直至像素点灰度值大于缺角阈值,此时搜索位置已在太阳能电池片外,最后采用逐像素搜索垂直向下搜索直至找到灰度值小于设定阈值的像素点,即为下边界缺角边界点,获得缺角的长度。同时从边界点a开始以大步长水平进行扫描检测,直至像素点的灰度值小于缺角阈值,此时搜索位置已在太阳能电池片内,再采用小步长搜索水平向左搜索直至像素点灰度值大于缺角阈值,此时搜索位置已在太阳能电池片外,最后采用逐像素搜索水平向右搜索直至找到灰度值小于缺角阈值的像素点,即为右边界缺角边界点,获得缺角的宽度。利用获得的缺角的长度以及宽度,就能将缺角标记。
s33检测太阳能电池片右上角是否缺角。
类似s32中检测缺角方法,此时检测模板从右上角先水平向左扫描,然后垂直向下扫描,如图8。
s34检测太阳能电池片左下角是否缺角。
类似s32中检测缺角方法,此时检测模板从左下角先水平向右扫描,然后垂直向上扫描,如图8。
s35检测太阳能电池片右下角是否缺角。
类似s32中检测缺角方法,此时检测模板从右下角先水平向左扫描,然后垂直向上扫描,如图8。
如图6所示,检测太阳能电池片崩边的具体步骤包括:
s41读取太阳能电池片校正后的图像,并对其进行灰度化处理。
s42对左右边界进行投影,分别统计崩边区域像素点的个数。
s43对上下边界进行投影,分别统计崩边区域像素点的个数。
s44比较获得崩边区域像素点的个数与崩边阈值(该阈值是用来判断崩边边界点,通常取值为大于图像灰度均值即可),判断是否为崩边,并且统计崩边个数。
s45考虑到太阳能电池片四个角是缺角的情况,确定四条边的连续边界的起点和终点。对上下左右边界进行投影,分别统计崩边区域像素点的个数。比较获得崩边区域像素点的个数与崩边阈值(该阈值是用来判断是否崩边,取值根据实际精度设置,通常取100),判断是否为崩边,并且统计崩边个数。
通过对边界进行投影,我们能通过投影后像素点的个数直观有效地判断边界是否崩边。当边界出现崩边后,投影后像素点个数明显会增多,之后根据统计直方图就可以确定异常区域(即为直方图像素点增多的区域),统计出异常区域像素点的个数,然后与崩边阈值进行比较,判断该异常区域是否为崩边区域。通过以上的做法,能一定程度上加快检测速度,节约检测时间,提高检测效率。
如图7所示,检测太阳能电池片孔洞与污物的具体步骤包括:
s51读取太阳能电池片校正后的图像,并对其进行灰度化处理。
s52利用形态学开运算去除水平栅线。
形态学开运算即为首先对图像进行腐蚀运算,然后再进行膨胀运算。腐蚀运算是消除物体的所有边界点的一种过程,其结果是使剩下的物体沿其内边缘比原来物体小一个像素。膨胀运算是将与物体接触的所有背景点合并到该物体的过程。
利用形态学去除栅线后便于后面检测太阳能表面的孔洞和污物,避免栅线干扰后面的检测,从而影响检测的准确率,去除栅线后能更便利地检测出孔洞和污物。
s53利用最大类间方差法(ostu算法)对去除水平栅线后的太阳能电池片图像进行二值化处理,利用水平扫描定位电极并去除电极。
最大类间方差法(ostu算法)的原理:对于一幅图像,设前景与背景的分割阈值为t时,前景点占图像比例为w0,均值为u0,背景点占图像比例为w1,均值为u1。则整个图像的均值为u=w0*u0+w1*u1。建立目标函数g(t)=w0*(u0-u)2+w1*(u1-u)2,g(t)就是当分割阈值为t时的类间方差表达式。ostu算法是的g(t)取得全局最大值,当g(t)为最大时所对应的t成为最佳阈值。
对于太阳能电池片校正后的灰度图而言,太阳能电池片区域为前景,剩余部分为背景。当获得最佳阈值g(t)后,将图像中每个像素与g(t)比较,若大于g(t),则令该点像素灰度值为1;若小于g(t),则令该像素点灰度值为0。通过这样即可获得图像的二值图。
太阳能电池片上有4根电极,分别位于电池片水平方向1/8、3/8、5/8、7/8处。当水平扫描过程中,首先从水平方向1/16处开始向右进行扫描,直至像素点灰度值为1,此时已经到达电极的左边界,继续向右进行扫描,直至像素点灰度值为0,此时已经到达电极的右边界,这样就定位到第一根电极。同理,定位剩余电极。
根据电极左右两边的临近区域的像素点的灰度值去补偿电极的像素点的灰度值,电极就被去除。
s54利用水平扫描定位竖直栅线和边界线并去除它们。
太阳能电池片上有3根竖直栅线,分别位于电池片水平方向1/4、1/2、3/4处。当水平扫描过程中,首先从水平方向1/5处开始向右进行扫描,直至像素点灰度值为1,此时已经到达电极的左边界,继续向右进行扫描,直至像素点灰度值为0,此时已经到达电极的右边界,这样就定位到第一根竖直栅线。同理,定位剩下的竖直栅线。
太阳能电池片上有2根边界线,分别左边界处、右边界处。当水平扫描过程中,首先从水平方向左边界处开始向右进行扫描,直至像素点灰度值为1,此时已经到达电极的左边界,继续向右进行扫描,直至像素点灰度值为0,此时已经到达电极的右边界,这样就定位到第一根边界线。同理,定位剩余边界线。
利用形态学运算去除竖直栅线与边界线。
s55利用找轮廓的方法找出孔洞与污物。
利用找轮廓的方法找图像中所有轮廓:1、对太阳能电池片的二值图像进行扫描,找到第一个没有归属的像素点(即为该像素点灰度值为1,且和周围八邻域的灰度均值大于0.5),设该像素点坐标为(x0,y0)。2、以(x0,y0)为中心,考虑(x0,y0)周围八邻域像素点(x,y),如果(x,y)满足生长准则(即该像素点灰度值为1,且和周围八邻域的灰度均值大于0.5),将(x,y)与(x0,y0)合并(在同一区域内),同时将(x,y)压入堆栈(一种存储数据的方式)。3、从堆栈中取出一个像素,把它作为(x0,y0)返回步骤2。4、当堆栈为空时,返回步骤1。5、重复步骤1-4直到图像中的每个点都有归属。
通过以上步骤就可以将二值图中所有轮廓找到,并且将轮廓大小与轮廓阈值(即为根据轮廓内像素点的个数判断是否为孔洞与污物,通常取值100)比较,若大于轮廓阈值,则判断为孔洞与污物,且获得它们的位置信息(中心,长,宽)。
s56计算出位置区域的灰度值,根据轮廓阈值判断缺陷是为孔洞还是污物,并统计个数。
利用s55中找出的位置信息,计算该区域内的灰度平均值,并且与孔污阈值(即为区别孔洞与污物的阈值,通常取背景灰度值与灰度最大值的均值,通常取125)进行比较,若大于孔污阈值,则判断为孔洞;若小于阈值,则判断为污物,并统计个数。
以上对发明的具体实施例进行了详细描述,但本发明并不限制于以上描述的具体实施例,其只是作为范例。对于本领域技术人员而言,任何对该系统进行的等同修改和替代也都在本发明的范畴之中。因此,在不脱离发明的精神和范围下所作出的均等变换和修改,都应涵盖在本发明的范围内。