Data Stabilization

190 views
Skip to first unread message

Zicheng Huang

unread,
Jun 1, 2019, 11:29:21 AM6/1/19
to MintPy
Dear Yunjun

    In order to generate post-seismic time-series, I have made 513 interferograms using the GAMMA software. In these interferograms, I have removed atmospheric using the GACOS and plane trend phase.  In addition, I also removed some images that were heavily affected by the atmosphereic phase. Finally, I have 359 interferograms that is very good to process time-series step. However, the result is not very satisfactory and the part of data point exists  jump (especially in April ~ October). So, how can I improve the stability of my data? 

Best regards!
Zicheng Huang
time_series.png
timeseries.png
unwrapPhase_1.png
unwrapPhase_2.png
unwrapPhase_3.png

Yunjun Zhang

unread,
Jun 3, 2019, 2:39:43 AM6/3/19
to min...@googlegroups.com
Hi Zicheng,

Those dates with strong up-and-downs in your point displacement time-series could be caused by 1) phase-unwrapping error, which would be error/outliers in your case; or 2) atmospheric delay, which would be noise in your case.

1) For phase-unwrapping error, 
a) Check if there is phase-unwrapping error, by displaying the unwrapped phase with a color range of (-7, 7) or (-15, 15) using view.py, interferograms with unwrapping error should have clear phase jumps.
b) Exclude interferograms with phase-unwrapping errors by:
i) manual selection
ii) use coherence-based network modification with a manually selected area of interest, it should be a representative area: the boundary where unwrapping error occurs, which is usually a low coherent area surrounding the coherent area.

2) For tropospheric delay, I would recommend you:
a) NOT remove the "plane" trend or linear phase ramp, because you are interested in the long spatial wavelength deformation signal. Even if you do remove a linear phase ramp, do it in the time-series domain within MintPy; otherwise fitting a linear trend for each interferogram might not be closed, for example, ramp_AB + ramp_BC != ramp_AC. 

FYI, the tropospheric delay correction could also be done in the time-series domain, instead of the interferogram domain, below is an example of using GACOS. These two are the same, the advantage is to be able to compare the impact of different tropospheric correction methods on the displacement time-series directly.

b) Besides GACOS, try other correction methods, such as ERA5, ERA-Interim, or height correction, and choose the one that gives you the most reasonable results.
c) If these jumps still exist, then it would be safe to say that the corresponding dates are just noisy with severe atmospheric delays and should be excluded in your analysis afterward. mintpy.residualRms is designed for this case, try different mintpy.residualRms.cutoff option.

Yunjun

Zicheng Huang

unread,
Jun 8, 2019, 8:06:28 AM6/8/19
to MintPy
Dear Yunjun
    Thank you for your reply! Your suggestions is very useful for me! However, when I was run tropo_pyaps3.py, I met a problem:

    tropo_pyaps3.py -f timeseries.h5 --model ERA5 -g ./INPUTS/geometryRadar.h5 -w ../WEATHER

Result:
.................................
open geometry file: geometryRadar.h5
reading height          data from file: ./INPUTS/geometryRadar.h5 ...
reading incidenceAngle  data from file: ./INPUTS/geometryRadar.h5 ...
Traceback (most recent call last):
  File "/home/hzc/Software/PySAR/pysar/tropo_pyaps3.py", line 576, in <module>
    main()
  File "/home/hzc/Software/PySAR/pysar/tropo_pyaps3.py", line 562, in main
    get_delay_timeseries(inps, atr)
  File "/home/hzc/Software/PySAR/pysar/tropo_pyaps3.py", line 502, in get_delay_timeseries
    inps.lat, inps.lon = get_lat_lon(geom_obj.metadata)
  File "/home/hzc/Software/PySAR/pysar/tropo_pyaps3.py", line 465, in get_lat_lon
    lat0, lat1, lon0, lon1 = get_bounding_box(meta)
  File "/home/hzc/Software/PySAR/pysar/tropo_pyaps3.py", line 453, in get_bounding_box
    lats = [float(meta['LAT_REF{}'.format(i)]) for i in [1,2,3,4]]
  File "/home/hzc/Software/PySAR/pysar/tropo_pyaps3.py", line 453, in <listcomp>
    lats = [float(meta['LAT_REF{}'.format(i)]) for i in [1,2,3,4]]
KeyError: 'LAT_REF1'

I was run the command,  tropo_pyaps.py -f timeseries.h5 --model ECMWF -g ./INPUTS/geometryRadar.h5 -w ../WEATHER, everything is okay! So how do I solve this problem.

Best regards!
Zicheng Huang


在 2019年6月1日星期六 UTC+8下午11:29:21,Zicheng Huang写道:
2019-06-08 20-05-25.png

Yunjun Zhang

unread,
Jun 8, 2019, 2:03:37 PM6/8/19
to MintPy
Dear Zicheng,

Metadata "LAT_REF1/2/3/4 “ are required to run tropo_pyaps3.py for ERA5. These metadata can be extracted using SLC_corners command from GAMMA, below is an example:


Note that ERA5 is still experimental and not extensively tested, thus, it’s recommended for advanced users only, who are expected to be able to debug the script. 

ERA-Interim from tropo_pyaps.py is a good alternative choice. It’s extensively tested.

Regards,

Yunjun

--
You received this message because you are subscribed to the Google Groups "MintPy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mintpy+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mintpy/05ca1831-9fc3-41e4-b550-f8943af38909%40googlegroups.com.
<2019-06-08 20-05-25.png>

Reply all
Reply to author
Forward
0 new messages