CARLA仿真软件(一)【软件简介及Windows下的安装】

CARLA基本介绍

CARLA是一个开源的自动驾驶模拟器。它是从头开始构建的,用作模块化和灵活的API,以解决自动驾驶问题中涉及的一系列任务。 CARLA的主要目标之一是帮助自动驾驶研发民主化,它是一种易于用户使用和定制的工具。为此,模拟器必须满足一般驾驶问题(例如学习驾驶策略,训练感知算法等)内不同用例的要求。 CARLA基于Unreal Engine来运行模拟,并使用OpenDRIVE标准(今天为1.4)定义道路和城市环境。通过使用Python和C ++处理的API授予对模拟的控制权,该API随项目的发展而不断增长。

为了简化开发,培训和验证驾驶系统的过程,CARLA演变成由社区围绕主要平台构建的项目生态系统。在这种情况下,重要的是要了解有关CARLA如何工作的一些知识,以便充分理解其功能。
CARLA官方文档

CARLA模拟器

CARLA仿真器由可扩展的客户端-服务器体系结构组成。
服务器负责与仿真本身相关的所有事情:传感器渲染,物理计算,世界状态及其参与者的更新等等。 由于它旨在获得逼真的结果,因此最合适的方法是使用专用GPU运行服务器,尤其是在处理机器学习时。
客户端由一些客户端模块组成,这些客户端模块控制场景中演员的逻辑并设置世界条件。 这可以通过利用CARLA API(Python或C ++)来实现,CARLA API是在服务器和客户端之间进行中介的层,该层不断地发展以提供新的功能。

CARLA仿真软件(一)【软件简介及Windows下的安装】_第1张图片
·交通流管理:除了用于学习的系统外,还内置了一个控制车辆的系统。它作为CARLA提供的指挥者,以逼真的行为再现城市般的环境。
·传感器:车辆依靠它们来发布周围环境的信息。在CARLA中,它们是附着在车辆上的一种特殊的行为体,它们接收到的数据可以被检索和存储,以简化这一过程。目前该项目支持不同类型的传感器,从摄像头到雷达、激光雷达等等。
·记录器:此功能用于为世界上的每个演员一步步重演模拟。它允许访问世界上任何地方的时间线中的任何时刻,是一个很好的追踪工具。
·ROS bridge和Autoware实施方法:作为一个普遍化的问题,CARLA项目结和致力于将模拟器整合到其他学习环境中。
·开放性资产:CARLA为城市环境的不同地图提供便利,并对天气条件进行控制,同时提供一个蓝图库,其中有大量的行为者可供使用。然而,这些元素可以定制,并且可以按照简单的准则生成新的元素。
·场景运行器:为了简化车辆的学习过程,CARLA提供了一系列描述不同情况的路线,供大家迭代。这些也为CARLA挑战赛奠定了基础,开放给大家测试自己的解决方案,并进入排行榜。

CARLA快速而稳定地发展,扩大了所提供的解决方案的范围,并为自动驾驶的不同方法开辟了道路。在这样做的同时,它从未忘记自己的开源性质。该项目是透明的,就像一个白盒子,任何人都可以访问工具和开发社区。在这种民主化中,CARLA找到了自己的价值所在。

Windows Build

要执行下面的make命令,必须使用具有管理员权限的Visual Studio 2017原生控制台x64,否则可能会出现权限错误。!!! 重要 要执行下面的make命令,您必须使用Visual Studio 2017 native console x64 具有管理员权限,否则可能会出现权限错误。

# Make sure to meet the minimum requirements

# Necessary software: 
#   CMake
#   Git
#   Make
#   Python3 x64
#   Unreal Engine 4.24
#   Visual Studio 2017 with Windows 8.1 SDK and x64 Visual C++ Toolset

# Set environment variables for the software

# Clone the CARLA repository
git clone https://github.com/carla-simulator/carla

# make the CARLA client and the CARLA server
make PythonAPI
make launch

# Press play in the Editor to initialize the server
# Run example scripts to test CARLA
# Terminal A 
cd PythonAPI/examples
python3 spawn_npc.py 
# Terminal B
cd PythonAPI/examples
python3 dynamic_weather.py 
# The PythonAPI will be built based on the installed Python version
# The docs will use Python3, as support for  Python2 was provided until 0.9.10 (not included)

需求

·x64系统:仿真器需要运行64位系统
·30gb硬盘空间:安装所有需要的软件和CARLA将需要相当大的空间。确保有30/50GB左右的可用磁盘空间。
·GPU:CARLA的目标是真实的模拟,所以服务器至少需要4GB的GPU。对于机器学习,强烈建议使用专用GPU。
·两个TCP端口,良好网络状态:端口默认为2000和2001。 确保防火墙和任何其他应用程序都没有阻止它们。

必要软件

**·CMake:**从简单的配置文件生成标准的构建文件。
**·Git:**管理CARLA存储库的控制系统。
**·Make:**生成可执行文件
**·Python3 x64:**主要的脚本语言

Visual Studio 2017
从这里获取2017版。社区是免费版本。使用Visual Studio安装程序安装两个额外的元素。

·Windows 8.1 SDK
**·x64 Visual C++ Toolset:**在Workloads section,选择 Desktop development with C++.

注意:其他版本的Visual Studio 可能会引发错误。完全卸载Visual Studio,请在Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\layout目录运行.\InstallCleanup.exe -full

Unreal Engine

进入虚幻引擎网站并下载Epic Games Launcher。在Engine versions/Library,下载Unreal Engine 4.24.x。确保运行它以检查所有的东西是否正确安装。

安装了VS2017和UE4.24,在右键点击.uproject文件时,应该会出现一个生成Visual Studio项目文件的选项。如果没有这个选项,说明UE4.24的安装出了问题。请创建一个UE项目进行检查,必要时重新安装。

CARLA build

获取资源

可以从官方项目资源站获取,也可以通过终端使用命令获取:

git clone https://github.com/carla-simulator/carla

获取资产

\Util\ContentVersions.txt包含了CARLA的相关资产。这些资产需要在Unreal\CarlaUE4\Content\Carla目录下解压。

设置环境变量

此步骤用于CARLA寻找Unreal Engine。如果未设置,CARLA将会循环搜索最新版本的Unreal Engine.

  1. 打开控制面板进入高级系统设置
  2. 高级面板中打开环境变量
  3. 点击新建创建变量
  4. 命名UE4_ROOT并选择UE4的安装路径

make CARLA

最后步骤是build CARLA. 不同的make命令来创建不同的依赖库。这些都需要运行在CARLA的根目录下。

·make PythonAPI :只需要第一次配置前运行或者进行版本更新后运行。之后Python脚本就可以执行。

make PythonAPI

·make launch : 编译服务器模拟器并启动虚幻引擎。按 "播放 "键启动观众视图,关闭编辑器窗口退出。摄像机可以用WASD键移动,在移动鼠标的同时点击场景进行旋转。

项目第一次可能会要求建立UE4Editor-Carla.dll等其他实例。同意才能打开项目。在第一次启动时,编辑器可能会显示有关着色器和网格距离字段的警告。这些需要一些时间来加载,在此之前城市将无法正常显示。

最后,可以通过下面脚本测试一下模拟器。在PythonAPI/examples和PythonAPI/util里面有一些例子脚本,可能对初学者特别有用。

下面的命令将在城镇中产生一些NPC,并创建一个天气循环。每个脚本应该在一个终端中运行。

# Terminal A 
cd PythonAPI/examples
python3 spawn_npc.py  
# Terminal B
cd PythonAPI/examples
python3 dynamic_weather.py 
# The PythonAPI will be built based on the installed Python version
# The docs will use Python3, as support for  Python2 was provided until 0.9.10 (not included)

注意:如果仿真器运行FPS很低,那么在Edit/Editor preferences/Performance中UE editor,关闭“Use Less CPU when in background”

在这里插入图片描述

你可能感兴趣的:(自动驾驶仿真,深度学习,自动驾驶,python)