21 #include "Eigen/StdVector" 35 namespace perception {
50 distance_thresh_ = distance_thresh;
53 projection_cache_.Reset(sensor_id, timestamp);
61 float Compute(
const TrackPtr& fused_track,
72 const bool measurement_is_lidar);
88 const Eigen::Vector3d& ref_pos,
int range = 3);
94 const Eigen::Vector3d& ref_pos,
int range = 3);
100 const Eigen::Vector3d& ref_pos,
int range = 3);
106 const bool measurement_is_lidar,
107 const bool is_track_id_consistent);
123 const Eigen::Vector3d& ref_pos,
int range);
126 float ComputeEuclideanDistance(
const Eigen::Vector3d& des,
127 const Eigen::Vector3d& src);
132 Eigen::Vector3d* center);
137 const Eigen::Vector3d& ref_pos,
int range,
138 Eigen::Vector3d* center);
143 Eigen::Matrix4d* pose);
145 Eigen::Matrix4d* pose);
148 const Eigen::Matrix4d& lidar2camera_pose,
149 Eigen::Vector3d* projected_ct);
151 const Eigen::Vector3d& ref_pos,
const int range,
152 Eigen::Vector3d* polygon_ct);
153 void GetModified2DRadarBoxVertices(
154 const std::vector<Eigen::Vector3d>& radar_box_vertices,
157 const Eigen::Matrix4d& world2camera_pose,
158 std::vector<Eigen::Vector2d>* radar_box2d_vertices);
162 const std::string& measurement_sensor_id,
double measurement_timestamp,
163 const std::string& projection_sensor_id,
double projection_timestamp);
167 const bool measurement_is_lidar);
170 bool LidarCameraCenterDistanceExceedDynamicThreshold(
174 float distance_thresh_ = 4.0f;
175 const float vc_similarity2distance_penalize_thresh_ = 0.07f;
176 const float vc_diff2distance_scale_factor_ = 0.8f;
177 const float rc_similarity2distance_penalize_thresh_ = 0.1f;
178 const float rc_x_similarity_params_2_welsh_loss_scale_ = 0.5f;
179 const Eigen::Vector2d rc_min_box_size_ = Eigen::Vector2d(25, 25);
189 static double s_lidar2lidar_association_center_dist_threshold_;
190 static double s_lidar2radar_association_center_dist_threshold_;
191 static double s_radar2radar_association_center_dist_threshold_;
192 static size_t s_lidar2camera_projection_downsample_target_pts_num_;
193 static size_t s_lidar2camera_projection_vertices_check_pts_num_;
Definition: track_object_similarity.h:53
Definition: projection_cache.h:32
Definition: track_object_similarity.h:30
Definition: track_object_distance.h:42
Definition: point_cloud.h:33
std::shared_ptr< SensorObject > SensorObjectPtr
Definition: sensor_object.h:68
Definition: projection_cache.h:93
Definition: track_object_distance.h:38
std::shared_ptr< Track > TrackPtr
Definition: track.h:160
Definition: track_object_similarity.h:42
Definition: track_object_similarity.h:36
void ResetProjectionCache(std::string sensor_id, double timestamp)
Definition: track_object_distance.h:52
std::shared_ptr< const Object > ObjectConstPtr
Definition: object.h:119
void set_distance_thresh(const float distance_thresh)
Definition: track_object_distance.h:49
Definition: track_object_similarity.h:48
Eigen::Vector3d * ref_point
Definition: track_object_distance.h:39
std::shared_ptr< BaseCameraModel > BaseCameraModelPtr
Definition: camera.h:72
std::shared_ptr< const SensorObject > SensorObjectConstPtr
Definition: sensor_object.h:69