本公開涉及一組先進的視頻編碼技術。更具體地,本公開涉及對具有多個對稱平面的網格進行編碼。
背景技術:
1、vmesh是一種用于壓縮動態網格的現行mpeg標準。當前的vmesh參考軟件基于抽取的基礎網格、位移矢量和運動場來壓縮網格。通過搜索輸入網格上與細分網格每個頂點最近的點來計算位移。為了對位移進行編碼,通過線性提升方案將位移矢量轉換成小波系數,然后通過視頻編解碼器或算術編解碼器對小波系數進行量化和編碼。此過程還會細化基礎網格以使位移最小化。可以執行紋理轉移,以將紋理與重新參數化的幾何圖形、uv以及用于圖像壓縮的優化紋理相匹配。
2、反射對稱性是網格編碼(尤其是計算機生成的網格)的一個普遍特征。利用對稱性對對稱網格進行壓縮。將頂點分成對稱平面的左右兩部分。左側部分通過網格編碼進行編碼,而右側部分通過對稱預測和位移編碼進行編碼。即使紋理坐標(或uv屬性)也具有一定程度的對稱性,但紋理坐標在轉換和旋轉中也可能表現出不同的對稱屬性。
3、然而,對稱網格的紋理坐標壓縮還有待開發。現有的網格編碼算法主要利用網格的局部特征。許多網格在反射對稱性方面并不完美,其中,一個網格可能僅在網格的一部分中表現出對稱性。
技術實現思路
1、根據一個或多個實施例,一種由編碼器的至少一個處理器執行的方法包括:通過包括第一邊界平面和第二邊界平面的邊界框對網格進行界定,使得邊界框包圍網格。該方法包括通過全局對稱平面對網格進行分區,該全局對稱平面將網格分區為第一側和第二側,該全局對稱平面垂直于第一邊界平面和第二邊界平面。該方法包括將網格劃分為多個切片,每個切片垂直于全局對稱平面。該方法包括基于全局對稱平面確定每個切片的局部對稱平面。所述方法包括基于確定多個切片中的、與多個切片中的第二切片共享邊界的第一切片滿足頂點合并條件,將第二切片的邊界中的一個或多個頂點與第一切片的邊界中的一個或多個頂點合并。該方法還包括將多個切片中的每個切片編碼為相應的子網格。
2、根據一個或多個實施例,一種編碼器,包括:至少一個存儲器,配置為存儲程序代碼;以及至少一個處理器,配置為讀取程序代碼并按照程序代碼的指示操作。程序代碼包括:界定代碼,配置為使至少一個處理器通過包括第一邊界平面和第二邊界平面的邊界框對網格進行界定,使得邊界框包圍網格,分區代碼,配置為使至少一個處理器通過全局對稱平面對網格進行分區,全局對稱平面將網格分區為第一側和第二側,全局對稱平面垂直于第一邊界平面和第二邊界平面;劃分代碼,配置為使至少一個處理器將網格劃分為多個切片,每個切片垂直于全局對稱平面;確定代碼,配置為使至少一個處理器基于全局對稱平面為每個切片確定局部對稱平面;第一合并代碼,配置為使至少一個處理器基于確定多個切片中的、與多個切片的第二切片共享邊界的第一切片滿足頂點合并條件,將第二切片的邊界中的一個或多個頂點與第一切片的邊界中的一個或多個頂點合并;以及,編碼代碼,配置為使至少一個處理器將多個切片中的每個切片編碼為網格的相應子網格。
3、根據一個或多個實施例,一種非暫時性的計算機可讀介質,其中存儲有指令,所述指令在被編碼器的處理器執行時,使處理器執行一種方法,該方法包括通過包括第一邊界平面和第二邊界平面的邊界框對網格進行界定,使得邊界框包圍網格。該方法包括通過全局對稱平面對網格進行分區,該全局對稱平面將網格分區為第一側和第二側,該全局對稱平面垂直于第一邊界平面和第二邊界平面。該方法包括將網格劃分為多個切片,每個切片垂直于全局對稱平面。該方法包括基于全局對稱平面為每個切片確定局部對稱平面。所述方法包括基于確定多個切片中的、與多個切片中的第二切片共享邊界的第一切片滿足頂點合并條件,將第二切片的邊界中的一個或多個頂點與第一切片的邊界中的一個或多個頂點合并。該方法還包括將多個切片中的每個切片編碼為相應的子網格。
1.一種由編碼器的至少一個處理器執行的方法,所述方法包括:
2.根據權利要求1所述的方法,其中,所述多個切片中的每個切片間距相等。
3.根據權利要求1所述的方法,其中,所述多個切片中的至少一個切片被遞歸地分區為間距相等的子切片,直到滿足終止條件。
4.根據權利要求3所述的方法,其中,基于確定子切片的尺寸小于尺寸閾值,則滿足所述終止條件。
5.根據權利要求1所述的方法,其中,基于確定滿足切片合并條件,將所述多個切片中的第三切片與所述多個切片中的第四切片合并。
6.根據權利要求5所述的方法,其中,基于確定所述第三切片的局部對稱平面和所述第四切片的局部對稱平面之間的角度小于閾值,則滿足所述切片合并條件。
7.根據權利要求1所述的方法,其中,基于確定所述第一切片的失真度小于所述第二切片的失真度,則滿足所述頂點合并條件。
8.根據權利要求7所述的方法,其中,所述失真度是對稱預測誤差。
9.根據權利要求1所述的方法,其中,將所述第二切片的邊界中的一個或多個頂點與所述第一切片的邊界中的一個或多個頂點合并還包括:
10.根據權利要求1所述的方法,其中,將所述多個切片中的每個切片編碼為所述網格的相應子網格還包括:通過用于所述網格的每個子網格的標志指定所述網格的相應子網格的邊界是否包括在比特流中。
11.一種編碼器,包括:
12.根據權利要求11所述的編碼器,其中,所述多個切片中的每個切片間距相等。
13.根據權利要求11所述的編碼器,其中,所述多個切片中的至少一個切片被遞歸地分區為間距相等的子切片,直到滿足終止條件。
14.根據權利要求13所述的編碼器,其中,基于確定所述子切片的尺寸小于尺寸閾值,則滿足所述終止條件。
15.根據權利要求11所述的編碼器,其中,基于確定滿足切片合并條件,將所述多個切片中的第三切片與所述多個切片中的第四切片合并。
16.根據權利要求15所述的編碼器,其中,基于確定所述第三切片的局部對稱平面和所述第四切片的局部對稱平面之間的角度小于閾值,則滿足所述切片合并條件。
17.根據權利要求11所述的編碼器,其中,基于確定所述第一切片的失真度小于所述第二切片的失真度,則滿足所述頂點合并條件。
18.根據權利要求17所述的編碼器,其中,所述失真度是對稱預測誤差。
19.根據權利要求11所述的編碼,其中,所述第一合并代碼進一步包括:
20.一種非暫時性計算機可讀介質,其中存儲有指令,所述指令在被編碼器的處理器執行時,使所述處理器執行一種方法,該方法包括: