CN111612859A - 一种基于数据降维的三维点云模型压缩方法及其实现系统 - Google Patents
一种基于数据降维的三维点云模型压缩方法及其实现系统 Download PDFInfo
- Publication number
- CN111612859A CN111612859A CN202010439775.4A CN202010439775A CN111612859A CN 111612859 A CN111612859 A CN 111612859A CN 202010439775 A CN202010439775 A CN 202010439775A CN 111612859 A CN111612859 A CN 111612859A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- cloud model
- data
- dimensional
- grid points
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明涉及一种基于数据降维的三维点云模型数据压缩方法及其实现系统,包括:(1)主元分析,获取三维点云模型的紧密包围盒;(2)量化处理,进行栅格划分,实现对点的坐标数据的量化处理;(3)数据降维,把XOY平面作为辅助平面,将所有栅格点向辅助平面投影,在XOY平面上记录Z方向有效栅格点的数目,存储到一个二维数组中,同时,建立一个一维数组,存储有效栅格点的Z坐标;(4)算术编码:对步骤(3)得到的二维数组中的数据和一维数组中的数据进行熵编码,得到压缩后的比特流。本发明经过量化和数据降维处理后,只需要存储量化后每个点的Z坐标以及一个编码代价很小的辅助二维数组,大大减少了数据量,达到提高压缩率的目的。
Description
技术领域
本发明涉及数字几何处理以及计算机数据压缩领域,具体为一种基于数据降维的三维点云模型数据压缩方法及其实现系统。
背景技术
随着三维扫描和相关建模技术的快速发展,三维数字几何模型作为一种新兴的数字媒体,已逐渐融入到人们的生产和生活中,在三维游戏,影视特效,计算机仿真,自主导航,工业检测,逆向工程,医疗诊断以及数字文化遗产保护等方面取得了日益广泛的应用。另一方面,由于移动互联网的快速发展以及移动设备处理能力的不断提高,移动互联网上的三维应用必将成为以后的一个发展趋势。这就对存储空间、计算能力、交互性能和网络带宽等方面提出了越来越高的要求。为了满足这些要求,必须要对三维模型数据进行有效的压缩。
在计算机和移动设备中,三维数据形式主要包括三维网格、三维点云、三维体数据等等。由于三维扫描技术的快速发展以及Kinect等深度摄像头的广泛使用,三维点云数据近年来受到了越来越广泛的关注。传统的三维网格模型不仅需要存储几何数据(点的坐标),还要存储拓扑数据(即点与点之间的连接关系),因此,传统的三维模型简化与压缩方法,压缩比不理想且计算量较大,不适合在移动互联网环境下使用。
发明内容
针对现有技术的不足,本发明选取三维点云作为三维模型的表示形式,提出了一种基于数据降维的三维点云模型数据压缩方法,实现提高三维模型数据压缩率的目的。
本发明还提出了上述基于数据降维的三维点云模型数据压缩方法的实现系统。
相对于三维网格模型,三维点云模型在表示方法和压缩方法上更加的简洁,不需要考虑模型的拓扑数据。
术语解释:
主元分析,Principal Component Analysis,PCA,是基于原始数据空间,通过构造一组新的潜隐变量来降低原始数据空间的维数,再从新的映射空间抽取主要变化信息,提取统计特征,从而构成对原始数据空间特性的理解。
本发明的技术方案为:
一种基于数据降维的三维点云模型数据压缩方法,包括步骤如下:
(1)主元分析:对输入的原始三维点云模型进行主元分析,获取三维点云模型的紧密包围盒;
(2)量化处理:对原始三维点云模型的紧密包围盒进行栅格划分,实现对点的坐标数据的量化处理;划分的栅格数可以通过固定量化位数或者固定量化误差来计算;栅格划分后,有的栅格包含原始三维点云模型中的点,记为有效栅格点;有的栅格不包含原始三维点云模型中的点,记为无效栅格点(空栅格点);量化处理后,以所有有效栅格点的中心点作为三维点云模型表面的点,这样,原始三维点云模型表面点的坐标都被量化为了整数值。
(3)数据降维:以紧密包围盒的左下角点为原点O,向右为X轴,向上为Y轴,向后为Z轴;
把XOY平面作为辅助平面,将所有栅格点向辅助平面投影。这样,XOY平面可以看成一个二维数组,数组中的每一个值存储对应的Z方向上有效栅格点的数目;在XOY平面上记录Z方向上有效栅格点的数目,存储到一个二维数组中;由于三维点云模型为表面模型(Boundary representation),Z方向有效栅格点数目的典型值为0和2,即二维数组中,大部分值为0和2,因此编码代价很小。同时,建立一个一维数组,存储所有有效栅格点的Z坐标;Z坐标的存储可以按照先X后Y的顺序遍历XOY平面上的二维数组,如果数组中的值为0,则表示对应的Z方向没有有效栅格点,不需要存储Z坐标;如果数组中的值不为0,则按照Z坐标从小到大的顺序依次记录Z坐标。这样,经过数据降维步骤后,原始三维点云模型只需要存储一维的Z坐标和一个编码代价很小的辅助二维数组。虽然只存储了Z坐标,但由于辅助二维数组中记录了Z方向有效栅格点的数目,因此,依然可以恢复出所有有效栅格点的三维坐标,即量化后三维点云模型表面点的坐标。
或者,把YOZ平面作为辅助平面,将所有栅格点向辅助平面投影,在YOZ平面上记录X方向有效栅格点的数目,存储到一个二维数组中;同时,建立一个一维数组,存储所有有效栅格点的X坐标(即量化后点的X坐标);这样,经过数据降维步骤后,原始三维点云模型只需要存储一维的X坐标和一个编码代价很小的辅助二维数组。
或者,把ZOX平面作为辅助平面,将所有栅格点向辅助平面投影,在ZOX平面上记录Y方向有效栅格点的数目,存储到一个二维数组中;同时,建立一个一维数组,存储所有有效栅格点的Y坐标(即量化后点的Y坐标);这样,经过数据降维步骤后,原始三维点云模型只需要存储一维的Y坐标和一个编码代价很小的辅助二维数组。
(4)算术编码:使用自适应算术编码算法,对步骤(3)得到的二维数组中的数据和一维数组中的数据进行熵编码,得到压缩后的比特流。
根据本发明优选的,步骤(1)中,主元分析,包括步骤如下:
对于输入的原始三维点云模型,假设包含的点数为n,任一点i=1,2,...,n,任一点i的位置为pi,计算协方差矩阵C,如式(Ⅰ)如下:
由协方差矩阵C的计算方式可知,协方差矩阵C是一个3×3的矩阵,协方差矩阵C的三个特征向量以及质心m确定一个新的坐标系,将原始三维点云模型中点的坐标转换到新的坐标系下,并在新的坐标系下计算原始三维点云模型的AABB(Axis Aligned BoundingBox),即平行于坐标轴方向的包围盒,该包围盒即为原始三维点云模型的紧密包围盒。
根据本发明优选的,步骤(2)中,量化处理,包括步骤如下:
对原始三维点云模型的紧密包围盒进行栅格划分,以此来实现对点的坐标数据的量化处理。以紧密包围盒的左下角点为原点O,向右为X轴,向上为Y轴,向后为Z轴,采用固定量化位数的方法或固定量化误差的方法计算在X、Y、Z三个方向划分的栅格数m、n、s。那么这三个值可以通过固定量化位数或者固定量化误差的方法来计算。
采用固定量化位数的方法计算在X、Y、Z三个方向划分的栅格数m、n、s,比如点云模型中点的xyz三个坐标都采用8位二进制位进行量化,则m=n=s=28=256,也就是把模型的紧密包围盒BB划分成256×256×256的栅格。
进一步优选的,采用固定量化误差的方法计算在X、Y、Z三个方向划分的栅格数m、n、s,是指:假设允许的量化误差为ε,原始三维点云模型的紧密包围盒在X、Y、Z三个方向的长度分别为Lx,Ly,Lz,则:m=[Lx/ε],n=[Ly/ε],s=[Lz/ε],[·]表示取整运算。
根据本发明优选的,步骤(3)中,数据降维,包括步骤如下:
有效栅格点的Z坐标的存储顺序为:按照先X后Y的顺序遍历二维数组,如果二维数组中的值为0,则表示对应的Z方向没有有效栅格点,不需要存储Z坐标;如果数组中的值不为0,则按照Z坐标从小到大的顺序依次记录Z坐标。
上述基于数据降维的三维点云模型数据压缩方法的实现系统,包括依次连接的主元分析模块、量化处理模块、数据降维模块及算术编码模块;所述主元分析模块用于执行步骤(1);所述量化处理模块用于执行步骤(2);所述数据降维模块用于执行步骤(3);所述算术编码模块用于执行步骤(4)。
本发明的有益效果为:
1、本发明采用栅格划分的方法进行数据量化,可以固定量化位数,也可以固定量化误差,比较灵活。
2、经过量化和数据降维处理后,原始三维点云模型只需要存储量化后每个点的Z坐标以及一个编码代价很小的辅助二维数组,大大减少了数据量,达到提高压缩率的目的。
附图说明
图1为本发明基于数据降维的三维点云模型压缩方法的流程示意图;
图2为本发明基于数据降维的三维点云模型压缩方法的实现系统的结构示意图;
图3为栅格划分示意图;
图4(a)为本发明二维数组示意图。
图4(b)为本发明一维数组示意图。
具体实施方式
下面结合说明书附图和实施例对本发明作进一步限定,但不限于此。
实施例1
一种基于数据降维的三维点云模型数据压缩方法,如图1所示,包括步骤如下:
(1)主元分析:对输入的原始三维点云模型进行主元分析,获取三维点云模型的紧密包围盒;
(2)量化处理:对原始三维点云模型的紧密包围盒进行栅格划分,如图3所示,实现对点的坐标数据的量化处理;划分的栅格数可以通过固定量化位数或者固定量化误差来计算;栅格划分后,有的栅格包含原始三维点云模型中的点,记为有效栅格点;有的栅格不包含原始三维点云模型中的点,记为无效栅格点(空栅格点);量化处理后,以所有有效栅格点的中心点作为三维点云模型表面的点,这样,原始三维点云模型表面点的坐标都被量化为了整数值。
(3)数据降维:以紧密包围盒的左下角点为原点O,向右为X轴,向上为Y轴,向后为Z轴;
把XOY平面作为辅助平面,将所有栅格点向辅助平面投影。这样,XOY平面可以看成一个二维数组,数组中的每一个值存储对应的Z方向上有效栅格点的数目;在XOY平面上记录Z方向上有效栅格点的数目,存储到一个二维数组中;由于三维点云模型为表面模型(Boundary representation),Z方向有效栅格点数目的典型值为0和2,即二维数组中,大部分值为0和2,因此编码代价很小,如图4(a)所示。同时,建立一个一维数组,存储所有有效栅格点的Z坐标;如图4(b)所示。Z坐标的存储可以按照先X后Y的顺序遍历XOY平面上的二维数组,如果数组中的值为0,则表示对应的Z方向没有有效栅格点,不需要存储Z坐标;如果数组中的值不为0,则按照Z坐标从小到大的顺序依次记录Z坐标。这样,经过数据降维步骤后,原始三维点云模型只需要存储一维的Z坐标和一个编码代价很小的辅助二维数组。虽然只存储了Z坐标,但由于辅助二维数组中记录了Z方向有效栅格点的数目,因此,依然可以恢复出所有有效栅格点的三维坐标,即量化后三维点云模型表面点的坐标。
或者,把YOZ平面作为辅助平面,将所有栅格点向辅助平面投影,在YOZ平面上记录X方向有效栅格点的数目,存储到一个二维数组中;同时,建立一个一维数组,存储所有有效栅格点的X坐标(即量化后点的X坐标);这样,经过数据降维步骤后,原始三维点云模型只需要存储一维的X坐标和一个编码代价很小的辅助二维数组。
或者,把ZOX平面作为辅助平面,将所有栅格点向辅助平面投影,在ZOX平面上记录Y方向有效栅格点的数目,存储到一个二维数组中;同时,建立一个一维数组,存储所有有效栅格点的Y坐标(即量化后点的Y坐标);这样,经过数据降维步骤后,原始三维点云模型只需要存储一维的Y坐标和一个编码代价很小的辅助二维数组。
(4)算术编码:使用自适应算术编码算法,对步骤(3)得到的二维数组中的数据和一维数组中的数据进行熵编码,得到压缩后的比特流。
表1为本发明在Face和Igea模型上一些初步的实验数据。
表1
模型 | 压缩前(bpp) | 压缩后(bpp) | 压缩倍数 |
Face | 96 | 10.0 | 9.6 |
Igea | 96 | 8.3 | 11.5 |
本实施例计算了压缩前、后存储每一个点所用的二进制位数(bits per point,简记为bpp),以此来计算压缩效率。压缩前,每一个点的坐标需要用x,y,z三个浮点数(每个浮点数为32bits)来表示,为96bpp。压缩后的bpp为算术编码之后的总比特数除以原始模型中的点数。数据表明,本方法的压缩效率能达到10倍左右。
实施例2
根据实施例1所述的一种基于数据降维的三维点云模型数据压缩方法,其区别在于:
步骤(1)中,主元分析,包括步骤如下:
对于输入的原始三维点云模型,假设包含的点数为n,任一点i=1,2,...,n,任一点i的位置为pi,计算协方差矩阵C,如式(Ⅰ)如下:
由协方差矩阵C的计算方式可知,协方差矩阵C是一个3×3的矩阵,协方差矩阵C的三个特征向量以及质心m确定一个新的坐标系,将原始三维点云模型中点的坐标转换到新的坐标系下,并在新的坐标系下计算原始三维点云模型的AABB(Axis Aligned BoundingBox),即平行于坐标轴方向的包围盒,该包围盒即为原始三维点云模型的紧密包围盒。
步骤(2)中,量化处理,包括步骤如下:
对原始三维点云模型的紧密包围盒进行栅格划分,如图2所示,以此来实现对点的坐标数据的量化处理。以紧密包围盒的左下角点为原点O,向右为X轴,向上为Y轴,向后为Z轴,采用固定量化位数的方法或固定量化误差的方法计算在X、Y、Z三个方向划分的栅格数m、n、s。那么这三个值可以通过固定量化位数或者固定量化误差的方法来计算。
采用固定量化位数的方法计算在X、Y、Z三个方向划分的栅格数m、n、s,比如点云模型中点的xyz三个坐标都采用8位二进制位进行量化,则m=n=s=28=256,也就是把模型的紧密包围盒BB划分成256×256×256的栅格。
采用固定量化误差的方法计算在X、Y、Z三个方向划分的栅格数m、n、s,是指:假设允许的量化误差为ε,原始三维点云模型的紧密包围盒在X、Y、Z三个方向的长度分别为Lx,Ly,Lz,则:m=[Lx/ε],n=[Ly/ε],s=[Lz/ε],[·]表示取整运算。
步骤(3)中,数据降维,包括步骤如下:
有效栅格点的Z坐标的存储顺序为:按照先X后Y的顺序遍历二维数组,如果二维数组中的值为0,则表示对应的Z方向没有有效栅格点,不需要存储Z坐标;如果数组中的值不为0,则按照Z坐标从小到大的顺序依次记录Z坐标。
实施例3
实施例1或2所述的基于数据降维的三维点云模型数据压缩方法的实现系统,如图2所示,包括依次连接的主元分析模块、量化处理模块、数据降维模块及算术编码模块;主元分析模块用于执行步骤(1);量化处理模块用于执行步骤(2);数据降维模块用于执行步骤(3);所述算术编码模块用于执行步骤(4)。
Claims (6)
1.一种基于数据降维的三维点云模型数据压缩方法,其特征在于,包括步骤如下:
(1)主元分析:对输入的原始三维点云模型进行主元分析,获取三维点云模型的紧密包围盒;
(2)量化处理:对原始三维点云模型的紧密包围盒进行栅格划分,实现对点的坐标数据的量化处理;栅格划分后,有的栅格包含原始三维点云模型中的点,记为有效栅格点;有的栅格不包含原始三维点云模型中的点,记为无效栅格点;
(3)数据降维:以紧密包围盒的左下角点为原点O,向右为X轴,向上为Y轴,向后为Z轴;
把XOY平面作为辅助平面,将所有栅格点向辅助平面投影,在XOY平面上记录Z方向上有效栅格点的数目,存储到一个二维数组中;同时,建立一个一维数组,存储所有有效栅格点的Z坐标;
或者,把YOZ平面作为辅助平面,将所有栅格点向辅助平面投影,在YOZ平面上记录X方向有效栅格点的数目,存储到一个二维数组中;同时,建立一个一维数组,存储所有有效栅格点的X坐标;
或者,把ZOX平面作为辅助平面,将所有栅格点向辅助平面投影,在ZOX平面上记录Y方向有效栅格点的数目,存储到一个二维数组中;同时,建立一个一维数组,存储所有有效栅格点的Y坐标;
(4)算术编码:对步骤(3)得到的二维数组中的数据和一维数组中的数据进行熵编码,得到压缩后的比特流。
3.根据权利要求1所述的一种基于数据降维的三维点云模型数据压缩方法,其特征在于,步骤(2)中,量化处理,包括步骤如下:
对原始三维点云模型的紧密包围盒进行栅格划分,以紧密包围盒的左下角点为原点O,向右为X轴,向上为Y轴,向后为Z轴,采用固定量化位数的方法或固定量化误差的方法计算在X、Y、Z三个方向划分的栅格数m、n、s。
4.根据权利要求3所述的一种基于数据降维的三维点云模型数据压缩方法,其特征在于,采用固定量化误差的方法计算在X、Y、Z三个方向划分的栅格数m、n、s,是指:假设允许的量化误差为ε,原始三维点云模型的紧密包围盒在X、Y、Z三个方向的长度分别为Lx,Ly,Lz,则:m=[Lx/ε],n=[Ly/ε],s=[Lz/ε],[·]表示取整运算。
5.根据权利要求1所述的一种基于数据降维的三维点云模型数据压缩方法,其特征在于,步骤(3)中,数据降维,包括步骤如下:
有效栅格点的Z坐标的存储顺序为:按照先X后Y的顺序遍历二维数组,如果二维数组中的值为0,则表示对应的Z方向没有有效栅格点,不需要存储Z坐标;如果数组中的值不为0,则按照Z坐标从小到大的顺序依次记录Z坐标。
6.权利要求1-5任一所述基于数据降维的三维点云模型数据压缩方法的实现系统,其特征在于,包括依次连接的主元分析模块、量化处理模块、数据降维模块及算术编码模块;所述主元分析模块用于执行步骤(1);所述量化处理模块用于执行步骤(2);所述数据降维模块用于执行步骤(3);所述算术编码模块用于执行步骤(4)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010439775.4A CN111612859A (zh) | 2020-05-22 | 2020-05-22 | 一种基于数据降维的三维点云模型压缩方法及其实现系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010439775.4A CN111612859A (zh) | 2020-05-22 | 2020-05-22 | 一种基于数据降维的三维点云模型压缩方法及其实现系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111612859A true CN111612859A (zh) | 2020-09-01 |
Family
ID=72202400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010439775.4A Withdrawn CN111612859A (zh) | 2020-05-22 | 2020-05-22 | 一种基于数据降维的三维点云模型压缩方法及其实现系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111612859A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112666534A (zh) * | 2020-12-31 | 2021-04-16 | 武汉理工大学 | 基于激光雷达识别算法的无人船路线规划方法和装置 |
CN114092579A (zh) * | 2021-11-16 | 2022-02-25 | 浙江工商大学 | 一种基于隐式神经网络的点云压缩方法 |
-
2020
- 2020-05-22 CN CN202010439775.4A patent/CN111612859A/zh not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112666534A (zh) * | 2020-12-31 | 2021-04-16 | 武汉理工大学 | 基于激光雷达识别算法的无人船路线规划方法和装置 |
CN114092579A (zh) * | 2021-11-16 | 2022-02-25 | 浙江工商大学 | 一种基于隐式神经网络的点云压缩方法 |
CN114092579B (zh) * | 2021-11-16 | 2024-05-14 | 浙江工商大学 | 一种基于隐式神经网络的点云压缩方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Huang et al. | 3d point cloud geometry compression on deep learning | |
CN108537876B (zh) | 三维重建方法、装置、设备及存储介质 | |
CN114631118A (zh) | 修整用于点云压缩中的最近邻确定的搜索空间 | |
US5966140A (en) | Method for creating progressive simplicial complexes | |
CN103918009A (zh) | 预测位置编码 | |
EP2887262B1 (en) | Point Cloud Simplification | |
CN111612859A (zh) | 一种基于数据降维的三维点云模型压缩方法及其实现系统 | |
CN103929642A (zh) | 一种hevc变换系数的熵编码上下文模型偏移值快速计算方法 | |
CN111028356A (zh) | 基于非凸非光滑二阶正则项和稀疏保真项的优化方法 | |
CN112825199B (zh) | 碰撞检测方法、装置、设备及存储介质 | |
Luo et al. | Identifying latent reduced models to precondition lossy compression | |
Bhatia et al. | AMM: Adaptive multilinear meshes | |
CN107291935B (zh) | 基于Spark与Huffman编码的CPIR-V最近邻隐私保护查询方法 | |
Wang et al. | The alpha parallelogram predictor: A lossless compression method for motion capture data | |
Yuan et al. | A sot-mram-based processing-in-memory engine for highly compressed dnn implementation | |
EP2801952B1 (en) | Method and device for compression of vertex data in three-dimensional image data | |
Yuan et al. | A dnn compression framework for sot-mram-based processing-in-memory engine | |
Zhang et al. | ParaNet: Deep regular representation for 3D point clouds | |
Zhou et al. | An energy-efficient 3D point cloud neural network accelerator with efficient filter pruning, MLP fusion, and dual-stream sampling | |
Kolesnikov et al. | Distortion-constrained compression of vector maps | |
CN117915105A (zh) | 网格编码方法、网格解码方法及相关设备 | |
Wang et al. | Motion Recurring Pattern Analysis: A Lossless Representation for Motion Capture Databases | |
WO2022217611A1 (zh) | 编解码方法及相关设备、存储介质 | |
CN115802048A (zh) | 一种基于块间预测和图傅里叶变换的点云属性压缩方法 | |
CN114399560A (zh) | 一种三维彩色点云模型编解码方法及其实现系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200901 |
|
WW01 | Invention patent application withdrawn after publication |