?

梯度直方圖卷積特征的膠囊網絡在交通監控下的車型分類

2020-10-18 12:57陳立潮曹建芳
計算機應用 2020年10期
關鍵詞:復雜度特征提取梯度

陳立潮,張 雷,曹建芳,2*,張 睿

(1.太原科技大學計算機科學與技術學院,太原 030024;2.忻州師范學院計算機系,山西忻州 034000)

(*通信作者電子郵箱kcxdj122@126.com)

0 引言

隨著社會的發展,人民生活水平逐步提高,汽車的數量也日益增多。一些不法分子利用當前車輛監控視頻缺乏詳細車型信息的缺陷,制造出一些套牌車輛、虛假車牌車輛,這些車輛給交通管理部門帶來了許多不便,給社會治安帶來極大的隱患[1]。車型分類是智能交通中的重要內容,通過車型分類能夠為車輛視頻監控提供更多的車輛信息,從而能夠更好地核驗車輛的真實身份,并發現并減少套牌車、假牌車的數量。隨著汽車數量的增加,汽車的外形也產生了更多的變化,目前市面上的汽車類型已經到達上千種,傳統一步識別到具體車型的方式已經不再適用,先對汽車的外觀類型進行粗分類,然后再細分具體的汽車型號成為一種可行的解決方式。在交通監控場景下,只能拍攝到汽車的前臉和部分側面信息,用于對不同車型進行區別的特征大大減少,這給車型識別帶來類了一些困難,再加上雨雪或者大霧天氣、光照等影響,給交通監控下的車型分類的準確性帶來了極大的挑戰。

車型分類一般包括兩個步驟:特征提取和分類器。特征提取的研究有很多,代表性的特征有方向梯度方向統計直方圖(Histogram of Oriented Gradient,HOG)、Haar 特征和Strip 特征等[2-4],而常見的分類器有支持向量機[5]、Softmax[6]等。近些年,隨著深度學習[7]和計算機視覺[8]的發展,使用深度學習來提高車型分類的精度成為一種新的解決途徑?;谏窠浘W絡[9-11]的車型分類一般采用卷積操作和池化操作的方式提取特征,這樣可以更好地對各個類別獨有的特征進行提取。有些學者對卷積神經網絡進行改進,以提高準確率,如Zhen等[12]在卷積神經網絡(Convolutional Neural Network,CNN)中引入稀疏的拉普拉斯濾波學習器學習車輛特征,桑軍等[13]采用Faster-RCNN(Faster Region CNN)在幾種車型數據集上進行車型識別。

由于車輛圖像中含有的特征是豐富、多樣的,僅采用單通道的卷積操作提取特征,會丟失圖像的顏色和梯度信息,而且,CNN、Faster-RCNN 這類網絡在提取特征時容易丟失圖像特征的空間位置關系?;谶@兩方面的考慮,本文提出一種梯度直方圖卷積特征的膠囊網絡模型(Capsule Network model fusing with HOG Convolutional features,HOG-C CapsNet),在膠囊網絡(CapsNet)[14]的基礎上,增加了梯度直方圖卷積特征(HOG-C 特征)提取方式,即先提取圖像的梯度統計信息,生成HOG特征圖,然后通過卷積層獲取圖像的顏色特征圖,即C特征圖,再將HOG 特征圖和C 特征圖融合,形成融合了顏色、梯度信息的HOG-C 特征圖,然后再次通過卷積層進行高層抽象特征提取,形成HOG-C 抽象特征圖。HOG-C CapsNet 將梯度直方圖卷積特征提取方法提取出來的HOG-C 抽象特征圖輸入主膠囊成形成具有空間位置關系的高層特征,并使用數字膠囊層進行車型分類,使模型在交通監控場景下的車型分類上具有更高的精度。

1 相關技術

1.1 膠囊網絡

膠囊網絡[14]是一種具有強泛化能力的深度學習網絡模型,相比卷積神經網絡,去掉了會造成特征丟棄的池化層,并充分利用了圖像中各個特征之間的空間關系,獲得高層特征和低層特征之間的位置關系作為一種用于分類的特征。膠囊是一組神經元的集合,每個神經元代表一種特定類型特征,使用向量的方式進行表示,這樣不同特征之間的相對位置就會互相作用,對由它們進行高層抽象組合的膠囊的表達結果產生影響。

