国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于改進(jìn)Faster R-CNN的被遮擋電線桿檢測(cè)算法

2021-07-14 00:14劉凱歌孟祥越張祥德
無(wú)線電工程 2021年7期
關(guān)鍵詞:電線桿分組像素

劉凱歌,王 琪,孟祥越,張祥德

(東北大學(xué) 理學(xué)院,遼寧 沈陽(yáng) 110004)

0 引言

隨著物質(zhì)生活的改善,越來(lái)越多人喜歡出行旅游,如何保證乘客的乘坐安全是鐵路局的重要任務(wù)之一。鐵軌周邊電線桿種類繁雜且數(shù)量眾多[1],這為實(shí)地勘探帶來(lái)了困難。現(xiàn)今鐵路交通部門(mén)對(duì)鐵軌周邊安全檢查的方式主要是以拍照為主,實(shí)地勘察為輔。通過(guò)存儲(chǔ)的大量現(xiàn)場(chǎng)圖像,從中挑選有異常的電線桿,針對(duì)不同場(chǎng)景,派出相關(guān)專業(yè)人員去解決安全隱患[2]。由于這種人工挑選圖像的方式效率低,所以如何利用計(jì)算機(jī)圖像處理的方法高效挑選異常圖像是本文研究的核心工作。

在電線桿是否被樹(shù)枝遮擋的場(chǎng)景下,圖像受光照以及季節(jié)影響較大[3],例如夏天樹(shù)枝呈現(xiàn)的是綠色,秋天樹(shù)枝整體偏向黃色,成像場(chǎng)景相對(duì)來(lái)說(shuō)比較復(fù)雜。在該復(fù)雜場(chǎng)景下,深度學(xué)習(xí)比傳統(tǒng)方法在定位上更具魯棒性[4],除此之外圖像中樹(shù)枝遮擋占電線桿的比重比較小,類間差異比較小,深度學(xué)習(xí)很難判斷,所以采用的思想是先定位后分類[5]。

針對(duì)樹(shù)枝遮擋電線桿的問(wèn)題,分析Faster R-CNN[6-7]檢測(cè)算法存在的不足,提出基于后處理改進(jìn)的Faster R-CNN被遮擋電線桿檢測(cè)算法。該算法相比于現(xiàn)有算法,通過(guò)后處理方式能夠獲得更高的召回率,適合檢測(cè)樹(shù)枝遮擋的電線桿。

1 Faster R-CNN的原理

針對(duì)電線桿的異物檢測(cè)問(wèn)題,考慮雙階段精度較高的原則,本研究采用檢測(cè)召回率較高的Faster R-CNN[10-11]目標(biāo)檢測(cè)算法。Faster R-CNN網(wǎng)絡(luò)框架如圖1所示。

圖1 Faster R-CNN網(wǎng)絡(luò)圖

由圖1可以看出,F(xiàn)aster R-CNN[5,13-15]主要由特征提取網(wǎng)絡(luò)(VGG16)、Region Proposal Network(RPN)[7]網(wǎng)絡(luò)以及檢測(cè)網(wǎng)絡(luò)3部分組成。

1.1 特征提取網(wǎng)絡(luò)—VGG16

本研究采用的特征提取網(wǎng)絡(luò)是VGG16[12],其中VGG16特征提取網(wǎng)絡(luò)的細(xì)節(jié)如表1所示。

表1 VGG16實(shí)驗(yàn)數(shù)據(jù)表

1.2 RPN網(wǎng)絡(luò)

RPN網(wǎng)絡(luò)是在VGG16提取的最后一層特征圖上進(jìn)行滑窗,經(jīng)過(guò)2個(gè)全連接層,一個(gè)是運(yùn)用softmax進(jìn)行分類,另一個(gè)是目標(biāo)框回歸。RPN網(wǎng)絡(luò)如圖2所示。

圖2 RPN檢測(cè)網(wǎng)絡(luò)圖

使用RPN代替原來(lái)的Selective Search[16]方法來(lái)產(chǎn)生建議窗口,降低了推斷時(shí)的計(jì)算量。RPN的實(shí)現(xiàn)方式是先遍歷整張?zhí)卣鲌D,滑窗尺寸為3×3,在遍歷的過(guò)程中每個(gè)窗口中心會(huì)因設(shè)置的比例ratio= [0.5,1,2]和尺度scale = [8,16,32]在原圖生成K等于9個(gè)anchor,再對(duì)每個(gè)不同大小的anchor計(jì)算Intersection over Union(IoU)并通過(guò)閾值來(lái)判定每個(gè)anchor是否為正負(fù)樣本,當(dāng)anchor與ground-truth box滿足最高的IoU和IoU>0.7兩個(gè)條件anchor為正樣本,anchor與ground-truth box的IoU<0.3[6]為負(fù)樣本。接著,對(duì)正負(fù)anchor進(jìn)行分類(二分類)與回歸,相當(dāng)于實(shí)現(xiàn)目標(biāo)定位的功能。

RPN訓(xùn)練過(guò)程中的損失函數(shù)為:

(1)

采用的分類損失:

(2)

(3)

回歸損失:

(4)

式中,smoothL1損失函數(shù)為:

(5)

框的回歸公式:

tx=(x-xa)/wa,ty=(y-ya)/ha,

(6)

tw=ln(w/wa),th=ln(h/ha),

(7)

(8)

(9)

式(6)~(9)中,x,y,w,h為預(yù)測(cè)的框的坐標(biāo)和寬高;xa,ya,wa,ha為第i個(gè)像素的某個(gè)anchor的坐標(biāo)和寬高;x*,y*,w*,h*為ground-truth box的坐標(biāo)和寬高。

1.3 檢測(cè)網(wǎng)絡(luò)

檢測(cè)網(wǎng)絡(luò)由Regions of Interest(ROI)池化層和2個(gè)并行的1×1卷積構(gòu)成。在ROI中將不同尺寸的候選框劃分成7×7塊區(qū)域,對(duì)每塊區(qū)域使用MaxPooling,輸出的特征向量為7×7×512,對(duì)輸出向量分別進(jìn)行分類與回歸。在分類層中通過(guò)softmax實(shí)現(xiàn)圖像分類;回歸層則是anchor與ground-truth box先進(jìn)行粗略的回歸,之后對(duì)粗略框進(jìn)行二次回歸。softmax的公式如下:

(10)

式中,i表示k中某個(gè)分類;gi表示該分類的值。

2 算法改進(jìn)

2.1 Faster R-CNN中存在的問(wèn)題

在實(shí)際運(yùn)用場(chǎng)景中,針對(duì)電線桿遮擋非遮擋的情況,通過(guò)Faster R-CNN網(wǎng)絡(luò)檢測(cè),發(fā)現(xiàn)遮擋的電線桿會(huì)存在漏檢的情況,即將遮擋判斷成不遮擋。通過(guò)原始圖片可以發(fā)現(xiàn)造成漏檢主要有3點(diǎn)原因:第1點(diǎn),樹(shù)枝占電線桿的比重比較小,形狀不規(guī)則;第2點(diǎn),數(shù)據(jù)集是人工標(biāo)注的數(shù)據(jù)集,數(shù)據(jù)量有限;第3點(diǎn),樹(shù)木的顏色容易受光照等影響。原始圖片如圖3所示。

圖3 原始圖片

因此,針對(duì)漏檢的情況選擇在原始算法上直接進(jìn)行3點(diǎn)改進(jìn),分別是:動(dòng)態(tài)分組閾值優(yōu)化算法、RGB-HSV和區(qū)域生長(zhǎng)分割方法。算法流程如圖4所示。

圖4 算法流程

2.2 動(dòng)態(tài)分組閾值優(yōu)化算法

使用Faster R-CNN對(duì)遮擋電線桿的檢測(cè)結(jié)果不是很理想,對(duì)其進(jìn)行初步分析如下:① 圖像的采集由相機(jī)連續(xù)拍攝得到,前后存在聯(lián)系,當(dāng)使用手工標(biāo)注時(shí),也會(huì)對(duì)面積較小的電線桿進(jìn)行標(biāo)注,在第n張電線桿面積較小,在n+1電線桿的面積會(huì)相對(duì)偏大,情況如圖5所示。② 出現(xiàn)真值框較小的電線桿周圍存在大量面積較小的預(yù)測(cè)框,情況如圖6所示。

圖6 電線桿預(yù)測(cè)圖

針對(duì)大量面積較小的預(yù)測(cè)框,提出了一種動(dòng)態(tài)分組閾值優(yōu)化算法。

動(dòng)態(tài)分組閾值優(yōu)化算法流程如下:

對(duì)于樣本集合{(xi,xi1,xi2,yi1,yi2,score)},其中i=1,2,...,n,xi表示圖片名,(xi1,yi1),(xi2,yi2)表示圖片對(duì)應(yīng)的左上角右下角的坐標(biāo);score表示圖片預(yù)測(cè)的得分。

Step1:目的是找到最優(yōu)所在的分組數(shù)并求其所在的面積。計(jì)算不同分組k在(2,20)內(nèi)IoU>0.01個(gè)數(shù)占組內(nèi)個(gè)數(shù)的比值,其中(2,20)的原因是分組數(shù)不低于1且最大分組數(shù)不會(huì)高于20。

Step1.1 計(jì)算面積并降序:

area=(xi2-xi1)×(yi2-yi1)

Step1.2 計(jì)算樣本區(qū)域面積極差:

maxlength = max(area)-min(area)

Step1.3計(jì)算樣本區(qū)間面積:

qujianchangdu=maxlength/k

Step1.4針對(duì)面積的大小將圖片對(duì)應(yīng)坐標(biāo)放入空列表features中:如果area>ss×qujianchangdu,就存放在相對(duì)應(yīng)features的空列表中,其中ss在(1,k+1),輸出的空列表features格式是features=[[w1],[w2],…,[wi]],其中wi=zi,1,…,zi,i+1,zi,i+1表示當(dāng)k=i+1時(shí)分成的不同區(qū)間,此區(qū)間存放圖片名,圖片坐標(biāo)。

Step1.5計(jì)算[wi]下zi,i+1中圖片坐標(biāo)所求IoU>0.01的個(gè)數(shù)/zi,i+1中圖片的個(gè)數(shù)的比值,將比值存放在空數(shù)組M中,這一步可以保證預(yù)測(cè)框中存在電線桿。

Step2:尋找差值最大所在的組,并求其對(duì)應(yīng)的面積,如果該面積大于裁剪框(即目標(biāo)檢測(cè)后的裁剪框)的面積,就進(jìn)行后續(xù)相關(guān)等工作。

Step2.1遍歷M,計(jì)算差值:

chazhilist=abs(M[i]-M[i-1])

Step2.2找到最大chazhilist所在的索引:

index = max(chazhilist)

Step2.3計(jì)算最大索引所對(duì)應(yīng)的面積:

area1 = features[index][w]×features[h],這里可以刪除一些面積較小且效果不好的預(yù)測(cè)框。

2.3 RGB轉(zhuǎn)HSV

對(duì)樹(shù)枝遮擋的電線桿進(jìn)行檢測(cè),樹(shù)的顏色隨著季節(jié)的變化影響因素比較大,為解決季節(jié)變化的因素,采取的方案是將圖片轉(zhuǎn)換成HSV格式,即RGB-HSV。實(shí)施過(guò)程如下:首先轉(zhuǎn)換成綠色、黃色和黑色3種顏色。選擇顏色的依據(jù)是:綠色代表樹(shù)枝遮擋,黃色代表四季顏色變化,黑色代表局部區(qū)域肉眼所見(jiàn)是黑色的。最后選擇這3種點(diǎn)做凸區(qū)域檢測(cè),凸區(qū)域檢測(cè)的目的是為后續(xù)區(qū)域生長(zhǎng)提供所需的種子點(diǎn)。HSV是一種比較直觀的顏色模型,模型的3個(gè)參數(shù)是色調(diào)、飽和度和透明度,做這一步的主要優(yōu)勢(shì)在于樹(shù)枝是與季節(jié)的變換有強(qiáng)相關(guān)關(guān)系,所以希望能夠進(jìn)行一種將顏色明顯地區(qū)分開(kāi)的轉(zhuǎn)換。

