2020云栖大会于9月17日-18日在线上举行,阿里巴巴高德地图携手合作伙伴精心组织了“智慧出行”专场,为大家分享高德地图在打造基于DT+AI和全面上云架构下的新一代出行生活服务平台过程中的思考和实践,并重点分享了「高精地图、高精算法、智能时空预测模型、自动驾驶、AR导航、车道级技术」等话题。
 
「高德技术」把讲师分享的主要内容整理成文并陆续发布出来,本文为第2篇。
 
阿里巴巴高级地图技术专家王前卫分享的话题是《AR&车道级导航技术演进与实践》。他为大家介绍了这些领域的核心技术、阶段成果及未来方向。
 
王前卫主要分享了三部分的内容:
  • 技术背景
  • 当前进展
  • 核心技术
以往,高德通过全球卫星定位系统和数字化的电子地图为用户提供了一款道路级的导航服务,帮助用户方便快捷的到达目的地。现在通过引入更能理解环境,感知环境的视觉感知系统,以及通过引入更贴近现实,更精细的车道级数据,为用户精心打造了一款基于实景的车道级导航产品。它能为用户带来一种全新的导航体验,做到所见即所得。
这款产品包含哪些功能呢?AR导航通过视频增强技术实现了引导信息与现实世界更完美的贴合,为用户提供简单易懂的方向性指引。这样用户再也不会因为走到复杂路口而走错路;在距离路口较近,且用户行驶在非正确的车道上时,高德AR导航也能进行及时准确的变道提醒;在路口等红绿灯的时候,帮助用户实时观察周边环境,及时提醒用户,红灯已变绿灯,或者前车已经启动。AR导航功能一经上线就获得了用户的好评。
 
核心技术揭秘
高德AR导航需要具备三方面的能力:
  • 对周边环境实时的感知能力
  • 车道级的高精定位能力
  • 道路数据的精细化表达能力
环境实时感知
在环境感知上,高德AR导航选择了成本较低但目前使用广泛的视觉技术,通过深度学习算法来感知周围的环境。其中最大的挑战在于如何设计一款轻量化的深度学习模型,既能在低算力的设备上实时运行,同时能保证较高识别精度。高德主要在三个方面进行了优化:
 
第一,在数据上,高德采用了海量多源大数据的融合和提取来保证训练样本的多样性和覆盖度;第二,在算法上,主要通过优化网络模型,特征共享等方法来保证算法的准确度;第三,在性能上,通过知识蒸馏,模型的量化算法,多任务的跟踪等方法来保证在低算力上能流畅运行。
 
高精定位
GPS定位精度不足,信号干扰大,特别是在遇到城市森林或者是天气不好的时候,会产生信号漂移、精度无法保证。目前精度不足已经成为大多数导航产品用户体验提升的瓶颈。基于此,高德提出了一种基于云端一体化视觉定位技术,基于端上图像,结合云端视图大数据,通过神经网络回归出设备绝对位姿。与此同时,通过端上识别车道线、道路边沿等标识,进行相对定位。最终结合时空一致性,进行云和端的融合,大幅提升了定位精度,将定位误差提升了一个数量级。
在没有网络的时候,如何使用高精度定位呢?基于成本较低的GPS、惯导和视觉传感器,高德设计研发了多源紧耦合SLAM(MT-SLAM)技术,通过算法的深度融合实现低成本高精度的位置姿态估计,为高精地图众包采集、车道级AR导航等业务提供很好的能力支撑。其相对位置精度30cm占比在82%以上。
 
位置姿态的提升,主要是根据GNSS不同信息的精度特性,采用分层紧耦合的融合框架,对信息充分利用,同时考虑运动约束,在减少优化维度的同时也提高精度;根据实际场景的精度特点,缩减内层优化对象,来提升优化效率;根据协方差应用场景,采用增量递归的方式提升协方差恢复效率。
在实际的用户场景中,定位遇到的环境是比较复杂的,在实现方式上,有的是基于手机RTK技术,有的是基于视觉传感技术。在不同场景下,有的需要标准精度定位,也有的需要高精度的定位能力。
如何降低成本,提升效率,以成本最小化的方式来实现一体化定位技术应用和落地呢。高德设计了一套高精/高标一体化融合定位系统。基于成熟的差分卫星定位或环境语义信息,构建轻量化的高精定位能力,并且和标精的导航定位结合形成一体化的融合定位引擎,满足自动驾驶、车道级导航等不同业务的需要。
 
一体化定位引擎,已具备完整的道路级标精、车道级高精定位能力,高精、标精定位结果独立输出又相互关联,为导航和自动驾驶联动提供便利,确保在全场景下的定位结果输出,保证定位连续性。
道路数据的精细化表达
现在有了车道级高精的定位,也有了对周边环境的实时感知,最后还需要考虑的是如何把标准精度数据表达得更加精细,如何通过建立道路模型,使引导信息的表达更加贴近现实场景。
大家首先能想到的是通过高精数据。高精数据的厘米级精度,确实能更真实的反映真实世界。然而,为了追求低成本,高覆盖,高德选择了利用标准数据精度,加上道路属性信息,通过算法来构建高精道路数据模型。
高德主要通过两个方面来进行模型构建,一是道路的模型,主要是利用SD的形点数据,结合道路的车道属性信息,通过对路口的切分、建模、还原等算法来建立道路的三维模型。二是实景中的引导信息展示,主要利用规划路径信息和引导信息,结合实时的道路图像特征提取信息,再加融合的高精定位,在不同的场景下来分别构建对应的引导线模型。
 
目前高德的这套模型构建算法,已在实际项目中落地。其车道级三维模型已经能够很好的反映真实世界,更加逼近现实世界;其AR导航的指示引导的铺路线和引导线,在绝大多数场景已经做了和实景道路的贴合。
 

高德AR & 车道级导航技术演进与实践的更多相关文章

  1. 【大数据和云计算技术社区】分库分表技术演进&最佳实践笔记

    1.需求背景 移动互联网时代,海量的用户每天产生海量的数量,这些海量数据远不是一张表能Hold住的.比如 用户表:支付宝8亿,微信10亿.CITIC对公140万,对私8700万. 订单表:美团每天几千 ...

  2. 分库分表技术演进&最佳实践

    每个优秀的程序员和架构师都应该掌握分库分表,这是我的观点. 移动互联网时代,海量的用户每天产生海量的数量,比如: 用户表 订单表 交易流水表 以支付宝用户为例,8亿:微信用户更是10亿.订单表更夸张, ...

  3. MOT北京站 | 卓越研发之路:亿万级云端架构演进

    随着IT行业技术周期的快速迭代,如何在激烈的市场竞争中突出重围成为了不少技术人的困惑.除了要保持良好的技术视野外,多向IT行业精英学习他们分享的实战经验,也可让技术提升,达到事半功倍的效果. MOT北 ...

  4. PouchContainer 容器技术演进助力阿里云原生升级

    点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 作者 | 杨育兵(沈陵) 阿里巴巴高级技术专家 我们从 2016 年开始在集团推广全面的镜像化容器化,今年是集团全面镜像化容器 ...

  5. 为什么 K8s 在阿里能成功?| 问底中国 IT 技术演进

    作者: 曾凡松 阿里云云原生应用平台高级技术专家 张振 阿里云云原生应用平台高级技术专家 导读:本文描述了阿里巴巴在容器管理领域的技术演进历程,解读了为什么 K8s 最终能够大获成功的原因,以及到今年 ...

  6. 汇聚优质AR应用开发者,技术助力AR领域繁荣生态

    本文分享于HMS Core开发者论坛<EasyAR--汇聚优质AR应用开发者,技术助力AR领域繁荣生态>采访文字稿 EasyAR空间计算平台为应用开发者提供稳定建图.定位能力和完善工具链, ...

  7. jquery 实现两级导航菜单

    主要用于运维系统, 对界面要求不高的场合.  深深感到自己页面设计能力弱爆了,只能借鉴一下了, 交互逻辑还可以胜任一点. 直接贴代码: 1.  HTML 页面及 JS 交互, 注意引入 Jquery ...

  8. 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN,Faster R-CNN

    基于深度学习的目标检测技术演进:R-CNN.Fast R-CNN,Faster R-CNN object detection我的理解,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别.obj ...

  9. 阿里云杨敬宇:边缘计算行业通识与阿里云ENS的技术演进之路

    近日,阿里云杨敬宇在CSDN阿里云核心技术竞争力在线峰会上进行了<5G基础设施-阿里云边缘计算的技术演进之路>主题演讲,针对5G时代下,行业和技术的趋势.边缘计算产业通识以及阿里云边缘计算 ...

随机推荐

  1. asyncio异步模块的21个协程编写实例

    启动一个无返回值协程 通过async关键字定义一个协程 import sys import asyncio async def coroutine(): print('运行协程') if sys.ve ...

  2. ssm简单整合

    pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...

  3. php验证当前是设备是电脑端还是手机端

    <?php // 验证设备为PC还是WAP $agent = $_SERVER['HTTP_USER_AGENT']; if(strpos($agent,"comFront" ...

  4. Arbitrary-Oriented Object Detection with Circular Smooth Label(ECCV2020,旋转目标检测)

    论文链接:https://arxiv.org/abs/2003.05597 code:https://github.com/Thinklab-SJTU/CSL_RetinaNet_Tensorflow ...

  5. 使用java8的方法引用替换硬编码

    背景 想必大家在项目中都有遇到把一个列表的多个字段累加求和的情况,也就是一个列表的总计.有的童鞋问,这个不是给前端做的吗?后端不是只需要把列表返回就行了嘛...没错,我也是这样想的,但是在一场和前端的 ...

  6. SQL Builder 1.04

    解析效果: select id,code,name,utime,src,ctime from stock where id<20 and code like '%6%' order by id, ...

  7. 在Oracle中十分钟内创建一张千万级别的表

    小表不会产生性能问题,大表才会.要练习SQL调优,还非得有大表不可.但数据不会自然产生,没有数据时如何创建一张千万级别的大表呢? 之前,我想用Oracle的批量插入语法去插入数据,此语法如下: INS ...

  8. leetcode题目,个人见解1

    给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字. 你可以假设除了整数 0 之外,这个整数不会以零开头. 示例 1: 输入 ...

  9. 初识ABP vNext(9):ABP模块化开发-文件管理

    Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 目录 前言 开始 创建模块 模块开发 应用服务 运行模块 单元测试 模块使用 最后 前言 在之前的章节中介绍过ABP扩展实体,当时在用户 ...

  10. python基本数据类型和循环、判断

    一.语言分为2种: 编译型语言:写完代码不能执行,得先编译 c.c++.c#,速度相对解释性语言更快,因为只需要执行一次解释型语言:不需要编译,直接执行 python.java.php.js.go.r ...