宋艷艷,譚 勵,馬子豪,任雪平
北京工商大學計算機與信息工程學院,北京100048
在日常生活中,監(jiān)控無處不在,廣場、火車站、住宅小區(qū)、機要室等重要場所,都分布著大大小小,不計其數(shù)的攝像頭,可實現(xiàn)犯罪、交通管制意外檢測和防范的作用,在社會工作安全領域中發(fā)揮著越來越重要的作用。隨著大數(shù)據(jù)、云計算技術在安防領域的應用,深度學習技術具備了應用條件。因此,實現(xiàn)智能分析處理視頻的關鍵在于面向視頻的目標檢測與識別具有較高的準確率和處理效率。
目標檢測是從視頻或者圖像中提取運動前景或感興趣的目標,其要解決的問題就是標記出物體的具體位置,同時檢測出物體所屬的類別。實時且準確的目標檢測可以為后續(xù)目標跟蹤、行為識別等提供良好的條件。目前,主流的目標檢測算法主要有:一是基于手工特征所構(gòu)建的傳統(tǒng)目標檢測算法,如Viola-Jones檢測器[1],采用了最傳統(tǒng)的滑動窗口檢測,在圖像中的每一個尺度和像素位置進行遍歷,逐一判斷當前窗口是否為人臉目標;HOG 行人檢測器[2],是基于梯度方向直方圖特征的改進,通過固定檢測器的窗口大小且構(gòu)建多尺度圖像金字塔來檢測不同大小的目標;可變形部件模型[3],該算法將目標整體檢測轉(zhuǎn)化為各部件檢測問題,然后將各部件檢測結(jié)果進行聚合得到目標整體檢測結(jié)果。二是基于目標候選區(qū)域的檢測算法,通過提取候選區(qū)域,并對相應區(qū)域進行深度學習實現(xiàn)分類檢測結(jié)果。該類算法主要包括R-CNN[4](region-based convolution neural networks)、SPPNet(spatial pyramid pooling network)[5]、Fast R-CNN[6]、Faster R-CNN[7]、R-FCN(region-based fully convolutional network)[8]等系列方法。三是基于深度學習的回歸方法,包括YOLO(you only look once)[9]、SSD(single shot multibox detector)[10]、DenseBox[11]等方法。隨著深度學習出現(xiàn)之后,目標檢測領域在特征表達能力及時間效率上取得了突破性進展,可以輕松實現(xiàn)實時檢測速度。針對目標檢測中處理多尺度問題,YOLOV3 檢測算法直接利用深度網(wǎng)絡在目標對應位置提取的特征對其邊界框進行回歸處理,減小了計算量且設計比較簡單。但由于目標檢測中存在背景復雜,目標尺度和姿態(tài)多樣性的問題,造成YOLOV3 算法對部分目標檢測不準確,會產(chǎn)生誤檢、漏檢或重復檢測的情況。
為解決行人目標尺度和姿態(tài)多樣性導致目標檢測不準確的問題,本文借助YOLOV3 本身算法思想將前層特征和中層特征進行融合,構(gòu)成包含不同尺度的目標定位信息和語義信息的融合層。通過增加多尺度融合層,解決其對多尺度目標的預測邊界框不夠準確問題。同時,利用K-means 聚類算法對數(shù)據(jù)集的目標真實框尺寸進行聚類分析,更改網(wǎng)絡檢測層的邊界框尺寸,以實現(xiàn)更好的目標檢測結(jié)果。另外,針對數(shù)據(jù)集中出現(xiàn)的人與周圍目標相互遮擋影響檢測的問題,使用斥力損失函數(shù),縮小預測框與真實邊框的聚類,增大與周圍邊框的距離,從而降低模型的錯誤率,提高檢測效果。實驗結(jié)果證明,本文改進的視頻目標檢測算法對出現(xiàn)的多尺度目標具有很好的定位能力,并且能檢測出處于遮擋部分的行人目標,并在實驗數(shù)據(jù)集上取得了好的目標檢測結(jié)果。
目標檢測是當前計算機視覺和機器學習領域的研究熱點,相對于傳統(tǒng)目標檢測算法,R-CNN[4]將問題轉(zhuǎn)變成找出可能含有物體的區(qū)域框,這些框之間是可以相互重疊互相包含的,這樣就避免了暴力枚舉所有的框。R-CNN 目標檢測算法利用選擇性搜索算法在圖像中取2 000 個左右可能包含物體的候選區(qū)域,然后將每個候選區(qū)域縮放成統(tǒng)一的大小,并輸入到卷積神經(jīng)網(wǎng)絡(convolutional neural networks,CNN)提取特征,最后將提取的特征輸入到支持向量機(support vector machine,SVM)進行分類。He 等人針對R-CNN 進一步改進提出了SPPNet[5],在R-CNN網(wǎng)絡最后一個卷積層后接入了金字塔池化層,保證傳到下一層全連接層的輸入固定。因為在R-CNN 中存在wrap/crop 預處理,導致圖像出現(xiàn)拉伸變形或物體不全等問題,限制了識別精度。SPPNet 在CNN 結(jié)構(gòu)上加入了金字塔池化層,使得網(wǎng)絡的輸入圖像可以是任意尺寸,輸出是一個固定維數(shù)的向量。RCNN 目標檢測算法對所有候選區(qū)域進行特征提取時會有重復計算,針對這個問題,Girshick 提出了Fast R-CNN 模型[6],與R-CNN 相比,其在最后一個卷積層后添加了一個ROI(regions of interest)池化層,同時其損失函數(shù)使用了多任務損失函數(shù),將邊框回歸直接加入到CNN 網(wǎng)絡訓練中,在保證準確率的同時提升處理速度。在Fast R-CNN 目標檢測算法中,對于選擇性搜索,找過所有的候選框,是非常耗時的。針對此問題,Ren 等人提出了Faster R-CNN 框架[7],在Fast R-CNN 中引入了區(qū)域生成網(wǎng)絡(region proposal network,RPN)代替選擇性搜索算法,同時引入錨點(anchor)應對目標形狀的變化問題。
2016 年,Redmon 等人提出了一種新的物體檢測方法YOLO[9]。他們將對象檢測作為回歸問題構(gòu)建到空間上分離的邊界框和相關的類概率。單個神經(jīng)網(wǎng)絡在一次評估中直接從完整圖像預測邊界框和類概率。該檢測算法,對于一個給定的輸入圖像,將其劃分成7×7 的網(wǎng)格。然后,對于每個網(wǎng)格,都預測2 個邊框值(包括每個邊框是目標的置信度以及每個邊框區(qū)域在多個類別上的概率)。針對預測出的7×7×2個目標窗口,根據(jù)閾值去除可能性比較低的目標窗口,最后利用非極大值抑制(non-maximum suppression,NMS)去除冗余窗口。YOLO 將目標檢測任務轉(zhuǎn)換成一個回歸問題,大大加快了檢測的速度,使得YOLO 可以每秒處理45 張圖像。但YOLO 沒有候選區(qū)域機制,只使用7×7 的網(wǎng)格回歸會使得目標不能非常精確地定位,這也導致了YOLO 的檢測精度不是很高。為了提高物體定位精確性和召回率,Redmon等人在YOLO 的基礎上提出了改進YOLO9000[12],相比于YOLOV1 提高了訓練圖像的分辨率,引入了Faster R-CNN 中的候選框的思想,對網(wǎng)絡結(jié)構(gòu)的設計進行了改進,輸出層使用卷積層代替YOLO 的全連接層,聯(lián)合使用COCO(common objects in context)物體檢測標注數(shù)據(jù)和ImageNet 物體分類標注數(shù)據(jù)訓練物體檢測模型,其效果顯示無論是在速度上還是精度上都優(yōu)于SSD[10],但是YOLOV2 在面對不同尺度的目標時,其檢測效果依然不夠理想。2018 年Redmon 等人再次提出了YOLOV3[13],其主要改進是調(diào)整了網(wǎng)絡結(jié)構(gòu),新的網(wǎng)絡結(jié)構(gòu)darknet-53 借用了ResNet[14]的思想,在網(wǎng)絡中加入了殘差模塊,這樣有利于解決深層次網(wǎng)絡的梯度消失問題。其次,采用了多尺度檢測,選擇3 個不同尺度的特征圖來進行對象檢測,能夠檢測到更加細粒度的特征。再者,YOLOV3 中預測對象類別時不使用softmax 函數(shù),改成使用logistic 的輸出進行預測,這樣能夠支持多標簽對象。YOLOV3 雖然具有不錯的結(jié)果,但隨著IOU(intersection over union)的增大,性能下降,說明YOLOV3不能很好地與真實框切合。因此,在YOLO算法的基礎上,針對不同數(shù)據(jù)集進行創(chuàng)新優(yōu)化,提高檢測效果的相關研究逐漸增加。例如王殿偉等人[15]提出的小目標檢測算法,葛雯[16]、孔方方[17]和Wu 等人[18]改進的YOLOV3 算法,高宗等人[19]提出的基于YOLO網(wǎng)絡的行人檢測方法,船舶等目標檢測[20]及手勢跟蹤等應用[21]。
為了使YOLOV3 算法適用于行人目標檢測數(shù)據(jù)集,本文針對YOLOV3 算法進行以下工作:首先對行人目標檢測數(shù)據(jù)集進行K-means 聚類分析,根據(jù)聚類結(jié)果確定算法中邊界框尺寸;其次,增加YOLOV3 的尺度檢測層,以提高人群密集中小目標檢測的效果;最后,在YOLOV3 的原有損失函數(shù)基礎之上,加入了斥力損失函數(shù)解決行人目標檢測出現(xiàn)的遮擋問題。
YOLOV3 算法引入了anchor概念,anchor是針對不同尺度網(wǎng)絡層而確定的初始候選框。在之前的目標檢測算法中,都是手動挑選候選框的尺寸,這樣選取的候選框過于主觀。因此利用K-means 算法對訓練集中的真實邊界框進行聚類,根據(jù)聚類結(jié)果選擇出具有客觀性和代表性的候選框。
K-means 是發(fā)現(xiàn)給定數(shù)據(jù)集的K個簇的算法,每一個簇通過其質(zhì)心(centroid),即簇中所有點的中心來描述。一般的K-means 聚類通過度量樣本間相似性進行聚類,通常利用歐式距離作為度量公式。在候選框聚類過程中,若使用歐式距離的標準K均值,則較大的邊界框會比較小的邊界框產(chǎn)生更多的誤差。真正想要選擇的樣本間的距離度量應該與邊界框本身的大小無關,因此對于候選框聚類的距離度量,使用以下公式進行計算:

其中,box表示真實框的集合,centroid表示邊界框的簇中心集合,IoU(box,centroid)表示真實框與邊界框簇中心的交集與并集的比值。IoU值越大,代表兩者相關度越高,即兩者越相近。在目標檢測中IoU計算方式如圖1 所示。
對于給定的真實框數(shù)據(jù)集,通過計算邊框間IOU值來度量邊框間的距離,避免邊界框本身大小所帶來的誤差。利用該聚類算法將數(shù)據(jù)集劃分為K個簇,通過一系列迭代使得簇內(nèi)的邊框距離盡可能小,而簇間的邊框距離盡量大,最后通過目標函數(shù)的變化值從而確定候選框的尺寸。總的來說,K-means 聚類分析的目的,行人數(shù)據(jù)集的真實框本身存在“高瘦”的特點,YOLOV3 檢測算法原有的候選框尺寸并不完全適用密集行人數(shù)據(jù)集。因此,通過數(shù)據(jù)集本身標注出的真實框(包括無遮擋和遮擋的目標)的尺寸大小進行聚類分析,選出具有客觀性、代表性的候選框,替換YOLOV3 檢測算法原有的候選框尺寸,以提高檢測的效果。

Fig.1 IoU calculation formula representation圖1 IoU 計算公式表示圖
針對行人目標尺度和姿態(tài)多樣性導致目標檢測不準確的問題,借助YOLOV3 本身算法思想選擇將淺層特征和中層特征進行融合,構(gòu)成包含不同尺度的目標定位信息和語義信息的融合層。經(jīng)分析,淺層特征對小尺度目標具有很好的細節(jié)定位能力,但語義表征信息弱。隨著網(wǎng)絡層的加深,深度特征圖包含豐富的語義信息,而經(jīng)過連續(xù)下采樣操作,小目標定位信息丟失。因此,利用殘差思想,將淺層特征與深層特征信息進行連接融合進行目標檢測。但直接利用最深層特征圖對淺層特征進行語義增強的效果并不明顯,因此在構(gòu)建融合層時,選擇通過上采樣操作將深層特征圖放大到和淺層特征圖相同的尺寸進行連接操作。將增加融合檢測層的網(wǎng)絡模型稱為YOLOV3_104,其網(wǎng)絡結(jié)構(gòu)圖如圖2 所示。
從網(wǎng)絡結(jié)構(gòu)圖中可以看出,在原有YOLOV3 網(wǎng)絡結(jié)構(gòu)基礎上,將深層特征圖經(jīng)過上采樣操作放大到與淺層特征圖同一尺寸,之后進行連接操作構(gòu)建了新尺度目標檢測層。在原有網(wǎng)絡基礎上增加了104×104 尺度檢測層,相對其他尺度檢測層,將圖像劃分成了更精細的單元格,可以檢測出越精細的物體,對小目標的檢測效果提升明顯。
在增加104×104 尺度檢測層的基礎上,將數(shù)據(jù)集真實框進行聚類分析得到的候選框尺寸分別應用到13×13,26×26,52×52,104×104 尺度檢測層上進行目標檢測。對于較大的特征圖,其感受野較小,對小目標相對敏感,因此選用尺寸小的候選框,而較小的特征圖,其感受野較大,對大目標相對敏感,因此選用尺寸大的候選框。
針對數(shù)據(jù)集中出現(xiàn)的人與周圍目標互相遮擋出現(xiàn)檢測不準確的問題,在YOLOV3 原有損失函數(shù)的基礎上,即縮小預測框與其負責回歸的標注框的距離的同時,添加了斥力損失[22]函數(shù),增大預測框與其周圍非負責標注框及相交預測框的距離。更新后的損失函數(shù),可以使得預測框向正確的目標靠近,遠離錯誤的目標,降低模型的誤檢率。其損失函數(shù)計算公式如下所示:

Fig.2 YOLOV3_104 network structure diagram圖2 YOLOV3_104 網(wǎng)絡結(jié)構(gòu)圖

其中,LYOLOV3表示預測框與其負責回歸的標注框的損失計算值,沿用了YOLOV3 的中心點、長寬、類別及置信度差方相加的損失計算方式;LPBox-GBox表示預測框向其他標注框偏移的損失計算值;LPBox-PBox表示預測框與其他預測框靠近的損失計算值,α、β用于平衡后兩者損失值的權(quán)重。
當預測框與其他標注框靠得太近時,使得預測框容易受非真實標注框影響,回歸出來的預測框同時包含不同標注框間的部分區(qū)域,出現(xiàn)檢測不準確的情況。因此LPBox-GBox表現(xiàn)為斥力作用,使得預測框不受其他標注框的干擾,其計算公式如下所示:

其中,P+表示預測框集合,BP表示候選框P所對應的預測框,表示除了真實標注框外具有最大IoU區(qū)域的標注框,IoG、Smoothln計算公式如下所示:

當不同標注框?qū)念A測框靠得太近時,在NMS 處理中容易篩選掉IoU值大于閾值的部分預測框,出現(xiàn)漏召回的問題,因此LPBox-PBox表示為斥力作用,將不同標注框?qū)念A測框分開,其計算公式如下:

