Skip to content
Snippets Groups Projects
Commit 0ea753cc authored by sacardoz's avatar sacardoz
Browse files

occlusion manager changes

parent 602cb676
No related branches found
No related tags found
2 merge requests!21Major changes. convert nuplan devkit to handle occlusions for project,!1Shea occlusion manager
......@@ -2,7 +2,7 @@
from omegaconf import DictConfig
from nuplan.planning.scenario_builder.abstract_scenario import AbstractScenario
from nuplan.planning.simulation.occlusion.occlusion_manager import AbstractOcclusionManager
from nuplan.planning.simulation.occlusion.abstract_occlusion_manager import AbstractOcclusionManager
from nuplan.planning.simulation.occlusion.range_occlusion_manager import RangeOcclusionManager
def build_occlusion_manager(occlusion_cfg: DictConfig, scenario: AbstractScenario) -> AbstractOcclusionManager:
......
......@@ -17,7 +17,7 @@ from nuplan.planning.simulation.callback.metric_callback import MetricCallback
from nuplan.planning.simulation.callback.multi_callback import MultiCallback
from nuplan.planning.simulation.controller.abstract_controller import AbstractEgoController
from nuplan.planning.simulation.observation.abstract_observation import AbstractObservation
from nuplan.planning.simulation.occlusion.occlusion_manager import AbstractOcclusionManager
from nuplan.planning.simulation.occlusion.abstract_occlusion_manager import AbstractOcclusionManager
from nuplan.planning.simulation.planner.abstract_planner import AbstractPlanner
from nuplan.planning.simulation.runner.simulations_runner import SimulationRunner
from nuplan.planning.simulation.simulation import Simulation
......
......@@ -11,24 +11,38 @@ from nuplan.planning.simulation.observation.observation_type import DetectionsTr
class AbstractOcclusionManager(metaclass=ABCMeta):
"""
Interface for a generic occlusion manager.
"""
def __init__(
self,
scenario: AbstractScenario
):
self._masks = {}
self._visible_agent_cache = {}
self.scenario = scenario
def reset(self) -> None:
self._masks = {}
"""
Resets occlusion manager cache.
"""
self._visible_agent_cache = {}
def occlude_input(self, input_buffer: SimulationHistoryBuffer) -> SimulationHistoryBuffer:
"""
Occludes SimulationHistoryBuffer input. Loops through each timestep defined by time_us,
checks to see if timestep is already contained in _visible_agent_cache and computes
occlusions if not, and occludes timestep using cached results. Repacks output in
SimulationHistoryBuffer.
"""
ego_state_buffer = input_buffer.ego_state_buffer
observations_buffer = input_buffer.observation_buffer
sample_interval = input_buffer.sample_interval
for ego_state, observations in zip(ego_state_buffer, observations_buffer):
if ego_state.time_us not in self._masks:
self._masks[ego_state.time_us] = self._compute_mask(ego_state, observations)
if ego_state.time_us not in self._visible_agent_cache:
self._visible_agent_cache[ego_state.time_us] = self._compute_mask(ego_state, observations)
output_buffer = SimulationHistoryBuffer(ego_state_buffer, \
deque([self._mask_input(ego_state.time_us, observations) for ego_state, observations in zip(ego_state_buffer, observations_buffer)]), \
......@@ -41,14 +55,16 @@ class AbstractOcclusionManager(metaclass=ABCMeta):
pass
def _mask_input(self, time_us: int, observations: DetectionsTracks) -> DetectionsTracks:
assert time_us in self._masks, "Attempted to mask non-cached timestep!"
"""
Occludes observations at timestep time_us based on cached occlusions.
"""
assert time_us in self._visible_agent_cache, "Attempted to mask non-cached timestep!"
assert isinstance(observations, DetectionsTracks), "Occlusions only support DetectionsTracks."
mask = self._masks[time_us]
mask = self._visible_agent_cache[time_us]
tracks = observations.tracked_objects.tracked_objects
visible_tracks = [track for track in tracks if track.metadata.track_token in mask]
return DetectionsTracks(tracked_objects=TrackedObjects(visible_tracks))
from nuplan.common.actor_state.ego_state import EgoState
from nuplan.planning.simulation.observation.observation_type import DetectionsTracks, Observation
from nuplan.planning.simulation.occlusion.occlusion_manager import AbstractOcclusionManager
from nuplan.planning.scenario_builder.abstract_scenario import AbstractScenario
from nuplan.planning.simulation.observation.observation_type import DetectionsTracks
from nuplan.planning.simulation.occlusion.abstract_occlusion_manager import AbstractOcclusionManager
class RangeOcclusionManager(AbstractOcclusionManager):
"""
Range occlusion manager. Occludes all objects outside of a given
range of the ego.
"""
def __init__(
self,
scenario: AbstractScenario,
range_threshold: float = 25
):
super().__init__(scenario)
self.range_threshold = range_threshold
def _compute_mask(self, ego_state: EgoState, observations: DetectionsTracks) -> set:
not_occluded = set()
for track in observations.tracked_objects.tracked_objects:
if (ego_state.center.x - track.center.x) ** 2 + (ego_state.center.y - track.center.y) ** 2 <= 500:
if ((ego_state.center.x - track.center.x) ** 2 + \
(ego_state.center.y - track.center.y) ** 2) ** 0.5 <= self.range_threshold:
not_occluded.add(track.metadata.track_token)
return not_occluded
\ No newline at end of file
return not_occluded
\ No newline at end of file
......@@ -3,7 +3,7 @@ from dataclasses import dataclass
from nuplan.planning.scenario_builder.abstract_scenario import AbstractScenario
from nuplan.planning.simulation.controller.abstract_controller import AbstractEgoController
from nuplan.planning.simulation.observation.abstract_observation import AbstractObservation
from nuplan.planning.simulation.occlusion.occlusion_manager import AbstractOcclusionManager
from nuplan.planning.simulation.occlusion.abstract_occlusion_manager import AbstractOcclusionManager
from nuplan.planning.simulation.planner.abstract_planner import AbstractPlanner
from nuplan.planning.simulation.simulation_time_controller.abstract_simulation_time_controller import (
AbstractSimulationTimeController,
......
%% Cell type:markdown id:34460db1 tags:
# Creating a new planner in nuPlan <a name="introduction"></a>
%% Cell type:markdown id:f0189156 tags:
## Setup
%% Cell type:code id:373ffd1c tags:
``` python
# Useful imports
import os
import hydra
import nest_asyncio
from IPython.core.display import display, HTML
from bokeh.io import output_notebook
```
%% Output
/tmp/ipykernel_11668/4095267831.py:5: DeprecationWarning: Importing display from IPython.core.display is deprecated since IPython 7.14, please import from IPython display
/tmp/ipykernel_4691/4095267831.py:5: DeprecationWarning: Importing display from IPython.core.display is deprecated since IPython 7.14, please import from IPython display
from IPython.core.display import display, HTML
%% Cell type:code id:13c00121 tags:
``` python
nest_asyncio.apply()
output_notebook()
display(HTML("<style>.output_result { max-width:100% !important; }</style>"))
display(HTML("<style>.container { width:100% !important; }</style>"))
```
%% Output
%% Cell type:markdown id:128b0d15 tags:
# Simulating the planner <a name="simulation"></a>
%% Cell type:markdown id:db337ceb tags:
## Prepare the simulation config
%% Cell type:code id:11b08c6d tags:
``` python
from tutorials.utils.tutorial_utils import construct_simulation_hydra_paths
# Location of paths with all simulation configs
BASE_CONFIG_PATH = os.path.join(os.getenv('NUPLAN_TUTORIAL_PATH', ''), './nuplan/planning/script')
simulation_hydra_paths = construct_simulation_hydra_paths(BASE_CONFIG_PATH)
# Create a temporary directory to store the simulation artifacts
DATASET_PARAMS = [
'scenario_builder=nuplan_mini', # use nuplan mini database (2.5h of 8 autolabeled logs in Las Vegas)
'scenario_filter=one_continuous_log', # simulate only one log
"scenario_filter.log_names=['2021.06.14.16.48.02_veh-12_04057_04438']",
'scenario_filter.limit_total_scenarios=1', # use 1 total scenarios
]
ckpt_dir = '/home/sacardoz/checkpoints/pdm_offset_checkpoint.ckpt'
#'/home/sacardoz/checkpoints/urbandriver_checkpoint.ckpt'
#"/home/sacardoz/tutorial_vector_framework/training_simple_vector_experiment/train_default_simple_vector/2023.11.23.09.55.21/best_model/epoch.ckpt"
#"/home/sacardoz/training_raster_experiment/train_default_raster/2023.11.23.07.36.36/best_model/epoch.ckpt"
# Initialize configuration management system
hydra.core.global_hydra.GlobalHydra.instance().clear() # reinitialize hydra if already initialized
hydra.initialize(config_path=simulation_hydra_paths.config_path)
# Compose the configuration
cfg = hydra.compose(config_name=simulation_hydra_paths.config_name, overrides=[
'+simulation=closed_loop_reactive_agents',
#'model=pgm_hybrid_model',
'planner=pdm_hybrid_planner',
f"planner.pdm_hybrid_planner.checkpoint_path={ckpt_dir}" ,
#'planner.ml_planner.model_config=${model}',
#f'planner.ml_planner.checkpoint_path={ckpt_dir}',
#f'observation=idm_agents_observation',
#'observation.model_config=${model}',
#f'observation.checkpoint_path={ckpt_dir}',
'worker=sequential',
'+occlusion=true',
"hydra.searchpath=[pkg://tuplan_garage.planning.script.config.common, pkg://tuplan_garage.planning.script.config.simulation, pkg://nuplan.planning.script.config.common, pkg://nuplan.planning.script.experiments]",
*DATASET_PARAMS,
])
```
%% Cell type:markdown id:88231b74 tags:
## Launch simulation (within the notebook)
%% Cell type:code id:161cc166 tags:
``` python
from nuplan.planning.script.run_simulation import build_simulation_runners
from nuplan.common.actor_state.tracked_objects_types import AGENT_TYPES, STATIC_OBJECT_TYPES, TrackedObjectType
# Run the simulation loop (real-time visualization not yet supported, see next section for visualization)
runners, common_builder, cfg = build_simulation_runners(cfg)
```
%% Output
INFO:nuplan.planning.script.utils:Setting default NUPLAN_DATA_ROOT: /home/sacardoz/nuplan/dataset
INFO:nuplan.planning.script.utils:Setting default NUPLAN_EXP_ROOT: /home/sacardoz/nuplan/exp
Global seed set to 0
INFO:nuplan.planning.script.builders.main_callback_builder:Building MultiMainCallback...
INFO:nuplan.planning.script.builders.main_callback_builder:Building MultiMainCallback: 4...DONE!
2023-11-24 15:55:34,469 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/worker_pool_builder.py:19} Building WorkerPool...
2023-11-24 15:55:34,470 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/utils/multithreading/worker_pool.py:101} Worker: Sequential
2023-11-24 15:55:34,470 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/utils/multithreading/worker_pool.py:102} Number of nodes: 1
2023-11-28 10:52:47,443 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/worker_pool_builder.py:19} Building WorkerPool...
2023-11-28 10:52:47,444 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/utils/multithreading/worker_pool.py:101} Worker: Sequential
2023-11-28 10:52:47,444 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/utils/multithreading/worker_pool.py:102} Number of nodes: 1
Number of CPUs per node: 1
Number of GPUs per node: 0
Number of threads across all nodes: 1
2023-11-24 15:55:34,470 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/worker_pool_builder.py:27} Building WorkerPool...DONE!
2023-11-24 15:55:34,470 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/folder_builder.py:32} Building experiment folders...
2023-11-24 15:55:34,470 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/folder_builder.py:35}
2023-11-28 10:52:47,444 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/worker_pool_builder.py:27} Building WorkerPool...DONE!
2023-11-28 10:52:47,444 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/folder_builder.py:32} Building experiment folders...
2023-11-28 10:52:47,445 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/folder_builder.py:35}
Folder where all results are stored: /home/sacardoz/nuplan/exp/exp/simulation/closed_loop_reactive_agents/2023.11.24.15.55.34
Folder where all results are stored: /home/sacardoz/nuplan/exp/exp/simulation/closed_loop_reactive_agents/2023.11.28.10.52.46
2023-11-24 15:55:34,472 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/folder_builder.py:70} Building experiment folders...DONE!
2023-11-24 15:55:34,472 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_callback_builder.py:52} Building AbstractCallback...
2023-11-24 15:55:34,472 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_callback_builder.py:68} Building AbstractCallback: 0...DONE!
2023-11-24 15:55:34,472 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:49} Building simulations...
2023-11-24 15:55:34,472 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:55} Extracting scenarios...
2023-11-24 15:55:34,473 INFO {/home/sacardoz/nuplan-devkit/nuplan/common/utils/distributed_scenario_filter.py:83} Building Scenarios in mode DistributedMode.SINGLE_NODE
2023-11-24 15:55:34,473 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_building_builder.py:18} Building AbstractScenarioBuilder...
2023-11-24 15:55:34,484 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_building_builder.py:21} Building AbstractScenarioBuilder...DONE!
2023-11-24 15:55:34,484 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_filter_builder.py:35} Building ScenarioFilter...
2023-11-24 15:55:34,485 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_filter_builder.py:44} Building ScenarioFilter...DONE!
2023-11-24 15:55:34,503 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:76} Building metric engines...
2023-11-24 15:55:34,527 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:78} Building metric engines...DONE
2023-11-24 15:55:34,527 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:82} Building simulations from 1 scenarios...
2023-11-24 15:55:35,102 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:142} Building simulations...DONE!
2023-11-28 10:52:47,446 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/folder_builder.py:70} Building experiment folders...DONE!
2023-11-28 10:52:47,446 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_callback_builder.py:52} Building AbstractCallback...
2023-11-28 10:52:47,446 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_callback_builder.py:68} Building AbstractCallback: 0...DONE!
2023-11-28 10:52:47,446 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:49} Building simulations...
2023-11-28 10:52:47,447 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:55} Extracting scenarios...
2023-11-28 10:52:47,447 INFO {/home/sacardoz/nuplan-devkit/nuplan/common/utils/distributed_scenario_filter.py:83} Building Scenarios in mode DistributedMode.SINGLE_NODE
2023-11-28 10:52:47,447 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_building_builder.py:18} Building AbstractScenarioBuilder...
2023-11-28 10:52:47,460 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_building_builder.py:21} Building AbstractScenarioBuilder...DONE!
2023-11-28 10:52:47,460 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_filter_builder.py:35} Building ScenarioFilter...
2023-11-28 10:52:47,462 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/scenario_filter_builder.py:44} Building ScenarioFilter...DONE!
2023-11-28 10:52:47,506 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:76} Building metric engines...
2023-11-28 10:52:47,534 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:78} Building metric engines...DONE
2023-11-28 10:52:47,535 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:82} Building simulations from 1 scenarios...
2023-11-28 10:52:48,385 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/script/builders/simulation_builder.py:142} Building simulations...DONE!
%% Cell type:code id:223284d4 tags:
``` python
runner = runners[0]
```
%% Cell type:code id:90b79421 tags:
``` python
runner.simulation.callback.on_simulation_start(runner.simulation.setup)
# Initialize all simulations
runner._initialize()
while runner.simulation.is_simulation_running():
# Execute specific callback
runner.simulation.callback.on_step_start(runner.simulation.setup, runner.planner)
# Perform step
planner_input = runner._simulation.get_planner_input()
# Execute specific callback
runner._simulation.callback.on_planner_start(runner.simulation.setup, runner.planner)
# Plan path based on all planner's inputs
trajectory = runner.planner.compute_trajectory(planner_input)
# Propagate simulation based on planner trajectory
runner._simulation.callback.on_planner_end(runner.simulation.setup, runner.planner, trajectory)
iteration = runner.simulation._time_controller.get_iteration()
runner.simulation.propagate(trajectory)
# Execute specific callback
runner.simulation.callback.on_step_end(runner.simulation.setup, runner.planner, runner.simulation.history.last())
runner.simulation.callback.on_simulation_end(runner.simulation.setup, runner.planner, runner.simulation.history)
```
%% Output
%% Cell type:code id:e6c22f5f tags:
``` python
from tutorials.utils.tutorial_utils import visualize_history
if runner.simulation._occlusion_manager:
runner.simulation._history.occlusion_masks = runner.simulation._occlusion_manager._masks
runner.simulation._history.occlusion_masks = runner.simulation._occlusion_manager._visible_agent_cache
visualize_history(runner.simulation._history, runner.scenario, bokeh_port=8888)
```
%% Output
INFO:bokeh.server.server:Starting Bokeh server version 2.4.3 (running on Tornado 6.3.3)
WARNING:bokeh.server.util:Host wildcard '*' will allow connections originating from multiple (or possibly all) hostnames or IPs. Use non-wildcard values to restrict access explicitly
INFO:bokeh.server.tornado:User authentication hooks NOT provided (default user enabled)
2023-11-24 15:56:35,057 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,057 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,058 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'tutorials/media/nuplan_flow.svg'. Is this a 'parquet' file?: Could not open Parquet input source 'tutorials/media/nuplan_flow.svg': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,058 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,059 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,059 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'docs/Makefile'. Is this a 'parquet' file?: Could not open Parquet input source 'docs/Makefile': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,059 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,059 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet file size is 0 bytes
2023-11-24 15:56:35,060 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'tox/requirements_pythonlint.txt'. Is this a 'parquet' file?: Could not open Parquet input source 'tox/requirements_pythonlint.txt': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,060 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,060 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,060 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,061 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,061 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,061 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,061 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,062 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,070 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'nuplan/BUILD'. Is this a 'parquet' file?: Could not open Parquet input source 'nuplan/BUILD': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,071 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from '.git/HEAD'. Is this a 'parquet' file?: Could not open Parquet input source '.git/HEAD': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,072 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,072 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,072 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,073 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,073 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,073 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,074 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'nuplan_devkit.egg-info/PKG-INFO'. Is this a 'parquet' file?: Could not open Parquet input source 'nuplan_devkit.egg-info/PKG-INFO': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,075 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} 'planner_name'
2023-11-24 15:56:35,075 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,075 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,076 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet file size is 0 bytes
2023-11-24 15:56:35,076 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,077 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,077 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,077 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,078 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from '.github/ISSUE_TEMPLATE/bug_report.md'. Is this a 'parquet' file?: Could not open Parquet input source '.github/ISSUE_TEMPLATE/bug_report.md': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,079 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-24 15:56:35,089 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/simulation_tile.py:172} Minimum frame time=0.017 s
2023-11-28 10:53:54,443 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,444 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,446 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'tutorials/media/nuplan_flow.svg'. Is this a 'parquet' file?: Could not open Parquet input source 'tutorials/media/nuplan_flow.svg': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,447 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,447 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,447 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'docs/Makefile'. Is this a 'parquet' file?: Could not open Parquet input source 'docs/Makefile': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,448 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,448 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet file size is 0 bytes
2023-11-28 10:53:54,448 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'tox/requirements_pythonlint.txt'. Is this a 'parquet' file?: Could not open Parquet input source 'tox/requirements_pythonlint.txt': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,449 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,450 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,450 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,450 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,451 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,453 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,453 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,454 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,454 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,454 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,462 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'nuplan/BUILD'. Is this a 'parquet' file?: Could not open Parquet input source 'nuplan/BUILD': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,467 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from '.git/COMMIT_EDITMSG'. Is this a 'parquet' file?: Could not open Parquet input source '.git/COMMIT_EDITMSG': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,468 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,468 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,469 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,469 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,470 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,470 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,471 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'nuplan_devkit.egg-info/PKG-INFO'. Is this a 'parquet' file?: Could not open Parquet input source 'nuplan_devkit.egg-info/PKG-INFO': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,473 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} 'planner_name'
2023-11-28 10:53:54,474 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from 'henry_experiments/pretrained_checkpoints/gc_pgp_checkpoint.ckpt'. Is this a 'parquet' file?: Could not open Parquet input source 'henry_experiments/pretrained_checkpoints/gc_pgp_checkpoint.ckpt': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,475 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,475 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,475 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet file size is 0 bytes
2023-11-28 10:53:54,476 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,476 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,476 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,477 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Error creating dataset. Could not read schema from '.github/ISSUE_TEMPLATE/bug_report.md'. Is this a 'parquet' file?: Could not open Parquet input source '.github/ISSUE_TEMPLATE/bug_report.md': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,477 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/experiment_file_data.py:140} Could not open Parquet input source '<Buffer>': Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file.
2023-11-28 10:53:54,489 INFO {/home/sacardoz/nuplan-devkit/nuplan/planning/nuboard/base/simulation_tile.py:172} Minimum frame time=0.017 s
Rendering a scenario: 100%|██████████| 1/1 [00:00<00:00, 5.00it/s]
Rendering a scenario: 100%|██████████| 1/1 [00:00<00:00, 44.32it/s]
WARNING:bokeh.core.validation.check:W-1000 (MISSING_RENDERERS): Plot has no renderers: Figure(id='1005', ...)
INFO:tornado.access:200 GET /autoload.js?bokeh-autoload-element=1003&bokeh-absolute-url=http://localhost:8888&resources=none (::1) 1055.84ms
INFO:bokeh.server.views.ws:WebSocket connection opened
INFO:bokeh.server.views.ws:ServerConnection created
INFO:tornado.access:101 GET /ws?id=583b91c1-44e7-4030-9ddc-acb743fb59ea&origin=da2f890a-eb18-4637-9199-dd0f06169aef&swVersion=4&extensionId=&platform=electron&vscode-resource-base-authority=vscode-resource.vscode-cdn.net&parentOrigin=vscode-file%3A%2F%2Fvscode-app&purpose=notebookRenderer (::1) 0.75ms
INFO:tornado.access:200 GET /autoload.js?bokeh-autoload-element=1003&bokeh-absolute-url=http://localhost:8888&resources=none (::1) 1240.23ms
2023-11-24 15:56:36,101 INFO {/home/sacardoz/miniconda3/envs/nuplan/lib/python3.9/site-packages/tornado/web.py:2344} 200 GET /autoload.js?bokeh-autoload-element=1003&bokeh-absolute-url=http://localhost:8888&resources=none (::1) 1055.84ms
2023-11-24 15:56:36,116 INFO {/home/sacardoz/nuplan-devkit/tutorials/utils/tutorial_utils.py:266} Done rendering!
2023-11-24 15:56:36,278 INFO {/home/sacardoz/miniconda3/envs/nuplan/lib/python3.9/site-packages/tornado/web.py:2344} 101 GET /ws?id=583b91c1-44e7-4030-9ddc-acb743fb59ea&origin=da2f890a-eb18-4637-9199-dd0f06169aef&swVersion=4&extensionId=&platform=electron&vscode-resource-base-authority=vscode-resource.vscode-cdn.net&parentOrigin=vscode-file%3A%2F%2Fvscode-app&purpose=notebookRenderer (::1) 0.75ms
2023-11-28 10:53:55,651 INFO {/home/sacardoz/miniconda3/envs/nuplan/lib/python3.9/site-packages/tornado/web.py:2344} 200 GET /autoload.js?bokeh-autoload-element=1003&bokeh-absolute-url=http://localhost:8888&resources=none (::1) 1240.23ms
2023-11-28 10:53:55,661 INFO {/home/sacardoz/nuplan-devkit/tutorials/utils/tutorial_utils.py:267} Done rendering!
2023-11-28 10:53:55,662 INFO {/home/sacardoz/miniconda3/envs/nuplan/lib/python3.9/site-packages/tornado/web.py:2344} 101 GET /ws?id=bc2a9004-8c61-4fce-94eb-6c0fad2158fa&origin=da2f890a-eb18-4637-9199-dd0f06169aef&swVersion=4&extensionId=&platform=electron&vscode-resource-base-authority=vscode-resource.vscode-cdn.net&parentOrigin=vscode-file%3A%2F%2Fvscode-app&purpose=notebookRenderer (::1) 0.62ms
INFO:tornado.access:101 GET /ws?id=bc2a9004-8c61-4fce-94eb-6c0fad2158fa&origin=da2f890a-eb18-4637-9199-dd0f06169aef&swVersion=4&extensionId=&platform=electron&vscode-resource-base-authority=vscode-resource.vscode-cdn.net&parentOrigin=vscode-file%3A%2F%2Fvscode-app&purpose=notebookRenderer (::1) 0.62ms
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment