CN103918009A - 预测位置编码 - Google Patents
预测位置编码 Download PDFInfo
- Publication number
- CN103918009A CN103918009A CN201180074712.2A CN201180074712A CN103918009A CN 103918009 A CN103918009 A CN 103918009A CN 201180074712 A CN201180074712 A CN 201180074712A CN 103918009 A CN103918009 A CN 103918009A
- Authority
- CN
- China
- Prior art keywords
- null
- lattice
- cell
- subelement
- subelement lattice
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/005—Tree description, e.g. octree, quadtree
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
- G06T17/205—Re-meshing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/40—Tree coding, e.g. quadtree, octree
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Generation (AREA)
Abstract
描述了一种用于三维网格模型的位置编码的方法以及设备,其包含:估计非空子单元格Cl,k的符号概率,其中,Ql,k表示在l层中的第k个单元格,根据似合平面的准确度P估计符号概率;如果非空子单元格具有多于一个顶点,则细分非空子单元格以产生子单元格;确定在l层中是否更多的未被处理的非空子单元格;如果在l层中不再有未被处理的非空子单元格,则确定在l层中的所有非空子单元格是否均只具有一个顶点,并且细分单元格的中心与在细分单元格内部的点之间的距离是否小于或等于第一阈值;以及,如果在l层中的所有非空子单元格均只具有一个顶点,并且细分单元格的中心与在细分单元格内部的点之间的距离小于或等于第一阈值,则对表示非空子单元格的位置的符号进行熵编码。
Description
技术领域
本发明涉及三维(3D)模型,更具体地,涉及压缩并传送3D网格数据模型以及接收并解码压缩的3D数据。
背景技术
如建筑设计、化工厂和机械计算机辅助设计(CAD)之类的大型3D工程模型正越来越多地被运用于各种虚拟世界应用,诸如Second LifeTM和Google EarthTM。在多数的工程模型中,存在大量的小型到中型尺寸的连通成分(component),每个成分平均具有多至几百个多边形。而且,这些类型的模型具有大量的在各个位置、尺度和方向上重复的几何特性。与影片(电影)产业一样,计算机和视频游戏也使用3D模型。电影产业使用3D模型作为动画和真人影片中的角色和物体。3D模型还被用于医学和建筑。
自20世纪90年代初期以来,提出了各种算法来高效地压缩3D网格。然而,早期的工作主要集中在压缩具有平滑表面和小三角形的单连通的3D模型上。对于诸如大型3D工程模型这样的多连通的3D模型,单独地压缩其成分。这造成相对低效的压缩。实际上,通过移除在不同连通成分之间的冗余可以大幅提高压缩性能。在影片产业中,3D模型压缩对于向顾客通过宽带传送3D画面以及向影院传送中极为重要。3D网格模型(例如,电影、影片)消耗非常大量的带宽。
在《Compression of Large3D Engineering models Using AutomaticDiscovery of repeating geometric Features》(D.Shikare、S.Bhakar和S.P.Mudur,6th International Fall Workshop on Vision,Modeling and Visualization(VMV2001),2001年11月21日至23日,德国斯图加特)(以下记为“Shikare”)中提出了一种在大型3D工程模型中自动地探索重复的几何特性的方法。然而,对于3D工程模型的更高效的压缩留有大量的余地。例如,没有提供涉及重复实例的转换信息的压缩解决方案,而这对于存储原始模型是有必要的。考虑3D工程模型通常所具有的大尺寸的连通成分,这类信息还消耗大量的存储。另外,如果使用成分的顶点位置的PCA(主成分分析),则具有相同几何形状和不同连接(connectivity)的成分将具有相同的中值和相同的方向轴。因此,当前的技术水平不适合检测在不同尺度下的重复图案。仅在尺度(亦即,尺寸)上有所不同的两个成分不被识别为同一等价类的重复特性。另外,期望得到比在“Shikare”中所述的更高的压缩率。
在《Geometric Compression for Interactive transmission》(O.Devillers、P.Gandoin,IEEE Visualization,2000年,第319至326页)(以下记为“Devillers”)中说明了一种基于KD树的对网格模型的所有连通成分的中值进行编码的压缩算法。每次迭代时,该算法均将单元格细分为两个子单元格并对这两个子单元格中的一个的顶点的数量进行编码。如果父单元格包含p个顶点,则可以通过算术编码器使用log2(p+1)个位对子单元格中的一个的顶点的数量进行编码。递归地施加该细分,直至每一个非空单元格都足够小到只包含一个顶点并使得能够对顶点位置进行足够精确的重构为止。在Devillers中提到该算法对于非均匀分布最为高效,而对于规律分布则是最差的情况。
符号序列(其中,符号从字母表或符号集中选取)可以通过熵编码进行压缩。熵编码引擎基于统计模型,亦即基于符号的概率分布对符号分配码字。一般地,通过更少的位对使用更频繁的符号进行熵编码,而使用较多的位对不频繁出现的符号进行熵编码。
熵编码已被研究了多年。基本上,存在三类熵编码方法:可变长度编码(VLC),例如Huffman编码;算术编码;以及基于词典的压缩,例如Lempel-Ziv(LV)压缩或者Lempel-Ziv-Welch(LZW)压缩。
VLC码使用整数数量的位表示每个符号。Huffman编码是使用最广泛的VLC方法。其对具有更大的概率的符号分配更少的位,同时对具有更小的概率的符号分配更多的位。Huffman编码在每个符号的概率均为1/2的整数幂的时候是最优的。算法编码可以对每个符号分配小数数量的位,使得能够更接近于熵。Huffman编码和算术编码已被广泛地用在现有的图像(视频)压缩标准中,例如JPEG、MPEG-2、H.264/AVC。LZ或LZW利用基于表格的压缩模型,其中,用表格条目替代重复的数据串。对于多数的LZ方法,根据初期输入数据动态地生成表格。基于词典的算法已被利用在例如GIF、Zip、PNG标准中。
可以使用基于空间树的方法压缩诸如水密3D模型的随机点位置和顶点位置这样的几何数据。水密3D模型是其中的顶点均匀且密集地分布的模型。基于空间树的方法按照八叉树或者KD树来组织输入空间点。遍历树并存储树还原所需的信息。
最初,围绕3D模型的所有的点构造边界盒。首先,将所有3D点的边界盒看作单个单元格。为了创建空间树,递归地细分单元格,直至每个非空单元格都足够小到只包含一个顶点并使得能够对顶点位置进行足够精确的重构为止。由于可以根据对应的单元格的中心坐标还原顶点位置,基于空间树的算法可以得到具有与单一分辨率压缩算法相同压缩率的多分辨率压缩。
图1示出在2D的情况下的KD树编码的原理。该2D模型被边界盒10围住,其被称为父单元格。有7个顶点位于该父单元格之中。KD树编码算法首先使用预定义的数量的位对全部数量的顶点进行编码,然后递归地细分单元格。每当将父单元格细分为两个子单元格时,就对这两个子单元格中的一个的顶点的数量进行编码。按照惯例,这可以是(在垂直分割之后的)左边的子单元格或者(在水平分割之后的)上部的单元格。如果父单元格包含p个顶点,则可以通过算术编码器使用log2(p+1)个位对子单元格中的一个的顶点的数量进行编码。递归地施加该细分,直至每个非空单元格都足够小到只包含一个顶点并使得能够对顶点位置进行足够精确的重构为止。关于对所有重复实例的位置的压缩,首先将所有位置的整个边界盒10看作父单元格。在图1的示例中,使用32个位对全部数量(7个)的顶点进行编码。然后施加垂直分割,从而得到左边的子单元格V1和右边的子单元格V2。在接下来的编码步骤中,对在左边的子单元格V1中的顶点的数量(即4)进行编码。根据在父单元格中的顶点数量确定用于编码的位的数量:在该示例中为log2(7+1)=3个位。根据在父单元格中的顶点的数量和在左边的子单元格V1中的顶点的数量,可以推导出在右边的子单元格V2中的顶点的数量,因此不需要对其进行编码。
在接下来的步骤中,施加水平分割。现在成为父单元格V1的左边的子单元格V1被分为上部的子单元格V1H1和下部的子单元格V1H2。现在成为父单元格V2的右边的子单元格V2被分为上部的子单元格V2H1和下部的子单元格V2H2。对具有2个顶点的左上部的子单元V1H1继续进行编码。因此,接下来数字2被编码,其中在算术编码器中使用log2(4+1)=2.3个位。如上所述,不需要对在左下部的子单元格V1H2中的顶点的数量进行编码,原因是其可以根据在左边的单元格V1中的和在左上部的子单元格V1H1中的顶点的数量推导出来。然后,对右边的单元格V2施加相同的过程,其结果是使用两个位对0进行编码。如图1所示,需要再有两次分割步骤,直至每个顶点均在单独的单元格中为止;并且,需要甚至更多的步骤,直至每个顶点均被充分地位于在其单元格中为止。每个步骤均需要对数量越来越多的1或者0进行编码。取决于所需的准确度,另外的步骤的数量可能较大。
另一方面,基于八叉树的方法在每次迭代中将非空单元格细分为八个子单元格。为了便于图示,在图2和图3中示出了描述四叉树的2D示例。遍历顺序如箭头所示。对于编码,当前的父单元格被分为以预定义的顺序遍历的四个子单元格,并且每个子单元格有一个位指出在该子单元格中是否存在点。例如在图2中,对两个父单元格1和2的子单元格如箭头所示进行遍历,其中非空的子单元格的颜色为灰色。第一父单元格1的子单元格210、211、212和213按照第一序列“1010”表示。因为遍历的第一和第三子单元格210、212非空(亦即,包含一个或多个点),所以用“1”表示它们。第二和第四子单元格211、213是空的(亦即,没有包含点),所以用“0”指示它们。图3示出了使用不同遍历的相同的单元格以及得到的序列。
图4示出八叉树方案的父单元格和子单元格。在八叉树方案中,父单元格被分为八个子单元格40、……、46(在左下部的单元格42后面的一个隐藏的子单元格未被示出)。可能的遍历顺序可以是从左到右、从上到下并且从前到后,结果得到单元格40-41-42-43-44-45-(在左下部的单元格42后面的隐藏单元格)-46这样的遍历序列。对应地,在八叉树的情况下,非空子单元格配置表示为8位二进制数,其覆盖了空及非空的子单元格的所有255种可能的组合。不需要对非空的子单元格的数量进行单独的编码。表格1是序列的示例。
11111111
01100110
00111011
11001100
00010000
00000010
00000010
10000000
00000001
表格1.示例性的序列
注意:在父单元格中的子单元格的特定的遍历顺序对于本实施例并不是非常地相关。原则上,任何遍历顺序均可以被用于本实施例。以下,将用于表示子单元格配置的位的串表示为符号。在表1的示例中,每个符号使用8个位。在其他实施例中,在符号中的位的数量可以不同。例如,使用4位的串来表示四叉树的子单元格配置,因此,在图2的示例中的用于符号的位的数量是4。
图5示出八叉树结构的示例。每个节点均与符号相关联并且每层均对应于树形表示的一定的精确度。初始的单元格被划分成八个单元格。子单元格1、2、5、6和7包含更多的顶点,而子单元格3、4和8是空的,结果得到表示在0层中的子单元格配置的8位的符号11001110(510)。每个非空的子单元格均被进一步地划分,并且在1层中表示对应的子单元格配置。可以继续该细分直至每个非空单元格仅包含一个顶点为止。
符号 | p | 符号 | p | 符号 | p | 符号 | p | 符号 | p |
00000100 | 0.1280 | 00000101 | 0.0034 | 10100000 | 0.0020 | 00001010 | 10-3 | 01000100 | 10-3 |
00000010 | 0.1275 | 00001001 | 0.0030 | 00000011 | 0.0015 | 00001011 | 10-3 | 01100010 | 10-3 |
00001000 | 0.1167 | 01100000 | 0.0025 | 00010001 | 0.0015 | 00001111 | 10-3 | 01101000 | 10-3 |
10000000 | 0.1162 | 10000010 | 0.0025 | 00010010 | 0.0015 | 00011000 | 10-3 | 10111011 | 10-3 |
01000000 | 0.1128 | 10001000 | 0.0025 | 00101000 | 0.0015 | 00011100 | 10-3 | 11001100 | 10-3 |
00010000 | 0.1118 | 00000110 | 0.0020 | 00110000 | 0.0015 | 00100110 | 10-3 | 11010000 | 10-3 |
00000001 | 0.1108 | 00001100 | 0.0020 | 01010000 | 0.0015 | 00111011 | 10-3 | 11111111 | 10-3 |
00100000 | 0.1098 | 00100010 | 0.0020 | 11000000 | 0.0015 | 01000010 | 10-3 | 00000111 | 5·10-4 |
表格2.示例性的概率分布
对八叉树使用宽度优先遍历(breadth-first traveral),可以将3D网格的顶点位置组织为符号序列。对于图5中的示例,符号序列成为:11001110,11000000,10010100,00100110,00001000以及00001000。
在表格2中以概率递减的顺序示出了在复杂3D模型中出现最频繁的符号的概率分布。从表格2可以看出,在二进制表示中只有一个“1”的符号以优势的概率(>93%)出现。几何解释可以是在若干细分之后顶点很少共享单元格。即,八叉树的底部的层被只有一个“1”的符号主导,而其他符号则更经常出现在顶部的层。
根据本实施例,定义了两个符号集:全体符号集S0={1,2,……,255},其包括所有可能的符号;以及符号集S1={1,2,4,8,16,32,64,128},其只包括具有一个“1”的符号,亦即出现最频繁的符号。注意:为了易于表示,将8位二进制数串记为十进制数。如果符号属于符号集S1,则该符号被称为S1符号;否则,被称为非S1符号。
为了受益于八叉树的统计特性,标题为《A Model-Adaptive EntropyCoding Method for Octree Compression》的PCT申请第PCT/CN2011/077279号提出将用八叉树表示的序列自适应地分为用S0或者S1进行了编码的若干子序列。子序列边界的索引被作为补充信息进行编码。由于补充信息的开销(例如,每个索引两个字节),一般用符号集S1对连续的S1符号的较大的子序列进行编码。
当S1符号和非S1符号同时出现在序列的一部分中并且S1符号具有高得多的概率时,由于开销,将这样的部分划分成若干子序列是低效的。另一方面,因为非S1符号出现概率低,所以使用符号集S0对这样的部分进行编码也是低效的。
在3D网格编码中,通常使用基于空间树分解的方法压缩几何数据,例如,在Devillers中所述的基于KD树的方法,或者在《Geometry GuidedProgressive Lossless3D Mesh Coding with Octree Decomposition》(J.L.Peng、C.C.Jay Kuo,ACM SIGGRAPH(ACM Transactions on Graphics24(3)),第609-616页,2005年)(以下记为“Peng”)以及《A Generic Scheme forProgressive Point Cloud Coding》(Y.Huang、J.Peng、C.C.J.Kuo和M.Gopi,IEEE Transactions on Visualization and Computer Graphics14,第440-453页,2008年)(以下记为“Huang”)中所述的基于八叉树的方法。除了支持渐进式的编码,Devillers、Peng和Huang这些方法还得到相当大的压缩增益。这些编码器递归地将指定3D模型的最小轴对齐边界盒细分为分别在KD树或八叉树的数据结构中的两个或八个子盒。递归地细分单元格,直至每一个非空单元格都足够小到只包含一个顶点并使得能够对顶点位置进行足够精确的重构为止。对于每次单元格细分,用一些符号表示每个子单元格是否为空。通过对八叉树进行宽度优先遍历并收集表示对遇到的节点的细分的符号,产生描述KD树或八叉树的符号序列,此处称其为遍历符号序列。然后,利用熵编码器-解码器(编码解码器)压缩该符号序列。为了减少符号序列的熵并由此提高编码效率,Peng和Huang均根据某个基于邻域的预测器对子单元格实施重新排序。
对于每次单元格细分,Peng对非空单元格的数量T(1≤T≤8)以及所有可能组合中的其非空子单元格配置的索引进行编码。在非空子单元格表示的过程中考虑几何信息,结果得到更好的压缩但更高的复杂度。
PCT/CN2011/077279和PCT/CN2011/078936提出丢弃非空子单元格的数量T。在这种情况下,用8位二进制数字表示非空子单元格配置,覆盖了所有的255种组合。通过熵编码对这些8位二进制数进行压缩。
在PCT/CN2011/077279和PCT/CN2011/078936中提出的基于统计的方法得到在随机分布的位置编码中比Devillers和Peng低得多的计算复杂度和更好的健壮性。对于水密3D模型的顶点压缩的情况则相反。原因是PCT/CN2011/077279和PCT/CN2011/078936不移除几何冗余,而几何冗余在位方面的成本相当大。
发明内容
本发明实现对位置编码的概率预测。统计编码不能够高效地移除在水密3D模型的顶点位置中的冗余。本发明利用在位置编码过程中的几何特性。在为3D模型创建八叉树时,基于3D模型的表面的平滑度为每个具体的单元格预测非空子单元格配置的概率。熵编码解码器对频繁出现的码值(例如0100)分配较短的码字,反之亦然。例如,如果0100的概率为50%,则对其分配较短的码字(约-log2(0.5)=1个位)。如果0110的概率为12.5%,则对其分配较长的码字(约-log2(0.125)=3个位)。因此,如果进来的码值被预测为高概率符号,则对应的码字通常较短。因为概率基于几何相关性,所以几何冗余实际上被移除。由此,可以高效地移除空间冗余并且能够得到更大的压缩。
说明了一种用于三维网格模型的位置编码的方法以及设备,其包含:估计非空子单元格Cl,k的符号概率,其中,Cl,k表示在l层中的第k个单元格,根据似合平面的准确度P估计所述符号概率;如果所述非空子单元格具有多于一个顶点,则细分所述非空子单元格以产生子单元格;确定在l层中是否存在更多的未被处理的非空子单元格;如果在l层中不存在更多的未被处理的非空子单元格,则确定在l层中的所有非空子单元格是否均只具有一个顶点,并且所述细分单元格的中心与所述细分单元格内部的点之间的距离是否小于或等于第一阈值;以及,如果在l层中的所有非空子单元格均只具有一个顶点,并且所述细分单元格的中心与所述细分单元格内部的点之间的距离小于或等于所述第一阈值,则对表示所述非空子单元格的位置的符号进行熵编码。
附图说明
根据以下详细说明,在结合附图阅读时可以最好地理解本发明。附图包括在下面简要说明的以下附图:
图1是对于二维(2D)情况下的基于KD树的几何编码的图示表示;
图2是对在2D情况下的基于四叉树的几何编码的图示表示;
图3是对在2D情况下的基于四叉树的几何编码的图示表示;
图4是对单元格分割的图示表示;
图5是对示例性的八叉树的图示表示;
图6A示出用于示例性的四叉树构造的遍历顺序;
图6B示出对示例性的四叉树构造的2D空间的分级划分;
图6C示出对示例性的四叉树构造进行图6B的分级2D划分得到的四叉树符号;
图7A示出在连接信息可用时的2D位置预测的示例;
图7B示出在连接信息不可用时的2D位置预测的示例;
图8是根据本发明原理的本发明的预测位置编码方法的示例性的实施例的流程图;
图8A是图8的步骤805的分解图;
图9是根据本发明原理的本发明的预测位置解码方法的示例性的实施例的流程图;
图9A是图9的步骤905的分解图;
图10是包括根据本发明原理的预测位置编码的设备的示例性的实施例的框图;
图11是包括根据本发明原理的预测位置解码的设备的示例性的实施例的框图。
具体实施方式
为了举例说明,在图6A至6C中示出创建四叉树的过程。图6A示出用于示例性的四叉树构造的遍历顺序。图6B示出对示例性的四叉树构造的2D空间进行的分级划分。小黑方块表示要被编码的点。在图6B的最左边的四叉树上,将平面划分成相同大小的4个子单元格。因为每个子单元格包含至少一个点,所以对应的非空子单元格配置为1111。在图6B的中间的四叉树上,进一步地将每个子单元格划分成4个子单元格并且对非空子单元格配置进行编码,例如,在图6B中的子单元格“TL”只有右下部的子单元格包含点。因此,对应的非空子单元格配置为0010。继续到图6B的最右边的四叉树,迭代地细分单元格并对非空子单元格配置进行编码。图6C示出对示例性的四叉树构造进行图6B的分级2D划分得到的四叉树符号。四叉树被构造为如图6C所示那样;每层均对应于一次细分迭代。
本发明高效地压缩规律分布的顶点的位置。本发明有四个关键点:
1.使用每个子单元格的中心和通过拟合相邻单元格的中心点得到的平面之间的距离计算非空子单元格配置的符号概率;
2.使用作为由某个子单元格的中心点和相邻单元格的中心点形成的凸包的表面区域的值的距离度量计算非空子单元格配置的符号概率;
3.为单元格拟合平面,如果连接信息可用,则编码解码器使用其中至少一个顶点与当前的单元格的顶点中的一个相连接的单元格的中心点;
4.为单元格拟合平面,如果连接信息不可用,则编码解码器使用包含至少一个顶点的邻近的单元格的中心点;
5.根据拟合平面的准确度调整所预测的概率。例如,如果拟合误差较小,则就将概率设为所预测的值。否则,将概率设为更接近于均匀分布。可以将拟合误差的阈值设为配置参数。如果设置阈值,则使用该阈值确定拟合误差是大还是小,并由此确定是否调整符号概率。
为了便于说明,使用2D示例解释本发明的位置预测方法。在2D的情况下,平面拟合变成线拟合。图7A和7B描述了在2D空间中的示例性的顶点分布。图7A示出在连接信息可用时的2D位置预测的示例。图7B示出在连接信息不可用时的2D位置预测的示例。
A:
使用已知的连接信息,能够以直接的方式得到相邻单元格。子单元格越接近拟合平面,就越有可能它是非空的。根据这种度量,一种观察是:子单元格越接近拟合平面,由当前的子单元格的中心点和所有的相邻单元格的中心点形成的凸包的表面区域就越小。可以通过具有O(nlogn)复杂度的标准算法(诸如Graham扫描)计算出该凸包。一旦得到该凸包,就可以使用初级的几何方法容易地计算出表面区域。对于子单元格p、q、r和s,将该区域度量记为distk,其中k=p,q,r,s。
distk=area(ConvexHull(k,NeighboringCells)) (1a)
B:
在图7A中,连接信息可用。给出顶点的连接,可以计算出在每层中的子单元格的连接。如图7A所示,顶点位于单元格C(i,j)的子单元格q中,亦即,四叉树符号是使用图6A的遍历顺序的0100。已知单元格C(i,j)与单元格C(i-2,j-1)、C(i+2,j)、C(i+2,j+1)相连接。单元格集合SC定义哪些包含这些单元格。基于在SC中的单元格的中心坐标用线拟合在单元格集合SC中的点,得到线L。描述该线的函数可以表示为ax+by+c=0。
在图7B中,连接信息不可用。如图7B所示,顶点位于单元格C(i,j)的子单元格q中,亦即,四叉树符号还是使用图6A的遍历顺序的0100。曲线表示实际的边。已知在单元格C(i-1,j-1)、C(i,j-1)、C(i+1,j)、C(i+1,j+1)和C(i,j)中存在顶点。这些单元格包含在单元格集合SC中,并且基于单元格集合SC中的点的中心坐标用线进行拟合,得到线L。描述该线的函数可以表示为ax+by+c=0。
先前提出的方法对非空子单元格配置符号(0001、0010、0100、1000)分配相同的概率。本发明自适应地基于所拟合的线与子单元格p、q、r及s的中心点之间的距离分配不相等的概率。用ck(xk,yk)表示子单元格的中心点,并用distkk=p,q,r,s表示它们到所拟合的线的距离,
其中,size是要划分的单元格的宽度。
基于通过(1a)或(1b)得到的distk的值,将概率计算为:
其中,probk是顶点位于子单元格k中的概率,u是将在下面进行说明的参数。
通过图7A及7B可以看出,线L与子单元格q的中心坐标之间的距离是在所有的子单元格中最小的,符号0100的概率被设为最大的值。因此,减少了该细分(0100)的符号的位成本。
注意:非空子单元格配置符号不只是0001、0010、0100和1000。单元格配置符号001、0010、0100和1000说明在非空的子单元格中只有一个顶点。在包含多个顶点的单元格的情况下的概率是什么呢?以符号0111为例,这表示有三个顶点分别在子单元格q、r和s中。用weightqrs表示该情况下的权数:
1/weightqrs=1/weightq+1/weightr+1/weights (4)
该情况很少出现并且weightqrs仍然过大,所以重新调节权数。编码解码器估计在当前的层中的单个顶点的符号(0001、0010、0100和1000)和多顶点的符号的概率。对每个符号的权数乘以估计出来的对应的概率。最后,通过对对应的权数进行归一化得到每个符号的概率,如等式(2)所示。
为了检查拟合准确度,计算所拟合的线L与Sc中的单元格的中心点之间的距离。假设Sc中的单元格是ck(xk,yk),k=1到n,
u表示拟合准确度。较大的u值表示较小的拟合误差。通过等式(3)计算出的概率更加可靠。较小的u值表示较大的拟合误差。这样,通过等式(3)计算出的概率不那么可靠。当将u的值代入等式(2)时,则概率函数随着u增加越来越接近于均匀分布。可以将拟合误差的阈值设为配置参数。如果设置阈值参数,则使用阈值确定拟合误差是大还是小,并由此确定是否调整符号概率。
在3D中,平面拟合而不是上述的线拟合被用于本发明的预测位置编码。为了表示顶点的3D位置,编码解码器构建表示子单元格的占有的八叉树。对于每次细分,使用带有感兴趣的顶点的子单元格的相邻顶点拟合平面。在3D的情况下,点位置(感兴趣的顶点)被表示成c(i,j,k)的形式,并且拟合平面的函数的形式为ax+by+cz+w=0。接下来,如果检查拟合平面的准确度,得到参数u。等式(5)被扩展成:
最后,设置非空子单元格配置的不同符号的概率。所得到的概率模型被用于对实际的非空子单元格配置进行的熵编码。
图8是根据本发明原理的本发明的预测位置编码方法的示例性的实施例的流程图。初始化单元格计数器。在805计算Cl,k的非空子单元格配置的预测,其中Cl,k表示在l层中的第k个单元格。在810再次细分单元格Cl,k。在815增加单元格计数器(k)。在820实施测试以确定在当前层是否存在更多的未被处理的单元格。如果存在更多的未被处理的单元格,则处理继续到805。如果不存在更多的未被处理的单元格,则在825熵编码器实施测试以确定在最深层的所有的非空子单元格是否均包含最多一个点(顶点)并且细分单元格的中心与在细分单元格vl,k内部的点之间的距离是否小于或等于所允许的最大误差,其中,所允许的最大误差为th并且cl,k是Cl,k的中心点。如果在最深层的所有单元格均包含最多一个点(顶点)并且细分单元格的中心与在细分单元格vl,k内部的点之间的距离小于或等于所允许的最大误差,则在830对非空子单元格进行编码。如果在最深层的所有单元格不是包含最多一个点(顶点),或者细分单元格的中心与细分单元格vl,k内部的点之间的距离大于允许的最大误差,则在835重新初始化单元格计数器(k)并增加层计数器(l)。然后处理继续到805。基本上,步骤805、810、815、820和835是上述的平面拟合,步骤825是上述的平面拟合准确度,并且步骤830包括设置概率和对得到的概率施加熵编码的步骤。
图8A是图8的步骤805的分解图。在840,在l层中只具有单个“1”的非空子单元格的概率,该概率记为prob1。在845实施测试以确定连接信息是否可用。如果连接可用,则在850,连接到当前单元格的单元格的中心坐标被用于拟合平面P。在855基于细分单元格的中心坐标和拟合平面之间的距离预测非空子单元格Cl,k的符号概率。将只具有单个“1”(例如10000000、01000000……)的非空子单元格的概率乘以prob1。将具有多个“1”(例如11000000、01000100……)的非空子单元格的概率乘以(1-prob1)。在860检查拟合准确度并相应地调整所估计的概率。如果拟合误差小(准确度高),则不调整所预测的符号概率。如果拟合误差大(准确度低),则将所预测的符号概率设为更接近于均匀分布。如果连接信息不可用,则在865使用邻近的非空单元格的中心坐标拟合平面P。
解码处理基本上是编码过程的逆过程。经编码的符号在影院或消费者设备被接收并基于预测的概率逐层地每次一个地被编码,直至所有的符号均被编码为止。可以在处理之前或之后将经编码的符号存储在存储部件中。一旦符号被解码,就重新产生3D网格模型以便在消费者设备上或在影院进行呈现。可以将重新产生的3D网格模型在呈现之前存储在存储部件中。
图9是根据本发明原理的本发明的预测位置解码方法的示例性的实施例的流程图。对单元格计数器进行初始化。在905,在接收设备处对经编码的符号进行预测。可以在处理之前或之后将经编码的符号存储在存储部件中。在910基于预测概率对非空子单元格配置Cl,k的接收到的(经编码的)符号进行解码。在915根据经解码的配置细分单元格Cl,k。在920,增加单元格计数器(k)。在925实施测试以确认在该层中是否存在更多的未被处理的单元格。如果在该层中存在更多的未被处理的单元格,则处理继续到905。如果在该层中不存在更多的未被处理的单元格,则在930实施测试以确定是否已接收了八叉树的最底层。如果已接收了八叉树的最底层,则在935重新产生3D网格模型以便进行呈现。可以在进行呈现之前将重新产生的3D网格模型存储在存储部件中。如果未接收八叉树的最底层,则在940增加层计数器(l)并且对单元格计数器(k)进行重新初始化。处理继续到905。
图9A是图9的步骤905的分解图。在940,在l层中只具有单个“1”的非空子单元格的概率,将该概率记为prob1。在945实施测试以确定连接信息是否可用。如果连接信息可用,则在950使用连接到当前单元格的单元格的中心坐标拟合平面P。在955基于细分单元格的中心坐标与拟合平面之间的距离预测非空子单元格Cl,k的符号概率。将只具有单个“1”(例如10000000、01000000……)的非空子单元格的概率乘以prob1。将具有多个“1”(例如11000000、01000100……)的非空子单元格的概率乘以(1-prob1)。在960检查拟合准确度并且相应地调整所估计的概率。如果拟合误差小(准确度高),则不调整所预测的符号概率。如果拟合误差大(准确度低),则将所预测的符号概率设为更接近于均匀分布。如果连接信息不可用,则在965使用邻近的非空单元格的中心坐标拟合平面P。
图10是包括根据本发明原理的预测位置编码的设备的示例性的实施例的框图。现在参考图10,示出可以应用上述的特性及原理的数据传送系统或装置1000。数据传送系统或装置1000可以是例如使用诸如例如卫星、电缆、电话线路或地面广播等各种介质中的任何传送信号的前端或传送系统。数据传送系统或装置1000还(或者替代性地)可以被用于例如提供用于存储的信号。可以通过因特网或其他某种网络提供传送。数据传送或系统或装置1000能够产生并分发例如视频内容以及诸如例如3D网格模型这样的其他内容。
数据传送系统或装置1000从处理器1005接收经处理的数据及其他信息。在一种实现中,处理器1005处理3D网格模型的几何数据以产生符号序列。处理器1005还可以向1000提供元数据以指出例如如何将八叉树数据结构划分为多个部分以及其他信息。
数据传送系统或装置1000包括编码器1010以及能够传送经编码的信号的传送器1015。编码器1010从处理器1005接收数据信息。编码器1010产生(多个)经编码的信号。编码器1010的熵编码引擎可以是例如算术编码器或Huffman编码器。
编码器1010可以包括子模块,其中包括例如用于接收并将各种信息汇编到结构化的格式中以便存储或传送的汇编单元。各种信息可以包括例如经编码的或未经编码的视频、诸如例如子流长度指示器这样的经编码的或未经编码的元素、以及语法元素。在某些实现中,编码器1010包括处理器1005,并且因此实施处理器1005的操作。编码器1010根据关于图8及8A的上述原理运行。
传送器1015接收来自编码器1010的(多个)经编码的信号,并且以一个或多个输出信号传送该(多个)经编码的信号。传送器1015可以例如适用于传送具有一个或多个表示经编码的画面和/或与其相关的信息的比特流的节目信号。典型的传送器实施诸如例如提供纠错编码、对信号中的数据进行交织、对信号中的能量进行随机化、以及使用调制器1020将信号调制到一个或多个载波上等一个或多个功能这样的功能。传送器1015可以包括或者通过接口连接天线(未被示出)。另外,传送器1015的实现可以限制为调制器1020。
数据传送系统或装置1000还被通信耦合到存储单元1025。在一种实现中,存储单元1025被耦合到编码器1010,并且存储来自编码器1010的经编码的比特流。在另外的实现中,存储单元1025被耦合到传送器1015,并且存储来自传送器1015的比特流。来自传送器1015的比特流可以包括例如一个或多个已由传送器1015进行了进一步处理的一个或多个经编码的比特流。在不同的实现中,存储单元1025是一个或多个的标准的DVD、蓝光盘、硬盘驱动或者其他某种等价的存储设备。
图11是包括根据本发明的原理的预测位置解码的设备的示例性的实施例的框图。现在参考图11,示出可以实施上述特性和原理的数据接收系统或装置1100。可以将该数据接收系统或装置1100配置为通过诸如例如存储设备、卫星、电缆、电话线路或地面广播这样的各种介质接收信号。可以通过因特网或其他某种网络接收该信号。
该数据接收系统或装置1100可以是例如手机、计算机、机顶盒、电视机、或者其他接收经编码的视频并提供例如用于显示(例如显示给用户)、处理或存储的经解码的视频信号的设备。数据接收装置1100也可以是接收用于呈现给剧院观众的信号的剧院中的设备。由此,该数据接收系统或装置1100可以提供其输出给例如电视机的屏幕、计算机的监视器、计算机(用于存储、处理或显示)或者其他某种等价的存储、处理或显示设备。
该数据接收系统或装置1100能够接收并处理数据信息,其中该数据信息可以包括例如3D网格模型。该数据接收系统或装置1100包括接收器1105,用于接收诸如例如在本申请的实现中说明的信号这样的经编码的信号。接收器1105可以接收例如提供一个或多个3D网格模型和/或纹理图像的信号,或者从图10的数据传送系统1000输出的信号。
接收器1105可以例如适用于接收具有多个表示经编码的画面的比特流的节目信号。典型的接收器实施诸如例如接收经调制并编码的数据信号、使用解调器1110解调来自一个或多个载波的数据信号、对信号中的能量进行解随机化、对信号中的数据进行解交织、以及对该信号进行纠错解码等一个或多个功能这样的功能。接收器1105可以包括或者通过接口连接天线(未被示出)。接收器1105的实现可以限制为解调器1110。
数据接收系统或装置1100包括解码器1115。接收器1105提供接收到的信号给解码器1115。由接收器1105提供给解码器1115的信号可以包括一个或多个经编码的比特流。解码器1115输出诸如例如包括视频信息的经解码的视频信号这样的经解码的信号。解码器1115根据关于图9及9A的上述原理运行。
该数据接收系统或装置1100还被通信耦合到存储单元1120。在一种实现中,存储单元1120被耦合到接收器1105,并且接收器1105从存储单元1120存取比特流。在另外的实现中,存储单元1120被耦合到解码器1115,并且解码器1115从存储单元1120存取比特流。在不同的实现中,从存储单元1120存取的比特流包括一个或多个经编码的比特流。在不同的实现中,存储单元1120是一个或多个的标准的DVD、蓝光盘、硬盘驱动或者其他某种等价的存储设备。
在一种实现中,来自解码器1115的输出数据被提供给处理器1125。在一种实现中,处理器1125是被配置用于实施3D网格模型重构的处理器。在某些实现中,解码器1115包括处理器1125,并且因此实施处理器1125的操作。在其他实现中,处理器125是诸如例如机顶盒或电视机或在电影院的其他装备(设备、装置)这样的下行流设备的一部分。
提供了具有具体特性和方面的一个或多个实现。具体地,提供了涉及熵编码和解码的若干实现。预测位置熵编码和解码可以允许诸如例如3D网格的几何数据的压缩、随机的2D坐标以及任何具有变化的统计的数据源这样的各种应用。然而,这些实现的变型及另外的应用可被构想出并在本申请之内,并且所述实现的特性和方面可以适用于其他实现。
在本申请中说明的若干实现和特性可以被用在MPEG3DGC标准及其扩展的情况下。另外,这些实现和特性可以被用在另外的标准(现存的或将来的)的情况下,或者不涉及标准的情况下。
另外,本申请或其权利要求书可以涉及“确定”各种信息。确定信息可以包括例如估计信息、计算信息、预测信息或者从存储器接收信息之中的一种或多种。
另外,很多实现可以实现为一个或多个的编码器(例如,编码器1010)、解码器(例如,解码器1115)、处理来自解码器的输出的后处理器(例如,处理器1125)或者提供输入给编码器的预处理器(例如,处理器1005)。而且,根据本公开可以预见其他实现。
应当理解的是,本发明可以实现为硬件、软件、固件、专用处理器或者其结合。优选地,本发明实现为硬件和软件的结合。而且,软件优选地实现为有形地实施在程序存储设备上的应用程序。应用程序可被上载到包含任何适合的架构的机器上并被其执行。优选地,该机器被实现在具有诸如一个或多个中央处理单元(CPU)、随机存取存储器(RAM)以及(多个)输入/输出(I/O)接口这样的硬件的计算机平台上。该计算机平台还包括操作系统和微指令码。此处描述的各种处理及功能可以或者是微指令代码的一部分,或者是经由操作系统执行的应用程序(或者是以上两者的结合)的一部分。另外,其他各种外围设备可被连接到该计算机平台,诸如另外的数据存储设备和打印设备。
还应当理解的是,因为在附图中图示某些构成系统的组件和方法步骤优选地被实现为软件,所以系统组件之间的实际连接(或者处理步骤)可能根据本发明被编程的方式而不同。根据此处给出的教导,本领域的一般技术人员将能够构想出本发明的这些及相似的实现或配置。
Claims (22)
1.一种三维网格模型的位置编码的方法,所述方法包含:
估计非空子单元格Cl,k的符号概率,其中,Cl,k表示在l层中的第k个单元格,基于拟合平面P的准确度估计所述符号概率;
如果所述非空子单元格具有多于一个顶点,则细分所述非空子单元格以生成细分单元格;
确定在l层中是否存在更多的未被处理的非空子单元格;
如果在l层中不存在更多的未被处理的非空子单元格,则确定在l层中的所有非空子单元格是否均只具有一个顶点并且所述细分单元格的中心与在所述细分单元格内部的点之间的距离是否小于或等于第一阈值;以及
如果在l层中的所有非空子单元格均只具有一个顶点并且所述细分单元格的中心与在所述细分单元格内部的点之间的距离小于或等于所述第一阈值,则对表示所述非空子单元格的位置的符号进行熵编码。
2.根据权利要求1所述的方法,其中,所述第一阈值是最大误差。
3.根据权利要求1所述的方法,其中,指定层的子单元格成为下一个更深的层的单元格。
4.根据权利要求1所述的方法,其中,对在l层中具有单个“1”的所述非空子单元格估计符号概率,所述单个“1”表示所述非空子单元格包含至少一个顶点。
5.根据权利要求4所述的方法,还包含:响应由当前非空子单元格中心坐标和连接到当前非空子单元格的单元格的中心坐标形成的凸包的表面区域,预测所述非空子单元格Cl,k的符号概率。
6.根据权利要求3所述的方法,还包含:响应由当前非空子单元格中心坐标和连接到当前非空子单元格的单元格的中心坐标形成的凸包的表面区域,预测所述非空子单元格Cl,k的符号概率。
7.根据权利要求4所述的方法,其中,如果连接信息可用,则连接到当前非空子单元格的单元格的中心坐标被用于所述拟合平面P。
8.根据权利要求7所述的方法,还包含:
响应细分单元格的中心坐标与所述拟合平面P之间的距离,预测所述非空子单元格Cl,k的符号概率;
检查所述拟合平面P的拟合误差;以及
调整所估计的符号概率。
9.根据权利要求8所述的方法,其中,如果所述拟合误差小于第二阈值,则不调整所预测的符号概率。
10.根据权利要求8所述的方法,其中,如果所述拟合误差大于第二阈值,则将所预测的符号概率设为更接近于均匀分布。
11.根据权利要求8所述的方法,其中,所述拟合误差被用作用于计算非空子单元格配置的符号概率的函数的参数,使得在所述参数增加时所估计的非空子单元格的符号概率接近均匀分布。
12.根据权利要求4所述的方法,其中,如果连接信息不可用,则邻近的非空单元格的中心坐标被用于所述拟合平面P。
13.根据权利要求12所述的方法,还包含:
响应子单元格的中心坐标与所述拟合平面P之间的距离,预测所述非空子单元格Cl,k的符号概率;
检查所述拟合平面P的拟合误差;以及
调整所估计的符号概率。
14.根据权利要求13所述的方法,其中,如果所述拟合误差小于第二阈值,则不调整所预测的符号概率。
15.根据权利要求13所述的方法,其中,如果所述拟合误差大于第二阈值,则将所预测的符号概率设为更接近于均匀分布。
16.根据权利要求12所述的方法,其中,所述拟合误差被用作用于计算非空子单元格配置的符号概率的函数的参数,使得在所述参数增加时所估计的非空子单元格的符号概率接近均匀分布。
17.根据权利要求1所述的方法,其中,对在l层中具有多个“1”的所述非空子单元格估计符号概率。
18.根据权利要求17所述的方法,其中,对每个顶点指定权数,如果所述权数过大则重新调节所述权数,并且通过对应的权数对所估计的概率进行归一化。
19.一种用于三维网格模型的位置编码的编码器,包含:
编码器,所述编码器接收数据并产生经编码的信号,所述编码器适于实施以下操作:
估计非空子单元格Cl,k的符号概率,其中,Cl,k表示在l层中的第k个单元格,基于拟合平面P的准确度估计所述符号概率;
如果所述非空子单元格具有多于一个顶点,则细分所述非空子单元格以生成细分单元格;
确定在l层中是否存在更多的未被处理的非空子单元格;
如果在l层中不存在更多的未被处理的非空子单元格,则确定在l层中的所有非空子单元格是否均只具有一个顶点,并且所述细分单元格的中心与在所述细分单元格内部的点之间的距离是否小于或等于阈值;以及
如果在l层中的所有非空子单元格均只具有一个顶点,并且所述细分单元格的中心与在所述细分单元格内部的点之间的距离小于或等于所述阈值,则对表示所述非空子单元格的位置的符号进行熵编码。
20.根据权利要求19所述的编码器,其中,对在l层中具有单个“1”的所述非空子单元格估计符号概率,所述单个“1”表示所述非空子单元格包含至少一个顶点,如果连接信息可用,则连接到当前非空子单元格的单元格的中心坐标被用于所述拟合平面P,并且所述编码器还实施以下操作:
响应细分单元格的中心坐标与所述拟合平面P之间的距离,预测所述非空子单元格Cl,k的符号概率;
检查所述拟合平面P的拟合误差;以及
调整所估计的符号概率。
21.根据权利要求19所述的编码器,其中,对在l层中具有单个“1”的所述非空子单元格估计符号概率,如果连接信息不可用,则邻近的非空单元格的中心坐标被用于所述拟合平面P,并且所述编码器还实施以下操作:
响应细分单元格的中心坐标与所述拟合平面P之间的距离,预测所述非空子单元格Cl,k的符号概率;
检查所述拟合平面P的拟合误差;以及
调整所估计的符号概率。
22.根据权利要求19所述的编码器,其中,对在l层中具有多个“1”的所述非空子单元格估计符号概率,对每个顶点指定权数,如果所述权数过大则重新调节所述权数,并且通过对应的权数对所估计的概率进行归一化。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2011/081880 WO2013067674A1 (en) | 2011-11-07 | 2011-11-07 | Predictive position encoding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103918009A true CN103918009A (zh) | 2014-07-09 |
Family
ID=48288438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180074712.2A Pending CN103918009A (zh) | 2011-11-07 | 2011-11-07 | 预测位置编码 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9111333B2 (zh) |
EP (1) | EP2777018A4 (zh) |
JP (1) | JP2015504545A (zh) |
KR (1) | KR20140086998A (zh) |
CN (1) | CN103918009A (zh) |
WO (1) | WO2013067674A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110313183A (zh) * | 2017-02-23 | 2019-10-08 | 奈飞公司 | 用于对视频内容进行编码的迭代技术 |
CN112384953A (zh) * | 2018-06-25 | 2021-02-19 | 华为技术有限公司 | 点云的混合几何译码 |
US11153585B2 (en) | 2017-02-23 | 2021-10-19 | Netflix, Inc. | Optimizing encoding operations when generating encoded versions of a media title |
US11166034B2 (en) | 2017-02-23 | 2021-11-02 | Netflix, Inc. | Comparing video encoders/decoders using shot-based encoding and a perceptual visual quality metric |
US11444999B2 (en) | 2017-02-23 | 2022-09-13 | Netflix, Inc. | Iterative techniques for generating multiple encoded versions of a media title |
US11910039B2 (en) | 2017-07-18 | 2024-02-20 | Netflix, Inc. | Encoding technique for optimizing distortion and bitrate |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103814396B (zh) | 2011-07-18 | 2017-03-08 | 汤姆逊许可公司 | 编解码比特流的方法和装置 |
US9390110B2 (en) * | 2012-05-02 | 2016-07-12 | Level Set Systems Inc. | Method and apparatus for compressing three-dimensional point cloud data |
WO2015100280A1 (en) | 2013-12-24 | 2015-07-02 | Viking At, Llc | Mechanically amplified smart material actuator utilizing layered web assembly |
CN105139449B (zh) * | 2015-08-24 | 2018-03-20 | 上海未高科技有限公司 | 一种基于三维网格细分和编码的三维模型压缩方法 |
JP6826368B2 (ja) * | 2016-01-14 | 2021-02-03 | キヤノン株式会社 | 符号化装置及びその制御方法 |
EP3471065A4 (en) | 2016-06-14 | 2019-06-05 | Panasonic Intellectual Property Corporation of America | THREE-DIMENSIONAL DATA ENCODING AND DECODING METHOD AND THREE-DIMENSIONAL DATA ENCODING AND DECODING DEVICE |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
US10733766B2 (en) | 2016-10-19 | 2020-08-04 | Google, Llc | Methods and apparatus to encode and/or decode normals of geometric representations of surfaces |
US10313673B2 (en) | 2016-10-19 | 2019-06-04 | Google Llc | Methods and apparatus to encode and/or decode normals of geometric representations of surfaces |
US10496336B2 (en) * | 2016-11-17 | 2019-12-03 | Google Llc | K-D tree encoding for point clouds using deviations |
US9787321B1 (en) | 2016-11-17 | 2017-10-10 | Google Inc. | Point cloud data compression using a space-filling curve |
US10430975B2 (en) | 2016-11-17 | 2019-10-01 | Google Llc | Advanced k-D tree encoding for point clouds by most significant axis selection |
EP3407607A1 (en) | 2017-05-24 | 2018-11-28 | Thomson Licensing | Method and device for encoding and reconstructing a point cloud |
US10553035B2 (en) | 2017-06-02 | 2020-02-04 | Google Llc | Valence based implicit traversal for improved compression of triangular meshes |
US10950042B2 (en) * | 2017-06-02 | 2021-03-16 | Google Llc | Guided traversal in compression of triangular meshes |
EP3418976A1 (en) | 2017-06-22 | 2018-12-26 | Thomson Licensing | Methods and devices for encoding and reconstructing a point cloud |
EP4213096A1 (en) * | 2018-01-18 | 2023-07-19 | BlackBerry Limited | Methods and devices for entropy coding point clouds |
CN111937042A (zh) * | 2018-02-14 | 2020-11-13 | 松下电器(美国)知识产权公司 | 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置 |
EP3553745B1 (en) | 2018-04-09 | 2021-09-01 | BlackBerry Limited | Methods and devices for binary entropy coding of point clouds |
US10891758B2 (en) | 2018-07-23 | 2021-01-12 | Google Llc | Geometry encoder |
JP7359153B2 (ja) * | 2018-09-28 | 2023-10-11 | ソニーグループ株式会社 | 画像処理装置および方法 |
US10762667B2 (en) | 2018-11-30 | 2020-09-01 | Point Cloud Compression, B.V. | Method and apparatus for compression of point cloud data |
WO2020180424A1 (en) | 2019-03-04 | 2020-09-10 | Iocurrents, Inc. | Data compression and communication using machine learning |
JP7509751B2 (ja) | 2019-03-25 | 2024-07-02 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 三次元点のデータ符号化方法、三次元点のデータ復号方法、三次元点のデータ符号化装置、及び三次元点のデータ復号装置 |
WO2021062743A1 (zh) * | 2019-09-30 | 2021-04-08 | Oppo广东移动通信有限公司 | 占位信息的预测方法、编码器、解码器、及存储介质 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5842004A (en) * | 1995-08-04 | 1998-11-24 | Sun Microsystems, Inc. | Method and apparatus for decompression of compressed geometric three-dimensional graphics data |
KR100209885B1 (ko) * | 1995-08-30 | 1999-07-15 | 윤종용 | 적응적 제어점제거에 근거한 영상의 불규칙 삼각형메쉬 표현을 위한 방법 |
US5966469A (en) * | 1995-10-26 | 1999-10-12 | Hyundai Electronics Industries Co., Ltd. | Sequential polygon approximation apparatus for contour and method thereof |
US5905507A (en) * | 1996-01-16 | 1999-05-18 | International Business Machines Corporation | Compression of geometric models using spanning trees |
US5825369A (en) * | 1996-01-16 | 1998-10-20 | International Business Machines Corporation | Compression of simple geometric models using spanning trees |
US5886702A (en) * | 1996-10-16 | 1999-03-23 | Real-Time Geometry Corporation | System and method for computer modeling of 3D objects or surfaces by mesh constructions having optimal quality characteristics and dynamic resolution capabilities |
US6184897B1 (en) * | 1997-01-15 | 2001-02-06 | International Business Machines Corporation | Compressed representation of changing meshes and method to decompress |
US6031548A (en) * | 1997-06-13 | 2000-02-29 | International Business Machines Corporation | Progressive multi-level transmission and display of triangular meshes |
US6009435A (en) * | 1997-11-21 | 1999-12-28 | International Business Machines Corporation | Progressive compression of clustered multi-resolution polygonal models |
US6262737B1 (en) * | 1998-01-30 | 2001-07-17 | University Of Southern California | 3D mesh compression and coding |
US6167159A (en) * | 1998-04-30 | 2000-12-26 | Virtue Ltd. | Triangle mesh compression |
US6573890B1 (en) * | 1998-06-08 | 2003-06-03 | Microsoft Corporation | Compression of animated geometry using geometric transform coding |
US6072496A (en) * | 1998-06-08 | 2000-06-06 | Microsoft Corporation | Method and system for capturing and representing 3D geometry, color and shading of facial expressions and other animated objects |
US6668091B1 (en) * | 1998-10-02 | 2003-12-23 | Samsung Electronics Co., Ltd. | 3D mesh coding/decoding method |
KR100294927B1 (ko) * | 1998-08-29 | 2001-07-12 | 윤종용 | 점진적인 삼차원 메쉬 정보의 부호화 방법 및 그 장치 |
KR100294926B1 (ko) * | 1998-08-29 | 2001-07-12 | 윤종용 | 점진적인 삼차원 메쉬 정보의 부호화/복호화 방법 및 장치 |
US6577310B1 (en) * | 1998-12-01 | 2003-06-10 | Samsung Electronics Co., Ltd. | 3D mesh coding/decoding method and apparatus for error resilience and incremental rendering |
US6459429B1 (en) * | 1999-06-14 | 2002-10-01 | Sun Microsystems, Inc. | Segmenting compressed graphics data for parallel decompression and rendering |
JP3511498B2 (ja) * | 2000-06-19 | 2004-03-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | メッシュ生成システム、設計支援システム、解析システム、メッシュ生成方法及び記憶媒体 |
CA2413056C (en) * | 2001-11-27 | 2009-02-10 | Samsung Electronics Co., Ltd. | Apparatus and method for depth image-based representation of 3-dimensional object |
US6868420B2 (en) * | 2002-07-31 | 2005-03-15 | Mitsubishi Electric Research Laboratories, Inc. | Method for traversing quadtrees, octrees, and N-dimensional bi-trees |
US7327365B2 (en) * | 2004-07-23 | 2008-02-05 | Microsoft Corporation | Shell texture functions |
KR100969764B1 (ko) * | 2008-02-13 | 2010-07-13 | 삼성전자주식회사 | 메쉬 모델로 구현된 3차원 데이터의 부호화 및 복호화 방법 |
US20110046923A1 (en) * | 2008-04-18 | 2011-02-24 | Electronics And Telecommunications Research Institute | Apparatus and method for low-complexity three-dimensional mesh compression |
EP2216750A1 (en) * | 2009-02-06 | 2010-08-11 | Thomson Licensing | Method and apparatus for encoding 3D mesh models, and method and apparatus for decoding encoded 3D mesh models |
KR101637624B1 (ko) * | 2009-10-15 | 2016-07-07 | 톰슨 라이센싱 | 메시 모델을 인코딩하는 방법 및 장치, 인코딩된 메시 모델, 그리고 메시 모델을 디코딩하는 방법 및 장치 |
-
2011
- 2011-11-07 JP JP2014539208A patent/JP2015504545A/ja not_active Ceased
- 2011-11-07 US US14/356,233 patent/US9111333B2/en not_active Expired - Fee Related
- 2011-11-07 WO PCT/CN2011/081880 patent/WO2013067674A1/en active Application Filing
- 2011-11-07 CN CN201180074712.2A patent/CN103918009A/zh active Pending
- 2011-11-07 KR KR1020147011883A patent/KR20140086998A/ko not_active Application Discontinuation
- 2011-11-07 EP EP11875559.4A patent/EP2777018A4/en not_active Withdrawn
Non-Patent Citations (1)
Title |
---|
YAN HUANG,ET AL.: "A Generic Scheme for Progressive Point Cloud Coding", 《IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11444999B2 (en) | 2017-02-23 | 2022-09-13 | Netflix, Inc. | Iterative techniques for generating multiple encoded versions of a media title |
US11153585B2 (en) | 2017-02-23 | 2021-10-19 | Netflix, Inc. | Optimizing encoding operations when generating encoded versions of a media title |
US11166034B2 (en) | 2017-02-23 | 2021-11-02 | Netflix, Inc. | Comparing video encoders/decoders using shot-based encoding and a perceptual visual quality metric |
CN110313183B (zh) * | 2017-02-23 | 2021-11-12 | 奈飞公司 | 用于对视频内容进行编码的迭代技术 |
US11184621B2 (en) | 2017-02-23 | 2021-11-23 | Netflix, Inc. | Techniques for selecting resolutions for encoding different shot sequences |
CN110313183A (zh) * | 2017-02-23 | 2019-10-08 | 奈飞公司 | 用于对视频内容进行编码的迭代技术 |
US11758146B2 (en) | 2017-02-23 | 2023-09-12 | Netflix, Inc. | Techniques for positioning key frames within encoded video sequences |
US11818375B2 (en) | 2017-02-23 | 2023-11-14 | Netflix, Inc. | Optimizing encoding operations when generating encoded versions of a media title |
US11870945B2 (en) | 2017-02-23 | 2024-01-09 | Netflix, Inc. | Comparing video encoders/decoders using shot-based encoding and a perceptual visual quality metric |
US11871002B2 (en) | 2017-02-23 | 2024-01-09 | Netflix, Inc. | Iterative techniques for encoding video content |
US11910039B2 (en) | 2017-07-18 | 2024-02-20 | Netflix, Inc. | Encoding technique for optimizing distortion and bitrate |
CN112384953A (zh) * | 2018-06-25 | 2021-02-19 | 华为技术有限公司 | 点云的混合几何译码 |
CN112384953B (zh) * | 2018-06-25 | 2024-05-14 | 华为技术有限公司 | 点云的混合几何译码 |
Also Published As
Publication number | Publication date |
---|---|
US9111333B2 (en) | 2015-08-18 |
WO2013067674A1 (en) | 2013-05-16 |
EP2777018A4 (en) | 2016-07-06 |
JP2015504545A (ja) | 2015-02-12 |
US20140376827A1 (en) | 2014-12-25 |
KR20140086998A (ko) | 2014-07-08 |
EP2777018A1 (en) | 2014-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103918009A (zh) | 预测位置编码 | |
Huang et al. | 3d point cloud geometry compression on deep learning | |
JP5932051B2 (ja) | 予測位置復号 | |
Huang et al. | Octree-Based Progressive Geometry Coding of Point Clouds. | |
JP5033261B2 (ja) | 共有頂点情報を用いた低複雑度3次元メッシュ圧縮装置及び方法 | |
Ochotta et al. | Image‐based surface compression | |
CN116325756A (zh) | G-pcc中的预测几何编解码 | |
EP2783353B1 (en) | Position coding based on spatial tree with duplicate points | |
US10003794B2 (en) | Terminable spatial tree-based position coding and decoding | |
US20130182960A1 (en) | Method and apparatus for encoding geometry patterns, and method for apparatus for decoding geometry patterns | |
JP2023549447A (ja) | 点群階層化方法、デコーダ、エンコーダ及び記憶媒体 | |
Liu et al. | Model-based encoding parameter optimization for 3D point cloud compression | |
US20220180567A1 (en) | Method and apparatus for point cloud coding | |
Daribo et al. | Adaptive arithmetic coding for point cloud compression | |
Al-Tamimi et al. | Image Compression Using Hirarchical Linear Polynomial Coding | |
WO2024193613A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024149258A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024074123A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2022217611A1 (zh) | 编解码方法及相关设备、存储介质 | |
WO2024074122A1 (en) | Method, apparatus, and medium for point cloud coding | |
WO2024178632A1 (zh) | 点云编解码方法、装置、设备及存储介质 | |
WO2023155045A1 (zh) | 预测的方法和装置、编码器、解码器和编解码系统 | |
WO2024149309A1 (en) | Method, apparatus, and medium for point cloud coding | |
Li et al. | Background Knowledge | |
TW202408237A (zh) | 一種點雲幀間補償方法、編解碼方法、碼流、裝置和系統 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140709 |