百度Apollo新版本Beta技术沙龙参会体验

在自动驾驶领域,百度的Apollo一直是业界开源的标杆。其持续升级和创新的开源项目为整个自动驾驶行业树立了典范,不仅推动了技术的发展,也为广大的社区开发者们提供了学习和参考的范本。最近百度发布了Apollo新的Beta版本, 新版本Beta在 工程技术、算法 技术和 工具支持 三个方向实现了全面升级,受到了 社区开发者的广泛关注。 12月2日下午,百度在首钢·百度公园举办了技术沙龙,百度的工程师们面对面与社区开发者们交流,介绍最新发布的Apollo Beta版本。博主非常有幸参加了这次技术交流会。

(图为首钢·百度Apollo Park大楼外景)

下午两点沙龙准时开始!屋里坐满了热情的开发者们,在大家的期待中,主持人小姐姐介绍了本次的嘉宾和沙龙议程。

这次沙龙一共有四个演讲议程:新版本升级的总体介绍、工程方向的技术分享、算法方向的技术分享、工具链方向的技术分享。

(图为百度工程师介绍Apollo多次迭代的主要升级点和时间线)

最让我印象深刻的是工程方向的技术分享。因为博主从事深度学习框架开发,深知如何统筹深度学习框架内部运作,发挥出算法的最大价值是非常具有挑战性的工作。

(图为百度工程师介绍当下不同开发者对Apollo体验上的复杂性)

不同的开发者需求其实区别很大,一些基础的开发者可能还在学习熟悉框架的阶段,然而Apollo代码库中有将近80万行代码,如此庞大复杂的代码又被划分为感知模块、规划模块、技术模块等,刚入门级别的基础开发者其实很难弄清楚整体的框架模块和每个模块中的技术要点。然而对于博主这样的进阶开发者而言,我们需要针对不同的场景下充分扩展Apollo模块,但是原有代码的高度定制化和高度耦合性又使得扩展场景颇具挑战性。因此不同开发者的不同需求需要在框架侧予以支持。

本次Apollo在框架上引入了软件包管理机制,解耦发布流程中模块间的依赖关系打下了坚实的基础,不同需求的开发者可以通过直接复用的方式扩展Apollo组件,这种灵活性和可扩展性为开发者提供了更大的自由度,使得定制和整合不同模块变得更加高效和便捷。在老版本中,Apollo的所有源代码都需要全量下载,安装依赖的过程非常繁琐,环境安装和代码克隆配置的过程的的确确劝退了很多入门的小白选手。在最新的Beta版本不仅实现了按包进行下载,还能够按照不同业务功能拆包,让进阶开发者们更容易扩展自己的应用。

(图为Apollo各个版本对包管理的优化方法)

除此之外,Apollo还建立了面线点的开发者反馈收集机制,覆盖了不同需求、不同层次的开发者,对应不同的模块会有专门的技术专家负责,这大大提高了开源社区的运作效率。

愉快的时间总是过得很快,四位老师分享之后,沙龙的最后一个环节是自由交流,热情的开发者们把百度的工程师们团团围住交流问题,百度的工程师们也非常热情地回应开发者们,我也和老师交流一些了框架侧的问题。最后,我们还合了影,真是一个难忘的下午!

(图为合影)

 

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

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

相关文章

【PID学习笔记 6 】控制系统的性能指标之二

写在前面 上文介绍了控制系统的稳态与动态、过渡过程、阶跃响应以及阶跃信号作用下过渡过程的四种形式。本文紧接上文,首先总结过渡过程的分类,然后介绍控制系统的性能评价,最后重点介绍控制系统性能指标中的单项指标。 一、过渡过程的分类…

四.多表查询

多表查询 1.一个案例引发的多表连接1.1案例说明1.2 笛卡尔积(或交叉连接)的理解1.3案例分析与问题解决 2.多表查询分类讲解分类1:等值连接vs非等值连接分类2:自连接vs非自连接分类3:内连接vs外连接 3.SQL99语法实现多表…

读书笔记-《数据结构与算法》-摘要2[冒泡排序]

冒泡排序 核心:冒泡,持续比较相邻元素,大的挪到后面,因此大的会逐步往后挪,故称之为冒泡。 public class BubbleSort {public static void main(String[] args) {int unsortedArray[] new int[]{6, 5, 3, 1, 8, 7, 2…

旋转设备状态监测与预测性维护:提高设备可靠性的关键

在工业领域的各个行业中,旋转设备都扮演着重要的角色。为了确保设备的可靠运行和预防潜在的故障,旋转设备状态监测及预测性维护变得至关重要。本文将介绍一些常见的旋转设备状态监测方法,并探讨如何利用这些方法来实施预测性维护,…

Java的第二十一章:网络通信

网络程序设计基础 网络程序设计编写的是与其他计算机进行通信的程序。Java 已经将网络程序所需要的元素封装成不同的类,用户只要创建这些类的对象,使用相应的方法,即使不具备有关的网络支持,也可以编写出高质量的网络通信程序。 …

周周爱学习之快速排序

快速排序,顾名思义,快速排序是一种速度非常快的一种排序算法 平均时间复杂度为O(),最坏时间复杂度为O()数据量较大时,优势非常明显属于不稳定排序 1.算法描述 每一轮排序选择一个基准点(pivot)进行分区 让小于基准点…

supervisord + nginx + Daphne + django4.0 最新asgi服务器部署实验

由于需要用到channel,最近在研究通过asgi部署django。 先吐槽一下官方文档,这个地方讲的非常简单。然后中文互联网环境能找到的都是3.0试用的说明,这玩意是不是真的没人用啊?还是说Django已经脱离时代了。。。 简单研究了一下&am…

洗地机好用吗?口碑好的洗地机有哪些?

自从洗地机开始引入市场以来,它一直受到人们的关注。它在解放家庭清洁劳动力和提供快速方便的清洁方面表现出色,超越了多年来传统的拖把清洁方式。越来越多的人选择使用洗地机来完成家庭清洁任务。如果你也对洗地机产生了浓厚的兴趣,并想购买…

【MATLAB源码-第93期】基于matlab的白鲸优化算法(BWO)和鲸鱼优化算法(WOA)机器人栅格路径规划对比。

操作环境: MATLAB 2022a 1、算法描述 白鲸优化算法(BWO) 白鲸优化算法是受到白鲸捕食和迁徙行为启发的一种算法。其主要特点和步骤包括: 1. 搜索食物(全局搜索):算法模仿白鲸寻找食物的行为。…

【模型报错记录】‘PromptForGeneration‘ object has no attribute ‘can_generate‘

通过这个连接中的方法解决: “PromptForGeneration”对象没有属性“can_generate” 期刊 #277 thunlp/OpenPrompt GitHub的 问题描述:在使用model.generate() 的时候报错:PromptForGeneration object has no attribute can_generate 解决方法…

Java中子类都继承父类的什么?

1.构造方法 构造方法不可以被继承的,为什么呢?应为名称的定义,构造方法是一类名称与类名一致,无返回值和类型修饰的一种。所以如果子类继承父类的构造方法的话,那么就违背了构造方法的规定。 2.成员属性 成员属性是…

C# Demo--汉字转拼音

1.Nuget安装NPOI及Pinyin4net 2.Demo 代码部分 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using NPOI.SS.UserModel; using NPOI.HSSF.UserModel; using NPOI.XSSF.UserModel; using System.IO;…

【Linux】基础IO--重定向理解Linux下一切皆文件缓冲区

文章目录 一、重定向1.什么是重定向2.dup2 系统调用3.理解输入重定向、输出重定向和追加重定向4.简易shell完整实现 二、理解linux下一切皆文件三、缓冲区1.为什么要有缓冲区2.缓冲区的刷新策略3.缓冲区的位置4.实现一个简易的C语言缓冲区5.内核缓冲区 一、重定向 1.什么是重定…

【5】PyQt按钮

QPushButton 常见的按钮实现类包括:QPushButton、QRadioButton和QCheckBox QPushButton是最普通的按钮控件,可以响应一些用户的事件 from PyQt5.QtWidgets import QApplication, QWidget, QPushButton import sysdef func():print("按下按钮啦,火…

YOLOv8优化策略:简单高效的模块-现代反向残差移动模块 (iRMB) | | ICCV2023 EMO

🚀🚀🚀本文改进:设计了一种面向移动端应用的简单而高效的现代反向残差移动模块 (Inverted Residual Mobile Block, iRMB),它吸收了类似 CNN 的效率来模拟短距离依赖和类似 Transformer 的动态建模能力来学习长距离交互,引入YOLOV8 🚀🚀🚀YOLOv8改进专栏:http:…

Python神器解析时间序列数据:数据分析者必读

更多资料获取 📚 个人网站:ipengtao.com 时间序列数据是在许多领域中都至关重要的数据类型,它涵盖了一系列按时间顺序排列的数据点。Python作为一种强大的数据分析工具,提供了许多库和工具,能够有效地处理、分析和可视…

2D与3D图形的基本变换

1. 2d transformations 1.1缩放(Scaling) 其实这个转换非常简单,如图所示就是把x与y进行s倍的缩放,而我们图中的这个矩阵正好满足这一算法。 1.2镜像(Reflection) 这个镜像变换可以和上面的做类比,简单看一下就行。 1.3错切(Shearing) 当然…

【力扣】54. 螺旋矩阵

题解: 这里当然就不能只是通过双循环来解题了,因为会烦死。这道题的关键点在于左右边界的确定,参考官方解题法在这里写出我的解题思路。 首先看图,螺旋且顺时针,所以我们可以先遍历从左至右的,上边界加一…

科技论文中的Assumption、Remark、Property、Lemma、Theorem、Proof含义

一、背景 学控制、数学、自动化专业的学生在阅读论文时,经常会看到Assumption、Remark、Property、Lemma、Theorem、Proof等单词,对于初学者可能不太清楚他们之间的区别,因此这里做一下详细的说明。 以机器人领域的论文为例。 论文题目&…

IO / day03 作业

1. 使用文件IO完成对图像的读写操作 代码 #include<myhead.h>int main(int argc, const char *argv[]) {int fd-1;if((fd open("./bird.bmp", O_RDWR)) -1){perror("fopen error");return -1;}//读取该图片的大小&#xff0c;需要将光标向后偏移…