github NeoGeographyToolkit/StereoPipeline 3.0.0
ASP 3.0.0

latest releases: 2022-03-16-daily-build, 2022-03-15-daily-build
2 years ago

RELEASE 3.0.0, July 27, 2021

New functionality:

  • Added new stereo algorithms: MGM (original author implementation),
    OpenCV SGBM, LIBELAS, MSMW, MSMW2, and OpenCV BM to complement
    the existing ASP block matching, SGM, and MGM algorithms. See
    https://stereopipeline.readthedocs.io/en/latest/next_steps.html
    for usage. These will be further refined in subsequent releases.
  • Added the ability to perform piecewise local epipolar alignment
    for the input images, to be followed by a 1D disparity search (for
    non-mapprojected images), as suggested by the Satellite Stereo
    Pipeline (S2P) approach. This is still somewhat experimental.
  • Added the ability for a user to plug into ASP any desired stereo
    program working on image clips (cropped images) to which epipolar alignment has
    been applied (as is customary in the computer vision community)
    without rebuilding ASP.
  • Added support for shallow-water bathymetry, so creation of terrain
    models with correct depth determination for well-resolved areas under
    shallow water. To be used with dg, rpc, and nadirpinhole cameras.
  • Added two supporting tools for this: bathy_plane_calc and
    bathy_threshold_calc.py.
  • Added CCD artifact corrections for a few WV02 band 3 multispectral
    images. Apart from the systematic artifacts corrected by this
    logic, these images have a high-frequency unique pattern, and also
    jitter, which are not corrected for. Also added tools and
    documentation to easily tabulate more multispectral bands and TDI.

isis:

  • Upgraded to ISIS 5.0.1.
  • Ship a full Python 3.6 runtime, as expected by ISIS.

csm:

  • Upgraded to USGSCSM 1.5.2 (ASP's own build of it has an additional
    bugfix for LRO NAC not present in the conda-forge package).
  • Validated the CSM model for CTX, HiRISE, and LRO NAC cameras.
  • Added documentation for how to create CSM models from .cub
    cameras.
  • Export the state of a CSM camera after bundle adjustment and
    pc_align (only for linescan cameras supported by ISIS).

parallel_stereo

  • Will now throw an error if --threads is passed in, whose behavior
    was not defined.
  • Bugifx for Python 3.

bundle_adjust:

  • Added the option --heights-from-dem-robust-threshold.
  • Added the option --save-intermediate-cameras to save the cameras
    at each iteration.
  • Added the option --match-first-to-last to match the first several
    images to several last images by extending the logic of
    --overlap-limit past the last image to the earliest ones.

point2las

  • Remove outliers by using a percentile times a factor, in a way
    analogous to point2dem.

convert_pinhole_model:

  • Improve the accuracy of the RPC approximation distortion and
    undistortion.

sfs:

  • Added the option --shadow-threshold to be able to specify
    a single shadow threshold for all images. Also added
    --custom-shadow-threshold-list.
  • Added the option --robust-threshold for situations when the
    measured image intensity is unreliable.
  • Added the option --estimate-height-errors to estimate the
    uncertainty in height at each computed SfS DEM pixel.
    It can be customized via --height-error-params.
  • Added an auxiliary tool named sfs_blend to replace SfS
    pixels with ones from the original LOLA DEM in permanently
    shadowed regions.

stereo_gui:

  • Added the ability to find the contour of a georeferenced image at
    a given threshold. (It can be later edited, saved to disk, etc.)
  • Bugifxes for polygon drawing logic.
  • Much more responsive for overlaying many images.

image_calc:

  • Support the sign function (can help in creating masks).

pc_align:

  • Bugifx for --initial-transform-from-hillshading with outlier
    removal.
  • Add the --initial-transform-outlier-removal-params to control
    outlier removal when finding matches between DEMs to align
    using features detected in hillshaded images or selected
    manually.
  • Added --initial-rotation-angle, to initialize the alignment
    transform as the rotation with this angle (in degrees) around
    the axis going from the planet center to the centroid of the point
    cloud.

Misc

  • Moved the daily build to the release area on GitHub, at
    https://github.com/NeoGeographyToolkit/StereoPipeline/releases
  • Upgraded to GDAL 2.4 and PROJ4 5.2.0. (ISIS constrains updating to
    newer versions of these.)
  • Added the option --ip-per-image to bundle adjustment and stereo, to
    detect roughly how many interest points should be found per image
    (only a small fraction of them may eventually match across images).
  • The --min-triangulation-angle in stereo must be always positive if
    set by the user. Can be set to something very small if desired.
    This is a bug fix for this rarely used option (before, when set to
    0 it would just reset itself to some internal non-small value).
  • Bugifx for the VisionWorkbench implementation of the
    Levenberg-Marquardt algorithm, it was giving up prematurely in
    challenging situations.
  • Bugifx for affine epipolar alignment. Use the OpenCV function
    for finding the alignment matrix instead of the ASP one as OpenCV
    can filter outliers which cause issues on rare occasions.
  • Bugfix: Do not allow a full run to take place in a directory
    where a clip was run, as that will produce incorrect results.

Don't miss a new StereoPipeline release

NewReleases is sending notifications on new releases.