Set up environment
git clone -b tutorial https://github.com/LRMPUT/autoware_put_ws.git
is based on release 0.44.1
Download and unpack a sample map.
- You can also download the map manually.
gdown -O ~/autoware_map/ 'https://docs.google.com/uc?export=download&id=1499_nsbUbIeturZaDj7jhUownh5fvXHd'
unzip -d ~/autoware_map ~/autoware_map/sample-map-planning.zip
!!! Note
Sample map: Copyright 2020 TIER IV, Inc.
Check if you have ~/autoware_data
folder and files in it.
$ cd ~/autoware_data
$ ls -C -w 30
image_projection_based_fusion
lidar_apollo_instance_segmentation
lidar_centerpoint
tensorrt_yolo
tensorrt_yolox
traffic_light_classifier
traffic_light_fine_detector
traffic_light_ssd_fine_detector
yabloc_pose_initializer
If not, please, follow Manual downloading of artifacts.
Rocker is required to run the provided Bash scripts, especially when launching Docker containers with GUI, NVIDIA GPU, or other system integrations.
pip3 install rocker
Note: Before proceeding, confirm and agree with the NVIDIA Deep Learning Container license. By pulling and using the Autoware Universe images, you accept the terms and conditions of the license.
-
Pull the Docker image
docker pull macnack/autoware-universe:pix-cuda-tutorial
-
Launch a Docker container.
-
For amd64 architecture computers with NVIDIA GPU:
cd ~/autoware_put_ws ./run_amd64.sh
For more advanced usage, see here.
After that, move to the workspace in the container:
cd autoware_put_ws
-
-
Create the
src
directory and clone repositories into it.mkdir src vcs import src < autoware.repos --recursive
-
Update dependent ROS packages.
The dependency of Autoware may change after the Docker image was created. In that case, you need to run the following commands to update the dependency.
sudo apt update rosdep update rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
-
Build the workspace.
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=1
If there is any build issue due to low size memory swap, refer to Issue.
-
To enter the container with new terminal window, run the following command:
cd ~/autoware_put_ws ./enter.sh
It is possible to test the stack offline using planning simulator.
ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/autoware_map/sample-map-planning vehicle_model:=pixkit sensor_model:=sample_sensor_kit
Autoware is an open-source software stack for self-driving vehicles, built on the Robot Operating System (ROS). It includes all of the necessary functions to drive an autonomous vehicles from localization and object detection to route planning and control, and was created with the aim of enabling as many individuals and organizations as possible to contribute to open innovations in autonomous driving technology.
To learn more about using or developing Autoware, refer to the Autoware documentation site. You can find the source for the documentation in autowarefoundation/autoware-documentation.
- autowarefoundation/autoware
- Meta-repository containing
.repos
files to construct an Autoware workspace. - It is anticipated that this repository will be frequently forked by users, and so it contains minimal information to avoid unnecessary differences.
- Meta-repository containing
- autowarefoundation/autoware_common
- Library/utility type repository containing commonly referenced ROS packages.
- These packages were moved to a separate repository in order to reduce CI execution time
- autowarefoundation/autoware_core
- Main repository for high-quality, stable ROS packages for Autonomous Driving.
- Based on Autoware.Auto and Autoware.Universe.
- autowarefoundation/autoware_universe
- Repository for experimental, cutting-edge ROS packages for Autonomous Driving.
- Autoware Universe was created to make it easier for researchers and developers to extend the functionality of Autoware Core
- autowarefoundation/autoware_launch
- Launch configuration repository containing node configurations and their parameters.
- autowarefoundation/autoware-github-actions
- Contains reusable GitHub Actions workflows used by multiple repositories for CI.
- Utilizes the DRY concept.
- autowarefoundation/autoware-documentation
- Documentation repository for Autoware users and developers.
- Since Autoware Core/Universe has multiple repositories, a central documentation repository is important to make information accessible from a single place.
If you wish to use Autoware.AI, the previous version of Autoware based on ROS 1, switch to autoware-ai repository. However, be aware that Autoware.AI has reached the end-of-life as of 2022, and we strongly recommend transitioning to Autoware Core/Universe for future use.
- There is no formal process to become a contributor - you can comment on any existing issues or make a pull request on any Autoware repository!
- Make sure to follow the Contribution Guidelines.
- Take a look at Autoware's various working groups to gain an understanding of any work in progress and to see how projects are managed.
- If you have any technical questions, you can start a discussion in the Q&A category to request help and confirm if a potential issue is a bug or not.