999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

智能三維虛擬試衣模特仿真系統設計

2009-01-01 00:00:00王洪泊曾廣平涂序彥
計算機應用研究 2009年4期

(北京科技大學信息工程學院 計算機系, 北京100083)

摘 要:

針對服裝物理仿真通常計算量龐大、在低端硬件平臺或交互式環境進行高質量模擬的挑戰,將人工生命思想引入服裝紋理生成,基于混合虛擬現實技術研究開發了智能三維虛擬試衣模特仿真系統。通過在三維空間中構建與真實人體類似的三維虛擬模特作為消費者的試穿替身,同時設計實現了場景屏風功能,這樣不但便于根據著裝場合自由切換服裝紋理,而且可以讓消費者通過這一虛擬平臺更為直觀、自由地觀察著裝效果為了使三維試衣系統更為智能化,還建立了服裝搭配合適度智能評價系統。

關鍵詞:虛擬試衣模特;人工生命; 混合虛擬現實技術

中圖分類號:TP18文獻標志碼:A

文章編號:1001-3695(2009)04-1405-04

Design of intelligent 3D virtual clothing model simulation system

WANG Hong-bo, HUANG Xiang, ZENG Guang-ping, TU Xu-yan

(Dept. of Computer, School of Information Engineering, University of Science Technology Beijing, Beijing 100083, China)

Abstract:In order to dealing with the difficulty of high-quality virtual clothing simulation on normal hardware platform or interactive environment, designed intelligent 3D virtual clothing model simulation system which based on mixed virtual reality technology, at the same time introduced artificial life method. For being closer to reality, the system set up a wall-like rectangle which applied with a picture of a particular scene of reality behind the virtual model, which made it look like the visual model was in a real environment. Furthermore, by simply replacing the texture pattern of the rectangle, the scene of the system could be easily changed. An intelligent sub-system for evaluating suitability of clothing was implemented for providing a personalized evaluation criterion for the suitability of clothing.

Key words:virtual clothing model; artificiallife;mixed virtual reality technology



0 引言

近幾年,虛擬服裝是虛擬現實和計算機圖形學領域的研究熱點之一,國外的服裝電子商務發展較早,不少服裝網站已能提供產品的三維視圖、購買歷史記錄、虛擬試衣間及配套設施等多種服務。例如著名的試衣網站MyVirtualModel就提供了進行人體測量的網上試衣服務[1];德國弗勞恩霍夫學會的科學家與其他科研小組共同開發出一套試衣系統[2]。

相對于國外試衣系統,國內相關研究也取得了一定的進展。近期代表性的研究包括:文獻[3]介紹了虛擬服裝的發展歷史和現狀,并著重了介紹當前各個研究機構的研究工作;文獻[4]通過分析服裝虛擬仿真的基本步驟,給出了改進的質點—彈簧模型和服裝真實感模擬方程,并對動態系統進行了求解;文獻[5]對虛擬人動畫中的三維服裝仿真技術進行了研究,包括虛擬人體建模、角色動畫、布料物理模擬以及可變形體碰撞檢測與響應,總體目標是構建一個完整的三維服裝仿真環境,并且圍繞系統實時性能完成高效算法的開發。

縱觀虛擬服裝的研究現狀,主要集中在四個方面:a)參數化人體形態建模問題;b)三維服裝動態展示提供角色動畫支持問題;c)布料物理建模的計算效率和真實感問題;d)實時交互性問題。服裝物理仿真通常計算量龐大,如何在低端硬件平臺或交互式環境(如普通PC或視頻游戲)進行高質量模擬是一個新的挑戰[6]。本文將人工生命思想引入進服裝紋理生成,基于混合虛擬現實技術研究開發了智能三維虛擬試衣模特仿真系統,通過在三維空間中構建與真實人體類似的三維虛擬模特作為消費者的試穿替身,同時設計實現了場景屏風功能,可讓消費者通過這一虛擬平臺更為直觀、自由地觀察著裝效果。

1 系統總體設計

1.1 系統框架結構

網絡虛擬服裝協同設計系統的總體框架結構如圖1所示。整個系統包括模型生成、場景設置、人工紋理、3D渲染四個部分。其中,模型生成包括三維建模、模型參數選擇、導入模型三個部分;場景設置包括場景導入和光照選擇兩個部分。系統首先進行三維人體的建模,并根據模型特征的不同保存多個副本;然后根據用戶的參數選擇從中選擇合適的模型導入系統中;之后系統根據用戶的選擇設置好場景;最后,3D渲染將人體模型和試衣場景顯示在屏幕上。

1.2 系統流程

根據系統框架,程序被分成三個模塊來實現。模型導入模塊首先接收用戶輸入控制模塊傳來的選擇參數,然后根據選擇參數分析并導入Maya生成相應的模型文件(.x文件),在系統中創建相應的模型對象。場景生成模塊首先接收用戶輸入控制模塊傳來的參數,之后生成特定的場景圖片。最后,系統將模型導入模塊生成的模型對象和場景生成模塊生成的場景對象一起顯示出來。系統設計流程如圖2所示。

2 關鍵技術研究

2.1 三維人體模特的創建

2.1.1 模型制作

三維人體模特的建模是非常重要的一個環節。為了較好地實現對三維人體模特的建模,本文根據實際情況確定其設計原則:a)將參照真實的人體照片進行建模;b)人體模型分為頭、軀干、手臂、腿腳四個子部分。

考慮到實時渲染的性能表現,組成模特的多邊形數量不宜過多,但是如果多邊形數量太少又會影響到人體模型的外觀真實感(如在關節等位置棱角分明)。通過設置圓柱體的頂部細分數和高度細分數,可以控制人體模型各部分的細節高低程度。例如用具有較大高度細分數的圓柱體來建模手臂等變化細節較多的部分,從而得到帶有較多細節的、比較平滑的手臂模型;而用高度細分數較少的圓柱體來建模軀干等較為均勻部分,從而減少多邊形使用數目,提高渲染性能。

此外,考慮到人體模型具有左右對稱的特點,可以先創建出左側的部分模型,然后復制其鏡像即可制作出另外的一側。這種方法的使用能夠節省相當一部分建模工作。

2.1.2 繪制紋理

在為人體模型繪制紋理之前,必須通過應用UV數據來準備表面信息。在多邊形模型中存在的每個頂點都位于一個UV點上,UV點儲存了與紋理中特定像素對應的2D坐標信息。當創建任何基本幾何體時,在默認設置下都會被賦予UV,但是當進一步建模時,這些UV通常都要被改變并重新安排,以使得模型被正確地賦予紋理[7]。

為人體模型賦予紋理最有效的方法是把人體模型分成多個區域,根據各個區域的形狀選擇一個特定的貼圖方式。經過分析后,人體模型根據貼圖區域被分為頭發、頭部、軀干、胳膊、手掌、腿部幾個部分。其中頭發、軀干、腿部、手掌應用平面貼圖;胳膊則應用圓柱貼圖。

當處理人體模型的UV坐標時,需要使用一個棋盤格紋理作為參考[8],這樣可以直觀地顯示出每個區域被拉伸或失真。在糾正了這些失真后,就可以保證將要應用到模型上的2D紋理與模型上顯示的紋理是一致的。圖3(a)顯示的是在未應用任何UV貼圖方法時人體模型上所顯示出的棋盤格紋理圖案,可以看出模型上的網格圖案排列凌亂且不均勻;(b)中顯示的是在應用了以上所介紹的UV貼圖方式后的人體模型,可以看出模型上網格圖案整齊而均勻,這就保證了在應用紋理后能得到基本不失真的圖案。

三維人體模型是由多邊形所組成的曲面構成的。在三維曲面上應用紋理的方法之一是先生成三維曲面的平面展開,然后將紋理圖案映射到三維曲面的平面展開上。把選定的曲面區域展開為平面UV布局。圖4(a)為在人體模特腿部前后兩曲面分別生成的平面展開UV布局圖。之后,將此UV布局圖片作為參考圖片、現實中的服裝圖片,使之與平面展開UV布局圖相吻合,如圖4(b)所示,人體模特腿部的紋理便制作完成。利用相同的方法制作好人體模特其他部分的紋理圖片并保存到同一文件夾下,完成紋理的繪制工作。

2.1.3 模特身形改變

可以通過對頂點或面的移動、縮放、旋轉等空間位移來對人體模特的身形進行直觀的修改。當把修改后的模型按照一定的順序保存下來后,就得到一組(身高、腰圍)各不相同的模型。而在程序的運行過程中,依據用戶對模特身形的選擇結果,再由Direct3D載入制作好的相應的模型文件即可實現模特身形的改變。

2.1.4 換衣實現

模特服裝也就是模型的文理圖片,網格模型文件(X文件)中聲明了模型各個部分所對應的紋理圖案:

TextureFilename { \"path/texturefilename\"; }

因此,只需制作好每件服裝的紋理圖片,然后修改網格文件中對于紋理圖案的聲明,就能將不同的服裝“穿”在試衣模特身上。

2.1.5 人工服裝印花

系統基于人工生命的細胞自動機原理設計實現了人工紋理及服裝印花的子程序。其中印花元素可以設置為花卉、條紋、山水、卡通、戲曲臉譜等。按照人工生命的細胞自動機原理,在不規則中產生出美,突破傳統設計中的對稱規則。

這樣可以根據著裝場合自由切換服裝紋理,而且可以讓消費者通過這一虛擬平臺更為直觀、自由地觀察各種服裝印花著裝效果,如圖5所示。

2.2 試衣場景的創建

2.2.1 背景框的創建

本系統通過在三維人體模特的后面建立一個帶紋理的矩形框來實現場景的建立(就好比在人體模特身后放上一面屏風)。它還必須滿足一個條件,即在用戶改變觀察方向時,這個四邊形不能隨著三維人體模特一起轉動,使得任意時刻用戶通過攝像機所觀察的人體模特總是位于這面屏風的前面,如圖6所示。

在三維空間中,多邊形都是由頂點構成的,系統使用四個頂點來繪制這個帶紋理的矩形。頂點是由自由頂點格式(flexible vector format, FVF)來規范的。FVF包含的格式內容分別有頂點坐標、RHW、結合浮點值、頂點法線向量、頂點大小、擴散光顏色、反射光顏色、紋理坐標幾項。若使用所有的格式內容,那么表現一個頂點至少需要184 Byte,繪制一個三角形就需要552 Byte,也就是0.5 KB,這樣大的開銷顯然沒有必要。FVF則允許用戶根據需要有選擇地自行定義頂點格式。

根據系統的需求,將頂點格式定義為包含頂點坐標、RHW、擴散光顏色、紋理坐標四項。其中RHW值代表此頂點是經過變換的,即頂點已被變換到2D窗口坐標系中,這就保證了作為屏風的四邊形始終位于屏幕的正后方,而不會隨著三維人體模特一起轉動。首先將頂點格式定義如下:

struct CUSTOMVERTEX

{D3DXVECTOR3 position; // 三維坐標

FLOAT rhw; //變換后的點

D3DCOLOR color; // 顏色

FLOAT tu, tv; // 紋理坐標};

Direct3D對象使用頂點緩沖區來存儲和渲染頂點。在指定了頂點格式之后,接下來就應定義FVF已描述頂點緩沖區中的頂點內容。下面的代碼定義了對應以上所創建的頂點類型的FVF:

#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZRHW|D3DFVF_DIFFUSE|D3DFVF_TEX1)

其中:D3DFVF_XYZRHW和D3DFVF_DIFFUSE標志告訴頂點緩沖區定制頂點類型具有一個變換后的點和一個顏色組元;D3DFVF_TEX1表示頂點帶紋理坐標組元。

對于屏風上的場景圖案,即四邊形上所填充的紋理,通過調用Direct3D所提供的D3DXCreateTextureFromFile方法,把保存在scenes文件夾中的BMP圖片文件作為紋理圖片讀入到所創建的紋理對象之中。當希望改變場景時,只需改變D3DXCreateTextureFromFile方法中的BMP圖片文件名即可。

在紋理載入后,剩下的工作是輸入四邊形四個頂點的三維坐標、顏色以及紋理坐標等數據,并將其寫入頂點緩沖區,至此得到了一個建立好的場景。

2.2.2 環境光源的實現

試衣模特所處的場景不同,環境光源的效果也會有所不同。為了模擬不同環境下的光照效果,為每一個場景設定一個環境光源。

環境光源由D3D設備的SetRenderState()方法來設置。SetRenderState方法有兩個參數:a)D3DRS_AMBIENT是環境光源;b)一個8位十六進制數RGB參數(其中前六位分為三組,每兩位分別代表R、G、B三種顏色的光,最大值為FF,即255,最小值為00),可以通過設置該十六進制數來得到想要的光源。

2.3 三維圖形繪制

2.3.1 D3D對象的創建與刪除

在WinMain函數中創建完成應用程序窗口后,在WinMain中只需調用InitD3D即可完成Direct3D的初始化。Direct3D對象的初始化工作包括創建Direct3D對象、設置顯示參數以及創建Direct3D設備。

首先調用創建Direct3D對象的函數Direct3DCreate9();然后通過字段D3DPRESENT_PARAMETERS來創建設備的結構體,并通過填充結構體來指定3D應用程序的行為特征;最后通過調用方法IDirect3D9::CreateDevice來創建Direct3D設備。這樣就完成了D3D對象的初始化工作。當一個D3D應用程序關閉時,不僅僅意味著銷毀應用程序窗口,而且必須釋放所有使用過的D3D對象,使所有指向它們的指針無效。在Direct3D編程中,調用每個D3D對象的IUnknown::Release方法來釋放它們,使得這些對象的引用計數清零,并被自動從內存中刪除。

2.3.2 導入人體網格模型

三維人體模型是以文件.ma格式保存在硬盤中的。要進行3D網格數據的建模,就必須將其轉換為Direct3D可以讀取的文件格式。X文件是文件擴展名為.x的文件,是Direct3D支持的基本三維網格文件格式。通過向Maya中加入X文件輸出器插件來實現輸出X文件的功能。

在輸出X文件后,即可以在程序中進行網格模型的導入工作。如圖7所示,創建一個材質緩沖區來存儲所有將要使用的材質和紋理之后即可載入網格模型。通常,一個3D網格模型都包含了多種材質,而每種材質也有對應的紋理。因此,在載入網格模型后,要根據網格的總材質數來創建新的材質和紋理對象。對于每個網格模型中的每種材質,都要執行拷貝材質、設置材質的環境顏色信息、為材質創建紋理三個步驟。在載入了所有的材質后,再通過調用IUnknown::Release來釋放材質緩沖區。

2.3.3 渲染

渲染工作一般都是由render()函數來實現的。系統在每一幀畫面調用一次render()函數,進而實現實時渲染的三維動畫。一個典型的render()函數所包含的工作可以分為

a)在前置緩沖中清除畫面;

b)命令Direct3D開始渲染;

c)命令Direct3D結束渲染;

d)將后置緩沖內容傳送到前置緩沖以顯示畫面。

系統所要做的工作就是在b)c)進行三維人體模特和場景四邊形的渲染。

1)渲染人體三維模特 在2.2節中載入網格對象的每個材質都是渲染的子部分,因此網格的渲染往往是循環進行的。每一個循環往往都分成三個部分:

(a)調用SetMaterial方法設置子部分的材質。

(b)調用SetTexture方法設置子部分的紋理。

