KJB
|
Classes | |
struct | Entity_id |
Entity + index; used for file I/O. More... | |
class | Generic_trajectory |
Represents a trajectory. Vector of optionals to trajectory elements. More... | |
class | Generic_trajectory_map |
Represents a set of trajectories; it is a map from entity to trajectory. More... | |
struct | Generic_trajectory_element |
Represents an element of a trajectory of a particular entity. More... | |
Typedefs | |
typedef boost::bimap < Entity_id, Entity_id > | Correspondence |
typedef Generic_trajectory < kjb::Vector > | Canonical_trajectory |
typedef Generic_trajectory_map < kjb::Vector > | Canonical_trajectory_map |
Enumerations | |
enum | Entity_type { PERSON_ENTITY, BICYCLE_ENTITY, BOTTLE_ENTITY, CAR_ENTITY, CHAIR_ENTITY, DOG_ENTITY, FRAMES_ENTITY, MOTORBIKE_ENTITY, OBJECT_ENTITY, BOX_ENTITY, BAG_ENTITY, NUM_ENTITY_TYPES } |
Functions | |
std::vector< std::string > | get_all_entity_type_names () |
Get all types. More... | |
const std::string & | get_entity_type_name (Entity_type type) |
Get the name of a entity type. More... | |
Entity_type | get_entity_type (const std::string &name) |
Get the type of a entity name. More... | |
double | get_entity_type_average_height (Entity_type type) |
Get the average height of an entity. More... | |
double | get_entity_type_stddev_height (Entity_type type) |
Get the standard deviation of the height of an entity. More... | |
double | get_entity_type_average_width (Entity_type type) |
Get the average width of an entity. More... | |
double | get_entity_type_stddev_width (Entity_type type) |
Get the standard deviation of the width of an entity. More... | |
double | get_entity_type_average_girth (Entity_type type) |
Get the average girth of an entity. More... | |
double | get_entity_type_stddev_girth (Entity_type type) |
Get the standard deviation of the girth of an entity. More... | |
std::ostream & | operator<< (std::ostream &ost, Entity_type type) |
Stream out an entity. More... | |
std::istream & | operator>> (std::istream &ist, Entity_type &type) |
Stream in an entity. More... | |
std::istream & | operator>> (std::istream &ist, Entity_id &id) |
Stream out an entity-id. More... | |
std::ostream & | operator<< (std::ostream &ost, const Entity_id &id) |
Stream in an entity-id. More... | |
std::vector< Correspondence > | get_correspondence (const Canonical_trajectory_map >_trajs, const Canonical_trajectory_map &hyp_trajs, double threshold=1.0) |
Compute the correspondence between the groud truth track and hypothesized tracks. More... | |
void | get_mt_ml_fragment_and_id_switch (const std::vector< Correspondence > &corrs, const Canonical_trajectory_map >_trajs, const Canonical_trajectory_map &hyp_trajs, double &mt, double &ml, size_t &frags, size_t &id_switch) |
Compute most_tracked, most_lost and id_switches for a given correspondence. More... | |
void | get_mota_and_motp (const std::vector< size_t > &mme_ct, const std::vector< size_t > &fp_ct, const std::vector< size_t > &miss_ct, const std::vector< size_t > &match_ct, const std::vector< size_t > &obj_ct, const std::vector< double > &dists, double &mota, double &motp) |
Compute metrics based on the counts. More... | |
void | init_ids_and_points (std::vector< Entity_id > &ids, std::vector< const Vector * > &points, const Canonical_trajectory_map &trajs, size_t cur_frame, const Correspondence &existing_corr, bool ground_truth) |
Extract unclaimed points for this time slice (ignores anything currently in exsiting correspondence) More... | |
void | get_pw_distance (const std::vector< const Vector * > &pts1, const std::vector< const Vector * > &pts2, Matrix &distance) |
Compute the pairwise distance between pts1 and pts2 and stores the results in Matrix distance. More... | |
void | get_best_matching (const kjb::Matrix &pw_distance, double threshold, std::vector< std::pair< int, int > > &matching) |
Compute the best matching using hungarian algorithm. More... | |
void | get_counts_and_distances (const std::vector< Correspondence > &corrs, const Canonical_trajectory_map >_trajs, const Canonical_trajectory_map &hyp_trajs, std::vector< size_t > &mme_ct, std::vector< size_t > &fp_ct, std::vector< size_t > &miss_ct, std::vector< size_t > &match_ct, std::vector< size_t > &obj_ct, std::vector< double > &dists) |
Compute the counts (match, miss match, false positives, grouth truth objects, and the distance between matched grouth truth and hypothesized tracks. More... | |
typedef boost::bimap<Entity_id, Entity_id> kjb::tracking::Correspondence |
std::vector< std::string > kjb::tracking::get_all_entity_type_names | ( | ) |
Get all types.
void kjb::tracking::get_best_matching | ( | const kjb::Matrix & | pw_distance, |
double | threshold, | ||
std::vector< std::pair< int, int > > & | matching | ||
) |
Compute the best matching using hungarian algorithm.
std::vector< Correspondence > kjb::tracking::get_correspondence | ( | const Canonical_trajectory_map & | gt_trajs, |
const Canonical_trajectory_map & | hyp_trajs, | ||
double | threshold = 1.0 |
||
) |
Compute the correspondence between the groud truth track and hypothesized tracks.
void kjb::tracking::get_counts_and_distances | ( | const std::vector< Correspondence > & | corrs, |
const Canonical_trajectory_map & | gt_trajs, | ||
const Canonical_trajectory_map & | hyp_trajs, | ||
std::vector< size_t > & | mme_ct, | ||
std::vector< size_t > & | fp_ct, | ||
std::vector< size_t > & | miss_ct, | ||
std::vector< size_t > & | match_ct, | ||
std::vector< size_t > & | obj_ct, | ||
std::vector< double > & | dists | ||
) |
Compute the counts (match, miss match, false positives, grouth truth objects, and the distance between matched grouth truth and hypothesized tracks.
Entity_type kjb::tracking::get_entity_type | ( | const std::string & | name | ) |
Get the type of a entity name.
double kjb::tracking::get_entity_type_average_girth | ( | Entity_type | type | ) |
Get the average girth of an entity.
double kjb::tracking::get_entity_type_average_height | ( | Entity_type | type | ) |
Get the average height of an entity.
double kjb::tracking::get_entity_type_average_width | ( | Entity_type | type | ) |
Get the average width of an entity.
const std::string & kjb::tracking::get_entity_type_name | ( | Entity_type | type | ) |
Get the name of a entity type.
double kjb::tracking::get_entity_type_stddev_girth | ( | Entity_type | type | ) |
Get the standard deviation of the girth of an entity.
double kjb::tracking::get_entity_type_stddev_height | ( | Entity_type | type | ) |
Get the standard deviation of the height of an entity.
double kjb::tracking::get_entity_type_stddev_width | ( | Entity_type | type | ) |
Get the standard deviation of the width of an entity.
void kjb::tracking::get_mota_and_motp | ( | const std::vector< size_t > & | mme_ct, |
const std::vector< size_t > & | fp_ct, | ||
const std::vector< size_t > & | miss_ct, | ||
const std::vector< size_t > & | match_ct, | ||
const std::vector< size_t > & | obj_ct, | ||
const std::vector< double > & | dists, | ||
double & | mota, | ||
double & | motp | ||
) |
Compute metrics based on the counts.
void kjb::tracking::get_mt_ml_fragment_and_id_switch | ( | const std::vector< Correspondence > & | corrs, |
const Canonical_trajectory_map & | gt_trajs, | ||
const Canonical_trajectory_map & | hyp_trajs, | ||
double & | mt, | ||
double & | ml, | ||
size_t & | frags, | ||
size_t & | id_switch | ||
) |
Compute most_tracked, most_lost and id_switches for a given correspondence.
void kjb::tracking::get_pw_distance | ( | const std::vector< const Vector * > & | pts1, |
const std::vector< const Vector * > & | pts2, | ||
Matrix & | distance | ||
) |
Compute the pairwise distance between pts1 and pts2 and stores the results in Matrix distance.
void kjb::tracking::init_ids_and_points | ( | std::vector< Entity_id > & | ids, |
std::vector< const Vector * > & | points, | ||
const Canonical_trajectory_map & | trajs, | ||
size_t | cur_frame, | ||
const Correspondence & | existing_corr, | ||
bool | ground_truth | ||
) |
Extract unclaimed points for this time slice (ignores anything currently in exsiting correspondence)
std::ostream & kjb::tracking::operator<< | ( | std::ostream & | ost, |
Entity_type | type | ||
) |
Stream out an entity.
std::ostream & kjb::tracking::operator<< | ( | std::ostream & | ost, |
const Entity_id & | id | ||
) |
Stream in an entity-id.
std::istream & kjb::tracking::operator>> | ( | std::istream & | ist, |
Entity_type & | type | ||
) |
Stream in an entity.
std::istream & kjb::tracking::operator>> | ( | std::istream & | ist, |
Entity_id & | id | ||
) |
Stream out an entity-id.