Automated rooftop solar panel detection through Convolutional Neural Networks
Year 2023Â
Author(s)Â Simon Pena PereiraÂ
Â
ML Tags
Convolutional Neural Networks
U-Net
Topic Tags
Remote Sensing / Object Detection
> Software & Plug-ins UsedÂ
QGIS, GDAL plugin, and R for generating and processing data                                                                 Â
Python using TensorFlow and Keras library for data processing and for constructing the CNN in a Google Colab-Notebook
Google Earth Engine using JavaScript for post-processing
> Workflow
Thesis Report Figure 3.1: Overview of workflow
> Summary
This thesis attempts to construct a semantic segmentation model that recognizes PV systems in aerial photos to stress the importance of area-specific properties for training data and CNN hyperparameters. The thesis also investigates the effects of land use type, rooftop color, near-infrared data, and low-resolution images on detecting PV panels. The Convolutional Neural Network (CNN) uses the U-Net architecture.
The CNN computes the semantic segmentations of images. The inputs of the CNN are the aerial images which were manually labelled to indicate which regions represent PV panels.
The steps followed to train the CNN are:
Selection of an area of interest using QGIS
Collection of ground truth data using QGIS by manually annotating PV panels with high accuracy to be used as training data for the CNN
Processing the ground truth data and aerial images of the same area so that the ground truth tags are overlaid unto the image
Defining the dimensions of input patches according to the U-Net architecture and spatial resolution
Splitting data into training, validation, and testing data sets
Augmentation of patches
Grouping augmented data sets into batches and defining a fixed number of iterations to run the model
Utilization of U-Net architecture allowing training the model on few batches
The steps followed to evaluate the prediction of PV panels:
After training a model for each area to learn area-specific properties, perform a semantic segmentation for each area respectively
Conduct a performance evaluation of the U-Net based on the testing data set
Visual and quantitative interpretation of the semantic segmentation and the corresponding reflectance values in the aerial images
LIMITATIONS: Due to the manual collection of ground truth data, there was a small amount of input data used for training. It is not clear what the impact of random weights is on the learning process when compared to the use of pre-trained weights.
> Additional Visuals
Thesis Report Figure 5.4: Detection of black PV panels in suburbs
> Possible Applications
For ideas on how to implement some of the above mentioned techniques, please see
‘Possible applications for students to try with Convolutional Neural Networks’