Was just wondering what are the best scripts to use for these filters:
RemoveDirt & Descratch
#1 to mask out VHS & Betamax drop outs
#2 To clean up old video shot on film that have:
A) An odd white spec in the video (Which doesn't also remove other white objects such as a baseball)
B) Large random spots in an old film
B) A damage frame with lines and black & white random dots in the video.
Try StreamFab Downloader and download from Netflix, Amazon, Youtube! Or Try DVDFab and copy Blu-rays! or rip iTunes movies!
+ Reply to Thread
Results 1 to 2 of 2
Thread
-
-
Descratch IMO has limited value
RemoveDirtMC does a good job with most those things you listed if the defects or damage occur randomly and in 1 frame or field . It uses motion estimation to look at the differences between frames. It tends to be more selective and less damaging than the vanilla RemoveDirt. If you duplicate frames, you have to remove them first otherwise it won't detect the defects . Similarly if defect appears in same position in 2 adjacent frames, it won't detect it.
You can adjust the strength , start low always and work your way up. If you have complex material, you can mask and combine a strongly filtered video with portions of weak filtered video. It doesn't work well with very large defects (like 1/2 the frame). Another approach to large defects is to reconstruct the entire frame (use mflowinter to generate the "inbetween" frame from surrounding "good" frames)
If you want to preserve interlacing, apply it to odd/even fields , interleave and weave
function RemoveDirt(clip input, int limit, bool _grey)
{
clensed=input.Clense(grey=_grey, cache=4)
alt=input.RemoveGrain(2)
return RestoreMotionBlocks(clensed,input,alternative=alt, pthreshold=6,cthreshold=8, gmthreshold=40,dist=3, dmode=2,debug=false,noise=limit,noisy=4, grey=_grey)
# Alternative settings
# return RestoreMotionBlocks(clensed,input,alternative=alt, pthreshold=4,cthreshold=6, gmthreshold=40,dist=1,dmode=2,debug=false,noise=li mit,noisy=12,grey=_grey,show=true)
# return RestoreMotionBlocks(clensed,input,alternative=alt, pthreshold=6,cthreshold=8, gmthreshold=40,dist=3,tolerance= 12,dmode=2,debug=false,noise=limit,noisy=12,grey=_ grey,show=false)
}
function RemoveDirtMC(clip,int limit, bool "_grey")
{
_grey=default(_grey, false)
limit = default(limit,6)
i=MSuper(clip,pel=2)
bvec = MAnalyse(i,isb=false, blksize=8, delta=1, truemotion=true)
fvec = MAnalyse(i,isb=true, blksize=8, delta=1, truemotion=true)
backw = MFlow(clip,i,bvec)
forw = MFlow(clip,i,fvec)
clp=interleave(backw,clip,forw)
clp=clp.RemoveDirt(limit,_grey)
clp=clp.SelectEvery(3,1)
return clp
}
Similar Threads
-
Avisynth filter RemoveDirt not doing anything
By ThePhoenix in forum Newbie / General discussionsReplies: 10Last Post: 4th Mar 2012, 18:40 -
Please suggest good AviSynth Anti-Aliasing & Rainbow Remover scripts
By VideoFanatic in forum RestorationReplies: 0Last Post: 30th Nov 2011, 06:54 -
Are these scripts right?
By php111 in forum Newbie / General discussionsReplies: 7Last Post: 21st Jan 2008, 17:10 -
Scripts for Conversion
By jwfc in forum Newbie / General discussionsReplies: 2Last Post: 6th Nov 2007, 06:50