专利摘要:
可藉由計算相機線上之可見性來履行多重檢視柵格化。可沿掃描線疊代評估邊緣方程式。可使用單指令多重資料指令集來評估邊緣方程式。
公开号:TW201308980A
申请号:TW101113961
申请日:2012-04-19
公开日:2013-02-16
发明作者:Tomas G Akenine-Moller;Magnus Andersson;Bjorn Johnsson
申请人:Intel Corp;
IPC主号:G06T11-00
专利说明:
分析型多重檢視柵格化
本發明主要有關於電腦,尤其關於圖形處理。
顯示器的技術已有變動,且3D顯示器及3D電視已逐漸變成主流,同時3D在電影烷中已遍及於全世界。下一代的任天堂(Nintendo)手持遊戲裝置,Nintendo 3DS,將會具有自動立體顯示器。另外,於2010年1月在韓國發行了公眾立體電視,且廣告公司越來越多使用3D顯示器。總言之,3D顯示器很明顯地係很熱門的領域,但卻少有針對這種顯示器之3D圖形的特殊演算法。
優化的柵格化演算法可用於立體及3D多重檢視圖形。該演算法係基於分析運算,其和多重檢視圖形之標準柵格化不同,該標準柵格化使用類似累積緩衝的技術或隨機柵格化。為了呈現立體或多重檢視顯示器的即時圖形,需要頗高的品質,尤其係針對失焦的物體。目前的解決方法無法以良好的方式來解決這個問題,因為若要在這些困難的區域中達到高品質,以運算及記憶體頻寬使用而言代價會非常高。
於下,粗體字符為齊性2D空間中的向量(x,y,w)。已知時間連續邊緣方程式可寫成:e(t)=a(t)x+b(t)y+c,針對經過兩個頂點p 1 及p 0 的一個邊緣,其中(a,b,c)=(p 1 ×p 0 )=t2 f+tg+h,在頂點線性移動的假設下:p i(t)=(1-t)q i+tr i
這些向量f、g、及h可計算成:f=(r 1-q 1)×(r 0-q 0)
g=q 1×(r 0-q 0)+(r 1-q 1)×q 0
h=q 1×q 0
如果聚焦在單一畫素上,可顯示出運動模糊的邊緣方程式會變成:e(t)=αt2+βt+γ。
注意到qiy=riy且qiw=riw(針對多重檢視設定)。亦即,針對一個移動頂點p i(t)的y座標和w座標,針對起始位置q i及結束位置r i為相同,如第1圖中所示。因為這些約束的關係,r 0-q 0=(r0x-q0x,0,0)且r 1-q 1=(r1x-q1x,0,0),且使用此來優化上述f及g之計算。針對最高次的項,即f,這有利因為f=(0,0,0)。當簡化g的表式時,會得到:g=(0,q1w(r0x-q0x)-q0w(r1x-q1x),q0y(r1x-q1x)-q1y(r0x-q0x)),同時h=q 1×q 0維持一個任意的向量。
所以,總結來說,可獲得:f=(0,0,0)、g=(0,q1w(r0x-q0x)-q0w(r1x-q1x),q0y(r1x-q1x)-q1y(r0x-q0x))、且h=q 1×q 0
這在運算上比先前針對廣義的運動模糊之表式來得不昂貴許多。這些運算會在三角形設定中進行,且雖然有較快速的三角形設定為有益,真實的收獲來自於本發明的方程式使求根變得快上許多的事實。這係因為f=(0,0,0),其意指e(t)=αt2+βt+γ變成e(t)=αt+β,亦即,一次多項式而非二次多項式(注意到α及β不一定為二次多項式中的相同α及β)。因此,在本發明的優化情形中,邊緣方程式的參數(a,b,c)變成:(a,b,c)=(h x,g yt+h y,g zt+h z)
可見到,a不再為t的函數,且直覺上,可藉由比擬非齊次邊緣方程式來了解此,其中n=(a,b)為邊緣的「法線」。將此法線計算成n=(a,b)=(-(y1-y0),x1-x0),其中(x0,y0)及(x1,y1)為邊緣的螢幕空間頂點。可見到,a僅取決於y分量,且針對多重檢視情況,y座標針對所有t維持相同,如上所見。結論變成a必定為常數。
針對一個特定的取樣點(x0,y0),邊緣方程式變成:e(t)=t(gyy0+gz)+(hxx0+hyy0+hz)=αt+β。
如果e(t)>0,則內部函數i(t)等於0,否則等於1。可見性函數係界定為v(t)=i0(t)i1(t)i2(t),此由Gribel et al.“Analytical Motion Blur Rasterization With Compression”,High-Performance Graphics,pp.163-172,2010所述。取樣點在其中v(t)=1的整個區間中係在三角形內,如從第2圖中可見。
時間連續邊緣方程式的二次本質使得三角形得以針對每一個取樣在整個t中覆蓋多個跨度。相反地,歸功於多重檢視邊緣方程式的一次特性,可見性函數將僅針對t中的一個連續區間為v(t)=1,這進一步簡化演算法。
現集中於y=y0的一條特定掃描線,且讓x沿著此掃描線變化。在此情況中,可得出簡化的邊緣方程式:e(x,t)=αt+γ+hxx,其中α=gyy0+gz,且γ=hyy0+hz
現在觀察兩個相鄰畫素(x,y0)及(x+1,y0)會發生什麼事情,並在e(x,t0)=0及e(x+1,t1)=0中求t:t0=(-γ-hxx)/α,t1=t0-hx/α。
這可在於y0的極線平面中見到,如第3圖中所示。
依據這些觀察,發明出一種多重檢視圖形之快速分析柵格化的新演算法。在此有若干不同的實施例。
計算n條掃描線的每一個邊緣方程式之t的起始值,且以n的單指令多重資料(SIMD)寬度,以SIMD指令計算出下n個t值。
在演算法的一實施例中,如第4圖中所示,在螢幕空間中邊限一個進入的三角形(區塊12),並平行處理n條掃描線(區塊14)。針對每一條掃描線(區塊20),計算邊限框中最左邊的畫素之初始t值(區塊22)。另外,計算△t=hx/α,其用來增量t。接下來,進入一個迴路,其中以左到右的順序處理由邊限框及掃描線所覆蓋的每一個畫素。針對每一個畫素評估可見性函數(區塊24),且若測試通過,則處理該畫素片段(區塊26)。此處理可例如透過點取樣涵蓋在(x,y,[t0,t1])之三角形的一些陰影積分近似。在區塊28中增量變數x且在區塊30之檢查判定x是否在邊限框外。若否,則針對每一個邊緣更新ti,其中ti=ti+△t(區塊32)。否則,忽略該畫素,因為在那條掃描線上已完成柵格化。
在區塊16,y設定成等於y+n。在區塊18的檢查判定y-n是否在邊限框外。若是,則完成三角形柵格化,否則,流程疊代回到處理掃描線。
在演算法的另一個實施例中,如第5圖中所示,在左邊標為40a的初始流程中所示的時間處理大小m×n之圖磚(tile)。接收一個三角形並且如區塊42中所示般計算三角形的邊限框。接著在區塊44中,流程進至下一個圖磚。針對每一個圖磚,如區塊46及中間流程40b中所示般處理圖磚。
首先,在流程40b中,針對n條掃描線的每一條,計算初始t值,還有△t=hx/α增量(區塊52)。接著,平行計算圖磚之所有畫素的x及t值(流程40b、區塊54、流程40c、區塊56及58)。也平行評估可見性函數,流程40c及區塊60,且成功的話,處理尚存的取樣(區塊62)(如在先前的實施例中所述般,流程40a,區塊44到48)。否則,完成圖磚(區塊64)。
接著流程返回到第5圖中最左邊的流程40a且在菱形48的檢查判定是否已處理過所有的圖磚。若否,則流程疊代回到區塊44,否則結束柵格化。
藉由分析式解決多重檢視柵格化的問題,可在一些實施例中避免以可見性而言的各種雜訊。在一些實施例中,以可見性而言的品質為確切,亦即無法改善到超過本發明之解答。
亦發明一種有效率地橫移多重檢視三角形的技術。在一些數學後,可得出從一個畫素橫移到相鄰畫素(在x中)僅需簡單的加法之結論,且這使得本發明之橫移演算法(有兩個不同的實施例)特別快速。
在相機線上使用分析可見性運算而非點取樣。研發出沿掃描線或使用SIMD指令集在多條掃描線上快速疊代式評估的特殊邊緣方程式。所有這些在一些實施例中提供了具有高品質的非常快速演算法。
電腦系統130,如第6圖中所示,可包括硬碟機134及可移除式媒體136,藉由匯流排104耦合到晶片組核心邏輯110。電腦系統可為任何電腦系統,包括智慧型行動裝置,比如智慧型電話、平板電腦、或行動網際網路裝置。鍵盤及滑鼠120,或其他傳統組件,可經由匯流排108耦合到晶片組核心邏輯。核心邏輯可經由匯流排105耦合到圖形處理器112,及在一實施例中到中央處理器100。圖形處理器112也可藉由匯流排106耦合到訊框緩衝器114。訊框緩衝器114可藉由匯流排107耦合到顯示器螢幕118。在一實施例中,圖形處理器112可為使用單指令多重資料(SIMD)架構的多線程及多核心平行處理器。
在軟體實作的情況中,相關的碼可儲存在任何適合的半導體、磁性、或光學記憶體中,包括主記憶體132(如在139所示)或圖形處理器內之任何可用的記憶體。因此,在一實施例中,履行第4或5圖中的序列之碼可儲存在非暫態機器或電腦可讀取媒體中,比如記憶體132及/或圖形處理器112及/或中央處理器100,並在一實施例中可由處理器100及/或圖形處理器112執行。
第4及5圖為流程圖。在一些實施例中,可在硬體、軟體、或韌體中實現這些流程圖中所繪示的序列。在一軟體實施例中,非暫態電腦可讀取媒體,比如半導體記憶體、磁性記憶體、或光學記憶體可用來儲存指令並可由處理器執行以實現第4及5圖中所示的序列。
可在各種硬體架構中實現在本文中所述的圖形處理技術。例如,圖形功能可整合到晶片組內。或者,可使用離散的圖形處理器。作為又一實施例,可由包括多核心處理器之通用處理器實現圖形功能。
在整份說明書中對「一實施例」的參照意指連同該實施例所述的特定特徵、結構、或特性係包括在本發明中所涵蓋之至少一實作中。因此,片語「在一實施例中」的出現不一定參照相同的實施例。此外,可以非所述的特定實施例之其他適當的形式創制特定特徵、結構、或特性且所有這種形式落入本申請書的申請專利範圍內。
雖已以相關於有限數量的實施例說明本發明,熟悉此技藝人士可認知到其之各種修改及變異。所附的申請專利範圍意在涵蓋所有這種修改及變異為落入本發明之真實精神與範疇內。
100‧‧‧中央處理器
104‧‧‧匯流排
105‧‧‧匯流排
106‧‧‧匯流排
107‧‧‧匯流排
108‧‧‧匯流排
110‧‧‧晶片組核心邏輯
112‧‧‧圖形處理器
114‧‧‧訊框緩衝器
118‧‧‧顯示器螢幕
120‧‧‧鍵盤及滑鼠
130‧‧‧電腦系統
134‧‧‧硬碟機
132‧‧‧記憶體
136‧‧‧可移除式媒體
第1圖為根據本發明之一實施例的在起始位置t=0的三角形及在起始位置t=1的另一個三角形;第2圖為根據一實施例的邊緣方程式對時間之繪圖並顯示一取樣點在整個區間v(t)=1中係在三角形內;第3圖為根據一實施例的在y0的極線平面中之x,y座標的繪圖;第4圖為根據一實施例的用於多重檢視圖形之快速分析柵格化的演算法之一對流程圖;第5圖顯示根據本發明之另一實施例的複數流程圖;及第6圖為針對本發明之一實施例的示意性繪圖。
权利要求:
Claims (30)
[1] 一種方法,包含:藉由藉由解邊緣方程式來計算相機線上之分析可見性而履行多重檢視柵格化。
[2] 如申請專利範圍第1項所述之方法,包括判定當取樣點於整個區間內都在三角形內時之該區間。
[3] 如申請專利範圍第2項所述之方法,包括沿掃描線疊代評估邊緣方程式。
[4] 如申請專利範圍第3項所述之方法,包括僅使用簡單加法將多重檢視三角形從一畫素橫移到一相鄰水平畫素。
[5] 如申請專利範圍第4項所述之方法,包括平行處理複數掃描線。
[6] 如申請專利範圍第4項所述之方法,包括處理圖磚(tile)中的該些畫素,一次一個圖磚。
[7] 如申請專利範圍第6項所述之方法,包括平行計算在該圖磚中之畫素的值。
[8] 如申請專利範圍第2項所述之方法,包括沿掃描線使用乘法及加法運算來評估邊緣方程式。
[9] 如申請專利範圍第8項所述之方法,包括平行處理複數掃描線。
[10] 如申請專利範圍第8項所述之方法,包括處理圖磚中的該些畫素,一次一個圖磚。
[11] 如申請專利範圍第10項所述之方法,包括平行計算在該圖磚中之畫素的值。
[12] 一種儲存指令之非暫態電腦可讀取媒體,該些指令致能電腦:藉由藉由解邊緣方程式來計算相機線上之分析可見性而履行多重檢視柵格化。
[13] 如申請專利範圍第12項所述之媒體,進一步儲存指令以判定當取樣點於整個區間內都在三角形內時之該區間。
[14] 如申請專利範圍第12項所述之媒體,進一步儲存指令以沿掃描線疊代評估邊緣方程式。
[15] 如申請專利範圍第14項所述之媒體,進一步儲存指令以僅使用簡單加法將多重檢視三角形從一畫素橫移到一相鄰水平畫素。
[16] 如申請專利範圍第15項所述之媒體,進一步儲存指令以平行處理複數掃描線。
[17] 如申請專利範圍第16項所述之媒體,進一步儲存指令以履行畫素上之可見性測試並且若該可見性測試通過的話處理畫素片段。
[18] 如申請專利範圍第13項所述之媒體,進一步儲存指令以沿掃描線使用乘法及加法運算來評估邊緣方程式。
[19] 如申請專利範圍第18項所述之媒體,進一步儲存指令以平行處理複數掃描線。
[20] 如申請專利範圍第18項所述之媒體,進一步儲存指令以處理圖磚中的該些畫素,一次一個圖磚。
[21] 如申請專利範圍第20項所述之媒體,進一步儲存指令以平行計算在該圖磚中之畫素的值。
[22] 一種系統,包含:藉由藉由解邊緣方程式來計算相機線上之分析可見性而履行多重檢視柵格化的處理器;及耦合到該處理器之貯存。
[23] 如申請專利範圍第22項所述之系統,其中該處理器為圖形處理單元。
[24] 如申請專利範圍第23項所述之系統,其中該圖形處理單元使用單指令多重資料指令集。
[25] 如申請專利範圍第22項所述之系統,該處理器判定當取樣點於整個區間內都在三角形內時之該區間。
[26] 如申請專利範圍第22項所述之系統,該處理器沿掃描線疊代評估邊緣方程式。
[27] 如申請專利範圍第26項所述之系統,該處理器僅使用簡單加法將多重檢視三角形從一畫素橫移到一相鄰水平畫素。
[28] 如申請專利範圍第27項所述之系統,該處理器平行處理複數掃描線。
[29] 如申請專利範圍第28項所述之系統,該處理器履行畫素上之可見性測試並且若該可見性測試通過的話處理畫素片段。
[30] 如申請專利範圍第22項所述之系統,該處理器平行計算在該圖磚中之畫素的值。
类似技术:
公开号 | 公开日 | 专利标题
US10438319B2|2019-10-08|Varying effective resolution by screen location in graphics processing by approximating projection of vertices onto curved viewport
US10614549B2|2020-04-07|Varying effective resolution by screen location by changing active color sample count within multiple render targets
EP3111420B1|2019-07-03|Hyper-lapse video through time-lapse and stabilization
US9875554B2|2018-01-23|Surface normal estimation for use in rendering an image
US8970580B2|2015-03-03|Method, apparatus and computer-readable medium rendering three-dimensional | graphics
TWI550551B|2016-09-21|景深網格化
Hornung et al.2009|Interactive pixel‐accurate free viewpoint rendering from images with silhouette aware sampling
US20190213780A1|2019-07-11|Image space-based particle generation modeling
TWI514845B|2015-12-21|分析型多重檢視柵格化
WO2013101167A1|2013-07-04|Five-dimensional rasterization with conservative bounds
JP6223916B2|2017-11-01|情報処理装置、方法及びプログラム
JP2018067106A|2018-04-26|画像処理装置、画像処理プログラム、及び画像処理方法
Okamoto et al.2016|A point-based virtual reality system for supporting product development
Meder et al.2016|Decoupling Rendering and Display Using Fast Depth Image Based Rendering on the GPU
US11080924B2|2021-08-03|Optimized computation of perspective interpolants
Shegeda et al.2015|A gpu-based real-time algorithm for virtual viewpoint rendering from multi-video
US20200327713A1|2020-10-15|Real-time potentially visible set for streaming rendering
Ko et al.2014|Real-time multi-view depth generation using CUDA multi-GPU
Kolic et al.2012|Camera space shadow maps for large virtual environments
JP2012160120A|2012-08-23|画像処理装置、画像処理方法及びプログラム
JP6379673B2|2018-08-29|描画システム、描画装置、計算装置、描画プログラム、及び描画プロセッサ基盤
Haurum et al.2017|Pixel Reprojection of 360 Degree Renderings for Small Parallax Effects
Kalaiah et al.2007|A unified graphics rendering pipeline for autostereoscopic rendering
同族专利:
公开号 | 公开日
WO2012148729A2|2012-11-01|
EP2702584B1|2018-12-19|
WO2012148729A3|2012-12-20|
EP2702584A4|2015-03-18|
TWI514845B|2015-12-21|
US9218678B2|2015-12-22|
US20120269423A1|2012-10-25|
CN103503058A|2014-01-08|
CN103503058B|2016-12-14|
EP2702584A2|2014-03-05|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
US5809219A|1996-04-15|1998-09-15|Silicon Graphics, Inc.|Analytic motion blur coverage in the generation of computer graphics imagery|
US6999100B1|2000-08-23|2006-02-14|Nintendo Co., Ltd.|Method and apparatus for anti-aliasing in a graphics system|
US7079133B2|2000-11-16|2006-07-18|S3 Graphics Co., Ltd.|Superscalar 3D graphics engine|
US7218331B2|2003-05-13|2007-05-15|Via Technologies, Inc.|Bounding box in 3D graphics|
US7446780B1|2003-08-29|2008-11-04|Nvidia Corporation|Temporal antialiasing in a multisampling graphics pipeline|
EP1542167A1|2003-12-09|2005-06-15|Koninklijke Philips Electronics N.V.|Computer graphics processor and method for rendering 3D scenes on a 3D image display screen|
JP4030519B2|2004-04-15|2008-01-09|株式会社東芝|画像処理装置および画像処理システム|
US7079156B1|2004-05-14|2006-07-18|Nvidia Corporation|Method and system for implementing multiple high precision and low precision interpolators for a graphics pipeline|
WO2007064280A1|2005-12-01|2007-06-07|Swiftfoot Graphics Ab|Computer graphics processor and method for rendering a three-dimensional image on a display screen|
US7622907B2|2006-09-27|2009-11-24|The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration|Device, system and method for a sensing electrical circuit|
US8139058B2|2006-11-03|2012-03-20|Vivante Corporation|Hierarchical tile-based rasterization algorithm|
US7791605B2|2007-05-01|2010-09-07|Qualcomm Incorporated|Universal rasterization of graphic primitives|
US20090174704A1|2008-01-08|2009-07-09|Graham Sellers|Graphics Interface And Method For Rasterizing Graphics Data For A Stereoscopic Display|
US8179399B2|2008-02-11|2012-05-15|Stmicroelectronics S.R.L.|Rasterizing method|
US20120081357A1|2010-10-01|2012-04-05|Martin Habbecke|System and method for interactive painting of 2d images for iterative 3d modeling|
US9082228B2|2011-01-12|2015-07-14|Intel Corporation|Analytical motion blur rasterization with compression|
US8854377B2|2011-02-24|2014-10-07|Intel Corporation|Hierarchical motion blur rasterization|
US8774450B2|2011-04-25|2014-07-08|Xerox Corporation|Unauthorized text alteration prevention with contour following background patterns|
US9218678B2|2011-04-25|2015-12-22|Intel Corporation|Multi-view rasterization using an analyticl visibility function|US9218678B2|2011-04-25|2015-12-22|Intel Corporation|Multi-view rasterization using an analyticl visibility function|
CN104517541B|2015-01-08|2018-04-27|京东方科技集团股份有限公司|多视场显示部件、图案化遮蔽层和多视场显示装置|
法律状态:
优先权:
申请号 | 申请日 | 专利标题
US13/093,190|US9218678B2|2011-04-25|2011-04-25|Multi-view rasterization using an analyticl visibility function|
[返回顶部]