APP下载

LAS格式的解析与转换

2016-06-22孙爱怡王健

全球定位系统 2016年2期
关键词:点云数据数据格式

孙爱怡,王健

(山东科技大学 测绘科学与工程学院,青岛266590)

LAS格式的解析与转换

孙爱怡,王健

(山东科技大学 测绘科学与工程学院,青岛266590)

摘要:本文主要探讨LAS数据结构的发展历程,在分析已有四种版本的基础上,探讨LAS标准发展趋势,并采用C++语言对该格式的LiDAR数据进行读取和转换试验,检验了LAS格式的效率,并为以后的LAS格式数据处理提供参考。

关键词:点云数据;数据格式;LAS;格式分析;数据提取

0引言

随着空间数据应用领域的不断扩大,对获取准确可靠空间数据应用领域的不断扩大,对获取准确可靠空间数据的要求也越来也高。传统的摄影测量因为生产周期长、费用高、效率低、高程点获取的密度低,已不适应当前信息社会的需要。而能够精确、快速地获取地面三维数据的机载激光雷达(LiDAR)作为一种经济可靠的技术随之孕育而生。始于20世纪70年代后期,是一种集激光、全球定位系统(GPS)和惯性导航系统(INS)三种技术于一身的系统,是一种主动遥感技术,用于获得数据并生成精确的DEM、DTM、地表附着物等信息[1]。它可以实现空间三维坐标的同步、快速、精确地获取,并根据实时摄影的数码相片,通过计算机重构来实现实体或场景目标的3D数据模型,再现客观事物的实时的、真实的形态特性,为快速获取空间信息提供了简单有效手段。

因为LiDAR是由多种设备组成的复杂系统,其获取的数据也有很多种,数据产品丰富,包含三维激光点云数据、高清晰数码影像等多种数据形式,能真实直观地反映实际地形地貌[2],而且信息获取时的数据流程也比较复杂。目前原始数据的获取和激光脚点坐标解算,精度控制等都由硬件生产厂家在提供原始数据时进行的,但因为用户不同,他们对数据的要求也不同,有时硬件厂家提供的数据不满足要求。以往LiDAR点云数据格式通常是由采集和处理LiDAR数据的硬(软)件厂商提供,常见的有:Leica 公司的 Pts,Ptx存储格式,由TerraScan软件处理后的 Bin,Ts存储格式[3]。目前国际上常用的LiDAR数据存储格式包括ASCⅡ文本、栅格以及自定义二进制格式等[4]。ASCⅡ文本直接将LiDAR点的X、Y、Z坐标转换成ASCⅡ码存储,占用空间较大,数据长度不固定难以建立索引;栅格文件格式是一种成熟的地理数据存储方法,但由于LiDAR 数据为离散点,如果采用栅格方式存储,需要对原始数据进行内插,可能造成有用信息的丢失,影响了原始数据的精度[5];而一些硬件厂商采用的自定义二进制记录格式往往只是针对特定的硬件设备和数据处理软件,难以实现数据共享,且通用性较差,而且大量的点云数据对空间的占用也很巨大[6]。有的提供原始的三维离散点云数据,有的提供进行内插后的格网数据,有的提供包含多次回波信息和回波强度信息,而有的不提供回波次数和强度信息。制定一个机载激光雷达数据标准,规范机载数据格式,使机载LiDAR数据能够被数据后处理的软件所通用,对机载LiDAR在各个领域的广泛应用具有很大意义。为了方便不同的硬件厂商、软件厂商和用户之间进行数据交换和共享,美国摄影测量与遥感学会(ASPRS)机构下的 LiDAR 专业委员会于 2003 年发布了标准 LiDAR 数据格式 LAS.

1LAS格式分析

