Create LAS Dataset (Data Management)

Summary

Creates a LAS dataset referencing one or more .las files and optional surface constraint features.

Illustration

Create LAS Dataset tool illustration

Usage

  • The LAS dataset is designed for use with point cloud data stored in the LAS format using file versions 1.0–1.4. LAS files stored in the compressed ZLAS format are also supported. ZLAS files can be generated by any tool that creates new LAS files, such as Convert LAS, Extract LAS, Thin LAS, or Tile LAS. Additionally, the LAS Optimizer 1.2 stand-alone application can also be used to compress .las files to .zlas or uncompress them back to .las files.

  • Each .las file is examined to determine if its internal structure is consistent with the LAS specifications. If any .las file fails to load into the LAS dataset, this may indicate that the file is corrupted or has erroneous information in its header. You can use Esri's CheckLAS utility to determine whether commonly encountered issues may exist in the data.

  • Surface constraint features can be used to enforce feature-derived elevation values that represent surface characteristics in the LAS dataset.

  • Each .las file typically contains spatial reference information in its header that is read by the LAS dataset. If this information is missing or improperly defined, the .las file will not be placed in its correct location. If the correct spatial reference is known, you can use the Create PRJ For LAS parameter to create a .prj file that properly georeferences the lidar data. The .prj file will share the .las file's name, reside in the same folder, and contain the well-known text representation of the .las file's coordinate system, similar to the .prj file associated with a shapefile.

  • ArcGIS uses the LAS classification scheme defined by the American Society for Photogrammetry and Remote Sensing (ASPRS).

    Learn more about lidar point classification

  • In the Geoprocessing pane, a folder can also be specified as an input by selecting the folder in File Explorer and dragging it onto the parameter's input box.

Parameters

LabelExplanationData Type
Input Files

The .las files, .zlas files, LAS datasets, and folders containing .las files that will be referenced by the output LAS dataset. When a LAS dataset is specified as input, all the .las and .zlas files that have a valid path reference will be added to the input LAS dataset.

In the Geoprocessing pane, a folder can also be specified as an input by selecting the folder in File Explorer and dragging it onto the parameter's input box.

LAS Dataset Layer; File; Folder
Output LAS Dataset

The LAS dataset that will be created.

LAS Dataset
Include subfolders
(Optional)

Specifies whether .las files residing in the subdirectories of an input folder will be referenced by the LAS dataset.

  • Unchecked—Only .las files residing in an input folder will be added to the LAS dataset. This is the default.
  • Checked—All .las files residing in the subdirectories of an input folder will be added to the LAS dataset.
Boolean
Surface Constraints
(Optional)

The features that will contribute to the definition of the triangulated surface generated from the LAS dataset.

  • Input Features—The features with geometry that will be incorporated into the LAS dataset's triangulated surface.
  • Height Field—The feature's elevation source can be derived from any numeric field in the feature's attribute table or the geometry by selecting Shape.Z. If no height is necessary, specify the keyword <None> to create z-less features with elevation that will be interpolated from the surface.
  • Type—Defines the feature's role in the triangulated surface generated from the LAS dataset. Options with hard or soft designation refer to whether the feature edges represent distinct breaks in slope or a gradual change.
  • Surface Feature Type—The surface feature type that defines how the feature geometry will be incorporated into the triangulation for the surface. Options with hard or soft designation refer to whether the feature edges represent distinct breaks in slope or a gradual change.
    • anchorpoints—Elevation points that will not be thinned away. This option is only available for single-point feature geometry.
    • hardline or softline—Breaklines that enforce a height value.
    • hardclip or softclip—Polygon dataset that defines the boundary of the LAS dataset.
    • harderase or softerase—Polygon dataset that defines holes in the LAS dataset.
    • hardreplace or softreplace—Polygon dataset that defines areas of constant height.
Value Table
Coordinate System
(Optional)

The spatial reference of the LAS dataset. If no spatial reference is explicitly assigned, the LAS dataset will use the coordinate system of the first input .las file. If the input files do not contain spatial reference information and the coordinate system is not set, the coordinate system of the LAS dataset will be listed as unknown.

Coordinate System
Compute Statistics
(Optional)

Specifies whether statistics for the .las files will be computed and a spatial index generated for the LAS dataset. The presence of statistics allows the LAS dataset layer's filtering and symbology options to only show LAS attribute values that exist in the .las files. A .lasx auxiliary file is created for each .las file.

  • Unchecked—Statistics will not be computed. This is the default.
  • Checked—Statistics will be computed.
