/VideoStabilizationPy

An implementation of Google's Auto Directed Video Stabilization with Robust L1 Optimal Camera Paths Research Paper done as a self study to better understand the mechanisms and methods presented in the paper

Primary LanguagePython

Video Stabilization

This is an implementation of the methods presented in this research paper from Google which aims to stabilise video using linear programming and L1 optimization of the optimal camera path. I also wrote up a blog post on this paper and specifically my experience implementing this here.

This implementation was done as a self study on the research paper to better understand the methods proposed. The actual tool is not very efficient and work best when run on a small set of frames ~150-300.

Results

On the left is the original video and on the right is my smoothed clip.

smooth

motion

motion

Setup

This repo uses python 3's virtual environment and pip to allow a sandbox environment of its own dependencies which have been frozen into the requirements.txt file.

Inside the cloned directory run the following in the terminal:

python3 -m venv venv/               # you can change venv/ to whatever you want your virtual environment directory to be called
source venv/bin/activate            # to start the virtual environment 
pip install -r requirements.txt     # get the dependencies