24void DummyDetector::ContiObs2Frame(
25 const drivers::ContiRadar& corrected_obstacles,
27 for (
const auto& radar_obs : corrected_obstacles.contiobs()) {
29 radar_object->id = radar_obs.obstacle_id();
30 radar_object->track_id = radar_obs.obstacle_id();
31 radar_object->center(0) = radar_obs.longitude_dist();
32 radar_object->center(1) = radar_obs.lateral_dist();
33 radar_object->center(2) = 0.0;
34 radar_object->anchor_point = radar_object->center;
36 radar_object->velocity(0) =
static_cast<float>(radar_obs.longitude_vel());
37 radar_object->velocity(1) =
static_cast<float>(radar_obs.lateral_vel());
38 radar_object->velocity(2) = 0.0f;
40 Eigen::Matrix3d dist_rms;
42 Eigen::Matrix3d vel_rms;
44 dist_rms(0, 0) = radar_obs.longitude_dist_rms();
45 dist_rms(1, 1) = radar_obs.lateral_dist_rms();
46 vel_rms(0, 0) = radar_obs.longitude_vel_rms();
47 vel_rms(1, 1) = radar_obs.lateral_vel_rms();
48 radar_object->center_uncertainty =
49 (dist_rms * dist_rms.transpose()).cast<float>();
50 radar_object->velocity_uncertainty =
51 (vel_rms * vel_rms.transpose()).cast<float>();
53 double local_obj_theta = radar_obs.oritation_angle() / 180.0 *
PI;
54 Eigen::Vector3d direction(
cos(local_obj_theta),
sin(local_obj_theta), 0);
55 radar_object->direction = direction.cast<
float>();
57 static_cast<float>(std::atan2(direction(1), direction(0)));
58 radar_object->theta_variance =
59 static_cast<float>(radar_obs.oritation_angle_rms() / 180.0 *
PI);
60 radar_object->size(0) =
static_cast<float>(radar_obs.length());
61 radar_object->size(1) =
static_cast<float>(radar_obs.width());
62 radar_object->confidence =
static_cast<float>(radar_obs.probexist());
64 int cls = radar_obs.obstacle_class();
74 radar_frame->objects.push_back(radar_object);
85 if (corrected_obstacles ==
nullptr) {
86 AERROR <<
"corrected_obstacles is not available";
89 *corrected_obstacles = raw_obstacles;
100 ContiObs2Frame(corrected_obstacles, detected_frame);
bool Init(const DetectorInitOptions &options) override
Dummy Init
bool Detect(const drivers::ContiRadar &corrected_obstacles, const DetectorOptions &options, base::FramePtr detected_frame) override
Dummy detect
std::string Name() const override
The name of the DummyDetector
std::string Name() const override
The name of the DummyPreprocessor
bool Init(const PreprocessorInitOptions &options) override
Dummy Init
bool Preprocess(const drivers::ContiRadar &raw_obstacles, const PreprocessorOptions &options, drivers::ContiRadar *corrected_obstacles) override
Dummy preprocess
std::string Name() const override
The name of the DummyRoiFilter
bool RoiFilter(const RoiFilterOptions &options, base::FramePtr radar_frame) override
Dummy roi filter
bool Init(const RoiFilterInitOptions &options) override
Dummy Init
std::shared_ptr< Object > ObjectPtr
std::shared_ptr< Frame > FramePtr
#define PERCEPTION_REGISTER_DETECTOR(name)
#define PERCEPTION_REGISTER_PREPROCESSOR(name)
#define PERCEPTION_REGISTER_ROI_FILTER(name)