其中,I表示取預測框間IoU值大于0 的值進行計算,ε為很小的常數(shù)。
本實驗平臺為戴爾服務器PowerEdge R730,操作系統(tǒng)Ubuntu 14.04,CPU Intel?Core i3 3220,內(nèi)存64 GB,GPU NVIDIA Tesla K40m×2,顯存12 GB×2。
3.2.1 數(shù)據(jù)集
實驗所選擇的數(shù)據(jù)集是MOT16 數(shù)據(jù)集[23]。該數(shù)據(jù)集標注的主要是移動中的目標,主要分為三種類別:第一是出現(xiàn)在視野中的移動或直立的行人,包括在自行車或滑板上的人,處于彎腰、深蹲、與小孩對話或撿東西狀態(tài)的行人;第二是包括像行人的目標(模特、出現(xiàn)人的圖片、反射的人影),不處于直立狀態(tài)的人(坐著或躺著的)和劃分為模糊目標(不同觀察者出現(xiàn)意見變化較大的);第三種類別標注所有的移動車輛、非機動車和其他存在潛在包含/遮擋關系的物體,其類別及示例標注如圖3 所示。在實驗開始之前,首先對MOT16 數(shù)據(jù)集提供的標注數(shù)據(jù)按照YOLOV3 數(shù)據(jù)格式進行調(diào)整計算,然后隨機獲取該實驗的訓練集和測試集數(shù)據(jù)。
3.2.2 實驗參數(shù)
本實驗選取的環(huán)境是Pytorch 框架,所用的模型是改進的YOLOV3 目標檢測算法。訓練時批量(batch-size)設置為16,圖像大小默認設置為416×416,輸入通道數(shù)為3,動量值(momentum)設置為0.9,學習率(learning_rate)設置為0.001。首先,將處理好的數(shù)據(jù)集先用YOLOV3 原模型進行目標檢測,得到一組檢測結(jié)果。然后,將聚類分析的結(jié)果應用到改進后的YOLOV3 模型中,并更新其損失函數(shù)后進行目標檢測,得到的檢測結(jié)果與YOLOV3 原模型進行實驗對比,觀察改進后的檢測模型針對多尺度且多姿態(tài)行人檢測中存在的問題優(yōu)化效果及性能。

