读论文-GPRAR

news2024/11/27 23:41:30

论文:GPRAR: Graph Convolutional Network based Pose Reconstruction and Action Recognition for Human Trajectory Prediction(2016)

摘要
高精度的预测对于自动驾驶等各种应用至关重要。现有的预测模型在现实世界中很容易出错,因为观察结果(例如人类的姿势和位置)通常是嘈杂的。为了解决这个问题,我们引入了GPRAR,一种基于图卷积网络的姿态重建和动作识别,用于人体轨迹预测。GPRAR 的关键思想是在嘈杂的场景下生成鲁棒特征:人类的姿势和动作。为此,我们使用两个新的子网络来设计 GPRAR: PRAR (姿态重建和动作识别)和 FA (特征聚合器)。PRAR 旨在从人体骨骼的连贯和结构特性中同时重建人体姿势和动作特征。它是由一个编码器和两个解码器组成的网络,每个解码器由多层时空图卷积网络组成。此外,我们提出了一个特征聚合器(FA),以通道方式聚合学习到的特征:人类姿势、动作、位置和相机运动,使用基于编码器-解码器的时间卷积神经网络来预测未来的位置。在常用数据集:JAAD 和TITAN 进行的大量实验表明,GPRAR 的精度比最先进的模型有所提高。具体而言,GPRAR 在 JAAD 和 TITAN 数据集的噪声观测下,预测精度分别提高了22%和50%。

GPRAR

网络结构

在这里插入图片描述
GPRAR 系统概述。我们的预测模型由两个子网络组成:PRAR 和 FA。PRAR 以目标行人 i i i 观察到的有噪声的人体骨骼序列 K o b s i K^i_{obs} Kobsi 作为输入,对有噪声的人体骨骼进行重构(去噪)并识别人体动作。在后期,FA将学习到的特征聚集在一起:网格光流 G G G、重建的人体骨骼 K i ~ \tilde {K^i} Ki~、位置 L i ~ \tilde {L^i} Li~ 和动作特征 A i A^i Ai ,并预测行人 i i i 的未来轨迹。

  1. 人体姿态重建和动作识别网络(PRAR)
    PRAR的基本思想是从噪声姿态检测中重构人体姿态并同时学习动作特征。为了最好地利用人类骨骼的相干性和结构特性,PRAR 由一个编码器和两个解码器实现,其中每个编码器和解码器是一个多层时空图卷积网络,操作在自然连接的人体关节(或姿势图)上。
  2. 我们提出了一个编码器-解码器(FA)
    以通道方式聚合学习到的特征:使用时间卷积网络(TCNs)来重构姿势和位置,动作,和相机运动。然后使用聚合特征输出目标行人的未来轨迹。

本文的贡献

  1. 我们提出了一个在噪声观测下高效鲁棒的人类轨迹预测网络(GPRAR)(第3节)。GPRAR 由两个新的子网络组成:人类姿态重建和动作识别网络(PRAR)和基于编码器-解码器的特征聚合器(FA)。
  2. 我们在两个常用数据集上评估了我们的模型:TITAN 和 JAAD,并表明我们的方法在噪声情况下优于其他方法(第4节)。我们还进行了消融研究,以证明系统每个组成部分的有效性。

相关工作

  1. 动态场景中的轨迹预测
    该研究最近的大部分工作依赖于递归神经网络(RNNs)、时间卷积网络(TCNs)或其变体等方法。大多数方法,它们依赖于真实的人类位置和姿势特征,而这些特征在现实世界中是不可用的。
  2. 图神经网络
    STGCN 卷积运算从卷积神经网络(CNN)扩展到图

系统设计

