» Home

  » News

  » E57 User Group

  » Downloads

  » Test Data

  » Bugs

  » Documentation

  » Feature Categories

  » Extensions

  » Example

  » Supporting Partners

  » Supporting Products

  » Consultants

  » Licenses

libE57: Software Tools for Managing E57 Files

libE57 Release V1.1

The final release of libE57 V1.1.312 is now available for download. We would like to thank all the members of the ASTM E57.04 Data Interoperability Committee for a job well done.

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 E2807 standard. The E57 format was developed by the Data Interoperability sub-committee of the ASTM E57 Committee on 3D Imaging Systems. An overview of the design and implementation of the E57 format can be found in the paper "The ASTM E57 File Format for 3D Imaging Data Exchange."

The libE57 Software

The libE57 software is an open source implementation of the ASTM E2807 Standard Specification for 3D Imaging Data Exchange (known as the E57 format 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 web site. 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 ASTM E2807 standard?

The libE57 software 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 E2807 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 ASTM E57 committee of the ASTM. The standard is available for purchase via the ASTM E2807 web site.

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.

Is the E57 format extensible?

Yes. One of the greatest strengths of E57 is that it was designed to be readily extensible to accommodate new hardware innovations. Using the E57 extension mechanism, hardware developers can differentiate their products and incorporate new features by developing extensions that allow software developers to access additional technological innovations. These extensions provide E57 application developers with new features above and beyond the features specified in the E2807 standard. E57 extensions keep the format current with the latest innovations and technologies.

Here are some of the extension that have been defined.

What software products have native E57 support?

    ...more coming...

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.

How can I learn more about the E57 format?

A good starting point would be to read the overview paper entitled "The ASTM E57 File Format for 3D Imaging Data Exchange." The standard itself contains a much more detailed description. The standard is available for purchase via the ASTM E2807 web site. Finally, many subtle details of the standard can be best understood by looking at the API documentation, examples, and software on this site.

Is there a mailing list available?

Yes, you can go to the subsciption page to sign up. Currently there is only one list for users and developers since the traffic is not very high yet.

Is there a user group?

Yes, to be part of the E57 user group join LinkedIn at ASTM E57 Data Exchange Format Group

How can I get involved?

Joining the ASTM E57.04 sub-committee and become involved in the on going discussions. You can also post to the working ASTM E57 sub-committee, send email to astm-e57-data-interoperability@googlegroups.com.
To subscribe to this group, send email to astm-e57-data-interoperability+subscribe@googlegroups.com.
To unsubscribe from this group, send email to astm-e57-data-interoperability+unsubscribe@googlegroups.com.

To see all the documents, meeting notes, and discussions of the ASTM E57 sub-committee visit http://groups.google.com/group/astm-e57-data-interoperability?hl=en. or e57-shared on Google Docs

This site is © Copyright 2010 E57.04 3D Imaging System File Format Committee, All Rights Reserved
Free web site templates