Set LAS Class Codes Using Raster (3D Analyst)

Summary

Classifies LAS points using cell values from a raster dataset.

Usage

  • This tool requires an integer raster. The cell values of the raster will define the class code of the LAS points within the cell's extent. Any cell value that is beyond the range supported by the LAS format will be ignored. Cells with No Data values result in no change to the LAS points. Use the Reclassify tool if the raster's cell values need to be changed to have the necessary class code values supported by the input LAS files.

  • Unlike other classification tools which only operate on certain class codes, this tool can modify all LAS points that are contained in a given cell. A LAS dataset layer can be used to limit the points being processed by filtering them using classification codes, return values, and classification flags. The LAS dataset's point filters can be defined in the Layer Properties dialog box or through the Make LAS Dataset Layer tool.

  • For best results, use a raster dataset that is in the same projection as the LAS dataset. A raster with a coordinate system other than that of the LAS dataset will be reprojected on the fly, which can introduce alignment discrepancies that may yield unexpected results. If the raster has a different coordinate system, consider using the Project Raster tool to reproject it into the spatial reference of the LAS dataset.

  • This tool provides a way of leveraging the results obtained from image classification to classify a LAS dataset point cloud. For example, the Classify LAS Ground tool may identify LAS points capturing roads, bodies of water, and other low objects which could be easily discerned from imagery. If the image accurately captures the object at a resolution suitable for classifying the point cloud, the image classification result can be used with the ground filtered LAS points to provide better LAS classification.

Parameters

LabelExplanationData Type
Input LAS Dataset

The LAS dataset that will be processed.

LAS Dataset Layer
Input Raster

The integer raster with cell values that will be used to assign classification codes for LAS points. The cell values must not exceed the class codes that are supported by the input LAS files.

Raster Layer; Mosaic Layer
Compute statistics
(Optional)

Specifies whether statistics will be computed for the .las files referenced by the LAS dataset. Computing statistics provides a spatial index for each .las file, which improves analysis and display performance. Statistics also enhance the filtering and symbology experience by limiting the display of LAS attributes, such as classification codes and return information, to values that are present in the .las file.

  • Checked—Statistics will be computed. This is the default.
  • Unchecked—Statistics will not be computed.
Boolean
Processing Extent
(Optional)

The extent of the data that will be evaluated.

  • Current Display Extent Map View—The extent will be based on the active map or scene.
  • Draw Extent Square and Finish—The extent will be based on a rectangle drawn on the map or scene.
  • Extent of a Layer Layer—The extent will be based on an active map layer. Choose an available layer or use the Extent of data in all layers option. Each map layer has the following options:

    • All Features Select All—The extent of all features.
    • Selected Features Area from Selected Features—The extent of the selected features.
    • Visible Features Extent Indicator—The extent of visible features.

  • Browse Browse—The extent will be based on a dataset.
  • Intersection of Inputs Intersect—The extent will be the intersecting extent of all inputs.
  • Union of Inputs Union—The extent will be the combined extent of all inputs.
  • Clipboard Paste—The extent can be copied to and from the clipboard.
    • Copy Extent Copy—Copies the extent and coordinate system to the clipboard.
    • Paste Extent Paste—Pastes the extent and coordinate system from the clipboard. If the clipboard does not include a coordinate system, the extent will use the map’s coordinate system.
  • Reset Extent Reset—The extent will be reset to the default value.

When coordinates are manually provided, the coordinates must be numeric values and in the active map's coordinate system. The map may use different display units than the provided coordinates. Use a negative value sign for south and west coordinates.

Extent
Processing Boundary

The polygon feature or features that will define the area to be processed.

Feature Layer
Process entire LAS files that intersect extent
(Optional)

Specifies how the area of interest will be used in determining how .las files will be processed. The area of interest is defined by the Processing Extent parameter value, the Processing Boundary parameter value, or a combination of both.

  • Unchecked—Only LAS points that intersect the area of interest will be processed. This is the default.
  • Checked—If any portion of a .las file intersects the area of interest, all the points in that file, including those outside the area of interest, will be processed.
Boolean
Update pyramid
(Optional)

Specifies whether the LAS dataset pyramid will be updated after the class codes are modified.

  • Checked—The LAS dataset pyramid will be updated. This is the default.
  • Unchecked—The LAS dataset pyramid will not be updated.
Boolean

Derived Output

LabelExplanationData Type
Output LAS Dataset

The reclassified LAS dataset.

LAS Dataset Layer

arcpy.ddd.SetLasClassCodesUsingRaster(in_las_dataset, in_raster, {compute_stats}, {extent}, boundary, {process_entire_files}, {update_pyramid})
NameExplanationData Type
in_las_dataset

The LAS dataset that will be processed.

LAS Dataset Layer
in_raster

The integer raster with cell values that will be used to assign classification codes for LAS points. The cell values must not exceed the class codes that are supported by the input LAS files.

Raster Layer; Mosaic Layer
compute_stats
(Optional)

Specifies whether statistics will be computed for the .las files referenced by the LAS dataset. Computing statistics provides a spatial index for each .las file, which improves analysis and display performance. Statistics also enhance the filtering and symbology experience by limiting the display of LAS attributes, such as classification codes and return information, to values that are present in the .las file.

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

The extent of the data that will be evaluated.

  • MAXOF—The maximum extent of all inputs will be used.
  • MINOF—The minimum area common to all inputs will be used.
  • DISPLAY—The extent is equal to the visible display.
  • Layer name—The extent of the specified layer will be used.
  • Extent object—The extent of the specified object will be used.
  • Space delimited string of coordinates—The extent of the specified string will be used. Coordinates are expressed in the order of x-min, y-min, x-max, y-max.
Extent
boundary

The polygon feature or features that will define the area to be processed.

Feature Layer
process_entire_files
(Optional)

Specifies how the processing extent will be applied.

  • PROCESS_EXTENTOnly LAS points that intersect the area of interest will be processed. This is the default.
  • PROCESS_ENTIRE_FILESIf any portion of a .las file intersects the area of interest, all the points in that file, including those outside the area of interest, will be processed.
Boolean
update_pyramid
(Optional)

Specifies whether the LAS dataset pyramid will be updated after the class codes are modified.

  • UPDATE_PYRAMIDThe LAS dataset pyramid will be updated. This is the default.
  • NO_UPDATE_PYRAMIDThe LAS dataset pyramid will not be updated.
Boolean

Derived Output

NameExplanationData Type
derived_las_dataset

The reclassified LAS dataset.

LAS Dataset Layer

Code sample

SetLASClassCodesUsingRaster (Python window)

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

import arcpy
arcpy.ddd.SetLasClassCodesUsingRaster("Jacmel.las", "reclass.tif", "COMPUTE_STATS")

Related topics