A Neuro-Fuzzy Inference System designed to despeckle SAR images
The following are the application specific Hardware requirements
- CPU
- Higher core count (6 recommended): The program has been written with CPU parallelization in mind, and a higher core or thread count would significantly reduce the runtime of the program.
- Higher Frequency: Helps with reducing execution times
- Memory/RAM
- Higher Capacity (16GB Recommended): Since source SAR images are large, owing to their huge resolutions, and the need to have the entire image loaded onto the system’s memory during runtime, a moderate amount of RAM is required to sustain the program
- MATLAB (Written in 2020a)
- Fuzzy Logic Toolbox (Default Add-on)
- MEX (setup and configured)
- LibTiff Library (Installed)
- C / C++ compiler (like MinGW) [optional]
- To optimize for the memory and CPU usage, part of the MATLAB executable code have been converted to native C/C++ code using MATLAB’s MEX system, and therefore, to take advantage of the improved speed and optimizations, a compatible C/C++ compiler is necessary.
- Results in much faster execution times
- Ensure than MEX has been configured to use a compatible C / C++ compiler
- Run the 'run_driver.bat' or 'run_driver.sh' depending on your Operating System.
- Choose an Input SAR image (Preferred format: GeoTiff)
- Choose a FIS
- Those designed as part of this project can be found under 'build/FIS'
- For best results use 'sugeno_5.fis'
- Those designed as part of this project can be found under 'build/FIS'
- Choose the Output Directory, where the output image is to be placed.
- Wait patiently for the process to complete.
- A 1000x1000 image takes roughly 60 seconds on a 6-core machine
- The input image will be processed and be placed in the chosed Output Directory, with 'out_' prefix.
- The output will be in GeoTiff format, and therefore uses LibTiff Library
- A good tool to visualize the output will be QGIS