【仿真】Carla简易安装 Window Ubuntu均适用 附ROS的简单连接 [0]
参考与前言
本篇创建于 2020/12/18,安装方式为压缩包安装,无需UE4等软件,但是前提是需要一个2G 以上显存的GPU,更多关于GPU及驱动的安装可见:Ubuntu下的NVIDIA显卡【驱动&CUDA 安装与卸载】;对于Window呢,只要-p端口是开放的 问题都不大
所有以下的截图均在本人操作下截图
更新记录:
2022/11/7:看到阅读量上来了,为了不与时间脱节,特此重新排一下整个过程,主要是将ROS-Bridge给附录上,因为CARLA可以有自己的一套玩法,更多请见:张聪明的CARLA专栏 自认为写了非常完整的一套CARLA教程,但是可能会随时间而过时 比如CARLA发布了正式版1.0开头的 hhh,添加了后话等等
0. 下载及解压压缩包
这是官方的github地址,然后免源码安装的压缩包,解压即可,github地址点击此:https://github.com/carla-simulator/carla/releases
提前提醒.... 可能很慢。经提醒,此链接有国内镜像版:https://mirrors.sustech.edu.cn/carla/ 推荐内地同学走镜像下来 速度超快
GITHUB下载截图:

南科大镜像下载截图(亲测均可以运行,注意选择Window的时候 再进到Window目录哈):

下载后跳转目录并解压:
tar -xzvf CARLA_0.9.10.1.tar.gz

压缩成功后如上图:
如果你压缩失败了 请查看自己是否下载完全了这个压缩包 或者是copy的时候是否是完整的,验证方法可以在window里解压 看看能不能解压出来,如果window能解压,同样的文件大小在ubuntu解压不成功【一定确认好!文件被完整的复制过来了】,恭喜你碰到了和我一样的问题:
问题原因:在我的情况下是内存条崩了,不要犹豫直接换掉内存条吧,我是直到重装了系统才发现一直报错 一直装不好,换掉了内存条就直接OK了【吐槽万紫千红真的垃圾】
1. 运行Carla
运行,直接在终端输入:
./CarlaUE4.sh
可以得到这样子的图:

接下来的操作请确保在python 3.7下,这是我的解决办法:
anaconda下载 请参考:ubuntu的软件包及便携系列【ROS】,快乐使用Python 相关记录 镜像替换等 自用
因为CARLA需要在python3.7下运行,但是如果下载了anaconda的话 一般都会下载并默认最新的python,所以我们需要下载anaconda并配置环境
conda create -n py37 python=3.7
conda activate py37
pip升级 换源pip 请在python3.7环境下安装这些依赖:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install pygame numpy
好了让我们回到CARLA,不然无法运行.py文件,如果点进去查看 可以看到示例下的py文件都有自己去查找egg库
cd PythonAPI/examples
python spawn_npc.py -n 80
表明导入80个物体(包括车、行人、摩托车等等等)

看的很清楚了吧 先换到自己的3.7环境,然后运行.py文件。
接下来 我们自己放车进去,这里就用到了pygame
conda activate py37
cd PythonAPI/examples
python manual_control.py

然后把鼠标点击左下角的pygame window 用方向键,使劲一直按着 不然... 没法明显发现你在控制它 hhhh 因为油门是从小到大 慢慢上来的哈
2. 导入附加地图
注意Carla默认下载时会有几个Town的地图,但是如果你想要更多 比如:停车场测试的话,附加地图里可以找到 但是OpenDrive停车场那块有没有 我就没测试过了;最近疯狂carla 得出结论:官方文档真香!!!!
好了,回归正题:对应导入的官方链接说明
每个版本都有自己的额外资产和地图包。 这个附加包包括地图 Town06、Town07 和 Town10。 这些单独存储以减少构建的大小,因此只能在安装主包后导入。
为您想要的 CARLA 版本下载适当的软件包。
解压包:
在 Linux 上:
将包移动到 Import 文件夹并运行以下脚本以提取内容:
cd path_to_carla
./ImportAssets.sh
在 Windows 上:
直接提取根文件夹中的内容。
下面小白式教学:

然后下载后,把压缩包移到如图所示carla文件夹位置:

cd CARLA_0.9.10.1
./ImportAssets.sh
然后就完成了,接下来就可以在carla里进行读取这个附加城镇的信息了

