CN118475958A - 使用图表分区的纹理坐标压缩 - Google Patents
使用图表分区的纹理坐标压缩 Download PDFInfo
- Publication number
- CN118475958A CN118475958A CN202380015236.XA CN202380015236A CN118475958A CN 118475958 A CN118475958 A CN 118475958A CN 202380015236 A CN202380015236 A CN 202380015236A CN 118475958 A CN118475958 A CN 118475958A
- Authority
- CN
- China
- Prior art keywords
- vertex
- texture
- local
- coordinates
- triangle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000006835 compression Effects 0.000 title claims abstract description 25
- 238000007906 compression Methods 0.000 title claims abstract description 25
- 238000000638 solvent extraction Methods 0.000 title claims description 15
- 238000000034 method Methods 0.000 claims abstract description 66
- 241000509579 Draco Species 0.000 claims description 10
- 238000005192 partition Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 abstract description 16
- 238000005070 sampling Methods 0.000 description 18
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 238000013507 mapping Methods 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- HHJOBSJNFNVLNR-UHFFFAOYSA-N 3-[(4,6-difluoro-1,3,5-triazin-2-yl)amino]-7-methoxychromen-2-one Chemical compound O=C1OC2=CC(OC)=CC=C2C=C1NC1=NC(F)=NC(F)=N1 HHJOBSJNFNVLNR-UHFFFAOYSA-N 0.000 description 1
- 101150114886 NECTIN1 gene Proteins 0.000 description 1
- 102100023064 Nectin-1 Human genes 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000001012 protector Effects 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
提供了用于网格压缩的方法、装置和系统。该过程可以包括使用网格参数化来生成与包括三维坐标的网格相关联的纹理平面。该过程可以包括针对纹理平面中的三角形,基于三角形的第二顶点的纹理坐标和第三顶点的纹理坐标的编码状态来预测三角形的顶点中的第一顶点的纹理坐标。该过程可以进一步包括确定第一顶点的预测纹理坐标与第一顶点的实际纹理坐标之间的残差;以及使用熵编码对残差进行编码。
Description
交叉引用
本申请要求于2022年10月21日提交的美国临时申请第63/418,399号和于2023年10月19日提交的美国申请第18/490,325号的优先权,其公开内容通过引用整体结合在本申请中。
技术领域
本公开涉及一组高级视频编解码技术。更具体地,本公开涉及在网格压缩中使用图表分区的纹理坐标预测的方法和系统。
背景技术
世界的先进三维(3D)表示使得能够实现更具沉浸感的交互和交流形式。为了在3D表示中实现真实感,3D模型正变得越来越复杂,并且大量数据与这些3D模型的创建和消耗相关联。3D网格被广泛用于对沉浸式内容进行3D建模。
网格可以由描述体积对象的表面的若干多边形组成。每个多边形可以由其在3D空间中的顶点以及这些顶点如何连接的信息(称为连接性信息)来定义。这种映射通常由称为XYZ坐标的一组参数坐标来描述。在一些实施例中,诸如颜色、法线等顶点属性也可与网格顶点相关联。通过利用用2D属性图参数化网格的映射信息,属性也可以与网格的表面相关联。这种映射通常由与网格顶点相关联的一组参数坐标(称为UV坐标或纹理坐标)来描述。2D属性图可用于存储高分辨率属性信息,诸如纹理、法线、位移等。此类信息可用于各种目的,诸如纹理映射和着色。
动态网格序列可能需要大量数据,因为它可能具有随时间变化的大量信息。因此,需要高效的压缩技术来存储和传输此类内容。
虽然先前开发了网格压缩标准IC、MESHGRID、FAMC来解决具有恒定连接性和时变几何形状和顶点属性的动态网格。然而,这些标准没有考虑时变属性图和连接性信息。
此外,体积采集技术生成恒定连接性动态网格也是具有挑战性的,尤其是在实时性受限的情况下。现有标准不支持这种类型的动态网格内容。
发明内容
根据实施例,可以提供一种用于视频编码过程的方法、装置和存储计算机指令的非易失性计算机可读介质。
根据实施例,该方法可以包括:使用网格参数化将网格分区成多个图表,每个图表与局部纹理域相关联;基于多个图表生成纹理平面,其中,纹理平面包括三角形;确定三角形的第二顶点和第三顶点的纹理坐标是否已被编码,其中,第一顶点、第二顶点和第三顶点是三角形在纹理平面中的不同顶点;基于三角形的第二顶点和第三顶点的纹理坐标是否已被编码,来预测三角形的第一顶点的纹理坐标;以及对第一顶点的预测的所述纹理坐标与第一顶点的实际纹理坐标之间的残差进行熵编码。
根据实施例,该装置可以包括:至少一个存储器,其被配置为存储程序代码;以及至少一个处理器,其被配置为读取程序代码并按照程序代码的指示进行操作。该程序代码可包括:第一分区代码,其被配置为使至少一个处理器使用网格参数化将网格分区成多个图表,每个图表与局部纹理域相关联;第一生成代码,其被配置为使至少一个处理器基于多个图表生成纹理平面,其中,纹理平面包括三角形;第一确定代码,其被配置为使至少一个处理器确定三角形的第二顶点和第三顶点的纹理坐标是否已被编码,其中,第一顶点、第二顶点和第三顶点是三角形在纹理平面中的不同顶点;第一预测代码,其被配置为使至少一个处理器基于三角形的第二顶点和第三顶点的纹理坐标是否已被编码来预测三角形的第一顶点的纹理坐标;以及第一编码代码,其被配置为使至少一个处理器对第一顶点的预测的所述纹理坐标与第一顶点的实际纹理坐标之间的残差进行熵编码。
根据实施例,存储指令的非易失性计算机可读介质可包括一个或多个指令,该一个或多个指令在由用于视频编码的设备的一个或多个处理器执行时使一个或多个处理器使用网格参数化将网格分区成多个图表,每个图表与局部纹理域相关联;基于多个图表生成纹理平面,其中,纹理平面包括三角形;确定三角形的第二顶点和第三顶点的纹理坐标是否已被编码,其中第一顶点、第二顶点和第三顶点是三角形在纹理平面中的不同顶点;基于三角形的第二顶点和第三顶点的纹理坐标是否已被编码来预测三角形的第一顶点的纹理坐标;对第一顶点的预测的所述纹理坐标与第一顶点的实际纹理坐标之间的残差进行熵编码。
附图说明
从以下详细描述和附图中,所公开的主题的进一步的特征、性质和各种优点将更加明显,其中:
图1是根据本公开的实施例的通信系统的简化框图的示意图。
图2是根据本公开的实施例的流式系统的简化框图的示意图。
图3是根据本公开的实施例的视频编码器和解码器的简化框图的示意图。
图4是根据本公开的实施例的用于顶点位置压缩的过程的示例性图示。
图5是图示了根据本公开的实施例的用于视频编码的过程的示例性流程图。
图6是适于实现实施例的计算机系统的示图。
具体实施方式
网格可以包括描述体积对象的表面的若干多边形。如上所述,网格几何形状信息由顶点连接性信息、3D坐标和纹理坐标等组成。
根据本公开的一方面,提供了用于动态网格压缩的并行处理的方法、系统和非易失性存储介质。本公开的实施例还可以应用于静态网格。
参考图1至图2,描述了用于实现本公开的编码和解码结构的本公开的实施例。
图1图示了根据本公开的实施例的通信系统100的简化框图。系统100可以包括经由网络150互连的至少两个终端110、120。对于数据的单向传输,第一终端110可以在本地位置处对可包括网格数据的视频数据进行编码以经由网络150传输到另一终端120。第二终端120可从网络150接收另一终端的已编码视频数据,对已编码数据进行解码并显示已恢复的视频数据。单向数据传输在媒体服务应用等中可能是常见的。
图1图示了第二对终端130、140,用于支持例如在视频会议期间可能发生的已编码视频的双向传输。对于数据的双向传输,每个终端130、140可以对在本地位置处捕获的视频数据进行编码,以经由网络150传输到另一终端。每个终端130、140还可接收由另一终端传输的已编码视频数据,可对已编码数据进行解码且可在本地显示设备处显示已恢复的视频数据。
在图1中,终端110至140可以是例如服务器、个人计算机和智能电话,和/或任何其他类型的终端。例如,终端(110至140)可以是膝上型计算机、平板计算机、媒体播放器和/或专用视频会议设备。网络150表示在终端110至140之间传送已编码视频数据的任何数量的网络,包括例如有线和/或无线通信网络。通信网络150可以在电路交换和/或分组交换信道中交换数据。代表性的网络包括电信网络、局域网、广域网和/或因特网。出于本讨论的目的,网络150的体系结构和拓扑对于本公开的操作可能是不重要的,除非在下文中解释。
图2图示了作为所公开主题的应用的示例的视频编码器和解码器在流式环境中的放置。所公开的主题可以与其他支持视频的应用一起使用,包括例如视频会议、数字电视、在包括CD、DVD、记忆棒等的数字媒体上存储压缩视频等。
如图2所示,流式系统200可以包括捕获子系统213,该捕获子系统213包括视频源201和编码器203。流式系统200可以进一步包括至少一个流式服务器205和/或至少一个流式客户端206。
视频源201可以创建例如包括3D网格和与该3D网格相关联的元数据的流202。视频源201可以包括例如3D传感器(例如深度传感器)或3D成像技术(例如数码相机),以及被配置为使用从3D传感器或3D成像技术接收的数据来生成3D网格的计算设备。与已编码的视频码流相比可能具有高数据量的样本流202可以由耦合到视频源201的编码器203处理。编码器203可包括硬件、软件或其组合,以实现或实施下文更详细描述的所公开主题的各方面。编码器203还可以生成已编码视频码流204。与未压缩流202相比可能具有较低数据量的已编码视频码流204可以存储在流式服务器205上以供将来使用。一个或多个流式客户端206可存取流式服务器205以检索视频码流209,该视频码流209可以是已编码视频码流204的副本。
流式客户端206可以包括视频解码器210和显示器212。视频解码器210可以例如对视频码流209(其为已编码视频码流204的传入副本)进行解码,并创建可在显示器212或另一呈现设备(未描绘)上呈现的传出视频样本流211。在一些流式系统中,可以根据某些视频编码/压缩标准对视频码流204、209进行编码。
图3是使用编码器和解码器的动态网格压缩和网格重建的框架300的示例图。
如图3所示,框架300可以包括编码器301和解码器351。编码器301可以包括一个或多个输入网格305、具有UV图谱(UV atlas)310的一个或多个网格、占用图315、几何图320、属性图325和元数据330。解码器351可以包括已解码的占用图335、已解码的几何图340、已解码的属性图345、已解码的元数据350和重建的网格360。
根据本公开的一方面,输入网格305可以包括一个或多个帧,并且一个或多个帧中的每一个可以通过一系列操作进行预处理,并用于生成具有UV图谱310的网格。作为示例,预处理操作可包括但不限于跟踪、参数化、重新网格化、体素化等。在一些实施例中,预处理操作可仅在编码器侧执行而不在解码器侧执行。网格参数化可以是将纹理映射到2D和3D网格的表面的过程。
具有UV图谱310的网格可以是2D网格。具有UV图谱的2D网格可以是其中网格的每个顶点可以与2D图集上的UV坐标相关联的网格。基于采样来处理具有UV图谱310的网格并将其转换成多个图。作为示例,可以基于对具有UV图谱的2D网格进行采样来处理UV图谱310并将其转换成占用图、几何图和属性图。可以使用适当的编解码器(例如,HVEC、VVC、AV1等)对所生成的占用图335、几何图340和属性图345进行编码并将其传输到解码器。在一些实施例中,元数据(例如,连接性信息等)也可以被传输到解码器。
根据一方面,解码器351可从编码器接收已编码的占用图、几何图和属性图。除了本文描述的实施例之外,解码器351还可以使用适当的技术和方法来解码占用图、几何图和属性图。在实施例中,解码器351可以生成已解码的占用图335、已解码的几何图340、已解码的属性图345和已解码的元数据350。可以使用一个或多个重建滤波器和技术,基于已解码的占用图335、已解码的几何图340、已解码的属性图345和已解码的元数据350,将输入网格305重建为重建网格360。在一些实施例中,元数据330可以被直接传输到解码器351,并且解码器351可以基于已解码的占用图335、已解码的几何图340和已解码的属性图345使用元数据来生成重建网格360。后滤波技术,包括但不限于重新网格化、参数化、跟踪、体素化等,也可以应用于重建网格360。
具有2D UV图谱的输入网格可以具有顶点,其中网格的每个顶点可以在2D图集上具有相关联的UV坐标。可以通过对UV图谱上的一个或多个点/位置进行采样来生成占用图、几何图和属性图。如果每个样本位置在由网格顶点定义的多边形内,则其可以被占用或不被占用。对于每个被占用的样本,可以通过从相关联的多边形顶点进行插值来计算其对应的3D几何坐标和属性。
根据本公开的一方面,采样率在整个2D图集上可以是一致的。在一些实施例中,u轴和v轴的采样率可以不同,使得各向异性重新网格化成为可能。在一些实施例中,整个2D图集可以被划分成多个区域,诸如条带或图块,并且每个这样的区域可以具有不同的采样率。
根据本公开的一方面,每个区域(或整个2D图集)的采样率可以用高级语法发信号通知,包括但不限于序列头、帧头、条带头等。在一些实施例中,每个区域(或整个2D图集)的采样率可以从编码器和解码器两者都假设的预先建立的一组速率中选择。因为编码器和解码器都知道预先建立的速率组,所以一个特定采样率的信令只需要发信号通知预先建立的速率组中的索引。这种预先建立的组的示例可以是每2个像素、每4个像素、每8个像素等。在一些实施例中,网格帧的每个区域(或整个2D图集)的采样率可以根据预先建立的速率组,根据同一帧的其他已编码区域中先前使用的采样率,或根据其他已编码网格帧中先前使用的采样率来预测。
在一些实施例中,每个区域(或整个2D图集)的采样率可以基于每个区域(或整个2D图集)的一些特征。作为示例,采样率可以基于活动一一对于纹理丰富的区域(或整个2D图集),或具有高活动性的区域(或整个2D图集),可以将采样率设置得更高。作为另一示例,对于平滑区域(或整个2D图集),或具有低活动性的区域(或整个2D图集),可以将采样率设置为较低。
在一些实施例中,可以以允许预测和直接信令的组合的方式来发信号通知网格帧的每个区域(或整个2D图集)的采样率。语法可以被构造成指示采样率是被预测还是被直接发信号通知。当被预测时,可以进一步发信号通知要使用哪个预测值-采样率(predictor-sampling rate)。当被直接发信号通知时,可以发信号通知表示速率值的语法。
在本公开中,更详细地考虑诸如三角形网格的示例性多边形。三角形网格是一种多边形网格,包括由其公共边或角连接的一组三角形。本公开中公开的方法可以扩展到其他多边形网格,诸如四边形或五边形网格等。
在相关技术中,通过Draco方法,采用从3D坐标到纹理坐标的三角形相似性来压缩纹理坐标。假设点C、N和P是三角形在纹理平面(例如,2D平面)中的三个顶点,其中,C是待编码的下一顶点。
Draco方法纹理坐标压缩可以包括:
步骤1:如果在编码顺序列表中N或P在C之后,则用增量编码压缩C的纹理坐标。
步骤2:如果N和P两者的编码顺序均在C之前,则使用预测编码方法对C进行编码:CX垂直于NP。计算X和并且然后得到两个候选值,即 作为潜在的预测坐标。
步骤3:计算C与两个候选之间的欧几里得距离,并选择较小的一者作为C的预测坐标。标志将用于标记哪一个是预测坐标。
步骤4:计算原始坐标与预测坐标之间的残差。通过使用熵编码来压缩残差和标志。
所提出的实施例可以单独使用或以任何顺序组合使用。此外,可以通过处理电路(例如,一个或多个处理器或一个或多个集成电路)来实施方法(或实施例)、编码器和解码器中的每一者。在一个示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序。
在本公开中,提出了用于网格压缩中的纹理坐标预测的多种方法和系统。注意,它们可以单独应用或以任何形式组合应用。还应注意,这些方法不仅可应用于动态网格,而且可应用于静态网格,其中,仅存在网格的一个帧,或网格内容不随时间变化。
图表分区
网格参数化是在两个表面(例如,2D网格表面或3D网格表面)之间一对一映射的过程。对于网格,给定3D顶点的位置值以及连接性信息,网格参数化算法可以生成纹理图谱(texture atlas)。纹理图谱是可以被映射到网格上的2D纹理的非重叠图。在本公开中,我们将使用一种称为iso-图表(iso-chart)的网格参数化算法来说明我们的方法。基于iso-图表的网格参数化包括执行初始参数化。然后,可以在一个或多个迭代中执行拉伸优化以减少网格的失真。然后,可以执行谱聚类以将表面分区成图表,这些图表被递归地分割直到满足预定的拉伸标准。所公开的方法也可以应用于其他网格参数化算法。
在iso-图表中,网格被分区成多个图表。每个图表被参数化为局部纹理域。局部纹理域对使用iso-图表生成的图表的纹理进行映射。然后,将所有图表打包成单个纹理平面以形成纹理图谱。纹理平面是二维图表的平面和/或平面表示。
在本公开中,公开了实现基于图表分区的纹理坐标压缩的方法和系统。
纹理坐标预测
对于网格,在对3D顶点的位置值和连接性信息两者进行编码之后,我们采用图表分区来重建位置值和连接性信息。图表分区可基于iso-图表或其他网格参数化算法。在图表分区之后,生成具有参数化局部纹理域的图表。例如,所公开的方法可以使用网格参数化将网格分区成多个图表,每个图表与局部纹理域相关联。接着,所公开的方法可基于多个图表生成纹理平面,其中,纹理平面包括三角形。此外,所公开的方法确定三角形的第二顶点和第三顶点的纹理坐标是否已被编码。这里,第一顶点、第二顶点和第三顶点是三角形在同一纹理平面中的不同顶点。接下来,所公开的方法可基于三角形的第二顶点和第三顶点的纹理坐标是否已被编码来预测三角形的第一顶点的纹理坐标。如果三角形的第二顶点和第三顶点的纹理坐标中的至少一者未被编码,则所公开的方法可以经由增量编码来压缩第一顶点的纹理坐标。如果三角形的第二顶点和第三顶点的纹理坐标均已被编码,则所公开的方法基于第一顶点、第二顶点和第三顶点是否与同一局部纹理域相关联的确定结果来预测第一顶点的纹理坐标。接下来,所公开的方法对第一顶点的预测纹理坐标与第一顶点的实际纹理坐标之间的残差执行熵编码。
图5图示了上述方法的更详细的示例。如在图5中,C、N和P是三角形在纹理平面中的三个顶点,其中C是待编码的下一顶点。根据实施例,纹理坐标压缩可以如下工作:
如果N或P未被编码,则C的纹理坐标可以用增量编码来压缩。
如果N和P两者均已被编码,则检查N、P和C是否是三角形在局部纹理域中的顶点。
如果N、P和C是三角形在局部纹理域中的顶点,则假设N、P和C的局部坐标分别为N局部、P局部和C局部。在局部纹理域中,绘制一条从C局部到边N局部P局部的垂直线,并假设交点为X局部。使用X局部、N局部、P局部和C局部来识别纹理平面中的点X,其中X在边NP上或NP的延长线上,且其保持局部纹理域中的长度|NX|与|XP|之间的比率,即|NX|/|XP|=|N局部X局部|/|X局部P局部|。在纹理平面中,从点X开始,绘制一条到边NP的垂直线,并在该垂直线上选择点C′,使得长度|CX|/|NP|=|C局部X局部|/|N局部P局部|。然后C′可以用作C的纹理坐标的预测。
在同一或另一实施例中,如果N、P和C在任何局部纹理域中不属于同一三角形,则应用Draco方法来预测C的纹理坐标。
该过程可以包括计算原始坐标与预测坐标之间的残差。通过使用熵编码来压缩残差。
替代地,实施例可以包括从局部纹理域或Draco方法选择纹理预测。纹理坐标压缩工作如下:
如果N或P未被编码,则C的纹理坐标可以用增量编码来压缩。
如果N和P两者均已被编码,则检查N、P和C是否是三角形在局部纹理域中的顶点。
如果N、P和C是三角形在局部纹理域中的顶点,则估计使用局部纹理域的纹理坐标预测的编码成本和使用Draco的纹理坐标预测的编码成本,并且发信号通知具有较小编码成本的一个。然后,应用具有较小编码成本的纹理坐标预测。
如果N、P和C在任何局部纹理域中不属于同一三角形,则应用Draco方法来预测C的纹理坐标。
该过程可以包括计算原始坐标与预测坐标之间的残差。通过使用熵编码来压缩残差和标志。
用于预处理网格的纹理坐标压缩
在实施例中,可以对网格应用预处理以提高网格压缩效率。对于由iso-图表预处理的网格,纹理坐标压缩可以如下工作:
如果N或P未被编码,则C的纹理坐标可以用增量编码来压缩。
如果N和P两者均已被编码,则可从局部纹理域重建C,并且因此C可不被编码。
本领域技术人员将知道,所提出的方法可以单独使用或以任何顺序组合使用。此外,可以通过处理电路(例如,一个或多个处理器或一个或多个集成电路)来实施方法(或实施例)、编码器和解码器中的每一者。在一个示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序。
在本公开中,提出了用于网格压缩中的纹理坐标预测的方法和系统。本领域技术人员将知道它们可以单独应用或以任何形式组合应用。还应注意,这些方法不仅可应用于动态网格,而且可应用于静态网格,其中仅存在网格的一个帧,或网格内容不随时间变化。此外,所公开的方法和系统不限于纹理坐标压缩。它们还可以应用于例如3D坐标压缩。
如上所述,本公开使用三角形网格来详细描述本公开,但是本领域技术人员将知道可以使用任何形状的网格多边形。
图5是图示了用于网格压缩的过程500的流程图。
在操作505处,可以使用网格参数化将网格分区成多个图表。在实施例中,每个图表与局部纹理域相关联。
在操作510处,可以基于多个图表生成与网格相关联的纹理平面。在示例性实施例中,纹理平面可以成形为三角形。在实施例中,纹理平面可以是除三角形以外的形状。
在实施例中,生成纹理平面可以包括:针对网格接收多个顶点的三维(3D)坐标以及与3D坐标相关联的连接性信息;将接收到的网格分区成多于一个图表;基于3D坐标和连接性信息,为多于一个图表生成相应纹理域;以及通过组合相应纹理域来生成纹理平面。
在操作515处,针对纹理平面中的三角形,可以确定三角形的第二顶点和第三顶点的纹理坐标是否已被编码,其中,第一顶点、第二顶点和第三顶点是纹理平面中的三角形不同顶点。
在实施例中,操作515还可以包括基于三角形的第二顶点和第三顶点的纹理坐标是否已被编码,来预测三角形的顶点中的第一顶点的纹理坐标。
在实施例中,预测可以包括:基于确定三角形在纹理平面中的第二顶点的纹理坐标和第三顶点的纹理坐标已被编码,确定第一顶点、第二顶点、第三顶点是否是局部纹理域中同一三角形的顶点;基于确定第一顶点、第二顶点和第三顶点是局部纹理域中同一三角形的顶点,使用从第一局部顶点到在第二局部顶点与第三局部顶点之间延伸的线的第一垂直线,来确定在第二局部顶点与第三局部顶点之间延伸的线上的局部交点,其中,局部交点以第一比例划分在第二局部顶点与第三局部顶点之间延伸的线,并且其中,第一局部顶点、第二局部顶点和第三局部顶点是局部纹理域中的与纹理平面中的第一顶点、第二顶点和第三顶点对应的点;确定纹理平面中对应于局部交点的交点,其中,该交点以第一比例划分在第二顶点与第三顶点之间延伸的线;在纹理平面中确定第一点,该第一点位于第二垂直线上,所述第二垂直线从所述交点到在第二顶点与第三顶点之间延伸的线;以及基于第一点在纹理平面中的位置来预测第一顶点的纹理坐标。
在一些实施例中,相应纹理域中的每个纹理域具有三角形形状。
在一些实施例中,基于确定第一顶点、第二顶点和第三顶点不是局部纹理域中的同一三角形的顶点,可以使用draco编码对第一顶点的纹理坐标进行编码。
在一些实施例中,基于确定三角形在纹理平面中的第二顶点和第三顶点中的至少一者未被编码,可以使用增量编码对第一顶点的纹理坐标进行编码。
在操作520处,可以使用熵编码对第一顶点的预测纹理坐标与第一顶点的实际纹理坐标之间的所确定残差进行编码。
在实施例中,连接性信息可以包括与网格相关联的坐标信息、边信息、形状信息、纹理信息等。在实施例中,网格可以被划分成多于一个图表。在一些实施例中,一个或多个图表可以是iso-图表。iso-图表可以包括使用iso-图或本领域技术人员已知的任何技术生成的图表。
在实施例中,纹理平面可以包括在网格中表示的体积对象的二维(2D)表示,并且纹理坐标可以包括纹理平面中的顶点的2D坐标。在实施例中,纹理域可以包括一个或多个图表的2D表示。
上述技术可以通过计算机可读指令实现为计算机软件,并且物理地存储在一个或多个计算机可读介质中。例如,图6示出了计算机系统600,其适于实现所公开某些实施例。
所述计算机软件可通过任何合适的机器代码或计算机语言进行编码,通过汇编、编译、链接等机制创建包括指令的代码,所述指令可由计算机中央处理单元(CPU),图形处理单元(GPU)等直接执行或通过译码、微代码等方式执行。
所述指令可以在各种类型的计算机或其组件上执行,包括例如个人计算机、平板电脑、服务器、智能手机、游戏设备、物联网设备等。
图6所示的用于计算机系统600的组件本质上是示例性的,并不用于对实现本申请实施例的计算机软件的使用范围或功能进行任何限制。也不应将组件的配置解释为与计算机系统600的非限制性实施例中所示的任一组件或其组合具有任何依赖性或要求。
计算机系统600可以包括某些人机界面输入设备。这种人机界面输入设备可以通过触觉输入(如:键盘输入、滑动、数据手套移动)、音频输入(如:声音、掌声)、视觉输入(如:手势)、嗅觉输入(未示出),对一个或多个人类用户的输入做出响应。所述人机界面设备还可用于捕获某些媒体,气与人类有意识的输入不必直接相关,如音频(例如:语音、音乐、环境声音)、图像(例如:扫描图像、从静止影像相机获得的摄影图像)、视频(例如二维视频、包括立体视频的三维视频)。
人机界面输入设备可包括以下中的一个或多个(仅绘出其中一个):键盘601、鼠标602、触控板603、触摸屏610、数据手套、操纵杆605、麦克风606、扫描仪607、照相机608。
计算机系统600还可以包括某些人机界面输出设备。这种人机界面输出设备可以通过例如触觉输出、声音、光和嗅觉/味觉来刺激一个或多个人类用户的感觉。这样的人机界面输出设备可包括触觉输出设备(例如通过触摸屏610、数据手套或操纵杆605的触觉反馈,但也可以有不用作输入设备的触觉反馈设备)。这些设备可以是音频输出设备(例如,扬声器609、耳机(未示出))、视觉输出设备(例如,包括阴极射线管屏幕、液晶屏幕、等离子屏幕、有机发光二极管屏的屏幕610,其中每一个都具有或没有触摸屏输入功能、每一个都具有或没有触觉反馈功能一一其中一些可通过诸如立体画面输出的手段输出二维视觉输出或三维以上的输出;虚拟现实眼镜(未示出)、全息显示器和放烟箱(未示出))以及打印机(未示出)。
计算机系统600还可以包括人可访问的存储设备及其相关介质,如包括具有CD/DVD的高密度只读/可重写式光盘(CD/DVD ROM/RW)620或类似介质621的光学介质、拇指驱动器622、可移动硬盘驱动器或固体状态驱动器623,诸如磁带和软盘(未示出)的传统磁介质,诸如安全软件保护器(未示出)等的基于ROM/ASIC/PLD的专用设备,等等。
本领域技术人员还应当理解,结合所公开的主题使用的术语″计算机可读介质″不包括传输介质、载波或其它瞬时信号。
计算机系统600还可以包括通往一个或多个通信网络的接口。所述网络可以是无线的、有线的、光学的。网络还可为局域网、广域网、城域网、车载网络和工业网络、实时网络、延迟容忍网络等等。网络的示例可以包括以太网、无线局域网、蜂窝网络(GSM、3G、4G、5G、LTE等)等局域网、电视有线或无线广域数字网络(包括有线电视、卫星电视、和地面广播电视)、车载和工业网络(包括CANBus)等等。某些网络通常需要外部网络接口适配器,用于连接到某些通用数据端口或外围总线649(例如,计算机系统600的USB端口);其它系统通常通过连接到如下所述的系统总线集成到计算机系统600的核心(例如,以太网接口集成到PC计算机系统或蜂窝网络接口集成到智能电话计算机系统)。通过使用这些网络中的任何一个,计算机系统600可以与其它实体进行通信。所述通信可以是单向的,仅用于接收(例如,无线电视),单向的仅用于发送(例如CAN总线到某些CAN总线设备),或双向的,例如通过局域或广域数字网络到其它计算机系统。这些通信可以包括与云计算环境655的通信。上述的每个网络和网络接口可使用某些协议和协议栈。
上述的人机界面设备、人可访问的存储设备以及网络接口654可以连接到计算机系统600的核心640。
核心640可包括一个或多个中央处理单元(CPU)641、图形处理单元(GPU)642、以现场可编程门阵列(FPGA)643形式的专用可编程处理单元、用于特定任务的硬件加速器644等。这些设备以及只读存储器(ROM)645、随机存取存储器646、内部大容量存储器(例如内部非用户可存取硬盘驱动器、固态硬盘等)647等可通过系统总线648进行连接。在某些计算机系统中,可以以一个或多个物理插头的形式访问系统总线648,以便可通过额外的中央处理单元、图形处理单元等进行扩展。外围装置可直接附接到核心的系统总线648,或通过外围总线649进行连接。外围总线的体系结构包括外部控制器接口PCI、通用串行总线USB等。外围总线的架构包括PCI、USB等。图形适配器650可以包括在核心640中。
CPU 641、GPU 642、FPGA 643和加速器644可以执行某些指令,这些指令组合起来可以构成上述计算机代码。该计算机代码可以存储在ROM 645或RAM646中。过渡数据也可以存储在RAM 646中,而永久数据可以存储在例如内部大容量存储器647中。通过使用高速缓冲存储器可实现对任何存储器设备的快速存储和检索,高速缓冲存储器可与一个或多个CPU641、GPU 642、大容量存储器647、ROM 645、RAM 646等紧密关联。
所述计算机可读介质上可具有计算机代码,用于执行各种计算机实现的操作。介质和计算机代码可以是为本申请的目的而特别设计和构造的,也可以是计算机软件领域的技术人员所熟知和可用的介质和代码。
作为实施例而非限制,具有体系结构的计算机系统600,特别是核心640,可以作为处理器(包括CPU、GPU、FPGA、加速器等)提供执行包含在一个或多个有形的计算机可读介质中的软件的功能。这种计算机可读介质可以是与上述的用户可访问的大容量存储器相关联的介质,以及具有非易失性的核心640的特定存储器,例如核心内部大容量存储器647或ROM645。实现本申请的各种实施例的软件可以存储在这种设备中并且由核心640执行。根据特定需要,计算机可读介质可包括一个或一个以上存储设备或芯片。该软件可以使得核心640特别是其中的处理器(包括CPU、GPU、FPGA等)执行本文所述的特定过程或特定过程的特定部分,包括定义存储在RAM 646中的数据结构以及根据软件定义的过程来修改这种数据结构。另外或作为替代,计算机系统可以提供逻辑硬连线或以其它方式包含在电路(例如,加速器644)中的功能,该电路可以代替软件或与软件一起运行以执行本文所述的特定过程或特定过程的特定部分。在适当的情况下,对软件的引用可以包括逻辑,反之亦然。在适当的情况下,对计算机可读介质的引用可包括存储执行软件的电路(如集成电路(IC)),包含执行逻辑的电路,或两者兼备。本申请包括任何合适的硬件和软件组合。
虽然本申请已对多个示例性实施例进行了描述,但实施例的各种变更、排列和各种等同替换均属于本申请的范围内。因此应理解,本领域技术人员能够设计多种系统和方法,所述系统和方法虽然未在本文中明确示出或描述,但其体现了本申请的原则,因此属于本申请的精神和范围之内。
Claims (20)
1.一种用于网格压缩的方法,其特征在于,所述方法由至少一个处理器执行,所述方法包括:
使用网格参数化将网格分区成多个图表,每个图表与局部纹理域相关联;
基于所述多个图表生成纹理平面,其中,所述纹理平面包括三角形;
确定所述三角形的第二顶点和第三顶点的纹理坐标是否已被编码,其中,第一顶点、所述第二顶点和所述第三顶点是所述三角形在所述纹理平面中的不同顶点;
基于所述三角形的所述第二顶点和所述第三顶点的所述纹理坐标是否已被编码,来预测所述三角形的所述第一顶点的纹理坐标;以及
对所述第一顶点的预测的所述纹理坐标与所述第一顶点的实际纹理坐标之间的残差进行熵编码。
2.根据权利要求1所述的方法,其特征在于,预测所述第一顶点的所述纹理坐标包括:
基于确定所述三角形在所述纹理平面中的所述第二顶点的所述纹理坐标和所述第三顶点的所述纹理坐标已被编码,确定所述第一顶点、所述第二顶点、所述第三顶点是否是局部纹理域中同一三角形的顶点;
基于确定所述第一顶点、所述第二顶点和所述第三顶点是所述局部纹理域中同一三角形的顶点,使用第一垂直线来确定在所述第二局部顶点与所述第三局部顶点之间延伸的线上的局部交点,所述第一垂直线从第一局部顶点到在第二局部顶点与第三局部顶点之间延伸的线;
其中,所述局部交点以第一比例划分在所述第二局部顶点与所述第三局部顶点之间延伸的所述线,并且
其中,所述第一局部顶点、所述第二局部顶点和所述第三局部顶点是所述局部纹理域中的与所述纹理平面中的所述第一顶点、所述第二顶点和所述第三顶点对应的点;
确定所述纹理平面中与所述局部交点对应的交点,
其中,所述交点以所述第一比例划分在所述第二顶点与所述第三顶点之间延伸的线;
在所述纹理平面中确定第一点,所述第一点位于从所述交点到在所述第二顶点与所述第三顶点之间延伸的所述线的第二垂直线上;以及
基于所述第一点在所述纹理平面中的位置,来预测所述第一顶点的所述纹理坐标。
3.根据权利要求2所述的方法,其特征在于,所述方法包括:
基于确定所述第一顶点、所述第二顶点和所述第三顶点不是所述局部纹理域中同一三角形的顶点,使用draco编码对所述第一顶点的所述纹理坐标进行编码。
4.根据权利要求1所述的方法,其特征在于,预测所述第一顶点的所述纹理坐标包括:
基于确定所述三角形在所述纹理平面中的所述第二顶点和所述第三顶点中的至少一者未被编码,使用增量编码对所述第一顶点的所述纹理坐标进行编码。
5.根据权利要求1所述的方法,其特征在于,生成所述纹理平面包括:
针对所述网格接收多个顶点的三维(3D)坐标以及与所述3D坐标相关联的连接性信息;
将接收到的网格分区成多于一个图表;
基于所述3D坐标和所述连接性信息,为所述多于一个图表生成相应局部纹理域;以及
通过组合所述相应局部纹理域,来生成所述纹理平面。
6.根据权利要求5所述的方法,其特征在于,所述多于一个图表可以是iso-图表。
7.根据权利要求5所述的方法,其特征在于,所述相应局部纹理域中的每个局部纹理域具有三角形形状。
8.一种用于网格压缩的装置,其特征在于,所述装置包括:
至少一个存储器,其被配置为存储程序代码;以及
至少一个处理器,其被配置为读取所述程序代码并按照所述程序代码的指示进行操作,所述程序代码包括:
第一分区代码,其被配置为使所述至少一个处理器使用网格参数化将网格分区成多个图表,每个图表与局部纹理域相关联;
第一生成代码,其被配置为使所述至少一个处理器基于所述多个图表生成纹理平面,其中,所述纹理平面包括三角形;
第一确定代码,其被配置为使所述至少一个处理器确定所述三角形的第二顶点和第三顶点的纹理坐标是否已被编码,其中,第一顶点、所述第二顶点和所述第三顶点是所述三角形在所述纹理平面中的不同顶点;
第一预测代码,其被配置为使所述至少一个处理器基于所述三角形的所述第二顶点和所述第三顶点的所述纹理坐标是否已被编码,来预测所述三角形的所述第一顶点的纹理坐标;以及
第一编码代码,其被配置为使所述至少一个处理器对所述第一顶点的预测的所述纹理坐标与所述第一顶点的实际纹理坐标之间的残差进行熵编码。
9.根据权利要求8所述的装置,其特征在于,所述第一预测代码包括:
第二确定代码,其被配置为使所述至少一个处理器基于确定所述三角形在所述纹理平面中的所述第二顶点的所述纹理坐标和所述第三顶点的所述纹理坐标已被编码,确定所述第一顶点、所述第二顶点、所述第三顶点是否是局部纹理域中同一三角形的顶点;
第三确定代码,其被配置为使所述至少一个处理器基于确定所述第一顶点、所述第二顶点和所述第三顶点是所述局部纹理域中同一三角形的顶点,使用第一垂直线来确定在所述第二局部顶点与所述第三局部顶点之间延伸的线上的局部交点,所述第一垂直线从第一局部顶点到在第二局部顶点与第三局部顶点之间延伸的线;
其中,所述局部交点以第一比例划分在所述第二局部顶点与所述第三局部顶点之间延伸的所述线,并且
其中,所述第一局部顶点、所述第二局部顶点和所述第三局部顶点是所述局部纹理域中的与所述纹理平面中的所述第一顶点、所述第二顶点和所述第三顶点对应的点;
第四确定代码,其被配置为使所述至少一个处理器确定所述纹理平面中与所述局部交点对应的交点,
其中,所述交点以所述第一比例划分在所述第二顶点与所述第三顶点之间延伸的线;
第五确定代码,其被配置为使所述至少一个处理器在所述纹理平面中确定第一点,所述第一点位于从所述交点到在所述第二顶点与所述第三顶点之间延伸的所述线的第二垂直线上;以及
第二预测代码,其被配置为使所述至少一个处理器基于所述第一点在所述纹理平面中的位置来预测所述第一顶点的所述纹理坐标。
10.根据权利要求9所述的装置,其特征在于,所述程序代码进一步包括:
第六编码代码,其被配置为使所述至少一个处理器基于确定所述第一顶点、所述第二顶点和所述第三顶点不是所述局部纹理域中同一三角形的顶点,使用draco编码对所述第一顶点的所述纹理坐标进行编码。
11.根据权利要求8所述的装置,其特征在于,所述第一预测代码包括:
第三编码代码,其被配置为使所述至少一个处理器基于确定所述三角形在所述纹理平面中的所述第二顶点和所述第三顶点中的至少一者未被编码,使用增量编码对所述第一顶点的所述纹理坐标进行编码。
12.根据权利要求8所述的装置,其特征在于,所述第一生成代码包括:
第一接收代码,其被配置为使所述至少一个处理器针对所述网格接收多个顶点的三维(3D)坐标以及与所述3D坐标相关联的连接性信息;
第二分区代码,其被配置为使所述至少一个处理器将接收到的网格分区成多于一个图表;
第七生成代码,其被配置为使所述至少一个处理器基于所述3D坐标和所述连接性信息,为所述多于一个图表生成相应纹理域;以及
第八生成代码,其被配置为使所述至少一个处理器通过组合所述相应纹理域,来生成所述纹理平面。
13.根据权利要求12所述的装置,其特征在于,所述多于一个图表可以是iso-图表。
14.根据权利要求12所述的装置,其特征在于,所述相应纹理域中的每个纹理域具有三角形形状。
15.一种存储指令的非易失性计算机可读介质,其特征在于,所述指令包括:一个或多个指令,所述一个或多个指令在由用于网格压缩的设备的一个或多个处理器执行时使所述一个或多个处理器:
使用网格参数化,将网格分区成多个图表,每个图表与局部纹理域相关联;
基于所述多个图表生成纹理平面,其中,所述纹理平面包括三角形;
确定所述三角形的第二顶点和第三顶点的纹理坐标是否已被编码,其中第一顶点、所述第二顶点和所述第三顶点是所述三角形在所述纹理平面中的不同顶点;
基于所述三角形的所述第二顶点和所述第三顶点的所述纹理坐标是否已被编码来预测所述三角形的所述第一顶点的纹理坐标;以及
对所述第一顶点的预测的所述纹理坐标与所述第一顶点的实际纹理坐标之间的残差进行熵编码。
16.根据权利要求15所述的非易失性计算机可读介质,其特征在于,预测所述第一顶点的所述纹理坐标包括:
基于确定所述三角形在所述纹理平面中的所述第二顶点的所述纹理坐标和所述第三顶点的所述纹理坐标已被编码,确定所述第一顶点、所述第二顶点、所述第三顶点是否是局部纹理域中同一三角形的顶点;
基于确定所述第一顶点、所述第二顶点和所述第三顶点是所述局部纹理域中同一三角形的顶点,使用第一垂直线来确定在所述第二局部顶点与所述第三局部顶点之间延伸的线上的局部交点,所述第一垂直线从第一局部顶点到在第二局部顶点与第三局部顶点之间延伸的线;
其中,所述局部交点以第一比例划分在所述第二局部顶点与所述第三局部顶点之间延伸的所述线,并且
其中,所述第一局部顶点、所述第二局部顶点和所述第三局部顶点是所述局部纹理域中的与所述纹理平面中的所述第一顶点、所述第二顶点和所述第三顶点对应的点;
确定所述纹理平面中与所述局部交点对应的交点,
其中,所述交点以所述第一比例划分在所述第二顶点与所述第三顶点之间延伸的线;
在所述纹理平面中确定第一点,所述第一点位于从所述交点到在所述第二顶点与所述第三顶点之间延伸的所述线的第二垂直线上;以及
基于所述第一点在所述纹理平面中的位置,来预测所述第一顶点的所述纹理坐标。
17.根据权利要求16所述的非易失性计算机可读介质,其特征在于,进一步包括使所述一个或多个处理器执行以下的指令:
基于确定所述第一顶点、所述第二顶点和所述第三顶点不是所述局部纹理域中同一三角形的顶点,使用draco编码对所述第一顶点的所述纹理坐标进行编码。
18.根据权利要求15所述的非易失性计算机可读介质,其特征在于,预测所述第一顶点的所述纹理坐标包括:
基于确定所述三角形在所述纹理平面中的所述第二顶点和所述第三顶点中的至少一者未被编码,使用增量编码对所述第一顶点的所述纹理坐标进行编码。
19.根据权利要求15所述的非易失性计算机可读介质,其特征在于,生成所述纹理平面包括:
针对所述网格接收多个顶点的三维(3D)坐标以及与所述3D坐标相关联的连接性信息;
将接收到的网格分区成多于一个图表;
基于所述3D坐标和所述连接性信息,为所述多于一个图表生成相应纹理域;以及
通过组合所述相应纹理域,来生成所述纹理平面。
20.根据权利要求15所述的非易失性计算机可读介质,其特征在于,所述多于一个图表可以是iso-图表。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/418,399 | 2022-10-21 | ||
US18/490,325 | 2023-10-19 | ||
US18/490,325 US20240185471A1 (en) | 2022-10-21 | 2023-10-19 | Texture coordinate compression using chart partition |
PCT/US2023/035573 WO2024086314A2 (en) | 2022-10-21 | 2023-10-20 | Texture coordinate compression using chart partition |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118475958A true CN118475958A (zh) | 2024-08-09 |
Family
ID=92159230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202380015236.XA Pending CN118475958A (zh) | 2022-10-21 | 2023-10-20 | 使用图表分区的纹理坐标压缩 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118475958A (zh) |
-
2023
- 2023-10-20 CN CN202380015236.XA patent/CN118475958A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220180567A1 (en) | Method and apparatus for point cloud coding | |
US20230306701A1 (en) | Parallel approach to dynamic mesh alignment | |
CN116848553A (zh) | 基于二维uv地图集采样的用于动态网格压缩的方法 | |
US20240185471A1 (en) | Texture coordinate compression using chart partition | |
CN118475958A (zh) | 使用图表分区的纹理坐标压缩 | |
US20240078713A1 (en) | Texture coordinate prediction in mesh compression | |
US20230306648A1 (en) | Mesh parameterization with temporally correlated uv atlases | |
US20230334714A1 (en) | Coding of boundary uv2xyz index for mesh compression | |
US20240007670A1 (en) | Dynamic mesh vertex displacements coding | |
US20230306649A1 (en) | Predictive coding of boundary uv2xyz index for mesh compression | |
US20240292028A1 (en) | Grouping of duplicate vertices in position compression | |
US20230308669A1 (en) | Predictive coding of boundary uv information for mesh compression | |
US20230040484A1 (en) | Fast patch generation for video based point cloud coding | |
CN118575200A (zh) | 用于网格压缩的自适应几何滤波 | |
CN118355411A (zh) | 通过使用表面反射对称进行的基础网格编码 | |
CN117280688A (zh) | 用于网格压缩的几何滤波 | |
KR20240090790A (ko) | 메시 압축을 위한 적응형 지오메트리 필터링 | |
CN118318254A (zh) | 用于对称网格的连接性编码 | |
CN118556256A (zh) | 多个子网格编码 | |
CN118369693A (zh) | 多个属性图合并 | |
CN117396923A (zh) | 利用用于动态网格压缩的边界信息的三角形化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |