![]() |
Quote:
TemporalDegrain2 is an excellent at denoising/grain removal; it may be not fully suitable for your video, but with a high temporal radius (>3) and dfttest or KNLMeansCL postprocessing should clean the "standard" noise a lot. I experimented a temporal radius of 16 with SMDegrain (a similar filter) once, and although really really slow it was effective for defects where the solution was to "average" across a large number of frames. Quote:
Quote:
Quote:
Quote:
And finally let me say that your final result is not too bad at all. Sure, with lot of time and trying many filters/parametrs/steps you may improve it even further, but do not over process, and stop once you are satisfied, otherwise it will never end ;) |
Quote:
|
Thanks again. I will try the nnedi with double frame option and see if there is an improvement. You mentioned previously that I can only use KNLMeansCL on an old version of TemporalDegrain2. Do you know which version?
SpotLess has no produced any problems for me so far, perhaps because I choose a low threshold for when to not affect the block. But if it seems problematic I'll use a different strength on the sides. It surely works much faster than FixRipsP2! You're right that one can go crazy trying to make it perfect, and I am of the "less is more" crowd. Do you have any suggestions for the glow off the woman's shoulder? MergeLuma removes it, but makes it an oil painting. Perhaps by playing with the aWarpSharp2 parameters? (I should add that my above script and videos make use of a ChromaShift(C=4, L=2) that I forgot to include here). LSFMod and CAS perform the same function as aWarpSharp2 for MergeChroma/MergeLuma, right? It has been hard to find a proper explanation of the effect, but I assumed it was by sharpening the edges and then merging only those parts to the original. Learning from Doom9 is like going through a garbage can full of shredded notes. :unsure: I plan to upload a separate, deinterlaced version online, upscaled to HD so it gets a better bitrate by YouTube. Do you recommend that I keep my same script (plus an AddGrain and sharpening effect, which I also forgot to include above) and just use QTGMC without any denoising? Or throw away the above denoisers and use something from QTGMC? I don't want to go crazy because I care more about the interlaced version for archiving purposes. By the way, if you like the show UFO (given your videos) you may also like The Invaders, although the British were usually less corny. :laugh: |
Quote:
Quote:
Quote:
Not easy to avoid it, a tune of the parameters of the filters or something like addGrain (inside the filter if available or outside the filter) it may help. Some denoisers have an option to re-inject some "new cleaner noise" based on what has been removed :) MergeLuma itself should not produce plastic look, except if you do a temporal/spatial smoothing. Quote:
Sometime, to be sure that chroma is not touched, you force in the flow mergeChroma to use the chroma from video before sharpening. Quote:
Quote:
You can just use QTGMC() (real bob deinterlacer) and eventually remove the denoiser, because QTGMC denoises by itself. Then upscale to 1440x1080 (if your DAR is 4:3) with nnedi3_rpow2; doing this, YT should introduce less problems while compressing your video. You can save/export your final video with the same lossless codec used for capturing, because YT is able to read it and this avoid a preliminary lossy compression on your side. However, what I would experiment given the nature of your video is if the deinterlacing is more appropriate before or after the filtering (this last is uncommon). I have the impression that QTGMC may have troubles with the defecting frames. option 1: Code:
...Code:
... |
Thanks--I'll post an update once I try to implement your advice. That change after FixRipsP2() is quite impressive! But lots of detail is lost (like in the ear & hair) and two functions calls on each field would grind my computer to a halt. Hopefully the OP used a mask to just apply it to those lines!
|
Yes, that filtering was quite destructive and a last resort option! It was just an indication on how to proceed.
You are right, in general you want to apply a dedicated filter for a specific problem only to the concerned segment of the video, and eventually to a portion of the frame; and also with a "mask" to touch only where needed, but this last is not that easy. |
Yes, that is my goal! Perhaps I am naive, but masking a portion of frame does not seem too complicated if it is based on a crop (and not hue, saturation, or luminance).
Also, when you suggested to use nnedi3 deinterlacing first because it works better, in what way exactly? Do the spatial-temporal and temporal filters work better or can be used with less strength? I ask because there are some people (like Sanlyn) who suggest to de-interlace only when necessary as any method will bring a reduction in quality as half of the frames are removed (but then interpolated, so overall about a 25% on average according to LordSmurf). But if the 25% loss means a less filtered look, it may be worth it. I would also think that deinterlacing would be less damaging to a clip like mine that has less movement, bringing down the loss even further. |
Quote:
Quote:
https://forum.doom9.org/showthread.php?t=86394 http://www.doom9.org/index.html?/cap..._avisynth.html https://forum.doom9.org/showthread.php?t=167315 https://forum.doom9.org/showthread.php?t=59029 http://forum.doom9.net/showthread.ph...93#post1921993 https://forum.doom9.org/showpost.php...82&postcount=6 Quote:
Deinterlacing or not the video for final export is your choice. If you prefere to deinterlace the previous is useless and then better use QTGMC (before or after filtering in this special case). Deinterlacing (QTGMC) is recommended for YouTube upload. Quote:
interlaced frames video, 25 frames (50 fields) per second (25 frames i) frame1 frame2 frame3 frame4 frame5 frame6 frame7 frame8 A..............C.............E..............G..... ..........................................(field 0) even lines b..............d.............f...............h.... ............................................(field 1) odd lines Bob() deinterlaced Nnedi3(field=-2) deinterlaced QTGMC() deinterlaced [frame count is doubled (relative position of frames in previous scheme does not match)] frame1 frame2 frame3 frame4 frame5 frame6 frame7 frame8 A..........B'.........C..........D'.........E..... .....F'.........G..........H'....... (field 0) even lines a'..........b.........c'..........d..........e'... .......f..........g'.........h.........(field 0) odd lines x' and X' represents scanlines interpolated from X and x |
Thank you for the reading material. The deal breaker for me is that sharpening really shouldn't be done on interlaced material. Also, I it seems that JDL_UnfoldFieldsVertical stacks the even and odd fields together, which I would think still suffer in quality because of the lack of information between line 1 and 3, line 3 and 5, etc.
I am gathering that your method works better because A and a' (interpolated A) are from the same space and same time, which helps with spatial-temporal filtering. The original A and b are from a different space and time. SelectEven/selectOdd provide all of the A lines at once but because the b lines come in the next field before A again temporal filtering will suffer. In your experience, do you think using QTGMC with or without denoising is better, since it appears that I would only have the choice between dfttest and fft3dfilter that don't seem to work as well as TD2 and SpotLess? Also, do you recommend QTGMC with NNEDI3 as interpolation or something else like "EEDI3+NNEDI3" (EEDI3 with sclip from NNEDI3) to get the benefit of both? |
Quote:
Quote:
Quote:
Quote:
If you want your final result to be deinterlaced (youtube or whatever) use QTGMC(). QTGMC denoises by itself, in a less effective way than TD2 as you said, so you may want to turn off its intrinsic denoise capability, which can be done only partially, and use TD2 after QTGMC. By doing so and sharpening after, be careful to do not introduce excessive smoothing and "plastic look". SpotLess is more a "defect removal" than a denoiser. It is generally used before denoise and sharpening. Quote:
If you are looking for the absolutely best procedure by "merging" eedi3 and nnedi3 I can't answer, depends on your videos if it is worth or not. As general recommendation always experiment a lot yourself, and do not blindly trust our suggestions :wink2: |
Thanks for all the tips--I'll report back once I apply them. Also, how do you tell if a denoiser is temporal, spatial or spatial-temporal if it is not categorized as such on the Avisynth website or where it was posted?
|
Quote:
- a pure spatial filter is where the filtering only occurs inside the single frame. - in general, when you see a "motion vector" generation (MVTools) there is a temporal radius involved, so the processing concerns multiple frames (temporal filtering); a spatial filtering can be added or not. - today, the best denoising filters are spatial-temporal, combining both approaches. If the filter is a compiled dll we have to trust the author's documentation (often incomplete) or run some experiment on a reference clip to understand (not easy). |
Thanks again. I was afraid that there was no way to determine the type of filter if it were a compiled dll besides guess and check. Luckily those cases are rare (after searching the forums for prior users).
Since you have been so helpful, could you explain why UtoY() and VtoY() have to be used? In the link below, someone uses it to reduce the chroma banding. I understand how it works, but why couldn't there just be filters that allow you to directly adjust the chroma channel, as opposed to copying the values to luma, adjusting the values, and then copying back to the U or V channels? Or an argument in a filter that lets you choose the plane? https://forum.videohelp.com/threads/...os#post2536626 |
My guess is that ttempsmooth (I never used it) processes the chroma/luma planes together when testing for pixel similarity (https://forum.doom9.org/showthread.php?t=77856), while "themaster1" wanted to act only on chroma.
He writes here, so maybe he can explain better... |
Quote:
|
2 Attachment(s)
I thought I'd share this neat chroma effect that I came across on a bad part of the tape. This kind of color effect would take some serious masking in a NLE! :D
(Since both sides of the coat are the same color). Attachment 14426 Attachment 14427 |
He's a Smurf! :laugh:
|
Quote:
https://forum.videohelp.com/threads/...on#post2640813 For your specific problem, maybe a NLE is more appropriate. Good luck! |
Thanks--I didn't find the tracking error problematic enough to remove. I just thought to share it because of the interesting colors. I have taken your advice and have tried to export an .AVI from VirtualDub based on the below script, but VirtualDub keeps saying there is an out of bound memory problem. There were no bad frames detected when I scanned the file (which is only a minute long). Do you have any suggestions I could look into (I am using 32-bit Avisynth+)?
To summarize the script, it was first edited in Premiere Pro with added segments. Those segments were removed so that they were not affected by the filters, then added in afterwards. I upscaled and resized to keep the 4:3 ratio and let YouTube add pillarboxes. Removing the resizing solves the issue, so maybe I am doing something wrong there? Code:
video1 = AVISource("VW#1_AsherHada.avi").AssumeBFFThank you. |
I forgot to add that QTGMC darkened the whole video at first but from looking online the fix was to set NoiseProcess to 0. The video was still darken a bit after this change, by about 10 percent, crushing blacks. Is there a way around this besides raising the black level before the filter?
|
Site design, images and content © 2002-2026 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2026 Jelsoft Enterprises Ltd.