Example: Cooperative Perception#
Cooperative perception can extend the environment model of a vehicle beyond its own field of view by adding sensor data from other traffic participants and roadside infrastructure. This example shows the simulated version of the real-world intersection RITA at RWTH Aachenโs Campus Melaten. Four stationary roadside infrastructure station units (sRISUs) observe the intersection from fixed masts, while the ego_vehicle can pass through it with its own sensor rack.
Component |
Role |
|---|---|
|
Research vehicle with a sensor rack, controlled in closed loop by OpenADStack |
|
Roadside units observing the intersection from four corners |
Important
Cooperative perception is supported only with CARLA. Make sure that the OpenADS system requirements are met before starting.
Sensor Layouts#
Two layouts are available. The minimal layout spawns the physical sensor platform only at srisu2, reducing the runtime cost substantially. All four roadside units publish their ideal V2X object lists in both layouts.
Layout |
Lidars and cameras |
V2X object lists |
Use case |
|---|---|---|---|
Minimal ( |
|
all four units |
Default, lower computational load |
All ( |
all four units |
all four units |
Complete sensor setup |
Getting Started#
Start the predefined configuration from the repository root:
docker compose --env-file examples/cooperative-perception/.env up -d
To use the full sensor layout, replace
rita-minimal.jsonwithrita-all.jsonin the example.envfile.Note
The
ego_vehicleremains stationary after startup by design. Thetrafficprofile generates background traffic but does not assign a route to the ego vehicle. To let OpenADStack drive the ego vehicle through this traffic, use the Plan Route tool in RViz to set a destination.Inspect the intersection in RViz. The appropriate RViz configuration is selected automatically from the sensor file. With
rita-minimal.json, roadside camera images and point clouds are available only forsrisu2. Withrita-all.json, they are available for all four roadside units and can be enabled individually in the common frame alongside the ego vehicle sensors.
Available point clouds in the full cooperative-perception sensor layout, including all roadside units and thekarl.In both layouts, every roadside station publishes objects within its range via its own V2X object list topic. You can view the identified objects for each station.

Stop the simulation when finished:
docker compose --env-file examples/cooperative-perception/.env down
Outlook#
Fusing the roadside data: point_cloud_fusion currently combines the four lidars of the ego vehicle. Since it takes an arbitrary list of input topics and transforms them into a common target_frame, the roadside point clouds could be early-fused in this node.
Compliance with the ETSI-ITS standard: The V2X object lists are published in the ObjectList format at the moment. With the etsi_its_messages package they can be converted into ETSI ITS Collective Perception Messages (CPM), the format real roadside stations actually broadcast. Once the object lists travel as CPMs, the simulated units become interchangeable with real ones from the perspective of the receiving stack.
Towards the real-world testfield: The four sRISUs are modelled after the RITA roadside infrastructure installed at an intersection of RWTH Aachenโs Campus Melaten. Perception and fusion approaches developed in this example can therefore be carried over to the physical testfield, with the simulation serving as the place to iterate before moving to real hardware.