digitalFAQ.com Forums [Archives]

digitalFAQ.com Forums [Archives] (http://www.digitalfaq.com/archives/)
-   Avisynth Scripting (http://www.digitalfaq.com/archives/avisynth/)
-   -   Avisynth: Filter to clean up a noisy source with MA script? (http://www.digitalfaq.com/archives/avisynth/6022-avisynth-filter-clean.html)

audioslave 10-09-2003 05:03 PM

Filter to clean up a noisy source with MA script?
 
I'm trying to encode "Deliverance" and since it's an old movie (1972) it's quite noisy. Hence I'm having trouble with getting a high CQ value. What filter can I use to clean up the movie? Please, let me know what filter to use, settings and placement in the script.

incredible 10-10-2003 04:23 AM

In the MA Script you can find a Line including STMedianFilter.
Just change it to Deen()
(download Deen() via Warpenterprises)

or change to
TemporalSoften(2, 10, 10, 15, 2)
(No Filter download necessary, included in MPEG2Dec3.dll)

Its heavy but you will kill noise. On the other Hand many details will be lost, for exampe killed structures in Hairs or flat surfaces in Skins.

TemporalSoften for me is the best compromise cause
- Its fast
- Its the Filter which keeps the most details when doing a "normal, not to heavy" denoise

But if set to heavy, the Picture in Surfaces will look like viewed through a Glass with "static" Dots. So watch out!

So use MA like this:
Code:

## Defined Variables and Constants ##
#
MaxTreshold = 1.50
nf =* 0 # Current frame.
#
####

## Main section and static filters ###
#
Mpeg2Source("Your_D2V_Source_Here")

Limiter()
asharp(1, 2)
GripCrop(Your_GripCrop_Parameters_Here)
GripSize(resizer="BicubicResize")
TemporalSoften(2, 10, 10, 15, 2)
undot()
MergeChroma(blur(MaxTreshold))
MergeLuma(blur(0.1))
#
#

## Linear Motion Adaptive Filtering ##
#
# ( Portions from AviSynth's manual ) - This will apply temporalsoften to
# very static scenes, and apply variable blur on moving scenes.
# We also assign a variable - and this is why a line break is inserted:

SwitchThreshold = (Width<=352) ? 4 : (Width<=480) ? 3 : 2
ScriptClip("nf = YDifferenceToNext()"+chr(13)+ "nf >= SwitchThreshold ? \
unfilter( -(fmin(round(nf)*2, 100)), -(fmin(round(nf)*2, 100)) ) : \
TemporalSoften( fmin( round(2/nf), 6), round(1/nf) , round(3/nf) , 1, 1) ")

#
#
#

GripBorders()
#LetterBox( Your_Values_Here ) # Depends on situation. Use MovieStacker!
Limiter()

#
#
## Functions ###

function fmin( int f1, int f2) {
* return ( f1<f2 ) ? f1 : f2
}
*
#
####

Well I tried a lot on "old" sources an even if TemporalSoften is already used in the MA Routine it gave me a very good quality Stream with more CQ an keeped Details when also placed in front of the MA routine too.

If you lost to much details just change to
TemporalSoften(1, 8, 8, 15, 2)

The undot() is put behind TemporalSoften to eliminate a little bit the mentioned "viewed through a Glass with static dots" effect.
The Threshold of Asharp is set to (1, 2) to avoid sharpen more the noisy surfaces in the movie.

BUT!

If someone can tell me how to configure TemporalSoften in the MA Routine that it handles the "static" Scenes more heavy with individual parameters ... let me know! Makes more sense.
Just to avoid the double filtering.

Like this?
Code:

TemporalSoften( fmin( round(3/nf), 6), round(2/nf) , round(3/nf) , 1, 2) ")
Can someone explain detailed how the mathematical calculation routine of the MA Part works.

Well I'll try some settings at Weekend.

kwag 10-10-2003 06:38 AM

I would leave the "temporal" values out completely in STMedian and increase the "spatial" values :!:
Use only the "spatial" values, and not "a-la-adaptive", but use it statically.
You want to kill noise spots, which are (ideally) different from frame to frame.
So what is really needed is strong "spatial" filtering. Not "temporal" filtering.

-kwag

audioslave 10-10-2003 07:34 AM

Thanks guys!

@kwag
Could you please point me int the right direction on the spatial filtering? Shall I keep the temporal values, and what are good starting values for the spatial filtering? :roll:
This movie (Deliverance) is in bad need of a clean up. It's very noisy/pixelated.

incredible 10-10-2003 07:45 AM

Quote:

Originally Posted by kwag
I would leave the "temporal" values out completely in STMedian and increase the "spatial" values :!:

You're exactly right, like mentioned above it's the way it has to be.
:banghead:

kwag 10-10-2003 08:20 AM

Quote:

Originally Posted by audioslave
@kwag
Could you please point me int the right direction on the spatial filtering?

Look at the MA script. The line: STMedianFilter(8, 32, 0, 0 ) has the temporal values set to 0. So you can play with the "spatial" values ( 8, 32 ) by increasing them, and test your results.
Quote:

This movie (Deliverance) is in bad need of a clean up. It's very noisy/pixelated.
Noisy or pixelated :?:
It's two completely different things :!:

-kwag

kwag 10-10-2003 08:22 AM

Quote:

Originally Posted by incredible

You're exactly right, like mentioned above it's the way it has to be.
:banghead:

;)

audioslave 10-10-2003 09:44 AM

Oh, sorry. I ment to say noisy. :oops:

audioslave 10-10-2003 09:46 AM

What are my options on STMedian filter? I mean what's the range of values for parameter 3 and 4, and what do they do?

incredible 10-10-2003 10:07 AM

STMedianFilter(S_FilterThreshHold, S_EdgeThreshHold, T_FilterThreshHold, T_MotionThreshHold)

Tom Barry:
Quote:

Larger values cause more filtering but more artifacts. Parm descriptions:

S_FilterThreshHold - don't spatial filter pixel if it would change it more than this
Larger values may cause loss of fine line detail but it's not extremely sensitive.

S_EdgeThreshHold - don't spatial filter pixel if on an edge where vals change more
than this. It seems fairly forgiving, so it can be raised a lot if desired.

T_FilterThreshHold -don't Temporal filter pixel if it would change it more than this
Large values will cause ghosting. Don't set over 5-10 to avoid ghosting.

T_MotionThreshHold don't Temporal filter pixel if uncompensated motion vals change more
than this. Don't set over about 10 to avoid ghosting.

muhali3 10-11-2003 03:13 PM

does deen act as a spatial-temporal smoother. or just spatial?
what exactly does it do?

i've read the documentation that came along with it, but it doesn't exactly say what it does.

Thanks
:twisted:

Dialhot 10-11-2003 04:04 PM

Deen is a Spatial only filter.

audioslave 10-13-2003 11:11 AM

Well, now I've tried encoding with Deen() but I only gain 2-3 in CQ. "Deliverance" is about 1:45 long and I usually get a CQ around 70 for this kind of movies. In this case the CQ stops at around 56 :!:
Can someone please post good settings for STMedian (spatial values) to use for low, medium, and high noise sources?

Dialhot 10-13-2003 11:17 AM

Are you sure your problem doesn't come from a source too sharpen ?

It's strange that you gain so little CQ on the video. Deen is quite heavy in noise removing. Try this : deen("a2d",2,10,12)
(note: oops, I said an error last time, by default deen is a Spatio-Temporal filter using a 3d matrix. For Spatial only filtering you have to use the line suggested above).

Finally, I can suggest you eDeen that is heavier than deen.

Ps:For the values of StMEdian, why don't you do some test and give results there ?

audioslave 10-13-2003 11:22 AM

@Dialhot
I don't know. I'm using the MAscript and it has always worked before, on other movies. Maybe I could try increasing the LumaBlur? Or do you have any other suggestions?

Dialhot 10-13-2003 11:24 AM

I edited my post while you were answering. See the suggestion I do in it :-)

audioslave 10-13-2003 11:26 AM

Where can I find eDeen?

EDIT: Now that I think of it the DVD seems like it is over sharpened. Almost like when you apply too much sharpen filter in Photoshop, if you know what I mean?

Dialhot 10-13-2003 11:29 AM

http://ziquash.chez.tiscali.fr/

audioslave 10-13-2003 11:33 AM

Thanx :wink: :D

Dialhot 10-13-2003 11:34 AM

You can soften it with unfilter (that is its original purpose). Or as you suggested raise a little the blur on the luma.


All times are GMT -5. The time now is 05:21 AM  —  vBulletin © Jelsoft Enterprises Ltd

Site design, images and content © 2002-2024 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2024 Jelsoft Enterprises Ltd.