整个过程分两个过程分别在两个软件上操作。
一、在isce上进行预处理
首先运行命令:
stackSentinel.py -s ../SLC/ -d ../DEM/demLat_N30_N31_Lon_E102_E103.dem.wgs84 -a ../AuxDir/ -o ../Orbits -b '30.965875518436 30.9869898678013 102.014576995472 102.046291434864' -c 2 -m 20200807
选择的主影像为20200807。运行完命令之后会自动生成config文件夹和run_files文件。自己写了脚本可以按照顺序自动运行run_files下的所有命令,github链接为:https://github.com/boost66/autoRunISCE,运行该脚本,则所有的在isce上的预处理全部完成。
二、mintpy上进行时序分析
1、首先创建参数文件,程序会根据参数文件进行选参,参数文件里面没有的程序会自动选取smallbaseApp.cfg里面的参数,下面是我自己的参数文件内容:
# vim: set filetype=cfg:
##------------------------------- ISCE/topsStack ----------------------##
##-------------------------------- MintPy -----------------------------##
########## 1. Load Data (--load to exit after this step)
## load_data.py -H to check more details and example inputs.
#mintpy.load.processor = isce
##---------for ISCE only:
mintpy.load.metaFile = ../isceOutEx3/master/IW*.xml
mintpy.load.baselineDir = ../isceOutEx3/baselines
##---------interferogram datasets:
mintpy.load.unwFile = ../isceOutEx3/merged/interferograms/*/filt_*.unw
mintpy.load.corFile = ../isceOutEx3/merged/interferograms/*/filt_*.cor
mintpy.load.connCompFile = ../isceOutEx3/merged/interferograms/*/filt_*.unw.conncomp
##---------geometry datasets:
mintpy.load.demFile = ../isceOutEx3/merged/geom_master/hgt.rdr
mintpy.load.lookupYFile = ../isceOutEx3/merged/geom_master/lat.rdr
mintpy.load.lookupXFile = ../isceOutEx3/merged/geom_master/lon.rdr
mintpy.load.incAngleFile = ../isceOutEx3/merged/geom_master/los.rdr
mintpy.load.azAngleFile = ../isceOutEx3/merged/geom_master/los.rdr
mintpy.load.shadowMaskFile = ../isceOutEx3/merged/geom_master/shadowMask.rdr
##---------multilook (optional):
## multilook while loading data with nearest interpolation, to reduce dataset size
mintpy.load.ystep = auto #[int >= 1], auto for 1 - no multilooking
mintpy.load.xstep = auto #[int >= 1], auto for 1 - no multilooking
##---------subset (optional):
## if both yx and lalo are specified, use lalo option unless a) no lookup file AND b) dataset is in radar coord
mintpy.subset.yx = auto #[y0:y1,x0:x1 / no], auto for no
mintpy.subset.lalo = auto #[S:N,W:E / no], auto for no
########## 2. modify_network
########## 3. reference_point
mintpy.reference.maskFile = no #[filename / no], auto for maskConnComp.h5
mintpy.reference.minCoherence = 0.5 #[0.0-1.0], auto for 0.85, minimum coherence for auto method
########## 4. correct_unwrap_error (optional)
## a. phase_closure - suitable for highly redundant network
## b. bridging - suitable for regions separated by narrow decorrelated features, e.g. rivers, narrow water bodies
## c. bridging+phase_closure - recommended when there is a small percentage of errors left after bridging
mintpy.unwrapError.method = no #[bridging / phase_closure / bridging+phase_closure / no], auto for no
mintpy.unwrapError.waterMaskFile = no #[waterMask.h5 / no], auto for waterMask.h5 or no [if not found]
########## 5. invert_network
mintpy.networkInversion.waterMaskFile = no #[filename / no], auto for waterMask.h5 or no [if not found]
mintpy.networkInversion.maskDataset = no #[coherence / connectComponent / offsetSNR / no], auto for no
## Temporal coherence is calculated and used to generate the mask as the reliability measure
## reference: Pepe & Lanari (2006, IEEE-TGRS)
mintpy.networkInversion.shadowMask = auto #[yes / no], auto for yes [if shadowMask is in geometry file] or no.
########## 6. correct_troposphere (optional but recommended)
mintpy.troposphericDelay.method = height_correlation #[pyaps / height_correlation / gacos / no], auto for pyaps
## Notes for height_correlation:
## Extra multilooking is applied to estimate the empirical phase/elevation ratio ONLY.
## For an dataset with 5 by 15 looks, looks=8 will generate phase with (5*8) by (15*8) looks
## to estimate the empirical parameter; then apply the correction to original phase (with 5 by 15 looks),
## if the phase/elevation correlation is larger than minCorrelation.
mintpy.troposphericDelay.polyOrder = auto #[1 / 2 / 3], auto for 1
mintpy.troposphericDelay.looks = auto #[1-inf], auto for 8, extra multilooking num
mintpy.troposphericDelay.minCorrelation = auto #[0.0-1.0], auto for 0
########## 7. deramp (optional)
########## 8. correct_topography (optional but recommended)
########## 9.1 residual_RMS (root mean squares for noise evaluation)
########## 9.2 reference_date
mintpy.reference.date = 20200807 #[reference_date.txt / 20090214 / no], auto for reference_date.txt
########## 10. velocity
## Estimate linear velocity and its standard deviation from time-series
## and from tropospheric delay file if exists.
## reference: Fattahi and Amelung (2015, JGR)
mintpy.velocity.excludeDate = auto #[exclude_date.txt / 20080520,20090817 / no], auto for exclude_date.txt
mintpy.velocity.startDate = auto #[20070101 / no], auto for no
mintpy.velocity.endDate = auto #[20101230 / no], auto for no
## Bootstrapping
## refernce: Efron and Tibshirani (1986, Stat. Sci.)
mintpy.velocity.bootstrap = auto #[yes / no], auto for no, use bootstrap
mintpy.velocity.bootstrapCount = auto #[int>1], auto for 400, number of iterations for bootstrapping
后期需要调参可以直接在该文档上调。
接着运行命令:
smallbaselineApp.py ./setParm.txt
setParm.txt为参数文档,同样smallbaselineApp.py的参数列表还可以跟其他参数,例如:起始步骤,可以通过命令查看:
smallbaselineApp.py -help
Mintpy其他的功能还很强大,本人还在学习当中,欢迎大家交流!!!