You are on page 1of 9

Practical work on SAR Interferometry Data Processing using DORIS

Software
Y.S. Rao
CSRE, IIT Bombay
ysrao@csre.iitb.ac.in

Tools : DORIS (Delft Object-Oriented Radar Interferometric Software) is freely available with
source code and can be downloaded through the http://enterprise.lr.tudelft.nl/doris/

One has to compile according to the instructions given in the INSTALL file. At present 4.02
Version is available and you are going to work with this version.
This software uses FFT routines, snaphu (Stanford phase unwrapping software), GMT and
projection software. These are also available freely on Internet.

We assumed that the software is installed successfully on Linux Fedora, Debian, etc. or
Windows with Cygwin.

If you have raw data, you can process using ROI, StaMPS and then DORIS.
In this exercise, you use ASAR SLC data over BAM, Iran earthquake.

Data Source : ENVISAT ASAR data over Iran, Bam Earthquake area
Date set 1: June 11, 2003 with orbit No. 6687
ASA_IMS_1PNUPA20030611_061252_000000162017_00120_06687_0098.N1
Data set 2: Dec. 03, 2003
ASA_IMS_1PNUPA20031203_061259_000000162022_00120_09192_0099.N1
In between this and Jan 2004, an earthquake occurred on Dec. 26, 2003
Data set 3 : Jan. 11, 2004
ASA_IMS_1PNPDE20040107_061300_000000162023_00120_09693_0012.N1

The above data sets are available freely to users from ESA. Frascati, Italy.
By sending an email to eohelp@esa.int you will get a DVD with data.

Practical 1 : 3-Pass SAR Interferometry for Displacement Map Generation.


TOPO Pair Processing (i.e Dec and June pair processing) 9192 versus 6687)
20 minutes for this work. Those who do not know Unix command may take more time)

You need to know how to handle with directory i.e $ls -l (or $dir -l ) $cd .. (one step down) $cd
./topo one step up directory, changing directory, $pwd command, etc.

$mkdir bam (create a directory with name bam ) Already done


$cp /mnt/cdrom /home/course/bam (copy 3 data files into the bam directory) Already done
As the files are very big, you have to shorten with symbolic ($ln –s source target) links
$ls -l (this command shows files in the directory)
$ln -s ASA_IMS_1PNUPA20030611_061252_000000162017_00120_06687_0098.N1 6687.N1
$ln -s ASA_IMS_1PNUPA20031203_061259_000000162022_00120_09192_0099.N1 9192.N1
$ln -s ASA_IMS_1PNPDE20040107_061300_000000162023_00120_09693_0012.N1 9693.N1

$ls -l (this command shows file names )


You can find the links with names 9192.N1, 6687.N1 and 9693.N1
$mkdir topo ( create a dir for data processing of June and Dec. for topography) Already done
$mkdir defo (create a dir for data processing of Dec. and Jan.for deformation map) Already
done
$cd topo (change dir)
$ls -l (you can see files names with input.m_initial, input.s_initial, input.resample, etc. files)
These files contain number of commands or input to the software. These can be changed for
various requirements. For example, proper commands are kept in those files to process Bam, Iran
ENVISAT, ASAR data for a small region. For full scene processing, you need to change some
parameters or you can use direct Bert Campus’s scripts which are available on Delft website.
One may get experience with time by processing the small data.

For outputs, create a directory Outdata. All outputs will be stored in this directory except sun
raster data outputs.
$mkdir Outdata ( please note that O is capital, you are using UNIX)
$doris input.m_initial (This command copies the December (9192 orbit) data and required
parameters from the original data i.e what we copied from CD) and takes as master data set.
You will get some 9192.res, master_mag.ras file in topo dir and 9192.raw data file in Outdata
directory)
$xv master_mag.ras (This command shows what the output of previous command)
After seeing the file, close the window corresponding to this xv view.
$doris input.s_initial (This command copies data and required parameters from the June data
(6687 orbit). You will get outputs 6687.res and /Outdata/6687.raw data file.
$xv slave_mag.ras (This command shows the slave image which is generated using the above
command)

$doris input.coregistration (This command calculates slave image shift from the master image
using orbital parameters, coarse shifts and obtain fine registation parameters).
This program also plots the offset points with correlation more than 0.3. From the plots, you can
observe the correlation and shifts with arrows. If you do not have GMT, you will not get plots,
but results are still written in topo directory.

$doris input.resample (This program calculates the polynomial for registering the two images.
The output is resampled slave image.
Here you may get several plots showing correlation of different points and errors between
estimated and actual locations. The output of the resampling and original slave file can be
compared using the following commands

$xv slave_mag.ras
$xv slave_rs_mag.ras

$doris input.products (This program generates interferogram, computes reference phase


corresponding to flat terrain and subtract from the interferogram)
The outputs are as follows :
interferogram_pha.ras, interferogram_mix.ras, interferogram_mag.ras
These can be displayed using xv command as
$xv interferogram_pha.ras (This image is interferogram before flattening)
$xv interferogram_mix.ras (interferogram after mixing with intensity)
$xv interferogram_mag.ras (magnitude of interferogram, i.e. intensity)

$xv coherence.ras (coherence between two images can be seen. Dark areas show low and bright
colour shows high coherence values)

$doris input.filter_unwrap (This filters the interferogram to reduce the noise and unwrap the
phase) Unwrapping part will take a few minutes.
$xv unwrapped_interferogram.ras (This shows the result of the above task )

Defo (Deformation) pair processing procedure (Dec. and Jan, i.e 9192 versus 9693)
Many commands are similar to the above task, but with different data combination. This takes
about 20 minutes)
$cd ../defo
$ls -l (shows some files input.m_initial, input.coregistarion, etc., These files are to be edited as
per your requirement). The following procedure is almost similar to the previous one, but with
different data set of pair i.e 9192 (dec) and 9693 (jan)
$mkdir Outdata
$doris input.m_initial
$xv master_mag.ras
$doris input.s_initial
$xv slave_mag.ras
$doris input.coregistration
$doris input.resample (see output files as similar to the previous case )
$doris input.products (see output files as similar to the previous case )
$ cp ../topo/Outdata/9192_6687.uint ./Outdata (the unwrapped phase file that we got through
the previous process is to be copied into this present directory)
$doris input.filter_dinsar (This program filters the defo interferogram and subtract from the topo
interferogram phase)
$doris input.filt_diff_fringes (This program filters differential interferogram fringes )
$xv interferogram_dinsar_pha.ras (display the deformation of earth surface due to earthquake)
$xv interferogram_dinsar_mix.ras
Exercise : Right_click on the image and click for mirror image (horizontal arrow)
Count number of fringes. Each fringe represents 2.8 (wavelength/2) cm. Please look at the
outputs and observe the displacement. What is total deformation and which side is more?

Differential Interferogram
before filtering

The following is an OPTIONAL :


**************************************************
If you want to filter differential interferogram, you need to edit 9192_9693.res file. Before
editing, copy this file into another file say 9192_9693.res_backup for safe side. In the file
9192_9693.res at the top, you can find task completed with 1 and others 0. You need to change
the process control flag corresponding to filtphase from 1 to 0. You have to also remove result
related to filtphase in the file 9192_9693.res i.e lines with Start_filtphase and below.

$ doris input.filter_unwrap (This program filters the differential interferogram and unwrap the
differential interferogram )

Filtered interferogram
$xv unwrapped_interferogram.ras

Unwrapped Interferogram

OPTIONAL part : END


**************************************************

You can also use the following command without any modifications of 9192_9693.res file,
but without filtering differential interferogram

$doris input.unwrap_diff ( This command unwrap the differential interferogram without


filtering )

Displacement MAP generation : This should be done separately. One has to open
unwrapped phase with BIL format with two bands. First band contains amplitude image
and the second band contains unwrapped phase. The second band is multiplied with
2.8*/2pi to get displacement in centimeters.

Import the unwrapped_9192_9693.udcint in the Outdata directory (change the


extension *.udcint if ERDAS requires) using ERDAS into .img format. Give the following
parameters while importing.
Rows: 987
Columns: 1182
BIL format
Bands:2
You can also use ENVI software or other free software for processing the file. Second
channel is unwrapped differential phase. There is also an option in DORIS to write only
phase and not BIL format with 2 bands.

Using the imported image perform the below operation using MODELER in ERDAS.
defo_in_meters = - DinSAR_unwrapped_phase * 2.8/(2PI) in radar direction

Display the image in Pseudo colours.

The resultant output is as given below.


+30 cm -18 cm
30 cm moved towards (+ sign) the radar and 18 cm away (- sign) from the radar

Practial-2 (about 40 minutes, simultaneously you can do practical-3 while running this
task)
2-Pass Interferometry using Dec. 2003 and Jan. 2004 ASAR Images
(only two scenes are enough to calculate displacement map, but you need SRTM DEM)
Data : Dec. 2003 (9192 orbit) and Jan 11, 2004 (9693 orbit) and SRTM DEM
$cd bam (go to bam directory)
$mkdir twopass (create directory)
$mkdir Outdata (create direcotory for output data files)
The file N28to29_E57to59_final.hgt (The size 2401 x 3601, signed short, You can display the
image using freelook or any other software, Lat goes from 28-30N and Long 57-60E). It is 2deg
by 3deg in size.
You can also convert the binary file into xyz ascii format (long, lat, height) and then use ascii2ps
ascii.file. From this command, you will get temp.eps file.
xv temp.eps (display SRTM DEM). You can see the displayed SRTM DEM at the end of the file.

$doris input.m_initial (creates required parameters and master data set from original SAR data
i.e Dec. 3, 2003)
$doris input.s_initial (creates required parameters and slave data set from original Jan 11, 2004
data set)
$ls -l ( to check about batch files that are available in the directory for running the software)
$doris input.coregistration
$doris input.resample
$doris input.products
Display output data products i.e. *.ras files using $xv filename.ras as similar to practical one.
$doris input.refdem_dinsar ( SRTM DEM is radar-coded at the grid of interferogram. This step
takes a little more time (30 minutes). Please wait till the task is over). Output of this step is
refdem.raw. This command subtract the phase corresponding to refdem from the complex
interferogram. While running the task, you can continue with practical-3
$xv interferogram_srd_pha.ras (This command display the output of the above task and
looks as below:

$doris input.filter_unwrap
$xv interferogram_filt_pha.ras & ( you will see the following filtered interferogram)

Compare two-pass differential fringes with that of 3-pass write your observations.
$xv unwrapped_interferogram.ras & (This command displays unwrapped phase which can
be converted into displacement as similar to 3-pass exercise)
Unwrapped phase (after mirroring the image using right click option
with xv)

Practical 3 : DEM Generation and Visualization


(approximate time taken for this is 10 minutes)
$cd topo (this is already created and worked using Dec and June data sets i.e Practical-1

$doris input.slant2height (This command converts unwrapped phase into height values)
output is hei.schw file
$doris input.geocode (This program converts height data into geocoded products)
outputs are lam.raw and phi.raw files
$lonlathei2ascii lam.raw phi.raw hei.schw lonlathei.dat (lonlathei.asci is gmt script and
converts the data into 3 column ascii data. Output is somewhat big file due to ascii format (32
MB)

$ascii2ps lonlathei.dat (This converts 3 column ascii data into postscript file which can be
viewed using xv or gv (ghostview)
$xv temp.eps (displaying the Geocoded DEM in colours)
$ascii2ascii_UTM lonlathei.dat +utm_sone=40 xyz_utm.dat
$ascii2ps xyz_utm.dat
$xv temp.eps (displaying the geocoded in colour )
You can compare this DEM with that of SRTM DEM shown below:
BAM Geocoded DEM using ASAR data

You might also like