膠囊網絡的網絡結構如圖1 所示,核心是主膠囊層和數字膠囊層。MNIST 手寫數字圖像是大小為28×28×1 的灰度圖像。首先,通過一個普通的卷積層進行簡單的顏色特征提取,然后使用ReLU(Rectified Linear Unit)激活函數對卷積得到的顏色特征做歸一化處理。通過卷積層后產生大小為20×20×256 的特征圖層,然后通過具有32 個膠囊的主膠囊層封裝成具有空間特征關系的特征膠囊,再通過動態路由算法根據這些三維膠囊的margin loss 進行優化處理,最后通過數字膠囊層輸出代表分類結果的10 個膠囊,每個膠囊向量的歐氏長度即屬于這一個分類的概率。

圖1 膠囊網絡基本結構Fig.1 Basic structure of CapsNet

膠囊網絡使用margin loss 作為其損失計算方法,計算公式如式(1)所示:

其中:變量L表示計算得到的margin loss;Rj表示第j類是否存在,如果存在則值為1,否則為0;m+和m-是假陰性和假陽性懲罰,假陰性懲罰即第j類存在但是預測不存在時的懲罰力度,假陽性懲罰為第j類不存在但是預測存在時的懲罰力度,膠囊網絡將其分別設定為0.9 和0.1;λ是比例系數,調整假陰性和假陽性懲罰結果的比重;vj是用向量表示的膠囊。

1.2 HOG特征提取

梯度方向統計直方圖[15]能夠有效描述圖像局部的梯度紋理特征。原理是計算圖像的一個區域中每個像素點的梯度,然后按照梯度方向分區進行分段統計,從而得到這個區域的梯度統計方向直方圖。將這些梯度統計直方圖作為特征,進行HOG特征提取,最后融合成HOG特征圖。

HOG 特征圖的生成步驟為劃分區域、計算梯度、構造梯度和形成特征圖四步:1)劃分區域是將圖像按照像素點分成若干大小固定的Cell 區域,若干個Cell 劃分為一個Block 區域;2)計算梯度是獲得每個Cell 中各個像素的梯度方向和梯度大??;3)構造梯度是將整個梯度范圍等分為數個大小相同的區間,每個區間叫作一個Bin,將第2)步計算出的梯度對應到不同的Bin中進行累加計數;4)形成特征圖是將多個Cell單元組合成Block 塊,然后每個Block 塊進行歸一化后形成梯度方向直方圖,所有的Block 塊的梯度方向直方圖融合得到HOG特征圖。

2 梯度直方圖卷積特征的膠囊網絡

為了充分利用圖像中的梯度統計特征、顏色信息特征以及特征的空間位置信息,從而改善車型分類效果,本文提出了梯度直方圖卷積特征的膠囊網絡模型(HOG-C CapsNet)。該方法在膠囊網絡的基礎上增加了梯度直方圖卷積特征提取方式,用于對車輛圖像進行多種特征的提取,提取到的HOG-C抽象特征輸入到膠囊網絡中進行進一步封裝膠囊,用于車型分類。整個網絡的結構如圖2 所示,首先使用HOG 特征提取層獲取HOG 特征圖,然后使用卷積層獲取顏色特征圖,并將其與HOG特征圖融合后形成HOG-C特征圖,之后輸入卷積層進一步提取抽象特征形成HOG-C 抽象特征圖,最后,將HOG-C 抽象特征圖作為膠囊網絡的輸入,再將膠囊網絡中各層的參數做一些適應性改進,以達到適用于車型分類和更好的分類效果的目的。

圖2 HOG-C CapsNet的基本結構Fig.2 Basic structure of HOG-C CapsNet

2.1 HOG特征提取

