From 521cc4d528dc0e5c1f51338bc4a31557d9c96a0e Mon Sep 17 00:00:00 2001 From: QuanyiLi Date: Sat, 6 May 2023 19:16:44 +0100 Subject: [PATCH] clean example --- scenarionet/converter/nuplan/utils.py | 38 ++++++++++++++++++++++ scenarionet/examples/convert_nuplan.py | 41 ++---------------------- scenarionet/examples/convert_nuscenes.py | 1 + 3 files changed, 42 insertions(+), 38 deletions(-) diff --git a/scenarionet/converter/nuplan/utils.py b/scenarionet/converter/nuplan/utils.py index 87f41b2..bd2d77e 100644 --- a/scenarionet/converter/nuplan/utils.py +++ b/scenarionet/converter/nuplan/utils.py @@ -433,3 +433,41 @@ def convert_nuplan_scenario(scenario: NuPlanScenario): result[SD.MAP_FEATURES] = extract_map_features(scenario.map_api, scenario_center) return result, scenario.scenario_name + + +# only for example using +example_scenario_types = "[behind_pedestrian_on_pickup_dropoff, \ + near_multiple_vehicles, \ + high_magnitude_jerk, \ + crossed_by_vehicle, \ + following_lane_with_lead, \ + changing_lane_to_left, \ + accelerating_at_traffic_light_without_lead, \ + stopping_at_stop_sign_with_lead, \ + traversing_narrow_lane, \ + waiting_for_pedestrian_to_cross, \ + starting_left_turn, \ + starting_high_speed_turn, \ + starting_unprotected_cross_turn, \ + starting_protected_noncross_turn, \ + on_pickup_dropoff]" + +example_dataset_params = [ + # builder setting + "scenario_builder=nuplan_mini", + "scenario_builder.scenario_mapping.subsample_ratio_override=0.5", # 10 hz + + # filter + "scenario_filter=all_scenarios", # simulate only one log + "scenario_filter.remove_invalid_goals=true", + "scenario_filter.shuffle=true", + "scenario_filter.log_names=['2021.07.16.20.45.29_veh-35_01095_01486']", + # "scenario_filter.scenario_types={}".format(all_scenario_types), + # "scenario_filter.scenario_tokens=[]", + # "scenario_filter.map_names=[]", + # "scenario_filter.num_scenarios_per_type=1", + # "scenario_filter.limit_total_scenarios=1000", + # "scenario_filter.expand_scenarios=true", + # "scenario_filter.limit_scenarios_per_type=10", # use 10 scenarios per scenario type + "scenario_filter.timestamp_threshold_s=20", # minial scenario duration (s) +] diff --git a/scenarionet/examples/convert_nuplan.py b/scenarionet/examples/convert_nuplan.py index 0d65fd4..c1e1800 100644 --- a/scenarionet/examples/convert_nuplan.py +++ b/scenarionet/examples/convert_nuplan.py @@ -5,52 +5,17 @@ MetaDrive. import os from scenarionet import SCENARIONET_DATASET_PATH -from scenarionet.converter.nuplan.utils import get_nuplan_scenarios, convert_nuplan_scenario +from scenarionet.converter.nuplan.utils import get_nuplan_scenarios, convert_nuplan_scenario, example_scenario_types from scenarionet.converter.utils import write_to_directory if __name__ == "__main__": - # 14 types - all_scenario_types = "[behind_pedestrian_on_pickup_dropoff, \ - near_multiple_vehicles, \ - high_magnitude_jerk, \ - crossed_by_vehicle, \ - following_lane_with_lead, \ - changing_lane_to_left, \ - accelerating_at_traffic_light_without_lead, \ - stopping_at_stop_sign_with_lead, \ - traversing_narrow_lane, \ - waiting_for_pedestrian_to_cross, \ - starting_left_turn, \ - starting_high_speed_turn, \ - starting_unprotected_cross_turn, \ - starting_protected_noncross_turn, \ - on_pickup_dropoff]" - - dataset_params = [ - # builder setting - "scenario_builder=nuplan_mini", - "scenario_builder.scenario_mapping.subsample_ratio_override=0.5", # 10 hz - - # filter - "scenario_filter=all_scenarios", # simulate only one log - "scenario_filter.remove_invalid_goals=true", - "scenario_filter.shuffle=true", - "scenario_filter.log_names=['2021.07.16.20.45.29_veh-35_01095_01486']", - # "scenario_filter.scenario_types={}".format(all_scenario_types), - # "scenario_filter.scenario_tokens=[]", - # "scenario_filter.map_names=[]", - # "scenario_filter.num_scenarios_per_type=1", - # "scenario_filter.limit_total_scenarios=1000", - # "scenario_filter.expand_scenarios=true", - # "scenario_filter.limit_scenarios_per_type=10", # use 10 scenarios per scenario type - "scenario_filter.timestamp_threshold_s=20", # minial scenario duration (s) - ] force_overwrite = True dataset_name = "nuplan" output_path = os.path.join(SCENARIONET_DATASET_PATH, dataset_name) version = 'v1.1' - scenarios = get_nuplan_scenarios(dataset_params) + scenarios = get_nuplan_scenarios(example_scenario_types) + write_to_directory(convert_func=convert_nuplan_scenario, scenarios=scenarios, output_path=output_path, diff --git a/scenarionet/examples/convert_nuscenes.py b/scenarionet/examples/convert_nuscenes.py index 4c45f02..71ffb35 100644 --- a/scenarionet/examples/convert_nuscenes.py +++ b/scenarionet/examples/convert_nuscenes.py @@ -18,6 +18,7 @@ if __name__ == "__main__": version = 'v1.0-mini' dataroot = '/home/shady/data/nuscenes' force_overwrite = True + nusc = NuScenes(version=version, dataroot=dataroot) scenarios = nusc.scene