CN107256556A - 一种基于灰度跳变思想的太阳能电池组件单元分割方法 - Google Patents
一种基于灰度跳变思想的太阳能电池组件单元分割方法 Download PDFInfo
- Publication number
- CN107256556A CN107256556A CN201710425847.8A CN201710425847A CN107256556A CN 107256556 A CN107256556 A CN 107256556A CN 201710425847 A CN201710425847 A CN 201710425847A CN 107256556 A CN107256556 A CN 107256556A
- Authority
- CN
- China
- Prior art keywords
- mrow
- mtd
- image
- solar cell
- gray level
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000012937 correction Methods 0.000 claims abstract description 24
- 230000009466 transformation Effects 0.000 claims abstract description 19
- 238000000605 extraction Methods 0.000 claims abstract description 14
- 238000009499 grossing Methods 0.000 claims abstract description 13
- 238000007781 pre-processing Methods 0.000 claims abstract description 4
- 238000012545 processing Methods 0.000 claims description 17
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 4
- 230000007797 corrosion Effects 0.000 claims description 3
- 238000005260 corrosion Methods 0.000 claims description 3
- 230000010339 dilation Effects 0.000 claims description 3
- 230000003628 erosive effect Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 2
- 230000011218 segmentation Effects 0.000 abstract description 15
- 210000004027 cell Anatomy 0.000 description 69
- 230000007547 defect Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000004087 circulation Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 210000003850 cellular structure Anatomy 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000005693 optoelectronics Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000002210 silicon-based material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
Abstract
本发明涉及一种基于灰度跳变思想的太阳能电池组件单元分割方法,具体包括以下步骤:步骤S1:对倾斜的太阳能电池组件图像进行透视投影变换,得到带有桶形失真的校正图像;步骤S2:对带有桶形失真的图像进行桶形畸变校正,得到较为的理想的矩形;步骤S3:对校正后的图像二值化,将前景和后景区分开;步骤S4:对图像进行闭运算,使前景边界平滑;步骤S5:根据灰度跳变特性来确定太阳电池组件的边界并将其截取下来;步骤S6:对截取的组件进行图像预处理,根据灰度跳变特性来确定太阳能电池组件单元的边界并将其分割提取。本发明能够有效提高太阳能电池单元分割的准确性。
Description
技术领域
本发明属于太阳能电池生产及应用领域,涉及一种图像处理分割方法,特别涉及一种基于灰度跳变的太阳能电池单元图像分割方法。
背景技术
随着传统能源不断枯竭,太阳能的开发和利用得到国家的高度重视。太阳能电池组件作为太阳能最重要的利用形式——光电转换的载体,利用一些技术或者设备对其进行生产监控和缺陷检测,从而减少其破损率,不仅能有效提高产品等级,同时也能减少硅材料的耗费,降低生产成本,提高组件的市场竞争力。
在进行缺陷检测前,还需要先对电池组件进行单元分割提取。而电池单元分割提取的好坏对后面缺陷特征提取和识别起着至关重要的作用。目前太阳能电池单元分割主要有两种:基于模板匹配的提取思想和基于组件EL图像(电致发光图像)等间距分割思想。基于模板的提取分割主要是提取单个电池单元可通过在组件图像中寻找与电池单元模板匹配的区域实现提取分割;基于组件EL图像等间距分割思想主要是组件EL图像中各电池单元按a行b列规整分布,可通过对组件图像进行电池单元数量统计,网格划分,网格分块提取等步骤实现电池单元的分割提取。
但这些方案存在一些不足之处:基于模板的提取思想在组件图像中存在较多暗片的情况下,其提取成功率较低;基于组件EL图像等间距分割思想的应用存在局限性,只能针对组件单元是矩形的才可以应用。
本发明提出基于灰度跳变思想的太阳能电池单元分割方法,能够有效地克服上面两种方法存在的缺点,在前期对太阳能电池组件EL图像做好预处理后,根据灰度跳变特征来确定电池单元边界,能准确实现组件图像分割。
发明内容
有鉴于此,本发明的目的是提供一种基于灰度跳变思想太阳能电池组件单元分割方法,在太阳能电池单元分割前,先对图像进行前期处理:透视变换校正、桶形畸变校正等,才能减小后面分割的出错率,易于找出每个电池单元的边界;在电池单元分割阶段,基于灰度跳变思想,根据边界前后灰度值不一样,进而准确找出单元边界,提高分割精确度。
本发明采用以下方案实现:一种基于灰度跳变思想太阳能电池单元分割方法,具体包括以下步骤:
步骤S1:对倾斜的太阳能电池组件图像进行透视投影变换,得到带有桶形失真的校正图像;
步骤S2:对步骤S1处理获得的带有桶形失真的图像进行桶形畸变校正,得到较为的理想的矩形;
步骤S3:对步骤S2处理后获得的图像二值化,将前景和后景区分开;
步骤S4:对步骤S3处理获得的图像进行闭运算,使前景边界平滑;
步骤S5:对步骤S4处理获得的图像,据灰度跳变特性来确定太阳电池组件的边界并将其截取下来;
步骤S6:对步骤S5处理获得的组件图像预处理,根据灰度跳变特性来确定太阳能电池组件单元的边界并将其分割提取。
进一步地,所述步骤S1中所述透视投影变换具体方法为:对于初始图像,手动选取四个控制点(xi,yi),其中四个控制点(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)依次为太阳能电池组件部分的左上角点、右上角点、左下角点、右下角点,i=1,…,4,从原四边形获得新矩形的宽和高进而设定四个新的控制点 其中X和Y分别是1*4矩阵,并记新的控制点为B=[X(1) Y(1) X(2) Y(2) X(3) Y(3) X(4) Y(4)]',其中[X(1),Y(1)]为新的左上角点、[X(2),Y(2)]为新的右上角点、[X(3),Y(3)]为新的左下角点、[X(4),Y(4)]为新的右下角点,由此可得透视映射矩阵:
获得全局变换系数fa=A-1*B(fa是一个8*1矩阵),根据全局变换系数可以得到变换后图像的高度和宽度,采用邻近插值法从变换图像中反向寻找原图像的点,以免出现空洞,完成透视投影变换。
进一步地,所述步骤S2桶形畸变校正具体方法为:由于透视变换后的图像产生了桶形失真,要对其进行畸变校正。建立一张标准图像,点阵之间距离相等,通过比较标准图像和失真图像的对应点坐标,可以建立失真校正模型:
x'=k1(1+k2(x2+y2))x
y'=k1(1+k2(x2+y2))y
式中k1——图像比例系数;
k2——失真校正系数;
(x,y)为原图像像素的坐标;
(x',y')为矫正后图像像素的坐标;
通过反变换即可得到摄像头的校正模型,从而得到校正图像。
步骤S2中的k1和k2具体含义:k1决定校正图像的大小,k1越大,校正后的图像越大。k2为桶形失真校正的系数,k2越大,桶形失真校正程度越大,即图像向内凹的程度越大,应用于桶形失真较大的图像;k2越小,桶形失真校正程度越小,即图像向内凹的程度越小,应用于桶形失真较小的图像。
进一步地,所述步骤S3中对图像进行二值化具体为最大类间差方法,该二值化方法对场景较为简单的情况下(即前景和后景占图像像素中的大部分),可以达到较为理想的分割效果。
进一步地,所述步骤S4中闭运算具体方法为:用10*10结构元素先对图像进行膨胀处理,再用10*10结构元素对图像进行腐蚀处理,从而使前景边界平滑。
进一步地,所述步骤S5中根据灰度跳变特性确定太阳能电池组件边界具体方法为:通过行扫描灰度跳变特征来确定太阳能电池上下边界,通过列扫描灰度跳变特征来确定太阳能电池左右边界,确定边界后就可以截取太阳能电池组件。
具体步骤为:
步骤S51:用i表示从太阳能电池组件图像自上向下开始编号的行号,并令初始值i=1;用PT表示太阳能电池下边界的像素行号,并令初始值PT=0;
步骤S52:统计第i行的灰度跳变点总数,即像素灰度值从0到255或者255到0转变的像素点数量,记为S(i),若S(i)第一次大于等于设定的阈值T1(T1为当前太阳能电池组件图像宽度的二分之一),则表示该行为太阳能电池组件图像的上边界并停止统计,记为PT=i;
步骤S53:用i表示从太阳能电池组件图像自下向上开始编号的行号,并令初始值i=m(m为当前太阳能电池组件图像宽度);用PB表示太阳能电池下边界的像素行号,并令初始值PB=0;
步骤S54:统计第i行的灰度跳变点总数,即像素灰度值从0到255或者255到0转变的像素点数量,记为S(i),若S(i)第一次大于等于设定的阈值T2(T2为当前太阳能电池组件图像宽度的二分之一),则表示该行为太阳能电池组件图像的上边界并停止统计,记为PB=i;
步骤S55:太阳能电池组件的左边界PL、右边界PR按照类似步骤S51到步骤S54同样可以确定;
步骤S56:截取太阳能电池组件图像部分;
进一步地,步骤S6中根据灰度跳变特性确定太阳能电池组件单元边界具体方法为:
电池单元横向边界确定步骤如下:
步骤S61:对截取的图像进行腐蚀运算,减少图像中纵向条纹的干扰;
步骤S62:对图像进行线性平滑,使图像中的横向条纹更加明显,以提高提取电池单元边界的准确度;
步骤S63:通过灰度跳变特征来确定电池单元横向边界;
电池单元纵向边界确定步骤如下:
步骤S61:对截取的图像进行膨胀运算,减少图像中横向条纹的干扰;
步骤S62:对图像进行线性平滑,使图像中的纵向条纹更加明显,以提高提取电池单元边界的准确度;
步骤S63:通过灰度跳变特征来确定电池单元横向边界;
其中通过灰度跳变特征来确定单元纵向边界具体过程如下:
步骤S61:用i表示从太阳能电池组件图像自上向下开始编号的行号,并令初始值i=1;用R表示太阳能电池下边界的像素行号,R为一个一维矩阵,记为R(k),令k初始值为k=1;
步骤S62:统计第i行的灰度值为255的点的总数,记为S(i),若S(i)大于等于设定的阈值T1=0.95*m(m为当前太阳能电池组件图像宽度),则表示该行为我们要找的目标行,记为R(1)=i并k=k+1;
步骤S63:令i=i+1继续1)、2)步骤,直到i大于m循环结束;
步骤S64:根据灰度跳变特征,将矩阵R中已经确定的行与它的前一行或者后一行进行灰度对比,统计该行的灰度跳变点总数,即像素灰度值从0到255或者从255到0转变的像素点数量,记为S(R(k)),其中令k初始值为k=1,若S(R(k))大于等于设定的阈值T1=0.95*m(m为当前太阳能电池组件图像宽度),则表示该行为太阳能电池组件单元的边界,记为Rfinal(i)=R(k);
本发明的优点在于组件中存在非等间隔矩形结构时,以及图像中存在较多暗片的情况下和组件单元缺陷类型较多时,都能够准确将太阳能电池单元分割提取出来。本发明的分割准确率可达99%以上。
附图说明
图1是本发明的流程框图
图2是太阳能电池组件EL图像。
图3是透视变换倾斜校正图像。
图4是桶形失真校正图像。
图5是太阳能电池组件EL截取图像。
图6是分割后的太阳能电池单元。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
本实施例提供一种基于灰度跳变思想太阳能电池组件单元分割方法,流程框图如图1所示,图2为本实施例采用的太阳能电池组件EL图像,它由12*6个太阳能电池单元拼接而成,利用本方法可以将它分割为独立的太阳能电池单元。具体包括以下步骤:
步骤S1:对倾斜的太阳能电池组件图像进行透视投影变换,得到带有桶形失真的校正图像;
步骤S2:对步骤S1处理获得的带有桶形失真的图像进行桶形畸变校正,得到较为的理想的矩形;
步骤S3:对步骤S2处理后获得的图像二值化,将前景和后景区分开;
步骤S4:对步骤S3处理获得的图像进行闭运算,使前景边界平滑;
步骤S5:对步骤S4处理获得的图像,据灰度跳变特性来确定太阳电池组件的边界并将其截取下来;
步骤S6:对步骤S5处理获得的组件图像预处理,根据灰度跳变特性来确定太阳能电池组件单元的边界并将其分割提取。
在本实施例中,步骤S1采用的透视投影变换具体方法为:对于初始图像,手动选取四个控制点(xi,yi),其中四个控制点(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)依次为太阳能电池组件部分的左上角点、右上角点、左下角点、右下角点,i=1,…,4,从原四边形获得新矩形的宽和高进而设定四个新的控制点其中X和Y分别是1*4矩阵,并记新的控制点为B=[X(1) Y(1) X(2) Y(2) X(3) Y(3) X(4)Y(4)]',其中[X(1),Y(1)]为新的左上角点、[X(2),Y(2)]为新的右上角点、[X(3),Y(3)]为新的左下角点、[X(4),Y(4)]为新的右下角点,由此可得透视映射矩阵:
获得全局变换系数fa=A-1*B(fa是一个8*1矩阵),根据全局变换系数可以得到变换后图像的高度和宽度,采用邻近插值法从变换图像中反向寻找原图像的点,以免出现空洞,完成透视投影变换。
图3为经步骤S1处理后得到的带有桶形失真的太阳能电池组件图像。
在本实施例中,步骤S2采用桶形畸变校正具体方法为:由于透视变换后的图像产生了桶形失真,要对其进行畸变校正。建立一张标准图像,点阵之间距离相等,通过比较标准图像和失真图像的对应点坐标,可以建立失真校正模型:
x'=k1(1+k2(x2+y2))x
y'=k1(1+k2(x2+y2))y;
k1——图像比例系数,本实例中k1=-0.000000003;
k2——失真校正系数,本实例中k2=-0.00000000352;
通过反变换即可得到摄像头的校正模型,从而得到校正图像。
图4为经步骤S2处理后得到的较为理想的太阳能电池组件矩形图像。
在本实施例中,所述步骤S3中对图像进行二值化具体为最大类间差方法,该二值化方法对场景较为简单的情况下(即前景和后景占图像像素中的大部分),可以达到较为理想的分割效果。
在本实施例中,所述步骤S4中闭运算具体方法为:用10*10结构元素先对图像进行膨胀处理,再用10*10结构元素对图像进行腐蚀处理,从而使前景边界平滑。
在本实施例中,所述步骤S5中根据灰度跳变特性确定太阳能电池组件边界具体方法为:通过行扫描灰度跳变特征来确定太阳能电池上下边界,通过列扫描灰度跳变特征来确定太阳能电池左右边界,确定边界后就可以截取太阳能电池组件。
具体步骤为:
步骤S51:用i表示从太阳能电池组件图像自上向下开始编号的行号,并令初始值i=1;用PT表示太阳能电池下边界的像素行号,并令初始值PT=0;
步骤S52:统计第i行的灰度跳变点总数,即像素灰度值从0到255或者255到0转变的像素点数量,记为S(i),若S(i)第一次大于等于设定的阈值T1(T1为当前太阳能电池组件图像宽度的二分之一),则表示该行为太阳能电池组件图像的上边界并停止统计,记为PT=i;
步骤S53:用i表示从太阳能电池组件图像自下向上开始编号的行号,并令初始值i=m(m为当前太阳能电池组件图像宽度);用PB表示太阳能电池下边界的像素行号,并令初始值PB=0;
步骤S54:统计第i行的灰度跳变点总数,即像素灰度值从0到255或者255到0转变的像素点数量,记为S(i),若S(i)第一次大于等于设定的阈值T2(T2为当前太阳能电池组件图像宽度的二分之一),则表示该行为太阳能电池组件图像的上边界并停止统计,记为PB=i;
步骤S55:太阳能电池组件的左边界PL、右边界PR按照类似步骤S51到步骤S54同样可以确定;
步骤S56:截取太阳能电池组件图像部分。
图5为经步骤S5处理后的得到的太阳能电池组件部分图像。
在本实施例中,步骤S6中根据灰度跳变特性确定太阳能电池组件单元边界具体方法为:
电池单元横向边界确定步骤如下:
步骤S61:对截取的图像进行腐蚀运算,减少图像中纵向条纹的干扰;
步骤S62:对图像进行线性平滑,使图像中的横向条纹更加明显,以提高提取电池单元边界的准确度;
步骤S63:通过灰度跳变特征来确定电池单元横向边界;
电池单元纵向边界确定步骤如下:
步骤S61:对截取的图像进行膨胀运算,减少图像中横向条纹的干扰;
步骤S62:对图像进行线性平滑,使图像中的纵向条纹更加明显,以提高提取电池单元边界的准确度;
步骤S63:通过灰度跳变特征来确定电池单元横向边界;
其中通过灰度跳变特征来确定单元纵向边界具体过程如下:
步骤S61:用i表示从太阳能电池组件图像自上向下开始编号的行号,并令初始值i=1;用R表示太阳能电池下边界的像素行号,R为一个一维矩阵,记为R(k),令k初始值为k=1;
步骤S62:统计第i行的灰度值为255的点的总数,记为S(i),若S(i)大于等于设定的阈值T1=0.95*m(m为当前太阳能电池组件图像宽度),则表示该行为我们要找的目标行,记为R(1)=i并k=k+1;
步骤S63:令i=i+1继续1)、2)步骤,直到i大于m循环结束;
步骤S64:根据灰度跳变特征,将矩阵R中已经确定的行与它的前一行或者后一行进行灰度对比,统计该行的灰度跳变点总数,即像素灰度值从0到255或者从255到0转变的像素点数量,记为S(R(k)),其中令k初始值为k=1,若S(R(k))大于等于设定的阈值T1=0.95*m(m为当前太阳能电池组件图像宽度),则表示该行为太阳能电池组件单元的边界,记为Rfinal(i)=R(k);
图6为经步骤S6处理后得到的一个太阳能电池单元示例。
本发明采用了200组的太阳能电池组件EL图像作为测试,所使用的测试组件图像中存在暗片及缺陷类型的较多情况下,以及组件单元不是等间隔矩形结构时,均能够准确将太阳能电池单元分割提取出来。本发明的分割准确率可达99%以上。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (7)
1.基于灰度跳变思想的太阳能电池组件单元分割方法,其特征在于具体包括以下步骤:
步骤S1:对倾斜的太阳能电池组件图像进行透视投影变换,得到带有桶形失真的校正图像;
步骤S2:对步骤S1处理获得的带有桶形失真的校正图像进行桶形畸变校正,得到较为理想的矩形;
步骤S3:对步骤S2处理后获得的图像二值化,将前景和后景区分开;
步骤S4:对步骤S3处理获得的图像进行闭运算,使前景边界平滑;
步骤S5:对步骤S4处理获得的图像,根据灰度跳变特性来确定太阳电池组件的边界并将其截取下来;
步骤S6:对步骤S5处理获得的组件图像预处理,根据灰度跳变特性来确定太阳能电池组件单元的边界并将其分割提取。
2.根据权利要求1所述的基于灰度跳变思想的太阳能电池单元分割方法,其特征在于:所述步骤S1中所述透视投影变换具体方法为:对于初始图像,手动选取四个控制点(xi,yi),i=1,···,4,其中四个控制点(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)依次为太阳能电池组件部分的左上角点、右上角点、左下角点、右下角点,从原四边形获得新矩形的宽和高进而设定四个新的控制点其中X和Y分别是1*4矩阵,并记新的控制点为B=[X(1) Y(1) X(2) Y(2) X(3) Y(3) X(4) Y(4)]',其中[X(1),Y(1)]为新的左上角点、[X(2),Y(2)]为新的右上角点、[X(3),Y(3)]为新的左下角点、[X(4),Y(4)]为新的右下角点,由此得透视映射矩阵:
<mrow>
<mi>A</mi>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>X</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<mi>Y</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>;</mo>
</mrow>
获得全局变换系数fa=A-1*B,其中fa是一个8*1矩阵,根据全局变换系数得到变换后图像的高度和宽度,采用邻近插值法从变换图像中反向寻找原图像的点,以免出现空洞,完成透视投影变换。
3.根据权利要求1所述的基于灰度跳变思想的太阳能电池单元分割方法,其特征在于:所述步骤S2中所述桶形畸变校正具体方法为:由于透视变换后的图像产生了桶形失真,要对其进行畸变校正。建立一张标准图像,点阵之间距离相等,通过比较标准图像和失真图像的对应点坐标,可以建立失真校正模型:
x'=k1(1+k2(x2+y2))x
y'=k1(1+k2(x2+y2))y;
式中k1为图像比例系数;k2为失真校正系数;x,y为原图像像素的坐标;x',y'为矫正后图像像素的坐标;
通过反变换即可得到摄像头的校正模型,从而得到校正图像。
4.根据权利要求1所述的基于灰度跳变思想的太阳能电池单元分割方法,其特征在于:所述步骤S3中对图像进行二值化具体为最大类间差方法。
5.根据权利要求1所述的基于灰度跳变思想的太阳能电池单元分割方法,其特征在于:所述步骤S4中闭运算具体方法为:用10*10结构元素先对图像进行膨胀处理,再用10*10结构元素对图像进行腐蚀处理,从而使前景边界平滑。
6.根据权利要求1所述的基于灰度跳变思想的太阳能电池单元分割方法,其特征在于:所述步骤S5中根据灰度跳变特性确定太阳能电池组件边界具体方法为:通过行扫描灰度跳变特性来确定太阳能电池上下边界,通过列扫描灰度跳变特征来确定太阳能电池左右边界,确定边界后截取太阳能电池组件;具体步骤为:
步骤S51:用i表示从太阳能电池组件图像自上向下开始编号的行号,并令初始值i=1;用PT表示太阳能电池下边界的像素行号,并令初始值PT=0;
步骤S52:统计第i行的灰度跳变点总数,即像素灰度值从0到255或者255到0转变的像素点数量,记为S(i),若S(i)第一次大于等于设定的阈值T1,则表示该行为太阳能电池组件图像的上边界并停止统计,记为PT=i;其中T1为当前太阳能电池组件图像宽度的二分之一;
步骤S53:用表示从太阳能电池组件图像自下向上开始编号的行号,并令初始值i=m;用PB表示太阳能电池下边界的像素行号,并令初始值PB=0;其中m为当前太阳能电池组件图像宽度;
步骤S54:统计第i行的灰度跳变点总数,即像素灰度值从0到255或者255到0转变的像素点数量,记为S(i),若S(i)第一次大于等于设定的阈值T2,则表示该行为太阳能电池组件图像的上边界并停止统计,记为PB=i;其中,T2为当前太阳能电池组件图像宽度的二分之一;
步骤S55:太阳能电池组件的左边界PL、右边界PR按照类似步骤S51到步骤S54同样可以确定;
步骤S56:截取太阳能电池组件图像部分。
7.根据权利要求1所述的基于灰度跳变思想的太阳能电池单元分割方法,其特征在于:步骤S6中根据灰度跳变特性确定太阳能电池组件单元边界具体方法为:
电池单元横向边界确定步骤如下:
步骤S61:对截取的图像进行腐蚀运算,减少图像中纵向条纹的干扰;
步骤S62:对图像进行线性平滑,使图像中的横向条纹更加明显,以提高提取电池单元边界的准确度;
步骤S63:通过灰度跳变特征来确定电池单元横向边界;
电池单元纵向边界确定步骤如下:
步骤S61:对截取的图像进行膨胀运算,减少图像中横向条纹的干扰;
步骤S62:对图像进行线性平滑,使图像中的纵向条纹更加明显,以提高提取电池单元边界的准确度;
步骤S43:通过灰度跳变特性来确定电池单元横向边界。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710425847.8A CN107256556A (zh) | 2017-06-08 | 2017-06-08 | 一种基于灰度跳变思想的太阳能电池组件单元分割方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710425847.8A CN107256556A (zh) | 2017-06-08 | 2017-06-08 | 一种基于灰度跳变思想的太阳能电池组件单元分割方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107256556A true CN107256556A (zh) | 2017-10-17 |
Family
ID=60023608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710425847.8A Pending CN107256556A (zh) | 2017-06-08 | 2017-06-08 | 一种基于灰度跳变思想的太阳能电池组件单元分割方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107256556A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109360236A (zh) * | 2018-10-26 | 2019-02-19 | 郑州轻工业学院 | 一种向日葵花盘尺寸测量方法 |
CN111105418A (zh) * | 2019-03-27 | 2020-05-05 | 上海洪朴信息科技有限公司 | 一种针对图像中矩形目标的高精度图像分割方法 |
CN111740699A (zh) * | 2020-05-29 | 2020-10-02 | 南京航空航天大学 | 一种光伏板故障检测识别方法、装置和无人机 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110222769A1 (en) * | 2010-03-10 | 2011-09-15 | Microsoft Corporation | Document page segmentation in optical character recognition |
CN102902945A (zh) * | 2012-09-28 | 2013-01-30 | 南京汇兴博业数字设备有限公司 | 基于快速响应矩阵码外轮廓的畸变校正方法 |
CN103488978A (zh) * | 2013-09-26 | 2014-01-01 | 浙江工业大学 | 一种基于灰度跳变和字符投影间隔模式的车牌定位方法 |
-
2017
- 2017-06-08 CN CN201710425847.8A patent/CN107256556A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110222769A1 (en) * | 2010-03-10 | 2011-09-15 | Microsoft Corporation | Document page segmentation in optical character recognition |
CN102902945A (zh) * | 2012-09-28 | 2013-01-30 | 南京汇兴博业数字设备有限公司 | 基于快速响应矩阵码外轮廓的畸变校正方法 |
CN103488978A (zh) * | 2013-09-26 | 2014-01-01 | 浙江工业大学 | 一种基于灰度跳变和字符投影间隔模式的车牌定位方法 |
Non-Patent Citations (2)
Title |
---|
窦争宝: ""基于EL图像的太阳能电池组件缺陷在线检测研究"", 《万方》 * |
高飞 等: ""基于灰度跳变与字符间隔模式的车牌定位方法研究"", 《计算机测量与控制》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109360236A (zh) * | 2018-10-26 | 2019-02-19 | 郑州轻工业学院 | 一种向日葵花盘尺寸测量方法 |
CN109360236B (zh) * | 2018-10-26 | 2022-05-17 | 郑州轻工业学院 | 一种向日葵花盘尺寸测量方法 |
CN111105418A (zh) * | 2019-03-27 | 2020-05-05 | 上海洪朴信息科技有限公司 | 一种针对图像中矩形目标的高精度图像分割方法 |
CN111740699A (zh) * | 2020-05-29 | 2020-10-02 | 南京航空航天大学 | 一种光伏板故障检测识别方法、装置和无人机 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110400278B (zh) | 一种图像颜色和几何畸变的全自动校正方法、装置及设备 | |
CN106296969B (zh) | 纸币的识别方法和系统 | |
CN111353961B (zh) | 一种文档曲面校正方法及装置 | |
CN107256556A (zh) | 一种基于灰度跳变思想的太阳能电池组件单元分割方法 | |
CN102156868A (zh) | 图像二值化方法和装置 | |
CN107437085A (zh) | 一种提升ocr识别率的方法、装置及可读存储介质 | |
CN101030258A (zh) | 基于bp神经网络的数显仪表动态显示字符识别方法 | |
CN104966348B (zh) | 一种票据图像要素完整性检测方法及系统 | |
CN104574419A (zh) | 镜头畸变参数标定方法及系统 | |
CN113838144B (zh) | 一种基于机器视觉和深度学习的uv打印机上物件定位方法 | |
CN109858484B (zh) | 一种基于偏斜评价的多类别变换车牌校正方法 | |
CN103761708A (zh) | 基于轮廓匹配的图像修复方法 | |
CN110595397A (zh) | 一种基于图像识别的篦冷机工况监测方法 | |
CN113808033A (zh) | 图像文档校正方法、系统、终端及介质 | |
CN111368637B (zh) | 一种基于多掩模卷积神经网络的搬运机器人识别目标方法 | |
CN116433494B (zh) | 一种基于深度学习的档案扫描图像自动纠偏裁边方法 | |
CN106056575B (zh) | 一种基于似物性推荐算法的图像匹配方法 | |
CN108492345B (zh) | 一种基于尺度变换的数据块划分方法 | |
CN111507276A (zh) | 一种基于隐藏层增强特征的工地安全帽检测方法 | |
CN116310515A (zh) | 一种针对小目标数据集的背景置零Mosaic数据增强方法 | |
CN108256475B (zh) | 一种票据图像倒置检测方法 | |
CN113362296B (zh) | 一种隧道裂缝提取方法及系统 | |
CN114943729A (zh) | 一种高分辨率细胞图像的细胞计数方法及系统 | |
CN114359276A (zh) | 基于麻点缺陷的钢模下料优选方案获取方法 | |
CN107895152A (zh) | 一种在轨云缝快速检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171017 |