What’s the easiest way to catch an invisible man (or Harry Potter)? Well, just throw some paint! Though an oversimplified explanation, that’s what MIT’s scientists did, to capture things invisible to our eyes.
The initial aim of the project was to monitor babies in neonatal care without putting needles into them. A way to monitor heart rate and breathing status. And what an elegant solution they came up with!
Human skin is slightly translucent and when blood flows through it, its color changes. Such a change is imperceptible to the human eye. So, they wrote a program to increase the intensity of such color change, in a video showing a sleeping baby. The resulting video showed the baby’s face flush red at regular intervals of 151 per min, which was very close to its heart rate.
They were able to measure heart rate with a camera!
Meh! This is the 21st century. Something like this was expected.
Wait! There’s more to it. Eventually, the team realised that their algorithm could be used to amplify motion as well. Instead of amplifying colour, they amplified the position of the pixel between two frames of a video.
They were able to check if a baby is breathing using a camera!
So, how about lie detection, unraveling magic tricks or detecting gas leaks? Imagine it being a part of your mobile phone, google glass or the airport’s security system. This algorithm, known as Eulerian Video Magnification, has far reaching applications apart from medical ones.
And they have open sourced the code, for non-commercial purposes. Unfortunately it is in MATLAB, which most of us cannot afford.
But the good news is that you can head over to http://videoscope.qrclab.com/ and try out the algorithm on your own videos. Have fun :D.
Here’s the official video found on their website: