I want to share a little idea. Perhaps just for fun, and perhaps for a slightly brighter future :)
Probably many of you watched the Harry Potter movie. It used an interesting technique - all the newspapers, magazines and posters were illustrated with live photos and videos. Well, video, it is in Africa video. I want to talk about the live photos that were used there.

There was an idea how you can implement such photos in our time and not wait for the UFO to arrive and do it for us :)
')
The idea is to create a photo on which there will be several layers: a layer with a lively background; layer with a photograph of a man, his dog, their friend, etc .; front layer with a lively environment.
Animate the background
Everyone, of course, understands that shoving a video to the background or a gif is bad, because: you cannot place an endless picture there, at some point you have to loop it; by itself, the size of such a file will be very large.
Instead, we put some beautiful background, perhaps even an original one, and above it we place a lively environment, for example: raindrops; falling leaves; dust blown by the wind, etc. We can describe all this with mathematical formulas, and with a couple of textures or simple colored objects. Yes, even a small animation differently modified. And in this case, all this will happen in a random order and almost never be repeated. That is, we have an infinitely randomly generated background.
Animate man
In this case, it is necessary to do several things using the facial recognition algorithm: a blinking of the eyes, preferably more or less like the truth; hair movement from the wind (no, not necessarily do everything in the first version :)); smile (a little emotion). The algorithm can vary, ranging from video capture, to mathematical models, to whom it is more convenient :)
Revitalize the foreground
Well, everything is easier here - we need to bring to the fore all the same thing as in the background. Only taking into account physics, increase the size, blur, etc.
In principle, all this should be enough, but as you know, algorithms tend to be supplemented.
What is the result?
1. You can create a service (startup) on which to upload a photo of a person, process and place it all in a video clip written in Flash or Silverlight.
2. The ideal option is to develop a library that can support the format of such a file at the operating system level. And such images can be both viewed as a regular photo, and uploaded to sites with information about themselves.
If someone decides and wants to implement, I will be glad to see the result :)