本發(fā)明屬于物體檢測技術(shù)領(lǐng)域,具體涉及一種基于雙車輛可變形部件模型的車輛檢測方法。
背景技術(shù):
計算機(jī)視覺是在圖像處理的基礎(chǔ)上發(fā)展起來的新興學(xué)科,在信號處理、計算機(jī)科學(xué)和工程、神經(jīng)生理學(xué)、認(rèn)知科學(xué)和各種智能應(yīng)用方面有著廣闊的發(fā)展前景。尤其近些年來,物體檢測技術(shù)取得了快速發(fā)展,在實際應(yīng)用和理論研究兩個方面都發(fā)揮著越來越重要的作用。而車輛檢測作為物體檢測領(lǐng)域比較常見的一種,已逐漸成為人工智能和計算機(jī)視覺等領(lǐng)域重要的研究內(nèi)容。
隨著計算機(jī)技術(shù)的發(fā)展,以計算機(jī)視覺為代表的被動式信息感知方式逐步成為車輛檢測研究的熱點,車載計算機(jī)視覺感知方式能夠獲得傳統(tǒng)主動式傳感器無法比及的豐富信息量。同時,視覺系統(tǒng)成本低、安裝方便的優(yōu)勢使之更適合在需要配備ADAS的中低端車型中使用。
當(dāng)前科研人員采用更通用并具有魯棒性的特征,如HOG特征、Haar-like特征來對車輛進(jìn)行檢測,這些特征可被直接用來對圖像中的目標(biāo)進(jìn)行分類和檢測。其過程為:把樣本圖像分割為若干像素的單元,每相鄰的4個單元組成一個檢測方塊,用檢測方塊對樣本圖像進(jìn)行從左到右、從上至下依次滑動掃描,掃描的步長為一個單元,從而得到車輛的特征描述,并將此特征描述反饋給分類器,分類器將判定樣本圖像中是否含有車輛。HOG特征是一種解釋型的圖像特征,可用來確定車輛的姿態(tài)。Haar-like特征不僅非常適用于檢測水平、垂直、對稱的結(jié)構(gòu),還通過使用積分圖使特征提取加快,因而可用CPU進(jìn)行實時計算。但是這種使用檢測方塊滑動掃描的方法存在一個難點,即對部分遮擋的車輛檢測效果差,因為車輛在樣本圖像中被遮擋,掃描窗口得不到完整的車輛特征,這使得分類器不可避免的產(chǎn)生誤判。針對這個難點,本發(fā)明提出雙車輛可變形部件模型(雙DPM),對樣本圖像中的完整車輛和被部分遮擋車輛進(jìn)行綜合分析,可以有效避免某個部分的缺失對整體檢測結(jié)果的影響。
目前被部分遮擋車輛的檢測一直是基于機(jī)器視覺的車輛檢測技術(shù)中的難點。中國專利(CN102156989)公開了一種視頻幀中車輛遮擋檢測與分割方法,該方法首先采用減背景的方法得到運動物體,并對前景運動車輛進(jìn)行去空洞處理,得到完整的前景運動車輛,構(gòu)建車輛前景的統(tǒng)計模型,在此基礎(chǔ)上采用加入糾錯機(jī)制的統(tǒng)計模型判斷運動團(tuán)塊中是否有車輛發(fā)生遮擋,在判定車輛發(fā)生遮擋的情況下,根據(jù)得到的遮擋點標(biāo)定遮擋區(qū)域,采用sobel算子提取遮擋區(qū)域的橫向邊緣信息,然后將遮擋區(qū)域的邊緣和前景邊緣結(jié)合起來,即可得到完整的車輛分割結(jié)果。該方法存在的不足之處是對視頻幀中車輛的處理過程步驟多,且計算量大,從而對計算機(jī)中央處理器、圖形處理器、運行內(nèi)存等硬件要求極高,不然會影響車輛檢測實時性。
目前,在車輛檢測領(lǐng)域有多種算法,其中可變形部件模型(DPM)是公認(rèn)的較好的車輛檢測模型。車輛檢測算法的主要思想是將車輛拆分成多個部件,并且各個部件的位置可以在一定范圍內(nèi)移動,再用一個粗略的車輛特征和幾個車輛局部特征來描述車輛信息。中國專利(CN104200236A)公開了基于DPM的快速目標(biāo)檢測方法,該方法采用已經(jīng)訓(xùn)練好的分類器,即由包含單個目標(biāo)物體的訓(xùn)練集訓(xùn)練出來的模型進(jìn)行目標(biāo)識別。該方法存在的不足之處是由于目標(biāo)物體會存在遮擋,現(xiàn)有的可變形部件模型(DPM)對多車目標(biāo)環(huán)境中的目標(biāo)檢測效果差,漏檢率高。
因此提出將兩個車輛,一個完整的車輛和被完整車輛部分遮擋的車輛,作為原始訓(xùn)練集進(jìn)行訓(xùn)練,得到雙車輛可變形部件模型,并以此模型來進(jìn)行車輛檢測。實驗結(jié)果表明,雙車輛可變形部件模型對多車輛檢測時容易出現(xiàn)的漏檢情況有較大程度的改善。
技術(shù)實現(xiàn)要素:
一種基于雙車輛可變形部件模型的車輛檢測方法,包括以下步驟:
S1,基于雙車輛可變形部件模型的訓(xùn)練
根據(jù)訓(xùn)練數(shù)據(jù)集是否含有目標(biāo)車輛及目標(biāo)車輛的特征,訓(xùn)練目標(biāo)車輛模板,該模板包括全局根模板、部件模板以及全局根模板與部件模板的空間位置關(guān)系;
S2,模型匹配及融合
由S1訓(xùn)練好雙車輛可變形部件模型后,用單車輛可變形部件模型對輸入圖像進(jìn)行匹配,從而得到包含車輛的目標(biāo)矩形框;然后對輸入圖像進(jìn)行分區(qū)域處理,對雙車輛可變形部件模型的不同區(qū)域賦予權(quán)值;雙車輛可變形部件模型響應(yīng)值與權(quán)值的乘積加上單車輛可變形部件模型響應(yīng)值即為最終融合結(jié)果。
進(jìn)一步,所述S1具體為:
S1.1,訓(xùn)練數(shù)據(jù)集的準(zhǔn)備,包括原始正樣本和原始負(fù)樣本;
S1.2,使用不含隱形變量的支持向量機(jī)訓(xùn)練得到一個初始化根模板F0;
S1.3,用初始化根模板F0與原始正樣本的目標(biāo)矩形框顯著重疊50%以上對原始正樣本進(jìn)行篩選,得到更新后正樣本,更新后正樣本和原始負(fù)樣本重新訓(xùn)練,更新全局根模板;
S1.4,用貪心算法在目標(biāo)矩形框中依次選取六個部件模板;
S1.5,用全局根模板進(jìn)行滑動掃描,重新構(gòu)建正負(fù)樣本,并在新的樣本集上進(jìn)行訓(xùn)練,更新雙車輛可變形部件模型參數(shù)。
進(jìn)一步,所述訓(xùn)練數(shù)據(jù)集是否含有目標(biāo)車輛及目標(biāo)車輛的特征指的是初始化根模板F0得分最高的一個位置。
進(jìn)一步,所述S1使用隱變量支持向量機(jī)來訓(xùn)練雙車輛可變形部件模型。
進(jìn)一步,所述全局根模板用于描述車輛整體特征,所述部件模板用于描述車輛局部特征。
本發(fā)明的有益效果:
本發(fā)明包含雙車輛可變形部件模型的訓(xùn)練和模型的匹配及融合兩個過程,在模型訓(xùn)練過程中,通過訓(xùn)練數(shù)據(jù)集得到雙車輛可變形部件模型;在模型匹配及融合過程中,將訓(xùn)練好的雙車輛可變形部件模型對檢測窗口進(jìn)行匹配,并對匹配結(jié)果進(jìn)行融合得到最終的包含車輛的矩形框。本發(fā)明可以充分減少單車輛可變形部件模型對遮擋車輛的漏檢情況,降低了漏檢率。
附圖說明
圖1為一種基于雙車輛可變形部件模型的車輛檢測方法流程圖;
圖2為原始正樣本和更新后正樣本實例圖;
圖3為負(fù)樣本難例實例圖;
圖4為可視化雙車輛可變形部件模型圖,(a)行為兩車輛橫向遮擋模型圖,(b)行為兩車輛斜向遮擋模型圖,(c)行為兩車輛縱向遮擋模型圖,(d)列為全局根模板模型圖,(e)列為部件模板模型圖,(f)列為部件模板相對于全局根模板的空間位置模型圖;
圖5為模型匹配及融合流程圖;
圖6為實施例一多種車輛檢測算法在樣本庫下的ROC曲線圖;
圖7為實施例二多種車輛檢測算法在樣本庫下的ROC曲線圖;
圖8為多種車輛檢測算法對遮擋車輛檢測實例圖。
具體實施方式
本發(fā)明實施例提供了一種基于雙車輛可變形部件模型的車輛檢測方法,其中基于本發(fā)明的實施例,本領(lǐng)域的其他技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的實施例,都屬于本發(fā)明所保護(hù)的范圍。
如圖1所示,一種基于雙車輛可變形部件模型的車輛檢測方法流程圖,包括以下步驟:
步驟1:基于雙車輛的可變形部件模型的訓(xùn)練;
用隱變量支持向量機(jī)(Latent variable Support Vector Machine,LSVM)來訓(xùn)練雙車輛可變形部件模型。
①人工裁剪一個圖像尺寸大小相同的訓(xùn)練數(shù)據(jù)集。訓(xùn)練數(shù)據(jù)集中包括包含雙車輛的原始正樣本7200張和不包含車輛的任意原始負(fù)樣本23600張。
②初始化全局根模板(全局根模板用于描述車輛整體特征)。根據(jù)訓(xùn)練數(shù)據(jù)集中目標(biāo)矩形框大小的統(tǒng)計值,自動選擇全局根模板的尺寸,使用不含隱藏變量的支持向量機(jī)(Support Vector Machine,SVM)訓(xùn)練得到一個初始化根模板F0。
③更新全局根模板。通過②得到的初始化根模板F0,在訓(xùn)練數(shù)據(jù)集原始的、未經(jīng)縮放處理的正樣本圖像上使用該全局根模板,且在與原始正樣本的目標(biāo)矩形框顯著重疊50%以上的條件下,找到初始化根模板F0得分最高的一個位置,并根據(jù)以上結(jié)果更新原始正樣本。如圖2所示,黑色目標(biāo)矩形框表示原始正樣本,灰色目標(biāo)矩形框表示更新后正樣本。用更新后正樣本和原始負(fù)樣本重新訓(xùn)練,更新全局根模板。
④初始化部件模板(部件模板用于描述車輛局部特征)。在③更新后的全局根模板上使用貪心算法(貪心算法是指不從整體最優(yōu)上加以考慮,它所做出的僅是在某種意義上的局部最優(yōu)解)找出目標(biāo)矩形框內(nèi)對應(yīng)的所有權(quán)值,計算所有權(quán)值的范數(shù),范數(shù)最大的位置作為第一個部件的位置。隨后將當(dāng)前目標(biāo)矩形框內(nèi)的權(quán)值清零,然后繼續(xù)搜索下一個部件的位置,直到選出六個部件的位置,最終使得六個部件的面積相同,且六個部件的面積之和達(dá)到全局根模板總面積的4/5以上。
⑤更新雙車輛可變形部件模型。重新構(gòu)建正負(fù)樣本,并在新的樣本集上進(jìn)行訓(xùn)練,得到新的雙車輛可變形部件模型參數(shù)。對于新的正樣本,在保證與原始正樣本至少1/2重疊的情況下,用重新構(gòu)建的全局根模板在所有可能的位置和尺度上進(jìn)行滑動掃描;并在滑動掃描過程中選出得分最高的位置作為新的正樣本,放入樣本圖像緩沖區(qū)中。對于新的負(fù)樣本,則選擇重新構(gòu)建的全局根模板在原始負(fù)樣本滑動掃描時得分最高的位置作為新的負(fù)樣本,即檢測難度很大的負(fù)樣本難例,如圖3左下角虛線框所示。同時去掉檢測難度很小的常規(guī)負(fù)樣本,如圖3右上角實線框所示。重復(fù)上述正負(fù)樣本更新過程,不斷向樣本圖像緩沖區(qū)輸送新的正負(fù)樣本,并利用樣本圖像緩沖區(qū)中的正負(fù)樣本進(jìn)行訓(xùn)練,更新雙車輛可變形部件模型參數(shù)。
①-⑤都將訓(xùn)練數(shù)據(jù)存儲下來,訓(xùn)練完成后,最終結(jié)果被放在cachedir目錄里;若某一步驟出現(xiàn)錯誤,下次重新運行時可自動加載上次保存的數(shù)據(jù);訓(xùn)練出來的可視化雙車輛可變形部件模型如圖4所示。
步驟二:模型匹配及融合;
用雙車輛可變形部件模型在圖像中對車輛進(jìn)行匹配時,用根位置(即六個部件的位置)來表示圖像中已經(jīng)被判定為包含車輛目標(biāo)的檢測窗口(即⑤中的滑動掃描)所在位置,即每個根位置表示有車輛目標(biāo)被檢測到。在圖像金字塔的每一層根據(jù)各個部件的最佳位置計算每個根位置的綜合得分,綜合得分表示該層全局根模板響應(yīng)值與經(jīng)過變換和降采樣的部件模板響應(yīng)值之和。
設(shè)
其中,Ri,l(x,y)是存放第i個模板在特征金字塔第li層卷積后的響應(yīng)值的數(shù)組,F(xiàn)i′表示濾波器F0的權(quán)值向量,表示變形特征,H表示特征金字塔,(x,y,l)表示第i個濾波器在特征金字塔第l層圖像的(x,y)的位置;當(dāng)i=0時,表示全局根模板,當(dāng)i>0時,表示部件模板。
然后對式(1)進(jìn)行轉(zhuǎn)換來允許具有Di,l(x,y)空間不確定性,用Di,l(x,y)來表示將第i個部件在特征金字塔l層的最優(yōu)位置的響應(yīng)值,則
其中,Di,l(x,y)數(shù)組表示對根位置綜合得分中第i個部件模板的貢獻(xiàn)值,di表示一個四維向量。
li層的根位置綜合得分則是將全局根模板響應(yīng)值與各個部件模板的貢獻(xiàn)值相加得到的,即:
其中,(x0,y0)表示全局根模板的位置,λ表示為獲得某一層的兩倍分辨率而需要在圖像金字塔中向下搜索的層數(shù),vi表示一個二維向量。
在模型訓(xùn)練過程中通過訓(xùn)練得到單車輛可變形部件模型和雙車輛可變形部件模型后,就可使用模型對輸入圖像進(jìn)行匹配。
通過匹配得到了所有部件模板的響應(yīng)值,接下來需要將所有的響應(yīng)值進(jìn)行融合。首先使用單車輛可變形部件模型對輸入圖像進(jìn)行匹配得到包含車輛的目標(biāo)矩形框,然后對輸入圖像進(jìn)行分區(qū)域處理,在不同的區(qū)域賦予雙車輛可變形部件模型響應(yīng)值不同的權(quán)值。單車輛可變形部件模型響應(yīng)值作為根位置響應(yīng)值的主要貢獻(xiàn)者,雙車輛可變形部件模型作為根位置響應(yīng)值的輔助貢獻(xiàn)者。匹配及融合過程如圖5所示。
步驟三:實驗結(jié)果與分析
本發(fā)明將訓(xùn)練得到的雙車輛可變形部件模型進(jìn)行有效性實驗。實驗圖片來自于KITTI標(biāo)準(zhǔn)數(shù)據(jù)集,KITTI訓(xùn)練集含有圖片7481張,其中含有車輛約35000輛;KITTI測試集含有圖片7518張,其中含有車輛約27000輛。實驗分為兩組,第一組實驗為傳統(tǒng)車輛檢測算法、單車輛可變形部件模型、雙車輛可變形部件模型對樣本庫中不含遮擋車輛的單個車輛進(jìn)行檢測效果的對比。第二組實驗為傳統(tǒng)車輛檢測算法、單車輛可變形部件模型、雙車輛可變形部件模型對樣本庫中含有遮擋車輛的多車輛進(jìn)行檢測效果的對比。特別地,本發(fā)明用來做對比的傳統(tǒng)車輛檢測算法為Haar+Adaboost分類器、HOG+LSVM分類器和Haaris+SIFT算法。實驗平臺為Intel酷睿2雙核2.67G處理器,4G內(nèi)存,操作系統(tǒng)為Windows 7,編程軟件為Microsoft Visual 2013、MATLAB 2015b。并在結(jié)果中用矩形框表示目標(biāo)車輛。
此外,感受性曲線(receiver operating characteristic curve,簡稱ROC曲線)用來作為各車輛檢測方法的性能評價指標(biāo)。以上兩組實驗均以每幅圖像的誤檢率(False Positive Per Image,F(xiàn)PPI)作為橫坐標(biāo),以真正類率(Ture Positive Rate,TPR)作為縱坐標(biāo)。
實施例一
本發(fā)明所設(shè)計的雙車輛可變形部件模型與單車輛可變形部件模型和傳統(tǒng)的車輛檢測算法對樣本庫中的單個車輛的檢測率進(jìn)行綜合比較,結(jié)果如圖6所示;當(dāng)FPPI取1時,雙車輛可變形部件模型、單車輛可變形部件模型、Haar+Adaboost分類器、HOG+LSVM分類器和Haaris+SIFT算法的檢測率分別為91.58%,94.75%,90.87%,89.62%,84.37%。
實施例二
本發(fā)明所設(shè)計的雙車輛可變形部件模型與傳統(tǒng)的單車輛可變形部件模型和傳統(tǒng)車輛檢測算法在KITTI標(biāo)準(zhǔn)數(shù)據(jù)集下對含有被部分遮擋的多車輛檢測情況進(jìn)行綜合比較,結(jié)果如圖7所示;當(dāng)FPPI取1時,雙車輛可變形部件模型、單車輛可變形部件模型、Haar+Adaboost分類器、HOG+LSVM分類器和Haaris+SIFT算法的檢測率分別為86.37%,61.30%,71.34%,67.45%,72.78%。
此外,為方便直觀對比,給出實施過程中各算法在KITTI標(biāo)準(zhǔn)數(shù)據(jù)集下對遮擋車輛的檢測實例,如圖8所示的五組實例。
以上結(jié)果可以直觀看出,單車輛可變形部件模型和傳統(tǒng)分類器對車輛被遮擋情況下車輛檢測存在較高的漏檢率和誤檢率,而雙車輛可變形部件模型則表現(xiàn)較好,能夠在多車輛路況下多個視角地將被遮擋車輛有效地檢測出來,使被遮擋車輛的漏檢率大幅降低。
所述實施例為本發(fā)明的優(yōu)選的實施方式,但本發(fā)明并不限于上述實施方式,在不背離本發(fā)明的實質(zhì)內(nèi)容的情況下,本領(lǐng)域技術(shù)人員能夠做出的任何顯而易見的改進(jìn)、替換或變型均屬于本發(fā)明的保護(hù)范圍。