• 沒有找到結果。

虛擬人體模型構建與形變技術之研究

N/A
N/A
Protected

Academic year: 2021

Share "虛擬人體模型構建與形變技術之研究"

Copied!
8
0
0

加載中.... (立即查看全文)

全文

(1)

行政院國家科學委員會補助專題研究計畫成果報告

※※※※※※※※※※※※※※※※※※※※※※※※※

※       ※

※    

虛擬人體模型構建與形變技術之研究

    ※

※       ※

※※※※※※※※※※※※※※※※※※※※※※※※※

計畫類別:□

V

個別型計畫  □整合型計畫

計畫編號:NSC89-2213-E-009-092-

執行期間:88 年 08 月 01 日至 89 年 07 月 31 日

計畫主持人:莊榮宏

共同主持人:

計畫參與人員:

本成果報告包括以下應繳交之附件:

□赴國外出差或研習心得報告一份

□赴大陸地區出差或研習心得報告一份

□出席國際學術會議心得報告及發表之論文各一份

□國際合作研究計畫國外研究報告書一份

執行單位:交通大學資工系

中 華 民 國  89 年 10 月 31 日

(2)

行政院國家科學委員會專題研究計畫成果報告

虛擬人體模型建構與形變技術之研究

On The Defor mation Of Human Skin

計畫編號:NSC 89-2213-E-009-092

執行期限:88 年 08 月 01 日至 89 年 07 月 31 日

主持人:莊榮宏 交通大學資訊工程系

計畫參與人員:

一、 摘 要

在最近十年來,由於電腦角色動畫的 發展,使得逼真的 3D 人體動態模型成為一 個重要的研究方向。以解剖學為基礎的人 體模擬方式,能產生較為逼真的肌膚形 變,其中以肌肉形變最為明顯,進而影響 人體的表皮外觀。故在模擬人體運動形變 後外型的過程中,以肌肉扮演主要的控制 角色。 我們所提出的作法主要是以變形的圓 柱體來建構人體肌肉,至於較為複雜的肌 肉外型則採用多個變形的圓柱體組合而 成。而肌肉在形變的過程中,主要是利用 體積不變的原則來做控制。最後,我們將 皮膚的參考點與下層組織建立一個對應的 關係,隨著肌肉的形變,動態的產生表皮 的外觀控制點,而形成人體最後的表皮外 形。 關鍵詞:角色動畫、肌膚模型、肌膚形變 Abstr act

The modeling and animation of virtual human have become a very important topic in applications of character animation and virtual reality. The approach usually consists of bone layer, muscle layer, fat layer, and skin layer, in which the most important layer is the muscle layer because the shape change is the direct result of the muscle deformation.

In our method, muscles are modeled by using the deformable cylinders formed by a set of cross-sections. A simple mathematical formula has been proposed to model the muscle deformation based on the property of volume preserving. The skin deformation due

to the muscle deformation is effectively computed by utilizing the correspondence between skin’s control points and the points on the underlying muscle or bone, and hence provides a smooth skin deformation.

Keywor ds: Character animation,

muscle-skin modeling and deformation

二、 緒 論

近年來電腦遊戲和虛擬實境中的人物 動畫的發展,對於角色動畫的模擬顯得不 夠真實,但這些角色動畫在運動中並未顯 現出應有的肌膚形狀的變化。我們主要的 研究範圍為人體的四肢與軀幹的肌肉和皮 膚的形變。因人體中由肌肉控制的行為機 制在模擬上有很大的困難,故我們採用相 反的方式,由骨骼的運動來帶動肌肉的收 縮與伸長。藉由操縱控制軸以達成肌肉模 型形變的效果,進而帶動皮膚的形變。 本研究最終的目的在建立一個行為外 觀表現真實的模型與形變架構。期待透過 這樣的模型可以模擬出人體運動形變後複 雜的外觀表現。

三、 相關研究

在早期,對於人體模型的研究主要是 著重在人體靜態外型的模擬,藉由各種幾 何元件來做模型的建立。然而這樣靜態的 人體外型往往受限於模擬的方式,而無法 有動態運動的產生。 過去研究中人體的發展肌肉形變和肌 肉表示方法,剛開始的作法是以較簡單的 幾何原件為主[5,6,7,8,10,11,13],例如:圓 柱體、橢圓體、球體等,然後再漸漸發展

(3)

為以多邊形網格(polygon meshes)[3,4],隱 函數的曲面(implicit surfaces)[2],有層次性 的模型(layered models)[1,9,12]和最近的以 解 剖 學 為 基 礎 的 模 型 (anatomically based models) [5,6,7,8,13]。以解剖學為基礎的人 體模型架構由骨架、肌肉、脂肪、皮膚所 構成的,各個層次的模型盡量利用與人體 真實結構相似的外形來作模擬,且必須瞭 解骨骼與肌肉組織的運動機制,和良好的 模型模擬架構才能表現出一個真實的運動 形變結果。

