王 伟,李 强
(西安工业大学 光电工程学院,西安710021)
近年来,太阳能电池片全自动串焊机以其独特的优势取代人工操作在工业现场中广泛应用,国内外的设备技术差距也逐渐缩小,国外的设备如德国帝目STRINGER的TT900其生产能力为4s/片,而国内大部分串焊机的生产能力为6s/片,破片率远高于国外,图像处理系统的差距是影响国内外设备生产能力及破片率的主要因素.
太阳能电池片自动串焊机的图像处理系统是非接触式测量电池片几何信息的核心,它测量的精度[1]、误差和时间影响太阳能电池片的破片率及生产成本,串焊后的电池片构成太阳能电池组件,焊带与主栅线对不准的焊接及生产效率影响电池组件的光电转换率及生产效率[2].文献[3]采用最小误差法对图像进行阈值分割,通过轮廓提取电池片轮廓,虽然能达到提取主栅线的目的,但其相机像素需提高;文献[4-5]通过分析亚像素的几种细分算法如几何方法、矩估计法和插值法来研究各自的优缺点和适用范围,其中几何方法对系统成像噪声、目标图像表面光洁度和灰度分布均匀程度等因素要求较高,否则计算出的误差较大;矩估计方法的定位精度比几何法好,但算法复杂度较高,计算时间较长;插值算法最为简单,速度快,精度虽不及其余算法高但可以满足本设计的系统精度要求.
本文提出一种可降低相机像素且满足精度要求的亚像素边缘提取法对电池片边缘进行提取,选取一种适用于定位的机器视觉标定算法,通过相机标定求出内参数,根据内参矩阵计算有效焦距并求出单个像素的实际尺寸,利用霍夫变换实现硅太阳能电池片的定位,采用掉角缺陷检测算法对不合格的电池片予以剔除,为太阳能电池片几何测量提供参考.
系统硬件主要包括电荷耦合元件(Charge Coupled Device,CCD)工业相机、定焦镜头及实验平台.实验平台如图1所示.
图1 实验平台Fig.1 Experimental platform
载物台主参数为200mm×200mm,工作距离为250mm,精度小于0.2mm.硬件系统如图2所示.
图2 硬件系统示意框图Fig.2 Hardware system schematic diagram
被测物采用125mm×125mm的单晶硅电池片,视场为140mm,要求检测精度小于0.20mm,故感光芯片的宽度W′需大于140/0.20=700个像素点,因此选用130万像素的黑白CCD相机.本文选用的CCD相机型号为北京维视数字图像技术有限公司的 MVC1000MF USB2.0接口CCD工业相机,其分辨率为1 280×1 024piexl,像素尺寸为5.2μm×5.2μm.传感器类型为数字面阵逐行扫描,传感器光学尺寸为1/2″,感光芯片的物理尺寸为6.4mm×4.8mm.
选择和CCD相机匹配的镜头需满足四个条件:焦距、视场角、像面尺寸及接口类型.
1)焦距f的选择
镜头焦距公式为
式中:D为工作距离;W′为感光芯片宽度;W为视场宽度.由D=250mm,W′=4.8mm,W=140 mm,按式(1)计算可得f=8.57mm.
2)视场角θ的选择
由直角三角形可知
式中:D=250mm;W=140mm.故视场角要大于43.6°.
3)像面尺寸及接口类型匹配
由于CCD相机的像面尺寸为1/2″,接口类型为C型,故镜头的像面尺寸为1/2″,接口类型为C型.镜头采用宾得(PENTAX)镜头,其主要参数为焦距 8.5mm、视场角 54.6°、相对通光孔径F1.4-C、接口C、像面尺寸1/2″.选择两处均为发光二极管(Light Emitting Diode,LED)白光的光源:①放置在载物台背面,采取背光式;②放置在镜头上的环形光源.
本文太阳能电池片主栅线提取的主要流程图及实现方法如图3所示.
相机标定流程图如图4所示.相机标定是计算机视觉系统不可缺少的前提和基础部分[1],本文采用张正友平面标定法,指在自标定与传统标定之间的一种妥协方法,考虑了镜头畸变及对高精度的设备没有特殊要求,比自标定法精度高.
图3 主栅线提取流程图Fig.3 Flow chart of busbar extraction
图4 相机标定流程图Fig.4 Flow chart of camera calibration
软件采用CVUT库环境,此环境可以通过调用OpenCV开源图像处理算法库在基础算法上迅速开始工作,且可以缩短应用程序的开发周期,消除C语言编程中常见的内存泄漏问题[6].求得畸变系数和摄像机内参数后,可用图像矫正函数cvUndistort2来进行矫正.
相机标定原理如图5所示.
图5 摄像机标定原理图Fig.5 Principle diagram of the camera calibration
确定空间平面的三维点M与摄像机平面二维点的映射,首先假设空间平面位于世界坐标系中三维点的齐次坐标M·=[X,Y,0,1]T与相机平面位于相机坐标系中二维点的齐次坐标m·=[u,v,1]T,在不同方向通过对定标板多次(三次以上)完整拍照且不需要知道定标板的运动方式,可直接获得该相机的内参矩阵和畸变系数,算法是选取平面标定,故坐标轴Z=0.
空间中点的映射为
式中:s为缩放因子;R为旋转矩阵;t为平移矩阵;A为相机内参矩阵;α和β分别为像素坐标系中U轴和V轴的尺度因子;γ为扭曲参数;大多数标准相机γ=0,u0和v0为光学中心主点的坐标.将式(3)简化为
其中H为单应性矩阵,描述空间平面三维点和摄像机平面二维点之间的关系.H矩阵列向量形式表示为
其中λ为缩放因子s的倒数,代入坐标点后有
因为选取的是平面标定令Z=0,所以旋转向量只有r1和r2,旋转矩阵R和平移矩阵t是每幅图像对应的外参数,空间平面的三维点可通过已知的棋盘格图像获取,摄像机平面的二维点可通过棋盘格的角点提取获得,所以每张图片都可以算出一个单应性矩阵H.
由式(5)可知
由式(8)可求解出相机的内参,因为内参矩阵有5个未知量但每张图片只可列出2个内参约束方程,故要求解5个未知量,理论上至少需要3张图片就可线性唯一解出A矩阵,图片越多对相机的内参评价越准确.
得到内参矩阵后,即可根据内参矩阵A(式(3))算出每幅图像对应的外参数.由初始参数将每张图像中的已知点根据求解出的内外参数重新投影回世界坐标系,通过全局参数优化函数建立非线性最小化模型,重新估计内外参,即可得到镜头的畸变参数.
Levenberg-Marquardt迭代法,全局参数优化函数[7]为
本文图像处理系统应用于在线检测中,故要求算法的准确性好,计算量小,用时较短,故采用多项式插值细分算法.像素级精度粗定位,选用Sobel算子由原始图像f(i,j)计算梯度图像R(i,j).
对于已确定边缘点(m,n),在梯度图像R(i,j),X方向上取三点R(m-1,n),R(m,n),R(m+1,n),以这三点的梯度幅值作为函数值,m-1,m,m+1为插值基点,代入二次多项式插值函数φ(x)可得
式中:yi为函数值;xi为插值基点.
并令dφ(x)/dx=0.同理,在Y方向上取三点同上,经推导可得到亚像素边缘坐标(Xc,Yc)为
若式(13)和式(14)同时成立,则上述多项式插值细分算法的边缘定位精度可达0.1个像素[4].
电池片的缺陷检测是将不合格的剔除,从而提高光伏组件的光电转换率,这里本课题主要检测的缺陷是宏观缺陷,即掉角问题.将预处理后的电池片检测其掉角问题的主要处理方法为
1)利用Hough变换确定电池片的外轮廓,既四条边缘线段所在的长直线L1、L2、L3、L4,8个顶点分别为D1、D2、D3、D4、D5、D6、D7、D8,及四条拟合直线的交点P1、P2、P3、P4,具体示意图如图6所示.
图6 掉角缺陷检测示意图Fig.6 Corner defect detection schemes
图6中L4、L1的交点为P1;L1、L2的交点为P2;L2、L3的交点为P3;L3、L4的交点为P4.P1到D8D1的距离为R1;P2到D2D3的距离为R2;P3到D4D5的距离为R3;P4到D6D7的距离为R4.
2)以D8D1、D2D3、D4D5、D6D7为检测目标,R1的坐标若为(i,j),P1到线段D8D1的距离必定在(0,R]之间,若测得的R1在此距离之间说明该角未掉落.
由拍摄的20幅棋盘格图像选取其中7幅平均误差较小的样品,得到了相机的内参,标定结果如图7所示.
镜头畸变系数k1,k2,p1,p2为{-0.184 767,-0.168 983,0.003 082 64,0.002 847 03}.标定结果定标误差见表1.
由内 参 矩 阵A可 知,α=1 646.16,β=1 648.67,已知相机的像元尺寸5.2μm×5.2μm,有效焦距
则实际的视场宽度W为
由视场宽度可得每个像素代表的实际距离为
平均误差σ为0.67pixel,精度为0.09mm,小于0.2mm,满足设计要求.
图7 标定结果Fig.7 Calibration results
表1 图像定标误差Tab.1 Image calibration error
对图像做预处理后,由亚像素细分算法进行边缘提取,分别得到摆正和倾斜的2幅电池片图片,像素级粗定位使用Soble算子,细定位使用多项式插值细分算法,程序运行时间为0.3s.
对图8得到的图像进行Hough变换及主栅线的下边缘位置的定位,并用线Ⅰ标记,由Hough变换找到电池片下边缘轮廓的直线,通过程序返回其纵坐标的像素值,则实际的下主栅线的位置为下轮廓与下主栅线下边缘之间的距离再乘以每个像素的实际距离.
当电池片倾斜时,定位下主栅线并返回端点的坐标值,可用程序计算出主栅线的倾角.具体为
图8 Hough变换Fig.8 Hough transform
线Ⅰ纵坐标为708pixel,线Ⅱ轮廓下边缘为891pixel,则实际距离
实验拍摄了一张掉角的电池片如图9所示,图9(a)是CCD相机拍摄的掉角电池片,图9(b)是亚像素边缘提取后的掉角电池片.
图9 电池片样图Fig.9 Sample of solar cell
经过亚像素边缘提取后的电池片图像,利用Hough变换确定电池片的外轮廓并返回其端点的像素坐标,由2.3节可知,四条边缘线段中两两直线的交点,到电池片角边的距离可判断其是否掉角,检测结果如图10所示.
图10 检测结果Fig.10 Detection result
由检测结果可知,程序运行时间为0.09s,R1=110.646 961个像素,则实际距离为110.64×0.14mm=15.50mm.
1)采用机器视觉标定方法,提出了一种降低相机像素且满足精度要求的亚像素边缘提取法,标定误差小于1pixel,实验测量精度小于0.20mm.
2)电池片的几何测量采用亚像素边缘检测法及Hough变换是可行的,可降低相机像素,其提取图象清晰定位准确,程序用时小于0.5s,在200 mm×200mm的载物台范围内可实现电池片边缘的提取及定位.
3)由亚像素边缘提取后的图像,经Hough变换提取主轮廓并返回其端点的像素坐标,可由四条边缘线段中两两直线的交点,到电池片角边的距离判断其是否掉角,本文选取一幅掉角的电池片图像,结果检测为不合格电池片并予以剔除.
4)在缺陷检测中还有许多种微观缺陷需要解决,如主、细栅线的断裂及隐裂、电池片穿孔问题等,在工业生产中,微观缺陷同样会导致太阳能电池片的光电转换效率降低,因此之后还需进一步研究微观缺陷检测.
[1] 全厚德,闫守成,张洪才.计算机视觉中摄像机标定精度评估方法[J].测绘科学技术学报,2006,23(3):222.QUAN Hou-de,YAN Shou-cheng,ZHANG Hongcai.The Evaluation of Camera Calibration Accuracy in Computer Vision[J].Journal of Geomatics Science and Technology,2006,23(3):222.(in Chinese)
[2] AlSOUD M S,HRAYSHAT E S.Concentrator Silicon Solar Cells from Silicon Industry Rejects[J].Renewable Energy,2005,30(4):621.
[3] 居玲.基于机器视觉的太阳能电池片位置误差检测[J].机械制造与自动化,2012(5):166.JU Ling.Solar Cell Slice Position Error Detection Based on Machine Vision[J].Machine Building & Automation,2012(5):166.(in Chinese)
[4] 李庆利,张少军.一种基于多项式插值改进的亚像素细分算法[J].北京科技大学学报,2003,25(3):79.LI Qing-li,ZHANG Shao-jun.A Improved Subpixel Edge Detecting Algorithm Based on Polynomial Interpolation[J].Journal of Beijing University of Science and Technology,2003,25(3):79.(in Chinese)
[5] 杨滨峰,李亚文,赵杰.物体形状检测的亚像素细分算法综述[J].计算机与数字工程,2011,39(11):17.YANG Bin-feng,LI Ya-wen,ZHAO Jie.Overview of Sub-Pixel Subdivision Algorithms for Shape Detection[J].Computer and Digital Engineering,2011,39(11):17.(in Chinese)
[6] 陈胜勇,刘胜.基于OpenCV的计算机视觉技术实现[M].北京:科学出版社,2008.CHEN Sheng-yong,LIU Sheng.OpenCV for Computer Vision-Based Technology[M].Beijing:Science Press,2008.(in Chinese)
[7] ZHANG Z Y.A Flexible New Technique for Camera Calibration[J].Pattern Analysis and Machine Intelligence,2000,22(11):1330.