0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习技术在高德的地图数据生产的具体应用

倩倩 来源:lq 作者:SandaG 2019-09-20 14:45 次阅读

数据对于地图来说十分重要,没有数据,就没有地图服务。用户在使用地图服务时,不太会想到数据就像冰山一样,用户可见只是最直接、最显性的产品功能部分,而支撑显性部分所需要的根基,往往更庞大。

地图数据最先是从专业采集来的,采集工具就是车、自行车、飞机和卫星影像等,近两年有了利用智能硬件的众包采集。采集之后,就是把数据更新的速度和精准度都无限提升。因为地面上变化太快了,用户越来越依赖于地图应用。所以数据更新的速度和数据的准确度就是在乎用户体验的地图公司的第一要务了。而数据更新的第一步,就是交通标志检测

本文将主要介绍机器学习技术在高德的地图数据生产的具体应用,这些技术方案和设计都已经过验证,取得了不错的效果,并且为高德地图数据的快速更新提供了基础的技术保证。

2.“交通 标志检测”定义

交通标志检测,特指在普通街景图像上通过自动化手段检测出各种类型的交通标志,如限速、禁止掉头、人行横道和电子眼等。这些检测结果将作为生产数据交付给地图数据制作流程,最终演变为服务于广大用户的地图数据。

3.难点与挑战

交通标志检测的主要难点有样式繁杂,且在拍摄过程中受自然环境的影响较大。此外,为满足数据更新的速度和数据准确度的要求,对于算法的性能要求也格外严格。

3.1 样本形态差异大

交通标志的形态差异主要体现在:

类型繁多:国标定义的交通标志有几百个类型;

形状多样:常见交通标志的形状有三角形、圆形、方形、菱形、八边形等,还有地面标线、电子眼、信号灯,以及限高杆、栅栏等物理设施;

颜色分布广泛:常见的有黄色、红色、蓝色、绿色、黑色、白色等;

图像内尺寸差异大:从几百像素(如方牌、人行横道等)到十几像素(如电子眼)不均匀分布;

图1 常见道路交通标志(标牌类)

3.2 自然场景下变化多端

在自然场景下,交通标志存在树木或车辆遮挡、磨损等情况;天气、季节等也会影响到图像采集过程中,造成图像模糊、颜色失真等。

图2 自然场景下拍摄的交通标志

一些外形与交通标志相似的标牌,如商户的招牌、交通公益广告牌等,对算法的准确率造成极大的挑战。

图3 类似交通标志的噪声示例

3.3 性能要求

准召率:我们的应用场景中对于召回率和准确率的要求极高,任何未召回都会导致数据更新的延迟,而错召回则会影响作业效率与作业周期,最终对数据的快速更新造成影响;

吞吐量:高德每天需要处理上亿张图片,这就要求我们的算法不仅效果要好,处理速度也必须够快,以免造成数据积压,影响地图数据的更新时效;

扩展性:交通标志的类型不是一成不变的(国标会存在调整,不同国家和地区之间各有特色),因此需要算法环节具有非常好的扩展性,能够快速适应新增的各种交通标志类型;

4.高德地图中的交通标志检测方案

当前学术界针对目标检测任务常用的深度学习模型一般都采用End2End的方式进行训练,以得到全局最优的检测效果。这个方案在使用时非常简单,只需要标注好“几百类物体的样本”,然后放到深度学习的框架里进行迭代训练,就可以获得最终模型,主要可以分为Two Stage(FasterRCNN[1])和One Stage(YOLO[2],SSD[3])两大类。

但是在实际使用过程中,需要应对如下问题:

样本标注成本高:所有训练样本都需要进行全类别标注,当有新增类别时需要将历史训练样本全量补标,成本极高;

无法单类迭代:由于交通标志出现的频率和重要性不等,业务上对于部分类型(如电子眼、限速牌等)的准召率要求更高。但是End2End的模型必须针对所有类型全量迭代,无法优化单一类型,导致算法迭代和测试成本极高;

模型训练难度大:我们需要处理的交通标志有几百类,且各自出现频率差异很大,使用单一目标检测模型完成如此巨大的分类任务,模型训练难度太大,收敛缓慢,召回率、准确率上难以平衡;

结合通用目标检测技术的发展以及高德地图对于交通标志检测的需要,我们最终选择了Faster-RCNN作为基础检测框架,它的检测效果更好(尤其是针对小目标),独立的RPN网路也可以满足扩展性要求。速度方面,我们也进行了针对性的优化调整。

在实际使用时,我们将检测框架分为目标检测与精细分类两阶段:

图4 交通标志检测的目标检测和精细分类阶段

4.1 目标检测阶段

目标检测阶段的目的是通过Faster-RCNN在图片中检测所有的交通标志,并进行粗分类,要求极高的召回率和执行速度。在实际使用时,我们采用了如下策略来提升算法能力:

效果方面:将检测目标根据外形特征分为N大类(如圆形、三角形、方形,以及高宽比异常的人行横道等),再为每一类配置专属的RPN网络,各个RPN根据对应的尺寸特性设计Anchor的Ratio和Scale;不同RPN根据需要使用不同层的特征图,设计更有针对性;

效果方面,针对各个类型样本分布不均匀问题,使用多种样本增强手段,并在训练过程中使用OHEM等方式进一步调整样本分布;

效果方面,还借鉴了IoU-Net、Soft-NMS等方案,进一步提升检测效果;

性能方面,各个大类之间共享基础卷积层,保证检测时间不会过分增长;

扩展性方面,对于新增类型,理想情况下只需要新增一个RPN网络单独迭代,可以不对其他类型的效果造成任何影响(如下图,RPN1和RPN2完全独立);

