?

基于SSD算法的行人檢測技術研究

2023-05-24 02:30郭健王偉馬壯壯
無線互聯科技 2023年5期
關鍵詞:特征融合人工智能

郭健 王偉 馬壯壯

摘要:行人檢測技術的應用十分普遍,包括人工智能的研究、智能監控的應用、智能交通、無人駕駛汽車中對行人的檢測、對人體行為進行分析后做出預判等,應用深度學習的方法對行人進行檢測就是人工智能發展的一個十分重要的方向。文章主要研究的內容有3部分,對原SSD算法進行了改進,探討了神經網絡的根本組成與特性,將原SSD算法的基礎VGG16改為ResNet50,提高了檢測速度和精確度。

關鍵詞:人工智能;行人檢測;SSD;ResNet50;特征融合

中圖分類號:TP39文獻標志碼:A

0 引言

本文研究了以深度學習和卷積神經網絡為基礎的SSD行人檢測算法,對于行人的檢測和提取是計算機視覺處理中十分困難的一項技術。SSD是深度學習出現之后提出的十分有效的檢測算法,它只在頂層進行檢測,而且是單級目標檢測算法。SSD算法參考了多種數據集,同時對多種不同分辨率的圖片進行檢測試驗,有效地提高了目標檢測的精度,而且是一個非常好用且簡單的單級目標檢測器。對于一些小目標的檢測,SSD在檢測精確度和檢測速率上都具備亮點。檢測中所用的數據集大部分都是PASCAL VOC,MS-COCO[1],PASCAL VOC中不僅有目標檢測所用的數據,還具備圖像分類、語義分割和動作檢測等任務;MS-COCO還包括很多的小對象和更密集的定位對象。

1 應用深度學習的方法對行人進行檢測

行人檢測的任務就是使用行人檢測算法判斷一張圖片中存在多少個行人,并返回行人存在的位置空間。R-CNN算法流程可分為4個步驟:第一步是區域提名,候選區域的生成有1 000~2 000個,是使用SS(Selective Search)算法得到圖片中不經過處理的一部分;第二步是區域大小歸一化,將2 000個候選區域框縮放到227×227,然后對第一步獲得的候選框用深度網絡提取特征,這個深度網絡就是圖片分類網絡;第三步是將在第二步獲得的特征向量傳輸到SVM分類器中,其作用是對每一類都用非極大值抑制進行剔除堆疊建議框的處理;第四步是使用回歸器精修候選框,即對候選框進行一個位置的調整,因為通過SS算法得到的區域候選框,并不是那么準[2]。

非極大值抑制剔除重疊建議框的尋找是通過IOU,IOU是兩個目標框預測概率的一個交并比,數學表達式是A∩BA∪B,如圖1所示。對于每一個類別,首先,要找到評分比較高的一個目標,再去計算其他目標框與該目標框的IOU值;其次,對每一個邊界框與最高得分的邊界框的IOU值進行判斷,如果該值大于給定閾值,則刪除;最后,將得到的最高得分的目標保存,在剩下的邊界框中找到得分最高的目標,依照之前的流程進行計算及刪除操作,以此類推,把一切的邊界框都進行完[3]。

2 卷積神經網絡概述

在反向傳播算法提出之后,神經網絡被廣泛地應用到對機器學習的研究,由于神經網絡中含有大量的參數,常常會發生過度擬合、訓練耗時太長的情況,但是相對于Boosting、Logistic回歸、SVM等一些傳統辦法,還是具備很大的優越性。卷積神經網絡的3個主要操作是局部感受野、權值共享和池化層,通過這些操作可以有效地降低網絡參數的數量,并且使網絡具有了一定的穩定性,還能夠降低網絡因為出現過擬合的缺陷所帶來的影響。簡單的卷積神經網絡結構如圖2所示[4]。

局部感受野:每一張圖片中所有事物的聯系并不是整體的、不可分割的,它們之間的空間聯系只是部分內容的相互聯系,不用對全部的圖像做感受處理,就可以得到整體的信息。采取這種方法能夠有效地縮小所需連接的參數數目,大大地降低了計算量,提高了運算速度。

3 SSD網絡的搭建

