A non-transitory computer-readable medium comprising executable instructions, the executable instructions being executable by one or more processors to perform a method, the method comprising:
- receiving multiple images for a geographic area, the geographic area including multiple electrical assets of a power distribution infrastructure, a pixel of an image of the multiple images having one or more intensity values;
- classifying, using one or more convolutional neural networks, at least some pixels of each image of at least some of the multiple images as hazard tree pixels or as non-hazard tree pixels, wherein classifying the at least some pixels as hazard tree pixels or as non-hazard tree pixels is based on the one or more intensity values of each pixel of the at least some pixels, a hazard tree being a tree or vegetation that is dead, unhealthy, or that has structural or other material defects, wherein classifying, using the one or more convolutional neural networks, the at least some pixels as hazard tree pixels or as non-hazard tree pixels includes:
- generating multiple probability data structures by processing the multiple images using the one or more convolutional neural networks, a probability data structure of the multiple probability data structures corresponding to an image of the multiple images and including, for each pixel of the at least some pixels of the image, a probability value that indicates a probability that the pixel is a portion of one or more hazard trees;
- and
- generating multiple classification data structures based on the multiple probability data structures, a classification data structure corresponding to an image of the multiple images and including, for each pixel of the at least some pixels of the image, a classification of the pixel as a hazard tree pixel or as a non-hazard tree pixel, wherein generating the multiple classification data structures based on the multiple probability data structures includes, for each probability data structure of at least some of the multiple probability data structures:
- for each probability value of at least some of the probability values in the probability data structure:
- comparing the probability value to a threshold value;
- if the probability value is equal to or greater than the threshold value, classifying the pixel corresponding to the probability value as a hazard tree pixel;
- and
- if the probability value is less than the threshold value, classifying the pixel corresponding to the probability value as a non-hazard tree pixel;
- and
- generating a classification data structure that includes, for each pixel of the at least some pixels of the image, the classification of the pixel as a hazard tree pixel or as a non-hazard tree pixel;
- generating, based on at least some hazard tree pixels, multiple polygons, a polygon of the multiple polygons corresponding to one or more hazard trees in the geographic area;
- and
- for at least a particular polygon of the multiple polygons:
- determining a height for the particular polygon;
- determining a distance from the particular polygon to a particular electrical asset of the multiple electrical assets;
- determining, based on the height and the distance, that one or more particular hazard trees corresponding to the particular polygon are a potential hazard to the particular electrical asset;
- generating a notification of the potential hazard to the particular electrical asset;
- and
- providing the notification of the potential hazard to the particular electrical asset.