ISCE_INSAR/contrib/stack/stripmapStack/adjustFrame.py

68 lines
1.6 KiB
Python
Raw Normal View History

2019-01-16 19:40:08 +00:00
#!/usr/bin/env python3
import numpy as np
import argparse
import os
import isce
import isceobj
import datetime
import shelve
import matplotlib.pyplot as plt
def cmdLineParse():
'''
Command line parser.
'''
parser = argparse.ArgumentParser( description='Generate offset field between two Sentinel swaths')
parser.add_argument('-m', type=str, dest='master', required=True,
help='Directory with the master image')
parser.add_argument('-a', '--az', type=float, dest='azshift', default=0.0,
help='Azimuth shift to add in lines')
parser.add_argument('-r', '--rg', type=float, dest='rgshift', default=0.0,
help='Range shift to add in pixels')
return parser.parse_args()
if __name__ == '__main__':
'''
Generate offset fields burst by burst.
'''
inps = cmdLineParse()
mdb = shelve.open( os.path.join(inps.master, 'data'), flag='r')
mFrame = mdb['frame']
mdb.close()
print('Before: ')
print('t0: ', mFrame.sensingStart)
print('r0: ', mFrame.startingRange)
deltat = datetime.timedelta(seconds = inps.azshift/ mFrame.PRF)
mFrame.sensingStart += deltat
mFrame.sensingMid += deltat
mFrame.sensingStop += deltat
deltar = inps.rgshift * mFrame.instrument.rangePixelSize
mFrame.startingRange += deltar
mdb = shelve.open( os.path.join(inps.master, 'data'), writeback=True)
mdb['frame'] = mFrame
mdb.close()
mdb = shelve.open(os.path.join(inps.master, 'data'), flag='r')
mFrame = mdb['frame']
mdb.close()
print('After: ')
print('t0: ', mFrame.sensingStart)
print('r0: ', mFrame.startingRange)