X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=blobdiff_plain;f=tracker.h;h=de6931d84c6ebd3dfadf8fd81f4878f65d5590a6;hb=633971154a478e1a134f38f420655b93a9f2160d;hp=f17c7a00fe0d1d637e3ab1643237f2549cb4af94;hpb=df0839702923a2c5128b9374e01984dfb9f7791b;p=mtp.git diff --git a/tracker.h b/tracker.h index f17c7a0..de6931d 100644 --- a/tracker.h +++ b/tracker.h @@ -33,23 +33,32 @@ class Tracker { int *_entrances, *_exits; MTPGraph *_graph; - int *_edge_occupation; scalar_t *_edge_lengths; public: Tracker(int nb_time_steps, int nb_locations); ~Tracker(); + // Define the spatial topology + void set_allowed_motion(int from_location, int to_location, int v); void set_as_entrance(int location, int v); void set_as_exit(int location, int v); + // Build or print the graph needed for the tracking per se + void build_graph(); void print_graph_dot(ostream *os); + // Define the detection scores + void set_detection_score(int time, int location, scalar_t score); + // Compute the optimal set of trajectories + void track(); + // Read-out of the optimal trajectories + int nb_trajectories(); int trajectory_entrance_time(int k); int trajectory_duration(int k);