连接真实世界,高德地图背后的算法演进和创新

简介: 出行是生活的重要部分。我们都习惯了出门用导航,但一个导航App背后,需要什么样的数据和算法来支撑呢?算法又如何来推动出行体验的进步和创新呢?在阿里CIO学院攻“疫”技术公益大咖说的第十四场直播中高德地图首席科学家任小枫将为大家讲解高德地图背后的算法的演进和创新,分别从地图制作、搜索推荐、路径规划、时

演讲嘉宾简介:任小枫,高德地图首席科学家。

以下内容根据演讲视频以及PPT整理而成。
观看回放(戳我)
本次分享主要围绕以下三个方面
一、高德地图简介
二、用算法连接世界
三、用算法创造出行未来

>>> 点击下PPT

一、高德地图

高德地图已经变成了国民级的出行工具,每日日活用户已经超过1亿,月活用户已经超4亿。高德地图服务还包括信息服务、驾车导航、共享出行、智慧公交、智慧景区、骑行、步行、长途出行等等。高德地图不光是个导航,更多的是一个互联网基础设施。淘宝是建立人与商品的关系,支付宝是建立人和资金的关系,高德地图是建立人与位置的关系,更进一步则是建立人与真实世界的关系。高德地图的使命是连接世界,让出行更美好。事实上,高德地图的APP只是大家所看到的冰山的一角,但在高德地图背后还有很多工作,如定位、路径规划、路况、ETA、网约车、货运、LBS游戏、供需+路径规划等等,这些工作都需要很多技术的支持。
image.png

二、用算法连接世界
1.地图制作

地图制作是一个非常复杂的过程。如下图,首先需要进行资料的采集,再通过算法进行自动识别。当然目前自动识别还无法达到全自动的程度,还需经过人工修正才能进入地图服务中。
image.png
地图制作算法类型:地图制作算法大致分为两类,一类是道路标志识别,如识别下图中的限速和禁停标志。除道路信息之外,还有POI挂牌识别算法,即Point of Interest,识别路边的店铺等兴趣点。两类算法的实现在现实场景中都面临着很多的挑战。
image.png
道路标志识别:以下图中的道路标志识别为例,首先需要通过目标检测算法将里面的标志进行识别。对所识别标志进行细分类,识别出是禁行标志。再进行文字识别,识别出具体的内容是长途客车,时间在2:00到5:00间。大体看起来道路标志识别的流程好像很简单,但实际实现过程中会遇到各种各样的困难。
image.png
道路标志识别挑战
(1)道路标志种类繁多,如下图中所列出来的标志,这还不是全部的标志。如此多的道路标志给所识别标准细分类任务带来了很大的挑战。
image.png
(2)图像质量问题也会对道路标志识别带来较大的难题。图像问题包括畸变、反光、遮挡、分辨率较低、图像压缩等等。其成像质量由于光线、天气的影响会变得非常糟糕。image.png
解决图像畸变问题相当于相机自标定的过程。其中,相机的内参如焦距、中心、畸变等,外参如位置、角度等都是未知的。标准图像的标定算法需要拿到每个相机进行标定,实现起来并不现实。此时通过多源图像匹配的手段,通过利用质量较好的相机,可以在相当程度上解决相机自标定的问题。image.png
此外,我们可以用图像质量增强的方法来解决图像质量问题。下图中左侧是原图,放大原图可以看清一些文字内容,但还是有一些细节的文字不是很清晰。右图显示,用图像增强的方式,可以把文字内容变得更清楚。图像增强可以提高识别算法的精度,还可以用于模糊检测,也可以用于提高人工效率。
image.png
(3)小目标检测问题在图像检测领域经常出现。下图中的摄像头,从远处看大概可以猜到具体是什么,但是一旦放大,像素会非常糟糕,显示小目标本身的信息量很有限。小目标检测可以通过周边的信息辅助目标检测,引入注意力(Attention)机制,利用先验知识,如相机的分布、高度、大小等信息辅助解决小目标检测问题。
image.png
(4)在实际生活中除了小目标检测,更多的是对变化进行检测。如判断下图中是否属于同一电子眼,人眼由于时间,天气,设备等不同很难进行准确判断。而算法则可以通过检测位置、归属车道、电子眼架设类型、及分析场景等手段进行判断。
image.png
POI挂牌识别算法:真实的街道中,挂牌非常复杂且密度很高,所以POI挂牌识别时依然会遇到很多实际问题。
image.png
POI挂牌识别挑战
(1)实际街道上,POI挂牌方式丰富多样,如牌坊式POI、铭牌式POI、挂牌式POI、门脸式POI等。实际街道中还有很多非挂牌POI式的目标,如条幅标语、横幅广告、墙体标语、交通标语对联、和车牌等。
image.png
(2)识别POI之后,需要进行文字的识别和提取。这时除了多种多样的POI挂牌之外,还有挂牌密集稀疏不一,特殊造型的挂牌,以及不清晰和不完整的挂牌等问题。对于这种复杂的问题需要结合多种技术解决,如多级级联检测模型,文字检测识别,三维重建位置匹配,模糊和遮挡检测技术。
image.png
(3)POI排版识别除了文字识别之外,还需要对牌面进行解析,理解牌面上的主名称、分店名、联系方式、营业范围和非PO文字等内容。因此POI文字识别首先要进行属性识别,根据文字语义、图像和位置进行特征融和,根据场景理解及上下文判断context。image.png
整体而言,要保证和提高地图数据的准确率,基于图像的自动化地图制作的程度和效率都非常重要。高德除了在提高算法及多源数据上投入很多精力之外,还在不断的引入新的技术。此外,高德希望未来可以将算法放在端上,更加实时有效的理解道路场景,收集更快更准确的地图信息。

