Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
15th November 2016, 21:09 | #1 | Link |
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
Enhance! RAISR Sharp Images with Machine Learning
__________________
Intel i7-6700K + Noctua NH-D15 + Z170A XPower G. Titanium + Kingston HyperX Savage DDR4 2x8GB + Radeon RX580 8GB DDR5 + ADATA SX8200 Pro 1 TB + Antec EDG750 80 Plus Gold Mod + Corsair 780T Graphite |
15th November 2016, 23:59 | #2 | Link |
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
|
Original:
Spline36Resize (4x): NNEDI3 (4x): NNEDI3 (4x) + Sharpen: Theirs:
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ Last edited by LoRd_MuldeR; 16th November 2016 at 00:04. |
16th November 2016, 12:50 | #4 | Link | |
brontosaurusrex
Join Date: Oct 2001
Posts: 2,392
|
from https://arxiv.org/abs/1606.01299
Quote:
|
|
16th November 2016, 13:58 | #5 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
I'm a bit disappointed cuz nn doesn't seem to work so well imho(at least for now)..
sure it won't be possible to "recover" the image to higher resolution, but the guess work, which is what nn does, is also not good enough to fool my eyes |
16th November 2016, 19:31 | #6 | Link | ||
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
|
Quote:
Quote:
The most common image scaling method, like BiLinear, BiCubic or Lanczos interpolation also are "single image", i.e. they process each frame like an independent picture. This applies to plain NNEDI3 just as well. Whether their method is fast enough to be useful for (real-time) video upscaling, that's a whole different question though...
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ Last edited by LoRd_MuldeR; 16th November 2016 at 19:45. |
||
16th November 2016, 20:53 | #7 | Link |
brontosaurusrex
Join Date: Oct 2001
Posts: 2,392
|
LoRd_MuldeR: , What I meant was that two slightly different frames could use completely different resizing methods due to the brute-force methodology used here (Which may look weird when 'animated'). But thanks for that explanation anyway, especially the part about "video is nothing but a sequence of single images" < that got me giggling.
|
16th November 2016, 21:23 | #8 | Link | ||
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
|
Quote:
You start with an initial (random) network and then you "train" the network with pairs of input data and corresponding (optimal) output data, aka the "training set" – in this case pairs of low-resolution images and corresponding high-resolution images. In the end, you get a network that (hopefully) produces "good" results, even for unknown inputs – in this case a network that will approximate "sharp and naturally-looking" high-resolution image from an (unknown) low-resolution image. This is more or less exactly how NNEDI3 (and its predecessors) have been created! I don't think there is reason to assume that this approach will necessarily create a highly discontinuous filter, i.e. a filter that would produce completely different outputs, even for very small deviations of the input. At least NNEDI3 shows the opposite. It works pretty well for (progressive) video upscaling, doesn't it? (Note: The reason why NNEDI3 alone is not a good double-rate deinterlacer and produces notable "bobbing" effect is a different one - it is because the images are alternatingly approximated from "odd" and "even" lines in that scenario)
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ Last edited by LoRd_MuldeR; 16th November 2016 at 21:33. |
||
17th November 2016, 17:12 | #10 | Link |
Registered User
Join Date: Apr 2008
Posts: 418
|
Theirs
SuperRes(2, 1, 0, """nnedi3_rpow2(rfactor=4, nns=4, cshift="Spline16Resize")""") 2xSuperResXBR(2, .6, xbrStr=2.3, xbrSharp=1.2) 2xSuperResXBR(1, .7, xbrStr=.1, xbrSharp=.7) Last edited by Gser; 17th November 2016 at 17:15. |
17th November 2016, 19:39 | #11 | Link |
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
|
You present your current network with an input/output pair, the training sample. In this case, the "input" would be a low-resolution version of the original image, and the "output" is the original high-resolution image. You let your network create its own (high-res) output image from the given (low-res) "input" image. And then you compare that against the given optimal "output" image (original). Of course, there will be some difference between the network's actual output and the optimal (desired) output - especially at the beginning of the training phase. This difference, or "error", will be used to update (improve) the network, so that the error is reduced. For example, one approach is to let the "error" propagate through the network in backwards direction and adjust the individual weights accordingly. You repeat this process with many training samples (input/output pairs). In the end, you get a network that (hopefully) produces good results, even for unknown inputs.
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ Last edited by LoRd_MuldeR; 17th November 2016 at 19:46. |
17th November 2016, 19:48 | #12 | Link | ||
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
Quote:
Quote:
__________________
Intel i7-6700K + Noctua NH-D15 + Z170A XPower G. Titanium + Kingston HyperX Savage DDR4 2x8GB + Radeon RX580 8GB DDR5 + ADATA SX8200 Pro 1 TB + Antec EDG750 80 Plus Gold Mod + Corsair 780T Graphite |
||
19th November 2016, 16:56 | #13 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 4,926
|
SOA Compare of different test cases from the dataset the building reconstruction result is pretty good also all the text (letter) parts and the faceted eyes pattern reconstruction
very impressive high frequency preservation in all of those results by default No one yet here gained those sharp results without haloing so far in the Post Process with the Human Eyes Face sample is still far away from those reconstruction results especially at the fine hair structure reconstruction (shown also with the cat test case). https://drive.google.com/file/d/0BzC...VFZGJ4OWc/view Triticals NNEDI3 got on the first sight beaten by Google R&D Wee need the Clown and Lighthouse test with Googles Trained Algorithm
__________________
all my compares are riddles so please try to decipher them yourselves :) It is about Time Join the Revolution NOW before it is to Late ! http://forum.doom9.org/showthread.php?t=168004 Last edited by CruNcher; 19th November 2016 at 20:06. |
17th March 2017, 22:20 | #16 | Link |
Anime addict
Join Date: Feb 2009
Location: Spain
Posts: 673
|
__________________
Intel i7-6700K + Noctua NH-D15 + Z170A XPower G. Titanium + Kingston HyperX Savage DDR4 2x8GB + Radeon RX580 8GB DDR5 + ADATA SX8200 Pro 1 TB + Antec EDG750 80 Plus Gold Mod + Corsair 780T Graphite |
18th March 2017, 01:37 | #17 | Link |
Software Developer
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
|
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊ |
21st March 2017, 13:15 | #18 | Link |
Registered Developer
Join Date: Sep 2006
Posts: 9,140
|
FWIW, the blown-up "original" image doesn't match the small sized image posted by LoRd_MuldeR. The "original" image used by RAISR appears to be higher quality. So all the comparison images with "our" algorithms seem to be at a disadvantage here.
It's a pitty Google didn't find it necessary to make all the images from their PDF available as PNG (or even JPG). But maybe they had a good reason for that... The biggest problem with all these neural network algorithms is that usually the guys publishing such "scientific" papers use *one* specific algorithm to downscale their images, and then their neural network just learns how to revert the downscaling. Obviously you can get pretty good results that way. But as soon as you feed those neural networks with images downscaled with a different algorithm (e.g. Lanczos instead of Catrom, or Bilinear or Box), the algos quickly fall apart. The only way to properly evaluate the quality of an upscaling algorithm is to test it with multiple different images, which were downscaled with different algorithms. |
22nd March 2017, 13:38 | #19 | Link |
The image enthusyast
Join Date: Mar 2015
Location: Brazil
Posts: 270
|
Your thoughts makes complete sense, Madshi.
I thought the correct approach for upscaling is simply an image that must be size-increased... Just that. Not a H.R image that was downscaled and the upscale will try reverse the downscaling.
__________________
Searching for great solutions Last edited by luquinhas0021; 27th November 2017 at 16:25. |
22nd March 2017, 14:55 | #20 | Link | |
Registered Developer
Join Date: Sep 2006
Posts: 9,140
|
Quote:
My point was that we have to take any results from such "scientific PDFs" with a pinch of salt, because they often train for just one specific downscaling algorithm. So it's important that we're able to double check the upscaling results ourselves, with test images we created ourselves. Otherwise it's hard to judge how good such an algo really is. |
|
|
|