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

?

基于Mask RCNN的濾袋開口檢測方法

2021-01-07 04:55王憲保朱嘯詠姚明海
計算機測量與控制 2020年12期
關(guān)鍵詞:殘差卷積特征

王憲保,朱嘯詠,姚明海

(浙江工業(yè)大學 信息工程學院,杭州 310023)

0 引言

在濾袋的智能生產(chǎn)中,需要對濾袋進行卡扣的自動化安裝,而實現(xiàn)這一過程的前提是獲得濾袋開口的準確位置及濾袋所屬的類別。伴隨著濾袋制造工藝的提升以及需求的多樣化,濾袋大小、紋理等變得更加豐富,這為濾袋開口檢測問題帶來了更為嚴峻的挑戰(zhàn)。

本文的濾袋開口檢測實際上是一種目標檢測,它是一種包含目標定位與目標分類任務(wù),使用圖像處理、機器學習等方法,在圖像中搜索感興趣對象的計算機視覺技術(shù)[1]。一般先通過目標分類判斷是否含有目標對象,再進行更細粒度的檢測,并將搜索到的目標通過方框進行標注[2]。

計算機視覺處理中,圖像一般以像素矩陣的形式存儲,對其進行類別以及位置信息的相關(guān)特征提取方可實現(xiàn)目標檢測[3]。傳統(tǒng)目標檢測算法在圖像經(jīng)過去噪、增強、裁剪等預處理之后,對圖像采用滑動窗口遍歷并生成候選區(qū)域,對每個候選區(qū)域采取特征提取,例如方向梯度直方圖(HOG,histogram of oriented gradients)[4],尺度不變特征變換(SIFT,scale invariant feature transform)[5],(DPM,deformablepartsmodel)[6]等,最后通過AdaBoost[7],(SVM,support vector machine)[8]等機器學習算法對目標進行分類,然后依據(jù)類別對目標進行邊框回歸。由于上述目標檢測模型對于不同的特征需要設(shè)計不同分類器,導致其泛用性差、魯棒性不足。

2012年之后,計算機視覺技術(shù)在深度學習的帶動下開始了迅猛的發(fā)展,以深度卷積神經(jīng)網(wǎng)絡(luò)為代表的方法替代了手工特征方法。在目標檢測領(lǐng)域,(Fast RCNN,fast region-based convolutional neural network)[9]和(Faster RCNN,faster region-based convolutional neural network)[10]為基于深度學習的目標檢測方法提供了新的方向。前者由于共享卷積操作降低了網(wǎng)絡(luò)整體的計算消耗,后者在前者基礎(chǔ)上融合全卷積網(wǎng)絡(luò)[11]的思想,提出通過區(qū)域提議網(wǎng)絡(luò)(RPN,region proposal networks)代替原先的Selective Search[12]以及Edge Boxes[13]算法。另一種基于回歸的思路由2016年Redmon等[14]提出的(YOLO,you only look once)算法啟發(fā),這類算法精度不及Faster RCNN這類基于候選區(qū)域方法,但其檢測速度卻是前者的10倍,后續(xù)又提出了(SSD,single shot multi-box detector)[15]、(RefineNet,refinement neural network)[16]、(YOLOv2,you only look once v2)[17]以及(YOLOv3,you only look once v3)[18]等。

本文將(Mask RCNN,mask region based convolutional neural network)[19]作為基本框架,并針對具體目標對象進行改進,建立了一種用于濾袋的有效檢測方法。本文的主要工作有:首先,針對固定卷積中感受野形狀固定,不能靈活地覆蓋目標對象,降低了特征提取效果這一問題,采用可變形卷積網(wǎng)絡(luò)(DCN,deformable convolutional networks)[20-21]改進固定卷積,通過引入額外的偏移來提升空間采樣能力。其次,提出一種改進的(Soft-NMS,soft non-maximum suppression)方法,對Mask RCNN的RPN網(wǎng)絡(luò)輸出增加一次篩選,提升候選區(qū)域的質(zhì)量,減少候選區(qū)域的數(shù)量。最后,利用本文提出的目標檢測器在濾袋數(shù)據(jù)集上進行實驗,結(jié)果證明可以有效檢測濾袋開口,相較于基準方法高了2.4個百分點。

