閆新慶 楊喻涵 陸桂明
【摘要】? ? 目標(biāo)檢測是圖像處理領(lǐng)域一個重要的研究方向,深度學(xué)習(xí)方法需要大量數(shù)據(jù)進(jìn)行訓(xùn)練,訓(xùn)練的繁雜和復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)限制了目標(biāo)檢測的速度。本文基于Faster RCNN 的網(wǎng)絡(luò)架構(gòu),創(chuàng)新性提出了light tail Faster RCNN網(wǎng)絡(luò)架構(gòu)。light tail Faster RCNN算法在保證精度的情況下,大大提升了處理速度。在本文的設(shè)計中,通過將網(wǎng)絡(luò)結(jié)構(gòu)中的全連接層改為1*1的卷積層,來達(dá)到速度的提升。本文實驗在 PASCAL VOC 數(shù)據(jù)集上進(jìn)行,較經(jīng)典網(wǎng)絡(luò)模型,在識別率略低的情況下,速率提升了一倍多。在總體性能上顯著優(yōu)于經(jīng)典目標(biāo)檢測算法,通過對比實驗的方法比較驗證了本文提出方法的有效性。
【關(guān)鍵詞】? ? 目標(biāo)檢測? ? Faster RCNN? ? 深度學(xué)習(xí)
Abstract: Target detection is an important research direction in the field of image processing. Deep learning methods require a large amount of data for training, and the complex and complex network structure of training limits the speed of target detection. Based on the network architecture of Faster RCNN, this paper innovatively proposes the light tail Faster RCNN network architecture. The Light tail Faster RCNN algorithm greatly improves the processing speed while ensuring accuracy. In the design of this article, the speed is improved by changing the fully connected layer in the network structure to a 1*1 convolutional layer. The experiment in this article is carried out on the PASCAL VOC data set. Compared with the classic network model, the speed is more than doubled when the recognition rate is slightly lower.? The overall performance is significantly better than the classic target detection algorithm. The method comparison of the comparative experiment verifies the effectiveness of the method proposed in this paper.
Keywords: Target detection ; Faster RCNN ; Deep learning
引言
目標(biāo)檢測與視頻分析和圖像理解有著密切的聯(lián)系,近年來受到了廣泛的關(guān)注。隨著深度學(xué)習(xí)的快速發(fā)展,人們引入了更強大的工具來解決傳統(tǒng)目標(biāo)檢測中存在的問題,這些工具能夠?qū)W習(xí)到高層次和深層次的特征。
部位形變模型(DPM)及方向梯度直方圖(HOG)和尺度不變特征變換(SIFT)經(jīng)常作為目標(biāo)檢測的特征特征。但是傳統(tǒng)方法的特征一般都是由人工進(jìn)行篩選的,是一些低層次的特征,有一些特征是針對特定對象的,比如說HOG特征主要是針對行人檢測提出的,針對不同目標(biāo)需要人為的去選擇不同的特征,這就導(dǎo)致傳統(tǒng)算法的魯棒性不高,不能夠廣泛的應(yīng)用到目標(biāo)檢測算法中。近年來,隨著深度學(xué)習(xí)的大幅度發(fā)展,基于深度學(xué)習(xí)的目標(biāo)檢測方法被大量研究。
基于深度學(xué)習(xí)的目標(biāo)檢測方法可以分為兩個主要類別,第一種是應(yīng)用回歸算法進(jìn)行目標(biāo)檢測,第二種是應(yīng)用分類算法進(jìn)行目標(biāo)檢測。
基于回歸的目標(biāo)檢測算法包括YOLO模型。YOLO模型直接在待檢測圖像上進(jìn)行訓(xùn)練,主要將圖像劃分成為一些網(wǎng)格,每個網(wǎng)格都檢測以網(wǎng)格為中心的目標(biāo),它是犧牲準(zhǔn)確性來換取目標(biāo)檢測速度的方法。
基于分類的目標(biāo)檢測算法的典型代表是Faster-RCNN算法。文獻(xiàn)[3]中的算法主要使用卷積神經(jīng)網(wǎng)絡(luò)通過搜索的方法選擇出待檢測圖像中的候選區(qū)來進(jìn)行高層次的特征提取和表示,然后再采用分類算法進(jìn)行目標(biāo)識別。Faster-RCNN模型的誕生[7]提高 RCNN 模型的檢測精度和速度。
但是Faster-RCNN算法在目標(biāo)識別階段用了好幾層全連接層來進(jìn)行感興趣區(qū)的識別和回歸。就每個區(qū)域的預(yù)測而言,這是非常耗時的,當(dāng)有大量的候選區(qū)域的時候,這種情況甚至?xí)兊酶?。而且,特征通道?shù)量較多,這就使得全連接層占用大量內(nèi)存,并直接影響網(wǎng)絡(luò)的計算速度。
基于以上問題,本文基于Faster-RCNN算法,將感興趣區(qū)的識別和回歸中的全連接層進(jìn)行了改進(jìn),提出了light tail Faster RCNN網(wǎng)絡(luò)架構(gòu)。該網(wǎng)絡(luò)主要是通過將原本網(wǎng)絡(luò)結(jié)構(gòu)中的全連接層改為1*1的卷積層,來達(dá)到速度的提升。
一、改進(jìn)的Faster-RCNN算法
改進(jìn)的目標(biāo)檢測模型遵循Faster RCNN的相似深度學(xué)習(xí)框架,該框架已被證明是用于目標(biāo)檢測的最新深度學(xué)習(xí)方法。該框架主要由區(qū)域候選網(wǎng)絡(luò)(RPN)和RCNN網(wǎng)絡(luò)組成。Faster RCNN的結(jié)構(gòu)如圖1所示。
區(qū)域候選網(wǎng)絡(luò)主要用于生成可能包含對象的一系列感興趣區(qū)域(RoI)??焖賀CNN網(wǎng)絡(luò)主要用于對目標(biāo)(和背景)進(jìn)行分類并細(xì)化那些區(qū)域的邊界。Faster RCNN通過兩個網(wǎng)絡(luò)共享特征提取過程獲得的卷積層參數(shù),從而使該模型能夠以相對較快的速度完成目標(biāo)檢測任務(wù)。
在本文的工作中,主要是基于Faster-RCNN算法,將感興趣區(qū)的識別和回歸中的全連接層進(jìn)行了改進(jìn),提出了light tail Faster RCNN網(wǎng)絡(luò)架構(gòu),該框架結(jié)構(gòu)如圖2所示。
如圖2所示展示的是改進(jìn)Faster RCNN框架示意圖,該網(wǎng)絡(luò)主要是通過將原本網(wǎng)絡(luò)結(jié)構(gòu)中的全連接層fc6和fc7改為1*1的卷積層,來達(dá)到速度的提升。由圖所示,原本的Faster-RCNN算法在目標(biāo)識別階段用了好幾層全連接層來進(jìn)行感興趣區(qū)的識別和回歸。就每個區(qū)域的預(yù)測和識別來說,這些全連接層是非常耗費時間的,當(dāng)有圖像當(dāng)中有大量候選區(qū)域的時候,浪費的時間會更多。不僅如此,如果特征通道數(shù)量較多,就會使得全連接層占用大量內(nèi)存,從而直接影響到Faster-RCNN網(wǎng)絡(luò)的計算速度。
因此,本文將繁雜的全連接層改為1*1的卷積層,在精度略微損失的情況下,來達(dá)到速度的有效提升。本文第三部分通過實驗驗證了提出模型的有效性。
二、實驗驗證及分析
本文的驗證實驗在經(jīng)典的開源數(shù)據(jù)集 PASCAL VOC2007 數(shù)據(jù)集上進(jìn)行,改數(shù)據(jù)集共有21類不同的對象類別,并且包含 5000 訓(xùn)練集樣本圖像和 5000 測試樣本圖像。本次實驗的硬件環(huán)境顯卡采用的是 NVIDIA Tesla K80,再軟件方面,操作系統(tǒng)采用 Linux Ubuntu 16.04 版本,實現(xiàn)語言采用 Python3.6,深度學(xué)習(xí)框架采用 TensorFlow 框架,實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)模型,F(xiàn)aster RCNN 中的最大迭代值等參數(shù)對 m AP 的數(shù)值會產(chǎn)生較大的影響,為了得到較好的輸出,需要對這些參數(shù)進(jìn)行優(yōu)化。在本次實驗中,最大迭代次數(shù)為70000,并且調(diào)節(jié)相關(guān)參數(shù)記錄所提算法和對比算法的最佳結(jié)果。
如圖3所示,為實驗部分原圖和特征提取的特征圖。
如圖3所示,為數(shù)據(jù)集原圖和改進(jìn)的Faster RCNN算法的特征提取示意圖,從圖中可以看出改進(jìn)的Faster RCNN可以較好的提取目標(biāo)的特征,從而實現(xiàn)目標(biāo)檢測。
本文實驗在PASCAL VOC2007 數(shù)據(jù)集上將Faster RCNN算法和改進(jìn)的Faster RCNN算法進(jìn)行實驗,實驗條件保持一致,其mAP和實驗時間如表1所示,各個類別的識別精度如圖4所示。
實驗結(jié)果如上表1和圖4所示,在圖4中橙色代表采用Faster RCNN的識別結(jié)果,其mean AP為71.26%,運行時間為53698s;藍(lán)色代表采用本文提出的light tail Faster RCNN的mean AP為71.92%運行時間為25241s。從圖4可以看出大部分類別Faster RCNN的識別結(jié)果高于light tail Faster RCNN的識別結(jié)果。從整體上來看,雖然平均識別精度下降了0.66%,但是模型整體運行速度提升了一倍多,說明本文改進(jìn)的方法light tail Faster RCNN模型在精度有略微損失的情況下大大加快了處理速度,說明本文創(chuàng)新型提出的light tail Faster RCNN算法的有效性。
四、結(jié)論
本文針對 Faster RCNN目標(biāo)檢測算法訓(xùn)練的繁雜和復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)限制了目標(biāo)檢測的速度的問題,創(chuàng)新性的提出了light tail Faster RCNN網(wǎng)絡(luò)架構(gòu)。該框架將網(wǎng)絡(luò)結(jié)構(gòu)中的全連接層改為1*1的卷積層,來達(dá)到速度的提升。經(jīng)PASCAL VOC 數(shù)據(jù)集上的實驗驗證,light tail Faster RCNN算法在略微損失精度的情況下,大大提升了處理速度,驗證了方法的有效性。
參? 考? 文? 獻(xiàn)
[1] Liu W, Anguelov D, Erhan D, et al. Ssd: Single shot multibox detector[C]//European conference on computer vision. Springer, Cham, 2016: 21-37.
[2] Lin T Y, Goyal P, Girshick R, et al. Focal loss for dense object detection[C]//Proceedings of the IEEE international conference on computer vision. 2017: 2980-2988.
[3] Shi K, Bao H, Ma N. Forward vehicle detection based on incremental learning and fast r-cnn[C]//2017 13th International Conference on Computational Intelligence and Security (CIS). IEEE, 2017: 73-76.
[4] Dalal N, Triggs B. Histograms of oriented gradients for human detection[C]//2005 IEEE computer society conference on computer vision and pattern recognition (CVPR05). IEEE, 2005, 1: 886-893.
[5] Felzenszwalb P F, Girshick R B, McAllester D, et al. Object detection with discriminatively trained part-based models[J]. IEEE transactions on pattern analysis and machine intelligence, 2009, 32(9): 1627-1645.