紋理圖像拼接的方法和裝置製造方法
2023-09-16 15:48:45 1
紋理圖像拼接的方法和裝置製造方法
【專利摘要】一種紋理圖像拼接的方法和裝置,所述方法包括步驟:向四周擴展原切圖的像素,得到新切圖;根據原切圖的像素和新切圖的像素確定縮小比例,將紋理坐標的預設採樣範圍按照所述縮小比例進行縮小;根據擴展的像素和新切圖的像素確定待偏移位移,將縮小後的紋理坐標按照所述待偏移位移進行移動;根據移動後的紋理坐標的範圍對所述新切圖進行採樣。本發明方法簡單,效率高,實現了多紋理圖像的無縫拼接,渲染的紋理清晰,顯示效果比較好。
【專利說明】紋理圖像拼接的方法和裝置
【技術領域】
[0001]本發明涉及仿真圖形【技術領域】,特別是涉及一種紋理圖像拼接的方法和裝置。
【背景技術】
[0002]在仿真場景中,展現自然世界真實面貌最直觀的方法就是使用三維模型。但是由於客觀世界錯綜複雜,建模難度的增大,三維模型並不能滿足實際需要,所以人們通常將圖像處理技術與計算機圖形技術結合起來解決虛擬場景中真實感顯示問題,例如通過紋理貼圖的方式來表現仿真場景中三維對象表面不能體現的細節,從而彌補幾何繪製的不足,提高圖像顯示的真實性。
[0003]在進行紋理貼圖時,圖像會出現在三維對象表面對應紋理坐標的位置上,紋理坐標通常限制在O到I範圍內。如果超出這個範圍,將由紋理的映射函數來決定。
[0004]在仿真場景中,對於採用透視投影的方式渲染出來的場景實體來說,紋理一般太大或太小。針對這種情況,需要過濾紋理以匹配實體對象。為簡化紋理過濾的過程,渲染引擎會提供三種類型的紋理過濾:線性過濾、各向異性過濾和mipmap (multum in parvo map)過濾。如果不選擇紋理過濾方式,渲染引擎會採用默認的最近點採樣的技術,即使用靠近像素中心的紋理單元。若選擇線性過濾,則對靠近像素中心區域的n*n紋理單元取加權平均值等。
[0005]在實際仿真場景中,對紋理細節要求不高的情況下,大面積生成紋理的方法採用的是重複紋理貼圖技術,該重複紋理貼圖技術可以實現紋理的無縫拼接,但是方法複雜,效率較低。
【發明內容】
[0006]基於此,有必要針對上述問題,提供一種方法簡單、效率較高、可以實現無縫拼接的紋理圖像拼接的方法和裝置。
[0007]—種紋理圖像拼接的方法,包括步驟:
[0008]向四周擴展原切圖的像素,得到新切圖;
[0009]根據原切圖的像素和新切圖的像素確定縮小比例,將紋理坐標的預設採樣範圍按照所述縮小比例進行縮小;
[0010]根據擴展的像素和新切圖的像素確定待偏移位移,將縮小後的紋理坐標按照所述待偏移位移進行移動;
[0011]根據移動後的紋理坐標的範圍對所述新切圖進行採樣。
[0012]一種紋理圖像拼接的裝置,包括:
[0013]新切圖生成模塊,用於向四周擴展原切圖的像素,得到新切圖;
[0014]採樣範圍設置模塊,用於根據原切圖的像素和新切圖的像素確定縮小比例,將紋理坐標的預設採樣範圍按照所述縮小比例進行縮小;
[0015]紋理坐標移動模塊,用於根據擴展的像素和新切圖的像素確定待偏移位移,將縮小後的紋理坐標按照所述待偏移位移進行移動;
[0016]採樣模塊,用於根據移動後的紋理坐標的範圍對所述新切圖進行採樣。
[0017]本發明紋理圖像拼接的方法和裝置,與現有技術相互比較時,具備以下優點:
[0018]1、本發明通過擴展原切圖的像素和縮小紋理坐標採樣範圍等方式對切圖進行採樣拼接,避免採樣紋理圖像邊界時部分紋理單元的缺失,從而實現了多紋理圖像的無縫拼接,並且渲染的紋理清晰,顯示效果比較好;
[0019]2、本發明方法簡單,一個實體可以綁定多個紋理實現無縫拼接,渲染效率較高;
[0020]3、本發明不僅適用於平面地圖無縫拼接顯示,而且也適用於虛擬場景中大地形多紋理的無縫拼接等,適用範圍較廣。
【專利附圖】
【附圖說明】
[0021]圖1為本發明方法實施例的流程示意圖;
[0022]圖2為本發明新切圖實施例一的示意圖;
[0023]圖3為本發明新切圖實施例二的示意圖;
[0024]圖4為本發明具體實施例的新切圖劃分示意圖;
[0025]圖5為本發明具體實施例的紋理坐標範圍縮小後的示意圖;
[0026]圖6為本發明具體實施例的紋理坐標移動後的示意圖;
[0027]圖7為本發明裝置實施例的結構示意圖。
【具體實施方式】
[0028]下面結合附圖對本發明紋理圖像拼接的方法的【具體實施方式】做詳細描述。
[0029]如圖1所示,一種紋理圖像拼接的方法,包括步驟:
[0030]S110、向四周擴展原切圖的像素,得到新切圖;
[0031]紋理拼縫產生的原因是採樣本地紋理圖像的邊緣時,部分紋理單元缺失,所以解決拼縫問題需要重新劃分紋理切圖,即向外擴展原切圖的像素,擴展後的切圖相鄰部分有重疊;
[0032]擴展的像素的最小值可以根據顯卡採樣因子確定,例如顯卡的採樣因子為2*2,則擴展的像素的最小值為I ;擴展的像素點各方向可以相同,也可以不同,例如,如圖2所示,可以將原切圖向四周均擴展η個像素點,也可以如圖3所示,將原切圖水平方向上擴展η個像素點,垂直方向上擴展m個像素點等;為了提高顯卡的操作效率,擴展的像素一般取最小值;
[0033]假設原切圖大小為size*size,新切圖四周邊緣相比之前的原切圖多增加η個像素,那麼新切圖的大小為(size+2*n)*(size+2*n)。圖片的保存方式為左上角坐標,寬度及高度,如圖2所示,若橫向第一張新切圖的左上角坐標為[0,O],那麼橫向的第二張新切圖的左上角坐標為[size, O],橫向的第三張新切圖的左上角坐標為[2*size,0],…依次類推橫向的第j張新切圖的左上角坐標是[j*size,0];縱向的第二張新切圖左上角坐標是[O, size],…依次類推第i張新切圖的左上角坐標是[0,i*size];
[0034]S120、根據原切圖的像素和新切圖的像素確定縮小比例,將紋理坐標的預設採樣範圍按照所述縮小比例進行縮小;
[0035]紋理坐標定義了紋理圖像哪一部分將被映射到實體上,將採樣切圖的紋理坐標設置在[0,I]範圍內,然後將紋理坐標的範圍按照確定的縮小比例進行縮小;
[0036]S130、根據擴展的像素和新切圖的像素確定待偏移位移,將縮小後的紋理坐標按照所述待偏移位移進行移動;
[0037]為了使採樣的新切圖的紋理像素顯示的效果與原切圖一樣,同時解決不同紋理之間的拼縫問題,需要將縮小範圍後的紋理坐標按照確定的待偏移位移進行移動;
[0038]S140、根據移動後的紋理坐標的範圍對所述新切圖進行採樣,採樣出來的紋理像素顯示效果與原切圖一樣,且避免了採樣紋理圖像邊界時部分紋理單元的缺失,實現了多紋理的無縫拼接。
[0039]步驟S120中的縮小比例可以包括水平方向的縮小比例和垂直方向的縮小比例;
[0040]水平方向的縮小比例為原切圖的水平像素與新切圖的水平像素的比值;
[0041]垂直方向的縮小比例為原切圖的垂直像素與新切圖的垂直像素的比值。
[0042]若原切圖向外擴展的像素均為n,紋理坐標設置在[0,I]範圍內,如圖2所示,那麼水平方向的縮小比例為x/(x+2n),垂直方向的縮小比例為y/(y+2n),其中x為原切圖水平方向的像素,y為原切圖垂直方向的像素。那麼紋理坐標水平方向上的範圍變為[0,x/(x+2n)],垂直方向上的範圍變為[0,y/ (y+2n)]。
[0043]若原切圖水平擴展的像素為n,垂直擴展的像素為m,紋理坐標設置在[0,I]範圍內,如圖3所示,那麼水平方向的縮小比例為x/ (x+2n),垂直方向的縮小比例為y/ (y+2m)。那麼紋理坐標水平方向上的範圍變為[0,x/(x+2n)],垂直方向上的範圍變為[0,y/(y+2m)]。
[0044]若原切圖左右水平擴展的像素不一樣,和/或上下垂直擴展的像素不一樣,則水平方向和垂直方向上的縮小比例同樣根據上述定義進行確定,在此不予贅述。
[0045]縮小範圍後的紋理坐標需要進行移動,以實現無縫拼接和顯示效果的一致。步驟S130中的待偏移位移可以包括U方向的待偏移位移和V方向的待偏移位移;
[0046]U方向的待偏移位移為擴展的水平像素與新切圖的水平像素的比值;
[0047]V方向的待偏移位移為擴展的垂直像素與新切圖的垂直像素的比值。
[0048]若原切圖向外擴展的像素均為n,紋理坐標設置在[0,I]範圍內,縮小比例後的紋理坐標水平方向上的範圍變為[0,x/(x+2n)],垂直方向上的範圍變為[0,y/(y+2n)]。那麼紋理坐標在水平方向上的待偏移位移為n/ (x+2n),垂直方向上的待偏移位移為n/ (y+2n),也即是將紋理坐標的U值向左偏移n/(x+2n),V值向上偏移n/(y+2n)。按移動後的紋理坐標採樣的切圖紋理像素顯示的效果與原切圖一樣,且解決了不同紋理的拼縫問題。
[0049]若原切圖水平擴展的像素為n,垂直擴展的像素為m,紋理坐標設置在[0,I]範圍內,縮小比例後的紋理坐標水平方向上的範圍變為[0,x/ (x+2n)],垂直方向上的範圍變為[O, y/(y+2m)]。那麼紋理坐標在水平方向上的待偏移位移為n/(x+2n),垂直方向上的待偏移位移為m/ (y+2m),也即是將紋理坐標的U值向左偏移n/ (x+2n),V值向上偏移m/ (y+2m)。按移動後的紋理坐標採樣的切圖紋理像素顯示的效果與原切圖一樣,且解決了不同紋理的拼縫問題。
[0050]若原切圖左右水平擴展的像素不一樣,和/或上下垂直擴展的像素不一樣,則紋理坐標U方向和V方向的待偏移位移同樣根據上述定義進行確定,只不過擴展的水平像素為原切圖水平向左擴展的像素,即原切圖原點水平向外擴展的像素,擴展的垂直像素為原切圖垂直向下擴展的像素,即原切圖原點垂直向外擴展的像素。
[0051]為了更好的理解本發明方法,下面結合一個具體實施例對本發明方法的【具體實施方式】做詳細描述。
[0052]如圖4所示,原切圖的大小為size*size,向外均擴展η個像素後,新切圖的大小為(size+2*n)*(size+2*n);
[0053]將採樣切圖的紋理坐標都設置在[0,I]範圍內,然後將該範圍整體乘以size/(size+2*n)用來縮小紋理坐標範圍,縮小後的紋理坐標範圍如圖5所示;
[0054]將縮小後的紋理坐標的U值向左偏移n/ (size+2*n),V值向上偏移n/ (size+2*n),如圖6所示,最終的採樣紋理坐標範圍為[n/(size+2*n),n/(size+2*n)]至[(size+n)/(size+2*n), (size+n) / (size+2*n)]之間。
[0055]按照上述移動後的紋理坐標採樣出來的紋理像素顯示的效果與原切圖一樣,且不同紋理之間無縫連接。
[0056]基於同一發明構思,本發明還提供一種紋理圖像拼接的裝置,下面結合附圖對本發明裝置的【具體實施方式】做詳細描述。
[0057]如圖7所示,一種紋理圖像拼接的裝置,包括:
[0058]新切圖生成模塊100,用於向四周擴展原切圖的像素,得到新切圖;
[0059]擴展的像素的最小值可以根據顯卡採樣因子確定,例如顯卡的採樣因子為2*2,則擴展的像素的最小值為I ;為了提高顯卡的操作效率,擴展的像素一般取最小值;
[0060]採樣範圍設置模塊200,用於根據原切圖的像素和新切圖的像素確定縮小比例,將紋理坐標的預設採樣範圍按照所述縮小比例進行縮小;
[0061]紋理坐標定義了紋理圖像哪一部分將被映射到實體上,將採樣切圖的紋理坐標設置在[0,I]範圍內,然後將紋理坐標的範圍按照確定的縮小比例進行縮小;
[0062]紋理坐標移動模塊300,用於根據擴展的像素和新切圖的像素確定待偏移位移,將縮小後的紋理坐標按照所述待偏移位移進行移動;
[0063]為了使採樣的新切圖的紋理像素顯示的效果與原切圖一樣,同時解決不同紋理之間的拼縫問題,需要將縮小範圍後的紋理坐標按照確定的待偏移位移進行移動;
[0064]採樣模塊400,用於根據移動後的紋理坐標的範圍對所述新切圖進行採樣,採樣出來的紋理像素顯示效果與原切圖一樣,且避免了採樣紋理圖像邊界時部分紋理單元的缺失,實現了多紋理的無縫拼接。
[0065]所述縮小比例可以包括水平方向的縮小比例和垂直方向的縮小比例;
[0066]所述水平方向上的縮小比例為原切圖的水平像素與新切圖的水平像素的比值;
[0067]所述垂直方向的縮小比例為原切圖的垂直像素與新切圖的垂直像素的比值。
[0068]縮小範圍後的紋理坐標需要進行移動,以實現無縫拼接和顯示效果的一致。所述待偏移位移可以包括U方向的待偏移位移和V方向的待偏移位移;
[0069]所述U方向的待偏移位移為擴展的水平像素與新切圖的水平像素的比值;
[0070]所述V方向的待偏移位移為擴展的垂直像素與新切圖的垂直像素的比值。
[0071 ] 本發明裝置其它技術特徵與上述方法相同,在此不予贅述。
[0072]以上所述實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但並不能因此而理解為對本發明專利範圍的限制。應當指出的是,對於本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬於本發明的保護範圍。因此,本發明專利的保護範圍應以所附權利要求為準。
【權利要求】
1.一種紋理圖像拼接的方法,其特徵在於,包括步驟: 向四周擴展原切圖的像素,得到新切圖; 根據原切圖的像素和新切圖的像素確定縮小比例,將紋理坐標的預設採樣範圍按照所述縮小比例進行縮小; 根據擴展的像素和新切圖的像素確定待偏移位移,將縮小後的紋理坐標按照所述待偏移位移進行移動; 根據移動後的紋理坐標的範圍對所述新切圖進行採樣。
2.根據權利要求1所述的紋理圖像拼接的方法,其特徵在於,擴展的像素的最小值根據顯卡採樣因子確定。
3.根據權利要求1所述的紋理圖像拼接的方法,其特徵在於,所述縮小比例包括水平方向的縮小比例和垂直方向的縮小比例; 所述水平方向上的縮小比例為原切圖的水平像素與新切圖的水平像素的比值; 所述垂直方向的縮小比例為原切圖的垂直像素與新切圖的垂直像素的比值。
4.根據權利要求1所述的紋理圖像拼接的方法,其特徵在於,所述待偏移位移包括U方向的待偏移位移和V方向的待偏移位移; 所述U方向的待偏移位移為擴展的水平像素與新切圖的水平像素的比值; 所述V方向的待偏移位移為擴展的垂直像素與新切圖的垂直像素的比值。
5.根據權利要求1至4任意一項所述的紋理圖像拼接的方法,其特徵在於,所述預設採樣範圍為[O, I] O
6.一種紋理圖像拼接的裝置,其特徵在於,包括: 新切圖生成模塊,用於向四周擴展原切圖的像素,得到新切圖; 採樣範圍設置模塊,用於根據原切圖的像素和新切圖的像素確定縮小比例,將紋理坐標的預設採樣範圍按照所述縮小比例進行縮小; 紋理坐標移動模塊,用於根據擴展的像素和新切圖的像素確定待偏移位移,將縮小後的紋理坐標按照所述待偏移位移進行移動; 採樣模塊,用於根據移動後的紋理坐標的範圍對所述新切圖進行採樣。
7.根據權利要求6所述的紋理圖像拼接的裝置,其特徵在於,擴展的像素的最小值根據顯卡採樣因子確定。
8.根據權利要求6所述的紋理圖像拼接的裝置,其特徵在於,所述縮小比例包括水平方向的縮小比例和垂直方向的縮小比例; 所述水平方向上的縮小比例為原切圖的水平像素與新切圖的水平像素的比值; 所述垂直方向的縮小比例為原切圖的垂直像素與新切圖的垂直像素的比值。
9.根據權利要求6所述的紋理圖像拼接的裝置,其特徵在於,所述待偏移位移包括U方向的待偏移位移和V方向的待偏移位移; 所述U方向的待偏移位移為擴展的水平像素與新切圖的水平像素的比值; 所述V方向的待偏移位移為擴展的垂直像素與新切圖的垂直像素的比值。
10.根據權利要求6至9任意一項所述的紋理圖像拼接的裝置,其特徵在於,所述預設採樣範圍為[O, I] O
【文檔編號】G06T3/00GK104134201SQ201410373151
【公開日】2014年11月5日 申請日期:2014年7月31日 優先權日:2014年7月31日
【發明者】汪月嬌, 潘桂聰 申請人:廣東威創視訊科技股份有限公司