輸入圖像是224×224×3 大小的RGB 圖像,具有紅(Red,R)、綠(Green,G)、藍(Blue,B)三個顏色通道,本文方法中,按照0.299×R、0.587×G以及0.114×B的加權進行融合,形成單通道的灰度圖,即224×224×1 的圖像。將灰度圖中的所有像素按每2×2 的區域劃分為一個Cell,每個Cell 包含4 個像素,整個224×224×1的圖像可以劃分為112×112 個Cell。計算Cell 中坐標為(x,y)的像素的梯度值和梯度方向的公式如式(2)所示:

其中:G(x,y)表示梯度值;D(x,y)表示梯度方向;Gx(x,y)和Gy(x,y)分別是x軸方向的梯度和y軸方向的梯度。

HOG-C CapsNet 將360°的梯度方向等分為16 份,即16 個Bin,每個Bin 代表一個范圍的梯度方向,按照Bin 所代表的梯度范圍將Cell中的每個像素分別對應到不同的Bin中,將每個Bin中包含的像素的梯度值進行累加,最后形成x軸為Bin值、y軸為梯度累加值的梯度統計直方圖。這樣整個224×224×1的圖像就得到了112×112個梯度統計直方圖。之后將這112×112 個梯度直方圖按照大小為1×1、步長為1 的滑動窗口劃分為Block,即每個Block 包含一個Cell。每個Block 對其中的Cell得到的梯度統計直方圖進行歸一化處理,即對112×112個梯度統計直方圖分別進行歸一化處理。歸一化后的每個梯度統計直方圖就是整個圖像的一個小區域的HOG 特征,所有這些特征的集合即HOG 特征圖。因為有16 個Bin,即每個梯度統計直方圖包含16 個歸一化后的梯度統計值,所以最后得到具有梯度統計特征的112×112×16大小的HOG特征圖。

2.2 HOG-C特征提取

HOG-C CapsNet 使用64 個3×3×3 的卷積核在整個圖像上做卷積操作來提取車輛的顏色特征。為了獲得更細致的顏色信息,HOG-C CapsNet 使用3×3 的小卷積,為了獲得更多的顏色特征,使用步長為2 的小步長滑動,并且使用“SAME”方式對滑動的邊緣進行填充,得到大小為112×112×64 的特征圖,即C特征圖。

將具有顏色特征表達的C 特征圖和大小為112×112×16的HOG 特征圖進行融合,即二者在長和寬上保持一致,深度方向上進行拼接,形成大小為112×112×80 的特征圖,即具有顏色和梯度統計特征表達的HOG-C 特征圖。HOG-C 特征圖的生成過程如圖3所示。

拼接融合后的HOG-C 特征圖通過一個卷積層來提取HOG-C特征圖的高層抽象特征。卷積層使用128個大小為3×3 的卷積核,使用SAME 填充方式并進行步長為2 的窗口滑動。這樣就將112×112×80 的HOG-C 特征圖轉化為大小為56×56×128的HOG-C抽象特征圖。

圖3 HOG-C特征提取Fig.3 HOG-C feature extraction

2.3 膠囊網絡的適應性調整

原膠囊網絡是直接將手寫數字的灰度圖的顏色特征進行封裝打包制作膠囊,每個膠囊封裝了原圖像顏色特征之間的關系,而本文方法是將HOG-C 特征圖的高層抽象特征作為輸入,不僅僅是打包顏色實體的空間特征,而是將顏色和梯度特征進行了整合抽象后的特征進行打包。因為兩種特征的數據輸入的結構和分類問題的輸出不同,所以需要對原膠囊網絡中的參數和數據結構做一些適應性的改進。

一個是對輸入進行適應性調整,將CapsNet 中的卷積層采用256 個步長為2 的3×3 大小的卷積核進行替換,以適應56×56×128 的輸入,得到的特征圖輸入主膠囊層進行三維膠囊的打包封裝處理。另一個是對輸出進行適應性調整,因為本文需要的是輸出為6 類的預測結果,所以,將數字膠囊層中的相關計算參數進行替換,使之輸出為16×6 的膠囊,這樣就可以使膠囊對應到6個類別,從而計算出分類結果。

2.4 算法復雜度分析

