当前位置:   article > 正文

mmaction2实现slowfast DEMO的流程V1.0_mmaction2运行

mmaction2运行

前言

mmaction2是比较方便的开源框架,底下集成了非常多的模型。为实现视频行为识别,常见的模型是slowfast,而mmaction2正好涵盖这个模型。本文将介绍如何一步步实现mmaction2环境的搭建,并且用slowfast模型运行Demo。
主机运行环境:
Ubuntu22
RTX3060 1张
i5 处理器

本文将展开以下内容:
1、mmaction2环境配置
2、mmdetection环境配置
3、slowfast模型运行Demo
4、MMCV的问题

1.mmaction2环境配置

conda create -n open-mmlab202308 python=3.9 
conda activate open-mmlab202308
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip3 install openmim -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html
cd mmaction2
pip install -r requirements/build.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install -v -e .  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

以上采用与显卡驱动CUDA相匹配的pytorch版本,我安装了CUDA 11.8。

测试案例:

import torch
from mmaction.apis import init_recognizer, inference_recognizer
config_file = '/home/jack/mmaction2/configs/recognition/tsn/tsn_r50_video_inference_1x1x3_100e_kinetics400_rgb.py'
device = 'cuda:0' # 或 'cpu'
device = torch.device(device)
model = init_recognizer(config_file, device=device)
#进行演示视频的推理
inference_recognizer(model, 'demo/demo.mp4')
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

测试成功则出来以下内容:
在这里插入图片描述

2.mmdetection环境配置

要运行时空动作检测模型slowfast,需要安装mmdet。

pip install -U openmim
mim install mmengine
cd /home/jack/mmdetection-v2.28.2
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
python setup.py develop
  • 1
  • 2
  • 3
  • 4
  • 5

(如果上一步报关于mmtrack的错误,是网络原因,pip install git+https://github.com/open-mmlab/mmtracking#egg=mmtrack) @https://gitee.com/JackCai3000/mmtracking.git 码云替代
(如果上一步报关于error: Microsoft Visual C++ 14.0 or greater is required,默认安装VisualCppBuildToolsFull.exe)

3.slowfast模型运行Demo

python demo/demo_spatiotemporal_det.py --video demo/demo.mp4 --config configs/detection/ava/slowfast_temporal_max_focal_alpha3_gamma1_kinetics_pretrained_r50_8x8x1_cosine_10e_ava22_rgb.py --checkpoint checkpoints/slowfast_temporal_max_focal_alpha3_gamma1_kinetics_pretrained_r50_8x8x1_cosine_10e_ava22_rgb-345618cd.pth --det-config demo/faster_rcnn_r50_fpn_2x_coco.py --det-score-thr 0.9 --action-score-thr 0.5 --label-map tools/data/ava/label_map.txt --predict-stepsize 8 --output-stepsize 4 --output-fps 6 --out-filename demo/1.mp4
  • 1

以上个别参数不输入,则会采用默认值,具体要参看demo_spatiotemporal_det.py的源文件。
运行结果

4.MMCV的问题

MMCV是非常令人头疼的问题、MMaction2复现过程经常出现相关错误代码。出现这个问题的主要原因为MMaction2、MMdetection、MMtraking版本问题,需要基于最新MMaction所支持的MMCV版本,去下载MMdetection、MMtraking。
下图为查询MMaction MMCV版本的方法。类似的MMdetection、mmtraking都可以从__init__.py中查询到所支持的MMCV的版本。MMCV不是越新越好,目前的MMaction2最多也才支持到MMCV1.8.0。而最新版本MMdetection要求MMCV>2.0.0,即需要下载点击左上角进行版本选择老版本,例如mmdetection-v2.28.2进行下载到本地,到本地再进行环境安装。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
mmcv安装过程,出现Building wheel for mmcv后,这个状态需要等待非常长时间,大约20min,需要点耐心,别以为电脑坏了。

总结

这些环境搭建过程对于小白来说比较困难。需要提前掌握python的语言基础、了解终端的conda命令、GitHub网络无响应的处理方式、版本匹配性问题等。不过,按我的教程一步步操作应该就无问题了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/864022
推荐阅读
相关标签
  

闽ICP备14008679号