在经过修改后的2.0版本发布前,一个完整的LAS文件格式由三部分组成,分别是公共头,变长记录和LiDAR点集记录[7]。这样组织的好处是在文件头部分可以用来记录数据的一些基本信息,如点数、数据范围等等。而在变长记录中存储数据的投影信息,元数据信息及用户自定义信息等。最后的点集坐标数据就是LiDAR 真实的地物三维数据。2.0版本的LAS数据则增加了点记录元数据块,变为由四部分构成。在先前的基础上拓展了数据规范,这种拓展向用户提供一种更加开放的格式,它增加了点记录元数据块,将地物点的属性统一在这部分描述,同时加入了用户自定义的许可,用户可以按照规范增加自己需求的文件格式,是LAS 中比较灵活的部分。表1示出了1.1版本与2.0版本版本格式的异同。

表1 LAS两种版本的异同

1.1公共头

公共头用来记录数据集的基本信息。如LiDAR点总数,数据范围,LiDAR 点格式,变长记录总数等。由于一个LAS文件可能是由硬件采集的数据直接生成的或是对已有数据进行提取、融合、修改后得到的,因此公共头中还记录了LAS文件的生成方式。

针对LiDAR数据多返回的特点,公共头还记录了最多可达5次返回的每次返回的LiDAR点总数。公共头中还记录了X、Y、Z方向的比例尺因子(scale)和偏移值(offset),这样能够减少每条点记录的长度(LiDAR 点集记录中采用long 型记录三维坐标),而且LiDAR点云数据的真实坐标可以通过下列公式得到:

式中,Xrecord、Yrecord、Zrecord为LiDAR点云数据中的记录值。

1.2变长记录

变长记录区位于公共文件头去之后,用来记录数据的投影信息、元数据信息以及用户自定义信息等,是LAS格式中最灵活的部分。每条变长记录包括固定的变长记录头和灵活的扩展域两部分。一条变长记录的长度=变长记录头长度+扩展域长度。在其中包含一些元数据,如点云数据的坐标系信息,用于判断每条变长记录起始位置的记录标签,运用字符串来记录变长记录的用户ID和通过LAS格式来确定的记录ID等。

点集记录部分保存了大量的LiDAR脚点信息,是LAS文件的核心,记录了每个离散点云的三维坐标和相关属性。如图1所示。LAS支持的LiDAR 点记录格式有100种,从Format 0~Format 99.在同一个LAS文件中,只有一种LiDAR点格式。而且要与公共头中的点格式一致。Format 0是基本的LiDAR 点记录格式,其他的点格式都是以Format 0为基础进行扩展的。如目前常用的Format 1格式就是在Format 0的基础上增加了一条属性来记录每个脚点的GPS时间。这样可保证LiDAR点格式中属性记录的灵活性和可扩展性。Format 0格式的点记录,包含多条基本属性,如空间X、Y、Z坐标,激光反射强度值,当前点的分类号,当前激光脉冲的回波总数,当前脚点属于第几次返回等。考虑到LiDAR按条带进行扫描的特点,在Format 0的点记录中,还包括有当前激光器扫描角度和当前点是否为条带边缘点等信息(这些信息的记录有助于在后继处理中进行条带间数据的匹配和拼接)。

图1 LAS2.0点集记录

目前应用较广的版本分别是 LAS1.0,LAS1.1,LAS1.2,LAS1.3,LAS1.4,LAS2.0.LAS 逐渐成为 LiDAR 数据处理的一种行业标准。

2LAS数据的格式转换与读取

基于上述对LAS格式的解析,选取某实验区域进行数据处理,该实验区域包含建筑物、道路、植被等典型地物,利用C++编程语言调用Liblas类库,实现二进制的LAS2.0版本的数据到txt格式数据的转换,并从中获取可用信息。部分程序如下:

#include "stdafx.h"

#include "liblas/lasreader.h"

///#include

#include

//#include

#include

#include

#include

using namespace std;

#include//检测内存泄漏

#define m_StrOpenPath_T("F:\test.las")

int_tmain(intargc,_TCHAR* argv[])

