There is a newer version of the record available.

Published August 14, 2018 | Version v2.6.1
Software Open

NeoGeographyToolkit/StereoPipeline: NASA Ames Stereo Pipeline 2.6.1

  • 1. SETI Institute and NASA Ames Research Center
  • 2. NASA

Description

RELEASE 2.6.1, August 13, 2018

  • New satellites

    • Support Cartosat-1 and Perusat-1 RPC cameras.
  • New tools

    • Added convert_pinhole_model, to convert between various existing such models.
    • Added camera_footprint as a helpful utility to show where images will project on to the ground.
    • Documented and improved the ipfind and ipmatch tools. ipfind is used to detect interest points in input images, either to generate .vwip files for other tools or to experiment with different IP finding settings. ipmatch matches the IPs contained in .vwip files to create .match files.
  • New camera models

    • Added simple atmospheric refraction correction to the DG and SPOT5 camera models. This can be manually disabled using the "--disable-correct-atmospheric-refraction" option.
    • Added support for pinhole camera models where the lens distortion is given by an RPC model (rational polynomial coefficients), of degrees 4, 5, and 6. Such a model may be more expressive than existing ones, and its coefficients can now be optimized using bundle adjustment. An initial model can be created with convert_pinhole_model.
  • stereo_corr

    • Added new options for post-SGM subpixel stereo. Previously only a parabola method was used.
    • Added option to perform cross-correlation checks on multiple resolution levels while using SGM/MGM.
    • Added option --corr-search-limit to constrain the automatically computed correlation search range.
    • Added --corr-memory-limit-mb option to limit the memory usage of the SGM/MGM algorithms.
    • Improved search range estimation in nadir epipolar alignment cases. Added --elevation-limit option to help constrain this search range.
    • Added hybrid SGM/MGM stereo option.
    • Improvements to SGM search range estimation.
    • Added --min-num-ip option.
  • bundle_adjust

    • Added the ability to optimize pinhole camera intrinsic parameters, with and without having a LIDAR or DEM ground truth to be used as reference (the latter is recommended though).
    • The tool is a lot more sensitive now to --camera-weight, existing results may change a lot.
    • Added the parameters --rotation-weight and --translation-weight to penalize large rotation and translation changes.
    • Added the option --fixed-camera-indices to keep some cameras fixed while optimizing others.
    • Can read the adjustments from a previous invocation of this program via --input-adjustments-prefix.
    • Can read each of pc_align's output transforms and apply it to the input cameras via --initial-transform, to be able to bring the cameras in the same coordinate system as the aligned terrain (the initial transform can have a rotation, translation, and scale). If --input-adjustments-prefix is specified as well, the input adjustments are read first, and the pc_align transform is applied on top.
    • Renamed --local-pinhole to --create-pinhole-cameras.
    • Added the parameter --nodata-value to ignore pixels at and below a threshold.
    • Added the ability to transfer interest points manually picked in mapprojected images to the the original unprojected images via --mapprojected-data.
    • Added the flag --use-lon-lat-height-gcp-error. Then, if using GCP, the three standard deviations are interpretted as applying not to x, y, z but to latitude, longitude, and height above datum (in this order). Hence, if the latitude and longitude are known accurately, while the height less so, the third standard deviation can be set to something much larger.
    • Added the ability to do multiple passes of bundle adjustment, removing outliers at each pass based on reprojection error and disparity (difference of pixel value between images). This works for any number of cameras. Match files are updated with outliers removed. Controlled via --num-passes, --remove-outliers-params and --remove-outliers-by-disparity-params.
    • Added the option --save-cnet-as-csv, to save the control network containing all interest points in the format used by ground control points, so it can be inspected.
    • If --datum is specified, bundle_adjust will save to disk the reprojection errors before and after optimization.
  • stereo_gui

    • Can view SPOT5 .BIL files.
  • pc_align

    • Add the ability to help the tool with an initial translation specified as a North-East-Down vector, to be used to correct known gross offsets before proceeding with alignment. The option is --initial-ned-translation.
    • When pc_align is initialized via --initial-transform or --initial-ned-translation, the translation vector is now computed starting from the source points before any of these initial transforms are applied, rather than after. The end point of this vector is still the source points after alignment to the reference. This is consistent with the alignment transform output by the tool, which also is from the source points before any initial alignment and to the reference points.
    • The translation vector was expressed incorrectly in the North-East-Down coordinate system, that is now fixed.
  • dem_mosaic

    • If the -o option value is specified as filename.tif, all mosaic will be written to this exact file, rather than creating tiles.
  • point2dem

    • Added the ability to apply a filter to the cloud points in each circular neighborhood before gridding. In addition to the current weighted average option, it supports min, max, mean, median, stddev, count, nmad, and percentile filters. The --search-radius-factor parameter can control the neighborhood size.
    • Sped up hole-filling in ortho image generation. If this creates more holes than before, it is suggested to relax all outlier filtering, including via --remove-outliers-params, median filtering, and erosion.
    • Added the option --orthoimage-hole-fill-extra-len to make hole-filling more aggressive by first extrapolating the cloud.
  • datum_convert

    • Rewrote the tool to depend on the Proj.4 HTDPGrids grid shift system. This fixed some situations where the tool was not working such as WGS84/NAD83 conversions and also added support for datum realizations (versions).
    • Vertical datum conversion is only supported in simple cases like D_MARS to MOLA.
    • Even with HTDPGrids, datum support with the Proj.4 library is poor and will hopefully be improved with future releases. Until then try to get external verification of results obtained with the datum_convert tool.
  • wv_correct

    • Supports WV2 TDI = 32 in reverse scan direction.
  • Misc

    • We now compile against USGS ISIS version 3.5.2.
    • The tools mapproject, dem_mosaic, dg_mosaic, and wv_correct support the --ot option, to round the output pixels to several types of integer, reducing storage, but perhaps decreasing accuracy.
    • The tools mapproject and image_calc support the --mo option to add metadata to the geoheader in the format 'VAR1=VAL1 VAR2=VAL2', etc.
    • Handle properly in bundle_adjust, orbitviz, and stereo with mapprojected images the case when, for RPC cameras, these coefficients are stored in _RPC.TXT files.
    • Support for web-based PROJ.4 strings, e.g., point2dem --t_srs http://spatialreference.org/ref/iau2000/49900/
    • Added --max-output-size option to point2dem to prevent against creation of too large DEMs.
    • Added image download option in hiedr2mosaic.py.
    • Bugfix in cam2map4stereo.py when the longitude crosses 180 degrees.
    • Added support for running sparse_disp with your own Python installation.
    • Bugfix for image cropping with epipolar aligned images.
    • The sfs tool supports the integrability constraint weight from Horn 1990.
    • The software works with both Python 2 and 3.

Files

NeoGeographyToolkit/StereoPipeline-v2.6.1.zip

Files (76.7 MB)

Name Size Download all
md5:1e7e62eaa516502bf42fe82851750bc0
76.7 MB Preview Download

Additional details