Published June 17, 2019
| Version v2.6.2
Software
Open
NeoGeographyToolkit/StereoPipeline: ASP 2.6.2
Authors/Creators
- 1. SETI Institute and NASA Ames Research Center
- 2. NASA
Description
RELEASE 2.6.2, June 15, 2019
-
New satellites
- Added support for SkyBox, together with a detailed example, including how to jointly align and optimize cameras in respect to a reference DEM, while optionally refining the intrinsics. This approach may be helpful for other images obtained with frame cameras and uncertain positioning information.
- Added support for CORONA KH-4B, KH-7, and KH-9 declassified images and their panoramic (optical bar) camera models, as well as using and optimizing camera models with RPC distortion. An example is in the documentation.
-
New tools
- Added parallel_bundle_adjust which computes image statistics and IP matching in a parallel manner similar to parallel_stereo.
- Added the cam_gen tool to create a correctly oriented pinhole camera model given camera intrinsics, lon-lat coordinates of the corners (or some other pixels), and optionally a ground truth DEM. It can also parse SkySat's video/frame_index metafile to get this data. It can also take as input any camera supported by ASP via --input-camera and create a most-similar pinhole camera model with given intrinsics.
- Added the coverage_fraction tool to provide a coverage estimate of the results of a stereo call.
- Added the image_mosaic tool which merges together images based on interest point matches. Can be used to stitch together Corona scanned images.
- Added a new tool, n_align, to jointly align n clouds (re-implemented from Matlab, works well for small clouds that are close to each other).
-
stereo_rfne
- Added the option to run a non-SGM subpixel option after running SGM/MGM.
- Added the phase correlation subpixel option. This is a Fourier transform based method.
-
pc_align
- Added a new approach to finding an initial transform between clouds, when they are DEMs, that may be more robust to large scale or translation changes, or to noise. It is based on hillshading the DEMs and finding interest point matches among them, which are then used to find the transform. Can be invoked with --initial-transform-from-hillshading <transform type>. Supported transforms are: 'similarity' (rotation + translation + scale), 'rigid' (rotation + translation) and 'translation'.
- Added the expression of the Euler angles in the North-East-Down coordinate system around the center of gravity of the source cloud.
- Bugfix: intersection of bounding boxes of the clouds takes into account the initial transform applied to the source points.
- Added a new alignment algorithm, based on https://github.com/IntelVCL/FastGlobalRegistration It can be invoked with --alignment-method fgr. It can perform better than ICP when the clouds are close enough to each other but there is a large number of outliers, when it can function with very large --max-displacement. It does worse if the clouds need a big shift to align.
-
bundle_adjust
- Two passes of bundle adjustment (with outlier filtering after
- first pass) is now the default.
- The flag --skip-rough-homography is on by default as it usually gives more reliable results. Use --enable-rough-homography to turn this option back on (useful when the footprint on the ground and difference in perspective are large).
- The flag --disable-tri-ip-filter is also the default as input cameras may not be reliable enough for this filter. Can be enabled back with --enable-tri-ip-filter.
- Added the --intrinsics-limits option to manually specify intrinsic parameter limits.
- Added the --num-random-passes option to allow repeat solving attempts with randomly distorted initial parameters.
- Added option to automatically guess overlapping images from Worldview style XML camera files.
- Removed the non-Ceres bundle adjustment options.
- Added the option to share or not share selected intrinsic parameters between pinhole cameras when optimizing intrinsics.
- Improvements in solving simultaneously for both intrinsics and extrinsics of n camera images if underlying ground truth terrain in the form of a DEM or LIDAR point cloud is present. After this bundle adjustment, pairwise stereo and DEM creation, the DEMs are well-aligned to the ground truth.
- Added the flag --reference-terrain-weight which, when increased, helps align better camera images to a given reference terrain.
- Added the option --heights-from-dem. It is very helpful in determining an unknown focal length and distortion parameters for pinhole cameras. It can be used together with ---heights-from-dem-weight.
- Bug fix in outlier filtering for n images.
- Updated Ceres version from 1.11 to 1.14. When optimizing with multiple threads, results now vary slightly from run to run. Results from single threaded runs are deterministic.
- Added a new --parameter-tolerance option. Stop when the relative error in the variables being optimized is less than this.
- Documented the ability to create a roughly positioned pinhole camera model from an image if its intrinsics and the longitude and latitude (and optionally height) of its corners (or some other pixels) are known.
- When multiple passes happen with outliers removed, match files are not over-written, but a new clean copy of them gets saved.
- Renamed --create-pinhole-cameras to --inline-adjustments, and distortion_params to other_intrinsics. This is needed since for the panoramic model there will be other intrinsic parameters as well.
- Added the option --forced-triangulation-distance for when one really needs to triangulate with poor cameras. Can be used with --min-triangulation-angle 0.
- Added the option --transform-cameras-using-gcp. If there are at least two images with each having at least 3 GCP (each GCP need not show in more than one image), use this to convert cameras from an abstract coordinate system to world coordinates.
- Increased the default --num-ransac-iterations to 1000 from 100 so that the solver tries harder to find a fit.
- Increased default --ip-inlier-factor from 1/15 to 0.2 to help with getting more interest points for steep terrain with the pinhole session.
- Increased the default --ip-uniqueness-threshold from 0.7 to 0.8 to allow for more interest points.
- Option to filter interest points by elevation limit and lon-lat limit after each pass of bundle adjustment except the last.
-
dem_mosaic
- Added normalized median absolute deviation (NMAD) output option.
- Added the option --force-projwin to create a mosaic filling precisely the desired box specified via --t_projwin.
-
stereo_gui
- Added the ability to manually reposition interest points.
- Can now show non-synchronous .match files (that is, each IP need not be present in all images).
- Added basic functionality for drawing/editing/merging polygons on
- top of georeferenced images or DEMs. The polygons can be saved as shape files, and then used to cut out portions of images with GDAL.
- Added the option --nodata-value. Pixels with value less than or equal to this are shown as transparent.
- Added the ability to view .vwip files (specify one per image).
- Can view (but not edit) GCP files, via --gcp-file (creating GCP is supported in a separate mode, per the doc).
- The option --dem-file specifies a DEM to use when creating manually picked GCP and --gcp-file specifies the name of the GCP file to use upon saving such GCP.
-
mapproject
- Added the --nearest-neighbor option to use that interpolation method instead of bicubic. This is better for labeled images which should not be interpolated.
-
convert_pinhole_model
- Can create RPC distortion models of any degree, which can be further optimized in bundle_adjust. Old RPC distortion files are still supported throughout ASP, but not functionality which optimizes them. They can be approximately converted to new type RPC distortion files with this tool if optimization is desired.
- Misc
- Comiled against USGS ISIS version 3.6.0.
- Expanded the documentation explaining how to align cameras to a DEM manually (or initialize such cameras) by selecting matching points between the images and the DEM.
- The stereo tools and bundle_adjust will now cache image statistics and interest points to files on disk.
- In stereo and bundle_adjust, when images or cameras are newer than the match files, the latter get recomputed unless the tools are invoked with --force-reuse-match-files.
- Added a fix to make stereo work with the ZY3 satellite.
- For stereo and bundle_adjust, added the --no-datum option to find interest points without assuming a reliable datum exists, such as for irregularly shaped bodies. Added the related option --skip-rough-homography to not use the datum in rough homography computation. Added the option --ip-num-ransac-iterations for finer control of interest point matching. Added --ip-triangulation-max-error to control the triangulation error.
- The cam2rpc tool accepts --t_srs and --semi-major-axis as alternatives to --datum and --dem-file.
- Add option --theia-overrides to camera_solve to make it easier to customize its behavior via flags.
- Added an explanation for how the pinhole model works.
Files
NeoGeographyToolkit/StereoPipeline-v2.6.2.zip
Files
(76.9 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:169d1fb98fcac3844bbd3ed8b92ddfdb
|
76.9 MB | Preview Download |
Additional details
Related works
- Is supplement to
- https://github.com/NeoGeographyToolkit/StereoPipeline/tree/v2.6.2 (URL)