后话
自此,有关CARLA 安装 就已经结束了,后面的话 可以再按顺序看看 张聪明的CARLA专栏 很多文章后面也留了课后作业(当然都有附完整代码答案哈),比如生成一辆车,比如生成行人重复过马路的场景,等等等,还有如何进行数据集的创建和收集,这是老胡提的需求,顺便写了个完整的教程
如果后面有什么简单的需求 也可以留言 说不定 我就又有素材写一篇了 hhhh
所有这些都是为爱发电,包括专栏也是完全免费的,后续的博文我也不会设置仅粉丝阅读等选项了,让大家能无障碍学习;但是记住 这些都是 为爱发电,并不意味着我是大家的免费的私人答疑者,请大家尽量有问题 评论区留言,可能有其他同学可以回复你这些问题呢
最后,授之以鱼不如授之以渔,希望大家能通过这系列教程 将学习这一技能衍生到其他任何的软件中去
附 ROS-bridge 连接 (可跳过)
注意这一章节 不是必需品!甚至在后面的CARLA教程中都没有用到ROS-bridge 这一工具,因为CARLA可以由自己的agent等进行操作,无需ROS进行topic之类的,当然如果是要做仿真测试,比如没有实车 但是想测试Autoware等开源自动驾驶库,则可以使用这一章节进行初步部署
注意由于Autoware 1.14 还是melodic,所以以下的测试平台是:Ubuntu 18.04 Melodic 默认py是2.7 所以需要一些复杂操作
如果不用Autoware 建议直接走到20.04 这样就是py3的天下了
apt-get
cd Documents #这是我Carla在的地方
make PythonAPI ARGS="--python-version=2"
添加秘钥 更新源并安装::
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1AF1527DE64CB8D9
sudo add-apt-repository "deb [arch=amd64] http://dist.carla.org/carla $(lsb_release -sc) main"
sudo apt-get update # Update the Debian package index
sudo apt-get install carla-ros-bridge
如果不是最新的版本(其他版本的话 请自行更改最后一句安装指令)
sudo apt-get install carla-ros-bridge=0.9.10-1
source
如果有修改这个代码的必要的话 建议使用源码安装,不过记得从git里改一下tag版本 不然master链接最新版本,目前是0.9.11
# Setup folder structure
mkdir -p ~/carla-ros-bridge/catkin_ws/src
cd ~/carla-ros-bridge
git clone https://gitee.com/roshandaddy/ros-bridge.git
cd ros-bridge
# 如果下载的版本是以前的版本记得加上下面的这部 切到tag = 0.9.10
git fetch --all --tags
git checkout tags/0.9.10.1 -b myversion
git submodule update --init
cd ../catkin_ws/src
ln -s ../../ros-bridge
source /opt/ros/melodic/setup.bash # Watch out, this sets ROS melodic
cd ..
# Install required ros-dependencies
rosdep update
rosdep install --from-paths src --ignore-src -r
# Build
catkin_make
运行ROS-Bridge节点
source /opt/carla-ros-bridge/melodic/setup.bash
roslaunch
需要在.bashrc里:
export PYTHONPATH=$PYTHONPATH:~/CARLA/PythonAPI/carla/dist/carla-0.9.10-py2.7-linux-x86_64.egg
然后就可以roslaunch了:
# Option 1: start the ros bridge
roslaunch carla_ros_bridge carla_ros_bridge.launch
# Option 2: start the ros bridge together with RVIZ
roslaunch carla_ros_bridge carla_ros_bridge_with_rviz.launch
# Option 3: start the ros bridge together with an example ego vehicle
roslaunch carla_ros_bridge carla_ros_bridge_with_example_ego_vehicle.launch

这是运行option 3的画面,在rviz里调出来看了一下lidar_point和odometry消息
附带 Autoware 截图
Carla与Autoware之间可以通过ROS转换消息后,经过frame_id的处理,在Carla中使用Autoware【主要是最近移植的时候室内场地有限,传感器也没完全所以就刚好探索一下】
这是Autoware中的ndt_mapping节点运行的情况图(跑了一下小圈的回环)

