Tracker.txt 1.04 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
@startuml
package "Tracker package" #DDDDDD {




class Algorithm {
}
class Tracker{
    Ptr<TrackerFeatureSet> featureSet;
    Ptr<TrackerSampler> sampler;
    Ptr<TrackerModel> model;
    ---
    +static Ptr<Tracker> create(const string& trackerType);
    +bool init(const Mat& image, const Rect& boundingBox);
    +bool update(const Mat& image, Rect& boundingBox);
}
class Tracker
note right: Tracker is the general interface for each specialized trackers
class TrackerMIL{
    +Params
    ---
    TrackerMIL(TrackerMIL::Params parameters);
    +bool init(const Mat& image, const Rect& boundingBox);
    +bool update(const Mat& image, Rect& boundingBox);
}
class TrackerBoosting{
    +Params
    ---
    TrackerBoosting(TrackerBoosting::Params parameters);
    +bool init(const Mat& image, const Rect& boundingBox);
    +bool update(const Mat& image, Rect& boundingBox);
}
Algorithm <|-- Tracker : virtual inheritance
Tracker <|-- TrackerMIL
Tracker <|-- TrackerBoosting

note "Single instance of the Tracker" as N1
TrackerBoosting .. N1
TrackerMIL .. N1
}

@enduml