Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >赛事解析|乒乓球时序动作定位大赛亚军方案分享

赛事解析|乒乓球时序动作定位大赛亚军方案分享

作者头像
用户1386409
发布于 2022-09-01 02:00:50
发布于 2022-09-01 02:00:50
7080
举报
文章被收录于专栏:PaddlePaddlePaddlePaddle

比赛介绍

时序动作定位(提案生成)是计算机视觉和视频分析领域一个具有挑战性的任务。本次比赛不同于以往的ActivityNet-TAL,FineAction等视频时序检测动作定位比赛,采用了更精细的动作数据集–乒乓球转播画面,该数据集具有动作时间跨度短、分布密集等特点,给传统模型精确定位细粒度动作带来了很大挑战。

数据集介绍及处理

数据集介绍

本次比赛的数据集包含了19-21赛季兵乓球国际比赛(世界杯、世锦赛、亚锦赛,奥运会)和国内比赛(全运会,乒超联赛)中标准单机位高清转播画面的特征信息,共包含912条视频特征文件,每个视频时长在0~6分钟不等,特征维度为2048,以pkl格式保存。

数据处理方案

1.数据预处理

本赛题数据集中每条视频特征有不同的帧长(训练集帧长范围为464~8992,其中90%的序列帧长超过8704),对于如此长且长度不统一的视频序列,将其直接输入到模型中用于训练是不现实的。我们对最初的训练集按39:1的比例进行划分,得到新的训练集与验证集。当然,可以按照其他比例如9:1进行数据集划分,但是因为我们设计的验证方案(后续会提到)在数据量较多时耗费的时间更长,因此在验证可靠性与验证时间之间做出了取舍。

训练集

参照BMN[1]论文单元3.5中Training Data Construction部分所讲,我们也以一个滑动窗口对每一个长视频序列进行切分,其中步长为窗口长度的一半,同时要注意的是我们所保留的每一个视频切片必须包含至少一个完整提案。但是滑动窗口的长度如何选取呢?

首先我们对训练集相应的动作提案标签进行分析,总共有19054个提案标签(长度范围为1~831),分布如图1所示。我们设提案长度为D,当D=93时,已能够覆盖99.9%的动作提案。因此我们选择提案长度D为100,足以覆盖几乎全部的动作提案。当然为了减少训练推理时计算量,也可以选择更小的D,如D=50。正如冠军团队所说,PaddleVideo的anet_pipeline.py第50行出现错误,使得视频切片长度T与提案长度D不相等时便报错,故我们默认滑动窗口长度T与D相等,皆为100。当然,当T稍微更大时,比如T=200,可以使模型更好地建模长提案的上下文,但会带来更多的计算代价,因此T大小的选择可以在速度与性能之间进行权衡。

图1 训练集动作提案长度分布

验证集

为了在训练完模型之后对保存的模型进行筛选得到其中较好的模型,我们先后设计了两种验证方案。第一种方案是将验证集按照训练集的视频切分方式,即最后保留的切片都包含至少一个完整提案。这其实是与测试时不符的,即我们不应该事先知道哪些切片包含提案,而是应该对所有切片一视同仁。因此,第一种方案的验证分数远超A榜测试分数,但并不推荐。第二种方案则是模拟测试过程,即将验证集按照训练集的视频切分方式,但最后保留所有切片(每个切片不一定包含提案)。模型预测之后将每个视频对应的所有切片预测的提案进行汇总并进一步使用soft nms等方法筛选之后作为原未划分视频的预测提案信息,与标签对比计算AUC分数,作为模型筛选的凭证。

因此,我们对测试数据集的处理与验证集的第二种验证方案一致,即以一个滑动窗口对每一个长视频序列进行切分,其中步长为窗口长度T的一半,保留所有的切片。

2.提案后处理

如验证集第二种验证方案所讲,在选定的模型对测试集所有视频切片预测之后,我们将每个视频对应的所有切片预测的提案进行汇总并进一步使用soft nms等方法筛选之后作为原未划分视频的预测提案信息,并保存在submission.json中,打包之后即可提交A榜或B榜。

模型设计思路

这里围绕我们的最终模型进行讲述,思路演进可以见[2]。

模型整体架构

首先要提及的是我们的基础网络,即百度自研的BMN[1]模型,如图2所示。

图2 BMN模型整体架构

