Denoising Sentinel-1 Radar Images with Neural Networks

Dheeptha Badrinarayanan
3 min readDec 18, 2018

--

ESA’s Sentinel-1 carries a Synthetic Aperture Radar (SAR), an active remote sensing approach that can provide us with data at all times of day, under all weather conditions when other optical satellite systems prove inadequate. SAR allows for penetration through clouds, precipitation and dense vegetation depending on wavelength. Figure 1 shows an example SAR image.

Figure 1 An example Sentinel-1 VV band image

The downside? SAR data comes with speckle noise. Reducing this noise is necessary for further processing, visualization, or manipulation of the SAR data. One of the existing popular image processing techniques to remove speckles is the Lee filter. This despeckling filter uses a window to scan the image with stride = 1 pixel and the despeckled value of the pixel is found at the center of the window. Figure 2 shows a baseline output of denoised SAR image obtained using a Lee filter.

Figure 2 A baseline prediction using Lee filter with window size = 5 and variance = 0.5

Lee filtering clearly offers a promising baseline with the above-stated settings. However, there seems to be an evident trade-off between noise and blur. Gaussian smoothing, another method of removing noise, also presents the same problem. The images tend to appear more blurry as we try to make them less noisy. We moved to deep learning techniques to improve the results.

Convolutional Neural Networks (CNNs) are a class of machine learning models loosely based on the human visual system. We trained a new CNN take in noisy SAR images and automatically produce images with the noise removed. The major challenge was the lack of corresponding noise-free samples to train the model in a supervised manner. However, according to ‘Noise2Noise: Learning Image Restoration without Clean Data’, denoising should be possible with supervised training despite not having noise-free targets, provided the expectation of target distribution matches with the expectation of true labels. More specifically, the model was trained on noisy image tiles captured at the same location at two different nearby points in time.

The model was a simple CNN with a tailored architecture that performed regression on the input SAR images to remove speckles. The model used alternating upsampling and downsampling layers to extract the more salient features while maintaining the output resolution. It was kept relatively simple to prevent overfitting on the training image data.

The following figure gives an insight into one of the predictions obtained from the trained model. The noise distribution is indeed representative of the multiplicative speckle noise!

Figure 3 An example output from our CNN model using the noisy test image

We used these denoised images in a method that combines Sentinel-1’s VV and VH bands to make color images. Figure 4 shows a comparison between outputs obtained using Gaussian filter and our CNN model. The image obtained using CNN is less blurry while still having low noise!

Figure 4 Comparison between outputs from Gaussian filter and our CNN model

Next up, we’ll be using these denoised images as a part of our real-time change detection models and much more!

--

--