国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于三維網(wǎng)格細(xì)分和編碼的三維模型壓縮方法

      文檔序號:9418280閱讀:580來源:國知局
      一種基于三維網(wǎng)格細(xì)分和編碼的三維模型壓縮方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及計算機(jī)圖形處理領(lǐng)域,尤其涉及了一種基于三維網(wǎng)格細(xì)分和編碼的三維模型壓縮方法。
      【背景技術(shù)】
      [0002]隨著計算機(jī)圖形學(xué)的發(fā)展,實際需要的三維模型越來越大、越來越復(fù)雜,三維模型數(shù)據(jù)量急劇增加而產(chǎn)生大規(guī)模的三維模型。同時,移動互聯(lián)網(wǎng)的快速發(fā)展,在越來越多的移動終端設(shè)備上有強(qiáng)烈的三維使用需求。在當(dāng)前移動網(wǎng)絡(luò)帶寬有限情況下,大規(guī)模三維模型的巨大數(shù)據(jù)與有限網(wǎng)絡(luò)帶寬資源間存在一定矛盾。只有對大規(guī)模三維模型進(jìn)行高效率的壓縮以減小傳輸?shù)臄?shù)據(jù)量,才可能解決大規(guī)模三維模型在使用上的傳輸帶寬限制。
      [0003]三維模型壓縮方法主要有拓?fù)鋲嚎s和幾何壓縮,實際當(dāng)中往往兩者都結(jié)合使用。拓?fù)鋲嚎s主是關(guān)于三維模型的頂點(diǎn)、邊、面之間的關(guān)聯(lián)信息的壓縮,當(dāng)前能達(dá)到一定壓縮效果,但其壓縮和解壓的過程計算量非常巨大、對硬件設(shè)備要求過高。幾何壓縮主要是關(guān)于三維模型的頂點(diǎn)位置及一些相關(guān)屬性參數(shù)(如顏色、紋理坐標(biāo)、法線等)的壓縮,但當(dāng)前的幾何壓縮方法效率普遍不高,無法對大規(guī)模三維模型進(jìn)行有效的高比例壓縮。
      [0004]當(dāng)前基于拓?fù)鋲嚎s對大規(guī)模的三維模型進(jìn)行拓?fù)湫畔⒂嬎阈枰薮蟮倪\(yùn)算能力和儲存能力,對于有限的移動終端設(shè)備是無法提供其所需要的壓縮和解壓能力,難以在移動終端等設(shè)備上快速運(yùn)行。而針對三維模型頂點(diǎn)位置及其他屬性的幾何壓縮方法,采用常規(guī)的zip、Izma等壓縮算法,僅對數(shù)據(jù)本身進(jìn)行壓縮,并未針對三維模型的固有屬性進(jìn)行提取,因此壓縮比率有限。因此,如果能有效降低三維模型數(shù)據(jù)的占用空間,對于在移動終端上運(yùn)行的三維軟件的運(yùn)營和維護(hù),都具有重大意義。

      【發(fā)明內(nèi)容】

      [0005]本發(fā)明針對現(xiàn)有技術(shù)中三維模型壓縮比率不高等缺點(diǎn),提供了一種基于三維網(wǎng)格細(xì)分和編碼的三維模型壓縮方法。
      [0006]為了解決上述技術(shù)問題,本發(fā)明通過下述技術(shù)方案得以解決:
      [0007]一種基于三維網(wǎng)格細(xì)分和編碼的三維模型壓縮方法,包括以下步驟:步驟1、讀取三維模型的頂點(diǎn)坐標(biāo)數(shù)據(jù),對頂點(diǎn)的X,I, Z坐標(biāo)逐個進(jìn)行比較,計算出三維模型的最大和最小頂點(diǎn)坐標(biāo);通過最大和最小頂點(diǎn)坐標(biāo)確定軸向包圍盒的邊界參數(shù),邊界參數(shù)包括軸向包圍盒在三維坐標(biāo)系中的最大和最小位置坐標(biāo);
      [0008]步驟2、根據(jù)軸向包圍盒的邊界參數(shù)計算出軸向包圍盒在X,y, z軸上的長度,獲取三維模型的頂點(diǎn)數(shù)量,根據(jù)三維模型的頂點(diǎn)數(shù)量及軸向包圍盒在X,y,z軸上的長度,計算出軸向包圍盒的在X,I, Z軸上的等分因子,根據(jù)軸向包圍盒的等分因子對軸向包圍盒進(jìn)行三維網(wǎng)格細(xì)分,根據(jù)軸向包圍盒的長度、等分因子依次對三維細(xì)分網(wǎng)格建立唯一索引編碼;
      [0009]步驟3、對三維模型的頂點(diǎn)坐標(biāo)數(shù)據(jù)按Z軸優(yōu)先進(jìn)行排序,獲取經(jīng)過排序的頂點(diǎn)坐標(biāo),根據(jù)頂點(diǎn)坐標(biāo)、軸向包圍盒的最小位置坐標(biāo)、軸向包圍盒在X,y,z軸的長度在及軸向包圍盒在X,y,z軸的等分因子計算出頂點(diǎn)相對應(yīng)三維細(xì)分網(wǎng)格的索引編碼數(shù)據(jù);
      [0010]步驟4、根據(jù)步驟2計算的三維細(xì)分網(wǎng)格的唯一索引編碼,獲取軸向包圍盒的最小位置坐標(biāo)、軸向包圍盒在x,y,z軸上的長度及軸向包圍盒在X,y, z軸的等分因子,計算出每個細(xì)分網(wǎng)格原點(diǎn)的X,y, z坐標(biāo),進(jìn)行中間存儲用于下一步計算;
      [0011]步驟5、根據(jù)三維細(xì)分網(wǎng)格的原點(diǎn)坐標(biāo)、頂點(diǎn)相對應(yīng)三維細(xì)分網(wǎng)格的索引編碼數(shù)據(jù)和獲取的三維模型頂點(diǎn)坐標(biāo),計算三維模型頂點(diǎn)坐標(biāo)相對于三維細(xì)分網(wǎng)格原點(diǎn)的偏移量,獲取三維模型頂點(diǎn)的浮點(diǎn)數(shù)精度,并將偏移量除以浮點(diǎn)數(shù)精度進(jìn)行整數(shù)化,獲取整數(shù)偏移量;
      [0012]步驟6、對軸向包圍盒的邊界參數(shù)、軸向包圍盒的X,y,Z軸的等分因子、三維細(xì)分網(wǎng)格的唯一索引編碼、三維模型頂點(diǎn)對應(yīng)三維細(xì)分網(wǎng)格的索引編碼數(shù)據(jù)、三維模型頂點(diǎn)的浮點(diǎn)數(shù)精度和三維模型頂點(diǎn)相對于三維細(xì)分網(wǎng)格原點(diǎn)的整數(shù)偏移量進(jìn)行數(shù)據(jù)熵編碼。
      [0013]作為優(yōu)選,對步驟6熵編碼后的數(shù)據(jù)采用開源的LZMA壓縮算法進(jìn)行數(shù)據(jù)壓縮。
      [0014]作為優(yōu)選,對步驟5的三維模型頂點(diǎn)坐標(biāo)相對于三維細(xì)分網(wǎng)格原點(diǎn)的整數(shù)偏移量進(jìn)行交叉系列化:把原來按X1, Υι, Ζ^..χη, yn, ζη (η為整數(shù))排序的頂點(diǎn)坐標(biāo)數(shù)據(jù)系列化為按xr"xn(n為整數(shù)),yr"yn(n為整數(shù)),ζ^..ζη(η為整數(shù))進(jìn)行存儲。
      [0015]作為優(yōu)選,對交叉系列化的整數(shù)偏移量數(shù)據(jù)進(jìn)行熵編碼,采用開源的LZMA壓縮算法進(jìn)行數(shù)據(jù)壓縮。
      [0016]本發(fā)明由于采用了以上技術(shù)方案,提供了一種全新的三維模型壓縮方法,對三維網(wǎng)格細(xì)分,將三維模型頂點(diǎn)采用編碼和偏移量記錄數(shù)據(jù),偏移量占用空間相對于原頂點(diǎn)坐標(biāo)數(shù)據(jù)大大減少,采用整數(shù)儲存相比小數(shù)減少了占用空間,提高了壓縮比率,采用此壓縮方法的軟件更適合在移動設(shè)備上運(yùn)行和維護(hù)。
      【附圖說明】
      [0017]圖1是本發(fā)明壓縮方法流程圖;
      【具體實施方式】
      [0018]下面結(jié)合附圖與實施例對本發(fā)明作進(jìn)一步詳細(xì)描述。
      [0019]實施例1
      [0020]具體壓縮流程如圖1所示,一種基于三維網(wǎng)格細(xì)分和編碼的三維模型壓縮方法,包括以下步驟:
      [0021]步驟1、讀取三維模型的頂點(diǎn)坐標(biāo)數(shù)據(jù),對頂點(diǎn)的X,y, ζ坐標(biāo)逐個進(jìn)行比較,計算出三維模型的最大和最小頂點(diǎn)坐標(biāo);通過最大和最小頂點(diǎn)坐標(biāo)確定軸向包圍盒的邊界參數(shù),邊界參數(shù)包括軸向包圍盒在三維坐標(biāo)系中的最大和最小位置坐標(biāo),對邊界參數(shù)進(jìn)行儲存,通過邊界參數(shù)確認(rèn)軸向包圍盒的范圍;包圍盒算法是一種求解離散點(diǎn)集最優(yōu)包圍空間的方法,基本思想是用體積稍大且特性簡單的幾何體(稱為包圍盒)來近似地代替復(fù)雜的幾何對象。
      [0022]步驟2、根據(jù)軸向包圍盒的邊界參數(shù)計算出軸向包圍盒在X,y, ζ軸上的長度,獲取三維模型的頂點(diǎn)數(shù)量,根據(jù)三維模型的頂點(diǎn)數(shù)量及軸向包圍盒在X,y,ζ軸上的長度,計算出軸向包圍盒的在X,y,ζ軸上的等分因子,根據(jù)軸向包圍盒的等分因子對軸向包圍盒進(jìn)行三維網(wǎng)格細(xì)分,根據(jù)軸向包圍盒的長度、等分因子依次對三維細(xì)分網(wǎng)格建立唯一索引編碼,每個三維細(xì)分網(wǎng)格都有一個唯一的索引編碼,對軸向包圍盒的在X,y,ζ軸上的長度和等分因子、三維細(xì)分網(wǎng)格的唯一索引編碼進(jìn)行存儲,用于下一步使用。
      [0023]步驟3、對三維模型的頂點(diǎn)坐標(biāo)數(shù)據(jù)按Z軸優(yōu)先進(jìn)行排序,獲取經(jīng)過排序的頂點(diǎn)坐標(biāo),根據(jù)頂點(diǎn)坐標(biāo)、軸向包圍盒的最小位置坐標(biāo)、軸向包圍盒在X,y,ζ軸的長度在及軸向包圍盒在X,y,ζ軸的等分因子計算出頂點(diǎn)相對應(yīng)三維細(xì)分網(wǎng)格的索引編碼數(shù)據(jù),例如:排序頂點(diǎn)的X軸坐標(biāo)值減去最小位置的X軸坐標(biāo)值,得到X軸差值;χ軸長度除以X軸等分因子,得到X軸上三維細(xì)分網(wǎng)格的單個網(wǎng)格長度值;根
      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1