首页 / 专利库 / 电脑零配件 / 外围设备 / 鼠标 / 一种海量三维激光点云压缩存储及快速加载显示方法

一种海量三维激光点压缩存储及快速加载显示方法

阅读:885发布:2021-06-05

专利汇可以提供一种海量三维激光点压缩存储及快速加载显示方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种海量三维激光点 云 压缩存储及快速加载显示方法,属于三维激光测量技术领域,通过采集点云数据总体结构、按照不同级别对数据进行分类、压缩,每一级别包括 块 集、块和包三级索引,实现高度存储和快速加载显示,基于本发明存储格式可解决海量点云占用空间大,不易拷贝问题,编辑分类问题,基于本方法实现的三维激光点云存储、浏览、编辑时具有点云存储空间小,点云浏览处理 软件 占用内存小,在浏览过程中点云占用内存不超过100Mb;首次加载显示及实时浏览速度快,在浏览点云过程中,不会卡顿现象,实时动态刷新点云,刷新响应时间小于1s;支持编辑分类等优点。,下面是一种海量三维激光点压缩存储及快速加载显示方法专利的具体信息内容。

1.一种海量三维激光点压缩存储及快速加载显示方法,其特征在于,包括以下内容:
1)激光点云高度压缩存储方法
1.1)点云数据总体结构:
a.整体由若干层级别构成,从低到高,0级是最详细原始数据,高等级由低等级数据抽稀构成,每一级别对应不同显示比例尺;
b.坐标、强度、时间合并文件存储,颜色、分类单独文件存储;
c.数据文件按级别顺序存储,0,1,2...n;
d.每一级别按坐标、强度、时间顺序存储;
e.颜色数据,通过与点云配准后的影像对点云进行着色后生成;
f.除分类数据无压缩外,其他数据都压缩存储,压缩算法采用FastAC;
g.选择、删除编辑标记信息存放在分类中;
1.2)集、块、包组织关系:
a.每一级内部包括三级索引:块集、块、包,块集包含块,块包含包;
b.编号从左到右,从下到上,从低到高;
c.分块采用2×2×2裁切,默认块集边长64,1块集包含2×2×2块,1块包含2×2×2包;
d.每层三级索引分块需均衡,每数据包最大存储1M数据,每个数据包索引包含格网划分规则、点数、范围、坐标、强度、时间、颜色和分类数据地址信息;
2)数据压缩存储实现方法
2.1)xyz坐标采用网格相对坐标,每个坐标值采用2个字节表达,在保证坐标精度
0.001m情况下,网格边长约设为64m;
2.2)强度属性采用1个字节,表达范围0-255;
2.3)时间属性采用2个字节,精度为1/128秒情况下,表达范围0-511秒;
2.4)颜色属性采用2个字节,红色5bit、绿色6bit、蓝色5bit,即R5G6B5,RGB和R5G6B5转换方法如下:
2.5)采用1个字节表达分类编辑属性,其中选择标记1bit、删除标记1bit、分类属性
5bit,保留属性1bit,分类表达范围0-31;
其中,坐标、强度、时间属性无需编辑,物理上采用FastAC压缩存储,颜色属性着色时动态生成,并且压缩存储,唯独分类编辑属性不压缩;
3)激光点云快速加载显示具体实现
a.开启OpenGL三维视图,开启GPU硬件加速
b.读取获取点云数据范围,设置相机视点和视参数;
c.开启数据读取多线程,线程等待数据读取信号
d.读取最高级别层点云数据,按分块建立当前窗口内存MeshBuffer,首次浏览全图俯视显示;
e.当进行鼠标拖动平移浏览时,将内存中的分块MeshBuffer实时刷新显示,当鼠标弹起松开后,根据窗口地理范围,计算需要新加载的分块,并发送信号给数据读取多线程,同时在内存中卸载窗口范围外分块MeshBuffer;
f.当多线程每一个分块数据读取解析完毕时,通知主线程进行刷新视图;
g.当视图进行放大缩小操作时,根据视图比例尺,判读对应显示的数据层级,然后在读取范围分块数据进行显示。

说明书全文

一种海量三维激光点压缩存储及快速加载显示方法

技术领域

[0001] 本发明涉及三维激光测量技术领域,具体是一种海量三维激光点云压缩存储及快速加载显示方法。

背景技术

