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. |
1st June 2020, 23:32 | #501 | Link | |
Registered User
Join Date: Dec 2002
Location: Region 0
Posts: 1,436
|
Quote:
|
|
2nd June 2020, 05:56 | #502 | Link | |
Registered User
Join Date: May 2020
Location: Canada
Posts: 49
|
Quote:
Which do you think is better: upscaling to 4K with 2 resampling steps or upscaling to 1080p with 1 resampling step? |
|
7th June 2020, 05:23 | #504 | Link |
Registered User
Join Date: Mar 2011
Posts: 4,823
|
Did anyone check out my nnedi3 upscales here?
https://forum.doom9.org/showthread.p...91#post1914291 I think upscaling to 4k is over-kill myself, but aside from needing to find a way to deal with the remaining aliasing, I still think they look just as good, if not better, than any of the clever upscaling methods I've seen so far... for upscaling the CGI, at least. I'm also not sure you couldn't achieve much the same thing by simply applying some decent sharpening and encoding, and letting the player do the upscaling, but I haven't compared that yet. |
11th June 2020, 17:58 | #505 | Link | |
Registered User
Join Date: May 2020
Location: Canada
Posts: 49
|
Quote:
Sample here Comparison here, GaiaHQ on left, nnedi3 on right I will say that the nnedi3 is appealing since the whole workflow is far less tedious and takes about 4ish hours per episode versus the 24+ hours for this GaiaHQ workflow. (On my system, at least) The aliasing doesn't bother me too much. It's not noticeable when I watch on my 4K TV from my couch. Last edited by zapp7; 11th June 2020 at 18:07. |
|
13th June 2020, 02:30 | #506 | Link |
Registered User
Join Date: Mar 2011
Posts: 4,823
|
zapp7,
It surprises me you're upscaling before TemporalDegrain2. I assume it looks better than de-graining first? I'm not saying it's the wrong way to do it, because whatever looks better.... The tiny bit of live action at the end of your sample looks quite good, and while most of the fuss here has been how to handle the CGI, I assume there's a lot more live action than CGI in most episodes. I watched the show years ago but I don't remember it all that well. I still think upscaling to 4k might be overkill though. How does it look if you just upscale to 1080p and let the TV do the rest? I do wonder if that'd make the GaiaHQ version look a little less "sharpened", while still looking better than the DVD. The GaiaHQ sample does generally look a bit more detailed than my nnedi3 sample, but I think it's mostly in places where your upscaling fixes problems (aliasing) that needi3 doesn't. I'm not sure I don't prefer the GaiaCG sample JoelHruska uploaded though because the HQ version looks a bit over-sharpened in places to me. Mind you I'm sitting close to the monitor and nitpicking over comparisons of individual frames of CGI for a show that'd be mostly live action. It's what you prefer when the picture is moving and you're sitting on the couch that matters. |
14th June 2020, 05:31 | #507 | Link | |
Registered User
Join Date: May 2020
Location: Canada
Posts: 49
|
Quote:
I've flip-flopped a lot on the 1080p vs 4k. I might run some more tests, but I'm at the point where I feel like I'm reaching diminishing returns on quality improvement vs time spent fiddling. |
|
15th June 2020, 08:08 | #508 | Link | |
Registered User
Join Date: Oct 2001
Posts: 454
|
Quote:
sorry for the long delay, "life to do" ESRGAN actually "makes stuff" up. It uses models which are trained on a certain type of content and tries to recognize what it sees and then repaints what it thinks it sees. Itīs pretty obvious if we take a look at some of the authorīs example pictures: If you compare "HR" (high resolution = the original) or "ground truth" to the ESRGAN Example and look at the fine details, itīs eays to see, that the bamboo's beard looks good - but the hair are not the same ones as in the original. Also the grass looks rather detailed and good, but the single straws are not all the ones in the Original. ESRGAN also only uses single frames, so itīs not aware of the prevoius and following frames in a video. Therefore, it works quite good on single images IF your model is trained for the kind of content you want to upscale. There are quite a few trained models out there, named "faces", "Wood", "maps", etc... some are for realistic fotografs, others for special content, many for old 8 Bit Games etc... So when they claim to "recover", what they actually are saying is: "we recognize hair, so we put hair there"... To be fair, itīs just teh terminology used in this field.. if one looks up the research papers, the distinction of which mechanism does what is not hung up on terms like "recover" Although some outputs are very impressive, the limits of this apporach is obvious as soon as you have such low resolution that the guesswork at hand simply is making up false details. A very small shot of an actor shot from the side simply isnīt enough detail to pick up. Also, the model should be trained for the specific content.. Which most arenīt.. VEAI uses generic models, not "Scifi from the 90s" trained ones... My proposal at Topaz was to train models for specific usecases - There is "DS9 - like looking" footage ou there which exists in HD, so a training set could be compiled and trained upon... In the case if ESRGAN, we could do it ourselfs, there are many tutorials out there how to set up training. Of course, there are other "AI-Upscalers/denoisers/etc..." out there, in fact, the list ist enormous (the following list is just "a few" examples): https://awesomeopensource.com/projects/super-resolution With video, we have another source of detail, we can "tap into"... The previous and following frames often contain the same objects as the current one. Often so called "super resolution" methods can take many frames into account and mostly by subsampling are able to recover details. One good illustration of the basic principal in my oppinion is the somewhat older software photoaccute, which works on multiple shots from the same scene in order to process Fotos. This screenshot frmo the manufacturers website illustrates what can be done if several pictures are combined: With video, itīs a little more complicated, but research as gone a long way, so there are algos which are able to recover some lost details in video - the screenshots in the above post with the NNEEDI comparison are a good example. The red marked line on the spaceship is a recovered detail which only appears in the AI-Version of the upscale. One example out of my tests (SG1, taken from NTSC DVD): Some of the numbers are revealed, some look a little more "generic", maybe I get some more detail out of this (challenge accepted... hehe)... The workflow chain for this is... ugly... but VEAI is involved at some stage to do the upscaling (Artemis LQ in this example, a version from a few weeks ago...). One IMO powerfull technique which is able to do this is SPMC: https://eng.uber.com/research/detail...er-resolution/ A good example (taken from the author's paper): There is a lot going on in this field - personaly I am always torn between "finish it up" and "oh, ah better method arose, letīs start from scratch all over again" I hope my long writing made some sense and helped a little.. |
|
17th October 2020, 03:52 | #509 | Link |
Registered User
Join Date: Jan 2002
Location: USA
Posts: 249
|
I'm experimenting with DS9, both at 480p 23.976fps and upscaled to 1080p at 23.976fps. For some reason Vapoursynth runs 10x faster than Avisynth for me (I'm using Staxrip 2.1.3.0), I get 2.6fps with Avisynth and 26fps with Vapoursynth. Because of that, I'm trying to convert this Avisynth script to Vapoursynth:
Code:
TFM() TDecimate() QTGMC2 = QTGMC(Preset="Very Slow", SourceMatch=3, TR2=4, InputType=2, Lossless=2, MatchEnhance=0.75, Sharpness=0.5, MatchPreset="Very Slow", MatchPreset2="Very Slow") QTGMC3 = QTGMC(preset="Very Slow", inputType=3, TR2=4) Repair(QTGMC2,QTGMC3, 9) Code:
clip = core.std.SetFieldBased(clip, 2) # 1 = BFF, 2 = TFF clip = core.vivtc.VFM(clip, 1) clip = core.vivtc.VDecimate(clip) QTGMC1 = havsfunc.QTGMC(clip, TFF = True, Preset="Very Slow", SourceMatch=3, TR2=4, InputType=2, Lossless=2, MatchEnhance=0.75, Sharpness=0.5, MatchPreset="Very Slow", MatchPreset2="Very Slow") QTGMC2 = havsfunc.QTGMC(clip, TFF = True, Preset="Very Slow", InputType=3, TR2=4) clip = core.rgvs.Repair(QTGMC1,QTGMC2, 9) Doing a test encode shows that the Vapoursynth version needs an extra 100kbps at CRF-14 in x265, so it sounds like it's not producing the exact same output. Can someone check to see if I have it right? And I tried using nnedi3cl to upscale, but it seems like I have to use that filter to deinterlace as well, unless I'm misunderstanding. You have to use the "field" function: Code:
field: Controls the mode of operation (double vs same rate) and which field is kept. 0 = same rate, keep bottom field 1 = same rate, keep top field 2 = double rate (alternates each frame), starts with bottom 3 = double rate (alternates each frame), starts with top Code:
clip = core.nnedi3cl.NNEDI3CL(clip, field = 1, dh=True, dw=True) |
17th October 2020, 08:30 | #510 | Link | ||
Registered User
Join Date: Oct 2001
Location: Germany
Posts: 7,259
|
Quote:
Also note that is the Avisynth part of the forum, not Vapoursynth. Quote:
Last edited by Selur; 17th October 2020 at 08:47. |
||
Thread Tools | Search this Thread |
Display Modes | |
|
|