Matt, this procedure is based on the same principle as the iphone facial recognition software and is virtually infallible.
JohnM

This is absolute BS and confirms that you know squat about image analysis or facial recognition. Else pls explain how a "fade" effect is based on the same principle as facial recognition. This should be good.
Hint: Here's a fade algorithm with 14 lines of code.
function getfadedcolor(Red1, Red2, Green1, Green2, Blue1, Blue2, fs, fn) {
fa1 = (Red2 - Red1) / fs;
fa2 = (Green2 - Green1) / fs;
fa3 = (Blue2 - Blue1) / fs;
cx1 = Red1;
cx2 = Green1;
cx3 = Blue1;
for (var n = 1; n <= fn; n++) {
cx1 += fa1;
cx2 += fa2;
cx3 += fa3;
}
return RGB(cx1, cx2, cx3);
}
I used this simple algorithm to make the following animated gif (what gives with his body BTW?)

All fading/morphing algorithms are based on this simple methodology of interleaving images.
How many lines of code do you think are required for infallible facial recognition technology?