張培培 呂震宇
摘要: 隨著深度學(xué)習(xí)框架的發(fā)展,新的目標(biāo)檢測算法也不斷被提出,如一階段、二階段檢測模型等,它們很好地提高了檢測速度、解決了不同尺度目標(biāo)檢測的問題,但對于交疊、遮擋等問題,仍沒能很好地解決。造成該問題的原因之一就在于模型訓(xùn)練期間,標(biāo)簽分配工作沒有做好。針對該問題,提出基于全局信息的目標(biāo)檢測標(biāo)簽分配方法,該方法在模型訓(xùn)練階段,利用指派方法,根據(jù)損失函數(shù),建立全局最優(yōu)的標(biāo)簽分配數(shù)學(xué)模型,給出了該模型與其他目標(biāo)檢測模型的融合方式,以及該方法在目標(biāo)檢測過程中所起到的作用。將該模型與常規(guī)的目標(biāo)檢測模型相融合,進(jìn)行目標(biāo)檢測,實(shí)驗(yàn)結(jié)果表明,在有交疊、遮擋等復(fù)雜檢測場景下,融合該方法的檢測模型,其精確率均優(yōu)于沒有使用該方法的模型。
關(guān)鍵詞:
目標(biāo)檢測;標(biāo)簽分配;指派模型;深度學(xué)習(xí)
DOI:10.15938/j.jhust.2022.04.005
中圖分類號(hào): TP391.41;TP18
文獻(xiàn)標(biāo)志碼: A
文章編號(hào): 1007-2683(2022)04-0032-07
Target Detection Label Assignment Method Based on Global Information
ZHANG Pei-pei,L? Zhen-yu
(College of Management , North China University of Science and Technology, Tangshan 063000, China)
Abstract:With the development of deep learning framework, new object detection algorithms have also been proposed, such as first-stage and two-stage detection models, which have improved the detection speed and solved the problem of object detection at different scales, but they have not yet been well solved for overlapping, occlusion and other issues. One of the reasons for this problem is that during model training, label assignment is not done well. Aiming at this problem, this paper proposes a target detection label allocation method based on global information, which uses the assignment method to establish a global optimal label allocation mathematical model based on the loss function in the model training stage, and gives the fusion mode of the model with other object detection models, and the role played by the method in the process of object detection. The experimental results show that the detection model of the fusion method is better than that of the model that does not use the method under the complex detection scenarios such as overlapping and occlusion.
Keywords:object detection; label assignment; assign the model; deep learning
0引言
目標(biāo)檢測是機(jī)器視覺領(lǐng)域較熱門的研究,其任務(wù)是在圖像中檢測到物體,并用框?qū)⒃撐矬w框上,給出物體類別。人頭檢測是目標(biāo)檢測常用的情形之一,一般會(huì)用于基于靜態(tài)圖像的人數(shù)統(tǒng)計(jì)和基于動(dòng)態(tài)視頻的人流量統(tǒng)計(jì)中,因視頻或圖像中人頭尺度大小不一、交疊、遮擋等各種復(fù)雜情形存在,已成為目標(biāo)檢測的熱點(diǎn)和難點(diǎn)。
相比較傳統(tǒng)的機(jī)器學(xué)習(xí)算法,基于深度學(xué)習(xí)的檢測框架,大大提高了目標(biāo)檢測性能。目前主流的基于深度學(xué)習(xí)的目標(biāo)檢測方法主要有兩類:兩階段檢測方法和一階段檢測方法。所謂兩階段檢測方法是將目標(biāo)檢測分為兩個(gè)階段來做,首先找到檢測目標(biāo)的潛在邊界框,再通過分類的方式去判斷邊界框內(nèi)目標(biāo)所屬類別,從而判斷該邊界框是否真的包含目標(biāo)[1-3],該方法的檢測準(zhǔn)確度比較高,但其檢測速度卻是較慢的,主流算法有R-CNN、Fast-RCNN和Faster-RCNN等。一階段檢測方法是由Joseph Redmon于2016年提出來的,該方法取名為You Only Look Once(YOLO)[4-5],顧名思義,只需要經(jīng)過一個(gè)階段就可以實(shí)現(xiàn)目標(biāo)檢測的功能,該方法將目標(biāo)檢測問題轉(zhuǎn)化為回歸問題,僅經(jīng)過一個(gè)神經(jīng)網(wǎng)絡(luò),大大提高了檢測速度。2018年,Joseph Redmon又提出了YOLO v3,該方法采用多尺度融合的方式做檢測[6-9],較好的實(shí)現(xiàn)了多尺度物體的檢測,也就是小目標(biāo)檢測的目標(biāo)。一階段檢測方法主要有YOLOv1-v5、RetinaNet 、CornerNet、FCOS等。
目標(biāo)檢測算法一直都在尋求快速、準(zhǔn)確的檢測方法,先是實(shí)現(xiàn)了快速檢測的目標(biāo),而后又實(shí)現(xiàn)了小目標(biāo)檢測的目標(biāo),但始終沒能對于物體交疊的情形下存在漏檢、誤檢等問題,提出較好的解決方案。造成該問題的原因就是標(biāo)簽分配沒有做好。雖然兩種方法的檢測機(jī)制不同,但都面臨著標(biāo)簽分配不準(zhǔn)的難題,甚至是需要手動(dòng)的方式進(jìn)行修改,但如果標(biāo)簽分配沒有做好,就會(huì)影響檢測效果,就會(huì)出現(xiàn)漏檢、誤檢的情形,基于此,近兩年很多標(biāo)簽分配的方法被提出。
1標(biāo)簽分配方法
所謂標(biāo)簽分配就是指檢測器在訓(xùn)練階段區(qū)分正負(fù)樣本的過程,也就是給每個(gè)特征圖的每個(gè)位置分配一個(gè)合適的學(xué)習(xí)目標(biāo)的過程。標(biāo)簽分配主要應(yīng)用于有錨框的應(yīng)用場景和無錨框的應(yīng)用場景,具體流程如下:
1.1有錨框機(jī)制
有錨框機(jī)制(anchor-based)方法在訓(xùn)練前,利用聚類算法生成一些基礎(chǔ)錨框(anchor-box),然后根據(jù)錨框和目標(biāo)框的交并比(intersection-over-union, IoU)來確定正負(fù)樣本[10-12]。如式1所示,當(dāng)IoU大于閾值時(shí),該錨框的真值為前景,低于閾值時(shí),該錨框的真值為背景。使用有錨框機(jī)制的目標(biāo)檢測算法既包含一階段檢測也包含二階段的檢測,如二階段的檢測方法Faster-RCNN和一階段檢測方法YOLO v3等。
1.2無錨框機(jī)制
無錨框機(jī)制(anchor-free)方法與有錨框機(jī)制不同,不需要預(yù)設(shè)錨框,它是基于點(diǎn)來判斷該點(diǎn)的最優(yōu)錨框,訓(xùn)練過程中自生成錨框,但無錨框機(jī)制的標(biāo)簽分配仍需將真值指派給某組角點(diǎn)。其主要方法是根據(jù)上、下、左、右4個(gè)極值點(diǎn),也就是角點(diǎn)(corner-point)來預(yù)測目標(biāo)的幾何中點(diǎn),再用該幾何中心點(diǎn)計(jì)算到目標(biāo)中心點(diǎn)的距離,大于閾值時(shí),4個(gè)角點(diǎn)的真值為一組真目標(biāo)框,低于閾值時(shí),4個(gè)角點(diǎn)的真值為一組假目標(biāo)框[13-14]。使用無錨框機(jī)制的目標(biāo)檢測算法主要有FCOS等。
1.3標(biāo)簽分配存在的問題
無論是有錨框機(jī)制還是無錨框機(jī)制,它們都是對各種大小、形狀和類別的對象采用非全局的靜態(tài)分配標(biāo)準(zhǔn)(如區(qū)域偏移閾值或IoU閾值)來實(shí)現(xiàn)標(biāo)簽分配的,這種簡單的閾值處理方式,就會(huì)造成每個(gè)真值對應(yīng)多個(gè)錨框或多個(gè)角點(diǎn)的問題,或者某些真值沒有被分配錨框或角點(diǎn)的情形。當(dāng)遇到兩個(gè)交疊目標(biāo)時(shí),就會(huì)容易陷入次優(yōu)情況[15-17],出現(xiàn)漏檢或誤檢的情形。針對靜態(tài)分配的問題,Zhang [18]等提出的ATSS方法利用概率統(tǒng)計(jì)的方法為每個(gè)真值生成不同的閾值,借助動(dòng)態(tài)閾值,提高了真值與錨框的匹配度。但該方法只是基于每個(gè)真值而局部產(chǎn)生的最優(yōu)匹配方法,沒有全局性的考慮,容易出現(xiàn)一個(gè)錨框或角點(diǎn)對應(yīng)多個(gè)真值的情形,在該情形下,對其分配任何一個(gè)標(biāo)簽都可能對網(wǎng)絡(luò)學(xué)習(xí)產(chǎn)生負(fù)面影響。2021年,Ge等[19]提出了OTA方法,利用運(yùn)輸模型實(shí)現(xiàn)了標(biāo)簽的全局最優(yōu)匹配,該方法利用Sinkhorn-Knopp算法計(jì)算最優(yōu)的匹配方案,避免出現(xiàn)一個(gè)錨
框或角點(diǎn)對應(yīng)多個(gè)真值的情形,但該算法需知道每個(gè)真值所應(yīng)提供正樣本的數(shù)量k,雖然利用每個(gè)真值擁有錨框的IoU之和來動(dòng)態(tài)確定k的取值,但用來進(jìn)行IoU相加的錨框個(gè)數(shù)是需手動(dòng)設(shè)定,相加個(gè)數(shù)大則k值大,相加個(gè)數(shù)少則k值小,作者在COCO數(shù)據(jù)集中多次實(shí)驗(yàn)之后將之設(shè)定為20,但在教室人頭檢測這樣單類別小目標(biāo)檢測的數(shù)據(jù)集中,20個(gè)錨框相加動(dòng)態(tài)獲得的k值卻并不能獲得好的檢測效果。另外,為了加快算法的訓(xùn)練速度,OTA算法在損失函數(shù)上額外增加一個(gè)常數(shù)作為懲罰項(xiàng),對不在一定范圍內(nèi)的預(yù)測框不進(jìn)行匹配,但范圍大小的設(shè)定又是一個(gè)超參。
針對這些問題,提出基于全局信息的標(biāo)簽分配方法,該方法利用0-1指派模型直接生成1對1匹配,省去了動(dòng)態(tài)設(shè)定k值的操作,另外,對于0-1問題的求解采用最大最小選擇法的計(jì)算方法,大大簡化了計(jì)算過程,加快了訓(xùn)練速度,不需額外設(shè)定懲罰項(xiàng)來提高訓(xùn)練速度。
2基于全局信息的標(biāo)簽分配方法
指派模型將各種不同的資源分派給各種不同的用途,以尋求一種最優(yōu)的分配方案。本文利用指派模型,提出全局最優(yōu)標(biāo)簽分配模型(global optimal label assignment model,GOLA)。
1.1數(shù)學(xué)模型
2.2損失函數(shù)
2.3最大最小選擇法
最大最小理論是馮諾依曼在兩人零和博弈中提出的最優(yōu)選擇策略,在這里用來作為真值選錨的全局最優(yōu)選擇法。如圖2所示,該方法從全局出發(fā),每次利用最大最小選擇理論來進(jìn)行選擇,直到最后只剩下2×1或2×2矩陣的時(shí)候,再選擇最小值作為最后的選擇方案。整體來說,該方法具有全局最優(yōu)性和執(zhí)行效率高的特點(diǎn)。
2.4與檢測模型的融合
2.5GOLA模型的作用
3實(shí)驗(yàn)結(jié)果
將GOLA與YOLOv3相融合得到新的檢測模型GOLA_YOLO,將GOLA與FCOS相融合,形成新的檢測模型GOLA_FCOS,本文對GOLA_YOLO、YOLO v3、GOLA_FCOS和FCOS以及OTA這五個(gè)模型進(jìn)行檢測比較。
本實(shí)驗(yàn)的訓(xùn)練環(huán)境均為CentOS 7操作系統(tǒng),Keras框架,CPU為 Intel(R) Core(TM) i5-8250U,GPU為NVIDIA GeForce RTX3060,軟件環(huán)境為CUDA11.1、CuDNN8.0、Python3.6。輸入圖像統(tǒng)一縮放為 512×512的大小。初始參數(shù)設(shè)置為:學(xué)習(xí)率為1×10-4,Batch size為16。
本實(shí)驗(yàn)收集高校不同水平拍攝角度的學(xué)生上課照片作為訓(xùn)練集和測試集。照片數(shù)量共計(jì)11974張,有70%的照片為訓(xùn)練集,共計(jì)8382張,有30%的照片為測試集,共計(jì)3592張,水平拍攝角度分為正面拍攝和背面拍攝,為同一教室同一時(shí)間不同角度的拍攝結(jié)果,正面和背面拍攝照片數(shù)量是相等的。每張照片有若干人頭,共計(jì)572052個(gè)人頭,同樣正面拍攝人頭數(shù)量與背面拍攝人頭數(shù)量是相等的,具體樣本分配情況如表1所示。
3.2訓(xùn)練模型
運(yùn)行5個(gè)檢測模型,其損失函數(shù)變化曲線如圖5所示,發(fā)現(xiàn)這5個(gè)檢測模型的收斂變化趨勢相差不多。
3.3測試模型
實(shí)驗(yàn)對不同的標(biāo)簽分配方法進(jìn)行了精度比較,首先結(jié)合教室場景下頭部檢測的特點(diǎn)設(shè)計(jì)了人頭檢測準(zhǔn)確率綜合評價(jià)指標(biāo)AP以及誤報(bào)率綜合指標(biāo)AR:人頭框選成功即為準(zhǔn)確,背景取誤框即為誤報(bào),比如所有測試樣本集中共100人,實(shí)際有效框選90人,誤框選背景區(qū)域20個(gè),則準(zhǔn)確率AP為90%,誤報(bào)率為20%。同時(shí)為更好地分析問題,設(shè)計(jì)AP10、AP10x、AP20和AP20x 4個(gè)準(zhǔn)確率特殊指標(biāo),分別表示真實(shí)場景面積小于10×10無遮擋,真實(shí)場景面積小于10×10有遮擋、真實(shí)場景面積小于20×20無遮擋以及真實(shí)場景面積小于20×20有遮擋的4種容易出錯(cuò)的情況。綜合結(jié)果如表2所示。GOLA_YOLO的準(zhǔn)確率和誤報(bào)率均大于其他標(biāo)簽分配的檢測精度。
3.4具體照片檢測結(jié)果分析
在測試集中,取正、背面各一張人頭密集的照片作為案例,正面人頭共計(jì)77,背面人頭共計(jì)64,采用不同方法、不同角度進(jìn)行檢測,各方法的檢測結(jié)果如圖6、圖7所示,其中圓形框?yàn)槁z、虛線矩形框?yàn)檎`檢,實(shí)線矩形框?yàn)檎_檢測的情況,其漏檢、誤檢結(jié)果如表3所示,結(jié)果表明在有交疊、遮擋等復(fù)雜檢測情形下,無論是正面拍攝還是背面拍攝,使用GOLA方法的檢測效果均相對較好。
GOLA全局標(biāo)簽匹配能夠顯著提升模型檢測精度,測試結(jié)果表明,在教室人頭檢測場景下,GOLA加持的YOLOv3準(zhǔn)確率提升了11.73%,誤報(bào)降低10.1%。在教室學(xué)生檢測這樣一個(gè)包含頭部交疊、大小差異巨大的復(fù)雜檢測場景中,使用全局標(biāo)簽匹配能夠可以提高其檢測精度,更好地避免誤檢和漏檢的情形出現(xiàn)。GOLA模型與YOLO v3結(jié)合后與OTA相比較,檢測精度不相上下。數(shù)據(jù)表明GOLA模型具有很強(qiáng)的實(shí)踐推廣價(jià)值,不僅教室這樣的人頭檢測場景,其他場合涉及人頭交疊、遮擋等復(fù)雜檢測場景,都可以參考該模型。如圖8所示,我們利用GOLA與YOLOv3結(jié)合的模型對室外圖片進(jìn)行了人頭檢測,場景更加隨機(jī),具有更多交疊的情形,結(jié)果顯示模型具有良好的泛化性能。但模型對于視頻檢測中的極小目標(biāo)交疊情況還存在漏檢和誤檢情況,后續(xù)需要對模型做進(jìn)一步地改進(jìn)。
4結(jié)論
針對目標(biāo)檢測中存在的因?yàn)檎趽醵z的情形,提出了全局最優(yōu)標(biāo)簽分配模型——GOLA模型。該模型解決了標(biāo)簽分配中一個(gè)錨框或角點(diǎn)對應(yīng)多個(gè)真值的問題,同時(shí),也解決了OTA等全局標(biāo)簽分配方法超參依賴的問題。在模型訓(xùn)練階段,將GOLA模型與其他目標(biāo)檢測模型相融合,建立全局最優(yōu)的標(biāo)簽分配策略,在教室人頭檢測這一交疊、遮擋等復(fù)雜場景的目標(biāo)檢測中,對正面和背面人頭進(jìn)行檢測,實(shí)驗(yàn)結(jié)果表明,將GOLA與其他目標(biāo)檢測模型相融合,能夠顯著提升模型的檢測精度,具有很強(qiáng)的實(shí)踐推廣價(jià)值。
參 考 文 獻(xiàn):
[1]REN S, HE K, GIRSHICK R, et al. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6):1137.
[2]HE Kaiming, GEORGIA Gkioxari, PIOTR Dollar, et al. Mask R-CNN[C]// In Proceedings of the IEEE International Conference on Computer Vision, Venice, October 22-29,2017: 2980.
[3]ROSS Girshick. Fast R-cnn[C]// In Proceedings of the IEEE international Conference on Computer Vision, Santiago, December 7-13 ,2015: 1440.
[4]JOSEPH Redmon, SANTOSH Kumar Divvala, ROSS B. Girshick, et al. You Only Look Once: Unified, Real-Time Object Detection [C]// IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, ?June 27-30,2016: 779.
[5]LI Hengduo, WU Zuxuan, ZHU Chen, et al. Learning from Noisy Anchors for One-stage Object Detection[C]//In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, Seattle, June 13-19, 2020: 10585.
[6]JOSEPH Redmon, ALI Farhadi. Yolov3: An Incremental Improvement[C]//IEEE Conference on Computer Vision and Pattern Recognition, 2018: 89.
[7]DU Yuchuan, PAN Ning, XU Zihao, et al. Pavement Distress Detection and Classification based on YOLO Network[J]. International Journal of Pavement Engineering, 2020: 1.
[8]SHI Pengfei, JIANG Qigang, SHI Chao, et al. Oil Well Detection via Large-Scale and High-Resolution Remote Sensing Images Based on Improved YOLO v4[J]. Remote Sensing, 2021, 13(16): 3243.
[9]LEE Jeonghun, HWANG Kwang. YOLO with Adaptive Frame Control for Real-time Object Detection Applications[J]. Multimedia Tools and Applications, 2021: 1.
[10]KONG Tao, SUN Fuchun, LIU et al. FoveaBox: Beyound Anchor-based Object Detection[J]. IEEE Transactions on Image Processing, 2020(99): 7389.
[11]LIU Wei, DRAGOMIR Anguelov, DUMITRU Erhan, et al. SSD: Single Shot Multibox Detector[C]//In European Conference on Computer Vision,Netherlands, October 8-10, 2016:21.
[12]NEUBECK A, GOOL L J V. Efficient Non-Maximum Suppression[C]// International Conference on Pattern Recognition. IEEE Computer Society, Hong Kong, August 20-24,2006:649.
[13]ZHOU Xingyi, WANG Dequan, PHILIPP Krhenbühl. Bottom-Up Object Detection by Grouping Extreme and Center Points[C]//2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Long Beach, ?June 15-20, 2019:303.
[14]LAW H, DENG J. FCOS: Detecting Objects as Paired Keypoints[J]. International Journal of Computer Vision,2020(2):642.
[15]TSUNG Yilin, PRIYA Goyal, ROSS Girshick, et al. Focal Loss for Dense Object Detection[C]//In Proceedings of the IEEE International Conference on Computer Vision, Venice,October 22-29,2017: 2999.
[16]LIU Songtao, DI Huang. Receptive Field Block Net for Accurate and Fast Object Detection[C]//ECCV 2018: In Proceedings of the European Conference on Computer Vision, Munich, ?September 8-14, 2018: 404.
[17]LIU Songtao, HUANG Di ,WANG Yunhong . Adaptive NMS: Refining Pedestrian Detection in a Crowd[C]//2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Long Beach, ?June 15-20, 2019, 2019: 6452.
[18]ZHANG Shifeng, CHI Cheng, YAO Yongqiang, et al. Bridging the Gap Between Anchor-Based and Anchor-Free Detection via Adaptive Training Sample Selection.2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Seattle, June 13-19,2020:9756.
[19]GE Zheng, LIU Songtao, LI Zeming, et al. OTA: Optimal Transport Assignment for Object Detection [C]// 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Nashville, ?June 20-25,2021: 303.
(編輯:溫澤宇)