该模型由三个模块组成,基础模块(Base Module)作为主干网络处理输入的特征序列,TEM模块(Temporal Evaluation Module)预测每一个时序位置属于动作开始、动作结束的概率,PEM模块(Proposal Evaluation Module)生成BM置信度图。基于BMN[1]模型,我们对Base Module部分进行了修改,但继续沿用TEM模块和PEM模块,如图3所示。

图3 (a)我们最终模型的Base Module;

图3 (b)我们最终模型的整体结构

Base Module

为了使模型轻量,BMN[1]的基础模块使用的是两层的3x3分组卷积。由于分组之后,每通道信息只在各组中融合,而组与组之间无信息流通,会使得模型丢失一部分信息,降低模型容量。轻量化网络ShuffleNet采用Channel Shuffle操作使得信息跨组流通来解决这个问题,同样地,在这里我们也引入了Channel Shuffle操作。当然,也可以使用1x1卷积来解决,但会引入额外的参数和计算量。Channel Shuffle操作的代码如下:

为了扩大时域建模的感受野和建模更多的上下文信息,同时保证模型轻量,我们采用stride=2的3x3分组卷积对输入特征进行下采样。由于U-Net网络在图片分割领域的成功,正如BSN++[3]中所述,采用U-Net这种Encoder-Decoder结构,网络可以同时捕捉高层次的全局上下文和低层次的局部细节。这恰恰可以帮助模型对提案边界的预测和对预测提案置信度的评估。但是与BSN++[3]不同,我们将U-Net结构应用到了基础模块,且采用的不是U-Net++[5]。由图3(a)可以看到我们的基础模块的结构,在使用U-Net结构之前,由于输入特征序列的维度为2048,为了减少计算量,我们先利用两层卷积对输入特征序列进行降维,将降维后的输出输入到Encoder-Decoder结构中。为了尽可能地不引入过多的参数量和计算量,我们采取分组卷积和Channel Shuffle操作,且尽可能地使用较少的通道数,同时U-Net结构仅采用了5层。当然,也引入了额外的跳过连接,来使得U-Net结构的输入输出特征融合。

从骨骼点动作识别方法SGN[6]显式使用节点类型和帧索引来增强模型对节点语义信息的建模得到启发,我们引入时域位置编码,显式地将视频帧顺序加入到模型中,确定视频开始与结束的差异,增强模型对一帧的表达能力和对全局、局部上下文的建模能力,更好地确定动作提案的开始与结束边界。当然,位置编码的加入位置是有多种选择的。我们经过比较AUC分数与引入的代价,最终确定将其加入到降维模块与U-Net结构之间。当然当我们在TEM模块之前加入位置编码时,可以将视频序列时间正向、反向两次传入模型的TEM模块,利用类似集成的方式来提高提案开始点和结束点的预测精度,但考虑到两次可能增加一部分计算量,没有采用。不过仅仅引入时域位置编码就大大地提高了模型的预测性能,使得我们的A榜分数从48.216提升至48.828。

当然,在Base Module中也可以引入注意力机制,但测试发现SE模块没有带来性能提升,且引入了额外的计算量。

Temporal Evaluation Module

与BMN[1]模型一致,我们沿用了它的TEM模块结构,仅在第一个卷积的输入通道数有差别。当然,修改过的SE模块、non-local块等注意力机制也曾应用到两层卷积之间,但提升不大,且引入了额外的计算量,故最终方案没有采用。

SE模块代码如下:

Proposal Evaluation Module

PEM模块是BMN[1]模型推理时间占比最大的部分,从图[2]可以看到,PEM模块存在3D卷积和多个2D卷积,带来了巨大的计算耗费。当然我们最终方案沿用的是BMN[1]模型的PEM模块。这里只提及我们做过的一些尝试。首先,如何对3D卷积进行取代?可以采用(2D+1D)来取代3D卷积;也可以减小3D卷积的输出通道数,采用2D卷积与3D卷积两路混合来取代3D卷积;采用3D可分离卷积或分组卷积等。虽然产生了高效的模型,但不可避免地带来了性能下降,不过A榜AUC分数仍能达到48分以上。然后,对2D卷积进行处理,我们尝试2D分组卷积和Channel Shuffle操作来替代,引入U-Net结构等,但相对最终方案性能都略低,但相对高效。

总结与完善方向

由于比赛要求不超过两个模型,且提到除了模型精度以外模型数量和模型耗时指标的权重分数会高于其他指标,我们专注于模型本身的设计,在兼顾轻量的同时追求高性能,故TTA等集成方法均没有采用。由于是基于A榜分数改进模型,最终模型不可避免地对A榜测试集过拟合,使得B榜分数下降,因此提高模型泛化性也是未来要改进的一个方向。此外,模型压缩等手段我们均未采用,所以设计容量大但冗余的模型,再进行压缩得到轻量结构也是一个完善方向。当然,模型本身也有许多完善的方向,比如PEM模块的轻量化。参照冠军方案[7],训练数据处理与增强方案也可以进一步完善。

最后感谢百度官方提供算力与框架支持,感谢PaddleVideo套件提供强力支持。最后希望PaddleVideo可以把更多前沿的学术成果迁移到飞桨框架,越做越好!

参赛项目地址:

https://aistudio.baidu.com/aistudio/projectdetail/3548768

PaddleVideo地址:

https://github.com/PaddlePaddle/PaddleVideo

参考文献

[1] Tianwei Lin, Xiao Liu, Xin Li, Errui Ding, and Shilei Wen. BMN: Boundary-Matching Network for Temporal Action Proposal Generation[C].In Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019: 3889-3898.

[2] 翟濮成, 基于飞桨实现乒乓球时序动作定位大赛 :B榜第2名方案.

[3] Haisheng Su, Weihao Gan, Wei Wu, Yu Qiao, and Junjie Yan. BSN++: Complementary Boundary Regressor with Scale-Balanced Relation Modeling for Temporal Action Proposal Generation[C]. In Proceedings of the AAAI Conference on Artificial Intelligence. 2021, 35(3): 2602-2610.

[4] Ronneberger O, Fischer P, and Brox T. U-Net: Convolutional Networks for Biomedical Image Segmentation. In International Conference on Medical image computing and computer-assisted intervention. Springer, Cham, 2015: 234-241.

[5] Zongwei Zhou, Md Mahfuzur Rahman Siddiquee, Nima Tajbakhsh, and Jianming Liang. UNet++: A Nested U-Net Architecture for Medical Image Segmentation[M]. Deep learning in medical image analysis and multimodal learning for clinical decision support. Springer, Cham, 2018: 3-11.

[6] Pengfei Zhang, Cuiling Lan, Wenjun Zeng, Junliang Xing, Jianru Xue, and Nanning Zheng. Semantics-Guided Neural Networks for Efficient Skeleton-Based Human Action Recognition[C]. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 1112-1121.

[7] 来路生云烟,路里老咯,基于飞桨实现乒乓球时序动作定位大赛 :B榜第1名方案.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-04-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PaddlePaddle 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ActivityNet Challenge 2019 冠军模型BMN算法全解析
【飞桨开发者说】储泽栋,北京交通大学软件学院大四在读,曾获ICPC国际大学生程序设计竞赛亚洲区域赛铜牌,全国大学生服务外包大赛二等奖
用户1386409
2020/05/29
2K0
ActivityNet Challenge 2019 冠军模型BMN算法全解析
足球、篮球、花样滑冰、乒乓球四大运动的动作识别通用方案开源了
北京冬奥会即将开幕,全民健身如火如荼。2020年夏季奥运会有46项体育项目,2022年冬奥会有15项体育项目,丰富的项目涉及的姿势标准也各有区别。运动员如何科学地进行体育锻炼、准确矫正健身动作?教练员如何借助技术提供更智能化的训练和战术分析?体育视频行业如何高效定位精彩片段,分享更多精彩运动瞬间?“AI+体育”正在交出答卷。
用户1386409
2022/03/31
1K0
足球、篮球、花样滑冰、乒乓球四大运动的动作识别通用方案开源了
视频理解综述:动作识别、时序动作定位、视频Embedding(赠书)
机器之心发布 作者:张皓 本文将介绍视频理解中的三大基础领域:动作识别(Action Recognition)、时序动作定位(Temporal Action Localization)和视频 Embedding。 1.视频理解背景 根据中国互联网络信息中心(CNNIC)第 47 次《中国互联网络发展状况统计报告》,截至 2020 年 12 月,中国网民规模达到 9.89 亿人,其中网络视频(含短视频)用户规模达到 9.27 亿人,占网民整体的 93.7%,短视频用户规模为 8.73 亿人,占网民整体的 88
机器之心
2023/03/29
3.8K0
视频理解综述:动作识别、时序动作定位、视频Embedding(赠书)
百度飞桨半监督学习目标定位竞赛冠军方案分享
监督学习模型的优异性能要以大量标注数据作为支撑,可现实中获得数量可观的标注数据十分耗费人力物力。于是,半监督学习逐渐成为深度学习领域的热门研究方向,只需要少量标注数据就可以完成模型训练过程,更适用于现实场景中的各种任务。
用户1386409
2021/09/27
5790
CVPR大规模行为识别竞赛连续两年夺冠,上交大详细技术分享
【新智元导读】近日,视频行为理解领域的ImageNet竞赛——ActivityNet Challenge 2018在CVPR 会议上落下了帷幕。来自上海交通大学计算机视觉实验室的团队(自动化系研究生林天威、苏海昇,导师赵旭副教授),获得了未修剪视频中的时序动作定位任务的冠军,以及时序动作提名任务的亚军。本文将分享该团队在两项竞赛任务中所采用的算法思路和方案。
新智元
2018/07/31
1.1K0
CVPR大规模行为识别竞赛连续两年夺冠,上交大详细技术分享
Kaggle百万美元大赛优胜者:如何用CNN识别CT图像检测肺癌?
王小新 编译自GitHub 量子位 出品 | 公众号 QbitAI 今年,Kaggle网站举办了一场用肺部CT图像进行肺癌检测的比赛Data Science Bowl 2017,提供百万美元奖金池。美国国家癌症研究所为比赛提供了高分辨率的肺部CT图像,在比赛中,参赛者根据给定的一组病人肺部CT三维图像,预测癌症风险。 Julian de Wit和Daniel Hammack合作完成的解决方案获得了比赛的第二名。Wit最近写了一篇博客来介绍他们的方案。他们通过3D卷积神经网络,来构建结节探测器,预测患癌可
量子位
2018/03/30
2.7K2
Kaggle百万美元大赛优胜者:如何用CNN识别CT图像检测肺癌?
冠军方案解读 | nnUNet改进提升笔记
BraTS2021包括了来自2000名患者的多参数MRI扫描结果,其中1251人的图像提供了分割标签给参与者来开发算法,其中219人在验证阶段被用于公共排行榜,其余530个案例用于私人排行榜和参与者的最终排名。
集智书童公众号
2021/12/13
4.3K0
冠军方案解读 | nnUNet改进提升笔记
业界首个视频识别与定位工具集PaddleVideo重磅更新
PaddleVideo 在实际工业界可以形成很多具体应用,包括:视频精彩片段预测、关键镜头定位、视频剪辑等任务,例如定位 NBA 篮球赛视频中扣篮镜头,电视剧中的武打镜头等。如下图所示:
用户1386409
2019/07/23
7370
2020腾讯广告算法大赛方案分享(亚军)
本届算法大赛的题目来源于一个重要且有趣的问题。众所周知,像用户年龄和性别这样的人口统计学特征是各类推荐系统的重要输入特征,其中自然也包括了广告平台。这背后的假设是,用户对广告的偏好会随着其年龄和性别的不同而有所区别。许多行业的实践者已经多次验证了这一假设。然而,大多数验证所采用的方式都是以人口统计学属性作为输入来产生推荐结果,然后离线或者在线地对比用与不用这些输入的情况下的推荐性能。本届大赛的题目尝试从另一个方向来验证这个假设,即以用户在广告系统中的交互行为作为输入来预测用户的人口统计学属性。
Coggle数据科学
2020/08/17
1.7K0
KDD Cup 2020多模态召回比赛亚军方案与搜索业务应用
ACM SIGKDD(ACM SIGKDD Conference on Knowledge Discovery and Data Mining)是世界数据挖掘领域的顶级国际会议。今年,KDD Cup共设置四个赛道共五道赛题,涉及数据偏差问题(Debiasing)、多模态召回(Multimodalities Recall)、自动化图学习(AutoGraph)、对抗学习问题和强化学习问题。
美团技术团队
2020/09/28
1.1K0
轻量级文字识别技术创新大赛亚军方案分享
轻量级文字识别技术创新大赛是第二届CSIG图像图形技术挑战赛赛题之一,由百度公司承办。本赛题以文字识别为主题,要求参赛选手建立轻量级OCR模型,在兼顾准确率指标与模型大小的同时,重点考察选手的网络结构设计与训练调优能力,进一步推动中文场景文字识别算法与技术的突破。
用户1386409
2021/10/28
5940
轻量级文字识别技术创新大赛亚军方案分享
AI大赛方案分享 | 铝型材表面瑕疵识别 --top1方案
https://tianchi.aliyun.com/competition/entrance/231682/introduction
AI算法与图像处理
2019/09/03
2.2K0
AI大赛方案分享 | 铝型材表面瑕疵识别 --top1方案
十大视频场景化应用工具+五大视频领域冠军/顶会算法重磅开源!
随着短视频的快速发展以及安全管理的需求不断增多,视频领域的相关技术应用包括视频智能标签、智能教练、智能剪辑、智能安全管理、文本视频检索、视频精彩片段提取、视频智能封面正逐渐成为人们生活中的重要部分。
用户1386409
2022/03/31
1.3K0
十大视频场景化应用工具+五大视频领域冠军/顶会算法重磅开源!
天池算法大赛项目:基于大规模日志的故障诊断亚军方案!
第三届阿里云磐久智维算法大赛:本次比赛要求选手基于故障工单与系统日志数据构建多分类模型,要求能够快速高效的定位出故障类型。
Datawhale
2022/10/31
1.2K0
天池算法大赛项目:基于大规模日志的故障诊断亚军方案!
2019腾讯广告算法大赛冠军方案分享(附代码)
俞士纶(Philip S. Yu)教授的评价“冠军队伍已经在有意无意使用“广度学习”的方法”,评委讲到“这是最接近腾讯真实业务的方案”。(本文作者:王贺)
石晓文
2019/07/30
5.1K0
2019腾讯广告算法大赛冠军方案分享(附代码)
图片语义分割深度学习算法要点回顾
深度学习算法解决了数个难度级别逐渐上升的计算机视觉任务。在我先前的博文中,我已详细阐述了广为人知的两个任务:图像分类和目标检测。图像语义分割的难点在于将各个像素点分类到某一实例,再将各个实例(分类结果)与实体(大象,人,道路,天空等)一一对应。这任务即场景理解的一部分:深度学习模型怎样能更好地学习视觉内容的全局语境?
AI研习社
2018/12/29
1.2K0
降水临近预报_Weather4cast_RainAI阅读分享
Weather4cast - Super-Resolution Rain Movie Prediction under Spatio-Temporal Shifts
勤劳小王
2024/07/09
1640
降水临近预报_Weather4cast_RainAI阅读分享
CVPR 2021 | 腾讯优图20篇论文入选,含人脸识别、时序动作定位、视频动作分割等领域
计算机视觉世界三大顶会之一的CVPR 2021论文接收结果出炉!本次大会收到来自全球共7015篇有效投稿,最终有1663篇突出重围被录取,录用率约为23.7%。本次,腾讯优图实验室共有20篇论文被收录,其中Oral论文4篇,涵盖人脸识别、对抗攻击、时序动作定位、视频动作分割、无监督人脸质量评估等前沿领域。
优图实验室
2021/03/11
1.6K0
Upscale-A-Video: 实时视频超分辨率的时间一致扩散模型
真实世界场景中的视频超分辨率(VSR)是一项具有挑战性的任务,其目的是提高低质量视频的质量,从而产生高质量的结果。
用户1324186
2024/01/31
2.1K0
Upscale-A-Video: 实时视频超分辨率的时间一致扩散模型
​MMIT冠军方案 | 用于行为识别的时间交错网络,商汤公开视频理解代码库
本文将介绍一种用于行为识别的时间交错网络(TIN temporal interlacing network)。该网络想较当前SOTA的基础上,在实现6倍加速的同时,还多个评测数据集上获得了4%的提升。同时该方法作为主力方法,在2019年的ICCV Multi Moments In Time challenge中取得了冠军(Leaderboard)。我们还release了一个基于PyTorch的开源动作识别代码库X-Temporal,希望可以进一步推动动作识别社区的发展。
AI科技大本营
2020/04/15
1K1
​MMIT冠军方案 | 用于行为识别的时间交错网络,商汤公开视频理解代码库
推荐阅读
相关推荐
ActivityNet Challenge 2019 冠军模型BMN算法全解析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档