VagueDenoiser : Wavelet Denoiser for Avisynth 2.5+
(v0.22)
This filter is designed for Avisynth 2.5 and above
it's able to filter in YUY2 and YV12 colorspaces
What it does:
This is a Wavelet based Denoiser. Basically, it transforms each frame from
the video input into the wavelet domain, using various wavelet filters.
Then it applies some filtering to the obtained coefficients. It does an inverse
wavelet transform after. Due to wavelet properties, it gives a nice smoothed
result, and noise is removed, without blurring picture features. This
wavelet transform could be done on each plane of the colorspace.
Exemples Usage of VagueDenoiser filter:
(all the avisynth script lines here are only exemples)
Some settings i like :
For light filtering on a movie. (medium->threshold=1-1.5 ;
strong->threshold= 2-3)
VagueDenoiser(filter=7,threshold=0.8,method=1,nsteps=6,chroma= true)
For light filtering on an anime. (medium->threshold=2 ;
strong->threshold=4)
VagueDenoiser(filter=7,threshold=1.5,method=1,nsteps=6,chroma=true)
Syntax of VagueDenoiser filter:
VagueDenoiser :
VagueDenoiser(int "filter" int "threshold" int "method", int
"nsteps", bool "chroma")
filter : 0 to 15.
Filter used during the wavelet transform. So far Brislawn 10/10 seems to give
best results.
Filtering strength. The higher, the more
filtered the clip will be. Hard thresholding can use a higher threshold than
Soft thresholding before the clip looks overfiltered.
method : 0 to 1
The filtering method the filter will use.
0 : Hard Thresholding. All values under the threshold will be zeroed.
1 : Soft Thresholding. All values under the threshold will be zeroed. All
values above will be reduced by the threshold.
nsteps : 1<int<8
Number of times, the wavelet will decompose the picture. High values can be
slower but results will be better.
Suggested values are 3-6.
chroma : true or false
chroma=true enable Chroma filtering. It is slower but give better results
History :
v 0.12 First Release
- Precision problems corrected, 0 for threshold is now lossless
v 0.13
- Hard thresholding method enabled
- Avisynth parameters changed
v 0.2
- Implemented many new wavelet filters, thanks to the wavelet transform coder
construction kit.
look at http://www.geoffdavis.net/ for more informations.
- Implemented nsteps parameter, that allow you to use n steps in the selected
wavelet tranform.
Some nsteps values could produce unvalid results, reducing this value
generally solve the problem.
- Little optimizations from Shodan and Bidoche.
v 0.22
- YUY2 colorspace support
- Optionnal chroma filtering, (chroma=true/false)
- Cosmetic changes, code cleaned
Credits :
Everyone at Doom9.org for their counsels.
MarcFD for his mpegdec3 html documentation. This html is the same but with
modified contents.
Geoff Davis, author of the wavelet transform coder construction kit.
Code Distribution :
This is a free sofware distribued under the terms of the GNU-GPL v2
Contact :
You can e-mail me for any
suggestion, bug report, feature request, or whatever.