自动驾驶技术越来越火,浅谈一些对百度Apollo开放平台8.0的看法和认知

最近几年来,包括我在内的很多开发者们,都投身进入了智能汽车领域,其实不论是初学者还是大佬,接触智能汽车开发行业后都需要学习很多知识和既能。

我在最近一段时间接触到了百度的Apollo开放平台,上手的感觉很好用,恰巧百度也推出了Apollo开放平台8.0这个全新的版本,我想以个人的体验和认知抛砖引玉,和大家探讨一下对Apollo开放平台8.0的一些看法和认知。

降低开发门槛,部署时间短灵活易扩展

本次上新的Apollo开放平台8.0可谓经历了一次全方位的升级,在框架和能力方面都有着长足的进步。从框架上来看Apollo开放平台8.0从之前面向技术分层的架构,升级为结合技术与生态分层的新架构,最底下是硬件设备层,由之前的硬件开发层与车辆认证层组合而成,通过开放标准协议与认证吸引生态合作伙伴为开发者提供丰富的自动驾驶设备选择。

其上级为软件核心层,由之前的开源软件层演变而来,提供了搭建基于Apollo自动驾驶系统的最小软件子集。提供了基于本地HMI Dreamview的PnC仿真调试能力,极大提升了感知和PnC的研发效率。再往上为软件应用层,为开发者提供了全新自动驾驶模块扩展能力与扩展方式。而最顶级则为云端服务层,新增了实训、模型训练等服务能力,并升级了仿真能力。

新的架构,为Apollo开放平台8.0的技术先进奠定了良好的基础,通过“硬件-软件核心-软件应用-云端服务”的架构设定,Apollo开放平台8.0形成了闭环式的软硬件融合。在应用层面上,硬件层面可以与软件层面进行高效的协调配合,而在开发层面上,它又为开发者们提供了优渥的开发、测试环境,让整个平台拥有更强的能力。

就我个人而言,这一套结构有点像苹果的理念,不论是MAC OS还是IOS系统,都和硬件有着紧密的联系,从逻辑上来说,Apollo开放平台8.0的架构既确保了硬件运行的安全性问题,同时又能让系统按照应用层和核心层的不同级别,嵌入到硬件里面去,让软件的运行更加稳定也更加流畅,同时也能最大限度地发挥硬件的性能,不用过分堆料就可以实现很多高性能的设定和表现。

而刚才我说的让平台拥有更强的能力的这一点,想了解清楚私以为我们就要先分析一下Apollo开放平台8.0在易用性和扩展性方面的优势。Apollo开放平台8.0通过软件包管理机制、感知和PnC开发全流程的覆盖极大提升了Apollo工程易用性与开发效率,可以为个体开发者或小型工作室降低开发门槛,提供更多的开发可能。今后随着汽车OTA升级频次和整车产品迭代速度的提升,Apollo开放平台8.0的易用性优势,将会在产品开发中表现出更加高效的一面。

此外,Apollo开放平台8.0的扩展性优势也是本次升级的一大亮点,Apollo开放平台8.0通过引入了软件包管理机制,解决了之前Apollo工程编译发布耦合紧的问题,极大降低了安装与工程扩展的门槛,让安装部署时间极大缩短,且更灵活易扩展。可以缩短开发周期、降低人力资源使用率,其支持二次扩展的方案自由化程度高,既能够进行共享进行协同工作集思广益,又能够构建自己的场景工程,进行深度的定制化开发。

 这方面我觉得百度的思路非常靠谱,好比说MAC OS和IOS就给了开发者们一个完整的、高度集成化的包括Xcode、Swift在内的工具包,开发者们根本不需要费力去搭建自己的私有环境,在开发效率、稳定性、协同作业方面都有保障,同时也确保了开发项目对硬件的兼容性,而Apollo开放平台8.0就有点像这些工具包的组合,当然这个类比也不是很恰当,但可以说大致类似,总而言之它让上手变得没有什么难度,有点基础的人都能熟练掌握。

此外,Apollo开放平台8.0的开源优势和社区化优势也很符合我们这些开发者们的习惯,以往我们学习代码都需要在论坛里找,甚至还需要挂梯子到Github上扒拉,但是在Apollo开放平台8.0上都可以一站解决问题,大家的智慧汇聚在一起,不管怎么说都比单打独斗强,即便是个人也有能力承包一些开发任务赚赚外快,还能学习到更多的行业与开发知识,积累到更丰富的开发经验。

框架精度提升,调试验证效率再创新高

Apollo开放平台8.0新架构的优势其实还体现在对开发品质的提升上。智能汽车的智能辅助驾驶功能和未来的自动驾驶功能目前仍然有不少技术难点,比如精度低、开发过程中可模拟的场景有限不足以覆盖真实场景、开发周期长需要耗费大量成本等,而Apollo开放平台8.0的出现,对这些痛点问题都拿出了解决方案。

比如说,Apollo开放平台8.0通过新引入3个基于深度学习的模型,在感知框架方面有新的升级,在Lidar感知上,实现了CenterPoint激光点云障碍物识别模型,相比7.0发布的MaskPillars模型,CenterPoint不需要人为设定Anchor尺寸,而是基于关键点检测的方式回归物体的尺寸、方向和速度,在物体尺寸多样的复杂场景提供更高精度。

在Camera感知上,实现了CaDDN视觉障碍物识别模型,通过预测图像中每个像素深度分布,结合鸟瞰投影相比7.0发布的SMOKE模型精度更高。同时它新增了视觉BEV感知模型PETR,模型创新性地将3D坐标信息与图像特征相融合,实现了基于视觉的360°障碍物感知,在速度和精度之间取得了很好的平衡。

此外,Apollo 开放平台8.0感知模型上的升级还在原有的基础上有效的提升了精度,同时还引入了360°视觉BEV感知,增强了视觉感知能力。可帮助开发者们实现高精度的功能开发,有效地提升了效率、降低了成本,且开发者除了能使用平台自带的模型,还能基于自己的需求扩展更多模型,开发环境更加自由且验证环节有可视化工具协助,开发难度进一步降低。

 值得一提的是,Apollo开放平台8.0还采用了全新PnC工具链,在本地Dreamview集成了PnC仿真调试工具,让开发效率极大提升。系统支持本地仿真模拟调试,可通过dreamview的仿真器模拟车辆行驶以及再现各种场景。而且它还支持云端仿真场景管理的功能,开发者只需创建符合自己测试仿真需求的场景及障碍物就能进行系统模拟验证,一次建模就可以重复使用,场景还支持分类管理,能验证到更多的场景,且验证过程更简单、高效。

为了提升效率,平台在Dreamview中引入了Studio插件,通过插件可以方便将Studio上的场景和动力学模型下载本地,通过这种方式,PnC调试效率提升1倍以上。在这一生态当中,开发者将能够全身心地投入技术开发当中,其它的问题统统能交给Apollo开放平台8.0解决。可以说,Apollo开放平台8.0是一个全面升级的、高度集成化智能化的开发平台,在行业内有着极为领先的地位,是开发者们的好伙伴。

总结:

其实总结下来,Apollo开放平台8.0整体给我的感觉还是以“友好”为主,它是一个上手相对容易且不需要费力在细枝末节上的平台,尤其是对于半路出家的开发者们来说可以说相当友好,能够让更多的跨行业开发者们参与其中,而它整体精度和开发、调试效率的大幅提升,则解决了行业内的诸多痛点、难点问题,突破了技术瓶颈的限制,在技术层面上也足够先进,能开发出更有竞争力的产品,这一点对开发者来说同样很重要,可以说是一个开发利器。

 最后想跟大家再分享一下这次Apollo开放平台8.0推出后,上线的一个全新社区——Apollo Studio,我也进去大概感受了一下,对于开发者来说有不少可以利用的资源,包括技术课程、跑模型训练和验证的云端资源等等,而且还会不定期举办技术竞赛,有精力的可以多关注一下,也算是技术实战的机会。社区链接放在这里,大家有空可以自己上去体验体验:

Apollo开发者社区Apollo开发者社区致力于为全球自动驾驶开发者和合作伙伴提供的一个学习、交流的平台,助力开发者快速了解并使用自动驾驶技术。https://apollo.baidu.com/

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

命令行输入mysql不行_MySQL命令行无法插入中文数据

下面的方法是针对window系统的注意:1 下面的my.ini文件在有些版本的Mysql中的安装目录找不到,比如我用的版本5.5.60-log就找不到,想要找到这个文件,需要设置显示window系统隐藏文件(不懂的自行百度,因系统的版本不同而…

mysql悲观锁关键字_MySQL悲观锁 select for update实现秒杀案例(jfinal框架)

MySQL悲观锁 select for update实现秒杀案例(jfinal框架)发布时间:2018-08-17作者:laosun阅读(4287)为了方便测试,博主使用最新的jfinal框架,里边的东西就修改了一下a_little_config.txt,配置数据库链接的,…

pl sql 连接mysql_PL/SQL 连接mysql步骤

下面就将PL/SQL的配置说明一下。一、安装Oracle客户端,让后配置 安装目录下面的C:\ORACLE\instantclient_11_2\NETWORK\ADMIN 的 tnsnames.ora文件,如下:修改成自己的配置名 (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 服务器IP)(PORT…

mysql 创建表时提示错误代码_MySQL创建表时遇到的错误

学习MySQL第一个程序就遇到了bug。创建表时需注意的事项加以总结: 1、先创建数据库: create database 数据库名;然后连接要用的数据库 use 数据库名;下面就可以执行建表语句 了。2、错误提示:ERROR 1064 (4…

根据工序画出aoe网_这些金刚网纱窗竟然含“毒”!选错就得病

窗户进行装修我们通常会安装纱窗,这样可以阻止一些蚊虫或者灰尘进入家里。金刚网纱窗是业主们常常挑选的一种纱窗。不过最近听别人说金刚网纱窗是含毒的,这不禁让安装这种纱窗的业主感到吃惊,而这消息是真是假呢我们看看专家的说法&#xff0…

防火墙阻止网页连接网络连接_win7电脑打不开网页怎么办 win7电脑打不开网页解决步骤【图文步骤】...

我们在使用电脑的过程当中,经常都会浏览一些网页,不过最近有位win7系统用户在使用电脑浏览网页的时候却遇到了网页打不开网页的问题,这导致了很多事情都无法操作,其实网页打不开的问题,一般都跟网络有关,那…

mysql mysqldumpslow_慢日志分析工具—mysqldumpslow 和 mysqlsla

前提:分析mysql性能的时候会查看数据库的哪些sql语句有问题,效率低。这就用到了数据库的慢查询,作用就是: 它能记录下所有执行超过long_query_time时间的SQL语句,帮你找到执行慢的SQL,方便我们对这些SQL进行…

mysql分库分表面试_【53期】面试官:谈一下数据库分库分表之后,你是如何解决事务问题?...

点击上方“Java面试题精选”,关注公众号面试刷图,查缺补漏>>号外:往期面试题,10篇为一个单位归置到本公众号菜单栏->面试题,有需要的欢迎翻阅。一、概述随着时间和业务的发展,数据库中表的数据量会…

圆管当量直径_截面相同时,正方型截面的当量直径大于圆管直径。( )。

“党在过渡时期的总路线的实质,截面就是使生产资料的社会主义公有制成为我们国家和社会的( )的经济基础。”根据小儿尿道特点,相同型截易患的疾病为正方直径直径泌尿系感染的致病菌最为常见的是当量大于汽车离合器踏板自由行程过小或没有行程, 将会引起(…

h710阵列卡支持最大硬盘_DELL服务器RAID磁盘阵列在线扩容(以H710P阵列卡为例)

DELL服务器RAID磁盘阵列在线扩容(以H710P阵列卡为例)分享到:作者来源: 未知 发布时间:2013-01-12简介我们可通过扩充容量和 / 或改变 RAID 级别的方式来重新配置联机虚拟磁盘。注: 跨接式虚拟磁盘 (如 RAID 10、 50 和 60)无法重新配置…

bash shell sed 获取第一行_老司机给出的关于 shell 脚本的8个建议,必收!

这八个建议,来源于键者几年来编写 shell 脚本的一些经验和教训。事实上开始写的时候还不止这几条,后来思索再三,去掉几条无关痛痒的,最后剩下八条。毫不夸张地说,每条都是精挑细选的,虽然有几点算是老生常谈…

springmvc与mysql实例_Spring+Mybatis+SpringMVC+Maven+MySql搭建实例

摘要:本文主要讲了如何使用Maven来搭建SpringMybatisSpringMVCMySql的搭建实例,文章写得很详细,有代码有图片,最后也带有运行的效果。一、准备工作1. 首先创建一个表:CREATE TABLE t_user (USER_ID int(11) NOT NULL A…

dbm和mysql使用场景_mysql基本用法总结

1 下载安装官网下载:http://www.mysql.com/注意需要一个Oracle账号才能下载。2 启动mysql将mysql安装目录:设置为环境变量,并将:\bin目录加入环境变量中。启动命令行,输入:mysqld以启动mysql的守护进程。3 …

java违反唯一约束异常_Caused by: java.sql.BatchUpdateException: ORA-00001: 违反唯一约束条件 (DSPACE.SYS_C007868)...

Caused by: java.sql.BatchUpdateException: ORA-00001: 违反唯一约束条件 (DSPACE.SYS_C007868).............................遇到这种问题解决方法1. 使用 约束条件查找包含的表明以及 表的字段select a.constraint_name,a.constraint_type,b.column_name,b.table_namefrom…

js中的if与Java中的if_JS直接if参数的用法JS中!和!!区别

经常在JS中见一些代码直接if(参数),然后参数调用的时候是将元素自己传下去。例如下面代码:functiontest1(obj){if(obj){alert($(obj).val());}else{alert("has not obj");}}我们分别点击上面的两个输入框显示如下:解释:实际上相当于java中的重载&#xff…

vs2019能写Java吗_Visual studio2019打包程序过程

要想打包visual studio中的程序我们需要用到setup用于自定义安装部署的项目方案。但是在VS2019中不见了,微软是有意废除安装项目的,合作了一个第三方的安装项目单独使用。我们可以从官网上把Visual Studio Installer 项目扩展下载下来。地址:…

java继承的终极奥义_java学习笔记12-继承

继承就是子类继承父类的特征和行为有时候单一划分某个类别并不能处理所有情况,某些类别下有明显不同的子类,这些子类虽然拥有类似的行为和属性,但是他们各自发生的这些行为的方式或者属性对某些结果的影响是不一样的,这就需要划分…

flink java 并行度_flink solt和并行度

简介Flink运行时主要角色有两个:JobManager和TaskManager,无论是standalone集群,flink on yarn都是要启动这两个角色。JobManager主要是负责接受客户端的job,调度job,协调checkpoint等。TaskManager执行具体的Task。Ta…

java 写传奇游戏吗,文字版传奇游戏

学习java中IO操作自己写的一个小文字游戏,写了一天半两千多行,有点low的,因为没有使用到数据库,所以数据存放在文本文档中,大部分代码都是在处理往文档中读写内容, 就显得有些繁琐,主要锻炼了自…

【Dart】P0 Win、Mac 使用与安装

Dart 使用与安装 Dart 下载安装Windows 版本MacOS版本处于境外安装 Dart 开发工具 Dart 下载安装 Windows 版本 安装网址: http://gekorm.com/dart-windows/ 安装后测试: dart --versionMacOS版本 首先安装 Homebrew: 终端输入&#xff…