本發(fā)明是一種基于深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)的步態(tài)識別方法,涉及圖像處理、模式識別、深度傳感器、深度學(xué)習(xí)等技術(shù)領(lǐng)域。
背景技術(shù):
步態(tài)識別是一種生物特征識別技術(shù),能夠根據(jù)視頻序列中行人走路的姿態(tài)識別行人身份;與傳統(tǒng)的指紋、人臉、虹膜等生物識別技術(shù)相比,具有非接觸識別、易于隱藏,采集方便等優(yōu)勢,尤其適用于遠距離場景下的目標(biāo)識別任務(wù)。深度相機是一種能夠同時記錄rgb圖像和深度圖像的傳感器,與傳統(tǒng)相機相比,能夠為目標(biāo)識別任務(wù)提供更豐富、更立體的圖像信息。卷積神經(jīng)網(wǎng)絡(luò)是一種常用的深度學(xué)習(xí)框架,隨著深度學(xué)習(xí)在圖像處理和模式識別方面的應(yīng)用,卷積神經(jīng)網(wǎng)絡(luò)的研究和應(yīng)用也越來越受到人們的重視,傳統(tǒng)的2d卷積神經(jīng)網(wǎng)絡(luò)是以圖像為輸入數(shù)據(jù),提取圖像數(shù)據(jù)的空間分布特征,3d卷積神經(jīng)網(wǎng)絡(luò)是以連續(xù)的圖像序列或視頻序列為輸入,能夠同時提取輸入數(shù)據(jù)在時間和空間的分布特征。深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)結(jié)合應(yīng)用將會顯著提高步態(tài)識別的準(zhǔn)確率。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供了一種基于深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)的步態(tài)識別方法,其特征在于,包括步驟:a)利用深度相機采集行人步態(tài)的rgb-d圖像序列;b)獲取每幀圖像的步態(tài)剪影以及剪影對應(yīng)的深度圖像剪影;c)將每幀剪影圖像和深度圖像剪影組成雙通道的步態(tài)圖像;d)歸一化步態(tài)圖像序列;e)將步態(tài)圖像序列輸入3d卷積神經(jīng)網(wǎng)絡(luò),前向傳播并輸出識別結(jié)果。
優(yōu)選地,所述步驟d的具體步驟為:
d1)定位步態(tài)剪影的最上和最下像素點,從而計算步態(tài)剪影的高度h0;
d2)定位步態(tài)剪影的最左和最右像素點,從而計算步態(tài)剪影的寬度w0;
d3)根據(jù)步態(tài)剪影的高度和寬度,計算剪影的質(zhì)心位置;
d4)給定一個縱橫比r,以質(zhì)心為中心,用w0×h0的矩形裁剪步態(tài)圖像,其中w0=h0*r;
d5)將已裁剪的步態(tài)圖像等比例縮放到3d卷積神經(jīng)網(wǎng)絡(luò)的輸入尺寸;
d6)根據(jù)時間順序?qū)⒉綉B(tài)圖像重組成步態(tài)序列i1,其維度為wi×hi×ci×m,w1,h1,c1,m1分別為i1的寬度,高度,通道數(shù)和序列幀數(shù)。
優(yōu)選地,所述步驟e中3d卷積神經(jīng)網(wǎng)絡(luò)前向傳播的步驟為:
e1)第一組3d卷積層,對步驟d)所得的圖像序列進行3d卷積操作,卷積核大小為kw1×kh1×km1,步長為ks1,卷積核個數(shù)為kn1;其卷積輸出為
其中v1j(x,y,s)表示第j個卷積核的第s個特征圖在位置(x,y)處的值,b1j為第j個卷積偏移量,ω1j為第j個卷積權(quán)重,ω1j(α,β,γ)和i1(x,y,s)均為c1維向量;將每個卷積核對應(yīng)的特征圖歸為一組,則該層共有kn1組特征圖,每組(m1-km1)/ks1+1個特征圖,每個特征圖的尺寸為:
((w1-kw1)/ks1+1)×((h1-kh1)/ks1+1);
其輸出維度為:
((w1-kw1)/ks1+1)×((h1-kh1)/ks1+1)×((m1-km1)/ks1+1)×kn1;
e2)第一組relu激活函數(shù)層,對步驟e1)的輸出使用relu激活函數(shù),其輸出為:
e3)第一組3d池化層,對步驟e2)的輸出進行最大值池化,核大小為2×2×2,步長為2,按照步驟e1)中的分組規(guī)則,池化層對每組特征圖分別進行池化操作,其輸出為:
p1j(x,y,s)=max{y1j(x+α,y+β,s+γ)|α,β,γ=0,1}
池化層的輸出維度為:
((w1-kw1)/ks1+1)/2×((h1-kh1)/ks1+1)/2×((m1-km1)/ks1+1)/2×kn1
e4)第一組時序重構(gòu)層,對步驟e3)的輸出進行時序重構(gòu);按照步驟e1)所述,3d卷積層輸入的圖像序列是按照時序排列的,輸出的特征圖序列在每個分組內(nèi)的特征圖仍然是按照時序排列,不同分組之間的特征圖不滿足時序關(guān)系,而不同分組中相同位置的特征圖處于同一時間節(jié)點;按照e3)所述,3d池化層的輸出同樣滿足上述時序規(guī)則;為了使后續(xù)數(shù)據(jù)依然滿足時序要求,將不同分組中同一位置的特征圖組合在一起看作一幅多通道圖像,并將這些圖像按照時序排列;令該時序重構(gòu)層的輸出為i2,其維度為w2×h2×c2×m2,則:
i2(x,y,s,j)表示i2第s組第j個特征圖在位置(x,y)處的值;
e5)第二組3d卷積層,對步驟e4)的輸出進行3d卷積操作,卷積核大小為kw2×kh2×km2,步長為ks2,卷積核個數(shù)為kn2;其卷積輸出為
其中v2j(x,y,s)表示第j個卷積核的第s個特征圖在位置(x,y)處的值,b2j為第j個卷積偏移量,ω2j為第j個卷積權(quán)重,ω2j(α,β,γ)和i2(x,y,s)均為c2維向量;其輸出維度為
((w2-kw2)/ks2+1)×((h2-kh2)/ks2+1)×((m2-km2)/ks2+1)×kn2;
e6)第二組relu激活函數(shù)層,對步驟e5)的輸出使用relu激活函數(shù),其輸出為:
e7)第二組3d池化層,對步驟e6)的輸出進行最大值池化,核大小為2×2×2,步長為2,其輸出為:
p2j(x,y,s)=max{y2j(x+α,y+β,s+γ)|α,β,γ=0,1}
輸出維度((w2-kw2)/ks2+1)/2×((h2-kh2)/ks2+1)/2×((m2-km2)/ks2+1)/2×kn2;
e8)第二組時序重構(gòu)層,對步驟e7)的輸出進行時序重構(gòu);令該時序重構(gòu)層的輸出為i3,其維度為w3×h3×c3×m3,則:
i3(x,y,s,j)表示i3第s組第j個特征圖在位置(x,y)處的值;
e9)2d卷積網(wǎng)絡(luò),對步驟e8)的輸出進行2d卷積和分類識別,采用裁剪的vgg16網(wǎng)絡(luò),具體方案為:刪除conv1_1~pool2的網(wǎng)絡(luò)結(jié)構(gòu),i3作為conv3_1的輸入,fc8的維度與類別數(shù)目一致。應(yīng)當(dāng)理解,前述大體的描述和后續(xù)詳盡的描述均為示例性說明和解釋,并不應(yīng)當(dāng)用作對本發(fā)明所要求保護內(nèi)容的限制。
附圖說明
參考隨附的附圖,本發(fā)明更多的目的、功能和優(yōu)點將通過本發(fā)明實施方式的如下描述得以闡明,其中:
圖1示出了根據(jù)本發(fā)明的一種基于深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)的步態(tài)識別方法的流程圖;
圖2示出了根據(jù)本發(fā)明的一種基于深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)的步態(tài)識別方法中歸一化步態(tài)圖像序列的流程圖;
圖3示出了根據(jù)本發(fā)明的一種基于深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)的步態(tài)識別方法中3d卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)圖。
具體實施方式
通過參考示范性實施例,本發(fā)明的目的和功能以及用于實現(xiàn)這些目的和功能的方法將得以闡明。然而,本發(fā)明并不受限于以下所公開的示范性實施例;可以通過不同形式來對其加以實現(xiàn)。說明書的實質(zhì)僅僅是幫助相關(guān)領(lǐng)域技術(shù)人員綜合理解本發(fā)明的具體細(xì)節(jié)。
在下文中,將參考附圖描述本發(fā)明的實施例。在附圖中,相同的附圖標(biāo)記代表相同或類似的部件,或者相同或類似的步驟。
為了便于本領(lǐng)域普通技術(shù)人員理解和實施本發(fā)明,下面結(jié)合附圖對本發(fā)明作進一步的詳細(xì)描述。
如圖1所示,一種基于深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)的步態(tài)識別方法的步驟為:
步驟101:利用深度相機采集行人步態(tài)的rgb-d圖像序列;
步驟102:獲取每幀圖像的步態(tài)剪影以及剪影對應(yīng)的深度圖像剪影;
步驟103:將每幀剪影圖像和深度圖像剪影組成雙通道的步態(tài)圖像;
步驟104:歸一化步態(tài)圖像序列;
根據(jù)本發(fā)明的一個實施例,所述步驟104的具體步驟為:
步驟201:定位步態(tài)剪影的最上和最下像素點,從而計算步態(tài)剪影的高度h0;
步驟202:定位步態(tài)剪影的最左和最右像素點,從而計算步態(tài)剪影的寬度w0;
步驟203:根據(jù)步態(tài)剪影的高度和寬度,計算剪影的質(zhì)心位置;
步驟204:給定一個縱橫比r,以質(zhì)心為中心,用w0×h0的矩形裁剪步態(tài)圖像,其中w0=h0*r;
步驟205:將已裁剪的步態(tài)圖像等比例縮放到3d卷積神經(jīng)網(wǎng)絡(luò)的輸入尺寸;
步驟206:根據(jù)時間順序?qū)⒉綉B(tài)圖像重組成步態(tài)序列i1,其維度為wi×hi×ci×mi,w1,h1,c1,m1分別為i1的寬度,高度,通道數(shù)和序列幀數(shù)。
步驟105:將步態(tài)圖像序列輸入3d卷積神經(jīng)網(wǎng)絡(luò),前向傳播并輸出識別結(jié)果。
根據(jù)本發(fā)明的一個實施例,所述步驟105的3d卷積神經(jīng)網(wǎng)絡(luò)前向傳播的步驟為:
步驟301:3dconv_1,第一組3d卷積層,對步驟104所得的圖像序列進行3d卷積操作,卷積核大小為kw1×kh1×km1,步長為ks1,卷積核個數(shù)為kn1;其卷積輸出為
其中v1j(x,y,s)表示第j個卷積核的第s個特征圖在位置(x,y)處的值,b1j為第j個卷積偏移量,ω1j為第j個卷積權(quán)重,ω1j(α,β,γ)和i1(x,y,s)均為c1維向量;將每個卷積核對應(yīng)的特征圖歸為一組,則該層共有kn1組特征圖,每組(m1-km1)/ks1+1個特征圖,每個特征圖的尺寸為:
((w1-kw1)/ks1+1)×((h1-kh1)/ks1+1);
其輸出維度為:
((w1-kw1)/ks1+1)×((h1-kh1)/ks1+1)×((m1-km1)/ks1+1)×kn1;
步驟302:relu_1,第一組relu激活函數(shù)層,對步驟301的輸出使用relu激活函數(shù),其輸出為:
步驟303:3dpool_1,第一組3d池化層,對步驟302的輸出進行最大值池化,核大小為2×2×2,步長為2,按照步驟301中的分組規(guī)則,池化層對每組特征圖分別進行池化操作,其輸出為:
p1j(x,y,s)=max{y1j(x+α,y+β,s+γ)|α,β,γ=0,1}
池化層的輸出維度為:
((w1-kw1)/ks1+1)/2×((h1-kh1)/ks1+1)/2×((m1-km1)/ks1+1)/2×kn1
步驟304:restruct_1,第一組時序重構(gòu)層,對步驟303的輸出進行時序重構(gòu);按照步驟301所述,3d卷積層輸入的圖像序列是按照時序排列的,輸出的特征圖序列在每個分組內(nèi)的特征圖仍然是按照時序排列,不同分組之間的特征圖不滿足時序關(guān)系,而不同分組中相同位置的特征圖處于同一時間節(jié)點;按照303所述,3d池化層的輸出同樣滿足上述時序規(guī)則;為了使后續(xù)數(shù)據(jù)依然滿足時序要求,將不同分組中同一位置的特征圖組合在一起看作一幅多通道圖像,并將這些圖像按照時序排列;令該時序重構(gòu)層的輸出為i2,其維度為w2×h2×c2×m2,則:
i2(x,y,s,j)表示i2第s組第j個特征圖在位置(x,y)處的值;
步驟305:3dconv_2,第二組3d卷積層,對步驟304的輸出進行3d卷積操作,卷積核大小為kw2×kh2×km2,步長為ks2,卷積核個數(shù)為kn2;其卷積輸出為
其中v2j(x,y,s)表示第j個卷積核的第s個特征圖在位置(x,y)處的值,b2j為第j個卷積偏移量,ω2j為第j個卷積權(quán)重,ω2j(α,β,γ)和i2(x,y,s)均為c2維向量;其輸出維度為
((w2-kw2)/ks2+1)×((h2-kh2)/ks2+1)×((m2-km2)/ks2+1)×kn2;
步驟306:relu_2,第二組relu激活函數(shù)層,對步驟305的輸出使用relu激活函數(shù),其輸出為:
步驟307:3dpool_2,第二組3d池化層,對步驟306的輸出進行最大值池化,核大小為2×2×2,步長為2,其輸出為:
p2j(x,y,s)=max{y2j(x+α,y+β,s+γ)|α,β,γ=0,1}
輸出維度((w2-kw2)/ks2+1)/2×((h2-kh2)/ks2+1)/2×((m2-km2)/ks2+1)/2×kn2;
步驟308:restruct_2,第二組時序重構(gòu)層,對步驟307的輸出進行時序重構(gòu);令該時序重構(gòu)層的輸出為i3,其維度為w3×h3×c3×m3,則:
i3(x,y,s,j)表示i3第s組第j個特征圖在位置(x,y)處的值;
步驟309:vgg16_reduced,2d卷積網(wǎng)絡(luò),對步驟308的輸出進行2d卷積和分類識別,采用裁剪的vgg16網(wǎng)絡(luò),具體方案為:刪除conv1_1~pool2的網(wǎng)絡(luò)結(jié)構(gòu),i3作為conv3_1的輸入,fc8的維度與類別數(shù)目一致。
綜上,本發(fā)明一種基于深度相機和3d卷積神經(jīng)網(wǎng)絡(luò)的步態(tài)識別方法,以深度相機作為采集裝置,同時考慮步態(tài)圖像的顏色信息和深度信息,采用3d池化和時序重構(gòu)操作,提供了一種新穎的3d卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),直接以步態(tài)圖像序列為輸入,能夠同時提取步態(tài)序列的時間特征和空間特征,有效的提高了步態(tài)識別的準(zhǔn)確率。
結(jié)合這里披露的本發(fā)明的說明和實踐,本發(fā)明的其他實施例對于本領(lǐng)域技術(shù)人員都是易于想到和理解的。說明和實施例僅被認(rèn)為是示例性的,本發(fā)明的真正范圍和主旨均由權(quán)利要求所限定。