  The spectral signatures of the materials contained in hyperspectral images,
also called endmembers (EM), can be significantly affected by variations in
atmospheric, illumination or environmental conditions typically occurring
within an image. Traditional spectral unmixing (SU) algorithms neglect the
spectral variability of the endmembers, what propagates significant mismodeling
errors throughout the whole unmixing process and compromises the quality of its
results. Therefore, large efforts have been recently dedicated to mitigate the
effects of spectral variability in SU. This resulted in the development of
algorithms that incorporate different strategies to allow the EMs to vary
within a hyperspectral image, using, for instance, sets of spectral signatures
known a priori, Bayesian, parametric, or local EM models. Each of these
approaches has different characteristics and underlying motivations. This paper
presents a comprehensive literature review contextualizing both classic and
recent approaches to solve this problem. We give a detailed evaluation of the
sources of spectral variability and their effect in image spectra. Furthermore,
we propose a new taxonomy that organizes existing works according to a
practitioner's point of view, based on the necessary amount of supervision and
on the computational cost they require. We also review methods used to
construct spectral libraries (which are required by many SU techniques) based
on the observed hyperspectral image, as well as algorithms for library
augmentation and reduction. Finally, we conclude the paper with some
discussions and an outline of possible future directions for the field.