本文的組織結(jié)構(gòu)如下:首先在第一節(jié)對基礎(chǔ)框架等技術(shù)進行介紹;第二節(jié)對本文提出的檢測器進行詳細介紹;第三節(jié)通過實驗,驗證了本文提出的檢測器在濾袋開口檢測中的有效性,并通過與基準檢測器的對比,展現(xiàn)了本文檢測器的性能優(yōu)勢;第四節(jié)對全文工作進行總結(jié)與展望。

1 相關(guān)工作

1.1 Mask RCNN

Mask RCNN模型建立在Faster RCNN的基礎(chǔ)上,將Faster RCNN中(ROI Pooling,region of interest pooling)替換為(ROI Align,region of interest align),消除了二次量化的誤差,并在頭部網(wǎng)絡(luò)中增加掩碼分支用于實現(xiàn)實例分割,提升了對象的檢測精度。

1.1.1 網(wǎng)絡(luò)結(jié)構(gòu)

Mask RCNN的結(jié)構(gòu)如圖1所示。模型包含用于特征提取的主干網(wǎng)絡(luò)、候選區(qū)域生成的RPN、ROI Align以及頭部網(wǎng)絡(luò)。主干網(wǎng)絡(luò)的選擇主要有(VGG,visual geometry group)[22]、(ResNet,deep residual network)[23]等,其將一系列卷積進行堆疊,逐層提取圖像中的語義信息,形成特征映射圖。

圖1 Mask RCNN的網(wǎng)絡(luò)結(jié)構(gòu)[10]

1.1.2 RPN

RPN將任意大小的輸入圖像轉(zhuǎn)換為一組含有分數(shù)的矩形框作為regionproposals,并同后續(xù)網(wǎng)絡(luò)共享特征提取圖中的特征信息,在輸入的每個空間位置采樣k個不同尺度的anchors。通過后續(xù)二分類網(wǎng)絡(luò)對這些anchors進行評估,挑選出可能含有對象的anchors,并對其進行邊界框的精修,作為目標候選區(qū)域。

與目標對象交并比(IOU,intersection over union)最大的anchors以及和至少一個對象的IOU不小于預設(shè)閾值的anchors將被作為proposal層中的正樣本,其余作為負樣本用以后續(xù)訓練。

根據(jù)式(1)對RPN進行訓練:

(1)

(2)

1.1.3 ROI Align

ROI Align是對ROI Pooling的優(yōu)化。ROI Pooling利用空間金字塔池化[24],將RPN的輸出作為輸入,輸出一組固定大小的特征張量作為后續(xù)處理的輸入。但是ROI Pooling引入了兩次量化操作,帶來了量化誤差,降低了ROI和其對應特征之間的一致性。針對此問題,ROI Align通過雙線性插值法解決,對每個ROI先進行分割,之后在分割得到的每個子區(qū)域中采樣K(K一般取4)個點,對每個點進行雙線性插值得到其像素值,之后將最大的像素值作為該子區(qū)域的像素值。這種方式避免了引入量化操作帶來的量化誤差,實現(xiàn)了ROI與特征的一致,提升了后續(xù)分類以及回歸框的精度。

1.1.4 頭部網(wǎng)絡(luò)

由于引入了特征金字塔生成不同尺度的特征圖,所以需要根據(jù)ROI尺度選擇特定層級的金字塔輸出作為后續(xù)處理的輸入,具體選擇如公式(3):

(3)

式中,k0=5,w,h表示對應ROI區(qū)域的寬和高,224對應特征金字塔第五層的尺度。

經(jīng)過ROI Align輸出固定大小的特征張量,經(jīng)過兩層全連接網(wǎng)絡(luò)之后分別傳送給分類器和回歸器,以實現(xiàn)目標對象的分類和邊界框的回歸。掩碼分支的輸入也由ROI Align產(chǎn)生,但其尺寸大小與分類和回歸不同。

