Documentation of 'boofcv.alg.tracker.meanshift.TrackerMeanShiftLikelihood' Java class
TrackerMeanShiftLikelihood
boofcv.alg.tracker.meanshift

Class TrackerMeanShiftLikelihood<T extends ImageBase>



  • public class TrackerMeanShiftLikelihood<T extends ImageBase>
    extends java.lang.Object

    Mean-shift [1] based tracker which tracks the target inside a likelihood image using a flat rectangular kernel of fixed size. The likelihood for each pixel is computed using SparseImageSample_F32. How that model is computed is not specified by this class, but is often based on color. For sake of efficiency, the likelihood for a pixel is only computed as needed.

    This algorithm can run very fast and works well when the target being tracked is visually distinctive from the background and largely composed of one color. It can't handle changes in scale or shape of the target, which does limit its applications.

    [1] Yizong Chen, "Mean Shift, Mode Seeking, and Clustering" IEEE Trans. Pattern Analysis and Machine Intelligence, VOL. 17, NO. 8, August 1995

    • Constructor Detail

      • TrackerMeanShiftLikelihood

        public TrackerMeanShiftLikelihood(PixelLikelihood<T> targetModel,
                                          int maxIterations,
                                          float minFractionDrop)
        Configures tracker
        Parameters:
        targetModel - Target used to model the target's likelihood
        maxIterations - Maximum number of iterations. try 20
        minFractionDrop - If the likelihood drops below its initial value by this fraction the track is assumed to be lost
    • Method Detail

      • initialize

        public void initialize(T image,
                               RectangleLength2D_I32 initial)
        Specifies the initial target location so that it can learn its description
        Parameters:
        image - Image
        initial - Initial target location and the mean-shift bandwidth
      • process

        public boolean process(T image)
        Updates the target's location in the image by performing a mean-shift search. Returns if it was successful at finding the target or not. If it fails once it will need to be re-initialized
        Parameters:
        image - Most recent image in the sequence
        Returns:
        true for success or false if it failed
      • getLocation

        public RectangleLength2D_I32 getLocation()
        Current location of target in the image
        Returns:
        rectangle containing the target
      • isFailed

        public boolean isFailed()
        If true the tracker has filed

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.