ISCE_INSAR/contrib/timeseries/prepStackToStaMPS/bin/step_multilook_isce

124 lines
4.3 KiB
Tcsh
Executable File

#!/bin/tcsh -f
# Script which make an interferometric combination between secondary and reference
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# copyright: 2017 to the present, california institute of technology.
# all rights reserved. united states government sponsorship acknowledged.
#
# THESE SCRIPTS ARE PROVIDED TO YOU "AS IS" WITH NO WARRANTIES OF CORRECTNESS. USE AT YOUR OWN RISK.
#
# Author: David Bekaert
# Organization: Jet Propulsion Laboratory, California Institute of Technology
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# check if existing files needs to be overwritten or not
set input = input_file
set counter = 1
while ($counter <= 10)
if ( ! -f $input ) then
set input = ../$input
else
@ counter = $counter + 10000
endif
@ counter = $counter + 1
end
set overwrite = 1
if ( -f $input ) then
set overwrite_flag = `grep overwrite $input | awk '{print $2}'`
if ( $overwrite_flag == "n" | $overwrite_flag == "no" ) then
# do not overwrite existing the files
set overwrite = 0
echo Will not overwrite existing files
endif
# getting the multi-look information
set r_looks = `grep range_looks $input | awk '{print $2}'`
set ar = `grep aspect_ratio $input | awk '{print $2}'`
set a_looks = `grep azimuth_looks $input | awk '{print $2}'`
if ( $a_looks != "" ) then
echo "azimuth_looks will over-rule the ar"
else
# computing the azimuth looks based on the aspect ratio
@ a_looks = $ar * $r_looks
endif
else
echo Could not find the input_file with all the processing parameters
exit 1
endif
# giving a summary to the user
echo number of range looks: $r_looks
echo number of azimuth looks: $a_looks
# User can specify a file to be multi-looked (as long as its ISCE processed with corresponding xml)
# by default no inputs are assumed and then its the intergerogram which is multi-looked
if ($#argv == 1) then
# user inputed a file
set file_in = $argv[1]
else
# default ifgs multi-looking
set CURDIR = `pwd`
echo $CURDIR
# retrieve the current secondary data folder being processed
set date = `basename $CURDIR`
# I included to be in the secondary data folder, such one can reprocess easily without the need to manually specify the inputs
# move dir above
cd ..
# defining the input interferogram that needs to be multi-looked
set file_in = $PWD/$date/isce_minrefdem.int
endif
echo Multi-look: $file_in
# defining the output name based on the number of looks taken
set filename_out = `basename $file_in | cut -d. -f1`
set path_out = `dirname $file_in`
set extension_out = `basename $file_in | cut -d. -f2`
set file_out = {$path_out}/{$filename_out}_{$r_looks}l.{$extension_out}
# Doing the actual multi-looking
set curdir = `pwd`
if ($a_looks == 1 & $r_looks == 1) then
echo no multi-looking needed, will make symbolic links
set file_out_sym = {$filename_out}_{$r_looks}l.{$extension_out}
set file_out_sym_xml = {$filename_out}_{$r_looks}l.{$extension_out}.xml
set file_out_sym_vrt = {$filename_out}_{$r_looks}l.{$extension_out}.vrt
set file_in_sym = {$filename_out}.{$extension_out}
set file_in_sym_xml = {$filename_out}.{$extension_out}.xml
set file_in_sym_vrt = {$filename_out}.{$extension_out}.vrt
cd $path_out
# link the file and also the meta data if they exist
rm ${file_out_sym} $file_out_sym_xml $file_out_sym_vrt >& /dev/null
ln -s $file_in_sym $file_out_sym
if ( -f "$file_in_sym_xml" ) then
ln -s $file_in_sym_xml $file_out_sym_xml
endif
if ( -f "$file_in_sym_vrt" ) then
ln -s $file_in_sym_vrt $file_out_sym_vrt
endif
cd $curdir
else
# skip the run in case the user does not want to overwrite files
if ( -f $file_out & $overwrite == 0 ) then
# nothing to be done, file exist and user does not want to overwrite it
echo $file_out exist, will not overwrite on user request
else
echo looks.py -i $file_in -o $file_out -r $r_looks -a $a_looks
echo looks.py -i $file_in -o $file_out -r $r_looks -a $a_looks >> processing.log
looks.py -i $file_in -o $file_out -r $r_looks -a $a_looks
fixImageXml.py -f -i $file_out
endif
endif