王茜茜, 蔣鵬輝
(1.創(chuàng)能電力設(shè)計有限公司 設(shè)計部, 安徽 合肥 230000;2.上海博英信息科技有限公司 設(shè)計部, 上海 200240)
太陽能電池作為清潔能源的重要一員,以綠色、便捷、儲能大等優(yōu)勢備受企業(yè)和人們的歡迎。在太陽能電池的使用過程中,電池片區(qū)域易受周邊環(huán)境影響,出現(xiàn)部分缺陷,影響太陽能電池的性能[1]。為保證太陽能電池能夠正常使用,有必要對太陽能電池片進行缺陷檢測。
對此,許多學(xué)者對太陽能電池片缺陷的檢測進行了研究分析。龔芳等[2]根據(jù)紅外成像特性及太陽能電池電片的發(fā)光原理設(shè)計了一種濾波器,使圖像正常區(qū)域經(jīng)濾波后能有一定反應(yīng)從而凸顯缺陷區(qū)域。宋玉琴等[3]利用機器視覺技術(shù)完成了對太陽能電池片缺陷的在線檢測。秦文麗[4]利用OpenCV程序判斷出太陽能電池片是否有色斑。劉懷廣等[5]利用卷積神經(jīng)網(wǎng)絡(luò)和聚類的方法對太陽能電池片缺陷進行篩選定位,能較為準(zhǔn)確地檢測隱裂缺陷。
為實現(xiàn)對太陽能電池片缺陷的準(zhǔn)確檢測,本文提出了一種基于圖像處理與深度學(xué)習(xí)的缺陷檢測方法。首先,對太陽能電池片圖像進行全局直方圖均衡化處理,增加圖像灰度值的動態(tài)范圍,調(diào)節(jié)圖像整體的對比度,使圖像細節(jié)部分變得更為清晰;然后,對太陽能電池片的兩類缺陷數(shù)據(jù)集與正常數(shù)據(jù)集進行增強,提升神經(jīng)網(wǎng)絡(luò)模型的泛化能力;最后,搭建卷積神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,并預(yù)測太陽能電池片上的缺陷。
太陽能電池片缺陷檢測流程如圖1所示,包括圖像獲取、全局直方圖均衡化、數(shù)據(jù)集增強、搭建神經(jīng)網(wǎng)絡(luò)、訓(xùn)練模型、結(jié)果預(yù)測。
圖1 缺陷檢測流程
本次實驗采集到的太陽能電池片原始圖像如圖2所示。由圖可知,受圖像采集環(huán)境的影響,導(dǎo)致采集到的太陽能電池片圖像較為暗淡,其中斑紋缺陷特征與背景較為相似,破損缺陷則與電池片棧線特征較為相似。為了使缺陷特征更為突出,需要對圖像進行增強處理。全局直方圖均衡化[6]作為圖像增強的一種方法,是根據(jù)直方圖對像素點的灰度值進行變換,屬于圖像點操作范疇,可以對圖像中的各個區(qū)域做到平均增強,對提升圖像整體對比度有較好的效果。
圖2 太陽能電池片原始圖像
全局直方圖均衡化處理過程為:列出圖像變換前后的灰度級i,j=0,1,…,L-1,L為灰度級數(shù),統(tǒng)計處理前圖像各個灰度級像素數(shù)ni,計算出原始圖像的總像素個數(shù),利用式(1)計算累計直方圖之后,再利用式(2)計算變換后的灰度值并取整,統(tǒng)計變換后各灰度級的像素數(shù)nj,利用式(3)計算變換后的直方圖[7]。
式中:k為圖像的第k級灰度值;p(k)為圖像中各級灰度級出現(xiàn)的頻數(shù);pj為計算變換后圖像的灰度值;n為圖像的總像素個數(shù)。
為驗證全局直方圖均衡化處理對本次實驗采集圖像的增強效果,與經(jīng)典圖像增強方法——伽馬變換[8]進行橫向?qū)Ρ取D像增強結(jié)果如圖3所示。
從圖3可以看出,經(jīng)過伽馬變化后,圖像的對比度得到了增強,使得缺陷特征區(qū)域較為突出,但會使圖像的細節(jié)紋理變得稍微模糊。而經(jīng)過全局直方圖均衡化處理的圖像增強后,整體對比度得到顯著增強的同時,圖像的細節(jié)紋理受影響較小。以圖3(a)、(d)、(g)為例,對經(jīng)過全局直方圖均衡化處理后的圖像進一步分析,列出了其灰度直方圖[9]如圖4所示。
圖3 太陽能電池片圖像增強結(jié)果
由圖4可見,伽馬變換是對圖像灰度級較高的部分進行了增強,而全局直方圖均衡化處理后的圖像,其各個區(qū)域的灰度級得到平均增強,同時缺陷區(qū)域顯示也更為清晰,這有利于后續(xù)在神經(jīng)網(wǎng)絡(luò)中的特征提取。
圖4 圖像增強前后灰度直方圖對比
本次實驗共采集太陽能電池片圖像1 980張,分別為破損、斑紋和正常3種。為增強數(shù)據(jù)集[10]的多樣性,通過對數(shù)據(jù)集進行旋轉(zhuǎn)、增加噪聲、翻轉(zhuǎn)等操作進行增強。增強后,經(jīng)全局直方圖均衡化處理與未經(jīng)處理的數(shù)據(jù)集總量均達到5 940張,分別將數(shù)據(jù)集樣本按照7∶2∶1的比例劃分,具體情況如表1所示。
表1 樣本數(shù)量劃分
本次實驗在服務(wù)器上進行訓(xùn)練,所搭載的圖形處理器型號為Tesla P100-PCIE-16GB,處理器內(nèi)存為16 GB。訓(xùn)練使用以TensorFlow 為后端的keras框架,其中訓(xùn)練迭代次數(shù)設(shè)置為100,批樣本數(shù)量為32。
本文數(shù)據(jù)集中圖像寬×高×維度規(guī)格均為300×300×3,考慮神經(jīng)網(wǎng)絡(luò)的速度與適配性,將其預(yù)處理為256×256×3的規(guī)格后,再經(jīng)多次卷積 池化作用,每層卷積層均使用Relu函數(shù)進行激活,經(jīng)過全連接層變換后,再由Softmax函數(shù)激活,將適應(yīng)性矩估計算法作為優(yōu)化器進行優(yōu)化后輸出[11]。神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)如圖5所示,本文所搭建的神經(jīng)網(wǎng)絡(luò)模型進行可視化之后[12],如表2所示。
圖5 神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)
表2 本文神經(jīng)網(wǎng)絡(luò)模型結(jié)構(gòu)
為驗證在同一網(wǎng)絡(luò)下,經(jīng)過全局直方圖均衡化處理與未經(jīng)過處理的數(shù)據(jù)集的學(xué)習(xí)效果,分別對兩種數(shù)據(jù)集進行訓(xùn)練、測試,結(jié)果如圖6所示。由圖可見,經(jīng)過全局直方圖均衡化處理后的數(shù)據(jù)集與未經(jīng)過處理的數(shù)據(jù)集在同一結(jié)構(gòu)、同一參數(shù)、同一優(yōu)化器的網(wǎng)絡(luò)訓(xùn)練下,經(jīng)過全局直方圖均衡化處理的訓(xùn)練集準(zhǔn)確率在99.64%附近收斂,且在迭代至40次左右就開始收斂,速度較快,測試集準(zhǔn)確率在96.38%附近收斂。未經(jīng)過全局直方圖均衡化處理的數(shù)據(jù)集不僅收斂速度慢,且收斂后的準(zhǔn)確率也較低,進而驗證了經(jīng)全局直方圖均衡化處理后的圖像在進行卷積的過程中,特征提取的效率更高,提取到的圖像特征更為精確。
圖6 神經(jīng)網(wǎng)絡(luò)訓(xùn)練結(jié)果
在訓(xùn)練和測試結(jié)束之后,即可調(diào)用訓(xùn)練完成的神經(jīng)網(wǎng)絡(luò)模型對驗證集中的太陽能電池片的缺陷種類進行預(yù)測[13]。為驗證該模型對太陽能電池片缺陷的檢測效果,利用混淆矩陣[14]表示驗證結(jié)果,混淆矩陣原理如表3所示。表中,TP為正樣本被預(yù)測成正樣本的總數(shù);TN為負樣本被預(yù)測成負樣本的總數(shù);FP為負樣本被預(yù)測成正樣本的總數(shù);FN為正樣本被預(yù)測成負樣本的總數(shù)?;煜仃囎鳛槌S玫哪P蜋z驗工具,不僅可以用來評估模型,還可以將檢測結(jié)果顯示得更加直觀[15]。
表3 混淆矩陣原理
而混淆矩陣中各2級指標(biāo)計算式分別為
式中:AC為準(zhǔn)確率;PR為精確率;RE為召回率;F1為F1分?jǐn)?shù)。
在調(diào)用神經(jīng)網(wǎng)絡(luò)模型進行驗證后,驗證集檢測的混淆矩陣結(jié)果如圖7所示。利用混淆矩陣中的數(shù)據(jù)與式(4)~(7)即可計算出準(zhǔn)確率、精確率、召回率、F1分?jǐn)?shù)等2級指標(biāo)的數(shù)值,如表4所示。
圖7 驗證集檢測混淆矩陣
表4 驗證集預(yù)測結(jié)果
本文利用全局直方圖均衡化技術(shù)與神經(jīng)網(wǎng)絡(luò)相結(jié)合的方法,對太陽能電池片圖像的破損與斑紋缺陷進行了檢測。結(jié)果表明:經(jīng)過全局直方圖均衡化處理后的圖像,在利用神經(jīng)網(wǎng)絡(luò)訓(xùn)練時能夠獲得更好的結(jié)果。對破損、斑紋以及正常類型的識別平均能夠達到92.93%的準(zhǔn)確率、89.17%的精確率、89.18%的召回率和、88.26%的F1分?jǐn)?shù)值。綜合來看,本文提出的方法能夠?qū)μ柲茈姵仄娜毕葸M行有效的檢測識別。