Commit Graph

273 Commits (LT1AB)

Author SHA1 Message Date
Zhang Yunjun d81a98094e cuDenseOffsets: add prepareGeometry()
PyCuAmpcor/examples/cuDenseOffsets:
+ add prepareGeometry() to generate the cooresponding geometry file
+ update file path in xml file to support dir change
+ fix str.decode bug with try/except statement
+ printout used time
+ check --redo before initiate PyCuAmpcor to avoid the long GPU memory error message

PyCuAmpcor/README.md: fix typos for ROIPAC
2021-03-05 19:16:31 -08:00
Ryan Burns d0ec8c1794
Merge pull request #175 from CunrenLiang/main
new alosStack, PRF change of ALOS-1, update of TOPS ionospheric correction, new ionospheric filter
2021-03-04 10:52:45 -08:00
Bryan Marfito 903243c1c6
Update CMakeLists.txt 2021-02-28 19:29:13 +08:00
CunrenLiang 89973d7631 Merge remote-tracking branch 'upstream/main' into main 2021-02-26 11:39:02 +08:00
Ryan Burns b60e87d063
Merge pull request #236 from lijun99/pycuampcor
Updates to PyCuAmpcor
2021-02-19 10:27:38 -08:00
Lijun Zhu 7c40da5a74 PyCuAmpcor: offer an option to add gross offset to output offset image 2021-02-16 13:02:04 -08:00
Sara Mirzaee 68c7261b5d
Stack minor modification (#232)
* stackStripMap.py: change numbering style to match with topsStack

* Stack.py: separate parallel processors in topo.py from runfiles

* stackSentinel.py: add a new argument for parallel processors in topo.py

* Stack.py: remove extra num_process for unpackStackReferenceSLC

* stackSentinel.py:  tie numProcess4topo to numProcessif the first not specified
2021-02-15 11:24:56 -08:00
Lijun Zhu 563568561d change runDenseOffset(s) in Alos2Proc/TopsProc in accordance with updated PyCuAmpcor 2021-02-13 12:56:58 -08:00
Lijun Zhu 86a35acd5e merge mzzhong/grossOffsets into pycuampcor: scripts to set varying offsets withe velocity model 2021-02-13 12:55:04 -08:00
CunrenLiang 1d44e16b96 Merge remote-tracking branch 'upstream/main' into main 2021-02-09 15:44:29 -08:00
Lijun Zhu 4ddee2fdaf PyCuAmpcor: fix the help string in cuDenseOffsets.py 2021-02-06 12:02:34 -08:00
Lijun Zhu 5419353a69 PyCuAmpcor: fix the correlation surface variance estimation 2021-02-06 12:02:34 -08:00
Minyan Zhong d5e5067acd update 2021-02-06 12:02:34 -08:00
Minyan Zhong 19ee850211 fix-variance-estimation 2021-02-06 12:02:34 -08:00
Russell Grew e8da2d947a
Bash script edits to make stackSentinel.py faster in places (#225)
* plumb in num-process for time consuming steps

* refine num-process speed enhancements

* refine num-process speed enhancements

* dedicated function for writing batch processes

* refine num-process speed enhancements

* fix indents

Co-authored-by: Russell Grew <russell.grew@douglaspartners.com.au>
2021-02-04 13:58:36 -08:00
CunrenLiang 7b0856fc27 Merge remote-tracking branch 'upstream/main' into main 2021-02-03 13:24:22 -08:00
Bryan Marfito 690fe62c98
Changes to Cmake to include UnwrapComp folder
I've updated the CMakeLists.txt to include the folder UnwrapComp during installation.
2021-02-03 10:21:42 +08:00
Ryan Burns 3673da71cc Bump autoRIFT 1.0.7 -> 1.1.0 2021-02-02 16:29:29 -08:00
Lijun Zhu aa4d6abf99
add some includes for c header files (#221)
* add some includes for c header files

* Trim whitespace

Co-authored-by: Ryan Burns <rtburns-jpl@users.noreply.github.com>
2021-01-13 15:13:59 -08:00
Ryan Burns ad1815ef9c Modernize gdal imports
GDAL has dropped support for the older toplevel `import gdal`
in version 3.2, now requiring `from osgeo import gdal`.
2021-01-06 13:24:26 -08:00
Ryan Burns 86b126f564
Merge pull request #208 from lijun99/pycuampcor
PyCuAmpcor updates:
2021-01-06 13:20:44 -08:00
ranneylxr 48559c6e3e
using geopandas and shapely package to calculate whether there are intersections between bbox and sentinel SAFE file. (#216)
* stackSentinel.py:using geopandas to calculate intersection between bbox and SAFE file coverage region

* stackSentinel.py:using geopandas and shapely package to calculate whether there are intersections between bbox and sentinel SAFE file. And remove import geopandas and shapely part into generate_geopolygon function

* stackSentinel.py: using shapely package to check whether bbox intersect with SAFE file coverage

* stackSentinel.py: using shapely package to check whether bbox intersect with SAFE file coverage

* stackSentinel.py:using shapely package to find whether bbox intersects with SAFE file

* stackSentinel.py:remove matplotlib DEBUG message#L14-L18
2021-01-06 13:19:55 -08:00
Lijun Zhu 7e9c86910a PyCuAmcpor: set default gpu id to 0 in cuDenseOffsets.py; the auto seek with a negative value is now disabled 2020-12-15 13:33:34 -08:00
CunrenLiang fb96c54581 Update ion_subband.py
correct variable name
2020-12-06 12:07:48 -08:00
Lijun Zhu 6d9f088975 PyCuAmpcor: cuDenseOffsets.py towork with input varying gross offsets 2020-11-30 10:30:23 -08:00
Minyan Zhong c399d3fa03 clean up and update grossOffsets 2020-11-30 00:49:28 -08:00
CunrenLiang ab8b0f4755 Update create_cmds.py
add comments about identifying bad pairs
2020-11-26 23:40:29 -08:00
Lijun Zhu 94caa1ea5c PyCuAmpcor: more code cleanup
* replace tabs with spaces to align the code

  * remove extra spaces at the end of lines

  * add more docstrings
2020-11-25 12:55:38 -08:00
Lijun Zhu 38646456d3 PyCuAmpcor: code cleanup, add docstrings 2020-11-17 23:22:37 -08:00
CunrenLiang 5634f5fa32 Update ion_check.py 2020-11-17 10:59:25 -08:00
CunrenLiang 4e47909428 Update ion_filt.py
minor update
2020-11-15 01:00:27 -08:00
Lijun Zhu a393282b69 PyCuAmpcor updates:
* added a README.md for installation/user guide/procedures

  * modified the cuDenseOffsets.py
     * expose more options from the CUDA/C++ program
     * add an option for varying gross offset input
     * clarify the parameter definitions

  * removed old SlcImage implementation and cublas dependence

  * modified cuSincOversampler
    * to be consistent with cpu version
    * fix an issue when the extraction of the search window is not around the center

  * added a debug mode to output intermediate results

  * enable cuda error checking for both Debug/Release build types

  * corrected the code to extract raw images when the correlation surface peak is close to edges

  * Move utf-8 decoding step inside cython extension

    The cython setters take python strings, but the getters return
    python bytes, so this makes the types match up. I went with regular
    python strings for the interface since they are more common at the
    python level, so the encoding/decoding is now an implementation detail
    of the cython extension.

Contributed by lijun99, rtburns-jpl, vbrancat, mzzhong
2020-11-12 15:02:44 -08:00
CunrenLiang 78a5ddead6 use for loops for dates/pairs processing 2020-11-09 12:43:12 -08:00
Cunren Liang 6cecbe9e11 add executable permission 2020-11-07 16:06:02 -08:00
CunrenLiang 5e4d1604dc put temporary files in a better place 2020-11-07 16:06:02 -08:00
CunrenLiang e9bd7edeb3 new alosStack application 2020-11-07 16:06:02 -08:00
Eric Fielding c601204942
Added code to stripmapStack/topo.py to work with newer GDAL (#196)
* added option to pass segment number through unpackFrame_UAVSAR

* changed type of segment number

* changed segment type in prepareUAVSAR_coregstack

* Revert "changed type of segment number"

This reverts commit a18c6452d4b5c95ce869dab2ee1e3bcf6ff2b1d9.

* Revert "changed segment type in prepareUAVSAR_coregstack"

This reverts commit 6cf3ebadb3a6e119c6084c8e03b8cc68d7eccc3f.

* changed type of segment number in unpackFrame_UAVSAR

* Added code to stripmapStack/topo.py to explicitly create the `geom_reference/hgt.rdr.vrt` file to work with newer GDAL
2020-10-24 09:36:08 -07:00
Zhang Yunjun 55b9d2c037
topsStack: ignore coreg_secondary images with inconsistent num of bursts (#195)
* ImageLib: fix str syntax

* stackSentl: rename slc workflow merge for consistency

rename the mergeSLC step in "slc" workflow, to be consistent with the other workflows.

* topsStack: check inconsistent num of bursts in secondary images

+ extractCommonValidRegion.py: add dropSecondarysWithDifferentNumberOfBursts() to discard those acquisitions during the common region calculation

+ mergeBursts.py: skip secondarys with inconsistent num of bursts by raise exception and exit

+ s1a_isce_utils.adjustValidSampleLine_V2(): remove a redundant line

Co-authored-by: Zhang Yunjun <yunjunz@users.noreply.github.com>
2020-10-24 09:31:48 -07:00
Zhang Yunjun 9bfa2dd6db
topsStack: add --num-proc for step topo (#193)
* stackSentl.createParser(): align break line

+ align linebreak of help msg
+ use choices=[] for auto argument checking
+ use (default: %(default)s) to show defult value

* stackSent: bugfix for new paris if ref date is close to recent

This commit fixs the missing pair between the reference date and the new acquisitions, if the reference date is the most recent "num_conn" acquisition.

* Stack: check existing orbit with glob instead of os.path.exist(dir)

* topsStack: add --num-proc for topo step

stackSentinel: add --num-proc to pass the number of parallel processes to topo.py, so that mp.Pool() can be independent of OMP_NUM_THREADS

Co-authored-by: Zhang Yunjun <yunjunz@users.noreply.github.com>
2020-10-09 07:11:48 -07:00
Eric Fielding 6aa2d065c3
added option to pass segment number through unpackFrame_UAVSAR (#171)
* added option to pass segment number through unpackFrame_UAVSAR

* changed type of segment number

* changed segment type in prepareUAVSAR_coregstack

* Revert "changed type of segment number"

This reverts commit a18c6452d4b5c95ce869dab2ee1e3bcf6ff2b1d9.

* Revert "changed segment type in prepareUAVSAR_coregstack"

This reverts commit 6cf3ebadb3a6e119c6084c8e03b8cc68d7eccc3f.

* changed type of segment number in unpackFrame_UAVSAR
2020-10-04 16:30:18 -07:00
piyushrpt 5370690b0a Pulling in PR #153 2020-10-04 11:10:24 -07:00
Ryan Burns ba2cb412ea
Bump autoRIFT 1.0.6 -> 1.0.7 (#191)
Co-authored-by: Ryan Burns <rtburns-jpl@users.noreply.github.com>
2020-09-14 12:52:11 -07:00
Ryan Burns 337dc9c158
Fix python extension linking (#168)
* Silence annoying FindFFTW warnings

* Fix linker errors at import-time

Python extensions are weakly linked, so linker errors can only be
caught at runtime. This commit fixes any such broken extensions,
and adds automated import testing to ctests to prevent future
regressions.

It also adds a helper function `isce2_add_staticlib` which creates a
position-independent static library suitable for usage in multiple
python extensions. This matches the SCons build scripts more closely
and allows for future extensions to be declared in a more terse and
hygienic fashion.

* Update utilLib scripts

* Update combinedLib scripts

* Update offoutliers lib scripts

* Add asa_im_decode cdll

* Update alos lib scripts

* Show ctest output upon failure

* Update DataAccessor scripts

* Remove TARGET_FILE_BASE_NAME

* Remove incomplete stdproc modules (require stanford code)

Co-authored-by: Ryan Burns <rtburns-jpl@users.noreply.github.com>
2020-09-14 10:57:10 -07:00
Zhang Yunjun f14981341d update system call of gdal2isce_xml with python interface
+ update os.system() call of gdal2isce_xml.py with the python function call, in stripmapStack/topo.py and applications/downsampleDEM.py

+ break the long lines in downsampleDEM.py for easy reading
2020-09-12 17:05:33 -07:00
Zhang Yunjun f06d22e02c topsStack/topo: use OMP_NUM_THREADS if available
for the parallel processing with multiprocessing.Pool()
2020-09-12 17:05:33 -07:00
yunjunz 6a02f79277 FilterAndCoh: use fine.cor(.full) for multilooked (full-reso) cpx cor file
topsStack/FilterAndCoherence.py:
+ add .full suffix to the complex coherence filename only if the multilook number is 1
+ for multilook number as 1, do not run looks sub-module

topsStack/Stack.filter_coherence(): add .full suffix only when azLooks * rgLooks == 1

topsStack/mergeBursts.py: add python3 at the top of script
2020-09-12 17:05:33 -07:00
Zhang Yunjun 89839bc453 extractCommonValidRegion: check stack/*.xml file existance
Otherwise, if 'stack' folder exists but is empty, the script will return ERROR as below:

```
/net/kraken/nobak/zyunjun/TonopahSenAT64/stack  already exists.
Replacing master with existing stack.
updating the valid overlap region of:
/net/kraken/nobak/zyunjun/TonopahSenAT64/stack
******************
swath:  1
Traceback (most recent call last):
  File "/home/zyunjun/tools/isce2/contrib/stack/topsStack/extractCommonValidRegion.py", line 109, in <module>
    main()
  File "/home/zyunjun/tools/isce2/contrib/stack/topsStack/extractCommonValidRegion.py", line 95, in main
    topMaster = ut.loadProduct(os.path.join(inps.master , 'IW{0}.xml'.format(swath)))
  File "/home/zyunjun/tools/isce2/contrib/stack/topsStack/s1a_isce_utils.py", line 26, in loadProduct
    obj = pm.loadProduct(xmlname)
  File "/net/kraken/home1/geomod/apps/rhel7/isce2-github/isce/components/iscesys/Component/ProductManager.py", line 25, in loadProduct
    self.load(filename)
  File "/net/kraken/home1/geomod/apps/rhel7/isce2-github/isce/components/iscesys/Component/Configurable.py", line 1407, in load
    tmpProp, tmpFact, tmpMisc = FP.parse(filename)
  File "/net/kraken/home1/geomod/apps/rhel7/isce2-github/isce/components/iscesys/Parsers/XmlParser.py", line 41, in parse
    root = ET.parse(filename)
  File "/net/kraken/home1/geomod/apps/anaconda3/lib/python3.7/xml/etree/ElementTree.py", line 1197, in parse
    tree.parse(source, parser)
  File "/net/kraken/home1/geomod/apps/anaconda3/lib/python3.7/xml/etree/ElementTree.py", line 587, in parse
    source = open(source, "rb")
FileNotFoundError: [Errno 2] No such file or directory: '/net/kraken/nobak/zyunjun/TonopahSenAT64/stack/IW1.xml'
```
2020-09-12 17:05:33 -07:00
Ryan Burns b1c8a599ca Add cmake scripts for autoRIFT 2020-07-21 18:04:16 -07:00
Ryan Burns 48b6bfbccb Bake in autoRIFT 2020-07-21 14:52:28 -07:00
Gerald Manipon f09213eb33
various updates from ARIA-related projects (#149)
* add Dockerfile and SConfigISCE to build cuda-enabled modules

* add Dockerfile and SConfigISCE to build cuda-enabled modules

* set correct name

* update for centos7 and cuda-dev image

* restore

* disable GPUampcor

* update

* save

* sync up Dockerfile updates

* fix base image

* change docker image names

* create gpu vs. cpu specific tags

* update with nodata WBD Stitcher

* fix segmentation fault when running sciflo workflows

- remove dependencies that downgrade the `geos` conda package

* sync fix for segmentation fault to cuda builds

* ping ffi to version 1.12.2

Latest version of ffi, 1.13.0, breaks installation of fpm:
```
$ sudo gem install --no-ri --no-rdoc fpm
Fetching: cabin-0.9.0.gem (100%)
Successfully installed cabin-0.9.0
Fetching: backports-3.17.2.gem (100%)
Successfully installed backports-3.17.2
Fetching: arr-pm-0.0.10.gem (100%)
Successfully installed arr-pm-0.0.10
Fetching: clamp-1.0.1.gem (100%)
Successfully installed clamp-1.0.1
Fetching: ffi-1.13.0.gem (100%)
ERROR:  Error installing fpm:
        ffi requires Ruby version >= 2.3.
```
TODO: remove pin when ffi's backwards compatiblity is restored.

* comment out unused import

* add build circleci job to PR tests

* pin ffi in cuda build

* revert logging hackery

* fix "target_include_directories called with non-compilable target type" errors

* Keep source directory for topsStack

Co-authored-by: dustinlo <dustin.k.lo@jpl.nasa.gov>
Co-authored-by: shitong01 <stchin@ntu.edu.sg>
Co-authored-by: Ryan Burns <47790121+rtburns-jpl@users.noreply.github.com>
2020-07-16 16:08:57 -07:00
Ryan Burns 1f947b4e42
Merge pull request #156 from piyushrpt/cmake
Fixing linking order and flags for mdx
2020-07-15 22:06:10 -07:00
piyushrpt 4449e78b79 fixing linking order and flags for mdx
Not using interfaces for motif
2020-07-15 21:43:12 -07:00
Heresh Fattahi eb3eff61a6
Merge branch 'master' into BLM 2020-07-02 15:03:10 -07:00
Paul A Rosen e03042f4e5 diversity: replaced oppressive language with neutral definitions of the images that comprise an interferogram through the entire repository 2020-07-02 12:40:49 -07:00
Zhang Yunjun c642ab2e9a cuDenseOffset: check across oversample win size 2020-06-28 19:24:09 -07:00
Zhang Yunjun 90d578fa5d cuDenseOffsets: expose --raw-osf and --corr-win-size option
contrib/PyCuAmpcor/cuDenseOffsets.py:
+ expose --raw-over-samp-factor option to change the raw data oversampling factor with default of 2
+ expose --corr-win-size option, which by default, is calculated automatically based on the search window size and raw oversampling factor
+ change the namespace key for the oversampling factor of correlation surface from 'oversample' to 'corr_oversample' to avoid ambiguity, the cmd option name is still the same, thus no different in the user side.
+ use vrt file for master / slave slc data loading folllowing https://github.com/isce-framework/isce2/pull/78
+ re-organize createParse() for readability
+ add example to argparse help

stripmapStack/MaskAndFilter.py:
+ fix a bug introduced in #https://github.com/isce-framework/isce2/pull/112
+ add example usage to help message
+ mask pixels with SNR == 0, for plotting only without touching data files
+ show input parameter in the figure title
+ show percentage after SNR thresholding
+ add interpolation for matplotlib while plotting

topsStack/grossOffsets: move obsolete basemap import from the top to the related commented code block
2020-06-28 19:24:09 -07:00
Ryan Burns a66dcfdb1b Merge branch 'master' into cmake 2020-06-12 18:36:55 -07:00
Ryan Burns ed25d657fa Update pycuampcor prereqs 2020-06-12 17:53:40 -07:00
Cheryl edea69d4b6 added buffer margin to orbit times in get_orbit 2020-06-11 23:33:37 -07:00
shitong01 0fb49e383e fix syntax 2020-06-11 23:33:37 -07:00
shitong01 bb03d8c652 changed made by @cheryltwj to fix orbit file download edge case 2020-06-11 23:33:37 -07:00
sssangha acf0bbb55c Negative valid samples/lines now set to 0 2020-06-06 20:44:00 -07:00
Ryan Burns b12fde65d8 Add PyCuAmpcor support 2020-05-28 18:02:17 -07:00
Ryan Burns 1ad638b1de Install watermask and upsampledem modules 2020-05-22 15:49:10 -07:00
Ryan Burns f3fa2b0c6f Fix ISSI libname and data installation 2020-05-22 15:49:10 -07:00
Zhang Yunjun 35a80f0a5f bugfix in stripmapStack/Stack for config unwIfg if filter is turned off
If filter is turned OFF while unwrapping is still ON, the phase unwrapping output filename should not include "filt_" prefix.
2020-05-17 14:58:39 -07:00
yunjunz af5a8540f9 bugfix in topsStack/Stack while writing config_unwrap for rmFilter option
stackSentinel: more msg in checkCurrentStatus()
2020-05-17 14:58:39 -07:00
Zhang Yunjun 659a7ed6b0 stackSentinel: use 2 digit number in run_files to better sort 10 or more steps
update topsStack/README.md accordingly.

stackSentinel: suppress matplotlib DEBUG msg

stackSentinel: remove the unused imp import
2020-05-17 14:58:39 -07:00
Zhang Yunjun 0f60e9f24c FilterAndCoh: move cpx coh calc into a func
related with https://github.com/isce-framework/isce2/pull/97

+ move cpx cohe calculation code from main() to estCpxCoherence()
+ move computeCoherence import from the top to the inside of estCpxCoherence(), to avoid import error/warning sometimes.
+ fix typo in the default value of --cc option from 'fine.cori.full' to 'fine.cor.full'
2020-05-17 14:58:39 -07:00
Ryan Burns e68db01bf9
Merge pull request #89 from rtburns-jpl/cmake
Add CMake build system
2020-05-08 12:42:01 -07:00
Zhang Yunjun 4282bb8e0a prepSlcALOS2: add --polarization to pass to unpackFrame* 2020-05-03 14:12:24 -07:00
Zhang Yunjun 6a78c4e6d6 skip filtering if --filter_strength <= 0
+ FilterAndCoherence: skip filtering if input filter strength <= 0 and use original phase for coherence estimation

+ Stack: do not add filt_ prefix to output file if input filter strength <= 0
2020-05-03 14:12:24 -07:00
Zhang Yunjun d494ae3924 Stack: adjust indentation 2020-05-03 14:12:24 -07:00
Zhang Yunjun 34fb0b66fa Stack: skip PU if input method is "no" 2020-05-03 14:12:24 -07:00
Zhang Yunjun d41ffb0ce9 stackStripMap: suppress matplotlib DEBUG msg 2020-05-03 14:12:24 -07:00
Heresh Fattahi c9dd735a7b
Merge pull request #125 from yunjunz/topo
stripmapStack/topo: call gdal2isce_xml.py inside runMultilook() if xml file missing
2020-05-03 09:22:50 -07:00
Ryan Burns 4863c238e8 Merge branch 'master' into cmake 2020-05-02 16:40:26 -07:00
Minyan Zhong 4f0a2f551c add a gpu ampcor driver 2020-05-02 15:52:31 -07:00
Ryan Burns 9f3ed02c89 Add fftwf to alos2filter libs 2020-05-02 13:05:12 -07:00
Ryan Burns 7cf564582a Merge branch 'master' into cmake 2020-05-02 12:32:20 -07:00
CunrenLiang 62e8abe85b fix the problem in downloading NASA DEM 2020-05-02 12:11:54 -07:00
Zhang Yunjun 8017039ecb topo: replace gdal_translate cmd call with gda.Translate()
+ add more print out message
2020-05-02 11:54:17 -07:00
Zhang Yunjun 08dfd9de21 topo: call gdal2isce_xml.py inside runMultilook() if xml file missing
+ topo: merge runMultilookGdal() into runMultilook() with new argument "method" to control to use isce Looks module (averaging) or gdal_translate (extraction; default, same as before).

+ topo: call gdal2isce_xml.py so that xml file for multilooked data are always generate. This fix the warning message from gdal_translate: "Warning 1: Geotransform matrix has non rotational terms"

+ topo: skip multilooking if the data file has vrt/xml file missing, which sometimes happens to incLocal and shadowMask (don't know the cause yet; I used GPU version).

+ crossmul/resampleSlc: re-organize module import at the top of scripts
2020-05-02 10:26:29 -07:00
Heresh Fattahi 9e7e090548
Merge pull request #113 from mirzaees/stack_runfiles
Stack runfiles
2020-05-02 10:13:25 -07:00
Sara Mirzaee a24f0e99bf Merge branch 'stack_runfiles' of https://github.com/mirzaees/isce2 into stack_runfiles 2020-05-01 14:53:51 -05:00
Sara Mirzaee 08e3849945 looping over lines instead of reading the whole file 2020-05-01 14:45:48 -05:00
Sara Mirzaee fe097c906a add --rmFilter to stackSentinel.py 2020-05-01 14:44:59 -05:00
CunrenLiang 9794a75f55 use FFTW to speed up filtering 2020-04-26 19:18:33 -07:00
sssangha e96a110221 Download of nasadem now supported in dem.py 2020-04-20 18:24:12 -07:00
sssangha be959c3b27 Download of nasadem now supported in dem.py 2020-04-20 18:24:12 -07:00
Ryan Burns 81b54197e6 Merge branch 'master' into cmake 2020-04-13 14:34:14 -07:00
Ryan Burns 23f2ffaa1e
Use exist_ok argument to makedirs when appropriate (#112)
@falkamelung noted a race condition in #106 due to non-atomic directory
checking followed by os.makedirs. This pattern exists in many places
in the codebase so I went ahead and replaced the rest of them.
The new exist_ok usage should be terser and more idiomatic.
2020-04-13 12:40:32 -07:00
Sara Mirzaee e1729de5a8
fix bug: some lines were commented by mistake 2020-04-11 11:50:10 -04:00
Lijun Zhu 4cc13950a8 PyCuAmpcor: add gdal lib to link 2020-04-09 21:01:00 -07:00
Lijun Zhu 62a10d4c0d topsStack/cuDenseOffsets: call (included not standalone) PyCuAmpcor properly 2020-04-09 21:01:00 -07:00
Lijun Zhu 0855bf2640 DenseOffsets with PyCuAmpcor: use '.slc.vrt' instead of '.slc' as inputs 2020-04-09 21:01:00 -07:00
Lijun Zhu 434a71322f PyCuAmpcor: fixed #include gdal headers 2020-04-09 21:01:00 -07:00
Forrest Williams 16b7e10d32
Fix Burst Loading in Estimate Range and Azimuth Misreg (#110)
* Fix burst loading in estimateAzimuthMisreg.py

Within the for loop that starts at line 82, looping through range(minBurst, maxBurst) misses the burst with the maximum burst number. In cases where only one burst in a swath is used, the script fails at line 90 when .getWidth() is called on an empty xml. This issue can be fixed by adding the line maxBurst = maxBurst + 1

* Fix burst loading in estimateRangeMisreg.py

Similar to estimateAzimuthMisreg.py, calling range(minBurst,maxBurst) at line 185 will lead to an empty list and the some bursts not being loaded unless line 181 is changed from maxBurst = maxBurst - 1 to maxBurst = maxBurst +1
2020-04-09 20:57:44 -07:00
Sara Mirzaee dc97d160a4 add fine.unw to remove the effect of filtering 2020-04-09 01:14:26 -05:00
Sara Mirzaee 97b7800fda make a separate run_file for some functions to better allocate time and memory 2020-04-09 01:13:36 -05:00
Ryan Burns 82e2d916e1 Use exact library output name
Alos2filter expects a .so library, but macOS defaults to .dylib,
so we must override the library prefix/name/suffix.
2020-04-08 14:40:54 -07:00
Ryan Burns 4935b33a32 Add alos2proc_f python package initializer 2020-04-08 12:19:03 -07:00
Ryan Burns 85519c498d Merge commit 'f95a912' into cmake 2020-04-08 11:56:56 -07:00
Ryan Burns 4057a645a2 Merge commit '64768d4' into cmake 2020-04-08 11:05:14 -07:00
CunrenLiang f95a912462
ALOS-2 multi-mode InSAR and ionospheric correction processors (#107)
* Add files via upload

* updated tutorials and example input files

* add permissions

* add executable permission

* add executable permission to ALOS-2 applications
2020-03-28 19:19:21 -07:00
Falk Amelung 7fb9142f1d
Falkamelung/mergeburst race cond (#106)
* race condition fix: avoids raising of exception when multiple jobs create dir at same time
2020-03-25 19:14:37 -07:00
Zhang Yunjun 17b22417fd topo: add more arguments for runMultilookGdal()
+ add in_ext/out_ext/fbase_list for more flexibility

+ fix bug for .full.xml file copying when input/output are in the same directory
2020-03-23 17:09:04 -07:00
Zhang Yunjun b0cecb64cb createWaterMask: add --fill option
+ add --fill option to be able to change the fill value for the missing water body data, because sometimes it's land sometimes it's water.
2020-03-23 17:07:48 -07:00
Zhang Yunjun 7644bf8c93 MaskAndFilter: more ploting options
+ plot the evolution of offset after each step to better check the changes by masking, filling and filtering operations.

+ plot both azimuth and range offset in one figure and move the plotting to the end after file writing

+ update file path in xml file so that script can work even if the files are moved.

+ convert SNR nan value to zero before used as the mask, to avoid warning message

+ add the following options to customize the plot
   - add -v and --v-snr option to change the display range for offset and SNR
   - add --figsize and --save option

+ suppress the DEBUG message from matplotlib

+ remove obsolete getShape() and resampleOffset()

+ update IML module import

+ adjust indentation
2020-03-23 17:04:08 -07:00
piyushrpt 3f82b2cfe9
Merge pull request #99 from mirzaees/run_master
Run master
2020-03-21 17:11:19 -07:00
Zhang Yunjun 82b46df741 dem.py: use abspath filename in xml after correction
+ dem.py: replace filename in xml file with abspath after geoid to ellipsoid correction

+ update README.md files in contrib/stack/*Stack, as fixImageXml.py is not needed anymore

+ fixImageXml: use native argparse mutually exclusive group for --full/--base options to replace checking with own code
2020-03-19 14:11:16 -07:00
Sara Mirzaee 1329a0b961 parallel processing bursts 2020-03-14 13:55:13 -04:00
Sara Mirzaee 84946b6624 Separate master topo job from run_1_unpack 2020-03-14 12:00:25 -04:00
piyushrpt d6e22a762f
Merge pull request #84 from rtburns-jpl/argcount
Bugfixes for gcc/gfortran 9
2020-03-13 22:27:19 -07:00
Heresh Fattahi 4998f720d7
Merge pull request #39 from EJFielding/UAVSAR
added back command line option in prepareUAVSAR
2020-03-13 08:27:52 -07:00
Ryan Burns 58b032943d Use command_argument_count in mdx_main
I was having trouble compiling using macports gfortran-mp-9 due to
being unable to link to symbol iargc. I think [1] implies this is a
gfortran 77 extension, so maybe it isn't available in the mac library?
It looks like there is a replacement [2] which is standard fortran as
of '03, and using this function fixes this bug for me.

[1] https://gcc.gnu.org/onlinedocs/gfortran/IARGC.html
[2] https://gcc.gnu.org/onlinedocs/gfortran/COMMAND_005fARGUMENT_005fCOUNT.html
2020-03-10 09:00:46 -07:00
Yujie Zheng e95311da68 Added computation of non-filtered correlation 2020-02-28 13:49:13 -08:00
Ryan Burns de0ea75272 Update dependencies 2020-02-27 08:51:27 -08:00
Ryan Burns 96f2f368fe Fix typo 2020-02-13 12:03:21 -08:00
Ryan Burns 55c13b1b98 Install mdx executable to bin 2020-02-13 11:55:29 -08:00
Ryan Burns 0e8b330fe2 Add demStitch extension module 2020-02-03 17:52:12 -08:00
Ryan Burns 5d6a731753 Remove internal usage of ISCE_HOME env variable
ISCE_HOME was only used to get the location of the default logging config.
Lots of scripts were using boilerplate to set up this config, so I added
an `isce.logging` helper module which is the same as builtin python logging
but already has the configuration defaults set up for isce.

ISCE_HOME setup is retained in the toplevel `__init__.py`
but can now be removed without affecting functionality.
2020-02-03 14:01:57 -08:00
Ryan Burns 7274dbd2a4 Merge branch 'master' into cmake 2020-01-30 22:28:54 -08:00
Ryan Burns 35ca7db85e Fix trackCRs script
* Strip leading zero from LLH list
* Cast slice bounds to ints
* Use comma delimiter for reading CSVs
2020-01-22 10:07:18 -08:00
Ryan Burns a626ae759f Add main X11 to mdx link libraries 2020-01-08 12:10:14 -08:00
Eric J. Fielding db51787372 Merge branch 'master' of https://github.com/isce-framework/isce2 into UAVSAR 2020-01-07 14:51:56 -08:00
Zhang Yunjun 62871d9806 topsStack: convert README.txt to README.md
+ contrib/stack/topsStack:
   - convert README.txt to README.md
   - add AUX_CAL file download instruction
   - add note for DEM preparation from stripmapStack/README.md

+ contrib/stack:
   - merge References.txt and INSTALL.txt to README.md
   - remove the duplicated README_stripmap/topsStack.txt files.
2020-01-05 19:02:29 -08:00
Zhang Yunjun 1b70f52f91 stripmapStack: convert README.txt to README.md
+ convert README.txt to README.md

+ stackStripMap.py: group iono options in createParser()
   - group all iono options in createParser() for more easily navigation in --help.

   - fix typos in the descriptions for the script and --dem option.
2020-01-05 18:46:00 -08:00
Zhang Yunjun ad51158a44 stripmapStack: add function createWaterMask to config_master_*
Stack.py: add function call to create water mask file in radar coordinates in the step one "run_1_master_*"

createWaterMask.py: fill pixels without DEM data with value of -1, same as water body
2020-01-03 16:45:59 -08:00
Zhang Yunjun b2f3204595 stripmapStack/createWaterMask: add --dem_file opt
add -d / --dem_file option to input DEM file as an alternative for --bbox option.

add dem2bbox() to grab bbox from existing DEM file

adjust download_waterMask() that: if DEM file is input, put downloaded water body mask file to the same directory as the DEM file.

adjust the default water mask file in radar coordinates that:
1. in the same directory as the input lat/lon files
2. named as "waterMask.rdr" instead of "swbdLat_*.wbd.rdr"

add example docstring and update parser description.
2020-01-03 16:45:59 -08:00
Zhang Yunjun 18bd583ec2 topo: multilook geometry file with gdal_translate 2019-12-24 16:29:40 -08:00
Ryan Burns 46fef17f39 Add CMake build system
This commit adds experimental CMake build support for ISCE2.

The only changes involved should be adding CMakeLists.txt files.
All current source files, headers, and other functionality, including
the existing SCons build system, should be unaffected.

Some functionality is still a work-in-progress.
These should all be marked as TODO in the CMakeLists.txt files.
`grep TODO **.txt`

Please read CMakeLists.txt and .cmake/*.cmake for more info.
2019-12-21 17:34:50 -08:00
Zhang Yunjun 6061697fb9 stripmapStack: generate multilooked geometry files
Stack:
+ add alks and rlks options in config.topo()

topo: if number of looks is larger than 1, generate multilooked geometry files
+ generate `geom_master` folder in the root directory, same level as `Igrams`
+ import mroipac.looks.Looks module to multilook the full resolution geometry files from `./merged/geom_master`
+ copy over the full resolution xml/vrt files from `./merged/geome` to `./geom_master` as `*.full.xml/vrt` files, to support the number of looks extraction for mintpy
+ bug fixed in extractInfo(). This was not a problem before because the default values are 1 and the custom values from argument was not inputed in the config file.
2019-12-18 17:00:38 -08:00
Eric J. Fielding baf2ae6e35 Merge branch 'master' of https://github.com/isce-framework/isce2 into UAVSAR 2019-12-17 18:08:13 -08:00
Eric J. Fielding 36e7012e66 Merge branch 'master' of https://github.com/isce-framework/isce2 into UAVSAR 2019-12-03 16:41:41 -08:00
Zhang Yunjun 43aee1dcb3 stripmapStack/unwrap: adjust indentation 2019-11-21 13:35:21 -08:00
Zhang Yunjun 6e36a73fb0 stripmapStack/unwrap: enable corrlooks for SNAPHU
Stack:
+ add alks and rlks while writing config file for unwrap

unwrap:
+ calculate the az/rg spacing/resolution and the equivalent number of independent looks in extractInfoFromPickle()
+ uncomment corrlooks setting in runUnwrap()
2019-11-21 10:58:28 -08:00
Lijun Zhu df4db88ffa PyCuAmpcor: updated to the most recent version with gdal input 2019-11-19 16:59:49 -08:00
piyushrpt 959a278e47 Look for autorift and install if found 2019-11-11 10:51:39 -08:00
stoormgeo cf8b47935d stripmapStack. Changing indentations in the baselinerGrid.py
Changes to be committed:
	modified:   baselineGrid.py
2019-10-04 14:56:56 +03:00
Microwave Remote Sensing Laboratory 620ea91641
Add files via upload 2019-09-26 15:22:27 -04:00
Eric J. Fielding 63887754f0 Merge branch 'master' of https://github.com/isce-framework/isce2 into UAVSAR 2019-07-22 17:49:50 -07:00
piyushrpt 8345318434 Fix for importlib has no attribute util 2019-07-19 01:15:10 -07:00
Eric J. Fielding b6cb49a36c Merge branch 'master' of https://github.com/isce-framework/isce2 into UAVSAR 2019-06-24 17:04:40 -07:00
piyushrpt 005616e52c
Merge pull request #45 from giangijpl/master
Added downsample_snapu factory to TopsProc/Factories.py
2019-06-24 14:13:16 -07:00
giangi 6d3811ec11 Added downsample_snapu factory to TopsProc/Factories.py
Added runner run_downsample_unwrapper.py to TopsProc
added donwsample_unwraper module to contrib
git commit -m
2019-06-20 09:55:55 -07:00
Eric J. Fielding c2ecbe2c23 Merge branch 'master' of https://github.com/isce-framework/isce2 into UAVSAR 2019-06-18 16:10:28 -07:00
Mohammad Mohseni Aref f3362da9c0
Update crop_rdr.py for small bug
'NEW NEW_FILE' is not necessary for clipping data  !
2019-06-13 14:49:38 +02:00
Eric Jameson Fielding 919ce84b9b Modified the contrib/stack/stripmapStack/Stack.py code to write out baseline files with baselines set to 0.0 instead of skipping them. 2019-05-22 15:26:13 -07:00
Eric Jameson Fielding e3e4456f8f Merge branch 'UAVSAR' of https://github.com/EJFielding/isce2 into UAVSAR 2019-05-22 14:01:03 -07:00