一種基于rgb彩色與深度圖像的三維運(yùn)動重建方法
【專利摘要】本發(fā)明公開的一種基于RGB彩色與深度圖像的三維運(yùn)動重建方法,首先使用Kinect獲取人體運(yùn)動的RGB彩色與深度圖像,并對其進(jìn)行去除噪聲和圖像校正處理;其次,根據(jù)背景的復(fù)雜程度采用不同的方法去除背景,獲得前景RGB彩色圖像;再次,依據(jù)膚色模型在前景RGB彩色圖像中對臉部及手部進(jìn)行定位,并將定位的臉部及手部的質(zhì)心作為初始獲取的關(guān)節(jié)點(diǎn);然后,基于學(xué)習(xí)得到的貝葉斯分類器對前景RGB彩色圖像中的運(yùn)動人體進(jìn)行部件分類識別,并依據(jù)分類識別結(jié)果判定肢體各剛體結(jié)構(gòu)部位類別,再根據(jù)各剛體部件的鏈接關(guān)系確定出各關(guān)節(jié)點(diǎn);最后,依次聯(lián)接各關(guān)節(jié)點(diǎn)形成平面骨架,再結(jié)合各關(guān)節(jié)點(diǎn)的深度數(shù)據(jù)將平面人體骨架變換成人體三維骨架。
【專利說明】—種基于RGB彩色與深度圖像的三維運(yùn)動重建方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于視頻的三維運(yùn)動重建【技術(shù)領(lǐng)域】,具體涉及一種基于RGB彩色與深度圖像的三維運(yùn)動重建方法。
【背景技術(shù)】
[0002]人體三維運(yùn)動重建的方法種類繁多,傳統(tǒng)方法是在人體各關(guān)節(jié)部位加裝傳感器,當(dāng)人體運(yùn)動時,傳感器會不斷地將各關(guān)節(jié)空間位置信息返回計算機(jī),這樣計算機(jī)就可以精確獲得人體各時刻的運(yùn)動信息;更簡易的運(yùn)動信息捕獲方法針對圖像序列進(jìn)行分析,圖像序列可以是單攝像機(jī)攝制的,也可以是多個像機(jī)同時從各個視角攝制的,這一般分三步順序完成,首先從圖像幀中提取低層特征,如各關(guān)節(jié)的位置,并對之進(jìn)行識別,然后是在各個幀的特征間建立對應(yīng)關(guān)系,最后是從特征對應(yīng)中恢復(fù)人體三維骨架。然而,這兩種方法所用的設(shè)備都比較昂貴,不適合個人電腦的軟件開發(fā)。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的是提供一種基于RGB彩色與深度圖像的三維運(yùn)動重建方法,解決了現(xiàn)有的方法重建成本高,重建失真度高,操作復(fù)雜的問題。
[0004]本發(fā)明采用的技術(shù)方案是,一種基于RGB彩色與深度圖像的三維運(yùn)動重建方法,具體按照以下步驟實(shí)施:
[0005]步驟1:使用Kinect獲取人體運(yùn)動的RGB彩色與深度圖像;
[0006]步驟2:去除RGB彩色與深度圖像噪聲,并對其進(jìn)行圖像校正處理;
[0007]步驟3:根據(jù)RGB彩色圖像背景的復(fù)雜程度采用不同方法去除背景,獲得前景RGB彩色圖像;
[0008]步驟4:基于前景RGB彩色圖像且依據(jù)膚色模型對臉部及手部進(jìn)行定位;并將臉部及手部定位質(zhì)心作為初始獲取的關(guān)節(jié)點(diǎn);
[0009]步驟5:基于學(xué)習(xí)得到的貝葉斯分類器對RGB彩色圖像前景中的運(yùn)動人體進(jìn)行部件分類識別;
[0010]步驟6:依據(jù)分類識別結(jié)果判定肢體各剛體結(jié)構(gòu)部位類別,再根據(jù)各剛體部件的鏈接關(guān)系確定出各關(guān)節(jié)點(diǎn),依次聯(lián)接各關(guān)節(jié)點(diǎn)形成平面人體骨架;
[0011]步驟7:結(jié)合各個關(guān)節(jié)點(diǎn)深度數(shù)據(jù)將平面骨架變換成三維立體骨架。
[0012]本發(fā)明的特點(diǎn)還在于,
[0013]其中的步驟3具體按照以下步驟實(shí)施:
[0014]a.當(dāng)RGB彩色圖像背景簡單時,利用背景減除法直接將RGB彩色圖像的當(dāng)前幀Ik(x, y)與已知背景 Ibg(X,y)做差,則差分后圖像 dk(x, y) = Ik(x, y)-1bg(x, y);
[0015]b.當(dāng)RGB彩色圖像背景復(fù)雜時,利用深度數(shù)據(jù)預(yù)先設(shè)定一個合理的閾值Tk,把當(dāng)前像素dk(x,y)同預(yù)先給定閾值進(jìn)行比較,當(dāng)I dk(x, y) I >Tk時,(x, y)為運(yùn)動目標(biāo),當(dāng)
dk(x, y)彡Tk時,(x,y)為背景,然后再將RGB彩色圖像中的背景去掉,從而將人體分割出來;
[0016]c.通過以上兩種方法即可獲得前景RGB彩色圖像。
[0017]其中的步驟5具體按照以下步驟實(shí)施:
[0018]a.使用專門設(shè)備拍攝單目視頻,構(gòu)建有M個人體運(yùn)動的視頻庫A =(Al,A。,...,j...,Am);
[0019]b.對每一個運(yùn)動視頻Ai進(jìn)行人工標(biāo)注;
[0020]c.提取視頻Ai的每巾貞圖像,得到巾貞圖像Fi = (fn, fi2,..., f^.,..., fim),其中m表示視頻Ai的幀數(shù),對每一幀運(yùn)動視頻手工將運(yùn)動目標(biāo)分割成左臂、右臂、軀干、左腿、右腿5個肢體部位,且分別記為Zijl, ZiJ2, ZiJ3, ZiJ4, Zij5,形成訓(xùn)練樣本集合;
[0021]d.基于多個運(yùn)動、多幀數(shù)據(jù)的分割圖像學(xué)習(xí)得到身體各個部位的貝葉斯多類分類器;
[0022]e.對貝葉斯多類分類器進(jìn)行參數(shù)修正。
[0023]其中的步驟6具體按照以下步驟實(shí)施:
[0024]a.將已經(jīng)判斷出來的臉、左手和右手的關(guān)節(jié)點(diǎn)分別記為a、b和c ;
[0025]b.依據(jù)分類識別結(jié)果,可將左臂、右臂、軀干、左腿、右腿5個肢體部位判別出來。由于左臂部位的兩端為左肩與左手,又已知左手部位,故可判斷出左肩部位,計算其質(zhì)心即可找到左肩關(guān)節(jié)點(diǎn)e,同理可找到右肩關(guān)節(jié)點(diǎn)f。聯(lián)接兩肩關(guān)節(jié)點(diǎn)并取其中點(diǎn)即可得到頸部關(guān)節(jié)點(diǎn)g。而軀干部位的兩端為頸部和胯部,已經(jīng)頸部,從而可以確定胯部,進(jìn)而確定胯部關(guān)節(jié)點(diǎn)h??桕P(guān)節(jié)點(diǎn)在髖關(guān)節(jié)點(diǎn)的中點(diǎn)位置,而髖部又連接人體的軀干和腿部,從而可以確定出髖部,進(jìn)而確定出左髖關(guān)節(jié)點(diǎn)i和右髖關(guān)節(jié)點(diǎn)j。由于左腿部位兩端為左髖部和左腳,又已知左髖部,從而判斷出左腳位置,進(jìn)而判斷找出左腳關(guān)節(jié)點(diǎn)k。同理可找到右腳關(guān)節(jié)點(diǎn)I。
[0026]c.由于左臂部位是由左上臂和左下臂兩個剛體組成,根據(jù)剛體部件的鏈接關(guān)系,可以確定左射部位,進(jìn)而找出左射關(guān)節(jié)點(diǎn)。同理可找出右射、左膝和右膝關(guān)節(jié)點(diǎn)。
[0027]d.依次聯(lián)接各關(guān)節(jié)點(diǎn)形成平面人體骨架。
[0028]本發(fā)明的有益效果是:
[0029](I)利用Kinect獲取RGB彩色和深度圖像,結(jié)合Kinect for Windows SDK,實(shí)現(xiàn)了圖像的校正和匹配;
[0030](2)先利用皮膚顏色和分類器學(xué)習(xí)獲得人體的平面骨架,再結(jié)合深度圖像將人體平面骨架轉(zhuǎn)化為人體三維骨架,可以大大地減少運(yùn)算量。
【專利附圖】
【附圖說明】
[0031]圖1為本發(fā)明方法的總體流程圖;
[0032]圖2為本發(fā)明步驟3的具體流程框圖。
【具體實(shí)施方式】
[0033]下面結(jié)合附圖和【具體實(shí)施方式】對本發(fā)明進(jìn)行詳細(xì)說明。
[0034]本發(fā)明基于RGB彩色與深度圖像的三維運(yùn)動重建方法,如圖1所示,具體按照以下步驟實(shí)施:
[0035]步驟1:使用Kinect獲取人體運(yùn)動的RGB彩色與深度圖像;
[0036]步驟2:去除RGB彩色與深度圖像噪聲,并對其進(jìn)行圖像校正處理;
[0037]步驟3:根據(jù)RGB彩色圖像背景的復(fù)雜程度采用不同方法去除背景,獲得前景RGB彩色圖像;
[0038]如圖2所示,具體包括以下步驟:
[0039]a.當(dāng)RGB彩色圖像背景簡單時,利用背景減除法直接將RGB彩色圖像的當(dāng)前幀Ik(x, y)與已知背景 Ibg(X,y)做差,則差分后圖像 dk(x, y) = Ik(x, y)-1bg(x, y);
[0040]b.當(dāng)RGB彩色圖像背景復(fù)雜時,利用深度數(shù)據(jù)預(yù)先設(shè)定一個合理的閾值Tk,把當(dāng)前像素dk(x,y)同預(yù)先給定閾值進(jìn)行比較,當(dāng)I dk(x, y) I >Tk時,(x, y)為運(yùn)動目標(biāo),當(dāng)
dk(x, y) I彡Tk時,(x, y)為背景,然后再將RGB彩色圖像中的背景去掉,從而將人體分割出來;
[0041]c.通過以上兩種方法即可獲得前景RGB彩色圖像。
[0042]步驟4:基于前景RGB彩色圖像且依據(jù)膚色模型對臉部及手部進(jìn)行定位,并將臉部及手部定位質(zhì)心作為初始獲取的關(guān)節(jié)點(diǎn);
[0043]步驟5:基于學(xué)習(xí)得到的貝葉斯分類器對前景RGB彩色圖像中的運(yùn)動人體進(jìn)行部件分類識別;
[0044]具體包括以下步驟:
[0045]a.使用專門設(shè)備拍攝單目視頻,構(gòu)建有M個人體運(yùn)動的視頻庫A =(Al,A。,...,j...,Am);
[0046]b.對每一個運(yùn)動視頻Ai進(jìn)行人工標(biāo)注;
[0047]c.提取視頻Ai的每巾貞圖像,得到巾貞圖像Fi = (fn, fi2,..., f^.,..., fim),其中m表示視頻Ai的幀數(shù),對每一幀運(yùn)動視頻手工將運(yùn)動目標(biāo)分割成左臂、右臂、軀干、左腿、右腿5個肢體部位,且分別記為Zijl, ZiJ2, ZiJ3, ZiJ4, Zij5,形成訓(xùn)練樣本集合;
[0048]d.基于多個運(yùn)動、多幀數(shù)據(jù)的分割圖像學(xué)習(xí)得到身體各個部位的貝葉斯多類分類器;
[0049]具體包括以下步驟:
[0050]假設(shè)樣本的每個特征與其他特征都不相關(guān),并設(shè)每個實(shí)例X可由屬性值的集合描述,分類實(shí)例X的目標(biāo)是在給定描述實(shí)例屬性值<w1; w2, w3, w4, w5>情況下,找出最可能的類標(biāo)記C(X),根據(jù)極大后驗(yàn)假設(shè)可以得出:
[0051]f(.v) ^ arg max Pic | vv,, \vs)( I )
ceC
[0052]設(shè)目標(biāo)值與屬性值之間相互獨(dú)立,則應(yīng)用貝葉斯公式可以將上式改寫成:
[0053]c(.v) = arg max P(c )Π"( Ic)(2)
ceCJ=I
[0054]其中:P(c)表示c的先驗(yàn)概率,P(Wj|c)是通過計算訓(xùn)練實(shí)例集中不同類和屬性值組合的出現(xiàn)概率進(jìn)行的估計。
[0055]計算所得后驗(yàn)概率最高的類別,即為實(shí)例X最可能所屬的類別。
[0056]e.對貝葉斯多類分類器進(jìn)行參數(shù)修正。
[0057]步驟6:依據(jù)分類識別結(jié)果判定肢體各剛體結(jié)構(gòu)部位類別,再根據(jù)各剛體部件的鏈接關(guān)系確定出各關(guān)節(jié)點(diǎn),依次聯(lián)接各關(guān)節(jié)點(diǎn)形成平面人體骨架;
[0058]具體包括以下步驟:
[0059]a.將已經(jīng)判斷出來的臉、左手和右手的關(guān)節(jié)點(diǎn)分別記為a、b和c ;
[0060]b.依據(jù)分類識別結(jié)果,可將左臂、右臂、軀干、左腿、右腿5個肢體部位判別出來。由于左臂部位的兩端為左肩與左手,又已知左手部位,故可判斷出左肩部位,計算其質(zhì)心即可找到左肩關(guān)節(jié)點(diǎn)e,同理可找到右肩關(guān)節(jié)點(diǎn)f。聯(lián)接兩肩關(guān)節(jié)點(diǎn)并取其中點(diǎn)即可得到頸部關(guān)節(jié)點(diǎn)g。而軀干部位的兩端為頸部和胯部,已經(jīng)頸部,從而可以確定胯部,進(jìn)而確定胯部關(guān)節(jié)點(diǎn)h。胯關(guān)節(jié)點(diǎn)在髖關(guān)節(jié)點(diǎn)的中點(diǎn)位置,而髖部又連接人體的軀干和腿部,從而可以確定出髖部,進(jìn)而確定出左髖關(guān)節(jié)點(diǎn)i和右髖關(guān)節(jié)點(diǎn)j。由于左腿部位兩端為左髖部和左腳,又已知左髖部,從而判斷出左腳位置,進(jìn)而判斷找出左腳關(guān)節(jié)點(diǎn)k。同理可找到右腳關(guān)節(jié)點(diǎn)I。
[0061]c.由于左臂部位是由左上臂和左下臂兩個剛體組成,根據(jù)剛體部件的鏈接關(guān)系,可以確定左射部位,進(jìn)而找出左射關(guān)節(jié)點(diǎn)。同理可找出右射、左膝和右膝關(guān)節(jié)點(diǎn)。
[0062]d.依次聯(lián)接各關(guān)節(jié)點(diǎn)形成平面人體骨架。
[0063]步驟7:結(jié)合各個關(guān)節(jié)點(diǎn)深度數(shù)據(jù)將平面骨架變換成三維立體骨架。
[0064]深度圖像指從觀察視角去看去,圖像所包含信息與場景物體表面距離相關(guān)的一種圖像或一個圖像通道,且其每一個像素點(diǎn)坐標(biāo)都是三維的。假設(shè)圖像深度值的變化方向(即攝像機(jī)拍攝方向)與所需要描述的三維場景的視場方向Z方向相同的話,那么就能夠找到平面人體骨架各關(guān)節(jié)點(diǎn)對應(yīng)的Z值。從而,將平面人體骨架恢復(fù)成三維人體骨架。
[0065]本發(fā)明的特點(diǎn)及效果:
[0066]本發(fā)明通過兩個關(guān)鍵技術(shù)提高了三維立體骨架的準(zhǔn)確度,一是依據(jù)膚色模型對臉部及手部進(jìn)行定位并確定出其關(guān)節(jié)點(diǎn),這種方式為接下來尋找身體其他關(guān)節(jié)點(diǎn)確定了大致方向,同時也可以驗(yàn)證其它身體關(guān)節(jié)點(diǎn)的準(zhǔn)確性;二是通過建立大量豐富的數(shù)據(jù)庫學(xué)習(xí)得到的貝葉斯分類器對RGB彩色圖像前景中的運(yùn)動人體進(jìn)行部件分類識別,使得獲得的人體骨架更加準(zhǔn)確。
[0067]本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點(diǎn)在于:
[0068](I)使用Kinect同時獲取RGB彩色和深度圖像后,只需去除RGB彩色與深度圖像噪聲并對其進(jìn)行圖像校正處理,即可獲得兩幅完全對應(yīng)的RGB彩色和深度圖像;
[0069](2)對于背景復(fù)雜的情況下,利用深度數(shù)據(jù)獲得前景RGB彩色圖像,大大減少了運(yùn)算量,而且分割效果很好;
[0070](3)對貝葉斯多類分類器進(jìn)行參數(shù)修正,更進(jìn)一步增強(qiáng)了得到的人體骨架的準(zhǔn)確度。
【權(quán)利要求】
1.一種基于RGB彩色與深度圖像的三維運(yùn)動重建方法,其特征在于,具體按照以下步驟實(shí)施: 步驟1:使用Kinect獲取人體運(yùn)動的RGB彩色與深度圖像; 步驟2:去除RGB彩色與深度圖像噪聲,并對其進(jìn)行圖像校正處理; 步驟3:根據(jù)RGB彩色圖像背景的復(fù)雜程度采用不同方法去除背景,獲得前景RGB彩色圖像; 步驟4:基于前景RGB彩色圖像且依據(jù)膚色模型對臉部及手部進(jìn)行定位;并將臉部及手部定位質(zhì)心作為初始獲取的關(guān)節(jié)點(diǎn); 步驟5:基于學(xué)習(xí)得到的貝葉斯分類器對RGB彩色圖像前景中的運(yùn)動人體進(jìn)行部件分類識別; 步驟6:依據(jù)分類識別結(jié)果判定肢體各剛體結(jié)構(gòu)部位類別,再根據(jù)各剛體部件的鏈接關(guān)系確定出各關(guān)節(jié)點(diǎn),依次聯(lián)接各關(guān)節(jié)點(diǎn)形成平面人體骨架; 步驟7:結(jié)合各個關(guān)節(jié)點(diǎn)深度數(shù)據(jù)將平面骨架變換成三維立體骨架。
2.根據(jù)權(quán)利要求1所述的基于RGB彩色與深度圖像的三維運(yùn)動重建方法,其特征在于,所述的步驟3具體按照以下步驟實(shí)施: a.當(dāng)RGB彩色圖像背景簡單時,利用背景減除法直接將RGB彩色圖像的當(dāng)前幀Ik(x,y)與已知背景Ibg(X,y)做差,貝1J差分后圖像dk(x, y) = Ik(x, y)-1bg(x, y); b.當(dāng)RGB彩色圖像背景復(fù)雜時,利用深度數(shù)據(jù)預(yù)先設(shè)定一個合理的閾值Tk,把當(dāng)前像素dk(x,y)同預(yù)先給定閾值進(jìn)行比較,當(dāng)|dk(x,y) |>Tk時,(x,y)為運(yùn)動目標(biāo),當(dāng)dk(x, y) I彡Tk時,(x, y)為背景,然后再將RGB彩色圖像中的背景去掉,從而將人體分割出來; c.通過以上兩種方法即可獲得前景RGB彩色圖像。
3.根據(jù)權(quán)利要求1所述的基于RGB彩色與深度圖像的三維運(yùn)動重建方法,其特征在于,所述的步驟5具體按照以下步驟實(shí)施: a.使用專門設(shè)備拍攝單目視頻,構(gòu)建有M個人體運(yùn)動的視頻庫A=(Al,A。,...,j...,Am); b.對每一個運(yùn)動視頻Ai進(jìn)行人工標(biāo)注; c.提取視頻Ai的每巾貞圖像,得到巾貞圖像Fi= (fn, fi2,...,fij,...,fim),其中m表示視頻Ai的幀數(shù),對每一幀運(yùn)動視頻手工將運(yùn)動目標(biāo)分割成左臂、右臂、軀干、左腿、右腿5個肢體部位,且分別記為Zi^ ZiJ2, ZiJ3, ZiJ4, Zij5,形成訓(xùn)練樣本集合; d.基于多個運(yùn)動、多幀數(shù)據(jù)的分割圖像學(xué)習(xí)得到身體各個部位的貝葉斯多類分類器; e.對貝葉斯多類分類器進(jìn)行參數(shù)修正。
4.根據(jù)權(quán)利要求3所述的基于RGB彩色與深度圖像的三維運(yùn)動重建方法,其特征在于,所述的步驟d具體按照以下步驟實(shí)施:假設(shè)樣本的每個特征與其他特征都不相關(guān),并設(shè)每個實(shí)例X可由屬性值的集合描述,分類實(shí)例X的目標(biāo)是在給定描述實(shí)例屬性值<Wl,w2, w3,W4, W5>情況下,找出最可能的類標(biāo)記C(X),根據(jù)極大后驗(yàn)假設(shè)可以得出:
c{..v) = arg max P{c j u’丨,u',,..., u、)
ceC~
(I) 設(shè)目標(biāo)值與屬性值之間相互獨(dú)立,則應(yīng)用貝葉斯公式可以將上式改寫成: c(x) = arg max Jp^-)ΓΤ 尸(w., Ic)(2)
ceC'i=l 其中:P(C)表示C的先驗(yàn)概率,P(WjIc)是通過計算訓(xùn)練實(shí)例集中不同類和屬性值組合的出現(xiàn)概率進(jìn)行的估計。 計算所得后驗(yàn)概率最高的類別,即為實(shí)例X最可能所屬的類別。
5.根據(jù)權(quán)利要求1所述的基于RGB彩色與深度圖像的三維運(yùn)動重建方法,其特征在于,所述的步驟6具體按照以下步驟實(shí)施: a.將已經(jīng)判斷出來的臉、左手和右手的關(guān)節(jié)點(diǎn)分別記為a、b和c; b.依據(jù)分類識別結(jié)果,可將左臂、右臂、軀干、左腿、右腿5個肢體部位判別出來。由于左臂部位的兩端為左肩與左手,又已知左手部位,故可判斷出左肩部位,計算其質(zhì)心即可找到左肩關(guān)節(jié)點(diǎn)e,同理可找到右肩關(guān)節(jié)點(diǎn)f。聯(lián)接兩肩關(guān)節(jié)點(diǎn)并取其中點(diǎn)即可得到頸部關(guān)節(jié)點(diǎn)g。而軀干部位的兩端為頸部和胯部,已經(jīng)頸部,從而可以確定胯部,進(jìn)而確定胯部關(guān)節(jié)點(diǎn)h??桕P(guān)節(jié)點(diǎn)在髖關(guān)節(jié)點(diǎn)的中點(diǎn)位置,而髖部又連接人體的軀干和腿部,從而可以確定出髖部,進(jìn)而確定出左髖關(guān)節(jié)點(diǎn)i和右髖關(guān)節(jié)點(diǎn)j。由于左腿部位兩端為左髖部和左腳,又已知左髖部,從而判斷出左腳位置,進(jìn)而判斷找出左腳關(guān)節(jié)點(diǎn)k。同理可找到右腳關(guān)節(jié)點(diǎn)I。 c.由于左臂部位是由左上臂和左下臂兩個剛體組成,根據(jù)剛體部件的鏈接關(guān)系,可以確定左射部位,進(jìn)而找出左射關(guān)節(jié)點(diǎn)。同理可找出右射、左膝和右膝關(guān)節(jié)點(diǎn)。 d.依次聯(lián)接各關(guān)節(jié)點(diǎn)形成平面人體骨架。
【文檔編號】G06T7/00GK104167016SQ201410267815
【公開日】2014年11月26日 申請日期:2014年6月16日 優(yōu)先權(quán)日:2014年6月16日
【發(fā)明者】肖秦琨, 趙艷, 高嵩 申請人:西安工業(yè)大學(xué)