張志剛,游安清
(中國工程物理研究院應(yīng)用電子學(xué)研究所,四川 綿陽 621900)
智慧交通[1]和自動駕駛成為了近年來的研究熱點(diǎn),有著良好的應(yīng)用前景。其面臨的一個挑戰(zhàn)是獲得道路上車輛的三維屬性,即得到車輛的三維姿態(tài)和形狀。目前領(lǐng)先的3D對象理解技術(shù)很少依賴常規(guī)的相機(jī),而是采用高精度的激光雷達(dá)傳感器[2],但因自身較高的成本,阻礙了其進(jìn)一步的推廣。因此通過普通攝像頭進(jìn)行車輛的3D理解仍是一種常規(guī)且可行的方法,吸引了計(jì)算機(jī)視覺領(lǐng)域的大量研究[3-4]。
通過普通相機(jī)獲得物體的3D姿態(tài),一般采用PnP[5](Perspective-n-Point)算法求解,即在已知多個3D點(diǎn)和2D像素點(diǎn)對的映射關(guān)系時求解物體和相機(jī)之間的姿態(tài)。因此通過普通攝像頭獲取車輛的3D姿態(tài)需要檢測圖像中車輛上的關(guān)鍵點(diǎn)坐標(biāo)。同時獲取到的車輛關(guān)鍵點(diǎn)還可用于自動標(biāo)定道路監(jiān)控相機(jī)[6]、計(jì)算車輛姿態(tài)、對車輛表面分塊獲得語義分割信息等。
常見的關(guān)鍵點(diǎn)檢測任務(wù)有人體姿態(tài)估計(jì)、人臉Landmark、手勢識別等,這些關(guān)鍵點(diǎn)通常是人為設(shè)計(jì)的一些具有語義信息的特征點(diǎn)。若使用傳統(tǒng)的視覺算法識別這類高語義信息的點(diǎn)將面臨巨大挑戰(zhàn),而近年來隨著深度學(xué)習(xí)、CNN[7]算法的進(jìn)步,能夠很好地識別這些關(guān)鍵點(diǎn)。關(guān)鍵點(diǎn)檢測使用VGG[8]、GoogLeNet[9]、ResNet[10]等常見的分類網(wǎng)絡(luò)作為特征提取器,并在網(wǎng)絡(luò)的頭部去回歸關(guān)鍵點(diǎn)的數(shù)值坐標(biāo)。人臉可視為剛體,圖像比較簡單,因此人臉關(guān)鍵點(diǎn)檢測通常采用全連接層直接回歸坐標(biāo)點(diǎn)[11-12]。人體為非剛體,姿態(tài)變化多樣,通常利用預(yù)測高斯熱圖方式檢測人體關(guān)鍵點(diǎn),認(rèn)為預(yù)測高斯熱圖上響應(yīng)值越大的地方,存在關(guān)鍵點(diǎn)的概率也越大,因此找出高斯熱圖上峰值對應(yīng)的索引即為關(guān)鍵點(diǎn)坐標(biāo)。Hourglasses[13]、OpenPose[14]、CPN[15]、MSPN[16],這些工作通過研究堆疊單個或多個U形結(jié)構(gòu)[17]多級監(jiān)督來預(yù)測高斯熱圖。而文獻(xiàn)[18-19]這些工作熱衷于研究高斯熱圖和關(guān)鍵點(diǎn)坐標(biāo)之間更為精確的編解碼方式。
然而針對車輛關(guān)鍵點(diǎn)檢測已公開的研究工作很少,因此借鑒人體姿態(tài)估計(jì)的神經(jīng)網(wǎng)絡(luò)算法,本文設(shè)計(jì)一種基于CPN[15]網(wǎng)絡(luò)的車輛關(guān)鍵點(diǎn)檢測模型,記為VKPNet(Vehicle Key Points Network)。VKPNet采用自上而下的方式,首先在完整的圖像中使用車輛檢測模型(如Faster R-CNN[20])得到車輛的包圍框,然后將檢測到的車輛小圖輸入車輛關(guān)鍵點(diǎn)檢測模型并輸出關(guān)鍵點(diǎn)的坐標(biāo)。
不同于人體姿態(tài)估計(jì)和人臉關(guān)鍵點(diǎn)檢測,在車輛關(guān)鍵點(diǎn)檢測任務(wù)中車輛為一個明顯的立體物,不能近似為一個平面看待,其單張照片中車輛背部的關(guān)鍵點(diǎn)不可見。因此需要模型在預(yù)測點(diǎn)坐標(biāo)的同時預(yù)測出每個點(diǎn)的可見性。VKPNet基于CPN[15]網(wǎng)絡(luò)實(shí)現(xiàn)一個預(yù)測車輛關(guān)鍵點(diǎn)坐標(biāo)和點(diǎn)可見性2個任務(wù)的網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)見圖1。CPN[15]網(wǎng)絡(luò)通過回歸熱力圖的方式預(yù)測關(guān)鍵點(diǎn)坐標(biāo),由GlobalNet和RefineNet這2個部分組成,VKPNet考慮模型速度因素,未利用CPN中的RefineNet部分。VKPNet有2個分支,分別預(yù)測車輛關(guān)鍵點(diǎn)的坐標(biāo)和可見性,分別對應(yīng)圖1中右側(cè)上下2個部分的輸出。網(wǎng)絡(luò)以ResNet[10]為主干網(wǎng)絡(luò),經(jīng)過4個階段,將輸入的車輛圖片下采樣32倍,分別記每個階段最后一層卷積對應(yīng)的特征圖為C2、C3、C4、C5。網(wǎng)絡(luò)的深層特征(C4、C5)擁有很強(qiáng)的全局語義信息,缺乏空間紋理信息,而淺層特征(C1、C2)具有強(qiáng)空間分辨率信息,缺少全局的語義信息。車輛關(guān)鍵點(diǎn)主要定義為具有很強(qiáng)局部紋理信息的點(diǎn),如多選擇車輛上的角點(diǎn)定義(車燈的4個角點(diǎn)、擋風(fēng)玻璃4個角點(diǎn)等),關(guān)鍵點(diǎn)的定位除了需要空間紋理信息,為區(qū)分每個點(diǎn)的屬性(左右車燈、車牌等),還需要具備很強(qiáng)的全局語義信息。因此預(yù)測關(guān)鍵點(diǎn)坐標(biāo)的分支需融合深層的全局語義信息和淺層的紋理信息。車輛上每個點(diǎn)的可見性取決于車輛和拍攝相機(jī)之間的姿態(tài)關(guān)系,與車輛的整體朝向有關(guān),這是一個對車輛圖片全局理解的信息,因此車輛關(guān)鍵點(diǎn)可見性分支依賴全局的語義信息的獲取,設(shè)計(jì)從ResNet[10]最底層的特征圖(C5)通過全局平均池化(Global Average Pooling, GAP)獲得一維特征向量,在后面緊跟一個全連接層對每個關(guān)鍵點(diǎn)做二分類預(yù)測,預(yù)測點(diǎn)的可見性。
圖1 車輛關(guān)鍵點(diǎn)檢測模型結(jié)構(gòu)
VKPNet使用FPN[21](特征金字塔)的形式構(gòu)建一個U型結(jié)構(gòu)融合深層語義信息和淺層空間分辨率信息。將深層低分辨率特征圖上采樣2倍保持和上一層特征圖相同大小,再同上一層的特征圖逐像素相加生成新的特征圖,緊接一層1×1卷積和一層3×3卷積生成該層對應(yīng)的熱力圖。從C5往C2依次上采樣最終生成熱力圖金字塔(見圖1)。熱力圖的監(jiān)督信號為以關(guān)鍵點(diǎn)坐標(biāo)為中心的高斯概率分布圖,且從低分辨率到高分辨率的熱力圖由粗及細(xì),高斯概率的方差由大變小,因?yàn)樵娇拷鹱铀攲拥臒崃D具備越多的空間分辨率信息,有能力學(xué)到更精確的關(guān)鍵點(diǎn)坐標(biāo)。金字塔最頂層的熱力圖學(xué)到了最精確的關(guān)鍵點(diǎn)坐標(biāo)信息,從這一層得到關(guān)鍵點(diǎn)坐標(biāo)。CPN中通過后處理尋找熱力圖響應(yīng)最大值的坐標(biāo)作為關(guān)鍵點(diǎn)坐標(biāo),VKPNet借鑒DSNT[22]的做法使用SoftArgmax端到端地對最頂層熱力圖(C2對應(yīng)的熱力圖)的坐標(biāo)按照概率密度積分求期望,求得期望即為對應(yīng)的關(guān)鍵點(diǎn)坐標(biāo),再乘上對應(yīng)尺度系數(shù)和偏移量輸出輸入圖下的關(guān)鍵點(diǎn)坐標(biāo),對坐標(biāo)進(jìn)行L2 Loss的監(jiān)督。端到端的形式避免了后處理,同時簡化流程,使得網(wǎng)絡(luò)學(xué)習(xí)目標(biāo)更加直接,學(xué)到更精確的點(diǎn)坐標(biāo),在DSNT中實(shí)驗(yàn)已證明SoftArgmax的優(yōu)點(diǎn)。考慮熱力圖學(xué)習(xí)的是一種概率分布,對剩余的C3、C4、C5對應(yīng)的熱力圖不使用L2損失監(jiān)督而是用JS散度損失監(jiān)督。見式(1),其中P、Q為2個概率分布,xi為第i個變量,KL(P‖Q)為概率分布P、Q之間的KL散度,JS(P1‖P2)為概率分布P1、P2之間的JS散度。
(1)
如圖1所示網(wǎng)絡(luò)的學(xué)習(xí)目標(biāo)有3個部分,即關(guān)鍵點(diǎn)可見性預(yù)測Fvisible(N×1的特征向量)、關(guān)鍵點(diǎn)坐標(biāo)預(yù)測Fcoord(N×2的特征向量)、關(guān)鍵點(diǎn)坐標(biāo)的熱力圖Fheatmap(C3、C4、C5對應(yīng)的熱力圖,大小為N×m×m),其中N為車輛上關(guān)鍵點(diǎn)的個數(shù),m表示熱力圖分辨率大小。Labelvisible、Labelcoord、Labelheatmap分別為對應(yīng)的監(jiān)督信號。Fheatmap的學(xué)習(xí)目的是加入多層監(jiān)督,由粗及細(xì)使最終C2對應(yīng)的熱力圖學(xué)習(xí)到一個更精確的高斯分布。車輛關(guān)鍵點(diǎn)可見性的損失記為Lvisible(見式(2)),可見性為二分類預(yù)測,為處理數(shù)據(jù)均衡問題選擇Focal Loss[21]進(jìn)行監(jiān)督。關(guān)鍵點(diǎn)的坐標(biāo)用L2損失函數(shù)監(jiān)督,記為Lcoord(見式(3))。熱力圖的損失用JS散度(見式(1))損失函數(shù)監(jiān)督,記為Lheatmap(見式(4))。對點(diǎn)坐標(biāo)和熱力圖用ohem[15]進(jìn)行難例挖掘??偟膿p失函數(shù)見式(5),其中α、β、γ為3個部分損失的權(quán)重。
Lvisible=focal_loss(Fvisible,Labelvisible)
(2)
Lcoord=ohem(L2(Fcoord,Labelcoord))
(3)
Lheatmap=ohem(JS(Fheatmap,Labelheatmap))
(4)
Loss=αLvisible+βLcoord+γLheatmap
(5)
按照Apollo3D[23]的方式選擇轎車和SUV車型,共定義了78個車輛關(guān)鍵點(diǎn)(可參考圖5)。訓(xùn)練關(guān)鍵點(diǎn)模型的數(shù)據(jù)共20萬張,包括Apollo3D開源的5萬張圖像和使用眾智平臺標(biāo)注的15萬張數(shù)據(jù),標(biāo)注的數(shù)據(jù)取自北京、武漢、重慶市的城市道路。
分析車輛圖片的長寬信息(見圖2)可知車輛圖片多為正方形形狀,以及權(quán)衡模型的推理速度與精度設(shè)置關(guān)鍵點(diǎn)檢測模型的輸入為256×256大小的RGB圖片。車輛原始圖片大小不一,在保持圖片原始長寬比的前提下,進(jìn)行縮放使得長邊變?yōu)?56,短邊方向?qū)ΨQ填充零也變?yōu)?56大小。
圖2 車輛圖片的形狀統(tǒng)計(jì)
車輛關(guān)鍵點(diǎn)檢測模型由深度學(xué)習(xí)框架PyTorch構(gòu)建,在6塊顯存為16 GB的2080Ti的GPU上經(jīng)20萬張的訓(xùn)練數(shù)據(jù)集訓(xùn)練600個周期得到。采用批訓(xùn)練大小為24進(jìn)行訓(xùn)練,選用了Adam優(yōu)化方法,初始學(xué)習(xí)率為0.002(記為LRinit),初始階段利用WarmUp[24]的策略學(xué)習(xí)率逐步線性上升到0.002,后續(xù)對學(xué)習(xí)率按余弦函數(shù)的形式下降(見式(6),其中LRinit為初始學(xué)習(xí)率,epoch為周期數(shù),總的訓(xùn)練周期數(shù)epochtotal=600,初始階段WarmUp的周期數(shù)epochwarmup=1),使大學(xué)習(xí)率維持較長時間,讓網(wǎng)絡(luò)收斂到一個較好結(jié)果。1.2節(jié)中3個部分損失的權(quán)重設(shè)置為α=32,β=1.5,γ=1。訓(xùn)練過程中的損失和學(xué)習(xí)率變化見圖3。1.1節(jié)中對C5、C4、C3對應(yīng)的熱力圖由粗及細(xì)的監(jiān)督的高斯分布方差分別設(shè)置為7、9、11。訓(xùn)練過程中對圖像進(jìn)行隨機(jī)縮放、裁剪、平移、透視變換,并加上隨機(jī)的高斯噪聲、運(yùn)動模糊、灰度變換等數(shù)據(jù)增強(qiáng)手段,提高模型的泛化能力。
圖3 訓(xùn)練過程中的損失和學(xué)習(xí)率變化
(6)
為了評價車輛關(guān)鍵點(diǎn)檢測模型的精度,構(gòu)建了一個包含1萬張圖片的測試集。測試集的構(gòu)建考慮和訓(xùn)練集同分布,包含了車輛關(guān)鍵點(diǎn)檢測場景下的各種車型數(shù)據(jù),各車型數(shù)據(jù)分布均衡,同時考慮涵蓋豐富的道路場景和由于相機(jī)與車輛的遠(yuǎn)近與天氣變化造成的車輛圖片大小外觀的變化。
車輛關(guān)鍵點(diǎn)檢測模型包含預(yù)測關(guān)鍵點(diǎn)的坐標(biāo)和可見性2個任務(wù)??梢娦灶A(yù)測是一個二分類問題,對該分類任務(wù)用在召回率(Recall)為0.95時的精確度(Precision)進(jìn)行評價,記為P@R_0.95,由于車輛圖片大小不一,對關(guān)鍵點(diǎn)坐標(biāo)采用歸一化的像素誤差評價,記為NME(Normalized Mean Error),歸一化像素誤差指將圖片按前面所述方法縮放到256×256大小下計(jì)算預(yù)測坐標(biāo)的平均像素誤差。車輛原圖下的預(yù)測坐標(biāo)像素誤差記為ME(Mean Error)。模型最終達(dá)到精度為關(guān)鍵點(diǎn)坐標(biāo)NME=1.57,可見性P@R_0.95=0.9660。模型最終達(dá)到了1%以內(nèi)的像素誤差,精度較高。訓(xùn)練過程中不同周期的模型精度變化見圖4。車輛關(guān)鍵點(diǎn)檢測的效果可視化見圖5,可以看到在訓(xùn)練到400個周期后網(wǎng)絡(luò)逐漸收斂,模型檢測車輛關(guān)鍵點(diǎn)坐標(biāo)較為精確。
圖4 不同訓(xùn)練周期模型的精度變化
圖5 車輛關(guān)鍵點(diǎn)坐標(biāo)預(yù)測可視化
除了最終的模型結(jié)果(實(shí)驗(yàn)1),本文還對比了其他可能的模型設(shè)計(jì)方式,對比結(jié)果見表1。2.1節(jié)中討論了車輛關(guān)鍵點(diǎn)檢測任務(wù)還需輸出每個點(diǎn)的可見性,實(shí)驗(yàn)只學(xué)習(xí)關(guān)鍵點(diǎn)坐標(biāo)(實(shí)驗(yàn)2),發(fā)現(xiàn)無可見性分支后關(guān)鍵點(diǎn)坐標(biāo)精度明顯下降(1.57 vs 1.62),證實(shí)可見性分支幫助網(wǎng)絡(luò)學(xué)到更多的全局信息,多任務(wù)學(xué)習(xí)對關(guān)鍵點(diǎn)坐標(biāo)檢測有幫助。對Fheatmap最終的模型采用JS散度以概率的形式進(jìn)行監(jiān)督學(xué)習(xí),實(shí)驗(yàn)3采用L2 Loss去監(jiān)督Fheatmap,發(fā)現(xiàn)采用的JS散度相比L2 Loss漲點(diǎn)明顯(1.67 vs 1.57),驗(yàn)證了以概率形式對高斯熱力圖監(jiān)督能夠?qū)W到一個更精確的結(jié)果。實(shí)驗(yàn)4對比實(shí)驗(yàn)1選擇采用后處理Argmax的方式從學(xué)習(xí)到的熱力圖中解碼關(guān)鍵點(diǎn)坐標(biāo),這是文獻(xiàn)[13-16]這些常見的關(guān)鍵點(diǎn)檢測任務(wù)中的解碼方法,相比之下采用的SoftArgmax(實(shí)驗(yàn)1)的做法明顯漲點(diǎn)(1.78 vs 1.57),分析其原因認(rèn)為SoftArgmax端到端地學(xué)習(xí)關(guān)鍵點(diǎn)坐標(biāo),無需后處理,學(xué)習(xí)目標(biāo)很明確,同時讓網(wǎng)絡(luò)學(xué)習(xí)到從下采樣4倍的熱力圖到輸入圖坐標(biāo)之間的量化誤差,避免使用手動調(diào)參補(bǔ)償量化誤差的方式。
表1 不同設(shè)計(jì)下的模型試驗(yàn)結(jié)果
除了基于CPN網(wǎng)絡(luò)設(shè)計(jì)車輛關(guān)鍵點(diǎn)檢測模型,本文橫向?qū)Ρ攘嘶谄渌餍械纳疃葘W(xué)習(xí)網(wǎng)絡(luò)的模型結(jié)構(gòu)設(shè)計(jì),結(jié)果見表1中的實(shí)驗(yàn)5~實(shí)驗(yàn)7。實(shí)驗(yàn)5用MSPN[16]作為車輛關(guān)鍵點(diǎn)坐標(biāo)檢測的分支,區(qū)別于CPN網(wǎng)絡(luò)MSPN堆疊4個U型結(jié)構(gòu),加入多級監(jiān)督學(xué)習(xí)使語義信息和空間分辨率信息得到更充分的融合。實(shí)驗(yàn)5對比實(shí)驗(yàn)1僅在NME上有較小提升,但MSPN堆疊了4個U型結(jié)構(gòu),網(wǎng)絡(luò)復(fù)雜,計(jì)算復(fù)雜度高。實(shí)驗(yàn)6采用當(dāng)下流行的HRNet[25]網(wǎng)絡(luò),在HRNet網(wǎng)絡(luò)的頭部同時回歸關(guān)鍵點(diǎn)坐標(biāo)的高斯熱力圖和點(diǎn)坐標(biāo)的二分類,點(diǎn)坐標(biāo)和可見性的損失函數(shù)保持和實(shí)驗(yàn)1一致。實(shí)驗(yàn)6在點(diǎn)坐標(biāo)和可見性預(yù)測上均明顯差于實(shí)驗(yàn)1,分析原因有可能為HRNet原本是個單任務(wù)網(wǎng)絡(luò),只回歸分類任務(wù)或者關(guān)鍵點(diǎn)坐標(biāo)任務(wù),而在網(wǎng)絡(luò)的頭部按照HRNet處理單獨(dú)任務(wù)的方式同時接上關(guān)鍵點(diǎn)可見性分類和坐標(biāo)檢測任務(wù),使得2個子任務(wù)在網(wǎng)絡(luò)上距離太近,網(wǎng)絡(luò)提取的語義信息和空間分辨率信息發(fā)生沖突,導(dǎo)致學(xué)到的結(jié)果不理想。實(shí)驗(yàn)7采用流行的語義分割網(wǎng)絡(luò)BiSeNet[26]去回歸關(guān)鍵點(diǎn)坐標(biāo)的熱力圖,相較實(shí)驗(yàn)1,點(diǎn)坐標(biāo)和可見性預(yù)測都不理想,猜測原因?yàn)锽iSeNet語義分割中的語義信息的提取和空間分辨率信息在車輛關(guān)鍵點(diǎn)檢測任務(wù)上不協(xié)調(diào),兩者的融合方式不一致。因此綜合考慮計(jì)算復(fù)雜度和模型精度,VKPNet均優(yōu)于橫向?qū)Ρ鹊钠渌餍芯W(wǎng)絡(luò)設(shè)計(jì)。
VKPNet在20萬張訓(xùn)練數(shù)據(jù)上訓(xùn)練得到的模型在2080Ti的GPU上,輸入圖片大小為256×256,批大小為128時達(dá)到600 fps的運(yùn)行速度。而在智慧交通系統(tǒng)中還有車輛檢測、車輛細(xì)分類、車輛重識別、車輛跟蹤等多個任務(wù)需要同時運(yùn)行,智慧交通系統(tǒng)的整體運(yùn)行速度需達(dá)到30 fps以上。600 fps(批大小為128)的車輛關(guān)鍵點(diǎn)檢測模型速度達(dá)不到實(shí)際落地的需求。因此需對當(dāng)前車輛關(guān)鍵點(diǎn)檢測模型進(jìn)行提速。
分析車輛關(guān)鍵點(diǎn)檢測模型運(yùn)行時每一個操作符的時間消耗,考慮對車輛關(guān)鍵點(diǎn)檢測模型進(jìn)行剪枝和量化來提速。采取如下措施對網(wǎng)絡(luò)進(jìn)行剪枝操作:1)使用更小的主干網(wǎng)絡(luò)(ResNet50改為ResNet18-half);2)縮小輸入大小(256×256改為192×192);3)縮小ResNet第一層卷積核的大小(7×7改為3×3);4)將CPN的U型結(jié)構(gòu)卷積層的通道數(shù)減少一半。
對剪枝后的關(guān)鍵點(diǎn)檢測網(wǎng)絡(luò)重新訓(xùn)練得到新的模型,繼續(xù)對新模型使用英偉達(dá)公司的TensorRT進(jìn)行量化,將模型中的float32浮點(diǎn)運(yùn)算變?yōu)閕nt8整形運(yùn)算得到最終提速后的小模型。經(jīng)測試提速后小模型達(dá)到7543 fps的速度,提速12倍,達(dá)到智慧交通中實(shí)時性檢測的需要。同時小模型精度為NME=1.79,P@R_0.95=0.9490,對比表1中實(shí)驗(yàn)1精度下降,但精度仍較高,滿足實(shí)際應(yīng)用需求。
對測試集中每張圖片的NME進(jìn)行倒序排序,挑選出像素誤差較大的圖片,觀察到精度差的這些圖片中很大一部分情況是同一張圖片中會出現(xiàn)多個車輛,如圖6中多個車輛互相遮擋。這是由于VKPNet關(guān)鍵點(diǎn)檢測算法是自上而下,首先車輛目標(biāo)檢測器檢測到車輛的包圍框,在車輛擁擠的場景下,一個檢測框內(nèi)會有多個車輛出現(xiàn),而車輛關(guān)鍵點(diǎn)檢測模型的輸入是假設(shè)只有單個車輛的小圖,此時觀察圖7模型預(yù)測的熱力圖,發(fā)現(xiàn)對于有多個車輛的輸入圖片,模型預(yù)測的熱力圖在多個車輛的相同關(guān)鍵點(diǎn)位置上都有響應(yīng),出現(xiàn)多峰現(xiàn)象,模型無法將注意力集中到單個車輛上,即無法區(qū)分主體車,因此在每個車輛上都有了響應(yīng),造成關(guān)鍵點(diǎn)檢測精度下降。
圖6 單張車輛檢測框中有多個車輛
圖7 車輛遮擋時的熱力圖響應(yīng)
遮擋場景下關(guān)鍵點(diǎn)檢測模型無法區(qū)分主體車輛的情況后續(xù)可以考慮從以下方法探索解決:
1)數(shù)據(jù)增廣。訓(xùn)練時加大這種單車輛中多個車輛的數(shù)據(jù)比例,比如對正常車輛圖片進(jìn)行貼圖,讓小車遮擋主體車,讓網(wǎng)絡(luò)學(xué)習(xí)把注意力集中在單個主體車輛上,能夠區(qū)分主體車。
2)引入注意力機(jī)制。對熱力圖上主體車輛對應(yīng)的區(qū)域Loss進(jìn)行加強(qiáng),注意力可以考慮采用主體車輛的分割mask來獲得。
本文基于CPN網(wǎng)絡(luò)提出了一個簡單通用的車輛關(guān)鍵點(diǎn)檢測網(wǎng)絡(luò),在20萬張的訓(xùn)練集上訓(xùn)練得到的模型實(shí)現(xiàn)關(guān)鍵點(diǎn)坐標(biāo)歸一化像素誤差在1%以內(nèi),可見性預(yù)測召回率和精確率均達(dá)到0.95的水平,模型精度較高。同時驗(yàn)證了對熱力圖采用JS散度約束比L2 Loss能夠?qū)W到更精確的高斯熱力圖,SoftArgmax端到端的方式解碼關(guān)鍵點(diǎn)坐標(biāo)要明顯優(yōu)于Argmax方式。橫向?qū)Ρ绕渌餍械纳疃葘W(xué)習(xí)網(wǎng)絡(luò)驗(yàn)證了提出的模型的高精度。并對實(shí)際落地的車輛關(guān)鍵點(diǎn)檢測模型進(jìn)行剪枝、量化提速達(dá)到了實(shí)際應(yīng)用時的實(shí)時性需要。最后分析這種自上而下的車輛關(guān)鍵點(diǎn)檢測網(wǎng)絡(luò)對于車輛遮擋的情況難以處理,原因?yàn)樵谝粋€檢測框內(nèi)有多個車輛時,模型無法區(qū)分主體車輛,檢測關(guān)鍵點(diǎn)的高斯熱力圖會出現(xiàn)多峰的情況,探討了以后解決該問題可能的方案。