人工智能竞赛-行为识别参赛总结

参赛背景

3周前,接到一项任务是准备视频行为识别模型并参赛。
竞赛数据集来自互联网视频,总量不少于1万段,其中包含共6类,每类不少于200段的特定行为视频。每段特定行为视频至少包含一段起止位置完整的某类特定行为,并包含与特定行为无关的背景视频内容,视频的平均帧率为24FPS,时长区间为20s-200s之间。

赛题分析

该赛题是典型的视频行为识别任务,特点在于需要同时分析视频图像内容与视频图像变化信息,主要的方案有传统光流分析、骨架跟踪、卷积识别、序列预测等。在此基础上还衍生了行为检测的方案,此处不提。

参考任务概述及多篇论文后,整理方案树如下

  • 传统方案:iDT
  • 骨架跟踪:OpenPose、stgcn、lstm
  • 卷积识别:双流法、TSN、C3D、双流I3D、多尺度卷积
  • 序列预测:骨架序列、双流序列
  • 行为检测:CDC、R-C3D

在这里插入图片描述

方案选取

经过分析,当前识别效果较好且经过验证的网络模型有 tsn、i3d、slowfast。经过验证,i3d所需求的光流提取无法在比赛期间完成,因此选择tsn网络参赛。
tsn网络基于双流卷积,论文水平为UCF-94.2%,HMDB-69.4%
该网络的处理特点如下:

  1. 提取RGBdifferencewarpedOpticalFlowField两种特征,同图像流、光流一起输入到网络中
  2. 使用BN-Inception作为特征提取网络
  3. 通过跨模态预训练、正则化、数据增强等操作,提高模型质量

参赛要点

数据收集

由于赛事组织者没有提供足够的训练样本,视频数据需要自己完成收集。
这里选择了某大型视频网站,选取符合类别的短视频进行下载。
由于网络视频具有个人色彩,需要对下载视频进行分段,筛除与主题无关片段。
然后需要对分段视频进行标注及数据均衡的操作,训练集数据比例为5:1:1:1:1:1:1

工程组织

这里选择了百度深度学习paddle paddle,其提供了较便捷的训练、推断api,地址如下:
https://www.paddlepaddle.org.cn/modelbasedetail/tsn
https://github.com/PaddlePaddle/models/blob/develop/PaddleCV/video/models/tsn/README.md
工程部署上面,使用了docker容器环境,Ubuntu16.04,Cuda10.1,python 3.6,paddle-gpu 1.8.4

参赛总结

  1. 一定要找到合适的训练集样本比例,这个需要反复训练并测试,使得最终结果比例达成理想结果
  2. 视频分段并筛选是损失收敛的重要前提,由于tsn分段的特性,可以确保分段训练得出的模型在原始视频上有较好效果
  3. 视频预处理上面需要提前做好规划,有些模型视频信息提取环节耗时太长,无法满足快速训练、推测的要求
  4. 要对所选模型的训练时间、推测时间有明确的认知,避免出现由于时间规划失误带来的结果损失
  5. 服务器环境要提前熟悉,比赛开始后需要服务器环境与本地同步推进,这样可以更有效的利用比赛时间
  6. 比赛还是要摆正心态,避免由于慌乱出现操作失误,要学会笑着去面对竞赛,并在竞赛中不断学习、积累
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值