44 static_cast<float>(s_match_distance_thresh_));
63 std::string
Name()
const override {
return "HMTrackersObjectsAssociation"; }
76 void ComputeAssociationDistanceMat(
77 const std::vector<TrackPtr>& fusion_tracks,
78 const std::vector<SensorObjectPtr>& sensor_objects,
79 const Eigen::Vector3d& ref_point,
80 const std::vector<size_t>& unassigned_tracks,
81 const std::vector<size_t>& unassigned_measurements,
82 std::vector<std::vector<double>>* association_mat);
95 void IdAssign(
const std::vector<TrackPtr>& fusion_tracks,
96 const std::vector<SensorObjectPtr>& sensor_objects,
97 std::vector<TrackMeasurmentPair>* assignments,
98 std::vector<size_t>* unassigned_fusion_tracks,
99 std::vector<size_t>* unassigned_sensor_objects,
100 bool do_nothing =
false,
bool post =
false);
111 void PostIdAssign(
const std::vector<TrackPtr>& fusion_tracks,
112 const std::vector<SensorObjectPtr>& sensor_objects,
113 const std::vector<size_t>& unassigned_fusion_tracks,
114 const std::vector<size_t>& unassigned_sensor_objects,
115 std::vector<TrackMeasurmentPair>* post_assignments);
129 bool MinimizeAssignment(
130 const std::vector<std::vector<double>>& association_mat,
131 const std::vector<size_t>& track_ind_l2g,
132 const std::vector<size_t>& measurement_ind_l2g,
133 std::vector<TrackMeasurmentPair>* assignments,
134 std::vector<size_t>* unassigned_tracks,
135 std::vector<size_t>* unassigned_measurements);
149 void ComputeDistance(
const std::vector<TrackPtr>& fusion_tracks,
150 const std::vector<SensorObjectPtr>& sensor_objects,
151 const std::vector<size_t>& unassigned_fusion_track,
152 const std::vector<int>& track_ind_g2l,
153 const std::vector<int>& measurement_ind_g2l,
154 const std::vector<size_t>& measurement_ind_l2g,
155 const std::vector<std::vector<double>>& association_mat,
167 void GenerateUnassignedData(
168 size_t track_num,
size_t objects_num,
169 const std::vector<TrackMeasurmentPair>& assignments,
170 std::vector<size_t>* unassigned_tracks,
171 std::vector<size_t>* unassigned_objects);
180 static double s_match_distance_thresh_;
182 static double s_match_distance_bound_;
184 static double s_association_center_dist_threshold_;