# Eulerian Video Magnification with CurrentImage[] [closed]

I saw yesterday a post here in SE that I think was deleted. It was about the recently published MIT algorithm called "Eulerian Video Magnification for Revealing Subtle Changes in the World ACM Transaction on Graphics". The post was a little bit generic, but the subject was amazing. In the article link, you'll find a nice video that explains how it works. The algorithm is available in the page, but it's all implemented in MATLAB.

Here is one example on how can you see the blood flow, just using a regular camera.

## My question is:

Can someone translate some of these MATLAB functions into Mathematica??

My favorite chalenge would be to see the face algorithm working with Dynamic[CurrentImage[]]

You will find a file called EVM_Matlab.zip in the article page that has all the MATLAB functions needed to do the job. When you unpack it, you will find a file called README.txt with all the instructions to test the algorithms. You can download the videos available in the page with you want to reproduce the tests (or download in the end of this post).

In the file reproduceResults.m wil will find the script call used to start the video processing. For example, for the face algorithm, you have this call inside the file:

%% face
fprintf('Processing % s \n', inFile);
amplify_spatial_Gdown_temporal_ideal(inFile,resultsDir,50,4, ...
50/60,60/60,30, 1);


So the challenge is to implement this function amplify_spatial_Gdown_temporal_ideal to solve the face example.

I created a zip file with all MATLAB algorithms and videos that can be download here (32MB)

-
amplify_spatial_Gdown_temporal_ideal is not the only file that's needed — that's merely a wrapper file. If you follow the rabbit hole, it relies on several other files (the zip file won't have hundreds of files if only one is needed, right? ;)). Some of them are easy to translate, some of them not so trivial and some of which require additional functionality that needs to be written from scratch. You'll eventually also have to translate from some C files, (these are compiled into MEX files that are used by MATLAB). By no means is this a simple project and it will involve several days of work –  rm -rf Nov 17 '12 at 18:31
That would be great to show of the power of MM. However as RM states. A lot of work... Way above my skills anyway :( –  Lou Nov 17 '12 at 20:53
I don't think here is the right place for questions like "please read this paper and code it up for me". –  acl Nov 17 '12 at 21:05
@acl I agree. This is a project. Perhaps something for a next Wolfram Blog? –  Lou Nov 17 '12 at 21:11
That is exactly what I suggested to Diego yesterday (your comment came after mine, so I assumed you had read it). I suggested starting small and breaking it up into pieces (i.e., the OP breaks it up, not the answerers). Then focus on solving each with a toy example and ask a question when they get stuck. For instance, the folder has ideal_bandpassing.m function, which can be easily implemented in mma in under 5 mins. Do that, then move to another function... blurDnClr.m depends on blurDn.m, which is basically blurring + downsampling, which is easy with mma's image proc functionality. –  rm -rf Nov 17 '12 at 21:33