[0002] 目前三维激光测量技术正在被广泛应用于测绘领域,可以快速采集获取地物表面三维激光点云,三维激光扫描根据载体不同,可以划分为地面站、车载、机载和背包等形式;三维激光扫描仪在移动载体上可以连续扫描测量沿途两侧空间地理要素,获取海量的三维激光点云,目前主流的激光扫描仪如RIEGL、Z+F、Faro及国内的中海达HS300等,可以每秒采集获取30-100万点云;三维激光扫描仪采集获取的点云通常包含三维坐标、强度、时间和颜色等信息,后处理还包括分类信息。点云浏览显示通常包含按高程渲染、按强度渲染、按真彩色渲染、按分类渲染,不同渲染方式对应加载点云属性信息不同;三维激光测量技术的发展与应用的同时,另一方面又伴随着海量点云数据存储与快速显示的问题,目前国内外激光扫描仪厂商配套软件都普遍存在以下问题:占用内存大、首次加载过程缓慢、显示浏览不顺畅、无法连续处理编辑海量点云、数据存储占用空间大;以上问题的存在,在一定程度上制约了三维激光点云预处理及后续加工生产应用。

发明内容

[0003] 本发明的目的在于提供一种能解决点云编辑问题,实现海量三维激光点云压缩存储及快速加载显示方法,以解决上述背景技术中提出的问题。
[0004] 为实现上述目的,本发明提供如下技术方案:
[0005] 一种海量三维激光点云压缩存储及快速加载显示方法,包括以下内容:
[0006] 1)激光点云高度压缩存储方法
[0007] 1.1)点云数据总体结构:
[0008] a.整体由若干层级别构成,从低到高,0级是最详细原始数据,高等级由低等级数据抽稀构成,每一级别对应不同显示比例尺;
[0009] b.坐标、强度、时间合并文件存储,颜色、分类单独文件存储;
[0010] c.数据文件按级别顺序存储,0,1,2...n;
[0011] d.每一级别按坐标、强度、时间顺序存储;
[0012] e.颜色数据,通过与点云配准后的影像对点云进行着色后生成;
[0013] f.除分类数据无压缩外,其他数据都压缩存储,压缩算法采用FastAC;
[0014] g.选择、删除编辑标记信息存放在分类中;
[0015] 1.2)集、块、包组织关系:
[0016] a.每一级内部包括三级索引:块集、块、包,块集包含块,块包含包;
[0017] b.编号从左到右,从下到上,从低到高;
[0018] c.分块采用2×2×2裁切,默认块集边长64,1块集包含2×2×2块,1块包含2×2×2包;
[0019] d.每层三级索引分块需均衡,每数据包最大存储1M数据,每个数据包索引包含格网划分规则、点数、范围、坐标、强度、时间、颜色和分类数据地址信息;
[0020] 2)数据压缩存储实现方法
[0021] 2.1)xyz坐标采用网格相对坐标,每个坐标值采用2个字节表达,在保证坐标精度为0.001m情况下,网格边长约设为64m;
[0022] 2.2)强度属性采用1个字节,表达范围0-255;
[0023] 2.3)时间属性采用2个字节,精度为1/128秒情况下,表达范围0-511秒;
[0024] 2.4)颜色属性采用2个字节,红色5bit、绿色6bit、蓝色5bit,即R5G6B5,RGB和R5G6B5转换方法如下:
[0025] (a)RGB转R5G6B5(u16)((color&0x00F80000)>>8|
[0026] (color&0x0000FC00)>>5|
[0027] (color&0x000000F8)>>3);
[0028] (b)R5G6B5转RGB0xFF000000|
[0029] ((color&0xF800)<<8)|
[0030] ((color&0x07E0)<<5)|
[0031] ((color&0x001F)<<3);
[0032] 2.5)采用1个字节表达分类编辑属性,其中选择标记1bit、删除标记1bit、分类属性5bit,保留属性1bit,分类表达范围0-31;
[0033]
[0034]
[0035] 其中,坐标、强度、时间属性无需编辑,物理上采用FastAC压缩存储,颜色属性着色时动态生成,并且压缩存储,唯独分类编辑属性不压缩;
[0036] 3)激光点云快速加载显示方法
[0037] a.打开读取点云数据文件,从文件头获取点云范围、数据量等信息,根据屏幕窗口大小及点云范围计算初始全图显示比例尺;
[0038] b.获取显示比例尺判断数据加载等级Level;
[0039] c.根据窗口范围和三级八叉树分块索引信息,加载分块数据;
[0040] d.解压分块数据,并根据坐标编码规则,解算坐标,通知主线程刷新显示分块点云;
[0041] e.对当前窗口分块数据进行动态调度管理,内存中保留当前窗口分块点云,实时卸载跨层及窗口范围外分块数据;
[0042] 4)激光点云编辑分类实现方法
[0043] 编辑选择点云时将HdPtClass.isSelected属性标记为1,编辑删除点云时将HdPtClass.isDeleted属性标记为1,分类时将HdPtClass.ptclass属性标记为对应类别编码。
[0044] 与现有技术相比,本发明的有益效果是:基于本方法实现的三维激光点云存储、浏览、编辑时具有以下优点:点云存储空间小,点云浏览处理软件占用内存小,在浏览过程中点云占用内存不超过100Mb;首次加载显示及实时浏览速度快,在浏览点云过程中,不会卡顿现象,实时动态刷新点云,刷新响应时间小于1s;支持编辑分类。附图说明
[0045] 图1为点云数据总体结构示意图。
[0046] 图2为块集、块、包组织关系示意图。
[0047] 图3为点云快速加载显示流程图
[0048] 图4为点云分层分块压缩存储流程图。

