郭學(xué)敏
(四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065)
如今隨著人工智能的飛速發(fā)展,在三維游戲、真實(shí)場(chǎng)景模擬、虛擬現(xiàn)實(shí)[1]等應(yīng)用中,對(duì)于圖像的質(zhì)量要求越來越高,很多大型場(chǎng)景的模擬和重建[2]都需要用紋理映射技術(shù)[3]合成高質(zhì)量的圖片,而紋理映射技術(shù)多種多樣,針對(duì)不同的維度,不同的過程,不同的幾何圖形都會(huì)有不同的紋理映射技術(shù)。紋理圖像在映射到實(shí)際物體的時(shí)候不可避免的會(huì)產(chǎn)生混疊,像素缺失等現(xiàn)象,現(xiàn)有的經(jīng)典抗混疊算法有Williams[4]提出的Mip-Map,運(yùn)用圖像金字塔數(shù)據(jù)結(jié)構(gòu)進(jìn)行預(yù)過濾處理和后來惠普公司在Mip-Map 的基礎(chǔ)上進(jìn)行改進(jìn)了,提出了一種新的方法稱為Rip-Map,這個(gè)方法主要是針對(duì)Mip-Map 得不到長方形紋理區(qū)域的缺陷進(jìn)行改進(jìn)。不同于現(xiàn)有的經(jīng)典反混疊算法Mip-Map、Rip-Map,本文針對(duì)一種新型的卷積理論,探討它使用在不同紋理技術(shù)中的抗混疊效果。
正向映射法是二維紋理映射[5]算法中比較常見的一種,將紋理空間的像素映射到圖像空間,在這個(gè)過程中,會(huì)先將紋理空間中的二維紋理映射到實(shí)際物體的三維物體表面,用Catmull 算法[6]通過映射函數(shù)將二維紋理與物體的曲面坐標(biāo)匹配,匹配坐標(biāo)可以確定在三維物體表面的紋理像素坐標(biāo)位置及大小,再通過線性插值計(jì)算三維物體表面對(duì)應(yīng)匹配點(diǎn)的紋理像素中心灰度值,并且將該點(diǎn)的灰度值作為三維物體表面該處的像素中心采樣點(diǎn)的紋理屬性,然后再映射到二維的圖像空間。將紋理空間的像素坐標(biāo)設(shè)為(u,v),圖像空間的坐標(biāo)設(shè)為(x,y),那么它們之間的正向映射函數(shù)可表示為:
圖1 正向映射示意圖
正向映射有個(gè)非常明顯的缺點(diǎn),就是映射過程當(dāng)中映射過去的是紋理圖像的灰度值,信息較少,紋理空間的像素坐標(biāo)與物體表面的曲面坐標(biāo)并不能完全的一一對(duì)應(yīng),肯定會(huì)產(chǎn)生形變,沒有匹配到對(duì)應(yīng)的紋理像素的區(qū)域會(huì)產(chǎn)生空洞,而匹配到不是本區(qū)域的紋理像素的區(qū)域則會(huì)產(chǎn)生多射,這些紋理的缺失和形變都是我們不希望發(fā)生的。
逆向映射法[7]的映射過程和正向映射法正好相反,它是通過映射函數(shù)給物體的曲面坐標(biāo)在紋理空間尋找對(duì)應(yīng)的紋理像素坐標(biāo),找到坐標(biāo)后,在計(jì)算三維物體表面坐標(biāo)中心的像素值之前,要用重采樣方法對(duì)紋理圖像進(jìn)行重采樣,重采樣的過程中可能會(huì)產(chǎn)生混疊現(xiàn)象,然后將重采樣后計(jì)算的像素值映射到紋理空間。逆向映射法算法可如下表示:
球面映射法[8]對(duì)應(yīng)的物體曲面是球面,將二維空間的紋理坐標(biāo)映射到球面上,根據(jù)球面上的每個(gè)點(diǎn)的法向量坐標(biāo)生成對(duì)應(yīng)的紋理坐標(biāo),二維紋理坐標(biāo)和球面法向量坐標(biāo)如圖2 所示。
圖2 紋理坐標(biāo)與球面坐標(biāo)表示圖
外圍的虛線坐標(biāo)表示二維紋理的坐標(biāo),中心的實(shí)線坐標(biāo)表示球面法向量的坐標(biāo),從圖中可以看出紋理坐標(biāo)的范圍是u ∈( 0,N ),v ∈ ( 0,N ),而球面法向量坐標(biāo)的范圍是x ∈(- N,N ),y ∈ (- N,N )。球面映射法的核心就是要找到這兩個(gè)區(qū)間的映射關(guān)系,一般用反正弦函數(shù)y=acrsin(x)來實(shí)現(xiàn)兩者中的對(duì)應(yīng)關(guān)系。由于該函數(shù)的定義域 x=(-1,1)和值域 y=(-π/2,π/2),我們可以得到映射關(guān)系表達(dá)式:
其中u,v 是紋理坐標(biāo)的橫坐標(biāo)與縱坐標(biāo),x,y 是球面的法向量的橫坐標(biāo)與縱坐標(biāo),N 表示最后要得到的平面視圖N*N 的大小。
球面映射法對(duì)應(yīng)的物體曲面是柱面,將二維空間的紋理坐標(biāo)映射到柱面上,假設(shè)是半徑為r,高為h 的圓柱,用柱面方程表示如下:
那么我們將紋理空間[0,1]×[0,1]的范圍和柱面空間[0,2π]×[0,1]進(jìn)行線性變換,變換之后的表達(dá)式如下:
圖3 柱面映射示意圖
當(dāng)對(duì)于連續(xù)信號(hào)做采樣處理并將其數(shù)字化的時(shí)候,如果取樣頻率低于兩倍奈奎斯特頻率,那么把取頻率還原成連續(xù)信號(hào)時(shí)產(chǎn)生交疊而失真的現(xiàn)象叫做混疊,在圖像上又可以叫作疊影。如果混疊發(fā)生在時(shí)間域上,可以叫時(shí)間混疊,發(fā)生在頻率域上,叫做空間混疊。出現(xiàn)混疊現(xiàn)象的時(shí)候,高頻信息和低頻信息交雜在一起,還原出的原始信息會(huì)有很大的缺陷,為了得到更好的原始信息,最好先做抗混疊處理。
采樣必然產(chǎn)生混疊,那么比較常見的抗混疊處理方法有兩種,一種是縮小采樣時(shí)間間隔,由于現(xiàn)在的技術(shù)有限,許多信號(hào)本身可能含有0 ~∞范圍內(nèi)的頻率,不可能將采樣頻率提高到∞,那么這種方法的可適用范圍就很有限。另一種是用濾波器,在采樣頻率一定的前提下,通過低通濾波器[9]過濾掉一些高頻成分,通過的信號(hào)就不會(huì)出現(xiàn)混疊現(xiàn)象。這是一種理想的濾波器,實(shí)際中的濾波器很難達(dá)到理想的狀態(tài)。下面我們將介紹一種新的抗混疊方法。
卷積其實(shí)是讓兩個(gè)函數(shù)做積分生成一個(gè)新的函數(shù)的運(yùn)算,常見的有高斯卷積,假設(shè)f(x),g(x)是R 上的可積函數(shù),積分產(chǎn)生的新函數(shù)為h(x),那么卷積的表達(dá)式如下:
但是,當(dāng)其中一個(gè)做積分的函數(shù)通過映射變?yōu)橐粋€(gè)新的表達(dá)式之后,再做卷積得到的新函數(shù)和之前不一樣。有人提出了一種新的卷積理論叫做映射適應(yīng)卷積理論[10]。在該理論中,作者通過數(shù)學(xué)推導(dǎo),給出了一個(gè)能適應(yīng)映射后的卷積公式:
其中x′=g(x′′)一個(gè)從該模擬圖像到原始圖像M(x)的映射,并且該映射為微分同胚映射,Jg-1(x)表示映射x′′=g-1(x′)的雅可比行列式的絕對(duì)值,κ(x)∈L1(R2)為卷積核函數(shù)。該卷積本身是在標(biāo)準(zhǔn)高斯卷積的基礎(chǔ)上進(jìn)行改進(jìn)的,并且從文獻(xiàn)[10]的定理2.3 可知映射適應(yīng)卷積相比標(biāo)準(zhǔn)高斯卷積具有映射適應(yīng)性。
從上面的理論知識(shí)我們已經(jīng)知道,映射適應(yīng)卷積可以讓經(jīng)過映射后得到的函數(shù) f(h ( x ))和沒見過映射后的函數(shù) f( x )在與另一個(gè)函數(shù)g(x)做積分運(yùn)算后結(jié)果相同,那么該運(yùn)算表達(dá)式還可以是:
其中,k( x,y )=f(h(x,y))是f( x,y )經(jīng)過映射后的函數(shù),而映射h 的定義為:
Jh( )x,y 是原函數(shù)的雅克比,表達(dá)式如下:
那么對(duì)于逆映射h-1的雅克比行列式如下:
通過前面的理論介紹,我們將映射適應(yīng)卷積加入各種紋理映射方法中,為了驗(yàn)證我們這種方法在各種映射方法中的抗混疊效果,我們將直接映射的結(jié)果圖和做了抗混疊處理的映射結(jié)果圖相比較,實(shí)驗(yàn)采用的圖片是由兩個(gè)函數(shù)生成的:
其中c 是常量,當(dāng)g1(x,y)和g2(x,y)小于0 時(shí),可以調(diào)節(jié)c 的值,使得g1(x,y)和g2(x,y)的值為0。
表1 各映射的抗混疊結(jié)果比較
圖4
未做抗混疊處理映射后的圖(左)、用MA 卷積做抗混疊處理映射后的圖(中),原始圖片(右)。左圖與原始圖的相似度為0.738411,中圖與原始圖的相似度為0.763275。做抗混疊處理之后,比之前相似度增長0.024864。
圖5
未做抗混疊處理映射后的圖(左)、用MA 卷積做抗混疊處理映射后的圖(中),原始圖片(右)。左圖與原始圖的相似度為0.775947,中圖與原始圖的相似度為0.805223。做抗混疊處理之后,比之前相似度增長0.029276。
圖6
未做抗混疊處理映射后的圖(左)、用MA 卷積做抗混疊處理映射后的圖(中),原始圖片(右)。左圖與原始圖的相似度為0.642653,中圖與原始圖的相似度為0.697859。做抗混疊處理之后,比之前相似度增長0.055206。
圖7
未做抗混疊處理映射后的圖(左)、用MA 卷積做抗混疊處理映射后的圖(中),原始圖片(右)。左圖與原始圖的相似度為0.505829,中圖與原始圖的相似度為0.586922。做抗混疊處理之后,比之前相似度增長0.081093。
由實(shí)驗(yàn)圖片可以看出左圖都產(chǎn)生了混疊現(xiàn)象,而通過映射適應(yīng)卷積理論的抗混疊算法生成圖像沒有產(chǎn)生混疊現(xiàn)象,因此該映射適應(yīng)卷積理論抗混疊算法中從球面到平面的紋理映射反混疊有很好的抗混疊效果。
本文主要研究映射適應(yīng)卷積理論在不同紋理映射方法中的抗混疊效果,在論文當(dāng)中,我們首先介紹了幾種常見的紋理映射方法,如正向映射法、反向映射法、球面映射法和柱面映射法,然后詳細(xì)講解了映射適應(yīng)卷積的理論,以及如何將卷積和映射結(jié)合起來。從實(shí)驗(yàn)結(jié)果我們可以看出,映射適應(yīng)卷積在柱面映射法中的抗混疊效果最明顯,在正向映射法相似度的增長幅度最低,本次實(shí)驗(yàn)只驗(yàn)證了常見的幾種紋理映射法,在后續(xù)的研究中可以加入新的對(duì)比實(shí)驗(yàn),例如比較經(jīng)典抗混疊方法Mip-Map、Rip-Map 在這些紋理映射法中的效果和映射適應(yīng)卷積的抗混疊效果哪個(gè)更好。