2020過的不容易,2021定個(gè)小目標(biāo)
1263
2022-05-30
基于YOLOv3_Resnet18的行人檢測
一、特征提取網(wǎng)絡(luò)Resnet18
行人檢測部分使用了目前主流目標(biāo)檢測算法YOLOv3,特征提取網(wǎng)絡(luò)由Darknet53轉(zhuǎn)變?yōu)榻?jīng)典的Resnet18。Resnet網(wǎng)絡(luò)的提出很好地解決了隨著網(wǎng)絡(luò)加深,訓(xùn)練集準(zhǔn)確率下降的問題,性能更為優(yōu)良。
從經(jīng)驗(yàn)來看,網(wǎng)絡(luò)深度的增加,一般能學(xué)習(xí)到更多的特征,獲得更好的性能,但實(shí)踐發(fā)現(xiàn)隨著網(wǎng)絡(luò)加深,深度網(wǎng)絡(luò)出現(xiàn)退化,準(zhǔn)確度飽和甚至下降,比如56層的網(wǎng)絡(luò)效果可能比18層的網(wǎng)絡(luò)更差,但這并不是過擬合造成的,因?yàn)榫W(wǎng)絡(luò)的訓(xùn)練誤差依然很高,這使得深度網(wǎng)絡(luò)訓(xùn)練遇到了難題,性能無法通過加深網(wǎng)絡(luò)得以提升。殘差學(xué)習(xí)的提出為解決此問題提供了一種可能,殘差學(xué)習(xí)基于這樣的假設(shè):希望在淺層網(wǎng)絡(luò)通過疊加網(wǎng)絡(luò)層提升性能,在疊加的網(wǎng)絡(luò)層不進(jìn)行學(xué)習(xí),僅僅復(fù)制淺層網(wǎng)絡(luò)
的特征,性能應(yīng)該和該淺層網(wǎng)絡(luò)一致,不會(huì)出現(xiàn)退化現(xiàn)象。
圖1?殘差學(xué)習(xí):基本模塊
Resnet網(wǎng)絡(luò)是在經(jīng)典的VGG19網(wǎng)絡(luò)基礎(chǔ)上,通過短路機(jī)制引入殘差單元,直接使用Stride?=?2的卷積做下采樣,并且用Global Average Pool層替換了全連接層,其
重要原則為當(dāng)Feature Map大小降低一半時(shí),數(shù)量增加一倍,這保持了網(wǎng)絡(luò)層的復(fù)雜度,維持增加網(wǎng)絡(luò)層數(shù)帶來的性能提升。Resnet使用了兩種殘差單元,分別對(duì)應(yīng)
淺層網(wǎng)絡(luò)和深層網(wǎng)絡(luò),以適應(yīng)不同需要。
Resnet網(wǎng)絡(luò)性能優(yōu)良,很快成為了計(jì)算機(jī)視覺任務(wù)中的主流網(wǎng)絡(luò)架構(gòu)之一,也衍生出很多改進(jìn)版,是非常受歡迎的架構(gòu)。同時(shí),參考官方文檔,針對(duì)Ascend 310芯
片的特點(diǎn),做了適配和優(yōu)化,盡量提升3D?Cube的利用率,相應(yīng)減小數(shù)據(jù)搬移和Vector運(yùn)算的比例,以提升算法性能。注意了邊界算子規(guī)格,輸入數(shù)據(jù)的處理,比如
輸入數(shù)據(jù)最大支持四維,轉(zhuǎn)維算子(例如Reshape、Expanddim)等不能輸出五維等細(xì)節(jié)問題。同時(shí),注意到模型中的算子只支持2D卷積,暫不支持3D卷積,參考
官方建議,矩陣乘法的MKN以及conv、concat等算子的輸入或輸出通道數(shù)采用16的整數(shù)倍等問題。
二、跨尺度預(yù)測
YOLOv3在輸入映射到輸出方面,對(duì)應(yīng)三種不同尺度特征圖,輸出3個(gè)不同尺度的張量,是輸入圖像各個(gè)單元格中目標(biāo)對(duì)象的概率,當(dāng)輸入為416×416時(shí),在每個(gè)尺
度的特征圖的每個(gè)單元格設(shè)置3個(gè)先驗(yàn)框,總共有10647個(gè)預(yù)測,且每一個(gè)預(yù)測是一個(gè)85維向量,包含邊框坐標(biāo)(4個(gè)數(shù)值),邊框置信度(1個(gè)數(shù)值),對(duì)象類別的
概率(以COCO數(shù)據(jù)集為例,有80種對(duì)象)。且是在不同分辨率上進(jìn)行,對(duì)小物體的檢測效果較好。
為了更好地在Atlas平臺(tái)運(yùn)行,適配硬件處理,提高運(yùn)行速度,使用Atlas?200 DK提供的數(shù)字視覺預(yù)處理(Digital Vision Pre-Processing,DVPP)模塊做數(shù)據(jù)處
理,由于使用輸出限定寬高為128:16對(duì)齊,這里參考官方文檔例程建議,考慮到一般來說圖片的寬和高越大,對(duì)目標(biāo)檢測越好,設(shè)置為640×352,不破壞原算法輸入
尺寸需要為32的倍數(shù)的限制,同時(shí)降低了數(shù)據(jù)處理開銷和帶寬壓力。
同時(shí),由于輸入圖像大小的改變,相應(yīng)地適配先驗(yàn)框?qū)⒃瓉淼?373×326) 改為(163×326)。
圖2??YOLOv3的輸出
三、邊界框預(yù)測
延續(xù)YOLOv3采用回歸策略的端到端的策略,便于部署。假設(shè)將輸入圖像網(wǎng)格化,如果檢測目標(biāo)的中心落在網(wǎng)格中,網(wǎng)絡(luò)則對(duì)檢測目標(biāo)的具體位置做估計(jì)。假設(shè)每個(gè)
網(wǎng)格需要預(yù)測N個(gè)邊界框,則輸出結(jié)果為每個(gè)邊界框的位置坐標(biāo)和置信度。
圖3?具有尺寸先驗(yàn)和位置的邊界框預(yù)測
PS:不好意思,輸入公式不太方便,就直接上圖了。
這里采用邏輯回歸預(yù)測每個(gè)邊界框的待檢測物體的得分,每個(gè)邊界框使用多標(biāo)記分類預(yù)測框中可能包含的物體類別,由于使用了獨(dú)立的邏輯分類器,可以較為簡單地
用于其他更為復(fù)雜的領(lǐng)域,更好適應(yīng)大量重疊標(biāo)簽的情況。
網(wǎng)絡(luò) 華為Atlas 200 DK AI開發(fā)者套件 機(jī)器學(xué)習(xí)
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。