網(wǎng)絡(luò)訓練采用多任務(wù)損失函數(shù),通過學習不斷下降的損失函數(shù)的值,直至獲得最優(yōu)解。損失函數(shù)的公式由式(4)給出。其中包含了3項,分別對應分類損失,邊框回歸損失以及掩碼分割損失。

L=Lcls+Lbbox+Lmask

(4)

Mask RCNN中使用固定卷積,這類卷積在空間采樣上不夠靈活,容易引入對象周邊的噪聲信息,干擾后續(xù)的識別與分類。針對此問題,本文引入可變形卷積來改進主干網(wǎng)絡(luò)中的部分固定卷積,以實現(xiàn)更加靈活的空間采樣。針對RPN網(wǎng)絡(luò)產(chǎn)生的候選區(qū)域提出一種改進的Soft-NMS方法進行進一步篩選與整合,在降低候選框冗余的同時提升候選框的質(zhì)量,從而達到提升目標檢測性能的目的。

2 融合可變形卷積的Mask RCNN

本文將可變形卷積加入Mask RCNN中,從而得到更好的空間采樣結(jié)果,并用改進的Soft-NMS進一步整合候選區(qū)域降低其冗余程度,最終實現(xiàn)對濾袋開口的有效、精確檢測。圖2給出了本文目標檢測模型的總體結(jié)構(gòu)。整個模型分為4部分,第一部分為主干網(wǎng)絡(luò),實現(xiàn)圖像特征的提取工作;第二部分是RPN,用于候選目標的生成;第三部分是ROI Align,它將候選區(qū)域?qū)奶卣饔成涑鼗敵鰹楣潭ù笮〉奶卣鲝埩?,為后續(xù)處理做準備;第四部分是頭部網(wǎng)絡(luò),由三個分支構(gòu)成,分別實現(xiàn)目標類別的識別、目標邊界框的修正以及目標掩碼信息的生成。最后將掩碼信息與邊界框信息整合得到更為精確的定位。

圖2 融合可變形卷積的Mask RCNN網(wǎng)絡(luò)結(jié)構(gòu)

2.1 主干網(wǎng)絡(luò)

本文選取殘差網(wǎng)絡(luò)作為提取特征的主干網(wǎng)絡(luò)。殘差網(wǎng)絡(luò)利用跳接(skipconnect)形成殘差塊,通過堆疊殘差塊的方式構(gòu)建殘差網(wǎng)絡(luò)。殘差塊可以用公式(5)表示:

y=F(x,{Wi})+x

(5)

其中:y表示殘差塊的輸出,x為殘差塊的輸入,F(xiàn)(x,{Wi})表示待學習的殘差映射。

殘差網(wǎng)絡(luò)通過跳接結(jié)構(gòu),降低了隨著模型深度的增加產(chǎn)生過擬合的可能性,為構(gòu)建更深的模型提供了基礎(chǔ)。

傳統(tǒng)的卷積結(jié)構(gòu)空間采樣不夠靈活,無法有效處理目標形變。本文引入可變形卷積對原始殘差網(wǎng)絡(luò)進行改進,替換掉其高層中的固定卷積層,從而更有效地實現(xiàn)對目標的特征提取,提升檢測效果。

傳統(tǒng)的卷積從數(shù)學形式上可以用式(6)表示,其中pn代表卷積核中每個點對應中心點的空間偏移,R表示卷積核對應的各個空間位置偏移。

(6)

相較于傳統(tǒng)的卷積,可變形卷積引入了一個空間偏移Δpn,該偏移參數(shù)可以通過學習的方式獲得。可變形卷積的表示如公式(7):

(7)

由于增加的Δpn一般是小數(shù),并沒有與之對應的輸入,所以通過雙線性插值的辦法來獲得這一位置對應的輸入。

