本發明涉及圖像處理技術領域,尤其是涉及一種改進的高維空間自適應采樣方法。
背景技術:
高真實感圖像繪制技術所采用的光線跟蹤算法主要有三部分組成:對攝像機及場景所對應的維度進行采樣,生成連接光源與攝像機的光路;計算光路對應的亮度;根據采樣信息以及其對應光路的亮度信息對圖像進行重建。
光路亮度的計算所涉及的物理模型是基于能量守恒的光照亮度繪制方程和雙向反射分布函數,前者通過積分的形式給出了在某點處出射光線亮度相對于所有入射光線亮度的數學公式表述。后者用于計算在某點出入射光線與出射光線的在不同方向上的能量分布,可以很好的表現出場景中的物體表面的材質信息,例如:塑料材質,金屬材質,玻璃材質等。通過上述方程及函數可以計算出光路中光線每次反射的能量變化,從而得到光路最終對應的亮度。計算機圖形學中針對采樣算法的研究層出不窮,這里僅列舉近些年的一些比較有代表性的研究成果。
自適應采樣技術被Whitted提出,其算法首先用規則的網格對圖像空間進行稀疏采樣,進一步的對于網格中邊角處采樣點對應亮度方差較大的網格進行細分,并遞歸重復上述過程。盡管Whitted的方法是基于自適應的,但是卻不具有隨機性,因此所得圖像會產生失真。為了避免這一現象,Mitchell、Bolin和Rigau等人提出了隨機的自適應采樣技術,算法的采樣點隨機生成,并在采樣點對應光路亮度方差較大的地方進行加密采樣。上述方法的提出很大程度上降低了的到相同質量的圖像的采樣率需求。盡管上述算法在一般的光線跟蹤算法上取得了很好的效果,但是隨著運動模糊、景深效果的引入所帶來的采樣空間維度的提升使得上述方法所得圖像仍具有很大的噪聲。高維空間光路的思想被Walter提出以解決這一問題,但是該思想在生成采樣點的過程中需要對采樣點進行篩選,在采樣率需求較大的情況下性能很低。進一步,Toshiya提出了高維空間自適應采樣算法,該算法首先在高維空間上進行隨機的稀疏采樣,在采樣點對應亮度方差較大的地方進行細分并加密采樣,取得了很好的結果。然而這種方法一方面不能很好的自適應不同維度的縮放尺度,另一方面由于采樣點分布不均造成了整體圖像失真。
技術實現要素:
本發明的目的是針對上述問題提供一種改進的高維空間自適應采樣方法。
本發明的目的可以通過以下技術方案來實現:
一種改進的高維空間自適應采樣方法,用于對圖像進行空間上的重建,所述方法包括下列步驟:
1)在高維空間進行隨機稀疏采樣;
2)利用自適應尺度估計方法對步驟1)中的隨機稀疏采樣的采樣點進行選擇性加密采樣;
3)消除因步驟2)中選擇性加密采樣而造成的失真;
4)根據步驟3)中的加密采樣的采樣點的光亮度值,對高維空間的光亮度函數進行重建;
5)對步驟4)中重建的光亮度函數中的非圖像空間維度進行積分重建,得到最終圖像維度上的光亮度函數;
6)處理步驟5)中得到的最終圖像維度上的光亮度函數,對圖像進行空間上的重建。
所述步驟2)具體為:
21)沿維度把采樣點均勻分到B個桶中;
22)統計每個桶的方差;
23)根據步驟22)中每個桶中的采樣點的方差,進一步計算該維度對應的所有桶的方差的方差,即為該維度的方差;
24)根據該維度的方差計算該維度需要的算法尺度,即為選擇性加密采樣的密度。
所述桶的數量B的取值不小于10。
所述步驟3)具體為擴大采樣空間。
所述擴大后的采樣空間大小不小于原采樣空間大小的1.1倍。
與現有技術相比,本發明具有以下有益效果:
(1)通過統計維度上的采樣點的方差,確定該維度的采樣密度,準確的衡量了采樣點在不同維度中的差異的度量,自適應性良好,解決了傳統算法不能很好的自適應不同維度的縮放尺度的問題。
(2)通過適當擴大采樣空間,解決了采樣點分布不均造成了整體圖像失真問題。
(3)統計維度上的采樣點的方差的時間在整體計算時間上相對于光線跟蹤來講幾乎可以忽略不計,因此沒有降低算法效率,整體算法效率良好。
(4)擴大采樣空間這一方法不僅簡單而且效率高,從整體上提高了采樣的效率。
附圖說明
圖1為本發明的方法流程圖。
具體實施方式
下面結合附圖和具體實施例對本發明進行詳細說明。本實施例以本發明技術方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發明的保護范圍不限于下述的實施例。
如圖1所示,本實施例提供了一種改進的高維空間自適應采樣方法,用于對圖像進行空間上的重建,該方法包括下列步驟:
1)在高維空間進行隨機稀疏采樣;
2)利用自適應尺度估計方法對步驟1)中的隨機稀疏采樣的采樣點進行選擇性加密采樣:
21)沿維度把采樣點均勻分到B個桶中,本實施例中B的值為10;
22)統計每個桶的方差;
23)根據步驟22)中每個桶中的采樣點的方差,進一步計算該維度對應的所有桶的方差的方差,即為該維度的方差;
24)根據該維度的方差計算該維度需要的算法尺度,即為選擇性加密采樣的密度;
3)消除因步驟2)中選擇性加密采樣而造成的失真,具體為擴大采樣空間,擴大后的采樣空間大小為原采樣空間大小的1.1倍;
4)根據步驟3)中的加密采樣的采樣點的光亮度值,對高維空間的光亮度函數進行重建;
5)對步驟4)中重建的光亮度函數中的非圖像空間維度進行積分重建,得到最終圖像維度上的光亮度函數;
6)處理步驟5)中得到的最終圖像維度上的光亮度函數,對圖像進行空間上的重建。
本方法中對高維空間中變化劇烈或者是亮度值較大的地方進行加密采樣,通過這些采樣點的光亮度值對高維空間上的光亮度函數L(x,y,u1,…,un)進行重建,進而對高維空間上的光亮度函數L(x,y,u1,…,un)中非圖像空間維度進行積分,重建得出最終圖像維度上的光亮度函數L(x,y),如下式所示
L(x,y)=∫∫f(x,y,u1,…un)du1dun
算法對非圖像空間維度所對應的子空間P(x,y)進行劃分,計算得出上述積分值
進一步假設在子空間P(x,y)的任意分劃Ω上的光亮度函數是常值函數,記為L(Ω),因此
代入可得
至此,算法已經完成了對圖像空間上的重建。
在高維空間自適應采樣算法的實現中存在兩點問題,一是在KDTree建樹的過程中由于不同維度所需的采樣密度不同,所以需要對采樣點在不同維度上進行縮放,一般在時間,透鏡等維度會縮放到更小的尺度以獲得更高的采樣密度。另一個問題是,在新的采樣點的生成過程中由于每次只在KDTree節點對應的包圍盒內生成新的候選采樣點,導致最終渲染圖像質量在KDTree的分割面處存在較明顯的變化,這一問題在采樣密度圖中可以更好地得到體現。因此本方法的兩個獨特的改進點在于:
a.自適應尺度估計
針對采樣點在不同維度上的縮放問題,提出自適應尺度估計技術。產生此問題的根本原因是由于在采樣空間中不同維度上面的采樣點對應的亮度的差異是不同的,對于差異較大的維度應提高采樣密度,反之使用較低的采樣密度即可對該維度進行很好地采樣與估計。所以,問題的解決就變成了尋找一種可以衡量采樣點在不同維度中的差異的度量。
提出的改進算法基于對高維空間自適應采樣算法的初始采樣步驟產生的采樣點的方差估計,在整體計算時間上由于方差計算相對光線跟蹤來講幾乎可以忽略不計,所以改進后的算法的效率同原始算法基本一致,但是可以很好的自適應的決定不同維度的縮放尺度,以獲得和原始算法一致的結果。
對于某一維度,不失一般性這里假設采樣點維度為(x,y,t),需要計算的維度是時間維度t,算法首先沿該維度把采樣點均勻分布到B個桶中(通常算法的性能關于BB具有一定的魯棒性,一般取B=10即可),記每個桶中的采樣點的集合為:
S(t)i={(x,y,t,fx,y,t)|iB≤t≤(i+1)B,(x,y,t,fx,y,t)∈S}
其中(x,y,t,fx,y,t)為采樣點和其對應的亮度,S為所有采樣點的集合。對于每個桶中的采樣點,算法統計其方差σi以衡量其分布上的差異,
μ(t)i=1|S(t)i|Σ(x,y,t,f x,y,t)∈S(t)if x,y,t
σ(t)i=1|S(t)i|Σ(x,y,t,f x,y,t)∈S(t)if x,y,t
算法進一步計算該維度對應的所有的桶的方差的方差σ(t),
μ(t)=1BB-1Σi=0σ(t)i
σ(t)=(1BB-1∑i=0(σ(t)i-μ(t))2)12
最后算法根據每一維度的方差σ(*)來計算每個維度對應所需要的算法尺度c(*),
σmax=max(σ(*))
c(*)=σ(*)σmax
b.彈性采樣點生成
針對新采樣點生成所造成的沿KDTree分界面失真的問題,提出了彈性采樣點生成技術。造成此問題的原因是由于在新的采樣點的生成過程中由于每次只在KDTree節點對應的包圍盒內生成新的候選采樣點,導致采樣點沿KDTree分界面分布不均勻,進而導致最終渲染圖像質量在KDTree的分割面處存在較明顯的變化。
本實施例采用了一種比較簡單的算法,在生成新的采樣點時把采樣空間適當的放大,從原始的對應的KDTree節點的包圍盒擴充到KDTree節點的包圍盒放大1.1倍對應的采樣空間,這個簡單的做法可以有效地消除這一問題。
原始采樣過程僅在KDTree節點對應的包圍盒內部生成候選采樣點,改進過的采樣過程,對原始采樣空間進行了擴充,可以有效地消除這一問題。本實施例分別從高維空間自適應采樣算法的實現,以及兩點相關改進上進行了比較,可以看出改進后的算法較原有算法在效果和適用性上均有一定提升。
本實施例進行實驗的實驗平臺的硬件參數具體為:處理器Intel Core i5-5257U;內存Samsung 8G;顯卡Intel Iris Graphics 6100;硬盤Apple SSD128GB。
本次實驗平臺的軟件參數具體為:操作系統Windows 10Entreprise 64bit;開發環境Visual Studio 2013。
本實施例的實驗數據共有兩個場景:臺球和國際象棋場景,這兩個場景分別對應運動模糊和景深效果的渲染。實施例中給出了采樣率為10spp下的傳統光線跟蹤和高維空間自適應采樣算法,以及采樣率為256spp下的傳統光線跟蹤的比較。可以看到在應用高維空間自適應采樣算法后,原采樣空間中變化較為劇烈的地方對應的有更高的采樣率以獲得相對不錯的結果。
在算法效率上,上面三種參數下的計算時間如下所示,可以看到高維空間自適應采樣算法在相同或更高質量下所需時間更短。
BF(spp=10)MDAS(spp=10)BF(spp=256)
臺球場景91.56s 504.74s 2031.34s
國際象棋場景32.88s 189.34s 785.13s
根據上述結果,可以看出改進后的算法相對于原始算法在質量上有一定的退步,但是在算法的實用性上有很大的提升。而且應用改進后的算法,原采樣密度圖中存在的失真部分已經被完全消除了。