Image Analogies using Neural Networks
github.com
github.com
For more projects like this, you can also check out the neural style transfer implementation in Keras: https://github.com/fchollet/keras/blob/master/examples/neura...
This is the script that OP's project was adapted from.
https://raw.githubusercontent.com/awentzonline/image-analogi...
this guy had the right idea http://ostagram.ru/static_pages/lenta?last_days=30
but the service costs an arm and a leg to run on current cuda clouds
first to get to a standalone python or ios version takes all :D
I used them for other things, and they delivered servers same day.
Usually, training step is the one that takes the longest and that can take a whole day. Evaluation step can be done on CPU usually almost instantly. Not sure what the utility of spot instances is in deep learning. Not to mention code complexity and Dev-Ops investments to run on very transient hardware.
Finally, you can't haggle with AWS, but you can basically name your price with private dedicated server providers like that.
As for an easy standalone version, it wouldn't have huge potential, considering the inevitable GPU / computing power requirements.
And the GPU version requires amounts of video memory that generally do not exist for anything else than research or GPGPU purposes. With 4GB of VRAM you might get a 920x690 image processed in under 1 hour, using recent optimizations added to the neural-style repo.
So a standalone iOS version seems pretty useless. A standalone Windows version might appeal to people with gaming rigs but without the technical knowledge or determination to install neural-style in its current form. It certainly has potential, just not as huge as the cloud version.
Looking at more examples, I'm not yet convinced this technique isn't straight-up magic: http://www.mrl.nyu.edu/projects/image-analogies/flightsim.ht...
Naively I imagine you could pipe every frame through an algorithm like this, but it likely won't have a smooth evolution over time. Maybe that isn't a problem?
It is almost as if this is a generalization of that algorithm. It would be interesting to know if that is the case (for example, it would be interesting to know if the examples from the patchmatch papers can be reproduced with this image analogies algorithm).
These analogies seem quite similar to the "user constraints" PatchMatch allows to be set, though an explicit "be straight" constraint might be much more difficult to optimize.
Is it possible to just spin up an Amazon EC2 instance and make it work?
If so, how long would it take, and how much would it cost, to produce one hybrid image? (Let's say something small, like 640x480 pixels.)
We're not talking hours of processing time per image, right?