2.搜索推荐

地图应用中搜索产品形态有很多种,首先用户可以输入简短的目的地信息,地图进行更进一步的精确搜索,返回结果。还有类目搜索和品牌搜索,如美食,娱乐品牌等。在沿途过程中,提供导航搜索功能。
image.png
地图搜索的特性和挑战:下图从技术角度将地图搜索与传统的电商和网页搜索进行了对比。首先,网页搜索的是非结构化的长文本,规模非常庞大,可达千亿级。电商搜索的是商品,规模可达到十亿级,返回图片列表。而地图搜索输入的是POI类型的结构化短文本,规模大概在千万级。但是地图搜索的精度要求相对更高,此外,需要收集地图空间位置信息作为搜索算法的支持。image.png
高德搜索技术演进之路:从2010年开始,高德开始构建搜索系统。自2014年,陆陆续续引入更高端的技术,构建搜索专家系统,全面引入机器学习和深度学习,构建搜索中台,全链路业务通道平台化。支持神马搜索、菜鸟、斑马、饿了么等业务。
image.png
模糊搜索案例:如下图所示,搜索“湖南省人力资源社会保障厅”,如果输入语句都正确,则可以直接搜到目的地。但实际上,输入语句总会出现错误,搜索算法需要引入地理纠错进行高低频纠错,通过语义匹配新增语义改写,通过空间关系建立文本空间模型。此外,搜索算法除了解决单纯的语句的匹配,更重要的是意图的识别,判断搜索范围在本地还是外地、需要精搜还是反搜、实时还是调研、出行目的是旅游还是公务。
image.png
多源地理信息库:高德希望构建以地理位置为基础的综合信息库,其中地理位置包括位置、路网、楼块和房间等信息,综合信息包括名称、类型、功能、时间、评论等。这些信息有多种来源,包括图像采集、文本大数据、搜索大数据、轨迹大数据、用户输入、行业资料等。如何将这些多源信息融合起来,支持构建精准的丰富的综合信息库是算法工作面临的一个主要挑战。
image.png

3.路径规划

高德路径规划演进之路:下图展示了高德路径规划的演进路线。从2004年开始,高德提供路径规划服务,经过陆陆续续算法的提升和演化,目前高德正处于钻研多目标算法阶段,以满足用户的诉求,快速规划出更好的路线。
image.png
路径规划挑战:现实场景中,路径规划技术需要解决超大规模的实时路径规划问题。具体而言,路线规划问题包括路网规模大,如全国道路数量就多达4000万。其次道路属性变化非常快,每个季度都有10%左右的更新。此外,路况信息更新更是要求以分钟级进行实时发布。
image.png
超大规模实时路径规划,作为实际问题,和学术界的最短路径算法有很大的不同。在标准算法的基础上,要提高效率,一个重要的方法是引入预处理,可以辅助解决大规模和实时性的挑战。预处理算法有很多,包括Arc Flags,Multi-Layers等。
image.png
综合起来,对于超大规模最短路径问题,有TNR、CH、CBR等学术界提出的比较好的算法。在实用中,如何在多种算法中做出选择?我们需要根据实际的需求,包括规模、实时性和路况更新,在算法性能和预处理性能之间找到平衡。
image.png
实际需求首先要保证规划算法的性能。此外还需要支持实时性需求,如支持小时级路网结构更新,分钟级路况更新。本质上,实时性的要求推动了算法的设计,基础算法以分层为主,分多个cell预计算求最短路径,cell根据路网结构进行partition,针对权重进行update。在硬件基础方面,在大内存的基础上,支持多核并发,以及cache优化。
image.png

