当前位置:   article > 正文

自动驾驶仿真工具之汇总_自动驾驶系统开发工具清单

自动驾驶系统开发工具清单

大家好,我已经把CSDN上的博客迁移到了知乎上,欢迎大家在知乎关注我的专栏慢慢悠悠小马车https://zhuanlan.zhihu.com/duangduangduang。希望大家可以多多交流,互相学习。


近来想找一个开源免费的、针对高速场景的、使用便捷的自动驾驶仿真环境,进行了一些调研。可惜的是,大多数工具并没有找到他们具体支持什么、能做到什么程度的官方说明。参考这篇博文,将闭环仿真测试系统分为车辆仿真平台和自动驾驶软件两部分。像Baidu Apollo 和 Autoware 属于自动驾驶软件,他们更侧重于通过逻辑、算法控制车辆的行为,在这里不过多赘述。仿真平台侧重于提供虚拟场景的搭建,以测试自动驾驶软件的性能,现汇总如下:

1. CARLA(最新版本)

  • 支持Linux 和 Windows,基于Unreal Engine。
  • Python API。
  • ROS-Bridge,支持ROS。
  • 7 towns,基本覆盖了高速、城市、乡村、坡道、缺少交通信号、交叉路口等场景。
  • 天气、光照等环境可调。
  • 多种车辆、建筑物、行人模型,支持除radar外的主流传感器。
  • 有分别提供RGB信息、深度信息、语义分类信息的Camera。
  • 支持自行车、摩托车等模型。
  • 可以自己导入地图,但是在使用RoadRunner生成自定义的地图时,会遇到一些问题。具体可以关注issues
  • 具体可参考我的这篇博文

2. AirSim

  • 支持Linux、Windows、PX4,基于Unreal Engine。
  • 多种语言API,包括C++, Python, C# and Java。
  • 支持ROS。
  • 支持除radar外的主流传感器。
  • 预定义的车辆模型和场景没有找到说明,猜测可以自定义。

3. PreScan

  • 商用收费软件,主流。
  • 只支持Windows。
  • 图形化窗口操作,界面清晰友好。
  • 不清楚破解版保留了多少功能。
  • 参考博文

4. Udacity self-driving car

  • 简单,对硬件要求低。
  • 基于Unity,车辆模型可以自己通过Unity开发导入,不知道场景是否也可以这样做。猜测可以。
  • 界面效果比较卡通。
  • 侧重训练端到端的神经网络。不知道对于各种感知、融合、规划、控制的算法效果如何。
  • 参考博文

5. LGSVL

  • 支持Linux 和 Windows。
  • ROS/ROS2 integration。
  • Python API。
  • 极其逼真的车内驾驶环境。
  • LGSVL Simulator 提供了官方教程,介绍如何与 Autoware 或者 Apollo(支持3.0和3.5) 结合。Autoware 也已经将 LGSVL Simulator 嵌入到自己的系统。
  • Real world sensor models including LiDAR, RADAR, GPS, IMU, camera,support Velodyne 128, 64, 32 channels (VLS-128, HDL-64E, Ultra Puck, etc.), Continental RADAR
  • 有分别提供RGB信息、深度信息、语义分类信息的Camera。
  • 可以设置交通、行人、天气环境。
  • 预置了多个城市的地图。也可以自己生成HD/vector maps。
  • 可参考官方overview

6. 汇总7. 其他

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
  • 网页3D应用程序中一个常见的交互行为是用户点击场景中的某个热点,然后呈现特定的内容,如视频、音频、对话框;或者进行场景切换。本教程说明如何在Stone工具中轻松实现这样的热点交互。在左侧工具栏实体添加子栏目中,有一个灯泡状的图标按钮,如下所... [详细]

  • 本篇博文深入研究了在使用ElementUI构建表单时的一项常见挑战——即便表单项被隐藏,仍然会进行验证。这个问题的出现源于Vue的v-show指令。我们提出了两种创新策略和对应的代码示例来克服这个问题:首先,我们引入Vue的v-if指令来控... [详细]

  • 这次的版本带来了数百个虚幻引擎4的更新,包括来自GitHub的社区成员们提交的145个改进!感谢所有为虚幻引擎4添砖加瓦贡献的人们:alk3ovation,Allegorithmic(Allegorithmic),AlwinTom(alwi... [详细]

  • git删除本地分支和远程分支_gitdeletebranchlocallygitdeletebranchlocally//deletebranchlocallygitbranch-dlocalBranchName//deletebranch... [详细]

  • LandsatLevel2科学产品是从满足GEE中LandsatSentinelModis主要数据集区别一Landsat1.Collection1/2的区别Collection2是LandsatLevel1数据的又一次重大再处理,显著... [详细]

  • Taro把一些小程序的原生组件给抽成了插件包括但不限于:editor/page-container,所以直接在代码中写的话是不会被渲染出来的,得经过下面的操作才可以。_tarovue文本编辑tarovue文本编辑一、引入小程序文本编辑... [详细]

  • 本节紧跟着上一篇,主要实现对象池程序化生成敌人和属性配置。【Unity小技巧】Unity探究自制对象池和官方内置对象池(ObjectPool)的使新增对象池脚本PoolManager//预制体数组//对象池数组//初始化对象池数组inde... [详细]

  • 关于jmeter定时器我们前已经了解了其中几个,接下来我们继续熟悉一下几个定时器作用!JSR223定时器JSR223定时器实际可以通过java、JavaScript、beanshell等多种语言去实现我们定时功能,类似于下面提到... [详细]

  • el-dialog中的el-form-item文字超过长度,设置隐藏,最后面用三个点表示。_el-form-item中label文字超长el-form-item中label文字超长el-dialog中的el-form-item文字超过长度,... [详细]

  • ArkTS是一个为鸿蒙组件而生的框架,语法亲人好用。基于TypeScript,ArkTS拓展了声明式UI、状态管理等的能力,从本质上来讲,是TypeScript的扩展,主要服务于前端。ArkTS开发可以满足“一次开发,多端部署”的需求,真... [详细]

  • 本文介绍了在WPF数据绑定如何配合Linq使用。通过DemoWPF数据绑定(二)准备今天学习的Demo是DataBinding中的Linq:创建一个空白解决方案,然后添加现有项目,选择Linq,解决方案如下所示:查看这个Demo的效果... [详细]

  • 点击跳转>>jmeter--由浅入深学性能系列需求下面有3个场景,思考一下在jmeter里面如何设计场景1:有一个项目,500用户同时登录,响应时间能达到多少场景2:考勤打卡,最大吞吐量能达到多少(每秒最大能完成多少笔打卡业务)场景3:银行... [详细]

  • 分布式搜索引擎elasticsearch第一部分1.初识elasticsearch1.1.了解ES1.1.1.elasticsearch的作用elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据... [详细]

  • 目录一:运行效果展示(2D&2.5D)二:制作地面素材库1.创建Tilemap;2.创建素材库三.绘制地图1.一个单位范围设置2.框选填充3.擦除之前的内容4.智能填充四.添加场景素材五:编写人物player控制代码和移动动画1.人物常规的... [详细]

  • NETWORK1请描述TCP/IP协议中主机与主机之间通信的三要素参考答案IP地址IPaddress)子网掩码subnetmask)IP路由IProuter)2请描述IP地址的分类及每类的范围参考答案A类1-26B类128-191C... [详细]

  • 请注意,上述步骤是一个概述,具体的安装步骤可能会随着CARLA和UnrealEngine版本的更新而变化。务必参考CARLA官方文档中的最新安装指南,以获取详细的安装和配置说明。系统要求:确保你的Linux系统满足CARLA的最低系统要求。... [详细]