HOG-C CapsNet由HOG-C抽象特征提取部分和膠囊網絡部分組成,時間復雜度和空間復雜度的計算如式(3)~(4)所示:

其中:T和S分別表示時間復雜度和空間復雜度;THOG-C和SHOG-C分別表示HOG-C 抽象特征提取部分的時間復雜度和空間復雜度;TCaps和SCaps表示膠囊網絡部分的時間復雜度和空間復雜度。

HOG-C 抽象特征提取部分的結構包括一個HOG 特征提取層和三個卷積層,時間復雜度和空間復雜度的計算如式(5)~(6)所示:

其中:T表示時間復雜度;S表示空間復雜度;THOG和SHOG表示HOG 特征提取層的時間復雜度和空間復雜度;TC1、TC2、TC3和SC1、SC2、SC3分別表示第一個、第二個、第三個卷積層的時間復雜度和空間復雜度。

HOG 特征提取的是滑動窗口在原圖上做滑動操作,每次進行梯度計算的時間復雜度和空間復雜度均為O(1),故HOG特征提取的時間復雜度THOG和空間復雜度SHOG如式(7)~(8)所示:

其中:K表示滑動窗口的邊長;N表示滑動的步長;M表示圖像的邊長。

TC1、TC2、TC3這三個卷積層的時間復雜度受卷積核的邊長K、輸出特征圖的邊長M、輸入的通道數Cin和輸出的通道數Cout的影響,SC1、SC2、SC3這三個卷積層的空間復雜度受卷積核的邊長K和輸出的通道數Cout的影響,單個卷積層的時間復雜度和空間復雜度TC和SC如式(9)~(10)所示:

膠囊網絡部分由主膠囊層和數字膠囊層組成,主膠囊層包含一個卷積層和膠囊的封裝操作,膠囊的封裝操作的時間復雜度T和空間復雜度S均為O(1),故主膠囊層的時間復雜度和空間復雜度可以使用式(9)和式(10)來表示。數字膠囊層使用動態路由算法對膠囊進行計算,得到分類結果,時間復雜度和空間即動態路由算法的時間復雜度和空間復雜度。

3 實驗與結果分析

3.1 數據集和實驗環境

實驗采用北京理工大學的BIT-Vehicle 公開車型數據集作為訓練、測試數據,該數據集中的車輛圖像均來源于道路監控視頻,由兩個不同位置的攝像頭在不同時間點獲取得到,包括白天和晚上等一天的各個時間段,能更好地體現實際交通監控場景中的情況。由于采用兩個不同的攝像頭,數據集中含有1 600×1 200像素和1 600×1 080像素這兩種尺寸的圖像。

該數據集共計9 850 張圖像,包含555 張大型客車(Bus)圖像、860 張小型客車(Microbus)圖像、467 張小型貨車(Minivan)圖像、5 776 張家用轎車(Sedan)圖像,1 372 張運動型實用汽車(Sport Utility Vehicle,SUV)圖像和820 張卡車(Truck)圖像。該數據集中各類車輛的數量不同,且差距最多可達5 000 多張,這種分布不均衡的數據極易影響訓練結果。因此,實驗前將數據集進行了預處理,將所有的圖片變換為224×224 的圖像,即將圖片按照可以使最長的一邊縮小為224的比例做長寬等比例縮小,然后再旋轉一個角度以擴充數據集,空余背景使用黑色填充,這樣就對原數據集進行了上采樣擴充,使得數據集各個類別數量均衡。

進行上采樣預處理后的BIT-Vehicle 車型數據集部分圖像如圖4 所示(因版面寬度限制,圖中省去了“.jpg”),為了更方便查看數據集的處理結果,圖像的名稱統一采用“類別+序號+(旋轉角度).jpg”,如:“Bus1666(5).jpg”。上采樣預處理后的數據集中每類車型的圖像數量為6 200 張,其中6 000 張用于訓練,200 張用于測試。那么,6 類車型總共有37 200 張圖像,其中訓練集有36 000張圖像,測試集有1 200張圖像。

圖4 數據集的部分圖像Fig.4 Some images in dataset

