###### tags: `timeseries` `sbas` `mintpy` # ISCE-mintpy processing NOTE :::warning - 請先參考[ISCE stack for timeseries](/NfHR48A1Q8u2LiceJH84OQ)中利用ISCE如何處理sentinel-1 影像堆。 - 安裝與環境變數設置請詳見官網 - 對於小型工作站,電腦(mintpy.compute)設定相當重要,會影響後續的處理速度(分割的working node數目) - 大氣效應的設定也請注意是否成功安裝PyAPS與註冊"歐洲中期天氣預報中心"的註冊資料設定,否則請在設定檔中將大氣校正關閉 ::: spoiler 演算法參考文獻 - Yunjun, Z., Fattahi, H., & Amelung, F. (2019). Small baseline InSAR time series analysis: Unwrapping error correction and noise reduction. Computers & Geosciences, 133, 104331. https://doi.org/10.1016/j.cageo.2019.104331 - Berardino, P., Fornaro, G., Lanari, R., & Sansosti, E. (2002). A New Algorithm for Surface Deformation Monitoring Based on Small Baseline Differential SAR Interferograms. Geoscience and Remote Sensing, IEEE Transactions On, 40, 2375–2383. https://doi.org/10.1109/TGRS.2002.803792 ::: ## mintpy (小基線處理) 建立 mintpy資料夾,包含SenProject.cfg,內容如下: ```= # vim: set filetype=cfg: ##------------------------------- ISCE/topsStack ----------------------## #ssaraopt = --platform=SENTINEL-1A,SENTINEL-1B -r 128 -f 589,590,591,592,593 -e 2017-07-01 sentinelStack.boundingBox = '23.817175 24.211690 121.517727 121.718914' #sentinelStack.subswath = 2,3 # comment sentinelStack.numConnections = 4 # comment sentinelStack.azimuthLooks = 3 # comment sentinelStack.rangeLooks = 9 # comment sentinelStack.filtStrength = 0.5 # comment #sentinelStack.unwMethod = snaphu # comment #sentinelStack.coregistration = auto # comment #subset.y0:y1,x0:x1 = 1150:1600,1070:1670 ##--------------------- MintPy -----------------------------## mintpy.compute.memorySize = 15 #[float > 0.0], auto for 2, max memory to allocate in GB mintpy.compute.cluster = local #[local / slurm / pbs / lsf / no], auto for no, cluster type mintpy.compute.numWorker = 4 #[int > 1 / all], auto for 4 (local) or 40 (non-local), num of workers mintpy.compute.config = auto #[none / slurm / pbs / lsf ], auto for none (same as cluster), config name ########## 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 = ../master/IW*.xml mintpy.load.baselineDir = ../baselines ##---------interferogram datasets: mintpy.load.unwFile = ../merged/interferograms/*/filt_*.unw mintpy.load.corFile = ../merged/interferograms/*/filt_*.cor mintpy.load.connCompFile = ../merged/interferograms/*/filt_*.unw.conncomp ##---------geometry datasets: mintpy.load.demFile = ../merged/geom_master/hgt.rdr mintpy.load.lookupYFile = ../merged/geom_master/lat.rdr mintpy.load.lookupXFile = ../merged/geom_master/lon.rdr mintpy.load.incAngleFile = ../merged/geom_master/los.rdr mintpy.load.azAngleFile = ../merged/geom_master/los.rdr mintpy.load.shadowMaskFile = ../merged/geom_master/shadowMask.rdr mintpy.load.waterMaskFile = None mintpy.subset.lalo = auto # lat0:lat1:lon0:lon1 ############ 3. reference ################## #mintpy.reference.lalo = -0.30,-91.43 mintpy.deramp = linear ``` :::warning - 檔名請以Sensor開頭,如Csk, Alos, Sen 等等。 - 因為是使用open source ISCE 所以必須要包含第一部分的ISCE/topsStack。如果使用winSAR ISCE 可不須給予ISCE的處理參數。 ::: ## 執行 mintpy 進入mintpy 環境後(source mintpy_config),執行: `smallbaselineApp.py project.cfg` 如果只想要執行特定步驟,可以指定參數`--dostep`、`--start`、`--end` ## Post processing - View DATA: ```bash= view.py geo_velocity.h5 tsview.py geo_timeseries_ERA5_ramp_demErr.h5 ``` - SAVE date to other format: ```bash= mask.py -m geo_temporalCoherence.h5 -t 0.5 geo_velocity.h5 -o geo_velocity_msk.h5 image_math.py -o geo_velocity_msk2.h5 geo_velocity.h5 * 1000 save_gmt.py geo_velocity_msk2.h5 -o geo_velocity.grd # or save_gdal.py ```