Image analysis, classification and change detection in remote sensing: with algorithms for Python Fourth Edition Canty instant download
Image analysis, classification and change detection in remote sensing: with algorithms for Python Fourth Edition Canty instant download
https://textbookfull.com/product/image-analysis-classification-
and-change-detection-in-remote-sensing-with-algorithms-for-
python-fourth-edition-canty/
https://textbookfull.com/product/image-analysis-classification-
and-change-detection-in-remote-sensing-with-algorithms-for-
python-4th-edition-morton-john-canty/
https://textbookfull.com/product/fuzzy-machine-learning-
algorithms-for-remote-sensing-image-classification-1st-edition-
anil-kumar/
https://textbookfull.com/product/image-processing-and-gis-for-
remote-sensing-techniques-and-applications-second-edition-liu/
https://textbookfull.com/product/multisensor-image-fusion-and-
data-mining-for-environmental-remote-sensing-first-edition-bai/
Remote sensing of vegetation. Hyperspectral indices and
image classifications for agriculture and vegetation
Second Edition Huete
https://textbookfull.com/product/remote-sensing-of-vegetation-
hyperspectral-indices-and-image-classifications-for-agriculture-
and-vegetation-second-edition-huete/
https://textbookfull.com/product/hyperspectral-imaging-remote-
sensing-physics-sensors-and-algorithms-1st-edition-dimitris-g-
manolakis/
https://textbookfull.com/product/spatial-analysis-for-radar-
remote-sensing-of-tropical-forests-1st-edition-gianfranco-d-de-
grandi/
https://textbookfull.com/product/deep-learning-for-remote-
sensing-images-with-open-source-software-1st-edition-remi-
cresson/
https://textbookfull.com/product/introductory-digital-image-
processing-a-remote-sensing-perspective-john-r-jensen-dr-kalmesh-
lulla/
Image Analysis,
Classification, and Change
Detection in Remote
Sensing
With Algorithms for Python
Fourth edition
Image Analysis,
Classification, and Change
Detection in Remote
Sensing
With Algorithms for Python
Fourth edition
This book contains information obtained from authentic and highly regarded sources. Reasonable
efforts have been made to publish reliable data and information, but the author and publisher cannot
assume responsibility for the validity of all materials or the consequences of their use. The authors and
publishers have attempted to trace the copyright holders of all material reproduced in this publication
and apologize to copyright holders if permission to publish in this form has not been obtained. If any
copyright material has not been acknowledged please write and let us know so we may rectify in any
future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced,
transmitted, or utilized in any form by any electronic, mechanical, or other means, now known or
hereafter invented, including photocopying, microfilming, and recording, or in any information
storage or retrieval system, without written permission from the publishers.
For permission to photocopy or use material electronically from this work, please access
www.copyright.com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc.
(CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization
that provides licenses and registration for a variety of users. For organizations that have been granted
a photocopy license by the CCC, a separate system of payment has been arranged.
Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and
are used only for identification and explanation without intent to infringe.
2 Image Statistics 31
2.1 Random variables . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.1.1 Discrete random variables . . . . . . . . . . . . . . . . 32
2.1.2 Continuous random variables . . . . . . . . . . . . . . 33
2.1.3 Random vectors . . . . . . . . . . . . . . . . . . . . . 36
2.1.4 The normal distribution . . . . . . . . . . . . . . . . . 39
2.1.5 The gamma distribution and its derivatives . . . . . . 41
2.2 Parameter estimation . . . . . . . . . . . . . . . . . . . . . . . 44
2.2.1 Random samples . . . . . . . . . . . . . . . . . . . . . 44
2.2.2 Sample distributions and interval estimators . . . . . . 47
2.3 Multivariate distributions . . . . . . . . . . . . . . . . . . . . 50
2.3.1 Vector sample functions and the data matrix . . . . . 51
2.3.2 Provisional means . . . . . . . . . . . . . . . . . . . . 53
v
vi Image Analysis, Classification, and Change Detection in Remote Sensing
3 Transformations 83
3.1 The discrete Fourier transform . . . . . . . . . . . . . . . . . 83
3.2 The discrete wavelet transform . . . . . . . . . . . . . . . . . 88
3.2.1 Haar wavelets . . . . . . . . . . . . . . . . . . . . . . . 89
3.2.2 Image compression . . . . . . . . . . . . . . . . . . . . 93
3.2.3 Multiresolution analysis . . . . . . . . . . . . . . . . . 96
3.3 Principal components . . . . . . . . . . . . . . . . . . . . . . 103
3.3.1 Principal components on the GEE . . . . . . . . . . . 105
3.3.2 Image compression and reconstruction . . . . . . . . . 107
3.3.3 Primal solution . . . . . . . . . . . . . . . . . . . . . . 111
3.3.4 Dual solution . . . . . . . . . . . . . . . . . . . . . . . 111
3.4 Minimum noise fraction . . . . . . . . . . . . . . . . . . . . . 112
3.4.1 Additive noise . . . . . . . . . . . . . . . . . . . . . . . 113
3.4.2 Minimum noise fraction via PCA . . . . . . . . . . . . 116
3.5 Spatial correlation . . . . . . . . . . . . . . . . . . . . . . . . 117
3.5.1 Maximum autocorrelation factor . . . . . . . . . . . . 117
3.5.2 Noise estimation . . . . . . . . . . . . . . . . . . . . . 119
3.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
C Software 463
C.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
C.2 Command line utilities . . . . . . . . . . . . . . . . . . . . . . 464
C.2.1 gdal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
C.2.2 earthengine . . . . . . . . . . . . . . . . . . . . . . . . 464
C.2.3 ipcluster . . . . . . . . . . . . . . . . . . . . . . . . . . 465
C.3 Source code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
C.4 Python scripts . . . . . . . . . . . . . . . . . . . . . . . . . . 465
C.4.1 adaboost.py . . . . . . . . . . . . . . . . . . . . . . . . 466
C.4.2 atwt.py . . . . . . . . . . . . . . . . . . . . . . . . . . 466
C.4.3 c corr.py . . . . . . . . . . . . . . . . . . . . . . . . . . 467
C.4.4 classify.py . . . . . . . . . . . . . . . . . . . . . . . . . 467
C.4.5 crossvalidate.py . . . . . . . . . . . . . . . . . . . . . . 468
C.4.6 ct.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
C.4.7 dispms.py . . . . . . . . . . . . . . . . . . . . . . . . . 469
C.4.8 dwt.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
C.4.9 eeMad.py . . . . . . . . . . . . . . . . . . . . . . . . . 470
C.4.10 eeSar seq.py . . . . . . . . . . . . . . . . . . . . . . . . 471
C.4.11 eeWishart.py . . . . . . . . . . . . . . . . . . . . . . . 471
C.4.12 ekmeans.py . . . . . . . . . . . . . . . . . . . . . . . . 472
C.4.13 em.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
C.4.14 enlml.py . . . . . . . . . . . . . . . . . . . . . . . . . . 473
C.4.15 gamma filter.py . . . . . . . . . . . . . . . . . . . . . . 473
C.4.16 hcl.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
C.4.17 iMad.py . . . . . . . . . . . . . . . . . . . . . . . . . . 474
C.4.18 iMadmap.py . . . . . . . . . . . . . . . . . . . . . . . . 475
C.4.19 kkmeans.py . . . . . . . . . . . . . . . . . . . . . . . . 475
C.4.20 kmeans.py . . . . . . . . . . . . . . . . . . . . . . . . . 476
C.4.21 kpca.py . . . . . . . . . . . . . . . . . . . . . . . . . . 476
C.4.22 krx.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
C.4.23 mcnemar.py . . . . . . . . . . . . . . . . . . . . . . . . 477
C.4.24 meanshift.py . . . . . . . . . . . . . . . . . . . . . . . 477
C.4.25 mmse filter.py . . . . . . . . . . . . . . . . . . . . . . . 478
C.4.26 mnf.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
C.4.27 pca.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
C.4.28 plr.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
C.4.29 radcal.py . . . . . . . . . . . . . . . . . . . . . . . . . 479
C.4.30 readshp.py . . . . . . . . . . . . . . . . . . . . . . . . . 480
C.4.31 registerms.py . . . . . . . . . . . . . . . . . . . . . . . 480
C.4.32 registersar.py . . . . . . . . . . . . . . . . . . . . . . . 481
Contents xi
References 489
Index 501
Preface to the First Edition
This textbook had its beginnings as a set of notes to accompany seminars and
lectures conducted at the Geographical Institute of Bonn University and at its
associated Center for Remote Sensing of Land Cover. Lecture notes typically
continue to be refined and polished over the years until the question inevitably
poses itself: “Why not have them published?” The answer of course is “By all
means, if they contribute something new and useful.”
So what is “new and useful” here? This is a book about remote sensing
image analysis with a distinctly mathematical-algorithmic-computer-oriented
flavor, intended for graduate-level teaching and with, to borrow from the re-
mote sensing jargon, a rather restricted FOV. It does not attempt to match
the wider fields of view of existing texts on the subject, such as Schowengerdt
(1997), Richards (2012), Jensen (2005) and others. However, the topics that
are covered are dealt with in considerable depth, and I believe that this cov-
erage fills an important gap. Many aspects of the analysis of remote sensing
data are quite technical and tend to be intimidating to students with moder-
ate mathematical backgrounds. At the same time, one often witnesses a desire
on the part of students to apply advanced methods and to modify them to
fit their particular research problems. Fulfilling the latter wish, in particular,
requires more than superficial understanding of the material.
The focus of the book is on pixel-oriented analysis of visual/infrared Earth
observation satellite imagery. Among the topics that get the most attention
are the discrete wavelet transform, image fusion, supervised classification with
neural networks, clustering algorithms and statistical change detection meth-
ods. The first two chapters introduce the mathematical and statistical tools
necessary in order to follow later developments. Chapters 3 and 4 deal with
spatial/spectral transformations, convolutions and filtering of multispectral
image arrays. Chapter 5 treats image enhancement and some of the prepro-
cessing steps that precede classification and change detection. Chapters 6 and
7 are concerned, respectively, with supervised and unsupervised land cover
classification. The last chapter is about change detection with heavy emphasis
on the use of canonical correlation analysis. Each of the 8 chapters concludes
with exercises, some of which are small programming projects, intended to
illustrate or justify the foregoing development. Solutions to the exercises are
included in a separate booklet. Appendix A provides some additional mathe-
matical/statistical background and Appendix B develops two efficient training
algorithms for neural networks. Finally, Appendix C describes the installation
and use of the many computer programs introduced in the course of the book.
xiii
xiv Image Analysis, Classification and Change Detection in Remote Sensing
Morton Canty
Preface to the Second Edition
Shortly after the manuscript for the first edition of this book went to the
publisher, ENVI 4.3 appeared along with, among other new features, a support
vector machine classifier. Although my decision not to include the SVM in
the original text was a conscious one (I balked at the thought of writing my
own IDL implementation), this event did point to a rather glaring omission
in a book purporting to be partly about land use/land cover classification.
So, almost immediately, I began to dream of a Revised Second Edition and
to pester CRC Press for a contract. This was happily forthcoming and the
present edition now has a fairly long section on supervised classification with
support vector machines.
The SVM is just one example of so-called kernel methods for nonlinear
data analysis, and I decided to make kernelization one of the themes of the
revised text. The treatment begins with a dual formulation for ridge regression
in Chapter 2 and continues through kernel principal components analysis in
Chapters 3 and 4, support vector machines in Chapter 6, kernel K-means clus-
tering in Chapter 8 and nonlinear change detection in Chapter 9. Other new
topics include entropy and mutual information (Chapter 1), adaptive boosting
(Chapter 7) and image segmentation (Chapter 8). In order to accommodate
the extended material on supervised classification, discussion is now spread
over the two Chapters 6 and 7. The exercises at the end of each chapter have
been extended and re-worked and, as for the first edition, a solutions manual
is provided.
I have written several additional IDL extensions to ENVI to accompany the
new themes, which are available, together with updated versions of previous
programs, for download on the Internet. In order to accelerate some of the
more computationally intensive routines for users with access to CUDA (par-
allel processing on NVIDIA graphics processors), code is included which can
make use of the IDL bindings to CUDA provided by Tech-X Corporation in
their GPULib product:
http://gpulib.txcorp.com
Notwithstanding the revisions, the present edition remains a monograph
on pixel-oriented analysis of intermediate-resolution remote sensing imagery
with emphasis on the development and programming of statistically moti-
vated, data-driven algorithms. Important topics such as object-based feature
analysis (for high-resolution imagery), or the physics of the radiation/surface
interaction (for example, in connection with hyperspectral sensing) are only
xv
xvi Image Analysis, Classification and Change Detection in Remote Sensing
touched upon briefly, and the huge field of radar remote sensing is left out
completely. Nevertheless, I hope that the in-depth focus on the topics covered
will continue to be of use both to practitioners as well as to teachers.
I would like to express my appreciation to Peter Reinartz and the German
Aerospace Center for permission to use the traffic scene images in Chapter 9
and to NASA’s Land Processes Distributed Active Archive Center for free and
uncomplicated access to archived ASTER imagery. Thanks also go to Peter
Messmer and Michael Galloy, Tech-X Corp., for their prompt responses to my
many cries for help with GPULib. I am especially grateful to my colleagues
Harry Vereecken and Allan Nielsen, the former for generously providing me
with the environment and resources needed to complete this book, the latter
for the continuing inspiration of our friendship and long-time collaboration.
Morton Canty
Preface to the Third Edition
A main incentive for me to write a third edition of this book stemmed from my
increasing enthusiasm for the Python programming language. I began to see
the advantage of illustrating the many image processing algorithms covered
in earlier editions of the text not only in the powerful and convenient, but
not inexpensive, ENVI/IDL world, but also on a widely available open source
platform. Python, together with the NumPy and Scipy packages, can hold its
own with any commercial array processing software system. Furthermore, the
Geospatial Data Abstraction Library (GDAL) and its Python wrappers allow
for great versatility and convenience in reading, writing and manipulating dif-
ferent image formats. This was enough to get me going on a revised textbook,
one which I hope will have appeal beyond the ENVI/IDL community.
Another incentive for a new edition was hinted at in the preface to the
previous edition, namely the lack of any discussion of the vast and increas-
ingly important field of radar remote sensing. Obviously this would be a topic
for (at least) a whole new book, so I have included material only on a very
special aspect of particular interest to me, namely multivariate statistical clas-
sification and change detection algorithms applied to polarimetric synthetic
aperture radar (polSAR) data. Up until recently, not many researchers or
practitioners have had access to this kind of data. However with the advent of
several spaceborne polarimetric SAR instruments such as the Japanese ALOS,
the Canadian Radarsat-2, the German TerraSAR-X and the Italian COSMO-
SkyMed missions, the situation has greatly improved. Chapters 5, 7 and 9
now include treatments of speckle filtering, image co-registration, supervised
classification and multivariate change detection with multi-look polSAR data.
The software associated with the present edition includes, along with the
ENVI/IDL extensions, Python scripts for all of the main processing, classifi-
cation and change detection algorithms. In addition, many examples discussed
in the text are illustrated with Python scripts as well as in IDL. The Appen-
dices C and D separately document the installation and use of the ENVI/IDL
and Python code. For readers who wish to use the Eclipse/Pydev development
environment (something which I highly recommend), the Python scripts are
provided in the form of a Pydev project.
What is missing in the Python world, of course, is the slick GUI provided
by ENVI. I have made no attempt to mimic an ENVI graphical environment
in Python, and the scripts provided content themselves with reading imagery
from, and writing results to, the file system. A rudimentary command line
script for RGB displays of multispectral band combinations in different his-
xvii
xviiiImage Analysis, Classification and Change Detection in Remote Sensing
Morton Canty
Preface to the Fourth Edition
The fourth revision marks the completion of a transition, begun in the pre-
ceding edition, from ENVI/IDL to the Python language for implementing the
algorithms discussed in the text. It was with some hesitation that I abandoned
the comfort and convenience of the powerful ENVI/IDL environment and ven-
tured into the raw world of open source. But it has become apparent that open
source software is the future for scientific computing in general and for geo-
spatial analysis in particular. The popularity of R, JavaScript or Python in
the remote sensing community, the potential of machine learning software
such as TensorFlow for object recognition, the Python and JavaScript APIs
to the wonderful Google Earth Engine, the many open source mapping plat-
forms and servers like Mapbox, OpenLayers, Leaflet or the OpenStreetMap
project, the elegance of Jupyter notebooks for interactive and collaborative
development, the power of container technology like Docker for painless distri-
bution of scientific software, all of the advantages of these languages, tools and
platforms are freely available and under continual development by a gigantic
community of software engineers, both commercial and voluntary.
So I have jumped off the fence and onto the open source bandwagon in order
to ensure that the computer code used in the present version of the book will
be not only in line with the current trend, but also accessible to anyone,
student or scientist, with a computer and an Internet connection. Each of the
nine chapters of the text is now accompanied by its own Jupyter notebook
illustrating all, or almost all, of the concepts and algorithms presented in that
chapter. The Python scripts are uniformly command-line oriented so as to be
able to be started easily from within a notebook input cell. All of the software
is packaged into a single Docker container which, when run on the user’s
machine, serves the Jupyter notebooks to his or her favorite web browser.
The necessary packages and modules, including the Google Earth Engine and
TensorFlow APIs, are already built into the container so that there is no need
to install anything at all, apart from the Docker engine. This is of course great
for the reader, and for me it means no longer worrying about 32-bit vs. 64-
bit Windows vs. Linux vs. MacOS, or who has what pre-installed version of
which Python package. The container is pulled from DockerHub automatically
when run for the first time, and the source software can be cloned/forked from
GitHub. The details are all given in an appendix.
Had I approached this revision just a couple of years ago, I would have had
some misgivings about retaining the long and rigorous descriptions of neural
network training algorithms in Chapter 6 and Appendix B. Neural network
xix
xx Image Analysis, Classification and Change Detection in Remote Sensing
land cover classifiers had until recently gone somewhat out of fashion, giv-
ing way to random forests, support vector machines and the like. However,
given the present artificial intelligence craze, the mathematical detail in the
text should help to provide a solid background for anyone interested in un-
derstanding and exploiting deep learning techniques.
Like the earlier editions, this is not a text on programming or on the in-
tricacies of the various packages, tools and APIs referred to in the text. As
a solid introduction to scientific computing with Python, I would still recom-
mend Langtangen (2009) and, for TensorFlow, the book by Géron (2017). I
expect that I’m not alone in hoping for a good textbook on the Google Earth
Engine API. Fortunately the on-line documentation is excellent.
Apart from taking advantage of many of these exciting advances in open
source computing, the revised text continues to concentrate on an in-depth
treatment of pixel-oriented, data-driven, statistical methods for remote sens-
ing image processing and interpretation. The choice of topics and algorithms
is by no means all-encompassing and reflects strongly the author’s personal in-
terests and experience. Those topics chosen, however, are presented in depth
and from first principles. Chapters 1 and 2 on linear algebra and statistics
continue to be pretty much essential for an understanding of the rest of the
material. Especially new in the present edition is the discussion of an ele-
gant sequential change detection method for polarimetric synthetic aperture
radar imagery developed by Knut Conradsen and his colleagues at the Danish
Technical University. It has been a pleasure for me to be involved in its imple-
mentation, both in “conventional” Python and for the Google Earth Engine
Python and JavaScript APIs.
I would like to thank my editor Irma Shagla Britton at CRC Press for
waking me up to the idea of a fourth edition, and to give a big thank you to
the friendly, competent and infinitely patient GEE development team.
Morton Canty
Author Biography
Morton John Canty, now semi-retired, was a senior research scientist in the
Institute for Bio- and Geosciences at the Jülich Research Center in Germany.
He received his PhD in Nuclear Physics in
1969 at the University of Manitoba, Canada
and, after post-doctoral positions in Bonn,
Groningen and Marburg, began work in Jülich
in 1979. There, his principal interests have
been the development of statistical and game-
theoretical models for the verification of inter-
national treaties and the use of remote sensing
data for monitoring global treaty compliance.
He has served on numerous advisory bodies to
the German Federal Government and to the
International Atomic Energy Agency in Vi-
enna and was a coordinator within the Euro-
pean Network of Excellence on Global Mon-
itoring for Security and Stability, funded by
the European Commission. Morton Canty is the author of three monographs
in the German language: on the subject of non-linear dynamics (Chaos und
Systeme, Vieweg, 1995), neural networks for classification of remote sensing
data (Fernerkundung mit neuronalen Netzen, Expert, 1999) and algorithmic
game theory (Konfliktlösungen mit Mathematica, Springer 2000). The lat-
ter text has appeared in a revised English version (Resolving Conflicts with
Mathematica, Academic Press, 2003). He is co-author of a monograph on
mathematical methods for treaty verification (Compliance Quantified, Cam-
bridge University Press, 1996). He has published many papers on the sub-
jects of experimental nuclear physics, nuclear safeguards, applied game theory
and remote sensing and has lectured on nonlinear dynamical growth models
and remote sensing digital image analysis at Universities in Bonn, Berlin,
Freiberg/Saxony and Rome.
xxi
1
Images, Arrays, and Matrices
There are many Earth observation satellite-based sensors, both active and
passive, currently in orbit or planned for the near future. Representative of
these, we describe briefly the multispectral ASTER system (Abrams et al.,
1999) and the TerraSAR-X synthetic aperture radar satellite (Pitz and Miller,
2010). See Jensen (2018), Richards (2012) and Mather and Koch (2010) for
overviews of remote sensing satellite platforms.
The Advanced Spaceborne Thermal Emission and Reflectance Radiometer
(ASTER) instrument was launched in December 1999 on the Terra space-
craft. It is being used to obtain detailed maps of land surface temperature,
reflectance and elevation and consists of sensors to measure reflected solar
radiance and thermal emission in three spectral intervals:
• VNIR: Visible and near-infrared bands 1, 2, 3N, and 3B, in the spectral
region between 0.52 and 0.86 µm (four arrays of charge-coupled detectors
(CCDs) in pushbroom scanning mode).
• SWIR: Short wavelength infrared bands 4 to 9 in the region between
1.60 and 2.43 µm (six cooled PtSi-Si Schottky barrier arrays, pushbroom
scanning).
• TIR: Thermal infrared bands 10 to 14 covering a spectral range from 8.13
to 11.65 µm (cooled HgCdTe detector arrays, whiskbroom scanning).
The altitude of the spacecraft is 705 km. The across- and in-track ground
sample distances (GSDs), i.e., the detector widths projected through the sys-
tem optics onto the Earth’s surface, are 15 m (VNIR), 30 m (SWIR) and
90 m (TIR).∗ The telescope associated with the 3B sensors is back-looking at
an angle of 27.6o to provide, together with the 3N sensors, along-track stereo
image pairs. In addition, the VNIR camera can be rotated from straight down
(nadir) to ± 24o across-track. The SWIR and TIR instrument mirrors can be
pointed to ± 8.5o across-track. Like most platforms in this ground resolution
category, the orbit is near polar, sun-synchronous. Quantization levels are 8
bits for VNIR and SWIR and 12 bits for TIR. The sensor systems have an
∗ At the time of writing, both the VNIR and TIR systems are still producing good data.
1
2 Images, Arrays, and Matrices
FIGURE 1.1
ASTER color composite image (1000 × 1000 pixels) of VNIR bands 1 (blue),
2 (green), and 3N (red) over the town of Jülich in Germany, acquired on May
1, 2007. The bright areas are open cast coal mines.
average duty cycle of 8% per orbit (about 650 scenes per day, each 60×60 km2
in area) with revisit times between 4 and 16 days.
Figure 1.1 shows a spatial/spectral subset of an ASTER scene. The image is
a UTM (Universal Transverse Mercator) projection oriented along the satel-
lite path (rotated approximately 16.4o from north) and orthorectified using a
digital terrain model generated from the stereo bands.
Unlike passive multi- and hyperspectral imaging sensors, which measure
reflected solar energy or the Earth’s thermal radiation, synthetic aperture
radar (SAR) airborne and satellite platforms supply their own microwave
radiation source, allowing observations which are independent of time of day
3
FIGURE 1.2
A 5000×5000-pixel spatial subset of the HH polarimetric band of a TerraSAR-
X quad polarimetric image acquired over the Rhine River, Germany, in so-
called Stripmap mode. The data are slant-range, single-look, complex. The
gray-scale values correspond to the magnitudes of the complex pixel values.
where c is the number of pixel columns (also called samples) and r is the
number of pixel rows (or lines). The index k denotes the spectral band, of
which there are N in all. For data at an early processing stage a pixel may be
stored as a digital number (DN), often in a single byte so that 0 ≤ gk ≤ 255.
This is the case for the ASTER VNIR and SWIR bands at processing level L1A
(unprocessed reconstructed instrument data), whereas the L1A TIR data are
quantized to 12 bits (as unsigned integers) and thus stored as digital numbers
from 0 to 212 − 1 = 4095. Processed image data may of course be stored in
byte, integer or floating point format and can have negative or even complex
values.
The gray-scale values in the various bands encode measurements of the
radiance L∆λ (x, y) in wavelength interval ∆λ due to sunlight reflected from
some point (x, y) on the Earth’s surface, or due to thermal emission from
that surface, and focused by the instrument’s optical system along the array
of sensors. Ignoring all absorption and scattering effects of the intervening
atmosphere, the at-sensor radiance available for measurement from reflected
sunlight from a horizontal, Lambertian surface, i.e., a surface which scatters
reflected radiation uniformly in all directions, is given by
The units are [W/(m2 · sr · µm)], E∆λ is the average spectral solar irradiance
in the spectral band ∆λ, θz is the solar zenith angle, R∆λ (x, y) is the surface
reflectance at coordinates (x, y), a number between 0 and 1, and π accounts
for the upper hemisphere of solid angle. The conversion between DN and
at-sensor radiance is determined by the sensor calibration as measured (and
maintained) by the satellite image provider. For example, for ASTER VNIR
and SWIR L1A data,
∗ GeoTIFF is an open source specification and refers to TIFF files which have geographic
(or cartographic) data embedded as tags within the file. The geographic data can be used
to position the image in the correct location and geometry on the screen of a geographic
information display.
6 Images, Arrays, and Matrices
Listing 1.1 is a simple and fairly self-explanatory Python script which reads
a multispectral image into a Python/NumPy array in BSQ interleave format
with the aid of GDAL (the Geospatial Data Abstraction Library) and then
displays a spectral band using the matplotlib.pyplot package. The script
takes two arguments, the image filename and the band number to be displayed
and is run from the command prompt in Windows or from a console window
on Unix-like systems with the command python ex1 1.py *args. In the Unix
case, the “shebang” #! in the first line allows it to be run simply by typing
the filename, assuming the path to the env utility is /usr/bin/env. In this
book we will prefer to work almost exclusively from within Jupyter notebooks,
where the script can be executed with the so-called line magic %run without
Exploring the Variety of Random
Documents with Different Content
his goods; and thus we came to know what men among us were like
to be called forth on this voyage.
Presently the big door was thrown open, and all faces flashed about
to the new interest. Outside stood a double red line of English
soldiers. An officer—the round-faced Colonel Winslow himself—
stepped in, a scroll of paper curling in his hand. In a precise and
something pompous voice he read aloud the names of those to go.
The Le Marchands were first on the roll; then the Le Boutilliers,
Ba’tiste Chouan, Jean and Tamin Masson, and a long list that
promised to thin our crowded benches by one-third. But I was left
among the unsummoned; and my cousin Marc, and long Philibert
Trou, and the wily fox La Mouche; and I saw Marc’s lips compress
with a significant satisfaction when he saw these two remaining.
Vaguely I thought—“He has a plan!” But thereafter, in my gloom, I
thought no more of it.
So these chosen ones marched off between their guards; and that
afternoon the ship went out on the ebb tide with a wind that carried
her, white-sailed, around the dark point of Blomidon. Grand Pré
chapel prison settled apathetically back to a deeper calm.
Chapter XXVIII
T he days dragged till December was setting his hoar face toward
death, and still delayed the last ships. The jailers grew sour-
visaged. From Yvonne came no more word, only the tidings that she
was not well, and that her people were troubled for her. Father
Fafard’s cheery wrinkles at mouth and eyes deepened from cheer to
care; but still his lips locked over the name of Yvonne.
My hope sank ever lower and lower. That old wound in my head,
cured by Grûl’s searching simples, began to harass me afresh—
whether from cold, the chapel being but barn-like, or from the
circumstance that my heart, ceaselessly gnawing upon itself, gnawed
also upon every tissue and nerve. I came strangely close to the
ranger La Mouche in those bad days; for though I knew not, nor
cared nor dared to ask, his story, I saw in his eyes a something
which he, too, doubtless saw in mine. So it came that we sat much
together, in a black silence. It was not that I loved less than of old
my true comrade Marc, but the fact that he possessed where he
loved, and could with blissful confidence look forward, set him some
way apart from me. Upon La Mouche, with the deep hurt sullen in
his eyes, I could look and mutter to myself:
“Old, wily fox, is your foot, once so free, caught in the snare of a
woman?”
So tortuous a thing in its workings is this red clot of a human heart
that I got a kind of perverted solace out of such thoughts as these.
At last the tired watchers at our south windows announced two ship
in the basin. They came up on the flood, and dropped anchor off the
Gaspereau mouth.
“This ends it,” I heard Marc say coolly. “All that’s left of Grand Pré
can go in those two ships.”
To me the words came as a knell for the burial of my last hope.
The embarkation had now to be pushed with a speed which wrought
infinite confusion, for the weather had turned bitter, and it was not
possible for women and children to long endure the cold of their
dismantled homes. The big wagons, watched by us from our
windows, went creaking and rattling down the frozen roads. Wailing
women, frightened and wondering children, beds, chests, many-
colored quilts, bright red and green chairs,—to us it looked as if all
these were tumbled into a narrowing vortex and swept with a
piteous indiscriminacy into one ship or the other. The orderly method
with which the previous embarkings had been managed was now all
thrown to the winds by the fierce necessity for haste. We in the
chapel were not left long to watch the scene from the windows.
While yet the main street of Grand Pré was dolorous with the tears
of the women and children, the doors of our prison opened and
names were called. I heeded them not; but the sound of my own
name pierced my gloom; and I went out. In the tingling air I awoke
a little, to gaze up the hill at the large house where Yvonne had
lodged since the parsonage had been taken for a guard-house. No
message came to me from those north windows. Then I turned, to
find Marc at my side.
“Courage, cousin mine,” he whispered. “We are not beaten yet.
Better outside than in there. This much means freedom—and, once
free, we’ll act.”
“No, Marc, I’m not beaten,” I muttered. “But—it looks as if I were.”
“Chut, man!” said he crisply. “You couldn’t do a better thing to bring
her to her senses than you are doing now.”
It was but a few steps down to the lane, and there we found
ourselves in a jumble of heaped carts and blue-skirted, weeping
women. My head was paining me sorely—a numb ache that seemed
to rise in the core of my brain. But I remember noting with a far-off
commiseration the blubbered faces of the women, and their poor
little solicitudes for this or that bit of household gear which, from
time to time, would fall crashing to the ground from the hastily laden
carts. I found spirit to wonder that the tears which had exhausted
themselves over the farewell to fatherland and hearthside should
break out afresh over the cracking of a gilded glass or the shattering
of a blue and silver jug. The women’s lamentations in a little
hardened me, so that my ears ignored them; but the wide-eyed
terrors of the children, their questions unanswered, their whimpering
at the cold that blued their hands, all this pierced me. Tears for the
children’s sorrow gathered in my heart, till it was nigh to bursting;
and this curbed passion of pity, I think, kept my sick body from
collapse. It in some way threw me back from my own misery on to
my old unroutable resolution.
“I will win!” I said in my heart, as we came down upon the wharf at
the Gaspereau mouth. “Though there seems to be no more hope,
there is life; and while there is life, I hold on.”
When we reached the wharf the ebb was well advanced. The boats
could not get near the wharf. Women had to wade ankle-deep in
freezing slime to reach them. The slime was churned with the
struggle of many feet. The stuff from the carts was at times dropped
in the ooze, to be recovered or not as might chance. The soldiers
toiled faithfully, and their leggings to the knee were a sorry sight.
They were patient, these red-coats, with the women, who often
seemed to lose their heads so that they knew not which boat they
wanted to go in. To the children every red-coat seemed tender as a
mother. For any one, indeed, they would do anything, except endure
delay. Haste, haste, haste was all—and therefore there was
calamitous confusion. While I stood on the wharf awaiting the order
to embark, I saw a stout girl in a dark-red stomacher and grey
petticoat throw herself screaming into the water where it was about
waist deep, and scramble desperately to another boat near by. No
effort was made to restrain her. Dripping with tide and slime she
climbed over the gunwale; and belike found what she sought, for
her cries ceased. Again I noted—Marc called my attention to it—a
small child being passed from one boat to the other, as the two,
bound for different ships, were about diverging. The mother had
stumbled blindly into one boat while the child had been tossed into
the other. In the effort to remedy this oversight the child was
dropped into the water between the boats. The screams of the
mother were like a knife in our ears. Two sailors went overboard at
once, but there was some delay ere the little one was recovered.
Then we saw its limp body passed in over the boatside; whether
alive or dead we could not judge; but the screams ceased and our
ear-drums blessed the respite.
With the next boat came our turn; and I found myself wading down
the slope of icy ooze. I heard Marc, just behind me, mutter a
careless imprecation upon the needless defiling of his boots. He was
ever imperturbable, my cousin,—a hot heart, but in steel harness.
We loaded the roomy long-boat till the gunwale was almost awash.
The big oars creaked and thumped in the rowlocks. We moved
laboriously out to the ships, which swung on straining cable in the
tide. As we came under her black-wall side, with the turbid red-grey
current hissing past it, men on deck caught us with grapnels, and we
swung, splashing, under the stern. Then, the tide being very
troublesome, we were drawn again alongside.
Marc was at my elbow. “Look!” he cried, pointing to the ridge behind
the village. I saw a wide-roofed cottage on the crest break into
flame. There was a wind up there, though little as yet down here in
the valley; and the flames streamed out to westward, the black
smoke rolling low and ragged above them.
“So goes all Grand Pré in a little!” muttered Marc.
“It is P’tit Joliet’s house!” said I.
“Yes,” said a steady young voice behind me; and I turned to see
Petit Joliet himself, watching with undaunted eyes the burning of his
home. “Yes, and it was a fine house. It would have hurt my father
sorely, were he alive now, to see it go up in smoke like that.”
“Well, you have a brave heart,” said I, liking him well as I saw his
firmness.
“Oh,” said he, “the only thing that is troubling me is this—shall I find
my mother on this ship? They are making mistakes now, these
English, in their haste to be done with us. I’m worried.”
“If she is not on board,” said my kind Marc, “we’ll try and keep a
watch on the boats; and if we see her bound for the wrong ship
we’ll let the guard know. They want to keep families together, if they
can.”
This was Marc, ever careful of others. But his good purpose was like
to have been frustrated soon as formed; for scarce were our feet
well on deck when our hands were clapped in irons, and we were
marched off straight to the hold.
“Sorry, sir. Can’t help it. So many of you, you know,” said the red-
coat apologetically, as I stretched out my wrists to him.
But glancing about the crowded deck I descried my good friend,
Lieutenant Waldron, busily unravelling the snarl of things. In answer
to my hail he came at once, warm, friendly, and trying not to see my
irons.
“One last little service, sir!” I cried. “Little to us, it may be great to
others. You see we are ironed, Captain de Mer and I. We will give
our word to neither attempt escape nor in any way interfere with
this sorry work. Let us two wait here on deck till the ship sails. We
know all these villagers; and we want to help you avoid the
severance of families.”
“It is little to grant for you, my friend,” said he, in a feeling voice.
“You cannot know how my heart is aching. I will speak to the
captain of the ship, and you shall stay on deck till the ship sails.”
Marc thanked him courteously, but I with no more than a look, for
words did not at that time seem compliant to say what I desired
them to say. They are false and treacherous spirits, these words we
make so free with and trust so rashly with affairs of life and death.
How often do they take an honest meaning from the heart and twist
it to the semblance of a lie as it leaves the lips! How often do they
take a flame from the inmost soul, and make it ice before it reaches
the soul toward which it thrilled forth! It has been my calling to work
with words in peace, as with swords in time of war; and I know
them. I do not trust them. The swords are the safer.
Chapter XXIX
A Woman’s Privilege
I did not sleep that night—not one eye-wink—in the hold of the
New England ship. Neither could I think, nor even greatly suffer.
Rather I lay as it were numbly weltering in my despair. What if I had
known all that was going on meanwhile in that other ship, a league
behind us, sailing under the lurid sky!
The events which I am now about to set down were not, as will be
seen, matter of my own experience. I tell what I have inferred and
what has been told me—but told me from such lips and in such
fashion that I may indeed be said to have lived it all myself. It is
more real to me than if my own eyes had followed it. It is sometimes
true that we may see with the eyes of others—of one other—more
vividly than with our own.
In the biggest house of that “Colony of Compromise” on the hill—the
house nearest the chapel prison—a girl stood at a south window
watching the flames in the village below. The flames, at least, she
seemed to be watching. What she saw was the last little column of
prisoners marching away from the chapel; and her teeth were set
hard upon her under lip.
She was not thinking; she was simply clarifying a confused resolve.
White and thin, and with deep purple hollows under her great eyes,
she was nevertheless not less beautiful than when, a few months
before, joyous mirth had flashed from her every look and gesture, as
colored lights from a fire-opal. She still wore on her small feet
moccasins of Indian work; but now, in winter, they were of heavy,
soft, white caribou-skin, laced high upon the ankles, and
ornamented with quaint pattern of red and green porcupine quills.
Her skirt and bodice were of creamy woollen cloth; and over her
shoulders, crossed upon her breast and caught in her girdle, was
spread a scarf of dark-yellow silk. The little black lace shawl was
flung back from her head, and her hands, twisted tightly in the ends
of it, were for a wonder quite still—tensely still, with an air of final
decision. Close beside her, flung upon the back of a high wooden
settee, lay a long, heavy, hooded cloak of grey homespun, such as
the peasant women of Acadie were wont to wear in winter as an
over-garment.
A door behind her opened, but Yvonne did not turn her head.
George Anderson came in. He came to the window, and tried to look
into her eyes. His face was grave with anxiety, but touched, too,
with a curious mixture of impatience and relief. He spoke at once, in
a voice both tender and tolerant.
“There go the last of them, poor chaps!” he said. “Captain Grande
went some hours ago—quite early. I pray, dear, that now he is gone
—to exile indeed, but in safety—you will recover your peace of mind,
and throw off this morbid mood, and be just a little bit kinder to—
some people!” And he tried, with an awkward timidity, to take her
hand.
She turned upon him a sombre, compassionate gaze, but far-off,
almost as if she saw him in a dream.
“Don’t touch me—just now,” she said gently, removing her hand. “I
must go out into the pastures for air, I think. All this stifles me! No,
alone, alone!” she added more quickly, in answer to an entreaty in
his eyes. “But, oh, I am sorry, so sorry beyond words, that I cannot
seem kind to—some people! Good-by.”
She left the room, and closed the door behind her. The door shut
smartly. It sounded like a proclamation of her resolve. So—that was
settled! In an instant her whole demeanour changed. A fire came
back into her eyes, and she stepped with her old, soft-swaying
lightness. In the room which she now entered sat her father and
mother. The withered little reminiscence of Versailles watched at a
window-side, her black eyes bright with interest, her thin lips slightly
curved with an acerb and cynical compassion. But Giles de Lamourie
sat with his back to the window, his face heavy and grey.
“This is too awful!” he said, as Yvonne came up to him, and, bending
over, kissed him on the forehead and the lips.
“It is like a nightmare!” she answered. “But, would you believe it,
papa, the very shock is doing me good? The suspense—that kills!
But I feel more like myself than I have for weeks. I must go out,
breathe, and walk hard in the open.”
De Lamourie’s face lightened.
“Thou art better, little one,” said he. “But why go alone at such a
time? Where’s George?”
But Yvonne was already at her mother’s side, kissing her, and did not
answer her father’s question; which, indeed, needed no answer, as
he had himself seen Anderson go into the inner room and not
return.
“But where will you go, child?” queried her mother. “There are no
longer any left of your sick and your poor and your husbandless to
visit.”
“But I will be my own sick, little mamma,” she cried nervously, “and
my own poor—and my own husbandless. I will visit myself. Don’t be
troubled for me, dearies!” she added, in a tender voice. “I am so
much better already.”
The next moment she was gone. The door shut loudly after her.
“Wilful!” said her mother.
“Yes, more like she used to be. Much better!” exclaimed Giles de
Lamourie, rising and looking out at the fires in a moment of brief
absent-mindedness. “Yes, much better, George,” he added, as
Anderson appeared from the inner room.
But the Englishman’s face was full of discomfort. “I wish she would
not go running out alone this way,” said he.
“Curious that she should prefer to be alone, George,” said Madame
de Lamourie, with deliberate malice. She was beginning to dislike
this man who so palpably could not give her daughter happiness.
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
textbookfull.com