本發(fā)明屬于圖像識(shí)別技術(shù)領(lǐng)域,尤其涉及一種構(gòu)建城市道路車輛圖像數(shù)據(jù)庫(kù)的方法,可用于智能交通系統(tǒng)中的深度卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練。
背景技術(shù):
我國(guó)城市道路交通管理工作正面臨著相當(dāng)嚴(yán)峻的形勢(shì)。近年來(lái),隨著社會(huì)經(jīng)濟(jì)的迅速發(fā)展和城市化的快速推廣,各類交通出行工具均在不斷增加,且呈現(xiàn)出多元化快速增長(zhǎng)趨勢(shì)?,F(xiàn)有道路資源正在逐漸趨于飽和,不僅制約了社會(huì)經(jīng)濟(jì)發(fā)展,而且?guī)?lái)了一系列的交通事故,如交通擁堵、車禍等,嚴(yán)重影響了市民的交通出行。因此,改善交通管理方法,提高管理水平,最大限度緩解現(xiàn)有交通狀況已經(jīng)刻不容緩。
車輛種類以及數(shù)量的統(tǒng)計(jì),是城市交通管理工作的一項(xiàng)基本而重要的任務(wù)。如果沒(méi)有正確的車輛統(tǒng)計(jì)數(shù)據(jù),就不可能對(duì)道路車流量分布規(guī)律進(jìn)行準(zhǔn)確的預(yù)測(cè),更不能為城市道路規(guī)劃做出正確的指導(dǎo)。因此,防治交通事故,提高國(guó)民出行質(zhì)量的前提是正確地識(shí)別與計(jì)數(shù)各類道路車輛,從而進(jìn)一步掌握交通事故的發(fā)生動(dòng)態(tài),為實(shí)時(shí)、準(zhǔn)確的預(yù)測(cè)預(yù)報(bào)提供理論依據(jù)。
傳統(tǒng)交通管理方法一般依靠人力或者基礎(chǔ)交通設(shè)施,但單純的人力管理勞動(dòng)強(qiáng)度大、效率低。因此,通過(guò)開發(fā)智能交通系統(tǒng)遠(yuǎn)程自動(dòng)監(jiān)測(cè)道路狀況,將有助于提高車輛的檢測(cè)與計(jì)數(shù)的準(zhǔn)確率和效率,減少交通事故帶來(lái)的損失,進(jìn)而促進(jìn)城市道路規(guī)劃的實(shí)施,提高市民生活質(zhì)量。
深度卷積神經(jīng)網(wǎng)絡(luò)是目前圖像識(shí)別領(lǐng)域的前沿技術(shù),能夠滿足智能交通系統(tǒng)車輛檢測(cè)與計(jì)數(shù)的要求。其本質(zhì)上是一種特征學(xué)習(xí)算法,采用監(jiān)督學(xué)習(xí)策略,從數(shù)據(jù)庫(kù)中提取不同類型車輛的判別性特征來(lái)實(shí)現(xiàn)車輛的檢測(cè)和分類。因此,訓(xùn)練適用于智能交通系統(tǒng)的深度卷積神經(jīng)網(wǎng)絡(luò)需要提供一個(gè)包含城市道路各種情況的車輛數(shù)據(jù)庫(kù)。目前,國(guó)內(nèi)外已存在一些車輛圖像數(shù)據(jù)庫(kù),如德國(guó)卡爾斯魯厄技術(shù)學(xué)院團(tuán)隊(duì)于2013年公布的KITTI數(shù)據(jù)庫(kù)、2012年中國(guó)科學(xué)院建立的拍攝于蘇州高速公路的數(shù)據(jù)庫(kù),但是這些數(shù)據(jù)庫(kù)均是針對(duì)特定問(wèn)題而構(gòu)建的,所覆蓋車輛類別、道路狀況、天氣情況和拍攝角度存在不足,無(wú)法有效的描述中國(guó)城市交通,極易導(dǎo)致所建模型出現(xiàn)過(guò)擬合現(xiàn)象,檢測(cè)和分類的魯棒性以及泛化能力不足。因此,對(duì)于國(guó)內(nèi)的車輛檢測(cè)領(lǐng)域,亟需建立一個(gè)具有全天候、復(fù)雜場(chǎng)景、交通擁堵、多種車型等特點(diǎn)的數(shù)據(jù)庫(kù)。
同時(shí),深度卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過(guò)程需要大量大小一致的圖像樣本,且每張輸入圖像均需要對(duì)應(yīng)的標(biāo)簽文件來(lái)說(shuō)明圖像中目標(biāo)信息的類別和位置。因此,需要一種樣本標(biāo)定方法,來(lái)準(zhǔn)確的獲取車輛在圖像中的位置和類別信息,建立完善的數(shù)據(jù)庫(kù)用于網(wǎng)絡(luò)模型的訓(xùn)練。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于針對(duì)現(xiàn)有技術(shù)存在的不足,提出一種構(gòu)建城市道路車輛圖像數(shù)據(jù)庫(kù)的方法,以有效的描述車輛圖像,準(zhǔn)確的給出車輛的位置和類別信息,為智能交通系統(tǒng)中訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò)提供數(shù)據(jù)支撐。
為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下:
(1)根據(jù)車型種類、不同場(chǎng)景、拍攝角度、光照變化和天氣情況這些因素,確定數(shù)據(jù)采集方案并采集道路車輛原始視頻;
(2)將原始視頻分解為原始圖像,使用梯形框標(biāo)定原始圖像中的感興趣區(qū)域,并對(duì)梯形框外非感興趣區(qū)域進(jìn)行模糊化處理;
(3)標(biāo)注感興趣區(qū)域內(nèi)車輛的類型和位置,生成標(biāo)簽文件;
(4)將標(biāo)簽文件轉(zhuǎn)換為xml格式文件進(jìn)行存儲(chǔ),得到車輛圖像數(shù)據(jù)庫(kù)。
本發(fā)明具有以下優(yōu)點(diǎn):
1.能準(zhǔn)確的給出訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò)所需的車輛位置和類別信息
現(xiàn)有城市交通車輛圖像數(shù)據(jù)庫(kù)由于使用全圖訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò)模型,遠(yuǎn)處道路上車輛過(guò)小的情況以及道路兩側(cè)背景信息會(huì)為訓(xùn)練智能交通系統(tǒng)的深度卷積神經(jīng)網(wǎng)絡(luò)提供了不必要的計(jì)算量。因此,本發(fā)明提出的城市道路車輛圖像數(shù)據(jù)庫(kù)的構(gòu)建方法,由于只標(biāo)記感興趣區(qū)域內(nèi)的車輛,因而能準(zhǔn)確的給出訓(xùn)練網(wǎng)絡(luò)所需的車輛位置和類別信息。
2.為訓(xùn)練性能良好的車輛檢測(cè)與計(jì)數(shù)深度卷積神經(jīng)網(wǎng)絡(luò)提供數(shù)據(jù)支撐
深度卷積神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)特征提取能力不僅僅取決于其網(wǎng)絡(luò)架構(gòu),還依賴于所使用的數(shù)據(jù)庫(kù),其本質(zhì)上是一種數(shù)據(jù)驅(qū)動(dòng)方法?,F(xiàn)有城市交通車輛圖像數(shù)據(jù)庫(kù)由于樣本數(shù)量不足,場(chǎng)景不夠豐富,其泛化能力不足,極易導(dǎo)致所訓(xùn)練的深度卷積神經(jīng)網(wǎng)絡(luò)模型出現(xiàn)過(guò)擬合現(xiàn)象,因此本發(fā)明建立了一個(gè)多種類、多天氣和多場(chǎng)景的車輛圖像數(shù)據(jù)庫(kù),為訓(xùn)練適用于多種交通狀況的深度卷積神經(jīng)網(wǎng)絡(luò)提供數(shù)據(jù)支撐。
附圖說(shuō)明
圖1為本發(fā)明的實(shí)現(xiàn)流程圖;
圖2為本發(fā)明中采集的原始圖像樣本圖;
圖3為本發(fā)明中模糊化后的圖像樣本圖;
圖4為本發(fā)明中標(biāo)注感興趣區(qū)域內(nèi)的車輛示意圖。
具體實(shí)施方式:
下面結(jié)合實(shí)例和附圖對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
參照?qǐng)D1,本發(fā)明的實(shí)現(xiàn)步驟如下:
步驟一:制定采集方案并采集原始視頻
本實(shí)例以西安市交通路況為例,確定車輛數(shù)據(jù)拍攝地點(diǎn)和車輛類型。
車輛數(shù)據(jù)采集地點(diǎn)如表1所示,這些采集地點(diǎn)包括大學(xué)、商業(yè)區(qū)、公交站、十字路口和單車道道路這些不同場(chǎng)景的人行天橋,并且在各場(chǎng)景下設(shè)定了不同的拍攝位置,采集能夠有效描述西安市交通情況的原始視頻;
車輛類型包括8類:汽車、自行車、摩托車、公交車、三輪車、緊急車、卡車和泥罐車;
具體拍攝方法為:在每個(gè)拍攝地點(diǎn)的人行天橋上,使用三腳架固定DV相機(jī)或者高像素手機(jī),在早上、中午、傍晚、晚上四個(gè)時(shí)間段,以俯視角度錄制天橋兩側(cè)兩個(gè)車道的車輛正面通行視頻,錄制時(shí)長(zhǎng)為10分鐘,錄制的路段長(zhǎng)度為100米。
表1.車輛檢測(cè)視頻數(shù)據(jù)采集地點(diǎn)
視頻錄制完成之后,刪除時(shí)長(zhǎng)不夠、清晰度較差或者道路遮擋嚴(yán)重的視頻,按地點(diǎn)-時(shí)間-天氣的格式進(jìn)行存放,如:公交五公司20160422_18:19陰,表示該視頻是2016年4月22號(hào)18點(diǎn)19分于公交五公司拍攝的,當(dāng)天天氣為陰天。
步驟二:分解原始視頻并進(jìn)行模糊化處理
(2a)分解原始視頻并保存原始圖像:
根據(jù)原始視頻中道路擁堵情況,按照不同的幀數(shù)間隔將視頻分解為JPEG格式的RGB圖像:若視頻中道路車輛過(guò)于擁堵,則以48幀為間隔從視頻中提取原始圖像;若視頻中道路狀況通暢,則以24幀為間隔從視頻提取原始圖像,并將視頻分解得到的原始圖像存放在與用該視頻名命名的文件夾中,提取的原始圖像如圖2所示,這些原始圖像的大小為1280×720。
(2b)劃定感興趣區(qū)域:
為有效減少道路兩側(cè)背景信息以及遠(yuǎn)處道路上車輛過(guò)小的情況對(duì)訓(xùn)練網(wǎng)絡(luò)模型的影響,設(shè)定原始圖像中的感興趣區(qū)域,即標(biāo)注車輛信息時(shí)所重點(diǎn)關(guān)注的區(qū)域;
再使用梯形框來(lái)標(biāo)定原始圖像中的感興趣區(qū)域,梯形框的兩腰分別與道路兩側(cè)路沿平行,底邊與圖像底邊重合,上邊的選擇以保證能采集到同一輛車由遠(yuǎn)及近的漸變過(guò)程為準(zhǔn);
(2c)對(duì)非感興趣區(qū)域進(jìn)行模糊化處理:
根據(jù)所劃定的感興趣區(qū)域,對(duì)原始圖像中的非感興趣區(qū)域進(jìn)行簡(jiǎn)單模糊處理,其步驟為:
(2c1)讀取原始圖像,從圖像中的第一個(gè)像素點(diǎn)開始,判斷其所在的區(qū)域:若像素點(diǎn)在感興趣區(qū)域內(nèi),則不作處理,跳轉(zhuǎn)到下一個(gè)像素點(diǎn);若像素點(diǎn)在非在感興趣區(qū)域內(nèi),則用它領(lǐng)域內(nèi)像素點(diǎn)的平均值代替該點(diǎn)的像素值,然后跳轉(zhuǎn)下一個(gè)像素點(diǎn);
(2c2)遍歷完圖片所有像素點(diǎn),完成圖像的模糊化處理后,并將經(jīng)過(guò)模糊處理的圖片保存,如圖3所示,感興趣區(qū)域以白色梯形框標(biāo)定,車道外的事物以及不利于網(wǎng)絡(luò)去檢測(cè)識(shí)別的過(guò)小的車輛均被模糊化。
步驟三:標(biāo)注車輛的類別和位置信息并獲得xml格式標(biāo)簽文件
(3a)在圖像中的感興趣區(qū)域內(nèi),使用外接矩形框?qū)囕v進(jìn)行分類和定位,即選擇車身主體未被遮擋的車輛,對(duì)公交車只標(biāo)注車頭,對(duì)其他車標(biāo)注整體,標(biāo)注結(jié)果如圖4所示,其中藍(lán)色框標(biāo)記了公交車、黃色框標(biāo)記了摩托車、綠色框標(biāo)記了汽車;
(3b)對(duì)模糊化后的圖像一一進(jìn)行感興趣區(qū)域內(nèi)的車輛標(biāo)注,記錄標(biāo)注車輛所用的每個(gè)外接矩形框的各頂點(diǎn)坐標(biāo)和其代表的類別,并將每個(gè)矩形框的頂點(diǎn)坐標(biāo)和其代表的類別存入txt格式的標(biāo)簽文件中,標(biāo)注完成后,每一張圖像對(duì)應(yīng)一個(gè)標(biāo)簽文件;
當(dāng)堵車時(shí)間過(guò)長(zhǎng)時(shí),從原始視頻中得到的原始圖像往往會(huì)出現(xiàn)多張相似的情況,對(duì)于這種情況,刪除相似的圖像,不進(jìn)行重復(fù)標(biāo)注;
(3c)合并所有標(biāo)簽文件,并將文件txt格式轉(zhuǎn)換為xml格式,獲得包含數(shù)據(jù)庫(kù)內(nèi)所有車輛類別與位置信息的xml格式標(biāo)簽文件。
步驟四:存儲(chǔ)標(biāo)簽文件、圖像文件名和樣本圖像得到完整數(shù)據(jù)庫(kù)
(4a)建立與深度卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程相對(duì)應(yīng)的文件夾存儲(chǔ)數(shù)據(jù):
由于訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò)包括自下而上的非監(jiān)督學(xué)習(xí)與自頂向下的監(jiān)督學(xué)習(xí)的學(xué)習(xí)過(guò)程以及網(wǎng)絡(luò)測(cè)試過(guò)程,每一個(gè)過(guò)程都會(huì)根據(jù)所提供樣本的圖像文件名,尋找樣本圖片與對(duì)應(yīng)樣本的xml標(biāo)簽信息。因而,本發(fā)明的數(shù)據(jù)庫(kù)需要建立與網(wǎng)絡(luò)訓(xùn)練過(guò)程相對(duì)應(yīng)的三個(gè)主文件夾存儲(chǔ)數(shù)據(jù)。其中
第一個(gè)是ImageSets文件夾,用于存儲(chǔ)圖像文件名列表的文件,該文件夾內(nèi)有一個(gè)名為Main的子文件夾,存放著訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò)不同過(guò)程所需的圖片文件名,具體為:
train.txt,存有訓(xùn)練網(wǎng)絡(luò)的圖像文件的文件名列表,
trianval.txt,存有訓(xùn)練和驗(yàn)證網(wǎng)絡(luò)的圖像文件的文件名列表,
val.txt,存有驗(yàn)證網(wǎng)絡(luò)的圖像文件的文件名列表,
test.txt,存有測(cè)試網(wǎng)絡(luò)的圖像文件的文件名列表;
第二個(gè)是Annotations文件夾,用于存儲(chǔ)包含車輛類別與位置信息的xml格式標(biāo)簽文件;
第三個(gè)是JPEGImages文件夾,用于存放樣本圖像;
(4b)合并所有文件夾獲得完整數(shù)據(jù)庫(kù):
將(4a)所建的Annotations、ImageSets和JPEGImages這三個(gè)文件夾整合到一個(gè)文件夾內(nèi),并命名為Vechile_Data,得到完整的城市道路車輛圖像數(shù)據(jù)庫(kù)。
本發(fā)明的效果可通過(guò)以下應(yīng)用實(shí)例進(jìn)一步說(shuō)明。
使用上述方法構(gòu)建的車輛圖像數(shù)據(jù)庫(kù)訓(xùn)練現(xiàn)有的深度卷積神經(jīng)網(wǎng)絡(luò)模型,并計(jì)算最終測(cè)試結(jié)果的召回率,其應(yīng)用過(guò)程如下:
第一步,選擇深度神經(jīng)網(wǎng)絡(luò):
由于SSD網(wǎng)絡(luò)是一種多尺度目標(biāo)檢測(cè)深度卷積神經(jīng)網(wǎng)絡(luò)框架,可以用來(lái)實(shí)現(xiàn)對(duì)目標(biāo)信息的定位和分類,滿足智能交通系統(tǒng)要實(shí)現(xiàn)車輛檢測(cè)與技術(shù)的要求,因此選擇SSD網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,同時(shí)在深度卷積神經(jīng)網(wǎng)絡(luò)SSD網(wǎng)絡(luò)框架的基礎(chǔ)網(wǎng)絡(luò)VGG-16上,添加卷積層和池化層,以增加整個(gè)網(wǎng)絡(luò)的特征提取能力;
第二步,對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練并計(jì)算最終測(cè)試結(jié)果的召回率:
從已建立的數(shù)據(jù)庫(kù)中選擇汽車、摩托車和公交車這三類道路最常見車輛的數(shù)據(jù)對(duì)SSD網(wǎng)絡(luò)進(jìn)行訓(xùn)練和測(cè)試。
實(shí)例中,使用SSD網(wǎng)絡(luò)框架中的VGG-16網(wǎng)絡(luò)的原始參數(shù)對(duì)基礎(chǔ)網(wǎng)絡(luò)進(jìn)行初始化,用深度學(xué)習(xí)Xavier初始化方法對(duì)額外添加的卷積層和池化層進(jìn)行初始化,迭代次數(shù)選擇15000次,對(duì)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。訓(xùn)練完成后,用一段時(shí)長(zhǎng)為10分鐘的視頻對(duì)網(wǎng)絡(luò)進(jìn)行測(cè)試并計(jì)算測(cè)試結(jié)果的召回率。經(jīng)過(guò)計(jì)算,測(cè)試結(jié)果中摩托車、汽車及公交車的召回率分別為:94%、99%、99%。
以上實(shí)例以及最終的測(cè)試效果表明利用本發(fā)明數(shù)據(jù)庫(kù)描述的車輛圖像以及準(zhǔn)確給出的車輛位置和類別信息,為智能交通系統(tǒng)中訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò)提供了可靠的數(shù)據(jù)支撐。