NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

基于神经网络 StarNet 的行人轨迹交互预测算法

  • 2019-11-29
  • 本文字数:5522 字

    阅读完需:约 18 分钟

基于神经网络StarNet的行人轨迹交互预测算法

1. 背景

民以食为天,如何提升超大规模配送网络的整体配送效率,改善数亿消费者在”吃“方面的体验,是一项极具挑战的技术难题。面向未来,美团正在积极研发无人配送机器人,建立无人配送开放平台,与产学研各方共建无人配送创新生态,希望能在一个场景相对简单、操作高度重复的物流配送中,提高物流配送效率。在此过程中,美团无人配送团队也取得了一些技术层面的突破,比如基于神经网络StarNet的行人轨迹交互预测算法,论文已发表在 IROS 2019。IROS 的全称是 IEEE/RSJ International Conference on Intelligent Robots and Systems,IEEE 智能机器人与系统国际会议,它和ICRARSS并称为机器人领域三大国际顶会。

1.1 行人轨迹预测的意义

在无人车行驶过程中,它需要对周围的行人进行轨迹预测,这能帮助无人车更加安全平稳地行驶。我们可以用图 1 来说明预测周围行人的运动轨迹对于无人车行驶的重要性。



图 1 主车规划轨迹跳变问题


图 1 中蓝色方块代表无人车,白色代表行人。上半部分描述的是在不带行人轨迹预测功能情况下无人车的行为。这种情况下,无人车会把行人当做静态物体,但由于每个时刻行人都会运动,导致无人车规划出来的行驶轨迹会随着时间不停地变化,加大了控制的难度,同时还可能产生碰撞的风险,这样违背了安全平稳行驶的目标。下半部分是有了行人轨迹预测功能情况下的无人车行为。这种情况下,无人车会预测周围行人的行驶轨迹,因此在规划自身行驶时会考虑到未来时刻是否会与行人碰撞,最终规划出来的轨迹更具有“预见性”,所以避免了不必要的轨迹变化和碰撞风险。

1.2 行人轨迹预测的难点

总体而言,行人轨迹预测的难点主要有两个:


第一,行人运动灵活,预测难度大。本身精确预测未来的运动轨迹是一个几乎不可能完成的任务,但是通过观察某个障碍物历史时刻的运动轨迹,可以根据一些算法来大致估计出未来的运动轨迹(最简单的是匀速直线运动)。在实际中,相比于自行车、汽车等模型,行人运动更加灵活,很难对行人建立合理的动力学模型(因为行人可以随时转弯、停止、运动等),这加剧了行人预测的难度。


第二,行人之间的交互,复杂又抽象。在实际场景中,某一行人未来的运动不仅受自己意图支配,同样也受周围行人的影响(例如避障)。这种交互非常抽象,在算法中往往很难精确地建模出来。目前,大部分算法都是用相对空间关系来进行建模,例如相对位置、相对朝向、相对速度大小等。

1.3 相关工作介绍

传统算法在做预测工作时会使用一些跟踪的算法,最常见的是各类时序模型,例如卡尔曼滤波(Kalman Filter, KF)、隐马尔可夫(Hidden Markov Model, HMM)、高斯过程(Gaussian Process, GP)等。这类方法都有一个很明显的特点,就是根据历史时序数据,建立时序递推数学公式: 或者 。因为这类方法具有严格的数学证明和假设,也能处理一些常规的问题,但是对于一些复杂的问题就变得“束手无策”了。这是因为这些算法中都会引入一些先验假设,例如隐变量服从高斯分布,线性的状态转换方程以及观测方程等,而最终这些假设也限制了算法的整体性能。神经网络一般不需要假设固定的数学模型,凭借大规模的数据集促使网络学习更加合理的映射关系。本文我们主要介绍一些基于神经网络的行人预测算法。


基于神经网络的预测算法(主要以长短期记忆神经网络 Long Short Term Memory,LSTM 为主)在最近 5 年都比较流行,预测效果确实比传统算法好很多。在 CVPR(IEEE Conference on Computer Vision and Pattern Recognition) 2019 上,仅行人预测算法的论文就有 10 篇左右。这里我们简单介绍 2 篇经典的行人预测算法思路,如果对这方面感兴趣的同学,可以通过文末的参考文献深入了解一下。第一篇是 CVPR 2016 斯坦福大学的工作 Social-LSTM,也是最经典的工作之一。Social-LSTM 为每个行人都配备一个 LSTM 网络预测其运动轨迹,同时提出了一个 Social Pooling Layer 的模块来计算周围其他行人对其的影响。具体的计算思路是将该行人周围的区域划分成 NxN 个网格,每个网络都是相同的大小,落入这些网格中的行人将会参与交互的计算。



图 2 左:Social LSTM 原理 右:Social Pooling 计算过程


第二篇是 CVPR 2019 卡耐基梅隆大学 &谷歌 &斯坦福大学的工作,他们的工作同样使用 LSTM 来接收历史信息并预测行人的未来轨迹。不同于其他算法的地方在于,这个模型不仅接收待预测行人的历史位置信息,同时也提取行人外观、人体骨架、周围场景布局以及周围行人位置关系,通过增加输入信息提升预测性能。除了预测具体的轨迹,算法还会做粗粒度预测(决策预测),输出行人未来时刻可能所在的区域。



图 3 算法整体结构


其他的相关工作,还包括基于语义图像/占有网格(Occupancy Grid Map, OGM)的预测算法,基于信息传递(Message Passing, MP)的预测算法,基于图网络(Graph Neural Network, GNN)的预测算法(GCN/GAT 等)等等。

2. StarNet 介绍

目前,现有的轨迹预测算法主要还是聚焦在对行人之间交互的建模,轨迹预测通常只使用 LSTM 预测即可。如下图 4 左,现有关于轨迹预测的相关工作基本都是考虑行人之间两两交互,很少有考虑所有行人之间的全局交互(即使是 GCN,也需要设计对应的相似矩阵来构造拉普拉斯矩阵,这也是一个难点)。我们可以举一个例子来说明现有其他算法预测的流程:


假设感知模块检测到当前 N 个行人的位置,如何计算第一个行人下一时刻的位置?

Step 1 计算其他人对于第一个行人的交互影响。将第 i 个行人在第 t 时刻的位置记为(一般是坐标 x 和 y)。可以通过以下公式计算第一个行人的交互向量:

从上述公式可以大致看到,相对位置关系是最重要的计算指标,计算的函数 f 一般是一个神经网络。

Step 2 计算第一个行人下个时刻的位置。通常需要根据上一时刻的位置与交互向量:

上述公式中,计算的函数 g 同样是神经网络,即上面提到的长短期记忆神经网络 LSTM。




图 4 算法思路对比图 左:传统算法 右:StarNet


两两交互的方式存在两个问题:


(1) 障碍物 2 和 3 确实会影响障碍物 1 的运动,但是障碍物 2 和 3 之间同样也存在相互影响,因此不能直接将其他障碍物对待预测障碍物的影响单独剥离出来考虑,这与实际情况不相符。


(2) 两两计算消耗的资源大,如果有 N 个障碍物,那么两两交互就需要 N 的平方次计算,随着 N 的变大,计算量呈平方倍增长。我们希望障碍物之间的交互能否只计算 1 次而非 N 次,所有障碍物的轨迹预测都共享这个全局交互那就更好了。


基于上述两个问题,我们提出了一种新的模型,该模型旨在高效解决计算全局交互的问题。因为传统算法普遍存在计算两两交互的问题(即使是基于 Attention 注意力机制的 Message Passing 也很难考虑到全局的交互),本文想尝试通过一些更加简单直观的方式来考虑所有障碍物之间的全局交互,我们的算法大致思路如下:


每个时刻所有障碍物的位置可以构成一张静态的“地图”,随着时间的变化,这些静态地图就变成了一张带有时序信息的动态图。这张动态图中记录了每个区域内的障碍物运动信息,其中运动信息是由所有障碍物一起影响得到的,而非单独地两两交互形成。对于每个障碍物的预测阶段,只要根据该障碍物的位置,就可以在这张时序地图中查询该区域在历史时刻的障碍物运动信息(例如这个区域在历史时刻中,障碍物 1、2、4、5 都有其运动的轨迹)。通过“共享全局交互地图+个体查询”的方式,就可以做到计算全局交互以及压缩计算开销。



图 5 StarNet 网络结构图


我们的算法结构如上图 5 所示,Host Network 是基于 LSTM 的轨迹预测网络;Hub Network 是基于 LSTM 的全局时序交互计算网络。在论文具体的实现中,首先 Hub Network 的静态地图模块是通过接受所有障碍物同一时刻的位置信息、全连接网络和最大池化操作得到一个定长的特征向量;然后动态地图模块使用 LSTM 网络对上述的特征向量进行时序编码,最终得到一个全局交互向量。Host Network 首先根据行人(假设要预测第一个行人下时刻的位置)的位置 去动态地图中查询自己当前位置区域内的交互 ,具体我们采用简单的点乘操作(类似于 Attention 机制)。最终自己的位置 和交互 一起输入 LSTM 网络预测下时刻的的位置


实验阶段,我们与 4 种经典的算法作比较,使用的数据集为 UCY&ETH 数据集,这两个数据集包含 4 个子场景,分别为 ZARA-1/ZARA-2、UNIV、ETH、HOTEL。在预测过程中,所有算法根据每个行人过去 3.2 秒的运动轨迹,预测出它在未来 3.2 秒的轨迹。每 0.4 秒采样一个离散点,因此 3.2 秒的轨迹可以用 8 个轨迹离散点表示。对比的指标有:


(a)平均距离差 ADE(Average Displacement Error):用算法预测出的轨迹到真实轨迹所有 8 个点之间的平均距离差。


(b)终点距离差 FDE(Final Displacement Error):用算法预测出的轨迹与真实轨迹最后一个终点之间的距离差。


(c)前向预测时间以及参数量。


最终的实验结果如下表:



从实验结果可以看到,我们的算法在 80%的场景下都优于其他算法,且实时性高(表中 LSTM 的推理时间为 0.029 秒,最快速是由于该算法不计算交互,因此速度最快参数也最少,但是性能较差)。总结一下,我们提出算法 StarNet 的优势主要包括以下两点:


  • 使用全局动态地图的形式来描述行人之间在时间和空间上的相互影响,更加合理,也更加准确。

  • Hub Network 全局共享的特征提升了整个算法的计算效率。

3. 未来工作

首先,我们会进一步探索新的模型结构。虽然我们的算法在数据集上取得了不错的效果,但这是我们的第一次尝试,模型设计也比较简单,如果提升模型结构,相信可以取得更好的结果。


其次,我们会提升预测的可解释性。同现有算法一样,目前的模型对计算到的交互缺乏可解释性,仍然依赖于数据驱动。在今后的工作中,我们将通过对交互的可解释建模来提升预测的准确性。


最后,在构建时序的动态地图过程中,引入对于每个障碍物的跟踪信息。换句话说,我们知道每块区域在各个时间点障碍物的位置,但目前算法没有对障碍物在时序上做跟踪(例如时刻 1 有三个障碍物,时刻 2 三个障碍物运动了得到新的位置,网络输入为三个障碍物的位置信息,但是网络无法理解两个时刻中障碍物的对应关系,这降低了交互的性能),这点在以后的工作中还需要继续改进。

参考文献

[1] A. Alahi, K. Goel, V. Ramanathan, A. Robicquet, F. Li and S. Savarese, “Social lstm: Human trajectory prediction in crowded spaces,” in 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE 2016, pp. 961-971.


[2] H. Wu, Z. Chen, W. Sun, B. Zheng and W. Wang, “Modeling trajectories with recurrent neural networks,” in 28th International Joint Conference on Artificial Intelligence (IJCAI). 2017, pp. 3083-3090.


[3] A. Gupta, J. Johnson, F. Li, S. Savarese and A. Alahi, “Social GAN: Socially acceptable trajectories with generative adversarial networks,” in 2018 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2018, pp. 2255-2264.


[4] A. Vemula, K. Muelling and J. Oh, “Social attention: Modeling attention in human crowds,” in 2018 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2018, pp. 1-7.


[5] Y. Xu, Z. Piao and S. Gao S, “Encoding crowd interaction with deep neural network for pPedestrian trajectory prediction,” in 2018 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2018, pp. 5275-5284.


[6] D. Varshneya, G. Srinivasaraghavan, “Human trajectory prediction using spatially aware deep attention models,” arXiv preprint arXiv:1705.09436, 2017.


[7] T. Fernando, S. Denma, S. Sridharan and C. Fookes, “Soft+hardwired attention: An lstm framework for human trajectory prediction and abnormal event detection,” arXiv preprint arXiv:1702.05552, 2017.


[8] J. Liang, L. Jiang, J. C. Niebles, A. Hauptmann and F. Li, “Peeking into the future: Predicting future person activities and locations in videos,” in 2019 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2019, pp. 5725-5734.


[9] A. Sadeghian, V. Kosaraju, Ali. Sadeghian, N. Hirose, S. H. Rezatofighi and S. Savarese, “SoPhie: An attentive GAN for predicting paths compliant to social and physical constraints,” in 2019 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2019, pp. 5725-5734.


