本發(fā)明屬于智能交通系統(tǒng)中的車型識別領域,具體涉及一種基于cnn多特征聯(lián)合和多核稀疏表示的車型識別方法。
背景技術:
卷積神經網(wǎng)絡(cnn)當前已經成為圖像識別領域的研究熱點,由于其識別率高等優(yōu)點,卷積神經網(wǎng)絡也逐漸運用到車型識別中。但在一般情況下,都是使用卷積神經網(wǎng)絡的深層提取的特征進行分類器訓練,而這些特征可能并沒有包含足夠多的有用信息來實現(xiàn)圖像的正確分類。研究表明,卷積神經網(wǎng)絡的淺層抽取的是圖像局部的特征,這些特征更精細且包含更多的細節(jié)信息,而深層抽取的是圖像全局性的特征,這些特征具有顯著的差異,有更加穩(wěn)定的模式和結構。如果將卷積神經網(wǎng)絡的淺層特征和深層特征聯(lián)合起來,將會使圖像特征更加豐富,會大幅提高圖像識別率和魯棒性。
核學習方法目前已經成功應用于圖像處理領域,但大多數(shù)核學習方法是基于單核的方法,由于不同核函數(shù)的性能表現(xiàn)差異很大,且單核學習方法不能滿足如數(shù)據(jù)異構、數(shù)據(jù)不規(guī)則、樣本不平坦等情況下的應用需求,不能有效整合異質數(shù)據(jù)背后隱藏的信息。如果使用多核學習充分利用不同核函數(shù)的性能,能夠有效解決多維數(shù)據(jù)不規(guī)則或數(shù)據(jù)在高維特征空間分布的不平坦等情況。
技術實現(xiàn)要素:
本發(fā)明的針對現(xiàn)有技術中的不足,提供一種基于cnn多特征聯(lián)合和多核稀疏表示的車型識別方法。
為實現(xiàn)上述目的,本發(fā)明采用以下技術方案:
1)采集車輛圖像,將采集到的車輛圖像分為訓練樣本和測試樣本,對車輛圖像進行預處理,調整圖片像素,并對圖片添加標簽,標注圖像的所屬車型類別,其中,訓練樣本表示為x=[x1,x2,…,xn],n表示訓練樣本個數(shù),測試樣本表示為y;
2)基于cnn自動提取樣本各層級的車輛圖像特征,得到車輛特征向量;
3)對車輛特征向量進行基于多核的非線性映射,轉換到高維的特征空間;
4)對高維的特征空間進行樣本空間轉換,減少核空間特征參數(shù)的維數(shù);
5)優(yōu)化約束函數(shù),求解稀疏表示系數(shù)向量;
6)定義滿足類間重構誤差最大且類內重構誤差最小的目標函數(shù);
7)優(yōu)化求解核函數(shù)權值和投影系數(shù)矩陣;
8)基于求得的核函數(shù)權值和投影系數(shù)矩陣,根據(jù)測試樣本的核稀疏最小重構誤差實現(xiàn)對車輛類型的識別。
為優(yōu)化上述技術方案,采取的具體措施還包括:
步驟2)中:
基于cnn中alexnet網(wǎng)絡,設計5個卷積層與3個全連接層:層15是卷積層,提取車輛的局部特征,其中,層1、2、5在卷積濾波后有池化層;層67是全連接層,提取車輛的全局特征;
利用cnn網(wǎng)絡對訓練樣本進行訓練,從cnn網(wǎng)絡提取第1、2、5池化層和第6、7全連接層每一層的特征分量ft,t=1,2,3,4,5,f1,f2,f3,f4,f5分別對應第1、2、5、6、7層的特征分量,車輛特征分量經加權聯(lián)合后得到車輛聯(lián)合特征向量f=(f1,f2,…,f5)。
步驟3)中:
將車輛特征分量ft分別輸入到不同的基礎單核函數(shù)κm中,核函數(shù)包括三個高斯核和兩個線性核,κ1,κ2,κ3為高斯核,
通過加權融合形成一個多核矩陣
基于多核矩陣對訓練樣本和測試樣本進行非線性匹配,將原始特征空間轉換到高維特征空間h0,在空間h0上訓練樣本矩陣表示為φ(x)=[φ(x1),φ(x2),…,φ(xn)],測試樣本表示為φ(y)。
步驟4)中:
將轉換到高維特征空間h0的特征參數(shù)乘以一個低維的投影矩陣p,減少核空間特征參數(shù)的維數(shù),p=[p1,p2,…,pd]∈rm×d,d是投影空間的維數(shù)。
步驟5)中:
基于稀疏編碼理論利用l-2范數(shù)約束優(yōu)化求解,得到稀疏表示系數(shù)向量α,約束優(yōu)化公式為:
其中,λ≥0,表示為了避免過擬合加入的正則項,通過交叉驗證來選擇大?。痪仃嘺是投影矩陣p的系數(shù)矩陣,p=φ(x)a;
步驟6)中:
定義滿足類間重構誤差最大且類內重構誤差最小的目標函數(shù)f(a,β):
其中,i為單位矩陣;jb=tr(atkβsbkβa),tr(·)表示矩陣的跡;
sb為類間散度矩陣,
jw=tr(at(kβswkβ+λi)a),sw為類內散度矩陣
步驟7)中:
優(yōu)化求解核函數(shù)權值β和投影系數(shù)矩陣a,將目標函數(shù)轉化為:
采用交替迭代的方法進行優(yōu)化求解,重復迭代次數(shù)直到收斂,具體如下:
優(yōu)化求解a:
固定β,則目標函數(shù)為:
使用最小角回歸算法求得最優(yōu)解a;
優(yōu)化求解β:
固定a,則目標函數(shù)為:
定義一個關于β的函數(shù)h(β)=tr(at(kβsbkβ-ρkβswkβ-ρλi)a);
對其求偏導
通過解二次規(guī)劃問題
步驟8)中:
使用最小重構誤差根據(jù)稀疏表示系數(shù)向量α分類樣本y,重構誤差表示為
根據(jù)公式
本發(fā)明的有益效果是:
1、采用基于計算機視覺技術的方法,安裝維護方便,不影響路面壽命,不影響交通,而且所用設備少,具有成本低,魯棒性好,安全性高等優(yōu)點;
2、將多特征聯(lián)合引入到基于核稀疏表示的車型識別中,使得在不同層所產生的特征分量的優(yōu)勢得到更充分和合理的利用;
3、多核學習較單核學習能夠解決樣本規(guī)模較大,多維數(shù)據(jù)不規(guī)則或數(shù)據(jù)在高維特征空間分布的不平坦的情況。
附圖說明
圖1是本發(fā)明的總體流程圖。
圖2是本發(fā)明alexnet網(wǎng)絡結構圖。
圖3是本發(fā)明聯(lián)合車輛局部與全局特征流程圖。
圖4是本發(fā)明多核稀疏學習算法流程圖。
具體實施方式
現(xiàn)在結合附圖對本發(fā)明作進一步詳細的說明。
如圖1所示的基于cnn多特征聯(lián)合和多核稀疏表示的車型識別方法,利用cnn網(wǎng)絡提取車輛的全局與局部特征,并通過多核加權聯(lián)合引入到基于稀疏表示的車型識別中,使淺層和深層網(wǎng)絡的特征優(yōu)勢得到更充分和合理的利用,且多核學習使得不同核函數(shù)的性能表現(xiàn)更加突出,從而能夠大大提高車型識別的準確率和魯棒性,具體步驟如下。
步驟1:車輛圖像采集與預處理
利用智能交通相機拍攝包括復雜場景下的大型客車、卡車、面包車和小轎車四種車型圖像,總共采集3000張車輛圖像,其中2000張為訓練樣本,1000張為測試樣本。
首先對車輛圖像進行預處理,圖片大小統(tǒng)一調整為224×224像素,并對圖像添加標簽,標注該圖像所屬車型類別,有大型客車、卡車、面包車和小轎車四種類別。其中,訓練樣本表示為x=[x1,x2,…,xn],n表示訓練樣本個數(shù),測試樣本用y表示。
步驟2:cnn自動提取樣本各層級的車輛圖像特征
基于cnn中alexnet網(wǎng)絡,alexnet網(wǎng)絡結構圖如圖2所示,設計5個卷積層與3個全連接層,自動提取車輛的全局與局部特征。局部特征主要是淺層網(wǎng)絡提取的一些邊緣、角落等簡單特征,全局特征主要是深層網(wǎng)絡提取的具有顯著差異的復雜特征。
layer1-layer5是卷積層,主要提取局部特征,其中l(wèi)ayer1、layer2和layer5三層卷積濾波后有池化層。layer1中,卷積濾波后輸出是96個55×55大小的圖片,卷積濾波后,還接有池化層,池化后的圖像大小為96×27×27;layer2中,卷積濾波后圖像大小為256×27×27,池化后的圖像大小為256×13×13;layer5中,池化后的圖像大小為256×6×6。
layer6和layer7是全連接層,主要提取全局特征,相當于在卷積層的基礎上再加上一個全連接神經網(wǎng)絡分類器。
利用設計好的cnn網(wǎng)絡對訓練樣本進行訓練,從cnn網(wǎng)絡提取第1、2、5池化層和第6、7全連接層每一層的特征分量ft,t=1,2,3,4,5,車輛特征分量經加權聯(lián)合后得到車輛聯(lián)合特征向量f=(f1,f2,…,f5)。圖3是提取車輛的局部和全局特征加權形成聯(lián)合特征的流程圖。
步驟3:基于多核的非線性映射
將第1、2、5池化層和第6、7全連接層的車輛特征分量ft分別輸入到不同的基礎單核函數(shù)κm中,此處使用的核函數(shù)是三個高斯核和兩個線性核,κ1,κ2,κ3為高斯核,
然后通過加權融合形成一個多核矩陣
基于多核矩陣對樣本進行非線性匹配,轉換到高維的hilbert空間,即將原始特征空間轉換到高維特征空間h0,在空間h0上訓練樣本矩陣可以表示為φ(x)=[φ(x1),φ(x2),…,φ(xn)],測試樣本表示為φ(y)。
步驟4:樣本空間轉換
為了減少分類器訓練的難度,將轉換到高維hilbert空間的特征參數(shù)乘以一個低維的投影矩陣p,以減少核空間特征參數(shù)的維數(shù),p=[p1,p2,…,pd]∈rm×d,d是投影空間的維數(shù),d=128。
步驟5:優(yōu)化約束函數(shù),求解稀疏表示系數(shù)向量α
多核稀疏學習算法流程圖如圖4所示。
基于稀疏編碼理論利用l-2范數(shù)約束優(yōu)化求解,得到稀疏表示系數(shù)向量α,約束優(yōu)化公式為:
其中,λ≥0,表示為了避免過擬合而加入的一個正則項,通過交叉驗證來選擇大小,本專利選取λ=0.01;矩陣a是投影矩陣p的系數(shù)矩陣,p=φ(x)a;
步驟6:定義滿足類間重構誤差最大且類內重構誤差最小的目標函數(shù)
定義滿足類間重構誤差最大且類內重構誤差最小的目標函數(shù)f(a,β):
其中,i為單位矩陣;jb=tr(atkβsbkβa),tr(·)表示矩陣的跡;
sb為類間散度矩陣,
jw=tr(at(kβswkβ+λi)a),為了避免過擬合,此處在求解過程中引入一個正則項λ′i,以確保kβswkβ+λ′i是滿秩矩陣,λ′=0.01;sw為類內散度矩陣
步驟7:優(yōu)化求解核函數(shù)權值β和投影系數(shù)矩陣a
目標函數(shù)(2)可轉化為:
其中,ρ表示給定一個a和β后的極大值,
1)優(yōu)化求解a:固定β,則目標函數(shù)為:
然后使用最小角回歸算法(leastangleregression,lars)求得最優(yōu)解a。
2)優(yōu)化求解β:固定a,則目標函數(shù)為:
目標函數(shù)(5)不是一個凸優(yōu)化問題,只能解得一個局部最優(yōu)解,因此定義一個關于β的函數(shù)h(β)=tr(at(kβsbkβ-ρkβswkβ-ρλi)a)。
對其求偏導
步驟8:車型識別
基于求得的核函數(shù)權值和投影系數(shù)矩陣,根據(jù)測試樣本的核稀疏最小重構誤差實現(xiàn)對車輛類型的識別。
使用最小重構誤差根據(jù)稀疏表示系數(shù)向量α分類樣本y,重構誤差表示為
最終根據(jù)公式
需要注意的是,發(fā)明中所引用的如“上”、“下”、“左”、“右”、“前”、“后”等的用語,亦僅為便于敘述的明了,而非用以限定本發(fā)明可實施的范圍,其相對關系的改變或調整,在無實質變更技術內容下,當亦視為本發(fā)明可實施的范疇。
以上僅是本發(fā)明的優(yōu)選實施方式,本發(fā)明的保護范圍并不僅局限于上述實施例,凡屬于本發(fā)明思路下的技術方案均屬于本發(fā)明的保護范圍。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理前提下的若干改進和潤飾,應視為本發(fā)明的保護范圍。