(c)調用網格對象的DrawSubset(i)方法繪制材質和紋理。其中參數i指定了將被繪制的網格子集,每次循環后i增加1。

2)渲染場景框 要渲染包括紋理的對象,必須首先設置當前的紋理。通過調用SetTexture方法來指定Direct3D設備將使用的紋理,然后再設置紋理層的狀態值。紋理的狀態值定義了紋理組的渲染方式,Direct3D設備最多可以使用八層紋理,因此可以通過定義文理組的渲染方式來混和多個紋理。

系統所使用的場景四邊形只用了一層的紋理,因此只需調用SetTextureStageState方法來設定第0層紋理的狀態即可。在設置完紋理后,就可以通過渲染頂點緩沖區中的頂點數據來繪制四邊形。首先應設置流源。在這一步驟中,調用SetStreamSource方法將指定的頂點緩沖區綁定到數據流源上,接著調用SetFVF方法來通知Direct3D使用哪種頂點著色引擎。在系統中,著色引擎只是先前定義的FVF代碼D3DFVF_CUSTOMVERTEX。最后再調用DrawPrimitive方法來繪制頂點緩沖區中的頂點數據。

3 智能評價系統

智能評價系統主要包括服裝搭配合適度的評價及服裝尺寸推薦。在用戶分別選擇了上衣與褲子(裙子)后,系統將根據上衣和褲子(裙子)之間的組合給出搭配合適度的評價。

服裝搭配合適度評價系統的一種實現方法是讓專業人士逐一評價每一套衣著的搭配合適程度并由系統記錄下來,在用戶選擇了相應的上衣和褲子(裙子)后,系統再從數據庫中調出專業的搭配評價反饋給用戶。該方法雖然能給出較為專業準確的搭配合適度評價,但在服裝數量較大時則幾乎不可能實現。考慮一個包含了200件上衣和200條褲子(裙子)的系統,如果要逐一記錄下每一組搭配的評價,那么就必須請專業人士逐一給出200×200=40 000條建議,這顯然是很不現實的。

一種較為可行的解決方法是:人們在評價服裝搭配合適與否時,無非是從服裝本身的諸多風格元素出發來考慮的,如服裝的面料、色彩、剪裁、季節性等方面的服裝風格。一般來說,在大多數風格上都較為接近的兩件服裝的搭配合適度也較高。因此,首先由專業人士給出每一件服裝的各項風格指數(M1,M2,…,Mi),然后系統計算出指定的兩件服飾之間的風格指數差別度之和S,再根據S來給出建議性的評價,S越小服裝搭配合適度越高。其中S由式(1)給出。

S=∑i|Mi-M′i|(1)

以上例子只需專業人士給出200+200=400條評價即可。服裝尺寸建議的實現則較為直觀,只需根據用戶所選擇的人體模型的身高來推薦相應的上衣尺碼(S,M,L),根據用戶所選擇的人體模型的腰圍來推薦相應的褲子(裙子)的腰圍尺碼。

4 系統實現

系統運行界面如圖8所示。圖中左上方為顯示虛擬模特和場景的渲染窗口,用戶可通過鍵盤上的W、A、S、D四個鍵來控制模型的旋轉,從各個角度觀察效果;右側是供用戶選擇的模特身形以及服裝的控制區域;最右下角顯示的是智能評價的結果,即服裝搭配適合度以五星級指數給出,如★☆☆☆☆評價最低,而★★★★★評價最高;左下角則提供場景選擇的組合框。

5 結束語

本文論述了智能虛擬試衣模特仿真關鍵實現技術,同時設計實現了服裝搭配合適度的智能評價系統。

進一步研究的內容有:a)在虛擬模特的創建方面,如果想讓用戶得到更為真實的試衣體驗,可以借用人體動作捕捉系統,讓模特表現出各種現實生活中的“主人”習慣性的動作,使得服裝穿著更具個性化。b)在智能評價方面,除了給出服裝搭配適合度的評價外,還可以與情感模型等技術相結合,由系統自動預測用戶的喜好模式,并給出推薦的服裝搭配建議。

參考文獻:

[1]AZARIADIS P N, ASPRAGATHOS N A. On using planar developments to perform texture mapping on arbitrarily curved surfaces[J]. Computers Graphics,2000,24(4):539-554.

[2]WEEKS J. Real-time rendering in curved spaces[J]. IEEE Computer Graphics and Applications,2002,22(6):90-99.

[3]陸永良,李汝勤,胡金蓮.虛擬服裝的發展歷史和現狀[J].紡織學報, 2005,26(1):132-134.

[4]齊敏,李文娟,齊華,等.服裝虛擬仿真系統研究[J].中國科學技術大學學報,2007, 37(9): 1137-1140.

[5]徐愛國.虛擬人動畫中的三維服裝仿真技術研究[D].杭州:浙江大學,2007.

[6]CUTLER L D,GERSHBEIN R,WANG X C, et al. An art-directed wrinkle system for CG character clothing and skin[J]. Graphical Models,2007,69(5-6):219-230.

[7]TURQUIN E,WITHER J,BOISSIEUX L,et al. A sketch-based interface for clothing virtual characters[J]. IEEE Computer Graphics and Applications,2007,27(1):72-81.

[8]XU Zhi-gen,YAN Yu-song,CHEN J X. OpenGL programming in Java[J]. Computing in Science and Engineering,2005,7(1):51-55.

主站蜘蛛池模板: 中文纯内无码H| 999国产精品| 国产精品福利导航| 女人18毛片久久| 青青青国产视频手机| AV无码国产在线看岛国岛| 亚洲 日韩 激情 无码 中出| 国产交换配偶在线视频| 亚洲视频四区| 免费精品一区二区h| 国产69囗曝护士吞精在线视频| 国产精品制服| 尤物午夜福利视频| 国产精品久久久久久久久| 国产一国产一有一级毛片视频| 粉嫩国产白浆在线观看| 四虎永久免费在线| 992tv国产人成在线观看| 57pao国产成视频免费播放| 国产视频一二三区| 国产精品hd在线播放| 亚洲成a人片在线观看88| 久久黄色小视频| 亚洲国产黄色| 日韩久久精品无码aV| 久视频免费精品6| 日韩在线中文| 国产精品吹潮在线观看中文| 精品国产自在在线在线观看| 蜜桃视频一区二区| 久草热视频在线| 免费人成在线观看成人片| 高h视频在线| 欧美成人影院亚洲综合图| 欧美第九页| 日韩第一页在线| 91视频日本| 国产91在线|中文| 中国一级特黄视频| 久久久久九九精品影院| 国产麻豆aⅴ精品无码| 午夜三级在线| 久久综合色视频| 婷婷综合在线观看丁香| 久久久久无码精品国产免费| 国产免费人成视频网| 日韩免费中文字幕| 91国内视频在线观看| 亚洲综合色区在线播放2019| 国产国模一区二区三区四区| 国产成人永久免费视频| 伊人成人在线视频| 成人国产精品网站在线看| 国产后式a一视频| 一本色道久久88综合日韩精品| 亚洲欧美一区在线| 亚洲视频四区| 欧美国产日韩在线观看| 色综合中文| 色婷婷天天综合在线| 亚洲国产成人麻豆精品| 亚洲一区网站| 亚洲第一综合天堂另类专| 国产一区二区三区夜色| 一级黄色网站在线免费看| 国产美女精品在线| 欧美午夜在线观看| 国产成人一区免费观看| 国产高清在线观看| 亚洲伊人天堂| 91娇喘视频| 另类综合视频| 亚洲第一极品精品无码| 中文字幕无码电影| 97超爽成人免费视频在线播放| 最新国语自产精品视频在| 99中文字幕亚洲一区二区| 在线免费a视频| 国产成熟女人性满足视频| 日韩毛片基地| 国产aⅴ无码专区亚洲av综合网| AV在线天堂进入|