点云数据的压缩方法、装置及终端
技术领域
本发明涉及数据处理技术领域,尤其涉及一种点云数据的压缩方法、装置及终端。
背景技术
在实际的应用中,扫描设备扫描得到的3D点云数据的数据量大,同时由于计算力,内存大小,网络环境的限制,无法在终端上直接展示,尤其是移动终端。
现有技术中,为了使点云数据在终端上显示,可以对点云数据进行压缩。传统的三维点云压缩算法使用网格过滤(grid filter)。该压缩方式通过降低点云数据的分辨率来达到减小数据量的目的。
但是,现有的压缩方法很难实现对点云数据的高效的压缩,而且压缩后的点云数据展示效果不佳。
发明内容
本发明解决的技术问题是如何提高对点云数据压缩的效率,同时保证其展示效果。
为解决上述技术问题,本发明实施例提供一种点云数据的压缩方法,点云数据的压缩方法包括:
确定点云数据及其对应的多个图片,所述图片具有位置信息和颜色信息;将所述点云数据转换为三角形网面;根据所述图片的位置信息,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面。
可选的,所述根据所述图片的位置信息,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面包括:选取与所述三角形网面平行且距离最近的图片作为所述三角形网面的最优图片;将所述最优图片投影至所述三角形网面。
可选的,所述将所述最优图片的颜色信息投影在所述三角形网面包括:根据所述最优图片的位置矩阵以及所述三角形网面的位置矩阵,计算所述最优图片和所述三角形网面的相对姿态矩阵;根据所述相对姿态矩阵将所述最优图片投影在所述三角形网面。
可选的,所述将所述点云数据转换为三角形网面包括:对所述点云数据进行插值运算,以得到对应的所述三角形网面。
可选的,所述点云数据的压缩方法还包括:对所有添加颜色信息后的三角形网面进行全局曝光修正,以使得所述所有添加颜色信息后的三角形网面的曝光值一致。
可选的,所述点云数据的压缩方法还包括:采用泊松融合的方式对相邻两个三角形网面的进行融合,以消除边界缝隙。
可选的,所述点云数据的压缩方法还包括:对所有添加颜色信息后的三角形网面进行加密压缩,以用于传输。
为解决上述技术问题,本发明实施例还公开了一种点云数据的压缩装置,点云数据的压缩装置包括:
确定模块,适于确定点云数据及其对应的多个图片,所述图片具有位置信息和颜色信息;转换模块,适于将所述点云数据转换为三角形网面;颜色添加模块,适于根据所述图片的位置信息,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面。
可选的,所述颜色添加模块包括:最优图片选取单元,适于选取与所述三角形网面平行且距离最近的图片作为所述三角形网面的最优图片;投影单元,适于将所述最优图片投影至所述三角形网面。
可选的,所述投影单元包括:矩阵计算子单元,适于根据所述最优图片的位置矩阵以及所述三角形网面的位置矩阵,计算所述最优图片和所述三角形网面的相对姿态矩阵;投影子单元,适于根据所述相对姿态矩阵将所述最优图片投影在所述三角形网面。
可选的,所述转换模块对所述点云数据进行插值运算,以得到对应的所述三角形网面。
可选的,所述点云数据的压缩装置还包括:曝光修正模块,适于对所有添加颜色信息后的三角形网面进行全局曝光修正,以使得所述所有添加颜色信息后的三角形网面的曝光值一致。
可选的,所述点云数据的压缩装置还包括:融合模块,适于采用泊松融合的方式对相邻两个三角形网面的进行融合,以消除边界缝隙。
可选的,所述点云数据的压缩装置还包括:加密模块,适于对所有添加颜色信息后的三角形网面进行加密压缩,以用于传输。
为解决上述技术问题,本发明实施例还公开了一种终端,所述终端包括所述点云数据的压缩装置。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
本发明技术方案确定点云数据及其对应的多个图片,所述图片具有位置信息和颜色信息;将所述点云数据转换为三角形网面;根据所述图片的位置信息,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面。本发明技术方案将点云数据转换为三角形网面,使得后续用于计算的数据量大大减小;此外,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面,这样三角形网面就具备了点云数据的颜色信息,在后续进行展示时,不仅可以展示点云数据的三维信息,还能够展示点云数据的颜色信息,保证了更好的几何展示效果。
进一步地,根据所述图片的位置信息,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面包括:选取与所述三角形网面平行且距离最近的图片作为所述三角形网面的最优图片;将所述最优图片投影至所述三角形网面。本发明技术方案通过选取点云数据对应的多个图片中的最优图片,并将其颜色信息添加至三角形网面,可以保证三角形网面颜色信息添加的准确性,进一步保证展示效果。
附图说明
图1是本发明实施例一种点云数据的压缩方法的流程图;
图2是本发明实施例一种点云数据的压缩装置的结构示意图。
具体实施方式
如背景技术中所述,现有的压缩方法很难实现对点云数据的高效的压缩,而且压缩后的点云数据展示效果不佳。
本申请发明人发现,点云数据作为数据集合,其元素是独立冗余的,有大大压缩的可能性;其次对于彩色展示的效果上,由于点云数据是离散的,因此很难展现高清晰度的彩色信息。
本发明实施例将点云数据转换为三角形网面,使得后续用于计算的数据量大大减小;此外,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面,这样三角形网面就具备了点云数据的颜色信息,在后续进行展示时,不仅可以展示点云数据的三维信息,还能够展示点云数据的颜色信息,保证了更好的几何展示效果。
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图1是本发明实施例一种点云数据的压缩方法的流程图。
图1所示的点云数据的压缩方法可以包括以下步骤:
步骤S101:确定点云数据及其对应的多个图片,所述图片具有位置信息和颜色信息;
步骤S102:将所述点云数据转换为三角形网面;
步骤S103:根据所述图片的位置信息,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面。
具体实施中,点云数据可以是三维点云数据。点云数据可以通过扫描设备扫描得到。在扫描得到点云数据的同时,还可以得到点云数据对应的多个图片,所述图片通常是二维图片。具体而言,点云数据可以表征被扫描物体的三维位置信息,多个图片则可以表征被扫描物体的二维位置信息和颜色信息。
因此,在步骤S101中,确定点云数据及其对应的多个图片时,可以从扫描设备直接获取点云数据及其对应的多个图片,也可以从存储设备获取预先存储的点云数据及其对应的多个图片。
具体实施中,在步骤S102中,将所述点云数据转换为三角形网面(trianglemesh)。通过转换过程,三维点云数据可以很简便的使用处于同一平面中的上的三角形网面来表示;由此,少量三角形网面可以表示点云数据中大量密集的点,从而减小数据量。具体而言,三角网面可以反映点云数据中各离散点与其邻近点间的拓扑连接关系。
本领域技术人员应当理解的是,步骤S102可以采用任意可实施的算法实现;三角形网面也可以采用其他任意可实施的多边形网格结构进行替代,本发明实施例对此不做限制。
优选地,对所述点云数据进行插值运算,以得到对应的所述三角形网面。具体而言,三维点云数据通过进行三角形网面插值运算,可以得到用以表征点云数据的三维空间表面的三角形网面。
具体实施中,图片的位置信息可以是图片所处平面的位置。在步骤S103中,可以根据图片的位置信息选取与所述三角形网面匹配的图片,并将其颜色信息添加至所述三角形网面。至此,三角形网面既可以表征三维表面信息,也可以表征颜色信息。
可以理解的是,图片的位置信息也可以是扫描设备扫描得到所述图片的时所处的平面。
具体而言,为了添加三角形网面的颜色信息,可以将图片的二维(2D)纹理贴图到三角形网面表面上,从而为三角形网面中相应像素着色。
本发明实施例通过将点云数据转换为三角形网面,可以大大减小用于计算的数据量;同时,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面,这样三角形网面就具备了点云数据的颜色信息,在后续进行展示时,不仅可以展示点云数据的三维信息,还能够展示点云数据的颜色信息,保证了更好的几何展示效果。
优选地,步骤S103可以包括以下步骤:选取与所述三角形网面平行且距离最近的图片作为所述三角形网面的最优图片;将所述最优图片投影至所述三角形网面。具体而言,由于图片的位置信息可以表征被扫描物体的二维位置,因此在选取最优图片时,如果图片与所述三角形网面平行且距离最近,则表示该图片与三角形网面可以表征或近似表征被扫描物体的同一处表面,则该图片可以作为最优图片,来投影至三角形网面。具体地,通过投影过程,可以将图片的颜色信息一一映射在三角形网面的对应像素,从而使得三角形网面具备颜色信息。
具体地,每个三角形网面在其最优图片上的投影面积最大,也就是最优图片与三角形网面的距离最近且视角最好;并且,临近的三角形网面能够选择相同的最优图片。临近的三角形网面选取相同的最优图片可以避免投影时临近三角形网面的边缘的瑕疵过大。更具体地,可以使用能量优化(energy optimization)算法选取最优图片。
具体地,可以使用随机马尔可夫场(Random Markov Field)算法计算三角形面网面和最优图片的对应关系,实现最优图片到三角形网面的投影。
本发明实施例通过选取点云数据对应的多个图片中的最优图片,并将其颜色信息添加至三角形网面,可以保证三角形网面颜色信息添加的准确性,进一步保证展示效果。
优选地,将所述最优图片的颜色信息投影在所述三角形网面可以包括以下步骤:根据所述最优图片的位置矩阵以及所述三角形网面的位置矩阵,计算所述最优图片和所述三角形网面的相对姿态矩阵;根据所述相对姿态矩阵将所述最优图片投影在所述三角形网面。具体而言,所述最优图片的位置矩阵可以是指扫描所述最优图片的扫描设备的位置矩阵。在将最优图片贴到三角形网面上时,可以考虑三角形网面在扫描设备所处空间的方向,例如在摄像机所处空间的方向。对三角形网面中每个需要渲染的像素都可以计算其在最优图片上的映射坐标,该映射坐标用以索引图片的2D纹理,从而为三角形网面中相应像素着色。
优选地,图1所示的点云数据的压缩方法可以包括以下步骤:对所有添加颜色信息后的三角形网面进行全局曝光修正,以使得所述所有添加颜色信息后的三角形网面的曝光值一致。具体而言,在得到添加颜色信息后的三角形网面后,图片姿态的细小误差以及图片形成时的光照误差,都会影响到三角形网面最终彩色的结果,也就是三角形网面拼接的误差,例如,可能是纹理不一致,也可能是色彩的不一致(由于白平衡和曝光导致的)。而对于添加颜色信息后的三角形网面之间具备共有区域,该共有区域的颜色均值是相近的。例如RGB均值或灰度均值。因此,可以采用线性曝光模型做曝光修正。
优选地,图1所示的点云数据的压缩方法可以包括以下步骤:采用泊松融合(Poisson Blending)的方式对相邻两个三角形网面的进行融合,以消除边界缝隙。具体而言,在得到添加颜色信息后的三角形网面后,临近三角形之间还会性存在纹理误差,也就是边界缝隙。而采用泊松融合(Poisson Blending)对相邻两个三角形网面的进行融合,则可以实现相邻两个三角形网面的纹理一致性。
优选地,图1所示的点云数据的压缩方法可以包括以下步骤:对所有添加颜色信息后的三角形网面进行加密压缩,以用于传输。具体而言,为了进一步减小点云数据的数据量,在三角形网面添加颜色信息后,采用压缩算法进行进一步的压缩,例如,采用LZMA(Lempel-Ziv-Markov chain-Algorithm)压缩算法。同时,为了保证点云数据的传输安全性,对压缩完成的点云数据进行加密处理。可以理解的是,该步骤中的压缩和加密操作可以同时进行,也可以分开进行,本发明实施例对此不做限制。
本发明实施例通过将所述点云数据转换为三角形网面,能够达到压缩比例约1%的高效压缩;同时,通过将颜色信息添加到所述三角形网面,可以使其具备更好的彩色细节,大大提升了点云数据的展示效果。
图2是本发明实施例一种点云数据的压缩装置的结构示意图。
图2所示的点云数据的压缩装置20可以包括确定模块201、转换模块202和颜色添加模块203。
其中,确定模块201适于确定点云数据及其对应的多个图片,所述图片具有位置信息和颜色信息。
转换模块202适于将所述点云数据转换为三角形网面。
颜色添加模块203适于根据所述图片的位置信息,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面。
具体实施中,确定模块201确定点云数据及其对应的多个图片时,可以从扫描设备直接获取点云数据及其对应的多个图片,也可以从存储设备获取预先存储的点云数据及其对应的多个图片。
具体实施中,转换模块202将所述点云数据转换为三角形网面(triangle mesh)。通过转换过程,处于同一平面中的三维点云数据可以很简便的使用处于该平面上的三角形网面来表示;由此,少量三角形网面可以表示点云数据中大量密集的点,从而减小数据量。具体而言,三角网面可以反映点云数据中各离散点与其邻近点间的拓扑连接关系。
本领域技术人员应当理解的是,转换模块202可以采用任意可实施的算法实现;三角形网面也可以采用其他任意可实施的多边形网格结构进行替代,本发明实施例对此不做限制。
优选地,转换模块202可以对所述点云数据进行插值运算,以得到对应的所述三角形网面。具体而言,三维点云数据通过进行三角形网面插值运算,可以得到用以表征点云数据的三维空间表面的三角形网面。
具体实施中,图片的位置信息可以是图片所处平面的位置。颜色添加模块203可以根据图片的位置信息选取与所述三角形网面匹配的图片,并将其颜色信息添加至所述三角形网面。至此,三角形网面既可以表征三维表面信息,也可以表征颜色信息。
可以理解的是,图片的位置信息也可以是扫描设备扫描得到所述图片的时所处的平面。
具体而言,为了添加三角形网面的颜色信息,可以将图片的2D纹理贴到三角形网面表面上,从而为三角形网面中相应像素着色。
本发明实施例通过将点云数据转换为三角形网面,可以大大减小点云数据的数据量;同时,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面,这样三角形网面就具备了点云数据的颜色信息,在后续进行展示时,不仅可以展示点云数据的三维信息,还能够展示点云数据的颜色信息,保证了更好的几何展示效果。
优选地,颜色添加模块203可以包括最优图片选取单元2031和投影单元2032。其中,最优图片选取单元2031适于选取与所述三角形网面平行且距离最近的图片作为所述三角形网面的最优图片;投影单元2032适于将所述最优图片投影至所述三角形网面。
优选地,投影单元2032可以包括矩阵计算子单元20321和投影子单元20322,矩阵计算子单元20321适于根据所述最优图片的位置矩阵以及所述三角形网面的位置矩阵,计算所述最优图片和所述三角形网面的相对姿态矩阵;投影子单元20322适于根据所述相对姿态矩阵将所述最优图片投影在所述三角形网面。
优选地,图2所示的点云数据的压缩装置20还可以包括曝光修正模块204,曝光修正模块204适于对所有添加颜色信息后的三角形网面进行全局曝光修正,以使得所述所有添加颜色信息后的三角形网面的曝光值一致。
优选地,图2所示的点云数据的压缩装置20还可以包括融合模块205,融合模块205适于采用泊松融合的方式对相邻两个三角形网面的进行融合,以消除边界缝隙。
优选地,图2所示的点云数据的压缩装置20还可以包括加密模块206,加密模块206适于对所有添加颜色信息后的三角形网面进行加密压缩,以用于传输。
本发明实施例通过将点云数据转换为三角形网面,可以大大减小点云数据的数据量;同时,将与所述三角形网面匹配的图片的颜色信息添加到所述三角形网面,这样三角形网面就具备了点云数据的颜色信息,在后续进行展示时,不仅可以展示点云数据的三维信息,还能够展示点云数据的颜色信息,保证了更好的几何展示效果。
关于所述点云数据的压缩装置20的工作原理、工作方式的更多内容,可以参照图1中的相关描述,这里不再赘述。
为解决上述技术问题,本发明实施例还公开了一种终端,所述终端包括图2所示的点云数据的压缩装置20。所述点云数据的压缩装置20可以内部集成于或外部耦接于所述终端。具体而言,所述终端可以是计算机、手机、平板电脑等;所述终端可以以服务器的形式执行图1所示的各个步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于以计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。