VagueDenoiser
From Avisynth wiki
(Difference between revisions)
m |
m (→Requirements) |
||
Line 19: | Line 19: | ||
<br> | <br> | ||
== Requirements == | == Requirements == | ||
− | * [x86]: [[AviSynth+]] or [ | + | * [x86]: [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.6] |
* [x64]: [[AviSynth+]] | * [x64]: [[AviSynth+]] | ||
* Supported color formats: [[RGB24]], [[RGB32]], [[YUY2]], [[YV12]] | * Supported color formats: [[RGB24]], [[RGB32]], [[YUY2]], [[YV12]] | ||
<br> | <br> | ||
+ | |||
== [[Script variables|Syntax and Parameters]] == | == [[Script variables|Syntax and Parameters]] == | ||
:{{Template:FuncDef| VagueDenoiser (clip, int "threshold", int "method", int "nsteps", float "chromaT", bool "debug", bool "interlaced", int "wavelet", bool "Wiener", float "wratio", integer "percent", clip "auxclip")}} | :{{Template:FuncDef| VagueDenoiser (clip, int "threshold", int "method", int "nsteps", float "chromaT", bool "debug", bool "interlaced", int "wavelet", bool "Wiener", float "wratio", integer "percent", clip "auxclip")}} |
Revision as of 03:35, 24 May 2020
Abstract | |
---|---|
Author | Lefungus, Kurosu, Fizick |
Version | v.0.35.1 |
Download | [x86] vaguedenoiser0351.zip |
Category | Spatial Denoisers |
License | GPLv2 |
Discussion | Doom9 Forum |
Contents |
Description
Vague Denoiser 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 should gives a nice smoothed result, and reduced noise, without blurring picture features. This wavelet transform could be done on each plane of the colorspace. This filter uses a wavelets from Brislawn tutorial.
See official documentation.
Requirements
Syntax and Parameters
- VagueDenoiser (clip, int "threshold", int "method", int "nsteps", float "chromaT", bool "debug", bool "interlaced", int "wavelet", bool "Wiener", float "wratio", integer "percent", clip "auxclip")
- clip =
- Input clip to process.
- clip =
- float threshold = 0.0
- 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.
- If set < 0, then luminosity denoising will be disabled
- If set = 0, then threshold is estimated automatically (adaptive)
- 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.
- float threshold = 0.0
- int method = 3
- The filtering method the filter will use.
- -1 : No thresholding (debug purpose)
- 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.
- 2 : Adaptive thresholding (NormalSrink method). Scale input threshold depending on local wavelet data (local = wavelet decomposition subband level).
- 3 : Qian's (garrote) thresholding. Scales or nullifies coefficients - intermediary between (more) soft and (less) hard thresholding.
- 4 : Uniformly smooth shrinking function.
- The filtering method the filter will use.
- int method = 3
- int nsteps = 4
- Number of times, the wavelet will decompose the picture. High values can be slower but results will be better.
- Suggested values are 3-6.
- Picture can't be decomposed beyond a particular point (typically, 8 for a 640x480 frame - as 2^9 = 512 > 480)
- int nsteps = 4
- float chromaT = -1.0
- Set threshold value for Chroma filtering. It is slower but give better results
- If set < 0, then Chroma denoising will be disabled (default mode)
- If set = 0, then threshold is estimated automatically (adaptive)
- Set threshold value for Chroma filtering. It is slower but give better results
- float chromaT = -1.0
- bool debug = false
- True or false; deactivates the inverse transform for direct display (but not normalize coefficients now). Also enables output for Debugview utility.
- bool debug = false
- bool interlaced = false
- True or false; try to process separately fields clip.
- bool interlaced = false
- int wavelet = 1
- Select wavelet type:
- 1 : Cohen-Daubechies-Feauveau 9/7 - popular, probably the best
- 2 : Brislawn 10/10 (sharp, used as only in all previous versions from 0.23 to 0.29)
- 3 : Villasenor-Belzer-Liao 6/10
- Select wavelet type:
- int wavelet = 1
- bool Wiener = false
- Activates WienerChop two-pass denoising mode for strong denoising with high threshold (slow).
- First pass is noise estimation by transform with first wavelet (different from selected wavelet) with selected settings, the second pass is optimal Wiener denoising with second (selected) wavelet.
- Second wavelet 1 is used with first (estimation) wavelet 3,
- Second wavelet 2 is used with first (estimation) wavelet 1,
- Second wavelet 3 is used with first (estimation) wavelet 1.
- bool Wiener = false
- float wratio = 0.5
- Noise std deviation value for Wiener denoising as relative ratio to threshold value.
- float wratio = 0.5
- int percent = 85
- Partial of full denoising (limited coefficients shrinking).
- int percent = 85
- clip auxclip =
- auxiliary clip for first pass of Wiener mode (default=none, source)
- Prefiltered source clip, preferably with temporal or spatial-temporal filter (such as DeGrainMedian) for best denoising and artifacts suppression.
- clip auxclip =
Examples
- VagueDenoiser with default settings:
AviSource("Blah.avi") VagueDenoiser()
- See included documentation for more examples.
Changelog
Version Date Changes
v0.35.1 2005/09/26 - Lastest release by Fizick - Added YUY2 and RGB format for auxclip
- See included documentation for full changelog
Archived Downloads
Version | Download | Mirror |
---|---|---|
v0.35.1 | [x86] - vaguedenoiser0351.zip
[x64] - VagueDenoiser_0351_64.7z |
vaguedenoiser0351.zip
|
- 64bit version compiled by Groucho2004
External Links
Back to External Filters ←