E57点云格式


1. 什么是 E57 文件

​ E57 文件格式是一种开源的紧凑且供应商中立的格式,由 ASTM International 的3D 成像数据委员会开发并记录在 ASTM E2807 - 11 中。E57 格式的设计和实现的概述可以在论文“ The ASTM E57 File Format for 3D Imaging Data Exchange ”中找到。

​ E57 文件以激光扫描仪、雷达 (LADAR) 使用的二进制和 XML 格式的组合存储数据,光学测距相机 (Flash LADAR) 和 LIDAR 图像。具有 E57 文件扩展名的文件还可以存储点云、图形、核心元数据、2D/3D 图形以及此类 3D 成像系统的元数据。 E57 文件的内容使用经过优化的 XML 子集以分层树结构编码,以允许有效存储大量二进制数据。但是,它的二进制数据并未嵌入到 XML 中,而是存储在单独的部分中并作为依赖项引用。

2. 如何打开 E57 文件

E57 文件可以用以下软件打开,包括但不限于:

  • Autodesk Recap Pro
  • Leica Register 360
  • Leica Cyclone
  • Faro Scene
  • Autodesk Revit
  • Autodesk Navisworks
  • AutoCAD
  • 3DS Max
  • Rhino3D
  • Trimble Sketchup
  • Trimble Business Center
  • TopCon Magnet
  • Cintoo Cloud

3. E57格式优势

E57 格式能够以较小的文件大小存储大量数据,使其成为存档、传输和共享点云数据的理想选择。这种格式使用层次树结构,其中一些以 XML 编码,一些以非 XML 的二进制格式编码。为了提高效率,包括点数据和图像在内的大部分数据都编码在二进制部分中,而元数据(例如传感器姿势信息)则以 XML 编码。

E57 格式的最大优势之一是它的可扩展性。E57 扩展机制允许硬件开发人员合并新功能并使他们的产品与众不同。这些扩展为 E57 应用程序开发人员提供了超越 E2807 标准中指定功能的新功能,使格式与最新的创新和技术保持同步。一些已定义的扩展包括表面法线、相机失真、地形分类、时间范围和红外温度。

E57 文件由一个 48 字节的文件头、一系列数据块和最后一个 XML 部分组成。包括文件头在内的整个文件被分成 1024 字节的“页面”、1020 字节的数据和末尾的 4 字节作为校验和。这种块性质甚至适用于位于所有数据块之后的其他文本/可读 XML 部分。

4. E57 文件结构

E57 文件由一个 48 字节的文件头、一系列数据块和最后一个 XML 部分组成。包括文件头在内的整个文件被分成 1024 字节的“页面”、1020 字节的数据和末尾的 4 字节作为校验和。这种块性质甚至适用于位于所有数据块之后的其他文本/可读 XML 部分。结构如下表所示。

文件结构
页眉
二进制部分(点)
二进制部分(点)
二进制部分(图片)
XML 部分

E57 标头

E57 标头是一个小的 48 字节二进制结构,其中包含关键文件级信息,例如版本号和 XML 部分的位置。它可以以编程方式表示如下。

struct E57FileHeader 
{
    char        fileSignature[8];
    uint32_t    majorVersion;
    uint32_t    minorVersion;
    uint64_t    filePhysicalLength;
    uint64_t    xmlPhysicalOffset;
    uint64_t    xmlLogicalLength;
    uint64_t    pageSize;
}

XML 层次结构

E57 文件的 XML 部分使用标准 XML 的子集描述树层次结构。这是基于八种 E57 元素类型,其中每个元素都是使用一组核心构建块构建的。这些 E57 元件中有五个是终端类型,其中三个是非终端类型。

终端类型

Integer - 有符号整数,最大 63 位

Float - 以 IEEE 754-1985 格式存储单精度或双精度浮点数

ScaledInteger - 将带有小数部分的数字与比例和偏移量一起存储为整数

String - 将文本数据存储为 UTF-8 编码并支持国际字符

Blob - 存储一个不透明的二进制数据块,由阅读器根据上下文进行解释。

非终端类型

Structure - 包含任何类型的无序 E57 元素集。 E57 结构类似于 C 编程语言中的结构。

Vector - 包含基本相同类型项目的有序列表。如果需要,元素中的标志允许将项目限制为完全相同的类型。

CompressedVector - 包含以二进制格式压缩的相同类型项目的有序列表。与 Blob 数据类型一样,CompressedVector 的表示形式分为 XML 部分和二进制部分。

参考资料

http://www.libe57.org/

http://paulbourke.net/dataformats/e57/2011-huber-e57-v3.pdf

https://docs.safe.com/fme/html/FME_Desktop_Documentation/FME_ReadersWriters/e57/e57.htm

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
根据引用,e57是一种点云数据格式,可以通过转换工具将其转换成其他格式,比如txt和pcd格式。为了方便转换,可以使用Point Cloud Library(PCD)或者FME软件来进行转换。PCD是一个用于点云数据处理的开源库,可以支持e57格式的转换。而FME是一种专门用于数据转换和处理的软件,在其新版本中增加了对e57格式的支持,可以使用其中的转换器进行格式转换。根据引用中的描述,FME在点云数据处理中的应用也很广泛,可以完成常见的点云处理任务。因此,无论是使用PCD还是FME,都可以实现e57点云数据格式的转换。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [激光点云格式转换](https://download.csdn.net/download/wangguo0123/5478231)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [FME中点云转换器介绍(一)](https://blog.csdn.net/fmechina/article/details/81000996)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sankingvenice

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值