libE57: Software Tools for Managing E57 files
Beta Testers Needed
We are looking for volunteers to beta test the libE57 software. If you are interested in participating, please read the beta test instructions to find out how to get involved.
|
The E57 File Format
The E57 file format is a compact, vendor-neutral format for storing point clouds, images, and metadata produced by 3D imaging systems, such as laser scanners. The file format is specified by the ASTM, an international standards organization, and it is documented in the ASTM standard E2761. The E57 format was developed by the Data Interoperability sub-committee of the ASTM E57 Committee on 3D Imaging Systems.
The libE57 Software
The libE57 software is an open source implementation of the ASTM E57 Standard Specification for 3D Imaging Data Exchange (known as the E57 format standard hereafter) in the C++ language. It is intended to lower the barrier to adoption of the standard and to provide a reference to compare other implementations against. It is not expected to be the only implementation, and it is not intended to be the fastest possible implementation.
The libE57 software consists of a library, supporting utilities and example programs, and documentation. The software includes two separate application programming interfaces (APIs) for reading, writing, and manipulating E57 files - the Foundation API and the Simple API. The Foundation API is a full-featured interface that operates at a relatively low-level, allowing control over all aspects of an E57 file, including custom extensions. The Simple API is a simplified interface (built on top of the Foundation API) that supports the most common use cases for reading and writing E57 files.
The source code for the libE57 software can be downloaded from this website. Pre-built binaries are provided for a selection of compilers and operating systems (OSes). If there is no version matching your compiler/OS, it will be necessary to download the source code and compile it yourself. Instructions for both uses are provided.
Frequently Asked Questions
What is the relationship between the libE57 software and the E57 format standard?
The libE57 softare is not part of the ASTM standard, nor are the APIs defined within the libE57 software part of the standard. Although the developers of the software were involved in the development of the E57 format standard, the software is not sanctioned or approved in any way by the ASTM.
Do I need a copy of the ASTM E57 format standard?
Yes. While it is possible to utilize some aspects of the software without reference to the standard, the standard is an essential reference that is needed to make full use of the library. In particular, it would be difficult to effectively use the Foundation API without reference to the standard, which documents the names, data types, and meanings of the data structures that compose an E57 file.
A copy of the latest draft version of the specification can be obtained by joining the E57 committee of the ASTM. In the near future, the standard will be available for purchase via the ASTM website.
Is the E57 format XML?
The E57 specification uses a subset of XML that has been extended to support efficient storage of large amounts of binary data. An E57 file is encoded as a hierarchical tree structure, some of which is encoded in XML, and some of which is encoded in a binary format that is not XML. The bulk of the data, including point data and images, is encoded in the binary sections for efficiency. Metadata, such as sensor pose information, is encoded in XML. The binary sections are not embedded in the XML section. Instead, they are located in separate sections of the file and referenced from the XML section.
What is the difference between E57 format and LAS?
The LAS format was developed by the American Society for Photogrammetry and Remote Sensing (ASPRS) for the purpose of storing LIDAR point data. It is specifically geared toward the needs of the aerial sensing community, though the format can be utilized for terrestrial laser scanner data by ignoring the inapplicable fields. The E57 format is intended to be a more general format that is well-suited for storing data across a variety of application domains. There are a number of differences in the capabilities of the E57 format as compared to the LAS format. The E57 format allows users to flexibly choose the information associated with each 3D point as well as the number of bits used to represent the information. In contrast, LAS uses a pre-defined set of fixed-size record types that are specialized for aerial data collection. The E57 format supports gridded data (i.e., data aligned in regular arrays), multiple coordinate systems (including Cartesian and spherical), embedded images from cameras, built in error detection, and groupings of points into rows, columns, or user-defined groups. The E57 format also defines an extension mechanism that allows users to develop custom capabilities that were not envisioned in the initial design of the standard. These extensions could be integrated into future versions of the standard. Finally, the E57 format has an essentially unlimited file size and number of records (1.8E19 bytes in length), whereas the LAS format is limited to 4.2E9 records.
This site is © Copyright 2010 E57.04 3D Imaging System File Format Committee, All Rights Reserved
Free website templates |