【Apollo】阿波罗自动驾驶:塑造自动驾驶技术的未来

在这里插入图片描述
前言

  Apollo (阿波罗)是一个开放的、完整的、安全的平台,将帮助汽车行业及自动驾驶领域的合作伙伴结合车辆和硬件系统,快速搭建一套属于自己的自动驾驶系统。
开放能力、共享资源、加速创新、持续共赢是 Apollo 开放平台的口号。百度把自己所拥有的强大、成熟、安全的自动驾驶技术和数据开放给业界,旨在建立一个以合作为中心的生态体系,发挥百度在人工智能领域的技术优势,为合作伙伴赋能,共同促进自动驾驶产业的发展和创新。
  Apollo 自动驾驶开放平台为开发者提供了丰富的车辆、硬件选择,强大的环境感知、高精定位、路径规划、车辆控制等自动驾驶软件能力以及高精地图、仿真、数据流水线等自动驾驶云服务,帮助开发者从 0 到 1 快速搭建一套自动驾驶系统。


📕作者简介:热爱跑步的恒川,致力于C/C++、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。
📗本文收录于恒川的日常汇报系列,大家有兴趣的可以看一看
📘相关专栏C语言初阶、C语言进阶系列等,大家有兴趣的可以看一看
📙Python零基础入门系列,Java入门篇系列正在发展中,喜欢Python、Java的朋友们可以关注一下哦!

塑造自动驾驶技术的未来

  • 1. Apollo 里程碑
  • 2. 开放平台架构
  • 3. Apollo 开放平台使用文档
    • 3.1 如果您想快速使用上 Apollo
    • 3.2 如果您想了解 Apollo 源代码
  • 4. 下一步
  • 5. 文档意见反馈

1. Apollo 里程碑

  从 2017 年 4 月 Apollo 开放计划宣布到现在,历经5年,Apollo 已经发布了12个版本到了 Apollo 8.0,持续的在多维度创新。 这5年分为3个阶段。第一阶段是从最开始的封闭场地循迹自动驾驶到2.0的简单城市路况,Apollo搭建了基础的自动驾驶基础能力;第二阶段是从2.5限定区域视觉高速到6.0 EDU的教育专版,Apollo积累了丰富的场景能力。第三阶段,从7.0 开始,Apollo专注提升工程易用性,从开发者实际需求出发,帮助更多开发者更好更快的使用Apollo。每一次的升级都将自动驾驶开放平台的能力边界从多维度向外拓展。在这里插入图片描述

2. 开放平台架构

  为了更好的使用 Apollo,需要您简单了解一下开放平台的架构。以下为 Apollo 8.0 最新架构图,其分别由硬件设备平台、软件核心平台、软件应用平台和云端服务平台四层组成

  • 硬件设备平台:帮助开发者解决 Apollo 自动驾驶系统搭建过程中的线控车辆以及传感器等硬件设备问题;对于车辆硬件设备而言,又包括认证线控车辆和开放车辆接口标准两个部分。对于其他硬件设备而言,包括传感器、计算单元等各类参考硬件和硬件标准。详细信息可以参考 Apollo 硬件开发平台。
  • 软件核心平台:Apollo 软件核心平台提供了自动驾驶车端软件系统框架与技术栈。其包括底层的操作系统,中间层的实时通信框架,以及上层的自动驾驶应用层,如感知、预测、规划、控制、定位等。
  • 软件应用平台:Apollo 软件应用平台提供了面向不同应用场景的工程以及自动驾驶应用模块的能力扩展。通过应用平台层,开发者可以更方便得基于Apollo各模块能力进行裁剪组合并扩展。
  • 云端服务平台:Apollo 云端服务平台提供了自动驾驶研发过程中的研发基础设施,提升自动驾驶研发效率。

  自动驾驶与传统互联网软件研发不同,一是实车测试成本高,二是数据量非常大。而一套能够满足自动驾驶开发流程需求,并提升研发效率的研发基础设施就非常之重要。

  Apollo 云端服务平台通过云端的方式解决了数据利用效率的问题,通过与仿真结合降低了实车测试成本,能够极大的提升基于 Apollo 的自动驾驶研发效率。从研发流程上讲,Apollo 车端通过数据采集器生成开放的数据集,并通过云端大规模集群训练生成各种模型和车辆配置,之后通过仿真验证,最后再部署到 Apollo 车端,无缝连接。这整个过程其实包含了 2 个迭代循环,一个是模型配置迭代,一个是代码迭代,都通过数据来驱动
在这里插入图片描述
  根据 Apollo 开放的能力和提供的服务,开发者可以既省心又省力的快速搭建和部署自己的自动驾驶系统。

3. Apollo 开放平台使用文档

  本文档旨在让开发者全面的了解 Apollo 的学习使用。

  Apollo 开放平台为开发者提供预先编译好的 Apollo 安装包,节省大量的编译时间,环境的部署准备时间从天级别降低到小时级。开发者在下载安装包并安装好 Apollo 之后,便可以在本地电脑上实践 Apollo 。

  • 基于 Apollo 可视化交互工具 Dreamview 做本地的PNC仿真实践。
  • 基于云端仿真平台 Dreamland 的在线仿真实践。
  • 基于 Apollo 可视化交互工具 Dreamview 做感知开发调试实践。

  在硬件的选型上,开发者可以参考 Apollo硬件开发平台 和 Apollo开放车辆认证平台 来搭建自己的自动驾驶系统硬件;为了更加省心,推荐您使用底盘和传感器套件一体的 Apollo D-KIT。开发者搭建自动驾驶车辆的过程中,也可以使用 Apollo Fuel 自动驾驶研发云 来完成诸如车辆动力学标定、传感器标定等搭建流程,以提升研发效率。

3.1 如果您想快速使用上 Apollo

  您可以参考本文档一步步完成 Apollo 8.0的安装、快速上手 Apollo 和上机使用。相信这些文档会帮助您更加深入的了解 Apollo 的各个核心模块的能力。

文档结构

  • 发版说明:每次发版更新内容的简介。
  • 安装说明:关于如何安装 Apollo 软件包以及源码的说明文档。
  • 使用指南:概述上机实践及上车实践。通过上级实践,可以方便的进行感知、决策规划等各模块开发与仿真验证。上车实践介绍 Apollo 车辆适配流程,你可以掌握自动驾驶线控设计,并最终开发出适配 Apollo 的线控车辆。之后,通过车辆硬件集成、标定、循迹流程,可以完成车辆集成闭环验证。最后,通过实车自动驾驶闭环流程,可以了解车辆安全操作、测试流程以及定位、控制调车。
  • 应用实践:介绍自动驾驶通信的应用实践案例以及上车实践操作。
  • 数据格式:解释 Apollo 各模块间通信的 channel 的数据格式以及各模块配置参数的含义。
  • 软件包简介:解释 Apollo各种软件包区别及使用软件包二次开发的实践操作。

3.2 如果您想了解 Apollo 源代码

  如果您想从底层了解 Apollo 甚至为 Apollo 代码库做贡献,那么您可以参考 Apollo Github 库 的源码及相关资料。

  Apollo Github 库为开发者提供丰富的技术文档、使用指南和开放的源代码。

4. 下一步

  现在您已了解 Apollo 开放平台以及 Apollo 文档的相关内容。 接下来,开发者可以参考 安装说明安装 Apollo 了。

  最后别忘记加入 Apollo 开发者社区,社区有大量的资料供开发者阅读使用。

5. 文档意见反馈

  如果您在使用文档的过程中,遇到任何问题,请在【开发者社区】建立的 反馈意见收集问答页面,反馈相关的问题。我们会根据反馈意见对文档进行迭代优化。
更全面的Apollo社区官网文档
  Apollo社区官网文档,主要为新手开发者提供Apollo相关介绍、以及上机场景和上车场景的实践说明,让新手开发者能快速了解Apollo并上手实操。在8.0中,我们优化了社区官网文档的结构,从开发者使用场景出发,针对不同场景提供应用实践案例指导以及扩展开发指导。
在这里插入图片描述
  社区官网文档:https://apollo.baidu.com/community/Apollo-Homepage-Document/Apollo_Doc_CN_8_0。
  另外还有活动任务《星火培训》:星火培训。
  Apollo 8.0从“新架构”、“新能力”两个重要层面进行了全面升级,从开发者的实际需求出发进行改良,帮助开发者更好、更快地熟悉和使用Apollo开放平台。此次Apollo开放平台8.0的推出,再次让Apollo开放平台在工程易用性上向前迈进一大步,降低操作难度、操作成本的门槛,让更多开发者可以简单方便地上手Apollo开放平台、投身自动驾驶技术领域。


如果这份博客对大家有帮助,希望各位给恒川一个免费的点赞👍作为鼓励,并评论收藏一下,谢谢大家!!!
制作不易,如果大家有什么疑问或给恒川的意见,欢迎评论区留言。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/76480.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Unity每日一记】方位辨别—向量的叉乘点乘结合

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:uni…

Go 语言并发编程 及 进阶与依赖管理

1.0 从并发编程本质了解Go高性能的本质 1.1 Goroutine 协程可以理解为轻量级线程; Go更适合高并发场景原因之一:Go语言一次可以创建上万协成; “快速”:开多个协成 打印。 go func(): 在函数前加 go 代表 创建协程; time.Sleep():…

阿里云OSS对象存储的核心概念与购买应用

文章目录 1.OSS对象存储基本介绍1.1.OSS对象存储概念1.2.NAS与OSS存储的不同1.3.OSS的应用场景1.4.OSS术语对应表 2.购买OSS存储资源包3.KodCloud云盘接入OSS对象存储3.1.创建Bucket存储空间3.2.创建子用户用于管理Bucket3.3.获取用户的AccessKey3.3.为用户设置权限3.4.将Bucke…

PHP实践:分布式场景下的Session共享解决方案实现

🏆作者简介,黑夜开发者,全栈领域新星创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责…

PHP实现在线年龄计算器

