100% found this document useful (1 vote)
13 views

Image analysis, classification and change detection in remote sensing: with algorithms for Python Fourth Edition Canty - Get instant access to the full ebook with detailed content

The document promotes the ebook 'Image Analysis, Classification, and Change Detection in Remote Sensing: With Algorithms for Python, Fourth Edition' by Morton John Canty, available for download at textbookfull.com. It includes links to various related ebooks on remote sensing and image processing. The document also provides information about the book's content, including its structure and topics covered.

Uploaded by

leronejnr
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
13 views

Image analysis, classification and change detection in remote sensing: with algorithms for Python Fourth Edition Canty - Get instant access to the full ebook with detailed content

The document promotes the ebook 'Image Analysis, Classification, and Change Detection in Remote Sensing: With Algorithms for Python, Fourth Edition' by Morton John Canty, available for download at textbookfull.com. It includes links to various related ebooks on remote sensing and image processing. The document also provides information about the book's content, including its structure and topics covered.

Uploaded by

leronejnr
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 57

Explore the full ebook collection and download it now at textbookfull.

com

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-fourth-edition-canty/

OR CLICK HERE

DOWLOAD EBOOK

Browse and Get More Ebook Downloads Instantly at https://textbookfull.com


Click here to visit textbookfull.com and download textbook now
Your digital treasures (PDF, ePub, MOBI) await
Download instantly and pick your perfect format...

Read anywhere, anytime, on any device!

Image Analysis, Classification, and Change Detection in


Remote Sensing: With Algorithms for Python 4th Edition
Morton John Canty
https://textbookfull.com/product/image-analysis-classification-and-
change-detection-in-remote-sensing-with-algorithms-for-python-4th-
edition-morton-john-canty/
textbookfull.com

Fuzzy Machine Learning Algorithms for Remote Sensing Image


Classification 1st Edition Anil Kumar

https://textbookfull.com/product/fuzzy-machine-learning-algorithms-
for-remote-sensing-image-classification-1st-edition-anil-kumar/

textbookfull.com

Image processing and GIS for remote sensing : techniques


and applications Second Edition Liu

https://textbookfull.com/product/image-processing-and-gis-for-remote-
sensing-techniques-and-applications-second-edition-liu/

textbookfull.com

Multisensor Image Fusion and Data Mining for Environmental


Remote Sensing First Edition Bai

https://textbookfull.com/product/multisensor-image-fusion-and-data-
mining-for-environmental-remote-sensing-first-edition-bai/

textbookfull.com
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/
textbookfull.com

Hyperspectral Imaging Remote Sensing Physics Sensors and


Algorithms 1st Edition Dimitris G. Manolakis

https://textbookfull.com/product/hyperspectral-imaging-remote-sensing-
physics-sensors-and-algorithms-1st-edition-dimitris-g-manolakis/

textbookfull.com

Spatial Analysis for Radar Remote Sensing of Tropical


Forests 1st Edition Gianfranco D. De Grandi

https://textbookfull.com/product/spatial-analysis-for-radar-remote-
sensing-of-tropical-forests-1st-edition-gianfranco-d-de-grandi/

textbookfull.com

Deep Learning for Remote Sensing Images with Open Source


Software 1st Edition Rémi Cresson

https://textbookfull.com/product/deep-learning-for-remote-sensing-
images-with-open-source-software-1st-edition-remi-cresson/

textbookfull.com

Introductory digital image processing: A remote sensing


perspective John R. Jensen & Dr. Kalmesh Lulla

https://textbookfull.com/product/introductory-digital-image-
processing-a-remote-sensing-perspective-john-r-jensen-dr-kalmesh-
lulla/
textbookfull.com
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

Morton John Canty


CRC Press
Taylor & Francis Group
6000 Broken Sound Parkway NW, Suite 300
Boca Raton, FL 33487-2742

© 2019 by Taylor & Francis Group, LLC


CRC Press is an imprint of Taylor & Francis Group, an Informa business

No claim to original U.S. Government works

Printed on acid-free paper


Version Date: 20190130

International Standard Book Number-13: 978-1-138-61322-5 (Hardback)

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.

Library of Congress Cataloging-in-Publication Data

Names: Canty, Morton John, author.


Title: Image analysis, classification and change detection in remote sensing
: with algorithms for Python / by Morton J. Canty.
Description: Fourth edition. | Boca Raton, FL : CRC Press/Taylor & Francis
Group, 2019. | Includes bibliographical references and index.
Identifiers: LCCN 2018051975| ISBN 9781138613225 (hardback : acid-free paper)
| ISBN 9780429464348 (ebook)
Subjects: LCSH: Remote sensing--Mathematics. | Image analysis--Mathematics. |
Image analysis--Data processing. | Python (Computer program language)
Classification: LCC G70.4 .C36 2019 | DDC 621.36/70285--dc23
LC record available at https://lccn.loc.gov/2018051975

Visit the Taylor & Francis Web site at


http://www.taylorandfrancis.com
and the CRC Press Web site at
http://www.crcpress.com
Contents

Preface to the First Edition xiii

Preface to the Second Edition xv

Preface to the Third Edition xvii

Preface to the Fourth Edition xx

Author Biography xxi

1 Images, Arrays, and Matrices 1


1.1 Multispectral satellite images . . . . . . . . . . . . . . . . . . 4
1.2 Synthetic aperture radar images . . . . . . . . . . . . . . . . . 7
1.3 Algebra of vectors and matrices . . . . . . . . . . . . . . . . . 10
1.3.1 Elementary properties . . . . . . . . . . . . . . . . . . 11
1.3.2 Square matrices . . . . . . . . . . . . . . . . . . . . . . 13
1.3.3 Singular matrices . . . . . . . . . . . . . . . . . . . . . 15
1.3.4 Symmetric, positive definite matrices . . . . . . . . . . 15
1.3.5 Linear dependence and vector spaces . . . . . . . . . . 16
1.4 Eigenvalues and eigenvectors . . . . . . . . . . . . . . . . . . 17
1.5 Singular value decomposition . . . . . . . . . . . . . . . . . . 19
1.6 Finding minima and maxima . . . . . . . . . . . . . . . . . . 21
1.7 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

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

2.3.3 Real and complex multivariate sample distributions . . 55


2.4 Bayes’ Theorem, likelihood and classification . . . . . . . . . 57
2.5 Hypothesis testing . . . . . . . . . . . . . . . . . . . . . . . . 60
2.6 Ordinary linear regression . . . . . . . . . . . . . . . . . . . . 65
2.6.1 One independent variable . . . . . . . . . . . . . . . . 65
2.6.2 Coefficient of determination (R2 ) . . . . . . . . . . . . 67
2.6.3 More than one independent variable . . . . . . . . . . 68
2.6.4 Regularization, duality and the Gram matrix . . . . . 72
2.7 Entropy and information . . . . . . . . . . . . . . . . . . . . . 73
2.7.1 Kullback–Leibler divergence . . . . . . . . . . . . . . . 75
2.7.2 Mutual information . . . . . . . . . . . . . . . . . . . . 76
2.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

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

4 Filters, Kernels, and Fields 127


4.1 The Convolution Theorem . . . . . . . . . . . . . . . . . . . . 127
4.2 Linear filters . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.3 Wavelets and filter banks . . . . . . . . . . . . . . . . . . . . 135
4.3.1 One-dimensional arrays . . . . . . . . . . . . . . . . . 136
4.3.2 Two-dimensional arrays . . . . . . . . . . . . . . . . . 141
4.4 Kernel methods . . . . . . . . . . . . . . . . . . . . . . . . . . 144
4.4.1 Valid kernels . . . . . . . . . . . . . . . . . . . . . . . 144
4.4.2 Kernel PCA . . . . . . . . . . . . . . . . . . . . . . . . 149
4.5 Gibbs–Markov random fields . . . . . . . . . . . . . . . . . . 152
4.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Contents vii

5 Image Enhancement and Correction 159


5.1 Lookup tables and histogram functions . . . . . . . . . . . . . 159
5.2 High-pass spatial filtering and feature extraction . . . . . . . 161
5.2.1 Sobel filter . . . . . . . . . . . . . . . . . . . . . . . . 161
5.2.2 Laplacian-of-Gaussian filter . . . . . . . . . . . . . . . 164
5.2.3 OpenCV and GEE algorithms . . . . . . . . . . . . . . 166
5.2.4 Invariant moments . . . . . . . . . . . . . . . . . . . . 171
5.3 Panchromatic sharpening . . . . . . . . . . . . . . . . . . . . 177
5.3.1 HSV fusion . . . . . . . . . . . . . . . . . . . . . . . . 178
5.3.2 Brovey fusion . . . . . . . . . . . . . . . . . . . . . . . 179
5.3.3 PCA fusion . . . . . . . . . . . . . . . . . . . . . . . . 179
5.3.4 DWT fusion . . . . . . . . . . . . . . . . . . . . . . . . 180
5.3.5 À trous fusion . . . . . . . . . . . . . . . . . . . . . . . 181
5.3.6 A quality index . . . . . . . . . . . . . . . . . . . . . . 184
5.4 Radiometric correction of polarimetric SAR imagery . . . . . 185
5.4.1 Speckle statistics . . . . . . . . . . . . . . . . . . . . . 185
5.4.2 Multi-look data . . . . . . . . . . . . . . . . . . . . . . 188
5.4.3 Speckle filtering . . . . . . . . . . . . . . . . . . . . . . 193
5.5 Topographic correction . . . . . . . . . . . . . . . . . . . . . . 200
5.5.1 Rotation, scaling and translation . . . . . . . . . . . . 201
5.5.2 Imaging transformations . . . . . . . . . . . . . . . . . 202
5.5.3 Camera models and RFM approximations . . . . . . . 203
5.5.4 Stereo imaging and digital elevation models . . . . . . 205
5.5.5 Slope and aspect . . . . . . . . . . . . . . . . . . . . . 210
5.5.6 Illumination correction . . . . . . . . . . . . . . . . . . 211
5.6 Image–image registration . . . . . . . . . . . . . . . . . . . . 216
5.6.1 Frequency domain registration . . . . . . . . . . . . . 217
5.6.2 Feature matching . . . . . . . . . . . . . . . . . . . . . 219
5.6.3 Re-sampling with ground control points . . . . . . . . 223
5.7 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

6 Supervised Classification Part 1 231


6.1 Maximizing the a posteriori probability . . . . . . . . . . . . 233
6.2 Training data and separability . . . . . . . . . . . . . . . . . . 234
6.3 Maximum likelihood classification . . . . . . . . . . . . . . . . 239
6.3.1 Naive Bayes on the GEE . . . . . . . . . . . . . . . . . 240
6.3.2 Python scripts for supervised classification . . . . . . . 241
6.4 Gaussian kernel classification . . . . . . . . . . . . . . . . . . 245
6.5 Neural networks . . . . . . . . . . . . . . . . . . . . . . . . . . 248
6.5.1 The neural network classifier . . . . . . . . . . . . . . 253
6.5.2 Cost functions . . . . . . . . . . . . . . . . . . . . . . 256
6.5.3 Backpropagation . . . . . . . . . . . . . . . . . . . . . 258
6.5.4 A deep learning network . . . . . . . . . . . . . . . . . 264
6.5.5 Overfitting and generalization . . . . . . . . . . . . . . 268
6.6 Support vector machines . . . . . . . . . . . . . . . . . . . . . 270
viii Image Analysis, Classification, and Change Detection in Remote Sensing

6.6.1 Linearly separable classes . . . . . . . . . . . . . . . . 270


6.6.2 Overlapping classes . . . . . . . . . . . . . . . . . . . . 276
6.6.3 Solution with sequential minimal optimization . . . . . 278
6.6.4 Multiclass SVMs . . . . . . . . . . . . . . . . . . . . . 279
6.6.5 Kernel substitution . . . . . . . . . . . . . . . . . . . . 280
6.7 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284

7 Supervised Classification Part 2 289


7.1 Postprocessing . . . . . . . . . . . . . . . . . . . . . . . . . . 289
7.1.1 Majority filtering . . . . . . . . . . . . . . . . . . . . . 290
7.1.2 Probabilistic label relaxation . . . . . . . . . . . . . . 290
7.2 Evaluation and comparison of classification accuracy . . . . . 293
7.2.1 Accuracy assessment . . . . . . . . . . . . . . . . . . . 293
7.2.2 Accuracy assessment on the GEE . . . . . . . . . . . . 298
7.2.3 Cross-validation on parallel architectures . . . . . . . . 299
7.2.4 Model comparison . . . . . . . . . . . . . . . . . . . . 302
7.3 Adaptive boosting . . . . . . . . . . . . . . . . . . . . . . . . 306
7.4 Classification of polarimetric SAR imagery . . . . . . . . . . . 312
7.5 Hyperspectral image analysis . . . . . . . . . . . . . . . . . . 314
7.5.1 Spectral mixture modeling . . . . . . . . . . . . . . . . 314
7.5.2 Unconstrained linear unmixing . . . . . . . . . . . . . 317
7.5.3 Intrinsic end-members and pixel purity . . . . . . . . . 318
7.5.4 Anomaly detection: The RX algorithm . . . . . . . . . 319
7.5.5 Anomaly detection: The kernel RX algorithm . . . . . 322
7.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326

8 Unsupervised Classification 329


8.1 Simple cost functions . . . . . . . . . . . . . . . . . . . . . . . 330
8.2 Algorithms that minimize the simple cost functions . . . . . . 332
8.2.1 K-means clustering . . . . . . . . . . . . . . . . . . . . 333
8.2.2 Kernel K-means clustering . . . . . . . . . . . . . . . . 338
8.2.3 Extended K-means clustering . . . . . . . . . . . . . . 341
8.2.4 Agglomerative hierarchical clustering . . . . . . . . . . 344
8.2.5 Fuzzy K-means clustering . . . . . . . . . . . . . . . . 347
8.3 Gaussian mixture clustering . . . . . . . . . . . . . . . . . . . 349
8.3.1 Expectation maximization . . . . . . . . . . . . . . . . 350
8.3.2 Simulated annealing . . . . . . . . . . . . . . . . . . . 353
8.3.3 Partition density . . . . . . . . . . . . . . . . . . . . . 353
8.3.4 Implementation notes . . . . . . . . . . . . . . . . . . 354
8.4 Including spatial information . . . . . . . . . . . . . . . . . . 354
8.4.1 Multiresolution clustering . . . . . . . . . . . . . . . . 354
8.4.2 Spatial clustering . . . . . . . . . . . . . . . . . . . . . 357
8.5 A benchmark . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
8.6 The Kohonen self-organizing map . . . . . . . . . . . . . . . . 362
8.7 Image segmentation and the mean shift . . . . . . . . . . . . 366
Contents ix

8.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368

9 Change Detection 375


9.1 Naive methods . . . . . . . . . . . . . . . . . . . . . . . . . . 376
9.2 Principal components analysis (PCA) . . . . . . . . . . . . . 378
9.2.1 Iterated PCA . . . . . . . . . . . . . . . . . . . . . . . 380
9.2.2 Kernel PCA . . . . . . . . . . . . . . . . . . . . . . . . 382
9.3 Multivariate alteration detection (MAD) . . . . . . . . . . . . 384
9.3.1 Canonical correlation analysis (CCA) . . . . . . . . . . 385
9.3.2 Orthogonality properties . . . . . . . . . . . . . . . . . 388
9.3.3 Iteratively re-weighted MAD . . . . . . . . . . . . . . 389
9.3.4 Scale invariance . . . . . . . . . . . . . . . . . . . . . . 391
9.3.5 Correlation with the original observations . . . . . . . 392
9.3.6 Regularization . . . . . . . . . . . . . . . . . . . . . . 394
9.3.7 Postprocessing . . . . . . . . . . . . . . . . . . . . . . 396
9.4 Unsupervised change classification . . . . . . . . . . . . . . . 397
9.5 iMAD on the Google Earth Engine . . . . . . . . . . . . . . . 399
9.6 Change detection with polarimetric SAR imagery . . . . . . . 401
9.6.1 Scalar imagery: the gamma distribution . . . . . . . . 402
9.6.2 Polarimetric imagery: the complex Wishart distribu-
tion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
9.6.3 Python software . . . . . . . . . . . . . . . . . . . . . 409
9.6.4 SAR change detection on the Google Earth Engine . . 413
9.7 Radiometric normalization of visual/infrared images . . . . . 415
9.7.1 Scatterplot matching . . . . . . . . . . . . . . . . . . . 416
9.7.2 Automatic radiometric normalization . . . . . . . . . . 419
9.8 RESTful change detection on the GEE . . . . . . . . . . . . . 422
9.9 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422

A Mathematical Tools 427


A.1 Cholesky decomposition . . . . . . . . . . . . . . . . . . . . . 427
A.2 Vector and inner product spaces . . . . . . . . . . . . . . . . 429
A.3 Complex numbers, vectors and matrices . . . . . . . . . . . . 430
A.4 Least squares procedures . . . . . . . . . . . . . . . . . . . . . 432
A.4.1 Recursive linear regression . . . . . . . . . . . . . . . . 432
A.4.2 Orthogonal linear regression . . . . . . . . . . . . . . . 434
A.5 Proof of Theorem 7.1 . . . . . . . . . . . . . . . . . . . . . . . 437

B Efficient Neural Network Training Algorithms 441


B.1 The Hessian matrix . . . . . . . . . . . . . . . . . . . . . . . . 441
B.1.1 The R-operator . . . . . . . . . . . . . . . . . . . . . . 442
B.1.2 Calculating the Hessian . . . . . . . . . . . . . . . . . 445
B.2 Scaled conjugate gradient training . . . . . . . . . . . . . . . 447
B.2.1 Conjugate directions . . . . . . . . . . . . . . . . . . . 447
B.2.2 Minimizing a quadratic function . . . . . . . . . . . . 449
x Image Analysis, Classification, and Change Detection in Remote Sensing

B.2.3 The algorithm . . . . . . . . . . . . . . . . . . . . . . . 451


B.3 Extended Kalman filter training . . . . . . . . . . . . . . . . . 455
B.3.1 Linearization . . . . . . . . . . . . . . . . . . . . . . . 456
B.3.2 The algorithm . . . . . . . . . . . . . . . . . . . . . . . 457

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

C.4.33 rx.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482


C.4.34 sar seq.py . . . . . . . . . . . . . . . . . . . . . . . . . 482
C.4.35 scatterplot.py . . . . . . . . . . . . . . . . . . . . . . . 483
C.4.36 som.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
C.4.37 subset.py . . . . . . . . . . . . . . . . . . . . . . . . . 484
C.5 JavaScript on the GEE Code Editor . . . . . . . . . . . . . . 484
C.5.1 imad run . . . . . . . . . . . . . . . . . . . . . . . . . 484
C.5.2 omnibus run . . . . . . . . . . . . . . . . . . . . . . . 484
C.5.3 omnibus view . . . . . . . . . . . . . . . . . . . . . . . 485
C.5.4 imad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
C.5.5 omnibus . . . . . . . . . . . . . . . . . . . . . . . . . . 485
C.5.6 utilities . . . . . . . . . . . . . . . . . . . . . . . . . . 485

Mathematical Notation 487

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

I’ve made considerable effort to maintain a consistent, clear mathemati-


cal style throughout. Although the developments in the text are admittedly
uncompromising, there is nothing that, given a little perseverance, cannot
be followed by a reader who has grasped the elementary matrix algebra and
statistical concepts explained in the first two chapters. If the student has am-
bitions to write his or her own image analysis programs, then he or she must
be prepared to “get the maths right” beforehand. There are, heaven knows,
enough pitfalls to worry about thereafter.
All of the illustrations and applications in the text are programmed in RSI’s
ENVI/IDL. The software is available for download at the publisher’s website:
http://www.crcpress.com/e products/downloads/default.asp
Given the plethora of image analysis and geographic information system (GIS)
software systems on the market or available under open source license, one
might think that the choice of computer environment would have been diffi-
cult. It wasn’t. IDL is an extremely powerful, array- and graphics-oriented,
universal programming language with a versatile interface (ENVI) for im-
porting and analyzing remote sensing data — a peerless combination for my
purposes. Extending the ENVI interface in IDL in order to implement new
methods and algorithms of arbitrary sophistication is both easy and fun.
So, apart from some exposure to elementary calculus (and the aforesaid
perseverance), the only other prerequisites for the book are a little familiarity
with the ENVI environment and the basic knowledge of IDL imparted by such
excellent introductions as Fanning (2000) or Gumley (2002). For everyday
problems with IDL at any level from “newbie” on upward, help and solace are
available at the newsgroup
comp.lang.idl-pvwave
frequented by some of the friendliest and most competent gurus on the net.
I would like to express my thanks to Rudolf Avenhaus and Allan Nielsen
for their many comments and suggestions for improvement of the manuscript
and to CRC Press for competent assistance in its preparation. Part of the
software documented in the text was developed within the Global Monitor-
ing for Security and Stability (GMOSS) network of excellence funded by the
European Commission.

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

togram enhancement modes is included.


For an excellent introduction to scientific computing in Python see Lang-
tangen (2009). The book by Westra (2013) provides valuable tips on geospatial
development in Python, including GDAL programming. The definitive refer-
ence on IDL is now certainly Galloy (2011), an absolute must for anyone who
uses the language professionally.
With version 5.0, a new ENVI graphics environment and associated API has
appeared which has a very different look and feel to the old “ENVI Classic”
environment, as it is officially referred to. Fortunately the classic environment
is still available and, for reasons of compatibility with previous versions, the
IDL programming examples in the text use the classic interface and its asso-
ciated syntax. Most of the ENVI/IDL extensions as documented in Appendix
C are provided both for the new as well as for the classic GUI/API.
I would like to express my appreciation to the German Aerospace Center
for permission to use images from the TerraSAR-X platform and to Henning
Skriver, DTU Space Denmark, for allowing me to use his EMISAR polari-
metric data. My special thanks go to Allan Nielsen and Frank Thonfeld for
acquainting me with SAR imagery analysis and to Rudolf Avenhaus for his
many helpful suggestions in matters statistical.

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.

The SWIR sensor was declared to be unusable in 2008.

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.

or cloud cover. The radar antenna on the TerraSAR-X satellite, launched in


June, 2007, emits and receives X-band radar (9.65 GHz) in both horizontal and
vertical polarizations to provide surface imaging with a geometric resolution
from about 18 m (scanSAR mode, 10 km×150 km swath) down to 1 m (high-
resolution Spotlight mode, 10 km×5 km swath). It flies in a sun-synchronous,
near-polar orbit at an altitude of 514 km with a revisit time for points on
the equator of 11 days. Figure 1.2 shows a TerraSAR-X HH polarimetric
band (horizontally polarized radiation emitted and detected) acquired over
the Rhine River, Germany, in April, 2010. The data are at the single-look,
slant-range complex (SLC) processing level, and are not map-projected.
4 Images, Arrays, and Matrices

1.1 Multispectral satellite images


A multispectral, optical/infrared image such as that shown in Figure 1.1 may
be represented as a three-dimensional array of gray-scale values or pixel in-
tensities
gk (i, j), 1 ≤ i ≤ c, 1 ≤ j ≤ r, 1 ≤ k ≤ N,

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

L∆λ (x, y) = E∆λ · cos θz · R∆λ (x, y)/π. (1.1)

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,

L∆λ (x, y) = A · DN/G + D.

The quantities A (linear coefficient), G (gain), and D (offset) are tabulated


for each of the detectors in the arrays and included with each acquisition.
Atmospheric scattering and absorption models may be used to deduce at-
surface radiance, surface temperature and emissivity or surface reflectance
from the observed radiance at the sensor. Reflectance and emissivity are di-
rectly related to the physical properties of the surface being imaged. See
Multispectral satellite images 5

Schowengerdt (2006) for a thorough discussion of atmospheric effects and their


correction.
Various conventions are used for storing the image array gk (i, j) in computer
memory or other storage media. In band interleaved by pixel (BIP) format, for
example, a two-channel, 3 × 3 pixel image would be stored as
g1 (1, 1) g2 (1, 1) g1 (2, 1) g2 (2, 1) g1 (3, 1) g2 (3, 1)
g1 (1, 2) g2 (1, 2) g1 (2, 2) g2 (2, 2) g1 (3, 2) g2 (3, 2)
g1 (1, 3) g2 (1, 3) g1 (2, 3) g2 (2, 3) g1 (3, 3) g2 (3, 3),
whereas in band interleaved by line (BIL) it would be stored as
g1 (1, 1) g1 (2, 1) g1 (3, 1) g2 (1, 1) g2 (2, 1) g2 (3, 1)
g1 (1, 2) g1 (2, 2) g1 (3, 2) g2 (1, 2) g2 (2, 2) g2 (3, 2)
g1 (1, 3) g1 (2, 3) g1 (3, 3) g2 (1, 3) g2 (2, 3) g2 (3, 3),
and in band sequential (BSQ) format as
g1 (1, 1) g1 (2, 1) g1 (3, 1)
g1 (1, 2) g1 (2, 2) g1 (3, 2)
g1 (1, 3) g1 (2, 3) g1 (3, 3)
g2 (1, 1) g2 (2, 1) g2 (3, 1)
g2 (1, 2) g2 (2, 2) g2 (3, 2)
g2 (1, 3) g2 (2, 3) g2 (3, 3).
In the computer language Python, augmented with the numerical package
NumPy, so-called row major indexing is used for arrays and the elements in
an array are numbered from zero. This means that, if a gray-scale image g
is assigned to a Python array variable g, then the intensity value g(i, j) is
addressed as g[j-1,i-1]. An N -band multispectral image is stored in BIP
format as an r × c × N array in NumPy, in BIL format as an r × N × c and in
BSQ format as an N × r × c array. So, for example, in BIP format the value
gk (i, j) is stored at g[j-1,i-1,k-1].
Auxiliary information, such as image acquisition parameters and georef-
erencing, is sometimes included with the image data on the same file, and
the format may or may not make use of compression algorithms. Examples
are the GeoTIFF∗ file format used, for instance, by Space Imaging Inc. for
distributing Carterra c imagery and which includes lossless compression, the
HDF-EOS (Hierarchical Data Format-Earth Observing System) files in which
ASTER images are distributed, and the PCIDSK format employed by PCI
Geomatics c with its image processing software, in which auxiliary informa-
tion is in plain ASCII and the image data are not compressed. ENVI ( c Harris
Geospatial Solutions) uses a simple “flat binary” file structure with an addi-
tional ASCII header file.

∗ 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: Reading and displaying an image band in Python.


1 # !/ usr / bin / env python
2 # Name : ex1_1 . py
3 import numpy as np
4 import sys
5 from osgeo import gdal
6 from osgeo . gdalconst import GA_ReadOnly
7 import matplotlib . pyplot as plt
8
9 def disp ( infile , bandnumber ):
10 gdal . AllRegister ()
11 inDataset = gdal . Open ( infile , GA_ReadOnly )
12 cols = inDataset . RasterXSize
13 rows = inDataset . RasterYSize
14 bands = inDataset . RasterCount
15
16 image = np . zeros (( bands , rows , cols ))
17 f o r b i n range( bands ):
18 band = inDataset . GetRasterBand ( b +1)
19 image [b ,: ,:]= band . ReadAsArray (0 ,0 , cols , rows )
20 inDataset = None
21
22 # display NIR band
23 band = image [ bandnumber -1 ,: ,:]
24 mn = np . amin ( band )
25 mx = np . amax ( band )
26 plt . imshow (( band - mn )/( mx - mn ) , cmap = ’ gray ’)
27 plt . show ()
28
29 i f __name__ == ’ __main__ ’:
30 infile = sys . argv [1]
31 bandnumber = i n t ( sys . argv [2])
32 disp ( infile , bandnumber )

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
Another Random Document on
Scribd Without Any Related Topics
trouve la preuve dans la biographie authentique
de Galien qui habitait alors cette ville[133].
Frappé d’une insurmontable terreur, il partit
secrètement pour la Campanie. Mais ne s’y
croyant pas assez en sûreté, il s’embarqua à
Brindes pour Pergame, ce qui donne à penser
qu’il n’y avait plus trace d’épidémie dans l’Asie
Mineure. Vers la fin de cette année ou au
commencement de la suivante (169), il fut
mandé par les empereurs, revint à Rome et alla
les rejoindre à Aquilée. Il est vraisemblable que
l’épidémie s’était sensiblement affaiblie,
puisqu’on ne ralentit pas les préparatifs d’une
grande expédition. Mais au moment où l’on
était plein d’espoir, survint une grande
recrudescence à laquelle l’agglomération des
troupes ne fut probablement pas étrangère. Les
deux souverains quittèrent précipitamment
Aquilée; et, pendant le retour, Lucius Vérus
mourut subitement d’un coup de sang, selon les
uns, par le poison, d’après les autres. Cette
indécision des historiens, assez indifférente en
elle-même, prouve qu’il ne succomba pas à
l’épidémie régnante.
Peu de temps après, Marc-Aurèle prit le
commandement de l’armée, et comme l’entrée
en campagne ne fut point ajournée, il est à
croire que la maladie avait cessé d’inspirer des
craintes. Mais son terme définitif devait se faire
longtemps attendre. Galien atteste
formellement qu’elle n’était pas éteinte à
l’époque où il rédigeait le Ve livre de sa
Thérapeutique. Il y exprime, en effet, le vœu de
la voir prendre bientôt fin[134]. Or, on sait que
Galien était déjà avancé en âge lorsqu’il
composa cet ouvrage, où il cite plusieurs de ses
écrits antérieurs[135]. On ne se trompe donc pas
en évaluant approximativement à quinze ans la
durée entière de la peste Antonine, que Galien
distingue des autres maladies populaires dont il
a l’occasion de parler, en l’appelant la longue
peste, pestis diuturna.
Julius Capitolinus a noté un détail des
derniers moments de Marc-Aurèle qui pourrait
avoir sa valeur dans cette question de
chronologie. «Le septième jour, dit-il, s’étant
senti plus mal, il ne voulut recevoir que son fils,
qu’il congédia aussitôt, dans la crainte de lui
communiquer sa maladie[136].»
La préoccupation du mourant et les termes
qui l’expriment font assez justement supposer à
M. Hecker que l’empereur se savait atteint de la
peste, dont il n’ignorait pas la transmissibilité.
Je suis d’autant plus disposé à adopter cette
version, qu’elle n’est contredite par aucun
document. A ce compte, il y aurait encore eu
des cas de peste en 180, année de la mort de
Marc-Aurèle.
Les historiens qui ont consigné dans leurs
chroniques le récit de ce funèbre épisode, ont
laissé prudemment à l’écart la question
médicale. Mais on compte se refaire de leur
silence auprès de Galien, qui a saisi, sans
doute, avec empressement l’occasion d’ajouter
à son œuvre un beau travail de plus. L’épreuve
dément bientôt cette espérance.
Galien, qui affecte un grand dédain
scientifique pour la description de Thucydide, et
qui aurait dû montrer comment il fallait s’y
prendre pour faire mieux, a reculé devant les
chances du parallèle[137].
Comprend-on qu’un écrivain aussi fécond,
dont la prolixité filandreuse se donne si souvent
carrière sur une foule de sujets sans
importance, au risque de lasser la patience du
lecteur le plus résolu, se soit borné, sur un fait
aussi grave, à quelques indications éparses,
dont on regrette doublement l’obscurité et la
concision[138]!
Alléguera-t-on la manière d’observer des
anciens? Mais cette excuse banale tombe
devant les descriptions nosographiquement
irréprochables qui ne sont pas rares dans leurs
livres et sont restées des modèles.
Disons-le sans détour, quoi qu’il en coûte: le
motif de l’inexplicable réserve de Galien n’est
pas de ceux que la science avoue. Il faut s’en
prendre tout simplement à l’effroi qu’inspirait
une maladie épidémique et contagieuse, contre
laquelle il n’y avait de recours assuré que dans
la fuite. A cette époque d’abaissement moral, la
fibre du devoir médical restait insensible. Les
nobles engagements du serment d’Hippocrate
ne trouvaient plus d’écho. Affronter la mort
pour soigner des malades était acte de dupe.
De nos jours ce lâche égoïsme serait justiciable
de l’opinion publique. Au temps de Galien, il
avait passé dans les mœurs, et le médecin de
l’empereur donnait lui-même l’exemple. Comme
le dit avec esprit M. Hecker: au lieu d’observer
et de traiter des pestiférés, au péril de sa vie,
Galien aimait mieux s’isoler dans son paisible
laboratoire pour y préparer sa merveilleuse
thériaque d’Andromaque, destinée à calmer les
souffrances des souverains et des grands de
l’empire[139].
Cédant peut-être à un remords secret, il se
vante d’avoir soigné d’innombrables malades
(μυριους), sans s’apercevoir que cette
hyperbole, fût-elle même l’expression de la
vérité, aggravait le reproche qu’il avait encouru
pour avoir traité avec tant d’indifférence, la
plume à la main, un fait médical aussi
mémorable[140].
Il n’en faut pas moins reconnaître que les
renseignements qu’il nous a transmis, tout
incomplets qu’ils sont, ont d’autant plus de prix
qu’on ne les trouve que dans ses écrits, qu’ils
nous viennent d’un témoin oculaire, et que ce
témoin est Galien[141].
Voici donc le tableau symptomatique de la
peste Antonine, tel que nous avons pu le
reconstruire en rapprochant, non sans difficulté,
tous les fragments disséminés dans les œuvres
les plus disparates du médecin de Rome.
Au contact, le corps des malades ne
paraissait pas plus chaud que dans l’état
naturel; mais ils ressentaient une ardeur
intérieure intolérable[142]. La peau n’était pas
jaune, mais un peu rouge et livide. A un
moment donné, elle se couvrait d’une éruption
dont Galien a parfaitement spécifié les
caractères. Chez le plus grand nombre, elle
occupait toute la surface du corps, sous la
forme de pustules qui s’ulcéraient et se
recouvraient d’une croûte (εφελκις des Grecs)
[143]
. Quand cette croûte se détachait, elle
laissait une cicatrice solide. Dans des cas plus
rares, l’éruption était «rude et psorique»
(aspera et scabiosa), c’est-à-dire composée de
papules qui se terminaient par une sorte de
desquamation[144].
Cet exanthème spécial ne peut être
confondu avec aucun de ceux que nous
connaissons. Il diffère totalement des éruptions
pétéchiales et miliaires qui accompagnent si
souvent les pyrexies épidémiques de notre
temps et notamment la peste d’Orient. On ne
les voit jamais en effet s’ulcérer, se revêtir d’une
croûte et laisser des cicatrices. Si nous y
retrouvons quelque analogie avec la pustulation
variolique, nous constatons aussi des
dissemblances notables. Le champ est donc
largement ouvert aux conjectures. Pour nous
guider dans la détermination de ce diagnostic
différentiel, nous aurions pu tirer d’utiles
éclaircissements du rapprochement et de la
comparaison d’un certain nombre de faits. Mais
j’ai annoncé bien des lacunes, et Galien qui
avait, à l’entendre, recueilli tant d’observations,
a trouvé bon de ne nous en donner qu’une
seule.
Il s’agit d’un jeune homme qui eut, le
neuvième jour, le corps entier couvert d’ulcères.
Trois jours après, les cicatrices étaient faites, et
le malade se sentit assez bien pour s’embarquer
et aller achever sa guérison, par l’usage du lait,
dans un site renommé pour sa salubrité[145].
D’après le nombre de jours assignés par
l’auteur à la formation de l’éruption et des
cicatrices, il paraîtrait que cette maladie
rappelait par la succession régulière de ses
périodes et leur durée prévue, les fièvres
éruptives de la nosologie moderne. Mais il ne
nous est pas permis d’aller au delà de cette
similitude extérieure.
Les pustules étaient noires et leur passage à
l’ulcération était le fait le plus commun, sans
toutefois être constant.
Dans certains cas, il n’y avait ni croûtes, ni
cicatrices consécutives, et on ne voyait se
détacher qu’une simple pellicule. D’où il résulte
que l’éruption affectait la forme de pustules ou
de vésicules. Les premières, profondément
implantées dans le derme, laissaient des
marques après elles. Les autres, plus
superficielles, soulevaient simplement
l’épiderme et il n’en restait pas de traces. Dans
les cas où il se formait des cicatrices, elles
étaient complètes en deux ou trois jours,
témoin l’observation qu’on vient de lire.
Lorsque l’exanthème était «sec» c’est-à-dire
papuleux, la desquamation s’effectuait dans le
même temps; ce qu’il était facile de vérifier sur
les sujets dont la peau était semée de pustules
et de papules entremêlées.
La couleur noire de l’éruption et l’odeur
repoussante exhalée par les malades étaient
l’expression de l’état malin et putride dont on
ne pouvait méconnaître la redoutable
association.
Il est heureux que Galien n’ait pas abrégé le
signalement de cet exanthème qui est un des
traits les plus originaux de la peste Antonine et
lui imprime un cachet d’individualité morbide,
que nous retrouverons d’ailleurs dans
l’ensemble de ses autres caractères.
Les malades accusaient une invincible
aversion pour les aliments. Tourmentés par une
soif dévorante, ils demandaient à grands cris
des boissons froides[146].
Le trouble des facultés intellectuelles prenait
diverses formes. Certains malades éprouvaient
comme des absences pendant lesquelles ils
n’avaient pas conscience d’eux-mêmes et ne
reconnaissaient pas leur entourage[147]. D’autres
étaient pris d’un délire furieux, suivi d’un état
comateux ou léthargique. Dans ce cas, le
pronostic était alarmant. On comptait aussi
parmi les symptômes de funeste augure, les
inflammations viscérales; les évacuations
diarrhéiques colliquatives; la gangrène qui
dévorait jusques à l’os les parties en contact
avec les excrétions putrides dont le lit était
imprégné.
Du côté de l’appareil respiratoire, on
observait une toux sèche plus ou moins intense
avec timbre rauque de la voix, signe évident de
la phlegmasie de la muqueuse laryngo-
bronchique.
Le jeune homme dont nous avons déjà dit
un mot, se mit à tousser le jour même où sa
peau fut entièrement couverte d’ulcères. Le
lendemain il fut pris tout à coup d’une quinte
violente qui provoqua l’expulsion d’une croûte
semblable à celles de l’éruption cutanée. Le
sujet s’était plaint d’éprouver, dans la région
latérale du cou, sur le trajet de la trachée-
artère, une sensation douloureuse, signe
probable de la formation d’un ulcère interne.
Galien avait exploré attentivement la bouche et
l’arrière-gorge, et n’y avait découvert aucun
indice de travail ulcératif. La déglutition des
solides et des liquides s’opérait sans la moindre
gêne. Le corps étranger, rejeté par le patient,
n’était pas ce que nous appellerions aujourd’hui
un produit diphthéritique. Il provenait des
pustules propagées sur la muqueuse des voies
aériennes, comme on le voit si souvent dans la
variole. Galien reconnut aussitôt une croûte
détachée de l’ulcération laryngienne, pareille à
celles qui recouvraient la peau. Il eut occasion,
s’il faut l’en croire, de vérifier le même
phénomène chez d’autres sujets dont la maladie
eut également une heureuse fin. (Ad
postremum similiter alii.)
Pour préciser le véritable siége de la douleur
accusée par le sujet, et s’assurer qu’elle ne
dépendait pas d’une lésion gutturale ou
œsophagienne, Galien avait eu recours à un
singulier expédient. Il avait prescrit une mixture
de vinaigre et de moutarde, et comme le
contact de cette matière irritante le long de
l’œsophage n’avait éveillé aucun sentiment
douloureux, il avait acquis la certitude que
l’ulcération était établie sur la muqueuse
trachéale[148].
Le diagnostic pouvait être porté dès
l’invasion, lorsque les yeux étaient enflammés,
et que la cavité buccale, la langue et l’arrière-
gorge offraient une teinte rouge sui generis
dont Galien a caractérisé d’un mot la valeur
séméiotique en l’appelant pestilentielle[149]. A
première vue, les personnes étrangères à la
médecine reconnaissaient la maladie. Cette
coloration, que l’auteur compare à celle «de
l’érysipèle ou de l’herpès» n’était pas le résultat
d’un état phlegmasique local, puisque la
déglutition était facile et indolente. Elle
annonçait seulement un haut degré
d’inflammation dans la muqueuse intestinale.
On n’observa que chez un certain nombre de
malades des vomissements de matières jaunes
plus ou moins foncées; mais il y eut chez tous
des déjections alvines de même couleur, qui
devenaient plus tard noirâtres par leur mélange
avec le sang. Cette couleur n’apparaissait
jamais à l’invasion ou dans la période
d’augment, mais toujours vers le déclin ou aux
approches de la mort; parfois vers le septième
jour; le plus souvent au neuvième; plus
rarement au onzième[150]. Dans quelques cas,
ces évacuations diarrhéiques parurent
salutaires; mais généralement elles furent du
plus fâcheux augure. Elles emportèrent le plus
grand nombre des malades en épuisant leurs
forces.
La survenance des gangrènes locales était
aussi des plus graves, sans cependant interdire
tout espoir. Galien avait vu les orteils (extremos
pedes) se séparer spontanément après leur
mortification. Plusieurs malades, qui avaient
survécu à cette mutilation, ne pouvaient, dit-il,
assurer leur marche qu’à l’aide d’un bâton, sur
lequel ils étaient même obligés de s’appuyer
fortement[151].
Notre auteur qui s’était tant occupé du
pouls, nous apprend qu’il restait souvent normal
pendant le cours de la maladie, et que les
malheureux chez lesquels il conserva ce
caractère, périrent tous. Circonstance bien faite,
ajoute-t-il, pour donner le change même aux
praticiens les plus expérimentés[152].
A côté de ces faits, il faut placer ceux où il
avait vu l’urine différer à peine de l’état
naturel[153].
Ces deux phénomènes congénères
n’appartenaient pas en propre à la peste
Antonine. Ils ne s’y rattachaient éventuellement
qu’à titre de maladie maligne où
«l’affaiblissement des forces radicales fait cesser
les synergies et les sympathies les plus
ordinaires des organes[154].» Galien vérifiait une
fois de plus le célèbre aphorisme de son maître:
«Pulsus bonus, urina bona, æger moritur.»
Notons enfin, que la maladie pouvait se
prolonger et prendre la marche chronique.
Après quelques alternatives de rémission et de
redoublement, dont la durée était très-variable
suivant les individus, la fièvre hectique
s’allumait, et le patient succombait dans le
dernier degré de la consomption.
Nous possédons, en ce moment, des
données suffisantes pour répondre à cette
question: Qu’est-ce que la peste Antonine?
En additionnant successivement ses
symptômes d’après les indications de Galien,
nous avons vu se dessiner peu à peu une
individualité morbide dont le signalement
complet a fini par reproduire, trait pour trait,
l’image frappante de la peste d’Athènes.
Que le lecteur qui a bien voulu me suivre,
prenne la peine de confronter les deux
descriptions, et j’espère qu’il partagera ma
conviction très-arrêtée sur l’identité des deux
maladies.
Ardeur inflammatoire des yeux; rougeur sui
generis de la cavité buccale et de la langue;
aversion pour les aliments; soif inextinguible;
température extérieure normale, contrastant
avec la sensation d’un embrasement intérieur;
coloration de la peau rougeâtre et livide; toux
violente et timbre rauque de la voix, signes de
phlegmasie laryngo-bronchique; horrible fétidité
de l’haleine; éruption générale de pustules
suivies d’ulcérations; inflammation de la
muqueuse intestinale; vomissements de
matières bilieuses; diarrhée colliquative de
même nature épuisant les forces; gangrènes
partielles et séparation spontanée des organes
mortifiés; troubles variés des facultés
intellectuelles; délire tranquille ou furieux;
terminaison funeste du septième au neuvième
jour. Enfin, dans des cas moins aigus,
dégénérescence de la maladie en fièvre
hectique mortelle, après des oscillations plus ou
moins prolongées.
Tous les symptômes que je viens d’énumérer
se retrouvent dans le tableau tracé par
Thucydide et dans celui que nous sommes
parvenus à recomposer d’après Galien. Deux
affections morbides qui ont cette expression
commune, ne peuvent évidemment être
séparées l’une de l’autre.
Si Galien, au lieu de critiquer son illustre
devancier, avait imité son exemple, nous
n’aurions eu qu’à rapprocher les deux récits
pour que leur conclusion légitime surgît d’elle-
même.
Mais il a mieux aimé proposer à ses lecteurs
futurs une sorte d’hiéroglyphe nosographique
dont il a fallu retrouver les signes, confusément
éparpillés dans son œuvre immense, et comme
égarés dans des digressions théoriques, au
milieu desquelles il n’est pas toujours facile de
se reconnaître. C’est ainsi que je m’explique le
silence, l’indécision ou le laconisme des
loïmographes modernes à l’égard de la peste
Antonine. Ils ont trouvé commode de répéter,
les uns après les autres, qu’une grande maladie
épidémique avait désolé le monde sous le règne
de Marc-Aurèle; que Galien, son contemporain,
en avait été témoin et qu’il en avait eu
grand’peur. Cela dit, ils se croient quittes, de
très-bonne foi, envers leurs lecteurs, et n’ont
pas l’air de se douter qu’on puisse être plus
exigeant.
Il y avait donc une lacune à remplir dans
l’histoire ancienne des grandes épidémies.
L’entreprise a tenté deux médecins allemands
dont l’érudition et l’expérience étaient une
garantie de succès[155]. J’ai eu l’avantage de
venir après eux, et j’ai mis la main sur quelques
passages de Galien qu’ils n’avaient pas indiqués.
Quelle que soit ma profonde estime pour les
travaux de Fodéré et d’Ozanam, je ne pouvais
méconnaître qu’en présence de la peste
Antonine, ils ne s’étaient pas tenus à la hauteur
du sujet; et j’aurais été sans excuse si je leur
avais laissé le dernier mot, lorsqu’il y avait tant
à dire[156].
Quant à ma conclusion, c’est celle de Galien
lui-même qui, frappé de ce qu’il voyait, a
reconnu formellement que cette maladie
pestilentielle avait le même aspect que celle
dont Thucydide avait écrit la relation: «... In
magnâ hâc peste cujus eadem facies fuit atque
ejus qua Thucydidis memoria grassabatur[157].»
Galien revient sur cette idée en plusieurs
endroits. Les médecins d’Athènes n’avaient pu
dissimuler leur étonnement devant ce fléau
inconnu qui prenait possession de la pathologie
humaine. Il n’en fut plus de même lors de
l’apparition de la peste Antonine. Comme
homme, Galien fut terrifié; comme médecin, il
n’éprouva pas la moindre surprise. Il n’eut qu’à
relire le récit de Thucydide pour s’assurer qu’il
assistait au retour d’une ancienne maladie, et
que ce ne serait probablement pas le dernier.
Pour compléter cette étude, je crois devoir
examiner quelques particularités signalées par
Galien qui pourraient fournir matière à
discussion si je ne les mettais dans leur vrai
jour.
On ne m’opposera pas sans doute que les
deux descriptions, envisagées dans leur
ensemble, diffèrent sur certains points. Ces
divergences sont inévitables, et on les
retrouverait, à coup sûr, dans les récits de deux
médecins également attentifs et instruits qui
auraient observé simultanément la même
épidémie et raconteraient ce qu’ils ont vu. Mais
on sait que, quelle que soit la mobilité protéique
du tableau symptomatique d’une épidémie en
cours d’évolution, le type morbide qui la
représente garde son relief personnel au milieu
des épiphénomènes et des complications qui
viennent se grouper autour de lui. Deux
maladies qui portent cette estampille sont donc
nosologiquement identiques. A cet égard, je
crois ma conclusion parfaitement conforme aux
principes.
J’ai à répondre à un argument plus sérieux
qui exige quelques explications.
Galien donne clairement à entendre, dans
plus d’un passage, que l’éruption fut souvent
critique, et jugea heureusement la maladie[158].
Elle se montra, en effet, chez la plupart des
sujets qui guérirent, tandis qu’elle manqua
entièrement ou fut incomplète chez ceux qui
succombèrent ou dont la maladie fut le plus
grave. Thucydide ne fait aucune allusion à cette
circonstance qui valait bien la peine d’être
notée.
Entre le silence de l’un et l’affirmation de
l’autre, où se trouve la vérité? Je me range sans
balancer du côté de Galien, et voici mes raisons.
Thucydide n’était pas médecin, et la fermeté
de l’homme de guerre ne pouvait lui tenir lieu
des connaissances spéciales indispensables
pour pénétrer le sens des phénomènes
morbides qu’il observait.
Galien rachetait par son expérience pratique
sa défaillance morale; et sa théorie favorite,
dont on ne peut blâmer que l’exagération, le
ramenait à l’idée d’un effort conservateur, qui
pouvait avoir une issue heureuse.

