arcpy.management.InterpolateFromPointCloud(in_container, out_raster, cell_size, {interpolation_method}, {smooth_method}, {surface_type}, {fill_dem}, {options})
|
Name
|
Explanation
|
Data type
|
|
in_container
|
The path and name of the input file, folder, feature layer, or LAS dataset. The input can be a folder of LAS files, a solution point table from Ortho mapping tools, or an LAS dataset. For cloud storage, provide the cloud storage path, such as C:\Temp\Cloud.acs\las.
The LAS files can be the output from the Generate Point Cloud tool in which LAS points are categorized as ground and above ground. A solution point table is output from the Compute Block Adjustments or Compute Camera Model tool.
|
Folder; File; Feature Class; Feature Layer
|
|
out_raster
|
The output raster dataset location, name, and file extension. You can also save the output raster dataset by providing a cloud storage path such as C:\Temp\Cloud.acs\lasfolder.
The output can be created in most writable raster formats, such as TIFF, CRF, or IMG.
|
Raster Dataset
|
|
cell_size
|
The cell size of the output raster dataset.
|
Double
|
|
interpolation_method
(Optional)
|
Specifies the method that will be used to interpolate the output raster dataset from the point cloud.
TRIANGULATION—The triangulation method will be used. It is also known as triangulated irregular network (TIN) linear interpolation and is designed for irregularly distributed sparse points, such as solution points from block adjustment computation.
NATURAL_NEIGHBOR—The natural neighbor method will be used. It is similar to triangulation but generates a smoother surface and is more computationally intensive.
IDW—The inverse distance weighted (IDW) average method will be used. It is used for regularly distributed dense points, such as point cloud LAS files from the Generate Point Cloud tool. The IDW search radius is automatically computed based on average point density.
|
String
|
|
smooth_method
(Optional)
|
Specifies the filter that will be used to smooth the output raster dataset.
GAUSS3x3—A Gaussian filter with a 3 by 3 window will be used.
GAUSS5x5—A Gaussian filter with a 5 by 5 window will be used.
GAUSS7x7—A Gaussian filter with a 7 by 7 window will be used.
GAUSS9x9—A Gaussian filter with a 9 by 9 window will be used.
NONE—No smoothing filter will be used.
|
String
|
|
surface_type
(Optional)
|
Specifies whether a digital terrain model or a digital surface model will be created.
|
String
|
|
fill_dem
(Optional)
|
A DEM raster input that is used to fill NoData areas. Areas of NoData may exist where pixels do not have enough information from the input to generate values.
|
Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer
|
|
options
[[name, value],...]
(Optional)
|
Classify ground points from the input LAS data.
This parameter is active when the surface_type parameter is set to DTM.
Classify—Classify the ground using different options depending on the type of terrain. The options are not case sensitive.
standard—This method has a tolerance for slope variation that allows it to capture gradual undulations in the ground's topography that would typically be missed by the conservative option, but not capture the type of sharp relief that would be captured by the aggressive option. This is the default.
conservative—When compared to other options, this method uses a tighter restriction on the variation of the ground's slope that allows it to differentiate the ground from low-lying vegetation such as grass and shrubbery. It is best suited for topography with minimal curvature.
aggressive—This method detects ground areas with sharp relief, such as ridges and hilltops, that may be ignored by the standard option. This method is best used in a second iteration of this tool with the ReuseGround option set to 1. Avoid using this method in urban areas or flat, rural areas, since it may result in the misclassification of taller objects—such as utility towers, vegetation, and portions of buildings—as ground.
LowNoise—The distance below the ground that will be used to classify the point to be low-noise points. The unit is meters. The default value is 0.25 meter.
HighNoise—The distance above the ground that will be used to classify the point to be high-noise points. The unit is meters. The default value is 100 meters.
ReuseGround—Specifies whether existing ground points will be reclassified or reused. A value of 0 specifies reclassify, and a value of 1 specifies reuse. The default value is 0.
ReuseLowNoise—Specifies whether existing low-noise points will be reused or reclassified. A value of 0 specifies reclassify, and a value of 1 specifies reuse. The default value is 0.
ReuseHighNoise—Specifies whether existing high-noise points will be reused or reclassified. A value of 0 specifies reclassify, and a value of 1 specifies reuse. The default value is 0.
Value table columns:
|
Value Table
|
Code sample
InterpolateFromPointCloud example 1 (Python window)
This is a Python sample for the InterpolateFromPointCloud function that creates a DTM after reclassifying the ground.
# Import system modules
import arcpy
# Run InterpolateFromPointCloud
arcpy.management.InterpolateFromPointCloud(in_container=r"C:\data\LASFoler", out_raster=r"C:\data\dtm.crf", cell_size=0.2, interpolation_method="IDW", smooth_method="GAUSS5x5", surface_type="DTM", fill_dem=None, options="Classify standard;LowNoise 0.25;HighNoise 110;ReuseGround 0;ReuseLowNoise 1;ReuseHighNoise 1")
InterpolateFromPointCloud example 2 (stand-alone script)
This is a Python sample for the InterpolateFromPointCloud function that creates a DSM.
# Define input parameters
import arcpy
in_container="C:/data/LASFoler"
out_raster="C:/data/dsm.crf"
# Run InterpolateFromPointCloud
arcpy.management.InterpolateFromPointCloud(in_container, out_raster, 0.2, "TRIANGULATION", "GAUSS5x5", "DSM")
InterpolateFromPointCloud example 3 (stand-alone script)
This is a Python sample for the InterpolateFromPointCloud function that creates a DSM in cloud storage.
# Define input parameters
import arcpy
in_container="C:/data/LASFoler"
out_raster="C:/data/Azure.acs/ProductFolder/dsm.crf"
# Run InterpolateFromPointCloud
arcpy.management.InterpolateFromPointCloud(in_container, out_raster, 0.2, "TRIANGULATION", "GAUSS5x5", "DSM")