This repository provides a MATLAB implementation of Eulerian Video Motion Magnification, leveraging Split Spectrum Processing (SSP) and, alternatively, band-pass IIR filtering to amplify subtle periodic motions in image sequences or videos.
The framework is designed to work with both synthetic simulations and real video inputs, enabling controlled evaluation and practical experimentation.
| Original Input | Ground Truth |
|---|---|
![]() |
![]() |
| SSP (α = 20) | Band-Pass Filter (α = 20) |
![]() |
![]() |
The processing pipeline consists of the following stages:
- Frame generation (synthetic or real video)
- Spatial decomposition using Gaussian and Laplacian pyramids
- Temporal processing -Split Spectrum Processing (SSP), or -Band-pass IIR filtering
- Motion magnification
- Pyramid reconstruction
- Visualization of magnified motion
main.m
This script implements the complete motion magnification pipeline.
Main functionalities include: -Generation of synthetic frames with sinusoidal motion
-Construction of Gaussian and Laplacian pyramids
-Temporal processing via SSP or band-pass filtering
-Motion amplification using a magnification factor (alpha)
-Reconstruction of magnified frames
-Visualization of original and magnified sequences
The script can be easily adapted to real videos using videoReadFunction.m.
- Open the repository in MATLAB.
- Run main.m.
- By default, motion magnification is performed on synthetic simulation frames.
- To process real videos:
-Enable and configure videoReadFunction.m inside main.m.
alpha : Motion magnification factor
f1, f2 : Lower and upper cutoff frequencies
Fs : Frame rate (frames per second)
depth : Number of pyramid levels



