Summary
Creates new LAS files that contain a subset of LAS points from the input LAS dataset.
Usage
Consider using this tool on over-sampled LAS data—such as photogrammetrically derived point clouds and returns from multiple overlapping lidar scans—to optimize display performance and speed up analysis operations. In mobile lidar surveys, extremely dense point returns can be captured due to the variation of the speed and movement pattern of the lidar sensor. Thinning can help create consistent density across the survey, which can help improve the result of certain automated classification routines that rely on regularly spaced point returns.
Consider preserving class codes that represent sparsely captured objects, particularly if the number of points with that class code designation represent a small fraction of the total number of points. For example, if you have points representing sparsely captured features, such as powerlines, preserving them can provide a useful context about its spatial arrangement that would otherwise be lost if those points were thinned.
Each LAS file is thinned independently from the other LAS files referenced by the LAS dataset. If the LAS files have overlapping data, consider merging them into nonoverlapping tiles to achieve uniform distribution of data by merging the points through the Tile LAS tool.
Each input LAS file will generate an output file with a name that matches the input unless a name suffix is specified in the Output File Name Suffix parameter.
Syntax
arcpy.ddd.ThinLas(in_las_dataset, target_folder, thinning_dimension, xy_resolution, {z_resolution}, point_selection_method, {class_codes_weights}, {name_suffix}, {out_las_dataset}, {preserved_class_codes}, {preserved_flags}, {preserved_returns}, {excluded_class_codes}, {excluded_flags}, {excluded_returns}, {compression}, {remove_vlr}, {rearrange_points}, {compute_stats})
Parameter | Explanation | Data Type |
in_las_dataset | The LAS dataset to process. | LAS Dataset Layer |
target_folder | The existing folder that the output LAS files will be written to. | Folder |
thinning_dimension | The type of thinning operation that will be conducted.
| String |
xy_resolution | The size of each side of the thinning tile along the x,y-axis. | Linear Unit |
z_resolution (Optional) | The height of each thinning region when using the 3D thinning method. | Linear Unit |
point_selection_method | The method used to determine which points are retained in each thinning region.
| String |
class_codes_weights [class_codes_weights,...] (Optional) | The weights assigned to each class code that determine which points are retained in each thinning region. This parameter is only enabled when the Class Code Weights option is specified in the Point Selection Method parameter. The class code with the highest weight will be retained in the thinning region. If two class codes with the same weight exist in a given thinning region, the class code with the smallest point source ID will be retained. | Value Table |
name_suffix (Optional) | The name added to each output file. | String |
out_las_dataset (Optional) | The output LAS dataset referencing the newly created LAS files. | LAS Dataset |
preserved_class_codes [preserved_class_codes,...] (Optional) | The input LAS points with the specified class code values will not be thinned from the output LAS files. | Long |
preserved_flags [preserved_flags,...] (Optional) | The input LAS points with the specified class flag designations will be preserved in the output LAS files.
| String |
preserved_returns [preserved_returns,...] (Optional) | The input LAS points with the specified returns will be preserved in the output LAS files.
| String |
excluded_class_codes [excluded_class_codes,...] (Optional) | The input LAS points with the specified class code values will be excluded from the output LAS files. | Long |
excluded_flags [excluded_flags,...] (Optional) | The input LAS points with the specified class flag designations will be excluded from the output LAS files.
| String |
excluded_returns [excluded_returns,...] (Optional) | The input LAS points with the specified returns will be excluded from the output LAS files.
| String |
compression (Optional) | Specifies whether the output LAS file will in a compressed format or the standard LAS format.
| String |
remove_vlr (Optional) | Indicates whether variable length records stored with the input LAS points will be preserved or eliminated in the output LAS data.
| Boolean |
rearrange_points (Optional) | Indicates if LAS points will be stored in spatially organized clusters.
| Boolean |
compute_stats (Optional) | Specifies whether statistics should 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, like classification codes and return information, to values that are present in the LAS file.
| Boolean |
Derived Output
Name | Explanation | Data Type |
output_folder | The folder with the output LAS files. | Folder |
Code sample
ThinLas example 1 (Python window)
The following sample demonstrates the use of this tool in the Python window.
arcpy.env.workspace = 'C:/data'
arcpy.ddd.ThinLas('photogrammetric_cloud.lasd', 'thinned', '3D',
'20 Centimeters', '15 Centimeters', 'Z_AVERAGE',
excluded_flags='WITHHELD', rearrange_points='REARRANGE_POINTS')
Environments
Licensing information
- Basic: Requires 3D Analyst
- Standard: Requires 3D Analyst
- Advanced: Requires 3D Analyst