View Full Version : AviSynth sharpeners for 720p videos?
orion44
14th June 2024, 11:53
Which AviSynth sharpener would you recommend for sharpening 720p videos?
hello_hello
14th June 2024, 18:10
I'm still partial to LSFMod.
http://avisynth.nl/index.php/LSFmod
When I asked google to find it for me, I discovered there's an updated version I haven't tried yet.
https://github.com/avisynth-repository/LSFmod
And Dogway has a couple of versions in his function collection.
https://github.com/Dogway/Avisynth-Scripts/blob/master/EX%20mods/LSFplus.avsi
https://github.com/Dogway/Avisynth-Scripts/blob/master/MIX%20mods/LSFplus.avsi
orion44
14th June 2024, 19:28
Thanks.
I think I'll use the original LSFmod for now.
Which AviSynth denoiser would you recommend to use in combination with LSFmod for denoising 720p videos?
For DVDs, I always used FFT3DFilter or DFTTest because they produced the most visually pleasing result,
but I'm not sure if they are suited for denoising 720p videos.
hello_hello
14th June 2024, 23:20
I've been using TemporalDegrain2 a fair bit lately, although it's pretty slow.
For some sources (it depends on the type of noise) QTGMC in progressive mode can denoise really well and it's much faster than TemporalDegrain2.
QTGMC(InputType=1, Preset="very slow", EzDenoise=2.0) or something like that. I'd recommend trying QTGMC for DVDs sources too. The main downside I find is that it can enhance any existing halos a bit, but it'll generally remove more noise before it starts blurring than most other denoisers, plus it'll stabilize the picture a bit which often helps for standard definition.
If you don't increase the denoising enough to remove all of it, it sometimes pays to use a faster speed preset otherwise QTGMC can stabilize the remaining noise too much and the effect can be a bit like watching video through a fly screen, if that makes sense.
For light noise I find a simple MDegrain function can work quite well for HD.
MDegrainNL.zip (https://files.videohelp.com/u/210984/MDegrainNL.zip)
If you happen to be working with 1080p sources that you're downscaling, it's usually better to denoise before you downscale as it tends to blur fine detail less regardless of the denoising method. Obviously it's slower though.
And I almost never encode without adding something like GradFun3() from DitherTools to the end of a script. It only supports 8 bit video but it can help a great deal with preventing banding after denoising. For high bit depth sources (or for 8 bit) Dogway has a similar function. You'd use it like this:
ConvertBits(16)
GradFun3plus()
ConvertBits(10, dither=0) # or convert back to your preferred bitdepth.
orion44
15th June 2024, 08:46
Yes, I'm downscaling 1080p Blu-rays to 720p and would like to just slightly sharpen them before encoding.
Selur
15th June 2024, 11:38
FineSharp is intended to sharpen downscaled (using DPID might also be worth a try) content.
hello_hello
15th June 2024, 14:49
Yes, I'm downscaling 1080p Blu-rays to 720p and would like to just slightly sharpen them before encoding.
If you try QTGMC you can crank the denoising up higher for 1080p without much motion blurring. I try not to go much beyond EzDenoise=2.0 for SD or 720p, but 1080p seems to require a higher level to remove an equivalent amount of noise. I'm pretty sure EzDenoise uses FFT3DFilter by default, but QTGMC has an option for denoising with DFTTest instead. The NoisePreset argument (as opposed to the Preset argument) also switches between them depending on the NoisePreset used.
For both TemporarDegrain2 and QTGMC you mightn't need additional sharpening as they tend to sharpen a little anyway, but it depends on the source.
Sometimes one denoising method will work better with one source while another method works better with a different source. I usually compare at least a couple of them for each video.
hello_hello
15th June 2024, 16:20
As I still happened to have a couple of examples on my hard drive, there's four screenshots in the attached zip file, two originals and their denoised/encoded versions. They weren't downscaled.
The QTGMC example used:
QTGMC(InputType=1, EzDenoise=1.5, Preset="Fast")
GradFun3()
and for the TemporalDeGrain2 example:
TemporalDegrain2(degrainTR=2, grainLevel=2, PostDither=0)
Convertbits(16)
GradFun3plus()
ConvertBits(10,dither=1)
It's more obvious for the TemporalDegrain2 screenshot, but you can see they sharpen a bit.
I picked a couple of frames where there was a bit of motion as if the denoising blurs fine detail, that's where it'll happen first.
Denoising.zip (https://files.videohelp.com/u/210984/Denoising.zip) (36.5 MiB)
Atak_Snajpera
19th June 2024, 08:21
I wrote my own sharpening script with aSobel and CAS plugins
Function MCAS(clip video,float "Strength")
{
Strength = Default(Strength,1.0)
LevelLimit=(video.BitsPerComponent==8) ? 255 : 1023
IntensityMask=ConvertToY(video).Levels(0,2,LevelLimit,0,LevelLimit,coring=false)
EdgeMask=aSobel(IntensityMask,chroma=0,thresh=255,SetAffinity=false).invert.Levels(0,2,LevelLimit,0,LevelLimit,coring=false).Blur(1)
SharpMask=Overlay(IntensityMask,EdgeMask,mode="Multiply",opacity=1.0)
SharpenedVideo=CAS(video,1.0)
video=Overlay(video,SharpenedVideo,mask=SharpMask,opacity=Strength)
return video
}
4k downsampled to 720p
OFF
https://i.postimg.cc/NfD9wNCr/0.png
50%
https://i.postimg.cc/2S5qj4g9/50.png
100%
https://i.postimg.cc/7ZQ555kH/100.png
Emulgator
19th June 2024, 13:55
Looks nice !
orion44
24th July 2024, 11:42
FineSharp is intended to sharpen downscaled (using DPID might also be worth a try) content.
Does FineSharp have a built-in denoiser?
Selur
26th July 2024, 15:33
Does FineSharp have a built-in denoiser?
it tries to remove/avoid oversharpening, so kind of,...
orion44
26th July 2024, 22:59
it tries to remove/avoid oversharpening, so kind of,...
Do you by any chance know which denoiser was most commonly used with FineSharp back in 2014,
when x264 was at the peak of its popularity?
Which denoiser would you recommend to be used with FineSharp for encoding 720p videos?
Selur
27th July 2024, 06:57
short: can't really say
long:
Which denoiser to use, always depended, and still depends, on the source and what noise you want to remove.
10 years ago, most of the denoisers available now were already present.
The only 'new' thing in a long time have been that there are more machine learning stuff which especially in the anime&cartoon fraction is used more and more.
This makes sense, since those types of contents can be filtered on a frame-by-frame basis without a temporal component.
Knowing what folks consider as 'popular' is hard, I can't even tell what one would call 'popular' nowadays.
You can look through old threads here in the forum and have a guess. :)
side note: Didée often noted that most of the stuff he wrote were designed for SD content, should work with HD content, but might need parameter adjustments. So don't be surprised that lots of scripts from that time will need parameter adjustments.
=> can't really say
Cu Selur
Ps.: I wrote a Vapoursynth port (https://github.com/Selur/VapoursynthScriptsInHybrid/blob/a470a94cbb09af1215d26ea52230677f2aea3a97/fromDoom9.py#L331) of Atak_Snajpera MCAS for those interested.
Katie Boundary
29th July 2024, 22:53
Yes, I'm downscaling 1080p Blu-rays to 720p and would like to just slightly sharpen them before encoding.
You'd be best-off just using a really sharp rescaling filter. A cubic with b=0, c=1 should do well.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.