las1.2 to las1.4 header information

656 views
Skip to first unread message

Srinu B

unread,
May 27, 2016, 8:56:18 AM5/27/16
to LAStools - efficient tools for LiDAR processing, srinivas...@cyient.com
Hi All,

We are not able to convert las1.2 to las1.4 version with exact header information as shown below. Please help in this regard.

reporting all LAS header entries:
  file signature:             'LASF'
  file source ID:             0
  global_encoding:            16
  project ID GUID data 1-4:   00000000-0000-0000-0000-000000000000
  version major.minor:        1.4
  system identifier:          ''
  generating software:        ''
  file creation day/year:     112/2016
  header size:                375
  offset to point data:       375
  number var. length records: 0
  point data format:          6
  point data record length:   30
  number of point records:    10293254
  number of points by return: 10293254 0 0 0 0
  scale factor x y z:         0.0001 0.0001 0.0001
  offset x y z:               6041000.0001504663 1992000.0000501564 532.28815000000009
  min x y z:                  6039500.0010 1991000.0001 358.0566
  max x y z:                  6042499.9993 1993000.0000 706.5197
  start of waveform data packet record: 0
  start of first extended variable length record: 308797995
  number of extended_variable length records: 1
  extended number of point records: 10293254
  extended number of points by return: 10293254 0 0 0 0 0 0 0 0 0 0 0 0 0 0
extended variable length header record 1 of 1:
  reserved             0
  user ID              'LASF_Projection'
  record ID            2112
  length after header  1175
  description          'Georeference Info'
    OGC COORDINATE SYSTEM WKT:
    PROJCS["NAD83 / California zone 5 (ftUS)",
    GEOGCS["NAD83",
        DATUM["North_American_Datum_1983",
            SPHEROID["GRS 1980",6378137,298.257222101,
                AUTHORITY["EPSG","7019"]],
            AUTHORITY["EPSG","6269"]],
        PRIMEM["Greenwich",0,
            AUTHORITY["EPSG","8901"]],
        UNIT["degree",0.01745329251994328,
            AUTHORITY["EPSG","9122"]],
        AUTHORITY["EPSG","4269"]],
    UNIT["US survey foot",0.3048006096012192,
        AUTHORITY["EPSG","9003"]],
    PROJECTION["Lambert_Conformal_Conic_2SP"],
    PARAMETER["standard_parallel_1",35.46666666666667],
    PARAMETER["standard_parallel_2",34.03333333333333],
    PARAMETER["latitude_of_origin",33.5],
    PARAMETER["central_meridian",-118],
    PARAMETER["false_easting",6561666.667],
    PARAMETER["false_northing",1640416.667],
    AUTHORITY["EPSG","2229"],
    AXIS["X",EAST],
    AXIS["Y",NORTH]]
    VERT_CS["North American Vertical Datum of 1988",
    VERT_DATUM["North American Vertical Datum 1988",2005,
         AUTHORITY["EPSG","5103"]],
    UNIT["foot_survey_us",0.30480060960121924],
    AXIS["Gravity-related height",UP],
    AUTHORITY["EPSG","6360"]]
reporting minimum and maximum for all LAS point record entries ...
  X           -14999991   14999991
  Y            -9999998   10000000
  Z            -1742315    1742315
  intensity           0      65535
  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
  extended_number_of_returns      1      1
  extended_return_number          1      1
  extended_classification         1      2
  extended_scan_angle             0      0
  extended_scanner_channel        0      0
WARNING: 1 points outside of header bounding box
overview over number of returns of given pulse: 10293254 0 0 0 0 0 0
histogram of classification of points:
         6355094  unclassified (1)
         3938160  ground (2)
real max y larger than header max y by 0.000050

Martin Isenburg

unread,
May 27, 2016, 9:09:55 AM5/27/16
to LAStools - efficient command line tools for LIDAR processing
Hello Srinu,

it is not quite clear from your message what the problem is. I see a number of minor issue in your LAS 1.4 file based on the lasinfo report. For example the legacy point counters should all be zero for points of type 6:

  number of point records:    10293254
  number of points by return: 10293254 0 0 0 0 

should be

  number of point records:    0
  number of points by return: 0 0 0 0 0 

and I am not quite happy with your tenth of a millimeter scaling factors (the bounding box suggests that it is an airborne data set)

  scale factor x y z:         0.0001 0.0001 0.0001

