echo "source /opt/ros/humble/setup.bash" >> /root/.bashrcbash # to run the source commandpip install rosbag2_py
Rosbag from Digittans As of now, only one rosbag has been used and five frames within that rosbag is considered. That can be changed according to the requirement of the user.
Scenarios are recorded with target object placed at a distance of 10m , 20m and 30m. As of now in evaluation/new_evaluation.py , only one data has been loaded and the target distance considered is 20m. For evaluation purpose, another parameter has been considered: the Rainfall rate - 10mmph, 20mmph, 30mmph etc. Both the distance and rainfall rate are designated inside scenario key and can be replaced as per needed.
In evaluation/new_evaluation.py, follwoing functions have been implemented from utils/Evaluation_utils.py: plot_distance_vs_power, plot_intensity_vs_distance , plot_mean_intensity_per_scenario, plot_mean_points_per_scenario, plot_mean_detected_distance_per_scenario RUN evaluation/new_evaluation.py to generate the above mentioned plots. RUN evaluation/flow_model_evaluation.py to generate results to visualize the effect of rainfall on detected distance by Lidar modelled according to paper "Predicting_the_influence_of_rain_on_LIDAR_in_ADAS", where the detected distance reduces with the increase of rainfall and is calculated over power.
ROSBAG_PATHS : List of paths to rosbags which will be evaluated SCENARIO_KEYS : List of scenarios with target object placed at different distance, can also be used for different rain rainfall rates.
Plots are all generated inside the plots folder.
To calculate the error relative to PC_0 (point_cloud from 10m_0) and plot the difference between PC_0 and the other point clouds (PC_1, PC_2, ..., PC_9), the difference between the target values (Y-values) of PC_0 and the others for each corresponding regression has been calculated.
Steps: PC_0 is used as the baseline: The linear regression for PC_0 is first computed. Calculation of the error for each subsequent point cloud: For every other point cloud, the error as the difference between PC_0's predicted regression line and the current point cloud's regression line is calculated. Plotting the error: Plot the error (the difference between the baseline and each subsequent point cloud's predictions) for visualization.