四、 人體模型的建構與形變

(一)人體骨骼的建構 我們建構的人體骨骼主要分為兩種, 一為長條狀骨骼,就是在圓柱體兩端加上 橢圓球體,例如肱骨、股骨。另一為橢圓 形骨骼,就是利用橢圓球組合而成的骨 骼,例如髖骨、掌骨。我們將人體骨架當 成控制人體運動的控制軸,建立一個人體 骨骼與控制軸之間的對應關係,以因應控 制軸運動時骨頭的帶動。而控制軸是具有 層次性的操作能力,當上層的控制軸運動 時,連帶著下層的控制軸也要跟著運動。 例如,當人體上臂運動時,下臂也會跟著 運動。 (二)人體肌肉的建構 肌肉組織可以歸納成三種形式:骨骼 肌、平滑肌和心肌,我們的焦點主要是放 在骨骼肌上,也就是附著在骨頭上且可以 由意識控制的肌肉 (voluntary muscles,隨 意肌)。我們假設在人體運動的過程中所產 生的肌肉形變中肌腱的長度是不變的,而 肌肉本體的長度會隨著人體運動而改變, 進而有收縮和膨脹的形變發生。肌肉的建 構中我們是參考解剖學的資訊,由靠近骨 骼的最下層的肌肉建構起,一層一層的往 外建構,而每一層肌肉的切面(cross section) 必定與其下一層組織有一切點存在(圖 1), 而此切點在控制軸上必定有一對應的點, 我們稱在控制軸上的這些點為對應點。 圖 1 肌肉與下層組織交點的切面圖 每一條肌肉我們可以依照實際的外形 給予不同個數的 cross section,而利用這些 不同外形的 cross section 就可以建構出我 們所要的肌肉外形。 (三)人體脂肪與皮膚的建構 皮膚層的建構主要是依據下層肌肉的 外形來做初步的控制,我們採用 ray casting 的方式來取得表皮參考點。 脂肪層是覆蓋在肌肉與表皮中間的物 質,可以說是修飾人體外型的重要關鍵, 由於脂肪組織形狀較不一定,故不適合用 實體模型來做模擬。在我們所提出的方法 中,我們直接取肌肉的外型作為表皮的參 考點,並加上一個位移量當作表皮層的厚 度。然後將這些參考點做一個平滑化的動 作,平滑化的過程中,所增加的體積部分 就是脂肪所佔據的位置(圖 2)。 圖 2.肌肉外型取樣點與經過脂肪填補的皮膚外型 (四)肌肉的形變控制方式 在骨骼的建構初期,我們已經將骨骼 與控制軸做好了對應關係。所以當人體運 動時,控制軸轉動就會跟著帶動跟此控制

(4)

軸有關連的骨骼進行轉動。我們可以根據 肌肉切面與下層組織的切點與控制軸的對 應點之間的關係(圖 3),依照同一條肌肉上 每個肌肉切面的對應點之間初始的距離比 例,計算出形變後新的肌肉切面與下層組 織切點的所在位置。 圖 3 肌肉形變前後,對應點與控制軸間的關係 我們以體積不變的原則來控制肌肉的 形變,當骨骼運動時會造成肌肉切面之間 的距離改變,使得肌肉切面的面積也會發 生變化,也就是說肌肉切面的半徑改變 了。 首先,令切面 i 到切面 i+1 的長度為 Hi,而肌肉形變後,長度 Hi會變成 Hi’,第 i 個肌肉切面的半徑變化率為 xi。我們假設 在一條肌肉中兩兩肌肉切面之間的距離比 值是固定的,並假設肌肉本體形變前的長 度為 l,形變後的肌肉本體長度為 l’,所以 由上述的假設可得知 Hi 與 Hi’的比例關係 等於 l 與 l’的比例關係。也就是說利用形變 前後肌肉本體上下兩端的肌肉切面與控制 軸之間的投影點就可以快速求得 Hi 與 Hi’ 之間的比例關係。如此一來,根據我們所 推導出的公式 ' i i i H H x = ,算出肌肉切面半 徑變化率 xi,即可求得形變後新的肌肉切 面與下層組織切點的所在位置,達到肌肉 形變的效果。 (五)皮膚的形變控制方式 表皮與脂肪層的形變都是對應肌肉層 形變的一個反應。我們採用 ray-casting 的 方式先找出皮膚的參考點,再將此參考點 與下層肌肉或骨骼組織建立對應的關係, 如此在肌肉形變的過程中,我們便可以利 用形變後的肌肉與骨骼跟皮膚參考點的對 應關係,快速的產生人體皮膚控制點的新 位置,進而形成表皮外觀。 我們在關節處動態的內差產生皮膚的 參考點,以防止骨骼運動時關節處的皮膚 會有重疊的現象產生(如圖 4)。 圖 4 經過形變後皮膚參考點重疊的情形 我們可以由控制軸C0C1C1C2 (如圖 5)得到轉動後人體骨骼的夾角為 2θ,並由 此得到上述兩控制軸的角平分線。且由圖 5 中得知初始的皮膚點所形成的 cross section 與控制軸互相垂直。關節點附近的的 cross section 轉動的角度為(90-θ)度,如此可以 讓最靠近關節的 cross section 必定與兩控 制軸的角平分線平行。最靠近關節點的 cross section 經過轉動後,我們將這個轉動 的 cross section 與這個控制軸離關節點最 遠的 cross section 之間所包含的所有 cross section 以內差進行角度的調整。如此的調 整可保證關節點附近的表皮參考點不會因 為骨骼的轉動而發生互相重疊的情形。

