Review: Image Analysis, Classification and Change Detection in Remote Sensing (with algorithms for ENVI/IDL) by M. J. Canty
Summary: More mathematical than I thought it would be, but very thorough and well explained. I thought that there would be more instruction in how to program in IDL and use the ENVI API, but much of this can be learnt by examining the code given in the book. The book is very comprehensive and most major algorithms are covered in enough detail to allow the reader to implement them.
Reference: Canty, M. J., 2010, Image Analysis, Classification and Change Detection in Remote Sensing: With algorithms for ENVI/IDL, 2nd edition, 441 pages, ISBN: 978-1-4200-8713-0, Amazon Link
I purchased this book towards the end of my undergraduate BSc Geography degree, as I was writing a number of image processing algorithms for my undergraduate dissertation, and thought that the book would be useful for the PhD in Remote Sensing that I would be starting soon. I’m happy to say that it has been very useful – read on to find out why.
I did not realise quite how mathematical the book was when I purchased it (I bought it through Amazon), and was slightly scared when I opened it to find headings like Theorem 4.2 and lots of mathematical symbols I’d never come across before! This certainly reminded me that one of key skills I need to improve in the next few years is my ability to read and understand mathematics. Once I got over the shock of seeing so much maths I found the book very useful. To start with I read it without really reading the maths, but have gradually managed to get in to the maths and understand the important bits.
I would recommend thoroughly reading and understanding Chapter 1 for those readers who don’t have much mathematical experience. I jumped in to later sections, but found that I could understand them far better once I’d read the basic material at the start. However, for someone with a higher mathematical understanding the later sections are likely to be able to be understood on their own.
So, what do these later sections contain? Well, the book can be divided into three main sections: Image Analysis, Classification and Change Detection (as you might expect from the title). Image analysis includes everything from simple image statistics and transformations (such as MNF and PCA) to filters, feature extraction and topographic modelling. Classification is split, as you would expect, into Unsupervised and Supervised, with sections focussed on Support Vector Machine classification and post-classification analysis. Finally, the Change Detection section focuses mainly on Canty’s own work on Multivariate Alteration Detection, but also covers some other methods such as simple differencing and PCA-based change detection.
I was impressed that Canty explains each algorithm from the ‘bottom up’ (which is where all of the mathematics comes in), in enough detail to allow the reader to write their own implementation. Where appropriate he mentions the ENVI built-in functions and often provides an explanation of the differences between ENVI’s implementation and the mathematics he has described. This approach has proved very useful for me when attempting to implement simple algorithms in languages such as Python.
The Appendices provide more mathematical information, efficient algorithms for neural-network training and, most importantly, a list of all of the ENVI code which is available from the author’s website. This code is well documented and of high quality, with good error-checking (a nice change to a lot of ENVI/IDL code that I have seen).
Overall, this book is a very useful addition to my Remote Sensing library. Simple answers about algorithms can be gained more easily from other books, but this provides the in-depth approach when that is required. I would recommend this book to postgraduate students, as most undergraduate students would not have the time or mathematical ability to make full use of it. It will be most useful to researchers who are implementing existing image analysis algorithms or those who are developing their own algorithms and want to see what has been done already so they can extend them. The focus on MAD in the Change Detection section is particularly useful as an example of a modern quantitative remote sensing algorithm.