專利名稱:移動設(shè)備的空間交互方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像處理、三維圖像重建、人機(jī)交互和計算機(jī)應(yīng)用等領(lǐng)域,尤其涉及一種移動設(shè)備的空間交互方法。
背景技術(shù):
移動設(shè)備的空間交互技術(shù)是利用具有人機(jī)交互能力的移動設(shè)備(如手機(jī)、IPad等)進(jìn)行空間交互,使得移動設(shè)備中的虛擬物體可以按照人的指示做出相應(yīng)的響應(yīng)。圖I是現(xiàn)有的移動設(shè)備的空間交互技術(shù)的示意圖。如圖I所示,移動設(shè)備中顯示有一幅貓的圖像,通過移動設(shè)備的空間交互,我們可以在移動設(shè)備的前方(其攝像頭可拍攝的地方)用手做一個假的抓取動作的手勢,移動設(shè)備通過識別該手勢,使其顯示的虛擬貓被虛擬的手抓取。 空間交互方法通常包括深度圖像重建、手部區(qū)域分割、坐標(biāo)歸一、碰撞檢測、運動過程描述和手勢識別、虛擬場景響應(yīng)等步驟,其中深度圖像重建是其中一個關(guān)鍵步驟。在計算機(jī)視覺領(lǐng)域中,深度圖扮演著十分重要的角色,它的快速獲取顯得非常重要。深度圖不僅可以生成立體圖像,還可以實現(xiàn)三維模型的重建和基于圖像的渲染。其中在實時的三維模型重建中,深度圖獲取的準(zhǔn)確性和實時性顯得尤為重要。對于深度圖的獲取有著多種多樣的方法,例如激光成像雷達(dá)、激光測量機(jī)法、結(jié)構(gòu)光法、計算機(jī)立體視覺法等。其中計算機(jī)立體視覺法是一種傳統(tǒng)的深度圖獲取方法,包括單目、雙目和多目立體視覺法。目前在三維模型重建中,大多采用計算機(jī)立體視覺的方法。然而這種方法卻存在著一些缺點和待改進(jìn)之處對于特征點提取準(zhǔn)確性而言,由于不同圖像之中的紋理變化不同,過于平坦的區(qū)域很難提取到準(zhǔn)確的特征點;對于特征點提取的實時性而言,不同的提取方法在速度上存在著很大的差異,往往在保證實時性時,失去了準(zhǔn)確性,而在保證準(zhǔn)確性時,失去了實時性。因此,怎樣同時保證準(zhǔn)確性和實時性是一個重要課題。
發(fā)明內(nèi)容
(一 )要解決的技術(shù)問題本發(fā)明所要解決的技術(shù)問題是提出一種移動設(shè)備的空間交互方法,以解決現(xiàn)有的空間交互技術(shù)準(zhǔn)確性和實時性不佳的問題。( 二 )技術(shù)方案本發(fā)明提出一種一種應(yīng)用于移動設(shè)備的空間交互方法,所述移動設(shè)備是指具有人機(jī)交互能力和圖像拍攝功能的便攜式信息處理裝置,該交互方法包括如下步驟步驟I、利用移動設(shè)備拍攝二維圖像,重建該二維圖像的深度圖,所述二維圖像中包含人體部位的圖像;步驟2、對所述深度圖進(jìn)行區(qū)域分割,得到該深度圖中的人體部位圖像;步驟3、將所述深度圖中的人體部位圖像映射到一個虛擬場景中;步驟4、檢測所述虛擬場景中的人體部位是否與該場景中的其他物體發(fā)生碰撞,若發(fā)生碰撞,則轉(zhuǎn)到步驟6,若沒有發(fā)生碰撞,則轉(zhuǎn)到步驟7 ;步驟5、根據(jù)所述虛擬場景中的人體部位在時間上的空間變化來確定人的肢體語言;步驟6、所述虛擬場景根據(jù)所述肢體語言做出響應(yīng);步驟7、判斷所述移動設(shè)備拍攝的人體部位的圖像是否進(jìn)行了更新,如果進(jìn)行了更新,則返回到步驟1,如果沒有進(jìn)行更新,則該方法結(jié)束。(三)有益效果本發(fā)明通過對移動設(shè)備的空間交互方法在深度圖重建、區(qū)域分割、碰撞檢測時的算法進(jìn)行全新設(shè)計,在深度圖的重建方面,有效解決了獲取深度圖像的準(zhǔn)確性和實時性;在
區(qū)域分割方面,結(jié)合連通域和膚色分割法能夠準(zhǔn)確提取出手部區(qū)域;在碰撞檢測方面,使用球包圍盒的方法,保證了交互的實時性。
圖I是現(xiàn)有的空間交互技術(shù)示意圖;圖2是本發(fā)明所提出的移動設(shè)備的空間交互方法的流程圖;圖3是本發(fā)明深度圖像重建步驟的主流程圖;圖4是本發(fā)明深度圖像重建步驟中生成描述器的流程圖;圖5是本發(fā)明深度圖像重建步驟中生成深度圖步驟流程圖;圖6是本發(fā)明手部區(qū)域分割步驟主流程圖;圖7是本發(fā)明手部區(qū)域分割步驟中鄰域判斷步驟的流程圖;圖8是本發(fā)明手部區(qū)域分割步驟中膚色判斷步驟的流程圖;圖9是本發(fā)明的碰撞檢測步驟流程圖;圖10是本發(fā)明的坐標(biāo)歸一化步驟的流程圖;圖11是本發(fā)明運動過程描述和手勢識別步驟的流程圖;圖12是本發(fā)明運動過程描述和手勢識別步驟中二維空間四個方向的整數(shù)表示示意圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,以下結(jié)合具體實施例,并參照附圖,對本發(fā)明作進(jìn)一步的詳細(xì)說明。圖2為本發(fā)明所提出的移動設(shè)備的空間交互方法的流程圖,所述移動設(shè)備的空間交互方法具體包括以下步驟步驟I、利用移動設(shè)備拍攝二維圖像,重建該二維圖像的深度圖,所述二維圖像中包含人體部位的圖像?,F(xiàn)有技術(shù)中存在多種獲得實時圖像的深度圖的方法,例如采用具有多角度拍攝功能的移動設(shè)備對手部圖像進(jìn)行拍攝,之后對所獲取的二維圖形進(jìn)行深度重建。在本發(fā)明的一種實施方式中,所述具有多角度拍攝功能的移動設(shè)備是指具有雙攝像頭的可移動的人機(jī)交互工具。該步驟將雙目移動設(shè)備采集的圖像進(jìn)行實時深度圖重建,所謂雙目是指位于同一平面及同一水平線上的具有適當(dāng)距離的兩個圖像采集裝置。采用雙目移動設(shè)備實時采集圖像,通過攝像機(jī)定標(biāo)預(yù)處理,將采集到的雙目圖像進(jìn)行極線校正,實現(xiàn)雙目圖像的行對準(zhǔn)。對校正后的雙目圖像進(jìn)行快速視差圖重建并進(jìn)行后期的連續(xù)性檢查、濾波等步驟,最后將視差圖轉(zhuǎn)換為深度圖。步驟2、對所述深度圖進(jìn)行區(qū)域分割,得到該深度圖中的人體部位圖像。根據(jù)本發(fā)明的一種實施方式,該步驟可采用連通域的增長和膚色判斷相結(jié)合的方式進(jìn)行。由于在空間交互中,手部往往位于圖像的前景區(qū),因此它所產(chǎn)生的深度是最大的,故查找最大深度所對應(yīng)的像素點,將其確定為手部位置像素點,然后向各個方向生長區(qū)域,該像素點鄰域內(nèi)的像素點若符合一定的規(guī)則,則將這些像素點視為同一區(qū)域。所述規(guī)則應(yīng)保證圖像中位于手部區(qū)域內(nèi)的像素點全部被分割出來,例如相鄰兩個像素點之間的灰度差值的絕對值若小于規(guī)定閾值,則可以確定該相鄰兩個像素點位于同一連通域中。接著,可繼續(xù)采用膚色判斷的方法分割出精確的手部區(qū)域。該方法即獲取已經(jīng)分 割出來的手部彩色像素點信息,如果某個像素點滿足給定的條件就為膚色,否則為非膚色,并將該像素點剔除。步驟3、將所述深度圖中的人體部位圖像映射到一個虛擬場景中。該步驟將從現(xiàn)實空間中分割出來的手部區(qū)域的重建深度圖像映射到一個虛擬場景中。確定虛擬場景與深度圖像中手部區(qū)域之間的比例之后,將深度圖像中手部區(qū)域的圖像坐標(biāo)映射到虛擬場景中,即生成虛擬手。步驟4、檢測所述虛擬場景中的人體部位是否與該虛擬場景中的其他物體發(fā)生碰撞,若發(fā)生碰撞,則轉(zhuǎn)到步驟6,若沒有發(fā)生碰撞,則轉(zhuǎn)到步驟7。根據(jù)本發(fā)明的一種實施方式,可將步驟3中得到虛擬手部的點集合變?yōu)槿蔷W(wǎng)格集合,并采用球包圍盒的技術(shù)進(jìn)行所述檢測。步驟5、根據(jù)所述虛擬場景中的人體部位在時間上的空間變化來確定人的肢體語言。根據(jù)本發(fā)明的一種具體實施方式
,根據(jù)該手部區(qū)域在虛擬場景的連續(xù)幀中的運動方向、速度、加速度等規(guī)則來確定手部手勢行為。在一個具體實施例中,可以定義六個手勢左移、右移、上移,下移、推、拉,其中推和拉分別指垂直于雙目移動設(shè)備平面做由遠(yuǎn)及近和由近及遠(yuǎn)的手勢。步驟6、所述虛擬場景根據(jù)所述肢體語言做出響應(yīng)。該步驟例如是手部做出左移手勢,虛擬場景中的虛擬手也做出左移的手勢,虛擬物體根據(jù)虛擬手的左移手勢做出響應(yīng)。步驟7,判斷所述多個攝像機(jī)拍攝的人體部位的圖像是否進(jìn)行了更新,如果進(jìn)行了更新,則返回到步驟1,如果沒有,則本方法結(jié)束。由于空間交互技術(shù)的實時性,因此需要判斷數(shù)據(jù)是否有更新,若有,則回到步驟1,對新采集的雙目圖像進(jìn)行深度圖像重建(模塊101);若沒有,則處理結(jié)束。下面對上述方法中涉及的主要步驟進(jìn)行詳細(xì)描述。步驟I、利用移動設(shè)備拍攝二維圖像,重建該二維圖像的深度圖,所述二維圖像中包含人體部位的圖像。所述人體部位通常是指手部區(qū)域。在將現(xiàn)實空間中的手部區(qū)域轉(zhuǎn)換到虛擬場景之前,需要先進(jìn)行深度圖像的重建,從而獲取手部區(qū)域在現(xiàn)實空間的位置。圖3是根據(jù)本發(fā)明的一種實施方式的重建深度圖的流程圖,在該實施方式中,所述二維圖像是由一雙目移動設(shè)備拍攝的左右兩幅手部區(qū)域的二維圖像。如圖3所示,深度圖像重建的具體實現(xiàn)過程進(jìn)一步包括以下步驟步驟101、對所述兩幅二維圖像進(jìn)行極線校正。在此需要對雙目移動設(shè)備進(jìn)行定標(biāo)預(yù)處理工作。通過定標(biāo)獲取每個圖像采集裝置的焦距、成像原點和崎變系數(shù),從而確定圖像坐標(biāo)與世界坐標(biāo)的對應(yīng)變換關(guān)系。之后進(jìn)行立體定標(biāo),得到雙目移動設(shè)備相對位置的旋轉(zhuǎn)矩陣和平移向量。運用極線校正原理對雙目移動設(shè)備取得的圖像進(jìn)行校正,使兩幅圖像的對極線恰好在同一水平線上,這樣一幅圖像上任意一點與其在另一幅圖像上的對應(yīng)點就必須具有相同的行號,只需在該行進(jìn)行一維搜索即可匹配到對應(yīng)點。步驟102、對所述兩幅二維圖像隔行對每個像素提取像素點描述器,該像素點描述 器用于描述像素點周圍灰度值的變化情況。在該實施例中,像素點描述器的生成方法為對雙目圖像的當(dāng)前幀的像素灰度值
_-1 O +1'
分別進(jìn)行橫向和縱向的Sobel算子平面卷積,橫向卷積的核為-2 O +2,縱向卷積的核
-I O +1
"+I +2 +Γ
為O O O ;采用5X5的窗口作為特征點描述器的提取窗口,以橫向及縱向Sobel卷 -I -2 -I
積后的圖像為對象隔行對像素點的Sobel卷積值進(jìn)行描述器的提取,在橫向Sobel卷積后的窗口中提取12個像素點對應(yīng)的Sobel卷積值,在縱向Sobel卷積后的窗口中提取4個像素點對應(yīng)的Sobel卷積值。圖4表示的是該步驟提取卷積值的具體位置,方格中的數(shù)字I代表提取一次Sobel卷積值,數(shù)字2代表提取兩次Sobel卷積值,共提取16個卷積值作為特征描述器。步驟103、在所述兩幅二維圖像中確定顯著立體匹配點,并計算其視差,顯著立體匹配點是指位于指定位置并且紋理值大于規(guī)定閾值的像素點。為了提高計算速度,在該具體實施方式
中,在計算視差時,采取隔行計算的方法,并且每隔一定的步長進(jìn)行一次像素點視差計算。在該實施例中,每隔五個步長進(jìn)行一次像素點的視差計算,首先判斷當(dāng)前像素點的描述器16個卷積值之和是否大于紋理閾值,從而保證該像素點所在位置的紋理不要過于平坦,若小于設(shè)定的紋理閾值,則將該像素點的視差值置為無效;以每一個顯著像素點為中心,創(chuàng)建5 X 5大小的窗口,提取這個窗口的四個角的像素點所對應(yīng)的描述器作為中心像素點的匹配參數(shù),將左圖作為參考圖像,假設(shè)左圖中待計算視差的像素與右圖中所對應(yīng)的像素視差為d,則可以得到右圖對應(yīng)的像素點,對該像素點的左右視圖所對應(yīng)的窗口四角描述器,即匹配參數(shù),求差并進(jìn)行絕對值求和,由于視差d有一個取值范圍,當(dāng)差的絕對值之和最小時,此時所對應(yīng)的視差d為該像素點的視差值。步驟104、從顯著立體匹配點進(jìn)行擴(kuò)散,得到所有像素點的視差。在該實施例中,對初步選取的顯著立體匹配點進(jìn)行擴(kuò)散,采用德勞內(nèi)三角剖分法將這些稀疏點進(jìn)行三角剖分,將顯著立體匹配點剖分成三角網(wǎng)格,可以得到三角網(wǎng)格三個頂點所對應(yīng)的像素坐標(biāo),從而可以計算出三條邊的直線方程,繼而可以確定被該三角網(wǎng)格所包圍的每個像素點的坐標(biāo),最后對包含在三角網(wǎng)格內(nèi)的所有像素點進(jìn)行視差計算。在該實施例中,判斷當(dāng)前像素點的描述器16個卷積值之和是否大于紋理閾值,從而保證該像素點所在位置的紋理不要過于平坦,若小于設(shè)定的紋理閾值,則將該像素點的視差值置為無效;以計算左視差圖為例,將左視圖作為參考圖像,假設(shè)某像素的視差為d_curr,則可以得到右視圖對應(yīng)的像素點,對該像素點對應(yīng)的左右視圖描述器求差并進(jìn)行絕對值求和,記為SSE,由于視差d_curr有一個取值范圍,當(dāng)SSE+p最小時,此時所采用的視差
為該像素點的視差值。其中
權(quán)利要求
1.一種應(yīng)用于移動設(shè)備的空間交互方法,所述移動設(shè)備是指具有人機(jī)交互能力和圖像拍攝功能的便攜式信息處理裝置,其特征在于,包括如下步驟 步驟I、利用移動設(shè)備拍攝二維圖像,重建該二維圖像的深度圖,所述二維圖像中包含人體部位的圖像; 步驟2、對所述深度圖進(jìn)行區(qū)域分割,得到該深度圖中的人體部位圖像; 步驟3、將所述深度圖中的人體部位圖像映射到一個虛擬場景中; 步驟4、檢測所述虛擬場景中的人體部位是否與該場景中的其他物體發(fā)生碰撞,若發(fā)生碰撞,則轉(zhuǎn)到步驟6,若沒有發(fā)生碰撞,則轉(zhuǎn)到步驟7 ; 步驟5、根據(jù)所述虛擬場景中的人體部位在時間上的空間變化來確定人的肢體語言; 步驟6、所述虛擬場景根據(jù)所述肢體語言做出響應(yīng); 步驟7、判斷所述移動設(shè)備拍攝的人體部位的圖像是否進(jìn)行了更新,如果進(jìn)行了更新,則返回到步驟1,如果沒有進(jìn)行更新,則該方法結(jié)束。
2.如權(quán)利要求I所述的空間交互方法,其特征在于,在步驟I中,所述人體部位為手部,所述肢體語言為手勢。
3.如權(quán)利要求2所述的空間交互方法,其特征在于,在步驟I中,所述,所述移動設(shè)備為具有兩個攝像裝置的移動設(shè)備,所述二維圖像為該移動設(shè)備拍攝的手部的左右兩幅二維圖像。
4.如權(quán)利要求3所述的空間交互方法,其特征在于,所述步驟I包括如下步驟 步驟101、對所述兩幅二維圖像進(jìn)行極線校正; 步驟102、對所述兩幅二維圖像隔行對每個像素提取像素點描述器,該像素點描述器用于描述像素點周圍灰度值的變化情況; 步驟103、在所述兩幅二維圖像中確定顯著立體匹配點,并計算其視差,顯著立體匹配點是指位于指定位置并且紋理值大于規(guī)定閾值的像素點; 步驟104、從所述顯著立體匹配點進(jìn)行擴(kuò)散,得到所述兩幅二維圖像的所有像素點的視差; 步驟105、根據(jù)所述每個像素的視差重建深度圖。
5.如權(quán)利要求4所述的空間交互方法,其特征在于,所述步驟102包括如下步驟對所述兩幅二維圖像的當(dāng)前幀的像素灰度值分別進(jìn)行橫向和縱向的Sobel算子平面卷積,橫向 二 I O +1]「+I +2 +1'卷積的核為-2 O +2,縱向卷積的核為O O O ;采用5X5的窗口作為特征點描 -I O +IJ[-1 -2 -I述器的提取窗口,以橫向及縱向Sobel卷積后的圖像為對象隔行對像素點的Sobel卷積值進(jìn)行描述器的提取,在橫向Sobel卷積后的窗口中提取12個像素點對應(yīng)的Sobel卷積值,在縱向Sobel卷積后的窗口中提取4個像素點對應(yīng)的Sobel卷積值。
6.如權(quán)利要求4所述的空間交互方法,其特征在于,所述步驟103采取隔行計算的方法,并且每隔一定的步長進(jìn)行一次像素點視差計算。
7.如權(quán)利要求4所述的空間交互方法,其特征在于,所述步驟104包括采用德勞內(nèi)三角剖分法將這些稀疏點進(jìn)行三角剖分,將所述顯著立體匹配點剖分成三角網(wǎng)格,得到三角網(wǎng)格三個頂點所對應(yīng)的像素坐標(biāo),計算出三條邊的直線方程,確定被該三角網(wǎng)格所包圍的每個像素點的坐標(biāo),最后對包含在三角網(wǎng)格內(nèi)的所有像素點進(jìn)行視差計算。
8.如權(quán)利要求4所述的空間交互方法,其特征在于,所述步驟105包括如下步驟 步驟1051、對所述兩幅二維圖像的像素點的左右一致性進(jìn)行檢查; 步驟1052、移除具有視差一致性的小區(qū)域; 步驟1053、對存在無效視差值的像素點進(jìn)行視差值的插值; 步驟1054、對所述兩幅二維圖像的像素點進(jìn)行濾波。
9.如權(quán)利要求2所述的空間交互方法,其特征在于,所述步驟2包括如下步驟 步驟201、查找所述深度圖中最大深度對應(yīng)的像素點,將其初步確定為手部位置像素占. 步驟202、判斷所述初步確定為手部區(qū)域的每個像素點的鄰域像素點是否與該像素點位于同一區(qū)域; 步驟203、判斷像素圖中是否還存在別的屬于手部區(qū)域的像素點; 步驟204、對所述確定為手部區(qū)域的像素點進(jìn)行膚色判斷,以去除明顯不屬于手部區(qū)域的像素點。
10.如權(quán)利要求9所述的空間交互方法,其特征在于,所述步驟202包括如下步驟 步驟2021、確定起始像素點在開始時,該起始像素點是最大深度對應(yīng)的像素點,以后每一次判斷所采用的起始像素點都是上一次判斷時確定的同一連通域內(nèi)的像素點; 步驟2022、讀取該起始像素點的鄰域內(nèi)各個像素點的深度值; 步驟2023、當(dāng)所述起始像素點的鄰域內(nèi)的各個像素點的深度值之差小于一個閾值時,則將該起始像素點的鄰域作為一個連通域,即判斷該起始像素點的鄰域內(nèi)的像素點與該起始像素點位于同一區(qū)域,并返回步驟2021。
11.如權(quán)利要求9所述的空間交互方法,其特征在于,所述步驟204包括如下步驟 步驟2041、提取手部分割出來的像素點彩色信息。由于該步驟是膚色判斷,所以獲取的息應(yīng)該是彩色息; 步驟2042、根據(jù)像素點的彩色信息判斷該像素點是否滿足給定膚色條件,如果某個像素點被確定為膚色點,則轉(zhuǎn)到步驟2044,否則轉(zhuǎn)到步驟2043 ; 步驟2043、將該像素點的灰度值置為(0,0,0); 步驟2044、保留該像素點的灰度值信息; 步驟2045、判斷是否存在未經(jīng)判斷的手部區(qū)域像素點,若存在位于手部區(qū)域的像素點未經(jīng)判斷,則回到步驟2041,若所有位于手部區(qū)域的像素點完成判斷,則結(jié)束。
12.如權(quán)利要求2所述的空間交互方法,其特征在于,所述步驟3包括如下步驟 步驟301、對虛擬場景進(jìn)行定標(biāo); 步驟302、獲得深度圖的坐標(biāo); 步驟303、求得虛擬場景坐標(biāo)與深度圖坐標(biāo)的轉(zhuǎn)換矩陣; 步驟304、統(tǒng)一虛擬手部與虛擬場景的大小。
13.如權(quán)利要求2所述的空間交互方法,其特征在于,所述步驟4包括如下步驟 步驟401、分別用包圍球包圍虛擬手部與虛擬場景; 步驟402、判斷所述虛擬手部區(qū)域與所述虛擬場景的所述包圍球是否發(fā)生碰撞。
14.如權(quán)利要求2所述的空間交互方法,其特征在于,所述步驟5包括如下步驟步驟501、記錄虛擬手部在每一幀上的軌跡; 步驟502、對所述軌跡采用直線擬合的方法進(jìn)行擬合; 步驟503、判斷所述擬合直線兩端長度是否大于某一閾值,如果該長度大于該閾值,則確定所述虛擬手部為二維空間中的運動,轉(zhuǎn)到步驟504,否則轉(zhuǎn)到步驟505 ; 步驟504、將所述擬合直線用整數(shù)表示; 步驟505、獲取虛擬手部區(qū)域面積變化情況,確定虛擬手的前后運動方向; 步驟506、根據(jù)步驟504和步驟505對于虛擬手部的手勢的進(jìn)行特定描述,與預(yù)定義手勢模型進(jìn)行匹配,從而確定出該虛擬手勢。
全文摘要
本發(fā)明公開了一種具有人機(jī)交互能力的移動設(shè)備的空間交互方法,包括如下步驟根據(jù)移動設(shè)備實時拍攝的二維圖像,重建關(guān)于該圖像的深度圖;對所述深度圖進(jìn)行區(qū)域分割,得到該深度圖中的人體部位區(qū)域;將所述深度圖中的人體部位區(qū)域映射到一個虛擬場景中;檢測所述虛擬場景中的人體部位是否與該虛擬場景中的其他物體發(fā)生碰撞,若發(fā)生碰撞,則根據(jù)所述虛擬場景中的人體部位在時間上的空間變化來確定肢體語言,所述虛擬場景根據(jù)所述肢體做出響應(yīng)。本發(fā)明能夠提高空間交互的準(zhǔn)確性和實時性。
文檔編號G06F3/01GK102902355SQ20121032016
公開日2013年1月30日 申請日期2012年8月31日 優(yōu)先權(quán)日2012年8月31日
發(fā)明者黃向生, 徐波 申請人:中國科學(xué)院自動化研究所