Hyperspectral unmixing and denoising

Demo of hyperspectral unmixing in the presence of mixed noise.

Vous suivez désormais cette soumission

Thank you for downloading our code for hyperspectral unmixing and denoising.
--------------------------------------------------------
What this code do:
This code demonstrates Hyperspectral unmixing algorithm when the image is contaminated by mixed noise.
This code also reduces noise. Noise can include line strips, Gaussian noise, and impulse noise.
It solves following optimization problem :
min_A,S ||Y-MA-S||_F^2 + lamda1*||Dh*A'||_2,1 + lambda1 *||Dv*A'||_1 + lamda2 ||S||_1 + lambda3 ||A||_{2,1}
M : mixing matrix. It is the matrix containing spectral signatures of endmembers;
Y : Noisy hyperspectral image. This is the image sent to the ​unmixing algorithm.
A : Abundance matrix.
S : sparse noise. It represents impulse noise as well as line strips.
Dh, Dv : Two-dimensional horizontal and vertical finite difference operators.
------------------------------------------------------------------------
Reference Paper

Hyperspectral Unmixing in the Presence of Mixed Noise using Joint-Sparsity and Total-Variation
by Hemant Kumar Aggarwal, Angshul Majumdar, in IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing (JSTARS), 2016
IEEExplore link : http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=7414394

Paper PDF is available from author's homepage for academic/personal use only.
Homepage link : https://www.iiitd.edu.in/~hemanta/

-----------------------------------------------------------------------------------
How to Run this code:

Put both the files in the same folder and just run the "demo.m" file.

The code runs for around 10 seconds. After that, it shows five original abundance maps as well as
reconstructed abundance maps.

It will also show original image, noisy image and denoised image in the output.

It also gives PSNR values for the denoised image as well as reconstructed abundance maps.

--------------------------------
File Description :

demo.m : Simply run this file to see how the code works. It contains all the code.
abundance.mat : This file contains ground-truth abundance maps.
ReadMe.txt : This file

Put both the files in the same folder and then run the demo code.

--------------------------------------------------------------------
Contact Information:

This code is released just to promote reproducible research and is not very robust.
If you face difficulty in running this code, then please feel free to contact us.

Contact Name : Hemant Kumar Aggarwal
Email : jnu.hemant@gmail.com

Citation pour cette source

Hemant Kumar Aggarwal (2026). Hyperspectral unmixing and denoising (https://fr.mathworks.com/matlabcentral/fileexchange/56831-hyperspectral-unmixing-and-denoising), MATLAB Central File Exchange. Extrait(e) le .

Informations générales

Compatibilité avec les versions de MATLAB

  • Compatible avec toutes les versions

Plateformes compatibles

  • Windows
  • macOS
  • Linux
Version Publié le Notes de version Action
1.2.0.0

One error has been corrected. Thanks to Michael Ge.

1.1.0.0

small change in description.

1.0.0.0