本發(fā)明屬于圖像處理技術(shù)領(lǐng)域,涉及一種基于支持向量機(jī)和深度特征的行人識別。
背景技術(shù):
目前,基于單目視覺的行人目標(biāo)檢測與跟蹤技術(shù)已廣泛應(yīng)用于實(shí)際,在一定程度上解決了現(xiàn)在一般行人檢測系統(tǒng)對其的技術(shù)需求。但是,由于單目視覺主要是基于對像素的彩色和灰度信息進(jìn)行分析與應(yīng)用,達(dá)到目標(biāo)檢測與跟蹤的目的,所以還是存在很多缺陷。首先是光照變化,像素的彩色和灰度信息對光照很敏感,一點(diǎn)點(diǎn)的光照變化反映在像素的彩色和灰度值上都變得顯著,這使得基于單目的運(yùn)動(dòng)目標(biāo)檢測與跟蹤系統(tǒng)很難在光照變化復(fù)雜的室外條件下工作。其次是類運(yùn)動(dòng)目標(biāo)的干擾,典型的類行人目標(biāo)就是陰影。運(yùn)動(dòng)目標(biāo)的陰影由于其在幾何形狀、運(yùn)動(dòng)規(guī)律等方面和真正的目標(biāo)十分相似,在只有像素點(diǎn)的彩色和灰度信息的條件下很難很好的區(qū)分兩者,這使得提取的行人目標(biāo)質(zhì)量受到影響,給后續(xù)的跟蹤帶來一定的干擾。由于行人目標(biāo)形變十分多樣,運(yùn)動(dòng)姿態(tài)、衣著變化、攝像機(jī)視角、行人間的相互遮擋等都會(huì)對最后檢測出來的行人目標(biāo)的外觀產(chǎn)生影響,這使得傳統(tǒng)的一些基于單目視覺的目標(biāo)檢測與跟蹤算法準(zhǔn)確度下降甚至失效。
為了提高行人檢測系統(tǒng)的準(zhǔn)確性和魯棒性,克服光照變化、類行人目標(biāo)干擾、外觀變化等因素對行人目標(biāo)檢測與跟蹤的影響,本課題針對俯視場景下的行人檢測與跟蹤問題進(jìn)行了研究。針對基于單目的行人目標(biāo)檢測與跟蹤技術(shù)中存在的問題,本發(fā)明引入了雙目立體視覺。雙目立體視覺較單目來說,在保留像素的彩色和灰度信息的同時(shí),增加了像素點(diǎn)深度這一關(guān)鍵信息。像素點(diǎn)的深度信息更加穩(wěn)定,不易受光照變化的干擾,通過結(jié)合像素點(diǎn)的深度信息,可以更準(zhǔn)確更細(xì)致的檢測和區(qū)分目標(biāo),提高行人目標(biāo)檢測與跟蹤的準(zhǔn)確度和抗干擾能力。本發(fā)明在單目視覺的基礎(chǔ)上,結(jié)合雙目的深度信息,在充分考慮了行人檢測系統(tǒng)在理論上和實(shí)踐上面臨的各種困難后,試圖構(gòu)建一個(gè)能對實(shí)際場景中的行人進(jìn)行準(zhǔn)確、快速檢測和跟蹤、具有穩(wěn)定性和魯棒性的行人檢測系統(tǒng)。
行人目標(biāo)檢測與跟蹤技術(shù)作為計(jì)算機(jī)視覺領(lǐng)域當(dāng)前的研究熱點(diǎn),牽涉到諸如圖像傳感器、圖像處理算法、機(jī)器學(xué)習(xí)算法等諸多學(xué)科領(lǐng)域。本發(fā)明主要的研究內(nèi)容是基于雙目的運(yùn)動(dòng)目標(biāo)檢測與跟蹤技術(shù),是計(jì)算機(jī)視覺的一個(gè)研究重點(diǎn),具有很高的學(xué)術(shù)價(jià)值。另一方面,目前計(jì)算機(jī)視覺的商業(yè)開發(fā)越來越多,而作為重要分支之一的就是行人目標(biāo)檢測系統(tǒng),也有著豐富的應(yīng)用場景。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種基于支持向量機(jī)和深度特征的行人識別,該方法采用機(jī)器學(xué)習(xí)的方法使用基于深度特征描述子與svm的行人分類器進(jìn)行行人檢測。本發(fā)明基于設(shè)定姿態(tài)和電梯下的真是場景視頻制作正負(fù)樣本集合,使用基于深度信息的特征描述子,通過制作的訓(xùn)練樣本使用libsvm選取rbf核作為svm的核函數(shù)針對深度信息特征來對行人分類器進(jìn)行訓(xùn)練,學(xué)習(xí)得到訓(xùn)練模型后,最終以滑動(dòng)窗口的方式檢測運(yùn)動(dòng)目標(biāo)區(qū)域中的行人。
本發(fā)明將深度信息特征描述子分為局部深度信息變化特征和局部深度信息大小特征,使用libsvm選取rbf核作為svm的核函數(shù)針對深度信息特征來對行人分類器進(jìn)行訓(xùn)練,得出判別模型。由于依靠行人的運(yùn)動(dòng)屬性或者行人在圖像中的灰度屬性等特征不能推斷出它描述的是一個(gè)真正的行人還是其他和行人具有類似運(yùn)動(dòng)規(guī)律的非行人目標(biāo),因此采用基于深度信息的特征描述子利用svm進(jìn)行判別訓(xùn)練,得到準(zhǔn)確的行人檢測模型。
基于支持向量機(jī)和深度特征的行人識別方法,包括如下步驟:
步驟一:制作訓(xùn)練樣本,構(gòu)造設(shè)定姿態(tài)下和搜集的真實(shí)場景視頻中的正樣本與負(fù)樣本;
步驟二:一種基于深度信息的特征描述子,用以描述行人(俯視視角下)在深度圖中的特征。該行人特征描述子主要分為兩部分,一部分用來刻畫局部深度信息的變化特征,另一部分用來刻畫局部深度信息的大小特征。
對于深度圖中的一點(diǎn)(x,y),首先計(jì)算它跟鄰域像素在x方向和在y方向上的差值δx和δy:
δx=d(x+1,y)-d(x-1,y)(1)
δy=d(x,y+1)-d(x,y-1)(2)
其中,d(x,y)表示點(diǎn)(x,y)的深度值。之后,對得到的δx和δy進(jìn)行量化編碼:
式中td是一閾值。那么對于深度圖中一點(diǎn)(x,y),其在局部深度信息的變化特征就定義為(tx,ty)。它有3×3=9種組合形式,每種組合形式就描述了一種深度信息的變化情況,如當(dāng)取值為(1,1),則表示在點(diǎn)(x,y)的四領(lǐng)域內(nèi)右上角最高;當(dāng)取值為(-1,0)時(shí)則表示深度在y方向上變化不大,而在x方向上減小。
有了每個(gè)像素點(diǎn)的大小變化特征(tx,ty),就可以通過統(tǒng)計(jì)直方圖來獲得9種不同變化的分布情況,從而更精確的刻畫一個(gè)局部區(qū)域的深度變化特征了。具體說,以(tx,ty)的9種可能的組合形式作為直方圖的9個(gè)bin,取一統(tǒng)計(jì)單元統(tǒng)計(jì)每種情況的頻數(shù)。得到的每個(gè)bin的頻數(shù)組合起來,就是該統(tǒng)計(jì)單元的9維深度特征。
有了局部深度度信息的變化特征還是不夠的,由定義我們知道,它只能反映局部深度信息的相對大小,而無法反映局部深度的絕對大小。所以用局部深度信息的均值來描述該區(qū)域的深度信息的絕對大小。但是,考慮到在立體匹配的過程中會(huì)產(chǎn)生誤匹配點(diǎn),這些誤匹配點(diǎn)的深度將被賦值為零。它們不能正確反映該位置真正的深度信息,會(huì)降低局部區(qū)域的均值。所以對于這些誤匹配點(diǎn)應(yīng)在計(jì)算均值的時(shí)候?qū)⑵涮蕹?,即?/p>
其中,b表示待統(tǒng)計(jì)的局部區(qū)域,x表示b內(nèi)的像素點(diǎn),dx表示其深度值,n是b內(nèi)所有像素點(diǎn)的個(gè)數(shù),而n0是深度值為零的無效像素點(diǎn)。求得的
本發(fā)明選取9×9大小的窗口作為特征提取單元。將9×9的特征提取單元進(jìn)一步劃分為互不重疊的9個(gè)3×3大小的區(qū)塊,每個(gè)小區(qū)塊如中的小紅框所示。在每個(gè)小紅框中,計(jì)算中心像素的深度信息變化特征(tx,ty),這樣就得到了9組深度信息變化特征。之后,計(jì)算特征提取單元81個(gè)像素的有效平均值最為特征提取單元的深度信息的大小特征。選取27×27大小的窗口作為特征統(tǒng)計(jì)單元。統(tǒng)計(jì)共計(jì)81個(gè)深度信息變化特征的分布情況,作為統(tǒng)計(jì)單元的前9個(gè)特征維度。對于表征深度信息絕對大小的均值特征,依次按從左到右、從上到下的順序作為統(tǒng)計(jì)單元的后9個(gè)特征維度。每個(gè)特征提取單元深度大小的特征之外,也保留了這些深度大小特征的空間分布情況。最后,選取108×108大小的檢測窗口。在本發(fā)明的應(yīng)用場景下,該大小的窗口基本能覆蓋待檢測的行人輪廓。同樣,為了表征特征統(tǒng)計(jì)單元的空間分布情況,本發(fā)明將16個(gè)特征統(tǒng)計(jì)單元串聯(lián)起來,一次按照從左到右、從上到下的順序組合起來,就獲得了檢測窗口完整的深度信息描述子,共計(jì)18×16=288維。
步驟三:對得到的訓(xùn)練樣本使用libsvm選取rbf核作為svm的核函數(shù)針對深度信息特征來對行人分類器進(jìn)行訓(xùn)練;
步驟四:根據(jù)分類器在運(yùn)動(dòng)目標(biāo)區(qū)域以滑動(dòng)窗口的方式檢測運(yùn)動(dòng)目標(biāo)區(qū)域中的行人,使用非極大值抑制的辦法來剔除冗余的檢測窗口;
得到訓(xùn)練好的行人分類器之后,就可以在運(yùn)動(dòng)目標(biāo)區(qū)域以滑動(dòng)窗口的方式檢測運(yùn)動(dòng)目標(biāo)區(qū)域中的行人了。行人分類器在運(yùn)動(dòng)目標(biāo)區(qū)域滑動(dòng)過程中,會(huì)對存在同一行人的區(qū)域輸出多個(gè)檢測結(jié)果窗口,這是不必要。
對于運(yùn)動(dòng)目標(biāo)區(qū)域中檢測到的所以窗口根據(jù)置信概率進(jìn)行排序,從置信度最高的檢測窗口開始處理。計(jì)算其與剩余窗口的重疊面積,若面積大于閾值t,則認(rèn)為它們描述的是同一行人目標(biāo),將其剔除;否則,將其保留。當(dāng)遍歷完除最大置信概率的檢測窗口后,再計(jì)算除當(dāng)前窗口和剔除窗口后剩余窗口中置信概率最大的檢測窗口,如此循環(huán)直至處理完窗口。
步驟五:得到輸出圖像。
本發(fā)明的方法有效能夠有效減緩相互遮擋、相互粘連等情況,從而提高了行人識別的準(zhǔn)確率,獲得較好的檢測效果。
附圖說明
圖1是本發(fā)明的方法流程圖。
圖2是本發(fā)明的部分正樣本示意圖。
圖3是本發(fā)明的部分負(fù)樣本示意圖。
圖4是本發(fā)明的深度變化特征統(tǒng)計(jì)直方圖示意圖。
圖5是本發(fā)明的基于非極大值抑制的冗余檢測窗口消除算法流程圖。
圖6是本發(fā)明具體實(shí)施方式的冗余檢測窗口消除實(shí)驗(yàn)結(jié)果。
具體實(shí)施方式
本實(shí)施方式的方法,軟件環(huán)境為windows7系統(tǒng),仿真環(huán)境為matlab2008a,流程如圖1所示:
步驟一:制作訓(xùn)練樣本,制作設(shè)定姿態(tài)下和采集的真實(shí)場景視頻中的正樣本與負(fù)樣本;
訓(xùn)練樣本的準(zhǔn)備是構(gòu)建行人識別分類器的第一步。由于本發(fā)明需要識別的行人是基于深度信息的,沒有現(xiàn)成的數(shù)據(jù)庫,所以需要手動(dòng)制作訓(xùn)練樣本。訓(xùn)練樣本主要分為正樣本和負(fù)樣本。不論是正樣本還是負(fù)樣本,都需要盡量覆蓋各種可能出現(xiàn)的情況。
樣本的尺寸統(tǒng)一為108×108像素大小,基本可以覆蓋目標(biāo)行人的頭肩部。正樣本的構(gòu)建主要分為兩部分,一部分是設(shè)定姿態(tài)下的采樣,另一部分是采集真實(shí)場景的視頻,然后根據(jù)背景減除法獲得的運(yùn)動(dòng)目標(biāo)區(qū)域進(jìn)行掃描采樣,并手動(dòng)進(jìn)行標(biāo)記。設(shè)定姿態(tài)下,主要考慮頭部相對與肩部的位置變化、行人朝向變化、視角變化、行人身高變化等變化因素,盡量覆蓋所以可能的變化情況。一部分正樣本的示例如圖2所示。負(fù)樣本的采集同樣分為兩部分,一部分是設(shè)定的負(fù)樣本,另一部分是來自真實(shí)場景的運(yùn)動(dòng)區(qū)域掃描采集的負(fù)樣本。部分負(fù)樣本的實(shí)例如圖3所示。
步驟二:使用一種基于深度信息的特征描述子,用以描述行人(俯視視角下)在深度圖中的特征。該行人特征描述子主要分為兩部分,一部分用來刻畫局部深度信息的變化特征,另一部分用來刻畫局部深度信息的大小特征。
步驟三:一種基于深度信息的特征描述子,用以描述行人(俯視視角下)在深度圖中的特征。該行人特征描述子主要分為兩部分,一部分用來刻畫局部深度信息的變化特征,另一部分用來刻畫局部深度信息的大小特征。
有了每個(gè)像素點(diǎn)的大小變化特征(tx,ty),就可以通過統(tǒng)計(jì)直方圖來獲得9種不同變化的分布情況,從而更精確的刻畫一個(gè)局部區(qū)域的深度變化特征了。具體說,以(tx,ty)的9種可能的組合形式作為直方圖的9個(gè)bin,取一統(tǒng)計(jì)單元統(tǒng)計(jì)每種情況的頻數(shù)。得到的每個(gè)bin的頻數(shù)組合起來,就是該統(tǒng)計(jì)單元的9維深度特征了,其示意圖如圖4所示。
步驟四:得到訓(xùn)練好的行人分類器之后,就可以在運(yùn)動(dòng)目標(biāo)區(qū)域以滑動(dòng)窗口的方式檢測運(yùn)動(dòng)目標(biāo)區(qū)域中的行人了。行人分類器在運(yùn)動(dòng)目標(biāo)區(qū)域滑動(dòng)過程中,會(huì)對存在同一行人的區(qū)域輸出多個(gè)檢測結(jié)果窗口,這是不必要的,我們僅需獲得一個(gè)最準(zhǔn)確描述行人的檢測窗口??梢允褂梅菢O大值抑制的辦法來剔除冗余的檢測窗口,其流程圖如圖5所示。
對于運(yùn)動(dòng)目標(biāo)區(qū)域中檢測到的所以窗口根據(jù)置信概率進(jìn)行排序,從置信度最高的檢測窗口開始處理。計(jì)算其與剩余窗口的重疊面積,若面積大于閾值t,則認(rèn)為它們描述的是同一行人目標(biāo),將其剔除;否則,將其保留。當(dāng)遍歷完除最大置信概率的檢測窗口后,再計(jì)算除當(dāng)前窗口和剔除窗口后剩余窗口中置信概率最大的檢測窗口,如此循環(huán)直至處理完所以窗口。實(shí)驗(yàn)結(jié)果如下圖6所示。
綜上所述,基于支持向量機(jī)和深度特征的行人識別方法實(shí)現(xiàn)了行人識別的過程。該方法能夠有效減緩相互遮擋、相互粘連等情況,并且兼顧算法實(shí)時(shí)性,從而大幅度提高了算法的實(shí)時(shí)性和靈活性。