Super-resolution and removing objects in satellite images

Super-resolution and removing objects in satellite images

The goal of this project was to make accesible satellite data easier to work with by removing unecessary objects and by increasing the resolution.


satellite imagery is a useful type of data and well suited for machine learning. in this project, our goal was to improve the quality of images from accessible satellites.


satellite imagery

Satellite images are an exciting type of data for machine learning. There are several practical applications such as monitoring for deforestation, creating maps, detecting new buildings, etc. However, accessible satellite data often have low resolution and can be hard to use. Also, it's common with unnecessary objects such as cars that make them less clear.


approach and results

The algorithm we created used a standard U-net architecture. We took high-resolution satellite images, reduced the quality, and had the algorithm trying to recreate the original image. Here's a before and after image.


removing cars

To train the algorithm, we take a satellite image, remove random parts of the image, and let the first algorithm (the generator) to fill in the missing information. We then pass both the input and the output to the second algorithm (the discriminator) that tries to separate real from fake. In other words, the generator tries to fool the discriminator by creating something that looks real. Next, we combined the in-painter with standard object detection to remove specific object, like cars:

Similar applications

You can use the exact same solution to do super-resolution or in-painting for another domain, such as fashion. Just replace the dataset with the images you want.

If you have something similar in mind, schedule a meeting, and let’s talk!

other projects