Boolean
Store Relative Paths
(Optional)

Specifies whether lidar files and surface constraint features will be referenced by the LAS dataset through relative or absolute paths. Using relative paths may be convenient for cases in which the LAS dataset and its associated data will be relocated in the file system using the same relative location to one another.

  • Unchecked—Absolute paths will be used for the data referenced by the LAS dataset. This is the default.
  • Checked—Relative paths will be used for the data referenced by the LAS dataset.
Boolean
Create PRJ For LAS Files

Specifies whether .prj files will be created for the .las files referenced by the LAS dataset.

  • No LAS FilesNo .prj files will be created. This is the default.
  • Files with Missing Spatial ReferencesCorresponding .prj files will be created for .las files with no spatial reference.
  • All LAS FilesCorresponding .prj files will be created for all .las files.
String
Processing Extent
(Optional)

The processing extent will be used to select a subset of .las files from the list of files and folders in the Input Files parameter value. Any .las files that fall entirely outside of this extent will be excluded from the resulting LAS dataset. Additionally, .las files that fall partially outside the extent will be excluded if the Add only entirely contained files parameter is checked.

Extent
Processing Boundary
(Optional)

The polygon features whose boundary will be used to select a subset of .las files from the list of files and folders in the Input Files parameter. Any .las files that fall entirely outside of the polygon will be excluded from the resulting LAS dataset. Additionally, .las files that fall partially outside the polygons will be excluded if the Add only entirely contained files parameter is checked.

Feature Layer
Add only entirely contained files
(Optional)

Specifies whether the .las files that will be added to the LAS dataset must be fully or partially contained by either the processing extent, the processing boundary polygon, or the intersection of both.

  • Unchecked—All files that intersect the processing extent, processing boundary, or the intersection of both will be added to the LAS dataset. This is the default.
  • Checked—Only files that are entirely contained by the processing extent, processing boundary, or the intersection of both will be added to the LAS dataset.
Boolean

arcpy.management.CreateLasDataset(input, out_las_dataset, {folder_recursion}, {in_surface_constraints}, {spatial_reference}, {compute_stats}, {relative_paths}, create_las_prj, {extent}, {boundary}, {add_only_contained_files})
NameExplanationData Type
input
[input,...]

The .las files, LAS datasets, and folders containing .las files that will be referenced by the LAS dataset. This information can be supplied as a string containing all the input data or a list of strings containing specific data elements (for example, "lidar1.las; lidar2.las; folder1; folder2" or ["lidar1.las", "lidar2.las", "folder1", "folder2"]).

LAS Dataset Layer; File; Folder
out_las_dataset

The LAS dataset that will be created.

LAS Dataset
folder_recursion
(Optional)

Specifies whether lidar files residing in the subdirectories of an input folder will be added to the LAS dataset.

  • NO_RECURSIONOnly lidar files residing in an input folder will be added to the LAS dataset. This is the default.
  • RECURSIONAll lidar files residing in the subdirectories of an input folder will be added to the LAS dataset.
Boolean
in_surface_constraints
[[in_feature_class, height_field, SF_type],...]
(Optional)

The features that will be referenced by the LAS dataset when generating a triangulated surface. Each feature must have the following properties defined:

  • in_feature_class—The feature to be referenced by the LAS dataset.
  • height_field—Any numeric field in the feature's attribute table can be used to define the height source. If the feature's geometry contains z-values, it can be selected by specifying Shape.Z. If no height is necessary, specify the keyword <None> to create z-less features with elevation that will be interpolated from the surface.
  • SF_type—The surface feature type that defines how the feature geometry will be incorporated into the triangulation for the surface. Options with hard or soft designation refer to whether the feature edges represent distinct breaks in slope or a gradual change.
    • anchorpoints—Elevation points that will not be thinned away. This option is only available for single-point feature geometry.
    • hardline or softline—Breaklines that enforce a height value.
    • hardclip or softclip—Polygon dataset that defines the boundary of the LAS dataset.
    • harderase or softerase—Polygon dataset that defines holes in the LAS dataset.
    • hardreplace or softreplace—Polygon dataset that defines areas of constant height.

Value Table
spatial_reference
(Optional)

The spatial reference of the LAS dataset. If no spatial reference is explicitly assigned, the LAS dataset will use the coordinate system of the first input .las file. If the input files do not contain spatial reference information and the coordinate system is not set, the coordinate system of the LAS dataset will be listed as unknown.

Coordinate System
compute_stats
(Optional)

Specifies whether statistics for the .las files will be computed and a spatial index generated for the LAS dataset. The presence of statistics allows the LAS dataset layer's filtering and symbology options to only show LAS attribute values that exist in the .las files. A .lasx auxiliary file is created for each .las file.

  • COMPUTE_STATSStatistics will be computed.
  • NO_COMPUTE_STATSStatistics will not be computed. This is the default.
Boolean
relative_paths
(Optional)

Specifies whether lidar files and surface constraint features will be referenced by the LAS dataset through relative or absolute paths. Using relative paths may be convenient for cases in which the LAS dataset and its associated data will be relocated in the file system using the same relative location to one another.

  • ABSOLUTE_PATHSAbsolute paths will be used for the data referenced by the LAS dataset. This is the default.
  • RELATIVE_PATHSRelative paths will be used for the data referenced by the LAS dataset.
Boolean
create_las_prj

Specifies whether .prj files will be created for the .las files referenced by the LAS dataset.

  • NO_FILESNo .prj files will be created. This is the default.
  • FILES_MISSING_PROJECTIONCorresponding .prj files will be created for .las files with no spatial reference.
  • ALL_FILESCorresponding .prj files will be created for all .las files.
String
extent
(Optional)

The processing extent will be used to select a subset of .las files from the list of files and folders in the input parameter value. Any .las files that fall entirely outside of this extent will be excluded from the resulting LAS dataset. Additionally, .las files that fall partially outside the extent will be excluded if the add_only_contained_files parameter is set to INTERSECTED_FILES.

Extent
boundary
(Optional)

The polygon features whose boundary will be used to select a subset of .las files from the list of files and folders in the input parameter. Any .las files that fall entirely outside of the polygon features will be excluded from the resulting LAS dataset. Additionally, .las files that fall partially outside the polygons will be excluded if the add_only_contained_files parameter is set to INTERSECTED_FILES.

Feature Layer
add_only_contained_files
(Optional)

Specifies whether the .las files that will be added to the LAS dataset must be fully or partially contained by either the processing extent, the processing boundary polygon, or the intersection of both.

  • CONTAINED_FILESAll files that intersect the processing extent, processing boundary, or the intersection of both will be added to the LAS dataset. This is the default.
  • INTERSECTED_FILESOnly files that are entirely contained by the processing extent, processing boundary, or the intersection of both will be added to the LAS dataset.
Boolean

Code sample

CreateLasDataset 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.CreateLasDataset_management("folder_a; folder_b/5S4E.las", 
                                "test.lasd", "RECURSION",
                                "LA/boundary.shp <None> Softclip;"\
                                "LA/ridges.shp Elevation hardline", "", 
                                "COMPUTE_STATS", "RELATIVE_PATHS")
CreateLasDataset example 2 (stand-alone script)

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

'''*********************************************************************
Name: Export Elevation Raster from Ground LAS Measurements
Description: This script demonstrates how to export
             ground measurements from LAS files to a raster using a
             LAS dataset. This sample is designed to be used as a script
             tool.
*********************************************************************'''
# Import system modules
import arcpy

try:
    # Set Local Variables
    inLas = arcpy.GetParameterAsText(0)
    recursion = arcpy.GetParameterAsText(1)
    surfCons = arcpy.GetParameterAsText(2)
    classCode = arcpy.GetParameterAsText(3)
    returnValue = arcpy.GetParameterAsText(4)
    spatialRef = arcpy.GetParameterAsText(5)
    lasD = arcpy.GetParameterAsText(6)
    outRaster = arcpy.GetParameterAsText(7)
    cellSize = arcpy.GetParameter(8)
    zFactor = arcpy.GetParameter(9)

    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasD, recursion, surfCons, sr)
    # Execute MakeLasDatasetLayer
    lasLyr = arcpy.CreateUniqueName('Baltimore')
    arcpy.management.MakeLasDatasetLayer(lasD, lasLyr, classCode, returnValue)
    # Execute LasDatasetToRaster
    arcpy.conversion.LasDatasetToRaster(lasLyr, outRaster, 'ELEVATION',
                              'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
                              'CELLSIZE', cellSize, zFactor)
    print(arcpy.GetMessages())

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

except Exception as err:
    print(err.args[0])

finally:
    arcpy.management.Delete(lasLyr)

Related topics