2.4 區(qū)域生長(zhǎng)分割方法

區(qū)域生長(zhǎng)是根據(jù)預(yù)先定義的生長(zhǎng)準(zhǔn)則將像素或子區(qū)域組合為更大區(qū)域的過(guò)程?;痉椒ㄊ菑囊唤M“種子”點(diǎn)開(kāi)始,將與種子預(yù)先定義的性質(zhì)相似的那些相鄰像素添加到每個(gè)種子上來(lái)形成這些生長(zhǎng)區(qū)域。區(qū)域生長(zhǎng)有3個(gè)關(guān)鍵點(diǎn):種子點(diǎn)的選擇、相似性質(zhì)的判斷以及截止條件。本研究所設(shè)計(jì)的算法中通過(guò)RGB-HSV[8]算法得到種子點(diǎn),相似性判斷是灰度圖像的差值,以及截止條件是當(dāng)不再有像素滿足加入某個(gè)區(qū)域的準(zhǔn)則時(shí),區(qū)域生長(zhǎng)就會(huì)停止。

區(qū)域生長(zhǎng)算法的流程如下[9]:

Step1:隨機(jī)或者對(duì)圖像進(jìn)行掃描,找到第一個(gè)還沒(méi)有賦予屬性的像素,設(shè)該像素(X0,Y0)。

Step2:以(X0,Y0)為中心,考慮(X0,Y0)的4鄰域或者8鄰域像素(X,Y)與種子像素的灰度值之差的絕對(duì)值小于某個(gè)閾值T,如果滿足條件,將(X,Y)與(X0,Y0)合并在同一區(qū)域內(nèi),同時(shí)將(X,Y)壓入堆棧。

Step3:從堆棧中取出一個(gè)像素并把它當(dāng)做(X0,Y0)返回步驟Step2。

Step4:當(dāng)堆棧為空時(shí),返回Step1。

Step5:重復(fù)步驟Step1~4直到圖像中的每個(gè)點(diǎn)都有歸屬時(shí),生長(zhǎng)結(jié)束。

針對(duì)圖像中存在一些電線桿是鏤空的和Faster R-CNN初步漏檢的情況下,所設(shè)計(jì)的算法具體如下:首先將Faster R-CNN初步檢測(cè)結(jié)果框裁剪出來(lái),接著如果裁剪的面積大于動(dòng)態(tài)分組閾值優(yōu)化算法中輸出的面積就進(jìn)行RGB-HSV,然后進(jìn)行凸區(qū)域檢測(cè),之后將RGB-HSV的輸出作為種子點(diǎn)來(lái)進(jìn)行區(qū)域生長(zhǎng),最后通過(guò)手動(dòng)設(shè)置閾值,選出最優(yōu)的閾值50,如果綠色像素點(diǎn)的個(gè)數(shù)大于閾值,就判斷為遮擋,否則就為非遮擋。后處理的具體流程如圖4所示。

3 實(shí)驗(yàn)及分析

3.1 數(shù)據(jù)集的制作

本研究所設(shè)計(jì)的算法采用的數(shù)據(jù)來(lái)自相機(jī)拍攝的JPG圖片,對(duì)采集的圖像刪除部分重復(fù)場(chǎng)景得到1 895張圖片,使用LabelImg[17]手動(dòng)標(biāo)注制作成圖像庫(kù),其中圖像如圖7所示,接著將圖像庫(kù)轉(zhuǎn)成VOC2007數(shù)據(jù)格式,最后將圖片劃分成訓(xùn)練集和測(cè)試集。其中訓(xùn)練圖片1 691張,測(cè)試圖片204張。

(a) 原圖

3.2 實(shí)驗(yàn)環(huán)境

深度學(xué)習(xí)常見(jiàn)的框架有Caffe、Pytorch、Tensorflow等。本研究的訓(xùn)練和測(cè)試實(shí)驗(yàn)均采用Pytorch。其中服務(wù)器的操作環(huán)境為L(zhǎng)inux操作系統(tǒng),計(jì)算機(jī)軟硬件配置數(shù)據(jù)如表2所示。

表2 計(jì)算機(jī)軟硬件配置

3.3 訓(xùn)練策略

實(shí)驗(yàn)的訓(xùn)練過(guò)程中采用poly的學(xué)習(xí)策略[18]:

(11)

式中,初始學(xué)習(xí)率初始化(base_lr)為0.001,最大迭代次數(shù)(max_iter)為3萬(wàn)次,使用SGD優(yōu)化函數(shù),輸入圖像的batch_size=1,為防止過(guò)擬合weight_decay =0.000 5,總共訓(xùn)練了20 epoch。

3.4 實(shí)驗(yàn)分析及改進(jìn)

為了驗(yàn)證算法的性能,在圖像庫(kù)中的數(shù)據(jù)集上進(jìn)行對(duì)比實(shí)驗(yàn)。本研究采用的2個(gè)指標(biāo):召回率(recall)和漏警率。研究設(shè)計(jì)算法的實(shí)驗(yàn)結(jié)果如表3所示。使用Faster R-CNN進(jìn)行檢測(cè)時(shí),召回率為32.7%,使用Faster R-CNN+RGB-HSV+區(qū)域生長(zhǎng),召回率為54%,使用Faster R-CNN+動(dòng)態(tài)閾值分組+RGB-HSV+區(qū)域生長(zhǎng),召回率為85.4%,召回率提升約0.5,改進(jìn)(動(dòng)態(tài)閾值分組+RGB-HSV+區(qū)域生長(zhǎng))的漏警率最小,說(shuō)明檢測(cè)遮擋的效果越好。本研究所設(shè)計(jì)算法的可視圖如圖8~10所示。從圖8和圖10的對(duì)比可看到,設(shè)計(jì)的后處理過(guò)程很好地解決了Faster R-CNN漏檢問(wèn)題。

表3 對(duì)比實(shí)驗(yàn)數(shù)據(jù)表

圖8 Faster R-CNN 檢測(cè)結(jié)果

圖9 改進(jìn)(RGB-HSV+區(qū)域生長(zhǎng))檢測(cè)結(jié)果

圖10 改進(jìn)(動(dòng)態(tài)閾值分組+RGB-HSV+區(qū)域生長(zhǎng))檢測(cè)結(jié)果

需要改進(jìn)的是,從數(shù)據(jù)的角度來(lái)看,數(shù)據(jù)量較少時(shí)模型容易出現(xiàn)過(guò)擬合現(xiàn)象。采用生成對(duì)抗網(wǎng)絡(luò)(GAN)可通過(guò)標(biāo)注數(shù)據(jù),生成模擬數(shù)據(jù),也可以用在自監(jiān)督學(xué)習(xí)中,讓模型具備從部分標(biāo)記的數(shù)據(jù)中學(xué)習(xí)的能力,GAN[19]也可應(yīng)用于圖像的修復(fù)。針對(duì)部分偏斜的電線桿(如圖5所示),當(dāng)使用檢測(cè)算法時(shí),由于偏斜的存在,會(huì)使得預(yù)測(cè)框中包含大量的冗余信息,對(duì)于此類問(wèn)題還需待改進(jìn)。

4 結(jié)束語(yǔ)

對(duì)遮擋電線桿進(jìn)行檢測(cè),提出了基于改進(jìn)Faster R-CNN的被遮擋電線桿檢測(cè)算法。本文論述了Faster R-CNN的基本原理,分析該算法存在的3點(diǎn)問(wèn)題,針對(duì)較多檢測(cè)框設(shè)計(jì)了動(dòng)態(tài)分組閾值優(yōu)化算法,對(duì)電線桿漏檢情況使用了RGB-HSV+區(qū)域生長(zhǎng)分割算法。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的算法對(duì)遮擋電線桿檢測(cè)有較好的效果。在今后的研究中可以對(duì)數(shù)據(jù)生成以及檢測(cè)對(duì)象存在偏斜的情況展開(kāi)更多的研究。

猜你喜歡
電線桿分組像素
像素前線之“幻影”2000
“像素”仙人掌
分組搭配
電線桿上的“戰(zhàn)爭(zhēng)”
怎么分組
éVOLUTIONDIGAE Style de vie tactile
分組
別扶電線桿
高像素不是全部
小鳥(niǎo)和電線桿