All Projects → aistairc → seq2seq_temporal_attention

aistairc / seq2seq_temporal_attention

Licence: MIT License
Generating Video Description using Sequence-to-sequence Model with Temporal Attention

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to seq2seq temporal attention

towhee
Towhee is a framework that is dedicated to making neural data processing pipelines simple and fast.
Stars: ✭ 821 (+2636.67%)
Mutual labels:  video-processing
Acid.Cam.v2.OSX
Acid Cam v2 for macOS distorts video to create art.
Stars: ✭ 91 (+203.33%)
Mutual labels:  video-processing
glip-lib
An OpenGL Image Processing Library (in C++/GLSL).
Stars: ✭ 14 (-53.33%)
Mutual labels:  video-processing
Smart-Traffic-Signals-in-India-using-Deep-Reinforcement-Learning-and-Advanced-Computer-Vision
We have used Deep Reinforcement Learning and Advanced Computer Vision techniques to for the creation of Smart Traffic Signals for Indian Roads. We have created the scripts for using SUMO as our environment for deploying all our RL models.
Stars: ✭ 131 (+336.67%)
Mutual labels:  video-processing
FFCreatorLite
一个基于node.js的轻量极速短视频加工库 A lightweight and fast short video processing library based on node.js
Stars: ✭ 155 (+416.67%)
Mutual labels:  video-processing
PororoQA
PororoQA, https://arxiv.org/abs/1707.00836
Stars: ✭ 26 (-13.33%)
Mutual labels:  video-processing
pepic
Image and video proxy for my pet-projects
Stars: ✭ 35 (+16.67%)
Mutual labels:  video-processing
vlog action recognition
Identifying Visible Actions in Lifestyle Vlogs
Stars: ✭ 13 (-56.67%)
Mutual labels:  video-processing
ShaderView
ShaderView is an Android View that makes it easy to use GLSL shaders for your app. It's the modern way to use shaders for Android instead of RenderScript.
Stars: ✭ 53 (+76.67%)
Mutual labels:  video-processing
video-summarizer
Summarizes videos into much shorter videos. Ideal for long lecture videos.
Stars: ✭ 92 (+206.67%)
Mutual labels:  video-processing
CVSandbox
Open source software package, which aims to allow solving different tasks related to computer vision areas, like video surveillance, vision based automation/robotics, different sorts of image/video processing, etc.
Stars: ✭ 56 (+86.67%)
Mutual labels:  video-processing
vidpipe
Video data processing pipeline using OpenCV
Stars: ✭ 33 (+10%)
Mutual labels:  video-processing
laav
Asynchronous Audio / Video Library for H264 / MJPEG / OPUS / AAC / MP2 encoding, transcoding, recording and streaming from live sources
Stars: ✭ 50 (+66.67%)
Mutual labels:  video-processing
video-colorization
Applying the machine learning tool "DeOldify" on videos, frame by frame.
Stars: ✭ 15 (-50%)
Mutual labels:  video-processing
pi-asciicam
A live stream ASCII webcam server for Raspberry Pis using websockets, written in go.
Stars: ✭ 18 (-40%)
Mutual labels:  video-processing
SST-Tensorflow
Tensorflow Implementation of the Paper "SST: Single-Stream Temporal Action Proposals" in CVPR 2017.
Stars: ✭ 50 (+66.67%)
Mutual labels:  video-processing
Image Processing
Image Processing techniques using OpenCV and Python.
Stars: ✭ 112 (+273.33%)
Mutual labels:  video-processing
mux-go
Official Mux API wrapper for golang projects, supporting both Mux Data and Mux Video.
Stars: ✭ 69 (+130%)
Mutual labels:  video-processing
pyanime4k
An easy way to use anime4k in python
Stars: ✭ 80 (+166.67%)
Mutual labels:  video-processing
FunCrop
Video Split Effect: a lots of transition effect in a video.
Stars: ✭ 42 (+40%)
Mutual labels:  video-processing

Sequence-to-sequence Model with Temporal Attention

seq2seq_temporal_attention is a tool for automatic video captioning. This is an implementation of Generating Video Description using Sequence-to-sequence Model with Temporal Attention (PDF).

Requirements (Linux/Mac)

For requirements for Windows, read docs/requirements-windows.md.

Examples

Captioning a video

To test out the tool, run example.sh. It gives a caption for an excerpt of the video titled playing wool ball with my cat : ). Our models were trained on Microsoft Video Description Dataset.

cat video thumbnail

git clone [email protected]:aistairc/seq2seq_temporal_attention.git --recursive
./download.sh
./example.sh --gpu GPU_ID  # It will generate a caption *a cat is playing with a toy*

Note: In most cases, setting GPU_ID to 0 will work. If you want to run it without GPU, set the parameter to -1.

Training

This is an example command to train.

cd code
python chainer_seq2seq_att.py \
    --mode train \
    --gpu GPU_ID \
    --batchsize 40 \
    --dropout 0.3 \
    --align ('dot'|'bilinear'|'concat'|'none') \
    --feature feature_file_name \
    output_folder

Test

There are two ways for test, test and test-batch. The latter runs much faster, but it does not use beam search. Be careful to specify which alignment model you want to use. It has to match your pre-trained model, in order to make it work correctly.

cd code
python chainer_seq2seq_att.py \
    --mode ('test'|'test-batch') \
    --gpu GPU_ID \
    --model path_to_model_file \
    --align ('dot'|'bilinear'|'concat'|'none') \
    --feature feature_file_name \
    output_folder
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].