ArcGIS Pro

Dev Summit 2021: Pre-Trained Models in ArcGIS

In this demonstration, Saranya M from Esri India reveals how they used AI to extract railway assets (e.g., powerlines, poles, railway track and cantilever) and their dimensions from point cloud for their client, L&T NXT. L&T was working on one of India’s largest railway projects where they observed that during field inspections manually measuring the dimensions of railway assets was both time consuming and susceptible to human error. They approached Esri India to design an end-to-end workflow to classify these point clouds and extract the dimensions, for the trains to run safely.  

They decided to use the “Powerline Classification Model” which is a pre-trained model available on ArcGIS Living Atlas. Even though this model was trained on electric wires and poles, it gave very good results for the classification of railway poles and powerlines too.

L-R: Input point cloud data, features classified using pre-trained model, features classified with transfer learning


But since the goal was to obtain extremely precise dimensions in the interest of safety, Saranya explains how they achieved it with transfer learning, which is a field of machine learning that applies the knowledge gained from solving one problem to another similar problem. Fine-tuning the pre-trained model helped save time, cost and computational resources. As verified by their team, the process also resulted in improved precision and recall by a substantial margin as compared to what would have been achieved if the model was trained from scratch. Fine tuning the pre-trained models not only helps in saving time & resources but also helps in achieving better results than what would have been achieved had the models been trained from scratch.

She then demonstrates through Jupyter notebooks in ArcGIS Pro how a small subset manually labelled data was used to fine-tune their pre-trained model. They also trained a new model from scratch to classify the objects that were not supported by the Powerline Classification Model, i.e., the railway tracks and the cantilevers. As we see below, the outputs from these two models were combined using the functionalities of selective classification and class preservation, which are available in the ArcGIS API for Python

L-R: output from the fine-tuned model, output from the new model, combined output created using new functionalities in the API

After successfully classifying all their data, they used the ModelBuilder framework in ArcGIS Pro to automate the dimension extraction process by bringing in several geoprocessing tools such as density based clustering, minimum bounding volume, zonal statistics. This provided dimensions of railway assets such as pole heights, centerline geometry of the railway track, catenary height and contact height, and even complex measurements such as top fitting and bottom fitting. And the best part about it? All their extracted measurements matched those of the railway assets. 

The model builder framework to automate dimension extraction

Additional Resources: 

About the author

Product Engineer - Applied Data Science with ArcGIS API for Python (previously ArcGIS Hub). Or in other words, a (Data, Maps, Analyses, Python, Books) Nerd.

Notify of
Inline Feedbacks
View all comments

Next Article

Getting to Know the Geoprocessing Synthetic Aperture Radar Toolset

Read this article