Skip to content

bharathsivaram10/Video-Prediction

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Video-Prediction

Forecasting future video content using ConvLSTM

image

Motivation & Goal

In fields like climate science, it is beneficial to be able to make predictions based on past data. In this case, we'd like to predict sea surface temperature using images. There are two ways this can be done:

  1. Using a physics based dynamic model, which incorporates expert-knowledge and involves many complex equations
  2. Using a Convolutional LSTM, which learns the inherent patterns in sequences of video frames and uses a deep network to make predictions (our approach)

Method

  • Used a ConvLSTM model with a Seq2Seq approach. Frames (images) were encoded to (16x16) using a DCGAN64Encoder for faster training
  • Experimented with teacher forcing, resulting in two models

Results

Two metrics were used to evaluate the model, MSE and SSIM (Structural Similarity). SSIM is a more human centered metric since there can be image distortions which are not clearly visible and therefore don't impact the overall frame similarity to the reference.

image

How to Run

  1. Create a conda env with dependencies (conda create --name <env_name> --file requirements.txt)
  2. Download data from google drive folder
  3. To run training: python train.py --data_source sst --seq_len 4 --horizon 6
  4. To run testing: python test.py --model_name MODEL_NAME --data_source sst --seq_len 4 --horizon 6

Contributions

Utility functions (Encoder/Decoder,ConvLSTM cell, etc.) provided by Dr.Yao-Yi Chiang.

Remaining code by Bharath Sivaram

About

Forecasting future video content using ConvLSTM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages