新闻  |   论坛  |   博客  |   在线研讨会
Apollo开放平台:从自动驾驶场景能力到开发者易用性(2)
AI科技大本营 | 2023-08-22 20:22:19    阅读:514   发布文章

图片

快速验证新的模型——从感知框架重构开始随着深度学习技术的不断发展,自动驾驶感知领域在近几年取得了显著进展。由于深度学习模型的更新速度非常快,每年都会涌现新的模型,因此如何快速发布和验证模型成为自动驾驶感知中的关键问题。同时,我们注意到大部分社区开发者更关注模型本身。而Apollo作为全栈感知框架,除了模型本身(即算法部分),还包括任务框架。目前常见的任务包括红绿灯检测、车道线检测和目标检测。为了使算法开发人员从框架中解放出来,更加专注于算法本身,我们升级了Apollo 感知框架,实现了算法和框架的解耦(见图3、图4)。图片图3 升级前的Apollo感知框架图片图4 升级后的Apollo感知框架训练好的模型只需根据要求便可灵活接入,无需开发大量代码。同时,还引入了测试验证工具链,支持端到端的模型验证,从而极大地加快感知算法落地速度。针对框架部分,我们根据不同的任务流水线,通过配置便可复用提供好的模块。这样,用户只需根据配置,即可满足感知任务的开发需求。通过以上两项升级,我们成功解耦感知模块的算法开发和任务流水线,从而加快感知模块的验证和迭代速度,显著提升开发效率。现在,最快上线一个模型只需1-2天。模型通过引入Paddle3D,不仅能够提供更多模型支持,还能提供一整套完备的训练工具。同时,我们通过定期和Paddle3D合作组织自动驾驶感知方向的比赛,跟进最新的模型,保证Apollo感知算法的领先性。通过与Paddle3D的深度合作,我们建立了自动驾驶感知任务的基准,并开放了模型训练和部署代码。开发者可以在社区找到最新的模型进行对照使用,或自行进行二次开发。框架第二个比较大的改造在于框架的升级。之前的感知模块,各个任务和模块的区分度不高,主要是通过传感器来组织目录文件。导致用户在了解某一部分的功能时需要深入到整个模块,并且整个流水线的配置相对分散,用户修改时需要从不同的配置文件中进行修改,这对用户来说体验不好。进行框架升级后,我们根据任务流水线创建了不同的组件,引入了组件的概念。通过不同的前处理、后处理等组件,用户只需通过一个配置文件选择不同的组件即可实现新的流水线的引入和开发,从而使模型引入更加顺畅。图片提升开发调试效率——完善工具链
自动驾驶与传统互联网软件研发不同,一是实车测试成本高,二是数据量非常大。而一套能够满足自动驾驶开发流程需求,并提升研发效率的研发基础设施就非常之重要。Apollo从1.0版本开始便开创性地引入了“车+云”的自动驾驶研发迭代模式,并对外发布了Apollo数据平台。它通过云端的方式解决了数据利用效率的问题,通过与仿真结合降低了实车测试成本,能够极大提升基于Apollo的自动驾驶研发效率(见图5)。图片图5 “车+云”的自动驾驶研发迭代模式“车+云”的自动驾驶研发迭代模式为基于Apollo的上车集成调试提供了技术迭代基础设施保障,能高效支持自动驾驶技术路测,从而实现上车闭环验证。与此同时,开发者在上车验证之前的本地开发调试也是整个自动驾驶研发迭代生命周期中同样至关重要的一环,但这部分需求在之前的Apollo版本中并未被很好满足。如何提升开发者本地开发调试效率,从自动驾驶研发迭代全生命周期角度提升研发效率是Apollo开放平台在开发者易用性上的又一个重点工作。从流程图(图6)可以看出,自动驾驶研发流程其实包含了两个迭代循环,一个是模型迭代,一个是代码迭代,都通过数据来驱动。数据驱动的模型配置迭代,其主要包括服务于自动驾驶车辆集成(如车辆标定、传感器标定、控制评测等)、模型训练的研发云服务。通过在车辆端的智能数据采集器采集数据,驱动云端工具服务生成车辆模型配置,并OTA至车端完成迭代闭环。数据驱动的代码迭代,其主要包括服务于开发调试和回归测试的Apollo仿真云服务。Apollo仿真云服务提供了可自定义并下载至开发机本地的仿真调试场景,以及云端大规模集群并发测试能力。其通过持续车端数据采集丰富仿真场景,驱动代码不断改进并验证,最终OTA至车端实现代码迭代闭环。图片图6 自动驾驶研发生命周期在开发者调试效率方面,本次8.0版本主要新增了如下新能力,PnC调试效率提升了1倍以上。

  • 支持本地仿真调试:提供基于Dreamview的本地仿真容器,支持本地PnC仿真调试。开发者在本地通过Dreamview的仿真器可模拟车辆行驶以及再现各种场景。
  • 便捷仿真场景管理:提供基于云端的仿真场景自定义创建、编辑与分组管理,一键从云端下载场景、动力学模型、数据包至本地Dreamview。仿真场景同步支持云端仿真评测与本地调试两种使用场景(见图7)。

图片图7 基于Dreamview的本地仿真调试图片降低学习曲线——Apollo Studio全新学习社区解决了技术工程、工具产品上的易用性问题,同样还需要配套的学习资源服务来降低开发者的学习曲线。基于冰山模型理论,个人能力是先由知识、技能再逐步转化成能力的。提供符合开发者学习习惯的知识内容与产品功能,缩短开发者学习过程是提升Apollo开放平台产品价值不可或缺的部分。因而,在去年8月份,我们上线了全新的Apollo开放平台技术社区官网Apollo Studio。Apollo Studio社区以全新的Apollo 开源工程和工具链为基础支撑,帮助开发者通过由浅入深的课程内容来学习自动驾驶知识,通过与课程内容配套的实验来锻炼技能,最后通过竞赛测验来提升解决问题的能力。目前,Apollo Studio已经提供了从入门到基础,再到专项的梯度课程,包括Apollo新人之旅、Apollo自动驾驶基础课、Apollo PnC专项课等。总课时达到近200。5个月时间,课程播放量便超过了100万次。与课程配套的实验也深受开发者好评,使用量近10万。赛事测验系统有效支撑了2022 Apollo城市道路自动驾驶仿真赛,吸引了全国近200所高校的500多支队伍2000多人参赛。Apollo Studio为开发者提供了集课程、实训、赛事三位一体的自动驾驶学习实践社区,助力开发者成长。图片总结从自动驾驶能力到开发者易用性,Apollo开放平台持续进行多维度创新。

  • Apollo开放平台8.0通过引入包管理为彻底解耦发布流程中模块间的依赖打好了基础,为各类不同需求开发者直接复用扩展Apollo能力提供了灵活空间。
  • 通过重构感知框架和开放模型训练环节,极大降低了扩展新模型时在训练、部署以及验证环节的成本,让开发者将更多精力放在新模型的能力上。
  • 通过引入基于Dreamview的本地仿真调试并与云端仿真联动,极大提升了开发者在规划控制开发调试时的效率。
  • 通过全新上线的Apollo Studio社区,为开发者提供了符合学习习惯的课程、实验与能力测试工具,助力开发者学习成长。

在今年上半年的NPS调研中,我们也收到了开发者的正向反馈,感知开发调试、PnC开发调试、社区的NPS都大幅上涨(见表2)。图片表2 2023年上半年NPS结果在8.0版本之后,我们将持续加强Apollo开放平台的开发者使用体验:优化核心层感知模块和规划模块的包逻辑拆分,以更好地满足开发者的二次扩展开发需求,并在原有的Robotaxi场景上提供更多其他可选场景支持,以实现场景应用层的灵活选择(见图8)。

图片

图8:Apollo开源代码架构在工具链上,我们将进一步优化基于Dreamview的本地开发调试体验,把Dreamview打造成Apollo开发者工具入口。覆盖感知仿真开发调试、规划控制仿真开发调试、车辆适配与集成以及实车路测与调试各场景,提供各种可视化调试工具、诊断信息工具以及自定义视图能力。在社区上,我们将提供更多技术模块,覆盖Cyber RT、感知相关的专项课、配套实验与评测题。


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客