View Full Version : Deinterlacing Artifacts
Seraphic-
26th June 2006, 08:23
Hi.
Does anyone have some thoughts as to why I'm getting these deinterlacing artifacts on the health and AP bars? Any comments would be great.
NOTE: I can provide a interlaced video if anyone wants to do some testing.
Thanks
Mug Funky
26th June 2006, 08:42
set your deinterlacing threshold higher or choose a different deinterlacer.
you could also set it (much) lower, but that will mean you get much more shimmering.
what's happening is adjacent pixels are over and under the deinterlacing threshold, causing a kind of ugly jittery noise on sharp horizontals.
if you look closely a lot of progressive-scan DVD players do this too :)
Seraphic-
26th June 2006, 08:53
The "Deinterlaced Test Video" is now uploaded it anyone wants to view it.
Anyway, Mug Funky, thanks for the reply. I'm not that experienced with Avisynth, so could you please recommend a script or new deinterlacer that I could try? Below is what I’m currently using.
trim(2,0)
converttoyuy2(interlaced=true)
assumetff()
interp = separatefields().selecteven().EEDI2(field=1)
tdeint(order=1,field=1,edeint=interp)
msharpen(highq=true)
Guest
26th June 2006, 13:08
Always post the unprocessed video. We can't do anything useful with it if you've already deinterlaced it.
Seraphic-
26th June 2006, 18:50
Hi,
Alright, here is an unprocessed video.
I just want to point out that I also had the same artifact issues when using VirtualDub's "blend fields together" deinterlacer that I did when using Avisynth. So I don't know...
Also, is it better to deinterlace before or after cropping out black and unused areas? The video was 640x480 but 596x444 after cropping.
Thanks
Guest
27th June 2006, 04:02
leakkerneldeint(order=1,threshold=0,sharp=true)
Deinterlacing after cropping will be slightly faster.
Seraphic-
27th June 2006, 05:40
Do I use just "leakkerneldeint(order=1,threshold=0,sharp=true)" or should I add it to what I was using below?
trim(2,0)
converttoyuy2(interlaced=true)
assumetff()
interp = separatefields().selecteven().EEDI2(field=1)
tdeint(order=1,field=1,edeint=interp)
msharpen(highq=true)
Also, is the script you posted the only thing you used during your testing?
Thanks a lot for your help
tritical
27th June 2006, 08:03
I would guess neuron2 meant for you to use (leaving out cropping and sharpening):
trim(2,0)
converttoyuy2(interlaced=true)
leakkerneldeint(order=1,threshold=0,sharp=true)
which is the easiest way to eliminate motion adaptive artifacts (it simply wont use motion adaptation). I looked at your clip and a non-motion adaptive approach would probably look best. Some biased suggestions you could try along with the above script are:
trim(2,0)
converttoyuy2(interlaced=true)
tdeint(mthreshL=0,mthreshC=0,order=1)
tdeint's kernel interpolation is slightly different than leakkerneldeint's, but the difference probably wont be noticeable and it will be considerably slower.
trim(2,0)
converttoyuy2(interlaced=true)
assumetff()
separatefields()
selecteven()
eedi2()
eedi2's edge directed interpolation might look better than kernel interpolation on video game footage.
trim(2,0)
converttoyuy2(interlaced=true)
assumetff()
sangnom()
sangnom discards one field and uses edge directed interpolation w/ aa to fill the missing field.. though I think it will produce too many artifacts on this clip.
scharfis_brain
27th June 2006, 18:39
these deinterlacing artifacts occur due to weak motion mask of (leak)kerneldeint and TDeint.
my securedeint() AVS function (part of mvbob.avs) won't show these artifacts.
besides that, parts of the vido are phase shifted progressive.
This means, you may want to use a fieldmatcher on them.
input=avisource("Untitled.avi").converttoyuy2(interlaced=true).assumetff()
deinterlaced=input.securebob()
fieldmatched_even=input.tfm(pp=2, clip2=deinterlaced.selecteven())
fieldmatched_odd =input.doubleweave().selectodd().tfm(pp=2, clip2=deinterlaced.selectodd())
interleave(fieldmatched_even, fieldmatched_odd)
This script puts out 60fps!
Tritical, how to tweak the parameters of TFM to avoid combing in low motion scenes without affeting its non-combed detection too much?
Seraphic-
27th June 2006, 19:13
Thanks, i'll give these ideas a try.
scharfis_brain, do you have a link for securebob.dll? I did a quick search but couldn't find it.
foxyshadis
27th June 2006, 20:32
Search for mvbob instead, which it's part of.
Seraphic-
28th June 2006, 04:15
I still couldn't find mvbob or securebob. But, anyway, I did some testing with what I had and came up with something that I think looks damn good on all my videos. However, in this video, the one light blue bar above "Leader HP" gets distorted/dim in color.
Below is what I used and any feedback on my code or results would be great. Thanks
trim(2,0)
converttoyuy2(interlaced=true)
assumetff()
interp = separatefields().selecteven().EEDI2(field=1)
tdeint(order=1,field=1,edeint=interp)
leakkerneldeint(order=1,threshold=0,sharp=true)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.