«La nature, disait-il, éliminait par


l’émonctoire cutané des détritus putrides,
produits par la fièvre, dont la persistance
dans l’organisme eût été inévitablement
mortelle[159].»

J’accepte donc l’interprétation de Galien,


sauf sa formule surannée, parce que c’est celle
qui répond le mieux aux enseignements de la
clinique, et je crois à l’efficacité médicatrice de
l’éruption, quelle qu’ait été d’ailleurs la rareté
des cas où elle s’est heureusement exercée.
Cette remarque, pour le dire en passant,
s’applique à toutes les fièvres éruptives sans
distinction d’espèces.
Il n’est pas un médecin qui mette en doute
l’utilité de la pustulation variolique. Les
détracteurs de la vaccine s’en font même un
grand argument. Revenant, sous prétexte de
progrès, aux rêveries du vieil humorisme, ils
mesurent les avantages de la période
suppurative à la masse de matière peccante
qu’elle élimine; et ils refusent à l’insignifiante
éruption, provoquée par le vaccin, le droit de
remplacer l’épuration énergique de la variole
naturelle, cette «crise sublime!» comme ils l’ont
dit dans un ridicule élan d’enthousiasme.
Mais cette opération, dont la fin salutaire est
si évidente dans les varioles régulières, subit, en
temps d’épidémie grave, des déviations qui en
troublent la direction normale. Les praticiens
savent bien que la mort survient presque
toujours pendant la période de suppuration,
c’est-à-dire quand l’élimination critique est en
pleine activité et semble promettre une
terminaison favorable. Comme l’archer dont
parle Montaigne, la nature manque souvent le
but, non-seulement parce qu’elle ne l’atteint
pas, mais encore parce qu’elle le dépasse.
Dans le monde moral, on voit tous les jours
échouer, contre des obstacles inattendus, une
entreprise dont la sagesse et la prévoyance
avaient mûri le plan et assuré les chances. Peut-
on s’étonner que l’aveugle instinct qui dirige les
actes hygides et morbides de l’organisme soit
dominé par des influences qui déconcertent ses
tendances foncièrement salutaires? Les gens du
monde, étrangers à notre art, ont seuls le droit
de nier l’effort conservateur dans les cas où la
mort n’a pas permis d’en recueillir le bénéfice.
Galien ne s’y est pas trompé. Entre Thucydide
et lui, la divergence apparente sur ce fait, se
réduit à une question de compétence médicale.
Il me reste à vider une dernière question à
laquelle on pourrait donner une importance que
je suis loin de lui reconnaître.
Thucydide déplore amèrement, dans son
récit, l’impuissance absolue de l’art et l’inutilité
des remèdes essayés par les médecins.
Galien, au contraire, exalte avec assurance
l’efficacité d’une substance inscrite dans les
pharmacopées de l’époque sous le nom de bol
d’Arménie. «Tous ceux qui en firent usage,
furent, dit-il, promptement guéris. Ceux qui n’en
ressentirent aucun effet, moururent: nul autre
remède ne pouvait le remplacer.» Et il conclut,
avec une logique douteuse, que les sujets sur
lesquels ce médicament échoua, étaient
absolument incurables[160].
Voilà donc l’innocent bol d’Arménie promu
par Galien à la dignité de spécifique. Son refus
d’agir est l’arrêt de mort des malades.
Il m’est impossible d’accepter la question
thérapeutique dans ces termes, et je demande
la permission de justifier ma méfiance.
Dans toutes les épidémies, la superstition
populaire, encouragée souvent par la
connivence des médecins, dont il ne faut pas
toujours approfondir les motifs, s’est confiée à
certaines préparations bizarres, auxquelles on
peut du moins accorder l’avantage de relever le
moral, indication capitale en pareil cas.
Que le bol d’Arménie ait produit ce dernier
genre d’effet, je ne veux pas le nier; mais qu’il
ait mérité, comme agent médicamenteux, le
panégyrique de Galien, c’est ce que je ne puis
me résoudre à admettre.
Le sophisme post hoc ergo propter hoc, se
dresse en face de toutes les questions de
matière médicale appliquée, quand il s’agit de
juger les remèdes nouveaux ou d’étendre
l’emploi de certaines substances connues. Je
soupçonne fort l’ardente imagination de Galien
de ne l’avoir pas tenu assez en garde contre
cette mauvaise forme de raisonnement.
Non pas que je fonde ma contradiction sur
l’inertie apparente ou l’insignifiance
[161]
pharmaceutique du bol d’Arménie .
Le propre de la spécificité médicamenteuse
est d’agir directement sur certaines affections
par une vertu occulte, sans rapport appréciable
avec l’état morbide qu’elle combat. Tout est
mystère dans le mode d’action du remède
comme dans la nature de la maladie qu’il guérit.
On comprend dès lors que la découverte des
spécifiques soit un bienfait du hasard; et nous
savons, par l’histoire du quinquina, qu’ils
doivent faire un long noviciat avant d’obtenir
leur droit d’entrée dans l’arsenal thérapeutique.
Une fois leurs titres reconnus, l’art a entre les
mains une ressource héroïque qui ne lui fait pas
défaut quand il sait s’en servir[162].
A la rigueur donc, le bol d’Arménie aurait pu
être une de ces conquêtes imprévues; mais
pour croire à ses merveilleux effets, l’affirmation
intéressée de Galien ne suffit pas.
Quand on veut mettre en lumière les vertus
réelles d’un médicament nouveau, il faut réunir
un certain nombre de faits observés sans
prévention, les comparer entre eux, les
débarrasser des causes d’erreur ou d’illusion qui
pourraient en altérer le sens. Dans quelle
mesure d’activité et de fréquence le remède a-t-
il rempli l’attente du praticien? Dans quels cas
a-t-il paru indifférent, nuisible ou utile? Quelles
sont les indications et les contre-indications de
son emploi, etc., etc.?
Je n’aperçois dans l’œuvre de Galien aucune
trace de ce travail. Doué médicalement de
toutes les qualités nécessaires pour le mener à
bien, il manquait de sang-froid et d’esprit de
suite. Dieu me garde d’être injuste envers lui!
Mais on peut admirer ses talents et douter de
son courage; il n’y a pas de solidarité entre ces
deux choses[163].
Quoi qu’il en ait dit, il n’avait vu que
quelques scènes détachées du grand drame
pathologique. Il est bien permis de croire qu’il a
évité autant que possible tout rapport
compromettant avec les malades. Nous savons
que la peste régnait encore pendant qu’il
composait, dans le prudent isolement de son
cabinet, quelques-uns de ses écrits les plus
remarquables. Est-il un praticien un peu
répandu à qui une maladie épidémique ait laissé
ces loisirs? Comment croire dès lors aux exploits
thérapeutiques de Galien? Cet exemple serait
unique dans l’histoire des grandes épidémies.
L’expérience a trop souvent montré dans quelles
étroites limites est renfermée l’action de la
médecine lorsqu’elle entre en lutte avec ces
implacables ennemis de la vie humaine. La
science doit s’incliner alors devant une sorte de
loi fatale dont les peuples sont condamnés à
subir l’inflexible arrêt dans certains moments de
crises. La maladie traitée par Galien n’a pas
sans doute fait exception à la règle générale. La
preuve, c’est que le bol d’Arménie n’a pas
survécu à sa gloire éphémère. On l’a banni de
toutes les pharmacopées, sans encourir le
reproche d’ingratitude. Galien, qui croyait ou
feignait de croire aux songes, leur a dû peut-
être la révélation de son prétendu spécifique. Je
ne puis me décider à lui donner une origine plus
sérieuse[164].
Un dernier mot. Lors même que le bol
d’Arménie aurait mérité, par ses services
éprouvés, l’honneur que lui a fait Galien, je
n’aurais rien à changer à mon opinion sur la
nature de la maladie Antonine. Cela prouverait
seulement que l’art s’était fortuitement enrichi
d’une ressource précieuse qui manquait aux
médecins contemporains de Thucydide. Avant la
découverte du quinquina, les fièvres
intermittentes étaient (c’est Sydenham qui l’a
dit) l’opprobre de la thérapeutique. Elles en sont
aujourd’hui le plus beau titre. Ceci soit dit
simplement comme similitude. Le quinquina a
fait largement ses preuves, tandis que le bol
d’Arménie, un moment exalté, ne s’est plus
relevé de l’oubli profond où il est justement
tombé.
Nous avons vu que la maladie populaire qui
avait si tristement inauguré le règne de Marc-
Aurèle, s’était perpétuée avec des alternatives
de rémission et de recrudescence jusqu’à
l’époque de la mort de cet empereur. A dater de
ce moment, le vaste incendie jette encore çà et
là quelques lueurs éparses qui ne tardent pas à
s’éteindre; le retour trop prévu du fléau paraît
ajourné à une échéance lointaine.
Sept ans après, sous le règne de Commode,
éclata encore une terrible épidémie, dont la
mention nous est transmise, sans autre détail,
par Dion Cassius, qui se borne à dire que de
mémoire d’homme il n’y en avait pas eu de plus
meurtrière.
Il n’est pas douteux pour moi qu’elle ne soit
une émanation de la peste Antonine. Ces
retours imprévus sont dans les habitudes des
grandes épidémies; c’est malheureusement tout
ce que je puis en dire. J’ai fait quelques
recherches pour m’éclairer; mais aucun des
historiens que j’ai consultés ne signale même
cette invasion nouvelle, et il m’est resté le
regret de ne pouvoir satisfaire sur ce point la
juste curiosité de mon lecteur.

