questions in the feature tracking by autoRIFT+ISCE

Added by ruitang yang 7 months ago

Hi all,
This is Ruitang, a new user of autoRIFT+ISCE.
I am trying to use it to do the offset tracking on Sentinel-1 data. I am sorry that there are still some questions that confused me although checking the useful instructors and forums. It's appreciated if any discussion or advice about it.
Questions are as follows:
1. the DEM ( for the study region is beyond 60N, I used my own IFSAR DEM )
For the topsApp.py, with the WGS84 (longitude/latitude)
For the testGeogrid_ISCE.py, with the WGS84+UTM5N
my question is,
i) the nodata of the DEM should be set as -32768 or -32767, or?
I found the "-32768" in the Forums but in the script of testGeogrid_ISCE.py, it shows " obj.nodata_out = -32767"
ii) the coverage of the dem must be larger than the Sentinel-1, or the script can choose to calculate the intersection part?

2. the topsApp.py seems can be run successfully. About the processed swath, I set it in the topsApp.xml, "<property name="swath number">2</property>", but it seems all of the three swath has been processed. The topsApp.xml is on attachment. Is there something still needed to set?
3. for the topsApp.py, it can process all the 3 swathes, just not merged them? Similar to other scripts? Does that mean, after topsApp.py, testGeogrid_ISCE.py, and testautoRIFT_ISCE.py, I will get the velocity map of every swath, if necessary, I can use ARCGIS OR QGIS to merge them?
4. After the topsApp.py run successfully, the command line,
" python testGeogrid_ISCE.py -m master -s slave -d /media/yrt/F/Sentinel/DEM/ifsar/nodata_-32768/wgs84_utm5/ifsar_5_30_trans_32768.tif"
has been executed, but errors come as follows,

"This is the Open Source version of ISCE.
Some of the workflows depend on a separate licensed package.
To obtain the licensed package, please make a request for ISCE
through the website: https://download.jpl.nasa.gov/ops/request/index.cfm.
Alternatively, if you are a member, or can become a member of WinSAR
you may be able to obtain access to a version of the licensed sofware at
https://winsar.unavco.org/software/isce
Traceback (most recent call last):
File "testGeogrid_ISCE.py", line 248, in <module>
runGeogrid(metadata_m, metadata_s, inps.demfile, inps.dhdxfile, inps.dhdyfile, inps.vxfile, inps.vyfile)
File "testGeogrid_ISCE.py", line 196, in runGeogrid
obj.geogrid()
File "/home/yrt/anaconda3/envs/autoRIFT/lib/python3.7/site-packages/isce/components/contrib/geo_autoRIFT/geogrid/Geogrid.py", line 64, in geogrid
self.setState()
File "/home/yrt/anaconda3/envs/autoRIFT/lib/python3.7/site-packages/isce/components/contrib/geo_autoRIFT/geogrid/Geogrid.py", line 223, in setState
self._orbit = self.orbit.exportToC()
File "/home/yrt/anaconda3/envs/autoRIFT/lib/python3.7/site-packages/isce/components/isceobj/Orbit/Orbit.py", line 1064, in exportToC
reference = self.minTime()
TypeError: 'datetimeType' object is not callable
"
I checked in the forum, but with no similar problems and solutions. So this error is introduced by? how to deal with it?

5.  Is there any complete code for the demo as a reference? or some other detailed user guidance?
I am so sorry that I am still not familiar with this tool, the input file formate, and parameter setting always confused me.
Thanks in advance.
Ruitang

Replies (4)

RE: questions in the feature tracking by autoRIFT+ISCE - Added by Yang Lei 7 months ago

Thanks for the feedback. As for your questions,

1.

i) nodata in DEM can be any value. I did not see -32768 in the forum though as you mentioned for DEM nodata value. obj.nodata_out = -32767 in testGeogrid_ISCE.py is to specify the nodata value of the Geogrid module output, which has nothing related to the DEM nodata value.

ii) Coverage of DEM must be larger than the test image. Only intersection is not allowed. If you only have a small portion of DEM, it is not difficult to enlarge it with zero padding so that it covers the whole remote sensing image.

2. this is related to running topsApp, which other ISCE developers can help. I have only processed Sentinel-1 images with all the swaths.

3. all the swaths are processed and then merged. The merged files are stored in the folder "merged" just as the "master" and "slave" folders you mentioned. "testGeogrid_ISCE.py" will be run on "master" and "slave" folders while "testautoRIFT_ISCE.py" will be run on the merged SLC's, i.e. "master.full.slc" and "slave.full.slc" under "merged/". The products of both "testGeogrid_ISCE.py" and "testautoRIFT_ISCE.py" do not require further merging.

4. this problem is related to running topsApp. It seems you have an outdated version of ISCE. Download the most recent one from https://github.com/isce-framework/isce2.

File "/home/yrt/anaconda3/envs/autoRIFT/lib/python3.7/site-packages/isce/components/isceobj/Orbit/Orbit.py", line 1064, in exportToC
reference = self.minTime()
TypeError: 'datetimeType' object is not callable

is changed to
reference = self.minTime

So should be working.

5. At this stage, we think the test scripts are sufficient. The processing is only done by running topsApp + testGeogrid_ISCE + testautoRIFT_ISCE. Most of your questions actually relate to running topsApp in ISCE, therefore you are recommended to get familiar with it by reading the ISCE user guides or posting in the forum. After running topsApp, the rest (only two command lines testGeogrid_ISCE + testautoRIFT_ISCE) should be trivial.

RE: questions in the feature tracking by autoRIFT+ISCE - Added by ruitang yang 7 months ago

Thank you very much, Yang Lei. It's super helpful. I am so sorry that there are still problems that confused me. It's appreciated if can get any advice about this.

1. The "testGeogrid_ISCE.py" runs smoothly after updating the ISCE, the result is as follows. It seems correct, isn't it?

**************************************
This is the Open Source version of ISCE.
Some of the workflows depend on a separate licensed package.
To obtain the licensed package, please make a request for ISCE
through the website: https://download.jpl.nasa.gov/ops/request/index.cfm.
Alternatively, if you are a member, or can become a member of WinSAR
you may be able to obtain access to a version of the licensed sofware at
https://winsar.unavco.org/software/isce

Radar parameters:
Range: 803465 2.32956
Azimuth: 59384.8 486.486
Dimensions: 67752 13120

Map inputs:
EPSG: 32605
Repeat Time: 1.0368e+06
XLimits: 407518 693698
YLimits: 6.50397e+06 6.72708e+06
Extent in km: 286.18 223.111
DEM: /media/yrt/F/Sentinel/DEM/ifsar/nodata_-32768/wgs84_utm5/ifsar_gcs_wgs84_32768_utm_Int16.tif
Velocities:
Slopes:
Output Nodata Value: -32767

Outputs:
Window locations: window_location.tif
Window offsets: window_offset.tif
Window rdr_off2vel_x vector: window_rdr_off2vel_x_vec.tif
Window rdr_off2vel_y vector: window_rdr_off2vel_y_vec.tif

Starting processing ....
Xlimits : 500365 693715
Ylimits : 6.55074e+06 6.72708e+06
Dimensions of geogrid: 6445 x 5878

Center Satellite Velocity: -6334.02 -1782.42 -3777.78

2. The problem occurs when running, "testautoRIFT_ISCE.py". The process was killed suddenly after the pre-process was done. The screenshot and isce.log were attached. It might be caused by the volume of my RAM?

The information of my ubuntu (win10+ubuntu16.04) is as follows, ***********************************************************************
(autoRIFT) yrt@yrt-Precision-7530:/media/yrt/F/DATA_TEST/NEW/NEW$ free -g
total used free shared buff/cache available
Mem: 15 1 13 0 0 13
Swap: 7 1 6

3. P.S. one more question about dem (wgs84+utm) used in the testGeogrid_ISCE.py, after implementing "python gdal2isce_xml.py -i /media/yrt/F/Sentinel/DEM/ifsar/nodata_-32768/wgs84_utm5/ifsar_gcs_wgs84_32768_utm_Int16.tif", I got the .xlm and .vrt files of dem. My question is, do I need to replace some specific metadata in the .xml file as doing for the dem used in topsApp.py, as follows? Does it make sense?

******************************************
<property name="family">
<value>image</value>
<doc>Instance family name</doc>
</property>

<property name="name">
<value>image_name</value>
<doc>Instance name</doc>
</property>
with:

<property name="family">
<value>demimage</value>
<doc>Instance family name</doc>
</property>

<property name="image_type">
<value>dem</value>
<doc>Image type used for displaying.</doc>
</property>

<property name="name">
<value>demimage_name</value>
<doc>Instance name</doc>
</property>

<property name="reference">
<value>WGS84</value>
<doc>Geodetic datum</doc>
</property>


Thanks again
Best regards,
Ruitang

Screenshot .png (97.1 kB)

isce.log (144.5 kB)

RE: questions in the feature tracking by autoRIFT+ISCE - Added by Yang Lei 7 months ago

1. Geogrid seems correct
2. autoRIFT crashed due to insufficient RAM
3. Geogrid (and autoRIFT) only takes inputs in GeoTIFF format. It looks like you already fed in the right format in Question #1. Don't see why you need to do gdal2isce. Again, .xml file is not necessary in this processing (Geogrid+autoRIFT).

RE: questions in the feature tracking by autoRIFT+ISCE - Added by ruitang yang 7 months ago

Great, I am confusing the .dem file with .tif file. Thank you very much, Yang Lei. I will try again on the supercomputer.
Thanks again.
Ruitang

(1-4/4)