4.数据挖掘

现实生活中有很多路径的信息,怎样从时空大数据中挖掘到所需要的具体信息?其中,具体需要挖掘的信息包括POI,新增道路,事故和拥挤等。
image.png
时空大数据挖掘挑战
现实生活中的数据挖掘会遇到诸多挑战,如轨迹不准确,行为复杂,时效性要求较高等。目前,通过多源信息融和,借助时空模型如RNN,LSTM,CTC,TCN,GCN等,进行特定模型改进,可以支持闭环与数据回流。
image.png
POI过期挖掘案例:POI过期挖掘的业务特点是对空间拓扑的刻画,对多源特征的融和。此时可通过Wide&Deep的模型,Wide部分处理POI静态特征,Deep部分处理时序流量特征。高德在这方面也经历了多种模型的演化,从最开始的RNN到DeepTCN,可以更好的挖掘到POI过期信息。
image.png
道路新增挖掘案例:道路新增问题除了要对具体的问题进行算法的设计之外,如不同zoom的轨迹特征,mean shift轨迹取种子点,principle curve曲线等,还需要能够容错,通过概率模型解决短路,连通路等精细化场景。此外,通过CNN端到端模型,收集热力和卫星影像刻画空间信息,通过轨迹和路网连通性刻画驾驶行为。
image.png

三、用算法创造出行未来

1. 高精地图

高精地图是自动驾驶的基础。它对精度要求非常高,反映真实世界,无论对道路,车道,还是周围的信息进行完备和准确的刻画。高德对位置的准确性要求是10cm以内。收集到高精地图资料后需要解决以下几点问题。
高精地图挑战:
(1)资料对齐问题:即使高精采集车精度很高,但误差还是在1 m以上,通过对多次采集资料进行对齐,得到5cm以内的精准度。此外,还需要对植被影响等多种场景进行处理,同时保持轨迹的刚性,针对上下行观测角度不同,点云的不同,前端需要匹配ICP,语义,特征和形状,然后在后台对对齐的信息进行大规模的拉齐和平滑。
image.png
(2)识别:道路中很多物体需要进行识别,如车道线,路边缘,地面标识,以及OBJ对象包括杆,牌和桥等。识别的精度需要达到99+%的召回率,精度在10cm以内,但基于场景的变化,训练的样本非常有限。高德通过点云与图像算法的融和,及深度学习和传统算法的结合,复用常规地图中的额数据和模型,利用先验信息支持数据的回流和模型的的迭代。
image.png
(3)从高速到城市:上面的问题在高速道路上不是很严重,但在城市场景中,道路路型呈网状结构,包括高速、干道、小路等各种等级道路。此外,标识种类繁多,标识复杂多变,场景复杂多变,拥堵和遮挡。

2. 视觉定位(GPS)

