C# Class Emgu.CV.Features2D.Features2DTracker

This class use ImageFeature to match or track object
Inheritance: DisposableObject
Afficher le fichier Open project: genecyber/PredatorCV Class Usage Examples

Méthodes publiques

Méthode Description
CamShiftTrack ( Emgu.CV.Features2D.ImageFeature observedFeatures, MCvBox2D initRegion, Single>.Image priorMask ) : HomographyMatrix

Use camshift to track the feature

Detect ( Emgu.CV.Features2D.ImageFeature observedFeatures, double uniquenessThreshold ) : HomographyMatrix

Detect the if the model features exist in the observed features. If true, an homography matrix is returned, otherwise, null is returned.

Features2DTracker ( Emgu.CV.Features2D.ImageFeature modelFeatures ) : System

Create a Image tracker, where Image is matched with flann

GetHomographyMatrixFromMatchedFeatures ( MatchedImageFeature matchedFeatures ) : HomographyMatrix

Recover the homography matrix using RANDSAC. If the matrix cannot be recovered, null is returned.

MatchFeature ( Emgu.CV.Features2D.ImageFeature observedFeatures, int k, int emax ) : MatchedImageFeature[]

Match the Image feature from the observed image to the features from the model image

VoteForSizeAndOrientation ( MatchedImageFeature matchedFeatures, double scaleIncrement, int rotationBins ) : MatchedImageFeature[]

Eliminate the matched features whose scale and rotation do not aggree with the majority's scale and rotation.

VoteForUniqueness ( MatchedImageFeature matchedFeatures, double uniquenessThreshold ) : MatchedImageFeature[]

Filter the matched Features, such that if a match is not unique, it is rejected.

Méthodes protégées

Méthode Description
DisposeObject ( ) : void

Release unmanaged memory

ReleaseManagedResources ( ) : void

Release the memory assocaited with this Image Tracker

Method Details

CamShiftTrack() public méthode

Use camshift to track the feature
public CamShiftTrack ( Emgu.CV.Features2D.ImageFeature observedFeatures, MCvBox2D initRegion, Single>.Image priorMask ) : HomographyMatrix
observedFeatures Emgu.CV.Features2D.ImageFeature The feature found from the observed image
initRegion MCvBox2D The predicted location of the model in the observed image. If not known, use MCvBox2D.Empty as default
priorMask Single>.Image The mask that should be the same size as the observed image. Contains a priori value of the probability a match can be found. If you are not sure, pass an image fills with 1.0s
Résultat HomographyMatrix

Detect() public méthode

Detect the if the model features exist in the observed features. If true, an homography matrix is returned, otherwise, null is returned.
public Detect ( Emgu.CV.Features2D.ImageFeature observedFeatures, double uniquenessThreshold ) : HomographyMatrix
observedFeatures Emgu.CV.Features2D.ImageFeature The observed features
uniquenessThreshold double The distance different ratio which a match is consider unique, a good number will be 0.8
Résultat HomographyMatrix

DisposeObject() protected méthode

Release unmanaged memory
protected DisposeObject ( ) : void
Résultat void

Features2DTracker() public méthode

Create a Image tracker, where Image is matched with flann
public Features2DTracker ( Emgu.CV.Features2D.ImageFeature modelFeatures ) : System
modelFeatures Emgu.CV.Features2D.ImageFeature The Image feature from the model image
Résultat System

GetHomographyMatrixFromMatchedFeatures() public static méthode

Recover the homography matrix using RANDSAC. If the matrix cannot be recovered, null is returned.
public static GetHomographyMatrixFromMatchedFeatures ( MatchedImageFeature matchedFeatures ) : HomographyMatrix
matchedFeatures MatchedImageFeature The Matched Features, only the first ModelFeature will be considered
Résultat HomographyMatrix

MatchFeature() public méthode

Match the Image feature from the observed image to the features from the model image
public MatchFeature ( Emgu.CV.Features2D.ImageFeature observedFeatures, int k, int emax ) : MatchedImageFeature[]
observedFeatures Emgu.CV.Features2D.ImageFeature The Image feature from the observed image
k int The number of neighbors to find
emax int For k-d tree only: the maximum number of leaves to visit.
Résultat MatchedImageFeature[]

ReleaseManagedResources() protected méthode

Release the memory assocaited with this Image Tracker
protected ReleaseManagedResources ( ) : void
Résultat void

VoteForSizeAndOrientation() public static méthode

Eliminate the matched features whose scale and rotation do not aggree with the majority's scale and rotation.
public static VoteForSizeAndOrientation ( MatchedImageFeature matchedFeatures, double scaleIncrement, int rotationBins ) : MatchedImageFeature[]
matchedFeatures MatchedImageFeature The matched feature that will be participated in the voting. For each matchedFeatures, only the zero indexed ModelFeature will be considered.
scaleIncrement double This determins the different in scale for neighbour hood bins, a good value might be 1.5 (which means matched features in bin i+1 is scaled 1.5 times larger than matched features in bin i
rotationBins int The numbers of bins for rotation, a good value might be 20 (which means each bin covers 18 degree)
Résultat MatchedImageFeature[]

VoteForUniqueness() public static méthode

Filter the matched Features, such that if a match is not unique, it is rejected.
public static VoteForUniqueness ( MatchedImageFeature matchedFeatures, double uniquenessThreshold ) : MatchedImageFeature[]
matchedFeatures MatchedImageFeature The Matched Image features, each of them has the model feature sorted by distance. (e.g. SortMatchedFeaturesByDistance )
uniquenessThreshold double The distance different ratio which a match is consider unique, a good number will be 0.8
Résultat MatchedImageFeature[]