Cloud shadow removal software for aerial imaging and photogrammertyWe do have some problems with cloud shadows on captured images in aerial imaging and photogrammetry. Clouds intersect with the sun's rays, casting their shadows onto the landscape below. This is unavoidable, so we often end up with images like this, and we need to remove the shadows to prepare the data for mapping and 3D visualization. What is the standard method for removing cloud shadows in image processing? Typically, we need to create a mask and apply a filter to a specific area of the image, such as the shadowed region. Alternatively, we need to isolate objects that should not be affected by the filter. That could be done within different layers as well. Still, this is a manual approach and it's very slow and imprecise. Additionally, shadows often lack pronounced boundaries, making it difficult to define the mask and apply it seamlessly to the image later on. Our approach is based on classic image processing ideas; in our Aerial Clarity algorithm we don't apply any machine learning (ML) or artificial intelligence (AI). This algorithm is particularly suitable for soft shadows where an explicit boundary may not be present. This is common in aerial and photogrammetry images, which often require shadow removal prior to further processing. We expect that parallel computations on the NVIDIA GeForce RTX 4090 would offer performance in the range of 5-7 GPix/s or more for 16-bit RGB images with high resolutions, which is not feasible for any AI-based system. It's important to note that this algorithm is only applicable to soft cloud shadows. It is not intended to suppress deep shadows. The picture below shows an example of soft shadows and the result of the processing.
![]() Source JPG image is on the left (100 MPix, Phase One camera iXM-100MP), the result of processing with Aerial Clarity algorithm is on the right Key Issues
Classic vs AI-based Shadow RemovalUnlike machine learning approaches which require training data and often struggle with generalized shadow types, this classic computer vision approach relies solely on pixel-level image characteristics, statistics and deterministic filtering. This results in:
AI-based shadow removal, while potentially more flexible, often requires extensive training and may struggle to generalize to unseen scenes or shadow types. For large-scale aerial and photogrammetry applications where speed and robustness are critical, classic methods provide an efficient solution. Software Features
Performance Benchmarks for Cloud Shadow Removal algorithm
Roadmap
|