周子揚,李英娜
(昆明理工大學(xué) 信息工程與自動化學(xué)院,云南 昆明 650504)
無人機(jī)應(yīng)用的興起,為輸電線路巡檢帶來了全新的方式[1]。當(dāng)前,使用無人機(jī)圖像對自然場景進(jìn)行分類檢索成為了一個新趨勢。針對無人機(jī)巡檢圖像,設(shè)計一套算法來自動檢測出輸電線路桿塔上的鳥巢,能夠極大提高巡檢的工作效率,進(jìn)而有效保障電力系統(tǒng)的安全運行。
對于背景簡單、干凈的鳥巢圖像,比如接觸網(wǎng)鳥巢圖像,其檢測方法主要有以下 3種。文獻(xiàn)[2]采用了一種相對位置不變的接觸網(wǎng)鳥巢識別方法,其優(yōu)勢在于計算簡單,只需要計算桿塔白色橫梁上白色區(qū)域的比值即可以確定出是否存在鳥巢。文獻(xiàn)[3]使用灰度圖像匹配方法,只需選定好鳥巢模版,再使用模版匹配法對交集閾值圖進(jìn)行匹配,就可以得到匹配結(jié)果;此方法簡單快捷。文獻(xiàn)[4]利用懸垂點把鳥巢細(xì)枝條提取出來,對提取出的細(xì)枝條方向和長度信息分別使用 SVM(support vector machine)分類器進(jìn)行分類來確定鳥巢的位置;該方法準(zhǔn)確率可以達(dá)到90%。
目前,輸電桿塔上的鳥巢圖像可以通過航拍得到。由于此類圖像的背景相對復(fù)雜,所以前面所述的3種方法并不十分適用。該情況下,應(yīng)用機(jī)器學(xué)習(xí)算法分析并提取圖像中鳥巢特征往往能夠得到較好的效果。
文獻(xiàn)[5]在使用主成分分析法提取鳥巢特征的基礎(chǔ)上,對比了BP(back propagation)神經(jīng)網(wǎng)絡(luò)、SVM 分類器和極限學(xué)習(xí)機(jī)這 3種分類器的識別效果。
文獻(xiàn)[6]采用了無監(jiān)督和有監(jiān)督的學(xué)習(xí)方案來定位鳥巢的位置。在有監(jiān)督的學(xué)習(xí)方案中,對比了Haar特征和LBP(local binary pattern)紋理特征訓(xùn)練的AdaBoost分類器結(jié)果,并將結(jié)果與調(diào)整后的基于 Fast R-CNN深度學(xué)習(xí)檢測方法進(jìn)行了對比。
文獻(xiàn)[7]用深度學(xué)習(xí)技術(shù)提取了輸電桿塔中的鋼條特征,通過引入GANs模型構(gòu)建了雙判別器對抗模型,大大提升了鳥巢的檢測準(zhǔn)確度。
當(dāng)拍攝距離較遠(yuǎn)時,航拍圖像背景會比較復(fù)雜,且桿塔在圖像中占比較小。另外,由于拍攝角度的原因,圖像中會存在鳥巢被局部遮擋的情況。以上原因使得上述文獻(xiàn)所使用的方法并不適用于對航拍圖像中鳥巢的檢測識別。
為此,本文提取出的鳥巢檢測方法為:首先對桿塔框架進(jìn)行檢測,以排除復(fù)雜背景對鳥巢檢測所帶來的干擾;然后針對鳥巢被遮擋的情況,使用紋理特征來檢測圖像中鳥巢在桿塔上的具體位置。
考慮圖像中桿塔的特征以及復(fù)雜背景帶來的干擾,輸電桿塔框架提取算法的流程大體可以分為3個步驟。
步驟1:首先,將圖片RGB顏色空間轉(zhuǎn)換成HSV顏色空間[8];然后,進(jìn)行濾波處理以有利于桿塔邊緣的提??;最后,使用單一全局閾值進(jìn)行分割,實現(xiàn)簡單背景分離。
步驟2:利用Canny算子進(jìn)行邊緣檢測;再使用腐蝕操作去掉不需要的小區(qū)域;最后選出面積最大的3個連通域。
步驟3:把圖片分成10×10像素大小的盒子。先進(jìn)行Hough直線變換,再挑選出所有能被一條直線貫穿的盒子;最后提取出桿塔的框架。
圖1為航拍桿塔圖像示例。
圖1 航拍桿塔圖像示例Fig. 1 The aerial image of pole towers
由圖1可以看出,電氣部件(如塔、絕緣子)的顏色特征不是唯一的。塔的顏色外觀為灰白色,復(fù)合絕緣子為磚紅色,絕緣子呈現(xiàn)出水綠色。
由于航拍時光照情況的不同,圖像中RGB顏色空間不能有效區(qū)分功率元件。
不同顏色空間中,桿塔的視覺表現(xiàn)非常不同。在RGB顏色空間中,目標(biāo)塔與背景對象混合在一起;在HSV顏色空間中,桿塔的各個部分相互連接,呈現(xiàn)出強(qiáng)烈的聚集性。
經(jīng)過對比發(fā)現(xiàn):在H通道下,桿塔的形狀能夠得到完整的保留??紤]到背景的影響可以被連通域過濾掉,因此選擇HSV顏色空間作為特征提取基色空間。
考慮到濾波有助于邊緣的提取,故在H通道下進(jìn)行中值濾波。
中值濾波[9]是基于排序統(tǒng)計理論的一種能夠有效控制信噪比的濾波方式。使用該方法,能夠減少脈沖噪聲、椒鹽噪聲,且不會丟失圖像邊緣細(xì)節(jié)。這些優(yōu)良特性有利于桿塔的邊緣提取。
閾值分割是一種被廣泛應(yīng)用的圖像分割技術(shù),其原理是:根據(jù)圖像中目標(biāo)區(qū)域與背景在灰度特性上的差異,把目標(biāo)區(qū)域和背景區(qū)域看作具有不同灰度級的2類區(qū)域的組合。通過選取一個較為合理的閾值來判定圖像中每個像素點所屬區(qū)域,從而產(chǎn)生相應(yīng)的二值圖像。
在H通道下,桿塔和背景灰度存在差異。使用基本全局閾值處理后,圖1所示圖像的分割結(jié)果如圖2所示。
圖2 閾值分割后的圖像Fig. 2 The image after threshold segmentation
使用Canny算子[10]對圖像的邊緣進(jìn)行檢測。
由于采集到的桿塔圖像分辨率大小不一,經(jīng)過統(tǒng)一分辨率后,圖像中可能存在噪聲。使用Canny算子進(jìn)行邊緣檢測,不但能夠提取出圖像中信號強(qiáng)度較弱的邊緣信息,而且可以有效較少噪聲帶來的影響。
邊緣檢測結(jié)果如圖3所示。
圖3 Canny邊緣檢測結(jié)果Fig. 3 The result of Canny edge detection
在選擇對應(yīng)連通區(qū)域前進(jìn)行腐蝕操作,可以把圖像中不相關(guān)的連接小區(qū)域去除掉。
腐蝕操作是形態(tài)學(xué)操作之一,可用于消掉圖像中不需要的邊界點,使圖像沿著邊緣向內(nèi)收,使得被選中結(jié)構(gòu)體附近不需要的像素點消失。
在腐蝕操作后,篩選出面積最大的3個連通域并標(biāo)記出來,并把除標(biāo)記的連通域以外的區(qū)域全部屏蔽掉。結(jié)果如圖4所示。
圖4 篩選出的連通域Fig. 4 The filtered connected domain
將篩選出來的域按面積大小排序,前3的連通域分成10×10像素大小的盒子,如圖5所示。
圖5 連通域分成10×10像素大小的盒子Fig. 5 Connected domains that are divided into boxes of 10 pixels by 10 pixels
對這3個連通域進(jìn)行Hough直線檢測:最小直線長度設(shè)置為 15像素。直線之間的最小距離也設(shè)置為 15像素。小于這個值,就認(rèn)為是同一個直線。
刪除掉沒有直線的和不包含一條直線貫穿的盒子。保留包含盒子最多的連通域,用多邊形包圍起來,標(biāo)記出桿塔的具體位置。桿塔提取的結(jié)果如圖6所示。
圖6 多邊形標(biāo)記出桿塔的位置Fig. 6 The position of towers marked by polygons
鳥巢通常建造在桿塔最堅實的部位。圖7中,由于鳥巢邊緣不規(guī)則以及桿塔的遮擋,其輪廓提取較困難。
圖7 提取出的桿塔框架原圖Fig. 7 The extracted original drawing of tower frame
基于鳥巢在圖像中表現(xiàn)出的特性,本文提出了一種新的鳥巢檢測框架,共分為 3步:預(yù)處理、篩選鳥巢疑似區(qū)域和基于紋理特征的分類學(xué)習(xí)。
針對鳥巢對象,本文使用了如下方法來分離背景區(qū)域,提取疑似鳥巢區(qū)域。
由于HSV顏色空間適合人眼的視覺特點且便于定量分析,所以將圖像轉(zhuǎn)到該顏色空間;隨后量化每個通道分量中的顏色,從而找到符合鳥巢顏色特征的分量范圍。在量化顏色分量前,先將H分量歸一化到區(qū)間[0,255]內(nèi),S通道分量和V通道分量同時歸一化到區(qū)間[0,1]內(nèi)。
具體的量化步驟如下:
(1)考慮到人眼辨別顏色的方式,把H通道的分量平均分成8份,S通道和V通道的分量同時分為4等份和3等份。
(2)在V通道中,將V值小于15%的顏色判定為黑色,令其為0。
(3)對于S值小于10%、V值大于80%的顏色,分別把S的值改為0,V的值變?yōu)?。同時,判定該顏色是白色。
(4)對于不在白色和黑色范圍內(nèi)的顏色,HSV中的每一個分量不變,并把這類顏色判定為彩色。
經(jīng)過上述的步驟后,把HSV顏色中的每一個分量合成為L=12H+3S+V,式中的L范圍落在[0,95]區(qū)間里。
通過大量分析鳥巢區(qū)域樣本得出:H分量集中落在[0,20]及[224,255]范圍內(nèi),飽和度S取值范圍不限,亮度V取值小于0.7。在此條件下即能不漏檢所有可能包含鳥巢的區(qū)域。
圖7為提取出的桿塔框架原圖。圖8為對圖7進(jìn)行量化HSV顏色分量后,篩選出的符合鳥巢樣本的HSV編碼特征值區(qū)域圖像。
圖8 符合鳥巢樣本的HSV編碼特征值區(qū)域Fig. 8 The HSV coding eigenvalue region consistent with bird’s nest sample
從圖8可以看出,通過確定HSV顏色分量的范圍,算法不但能夠保留完整的鳥巢區(qū)域,而且能分離掉絕大部分的背景和桿塔的部分區(qū)域。
如圖9所示,在整個桿塔圖像區(qū)域中找到連通且符合上述HSV顏色分量范圍的顏色區(qū)域。使用連通結(jié)構(gòu)管理這些疑似鳥巢的連通區(qū)域。
圖9 提取出的鳥巢疑似區(qū)域Fig. 9 The extracted suspected area of the bird's nest
找出這些區(qū)域中最大的矩形外接框,進(jìn)而統(tǒng)一疑似鳥巢區(qū)域的大小。用這些統(tǒng)一好大小的鳥巢疑似區(qū)域來做灰度共生矩陣[11]特征量的分析。
對于候選的鳥巢區(qū)域,根據(jù)先驗知識,通過控制變量,將生成的灰度共生矩陣中的灰度級設(shè)置為16,距離選擇為5,生成4個方向。
對區(qū)域中滿足指定條件的像素進(jìn)行統(tǒng)計,計算出4個方向的灰度共生矩陣。根據(jù)灰度共生矩陣的特征量的計算方法,計算如圖10所示的9張圖像不同方向的6個紋理特征量(能量、對比度、相關(guān)性、熵、逆差矩、慣性矩)。這9張用來對比特征量的圖像依次分別是3張不同的鳥巢圖像、植物、導(dǎo)線、田地、絕緣子、桿塔和房屋。
圖10 計算紋理特征量對比圖例Fig. 10 The comparison diagram for calculating the characteristic quantity
圖10的6個紋理特征量計算結(jié)果如圖11所示。
圖11 圖像紋理特征量變化曲線Fig. 11 Curves of the image texture feature change
綜合考慮圖11所示計算結(jié)果,故選擇使用灰度共生矩陣的慣性矩特征量對疑似鳥巢區(qū)域進(jìn)行分類。
含有鳥巢的輸電桿塔圖像由某電力公司無人機(jī)航拍得到。
圖像資料共46 G。每張圖像的尺寸均不相同。圖像最小11.7 M,最大有28.7 M。
在收集到的2 416張輸電桿塔圖像中共有鳥巢2 495個。
在進(jìn)行樣本分類之前,首先需要考慮的問題就是樣本的收集。
本算例中,收集了含有鳥巢的正樣本圖像一共2 000張,不包含鳥巢的負(fù)樣本4 000張。將這些樣本統(tǒng)一成100×90大小。
分類器[12]:在訓(xùn)練的過程中,可以設(shè)置訓(xùn)練樣本的大小和級數(shù),可以增大分配的內(nèi)存。這樣可以縮短訓(xùn)練時間。
人工區(qū)分含有鳥巢的樣本和不含鳥巢的樣本:把有鳥巢的樣本定為正樣本,不含有鳥巢的樣本作為負(fù)樣本。鳥巢候選區(qū)均為灰度圖。為了確保負(fù)樣本的復(fù)雜多樣性,在鳥巢以外的疑似候選圖像中,選擇不同的圖像作為負(fù)樣本。如圖10所示,負(fù)樣本包含植物、導(dǎo)線和桿塔等。
假設(shè)原始的桿塔圖像樣本有2類。第一類為圖像中含有鳥巢區(qū)域的正例樣本,共有P個;第二類為圖像中沒有鳥巢區(qū)域的負(fù)例樣本,共有N個,則實際圖像中某區(qū)域是否含有鳥巢的情況和分類器檢測結(jié)果共有4種可能。
(1)TP(ture positive):圖像中的某個區(qū)域含有鳥巢,檢測結(jié)果也顯示該區(qū)域有鳥巢。
(2)FP(false positive):圖像中的某個區(qū)域沒有鳥巢,檢測結(jié)果顯示該區(qū)域含有鳥巢。
(3)FN(false negative):圖像中的某個區(qū)域含有鳥巢,檢測結(jié)果顯示該區(qū)域沒有鳥巢。
(4)TN(ture negative):圖像中的某個區(qū)域沒有鳥巢,檢測結(jié)果也顯示該區(qū)域沒有鳥巢。
顯然有P=TP+FN,N= FP+TN。各個檢測結(jié)果的含義如下。
虛警率FPR(fall-out or false positive rate):FPR=FP/(FP+TN)=FP/N,是指圖像中的某個區(qū)域沒有鳥巢而分類器判斷該區(qū)域含有鳥巢的樣本占圖像中沒有鳥巢區(qū)域的負(fù)例樣本的比例。
漏警率FNR(miss rate or false negative rate):FNR=FN/(FN+TP)=FN/P,是指圖像中某個區(qū)域含有鳥巢但是分類器卻沒有檢測到鳥巢的個數(shù)占全部正例樣本數(shù)量的比例。
召回率TPR(true positive rate):TPR=TP/(TP+FN)=TP/P,是指分類器正確檢測出圖像某區(qū)域含有鳥巢的樣本個數(shù)占全部正例樣本數(shù)量的比例。
精確度PPV(precision or positive predictive value):PPV=TP/(TP+FP),是指分類器判定為含有鳥巢正例樣本圖像中真正含有正例樣本的比例。
準(zhǔn)確率ACC(Accuracy):ACC=(TP+TN)/(P+N),是指分類器能將正的樣本判定為正,負(fù)的樣本判定為負(fù)的能力,即正確指出鳥巢是否含有鳥巢區(qū)域的次數(shù)占總樣本數(shù)量的比例。
對SVM分類器[12]分別使用3個不同的特征進(jìn)行訓(xùn)練,其中包括:Haar特征[13]、LBP(local binary pattern)特征[14]和本文所使用的灰度共生矩陣中的慣性矩特征值。
對于上述的3種不同特征,分別使用相同的桿塔圖像樣本和訓(xùn)練迭代次數(shù),得到如表1所示的5種檢測指標(biāo)計算結(jié)果。
表1 SVM分類器檢測結(jié)果Tab. 1 The detection results of SVM classifier
從表1中FPR、FNR、TPR、PPV和ACC這5個指標(biāo)可以看出,本文使用灰度共生矩陣中的慣性矩進(jìn)行檢測的方法在鳥巢檢測中的效果要明顯優(yōu)于另外2個特征;其次,使用LBP特征的鳥巢檢測效果又要好于使用Haar特征。
表2給出了3種算法對比結(jié)果。
表2 算法對比結(jié)果Tab. 2 The algorithm contrast result
從表2可以看出:使用LBP特征和Haar特征分別能夠得到78.68%和63.87%的準(zhǔn)確率,而使用灰度共生矩陣中的慣性矩特征值進(jìn)行訓(xùn)練可以得到 83.60%的檢測準(zhǔn)確率,檢測速度也有明顯的提高;因此,特征的選擇對分類器的訓(xùn)練至關(guān)重要。
本文提出了一種融入紋理特征的桿塔鳥巢檢測方法。
該方法針對無人機(jī)航拍得到輸電桿塔圖像,經(jīng)過圖像預(yù)處理、桿塔框架提取、鳥巢紋理特征提取和訓(xùn)練分類等步驟,實現(xiàn)了輸電桿塔鳥巢圖像的檢測。
實驗結(jié)果表明:本文使用的灰度共生矩陣中的慣性矩特征在鳥巢檢測中的效果要明顯優(yōu)于Haar特征、LBP特征。使用灰度共生矩陣中的慣性矩特征值進(jìn)行訓(xùn)練可以得到83.60%的檢測準(zhǔn)確率,檢測速度相比之下也有明顯提高。