郝 帥,吳瑛琦,馬 旭,李 彤,王海瑩
(西安科技大學 電氣與控制工程學院,陜西 西安 710054)
太陽能是重要的可再生能源之一,可以作為傳統(tǒng)燃料的清潔和可再生替代品。在眾多清潔能源中,太陽能越來越受到人們的青睞。光伏電池板在運行過程中存在微裂紋、玻璃破損等缺陷,進而導致出現(xiàn)熱斑故障,極大降低其運行效率[1-3]。因此,對光伏電池板進行熱斑故障檢測是保證光伏電站安全、高效運行的有效措施。
目前,常用的熱斑檢測方法可分為電氣測量檢測方法和基于計算機視覺的故障檢測方法。電氣測量檢測方法主要是通過搭建外部電路獲取電壓電流等電氣量,與正常運行值對比判斷進行檢測[4]。計算機視覺的方式主要是對通過拍攝得到的圖像進行特征提取分析[5]?;谟嬎銠C視覺的檢測方法可分為傳統(tǒng)檢測法和基于深度學習檢測方法。傳統(tǒng)目標檢測方法主要依賴于濾波器或手工特征描述符對故障目標進行提取分割識別。孫海蓉等[6]受高斯分布啟發(fā)提出一種熱斑識別函數(shù),采用改進自私羊群算法對熱斑位置進行尋優(yōu),利用雙邊濾波對熱斑故障進行分割,獲得熱斑故障檢測結(jié)果。蔣琳等[7]為抑制噪聲干擾,提出對紅外圖像灰度直方圖進行B 樣條最小二乘擬合,提高檢測準確率。Grimaccia 等[8]通過圖像鑲嵌技術(shù)和顏色濾波技術(shù)識別出光伏組件,結(jié)合紅外溫度信息檢測熱斑故障。上述算法雖然在一定條件下具有較高的檢測精度,但是由于采用人工提取特征其魯棒性較弱,泛化能力不足。深度學習借助于卷積網(wǎng)絡能夠自動學習圖像特征信息,得到樣本具體特征表達,在目標缺陷檢測任務中取得了顯著成效,具有較好的魯棒性和泛化能力[9-11]。因此,部分學者借助深度學習對光伏熱斑檢測展開研究。
目前,基于深度學習的檢測方法主要分為兩類:Two-stage 和One-stage。Two-stage 方法需要產(chǎn)生候選區(qū)域并對其進行分類以確定目標,代表算法 有Faster RCNN[12],Sparse RCNN[13]等。樊濤等[14]在Faster RCNN 網(wǎng)絡中 結(jié)合注 意力機制以提升復雜環(huán)境下特征提取的有效性,進而提升網(wǎng)絡檢測準確率。但Two-stage 算法存在設計復雜、檢測效率低等問題。One-stage 算法通過回歸的方式檢測目標,代表算法包括SSD[15-16],YOLO 系列[17]等。王道累等[18]針對紅外熱斑圖像數(shù)據(jù)較少的問題,利用伽馬變換擴充數(shù)據(jù),并提出改進YOLOv4-tiny 的金字塔結(jié)構(gòu)并融合注意力機制提升檢測準確率。夏杰鋒等[19]針對熱斑成因的差異性提出基于EfficientNet 的缺陷分類網(wǎng)絡,利用邊緣檢測提取光伏組件輪廓進行定位。Su 等[20]提出一種通道注意力特征加權(quán)的門機制進行特征提取與過濾,實驗證明該方法可有效檢測光伏熱斑故障。
綜上,基于深度學習的光伏熱斑檢測算法相較于基于人工特征的檢測算法具有明顯優(yōu)勢,但是基于深度學習的光伏熱斑檢測方法依然存在以下難點:第一,現(xiàn)有算法主要針對單尺度目標開展研究,而光伏熱斑故障目標存在尺度差異大,導致特征難以有效表達;第二,熱斑故障紋理特征較弱且存在邊緣模糊現(xiàn)象,易淹沒于復雜背景中,導致目標特征顯著度較低,難以獲??;第三,現(xiàn)有算法難以兼顧檢測精度和網(wǎng)絡輕量化。
針對上述問題,本文提出一種融合知識蒸餾和注意力模型的光伏熱斑檢測算法(Knowledge Distillation and Attention Network,KDANet)。針對熱斑故障存在多尺度的問題,設計一種高階空間交互和通道注意力相融合的特征提取模塊以加強網(wǎng)絡對于多尺度目標特征的有效表達。為解決檢測環(huán)境復雜導致檢測困難的問題,構(gòu)建一種結(jié)合通道和位置的注意力模塊來增強故障目標顯著度,抑制背景信息干擾,進而增強檢測準確率。為提升網(wǎng)絡檢測精度的同時減少網(wǎng)絡參數(shù)量,基于知識蒸餾思想框架將教師網(wǎng)絡的知識遷移至學生網(wǎng)絡中,兼顧網(wǎng)絡精度與網(wǎng)絡輕量化。
為提升復雜環(huán)境下多尺度熱斑故障檢測能力,本文提出一種融合知識蒸餾和注意力機制的光伏熱斑檢測算法。其中,學生網(wǎng)絡為需要實現(xiàn)高精度的小型網(wǎng)絡,保證模型參數(shù)量少,故選擇YOLOv5s 作為學生網(wǎng)絡;而教師網(wǎng)絡需要保證足夠高的檢測精度,構(gòu)建出檢測精度高的網(wǎng)絡,模型參數(shù)量較大。為提升網(wǎng)絡對多尺度熱斑特征信息的表達能力,本文設計一種高階空間信息交互和通道注意力相融合的模塊;為提升復雜背景下網(wǎng)絡對熱斑信息的正確表達,本文設計一種結(jié)合通道和位置信息的注意力模塊。本文檢測網(wǎng)絡結(jié)構(gòu)主要分為三部分,分別為教師網(wǎng)絡部分、學生網(wǎng)絡部分和蒸餾部分,原理如圖1 所示。

圖1 基于知識蒸餾的檢測原理圖Fig.1 Schematic diagram of detection based on knowledge distillation
訓練具體步驟如下:
(1)選取YOLOv5 作為教師網(wǎng)絡和學生網(wǎng)絡的基準,教師網(wǎng)絡將主干網(wǎng)絡部分替換為高階空間交互和通道注意力相融合的特征提取模塊(Fusion Channel Attention and Higher-order Spatial Interactions,F(xiàn)CAHSI)以增強多尺度目標在網(wǎng)絡中的權(quán)重信息,提升網(wǎng)絡檢測準確率。
(2)將教師網(wǎng)絡中檢測頭部分替換為本文設計的結(jié)合通道和位置信息的注意力模塊(Combining Channel and Location information Attention,CCLA)來抑制復雜背景的干擾,增強目標顯著度,借以提升熱斑目標的檢測精度。
(3)將光伏熱斑數(shù)據(jù)集劃分為訓練集、驗證集和測試集,訓練集分別送入教師網(wǎng)絡和學生網(wǎng)絡進行訓練,得到初始權(quán)重。
(4)利用初始權(quán)重進行蒸餾訓練,即獲取教師網(wǎng)絡預測層輸出特征,將其遷移至學生網(wǎng)絡預測層,輔助學生網(wǎng)絡學習熱斑故障信息。過程中通過蒸餾損失控制學習熱斑故障特征,實現(xiàn)提升學生網(wǎng)絡檢測精度的目的。
針對網(wǎng)絡對多尺度熱斑信息表達能力弱,導致算法檢測性能不足的問題,本文設計了一種融合高階空間交互和通道注意力的結(jié)構(gòu),如圖2所示。

圖2 FCAHSI 結(jié)構(gòu)圖Fig.2 Structure of FCAHSI
首先,將輸入圖像調(diào)整成統(tǒng)一尺寸,求取輸入圖像的全局平均池化Fgap得到通道注意權(quán)重圖,并利用WC獲得全局故障信息關(guān)注,計算式定義如式(1)和式(2)所示:
其中:Xdiv∈RC×W×H,指只通過一次跳躍連接拼接特征得到的特征圖,XC∈RC×1×1,指代特征圖通過全連接層后得到的權(quán)重圖,σ是sigmoid 激活函數(shù),F(xiàn)gap代指通道全局平均池化,A是通過計算得到的一種通道關(guān)注特征描述子,Xrefine代表計算得到的通道特征圖。
其次,為實現(xiàn)故障目標特征有效保留,將上述特征圖輸入至HB 模塊中,經(jīng)過門控卷積的多次空間計算,保留故障信息。令x∈RHW×C代表輸入特征,其計算式如式(3)~式(5)所示。
其中:φin,φout表示通道混合后的線性投影層,f是深度可分離卷積,p,q分別代表相鄰特征,通過上式計算相鄰特征之間的內(nèi)在聯(lián)系。
為實現(xiàn)更高層次的特征空間交互,采用遞歸的方式增加模型容量。首先,使用φin獲得一組特征p0和
然后遞歸執(zhí)行門控卷積,得到如式(7)所示特征:
其中:使用1/α將輸出縮放,穩(wěn)定訓練;{fk}是一組深度卷積層,{gk}用于不同順序匹配維度,定義如式(8)所示:
最后,將最后一個遞歸φout的輸出饋送至投影層p0,獲得更高階的空間信息交互結(jié)果。為限制高階空間交互作用引入的計算開銷,將每階通道維度按照式(9)設置。
低階特征使用較少的通道計算,可實現(xiàn)特征從粗到細全方位交互,保證目標信息的完整性。由此,可融合通道注意力和高階空間交互,實現(xiàn)目標特征信息有效保留。
針對網(wǎng)絡難以準確檢測復雜環(huán)境下熱斑故障信息的問題,本文設計一種結(jié)合位置信息和通道信息的注意力模塊,將其嵌入檢測網(wǎng)絡中,提升故障目標的表達能力,借以提升網(wǎng)絡檢測準確率和精度。具體結(jié)構(gòu)如圖3 所示。

圖3 CCLA 結(jié)構(gòu)圖Fig.3 Structure of CCLA
為增強注意力利用精確的位置信息在空間上捕捉長距離的相互作用,將全局池化分解為兩個1 維方程表示。具體而言,給定輸入X,使用池化函數(shù)(H,1)和(1,W)分別對水平方向和垂直方向的通道信息進行編碼。由此可得高度h第c通道的輸出如式(10)所示:
同樣地,由此可得寬度w第c通道的輸出如式(11)所示:
上述兩個變換分別沿著兩個空間方向聚合特征信息,產(chǎn)生一對方向感知特征圖,可以捕獲沿一個空間方向的長距離依賴關(guān)系,同時保留沿另一空間方向的精確位置信息,有助于檢測網(wǎng)絡更加準確的定位感興趣的目標。融合后的特征圖如式(12)所示:
其中:[ ·,·]指沿空間維度進行串聯(lián),F(xiàn)1是1×1 的卷積變換函數(shù),δ是非線性激活函數(shù),fu表示將水平方向和垂直方向上的空間信息進行編碼所得的中間特征圖。fu沿著空間維度分解為fh和fw,通過公式(13)和公式(14)將通道數(shù)調(diào)整至和輸入X相同。
最后,位置信息注意力部分可寫為式(15)所示:
為保留通道信息,將上述擁有位置信息的特征圖進行全局平均池化,壓縮特征為具有全局信息的1×1×C的數(shù)列(C為特征通道數(shù));然后不降維的情況下調(diào)整大小為k的快速以為卷積生成通道權(quán)重,進行局部擴通道交互,共享通道參數(shù),獲取各個通道之間的相關(guān)依賴關(guān)系,如式(16)所示:
其中,ω為特征權(quán)重,捕獲跨通道局部交互信息;CID為一維卷積,k決定擴通道局部交互的范圍。
特征通道數(shù)C與k正相關(guān),計算關(guān)系如式(17)所示:
確定通道維數(shù)C后,計算卷積核k大小如式(18)所示:
其中,γ和b分別取2 和1。最后,將生成的特征圖加權(quán)到原來的輸入特征圖上。
知識蒸餾是一種模型輕量化的方法,由教師網(wǎng)絡和學生網(wǎng)絡組成。和學生網(wǎng)絡相比,教師網(wǎng)絡結(jié)構(gòu)復雜、訓練后獲得的檢測精度更高,通過遷移教師網(wǎng)絡大模型的知識到學生網(wǎng)絡小模型中,可輔助學生網(wǎng)絡更好地學習到故障目標信息,實現(xiàn)檢測精度和速度兼顧。
針對標準蒸餾方法中學生網(wǎng)絡會從教師網(wǎng)絡預測的背景區(qū)域中學習錯誤的邊界框?qū)е鲁霈F(xiàn)檢測能力降低的問題,本文將教師網(wǎng)絡的預測層內(nèi)容進行蒸餾,并使用蒸餾損失函數(shù)控制學生網(wǎng)絡學習。本文采用如式(19)所示的蒸餾損失函數(shù),使得蒸餾過程中學生網(wǎng)絡只學習教師網(wǎng)絡預測的目標概率值較高的邊界框位置和類別概率:
當預測框和真實框相互包含或出現(xiàn)寬和高對齊時,該損失函數(shù)會退化為IoU,使得定位不準確,導致預測框收斂方向出現(xiàn)偏差,容易造成漏檢問題。因此,本文采用Focal-CIoU 損失函數(shù)替代原損失函數(shù),其計算公式如式(23)~式(26)所示:
其中:α和υ為長寬比,w,h,wgt和hgt分別表示預測框的寬、高和真實框的寬和高,γ用于控制曲線弧度。
本文實驗中軟硬件平臺配置如表1 所示。

表1 軟硬件平臺配置Tab.1 Configuration of Hardware and software
實驗使用的數(shù)據(jù)集是來自某光伏電站通過無人機攜帶熱紅外相機拍攝所得,總共1 028 張紅外圖像,使用LabelImg 工具進行標注工作,按照6∶2∶2 劃分訓練集、驗證集和測試集。在網(wǎng)絡訓練時,首先將輸入圖像調(diào)整到統(tǒng)一的640×640大小,并采用動量項為0.937 的梯度下降算法進行訓練。同時,為保證學習率隨網(wǎng)絡的學習程度而自適應,本文使用余弦退火學習率方法對學習率做自適應調(diào)整。每個批次訓練的batch 中包含8 張圖像,分為77 次送入網(wǎng)絡。
為客觀評價KDANet 算法的優(yōu)勢,本文選取召回率MR,準確率MP,mAP50 和模型推理時間Mt作為客觀評價指標,各指標的公式定義如式(27)~式(29)所示:
其中:NTP為網(wǎng)絡正確檢測出缺陷的個數(shù),NFN代表未正確檢測的缺陷個數(shù),NFP代表誤檢的故障個數(shù),和分別表示網(wǎng)絡檢測開始和結(jié)束的時間。
為客觀評估KDANet 算法的檢測性能,將KDANet 與YOLOv5 網(wǎng)絡做對比分析,其中損失函數(shù)對比曲線如圖4 所示。

圖4 損失函數(shù)對比曲線Fig.4 Loss function contrast curves
從圖4 可以看出,本文采用的損失函數(shù)可以更快的將訓練損失降到最低。
平均準確值對比曲線如圖5 所示。圖5 中本文算法精度在約150 輪后超過基準YOLOv5 算法,達到平衡且最終穩(wěn)定于84.5%。

圖5 平均準確值對比曲線Fig.5 Different module action experiments
為進一步驗證各改進模塊的有效性,本文設計的教師網(wǎng)絡在原始YOLOv5 網(wǎng)絡基礎(chǔ)上通過加入不同改進策略對測試集進行消融實驗,所有實驗均使用相同的數(shù)據(jù)樣本和參數(shù)設置,對比結(jié)果如表2 所示。

表2 不同模塊作用實驗Tab.2 Different module action experiments
由表2 結(jié)果可知,和基準網(wǎng)絡相比,教師網(wǎng)絡中單獨使用本文設計的FCAHSI 模塊后,準確率提升14.4%,召回率提升13.7%,AP50 提升15.9%。單獨使用CCLA 模塊后,準確率提升13.3%,召回率提升11.3%,AP50 提升15.3%。實驗結(jié)果說明本文提出的FCAHSI 和CCLA 模塊對于熱斑故障信息檢測能力提升顯著。
為驗證本文設計的蒸餾網(wǎng)絡性能,將教師網(wǎng)絡、學生網(wǎng)絡和蒸餾后的網(wǎng)絡進行測試對比,蒸餾溫度設置為20,蒸餾損失平衡系數(shù)λD設置為1,結(jié)果如表3 所示。

表3 蒸餾實驗結(jié)果Tab.3 Result of distillation experiment
從表3 結(jié)果可以看出,教師網(wǎng)絡模型最大,檢測精度最高,但檢測時間最長。學生網(wǎng)絡的檢測準確率、回歸率和精度均最低,經(jīng)過蒸餾之后各個指標均有不同程度的提升,尤其在不添加任何模型復雜度的情況下,檢測精度較原來提升14.2%,而檢測時間減少0.2 ms,說明本文設計的蒸餾網(wǎng)絡可將教師網(wǎng)絡的優(yōu)勢無條件遷移至學生網(wǎng)絡,從而提升學生網(wǎng)絡的檢測性能。
為客觀評價KDANet 的檢測性能,選取SSD,CenterNet,EfficientDet,F(xiàn)COS 4 種經(jīng)典算法在多尺度、小目標、密集目標、復雜背景4 種不同情景下進行對比測試(原圖中綠色框標出所有熱斑故障,實驗圖白色框標出所有漏檢、誤檢情況)。實驗用原圖和算法檢測圖如圖6 所示(彩圖見期刊電子版)。
圖6(a)為實驗用原圖,從左到右4 組實驗結(jié)果及分析如下。
第1 組實驗:多尺度熱斑目標檢測。從第1組實驗結(jié)果可以看出,SSD,EfficientDet 和FCOS 算法均存在漏檢問題,本文算法因使用FCAHSI 模塊,多尺度信息保留能力較強,可較好的解決故障尺度不同導致檢測困難問題,檢測結(jié)果更為準確。
第2 組實驗:小目標熱斑檢測。SSD,EfficientDet 算法有漏檢情況,其余3 種算法可檢測出小目標熱斑故障。本文算法因使用了CCLA模塊,增強網(wǎng)絡對小目標位置信息的特征表述,提升了對小目標的檢測能力。
第3 組實驗:密集目標檢測。對于故障所處區(qū)域較為密集的情況,所有算法均可檢測出。其中,EfficientDet 和FCOS 存在誤檢情況,無法準確檢測出所有故障,而SSD 算法檢測框較真實檢測框存在一定偏移。
第4 組實驗:復雜背景下熱斑目標檢測。實驗結(jié)果表明,CenterNet 算法可檢測出熱斑故障,但也存在誤檢情況。其余對比算法均可檢測出熱斑故障,而本文算法使用CCLA 模塊,提升網(wǎng)絡對于復雜背景下熱斑故障的表達能力,不僅可以準確檢測出故障,還擁有最高的置信度。
為進一步驗證KDANet 算法的優(yōu)勢,將KDANet 算法與8 種經(jīng)典目標檢測算法進行對比實驗。實驗過程中所有目標檢測算法均使用相同數(shù)據(jù)樣本和參數(shù)進行訓練,其檢測結(jié)果如表4所示。從表4 的實驗結(jié)果可以看出本文算法有最高的檢測精度,與Yolov7 算法相比,在檢測精度上更為優(yōu)異,能夠較好的兼顧檢測精度和實時性具有良好的檢測性能。

表4 不同算法檢測結(jié)果對比Tab.4 Comparison of detection results of different algorithms
本文提出了一種融合知識蒸餾和注意力模型的光伏熱斑故障檢測方法。通過對比實驗分析,得到如下結(jié)論:
(1)通過本文設計的融合通道注意力和空間交互能力的模塊可以有效增強多尺度熱斑故障的表征能力,提高目標故障的檢測準確率。
(2)通過在檢測網(wǎng)絡中采用本文設計的結(jié)合通道和位置注意力模塊,檢測網(wǎng)絡可以準確感知復雜背景下故障目標的具體坐標位置,借以提升檢測精度。
(3)通過知識蒸餾的知識遷移過程,學生網(wǎng)絡可以更好地學習光伏熱斑故障,進而提高熱斑故障的檢測精度,其檢測結(jié)果較原始網(wǎng)絡高14.2%。
(4)通過某光伏電站無人機拍攝所得到的數(shù)據(jù)對本文算法進行驗證,實驗結(jié)果表明,本文算法能夠?qū)崿F(xiàn)復雜環(huán)境下多類故障目標的準確檢測,檢測精度高達84.8%,并且具有良好的實時性。