TSN(Temporal Segment Networks)代码实验

本文详细介绍Temporal Segment Networks (TSN),一种用于视频行为识别的技术,在ECCV2016上提出。文中分享了TSN的配置步骤、常见问题解决办法,并报告了在UCF101数据集上的实验结果。
部署运行你感兴趣的模型镜像

前言:Temporal Segment Networks (TSN)是在 ECCV 2016 上提出的,作者是Limin Wang, Yuanjun Xiong, Zhe Wang, Yu Qiao, Dahua Lin, Xiaoou Tang, and Luc Van Gool,是一个用于视频中人的行为识别的框架。论文中数据集表现:HMDB51(69.4%)、UCF101(94.2%),在 AcitivityNet challenge 2016 “untrimmed video classification”项目上取得了第一名。

TSN 项目主页:http://yjxiong.me/others/tsn/
TSN 代码 & 模型:https://github.com/yjxiong/temporal-segment-networks


配置问题及解决方案

  1. 运行 build_all.sh 文件,首先输出报错“E: Unable to correct problems, you have held broken packages”
    解决方案:

    apt-get upgrade
    apt-get update

    参考自:解决 E: Unable to correct problems, you have held broken packages. 问题 - Wasdns - 博客园

  2. 运行 build_all.sh 文件编译 caffe 时出现“This file was generated by a newer version of protoc which is incompatible with your Protocol Buffer headers. Please update your headers. fatal error: google/protobuf/arena.h: 没有那个文件或目录”
    解决方案:
    降低 protobuf 版本到 2.6.1,若计算机中有高版本,需要先卸载,再手动安装:

    wget https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz --no-check-certificate #下载
    tar -zxvf protobuf-2.6.1.tar.gz # 解压
    sudo apt-get install build-essential # 不装会报错
    cd protobuf-2.6.1/ # 进入目录
    ./configure # 配置安装文件
    make # 编译
    make check # 检测编译安装的环境
    sudo make install # 安装
    protoc --version #检查是否安装成功

    参考自:
    Ubuntu14.04下安装protobuf 2.6.1 - 优快云博客
    编译pycaffe错误 –#error This file was generated by a newer version of protoc - 优快云博客

  3. 测试时遇到:“ImportError: No module named _caffe”,但之前运行 build_all.sh 文件已经提示“Caffe Built.”
    解决方案:
    build caffe 时需要 boost version ≥ 1.55,但对于一些 Ubuntu 环境,需要先卸载 libboost-all-dev:

    sudo apt-get remove libboost-all-dev

    再安装 libboost1.55-all-dev:

    sudo apt-get install libboost1.55-all-dev

    参考自:
    No module named _caffe · Issue #66 · yjxiong/temporal-segment-networks

  4. 测试时遇到:“ImportError: No module named google.protobuf.internal”
    解决方案:
    由于计算机中含有多个 Python 环境,可能出现运行时环境未装 protobuf 的情况,故需要确保运行环境下已安装好 protobuf 2.6.1

    pip install protobuf==2.6.1

    参考自:
    python - Importing caffe results in ImportError: “No module named google.protobuf.internal” (import enum_type_wrapper) - Stack Overflow

  5. 测试时遇到:“KeyError: ‘v_ApplyEyeMakeup_g01_c01’”
    解决方案:
    检查测试语句中 FRAME_PATH 路径
    参考自:
    Get a Key error when testing accuracy on UCF101 · Issue #102 · yjxiong/temporal-segment-networks

实验结果

在UCF101数据集split1上对TSN进行测试。

仅RGB图像

运行命令:

python tools/eval_net.py ucf101 1 rgb output/optical_flow/ models/ucf101/tsn_bn_inception_rgb_deploy.prototxt models/ucf101_split_1_tsn_rgb_reference_bn_inception.caffemodel --num_worker 1 --save_scores output/score_file.txt

结果:86.02%


仅RGB结果

仅光流

运行命令:

python tools/eval_net.py ucf101 1 flow output/optical_flow/ models/ucf101/tsn_bn_inception_flow_deploy.prototxt models/ucf101_split_1_tsn_flow_reference_bn_inception.caffemodel --num_worker 1 --save_scores output/flow_score_file

结果:87.66%


仅optical flow结果

融合RGB和光流结果

运行命令:

python tools/eval_scores.py output/rgb_score_file.npz output/flow_score_file.npz --score_weights 1 1.5

结果:93.51%


融合RGB和光流结果

您可能感兴趣的与本文相关的镜像

Wan2.2-T2V-A5B

Wan2.2-T2V-A5B

文生视频
Wan2.2

Wan2.2是由通义万相开源高效文本到视频生成模型,是有​50亿参数的轻量级视频生成模型,专为快速内容创作优化。支持480P视频生成,具备优秀的时序连贯性和运动推理能力

评论 52
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值