具体实施方式

[0049] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0050] 请参阅图1~4,三维激光扫描仪采集获取的点云通常包含三维坐标、强度、时间和颜色等信息,后处理还包括分类信息。点云浏览显示通常包含按高程渲染、按强度渲染、按真彩色渲染、按分类渲染,不同渲染方式对应加载点云属性信息不同;本发明实施例中,一种海量三维激光点云压缩存储及快速加载显示方法,包括以下内容:
[0051] 1)激光点云高度压缩存储具体实现
[0052] (a)根据原始点云范围和点云数据量确定起始划分网格位置,并按每数据包不超过1MB原则,确定划分包数,按每层的块集、块、包三级平衡划分原则,确定块集到块、块到包的格网划分原则。
[0053] (b)根据块集划分规则,读取原始数据写入块集数据,如果当前块集数据小于1MB,则直接将当前块集数据压缩写入当前块集,不再划分块;
[0054] (c)如果块集数据大于1MB,则根据块集到块的划分规则,将块集数据划分为指定块,如果写入的块数据小于1MB,则直接将当前块数据压缩写入当前块,不再划分包;
[0055] (d)如果块数据大于1MB,则根据块到包的划分规则,将块集数据划分为指定包,然后将包数据压缩写入当前包。至此完成0层数据的写入;
[0056] (e)根据0层综合抽稀生成1层数据,每次往高一等级抽稀时按1/4比例抽稀;
[0057] (f)不断循环抽稀生成高等级数据,直到最高等级数据小于100万;
[0058] (g)当为点云着色时,动态生成每数据包的对应颜色数据,并压缩存储,然后更新数据包的颜色数据地址,如果存在颜色数据,则删除重新生成并更新颜色数据地址;
[0059] (h)当为点云编辑分类时,动态生成每数据包的对应分类数据,然后更新数据包的分类数据地址;
[0060] 2)激光点云快速加载显示具体实现
[0061] (a)开启OpenGL三维视图,开启GPU硬件加速
[0062] (b)读取获取点云数据范围,设置相机视点、视等参数;
[0063] (c)开启数据读取多线程,线程等待数据读取信号
[0064] (d)读取最高级别层点云数据,按分块建立当前窗口内存MeshBuffer,首次浏览全图俯视显示;
[0065] (e)当进行鼠标拖动平移浏览时,将内存中的分块MeshBuffer实时刷新显示。当鼠标弹起松开后,根据窗口地理范围,计算需要新加载的分块,并发送信号给数据读取多线程,同时在内存中卸载窗口范围外分块MeshBuffer;
[0066] (f)当多线程每一个分块数据读取解析完毕时,通知主线程进行刷新视图;
[0067] (g)当视图进行放大缩小操作时,根据视图比例尺,判读对应显示的数据层级,然后在读取范围分块数据进行显示。
[0068] 基于本方法,在浏览点云过程中,不会卡顿现象,实时动态刷新点云,在浏览过程中点云占用内存不超过100Mb,刷新响应时间小于2s。
[0069] 对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
[0070] 此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