Sparse unmixing is a promising approach in a semisupervised fashion by assuming that the observed signatures of a hyperspectral image can be expressed in the form of linear combination of only a few spectral signatures (endmembers) in an available spectral library. Simultaneous orthogonal matching pursuit (SOMP) algorithm is a typical simultaneous greedy algorithm for sparse unmixing, which involves finding the optimal subset of signatures for the observed data from a spectral library. But the numbers of endmembers selected by SOMP are still larger than the actual number, and the nonexisting endmembers will have a negative effect on the estimation of the abundances corresponding to the actual endmembers. This paper presents a variant of SOMP, termed backtrackingbased SOMP (BSOMP), for sparse unmixing of hyperspectral data. As an extension of SOMP, BSOMP incorporates a backtracking technique to detect the previous chosen endmembers’ reliability and then deletes the unreliable endmembers. Through this modification, BSOMP can select the true endmembers more accurately than SOMP. Experimental results on both simulated and real data demonstrate the effectiveness of the proposed algorithm.
With the rapid development of space technology, hyperspectral remote sensing image has gained more and more attention in many application domains, such as environmental monitoring, target detection, material identification, mineral exploration, and military surveillance. However, due to the low spatial resolution of the hyperspectral imaging sensor, each pixel in the hyperspectral image often contains a mixture of several different materials. In order to deal with the problem of spectral mixing, hyperspectral unmixing is used to decompose each pixel’s spectrum to identify and quantify the fractional abundances of the pure spectral signatures or endmembers in each mixed pixel [
Sparse unmixing, as a semisupervised method, has been proposed to overcome this challenge. It assumes that the observed image can be expressed as a linear combinations of spectral signatures from a spectral library that is known in advance [
Several sparse regression techniques, such as greedy algorithms (GAs) [
Inspired by the existing SGA methods, we propose a sparse unmixing algorithm termed backtrackingbased simultaneous orthogonal matching pursuit (BSOMP) in this paper. Similar to SOMP and SMP, it uses a blockprocessing strategy to select some potential endmembers and adds them to the estimated endmembers set, which divides the whole hyperspectral image into several blocks and picks some potential endmembers from the spectral library in each block. Furthermore, BSOMP incorporates a backtracking process to detect the previous chosen endmembers’ reliability and then deletes the unreliable endmember from the estimated endmembers set in each iteration. Through this modification, BSOMP can identify the true endmembers set more accurately than the other considered SGA methods.
The remainder of the paper is organized as follows. Section
The linear sparse unmixing model assumes that the observed spectrum of a mixed pixel is a linear combination of a few spectral signatures presented in a known spectral library. Let
The sparse unmixing problem can be expressed as follows:
The simultaneous sparse unmixing model assumes that several input signals can be expressed in the form of different linear combinations of the same elementary signals. This means that all the pixels in the hyperspectral image are constrained to share the same subset of endmembers selected from the spectral library. Then we can use SGA methods for sparse unmixing; the sparse unmixing model in (
Under the simultaneous sparse unmixing model, the simultaneous sparse unmixing problem can be expressed as follows:
It should be noted that the model in (
In this section, we first present our new algorithm, BSOMP, for sparse unmixing of hyperspectral data. Then, a theoretical analysis of the algorithm will be given. Then, we give a convergence theorem for the proposed algorithm.
The whole process of using BSOMP for sparse unmixing of hyperspectral data is summarized in Algorithm
(1) Initialize hyperspectral data
(2) Divide hyperspectral data
(3)
(4) Set index set
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12) Set
(13)
(14) Initialize hyperspectral data
(15)
(16)
(17)
(18)
(19)
(20)
(21) Estimate abundances using the original hyperspectral data matrix and the endmember set under the constraint of
In the following paragraphs, we provide some definitions and then give two stopping conditions for the BSOMP algorithm.
If
The
Several of the
We give a stopping condition for the first part of the BSOMP algorithm:
For the second part of the BSOMP algorithm, we give a stopping condition for deciding when to halt the iteration:
In this section, we will introduce some definitions and then give a theoretical analysis for the BSOMP algorithm.
The coherence
The cumulative coherence [
Given hyperspectral image data matrix
Suppose that the best approximation
The proof of Theorem
In this section, we use both simulated hyperspectral data and real hyperspectral data to demonstrate the performance of the proposed algorithm. The BSOMP algorithm is compared with three SGAs (SOMP [
In the simulated data experiments, we evaluated the performances of the sparse unmixing algorithms in situations of different SNR level of noise; the signaltoreconstruction error (SRE) [
In the simulated experiments, the United States Geological Survey (USGS) digital spectral library (splib06a) [
Five spectral signatures from the USGS used in our simulated data experiments. The title of each subimage denotes the mineral corresponding to the signature.
In Simulated Data 1 experiment, we generated seven datacubes of
Simulated Data 2 was generated using nine randomly selected spectral signatures from
Results on Simulated Data 1 with 30 dB white noise: SRE as function of endmember number.
In the two simulated data experiments, all the SGA methods have adopted the blockprocessing strategy to get better performances. The block sizes of the SGA methods were empirically set to 10, and the stopping threshold parameter
Figure
Results on Simulated Data 1 with white noise when the endmember number is eleven: SRE as function of SNR.
Results on Simulated Data 1 with 30 dB correlated noise: SRE as function of endmember number.
Results on Simulated Data 1 with correlated noise when the endmember number is eleven: SRE as function of SNR.
Figure
Results obtained by the four SGAs on Simulated Data 1 with 30 dB white noise or correlated noise: number of retained endmembers as function of endmember number.
Figures
Results on Simulated Data 2 with white noise: SRE as function of SNR.
Results on Simulated Data 2 with correlated noise: SRE as function of SNR.
For visual comparison, Figure
Comparison of abundance maps on Synthetic Data 2 with 20 dB white noise. From left column to right column are the abundance maps corresponding to Endmember 1, Endmember 4, and Endmember 9, respectively. From top row to bottom row are true abundance maps or abundance maps obtained by SUnSAL, CLSUnSAL, SUnSALTV, SOMP, SMP, RSFoBa, and BSOMP, respectively.
Table
Processing times(s) measured after applying the tested methods to the two considered simulated data sets with 30 dB white noise.
Datacube  SUnSAL  CLSUnSAL  SUnSALTV  SOMP  SMP  RSFoBa  BSOMP 

Simulated Data 1 (11 endmembers)  67.67  78.41  363.27  2.083  21.289  3.938  6.418 
Simulated Data 2  254.71  279.02  1271.12  9.618  35.444  28.277  106.524 
In order to make the differences among the BSOMP algorithm and the other sparse unmixing algorithms clearer, we display their comparison concerned with several properties in Table
Comparison of the sparse unmixing algorithms with whether the backward step, joint sparsity, and contextual information are considered.
Property  Backward step  Joint sparsity  Contextual information 

SMP 


SOMP 


RSFoBa 



BSOMP 



SUnSAL  
CLSUnSAL 


SUnSALTV 

SUnSAL is a convex relaxation method for sparse unmixing which solves the
SOMP and SMP are the forward SGAs which select one or more potential endmembers from the spectral library in each iteration. RSFoBa is a forwardbackward SGA which incorporates the backward step, spatialcontextual information, and joint sparsity into the greedy algorithm. BSOMP is a forwardbackward SGA which incorporates the backward step and joint sparsity to the greedy algorithm. As observed in Figure
Results on Simulated Data 1 with white noise when the endmember number is eleven: SRE as function of block size.
Results on Simulated Data 1 with 30 dB white noise when the endmember number is eleven: number of retained endmembers as function of block size.
The hyperspectral data set used in our real data experiment is the wellknown AVIRIS Cuprite data set (
USGS map showing the distribution of different minerals in the Cuprite mining district in Nevada.
In this section, for the real data experiment, the sparsity of solution and the reconstruction error of the hyperspectral image are used to evaluate the performances of the sparse unmixing algorithms, since the true abundance maps of the real data are not available. The sparsity is obtained by counting the average number of nonzero abundances estimated by each algorithm. The same as in [
The regularization parameter used for CLSUnSAL was empirically set to 0.01, while the one corresponding to SUnSAL was set to 0.001. The parameters
Sparsity of the abundance vectors and the reconstruction errors.
Algorithms  SUnSAL  CLSUnSAL  SUnSALTV  SOMP  SMP  RSFoBa  BSOMP 

Sparsity  17.5629  20.7037  20.472  13.684  15.102  12.702  11.810 
RMSE  0.0051  0.0035  0.0028  0.0040  0.0034  0.0032  0.0033 
For visual comparison, Figure
Abundance maps estimated by SUnSAL, CLSUnSAL, SUnSALTV, SOMP, SMP, RSFoBa, and BSOMP and the distribution maps produced by Tricorder 3.3 software for the AVIRIS Cuprite scene. From top row to bottom row are the maps produced or estimated by Tricorder software, SUnSAL, CLSUnSAL, SUnSALTV, SOMP, SMP, RSFoBa, and BSOMP, respectively. From left column to right column are the maps corresponding to Alunite, Buddingtonite, and Chalcedony, respectively.
In this paper, we present a new SGA termed BSOMP for sparse unmixing of hyperspectral data. The main idea of the proposed algorithm is that BSOMP incorporates a backtrack step to detect the previous chosen endmembers’ reliability and then deletes the unreliable endmembers. It is proved that BSOMP can recover the optimal endmembers from the spectral library under certain conditions. Experiments on both synthetic data and real data also demonstrate that the BSOMP algorithm is more effective than the other SGAs for sparse unmixing.
The topic we want to discuss is why BSOMP is effective for sparse unmixing. Endmember selection and abundance estimation are the two main parts of the SGAs. The number of the potential endmembers selected by the SGAs is far smaller than the number of spectral signatures in the spectral library, and then the abundance estimation method makes the abundance vectors sparse further with the relatively small endmembers subset. The main difference among BSOMP, SOMP, SMP, and RSFoBa is the endmember selection. The SGAs adopt a blockprocessing strategy to efficiently select endmembers, but the numbers of endmembers selected are still larger than the actual number. However the nonexisting endmembers will have a negative effect on the estimation of the abundances corresponding to the actual endmembers.
Compared with SOMP and SMP, BSOMP and RSFoBa adopt a backward step to detect the previous chosen endmembers’ reliability and delete the nonexisting endmembers. So BSOMP and RSFoBa can select the actual endmembers more accurately than SOMP and SMP. The main difference between BSOMP and RSFoBa is that the former adopts a backward step in the whole hyperspectral data, while the latter adopts a backward step in each block. As shown in Figures
First we should introduce some definitions which will be used during the proof process.
Given hyperspectral image data matrix
Now we will prove the theorem on the performance of the algorithm.
Let
The maximum correlation between
We will apply the cumulative coherence function to deduce the estimates of (
The equality holds because
The authors declare that there is no conflict of interests regarding the publication of this paper.
This work has been supported by a grant from the NUAA Fundamental Research Funds (NS2013085). The authors would like to thank M. D. Iordache, J. BioucasDias, and A. Plaza for sharing Simulated Data 2 and their codes for the algorithms of CLSUnSAL, SUnSAL, and SUnSALTV. The authors would also like to thank Shi Z, Tang W, Duren Z, and Jiang Z for sharing their codes for the algorithms of SMP and RSFoBa. Moreover, the authors would also like to thank those anonymous reviewers for their helpful comments to improve this paper.