2019-01-16 19:40:08 +00:00
|
|
|
|
=====================
|
|
|
|
|
isce-2.3
|
|
|
|
|
=====================
|
|
|
|
|
|
|
|
|
|
First version of the open source release of ISCE under the Apache License-2.0.
|
|
|
|
|
Please read the LICENSE file included in this package.
|
|
|
|
|
|
|
|
|
|
ISCE is the InSAR Scientific Computing Environment. It provides a framework
|
|
|
|
|
for constructing components and applications that implement workflows, in
|
|
|
|
|
general, with broad built-in support for processing InSAR data from raw inputs
|
|
|
|
|
through to geocoded interferograms with options for filtering, unwrapping, and
|
|
|
|
|
many more standard products. The InSAR workflows are located in the applications
|
|
|
|
|
directory. Example input files for the applications are given in the directory,
|
|
|
|
|
examples/input_files. Some examples for constructing and using applications are
|
|
|
|
|
given in the examples/applications directory.
|
|
|
|
|
|
|
|
|
|
ISCE is developed with Python3 components and workflows that access legacy and
|
|
|
|
|
newer libraries that are developed in Fortran and C/C++. Please read the README
|
|
|
|
|
file for information on the software dependencies that must be installed and
|
|
|
|
|
environment settings that must be set in order to use ISCE.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
=====================
|
|
|
|
|
isce-2.2.1
|
|
|
|
|
=====================
|
|
|
|
|
|
|
|
|
|
Planned final release before open source release.
|
|
|
|
|
|
|
|
|
|
The next release of isce-2 is planned be an open source release. Details on where to access
|
|
|
|
|
it will be coming soon. Code elements required for the insarApp.py and isceApp.py workflows
|
|
|
|
|
will continue to require a license in order to use them. The open source version of ISCE
|
|
|
|
|
will not include those code elements. Information will be made available for those people
|
|
|
|
|
wanting access to the Stanford licensed components. The open source version includes
|
|
|
|
|
workflows such as stripmapApp.py that are included in this release.
|
|
|
|
|
|
|
|
|
|
Additions and Bug Fixes in this release:
|
|
|
|
|
|
|
|
|
|
* Fixed bug in mdx wrap interpretation - contributed by Gerald Manipon
|
|
|
|
|
* Fixed bug in isceobj.Image with ENVI Hdr Render - contributed by Gerald Manipon
|
|
|
|
|
|
|
|
|
|
* applications/downsampleDEM.py: contributed by David Bekaert
|
|
|
|
|
- enforcing grid range to be a multiple of the sampling
|
|
|
|
|
- adding option to either specify resolution in meters or in arcsecond
|
|
|
|
|
Arc-seconds ensure that one can sample degrees consistently.
|
|
|
|
|
- topsApp.py changes: tight burst validity required only when run with ionopsheric estimation on.
|
|
|
|
|
This remove the issue of gaps between two separate along-track processed topsApp products.
|
|
|
|
|
|
|
|
|
|
* topsApp: updated to include ionospheric corrections - contributed by Cunren Liang
|
|
|
|
|
- modified: components/isceobj/Sensor/TOPS/BurstSLC.py
|
|
|
|
|
components/isceobj/Sensor/TOPS/Sentinel1.py
|
|
|
|
|
|
|
|
|
|
* contrib/alos2proc: contributed by Cunren Liang
|
|
|
|
|
|
|
|
|
|
* GPUTopozero: changed byte offsets to long type
|
|
|
|
|
|
|
|
|
|
* applications/gdal2isce_xml.py: removed the hard coded scheme of the data in favor of directly capturing it from gdal
|
|
|
|
|
|
2020-07-02 19:40:49 +00:00
|
|
|
|
* topsApp.xml: minor updates (see examples/input_files/reference_TOPS_SENTINEL1.xml)
|
2019-01-16 19:40:08 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
=====================
|
|
|
|
|
isce-2.2.0
|
|
|
|
|
=====================
|
|
|
|
|
|
|
|
|
|
-- General bug fixes
|
|
|
|
|
-- Support for GDAL + c++11 starting from GDAL2.3
|
|
|
|
|
-- Added a --skipcheck option which will disable raw_input if optional dependencies like HDF5
|
|
|
|
|
are not found. This was a feature requested by folks dockerizing ISCE for use on cloud
|
|
|
|
|
machines.
|
|
|
|
|
-- Include option to specify VRT in gdal2isce_xml.py
|
|
|
|
|
-- Added conversion scripts from stack output to stamps input
|
|
|
|
|
-- Fixed renderVRT to not include geotransform or SRS when rendering for non-geocoded images.
|
|
|
|
|
Currently only mechanism to distinguish radar / geocoded images is by looking at coord1
|
|
|
|
|
and coord2 members of Image class
|
|
|
|
|
-- For Sentinel1, increased orbit extraction from 40 to 60 seconds
|
|
|
|
|
-- Changed roiApp.py/roiProc to stripmapApp.py/stripmapProc
|
|
|
|
|
Renamed examples/input_files/roiApp.xml to stripmapApp.xml
|
|
|
|
|
-- Added more checks when reading in new format SLCs
|
|
|
|
|
No guarantees that the reader works for all new variants
|
|
|
|
|
-- For topsApp added option to use a different DEM for geocoding.
|
|
|
|
|
If none is provided, defaults to the DEM used for processing topo.
|
|
|
|
|
|
|
|
|
|
------------------------------
|
|
|
|
|
|
|
|
|
|
* Updates related to topsApp:
|
|
|
|
|
-- Bug fixes corresponding to valid sample computation in range
|
|
|
|
|
-- Warning messages generated for data acquired during orbit maneuvers
|
|
|
|
|
-- Option of using a different dem for geocoding via the property “geocode demfilename”.
|
|
|
|
|
Suitable for data with large number of looks. User can use downsampleDEM.py to generate
|
|
|
|
|
an appropriately downlooked DEM for use with geocoding.
|
|
|
|
|
|
|
|
|
|
* Bug fix to VRT files. EPSG information is now not included for radar geometry files.
|
|
|
|
|
|
|
|
|
|
* Updated version of pyCuAmpcor from Caltech with downstream search capability
|
|
|
|
|
|
|
|
|
|
* Stripmap readers
|
|
|
|
|
-- Sentinel-1 stripmap reader can read from zip files just like the TOPS reader
|
|
|
|
|
-- Updates to Envisat SLC reader to support new format from ESA
|
|
|
|
|
-- Updates to ICU unwrapper to output multiple connected components (used to be the one
|
|
|
|
|
largest component earlier)
|
|
|
|
|
-- Scons can now either be python2 / python3 based.
|
|
|
|
|
-- ALOS2 ScanSAR reader (use VRTs and save disk space without replicating data). Not used
|
|
|
|
|
by any app currently.
|
|
|
|
|
|
|
|
|
|
---------------------------------
|
|
|
|
|
|
|
|
|
|
stripmapApp.py:
|
|
|
|
|
|
|
|
|
|
* The roiApp.py in the previous release, has been renamed to “stripmapApp.py” for clarity.
|
|
|
|
|
As the self-descriptive “stripmapApp.py” implies, this ISCE application can be used for
|
|
|
|
|
interferometric processing of stripmap SAR data acquired by a wide range of sensors.
|
|
|
|
|
Several bugs have been fixed compared to the previous release and the stripmapApp has been
|
|
|
|
|
tested on different datasets (including ALOS-1 and ALOS-2 stripmap data, CSK, Sentinel-1
|
|
|
|
|
stripmap and Envisat data).
|
|
|
|
|
|
|
|
|
|
* The ionospheric phase estimation have been significantly improved by enforcing common
|
|
|
|
|
phase unwrapping error in the sub-band interferograms.
|
|
|
|
|
|
|
|
|
|
*** There are additional README files in the contrib/stack directory
|
|
|
|
|
|
|
|
|
|
---------------------------------
|
|
|
|
|
Stack processing with ISCE:
|
|
|
|
|
|
|
|
|
|
We have added standalone scripts to contrib/stack folder, which allows advanced users to
|
|
|
|
|
process a stack of SAR data using ISCE. These scripts are experimental and have been mainly
|
|
|
|
|
developed for prototyping different algorithms (e.g., precise coregistration and ionospheric
|
|
|
|
|
phase estimation). However, due to large interest of the InSAR community, we have decided
|
|
|
|
|
to release this scripts as is. These scripts won’t be automatically included in your install
|
|
|
|
|
directory after installing ISCE. However, you can easily use them based on the instructions
|
|
|
|
|
found in contrib/stack/INSTALL.txt in your source ISCE directory.
|
|
|
|
|
|
|
|
|
|
Note that there are two different stack processors for processing a stack of TOPS or stripmap
|
|
|
|
|
data, found in “contrib/stack/topsStack” and “contrib/stack/stripmapStack” respectively.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In the “contrib/stack/“ folder there are three text files:
|
|
|
|
|
|
|
|
|
|
INSTALL.txt: explains how users should setup their $PATH variable to use the
|
|
|
|
|
stack processor
|
|
|
|
|
README_topsStack.txt: instructions for using the scripts in topsStack directory for
|
|
|
|
|
processing a stack of Sentinel-1 TOPS data
|
|
|
|
|
README_stripmapStack.txt: instructions for using the scripts in stripmapStack directory for
|
|
|
|
|
processing a stack of stripmap data
|
|
|
|
|
|
|
|
|
|
---------------------------------
|
|
|
|
|
|
|
|
|
|
=====================
|
|
|
|
|
isce-2.1.0 (20170803)
|
|
|
|
|
=====================
|
|
|
|
|
|
|
|
|
|
NEW FEATURES. HIGHLIGHTS:
|
|
|
|
|
|
|
|
|
|
-- Added ERS_EnviSAT_SLC reader. Contributed by Scott Henderson from the ISCE
|
|
|
|
|
user community. Thank you, Scott!
|
|
|
|
|
|
|
|
|
|
-- Change to minimum gcc requirement. Must be >= gcc4.7. Compilation of
|
|
|
|
|
C/C++ code is using the "-std=c++11", which requires >= gcc4.7. See the README
|
|
|
|
|
file for required versions of software dependencies."
|
|
|
|
|
|
|
|
|
|
-- New RoiProc and roiApp.py workflow added. New code to estimate ionospheric
|
|
|
|
|
contributions to phase is included in contrib/splitSpectrum and used in roiApp.py.
|
|
|
|
|
|
|
|
|
|
-- The "steps" mode of processing has a new command line option: "--next". This
|
|
|
|
|
option determines the next step for a given application based on the most
|
|
|
|
|
recently updated file in the PICKLE folder, whether the files are pickle files
|
|
|
|
|
or xml files; the setting for the property "renderer" determines which type of
|
|
|
|
|
step file is used for determining the next step to be processed using --next
|
|
|
|
|
(the default being pickle files).
|
|
|
|
|
|
|
|
|
|
-- The "steps" mode now renders the xxxProc.xml (as in insarProc.xml) file after
|
|
|
|
|
each step so that it is available to view/use after each step. It will be
|
|
|
|
|
overwritten after each step completes.
|
|
|
|
|
|
|
|
|
|
-- Added a new simplified water mask downloader, "wbd.py", and dem downloader,
|
|
|
|
|
"demdb.py". The only required command line arguments are the "snwe" lat, lon
|
|
|
|
|
coordinates. They create stitched watermask and dem files with xml and vrt
|
|
|
|
|
meta data files. If you use the $DEMDB environment variable the files will
|
|
|
|
|
be moved to the directory pointed to by $DEMDB and will be automatically
|
|
|
|
|
discoverable by ISCE anywhere on your system.
|
|
|
|
|
|
|
|
|
|
-- topsApp.py DEM downloading now downloads to the directory pointed to by your
|
|
|
|
|
$DEMDB environment variable (like insarApp.py and isceApp.py do). If $DEMDB is
|
|
|
|
|
not defined, then the files will be downloaded in the local processing directory.
|
|
|
|
|
The dems and water masks in the $DEMDB directory are available for use in any
|
|
|
|
|
directory automatically. If you want to move your prviously downloaded dems and
|
|
|
|
|
water masks to the $DEMDB directory you will have to edit the paths in their xml
|
|
|
|
|
files.
|
|
|
|
|
|
|
|
|
|
-- This release includes some code elements that can run on a GPU requiring as
|
|
|
|
|
dependencies the CUDA API and also an executable named 'cython3' to invoke
|
|
|
|
|
cython. You may need to manually create a soft link with this name pointing
|
|
|
|
|
to the name given to your installed cython. The code that require these new
|
|
|
|
|
dependencies are in components/zerodop/GPUtopozero and GPUgeo2rdr directories.
|
|
|
|
|
This code is not compiled and the CUDA and cython3 dependencies are not
|
|
|
|
|
required unless you include the following line in your SConfigISCE file:
|
|
|
|
|
|
|
|
|
|
ENABLE_CUDA=True
|
|
|
|
|
|
|
|
|
|
If you do not include this line or if you set the value to False, then
|
|
|
|
|
the code will compile as usual. This is experimental code at this time
|
|
|
|
|
and is not used in the builtin Applications. More code using CUDA for
|
|
|
|
|
GPUs will be coming in the future.
|
|
|
|
|
|
|
|
|
|
-- Added 'useGPU' configuration parameter to topsApp.py to use the GPU code
|
|
|
|
|
mentioned above in "New Features". You must also include the "ENABLE_CUDA=True"
|
|
|
|
|
line in your SConfigISCE file in order to compile the CUDA code.
|
|
|
|
|
|
|
|
|
|
-- Added "extra ESD cycles" parameter to topsApp.py to add extra ESD cycles
|
|
|
|
|
to interpret overlap phase.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GENERAL BUG FIXES. HIGHLIGHTS:
|
|
|
|
|
|
|
|
|
|
-- replaced dependency on "cv2" with "scipy" in RoiProc/runDispersive.py
|
|
|
|
|
|
|
|
|
|
-- fixed open file leaks in image file accessors and added more output to
|
|
|
|
|
show methods being used to open and close files.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
=============================================================================
|
|
|
|
|
Reminder of previous new capabilities and bug fixes:
|
|
|
|
|
1. topsApp related
|
|
|
|
|
a. Can provide zip files / safe folders as inputs
|
|
|
|
|
b. Bug fixes to support multi slice / region of interest processing
|
|
|
|
|
c. Generation of traditional coherence products
|
|
|
|
|
d. Output file names match insarApp – single resolution merged products
|
|
|
|
|
have .full suffix
|
|
|
|
|
e. Looks, filter strength, thresholds etc moved from topsproc level to
|
|
|
|
|
topsapp level
|
|
|
|
|
f. Changes to topsApp to use new Image API decorators
|
|
|
|
|
g. Added support for Sentinel-1B
|
|
|
|
|
2. topsOffsetApp
|
|
|
|
|
a. To be run in same folder as topsApp.
|
|
|
|
|
b. Produces dense pixel offset maps from Sentinel data.
|
|
|
|
|
3. Stripmap processing related
|
|
|
|
|
a. Stripped ALOS raw data of headers
|
|
|
|
|
b. Fixed bug in stripmap frame stitcher when starting ranges were different
|
|
|
|
|
4. General changes
|
|
|
|
|
a. Bug fixes to support near-nadir imaging geometries like SWOT
|
|
|
|
|
b. Geocoding support for datatypes other than FLOAT / CFLOAT
|
|
|
|
|
c. Updates to envisat reader to handle new ESA format
|
|
|
|
|
d. Bug fix in water mask generation when input DEM doesn’t span the image.
|
|
|
|
|
e. Bug fix in DemStitchers to enable dem.py to work again.
|
|
|
|
|
|
|
|
|
|
===============================================================================
|
|
|
|
|
Previous note about compiling ISCE after unsuccessful build due to missing headers
|
|
|
|
|
and libraries:
|
|
|
|
|
|
|
|
|
|
When building ISCE, scons will check the list of header files and libraries that
|
|
|
|
|
ISCE requires. Scons will cache the results of this dependency checking. So,
|
|
|
|
|
if you try to build ISCE and scons tells you that you are missing headers or
|
|
|
|
|
libraries, then you should remove the cached files before trying to build ISCE
|
|
|
|
|
again after installing the missing headers and libraries. The cached files are
|
|
|
|
|
config.log, .sconfig.dblite, and the files in directory .sconf_temp. You should
|
|
|
|
|
run the following command while in the top directory of the ISCE source (the
|
|
|
|
|
directory containing the SConstruct file):
|
|
|
|
|
|
|
|
|
|
> rm -rf config.log .sconfig.dblite .sconf_temp
|
|
|
|
|
|
|
|
|
|
and then try "scons install" again.
|
|
|
|
|
|
|
|
|
|
===============================================================================
|
|
|
|
|
From past notes about automatic downloading of dems:
|
|
|
|
|
|
|
|
|
|
1. You need to have a user name and password from urs.earthdata.nasa.gov and you
|
|
|
|
|
need to include LPDAAC applications to your account.
|
|
|
|
|
a. If you don't already have an earthdata username and password,
|
|
|
|
|
you can set them at https://urs.earthdata.nasa.gov/
|
|
|
|
|
b. If you already have an earthdata account, please ensure that
|
|
|
|
|
you add LPDAAC applications to your account:
|
|
|
|
|
- Login to earthdata here: https://urs.earthdata.nasa.gov/home
|
|
|
|
|
- Click on my applications on the profile
|
|
|
|
|
- Click on “Add More Applications”
|
|
|
|
|
- Search for “LP DAAC”
|
|
|
|
|
- Select “LP DAAC Data Pool” and “LP DAAC OpenDAP” and approve.
|
|
|
|
|
|
|
|
|
|
2. create a file named .netrc with the following 3 lines:
|
|
|
|
|
|
|
|
|
|
machine urs.earthdata.nasa.gov
|
|
|
|
|
login your_earthdata_login_name
|
|
|
|
|
password your_earthdata_password
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3. set permissions to prevent others from viewing your credentials:
|
|
|
|
|
|
|
|
|
|
> chmod go-rwx .netrc
|
|
|
|
|
|
|
|
|
|
===============================================================================
|
|
|
|
|
From past note on making stitched dems and water masks globally available:
|
|
|
|
|
|
|
|
|
|
Stitched dems and water body masks will be stored in and used from a directory
|
|
|
|
|
indicated by the environment variable, $DEMDB. If you define this environment
|
|
|
|
|
variable with value equal to a path where you want to store stitched dems and
|
|
|
|
|
waterbody masks, then any stitched dem or water mask will be globally available
|
|
|
|
|
automatically without needing to specify any information about the dem in your
|
|
|
|
|
input files for ISCE processing applications. If you use dem.py or watermask.py,
|
|
|
|
|
the stitched products are left in the directory where you run these apps. If
|
|
|
|
|
you want them to be globally available, then either run dem.py or watermask.py
|
|
|
|
|
in the $DEMDB directory or else move them there.
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
|
From past note on where to read about installing and running ISCE and on how
|
|
|
|
|
to obtain auxiliary files needed for orbit computations when working with RadarSAT1
|
|
|
|
|
data.
|
|
|
|
|
|
|
|
|
|
The README.txt file and the example input files in the examples/input_files
|
|
|
|
|
directory are the most up to date sources of information on installing and running
|
|
|
|
|
ISCE. The ISCE.pdf file is useful but may be dated in parts.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
If you want to use ISCE to process RadarSAT1 data, then you will need to download
|
|
|
|
|
files to the components/isceobj/Orbit/db directory. Instructions on where to get
|
|
|
|
|
the files are given in the file kernels.list file in that directory.
|
|
|
|
|
|
|
|
|
|
===================
|
|
|
|
|
End-Of-Release-Note
|
|
|
|
|
===================
|