An adaptive multispectral image fusion using particle swarm optimization is the paper for this MATLAB code.
This code provides the fusion of PANchromatic (PAN) and MultiSpectral (MS) images using the Particle Swarm Optimization (PSO) algorithm. The steps for fusion is as follows:
1) Loading the dataset from its path
2) Pre-processing steps including downsampling and normalization
3) Initialization of PSO algorithm
4) Obtaining the primitive detail map for each spectral band
5) Extracting the edge detectors for PAN and MS images
6) Fine-tuning the gains of edge detectors using PSO algorithm
For the purpose of optimizing the gains of edge detectors, the ERGAS metric is minimized. This metric is one of the widely used metrics for the objective evaluation of fusion results.
First you need to specify the path of your dataset. For example:
addpath QuickBird_Data
The Main_PSO.m is the main framework of the proposed fusion framework. The pre-processing steps as well as the obtaining fusion outcome is put into this M-file. The ERGAS_Index.m and ERGAS.m files are used for the purpose of optimization. The optimized gains of edge detectors are computed as the output of of PSO algorithm.
To run the code, in the command window use this:
Main_PSO.m
For objective assessment of the fusion result, first add the path of objective metric. For example:
addpath Objective_Evaluation
The MS, PAN and pansharpened result of the QuickBird dataset from Sandarbans, Bangladesh.
If you find this code helpful, please cite this paper:
A. Azarang and H. Ghassemian, "An adaptive multispectral image fusion using particle swarm optimization," in Proc. Iranian Conf. Elec. Eng. (ICEE), May 2017, pp. 1708-1712.
If you have any question regarding the paper, codes and so on, do not hesitate to contact me.
Arian Azarang [email protected]