Label | Explanation | Data Type |
Input Point Cloud
| The classified LAS dataset, point cloud scene layer package, or point cloud I3S service that will be used to detect objects. | LAS Dataset Layer; Scene Layer; File |
Class Codes To Extract
| The class codes that will be processed to identify objects. A common group ID can be assigned to merge multiple class codes into the same object. | Value Table |
Clustering Distance
| The three-dimensional distance that will be used to identify the points that belong to the same object. | Linear Unit |
Output Object Features
| The output objects whose feature geometry may be point, polygon, or multipatch based on the Output Geometry Type parameter value. | Feature Class |
Output Geometry Type (Optional) | Specifies the type of geometry that will be created for each object. The specified type will determine whether the objects will be represented as points, polygons, or multipatch features.
| String |
Minimum Number of Points
(Optional) | The minimum number of points that an object must have for it to generate an output. The default value is 10. | Long |
Summary
Extracts distinct objects from a classified point cloud into point, polygon, or multipatch features.
Illustration
Usage
This tool uses a clustering distance to establish which points belong to the same object. If multiple class codes can potentially represent the same object, assign a common group ID that will link the class codes during the clustering operation. For example, a large tree may have points assigned with class codes of 3, 4, or 5. The three class codes can be assigned a common group ID to ensure that the tree is properly identified.
Extracting objects offers a quantifiable dataset that can be used to create an asset inventory that can be visualized in a map or scene. 3D shapes produced by this tool can aid in making visibility or shadow impact assessments. Simplified geometric representations can also provide a useful cartographic abstraction for visualizing objects in bulkier point clouds.
Use the Minimum Number of Points parameter to eliminate small, invalid objects created from small clusters of points.
The output features will have the following attributes:
- ObjectCode—The class code or group ID used to identify the object type
- COUNT—The number of points that are associated with the object
The following attributes are only added for polygon geometry types:
- MIN_Z—The lowest z-value of the points that belong to an object
- MAX_Z—The highest z-value of the points that belong to an object
Additional attributes such as surface area, volume, and average slope, as well as other properties can be computed using the Add Z Information tool.
Parameters
arcpy.ddd.ExtractObjectsFromPointCloud(in_point_cloud, class_codes_to_extract, clustering_distance, out_features, {geometry_type}, {min_points})
Name | Explanation | Data Type |
in_point_cloud | The classified LAS dataset, point cloud scene layer package, or point cloud I3S service that will be used to detect objects. | LAS Dataset Layer; Scene Layer; File |
class_codes_to_extract [class_codes_to_extract,...] | The class codes that will be processed to identify objects. A common group ID can be assigned to merge multiple class codes into the same object. | Value Table |
clustering_distance | The three-dimensional distance that will be used to identify the points that belong to the same object. | Linear Unit |
out_features | The output objects whose feature geometry may be point, polygon, or multipatch based on the geometry_type parameter value. | Feature Class |
geometry_type (Optional) | Specifies the type of geometry that will be created for each object. The specified type will determine whether the objects will be represented as points, polygons, or multipatch features.
| String |
min_points (Optional) | The minimum number of points that an object must have for it to generate an output. The default value is 10. | Long |
Code sample
The following sample demonstrates the use of this tool in the Python window.
import arcpy
arcpy.env.workspace = r"C:/GIS_Data"
arcpy.ddd.ExtractObjectsFromPointCloud("Terrestrial_Scan.lasd", [(4, 5), (5, 5)],
"60 Centimeters", "Trees.shp",
"CONCAVE_HULL_2D", 50)
Environments
Licensing information
- Basic: Requires 3D Analyst
- Standard: Requires 3D Analyst
- Advanced: Requires 3D Analyst