国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

目標檢測算法及其在無人駕駛領域應用研究

2021-06-16 05:29張舒瑞
電子制作 2021年4期
關鍵詞:卷積無人駕駛神經網絡

張舒瑞

(江蘇省新海高級中學,江蘇連云港,222000)

0 引言

無人駕駛作為當今人工智能領域的頭號研究目標,其廣闊的應用前景使其受到世界各國的強烈關注。人們對于無人駕駛的遐想早已在19世紀20年代便初現端倪,那時因為還不存在人工智能的概念,人們將無人駕駛的定義僅僅局限于用無線電對其進行操控。直到半個世紀過后,智能駕駛邏輯算法的問世方才突破此領域中的瓶頸,從而對實現無人駕駛邁出關鍵性的一步。無人駕駛最受爭議的部分就是安全問題,而安全問題大部分基于對路況和突發(fā)情況的判斷,這時讓汽車擁有獨立的“思想”就尤為重要,其中目標檢測算法更為關鍵,只有擁有了成熟的目標檢測算法才可以讓無人駕駛這一技術達到更安全的保障[1]。而深度學習技術則推動了目標檢測算法的不斷進步,使無人駕駛技術在商用領域取得了重大進展和突破。

1 目標檢測技術

目標檢測屬于計算機視覺中的一個子問題。目標檢測技術主要目的是找出圖像中感興趣的物體,包含物體的定位和分類兩大任務,即同時確定物體的類別和物體的位置。因此目標檢測任務可分為兩個子任務:目標分類和目標定位。目標分類任務負責判斷輸入圖像或所選擇圖像區(qū)域中是否有感興趣類別的物體出現,輸出一系列帶分數的標簽表明感興趣類別的物體出現在輸入圖像或所選擇圖像區(qū)域中的可能性[2]。目標定位任務負責確定輸入圖像或所選擇圖像區(qū)域中感興趣類別的物體的位置和范圍,輸出物體的包圍框、或物體中心、或物體的閉合邊界等,通常使用方形包圍盒,即Bounding Box用來表示物體的位置信息。目標檢測示意圖如圖1所示。

圖1 目標檢測示意圖

■1.1 目標分類任務

圖像分類主要采用統(tǒng)計機器學習中的有監(jiān)督學習方法,通過主動的喂給計算機關于某些特定標簽的數據,并建立模型、策略、算法的統(tǒng)計機器學習三要素[3],實現對物體的識別過程。經典的二分類方法主要使用Logistic Regression進行圖像分類,其算法流程如下:

首先需要將圖像數據進行預處理,圖像在計算機中以三原色的方式存儲,通過數據的拼接將單一圖片由[p_x,p_y,3]轉變?yōu)閇p_x*p_y*3,1]的一維向量。同時為每一個訓練數據指定其標簽,即物品的分類結果。

其次,在機器學習領域中,邏輯斯蒂回歸(Logistic Regression)可以用來實現分類操作,它可以看做一個沒有隱藏層的簡單神經網絡。通過建立線性部分WTX+b,其中W為各節(jié)點的權重、b為偏置,并對線性部分的計算結果添加非線性的激活函數Sigmoid,從而實現對數據的更高維度的擬合,比如二次項等。最終建立的預測模型為[4]:

隨后,在建立了模型的基礎上,指定模型擬合評價的策略即損失函數,該部分用來衡量參數W和b對模型擬合的效果。

最后,制定優(yōu)化損失函數的算法,較為常用的方法是梯度下降法。通過不斷更新參數,從而實現模型的最優(yōu)化,最終得到參數W和b。

圖2 邏輯回歸算法示意

圖3所示的貓分類就是典型的分類算法,通過將圖像進行預處理和向量化,輸入到模型中,最后模型的輸出結果就是圖片為貓的置信度。

圖3 圖片分類示意圖

■1.2 目標定位任務

目標定位即準確的輸出目標所在的位置,二維的物體可以使用輸出目標的所在區(qū)域的(x,y)方框來實現。目標定位任務所要預測的結果是一個連續(xù)的點,因此可將其看作一個典型的回歸任務。

圖4 目標定位坐標

將其看做回歸問題,我們需要預測出(x,y,w,h)四個參數的值,從而得出方框的位置。