本實驗由帶有獨立顯卡的高性能計算機完成,在Windows10 操作系統上搭建基于GPU 的TensorFlow[16]框架作為深度學習開發平臺。開發環境的各項參數如表1所示。

表1 實驗環境參數Tab.1 Experimental environment parameters

3.2 實驗對比及分析

3.2.1 實驗設置

為了更好地進行訓練,實驗對數據集使用上采樣的方法做了數據均衡處理。BIT-Vehicle 數據集中各類別數據有467~5 776 個不等,數量差距比較大,如果按照原數據集直接打亂進入模型進行訓練,會導致各個類別訓練效果不均衡,訓練次數多的類別產生過擬合現象而訓練次數少的類別卻訓練不到位。所以,將每類圖像通過圖像旋轉的方式增加新的同類數據,使所有的類別個數保持一致,上采樣數據均衡后,得到訓練集中6 類車型每類6 000 張圖片,共36 000 張圖片,測試集每類200 張圖片,共1 200 張圖片,且訓練集和測試集中沒有相同的數據。

訓練和測試對圖像加載前,先將整個數據集全部打亂,隨機選擇8張圖片進入網絡進行訓練,作為一個batch,即一步訓練或測試的操作。為了方便地查看訓練過程的效果,選取小步長對訓練進行檢測,即每200 步訓練進行一次測試,從測試集中隨機選取600 張圖像,每一步測試輸入8 張圖片,一共需要75步測試,得到一組對600張圖片的測試結果,可以用混淆圖來表示,HOG-C CapsNet 最后一次測試的混淆矩陣如表2所示。

表2 最后一次測試的混淆矩陣Tab.2 Confusion matrix for last test

最后一次測試一共測試了600 張圖片,選取其中有代表性的幾組數據進行分析,如表3所示。

為了每類樣本的訓練是均衡的,實驗均是將整個數據集打亂后輸入網絡進行訓練,當前訓練集訓練完成后,再次打亂整個訓練集中的圖片,再輸入網絡進行訓練。按照每200 步訓練進行一次測試,即訓練1 600 張圖片進行一次測試,訓練集一共有36 000 張圖片,在這個過程中可以測試22.5 次,這樣,在定義的測試400 次的整個訓練過程中,訓練集被加載了18 次。在加載的過程中因為是隨機輸入訓練的,在模型參數更新的過程中會對某一類別的訓練充分,而其他類別不充分,某些訓練得更充分的類別會影響其他類預測效果,使得模型訓練的精度出現不同程度的下降,但隨著數據集的加載,各類的訓練數量的差距會隨之減少,測試精度隨之上升。故在每次數據集被訓練完一遍之后的測試,因為各類別做了同等數量的訓練,模型的效果達到一個在本周期內比較好的點。隨著整個數據集被一遍遍加載,就會出現測試結果先下降再上升的周期性變化。如圖5 所示,可以看到產生的周期性變化的結果。

圖5 HOG-C CapsNet測試的Accuracy結果Fig.5 Accuracy results of HOG-C CapsNet

表3 最后一次測試部分結果及分析Tab.3 Results and analysis of last test

為了避免周期性結果對實驗造成干擾,在對比實驗中對關注的結果進行選擇。測試不同HOG-C 結構對HOG-C CapsNet 的影響的實驗中,因為僅僅在HOG-C 特征提取部分有差別,故四種HOG-C 特征圖提取方式的訓練效果的趨勢是大致相同的,選取最后一個周期的23 次測試結果作為實驗效果進行對比。測試不同網絡模型效果的對比實驗中,重點關注不同網絡在訓練過程中的趨勢,將每20 次測試的結果平均值作為輸出數據,這樣曲線就能更好地反映模型訓練的效果。

實驗對比了HOG 特征提取在整個網絡中不同位置對車型分類的影響,得到最優的HOG-C CapsNet 模型。為了進一步體現HOG-C CapsNet 的效果,實驗還與其他相關的網絡模型在同樣的實驗條件下的效果進行對比,通過多種對比,充分體現HOG-C CapsNet 的性能。實驗采用損失(Loss)、準確率(Accuracy)、平均精確率均值(Mean Average Precision,MAP)、平均召回率均值(Mean Average Recall,MAR)和綜合評價指標MF1 進行分類效果的評價。其中MF1 是MAP和MAR的調和平均,計算公式如式(11)所示:

