Built a Computer Vision engine to detect anomalies (darker or lighter spots) in thermal photos of solar batteries, which are essentially matrices of panels. OpenCV is used for image preprocessing and extraction of the panel contours. After that, anomaly detection is performed for each of the panels using the Kaze detector.
A solar energy company from the United Kingdom.
Solar panels are gaining more popularity in various sectors thanks to the benefits they offer. They reduce ever-rising electricity costs and help protect the environment. Despite being easy to maintain, solar panels wear out due to weather and mishaps. The silicon semiconductors react to the temperature and humidity changes and can degrade even with regular cleaning.
Our client faced the problem of having to inspect many solar panels and watch their electrical input regularly to avoid failures. It can be quite a daunting task, especially since they had plenty of them to observe.
As the size of the image dataset was small and unlabeled, we decided to proceed with classical Computer Vision methods. With a larger and labeled dataset, a simple object detection model would be suitable for this case. The main challenge would be to distinguish real failure cases from other possible sources of occlusion (e.g. a bird flying over) and from a small light square that each cell has that can be confused with a failure. Given enough variable data, this would be learned automatically, maybe requiring some handcrafted heuristic result postprocessing.
Nevertheless, the solution was designed to consist of four stages. All parameters were selected for the particular combination of image size and image quality and might be adapted if any of these changes.
Applied to the entire solar panel image:
For each solar panel crop:
For each detected solar cell:
Detecting anomalies:
The customer provided a small dataset of both RGB and radiometric thermal images. The dataset was not labeled, so there was no opportunity to train a supervised object detection model on it.
The client especially emphasized that they want to detect real failures, not the cases when something/someone (e.g. a bird) occupies some region of solar panels.
Everything was developed and run on a MacBook Air laptop on CPU inference.
CPU: 1,6 GHz Dual-Core Intel Core i5
Memory: 8 GB 1600 MHz DDR3
Our automated AI engine for solar panel monitoring provided the following benefits for the client: