Function Reference
Common
SensorFeatureTracking.drawfeatureLine!
— Function.drawfeatureLine!(image,feature1, feature2)
Draw a line between 2 features.
SensorFeatureTracking.drawfeatureX!
— Function.drawfeatureX!(image,feature [,crosslength = 2])
Draw a + on a feature.
Examples
julia> map(ft->drawfeatureX!(image, ft, length=5),features)
getApproxBestHarrisInWindow(image,[n=100, windowSize = 9, k=0.04, stepguess=0.4])
Return the n best Harris features in a window
SensorFeatureTracking.getApproxBestShiTomasi
— Function.getApproxBestShiTomasi(image,[n=100, windowSize = 9, k=0.04, stepguess=0.4, threshold = 1e-4])
Return the n aproxamate best Shi Tomasi features in a window
Block Matching Feature Tracking
SensorFeatureTracking.compute_sad
— Function.compute_sad(image1, image2, off1X, off1Y, off2X, off2Y, REGION_SIZE)
Compute Sum of Absolute Differences of two regions with size REGION_SIZE.
SensorFeatureTracking.compute_ssd
— Function.compute_ssd(image1, image2, off1X, off1Y, off2X, off2Y, REGION_SIZE)
Compute Sum of Squared Differences of two regions with REGION_SIZE.
SensorFeatureTracking.compute_ncc
— Function.compute_ncc(image1, image2, off1X, off1Y, off2X, off2Y, REGION_SIZE)
Compute the normalized cross-correlation of two regions with size REGION_SIZE.
SensorFeatureTracking.block_tracker!
— Function.block_tracker(tracker::BlockTracker, image1, image2)
Track features between two images.
KLT Feature Tracking
Forward and Inverse KLT tracking with pyramids
ImageTrackerSetup
fillNewImageTemplates!
KTL_Tracker!
trackOneFeatureInversePyramid
trackOneFeatureInverse
trackOneFeaturePyramid
trackOneFeature
warping!
Camera Models and Geometry
Data structure for a Camera model with parameters. Use CameraModel(width,height,fc,cc,skew,kc)
for easy construction.
SensorFeatureTracking.CameraModel
— Function.CameraModel(width,height,fc,cc,skew,kc)
Constructor helper for creating a camera model.
Inertial Sensor Aided Feature Tracking
SensorFeatureTracking.IMU_DATA
— Type.Data structure for holding time, gyroscope, and accelerometer data.
Fields
utime
– time [μs]acc
– accelerometer datagyro
– gyroscope data
estimateRotationFromKeypoints(points_a, points_b, cameraModel, [compensate = false])
Estimate the rotation between 2 sets of Keypoints a and b using HornAbsoluteOrientation.
It is assumed that only possitive Keypoints are valid.
Set compensate to true if rotaion should be around centre off image rather than 0,0
SensorFeatureTracking.predictHomographyIMU!
— Function.predictHomographyIMU!(index, current_time, vector_data, CameraK, CameraK_inverse)
Estimate camera rotation from IMU data and compute predicted homography
integrateGyroBetweenFrames!(index, current_time, vector_data)
Estimate rotations from IMU data between time stamps.
SensorFeatureTracking.HornAbsoluteOrientation
— Function.HornAbsoluteOrientation(a::Matrix{Float64},b::Matrix{Float64})
HornAbsoluteOrientation(a::Vector{Vector{Float64}},b::Vector{Vector{Float64}})
Compute the rotation between rows of (a and b)::Array{Float64,2}.
Rotate b into the frame of a
Returns a quaternion, aQb
Index
SensorFeatureTracking.CameraModelandParameters
SensorFeatureTracking.IMU_DATA
SensorFeatureTracking.CameraModel
SensorFeatureTracking.HornAbsoluteOrientation
SensorFeatureTracking.ImageTrackerSetup
SensorFeatureTracking.KTL_Tracker!
SensorFeatureTracking.block_tracker!
SensorFeatureTracking.compute_ncc
SensorFeatureTracking.compute_sad
SensorFeatureTracking.compute_ssd
SensorFeatureTracking.drawfeatureLine!
SensorFeatureTracking.drawfeatureX!
SensorFeatureTracking.estimateRotationFromKeypoints
SensorFeatureTracking.getApproxBestHarrisInWindow
SensorFeatureTracking.getApproxBestShiTomasi
SensorFeatureTracking.integrateGyroBetweenFrames!
SensorFeatureTracking.predictHomographyIMU!
SensorFeatureTracking.trackOneFeature
SensorFeatureTracking.trackOneFeatureInverse
SensorFeatureTracking.trackOneFeatureInversePyramid
SensorFeatureTracking.trackOneFeaturePyramid
SensorFeatureTracking.warping!