PARALLEL IMPLEMENTATION OF THE N-FINDR ENDMEMBER EXTRACTION
ALGORITHM ON COMMODITY GRAPHICS PROCESSING UNITS
Sergio S´ anchez, Gabriel Mart´ ın, and Antonio Plaza
Department of Technology of Computers and Communications
University of Extremadura, Avda. de la Universidad s/n, E-10071 Caceres, Spain
Phone: +34 927 257000 (Ext. 51662) - Fax: +34 927 257203
E-mail: {sersanmar, gamahefpi, aplaza}@unex.es
ABSTRACT
Endmember extraction is an important technique in the con-
text of spectral unmixing of remotely sensed hyperspectral
data. Winter’s N-FINDR algorithm is one of the most widely
used and successfully applied methods for endmember ex-
traction from remotely sensed hyperspectral images. De-
pending on the dimensionality of the hyperspectral data, the
algorithm can be time consuming. In this paper, we propose
a new parallel implementation of the N-FINDR algorithm.
The proposed implementation is quantitatively assessed in
terms of both endmember extraction accuracy and parallel
efficiency, using two different generations of commercial
graphical processing units (GPUs) from NVidia. Our ex-
perimental results indicate that the parallel implementation
performs better with latest-generation GPUs, thus taking
advantage of the increased processing power of such units.
Index Terms— Hyperspectral imaging, parallel process-
ing, endmember extraction, GPUs.
1. INTRODUCTION
A wide range of techniques for hyperspectral image pro-
cessing have been proposed in recent years [1, 2]. One
of such techniques is spectral unmixing, a very important
task in remotely sensed hyperspectral data exploitation [3].
When the spatial resolution of the sensor is not fine enough
to separate different spectral constituents, these can jointly
occupy a single pixel and the resulting spectral measure-
ment will be a mixed pixel, i.e., a composite of the individ-
ual pure spectra [4]. In order to define the mixture prob-
lem in mathematical terms, let us assume that a remotely
sensed hyperspectral scene with n bands is denoted by X,
in which the pixel at the discrete, spatial coordinates (i, j )
of the scene is represented by a feature vector given by
X(i, j )=[x
1
(i, j ),x
2
(i, j ), ··· ,x
n
(i, j )] ∈ℜ
n
, and ℜ de-
notes the set of real numbers corresponding to the pixel’s
spectral response x
k
(i, j ) at sensor channels k =1,...,n.
Under a linear mixture model assumption [3], each pixel vec-
tor in the original scene can be modeled using the following
expression:
X(i, j )=
p
k=1
Φ
k
(i, j ) · E
k
+ n(i, j ), (1)
where E
k
denotes the spectral response of the k-th endmem-
ber, Φ
z
(i, j ) is a scalar value designating the fractional abun-
dance of the k-th at pixel X(i, j ), p is the total number of
endmembers, and n(i, j ) is a noise vector. The solution of the
linear spectral mixture problem described in (1) relies on the
correct determination of a set of p endmembers denoted by
{E
k
}
p
k=1
.
Over the last decade, several algorithms have been de-
veloped for extraction of spectral endmembers directly from
the input hyperspectral data set [5]. Winter’s N-FINDR al-
gorithm [6] is one of the most widely used and successfully
applied methods for that purpose. This approach finds the
set of pixels with the largest possible volume by “inflating” a
simplex within the data. After reducing the dimensionality of
the data from n to p − 1 (this is a feasible step, since typically
p << n), a random set of p pixel vectors is initially selected
from the input scene. In order to refine the initial estimate
of endmembers, every pixel in the image must be evaluated
in terms of pixel purity likelihood or nearly pure statehood.
To achieve this, the volume is calculated for every pixel in
the place of each endmember. A trial volume is calculated for
every pixel in each endmember position by replacing that end-
member and finding the volume. If the replacement results in
a volume increase, the pixel replaces the endmember. This
procedure is repeated until there are no more replacements of
endmembers. While the endmember determination step of N-
FINDR in the commercial version distributed by Pacific Spec-
tral Technology
1
has been optimized for high speed process-
ing, the computational performance of the algorithm depends
on the accuracy of the initial random selection of endmembers
and, most importantly, on the dimensions of the hyperspectral
scene and the number of endmembers to be found, p.
1
http://www.pacificspectral.com
955 978-1-4244-9566-5/10/$26.00 ©2010 IEEE IGARSS 2010