Skip to content

Commit 67741a5

Browse files
committed
first
0 parents  commit 67741a5

File tree

1 file changed

+138
-0
lines changed

1 file changed

+138
-0
lines changed

README.md

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
# BSN-boundary-sensitive-network
2+
3+
This repo holds the codes of paper: "BSN: Boundary Sensitive Network for Temporal Action Proposal Generation", which is accepted in ECCV 2018.
4+
5+
[[Arxiv Preprint]](http://arxiv.org/abs/1806.02964)
6+
7+
# Update
8+
9+
* 2018.12.12: Release Pytorch-version BSN
10+
11+
* 2018.07.09: Codes and feature of BSN
12+
13+
* 2018.07.02: Repository for BSN
14+
15+
16+
17+
# Contents
18+
19+
* [Paper Introduction](#paper-introduction)
20+
* [Other Info](#other-info)
21+
* [Prerequisites](#prerequisites)
22+
* [Code and Data Preparation](#Code_and_Data_Preparation)
23+
* [Training and Testing of BSN](#Training_and_Testing_of_BSN)
24+
25+
# Paper Introduction
26+
27+
<img src="./paper_pic/eccv_overview.jpg" width = "700" alt="image" align=center />
28+
29+
Temporal action proposal generation is an important yet challenging problem, since temporal proposals with rich action content are indispensable for analysing real-world videos with long duration and high proportion irrelevant content. This problem requires methods not only generating proposals with precise temporal boundaries, but also retrieving proposals to cover truth action instances with high recall and high overlap using relatively fewer proposals. To address these difficulties, we introduce an effective proposal generation method, named Boundary-Sensitive Network (BSN), which adopts “local to global” fashion. Locally, BSN first locates temporal boundaries with high probabilities, then directly combines these boundaries as proposals. Globally, with Boundary-Sensitive Proposal feature, BSN retrieves proposals by evaluating the confidence of whether a proposal contains an action within its region. We conduct experiments on two challenging datasets: ActivityNet-1.3 and THUMOS14, where BSN outperforms other state-of-the-art temporal action proposal generation methods with high recall and high temporal precision. Finally, further experiments demonstrate that by combining existing action classifiers, our method significantly improves the state-of-the-art temporal action detection performance.
30+
31+
32+
# Prerequisites
33+
34+
These code is implemented in Pytorch 0.4.1 + Python2. Thus please install Pytorch first.
35+
36+
# Code and Data Preparation
37+
38+
## Get the code
39+
40+
Clone this repo with git, please use:
41+
42+
```
43+
git clone https://github.com/wzmsltw/BSN-boundary-sensitive-network.git
44+
```
45+
46+
47+
48+
## Download Datasets
49+
50+
We support experiments with publicly available dataset ActivityNet 1.3 for temporal action proposal generation now. To download this dataset, please use [official ActivityNet downloader](https://github.com/activitynet/ActivityNet/tree/master/Crawler) to download videos from the YouTube.
51+
52+
To extract visual feature, we adopt TSN model pretrained on the training set of ActivityNet, which is the challenge solution of CUHK&ETH&SIAT team in ActivityNet challenge 2016. Please refer this repo [TSN-yjxiong](https://github.com/yjxiong/temporal-segment-networks) to extract frames and optical flow and refer this repo [anet2016-cuhk](https://github.com/yjxiong/anet2016-cuhk) to find pretrained TSN model.
53+
54+
For convenience of training and testing, we rescale the feature length of all videos to same length 100, and we provide the rescaled feature at here [Google Cloud](https://drive.google.com/file/d/1ISemndlSDS2FtqQOKL0t3Cjj9yk2yznF/view?usp=sharing) or [Baidu Yun](). If you download features using BaiduYun, please use `cat zip_csv_mean_100.z* > csv_mean_100.zip` before unzip. After download and unzip, please put `csv_mean_100` directory to `./data/activitynet_feature_cuhk/` .
55+
56+
# Training and Testing of BSN
57+
58+
All configurations of BSN are saved in opts.py, where you can modify training and model parameter.
59+
60+
61+
#### 1. Training of temporal evaluation module
62+
63+
64+
```
65+
python main.py --module TEM --mode train
66+
```
67+
68+
We also provide trained TEM model in `./checkpoint/`
69+
70+
#### 2. Testing of temporal evaluation module
71+
```
72+
python main.py --module TEM --mode inference
73+
```
74+
75+
#### 3. Proposals generation and BSP feature generation
76+
77+
```
78+
python main.py --module PGM
79+
```
80+
81+
#### 4. Training of proposal evaluation module
82+
83+
```
84+
python main.py --module PEM --mode train
85+
```
86+
87+
We also provide trained PEM model in `./checkpoint` .
88+
89+
#### 6. Testing of proposal evaluation module
90+
91+
```
92+
python main.py --module PEM --mode inference
93+
```
94+
95+
#### 7. Post processing and generate final results
96+
97+
```
98+
python main.py --module Post_processing
99+
```
100+
101+
#### 8. Eval the performance of proposals
102+
103+
```
104+
python main.py --module Evaluation
105+
```
106+
107+
You can also simply run all above commands using:
108+
109+
```
110+
sh bsn.sh
111+
```
112+
113+
# Other Info
114+
115+
## Citation
116+
117+
118+
Please cite the following paper if you feel SSN useful to your research
119+
120+
```
121+
@inproceedings{BSN2018arXiv,
122+
author = {Tianwei Lin and
123+
Xu Zhao and
124+
Haisheng Su and
125+
Chongjing Wang and
126+
Ming Yang},
127+
title = {BSN: Boundary Sensitive Network for Temporal Action Proposal Generation},
128+
booktitle = {European Conference on Computer Vision},
129+
year = {2018},
130+
}
131+
```
132+
133+
134+
## Contact
135+
For any question, please file an issue or contact
136+
```
137+
Tianwei Lin: [email protected]
138+
```

0 commit comments

Comments
 (0)