Help plz: Anti-Noise-Filter Script für DV Video

  • Und was stört dich an den dutzenden Rauschfiltern für AviSynth, dis bisher schon existieren?

    http://www.avisynth.org/warpenterprises

    (Jetzt bin ich mal gespannt auf eine Liste von Filtern, die du schon probiert und verglichen hast, und warum dir welcher nicht gefallen hat. Denn immerhin soll ja jeder Nutzer erst mal Eigeninitiative beweisen, bevor er um Hilfe ruft...)

  • Ich kann deinen Unmut verstehen, aber ich habe leider wenig Zeit - erst recht nicht, um verschiedenen Rauschfiltern zu testen.

    Also wenn es einmal möglich wäre, mir auch so zu helfen, wäre das wirklich nett ;)

    Der Anti-Noise Filter, der bei Gordian Knot (afaik 0.30.1a) eingesetzt wird, war richtig gut.

    Wie kann ich den über ein Script ansprechen?

  • GordianKnot tut doch nicht viel mehr, als ein AviSynth-Skript zu bauen, und VirtualDubMod dann dieses Skript als Videoquelle vorzusetzen.

    Also schau doch mal in das erzeugte Skript hinein, welche Rauschfilter da verwendet worden sind.

    Und dann suche im Board nach "Rauschfilter", bevor du von uns verlangst, dass wir noch mal Zeit dafür investieren, für dich "faulen Sack" ;) noch mal die selben Rauschfilter hier zusammenzutragen, über die wir doch schon längst ausführlich geschrieben haben.

    Beispiele für Rauschfilter (nach denen man mit der Forumsuche suchen kann) wären z.B.:

    - UnDot
    - STMedianFilter
    - VagueDenoiser
    - FluxSmooth
    - Convolution3D
    ...

  • Würde es so gehen?

    Ich habe das Script aus mehreren Threads zusammenkopiert, u.a. stammt bsw. der gesamte Denoising-Teil aus einem GK Script.
    Das, was ich für am sinnvollsten halte, habe ich nicht rauskommentiert.
    Verbesserungsvorschläge?

    An diesem Screenshot kann man hoffentlich erkennen, ob der Little Noise Filter reicht:

    [Blockierte Grafik: http://img32.exs.cx/img32/4484/f4-screenshot.th.png]

    edit: nicht vergessen: zum vergrößern auf das Thumbnail klicken ;)

  • Es reicht i.d.R. ein Filter. GKnot schlägt für jede Noise-Stufe 3 Filter vor, von denen man dann einen (nicht alle 3) auswählt.

    Und welcher der Filter der "beste" für Dich ist, musst du einfach probieren. Encode einfach einen ca. 1 min Videoteil mehrmals - jeweils mit unterschiedlichem Filter und sieh dir dann die Ergebnisse an. Macht Mühe, aber da muss man durch... ;)

    Tip: ich verwende vor dem eigentlichen Rauschfilter immer auch UnDot()

    cu, grua

  • Da würdest du ja TemporalSoften, Convolution3D und FluxSmooth nacheinander verwenden. Würde ich nicht empfehlen. Diese drei Vorschläge bei "2) medium noise" sind eigentlich als Alternativen (entweder oder) gedacht, nicht als "eins-nach-dem-anderen".

    Welche Variante nun geeignet ist, müsstest du auf jeden Fall an einem bewegten Film selber austesten. Ein Einzelbild sagt da nicht viel. Wenn du wenig Zeit zum Experimentieren und Konvertieren hast, dann würde ich empfehlen, erst mal mit den beiden Varianten für FluxSmooth zu beginnen, für beide jeweils das Ergebnis bei aktivierter CompCheck-Zeile stichprobenweise zu vergleichen (die AVS-Datei in VirtualDubMod öffnen und bildweise durchschauen) und eventuell die beiden Parameter noch etwas zu optimieren.

    Die Presets für Convolution3D sind zwar oft effektiver, aber auch wesentlich langsamer als viele andere Filter.

    Ebenfalls recht vorteilhaft fand ich bisher den STMedianFilter, aber andere sagen, den müsse man schon genauer auf sinnvolle Parameter optimieren.
    __

    P.S. (da grua mir noch zuvor kam):

    Undot ist ein spatialer Medianfilter (*), der schon meist recht gute Vorarbeit leistet. Der eliminiert die größten Ausreißer schon recht sinnvoll. Nur der STMedianFilter arbeitet auf die gleiche Weise (und zusätzlich auch temporal), eine Kombination speziell dieser beiden wäre möglicherweise nicht so perfekt - dann lieber die Threshold-Parameter in STMedian anpassen.

    (*) Medianfilter:

    Der aktuell untersuchte Pixel wird entweder - herkömmliches Verfahren - durch denjenigen Wert ersetzt, der beim Sortieren aller Werte der Umgebung in der Mitte der sortierten Liste steht, oder - abgeschwächtes Verfahren - im Wertebereich der umgebenden Pixel begrenzt. Das verhindert besonders stark abweichende Pixel (auch als Rausch-Typ "Salz & Pfeffer" bekannt).

  • Da der FluxSmooth Filter aus welchem Grund auch immer nicht funktioniert (die *.dll-Datei ist vorhanden), habe ich das Script jetzt so geschrieben und in Echzeit ausprobiert, das Ergebnis ist schon ganz okay, besser als ohne Filter.
    Einen wesentlichen Schärfeverlust konnte ich nicht feststellen, liegt aber vielleicht auch daran, das ich max. 2FPS hatte :D

    Zitat

    LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\FluxSmooth.dll")

    DirectShowSource("D:\WinDV\Emmaus2.avi", FPS=25)

    Undot()

    Temporalsoften(4,8,8,mode=2,scenechange=10)

  • Ich habe jetzt den Panasonic VfW DV Codec runtergeladen.
    Wenn ich das richtig verstehe, muss die *.dll-Datei in den Windowsordner und die *.inf-Datei per Rechtsklick installiert werden, richtig?

  • So, ich habe jetzt mal folgendes Minimalscript geschrieben:

  • Nun ja - für Convolution3D muss man auch ein Plugin laden; und ansonsten würde ich vorschlagen, dass du noch mal den Verzeichnisnamen überprüfst, der in "LoadPlugin" steht, und ihn auch mal durch die Variante mit langen Verzeichnisnamen ersetzt (anstatt die kurzen Varianten mit ~1).

    Du müsstest aber wohl zumindest die korrekte Variante verwendet haben (2.5-DLL für AviSynth 2.5), ansonsten hättest du einen Absturz gekriegt.

  • An der Schreibweise hat es nicht gelegen.
    Ich habe die FluxSmooth.dll einfach mal gegen eine ältere Version, die in einem Gordian Knot Paket dabei war ausgetauscht - sie an, es funktioniert :ani_lol:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!