1. 输入日期查询年龄 2. php laravel框架实现 代码 /*** 在线年龄计算器*/public function ageDateCal(){// 输入的生日时间$birthday $this->request(birthday);// 当前时间$currentDate date(Y-m-d);// 计算周岁$age date_diff(date_create($birthday), date_create($…

通过OpenTelemetry上报Python-flask应用数据(阿里云)

参考文档 https://help.aliyun.com/document_detail/611711.html?spma2c4g.90499.0.0.34a056ddTu2WWq 先按照 方法一:手动埋点上报Python应用数据 步骤测试上报是否正常。 flas 上报 在 手动埋点上报Python应用数据 的基础上,上报flask应用的数据&#…

LeetCode 160.相交链表

文章目录 💡题目分析💡解题思路🚩步骤一:找尾节点🚩步骤二:判断尾节点是否相等🚩步骤三:找交点🍄思路1🍄思路2 🔔接口源码 题目链接👉…

leetcode 力扣刷题 数组交集(数组、set、map都可实现哈希表)

数组交集 349. 两个数组的交集排序+双指针数组实现哈希表unordered_setunordered_map 350. 两个数组的交集Ⅱ排序 双指针数组实现哈希表unordered_map 349. 两个数组的交集 题目链接:349. 两个数组的交集 题目内容如下,理解题意&#xff1a…

完美解决Github提交PR后报错:File is not gofumpt-ed (gofumpt)

问题阐述 最近在Github上提交PR后,遇到了这么一个问题:golangci-lint运行失败,具体原因是File is not gofumpt-ed (gofumpt)。 名词解释 golangci-lint: golangci-lint 是Go语言社区中常用的代码质量检查工具,它可以…

【C++学习手札】一文带你初识运算符重载

食用指南:本文在有C基础的情况下食用更佳 🍀本文前置知识: C类 ♈️今日夜电波:クリームソーダとシャンデリア—Edo_Ame江户糖 1:20 ━━━━━━️💟──────── 3:40 …

Linux 僵死进程

fork复制进程之后,会产生一个进程叫做子进程,被复制的进程就是父进程。不管父进程先结束,还是子进程先结束,对另外一个进程完全没有影响,父进程和子进程是两个不同的进程。 一、孤儿进程 现在有以下代码:…

第4章:决策树

停止 当前分支样本均为同一类时,变成该类的叶子节点。当前分支类型不同,但是已经没有可以用来分裂的属性时,变成类别样本更多的那个类别的叶子节点。当前分支为空时,变成父节点类别最多的类的叶子节点。 ID3 C4.5 Cart 过拟合 缺…

TCP服务器—实现数据通信

目录 前言 1.接口介绍 2.编写服务器 3.编写客户端 4.编译链接 5.测试 6.总结 前言 今天我们要介绍的是使用TCP协议实现数据通信,相比于之前写的UDP服务器实现数据信,在主体逻辑上并没有差别。客户端向服务器发送信息,服务器接受信息并回…

时序预测 | MATLAB实现基于CNN-LSTM卷积长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)

时序预测 | MATLAB实现基于CNN-LSTM卷积长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价) 目录 时序预测 | MATLAB实现基于CNN-LSTM卷积长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)预测结果基本介绍程序设计参考资料 预测结果 基本介绍 MATLAB实现基…

item_get_sales-获取TB商品销量详情

一、接口参数说明: item_get_sales-获取商品销量详情,点击更多API调试,请移步注册API账号点击获取测试key和secret 公共参数 请求地址: https://api-gw.onebound.cn/taobao/item_get_sales 名称类型必须描述keyString是调用key&#xff08…

vim键盘图

国外:http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html,原创,有SVG图,有分步骤的图。 国内翻译:[https://blog.csdn.net/qq_41052753/article/details/101031847 有几个配色,很高清&…

gitee上传一个本地项目到一个空仓库

gitee上传一个本地项目到一个空仓库 引入 比如,你现在本地下载了一个半成品的框架,现在想要把这个本地项目放到gitee的仓库上,这时就需要我们来做到把这个本地项目上传到gitee上了。 具体步骤 1. 登录码云 地址:https://gite…

mysql 索引 区分字符大小写

mysql 建立索引,特别是unique索引,是跟字符集、字符排序规则有关的。 对于utf8mb4_0900_ai_ci来说,0900代表Unicode 9.0的规范,ai表示accent insensitivity,也就是“不区分音调”,而ci表示case insensitiv…

Patch SCN一键解决ORA-600 2662故障---惜分飞

客户强制重启库之后,数据库启动报ORA-600 2037,ORA-745 kcbs_reset_pool/kcbzre1等错误 Wed Aug 09 13:25:38 2023 alter database mount exclusive Successful mount of redo thread 1, with mount id 1672229586 Database mounted in Exclusive Mode Lost write protection d…

【Docker】Docker network之bridge、host、none、container以及自定义网络的详细讲解

🚀欢迎来到本文🚀 🍉个人简介:陈童学哦,目前学习C/C、算法、Python、Java等方向,一个正在慢慢前行的普通人。 🏀系列专栏:陈童学的日记 💡其他专栏:CSTL&…