一、安装
1.1 windows下安装
- 下载zip文件安装
- 到git下直接下载windows版本, 下面可以选择版本, 这里我用最新版
- 在解压的文件中的…\PythonAPI\carla\dist中的.egg文件要求的版本安装Python。我这里是carla-0.9.12-py3.7-win-amd64.egg,所以安装Python3.7版本
- 确保安装了python的情况下执行:
pip install --user pygame numpy -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
pip install -r requirements.txt -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
pip install shapely -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
- 进入到解压文件双击CarlaUE4.exe, 就可以启动啦 用键盘的QWEASD和鼠标控制视野
正在上传…重新上传取消
5.如果报错说缺少Microsoft Visual C++ 和 DirectX, 或者其中之一参考下面链接
pip install carla
- 对于0.9.10版本的carla安装包应该这样装
easy_install .\carla-0.9.10-py3.7-win-amd64.egg
1.2 ubuntu下安装
- 环境要求
至少需要6GB的GPU
carla需要大概20GB的磁盘空间
Python: 这里用python3.7(一般在下载的PythonAPI\carla\dist下查看)
- 升级pip3并安装pygame和numpy
pip3 install --upgrade pip -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
pip install --user pygame numpy -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
- Debian 安装
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
sudo apt-get install carla-simulator
cd /opt/carla-simulator
carla-simulator=你要的版本,这里安装最新版本0.9.12
apt-cache madison carla-simulator
sudo apt-get install carla-simulator=0.9.12
- 安装carla包
cd PythonAPI/carla/dist/
pip3 install carla-0.9.12-cp37-cp37m-win_amd64.whl
或者
pip3 install carla
- 可以启动啦
cd /opt/carla-simulator/bin/
./CarlaUE4.sh
1.3 docker下安装
- 安装docker
- 安装依赖: nvidia-docker2和nvidia-container-runtime
- sudo apt-get install nvidia-docker2
- 可能报错:
- 解决办法执行下面
+
$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -
$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
$ curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
$ sudo apt-get update
- 然后安装 sudo apt-get install nvidia-container-runtime
- 拉取镜像:我这里是0.9.11版本, 也可以自选版本,或者docker pull carlasim/carla:latest最新版本
- 启动
undefined
二、初识carla
- carla默认的交互端口为2000和2001
2.1 carla的交互形式
来自carla官网的图片如下: Server + Client两个模块 (建立仿真世界+控制改变仿真世界)
正在上传…重新上传取消
2.2 carla的核心模块
- Traffic Manager: 交通管理器。 负责模拟现实世界复杂的的交通环境,(后面细说比较复杂)
- Sensors: Carla里面有各种各样模拟真实世界的传感器模型,包括相机、激光雷达、声波雷达、IMU、GNSS等等。为了让仿真更接近真实世界,它里面的相机拍出的照片甚至还有畸变和动态模糊效果。用户一般将这些Sensor attach到不同的车辆上来收集各种数据。
- Recorder: 这个模块是用来记录仿真每一个时刻(Step)的状态,可以用来回顾、复现等等。
- ROS bridge: 这个模块可以让Carla与ROS还有Autoware交互,正是这个模块的存在使得在仿真里测试你的自动驾驶系统变得可能,十分重要。
2.3 小案例一
(实践是检验真理的唯一标准)
- 在仿真世界中创建一辆小车,并控制行驶
- 在编程过程中,一般按照下面三个元素抽象层级的顺序进行编程
- world:先创建这个仿真世界
- blueprint: 获得所有actor的blueprint
- actor: 所有仿真世界的 ‘演员’ 车、人、传感器
- 代码演示
三、核心模块扩展
3.1 Sensors
- 第一类返回数据都是类的实例
- RGB camera : RGB相机 普通摄像头
- Semantic Segmentation camera: 语义分割相机
- Depth camera: 深度相机
- Optical Flow Camera : 光流相机
- DVS camera(Dynamic Vision Sensor): 动态视觉传感器相机
- Gnss sensor: 导航卫星定位传感器
- Lidar raycast.:激光雷达传感器
- Radar: 雷达
- SemanticLidar raycast: 语义激光雷达
- IMU sensor:惯性传感器
- RSS sensor(responsibility sensitive safety) : 责任敏感安全传感器
- 第二类, 返回是一个触发事件
- Collision detector: 碰撞检测
- Lane invasion detector: 压线检测
- Obstacle detector: 障碍物检测
3.1.1 代码演示
- 注册传感器蓝图
- 设置传感器的参数
- 放置的位置
- 监听返回结果
3.2 Traffic Manager 车辆管理模块
正在上传…重新上传取消
3.3 行为控制部分
-
确定起始位置和结束位置,生成航路点 networkx?
-
根据判断的信息进行操控小车
-
代码演示与讲解
3.4 可视化工具carlaviz
- 0.9.10: 与pygame结合进行展示
- docker run -it -p 8080:8080 -p 2000:2000 -e CARLAVIZ_HOST_IP=localhost -e CARLA_SERVER_IP=localhost -e CARLA_SERVER_PORT=2000 mjxu96/carlaviz:0.9.10
Original: https://blog.csdn.net/weixin_42464652/article/details/127109092
Author: 有梦想的塔姆
Title: carla入门
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/779028/
转载文章受原作者版权保护。转载请注明原作者出处!