WARNING regarding horizontal datum, las2las

527 views
Skip to first unread message

Alexander Thorp

unread,
Apr 17, 2020, 3:42:30 PM4/17/20
to LAStools - efficient tools for LiDAR processing
Hello, I'm a new user, and new participant on this google group.

I'm getting a warning, when using the "las2las" command, and I don't understand why, whether it matters, or what if anything to do about it.  I'm hoping someone might help.

The warning reads: "WARNING: horizontal datum of source unspecified. assuming same as target."

My input LAZ file is stored at:

c:\LAStools\bin\20150429_18TXM628677.laz

A direct download link to this file is below:

https://coast.noaa.gov/htdata/lidar2_z/geoid12b/data/5087/zone18/20150429_18TXM628677.laz

When I run lasinfo on this file, I get the following (post continued below)

C:\LAStools\bin>lasinfo 20150429_18TXM628677.laz
lasinfo (200304) report for '20150429_18TXM628677.laz'
reporting all LAS header entries:
  file signature:             'LASF'
  file source ID:             0
  global_encoding:            1
  project ID GUID data 1-4:   1CE07391-257B-4FD4-48B2-104D635383E1
  version major.minor:        1.2
  system identifier:          'NOAA OCM'
  generating software:        'datum_shift (9133 2016-08-18)'
  file creation day/year:     301/2015
  header size:                227
  offset to point data:       2001
  number var. length records: 3
  point data format:          1
  point data record length:   33
  number of point records:    19876170
  number of points by return: 12167445 4998510 2252850 429449 27263
  scale factor x y z:         0.0000001 0.0000001 0.01
  offset x y z:               -73 42 0
  min x y z:                  -73.4426822 42.2343692 260.55
  max x y z:                  -73.4241751 42.2481209 478.34
variable length header record 1 of 3:
  reserved             0
  user ID              'LASF_Projection'
  record ID            2112
  length after header  688
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    COMPD_CS["NAD83(NSRS2007); NAVD88 height",GEOGCS["NAD83(NSRS2007)",DATUM["NAD83_National_Spatial_Reference_System_2007",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6759"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4759"]],VERT_CS["NAVD88 height",VERT_DATUM["North American Vertical Datum 1988",2005,EXTENSION["PROJ4_GRIDS","g2012a_conus.gtx,g2012a_alaska.gtx,g2012a_guam.gtx,g2012a_hawaii.gtx,g2012a_puertorico.gtx,g2012a_samoa.gtx"],AUTHORITY["EPSG","5103"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Up",UP],AUTHORITY["EPSG","5703"]]]
variable length header record 2 of 3:
  reserved             0
  user ID              'lascompatible'
  record ID            22204
  length after header  156
  description          'by LAStools of rapidlasso GmbH'
variable length header record 3 of 3:
  reserved             0
  user ID              'LASF_Spec'
  record ID            4
  length after header  768
  description          'by LAStools of rapidlasso GmbH'
    Extra Byte Descriptions
      data type: 4 (short), name "LAS 1.4 scan angle", description: "additional attributes", scale: 0.006, offset: 0 (not set)
      data type: 1 (unsigned char), name "LAS 1.4 extended returns", description: "additional attributes", scale: 1 (not set), offset: 0 (not set)
      data type: 1 (unsigned char), name "LAS 1.4 classification", description: "additional attributes", scale: 1 (not set), offset: 0 (not set)
      data type: 1 (unsigned char), name "LAS 1.4 flags and channel", description: "additional attributes", scale: 1 (not set), offset: 0 (not set)
LASzip compression (version 2.4r1 c2 50000): POINT10 2 GPSTIME11 2 BYTE 2
reporting minimum and maximum for all LAS point record entries ...
  X            -4426822   -4241751
  Y             2343692    2481209
  Z               26055      47834
  intensity           0      65535
  return_number       1          7
  number_of_returns   1          7
  edge_of_flight_line 0          1
  scan_direction_flag 0          1
  classification      1         18
  scan_angle_rank   -23         25
  user_data           1          2
  point_source_ID   674        677
  gps_time 114346876.172645 114349245.498164
  attribute0     -0.498      0.498  ('LAS 1.4 scan angle')
  attribute1          0          0  ('LAS 1.4 extended returns')
  attribute2          0          0  ('LAS 1.4 classification')
  attribute3          2          5  ('LAS 1.4 flags and channel')
number of first returns:        12167445
number of intermediate returns: 2712085
number of last returns:         12354899
number of single returns:       7358259
WARNING: there are 650 points with return number 6
WARNING: there are 3 points with return number 7
overview over number of returns of given pulse: 7358259 5313378 5458886 1608669 133085 3872 21
histogram of classification of points:
        12038409  unclassified (1)
         7161553  ground (2)
              39  noise (7)
          675539  keypoint (8)
             520  water (9)
             100  rail (10)
              10  Reserved for ASPRS Definition (18)

From the lasinfo results, I believe the horizontal datum of this file is the "North American Datum of 1983", as realized through the "National Spacial Reference System of 2007".  I'm not positively sure about this, but I believe the EPSG code for this datum is 3585:

https://spatialreference.org/ref/epsg/3585/

From reading the las2las README (https://www.cs.unc.edu/~isenburg/lastools/download/las2las_README.txt) it is my understanding that the horizontal datum of the input file can be specified by adding the -epsg switch

Thus, I've added the epsg switch to my command, as follows:

C:\LAStools\bin>las2las -i 20150429_18TXM628677.laz -o 20150429_18TXM628677state-plane.laz -epsg 3585 -longlat -target_sp83 MA_M -target_survey_feet -target_elevation_survey_feet

Yet, I still get the warning.  By the way, the results nevertheless look very good.  Can someone clarify for me what's going on in?

Thanks in advance,

Al

Kirk Waters - NOAA Federal

unread,
Apr 17, 2020, 4:27:24 PM4/17/20
to LAStools - efficient command line tools for LIDAR processing
Al,
I thought I'd found and cleaned up all the data still in LAS compatibility mode, but clearly I haven't. We'll get that cleaned up. That's not your problem though. The source data is in NAD83(2007) geographic coordinates with NAVD88 meters vertically. I think lastools is not picking up on the geographic coordinates, though I'd have to dig into the source code to see why. The EPSG code is 4759. The code 3585 is state plane coordinates in Massachusetts, though on the same datum. 

Since las2las isn't recognizing 4759, but you did tell it the input is longlat, it's warning you that if there is a datum difference between your source and destination reference systems, it isn't going to handle it. However, there is no difference in this case. They are both NAD83. I think you want a command like:

las2las -i 20150429_18TXM628677.laz -o 20150429_18TXM628677state-plane.laz -target_epsg 3585 -longlat -target_survey_feet -target_elevation_survey_feet 

It will probably still give you a warning, but should be fine.

Kirk Waters, PhD, BJCP          | NOAA Office for Coastal Management
Applied Sciences Program      | 2234 South Hobson Ave
843-740-1227                          | Charleston, SC 29405    



--
Download LAStools at
http://lastools.org
http://rapidlasso.com
Be social with LAStools at
http://facebook.com/LAStools
http://twitter.com/LAStools
http://linkedin.com/groups/LAStools-4408378
Manage your settings at
http://groups.google.com/group/lastools/subscribe
---
You received this message because you are subscribed to the Google Groups "LAStools - efficient tools for LiDAR processing" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lastools+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lastools/33d7d8ac-da31-423d-888f-4906a76e8757%40googlegroups.com.

Alexander Thorp

unread,
Apr 17, 2020, 5:40:20 PM4/17/20
to last...@googlegroups.com

Kirk,

 

Thank you very much for your response!  I will carefully review your email and will let you know if I still have questions.  Thanks again.

 

Al

You received this message because you are subscribed to a topic in the Google Groups "LAStools - efficient tools for LiDAR processing" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/lastools/wGdLUlDsfAU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to lastools+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lastools/CADm%3DQrQHzFhsbEBi3aBF9v23Ao-cj_EeA1X3Vk4UcO38AoYeLg%40mail.gmail.com.

Kirk Waters - NOAA Federal

unread,
Apr 20, 2020, 12:42:07 PM4/20/20
to LAStools - efficient command line tools for LIDAR processing
Alex,
I did check into the las2las code to see why it didn't recognize the georeferencing. It appears that when reading the georeferencing from a well known text field (WKT; required by the specification for LAS version 1.4 with point record 6 or higher, which this data is), it doesn't recognize anything that is in geographic coordinates. It won't really matter because you're not changing the reference frame and everything will compute correctly, but it's going to give that warning.

Kirk Waters, PhD, BJCP          | NOAA Office for Coastal Management
Applied Sciences Program      | 2234 South Hobson Ave
843-740-1227                          | Charleston, SC 29405    


George S. Mercier

unread,
Jun 10, 2020, 11:30:40 PM6/10/20
to LAStools - efficient tools for LiDAR processing
I've got this issue as well. I'm wandering if I should ignore this warning as well? The command line I've used is : 

las2las -cpu64 -i "T:\TEI Projects\2015 to Present\1389-20 TS AllenES - Chastang Landfill Mobile Cty AL\DRAWINGS\westsideground\108-odm_georeferenced_model.laz" -target_sp83 AL_W -target_survey_feet -target_elevation_survey_feet -target_precision 0.001 -odix "_alwusft" -olaz -wgs84 -utm 16north -vertical_wgs84

Here is the LASinfo on the file I'm transforming : 
lasinfo (200304) report for 'T:\TEI Projects\2015 to Present\1389-20 TS AllenES - Chastang Landfill Mobile Cty AL\DRAWINGS\westsideground\108-odm_georeferenced_model.laz'
reporting all LAS header entries:
  file signature:             'LASF'
  file source ID:             0
  global_encoding:            0
  project ID GUID data 1-4:   00000000-0000-0000-0000-000000000000
  version major.minor:        1.2
  system identifier:          'PDAL'
  generating software:        'PDAL 1.9.1 (Releas)'
  file creation day/year:     128/2020
  header size:                227
  offset to point data:       429
  number var. length records: 2
  point data format:          3
  point data record length:   34
  number of point records:    49002729
  number of points by return: 49002729 0 0 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  399900.50 3434586.81 -39.07
  max x y z:                  400936.68 3435203.29 20.57
variable length header record 1 of 2:
  reserved             0
  user ID              'LASF_Projection'
  record ID            34735
  length after header  64
  description          'GeoTiff GeoKeyDirectoryTag'
    GeoKeyDirectoryTag version 1.1.0 number of keys 7
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 1025 tiff_tag_location 0 count 1 value_offset 1 - GTRasterTypeGeoKey: RasterPixelIsArea
      key 1026 tiff_tag_location 34737 count 22 value_offset 0 - GTCitationGeoKey: WGS 84 / UTM zone 16N
      key 2049 tiff_tag_location 34737 count 7 value_offset 22 - GeogCitationGeoKey: WGS 84
      key 2054 tiff_tag_location 0 count 1 value_offset 9102 - GeogAngularUnitsGeoKey: Angular_Degree
      key 3072 tiff_tag_location 0 count 1 value_offset 32616 - ProjectedCSTypeGeoKey: WGS 84 / UTM 16N
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
variable length header record 2 of 2:
  reserved             0
  user ID              'LASF_Projection'
  record ID            34737
  length after header  30
  description          'GeoTiff GeoAsciiParamsTag'
    GeoAsciiParamsTag (number of characters 30)
      WGS 84 / UTM zone 16N|WGS 84|
LASzip compression (version 3.1r0 c2 50000): POINT10 2 GPSTIME11 2 RGB12 2
reporting minimum and maximum for all LAS point record entries ...
  X            39990050   40093668
  Y           343458681  343520329
  Z               -3907       2057
  intensity           0          0
  return_number       1          1
  number_of_returns   1          1
  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          2
  scan_angle_rank     0          0
  user_data           0          0
  point_source_ID     0          0
  gps_time 0.000000 0.000000
  Color R 7 255
        G 10 255
        B 8 255
number of first returns:        49002729
number of intermediate returns: 0
number of last returns:         49002729
number of single returns:       49002729
overview over number of returns of given pulse: 49002729 0 0 0 0 0 0
histogram of classification of points:
        10504798  unclassified (1)
        38497931  ground (2)

To unsubscribe from this group and stop receiving emails from it, send an email to last...@googlegroups.com.

--
Download LAStools at
http://lastools.org
http://rapidlasso.com
Be social with LAStools at
http://facebook.com/LAStools
http://twitter.com/LAStools
http://linkedin.com/groups/LAStools-4408378
Manage your settings at
http://groups.google.com/group/lastools/subscribe
---
You received this message because you are subscribed to a topic in the Google Groups "LAStools - efficient tools for LiDAR processing" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/lastools/wGdLUlDsfAU/unsubscribe.

To unsubscribe from this group and all its topics, send an email to las...@googlegroups.com.

--
Download LAStools at
http://lastools.org
http://rapidlasso.com
Be social with LAStools at
http://facebook.com/LAStools
http://twitter.com/LAStools
http://linkedin.com/groups/LAStools-4408378
Manage your settings at
http://groups.google.com/group/lastools/subscribe
---
You received this message because you are subscribed to the Google Groups "LAStools - efficient tools for LiDAR processing" group.
To unsubscribe from this group and stop receiving emails from it, send an email to last...@googlegroups.com.

Kirk Waters - NOAA Federal

unread,
Jun 11, 2020, 6:48:43 AM6/11/20
to LAStools - efficient command line tools for LIDAR processing
George,
I think you might need to find out more about what you've got from the original producer of the data. What I can't tell from the georeferencing that is there is what the vertical really is. A few possibilities:
1) Horizontal and vertical on the WGS84 ellipsoid, projected to UTM 16. Not all that likely, but could be.
2) Horizontal on WGS84 projected to UTM16, vertical on NAVD88 because someone did a horizontal shift from NAD83 to WGS84.
3) It's all lies and it's really NAD83 UTM16 with NAVD88.
4) something else I haven't thought of.
The problem is, unless a recent release changed this, is that LAStools is not going to do the right thing automatically if you have case #1 and probably not in case #2. If you have case #1, you need to do a 3D datum change to NAD83 (there are Helmert parameters for this) and then apply the appropriate geoid model to get the vertical to NAVD88. If you have case #2, you need to apply only the horizontal shift of what is normally a 3D transform. It's only going to move you a meter or so. For case 3, you just need to reproject, but also tell it what you really have.
If you do have to deal with case 1 or 2, it could be easier to use PDAL, as someone did when creating the file. Since this file was made recently (day 128 of 2020), hopefully you can track down what they started with and what they did to it. Sometimes I wish we had a standard way of embedding the chain of operations that have been done to data.

Kirk


To unsubscribe from this group and stop receiving emails from it, send an email to lastools+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lastools/d573b216-f4b3-4607-8c39-902e11160b08o%40googlegroups.com.

George S. Mercier

unread,
Jun 11, 2020, 1:03:52 PM6/11/20
to last...@googlegroups.com
Kirk,
Thank you so much for your response.  I may be the culprit in mangling up the data. This is a phtogrametric project that was processed with webodm.  I'm still green at all this so I'm stumbling around a bit.  
I have ground control (AL west state plane us ft) for this area that didn't get used, due to an error on my part, by webodm. I suspect I have buggered some other setting in odm as well.
I'm not very familiar with particulars of pdal, do have it on my computer, but just haven't used it much. I think ODM uses it and that's why that header is in the file.
I'll try and put together the command line to accomplish case 2 first and if not what I'm looking for then case 1.
-George

To unsubscribe from this group and all its topics, send an email to lastools+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lastools/CADm%3DQrQJLNaS-QTZaOnBxCe4Ky5LvsPzkU4skT-GBiU8SzY1sA%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages