@@ -90,9 +90,15 @@ def get_metrics(experiment_metrics, experiment_metrics_bag_filename, map_waypoin
9090 for index , row in dataframe_lane_invasion .iterrows ():
9191 lane_invasion_points .append (row )
9292
93+ data_file = experiment_metrics_bag_filename .split ('.bag' )[0 ] + '/carla-ego_vehicle-speedometer.csv'
94+ dataframe_speedometer = pd .read_csv (data_file )
95+ speedometer_points = []
96+ for index , row in dataframe_speedometer .iterrows ():
97+ speedometer_points .append (row )
98+
9399 if len (checkpoints ) > 1 :
94100 experiment_metrics = get_distance_completed (experiment_metrics , checkpoints )
95- experiment_metrics = get_average_speed (experiment_metrics , seconds_start , seconds_end )
101+ experiment_metrics = get_average_speed (experiment_metrics , speedometer_points )
96102 experiment_metrics = get_collisions (experiment_metrics , collision_points )
97103 experiment_metrics = get_lane_invasions (experiment_metrics , lane_invasion_points )
98104 experiment_metrics = get_position_deviation (experiment_metrics , checkpoints , map_waypoints , experiment_metrics_filename )
@@ -109,11 +115,12 @@ def get_distance_completed(experiment_metrics, checkpoints):
109115 return experiment_metrics
110116
111117
112- def get_average_speed (experiment_metrics , seconds_start , seconds_end ):
113- if (seconds_end - seconds_start ):
114- experiment_metrics ['average_speed' ] = (experiment_metrics ['completed_distance' ] / (seconds_end - seconds_start ))* 3.6
115- else :
116- experiment_metrics ['average_speed' ] = 0
118+ def get_average_speed (experiment_metrics , speedometer_points ):
119+ speedometer_points_sum = 0
120+ for point in speedometer_points :
121+ speedometer_points_sum += point .data
122+
123+ experiment_metrics ['average_speed' ] = (speedometer_points_sum / len (speedometer_points ))* 3.6
117124 return experiment_metrics
118125
119126def get_collisions (experiment_metrics , collision_points ):
0 commit comments