任务是在给定过去的 T o b s T_{obs} Tobs 帧的情况下预测 N 个行人的未来位置。为简单起见,我们对目标行人 i ∈ N i∈N iN 的任务描述如下:

  1. 在每个时间(当前帧) t 0 t_0 t0,我们的模型接收从过去的 T o b s T_{obs} Tobs 帧中提取的噪声特征作为输入,并在接下来的 T p r e d T_{pred} Tpred 帧中产生行人 i i i 的未来轨迹。我们使用了两个序列的噪声输入特征:人类骨骼 K o b s i K^i_{obs} Kobsi 和光流 E o b s E_{obs} Eobs,这些 E o b s E_{obs} Eobs 是使用可用的公共检测器(例如,OpenPose 和FlowNet )获得的。
  2. PRAR 是一种新型的基于编码器-解码器的时空姿态图卷积网络,基于行人 i i i 观察到的有噪声(不完整)的人类骨骼序列 K o b s i K^i_{obs} Kobsi,对这些有噪声的人类骨骼进行重构(去噪)并识别人类行为。然后将重构的姿态 K i ~ \tilde{K^i} Ki~ 和动作特征 A i A^i Ai 作为特征聚合器(FA)的输入来预测未来的位置。此外,由于观察到的位置是表征人体整体运动的重要特征,我们从重构姿态 K i ~ \tilde{K^i} Ki~ 序列中提取重构位置序列 L i ~ \tilde{L^i} Li~,并在下一阶段将其转发给 FA。在另一个分支(图1)中,我们计算网格光流 G,将每个光流图像 e t ∈ E o b s e_t∈E_{obs} etEobs 划分为 3*4 的网格,并对每个网格单元中所有像素的值取平均值。网格光流表示场景中不同区域的摄像机运动,因此比像素级光流提供更精确的摄像机运动。最后,Feature Aggregator (FA) 通过基于编码器-解码器的一维时间卷积网络,对所有学习到的特征 G 、 K i ~ 、 L i ~ 、 A i G、\tilde{K_i}、\tilde{ L^i}、A^i GKi~Li~Ai 进行聚合,预测行人 i i i 在接下来的 T p r e d T_{pred} Tpred 帧中的未来轨迹 p i ^ \hat{p^i} pi^。我们考虑行人之间的独立运动,因此,将上述相同的过程应用于相同观察时间内的 N 个行人,并通过批处理预测 N 个输出轨迹。

PRAR

PRAR 的目标是生成鲁棒的动作和姿态特征,以提高在极端情况下(例如,遮挡,快速相机运动等)和危及公共探测器敏感性的情况下的预测。为此,我们设计了由一个编码器和两个解码器组成的 PRAR,每个编码器由多层图神经网络(GNNs)组成,GNN 在观察到的人类骨骼序列上运行,如图2所示。在讨论细节之前,让我们重点介绍 PRAR 的以下技术创新:

  1. 虽然一些工作将 GNNs 用于人体骨骼的动作识别任务,但 GNNs 尚未用于姿态重建和人体轨迹预测任务。
  2. PRAR 是第一个用于多任务学习的基于编码器-解码器的 GNNs ,其中学习得到的鲁棒姿态特征对上述提及的两个任务都受益。
  3. PRAR 是一个即插即用模块,可以单独训练,但也可以与其他模型集成和联合训练,用于人类轨迹预测。
    PRAR
    PRAR包括一个姿态编码器和两个解码分支,用于姿态重建和动作识别。

在这里插入图片描述
(b)使用基于骨架的时空图卷积网络设计了每个姿态编码器/解码器的单层
(b)中也显示了重建缺失关节的示例,其中可以通过考虑来自附近关节的空间和时间域的信息来实现。

Feature Aggregator(FA)

FA 的目标是通道聚合所有学习到的特征:重构姿态 K i ~ \tilde{K_i} Ki~,重构位置 L i ~ \tilde{L_i} Li~,动作特征 A i A^i Ai 和区域光流 G G G
具体来说,FA 由四个特征编码器和一个解码器组成。每个编码器使用多层一维时间卷积(conv1d)、整流线性单元(ReLU)和Batch normalization(BN)对一个输入特征(即重构的姿势、位置、动作和摄像机运动)进行编码。

LOSS计算

PRAR使用均方误差损失:
L ( W ) = ∑ i N ∑ t T p r e d ∣ ∣ p ^ t i − p ‾ t i ∣ ∣ 2 L(W) = \sum^N_i\sum^{T_{pred}}_t ||\hat{p}^i_t - \overline{p}^i_t||^2 L(W)=iNtTpred∣∣p^tipti2
W W W包括模型的所有可训练参数

实验

数据集:JAAD(站、跳、蹲、弯、跑、走、躺、坐、跪)和 TITAN(站立和走路)
动作类分布不均匀,每个数据集分别进行实验,将每个数据集中的视频总数分成训练/验证集,比例为80/20。我们使用10帧进行观测,并预测 JAAD 数据集的下10帧(即0.3秒,预测下0.3秒)。对于 TITAN 数据集,我们观察了10个注释帧(1秒),并预测了接下来20个注释帧(2秒)的轨迹。

