LaTo
23rd July 2008, 16:14
####################################################################################################################################
### ###
### Motion-Compensated Temporal Denoise: MCTemporalDenoise() ###
### ###
### v1.4.20 by "LaTo INV." ###
### ###
### 2 July 2010 ###
### ###
####################################################################################################################################
###
###
###
### /!\ Needed filters: MVTools (v2.5.10), MaskTools (v2.0a43),
### ------------------- LSFmod (v1.9), FFT3Dgpu (v0.8.2.7) or FFT3Dfilter (v2.1.1),
### TTempsmooth (v0.9.4), RemoveGrain + Repair (v1.0PR),
### Deblock (v1.2), Deblock_QED (25.may.2010), DctFilter (v0.0.1.4),
### EEDI2 (v0.9.2), SangNom (v1.0beta),
### GradFun2DBmod (v1.5), GradFun2db (v1.0), AddGrainC (v1.5).
###
###
###
### USAGE: MCTemporalDenoise(i, radius, sigma, twopass, useTTmpSm, limit, limit2, post, chroma, interlaced,
### sharp, adapt, strength, SHmode, SHmethod, Slimit, Sovershoot, Tlimit, Tovershoot,
### protect, cutoff, threshold, maxdiff,
### AA, useEEDI2, reduc, maxd, AAthr, method,
### deblock, useQED, quant1, quant2,
### edgeclean, ECrad, ECthr, ECmode,
### stabilize, maxr, TTstr,
### enhance, GFthr, AGstr, bias, temp,
### bwbh, owoh, blksize, overlap,
### GPU, fixband, bt, ncpu, precision,
### thSAD, thSAD2, thSCD1, thSCD2,
### truemotion, MVglobal, pel, pelsearch, search, searchparam, MVsharp, DCT,
### p, settings,
### show, screenW, screenH)
###
###
###
### MCTemporalDenoise's Post Processor :
### ------------------------------------
###
### USAGE: MCTemporalDenoisePP( denoised, source,
### sharp, adapt, strength, SHmode, SHmethod, Slimit, Sovershoot, Tlimit, Tovershoot,
### protect, cutoff, threshold, maxdiff,
### AA, useEEDI2, reduc, maxd, AAthr, method,
### deblock, useQED, quant1, quant2,
### edgeclean, ECrad, ECthr, ECmode,
### stabilize, maxr, TTstr,
### enhance, GFthr, AGstr, bias, temp,
### chroma, settings )
###
### This is the post-processor used internally in MCTemporalDenoise.
### It can be called externally if you want some specific functionality without denoising.
###
### Parameters & defaults are the same as MCTemporalDenoise.
### By default, all filters are OFF!
###
### "Sharp" & "Protect" options need 2 inputs:
### EX: source=last
### denoised=source.FFT3Dfilter()
### MCTemporalDenoisePP(denoised,source,...)
### The others only need "denoised".
###
####################################################################################################################################
Update 2010.07.02 : MCTemporalDenoise v1.4.20 (http://latoninf.free.fr/d9/MCTD/MCTemporalDenoise.v1.4.20.avsi)
v1.4.20 :
tweaked some settings
updated QED_Deblock version
v1.4.18 :
fixed anti-aliasing PP (was broken since v1.4.07)
updated MVTools-MaskTools-AddgrainC version
v1.4.16 :
added switch to avoid loading of unused filters
fixed a bug in anti-aliasing part
v1.4.08 :
fixed MOD16 warning when deblock=true
v1.4.07 :
improved masking in PP-stage
cleaned code (cosmetic)
v1.4.00 :
fixed bug with maxdiff=0
fixed speed issue in MCTemporalDenoisePP (+20%)
added "deblock" to MCTemporalDenoisePP
changed "flat" to "enhance"
cleaned and optimized all the code
changed some settings
updated documentation
v1.3.09 :
added MOD4 restriction
updated MVTools version
v1.3.00 :
added a post-denoising stage (see "post")
fixed a bug with fixFFT3D and defined p clip
changed "very high" to be less insane
renamed fixFFT3D to fixband
cleaned some stuff
adapted to LSFmod v1.8
v1.2.02 :
changed default gpu=true to gpu=false (set gpu=true if you want speed!!!)
adapted to LSFmod v1.7
v1.2.00 :
adapted for LSFmod v1.6 & GradFun2DBmod v1.3
changed sharp int->bool (deleted sharp=1)
v1.1.27 :
fixed a bug in MCTemporalDenoisePP with chroma=false
adapted for LSFmod v1.5
v1.1.26:
changed "flat" post-processing to use GradFun2DBmod
changed int->float for AGstr
fixed a small bug in AA
v1.1.24:
fixed a chroma bug with PP
v1.1.23:
adapted script for MvTools v2.3.0 (deleted MT & idx parameters)
changed MCTemporalDenoisePP's defaults (now the same as MCTD)
deleted safe parameter (slow & useless)
changed some minor things
v1.0.03:
fixed a bug in MCTemporalDenoisePP
v1.0.02:
changed defaults according to new LSFmod v1.2
v1.0.01:
fixed a speed issue in MCTemporalDenoisePP (introduced in beta5)
changed documentation about MCTemporalDenoisePP
v1.0.00:
first stable version
changed sharp=2, need LSFmod v1.0 !
fix a bug introduced in beta5
v1.0beta5:
added new sharpening routine & deleted LSF (SHmode,Slimit,Sovershoot,Tlimit,Tovershoot)
changed some code (cosmetic)
v1.0beta4:
changed some descriptions & blksize default (submitted by Didée)
added auto blksize setting (16:HD & 8:SD, if you want speed use 16)
v1.0beta3:
all post-processing filters are now usable as a standalone function (MCTemporalDenoisePP)
added MC-antialiasing (see reduc parameter)
v1.0beta2:
fixed MOD16 restriction (effective only if deblock=true)
small speedup/fix with limit>0 and/or protect=true&maxdiff>0
added warning about GPU & MT in the documentation
v1.0beta1:
changed name Udegrain --> MCTemporalDenoise (to be more specific and avoid confusion with chroma)
added the choice to use MVDegrain instead of MVCompensate+TTempSmooth (since the chroma bug in MVDegrain is fixed)
added twopass option to do the denoising job in two stage (very effective but slow)
added MT parameter for MVTools (be careful +- unstable)
added fixFFT3D parameter to prevent banding/posterize with limit=-1
added stabilize options (stabilize,maxr,TTstr)
added deblock options (deblock,useQED,quant1,quant2)
added new presets "light"(=low)/"heavy"(=medium) --> 5 presets (very high is 'a bit' extrem)
added check/warning for some settings
added thSAD2 & limit2 parameters for twopass=true
added overrange parameter for controling sharpness (useful for sharpening more than the source)
changed +- much code to implement twopass/MVdegrain/MT, should be bug free (I hope)
changed sharp->MVsharp & post->sharp
changed "light Smode4" --> LimitedSharpenFaster for sharp=2 (strength,Smode,soft,overshoot)
reduce max radius to 6
optimize chroma in PP stage (+20% with all PP on)
fix a bug with external p clip
fix a bug in Star&Bright Point Protection with maxdiff>0
added YV12&MOD16 restriction
changed some settings due to new presets
restriction when using MT=true: bt=1 in FFT3Dgpu & plane=4 in MVDegrainMulti (will be removed when fixed)
v0.9.05a:
changed version number: vX.XX branch -> v0.X.XX branch
added AA options (AA,useEEDI2,maxd,AAthr,method)
changed dering --> edgeclean: you can now use your own script (see docs)
fix bug with show=true
fix bug with chroma in PP stage
fix omission with chroma=false in MVanalyse
changed some settings
added changelog in .avsi
v0.9.01a:
added adapt & SS for sharpening
added dering option (dering, DRGrad, DRGthr, RGmode)
added flat areas processing (flat, AGstr, GFthr, bias)
added modX(=blocksize) checking
changed some default settings
updated documentation in .avsi
v0.8.08c:
fix bug with chroma=false & interlaced=true
v0.8.08b:
added mocomp contra-sharpening (basic contra-sharpening always usable)
v0.7.29a:
added star & bright points protection
changed some default options
added more options for FFT3D
added YV12 checking
v0.7.25a:
set chroma=false for light settings
added temporal limiter for sharpening
v0.7.24a:
replace blankclip by nop
v0.7.23a:
first public release
http://latoninf.free.fr/d9/MCTD/show_mini.png (http://latoninf.free.fr/d9/MCTD/show.png)
### ###
### Motion-Compensated Temporal Denoise: MCTemporalDenoise() ###
### ###
### v1.4.20 by "LaTo INV." ###
### ###
### 2 July 2010 ###
### ###
####################################################################################################################################
###
###
###
### /!\ Needed filters: MVTools (v2.5.10), MaskTools (v2.0a43),
### ------------------- LSFmod (v1.9), FFT3Dgpu (v0.8.2.7) or FFT3Dfilter (v2.1.1),
### TTempsmooth (v0.9.4), RemoveGrain + Repair (v1.0PR),
### Deblock (v1.2), Deblock_QED (25.may.2010), DctFilter (v0.0.1.4),
### EEDI2 (v0.9.2), SangNom (v1.0beta),
### GradFun2DBmod (v1.5), GradFun2db (v1.0), AddGrainC (v1.5).
###
###
###
### USAGE: MCTemporalDenoise(i, radius, sigma, twopass, useTTmpSm, limit, limit2, post, chroma, interlaced,
### sharp, adapt, strength, SHmode, SHmethod, Slimit, Sovershoot, Tlimit, Tovershoot,
### protect, cutoff, threshold, maxdiff,
### AA, useEEDI2, reduc, maxd, AAthr, method,
### deblock, useQED, quant1, quant2,
### edgeclean, ECrad, ECthr, ECmode,
### stabilize, maxr, TTstr,
### enhance, GFthr, AGstr, bias, temp,
### bwbh, owoh, blksize, overlap,
### GPU, fixband, bt, ncpu, precision,
### thSAD, thSAD2, thSCD1, thSCD2,
### truemotion, MVglobal, pel, pelsearch, search, searchparam, MVsharp, DCT,
### p, settings,
### show, screenW, screenH)
###
###
###
### MCTemporalDenoise's Post Processor :
### ------------------------------------
###
### USAGE: MCTemporalDenoisePP( denoised, source,
### sharp, adapt, strength, SHmode, SHmethod, Slimit, Sovershoot, Tlimit, Tovershoot,
### protect, cutoff, threshold, maxdiff,
### AA, useEEDI2, reduc, maxd, AAthr, method,
### deblock, useQED, quant1, quant2,
### edgeclean, ECrad, ECthr, ECmode,
### stabilize, maxr, TTstr,
### enhance, GFthr, AGstr, bias, temp,
### chroma, settings )
###
### This is the post-processor used internally in MCTemporalDenoise.
### It can be called externally if you want some specific functionality without denoising.
###
### Parameters & defaults are the same as MCTemporalDenoise.
### By default, all filters are OFF!
###
### "Sharp" & "Protect" options need 2 inputs:
### EX: source=last
### denoised=source.FFT3Dfilter()
### MCTemporalDenoisePP(denoised,source,...)
### The others only need "denoised".
###
####################################################################################################################################
Update 2010.07.02 : MCTemporalDenoise v1.4.20 (http://latoninf.free.fr/d9/MCTD/MCTemporalDenoise.v1.4.20.avsi)
v1.4.20 :
tweaked some settings
updated QED_Deblock version
v1.4.18 :
fixed anti-aliasing PP (was broken since v1.4.07)
updated MVTools-MaskTools-AddgrainC version
v1.4.16 :
added switch to avoid loading of unused filters
fixed a bug in anti-aliasing part
v1.4.08 :
fixed MOD16 warning when deblock=true
v1.4.07 :
improved masking in PP-stage
cleaned code (cosmetic)
v1.4.00 :
fixed bug with maxdiff=0
fixed speed issue in MCTemporalDenoisePP (+20%)
added "deblock" to MCTemporalDenoisePP
changed "flat" to "enhance"
cleaned and optimized all the code
changed some settings
updated documentation
v1.3.09 :
added MOD4 restriction
updated MVTools version
v1.3.00 :
added a post-denoising stage (see "post")
fixed a bug with fixFFT3D and defined p clip
changed "very high" to be less insane
renamed fixFFT3D to fixband
cleaned some stuff
adapted to LSFmod v1.8
v1.2.02 :
changed default gpu=true to gpu=false (set gpu=true if you want speed!!!)
adapted to LSFmod v1.7
v1.2.00 :
adapted for LSFmod v1.6 & GradFun2DBmod v1.3
changed sharp int->bool (deleted sharp=1)
v1.1.27 :
fixed a bug in MCTemporalDenoisePP with chroma=false
adapted for LSFmod v1.5
v1.1.26:
changed "flat" post-processing to use GradFun2DBmod
changed int->float for AGstr
fixed a small bug in AA
v1.1.24:
fixed a chroma bug with PP
v1.1.23:
adapted script for MvTools v2.3.0 (deleted MT & idx parameters)
changed MCTemporalDenoisePP's defaults (now the same as MCTD)
deleted safe parameter (slow & useless)
changed some minor things
v1.0.03:
fixed a bug in MCTemporalDenoisePP
v1.0.02:
changed defaults according to new LSFmod v1.2
v1.0.01:
fixed a speed issue in MCTemporalDenoisePP (introduced in beta5)
changed documentation about MCTemporalDenoisePP
v1.0.00:
first stable version
changed sharp=2, need LSFmod v1.0 !
fix a bug introduced in beta5
v1.0beta5:
added new sharpening routine & deleted LSF (SHmode,Slimit,Sovershoot,Tlimit,Tovershoot)
changed some code (cosmetic)
v1.0beta4:
changed some descriptions & blksize default (submitted by Didée)
added auto blksize setting (16:HD & 8:SD, if you want speed use 16)
v1.0beta3:
all post-processing filters are now usable as a standalone function (MCTemporalDenoisePP)
added MC-antialiasing (see reduc parameter)
v1.0beta2:
fixed MOD16 restriction (effective only if deblock=true)
small speedup/fix with limit>0 and/or protect=true&maxdiff>0
added warning about GPU & MT in the documentation
v1.0beta1:
changed name Udegrain --> MCTemporalDenoise (to be more specific and avoid confusion with chroma)
added the choice to use MVDegrain instead of MVCompensate+TTempSmooth (since the chroma bug in MVDegrain is fixed)
added twopass option to do the denoising job in two stage (very effective but slow)
added MT parameter for MVTools (be careful +- unstable)
added fixFFT3D parameter to prevent banding/posterize with limit=-1
added stabilize options (stabilize,maxr,TTstr)
added deblock options (deblock,useQED,quant1,quant2)
added new presets "light"(=low)/"heavy"(=medium) --> 5 presets (very high is 'a bit' extrem)
added check/warning for some settings
added thSAD2 & limit2 parameters for twopass=true
added overrange parameter for controling sharpness (useful for sharpening more than the source)
changed +- much code to implement twopass/MVdegrain/MT, should be bug free (I hope)
changed sharp->MVsharp & post->sharp
changed "light Smode4" --> LimitedSharpenFaster for sharp=2 (strength,Smode,soft,overshoot)
reduce max radius to 6
optimize chroma in PP stage (+20% with all PP on)
fix a bug with external p clip
fix a bug in Star&Bright Point Protection with maxdiff>0
added YV12&MOD16 restriction
changed some settings due to new presets
restriction when using MT=true: bt=1 in FFT3Dgpu & plane=4 in MVDegrainMulti (will be removed when fixed)
v0.9.05a:
changed version number: vX.XX branch -> v0.X.XX branch
added AA options (AA,useEEDI2,maxd,AAthr,method)
changed dering --> edgeclean: you can now use your own script (see docs)
fix bug with show=true
fix bug with chroma in PP stage
fix omission with chroma=false in MVanalyse
changed some settings
added changelog in .avsi
v0.9.01a:
added adapt & SS for sharpening
added dering option (dering, DRGrad, DRGthr, RGmode)
added flat areas processing (flat, AGstr, GFthr, bias)
added modX(=blocksize) checking
changed some default settings
updated documentation in .avsi
v0.8.08c:
fix bug with chroma=false & interlaced=true
v0.8.08b:
added mocomp contra-sharpening (basic contra-sharpening always usable)
v0.7.29a:
added star & bright points protection
changed some default options
added more options for FFT3D
added YV12 checking
v0.7.25a:
set chroma=false for light settings
added temporal limiter for sharpening
v0.7.24a:
replace blankclip by nop
v0.7.23a:
first public release
http://latoninf.free.fr/d9/MCTD/show_mini.png (http://latoninf.free.fr/d9/MCTD/show.png)