在城市峡谷中经常与遇到定位不准的问题。下图中右侧红色部分是真实的位置,黄色是GPS定位的位置,可以发现偏离问题还是比较明显的。
image.png
视觉定位方法可以辅助解决定位不准问题。目前,手机上都有相机,越来越多的车也都配有相机。我们考虑利用图像和视频技术,建立一个通用的视觉方法来定位室内和室外的车和人。具体而言,有几种技术选择。SLAM/VIO是定位相对位置的方法。对于绝对位置的定位可通过三位重建稀疏特征+PnP的方法,得到比较精准的结果。还有一种方法是矢量地图+实时监测算法,对牌、线等对象进行检测,这类算法对计算算力和精度要求比较高。在此之外,高德也正在探索深度学习的方法,可以在精度和鲁棒性之间进行平衡。
image.png
如给到一张图片,希望得到其位置和角度。此时需要一个已知位置的参考图像,再结合实时图像,在全路网,全天候的条件下得到高效(毫秒级)的定位效果。image.png
3.AR导航
如何将导航体验做的更好?尤其在现实世界中会遇到很多复杂的场景。高德希望将导航做到所见即所得的效果,传统导航更多提供下图中左侧的两类图像。但更好的方式可能是下图右侧图像,通过AR的方式提升导航体验。
image.png
高德在2019年4月份发布了AR导航产品,下图展示了AR导航所提供的导航视图。道通过绿色路线进行指引,在拐弯处指示该如何转弯。此外,还有与前车距离的检测和碰撞预警功能,以及还在逐步更新的安全辅助驾驶功能。
image.png
与目前的自动驾驶技术不同的是,AR导航希望通过轻量级的手段解决技术难题。高德目前单相机传感器,1/5手机芯片的计算性能就能够达到较好的导航效果。
image.png
AR导航车辆检测案例:如下图需要检测前方车辆。为了高效的检测前方车辆,需要进行模型压缩,使用先验尺度,进行模型的训练优化。此外,在检测的基础上,进行实时的轨迹跟踪。
image.png
AR导航车道线分割案例:车道线检测与车辆检测同理,首先进行模型压缩,根据多任务模型,将多种目标检测算法融和起来,提高模型的复用。再进行模型训练优化,曲线拟合,将检测和跟踪进行结合。
image.png
AR导航引导线案例:AR导航视图中引导线是基于语义分割和回归模型的基础上,与传统的GPS导航进行融和,以提升模型效果。
image.png
下图中展示了目前高德AR导航的实际效果。AR导航可以实时预警前方的路过的行人,还可以对马路对面的变灯进行提醒。
image.png

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
4小时前
|
算法 jenkins 持续交付
【MATLAB 】 EEMD-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 EEMD-ARIMA联合时序预测算法,科研创新优选算法
52 0
|
4小时前
|
算法 jenkins 持续交付
【MATLAB 】 VMD-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 VMD-ARIMA联合时序预测算法,科研创新优选算法
47 0
|
6月前
|
负载均衡 算法 5G
m基于5G通信的超密集网络多连接负载均衡和资源分配算法matlab仿真
m基于5G通信的超密集网络多连接负载均衡和资源分配算法matlab仿真
122 4
|
8月前
|
数据采集 运维 监控
序列挖掘模式算法:提升企业电脑监控软件安全性的创新路径
当谈到提升企业电脑监控软件的安全性时,咱们不妨考虑一下序列模式挖掘算法,它们其实就是电脑监控软件的"秘密武器",能够帮助我们识别和分析用户以及系统行为中的种种奇奇怪怪的模式。这可不是为了解密谜题,而是为了更好地抓住那些异常活动和潜在的安全威胁。下面我们来看看如何用序列模式挖掘算法来提高企业电脑监控软件的安全性——
130 0
|
4小时前
|
人工智能 算法 BI
【图论】【 割边】【C++算法】1192. 查找集群内的关键连接
【图论】【 割边】【C++算法】1192. 查找集群内的关键连接
|
4小时前
|
算法 jenkins 持续交付
【MATLAB 】 CEEMDAN-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 CEEMDAN-ARIMA联合时序预测算法,科研创新优选算法
25 0
|
4小时前
|
编解码 算法 jenkins
【MATLAB 】 小波分解-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 小波分解-ARIMA联合时序预测算法,科研创新优选算法
56 0
|
4小时前
|
算法 搜索推荐 程序员
创新!京东T7开创“新算法宝典”,图文并茂,全新演绎,太酷了
算法是一门学问,但却总遭到一些程序员的冷落。现在的开发人员,更热衷于编程语言的修炼,以应付面试需求时的需要,所以对算法的学习,稍许忽略了些。实际上,近些年来,各互联网公司对于算法的要求也越来越高了,尤其是对于应届生来说,更为严格。
|
8月前
|
机器学习/深度学习 传感器 算法
NGO-VMD北方苍鹰算法NGO优化VMD变分模态分解 可直接运行 分解效果好 适合作为创新点
NGO-VMD北方苍鹰算法NGO优化VMD变分模态分解 可直接运行 分解效果好 适合作为创新点
|
10月前
|
机器学习/深度学习 传感器 编解码
路径规划算法:基于闪电连接过程优化的机器人路径规划算法- 附matlab代码
路径规划算法:基于闪电连接过程优化的机器人路径规划算法- 附matlab代码