图5 多RPN设计示意图

4.2 精细分类阶段

精细分类阶段的目的是对目标检测阶段得到候选框进行精细分类并滤除噪声,保证极高的召回率和准确率。在实际实现中,还使用以下策略来提升效果:

为每个大类配置独立的精细分类网络,互相之间不干扰;各个大类的迭代完全独立和并行,可以多人并行研发,有效缩短研发周期;

针对各个大类的难易程度,选择不同计算复杂度的网络来完成精细分类和噪声抑制,避免因为某些类型复杂度过高产生效率瓶颈;

样本方面,各个大类可以独立收集样本,可以针对特定类型进行收集和标注,训练和测试集合的构建效率大幅提升;

如下图,针对圆形标牌,其差异比较明确,可以使用简单网络;针对方牌,需要根据文字布局和内容来区分正负样本,分类难度大,因此必须使用较深的网络:

图6 精细分类模块示意图

由于同时使用了多个模型,上述方案会导致服务器的显存占用显著增加,对计算资源产生额外要求。针对该问题,我们针对深度学习框架进行优化,动态分配并在各模型间共享临时缓冲区,并裁剪框架的反向传播功能,最终使得显存占用降低50%以上。

5.效果与收益

上述方案已经正式上线,准召率都达到了生产作业的要求,日均图片吞吐量在千万以上。以下是部分效果图(不同框代表不同检测结果):

图7 交通标志检测效果图

6.小结

交通标志检测技术已经在高德地图内部得到应用,有效提升了高德地图的数据制作效率,达成地图数据更新速度接近T+0(时间差为零)的目标。

目前我们也在把机器学习技术用于数据的自动化制作,进一步减少现实世界和地图数据之间的差异,做到“连接真实世界,让出行更美好”。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 图像采集
    +关注

    关注

    2

    文章

    279

    浏览量

    41069
  • 数据
    +关注

    关注

    8

    文章

    6509

    浏览量

    87559
  • 机器学习
    +关注

    关注

    66

    文章

    8096

    浏览量

    130522
收藏 人收藏

    评论

    相关推荐

    【鸿蒙千帆起】地图携手HarmonyOS NEXT,开启智能出行新篇章

    发和设计提供了宝贵的经验。通过案例解读,开发者们可以更加深入地理解鸿蒙提供的一系列调测能力及工具,并学习到如何在实际开发中解决类似的问题。 地图的加入,对鸿蒙生态发展来说,无疑能帮
    发表于 02-02 11:09

    什么是高精度地图

    。 采集技术:传感器+摄像头 通过激光雷达、毫米波雷达、摄像头、陀螺仪、雨水传感器等,都能够回传包括道路状况、天气状况等高精度地图必须的信息,通过类似后视镜、行车记录仪等带摄像头的后装硬件,都能向
    发表于 10-07 14:24

    机器学习数据挖掘方法和应用

    机器学习数据挖掘方法和应用(经典)
    发表于 09-26 07:56

    机器学习技术是什么?机器学习技术在新型电力系统安全稳定中的应用

    机器学习技术是什么?机器学习技术在新型电力系统安全稳定中的应用
    的头像 发表于 08-17 16:30 785次阅读

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?
    的头像 发表于 08-17 16:30 1376次阅读

    机器学习是什么意思?机器学习属于什么分支?机器学习有什么用处?

    技术。在这个过程中,计算机通过不断地迭代和学习,提高算法的准确性和可靠性,从而可以更好地解决各种实际问题。 机器学习属于计算机科学领域的一种技术
    的头像 发表于 08-17 16:30 1257次阅读

    机器学习数据挖掘的区别 机器学习数据挖掘的关系

    机器学习数据挖掘的区别 , 机器学习数据挖掘的关系 机器
    的头像 发表于 08-17 16:30 1509次阅读

    数据挖掘和机器学习有什么关系

    的定义 数据挖掘和机器学习都是现代数据科学的重要部分。下面分别从定义上介绍两者的概念。 1. 数据挖掘
    的头像 发表于 08-17 16:29 2060次阅读

    python数据挖掘与机器学习

    python数据挖掘与机器学习 Python是一个非常流行的编程语言,被广泛用于数据挖掘和机器学习
    的头像 发表于 08-17 16:29 876次阅读

    机器学习算法入门 机器学习算法介绍 机器学习算法对比

    ,讨论一些主要的机器学习算法,以及比较它们之间的优缺点,以便于您选择适合的算法。 一、机器学习算法的基本概念 机器
    的头像 发表于 08-17 16:27 618次阅读

    机器学习算法总结 机器学习算法是什么 机器学习算法优缺点

    机器学习算法总结 机器学习算法是什么?机器学习算法优缺点?
    的头像 发表于 08-17 16:11 1037次阅读

    机器学习算法汇总 机器学习算法分类 机器学习算法模型

    是解决具体问题的一系列步骤,机器学习的算法被设计用于从大量的数据中自动学习并不断改进自身的性能。本文将为大家介绍
    的头像 发表于 08-17 16:11 706次阅读

    机器学习和深度学习的区别

    机器学习和深度学习的区别 随着人工智能技术的不断发展,机器学习和深度
    的头像 发表于 08-17 16:11 3298次阅读

    机器学习可以分为哪几类?机器学习技术有哪些?

    机器学习可以分为哪几类?机器学习技术有哪些 机器学习
    的头像 发表于 08-17 16:11 4338次阅读

    如何有效地监控生产中的机器学习模型

    监控生产中的机器学习模型指南
    的头像 发表于 07-05 16:30 294次阅读