鄭丹陽(yáng) 李立明 孫睿 柴曉冬 鄭樹(shù)彬 羅文成
(1.上海工程技術(shù)大學(xué)城市軌道交通學(xué)院,上海 201620;2.常州路航軌道交通科技有限公司,江蘇常州 213100)
線路上的扣件狀態(tài)檢測(cè)主要通過(guò)人工巡檢來(lái)完成。人工巡檢的方式具有簡(jiǎn)單、低成本等優(yōu)勢(shì),但存在檢測(cè)效率低、漏檢率高等缺陷。近年來(lái),隨著自動(dòng)化巡檢需求的不斷提升,國(guó)內(nèi)外許多學(xué)者對(duì)利用機(jī)器視覺(jué)技術(shù)實(shí)現(xiàn)軌道扣件狀態(tài)檢測(cè)的方法進(jìn)行了研究。目前主要的扣件狀態(tài)檢測(cè)方法都是利用傳統(tǒng)的圖像處理方法對(duì)扣件螺栓或彈條的特征進(jìn)行識(shí)別檢測(cè)。李永波等[1]通過(guò)設(shè)置扣件圖像的感興趣區(qū)域(Region of Interest,ROI),提取ROI 區(qū)域的方向梯度直方圖(Histogram of Oriented Gradient,HOG)特征進(jìn)行狀態(tài)檢測(cè)。WANG等[2]通過(guò)使用二維主成分分析法提取扣件螺栓的特征進(jìn)行分類。陳小艷等[3]提出利用改進(jìn)的局部二值模式(Local Binary Pattern,LBP)編碼算法突出扣件圖像的邊緣特征,再使用隱含狄利克雷分配(Latent Dirichlet Allocation,LDA)詞包來(lái)描述扣件的主題進(jìn)行狀態(tài)檢測(cè)。代先星等[4]提出通過(guò)可以減少自然光影響的激光測(cè)量法采集扣件圖像的三維數(shù)據(jù),再利用扣件圖像的深度梯度特征(Height Gradient Orientation Histograms,HGOH)對(duì)扣件狀態(tài)進(jìn)行檢測(cè)分類。也有學(xué)者對(duì)基于深度學(xué)習(xí)的扣件狀態(tài)檢測(cè)方法進(jìn)行了研究,龍炎等[5]使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)提取扣件的淺層和深層特征,再根據(jù)扣件特征使用Faster-RCNN(Region Convolutional Neural Network)網(wǎng)絡(luò)進(jìn)行狀態(tài)分類。Xavier 等[6]利用定制化的全卷積網(wǎng)絡(luò)對(duì)扣件的高度抽象特征進(jìn)行提取和扣件類型識(shí)別,針對(duì)不同類型扣件使用定制化的支持向量機(jī)進(jìn)行狀態(tài)分類。與傳統(tǒng)的方法相比,采用深度學(xué)習(xí)技術(shù)的算法檢測(cè)準(zhǔn)確率較高,但通常需要使用定制化的扣件數(shù)據(jù)集對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,對(duì)于不同類型的扣件網(wǎng)絡(luò)通用性較差。
作為新一代軌道扣件產(chǎn)品,快速?gòu)棗l扣件已經(jīng)在國(guó)內(nèi)外被廣泛應(yīng)用。與傳統(tǒng)的軌道扣件不同,快速?gòu)棗l扣件是一種開(kāi)關(guān)型扣件,它的狀態(tài)可以根據(jù)彈條形狀和彈條所處的位置檢測(cè),而傳統(tǒng)的軌道扣件檢測(cè)方法對(duì)這一類扣件的狀態(tài)檢測(cè)效果并不理想。針對(duì)這一問(wèn)題,本文提出了一種融合扣件圖像深度邊緣特征和HOG特征的狀態(tài)檢測(cè)方法,具體流程如圖1所示。
圖1 基于深度邊緣特征的軌道扣件狀態(tài)檢測(cè)方法流程
目前,軌道扣件的邊緣特征主要利用Sobel,Canny等方法進(jìn)行檢測(cè)[7-8]。傳統(tǒng)的檢測(cè)方法使用簡(jiǎn)單、在某些場(chǎng)景下檢測(cè)效果良好,但這類方法只考慮了圖像梯度、紋理等低層特征,存在噪聲敏感、閾值參數(shù)設(shè)置要求高等問(wèn)題。近幾年,采用卷積神經(jīng)網(wǎng)絡(luò)的邊緣檢測(cè)方法開(kāi)始出現(xiàn),卷積神經(jīng)網(wǎng)絡(luò)可以提取圖像中高層的語(yǔ)義特征,在檢測(cè)精度、抗噪能力等方面要明顯好于傳統(tǒng)的檢測(cè)方法。因此,本文采用卷積神經(jīng)網(wǎng)絡(luò)模型來(lái)提取軌道扣件的邊緣特征。
整體嵌套邊緣檢測(cè)(Holistically-Nested Edge Detection,HED)網(wǎng)絡(luò)[9]是一種檢測(cè)物體邊緣特征的方法,由16 層的視覺(jué)幾何組(Visual Geometry Group,VGG)網(wǎng)絡(luò)改進(jìn)而來(lái),其網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 HED網(wǎng)絡(luò)結(jié)構(gòu)
相較于VGG16 網(wǎng)絡(luò),HED 網(wǎng)絡(luò)做了以下改進(jìn)[10-12]:①去除了VGG16 網(wǎng)絡(luò)conv5 的最后一個(gè)池化層以及之后的三個(gè)全連接層和Softmax 層。去除了這些結(jié)構(gòu)可以使HED 網(wǎng)絡(luò)輸入圖像的大小不必像VGG網(wǎng)絡(luò)一樣限制在224×224,而是實(shí)現(xiàn)了對(duì)任何大小圖像的輸入。②對(duì)conv1—conv5 的最后一個(gè)卷積層分別連接一個(gè)側(cè)邊輸出層,這些輸出層的感受野大小見(jiàn)表1??芍?,HED 網(wǎng)絡(luò)的輸出是多尺度和多層級(jí)的,隨著感受野尺寸的不斷變大,側(cè)邊輸出的圖像尺寸不斷減小,同時(shí)側(cè)面輸出圖像的邊緣特征信息不斷豐富。然后將側(cè)邊輸出圖像進(jìn)行反卷積,使各側(cè)面輸出層輸出的圖像尺寸一致,最后利用特征融合層將多尺度的邊緣特征信息圖像進(jìn)行融合來(lái)預(yù)測(cè)圖像的邊緣。
表1 側(cè)邊輸出層的感受野大小
HED 網(wǎng)絡(luò)通過(guò)對(duì)各個(gè)側(cè)面輸出層同時(shí)訓(xùn)練將輸出結(jié)果進(jìn)行融合的方式,對(duì)網(wǎng)絡(luò)訓(xùn)練的過(guò)程進(jìn)行了簡(jiǎn)化,提升了訓(xùn)練速度。對(duì)于軌道扣件圖像,只有10%的像素屬于邊緣區(qū)域,邊緣區(qū)域和非邊緣區(qū)域的像素占比差異巨大,會(huì)造成HED 網(wǎng)絡(luò)使用常規(guī)的損失函數(shù)進(jìn)行訓(xùn)練時(shí)出現(xiàn)模型不穩(wěn)定的現(xiàn)象。為解決這個(gè)問(wèn)題HED 網(wǎng)絡(luò)對(duì)損失函數(shù)進(jìn)行了修改。HED 網(wǎng)絡(luò)共有5 個(gè)側(cè)面輸出層,每個(gè)側(cè)面輸出層均與一個(gè)分類器相連接,其中分類器的響應(yīng)權(quán)重為w={w(1),...,w(5)}。網(wǎng)絡(luò)最終的目標(biāo)函數(shù)Lside(W,w)為
式中:W為所有網(wǎng)絡(luò)參數(shù)的集合;lside為各個(gè)側(cè)面輸出層的損失函數(shù);ak為各個(gè)側(cè)面輸出層的損失函數(shù)在全部損失函數(shù)中的占比。
網(wǎng)絡(luò)引入平衡因子β來(lái)解決上文提到圖像邊緣區(qū)域和非邊緣區(qū)域的像素?cái)?shù)量差異巨大的問(wèn)題,得到各側(cè)面輸出層的損失函數(shù)l(k)side(W,w(k)),即
式中:β為標(biāo)簽標(biāo)注的非邊緣像素|Z-|和總像素|Z|的比值,β= |Z-|/|Z|;1-β為邊緣像素|Z+|和總像素|Z|的比值,1-β= |Z+|/|Z|;Pr(yj= 1|X;W,w(k))通過(guò)側(cè)邊輸出的激活函數(shù)計(jì)算得到;X為原始輸入圖像的所有像素;yj為像素點(diǎn)j處對(duì)應(yīng)的真值邊緣映射,yj∈{0,1}。
為了使用側(cè)面輸出層對(duì)邊緣進(jìn)行預(yù)測(cè),網(wǎng)絡(luò)添加了一個(gè)特征融合層將各個(gè)側(cè)面輸出層的輸出結(jié)果進(jìn)行融合訓(xùn)練,特征融合層的損失函數(shù)Lfuse(W,w,h)為
式中:h為融合權(quán)重,h={h1,...,h5};D(Z,Z^fuse)為融合后標(biāo)簽的標(biāo)注結(jié)果和預(yù)測(cè)結(jié)果之間的距離,Z^fuse=是側(cè)面輸出層的輸出。
將側(cè)面輸出層的損失函數(shù)與權(quán)重融合層的損失函數(shù)利用梯度下降方法進(jìn)行優(yōu)化得到總體的損失函數(shù)L(W,w,h),即
為了檢驗(yàn)網(wǎng)絡(luò)邊緣特征提取的性能,本文采用與傳統(tǒng)的Canny 算子進(jìn)行比較,邊緣特征提取結(jié)果見(jiàn)圖3。圖3(a)為4 種不同場(chǎng)景不同類型的軌道扣件圖像,圖3(b)為經(jīng)過(guò)HED網(wǎng)絡(luò)處理得到的深度邊緣特征圖像,圖3(c)為經(jīng)過(guò)圖像平滑處理,再使用Canny算子提取到的邊緣特征圖像。
圖3 不同場(chǎng)景不同類型的軌道扣件邊緣特征提取結(jié)果
由圖3 可知:①Canny 算子利用高斯濾波器進(jìn)行圖像平滑處理,再利用雙閾值算法來(lái)檢測(cè)圖像邊緣,對(duì)于對(duì)比度強(qiáng)的扣件圖像可以完整地檢測(cè)出扣件邊緣。但是對(duì)于對(duì)比度低的現(xiàn)場(chǎng)扣件圖像,Canny 算子難以實(shí)現(xiàn)完整檢測(cè),同時(shí)Canny 算子存在容易將噪聲點(diǎn)誤判為圖像邊緣信息的缺點(diǎn),造成圖像中出現(xiàn)許多虛假邊緣。②HED 網(wǎng)絡(luò)采用多尺度、多層級(jí)的方式進(jìn)行學(xué)習(xí),去噪聲能力明顯強(qiáng)于Canny算子,不但可以完整地檢測(cè)出強(qiáng)邊緣,而且可以完整地檢測(cè)出許多弱邊緣,對(duì)不同場(chǎng)景不同類型扣件圖像的邊緣信息均可以比較完整地檢測(cè)出來(lái),同時(shí)在低對(duì)比度的現(xiàn)場(chǎng)扣件圖像中能較好地抑制背景噪聲。
本文提出的基于深度邊緣特征的扣件狀態(tài)檢測(cè)方法,首先將同步控制線陣相機(jī)采集到的軌道扣件圖像利用HED 網(wǎng)絡(luò)得到深度邊緣特征圖,然后對(duì)得到的深度邊緣特征圖進(jìn)行HOG特征提取,最后把兩者的融合特征作為特征描述算子輸入到分類器中,對(duì)不同狀態(tài)的扣件進(jìn)行識(shí)別分類。
HOG 特征是一種描述圖像中目標(biāo)對(duì)象特征的方法[12-13]。它將圖像劃分成若干個(gè)細(xì)胞單元,通過(guò)計(jì)算每個(gè)細(xì)胞單元內(nèi)的梯度方向信息并統(tǒng)計(jì)成直方圖來(lái)構(gòu)成特征。由于HOG 特征是將圖像劃分成更小的細(xì)胞單元進(jìn)行操作,因此可以有效減少光源位置和拍攝角度的影響,從而提高扣件識(shí)別的準(zhǔn)確率。
提取圖像HOG特征的具體步驟為:
1)圖像預(yù)處理。首先將扣件深度邊緣特征圖轉(zhuǎn)化為灰度圖,再利用Gamma校正法對(duì)灰度圖進(jìn)行標(biāo)準(zhǔn)化處理。這種預(yù)處理方式可以有效減少圖像局部陰影和光照的影響。
2)計(jì)算圖像梯度。在像素點(diǎn)(x,y)處利用(-1,0,1),(1,0,- 1)T算子計(jì)算出該點(diǎn)處x軸方向的梯度和y軸方向的梯度,進(jìn)而計(jì)算出該點(diǎn)處梯度幅值G(x,y)和梯度方向α(x,y),分別為
式中:Gx(x,y),Gy(x,y)分別為輸入圖像中像素點(diǎn)(x,y)處的水平方向梯度和垂直方向梯度。
3)構(gòu)建細(xì)胞單元的梯度直方圖。先將圖像均勻劃分成若干個(gè)互不相交、大小為16×16個(gè)像素的細(xì)胞單元,然后根據(jù)步驟2)計(jì)算每個(gè)細(xì)胞單元的梯度幅值和梯度方向。再將細(xì)胞單元的梯度方向均勻劃分成12 個(gè)區(qū)間,每個(gè)區(qū)間占30°。然后將細(xì)胞單元內(nèi)的每個(gè)像素加權(quán)投影到所屬的區(qū)間中,權(quán)重大小用梯度幅值來(lái)表示。最后用直方圖來(lái)統(tǒng)計(jì)每個(gè)細(xì)胞單元內(nèi)各個(gè)區(qū)間的梯度信息。
4)形成HOG特征。將細(xì)胞單元組成塊,每個(gè)塊內(nèi)包含8×8個(gè)細(xì)胞單元。由于不同細(xì)胞單元之間梯度差異可能較大,所以在塊內(nèi)采用L1范數(shù)對(duì)方向梯度直方圖進(jìn)行歸一化。最后利用窗口將所有塊的HOG 特征進(jìn)行整合作為該扣件圖像的HOG特征。
將扣件深度邊緣特征和HOG特征進(jìn)行融合,不同狀態(tài)扣件融合特征見(jiàn)圖4。
圖4 不同狀態(tài)扣件及融合特征
采用的扣件狀態(tài)檢測(cè)算法是把扣件圖像經(jīng)過(guò)深度邊緣特征提取和HOG 特征提取后的結(jié)果輸入給支持向量機(jī)(Support Vector Machine,SVM)訓(xùn)練,將得到的模型作為分類器實(shí)現(xiàn)對(duì)軌道扣件狀態(tài)的檢測(cè)。
采用SFC 快速?gòu)棗l扣件作為試驗(yàn)樣本。與傳統(tǒng)的螺栓型扣件不同,快速?gòu)棗l扣件的狀態(tài)可以根據(jù)彈條所處的位置進(jìn)行判斷。圖5給出了SFC 快速?gòu)棗l的常見(jiàn)狀態(tài),本文只針對(duì)扣件扣緊和扣件彈出這兩種狀態(tài)進(jìn)行研究。根據(jù)現(xiàn)場(chǎng)人工巡檢的經(jīng)驗(yàn)值,將扣件區(qū)域劃分成圖6所示的兩部分作為狀態(tài)判斷標(biāo)準(zhǔn)。當(dāng)彈條完全處于區(qū)域A 時(shí),認(rèn)為扣件處于扣緊狀態(tài);當(dāng)彈條出現(xiàn)在區(qū)域B時(shí),認(rèn)為扣件處于彈出狀態(tài)。
圖5 SFC快速?gòu)棗l扣件常見(jiàn)狀態(tài)
圖6 扣件狀態(tài)判定區(qū)域劃分
SVM 是一類按監(jiān)督學(xué)習(xí)方式對(duì)數(shù)據(jù)進(jìn)行二元分類的線性分類器,在解決分類和識(shí)別等問(wèn)題中有著廣泛的應(yīng)用。由于HOG 特征的維度較高,而SVM 可以避開(kāi)高維空間的復(fù)雜性,利用核函數(shù)簡(jiǎn)化高維特征,同時(shí)在解決小樣本問(wèn)題上有較強(qiáng)的泛化能力,因此本文選用SVM作為分類器。
在構(gòu)建SVM 模型對(duì)特征進(jìn)行分類時(shí),須要選擇核函數(shù)和懲罰因子C。多數(shù)情況下,訓(xùn)練樣本不是線性可分的,使用線性分類會(huì)造成大量樣本分類錯(cuò)誤,因此,須要利用核函數(shù)將原始的特征映射到更高維的特征空間中,使得樣本可以被超平面分類。懲罰因子C為分類器對(duì)誤差的容忍度,C值越大,對(duì)減少誤差要求越高。C值的過(guò)大或過(guò)小都會(huì)降低分類的準(zhǔn)確率,根據(jù)經(jīng)驗(yàn)判斷和大量試驗(yàn)對(duì)比,本文選用線性核作為核函數(shù),懲罰因子C設(shè)置為1.2。
選用2500 張?jiān)谑ㄊ仪f—太原)客運(yùn)專線用線陣相機(jī)采集的軌道扣件圖片作為數(shù)據(jù)集,包括2004張扣件扣緊圖片和496張扣件彈出圖片。將數(shù)據(jù)集劃分成訓(xùn)練集和測(cè)試集。其中1000 張扣件圖片作為訓(xùn)練集,其余1500張扣件圖片作為測(cè)試集。
本文試驗(yàn)在Win 10 環(huán)境下運(yùn)行,硬件環(huán)境包括:NIVIDIA RTX 2080Ti 11GB 顯 卡,Intel Xeon Silver 42142.2GHz 雙CPU,64G 內(nèi)存。基于深度學(xué)習(xí)的深度邊緣特征提取網(wǎng)絡(luò)在pytorch框架下完成。
試驗(yàn)選用準(zhǔn)確率(Accuracy)、精確率(Precision)和召回率(Recall)作為扣件狀態(tài)檢測(cè)算法的評(píng)價(jià)指標(biāo)[14]。準(zhǔn)確率A為被正確識(shí)別扣件占所有扣件的比例,精確率P為識(shí)別為扣緊狀態(tài)的扣件中正確的個(gè)數(shù)占所有識(shí)別為扣緊狀態(tài)扣件的比例,召回率R為識(shí)別為扣緊狀態(tài)的扣件中正確的個(gè)數(shù)占所有扣緊狀態(tài)扣件的比例。具體計(jì)算公式為
式中:TP為人工標(biāo)注為扣緊狀態(tài)的扣件被分類器正確識(shí)別的個(gè)數(shù);TN為人工標(biāo)注為彈出狀態(tài)的扣件被分類器正確識(shí)別的個(gè)數(shù);FP為人工標(biāo)注為彈出狀態(tài)的扣件被分類器錯(cuò)誤識(shí)別的個(gè)數(shù);FN為人工標(biāo)注為扣緊狀態(tài)的扣件被分類器錯(cuò)誤識(shí)別的個(gè)數(shù)。
在相同的試驗(yàn)環(huán)境下,將本文方法與HOG+SVM、采用Canny 算子提取扣件邊緣特征+HOG+SVM 的算法進(jìn)行對(duì)比,結(jié)果見(jiàn)表2。
表2 不同算法試驗(yàn)結(jié)果
由表2 可知:使用Canny+HOG+SVM 的識(shí)別方法與傳統(tǒng)HOG+SVM 識(shí)別方法相比在精確率、召回率和準(zhǔn)確率上提高并不明顯,而本文方法在這三項(xiàng)指標(biāo)上均取得明顯提高。這是因?yàn)槭褂肏ED 網(wǎng)絡(luò)提取扣件的深度邊緣特征可以有效減少背景噪聲和無(wú)用特征對(duì)檢測(cè)結(jié)果的影響。因此,本文方法有更高的識(shí)別準(zhǔn)確性和更強(qiáng)的魯棒性。
本文提出了一種基于深度邊緣特征的軌道扣件狀態(tài)檢測(cè)方法:利用深度學(xué)習(xí)網(wǎng)絡(luò)提取扣件圖像的深度邊緣特征,再利用方向梯度直方圖來(lái)描述深度邊緣特征,將形成的融合特征輸入給SVM 進(jìn)行訓(xùn)練,最后利用訓(xùn)練好的SVM作為分類器對(duì)扣件狀態(tài)進(jìn)行檢測(cè)。
本文方法的準(zhǔn)確率、召回率、精確率分別達(dá)到95.1%,97.3%,96.6%,均高于其他檢測(cè)方法,同時(shí)本文方法具有較強(qiáng)的魯棒性,滿足軌道扣件狀態(tài)檢測(cè)的要求。