{

FILE* flas;

_tfopen_s(&flas,m_StrOpenPath, _T("rb"));

LASreaderreadin;

readin.open(flas);

//read data

intnPts=readin.header.number_of_point_records;

doublemaxx=readin.header.max_x;

double minx=readin.header.min_x;

doublemaxy=readin.header.max_y;

doubleminy=readin.header.min_y;

doublemaxz=readin.header.max_z;

doubleminz=readin.header.min_z;

}

可以获得该区域的点数为23 265,平均点密度为1.364,强度值的范围从 0~ 223,图2示出了程序运行过程,图3示出了运行结果,可以直观地获取点位信息。

图2 程序运行过程

图3 程序结果输出形成point.txt文件

3结束语

随着机载激光雷达系统的不断发展,其标准数据格式(LAS)也在不断改进更新。因此在分析LAS2.0数据结构的基础上,将常见的软件所不能进行读取的LAS2.0版本的文件转换成txt文件,更加清楚直观的获取点云点云数据的坐标、分类、数据来源等信息。以便进行更加直观的进行分析,为日后的LiDAR数据处理提供参考,以及进行其他方面的利用。

参考文献

[1]梁欣廉,张继贤,李海涛,等.激光雷达数据特点[J].遥感信息,2005(3):71-76.

[2]陈富强.机载LiDAR技术的优势及应用前景研究[J].北京测绘,2013(2):12-14.

[3]SAMBERG A. Andre Samberg.An implementation of the ASPRS LAS standard[C].//Isprs Workshop on Laser Scanning 2007 and SiviLaser 2007, Espoo Septemher 12-14,2007, Finland.

[4]张靖,高伟.LAS格式解析及其扩展域的应用[J].测绘科学,2008,33(6):154-155.

[5]赵自命,史兵,田喜平,等.LAS格式解析及其数据的读取与显示[J].测绘技术设备,2010,12(3):17-20.

[6]刘春,姚银银,吴杭彬.机载激光扫描(LiDAR)标准数据格式(LAS)的分析与数据提取[J].遥感信息,2009(8):38-42.

[7]周晓明,唐德瑾,马秋禾,等.LAS Version2.0数据格式解析[J].测绘工程,2010,19(4):43-46.

孙爱怡(1989-),女,山东潍坊人,硕士生,主要研究方向为现代测量数据处理理论及其应用。

王健(1974-),女,山东沂水人,博士,副教授,主要从事现代测量数据处理和LiDAR技术等方面的教学及研究工作。

LAS Analysis and Format Conversion

SUN Aiyi,WANG Jian

(ShandongUniversityofScienceandTechnology,CollegeofGeomics,Qingdao266590,China)

Abstract: The main content of this paper is to introduce LAS data structure. Then in-depth discussion LAS data structure of development,has four versions in the analysis,based on the criteria discussed LAS trends,and using C++to deal withLiDAR data in the format and language in orderto read and transformation test,inspection of the LAS format efficiency and format data for subsequent processing to provide reference LAS.

Keywords:Point cloud data; data format; LAS; format analysis; data extraction

doi:10.13442/j.gnss.1008-9268.2016.02.023

收稿日期:2015-12-21

中图分类号:P237

文献标志码:B

文章编号:1008-9268(2016)02-0115-04

作者简介

资助项目: 山东省自然科学基金(批准号:ZR2014DM014),海岛(礁)重点实验室开放基金(编号2013B09)

联系人: 孙爱怡 E-mail: geosunaiyi@163.com

猜你喜欢

点云数据数据格式
在智能交通系统中PLC数据格式转换方法的研究
基于水利标准数据格式的BIM数据管理和水利BIM生态探索
校园典型建筑物点云数据三维建模方法
三维激光扫描技术在异型建筑玻璃幕墙中的应用研究
一种改进的点云数据组合精简算法
世界首个可记录物体内部结构等复杂信息的3D打印数据格式问世
基于三维激光扫描测量技术的露天矿山变形监测研究
三维激光扫描技术在地质灾害方面的应用探讨
论子函数在C语言数据格式输出中的应用
DWG与SHP数据格式互转换方法研究——以龙岩规划测绘数据为例