What is the best filter to remove noise and not lose too much detail in the video quality?
![]()
+ Reply to Thread
Results 1 to 30 of 41
-
-
Tested but did not remove the noise as I expected.
https://mega.co.nz/#!ltgnDQyK!ehM3CH6ieUrrhOLSXkovUW5g0eBb6Y7p08wAhjK7he4Last edited by charlesn73z; 21st Jul 2013 at 22:07.
-
Did you IVTC it first? What's the script you used? Did you test out greater strengths than the MCTemporalDenoise default?
Because it's anime with the repeated frames, perhaps a combination spatial and temporal denoiser might suit you more. How about FFT3DFilter? Maybe try this:
FFT3DFilter(Sigma=2.5,BT=5,BW=32,BH=32,OW=16,OH=16 ,Sharpen=0.4) -
-
I see neither an IVTC (why use QTGMC for this video?) nor MCTemporalDenoise. You didn't test my suggestion at all. However, I tried:
TFM(Order=0)#the sample was BFF, but maybe not the whole episode
TDecimate(Mode=1)
FFT3DFilter(Sigma=2.5,BT=5,BW=32,BH=32,OW=16,OH=16 ,Sharpen=0.4)
I don't know if you'll like the results or not, but it did remove the noise.Last edited by manono; 22nd Jul 2013 at 03:36.
-
Filtered with:
TFM(Order=0)
TDecimate(Mode=1)
MCTemporalDenoise()
FFT3DFilter(Sigma=2.5,BT=5,BW=32,BH=32,OW=16,OH=16 ,Sharpen=0.4)
GradFun3()
Look right shoulder Cold, the lines disappeared.
I want to remove the noise but also want to keep the image details, like this:
-
I don't know that I'd use both in the same script. And, as I mentioned, I don't know if you'll like the results or not, but it did remove the noise. If FFT3DFilter causes it to lose too much detail, lower the Sigma value to 1.5 or 2. It is a 3D filter and has a spatial component that does some smoothing. That's why I added in its sharpener. Maybe others have suggestions too,.
-
Try heavier settings in MCTD: McTemoproalDenoise(settings="high"), or "very high". You risk smearing during motion though. Also use HQDeRing() to remove some DCT ringing artifacts.
Last edited by jagabo; 22nd Jul 2013 at 06:47.
-
I think perhaps the "noise" the O.P. refers to isn't grain (which belongs there anyway, although it seems a bit excessive here). I think the O.P. might refer to the problems (? ?) indicated by green arrows in the pics below:
[Attachment 18968 - Click to enlarge]
[Attachment 18969 - Click to enlarge]
[Attachment 18970 - Click to enlarge]
1) Some luma and chroma flicker in spot areas: top image, lower left, and middle image lower left. The flicker in the top image is repeated later. It might be there on purpose.
2) line flutter and distortion: middle image, upper right in the figure's head, and bottom image upper mid in the critter with wings.
There is also some mild but visible projector hop. Stab() will fix that.
What can be done with those wiggling lines is anyone's guess.Last edited by sanlyn; 25th Mar 2014 at 10:03.
-
I think those wiggling lines and flicker are all intentional. Part of the animation style.
-
That's likely the case. A little of that chroma flicker (in the shadow areas of rocks, middle image) seems to be noisy reds. Almost any temporal filter would fix that and remove excessive grain. But some banding prevention such as GradFun2DBmod or GradFun3 would be needed later. Otherwise I don't see that the clip is in such bad shape.
Last edited by sanlyn; 25th Mar 2014 at 10:04.
-
The first image posted by OP is an (encoded) output frame, definitely not raw-source. I am over-looking at other images.
If I say it is ¨ringing¨, I am absolutely wrong and such an ..... that I need to go back to school, and study little bit more to enlarge my boundaries. But, I may enlarge my barriers too which bears equal possibilities. Here, I am not addressing it to any of fellow members who replied this post, but those who are engaged in development of certain high-tech encoders who even do not know what kind of artifacts are this. When those ..... named it so, other believed.
This type of artifacts are result of an inherent characteristic of certain high-tech encoders. Only the solution as of now is reducing size. Reducing the size does not remove artifacts, but makes look it better or hide the artifacts of this sort.Last edited by enim; 22nd Jul 2013 at 12:05.
-
I would like to Re-Quote Cornucopiaś Golden Rule:
In media, a golden rule is: one should "do the least harm". This also translates to "leave well enough alone, unless it's necessary".
- Scott - Cornucopia
I like this business of creating artifacts as an inherent characteristic of certain high-tech encoders, and get busy to remove for restoring image quality. Even though I like it, I am not into this business.Last edited by enim; 22nd Jul 2013 at 12:05.
-
Those lines sometimes are supposed to be moving, but I'm not certain quite how they move. Maybe just sloppy animation. Much worse is posted all the time. Other than that, the clip could stand a little cleanup, but isn't all that bad as-is.
Last edited by sanlyn; 25th Mar 2014 at 10:04.
-
Pass me the script used please?
I wanted to make one like this:
https://mega.co.nz/#!UhJQXSiZ!KJVdAQirEjmDeTXWeDD5_iYRmOMzXnE8jqXzMCCmF4ILast edited by charlesn73z; 22nd Jul 2013 at 12:50.
-
Here's my quick attempt with heavy noise reduction:
Code:Mpeg2Source("dbz121.split.1.d2v") HqDeRing() McTemporalDenoise(settings="high") AAA() ColorYUV(gain_y=20, off_y=-14, cont_u=20, cont_v=20)
-
Last edited by charlesn73z; 22nd Jul 2013 at 13:21.
-
Your video sample was YV12.
The mkv I posted and the one you linked look pretty much alike, except for the frame hopping and a little more noise. My script addressed noise and flutter to make playback look smoother. Jagabo's post looks pretty good to me as well, and he put more work than I did into cleaning up rough lines and juicing up contrast a bit. I used RemoveSpots instead of MCTD -- it didn't remove many spots (I didn't think it would), but it smoothed out some object "hopping" and shimmer.
Which reminds me: I sometimes use RemoveSpots or RemoveDirt to smooth some of that object shifting, but I don't know how their "restore motion blocks" routine works. It can't always be used with anime, but it worked OK here. If I knew how to extract that single routine from RemoveDirt's support files, I'd do it.
I also used VirtualDub's DeFlicker to calm things down; there's not much flicker, but it's visible to me in large flat areas. You might not see it or find it annoying. I could use the Avisynth version, but not enough time to configure it. Anyway, this script and jagabo's should give you plenty of tools to work with. I encoded with TMPGenc Mastering Works 5 at default settings, with no 3:2 pulldown.
Code:LoadVirtualDubPlugin("path to VirtualDub plugins\Deflick.vdf", "DeFlick",1) MPEG2Source(vidpath+"dbz121.d2v") TFM(Order=0).TDecimate(Mode=1) Stab() RemoveSpots() TTempSMooth() MergeChroma(awarpsharp2(depth=20)) Dither_convert_yuv_to_rgb(matrix="601",interlaced=false,tv_range=true,cplace="MPEG2",lsb_in=false,output="rgb32") DeFlick(0, 8, 0, 256, 0) Dither_convert_rgb_to_yuv(matrix="601",interlaced=false,tv_range=true,cplace="MPEG2",lsb=false,output="YV12") LSFMod(defaults="slow",strength=50) GradFun3(thr=1.1,mask=0) Crop(8,4,-6,0).AddBorders(8,2,6,2) return last
Last edited by sanlyn; 25th Mar 2014 at 10:04.
-
Be careful with RemoveSpots(). Look around 500 frames into the sample clip -- a shot down a hallway that bounces up and down. With RemoveSpots() some of the lines on the walls disappear. RemoveSpotsMC() doesn't cause that.
HqDeRing() is here:
http://avisynth.org/mediawiki/HQDering
Oh, I see. The version I have is different. The version above gives me the same error. Here's the one I have:
Code:###### ## ## HQDering v0.1 by mf ## ## Applies derining by using a smart smoother near edges (where ringing occurs) only. ## ## Usage: Import("HQDering-v0.1.avs") ## HQDering() ## #### function HQDering(clip input, int "strength", int "overall", clip "smoother") { strength = Default(strength, 255) # strength, 0-255 overall = Default(overall, 0) # overall smoothing, 0-255 smoothed = defined(smoother) ? smoother : input.Deen("a3d",4,15,15,20) # filter that smooths normalmask=input.mt_edge(thY1=3, thY2=255, mode="sobel", chroma="none") amplifiedmask=normalmask.Levels(0, 3.3, 90, 0, 255).Blur(1.0) thickmask=normalmask.mt_inflate().mt_inflate().mt_inflate().Levels(0, 3.3, 90, 0, 255) \ .Blur(1.0).mt_inflate().mt_inflate().mt_inflate().Levels(0, 3.3, 255, 0, 255) \ .mt_inflate().mt_inflate() ringingmask=mt_lutxy(amplifiedmask.mt_invert(), thickmask, expr="x y * 255 /").Levels(60, 3.0, 140, overall, strength) mt_merge(input, smoothed, ringingmask) }
Last edited by jagabo; 22nd Jul 2013 at 16:23.
-
Yep. One does have to be careful with RemoveSpots. I've never been able to make RemoveSpotsMC run on any of my PC's. I think RemoveDirt() could probably have accomplished the same thing. Will give that a run later. Thanks for spotting that problem.
Last edited by sanlyn; 25th Mar 2014 at 10:04.
-
Last edited by charlesn73z; 22nd Jul 2013 at 16:43.
-
Last edited by charlesn73z; 22nd Jul 2013 at 16:49.
-
Similar Threads
-
What is the best way to apply Prolimatech PK-1?
By Stealth3si in forum ComputerReplies: 5Last Post: 6th Apr 2012, 09:37 -
How to apply filters to video?
By kaona in forum Newbie / General discussionsReplies: 0Last Post: 13th Apr 2011, 13:59 -
How to apply filters in VirtualDub to only *parts* of the video?
By maskingtape in forum Newbie / General discussionsReplies: 2Last Post: 2nd Aug 2010, 02:19 -
[Solved] Question about MPlayer filters in FFDShow and Mencoder filters
By BlooderButcher in forum Video ConversionReplies: 4Last Post: 24th Nov 2008, 11:32 -
How do I apply avisynth filters in zone/segments?
By poisondeathray in forum Newbie / General discussionsReplies: 2Last Post: 12th Aug 2008, 21:11