├── .dockerignore ├── .gitmodules ├── CHANGELOG.md ├── Dockerfile ├── LICENSE ├── README.md ├── build.sh ├── carla-autoware-agent ├── CMakeLists.txt ├── agent │ ├── bridge.launch │ ├── config │ │ └── sensors.json │ ├── launch │ │ ├── my_detection.launch │ │ ├── my_localization.launch │ │ ├── my_map.launch │ │ ├── my_mission_planning.launch │ │ ├── my_motion_planning.launch │ │ └── my_sensing.launch │ ├── my_agent.launch │ └── rviz │ │ └── config.rviz ├── launch │ └── carla_autoware_agent.launch └── package.xml ├── docs └── images │ └── carla_autoware.png ├── run.sh └── update_sim.patch /.dockerignore: -------------------------------------------------------------------------------- 1 | .git/* 2 | autoware-contents 3 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "autoware_data"] 2 | path = autoware-contents 3 | url = https://bitbucket.org/carla-simulator/autoware-contents.git 4 | branch = master 5 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ## Latest Changes 2 | 3 | * add new autoware agent 4 | * move carla autoware code to Autoware.ai gitlab 5 | * carla_points_map_loader: replace /carla/map (msg: CarlaMapInfo) by /carla/world_info (msg: CarlaWorldInfo) 6 | * fix GNSS position in manual control 7 | * integrate headless Carla client into ros launch file 8 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | ARG AUTOWARE_VERSION=1.14.0-melodic-cuda 2 | 3 | FROM autoware/autoware:$AUTOWARE_VERSION 4 | 5 | WORKDIR /home/autoware 6 | 7 | # Update simulation repo to latest master. 8 | COPY --chown=autoware update_sim.patch ./Autoware 9 | RUN patch ./Autoware/autoware.ai.repos ./Autoware/update_sim.patch 10 | RUN cd ./Autoware \ 11 | && vcs import src < autoware.ai.repos \ 12 | && git --git-dir=./src/autoware/simulation/.git --work-tree=./src/autoware/simulation pull \ 13 | && source /opt/ros/melodic/setup.bash \ 14 | && AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release 15 | 16 | # CARLA PythonAPI 17 | RUN mkdir ./PythonAPI 18 | ADD --chown=autoware https://carla-releases.s3.eu-west-3.amazonaws.com/Backup/carla-0.9.10-py2.7-linux-x86_64.egg ./PythonAPI 19 | RUN echo "export PYTHON2_EGG=$(ls /home/autoware/PythonAPI | grep py2.)" >> .bashrc \ 20 | && echo "export PYTHONPATH=\$PYTHONPATH:~/PythonAPI/\$PYTHON2_EGG" >> .bashrc 21 | 22 | # CARLA ROS Bridge 23 | # There is some kind of mismatch between the ROS debian packages installed in the Autoware image and 24 | # the latest ros-melodic-ackermann-msgs and ros-melodic-derived-objects-msgs packages. As a 25 | # workaround we use a snapshot of the ROS apt repository to install an older version of the required 26 | # packages. 27 | RUN sudo rm -f /etc/apt/sources.list.d/ros1-latest.list 28 | RUN sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key 4B63CF8FDE49746E98FA01DDAD19BAB3CBF125EA 29 | RUN sudo sh -c 'echo "deb http://snapshots.ros.org/melodic/2020-08-07/ubuntu $(lsb_release -sc) main" >> /etc/apt/sources.list.d/ros-snapshots.list' 30 | RUN sudo apt-get update && sudo apt-get install -y --no-install-recommends \ 31 | python-pip \ 32 | python-wheel \ 33 | ros-melodic-ackermann-msgs \ 34 | ros-melodic-derived-object-msgs \ 35 | && sudo rm -rf /var/lib/apt/lists/* 36 | RUN pip install simple-pid pygame networkx==2.2 37 | 38 | RUN git clone -b '0.9.10.1' --recurse-submodules https://github.com/carla-simulator/ros-bridge.git 39 | 40 | # CARLA Autoware agent 41 | COPY --chown=autoware . ./carla-autoware 42 | 43 | RUN mkdir -p carla_ws/src 44 | RUN cd carla_ws/src \ 45 | && ln -s ../../ros-bridge \ 46 | && ln -s ../../carla-autoware/carla-autoware-agent \ 47 | && cd .. \ 48 | && source /opt/ros/melodic/setup.bash \ 49 | && catkin_make 50 | 51 | RUN echo "export CARLA_AUTOWARE_CONTENTS=~/autoware-contents" >> .bashrc \ 52 | && echo "source ~/carla_ws/devel/setup.bash" >> .bashrc \ 53 | && echo "source ~/Autoware/install/setup.bash" >> .bashrc 54 | 55 | CMD ["/bin/bash"] 56 | 57 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 CARLA 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Autoware in CARLA 2 | 3 | The carla autoware bridge is now hosted and maintained [here](https://github.com/Autoware-AI/simulation/tree/master/carla_simulator_bridge). 4 | 5 | This repository contains a demonstrator of an autoware agent ready to be executed with CARLA. 6 | 7 | **The carla autoware integration requires CARLA 0.9.10.1. You can download it from [here](https://github.com/carla-simulator/carla/releases/tag/0.9.10.1)** 8 | 9 | ## CARLA autoware agent 10 | The autoware agent is provided as a ROS package. All the configuration can be found inside the `carla-autoware-agent` folder. 11 | 12 | ![carla-autoware](docs/images/carla_autoware.png) 13 | 14 | The easiest way to run the agent is by building and running the provided docker image. 15 | 16 | ### Requirements 17 | 18 | - Docker (19.03+) 19 | - Nvidia docker (https://github.com/NVIDIA/nvidia-docker) 20 | 21 | ### Setup 22 | 23 | Firstly clone the carla autoware repository, where additional [autoware contents](https://bitbucket.org/carla-simulator/autoware-contents.git) are included as a submodule: 24 | 25 | ```sh 26 | git clone --recurse-submodules https://github.com/carla-simulator/carla-autoware 27 | ``` 28 | 29 | Afterwards, build the image with the following command: 30 | 31 | ```sh 32 | cd carla-autoware && ./build.sh 33 | ``` 34 | 35 | This will generate a `carla-autoware:latest` docker image. 36 | 37 | ### Run the agent 38 | 39 | 1. Run a CARLA server. 40 | 41 | ``` 42 | ./CarlaUE4.sh 43 | ``` 44 | 45 | 2. Run the `carla-autoware` image: 46 | 47 | ```sh 48 | ./run.sh 49 | ``` 50 | 51 | This will start an interactive shell inside the container. To start the agent run the following command: 52 | 53 | ```sh 54 | roslaunch carla_autoware_agent carla_autoware_agent.launch town:=Town01 55 | ``` 56 | 57 | ## CARLA Autoware contents 58 | The [autoware-contents](https://bitbucket.org/carla-simulator/autoware-contents.git) repository contains additional data required to run Autoware with CARLA, including the point cloud maps, vector maps and configuration files. 59 | 60 | -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker build -t carla-autoware -f Dockerfile . "$@" 3 | 4 | -------------------------------------------------------------------------------- /carla-autoware-agent/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8.3) 2 | project(carla_autoware_agent) 3 | 4 | find_package(catkin REQUIRED COMPONENTS 5 | roslaunch 6 | ) 7 | 8 | catkin_package() 9 | 10 | install(DIRECTORY agent/ 11 | DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/agent 12 | ) 13 | 14 | install(DIRECTORY launch/ 15 | DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/launch 16 | ) 17 | 18 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/bridge.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 34 | 39 | 40 | 41 | 46 | 47 | 48 | 49 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/config/sensors.json: -------------------------------------------------------------------------------- 1 | { 2 | "sensors": [ 3 | { 4 | "type": "sensor.camera.rgb", 5 | "id": "front", 6 | "x": 2.0, "y": 0.0, "z": 2.0, "roll": 0.0, "pitch": 0.0, "yaw": 0.0, 7 | "image_size_x": 800, 8 | "image_size_y": 600, 9 | "fov": 90.0, 10 | "sensor_tick": 0.05, 11 | "gamma": 2.2, 12 | "shutter_speed": 200.0, 13 | "iso": 100.0, 14 | "fstop": 8.0, 15 | "min_fstop": 1.2, 16 | "blade_count": 5, 17 | "exposure_mode": "histogram", 18 | "exposure_compensation": 0.0, 19 | "exposure_min_bright": 7.0, 20 | "exposure_max_bright": 9.0, 21 | "exposure_speed_up": 3.0, 22 | "exposure_speed_down": 1.0, 23 | "calibration_constant": 16.0, 24 | "focal_distance": 1000.0, 25 | "blur_amount": 1.0, 26 | "blur_radius": 0.0, 27 | "motion_blur_intensity": 0.45, 28 | "motion_blur_max_distortion": 0.35, 29 | "motion_blur_min_object_screen_size": 0.1, 30 | "slope": 0.88, 31 | "toe": 0.55, 32 | "shoulder": 0.26, 33 | "black_clip": 0.0, 34 | "white_clip": 0.04, 35 | "temp": 6500.0, 36 | "tint": 0.0, 37 | "chromatic_aberration_intensity": 0.0, 38 | "chromatic_aberration_offset": 0.0, 39 | "enable_postprocess_effects": "True", 40 | "lens_circle_falloff": 5.0, 41 | "lens_circle_multiplier": 0.0, 42 | "lens_k": -1.0, 43 | "lens_kcube": 0.0, 44 | "lens_x_size": 0.08, 45 | "lens_y_size": 0.08, 46 | "bloom_intensity": 0.675, 47 | "lens_flare_intensity": 0.1 48 | }, 49 | { 50 | "type": "sensor.camera.rgb", 51 | "id": "view", 52 | "x": -4.5, "y": 0.0, "z": 2.8, "roll": 0.0, "pitch": -20.0, "yaw": 0.0, 53 | "image_size_x": 800, 54 | "image_size_y": 600, 55 | "fov": 90.0, 56 | "sensor_tick": 0.05, 57 | "gamma": 2.2, 58 | "shutter_speed": 200.0, 59 | "iso": 100.0, 60 | "fstop": 8.0, 61 | "min_fstop": 1.2, 62 | "blade_count": 5, 63 | "exposure_mode": "histogram", 64 | "exposure_compensation": 0.0, 65 | "exposure_min_bright": 7.0, 66 | "exposure_max_bright": 9.0, 67 | "exposure_speed_up": 3.0, 68 | "exposure_speed_down": 1.0, 69 | "calibration_constant": 16.0, 70 | "focal_distance": 1000.0, 71 | "blur_amount": 1.0, 72 | "blur_radius": 0.0, 73 | "motion_blur_intensity": 0.45, 74 | "motion_blur_max_distortion": 0.35, 75 | "motion_blur_min_object_screen_size": 0.1, 76 | "slope": 0.88, 77 | "toe": 0.55, 78 | "shoulder": 0.26, 79 | "black_clip": 0.0, 80 | "white_clip": 0.04, 81 | "temp": 6500.0, 82 | "tint": 0.0, 83 | "chromatic_aberration_intensity": 0.0, 84 | "chromatic_aberration_offset": 0.0, 85 | "enable_postprocess_effects": "True", 86 | "lens_circle_falloff": 5.0, 87 | "lens_circle_multiplier": 0.0, 88 | "lens_k": -1.0, 89 | "lens_kcube": 0.0, 90 | "lens_x_size": 0.08, 91 | "lens_y_size": 0.08, 92 | "bloom_intensity": 0.675, 93 | "lens_flare_intensity": 0.1 94 | }, 95 | { 96 | "type": "sensor.lidar.ray_cast", 97 | "id": "lidar1", 98 | "x": 0.0, "y": 0.0, "z": 2.4, "roll": 0.0, "pitch": 0.0, "yaw": 0.0, 99 | "range": 100, 100 | "channels": 64, 101 | "points_per_second": 320000, 102 | "upper_fov": 2.0, 103 | "lower_fov": -20, 104 | "rotation_frequency": 20 105 | }, 106 | { 107 | "type": "sensor.other.gnss", 108 | "id": "gnss1", 109 | "x": 1.0, "y": 0.0, "z": 2.0, 110 | "noise_alt_stddev": 0.0, "noise_lat_stddev": 0.0, "noise_lon_stddev": 0.0, 111 | "noise_alt_bias": 0.0, "noise_lat_bias": 0.0, "noise_lon_bias": 0.0 112 | }, 113 | { 114 | "type": "sensor.other.imu", 115 | "id": "imu1", 116 | "x": 2.0, "y": 0.0, "z": 2.0, "roll": 0.0, "pitch": 0.0, "yaw": 0.0, 117 | "noise_accel_stddev_x": 0.0, "noise_accel_stddev_y": 0.0, "noise_accel_stddev_z": 0.0, 118 | "noise_gyro_stddev_x": 0.0, "noise_gyro_stddev_y": 0.0, "noise_gyro_stddev_z": 0.0, 119 | "noise_gyro_bias_x": 0.0, "noise_gyro_bias_y": 0.0, "noise_gyro_bias_z": 0.0 120 | } 121 | ] 122 | } 123 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/launch/my_detection.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 96 | 97 | 98 | 99 | 100 | 101 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/launch/my_localization.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 11 | 17 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 48 | 49 | 50 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/launch/my_map.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 9 | 10 | 11 | 12 | 15 | 29 | 30 | 31 | 32 | 33 | 34 | 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/launch/my_mission_planning.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 13 | 14 | 15 | 16 | 19 | 20 | 21 | 22 | 23 | 24 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 55 | 62 | 63 | 64 | 65 | 66 | 67 | 75 | 76 | 77 | 83 | 84 | 85 | 97 | 98 | 99 | 100 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/launch/my_motion_planning.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 31 | 32 | 33 | 34 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 79 | 82 | 83 | 84 | 85 | 92 | 93 | 94 | 95 | 105 | 106 | 107 | 117 | 118 | 119 | 120 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/launch/my_sensing.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/my_agent.launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 16 | 17 | 18 | 19 | 20 | 21 | 25 | 26 | 27 | 28 | 29 | 32 | 33 | 34 | 35 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 66 | 67 | 68 | 69 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /carla-autoware-agent/agent/rviz/config.rviz: -------------------------------------------------------------------------------- 1 | Panels: 2 | - Class: rviz/Displays 3 | Help Height: 0 4 | Name: Displays 5 | Property Tree Widget: 6 | Expanded: 7 | - /System1/Monitor1/Decision Maker Panel1 8 | - /Perception1/Ground Truth1 9 | - /Perception1/Occupancy Grid Map1/Status1 10 | - /Debug1/DecisionMaker1 11 | Splitter Ratio: 0.6180371642112732 12 | Tree Height: 502 13 | - Class: rviz/Selection 14 | Name: Selection 15 | - Class: rviz/Tool Properties 16 | Expanded: 17 | - /2D Pose Estimate1 18 | - /2D Nav Goal1 19 | - /Publish Point1 20 | Name: Tool Properties 21 | Splitter Ratio: 0.5886790156364441 22 | - Class: rviz/Views 23 | Expanded: 24 | - /Current View1 25 | Name: Views 26 | Splitter Ratio: 0.5 27 | - Class: rviz/Time 28 | Experimental: false 29 | Name: Time 30 | SyncMode: 0 31 | SyncSource: Points Map 32 | - Class: autoware_rviz_debug/DecisionMakerPanel 33 | Name: DecisionMakerPanel 34 | Preferences: 35 | PromptSaveOnExit: true 36 | Toolbars: 37 | toolButtonStyle: 2 38 | Visualization Manager: 39 | Class: "" 40 | Displays: 41 | - Alpha: 0.5 42 | Cell Size: 1 43 | Class: rviz/Grid 44 | Color: 160; 160; 164 45 | Enabled: false 46 | Line Style: 47 | Line Width: 0.029999999329447746 48 | Value: Lines 49 | Name: Grid 50 | Normal Cell Count: 0 51 | Offset: 52 | X: 0 53 | Y: 0 54 | Z: 0 55 | Plane: XY 56 | Plane Cell Count: 10 57 | Reference Frame: 58 | Value: false 59 | - Class: rviz/Group 60 | Displays: 61 | - Class: rviz/TF 62 | Enabled: false 63 | Frame Timeout: 15 64 | Frames: 65 | All Enabled: true 66 | Marker Scale: 5 67 | Name: TF 68 | Show Arrows: true 69 | Show Axes: true 70 | Show Names: true 71 | Tree: 72 | {} 73 | Update Interval: 0 74 | Value: false 75 | - Alpha: 1 76 | Class: rviz/RobotModel 77 | Collision Enabled: false 78 | Enabled: true 79 | Links: 80 | All Links Enabled: true 81 | Expand Joint Details: false 82 | Expand Link Details: false 83 | Expand Tree: false 84 | Link Tree Style: Links in Alphabetic Order 85 | base_link: 86 | Alpha: 1 87 | Show Axes: false 88 | Show Trail: false 89 | Value: true 90 | Name: Vehicle Model 91 | Robot Description: robot_description 92 | TF Prefix: "" 93 | Update Interval: 0 94 | Value: true 95 | Visual Enabled: true 96 | - Class: rviz/Group 97 | Displays: 98 | - Buffer length: 100 99 | Class: jsk_rviz_plugin/Plotter2D 100 | Enabled: true 101 | Name: Velocity (km/h) 102 | Show Value: true 103 | Topic: /linear_velocity_viz 104 | Value: true 105 | auto color change: false 106 | auto scale: true 107 | background color: 0; 0; 0 108 | backround alpha: 0 109 | border: true 110 | foreground alpha: 1 111 | foreground color: 0; 255; 255 112 | height: 80 113 | left: 40 114 | linewidth: 1 115 | max color: 255; 0; 0 116 | max value: 1 117 | min value: -1 118 | show caption: true 119 | text size: 8 120 | top: 30 121 | update interval: 0.03999999910593033 122 | width: 80 123 | - Buffer length: 100 124 | Class: jsk_rviz_plugin/Plotter2D 125 | Enabled: true 126 | Name: NDT Time [ms] 127 | Show Value: true 128 | Topic: /time_ndt_matching 129 | Value: true 130 | auto color change: false 131 | auto scale: true 132 | background color: 0; 0; 0 133 | backround alpha: 0 134 | border: true 135 | foreground alpha: 1 136 | foreground color: 0; 255; 255 137 | height: 80 138 | left: 140 139 | linewidth: 1 140 | max color: 255; 0; 0 141 | max value: 1 142 | min value: -1 143 | show caption: true 144 | text size: 8 145 | top: 30 146 | update interval: 0.03999999910593033 147 | width: 80 148 | - Align Bottom: false 149 | Background Alpha: 0.8999999761581421 150 | Background Color: 0; 0; 0 151 | Class: jsk_rviz_plugin/OverlayText 152 | Enabled: true 153 | Foreground Alpha: 0.800000011920929 154 | Foreground Color: 0; 255; 255 155 | Name: NDT Monitor 156 | Overtake Color Properties: true 157 | Overtake Position Properties: true 158 | Topic: /ndt_monitor/ndt_info_text 159 | Value: true 160 | font: DejaVu Sans Mono 161 | height: 50 162 | left: 40 163 | line width: 2 164 | text size: 8 165 | top: 150 166 | width: 200 167 | - Align Bottom: false 168 | Background Alpha: 0.8999999761581421 169 | Background Color: 0; 0; 0 170 | Class: jsk_rviz_plugin/OverlayText 171 | Enabled: true 172 | Foreground Alpha: 0.800000011920929 173 | Foreground Color: 0; 255; 255 174 | Name: Decision Maker Panel 175 | Overtake Color Properties: true 176 | Overtake Position Properties: true 177 | Topic: /decision_maker/state_overlay 178 | Value: true 179 | font: DejaVu Sans Mono 180 | height: 300 181 | left: 40 182 | line width: 2 183 | text size: 8 184 | top: 220 185 | width: 200 186 | Enabled: true 187 | Name: Monitor 188 | - Class: rviz/Group 189 | Displays: 190 | - Align Bottom: false 191 | Background Alpha: 0.800000011920929 192 | Background Color: 0; 0; 0 193 | Class: jsk_rviz_plugin/OverlayText 194 | Enabled: true 195 | Foreground Alpha: 0.800000011920929 196 | Foreground Color: 25; 255; 240 197 | Name: OK 198 | Overtake Color Properties: true 199 | Overtake Position Properties: true 200 | Topic: /health_aggregator/ok_text 201 | Value: true 202 | font: DejaVu Sans Mono 203 | height: 80 204 | left: 40 205 | line width: 2 206 | text size: 6 207 | top: 430 208 | width: 200 209 | - Align Bottom: false 210 | Background Alpha: 0.800000011920929 211 | Background Color: 0; 0; 0 212 | Class: jsk_rviz_plugin/OverlayText 213 | Enabled: true 214 | Foreground Alpha: 0.800000011920929 215 | Foreground Color: 255; 255; 0 216 | Name: WARN 217 | Overtake Color Properties: true 218 | Overtake Position Properties: true 219 | Topic: /health_aggregator/warn_text 220 | Value: true 221 | font: DejaVu Sans Mono 222 | height: 80 223 | left: 40 224 | line width: 2 225 | text size: 6 226 | top: 520 227 | width: 200 228 | - Align Bottom: false 229 | Background Alpha: 0.800000011920929 230 | Background Color: 0; 0; 0 231 | Class: jsk_rviz_plugin/OverlayText 232 | Enabled: true 233 | Foreground Alpha: 0.800000011920929 234 | Foreground Color: 255; 85; 0 235 | Name: ERROR 236 | Overtake Color Properties: true 237 | Overtake Position Properties: true 238 | Topic: /health_aggregator/error_text 239 | Value: true 240 | font: DejaVu Sans Mono 241 | height: 80 242 | left: 40 243 | line width: 2 244 | text size: 6 245 | top: 620 246 | width: 200 247 | - Align Bottom: false 248 | Background Alpha: 0.800000011920929 249 | Background Color: 0; 0; 0 250 | Class: jsk_rviz_plugin/OverlayText 251 | Enabled: true 252 | Foreground Alpha: 0.800000011920929 253 | Foreground Color: 255; 0; 0 254 | Name: FATAL 255 | Overtake Color Properties: true 256 | Overtake Position Properties: true 257 | Topic: /health_aggregator/fatal_text 258 | Value: true 259 | font: DejaVu Sans Mono 260 | height: 80 261 | left: 40 262 | line width: 2 263 | text size: 6 264 | top: 720 265 | width: 200 266 | Enabled: true 267 | Name: Health Checker 268 | Enabled: true 269 | Name: System 270 | - Class: rviz/Group 271 | Displays: 272 | - Alpha: 0.05000000074505806 273 | Autocompute Intensity Bounds: true 274 | Autocompute Value Bounds: 275 | Max Value: 10 276 | Min Value: -10 277 | Value: true 278 | Axis: Z 279 | Channel Name: intensity 280 | Class: rviz/PointCloud2 281 | Color: 255; 255; 255 282 | Color Transformer: FlatColor 283 | Decay Time: 0 284 | Enabled: true 285 | Invert Rainbow: false 286 | Max Color: 255; 255; 255 287 | Max Intensity: 4096 288 | Min Color: 0; 0; 0 289 | Min Intensity: 0 290 | Name: Points Map 291 | Position Transformer: XYZ 292 | Queue Size: 10 293 | Selectable: true 294 | Size (Pixels): 2 295 | Size (m): 0.009999999776482582 296 | Style: Points 297 | Topic: /points_map 298 | Unreliable: false 299 | Use Fixed Frame: true 300 | Use rainbow: true 301 | Value: true 302 | - Class: rviz/MarkerArray 303 | Enabled: true 304 | Marker Topic: /vector_map 305 | Name: ADAS Map 306 | Namespaces: 307 | cross_road: true 308 | white_line: true 309 | Queue Size: 100 310 | Value: true 311 | - Class: rviz/MarkerArray 312 | Enabled: true 313 | Marker Topic: /lanelet2_map_viz 314 | Name: Lanelet2 Map 315 | Namespaces: 316 | {} 317 | Queue Size: 100 318 | Value: true 319 | Enabled: true 320 | Name: Map 321 | - Class: rviz/Group 322 | Displays: 323 | - Alpha: 0.30000001192092896 324 | Autocompute Intensity Bounds: true 325 | Autocompute Value Bounds: 326 | Max Value: 23.83440399169922 327 | Min Value: -22.532455444335938 328 | Value: true 329 | Axis: Z 330 | Channel Name: intensity 331 | Class: rviz/PointCloud2 332 | Color: 255; 255; 255 333 | Color Transformer: Intensity 334 | Decay Time: 0 335 | Enabled: true 336 | Invert Rainbow: false 337 | Max Color: 255; 255; 255 338 | Max Intensity: 0.977339506149292 339 | Min Color: 0; 0; 0 340 | Min Intensity: 0.6735832691192627 341 | Name: Points Raw 342 | Position Transformer: XYZ 343 | Queue Size: 10 344 | Selectable: true 345 | Size (Pixels): 2 346 | Size (m): 0.009999999776482582 347 | Style: Points 348 | Topic: /points_raw 349 | Unreliable: false 350 | Use Fixed Frame: true 351 | Use rainbow: true 352 | Value: true 353 | - Alpha: 0.5 354 | Autocompute Intensity Bounds: true 355 | Autocompute Value Bounds: 356 | Max Value: 23.83440399169922 357 | Min Value: -22.532455444335938 358 | Value: true 359 | Axis: Z 360 | Channel Name: intensity 361 | Class: rviz/PointCloud2 362 | Color: 255; 0; 0 363 | Color Transformer: FlatColor 364 | Decay Time: 0 365 | Enabled: false 366 | Invert Rainbow: false 367 | Max Color: 255; 255; 255 368 | Max Intensity: 0 369 | Min Color: 0; 0; 0 370 | Min Intensity: 0 371 | Name: Points No Ground 372 | Position Transformer: XYZ 373 | Queue Size: 10 374 | Selectable: true 375 | Size (Pixels): 2 376 | Size (m): 0.009999999776482582 377 | Style: Points 378 | Topic: /points_no_ground 379 | Unreliable: false 380 | Use Fixed Frame: true 381 | Use rainbow: true 382 | Value: false 383 | - Alpha: 1 384 | Autocompute Intensity Bounds: true 385 | Autocompute Value Bounds: 386 | Max Value: 10 387 | Min Value: -10 388 | Value: true 389 | Axis: Z 390 | Channel Name: intensity 391 | Class: rviz/PointCloud2 392 | Color: 255; 255; 255 393 | Color Transformer: Intensity 394 | Decay Time: 0 395 | Enabled: false 396 | Invert Rainbow: false 397 | Max Color: 255; 255; 255 398 | Max Intensity: 0 399 | Min Color: 0; 0; 0 400 | Min Intensity: 0 401 | Name: Points Ground 402 | Position Transformer: XYZ 403 | Queue Size: 10 404 | Selectable: true 405 | Size (Pixels): 3 406 | Size (m): 0.009999999776482582 407 | Style: Flat Squares 408 | Topic: /points_ground 409 | Unreliable: false 410 | Use Fixed Frame: true 411 | Use rainbow: true 412 | Value: false 413 | Enabled: true 414 | Name: Sensing 415 | - Class: rviz/Group 416 | Displays: 417 | - Alpha: 1 418 | Axes Length: 1 419 | Axes Radius: 0.10000000149011612 420 | Class: rviz/Pose 421 | Color: 255; 170; 255 422 | Enabled: false 423 | Head Length: 2 424 | Head Radius: 2 425 | Name: Current Pose 426 | Shaft Length: 2 427 | Shaft Radius: 1 428 | Shape: Arrow 429 | Topic: /current_pose 430 | Unreliable: false 431 | Value: false 432 | - Alpha: 1 433 | Axes Length: 1 434 | Axes Radius: 0.10000000149011612 435 | Class: rviz/Pose 436 | Color: 255; 255; 0 437 | Enabled: false 438 | Head Length: 2 439 | Head Radius: 1 440 | Name: EKF Pose 441 | Shaft Length: 2 442 | Shaft Radius: 0.5 443 | Shape: Arrow 444 | Topic: /ekf_pose 445 | Unreliable: false 446 | Value: false 447 | - Alpha: 1 448 | Axes Length: 1 449 | Axes Radius: 0.10000000149011612 450 | Class: rviz/Pose 451 | Color: 0; 255; 255 452 | Enabled: false 453 | Head Length: 2 454 | Head Radius: 1 455 | Name: NDT Pose 456 | Shaft Length: 2 457 | Shaft Radius: 0.5 458 | Shape: Arrow 459 | Topic: /ndt_pose 460 | Unreliable: false 461 | Value: false 462 | Enabled: true 463 | Name: Localization 464 | - Class: rviz/Group 465 | Displays: 466 | - Class: rviz/Group 467 | Displays: 468 | - Class: rviz/Marker 469 | Enabled: true 470 | Marker Topic: /carla/marker 471 | Name: Ground truth obstacles 472 | Namespaces: 473 | {} 474 | Queue Size: 100 475 | Value: true 476 | Enabled: false 477 | Name: Ground Truth 478 | - Alpha: 0.699999988079071 479 | Class: rviz/Map 480 | Color Scheme: map 481 | Draw Behind: true 482 | Enabled: false 483 | Name: Occupancy Grid Map 484 | Topic: /semantics/costmap_generator/occupancy_grid 485 | Unreliable: false 486 | Use Timestamp: false 487 | Value: false 488 | - Alpha: 1 489 | Autocompute Intensity Bounds: true 490 | Autocompute Value Bounds: 491 | Max Value: 23.83440399169922 492 | Min Value: -22.532455444335938 493 | Value: true 494 | Axis: Z 495 | Channel Name: intensity 496 | Class: rviz/PointCloud2 497 | Color: 255; 255; 255 498 | Color Transformer: RGB8 499 | Decay Time: 0 500 | Enabled: true 501 | Invert Rainbow: false 502 | Max Color: 255; 255; 255 503 | Max Intensity: 0 504 | Min Color: 0; 0; 0 505 | Min Intensity: 0 506 | Name: Clustered Points 507 | Position Transformer: XYZ 508 | Queue Size: 10 509 | Selectable: true 510 | Size (Pixels): 2 511 | Size (m): 0.009999999776482582 512 | Style: Points 513 | Topic: /points_cluster 514 | Unreliable: false 515 | Use Fixed Frame: true 516 | Use rainbow: true 517 | Value: true 518 | - Class: rviz/MarkerArray 519 | Enabled: true 520 | Marker Topic: /detected_polygons 521 | Name: DetectedPolygons 522 | Namespaces: 523 | {} 524 | Queue Size: 100 525 | Value: true 526 | - Class: rviz/MarkerArray 527 | Enabled: true 528 | Marker Topic: /detection/lidar_tracker/objects_markers 529 | Name: Lidar Obstacle Markers 530 | Namespaces: 531 | /detection/lidar_tracker/arrow_markers: false 532 | /detection/lidar_tracker/box_markers: true 533 | /detection/lidar_tracker/centroid_markers: false 534 | /detection/lidar_tracker/hull_markers: false 535 | /detection/lidar_tracker/label_markers: false 536 | Queue Size: 100 537 | Value: true 538 | - Class: rviz/Image 539 | Enabled: true 540 | Image Topic: /image_tracker_rects 541 | Max Value: 1 542 | Median window: 5 543 | Min Value: 0 544 | Name: YOLO 545 | Normalize Range: true 546 | Queue Size: 2 547 | Transport Hint: raw 548 | Unreliable: false 549 | Value: true 550 | Enabled: true 551 | Name: Perception 552 | - Class: rviz/Group 553 | Displays: 554 | - Class: rviz/Group 555 | Displays: 556 | - Class: rviz/Marker 557 | Enabled: false 558 | Marker Topic: /safety_border 559 | Name: Safety Box 560 | Namespaces: 561 | {} 562 | Queue Size: 100 563 | Value: false 564 | - Class: rviz/MarkerArray 565 | Enabled: false 566 | Marker Topic: /predicted_trajectories_rviz 567 | Name: Predicted Trajectories Obstacles 568 | Namespaces: 569 | {} 570 | Queue Size: 100 571 | Value: false 572 | - Class: rviz/MarkerArray 573 | Enabled: false 574 | Marker Topic: /dynamic_collision_points_rviz 575 | Name: Dynamic Collision Points 576 | Namespaces: 577 | {} 578 | Queue Size: 100 579 | Value: false 580 | - Class: rviz/MarkerArray 581 | Enabled: false 582 | Marker Topic: /AnimateGlobalPlan 583 | Name: GlobalPathAnimation 584 | Namespaces: 585 | {} 586 | Queue Size: 100 587 | Value: false 588 | - Class: rviz/MarkerArray 589 | Enabled: false 590 | Marker Topic: /behavior_state 591 | Name: Behavior State 592 | Namespaces: 593 | {} 594 | Queue Size: 100 595 | Value: false 596 | - Class: rviz/MarkerArray 597 | Enabled: false 598 | Marker Topic: /local_trajectories_eval_rviz 599 | Name: Local Rollouts 600 | Namespaces: 601 | {} 602 | Queue Size: 100 603 | Value: false 604 | - Class: rviz/MarkerArray 605 | Enabled: true 606 | Marker Topic: /global_waypoints_rviz 607 | Name: Global Path 608 | Namespaces: 609 | {} 610 | Queue Size: 100 611 | Value: true 612 | Enabled: true 613 | Name: OP Planner 614 | - Class: rviz/MarkerArray 615 | Enabled: false 616 | Marker Topic: /waypoints_velocity 617 | Name: VelocityVisualizer 618 | Namespaces: 619 | {} 620 | Queue Size: 100 621 | Value: false 622 | - Class: rviz/Marker 623 | Enabled: false 624 | Marker Topic: /obstacle 625 | Name: Obstacle 626 | Namespaces: 627 | {} 628 | Queue Size: 100 629 | Value: false 630 | - Class: rviz/MarkerArray 631 | Enabled: true 632 | Marker Topic: /detection_range 633 | Name: DetectionRange 634 | Namespaces: 635 | {} 636 | Queue Size: 100 637 | Value: true 638 | Enabled: true 639 | Name: Planning 640 | - Class: rviz/Group 641 | Displays: 642 | - Class: rviz/Marker 643 | Enabled: true 644 | Marker Topic: /trajectory_circle_mark 645 | Name: Pure Pursuit Trajectory 646 | Namespaces: 647 | {} 648 | Queue Size: 100 649 | Value: true 650 | - Class: rviz/Marker 651 | Enabled: true 652 | Marker Topic: /next_target_mark 653 | Name: Pure Pursuit Target 654 | Namespaces: 655 | {} 656 | Queue Size: 100 657 | Value: true 658 | - Class: rviz/Marker 659 | Enabled: false 660 | Marker Topic: /mpc_follower/debug/predicted_traj 661 | Name: MPC Predicted Trajectory 662 | Namespaces: 663 | {} 664 | Queue Size: 100 665 | Value: false 666 | - Class: rviz/Marker 667 | Enabled: false 668 | Marker Topic: /mpc_follower/debug/filtered_traj 669 | Name: MPC Reference Trajectory 670 | Namespaces: 671 | {} 672 | Queue Size: 100 673 | Value: false 674 | Enabled: true 675 | Name: Control 676 | - Class: rviz/Group 677 | Displays: 678 | - Class: rviz/Group 679 | Displays: 680 | - Align Bottom: false 681 | Background Alpha: 0.800000011920929 682 | Background Color: 0; 0; 0 683 | Class: jsk_rviz_plugin/OverlayText 684 | Enabled: true 685 | Foreground Alpha: 0.800000011920929 686 | Foreground Color: 25; 255; 240 687 | Name: OperatorHelpText 688 | Overtake Color Properties: true 689 | Overtake Position Properties: true 690 | Topic: /decision_maker/operator_help_text 691 | Value: true 692 | font: DejaVu Sans Mono 693 | height: 128 694 | left: 40 695 | line width: 2 696 | text size: 8 697 | top: 850 698 | width: 500 699 | Enabled: true 700 | Name: DecisionMaker 701 | Enabled: false 702 | Name: Debug 703 | Enabled: true 704 | Global Options: 705 | Background Color: 48; 48; 48 706 | Default Light: true 707 | Fixed Frame: world 708 | Frame Rate: 30 709 | Name: root 710 | Tools: 711 | - Class: rviz/Interact 712 | Hide Inactive Objects: true 713 | - Class: rviz/MoveCamera 714 | - Class: rviz/Select 715 | - Class: rviz/FocusCamera 716 | - Class: rviz/Measure 717 | - Class: rviz/SetInitialPose 718 | Theta std deviation: 0.2617993950843811 719 | Topic: /initialpose 720 | X std deviation: 0.5 721 | Y std deviation: 0.5 722 | - Class: rviz/SetGoal 723 | Topic: /move_base_simple/goal 724 | - Class: rviz/PublishPoint 725 | Single click: true 726 | Topic: /clicked_point 727 | Value: true 728 | Views: 729 | Current: 730 | Angle: 0 731 | Class: rviz/TopDownOrtho 732 | Enable Stereo Rendering: 733 | Stereo Eye Separation: 0.05999999865889549 734 | Stereo Focal Distance: 1 735 | Swap Stereo Eyes: false 736 | Value: false 737 | Invert Z Axis: false 738 | Name: Current View 739 | Near Clip Distance: 0.009999999776482582 740 | Scale: 10 741 | Target Frame: base_link 742 | Value: TopDownOrtho (rviz) 743 | X: 0 744 | Y: 0 745 | Saved: ~ 746 | Window Geometry: 747 | DecisionMakerPanel: 748 | collapsed: false 749 | Displays: 750 | collapsed: false 751 | Height: 1145 752 | Hide Left Dock: false 753 | Hide Right Dock: false 754 | QMainWindow State: 000000ff00000000fd0000000400000000000001f8000003c1fc0200000010fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afc0000003b00000231000000c700fffffffa000000020100000003fb0000000a0049006d0061006700650000000000ffffffff0000000000000000fb0000000c00430061006d0065007200610000000000ffffffff0000000000000000fb000000100044006900730070006c0061007900730100000000000001360000015600fffffffb0000000a0049006d006100670065010000028e000000d20000000000000000fb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261fb000000120049006d006100670065005f0072006100770000000000ffffffff0000000000000000fb0000000c00430061006d006500720061000000024e000001710000000000000000fb000000120049006d00610067006500200052006100770100000421000000160000000000000000fb0000000a0049006d00610067006501000002f4000000cb0000000000000000fb0000000a0049006d006100670065010000056c0000026c0000000000000000fb000000080059004f004c004f01000002720000018a0000001600fffffffb000000080059004f004c004f0100000255000001a70000000000000000000000010000014d000003c1fc0200000004fb0000000a00560069006500770073010000003b0000017e000000a000fffffffb00000024004400650063006900730069006f006e004d0061006b0065007200500061006e0065006c01000001bf0000023d0000018000fffffffb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000001200530065006c0065006300740069006f006e010000025a000000b20000000000000000000000020000073f000000a8fc0100000001fb0000000a00560069006500770073030000004e00000080000002e100000197000000030000074f0000005cfc0100000002fb0000000800540069006d006501000000000000074f0000024400fffffffb0000000800540069006d00650100000000000004500000000000000000000003fe000003c100000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000 755 | Selection: 756 | collapsed: false 757 | Time: 758 | collapsed: false 759 | Tool Properties: 760 | collapsed: false 761 | Views: 762 | collapsed: false 763 | Width: 1871 764 | X: 49 765 | Y: 27 766 | YOLO: 767 | collapsed: false 768 | -------------------------------------------------------------------------------- /carla-autoware-agent/launch/carla_autoware_agent.launch: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 50 | 51 | 52 | 53 | 54 | 55 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 74 | 75 | 76 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /carla-autoware-agent/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | carla_autoware_agent 4 | 0.0.1 5 | The carla_autoware_agent package 6 | CARLA Simulator Team 7 | MIT 8 | catkin 9 | carla_autoware_bridge 10 | 11 | -------------------------------------------------------------------------------- /docs/images/carla_autoware.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/carla-simulator/carla-autoware/975b6f3cc8aef9e315c885854c52ee57bd4f8fd1/docs/images/carla_autoware.png -------------------------------------------------------------------------------- /run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | RUNTIME="" 4 | DOCKER_VERSION=$(docker version --format '{{.Client.Version}}' | cut --delimiter=. --fields=1,2) 5 | if [[ $DOCKER_VERSION < "19.03" ]] && ! type nvidia-docker; then 6 | RUNTIME="--gpus all" 7 | else 8 | RUNTIME="--runtime=nvidia" 9 | fi 10 | 11 | docker run \ 12 | -it --rm \ 13 | --volume=$(pwd)/autoware-contents:/home/autoware/autoware-contents:ro \ 14 | --env="DISPLAY=${DISPLAY}" \ 15 | --privileged \ 16 | --net=host \ 17 | $RUNTIME \ 18 | carla-autoware:latest 19 | 20 | -------------------------------------------------------------------------------- /update_sim.patch: -------------------------------------------------------------------------------- 1 | 25c25 2 | < version: 1.14.0 3 | --- 4 | > version: master 5 | --------------------------------------------------------------------------------