自动驾驶车辆仿真模拟软件盘点

机器人模拟是每个机器人工具箱中的重要工具。精心设计的模拟器可以快速测试算法,设计机器人,执行回归测试,并使用逼真的场景训练AI系统。无人驾驶汽车作为轮型机器人,它的安全性和可靠性同样需要通过海量的功能和性能测试来保证。本文概述了现在普遍被用来做自动驾驶仿真模拟/离线测试的软件。

无人驾驶汽车真实上路后所要面临的外部环境是复杂多变的。通过利用仿真模拟软件可以检查算法,也可以训练无人车面对不同场景下的感知、决策等算法。

模拟平台有很多种,如果分类的话,可以分为两种:开源和收费的。从技术上分,也主要有两种:第一种是基于合成数据对环境、感知以及车辆进行模拟,这种模拟器主要用于控制与规划算法的初步开发上;第二种是基于真实数据的回放以测试无人驾驶不同部件的功能及性能。

开源模拟平台

Gazebo

Gazebo平台可以提供在复杂的室内和室外环境中准确有效地模拟训练机器人的能力。它拥有一个强大的物理引擎,高品质的图形,方便的编程和图形界面。最重要的是,Gazebo是一个充满活力的社区免费。三维机器人模拟器Gazebo一般结合机器人操作系统ROS来测试。

优点:

1.动力学仿真

可以连接多个高性能物理引擎,包括ODE,Bullet,Simbody和DART。

2.先进的3D图形

Gazebo利用OGRE提供逼真的渲染环境,包括高质量的照明,阴影和纹理。

3.传感器和噪音

从激光测距仪,2D / 3D摄像机,Kinect风格的传感器,接触式传感器,力矩等等生成传感器数据,可选的噪音。

4.插件

可开发机器人,传感器和环境控制的自定义插件。插件可直接访问Gazebo的API。

5.机器人模型

提供了许多机器人,包括PR2,Pioneer2 DX,iRobotCreate和TurtleBot。 或者使用SDF构建你自己的。

6.命令行工具

广泛的命令行工具有利于模拟内省和控制。

7.云模拟

通过运用Gazebo的功能来整合现有的模型和传感器。

应用:

在无人驾驶车辆测试方面,github上有人用ROS动能和Gazebo 8做过一个Car Demo,车辆的油门、刹车、转向和传动都是通过一个ROS系统去控制。所有传感器数据都是通过ROS发布,并且可以用RVIZ可视化。利用Gazebo功能整合现有的模型和传感器,构建城市模型和一个高速公路交互场景,垃圾箱、交通锥和加油站等都来自Gazebo模型库。在车顶处搭载一个16线激光雷达,8个超声波传感器,4个摄像头和2个平面激光雷达。代码可以从Github 网址得到。通过Nvidia-docker并从Docker Hub中提取osrt/car_demo进行尝试。该平台基于C++开发,系统要求ROS+Ubuntu环境。

相关链接:https://github.com/osrf/car_demo

EuroTruck Simulator 2

Euro Truck Simulator 2 本身是一个卡车模拟经营类游戏,可以通过代码训练和运行自动驾驶汽车,。通过AI输出的结果实现自动转向、加速和刹车,可以用来强化学习训练车辆算法。它的缺点是只能控制上下左右四个方向键,不能设置方向盘的角度。

除了Euro Truck Simulator 2,还有The Open Racing Car Simulator游戏也可以被用来进行自动驾驶汽车的训练。

应用:gibbgub上有人做了Self-driving-truck项目,基本训练方法遵循接近原始的 Atri 论文中的强化学习标准,此外该模型还试图未来的状态和奖励。训练中还使用了一些手工创建的模型和自动生成的模型。

配置要求:

CPU: Core 2 Duo 2.2 GHz,

内存:1 GB RAM (2 GB RAM - Vista/7)

显卡:512 MB (GeForce 6800 or better)

硬盘:1.2 GB HDD

系统:Windows、Mac OS X、SteamOS + Linux

编程:基于Python。

EuroTruck下载地址:

链接:http://pan.baidu.com/s/1qXCb6o8 密码:219x

Torcs

The Open Racing Car Simulator(TORCS)是一款开源3D赛车模拟游戏。是在Linux操作系统上广受欢迎的赛车游戏。有50种车辆和20条赛道,简单的视觉效果。用C和C++写成,释放在GPL协议下。

应用:有人用深度学习框架Keras和深度强化学习算法DDPG去训练Torcs汽车。也有人使用gym_torcs库,在python中直接调用torcs,接口类似于OpenAI的Gym。还有人做了基于DRL和TORCS的自动驾驶仿真系统,

相关链接:

https://github.com/ugo-nama-kun/gym_torcs

https://www.jianshu.com/p/a3432c0e1ef2

https://www.cnblogs.com/Qwells/p/6379077.html

Unity

自动驾驶汽车需要自动驾驶软件来驱动,而在线教育公司Udacity(优达学城)推出了面向自动驾驶开发的纳米学位,来满足目前汽车行业对自动驾驶软件工程师旺盛的需求。近日,Udacity通过开源协议授权公开了它的自动驾驶汽车模拟器,有 Unity 技术背景的任何人都可以利用此模拟器的资源,载入软件内置场景或创建自己的虚拟测试路线。

该模拟器是为优达自动驾驶,旨在教学生如何使用深度学习驾驶汽车,支持Linux、Mac、Windows环境,只需将数据库复制到本地目录,确保使用Git LFS 带动大量的纹理和模型资源。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190521A0O4FO00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券