ICCV 2021 |首届 SoMoF 人体序列预测比赛冠军方案分享

简介: ICCV 2021 |首届 SoMoF 人体序列预测比赛冠军方案分享

111.gif

近日阿里巴巴淘系技术多媒体算法团队的同学,以大幅领先第二名的成绩获得了在 ICCV2021 上举办的第一届室外场景下的人体轨迹预测比赛( SoMoF


Challenge )的冠军,同时比赛论文被该 Workshop 接收。


作为计算机视觉领域的三大顶级会议之一, ICCV 是每年学界的重要事件。ICCV 全称为 International Conference on Computer Vision ,中文为国际计算机视觉大会。这个会议是由 IEEE 主办的全球最高级别学术会议,每两年在世界范围内召开一次,在业内具有极高的评价。而由斯坦福大学主办的第一届 SoMoF Challenge 以人体轨迹预测这一既有广阔应用前景又极具挑战的任务为主题,吸引了来自众多高校和工业界的参赛者。


本次Challenge中我们通过改进图卷积网络,应用轨迹信息作为输入,通过设计新颖的训练和数据处理策略,获得了2D数据集PoseTrack和3D数据集3DPW两个子任务上的冠军,并且在两个数据集上分别领先第二名5%和13%。


比赛地址:https://somof.stanford.edu/workshops/iccv21

论文地址:https://openaccess.thecvf.com/content/ICCV2021W/SoMoF/papers/Wang_Simple_Baseline_for_Single_Human_Motion_Forecasting_ICCVW_2021_paper.pdf


背景


随着计算机视觉研究的不断深入,许多识别类任务,如动作认别,姿态识别取得了重大的进展。为了进一步拓宽计算机视觉的应用场景,越来越多的研究者将注意力从“识别”类任务转移到“预测”类任务上。人体动作序列预测就是其中一个颇受关注的方向。

概括来说,动作序列预测要做的是,根据给定图像序列中的人体关节点的2D或3D坐标,预测接下来若干帧图像序列中的关节点的位置。值得一提的是,接下来若干帧的图像信息是不可见的。1.gif动作序列预测是一个很有应用前景,也极具挑战的研究方向。它的应用场景广泛,包括自动驾驶,人机交互,安防,AI健身教练等。举个例子,如果一辆行进中的自动驾驶汽车,通过观察斑马线上路人过马路时的画面,能够预测接下来他们的行动轨迹,那就能及时停车或者前进,减小交通事故发生的概率

2.jpg

同时这还是一个很有挑战的方向。由于室外场景的复杂性,人们自身行动的随意性,周围人和物的多变性,以及预测类任务本身自带的不确定性,都会增加未来时刻动作序列预测的难度。


本次比赛中,我们通过采用在解决手淘场景下的人体/人手姿态估计时提炼出的技术积累,结合动作序列任务本身的特性,设计了新的网络结构,采用了新颖的训练和数据处理策略,在此次比赛中获得了第一名的结果,具体方法将在下文介绍。



网络结构


我们的网络输入只有关节点的坐标序列。对于实验所用到的两个数据集来说,PoseTrack上,使用的是14个关节点的2D图像坐标,在3DPW数据集上,使用的是24个关节点的3D世界坐标。



实验中我们尝试增加了图像信息,效果都有所下降,原因可能是关节点本身已经是图像信息对关节点预测最有效最精简的信息,额外的图像信息分散了网络的关注点,反倒不利于网络的学习。


网络结构我们采用的是GCN结构。在输入的关节点序列进网络前,先经过一个DCT变换,将时域信息转换到频域。在GCN的最后,经过iDCT变换,将频域信息转换回到时域中,即为预测的结果。


GCN相比RNN/LSTM的优势是,所有帧的预测结果可以一次预测出来,不需要一帧一帧的连续多帧预测。

3.jpg


相关文章
|
域名解析 缓存 网络协议
Let's Encrypt 配置 HTTPS 免费泛域名证书
Let's Encrypt 配置 HTTPS 免费泛域名证书
3091 0
|
存储 数据库 Docker
如何在Docker中使用Open vSwitch
本文讲的是如何在Docker中使用Open vSwitch,【编者的话】Open vSwitch是一个虚拟交换软件,主要用于虚拟机VM环境,提供网络的虚拟化。本篇文档重点介绍如何在Docker中使用Open vSwitch。
3608 0
|
Web App开发 弹性计算 Linux
CentOS 8迁移Anolis OS 8
Anolis OS 8在做出差异性开发同时,在生态上和依赖管理上保持跟CentOS 8.x兼容,本文为您介绍如何通过AOMS迁移工具实现CentOS 8.x到Anolis OS 8的迁移。
|
Web App开发 前端开发 JavaScript
跨浏览器兼容性指南:解决常见的前端兼容性问题
跨浏览器兼容性是前端开发中至关重要的概念。由于不同浏览器(如Chrome、Firefox、Safari等)在实现Web标准方面存在差异,网页在不同浏览器上可能会呈现不一致的结果。因此,确保网页在各种浏览器上都能正确显示和运行,是提供良好用户体验、扩大受众范围以及增强网站可访问性的关键。
|
缓存 程序员 开发工具
《游戏测试》git培训(下)--项目实战 2
《游戏测试》git培训(下)--项目实战
|
SQL 应用服务中间件 网络安全
宝塔面板防火墙安装和使用教程详解
宝塔面板防火墙安装和使用教程详解
2533 0
宝塔面板防火墙安装和使用教程详解
|
弹性计算
阿里云云服务器ECS的初步使用和体验
关于初次了解到阿里云云服务器的过程和使用体验,在使用和学习中了解到的有关云服务器的知识,以及使用过程中遇到的问题。
Python语言学习之字母A开头函数使用集锦:assert用法之详细攻略
Python语言学习之字母A开头函数使用集锦:assert用法之详细攻略
|
JavaScript 前端开发 Java
新手应该了解的Cookie知识!
  新手应该了解的Cookie知识!   一、Cookie的出现   浏览器和服务器之间的通信少不了HTTP协议,但是因为HTTP协议是无状态的,所以服务器并不知道上一次浏览器做了什么样的操作,这样严重阻碍了交互式Web应用程序的实现。
4505 1
|
JSON 数据格式
net core 小坑杂记之配置文件读取 02 (控制器里读)
    上次更新博客的时候提到了如何在EF的上下文里读取配置,这次介绍一下在控制器里如何读取。     先说一种简单易懂的:          首先以键值对的形式在appsettings里添加一条配置信息,接着Startup里注入配置接口:          做完如上操作以后,我们就可以在控制器里去完成读取我们的配置了:            页面上使用viewbag就不截图了,按图操作配置妥妥的可以取出来。
1052 0