【《基于Yolov3的車輛標(biāo)檢測(cè)算法設(shè)計(jì)案例》8900字(論文)】_第1頁
【《基于Yolov3的車輛標(biāo)檢測(cè)算法設(shè)計(jì)案例》8900字(論文)】_第2頁
【《基于Yolov3的車輛標(biāo)檢測(cè)算法設(shè)計(jì)案例》8900字(論文)】_第3頁
【《基于Yolov3的車輛標(biāo)檢測(cè)算法設(shè)計(jì)案例》8900字(論文)】_第4頁
【《基于Yolov3的車輛標(biāo)檢測(cè)算法設(shè)計(jì)案例》8900字(論文)】_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于Yolov3的車輛標(biāo)檢測(cè)算法設(shè)計(jì)案例目錄TOC\o"1-3"\h\u7983基于Yolov3的車輛標(biāo)檢測(cè)算法設(shè)計(jì)案例 1101901.1單級(jí)目標(biāo)檢測(cè)算法原理 1245291.2yolov3檢測(cè)原理 129011.2.1候選區(qū)域產(chǎn)生 2293261.2.2特征提取網(wǎng)絡(luò) 446761.2.3損失函數(shù)建立 5150861.3本章小結(jié) 7209232實(shí)驗(yàn)及結(jié)果分析 788042.1實(shí)驗(yàn)環(huán)境與模型訓(xùn)練 7232782.1.1使用深度學(xué)習(xí)框架介紹 7134902.1.2數(shù)據(jù)集介紹 8216092.1.3實(shí)驗(yàn)環(huán)境配置介紹 922172.2車輛檢測(cè)結(jié)果分析 988122.2.1改進(jìn)特征提取網(wǎng)絡(luò)分析 980752.2.2錨框重新設(shè)置性能分析 12161672.2.3兩算法對(duì)比分析 141.1單級(jí)目標(biāo)檢測(cè)算法原理基于單級(jí)目標(biāo)檢測(cè)的車輛檢測(cè)方法是基于錨框直接進(jìn)行分類以及調(diào)整邊界框。其優(yōu)點(diǎn)是檢測(cè)速度快,缺點(diǎn)是檢測(cè)精度低,特別是在小目標(biāo)檢測(cè)中檢測(cè)效果差。1.2yolov3檢測(cè)原理JosephRedmon等人在2015年提出YOLO算法,通常也被稱為YOLOv1;2016年,他們又提出YOLOv2版本;2018年發(fā)展出YOLOv3版本ADDINEN.CITE<EndNote><Cite><Author>Redmon</Author><Year>2018</Year><RecNum>7</RecNum><DisplayText><styleface="superscript">[14]</style></DisplayText><record><rec-number>7</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1615392690">7</key></foreign-keys><ref-typename="JournalArticle">17</ref-type><contributors><authors><author>Redmon,Joseph</author><author>Farhadi,Ali</author></authors></contributors><titles><title>YOLOv3:AnIncrementalImprovement</title><secondary-title>arXive-prints</secondary-title></titles><periodical><full-title>arXive-prints</full-title></periodical><dates><year>2018</year></dates><urls></urls></record></Cite></EndNote>[14]。YOLOv3算法思想可分為兩個(gè)部分:(1)按一定規(guī)則在圖片上產(chǎn)生一系列的候選區(qū)域,然后根據(jù)這些候選區(qū)域與圖片上物體真實(shí)框之間的位置關(guān)系對(duì)候選區(qū)域進(jìn)行標(biāo)注。跟真實(shí)框足夠接近的那些候選區(qū)域會(huì)被標(biāo)注為正樣本,同時(shí)將真實(shí)框的位置作為正樣本的位置目標(biāo)。偏離真實(shí)框較大的那些候選區(qū)域則會(huì)被標(biāo)注為負(fù)樣本,負(fù)樣本不需要預(yù)測(cè)位置或者類別。(2)使用卷積神經(jīng)網(wǎng)絡(luò)提取圖片特征并對(duì)候選區(qū)域的位置和類別進(jìn)行預(yù)測(cè)。這樣每個(gè)預(yù)測(cè)框就可以看成一個(gè)樣本,根據(jù)真實(shí)框相對(duì)它的位置和類別進(jìn)行了標(biāo)注而獲得標(biāo)簽值,通過網(wǎng)絡(luò)模型預(yù)測(cè)其位置和類別,將網(wǎng)絡(luò)預(yù)測(cè)值和標(biāo)簽值進(jìn)行比較,就可以建立起損失函數(shù)。而預(yù)測(cè)時(shí)直接通過特征提取網(wǎng)絡(luò)與預(yù)測(cè)框比較,通過NMS輸出分類以及回歸結(jié)果。YOLOv3訓(xùn)練以及檢測(cè)模型見4-1。圖4-1YOLOv3訓(xùn)練以及檢測(cè)1.2.1候選區(qū)域產(chǎn)生對(duì)輸入圖片(H*W)進(jìn)行下采樣(采樣數(shù)為k,一般為大中小三個(gè)采樣),將圖片分割成H/k,W/k形式。在每個(gè)區(qū)域中心(這里的區(qū)域中心是一個(gè)點(diǎn),下面以C表示),生成一系列對(duì)應(yīng)于大中小感受野不同的錨框。見圖4-2所示。圖4-2劃分網(wǎng)絡(luò)不同的錨框基本上不可能剛好與物體邊界框重合,所以需要在錨框的基礎(chǔ)上進(jìn)行位置的微調(diào)以生成預(yù)測(cè)框。通過中心點(diǎn)偏移:寬高拉伸:實(shí)現(xiàn)從錨框到預(yù)測(cè)框的過程。其中由將點(diǎn)按真實(shí)框位置帶入求解所得。見圖4-3所示。圖4-3錨框到預(yù)測(cè)框調(diào)整在完成上述后,需要對(duì)候選區(qū)域進(jìn)行標(biāo)注。首先是標(biāo)注錨框是否含有物體。每個(gè)區(qū)域可以產(chǎn)生3種不同形狀的錨框,每個(gè)錨框都是一個(gè)可能的候選區(qū)域,對(duì)這些候選區(qū)域首先計(jì)算錨框與真實(shí)框的IOU,從一組9個(gè)錨框中選出IoU最大的錨框,將它所對(duì)應(yīng)的預(yù)測(cè)框的Pobj標(biāo)簽設(shè)置為1,其所包括的物體類別就是真實(shí)框里面的物體所屬類別。由于每個(gè)真實(shí)框只對(duì)應(yīng)一個(gè)Pobj標(biāo)簽為正的預(yù)測(cè)框,如果有些預(yù)測(cè)框跟真實(shí)框之間的IoU很大,但并不是最大的那個(gè),那么直接將其Pobj標(biāo)簽設(shè)置為0當(dāng)作負(fù)樣本,可能并不妥當(dāng)。為了避免這種情況,YOLOv3算法設(shè)置了一個(gè)IoU閾值iou_threshold,當(dāng)預(yù)測(cè)框的Pobj不為1,但是其與某個(gè)真實(shí)框的IoU大于iou_threshold時(shí),就將其Pobj標(biāo)簽設(shè)置為-1,不參與損失函數(shù)的計(jì)算。所有其他的預(yù)測(cè)框,其Pobj標(biāo)簽均設(shè)置為0,表示負(fù)類。對(duì)于Pobj=1的預(yù)測(cè)框,需要進(jìn)一步確定其位置和包含物體的具體分類標(biāo)簽,但是對(duì)于Pobj=0或者-1的預(yù)測(cè)框,則不用管他們的位置和類別。其次是標(biāo)注預(yù)測(cè)框的位置坐標(biāo)標(biāo)簽,當(dāng)錨框objectness=1時(shí),需要確定預(yù)測(cè)框位置相對(duì)于它微調(diào)的幅度,也就是錨框的位置標(biāo)簽。同時(shí)還需要判斷出錨框所屬物體類別,YOLOv3使用one-hot向量來表示類別標(biāo)簽label。比如一共有10個(gè)分類,而真實(shí)框里面包含的物體類別是第2類,則label為(0,1,0,0,0,0,0,0,0,0)。由此,真實(shí)框信息得以標(biāo)注。所以,每個(gè)區(qū)域中心C含有多個(gè)信息:具體見圖4-4所示。圖4-4特征圖中的信息數(shù)1.2.2特征提取網(wǎng)絡(luò)整個(gè)特征提取網(wǎng)絡(luò)見圖4-5。其中YOLOv3采用了Darknet53網(wǎng)絡(luò)作為其主要特征提取部分。該網(wǎng)絡(luò)有兩個(gè)特點(diǎn)。一是參考了殘差網(wǎng)絡(luò)的理念,使用了許多尺寸為3*3和1*1的卷積層,去掉了池化層和全連接層,因此在網(wǎng)絡(luò)前向傳播的過程中,特征的尺寸變化是通過改變卷積核的卷積步長(zhǎng)實(shí)現(xiàn)的。ADDINEN.CITE<EndNote><Cite><Author>鄭佳卉</Author><Year>2019</Year><RecNum>6</RecNum><DisplayText><styleface="superscript">[15]</style></DisplayText><record><rec-number>6</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1615392271">6</key></foreign-keys><ref-typename="Thesis">32</ref-type><contributors><authors><author><styleface="normal"font="default"charset="134"size="100%">鄭佳卉</style></author></authors><tertiary-authors><author><styleface="normal"font="default"charset="134"size="100%">郭杰</style><styleface="normal"font="default"size="100%">,</style></author><author><styleface="normal"font="default"charset="134"size="100%">李郜偉</style><styleface="normal"font="default"size="100%">,</style></author></tertiary-authors></contributors><titles><title><styleface="normal"font="default"charset="134"size="100%">基于</style><styleface="normal"font="default"size="100%">YOLOv3</style><styleface="normal"font="default"charset="134"size="100%">的行人視頻目標(biāo)檢測(cè)方法</style></title></titles><keywords><keyword>行人檢測(cè)</keyword><keyword>YOLOv3</keyword><keyword>k-means</keyword><keyword>多尺度檢測(cè)</keyword><keyword>視頻標(biāo)注</keyword></keywords><dates><year>2019</year></dates><publisher><styleface="normal"font="default"charset="134"size="100%">西安電子科技大學(xué)</style></publisher><work-type><styleface="normal"font="default"charset="134"size="100%">碩士</style></work-type><urls></urls><remote-database-provider>Cnki</remote-database-provider></record></Cite></EndNote>[15]二是網(wǎng)絡(luò)不再使用softmax進(jìn)行分類,而是使用邏輯分類,這使得每個(gè)候選框中可以用多標(biāo)記分類來預(yù)測(cè)其中含有的物體類別。如果僅僅使用softmax來分類,只會(huì)預(yù)測(cè)加強(qiáng)一種物體的推論,這顯然是有缺陷的。同時(shí),在Darknet53之外的其他網(wǎng)絡(luò),還采用了多尺度預(yù)測(cè),也就是幾個(gè)上采樣后產(chǎn)生的特征圖。如果只產(chǎn)生一個(gè)32采樣特征圖,這個(gè)特征圖的尺寸比較小,像素點(diǎn)數(shù)目比較少,每個(gè)像素點(diǎn)的感受野很大,具有非常豐富的高層級(jí)語義信息,可能比較容易檢測(cè)到較大的目標(biāo)。但為了檢測(cè)尺寸較小的目標(biāo),就需要在尺寸較大的特征圖上面建立預(yù)測(cè)輸出。通過將高層級(jí)的特征圖尺寸放大之后(上采樣)跟低層級(jí)的特征圖進(jìn)行融合,得到的新特征圖既能包含豐富的語義信息,又具有較多的像素點(diǎn),能夠描述更加精細(xì)的結(jié)構(gòu)。圖4-5YOLOv3網(wǎng)絡(luò)結(jié)構(gòu)示意圖1.2.3損失函數(shù)建立以32采樣圖為例,其他16采樣、8采樣過程與之一樣。經(jīng)過多次卷積核池化之后,特征圖變?yōu)榇笮。℉/k,W/k),這恰好與通過32采樣分割成的小方塊數(shù)目(H/k)*(W/k)一一對(duì)應(yīng),也就是說特征圖上每個(gè)像素點(diǎn)分別跟原圖上一個(gè)小方塊區(qū)域?qū)?yīng)。見圖4-6所示。圖4-6特征圖與小方塊區(qū)域形狀對(duì)比為了將像素點(diǎn)(i,j)與第i行第j列的小方塊區(qū)域所需要的預(yù)測(cè)值關(guān)聯(lián)起來,每個(gè)小方塊區(qū)域產(chǎn)生K個(gè)預(yù)測(cè)框,每個(gè)預(yù)測(cè)框需要(5+C)個(gè)實(shí)數(shù)預(yù)測(cè)值,則每個(gè)像素點(diǎn)相對(duì)應(yīng)的要有K(5+C)個(gè)實(shí)數(shù)。為了解決這一問題,對(duì)特征圖進(jìn)行多次卷積,并將最終地輸出通道數(shù)設(shè)置為K(5+C),即可將生成的特征圖與每個(gè)預(yù)測(cè)框所需要的預(yù)測(cè)值巧妙的對(duì)應(yīng)起來。之后將生成的特征圖輸出通道數(shù)數(shù)據(jù)與真實(shí)標(biāo)注框的數(shù)據(jù)進(jìn)行計(jì)算,得到損失函數(shù)。其中損失函數(shù)由置信度損失、分類損失與定位損失之和組成。首先通過計(jì)算K個(gè)置信度損失,將其中計(jì)算得到的置信度最大的一組實(shí)數(shù)保留,作為最后得到的損失函數(shù)。具體損失函數(shù)為:1.3本章小結(jié)本章首先介紹了單階段目標(biāo)檢測(cè)的過程。然后詳細(xì)介紹了YOLOv3候選區(qū)域產(chǎn)生網(wǎng)絡(luò)、特征提取網(wǎng)絡(luò)與損失函數(shù)。同時(shí)也提到了候選區(qū)域產(chǎn)生網(wǎng)絡(luò)以及特征提取網(wǎng)絡(luò)的一些不足。在第五章中,將對(duì)這些不足做出改進(jìn)2實(shí)驗(yàn)及結(jié)果分析2.1實(shí)驗(yàn)環(huán)境與模型訓(xùn)練2.1.1使用深度學(xué)習(xí)框架介紹深度學(xué)習(xí)框架最初主要用于深度學(xué)習(xí)的科研工作,代表性開源深度學(xué)習(xí)框架包括谷歌于2015年提出的TensorFlow框架,臉書于2017年提出的PyTorch框架。百度從2012年開始研發(fā)完全具備自主知識(shí)產(chǎn)權(quán)的深度學(xué)習(xí)框架,并在2016年度開源了國內(nèi)首個(gè)功能完備的開源深度學(xué)習(xí)平臺(tái)飛槳(PaddlePaddle)ADDINEN.CITE<EndNote><Cite><Author>馬艷軍</Author><Year>2019</Year><RecNum>35</RecNum><DisplayText><styleface="superscript">[16]</style></DisplayText><record><rec-number>35</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1621429955">35</key></foreign-keys><ref-typename="JournalArticle">17</ref-type><contributors><authors><author><styleface="normal"font="default"charset="134"size="100%">馬艷軍</style></author><author><styleface="normal"font="default"charset="134"size="100%">于佃海</style></author><author><styleface="normal"font="default"charset="134"size="100%">吳甜</style></author><author><styleface="normal"font="default"charset="134"size="100%">王海峰</style></author></authors></contributors><auth-address><styleface="normal"font="default"charset="134"size="100%">百度公司</style><styleface="normal"font="default"size="100%">;</style></auth-address><titles><title><styleface="normal"font="default"charset="134"size="100%">飛槳:源于產(chǎn)業(yè)實(shí)踐的開源深度學(xué)習(xí)平臺(tái)</style><styleface="normal"font="default"size="100%"></style></title><secondary-title><styleface="normal"font="default"charset="134"size="100%">數(shù)據(jù)與計(jì)算發(fā)展前沿</style></secondary-title></titles><periodical><full-title>數(shù)據(jù)與計(jì)算發(fā)展前沿</full-title></periodical><pages>105-115</pages><volume>1</volume><number>05</number><keywords><keyword>飛槳</keyword><keyword>人工智能</keyword><keyword>深度學(xué)習(xí)</keyword><keyword>深度學(xué)習(xí)框架</keyword></keywords><dates><year>2019</year></dates><isbn>2096-742X</isbn><call-num>10-1649/TP</call-num><urls></urls><remote-database-provider>Cnki</remote-database-provider></record></Cite></EndNote>[16]。飛槳是集深度學(xué)習(xí)核心框架、工具組件和服務(wù)平臺(tái)于一體的技術(shù)領(lǐng)先、功能完備的開源深度學(xué)習(xí)平臺(tái),擁有完善的飛槳學(xué)習(xí)生態(tài)、活躍的開發(fā)者社區(qū)。飛槳深度學(xué)習(xí)框架前端語言使用Python語言,并提供豐富的編程API接口。而底層使用C++語言,保持框架執(zhí)行率。同時(shí)飛槳提供技術(shù)領(lǐng)先、簡(jiǎn)單易用、兼顧顯存回收與復(fù)用的顯存優(yōu)化策略,在很多模型上的表現(xiàn)優(yōu)于其他開源框架。圖5-1飛槳logo飛槳目標(biāo)檢測(cè)框架(PaddleDetection)是基于飛槳深度學(xué)習(xí)框架的端到端對(duì)象檢測(cè)套件,其旨在幫助開發(fā)人員在整體開發(fā)中,以更快更好的方式構(gòu)建,培訓(xùn),優(yōu)化和部署檢測(cè)模型。PaddleDentection在模塊化設(shè)計(jì)中實(shí)現(xiàn)各類主流目標(biāo)檢測(cè)算法,提供富裕的數(shù)據(jù)增強(qiáng)方法,網(wǎng)絡(luò)組件(如backbone),損失函數(shù)功能等,并集成模型壓縮和跨平臺(tái)高性能部署的能力。見圖5-2所示。PaddleDetection具有模型豐富(含有100+個(gè)預(yù)訓(xùn)練模型,涵蓋多種全球競(jìng)賽冠軍方案)、使用簡(jiǎn)潔(模塊化設(shè)計(jì)、解耦各個(gè)網(wǎng)絡(luò)組件,開發(fā)者輕松搭建、試用各種檢測(cè)模型及優(yōu)化策略)端到端打通(從數(shù)據(jù)增強(qiáng)、組網(wǎng)、訓(xùn)練、壓縮、部署端到端打通,并完備支持云端/邊緣端多架構(gòu)、多設(shè)備部署)、高性能(基于高性能內(nèi)核、訓(xùn)練速度上有優(yōu)勢(shì))。圖5-2PaddleDetection端到端開發(fā)套件其中,網(wǎng)絡(luò)模型模塊存儲(chǔ)在yaml配置文件中,所有網(wǎng)絡(luò)模型是以組件的形式進(jìn)行定義與組合,網(wǎng)絡(luò)模型模塊的主要構(gòu)成如下架構(gòu)所示:ppdet/modeling/├──architectures#│├──faster_rcnn.py#FasterRcnn模型│├──ssd.py#SSD模型│├──yolov3.py#YOLOv3模型││...├──anchor_heads#anchor生成檢測(cè)頭模塊│├──xxx_head.py#定義各類anchor生成檢測(cè)頭├──backbones#基干網(wǎng)絡(luò)模塊│├──resnet.py#ResNet網(wǎng)絡(luò)│├──mobilenet.py#MobileNet網(wǎng)絡(luò)││...├──losses#損失函數(shù)模塊│├──xxx_loss.py#定義注冊(cè)各類loss函數(shù)├──roi_extractors#檢測(cè)感興趣區(qū)域提取│├──roi_extractor.py#FPNRoIAlign等實(shí)現(xiàn)├──roi_heads#兩階段檢測(cè)器檢測(cè)頭│├──bbox_head.py#Faster-Rcnn系列檢測(cè)頭│├──cascade_head.py#cascade-Rcnn系列檢測(cè)頭│├──mask_head.py#Mask-Rcnn系列檢測(cè)頭├──tests#單元測(cè)試模塊│├──test_architectures.py#對(duì)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行單元測(cè)試├──ops.py#封裝及注冊(cè)各類PaddlePaddle物體檢測(cè)相關(guān)公共檢測(cè)組件/算子├──target_assigners.py#封裝bbox/mask等最終結(jié)果的公共檢測(cè)組件2.1.2數(shù)據(jù)集介紹本畢業(yè)設(shè)計(jì)基于深度學(xué)習(xí)的汽車目標(biāo)檢測(cè),選擇了UA-DETRAC汽車數(shù)據(jù)集。該數(shù)據(jù)集發(fā)表于2020年,是車輛檢測(cè)和跟蹤的大規(guī)模數(shù)據(jù)集,其數(shù)據(jù)主要拍攝于北京和天津的24個(gè)不同地點(diǎn)的道路過街天橋,并手動(dòng)標(biāo)注了8250個(gè)車輛和121萬目標(biāo)對(duì)象框。其圖像分辨率為960×540像素。ADDINEN.CITE<EndNote><Cite><Author>Wen</Author><Year>2015</Year><RecNum>36</RecNum><DisplayText><styleface="superscript">[17]</style></DisplayText><record><rec-number>36</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1621434852">36</key></foreign-keys><ref-typename="JournalArticle">17</ref-type><contributors><authors><author>Wen,L.</author><author>Du,D.</author><author>Cai,Z.</author><author>Lei,Z.</author><author>Chang,M.C.</author><author>Qi,H.</author><author>Lim,J.</author><author>Yang,M.H.</author><author>Lyu,S.</author></authors></contributors><titles><title>UA-DETRAC:ANewBenchmarkandProtocolforMulti-ObjectDetectionandTracking</title><secondary-title>ComputerScience</secondary-title></titles><periodical><full-title>ComputerScience</full-title></periodical><dates><year>2015</year></dates><urls></urls></record></Cite></EndNote>[17]數(shù)據(jù)集地址為/。2.1.3實(shí)驗(yàn)環(huán)境配置介紹百度aistudio在線平臺(tái)運(yùn)行。PaddlePaddle=2.02,python3=3.7.4,CPU=4core,RAM=32GB,GPU=v100,顯存32GB,磁盤=100GB。2.2車輛檢測(cè)結(jié)果分析2.2.1改進(jìn)特征提取網(wǎng)絡(luò)分析無論是FasterRCNN目標(biāo)檢測(cè)網(wǎng)絡(luò)還是YOLOv3目標(biāo)檢測(cè)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò)對(duì)于圖像的特征提取起到了至關(guān)重要的作用。一般來說,隨著卷積神經(jīng)網(wǎng)絡(luò)卷積池化層的進(jìn)一步增多,網(wǎng)絡(luò)獲得的特征便越詳細(xì),整個(gè)網(wǎng)絡(luò)的學(xué)習(xí)效果也就越好,當(dāng)然其中也可能出現(xiàn)過擬合等情況。同時(shí),隨著卷積池化層的進(jìn)一步增多,參數(shù)數(shù)量也進(jìn)一步加深,整個(gè)網(wǎng)絡(luò)地運(yùn)算時(shí)間會(huì)自然而然的上升,反映在實(shí)際的應(yīng)用時(shí),就是單位時(shí)間內(nèi)處理圖片能力的下降。為了相對(duì)應(yīng)提升兩個(gè)目標(biāo)網(wǎng)絡(luò)的速度或是精度,這里特意選取了幾種常用的卷積神經(jīng)網(wǎng)絡(luò)替代與原生的特征提取網(wǎng)絡(luò)。首先是FasterRCNN部分,其原生的特征提取網(wǎng)絡(luò)為ZF網(wǎng)絡(luò)和VGG16網(wǎng)絡(luò)。選擇這些網(wǎng)絡(luò)源于論文作者剛提出只有這些網(wǎng)絡(luò),但是隨著卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展,學(xué)術(shù)界早已有了更加不錯(cuò)的網(wǎng)絡(luò),見表5-1所示。從表中可以看出,Resnet網(wǎng)絡(luò)的FLOPs(處理單位圖像時(shí)所需花費(fèi)的加法與乘法運(yùn)算次數(shù)之和)明顯低于VGG16和ZF,這說明運(yùn)算量小,運(yùn)算速度快,耗時(shí)少。同時(shí),其Top-1error與Top-5error(圖像分類時(shí)最大概率與前五個(gè)最大概率的錯(cuò)誤百分率)的錯(cuò)誤率也低于上述兩個(gè)網(wǎng)絡(luò),這說明目標(biāo)檢測(cè)精度高。因此,在FasterRCNN中選擇Resnet34網(wǎng)絡(luò)作為它的特征提取網(wǎng)絡(luò)。表5-1常用卷積網(wǎng)絡(luò)參數(shù)量(圖像分類類別為1000)網(wǎng)絡(luò)模型參數(shù)量FLOPs(×109)Top-1errorTop-5errorVGG161.38×10812.528.419.62ZF2.56×1072.8736.011.70Resnet181.17×1071.8230.2410.92Resnet342.18×1073.6826.708.58Resnet101--19.871.60先介紹下Resnet特征提取網(wǎng)絡(luò)。深度殘差網(wǎng)絡(luò)(Deepresidualnetwork,ResNet)由何凱明等人在2015年的CVPR大會(huì)上提出,一經(jīng)提出,便在ILSVRC和COCO2015上的五項(xiàng)類別中取得了冠軍,刷新了卷積神經(jīng)網(wǎng)絡(luò)模型在各項(xiàng)活動(dòng)上的歷史??梢哉f,深度殘差網(wǎng)絡(luò)的提出,在深度學(xué)習(xí)歷史上,是一件里程碑事件。作者何凱明博士也由此摘得CVPR2016年最佳論文獎(jiǎng)。何凱明博士也是真正意義上的在深度學(xué)習(xí)學(xué)界有著舉足輕重起到至關(guān)重要作用的人物。從問題角度出發(fā),深度殘差網(wǎng)絡(luò)的提出解決了當(dāng)時(shí)困擾學(xué)界很久的卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練不容易的問題。在當(dāng)時(shí),2014年提出的VGG19模型在深度學(xué)界使用十分普遍,但也存在著性能不佳的問題。隨著深度殘差網(wǎng)絡(luò)的提出,性能得到了巨大的提升,具體數(shù)據(jù)表5-1已給出。那么,是什么讓此網(wǎng)絡(luò)由如此強(qiáng)的性能呢,主要是解決了深度網(wǎng)絡(luò)的退化問題。只要對(duì)深度學(xué)習(xí)有所了解,具備一些訓(xùn)練經(jīng)驗(yàn),就清楚,網(wǎng)絡(luò)層數(shù)越多,深度越大,整個(gè)網(wǎng)絡(luò)就可以進(jìn)行更加復(fù)雜的圖像特征提取,模型效果從理論上講就會(huì)越好。但是,研究人員發(fā)現(xiàn),隨著網(wǎng)絡(luò)深度的提升,網(wǎng)絡(luò)精度會(huì)出現(xiàn)飽和的趨勢(shì),然后迅速下降。同時(shí),這種問題并不是由過擬合引起的,甚至?xí)霈F(xiàn)56層的卷積網(wǎng)絡(luò)效果不如20層的情況。見圖5-3所示。圖5-320層與56層網(wǎng)絡(luò)效果ADDINEN.CITE<EndNote><Cite><Author>He</Author><Year>2016</Year><RecNum>37</RecNum><DisplayText><styleface="superscript">[18]</style></DisplayText><record><rec-number>37</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1621508885">37</key></foreign-keys><ref-typename="JournalArticle">17</ref-type><contributors><authors><author>He,K.</author><author>Zhang,X.</author><author>Ren,S.</author><author>Sun,J.</author></authors></contributors><titles><title>DeepResidualLearningforImageRecognition</title><secondary-title>IEEEConferenceonComputerVisionPatternRecognition</secondary-title></titles><periodical><full-title>IEEEConferenceonComputerVisionPatternRecognition</full-title></periodical><dates><year>2016</year></dates><urls></urls></record></Cite></EndNote>[18]為此,何凱明博士等人引入了殘差學(xué)習(xí)的概念來解決上述問題。對(duì)于一個(gè)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),將輸入設(shè)為x,則可以設(shè)得到的特征結(jié)果是H(x),為了避免出現(xiàn)卷積多層過后飽和甚至下降現(xiàn)象,令其可以學(xué)習(xí)到殘差為F(x)=H(x)-x,那么原始的特征結(jié)果是F(x)+x。這樣做,可以比優(yōu)化原始的卷積神經(jīng)網(wǎng)絡(luò)更加容易。那么,在極端情況下,也就是當(dāng)殘差為0時(shí),此時(shí)特征網(wǎng)絡(luò)僅僅做了恒等變化,網(wǎng)絡(luò)性能并不會(huì)下降。實(shí)際上殘差不會(huì)為0,這也會(huì)使得卷積神經(jīng)網(wǎng)絡(luò)在輸入特征基礎(chǔ)上學(xué)習(xí)到新的特征,從而擁有更好的性能。殘差學(xué)習(xí)的結(jié)構(gòu)如圖5-4所示。殘差網(wǎng)絡(luò)對(duì)整個(gè)卷積神經(jīng)網(wǎng)絡(luò)起到了深遠(yuǎn)的影響。現(xiàn)下使用最多地在yolo中的Darknet網(wǎng)絡(luò)以及接下來要介紹的mobilenet網(wǎng)絡(luò)都參考了這一設(shè)計(jì)。圖5-4殘差學(xué)習(xí)下面是采用了resnet34以及resnet101卷積神經(jīng)網(wǎng)絡(luò)的FasterRCNN目標(biāo)檢測(cè)網(wǎng)絡(luò)。見表5-2所示。從數(shù)據(jù)中可以看出,隨著網(wǎng)絡(luò)深度的提高,精度只是上升了0.6個(gè)百分點(diǎn),而處理速度卻下降了將近一半,從實(shí)際情況出發(fā),選擇Resnet34作為特征提取網(wǎng)絡(luò)較為合適。表5-2FasterRCNN目標(biāo)檢測(cè)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)處理圖像速度處理圖像準(zhǔn)確率FasterRCNN+Resnet347.38fps93.2%FasterRCNN+Resnet1011.84fps93.8%其次是YOLOv3部分,其原生的Darknet53網(wǎng)絡(luò)是比較新的一款卷積神經(jīng)網(wǎng)絡(luò),其運(yùn)行效果也十分不錯(cuò),但是隨著YOLOv3網(wǎng)絡(luò)的普及,一方面有著將模型遷移上我們小型SOC,如樹莓派,嵌入式設(shè)備等,這對(duì)YOLOv3提出了模型體積要小這一要求,但是現(xiàn)有的Darknet53卷積神經(jīng)網(wǎng)絡(luò)并不能很好地滿足體積小這一要求,所以更加需要一款模型較小,但檢測(cè)能力不能下降太多的卷積神經(jīng)網(wǎng)絡(luò),這便是mobilenet卷積神經(jīng)網(wǎng)絡(luò)。另一方面,對(duì)一個(gè)系統(tǒng)的評(píng)判,還需要對(duì)其兼容性有很大的要求,所以需要對(duì)其他卷積網(wǎng)絡(luò)對(duì)其的影響進(jìn)行測(cè)試,這便選擇了Resnet34卷積神經(jīng)網(wǎng)絡(luò)。先介紹下mobilenet卷積神經(jīng)網(wǎng)絡(luò)。2017年4月,谷歌公司提出了mobilenet卷積神經(jīng)網(wǎng)絡(luò)。當(dāng)時(shí),隨著深度學(xué)習(xí)的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)朝著建立更加深入、更加復(fù)雜的網(wǎng)絡(luò),其目的便是提高精度。但隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,基于現(xiàn)實(shí)場(chǎng)景的需要以及設(shè)備有限的算例運(yùn)行,出現(xiàn)了越來越多關(guān)于將神經(jīng)網(wǎng)絡(luò)在移動(dòng)設(shè)備上或者嵌入式設(shè)備運(yùn)行的呼聲。這對(duì)卷積神經(jīng)網(wǎng)絡(luò)提出了新要求,構(gòu)建一個(gè)快且小的模型。谷歌的科學(xué)家們通奸使用深度可分離卷積(depthwiseseparableconvolutions)替代傳統(tǒng)卷積與在網(wǎng)絡(luò)中引入兩個(gè)收縮超參數(shù)(shrinkinghyperparameters):寬度乘子(widthmultiplier)和分辨率乘子(resolutionmultiplier),ADDINEN.CITE<EndNote><Cite><Author>Howard</Author><Year>2017</Year><RecNum>38</RecNum><DisplayText><styleface="superscript">[19]</style></DisplayText><record><rec-number>38</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1621514860">38</key></foreign-keys><ref-typename="JournalArticle">17</ref-type><contributors><authors><author>Howard,A.G.</author><author>Zhu,M.</author><author>Chen,B.</author><author>Kalenichenko,D.</author><author>Wang,W.</author><author>Weyand,T.</author><author>Andreetto,M.</author><author>Adam,H.</author></authors></contributors><titles><title>MobileNets:EfficientConvolutionalNeuralNetworksforMobileVisionApplications</title></titles><dates><year>2017</year></dates><urls></urls></record></Cite></EndNote>[19]解決了這一問題。深度可分離卷積實(shí)質(zhì)上是將標(biāo)準(zhǔn)卷積分解成了兩步,分別是深度卷積(depthwiseconvolution)和逐點(diǎn)卷積(pointwiseconvolution)。這里以具體例子為例,在標(biāo)準(zhǔn)卷積中,輸入一個(gè)10×10×3的特征圖,在經(jīng)過4×4×3的卷積核后得到一個(gè)7×7×1的輸出特征圖。當(dāng)特征圖數(shù)量為256時(shí),就得到7×7×256的輸出特征圖。而在深度卷積中,4×4×3的卷積核獨(dú)立成3個(gè)4×4×1,并獨(dú)立對(duì)每一通道進(jìn)行卷積操作,得到7×7×3的輸出特征圖。在逐點(diǎn)卷積中,用深度卷積得到的7×7×3輸出特征圖與1×1×3的卷積核進(jìn)行卷積,得到7×7×1的輸出特征圖。因?yàn)樘卣鲌D數(shù)量為256時(shí),所以就得到7×7×256的輸出特征圖,與標(biāo)準(zhǔn)卷積一致。通過這樣的計(jì)算方式,深度卷積網(wǎng)絡(luò)大幅降低了參數(shù)量和計(jì)算量,節(jié)省了算力,降低了模型大小。而寬度引子a(a在0,1之間),通過控制輸入和輸出的通道數(shù),將模型計(jì)算量和參數(shù)降低了約a2倍。分辨率因子p通過控制輸入的分辨率,將模型計(jì)算量和參數(shù)降低了約p2倍。總的來說,通過上述幾種方法,成功讓整個(gè)網(wǎng)絡(luò)的算力要求降低、模型體積下降。下面是采用了resnet34以及mobilenet_v1卷積神經(jīng)網(wǎng)絡(luò)的YOLOv3目標(biāo)檢測(cè)網(wǎng)絡(luò)。見表5-3所示。從表中可以看出,使用resnet34卷積神經(jīng)網(wǎng)絡(luò)的YOLOv3算法精度最高,但和使用Darknet53卷積神經(jīng)網(wǎng)絡(luò)的YOLOv3相差并不是很大,只有0.14個(gè)百分點(diǎn)。不過Darknet53其速度達(dá)到了46.20fps,遠(yuǎn)遠(yuǎn)超過Resnet34網(wǎng)絡(luò)。我們又可以發(fā)現(xiàn),采用Mobilenet卷積神經(jīng)網(wǎng)絡(luò)的YOLOv3在準(zhǔn)確率上與上述兩者相差較大,這也符合Mobilenet論文作者所說的,對(duì)于網(wǎng)絡(luò)的追求,不過多追求準(zhǔn)確率,而是在體積以及速度上有所追求。這也是為了減小模型體積所付出的必要代價(jià)。表5-3YOLOv3目標(biāo)檢測(cè)網(wǎng)絡(luò)卷積神經(jīng)網(wǎng)絡(luò)處理圖像速度處理圖像準(zhǔn)確率YOLOv3+Darknet5346.20fps99.18%YOLOv3+Resnet3432.18fps99.32%YOLOv3+Mobilenet_v137.55fps96.86%2.2.2錨框重新設(shè)置性能分析無論是FasterRCNN目標(biāo)檢測(cè)網(wǎng)絡(luò)還是YOLOv3目標(biāo)檢測(cè)網(wǎng)絡(luò),其中的錨框部分,對(duì)物體的目標(biāo)檢測(cè)起到了重要作用。我們可以推論錨框生成地對(duì)物體的檢測(cè)框與符合圖片的特征,整個(gè)網(wǎng)絡(luò)的效果會(huì)越好,那么整個(gè)網(wǎng)絡(luò)的運(yùn)算速度會(huì)加快、運(yùn)算時(shí)間會(huì)減少甚至與整個(gè)網(wǎng)絡(luò)的預(yù)測(cè)精度會(huì)得到提升。因此提升錨框?qū)φ麄€(gè)數(shù)據(jù)集的適配性,是十分必要的??梢哉f,錨框設(shè)置的合理與否,極大地影響了最終模型檢測(cè)性能的好壞。其中,F(xiàn)asterRCNN中RPN網(wǎng)絡(luò)部分的錨框的選擇為三個(gè)尺度{128,256,512},三個(gè)比例{1:1,1:2,2:1},一共九組錨框,針對(duì)VOC、COCO等數(shù)據(jù)集的所有類別。YOLOv3則是{[10,13],[16,30],[33,23],[30,61],[62,45],[59,119],[116,90],[156,198],[373,326]},對(duì)應(yīng)于小中大三種尺寸。其來源于作者通過kmeans聚類COCO數(shù)據(jù)集中的目標(biāo)物。ADDINEN.CITE<EndNote><Cite><Author>Redmon</Author><Year>2018</Year><RecNum>7</RecNum><DisplayText><styleface="superscript">[14]</style></DisplayText><record><rec-number>7</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1615392690">7</key></foreign-keys><ref-typename="JournalArticle">17</ref-type><contributors><authors><author>Redmon,Joseph</author><author>Farhadi,Ali</author></authors></contributors><titles><title>YOLOv3:AnIncrementalImprovement</title><secondary-title>arXive-prints</secondary-title></titles><periodical><full-title>arXive-prints</full-title></periodical><dates><year>2018</year></dates><urls></urls></record></Cite></EndNote>[14]顯然,上述兩個(gè)網(wǎng)絡(luò)的錨框設(shè)置來源于通用數(shù)據(jù)集的所有類別,沒有專門的適配我們當(dāng)下訓(xùn)練的數(shù)據(jù)集。從比如說我們數(shù)據(jù)集照片的像素是960*540,汽車數(shù)量較多且大小偏小,上述默認(rèn)的設(shè)置就不符合實(shí)際情況。因此,需要重新設(shè)置錨框尺寸。我們選擇最通用的K-means均值聚類算法,K-means算法是一種迭代求解的聚類分析方法。我們通過它對(duì)數(shù)據(jù)集重新聚類來設(shè)計(jì)兩算法的錨框尺寸。K-means算法的計(jì)算過程如下:從任意個(gè)樣本中隨機(jī)選擇Q個(gè)樣本,并把這Q個(gè)樣本作為聚類中心。計(jì)算每個(gè)樣本中所有樣本與Q個(gè)聚類中心的距離,將這個(gè)樣本中的所有樣本歸到離其距離最近的聚類中心的類中。重新計(jì)算已得到的各個(gè)類的聚類中心。迭代2,3步,直到新的聚類中心與原來的聚類中心相等或小于設(shè)定閾值。結(jié)束算法。也就說明樣本聚類中心不在變化,算法收斂。ADDINEN.CITE<EndNote><Cite><Author>吳夙慧</Author><Year>2011</Year><RecNum>39</RecNum><DisplayText><styleface="superscript">[20]</style></DisplayText><record><rec-number>39</rec-number><foreign-keys><keyapp="EN"db-id="5t9pfd9xkppsfyep0zsx9etkdzzrtvvx2vtt"timestamp="1621520304">39</key></foreign-keys><ref-typename="JournalArticle">17</ref-type><contributors><authors><author><styleface="normal"font="default"charset="134"size="100%">吳夙慧</style></author><author><styleface="normal"font="default"charset="134"size="100%">成穎</style></author><author><styleface="normal"font="default"charset="134"size="100%">鄭彥寧</style></author><author><styleface="normal"font="default"charset="134"size="100%">潘云濤</style><styleface="normal"font="default"size="100%"></style></author></authors></contributors><titles><title><styleface="normal"font="default"size="100%">K-means</style><styleface="normal"font="default"charset="134"size="100%">算法研究綜述</style></title><secondary-title><styleface="normal"font="default"charset="134"size="100%">現(xiàn)代圖書情報(bào)技術(shù)</style></secondary-title></titles><periodical><full-title>現(xiàn)代圖書情報(bào)技術(shù)</full-title></periodical><pages>28-35</pages><volume>27</volume><number>5</number><dates><year>2011</year></dates><urls></urls></record></Cite></EndNote>[20]得到的錨框質(zhì)量標(biāo)準(zhǔn)本文采用IOU這一相似度標(biāo)準(zhǔn)來進(jìn)行計(jì)算。通過計(jì)算預(yù)測(cè)錨框與實(shí)際錨框的IOU大小來評(píng)判最后結(jié)果。由此得到了FasterRCNN目標(biāo)檢測(cè)網(wǎng)絡(luò)和YOLOv3目標(biāo)檢測(cè)網(wǎng)絡(luò)重新聚類后的錨框。見表5-4,表5-5所示。表5-4FasterRCNN聚類前后錨框?qū)Ρ儒^點(diǎn)尺寸錨點(diǎn)比例生成候選區(qū)域尺寸原有尺寸重新尺寸原有尺寸重新尺寸原有尺寸重新尺寸128×12829×292:12:1181×90.541×21128×12829×291:11:1128×12829×29128×12829×291:21:290.5×18121×41256×25654×542:12:1362×18179×38256×25654×541:11:1256×25654×54256×25654×541:21:2181×36238×79512×512108×1082:12:1724×362153×76512×512108×1081:11:1512×512108×108512×512108×1081:21:2362×72476×153在只改變錨框情況下,IOU從22.95%上升到68.05%,map從原來的93.2%上升到91.3%,速度從7.38fps上升到8.26fps。雖然因?yàn)橹皇菃渭冎粰z測(cè)一類物體汽車,所以提升效果沒有十分顯著。但也可以從IOU中看出,如果種類增多的,效果會(huì)很好。表5-5YOLOv3聚類前后錨框?qū)Ρ儒^框類型錨框IOU原有錨框[[10.13.],[16.30.],[33.23.],[30.61.],[62.42.],[59.119],[116.90.],[156.198.],[373.326.]]68.24%重新聚類錨框1[[17.21.],[22.33.],[31.41.],[38.56.],[51.53.],[76.61.],[57.93.],[98.110.],[142.177.]]77.44%重新聚類錨框2[[17.22.],[21.32.],[32.46.],[41.51.],[50.73.],[59.62.],[78.78.],[92.119.],[141.162.]]77.39%重新聚類錨框3[[17.22.],[21.31.],[31.42.],[42.51.],[48.62.],[60.72.],[76.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論