libfovis
|
Core data structures and algorithms. More...
Classes | |
struct | CameraIntrinsicsParameters |
Intrinsic parameters for a pinhole camera with plumb-bob distortion model. More... | |
class | DepthSource |
Provides depth estimates for input image pixels. More... | |
class | FeatureMatch |
Represents a single image feature matched between two camera images taken at different times. More... | |
class | IntensityDescriptorExtractor |
Extracts mean-normalized intensity patch around a pixel. More... | |
class | KeypointData |
Image feature used for motion estimation. More... | |
class | MotionEstimator |
Does the heavy lifting for frame-to-frame motion estimation. More... | |
class | OdometryFrame |
Stores data specific to an input frame. More... | |
class | PyramidLevel |
One level of a Gaussian image pyramid. More... | |
class | Rectification |
Maps image coordinates from an input image to image coordinates on a rectified camera. More... | |
class | VisualOdometry |
Main visual odometry class. More... | |
Typedefs | |
typedef std::map< std::string, std::string > | VisualOdometryOptions |
Options. More... | |
Core data structures and algorithms.
VisualOdometryOptions |
Options.
VisualOdometryOptions is a key-value dictionary of user-adjustable options that affect the behavior of the visual odometry algorithm. Keys and values are both expressed as strings
Current options are:
* "feature-window-size" * Type: Integer * Default: 9 * Range: 1+ * Description: The size of the n x n image patch surrounding each feature, used for * keypoint matching. * * "max-pyramid-level" * Type: Integer * Default: 3 * Range: 1+ * Description: The maximum Gaussian pyramid level to process the image at. * Pyramid level 1 corresponds to the original image. * * "inlier-max-reprojection-error" * Type: Double * Default: 1.5 * Range: 0+ * Description: The maximum image-space reprojection error (in pixels) a * feature match is allowed to have and still be considered an * inlier in the set of features used for motion estimation. * * "clique-inlier-threshold" * Type: Double * Default: 0.1 * Range: 0+ * Description: See Howard's greedy max-clique algorithm for determining the * maximum set of mutually consisten feature matches. This * specifies the compatibility threshold, in meters. * * "min-features-for-estimate" * Type: Integer * Default: 10 * Range: 0+ * Description: Minimum number of features in the inlier set for the motion estimate * to be considered valid. * * "max-mean-reprojection-error" * Type: Double * Default: 10.0 * Range: 0+ * Description: Maximum mean reprojection error over the inlier feature matches for the * motion estimate to be considered valid. * * "use-subpixel-refinement" * Type: Integer * Default: 1 * Range: 0 or 1 * Description: Specifies whether or not to refine feature matches to * subpixel resolution. * * "feature-search-window" * Type: Integer * Default: 25 * Range: 0+ * Description: Specifies the size of the search window to apply when * searching for feature matches across time frames. The search is conducted * around the feature location predicted by the initial rotation estimate. * * "target-pixels-per-feature" * Type: Integer * Default: 250 * Range: 1+ * Description: Specifies the desired feature density as a ratio of input * image pixels per feature detected. This number is used to control * the adaptive feature thresholding. * * "update-target-features-with-refined" * Type: Integer * Default: 0 * Range: 0 or 1 * Description: When subpixel refinement is enabled, the refined feature * locations can be saved over the original feature * locations. This has a slightly negative impact on * frame-to-frame visual odometry, but is likely better when * using this library as part of a visual SLAM * algorithm. *