SSD最突出的操作是預測很多邊界框的類別,并通過IOU計算出類別分數以及邊界框可能產生的偏移,應用非常小的卷積濾波器對預測特征圖進行處理。原SSD算法是以VGG16為基本網絡架構,并在此基礎上增加了幾個卷積層用于獲取比較多的預測特征圖。該網絡只是使用了VGG16的Conv5_3,對全連接層6和全連接層7做處理,將其轉化為卷積層,從全連接層6和全連接層7中進行重采樣參數,將池化層5從卷積核為2×2、步距為2,更改為3×3、步距1,刪除一切丟棄層和全連接層8。

3.1 默認邊界框的生成

在預測的時候,網絡會為每一個類別的默認邊界框生成相應的分數。兩個特征矩陣,一個是8×8,一個是4×4,8×8的特征矩陣相對于4×4的特征矩陣,其抽象程度會更低一些,所保留的細節信息也會更多一些。用8×8的特征層在相對低層的特征矩陣上去預測較小的目標,之后默認邊界框就可以和真實邊界框更好地進行匹配計算。4×4的特征層適合去檢測相對更大一點的目標。如圖3所示,是每個層的默認邊界框的尺度以及對應的比例,每一個默認邊界框的尺度大小里都會有兩個值,這是對于比例一的一種情況,在每一個特征層上面都會去額外添加一個默認邊界框。網絡會在conv4_3層、conv10_2層和conv11_2層生成4個默認邊界框,去掉了1∶3和3∶1的比例,其他的預測特征層都是6個默認邊界框[5]。

3.2 預測器的實現

對于高和寬為m×n、深度為p的預測特征層,是直接使用卷積核為3×3、深度為p的卷積核來實現的,然后通過3×3的卷積才能生成概率分數以及相對默認邊界框的坐標偏移量,來預測邊界框回歸參數。關于特征圖中的每個位置,都會生成k個默認邊界框,分別去計算c個類別分數以及4個坐標偏移量,要用(c+4)×k個卷積核來對圖片進行卷積處理。相對于一個m×n大小的預測特征層,則會有(c+4)×k×m×n個輸出值生成。

3.3 正負樣本的選取

對于正樣本的選取有兩個匹配準則:第一個匹配準則,是對每一個實際邊界框進行匹配,選取的是與它IOU值最大的默認邊界框;第二個匹配準則,是對于任意的一個默認邊界框。只要與任何一個實際邊界框IOU值大于0.5,那么也認為它是正樣本。除了正樣本以外,其他的都可以歸為負樣本,但是在訓練過程中,會出現的情況是默認邊界框匹配到的實際邊界框的正樣本個數很少,基本上都是幾個到十幾個。所以,如果把剩下的默認邊界框全部當作負樣本來訓練,就會帶來樣本不平衡的情況。負樣本的選取策略是先對所有的負樣本計算它的最大置信度損失,如果置信度損失值越大,將負樣本錯誤地檢測成目標的概率就會越大,這是不能接受的。所以,可根據計算出的置信度損失選取排在前面的負樣本[6]。

3.4 損失的計算

4 基于ResNet50的SSD行人檢測

使用ResNet50作為基礎搭建SSD網絡,網絡結構如圖4所示,提高了網絡關于行人檢測的精確度,只保留conv4之前的層結構。對于conv4層結構將卷積的步距改為1×1大小,從實驗得出的結果可以說明,這樣設計提升了行人檢測的速率與精度。

4.1 算法設計背景

分層特征提取是SSD網絡的主要思路,之后再進行行人檢測和邊框回歸?;A的SSD網絡應用VGG16提取行人的特征信息,VGG16應用較小的卷積核,有利于堆疊更多的層,建立深層的網絡結構,在視覺工作上的性能得到了提高。伴隨著深度學習的迅猛發展,深層卷積神經網絡的構建成為深度學習的主要方向,研究證明,加深網絡結構對提高行人特征的檢測具有有效性。但是VGG16屬于相對淺層的網絡,對行人的特征提取不太充分,本文引用ResNet50替換VGG16,以求達到算法整體性能的提升[7]。

4.2 特征提取網絡