(5)

而靠近關節點附近的表皮參考點經過 上述的調整後,有可能會與離關節點較遠 的表皮參考點發生互相重疊的情形(如圖 5)。故我們需要對這些重疊的部分做一個 動態內差的調整。我們對這些由表皮參考 點所形成的 cross section 進行偵測,找出重 疊區域前後兩個沒有重疊的 cross section, 再利用這兩個 cross section 進行內差,以找 出每個重疊的 cross section 的新位置。 圖 6 皮膚參考點經過動態內差調整的情形

五、 人體模型的實做方式與結果

(一)實作中人體建構方式 首先,我們以整個程式的流程圖(圖 7) 來介紹我們實作的過程,而資料輸入檔的 格式是以我們所定義的骨骼形式與肌肉形 式為主要的輸入格式。 (二)實驗結果與討論 圖 8 是人體右上側的胸肌、背部的闊 背肌和斜方肌與右手上下臂肌肉的模擬 圖,由此圖我們可以觀察出人體肌肉是由 變形的圓柱體所建構出來,如肱二頭肌是 由兩條變形的圓柱體所組合而成,胸肌是 由十條變形的圓柱體依據胸肌的外型模擬 出來。 圖 8 人體右上側胸肌、背部肌肉與右手臂肌肉模擬 圖 圖 9 人體右臂正視圖 圖 9 是人體右臂手肘彎曲的示意圖, 分別為(a)手肘彎曲 0 度(b)手肘彎曲 30 度(c) 手肘彎曲 60 度 (d)手肘彎曲 90 度(e)手肘彎 曲 120 度,由這五張圖依序的展示,我們 可以觀察出手肘彎曲時肱二頭肌與肱三頭 肌的形狀變化。 (a) (b) (a) (b) (c) (d) (e) 骨骼資料的輸入 肌肉資料的輸入 控制軸的指定 骨骼的建立 肌肉的建構 脂肪組織的填補 平滑的皮膚外觀 表皮參考點的產生 圖 7 人體模型建構流程圖

(6)

(a) (b) (c) (d) 圖 10 經過動態內差調整之手肘彎曲正視圖 圖 10 利用動態內差調整之手臂上舉與 彎曲示意圖,圖(a)手肘彎曲 30 度(b)手肘彎 曲 60 度(c)手肘彎曲 90 度(d)手肘彎曲 120。由上述這些圖的觀察我們可以發現經 過動態內差的調整可以使得手臂上舉時人 體皮膚的形變非常的平順。以及由這些圖 我們可以觀察出人體手臂上舉時,透過下 層肌肉形變的影響,如三角肌、胸肌,對 人體肩膀和胸部表皮外形的影響。 實做程式之測試數據如表 1,我們將模 型建構的前置處理時間與顯像時更新的速 率進行量測,我們的數據為測試 10 次所得 到的平均值,結果並非十分理想。故我們 希望能再針對顯像速率進行努力。 表1 手臂模型實驗數據 模型建構前置處理時間(ms) 44166.6 手肘彎曲時肌肉與皮膚的 更新時間(ms) 95.3 手 肘 彎 曲 時 的 顯 像 速 率 (frame rates per second) 2.9 手臂上舉時肌肉與皮膚的 更新時間(ms) 103.6 手 臂 上 舉 時 的 顯 像 速 率 (frame rates per seconds) 2.9

六、 結 論

