Parallel Performance of Typical Algorithms in
Remote Sensing-based Mapping on a
Multi-Core Computer
Jinghui Yang and Jixian Zhang
Abstract
Typical algorithms in remote sensing-based mapping, such as
geometric correction, image fusion, image mosaic, and auto-
matic
DEM
extractions, are data- and computation-intensive;
processing on multi-core computers can improve their perfor-
mance. Therefore, parallel computing methods that can fully
leverage state-of-the-art hardware platforms and that can be
easily adapted to these algorithms are required. In this paper,
a method with high parallelism is adopted. The method
integrates a recursive procedure with a parallel mechanism
that is capable of concurrently processing multiple blocks on
multiple cores. The parallel experiments of five categories of
typical algorithms on two multi-core computers with Windows
and Linux operating systems, respectively, were fulfilled. The
experimental results show that although the gains of parallel
performance vary for different algorithms, the processing per-
formance achieved on multi-core computers is significantly
improved. The best case on a computer with two
CPUs
is able
to perform the
DEM
extractions up to 13.6 times faster than
serial execution. According to these experiments, the factors
influencing parallel performance on a multi-core computer
are discussed.
Introduction
Typical algorithms in remote sensing-based mapping are
data- and computation-intensive, such as image fusion, im-
age mosaic, geometric correction, and image matching. In
practice, these algorithms usually require not only reading
and writing a large amount of data but also several sophisti-
cated computational steps, including interpolating, filtering,
orthogonal transformation, convolution, geometric transfor-
mation, solving systems of linear equations, optimization, and
multi-resolution analysis. The large amount of data and the
immense computational costs of these algorithms are a realis-
tic concern. Normally, the entire process of serial execution of
complicated algorithms is rather time-consuming.
However, the current computing resources are typically
not utilized efficiently for serial algorithms. A serial algorithm
is unaware of the existence of multiple
CPU
cores, and the
performance of such an algorithm on a multi-core computer
will be the same as its performance on a single core computer.
The current serial algorithms are not matched to the develop-
ments of computer hardware in which multi-core
CPUs
are
widely available. Hence, parallel computing methods, which
not only fully leverage the state-of-the-art hardware platforms
but also promote processing speed for mapping, are required.
There are some related works in the field of parallel pro-
cessing for remote sensing. Lee
et al
. (2011) reviewed recent
developments in high performance computing (
HPC
) for
remote sensing. Plaza
et al
. (2011) reviewed recent develop-
ments in the application of
HPC
techniques to hyperspectral
imaging problems. Plaza
et al
. (2006 and 2008) have devel-
oped several highly innovative parallel algorithms for stan-
dard data processing and information extraction of hyperspec-
tral images in heterogeneous networks of workstations and
homogeneous clusters. Luo
et al
. (2012) presented a parallel
implementation of N-FINDR (Winter, 1999) (a widely used
endmember extraction algorithm) which was run on a cluster
connected by the Gigabit Ethernet. Generally, these methods
mainly concentrate to information extraction of hyperspectral
images. These experiments were performed on clusters in
which components are largely different from the counterparts
in multi-cores computers.
Although there are few high performance software systems,
e.g., PHOTOMOD
®
(Adrov
et al.
, 2012), PIXEL FACTORY
TM
(ASTRIUM, 2013), Correlator3D
TM
(Rotenberg
et al.
, 2013),
and PCI GXL (PCI Geomatics, 2009) in photogrammetric and
remote sensing community; they are based on either clusters
(PHOTOMOD
®
and PIXEL FACTORY
TM
) or graphic process-
ing unit (
GPU
) (Correlator3D
TM
and PCI GXL). The systems
based on clusters mostly apply distributed computing, which
only dispatches multiple independent tasks to different
computers (or cores) and usually cannot subdivide a task into
many smaller tasks. Similar to automatic tiling and stitching
methods in eCognition
®
server software, the parallel method
adopted in this paper can split a large image into more blocks
to enable concurrent processing of multiple blocks. The
systems based on
GPU
mostly need an add-on
GPU
card. This
paper does not compare these
HPC
methods used in remote
sensing field, but aims to provide another insight that the
commonplace desktop computing platforms can be employed
to improve processing performance.
In a narrower field,
i.e., the multi-core based parallel
computing for remote sensing, several researchers have done
some valuable works in recent years. Christophe
et al
. (2011)
compared the relative performance of a multithreaded pro-
gram run on a
CPU
and the corresponding program running on
a
GPU
. Remon
et al
. (2011) presented parallel experiments of
hyperspectral endmember extraction algorithms on multi-core
Jinghui Yang is with the Chinese Academy of Surveying
and Mapping (CASM), No. 28 Lianhuachi West Road, Beijing,
100830, P. R. China, and formerly with the School of Resource
and Environmental Sciences, Wuhan University, No. 129
Luoyu Road, Wuhan, 430079, P. R. China
(
).
Jixian Zhang is with the Chinese Academy of Surveying and
Mapping (CASM), No. 28 Lianhuachi West Road, Beijing,
100830, P. R. China.
Photogrammetric Engineering & Remote Sensing
Vol. 81, No. 5, May 2015, pp. 373–385.
0099-1112/15/373–385
© 2015 American Society for Photogrammetry
and Remote Sensing
doi: 10.14358/PERS.81.5.373
PHOTOGRAMMETRIC ENGINEERING & REMOTE SENSING
May 2015
373