batch convert nuscenes
This commit is contained in:
@@ -1,3 +0,0 @@
|
|||||||
from scenarionet.converter.nuscenes.utils import convert_nuscenes_scenario
|
|
||||||
from scenarionet.converter.nuplan.utils import convert_nuplan_scenario
|
|
||||||
from scenarionet.converter.utils import write_to_directory
|
|
||||||
|
|||||||
@@ -379,7 +379,7 @@ def convert_nuscenes_scenario(scene, nuscenes: NuScenes):
|
|||||||
result[SD.TRACKS] = get_tracks_from_frames(nuscenes, scene_info, frames, num_to_interpolate=5)
|
result[SD.TRACKS] = get_tracks_from_frames(nuscenes, scene_info, frames, num_to_interpolate=5)
|
||||||
result[SD.METADATA][SD.SDC_ID] = "ego"
|
result[SD.METADATA][SD.SDC_ID] = "ego"
|
||||||
|
|
||||||
# TODO Traffic Light
|
# No traffic light in nuscenes at this stage
|
||||||
result[SD.DYNAMIC_MAP_STATES] = {}
|
result[SD.DYNAMIC_MAP_STATES] = {}
|
||||||
|
|
||||||
# map
|
# map
|
||||||
|
|||||||
@@ -4,12 +4,14 @@ MetaDrive.
|
|||||||
"""
|
"""
|
||||||
import os.path
|
import os.path
|
||||||
|
|
||||||
|
try:
|
||||||
from nuscenes import NuScenes
|
from nuscenes import NuScenes
|
||||||
|
except ImportError:
|
||||||
|
raise ImportError("nuscenes-devkit has to be set up before running data conversion")
|
||||||
from scenarionet import SCENARIONET_DATASET_PATH
|
from scenarionet import SCENARIONET_DATASET_PATH
|
||||||
from scenarionet.converter.nuscenes.utils import convert_nuscenes_scenario
|
from scenarionet.converter.nuscenes.utils import convert_nuscenes_scenario
|
||||||
from scenarionet.converter.utils import write_to_directory
|
from scenarionet.converter.utils import write_to_directory
|
||||||
|
|
||||||
#
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
output_path = os.path.join(SCENARIONET_DATASET_PATH, "nuscenes")
|
output_path = os.path.join(SCENARIONET_DATASET_PATH, "nuscenes")
|
||||||
version = 'v1.0-mini'
|
version = 'v1.0-mini'
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ def mph_to_kmh(speed_in_mph: float):
|
|||||||
|
|
||||||
def get_agent_summary(state_dict, id, type):
|
def get_agent_summary(state_dict, id, type):
|
||||||
track = state_dict["position"]
|
track = state_dict["position"]
|
||||||
valid_track = track[state_dict["valid"], :2]
|
valid_track = track[state_dict["valid"].astype(int), :2]
|
||||||
distance = float(sum(np.linalg.norm(valid_track[i] - valid_track[i + 1]) for i in range(valid_track.shape[0] - 1)))
|
distance = float(sum(np.linalg.norm(valid_track[i] - valid_track[i + 1]) for i in range(valid_track.shape[0] - 1)))
|
||||||
valid_length = int(sum(state_dict["valid"]))
|
valid_length = int(sum(state_dict["valid"]))
|
||||||
|
|
||||||
@@ -173,10 +173,11 @@ def write_to_directory(convert_func,
|
|||||||
|
|
||||||
# rename and save
|
# rename and save
|
||||||
if delay_remove is not None:
|
if delay_remove is not None:
|
||||||
|
assert delay_remove == save_path
|
||||||
shutil.rmtree(delay_remove)
|
shutil.rmtree(delay_remove)
|
||||||
os.rename(output_path, save_path)
|
os.rename(output_path, save_path)
|
||||||
summary_file = os.path.join(save_path, summary_file)
|
summary_file = os.path.join(save_path, summary_file)
|
||||||
with open(summary_file, "wb") as file:
|
with open(summary_file, "wb") as file:
|
||||||
pickle.dump(dict_recursive_remove_array(metadata_recorder), file)
|
pickle.dump(dict_recursive_remove_array(metadata_recorder), file)
|
||||||
print("Summary is saved at: {}".format(summary_file))
|
print("Summary is saved at: {}".format(summary_file))
|
||||||
assert delay_remove == save_path
|
|
||||||
|
|||||||
Reference in New Issue
Block a user