understanding connected components for unwrap error correction

416 views
Skip to first unread message

sar

unread,
Jan 5, 2021, 11:32:32 PM1/5/21
to MintPy
I'm trying to run the 'correct_unwrap_error' step with the 'phase_closure' method and I'm trying to understand the outputs and error message I'm getting.

The error is: ValueError: input reference point is NOT included in the connectComponent.

I have the connected components files for each interferogram (attached). I'm not sure the maskConnComp.h5 file is correct as there is just a small area of values. Could this be due to some of the interferograms having connected component values greater than 1 (ie. # 53, 56, 57, 59, 60, 62, 63, 65, 66, 67). 

The distribution of phase unwrapping error result produced during the 'quick overview' step is attached. I'm not 100% sure what this is trying to show despite referring to the paper in the first instance. Are you able to elaborate on this? Does this mean that the majority of pixels have some form of unwrapping error? Or is this a typical result you'd expect for a time series stack?

Any advice on how to resolve this would be appreciated.

Thanks
maskConnComp.png
numTriNonzeroIntAmbiguity.png
conncomp.png

Zhang Yunjun

unread,
Jan 7, 2021, 12:30:05 AM1/7/21
to MintPy
unwrapping errors and decorrelation (low coherence) are usually together, and it's almost for sure that pixels with the background connected component value 0 have unwrapping errors. Thus, yes, those interferograms you have identified (plus #54, 55) have a lot of these errors. I expect the coherence is low for them too. Excluding those interferograms using mintpy.network.excludeIfgIndex or mintpy.network.coherenceBased should solve the issue.

Pixels with nonzero T_int value have unwrapping errors in at least some interferograms. Generally higher T_int value means more interferogram with unwrapping errors. So the T_int plot should have only peaked at zero if there are no unwrapping errors. I would expect this after you exclude those low coherent interferograms. Then you may not need unwrapping error correction anymore.

Yunjun

sar

unread,
Jan 9, 2021, 5:00:46 AM1/9/21
to MintPy
Thanks, that makes sense. The interferograms in question do have low coherence and I've run a test to exclude them. This results in a break in the temporal network, so I've had to keep #55 to ensure all the dates are linked by at least one interferogram. The resulting T_int values have improved but there are still some unwrapping errors present. 

I still get the same error for the reference pixel when running 'correct_unwrap_error' , so want to test to see if I can manually select a suitable pixel that falls within the connectedComponent. I'd like to check which data I should be looking at to find the pixel. Is it the data producing the 'common_region_sample.png' or 'maskConnComp.png' images? Based on the output dialog, I'm assuming that the difference between these two images is that the maskConnComp regions  with an area < 2500 are excluded from the common region sample image.

Thanks!
common_region_sample.png
numTriNonzeroIntAmbiguity.png
maskConnComp.png

sar

unread,
Jan 13, 2021, 2:38:57 AM1/13/21
to MintPy
To close off this post, I've successfully selected a reference pixel that is a high coherent, stable region and is also present in the common region sample and maskConnComp datasets. This has enabled me to run the 'correct_unwrap_error' step with no errors.
Reply all
Reply to author
Forward
0 new messages