Swimming pool detection and classification using deep learning

Divyansh Jha
Jul 18, 2018 · 15 min read
Presentation at Esri UC 2018 plenary

The Problem

ArcGIS Pro showing residential parcels with pools highlighted in blue. Note that some parcels with pools are missing, indicating outdated data. The goal of this project was to identify all such parcels.
Clean and Green pools in a neighborhood

Creating training data

ArcGIS Pro includes tools for labeling and exporting training data

Training deep learning models

SSD architecture (Source: Wei Liu)


Which Bands to Use?

Results of initial model trained on RGB bands from NAIP imagery.
Results of the model trained on NDVI bands from NAIP imagery.
NAIP Color Infrared Imagery of Redlands
Results of the model trained on infrared bands from NAIP imagery.


Pool detection in 700m x 700m area of Redlands
source: tensorflow website
The mechanism of inner cropping.

Non-Max Suppression on Maps

Effect of non-max suppression visualized on Esri World Imagery Basemap

Using GIS to suppress false positives

Detected pools within residential parcels

Identifying parcels with unassessed pools

The red parcels are the ones that are not being correctly assessed for having a pool, based on our data
Result in the webmap

Clean or Green?

Augmented green pools
Detected green pools.

Distributed inferencing


Web map with results of pool detection. See http://arcg.is/0r0HKP for an interactive version.
Image Visit app to enable visual inspection of neglected pools detected by deep learning model.
Pool inspection assignments for field workers in Workforce for ArcGIS


Geospatial Artificial Intelligence: thoughts about where AI and GIS intersect

Thanks to Aniket Biswas.

Divyansh Jha

Written by

Machine Learning and Deep Learning Enthusiast. Data Scientist @Esri



Geospatial Artificial Intelligence: thoughts about where AI and GIS intersect