0% found this document useful (0 votes)
336 views

Cosi Corr Guide

COSI-Corr is a software module integrated in ENVI. It provides tools to accurately orthorectify, co-register, and correlate optical remotely sensed images. A sub-pixel detection capability is expected, depending on the quality and the noise level of the data.

Uploaded by

amartin99
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
336 views

Cosi Corr Guide

COSI-Corr is a software module integrated in ENVI. It provides tools to accurately orthorectify, co-register, and correlate optical remotely sensed images. A sub-pixel detection capability is expected, depending on the quality and the noise level of the data.

Uploaded by

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

Users Guide to COSI-CORR

Co-registration of Optically Sensed Images and Correlation


Franois Ayoub, Sbastien Leprince, and Lionel Keene
California Institute of Technology
1200 East California Blvd, Pasadena, CA 91125, USA
February 2, 2009
Abstract
This document is a users guide for the installation and the use of COSI-Corr. COSI-Corr is a software
module integrated in ENVI, which provides tools to accurately orthorectify, co-register, and correlate
optical remotely sensed images (aerial and pushbroom satellite images) with the ultimate objective of
retrieving ground surface deformation from multi-temporal images. Although this module is tailored to
measure ground deformations such as coseismic deformation, glacier ows, sand dune migrations, slow
landslides, etc, it can also be a valuable tool for many other change detection applications requiring
accurate coregistration of images. A sub-pixel detection capability is expected, depending on the quality
and the noise level of the data.
1
COSI-Corr Users Manual
February 2, 2009
Copyright c 2006 California Institute of Technology
2
Contents
1 Preface 6
1.1 About This Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Who Will Use This Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 About COSI-Corr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5 Citation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.6 Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 Installation and Getting Help 8
2.1 How to get COSI-Corr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3 Windows Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4 Unix Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.5 Getting Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3 Introduction: A Typical Processing Chain 11
4 Aerial Imagery Specic 12
4.1 Interior Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2 Exterior Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.3 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5 Satellite Imagery Specic 15
5.1 Ancillary File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.2 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
6 Tie Points and GCPS 16
6.1 Tie points Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6.2 Tie points to GCPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
7 GCPS Optimization 17
8 Orthorectication and Resampling 20
8.1 Orthorectication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
8.2 Resampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
9 Correlation and Displacement Measurements 23
9.1 Frequential Correlator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
9.2 Statistical Correlator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
10 Tools 26
10.1 Non Local Means Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
10.1.1 Filter Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
10.1.2 Filter Parameters (Fig. 14) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
10.1.3 Advanced Filter Parameters (Fig. 15) . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
10.2 Discard/Replace Image Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
10.3 Destripe Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
10.3.1 Manual Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
10.3.2 Automatic Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
10.4 Vector Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
10.5 Stacking Proles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3
10.5.1 Orient Fault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
10.5.2 Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
10.6 Matrices Interdistances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
11 Miscellaneous 36
4
List of Figures
1 COSI-Corr into ENVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 Aerial image ducial points selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3 Interior Orientation Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 Exterior Orientation Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5 Tie Points to GCPS Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6 GCPS text File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
7 GCPS Optimization Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
8 Orthorectication Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
9 Resampling Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
10 Sinc Kernel Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
11 Correlation Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
12 Frequential Correlator Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
13 Statistic Correlator Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
14 Non-Local Means Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
15 Non-Local Means Filter Advanced Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
16 Image Filter Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
17 Destripping Selection Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
18 Destripping Stacking Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
19 Destripping Corrected Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
20 Vector Field Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
21 Prole Stacking Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
22 Matrices Interdistances Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
List of Tables
1 Processes Timing Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5
1 Preface
1.1 About This Document
The section 1 presents some general information about COSI-Corr. The section 2 presents the COSI-Corr
downloading instructions and installation guidelines. Section 3 presents the successive steps necessary to
process a pair of images. Sections 4 to 10 detail each function available in COSI-Corr; their chronology
reects more or less the chronology presented in section 3.
This documentation was produced with TeXnicCenter [http://texniccenter.sourceforge.net] using the MikTex
distribution [http://www.miktex.org/].
1.2 Who Will Use This Document
This documentation is aimed at scientists whose interest is in working with optical remotely sensed images
(aerials or satellites). Users are likely to be Earth scientists looking for seismic ground deformations, glacier
ows, sand dune displacements, slow landslides, or more generally looking for horizontal changes between
multi-temporal images.
Users do not need to have a programming background but will need some familiarities with the concepts
and vocabulary of remote sensing. A basic knowledge of the ENVI software will be useful as COSI-Corr is
integrated in ENVI.
1.3 About COSI-Corr
The COSI-Corr software has been developed by Franois Ayoub, Sbastien Leprince, and Jean-Philippe
Avouac (PI), and is an implementation of the procedures described in:
S. Leprince, S. Barbot, F. Ayoub and J. P. Avouac, Automatic and Precise Ortho-rectication, Coreg-
istration, and Subpixel Correlation of Satellite Images, Application to Ground Deformation Measure-
ments, IEEE Transactions on Geoscience and Remote Sensing, vol. 45, no. 6, pp 1529-1558, 2007.
(Leprince et al. (2007)).
F. Ayoub, S. Leprince and J.P. Avouac, Co-registration and Correlation of Aerial Photographs for
Ground Deformation Measurements, submitted 2007. (Ayoub et al. (2007)).
The main tasks performed by COSI-Corr are precise orthorectication, images co-registration, and cor-
relation. Although the orthorectication and co-registration are tailored for remotely sensed images, the
correlation can be applied to any types of images. Along with those three main tasks several post-processing
utilities are available such as a a denoising tool, a vector eld display tool, a prole stacking tool, a destriping
tool, . . .
COSI-Corr has been designed to retrieve the sub-pixel displacements between optical images. However, it
is necessary to understand that even though images will be used to their full extent, the limiting factors
severity (uncorrected topography, noise, resolution, . . . ) will aect the measurement results.
1.4 Support
COSI-Corr has been developed at the California Institute of Technology (Caltech) [http://www.caltech.edu],
supported by the National Science Foundation (NSF) [http://www.nsf.gov/], grants EAR-0409652 and EAR-
0636097, and by the Caltech Tectonics Observatory (TO) [http://www.tectonics.caltech.edu/].
1.5 Citation
The Caltech Tectonics Observatory (TO) is making this module available to you in hopes that the software
will enhance your research. A number of individuals have contributed to the development of COSI-Corr.
The authors would like to thank Rmi Michel and Renaud Binet for their insightful comments and their
6
early work in the eld of sub-pixel image registration and correlation (Van Puymbroeck et al. (2000)). We
also thank Sylvain Barbot for his work on the SPOT 5 ancillary data, Pablo Muse for the UNIX module
installation guide, and David Fanning for some IDL functions.
The COSI-Corr development team asks that you cite S. Leprince, S. Barbot, F. Ayoub and J. P. Avouac,
Automatic and Precise Ortho-rectication, Coregistration, and Subpixel Correlation of Satellite Images,
Application to Ground Deformation Measurements, IEEE Transactions on Geoscience and Remote Sensing,
vol. 45, no. 6, pp 1529-1558, 2007 and, if working with aerial images, F. Ayoub, S. Leprince and J.P. Avouac,
Co-registration and Correlation of Aerial Photographs for Ground Deformation Measurements, Submitted,
2007. The developers also request that in your oral presentations and in your paper acknowledgements
you indicate the use of COSI-Corr, the authors, and website [http://www.tectonics.caltech.edu/slip his-
tory/spot_coseis/index.html].
1.6 Disclaimer
NONEXCLUSIVE, NON-TRANSFERABLE LICENSE AGREEMENT FOR RESEARCH PURPOSES
ONLY FOR COSI-Corr Software (Co-registration of Optically Sensed Images and Correlation).
The California Institute of Technology (CIT) will provide you, a not-for-prot institution (LICENSEE),
with the Co-registration of Optically Sensed Images and Correlation Software (COSI-Corr). Software is
made available to LICENSEE on the following terms:
1. Denitions:
(a) The "Software" is dened as the package consisting of the source code and the compiled version
of the software that allows for Co-registration of Optically Sensed Images and Correlation, based
on the algorithms described in S. Leprince, S. Barbot, F. Ayoub and J. P. Avouac, "Automatic
and Precise Ortho-rectication, Coregistration, and Subpixel Correlation of Satellite Images, Ap-
plication to Ground Deformation Measurements", IEEE Transactions on Geoscience and Remote
Sensing, vol. 45, no. 6, pp 1529-1558, 2007, and in F. Ayoub, S. Leprince and J.P. Avouac,
"Co-registration and Correlation of Aerial Photographs for Ground Deformation Measurements",
Submitted, 2007.
(b) "Source Code" is dened as code written in human-readable format or in a high-level program
language.
(c) "Derivative Works" means any work consisting of revisions, annotations, elaborations, or other
modications to Software which, as a whole, represent an original work of authorship. Derivative
Works includes any updates and new releases of the Software developed during the term of this
license, inclusive of backups, updates, or merged copies permitted hereunder including the le
structures, programming instructions, user interfaces and screen formats and sequences.
2. CIT retains ownership of any copyright rights to the Software licensed under this Agreement.
3. CIT agrees to grant LICENSEE a nonexclusive, non-transferable, royalty-free license, under the copy-
right rights and any applicable patent rights, to use COSI-Corr for internal research purposes only.
This license specically excludes the right to sublicense COSI-Corr in any form, and it also excludes
the right to use COSI-Corr for any commercial or for-prot purpose.
4. LICENSEE agrees to grant Caltech a fully paid-up, royalty-free nonexclusive license for educational
and research purposes to any Derivative Works of Software that are owned or controlled by Licensee.
5. LICENSEE may incorporate Software with other source code developed by LICENSEE (Incorporated
Work) for the sole purpose of using Software for research internal to LICENSEE and not for any other
redistribution. LICENSEE may not distribute any Incorporated Work outside of LICENSEE, and
specically LICENSEE may not provide Software or any Incorporated Work under an open source
7
license such as the Gnu Public License (www.gpl.org). If the creation of an Incorporated Work would
require LICENSEE to distribute Software under an open source license, then LICENSEE agrees not
to make such incorporation.
6. Software is experimental in nature and is being licensed as is. The license of COSI-Corr does not
include any technical support or documentation.
7. LICENSEE hereby represents and warrants that it is a not-for-prot entity.
8. CIT represents and warrants that it has the right to license Software.
9. LICENSEE agrees that any person within LICENSEE utilizing Software will be advised of, and is
subject to, the conditions in this Agreement.
10. NO WARRANTY: SOFTWARE IS PROVIDED AS-IS WITHOUT WARRANTY OF ANY KIND
INCLUDING ANY WARRANTIES OF PERFORMANCE OR MERCHANTABILITY OR FITNESS
FOR A PARTICULAR USE OR PURPOSE (AS SET FORTH IN UCC 23212-2313) OR FOR ANY
PURPOSE WHATSOEVER, HOWEVER USED. IN NO EVENT SHALL CIT BE LIABLE FOR
ANY DAMAGES OR COSTS, INCLUDING BUT NOT LIMITED TO INCIDENTAL OR CONSE-
QUENTIAL DAMAGES OF ANY KIND, INCLUDING ECONOMIC DAMAGE OR INJURY TO
PROPERTY AND LOST PROFITS, REGARDLESS OF WHETHER CIT SHALL BE ADVISED,
HAVE REASON TO KNOW, OR IN FACT SHALL KNOW OF THE POSSIBILITY. LICENSEE
BEARS ALL RISK RELATING TO QUALITY AND PERFORMANCE OF SOFTWARE OR ANY
DERIVATIVE WORKS THEREOF.
11. All right, title, and interest in and to all data, information, and inventions that result from use of
Software by the LICENSEE shall vest in and belong to the LICENSEE.
12. This Agreement is governed by the laws of the State of California, and any action brought hereunder
shall be within the state of California.
2 Installation and Getting Help
2.1 How to get COSI-Corr
Users must register through the Caltech TO web site and accept the licensing agreement to download COSI-
Corr [http://www.tectonics.caltech.edu/slip_history/spot_coseis/index.html]. A zipped package containing
the COSI-Corr module and the Users guide should be downloaded, and installed (Sec. 2.3, 2.4). All materials
obtained are subject to the licensing agreement.
2.2 Requirements
COSI-Corr has been developed in Interactive Data Language (IDL) [http://www.ittvis.com/idl/] and has
been integrated in ENVI [http://www.ittvis.com/envi/]. Users must therefore have ENVI (release 4.0 or
newer) installed. IDL and ENVI are platforms independent and COSI-Corr has been tested under Windows
2000/XP/Vista, and also under Unix, Linux, and Mac OS systems.
Due to the usually large size of remotely sensed images, it is highly recommended to increase ENVI Cache size
and Image Tile size to around 200Mb and 40Mb, respectively (ENVI->File->Preferences>Miscellaneous)
if the computer hardware allows it. Lack of memory and unable to allocate... errors are usually due to a
too small Cache size and Image Tile size.
8
2.3 Windows Installation
1. Unzip the downloaded le.
2. Move the COSI-Corr module (cosi_corr.sav) to the ENVI "save_add" directory. DO NOT change the
modules name. This le contains all the compiled source code of the COSI-Corr module. The ENVI
"save_add" directory path depends on the location of IDL/ENVI on your computer, and it may look
like this for an installation at the root:
C:\RSI\IDL60\products\envi40\save_add\ or
C:\Program Files\ITT\IDL70\products\envi45\save_add\ (for versions 4.4 and after).
If you are not installing COSI-Corr for the rst time, make sure to discard any older version that might
be in this directory.
3. With the previous release of COSI-Corr, the ENVI menu text le envi.men needed to be edited. This
step is not necessary anymore. If you are installing COSI-Corr for the rst time, the installation is
complete.
If you have previous releases of COSI-Corr installed, you need to edit the ENVI menu text le
envi.men located in the ENVI menu folder whose path might be:
C:\RSI\IDL60\products\envi40\menu\ or C:\Program Files\ITT\IDL70\products\envi45\menu\ for
versions 4.4 and after, and remove the COSI-Corr menu. Save and close the le.
4. Start ENVI. If the installation worked correctly, the COSI-Corr menu should appear in the ENVI tool
bar (Fig. 1). It is recommended to register to, and visit regularly, the COSI-Corr forum where you
will nd tips, bug reports, thematic/technique discussions, and feedbacks from other COSI-Corr users
[http://www.tectonics.caltech.edu/forum/].
5. Users planning to operate the Non-Local Means Filter (Sec. 10.1) also need to:
(a) Make sure they satisfy the following requirements:
32-bit (or higher) Microsoft Windows
TM
.
Intel Pentium 4 (or higher) CPU.
IDL6.3/ENVI4.3 or higher.
(b) Copy NLMeansFilterDll.def, NLMeansFilterDll.dll, NLMeansFilterDll.dlm into
C:\RSI\IDL60\bin\bin.x86 or C:\Program Files\ITT\IDL70\bin\bin.x86 for versions 4.4 and
later. This le path may be slightly dierent depending on your versions of ENVI/IDL.
(c) Download and install (reboot needed) the Visual C++ runtime from Microsoft. This download
can be found at: [http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-
4391-8a4d-074b9f2bc1bf&displaylang=en]
2.4 Unix Installation
Installation on Unix is somewhat more complicated than for Windows. Most ENVI users on UNIX systems
do not have the rights to change the Customizing ENVI les, or to add their own procedures to the ENVI
"save_add" directory. Multiple users may indeed be working with the same installation of ENVI, so cus-
tomizing these les may not be allowed by the system administrator. To customize ENVI les on a UNIX
system without aecting other users, perform the following steps:
1. Copy the ENVI les envi.cfg and e_locate.pro to any location you want, for example
/home/myusername/myEnviCon.
For a typical Unix installation, these les are located in (the installation path may be slightly dierent
on your machine):
/usr/local/rsi/idl_6.0/products/envi_4.0/menu/
9
2. (a) CSH or TCSH shells - Set up environment for ENVI 4.0 and above, and modify IDL search path
variable (IDL_Path).
Add lines to your .cshrc (or .tcshrc) le in your home directory to execute the ENVI setup le
when you start a new csh (or tcsh) shell and to add your home directory tree into the IDL le
search path. This ensures that ENVI nds the les in your home directory before it nds copies in
the default installation location where you do not have write permission. Following is an example
of lines to add (expecting previously dened IDL search path variable denition):
source /usr/local/rsi/idl_6.0/products/envi_4.0/bin/envi_setup
setenv IDL_PATH+/home/myusername/myEnviCong:$IDL_PATH
You will need to change the home directory path (shown above as /home/myusername/myEnviCong)
to your own home directory path. You may also need to change the directory path to the
envi_setup le if your ENVI installation is in a location other than /usr/local/rsi.
If you anticipate that $IDL_PATH will be undened (no prior IDL search path customizations),
then be sure to use the string <IDL_DEFAULT> in place of $IDL_PATH at the end of the
second command. Notice in the following example that <IDL_DEFAULT> is inside the right
single-quote character:
source /usr/local/rsi/idl_6.0/products/envi_4.0/bin/envi_setup
unsetenv IDL_PATH
setenv IDL_PATH +/home/myusername/myEnviCong:<IDL_DEFAULT>
(b) BASH Shell - Set up environment for ENVI 4.0 and above and modify IDL search path variable
(IDL_Path).
Your ENVI installation also contains a setup le for the Bash shell. Place the following equivalent
commands in the .bashrc le in your home directory:
i. Using a previously dened IDL search path denition:
./usr/local/rsi/idl_6.0/products/envi_4.0/bin/envi_setup.bash
IDL_PATH=+/home/myusername/myEnviCong:$IDL_PATH
export IDL_PATH
ii. Not using a previously dened custom IDL search path denition:
./usr/local/rsi/idl_6.0/products/envi_4.0/bin/envi_setup.bash
unset IDL_PATH
IDL_PATH=+/home/myusername/myEnviCong:<IDL_DEFAULT>
export IDL_PATH
3. If you already have a save_add directory where you usually put your .sav les, copy the COSI-Corr
module cosi_corr.sav into it. If you are not installing COSI-Corr for the rst time, make sure to
discard any older version that might be in this directory. DO NOT change the modules name.
If you are adding .sav les for the rst time, create a directory named save_add at any location
you want, say /home/myusername/myEnviRoutines/.
4. With the previous release of COSI-Corr, the ENVI menu text le envi.men needed to be edited. This
step is not necessary anymore. If you are installing COSI-Corr for the rst time, the installation is
complete. If you have previous releases of COSI-Corr installed, you need to delete your own ENVI
menu text le envi.men in /home/myusername/myEnviCong.
5. Edit the envi.cfg le in /home/myusername/myEnviCong to point to its customized les. You
should at least specify the following path:
default save_add directory = /home/myusername/myEnviRoutines/save_add.
Notice that this path can also be set through ENVIs GUI, under:
File -> Preferences ->Default Directories: Save_Add Directory
10
6. The changes will be implemented when you re-start ENVI. Before that, source the .cshrc, .tcshrc or
.bashrc to apply the changes to your current session.
7. If the installation worked correctly, the COSI-Corr menu should appear in the ENVI tool bar (Fig. 1).
It is recommended to register to, and visit regularly, the COSI-Corr forum
[http://www.tectonics.caltech.edu/forum/] where you will nd tips, bug reports, thematic/technique
discussions, and feedbacks from other COSI-Corr users.
Figure 1: Example of the COSI-Corr menu inserted in ENVI between the Basic Tool and Classication top
level menus
2.5 Getting Help
As a courtesy, we will try to provide assistance. To ask for information, help, report a bug or a suggestion,
please rst browse the COSI-Corr forum [http://www.tectonics.caltech.edu/forum/] as the problem you
are facing may have been already reported. If you do not nd an answer, do not hesitate to post your
questions/comments on the forum. To contact the COSI-Corr team directly, you can also send an email
to [email protected]. The software module was released for the rst time in 2006 and may
still contain bugs and errors as it is usually the case with new softwares. We apologize in advance for the
inconvenience, and ask you to send us a clear report of the problems you may encounter.
3 Introduction: A Typical Processing Chain
The driving motivation for implementing COSI-Corr was to set up a tool that retrieves co-seismic ground
displacements from pre- and post-earthquake images. Although the description is aimed at seismo-tectonics,
it can be applied to any other change detection application. We describe below the successive steps to
achieve precise co-registration and derive deformation measurements. We assume here that we have two
images bracketing a seismic event. Before correlation, the images must be cleaned from geometric artifacts
such as topography, and co-registered precisely:
1. Dene the Interior Orientation (aerial) or Ancillary data (satellite) of the two images (Sec. 4.1, 5.1).
2. Orthorectify the pre-earthquake image:
(a) Construct a Ground Control Points (GCPS) le to rene the pre-earthquake image georeferencing.
GCPS are dened either with GPS campaigns or by taking tie points between the image and a
geolocalized reference (orthorectied image, shaded DEM, digitalized high resolution map, . . . )
(Sec. 6.1). The tie points are then converted into GCPS (Sec. 6.2) using the georeferencing
parameters of the reference image and a DEM. Those GCPS can be optimized if necessary (Sec. 7).
11
(b) Compute the mapping matrices to transform the raw pre-earthquake image into an orthorectied
image and resample it (Sec. 8).
3. Orthorectify the post-earthquake image:
(a) Select tie points between the post-earthquake image and the orthorectied pre-earthquake image
(Sec. 6.1).
(b) Convert these tie points into GCPS (Sec. 6.2).
(c) Optimize the GCPS of the post-earthquake image in order to precisely co-register the post-
earthquake image to the orthorectied pre-earthquake image (Sec. 7).
(d) Compute the mapping matrices to transform the raw post-earthquake image into an orthorectied
image and resample it (Sec. 8).
4. Correlate the two co-registered and orthorectied images. The result will be a at least three bands le
containing the E/W displacement map (positive toward the East), the N/S displacement map (positive
toward the North), and the SNR assessing the quality of the measure (Sec. 9).
4 Aerial Imagery Specic
Film based aerial images must be scanned with a high spatial and radiometric resolution to accurately
retrieve the lms information. A radiometric resolution of at least 8 bits (10-12 recommended), a geometric
resolution of 5 to 15 m (5000 dpi to 1700 dpi), and a stability of around 2-3 m are desired. Zeiss and
Leica, for example, provide suitable aerial images scanners. It is recommended to scan in grayscale (B&W)
the negative and not the photo paper print.
4.1 Interior Orientation
The Interior Orientation (IO) of the camera gives a mathematical representation of the camera geometry
and distortions. This step is accomplished with the help of the camera calibration report which is normally
obtained on demand, and follows the classical photogrammetry techniques (Wolf & Dewitt (2000)).
The Aerial Imagery -> Interior Orientation -> Fiducial Points Selection Tool function allows to select
the ducial points on the image and to enter their measurements, which are read from the calibration report
(Fig. 2). Once the points are selected, save the le (File -> Save Points to ASCII). Users of ENVI 4.3 and
newer versions will access the ducial point selection tools through Select Fiducials in Display....
The Aerial Imagery -> Interior Orientation -> Interior Orientation Setup function generates the Interior
Orientation le and gathers the camera information read from the calibration report (Fig. 3):
1. Calibrated focal length, in meters.
2. Principal point oset, in millimeters.
3. Fiducial measures. You can enter the points either manually or by loading the le created with the
Fiducial Points Selection Tool. The 2D ane transformation between the image reference system
and the camera reference system will be automatically computed.
4. Radial lenses distortions correction coecients. Depending on the data supplied by the calibration
report, enter directly the coecients or compute them from laboratory measurements using the Radial
Measures button.
12
Figure 2: Fiducial points selection with the help of the calibration report
5. Tangential lenses distortions correction coecients. Currently, only the coecients can be entered
if supplied by the calibration report. The correction applied is the one described in Wolf & Dewitt
(2000).
6. Atmospheric correction. Check if you want to correct for atmospheric diraction. The correction
assumes a standard atmosphere and follows an adapted method described in Wolf & Dewitt (2000).
Once the parameters entered, select a name for the IO le to be created, and click OK.
Note 1: The radial and tangential lenses distortions, as well as the atmospheric diraction, have typically
an amplitude of around 1 to 4 m only. Due to the scanners resolution and stability, consequences will not
be dramatic if they are not accounted for.
Note 2: If the calibration report is not available, the IO can still be built but the lenses distortions,
principal point oset, and ducial points measures will not be accounted for. The scanning resolution and
the ducial points coordinates (in pixel) are needed, and the principal point is assumed to be at the crossing
of the lines joining the opposite ducial points.
4.2 Exterior Orientation
This function (Aerial Imagery -> Exterior Orientation) computes the Exterior Orientation (EO) of the
camera (Fig. 4). It describes the position and the angular orientation of the camera in the ground coordinates
system at the time of exposure. It is composed of the spatial position which corresponds to the camera optical
center coordinates, i.e., Easting, Northing, Altitude, and the angular orientation, which is composed of three
13
Figure 3: Interior Orientation tool
rotation angles , , , and may be seen as the roll, pitch, and yaw of the focal plane. These six parameters
are determined using space resection by collinearity (Ayoub et al. (2007), Wolf & Dewitt (2000)).
1. Interior Orientation: Select the le obtained during the Interior Orientation of the camera (Sec. 4.1).
2. GCPS File: Select the le containing the GCPS. This le can be obtained from (Sec. 6.2) or edited
manually. It is an ASCII le which presents data in an array form. One GCP per line with a line
composed of : longitude (decimal degree) latitude (decimal degree) altitude (meter) X (pixel) Y (pixel)
SNR (0 to 1) [other]. SNR represents the weight of each GCP in the global EO computation. The le
must contains at least three GCPS.
3. Exterior Orientation: Enter the name of the Exterior Orientation le to be created and click OK. The
le will contain the six EO parameters: longitude (degree) latitude (degree) altitude (meter) (radian)
(radian) (radian). Note that is given with the North as a reference, and can be seen as the sum
of the aircraft azimuth and yaw. The EO le is then used during the image orthorectication (Sec. 8).
4.3 Miscellaneous
When optimizing GCPS generated from tie points selection between an aerial image and a shaded DEM, if
the dierence in resolution is large (example: 1 m image vs. 30 m SRTM), or if the topographic features are
14
Figure 4: Exterior Orientation tool
too thin for a good optimization, it is recommended to geolocalized rst a satellite image with the shaded
DEM, and use the subsequent orthorectied satellite image as a reference.
5 Satellite Imagery Specic
5.1 Ancillary File
This function (Satellite Imagery -> Ancillary File -> <Satellite to study>) rearranges the ancillary data
of a satellite image into a common le format that will be used afterward in COSI-Corr. This ancillary le
will contain the positions, attitudes, and look directions of the satellite while acquiring the image, and other
information such as the number of lines and columns, nominal ground resolution, and solar azimuth and
elevation.
5.2 Miscellaneous
ASTER Imagery: The level L1A is required. For ENVI 4.1 or prior versions, a pre-processing of the
radiance correction will be necessary and can be done with the adequate ENVI tool (ENVI->Basic Tools-
>Preprocessing->Calibration utilities->Aster Radiance). This pre-processing is automatically done when
opening the images in ENVI 4.2 and later versions. The ASTER .hdf le is expected as input. Although
any band can be selected (VNIR, SWIR, TIR), it is recommended to use the band VNIR 3N (nadir viewing)
for surface deformation detection.
FORMOSAT-2 Imagery: The level 1A is required. Panchromatic and multi-spectral images can be
processed. The METADATA.dim le is needed.
SPOT/SPOT5 Imagery: The level 1A is required. SPOT images must be opened in ENVI using File
-> Open External File -> SPOT ->SPOT (for SPOT 1-4 satellites in the leader CEOS format), or DIMAP
(for SPOT 5 or SPOT 1-4 images in the dimap format).
Panchromatic and multi-spectral images can be processed, and Leader (SPOT1-4, lead.dat le) and Dimap
(SPOT5 and recently SPOT1-4, metadata.dim le) format are accepted.
Panchromatic with CCD correction accounts for the slight misalignment of the CCD arrays in SPOT1-4.
The correction is established empirically for each satellite, and is currently only available for the SPOT 2
HRV 1 and SPOT 4 HRV 1 instruments.
QUICKBIRD Imagery : The level 1B (Basic) is required. Panchromatic and multi-spectral images can
be processed. Note that only full scenes (not fractional) are accepted. The les .eph, .att, .geo, and .imd
will be needed and must be located in the same folder (only one of these 4 les need to be entered in the
auxiliary le eld, the other ones being retrieved automatically).
15
WORLDVIEW-1 Imagery : The level 1B (Basic) is required. Note that only full scenes (not fractional)
are accepted. The les .eph, .att, .geo, and .imd (or the .xml) will be needed and must be located in the
same folder (only one of these 4 les need to be entered in the auxiliary le eld, the other ones being
retrieved automatically).
6 Tie Points and GCPS
6.1 Tie points Selection
The tie points selection consists of pairing similar points between two images. It will most of the time consists
in associating points between a georeferenced image and a non georeferenced image, typically between an
orthorectied image and a raw image. It allows to associate a ground coordinates to a point in a raw image.
1. Open the two images for the tie points selection.
2. Select the Tie Points/GCP -> Select Tie Points: Image to Image tool. Base Image refers to the
georeferenced image (master), and Wrap Image refers to the raw image (slave).
3. Select tie points between images. See ENVI Help for more details on this function.
4. When done, save your tie points selection using File -> Save GCPs to ASCII (and not Save Coecient
to ASCII). The le created will be a list of the form x (master) y (master) x (slave) y (slave) in pixel.
Note 1: This is an ENVI function that can also be found in Map -> Registration. The ENVI tool
accounts for the xstart and ystart contained in the image header. Make sure they are set to 1, as COSI-Corr
assumes so. Most likely, this will not be the case if your georeferenced master image is a subset of a larger
image, that has been cropped using ENVI. Editing the header of your master image and forcing the xstart
and ystart to 1 will not corrupt your data and is mandatory.
Note 2: If tie points are selected (between an orthorectied image and a raw image) to be converted to
GCPS and optimized, here are some guidelines to pick them adequately:
At least three points must be selected. If the wrap image is to be co-registered with a shaded DEM,
a larger number of points (15 to 30 if possible) should be selected to average the probable correlation
errors due to the dierence in images content.
Spread the points as much as you can in the image, but select them away from the area where ground
displacement is expected. If displacement is expected in the whole image, select points in areas of
smallest displacements.
Do not select points too close to the images borders. As the optimization will correlate windows
centered on each point, the optimization window size should be kept in mind when picking tie points.
Pay attention to the points surrounding. Are features recognizable between the two images? Try to
select points whose neighborhood contain easily identiable features or patterns. Are there any tem-
poral decorrelations (man made changes, shadowing dierences, . . . )? Prefer areas of low topography
to minimize uncorrected stereoscopic artifact.
It is not necessary to select tie points precisely as the optimization will correct them. With the
frequential correlator, the maximum placement error allowed on the initial GCPS will correspond to
half the correlation window size. With the statistical correlator, a search range will have to be dened.
If you select more than 3 points, the tie point selection tool provides you with a RMSE on a linear t.
This RMSE is a good approximation of the average error on the tie points. Later, in the statistical
optimization, the search range can be set between 1.5-2 times this RMSE.
16
6.2 Tie points to GCPS
Figure 5: Tie points to GCPS transformation tool
This function (Tie Points/GCP -> Tie points to GCPS) converts a set of tie points into GCPS (Fig. 5).
1. Tie Points File: Select the le containing the tie points between the two images. The le must be of
the form x (master) y (master) x (slave) y (slave) in pixel. This le is typically generated by the Tie
Points Tool (Sec. 6.1), but can be edited manually.
2. Reference Image: Select the image used as a reference (master) during the tie points selection.
The image must have a map information, and is typically an orthorectied image. The geographic
coordinates will be retrieved from its map information.
3. DEM File: Select a DEM with a valid map information to retrieve the altitude of the GCPS. If not
entered, the altitude will be set to 0 (above ellipsoid WGS 84).
4. Oset eld: If selected this eld must receive a le whose rst and second bands contain a displacement
map of the area in East/West and North/South direction respectively (a correlation map typically).
The displacement found at the GCP location is retrieved and added to the GCPS le. This information
will be used in the GCPS optimization (Sec. 7) as this displacement will be accounted for during the
optimization. For example, a SPOT based displacement map can be used to account for the ground
displacement at GCP location while co-registering aerial images (Ayoub et al. (2007)).
5. GCPS File: Select the name of the GCPS le to be created.
The format of the GCPS le created is (Fig. 6): longitude (decimal degree) latitude (decimal degree) alti-
tude (meter) X (pixel) Y (pixel) SNR (0 to 1) OPTI (0 or 1) DX (meter) DY (meter) DZ (meter). SNR, set
to 1 by default, can be changed manually if needed and is used during the orthorectication and the GCPS
Optimization. OPTI, DX, DY, DZ are used for the GCPS Optimization only. See Sec. 8.1, Sec. 7 for more
details.
7 GCPS Optimization
Even with all the care taken during manual tie points selection (converted then to GCPS), the orthorectied
image usually presents a misregistration with the reference image, at the GCPs location. To get a better
co-registration, GCPS are rened using the following process:
1. The raw image EO (aerial)/Look Angles (satellite) are computed using the GCPS.
2. The raw image is ortho-rectied and correlated with the reference image.
17
Figure 6: GCPS text le format
3. At each GCP location, the GCP ground coordinates are corrected by the ground oset found between
the images.
4. The process is iterated with the corrected set of GCPS until convergence of the ground oset correction.
This function (Aerial Imagery or Satellite Imagery-> GCPS Optimization -> GCP Optimization) opti-
mizes a raw image GPCS with respect to a reference orthorectied image to achieve a good co-registration
(Fig. 7).
1. Raw Image: Select the raw image whose GCPS are going to be optimized.
2. Reference Image: Select the orthorectied image onto which the raw image will be co-registered. This
image corresponds generally to the rst orthorectied image of the pair, a shaded DEM, or an external
orthorectied image. The reference must be georeferenced in the UTM projection.
3. DEM: Select the DEM that will be used to correct the topographic eects during the optimization. If
selected, the DEM must be georeferenced and can be of any projection. If not selected, the topography
will be considered at at altitude 0 (above the ellipsoid WGS 84). It is strongly recommended to use
the same DEM that was used to orthorectify the reference image as DEM errors will then be kept
consistent between the two images. In case of an optimization with a shaded DEM, the DEM used
should be the one used to generate the shaded DEM.
4. Ancillary/IO le: Select the ancillary le (for satellite) or the Interior Orientation le (for aerial) of
the raw image.
5. GCPS/tie points/ICP:
GCPS: A GCPS le is the most exible option. This is a le (Fig. 6) whose format is longi-
tude (decimal degree) latitude (decimal degree) altitude (meter) X (pixel) Y (pixel) SNR (0 to 1)
OPTI (0 or 1) DX (meter) DY (meter) DZ (meter) and contains at least three GCPS (obtained
generally from the Tie points to GCPS tool (Sec. 6.2)).
SNR represents the weight of the GCP (between 0 and 1). If the condence is similar for all
points, all SNR should be equal and dierent than zero.
OPTI is a ag indicating whether the GCP is going to be optimized (1) or not (0). A GCP
with the OPTI ag set to 0 will be accounted for during the computing of the EO (aerial) or
Look Angle correction (satellite) but not optimized. A typical example where GCPS should
not be optimized would be some GPS points located precisely, whereas others GCPS are
coarsely estimated. Another example would be a feature clearly recognizable between the
reference image and the raw image (during tie points selection) but with a surrounding of
18
Figure 7: GCPS optimization parameters selection tool
poor quality content that may biased the correlation if optimized. Although rarely used, this
option can be useful when dealing with heavy snow or heavy cloud cover.
DX, DY, DZ are used to account for a ground displacement sustained at the GCP location.
They refer respectively to the displacement in Easting, Northing and Elevation in meter
(currently the Elevation displacement is not used). If values are entered, the GCP will be
optimized in order to co-register the images while accounting for the displacement entered at
the GCP location.
Tie points le: This is a le whose format is x (ref ) y (ref ) x (raw) y (raw), and is usually
generated with the ENVI tie points selection tool (Sec. 6.1) or edited manually. The reference
image and raw image used for the tie points selection must be the same as the ones entered in
the GCPS optimization windows. Tie points will be converted to GCPS prior to optimization.
Note that if the tie points le is edited manually, pixels coordinates contained in the le must be
expressed with the convention where the rst pixel coordinates are (1,1) to stay consistent with
the ENVI points selection process.
ICP: Image Control Points. This option is available only for satellite imagery. It is a le whose
format is x (raw) y (raw). The points do not need to be tied to a reference image as the ancillary
data are accurate enough to locate them geographically. Points will be converted to GCPS prior to
optimization. This option can be used with SPOT 5 but is not recommended with SPOT 1-4 and
ASTER images. Unlike the tie points le, pixels coordinates must be expressed in a coordinates
system where the rst pixel coordinates are (0,0).
Note that the weighting of the GCPS, the OPTI ag, and the DX, DY, and DZ elds are only available
through the use of a GCPS le (and not a tie points or ICP les).
19
6. Optimization Options:
(a) Nb Iterations: Number of loops that will be executed to optimize the GCPS. 5 loops are usually
enough to reach stable convergence. If the optimized GCPS le report shows that the convergence
is not reached, the process should be continued. Continuation of the process can easily be done
by giving as GCP input le the output le where convergence is not reached.
(b) Resampling kernel: Select the resampling kernel that will be used to resample the raw images
patches. This option is similar to the one described in (Sec. 8.2).
(c) Correlator engine: Select the correlation method used to correlate the patches and retrieve the
displacements to correct. Usually a window size of 128 or 256 pixels is used. It will allow for a good
co-registration on the long wavelengths. The statistical correlator is advised when the reference
image is the shaded DEM, whereas the fequential correlator is advised when the reference image
is an orthorectied image. For more information on the correlator engines and their options, see
Sec. 9
(d) Weight GCP with correlation SNR: If checked, GCPS will be weighted with the correlation SNR
of the previous loop. This allows to give more weight on GCPS whose patches have a better
correlation. For the initialization, GCPS will be assigned the SNR read from the GCPS le or
assigned an equal SNR in case of tie points and ICP les. If not checked, GCPS will be
constantly weighted with the SNR from the initialization.
(e) Dynamic display of optimization: If checked, a graphic window displaying the successive patches
will be displayed as the optimization goes. This allows for a visual check of the patches that are
correlated. For instance, it is a convenient way to check that GCPS have not been chosen too
close to the images borders.
7. Optimized GCPS: Select the lename of the optimized GCPS that will be created.
The Select All button allows you to select successively all the les necessary.
Besides the optimized GCPS, the output le will also contain a record of the les and parameters used,
as well as information on the optimization. The average and standard deviation of the mis-registrations,
in each North/South and East/West component, are recorded at each iteration. This allows to check the
convergence of the process and the quality of the GCPS generated. A residual misregistration as small as
possible is desired.
Note that if the GCPS were optimized with a Tie Points le, the x and y pixel coordinates of the optimized
GCPS are minus 1 compared to the initial coordinates. COSI-Corr is using a pixel coordinates system
originating at (0,0), unlike ENVI, which starts at (1,1).
8 Orthorectication and Resampling
This function will orthorectify an image (Aerial Imagery or Satellite Imagery-> Orthorectication/Resampling).
It is composed of two steps: The pixel mapping between the raw image and the futur orthorectied image,
and the resampling of the image according to the mapping. Usually those two steps are processed together
one after the other. If you want to process only one of the two, uncheck the unwanted task.
8.1 Orthorectication
This step constructs the mapping matrices between the raw and the orthorectied image (Fig. 8).
1. Ancillary data le (satellite), or IO le (aerial): Select the data le corresponding to the image to
orthorectify.
2. EO or GCPS le (aerial), or GCPS le (satellite)
20
Figure 8: Orthorectication tool
Aerial image: Select the EO le or the GCPS le. In case of GCPS le, the EO will be computed
prior to the matrices computation.
Satellite image: Select the GCPS le. If not selected, the orthorectication will only use the
ancillary data le to orthorectify the image. The accuracy will therefore depends on the satellite
ancillary data accuracy.
3. DEM: Select the DEM le to account for the topography. The le must have a valid map information
and can be in any projection. If not entered, the orthorectication will take place assuming a at
topography at altitude 0 (above the ellipsoid WGS 84).
4. Map Grid: Dene the ground grid on which the image will be projected. Currently, only the UTM
projection is supported. The hemisphere (North or South), the UTM zone (1 to 63), the top left and
bottom right grid corners coordinates, and the ground resolution must be dened during this step.
Three options are available to dene the grid :
From Raw image: Select the spatial subset in the raw image to dene the ground grid onto
which orthorectify the image.
From Georeferenced image: Select an existing georeferenced image to dene the grid. The
georeferenced image must be in UTM projection. The UTM zone, hemisphere, and resolution will
be retrieved from the image map information. The top left and bottom right coordinates will be
retrieved from the spatial subset. This option is useful when orthorectifying the second image of
a pair as it retrieves the grid information of the rst orthorectied image.
Manual Edit: Select/modify manually the grid. The From Raw Image option proposes the
UTM zone in which the top left corner of the image is lying. If the image is between two UTM
zones and that this automatic selection is not adequate, the Manual Edit is required.
21
Note: In the Grid Parameters window, the button Adjust grid to be multiple of resolution forces the
grid corners to be multiple of the ground resolution selected. This action should always be performed
to make sure that all orthorectied images are later compared from the same grid, i.e., within the same
reference frame.
5. Mapping Matrices: Select the name of the matrices le to create. The name, when entered, is directly
reported to the matrices le name in the resampling GUI.
8.2 Resampling
Figure 9: Resampling parameters selection tool
The resampling reconstructs the image according to the mapping matrices dened previously (Fig. 9).
1. Image: Select the raw image to resample.
2. Mapping Matrices: Select the mapping matrices le name that were dened during the orthorecti-
cation. If the matrices are to be computed, the matrices name is directly completed when entering the
orthorectication parameters.
3. Options: Three resampling kernels are available. Bilinear, Bicubic and Sinus Cardinal (Sinc). The
bilinear and bicubic kernel do not accept any parameters and are much faster than the Sinc. The Sinc
however accepts parameters and is more precise than the two other kernels. It is recommended to use
the Sinc kernel for an improved resampling quality and ultimate correlation.
The available Sinc kernel options are the following (Fig. 10):
Kernel Size: Number of zero crossings + 1 of the Sinc kernel. A size (odd) between 11 and 25
is usually sucient. Smaller sizes can be used for coarser quality but faster processing.
Kernel Weighting: The theoretical Sinc kernel has an innite length. Due to the kernel trunca-
tion, some ringing eect due to the Gibbs phenomenon are introduced in the reconstructed image.
22
Figure 10: Sinc kernel parameters
If checked, kernel edges are tapered down to remove the truncation discontinuities. Please note
that the weighting performed will not be appropriate if you choose a kernel size larger than 25.
Resampling Distances: They dene the kernel lobes size in pixels and are dened from the
mapping matrices (Leprince et al. (2007)).
If left empty, they are computed on the footprint of the image only and are ltered at 99.5%
to discard outliers, if any.
Subset resampling distance area: This option allows you to select a subset (on the matrices)
on which to compute the resampling distances. If selected the subset is dened geographically
through the spatial selection of a georeferenced le. Usually, the area is dened from the
DEM as corrupted resampling distances areas come from error/gap/outlier/non-coverage in
the DEM.
Note: The tool Tools -> Matrices Interdistances can be used to compute and check the
resampling distances (Sec. 10.6) before resampling.
4. Resampled Image: Select the name of the resampled image that is going to be reconstructed from
"Image" according to the "Mapping Matrices".
9 Correlation and Displacement Measurements
Figure 11: Correlation parameters selection tool
23
This function (Correlation) correlates two images and provides a map of the relative displacements
(Fig. 11).
1. Pre-event Image: Select the rst image of the pair. This image is considered the reference.
2. Post-event Image: Select the second image of the pair. The correlation result provides a displacement
eld using the convention eastward and northward positive. This displacement eld is the horizontal
ground displacement that should be added to the pre-event image to retrieve the post-event image.
3. Correlator engine: Select the correlator engine. Currently two correlators are available: frequential
(Sec. 9.1), and statistical (Sec. 9.2). The frequential correlator is Fourier based and is more accurate
than the statistical one. It should be use in priority when correlating optical images. However this
correlator is more sensitive to noise and is therefore recommended for optical images of good quality.
The statistical correlator maximizes the absolute value of the correlation coecient and is coarser but
more robust than the frequential one. Its use is recommended for correlating noisy optical images that
provided bad results with the frequential correlator, or for correlating images of dierent content such
as an optical image with a shaded DEM.
4. Correlation File: Select the name of the correlation le to be created.
If both images are georeferenced with the same projection and resolution, the georeferencing is accounted
for, and only the geographic overlapping part is correlated. Otherwise, the correlation is pixel based.
9.1 Frequential Correlator
Figure 12: Frequential correlator parameters
The parameters for the frequential correlator are (Fig. 12):
1. Window Size: Size in pixels of the sliding window that will correlate the images. The size should be
a power of two. The frequential correlator can be used in two modes:
(a) The simple mode where a unique window size is specied. Leave the minimum window size eld
empty (to (for multiscale)).
(b) The multi-scale mode. The multi-scale correlator accepts a maximum and a minimum window
size. Patches with the largest window size are correlated rst, and if the correlation succeeds, it
is re-executed on patches with decreased size (power of two) and accounting for the displacement
previously found. The process is iterated until the minimum window size is reached, or until the
correlation fails. In this last case, the measurement found from the previous larger size is kept
and the process moves on to the next patches. The multi-scale correlator is mostly useful under
two situations:
24
When the displacements to estimate are greater than half the window size. In that situation,
the correlator cannot determine the displacements. Use the mutli-scale correlator to set up a
large window size which will be larger than two times the expected displacement, and a small
size to the minimum acceptable window size in term of noise.
When the noise in the image is not uniformly distributed. Using the multi-scale correlator
will allow to retrieve displacement in noisy areas (with large windows) and still use small
windows in less noisy areas.
It is customary to select the smallest window size that will provide a reasonable amount of noise
(from experiment, a window size of 3232 pixels is the minimum, and with good quality images,
a window size of 3232 or 6464 usually yields good results) as it will increase the density of
totally independent measurements.
2. Step: This parameter determines the step, in pixels, between two sliding windows. If the step is
greater or equal to the window size, then all measurements will be independent.
3. Robustness Iteration: Number of times per measurement the frequency mask should be adaptively
re-computed. The mask contributes in reducing the noise on the measurements. 2 to 4 iterations is
satisfying in most cases Leprince et al. (2007).
4. Mask Threshold: Allows the masking of the frequencies according to the amplitude of the log-cross-
spectrum. A value close to unity is appropriate in most cases. See Leprince et al. (2007) for more
details.
5. Resampling: Patches to correlate are relocated from sinc resampling. This option theoretically elim-
inates most of the biases at the sub-pixel scale. If used, the processing time is greatly increased (on
average by a factor of 10). However, on noisy images, its usefulness has been noticed only on a very
few occasions.
6. Grided Output: Check this option if you want to obtain a displacement map that can be superimposed
with other displacements maps of the same are, or that can be mosaiced exactly.
9.2 Statistical Correlator
Figure 13: Statistic correlator parameters
The parameters for the statistical correlator are (Fig. 13):
1. Window Size: Size in pixels of the patches that will be correlated.
2. Step: This parameter determines the step, in pixels, between two sliding windows. If the step is
greater or equal to the window size, then all measurements will be totally independent.
3. Search Range: maximum distance in pixels where the displacements to measure are to be searched.
25
4. Grided Output: Check this option if you want to obtain a displacement map that can be superimposed
with other displacements maps of the same are, or that can be mosaiced exactly.
10 Tools
10.1 Non Local Means Filter
This tool (Tools -> Non-Local Means Filter) is an implementation of the Non-Local Means algorithm
for denoising datasets and images. This algorithm (Buades et al. (2008)) and its derivatives (Buades et al.
(2006),Goossens et al. (2008),Zimmer et al. (2008)) have demonstrated an exceptional ability to preserve ne
detail while reducing additive white Gaussian noise. The most common application of the non-local means
algorithm is to the restoration of digital images. The implementation provided here extends the method
to denoising of scientic data sets in general. A number of modications to the original lter have been
introduced in the literature. We have chosen to implement modications proposed in (Buades et al. (2006),
Goossens et al. (2008)). Major features of our implementation include:
Highly optimized native code that transparently and automatically exploits parallelism and media
extension instructions for rapid processing of data sets (SIMD instruction set).
Optional use of signal-to-noise weighting metrics for enhanced denoising.
Ability to account for the presence of missing values (NaN) present within the input data set.
10.1.1 Filter Process
The non-local means algorithm lters data by stepping through the data set one value at a time. At each
data point, a small region of surrounding values (typically 5x5 or 7x7) is compared with other non-local
regions (patches) of the same size. A larger region around the central patch is used as the search area. The
ltered value is computed as an average of the values within the search area, weighted by their measure of
similarity with the patch centered at the pixel to be ltered. This approach has the eect of preserving true
signals and features.
1. See 2.3 for lter installation (available only under Microsoft Windows platforms).
2. Bands to lter: Load one or more bands to be ltered (Fig. 14).
3. SNR le(optional): A band weighting (signal-to-noise ratio) can be selected and applied during
ltering. The SNR le must have the same spatial size as the bands to be ltered, should be oating
point values comprised between 0.0 and 1.0, and will be applied to all bands selected.
4. Upon loading, the bands have been automatically assigned default lter parameters (see 10.1.2, 10.1.3
for parameters details). Each band is associated with its own set of lter parameters and can therefore
be processed with a set of data-specic parameters (if the user wishes). Clicking on a band name in
the band list causes the parameter controls to be updated with that bands particular parameter set.
NOTE: The user must supply a noise parameter for each band since this parameter has no default
value. All other parameters may be left at their default settings if so desired.
5. Filtered bands le: Select the name of the ltered bands output le. The ltered bands are automat-
ically assigned the same names as the originals, but in addition have _NLMltered appended to the
end of them. In addition, the header le will list the lter parameters for each band. NOTE: During
processing, the ENVI/IDL user interface is unresponsive. A progress bar is displayed that increments
after each band has been ltered.
26
Figure 14: Non-Local Means Filter
10.1.2 Filter Parameters (Fig. 14)
H (noise parameter): This number is used to control the degree of denoising and is proportional to the
standard deviation of the noise. A common value for H is between 0.5 and 2 times the standard
deviation of the noise, and it depends on the other parameters selected. The stronger dependencies are
on the weighting type (Standard, Bisquare, or Modied Bisquare), and on whether the center data
point is omitted or not, in the advanced parameters. With the default parameters, a value of H close
to 1.6 times the noise estimated standard deviation is a good estimate.
This parameter does not have a default value. Therefore the user MUST supply a noise parameter for
each band prior to running the lter. The noise standard deviation can be estimated from the image
local statistics, observed over areas with presumably constant values. The ENVI ROI tools can be
conveniently used to this end.
Search area dimension: This number refers to the dimensions of the search area around each data point.
Since the shape of the area is xed as a square, the user need only supply one value indicating the
dimension of the side. For example, if the user enters 17 this instructs the application to use a search
area of size 17 x 17 pixels. The default value is 21, corresponding to a search area of 21 x 21 data
points. This value must be an integer smaller than the smallest data set dimension. CAUTION: Large
search areas will cause the application to be unresponsive for long periods of time. In general, areas
sizes from 21 x 21 to 41 x 41 pixels produce good results at acceptable execution times.
Patch size: This selection refers to the dimension of the square patch used to characterize the area sur-
rounding each data point. The choices are limited to 5x5 or 7x7. The default selection is 5x5.
Weighting method: This selection refers to the method by which the nal value is ultimately computed.
27
Averaging: The denoised value is determined by a simple weighted average of the pixels comprised
in the search area. This is the default setting.
Linear regression: The denoised value is determined by weighted linear regression of the pixels within
the search area.
10.1.3 Advanced Filter Parameters (Fig. 15)
Figure 15: Non-Local Means Filter Advanced Parameters
Minimum weight value: Only used if the Linear regression weighting method is selected, otherwise it
is ignored. Only weights above this threshold will be counted in the minimum number of weights
computation. This sanity check ensures that very small weights are not counted as part of a valid
averaging. The default value for this eld is 0.1. This value must be a oating point between 0.0 - 1.0.
The closer this parameter is to zero, the more the linear regression ltering will occur, with the risk of
tting the noise for pixels with very few similar patches in the search area. The closer this parameter is
to one, the less the linear regression ltering will occur, defaulting to the standard averaging method.
Minimum # of weights: Only used if the Linear regression weighting method is selected, otherwise it is
ignored. Minimum number of weighs above the minimum weight value threshold so that the Linear
regression ltering can occur. Otherwise, the ltering method defaults to the averaging ltering
method. This condition avoids tting the noise when only very few signicant weights exist in the
search area. This parameter therefore only makes sense if it is larger than three. If it is too large,
linear regression ltering tends to occur less, defaulting to the standard averaging method.
Center data point: Indicates whether or not the center data point (i.e., the data point being ltered)
is included in the weight calculation. The default condition is to omit the center data point in the
weighting calculation.
Noise parameter: Indicates whether the noise parameter H is xed at the user supplied value. Otherwise,
an adaptive algorithm (Zimmer et al. (2008)) is used to select the noise parameter at each ltering
point. This adaptive method works poorly and it is not advised to use it, but it is left here for further
tests and developments.
Weighting type: Refers to the way the local weights relate to the patches similarity measurements.
28
Standard: Computes the patch weights according to a Gaussian distribution (Buades et al. (2008)).
Bisquare: A modied form of Standard with a nite taper and steeper fall-o (Goossens et al.
(2008)).
Modied Bisquare: A modied form of Bisquare but with even steeper taper and fall-o (Goossens
et al. (2008)).
The Standard (i.e. Gaussian) and the Bisquare methods have proven to be the most useful in our
tests. Note that for a given noise level in an image, a particular value of H has to be selected for
each method.
NOTE: The denoising results provided by the lter, using the default parameters may not be appropriate
for a given data set. In these cases the results will be sub-optimum and it becomes necessary to modify the
optional parameters so as to achieve optimum denoising. Any combination of parameters is possible, with
the following two exceptions: Minimum weight value and Minimum # of weights. These two parameters
only take eect if the user has selected Linear as the weighting method. Otherwise they are ignored and
changing their values will not aect the results. To speed-up parameters adjustment during trials and errors,
note that a spatial subset of the image to be ltered can be selected. Then the lter is only applied on this
image subset.
10.2 Discard/Replace Image Values
Figure 16: Band parameters selection tool for image ltering
This tool (Tools -> Filter Image Values) allows you to lter and change pixel values in an image based
on their values. The le can contain several bands. Typically, this function is used to lter out outliers or
values with a weak SNR in a correlation le.
1. Select the le and the bands of interest. Non selected bands will not be changed.
2. For each band selected, enter the minimum, maximum and replace values (Fig. 16).
3. Select a le name if you want to save the ltered le on the disk or leave the eld empty for in-memory
load.
Every pixel in the band whose value is smaller than the minimum or larger than the maximum will be
assigned the replace value. Note that for a pixel in a band changed, pixel at the same location in the other
bands selected will be changed too by their respective replace value.
Note: This function is not internally tiled, which means that it can only be used with les whose size are
reasonable compared to the available dynamic memory.
29
Figure 17: Destripping tool selection
10.3 Destripe Image
This tool (Tools -> Destripe Image) allows you to remove parallel stripes and undulations in an image. A
typical use for this tool is the removal of undulation artifacts in a correlation image due, for example, to an
uncorrected attitude like an oscillating pitch or a CCD array artifact in ASTER or SPOT images. The main
idea is to average the artifact by stacking and subtracting the average to the image.
Two functions are available and are described below. The Manual Orientation allows to destripe any
image, but the user need to supply manually the rotation angle necessary to align vertically the undu-
lations/stripes to remove. The Automatic Orientation denes automatically the ane transformation
necessary to align the undulations/stripes before performing the stack. The transformation is dened from
the ancillary le and GCPS le (optional) of the image responsible for the undulations/stripes.
10.3.1 Manual Orientation
1. Image to dene correction from: Select the bands (usually only the EW and NS bands) from which
the correction will be dened (Fig. 17).
2. Angle to rotate image: The stripes stacking is operated vertically. If the stripes are not vertical, the
image must be rotated to align vertically the stripes. Enter the rotation angle (degree) necessary to
align the stripes vertically. Tip: the ENVI rotate tool (Basics Tools->Rotate/Flip Data) can be used
rst to determine precisely the angle.
3. Image to apply the correction to (if dierent): If the corrections are meant to be applied to a le
dierent than the one they are determined from, select it accordingly. It must be of the same size,
with the same number of bands that the le used to determine the correction. A typical case is when
a denoised and smoothed correlation le is used to determine the stripes correction, but the correction
30
is applied to the raw correlation le. If this eld is left empty, the correction will be applied to the le
from which the correction is determined.
4. Corrected File: Select the lename to create if you want to save it to the disk. Otherwise, leave
the eld empty for in memory computation, but keep in mind the size of the image in regards to the
available dynamic memory.
5. Click OK
6. After a short computing time, a rotated image with the undulations aligned vertically will be loaded
in memory. Select the le and select the spatial subset that will be stacked to determine the correction
(Fig. 18). The same spatial subset will be stacked on each selected band.
7. Click OK
8. The output image will be the original le with the selected band corrected. The correction applied
to the bands is appended as additional bands at the end of the le. The non selected bands remain
unchanged (Fig. 19).
10.3.2 Automatic Orientation
1. Image to dene correction from: Select the bands (usually only the EW and NS bands) from which
the correction will be dened.
2. Ancillary le of one image: Select the ancillary le of the image causing the undulations to be removed.
3. GCPS le(if any): Select the GCPS le (if any) that was used to orthorectify the image. This is an
optional parameters.
4. DEM le(if any): Select the DEM le (if any) that was used to orthorectify the image. Attention,
the DEM must be valid on the entire image area. This is an optional parameters.
5. Stripes/undulations direction: Select whether the artifacts to removed are oriented cross-track or
along-track. For example, attitude undulations will cause artifacts in the cross-track direction, whereas
a CCD artifact will cause along-track stripes.
6. Image to apply the correction to (if dierent): If the corrections are meant to be applied to a le
dierent than the one they are determined from, select it accordingly. It must be of the same size,
with the same number of bands that the le used to determine the correction. A typical case is when
a denoised and smoothed correlation le is used to determine the stripes correction, but the correction
is applied to the raw correlation le. If this eld is left empty, the correction will be applied to the le
from which the correction is determined.
7. Corrected File: Select the lename to create if you want to save it to the disk. Otherwise, leave
the eld empty for in memory computation, but keep in mind the size of the image in regards to the
available dynamic memory.
8. Click OK
9. After a short computing time, a transformed image with the undulations aligned either horizontally or
vertically will be loaded in memory. Select the le and select the spatial subset that will be stacked to
determine the correction. The same spatial subset will be stacked on each selected band.
10. Click OK
11. The output image will be the original le with the selected band corrected. The correction applied
to the bands is appended as additional bands at the end of the le. The non selected bands remain
unchanged.
31
Figure 18: Destripping tool stacking area denition
10.4 Vector Field
This tool (Tools -> Vector Field) displays a vector eld based on displacement maps or ASCII les.
Loading Data: To load data in the Vector Field tool, do File -> Open. Two kinds of data can be
entered:
ENVI File: When selected you will be prompted to enter the E/W band and N/S band successively of
a displacement map to construct the vector eld. The E/W and N/S band selected (and their subset)
must be of the same size and must be georeferenced. A typical entry is a correlation le.
TXT File: An ASCII le which must be of the form Easting Northing DEasting DNorthing. DEasting
and DNorthing refer to the vector value in Easting and Northing directions at the location indicated
by Easting and Northing. A typical entry is a GPS measurements le.
Note that additional data (from ENVI le or TXT le) can be added to the vector eld display, but the
ground footprint of the display will be determined by the rst data entered.
Vector Tool Select Processing -> Tool Gui. The vector eld graphic options available are the following
(Fig. 20):
Graph Title: Enter the title of the vector eld display.
Maximum vector value: Enter the maximum value of the displayed vectors. Vectors of superior values
wont be displayed.
32
Figure 19: Destripping tool corrected image
Ratio Arrow Length: Ratio to control the length display of the vectors.
Unit: Enter the unit name that is displayed on the vector eld legend.
Vector Field Options: The list displays all the data entered on the current display. Select the entry
of interest to have access to the following options:
Vector Field Name: Select the name that will be displayed in the list.
Average Window Size: Option available only to ENVI data les. Determines the window (odd
size) centered on the vector location to average the values in the le.
Step: Option available only to ENVI data les. Step in pixel between two displayed vectors.
Performs the decimation of a displacement eld if more than 1.
Line Thickness: Ratio to determine the thickness of the displayed vectors.
Note: Saving the vector eld as an ENVI Layer will not work in ENVI 4.0 due to an internal ENVI error.
10.5 Stacking Proles
In the context of seismotectonics this tool (Tools -> Stacking) allows to stack proles across the fault on
the correlation le to retrieve the fault step. Prior to stacking proles, a mapping of the fault is necessary:
1. Using the ENVI ROI tool with the polyline selection option (ROI_Type->Polyline), map precisely the
fault. Once the fault is mapped, save the ROI using File->Output ROIs to ASCII.
2. Take note of the fault origin pixel coordinates (using the Cursor Location/Value tool), as it will be
needed for the fault orientation.
33
Figure 20: Vector eld tool - Displacement eld of the 1999, Taiwan, Chichi earthquake form a pair of SPOT
images.
10.5.1 Orient Fault
This step (Tools -> Stacking -> Orient Fault) will rearrange the data contained in the fault prole le
retrieved from the ROI tool. This process is necessary for two reasons. First reason, practical, is the necessity
to reorder the fault points to physically follow the fault (the ENVI ROI tool save the points line-wise). The
second reason is to dene the origin of the fault, as it will dictates the fault orientation for measurements
made parallel and normal to the fault. The parameters are the following:
1. Fault Trace (ROI Ascii File): Select the le generated with the ROI tool when mapping the fault.
2. Fault Origin: Enter the X and Y pixel coordinates of the rst point of the fault (given by the "Cursor
Location/Value" tool). If not selected, the rst pixel found in the fault trace le will be considered the
fault origin (which will be the top pixel (line-wise) of the fault trace).
3. Oriented Fault File: Select the oriented fault prole le name to be created.
10.5.2 Stack
This tool (Tools -> Stacking -> Stack) manages the stacking boxes and resulting proles (Fig. 21). A
stacking box is dened by its width and length which are expressed in pixels and must be odd. The box is
centered on a pixel belonging to the fault. For each selected bands, proles in the box length direction are
retrieved and stacked. The resulting prole is displayed and the oset at the fault position can be measured
using linear t on the resulting prole.
Stacking Box Initialization: Boxes can be initialized using Options->Initialize Prole, and/or can be
added or deleted one by one using the Add and Remove buttons. Size and center position of the selected
box can be changed with Stack Length (odd) and Stack Width (odd) elds, and Position on fault
buttons. The simple arrow button moves the box center to the next pixel on the fault whereas the double
arrows button moves to the next 20ieth pixel on the fault.
34
Figure 21: Proles stacking tool
Stacking Boxes Visualization: To visualize the stack boxes, select View->Stack Visualization, and
open the ROI tool as stack boxes are displayed through the ENVI ROI tool. Close all open ROIs before
visualizing the stack boxes as open ROIs will be rst deleted.
Prole projection: By default, proles are in the le band projection, i.e. in the E/W and N/S projection
for a regular correlation le. Proles can also be projected in the fault parallel and fault normal directions,
using Options->Proles Projection. It is assumed for the Parallel-Normal projection to receive a two or
more bands le with rst and second bands representing the E/W and N/S displacements (a correlation le
typically).
For each stacked prole, the t range can be customized on the left and right part of the prole as well as
on the available bands. The range can be changed by moving the green rulers with the mouse or by entering
range values in the appropriate elds.
Output: A stack project can be saved/restored using File->Save Stack/Restore Stack. Note that only
the stacks size, positions, and t ranges will be saved. You will be asked to enter the image and fault le
when restoring. When done with adjusting the proles, two options are available to export them:
File->Export->Fault Displacement will save the fault oset measure location (geographic coordi-
nates), its values (E/W-N/S or Parallel-Normal depending on the chosen projection), and the sigmas.
File->Export->Full Stack Information will save in addition the details of each stacks (box size, proles
stacked, . . . ).
The possibility of weighting the sigmas is oered before exporting the data. For example if the measures in
the correlation le are not totally independent, the sigmas must be weighted accordingly in order to correctly
reects the sigma on the oset measures.
35
Figure 22: Matrices Interdistances tool
10.6 Matrices Interdistances
The matrices interdistances tool (tools -> Matrices Interdistances) computes the resampling distances
(Leprince et al. (2007)), which provide the width of the Sinc lobes in the x and y directions, and represent
the maximum absolute dierence between adjacent pixel values in the mapping matrices. They can be seen
as the maximum ratio between the ortho-rectied image resolution and raw image nominal resolution. For
example, if a 5 m image is to be ortho-rectied onto a 10 m grid, a ratio around 2 is expected. If the ratio
found is outrageously large, i.e. larger than the nominal ratio + 1 = 3 in our example, this most likely
traduces an ortho-rectication problem, such as unphysical values in the DEM le. Make sure that the DEM
does not contain missing values encoded as -32767, for example. All DEM elevations should be within a
physical range, and interpolated values should be preferred over missing values.
1. Matrices: Select the matrices le of interest.
2. Area of interest in image 1A: By default the resampling distances will be computed on the whole
matrices. This button will allow you to select the image 1A subset onto which compute the resampling
distances. The subset can also be selected manually.
3. Distances returned %: The resampling distances used during the resampling allow to control the
amount of aliasing introduced. Theoretically, to completely avoid aliasing, the largest interdistances
must be taken as the resampling distances. However, the matrices interdistances values may be cor-
rupted by some outliers due to some DEM errors/missing values. As a consequence, matrices inter-
distances can be ltered out by entering the percentage of values to consider. A value of 100% will
return the largest interdistance found, for each X and Y dimension. If the resampling distances are
computed on the y during the resampling process, an automatic lter at 99.5% is set. This allows to
lter out distances (the 0.5% larger distances are discarded) corrupted by outliers and, in the case of
no outliers, to let through only a small amount of aliasing.
4. Click OK. The computed resampling distances will be printed in the IDL output window.
11 Miscellaneous
A queue manager is available in COSI-Corr to allow batch processing. An unlimited amount of tasks
can be queued and will be processed on a rst selected, rst processed basis. When selecting data for
a process to be queued, the data to be selected may not exist yet (for example when it is supposed to
be computed in a task queued before). Depending on the type of data to be selected:
ENVI le: Click on Cancel. A regular le selector will be displayed. Enter the name at the
correct path location of the le to be created. Note that in this situation, spatial and spectral
36
subsetting are not possible. If no regular le selector is displayed, the le must then exist at the
current time.
Other: Enter the name at the correct path location of the le to be created.
Do not open more than one COSI-Corr window at a time (except for the queue manager window), as
crash will occur otherwise.
In case of an ENVI blocking crash (due to more that one COSI-Corr window opened, bug, . . . ), enter
in the IDL command line: retall and press enter. It will most of the time unblock ENVI. If not,
you may have to restart ENVI.
COSI-Corr has been designed to be accurate in its computation, and processes can therefore be long,
especially the orthorectication and the correlation. Examples of processing times are given in Table
11. Processes were computed on a Pentium 4 Xeon 3.2 GHz, 2Gb RAM PC using Windows XP Pro
and ENVI 4.0. ENVI Cache and tile size were set to 250Mb and 40Mb respectively.
37
Task Process Timing
SPOT 5 Ortho/Resampling 5 m 14300 14400 pixels grid 7 h0 mn
SPOT 4 Ortho/Resampling 10 m 7200 6900 pixels grid 1 h58 mn
Correlation 11200 10800 pixels images (698 675 measures) 36 mn
WinSz:32, Step:16, Mask:0.9, NbRobIter:2, No resamp
Correlation 11200 10800 pixels images (698 675 measures) 2 h19 mn
WinSz:64, Step:16, Mask:0.9, NbRobIter:2, No resamp
Table 1: Processes computed on a Pentium 4 Xeon 3.2 GHz, 2Gb RAM PC using Windows XP Pro and
ENVI 4.0
References
S. Leprince, S. Barbot, F. Ayoub and J.P. Avouac, Automatic and Precise Ortho-rectication, Coregistration,
and Subpixel Correlation of Satellite Images, Application to Ground Deformation Measurements, IEEE
Trans. Geosci. Remote Sensing, vol. 45, no. 6, pp 1529-1558, 2007
F. Ayoub, S. Leprince and J.P. Avouac, Co-registration and Correlation of Aerial Photographs for Ground
Deformation Measurements, submitted 2007.
N. Van Puymbroeck, R. Michel, R. Binet, J.P. Avouac and J. Taboury, Measuring earthquakes from optical
satellite images, Applied Optics, vol. 39, no. 20, pp. 3486 to 3494, 2000.
P. R. Wolf and B. A. Dewitt, Elements of Photogrammetry with Applications in GIS, 3rd ed. Mc Graw
Hill, 2000.
A. Buades, B. Coll and J.M. Morel, NonLocal Image and Movie Denoising, International Journal of Com-
puter Vision, vol. 76, no. 2, pp. 123 to 139, 2008.
A. Buades, B. Coll and J.M. Morel, The staircasing eect in neighborhood lters and its solution, IEEE
transactions on Image Processing, vol. 15, no. 6, pp. 1499 to 1505, 2006.
B. Goossens, H. Luong, A. Pizurica and W. Philips, An Improved Non-Local Denoising Algorithm, Pro-
ceedings of the 2008 International Workshop on Local and Non-Local Approximation in Image Processing,
Lausanne, Switzerland, 2008.
S. Zimmer, S. Didas and J. Weickert, A Rotationally Invariant Block Matching Strategy, Improving Image
Denoising With Non-Local Means, Proceedings of the 2008 International Workshop on Local and Non-
Local Approximation in Image Processing, Lausanne, Switzerland, 2008.
38

You might also like