VideoHelp Forum


Try DVDFab Video Downloader and rip Netflix video! Or Try DVDFab and copy Blu-rays! or rip iTunes movies!
+ Reply to Thread
Results 1 to 6 of 6
Thread
  1. Member
    Join Date
    Jul 2010
    Location
    Canada
    Search PM
    I've been using the Camcorder Color Denoise filter (CCD) on most of my VHS captures. I found no better filter than this one to remove the chroma smear/trail that occurs on hockey and football games (on fast moving players).

    However I came up with a situation where the filter is coloring something that should remain grey. I've included 2 videos, one without applying CCD and the other one with the filter applied. It's an hockey game, and the arena lighting is producing a shadow on the ice just below the board. Because the bottom of the boards are yellow, CCD is also coloring the shadow yellow, even when using the filter lightly (the pictures show where the issue is).

    I've been using CCD on Virtualdub. I have not found a Avisynth filter that could remove the chroma smear/trail created by the moving players as good as CCD does it. So my question is, would it be possible to create a mask in order to apply CCD only on the non-yellowlish part of the chroma ?
    Image Attached Thumbnails Click image for larger version

Name:	With CCD.png
Views:	33
Size:	702.9 KB
ID:	56341  

    Click image for larger version

Name:	Without CCD.png
Views:	20
Size:	537.0 KB
ID:	56342  

    Image Attached Files
    Quote Quote  
  2. Sorry, but I can't see a significant difference between your 2 files, nor do I find your .png frames in the clips.
    You could however apply MCDegrainSharp() on the fields which reduces both the color noise and the color smearing.

    In avisynth something like
    Code:
    AVISource("Without CCD.avi")
    converttoYUY2(interlaced=true)  #or converttoYV12(interlaced=true)
    assumeTFF()
    e=separatefields().selecteven().MCDegrainSharp()
    o=separatefields().selectodd().MCDegrainSharp()
    interleave(e,o).weave()
    There might be better proposals though.
    Last edited by Sharc; 20th Dec 2020 at 07:23.
    Quote Quote  
  3. You're running CCD on interlaced video? I don't think it supports that. And why are your videos RGB, not YUV?
    Quote Quote  
  4. Member
    Join Date
    Jul 2010
    Location
    Canada
    Search PM
    Originally Posted by jagabo View Post
    You're running CCD on interlaced video? I don't think it supports that. And why are your videos RGB, not YUV?
    I didn't know CCD does not support interlaced video. I have not noticed any artifacts from using CCD on interlaced material so far. I was under the impression that it was designed for interlaced material, given that the filter was created to correct chroma on old camcorders recordings (which I'm assuming were interlaced). I'm not using many Virtualdub filters other than CCD and Neatvideo, but is it possible to properly deinterlace on Virtualdub (like using separatefields() on Avisynth) before applying a filter and then re-interlace ? If not, how can I apply CCD correctly using Virtualdub ?

    As for RGB, I always convert to RGB at the end of my Avisynth script. It's probably not required anymore, but I remember reading that some Virtualdub filters had issues with YUV videos, so I convert to RGB before doing anything in Virtualdub.
    Quote Quote  
  5. Member
    Join Date
    Jul 2010
    Location
    Canada
    Search PM
    Originally Posted by Sharc View Post
    Sorry, but I can't see a significant difference between your 2 files, nor do I find your .png frames in the clips.
    You could however apply MCDegrainSharp() on the fields which reduces both the color noise and the color smearing.

    In avisynth something like
    Code:
    AVISource("Without CCD.avi")
    converttoYUY2(interlaced=true)  #or converttoYV12(interlaced=true)
    assumeTFF()
    e=separatefields().selecteven().MCDegrainSharp()
    o=separatefields().selectodd().MCDegrainSharp()
    interleave(e,o).weave()
    There might be better proposals though.
    I've included 2 JPEGs to better illustrate the good/bad that CCD does. It's from frame 117.
    Image Attached Thumbnails Click image for larger version

Name:	Before CCD.jpg
Views:	15
Size:	675.4 KB
ID:	56360  

    Click image for larger version

Name:	After CCD.jpg
Views:	13
Size:	674.8 KB
ID:	56361  

    Quote Quote  
  6. Member
    Join Date
    Jul 2010
    Location
    Canada
    Search PM
    I think I found a solution...

    I imported CCD into Avisynth. I tried deinterlacing before applying the filter, but it created other issues with the shadow. Then, I found out a new version of CCD had been released a few months ago (I was using version 1.6, now it's 1.9).

    I got he newest version from the developer's website :
    http://acobw.narod.ru/file/ccd.zip

    Code:
    LoadVirtualDubPlugin("C:\Program Files\VirtualDub\plugins\ccd_32bit.vdf", "CCD", 0)
    AVISource("Without CCD.avi")
    assumeTFF()
    e=separatefields().selecteven().CCD(30,0)
    o=separatefields().selectodd().CCD(30,0)
    interleave(e,o).weave()
    I have not applied it to the whole video, but it works great on the clip I had attached. The smearing is removed at the same level as before, and the shadow is not being colored.

    Also, I read that CCD was designed to work with RGB32.

    Thank you guys for guiding me in the right direction.
    Last edited by rds11; 21st Dec 2020 at 14:14.
    Quote Quote  



Similar Threads