With Google's RAISR, images can be up to 75% smaller without losing detail
pcmag.com
pcmag.com
You could add any image to Raisr and it will make up more detail, you could let it loop over the same picture over and over and it will probably add infinite detail, or up to some fixed point.
What's cool is that for many pictures, it's good enough at making up detail that the result is credible.
This doesn’t seem to produce results which are obviously better than the state of the art from 20 years ago. (Or if so, this article certainly doesn’t demonstrate it.) So is the novelty supposed to be that it’s less computationally expensive?
Here’s a site I just found in a quick web search with some comparisons of other upscaling tools: http://www.americaswonderlands.com/digital_photo_interpolati...
There's an neural net system which upscales old low-resolution anime stills.[1] It's been trained on hand-drawn cartoons, so it restores line art detail. That's very similar to this Google thing.
[1]: https://www.blog.google/products/google-plus/saving-you-band...
> In our proposed approach, the run-time is more than one to two orders of magnitude faster than the best competing methods currently available, while producing results comparable or better than state-of-the-art.
From the blog post & article, I think the idea is that you ship a small CNN (a few MB model size, which will accordingly run in realtime on mobile GPUs) to the Android device, and then when browsing, it downloads a small thumbnail (cheap on bandwidth, quick to download), and upscale it as necessary locally on the device.
The main impression I get is “woo! neural nets can do everything! let’s use them everywhere!”
I don’t believe their claim that this is “comparable or better than the state of the art” for image upscaling without much better evidence than they provide in their paper.
- first author was an intern at Google. Cool for him to have a project like this handed to him.
- paper is quite long and I don't think it would ever be published in a reputable journal. The content/length ratio is too low, for one
- another reason I think it would not get accepted is the lack of novelty. What is being done here is a basic interpolation scheme (which explains the "10-100X speedup over SotA) but with weights determined by a lookup table. The table itself is learned beforehand by analyzing a large number of other images.
https://www.inverse.com/article/17200-twitter-buys-london-vi...
There's an example of them finding a low res image of Barack Obama, and filling in the missing detail via ML to make a compelling high resolution image that still looks like Barack Obama: https://fsmedia.imgix.net/25/36/be/9d/fd04/4c51/9f79/ef675b0...
(Upvotes for anyone who a) replies with a better link and b) is Zehan [if b) then HI ZEHAN!])
Although on a serious note, does anyone know if and how statistical probability is accepted as evidence in a court of law?
"Your face is too generic that the AI drew you as all of our suspects."
https://www.blog.google/products/google-plus/saving-you-band...
"To help everyone be able to see the beautiful photos that photographers share to Google+ in their full glory"
"we’ve only begun to roll this out for high-resolution images when they appear in the streams of a subset of Android devices."
Anybody has an idea which subset?
I wonder if there's a guaranteed-optimal way to do that, given whatever RAISR is using as an algorithm; some logical inverse to the particular way it adds information. Maybe truncated wavelet compression?
Deepart.io now has a video mode [0] that takes this into account.
Contact him if you want to use the technology, dunno how much he charges for licensing.
For example, swiftkey does this already with its keyboard prediction. Prisma does it with image styling.
So how do they practically get the client to decode / upscale? JavaScript?
I must not understand what you mean by scaling up, I though the best way to scale up pixel art was to disable interpolation, so each pixel just becomes a perfectly sharp square?
Plenty to take a look at here:
But if they wanted they could probably try to train their neural network for pixel art specifically, similar to https://github.com/nagadomi/waifu2x
- http://www.ifp.illinois.edu/~jyang29/papers/chap1.pdf
* Image super-resolution: Historical overview and future challenges
- http://www.robots.ox.ac.uk/~vgg/publications/papers/pickup08...
* Machine Learning in Multi-frame Image Super-resolution
- http://www.cs.huji.ac.il/~peleg/papers/icpr90-SuperResolutio...
- http://www.wisdom.weizmann.ac.il/~vision/SingleImageSR.html
- http://chiranjivi.tripod.com/EDITut.html
- http://www.tecnick.com/pagefiles/appunti/iNEDI_tesi_Nicola_A...
- http://www.eurasip.org/Proceedings/Eusipco/Eusipco2009/conte...
- http://bengal.missouri.edu/~kes25c/
* http://bengal.missouri.edu/~kes25c/nnedi3.zip
* http://forum.doom9.org/showthread.php?t=147695
- http://arxiv.org/pdf/1501.00092v2.pdf
* https://github.com/nagadomi/waifu2x
* http://waifu2x-avisynth.sunnyone.org/
* https://github.com/sunnyone/Waifu2xAvisynth
- http://i-programmer.info/news/192-photography-a-imaging/1010...
* https://github.com/david-gpu/srez
The new thing here is that they're using it to save bandwidth, and running it on the user side.
[0] https://raw.githubusercontent.com/nagadomi/waifu2x/master/im...