15 #ifndef SIMPLE_SENSOR_SIMULATOR__SENSOR_SIMULATION__LIDAR__LIDAR_NOISE_MODEL_V1_HPP_
16 #define SIMPLE_SENSOR_SIMULATOR__SENSOR_SIMULATION__LIDAR__LIDAR_NOISE_MODEL_V1_HPP_
19 #include <geometry_msgs/msg/pose.hpp>
24 #include <unordered_map>
43 double ellipse_y_radius,
double radial_mean,
double radial_stddev,
double tangential_mean,
44 double tangential_stddev,
double true_positive_rate)
66 std::unordered_map<std::string, Config> configs_;
67 std::unordered_map<std::string, std::optional<std::reference_wrapper<Config>>> entity_to_config_;
68 std::default_random_engine random_engine_;
71 std::optional<std::reference_wrapper<Config>> getConfigFor(
74 static void removeMarkedPoints(
75 pcl::PointCloud<pcl::PointXYZI>::Ptr & cloud,
const std::vector<bool> & points_to_remove);
Definition: lidar_noise_model_v1.hpp:31
LidarNoiseModelV1(const std::string &topic_name, int seed)
Definition: lidar_noise_model_v1.cpp:24
void applyNoise(Raycaster::RaycastResult &result, const geometry_msgs::msg::Pose &ego_pose)
Definition: lidar_noise_model_v1.cpp:115
Definition: constants.hpp:19
geometry_msgs::msg::Pose Pose
Definition: lanelet_wrapper.hpp:66
std::string string
Definition: junit5.hpp:26
traffic_simulator_msgs::EntityStatus EntityStatus
Definition: helper_functions.hpp:32
Definition: lidar_noise_model_v1.hpp:36
DistanceBin(double ellipse_y_radius, double radial_mean, double radial_stddev, double tangential_mean, double tangential_stddev, double true_positive_rate)
Definition: lidar_noise_model_v1.hpp:42
std::normal_distribution< double > radial_distribution
Definition: lidar_noise_model_v1.hpp:39
double ellipse_y_radius_squared
Definition: lidar_noise_model_v1.hpp:37
std::normal_distribution< double > tangential_distribution
Definition: lidar_noise_model_v1.hpp:40
std::bernoulli_distribution detection_distribution
Definition: lidar_noise_model_v1.hpp:38
Definition: lidar_noise_model_v1.hpp:34
const double true_positive_rate_ellipse_normalized_x_radius
Definition: lidar_noise_model_v1.hpp:53
Config(const std::string &topic_name, const std::string &config_name)
Definition: lidar_noise_model_v1.cpp:33
std::vector< DistanceBin > distance_bins_
Definition: lidar_noise_model_v1.hpp:54
DistanceBin & getDistanceBin(double x, double y)
Definition: lidar_noise_model_v1.cpp:67
Definition: raycaster.hpp:54