隨著卷積網(wǎng)絡(luò)的加深,頂層感受野的大小增加,高層語義信息變得更多,更適合分類,但同時也損失底層信息,這對小目標的檢測會造成較大影響。因此本文構(gòu)建特征金字塔(FPN,feature pyramid network)[25]來融合高低層級的語義信息,實現(xiàn)對各個層級卷積輸出的捕獲,提升對小目標的檢測效果。將殘差網(wǎng)絡(luò)中conv2,conv3,conv4,conv5的輸出分別用C2,C3,C4,C5表示。FPN在C5的輸出上通過一個1×1的卷積,將其通道數(shù)由原先的2048降為256,獲得特征映射圖CP5。之后對CP5進行上采樣,同時對C4的輸出經(jīng)過一個1×1的卷積將其通道數(shù)下降為256,使用特征圖相加的方式將兩者結(jié)合得到CP4。通過上述方式依次得到CP3,CP2,之后對CP2,CP3,CP4,CP5分別使用一個3×3的卷積以降低上采樣帶來的混疊現(xiàn)象,得到P2,P3,P4,P5,構(gòu)成了特征金字塔。

2.2 區(qū)域提議生成

候選目標區(qū)域的質(zhì)量與數(shù)目直接影響到目標檢測的效果與速度。本文通過RPN方法利用anchor機制獲得原始的候選區(qū)域,同時依據(jù)所用數(shù)據(jù)集中目標的尺度對anchor的大小做出了調(diào)整,調(diào)整后的參數(shù)為(32,64,128,256),長寬比為(1,0.5,2)。

RPN生成的原始提議框數(shù)目眾多,在這些候選框中有些包含背景圖像,為減少這類樣本,提升候選框的質(zhì)量,一般采用非極大值抑制對候選框進行篩選。由于PRN分類結(jié)果與候選框位置之間沒有明確的線性關(guān)系,所以傳統(tǒng)NMS方法會導致很多雖然重疊但是包含目標不一樣的候選框被直接刪除。為此,本文提出一種改進的Soft-NMS方法,Algorithm1給出了改進后的偽代碼。

Algorithm 1: 改進的Soft-NMS方法

Input:B={b1,,bN},S={s1,,sN},Gt,其中B是一系列候選框,S是其對應的得分,Gt為IOU閾值

Output:O={o1,,om},S={s1,,sm},O為輸出框,S為其對應的得分

Begin:

O←?

WhileB≠? do:

k←argmax{S}

K←bk

L←K

B←B-K

For biin B:

If IOU(K,bi)>Gt

L←L∪bi

End if

si←sif(IOU(K,bi))

End for

K′←f2(L)

O←O∪K’

End while

上述算法中,計算得分的公式由式(8)給出,最佳候選框位置調(diào)整的方法由式(9)給出:

(8)

(9)

式(9)中,k代表了同當前最高得分的候選框之間IOU大于閾值的候選框的總數(shù),之后根據(jù)得分進行加權(quán)修正。

2.3 網(wǎng)絡(luò)的聯(lián)合訓練

本文采取端到端的訓練方式,將RPN網(wǎng)絡(luò)的訓練任務(wù)同主干網(wǎng)絡(luò)以及頭部檢測網(wǎng)絡(luò)的檢測任務(wù)結(jié)合起來,通過構(gòu)建一個多任務(wù)損失函數(shù),訓練整體結(jié)構(gòu)。損失函數(shù)由式(10)給出:

Ltotal=Lcls+Lbbox+Lmask+Lrpn

(10)

主干網(wǎng)絡(luò)部分采用在ImageNet上訓練的ResNet50+DCN模型進行初始化,RPN以及檢測頭采用在COCO數(shù)據(jù)集上訓練的參數(shù)進行初始化。本文采用梯度下降法進行神經(jīng)元參數(shù)的迭代調(diào)整。

3 實驗結(jié)果與分析

