-
Notifications
You must be signed in to change notification settings - Fork 18
Standard System Identifiers
The LAS 1.0 specification assumed that LAS files are exclusively generated as a result of collection by a hardware sensor. Subsequent versions recognize that files often result from extraction, merging, or modifying existing data files.
The LAS 1.4 specification provides generalized guidance of utilizing the System Identifier (aka SystemID) as a means to encode the sensor model(s) or processing step used to produce the LAS. This is a valid approach, of course, and used widely.
However, for a user desiring to encode the sensor model(s) used to collect a dataset, the specification is intentionally vague on multiple topics:
- Spelling and punctuation of sensor model is open-ended and will result in differences between vendors, even for an identical sensor model.
- It is unclear how to encode the SystemID for a LAS composed of data from multiple sensors.
- As many as four or five different sensor models could contribute to a single LAS file in overlapping areas, while the SystemID is constrained to only 32 characters. Full-text model descriptions would not be possible in such a case.
Thus, an abbreviated encoding method appears to be necessary.
This wiki proposes a standardized encoding method of most known sensor models and platforms commonly used to collect point cloud data in the LAS format. Under this scheme the SystemID is a space-delimited list of up to five five-character codes.
- The first character of each code describes the collection platform, such as a fixed-wing aircraft or tripod setup.
- The other four characters of each code match a specific sensor model. If the specific model is not available, then the most specific applicable generic code may be used.
In this way the SystemID of a LAS file can succinctly encode up to five different sensors with their collection platform. Note that it is okay to encode the same SystemID for a given project for the sake of consistency, even if the LAS file doesn't actually contain data from those particular sensors.
Examples are provided below.
For more information about the approach, review the discussion in Issue 54.
This table presents the meaning of the first character of each five-character SystemID code. For example, the code "RRX1L" would designate a Riegl VUX-1LR mounted in a helicopter, while the nearly-identical code "URX1L" would designate a Riegl VUX-1LR mounted on a UAS quadcopter. In this way the same sensor model can be encoded based on the context of its use, which can have a significant impact on the interpretation of its data.
New codes can be added at any time by contacting the LAS Working Group at [email protected] or by creating a new Issue.
This table is also available as a download below.
Platform | Code |
Airborne | |
Crewed Fixed-Wing | A |
Crewed Helicopter / Rotary | R |
UAS / UAV / Drone – Copter | U |
UAS / UAV / Drone – Fixed-Wing | D |
Mobile | |
Crewed Truck / Van / Vehicle | M |
Crewed Watercraft | W |
Remote Watercraft | B |
Terrestrial | |
Static / Tripod | T |
Kinematic / Handheld / Backpack | H |
Other | |
Spaceborne / Satellite | S |
This table provides a four-character code for most known sensor models used to produce point cloud data. When combined with the 1-character prefix code for platform, a five-character code can be produced to represent the sensors and modalities used to produce the point cloud data.
Note that although it is preferred that codes be contributed for every sensor, this may not always be practical. In such a case, the most precise applicable generic code possible should be used.
New codes can be added at any time by contacting the LAS Working Group at [email protected] or by creating a new Issue. Manufacturers are strongly encouraged to contribute codes upon release of new systems.
This table is also available as a download below.
Brand | Model | Code |
---|---|---|
Riegl | VQ-820-G | R820 |
VQ-880-G | R881 | |
VQ-880-GH | R88H | |
VQ-880-G-II | R882 | |
VQ-840-G | R840 | |
VQ-860-G | R860 | |
VZ-200 | RT20 | |
VZ-400 | RT40 | |
VZ-400i | RT41 | |
VZ-1000 | RTA0 | |
VZ-2000 | RTB0 | |
VZ-2000i | RTB1 | |
VZ-4000 | RTD0 | |
VZ-6000 | RTF0 | |
VQ-1560 | R156 | |
VQ-1560i | R15I | |
VQ-1560ii | R15J | |
VQ-1560ii-S | R15S | |
VQ-1560i-DW | R15D | |
VQ-1260 | R120 | |
VQ-1460 | R140 | |
VQ-780i | R78I | |
VQ-780ii | R78J | |
VQ-780ii-S | R78K | |
VQ-480ii | R482 | |
VQ-580ii | R582 | |
VUX-240 | RX2H | |
VUX-1UAV | RX1U | |
VUX-1LR | RX1L | |
VUX-1HA | RX1A | |
miniVUX-1UAV | RmX1 | |
miniVUX-1DL | RmX2 | |
BathyCopter | RBC1 | |
VMX-2HA | RM2A | |
VMQ-1HA | RMQA | |
Generic Riegl | R000 | |
Leica | ALS50 | LA50 |
ALS60 | LA60 | |
ALS70 | LA70 | |
ALS70 SP1 | LA71 | |
ALS70 SP2 | LA72 | |
ALS70 SP3 | LA73 | |
ALS80 | LA80 | |
TerrainMapper | LTM1 | |
TerrainMapper-2 | LTM2 | |
TerrainMapper-3 | LTM3 | |
CityMapper | LCM1 | |
CityMapper-2 | LCM2 | |
CityMapper-3 | LCM3 | |
Chiroptera | LCH1 | |
Chiroptera 4X | LCH2 | |
Chiroptera-5 | LCH3 | |
HawkEye | LHE1 | |
HawkEye 4X | LHE2 | |
HawkEye-5 | LHE3 | |
SPL100 | LSP1 | |
ScanStation | LSS1 | |
ScanStation 2 | LSS2 | |
ScanStation P20 | LSP2 | |
ScanStation P30 | LSP3 | |
ScanStation P40 | LSP4 | |
ScanStation P50 | LSP5 | |
BLK360 | LBK1 | |
RTC360 | LRT1 | |
Pegasus | LPG1 | |
Pegasus Two | LPG2 | |
Pegasus Backpack | LPB1 | |
Pegasus Stream | LPS1 | |
ADS100 | LAD1 | |
DMCIII | LDM3 | |
RCD30 | LRC3 | |
Generic Leica | L000 | |
Livox | Mid-40 | LM00 |
Mid-70 | LM01 | |
Mid-100 | LM02 | |
Avia | LA00 | |
Horizon | LH00 | |
Tele-15 | LT00 | |
Hesai Technology | Pandar40M | HP00 |
Pandar40P | HP01 | |
Pandar64 | HP02 | |
PandarQT | HP03 | |
PandarXT | HP04 | |
Pandar128 | HP05 | |
SureStar Technology | R-Fans-32M | ST00 |
R-Fans-32 | ST01 | |
AP-0600 | ST02 | |
AP-1000 | ST03 | |
AP-3500 | ST04 | |
RA-0500 | ST05 | |
RA-1000 | ST06 | |
RA-1500 | ST07 | |
Ouster | OS0-32 | OU00 |
OS0-64 | OU01 | |
OS0-128 | OU02 | |
OS1-32 | OU03 | |
OS1-64 | OU04 | |
OS1-128 | OU05 | |
OS2-32 | OU06 | |
OS2-64 | OU07 | |
OS2-128 | OU08 | |
L3Harris Technologies | L3Harris Geiger-mode LiDAR | HG01 |
Fugro | RAMMS | FR01 |
Teledyne Optech | Orion C | OOC1 |
Orion M | OOM1 | |
Orion H | OOH1 | |
Galaxy | OGL1 | |
Eclipse | OEC1 | |
Titan | OTT1 | |
Pegasus HA500 | OPA5 | |
Pegasus HD500 | OPD5 | |
CZMIL | OCZ1 | |
CZMIL Nova | OCZ2 | |
CZMIL SuperNova | OCZ3 | |
CS-6500 | OC65 | |
CS-10000 | OCA0 | |
Generic Optech | O000 | |
Ultracam | Eagle | UE10 |
Eagle Mark 2 | UE20 | |
Eagle Mark 3 | UE30 | |
Falcon | UF10 | |
Falcon Mark 2 | UF20 | |
Osprey | UO10 | |
Osprey Mark 2 | UO20 | |
Osprey Mark 3 | UO30 | |
Osprey Mark 3 Premium | UO31 | |
Condor | UC10 | |
Generic Ultracam | U000 | |
Velodyne | Puck VLP-16 | VP01 |
Puck Hi-Res | VPH1 | |
Puck LITE | VPL1 | |
Ultra Puck | VUP1 | |
Generic Velodyne | V000 | |
Sony RGB | Alpha a7 | SA70 |
Alpha a7ii | SA72 | |
Alpha a7iii | SA73 | |
A7r | SA7R | |
Generic Sony | S000 | |
DJI | Zenmuse Z3 | DZ30 |
Zenmuse X5 | DX50 | |
Zenmuse X5R | DX51 | |
Zenmuse Z30 | DZ31 | |
Zenmuse X4S | DX40 | |
Zenmuse X5S | DZ52 | |
Zenmuse X7 | DX70 | |
Zenmuse XT (thermal) | DXT1 | |
Zenmuse XT2 (thermal) | DXT2 | |
Generic DJI | D000 | |
MicaSense Multispec | Altum | MA10 |
RedEdge | MR20 | |
RedEdge-MX | MR30 | |
RedEdge Dual Camera | MR40 | |
Generic MicaSense | M000 | |
Parrot Multispec | Sequoia | PS10 |
Sequoia+ | PS20 | |
Generic Parrot | P000 | |
BaySpec | OCI-F Hyperspec | BS10 |
GoldenEye Snapshot Hyperspec | BS20 | |
OCI-M+ Hyperspec | BS30 | |
OCI UAV Hyperspec | BS40 | |
OCI-OEM Ultra-compact Hyperspec | BS50 | |
OCI-D Hyperspec | BS60 | |
Generic Bayspec | BS00 | |
Headwall | Micro-Hyperspec | HM10 |
Nano-Hyperspec | HN10 | |
Co-Aligned VNIR-SWIR Hyperspec | HC10 | |
Generic Headwall | H000 | |
Norbit | iWBMS STX Multibeam | MB01 |
Teledyne Reson | SeaBat T20-P Multibeam | MB02 |
Ross Laboratories | 875-X Sonar Sweep System | SR01 |
Pure Generic | Any TOF lidar | 000L |
Any phased lidar | 000F | |
Any photon counting lidar | 000P | |
Any 3-band camera | 000C | |
Any multiband camera | 000D | |
Any multibeam sonar | MB00 | |
Any singlebeam sonar | SB00 | |
Unknown | 0000 |
The following are some example SystemID values with corresponding LAS files to show how it might be used.
Riegl VZ-1000 set up on a tripod
- SystemID:
TRTA0
- Example LAS
Teledyne-Optech branded sensor mounted on a truck
- SystemID:
MO000
- Example LAS
Generic time-of-flight lidar scanner set up on a tripod
- SystemID:
T000L
- Example LAS
Riegl VQ-1560ii lidar system mounted in a fixed-wing aircraft & Leica TerrainMapper combination system mounted in a fixed-wing aircraft
- SystemID:
AR15J ALTM1
- Example LAS
Two Riegl VUX-240 lidar systems, one mounted in a helicopter and one mounted in a fixed-wing aircraft
- SystemID:
RRX2H ARX2H
- Example LAS
Five sensors contributing to a single project (the maximum supported):
- Riegl VUX-240 lidar system mounted in a helicopter
- Leica TerrainMapper combination system mounted in a fixed-wing aircraft
- L3Harris Technologies Geiger-mode LiDAR system mounted in a fixed-wing aircraft
- DJI Zenmuse X5 camera (photo-derived point cloud) mounted on a quadcopter
- Norbit iWBMS STX Multibeam system mounted in a boat
- SystemID:
RRX2H ALTM1 AHG01 UDX50 WMB01
- Example LAS
The SystemID tables are also available in other formats for easier integration into your software package.
- XLSX (note that there's two tabs)
- CSV: PlatformID | ModelID
Need to know more? Want a wiki page on another topic? Found an error? Submit an issue or contact the LAS Working Group at [email protected].