亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于OpenGL的三維模型渲染算法研究

        2011-01-23 03:03:11張志華侯恩科
        中國礦業(yè) 2011年2期
        關鍵詞:材質(zhì)彩色分量

        張志華,侯恩科,馬 露

        (1.蘭州交通大學 數(shù)理與軟件工程學院,甘肅 蘭州 730070;2.西安科技大學 地質(zhì)與環(huán)境學院,陜西 西安 710054;3.中國煤炭地質(zhì)總局航測遙感局 遙感應用研究院,陜西 西安 710054)

        富有顏色的圖形圖像是人類最容易接受的信息,具有文字不可比擬的優(yōu)點。自從美國國家科學基金會在1987年提出科學計算可視化(VISC)以來,科學技術研究中的數(shù)據(jù)場的可視化問題越來越受到人們的重視[1-2]。數(shù)據(jù)場可視化中的一個關鍵問題,是如何運用不同的顏色來表達和區(qū)分不同的數(shù)據(jù)源。選擇好的漸變顏色,能夠高效地表達可見的和不可見的數(shù)據(jù)場,有利于人的視覺系統(tǒng)的分辨和識別。目前,國內(nèi)外開發(fā)了很多應用于不同領域的VISC軟件系統(tǒng),在這些系統(tǒng)中,海量數(shù)據(jù)采用漸變偽彩色進行表達。這種表達方法,對于流體力學、生物學、考古學、地質(zhì)勘探、氣象學以及地理信息系統(tǒng)等領域的數(shù)據(jù)場表達,具有很好的直觀性,增強了圖像的可視性。

        為了高效地對地質(zhì)模型數(shù)據(jù)場進行表達,本文研究了基于OpenGL表達的顏色渲染算法,并將這些算法運用在TIN模型以及礦山巷道三維模型的顯示中。這些成功的運用表明,這些算法是可行的和有效的。

        1 顏色模型

        顏色是可見光的一種視覺特性。從客觀上講,可見光本身并沒有顏色,但是可見光不同的光譜分布會刺激人眼產(chǎn)生顏色的感覺,因此,顏色是一種主觀評判概念。在圖像處理中,運用顏色主要受兩個因素推動,一是顏色作為一個強有力的描繪因子,??珊喕繕宋锏膮^(qū)分及從場景中抽取目標;二是根據(jù)Grassman定律及實踐證明,人的視覺系統(tǒng)大致可以分辨35萬種彩色顏色色調(diào)和亮度,卻只能辨別幾十種灰度層次[3]。所以,常常在圖像處理中,對于特定的單一亮度或亮度范圍賦予一種或多種彩色,使人眼更能有效地分辨不同屬性的數(shù)據(jù)。為了顯示數(shù)據(jù)的連續(xù)性、非突變性,常采用偽彩色漸變的方式賦予數(shù)據(jù)多種彩色。

        彩色系統(tǒng)(也稱彩色模型或彩色空間)的用途,是在某些標準下,用通??梢越邮艿姆绞胶喕噬?guī)范。本質(zhì)上,彩色模型是坐標系統(tǒng)和子空間的規(guī)范。在計算機圖形學和數(shù)字圖像處理學中,有兩種重要的原色混合系統(tǒng),即紅、綠、藍(RGB)加色系統(tǒng)和青、品紅、黃(CMY)減色系統(tǒng)。這兩種系統(tǒng)中的顏色互為補色,即青色是紅色的補色,品紅是綠色的補色,黃色是藍色的補色。但遺憾的是,RGB、CMY和其他類似的彩色模型,不能很好地符合人們描述和解釋顏色的方式,它們沒有涉及用組成其顏色的每一原色的百分比給出物體的顏色。而HSI(色調(diào)Hue、飽和度Saturation和強度intensity)模型可在彩色圖像中,從攜帶的彩色信息(色調(diào)和飽和度)里消去強度分量,從而成為開發(fā)基于彩色描述圖像處理方法的理想工具,而且,這種彩色描述對人來說,是自然的、直觀的。文獻[4]中已經(jīng)詳細地描述了從RGB模型到HSV模型的相互變換。計算機圖形圖像處理中還有許多不同定義的彩色系統(tǒng)[3],各種顏色模型之間可以相互轉(zhuǎn)換。因此,本文只在RGB彩色系統(tǒng)下,分析相應彩色空間的漸變算法。

        2 OpenGL中的顏色模型

        OpenGL中,顏色系統(tǒng)所采用的模式為RGB模式。在該模式下,每一顏色分量都是從0~255。為了檢索和存儲的方便[5],還是把這些整數(shù)換算成0.0~1.0之間的浮點數(shù),即i/255,i為該整數(shù)。實際場景中光照的顏色是:環(huán)境光(ambient)、散射光(diffuse)、鏡面光(specular)。光只是顏色方程式的一部分。在現(xiàn)實世界中,物體具有它們自己的顏色,這主要是由材料屬性決定的,包括:材質(zhì)泛光、材質(zhì)漫反射光、材質(zhì)鏡面反射光和材質(zhì)發(fā)射光。所以,在現(xiàn)實世界中,人眼所看到的物體的顏色,是由實際場景光照和材質(zhì)的發(fā)射光、漫反射光等相互作用而成的[6,7]。

        在OpenGL中,圖元的每個頂點將分配一個RGB顏色值,它是根據(jù)環(huán)境、散射和鏡面光乘以材料屬性的環(huán)境、散射和鏡面反射率所產(chǎn)生的純效果決定的。由于各個頂點間使用了漸變著色模式,因此能夠?qū)崿F(xiàn)照明和真實感的視覺。當指定了場景中的光照設置與材料的屬性設置后,最終混合的顏色RGB值也就被計算出來了。

        (1)

        式中,materiala、materiald、materials、lighta、lightd、lights分別表示材質(zhì)和光源的環(huán)境反射光、漫反射光以及鏡面反射光顏色成分;Ia、Id、Is分別表示基于光照模型的環(huán)境反射光、漫反射光以及鏡面反射光的光強;scenea表示全局環(huán)境光強;materiale表示材質(zhì)發(fā)射光成分。

        3 顏色漸變與渲染算法

        用于數(shù)據(jù)場表示的顏色漸變問題,需要考慮的關鍵問題有:一是如何選擇合適的顏色;二是從一種顏色漸變成為另外一種顏色的插值方法[8],設最大高程值所對應的顏色為MAX(經(jīng)過光照和材質(zhì)屬性設置后的RGB強度),最小高程值所對應的顏色為MIN,為此,首先將MAX與MIN在RGB空間分解為紅、綠、藍分量,分別設為max_r、min_r、max_g、min_g、max_b和min_b,這些分量的取值范圍為[1.0, 1.0, 1.0]。設某一高程值的漸變顏色H的紅、綠、藍分量分別為Hr、Hg、Hb。將最大高程值與最小高程值之差歸一化為1,則H處的值為P∈[0,1],可見P為浮點數(shù),其中

        (2)

        (1)線性插值法(Linear interpolation),各個紅綠藍分量的計算公式為:

        (3)

        (2)線性倒插法(Reverse linear interpolation)

        (4)

        其中

        (5)

        (3)余弦插值法(Cosine interpolation)

        (6)

        以線性插值法為例,在OpenGL中的顏色渲染算法步驟:

        Step1:數(shù)據(jù)讀入;

        Step2:查找出最大z值與最小z值,即max_z,min_z;

        Step3:如果max_z==min_z,那么,顏色是一樣的,否則有:

        (7)

        當Hz=min_z,有:glColor4f(min_r,min_g,min_b,1.0f);

        當Hz=max_z,有:glColor4f(max_r,max_g,max_b,1.0f);

        當min_z

        即glColor4f(Hr,Hg,Hb,1.0f)。

        以線性插值法為例,數(shù)據(jù)場顏色渲染流程如圖1所示。

        通過動態(tài)獲取數(shù)據(jù)點的高程值,可以靈活地設置各數(shù)據(jù)點高程值的顏色RGB值,也可以動態(tài)調(diào)整RGB分量,從而得到模型所要表達的內(nèi)容。例如,將高程值大的數(shù)據(jù)點所對應的RGB分量全部調(diào)大,也可以只調(diào)大其RGB中的任意分量;相反,將高程值小的數(shù)據(jù)點所對應的RGB分量全部調(diào)小,也可以只調(diào)小其RGB中的任意分量,從而拉大顏色區(qū)間,使得顏色渲染效果更好。也就解決了如何運用不同的顏色來表達和區(qū)分不同的數(shù)據(jù)源。當然,也可以將RGB模式轉(zhuǎn)換成HIS模式。

        圖1 顏色漸變算法流程圖

        為了驗證上面算法理論的正確性,使用MS Visual C++結合OpenGL進行編程,對3D地物進行顏色渲染。圖2是光源系統(tǒng)和材質(zhì)的動態(tài)設置,其中包括環(huán)境光、漫反射光、光源的位置、光強度、材質(zhì)泛光等的動態(tài)設置,通過圖2的動態(tài)設置,可以動態(tài)地調(diào)整數(shù)據(jù)場的光照渲染。圖3是最大高程數(shù)據(jù)點和最小高程數(shù)據(jù)點的顏色設置,通過動態(tài)獲取RGB值,選擇顏色插值方法,就可以動態(tài)地調(diào)整地物的顏色渲染效果。

        圖4為某地區(qū)地面TIN模型,圖5是該TIN所對應的面模型,根據(jù)高程值的大小,設置離散點材質(zhì)的不同顏色,再通過光照模型的渲染即可。圖5中,黃色表示該地區(qū)高程值較大(圖形經(jīng)過旋轉(zhuǎn))。圖6是一巷道體模型,可以看出,根據(jù)高程值進行了顏色渲染。圖7是某礦區(qū)三維巷道網(wǎng)絡模型,根據(jù)高程值進行了顏色渲染。

        圖2 光源與材質(zhì)顏色設置

        圖3 數(shù)據(jù)點顏色獲取

        圖4 顏色線性插值法下的TIN

        圖5 顏色線性插值法下的TIN面模型

        圖6 顏色線性插值法下的巷道模型

        圖7 顏色線性插值法下的巷道網(wǎng)絡模型

        5 結論

        本文使用MS Visual C++結合OpenGL進行編程,對3D模型進行顏色渲染。結果表明,該方法可以很好地表達數(shù)據(jù)場中的模型,即本文的顏色動態(tài)渲染算法是可行的,為開發(fā)相應的三維建模軟件提供借鑒。

        [1] Liu,Zhong-wei. Color image retrieval using local accumulative histogram[J]. Journal of image and graphics, 1998, 3(7): 533-537.

        [2] 張師帥, 羅軍, 朱茂殊, 等. 三維溫度場計算機可視化系統(tǒng)的研制與開發(fā)[J]. 熱能動力工程, 1999, 14(84): 441-442.

        [3] Huang, J. Image indexing using color correlograms. In: Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition[C]. San Juan:IEEE Computer Society, 1997: 762-768.

        [4] 周建龍, 肖春. 計算機圖形學理論與OpenGL編程實踐[M]. 廣州: 華南理工大學出版社, 2007.

        [5] 王濤, 胡事民, 孫家廣. 基于顏色-空間特征的圖像檢索[J]. 軟件學報, 2002, 13(10): 2031-2036.

        [6] 白建軍, 等. OpenGL三維圖形設計與制作[M]. 北京: 人民郵電出版社, 1999.

        [7] Richard S. Wright, Benjamin Lipchak, 徐波(譯). OpenGL超級寶典[M]. 北京: 人民郵電出版社,2004.

        [8] 李宋, 吳文權, 詹詠. 顏色漸變的算法研究[J]. 上海理工大學學報, 2004, 26(3): 224-228.

        猜你喜歡
        材質(zhì)彩色分量
        彩色的夢
        小主人報(2022年24期)2023-01-24 16:49:29
        彩色的線
        帽子的分量
        一物千斤
        智族GQ(2019年9期)2019-10-28 08:16:21
        有那樣一抹彩色
        學生天地(2019年33期)2019-08-25 08:56:18
        衣服材質(zhì)大揭秘
        彩色的風
        論《哈姆雷特》中良心的分量
        分量
        外套之材質(zhì)對比戰(zhàn)
        Coco薇(2015年10期)2015-10-19 12:17:50
        久久久久亚洲精品无码网址| 一级a免费高清免在线| 免费看黄视频亚洲网站| 国产欧美日韩精品丝袜高跟鞋| 国产在线观看免费观看| 毛片在线啊啊| 色婷婷在线一区二区三区| 久久婷婷五月综合色丁香| 97精品依人久久久大香线蕉97| 午夜福利不卡无码视频| 亚洲av天堂在线免费观看| 亚洲精品一区久久久久一品av| 国产成人乱色伦区| 亚洲av成人一区二区三区网址| 老熟妇嗷嗷叫91九色| 天堂在线资源中文在线8| 在线播放无码高潮的视频| 国产一线视频在线观看高清| 成人高清在线播放视频| 国内最真实的xxxx人伦| 粗大的内捧猛烈进出在线视频| 免费国人成人自拍视频| 在线播放草猛免费视频| 国产女人高潮叫床免费视频| 一本色道久久综合亚洲精品小说| 日本激情久久精品人妻热| 亚洲中文无码av永久| 风韵饥渴少妇在线观看| 国产午夜激无码AV毛片不卡| 区一区二区三免费观看视频| 小辣椒福利视频导航| 四虎4545www国产精品| 日韩一二三四区免费观看| 国产免费三级av在线| 国产福利酱国产一区二区| 动漫av纯肉无码av在线播放| 久久亚洲中文字幕伊人久久大 | 免费1级做爰片1000部视频| 亚洲国产精品久久久天堂不卡海量| 综合久久加勒比天然素人| 国产精品极品美女自在线观看免费 |