How to eliminate cloud shadows in aerial imaging and photogrammertyWe have some problems with shadows from the clouds in the images taken from the air. Clouds intersect with the sun's rays, casting shadows onto the landscape below. This is unavoidable, so we often end up with images like this. We need to remove the shadows to prepare the data for mapping and 3D visualization. What is the best way to get rid of shadows in clouds in image editing? Usually, we need to create a mask and apply a filter to a specific area of the image, like the shadowed region. We also need to separate the objects that should not be affected by the filter. You can do that in different layers too. However, this is a manual approach, which is slow and imprecise. Also, shadows often have unclear edges. This makes it hard to define the mask and apply it to the image. Our approach is based on classic image processing ideas, without machine learning (ML) or artificial intelligence (AI). This algorithm works well with soft shadows, especially when there isn't a clear edge. This is common in images taken from the air and in images made from photographs. These images often need to have shadows removed before other processing. We expect that computations on the NVIDIA GeForce RTX 4090 would offer performance of 5-7 GPix/s or more for 16-bit RGB images with high resolutions. This is not possible for any AI-based system. This algorithm is only for soft cloud shadows. It's not meant to remove deep shadows. The picture below shows an example of soft shadows and the result of the processing. ![]() Source JPG image is on the left, the result of Aerial Clarity is on the right Main Points
Algorithm OverviewThe cloud shadow suppression involves these main steps:
Classic vs AI-based Approach for Shadow RemovalMachine learning approaches need training data and often struggle with generalized shadow types. This classic computer vision approach uses only pixel-level image characteristics, statistics and deterministic filtering. This results in the following:
Therefore, it is a good choice for real-time or very large-scale aerial and photogrammetry applications where speed and reliability are important. Roadmap
|