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. |
14th June 2024, 18:10 | #2 | Link |
Registered User
Join Date: Mar 2011
Posts: 4,890
|
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-S...s/LSFplus.avsi https://github.com/Dogway/Avisynth-S...s/LSFplus.avsi |
14th June 2024, 19:28 | #3 | Link |
None
Join Date: Jul 2007
Location: The Background
Posts: 314
|
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. |
14th June 2024, 23:20 | #4 | Link |
Registered User
Join Date: Mar 2011
Posts: 4,890
|
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 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. Last edited by hello_hello; 15th June 2024 at 15:21. |
15th June 2024, 14:49 | #7 | Link | |
Registered User
Join Date: Mar 2011
Posts: 4,890
|
Quote:
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. Last edited by hello_hello; 15th June 2024 at 15:24. |
|
15th June 2024, 16:20 | #8 | Link |
Registered User
Join Date: Mar 2011
Posts: 4,890
|
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 (36.5 MiB) Last edited by hello_hello; 15th June 2024 at 16:22. |
19th June 2024, 08:21 | #9 | Link |
RipBot264 author
Join Date: May 2006
Location: Poland
Posts: 7,885
|
I wrote my own sharpening script with aSobel and CAS plugins
Code:
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 } OFF 50% 100%
__________________
Windows 7 Image Updater - SkyLake\KabyLake\CoffeLake\Ryzen Threadripper |
19th June 2024, 13:55 | #10 | Link |
Big Bit Savings Now !
Join Date: Feb 2007
Location: close to the wall
Posts: 1,671
|
Looks nice !
__________________
"To bypass shortcuts and find suffering...is called QUALity" (Die toten Augen von Friedrichshain) "Data reduction ? Yep, Sir. We're that issue working on. Synce invntoin uf lingöage..." |
26th July 2024, 22:59 | #13 | Link |
None
Join Date: Jul 2007
Location: The Background
Posts: 314
|
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? |
27th July 2024, 06:57 | #14 | Link |
Registered User
Join Date: Oct 2001
Location: Germany
Posts: 7,418
|
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 of Atak_Snajpera MCAS for those interested. Last edited by Selur; 27th July 2024 at 07:00. |
29th July 2024, 22:53 | #15 | Link |
Registered User
Join Date: Jan 2015
Posts: 1,076
|
You'd be best-off just using a really sharp rescaling filter. A cubic with b=0, c=1 should do well.
__________________
I ask unusual questions but always give proper thanks to those who give correct and useful answers. |
Thread Tools | Search this Thread |
Display Modes | |
|
|