View Single Post
Old 17th February 2011, 12:32   #24  |  Link
markanini
Registered User
 
Join Date: Apr 2006
Posts: 299
Quote:
Originally Posted by Didée View Post
Code:
DGDecode_mpeg2source("... .d2v", info=3)
ColorMatrix(hints=true, threads=0)
src = last

SetMTMode (2)

preNR = src.FFT3DFilter( with_appropriate_settings )  # as an example

preNR_super = preNR.MSuper(pel=2, sharp=1)
src_super   = src.MSuper(pel=2, sharp=1, levels=1)

backward_vec2 = MAnalyse(preNR_super, isb = true,  delta = 2, overlap=4)
backward_vec1 = MAnalyse(preNR_super, isb = true,  delta = 1, overlap=4)
forward_vec1  = MAnalyse(preNR_super, isb = false, delta = 1, overlap=4)
forward_vec2  = MAnalyse(preNR_super, isb = false, delta = 2, overlap=4)

src.MDegrain2(src_super, backward_vec1,forward_vec1,backward_vec2,forward_vec2,thSAD=400)
The prefiltering should be just strong enough to eliminate all noise.
This script works great for me with FFT3DGPU as prefilter whereas TemporalDegrain can't take a change of the pel parameter without breaking. Seems faster as well but it may be my imagination....

Here's my modified version I use just for real-time viewing on sub-SD material(youtube etc). It steals many defualt setting from TemporalDegrain :
Code:
src = last
preNR = src.FFT3dGPu(sigma=16,sigma2=10,sigma3=6,sigma4=4,bw=16,bh=16)
preNR_super = preNR.MSuper(pel=1, sharp=2)
src_super   = src.MSuper(pel=1, sharp=2, levels=1)
backward_vec2 = MAnalyse(preNR_super, isb = true,  delta = 2, overlap=4,blksize=16)
backward_vec1 = MAnalyse(preNR_super, isb = true,  delta = 1, overlap=4,blksize=16)
forward_vec1  = MAnalyse(preNR_super, isb = false, delta = 1, overlap=4,blksize=16)
forward_vec2  = MAnalyse(preNR_super, isb = false, delta = 2, overlap=4,blksize=16)
src.MDegrain2(src_super, backward_vec1,forward_vec1,backward_vec2,forward_vec2,thSAD=200)
FWIW

Last edited by markanini; 17th February 2011 at 12:35.
markanini is offline   Reply With Quote