Skip to content

joeljose/Eulerian-Video-Magnification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

Eulerian-Video-Magnification

Open In Colab

Eulerian video magnification reveals temporal variations in videos that are difficult or impossible to see with the naked eye and display them in an indicative manner.

original20X100X
Figure.1 : Original video, 20X magnified video, and 100X magnified video.

We are going to create a system which takes in an input video and outputs a video that is motion magnified. The system first decomposes the input video sequence into different spatial frequency bands, and applies the same temporal filter to all bands. The filtered spatial bands are then amplified by a given factor α, added back to the original signal, and collapsed to generate the output video.

Overview of the Eulerian video magnification framework

There are 5 steps in the algorithm pipeline:

  1. Loading the video
  2. Spatial decomposition into laplacian pyramids
  3. Temporal filtering to extract motion information, and adding that back to the original signal
  4. Reconstruction
  5. Saving to output video

Downloading the input video to our notebook

To do a demo of our motion magnification algorithm we use a video which was used in the original paper.
You can alternatively use you own video as input too. You will have to upload the video to the colab notebook, and rename the 'filename' variable as the name of your video.

To amplify motion, EVM does not perform feature tracking or optical flow computation, but merely magnifies temporal color changes using spatio-temporal processing. This Eulerian based method, which temporally processes pixels in a fixed spatial region, successfully reveals informative signals and amplifies small motions in real-world videos.

One drawback of this method is that we can see that we do get artifacts in our videos as we increase the amplification factor.

The Algorithm we use is derived from MIT CSAIL's paper, "Eulerian Video Magnification for Revealing Subtle Changes in the World". I have implemented their paper using Python.

Follow Me

Show your support by starring the repository 🙂

About

My implementation of Eulerian Video Magnification Algorithm

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published