基于傳統(tǒng)的機器學習算法進行分類和回歸問題時,當圖片輸入維度較大時,會導致參數數量的劇增,尤其是傳統(tǒng)算法普遍使用全連接的方法,只能使用較淺的層次進行學習。在此基礎上,逐漸發(fā)展而來的卷積神經網絡、反向傳播等算法降低了參數量和參數計算的復雜度,從而實現了更深層次的模型,從而可以模擬更復雜的模型,實現更高的精度。

2 深度學習與卷積神經網絡

■2.1 深度學習的概念

深度學習是機器學習的子集,主要使用人工神經網絡來妥善解決計算機網絡視覺效果、自然語言處理、自動語音辨識等等關鍵問題。

深度學習器由若干處理層組成,每層包含至少一個處理單元,每層輸出為數據的一種表征,且表征層次隨處理層次增加而提高。深度的定義是相對的。針對某具體場景和學習任務,若學習器的處理單元總數和層數分別為M和N,學習器所保留的信息量或任務性能超過任意層數小于N且單元總數為M的學習器,則該類學習裝置為嚴格的或是狹義的深度學習裝置,其對應的設計、訓練以及使用方式集合為嚴格的或是狹義的深度學習。

■2.2 深度學習和卷積神經網絡

卷積神經網絡(CNN)是一類包括卷積運算且有著深度內部結構的前饋神經網絡,是深度學習的代表算法之一。卷積神經網絡有著表征學習能力,通過疊加深層次的網絡,能夠擬合較為復雜的模型。

深度學習的概念起源于人工神經網絡,本質上是指一類對具有深層結構的神經網絡進行有效訓練的方法。神經網絡是一種由許多非線性計算單元(或稱神經元、節(jié)點)組成的分層系統(tǒng),通常網絡的深度就是其中不包括輸入層的層數。

卷積神經網絡用于通過將原始圖像通過層轉換為類分數來識別圖像。CNN的靈感來自視覺皮層。每當我們看到某些東西時,一系列神經元被激活,每一層都會檢測到一組特征,如線條,邊緣。高層次的層將檢測更復雜的特征,以便識別我們所看到的內容。

深度學習CNN模型進行訓練和測試,每個輸入圖像將通過一系列帶有卷積核,Pooling,全連接層(FC)的卷積層并通過Softmax函數對目標的概率值的對象進行分類。

卷積神經網絡分為多層結構:

(1)輸入層(即訓練數據):輸入圖層或輸入體積是具有以下尺寸的圖像:[寬x高x深]。它是像素值的矩陣。

圖5 RGB矩陣

(2)卷積層:卷積是從輸入圖像中提取特征的第一層,Conv層的目標是提取輸入數據的特征。卷積通過使用小方塊輸入數據學習圖像特征來保持像素之間的關系。

圖6 卷積

(3)Stride:Stride是輸入矩陣上的像素移位數。 當步幅為1時,我們將濾波器移動到1個像素。 當步幅為2時,我們一次將濾鏡移動到2個像素,以此類推。

(4)Padding(填充):有時卷積的滑動幅度不一定適合輸入圖像。我們有兩種選擇:用零填充圖片(零填充)以使其適合;刪除濾鏡不適合的圖像部分。

圖7 步幅

(5)激活函數(ReLu):ReLU代表整流線性單元,用于非線性操作。輸出是?(x)=max(0,x)ReLU的目的是在我們的卷積操作中引入非線性。 因為,現實世界的真實模型往往是復雜的非線性模型。

還可以使用其他非線性函數,例如tanh或sigmoid代替ReLU。大多數數據科學家使用ReLU,因為ReLU的性能明顯比其他兩個更好。

(6)池化層:池化層部分將減少圖像太大時的參數數量。空間池化也稱為子采樣或下采樣,它降低了每個圖片映射的維度,但保留了重要信息。空間池化可以是不同類型的:最大池化;平均池化;總和池化。

圖8 空間池化

(7)全連接層:我們稱之為FC層,我們將矩陣展平為矢量并將其饋入神經網絡的全連接層。

在圖9中,特征映射矩陣將被轉換為矢量(x1,x2,x3,...)。通過全連接層,我們將這些功能組合在一起以創(chuàng)建模型。最后我們通過一個激活功能,如softmax或sigmoid,將輸出分類為貓,狗,汽車,卡車等。

