代理模拟文档

欢迎使用 Carla 文档。此主页包含一个索引,其中简要说明了文档中的不同部分。运行 入门示例 后可以按自己喜欢的顺序随意阅读。

入门示例

  1. 下载 链接 中的software/carla_0.9.15中的所有文件并解压;
  2. 运行WindowsNoEditor文件夹下的CarlaUE4.exe启动场景,进入场景后按WSAD移动场景视角;
  3. 使用Python37/python.exe运行脚本 generate_traffic.py 在场景中生成交通流和运行 python manual_control.py 生成一辆键盘控制的车。

注意

如果运行CarlaUE4.exe时候报错:缺少Microsoft Visual C++ Runtime、DirectX Runtime,则需要安装 vs_community__2019.exe (勾选使用C++的桌面开发)和 directx_Jun2010_redist.zip (解压后运行DXSETUP.bat)。当机器性能一般或者调试时,可以降低画质来启动,以获得更流畅的效果:CarlaUE4.exe -quality-level=Low。如果对文档中的任何问题可以在 本文档的源码仓库 中的 Issues 页面进行提问或者提交 Pull Request 直接修改文档。


简介

介绍 — 对 Carla 的期望

快速启动包安装 — 获取 Carla 版本

第一步 — 开始进行 Carla 操作,介绍最重要的概念

教程 — Carla 详细教程

示例 — Carla 经典示例

主题

基础 — Carla 服务器和客户端进行操作和通信所需的基本概念

第一、 世界和客户端 — 管理和访问模拟

第二、 参与者和蓝图 — 了解参与者以及如何处理它们

第三、地图和导航 — 发现不同的地图以及车辆如何移动

第四、 传感器和数据 — 使用传感器检索模拟数据

开发 — 创建自定义功能或内容

自定义资产 — Carla 中资产的的开发

内容创作 - 地图 — 自定义地图的创作

内容创作 - 车辆 — 自定义车辆的创作

交通

交通模拟概述 — 可用于使用交通填充场景的不同选项的概述

交通管理器 — 通过将车辆设置为自动驾驶模式来模拟城市交通

和 SUMO 协同模拟 — 在 Carla 和 SUMO 之间运行协同模拟

Scenic — 遵循使用 Scenic 库定义不同场景的示例

行人

行人导航 — 使用骨骼为行人设置动画

控制行人骨架 — 使用骨骼为行人设置动画

行人视觉 — 使用相机进行人眼的模拟

生成行人导航 — 获取行人四处走动所需的信息

行人建模 — 在三维建模软件中对人进行建模

高级概念

OpenDRIVE 独立模式 — 使用任何 OpenDRIVE 文件作为 Carla 地图

记录器 — 在模拟中记录事件并再次播放

渲染选项 — 从质量设置到不渲染或离屏模式

责任敏感安全 — Carla 客户端库中的责任敏感安全实现

同步和时间步长 — 客户端-服务器通信和模拟时间

Carla 代理 — 代理脚本允许单个车辆在地图上漫游或开车到设定的目的地

Carla 设置 — Carla 参数配置设置

Carla 模拟器键盘输入 — 在模拟器窗口中玩游戏时使用的按键绑定

无显示屏运行 Carla 并选择 GPU — 使用未插在屏幕上的GPU来渲染 Carla 的桌面

链接 Epic 的汽车材质 — 下载材质并将其链接到我们的车辆,以获得更逼真的车漆。

自定义地图

Carla 中自定义地图的概述 — 添加自定义标准尺寸地图所涉及的过程和选项的概述

在 RoadRunner 中创建地图 — 如何在 RoadRunner 中生成海关、标准尺寸的地图

在 Carla 包导入地图 如何在 Carla 包中导入地图

在 Carla 源构建中导入地图 — 如何在 Carla 中导入从源构建的地图

导入地图的替代方法 — 导入地图的替代方法

手动准备地图包 — 如何准备地图以供手动导入

自定义地图:分层地图 — 如何在自定义地图中创建子图层

自定义地图:红绿灯和标志 — 如何将红绿灯和标志添加到您的自定义地图

自定义地图:道路画家 — 如何使用道路画家工具改变道路的外观

自定义地图:天气和景观 — 为您的自定义地图创建天气配置文件并填充景观

使用 OpenStreetMap 生成地图 — 使用 OpenStreetMap 生成用于模拟的地图

自定义地图:程序建筑 — 用建筑物填充您的自定义地图

程序化建筑工具 有助于生成虚拟三维建筑,可以通过简单的界面对其尺寸和装饰风格进行调制,以创建近乎无限的变化

