LAS Dataset To Raster (Conversion)

Summary

Creates a raster using elevation, intensity, or RGB values stored in the lidar points referenced by the LAS dataset.

Illustration

LAS Dataset to Raster

Usage

  • You can have the LAS dataset layer limit the LAS points that are displayed and processed by selecting any combination of classification codes, classification flags, and return values in the layer's filter settings. The filters can be defined on the Layer Properties dialog box or in the Make LAS Dataset Layer tool.

  • The LAS dataset layer can also be used to control the enforcement of surface constraint features that may be referenced by the LAS dataset. The constraints are enforced when displaying or processing the LAS dataset as a triangulated surface.

  • When exporting a large raster, you can specify the Output Data Type parameter value as an integer to save disk space if the accuracy requirements of the z-values can be represented by integer data.

  • Including a study area boundary as a clip constraint in the definition of the input LAS dataset is highly recommended. One reason is to prevent interpolation from occurring outside the real data extent of the survey. Secondly, there can be a severe performance penalty when using natural neighbor options if the data area is not properly defined.

    Note:

    When using BINNING only clip, erase, and replace constraints are honored. Breaklines and anchor points are not. The triangulation option honors all types of constraints but takes longer to execute.

Parameters

LabelExplanationData Type
Input LAS Dataset

The LAS dataset that will be processed.

LAS Dataset Layer
Output Raster

The location and name of the output raster. When storing a raster dataset in a geodatabase or in a folder such as an Esri Grid, do not add a file extension to the name of the raster dataset. A file extension can be provided to define the raster's format when storing it in a folder, such as .tif to generate a GeoTIFF or .img to generate an ERDAS IMAGINE format file.

If the raster is stored as a .tif file or in a geodatabase, the raster compression type and quality can be specified using geoprocessing environment settings.

Raster Dataset
Value Field
(Optional)

The lidar data that will be used to generate the raster output.

  • ELEVATIONElevation from the lidar files will be used to create the raster. This is the default.
  • INTENSITYIntensity information from the lidar files will be used to create the raster.
  • RGBRGB values from the lidar points will be used to create 3-band imagery.
String
Interpolation Type
(Optional)

The interpolation technique that will be used to determine the cell values of the output raster.

The binning approach provides a Cell Assignment Method for determining each output cell using the points that fall within its extent, along with a Void Fill Method to determine the value of cells that do not contain any LAS points.

Cell Assignment Methods

  • AVERAGE—Assigns the average value of all points in the cell. This is the default.
  • MINIMUM—Assigns the minimum value found in the points within the cell.
  • MAXIMUM—Assigns the maximum value found in the points within the cell.
  • IDW—Uses Inverse Distance Weighted interpolation to determine the cell value.
  • NEAREST—Uses Nearest Neighbor assignment to determine the cell value.

Void Fill Methods

  • NONE—NoData is assigned to the cell.
  • SIMPLE—Averages the values from data cells immediately surrounding a NoData cell to eliminate small voids.
  • LINEAR—Triangulates across void areas and uses linear interpolation on the triangulated value to determine the cell value. This is the default.
  • NATURAL_NEIGHBOR—Uses natural neighbor interpolation to determine the cell value.

The Triangulation interpolation methods derive cell values using a TIN based approach while also offering the opportunity to speed up processing time by thinning the sampling of LAS data using the Window Size technique.

Triangulation Methods

  • Linear—Uses linear interpolation to determine cell values.
  • Natural Neighbors—Uses natural neighbor interpolation to determine cell value.

Window Size Selection Methods

  • Maximum—The point with the highest value in each window size is maintained. This is the default.
  • Minimum—The point with the lowest value in each window size is maintained.
  • Closest To Mean—The point whose value is closest to the average of all point values in the window size is maintained.
Interpolate
Output Data Type
(Optional)

Specifies the type of numeric values that will be stored in the output raster.

  • Floating PointThe output raster will use 32-bit floating point, which supports values ranging from -3.402823466e+38 to 3.402823466e+38. This is the default.
  • IntegerThe output raster will use an appropriate integer bit depth. This option will round z-values to the nearest whole number and write an integer to each raster cell value.
String
Sampling Type
(Optional)

Specifies how the Sampling Value parameter will be interpreted to define the output raster's cell size.

  • ObservationsThe Sampling Value will define the number of columns or rows in the output raster based on whichever is longest. The cell size will be derived by dividing the longest side of the output's extent with the input in the Sampling Value parameter. If an observation value of 3000 is used on a dataset whose longest side is 23.67 kilometers, the output raster's resolution will be 7.89 meters. This method offers a helpful way of creating an output with a predictable size that can be generated rapidly.
  • Cell SizeThe cell size will be directly defined by the Sampling Value parameter. This is the default.
String
Sampling Value
(Optional)

The value used in conjunction with the Sampling Type parameter to define the output raster's cell size.

Double
Z Factor
(Optional)

The factor by which z-values will be multiplied. This is typically used to convert z linear units to match x,y linear units. The default is 1, which leaves elevation values unchanged. This parameter is not available if the spatial reference of the input surface has a z-datum with a specified linear unit.

Double

arcpy.conversion.LasDatasetToRaster(in_las_dataset, out_raster, {value_field}, {interpolation_type}, {data_type}, {sampling_type}, {sampling_value}, {z_factor})
NameExplanationData Type
in_las_dataset

The LAS dataset that will be processed.

LAS Dataset Layer
out_raster

The location and name of the output raster. When storing a raster dataset in a geodatabase or in a folder such as an Esri Grid, do not add a file extension to the name of the raster dataset. A file extension can be provided to define the raster's format when storing it in a folder, such as .tif to generate a GeoTIFF or .img to generate an ERDAS IMAGINE format file.

If the raster is stored as a .tif file or in a geodatabase, the raster compression type and quality can be specified using geoprocessing environment settings.

Raster Dataset
value_field
(Optional)

The lidar data that will be used to generate the raster output.

  • ELEVATIONElevation from the lidar files will be used to create the raster. This is the default.
  • INTENSITYIntensity information from the lidar files will be used to create the raster.
  • RGBRGB values from the lidar points will be used to create 3-band imagery.
String
interpolation_type
"BINNING {cell_assignment_type} {void_fill_method}" or "TRIANGULATION {interpolation_method} {point_thinning_type} {point_selection_method} {resolution}"
(Optional)

The interpolation technique that will be used to determine the cell values of the output raster.

The binning approach provides a Cell Assignment Method for determining each output cell using the points that fall within its extent, along with a Void Fill Method to determine the value of cells that do not contain any LAS points.

Cell Assignment Methods

  • AVERAGE—Assigns the average value of all points in the cell. This is the default.
  • MINIMUM—Assigns the minimum value found in the points within the cell.
  • MAXIMUM—Assigns the maximum value found in the points within the cell.
  • IDW—Uses Inverse Distance Weighted interpolation to determine the cell value.
  • NEAREST—Uses Nearest Neighbor assignment to determine the cell value.

Void Fill Methods

  • NONE—NoData is assigned to the cell.
  • SIMPLE—Averages the values from data cells immediately surrounding a NoData cell to eliminate small voids.
  • LINEAR—Triangulates across void areas and uses linear interpolation on the triangulated value to determine the cell value. This is the default.
  • NATURAL_NEIGHBOR—Uses natural neighbor interpolation to determine the cell value.

The Triangulation interpolation methods derive cell values using a TIN based approach while also offering the opportunity to speed up processing time by thinning the sampling of LAS data using the Window Size technique.

Triangulation Methods

  • Linear—Uses linear interpolation to determine cell values.
  • Natural Neighbors—Uses natural neighbor interpolation to determine cell value.

Window Size Selection Methods

  • Maximum—The point with the highest value in each window size is maintained. This is the default.
  • Minimum—The point with the lowest value in each window size is maintained.
  • Closest To Mean—The point whose value is closest to the average of all point values in the window size is maintained.
Interpolate
data_type
(Optional)

Specifies the type of numeric values that will be stored in the output raster.

  • FLOATThe output raster will use 32-bit floating point, which supports values ranging from -3.402823466e+38 to 3.402823466e+38. This is the default.
  • INTThe output raster will use an appropriate integer bit depth. This option will round z-values to the nearest whole number and write an integer to each raster cell value.
String
sampling_type
(Optional)

Specifies how the Sampling Value parameter will be interpreted to define the output raster's cell size.

  • OBSERVATIONSThe Sampling Value will define the number of columns or rows in the output raster based on whichever is longest. The cell size will be derived by dividing the longest side of the output's extent with the input in the Sampling Value parameter. If an observation value of 3000 is used on a dataset whose longest side is 23.67 kilometers, the output raster's resolution will be 7.89 meters. This method offers a helpful way of creating an output with a predictable size that can be generated rapidly.
  • CELLSIZEThe cell size will be directly defined by the Sampling Value parameter. This is the default.
String
sampling_value
(Optional)

The value used in conjunction with the Sampling Type parameter to define the output raster's cell size.

Double
z_factor
(Optional)

The factor by which z-values will be multiplied. This is typically used to convert z linear units to match x,y linear units. The default is 1, which leaves elevation values unchanged. This parameter is not available if the spatial reference of the input surface has a z-datum with a specified linear unit.

Double

Code sample

LasDatasetToRaster example 1 (Python window)

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

arcpy.env.workspace = 'C:/data'
arcpy.ddd.LasDatasetToRaster('baltimore.lasd', 'baltimore.tif', 'INTENSITY',
                          'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
                          'CELLSIZE', 10, 3.28)
LasDatasetToRaster 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