I'm not sure how to go about this but I asked here before about how to remove comets for this video. None of the solutions got rid of the comets. Normally on the small round type of comets I can use RemoveSpots() after QTGMC and it will remove them then I weave to get an interlaced picture again. However that has almost no effect on the line comets in my video. The only way I can remove all the comets is if I do 12 passes of RemoveSpots() before QTGMC but that loses a lot of picture quality.
I've also got a lower quality video that I'm trying to remove comets on. It's only a few secs long so you can see the interlacing issues clearly. It's an uncompressed AVI. The only thing I've done to it is use CPU=6 from MPEG2Source.
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 30 of 113
Thread
-
Last edited by VideoFanatic; 3rd Oct 2013 at 21:10.
-
This removed 90 percent of them:
Code:Separatefields() RemoveSpotsMC() Weave()
-
This removed almost all traces of them:
Code:function RemoveDust(clip input, int _mode) { repmode = 16 clensed = Clense(input) rep=Repair(clensed, input, mode=repmode) return RemoveGrain(rep, mode=_mode) } SeparateFields() RemoveDust(3) # optional: Sharpen(0.5, 0) Weave()
-
The documentation for dll's associated with RemoveDirt (removegrain.dll, clense.dll, etc.) is really sketchy. I've picked up piecemeal settings from Doom9 going back several years, but it's rather incomplete. If anyone runs across something that's, well, a little more complete than a cryptic sentence, pass it along. I see clense used frequently, but no explanation whatsoever. Seems like a handy plugin.
Last edited by sanlyn; 21st Mar 2014 at 10:07.
-
-
OK I did some tests:
Video 1 with McTemporalDenoise + QTGMC + RemoveSpots + AddgrainC + Vinverse
Video 2 as 1 but with Cleanse script you posted + no RemoveSpots or AddgrainC
Video 3 as 2 but also includes 12 passes of RemoveSpots before McTemporalDenoise
The Twelve passes of RemoveSpots video looks better than the video with Cleanse however it encodes slowly due to 12 passes of RemoveSpots - is there no way to use 1 pass and tell it to increase the strength?
The Cleanse video seems to have interlacing artifacts and it's destroyed the ring ropes. Have I used your script correctly?
The video with Twelve RemoveSpots() passes looks fine and similar to Video 1. However I've noticed on other videos it destroys fine detail such as a man wearing checkoured pants - the checkered pattern was destroyed.
I'm think I tried RemoveSpotsMC() before but it wouldn't work in Multi Threaded. I'll try it again. Could you please give me the installation files for that extension as I couldn't get it working with the files I downloaded off a webpage.
Video 1 Script
Code:setmtmode(5,9) Mpeg2Source("E:\2 = New\Black Comets (Raw Oct 17 1994).d2v", CPU=6) setmtmode(2) McTemporalDenoise(settings="medium", interlaced=true) AssumeTFF() QTGMC(preset="Super Fast") Vinverse() RemoveSpots() AddGrainC(var=1.0,uvar=1.0) SeparateFields() SelectEvery(4,0,3) Weave() Tweak(Bright=-25, Sat=1.0, Cont=1.05, Hue=10, Coring=False) ConvertToRGB32(interlaced=true) RGBAdjust(1.0,1.0,1.05) converttoyv12(interlaced=true) Crop(6,0,-12,-24) AddBorders(8,12,10,12, $000000)
As 1 but with cleanse script (that you posted) above McTemporalDenoise and without the red text
Video 3 Script
As 1 but with 12 passes of RemoveSpots() like this below McTemporalDenoise:
RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() RemoveSpots() -
Try this script i think you will like it:
function RemoveDust(clip input, int _mode)
{
repmode = 16
clensed = Clense(input)
rep=Repair(clensed, input, mode=repmode)
return RemoveGrain(rep, mode=_mode)
}
MPEG2Source("D:\Black Comets.d2v", cpu=0)
RemoveDust(last, 3)
note: use separatefields+weave if interlaced, should be better
original topic:
https://forum.videohelp.com/threads/323988-Looking-for-a-filter-to-mask-out-white-specs...ighlight=whiteLast edited by themaster1; 10th Aug 2013 at 11:21.
*** DIGITIZING VHS / ANALOG VIDEOS SINCE 2001**** GEAR: JVC HR-S7700MS, TOSHIBA V733EF AND MORE -
This was the original RemoveDust script Jagabo suggested along with the rest of my script:
Code:setmtmode(5,9) Mpeg2Source("E:\2 = New\Black Comets (Raw Oct 17 1994).d2v", CPU=6) setmtmode(2) function RemoveDust(clip input, int _mode) { repmode = 16 clensed = Clense(input) rep=Repair(clensed, input, mode=repmode) return RemoveGrain(rep, mode=_mode) } SeparateFields() RemoveDust(last, 3) Weave() McTemporalDenoise(settings="medium", interlaced=true) AssumeTFF() QTGMC(preset="Super Fast") Vinverse() SeparateFields() SelectEvery(4,0,3) Weave() Tweak(Bright=-25, Sat=1.0, Cont=1.05, Hue=10, Coring=False) ConvertToRGB32(interlaced=true) RGBAdjust(1.0,1.0,1.05) converttoyv12(interlaced=true) Crop(6,0,-12,-24) AddBorders(8,12,10,12, $000000)
Jagabo is it normal for the script to cause interlacing artifacts to appear?Would you mind uploading the RemoveSpotsMC extensions files you have so I can test RemoveSpotsMC? -
This is what I have for RemoveSpotsMC:
Code:function RemoveSpotsMC(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.RemoveSpots() clp=clp.SelectEvery(3,1) return clp }
-
I don't know what I did wrong but it didn't seem to remove any comets. I don't have any RemoveSpotsMC files in the extensions folder. Here's my script:
Code:setmtmode(5,9) Mpeg2Source("E:\2 = New\Black Comets (Raw Oct 17 1994).d2v", CPU=6) setmtmode(2) Separatefields() function RemoveSpotsMC(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.RemoveSpots() clp=clp.SelectEvery(3,1) return clp } Weave() McTemporalDenoise(settings="medium", interlaced=true) AssumeTFF() QTGMC(preset="Super Fast") Vinverse() SeparateFields() SelectEvery(4,0,3) Weave() Tweak(Bright=-25, Sat=1.0, Cont=1.05, Hue=10, Coring=False) # Tweak(Bright=0, Sat=1.0, Cont=1.0, Hue=0, Coring=False) ConvertToRGB32(interlaced=true) RGBAdjust(1.0,1.0,1.05) converttoyv12(interlaced=true) Crop(6,0,-12,-24) AddBorders(8,12,10,12, $000000)
Last edited by VideoFanatic; 10th Aug 2013 at 12:59.
-
Does anyone have any knowledge of making extensions as I'd like to hire someone to build a comet removal extension that works as intended without losing too much detail?
-
Of course it didn't -- you never called it. "function RemoveSpotsMC(...){...}" defines the function, it doesn't call it. What you want is something like:
Code:setmtmode(5,9) function RemoveSpotsMC(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.RemoveSpots() clp=clp.SelectEvery(3,1) return clp } Mpeg2Source("E:\2 = New\Black Comets (Raw Oct 17 1994).d2v", CPU=6) setmtmode(2) Separatefields() RemoveSpotsMC() Weave() McTemporalDenoise(settings="medium", interlaced=true) AssumeTFF() QTGMC(preset="Super Fast") Vinverse() SeparateFields() SelectEvery(4,0,3) Weave() Tweak(Bright=-25, Sat=1.0, Cont=1.05, Hue=10, Coring=False) # Tweak(Bright=0, Sat=1.0, Cont=1.0, Hue=0, Coring=False) ConvertToRGB32(interlaced=true) RGBAdjust(1.0,1.0,1.05) converttoyv12(interlaced=true) Crop(6,0,-12,-24) AddBorders(8,12,10,12, $000000)
Last edited by jagabo; 10th Aug 2013 at 17:45.
-
By the way, the RemoveDust() function I posted isn't mine. It's from a post I saw around here some time ago. It's a slight modification of RemoveDust() from the RemoveGrain package. You should look at modifying the call to RemoveGrain() to see if you can find a compromise that removes the comets without removing the thin ropes.
-
I tried that script you posted and it says invalid arguments to function RemoveSpotsMC (the RemoveSpotsMC() line). Just wondering as well, is it not possible to put the function in an avsi file then in my script I only need the RemoveSpotsMC() line to call it?
-
script error: invalid arguments for RemoveSpotsMc, any idea why it return this message ?
Last edited by themaster1; 11th Aug 2013 at 07:32.
*** DIGITIZING VHS / ANALOG VIDEOS SINCE 2001**** GEAR: JVC HR-S7700MS, TOSHIBA V733EF AND MORE -
Would you mind uploading the RemoveSpotsMC dependants you have please that way I know I have the correct ones?
-
Last edited by jagabo; 11th Aug 2013 at 08:17.
-
MVTools v2.5.11.3 is dated 19th September 2011. I can't see the date you mentioned on that site. I did a search on Google but I can't find that version you mentioned. Could you please upload it for me?
-
OK I tried the version you uploaded and it's still not working! Are there any other extensions that RemoveSpotsMC uses that you could upload for me to try please? I'll make sure I keep my existing extensions in a separate folder in case I need to restore them.
-
Did you notice that RemoveSpotsMC() uses RemoveSpots()? So you have to import RemoveSpots() too.
Or try specifying the video and the grey option:
RemoveSpotsMC(last, 0) -
That works. Unfortunately the video fails to encode in Simple x264 Launcher and HcEncoder yet it works in VirutalDub. In the other programs it doesn't give any clues in the error message to what's causing the problem. Any suggestions on how to get it working?
-
If you load your script into VirtualDub and scrub around a lot I bet you'll have a problem too. Try using SetMtMode(5) or 4. Yes, it will be slower. But not slower than not being able to encode at all.
-
Previously I was doing this:
setmtmode(5,9)
Mpeg2Source("E:\2 = New\Black Comets (Raw Oct 17 1994).d2v", CPU=6)
setmtmode(2)
I kept the bottom line. For the top line I tried all of the following:
setmtmode(5,0) or setmtmode(5)
setmtmode(4,0) or setmtmode(4)
Still no luck. I even tried it without multhreaded and it still won't work! It only encodes in VirtualDub and I can load the video in AvsPmod but encodings in HcEncoder and Simple x264 Launcher don't work.
Thanks for your help with this though. At least now I know I've done everything I can to remove comets but it's just not possible to do so in the way I want.Last edited by VideoFanatic; 11th Aug 2013 at 10:43.
-
You need to change the second SetMtMode, not the first. Also try changing the number of threads. Sometimes that will work.
-
Yes but if it doesn't work in non-multithreaded (without both setmtmode lines) then why would it work in multi-threaded?
-
I have made a decomet plugin already.
http://forum.doom9.org/showthread.php?t=165386&highlight=decomet
Similar Threads
-
Possible to use avisynth in Sony Vegas? and is there a ColorMill plugin for
By gil900 in forum RestorationReplies: 2Last Post: 2nd Feb 2013, 12:53 -
Grain Removal filters for Avisynth
By Legendkiller in forum EditingReplies: 0Last Post: 10th Oct 2011, 21:29 -
Best AviSynth plugin for deinterlacing? (general consensus) ...
By takearushfan in forum Video ConversionReplies: 5Last Post: 28th Apr 2011, 23:59 -
Which Avisynth deinterlace plugin provides the best result?
By Mdoodm1000 in forum Video ConversionReplies: 7Last Post: 21st Jun 2010, 18:41 -
How do I create my own custom FreeFrame plugin?
By SpotFinder in forum Newbie / General discussionsReplies: 0Last Post: 11th Jun 2009, 12:38