專利名稱:用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法
技術(shù)領(lǐng)域:
本發(fā)明為關(guān)于一種用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,尤指一種應(yīng)用于3D圖像資料的漸進(jìn)式傳輸方法。
背景技術(shù):
虛擬實(shí)境與3D繪圖的應(yīng)用在日常生活中目前為隨處可見,例如電腦游戲、教學(xué)軟體等方面的應(yīng)用,然而在網(wǎng)際網(wǎng)路上卻未見其普及化,探究其原因時(shí),不難發(fā)現(xiàn)因3D場(chǎng)景的資料量龐大,若采用有限的網(wǎng)路頻寬進(jìn)行傳遞時(shí),將耗費(fèi)大量的傳送時(shí)間及金錢。再者,當(dāng)3D資料傳遞之際,亦造成繪圖硬體(如顯示卡)極大的工作負(fù)擔(dān),且無法達(dá)到即時(shí)描繪的效果。有鑒于此,軟體設(shè)計(jì)者廣泛地采用多精細(xì)度描繪技術(shù)(levels ofdetail)于3D資料的建立過程中,亦即在3D場(chǎng)景資料中,距離觀察者越遠(yuǎn)及越不重要的物景,使用較粗糙的模型及貼圖描繪即可,以期在不損傷輸出影像品質(zhì)的前提下盡量減輕繪圖硬體的負(fù)擔(dān),并可降低所需資料的輸送。
現(xiàn)今JPEG格式是影像編碼中最被廣泛通用的壓縮格式,但JPEG格式在壓縮與解壓縮上有先天上的限制,例如必須將待壓縮的原始影像先行切割成8×8的區(qū)塊,再對(duì)每個(gè)區(qū)塊分別作轉(zhuǎn)換,于壓縮率較高時(shí),重建影像便會(huì)有″塊狀失真(blocking artifact)″。
為了能有更廣泛地應(yīng)用,″低位元率(low bit rate)″是目前視訊、影像壓縮研發(fā)者所努力的方向。在目前發(fā)展的影像壓縮規(guī)格JPEG2000標(biāo)準(zhǔn)中,為使用小波轉(zhuǎn)換來取代原先JPEG的DCT(離散余弦變換),使得低位元率傳輸?shù)靡詫?shí)現(xiàn),并且可以提供多樣性的顯示選擇,例如漸進(jìn)式傳輸、指定解析度、指定傳輸?shù)奈辉实取R韵戮托〔ㄓ跋窬幋a的步驟作一簡(jiǎn)單敘述RGB/YUV轉(zhuǎn)換一般來說,尚未經(jīng)過壓縮的原始圖檔是由RGB三色系所組成,然而在影像壓縮為統(tǒng)中通常不使用RGB三色系,主要原因?yàn)榇巳档南嚓P(guān)性太高,使得各色系在單獨(dú)壓縮時(shí)仍須顧慮到其余兩種色系,導(dǎo)致壓縮率大為降低。因此現(xiàn)今大部份的影像壓縮方法(如JPEG)大多采用另一色彩系統(tǒng)YUV。其中,Y是代表亮度(luminance),U和V則分別表示兩種色彩的飽和度(chrominance),因YUV三種色系的相關(guān)性非常低,故適合做資料的壓縮。在影像資料傳送時(shí),由于人對(duì)于亮度的敏感性會(huì)大于顏色飽和度,因此Y∶U∶V的資料量比例,通常Y會(huì)占有較多的分量?,F(xiàn)今大部分對(duì)于Y∶U∶V的比例是取為4∶2∶2或是4∶1∶1,最簡(jiǎn)單的做法就是對(duì)每點(diǎn)像素(pixel)或是每四點(diǎn)像素僅取一個(gè)U和V值,而對(duì)每一個(gè)像素皆取一個(gè)Y值,如此便可達(dá)成4∶1∶1或4∶2∶2的比例。
根據(jù)CCIR 601的標(biāo)準(zhǔn),RGB轉(zhuǎn)換成YUV的公式如下所示YUV=0.2990.50.114-0.147-0.2890.4360.615-0.515-0.1RGB]]>S+P Transform在漸進(jìn)式影像傳輸?shù)那疤嵯拢仨毷褂跋裨谠瓐D大小下由模糊漸漸轉(zhuǎn)成為清晰,因此可采用S+P Transform來進(jìn)行轉(zhuǎn)換。
請(qǐng)參考圖5所示,其原理為將一影像資料轉(zhuǎn)換成金字塔型(pyramid)的資料型態(tài),如此使得原始影像經(jīng)過數(shù)層的轉(zhuǎn)換形成自右下level 0至左上level N的架構(gòu),當(dāng)影像資料傳輸為從level N到level 0依序傳送時(shí),將可令影像從模糊漸漸轉(zhuǎn)為清晰,而達(dá)成漸進(jìn)式影像傳輸。
在S+P Transform的轉(zhuǎn)換過程中,為將一張影像資料視為一連串的整數(shù)數(shù)字所組成,對(duì)于這串整數(shù)數(shù)字c[n],n=0,...,N-1,N,可以用下列兩個(gè)序列表示l[n]={c(2n)+c(2n+1)2},n=1,...,N2-1......(1)]]>h[n]=c(2n)-c(2n+1),n=0,...,N2-1......(2)]]>這兩個(gè)序列可視為對(duì)c[n]序列的S-Transform,其中l(wèi)[n]是相鄰兩數(shù)的平均值,而h[n]是相鄰兩數(shù)的差值,轉(zhuǎn)換后的l[n]和h[n]恰好可放在原本c[n]的儲(chǔ)存空間。如果對(duì)一張2D的影像先做行(column)的S-Transform,再做列(row)的S-Transform,依此反覆順序可得到如圖6所示的結(jié)果。
根據(jù)圖6所示,原始影像可經(jīng)由S-Transform形成多層的金字塔架構(gòu),這個(gè)金字塔的越左上角(11部分)將保留越多點(diǎn)的平均值,而其它lh、hl、hh部分則會(huì)修正圖形的細(xì)差異。所以當(dāng)資料由左上至右下依序傳送時(shí),可以看到影像為逐漸由模糊而轉(zhuǎn)為清楚。
但是在經(jīng)過S-Transform后,各階層的h[]會(huì)有關(guān)聯(lián)性,導(dǎo)致h[]無法收斂。為了改善這個(gè)狀況,為在S-Transform中再加入預(yù)測(cè)(predictivecoding)的功能,此即為S+P Transform。其中預(yù)測(cè)的方法是先算出h[]的預(yù)測(cè)值,稱之為 (如第3式)然后以預(yù)測(cè)值( )和實(shí)際值(h[])兩者的差值,稱之為hd[],以取代原本h[]的輸出,此hd[]會(huì)較原先的h[]收斂許多,使資料壓縮更有效率。
h^[n]=Σi-LLαiΔ[n+i]-Σj-IHβjh[n+j]-......(3)]]>其中,Δl[n]=[n-l]-l[n],而αi,βj為預(yù)測(cè)系數(shù)(predictor coeff-icients)hd[n]=h[n]-{h^[n]+12},n=0,1,......,N2-1......(4)]]>從第(3)式中可看到α和β這兩個(gè)predictor coefficient,這兩個(gè)predictor是由是否可產(chǎn)生最小的entropy、變化度(variance)及不同的頻譜(frequency domain)來決定。根據(jù)上述原則,predictor被區(qū)分為三種類型,分別是A類型可以產(chǎn)生最小計(jì)算復(fù)雜度B類型用在自然影像上(natural image)C類型用在要求極為精細(xì)的醫(yī)學(xué)影像(medical image)由于一般壓縮的圖型均為自然影像,因此采用B類型的predictorcoefficient,則式(3)可改寫為如下式(5)h^[n]=18{2(Δl[n]+Δl[n+1])+Δl[n+1]}......(5)]]>In the image bordersh^
=Δl[1]4,h^[N2-1]=Δl[N2-1]4]]>請(qǐng)參考圖7所示,為為個(gè)S+P Transform的轉(zhuǎn)換過程示意圖。c[]經(jīng)過S Transform后產(chǎn)生l[]和h[],而l[]和h[]可以算出predictor 利用 和h[]所形成的差值hd[]取代h[]后,最終的傳送結(jié)果便是hd[]和l[]。
請(qǐng)參考圖8所示,經(jīng)S+P Transform后的結(jié)果為形成一個(gè)金字塔型的結(jié)構(gòu),且不同階層的資料會(huì)有一父子(parent-child)的對(duì)應(yīng)關(guān)系。如果要對(duì)此資料結(jié)構(gòu)依其重要性加以排列,便要考慮給予各階層不同的權(quán)值,以維持所有資料重要程度的整體性(unitary)。為了要保持資料的整體性,各階層的資料要乘以如圖9所示的對(duì)應(yīng)倍數(shù),如此便可進(jìn)行下一步的重要性排序步驟。
SPIHT(Set Partitioning in Hierarchical Trees)當(dāng)整個(gè)圖檔經(jīng)過S+P Transform的轉(zhuǎn)換之后,便會(huì)形成一個(gè)具有金字塔形的資料結(jié)構(gòu),而這個(gè)架構(gòu)具有父子的關(guān)系,可視為一樹狀(tree)結(jié)構(gòu),稱的為spatialorientation tree。此樹狀結(jié)構(gòu)有一性質(zhì),稱為self-similarity,意即在不考慮正負(fù)號(hào)的情況下,屬于同一分支樹(sub-tree)但落在不同階層點(diǎn)的值有會(huì)有大小相似的關(guān)系,由于在S+P Transform的最后對(duì)整個(gè)資料結(jié)構(gòu)依階層越高乘以越大因數(shù)的結(jié)果,使得對(duì)同一分支樹而言,數(shù)值的大小(不包含正負(fù)號(hào))從高階層到低階層會(huì)形成一近似由大到小的排列,這樣的情形使得排序更有效率。對(duì)一個(gè)樹狀結(jié)構(gòu),定義了以下符號(hào)O(i,j)---node(i,j)的子點(diǎn)座標(biāo)集合D(i,j)---node(i,j)的子孫點(diǎn)座標(biāo)集合H---tree roots的座標(biāo)集合L(i,j)=D(i,j)-O(i,j)除了最高及最低level,其余的O(i,j)可計(jì)算如下O(i,j)=[(2i,2j),(2i,2j+1),(2i+1,2j),(2i+1,2j+1)]同時(shí)再定義有三個(gè)List的資料結(jié)構(gòu),這三個(gè)list分別為″List ofInsignificant Set (LIS)″(有兩個(gè)型態(tài)″A″及″B″)、″List ofInsignificant Pixels (LIP)″、″List of Significant Pixels(LSP)″。以及定義Sn(x),其代表x此數(shù)的重要性,其中Sn=1表示重要,Sn=0表示不重要。
而此演算法的核心Set Partition Sorting Algorithm這個(gè)方法是把屬于同一sub-tree的點(diǎn)放在LIS中,然后對(duì)每一個(gè)sub-tree由高階層開始檢驗(yàn)它的重要性,把重要的元素放到LSP中,不重要的放到LIP中,此法主要利用spatial orientation tree大小會(huì)由上到下排列的性質(zhì),使得較上層的幾個(gè)點(diǎn)可能是significant的subset,而下層大部分的sub-tree可能是insignificant的subset,因此可以減少Set Partition過程中的數(shù)值比較次數(shù)。利用到LIS、LIP、LSP三個(gè)串列的重要為數(shù)排序及傳輸演算法描述如下1)[Initialization]output--n=[log2(max(|ci,j|)(i,j))]]]>
LSP← 2)[Sorting Pass]LIP←(i,j)|(i,j)∈HLIP←D(i,j)|(i,j)∈H(type A)2.1)(i,j)∈LIP2.1.1)output Sn(i,j)2.1.2 if Sn(i,j)==1 then LSP←(i,j)←LIP2.2)(i,j)∈LIS do2.2.1)if(i,j)is type A(D(i,j)),then output Sn(D(i,j)),(traverse a tree)if Sn(D(i,j))==1 then1.(k,l)∈O(i,j) dooutput Sn (k,l)if Sn(k,l)==1 then LSP←(k,l)output the sign of ck,lif Sn(k,1)==0 then LIP←(k,1)2.if L(I,j)≠ then LIS←(i,j)(type B)go to 2.2.2)otherwise(i,j)←LIS2.2.2)if(i,j)is type B(L(i,j)),then output Sn(D(i,j)),if Sn(L(i,j))==1 then1.LIS<type A>←(k,l)(∈O(i,j)) 3)[Refinement Pass]
(i,j)∈LSP with the same noutput the nth most significant bit of |ci,j|4)[Quantization Step Update]n←n-1,go to Step 2.
在前述步驟1)的Initialization為先始化一些變數(shù),包括找出c[]中最大數(shù)的位元數(shù),其中c[]是input。
在步驟2)中,則是檢驗(yàn)LIP中元素的重要性,若屬于重要性的元素就放到LSP中。2.2)是檢驗(yàn)LIS中的每一sub-tree,看有無重要的數(shù)。若整個(gè)sub-tree未含有任何重要的數(shù),便跳過整個(gè)sub-tree,反的若有的話,則對(duì)sub-tree第一層child逐一檢驗(yàn),若找到重的點(diǎn)便放到LSP里,若此點(diǎn)不重要?jiǎng)t放到LIP。接下來檢驗(yàn)以child為root的sub-tree的重要性。若屬重要,則將以child為root的sub-tree分裂出來,放到LIS中。
最后在步驟3)中,對(duì)重要的數(shù)是利用bit plane的傳輸方式來傳,所謂的bit plane傳輸方式是說對(duì)個(gè)數(shù)每次只傳某一位元的資料,一般是由最高位元開始傳起,這樣的好處是可以讓decode端先知道數(shù)的約略大小。Set Partition Sorting Algorithm這個(gè)方法的結(jié)果會(huì)把重要的數(shù)依序傳出去給解壓縮端(decode),而decode端只要利用相同的步驟即可把原數(shù)解出來,因此可減少許多儲(chǔ)存位置資訊的資料。
另外,在過去的3D漸進(jìn)式網(wǎng)路傳輸,大多數(shù)均在3D模型(mesh)的漸進(jìn)式傳輸上,對(duì)于與模型習(xí)相關(guān)的貼圖則少有探討。近來為求3D場(chǎng)景的逼真,影像貼圖被大量的使用,所以結(jié)合模型與貼圖的漸進(jìn)式傳輸技術(shù)已越來越受人重視,大部分均由漸進(jìn)式模型開始著手,再搭配貼圖的配合,以達(dá)到漸送式的效果。以下僅舉出兩種作法1.Joint Geometry/Texture Progressive Coding of 3D Models此方法的前提是應(yīng)用在貼圖座標(biāo)的表示方式為每一個(gè)分割三角形的角落均有一組貼圖座標(biāo)(corner attribute texture coordinate),以簡(jiǎn)化模型中的頂點(diǎn)叢集法(Vertex Clustering)及邊線折疊法(EdgeCollapsing)為基準(zhǔn),也就是先考慮每一個(gè)頂點(diǎn)的重要性,再?gòu)牟恢匾狞c(diǎn)開始剔除。頂點(diǎn)的重要性考慮兩個(gè)因素剔除之后體積變化量v(i)及顏色重要性c(i),判斷公式如第(6)式m(i)=αv(I)+(1-α)c(i) ......(6)頂點(diǎn)剔除后,將原本剔除的空洞重新三角格化,如圖10所示,而傳輸?shù)臅r(shí)候,則以重要性高、后剔除的頂點(diǎn)先傳送,達(dá)到漸進(jìn)式傳輸?shù)男Ч?br>
2.Texture Mapping Progressive Meshes前述方法雖然可以達(dá)到貼圖及模型互相結(jié)合,以應(yīng)用于漸進(jìn)式傳送,但是在空洞重新三角格化的時(shí)候,每一個(gè)三角形上的貼圖會(huì)受到變形破壞。因此P.V.Sander,J.Snyder,S.J.Gortier及H.Hopps提出更精確的作法,以改善此變形破壞。
第一步為先將一個(gè)模型加以分割,區(qū)分成數(shù)個(gè)區(qū)域(chart)。分割的依據(jù)是由模型原本頂點(diǎn)的扁平度(planarity)與緊湊度(compactness)來判斷。并將每一個(gè)區(qū)域的邊線以最短簡(jiǎn)徑重新整理。
第二步為將區(qū)塊中的頂點(diǎn)重新布置,為利用下述第(7)式進(jìn)行L2(M)=ΣTi∈M(L2(Ti))2/ΣTi∈MAi(Ti)......(7)]]>目的是使模型簡(jiǎn)化時(shí),因頂點(diǎn)數(shù)改變所造成的貼圖取樣變化誤差(texture stretch)最小,并將結(jié)果展開至2D最小單元四邊形上,爾后再調(diào)整每一區(qū)塊至適當(dāng)大小。
第三步為執(zhí)行簡(jiǎn)化,運(yùn)用邊線折疊法,同時(shí)考慮頂點(diǎn)合并后貼圖偏移量(texture deviation)。
由于之前是針對(duì)每一個(gè)模型分割的區(qū)域做簡(jiǎn)化,故第四步即從整體著手,針對(duì)每一個(gè)階層的模型做最佳化,以求每一相鄰階層的彼此誤差變小。
最后,再針對(duì)原本模型切割的區(qū)域,將區(qū)塊貼圖重新取樣,重整成一張完整的貼圖。
唯前述兩種方式,均是以漸進(jìn)式模型為其著眼點(diǎn),將貼圖連帶考慮。對(duì)貼圖與模型的結(jié)合方式,其貼圖座標(biāo)皆以三角形的每一個(gè)角(per corner)為其設(shè)定方式,故具有下述數(shù)種缺點(diǎn)1.兩者皆由模型簡(jiǎn)化著手,而將模型與貼圖綁在一起,并無法分開個(gè)別考慮,使得模型與貼圖均無法重覆使用。
2.貼圖座標(biāo)是以三角形的每一個(gè)角為其設(shè)定方式,與一般使用習(xí)慣不同,一般為以每一頂點(diǎn)(per vertex)為設(shè)定方式。
3.以模型漸進(jìn)式傳輸為主,故在貼圖的傳輸上皆有不連續(xù)性,可明顯觀察出貼圖的不平滑變化。
4.由于貼圖在分割后均非四邊形,故在編碼傳送時(shí)均需補(bǔ)充額外資料,故增加了資料傳輸量。
發(fā)明內(nèi)容
鑒于目前3D貼圖的技術(shù)仍有諸多改進(jìn)的缺點(diǎn),本發(fā)明的主要目的為配合小波編碼手段,提供一種用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,令3D場(chǎng)景資料呈漸進(jìn)式傳輸,讓使用者可預(yù)先看到影像的基本資料后再?zèng)Q定是否要進(jìn)一步傳送。
本發(fā)明為一種用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其為將一貼圖影像切割為多個(gè)區(qū)塊,復(fù)以小波編碼手段將各影像區(qū)塊轉(zhuǎn)換為多階層解析度的資料串流,以令該貼圖影像貼附至一模型時(shí)可進(jìn)行多階解析度顯示。
所述的模型亦以對(duì)應(yīng)所述的貼圖影像的切割方式,加以切割為多塊區(qū)塊。所述的切割出來的各個(gè)模型區(qū)塊為取出其特征值,以供貼圖時(shí)決定其顯示解析度。
為達(dá)成前述目的,本發(fā)明的一主要實(shí)施手段為含括有一影像切割手段,切割一欲貼附至模型上的影像成為復(fù)數(shù)個(gè)區(qū)塊;
一編碼手段,利用小波編碼(Wavelet coding)將前述各影像區(qū)塊轉(zhuǎn)換為資料串流;一模型切割手段,以對(duì)應(yīng)前述影像切割方式,將模型切割為復(fù)數(shù)個(gè)區(qū)塊并取出各模型區(qū)塊的特征值;一解析度階層判斷手段,依據(jù)前述各模型區(qū)塊的特征值,判斷對(duì)應(yīng)貼附的影像區(qū)塊其顯示解析度;一解碼手段,依據(jù)判斷出的解析度階層,將各資料串流還原為具有該解析度的影像區(qū)塊;一貼圖手段,將前述解碼出的各影像區(qū)塊貼附至對(duì)應(yīng)的模型區(qū)塊。
又,本發(fā)明的另一具體實(shí)施方式
為包含有一模型切割手段,為將一模型切割為復(fù)數(shù)個(gè)區(qū)塊并取出各模型區(qū)塊的特征值;一影像切割手段,以對(duì)應(yīng)前述模型切割的方式,將一欲貼附至模型上的影像切割為復(fù)數(shù)個(gè)區(qū)塊;一編碼手段,利用小波編碼(Wavelet coding)將前述各影像區(qū)塊轉(zhuǎn)換為資料串流;一解析度階層判斷手段,依據(jù)前述各模型區(qū)塊的特征值,判斷對(duì)應(yīng)貼附的影像區(qū)塊其顯示解析度;一解碼手段,依據(jù)判斷出的解析度階層,將各資料串流還原為具有該解析度的影像區(qū)塊;一貼圖手段,將前述解碼出的各影像區(qū)塊貼附至對(duì)應(yīng)的模型區(qū)塊。
因本發(fā)明影像資料為先行切割為多個(gè)區(qū)塊且轉(zhuǎn)換為多階層的顯示解析度,故可依據(jù)使用者的要求(如視點(diǎn)位置、視角大小等)決定欲觀看全貌的影像或其部分區(qū)域,且可依據(jù)解析度要求而進(jìn)行傳遞,大為降低顯示硬體的工作負(fù)擔(dān),令3D場(chǎng)景資料呈漸進(jìn)式傳輸。
圖1為本發(fā)明影像分割方式示意圖。
圖2為本發(fā)明小波編碼方式示意圖。
圖3為本發(fā)明產(chǎn)生漸進(jìn)式3D模型影像貼圖的步驟流程圖。
圖4為本發(fā)明利用漸進(jìn)式3D模型影像貼圖的流程圖描繪于模型上的步驟流程圖。
圖5為習(xí)用S+P Transform的金字塔結(jié)構(gòu)示意圖。
圖6為習(xí)用S Transform的示意圖。
圖7為習(xí)用S+P Transform的轉(zhuǎn)換過程示意圖。
圖8為習(xí)用S+P Transform的金字塔結(jié)構(gòu)示意圖。
圖9為S+P Transform各階層資料的對(duì)應(yīng)倍數(shù)圖。
圖10為一習(xí)用3D貼圖的三角格化示意圖。
具體實(shí)施例方式
本發(fā)明的方法流程主要包含有以下數(shù)道步驟影像分割、小波編碼、檔案存檔、檔案開啟、模型切割、階層判斷、影像解碼及模型貼圖及描繪等。
為將欲貼圖的影像切割為多個(gè)區(qū)塊(tile),復(fù)對(duì)各個(gè)區(qū)塊利用小波編碼方式轉(zhuǎn)成為代表多階解析度的資料串流;爾后將欲貼附影像的模型亦相對(duì)切割為多個(gè)區(qū)塊,且取出各模型區(qū)塊的特征值,當(dāng)前述各影像區(qū)塊欲描繪至對(duì)應(yīng)的模型區(qū)塊時(shí),為依據(jù)區(qū)塊的特征值而即時(shí)決定該影像區(qū)塊所能顯示出的解析度。
再者,本發(fā)明的另一實(shí)施方式亦可將模型先行切割為多個(gè)區(qū)塊并取出其特征值后,再對(duì)貼圖影像進(jìn)行對(duì)應(yīng)的裁切動(dòng)作,各個(gè)切割出的影像區(qū)塊同樣利用小波編碼轉(zhuǎn)為具有多階解析的資料串流,再依據(jù)實(shí)際解析度需求將各影像區(qū)塊轉(zhuǎn)貼至對(duì)應(yīng)的模型區(qū)塊上。
以下為針對(duì)各步驟加以詳述(一)影像分割請(qǐng)如圖1所示,為達(dá)成在描繪時(shí)能夠即時(shí)判斷與即時(shí)描繪的目的,以及貼圖影像部份傳送的效果,須事先將欲貼圖的影像加以切割,同時(shí)為配合下一階段的小波編碼,影像為切割成復(fù)數(shù)個(gè)方形區(qū)塊(tile)。
(二)小波編碼在3D影像的描繪時(shí),為了因應(yīng)不同的需求而能選擇不同解析度的貼圖,于是以先前發(fā)明背景所述的小波編碼方法作了些許的調(diào)整,以便能產(chǎn)生不同解析度的貼圖影像。
在影像資料中,為可以根據(jù)不同的頻率將影像資料加以分別。屬于較低頻的訊號(hào),可視為影像信號(hào)的平均信號(hào),意即其包含有整體影像最概略的資料而可顯示出影像約略輪廓;而屬于較高頻的訊號(hào),則可以視為整張影像的特征部分,亦可視為是低頻信號(hào)的改進(jìn)資料,用以加強(qiáng)整張影像的細(xì)節(jié)及清晰性。
根據(jù)前述S+P Transform的敘述,當(dāng)整張影像轉(zhuǎn)換成頻域中的金字塔結(jié)構(gòu)時(shí)(如圖5所示),LV由0到N。當(dāng)N越大,則代表這一區(qū)的訊號(hào)頻率越低,因此當(dāng)影像資料傳輸時(shí)為由Level N到Level 0依序傳遞,則影像為由模糊漸漸清晰。
請(qǐng)圖2所示,為本發(fā)明的小波編碼方式示意圖,此步驟更進(jìn)一步包含有將前述各切割好的影像區(qū)塊(tile)經(jīng)過S+P Transform,以轉(zhuǎn)變成一金字塔狀的資料結(jié)構(gòu);先取其最低的LLN,將其輸入SPIHT排序方式,使得LLN中的數(shù)值由大到小排列,并以數(shù)值編碼(arithmetic coding)將其編碼;其次取LV N的LHN、HLN、HHN,將它們輸入SPIHT排序方式,令LHN、HLN、HHN中的數(shù)值由大到小排列,再以以數(shù)值編碼(arithmetic coding)將其編碼;取LV(N-1)的LHN-1、HLN-1、HHN-1,將它們輸入SPIHT排序方式,令LHN-1、HLN-1、HHN-1中的數(shù)值由大到小排列,再以以數(shù)值編碼(arithmetic coding)將其編碼;依序取LV(N-2)、LV(N-3)、...LV1、LV0的LH、HL、HH,將它們輸入SPIHT排序方式,令LH、HL、HH中的數(shù)值由大到小排列,再以以數(shù)值編碼(arithmetic coding)將其編碼。
經(jīng)由前述編碼方式,每一個(gè)影像區(qū)塊(tile)為可得到如下所述的資料串
(三)檔案存檔將前述編碼所得的資料串加以存檔,以方便自硬碟或網(wǎng)路取用,而由使用者端加以繪出。
(四)檔案開啟將原本所儲(chǔ)存的檔案開啟,以取得場(chǎng)景的基本資料,做為建立場(chǎng)景內(nèi)各物件其階層結(jié)構(gòu)的要素。
(五)模型切割根據(jù)前述貼圖影像的分割方式,將此貼圖影像欲著附的模型(mesh)做出對(duì)應(yīng)的切割(partition),例如可利用模型的貼圖座標(biāo)(texturecoordinate)做為分割基準(zhǔn),并取出模型分割區(qū)域的特征值(如模型的邊界盒(bounding box)、模型區(qū)域的半徑大小、模型區(qū)域的代表向量等),并以一資料結(jié)構(gòu)加以紀(jì)錄。
(六)階層判斷在模型區(qū)塊切割之后,即進(jìn)行模型貼圖階層(level)的判斷。本實(shí)施例中為由前述步驟所得的模型區(qū)塊特征值為判斷基數(shù),根據(jù)使用者的需要(如使用者的視角大小及位置)判斷模型貼圖區(qū)塊的階層數(shù),并即時(shí)的將所需的階數(shù)傳遞予解碼軟體,將所需的影像解壓縮出來,同時(shí)將此一階層的影像放入快取(cache)記憶體中,以允許爾后的方便使用。
舉例而言,假定模型貼圖的階數(shù)有N層,階層數(shù)分別為N-1、N-2、...2、1,解析度由小到大,若以模型的邊界盒(bounding box)、模型區(qū)域的半徑大小、模型區(qū)域的代表向量作為判斷基準(zhǔn),可分為下列幾個(gè)判斷重點(diǎn)a.物體的大小b.物體與視點(diǎn)的距離c.物體的代表向量與視線的夾角大小根據(jù)需要調(diào)整三者的權(quán)重分配,也可以依使用者自己的要求,選擇所要的判斷基準(zhǔn),得到所要的效果。
(七)影像解碼在判斷出每一個(gè)影像區(qū)塊(tile)所需要的階層之后,即進(jìn)行區(qū)塊解碼的動(dòng)作。解碼動(dòng)作為相對(duì)于前述的編碼步驟,包含如下1.自前述資料串流中,取得LLN部分,以數(shù)值解碼(arithmeticdecoding)方式解碼,再以SPIHT取得原本數(shù)值,將數(shù)值輸入Inverse S+PTransform,以取得最低解析度的影像;2.取得LHN、HLN、HHN,部分,以數(shù)值解碼(arithmetic decoding)方式解碼,再以SPIHT取得原本數(shù)值,將數(shù)值輸入Inverse S+P Transform,對(duì)前述最低解析度影像進(jìn)行更新,以取得次解析度的影像。
持續(xù)前述步驟,直到LV0的LH0、HL0、HH0為止,以獲取最完整、精細(xì)的原始影像。
為利用前述解碼步驟所得到的結(jié)果,所能得到的相異解析度的影像數(shù)量,為由一開始所決定的階層數(shù)相關(guān),例如在做S+P Transform時(shí),如果決定有N個(gè)階層,則具有N個(gè)不同解析度的影像。
(八)模型貼圖及描繪將得到的模型漸進(jìn)式貼圖解壓縮后,為將每一塊貼圖對(duì)應(yīng)貼到模型的上,以獲得最后想要描繪的結(jié)果。
經(jīng)由各步驟的詳細(xì)解釋后,本發(fā)明為可概分為兩大部分,其一為產(chǎn)生漸進(jìn)式的3D模型影像貼圖,另一部分為根據(jù)使用者需求讀取前述漸進(jìn)式的3D模型影像貼圖而描繪至模型上,這兩部分可藉由圖2、圖3及圖4分別表現(xiàn)出。
綜上所述,本發(fā)明所具備的特色具有3D影像資料為漸進(jìn)式傳輸,根據(jù)解析度由小到大依序傳送而令使用者端即時(shí)觀察出影像資料,且可適時(shí)中止;因影像資料為先行切割為多個(gè)區(qū)決且轉(zhuǎn)換為多階層的顯示解析度,故可依據(jù)使用者的要求(如視點(diǎn)位置、視角大小等)決定欲觀看全貌的影像或其部分區(qū)域,且可依據(jù)解析度要求而進(jìn)行傳遞,大為降低顯示硬體的工作負(fù)擔(dān)。
故本發(fā)明相較欲現(xiàn)有3D資料顯示、傳送技術(shù)等均有有大幅改進(jìn)且未見于任,且符合發(fā)明專利申請(qǐng)要件,爰依法提起申請(qǐng)。
權(quán)利要求
1.一種用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其為將一貼圖影像切割為多個(gè)區(qū)塊,復(fù)以小波編碼手段將各影像區(qū)塊轉(zhuǎn)換為多階層解析度的資料串流,以令該貼圖影像貼附至一模型時(shí)可進(jìn)行多階解析度顯示。
2.如權(quán)利要求1所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,所述的模型亦以對(duì)應(yīng)所述的貼圖影像的切割方式,加以切割為多塊區(qū)塊。
3.如權(quán)利要求2所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,所述的切割出來的各個(gè)模型區(qū)塊為取出其特征值,以供貼圖時(shí)決定其顯示解析度。
4.如權(quán)利要求3所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,更包含有一影像切割手段,切割一欲貼附至模型上的影像成為復(fù)數(shù)個(gè)區(qū)塊;一編碼手段,利用小波編碼(Wavelet coding)將所述的各影像區(qū)塊轉(zhuǎn)換為資料串流;一模型切割手段,以對(duì)應(yīng)所述的影像切割方式,將模型切割為復(fù)數(shù)個(gè)區(qū)塊并取出各模型區(qū)塊的特征值;一解析度階層定義手段,為定義出各影像區(qū)塊欲顯示的解析度階層;一解碼手段,依據(jù)定義出的解析度階層,將各資料串流解碼為具有該解析度的影像區(qū)塊;一貼圖手段,將所述解碼出的各影像區(qū)塊貼附至對(duì)應(yīng)的模型區(qū)塊。
5.如權(quán)利要求3所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,更包含有一模型切割手段,為將一模型切割為復(fù)數(shù)個(gè)區(qū)塊并取出各模型區(qū)塊的特征值;一影像切割手段,以對(duì)應(yīng)所述的模型切割的方式,將一欲貼附至模型上的影像切割為復(fù)數(shù)個(gè)區(qū)塊;一編碼手段,利用小波編碼(Wavelet coding)將所述各影像區(qū)塊轉(zhuǎn)換為資料串流;一解析度階層判斷手段,依據(jù)所述各模型區(qū)塊的特征值,判斷對(duì)應(yīng)貼附的影像區(qū)塊其顯示解析度;一解碼手段,依據(jù)判斷出的解析度階層,將各資料串流還原為具有該解析度的影像區(qū)塊;一貼圖手段,將所述解碼出的各影像區(qū)塊貼附至對(duì)應(yīng)的模型區(qū)塊。
6.如權(quán)利要求4或5所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,于該解析度階層定義手段中,各影像區(qū)塊欲顯示的解析度階層為依據(jù)對(duì)應(yīng)的模型區(qū)塊的特征值而決定。
7.如權(quán)利要求4或5所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,于該解析度階層定義手段,各影像區(qū)塊欲顯示的解析度階層為由使用者自行定義。
8.如權(quán)利要求4或5所述用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,該貼圖影像為切割為多個(gè)方形區(qū)塊。
9.如權(quán)利要求4或5所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,于所述編碼手段中,為更進(jìn)一步定義各影像區(qū)塊可顯示的解析度階層N。
10.如權(quán)利要求6所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,于前述編碼手段中,其中前述各資料串流為由N段資料結(jié)構(gòu)組成,以分別表現(xiàn)N種不同的顯示解析度。
11.如權(quán)利要求4或5所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,所述編碼手段為更包含有將前述各切割好的影像區(qū)塊(tile)經(jīng)過S+P Transform,以轉(zhuǎn)變成一金字塔狀的資料結(jié)構(gòu);先取其最低的LLN,將其輸入SPIHT排序方式,使得LLN中的數(shù)值由大到小排列,并以數(shù)值編碼(arithmetic coding)將其編碼;其次取LV N的LHN、HLN、HHN,將它們輸入SPIHT排序方式,令LHN、HLN、HHN中的數(shù)值由大到小排列,再以以數(shù)值編碼(arithmetic coding)將其編碼;取LV(N-1)的LHN-1、HLN-1、HHN-1,將它們輸入SPIHT排序方式,令LHN-1、HLN-1、HHN-1中的數(shù)值由大到小排列,再以以數(shù)值編碼(arithmetic coding)將其編碼;依序取LV(N-2)、LV(N-3)、...LV1、LV0的LH、HL、HH,將它們輸入SPIHT排序方式,令LH、HL、HH中的數(shù)值由大到小排列,再以以數(shù)值編碼(arithmetic coding)將其編碼。
12.如權(quán)利要求4或5所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,所述各模型區(qū)塊的分割基準(zhǔn)為采用模型的貼圖座標(biāo)(texture coordinate)。
13.如權(quán)利要求4或5所述的用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,其特征在于,所述特征值為為各模型區(qū)塊的模型邊界盒(bounding box)、模型區(qū)域半徑大小或模型區(qū)域代表向量。
全文摘要
本發(fā)明為一種用于網(wǎng)路傳輸及即時(shí)描繪的小波式編解碼模型貼圖分割與漸進(jìn)式傳送方法,為先行將欲貼圖的影像切割為多個(gè)區(qū)塊(tile),再對(duì)各個(gè)區(qū)塊利用小波編碼方式轉(zhuǎn)成為代表多階解析度的資料串流;而欲貼附影像的模型亦相對(duì)先行切割為多個(gè)區(qū)塊,且各模型區(qū)塊均取出特征值,當(dāng)前述各影像區(qū)塊欲描繪至對(duì)應(yīng)的模型區(qū)塊時(shí),為依據(jù)區(qū)塊的特征值而即時(shí)決定該影像區(qū)塊所能顯示出的解析度。
文檔編號(hào)H04N1/41GK1505383SQ0215374
公開日2004年6月16日 申請(qǐng)日期2002年12月3日 優(yōu)先權(quán)日2002年12月3日
發(fā)明者段鼎洲, 楊舒凱, 林明芬 申請(qǐng)人:財(cái)團(tuán)法人工業(yè)技術(shù)研究院