Fig.3 Examples of MOT data set categories and labels圖3 MOT 數(shù)據(jù)集類別及標注示例
3.2.3 實驗結(jié)果
首先,針對行人檢測數(shù)據(jù)集利用K-means 算法進行聚類分析,得到適應于行人檢測數(shù)據(jù)集的候選框尺寸。在聚類過程中,將K-means 算法的K值設置為12,依據(jù)不同標注框值決定的距離度量方法進行分簇,經(jīng)過迭代后,得到數(shù)據(jù)集的候選框聚類結(jié)果。在這里選擇K=12,一是因為網(wǎng)絡結(jié)構(gòu)具有4 個尺度檢測層,而每個檢測層具有3 類候選框,從而在聚類分析時選擇劃分為12 類候選框。二是通過設定不同的K值進行聚類分析,發(fā)現(xiàn)相比于YOLOV3 檢測算法的原數(shù)據(jù)集設定K=9,在MOT16 數(shù)據(jù)集上設定K=12 時經(jīng)過迭代后其損失值較小,說明進行檢測算法前針對不同的數(shù)據(jù)集進行K-means 聚類分析的效果是有優(yōu)勢的,具有客觀性。之后,按照特征圖越大,感受野越小,對小目標相對敏感和特征圖越小,感受野越大,對大目標相對敏感的原則,將得到的候選框尺寸分別應用到網(wǎng)絡不同尺度檢測層中,其結(jié)果如表1 所示。
進入初產(chǎn)期的柚果樹座果率低,樹體營養(yǎng)過旺,容易促發(fā)夏梢萌發(fā)。如果沒有及時抹去夏芽,會導致梢果爭肥,引發(fā)落果。因此,控制夏芽有利于提高四季柚座果率。

