classes.sensors package

This package implements different sensors classes to be used with the HUD for the pygame user interface, as well as the rss_sensor.RssSensor.

class classes.sensors.CustomSensorInterface[source]

Bases: object

This is a mixin for classes like the camera_manager.CameraManager or the classes.sensors.rss_sensor.RssSensor that either wrap around a carla.Sensor or should have a similar interface.

Attention

Not to be confused with srunner.autoagents.sensor_interface.SensorInterface.

sensor: carla.Sensor
destroy() bool | Literal['Actor was probably destroyed by the CarlaDataProvider'] | None[source]

Stops and destroys the actor of the sensor

Return type:

bool | Literal[“Actor was probably destroyed by the CarlaDataProvider”] | None

stop() None[source]

Stop the sensor if its in listening mode. If it is a carla.Sensor, calls the simulator.

Return type:

None

Subpackages

Submodules

classes.sensors.rss_sensor module

class classes.sensors.rss_sensor.RssStateInfo(rss_state: carla.ad.rss.state.RssState, ego_dynamics_on_route: carla.RssEgoDynamicsOnRoute, world_model: carla.ad.rss.world.WorldModel)[source]

Bases: object

Parameters:
__init__(rss_state: carla.ad.rss.state.RssState, ego_dynamics_on_route: carla.RssEgoDynamicsOnRoute, world_model: carla.ad.rss.world.WorldModel) None[source]
Parameters:
  • rss_state (carla.ad.rss.state.RssState)

  • ego_dynamics_on_route (carla.RssEgoDynamicsOnRoute)

  • world_model (carla.ad.rss.world.WorldModel)

Return type:

None

get_actor(world: carla.World) carla.Actor | None[source]
Parameters:

world (carla.World)

Return type:

carla.Actor | None

class classes.sensors.rss_sensor.RssSensor(parent_actor: carla.Vehicle, unstructured_scene_visualizer: RssUnstructuredSceneVisualizer, bounding_box_visualizer: RssBoundingBoxVisualizer, state_visualizer: RssStateVisualizer, *, visualizer_mode: RssDebugVisualizationMode = RssDebugVisualizationMode.Off, routing_targets: Iterable[carla.Transform] | None = None, log_level: carla.RssLogLevel = RssLogLevel.off)[source]

Bases: CustomSensorInterface

Parameters:
__init__(parent_actor: carla.Vehicle, unstructured_scene_visualizer: RssUnstructuredSceneVisualizer, bounding_box_visualizer: RssBoundingBoxVisualizer, state_visualizer: RssStateVisualizer, *, visualizer_mode: RssDebugVisualizationMode = RssDebugVisualizationMode.Off, routing_targets: Iterable[carla.Transform] | None = None, log_level: carla.RssLogLevel = RssLogLevel.off)[source]
Parameters:
sensor: carla.RssSensor
destroy()[source]

Stops and destroys the actor of the sensor

toggle_debug_visualization_mode()[source]
increase_log_level()[source]
decrease_log_level()[source]
increase_map_log_level()[source]
decrease_map_log_level()[source]
drop_route()[source]
stop() None

Stop the sensor if its in listening mode. If it is a carla.Sensor, calls the simulator.

Return type:

None

static get_default_parameters() carla.ad.rss.world.RssDynamics[source]
Return type:

carla.ad.rss.world.RssDynamics

set_default_parameters()[source]
static get_pedestrian_parameters() carla.ad.rss.world.RssDynamics[source]
Return type:

carla.ad.rss.world.RssDynamics

get_steering_ranges() List[Tuple[float, float]][source]
Return type:

List[Tuple[float, float]]

classes.sensors.rss_visualization module

This module is based on the RSS example shipped with CARLA.

class classes.sensors.rss_visualization.Color[source]

Bases: object

black = (0, 0, 0)
gray = (128, 128, 128)
white = (255, 255, 255)
red = (255, 0, 0)
green = (0, 255, 0)
blue = (0, 0, 255)
carla_gray = 150
carla_red = 255
carla_green = 0
carla_blue = 0
class classes.sensors.rss_visualization.RssUnstructuredSceneVisualizerMode(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

disabled = 1
window = 2
fullscreen = 3
class classes.sensors.rss_visualization.RssUnstructuredSceneVisualizer(parent_actor: carla.Actor, world, display_dimensions: tuple[int, int], gamma_correction: float = 2.2)[source]

Bases: CanBeDummy, CustomSensorInterface

Provides a top-view over the setting?

Parameters:
__init__(parent_actor: carla.Actor, world, display_dimensions: tuple[int, int], gamma_correction: float = 2.2)[source]
Parameters:
property sensor: carla.Sensor
destroy()[source]

Stops and destroys the actor of the sensor

restart(mode)[source]
update_surface(cam_frame: int | None, rss_frame: int | None)[source]
Parameters:
  • cam_frame (int | None)

  • rss_frame (int | None)

toggle_camera()[source]
static rotate_around_point(xy, radians, origin)[source]

Rotate a point around a given point.

tick(frame, rss_response, allowed_heading_ranges)[source]
render(display)[source]
static draw_heading_range(heading_range, ego_dynamics_on_route)[source]
static get_trajectory_sets(rss_state_snapshot: carla.ad.rss.state.RssStateSnapshot, camera_transform, calibration)[source]

Creates 3D bounding boxes based on carla vehicle list and camera.

Parameters:

rss_state_snapshot (carla.ad.rss.state.RssStateSnapshot)

static draw_lines(surface, lines)[source]

Draws lines on pygame display.

static draw_polygons(surface, polygons)[source]

Draws polygons on pygame display.

static transform_points(world_cords, camera_transform, calibration)[source]

Returns trajectory set projected to camera view

classmethod is_dummy(obj: Any) TypeGuard[MockDummy]

TypeGuard check if a variable is a duck-typed dummy object.

Objects might be dummy objects that have no function if LaunchConfig.pygame is set to False.

Parameters:

obj (Any)

Return type:

TypeGuard[MockDummy]

is_dummy_: bool = False
stop() None

Stop the sensor if its in listening mode. If it is a carla.Sensor, calls the simulator.

Return type:

None

class classes.sensors.rss_visualization.RssDebugVisualizationMode(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

Off = 1
RouteOnly = 2
VehicleStateOnly = 3
VehicleStateAndRoute = 4
All = 5
class classes.sensors.rss_visualization.RssDebugVisualizer(player: carla.Vehicle, world: carla.World, visualization_mode: RssDebugVisualizationMode | str | int = RssDebugVisualizationMode.Off)[source]

Bases: object

Parameters:
__init__(player: carla.Vehicle, world: carla.World, visualization_mode: RssDebugVisualizationMode | str | int = RssDebugVisualizationMode.Off)[source]
Parameters:
toggleMode()[source]
tick(route, dangerous, individual_rss_states, ego_dynamics_on_route)[source]
visualize_route(dangerous: bool, route: ad.map.route.FullRoute | None)[source]
Parameters:
  • dangerous (bool)

  • route (Optional[ad.map.route.FullRoute])

visualize_enu_edge(edge, color, z_offset)[source]
visualize_rss_results(state_snapshot: Iterable[RssStateInfo])[source]
Parameters:

state_snapshot (Iterable[RssStateInfo])

visualize_ego_dynamics(ego_dynamics_on_route)[source]