SlowFast神经网络!github克隆到运行成功全过程

时间:2024-05-18 17:16:49

SlowFast神经网络!github克隆到运行成功全过程

一:SlowFast是什么?

上面的gif图片就是用SlowFast跑出来的视频,SlowFast是怎样让一个视频从无到标注出每个人物此时此刻在做什么,是在说话还是在听、是站着还是坐着、是走还是在跑,SlowFast是怎么运作的呢。

首先我们来介绍SlowFast

1.1怎么通俗的讲清楚什么是Slowfast

超厂长就不给大家科普什么是神经网络!什么是视频三维数据!视频理解和图片理解的区别,相信看这篇文章的小伙伴,大多数都是拿slowfast来跑项目,多多少少已经知道上面的知识点,那让我们用三点来理解SlowFast

  • 视频理解:指的是对视频片段进行分析并进行解读
  • Slow:英文意思是“慢”。慢(Slow)通道用于捕获语义信息。识别不怎么变化或者缓慢变化的区域
  • Fast:英文意思是“快”。快(Fast)通道用于捕获运动信息。正在发生变化的动态区域

这三个看完,我们理解Slowfast就很好的理解了。SlowFast就是对一个视频片段应用两个平行的卷积神经网络(CNN),一个慢(Slow)通道,一个快(Fast)通道。

比如飞机起飞:包含相对静态的机场和一个在场景中快速移动的动态物体(飞机)

SlowFast使用了一个慢速高分辨率CNN(Slow通道)来分析视频中的静态内容,同时使用一个快速低分辨率CNN(Fast通道)来分析视频中的动态内容。和双流(two-stream)网络的思路类似。

SlowFast神经网络!github克隆到运行成功全过程

上面的就是Slowfast对一个视频片段来进行分析并进行解读的大致流程

1.2 SlowFast下载

github地址:https://github.com/facebookresearch/SlowFast

二:SlowFast的文件目录

我们在运行SlowFast的时候,我们先对SlowFast文件目录进行解读,说清楚SlowFast每个文件是做什么的

SlowFast神经网络!github克隆到运行成功全过程

1.configs文件

SlowFast神经网络!github克隆到运行成功全过程

通俗的讲就是一个配置文件,SlowFast为什么比其他的视频理解的开源项目是最火的,就是因为他是基于配置文件来运行的,我们运行的时候只需要更改配置文件的信息就可以了。重要!

2.demo文件

这里放的是SlowFast开发者运行时候用到的配置文件的demo。和运行成功的一些截图,重要!

3.projects文件

增加对slowfast核心的一些解读。不重要!

4.slowfast文件

SlowFast核心代码。重要!

5.tools文件

SlowFast的工具文件。包括训练模型的运行文件、测试的运行文件和运行demo的运行文件,但是前面我已经说了,SlowFast主要是基于配置文件运行的,所以只用记得一个文件就行了

SlowFast神经网络!github克隆到运行成功全过程

就是下面的run_net.py文件就可以,以后都是用这个文件来训练或者测试

6和7介绍文件

6.7都不重要,主要是介绍Slowfast一些官方话

8.使用PySlowFast的官方运行手册

如果大家能按照slowfast手册来进行安装和运行,那大家就不用看后面的内容了。超厂长也是严格按照slowfast的手册来运行,写这篇文章的意图是介绍我在这之中遇到的坑和一些问题

9.SlowFast需要安装哪些软件的手册

就是一个介绍需要安装哪些软件的手册

10和11.不用看

不重要,不用看

12.PySlowFast官方训练好的数据集下载地址

里面介绍了SlowFast已经训练好的数据集的地址供大家下载

13.14.15不用看

不重要不用看

16.介绍SlowFast的可视化工具


三:总结

今天就先写到这里,明天更新怎么跑起来,在这之前说明白几个点,不然明天写了又忘了我说了没有

明天的内容主要是围绕上面文件的1、2、4、8、9来进行改动和阅读。这几个文件是核心,其他的可看可不看

在这里提醒大家一句,SlowFast的代码目前阶段还是没发现很大的bug和缺陷,所以大家千万在运行SlowFast项目的时候怀疑代码文件,因为我也怀疑过,修改了很久发现还是自己环境配置的问题。这也是一个大坑