View Full Version : Choice of optimal nnedi3 parameters
luquinhas0021
8th August 2015, 15:11
I tested the nnedi3 0.9.4.12 with follow code:
nnedi3_rpow2(rfactor=2, nsize=0, nns=4, pscrn=0, cshift= "Spline144resize", qual=2, etype=0, fapprox=0, threads=0, opt=0)
At the same time, I resize the same image with Spline144Resize.
As expected, nnedi3 resize didn't generate artifacts, while Spline 144 generated aliasing in two little regions. BUT Spline 144 is a little sharper and retain much more fine detail than nnedi3.
So is there some way of force nnedi3 to retain the fine detail as good as spline 144 does, like change nsize, pscrn or etype?
Reel.Deel
8th August 2015, 15:35
Umm, there's no such thing as nnedi3_rpow2(cshift= "Spline144resize"), nnedi3_rpow2 only uses AviSynth's internal resizers. Spline144 is from Wilbert SplineResize plugin. Are you using some modified plugin that allows that?
luquinhas0021
8th August 2015, 15:40
Any resizer .dll you put into Avisynth Plugin's folder turns an internal resize, I guess, because the code accepts Spline144resize in cshift parameter. And I tested cshift with Spline36Resize, and the result turn less sharper than when I used cshift=Spline144Resize
feisty2
8th August 2015, 15:45
Sharpen (1.0)
luquinhas0021
8th August 2015, 15:48
Sharpen, feisty2? So nnedi3 blurs image?
Reel.Deel
8th August 2015, 15:49
Indeed you're correct, my bad, I did not have SplineResize loaded. Anyways other than using the slowest settings (read the documentation) there's really no way to "force" nnedi3 to retain fine detail. You can try sharpening the output afterwards, An even more complex thing to do is use nnedi3 only on edges, and another resizer in "flat" areas, just like nnedi3_resize16 does.
feisty2
8th August 2015, 15:57
He got pscrn=0 and that's already the slowest, the fancy (and slow) nnedi algorithm would be applied on the whole image and the cheesy (and fast) bicubic is dead, and yet he complains about "not sharp enough" still...
So, I don't see any option other than "sharpen" left
luquinhas0021
8th August 2015, 16:09
Reel.Deel, nnedi3 falls in retain fine edges, so use it in edge upscaling will not help much, I think.
Maybe the solution is resize with Spline 144 and apply nnedi3 antialiasing (Merge the results of when use field=0 and field=1). I use field=-1 and nsize=3, but doesn't eliminate aliasing entirely and blur some fine details.
feisty2
8th August 2015, 16:15
Try SincResize, it's aliasing free and super sharp, way sharper than spline. :)
luquinhas0021
8th August 2015, 18:37
I already tried all possible Avysinth options of sinc taps, and every had the same amount of aliasing, however didn't retain the same number of detail that spline 144 did. What about ewa lanczos (Jinc) or sigmoized ewa lanczos?
mastrboy
8th August 2015, 18:45
You could try with using contrasharpening: http://pastebin.com/PvetHdzF
feisty2
8th August 2015, 18:48
Lanczos is a windowed Sinc
Jinc is Sinc in polar coordinates
Sigmoidal curve is a nonlinear luminance compression applied to reduce over/undershoot
All of them will sure decrease the sharpness of plain Sinc
luquinhas0021
8th August 2015, 19:03
So jinc and sigmoidal jinc reduces sharpness and detail maintainess in relation with spline 144?
feisty2
8th August 2015, 19:03
Sinc is the sharpest balanced kernel, if that ain't enough still,
Go take insane kernels like 2-tap spline, bicubicresize (b=-100) or whatever
luquinhas0021
9th August 2015, 13:35
I have an own project on way, therefore I guess I'll give up test the existent algorithm (I think I tested all!) and develop the mine.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.