Autoware—AI版本的部署

由于LIO-SAM在公园等树木多特征少的场景效果不太好,但NDT是集成在Autoware.ai 1.x版本里的,这里记录下部署编译过程。

由于Autoware.ai 1.x版本源码编译只支持到Ubuntu 18,手上已经没有这个版本的设备,所以这里直接在Ubuntu 20.04下用docker环境来编译。

一、安装Docker

具体Docker安装方法不再赘述,详见:

二、部署Autoware.ai

1. 使用官方镜像

1.1 下载并启动镜像

也可以参考Installation手动部署官方镜像并进行修改:

# source code
git clone https://github.com/autowarefoundation/autoware_ai_docker.git autoware.ai

# run docker
cd ~/autoware.ai/generic
./run.sh  --cuda on          # use cuda
1.2 容器内编译和运行Autoware
# 进入容器
cd ~/autoware.ai/
./open.sh

# 编译Autoware目录源码
cd ~/Autoware
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

# 启动autoware
source ~/Autoware/install/setup.bash
roslaunch runtime_manager runtime_manager.launch
1.3 移动源码到挂载目录

为了方便在宿主机直接修改代码,在docker内编译,我们这里把源码移动到挂载目录内:

# 进入容器
cd ~/autoware.ai/
./open.sh

# 备份官方的Autoware代码到宿主机share目录
mv Autoware ~/shared_dir/Autoware

# 自动加载autoware
vim ~/.bashrc source
    source ~/Autoware/install/setup.bash
1.4 根据当前容器创建新镜像
# 保存容器内的变化
docker ps
docker commit -a "yanjingang" -m "autoware.ai latest-melodic-base-cuda" 0d9e8e0b0998 yanjingang/autoware:latest-melodic-base-cuda
# docker commit -a "yanjingang" -m "autoware.ai latest-melodic-base" 2ce41d2f80d0 yanjingang/autoware:latest-melodic-base

# push镜像到hub
docker image list
docker login
docker push yanjingang/autoware:latest-melodic-cuda

# 使用新镜像
vim ~/autoware.ai/generic/run.sh
    IMAGE_NAME="yanjingang/autoware"
    TAG_PREFIX="latest"

# 重启docker
cd ~/autoware.ai/generic/
./run.sh --cuda on -b $HOME/autoware.ai/shared_dir/Autoware     # use cuda, mount local code
# ./run.sh --cuda off -b $HOME/autoware.ai/shared_dir/Autoware  # without cuda, mount local code

2. 直接使用新镜像

完成一次以上步骤后,其他设备上就可以直接用这个已经适配好的镜像:

2.1 下载镜像
# 下载镜像
docker login
docker pull yanjingang/autoware:latest-melodic-base-cuda    # with cuda
# docker pull yanjingang/autoware:latest-melodic-base       # without cuda

# 下载autoware配置和脚本
git clone git@gitee.com:cyber-robotics/autoware.ai.git
2.2 运行Autoware
# 启动容器
cd ~/autoware.ai/generic
./run.sh --cuda on -b $HOME/autoware.ai/shared_dir/Autoware  -i yanjingang/autoware    # use cuda, mount local code, use my image
# ./run.sh --cuda off -b $HOME/autoware.ai/shared_dir/Autoware  -i yanjingang/autoware # without cuda, mount local code, use my image

# 编译autoware
cd ~/Autoware
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

# 启动autoware
source ~/Autoware/install/setup.bash
roslaunch runtime_manager runtime_manager.launch

 

yan 24.11.18

欢迎关注下方“非著名资深码农“公众号进行交流~

发表评论

邮箱地址不会被公开。