Boundary Sensitive Network (BSN) 源码运行
Boundary Sensitive Network (BSN) 源码运行
BSN论文:https://arxiv.org/abs/1806.02964
BSN源码:https://github.com/wzmsltw/BSN-boundary-sensitive-network.pytorch
步骤:
(参考自 BSN 项目内 README.md
)
1. 下载源码
$ git clone https://github.com/wzmsltw/BSN-boundary-sensitive-network.pytorch.git
2. 下载Dataset
在复现时,直接应用了作者使用TSN提取后的视频特征,特征文件可以从作者提供的百度云链接下载。然后将特征文件放在 ./data/activitynet_feature_cuhk/
目录下。
如果使用百度云下载,按照作者提供的方法 cat zip_csv_mean_100.z* > csv_mean_100.zip
在Ubuntu系统下解压 csv_mean_100.zip
只能得到 3992 条数据。如果下载好全部的 6 个分卷压缩文件后,在Windows系统下直接解压 zip_csv_mean_100.zip
文件可以得到完整的 19228 条数据。
3. 配置环境
作者源码的运行环境为: Python 2
PyTorch 0.4.1
tensorboardX
配置环境的教程可以参考:
也可以在现有的 Python 3
PyTorch 1.x
环境中运行 ,需要对代码做一些修改。
- 遍历字典 keys() 前先转为list
TypeError: ‘dict_keys’ object does not support indexing
self.video_list = list(self.video_dict.keys())
lr_scheduler.step()
在optimizer.step()
之后使用
UserWarning: Detected call of
lr_scheduler.step()
beforeoptimizer.step()
. In PyTorch 1.1.0 and later, you should call them in the opposite order:optimizer.step()
beforelr_scheduler.step()
. Failure to do this will result in PyTorch skipping the first value of the learning rate schedule. See more details at https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate
for epoch in range(opt["tem_epoch"]):train_TEM(train_loader, model, optimizer, epoch, writer, opt)test_TEM(test_loader, model, epoch, writer, opt)scheduler.step()
- index 转为整数
TypeError: slice indices must be integers or None or have an index method
num_videos_per_thread = num_videos // opt["pgm_thread"]video_extend = video_scale // 4 + 10
4. 训练
$ sh bsn.sh # 开始训练# bsn.sh内容:python main.py --module TEM --mode trainpython main.py --module TEM --mode inferencepython main.py --module PGMpython main.py --module PEM --mode trainpython main.py --module PEM --mode inference --pem_batch_size 1python main.py --module Post_processingpython main.py --module Evaluation
$ tensorboard --dir=./runs # 查看训练过程
在执行训练脚本时出现 ImportError
:
ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22’ not found
解决方法可以参考 https://blog.csdn.net/jsk_learner/article/details/102468919
Boundary Sensitive Network (BSN) 源码运行相关推荐
- 时序动作检测《BSN: Boundary Sensitive Network for Temporal Action Proposal Generation》
时序动作检测SSAD<Single Shot Temporal Action Detection>_程大海的博客-CSDN博客_时序动作检测 时序动作检测<BSN: Boundary ...
- 《Android Studio开发实战 从零基础到App上线》源码运行问题解答
本书提供了所有章节的完整源码下载,自上市以来陆续收到读者的意见反馈,现将与源码有关的问题汇总归类如下,方便更多的朋友解决源码运行过程中发现的问题: 一.打开本书源码时,出现"Plugin w ...
- 博客园HTML源码运行特制js(原创自Zjmainstay)
canrun 测试运行HTML <html> <head><title>测试博客园HTML源码运行程序</title><meta http-equ ...
- 【Java 虚拟机原理】JDK 体系结构 | Java 源码运行原理 | Java 虚拟机内存
文章目录 一.JDK 体系结构 二.Java 源码运行原理 三.Java 虚拟机内存结构 一.JDK 体系结构 JDK 体系结构 : 下图所有的内容都是 JDK 体系中的组成元素 ; Java Lan ...
- Windows 源码运行 ThingsBoard
首先理一下ThingsBoard所需的环境: 1.jdk1.8 2.maven 3.PostgreSQL 4.nodejs && npm 5.redis 6.git 7.IDEA(源 ...
- 【TensorFlow】人脸识别OpenFace、Face-recognition、Insightface和FaceNet源码运行
比较人脸识别OpenFace.Face-recognition.Insightface: FaceNet源码运行 https://github.com/davidsandberg/facenet 1. ...
- win10下从源码运行Cura——环境配置(二次开发准备工作)
win10下从源码运行Cura(二次开发准备工作) win10下从源码运行Cura 配置过程(踩坑指南) win10下从源码运行Cura 本人小白一只,近来需要了解Cura,故自己摸爬滚打学习.网上对 ...
- ST-GCN源码运行完整版(含OpenPose编译安装)及常见问题
ST-GCN源码运行完整版(含OpenPose编译安装) -------本文仅为学习笔记,不做任何商业用途------- 下述相关工具包下载链接ST-GCN所需工具,提取码ze36 一.准备工作 1. ...
- airflow 源码调试之源码运行(一)
airflow 源码调试之源码运行(一) 开发环境 windows上的ubuntu16.0虚拟机 Python3.8 调试准备 Pycharm 配置远程连接主机 配置使用远程主机Python解释器 没 ...
最新文章
- 关于学习过程中走过的弯路
- 用字体在网页中画Icon图标
- Mybatis中 Dao接口和XML文件的SQL如何建立关联
- 云栖大会上,阿里巴巴重磅发布前端知识图谱!
- Exynos4412 Uboot 移植(二)—— Uboot 启动流程分析
- 【格局】一张图看懂全球人工智能竞争格局|湾区人工智能
- UVA11760 Brother Arif, Please feed us!【bitset】
- 计算机网络—数据链路层设备与两种域的区别
- 【合集】高等数学随堂笔记-苏德矿老师-部分内容汇总
- 如何用甘特图进行项目进度管理
- 一文盘点目前免费的云服务器
- matlab非齐次线性方程组的解,MATLAB求解非齐次线性方程组
- 苹果手机显示服务器返回数据异常,iOS 请求数据 返回-9843 的错误
- 微信的dat文件正确打开方式及问题处理
- C# 闹钟「定时提醒,整点报时」
- 大素数判定以及大整数分解
- 使用CRM客户关系管理系统的好处有哪些?
- 各种说明方法的例句_十种说明方法造句
- GitFlow使用笔记
- 【八月总结】回实验室第一个月