Skip To Content

LAS Dataset Statistics

Available with 3D Analyst license.

Available with Spatial Analyst license.

Summary

Calculates or updates statistics for a LAS dataset and generates an optional statistics report.

Usage

  • Statistics calculate average point spacing for each LAS file by using a binning method that incrementally evaluates small areas of the file to determine an estimate.

  • Statistics enable filtering options for a LAS dataset layer to automatically display the available class codes and return values found in the referenced LAS files. The filtering options can be specified through the Layer Properties dialog box in ArcMap and ArcScene.

  • The following information about the LAS files will be stored in the LAS dataset and can be reviewed through the LAS Dataset Properties dialog box in ArcCatalog:

    • Range of elevation and intensity values
    • Number of data points per class code and return value
    • Existence of RGB values
    • LAS version and point format ID
    • Project ID and file source ID
    • Name of software used to generate the lidar file
  • The optional statistics report file provides an overview of LAS properties of all files in the LAS dataset or each individual LAS file in a text format that can be imported into any number of applications.

Syntax

LasDatasetStatistics_management (in_las_dataset, calculation_type, {out_file}, {summary_level}, {delimiter}, {decimal_separator})
ParameterExplanationData Type
in_las_dataset

The LAS dataset to process.

LAS Dataset Layer
calculation_type

Specifies whether statistics will be calculated for all lidar files or only for those that do not have statistics:

  • SKIP_EXISTING_STATSLAS files with up-to-date statistics will be skipped, and statistics will only be calculated for newly added LAS files or ones that were updated since the initial calculation. This is the default.
  • OVERWRITE_EXISTING_STATSStatistics will be calculated for all LAS files, including ones that have up-to-date statistics. This is useful if the LAS files were modified in an external application that went undetected by ArcGIS.
Boolean
out_file
(Optional)

The output text file that will contain the summary of the LAS dataset statistics.

Text File
summary_level
(Optional)

Specify the type of summary contained in the report.

  • DATASETThe report will summarize statistics for the entire LAS dataset. This is the default.
  • LAS_FILESThe report will summarize statistics for the LAS files referenced by the LAS dataset.
String
delimiter
(Optional)

The delimiter used to indicate the separation of entries in the columns of the text file table.

  • SPACEA space will be used to delimit field values. This is the default.
  • COMMAA comma will be used to delimit field values. This option is not applicable if the decimal separator is also a comma.
String
decimal_separator
(Optional)

The decimal character used in the text file to differentiate the integer of a number from its fractional part.

  • DECIMAL_POINTA point is used as the decimal character. This is the default.
  • DECIMAL_COMMAA comma is used as the decimal character.
String

Code sample

LasDatasetStatistics example 1 (Python window)

The following sample demonstrates the use of this tool in the Python window.

import arcpy
from arcpy import env

env.workspace = "C:/data"
arcpy.LASDatasetStatistics_3d("test.lasd", "NO_FORCE", "LAS_FILE", 
                            "DECIMAL_POINT", "SPACE", "LAS_summary.txt")
LasDatasetStatistics example 2 (stand-alone script)

The following sample demonstrates the use of this tool in a stand-alone Python script.

'''*********************************************************************
Name: Modify Files in LAS Dataset& Calculate Stats for LASD
Description: Adds files & surface constraints to a LAS dataset, then
             calculates statistics and generates report.
*********************************************************************'''
# Import system modules
import arcpy

try:
    # Script variables
    arcpy.env.workspace = 'C:/data'
    lasd = 'sample.lasd'
    oldLas = ['2006', '2007/file2.las']
    newLas = ['2007_updates_1', '2007_updates_2']
    oldSurfaceConstraints = ['boundary.shp', 'streams.shp']
    newSurfaceConstraints = [['sample.gdb/boundary', '<None>',
                              'Soft_Clip']
                             ['sample.gdb/streams', 'Shape.Z',
                              'Hard_Line']]
    arcpy.management.RemoveFilesFromLasDataset(lasd, oldLas,
                                               oldSurfaceConstraints)
    arcpy.management.AddFilesToLasDataset(lasd, newLas, 'RECURSION',
                                          newSurfaceConstraints)
    arcpy.management.LasDatasetStatistics(lasd, "UPDATED_FILES",
                                          "lasd_stats.txt",
                                          "LAS_FILE", "DECIMAL_POINT",
                                          "SPACE", "LAS_summary.txt")
except arcpy.ExecuteError:
    print(arcpy.GetMessages())
except Exception as err:
    print(err.args[0])

Environments

Licensing information

  • ArcGIS Desktop Basic: Requires 3D Analyst or Spatial Analyst
  • ArcGIS Desktop Standard: Yes
  • ArcGIS Desktop Advanced: Yes

Related topics