Table 1 Candidate box size after clustering表1 聚類后候選框尺寸大小
從表1 中數(shù)據(jù)可以看出,相對104×104 和52×52特征圖層偏重于對數(shù)據(jù)集中小目標的檢測力度,而26×26,13×13 則兼顧中等或較大尺寸的物體檢測。通過結(jié)合不同細粒度特征,增強網(wǎng)絡對多尺度行人檢測的魯棒性。
在候選框聚類結(jié)果的基礎上,將表1 的候選框尺寸替換原來網(wǎng)絡層的候選框尺寸,替換后的網(wǎng)絡模型稱為YOLOV3_105。為了驗證改進后模型的性能,將YOLOV3 網(wǎng)絡模型,增加104×104 特征檢測層的YOLOV3_104 網(wǎng)絡模型和應用聚類得到的候選框尺寸的YOLOV3_105 網(wǎng)絡模型三者進行實驗對比,其在MOT16 數(shù)據(jù)集檢測結(jié)果AP(average precision)值如表2 所示。

Table 2 Comparison of detection results AP of different network models表2 不同網(wǎng)絡模型檢測結(jié)果AP 比較
從表2 中數(shù)據(jù)可以看出,相比YOLOV3 網(wǎng)絡模型,增加104×104 特征檢測層的YOLOV3_104 在該數(shù)據(jù)集上多尺度行人的檢測效果有明顯提高,但整體檢測平均準確率相對提高了0.004。而增加了特征檢測層同時應用聚類得到的候選框尺寸的YOLOV3_105 網(wǎng)絡,相對YOLOV3 網(wǎng)絡模型,在MOT16 數(shù)據(jù)集上不僅提高了多尺度和多姿態(tài)行人的檢測效果,同時對該數(shù)據(jù)集的其他標注類別檢測效果也有所提高,因此整體檢測平均準確率相對提高了約0.07。由此可以看出,改進后的YOLOV3_105網(wǎng)絡模型對多尺度和多姿態(tài)的行人檢測效果優(yōu)于YOLOV3,該網(wǎng)絡模型通過利用殘差思想和上采樣操作融合了多級特征圖,讓不同細粒度的特征參與行人檢測,從而解決了該數(shù)據(jù)集中行人目標多尺度和多姿態(tài)的問題,提高了目標的檢測效果。
為了驗證應用斥力損失的損失函數(shù)能否有效解決數(shù)據(jù)集中出現(xiàn)的人與周圍目標物體互相遮擋的問題,在YOLOV3_105 網(wǎng)絡基礎上,添加斥力損失更新其損失函數(shù),將該網(wǎng)絡模型稱為YOLOV3_106,其在MOT16 數(shù)據(jù)集檢測效果如表3 所示。
數(shù)據(jù)集的8、9、10 類別代表被遮擋的類別,代表數(shù)據(jù)集中部分被遮擋的目標,相比于表2 的YOLOV3檢測模型進行數(shù)據(jù)對比,可以看出,相比于普通遮擋,引入斥力損失函數(shù)的YOLOV3_106 模型的檢測結(jié)果對比YOLOV3 模型的檢測結(jié)果并沒有體現(xiàn)出優(yōu)勢,但對于嚴重遮擋情況(occluder full)來說,YOLOV3_106 模型相比于YOLOV3 模型檢測準確率提高了大約0.12。并且從表中數(shù)據(jù)可以看出,增加斥力作用的損失函數(shù),整體提高了數(shù)據(jù)集的檢測準確率,相比YOLOV3 網(wǎng)絡模型,其平均準確率提高了大約0.1,說明在一定程度上緩解了數(shù)據(jù)集因目標間遮擋出現(xiàn)的誤檢、漏檢或漏召回問題,提高了網(wǎng)絡模型的檢測效果。

