前言:中文期刊網精心挑選了三維圖范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。
三維圖范文1
關鍵詞 圖形引擎 3Dmax建模 設計研究
中圖分類號:TP3 文獻標識碼:A
0前言
地球上的人類以及其它物種自誕生就在一個充滿三維物體的三維空間中,而為了使計算機能夠準確地再現這些人或物體,則必須在三維空間中描繪這些物體?,F今社會發展正處于一個信息高爆發的時代,人們常常在茫茫的數據海洋面前顯得不知所措,一時難以抓住隱藏在數據之中的本質、結構和規律,所以我們需要通過計算機是這些實物以抽象化等形式通過一定的軟件使之表現出來這些物體和信息加深對現今社會的掌握和了解。從而促進現代社會的發展和充實人們的生活。三維圖形引擎技術是種圖形生成和圖像理解相結合的技術,它賦予人們一種仿真的、三維的并且具有實時交互的能力,尤其是以可視化技術為基礎發展起來的虛擬現實技術、三維仿真技術以及科學計算可視化技術,它們的發展及其相互結合使人類認識和駕馭世界的技能得到了極大的延伸。人們可以在三維圖形世界中用以前不可想象的手段來獲取信息,或發揮自己的創造性思維。
本次課題研究對象為對一個基于3DS MAX建模、DirectX技術實現的三維圖形游戲引擎技術設計系統的開發。該系統主要實現對模型的視景交互、實時碰撞檢測以及特殊效果的模擬等功能。
1建模的設計與實現
(1)軟件建模方法。場景空間的建摸方法一般有兩種:第一是把制作好的房屋和地形效果平面圖導入3DS MAX中,在3DS MAX中直接利用擠出(Extrude)命令生成立體空間模型。第二種方法則是直接在DirectX中生成一些特定的空間地形效果,同時通過3DMax構建簡單的房子等模型效果,然后導入到圖形場景空間中。
(2)設計與實現。場景建模是3Dmax建模的重要環節之一,同時也是最為基本的功能之一,所以如何選擇合適的建模方法也是極其重要的。為了讓場景具有一定的真實感,所以在建模過程中應該注意兩個方面:第一是注意創建模型原件的實際尺寸。第二是在滿足設計效果圖的前提下,盡量將模型做得精簡美觀,減少模型重復面的出現,提高對模型修改和渲染的速度。
建立了空間場景模型之后,在導入模型之前在創建房屋時,需把房間體模型轉換成相關線框形式,選中要創建的房屋模型的基本圖元,再選擇所創建面的左右兩個邊,再使用多次擠出(Extrude)命令和進行多邊形編輯(Polygon),最終完成房子模型的建模。
2系統邏輯功能設計
一個完整的程序當中個都會存在于一個初始化程序,這一表現尤其表現在大型程序當中如:游戲場景、網絡編程等。程序的初始化它可以防止程序發生不可預知的錯誤,同時也可以用做程序出錯時的依據,方便查出程序當中的錯誤原因,這是一個良好的編程習慣。在這里D3D初始化的作用就是初始化程序的運行功能,防止程序發生錯誤產生不必要的錯誤發生。
D3D初始化步驟:(1)獲得D3D程序的應用接口指針。(2)檢查相關設備技術的功能特性,確定顯卡等設備是否正常運行、是否支持硬件頂點處理。 (3)初始化一個D3D應用窗口結構來作為實例,這個窗口包含大量的數據對象,它允許我們創建一個D3D窗口對象程序。
對于模型的創建我們一般采用的3Dmax建模工具來構造一個較為復雜的具有真實感模型,然后使用3Dmax建模工具插件將模型轉換成.X特殊模型文件格式。對于生成的X模型文件而言,當一個程序需要被訪問時他必須先訪問X文件。訪問X文件時通過調用程序DirectXFileCreate函數創建一個DX的應用窗口接口,此接口就代表了一個X文件的調用路徑或者說是生成路徑。創建IDirectXFile接口后,需注冊一個系統的定制模版或者標準模版。定制模版是用戶根據自己習慣和愛好定制的模板,標準模板則是微軟公司自己定義的一種固定的模板。
系統通過調用系統函數IDirectXFile ::RegisterTemplates函數來注冊模版。注冊模版之后通過調用IDirectXFile::CreateEnumObject函數打開X文件來檢查數據對象。在我們圖形引擎構建模型中存在兩種類型,一種是靜態模型,另一種是動態模型。對于不同的模型類型則要采取不同的方式來進行繪制和生成。
3總結
當下游戲場景、建筑、房地產、室內場景設計與游戲和裝修相關行業的繁榮發展使得三維建模技術已經達到了一個很高的程度,這種方案的設計將借助計算機變得更加輕松和高效,同時也會產生更加高效的場景設計模型。虛擬現實技術在各種技術應用的驅動和需求的刺激下,得到不斷的高效的推陳出新,其應用的相關領域也會更加靈活和廣泛。
參考文獻
三維圖范文2
1創建三維形象
當效果圖設計制作者擁有相對較為完善的構思想法之后,需綜合考慮平面圖紙設計人員的想法,與此同時應該將該種構思采用較為具體的三維形態呈現于腦海之中,參考圖紙設計,進行完整性較強策劃。因此可以說,電腦效果圖設計制作者應該仔細研讀平面設計圖紙,全面掌握相關圖紙給出的廠房結構、標注材料、建筑尺寸等有價值的內容,能夠了解相關材料所具備的質感與紋理;將效果圖中所展現的室內外建筑結構跟電氣線路、周邊環境、管線布局等各個方面聯系起來,采用較為合理的構圖形式,清晰突顯各類關系;結合對應思路進行方案制定,運用電腦設備將平面上的圖紙轉化成為較生動、形象、立體化的三維效果圖,便于大家從各個角度出發審視并觀察所設計內容,而后擇取理想視角,實現高質電腦效果圖作品的優化輸出。對于整體建筑結構來說,室內以及室外建筑的三視圖是對其展開說明需參照的基礎性依據,為此要求相關的效果圖制作者需具備良好的三維空間感官能力,便于其靈活運用3dsmax軟件。
2布置燈光
制作效果圖的進程當中,為實現對場景氣氛的有效調整,必須根據實際情況設置燈光。通過燈光的立體化作用,能夠直接決定三維效果圖的層次感,不論一幅優秀的效果圖能擁有多么出色的材質和造型,若是其未能擁有優化的燈光布局設置,那么其產生的效果也會大打折扣,為此需合理設置燈光,獲取較為滿意三維效果圖成果。
3結語
三維圖范文3
關鍵詞: 三維圖像; 運動合理性判斷; 運動數據采集; 仿真模型
中圖分類號: TN911.73?34; TP242 文獻標識碼: A 文章編號: 1004?373X(2017)08?0022?03
Study and simulation of motion rationality judgment method based on 3D image
QIN Guohui
(Baoshan University, Baoshan 678000, China)
Abstract: As the judgment efficiency and the accuracy of movement rationality of the traditional judgment method are not high, a motion rationality judgment method based on 3 d image is put forward. A 3D image human motion model is used to acquire human motion data. Taking the body's metabolism speed and lactic acid content in his muscle as the classification basis, the implicit sport injury data and reasonable human motion data are classified. The human body state characteristic analytic function is used to analyze whether the human body state in the classification results is legal. The acquired legal data is input into the simulation model of movement rationality judgment. By means of direct and inverse dynamics, the human body structural parameters are determined and the motion rationality judgment result is given. The experimental results show that the proposed method has low motion simulation error, and high judgment efficiency and accuracy.
Keywords: 3D image; motion rationality judgment; motion data acquisition; simulation model
運動合理性判斷是電子科技領域極具創造性的研究項目,同時也是醫療領域中疾病預防與診治的重要手段。近年來,運動合理性判斷方法的研究與仿真已逐漸成為學術界共同探討的前沿課題[1?3]。在學術界以往提出的方法中,均是根據人體的結構和運動規律對運動合理性進行判斷的,這些二維的判斷方法使用起來較為抽象,導致方法的運動仿真誤差偏高,并無法取得較高的判斷效率和判斷準確度。為此,提出基于三維圖像的運動合理性判斷方法[4?6]。
1 運動合理性判斷方法研究與仿真
1.1 三維圖像人體運動模型
在日常生活中,由于受到體質和運動規律的影響,人體的反應能力和防御能力忽高忽低,導致運動損傷情況時有發生,為此,三維圖像人體運動模型所需進行重點提供的數據應是隱含運動損傷數據和人體合理運動數據。根據上述情況構建三維圖像人體運動模型,如圖1所示。
由圖1可知,三維圖像人體運動模型先對人體運動三維圖像的隱含運動損傷數據和正常運動數據(“人體運動數據”)進行采集,并將其輸入到人體運動數據庫中進行運動數據類型的分類。
由于人體在運動中的新陳代謝較為迅速,并且肌肉中將會匯聚大量乳酸,以上兩點均是重要的運動合理性數據。因此,基于三維圖像的運動合理性判斷方法對運動損傷數據庫的分類工作,將以人w的新陳代謝速度和肌肉中乳酸含量為分類依據,對隱含運動損傷數據和人體合理運動數據進行分類,組成人體運動數據分類結果,該分類結果將會使用函數進行進一步解析。
1.2 基于三維圖像的人體狀態特征解析函數
三維圖像的運動合理性判斷方法利用基于三維圖像的人體狀態特征解析函數,判斷人體運動數據中的人體狀態是否合法,這一解析過程是運動合理性判斷仿真模型數據準確度的保障,對提高所提方法的判斷準確度和判斷效率具有重要作用,如圖2所示。
由圖2可知,三維圖像人體運動模型給出的隱含運動損傷數據和人體合理運動數據中均含有人體狀態特征,包括骨骼運動特征和肌肉運動特征。這些人體狀態特征就是基于三維圖像的運動合理性解析函數的重點解析內容。用集合表示人體運動數據的骨骼運動特征集合, 表示肌肉運動特征集合,,分別表示人體內骨骼和肌肉的數量,那么,人體綜合狀態特征的函數表達式為:
式中:表示運動時間;表示運動區域面積;表示人體狀態特征因子。
根據式(1)的計算結果將人體結構劃分成段,每段的人體狀態特征用集合表示,將集合中排序為的人體狀態特征與式(1)的計算結果進行對比,經由式(2)計算出二者的相似度:
根據式(2)的計算結果可解析出三維圖像中的人體運動是否合法,合法的相似度計算結果應與人體運動數據庫中的數據具有一定的函數對應關系。為此,將人體運動數據庫的人體狀態特征閾值設為,當時,則可確定三維圖像中的人體狀態是合法的。此時,所對應的人體運動數據會被輸入到運動合理性判斷仿真模型中。
1.3 基于三維圖像的運動合理性判斷仿真模型
基于三維圖像的運動合理性判斷仿真模型采用三維可視化方法,對用戶所需的運動合理性判斷流程和結果進行展示。其以人體\動數據為輸入,對運動中各段人體結構的參數進行確定,最終得出運動合理性的判斷結果,如圖3所示。
由圖3可知,基于三維圖像的運動合理性判斷仿真模型包括兩個計算機仿真模型,分別是骨骼、肌肉計算機仿真模型和正逆向動力學計算模型。其中,骨骼、肌肉計算機仿真模型是對1.2節中計算出的合法人體運動數據進行計算機仿真建模得到的,可以通過這一仿真模型對人體運動中的慣性因子(包括人體重心、運動慣量等)進行獲取。
正逆向動力學計算模型通過引入動力學中的正向判斷方法和逆向判斷方法,對人體運動中的慣性因子進行正向判斷,確定出運動中各段人體結構參數;對人體結構參數進行逆向判斷,可獲取最終的運動合理性判斷結果,進而得出此時的人體運動是否合理。
2 實驗結果分析
2.1 運動仿真誤差驗證
對實驗輸出數據進行處理,所獲取到的三種方法運動仿真誤差數據如表1所示。
由表1可知,本文方法對比對照組1而言,運動仿真誤差平均縮減0.142%;對比對照組2而言,運動仿真誤差平均縮減0.254%。證明三維圖像能夠有效模擬人眼視覺特點進行人體運動仿真,為本文方法帶來較低的運動仿真誤差。
2.2 判斷效率驗證
對實驗中三種方法的判斷用時進行統計,如表2所示。
由表2可知,兩個對照組中方法的判斷用時基本持平,而本文方法的判斷用時遠高于其他兩種方法,證明本文方法判斷效率較高。
2.3 判斷準確度驗證
對實驗輸出數據進行處理,所獲取到的三種方法判斷準確度數據如表3所示(判斷準確度的單位為1)。
由表3可知,本文方法的判斷準確度始終高于0.95,該數值高于其他兩種方法的最高判斷準確度,證明本文方法具有較高的判斷準確度。
3 結 論
三維圖像是當今社會最為高級的顯示技術之一,它根據人體雙眼視力差異和折射原理為人們展現出逼真的畫面。運動合理性判斷通常指對不會造成人體內臟功能損傷的運動行為的判斷。本文將兩種技術融合在一起,提出基于三維圖像的運動合理性判斷方法。這種方法利用三維圖像構建人體運動模型、提供人體運動數據并解析,在很大程度上降低了方法的運動仿真誤差。本文最終通過運動合理性判斷仿真模型給出運動合理性判斷結果。通過實驗對判斷結果進行分析,可證明本文方法具有較高的判斷效率和判斷準確度。
參考文獻
[1] 龔勇.基于三維圖像分析潛在運動損傷姿態判斷方法[J].計算機仿真,2015,32(9):245?248.
[2] 黃秀花.三維圖像運動特征配準方法研究與仿真[J].計算機仿真,2015,32(12):206?209.
[3] 王鑫.單幀運動圖像中人體三維重建方法研究與仿真[J].計算機仿真,2015,32(10):267?270.
[4] 金暉.三維多媒體視覺圖像運動行為仿真研究[J].計算機仿真,2015,32(12):404?407.
三維圖范文4
圖像三維重建的方法主要有兩大類:一類是三維面繪制;另一類是三維體繪制。體繪制更能反應真實的人體結構。由于體繪制算法運算量太大,即使利用高性能的計算機,仍然無法滿足實際應用中交互操作的需要,因此,面繪制仍是目前的主流算法。
1.1三維面繪制(SurfaceRending)表面表示是表示三維物質形狀最基本的方法,它可以提供三維物體的全面信息,其具體形式用邊界輪廓線和表面曲面表示。
1.1.1基于斷層輪廓的表面重建
在斷層圖像中,通過手工或自動方式實現目標輪廓的確定性分割,然后用各層的輪廓線“堆砌”在一起表示感興趣物體的邊界,這種輪廓線表示方法簡單且數據量小,但是不很直觀。除了以輪廓線表示物體外,還可以由輪廓重建物體的表面來表示。最早的方法是基于多邊形技術,主要采用平面輪廓的三角形算法,用三角片面擬合這組表面輪廓的曲面,Bussonnat提出了另外一種基于表面輪廓的Delaunay三角形方法,解決了系列表面輪廓的三維連通性問題。用三角形或多邊形的小平面(或曲面)在相鄰的邊界輪廓線間填充形成物體的表面,所得出的只是分片光滑的表面,Lin采用從輪廓出發的B樣條插值重建算法,得到了整體光滑的表面。
1.1.2基于體素(Voxel)的等值面重建[1,2]
所謂等值面是指空間中的一張曲面,該曲面上函數F(x,y,z)的值等于某一給定值。等值面生成的最早研究是從醫學圖像的應用開始的。由于醫學圖像數據是三維正交等距網格,組織三維圖像的基本六面體單元稱為體素(Voxel)?;隗w素的等值面重建方法主要有以下幾種。
(1)Cuberille方法。該方法將三維圖像中的每一像素看成是空間中的一個六面體單元,即體素。在體素內數據場具有相同的值,用邊界體素的六個面擬合等值面,即邊界體素中相互重合的面去掉,只把不重合的面連接起來近似表示等值面。這種方法的特點是算法簡單易行,便于并行處理,因為對每個體素的處理都是獨立的;主要問題是出現嚴重的走樣,顯示圖像給人一種“塊狀”感覺,尤其在物體邊界處鋸齒形走樣特別醒目,而且顯示粗糙,不能很好地顯示物體的細節。
(2)MarchingCubes方法[3,4]。這是由Lore2nesen提出的一種基于體素的表面重建方法,MC方法是三維規則數據場等值面生成的經典算法,它先確定一個表面閾值,計算每一個體素內的梯度值,并與表面閾值進行比較判斷,找出那些含有表面的立方體,利用插值的方法求出這些表面,這其實是抽取等值面的過程。其主要優點是可以采用比較成熟的計算機圖形學方法進行顯示。計算量小,運行速度快,借助于專用硬件支持,在高性能PC上面繪制完全可以實現實時交互顯示,但它存在連接上的二義性,為解決二義性問題,提出了很多有效的方法。例如MarchingTetrahedral,DiscMC方法。
(3)MarchingTetrahedral方法[5]。Marc2hingTetrahedral算法(簡稱MT算法)是在MC算法的基礎上發展起來的,該算法首先將立方體體素剖分成四面體,然后在其中構造等值面,進行四面體剖分后,等值面在四面體中的剖分模式減少,算法實現簡單。其次,構造的等值面較MC算法構造的等值面精度高。而最直接的原因是企圖通過在四面體內構造等值面來避免MC算法中存在二義性問題。常見的立方體剖分成四面體的方法有5個、6個和24個四面體剖分法。一般最常用的是5個四面體剖分法。
(4)DividingCubes方法。這種方法是逐個掃描每個體素,當體素的8個頂點越過等值面時,將該體素投影到顯示圖像上。如果投影面積大于一個像素的大小,則該體素被分割成更小的子體素,使子體素在顯示圖像上的投影為一像素的大小,每一子體素在圖像空間被繪制成一表面點。每一表面點由對應子體素的值,對象空間中的位置和剃度三部分表示,可使用傳統的圖形學消影技術,將表面點繪制到圖像空間中。采用繪制表面點而不是繪制體素內等值面片,從而節省了大量的計算時間。
1.2三維體繪制(VolumeRending)[6]體繪制由于直接研究光線通過體數據場與體素的相互關系,無需構造中間面,體素的許多細節信息得以保留,結果的保真性大為提高。從結果圖像的質量上講,體繪制要優于面繪制,但從交互性能和算法效率上講,至少在目前的硬件平臺上,面繪制還是要優于體繪制的。下面討論三種體繪制方法。
1.2.1投影法(Projection)首先根據視點位置確定每一體素的可見性優先級,然后,按優先級由低到高或由高到低的次序將所有體素投影到二維像平面上,在投影過程中,利用光學中的透明公式計算當前顏色與阻光度,依投影順序(即體素可見性優先級)的不同,投影法分為從前至后(Front2to2Back)算法與從后至前(Back2to2Front)算法。一般說來,前一種算法運算速度快,但除需一個顏色緩存區外,還需要一個阻光度緩存區;后一種算法僅需一個顏色緩存區,并在執行過程中產生不同層面的圖像,有助于醫生更好地理解醫學圖像。
1.2.2光線跟蹤法(Ray2Casting)此法是在體數據進行分類后,從像空間的每一體素出發,根據設定的方法反射一條光線,在其穿過各個切片組成體域的過程中,等間距地進行二次采樣,由每個二次采樣點的8個領域體素用三次線性插值法得到采樣點的顏色和阻光度值,依據光照模型求出各采樣點的光亮度值,從而得到三維數據圖像。光線跟蹤法所面臨的問題是運行速度慢,可利用空間相關性提高算法的效率。
1.2.3最大密度投影(MIP)最大密度投影是一種廣泛使用的體繪制技術,傳統的MIP算法使用光線跟蹤法(Ray2Cast2ing)跟蹤圖像平面上每個像素發出的投影光線與體數據相交的每個體素,逐個比較,找出每條光線上的最大值,將它作為投影平面上對應點的像素值。臨床上在病人血管中注入造影劑后進行CT或磁共振成像,然后,用MIP算法顯示血管的位置、形狀和拓撲結構,也稱為血管造影(Angiogra2phy)。幾乎所有的商用醫學圖像系統都包含MIP繪制模塊。由于MIP的結果缺少深度信息,觀察時要對體數據旋轉,這意味著每次要計算5~20幀圖像。顯然,若不優化,血管造影只能在昂貴的大型工作站上實現。
2三維表面重建MC算法的改進
2.1離散MarchingCubes算法
離散MarchingCubes算法(簡稱DiscMC)是MONTANIC,SCATENIR和SCOPIGNOR在2000年提出的一種新型的MarchingCubes的改進算法[3],它將三維表面的重構和簡化過程融為一體,在等值面的生成過程中就自適應地完成了面片合并。與其它簡化算法相比[2],DiscMC具有算法效率高、簡化比例高、損失精度小等優點。同時,DiscMC還采用了非常簡捷的辦法解決了經典MarchingCubes算法中的二義性問題。說明DiscMC的算法流程如圖1所示。其中左面是4個相鄰的體元(Cubes),帶有黑點側的9個頂點位于等值面內,另外9個頂點位于等值面外,上面一行說明了用經典的MarchingCubes算法構造等值面三角面片的結果,下面一行說明了DiscMC的構造和簡化流程。經典MarchingCubes算法直接根據這4個體元頂點的內外狀態構造出8個三角面片,這些三角面片的頂點是根據所在邊的兩個頂點的密度值通過插值計算得出。DiscMC則把整個過程分成三步:(1)掃描(Marching):首先,所有與等值面相交的體元被逐一掃描,根據其8個頂點的內外狀態,按照規定好的方式生成三角面片。在這一步中,所有生成的三角面片只是用它所在體元的位置和其形態的編號進行記錄,并不計算實際的頂點坐標值。(2)合并(Merging):三角面片生成后,將凡是位于同一平面并且相鄰的三角面片得到合并,形成大的多邊形,隨后,大的多邊形又被重新劃分為三角形。(3)插值(Interpolating):DiscMC的最后一個步驟是通過線性插值計算出最后所得的三角面片的頂點坐標,這一步和經典的MC算法是相同的。
2.2三維重建的代碼實現[7~12]
采用格式為dcm的256×256×110的MRI人頭圖像序列,采用VisualC++6.0進行開發的,應用了MFC,OpenGL等技術,運行于Win2dows2000環境下。這里僅列出DiscMC算法實現的程序框架:DiscMC算法實現的偽代碼如下:{清除當前正在顯示的三維表面的數據結構;從CT數據與處理文件(PRE)中讀取原始數據;if從PRE文件中讀取數據{通過輪廓線數據進行體數據的填充;清除斷層輪廓線的數據結構;}for(對每一個物體){初始化存儲掃描形成的三角面片的兩層鏈表結構INCIDENCE;for(對每個個體元){查表找到對應的三角面片分布情況;將每一個三角面片根據其平面方向和所處位置加入INCIDENCE;}初始化三角面片鏈表FaceList、頂點鏈表PointList和多邊形鏈表PolyList;for(對INCIDENCE中的每一個平面){清空用于合并的二維數組Merger;for(對于該平面上的每個三角形或矩形){查表找到該三角形或矩形的邊對應于Merger中的編號;以異或模式將每條邊寫入Merger;}至上而下掃描Merger,將合并的圖形劃分為凸多邊形,加入PolyList;}將PolyList中涉及到的頂點加入PointList,同時建立頂點的逆向索引;for(PolyList中的每個凸多邊形){檢查其邊界上(不含端點)是否有點在PointList中;找到這樣的“T”型點,加入該多邊形,同時做標記;進行“之”字形的三角形劃分,生成的三角面片加入FaceList;if(不能劃分完)進行扇狀劃分;}清除PolyList;清除INCIDENCE;將FaceList中的數據轉移到數組FaceArray中;清除FaceList;將PointList中的數據轉移到數組VertexArray中,同時進行插值;清除PointList;}對所有頂點計算其法向量;進行OpenGL的有關設置,準備顯示。
三維圖范文5
一、攝影影像自身存在弊端成為攝影與3D軟件結合的條件
攝影影像與三維影像的共同之處在于都可以通過平面表達藝術創作的結果。不同之處在于,觀看攝影影像產生真實的審美感受,而觀看三維影像則產生虛擬的心理認定。視覺藝術發展至今,如果把兩者優勢互補地結合在一起,定會產生意想不到的視覺效果。攝影是客觀真實影像瞬間紀實的視覺藝術形式。攝影的紀實性是攝影藝術的基本屬性。紀實性是對鏡頭前存在事物的如實記錄,是對現實中事物的客觀寫真。當人們已經適應了這種藝術形式時,人們更加渴望了解觀看到那些難得一見的、非現實的景象并能夠在真實中展現出來的虛擬現實物象。三維軟件技術與實拍影像的結合出現滿足了人們這種愿望。通過三維軟件構建虛幻圖像可以補充現實存在但無法實拍表現的部分,增強影像的虛擬想象,將圖像形象的完全性多角度展現,可以將人們在生活中無法看到的虛幻形象通過三維軟件圖像合成技術形成全新的三維圖像展現給觀眾。三維影像的主觀隨意創造性恰恰能夠突破紀實性語言的客觀限制,成為攝影藝術中不可多得的影像表現形式,使攝影的藝術影像更能增加獨特的審美價值。攝影是瞬間藝術,無論你想怎么創造形象力,都不能超脫“幾分之一秒”這一時間限定,使得攝影這門藝術有它自身的局限性。主觀意識和想象力往往受被攝對象和照相機的性能限制,不能最大限度地發揮。在攝影藝術主張表現主觀意見受到極大限制的情況下,作者主觀情感需要借助于其他藝術形式得以實現。設計者可以在創作早期進行對畫面圖像的創新。通過全新虛擬圖像的構建逐步完成對攝影作品的后期合成,形成全新的攝影作品。攝影藝術的瞬間也是作者情感高度體現的瞬間,其瞬間生成所面臨的客觀對象已是人化了的世界,是基于攝影者高度的個人化的能力的體現,相機已經不僅僅是一種工具,一種表現媒介,更是一種個人情感表達形式。通過3D軟件制作技術,對虛幻圖像進行三維立體構建,后期可以通過平面設計軟件進行三維圖像平面化,可以對后期整理的圖像進行全新整合達到創作者情感的表現。這種全新的整合也是創作者賦予圖像情感的延續,借助于其他形式將創作者的情感進行再次升華。
二、3D軟件三維制作技術在更多領域的實現
三維圖范文6
關鍵詞:線性規劃 二維線性規劃 三維線性規劃 圖解法
線性規劃圖解法
1、線性規劃
線性規劃是對一組決策變量研究在
滿足約束條件的前提下,最大化或最小化目標函數的問題,其中約束條件和目標函數均為線性函數,如:
■
其中c為n維列向量,稱為價格向量或成本向量;■,稱為決策變量;b為m維向量,稱為右端向量;A為m*n階矩陣,稱為約束矩陣。稱■為可行域。線性規劃的可行域為凸集。通常我們將最大化目標函數的值作為線性規劃的標準形式(最小化問題可看作最大化其負函數,即■)。
在線性規劃問題中,決策變量的值稱為一個解,滿足所有的約束條件的解稱為可行解。使目標函數達到最大值(或最小值)的可行解稱為最優解。這樣,一個或多個最優解能在整個由約束條件所確定的可行區域內使目標函數達到最大值(或最小值)。求解線性規劃問題的目的就是要找出最優解。最優解可能出現下列情況之一:①存在著一個最優解;②存在著無窮多個最優解;③不存在最優解,這只在兩種情況下發生,即沒有可行解或各項約束條件不阻止目標函數的值無限增大(或向負的方向無限增大)。
2、二維線性規劃圖解法
二維線性規劃圖解法的求解過程為:求出并繪制可行域(凸多邊形);找出目標函數下降(上升)方向,并以此為法方向繪制一條與可行域交集非空的初始等值線;沿目標函數下降(上升)方向平移等值線,直至邊界。最終等值線與可行域邊界的交集作為最優解集,等值線所代表的目標函數值為最優值。
下面我們用一個簡單的二維線性規劃問題說明圖解法的求解過程。
■
■
用圖解法求解:
第一步:畫出可行域。以x1與x2為坐標軸作直角坐標系,根據不等式的意義求出各半平面的公共部分稱為可行域。
第二步:畫出等值線。目標函數S=2x1+5x2在坐標平面表示以S為參數、以■為斜率的一簇平行直線,即■,它的位置隨著S的變化平行移動。位于同一直線上的所有點,都使S具有相同的值,所以該直線稱為“等值線”。任取一個定點S0便可在坐標平面上畫出一條等值線■,如圖1所示。
第三步:求最優解。將直線■沿其法線方向向右上方平行移動時,參變量S的值由S0逐步增大。當等值線平行移動到可行域的最后一個點B時,S達到最大值。此時由線性方程組可解得B的坐標(2,3),故目標函數的最大值S=19。
對于二維的線性規劃圖解法,我們很容易在直角坐標系中實現,很容易在教學上演示,但當線性規劃提升至三維乃至更高維空間以后,一些簡單直觀的操作就變得復雜起來,為了更好的研究和演示三維LP圖解算法,需要分析圖解算法的數學本質,使用精確的數學語言而非自然語言來描述圖解算法。
3、三維線性規劃圖解法
三維LP圖解算法在步驟上與二維的相似,但在細節上較為復雜,它的具體步驟可以簡述為:
3.1求出并繪制可行域
根據線性規劃的基本理論,一個n維空間中線性不等式組的解集一定是個凸多面體(polyhedron)。特別的,如果線性不等式組的解集有界(即對任意的目標系數向量■,有■),那么該不等式組的解集是一個多胞形(polytope)。由于圖解法的特殊性和局限性,在LP圖解法中,我們主要求解的是后者。
N維空間多胞形的定義:Q是n維空間Rn中的多胞形,當且僅當Q是Rn中有限點集的凸包,i.e. ■。
在二維平面上的圖解法中,繪制可行域其實就是繪制了這個多胞形(限制在二維空間中為多邊形)。而繪制多胞形所必需的信息即該多胞形的全部頂點。雖然,在理論上我們已經知道有界不等式系統和多胞形的等價性,但是這個定理的證明本身并沒有提供計算多胞形全部頂點的算法。而Danzig所提出的單純形算法理論,提供了求解這些頂點坐標的理論工具?;诙嗝骟w頂點的基本定義,可以簡單的得到結論:多胞形的頂點一一對應于任一定義在這個多胞形上線性規劃的基本可行解。即:
求解給定線性不等式組對應多胞形的頂點問題等價于求解該多面體上線性規劃基本可行解。
基于這個結論,可以得到如下多項式時間的多胞形頂點坐標求解算法:
Step1:對于給定的線性不等式組Ax≤b,考慮其增廣矩陣,選取一組極大線性無關行向量組得到與原不等式組等價的不等式組■;
Step2:選取■全部的極大線性無關列向量組,對■的每一個極大線性無關列向量組■,其實是一個滿秩的方陣,■即可求得一個基本可行解,即一個頂點的坐標。遍歷所有這樣的■,就可以求得全部頂點的坐標。
3.2找出目標函數下降(上升)方向,并以此為法方向繪制一條與可行域交集非空的初始等值線
目標函數的下降(上升)方向甚至是梯度方向都是容易求解的,因為目標函數的梯度正是目標系數向量。但是尋找初始與可行域交集非空的等值線則是一件復雜的事情。事實上,初始等值線的選取問題等價于如下問題:
找到■,使得線性不等式組{Ax≤b,cx=c0}解集非空,即尋找一個原線性規劃的初始可行解。在運籌學中,兩階段法是用來構造求解初始可行解的常用手法。兩階段法簡要如下:
Step1:將線性不等式組Ax≤b化成標準型中的等式組,每一個不等式添加非負的一個人工松弛變量變量;
Step2:構造新的目標函數,及最小化人工變量之和;
Step3:求解該線性規劃,如求得的最優解的目標函數值為0,則該最優解為原問題的可行解;如目標函數值大于0,則原問題無可行解。
在求得初始可行解x0以后,即可選取cx=cx0為初始等值面。
3.3沿目標函數下降(上升)方向平移等值線(面),直至邊界
在該步驟中,主要的難點在于如何判定等值面是否到達邊界。一方面,由于移動的是等值面,故在圖解算法過程中并不記錄當前可行解的信息,所以單純形算法所使用的檢驗系數判定方法難以奏效。另一方面,圖解算法的移動行為非常近似于使用連續優化技巧的線性規劃內點算法,所以三維圖解法的邊界判定算法可以借鑒連續優化的判定方法。
在連續優化中,通常并不嚴格計算一個點是否落在可行域邊界上,而是通過完成判定是否落在可行域內,然后通過線搜索算法逐漸逼近最值點或邊界點。對應到線性規劃問題上,其實就是求解如下判定問題:
給定任意■,判斷線性不等式組{Ax≤b,cx≤c0}解集上是否為空。
線性不等式組的解存在問題可以借助Farks引理來轉換成線性等式組來處理。
Farks引理:令A是一個矩陣,b是一個向量。那么線性不等式組Ax≤b有解,當且僅當對于所有滿足yA=0的行向量y,有yb≥0。
事實上,這里就相當于求解出yA=0的全部基本可行解,并逐一判斷是否滿足yb≥0。
到此為止,已經把LP圖解法中每一個子問題推廣到n維空間中(自然包括三維),并對每一個子問題給出了求解算法,藉此擺脫了原LP圖解法的直觀經驗性描述而將其上升至了具有一般意義的數學算法。
三維LP圖解法的演示算法的改進
這一章節主要研究三維LP圖解的演示動畫實現算法。對于動畫演示,重點是體現等值面從初始位置連續移動至可行域邊界的過程。由于在演示動畫中,并不會顯示具體的算法,所以為了提升算法的運算速度,我們可以對上文中的圖解算法進行簡化和改進。
仔細分析上文中的圖解算法,發現初始等值面的選取(兩階段法的第一階段)以及邊界判定(不等式組解集是否為空)的計算量都至少等于一次同等規模的線性規劃算法的計算量,對于動畫演示來說,其實有相當一部分的運算是無意義的,所以針對動畫演算,采取如下簡化算法:
Step1:繪制可行域;
Step2:初始點選取。以-c為目標系數,求解線性規劃,以求得的最優值作為初始等值面;
Step3:計算移動終止位置。以c為目標系數,求解線性規劃,以求得的最優值作為等值面終止位置。
Step4:從初始位置開始,直至終止位置連續繪制等值面移動動畫。
這樣在整個過程中,step2和step3的運算量就壓縮到了兩次同規模線性規劃算法的運算量,經過實驗對比,在不改變動畫演示效果的同時,可以極大地加快程序的運行速度。
基于MATLAB三維LP圖解法演示系統的仿真與實現
借助MATLAB GUI設計并實現交互式的三維LP圖解法演示系統。
首先,使用edit控件設計了參數讀入界面。在演示系統中,我們默認的是考慮極大化問題,且可行域限制在第一卦限,即■。并且出于簡化考慮,僅考慮三個變量和三個線性不等式約束。
在讀入線性不等式以后,求出全部基本可行解,即求得可行域多胞形全部頂點坐標,通過MATLAB圖形學工具箱自帶的convhull,通過頂點坐標計算得到多胞形全部側面的數據,再使用mergeCoplanarFaces函數,將共面的全部小多邊形合并成大的側面,最終完成可行區域的繪制。
等值面移動動畫通過以下方法完成,對于處于最小值和最大值中間狀態的任意一個等值面cx=c0,將可行域分割成兩個部分{ax≤b,cx≥c0}以及{ax≤b,cx≤c0}兩個相鄰接的多面體,用不同的顏色繪制,以此標注等值面。
最后通過drawnow和pause命令生成動畫,并實時顯示當前可行解及其對應的目標函數值,當動畫停止時所顯示的即為最優解和最優值。
在此基礎上,通過改變線性規劃約束中的系數我們可以實現三維線性規劃圖解法的動態展示。
總結與展望
本文在掌握了二維線性規劃圖解法的基本原理、方法和步驟的基礎上,對多維線性規劃問題圖解法的實現進行了理論分析,并且對三維線性規劃的圖解法利用MATLAB編程,編制了仿真模擬軟件。該程序可以實現對三維LP模型中各參數在一定范圍內的靈活設置,將三維線性規劃問題優化的整個過程通過動態效果展示,界面編排合理,使用靈活方便,作為輔助教學軟件能夠使學生對線性規劃問題的性質有更深的理解。同時基于對多維線性規劃問題實質的分析,在三維圖解法程序的基礎上我們也很容易擴展到三維以上線性規劃問題的圖解法仿真模擬,未來的研究工作可以考慮設計一個通用程序,通過自由設置問題優化空間的維數實現各維數線性規劃問題圖解法的動態效果展示。
參考文獻:
[1] Alexander Schrijver, Theory of Linear and Integer Programming, John Wiley and Sons. 1998.
[2] Frederick S. Hillier and Gerald J. Lieberman, Introduction to Operations Research, 8th edition. McGraw-Hill.
[3] 關玉昆 三維空間線性規劃問題的圖解法[J],遼寧大學學報, 1999,18卷1期。
[4] 鄧先禮,最優化技術,重慶大學出版社,1998.
[5] 申卯興,許進 求解線性規劃的單純形法的直接方法,計算機工程與應用,2007,30期,p94-96.
[6] 燕子宗,費浦生,萬仲平. 線性規劃的單純形法及其發展,計算數學,2007,1期.
[7] JH. Mathews, KD. Fink. Numerical methods using MATLAB. 1999.
[8] 張志通. MATLAB教程,北京航空航天大學出版社,2006.
[9] 錢俊,吳金洪,程茗. 線性規劃問題的MATLAB求解. 科技創新導報. 2011,25期,p158.