一種根據人體動作驅動的雕塑三維模型生成方法
【專利摘要】本發(fā)明公開了一種根據人體動作驅動的雕塑三維模型生成方法,對任意給定的虛擬雕塑,該方法利用改進的Kinect動作識別技術識別用戶關節(jié)點信息并捕獲其運動參數(shù),通過關節(jié)點與用戶選擇的控制點之間的關聯(lián)方式,引導虛擬雕塑調整姿態(tài)實現(xiàn)雕塑三維模型創(chuàng)意設計,其中虛擬雕塑姿態(tài)的改變通過虛擬雕塑編輯算法實現(xiàn),能夠對虛擬雕塑實時操作。該方法充分考慮到虛擬雕塑與一般三維模型在生成時的不同約束,能夠很好保存雕塑的風格特征。
【專利說明】一種根據人體動作驅動的雕塑三維模型生成方法
【技術領域】
[0001]本發(fā)明涉及一種根據人體動作驅動的雕塑三維模型生成方法,特別是將改進的Kinect動作識別技術與能夠保存虛擬雕塑三維模型風格特征的網格編輯方法相結合實現(xiàn)雕塑三維模型創(chuàng)意生成方法。
【背景技術】
[0002]隨著數(shù)字雕塑軟件迅猛的發(fā)展,不但在軟件的數(shù)量和功能上有突飛猛進的提高,在行業(yè)的應用上也有很大的拓展,從游戲行業(yè)到影視動畫再到玩具手辦制作,我們都越來越多的看到數(shù)字雕塑軟件的身影。并且,數(shù)字雕塑軟件的出現(xiàn)也改變了很多設計師的工作流程,強大的雕塑建模功能和顏色繪制功能解放了藝術家的靈感,可以讓設計師把更多的精力關注在設計和創(chuàng)作上,將軟件的操作難度降到最低。
[0003]到目前為止,數(shù)字雕塑軟件主要有三個類別,第一類是以ZBrush為代表的數(shù)字雕塑軟件,這類軟件的主要功能是雕塑建模,它制作模型的功能強大,并且對多邊形面數(shù)的支持高。第二類是帶有數(shù)字雕塑功能的三維軟件。例如M0d0、Sil0等,這類軟件的功能更多,由于雕塑模型并不是它們的主要功能,所以在雕塑功能和面數(shù)支持上都比不上前一類軟件,但使用這類軟件可以避免在不同的軟件中頻繁切換。另外現(xiàn)在也有越來越多的三維軟件集成了數(shù)字雕塑功能,例如3D Max和Maya。第三類是一些工業(yè)設計方面的軟件,比較著名的有FreeForm等,一些浮雕軟件也可以歸在這個類別里,這些軟件相對于前兩類軟件應用的范圍更專一,使用的用戶也少很多。
[0004]我們應該看到,雖然這些軟件為專業(yè)用戶(雕塑工作者)和非專業(yè)用戶提供了強大建模功能,但沒有提供用于藝術創(chuàng)新的平臺和合理便捷的交互方式,這讓許多傳統(tǒng)雕塑家對這些優(yōu)秀的軟件不屑一顧。
【發(fā)明內容】
[0005]發(fā)明目的:本發(fā)明所要解決的問題是針對雕塑創(chuàng)作過程當中實體雕塑后期修改費時費力以及雕塑創(chuàng)新過程中創(chuàng)新思想難以具體呈現(xiàn)的問題,提供一種新穎的利用Kinect動作識別技術和網格編輯技術,為雕塑姿態(tài)調整提供可視化方法并能保存雕塑的風格特征。
[0006]為了解決上述問題,本發(fā)明公開了一種根據人體動作驅動的雕塑三維模型生成方法,包括以下步驟:
[0007]步驟1:輸入虛擬雕塑三維模型,該雕塑模型由一組三角面片構成(虛擬雕塑文件只需滿足能夠提取頂點信息和三角面片信息,類型可以任意給定);
[0008]步驟2:分析虛擬雕塑三維模型,保存其頂點信息V,邊信息E以及三角面片信息Triangle,然后計算頂點,邊和三角面片之間的拓撲關系,包括每個頂點的鄰接頂點,鄰接面,鄰接邊,每個三角面片的鄰接面以及每條邊的鄰接面;
[0009]步驟3:根據步驟2中得到的頂點,邊和三角面片信息以及它們之間的拓撲關系,構造虛擬雕塑中頂點之間的測地距離矩陣Dnverxn.;
[0010]步驟4:選擇驅動虛擬雕塑三維模型的控制點,所選擇的控制點分為兩類:視覺引導點IvgUidJ和雕塑骨架點(vSkelcton1I vskclcton2>-1vSkelctonnskeL這兩類控制點在雕塑姿態(tài)
調整的過程中所起的作用不同,視覺引導點用來引導雕塑姿態(tài)改變,雕塑骨架點根據用戶的需要用來約束雕塑姿態(tài)的改變,保存形態(tài)特征。
[0011]其中n ske表示 雕塑 骨架 點的 數(shù)目,
1≤ guide, Skeleton1, skeleton^,…Skeletontlske < nvcr且 ncontrol=nske+l,ncontrol 表示兩類控制
點的總數(shù)目,;
[0012]步驟5:計算由控制點形成的特征空間,特征空間由視覺引導點生成,同時受到雕塑骨架點的影響,在最終的特征空間中,每個頂點的特征值與該頂點到視覺引導點的距離成正比,與該頂點到雕塑骨架點的距離成反比,在極端情況下,視覺引導點位置處的特征值為I,雕塑骨架點位置處的特征值為O ;
[0013]步驟6:啟動Kinect攝像頭,用戶處于攝像頭能夠識別的區(qū)域,利用Kinect提供的骨架追蹤技術,獲取用戶的骨架圖像和深度圖像;
[0014]步驟7:保存用戶關節(jié)點信息J,由于存在Kinect攝像頭受到遮擋或用戶沒有完全處于攝像頭所能識別的區(qū)域這種情況,用戶關節(jié)點有時并不能全部被識別出來,保存已識別的關節(jié)點信息對后續(xù)步驟有參考價值;
[0015]步驟8:選擇引導虛擬雕塑姿態(tài)調整的關節(jié)點并計算關節(jié)點與控制點的關聯(lián)矩陣M,在選擇關節(jié)點的時候,對于跟雕塑骨架點關聯(lián)的關節(jié)點可以滿足一個關節(jié)點對應多個雕塑骨架點的關系;
[0016]步驟9:上述步驟完成之后,該步驟利用Kinect持續(xù)捕獲的用戶關節(jié)點位置信息,計算關節(jié)點位置的改變并將關節(jié)點位置的改變信息傳遞給相應的控制點。由于Kinect能夠捕捉關節(jié)點在空間中的位置改變,將三維空間中關節(jié)點位置的改變傳送給對應的控制點,這樣可以為用戶提供更加自然的交互方式,這也是選擇Kinect作為交互工具的主要原因。但直接捕獲到的位置信息,會存在突變或丟失的情況,因此加入關節(jié)點位置的修正操作是很有必要的,可以提高整個系統(tǒng)的魯棒性;
[0017]步驟10:根據步驟9控制點收到的三維空間中關節(jié)點位置的改變信息計算相應的視覺引導點的變化信息并根據變化信息構造變換矩陣T ;
[0018]步驟11:根據步驟5計算得到的特征空間和步驟10得到的視覺引導點變換矩陣,計算每個頂點的轉換矩陣Tj;
[0019]步驟12:根據步驟11計算得到的每個頂點的轉換矩陣,計算更新后的頂點坐標
V ;
[0020]步驟13:更新顯示虛擬雕塑三維模型;
[0021]本發(fā)明步驟3中,計算任意兩個頂點V1, Vj的測地距離&包括以下步驟:
[0022]計算頂點Vi到頂點Vj的單位向量I:
【權利要求】
1.一種根據人體動作驅動的雕塑三維模型生成方法,其特征在于,包括以下步驟: 步驟1:輸入虛擬雕塑三維模型,該虛擬雕塑三維模型由一組三角面片構成; 步驟2:分析虛擬雕塑三維模型,保存其頂點信息、邊信息和三角面片信息,計算頂點、邊和三角面片之間的拓撲關系,包括每個頂點的鄰接頂點、鄰接面、鄰接邊,每個三角面片的鄰接面以及每條邊的鄰接面; 步驟3:根據步驟2中得到的頂點、邊和三角面片信息以及它們之間的拓撲關系,構造虛擬雕塑三維模型中頂點之間的測地距離矩陣; 步驟4:選擇控制虛擬雕塑三維模型的控制點,所選擇的控制點分為兩類:人工設置視覺引導點 IvgUidfJ 和雕塑骨架點(vSkeletonlIvSkeleton2M^vSkeletonnske),其中I < guide, Skeleton1, skeleton^,…Skeletonnske < nvcr,nske 表示雕塑骨架點的數(shù)目,nver 表示虛擬雕塑三維模型頂點的數(shù)目,視覺引導點用來引導虛擬雕塑姿態(tài)的改變,雕塑骨架點用來約束虛擬雕塑姿態(tài)的改變; 步驟5:計算由控制點形成的特征空間:特征空間由視覺引導點生成,同時受到雕塑骨架點的影響,在最終的特征空間中,每個頂點的特征值與頂點到視覺引導點的距離成正比,與頂點到雕塑骨架點的距離成反比; 步驟6:啟動Kinect攝像頭,用戶處于攝像頭能夠識別的區(qū)域,根據Kinect提供的骨架識別技術,獲取用戶的骨架圖像和深度圖像; 步驟7:保存用戶關節(jié)點信息; 步驟8:選擇引導虛擬雕塑三維模型姿態(tài)調整的關節(jié)點并計算關節(jié)點與控制點的關聯(lián)矩陣; 步驟9:利用Kinect持續(xù)捕獲用戶關節(jié)點的位置信息,計算關節(jié)點位置的改變并將三維空間中關節(jié)點位置的改變信息傳送給對應的控制點; 步驟10:根據步驟9控制點收到的三維空間中關節(jié)點位置的改變信息計算相應的視覺引導點的變化信息,并根據視覺引導點的變化信息構造視覺引導點的變換矩陣; 步驟11:根據步驟5計算得到的特征空間和步驟10得到的視覺引導點變換矩陣,計算每個頂點的轉換矩陣; 步驟12:根據步驟11計算得到的每個頂點的轉換矩陣,迭代更新每個頂點的坐標; 步驟13:更新顯示虛擬雕塑三維模型。
2.根據權利要求1所述的一種根據人體動作驅動的雕塑三維模型生成方法,其特征在于,步驟2和步驟3中, 步驟2中,計算頂點Vi的鄰接面集合[fu.fiy Λ'}和對應的鄰接面向外法向量集合ihl' fii,2fii,nfi},其中nfi表示頂點Vi的鄰接面?zhèn)€數(shù)。 步驟3中,計算任意兩個頂點Vi, Vj的測地距離di,J包括以下步驟: 計算頂點Vi到頂點Vj的單位向量r1::
3.根據權利要求1所述的一種根據人體動作驅動的雕塑三維模型生成方法,其特征在于,步驟5包括以下步驟: 計算由視覺引導點產生的特征空間下,頂點Vi的特征值A(C^guide):
fi(di,guide) = e-^guwe, 其中,屯,81^表示頂點Vi到視覺引導點Vsuide的測地距離,且I ( guide ( nver, μ是參數(shù),用來控制特征值隨測地距離改變的速率,設置μ等于其他頂點到視覺引導點的最大距離: μ μ Hiaxj U, 其中,dj,guide表示頂點Vj到視覺引導點Vguide的測地距離且nver ;計算雕塑骨架點Vskeletoni對由視覺引導點產生的特征空間中頂點Vi的特征值的影響Si(C^skeletoni):
【文檔編號】G06T19/00GK103914873SQ201410093523
【公開日】2014年7月9日 申請日期:2014年3月13日 優(yōu)先權日:2014年3月13日
【發(fā)明者】路通, 秦龍飛, 邢潤, 王昊, 巫義銳, 胡煒 申請人:南京大學