Table 3 Detection results AP of YOLOV3_106 network表3 YOLOV3_106 網(wǎng)絡檢測結(jié)果AP
為了進一步比較YOLOV3網(wǎng)絡模型及YOLOV3_104、YOLOV3_105、YOLOV3_106 網(wǎng)絡模型目標檢測性能,截取訓練過程中l(wèi)oss 值變化情況,其loss 值變化如圖4 所示。

Fig.4 Change of loss value of different network models圖4 不同網(wǎng)絡模型loss值變化
同時,將YOLOV3、YOLOV3_104、YOLOV3_105及YOLOV3_106 網(wǎng)絡模型的部分目標檢測圖片的預測框在圖中標注出來,進行可視化展示比較。為了驗證各個模型的性能,首先將數(shù)據(jù)集中圖片真實邊界框的值進行計算,并在圖中進行標注,得到標注好真實框的數(shù)據(jù)集。同時,利用訓練好的YOLOV3、YOLOV3_104、YOLOV3_105 和YOLOV3_106 模型對數(shù)據(jù)集進行檢測,得到標注好預測框的數(shù)據(jù)集,其部分檢測結(jié)果如圖5~圖8 所示。其中,圖5、圖7 表示數(shù)據(jù)集標注的真實邊界框的圖像,圖6、圖8 表示不同網(wǎng)絡模型標注預測框的圖像,其中圖像中標注目標的邊框的顏色是隨機產(chǎn)生的,同一圖像中的不同顏色代表數(shù)據(jù)集中的不同類別。

Fig.5 Real box example 1圖5 真實框示例1

Fig.6 Example 1 detection results圖6 示例1 檢測結(jié)果

Fig.7 Real box example 2圖7 真實框示例2

Fig.8 Example 2 detection results圖8 示例2 檢測結(jié)果
另外,YOLOV3_104 是在YOLOV3 模型基礎上添加104×104 尺度檢測層,其對小目標檢測比較敏感,但對行人檢測數(shù)據(jù)集并不完全適應,因此在YOLOV3_104 基礎上進行邊界框聚類分析后的網(wǎng)絡模型YOLOV3_105 和YOLOV3_106 對行人檢測數(shù)據(jù)集具有很好的魯棒性,能夠準確檢測出圖像中的行人及遮擋目標。從圖6 中可以看出,YOLOV3_106網(wǎng)絡模型能夠檢測出在YOLOV3 網(wǎng)絡模型中未被檢測到的遮擋的目標(圖中虛線圈出的目標),因為引入的斥力損失函數(shù),在保證預測框向目標的真實框靠近的同時,還增大了預測框與其周圍非負責框的距離,尤其當出現(xiàn)遮擋情況時,使得兩遮擋目標的預測框呈現(xiàn)盡可能遠的趨勢,從而降低了模型的誤檢和漏檢率。雖然在圖7 中沒有標注遮擋嚴重的目標(虛線標注出的部分),但仍被訓練好的網(wǎng)絡模型檢測并標注,結(jié)果如圖8 所示,說明YOLOV3_105 和YOLOV3_106 具有很好的網(wǎng)絡學習能力。
針對行人目標檢測存在的多尺度和多姿態(tài)的問題,在YOLOV3 算法的基礎上,通過添加104×104 尺度檢測層增加網(wǎng)絡對小目標檢測的敏感性。之后,通過K-means 聚類分析得到適用于行人目標檢測數(shù)據(jù)集的邊界框尺寸,用于目標檢測以提高其網(wǎng)絡性能。同時,通過利用邊界框間的斥力作用更新模型的損失函數(shù),改善目標遮擋影響以提高檢測效果。實驗結(jié)果證明,改進的YOLOV3_105 和YOLOV3_106 網(wǎng)絡模型在行人檢測數(shù)據(jù)集上的準確率分別為78.10%和80.53%,同YOLOV3 網(wǎng)絡模型比較,具有較好的檢測性能和魯棒性,證明了方法的有效性。