专利名称:基于金字塔的海量激光雷达点云存储方法
技术领域:
本发明涉及测绘数据处理技术领域,尤其涉及基于金字塔的海量机载激光雷达点云存储方法。
背景技术:
激光雷达测量(Light Detecting and Ranging, LiDAR)技术源自1970年美国航天局(NASA)的研发,20世纪80年代得到迅速发展,20世纪90年代前后,将其与GPS和惯性导航系统集成应用,它可以提供精确的地球空间信息。我国应用激光雷达测量技术始于20世纪90年代,现在广泛应用于测绘、建筑、市政、电力、军事等各项国家基础建设领域。激光雷达测量是ー种主动式探测技术,它主要分为激光发射端和接收端两个模块。发射端产生并向地物发射一束激光脉冲,在地物上产生反射,而反射为接收器接收。通过计算发射到被反射回的传播时间,即可计算得激光传播的精确距离(光速*时间/2)。结合激光器的位置及姿态,即可准确地计算出每个激光束被反射点的三维坐标。激光雷达可放置于多种平台之上。其中,安放于飞机上在飞行过程中对地面进行连续激光雷达探测的系统成为机载激光雷达系统。激光雷达产生的空间数据通称“点云”。激光雷达点云数据以文件形式存放,称为“点云文件”。点云文件记录的信息通常包括点的三维坐标、回波次数、反射率等属性。随着机载激光雷达硬件系统的不断成熟,机载激光雷达扫描的密度与精度日益提高。目前,主流商业机载激光雷达的发射脉冲频率可以达到数十万Hz。飞行高度距地面1000米的正常作业中,地表扫描线间距可以达到亚米级。这意味着每平方公里地表測量区域记录的激光点个数可达2000万(单次条带),而一次包含多个条带的飞行作业往往可获取数十亿个激光点。如果不对海量激光点云进行合理的空间索引,点云的浏览、特征提取、数字产品生成等操作均无法正常有效进行。现有的激光雷达点云数据处理商业软件对于海量点云的存储主要是直接将原始点云根据ニ维分布范围存储为ー个个大的文件。按照国际通用格式Ias格式存储,ー套包含10亿激光点的点云数据文件大小在数十GB数量级,而每个单独瓦片往往在数百MB。由于只是简单地将点云根据其覆盖范围分文件存储,没有考虑具体操作对数据密度的不同需求,导致每次请求ー个局部区域的数据时,均需将该区域所在文件的所有数据读出,I/O冗余操作严重。例如,主流商业软件在制作数字高程模型(DEM)时首先将原始点云文件全部读入,然后在滤波、内插阶段再根据要制作DEM的分辨率作为点间距,抽样选取真正所需的激光点进行计算。假设使用密度为d米(如I米)的原始点云生产分辨率为D米(如90米)的DEM产品,则数据读取冗余度最大可达(D-d)/d(如89)倍。
发明内容
本发明的目的在于解决现有的机载激光雷达点云数据处理商业软件在海量机载激光雷达点云数据存储上的缺陷,提供一种有效的基于金字塔的海量激光点云数据存储方法。本发明的技术方案采用基于金字塔分层瓦片的渐进加密式数据存储,包括以下主要步骤A、金字塔建立;B、点云数据读取;C、点云数据写回。
进ー步地,步骤A中金字塔建立细化为Al根据原始点云确定整片激光点云的ニ维边界范围,并对所有激光点进行统一编号;A2用户指定第一层(底层)単位瓦片的长度(Tilejfeight)、宽度(Tile_Width)、抽稀因子(Thin_Factor,整数),井根据此配置计算出所需金字塔的各项结构指数金字塔总层数N(整数)、各层点云平均密度Dn、每个瓦片的ニ维边界及瓦片索引坐标(N,i,j)。A3通过抽稀方法逐层生成并分配第I至第N层点云数据。常用的点云抽稀方法包括姆n(2 く= η < =点总个数)个点中采样第I个点、姆η(2 く= η < =点总个数)个点中随机采样I个点、基于kd树的最小ニ维距离采样、基于kd树的最小三维距离采样。对于每ー层金字塔,按照本层瓦片边界将点云分配至相应的瓦片并存储为瓦片文件;A4删除各层中没有分配到任何激光点的空瓦片;进ー步地,步骤A2所需金字塔的各项结构指数的配置计算方法为A21结合原始点云总ニ维边界的长度和宽度和第一层单位瓦片的长度、宽度,可计算出第一层金字塔瓦片的总行数M和总列数N,也可计算出第一层金字塔每个瓦片的ニ维范围;瓦片索引横坐标按照从左向右顺序,纵坐标按照从上到下顺序排列;A22第二层单位瓦片的长度与宽度为第一层的Thin_Factor倍。以该层单位瓦片长宽计算出该层瓦片的总行、总列数、每个瓦片的ニ维范围。实际上,第二层每个瓦片的ニ维范围与第一层的Thin_Factor*Thin_Factor个瓦片重合;A23以此方法继续生成更高层数的瓦片结构,直至整个原始数据都在同一个瓦片内部,则金字塔最高层N确定。从底层算起,每ー层的点云平均密度为前ー层的1/Thin_Factor。进ー步地,步骤B中点云数据读取方法细化为BI根据数据请求的分辨率,确定ー个最佳的点云金字塔层数n,即从最高层开始第一个平均点密度高于请求分辨率的金字塔层;B2根据数据请求的ニ维范围,确定第η层金字塔中需要读取的瓦片索引范围;进一歩地,步骤C中点云数据写回方法细化为当第η层某瓦片(n,i,j)数据被修改后,同步修改金字塔其他层中对应瓦片数据。其中,第n+1层到顶层的对应范围瓦片数据重新由该层数据渐进抽稀生成;第I层到第n-Ι层的对应范围瓦片数据根据激光点号进行对应修改。本发明提供了一种基于金字塔的海量机载激光雷达点云数据存储方法。该方法能够有效地存储海量激光点云,可以实现点云数据的快速高效读入与写回,尤其适合于海量机载激光点云数据的即时显示、快速处理、以及数字空间产品制作。如目前的主流商业软件浏览点云时仅能加载某ー固定密度的整片点云。庞大的数据量导致用户改变视角时,系统无法按照用户的键盘鼠标输入进行同步屏幕刷新,直接影响了人机交互效率,并间接影响了数字空间产品的生产效率。而基于本方法的点云浏览可根据用户视角高度及范围,仅加载显示最优金字塔层中视角范围内的若干瓦片,对任意大点云数据均可达到即时交互式浏览效果。此外,本方法也大幅提高了数字产品生产的效率。实验数据证明,使用密度为I米的20平方公里点云数据制作10米分辨率的数字高程模型,基于传统固定数据块存储方法的生产过程中,数据读入约需5分钟,滤波分类约需17分钟,格网内插约需4分钟,处理时间(不含人工操作)共计26分钟;而使用基于本存储方法的生产过程中,数据读入约需O. 5分钟,滤波分类约需5分钟,格网内插约需4分钟,处理时间(不含人工操作)共计9. 5分钟,效率较传统方法提高了近3倍。
图I是金字塔第1、2层结构示意图;图2是某瓦片配置參数文件内容图;图3是金字塔各层数据存储结构关系图;图4是金字塔数据写回示意具体实施方案下文将參照附图对本发明的具体实施方案进行更详细的说明A金字塔建立Al循环原始点云文件,将每ー个激光点赋予唯一编号,并确定整个原始点云所在区域的ニ维边界范围,即点云坐标X和Y的最大和最小值(X_Min,X_Max, Y_Min, Y_Max)。A2用户指定第一层(最底层)単位瓦片的大小和相邻层之间的抽稀因子。単位瓦片的大小即每个单位瓦片的高度(Tilejfeight)和宽度(Tile_Width),抽稀因子(Factor_Value)确定相邻层单位瓦片的大小比例以及抽稀倍数。结合原始点云ニ维边界范围以及用户指定參数,可计算出金字塔所有结构配置參数,即金字塔总层数、各层平均点云密度、各层瓦片索引坐标及瓦片ニ维边界范围,并保存金字塔配置文件。具体步骤包括A21结合原始点云总ニ维边界的长度和宽度和第一层单位瓦片的长度、宽度,可计算出第一层金字塔瓦片的总行数M和总列数N,也可计算出第一层金字塔每个瓦片的ニ维范围;瓦片索引横坐标按照从左向右顺序,纵坐标按照从上到下顺序排列.金字塔各层瓦片索引坐标及瓦片ニ维边界范围计算公式參见表I。表I金字塔层各瓦片ニ维边界范围计算公式( “/”表示取整,i、j表示行列坐标,k表示金字塔层数)
权利要求
1.基于金字塔的海量机载激光雷达点云存储方法,其特征在于采用金字塔的方式分层按瓦片结构存储点云数据,具体包括以下步骤, A根据原始点云数据边界及用户指定參数确立金字塔配置,并将原始点云数据抽稀分配到金字塔各层各瓦片中。
B根据数据请求,确定最佳的金字塔层数及瓦片范围,并选取、返回相应数据; C某一瓦片点云数据被修改吋,同步修改其他金字塔层对应的瓦片数据。
2.根据权利要求I所述的基于金字塔的海量机载激光雷达点云存储方法,其特征在于步骤I所述用户指定參数包括底层瓦片的长度、宽度、抽稀因子。
3.根据权利要求I所述的基于金字塔的海量机载激光雷达点云存储方法,其特征在于步骤I所述抽稀的方法为姆n(2 < = η < =点总个数)个点中采样第I个点;或者姆η(2 く= η < =点总个数)个点中随机采样I个点;或者基于kd树的最小ニ维距离采样;或者基于kd树的最小三维距离采样。
4.根据权利要求I所述的基于金字塔的海量机载激光雷达点云存储方法,其特征在于步骤2所述的最佳点云金字塔层数为从顶层开始向下查找,第一个点密度大于空间数字产品分辨率的金字塔层,如没有这样的层,则使用金字塔第I层(底层,即原始数据)。
5.根据权利要求I所述的基于金字塔的海量机载激光雷达点云存储方法,其特征在于步骤3所述的点云数据修改类型増加点、删除点、点附加属性更改。
6.根据权利要求I所述的基于金字塔的海量机载激光雷达点云存储方法,其特征在于步骤3所述的其他金字塔层对应的瓦片为其他层中与该瓦片ニ维空间范围有重叠的所有瓦片。
7.根据权利要求I所述的基于金字塔的海量机载激光雷达点云存储方法,其特征在于步骤3. I所述的对应瓦片修改实现方式为选择其他层中与该瓦片ニ维空间范围有重叠的所有瓦片。对于第n+1层至第N层,直接根据修改后的第η层瓦片点云进行渐进抽稀,并替换原有瓦片点云;对于第I到第η-I层,根据第η层瓦片点云的点编号修改对应瓦片内的对应点。
全文摘要
本发明涉及测绘数据处理技术领域,尤其涉及基于金字塔的海量机载激光雷达点云存储方法。通过建立一种渐进加密金字塔式的数据存储方式,在金字塔的各层通过抽稀存储不同密度的瓦片式点云对海量点云数据进行空间索引。基于金字塔的点云数据管理方式可以实现对海量点云高效有序的存储,实际数据加工操作可根据需求自适应加载或修改相应的数据瓦片,从而大幅降低制作过程中所消耗的计算资源,并直接提高基于激光雷达点云的空间数字产品制作效率。
文档编号G06F17/30GK102693319SQ20121017661
公开日2012年9月26日 申请日期2012年5月31日 优先权日2012年5月31日
发明者杜娜娜, 浦石, 纪明汝, 赵永屹 申请人:北京拓维思科技有限公司