在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → 机载LiDAR波形数据读取方法.pdf

机载LiDAR波形数据读取方法.pdf

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:0.42M
  • 下载次数:9
  • 浏览次数:113
  • 发布时间:2020-02-26
  • 实例类别:一般编程问题
  • 发 布 人:robot666
  • 文件格式:.pdf
  • 所需积分:2
 

实例介绍

【实例简介】
【实例截图】
【核心代码】

 

介绍LAS1.3波形数据读取的方法,单条读取,多条读取以及内存映射的方法
●继续读取下一个变长记录头并进行相同的操
的所有操作。其中,将流程中所有读数据的操
作,直到循环结束
作替换为对映射函数返回的文件指针使用
)逐条读取点数椐记录及其对应的波形数据
函数的操作
根据公共头块的“点数据记录个数”字段逐条
)从进程的地址空间撤销文件数据的射
循环读取点数据记录及对应的波形数据。
)关闭文件映射内核对象;
●假设读取第个点数据记录,则先计算此点数
)关闭文件内核对象
据记录距文件起始处的偏移量
。其中,
为公
次读条数据的方法
共头块中的“点数据记偏移量”字段值,
次读n条数据的方法实质上是对读取点数据记
为公共头块中的“点数据记录长度”字段值。
录及其对应波形数据等进行了改进,步骤是
根据
将文件指针调至第个点数据记录
)读取出公共头,判断公共头;
的起始欠,结合
将此点数据记永读出并
)计算变长记录区的长度
判断记录里的“波形包描述符索引”字段值。
,其中
为公共头块中的
●如果点数据记录里的“波形包描述符索引”宁
“点数据记录偏移量”宇段值,为公共头块
段值为,则该点数据记录没有对应的波形数
的固定长度(单位字节)。移动文件指针至变

长记录区的起始位置,根据
值一次将所
如果此字段值在
区间内,则读取这些波
有的变长记录读入内存中,然后在内存中对变
形数据。首先计算日标波形包距文件起始处的
长记录数据进行处理(同基本操作)。其中,
偏移量
其中
将读操作改为对指向内存中变长记录的指针使
为公共头块中的“波形数据包记录起始

函数的操作
位置”字段值,
为第个点数据记录中
)一次读出条点数据记录,并求出这条
的“波形数据偏移量”字段值。移动文件指针
点数据记录中所有“波形数据偏移量”字段值

处,根据第个点数据记录里的“波
的最大值
最小值
形包长度”字段值将此波形数据包读出。
)求出这条点数据记录对应的所有波形数
●继续读取下一个点数据记录并进行相同的操作
据的总长度
直到循环结束
其中

对应点
数据记录中的“波形包长度”字段值。求出这
读取波形数据的改进方法
糸点数据记录对应的所有波形数据的起始位置
计算机系统访问硬盘速度要比访问内存的速度慢
距文件起始处的偏移量
得多,所以如果在读取数据时能更少的访问硬盘更多
。其中
为公共头块里的“波形
的访问内存,那么读取速度将会大大提升。基」这种
数据包记录起始位置”字段值。根据求出的
思路,本文提出两和改进方法:内存映射的方法和

将这条点数据记录对应的所
次读条数据的方法。
有波形数据一次读进内存中。
)对内存中的这条点数据记求及其对应的
内存映射的方法
波形数据进行与基本方法相同的操作。其中,
内存映射方法的步骤是:
将原来的读操作改为对指向点数据记录的指针
)创建或打开一个文件内核对象
及指向波形数据的指针仗用
函数的操
)创建一个文件映射內核对象;

)将文件映射对象的全部映射到进程地址空间
●)对()、()、()步进行循环直到文
中去,此时整个文件被映射成一个视图,映射
件读完
函数会返回指向该文件视图在进程地址空间中
实验算例与数据分析
的起始地址指针;
●)进行图(读取波形数据基本流程图)所示
读取波形数据方法的可行性验证

本文借助
语言实现了文中所述种方
读取方法
消耗时间/m瞬时所占最大内存/M
法,读取了一个年某地
版文件并以波形
基本方法
20282
<1
的方式将波形数据显示出来,然后与
内存映射
933
公司提供的专业波形显示软件所显示的波形做了大量
的对比,验证了种方法的可行性。图和图为大
一次读n条(1=10)
5594
量对比中的一条的情况
次读n条
3172
n=1000)
一次读n条
4159
(n-100000)
次读n条
tata mila
4156
(n=1000000)
实验数据分析
从表列出的三种方法消耗的时间中,可以发现
改进的两种方法的读取速度要远远高于基本方法,同
时对于一次读条数据的方法来说,读取文件消耗的
时间并不随的增大而单调递减,如图所示
图本实例程序显示的波形
读取时间变化趋势
5000
bOoU
T器
54000
0
1000
100000
lC00000
C laws
次读数据条数n/条
Srp a
图时间变化趋势
图专业波形显示软件的波形
从表列出的三种方法瞬时占用的最大内存中,可
以看到读取文件时,三种方法在内存为的计
算机上都能很好地运行。
综上所述,基本方法虽然算法筍单,但是读取数据
三种读取方法读取数据效率对比实验算例
效率低;一次读条数据的方法虽然算法上稍微复杂
本文引用了年某地的一个
但是读取数据效率高;内存映射方法的算法简单且读取

版文件,在配置参数为
内数据效率高
存的计算机上分别采用文中所述三和方法对其进行读展望
取并记录了所消耗的精确吋间以及内存使用情况。具
对」一次读条数据的方法来说,可以进一步采用
体情况如表所小:
多线程技术使其与后面处理波形数据的操作同时并行
处理,这将进一步提高从数据读取到数据处理整个流程
表三种读取方法对比
的效率。对于內存映射方法来说,虽然在本文屮实现了
对文件的高效读取,但是它适用于读取几百

乃至几大文件的优势并未展现出来,所以有必要进
张靖,高伟柊式解析及其扩展域的应用测绘科学,
步展开对内存映射方法的研究
(参考文献
刘春姚银银吳杭彬机载激光扫描()标准数揉格
式的分析与数据提取遥感信息,:
李奇马洪超基于激光雷达波形数据的点云生产测绘学
赵自明,史兵,田喜平,赵松格式解析及其数据的读取
与显示测绘技术装备
徐光彩机载
波形数据处理及分类研究南京林业
大学硕十学位论文


 

标签:

实例下载地址

机载LiDAR波形数据读取方法.pdf

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警