Coder Social home page Coder Social logo

sar_filter's Introduction

Speckle reduction of SAR images

// Kristian Aalling Sørensen - 2017.

Content:

  • Introdution to speckle
  • Implemented fitlers
  • Description and illustration
  • Link to the original report with code, background, results and analyses.

Speckle noise inherent in SAR images weakens the meaningful applications of the SAR. The reduction of the speckle noise is implemented, leading to actual filtering algorithms, based on the early propositions for speckle filtering. To evaluate the performance of the different algorithms, several parameters are introduced. All parameters are based on statistical theory and should be well known within the field. The only exception is the EQP developed by the author to quantify the quality of the edges after a speckle filtering(using an edge detection).

In addition to the parameters, the analysis builds on the visual interpretation of the SAR images. Conclusively, the Lee-filter turns out to be superior to the others in terms of speckle reduction and edge preservation, having only a slight disadvantage in dealing with close targets.

Here, filters useful for all types of SAR images are devloped. The fitlers are not assuming that the SAR images are e.g. Sentinel-1. The filters themselves calculate all the neccesary statistics etc. to fully function.

The report was made on my second year of University, and I apologize for the quality of the plot. Still, I hope it is useful.

MATLAB-Speckle-reduction

Severeal different speckle filters are implemented using Matlab to reduce the noise for different types of applications. The filters are not implemented using Matlab inherent functions (like e.g. its kernel function), and can therefore be directly translated to other languages like Python.

Implementations:

The following filters have been developed:

-Mean filter.

-Frost filter.

-Modified frost filter(added thresholds).

-Lee filter(Using Masks, ENL ect).

Note these fitlers are developed without the use of loops in Matlab.

Furhter, a simple sobel edge detection algorithm is implemented ledning to and edge quality paramter.

Description:

SAR images have a phase and amplitude. Below, a Sentinel-1 SAR VV GRD IW image aquired over Denmark is displyed. 6 Different regions are highlighted.

Alt text

Due to the inherent speckle in SAR images, speckle reductions must often times be computed. Speckle reduciton can (in general) only be performed on homogenous regions, such as e.g. region 1, region 2 or region 3. If edges occur in images, adaptive speckle reduction must be perfomed as to perserve the edges. Below, a speckle filtering has been done on region 5 (two fields). To the left, we see the origial image being "granular" - this is speckle. We then then see the different filters implemented (the implementation are shown in frost.m etc.). The box filter performs poorly at the edges.

Alt text

Visually, the Lee filter outperforms the others. Below, we can more clearly see how the Lee filter outperform the other fitlers, both with spckle filtering and with edge filtering. It is here clear to see the edge is sharper for the Lee filter, while the homogenous region is speckle filtered.

Alt text

Inhomogeneous areas

Below, a speckle filtering and edge detection has been performed on an inhomogenuous region (region 6, a large city), with different theresholds. For information on the thresholds, see the report below.

Alt text

It is clear to see that the speckle filtering performs poorly on inhomogenous regions. In fact, this is due to the so-called "Equivalent Number of Looks" (ENL). For the Sentinel-1 IW GRP Images (used here), the images have been averaged on average 4.4 times. This statistics is in fact computable from the different regions for both polarisations, as shown below. Here, we see that region 1,2 and 3(homogeneous) have statistics comparable to the true ENL. The inhomogenuous does not.

Alt text

In the report "Speckle reduction of SAR images", we saw why the Lee filter outperformed the other filters. Still, a trade-off must be made as this is computationally more expensive than the others, see the figure below:

Alt text

Report with code

For motivation or information of the filters, see:
https://drive.google.com/file/d/1UXcGZB0k54sjeEiX6oCoyUhCtHtZ0CMQ/view?usp=sharing

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.