3.2.2 HOG特征提取在模型中的位置對車型分類的影響

在引入HOG-C特征提取時,HOG 特征提取的位置不同會影響實驗結果,實驗對比了ZeroHOG、OneHOG(本文提出的HOG-C CapsNet 中HOG-C 的結構)、TwoHOG 和ThreeHOG 四種僅僅是在結合位置上有所區別的網絡結構在車型分類的效果。不同HOG-C 結構中對原圖提取梯度統計生成HOG 特征圖的方式是相同的,圖6 顯示了在本文模型訓練過程中,一次測試的隨機的8張圖像的HOG特征圖的輸出。

圖6 本文模型提取的HOG特征圖Fig.6 HOG feature maps extracted by proposed model

HOG 特征圖中的內容本質上是圖像的特征之一,隨后和卷積層提取的色彩特征使用相同的處理方式,在對HOG 特征圖和色彩特征圖進行卷積特征提取、三維膠囊封裝和動態路由算法的計算的過程中,通過優化算法對模型參數進行優化,使得屬于背景部分的HOG 特征和顏色特征對分類結果的權重降低,而屬于目標部分的特征的權重加大,這樣實現對樣本類別的預測。因為訓練集和測試集的同類樣本是類似的,不論背景和目標在原圖中的比例如何,用于區分各個類別目標的特征和其他特征都可以根據訓練集得到一組相對最優的模型參數,最后可以根據測試過程中得到的HOG 和顏色特征圖在訓練模型的計算中得到的結果來預測其所屬的類別。

ZeroHOG 的HOG-C 結構是使用原圖像的HOG 特征圖與原圖像進行結合形成的HOG-C 特征圖。即對車輛圖像進行HOG 特征提取,與原圖像直接進行拼接融合,形成HOG-C 特征圖,之后經過兩個卷積層進行抽象特征提取后傳入膠囊網絡的卷積層和主膠囊層中進行處理。

OneHOG 即本文使用的網絡模型,HOG-C 結構是使用原圖像的HOG 特征圖與原圖像的一次卷積后的顏色特征圖進行結合形成HOG-C 特征圖,之后經過一個卷積層進行抽象特征提取后傳入膠囊網絡的卷積層和主膠囊層中進行處理。

TwoHOG 的HOG-C 結構是使用原圖像的HOG 特征圖與原圖像的二次卷積后的顏色特征圖進行結合形成HOG-C 特征圖,將其傳入膠囊網絡的卷積層和主膠囊層中進行處理。

ThreeHOG 的HOG-C結構是使用原圖像的HOG特征圖與原圖像的三次卷積后的顏色特征圖進行結合形成HOG-C 特征圖,將其直接傳入膠囊網絡的主膠囊層中進行膠囊的封裝。

圖7 是對HOG-C 結合位置進行對比的實驗結果,橫坐標step 表示在訓練中測試的步數,平均每次訓練一遍數據集測試23次,總共測試了400次;縱坐標是每次測試得到的不同指標。圖7(a)是在測試過程中通過Margin Loss 求出的損失值??梢钥闯?,OneHOG 的損失最小,其次是TwoHOG,再者是ZeroHOG,而ThreeHOG 的損失則是最大的,說明在特征膠囊層將HOG-C 特征圖作為輸入,效果是最差的。圖7(b)是Accuracy 變化的折線圖,整體來看OneHOG 的準確率最高,ThreeHOG 的準確率最低。圖7(c)是MAP 變化的折線圖,可以看出,在400 步中,OneHOG 的MAP 大多處于最高狀態,而HOG 處于其他位置的幾種網絡模型的MAP 大多比OneHOG的MAP 小。圖7(d)是MAR 變化的折線圖,可以看出ThreeHOG 的MAR 的波動性最大,OneHOG 的波動性最小,最為穩定,且整體的值要高于其他幾種網絡模型。圖7(e)是MF1 變化的折線圖,根據MAP、MAR 的值得到的MF1 的值的也是最為穩定的,且數值整體是最高的。

3.2.3 不同網絡對車型分類的效果對比

為了從宏觀的角度說明本文算法的效果,在相同的軟硬件實驗環境下對HOG-C CapsNet、膠囊網絡(CapsNet)[14]、VGG(Visual Geometry Group)提出的VGG16[17]和CPCPC(Convolutional Pooling-Convolutional Pooling Convolutional)網絡進行對比。其中:CapsNet 由一個卷積層、一個主膠囊層和一個數字膠囊層組成,僅僅是為了適應車型識別對其中的參數做了兩點適應性改變,一個是輸入圖像的大小部分,由28×28×1 變成224×224×3,以適應BIT 車型數據集,另一個是最后輸出的類別膠囊部分,從16×10變成16×6的膠囊,以適應6分類。VGG16是深度的卷積神經網絡模型,由13個卷積層、5個池化層和2 個全連接層構成,每個卷積層的卷積核的步長為1、大小為3×3,每個池化層的滑動窗口的步長為2、大小為2×2,而全連接層分別有1 024 個節點和6 個節點。VGG19 是深度的卷積神經網絡模型,由16 個卷積層、5 個池化層和2 個全連接層構成,每個卷積層的卷積核的步長為1、大小為3×3,每個池化層的滑動窗口的步長為2、大小為2×2,而全連接層分別有1 024 個節點和6 個節點。CPCPC 是一個淺層卷積神經網絡,具有3 個卷積層、2 個池化層以及2 個全連接層構成,卷積核的大小、池化層的滑動窗口以及全連接層的參數均與上述的VGG16相同。

設卷積層、池化層、全連接層、HOG 提取層和膠囊網絡部分的時間復雜度分別為TC、TP、TF、TH和TX,卷積層、池化層、全連接層、HOG 提取層和膠囊網絡部分的空間復雜度分別為SC、SP、SF、SH和SX,表4展示了不同網絡模型的時間復雜度和空間復雜度的對比。對比表4 中的數據可以看出,CPCPC、VGG16 和VGG19 的時間復雜度和空間復雜度依次遞增,HOG-C CapsNet與CapsNet相比,時空復雜度增加得并不大。

表4 不同網絡模型的復雜度對比Tab.4 Complexity comparison of different network models

圖8 顯示了HOG-C CapsNet、CapsNet、VGG16 和CPCPC四種不同結構的神經網絡在同一數據集上的分類效果,平均每次訓練一遍數據集測試23 次,一共測試400 次,每10 次測試的結果取平均值作為橫坐標,故一共有40 個結果,即橫坐標step 表示測試10 次的平均值,縱坐標是每次測試得到的不同指標。

圖7 四種不同HOG-C結構的網絡對比實驗結果Fig.7 Experimental result comparison of four different networks with HOG-C structure

圖8 不同模型對比實驗結果Fig.8 Experimental result comparison of different models

圖8(a)為四種網絡結構準確率的折線圖,VGG16 和CPCPC 的準確率在第20 次測試和第60 次測試附近時下降到0.15 左右,并在此范圍內上下波動,即預測結果在1/6 左右波動,預測結果隨機出現,模型的泛化性能降低,模型對測試數據完全無法識別,模型的測試失效,該現象說明這兩個網絡模型較早出現了過擬合。而HOG-C CapsNet 和CapsNet 均未出現此現象,這是由于CapsNet和HOG-C CapsNet生成了特征膠囊,對特征的空間關系也加入了分類對比,而卷積網絡所提取的僅僅是二維顏色特征。因為實驗中的CapsNet 和HOG-C CapsNet 的層數并不多,是一個淺層的神經網絡,故不會引發過擬合現象。CapsNet 的準確率在近0.60 處上下波動,HOG-C CapsNet 的結果在近0.98 處上下波動,說明OneHOG的準確率較高。

