版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基于深度學習的車聯網系統(tǒng)目標車輛檢測研究目錄TOC\o"1-3"\h\u269221.1選題背景及意義 2299771.2國內外相關發(fā)展趨勢 3128491.2.1車聯網國外發(fā)展現狀 3126521.2.2車聯網國內發(fā)展趨勢 4175711.3目標檢測發(fā)展現狀 4314761.3.1傳統(tǒng)目標檢測 4245931.3.2基于深度學習的目標檢測 5206672.神經網絡的基本原理及分析 5138712.1人工神經網絡 5228262.1.1人工神經網絡基本思想 6187232.1.2人工神經網絡數學模型 6137422.1.3神經網絡中常見模型 794942.2卷積神經網絡 7144542.2.1卷積層 860182.2.2池化層 8135782.2.3全連接層 9230042.2.4激活函數 9109682.3常見的卷積神經網絡 1147352.3.1LeNe-5網絡 11166142.3.2AlexNet 12261222.3.3VGGNet網絡 131093VGGNet卷積神經網絡模型的結構描述如下: 13257402.3.4ResNet網絡。 1499862.3.5MobileNets網絡 14146422.4卷積神經網絡分析 15111662.5本章小結 16308093.Faster-RCNN車輛檢測算法 1623943.1Faster-RCNN算法原理 1618373.1.1特征提取網絡 18306873.1.2RPN網絡 18126043.1.3RoIPooling 19176593.1.4全連接層 20255113.2特征提取網絡的選取 20280573.3本章小結 207264.yolov2車輛檢測算法 21151264.1Yolov1算法原理 21140464.2損失函數 22288344.3Yolov2算法原理 23112524.4本章小結 25123715.實驗及結果分析 25285825.1車輛數據集 25158825.2搭建并訓練網絡 2663235.2.1加載數據集 26139275.2.2創(chuàng)建目標檢測器 2658095.2.3數據增強 27169785.2.4訓練目標檢測器 28122645.3訓練結果分析及模型測試 28214816總結與展望 3199976.1總結 311.緒論1.1選題背景及意義隨著我國經濟的快速發(fā)展,人們生活水平的提高,汽車保有量持續(xù)增長,盡管近幾年我國汽車行業(yè)迎來的寒冬,我國每年汽車銷售量也穩(wěn)居全球第一。據公安部統(tǒng)計,2019年全國新注冊登記機動車3214萬輛,機動車保有量達3.48億輛,其中新注冊登記汽車2578萬輛,汽車保有量達2.6億輛;66個城市的汽車保有量超過了百萬輛,并且部分的一線大城市自然是不單單只是超百萬輛而已。隨著汽車的大眾化,一系列的交通問題也隨之產生,如交通擁堵現象嚴重、交通事故數量增加等,這已經成為交通管理部門重點關注的問題。這一系列問題不僅降低了人們的出行體驗,也阻滯了國民經濟的發(fā)展,造成了城市資源的嚴重浪費,并且加重了環(huán)境污染。為了從根本上改善、解決這一問題,“車聯網”被列入新的國家十三五重點建設項目的第五十四項,只有實現汽車聯網,才能對城市進行有效智能交通管理和智能出行管理。車聯網是指利用車載電子傳感裝置,通過移動通訊技術、汽車導航系統(tǒng)、智能終端設備與信息網絡平臺,通過車內網、車際網、移動互聯網,建立車與路、車與車、車與人、車與城市之間實時聯網,實現信息互聯互通,從而對車、人、物、路、位置等進行有效的智能監(jiān)控、調度、管理的網絡系統(tǒng)。提升汽車智能化水平和自動駕駛能力,實現智能交通、智能汽車、智能駕駛等。本文側重研究無人駕駛系統(tǒng)的目標車輛檢測,目標車輛檢測是無人駕駛系統(tǒng)的一個重要環(huán)節(jié)。目標車輛檢測算法已經應用于智能視頻監(jiān)控、交通分析和自動駕駛等應用中。傳統(tǒng)目標檢測方法主要是利用圖像處理技術來提取圖片內的特征,基于這些特征對其分類和識別從而實現對圖片內目標的檢測,在實際應用中的約束較多,應用比較有限。而基于神經網絡的目標檢測得益于自身強大的學習能力,使得該類算法在實際應用中更為廣泛。因此研究基于深度學習的目標檢測算法具有很高的理論與現實意義。1.2國內外相關發(fā)展趨勢1.2.1車聯網國外發(fā)展現狀目前,物聯網連接數增長十分迅速,通信模塊的價格成為了大規(guī)模應用最大阻礙。自2017年起,在招標時各家運營商給物聯網通信模塊廠商以20~40元/片不等的補貼,車聯網是能刺激產業(yè)鏈迅速成熟最有產業(yè)潛力、也是市場需求最明確的物聯網體系領域之一。車聯網在國外起步較早。在20世紀60年代,日本就開始研究車間通信。2000年前后,多個車聯網項目在歐洲和美國相繼啟動,目的是促進車間網聯系統(tǒng)的發(fā)展。2007年,包括BMW在內的6家歐洲汽車制造商成立了Car2Car通信聯盟,積極建設開放的歐洲通信系統(tǒng)標準,實現不同廠家汽車之間的相互溝通。2009年,日本的VICS車機裝載率已達到90%。而在2010年,美國交通部發(fā)布了《智能交通戰(zhàn)略研究計劃》,內容包括美國車輛網絡技術發(fā)展的詳細規(guī)劃和部署。1.2.2車聯網國內發(fā)展趨勢相比于國外車聯網產業(yè)的發(fā)展,我國的車聯網技術發(fā)展較晚,直至2009年才剛剛起步,最初只能實現一些基本功能,如導航、救援。隨著通信技術的發(fā)展,2013年國內汽車網絡技術已經能夠實現簡單的實時導航、實時監(jiān)控等通信功能。在2014-2015年,3G和LTE技術開始應用于車載通信系統(tǒng)以進行遠程控制。2016年9月,華為、奧迪、寶馬和戴姆勒等公司合作推出5G汽車聯盟(5GAA),并與汽車經銷商和科研機構共同開展了一系列汽車網絡應用場景。此后至2017年底,國家頒布了多項方案,將發(fā)展車聯網提到了國家創(chuàng)新戰(zhàn)略層面。在此期間,人工智能和大數據分析等技術的發(fā)展使得車載互聯網更加實用,如企業(yè)管理和智能物流。此外ADAS等技術可以實現與環(huán)境信息交互,使得UBI業(yè)務的發(fā)展有了強勁的助推力。未來,依托于\t"/item/%E8%BD%A6%E8%81%94%E7%BD%91/_blank"人工智能、語音識別和大數據等技術的發(fā)展,車聯網將與移動互聯網1.3目標檢測發(fā)展現狀目標檢測是一種檢測和目標物體計算機視覺和圖像處理技術。目標檢測將圖像分類和目標定位技術結合起來,從一幅圖像中檢測出一個目標或多個目標。圖像分類用于預測圖像中對象的類別。對象定位是指使用一個邊界框來定位圖像中存在的一個或多個對象。這個過程可以用于自動駕駛汽車的目標檢測,包括小汽車、卡車、行人、動物等。目標檢測不僅用于自動駕駛汽車,也應用于交通分析、智能監(jiān)控、工業(yè)自動化等領域。迄今為止,目標檢測的發(fā)展是對傳統(tǒng)方法的改進,減少了現有方法中評估步驟,也提高了效率。1.3.1傳統(tǒng)目標檢測傳統(tǒng)的目標檢測方法是利用固定的滑動窗口在圖像中從左到右、從上到下滑動,定位圖像中不同位置的對象,一般分為三個階段:區(qū)域選取、特征提取、特征分類。下面我們對這三個階段分別進行介紹。(1)區(qū)域選?。簷z測目標的位置和大小都是無法確定的,傳統(tǒng)算法通常使用滑動窗口檢測圖像中可能出現目標的位置。但是這種算法是采用不同的尺度對整張圖片進行檢測,冗余度很高。并且計算過程十分復雜。(2)特征提取:得到檢測目標的位置后,通常使用SIFI、HOG等特征提取器進行特征提取。提取的特征質量是至關重要的,它將直接影響分類的準確度。(3)特征分類:對特征提取后得到的特征進行目標分類判斷,通常使用SVM、AdaBoost等分類器。1.3.2基于深度學習的目標檢測隨著深度學習理論和技術的迅猛發(fā)展,基于機器學習的目標檢測進入了一個新的階段。傳統(tǒng)的機器學習算法框架一般屬于淺層學習范疇,對應較少的層數。深度學習則通過構建多隱層的方式來提高算法結構的深度,達到多層次網絡模型的構架,通過學習深層次的非線性網絡結構,深度學習可以實現對復雜函數的逼近,進而能更改好地對數據的本質特征進行描述,達到更高的準確度。深度學習常用的方法包括自動編碼(AutoEncoder,AE),稀疏編碼(SpaceCoding,SC)、限制玻爾茲曼機(RestrictedBolizmannMachine,RBM)、深度置信網絡(DeepBeliefNetworks,DBN)和卷積神經網絡(ConvolutionalNeuralNetwork,CNN)。卷積神經網絡作為深度學習中應用最廣泛的網絡模型之一,得到了廣泛的關注和研究。事實上,CNN是一項經典的機器學習算法,在20世紀80年代就被提出了并展開了一定的研究。但是當時計算機硬件能力有限、訓練數據也不充足,人們難以訓練出一個不產生過擬合的高性能深度卷積神經網絡模型。伴隨著計算機硬件和大數據技術的不斷發(fā)展與進步,人們也逐漸研究出不同的方法解決卷積神經網絡訓練中遇到的困難,特別是Krizhevsky等專家提出了一種經典卷積神經網絡架構,證明了深度網絡在特征提取上具有很大潛力,并在圖像識別上取得了重大突破,掀起了深度結構研究的浪潮。卷積神經網絡作為一種已經存在、有一定應用案例的深度結構,也因此回到了大眾視野中,得以進一步研究和應用。2.神經網絡的基本原理及分析2.1人工神經網絡2.1.1人工神經網絡基本思想1943年,科學家WarrenMcCullochPitts和WalterPitts提出了人工神經網絡(ArtificialNeuralNetwork,ANN)的概念,將其作為計算機模型理論的研究之一,之后逐漸將其稱為神經網絡。人工神經網絡是許多人集體智慧的結晶,人工神經網絡的方法曾經歷過起起落落,也曾經到了幾乎無人問津的狀態(tài),但是近年來卻突然受到廣泛的關注,其原因在于以人工神經網絡為理論基礎的深度學習在幾乎所有主流的機器學習領域取得了突破性進展,獲得了比深度學習之前的傳統(tǒng)算法高很多的性能。盡管深度學習在實踐中獲得了非常好的性能,但是其本質的理論基礎和人工神經網絡沒有區(qū)別。人工神經網絡的基本思想是仿生學,即對人腦的神經元運作機制進行模擬,當計算機的計算資源較低時,只能模擬人腦中為數不多的神經元進行運作,性能自然不高,而20世紀以來,計算機硬件的能力的不斷發(fā)展使得我們能模擬幾十萬甚至幾千萬神經元的運作,性能就有了明顯的提升。2.1.2人工神經網絡數學模型人工神經網絡是具有以下特性的有向圖,網絡模型如圖所示:對于每個節(jié)點i,存在一個狀態(tài)變量pi;從節(jié)點j至節(jié)點i,存在一個連接權系數wij;對于每個節(jié)點i,存在一個閾值bi;對于每個節(jié)點i,定義一個傳輸/激勵函數fi模型是將外部模型模擬為一串數字x1,x2……xm,將每個樹突對輸入的刺激加工過程模擬為以某個權重對輸入進行加權,將細胞核對輸入的處理模擬為一個帶有偏置的求和過程,最后的輸出是用激活函數對求和的結果進行非線性變化而得出,因此模型中輸入和輸出的對應關系為:。2.1.3神經網絡中常見模型人工神經網絡常見模型有前饋神經網絡和反饋神經網絡。前饋神經網絡:最早簡單人工神經網絡。在前饋神經網絡,第0層輸入,最后一層輸出,各神經元只接受上一層傳來的信息,并依次輸入到下一層,網絡中沒有反饋,單向傳播。前饋神經網絡本身結構較為簡單,是一種使用最廣泛的神經網絡模型,常見的有BP神經網絡和RBF徑向基神經網絡。反饋神經網絡:輸入層即接受外界傳來的信號,也接受網絡本身傳來的反饋信號。反饋信號可以是沒經過激活函數轉化的初始信號,也可以是經過激活函數轉化的信號。其輸入數據決定反饋系統(tǒng)的初始狀態(tài),然后系統(tǒng)經過一系列的狀態(tài)轉移后逐漸收斂于平衡狀態(tài),即反饋神經網絡經過計算后的輸出結果。反饋神經網絡比前饋神經網絡更靈活、計算能力更強。反饋神經網絡分為全反饋網絡和部分反饋網絡。2.2卷積神經網絡傳統(tǒng)的神經網絡并不適合圖像識別領域。由于一張圖片從輸入到輸出這一過程中需要大量的參數,每進行一次反向傳播計算量都是巨大的,這會耗費大量計算機資源,調參也十分復雜,所以不建議用傳統(tǒng)的神經網絡。卷積神經網絡(CNN)則可以解決以上問題。卷積神經網絡最早解決的是手寫數字識別問題,近年來卷積神經網絡才被應用于人臉識別、語音識別、物體識別等方面。卷積神經網絡其實是一個函數,有輸入和輸出,輸入就是一個二維的像素陣列,輸出的是圖像類別,無論這個圖像是經過平移、加厚、旋轉等變換依舊不會誤導計算機對圖像的判斷,具有十分強的魯棒性和抗干擾性。卷積神經網絡結構如圖所示。它主要由卷積層、池化層、全連接層構成。卷積層用來提取圖像的底層特征。池化層用來防止過擬合并將數據維度減小。全連接層用于匯總之前卷積層和池化層得到的底層圖像特征和信息。最后進行輸出,輸出可以是SOFTMAX的分類輸出,也可以是二分類的輸出。圖1卷積神經網絡結構2.2.1卷積層卷積層(ConvolutionalLayer):卷積層的目的是進行特征圖像提取。卷積是通過一個滑動窗口在特征圖上進行滑動并進行計算,它擁有局部感知和參數共享的特性。局部感知是指卷積神經網絡的每個神經元只需要關注圖像局部的感知,對圖像全局的感知可通過更高層次綜合局部信息獲得;參數共享是指每個神經元在進行卷積操作時用同樣的卷積核,這可以大大降低運算量。在實際應用中一般都是對多維的圖像進行卷積,當輸入圖像是一個彩色的RGB圖像,它就有R、G、B三個分量,卷積核的深度要與輸入特征矩陣的深度保持一致,所以也要是三維的,然后將卷積核的每一個維度放到對應的維度上進行滑動卷積,再求和就得到了一個卷積層。在卷積操作過程中,矩陣經卷積操作后的尺寸由輸入圖片的大小、卷積核的大小、步長等因素決定。深度是指在一塊區(qū)域內包含多少個神經元,即在一個區(qū)域內有多少個卷積核進行卷積運算;步長是指卷積核移動像素,即前后距離的遠近程度。2.2.2池化層池化層(PoolingLayer):池化層又稱下采樣層。從理論上,如果將卷積層得到特征集合直接用于訓練分類器,會產生大量的運算量,計算困難且容易出現過擬合的情況。池化層則可以解決此類問題,它是一種特征聚合的操作,通過對不同位置的特征進行聚合統(tǒng)計等來降低數據量,提高訓練速度,即在對圖片質量不會產生影響的情況下,對特征圖進行稀疏處理,減少參數、數據運算量。池化層沒有訓練參數,它只是在原始的特征層上進行求最大值或者求平均數,并且只改變特征矩陣的高度和寬度,并不會改變深度,一般池化核大小和步距是相同的。2.2.3全連接層全連接層(FullyConnectedLayer)。全連接層是由許多神經元共同連接得來的,在經過幾輪卷積層和池化層過濾之后,把具有較高信息含量的特征傳給全連接層進行分類,得到輸入的圖片能被分為哪一類的結果。Softmax層主要用于分類問題。2.2.4激活函數激活函數的主要作用是提供網絡的非線性建模能力。在卷積層和全連接層中都是對圖像進行線性映射。如果沒有激活函數,網絡中有再多的隱藏層也等同于和單層神經網絡。因此可以理解為,卷積神經網絡只有在加入了激活函數之后才具備了分層的線性學習能力。常用的激活函數有Sigmoid函數、tanh函數、ReLU函數、ELU函數。(1)Sigmoid曾是比較常用的激活函數。Sigmoid函數可以把輸入的連續(xù)值轉換為0到1間的數作為輸出,如果輸入是很大的負數,輸出為0,如果是很大的正數,輸出為1。近年來,用Sigmoid函數的人較少,原因是在深度神經網絡中,Sigmoid很容易導致梯度消失;它的輸出不是0均值;解析式中含有冪運算,會增加網路訓練的時間。Sigmoid數學表達式如下:Sigmoid的幾何圖像如下:tanh函數解決了Sigmoid函數輸出不是0均值的問題,但是容易導致梯度消失和解析式中存在米運算的問題還在。數學表達式如下:tanh函數幾何圖像如下:ReLu是一個取最大值的函數,計算速度和收斂速度都很快。它雖然十分簡單,存在輸出不是0均值、并不是所有神經元都會被激活的問題,但是是近幾年最常用的激活函數。數學表達式如下:Relu函數幾何圖像如下:LeakyRelu的數學表達式如下:函數幾何圖像如下:2.3常見的卷積神經網絡2.3.1LeNe-5網絡1989年,LeCun教授結合反向傳播的卷積神經網絡來識別手寫數字,并成功用于手寫郵政編碼。1990年,他們提出的模型在美國郵政總局提供的郵政編碼數字數據的結果表明,錯誤率僅為1%。1998年,他們將手寫數字識別的各種方法在標準的手寫數字識別基準上進行比較,結果表明他們的網絡優(yōu)于所有其他模型,經過多年的研究和迭代,最終發(fā)展成為LeNet-5。LeNet-5的網絡結構如圖2所示:圖2LeNet網絡結構圖第一層(C1):這一層的輸入是一個32*32的灰度圖像。該圖像通過第一個卷積層,包含6個大小為5*5、步幅為1的特征圖或過濾器。圖像尺寸將從32*32*1改變?yōu)?8*28*6。第二層(S1):它是一個具有6個大小為14*14的特征圖的平均池層。每個特征映射中的每個單元都鏈接到C1中相同特征映射中的一個2*2塊。S2有12個可訓練參數和5880個連接。生成的圖像尺寸將減少到14*14*6。第三層(C3):包含16個特征圖的卷積層,大小為5*5,步幅為1.每個特征圖中的每個單元都鏈接到不同的5*5塊,就像S2特征圖子集中的位置一樣。第四層(S4):這是一個平均池化層,池化核的大小為2*2,步幅為2.包含16張大小為5*5的featuremap。每個特征映射中的每個單元都鏈接到C3中的相同特征映射中的一個2*2塊,以及與C1和S2相同的路徑。第五層(C5):與卷積層完全鏈接,有120個特征圖。每個節(jié)點都與到S4所有節(jié)點相連。第六層(F6):全連接層,它與C5完全相連,包含10164個可訓練參數。2.3.2AlexNetAlexNet神經網絡算法是目前應用最廣泛的算法之一,可以進行與所提出方法相關的模型訓練。使用該算法,對所有圖像進行處理,并對其進行了一般的預訓練。AlexNet的網絡結構主要是由5個卷積層和3個全連接層組成,第一卷積層使用大小為11*11的卷積核,步長為4,第二卷積層使用大小為5*5的卷積核,步長為1,其余卷積層都是卷積核的大小都是3*3,步長為1。卷積之后使用ReLU激活函數建立非線性模型,池化層使用大小為3*3的MaxPooling,步長為2。在全連接層使用dropout防止過擬合。2.3.3VGGNet網絡VGGNet是牛津大學VGG團隊在2014年開發(fā)的一種卷積神經網絡模式。VGGNet模型在2014年ILSVRC中獲得第二名。該模型具有優(yōu)秀的特征提取能力。圖3VGG網絡結構圖VGGNet卷積神經網絡模型的結構描述如下:網絡模型的輸入為224*224RGB圖像,均經過處理。網絡模型一共有13個卷積層,5個最大池化層,3個全連接層和Softmax分類器。卷積層的卷積核大小為3*3,步長為1,兩個或三個卷積層連續(xù)堆疊形成一個模塊池化層使用MaxPooling,但并不是所有的卷積層都有池。分層窗口為2*2,步長為2,即采用非重疊池。該網絡模型經過13層卷積后具有ReLU激活功能。為了防止網絡過擬合,網絡模型在第一和第二全連接層后采用dropout技術。VGGNet使用SoftMax分類器進行最終的圖像分類。VGGNet網絡提取圖像特征效果很好。但他也有以下缺點:VGGNet網絡層數較多,在訓練過程中需要大量的訓練數據;VGGNet網絡參數較多,網絡需要較大的存儲空間,訓練花費時間相對較長;由于提取的特征值不夠,訓練后的VGGNet網絡的手勢識別率較低。2.3.4ResNet網絡。ResNet(殘差神經網絡)由微軟研究院的何凱明等4名華人于2015年提出,ResNET在五個主要任務軌跡中都獲得了第一名的成績:ImageNet分類任務,錯誤率3.57%;ImageNet檢測任務,超過第二名16%;ImageNet定位任務,超過第二名27%;COCO檢測任務,超過第二名11%;COCO分割任務,超過第二名12%。在ResNet網絡提出之前,卷積神經網絡是通過一系列卷積層和下采樣層堆疊得到的,當卷積網絡不斷加深時,在進行反向傳播求偏導數時會出現梯度消失或者梯度爆炸問題,這將導致模型訓練時難以收斂,最終導致網絡退化,所以即使加深卷積神經網絡也不能提高網絡性能。所以ResNet的研究者提出了殘差結構,它可以減輕網絡退化的問題,效果十分突出,而且容易結合到其他網絡結構中。殘差結構通過恒等映射結構在輸入和輸出之間建立一種直接連接,若要繼續(xù)新增一層網絡,只需要在原先的輸入層的基礎上來學習新的特征,這樣讓網絡學習會更加容易。同時通過理論分析可以得出,即使網絡達到最優(yōu)狀態(tài)后繼續(xù)加深網絡也不會降低網絡性能而只會處于最優(yōu)狀態(tài)。而且使用殘差結構后的網絡在同等深度下參數數量遠遠少于VGG等網絡。2.3.5MobileNets網絡MobileNets是一種針對嵌入式提出的輕量級的深度卷積神經網絡。對于一些嵌入式平臺應用比如機器人與自動駕駛,由于它們擁有的硬件資源有限,所以就需要一種輕量級、低延時、精度可接受的網絡模型。深度可分離的卷積主要是通過實現對網絡參數量壓縮達到縮短運行時間的效果。深度可分離的卷積與傳統(tǒng)的卷積有所不同,它可以分解為一個深度卷積與一個1*1的卷積。如圖2-21,2-22為深度可分離卷積的兩個實現過程。其中圖2-21為深度卷積過程,圖2-22為1X1的卷積過程。圖2-21中假設輸入為三通道圖像,則在進行深度卷積時同樣需要一個N*N*3的卷積核分別對三通道圖像進行卷積操作。因為是對每個通道單獨卷積,所以卷積后的輸出也同樣為三通道特征圖像。假設輸入特征圖像尺寸為12*12*3,卷積核尺寸為3*3*3,Stride為1。則輸出特征圖像尺寸為1O*10*3。該深度卷積過程共進行了1*3*3*3*10*10=2700次乘法運算。如2-22圖所示為深度卷積后的輸出特征圖像與1*1的卷積核進行卷積的過程,輸出為N*N*1的特征圖像。假如想要獲得多維特征圖像,只需要使用多個該卷積核即可。假設想要獲得256維的特征圖像,則該過程進行了256X1X1X3X10X10=76800次乘法運算。所以對于一次可分離卷積總共進行了79500次乘法運算,而進行一次傳統(tǒng)卷積獲得同樣結果需要進行691200次乘法運算??梢钥闯錾疃瓤煞蛛x的卷積計算量約為傳統(tǒng)卷積的1/9,所以該方法能降低模型對硬件資源的要求并且提高模型運行速度。2.4卷積神經網絡分析卷積神經網絡因其強大的學習能力在計算機視覺任務中取得重要成就。對于實現簡單的分類任務,比如數字手寫體分類只需要3層卷積層即可達到高準確率。但隨著任務復雜度不斷提高,小規(guī)模網絡就不能達到要求,首先想到的方法就是不斷堆疊網絡層數來增強網絡學習能力,同時為了讓原圖像素信息最小化損失而采用多個小卷積核來代替一個大卷積核來獲得同樣大小的感受野。這一方法在網絡層數不深時能解決所遇到的問題,但如果只是單純加深網絡層數又會帶來模型退化、網絡訓練不易收斂等問題。所以有學者提出可以采用殘差塊結構來加深網絡深度,因為這一結構使得網絡層數在達到數百層的同時還保證了模型不會退化。一般而言,低層次網絡會提取目標的輪廓、顏色等淺層信息,而高層網絡能學習到目標的高層語義信息。對于圖像分類、目標檢測,如果能在高層網絡融合低層信息將有助于提高模型準確率。網絡深度越深,參數數量自然就越多,參數多帶來的結果是耗時、對硬件設備要求高。本文將采用參數數量更少的殘差網絡結構網絡來代替目標檢測中的ZF或者VGG16網絡,以達到減少參數的效果。2.5本章小結本章主要介紹了卷積神經網絡的基本原理以及分析了網絡深度對模型的影響。首先介紹了卷積神經網絡的主要結構和每個結構對圖像的作用,隨后介紹了目標檢測中所使用的幾個常用的高性能網絡,接著又分析了網絡深度的發(fā)展進程以及在網絡深度不斷加深所帶來的問題和如何解決這個問題,進而引出可以利用參數數量更少的網絡來代替目標檢測網絡中部分網絡結構以加快模型運行時間。3.Faster-RCNN車輛檢測算法3.1Faster-RCNN算法原理Faster-RCNN是一個具有代表性的深度卷積神經網絡得的目標分類算法,是R-CNN系列算法的第三代。FasterR-CNN的出現將目標檢測的候選區(qū)域生成、特征提取、分類、位置精修統(tǒng)一到了一個深度網絡的框架之內。FasterR-CNN基本結構如圖4所示。整個FasterR-CNN分為四個部分:特征提取網絡、候選檢測框生成的網絡RPN、RoIpooling、Classsifier。特征提取網絡:共享卷積CNN作為FasterR-CNN和RPN的前端網絡,需要通過深度卷積計算來提取圖像的特征圖。該特征圖被共享用于后續(xù)區(qū)域候選網絡層和全連接層。目前使用的主流網絡有VGG16和ResNet。本文采用ResNet-50模型提取圖像特征給RPN和ROI網絡。圖4ResNET網絡結構圖RPN(RegionProposalNetwork,區(qū)域候選網絡)。rpn是fasterR-cnn中最重要的改進。它的主要功能是生成區(qū)域候選(RegionProposal)。通俗來說,區(qū)域候選框可以看做是許多潛在的包含4個坐標的邊界框(anchor)。在目標檢測之前,網絡并不知道圖片中存在多少個目標物體,所以rpn通常會預先在原圖上生成若干個邊界框,并最終輸出最有可能包含物體的anchor,也稱之為區(qū)域候選,訓練階段會不斷的調整區(qū)域候選的位置,使其與真實物體框的偏差最小。RoIPooling。該層是根據輸入的特征圖和候選區(qū)域提取特征信息送入全連接層,對目標進行分類。區(qū)域候選網絡中特征圖會產生大小不一致的候選區(qū)域,而在FasterR-CNN中,之后的分類網絡輸入尺寸固定為7*7.所以都用7*7的網格覆蓋原區(qū)域的每一個網格一堆任意大小的輸入,而后在新生成的區(qū)域上取到原覆蓋區(qū)域內的最大值。這樣就會是任意大小的Proposals都能被polling成了7*7的大小。Classification。利用候選區(qū)域和特征那個圖,通過全連接層與Softmax分類器計算候選區(qū)的類別,同時利用boundingboxregression獲得每個候選區(qū)的位置偏移量,獲得檢測框最終的精確位置。3.1.1特征提取網絡特征提取網絡利用CNN對輸入的圖片進行特征提取,提取特征的卷積網絡可以是任何一個能學習圖像特征得到特征圖的網絡結構。特征提取網絡參數過多,所以一般會采用一些已經被廣泛使用的網絡結構。特征提取網絡所提取的特征圖、質量會直接影響到RPN網絡、Classsifier的性能,因為生成的特征圖像將被分別送到RPN模塊生成目標候選區(qū)和RoIpooling、Classifier中進行目標分類以及目標位置回歸。特征提取模塊對整個卷積網絡起到關鍵性作用,決定著整個網絡的性能好壞。目前使用的主流網絡有VG16和ResNet,ResNet網絡的殘差模塊在輸入和輸出之間建立的直接連接可以解決退化問題,所以本文采用ResNet50結構來提取圖像的特征。ResNet網絡殘差模塊結構如圖5所示。圖5殘差模塊結構3.1.2RPN網絡在RCNN與FastR-CNN等目標檢測算法中,通常都是用傳統(tǒng)的SelectiveSearch方法來提取候選框,這種方法比較耗時。RPN專門用來提取候選框,一方面RPN耗時少,另一方面RPN可以很容易結合到FastRCNN中,RPN的引入,可以說是真正意義上把物體檢測整個流程融入到一個神經網絡中。RPN首次出現是在FasterRCNN算法中,它的作用是用來提取候選框,其本質就是使用滑動窗口在最后的卷積層上滑動。RPN網絡可以是任意大小的圖片作為輸入,輸出一批矩形區(qū)域的候選框,每個區(qū)域對應一個目標的現有概率得分和位置信息。RPN網絡將特征提取產生的公共FeatureMap作為輸入經過slidingwindow處理,slidingwindow可以看作是兩次3*3和5*5的卷積操作,將得到一個與輸入特征圖尺寸、大小都相同的256維特征圖。最后通過錨點(Anchors)生成若干個區(qū)域候選框輸入到RoIpooling、Classifier中進行目標分類和位置回歸。
圖6RPN網絡結構圖3.1.3RoIPoolingRoI(RegionOfInterest)是從目標圖像中識別出的候選識別區(qū)域。在Faster-RCNN中,候選識別區(qū)域(ROIs)是把從RPN(RegionProposalNetwork)產生的候選識別框映射到FeatureMap上得到的。
RoIPooling的作用就是把大小形狀各不相同的候選識別區(qū)域歸一化為固定尺寸的目標識別區(qū)域。RoIPooling不同于CNN網絡中的池化層,它通過分塊池化的方法得到固定尺寸的輸出。
假設ROIPooling層的輸出大小為w2*h2,輸入候選區(qū)域的大小為w*h,ROIPooling的過程如下:
(1)把輸入候選區(qū)域劃分為w2*h2,大小的子網格窗口,每個窗口的大小為(w/w2)*(h/h2)
(2)對每個子網格窗口取最大元素作為輸出,從而得到大小為w2/h2的輸出。3.1.4全連接層經過RoIPooling層之后,batch_size=300,proposalfeaturemap的大小是7*7、512-d,對特征圖進行全連接,參照圖7,最后同樣利用SoftmaxLoss和L1Loss完成分類和定位。圖7全連接層通過fullconnect層與softmax計算每個regionproposal具體屬于哪個類別(如人、馬、車等),輸出cls_prob概率向量;同時再次利用boundingboxregression獲得每個regionproposal的位置偏移量bbox_pred,用于回歸獲得更加精確的目標檢測框。3.2特征提取網絡的選取一般而言,卷積神經網絡深度越深,網絡所學習到的特征就越多,應用到圖像分類或者目標檢測時獲得的結果越準確。然而事實并不是如此,隨著網絡的加深,出現了訓練集準確率下降的問題,可以確定這不是由于過擬合所導致的,但隨著網絡深度的不斷加深,參數數量也會急劇上升,訓練性能將惡化。為了解決這一問題,ResNet網絡再2015年被提出.本文所選取的特征提取網ResNet50。3.3本章小結本章主要介紹了Faster-Rcnn的網絡結構以及分析了各個模塊的功能,分析每個模塊所具有的特點以及作用。首先介紹了Faster-Rcnn中包含的四個模塊的結構、功能以及所選取的特征提取網絡,隨后介紹了選擇ResNet特征提取網絡的原因。4.yolov2車輛檢測算法Yolo系列算法屬于OneSTAGE深度學習目標檢測算法的一種。相對于Faster-RCNN系列算法,Yolo系列算法更加徹底的貫徹了采用直接回歸的方法獲取到當前需要檢測的目標,不需要更加復雜的設計過程以及目標類別的一種思想。Yolo算法是在2015年被提出的,再2017年作者JoseRedmon和AliFarhadi又提出了對這個算法的改進即yolov2。Yolov1算法原理Yolov1是一種基于直接回歸的目標檢測算法。Yolov1算法原理是把每張圖像分成S*S格(cell)。在圖像上,物體的中心落在哪個格子,此格子就負責預測那一個物體。每一個格子需要預測B個邊界框(boundingbox),給出該預測框的置信度(confidence)和C個類別概率。Boundingbox實際上是一個四維向量(x,y,w,h)。(x,y)是指所生的物體邊框中心坐標,(w,h)是指所生成的boundingbox的寬和高。在目標分類中,還需要預測C個目標類別的概率,它表示該網格邊界框中的檢測目標屬于各個類別的概率,不過這是一個條件概率,記成:。根據類別概率可以得到boundingbox類別的置信度,各個boundingbox類別的置信度計算公式如下:置信度包含了兩個方面;一是這個邊界框是否含有物體的概率,二是這個生成框和真是物體的叫交并比。當該被檢測目標不存在當前boundingbox中,Pr(object)=0,當被檢測目標存在當前boundingbox中,Pr(object)=1。計算公式如下: YoloV1的模型結構基礎也是基于卷積神經網絡,包括輸入層、卷積層、池化層和全連接層。YOLOV1結構圖如下:4.2損失函數YOLO算法采用損失函數為平方誤差函數,目的是讓預測邊界框中心坐標值、預測邊界框的寬和高、置信度以及分類概率四個部分達到更好的平衡。關于物體邊框損失函數(LossFuction)計算公式如下:其中,、代表已標注的bbox的中心點坐標,、代表已關注的bbox的長與寬。關于置信度的損失函數如下:。置信度損失函數不僅與含有檢測目標的boundingbox的置信度有關,也與不含檢測目標的boundingbox的置信度有關。其中NOOBJ代表不包含檢測目標的boundingbox的置信度,目的是平衡過多的“非物體”cell。關于分類概率的損失函數計算公式如下:
綜上所述,損失函數的表達式:4.3Yolov2算法原理Yolov2算法是在yolov1算法上的改進,yolov1目標檢測算法雖然在速度上已經達到了要求,但是準確度還不夠高,對擁擠物體、小物體檢測度不好。Yolov2基于這些問題做了改良,網絡結構如下:(1)首先引入BN層歸一化處理(BatchNormalization,BN)的本質原理是在網絡的每一個卷積或池化層后,又插入了一個歸一化層,也就是先做一個歸一化至均值0、方差為1的處理,然后再進入網絡的下一層。YOLOV2算法引入批量歸一化處理,有助于改善流經網絡的梯度、對正則化的依賴,并且減少過擬合現象。在YOLOV2中,用每一層卷積層后面用批量歸一化代替隨機篩選(Droput)操作后,平均檢測精度直接提升了2%。(2)AnchorBoxYOLOV1算法是將輸入圖分成7*7的網格,每個網格預測2個邊界框,它包含全連接層,也能直接預測出邊界框的坐標值,但也會導致丟失較多的信息,定位精度較低。YOLOV2移除了FC(fullyconnection)層和最后一個Pooling層,引入了AnchorBox預測boundingbox。這樣做提高了對特征圖的分辨率,并且將448*448的網格大小替換成416*416的,也就意味著每個特征圖在劃分單元格的時候會只有一個中心單元格。因為對于大多數檢測目標,特別是大目標,更傾向于占據圖像的中心位置,一個中心單元格相較于四個相鄰的單元格,則能更好的預測目標的位置。AnchorBox是預設好的虛擬邊框。Yolov2算法通過預測AnchorBox的偏移度與置信度,即訓練樣本是以真實邊框的位置相對于預設邊框的偏移來構建的,預設邊框先“框”出檢測目標的大概位置,然后在框出的位置上在進行調整。(3)高分辨率模型現在一般的目標檢測方法都會先在Imgnet上預訓練分類器,然后進行檢測,但自AlexNet開始,大多數分類器輸入一般都低于256*256。YOLOV1預訓練的輸入圖像尺寸是224*224,然后檢測的輸入尺寸是448*448,這導致網絡還需要適應分辨率變化。在YOLOv2中,用尺寸是448*448的ImageNet數據集微調分類網絡的10個迭代周期,使得網絡可以適應高分辨率的輸入圖片。然后繼續(xù)用高分辨率圖片微調監(jiān)測網絡,在原論文中,作者提到這樣做能夠將mAP提高接近4個百分點。細粒度特征在主干網絡提取特征是分淺層、中層、深層。對于淺層特征而言,一般情況下對應的圖像的物理信息,即直線、邊緣、角、點等信息。中層特征是對淺層特征更高維的抽象,可以理解為把一些特殊的形狀單元拼接在一起形成簡單的圖像。高層特征繼續(xù)在中層特征的基礎上進一步的抽象融合,在高層特征的時候會出現很明顯的具有語意性的特征。特征映射經過此處理過程會丟失很多細粒度特征,這會影響網絡對小目標的檢測效果,因此研究者引入了passthrough層。把23*23*512的特征圖,經過passthrough層轉化成大小為13*13*2048的特征圖,這樣就可與原來的特征圖相連形成13*13*3027的特征圖,對小目標的識別起到了很好的效果。(4)多尺度訓練在網絡訓練過程中,如果只有一個輸入尺寸,可能會出現大的圖像被縮小化的情況,這種情況就意味著我們沒有在訓練的時候就出現了信息的流失,這是不愿意被看到的情況。YOLOv2算法針對這一問題初試多尺度。多尺度訓練是并不把所有的圖像都歸到同一個大小的訓練,而是橫跨不同的精度訓練,它能夠幫助網絡適應不同大小的圖像。在YOLOV2的網絡中移除了全連接層,僅包含卷積層和池化層,網絡對輸入的特征映射大小要求降低,這也就意味著網絡能夠陳承接住滿足為網絡下采樣32的倍數的特征映射,提升了魯棒性。因此在YOLOV2網絡可以訓練不同尺度的圖片。由于引入了多尺度訓練,濾波器需要學習多尺寸的特征,YOLOV2算法的平均檢測精度值也得到了很大的提升。本網絡模型是以ResNet為特征提取的神經網絡和yoloV2進行分類的神經網絡。使用ResNet是為了更好的創(chuàng)建一個神經網絡進行特征提取過程。4.4本章小結本章主要介紹yolov1的算法原理以及yolov2在yolov1上的改進,yolov1目標檢測算法雖然在速度上已經達到了要求,但是準確度還不夠高,對擁擠物體、小物體檢測度不好,Yolov2基于這些問題做了改良。5.實驗及結果分析5.1車輛數據集一個高質量的數據集對于深度學習目標檢測任務是十分關鍵的,數據集的質量會對算法訓練的最終效果造成一定程度上的影響,所以使用一個高質量且豐富的數據集是十分有必要的。在目前開源的數據集中,關于車輛檢測的數據集有很多。本實驗選擇常見的大型開源數據BDD100K。BDD100K數據集大約10G,是一個十分常用的大型、多樣化自動駕駛數據集,其標注類別包含公交車、自行車、貨車、汽車、火車、行人和騎手等超過100,000張圖像,用于目標檢測、全幀分割等。由于數據集的數據量很大,訓練模型時會花費較長的時間,因此本實驗只選擇使用BDD100K中的驗證集“bdd100k_val”文件夾下的數據用于訓練,不選擇全部數據。并且為了MATLAB能夠方便處理“bddk100k_val”,從原數據集的標注文件“bdd100k_labels_images_val.json”文件中抽取了小汽車的類別重新寫入到mat文件中。篩選和處理部分圖片后,標注文件的信息包括圖片路徑和標注框的坐標。5.2搭建并訓練網絡5.2.1加載數據集首先下載處理好的數據集,在carDataset中可以查看數據信息。其次,需要指定每張圖片的絕對路徑,以方便讀取。將數據集分成訓練集和測試集兩部分,用來訓練和評估檢測器。本實驗用70%的數據訓練檢測器,30%的數據用于評估檢測器。將劃分出的訓練和驗證數據集數據和標簽進行轉存,聯合文件路徑和真實框,整理訓練和測試集。顯示標注圖像如下圖10所示:圖10標注圖像5.2.2創(chuàng)建目標檢測器搭建目標檢測網絡時,FasterRCNN和YOLOv2目標檢測算法在特征提取時都選擇預訓練的ResNet50網絡。當然還可以使用其他經過預訓練的網絡,本實驗根據實驗設備和問題的復雜程度選擇ResNet50。yolov2的檢測網絡相比于特征提取網絡是一個小的卷積神經網絡,它由一些卷積層和YOLOv2特有的層組成。MATLAB中提供了yolov2Layers和FasterRCNNlayers函數,函數中給定了預訓練的ResNet-50特征提取網絡,可使用該功能自動創(chuàng)建FasterRCNN和YOLOv2對象檢測網絡。開始訓練之前需要調整訓練數據的大小以估計錨框。MATLAB中提供了可以根據訓練數據中對象的大小來估計錨框estimateAnchorBoxes函數。根據transform函數預處理的訓練數據,然后確定錨框個數并估計錨框。使用內置的函數preprocessData將訓練圖像數據調整為網絡規(guī)定的輸入大小。設置ResNet50特征提取層網絡,選擇‘activation_40_relu’作為特征提取層。該特征提取層輸出的特征圖經過16倍下采樣,這樣的下采樣量算是空間分辨率與所提取特征強度之間的一個折中,因為經過網絡提取的特征可能會在網絡上顯示出更強的圖像特征。一般地,空間分辨率的成本以及選擇最佳特征提取層需要依據經驗分析。5.2.3數據增強數據增強是在訓練過程中隨機轉換原始數據來提高網絡訓練的準確性。數據增強無需增加實際標記的訓練樣本的數量,就可以大大擴充訓練集的大小??墒褂胻ransform通過隨機水平翻轉圖像和關聯的框標簽來增強訓練數據。值得注意的是,理想情況下測試和驗證數據應盡可能代表原始數據,未作修改的數據可以較好地評估模型,因此數據擴充不適用于測試和驗證數據。預處理訓練數據:預處理數據增強后的數據,準備進行訓練。然后讀取預處理的訓練數據,這里顯示一張?zhí)幚砗蟮膱D像并標注邊界框。可視化增強后的圖11如下:圖11可視化增強后圖片5.2.4訓練目標檢測器訓練目標檢測器時使用trainingOptions容器指定網絡的訓練參數,設置‘ValidationData’作為預處理的驗證數據;設置‘CheckpointPath’為一個臨時位置,這樣能夠保證在訓練過程中及時保存訓練的結果,如果訓練因電源中斷或系
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026上海瑞金醫(yī)院重癥醫(yī)學科醫(yī)療崗位招聘參考考試題庫附答案解析
- 2026湖北武漢東風汽車集團股份有限公司商用車事業(yè)部招聘備考考試試題附答案解析
- 2026年度淄博高新區(qū)事業(yè)單位面向退役大學生士兵公開招聘綜合類(專項)崗位工作人員備考考試題庫附答案解析
- 2026年福建南安市城鄉(xiāng)水務集團有限公司招聘30人備考考試試題附答案解析
- 2026廣東廣州市華南理工大學醫(yī)院合同制人員招聘2人備考考試題庫附答案解析
- 班組級安全生產檢查制度
- 2026中國通號招聘3人(辦公室、戰(zhàn)略投資部)備考考試試題附答案解析
- 生產部門集中辦公制度
- 生產企業(yè)監(jiān)控室管理制度
- 清潔生產監(jiān)管制度
- 湖南省益陽市2024-2025學年高一(上)期末考試物理試卷(含答案)
- 自愿退出豁免協(xié)議書范文范本
- 重慶市配套安裝工程施工質量驗收標準
- 機器人實訓室規(guī)劃建設方案
- 綜合布線辦公樓布線方案
- 鞍鋼檢驗報告
- 河南省信陽市2023-2024學年高二上學期期末教學質量檢測數學試題(含答案解析)
- 北師大版七年級上冊數學 期末復習講義
- 2023年初級經濟師《初級人力資源專業(yè)知識與實務》歷年真題匯編(共270題)
- 氣穴現象和液壓沖擊
- 公民健康素養(yǎng)知識講座課件
評論
0/150
提交評論