M. le Dr Théod. Krause, qui guette au


passage les faits favorables à son opinion
personnelle sur l’antiquité de la variole, s’est
emparé de la relation de Dion Cassius. Selon lui,
cette maladie se serait transmise par
l’inoculation à l’aide d’aiguilles empoisonnées;
ce qui semblerait ne devoir se rapporter qu’à la
variole[165].
Il suffit de lire le récit du chroniqueur pour
s’assurer que cette interprétation est purement
arbitraire.

«En ce temps-là (sous le règne de


Commode), éclata une maladie qui dépassa
en violence toutes celles qui me sont
connues. Souvent en un seul jour il
succombait à Rome plus de deux mille
personnes. De plus, il périt beaucoup de
monde par un autre genre de mort, non-
seulement dans la ville, mais encore dans
presque tout l’empire romain. Des scélérats,
moyennant salaire, empoisonnaient des
individus en les piquant avec des aiguilles
préalablement enduites de matières toxiques
(ce qui s’était déjà fait du temps de
Domitien), et ce procédé fit d’innombrables
victimes[166].»

Voici maintenant, d’après l’auteur, ce qui


s’était passé sous le règne de Domitien:

«Une bande de malfaiteurs


empoisonnèrent des aiguilles et s’en
servirent pour piquer les individus qu’ils
avaient désignés d’avance. Plusieurs de ceux
qui avaient reçu ces piqûres succombèrent
sans se douter de la cause de leur mort.
Mais quelques-uns de ces scélérats furent
dénoncés et livrés au dernier supplice. Et
cela arriva non-seulement à Rome, mais
pour ainsi dire sur toute la terre
habitée[167].»

La première pensée que cette lecture fait


surgir, c’est que le narrateur est l’écho d’un de
ces bruits populaires avidement recueillis par les
masses en temps d’épidémie, et qui se
perpétuent dans l’histoire, jusqu’à ce que le
progrès des lumières en fasse justice. A
l’époque dont il s’agit, de graves écrivains
rapportaient sans sourciller les fables les plus
absurdes; et j’avoue que je ne puis donner un
autre nom au récit de Cassius, qui n’est qu’un
tissu d’invraisemblances, si l’on en pèse
attentivement les détails.
Ce complot énigmatique contre la vie des
citoyens, si cruellement moissonnés par
l’épidémie; ces assassinats salariés et propagés
par une complicité inexplicable dans tout
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

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.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like