一种三维激光扫描数据点云度压缩方法与流程

文档序号:11730214阅读:1046来源:国知局
一种三维激光扫描数据点云度压缩方法与流程

本发明属于三维激光扫描点云数据压缩方法,与图论中点连通度理论结合实现点云数据压缩。

技术背景

随着三维激光扫描技术的持续发展及扫描设备精度的大幅提升,釆样点的分布更加密集和精确,得到的点云数量会相当庞大,也就不可避免的产生了大量冗余数据点。这些冗余数据点给后期的点云数据的进一步应用带来了不便,并且在数据传输中占用大量空间和资源,压缩掉这些冗余点势在必行。此外,有时压缩的目标不一定是冗余点云,对于非冗余点云,根据后期使用目的不同,需要对有意义的初始点云数据进行压缩,保留预定区域、预定点来进行研究。这样的压缩算法只有一个目的,最大限度的满足用户不同的压缩要求。



技术实现要素:

本发明提出了实用性较强的点云度压缩法。这种压缩方法不仅适用于散乱点云,同样适用于分布规则的有序点云;不仅适用于配准前单站点点云,同样适用于配准后多站点点云。该方法的四个功能可以单独使用,也可以重复和相互承接使用,指向性压缩特点突出。作为开放的点云数据压缩平台,可以继续扩展其他的压缩功能,适用于不同几何形态和压缩目的的点云数据压缩,拓展空间较大。

本文选取针对地面三个观测站点获取的玉兰树散乱点云数据进行配准获得原始点云数据进行说明。首先按照数据中各点数字高程模型dem(三维坐标中的z值)由低到高的顺序进行重新无损排列;然后根据重新排序的点云进行按照用户需求分块,在每个点云块内分别求出一个虚拟点,这个虚拟点的坐标就是块内各点坐标的平均值,再分别求出块内各点到本块虚拟点的距离;最后依据这个距离值在各块内再次从小到大排序。两次排序的序号就使得各点赋予了新坐标,可以依据这个序号进行定点的查找和删除。

本发明技术方案为一种三维激光扫描数据点云度压缩方法,该方法包括:

步骤1:通过多个站点从不同的方位获取植被点云数据,然后将各站点的点云数据统一到同一个坐标系下,实现各站点点云数据的配准;

步骤2:首先根据三维坐标中x,y,z值得大小制定数据点排序方法,将步骤1中所有数据点按照制定的排序方法进行排序,获得排序点云数据集n;

步骤3:根据压缩要求,选择合适的点云数n进行分块,以n为单位将步骤2得到的排序点云数据集n,按顺序进行分块,最后不满n个数据点的单独为一块;

步骤4:首先计算各块内所有数据点的平均值点v0,计算块内各数据点到平均值点v0的距离和角度,再根据距离重新对块内各数据点进行排序,获得各点排序序号;

步骤5:将块内各点排序序号与该点到平均值点v0的距离和角度建立对应关系,从而各块获得一个由序号、各序号对应的距离和角度、本块平均值点v0组成的数据包,实现数据压缩。

进一步的,所述步骤1的具体方法为:从一个点云集p中选取一定数量的数据点,并在相邻点云集q中寻找出这些点的对应数据点;然后,通过最小二乘法迭代,计算最优的坐标变换参数,即使误差函数:中的r和t最小,其中r为旋转矩阵,t为平移矢量,n为选取的数据点的总数,qk为选取的点云集q中的第k个数据点,pk为选取的点云集p中第k个数据点;将前两站的精配准结果按相同的步骤与相邻的第三站点云数据进行配准,可最终获得全方位完整的单株植被点云数据。

点云度压缩法不仅适用于散乱点云压缩,也适用于有序点云压缩;不仅适用于配准前单站点点云压缩,同样适用于配准后多站点点云压缩。点云度压缩法就可以实现多个功能,并且代替其他多种压缩方法,用户将不用在选择压缩方法上枉费周折,重复交替或者承接使用不同功能就可以完成其他压缩方法达到的效果。

附图说明

图1为玉兰树原始点云数据示意图;

图2为点云度结构示意图;

图3为叶子原始点云数据示意图;

图4为执行远端30点压缩后数据示意图;

图5为执行近端40点压缩后数据示意图;

图6为执行定点49.9%压缩后数据示意图;

图7为本发明点云度数据压缩法流程图。

具体实施步骤

1)数据获取:

为了获得完整的植被点云数据,需要从不同方位对植被进行扫描,而通过将相邻站点点云数据中的标靶作为控制点进行强制符合,可以完成对多站点云数据的粗配准,即将不同坐标系下的点云大致统一到同一坐标系下。然后,通过精配准,可使多站点云之间的拼接误差达到最小。设p、q为在不同站点获取的同一物体的点云集,且点p、q为被测物体表面任意一点在不同坐标系点云集中的构象,即p(xp,yp,zp)∈p,q(xq,yq,zq)∈q,点云数据的精配准就是要使两个点云集中任意表示物体表面同一点的点对(p,q),满足相同的变换,即:

