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.CameraModelandParametersSensorFeatureTracking.IMU_DATASensorFeatureTracking.CameraModelSensorFeatureTracking.HornAbsoluteOrientationSensorFeatureTracking.ImageTrackerSetupSensorFeatureTracking.KTL_Tracker!SensorFeatureTracking.block_tracker!SensorFeatureTracking.compute_nccSensorFeatureTracking.compute_sadSensorFeatureTracking.compute_ssdSensorFeatureTracking.drawfeatureLine!SensorFeatureTracking.drawfeatureX!SensorFeatureTracking.estimateRotationFromKeypointsSensorFeatureTracking.getApproxBestHarrisInWindowSensorFeatureTracking.getApproxBestShiTomasiSensorFeatureTracking.integrateGyroBetweenFrames!SensorFeatureTracking.predictHomographyIMU!SensorFeatureTracking.trackOneFeatureSensorFeatureTracking.trackOneFeatureInverseSensorFeatureTracking.trackOneFeatureInversePyramidSensorFeatureTracking.trackOneFeaturePyramidSensorFeatureTracking.warping!