Class BriskVisualPipeline

Inheritance Relationships

Base Type

Class Documentation

class aslam::BriskVisualPipeline : public aslam::VisualPipeline

A visual pipeline to extract Brisk features.

Public Functions

ASLAM_POINTER_TYPEDEFS(BriskVisualPipeline)
ASLAM_DISALLOW_EVIL_CONSTRUCTORS(BriskVisualPipeline)
BriskVisualPipeline(const Camera::ConstPtr &camera, bool copy_images, size_t octaves, double uniformity_radius, double absolute_threshold, size_t max_number_of_keypoints, bool rotation_invariant, bool scale_invariant)

Initialize the brisk pipeline with a camera.

Parameters
  • [in] camera: The intrinsic calibration of this camera.

  • [in] copy_images: Should we deep copy the images passed in?

  • [in] octaves: Number of octaves for BRISK scale computation.

  • [in] uniformity_radius: Gets multiplied on the keypoint scale and determines the distance to the next neighboring keypoint.

  • [in] absolute_threshold: The brisk absolute threshold. Low makes more keypoints.

  • [in] max_number_of_keypoints: The maximum number of keypoints to return.

  • [in] rotation_invariant: Should Brisk estimate the keypoint orientation?

  • [in] scale_invariant: Should Brisk estimate the keypoint scale?

BriskVisualPipeline(std::unique_ptr<Undistorter> &preprocessing, bool copy_images, size_t octaves, double uniformity_radius, double absolute_threshold, size_t max_number_of_keypoints, bool rotation_invariant, bool scale_invariant)

Initialize the brisk pipeline with a preprocessing pipeline.

Parameters
  • [in] preprocessing: An undistorter to do preprocessing such as contrast enhancement or undistortion.

  • [in] copy_images: Should we deep copy the images passed in?

  • [in] octaves: Number of octaves for BRISK scale computation.

  • [in] uniformity_radius: Gets multiplied on the keypoint scale and determines the distance to the next neighboring keypoint.

  • [in] absolute_threshold: The Brisk absolute threshold. Low makes more keypoints.

  • [in] max_number_of_keypoints: The maximum number of keypoints to return.

  • [in] rotation_invariant: Should brisk estimate the keypoint orientation?

  • [in] scale_invariant: Should Brisk estimate the keypoint scale?

virtual ~BriskVisualPipeline()
void initializeBrisk(size_t octaves, double uniformity_radius, double absolute_threshold, size_t max_number_of_keypoints, bool rotation_invariant, bool scale_invariant)

Initialize the brisk pipeline.

Parameters
  • [in] octaves: Number of octaves for BRISK scale computation.

  • [in] uniformity_radius: Gets multiplied on the keypoint scale and determines the distance to the next neighboring keypoint.

  • [in] absolute_threshold: The brisk absolute threshold. Low makes more keypoints.

  • [in] max_number_of_keypoints: The maximum number of keypoints to return.

  • [in] rotation_invariant: Should Brisk estimate the keypoint orientation?

  • [in] scale_invariant: Should Brisk estimate the keypoint scale?

Protected Functions

BriskVisualPipeline()

Constructor for serialization.

virtual void processFrameImpl(const cv::Mat &image, VisualFrame *frame) const

Process the frame and fill the results into the frame variable.

The top level function will already fill in the timestamps and the output camera.

Parameters
  • [in] image: The image data.