AlexeyPechnikov / pygmtsar

PyGMTSAR (Python InSAR): Powerful and Accessible Satellite Interferometry
http://insar.dev/
BSD 3-Clause "New" or "Revised" License
426 stars 93 forks source link

[Help]: LOS Direction Displacement Values ​​Are Too Large #170

Open oguzhannysr opened 1 week ago

oguzhannysr commented 1 week ago

@AlexeyPechnikov , Hello Alexey, as seen in the image, you see LOS direction deformations with SBAS analysis. This is a landfill. It is normal for the deformation to be large due to activity. However, the values ​​are extremely high in a very short time period. What is the cause of the problem? There are no atmospheric problems because they have been eliminated. How consistent would it be if I did Gaussian filtering? I had obtained very high deformation values ​​in my previous experiments with notebooks. When I tried the same region for LICSBAS, the maximum value for the cumulative LOS value I got between 2016-2024 was 160 mm, while the deformation in 4 months with PYGMTSAR was 238 mm?

image

AlexeyPechnikov commented 1 week ago

First, comparing different intervals is not a good idea due to the potential influence of seasonal factors. Second, it is crucial to remove orbital ramps, atmospheric phase delays, and tidal effects to avoid overestimating displacements. Gaussian filtering can indeed be used to eliminate these effects, but the filter wavelength (and corresponding sigma) must be carefully adjusted to preserve the actual deformation.

oguzhannysr commented 6 days ago

@AlexeyPechnikov , What exactly is the filter wavelength? Is it the one you mentioned in the code below? I set it to 30 because of the spatial resolution. sbas.compute_interferogram_multilook(baseline_pairs, 'intf_mlook', wavelength=30, weight=sbas.psfunction())#30

oguzhannysr commented 6 days ago

@AlexeyPechnikov ,Also, I get an error like this in the last section, the space is actually quite small? I tried restarting the client and it didn't work. Can I overcome this problem if I use Colab Pro? Is it related to this?

image

oguzhannysr commented 6 days ago

@AlexeyPechnikov ,For example, I tried narrowing the date range a little more and it works now, but for a small area, it exports each date to almost 30 minutes. How can I speed this up?

image

AlexeyPechnikov commented 6 days ago

What exactly is the filter wavelength? Is it the one you mentioned in the code below? I set it to 30 because of the spatial resolution. sbas.compute_interferogram_multilook(baseline_pairs, 'intf_mlook', wavelength=30, weight=sbas.psfunction())

This code is for interferogram creation with Gaussian filtering. But I talk about Gaussian detrending after unwrapping.

Also, I get an error like this in the last section, the space is actually quite small?

Check if you have materialized grids or lazy ones, in the last case a long lazy pipeline can fail even on a high RAM hosts.

oguzhannysr commented 6 days ago

@AlexeyPechnikov , Alexey, regarding the wavelength selection, I think you are talking about the line in the Imperial Valley example below. Would it be useful to set the wavelength as 100 based on my 30 meter spatial resolution?

# Gaussian filtering 400m cut-off wavelength with multilooking 1x4 on Sentinel-1 intensity
intensity = sbas.multilooking(np.square(np.abs(data)), wavelength=400, coarsen=(1,4))

How can I check if there are grids or lazy ones? I don't know Dask.

AlexeyPechnikov commented 6 days ago

Absolutely not, this is not 'Stack.gaussian' function call.

Use 'sync' functions for every step as in large dataset examples if you are not sure.