VideoHelp Forum
+ Reply to Thread
Results 1 to 19 of 19
Thread
  1. Video Restorer lordsmurf's Avatar
    Join Date
    Jun 2003
    Location
    dFAQ.us/lordsmurf
    Search Comp PM
    I need the rainbows removed. I'm not liking what I'm doing, it still has rainbow bits.

    What are your ideas here?
    Image Attached Files
    Quote Quote  
  2. Member
    Join Date
    May 2005
    Location
    Australia-PAL Land
    Search Comp PM
    I'll avago. Neat.
    Image Attached Files
    Quote Quote  
  3. well hard to test something with such a odd frame size 220 x339

    try this


    AVISource("C:\flying era head noise.avi")
    assumetff()
    addborders(0,0,0,1)
    #spline36resize(404,last.width)
    ConvertToYV16(interlaced=true)
    orig=last
    ev=orig.assumetff().separatefields().selecteven()
    od=orig.assumetff().separatefields().selectodd()
    ev
    ue_chroma = UToY(ev).blur(0,1.5).ttempsmooth(maxr=6,lthresh=15 0, strength=6).KNLMeansCL(d=3,a=8,s=2,h=6)
    ve_chroma = VToY(ev).blur(0,1.5).ttempsmooth(maxr=6,lthresh=15 0, strength=6).KNLMeansCL(d=3,a=8,s=2,h=6)
    YToUV(ue_chroma, ve_chroma)
    MergeLuma(ev)
    ev_filtered=last
    od
    uo_chroma = UToY(od).blur(0,1.5).ttempsmooth(maxr=6,lthresh=15 0, strength=6).KNLMeansCL(d=3,a=8,s=2,h=6)
    vo_chroma = VToY(od).blur(0,1.5).ttempsmooth(maxr=6,lthresh=15 0, strength=6).KNLMeansCL(d=3,a=8,s=2,h=6)
    YToUV(uo_chroma, vo_chroma)
    MergeLuma(od)
    od_filtered=last
    interleave(ev_filtered,od_filtered)
    assumefieldbased().assumetff().weave()
    Last edited by themaster1; 22nd Apr 2024 at 10:02.
    *** DIGITIZING VHS / ANALOG VIDEOS SINCE 2001**** GEAR: JVC HR-S7700MS, TOSHIBA V733EF AND MORE
    Quote Quote  
  4. Member
    Join Date
    May 2005
    Location
    Australia-PAL Land
    Search Comp PM
    Themaster, I'm getting this on your script:

    Image
    [Attachment 78540 - Click to enlarge]
    Quote Quote  
  5. Spotless only applied to chroma probably works.
    users currently on my ignore list: deadrats, Stears555
    Quote Quote  
  6. I had good luck with Spotless when I used it on chroma rainbows. Scroll down to my post (#8) to see the before/after, along with the script I used.

    https://forum.videohelp.com/threads/398864-Need-help-on-Avisynth#post2595644
    Quote Quote  
  7. Member
    Join Date
    May 2005
    Location
    Australia-PAL Land
    Search Comp PM
    Not bad, John.
    Quote Quote  
  8. Video Restorer lordsmurf's Avatar
    Join Date
    Jun 2003
    Location
    dFAQ.us/lordsmurf
    Search Comp PM
    Alwyn, thanks for trying. This task is probably beyond what NeatVideo can do.

    __________________

    john, I get this on your script

    Click image for larger version

Name:	err.jpg
Views:	58
Size:	22.0 KB
ID:	78552

    line 3 is
    Code:
    output = SpotLess(ThSAD=1000,ThSAD2=1000,RadT=4,Chroma=true,BlkSz=8,OLap=4,Tm=true)
    My understanding is that was more for rainbowing from composite, not as much head-switching type errors.

    __________________


    themaster1, and oldie but goodie, I forgot to try that, thanks.

    Well, only 3 hours left for a 6 minute clip.
    But I'm running it now.
    Quote Quote  
  9. Member
    Join Date
    May 2005
    Location
    Australia-PAL Land
    Search Comp PM
    LS, I got a warning about being divisible by 4, so I cropped it to 336. Might be the same issue?
    Quote Quote  
  10. Video Restorer lordsmurf's Avatar
    Join Date
    Jun 2003
    Location
    dFAQ.us/lordsmurf
    Search Comp PM
    Alwyn, I tried running it on the full 720x480 clip.

    themaster1, that did the trick.

    I have several KNLmeansCL scripts in my toolbox, forgot about that one It took forever, about 4.5 hours for 6 minutes of footage. I probably could have lowered some of the values, for better speed, but I needed to get off the computer for a while anyway. Let it crunch!

    @all, appreciate it.

    However, I'm still curious why john's script won't load.
    Quote Quote  
  11. With latest release of vsTTempSmooth with 'large radius median' mode - https://github.com/Asd-g/AviSynth-vsTTempSmooth/releases/tag/1.2.6

    Code:
    LoadPlugin("ffms2.dll")
    LoadPlugin("vsTTempSmooth.dll")
    
    FFMpegSource2("flying era head noise.avi")
    assumetff()
    addborders(0,0,0,1)
    noproc=last
    
    ConvertToYV16(interlaced=true)
    orig=last
    
    ev=orig.assumetff().separatefields().selecteven().vsttempsmooth(maxr=10,uthresh=55, vthresh=55, y=2, u=3, v=3, pmode=1, opt=0)
    od=orig.assumetff().separatefields().selectodd().vsttempsmooth(maxr=10,uthresh=55, vthresh=55, y=2, u=3, v=3, pmode=1, opt=0)
    interleave(ev,od)
    assumefieldbased().assumetff().weave()
    
    StackHorizontal(noproc.Subtitle("input"), last.Subtitle("proc"))
    Though I not sure what will happen on moving areas with such large setting for threshold - as usual it is recommended to process motion-compensated only sequences with such temporal methods (use MCompensate to create MC sequence and SelectEvery to pick center processed).
    Last edited by DTL2023; 23rd Apr 2024 at 12:25.
    Quote Quote  
  12. My script is only five lines (the rest is just the Spotless code). Looking at it, I used implicit variables from one line to the next, so I think the only thing which would cause an invalid argument call in line 4 (the line which calls Spotless) is from the file open statement on line 1.

    You obviously need to use your own file name instead of "fs.avi" which is the file server stub that I use to serve out of Vegas and into AVISynth. You also may need to use something other than AVISource, depending on the format of your original video file. You can test this out by temporarily changing "Return Output" to "Return Source." That reduces it to a two-line script. If the script is having a problem reading the file, you'll still get an error.

    I don't think the script cares whether the rainbowing happened from head switching or something else. The script acts on what it sees, not on what caused it. However, since there is a luma component as well, Spotless will probably only remove the rainbow, although if you turn up the settings high enough, it might get rid of the vertical bars as well.
    Quote Quote  
  13. Member
    Join Date
    Aug 2018
    Location
    Wrocław
    Search PM
    Edit: Ah, it's something different than I thought



    Originally Posted by lordsmurf View Post
    I need the rainbows removed. I'm not liking what I'm doing, it still has rainbow bits.

    What are your ideas here?
    Check this thread:
    https://forum.videohelp.com/threads/413191-How-to-remove-horizontal-lines-noise

    especially this post:
    https://forum.videohelp.com/threads/413191-How-to-remove-horizontal-lines-noise#post2721152
    + TemporalDegrain2 (or Neat)
    Last edited by rgr; 24th Apr 2024 at 10:06.
    Quote Quote  
  14. And without Avisynth ?
    Image Attached Files
    Quote Quote  
  15. @lordsmurf: try, applying SpotLess with temporal radius 3, 3 times in a row (and take the chroma from that), it's not perfect, but seems like a good start.

    Cu Selur
    Image Attached Files
    Last edited by Selur; 24th Apr 2024 at 11:13.
    users currently on my ignore list: deadrats, Stears555
    Quote Quote  
  16. Median filtering with temporal radius of 3 frames reduces defect but not clean completely.

    I think it is equal to
    ev=orig.assumetff().separatefields().selecteven(). vsttempsmooth(maxr=3,uthresh=55, vthresh=55, y=2, u=3, v=3, pmode=1, opt=0)
    od=orig.assumetff().separatefields().selectodd().v sttempsmooth(maxr=3,uthresh=55, vthresh=55, y=2, u=3, v=3, pmode=1, opt=0)

    Spotless() is a motion-compensated version of the same processing (but MedianBlurTemporal in Spotless() run as a median filtering without any limiting of difference between filtered and current sample value). So I recommend the authours of Spotless() replace MedianBlurTemporal with new vsTTempSmooth or may be add it as an option because MedianBlurTemporal is faster at special cases of tr=1 and 2 (?).

    Also in the description of 3-frames temporal median Clense() it was noted running several times equal to temporal median with larger tr (initial tr or Clense is 1 for 3 frames total). It may be also tested.

    "applying SpotLess with temporal radius 3, 3 times in a row"

    Can you check single run of Spotless() with RadT of 10 (I do now see the limits of temporalradius in the MedianBlurTemporal at http://avisynth.nl/index.php/MedianBlur2) ?
    Last edited by DTL2023; 24th Apr 2024 at 11:35.
    Quote Quote  
  17. Can you check single run of Spotless() with RadT of 10
    attached
    Image Attached Files
    users currently on my ignore list: deadrats, Stears555
    Quote Quote  
  18. What mean 3xSpotless in filename ? Is it an error ? Is it a single call to Spotless with RadT 10 only ?

    *after updating ffms2.dll to latest RC5.0 to read that strange AV01 format* - yes - it looks clear enough too,
    Last edited by DTL2023; 24th Apr 2024 at 14:09.
    Quote Quote  
  19. Sorry, that that was a mistake during the file naming, only applied Spotless with radT 10 once in that file.
    users currently on my ignore list: deadrats, Stears555
    Quote Quote  



Similar Threads

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