You can automatically label and extract data from LiDAR point clouds using the Learn module of ArcGIS API for Python. This is possible because the Learn module now includes the ready-to-train PointCNN neural network. You can easily train PointCNN to detect the objects your organization requires.
At this year’s Developer Summit, Dmitry Kudinov demonstrated how to use a PointCNN model. He completed the workflow he earlier described in the blog PointCNN: replacing 50,000 man hours with AI but, this time, he used ArcGIS API for Python to achieve similar results with streamlined coding and data processing.
Dmitry trained the PointCNN model to detect and label wires and utility poles in an airborne LiDAR point cloud. Previously, this was the most labor-intensive part of identifying the electric utility line’s safety corridor for monitoring vegetation and encroachments.
You can watch the presentation below. Following that is a summary of the process and links to additional resources.
The process starts with the raw LiDAR point cloud as seen below.
Next, train the PointCNN model to detect utility wires and poles.
The next image shows the utility lines and poles generated by the PointCNN model (on bottom) compared to the lines and poles labelled manually (on top). Manual labels took thousands of hours to create, whereas the PointCNN model completed in a few minutes.
See these resources for information on using ArcGIS API for Python: