视频分类模型汇总

发布时间:2026/7/28 2:14:54

视频分类模型汇总 视频分类模型架构CNNLSTM即CNN抽取关键帧特征LSTM进行时序建模具体来说就是先抽取视频中的关键帧得到K张图然后将这K张图输入CNN网络得到图片特征。再将这些特征全部输入LSTM网络进行各个时间戳上图片特征的融合得到整个视频的融合特征。最后将LSTM最终时刻的特征接一个FC层得到分类结果。3D Conv将视频帧分割好的一个个的视频段每段含有K张图片直接输入3D 的CNN网络进行时空学习。此时卷积核必须是3维的比如每个卷积核都是t×3×3加入了时间维度网络不光学习空间信息还需要学习时序信息运动信息。最后3D Conv输出的特征也是接一个全连接层得到分类结果。因为多了一个维度模型的参数量很大不太好训练而且效果也不好。Two streamlate fusion如果不想用LSTM进行时序建模也不想用3D网络直接进行时空学习那么还可以使用光流来得到时序信息运动信息。双流网络整体还是2D网络结构但额外引入一个时间流网络。通过巧妙的利用光流来提供的物体运动信息而不用神经网络自己去隐式地学习运动特征大大提高了模型的性能。3D Fused Two streamearly fusion:双流网络的改进。作者认为双流网络中两个网络的输出只是进行简单的加权平均来处理效果还不够。所以将其替换为一个较小的3D网络进一步融合特征。实验证明这种先进行2D卷积网络训练再进行3D卷积网络融合的效果更好。Two stream 3D ConvNetI3D是3D网络和双流网络的结合。因为单纯的使用3D网络模型效果还是不好加上光流之后可以大大提高模型性能。所以可以说I3DTwo stream3D Conv。另外两个分支网络都已经是3D网络了也就不需要另外加一个3D网络进行融合直接加权平均得到最终的结果就行。1 CNN架构1.1Two-Stream加入了光流信息Spatio Stream空间流卷积网络输入是单个帧画面主要学习场景信息。因为是处理静态图片所以可以使用预训练的模型来做更容易优化temporal stream 时间流卷积网络光流网络输入是光流图像通过多帧画面的光流位移来获取画面中物体的运动信息Two stream LSTMCVPR 2015从双流网络抽取特征之后直接做softmax分类改为抽取特征后进行LSTM融合再做softmax分类Two-StreamEarly FusionCVPR 2016TSN(Temporal Segment Networks)之前的双流网络输入是单帧或几帧视频帧和10帧光流图像大概只有半秒只能处理很短的视频段TSN相比之前可以处理更长的视频1.将长视频分成K段在每一段里随机抽取一帧当做RGB图像输入后续连续的10帧计算光流图像作为光流输入。分别通过K个双流网络得到2K组logits一组有时空两个logits这些双流网络共享参数。2.将K个空间流网络输出特征做一次融合Segmental Consensus达成共识时间流输出特征也如此操作。融合方式有很多种取平均、3.最后将两个融合特征做一次late fusion加权平均得到最终结果。1.2 3D convC3D14年https://arxiv.org/pdf/1412.0767v4统一使用使用3×3×3卷积3D卷积5个卷积层和5个池化层两个全连接层一个softmax预测动作池化层内核大小为2 × 2 × 2优点:可以同时提取时空信息缺点参数量大难训练所以一般3D网络的深度都较浅但这样影响了模型的表达能力而且不能有效的把2D网络的预训练权重迁移到3D网络。I3D(Two-Stream Inflating 3D ConvNet17年google)(Two-Stream3D ConvNet)其它网络结构都不变就是把2D的卷积核加一维变为3DK*K — K*K*K2D池化改为3D池化,I3D使用的是Inception-V1进行3D扩张。 不用再重新设计3D网络Non-local Neural NetworksCVPR 2018将non-localself attention融入I3D和其他模型中增加长距离建模能力便于处理长视频。non-local block如下1.3因子分解R(21)D(CVPR2018)、S3D为了缓解3D卷积的负担提出了Factorization的思想R(21)D将3D卷积 N × t × d × d 拆分为 N × 1 × d × d 的 2D 空间卷积和 M ×t × 1 × 1 的 1D 时间卷积S3DECCV2018只在高层或者底层使用只在高层或者底层使用3Dconv把3Dconv拆分成空间时间卷积如图(c),(a)为inception模块b)为3D inception模块加入时空门机制设计了一个新的模型结构称为S3D-G1.4 X3D和SlowfastX3D:在帧率、持续时间、分辨率、网络深度、宽度和瓶颈宽度六个维度上对X2D进行联合扩展这些扩展操作提升了X2D的性能神经网络搜索SlowfastSlow路径以低帧率处理空间细节Fast路径以高帧率但通道数极少捕捉运动信息。这种非对称设计显著降低了计算量但是SlowFast的双流架构需要同时维护两个不同分辨率和帧率的输入流增加了数据预处理和内存管理的复杂性。时序移位模块TSM2D CNN 时间偏移(MobileNetV3 /Resnet18 TSM效率高)https://github.com/mit-han-lab/temporal-shift-module对于离线视频移动通道的前1/4特征图其中1/8移动到前一帧另外1/8移动到后一帧对于在线视频由于没办法获得未来帧所以单向移动特征图将前一帧前1/8特征图移动到当前帧TSM模块比较灵活可以轻松插入各种骨干网带来效率的提升固定偏移范围只能看到 ±1 帧难以建模长时依赖1.5 MoViNets:流式缓冲网络https://github.com/Atze00/MoViNet-pytorch传统的视频分类模型通常需要攒够一个视频片段再一次性输入网络导致Peak Memory Usage显存占用峰值大而且攒帧时会有显著延迟。MoViNetsMobile Video Networks 通过引入Stream Buffers流式缓冲 解决这一问题使用Causal Conv因果卷积如下图并配备了状态缓冲区。每处理一帧网络不仅输出当前的特征还更新缓冲区中的状态供下一帧使用尽管是逐帧处理但通过深层的缓冲传递MoViNets依然能够拥有覆盖整个视频序列的有效时序感受野与 X3D相同的精度同时减少80%的FLOPs和65%的内存FlashLightNet (2025)2D CNNLSTM交通灯检测使用 YOLOv10n 定位帧中的交通灯输出精确边界框ROI空间特征提取通过 ResNet-18 对 ROI 区域进行特征提取生成高维空间特征向量时序分类将序列帧的特征向量输入 LSTM 网络捕捉 “亮 - 灭” 时序模式分类为红、绿、黄、闪红、闪黄五种状态。2.Transformer架构2.1 Timesformer分割时空注意力(类似X3D和VIT的嵌入方式一样但采用T×H×WTransformer的训练非常消耗资源为了缓解这一问题TimeSformer通过两个方式来减少计算量1)将视频拆解为不相交的图像块序列的子集2)使用一种独特的自注意力方式来避免所有的图像块序列之间进行复杂计算。文中把这项技术叫做分开的时空注意力机制(divided space-time attention)。在时间attention中每个图像块仅和其余帧在对应位置提取出的图像块进行attention。在空间attention中这个图像块仅和同一帧的提取出的图像块进行attention。作者还发现分开的时空注意力机制效果要好于共同使用的时空注意力机制。通过对输入图像进行分块论文中一共研究了五种不同的注意力机制空间注意力机制(S)只取同一帧内的图像块进行自注意力机制时空共同注意力机制(ST)取所有帧中的所有图像块进行注意力机制分开的时空注意力机制(TS)先对同一帧中的所有图像块进行自注意力机制然后对不同帧中对应位置的图像块进行注意力机制稀疏局部全局注意力机制(LG)先利用所有帧中相令的H/2和W/2的图像块计算局部的注意力然后在空间上使用2个图像块的步长在整个序列中计算自注意力机制这个可以看做全局的时空注意力更快的近似轴向的注意力机制(TWH)先在时间维度上进行自注意力机制然后在纵坐标相同的图像块上进行自注意力机制最后在横坐标相同的图像块上进行自注意力机制与slowfast架构相似算力下精度更高2.2 VIVIT(Video Vision Transformers):强调embed方式两种embed方式1.每张和vit一样最后conact因子编码器Factorised Encoder第 1 阶段在空间维度上做自注意力帧内空间 self-attention输出空间特征。第 2 阶段在时间维度上做自注意力对相同空间位置的 tubelet 做 time-only attention。2.tuble embedding:采用t * h * w的tubes最后conact联合编码器Joint Encoder把所有 tubelet token 视作一个长序列做全局时空自注意力。算法上与 TimeSformer 的 ST 注意力类似计算量较大但理论上表达能力更强。2.3 Video Swin Transformer将图像 Swin Transformer 的“移位窗口自注意力 层级结构”扩展到 3D时间空间用局部偏置降低计算复杂度同时保持全局感受野的能力2.4 SVFormer:半监督学习SSL2.5VideoMAE V2自监督学习

相关新闻