Neo Vague Denoiser Copyright(C) 2020 Xinyue Lu, and previous developers
Vague Denoiser is a wavelet based denoiser.
Basically, it transforms each frame from the video input into the wavelet domain, using Cohen-Daubechies-Feauveau 9/7. Then it applies some filtering to the obtained coefficients. It does an inverse wavelet transform after. Due to wavelet properties, it should give a nice smoothed result, and reduced noise, without blurring picture features.
It was originally written by Lefungus, and later modified by Kurosu and Fizick for further improvement. VapourSynth-VagueDenoiser was ported to VapourSynth interface and refactored by HolyWu. Kudos to them for creating and improving this fantastic tool.
This project backports VapourSynth-VagueDenoiser to AviSynth+. Parameter names follow VapourSynth-VagueDenoiser.
# AviSynth+
LoadPlugin("neo-vague-denoiser.dll")
neo_vd(clip, threshold=2.0, nsteps=6, y=3, u=3, v=3, ...)
# VapourSynth
core.neo_vd.VagueDenoiser(clip, threshold=2.0, nsteps=6, planes=[0,1,2], ...)
Parameters:
Check original VapourSynth-VagueDenoiser usage documents.
y, u, v (AviSynth+ only)
Whether a plane is to be filtered.
1 - Do not touch, leaving garbage data
2 - Copy from origin
3 - Process
Default: 3.
opt
Sets which CPU optimizations to use.
0 - Auto detect
1 - Use C
2 - Use up to SSE (for core)
3 - Use up to SSE4.1 (for data copy)
4 - Use up to AVX (for core)
5 - Use up to AVX2 (for data copy)