其中,r为旋转矩阵,t为平移矢量。本发明采用的是icp算法(最近点迭代法,iterativeclosestpoint),其主要步骤是:首先,假设一个初始的位置及状态估计,即从点云集p中选取一定数量的点,并在相邻点云集q中寻找出这些点的对应点;然后,通过最小二乘法迭代,计算最优的坐标变换参数,即使误差函数

最小的r和t。两站植被点云数据的配准过程如图2所示。将前两站的精配准结果按相同的步骤与第三站点云数据进行配准,可最终获得全方位完整的单株植被点云数据。

2)点云排列:

扫描仪扫描任何形状的物体,获得的数据都是一个有限范围的点云数据集,获取的单株玉兰树点云图像如图1。由于这些点云数据集的排列是无序的,为了方便研究,将这些点云按照dem(三维坐标中的z值)由低到高的顺序重新进行一次无损排列。排列后的点云按照新的序号重新排列,这个序号就是赋予散乱点云的重新定位信息。在以z值由低到高的排列过程中,如果出现z值相同的情况,就比较x值,x值较大的排列在前,较小的排列在后,如果x值仍然相同,就继续比较y值,y值较大的排列在前,较小的列在后。

3)点云分块:

重新排列的点云数据集n,根据用户的压缩要求选择合适的点云数n进行分块,以n为单位从dem最小值开始计数,满n重新开始下一个计数循环。每包含n个点云的单元我们视为一块,所剩不满n个点云的单元单独视为一块,这样就将整个点云分为m块。表示为:

m=int(n/n)+1(3)

4)块内再排:

对每块n个点云(最后一块不足n个)的x,y,z分别求平均值:

依据dist值(每个点距离块中心虚拟点v0的距离值)对块内的n个点再进行一次从小到大的无损排列。v0与n个点连线后形成如图2所示,图中v0点就为n度点,虚拟点云块中v0的点云度(pointclouddegree)就为n。虚拟点v0在图中最大限度的连接其余各点,并在应用中起到控制、关联其余各实点的作用。整块点云构成点云度网络后,就意味着庞大的三维散乱点云数据每个块内的每一个点(总共每个块内是n个点)都会与虚拟中心点v0之间都会有一个距离远近的关系,这样从最近距离到最远距离之间一共也是对应n个距离值,从而在每块单元内,与虚拟点v0相连接的n个点云被赋予了从1到n的定位信息,这时从1到n的任意一个数字与v0的个数结合就代表一个点,通过这样的方法就可以更加方便对任一块点云进行二维数字化检索,为下一步压缩奠定基础。

5)方法实现:

整块点云构成点云度网络后,就意味着庞大的三维散乱点云数据被重新划分成由v0个数与n值构成的二维坐标系。而在每块单元内,与虚拟点v0相连接的n个点云被赋予了从1到n的定位信息,这时从1到n的任意一个数字与v0的个数结合就代表一个点,通过这样的方法就可以更加方便对任一块点云进行二维数字化检索,为下一步压缩奠定基础。

下面以玉兰树一片叶子的点云数据(4583点)为例,如图3。为了突出呈现各功能的作用,这里我们将叶子的点云按照每块100个点分为46块。

a.远端点压缩

根据用户需要,对v0远端点进行压缩,此功能对于点云数据具有去噪,修边,整型的功能。如图4,当压缩掉远端的30个点时,叶片远端的噪声被删除,叶片的外围形状更接近于实际叶片。

b.近端点压缩

对于v0近端点的压缩,此功能对于点云数据具有稀疏块内点云、提取点云框架的功能,在外形整体不变的情况下更具透视化。如图5,当压缩的近端点为40点时,在保持叶片外形的前提下,叶片内部的透光性更加明显,透视化突出。

c.区间点压缩

根据用户需要设置相应区间,并对区间内的点云进行压缩。具有对指定区域的压缩功能,压缩具备一定的指向性。

d.指定点压缩

对于点云数据中指定点进行压缩,压缩掉对用户不需要的指定点,指向性更加突出,压缩效果明显。该功能当点云数据分块足够多,如对4583点的点云进行2292块划分,每块只有2点,当对每块的一个点进行指定点压缩时,就是对点云进行压缩率49.9891%压缩,由于在距离上块内两点互为邻点,压缩后的整体特征不会丢失,压缩效率高。如图6。

这4种功能可以根据不同的要求对同一数据进行反复或者承接压缩,以达到预期效果。因为破坏原始点云的数量和分布有限并且过程可控,所以压缩过程属于无损压缩。点云度压缩法流程如图7所示。本文应用windows7、vs2010平台对算法进行实现,c++应用程序完成开发,辅助geomagicstudio12完成点云显示。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1