本文使用的特征提取網絡為ResNet50,采用殘差結構使得網絡層數變多而不會發生過擬合現象。在卷積層進行堆積的過程中,先用1×1的卷積核對原圖片進行有效的降維,之后的特征提取利用3×3的卷積核進行,可以有效地減少網絡的參數數量。

4.3 特征圖融合模塊

傳統的特征融合,僅僅采用了網絡最后一層的特征。圖像金字塔是將原圖像變成有差別的圖像,然后進行特征提取檢測。多尺度的特征融合可以在檢測的時候進行特征融合,就像本文所使用的SSD,就是利用了這樣的多尺度特征融合方式,不需要使用上采樣的步驟,它是從網絡中生成的預測特征圖中選取具有差異尺度的特征之后再進行融合,這樣做還不會增加多余的計算量[8]。

SSD算法在6層產生了6種尺度的預測特征圖,深層特征圖對原圖提取的語義信息非常多、特征詮釋能力強,但是缺少目標細節信息。淺層特征圖對原圖的感受野小,可以有效地檢測原圖中的一些小目標,但是淺層的卷積層比較少,導致語義信息少,容易造成欠擬合。所以,將淺層特征圖與深層特征圖進行多尺度融合,使其能夠做到對小目標檢測精確度的提升。

5 實驗條件與結果

模型的訓練需要使用較多的樣本數據,當開始對行人檢測進行深入研究時,一系列算法性能公開的數據集不斷出現,例如PASCAL VOC,COCO,Caltech等。

Caltech行人數據庫是目前規模比較大的行人數據庫,對矩形邊框之間的時間所對應的關系和遮擋情況進行了有效標注。COCO有5種類型標注,每一個標注都對應一個JSON文件。本文采用了一些COCO和Caltech,PASCAL VOC數據集。

實驗使用的是微軟操作系統Windows 10,顯卡型號為GTX1650,內存為16 G。預訓練權重使用英偉達SSD FP32,訓練方法為:提前準備好數據集,下載對應預訓練模型的權重,使用GPU運行??傆柧毚螖?5 000次,分3個階段,第0~4 999次的訓練為第一階段,設定學習率為0.001;第5 000~9 999次為第二階段,設定學習率為0.001;第10 000~14 999次為第三階段,繼續設定學習率為0.001[9]。

實驗結果如表2和圖5所示。

6 結語

本文介紹了CNN卷積網絡和在沒有深度學習之前的行人檢測,分析了一些利用深度學習方法構建的網絡進行的行人檢測,提出了ResNet50為網絡基礎的SSD網絡架構,并使用特征融合方法對原有的SSD算法做了改良。經實驗驗證,這些改進對行人的檢測和標記是有效的,檢測速率也沒有降低,漏檢率有所降低。

參考文獻

[1]王璐,王帥,張國峰,等.基于語義分割注意力與可見區域預測的行人檢測方法[J].東北大學學報,2021(9):1261-1267.

[2]熊壽禹,陶青川,戴亞峰.一種輕量級的卷積神經網絡的行人檢測方法[J].計算機應用與軟件,2021(9):220-225,231.

[3]康帥,章堅武,朱尊杰,等.改進YOLOv4算法的復雜視覺場景行人檢測方法[J].電信科學,2021(8):46-56.

[4]單志勇,張鐘月.基于改進Faster R-CNN算法的行人檢測[J].現代計算機,2021(23):124-128.

[5]張向清.基于YOLO算法的無人機視角下行人小目標檢測[J].信息與電腦,2021(15):76-78.

[6]陳敏,王池社,郝達慧.基于SSD多模態多尺度特征融合的行人檢測算法[J].金陵科技學院學報,2021(2):33-38.

[7]鮑文斌,張冬泉.XSSD-P:改進的SSD行人檢測算法[J].計算機工程與應用,2022(23):132-141.

[8]于波,劉暢.基于改進SSD算法的行人檢測方法[J].電子測量技術,2021(12):24-28.

[9]鄺先驗,楊江波,張建華.基于改進的DSSD算法的行人檢測[J].中國儀器儀表,2021(5):21-27.

(編輯 沈 強)

猜你喜歡
特征融合人工智能
我校新增“人工智能”本科專業
人工智能與就業
基于移動端的樹木葉片識別方法的研究
融合整體與局部特征的車輛型號識別方法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合