更多Autoware与carla联合仿真,见其他博文及gitee链接:
张聪明的Self-Driving 无人驾驶专栏 有关Autoware的部分哈,可以看到有些博文里的截图就是仿真里的 hhhh
gitee pull 但是我没咋写这些readme 只是拉下来做加速用的
【仿真】Carla简易安装 Window Ubuntu均适用 附ROS的简单连接 [0]的更多相关文章
- VMware Tools的简易安装---解决Ubuntu 14.10不能满屏显示问题
由于使用的VMware WorkStation是中文破解版,安装时又是简易安装,因此VMware Tools并没有安装上,导致Ubuntu 14.10在VMware中装上之后,并不能满屏显示,如图1所 ...
- 解决Bash On Ubuntu On Window安装Zsh无效问题附安装说明
前言 Zsh是一款非常棒的Shell,使用Linux和Mac系统的人,基本上都知道zsh的存在. 问题 在安装完Zsh后,zsh是可以使用的,但是重启之后,又恢复至默认的bash. 我在安装好之后,使 ...
- 【仿真】Carla介绍与基本使用 [1] (附代码 基础版)
0. 参考与前言 主要介绍无人驾驶的仿真环境CARLA,开源社区维护,以下为相关参考链接: Carla官方文档 建议后续找的时候 先按好版本号,有些功能/api 是新版本里有的 Carla官方gith ...
- 安装双系统window +ubuntu
在网上,试过很多种方法,有U盘制作安装,感觉好复杂,这边有一个简便的方法就是使用Ubuntu 的 wubi安装. 一直想安装双Ubuntu 系统很久了,可是以前在大学时期的时候一直努力,好像都不行,这 ...
- 光驱SSD安装Win7+ubuntu系统双系统
准备条件: U盘,32GB,三星品牌 SSD,120GB,三星品牌 win7旗舰版,Ghost系统(安装简单嘛),Ylmf_Ghost_Win7_SP1_x64_2016_1011.iso ubunt ...
- 在VirtualBox中安装了Ubuntu后,Ubuntu的屏幕分辨率非常小,操作非常不便。通过安装VirtualBox提供的“增强功能组件”,-摘自网络
在VirtualBox中安装了Ubuntu后,Ubuntu的屏幕分辨率非常小,操作非常不便.通过安装VirtualBox提供的“增强功能组件”,可以解决这一问题,并且使用非常方便. 一.环境 | En ...
- windows8 8.1 安装完 ubuntu无法挂载 ntfs分区 解决方法
windows8 8.1 安装完 ubuntu无法挂载 ntfs分区 解决方法: 最近安装完发现8.1系统后,ubuntu无法加载以前的ntfs分区了,特别是我添加到了/etc/fstab里面了 导致 ...
- hadoop伪分布式集群搭建与安装(ubuntu系统)
1:Vmware虚拟软件里面安装好Ubuntu操作系统之后使用ifconfig命令查看一下ip; 2:使用Xsheel软件远程链接自己的虚拟机,方便操作.输入自己ubuntu操作系统的账号密码之后就链 ...
- Ubuntu 16.04 + ROS Kinetic 机器人操作系统学习镜像分享与使用安装说明
Ubuntu 16.04 + ROS Kinetic 镜像分享与使用安装说明 内容概要:1 网盘文件介绍 2 镜像制作 3 系统使用与安装 ---- 祝ROS爱好者和开发者新年快乐:-) ---- ...
- centos中简易安装docker
centos中简易安装docker准备环境要求:请确保自己的centos的内核版本大于3.10,使用如下linux命令: uname -r1显示如下类似信息: 3.10.0-862.3.3.el7.x ...
随机推荐
- 美团二面:SpringBoot读取配置优先级顺序是什么?
引言 Spring Boot作为一种轻量级的Java应用程序框架,以其开箱即用.快速搭建新项目的特性赢得了广大开发者的青睐.其核心理念之一就是简化配置过程,使开发者能够快速响应复杂多变的生产环境需求. ...
- JS基础--JavaScript实例集锦(初学)
1.子节点childNodes: <!DOCTYPE html> <html> <head> <title>childNodes</title&g ...
- 模仿jinja2的模板语言实验,可用于简易框架中
mcw_str=''' wo shi {{ name }} ''' import re class myclass(): def inithtml(self): ret1 = re.search('{ ...
- java 执行 javascript 代码
package com.ruoyi.project.front.controller; import java.math.BigDecimal; import java.util.*; import ...
- 用 AI 速读海量文档!5款 AI 阅读工具推荐
在当今信息爆炸的时代,我们在手动搜集和处理信息时面临着几个挑战: 浩如烟海的信息量远远超出了我们的阅读能力. 信息的复杂性要求我们重复筛选和过滤. 专业或难以理解的内容需要被翻译成易懂的语言. 需要从 ...
- 【工作记录】JDBC连接MySQL,跨时区调查CST转Asia/Shangha
根据业务要求,不同的国家设置jvm参数,来确定当前时区. // -Duser.timezone=Asia/Kolkata 印度加尔各答 GMT+05:30 // -Duser.timezone=Asi ...
- 用.NET代码生成JSON Schema 验证器
问题 对于验证复杂JSON数据是否合法的需求,通常的解决方式是标准JSON Schema,.Net下有对应的JSON Schema实现库.应用程序通常需要将标准JSON schema传入实现库,来做后 ...
- k8s——核心概念篇
服务的分类 有状态 代表应用 nginx apache 优点 对客户端透明,无依赖关系,可以高效实现扩容,迁移 缺点 不能存储数据,需要额外的数据服务支撑 无状态 代表应用 MYSQL Redis 优 ...
- Java中GUI
目录 1.Java GUI 概述 2.容器 2.1 窗口 2.2 弹窗和对话框 对话框 自定义弹窗 2.3 面板 普通面板 滚动面板 分隔面板 选项卡面板 3.布局 3.1.流式布局 3.2.网格布局 ...
- jquery的筛选器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...