and with the terrible choice of offsets (the tiny fractional shift will be applied to each point and that does not look very professional)

  offset x y z:               6041000.0001504663 1992000.0000501564 532.28815000000009

and probably is the reason for this warning:

real max y larger than header max y by 0.000050

finally ... given that all these fields are zero:

  scan_angle_rank     0          0
  user_data           0          0
  point_source_ID     0          0
  gps_time 0.000000 0.000000
  extended_scan_angle             0      0
  extended_scanner_channel        0      0

why even use point type 6 in the first place? point type 0 would be much more appropriate and result in much smaller files without any data loss.

Regards,

Martin @rapidlasso


Srinu B

unread,
May 27, 2016, 9:39:55 AM5/27/16
to LAStools - efficient tools for LiDAR processing, srinivas...@cyient.com

Hi Martin,

 

Thanks for quick response. Basically, we unable to get the format of OGc_WKT as shown below and also vertical information not getting through lastools

 

Ex: Format that we are getting through las tools continuous line format

 

 

EX : Required line format as shown with vertical datum

Auto Generated Inline Image 1
Auto Generated Inline Image 2

Martin Isenburg

unread,
May 27, 2016, 9:54:58 AM5/27/16
to LAStools - efficient tools for LiDAR processing, srinivas...@cyient.com
Hello Srinu,

that is not too surprising as we have not yet implemented OGC WKT support for the vertical datum. It is on our TODO list already. Which are the common vertical datums that people are using? We'll be adding support for a few of the most common ones in the coming weeks ...

Regards,

Martin

PS: But pay attention to the other issues with your LAS 1.4 file. As is it will not pass the check with the latest version of the LASvalidator. Also see this discussion on that topic:

http://groups.google.com/d/topic/lasroom/ng3rcDSV2Gc/discussion

batt...@eaglemapping.com

unread,
May 27, 2016, 12:28:50 PM5/27/16
to LAStools - efficient tools for LiDAR processing, srinivas...@cyient.com
Hi Martin,

The common vertical datums we use here in Canada are CGVD28 and CGVD2013. OGC WKT listed below:

VERTCRS["CGVD28 height",VDATUM["Canadian Geodetic Vertical Datum of 1928"],CS[vertical,1],AXIS["gravity-related height (H)",up],LENGTHUNIT["metre",1.0],ID["EPSG",5713]]

VERTCRS["CGVD2013 height",VDATUM["Canadian Geodetic Vertical Datum of 2013"],CS[vertical,1],AXIS["gravity-related height (H)",up],LENGTHUNIT["metre",1.0], ID["EPSG",6647]] 

Cheers,
Bryan 

Martin Isenburg

unread,
May 29, 2016, 8:42:08 PM5/29/16
to LAStools - efficient command line tools for LIDAR processing, Srinivasulu Banda
Hello,

what is the correct OCGWKT formatting? For the Canadian Datum CGVD28 I trust it is what is listed here:


VERT_CS["Canadian Geodetic Vertical Datum of 1928",VERT_DATUM["Canadian Geodetic Vertical Datum of 1928",2005,AUTHORITY["EPSG","5114"]],UNIT["m",1.0],AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5713"]]

But why is it UNIT["m",1.0] and not UNIT["metre",1,AUTHORITY["EPSG","9001"]? Or are those two considered identical by OGC?

There is no entry yet for the Canadian Datum CGVD2013 but I think the following might be correct:

VERT_CS["Canadian Geodetic Vertical Datum of 2013",VERT_DATUM["Canadian Geodetic Vertical Datum of 2013",2005,AUTHORITY["EPSG","1127"]],UNIT["m",1.0],AXIS["Gravity-related height",UP],AUTHORITY["EPSG","6647"]]

How about NAVD88. Is this okay?

VERT_CS["North American Vertical Datum of 1988",VERT_DATUM["North American Vertical Datum 1988",200
5,AUTHORITY["EPSG","5103"]],UNIT["US survey foot",0.3048006096012192,AUTHORITY["EPSG","9003"]],AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5703"]]

Or there also a preferred "shorter" form of UNIT["US survey foot",0.3048006096012192,AUTHORITY["EPSG","9003"]]?

Regards,

Martin @rapidlasso

--

Albert Godfrind

unread,
May 30, 2016, 12:57:41 AM5/30/16
to last...@googlegroups.com, Srinivasulu Banda
AFAIK, there is no “correct” way of expressing coordinate systems in the OGC WKT notation. All that notation specifies is the keywords - like UNIT - and the way the whole string is formed - essentially the nesting of the “[“ and “]” tags. 

It does not specify anything as to the possible values associated with the tags, For example, depending on the implementation, “m”, “M”, “meter”, “Metre” are used, and it is up to the program that processed the string to interpret those (or not). The same applies to things like projection names: “Lambert Confomal Conic” vs “Lambert_conformal_conic” vs “lambert_conformal_conic_2SP” mean the same thing - but it is up to the receiving program to understand that. Similarly for projection parameter names: is it “Standard Parallel 1” or “standard_parallel_1” … It also does not say anything about the ordering of the parameters.Or which are required for which projection. Altogether that implies that tools that parse WKT-encoded projections need a lot of flexibility.

The one good thing that helps somewhat is the presence of AUTHORITY tags that contain the EPSG codes for specific elements like units, projections, datums etc. When one is present, then you can just use that to identify the element, by matching it up against the EPSG database. But still, there are not AUTHORITY tags to identity projection parameters.

I would recommend that anyone generating WKT-encoded definitions always uses explicit AUTHORITY tags. That makes it easier on the parsers to interpret a coordinate system definition. Still the parsers need to be flexible and understand a coordinate system definition without any AUTHORITY tags. Also it is important for the parsers to report enough context information when it fails to parse a definition - things like “Unrecognized UNIT name” rather than “parsing failed”.

Then again the actual problem is generally just to recognize the coordinate system name and match that up with its EPSG definition. That is easy when it comes with an AUTHORITY tag. If not, you are in for a fuzzy search against the EPSG database.

Albert

EX : Required line format as shown with vertical datum

--
ORACLE
Albert Godfrind | Geospatial technologies | Tel: +33 4 93 00 80 67 | Mobile: +33 6 09 97 27 23 | Skype: albert-godfrind
Oracle Server Technologies
400 Av. Roumanille,
 BP 309  | 06906 Sophia Antipolis cedex | France
Everything you ever wanted to know about Oracle Spatial



Thomas Knudsen

unread,
May 30, 2016, 2:33:20 AM5/30/16
to last...@googlegroups.com
For Denmark, the following EPSG codes are relevant for the current height system "Danish Vertical Reference 1990" (DVR90):

EPSG:5799: DVR90 height
EPSG:7416: ETRS89 / UTM zone 32N + DVR90 height
EPSG:7417: ETRS89 / UTM zone 33N + DVR90 height
EPSG:7418: ETRS89 / Kp2000 Jutland + DVR90 height
EPSG:7419: ETRS89 / Kp2000 Zealand + DVR90 height
EPSG:7420: ETRS89 / Kp2000 Bornholm + DVR90 height

The older datum, "Dansk Normal Nul", DNN is represented as EPSG:5733, but probably never used for LiDAR purposes


/thomas

Martin Isenburg

unread,
Jun 6, 2016, 11:09:23 PM6/6/16
to LAStools - efficient command line tools for LIDAR processing
Hello,

in the latest version of LAStools (160606) you will find that las2las has some (basic) support for vertical datums in the OCG WKT output. What is the correct OGC WKT string for ellipsoid datums such as for the VerticalCSTypeGeoKey of GeoTIFF with value 5030 VertCS_WGS_84_ellipsoid ... ?

Below some (senseless) samples that show how to add various projections with vertical datums:

D:\LAStools\bin>las2las -i ..\data\fusa.laz -nad83 -utm 11N -vertical_cgvd28 -elevation_feet -set_ogc_wkt -o fusa_cgvd28_ft.laz
using datum 'NAD83' with ellipsoid 'GRS 1980'
using projection UTM 'NAD83 / UTM zone 11N'

D:\LAStools\bin>lasinfo fusa_cgvd28_ft.laz
lasinfo (160524) report for fusa_cgvd28_ft.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160524)'
  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1206
  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:
  reserved             43707
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 26911 - ProjectedCSTypeGeoKey: NAD83 / UTM 11N
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9002 - VerticalUnitsGeoKey: Linear_Foot
      key 4096 tiff_tag_location 0 count 1 value_offset 5114 - VerticalCSTypeGeoKey: VertCS_Canadian_Geodetic_Vertical_Datum_1928
variable length header record 2 of 2:
  reserved             43707

  user ID              'LASF_Projection'
  record ID            2112
  length after header  823
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["NAD83 / UTM zone 11N",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRI
MEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4269"]],PROJECTION["Transverse_Mercator"],PARAMETER["latit
ude_of_origin",0],PARAMETER["central_meridian",-117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG
","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","26911"]]VERT_CS["CGVD28",VERT_DATUM["Canadian Geodetic Vertical Datum of 1928",2005,AUTHORITY["EPSG","5114"
]],UNIT["foot",0.3048,AUTHORITY["EPSG","9002"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5713"]]
LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2

reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3

  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)


D:\LAStools\bin>lasinfo fusa_cgvd2013_m.laz
lasinfo (160524) report for fusa_cgvd2013_m.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160524)'
  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1206
  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:
  reserved             43707
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 26911 - ProjectedCSTypeGeoKey: NAD83 / UTM 11N
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9001 - VerticalUnitsGeoKey: Linear_Meter
      key 4096 tiff_tag_location 0 count 1 value_offset 1127 - VerticalCSTypeGeoKey: VertCS_Canadian_Geodetic_Vertical_Datum_2013
variable length header record 2 of 2:
  reserved             43707

  user ID              'LASF_Projection'
  record ID            2112
  length after header  823
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["NAD83 / UTM zone 11N",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRI
MEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4269"]],PROJECTION["Transverse_Mercator"],PARAMETER["latit
ude_of_origin",0],PARAMETER["central_meridian",-117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG
","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","26911"]]VERT_CS["CGVD2013",VERT_DATUM["Canadian Geodetic Vertical Datum of 2013",2005,AUTHORITY["EPSG","112
7"]],UNIT["metre",1.0,AUTHORITY["EPSG","9001"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","6647"]]
LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2

reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3

  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)


D:\LAStools\bin>las2las -i ..\data\fusa.laz -nad83 -utm 11N -vertical_navd88 -elevation_survey_feet -set_ogc_wkt -o fusa_navd88_sft.laz
using datum 'NAD83' with ellipsoid 'GRS 1980'
using projection UTM 'NAD83 / UTM zone 11N'

D:\LAStools\bin>lasinfo fusa_navd88_sft.laz
lasinfo (160524) report for fusa_navd88_sft.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160524)'
  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1223
  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:
  reserved             43707
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 26911 - ProjectedCSTypeGeoKey: NAD83 / UTM 11N
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9003 - VerticalUnitsGeoKey: Linear_Foot_US_Survey
      key 4096 tiff_tag_location 0 count 1 value_offset 5103 - VerticalCSTypeGeoKey: VertCS_North_American_Vertical_Datum_1988
variable length header record 2 of 2:
  reserved             43707

  user ID              'LASF_Projection'
  record ID            2112
  length after header  840
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["NAD83 / UTM zone 11N",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRI
MEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4269"]],PROJECTION["Transverse_Mercator"],PARAMETER["latit
ude_of_origin",0],PARAMETER["central_meridian",-117],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG
","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","26911"]]VERT_CS["NAVD88",VERT_DATUM["North American Vertical Datum 1988",2005,AUTHORITY["EPSG","5103"]],UNI

T["US survey foot",0.3048006096012192,AUTHORITY["EPSG","9003"]],AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5703"]]
LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2

reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3

  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)



D:\LAStools\bin>las2las -i ..\data\fusa.laz -epsg 2198 -vertical_dvr90 -elevation_feet -set_ogc_wkt -o fusa_dvr90.laz

D:\LAStools\bin>lasinfo fusa_dvr90.laz
lasinfo (160524) report for fusa_dvr90.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160524)'
  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1208
  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:
  reserved             43707
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 2198 - ProjectedCSTypeGeoKey: ETRS89 / Kp2000 Bornholm
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9002 - VerticalUnitsGeoKey: Linear_Foot
      key 4096 tiff_tag_location 0 count 1 value_offset 5206 - VerticalCSTypeGeoKey: VertCS_Dansk_Vertikal_Reference_1990
variable length header record 2 of 2:
  reserved             43707

  user ID              'LASF_Projection'
  record ID            2112
  length after header  825
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["ETRS89 / Kp2000 Bornholm",GEOGCS["ETRS89",DATUM["European_Terrestrial_Reference_System_1989",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORI
TY["EPSG","6258"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4258"]],PROJECTION["Transverse_Merca
tor"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",1],PARAMETER["false_easting",900000],PARAMETER["false_northing",0],UNIT["metre",1,
AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","2198"]]VERT_CS["DVR90",VERT_DATUM["Dansk Vertikal Reference 1990",2005,AUTHORITY["EPSG","520
6"]],UNIT["foot",0.3048,AUTHORITY["EPSG","9002"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5799"]]
LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3

  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)


D:\LAStools\bin>las2las -i ..\data\fusa.laz -epsg 2197 -vertical_dvr90 -elevation_feet -set_ogc_wkt -o fusa_dvr90.laz

D:\LAStools\bin>lasinfo fusa_dvr90.laz
lasinfo (160524) report for fusa_dvr90.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160524)'
  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1213
  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:
  reserved             43707
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 2197 - ProjectedCSTypeGeoKey: ETRS89 / Kp2000 Zealand
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9002 - VerticalUnitsGeoKey: Linear_Foot
      key 4096 tiff_tag_location 0 count 1 value_offset 5206 - VerticalCSTypeGeoKey: VertCS_Dansk_Vertikal_Reference_1990