本文使用本實驗室構(gòu)建的濾袋數(shù)據(jù)集。為增加訓練樣本個數(shù),通過旋轉(zhuǎn)、裁剪以及翻轉(zhuǎn)等數(shù)據(jù)增強方式對數(shù)據(jù)集進行了增廣。使用labelImg工具對數(shù)據(jù)集進行標注。得到數(shù)據(jù)集1和數(shù)據(jù)集2,兩個數(shù)據(jù)集共有樣本1 000張。數(shù)據(jù)集1中包含8類不同圓形開口的濾袋,每類均有100張圖像,按8:2的比例分為訓練集和測試集。數(shù)據(jù)集2中含有2類不同橢圓形開口的濾袋,每類均有100張圖像,同樣以8:2的比例分為訓練集和測試集。表1和表2分別給出了數(shù)據(jù)集1和數(shù)據(jù)集2的具體信息。圖3和圖4展示了數(shù)據(jù)集對應的部分圖像。

表1 數(shù)據(jù)集1中每一類包含的圖片數(shù)目

表2 數(shù)據(jù)集2中每一類包含的圖片數(shù)目

圖3 數(shù)據(jù)集1圖片示例

圖4 數(shù)據(jù)集2圖片示例

3.1 評價標準

本文的評價指標為各類平均精度(mAP,mean average precision),中心偏移距離以及檢測速度。本文對比的模型為Faster RCNN以及Mask RCNN兩種主流的兩階段目標檢測模型。

boxgt為真實值標簽用(y1gt,x1gt,y2gt,x2gt)表示,預測框boxpred用(y1pred,x1pred,y2pred,x2pred)表示。兩者之間的距離記作d=dis(boxgt,boxpred),可以根據(jù)公式(11)計算:

d=dis(boxgt,boxpred)=

(11)

其中:ygt=(y1gt+y2gt)/2,xgt=(x1gt+x2gt)/2,ypred=(y1pred+y2pred)/2,xpred=(x1pred+x2pred)/2。

本文的模型在數(shù)據(jù)集1與數(shù)據(jù)集2上進行評估。

3.2 參數(shù)設(shè)置

實驗的硬件環(huán)境為Intel Corei5-9400 CPU,NVIDIA GTX 1080 GPU。軟件環(huán)境為Tensorflow架構(gòu),實驗語言為Python。訓練時設(shè)置學習率為0.001,權(quán)重衰減系數(shù)為0.000 1,采用帶動量的(SGD,stochastic gradient descent)優(yōu)化器迭代訓練,動量設(shè)置為0.9,訓練迭代20 000次,batch-size設(shè)置為2。實驗主要由以下幾部分組成:第一個實驗將對比本文算法與基準算法之間的性能差異;第二個實驗為消融實驗將驗證提出的改進Soft-NMS方法的有效性;第三個實驗將數(shù)據(jù)集1和數(shù)據(jù)集2合并,檢驗算法在輸入類別增加情況下的魯棒性。

3.3 算法比較

實驗一:在本實驗中,通過將Faster RCNN、Mask RCNN以及本文的融合可變形卷積Mask RCNN在濾袋數(shù)據(jù)集1上訓練和測試,得到如表3展示的結(jié)果。圖6給出了部分檢測結(jié)果。

圖6 在數(shù)據(jù)集1上檢測的結(jié)果(示例)

BackbonemAP中心偏移距離FpsFaster RCNNVGG1688.124.341.12Faster RCNNResNet5090.620.621.23Mask RCNNResNet5093.213.720.95OursResNet50+DCN95.611.760.93

在表3中可以看到,本文的算法在中心偏移距離這一指標上優(yōu)于對比算法,相較于Faster RCNN提升了11.58個像素。Soft-NMS過程對候選框的重整提高了這一指標。

本文構(gòu)建的特征金字塔實現(xiàn)了特征的融合,提升了對小目標的檢測精度,使得模型的漏報率下降,提升了模型的召回率。藉此,總體的mAP相較于沒有特征金字塔結(jié)構(gòu)的Faster RCNN也得到了提升。同時,可變形卷積帶來了更加靈活的空間采樣,引入改進Soft-NMS的區(qū)域提議生成網(wǎng)絡(luò)提供了更高質(zhì)量的候選框,給本文方法在mAP上帶來了高于對比算法的性能,相較于Mask RCNN提升了2.4個百分點。

在檢測速度方面,由于本文模型基于Mask RCNN構(gòu)建,其增加了掩碼分支且本文在模型中加入金字塔結(jié)構(gòu)以及可變形卷積,在一定程度上提升了模型的復雜度,致使本文算法相較于Faster RCNN的推理速度有所下降,但是和Mask RCNN相當。

實驗2:為了驗證改進Soft-NMS的有效性在實驗數(shù)據(jù)集1上進行消融實驗。實驗結(jié)果如表4所示。對比采用的是NMS方法,本文使用的是改進的Soft-NMS方法,其余部分兩者相同皆為融合可變形卷積的Mask RCNN??梢钥吹奖疚奶岢龅腟oft-NMS方法相較于傳統(tǒng)NMS在數(shù)據(jù)集1上mAP指標實現(xiàn)了1.2個百分點的提升,同時中心偏移距離提升了0.36個像素,驗證了本文提出的改進Soft-NMS方法的有效性,經(jīng)過重整的候選框質(zhì)量確實優(yōu)于原始候選框。

實驗3:為了驗證算法的泛化性能,本文用數(shù)據(jù)集1和數(shù)據(jù)集2對算法進行驗證,結(jié)果如表5所示??梢钥吹揭肟勺冃尉矸e并使用改進Soft-NMS方法后,本文模型性能依舊高于其他對比算法,證明了本文方法在增加對象類別之后仍然可以具有較好性能。為了進一步檢驗其性能,將來自不同數(shù)據(jù)集的對象放在同一環(huán)境采集,繼續(xù)測試,結(jié)果如圖7所示。實驗結(jié)果證明本文模型可以有效地檢測不同濾袋開口,具有良好的魯棒性。

表4 改進Soft-NMS方法的有效性

表5 在數(shù)據(jù)集1+2上的檢測結(jié)果

圖7 在同一圖片中兩種不同塵袋的檢測效果

4 結(jié)束語

本文提出了一種基于深度學習的濾袋開口檢測算法,實驗結(jié)果表明,本文算法在濾袋開口檢測問題上比傳統(tǒng)基于深度學習的目標檢測方法表現(xiàn)得更好,且檢測速度較快。由于本文構(gòu)建的數(shù)據(jù)集規(guī)模較小,后續(xù)工作中將嘗試建立種類更為全面的大型數(shù)據(jù)集供濾袋開口檢測算法的訓練和測試,并且進一步通過剪枝算法壓縮模型體積,提升運算速度。

猜你喜歡
殘差卷積特征
基于全卷積神經(jīng)網(wǎng)絡(luò)的豬背膘厚快速準確測定
基于殘差-注意力和LSTM的心律失常心拍分類方法研究
離散型隨機變量的分布列與數(shù)字特征
融合上下文的殘差門卷積實體抽取
一種基于卷積神經(jīng)網(wǎng)絡(luò)的地磁基準圖構(gòu)建方法
基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
一種并行不對稱空洞卷積模塊①
基于殘差學習的自適應無人機目標跟蹤算法
基于深度卷積的殘差三生網(wǎng)絡(luò)研究與應用
抓特征解方程組
越西县| 祁门县| 新干县| 封丘县| 榆社县| 共和县| 陕西省| 青岛市| 三原县| 凤台县| 白玉县| 灵丘县| 安福县| 遵义市| 涿鹿县| 饶河县| 黑水县| 西安市| 都匀市| 永善县| 临夏市| 剑河县| 淄博市| 灌云县| 凉山| 京山县| 永嘉县| 泽普县| 高密市| 台湾省| 攀枝花市| 葫芦岛市| 大足县| 通化市| 新化县| 肃南| 河南省| 江门市| 邓州市| 民勤县| 台中市|