圖9 全連接

圖10就是通過卷積神經網絡進行圖像分類的過程。

圖10 圖片分類

上述神經網絡的尾部展開,也就說CNN前面保持不變,對CNN的結尾處作出改進:加了兩個頭:“分類頭”和“回歸頭”,這樣就能實現一個主干網絡進行多目標學習,即classification + regression模式。

圖11 目標分類 + 位置檢測

3 數據準備與模型訓練

本論文采用PASCAL VOC 數據集,共使用20類目標分類,包含person、car、bicycle、bus等關鍵目標,樣例數據如圖12所示。

圖12 voc數據樣例

標簽文件采用xml格式的標注文件,數據標注樣例如圖13所示。

圖13 voc數據標注樣例

本文主要采用YoloV3算法,YOLOv3算法的主體結構是一個龐大的卷積神經網絡[5],YOLOv3原理圖如圖14所示。YOLOv3網絡的輸入層接收416×416的輸入圖像,網絡中有代碼體現出來的網絡層次共計252層(統(tǒng)計包括用于構建res_block塊的add層)。從第0層到75層被統(tǒng)稱為darknet-53的部分共含有53層卷積層以及23層殘差層。這一部分網絡結構不是對darknet-19的簡單加深,而是引入了殘差網絡的跳層連接思想[6],從76到105層是YOLOv3的特征交互和輸出層,這一部分舍棄了全連接層轉而通過連續(xù)的1×1和3×3卷積核實現局部特征交互,作用類似于全連接層,但全連接層實現的是全部像素的全局特征交互。

圖14 YOLOv3原理圖

神經網絡訓練部分程序如圖15所示。

圖15 模型訓練部分程序

神經網絡訓練完成后,在測試集上對算法的性能進行測試,并最終對網絡實時視頻檢測性能進行測試。采取的思路是先捕獲實時視頻流,從中依次截取出每一幀圖像,再調用訓練好的YOLOv3網絡的單張圖像檢測的函數對每幀圖像檢測目標。單張圖像檢測部分程序如圖16所示。

圖16 圖片檢測驗證代碼截圖

4 應用領域及展望

隨著圖像分類精度在某些領域達到了超越人類的水平,其應用價值也得到了廣泛的認可從而應用在諸多領域。無人駕駛汽車在行駛過程中需要對周圍的物體進行精確的識別,從而區(qū)分哪些是障礙物、哪些是行人,同時需要對行車指示牌等進行精確的劃分,從而為駕駛決策提供支持??梢灶A見,高精度的圖像分類技術將廣泛應用在無人駕駛領域中??傊ㄟ^將深度學習算法運用于無人駕駛中的目標檢測算法,將會大大提升目標檢測精度及進一步加速無人駕駛技術的成熟。并結合其他傳感技術,增強無人駕駛汽車的感知能力,這也就大大增加了無人駕駛汽車的安全性能,只有這樣才能夠推動無人駕駛技術的盡快落地運行。

本文通過對目標檢測算法的闡述,并運用傳統(tǒng)機器學習算法和深度學習方法進行訓練和驗證,對目標檢測算法進行了原理和實際驗證。在訓練過程中,存在著數據歸一化、過擬合等問題,后續(xù)將對參數初始化、正則化等有助于提高訓練速度、防止過擬合的問題展開研究,從而實現更好的對圖像數據進行分類。

猜你喜歡
卷積無人駕駛神經網絡
基于全卷積神經網絡的豬背膘厚快速準確測定
基于FPGA的卷積神經網絡加速優(yōu)化方法
基于神經網絡的船舶電力系統(tǒng)故障診斷方法
基于人工智能LSTM循環(huán)神經網絡的學習成績預測
基于圖像處理與卷積神經網絡的零件識別
MIV-PSO-BP神經網絡用戶熱負荷預測
戰(zhàn)“疫”需求急呼無人駕駛車沖上前線
基于深度卷積網絡與空洞卷積融合的人群計數
三次樣條和二次刪除相輔助的WASD神經網絡與日本人口預測
北京第一條無人駕駛地鐵試運行!你敢坐嗎?