圖8(b)、(c)和(d)是MAP、MAR 和MF1 的折線圖。三張圖中折線的變化趨勢和圖8(a)中的變化趨勢基本相符,比較CapsNet 和HOG-C CapsNet,由 于HOG-C CapsNet 在CapsNet的基礎上引入了HOG-C 特征,增加了梯度統計特征的提取,并且是將混合特征再次抽象而后將其轉化為三維特征,提高了特征的表達能力,故HOG-C CapsNet的分類效果較好。

圖8(e)為四種網絡結構Loss 的折線圖,可以看出,VGG16 和CPCPC 分別在第20 次測試和第60 次測試附近時,Loss值直接下降為零,且之后一直保持為零的狀態不變,說明兩個網絡的訓練時正向傳播的預測值和真實值相等,訓練數據可以完全無誤差地得到正確的預測值。從圖8(a)所展示的四種網絡模型的Accuracy 對比結果中,可以得到訓練集完全被識別,但測試集完全沒有識別,這說明模型的完全沒有了泛化能力,即對模型做了過多的擬合,產生了過擬合現象,這驗證了上述所說的兩個模型出現過擬合現象。

表5 為四種網絡的最終效果,由Accuracy、MAP、MAR 以及MF1 四種指標的比較結果可以得出,HOG-C CapsNet 的效果最好,其次是CapsNet,而VGG16和CPCPC 由于過早地出現了過擬合,故實驗效果均較差。

表5 各種模型最后一次測試結果Tab.5 Final test results for various models

綜上,比較CPCPC、VGG16 和VGG19,可知卷積層的層數并不是越多越好,當卷積層減少時,圖像的特征不會被過多地提取和丟棄;比較CPCPC、VGG16、VGG19 和CapsNet,可知可以提取到特征間三維空間關系的膠囊網絡能夠更好地對圖像特征進行抽象;比較CapsNet 和HOG-C CapsNet,可知當CapsNet 引入HOG-C 特征提取方法后,能夠提取到更多的圖像特征信息,從而獲得更好的分類效果。

進一步將HOG-C CapsNet 網絡模型的實驗結果與其他文獻中對BIT-Vehicle 中車輛進行分類的結果相比較,結果如表6所示。從表6可以看出,本文所提出的HOG-C CapsNet 網絡模型在BIT-Vehicle 數據集上具有良好的分類效果,準確率要高于其他模型,對交通監控下的車型分類的研究具有重要的價值。

表6 不同網絡模型下車型分類Accuracy對比 單位:%Tab.6 Comparison of vehicle classification accuracy of different network models unit:%

4 結語

本文在深度學習框架TensorFlow 的框架下提出一種梯度直方圖卷積特征的膠囊網絡模型用于車型識別,并在原生的膠囊中增加了梯度卷積特征提取方法。使用北京理工大學的BIT-Vehicle 公開車輛數據做對比實驗,驗證了用于提取梯度卷積特征的不同HOG-C 結構對HOG-C CapsNet 的影響,還將HOG-C CapsNet 和幾種傳統的卷積神經網絡以及膠囊網絡做了對比實驗,實驗得到的準確率為98.17%,綜合評價指標達98.20%,優于幾種傳統的卷積神經網絡和原生的膠囊網絡。但是,實驗只針對BIT-Vehicle 數據集進行測試,未對其他車輛數據集進行測試,存在一定的局限性,在實際應用中的泛化能力可能不高,因此下一步可以將模型在KITTI、UA-DETRAC等車輛數據集以及實際場景下進行進一步驗證和分析,解決其適應性的問題,并且測試其他數據集的不同天氣的情況,從而為該模型的實際應用奠定更好的基礎。

猜你喜歡
復雜度特征提取梯度
磁共振梯度偽影及常見故障排除探討
基于應變梯度的微尺度金屬塑性行為研究
一類長度為2p2 的二元序列的2-Adic 復雜度研究*
毫米波MIMO系統中一種低復雜度的混合波束成形算法
Kerr-AdS黑洞的復雜度
空間目標的ISAR成像及輪廓特征提取
基于Gazebo仿真環境的ORB特征提取與比對的研究
基于特征提取的繪本閱讀機器人設計方案
一個具梯度項的p-Laplace 方程弱解的存在性
非線性電動力學黑洞的復雜度
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合