Drone vision AI system was developed and applied for detecting cracks on the roads and streets. Instead of traditional methods of recording camera footage on the cloud first and then analyzing it for cracks, this real time AI system uses advanced image processing techniques and path finding algorithms to determine cracks pixel-by-pixel basis.
The drone camera footage is extracted into frames and pre-processed using a variety of OpenCV image filters such as local mean, gaussian bilateral blurring, and other morphological transformations. Once pre-processed, the image is then processed for minimum cost paths based on gray scaled pixel intensity. This allows cracks or segments of dark discolorations to be connected via paths on a pixel by pixel level. These detections can then be output and overlaid on the original footage to outline detected cracks. These paths are computed using partitioned regions of images, with the pixels of highest intensity in these regions designated as crack points. Then using a minimum cost function or path finding algorithm such as Dijkstra’s, these crack points can be connected to other pixels with similar intensities to determine the path and shape of detected cracks.
Cracks are detected reasonably accurately with much less effort than is typically required using manpower. Typically a 1920×1080 frame takes less than 10 seconds to process. To increase real-time performance, the machine learning algorithms are optimized for NVIDIA Jetson Xavier processor to process the footage on board the drone. The performance has been further increased by parallelizing the required processing using CUDA. The detected cracks is further classified based on desired metrics and used to provide estimation of required repairs, materials, and costs.