專利名稱:自適應濃淡的方法和設備的制作方法
技術領域:
本發(fā)明的方法和設備涉及計算機生成圖象的產生的領域。具體地說,本發(fā)明的方法和設備涉及計算機生成圖象的濃淡(Shading)。
一般而言,在產生數字圖象的計算機圖形系統中,將物體的表面表示為平面多邊形的網格??捎靡阎夹g對這些多邊形作快速變換和復制。這些技術假設輸入為其頂點屬性為位置、法線和顏色(如
圖1a所示)的簡單的三角形。例如在物體坐標空間定義頂點位置。頂點法線為描述每個頂點處表面方向的單位矢量。頂點顏色說明該物體本身的顏色。該頂點顏色屬性允許該物體顏色在三角形內變化。
為在計算機圖形顯示器上產生物體的逼真的圖象,不僅要產生物體的形狀,而且涉及物體可見表面的陰影濃淡,考慮到光源、表面特征及表面與光源的位置和方向。三種反射函數的組合可用于確定圖象的濃淡。這三種反射函數是背景反射,漫反射和鏡面反射。背景反射是物體從隨機光源汲收并放出的光。與光的方向不相干。背景函數簡單地比例增減該物體顏色。例如,對紅、綠和藍的背景加權為Kar,Kag,Kab,則可將背景反射函數描述為lar=Kar*Crlag=Kag*Cglab=Kab*Cb其中,lar,lag,lab分別為紅、綠和藍顏色單元的背景反射,Kar,Kag,Kab為顏色單元紅、綠和藍的背景加權,而Cr,Cg,Cb為物體紅、綠和藍單元的客體色彩或色彩強度。背景加權的范圍是0≤Kar≤1,0≤Kag≤1,0≤Kab≤1應注意到,背景加權Kar、Kag、Kab和以下的漫反散加權Kdr、Kdg、Kdb實際上為兩個項的乘積。第一個項表示該分量的光強度。第二個頂表示該物體表面反射該分量的能力。由于都與背景幾何形狀無關,因此將兩個項組合為加權。如背景包括多個光源,則對每個光源就有獨立的加權。
黯淡、無光澤表面呈現漫反散,所有方向上相等的散射光,使得該表面顯得從所有的視角來看具有相同的亮度。對這種表面,Lamber的余弦定律說明反射光量與方向L和點光源之間角度α的余弦相關,而該表面的法線矢量N如圖1b所示。漫反射可用下面的等式給出ldr=Cos(α)*Kdr*Crldg=Cos(α)*Kdg*Cgldb=Cos(α)*Kdb*Cb其中,Cos(α)等于N·L(因為漫反射必須為正,Cos(α)的計算要求Cos(α)=max(Cos(α),0)),而ldr,ldg,ldb分別為紅、綠、藍單元的漫反射數值,Kdr,Kdg,Kdb為光源的紅、綠、藍單元的漫反射系數(為0到1間的常數,隨表面材料而變),而Cr、Cg、Cb為表面紅、綠、藍單元的顏色。
鏡面反射是發(fā)光表面上觀察到的強光。由馮必同(Bui Tuong Phong)研制出的模型將鏡面反射轉變?yōu)檠埸c矢量V和與最大反射對齊的矢量R之間角度的余弦的函數,如圖1b所示(參見Phong,B.T的Salt Lake City、Utah大學計算機科學系博士論文“計算機生成圖象的亮度”,政府征訂號AD-A0008-766(1973年7月))。關于背景、漫反射和鏡面反射的進一步信息也可參見Foley和Van Dam所著《交互式計算機圖形學基礎》(Addison Wesley 1983),PP.575-580以及Cook和Torrance所著《計算機圖形學的反射模型》,刊于“計算機圖形學”第15卷,第3號,1981年8月。
反射量是相加的,這樣,如果三個獨立光源發(fā)光到一表面,可通過對每個光源確定反射量并將每個光源所確定的反射量相加來計算該表面上的反射量。在制定反射類型和反射量時,應認識到存在不同類型的光源。一種情形出現在距離光源無窮遠時。該光源的說明可簡化為如下的簡單的光矢量L=Lx,Ly,Lz其中,光矢量的大小等于|L|=sqrt(Lx2+Ly2+Lz2)而對無窮遠光源,|L|的值等于1。
另一情形發(fā)生在距離光源是有限的,但發(fā)光模式是各向同性的。因此該光在所有方向上發(fā)光強度相同。這時光源的說明簡化為光位置Q=Qx、Qy、Qz光矢量,即相對于頂點位置Px、Py、Pz的光位置為
L=Qx-Px,Qy-Py,Qx-Pz其中,大小為|L|=sqrt((Qx-Px)2+(Qy-Py)2+(Qz-Pz)2)由于該大小不為1,而亮度方程需要單位矢量,因此將光矢量歸一化L=(Qx-Px)/|L|,(Qy-Py)/|L|,(Qz-Pz)/|L|最后一種情形發(fā)生在發(fā)光模式不是各向同性時。由于發(fā)光模式不是各向同性的,光源的說明需要表明發(fā)光模式函數的模式矢量K=Kx、Ky、Kz該模式矢量用以說明光強最大的方向。照射到該物體的光隨著矢量L和模式矢量K之間的角度的增加而減少。光矢量在包括模式函數之前,表述如下L=(Qx-Px)/|L|,(Qy-Py)/|L|,(Qz-Pz)/|L|其中大小為|L|=sqrt((Qx-Px)2+(Qy-Py)2+(Qz-Pz)2)將強度調整為光矢量和模式矢量之間角度的函數的模式函數常常為
Cos(χ)=Kx*Lx+Ky*Ly+Kz*Lz光矢量吸收該數值而變?yōu)長=Cos(χ)*Lx,Cos(χ)*Ly,Cos(χ)*Lz,計算機圖形系統通常將圖象曲面表示為平面多邊形的網格,這些多邊形加有濃淡以恢復光滑外觀。系統通過改變多邊形上的強度來恢復平滑外觀。盡管已有一些用于多邊形逼真的濃淡技術,但因對每個象素需要大量的計算故實時系統并未使用這些技術。可執(zhí)行的最簡單的濃淡計算是漫反射計算,即按照漫射光的Lambert定律。然而,該計算假設從所有視角看的反射具有相同亮度。由于簡單的漫反射公式不能以表面的物理屬性,例如粗糙系數,加到反射等式上,則該表達式只是近似于該反射。例如,該表達式不能說明當光射到金屬表面時波長如何以入射角偏移。該波長偏移使顏色發(fā)生變化。此外,該簡單的漫射等式并未考慮光如何從表面散射到表面。
又,漫反射的最簡單形式假定反射在整個面或多邊形上是不變的。盡管這是簡單的計算,但在多邊形之間邊界上的強度也常常是不連續(xù)的。一種實時執(zhí)行圖象濃淡的較好技術稱為Gouraud濃淡。使用Gouraud濃淡技術,每個點的強度可通過在該多邊形各頂點上強度的線性內插加以計算。這些強度用在各頂點給出法向的漫反射的反射等式確定的。關于Gouraud濃淡的進一步信息,參見Gouraud.H所著“曲表面的連續(xù)濃淡”,IEEE計算機匯刊第20卷,第6號,PP623-628(1971年6月)。然而,該技術僅考慮了漫反射,這樣,用該技術濃淡后的表面顯得黯淡。此外,由于不連續(xù)的強度變化,該圖象在多邊形邊界上反射馬赫帶。
馮氏濃淡(Phong Shading)技術照亮黯淡表面并減少由Gouraud濃淡技術產生的馬赫帶,但由于產生圖象需要大量計算機時間及費用,通常并沒有用在實時系統中。使用該技術,用根據在各頂點說明的真實平面法線線性內插的近似平面法線來確定每個點的強度。馮氏濃淡利用等式N(x.y)=Ax+Bx+C,其中A、B、C為選擇用于內插多邊形法線的頂點。馮氏濃淡對每個象素需要7次加法、6次乘法、1次除法和1次平方根運算。該運算很費錢和時間,尤其是由于它包括了平方根計算。關于馮氏濃淡技術的進一步信息,參見Salt Lake City的Utah大學計算如科學系博士論文“計算機生成圖象的亮度”(政府征訂號AD-A0008-786)。
馮氏濃淡計算由Tom Duff加以簡化,如Tom Duff在“ACM計算機圖形學”第13卷第2號PP.270-275(1979)上發(fā)表的“光柵顯示的多面體物體的平滑濃淡再現”中所述。Duff通過組合內插和反射來簡化馮氏濃淡l diffuse(x,y)= (L)/(|L|) · (Ax+By+C)/(|L| |Ax+By+C|)= (L·A+L·By+C)/(|L||L·Ax+L·By+L·C|)= (ax + by + c)/(sqrt(dx2+ exy + fy2+ gx + ny + 2))其中,a= (L·A)/(|L|)b= (L·B)/(|L|)
c= (L·C)/(|L|)d=A·Ae=2A·Bf=B·Bg=2A·Cn=2B·Ci=C·C這樣可對該實現評估,對連續(xù)的X和Y值,對每個象素只需3次加法、1次除法和1次平方根。雖然這是對馮氏公式的一種改進,但除法和平方根計算還是使得該技術對實時實現來說太耗時、太昂貴。
在馮氏濃淡的另一種實現中,計算反射方程的近似值,從而節(jié)約精確計算反射方程所需的時間和費用。在Weimer發(fā)表在“計算機圖形學”第20卷、第4號(1986)PP.103-105的“快速馮氏濃淡技術”的文章中,將二階泰勒級數近似用來計算該反射。為簡化該近似,移動該多邊形使坐標原點(0,0)位于該多邊形的中心。使用該技術,計算象素的強度只要對各象素上進行兩次加法。
然而,在以上所有技術中,使用相同函數來判定圖象中所有多邊形的反射。如果該圖象中有些多邊形的反射。如果該圖象中有些多邊形的反射在所要求的質量水平上只能用復雜的、費時的過程來判定,則用相同過程來處理所有多邊形。這樣,盡管可用較簡單較快過程判定相當多數的多邊形的反射,但為恢復圖象質量,使用復雜費時的過程來獲得該圖象所要求質量。
本發(fā)明的目的是提供產生濃淡圖象的實時技術。
本發(fā)明的目的是提供一種用于圖象濃淡的自適應方法,根據表面的曲率、該表面上光矢量變化以及該表面觀測矢量變化決定圖象濃淡的技術。
在本發(fā)明的方法和設備中,使用自適應濃淡方法實時地產生濃淡圖象。首先對多邊形各個頂點計算色彩或強度。然后執(zhí)行一系列測試判定被用于對兩頂點間的多邊形內插色彩或強度的該階方程。使用該技術,略有或沒有曲率的多邊形和無限光源(最簡單的濃淡形式)可使用極快的低階方程來對該多邊形內插。具有高曲率的多邊形和(或)位置光源將使用(如必要)需要額外計算時間但產生理想濃淡結果的較高階方程。
通過以下對本發(fā)明的描述,本發(fā)明的目的特征和優(yōu)點會十分顯而易見,附圖中,圖1a和1b說明先有的濃淡技術所述術語及變量。
圖2說明鏡面濃淡計算所用幾何圖形。
圖3是本發(fā)明系統中所用說明性的計算機系統。
圖4a、4b和4c說明需要較高階方程產生高質量濃淡圖象的表面的光照。
圖5是說明本發(fā)明最佳實施例的流程圖。
圖6a和6b是說明本發(fā)明的另一最佳實施例的流程圖。
圖7a-7d說明本發(fā)明最佳實施例中所用術語和變量。
圖8a、8b、8c進一步說明本發(fā)明最佳實施例中所用術語及變量。
圖9是將按本發(fā)明的系統產生的圖象質量與按馮氏濃淡方法產生的圖象質量進行比較的表格。
圖10a-10e說明在本發(fā)明系統中使用二階和三階方程時所用術語及變量。
圖11a-11d說明在本發(fā)明系統中使用平面方程時所用術語及變量。
大致通過算法和計算機存儲器內數據位上操作的符號表示給出如下的詳細說明。這些算法說明和表示是為數據處理領域技術人員所用的手段,以便有效地將他們工作的實質傳送給該領域其它人。
這里的算法通常被認為是可導出理想結果的前后一致的步驟序列。這些步驟需要物理量的物理操縱。通常,雖不是必需的,這些量采取可被存儲、傳送、組合、比較和其它操縱的電或磁信號的形式。這已屢屢被證明是方便的,主要是公共用法的原因,即將這些信號視為位、數值,單元、符號、字符、項、數字等等。然而應該記住,所有這些以及類似的項和適當的物理量關聯,并且是用在這些量上非常方便的標記。
所作操縱常認為是諸如加法或比較,它們通常和由操作者所作智力運算相聯系。在大多數情形下,在本文描述的形成本發(fā)明一部分的操作中,沒有這些能力的操作人員是必須的、即合乎要求的,而這些運算為機器運算。執(zhí)行本發(fā)明操作的有用的機器包括通用數字計算機或其它類似裝置。在任何情形下,應牢記操作計算機的操作方法和計算機本身方法之間的區(qū)別。本發(fā)明涉及用處理的電子或其它(機械、化學的)物理信號來操作計算機以產生其它合乎要求的物理信號的方法步驟。
本發(fā)明也涉及執(zhí)行這些操作的裝置。該裝置可為所要求目的來專門構造或可包含由存儲在計算機中的計算機程序有選擇啟動或重構的通用計算機。本文給出的算法并不限定于具體計算機或其它裝置。具體而言,各種通用機器可為按本文所寫程序所用,否則構造更專門的裝置來執(zhí)行所要求方法步驟則更為便利。對種種這些機器所要求結構將在以下說明中給出。
圖3示出典型的按照本發(fā)明的用于多邊形自適應圖象濃淡的基于計算機的系統。示出的計算機101包含三個主要部件。其中第一個部件是用于以適當構造的形式與計算機101其它部件往返傳輸信息的輸入/輸出(I/O)電路102。示出的計算機101的一部分為中央處理器(CPU)103和存儲器104。這后兩個單元通??稍诖蠖鄶低ㄓ糜嬎銠C以及幾乎所有專用計算機中找到。事實上,計算機101中所含好幾個單元是用于代表這種廣泛種類的數字處理器的。起到計算機101作用的適當的數據處理器的特定例子包括由California,Mountain View,Sun Microsystems,Ine制造的機器。其它具有類似功能的計算機當然也可直接采用來執(zhí)行以下所述功能。
圖3也示出了輸入裝置105,在典型實施例中示出為一個鍵盤。然而應該理解,該輸入裝置實際上可以是讀卡機、磁帶或紙帶機或其它從頭到尾的設備(當然包括另一計算機)。大容量存儲裝置106耦合到I/O電路102并對計算機101提供附加的存儲能力。該大容量存儲器可包含其它程序等并可采用磁帶機或紙帶機或其它眾所周知裝置的形式。應該理解大容量存儲器106中所保留的數據在適當場合可以標準方式并入計算機101作為存儲器104的一部分。
此外,示出的顯示監(jiān)視器107用于顯示報文或與用戶的其它通信以及圖形圖象,例如,按照本發(fā)明的的過程再現的濃淡圖象。顯示監(jiān)示器包含稱為象素的顯示單元的矩陣。這些象素以特定圖案和預定強度被激活或接通以在顯示器上產生圖形圖象。如該顯示器為彩色監(jiān)視器,對每個基色單元例如紅、綠和藍單元,以特定圖案和預定強度激活這些象素。顯示圖象的觀看者視覺上將每個象素上紅、綠、藍單元組合而辨識為彩色圖象。這些顯示監(jiān)示器可采用幾種已知的各CRT顯示器中任何一種形式。將圖形圖象數據提供給幀緩沖器108。I/O電路102從幀緩沖器108中讀出圖形數據,并以圖形圖象數據規(guī)定的位置和強度激活顯示監(jiān)示器107上相應象素。光標控制109用于選擇命令狀態(tài)、編輯輸入數據,并且一般提供將信息輸入到該系統的更方便的手段。
在本發(fā)明中的判定多邊形表面陰影量的步驟適應于多邊形曲率、相應于多邊形表面的光源位置以及眼點位置(即,相對于多邊形表面的觀看者眼睛的位置)。多邊形曲率越大,光源離多邊形越近,眼點離多邊形越近,多邊形表面反射偏差越大,則精確判定該多邊形表面濃淡的量所需的步驟越多。
該觀察用于提供重現高質量圖象的過程而不必統一使用高階濃淡方程產生高質量圖象所需的計算開銷和費用。執(zhí)行一系列測試判定曲率量、光源位置和眼點對多邊形的位置。如果曲率量為最小、到光源和眼點的距離大,則使用簡單快速零階方程計算多邊形的反射。如法向矢量變動小,指出沒有什么表面曲率,而且光矢量變化和眼矢量變化小,則多邊形上反射量不變是可能的。如果反射量變化小,例如,如果反射變化小于1/256,該變化對觀看者幾乎不可察覺,而當反射變化小于1/64,變化仍是輕微的。這樣用不變的色彩值來近似色彩變化是可能的。
當多邊形上反射量變化增加,例如較高階的方程來計算多邊形上的反射。這產生了不能用零階方程實現的更精確的反射表達式。隨著曲率量變大和(或)光源位置變近使從多邊形頂點光源的方向矢量從頂點到頂點發(fā)生變化,則使用較高階方程。較高階方程雖然計算強度大但要重現高質量圖象就必須使用,因為多邊形表面上反射量變化對觀看者明顯可見,所以多邊形上濃淡量不是恒定不變的。
圖4a、4b和4c示出用零階、一階表達式判定反射不合適的三種情形。參考圖4a,假定三角形的表面曲率是大的。因此,頂點法向矢量N變化而頂點法矢量到頂點光矢量L投影的漫反射也發(fā)生變化。這樣,最好選擇方程的階來保留該反射變化。在該實例中,一階方程并不合適,所以系統應選擇下一較高階(馮氏)方程來模擬反射。應注意到,馮氏方程嚴格地說不是二階方程。該技術涉及歸一化,它對每個象素需一次平方根和除法。然而,有文獻(參見Wemer“快速馮氏濃淡”,發(fā)表于“計算機圖形學”第20卷第4號(1986),PP.103-105)已指出二階方程近似于該結果。因此,除了指出之處,認為馮氏方程為二階方程。
假定圖4b所示三角形無曲率,則頂點法向矢量相同,但光源位置正好在三角形表面之上。因此,頂點光矢量變化而頂點法矢量到頂點光矢量投影的漫反散發(fā)生變化。然后應選擇可保留該變化的方程階數。
參考圖4c,假定三角形無曲率,但眼點位置正好在三角形表面之上。這樣頂點眼點矢量變化,涉及頂點法向矢量到頂點眼點矢量的投影的鏡面反射變化。本發(fā)明的系統應檢測這種情形并選擇保留該反射變化的方程階數。
這樣,系統將具較低質量圖象的快速、低成本計算的優(yōu)點和具有較高質量圖象的慢速、高成本計算進行均衡??焖俚统杀居嬎銠C最好用于判定多邊形上的反射量,然而,如果多邊形曲率、光源位置或眼點位置指出該表面上顯著的反射變化,則使用較高階方程來再現高質量圖象。這樣只有在必要時才執(zhí)行較慢的、費用高的高階計算。具有小曲率、距離光源遠、距離眼點遠的多邊形使用低階方程快速而低廉地進行計算。業(yè)已發(fā)現,構成圖象的多邊形的實質性部分可用零階或一階方程來再現。使用本發(fā)明自適應濃淡系統產生再現圖象比使用圖象質量略有或沒有可分辨的下降的較高階方程重現圖象要快20~50%。
在最佳實施例中,使用三種類型的方程來計算多邊形的反射量零階、一階和二階。零階方程對整個多邊形表面計算恒定的數值。最好是,零階方程按照Lambert定律并按以下式子計算漫反射加權Cos(α)=N·L
其中N為表面法線而L是光矢量。該法線可以是頂點法線或表面上任一點上的法線。該法線最好是頂點法線的平均法線。
一階等式最好按照Gouraud濃淡技術計算。當多邊形表面反射變化小時,Gouraud技術產生質量足夠的圖象。當多邊形上反射變化顯著時,指出需使用二階方程,最好使用馮氏濃淡技術。
參考圖5、6a和6b說明本發(fā)明的過程。圖5示出對本發(fā)明第一實施例的過程流圖,而圖6a和6b示出本發(fā)明其它實施例的過程流圖。相對于使用掃描線技術的圖象再現來說明最佳實施例,然而,對本領域技術人員明顯的是,本發(fā)明不但可應用于掃描線技術,而且可用于其它技術,例如平面方程,在多邊形各頂點或多邊形其它邊界條件下內插顏色。
使用掃描線技術,判定顯示單元與各掃描線的多邊形交點,用諸如上述零階、一階或二階方程的已知的濃淡方程,從頂點屬性(色彩、位置和法線)導出這些顯示單元中每一個的顏色。為內插顯示單元多邊形交點的頂點屬性(或其它邊界條件)判定差分變量。該差分變量說明多邊形邊界和多邊形邊界間掃描線上頂點屬性(深度、法線、色彩)的增量。在大多數情形下,如下所說明判定法向差分變量(以及色彩和位置)。然而,如果本文所述測試標準指出光矢量和(或)眼矢量變化了,則以判定法向差分變量相同方式判定其差分變量,也在該多邊形內插屬性。
參考7a和7b,先按下式判定位置、法向、和色彩的差分變量dPx(1)=Px(2)-Px(1) dPx(2)=Px(3)-Px(2) dPx(3)=Px(1)-Px(3)dPy(1)=Py(2)-Py(1) dPy(2)=Py(3)-Py(2) dPy(3)=Py(1)-Py(3)dPz(1)=Pz(2)-Pz(1) dPz(2)=Pz(3)-Pz(2) dPz(3)=Pz(1)-Pz(3)
dNx(1)=Nx(2)-Nx(1) dNx(2)=Nx(3)-Nx(2) dNx(3)=Nx(1)-Nx(3)dNy(1)=Ny(2)-Ny(1) dNy(2)=Ny(3)-Ny(2) dNy(3)=Ny(1)-Ny(3)dNz(1)=Nz(2)-Nz(1) dNz(2)=Nz(3)-Nz(2) dNz(3)=Nz(1)-Nz(3)dCr(1)=Cr(2)-Cr(1) dCdr(2)=Cr(3)-Cr(2) dCr(3)=Cr(1)-Cr(3)dCg(1)=Cg(2)-Cg(1) dCg(2)=Cg(3)-Cg(2) dCg(3)=Cg(1)-Cg(3)dCb(1)=Cb(2)-Cb(1) dCb(2)=Cb(3)-Cb(2) dCb(3)=Cb(1)-Cb(3)其中,dPx(1),dPy(1),dPz(1)表示第一頂點和第二頂點之間邊的位置差分變量;dPx(2),dPy(2),dPz(2)表示第二頂點和第三頂點之間邊的位置差分變量;dPx(3),dPy(3),dPz(3)表示第三頂點和第一頂點之間邊的位置差分變量。變量dNx(1),dNy(1),dNz(1)表示第一頂點和第二頂點的法線的法向差分變量;dNx(2),dNy(2),dNz(2)為第二頂點和第三頂點法線的法向差分變量;而dNx(3),dNy(3),dNz(3)是第三頂點和第一頂點法線的法向差分變量。變量dCr(1),dCg(1),dCb(1)表示第一頂點與第二頂點連線的色彩差分變量;變量dCr(2),dCg(2),dCb(2)表示第二頂點與第三頂點連線的色彩差分變量;而dCr(3),dCg(3)和dCb(3)表示第三頂點與第一頂點間連線的色彩差分變量。
根據,位置差分變量(dPx對dPy)的大小可確定主軸。該主軸指示多邊形重現方向。在本說明例中,第一邊和第二邊的主軸為y軸,第三邊的主軸為x軸。次軸的位置差分變量由主軸差分變量所劃分,導出次軸增量。然后根據掃描線再現技術用一個單位的增量遍歷三角形各邊。然后分類各頂點以判定每條掃描線的左邊和右邊。
按照掃描線技術的邏輯,將掃描線方程中描述頂點間的邊的變量初始化為頂占點屬性,而將從差分變量導出的遞增變量用于遍歷該多邊形。位置差分變量在由主軸劃分之后,導出歸一化的位置增量,法線差分變量由主軸劃分以后導出歸一化法線增量,以及色彩差分變量由主軸劃分以后導出歸一化色彩增量
然后利用增量值,使用邊內插邏輯沿三角形各邊內插頂點屬性Px(1):=Px(1)+dPx(1) Px(2):=Px(2)+dPx(2) Px(3):=Px(3)+1Py(1):=Px(1)+1 Py(2):=Py(2)+1 Py(3):=Py(3)+dPy(3)Pz(1):=Pz(1)+dPz(1) Pz(2):=Pz(2)+dPz(2) Pz(3):=Pz(3)+dPz(3)Nx(1):=Nx(1)+dNx(1) Nx(2):=Nx(2)+dNx(2) Nx(3):=Nx(3)+dNx(3)Ny(1):=Ny(1)+dNy(1) Ny(2):=Ny(2)+dNy(2) Ny(3):=Ny(3)+dNy(3)Nz(1):=Nz(1)+dNz(1) Nz(2):=Nz(2)+dNz(2) Nz(3):=Nz(3)+dNz(3)
Cr(1):=Cr(1)+dCr(1) Cr(2):=Cr(2)+dCr(2) Cr(3):=Cr(3)+dCr(3)Cg(1):=Cg(1)+dCg(1) Cg(2):=Cg(2)+dCg(2) Cg(3):=Cg(3)+dCg(3)Cb(1):=Cb(1)+dCb(1) Cb(2):=Cb(2)+dCb(2) Cb(3):=Cb(3)+dCb(3)為遍歷該多邊形,內插該頂點屬性以在掃描線(見圖7C)的左側和右側處產生數值。為完成該掃描線,首先確定掃描線的差分變量。圖7d的掃描線的差分變量為
然后將變量與掃描線寬度即dPx(y)相除,對變量歸一化,對掃描線產生一致的遞增變量,(最好與光柵的一致的增量相匹配)
使用該信息,對三角形內插頂點各屬性以完成三角形
反射表達式的一階的解簡化了再現處理。和較高階的解不同,一階的解無須判定法矢量的差分方程。而是代之以對頂點(1、2、3)判定漫反射加權COS(α1)=Lx(1)*Nx(1)+Ly(1)*Ny(1)+Lz(1)*Nz(1)COS(α2)=Lx(2)*Nx(2)+Ly(2)*Ny(2)+Lz(2)*Nz(2)COS(α3)=Lx(3)*Nx(3)+Ly(3)*Ny(3)+Lz(3)*Nz(3)漫反射加權汲收到頂點色彩的各屬性中。
Cr(1)=(Kar+Kdr*cos(α1))*Cr(1)Cg(1)=(Kag+Kdg*cos(α1))*Cg(1)Cb(1)=(Kab+Kdb*cos(α1))*Cb(1)Cr(2)=(Kar+Kdr*cos(α2))*Cr(2)Cg(2)=(Kag+Kdg*cos(α2))*Cg(2)Cb(2)=(Kab+Kdb*cos(α2))*Cb(2)Cr(3)=(Kar+Kdr*cos(α3))*Cr(3)Cg(3)=(Kag+Kdg*cos(α3))*Cg(3)Cb(3)=(Kab+Kdb*cos(α3))*Cb(3)應該注意到,以上表達式描述了一個光源時的漫反射。如有多個光源,由于作用是累加的,解就是將漫反射相加。
在一階的解中,位置差分變量和色彩差分變量如上所說明進行判定。而無需判定法線差分變量。頂點色彩構成漫射加權值。然而,該解帶來的問題是,漫射加權不能完全反映。二階解通過使用法線差分變量對上述問題進行糾正。如上所述,頂點的法矢量首先沿多邊形邊內插,然后對其大小進行歸一化。然后對左和右多邊形邊之間的多邊形的掃描線遞增法矢量,并對每個顯示單元歸一化該法矢量。
法矢量用于計算每個顯示單元的漫射加權cos(α(x,y))=Lx(x,y)*Nx(x,y)+Ly(x,y)*Ny(x,y)+Lz(x,y)*Nz(x,y)而漫反射加權并入色彩數值Cr(x,y)=(Kar+Kdr*cos(α(x,y)))*Cr(x,y)Cg(x,y)=(Kag+Kdg*cos(α(x,y)))*Cg(x,y)Cb(x,y)=(Kab+Kdb*cos(α(x,y)))*Cb(x,y)以上公式假設光矢量L(x,y)在多邊形內不變。如果實際上該光矢量發(fā)生變化,則必須對光矢量和法矢量內插和歸一化。該額外的內插和歸一化是費時而昂貴的。本發(fā)明的系統在三個方面簡化了反射計算。首先,本發(fā)明的系統判定何時施加零階、一階和二階的解使得昂貴的高階的解只用于當法矢量變化、光矢量變化或眼點矢量變化實際需要高階解時。第二,本發(fā)明的系統可選擇地通過判定多邊形中哪一個矢量顯著變化來檢測哪一特定矢量值需要內插從而避免三矢量數值的費時內插,還包括無需內插的情形。此外,本發(fā)明的系統可有選擇地替代普通差分方程對彩色值內插。該選擇避免更昂貴的傳統解法,該解法要對三個磁場內插和歸一化。
參考圖5,說明本發(fā)明的過程。在框200判定該表面的曲率。這可根據多邊表每個頂點的法線、從法線確定的曲率量以及頂點對之間曲率量比較判定該多邊形表面曲率是否急劇(severe)來判定。最好使用以下方程(參考圖8a)cos(φ)=min(cosφ(1)),cos(φ(2),cos(φ(3)))其中cos(φ(1))=Nx(1)*Nx(2)+Ny(1)*Ny(2)+Nz(1)*Nz(2)cos(φ(2))=Nx(2)*Nx(3)+Ny(2)*Ny(3)+Nz(2)*Nz(3)cos(φ(3))=Nx(3)*Nx(1)+Ny(3)*Ny(1)+Nz(3)*Nz(1)cos(φ)值測量頂點法矢量間最大變動。它預測多邊形的最大曲率。在框205,如果cos(φ)的值指出曲率陡峭,則在框210執(zhí)行二階濃淡方程,否則保存cos(φ)為以后過程使用。
將預定閾值用來判定指出陡峭曲率的cos(φ)的數值。該閾值最好經驗決定。該閾值對應于只能用二階(或更高階)方程產生的高質量圖象的最小曲率。該質量標準和應用相關。例如,如果cos(α)大約為1,指出L和N是平行的,而當該標準保存彩色項的8位精度時,則選擇零階、一階和二階方程的閾值為1.000<cos(φ)<0.996,用0階0.996<cos(φ)<0.992,用1階0.992<cos(φ)<0 用2階最好可由用戶修改該閾值,以使該過程適合于各應用場合和產生的每個圖象。典型地講,如果cos(φ)近似為1的值,則多邊形曲率最小而該過程的流程進行到框220。如曲率陡峭,并指出快速、低階的濃淡方程不能提供圖象要求的質量,則使用較精確、但費時而且昂貴的高階濃淡處理。當然,如果用戶要求圖象快速產生而不關心質量,則可將閾值置較低數值以使用零階方程產生圖象多數多邊形。例如,如標準保留色彩項為4位的精度,選擇零階、一階和二階方程的閾值為1.000<cos(φ)<0.938,用0階0.938<cos(φ)<0.879,用1階0.879<cos(φ)<0 用2階同樣地,如果用戶要求精確濃淡圖象,可將閾值置為接近于1數值的值使得大部分多邊形是用較高階濃淡方程重現的。如果曲率不陡峭,框220判定光源的相對于各頂點位置的變化。
光源越接近多邊形,相對于一頂點的光的方向變化越大。對無限光源,即位于無窮遠的光源而言,光源方向對所有頂點是相同的。一個位置光源,即有限距離的光源,如圖8b所示,確定各頂點間的光源位置變化為cos(Ψ)=min(cosΨ(1)),cos(Ψ(2)),cos(Ψ(3)))其中cos(Ψ(1))=Lx(1)*Lx(2)+Ly(1)*Ly(2)+Lz(1)*Lz(2)cos(Ψ(2))=Lx(2)*Lx(3)+Ly(2)*Ly(3)+Lz(2)*Lz(3)cos(Ψ(3))=Lx(3)*Lx(1)+Ly(3)*Ly(1)+Lz(3)*Lz(1)其中Lx、Ly、Lz表示光源相對于頂點的位置。
cos(Ψ)值是頂點光矢量之間變化的量度。如果光源類型為無窮遠光源,該cos(Ψ)值定義為值1。如果在框225發(fā)現變化陡峭,則實施二階濃淡方程(框230)。
如果反射方程包括鏡面反射(框240),則在框250計算頂點的眼點矢量(見圖8C),即相對于頂點位置的眼點位置cos(η)=min(cosη(1)),cos(η(2)),cos(η(3)))其中cos(η(1))=Vx(1)*Vx(2)+Vy(1)*Vy(2)+Vz(1)*Vz(2)cos(η(2))=Vx(2)*Vx(3)+Vy(3)+Vz(2)*Vz(3)cos(η(3))=Vx(3)*Vx(1)+Vy(3)*Vy(1)+Vz(3)*Vz(1)鏡面濃淡包括表面上的強光量。強光直接對應于相對于表面的光源位置和相對于表面光源的眼睛位置。如果反射方程不包括鏡面反射,在框245,設置cos(η)為1,指出眼點矢量無變化。
然后在框260確定最大強度變化,該強度變化為法向矢量變化、光矢量變化、眼點矢量變化的函數。例如,如下函數選擇三個余弦值中的最小值,從而選出最大角度變化cos(φΨη)=min(a(φ)*cos(φ),a(Ψ)*cos(Ψ),a(η)*cos(η))加權a(φ)、a(Ψ)、a(η)反映三個余弦值如何影響整個反射方程。例如,cos(η)值的小的變化可轉換為到達眼睛的反射強度的大的變化。因此這些加權可用于“取平”(even out)這些數值以對最大變化作為精確判定。
在框270和280進行測試以判定是否用一階或二階濃淡方程通過將最大強度變化與閾值比值來計算多邊形的濃淡。一階或二階閾值可經驗確定,或由用戶按照所要求圖象質量和產生圖象的時間量對每一種應用加以調整。最好是第一閾值在0.996和0.938范圍內,而第二閾值在0.992到0.879范圍內。例如,對最大變化,cos(φγη)1<cos(φγη)<ε1,使用0階ε1<cos(φγη)<ε2,使用1階ε2<cos(φγη)<0,使用2階在框270,將最大強度變化與第一閾值ε1相比較。如果最大強度變化大于第一閾值,則使用零階方程(框310)。如果變化小于或等于第一閾值,在框280將最大變化與第一閾值ε2相比較。如果最大強度變化小于第二閾值,則使用二階方程產生濃淡。如果不小于第二閾值,則在框290使用一階方程進行濃淡處理。一旦確定所用反射方程的階數,則沿多邊形邊緣確定彩色值并使用正向差分再現該多邊形以重現與多邊形相交的每一掃描線上的象素(顯示單元)(框320)。
參考圖6a和6b說明本發(fā)明的第二實施例。圖6a描述也包括漫反射的實施例。圖6b描述也包括鏡面反射的實施例。此外,如下結合圖6a所描述的實施例可與圖5所示出的實施例相結合以提供在應用時利用圖6a所述實施例的速度和圖5所述實施例的高精度的綜合系統。同樣地,圖6a所述實施例也可與圖5的實施例相結合。
參考圖6a,在框420,確定該光源相對于每個頂點的位置。如果該光源是一位置光源,即距離多邊表頂點有限距離的光源,則光源對每個頂點的位置會變化。如果該光源是無窮遠光源,則光源對每個頂點的位置是相同的。
在框430,確定每個頂點的光矢量和面法線矢量的點積,在框440,計算各頂點每個點積間的差值。在框450,判定最大值cosdiff(α)為點積間最大差值max(abs(α1)-cos(α2)),abs(cos(α2)-cos(α3)),abs(cos(α3)-cos(α1)))該值用于判定是否使用零階、一階、二階或更高階方程來對多邊形計算濃淡。使用第一閾值τD1來確定是否應該使用零階濃淡方程。通過使用零階濃淡方程,可節(jié)省時間和費用,并可產生所要求質量的重現圖象。第二閾值τD2用于判定是否應該使用二階濃淡方程。
閾值τD1和τD2可據經驗或根據應用來加以確定,例如,如用戶希望再現具有精確濃淡的圖象,則最好用二階反射方程計算濃淡。因此,閾值τD2應設為使大多數顯示單元處在用二階方程重現的多邊形之內的一個數值。閾值τD1可設為一低值,而閾值τD2也可設為一低值以使用二階方向進行圖象大多數多邊形的濃淡處理。此外,如果用戶希望圖象快速重現而不關心濃淡質量,則閾值τD1和τD2應設置來產生該效果。具體而言,閾值τD1應設為一高值而閾值τD2應設為一高值以使執(zhí)行的大多數測試可指出使用零階方程。
最好是將閾值設置為能使圖象質量的要求與盡快重現圖象的要求相平衡的數值。此外閾值應考慮表面發(fā)光情況,即鏡面反射的光束寬度。當光束寬度寬時,該技術選擇一階方程。這樣產生的圖象對眼睛從可接受到幾乎完美的質量而再現速度比使用馮氏濃淡技術重現整個圖象要快25%到50%。當光束寬度窄時,盡管由于其中一個多邊形用一階方程而相鄰多邊形用二階方程濃淡處理而沿某些多邊形所呈現濃淡有不連續(xù)性,也可產生可接受質量的圖象。然而該問題可通過使用較小多邊形來加以避免。實際上,一般而言,由于需要產生較高質量圖象而不常使用零階方程。因此,閾值τD1最好設置為近似0.1的值以便用較高階方程重現大多數多邊形。
參考圖6b描述本發(fā)明另一實施例。該過程流程圖類似圖6a的,除了漫反散外包括鏡面反射。如果該過程包括鏡面反射,在框610,計算每個頂點的眼點矢量。該計算從幅度上歸一化每個眼點矢量。在框620,判定每個頂點的反射矢量到眼點矢量的投影(R·V)。該數值cos(δ(i))預測鏡面反射。在框630,計算每個頂點的cos(δ(i))之差,即abs(cos(δ1)-cos(δ2)),abs(cos(δ2)-cos(δ3)),abs(cos(δ)-abs(cos(δ1)))。在框640,確定最大差值。如果最大差cosdiff(δ)小于或等于二階閾值,則在框650選擇二階濃淡;如果最大差cosdiff(δ)大于或等于二階閾值,則在框670選擇二階濃淡。否則,在框690使用一階濃淡。
圖9是說明使用本文所述技術的優(yōu)點的表格。該表格示出使用馮氏濃淡技術(例如二階方程)、Gouraud技術(使用一階方程)和本發(fā)明的自適應濃淡技術對同一物體濃淡處理的結果。鏡面功率是指出表面反射能力的數值。當反射功率增加時,表面發(fā)光增加。重現時間為使用該技術重現圖象所用的時間量。“NMSE”表示自適應濃淡方法和二階馮氏濃淡方法所產生圖象的象素再現之間的歸一化均方差。這可用如下等式來計算
Pr(i)馮氏方法產生圖象的第i′象素的紅分量Pg(i)馮氏方法產生圖象的第i′象素的綠分量Pb(i)馮氏方法產生圖象的第i′象素的藍分量Ar(i)自適應濃淡產生圖象的第i′象素的紅分量Ag(i)自適應濃淡產生圖象的第i′象素的綠分量Ab(i)自適應濃淡產生圖象的第i′象素的藍分量NMSE值越小,圖象質量越高。這樣,閾值τD1越低,產生圖象質量越好,重現時間慢。相反,閾值越高,產生圖象質量越低而重現時間越短,與重現圖象時所用反射功率無關。一般而言,自適應濃淡產生圖象的NMSE小于0.0001(與馮氏產生圖象相比),指出該圖象近似與馮氏濃淡圖象相同。其NMSE值在0.0001和0.00025之間的圖象有某些細微的濃淡不連續(xù)性,而NMSE值在0.00025和0.0005之間的圖象的濃淡不一致性是明顯的。而具有0.0005以上NMSE值的圖象以圖象觀看者有顯著缺陷。
本發(fā)明明顯不局限于任何計算多邊形濃淡的特定類型的方程。通過閱讀本說明書,對本領域技術人員很顯然的是任何熟知的濃淡技術可在本發(fā)明范圍內使用,然而,最好使用以下方程。這些方程利用許多前面執(zhí)行的計算來判定方程的階,從而節(jié)省執(zhí)行濃淡算法的時間。所述計算對所有階方程可使用前面說明的掃描線技術。
以下例子利用三角形元素,但該技術可擴展到任意多邊和參量表面。由確定表面的參量方程確定特定點或頂點的法向矢量。請參見Bartels,Beatty,Barsky所著“An Introduction to Splines for use in Computer Graphics”(Margan Kaufmann 1987),PP.293-299,以及Faux,Pratt所著“Computational Geometry for Design and Manufacture”(Wiley 1979)PP110-113。
一階解法計算三角形各頂點總的反射。如果反射由背景反射加漫反散組成,表達式有C(1)=(Ka+Kd*cos(α1)))*C(1),C(2)=(Ka+Kd*cos(α2)))*C(2),C(3)=(Ka+Kd*cos(α3)))*C(3),其中Ka是背景反射的系數,Kd是漫反射的系數,以及Cos(α1)=Lx(1)*Nx(1)+Ly(1)*Ny(1)+Lz(1)*Nz(1),Cos(α2)=Lx(2)*Nx(2)+Ly(2)*Ny(2)+Lz(2)*Nz(2),Cos(α3)=Lx(3)*Nx(3)+Ly(3)*Ny(3)+Lz(3)*Nz(3)應該注意到,為簡化描述,以上方程合并了各色彩分量的分立表達式。
如果色彩空間是可加的,則獨立分量共用同一形式。
如果反射包括鏡面反射,表達式變成C(1)=(Ka+Kd*cos(α1)))*C(1)+Ks*(cos(δ1))P*C1,C(2)=(Ka+Kd*cos(α2)))*C(2)+Ks*(cos(δ2))P*C1,C(3)=(Ka+Kd*cos(α3)))*C(2)+Ks*(cos(δ3))P*C1其中C1是光源色彩,Ks是鏡面反射系數,而cos(δ1)=2*cos(α1)*cos(δ1)-cos(χ1)cos(δ2)=2*cos(α2)*cos(δ2)-cos(χ2)cos(δ3)=2*cos(α3)*cos(δ3)-cos(χ3)
cos(β1)=Nx(1)*Vx(1)+Ny(1)*Vy(1)+Nz(1)*Vz(1),cos(β2)=Nx(2)*Vx(2)+Ny(2)*Vy(2)+Nz(2)*Vz(2),cos(β3)=Nx(3)*Vx(3)+Ny(3)*Vy(3)+Nz(3)*Vz(3),以及cos(χ1)=Vx(1)*Vx(1)+Vy(1)*Vy(1)+Vz(1)*Vz(1),cos(χ2)=Vx(2)*Vx(2)+Vy(2)*Vy(2)+Vz(2)*Vz(2),cos(χ3)=Vx(3)*Vx(3)+Vy(3)*Vy(3)+Vz(3)*Vz(3),為使在使用零階解法時,鄰接三角形間彩色值間的差最小,對三個頂點的彩色值求平均值(該平均與三角形中央實現一階等式的彩色值相匹配)C=0.33*(C(1)+C(2)+C(3))一階解法導出如上所示的色值。對一階解法,使用以上所述的相同反射方程(相對于零階解法)。一階解法不平均頂點色值但內插色值。本說明書在此描述對頂點顏色使用掃描線技術(見本發(fā)明的背景部分)的一種過程。根據邊邏輯,首先沿每個三角形的邊內插色值,然后通過三角形每一掃描線。
對二階方程,判定三角形頂點的彩色值。這些彩色值表示每個三角形邊的兩個邊界條件,即每條三角形邊兩端點的彩色值。因為二階方程定義需要三個邊界條件,對背景反射加漫反射的解決方案將法向矢量和光矢量內插在三角形頂點間三角形邊上的某中間位置。以下實例假設該位置在邊的中央,并且該實例假設了最壞條件,即法向矢量和光矢量在該三角形上是變化的。所以,第三邊界條件,即在本實例中,確定頂占間距離的一半(見圖10a)如下
而Nx(4),Ny(4),Nz(4)是第一和第二頂點間所選點的法線坐標,Nx(5),Ny(5),Nz(5)是第二和第三頂點間所選點的法線坐標而Nx(6),Ny(6),Nz(6)為第三和第一頂點間所選點的法線坐標。進一步有
其中Lx(4),Ly(4)和Lz(4)為第一和第二頂點間所選點開始的光矢量坐標,Lx(5)、Ly(5)和Lz(5)是第二和第三頂點間所選點開始的光矢量坐標,而Lx(6)、Ly(6)和Lz(6)是第三和第一頂點間所選點開始的光矢量坐標。計算這些矢量大小來歸一化這些矢量。最好是,為節(jié)省計算時間和費用,與該大小相除的計算推遲到以下漫反射加權的計算之后cos(α4)=Lx(4)*Nx(4)+Ly(4)*Ny(4)+Lz(4)*Nz(4)/(L(4)*N(4))cos(α5)=Lx(5)*Nx(5)+Ly(5)*Ny(5)+Lz(5)*Nz(5)/(L(5)*N(5))cos(α6)=Lx(6)*Nx(6)+Ly(6)*Ny(6)+Lz(6)*Nz(6)/(L(6)*N(6))其中
L(4)=sprt(4)*Lx(4)+Ly(4)*Ly(4)+Lz(4)*Lz(4))L(5)=sprt(Lx(5)*Lx(5)+Ly(5)*Ly(5)+Lz(5)*Lz(5))L(6)=sqrt(Lx(6)*Lx(6)+Ly(6)*Ly(6)+Lz(6)*Lz(6))以及N(4)=sprt(Nx(4)*Nx(4)+Ny(4)*Ny(4)+Nz(4)*Nz(4))N(5)=sprt(Nx(5)*Nx(5)+Ny(5)*Ny(5)+Nz(5)*Nz(5))N(6)=sprt(Nx(6)*Nx(6)+Ny(6)*Ny(6)+Nz(6)*Nz(6))中央位置的組合反射可用作第三邊界條件加以確定C(4)=(Ka+Kd*cos(α4))*C(4)C(5)=(Ka+Kd*cos(α5))*C(5)C(6)=(Ka+Kd*cos(α6))*C(6)在本實例中,假設最壞情況是頂點彩色本身在三角形上變化。這樣,沿多邊形邊的中間點的色彩為C(4)=0.5*(C(1)+C(2))C(5)=0.5*(C(2)+C(3))C(6)=0.5*(C(3)+C(1))如果組合反射包括鏡面反射,則判定中央位置的眼點矢量。該實例再假設最壞情形,即,眼點矢量在三角形上變化
然后計算歸一化矢量的幅度。最便宜的做法是將除以該幅度的計算推遲到鏡面加權的計算之后。
cos(δ4)=2*cos(α4)*cos(β4)-cos(χ4)cos(δ5)=2*cos(α5)*cos(β5)-cos(χ5)cos(δ6)=2*cos(α6)*cos(β6)-cos(χ6)其中cos(β4)=(Nx(4)*Vx(4)+Ny(4)*Vy(4)+Nz(4)*Vz(4))/(N(4)*V(4))cos(β5)=(Nx(5)*Vx(5)+Ny(5)*Vy(5)+Nz(5)*Vz(5))/(N(5)*V(5))cos(β6)=(Nx(6)*Vx(6)+Ny(6)*Vy(6)+Nz(6)*Vz(6))/(N(6)*V(6))并且cos(χ4)=(Vx(4)*Lx(4)+Vy(4)*Ly(4)+Vz(4)*Lz(4))/(V(4)*L(4))cos(χ5)=(Vx(5)*Lx(5)+Vy(5)*Ly(5)+Vz(5)*Lz(5))/(V(5)*L(5))cos(χ6)=Vx(6)*Lx(6)+Vy(6)*Ly(6)+Vz(6)*Lz(6))/(V(6)*L(6))其中V(4)=sqrt(Vx(4)*Vx(4)+Vy(4)*Vy(4)+Vz(4)*Vz(4))V(5)=sqrt(Vx(5)*Vx(5)+Vy(5)*Vy(5)+Vz(5)*Vz(5))V(6)=sqrt(Vx(6)*Vx(6)+Vy(6)*Vy(6)+Vz(6)*Vz(6))
鏡面反射的增加,將組合反射變化為C(4)=(Ka+Kd*cos(α4)*C(4)+Ks*(cos(δ4)p)*C1C(5)=(Ka+Kd*cos(α5)*C(5)+Ks*(cos(δ5)p)*C1C(6)=(Ka+Kd*cos(α6)*C(6)+Ks(cos(δ6)p)*C1附加的彩色值C(4)、C(5)、C(6)提供第三邊界條件。
如上所述,二階求解需要三個邊界條件(見圖10b),以導出二階方程的系數(m0、m1、m2)C(u(i))=m0(i)+m1(i)*u(i)+m2(i)*u(i)2其中0<=u(i)<=1要求解這些方程,判定三個邊界條件的并列方程。該邊界條件變?yōu)镃(1)=m0(1)C(4)=m0(1)+0.5m1(1)+0.25m2(1)C(2)=m0(1)+m1(1)+m2(1)C(2)=m0(2)C(3)=m0(3)C(5)=m0(2)+0.5m1(1)+0.25m2(2)C(3)=m0(3)C(6)=m0(3)+0.5m1(3)+0.25m2(3)C(1)=m0(3)+m1(3)+m2(3)
參數變量為v(1)=u(1)+du(1) v(2)=u(2)+du(2) v(3)=u(3)+du(3)其中du(1)=1/(Py(2)-Py(1))du(2)=1/(Py(3)-Py(2))du(3)=1/(Py(1)-Py(3))一旦系數被確定,則該二階方程簡化為正向差分方程用以計算各邊的彩色。
為計算三角形內的彩色,采用二階求解,如上所示沿邊內插各值以在光柵跨度每條邊上形成矢量值。將該矢量值內插到跨度的中心。參考圖10C,判定位于跨度中心的點的矢量
從中計算反射方程的余弦項cos(δxc)=2*cos(αxc)*cos(βxc)-cos(χxc)其中
cos(αxc)=(Lx(xc)*Nx(xc)+Ly(xc)*Ny(xc)+Lz(xc)*Nz(xc)))/(L(xc)*N(xc))cos(βxc)=(Nx(xc)*Vx(xc)+Ny(xc)*Vy(xc)+Nz(xc)*Vz(xc))/(N(xc)*V(xc))cos(χxc)=(Vx(xc)*(Lx(xc)+Vy(xc)*Ly(xc)+Vz(xc)*Lz(xc))/(V(xc)*L(xc))以及cos(αxc)=(Lx(xc)*Nx(xc)+Ly(xc)*Ny(xc)+Lz(xc)*Nz(xc)))/(L(xc)*N(xc))cos(βxc)=(Nx(xc)*Vx(xc)+Ny(xc)*Vy(xc)+Nz(xc)*Vz(xc))/(N(xc)*V(xc))cos(χxc)=(Vx(xc)*Lx(xc)+Vy(xc)*Ly(xc)+Vz(xc)*Lz(xc))/(V(xc)*L(xc))因此跨度中心的彩色為C(xc)=(Ka+Kd*cos(αxc))*C(xc)+Ks*cos(δxc)P*Cl它提供了第三色值而完成邊界條件(見圖10C)C(xl)=m0(4)C(xc)=m0(4)+0.5ml(4)+0.25m2(4)C(xr)=m0(4)+m1(4)+m2(4)然后使用正向差分方程內插該三角形以實現完全反射方程。
該技術也可擴展到三階方程。計算每條邊的四種彩色值以說明三階解所要求的四個邊界條件。除了兩個頂點顏色,判定1/3和2/3邊長的彩色值。這樣,邊邏輯的邊界條件(見圖10d)變?yōu)镃(1)=m0(1)C(4)=m0(1)+0.33ml(i)+0.11m2(1)+0.04m3(1)
C(5)=m0(1)+0.67m1(1)+0.44m2(1)+0.30m3(1)C(2)=m0(1)+m1(1)+m2(1)+m3(1)C(2)=m0(2)C(6)=m0(2)+0.33m1(2)+0.22m2(2)+0.04m3(2)C(7)=m0(2)+0.67m1(2)+0.44m2(2)+0.30m3(2)C(3)=m0(2)+m1(2)+m2(2)+m3(2)C(3)=m0(3)C(8)=m0(3)+0.33m1(3)+0.33m2(3)+0.04m3(3)C(9)=m0(3)+0.67m1(3)+0.44m2(3)+0.30m3(3)C(1)=m0(3)+m1(3)+m2(3)+m3(3)然后判定光柵掃描的四個邊界條件。該掃描邏輯的邊界條件(見圖10e)變?yōu)镃(xl)=m0(4)C(xm)=m0(4)+0.33m1(4)+0.11m2(4)+0.04m3(4)C(xn)=m0(4)+0.67m1(4)+0.44m2(4)+0.30m3(4)C(xr)=m0(4)+m1(4)+m2(4)+m3(4)掃描線技術是一種對三角形內插頂點屬性(顏色)的方法。使用掃描線技術的優(yōu)點在于,由于多邊形總可簡化為邊間的簡單的段,并可對每個段計算頂點屬性,所以該技術可擴展到任何形狀的多邊形。然而,計算出的差分方程包括對每一段的除法計算的時間消耗過程。另外,在三角形元形元素的例子里,使用平面方程。三個邊界條件是三個三角形頂點的頂點狀態(tài)并可對整個元素計算差分方程。這樣,將差分方程加到整個三角形。雖然平面方程容易加到三角形多邊形,由于各頂點可能不共面,該平面方程可能不能用于多于三個頂點的多邊形。
為使用平面方程確定濃淡,先計算三頂點的顏色。然后計算邊界條件。要計算邊界條件,判定三角形中心的矢量(法向,光和眼點矢量)(見圖11a)。使用如上所述的反射方程將這些矢量內插到彩色值中。然后將四個彩色值代入雙線性表達式C(u,v)=|1V||m00 m01||1||m10 m11||u′|以及0<=u<=1,0<=v<=1而(u,v)參數變量為u=u+du 其中du=1/(Py(2)-Py(1))v=v+du 其中dv=1/(Px(2)-Px(3))一階方程的邊界條件為c(1)=m00+m01*u+m10*v+m11*u*v 其中u=0,v=0c(2)=m00+m01*u+m10*v+m11*u*v 其中u=1,v=1c(3)=m00+m01*u+m10*v+m11*u*v 其中u=1,v=0c(4)=m00+m01*u+m10*v+m11*u*v 其中u=2/3,v=1/2
這樣,c(1)=m00c(2)=m00+m01+m10+m11c(3)=m00+m01c(4)=m00+0.67*m01+0.5*m10+0.33*m11對(c00,c01,c10,c11)系數存在一組代數解。色彩的雙線性表達式可變換為正向差分方程,該方程用于對三角形內插。
擴展的平面技術可以是二階方程。該形式為C(u,v)=|1 V V||m00 m01 m02||1||m10 m11 m12||u||m20 m21 m22||u|其中0<=U<1,0<=V<=1由于二階方程需要9個邊界條件,必須決定9個位置(如圖11C所示)的矢量。使用反射方程(前已說明)計算這9個位置的彩色值。然后求解(m00,m01,m22)的邊界方程。所以邊界條件為(參考圖11d)。
C(1)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=0,v=0C(2)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=1,v=1C(3)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=1,v=0
C(4)=m00+m01*u2+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=1/2,v=1/2C(5)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=1,v=1/2C(6)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=1/2,v=0C(7)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=2/3,v=2/3C(8)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中u=2/3,v=1/3C(9)=m00+m01*u+m02*u2+m10*v+m11*u*v+m12*u2v+m20*v2+m21*u*v2+m22*u2*v2其中,u=1/3,v=1/3這樣C(1)=1.00*m00C(2)=1.00*m00+1.00*m01+1.00*m02+1.00*m10+1.00*m11+1.00*m12+1.00*m20+1.00*m21+1.00*m22C(3)=1.00*m00+1.00*m01+1.00*m02C(4)=1.00*m00+0.50*m01+0.25*m02+0.50*m10+0.25*m11+0.12*m12+0.25*m20+0.12*m21+0.06*m22C(5)=1.00*m00+1.00*m01+1.00*m02+0.50*m10+0.50*m11+0.50*m12+0.25*m20+0.12*m21+0.25*m22C(6)=1.00*m00+0.50*m01+0.25*m02+1.00*m10+0.50*m11+0.25*m12+1.00*m20+0.50*m21+0.25*m22C(7)=1.00*m00+0.67*m01+0.44*m02+1.67*m10+0.44*m11+0.30*m12+0.40*m20+0.30*m21+0.19*m22C(8)=1.00*m00+0.67*m01+0.44*m02+0.33*m10+0.22*m11+0.15*m12+0.11*m20+0.07*m21+0.05*m22C(9)=1.00*m00+0.33*m01+0.11*m02+0.33*m10+0.11*m11+0.04*m12+0.11*m20+0.04*m21+0.01*m22然后將該顏色的雙二次表達式變換為用于對三角形內插的正向差分方程。
對該二階方程有三個例外。第一種情況涉及確保加權保持為正的函數cos(α(i))=max(cos(α(i)),0)cos(δ(i))=max(cos(δ(i)),0)如果發(fā)現漫反射加權為負,則判定三角形邊上何處該值變?yōu)榱?。在該點劃分三角形,將該三角形鑲嵌成兩個、三個或四個三角形。三角形個數取決于找到有一條、兩條或三條邊需有箝位值。
當表面曲度尖陡時出現第二種情形。估值cos(Φ)反映該情形。由于三階方程可能低估三角形光矢量變化,將該三角形鑲嵌成多個三角形。
當光源接近該三角形時出現第三種情形。估值cos(γ)反映該情形。由于三階方程可能低估三角形光矢量變化,將該三角形鑲嵌成多個三角形。
以下討論用于說明本發(fā)明自適應濃淡系統。該實例只包括漫散光照情形而不考慮鏡面光照。因為鏡面光照不予考慮,所以不必計算眼點矢量。該圖象包含產生四個三角形的6個頂點構成的三角形網絡。該實例假設每個頂點的彩色值c(i)是不變的,每個頂點的光矢量L(i)是不變的,但每個頂點的法矢量N(i)是變化的。法矢量數值為N(v0)=(0.000000,0.000000,1.000000)N(v1)=(0.017450,-0.017452,0.999695)N(v2)=(0.035188,-0.034590,0.998782)N(v3)=(0.053199,-0.051396,0.997260)
N(v4)=(0.071466,-0.067857,0.995132)N(v5)=(0.089973,-0.083957,0.992399)該實例假設光矢量為L(vi)=(0,0,1)第一步是根據以下方程計算漫反射加權cos(α(v))=N(v)·L(v)該實例的數值為cos(α(v0))=1.000000cos(α(v1))=0.999695cos(α(v2))=0.998782cos(α(v3))=0.997260cos(α(v4))=0.995132cos(α(v5))=0.992399然后確定強度變化。漫反射加權之間的最大并值是預商量最大變化的估值dcos(α(t0))=max(abs(cos(α(v0))-cos(α(v1))),abs(cos(α(v1))-cos(α(v2)))-abs(cos(α(v2))-cos(α(v0))))dcos(α(t1))=max(abs(cos(α(v0))-cos(α(v3))),abs(cos(α(v3))-cos(α(v1)))-abs(cos(α(v1)))-cos(α(v0))))dcos(α(t2))=max(abs(cos(α(v1))-cos(α(v4))),abs(cos(α(v4))-cos(α(v2)))-abs(cos(α(v2))-cos(α(v1))))dcos(α(t3))=max(abs(cos(α(v0))-cos(α(v2))),abs(cos(α(v2)))-cos(α(v5)))-abs(cos(α(v5)))-cos(α(v0))))
最大變化的數值為cosdiff(α(t0))=0.001218cosdiff(α(t1))=0.002740cosdiff(α(t2))=0.004563cosdiff(α(t3))=0.007601然后將最大變化與第一(ε1)和第二(ε2)閾值相比較。在本實例中,閾值為ε1=0.0025其中e1從1階分離出零階ε2=0.0050其中e2從2階分離出1階相對于第一三角形0<max(cosdiff(α(t0)))<e1所以使用零階方程。為了對三個頂點漫反射加權中任何差異進行補償,對值求平均值cos(α(t0))=0.333*(cos(α(v0))+cos(α(v1))+cos(α(v2)))然后確定該不變的顏色C(t0)=(Ka+Kd*cos(α(t0)))*C(t0))相對于第二和第三三角形
ε1<max(dcos(α(t1)))<ε2ε1<max(dcos(α(t2)))<ε2使用一階方程。當用掃描線算法時,該求解需要先將三角形邊的彩色值進行內插。然后將三角形左邊的彩色值對右邊的進行內插。例如對第二三角形C(v0)=(Ka+Kd*cos(α(v0)))*C(t1))C(v3)=(Ka+Kd*cos(α(v3)))*C(t1))C(v1)=(Ka+Kd*cos(α(v1)))*C(t1))然后先使用掃描線邏輯內插三角形各邊上的彩色值,然后對三角形內部內插。
第四三角形的最大變化為dcos(α(t3))>ε2這樣,可對該三角形選擇二階方程(馮氏濃淡)。盡管本技術利用這樣一個事實,即各頂點漫反射加權是現成的,所以必須傳播三角形各邊上法向分量。對每一步中的各分量歸一化。然后傳播三角形內部的法向分量,再對每個象素的法向分量歸一化。然后判定每個象素的漫反射加權cos(α(x,y)=Lx(x,y)*Nx(x,y)+Ly(x,y)*Ny(x,y)+Lz(x,y)*Nz(x,y)c(x,y)=(Ka+Kd*cos(α(x,y)))*C(t3)
其中假設L(x,y)為常數。
盡管已結合最佳實施例對本發(fā)明作了說明,明顯的是,本領域技術人員根據前面的說明很容易理解許多變形、改進、變化及使用。具體地說,本發(fā)明可包含本說明書以外的濃淡方程??稍黾娱撝祦碓黾铀鶊?zhí)行測試的數量及可利用方程階數。此外,可以只用零階和1階濃淡方程或一階和二階方程來構造該系統。
權利要求
1.一種用于在圖形顯示器上產生所顯示圖形圖象中的濃淡圖象的設備,所述圖形顯示器包含象素矩陣、所述圖形圖象按照光源形成濃淡,所述的產生的濃淡圖象的質量由用戶確定,所述設備包含中央處理器(CPU)、存儲器、與顯示器相連的幀緩沖器,所述濃淡圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述濃淡圖象,所述設備還包含與CPU和幀緩沖器耦合的自適應濃淡裝置,該裝置包含接收定義圖形圖象的圖形圖象象素數據的輸入裝置,按照圖形圖象象素數據位置進行分組的裝置,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量,用于選擇用來確定每個多邊形的反射的反射方程階數的選擇裝置,其中最高階的反射方程產生多邊形的最高質量的反射,所述選擇裝置包含用于按照多邊形頂點法向矢量決定多邊形表面曲率變化量和頂點間曲率變化的曲率判定裝置,用于將頂點之間曲率變化量與指示大曲變化量的曲率閾值進行比較的曲率比較裝置,如果頂點之間曲率變化量大于或等于曲率閾值,則控制裝置選擇最高階反射方程,用于判定每個頂點光矢量和頂點間光矢量變化的光矢量判定裝置,所述光矢量是光源相對于頂點的位置的函數,用于將頂點間光矢量變化與指示光矢量間大的變化量的光矢量閾值相比較的光矢量比較裝置,如果頂點間光矢量變化量大于或等于光矢量閾值,則控制裝置選擇最高階數的反射方程,用于判定頂點間曲率變化和頂點間光矢量變化中最大變化的最大變化判定裝置,如果將該最大變化與多個用于判定所用反射方程階數的閾值相比較的最大變化比較裝置,每個閾值繪出可用預定階數的反射方程來產生質量圖象最大變化的輪廓,以及,如果最大變化小于或等于描述可將預定階反射方程用于產生質量圖象的最大變化的閾值時所述控制裝置選擇預定階的反射方程,而當最大變化大于描述可將預定階的反射方程用于產生質量圖象的最大變化的閾值時使用相鄰低階反射方程,用于判定多邊形反射的反射判定裝置,所述裝置接收由選擇裝置判定的階數的反射方程并使用該反射方程判定多邊形反射并產生表示濃淡多邊形圖象的修改后的象素數據,與幀緩沖器相連接以將表示濃淡多邊形的象素數據輸出到幀緩沖器的輸出裝置,以及與幀緩沖器和顯示器相連接,用于讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而該設備按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
2.如權利要求1所述設備,其特征在于至少使用4個階的反射方程。
3.如權利要求1所述設備,其特征在于,所用最高階反射方程為二階方程。
4.如權利要求3所述設備,其特征在于,曲率閾值對應于使用一階方程產生質量圖象的最大曲率變化。
5.如權利要求3所述設備,其特征在于,光矢量閾值對應于用一階方程產生質量圖象的最大光矢量變化。
6.如權利要求3所述設備,其特征在于所述最大變化比較裝置將最大變化與第二閾值相比較,第一閾值為可用于產生質量濃淡圖象的零階反射方程的最大變化,所述第二閾值為用一階反射方程產生質量濃淡圖象的最大變化,以及如果最大變化小于第一閾值所述控制裝置選擇使用零階反射方程來計算多邊形反射,如最大變化小于第二閾值,選擇使用一階反射方程計算多邊形反射,而當最大變化大于第二閾值則使用二階反射方程來計算多邊形反射。
7.如權利要求1所述設備,其特征在于,所述選擇裝置還包含用于判定每個頂點眼點矢量和頂點間眼點矢量變化的眼點矢量判定裝置,所述眼點矢量為眼點位置相對于頂點位置的函數,用于將頂點間眼點矢量變化與指示眼點矢量之間大的變化量的眼點矢量閾值加以比較的眼點矢量比較裝置,如果頂點間眼點矢量變化量大于或等于眼點矢量閾值,則控制裝置選擇最高階反射方程,以及所述最大變化判定裝置判定頂點間曲率變化頂點間光矢量變化和頂點間眼點矢量變化中的最大變化。
8.如權利要求7所述設備,其特征在于所用最高階反射方程為二階方程,而眼點矢量閾值對應于用一階方程產生的質量圖象的最大眼點矢量變化。
9.如權利要求1所述設備,其特征在于多邊形包含帶第一、第二和第三頂點的三角形。
10.如權利要求9所述設備,其特征在于所述曲率判定裝置按照下式判定頂點間最大曲率變化(cos(Φ))cos(Φ)=min(cos(Φ(1)),cos(Φ(2)),cos(Φ(3)))其中cos(Φ(1))=Nx(1)*Nx(2)+Ny(1)*Ny(2)+Nz(1)*Nz(2)cos(Φ(2))=Nx(2)*Nx(3)+Ny(2)*Ny(3)+Nz(2)*Nz(3)cos(Φ(3))=Nx(3)*Nx(1)+Ny(3)*Ny(1)+Nz(3)*Nz(1)其中Nx(1)、Ny(1)、Nz(1)為第一頂點的頂點法矢量的x、y和z分量,Nx(2)、Ny(2)、Nz(2)為第二頂點的頂點法矢量的x、y和z分量,Nx(3)、Ny(3)、Nz(3)為第三頂點的頂點法矢量的x、y和z分量,cos(Φ(1))指出第一頂點和第二頂點間的曲率變化,cos(Φ(2))指出第二頂點和第三頂點間的曲率變化,而cos(Φ(3))指出第三頂點和第一頂點間的曲率變化,以及,所述曲率比較裝置將最大曲率變化與曲率閾值相比較。
11.如權利要求9所述設備,其特征在于所述光矢量判定裝置按照下式判定最大光矢量變化(cos(Ψ))cos(Ψ)=min(cos(Ψ(1)),cos(Ψ(2)),cos(Ψ(3)))其中cos(Ψ(1))=Lx(1)*Lx(2)+Ly(1)*Ly(2)+Lz(1)*Lz(2)cos(Ψ(2))=Lx(2)*Lx(3)+Ly(2)*Ly(3)+Lz(2)*Lz(3)cos(Ψ(3))=Lx(3)*Lx(1)+Ly(3)*Ly(1)+Lz(3)*Lz(1)其中Lx(1)、Ly(1)、Lz(1)為第一頂點的光矢量的x、y和z分量,Lx(2)、Ly(2)、Lz(2)為第二頂點的光矢量的x、y和z分量,Lx(3)、Ly(3)、Lz(3)為第三頂點的光矢量的x、y和z分量,cos(Ψ(1))指出第一頂點和第二頂點間的光矢量變化,cos(Ψ(2))指出第二頂點和第三頂點間的光矢量變化,而cos(Ψ(3))指出第三頂點和第一頂點間的光矢量變化,以及,所述光矢量比較裝置將最大光矢量變化與光矢量閾值相比較。
12.如權利要求7所述設備,其特征在于多邊形包含帶有第一、第二和第三頂點的三角形,所述眼點矢量判定裝置按照下式判定最大眼點矢量變化(cos(η))cos(η)=max(cos(η(1)),cos(η(2)),cos(η(3)))其中cos(η(1))=Vx(1)*Vx(2)+Vy(1)*Vy(2)+Vz(1)*Vz(2)cos(η(2))=Vx(2)*Vx(3)+Vy(2)*Vy(3)+Vz(2)*Vz(3)cos(η(3))=Vx(3)*Vx(1)+Vy(3)*Vy(1)+Vz(3)*Vz(1)其中Vx(1)、Vy(1)、Vz(1)為第一頂點的眼點矢量的x、y和z分量,Vx(2)、Vy(2)、Vz(2)為第二頂點的眼點矢量的x、y和z分量,Vx(3)、Vy(3)、Vz(3)為第三頂點的眼點矢量的x、y和z分量,cos(η(1))指出第一頂點和第二頂點間的眼點矢量變化,cos(η(2))指出第二頂點和第三頂點間的眼點矢量變化,而cos(η(3))指出第三頂點和第一頂點間的眼點矢量變化,以及,所述眼點矢量比較裝置將最大眼點矢量變化與眼點矢量閾值相比較。
13.如權利要求1所述設備,其特征在于,所用最高階反射方程為二階方程,最大變化由下式確定cos(ΦΨ)=min(a(Φ)*cos(Φ),a(Ψ)*cos(Ψ)其中cos(φ)為最大曲率變化而a(φ)為曲率加權,cos(Ψ)為最大光矢量變化而a(Ψ)為光矢量加權。
14.如權利要求7所述設備,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形,最大變化按下式確定cos(ΦΨη)=min(a(Φ)*cos(Φ),a(Ψ)*cos(Ψ),a(η)*cos(η))其中cos(φ)為最大曲率變化,a(φ)為曲率加權,cos(Ψ)為最大光矢量變化,a(Ψ)為光矢量加權。而cos(η)為最大眼點矢量變化而a(η)為眼點矢量加權。
15.如權利要求13所述設備,其特征在于,第一閾值的范圍為0.996到0.938,而第二閾值范圍為0.992到0.879。
16.如權利要求14所述設備,其特征在于,第一閾值的范圍為0.996到0.938,而第二閾值范圍為0.992到0.879。
17.如權利要求3所述設備,其特征在于,使用零階、1階和2階的反射方程,所述零階方程包含點積L·N,其中L為平均光矢量,而N為到該表面的平均法向矢量,所述一階方程包含C=(Ka+Kd*cos(α))*C其中,C為象素色彩,Ka為背景加權,Kd為漫反射加權而cos(α)等于點積L·N。所述二階方程包含C=(Ka+Kd*cos(α(x,y)))*C其中C為象素色彩,Ka為背景加權,Kd為漫反射加權,cos(α(x,y))等于L(x,y)·N(x,y),L(x,y)表示歸一化光矢量,而N(x,y)表示該表面的歸一化法矢量。
18.如權利要求17所述設備,其特征在于零階、一階和二階反射方程存儲于存儲器中,所述控制裝置檢索所選反射方程并將所選反射方程輸出到反射判定裝置。
19.如權利要求1所述設備,其特征在于所述反射判定裝置使用對重現圖象的正向差分判定多邊形反射。
20.如權利要求19所述設備,其特征在于所述反射判定裝置使用對重現圖象的平面掃描線方程判定多邊形反射。
21.如權利要求19所述設備,其特征在于所述反射判定裝置使用重現圖象的平面方程判定多邊形反射。
22.如權利要求20所述設備,其特征在于所述反射判定裝置包含用于根據所接收反射方程判定多邊形各頂點反射的裝置,用于判定相鄰多邊形頂點間差分變量的裝置,所述差分變量包括含有相鄰頂點法向之間差量的法向差分變量、含有相鄰頂點位置之間差量的位置差分變量以及等于由相鄰頂點的象素數據限定色彩差的彩色差分變量,使用差分變量對多邊形各頂點內插確定的反射以確定反射和多邊形象素的修改的象素數據的裝置。
23.一種用于在圖形顯示器上產生所顯示圖形圖象中的濃淡圖象的設備,所述圖形顯示器包含象素矩陣、所述圖形圖象按照光源形成濃淡,所述的產生的濃淡圖象的質量由用戶確定,所述設備包含中央處理器(CPU)、存儲器、與顯示器相連的幀緩沖器,所述濃淡圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述濃淡圖象,所述設備還包含與CPU和幀緩沖器耦合的自適應濃淡裝置,該裝置包含接收定義圖形圖象的圖形圖象象素數據的輸入裝置,按照圖形圖象象素數據位置進行分組的裝置,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量,用于選擇用來確定每個多邊形的反射的反射方程階數的選擇裝置,所述選擇裝置包含用于按照多邊形頂點法向矢量決定多邊形表面曲率變化量和頂點間曲率變化的曲率判定裝置;用于將頂點之間曲率變化量與曲率閾值進行比較的曲率比較裝置,所述曲率閾值對應于用一階方程產生質量圖象的最大曲率變化,如果頂點之間曲率變化量大于或等于曲率閾值,則控制裝置選擇二階反射方程,用于判定每個頂點間光矢量和頂點間光矢量變化的光矢量判定裝置,所述光矢量是每個頂點法矢量和光源位置相對于頂點的函數,用于將頂點間光矢量變化與光矢量閾值相比較的光矢量比較裝置,所述光矢量閾值對應于用一階方程產生質量圖象的最大光矢量變化,如果頂點間光矢量變化量大于或等于光矢量閾值,則控制裝置選擇二階反射方程,用于判定頂點間曲率變化和頂點間光矢量變化中最大變化的最大變化判定裝置,如果將該最大變化與第一和第二閾值相比較的最大變化比較裝置,所述一階閾值為用零階反射方程產生質量濃淡圖象的最大變化,所述第二閾值為用一階反射方程產生質量濃淡圖象的最大變化,以及如果最大變化小于第一閾值時所述控制裝置選擇零階反射方程計算多邊形反射,而當最大變化小于第二閾值時使用一階反射方程計算多邊形反射,而當最大變化大于第二閾值時,使用二階反射方程計算多邊形反射,用于判定多邊形反射的反射判定裝置,所述裝置接收由選擇裝置判定的階數的反射方程并使用該反射方程判定多邊形反射并產生表示濃淡多邊形圖象的修改后的象素數據,與幀緩沖器相連接以將表示濃淡多邊形的象素數據輸出到幀緩沖器的輸出裝置,以及與幀緩沖器和顯示器相連接,用于讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而該設備按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的二階反射方程用得最少,以及在測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用二階方程時才使用二階方程。
24.如權利要求23所述設備,其特征在于,所述選擇裝置還包含用于判定每個頂點眼點矢量和頂點間眼點矢量變化的眼點矢量判定裝置,所述眼點矢量為眼點位置相對于頂點位置的函數,用于將頂點間眼點矢量變化與對應于用一階方程產生的質量圖象的最大眼點矢量變化的眼點矢量閾值加以比較的眼點矢量比較裝置,如果頂點間眼點矢量變化量大于或等于眼點矢量閾值,則控制裝置選擇二階反射方程,以及所述最大變化判定裝置判定頂點間曲率變化頂點間光矢量變化和頂點間眼點矢量變化中的最大變化。
25.如權利要求24所述設備,其特征在于多邊形包含帶第一、第二和第三頂點的三角形。
26.如權利要求25所述設備,其特征在于所述曲率判定裝置按照下式判定頂點間最大曲率變化(cos(Φ))cos(Φ)=min(cos(Φ(1)),cos(Φ(2)),cos(Φ(3)))其中cos(Φ(1))=Nx(1)*Nx(2)+Ny(1)*Ny(2)+Nz(1)*Nz(2)cos(Φ(2))=Nx(2)*Nx(3)+Ny(2)*Ny(3)+Nz(2)*Nz(3)cos(Φ(3))=Nx(3)*Nx(1)+Ny(3)*Ny(1)+Nz(3)*Nz(1)其中Nx(1)、Ny(1)、Nz(1)為第一頂點的頂點法矢量的x、y和z分量,Nx(2)、Ny(2)、Nz(2)為第二頂點的頂點法矢量的x、y和z分量,Nx(3)、Ny(3)、Nz(3)為第三頂點的頂點法矢量的x、y和z分量,cos(Φ(1))指出第一頂點和第二頂點間的曲率變化,cos(Φ(2))指出第二頂點和第三頂點間的曲率變化,而cos(Φ(3))指出第三頂點和第一頂點間的曲率變化,以及,所述曲率比較裝置將最大曲率變化與曲率閾值相比較。
27.如權利要求25所述設備,其特征在于所述光矢量判定裝置按照下式判定最大光矢量變化(cos(Ψ))cos(Ψ)=min(cos(Ψ(1)),cos(Ψ(2)),cos(Ψ(3)))其中cos(Ψ(1))=Lx(1)*Lx(2)+Ly(1)*Ly(2)+Lz(1)*Lz(2)cos(Ψ(2))=Lx(2)*Lx(3)+Ly(2)*Ly(3)+Lz(2)*Lz(3)cos(Ψ(3))=Lx(3)*Lx(1)+Ly(3)*Ly(1)+Lz(3)*Lz(1)其中Lx(1)、Ly(1)、Lz(1)為第一頂點的光矢量的x、y和z分量,Lx(2)、Ly(2)、Lz(2)為第二頂點的光矢量的x、y和z分量,Lx(3)、Ly(3)、Lz(3)為第三頂點的光矢量的x、y和z分量,cos(Ψ(1))指出第一頂點和第二頂點間的光矢量變化,cos(Ψ(2))指出第二頂點和第三頂點間的光矢量變化,而cos(Ψ(3))指出第三頂點和第一頂點間的光矢量變化,以及,所述光矢量比較裝置將最大光矢量變化與光矢量閾值相比較。
28.如權利要求25所述設備,其特征在于所述眼點矢量判定裝置按照下式判定最大眼點矢量變化(cos(η))cos(η)=min(cos(η(1)),cos(η(2)),cos(η(3)))其中cos(η(1))=Vx(1)*Vx(2)+Vy(1)*Vy(2)+Vz(1)*Vz(2)cos(η(2))=Vx(2)*Vx(3)*Vy(2)*Vy(3)+Vz(2)*Vz(3)cos(η(3))=Vx(3)*Vx(1)*Vy(3)*Vy(1)+Vz(3)*Vz(1)其中Vx(1)、Vy(1)、Vz(1)為第一頂點的眼點矢量的x、y和z分量,Vx(2)、Vy(2)、Vz(2)為第二頂點的眼點矢量的x、y和z分量,Vx(3)、Vy(3)、Vz(3)為第三頂點的眼點矢量的x、y和z分量,cos(η(1))指出第一頂點和第二頂點間的眼點矢量變化,cos(η(2))指出第二頂點和第三頂點間的眼點矢量變化,而cos(η(3))指出第三頂點和第一頂點間的眼點矢量變化,以及,所述眼點矢量比較裝置將最大眼點矢量變化與眼點矢量閾值相比較。
29.如權利要求25所述設備,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形,最大變化由下式確定cos(ΦΨη)=min(a(Φ)*cos(Φ),a(Ψ)*cos(Ψ),a(η)*cos(η))其中cos(φ)為最大曲率變化而a(φ)為曲率加權,cos(Ψ)為最大光矢量變化而a(Ψ)為光矢量加權,以及cos(η)為最大眼點矢量變化而a(η)為眼點矢量加權。
30.如權利要求23所述設備,其特征在于,第一閾值的范圍為0.996到0.938,而第二閾值范圍為0.992到0.879。
31.如權利要求23所述設備,其特征在于,使用零階、1階和2階的反射方程,所述零階方程包含點積L·N,其中L為平均光矢量,而N為到該表面的平均法向矢量,所述一階方程包含C=(Ka+Kd*cos(α))*C其中,C為象素色彩,Ka為背景加權,Kd為漫反射加權而cos(α)等于點積L·N,所述二階方程包含C=(Ka+Kd*cos(α(x,y)))*C其中C為象素色彩,Ka為背景加權,Kd為漫反射加權,cos(α(x,y))等于L(x,y)·N(x,y),L(x,y)表示歸一化光矢量,而N(x,y)表示該表面的歸一化法矢量。
32.如權利要求23所述設備,其特征在于零階、一階和二階反射方程存儲于存儲器中,所述控制裝置檢索所選反射方程并將所選反射方程輸出到反射判定裝置。
33.如權利要求23所述設備,其特征在于所述反射判定裝置使用對重現圖象的正向差分判定多邊形反射。
34.如權利要求33所述設備,其特征在于所述反射判定裝置使用對重現圖象的掃描線方程判定多邊形反射。
35.如權利要求33所述設備,其特征在于所述反射判定裝置使用重現圖象的平面方程判定多邊形反射。
36.如權利要求34所述設備,其特征在于所述反射判定裝置包含用于根據所接反射方程判定多邊形各頂點反射的裝置,用于判定相鄰多邊形頂點間差分變量的裝置,所述差分變量包括含有相鄰頂點法向之間差量的法向差分變量、含有相鄰頂點位置之間差量的位置差分變量以及由相鄰頂點的象素數據限定色彩差的彩色差分變量,使用差分變量對多邊形各頂點確定的反射以確定反射和多邊形象素的修改的象素數據的裝置。
37.在包含中央處理器、存儲器、幀緩沖器、和與幀緩沖器相連用于顯示所述顯示的圖形圖象的圖形顯示器的圖形顯示系統中,所述圖形顯示器包含一象素陣列,所述圖形圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述圖形圖象,一種產生濃淡圖形圖象的自適應過程根據光源對所述圖形圖象形成濃淡,所產生的所述濃淡圖象的質量由用戶規(guī)定,所述濃淡過程包含以下步驟接收定義圖形圖象的圖形圖象象素數據,按照圖形圖象象素數據位置進行分組,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量;選擇用來確定每個多邊形的反射的反射方程的階數,其中最高階的反射方程產生多邊形的最高質量的反射,所述步驟包含按照多邊形頂點法向矢量判定多邊形表面曲率變化量和頂點間曲率變化量,將頂點之間曲率變化量與指示大曲變化量的曲率閾值進行比較的曲率比較,如果頂點之間曲率變化量大于或等于曲率閾值,則選擇最高階反射方程,判定每個頂點光矢量和頂點間光矢量變化,所述光矢量是各頂點法向矢量和光源位置相對于頂點的函數,將頂點間光矢量變化與指示光矢量間大的變化量的光矢量閾值相比較,如果頂點間光矢量變化量大于或等于光矢量閾值,則選擇最高階數的反射方程;判定頂點間曲率變化和頂點間光矢量變化中的最大變化,將該最大變化與多個用于判定所用反射方程階數的閾值相比較,每個閾值繪出可用預定階的反射方程來產生質量圖象的最大變化的輪廓,以及,如果最大變化小于或等于描述可將預定階反射方程用于產生質量圖象的最大變化的閾值時選擇預定階的反射方程,而當最大變化大于描述可將預定階的反射方程用于產生質量圖象的最大變化的閾值時使用相鄰較低階反射方程,使用所選擇的判定多邊形反射的反射方程并產生表示濃淡多邊形圖象的修改后的象素數據,判定多邊形的反射,將表示濃淡多邊形的象素數據輸出到幀緩沖器,以及讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而按照曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
38.如權利要求37所述自適應濃淡過程,其特征在于至少使用4個階的反射方程。
39.如權利要求37所述自適應濃淡過程,其特征在于,所用最高階反射方程為二階方程。
40.如權利要求37所述自適應濃淡過程,其特征在于,還包含以下步驟判定每個頂點眼點矢量和頂點間眼點矢量變化,所述眼點矢量為眼點位置相對于頂點位置的函數,將頂點間眼點矢量變化與指示眼點矢量之間大的變化量的眼點矢量閾值加以比較,如果頂點間眼點矢量變化量大于或等于眼點矢量閾值,則選擇最高階反射方程,以及所述最大變化判定步驟判定頂點間曲率變化、頂點間光矢量變化和頂點間眼點矢量變化中的最大變化。
41.如權利要求37所述自適應濃淡過程,其特征在于多邊形包含帶第一、第二和第三頂點的三角形。
42.如權利要求41所述自適應濃淡過程,其特征在于所述多邊形表面曲率變化量和頂點間曲率變化判定步驟包含按照下式判定頂點間最大曲率變化(cos(Φ))的步驟cos(Φ)=min(cos(Φ(1)),cos(Φ(2)),cos(Φ(3)))其中cos(Φ(1))=Nx(1)*Nx(2)+Ny(1)*Ny(2)+Nz(1)*Nz(2)cos(Φ(2))=Nx(2)*Nx(3)+Ny(2)*Ny(3)+Nz(2)*Nz(3)cos(Φ(3))=Nx(3)*Nx(1)+Ny(3)*Ny(1)+Nz(3)*Nz(1)其中Nx(1)、Ny(1)、Nz(1)為第一頂點的頂點法矢量的x、y和z分量,Nx(2)、Ny(2)、Nz(2)為第二頂點的頂點法矢量的x、y和z分量,Nx(3)、Ny(3)、Nz(3)為第三頂點的頂點法矢量的x、y和z分量,cos(Φ(1))指出第一頂點和第二頂點間的曲率變化,cos(Φ(2))指出第二頂點和第三頂點間的曲率變化,而cos(Φ(3))指出第三頂點和第一頂點間的曲率變化,將最大曲率變化與曲率閾值相比較。
43.如權利要求41所述自適應濃淡過程,其特征在于所述各頂點光矢量和頂點間光矢量變化的判定步驟包含按照下式判定最大光矢量變化(cos(Ψ))cos(Ψ)=min(cos(Ψ(1)),cos(Ψ(2)),cos(Ψ(3))其中cos(Ψ(1))=Lx(1)*Lx(2)+Ly(1)*Ly(2)+Lz(1)*Lz(2)cos(Ψ(2))=Lx(2)*Lx(3)+Ly(2)*Ly(3)+Lz(2)*Lz(3)cos(Ψ(3))=Lx(3)*Lx(1)+Ly(3)*Ly(1)+Lz(3)*Lz(1)其中Lx(1)、Ly(1)、Lz(1)為第一頂點的光矢量的x、y和z分量,Lx(2)、Ly(2)、Lz(2)為第二頂點的光矢量的x、y和z分量,Lx(3)、Ly(3)、Lz(3)為第三頂點的光矢量的x、y和z分量,cos(Ψ(1))指出第一頂點和第二頂點間的光矢量變化,cos(Ψ(2))指出第二頂點和第三頂點間的光矢量變化,而cos(Ψ(3))指出第三頂點和第一頂點間的光矢量變化,以及,將最大光矢量變化與光矢量閾值相比較。
44.如權利要求40所述自適應濃淡過程,其特征在于多邊形包含帶有第一、第二和第三頂點的三角形,所述各頂點眼點矢量和頂點間眼點矢量變化的判定步驟按照下式判定最大眼點矢量變化(cos(η))cos(η)=min(cos(η(1)),cos(η(2)),cos(η(3)))其中cos(η(1))=Vx(1)*Vx(2)+Vy(1)*Vy(2)+Vz(1)*Vz(2)cos(η(2))=Vx(2)*Vx(3)+Vy(2)*Vy(3)+Vz(2)*Vz(3)cos(η(3))=Vx(3)*Vx(1)+Vy(3)*Vy(1)+Vz(3)*Vz(1)其中Vx(1)、Vy(1)、Vz(1)為第一頂點的眼點矢量的x、y和z分量,Vx(2)、Vy(2)、Vz(2)為第二頂點的眼點矢量的x、y和z分量,Vx(3)、Vy(3)、Vz(3)為第三頂點的眼點矢量的x、y和z分量,cos(η(1))指出第一頂點和第二頂點間的眼點矢量變化,cos(η(2))指出第二頂點和第三頂點間的眼點矢量變化,而cos(η(3))指出第三頂點和第一頂點間的眼點矢量變化,以及,將最大眼點矢量變化與眼點矢量閾值相比較。
45.如權利要求37所述自適應濃淡過程,其特征在于,最大變化由下式確定cos(ΦΨ)=min(a(Φ)*cos(Φ),a(Ψ)*cos(Ψ)其中cos(φ)為最大曲率變化而a(φ)為曲率加權,cos(Ψ)為最大光矢量變化而a(Ψ)為光矢量加權。
46.如權利要求40所述自適應濃淡過程,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形,最大變化按下式確定cos(ΦΨη)=min(a(Φ)*cos(Φ),a(Ψ)*cos(Ψ),a(η)*cos(η))其中cos(φ)為最大曲率變化,a(φ)為曲率加權,cos(Ψ)為最大光矢量變化,a(Ψ)為光矢量加權,而cos(η)為最大眼點矢量變化而a(η)為眼點矢量加權。
47.如權利要求37所述自適應濃淡過程,其特征在于,第一閾值的范圍為0.996到0.938,而第二閾值范圍為0.992到0.879。
48.如權利要求40所述自適應濃淡過程,其特征在于,第一閾值的范圍為0.996到0.938,而第二閾值范圍為0.992到0.879。
49.在包含中央處理器、存儲器、幀緩沖器、和與幀緩沖器相連用于顯示所顯示的圖形圖象的圖形顯示器圖形顯示系統中,所述圖形顯示器包含一象素陣列,所述圖形圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述圖形圖象,一種產生濃淡圖形圖象的自適應過程,根據光源對所述圖形圖象形成濃淡,所產生的所述濃淡圖象的質量由用戶規(guī)定,所述濃淡過程包含以下步驟接收定義圖形圖象的圖形圖象象素數據,按照圖形圖象象素數據位置進行分組,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量,選擇用來確定每個多邊形的反射的反射方程的階數,所述選擇步驟包含按照多邊形頂點法向矢量判定多邊形表面曲率變化量和頂點間曲率變化量,將頂點之間曲率變化量與對應于用一階方程產生的質量圖象的最大曲率變化量的曲率閾值進行比較,如果頂點之間曲率變化量大于或等于曲率閾值,則選擇二階反射方程,判定每個頂點光矢量和頂點間光矢量變化,所述光矢量是各頂點法向矢量和光源相對于頂點位置的函數,將頂點間光矢量變化與對應于用一階方程質量圖象的最大光矢量變化的眼點矢量閾值相比較,如果頂點間光矢量變化量大于或等于光矢量閾值,則選擇二階反射方程;判定各頂點的光矢量和頂點間光矢量變化,所述光矢量為各頂點法矢量和光源相對于該頂點位置的函數,將頂點間光矢量變化與對應于用一階方程產生圖象質量的最大矢量變化的光矢量閾值相比較,如果頂點間光矢量量變化量大于或等于光矢量閾值則選擇二階反射方程,判定頂點間曲率變化頂點間光矢量變化中最大變化,將該最大變化與第一和第二閾值進行比較,所述一階閾值為用零階反射方程產生質量濃淡圖象的最大變化,所述第二閾值為用一階反射方程產生質量濃淡圖象的最大變化,如果最大變化小于或等于第一閾值則選擇零階反射方程計算多邊形反射,而當最大變化小于第二閾值時使用一階反射方程計算多邊形反射,判定多邊形的反射,所述裝置接收由選擇裝置判定的階數的反射方程并使用該反射方程判定多邊形反射,并產生表示濃淡多邊形圖象的修改后的象素數據,將表示濃淡多邊形的象素數據輸出到幀緩沖器,以及讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而按照曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的二階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用二階方程時才使用的二階方程。
50.如權利要求49所述自適應濃淡過程,其特征在于,還包含以下步驟判定每個頂點眼點矢量和頂點間眼點矢量變化,所述眼點矢量為眼點位置相對于頂點位置的函數,將頂點間眼點矢量變化與對應于用一階方程質量圖象的最大眼點矢量變化的眼點矢量閾值加以比較,如果頂點間眼點矢量變化量大于或等于眼點矢量閾值,則選擇二階反射方程,以及所述最大變化是在頂點間曲率變化頂點間光矢量變化和頂點間眼點矢量變化中判定出的最大變化。
51.如權利要求49所述自適應濃淡過程,其特征在于多邊形包含帶第一、第二和第三頂點的三角形。
52.如權利要求51所述自適應濃淡過程,其特征在于所述多邊形表面曲率變化和頂點間曲率變化量判定步驟包含按照下式判定頂點間最大曲率變化(cos(Φ))cos(Φ)=min(cos(Φ(1)),cos(Φ(2)),cos(Φ(3)))其中cos(Φ(1))=Nx(1)*Nx(2)+Ny(1)*Ny(2)+Nz(1)*Nz(2)cos(Φ(2))=Nx(2)*Nx(3)+Ny(2)*Ny(3)+Nz(2)*Nz(3)cos(Φ(3))=Nx(3)*Nx(1)+Ny(3)*Ny(1)+Nz(3)*Nz(1)其中Nx(1)、Ny(1)、Nz(1)為第一頂點的頂點法矢量的x、y和z分量,Nx(2)、Ny(2)、Nz(2)為第二頂點的頂點法矢量的x、y和z分量,Nx(3)、Ny(3)、Nz(3)為第三頂點的頂點法矢量的x、y和z分量,cos(Φ(1))指出第一頂點和第二頂點間的曲率變化,cos(Φ(2))指出第二頂點和第三頂點間的曲率變化,而cos(Φ(3))指出第三頂點和第一頂點間的曲率變化,將最大曲率變化與曲率閾值相比較。
53.如權利要求51所述自適應濃淡過程,其特征在于所述各頂點光矢量和頂點間光矢量變化的判定步驟包含按照下式判定最大光矢量變化(cos(Ψ))的步驟cos(Ψ)=min(cos(Ψ(1)),cos(Ψ(2)),cos(Ψ(3)))其中cos(Ψ(1))=Lx(1)*Lx(2)+Ly(1)*Ly(2)+Lz(1)*Lz(2)cos(Ψ(2))=Lx(2)*Lx(3)+Ly(2)*Ly(3)+Lz(2)*Lz(3)cos(Ψ(3))=Lx(3)*Lx(1)+Ly(3)*Ly(1)+Lz(3)*Lz(1)其中Lx(1)、Ly(1)、Lz(1)為第一頂點的光矢量的x、y和z分量,Lx(2)、Ly(2)、Lz(2)為第二頂點的光矢量的x、y和z分量,Lx(3)、Ly(3)、Lz(3)為第三頂點的光矢量的x、y和z分量,cos(Ψ(1))指出第一頂點和第二頂點間的光矢量變化,cos(Ψ(2))指出第二頂點和第三頂點間的光矢量變化,而cos(Ψ(3))指出第三頂點和第一頂點間的光矢量變化,從而將最大光矢量變化與光矢量閾值相比較。
54.如權利要求50所述自適應濃淡過程,其特征在于多邊形包含帶有第一、第二和第三頂點的三角形,所述判定各頂點眼點矢量和頂點間眼點矢量變化的步驟按照下式判定最大眼點矢量變化(cos(η))cos(η)=min(cos(η(1)),cos(η(2)),cos(η(3)))其中cos(η(1))=Vx(1)*Vx(2)+Vy(1)*Vy(2)+Vz(1)*Vz(2)cos(η(2))=Vx(2)*Vx(3)+Vy(2)*Vy(3)+Vz(2)*Vz(3)cos(η(3))=Vx(3)*Vx(1)+Vy(3)*Vy(1)+Vz(3)*Vz(1)其中Vx(1)、Vy(1)、Vz(1)為第一頂點的眼點矢量的x、y和z分量,Vx(2)、Vy(2)、Vz(2)為第二頂點的眼點矢量的x、y和z分量,Vx(3)、Vy(3)、Vz(3)為第三頂點的眼點矢量的x、y和z分量,cos(η(1))指出第一頂點和第二頂點間的眼點矢量變化,cos(η(2))指出第二頂點和第三頂點間的眼點矢量變化,而cos(η(3))指出第三頂點和第一頂點間的眼點矢量變化,以及,從而將最大眼點矢量變化與眼點矢量閾值相比較。
55.如權利要求50所述自適應濃淡過程,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形,判定最大變化的步驟包括根據下式確定最大變化的步驟cos(ΦΨη)=min(a(Φ)*cos(Φ),a(Ψ)*cos(Ψ),a(η)*cos(η))其中cos(φ)為最大曲率變化,a(φ)為曲率加權,cos(Ψ)為最大光矢量變化,a(Ψ)為光矢量加權,而cos(η)為最大眼點矢量變化而a(η)為眼點矢量加權。
56.如權利要求49所述自適應濃淡過程,其特征在于,使用零階、1階和2階的反射方程,所述零階方程包含點積L·N,其中L為平均光矢量,而N為到該表面的平均法向矢量,所述一階方程包含C=(Ka+Kd*cos(α))*C其中,C為象素色彩,Ka為背景加權,Kd為漫反射加權而cos(α)等于點和L·N。所述二階方程包含C=(Ka+Kd*cos(α(x,y)))*C其中C為象素色彩,Ka為背景加權,Kd為漫反射加權,cos(α(x,y))等于L(x,y)·N(x,y),L(x,y)表示歸一化光矢量,而N(x,y)表示該表面的歸一化法矢量。
57.一種用于在圖形顯示器上產生所顯示圖形圖象中的濃淡圖象的設備,所述圖形顯示器包含象素矩陣、所述圖形圖象按照光源形成濃淡,所述的產生的濃淡圖象的質量由用戶規(guī)定,所述設備包含中央處理器(CPU)、存儲器、與顯示器相連的幀緩沖器,所述濃淡圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述濃淡圖象,所述設備還包含與CPU和幀緩沖器耦合的自適應濃淡裝置,該裝置包含接收定義圖形圖象的圖形圖象象素數據的輸入裝置,按照圖形圖象象素數據位置進行分組的裝置,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量,用于選擇用來確定每個多邊形的反射的反射方程階數的選擇裝置,其中最高階的反射方程產生多邊形的最高質量的反射,所述選擇裝置包含判定每個頂點光矢量的光矢量判定裝置,用于判定每個頂點法線和每個頂點光矢量的點積以及各頂點的點積之間最大數值差的漫反射判定裝置,用于將各頂點的點積之間的最大差至少與第一閾值和第二閾值相比較的漫反射比較裝置,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值小于第一閾值,控制裝置選擇低于第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則控制裝置選擇第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第二閾值,則控制裝置選擇第二預定階的預定階的反射方程,用于判定多邊形反射的反射判定裝置,所述裝置接收由選擇裝置判定的階數的反射方程并使用該反射方程判定多邊形反射并產生表示濃淡多邊形圖象的修改后的象素數據,與幀緩沖器相連接以將表示濃淡多邊形的象素數據輸出到幀緩沖器的輸出裝置,以及與幀緩沖器和顯示器相連接,用于讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而該設備按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
58.如權利要求57所述設備,其特征在于至少使用4個階的反射方程。
59.如權利要求57所述設備,其特征在于,所用最高階反射方程為二階方程。
60.如權利要求59所述設備,其特征在于,第一預定階的反射方程為一階反射方程。
61.如權利要求59所述設備,其特征在于,第二預定階的反射方程為二階反射方程。
62.如權利要求59所述設備,其特征在于,低于第一預定階的反射方程為零階反射方程。
63.如權利要求59所述設備,其特征在于還包含由用戶可選擇的閾值設置裝置以使用戶能夠根據要求質量設置閾值。
64.如權利要求63所述設備,其特征在于,如果精確濃淡的高質圖象是合乎要求的,由所述閾值設置裝置設置所述第一和第二閾值為一低值以便用二階反射方程再現該多邊形。
65.如權利要求63所述設備,其特征在于,如果要求快速重現濃淡圖象,由所述閾值設置裝置設置所述第一和第二閾值為高值從而用零階或一階反射方程重現多邊形。
66.如權利要求59所述設備,其特征在于,將第二閾值設在0.9到0.6范圍內。
67.如權利要求59所述設備,其特征在于,將第二閾值設為近似等于0.1的數值。
68.如權利要求57所述設備,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形。
69.如權利要求59所述設備,其特征在于,零階、一階和二階反射方程共享存儲器,所述控制裝置檢索所選反射方程并將所選反射方程輸出到反射判定裝置。
70.如權利要求57所述設備,其特征在于,所述反射判定裝置使用對重現圖象正向差分判定多邊形的反射。
71.如權利要求70所述設備,其特征在于,所述反射判定裝置使用重現圖象的平面方程判定多邊形的反射。
72.如權利要求71所述設備,其特征在于,所述反射判定裝置包含用于根據所接收反射方程判定多邊形各頂點反射的裝置,用于判定相鄰多邊形頂點間差分變量的裝置,所述差分變量包括含有相鄰頂點法向之間差量的法向差分變量、含有相鄰頂點位置之間差量的位置差分變量以及等于由相鄰頂點的象素數據限定色彩差的彩色差分變量。使用差分變量對多邊形各頂點內插確定的反射以確定反射和多邊形象素的修改的象素數據的裝置。
73.一種用于在圖形顯示器上產生所顯示圖形圖象中的濃淡圖象的設備,所述圖形顯示器包含象素矩陣、所述圖形圖象按照光源形成濃淡,所述的產生的濃淡圖象的質量由用戶確定,所述設備包含中央處理器(CPU)、存儲器、與顯示器相連的幀緩沖器,所述濃淡圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器顯示所述濃淡圖象,所述設備還包含與CPU和幀緩沖器耦合的自適應濃淡裝置,該裝置包含接收定義圖形圖象的圖形圖象象素數據的輸入裝置,按照圖形圖象象素數據位置進行分組的裝置,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量;用于選擇用來確定每個多邊形的反射的反射方程階數的選擇裝置,其中最高階的反射方程產生多邊形的最高質量的反射,所述選擇裝置包含判定每個頂點眼點矢量的眼點矢量判定裝置,用于判定各頂點反射矢量的反射矢量判定裝置,所述反射矢量是光反射離開多邊表表面的矢量。用于判定每個頂點反射矢量和每個頂點眼點矢量的點積以及各頂點的點積之間最大數值差的鏡面反射判定裝置,用于將各頂點的點積之間的差至少與第一閾值和第二閾值相比較的鏡面反射比較裝置,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值大于或等于第一閾值,控制裝置選擇低于第一預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則控制裝置選擇第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第二閾值,則控制裝置選擇第二預定階的預定階的反射方程,用于判定多邊形反射的反射判定裝置,所述裝置接收由選擇裝置判定的階數的反射方程并使用該反射方程判定多邊形反射并產生表示濃淡多邊形圖象的修改后的象素數據,與幀緩沖器相連接以將表示濃淡多邊形的象素數據輸出到幀緩沖器的輸出裝置,以及與幀緩沖器和顯示器相連接,用于讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而該設備按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
74.如權利要求73所述設備,其特征在于至少使用4個階的反射方程。
75.如權利要求73所述設備,其特征在于,所用最高階反射方程為二階方程。
76.如權利要求75所述設備,其特征在于,第二預定階的反射方程為二階反射方程。
77.如權利要求75所述設備,其特征在于,第一預定階的反射方程為一階反射方程。
78.如權利要求75所述設備,其特征在于,低于第一預定階的反射方程為零階反射方程。
79.如權利要求75所述設備,其特征在于還包含由用戶可選擇的閾值設置裝置以使用戶能夠根據要求質量設置閾值。
80.如權利要求79所述設備,其特征在于,如果精確濃淡的高質量是合乎要求的,由所述閾值設置裝置設置所述第一和第二閾值為一低值以便用于二階反射方程再現該多邊形。
81.如權利要求79所述設備,其特征在于,如果要求快速重現濃淡圖象,由所述閾值設置裝置設置所述第一和第二閾值為高值從而用零階或一階反射方程重現多邊形。
82.如權利要求73所述設備,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形。
83.如權利要求75所述設備,其特征在于,零階、一階和二階反射方程共享存儲器,所述控制裝置檢索所選反射方程并將所選反射方程輸出到反射判定裝置。
84.如權利要求73所述設備,其特征在于,所述反射判定裝置使用對重現圖象正向差分判定多邊形的反射。
85.如權利要求84所述設備,其特征在于,所述反射判定裝置使用重現圖象正向差分判定多邊形的反射。
86.如權利要求85所述設備,其特征在于,所述反射判定裝置使用重現圖象的平面方程判定多邊形的反射。
87.在包含中央處理器、存儲器、幀緩沖器、和與幀緩沖器相連用于顯示所顯示的圖形圖象的圖形顯示器圖形顯示系統中,所述圖形顯示器包含一象素陣列,所述圖形圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述圖形圖象,一種產生濃淡圖形圖象的自適應過程根據光源對所述圖形圖象形成濃淡,所產生的所述濃淡圖象的質量由用戶規(guī)定,所述濃淡過程包含以下步驟接收定義圖形圖象的圖形圖象象素數據,按照圖形圖象象素數據位置進行分組,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量;選擇用來確定每個多邊形的反射的反射方程的階數,其中最高階的反射方程產生多邊形的最高質量的反射,所述步驟包含判定每個頂點光矢量,判定每個頂點法矢量和每個頂點光矢量的點積以及各頂點的點積之間最大數值差,將各頂點的點積之間的最大差至少與第一閾值和第二閾值相比較,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值小于第一閾值,選擇低于第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則選擇第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第二閾值,則選擇第二預定階的預定階的反射方程,使用選擇來判定多邊形反射的反射方程判定多邊形反射,并產生代表濃淡多邊形圖象的修改的象素數據,將表示濃淡多邊形的象素數據輸出到幀緩沖器,讀出幀緩沖器中存儲的修改的象素數據,并用該修改的象素數據所規(guī)定的顏色激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
88.如權利要求87所述自適應濃淡過程,其特征在于至少使用4個階的反射方程。
89.如權利要求87所述自適應濃淡過程,其特征在于,所用最高階反射方程為二階方程。
90.如權利要求87所述自適應濃淡過程,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形。
91.在包含中央處理器、存儲器、幀緩沖器、和與幀緩沖器相連用于顯示所顯示的圖形圖象的圖形顯示器圖形顯示系統中,所述圖形顯示器包含一象素陣列,所述圖形圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述圖形圖象,一種產生濃淡圖形圖象的自適應過程根據光源對所述圖形圖象形成濃淡,所產生的所述濃淡圖象的質量由用戶規(guī)定,所述濃淡過程包含以下步驟接收定義圖形圖象的圖形圖象象素數據,按照圖形圖象象素數據位置進行分組,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量;選擇用來確定每個多邊形的反射的反射方程的階數,所述步驟包含判定每個頂點眼點矢量,判定各頂點反射矢量,所述反射矢量是光反射離開多邊形表面的矢量,判定每個頂點法向矢量和每個眼點矢量的點積以及各頂點的點積之間最大數值差,用于將各頂點的點積之間的最大差至少與第一閾值和第二閾值相比較,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值小于第一閾值,選擇低于第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則選擇第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第二閾值,則選擇第二預定階的預定階的反射方程,判定多邊形反射,所述裝置接收中選擇裝置確定階的反射方程并使用反射方程確定多邊形反射,產生表示濃度多邊形圖象的修改的象素數據,將表示濃淡多邊形的象素數據輸出到幀緩沖器,讀出幀緩沖器中存儲的修改的象素數據,并用該修改的象素數據所規(guī)定的顏色激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的二階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用二階方程時才使用較高階方程。
92.如權利要求91所述自適應濃淡過程,其特征在于至少使用4個階的反射方程。
93.如權利要求91所述自適應濃淡過程,其特征在于,所用最高階反射方程為二階方程。
94.如權利要求91所述自適應濃淡過程,其特征在于,多邊形包含帶有第一、第二和第三頂點的三角形。
95.一種用于在圖形顯示器上產生所顯示圖形圖象中的濃淡圖象的設備,所述圖形顯示器包含象素矩陣、所述圖形圖象按照光源形成濃淡,所述的產生的濃淡圖象的質量由用戶確定,所述設備包含中央處理器(CPU)、存儲器、與顯示器相連的幀緩沖器,所述濃淡圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述濃淡圖象,所述設備還包含與CPU和幀緩沖器耦合的自適應濃淡裝置,該裝置包含接收定義圖形圖象的圖形圖象象素數據的輸入裝置,按照圖形圖象象素數據位置進行分組的裝置,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量,用于選擇用來確定每個多邊形的反射的反射方程階數的選擇裝置,其中最高階的反射方程產生多邊形的最高質量的反射,所述選擇裝置包含判定每個頂點光矢量和各頂點間光矢量變化的光矢量判定裝置,所述光矢量是每個頂點法矢量和光源相對該頂點位置的函數,用于判定每個頂點法向矢量和每個頂點光矢量的點積以及各點積之間最大數值差的漫反射判定裝置,用于將各頂點的點積之間的最大差至少與第一閾值和第二閾值相比較的漫反射比較裝置,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值小于第一閾值,控制裝置選擇低于第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則控制裝置選擇第一預定階的預定階的反射方程,用于按照多邊形頂點法向矢量決定多邊形表面曲率變化量和頂點間曲率變化的曲率判定裝置,用于將頂點之間曲率變化量與指示大曲變化量的曲率閾值進行比較的曲率比較裝置,如果頂點之間曲率變化量大于或等于曲率閾值,則控制裝置選擇最高階反射方程,用于將頂點間光矢量變化與指示光矢量間大的變化量的光矢量閾值相比較的光矢量比較裝置,如果頂點間光矢量變化量大于或等于光矢量閾值,則控制裝置選擇最高階數的反射方程,用于判定頂點間曲率變化和頂點間光矢量變化中最大變化的最大變化判定裝置,如果將該最大變化與多個用于判定所用反射方程階數的閾值相比較的最大變化比較裝置,每個閾值繪出可用預定階數的反射方程來產生質量圖象的最大變化的輪廓,以及,如果最大變化小于或等于描述可將第一預定階反射方程用于產生質量圖象的最大變化的閾值而大于描述用低于第一預定階的預定階的反射方程產生質量圖象的最大變化的閾值時所述控制裝置選擇預定階的反射方程,用于判定多邊形反射的反射判定裝置,所述裝置接收由選擇裝置判定的階數的反射方程并使用該反射方程判定多邊形反射并產生表示濃淡多邊形圖象的修改后的象素數據,與幀緩沖器相連接以將表示濃淡多邊形的象素數據輸出到幀緩沖器的輸出裝置,以及與幀緩沖器和顯示器相連接的顯示控制裝置,用于讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而該設備按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
96.如權利要求95所述設備,其特征在于,至少使用4個階的反射方程。
97.如權利要求96所述設備,其特征在于曲率閾值對應于可用一階方程產生的質量圖象的最大曲率變化。
98.如權利要求96所述設備,其特征在于光矢量閾值對應于可用一階方程產生的質量圖象的最大光矢量變化。
99.如權利要求95所述設備,其特征在于,所述選擇裝置還包含用于判定每個頂點眼點矢量和頂點間眼點矢量變化的眼點矢量判定裝置,所述眼點矢量為眼點位置相對于頂點位置的函數,用于將頂點間眼點矢量變化與指示眼點矢量之間大的變化量的眼點矢量閾值加以比較的眼點矢量比較裝置,如果頂點間眼點矢量變化量大于或等于眼點矢量閾值,則控制裝置選擇最高階反射方程,以及所述最大變化判定裝置判定頂點間曲率變化頂點間光矢量變化和頂點間眼點矢量變化中的最大變化。
100.如權利要求99所述的設備,其特征在于所用最高階反射方程為二階方程,而眼點矢量閾值對應在于用一階方程產生的質量圖象的最大眼點矢量變化。
101.在包含中央處理器、存儲器、幀緩沖器、和與幀緩沖器相連用于顯示所顯示的圖形圖象的圖形顯示器圖形顯示系統中,所述圖形顯示器包含一象素陣列,所述圖形圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述圖形圖象,一種產生濃淡圖形圖象的自適應過程根據光源對所述圖形圖象形成濃淡,所產生的所述濃淡圖象的質量由用戶規(guī)定,所述濃淡過程包含以下步驟接收定義圖形圖象的圖形圖象象素數據,按照圖形圖象象素數據位置進行分組,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量,選擇用來確定每個多邊形的反射的反射方程的階數,其中最高階的反射方程產生多邊形的最高質量的反射,所述步驟包含判定每個頂點光矢量,所述光矢量是每個頂點法矢量和光源位置相對于頂點的函數,判定每個頂點法矢量和每個頂點光矢量的點積以及各頂點點積之間最大數值差,將各頂點的點積之間的最大差至少與第一閾值和第二閾值相比較,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值小于第一閾值,選擇低于第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則選擇第一預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第二閾值,則按照多邊形頂點法向矢量決定多邊形表面曲率變化量和頂點間曲率變化,將頂點之間曲率變化量與指示大曲率變化量的曲率閾值進行比較,如果頂點之間曲率變化量大于或等于曲率閾值,選擇最高階反射方程,判定各頂點中光矢量變化,將頂點間光矢量變化與指示光矢量間大的變化量的光矢量閾值相比較,如果頂點間光矢量變化量大于或等于光矢量閾值,則選擇最高階數的反射方程,判定頂點間曲率變化和頂點間光矢量變化中最大變化,將該最大變化與多個用于判定所用反射方程階數的閾值相比較,每個閾值繪出可用預定階數的反射方程來產生質量圖象的最大變化的輪廓,以及,如果最大變化小于或等于描述可將第一預定階反射方程用于產生質量圖象的最大變化的閾值而大于描述用低于第一預定階的反射方程產生質量圖象的最大變化的閾值時選擇預定階的反射方程,使用選擇來判定多邊形反射的反射方程判定多邊形反射,并產生代表濃淡多邊形圖象的修改的象素數據來判定多邊形反射,將表示濃淡多邊形的象素數據輸出到幀緩沖器,讀出幀緩沖器中存儲的修改的象素數據,并用該修改的象素數據所規(guī)定的顏色激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
102.如權利要求101所述自適應濃淡過程,其特征在于,所用最高階反射方程為二階方程。
103.如權利要求101所述自適應濃淡過程,其特征在于,如果各頂點點積間最大差大于或等于二階閾值,所述過程還包含以下步驟判定每個頂點眼點矢量和頂點間眼點矢量變化,所述眼點矢量為眼點位置相對于頂點位置的函數,將頂點間眼點矢量變化與指示眼點矢量之間大的變化量的眼點矢量閾值加以比較,如果頂點間眼點矢量變化量大于或等于眼點矢量閾值,則選擇最高階反射方程,以及所述最大變化判定步驟判定頂點間曲率變化頂點間光矢量變化和頂點間眼點矢量變化中的最大變化。
104.一種用于在圖形顯示器上產生所顯示圖形圖象中的濃淡圖象的設備,所述圖形顯示器包含象素矩陣、所述圖形圖象按照光源形成濃淡,所述的產生的濃淡圖象的質量由用戶規(guī)定,所述設備包含中央處理器(CPU)、存儲器、與顯示器相連的幀緩沖器中,所述濃淡圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述濃淡圖象,所述設備還包含與CPU和幀緩沖器耦合的自適應濃淡裝置,該裝置包含接收定義圖形圖象的圖形圖象象素數據的輸入裝置,按照圖形圖象象素數據位置進行分組的裝置,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量;用于選擇用來確定每個多邊形的反射的反射方程階數的選擇裝置,其中最高階的反射方程產生多邊形的最高質量的反射,所述選擇裝置包含判定各頂點眼點矢量的眼點矢量判定裝置,判定各頂點法向矢量和各頂點眼點矢量的點積與各頂點點積間差值的鏡面反射判定裝置,用于將各頂點的點積之間的差至少與第一閾值和第二閾值相比較的鏡面反射比較裝置,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值小于第一閾值,控制裝置選擇低于第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則控制裝置選擇第一預定階的預定階的反射方程,用于按照多邊形頂點法向矢量判定多邊形表面曲率變化量和頂點間曲率變化的曲率判定裝置;用于將頂點之間曲率變化量與指示大曲變化量的曲率閾值進行比較的曲率比較裝置,如果頂點間曲率變化量大于或等于曲率閾值,則控制裝置選擇最高階反射方程,用于將頂點間光矢量變化與指示光矢量間大的變化量的光矢量閾值相比較的光比較裝置,如果頂點間光矢量變化量大于或等于光矢量閾值,則控制裝置選擇最高階數的反射方程;用于判定頂點間曲率變化和頂點間光矢量變化中最大變化的最大變化判定裝置,用于將該最大變化與多個用于判定所用反射方程階數的閾值相比較的最大變化比較裝置,每個閾值繪出可用預定階數的反射方程來產生質量圖象的最大變化的輪廓,以及,如果最大變化小于或等于描述可將第一預定階反射方程用于產生質量圖象的最大變化的閾值而大于描述用低于第一預定階的預定階的反射方程產生質量圖象的最大變化的閾值時所述控制裝置選擇預定階的反射方程,用于判定多邊形反射的反射判定裝置,所述裝置接收由選擇裝置判定的階數的反射方程并使用該反射方程判定多邊形反射并產生表示濃淡多邊形圖象的修改后的象素數據,與幀緩沖器相連接以將表示濃淡多邊形的象素數據輸出到幀緩沖器的輸出裝置,以及與幀緩沖器和顯示器相連接的顯示控制裝置,用于讀出幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而該設備按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
105.在包含中央處理器、存儲器、幀緩沖器、和與幀緩沖器相連用于顯示所顯示的圖形圖象的圖形顯示器圖形顯示系統中,所述圖形顯示器包含一象素陣列,所述圖形圖象由多個象素數據定義,所述象素數據存儲于幀緩沖器中,每個象素數據包含顯示器上象素位置和該象素的色彩,按照幀緩沖器中存儲的象素數據在顯示器上顯示所述圖形圖象,一種產生濃淡圖形圖象的自適應過程根據光源對所述圖形圖象形成濃淡,所產生的所述濃淡圖象的質量由用戶規(guī)定,所述濃淡過程包含以下步驟接收定義圖形圖象的圖形圖象象素數據,按照圖形圖象象素數據位置進行分組,所述的組表示多邊形,每個所述多邊形由其各頂點位置及每個頂點法矢量所定義,所述法矢量為該頂點在多邊形表面的法矢量,選擇用來確定每個多邊形的反射的反射方程的階數,其中最高階的反射方程產生多邊形的最高質量的反射,所述步驟包含判定各頂點眼點矢量,所述眼點矢量是眼點位置相對于頂點位置的函數,判定各頂點法向矢量和各頂點眼點矢量的點積與各頂點點積間差值,將各頂點的點積之間的最大差至少與第一閾值和第二閾值相比較,所述第一閾值指出至少需要使用第一預定階的反射方程的多邊形表面的反射變化,第二閾值指出至少需要使用高于第一預定階的第二預定階的反射方程的多邊形表面的反射變化,如果各頂點的點積之間的最大差值小于第一閾值,選擇低于第一預定階的預定階的反射方程,如果各頂點的點積之間的最大差值大于或等于第一閾值而小于第二閾值,則選擇第一預定階的預定階的反射方程,如果各頂點點積之間的最大差大于或等于第二閾值,則按照多邊形頂點法向矢量判定多邊形表面曲率變化量和頂點間曲率變化,將頂點之間曲率變化量與指示大曲變化量的曲率閾值進行比較,如果頂點之間曲率變化量大于或等于曲率閾值,則選擇最高階反射方程,判定頂點中光矢量變化,將該頂點間光矢量變化與指示光矢量間大的變化量的閾值相比較,如果頂點間光矢量變化量大于或等于光矢量閾值,則選擇最高階數的反射方程,判定頂點間眼點矢量,將頂點間眼點矢量變化與指示眼點矢量間大的變化量的眼點矢量閾值進行比較,如果頂點間眼點矢量變化量大于或等于眼點矢量閾值,則選擇最高階反射方程,在頂點間曲率變化,頂點間光矢量變化和各頂點間眼點矢量變化中的最大變化,以及將該最大變化與多個用于判定所用反射方程階數的閾值相比較,每個閾值繪出用預定階反射方程產生質量圖象中的最大變化,如果最大變化小于或等于描述用第一預定階反射方程產生質量圖象最大變化的閾值而大于描述用低于第一預定階的預定階的反射方程產生質量圖象最大變化的閾值時,則選擇預定階的反射方程,使用選擇來判定多邊形反射的反射方程來判定多邊形反射并產生表示濃淡多邊形圖象的修改后象素數據,將表示濃淡多邊形的象素數據輸出到幀緩沖器,以及讀出在幀緩沖器中存儲的修改的象素數據并以修改的象素數據所規(guī)定的色彩激活顯示器上對應象素以在顯示器上產生濃淡多邊形圖象,從而該設備按曲率和光源變化選擇圖形圖象每個多邊形的反射方程的階數并使昂貴的費時的較高階反射方程用得最少,以及當測量指出頂點間測量的變化表明多邊形反射大到足以有理由使用較高階方程時才使用較高階方程。
全文摘要
本發(fā)明的方法和設備使用自適應濃淡方法來實時產生濃淡圖象。首先對多邊形各頂點計算色彩和強度。然后執(zhí)行系列測試判定用于對頂點間多邊形內插色彩和強度的某階方程。使用該技術,略有或沒有曲率的多邊形及無窮遠光源(最簡單濃淡形式)可使用極快的低階方程對多邊形內插。而對大曲率和(或)位置光源,如必要,則使用需要增加計算時間產生理想濃淡效果的較高階方程。
文檔編號G06T15/50GK1058480SQ91105218
公開日1992年2月5日 申請日期1991年7月26日 優(yōu)先權日1990年7月26日
發(fā)明者基圖爾特·威爾斯, 詹姆斯·范盧, 杰克·R·麥基翁, 穆昆·巴克塔 申請人:太陽微系統有限公司