训练分为两段

  1. 第一阶段:预训练PRAR进行姿态重建和动作识别
    由于 TITAN 和 JAAD 的完整人类骨骼和人类动作数量有限,我们首先在大规模 Kinetics 数据集上训练 PRAR 以获得初始网络权重,然后在 TITAN 和 JAAD 数据集上对其进行微调。我们在补充材料中展示了预训练 PRAR 对动力学的有效性。我们使用与[30]中相同的训练/验证分割来训练 PRAR。为了生成训练数据,我们只提取完整的姿态样本并将其用作基础真值。在训练过程中,PRAR 的输入是通过随机丢弃一些人体节点(即设置为缺失节点)来获得的,遮挡率为0%到50%。为了验证,使用所有姿态样本。动作标签与Kinetics数据集提供的每个姿势相关联,也用于训练公式2中的损失函数 PRAR。将验证结果最佳的模型在 JAAD 和 TITAN 数据集上继续训练(微调)。我们使用相同的方法提取 JAAD/TITAN 数据集的姿态样本。经过验证的最佳模型将用于下一阶段的训练。
  2. 第二阶段:训练GPRAR进行轨迹预测。
    我们针对 JAAD[14]和 TITAN[20]数据集上的轨迹预测任务定制了预训练 PRAR。具体而言,我们将 FA 模块附加在 PRAR 之上,并在每个数据集的训练集上训练整个预测模型。在训练整个 GPRAR 的同时,我们允许更新 PRAR 的网络参数。这就是适应性学习方法。我们在消融研究中证明了它比非自适应方法更有效。在这两个阶段,我们的模型都使用随机梯度下降[2]进行训练,学习率为0.01 和 50个 epoch。我们在每10个 epoch 后将学习率衰减0.1。最后一个训练 epoch 得到的模型在验证集上进行验证。为了实现时空图卷积,我们使用了[30]中讨论的类似实现步骤。我们的网络模型是使用 PyTorch 实现的[26]。
    在这里插入图片描述
    先进的方法比较

评价指标

我们使用两个常用的指标来评估我们的系统[1,29]:
(a)平均位移误差(ADE):预测和真实轨迹的所有位置的均方误差;
(b)最终位移误差(FDE):所有人类轨迹最终预测位置和真实位置的均方误差。

结论

在本文中,我们提出了一种新的动态视频序列人类未来轨迹预测模型 GPRAR,该模型可以有效地处理现实世界中有噪声的场景。本文的主要贡献是两个新的子网:PRAR 和 FA。PRAR 被训练用于多任务学习:动作识别和姿态识别,而FA将多个学习到的特征聚合在一起用于轨迹预测。PRAR 的关键实现是使用基于编码器-解码器的图卷积神经网络,这有助于利用人体姿势的结构特性。通过广泛的实验,我们已经表明,与最先进的模型相比,GPRAR 产生了优越的性能。我们进一步对引入的特征进行了性能分析,并表明我们的模型在遮挡和各种人类行为下有效地执行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/590584.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux【网络编程】之HTTP协议

一文了解应用层协议:HTTP协议 一、HTTP协议二、URL2.1 urlencode和urldecode 三、HTTP协议格式3.1 HTTP请求方法3.2 HTTP状态码3.3 HTTP响应报头 四、结合代码理解HTTP通信流程五、长连接六、http会话保持七、postman和fiddler 一、HTTP协议 在上篇文章中我们模拟了…

YOLOV5 + PYQT5双目测距

YOLOV5 PYQT5双目测距 1. 测距源码2. 测距原理3. PYQT环境配置4. 实验结果 1. 测距源码 详见文章 YOLOV5 双目测距(python) 2. 测距原理 如果想了解双目测距原理,请移步该文章 双目三维测距(python) 3. PYQT环境…

大数据需要学习哪些内容

Python 已成利器 在大数据领域中大放异彩 Python,成为职场人追求效率的利器,因为不管什么工作,数据都会是工作的一部分,有数据的地方,就有Python! 我们知道,随着互联网的发展,线上…

数睿通2.0数据血缘、标准、质量功能更新发布

文章目录 引言数据血缘数据标准数据质量结语 引言 这段时间工作繁忙,琐事较多,加上二阳的冲击,导致数睿通 2.0 的更新进度缓慢,深表歉意,还望大家可以理解。本次更新主要包含数据治理模块的血缘,标准&…

阿里云的云安全审计可以用于哪些安全事件与合规审核?

阿里云的云安全审计可以用于哪些安全事件与合规审核? [本文由阿里云代理商[聚搜云www.4526.cn]撰写] 随着互联网的高速发展,各种互联网应用和服务也在不断涌现。但在运营过程中,安全事件和合规审核问题也不断出现。如何及时、准确地识别并解决…

[Nacos] Nacos Server之间的操作 (十一)

文章目录 1.ServiceManager#init()1.1 定时发送任务1.2 定时更新状态任务1.3 定时清除空service任务 1.ServiceManager#init() PostConstructpublic void init() {// 启动了一个定时任务:每60s当前Server会向其它Nacos Server发送一次本机注册表// 本机注册表是以各…

水声声波频率如何划分?水声功率放大器可将频率放大到20MHz吗?

水声声波频率如何划分?水声功率放大器可将频率放大到20MHz吗? 现如今我们可以在地球任意地区实现通信,是因为电磁波的作用。但是我们都知道海洋占了全球十分之七面积,电磁波在水下衰减速度太快,无法做到远距离传输&am…

linux内核内存管理slab

一、概述 linux内存管理核心是伙伴系统,slab,slub,slob是基于伙伴系统之上提供api,用于内核内存分配释放管理,适用于小内存(小于1页)分配与释放,当然大于1页…

Ext JS嵌套分组表格的实现

这里的嵌套分组表格指的是这样一种表格 表格的每一行可以展开下一层的Grid展开的嵌套表格是一个分组的表格显示的效果如下图: 这种显示的方式可以显示 3个层级的数据,比如这里的国家 、 将军等级、将军信息。 如果最外层再使用分组的表格, 则可以显示 4个层级的信息, 这种…

Ethercat学习-从站FOE固件更新(QT上位机)

文章目录 简介1、源码简介1、ec_FOEread2、ec_FOEwrite3、ec_FOEdefinehook 2、程序思路3、修改实现1、ecx_FOEwrite_gxf2、ecx_FOEread_gxf 4、其他5、结果6、源码连接 简介 FOE协议与下位机程序实现过程之前文章有提到,这里不做介绍了。这里主要介绍1、QT上位机通…

Java开发 - 让你少走弯路的Redis的主从复制

前言 大家举举手,让我看看还有多少人不会配置Redis的主从,主主这些的。故事发生在前段时间,小伙伴看到了博主的MySQL主从,就问博主有没有Redis的主从配置教程,本以为网上到处都是教程的博主打开网页一搜,好…

SpringCloud:分布式缓存之Redis主从

1.搭建主从架构 单节点Redis的并发能力是有上限的,要进一步提高Redis的并发能力,就需要搭建主从集群,实现读写分离。 2.主从数据同步原理 2.1.全量同步 主从第一次建立连接时,会执行全量同步,将master节点的所有数据…

VSCode+Git+TortoiseGit+Gitee

目录 一、VSCode 1、VSCode(visual studio code)下载安装 2、VSCode使用技巧和经验 2.1、设置字体: 2.2、快捷方式 2.3、安装插件 二、Git下载安装 三、TortoiseGit 1、TortoiseGit 简介 2、下载安装Git及Tortoisegit 3、Tortoisegit拉取gitee仓库到本地 4、Git拉取…

Linux 终端安装并使用tmux管理远程会话 tmux使用教程

文章目录 1 Tmux简介1.1 会话与窗口1.2 tmux功能 2 tmux安装2.1 源码安装2.2 命令行安装 3 基本用法(命令行)3.1 创建窗口3.2 分离会话 切换会话3.3 连接会话3.4 关闭会话并杀死进行对会话进行重命名 4 Tmux 的快捷键5 窗口操作与窗格操作参考 1 Tmux简介…

Ctfshow基础二刷(1)

前言: 前两天的信安给我整emo了,头一回打正经比赛,结果发现基础太差,代码审计烂得一踏糊涂。 寻思寻思,从头整一遍基础。又买了安恒出的新书。争取7号去吉林打省队选拔不给导儿丢脸吧呜呜 文件包含 web78: 这题一…

前端gojs中禁用指定节点的选中效果

代码思路 适用于禁用某些节点的选中状态,选中节点时判断该节点要不要禁用 点击节点的时候,判断节点要不要禁用选中效果 如果禁用,就在选中时,把选中节点重置为最近一次非禁用的节点 diagram.select:选中节点 diagram.…

INCA使用记录(一):INCA新建工程及观测标定

目录 1、概述 2、INCA实用方法 2.1、新建工程-添加A2L 2.2、添加工作空间 2.3、添加实验选项 ​2.4、添加硬件配置 2.5、添加工程elf 2.6、初始化工程 2.7、测量与观测参数 2.8、更换A2L之后如何更新工程 1、概述 INCA作为汽车行业常用的一种XCP处理工具,对…

javascript基础十一:JavaScript中执行上下文和执行栈是什么?

一、执行上下文 简单的来说,执行上下文是对Javascript代码执行环境的一种抽象概念,只要有Javascript代码运行,那么它就一定是运行在执行上下文中 执行上下文的类型分为三种: 全局执行上下文:只有一个,浏…

基于MPC的自适应巡航控制(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Kyligence x 明道云|低代码平台助力中小企业实现存量背景下的创新增长

国内大部分制造企业在经历疫情后,终于迎来了市场端的消费需求的恢复和增长,但如何在激烈的竞争中以更少投入,获得更高回报,在市场上获得一席生存之地,成为了悬在众多企业头上的达摩克利斯之剑。在市场野蛮生长阶段时&a…