variable length header record 2 of 2:
  reserved             43707

  user ID              'LASF_Projection'
  record ID            2112
  length after header  830
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["ETRS89 / Kp2000 Zealand",GEOGCS["ETRS89",DATUM["European_Terrestrial_Reference_System_1989",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORIT
Y["EPSG","6258"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4258"]],PROJECTION["Transverse_Mercat
or"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",12],PARAMETER["scale_factor",0.99995],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metr
e",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","2197"]]VERT_CS["DVR90",VERT_DATUM["Dansk Vertikal Reference 1990",2005,AUTHORITY["EPSG"
,"5206"]],UNIT["foot",0.3048,AUTHORITY["EPSG","9002"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5799"]]
LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3

  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)


D:\LAStools\bin>las2las -i ..\data\fusa.laz -epsg 25832 -vertical_dvr90 -elevation_feet -set_ogc_wkt -o fusa_dvr90.laz

D:\LAStools\bin>lasinfo fusa_dvr90.laz
lasinfo (160524) report for fusa_dvr90.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160524)'
  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1205
  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:
  reserved             43707
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 25832 - ProjectedCSTypeGeoKey: ETRS89 / UTM 32N
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9002 - VerticalUnitsGeoKey: Linear_Foot
      key 4096 tiff_tag_location 0 count 1 value_offset 5206 - VerticalCSTypeGeoKey: VertCS_Dansk_Vertikal_Reference_1990
variable length header record 2 of 2:
  reserved             43707

  user ID              'LASF_Projection'
  record ID            2112
  length after header  822
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["ETRS89 / UTM 32N",GEOGCS["ETRS89",DATUM["European_Terrestrial_Reference_System_1989",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG
","6258"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4258"]],PROJECTION["Transverse_Mercator"],PA
RAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTH
ORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","25832"]]VERT_CS["DVR90",VERT_DATUM["Dansk Vertikal Reference 1990",2005,AUTHORITY["EPSG","5206"]
],UNIT["foot",0.3048,AUTHORITY["EPSG","9002"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5799"]]
LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3

  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)

D:\LAStools\bin>las2las -i ..\data\fusa.laz -epsg 25833 -vertical_dvr90 -elevation_feet -set_ogc_wkt -o fusa_dvr90.laz

D:\LAStools\bin>lasinfo fusa_dvr90.laz
lasinfo (160524) report for fusa_dvr90.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160524)'
  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1206
  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:
  reserved             43707
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 25833 - ProjectedCSTypeGeoKey: ETRS89 / UTM 33N
      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9002 - VerticalUnitsGeoKey: Linear_Foot
      key 4096 tiff_tag_location 0 count 1 value_offset 5206 - VerticalCSTypeGeoKey: VertCS_Dansk_Vertikal_Reference_1990
variable length header record 2 of 2:
  reserved             43707

  user ID              'LASF_Projection'
  record ID            2112
  length after header  823
  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["ETRS89 / UTM 33N",GEOGCS["ETRS89",DATUM["European_Terrestrial_Reference_System_1989",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG
","6258"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4258"]],PROJECTION["Transverse_Mercator"],PA
RAMETER["latitude_of_origin",0],PARAMETER["central_meridian",15],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUT
HORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","25833"]]VERT_CS["DVR90",VERT_DATUM["Dansk Vertikal Reference 1990",2005,AUTHORITY["EPSG","5206"
]],UNIT["foot",0.3048,AUTHORITY["EPSG","9002"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5799"]]
LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3

  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)



On Fri, May 27, 2016 at 3:47 PM, Martin Isenburg <martin....@gmail.com> wrote:
>
> Hello Srinu,
>
> that is not too surprising as we have not yet implemented OGC WKT support for the vertical datum. It is on our TODO list already. Which are the common vertical datums that people are using? We'll be adding support for a few of the most common ones in the coming weeks ...
>
> Regards,
>
> Martin
>
> PS: But pay attention to the other issues with your LAS 1.4 file. As is it will not pass the check with the latest version of the LASvalidator. Also see this discussion on that topic:
>
> http://groups.google.com/d/topic/lasroom/ng3rcDSV2Gc/discussion
>
> On Friday, May 27, 2016 at 3:39:55 PM UTC+2, Srinu B wrote:
>>
>> Hi Martin,
>>
>>  
>>
>> Thanks for quick response. Basically, we unable to get the format of OGc_WKT as shown below and also vertical information not getting through lastools
>>
>>  
>>
>> Ex: Format that we are getting through las tools continuous line format
>>
>>  
>>
>>  
>>
>> EX : Required line format as shown with vertical datum
>>
>>
>>

Srinu B

unread,
Jun 22, 2016, 2:49:11 AM6/22/16
to LAStools - efficient tools for LiDAR processing, srinivas...@cyient.com


Hi ,

 

Yes. Now the lastools is able to write vertical datum in header information. However, there are few anomalies between client required format and lastools generated format. Please find enclosed Header_comparision. jpg  for your quick reference. Would you suggest.

 

Thanks and Regards,

BSR





On Friday, May 27, 2016 at 6:26:18 PM UTC+5:30, Srinu B wrote:
Header_Comparison.jpg

Martin Isenburg

unread,
Jun 22, 2016, 5:03:50 AM6/22/16
to LAStools - efficient command line tools for LIDAR processing
Hello Srinu,

thank you for your trial of the new functionality. Let me go through this step by step.

What you request below is not specification conform. For point data format 6 the so called 'legacy counters' need to be 0. Otherwise the file will fail the 'lasvalidate' test. Please inform your client about that. Sorry, but LAStools will not allow you to write a LAS file that does not follow the specification.
 
This is not specification conform:
[...]
  point data format:          6
  point data record length:   30
  number of point records:    10293254
  number of points by return: 10293254 0 0 0 0
[...]
  extended number of point records: 10293254
  extended number of points by return: 10293254 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[...]

This is specification conform:
[...]
  point data format:          6
  point data record length:   30
  number of point records:    0
  number of points by return: 0 0 0 0 0
[...]
  extended number of point records: 10293254
  extended number of points by return: 10293254 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[...]

It seems your input data is stored with a resolution of one hundredth of a feet given you have a scale factor of 0.01 for the coordinates as las2las does not change the scale unless you explicitely ask for it. That makes a lot of sense given that this seems to be airborne LiDAR. Therefore you have these scale factors:

[...]
  scale factor x y z:         0.01 0.01 0.01
[...]

If your clients insists on having the scale factors of 0.0001 as shown below that would merely add a lot of zeros to each number without adding any precision to the data. It then would seem that the data is stored with a resolution of one ten-thousandth of a feet but that is then merely a "wrong impression" as the real resolution of the data is still one hundredth of a feet. What will happen if you change the scale factor from 0.01 to 0.0001 is that lasinfo and lasvalidate will complain about there being "XYZ resolution fluff" in the data.

[...]
  scale factor x y z:         0.0001 0.0001 0.0001
[...]

The next issue seems to suggest your client insists on using EVLRs (that follow the LAS point block) instead of VLRs to store the projection information. The ability to move VLRs to EVLRs might be a useful addition to LAStools. Both, however, is specification conform and currently having it in the VLR is more common.

This is how the LAS header looks when you store the projection info as a VLR:

[...]
  header size:                375
  offset to point data:       1387
  number var. length records: 1
[...]
  start of first extended variable length record: 0
  number of extended_variable length records: 0
[...]

This is how the LAS header looks when you store the projection info as an EVLR:

[...]
  header size:                375
  offset to point data:       375
  number var. length records: 0
[...]
  start of first extended variable length record: 308797995
  number of extended_variable length records: 1
[...]

About the "reserved" field of the VLR record. Apparently the latest specification requests setting this to zero. For some reason I am setting it to 0xAABB ... was that what earlier versions of the LAS specification where demanding? This is a question for the "LAS room" at http://groups.google.com/group/lasroom ... (-:

In order to help you with the issues you are having with the OGC WKT it would be good to see what command line you are using and what your input is. Assuming your file is called 'before.las' then could you please run the following: 

(1) run lasinfo -i before.las -o before.txt
(2) tell us what exact las2las command line you use for the conversion from before.las to after.las 
(3) run lasinfo -i after.las -o after.txt

and then respond with the two text files 'before.txt' and 'after.txt' and the exact las2las command line attached.

Regards,

Martin @rapidlasso

--

Evon Silvia

unread,
Jun 25, 2016, 2:00:01 AM6/25/16
to last...@googlegroups.com
Martin,

Storing the CRS information as a EVLR could be a useful addition to lasinfo if the user wants to add a or modify CRS definition to a LAS 1.4 without rewriting the entire file. This is often a use case for preparing deliveries.

I noticed you didn't address the issue of differing EPSG codes for NAVD88. EPSG code 6360 is for the US Feet version of NAVD88, while code 5703 has unspecified units but meters are implied. I doubt that's very important to their client, but I'm just pointing that out.

You've already addressed the other issues in separate threads, so I'll leave it at that.

Evon
--
Quantum Geospatial Logo
Evon Silvia PLS
Solutions Developer
517 SW 2nd Street, Suite 400, Corvallis, OR 97333
P: (541) 452-8502


Martin Isenburg

unread,
Jul 5, 2016, 2:32:16 AM7/5/16
to LAStools - efficient command line tools for LIDAR processing

Hello Evon,

Thanks for the clarificstion. The latest release of LAStools (160703) also addresses the issue of the differing EPSG codes for NAVD88. EPSG code 5703 is now used when the vertical units are meters white code 6360 is used when not (e.g. because '-elevation_survey_feet' is specified in the command line or because the GEOFF tags say so) ...

Are there also different EPSG codes for the older vertical datum NGVD29 ... ?

We'll see about improving EVLR support. First we really need to finish LASzip for LAS 1.4 as NOAA and USGS seem to start receiving data using the new point types ...

Regards,

Martin

Evon Silvia

unread,
Jul 5, 2016, 12:40:12 PM7/5/16
to last...@googlegroups.com
​Martin,

To my knowledge, and after poking around the EPSG Registry a little bit, ​I believe only the US Feet version of NGVD29 is formally defined (code 5702). I know of no separate formal definition of NGVD29 heights using meters.

Of course, these differences are merely semantics since the units have to be defined separately anyway, but it's nice to be right.

Evon

Mathieu Tachon

unread,
Jul 6, 2016, 7:29:55 AM7/6/16
to LAStools - efficient tools for LiDAR processing, srinivas...@cyient.com
Hi Martin,

In Norway, the vertical datums commonly used are NN54 (EPSG:5776) and NN2000 (EPSG:5941). Would it be possible to add support for them in lastools?
The OGC WKT are as follows:

NN54: VERT_CS["NN54 height",VERT_DATUM["Norway Normal Null 1954",2005,AUTHORITY["EPSG","5174"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Up",UP],AUTHORITY["EPSG","5776"]]

NN2000: VERT_CS["NN2000 height",VERT_DATUM["Norway Normal Null 2000",2005,AUTHORITY["EPSG","1096"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Up",UP],AUTHORITY["EPSG","5941"]]

Thank you.

Regards,

Mathieu

Martin Isenburg

unread,
Jul 10, 2016, 8:57:44 AM7/10/16
to LAStools - efficient command line tools for LIDAR processing, Srinivasulu Banda
Hi Mahieu,

the vertical datums NN54 (EPSG:5776) and NN2000 (EPSG:5941) were added to LAStools in the latest version of today (160710). Some (fake) examples of how to use the new ' -vertical_nn54' and ' -vertical_nn2000' with las2las and '-set_ogc_wkt' are below.

Regards,

Martin @rapidlasso

D:\LAStools\bin>las2las -i ..\data\fusa.laz -utm 22n -vertical_nn54 -set_ogc_wkt -o dummy.laz
using projection UTM 'WGS 84 / UTM zone 22N'

D:\LAStools\bin>lasinfo -i dummy.laz
lasinfo (160710) report for dummy.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160710)'

  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1185

  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:

  reserved             0
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 32622 - ProjectedCSTypeGeoKey: WGS 84 / UTM 22N

      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9001 - VerticalUnitsGeoKey: Linear_Meter
      key 4096 tiff_tag_location 0 count 1 value_offset 5776 - VerticalCSTypeGeoKey: Norway Normal Null 1954

variable length header record 2 of 2:
  reserved             0
  user ID              'LASF_Projection'
  record ID            2112
  length after header  802

  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["WGS 84 / UTM zone 22N",GEOGCS["WGS 84",DATUM["World_Geodetic_System_1984",SPHEROID["WGS84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-51],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32622"]]VERT_CS["NN54",VERT_DATUM["Norway Normal Null 1954",2005,AUTHORITY["EPSG","5174"]],UNIT["metre",1.0,AUTHORITY["EPSG","9001"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5776"]]

LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2
reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3
  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)

D:\LAStools\bin>las2las -i ..\data\fusa.laz -utm 22n -vertical_nn2000 -set_ogc_wkt -o dummy.laz
using projection UTM 'WGS 84 / UTM zone 22N'

D:\LAStools\bin>lasinfo -i dummy.laz
lasinfo (160710) report for dummy.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.1
  system identifier:          'LAStools (c) by rapidlasso GmbH'
  generating software:        'las2las (version 160710)'

  file creation day/year:     40/2010
  header size:                227
  offset to point data:       1187

  number var. length records: 2
  point data format:          1
  point data record length:   28
  number of point records:    277573
  number of points by return: 263413 13879 281 0 0
  scale factor x y z:         0.01 0.01 0.01
  offset x y z:               0 0 0
  min x y z:                  277750.00 6122250.00 42.21
  max x y z:                  277999.99 6122499.99 64.35
variable length header record 1 of 2:

  reserved             0
  user ID              'LASF_Projection'
  record ID            34735
  length after header  48
  description          'by LAStools of rapidlasso GmbH'
    GeoKeyDirectoryTag version 1.1.0 number of keys 5
      key 1024 tiff_tag_location 0 count 1 value_offset 1 - GTModelTypeGeoKey: ModelTypeProjected
      key 3072 tiff_tag_location 0 count 1 value_offset 32622 - ProjectedCSTypeGeoKey: WGS 84 / UTM 22N

      key 3076 tiff_tag_location 0 count 1 value_offset 9001 - ProjLinearUnitsGeoKey: Linear_Meter
      key 4099 tiff_tag_location 0 count 1 value_offset 9001 - VerticalUnitsGeoKey: Linear_Meter
      key 4096 tiff_tag_location 0 count 1 value_offset 5941 - VerticalCSTypeGeoKey: Norway Normal Null 2000

variable length header record 2 of 2:
  reserved             0
  user ID              'LASF_Projection'
  record ID            2112
  length after header  804

  description          'by LAStools of rapidlasso GmbH'
    WKT OGC COORDINATE SYSTEM:
    PROJCS["WGS 84 / UTM zone 22N",GEOGCS["WGS 84",DATUM["World_Geodetic_System_1984",SPHEROID["WGS84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-51],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32622"]]VERT_CS["NN2000",VERT_DATUM["Norway Normal Null 2000",2005,AUTHORITY["EPSG","1096"]],UNIT["metre",1.0,AUTHORITY["EPSG","9001"]]AXIS["Gravity-related height",UP],AUTHORITY["EPSG","5941"]]

LASzip compression (version 2.4r2 c2 50000): POINT10 2 GPSTIME11 2
reporting minimum and maximum for all LAS point record entries ...
  X            27775000   27799999
  Y           612225000  612249999
  Z                4221       6435
  intensity          10      62293
  return_number       1          3
  number_of_returns   1          3
  edge_of_flight_line 0          0
  scan_direction_flag 0          0
  classification      1          6
  scan_angle_rank    79        103
  user_data           0        197
  point_source_ID     1          1
  gps_time 5880.963028 5886.739738
number of first returns:        263413
number of intermediate returns: 283
number of last returns:         263370
number of single returns:       249493
overview over number of returns of given pulse: 249493 27232 848 0 0 0 0

histogram of classification of points:
           17553  unclassified (1)
          180868  ground (2)
           37030  high vegetation (5)
           42122  building (6)


Reply all
Reply to author
Forward
0 new messages