def prepare_metadata(meta_file, geom_src_dir, box=None): print('-'*50) # extract metadata from ISCE to MintPy (ROIPAC) format meta = isce_utils.extract_isce_metadata(meta_file, update_mode=False)[0] if 'Y_FIRST' in meta.keys(): geom_ext = '.geo.full' else: geom_ext = '.rdr.full' # add LAT/LON_REF1/2/3/4, HEADING, A/RLOOKS meta = isce_utils.extract_geometry_metadata(geom_src_dir, metadata=meta, box=box, fext_list=[geom_ext]) # add LENGTH / WIDTH atr = readfile.read_attribute(os.path.join(geom_src_dir, 'lat{}'.format(geom_ext))) meta['LENGTH'] = atr['LENGTH'] meta['WIDTH'] = atr['WIDTH'] ## update metadata due to subset print('update metadata due to subset with bounding box') meta = ut.subset_attribute(meta, box) return meta
def main(iargs=None): inps = cmd_line_parse(iargs) inps.processor = isce_utils.get_processor(inps.metaFile) # read common metadata metadata = {} if inps.metaFile: rsc_file = os.path.join(os.path.dirname(inps.metaFile), 'data.rsc') metadata = isce_utils.extract_isce_metadata(inps.metaFile, geom_dir=inps.geometryDir, rsc_file=rsc_file, update_mode=inps.update_mode)[0] # prepare metadata for geometry file if inps.geometryDir: metadata = prepare_geometry(inps.geometryDir, metadata=metadata, update_mode=inps.update_mode) # read baseline info baseline_dict = {} if inps.baselineDir: baseline_dict = isce_utils.read_baseline_timeseries(inps.baselineDir, processor=inps.processor) # prepare metadata for ifgram file if inps.dsetDir and inps.dsetFiles: for namePattern in inps.dsetFiles: prepare_stack(inps.dsetDir, namePattern, metadata=metadata, baseline_dict=baseline_dict, update_mode=inps.update_mode) print('Done.') return
def main(iargs=None): inps = cmd_line_parse(iargs) inps.processor = isce_utils.get_processor(inps.metaFile) # read common metadata metadata = {} if inps.metaFile: rsc_file = os.path.join(os.path.dirname(inps.metaFile), 'data.rsc') metadata = isce_utils.extract_isce_metadata( inps.metaFile, geom_dir=inps.geometryDir, rsc_file=rsc_file, update_mode=inps.update_mode)[0] # prepare metadata for geometry file if inps.geometryDir: prepare_geometry(inps.geometryDir, geom_files=inps.geometryFiles, metadata=metadata, processor=inps.processor, update_mode=inps.update_mode) # read baseline info baseline_dict = {} if inps.baselineDir: if inps.baselineDir.startswith( 'rand') and inps.dsetDir and inps.dsetFiles: if '-' in inps.baselineDir: max_bperp = float(inps.baselineDir.split('-')[1]) else: max_bperp = 10 baseline_dict = gen_random_baseline_timeseries( dset_dir=inps.dsetDir, dset_file=inps.dsetFiles[0], max_bperp=max_bperp) else: baseline_dict = isce_utils.read_baseline_timeseries( inps.baselineDir, processor=inps.processor) # prepare metadata for ifgram file if inps.dsetDir and inps.dsetFiles: for namePattern in inps.dsetFiles: prepare_stack(inps.dsetDir, namePattern, metadata=metadata, baseline_dict=baseline_dict, processor=inps.processor, update_mode=inps.update_mode) print('Done.') return
def prepare_metadata(meta_file, geom_src_dir, box=None, nlks_x=1, nlks_y=1): print('-' * 50) # extract metadata from ISCE to MintPy (ROIPAC) format meta = isce_utils.extract_isce_metadata(meta_file, update_mode=False)[0] if 'Y_FIRST' in meta.keys(): geom_ext = '.geo.full' else: geom_ext = '.rdr.full' # add LAT/LON_REF1/2/3/4, HEADING, A/RLOOKS meta = isce_utils.extract_geometry_metadata(geom_src_dir, meta=meta, box=box, fext_list=[geom_ext]) # add LENGTH / WIDTH atr = readfile.read_attribute( os.path.join(geom_src_dir, 'lat{}'.format(geom_ext))) meta['LENGTH'] = atr['LENGTH'] meta['WIDTH'] = atr['WIDTH'] ## update metadata due to subset print('update metadata due to subset with bounding box') meta = attr.update_attribute4subset(meta, box) # apply optional user multilooking if nlks_x > 1: meta['RANGE_PIXEL_SIZE'] = str( float(meta['RANGE_PIXEL_SIZE']) * nlks_x) meta['RLOOKS'] = str(float(meta['RLOOKS']) * nlks_x) if nlks_y > 1: meta['AZIMUTH_PIXEL_SIZE'] = str( float(meta['AZIMUTH_PIXEL_SIZE']) * nlks_y) meta['ALOOKS'] = str(float(meta['ALOOKS']) * nlks_y) return meta