Disclaimer: This is not intended to be a comprehensive guide, but should enable you to make a DEM using the current ROI_PAC set up at Oxford.
An excellent web resource is David Schmidt's website on ROI_PAC. I always have that open somewhere for reference when making a DEM or deformation interferogram with ROI_PAC.
BEFORE YOU BEGIN:
STAGE 1: Reading in SAR data from CD to '.raw' format
Do this for both dates... and all frames if DEM is multiple consecutive
frames
[Note: ODR = Delft Precise Orbits; PRC = DPAF Precise Orbits; HDR =
Orbits from data on CD.
These should all be available and downloaded... but not necessarily
available for every date. HDR should always work!]
STAGE 2: Make Single Look Complex images (SLCs)
This takes about 1.5 hours for both slcs running on kepler... you can set up the dem file in this time [see stage 5 for how to do this]
STAGE 3: Make interferogram & 1st pass unwrapping attempt
This takes a long time again (sefidabeh took ~ 3hours on kepler) and can fall over at several stages. But you can monitor files it creates along the way with dgx.pl
[NB unfortunately a bug means that phase is not displayed on 24 bit screens for *.int files. If you can find an old 8 bit screen then run dgxo.pl and it should work, or convert to rmg (BIL, 4Byte Real) files using cpx2rmg and view in ERMapper] .
Some tips for troubleshooting are on David Schmidt's webpage.
You should get an unwrapped interferogram out at the end of this process,
but it is unlikely to be the best possible unwrapped interferogram!
STAGE 4: Improving the Unwrapped interferogram
Two things can generally be improved:
A. the image is likely to have blank patches that did not unwrap with icu. Targetting the unwrapper on these areas can get at them.
B. unwrapping errors: the area has been unwrapped, but icu has made a mistake.
Fixing these is tedious and highly interactive, but necessary.
A. Patches that failed to unwrap
When restarting icu, you don't need to filter the image again so can use the filtered interferogram as input to icu, and switch off the filtering flag in the input file.
e.g.
cd unwrap
cp ../icu_unw.in icu_unw1.in
textedit icu_unw1.in & # edit icu input file - see
below
ln -s ../filt_ODR_960505-960504.int . #the filtered wrapped interferogram,
output by icu
ln -s ../960505-960504.amp . # the amplitude image
icu icu_unw1.in # run icu
#### Lines you MUST change in icu input file ####
Interferogram File
(-) = flat_ODR_960505-960504.int
-> Interferogram File
(-) = filt_ODR_960505-960504.int
[using pre-filtered interferogram]
Filtering or Unwrapping
(-) = Both
![Filtering, Unwrapping, Both]
-> Filtering or Unwrapping
(-) = Unwrapping
![Filtering, Unwrapping, Both]
[no need to filter as well]
Filtered Interferogram File
(-) = filt_ODR_960505-960504.int
-> Filtered Interferogram File
(-) = /dev/null
Unwrapped Phase File
(-) = filt_ODR_960505-960504_c45.phase
Unwrapped Amplitude File
(-) = filt_ODR_960505-960504_c45.amp
Flag File
(-) = filt_ODR_960505-960504_c45.flg
Phase Sigma Correlation File
(-) = filt_ODR_960505-960504_c45.phsig
-> Unwrapped Phase File
(-) = filt_ODR_960505-960504_c45_1.phase
-> Unwrapped Amplitude File
(-) = filt_ODR_960505-960504_c45_1.amp
-> Flag File
(-) = filt_ODR_960505-960504_c45_1.flg
-> Phase Sigma Correlation File
(-) = filt_ODR_960505-960504_c45_1.phsig
[file name changes]
#### Lines you CAN change in icu file #####
Start and End Sample
(-) = 201 6112
Starting Line
(-) = 1
Number of Lines
(-) = 6143 !number
of lines to process
[Edit these to specify the region you wish to try to unwrap again -
work it out from dgx]
Filter Exponent
(-) = 0.55 !PS Filter
strength
[This is alpha from the gold-wern filter. Increasing this will increase
the % of image unwrapped, but it may also increase the number of unwrapping
errors... particularly if there are steep phase gradients.]
#############################
Set up multi-layer ERMapper algorithm and use formula window to add multiples of 2 pi to the patches.
If there are no unwrapping errors then save as single phase file.
Also save single .amp and .phsig files [see C below]
Otherwise...
B. Fixing Unwrapping Errors
Again save the result as a .phase file
-> e.g. filt_ODR_960505-960504_c45_all.phase
C. Get files back into right format for starting up again
icu.pl - the script that usually calls icu - does a number of other things in addition to just unwrapping the phase.
It converts the .phase and .amp r4 files into .unw files containing phase and amplitude (rmg / BIL). It also makes a phase noise map and a mask file.
So you need to do this:
1. Make a single .amp file to match your .phase file. This should have amplitude everywhere you have been able to unwrap, and zeroes everywhere else. Do this in ERMapper using the .amp files from your new patches and the amplitude band of the original .unw file.
-> e.g. filt_ODR_960505-960504_c45_all.amp
2. Make single .phsig file in same way. The original phsig data is in the second band of phase_var_ODR.msk, which you should mv to the unwrap directory. Do not worry that the phase_var_ODR.msk file is 0 where unwrapping has failed - that gets sorted for the rest of the file later.
-> e.g. filt_ODR_960505-960504_c45_all.phsig
3. Run these commands (changing dates as appropriate) from the unwrap directory to move these composite files back to the master directory:
mv filt_ODR_960505-960504_c45_all.phase ../filt_ODR_960505-960504_c45.phase
mv filt_ODR_960505-960504_c45_all.amp ../filt_ODR_960505-960504_c45.amp
mv filt_ODR_960505-960504_c45_all.phsig ../filt_ODR_960505-960504_c45.phsig
4. Run icu2.pl in int* directory to tidy up and create new .unw file. Use syntax from int*/log file.
e.g. icu2.pl flat_ODR_960505-960504 filt_ODR_960505-960504_c45 960505-960504
phase_var_ODR filt_ODR_960505-960504 psfilt 0.55 Phase_Sigma 5 0.45
STAGE 5: Sort out course resolution DEM, make simulation, attempt match
STAGE 6: Manually match Simulation to radar image and restart processing
2. Set up and save 2 algorithms in ERMapper containing amplitude images from the SIM and .cor files (sim.alg, cor.alg)
3. Use ERMapper's "Define Ground Control Points" button to pick tie points - pick around 20 from all areas of the image if possible. It's quicker after the first 4. The "from" algorithm is sim.alg and the "to" algorithm is the cor.alg
4. Rectify the dataset in ERMapper. Use linear transformation and bilinear interpolation. Sometimes this only works on fresnel - don't know why. Important: in 'setup', change 'extents' so that they the same as upper left and lower right hand corner of the .cor file. Save file as radar_2rlks.hgt.
5. Copy date2-date1_2rlks.cor.rsc to radar_2rlks.hgt.rsc
STAGE 7: Post Processing of sch file to DEM