[10] R. Chandra, U. Bhattacharya and A. Bera, “TraPHic: Trajectory prediction in dense and heterogeneous traffic using weighted interactions,” in 2019 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2019, pp. 8483-8492.


[11] J. Amirian, J. Hayet and J. Pettre, “Social Ways: Learning multi-modal distributions of pedestrian trajectories with GANs,” arXiv preprint arXiv:1808.06601, 2018.


作者介绍


炎亮德恒冬淳华夏,均来自美团无人配送部。


本文转载自公众号美团技术团队(ID:meituantech)。


原文链接


https://mp.weixin.qq.com/s?__biz=MjM5NjQ5MTI5OA==&mid=2651751015&idx=2&sn=4a356f0acc2feccddbc2be12c400d59c&chksm=bd125b2a8a65d23cb9bc6825cb2b0bb57ffdaff47831ea21696980c2ec41d0b8774983c2a2de&scene=27#wechat_redirect


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-11-29 08:001547

评论

发布
暂无评论
发现更多内容

工作年限、成长路线、进阶技术。怎样才能成为架构师?

Linux服务器开发

Linux服务器开发 Linux后台开发 软件架构师 服务器架构师 C++架构师

通用时区:你应该知道的数据库时区知识

华为云开发者联盟

数据库 时区 GaussDB(DWS) 通用时区 夏令时

双指针法

后台服务器开发

c++ 双指针 LeetCode

一份283页pdf,五大核心内容,熬夜“啃完”,竟拿下了阿里offer

Java 程序员 架构 面试

【签约计划】百位签约创作者名单公布

InfoQ写作社区官方

签约计划

数仓分层架构如何设计?

奔向架构师

数据库 数据仓库 数据架构

Flink Job 概览

Alex🐒

flink 翻译 flink1.13

2021年,想要成为年薪百万的Java架构师需要掌握哪些技术?

Java架构师迁哥

墨奇,以“一手之力” 证明你就是你

E科讯

问题定位 | XtraBackup 8.0 数据重建避坑事件始末

RadonDB

MySQL Xenon XtraBackup

GitHub 近两万 Star,无需编码,可一键生成前后端代码,这个开源项目有点强!

程序员生活志

新版发布|ShardingSphere 5.0.0-beta 来了!

SphereEx

ShardingSphere

网络为本,博睿数据NPMD用20%的投入实现80%的功能

博睿数据

博睿数据 数据链DNA NPMD

低代码助力企业生产管理8大招式,你学废(hui)了吗?

优秀

低代码

Rust从0到1-泛型-生命周期

rust 泛型 生命周期 generic lifetimes

高寿命NVMe SSD应用场景探讨

怀瑾握瑜

区块链 数据库 云计算 SSD 虚拟货币

【Linux】使用 systemd 管理 frp 服务

赖猫

Linux 后端

架构实战营 模块六:学习总结

👈

架构实战营

【小技巧】Google浏览器设置之Tab折叠分组

恒生LIGHT云社区

推荐 浏览器书签 谷歌 工具分享

为什么大家都在用WebRTC?

anyRTC开发者

音视频 WebRTC 语音通话 视频通讯

ROS CDK | 云上资源自动化部署新模式

郭旭东

阿里云 ROS 基础设施即代码 IaC

从零开始学习3D可视化之拾取

ThingJS数字孪生引擎

大前端 可视化 3D 3D可视化 数字孪生

深度 | 字节跳动微服务架构体系演进

字节跳动 微服务 云原生 Service Mesh 服务网格 火山引擎

微警务系统搭建,智慧派出所平台建设解决方案

字节跳动亿级视频处理系统高可用架构实践

火山引擎开发者社区

架构 后端 音视频

体验为先,博睿数据打造以用户会话为中心的监测体系

博睿数据

博睿数据 数据链DNA DEM

剪视频一点都不难,多款超实用剪辑软件全方位评测!

懒得勤快

短视频 视频剪辑 视频制作

HTAP | MySQL 到 ClickHouse 的高速公路

RadonDB

MySQL Clickhouse Xenon

架构实战营 模块六:课后作业

👈

架构实战营

开发5年!三面字节,成功拿到27k*17offer,原来也没那么难

Java 程序员 架构 面试

自从有了这个工具,一键代码迁移不在话下

华为云开发者联盟

代码迁移 鲲鹏DevKit 汇编翻译 汇编语言 Kunpeng

基于神经网络StarNet的行人轨迹交互预测算法_AI&大模型_炎亮 德恒 冬淳_InfoQ精选文章