Apollo 11.0
自动驾驶开放平台
prediction_gflags.h
浏览该文件的文档.
1/******************************************************************************
2 * Copyright 2017 The Apollo Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *****************************************************************************/
16
17#pragma once
18
19#include "gflags/gflags.h"
20
21DECLARE_double(double_precision);
22
23// prediction trajectory and dynamic model
24DECLARE_double(prediction_trajectory_time_length);
25DECLARE_double(prediction_trajectory_time_resolution);
26DECLARE_double(min_prediction_trajectory_spatial_length);
27DECLARE_bool(enable_trajectory_validation_check);
28DECLARE_bool(enable_tracking_adaptation);
29DECLARE_bool(free_move_predict_with_accelerate);
30
31DECLARE_double(vehicle_max_linear_acc);
32DECLARE_double(vehicle_min_linear_acc);
33DECLARE_double(vehicle_max_speed);
34
35// Tracking Adaptation
36DECLARE_double(max_tracking_time);
37DECLARE_double(max_tracking_dist);
38
39// Map
40DECLARE_double(lane_search_radius);
41DECLARE_double(lane_search_radius_in_junction);
42DECLARE_double(junction_search_radius);
43DECLARE_double(pedestrian_nearby_lane_search_radius);
44DECLARE_int32(road_graph_max_search_horizon);
45DECLARE_double(surrounding_lane_search_radius);
46
47// Semantic Map
48DECLARE_double(base_image_half_range);
49DECLARE_bool(enable_draw_adc_trajectory);
50DECLARE_bool(img_show_semantic_map);
51
52// Scenario
53DECLARE_double(junction_distance_threshold);
54DECLARE_bool(enable_all_junction);
55DECLARE_bool(enable_all_pedestrian_caution_in_front);
56DECLARE_bool(enable_rank_caution_obstacles);
57DECLARE_bool(enable_rank_interactive_obstacles);
58DECLARE_int32(caution_obs_max_nums);
59DECLARE_double(caution_distance_threshold);
60DECLARE_double(caution_search_distance_ahead);
61DECLARE_double(caution_search_distance_backward);
62DECLARE_double(caution_search_distance_backward_for_merge);
63DECLARE_double(caution_search_distance_backward_for_overlap);
64DECLARE_double(caution_pedestrian_approach_time);
65DECLARE_int32(interactive_obs_max_nums);
66DECLARE_double(interaction_distance_threshold);
67DECLARE_double(interaction_search_distance_ahead);
68DECLARE_double(interaction_search_distance_backward);
69DECLARE_double(interaction_search_distance_backward_for_merge);
70DECLARE_double(interaction_search_distance_backward_for_overlap);
71
72// Obstacle features
73DECLARE_int32(ego_vehicle_id);
74DECLARE_double(scan_length);
75DECLARE_double(scan_width);
76DECLARE_double(back_dist_ignore_ped);
77DECLARE_uint64(cruise_historical_frame_length);
78DECLARE_bool(enable_kf_tracking);
79DECLARE_double(max_angle_diff_to_adjust_velocity);
83DECLARE_double(go_approach_rate);
84DECLARE_double(cutin_approach_rate);
85
86DECLARE_int32(min_still_obstacle_history_length);
87DECLARE_int32(max_still_obstacle_history_length);
88DECLARE_double(still_obstacle_speed_threshold);
89DECLARE_double(still_pedestrian_speed_threshold);
90DECLARE_double(still_unknown_speed_threshold);
91DECLARE_double(still_obstacle_position_std);
92DECLARE_double(still_pedestrian_position_std);
93DECLARE_double(still_unknown_position_std);
94DECLARE_double(slow_obstacle_speed_threshold);
95DECLARE_double(max_history_time);
96DECLARE_double(target_lane_gap);
97DECLARE_double(dense_lane_gap);
98DECLARE_int32(max_num_current_lane);
99DECLARE_int32(max_num_nearby_lane);
100DECLARE_double(max_lane_angle_diff);
101DECLARE_int32(max_num_current_lane_in_junction);
102DECLARE_int32(max_num_nearby_lane_in_junction);
103DECLARE_double(max_lane_angle_diff_in_junction);
104DECLARE_double(coeff_mul_sigma);
105DECLARE_double(pedestrian_max_speed);
106DECLARE_double(pedestrian_max_acc);
107DECLARE_double(still_speed);
108DECLARE_string(evaluator_vehicle_mlp_file);
109DECLARE_string(torch_vehicle_jointly_model_file);
110DECLARE_string(torch_vehicle_jointly_model_cpu_file);
111DECLARE_string(torch_vehicle_junction_mlp_file);
112DECLARE_string(torch_vehicle_junction_map_file);
113DECLARE_string(torch_vehicle_semantic_lstm_file);
114DECLARE_string(torch_vehicle_semantic_lstm_cpu_file);
115DECLARE_string(torch_vehicle_cruise_go_file);
116DECLARE_string(torch_vehicle_cruise_cutin_file);
117DECLARE_string(torch_vehicle_lane_scanning_file);
118DECLARE_string(torch_vehicle_vectornet_file);
119DECLARE_string(torch_vehicle_vectornet_cpu_file);
120DECLARE_string(torch_pedestrian_interaction_position_embedding_file);
121DECLARE_string(torch_pedestrian_interaction_social_embedding_file);
122DECLARE_string(torch_pedestrian_interaction_single_lstm_file);
123DECLARE_string(torch_pedestrian_interaction_prediction_layer_file);
124DECLARE_string(torch_pedestrian_semantic_lstm_file);
125DECLARE_string(torch_pedestrian_semantic_lstm_cpu_file);
126DECLARE_string(torch_lane_aggregating_obstacle_encoding_file);
127DECLARE_string(torch_lane_aggregating_lane_encoding_file);
128DECLARE_string(torch_lane_aggregating_prediction_layer_file);
129DECLARE_string(evaluator_vehicle_rnn_file);
130DECLARE_string(evaluator_vehicle_cruise_mlp_file);
131DECLARE_int32(max_num_obstacles);
132DECLARE_double(valid_position_diff_threshold);
133DECLARE_double(valid_position_diff_rate_threshold);
134DECLARE_double(split_rate);
135DECLARE_double(rnn_min_lane_relatice_s);
136DECLARE_bool(adjust_velocity_by_obstacle_heading);
137DECLARE_bool(adjust_velocity_by_position_shift);
138DECLARE_bool(adjust_vehicle_heading_by_lane);
139DECLARE_double(heading_filter_param);
140DECLARE_uint64(max_num_lane_point);
141DECLARE_double(distance_threshold_to_junction_exit);
142DECLARE_double(angle_threshold_to_junction_exit);
143DECLARE_uint32(sample_size_for_average_lane_curvature);
144
145// Validation checker
146DECLARE_double(centripetal_acc_coeff);
147
148// Junction Scenario
149DECLARE_uint32(junction_historical_frame_length);
150DECLARE_double(junction_exit_lane_threshold);
151DECLARE_double(distance_beyond_junction);
152DECLARE_double(defualt_junction_range);
153DECLARE_double(distance_to_slow_down_at_stop_sign);
154
155// Evaluator
156DECLARE_double(time_to_center_if_not_reach);
157DECLARE_uint32(warm_up_times);
158DECLARE_uint32(affine_pool_size);
159DECLARE_double(default_s_if_no_obstacle_in_lane_sequence);
160DECLARE_double(default_l_if_no_obstacle_in_lane_sequence);
161DECLARE_bool(enable_semantic_map);
162
163// Obstacle trajectory
164DECLARE_bool(enable_cruise_regression);
165DECLARE_double(lane_sequence_threshold_cruise);
166DECLARE_double(lane_sequence_threshold_junction);
167DECLARE_double(lane_change_dist);
168DECLARE_bool(enable_lane_sequence_acc);
169DECLARE_bool(enable_trim_prediction_trajectory);
170DECLARE_double(adc_trajectory_search_length);
171DECLARE_double(virtual_lane_radius);
172DECLARE_double(default_lateral_approach_speed);
173DECLARE_double(centripedal_acc_threshold);
174
175// move sequence prediction
176DECLARE_double(time_upper_bound_to_lane_center);
177DECLARE_double(time_lower_bound_to_lane_center);
178DECLARE_double(sample_time_gap);
179DECLARE_double(cost_alpha);
180DECLARE_double(default_time_to_lat_end_state);
181DECLARE_double(turning_curvature_lower_bound);
182DECLARE_double(turning_curvature_upper_bound);
183DECLARE_double(speed_at_lower_curvature);
184DECLARE_double(speed_at_upper_curvature);
185DECLARE_double(cost_function_alpha);
186DECLARE_double(cost_function_sigma);
187DECLARE_bool(use_bell_curve_for_cost_function);
188
189// interaction predictor
190DECLARE_bool(enable_interactive_tag);
191DECLARE_double(collision_cost_time_resolution);
192DECLARE_double(longitudinal_acceleration_cost_weight);
193DECLARE_double(centripedal_acceleration_cost_weight);
194DECLARE_double(collision_cost_weight);
195DECLARE_double(collision_cost_exp_coefficient);
196DECLARE_double(likelihood_exp_coefficient);
197
198// scenario feature extraction
199DECLARE_double(lane_distance_threshold);
200DECLARE_double(lane_angle_difference_threshold);
201
202// Trajectory evaluation
203DECLARE_double(distance_threshold_on_lane);
DECLARE_double(double_precision)
DECLARE_int32(road_graph_max_search_horizon)
DECLARE_uint32(sample_size_for_average_lane_curvature)
DECLARE_bool(enable_trajectory_validation_check)
DECLARE_uint64(cruise_historical_frame_length)
DECLARE_string(evaluator_vehicle_mlp_file)