数字孪生工具 — 通过 OpenStreetMap 自动生成 Carla 中的道路和建筑

大地图概述 — Carla 中大地图工作原理的说明

在 RoadRunner 中创建大地图 — 如何在 RoadRunner 中创建大地图

导入/打包大地图 — 如何导入大地图

自定义开发

添加摩擦触发器 — 定义车轮的动态框触发器

控制车辆物理模型 — 设置车辆物理的运行时的变化

检索模拟数据 — 使用记录器正确收集数据的分步指南

在 Docker 中构建虚幻引擎和 Carla — 在 Docker 中构建虚幻引擎和 Carla

添加新车辆 — 准备要在 Carla 中使用的车辆

添加新道具 — 将其他道具导入 Carla

创建独立包 — 为资产生成和处理独立包

材料定制 — 编辑车辆和建筑材料

如何升级内容 — 向 Carla 添加新内容

创建一个传感器 — 开发一个用于 Carla 的新传感器

创建语义标签 — 为语义分割定义自定义标签

自定义车辆悬架 — 修改车辆的悬架系统

生成详细碰撞 — 为车辆创建详细的对撞

发布版本 — 如何发布 Carla

调试程序 — 进行程序的调试

基准测试

自动驾驶排行榜 - 评估自动驾驶人员在现实交通场景中的驾驶熟练程度

驾驶基准 — 用于评估驾驶控制器(代理)并获取有关其性能的指标

基准性能 — 分析 Carla 在自己的环境中的性能

驾驶基准结构 — 驾驶基准模块的总体结构

测试代理 — 对你的代理进行基准测试

计算的基准性能指标 — 用于根据代理在基准测试期间执行的操作计算结果摘要

生态系统

ISS 智能驾驶系统 — 包含用于自动驾驶相关任务的传统和深度学习算法

交通场景 — 基于 Carla 交通场景定义和执行引擎

Web 可视化器 — 侦听模拟并在网络浏览器中显示场景和一些模拟数据的插件

ROS — 机器人操作系统桥接器的简要概述和完整文档的链接

CarSim 集成 — 关于如何使用 CarSim 车辆动力学引擎运行模拟的教程

RLlib 集成 — 了解如何使用 RLlib 库运行您自己的实验

Chrono 集成 — 使用 Chrono 积分来模拟物理

OpenRadios 有限元模拟 — 针对动态负载下的高度非线性问题评估和优化产品性能

PTV-Vissim 联合模拟 — 在 Carla 和 PTV-Vissim 之间运行协同模拟

Ansys 实时雷达模型 — 有关 Ansys RTR 网络研讨会的详细信息

Matlab 接口 使用 Python 和 ROS 在 Matlab 中调用 Python

罗技 G29 方向盘 — 使用罗技方向盘进行车辆控制和模拟对方向盘的反向控制

OpenSCENARIO 播放器 — 基本的 OpenSCENARIO 播放器

有限元变形材料虚幻插件 — 用有限元法用于变形材料物理的多线程 CPU 库

地理空间生态系统 — 将 3D 地理空间生态系统引入虚幻引擎

应用Carla的仓库列表 - 收集引用了Carla的相关库。

源代码编译

构建 Carla — 进行 Carla 编译

Linux 上编译 — 在 Linux 上进行编译

Windows 上编译 — 在 Windows 上进行构建

Carla 更新 — 了解最新内容

构建系统 — 了解构建及其制作方式

Docker 中的 Carla — 使用容器解决方案运行 Carla

常见问题 — 一些最常见的安装问题

贡献

贡献指南 — 为 Carla 做出贡献的不同方式

行为准则 — 贡献者的标准权利和义务

编码标准 — 编写正确代码的指南

文档标准 — 编写适当文档的指南

其他

RoadRunner — 用于构建静态场景

RoadRunner Scenario — 用于构建动态交通场景

Carla 中文站 — 中文交流社区

虚幻引擎 — 虚幻引擎相关教程

Blender 手册 — 三维建模软件

文件说明 — 说明源代码中各个文件的作用

待做列表 — 待完成的功能

参考

Python API 参考 — Python API 中的类和方法

C++ 参考 — Carla C++ 中的类和方法

资源目录 — Carla 中资源的目录列表

传感器 — 关于传感器及其检索数据的一切

蓝图库 — 提供用于生成参与者的蓝图

记录器二进制文件格式 — 记录器文件格式的详细说明

测量和数据包 - 描述服务器每帧向客户端发送一个包含测量值和收集到图像数据包的详细信息

扩展文档 — 其他