如何產生一個看起來栩栩如生的人體 模型和如何控制人體運動後肌膚形變一直 是電腦圖學中具挑戰性的問題。我們藉著 使用解剖學的資訊建構人體骨骼和肌肉, 再依據控制軸的模擬操作人體運動的行 為,並模擬人體運動時肌肉的形變情形及 皮膚的形變。為了因應人體肌肉組織形狀 的多變性,我們採取變形的圓柱體來模擬 人體肌肉的外型,對於扁平的肌肉,如胸 肌、闊背肌等,我們利用許多變形的圓柱 體來組成這些扁平的肌肉。我們設計出一 般肌肉形變的計算方式,同時根據不同的 關節點的不同運動方式對肌肉形變的方式 給予不同的調整,如此可以更逼真的模擬 出關節點附近的肌肉變化。並提出利用肌 肉切面與控制軸的對應關係快速的來求得 肌肉形變後的位置與肌肉外型,同時我們 對肌肉外型進行脂肪填補的動作,以達到 表皮平滑化的目的,及在形變時利用肌肉 組織與表皮參考點的關係快速的找出形變 後皮膚參考點的位置所在。最後我們利用 曲面的表示方式逼真的模擬出人體皮膚的 外型。

七、 參考文獻

[1] J. E. Chadwick, D. R. Haumann, and R. E. Parent. Layered construction for deformable animated characters. In Jeffrey Lane, editor,

Computer Graphics (SIGGRAPH’89 Proceeding), volume 23, pages 243-252, July 1989.

[2] W. A. Fetter. A progression of human figures simulated by computer graphics. IEEE Computer Graphics and Applications, 2:9-16, November 1982.

[3] N. Magnenat-Thalmann, Richard Laperriere, and Daniel Thalmann. Joint-dependent local deformations for hand animation and object grasping. In Proceedings of Graphics Interface’88, pages 26-33, June 1988.

[4] N. Magnenat-Thalmann, D. Thalmann, Human Body Deformations Using Joint-dependent Local Operators and Finite-Element Theory. In:

Making Them Move (N. Badler, BA Barsky, D. Zeltzer, eds), Morgan Kaufmann, San Mateo, California, 1990, pp.243-262.

[5] L. P. Nedel and D. Thalmann. Modeling and deformation of the human body using an

(7)

anatomically-based approach. In Proceedings Computer Animation’98, Philadelphia, PA, USA, 8-10 June 1998, pages 34-40, June 1998.

[6] L. P. Nedel and D. Thalmann. Real time muscle deformations using mass-spring systems. In

Proceedings Computer Graphics International 1998,Hannover, Germany, 22-26 June 1998, pages 156-165, June 1998.

[7] F. Scheepers, R. E. Parent, W. E. Carlson, and Stephen F. May. Anatomy-based modeling of the human musculature. In Turner Whitted, editor, ACM SIGGRAPH 97 Conference Proceedings, Annual Conference Series, pages 163-172. Addison Wesley, August 1997. [8] J. Wilhelms and A. Van Gelder. Anatomically

based modeling. In Turner Whitted, editor, ACM SIGGRAPH 97 Conference Proceedings, Annual Conference Series, pages 173-180. Addison Wesley, August 1997.

[9] R. Turner and E. Gobbetti. Interactive Construction and Animation of Layered Elastically Deformable Characters. Computer Graphics Forum, volume 17, number 2, page 135-152, 1998.

[10] T. Nishita and E. Nakamae. A Method of Displaying Metaballs by using Bezier Clipping. In Proceedings of EUROGRAPHICS ’94, page 271-280, 1994.

[11] J. Shen and D. Thalmann. Interactive shape design using metaballs and splines. In

Proceedings of Implicit Surfaces ‘95, Grenoble, page 187-196, 1995.

[12] P. Fua, R. Plankers, and D. Thalmann. Realistic Human Body Modeling. Fifth International Symposium on the 3-D Analysis of Human Movement, Cattanooga, TN, July 1998.

[13] P. J. Schneider and J. Wilhems. Hybrid Anatomically Based Modeling of Animals. In

(8)

數據

圖 5  皮膚參考點轉動角度的計算

參考文獻

相關文件

Each unit in hidden layer receives only a portion of total errors and these errors then feedback to the input layer.. Go to step 4 until the error is

The PLCP Header is always transmitted at 1 Mbit/s and contains Logical information used by the PHY Layer to decode the frame. It

The development of IPv6 was to a large extent motivated by the concern that we are running out of 4-byte IPv4 address space.. And indeed we are: projections in- dicate that the

• Softmax Layer: Classifier Convolutional.. Layer

Convolutional Layer with Receptive Fields:.. Max-pooling

• We need to make each barrier coincide with a layer of the binomial tree for better convergence.. • The idea is to choose a Δt such

In order to use the solar rays more efficient and improve the conversion efficiency of solar cell, it is necessary to use antireflection layer to reduce the losses of

The second coated layer is the Ag reference mirror layer with the thickness of about 100nm, 450nm and 900nm corresponding to sapphire/Ti/Ag/AuSn, sapphire/Cr/Ag/AuSn, and