ASTM E57 File Format Feature Support Categories
The purpose of this document is to describe the set of features that software supporting the E57 file format may choose to implement.
1. Introduction
The specification of the E57 file format for 3D data exchange includes a variety of capabilities that may not be relevant to every software package or hardware device that intends to write or read E57 files. The ASTM E57-04 sub-committee on Data Interoperability has divided the capabilities of the E57 format into a small set of disjoint features that a software package may choose to implement or not implement as needed. To maintain consistency across software vendors and to minimize confusion by customers and users, we recommend that every vendor use this naming convention to report whether their software supports each feature.
For software that writes E57 files, support for a feature implies that the software can generate and correctly and meaningfully populate the E57 elements that correspond to that feature. For software that reads E57 files, support for a feature implies that the software can read the E57 elements that correspond to that feature and use them in a non-trivial manner. This definition means that the software cannot merely generate empty structures (for writing) or simply parse the structures and ignore them (for reading) and claim to support the feature. We do not attempt to specify what are non-trivial uses of a feature.
We define the following fifteen features that cover the core capabilities of the E57 format:
Feature Name |
Description |
Cartesian points |
Point data in Cartesian coordinates |
Spherical points |
Point data in spherical coordinates |
Point color |
Point data with red/green/blue colors |
Point intensity |
Point data with sensor response signal strength |
Multiple returns |
Point data with multiple returns from a single emitted signal |
Time stamps |
Point data with per-point time stamps |
Structured point sets |
Raster point data arranged in rows, columns, or regular 2D grids |
Point groups |
Points organized into groups for efficient access |
Multiple scans |
Multiple 3D data sets per file |
Visual reference imagery |
Images with no associated camera model |
Pinhole imagery |
Images that use a pinhole camera model |
Spherical imagery |
Images that use a spherical camera model |
Cylindrical imagery |
Images that use a cylindrical camera model |
Multiple images |
Multiple 2D images per 3D data set |
Geodedic information |
Data that is geo-referenced using a standard coordinate reference system |
In addition to these features, each software package should document which E57 extensions it supports.
We recommend using the feature names listed above when referencing or describing the features, especially when the audience may include people not experienced with the E57 file format. When space limitations prohibit the use the recommended feature names, the following three letter abbreviations may be used instead:
Feature Name |
Abbreviation |
Cartesian points |
XYZ |
Spherical points |
RAE |
Point intensity |
INT |
Point color |
RGB |
Multiple returns |
RET |
Time stamps |
TIM |
Structured point sets |
STR |
Point groups |
GRP |
Multiple scans |
MUL |
Visual reference imagery |
REF |
Pinhole imagery |
PIN |
Spherical imagery |
SPH |
Cylindrical imagery |
CYL |
Multiple images |
MIM |
Geodetic information |
GEO |
2. Detailed feature descriptions
In this section, we describe the thirteen features and the E57 file elements that relate to each feature. The reference in parentheses at the end of each feature description refers to the section of the E57 standard (ASTM E2807-11) that describes the feature formally.
2.1. Cartesian points (XYZ)
Cartesian point support indicates that software can read or write points in Cartesian coordinates (i.e., x, y, z triplets). This capability corresponds to the cartesianX, cartesianY, and cartesianZ elements of the PointRecord structure (Paragraph 8.4.4).
2.2. Spherical points (RAE)
Spherical point support indicates that software can read or write points in spherical coordinates (i.e., ?, ?, f), triplets). This capability corresponds to the csphericalRange, sphericalAzimuth, and sphericalElevation elements of the PointRecord structure (Paragraph 8.4.4)
2.3. Point color (RGB)
Point color support indicates that software can read or write per-point colors. This capability corresponds to the colorRed, colorGreen, and colorBlue elements of the PointRecord structure (Paragraph 8.4.4).
2.4. Point intensity (INT)
Point intensity support indicates that software can read or write per-point sensor response intensities. This capability corresponds to the intensity element of the PointRecord structure (Paragraph 8.4.4).
2.5. Multiple returns (RET)
Multiple return support indicates that software can read or write data from sensors that produce multiple returns from a single emitted signal. This capability corresponds to the returnCount and returnIndex elements of the PointRecord structure.
2.6. Time stamps (TIM)
Time stamp support indicates that the software can create or utilize time stamps associated with each point. This capability corresponds to the timeStamp field of the PointRecord structure (Paragraph 8.4.4).
2.7. Structured point sets (STR)
Support for raster point sets indicates that the software can create or read point sets that are arranged in rows, columns, or regular 2D grids. This capability corresponds to the rowIndex and columnIndex fields of the PointRecord structure. Support for only a subset of rows, columns, or 2D grids should be noted (Paragraph 8.4.4).
2.8. Point groups (GRP)
Support for point groups indicates that a writer can group points by line or column, creating the associated index data structures, and that a reader can efficiently access points grouped by line or column, taking advantage of the pseudo-random access capability of the grouping mechanism. This capability corresponds to the pointGroupingSchemes element within the Data3D structure and its descendents (Paragraph 8.4.5).
2.9. Multiple Scans (MUL)
Support for multiple scans indicates that the software can read or write files that contain multiple 3D data sets. This capability corresponds to the data3D element within the E57Root structure (Paragraphs 8.4.2 and 8.4.3).
2.10. Visual reference imagery (REF)
Support for visual reference imagery indicates that the software can read or write images without any camera model – that is, they are for visual reference only. This capability corresponds to the Image2D structure and the VisualReferenceRepresentation child element (Paragraphs 8.4.11 and 8.4.12).
2.11. Pinhole imagery (PIN)
Support for pinhole imagery indicates that the software can read or write images that can be mapped from 3D using a pinhole camera projection model. This capability corresponds to the Image2D structure and the PinholeRepresentation child element (Paragraphs 8.4.11 and 8.4.13).
2.12. Spherical imagery (SPH)
Support for spherical imagery indicates that the software can read or write images that can be mapped from 3D using a spherical camera projection model. This capability corresponds to the Image2D structure and the SphericalRepresentation child element (Paragraphs 8.4.11 and 8.4.14).
2.13. Cylindrical imagery (CYL)
Support for cylindrical imagery indicates that the software can read or write images that can be mapped from 3D using a cylindrical camera projection model. This capability corresponds to the Image2D structure and the CylindricalRepresentation child element (Paragraphs 8.4.11 and 8.4.15).
2.14. Multiple images (MIM)
Support for multiple images indicates that the software can read or write more than one image associated with a single 3D data set. This capability corresponds to the associatedData3DGuid element within the Image2D structure (Paragraph 8.4.11).
2.15. Geodetic information (GEO)
Support for geodetic information indicates that the software is capable of reading or writing geodetic metadata that allows the data to be geo-referenced in a standard coordinate reference system. This capability corresponds to the coordinateMetadata string located in the E57Root structure (Paragraphs 8.4.2 and 8.4.23).
3. Example formats for specifying functionality support
We recommend using either a table format or a list format to indicate the feature support.
3.1. Table format
Feature |
Read |
Write |
Cartesian points |
Y |
Y |
Spherical points |
Y |
N |
Point intensity |
Y |
Y |
Point color |
N |
N |
Multiple returns |
N |
N |
Time stamps |
N |
N |
Structured point sets |
Y |
Y |
Point groups |
Y |
Y |
Multiple scans |
Y |
Y |
Visual reference imagery |
Y |
Y |
Pinhole imagery |
Y |
Y |
Spherical imagery |
N |
N |
Cylindrical imagery |
N |
N |
Multiple images |
N |
N |
Geodetic information |
N |
N |
Extensions |
Read |
Write |
ASPRS LAS format information |
Y |
Y |
Point normals |
N |
N |
3.2. List format
E57 version 1.0 – Read and write Cartesian points, point intensity, structured point sets, point groups, multiple scans, visual reference imagery, pinhole imagery. Extensions: LAS, Normals.
3.3. Abbreviation format
E57 version 1.0 – Read and write XYZ, INT, STR, GRP, MUL, REF, PIN. Extensions: LAS, Normals
This site is © Copyright 2010 E57.04 3D Imaging System File Format Committee, All Rights Reserved
|