VideoHelp Forum
+ Reply to Thread
Page 1 of 2
1 2 LastLast
Results 1 to 30 of 44
Thread
  1. I have some 25p (partly field blended) MOV files that I am trying to restore. The overall quality is good, but it has 2 issues I can't seem to resolve:

    80MB MOV Sample [00:10]: https://www.dropbox.com/s/n2iiqgu51bpnydi/LK-MOV-sample1.rar

    Originally Posted by Smaller, compressed samples
    1. Vibrating frames - The progressive frames are slightly vibrating left/right. I used Deshaker in VirtualDub, but it did not return the expected result. Settings that I used:



    2. Some frames have white specks.





    I like using RemoveDirtMC(25, false) as it works works well, but it is not working as expected in this case. RemoveDust(1) or higher does a good job at diminishes the specks, but it also takes away significant details from the picture.

    Please advice.
    Last edited by LaKap; 10th Mar 2014 at 18:49.
    Quote Quote  
  2. Originally Posted by manono View Post
    Sample?
    Added to the main post.
    Quote Quote  
  3. Stab seems to stop the shaking. This seems to get rid of the spots while Dilip Kumar is on screen:

    SeparateFields
    Ev=SelectEven.RemoveSpotsMC3X(30,false)#Thanks, jagabo
    Od=SelectOdd.RemoveSpotsMC3X(30,false)
    Interleave(Ev,Od)
    Weave()


    But I couldn't figure out how to get rid of the white specks after the scene change. And I don't know why not either. I put Stab after the RemoveSpotsMC3X lines.
    Quote Quote  
  4. Originally Posted by manono View Post
    Stab seems to stop the shaking. This seems to get rid of the spots while Dilip Kumar is on screen:

    SeparateFields
    Ev=SelectEven.RemoveSpotsMC3X(30,false)#Thanks, jagabo
    Od=SelectOdd.RemoveSpotsMC3X(30,false)
    Interleave(Ev,Od)
    Weave()


    But I couldn't figure out how to get rid of the white specks after the scene change. And I don't know why not either. I put Stab after the RemoveSpotsMC3X lines.
    Thank you! Please upload your sample because Stab() didn't work as anticipated. Did you call Stab() with default parameters? I have found 4 different versions of Stab() on doom9: http://pastebin.com/KhQQMMrM

    Another sample with more noticeable vibration: https://www.dropbox.com/s/dvrjhatdxsgdbyv/LK-sample2.avi

    The following works better, but the face loses details. Any way to calm it down?

    Code:
    SeparateFields
    Ev=SelectEven.RemoveSpotsMC3X(30,false).RemoveDust(1)#Thanks, jagabo
    Od=SelectOdd.RemoveSpotsMC3X(30,false).RemoveDust(1)
    Interleave(Ev,Od)
    Weave()


    Last edited by LaKap; 10th Mar 2014 at 01:43.
    Quote Quote  
  5. If the specks remain only during those transitions but RemoveSpots works well elsewhere, it's easy enough to apply it only during those times. If you're willing to make your way through the entire film looking for such places. Or turn those transitions black. I'm not all that fond of them, myself. As for Stab, yes, I modified it a little bit:

    ################################################## ############################
    #Original script by g-force converted into a stand alone script by McCauley #
    #latest version from December 10, 2008 #
    ################################################## ############################

    #mirror - fill empty borders with mirrored from frame edge pixels (instead of black):
    # 0 - no mirror (default);
    # 1 - top;
    # 2 - bottom;
    # 4 - left;
    # 8 - right;
    # sum any of above - combination (15 - all ).
    # From Depan


    function Stab (clip clp, int "range", int "dxmax", int "dymax") {

    range = default(range, 5)
    dxmax = default(dxmax, 8)
    dymax = default(dymax, 8)

    temp = clp.TemporalSoften(7,255,255,25,2)
    inter = Interleave(temp.Repair(clp.TemporalSoften(1,255,25 5,25,2)),clp)
    mdata = DePanEstimate(inter,range=range,trust=0,dxmax=dxma x,dymax=dymax)

    DePan(inter,data=mdata,offset=-1,Mirror=5)
    SelectEvery(2,0) }


    Any way to calm it down?
    Yes, don't use RemoveDust. Here's the script I used for the second sample:

    ffindex("LK-sample2.avi", demuxer="lavf")
    FFVideoSource("LK-sample2.avi")
    SeparateFields
    EV=SelectEven.RemoveSpotsMC3X(30,false)
    Od=SelectOdd.RemoveSpotsMC3X(30,false)
    Interleave(Ev,Od)
    Weave()
    Stab()
    Image Attached Files
    Last edited by manono; 10th Mar 2014 at 02:27.
    Quote Quote  
  6. Thanks for the modified function. It does seem to make a difference, but not completely get rid of it. Would you happen to know could have caused this jitter, and if it is possible to completely get rid of it by either modifying stab further or by making multiple passes of Stab()?

    As for the spots, I am trying to modify the RemoveDust function. I have never done so before, but no harm in playing with it. Anything else I could try without damaging the details?
    Quote Quote  
  7. Stab is designed to fix gate weave - the wobbly effect seen when the sprocket holes of film get enlarged through use. I don't know if your source is caused by that or not as it doesn't look exactly like it. Anyway, since what you supplied isn't the DVD, you get what you pay for. Plus, Indian DVDs are the worst in the world. There are lots of other AviSynth filters designed to get rid of specks and dirt on film. RemoveDust is old and one of the last I'd try.

    ...if it is possible to completely get rid of it by either modifying stab further or by making multiple passes of Stab()?
    You could always try yourself.
    Quote Quote  
  8. Originally Posted by manono View Post
    Stab is designed to fix gate weave - the wobbly effect seen when the sprocket holes of film get enlarged through use. I don't know if your source is caused by that or not as it doesn't look exactly like it. Anyway, since what you supplied isn't the DVD, you get what you pay for. Plus, Indian DVDs are the worst in the world. There are lots of other AviSynth filters designed to get rid of specks and dirt on film. RemoveDust is old and one of the last I'd try.

    ...if it is possible to completely get rid of it by either modifying stab further or by making multiple passes of Stab()?
    You could always try yourself.
    Thanks for the explanation. I had a intuition that gate weave was causing this vibration, but I am not confident either. Stab does seem to reduce it a little.

    I will experiment with other combinations for speck removal. Thanks for your input.
    Quote Quote  
  9. Stab, or any other deshaker, isn't going work with video like that. Different parts of the picture are moving differently. If it managed to deshake one part of the frame the other parts would be shaking.

    RemoveSpotsMC isn't going to get rid of the spots in that fast panning shot, there's too much change from frame to frame.
    Quote Quote  
  10. Member PuzZLeR's Avatar
    Join Date
    Oct 2006
    Location
    Toronto Canada
    Search Comp PM
    Although there are powerful methods described in this thread, I've removed spots like that manually when such algorithms didn't detect them.

    It was successful, but not easy or quick. You can do it through a video editor, or even a photo editor (if you don't mind the color space conversion for those few frames), but I was wondering if there's an easier method using a tool with a simple scrub through VirtualDub and/or Avisynth preview?
    I hate VHS. I always did.
    Quote Quote  
  11. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    Originally Posted by LaKap View Post
    Sample 1 [00:05]: https://www.dropbox.com/s/3on4p38svxx98lk/LK-sample.avi

    Sample 2 [00:05]: https://www.dropbox.com/s/dvrjhatdxsgdbyv/LK-sample2.avi

    1. Vibrating frames - The progressive frames are slightly vibrating left/right. I used Deshaker in VirtualDub, but it did not return the expected result. Settings that I used:
    No deshaker or motion interpolation filter will help. The videos were deinterlaced and alternate frames were discarded. The sample1.avi has stutter back-and-forth because the field order was reversed during deinterlace.

    Standard definition PAL AVCHD is usually 25i interlaced.
    Last edited by sanlyn; 19th Mar 2014 at 03:27.
    Quote Quote  
  12. Originally Posted by jagabo View Post
    Stab, or any other deshaker, isn't going work with video like that. Different parts of the picture are moving differently. If it managed to deshake one part of the frame the other parts would be shaking.

    RemoveSpotsMC isn't going to get rid of the spots in that fast panning shot, there's too much change from frame to frame.
    I tried the following, but it doesn't do what I was hoping it would :

    Code:
    Stab()
    turnleft.Stab().turnright
    There are some specks on regular frames as well which RemoveSpotsMC() was unable to remove for some reason. It dims them a little bit, but does not completely remove like it has in previous projects of mine.

    Originally Posted by PuzZLeR View Post
    Although there are powerful methods described in this thread, I've removed spots like that manually when such algorithms didn't detect them.

    It was successful, but not easy or quick. You can do it through a video editor, or even a photo editor (if you don't mind the color space conversion for those few frames), but I was wondering if there's an easier method using a tool with a simple scrub through VirtualDub and/or Avisynth preview?
    Would you recommend Photoshop or is there a better tool for this kind of work?

    Originally Posted by sanlyn View Post
    Originally Posted by LaKap View Post
    Sample 1 [00:05]: https://www.dropbox.com/s/3on4p38svxx98lk/LK-sample.avi

    Sample 2 [00:05]: https://www.dropbox.com/s/dvrjhatdxsgdbyv/LK-sample2.avi

    1. Vibrating frames - The progressive frames are slightly vibrating left/right. I used Deshaker in VirtualDub, but it did not return the expected result. Settings that I used:
    No deshaker or motion interpolation filter will help. The videos were deinterlaced and alternate frames were discarded. The sample1.avi has stutter back-and-forth because the field order was reversed during deinterlace.

    Standard definition PAL AVCHD is usually 25i interlaced.
    Thanks for the information. The video is mostly progressive with random interlaced sequences, especially the songs/dances and some high motion scenes for fluid movement I suppose.
    Quote Quote  
  13. Originally Posted by LaKap View Post
    The video is mostly progressive with random interlaced sequences, especially the songs/dances and some high motion scenes for fluid movement I suppose.
    It's a movie, right? Then there should be no interlacing. It may be phase-shifted in parts. But it's just more evidence of it coming from a crap Indian DVD. No, not for fluid movement, not if it's from film. From incompetence. If you uploaded a small piece with the interlacing we could have a look.
    Would you recommend Photoshop or is there a better tool for this kind of work?
    I use frame interpolators for this kind of thing. They create a new frame (or frames) from the good frames on either side. If there's a lot of movement they don't work so well, but for reasonably static or slow movement frames the results can be quite good. But this depends on you being willing to go through the entire film to find what needs fixing. This is not automatic at all.
    Quote Quote  
  14. What is the source of these MOV files ? Were they derived from a DVD ?

    Was anything else done to the AVI samples you uploaded (besides re-encoding) ?
    Quote Quote  
  15. Originally Posted by manono View Post
    Would you recommend Photoshop or is there a better tool for this kind of work?
    I use frame interpolators for this kind of thing. They create a new frame (or frames) from the good frames on either side. If there's a lot of movement they don't work so well, but for reasonably static or slow movement frames the results can be quite good. But this depends on you being willing to go through the entire film to find what needs fixing. This is not automatic at all.
    I understand. I will look up some frame interpolation techniques to make the best use of it. I am not experienced with MVTools, but I will go through it today. For now, I have used QTGMC to get rid of it and the result is quite nice.

    Originally Posted by poisondeathray View Post
    What is the source of these MOV files ? Were they derived from a DVD ?

    Was anything else done to the AVI samples you uploaded (besides re-encoding) ?
    I am not aware what the source is because we were recently handed over this 5 - 10 year old data for restoration. Judging from the uncropped and tilted frame sequences, the source does not appear to be a DVD.

    I encoded it with x264 to give you an idea what I am working with. I didn't think people would be willing to download big samples. I will add direct MOV clips in the main post in a few moments and notify you guys. I will be sure to do the same in the future.
    Last edited by LaKap; 10th Mar 2014 at 18:09.
    Quote Quote  
  16. Originally Posted by LaKap View Post
    There are some specks on regular frames as well which RemoveSpotsMC() was unable to remove for some reason. It dims them a little bit, but does not completely remove like it has in previous projects of mine.
    You could try using RemoveSpots() in addition to RemoveSpotsMC(). Or even just multiple calls to RemoveSpotsMC().
    Last edited by jagabo; 10th Mar 2014 at 16:45.
    Quote Quote  
  17. Originally Posted by jagabo View Post
    Originally Posted by LaKap View Post
    There are some specks on regular frames as well which RemoveSpotsMC() was unable to remove for some reason. It dims them a little bit, but does not completely remove like it has in previous projects of mine.
    You could try using RemoveSpots() in addition to RemoveSpotsMC().
    Will do. Thank you!

    Quick question about RemoveDust(). I realize it is an old plugin, but effective for speck removal and overwhelming on details. I am wondering if there is an alternative to RemoveDust which does better decision making to handle certain white/gray pixels and leave the details/useful grain alone?

    P.S. I am well aware of the garbage in, garbage out reasoning. Just want to find the limit to which we can restore this video.
    Last edited by LaKap; 10th Mar 2014 at 18:42.
    Quote Quote  
  18. Just a note - the MOV is uncompressed 8bit 422 . You can reduce the filesize about 1/2 or more just by using archiving software (e.g. winrar, 7zip, zip etc...) . People are more likely willing to download a 100MB sample, than a 200MB sample

    It has field blends, but this sequence doesn't have the "vibrating" pattern as featured in the 1st two

    That pattern in the 1st two samples looks to me like someone attempted stabilization, but not on full frame (motion block stabilization) . Those are the type of artifacts and partial frame morphing that you get
    Quote Quote  
  19. Originally Posted by poisondeathray View Post
    Just a note - the MOV is uncompressed 8bit 422 . You can reduce the filesize about 1/2 or more just by using archiving software (e.g. winrar, 7zip, zip etc...) . People are more likely willing to download a 100MB sample, than a 200MB sample

    It has field blends, but this sequence doesn't have the "vibrating" pattern as featured in the 1st two

    That pattern in the 1st two samples looks to me like someone attempted stabilization, but not on full frame (motion block stabilization) . Those are the type of artifacts and partial frame morphing that you get
    Point noted. I have updated the link.

    Only the progressive parts have the vibrating pattern. I used QTGMC to get rid of the blending.
    Last edited by LaKap; 10th Mar 2014 at 18:43.
    Quote Quote  
  20. Member PuzZLeR's Avatar
    Join Date
    Oct 2006
    Location
    Toronto Canada
    Search Comp PM
    Originally Posted by LaKap
    Would you recommend Photoshop or is there a better tool for this kind of work?
    If it's a few frames, or a small sequence, just load the video into your video editor, extract the frame as an image, load into PhotoShop, then use the Healing Brush Tool. Resave the image(s), load back into your video editor, mask over the original frame in the timeline as an overlay. Render.

    Keep in mind, you are going from YUV->RGB->YUV, but working in lossless will produce better results.

    But it's still work, and not automatic.

    Then again, this is how some studio level software, priced 10K-100K US$, works (with auto and manual modes) - directly from all the project's frames loaded as images on a server. However, those folks do it for a living, or when profitable, and worth it for the professional productions at that stage.
    I hate VHS. I always did.
    Quote Quote  
  21. Member PuzZLeR's Avatar
    Join Date
    Oct 2006
    Location
    Toronto Canada
    Search Comp PM
    Originally Posted by manono
    I use frame interpolators for this kind of thing. They create a new frame (or frames) from the good frames on either side. If there's a lot of movement they don't work so well, but for reasonably static or slow movement frames the results can be quite good. But this depends on you being willing to go through the entire film to find what needs fixing. This is not automatic at all.
    MVTools is indeed another option - any particular function, or even script, I can get you (or anyone else) to suggest?

    Again, we're assuming manual solutions for residual spots that failed detection from automatic solutions.

    Then again, if one doesn't mind the processing, you can run a script at least two dozen times if it's not too damaging on a video.
    I hate VHS. I always did.
    Quote Quote  
  22. Originally Posted by PuzZLeR View Post
    Originally Posted by LaKap
    Would you recommend Photoshop or is there a better tool for this kind of work?
    If it's a few frames, or a small sequence, just load the video into your video editor, extract the frame as an image, load into PhotoShop, then use the Healing Brush Tool. Resave the image(s), load back into your video editor, mask over the original frame in the timeline as an overlay. Render.

    Keep in mind, you are going from YUV->RGB->YUV, but working in lossless will produce better results.

    But it's still work, and not automatic.

    Then again, this is how some studio level software, priced 10K-100K US$, works (with auto and manual modes) - directly from all the project's frames loaded as images on a server. However, those folks do it for a living, or when profitable, and worth it for the professional productions at that stage.
    The tiny white specks are on 75% of the frames so manual work won't be feasible, but I will certainly look in to it for future projects. Thank you!
    Quote Quote  
  23. Photoshop extended can open video directly , and export MOV or AVI directly . Another commonly used tool is After Effects - very useful layer based masking/ rotoscoping/ motion tracking with some photoshop tools like clone stamp. It depends on how much effort you want to put into things

    I would enquire about the workflow history for this MOV, and if anything else is available closer to the original, original source

    The tiny white specks are on 75% of the frames so manual work won't be feasible, but I will certainly look in to it for future projects.
    I usually use multiple layers . Because the "auto" dirt removal tools (avisynth has some very good ones) often soften the picture too much. Or sometimes they remove "vital" parts, like eyeballs or other critical elements - and it requires some manual attention or refinement. So I stack lightly filtered versions with strongly filtered versions. You just paint on the alpha channel the defects that remain on the "lightly" filtered version to remove the remaining defects . This way you keep as much detail as possible, yet still automatically remove most of the "dirt"
    Quote Quote  
  24. Member PuzZLeR's Avatar
    Join Date
    Oct 2006
    Location
    Toronto Canada
    Search Comp PM
    Originally Posted by LaKap
    The tiny white specks are on 75% of the frames so manual work won't be feasible, but I will certainly look in to it for future projects. Thank you!
    Yup. It's only a feasible solution if it's for a few odd frames, or you do it for a living, or it's for a cherished most precious project worth the time.
    I hate VHS. I always did.
    Quote Quote  
  25. Member PuzZLeR's Avatar
    Join Date
    Oct 2006
    Location
    Toronto Canada
    Search Comp PM
    Originally Posted by poisondeathray View Post
    Photoshop extended can open video directly , and export MOV or AVI directly . Another commonly used tool is After Effects - very useful masking/ rotoscoping/ motion tracking with some photoshop tools like clone stamp. It depends on how much effort you want to put into things
    That's cool. I haven't upgraded my PhotoShop in years, and use VideoStudio for most of my edits, so this is news to me - this can shorten the workflow's cycle tremendously (which it sorely could benefit from).
    I hate VHS. I always did.
    Quote Quote  
  26. That "vibration", partial frame morphing is really #%^$^ annoying. As mentioned earlier, no "automatic" stabilizer will fix it.

    The only way I can think of "fixing" it is with a lot of manual work, masking and layers .

    Only the progressive parts have the vibrating pattern. I used QTGMC to get rid of the blending.
    That suggests a lot - that it's introduced from an error in processing . Another reason to double check the workflow history

    QTGMC won't get "rid" of the blending, it will probably introduce more blending (The "T" in QTGMC stands for temporal)
    Quote Quote  
  27. Originally Posted by poisondeathray View Post
    That "vibration", partial frame morphing is really #%^$^ annoying. As mentioned earlier, no "automatic" stabilizer will fix it.

    The only way I can think of "fixing" it is with a lot of manual work, masking and layers .
    I will do some test encodes to see what the final output with rest of the script looks like. If it is visually distracting, then perhaps manual work will be the way to go. It would be helpful if you could please recommend some guides/videos to get familiar with the manual work you have mentioned above.
    Quote Quote  
  28. Oops, nevermind
    Quote Quote  
  29. Originally Posted by LaKap View Post
    If it is visually distracting, then perhaps manual work will be the way to go. It would be helpful if you could please recommend some guides/videos to get familiar with the manual work you have mentioned above.

    Well it's distracting to me, but your average viewer might not notice it that much. Avergae viewer probably don't even notice dirt/scratches that much. So I guess it depends who your audience is, and their expectations

    Which manual work specifically? Did you mean treating the "vibrating" frames, or refining the dirt removal with layers and compositing ? It's a lot to go over - a lot of it falls under "advanced" - because there are many concepts and tricks used here , and each scene is slightly different and might use slightly different techniques. It's not one or two tutorials, but maybe ten or twenty or more that you have to take some concepts from. Even if you're familar with the tools and jargon used, there is quite a bit of a learning curve and a lot of manual work involved. I use avisynth because it reduces the amount of manual work in many situations. Very useful. I can outline how I would approach it if you like
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!