*offizielles deutsches flaskmpeg & dvdtoogm board*
Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen FlaskChat Zur Startseite

*offizielles deutsches flaskmpeg & dvdtoogm board* » *virtualdub(mod) & avisynth* » Wie ReInterlace ich richtig ? » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Wie ReInterlace ich richtig ?
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Herbie
Mitglied


Dabei seit: 25.04.2004
Beiträge: 41
Herkunft: Aus der Kurpfalz

Fragezeichen Wie ReInterlace ich richtig ? Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo,

Wenn ich ein interlactes Video deinterlacen möchte, könnte ich folgendes Skript schreiben:

Avisource ("D:\Avi Dateien\Sunset 03.avi")
# ConvertToYUY2() #
TomsMoComp(1,15,1)

Jetzt könnte ich einen Filter anwenden. z. B. den Deshaker von Vdub. und möchte danach das Video wieder reinterlacen.

Wie müsste denn das Skript zum Reinterlacen aussehen ?

Etwa so:

Avisource ("D:\Avi Dateien\Deshakte.avi")
SeparateFields()
SelectEvery(4,0,3)
DoubleWeave()

oder

Avisource ("D:\Avi Dateien\Deshakte.avi")
SeparateFields()
Weave()


Gruß Herbie

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Herbie: 01.08.2004 21:07.

01.08.2004 21:04 E-Mail an Herbie senden Beiträge von Herbie suchen Nehmen Sie Herbie in Ihre Freundesliste auf
Selur
spamming old Newbie


images/avatars/avatar-173.png

Dabei seit: 13.03.2002
Beiträge: 10.933

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Da überlass ich das Antworten lieber andern.
(z.B. scharfis brain, falls er mal wieder reinguckt smile )

Cu Selur

Ps.: sollteste Dir auch mal angucken:
http://home.arcor.de/scharfis_brain/ExotischesInterlacing/

__________________
Hybrid
01.08.2004 23:28 Beiträge von Selur suchen Nehmen Sie Selur in Ihre Freundesliste auf
Balm
DVDtoOgm&DVDtoMkv-Team


images/avatars/avatar-6.gif

Dabei seit: 17.03.2002
Beiträge: 2.397
Herkunft: Sachsen

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Warum antwortest du dann? großes Grinsen

Cu Balm

__________________
...auch im IRC-Channel zu finden...


02.08.2004 03:42 E-Mail an Balm senden Homepage von Balm Beiträge von Balm suchen Nehmen Sie Balm in Ihre Freundesliste auf
Selur
spamming old Newbie


images/avatars/avatar-173.png

Dabei seit: 13.03.2002
Beiträge: 10.933

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

weil ich auf das exotisches Interlacing hinweisen wollte. smile

Cu Selur

__________________
Hybrid
02.08.2004 08:08 Beiträge von Selur suchen Nehmen Sie Selur in Ihre Freundesliste auf
Videostation
Super Moderator


images/avatars/avatar-81.gif

Dabei seit: 16.03.2002
Beiträge: 1.533
Herkunft: Dresdner Raum

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Wieso willst du wieder Interlacing einführen? Wenn das Material schon mal deinterlaced wurde, z.B. mit TomsMoComp, kann man es nicht einfach wieder in interlaced Material wandeln. Denn die höhere zeitliche Auflösung des Quellmaterials ist mit dem Deinterlacing schon verloren gegangen. Deshalb macht es eigentlich auch keinen Sinn.

CU Videostation

__________________
WWW.VIDEOSTATION-ONLINE.DE
02.08.2004 15:13 E-Mail an Videostation senden Homepage von Videostation Beiträge von Videostation suchen Nehmen Sie Videostation in Ihre Freundesliste auf
Herbie
Mitglied


Dabei seit: 25.04.2004
Beiträge: 41
Herkunft: Aus der Kurpfalz

Themenstarter Thema begonnen von Herbie
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo,

@ Videostation

danke für Deinen Ratschlag.


Man sagt man in Fachkreisen, daß z. B. der Deshaker eben bei deinterlactem Material bessere Ergebnisse abliefert und wenn man mit einem Bobber, z.B. kernelbob() oder tmcbob() deinterlaced, dann werden aus den 50 Halbilder nicht 25 Vollbilder sondern 50 Vollbilder, da ein Bobber das Halbbild durch Interpolation auf ein Vollbild streckt und es sollen alle Bildinfos erhalten bleiben. Danach soll man dann wieder ReInterlacen.

Deshalb meine Frage.

Wie siehst denn Du diese Sache ?

Gruß Herbie
02.08.2004 15:48 E-Mail an Herbie senden Beiträge von Herbie suchen Nehmen Sie Herbie in Ihre Freundesliste auf
Videostation
Super Moderator


images/avatars/avatar-81.gif

Dabei seit: 16.03.2002
Beiträge: 1.533
Herkunft: Dresdner Raum

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zum Deshaker kann ich nichts sagen, da ich damit noch nicht gearbeitet habe. Was den Bob-Filter angeht hast du natürlich recht, die zeitliche Auflösung bleibt erhalten. Allerdings sehe ich das Problem in der Interpolation des Bildes, weil man nachher nicht einfach wieder jede zweite Zeile daraus entfernen kann. Ich denke da kann es recht unschöne Artefakte geben, wobei das von der Ausgangsqualität abhängt.

Prinzipiell könnte das Skript wie folgt aussehen:

...
VerticalReduceBy2()
AssumeFieldBased()
Weave()

Damit bekommst du zumindest aus 50 Vollbildern wieder einen Interlaced Clip. Wie es mit der Bildqualität ausschaut weiß ich aber nicht.

CU Videostation

__________________
WWW.VIDEOSTATION-ONLINE.DE
02.08.2004 16:41 E-Mail an Videostation senden Homepage von Videostation Beiträge von Videostation suchen Nehmen Sie Videostation in Ihre Freundesliste auf
EthanoliX
Kaiser


images/avatars/avatar-100.gif

Dabei seit: 11.04.2002
Beiträge: 1.310
Herkunft: Mainz

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Das Problem wird sein, daß man bei den geraden Frames jede 2. Zeile, beginnend mit der ersten, und bei den ungeraden Frames jede 2., beginnend mit der 2. Zeile auswählen muß oder umgekehrt, je nach dem ob das Video TTF oder BFF war.

Frage, gibt es einen Filter, der zwei Clips derart kombinieren kann, daß die Bilder abwechselnd eingeflochten werden? Eine Art Weave() sozusagen, nur daß als Vorlage nicht ein field based Video , sondern zwei frame based Clips dienen?

Falls Ja, könnte man den bob-deinterlaced Clip (50 fps, 576 Zeilen) folgendermaßen bearbeiten:

top=SelectOdd(clip).separateFields().AssumeFrame.Based().SelectEven()

bottom=SelectEven(clip).SeparateFields().AssumeFrameBased().SelectEven()

Und danach müßte man dann die meiden Clips top & bottom mittels der Funktion, von der ich nicht weiß, ob sie existiert, zu einem Video zusammensetzen.

__________________
"Der größte Trick, den der Teufel je gebracht hat, war die Menschheit glauben zu lassen, es gäbe ihn gar nicht."

Roger "Verbal" Kint, Die üblichen Verdächtigen
03.08.2004 11:50 E-Mail an EthanoliX senden Beiträge von EthanoliX suchen Nehmen Sie EthanoliX in Ihre Freundesliste auf
Selur
spamming old Newbie


images/avatars/avatar-173.png

Dabei seit: 13.03.2002
Beiträge: 10.933

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

meinste Weave ?

__________________
Hybrid
03.08.2004 11:57 Beiträge von Selur suchen Nehmen Sie Selur in Ihre Freundesliste auf
EthanoliX
Kaiser


images/avatars/avatar-100.gif

Dabei seit: 11.04.2002
Beiträge: 1.310
Herkunft: Mainz

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von Selur
meinste Weave ?


Kann Weave zwei separate Clips zu einem zusammenfügen? Falls ja, dann ja.

Ich dachte damit würden jeweils zwei benachbarte Frames eines Clips, zu einem doppelt so hohen Frame zeilenverwebt.

Hm, nachher mal testen.

__________________
"Der größte Trick, den der Teufel je gebracht hat, war die Menschheit glauben zu lassen, es gäbe ihn gar nicht."

Roger "Verbal" Kint, Die üblichen Verdächtigen
03.08.2004 12:03 E-Mail an EthanoliX senden Beiträge von EthanoliX suchen Nehmen Sie EthanoliX in Ihre Freundesliste auf
Selur
spamming old Newbie


images/avatars/avatar-173.png

Dabei seit: 13.03.2002
Beiträge: 10.933

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Kann Weave zwei separate Clips zu einem zusammenfügen?

ne, aber:
Interleave(top, bottom)
bzw.
Interleave(bottom, top)
sollte das machen, was Du willst Augenzwinkern

Cu Selur

__________________
Hybrid
03.08.2004 14:31 Beiträge von Selur suchen Nehmen Sie Selur in Ihre Freundesliste auf
EthanoliX
Kaiser


images/avatars/avatar-100.gif

Dabei seit: 11.04.2002
Beiträge: 1.310
Herkunft: Mainz

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Yo, damit sollte es dann gehen. Werde ich nachher gleich mal testen.

__________________
"Der größte Trick, den der Teufel je gebracht hat, war die Menschheit glauben zu lassen, es gäbe ihn gar nicht."

Roger "Verbal" Kint, Die üblichen Verdächtigen
03.08.2004 14:42 E-Mail an EthanoliX senden Beiträge von EthanoliX suchen Nehmen Sie EthanoliX in Ihre Freundesliste auf
EthanoliX
Kaiser


images/avatars/avatar-100.gif

Dabei seit: 11.04.2002
Beiträge: 1.310
Herkunft: Mainz

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hab's mal getestet, hat geklappt. Das Skript (edit: Achtung Fehler, s. nächster Post) dazu sieht folgendermaßen aus:

clip=SegmentedAviSource("g:/_temp/capture001.avi").AssumeTFF().Bob(1/3,1/3)


#(1)

Top=SelectOdd(clip).separateFields().AssumeFrameBased().SelectOdd()

Bottom=SelectEven(clip).separateFields().AssumeFrameBased().SelectEven()

#(2)

fertig=Interleave(Top,Bottom).AssumeFieldBased().weave()

#(3)

return fertig


zu (1)
An dieser Stelle hat man den Bob-deinterlaced Clip mit voller Auflösung und 50 fps. Hier kann man nach Herzenslust Filtern

zu (2)
Hier wird's ein wenig komplizierter, deshalb nochmal die drei Schritte mit der Erklärung warum in der entsprechenden Reihenfolge (für Top):

SelectOdd() Die ungeraden Frames von Clip entsprechen den Top Fields der Source und genau das sollen die Frames aud Top auch wieder werden

SeparateFields() Wir brauchen nicht die ganzen Frames, sondern nur ein Field

SelectOdd() Wir brauchen das TopField, also alle mit ungerader Nummer.

Das Zweifache SelectOdd() sieht doppelt gemoppelt aus, ist aber notwendig, um zwei Dinge Sicherzustellen:

a) den Zeitversatz zwischen den späteren Halbbildern, dafür das 1. SelectXY()

b) das richtige Field (Top oder Bottom) auszusuchen, denn der Bobber fügt, einfach ausgedrückt, bei den TF unter jeder Zeile, bei den BF über jeder vorhandenen Zeile eine weitere ein, weswegen ein interlaced Clip nach einem einfachen SeparateFields() auch vertikal zu zittern scheint.

zu (3) Wenn man die Prozedur bis (2) abgeschlossen hat, erhält man zwei Clips (Top, Bottom), die zeitlich gesehen um 20 ms versetzt sind, was dem Zeitversatz der beiden Fields eines interlaced Frames entspricht.

Mit Interleave() werden die beiden frameweise verwoben und mit AssumeFieldBased().Weave() wieder ein interlaced Clip erstellt.

Damit solltest Du dann wieder einen echten interlaced Clip erhalten.

__________________
"Der größte Trick, den der Teufel je gebracht hat, war die Menschheit glauben zu lassen, es gäbe ihn gar nicht."

Roger "Verbal" Kint, Die üblichen Verdächtigen

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von EthanoliX: 06.08.2004 00:01.

03.08.2004 18:37 E-Mail an EthanoliX senden Beiträge von EthanoliX suchen Nehmen Sie EthanoliX in Ihre Freundesliste auf
empty
Super Moderator


Dabei seit: 14.04.2002
Beiträge: 1.879

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

@Herbie warum deshakest du nicht einfach die Halbbilder? verwirrt
Viele Grüße bb empty

__________________
The brain needs oxygen,
so why wear a tie? hASi!
05.08.2004 18:01 E-Mail an empty senden Beiträge von empty suchen Nehmen Sie empty in Ihre Freundesliste auf
EthanoliX
Kaiser


images/avatars/avatar-100.gif

Dabei seit: 11.04.2002
Beiträge: 1.310
Herkunft: Mainz

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Das könnte er schon machen, aber dafür müßte er trotzdem das ganze in einen top und einen bottom Clip splitten, da der Deshaker das alternieren von top und bottom Field sonst als Zittern wahrnehmen und zu entfernen versuchen würde.

edit: Hab' das Skript noch mal verändert, klappte noch nicht so, wie es sollte, waren noch ein paar Fehler in der Syntax.

Hier die korrigierte Version:

Source = SegmentedDirectShowSource("g:\_temp\test000.avi").killaudio().AssumeTFF().C
rop(0,72,-0,-72).ConvertToYUY2()

Clip = Bob(Source, 1/3, 1/3)
\.Cnr2()
\.undot()
\.peachsmoother(NoiseReduction=30,Stability=20)
\.GuavaComb(Mode="PAL",Recall=75,MaxVariation=25,Activation=30)
\.Convolution3d(preset="movieLQ")

Top = SelectOdd(clip).separateFields().SelectOdd()

Bottom =SelectEven(Clip).SeparateFields().SelectEven()

Fertig=Interleave(Top,Bottom).Weave()

#return Fertig


So, bis hier ist es einfach nur das korrigierte Skript von oben. Was mir aufgefallen ist ist, daß die interlaced Struktur beibehalten wird, sondern das Filtern zur Rauschunterdrückung und Retusche von Artefakten hat weniger starkke Nebenwirkungen und arbeitet effektiver. Soweit ich bei einem kurzen Test beurteilen konnte auch bei nicht interlaced Material.

Der Rechenaufwand hält sich auch noch in Grenzen mit o.g. Filtern erreiche ich auf meinem Athlon XP 2400+ bei 704*576 ca. 8 fps, was noch akzeptabel ist.

Und das Dollste ist, falls man sehr stark verrauschtes Material hat, kann man die prozedur mittels folgendem Zusatz noch einmal wiederholen, ohne daß das Bildzu sehr leidet. und dennoch der subjektive Eindruck besser ist.

Clip2 = Bob(Fertig, 1/3, 1/3)
\.Cnr2()
\.undot()
\.peachsmoother(NoiseReduction=30,Stability=20)
\.GuavaComb(Mode="PAL",Recall=75,MaxVariation=25,Activation=30)
\.Convolution3d(preset="movieLQ")

Top2 = SelectOdd(clip2).separateFields().SelectOdd()

Bottom2 =SelectEven(Clip2).SeparateFields().SelectEven()

Fertig2=Interleave(Top2,Bottom2).Weave()

return Fertig2

__________________
"Der größte Trick, den der Teufel je gebracht hat, war die Menschheit glauben zu lassen, es gäbe ihn gar nicht."

Roger "Verbal" Kint, Die üblichen Verdächtigen

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von EthanoliX: 05.08.2004 23:58.

05.08.2004 18:07 E-Mail an EthanoliX senden Beiträge von EthanoliX suchen Nehmen Sie EthanoliX in Ihre Freundesliste auf
Videostation
Super Moderator


images/avatars/avatar-81.gif

Dabei seit: 16.03.2002
Beiträge: 1.533
Herkunft: Dresdner Raum

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Das Skript funktioniert einwandfrei. Beim Testen ohne Zwischenfilterung ist mir aufgefallen, dass die Rekonstruktion des Bildes, d.h. Wiederherstellung der Interlacedstruktur, besser gelingt, wenn bei Bob für die Werte des BicubicResize b=0 und c=0.5 gewählt wird. Vergleicht man dann das Original mit dem "ReInterlaced" Bild sind kaum Unterschiede feststellbar, während mit den Standardparametern b=1/3 und c=1/3 noch sichtbare Abweichungen bei den Bildkonturen zu erkennen sind. Die Unterschiede hab ich natürlich nicht durch hin- und herschalten erkannt, sondern mittels Subtract(Original,ReInterlaced) deutlich gemacht. Augenzwinkern
Bei einer Zwischenfilterung ist das aber ziemlich egal, weil die Bildinfos eh verändert werden.

CU Videostation

__________________
WWW.VIDEOSTATION-ONLINE.DE
06.08.2004 19:49 E-Mail an Videostation senden Homepage von Videostation Beiträge von Videostation suchen Nehmen Sie Videostation in Ihre Freundesliste auf
EthanoliX
Kaiser


images/avatars/avatar-100.gif

Dabei seit: 11.04.2002
Beiträge: 1.310
Herkunft: Mainz

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Was ich gerne noch mal testen würde ist iBob(), was im Unterschied zu Bob() einen bilinearen Upsizer verwendet. Nur leider stürzt VDiub immer ab, sobald die .DLL im Plugin-Verzeichnis liegt.

__________________
"Der größte Trick, den der Teufel je gebracht hat, war die Menschheit glauben zu lassen, es gäbe ihn gar nicht."

Roger "Verbal" Kint, Die üblichen Verdächtigen
06.08.2004 19:56 E-Mail an EthanoliX senden Beiträge von EthanoliX suchen Nehmen Sie EthanoliX in Ihre Freundesliste auf
Videostation
Super Moderator


images/avatars/avatar-81.gif

Dabei seit: 16.03.2002
Beiträge: 1.533
Herkunft: Dresdner Raum

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hast du das C API mit ins Plugin Verzeichnis kopiert?
http://kevin.atkinson.dhs.org/avisynth_c/

__________________
WWW.VIDEOSTATION-ONLINE.DE
06.08.2004 20:08 E-Mail an Videostation senden Homepage von Videostation Beiträge von Videostation suchen Nehmen Sie Videostation in Ihre Freundesliste auf
empty
Super Moderator


Dabei seit: 14.04.2002
Beiträge: 1.879

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Schade, dass ich zur Zeit wenig Zeit zum Testen habe. Verstehe zum Beispiel nicht wozu ihr bobbt. IMHO sollte es doch reichen die Halbbilder zu separieren, in Top und Bottom-Fields zu unterscheiden, beide Clips filtern und anschließend per Interleave wieder zusammenfügen. Falls ich da jetzt nicht einen kompletten Denkfehler drin habe, sparst du dir damit auch das doppelte SelectOdd().

Edit: Sowas in der Form

Source().SeparateFields()
Bottom=SelectEven().Filter()
Top=SelectOdd().Filter()
Interleave(Bottom,Top)
Weave()

sollte funktionieren.
Viele Grüße bb empty

__________________
The brain needs oxygen,
so why wear a tie? hASi!
06.08.2004 23:14 E-Mail an empty senden Beiträge von empty suchen Nehmen Sie empty in Ihre Freundesliste auf
EthanoliX
Kaiser


images/avatars/avatar-100.gif

Dabei seit: 11.04.2002
Beiträge: 1.310
Herkunft: Mainz

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Das klappt zwar auch, und für Filter, die ausschließlich räumliche Informationen auswerten, ist dies wahrscheinlich, allein schon der höheren Geschwindigkeit halber, die Methode der Wahl.

Aber falls es sich um Filter handelt, die auch zeitliche Effekte bearbeiten wie z.B. der Deflicker, könnte es im Schlimmsten Fall z.B. so sein, daß die TF alle gleichmäßig heller als der "Durchschnitt" und die BF dunkler sind.

Und falls man nur die Felder trennt und separat filtert, würde das in dem Fall bedeuten, daß der Deflicker sowohl bei den TF als auch bei den BF nichts zu korrigieren findet, da die Unterschiede, auf die er anspringt, nur zwischen den benachbarten TF und BF besteht.

Im Endeffekt läuft es darauf hinaus, daß man so nicht die volle zeitliche Auflösung berücksichtigen kann.

edit:

Hab' das Skript mal mit 'ner analogen Aufnahme getestet, und obwohl die Quelle progressiv war, muß ich sagen, daß o.g. Vorgehensweise, auch wenn sie auf den ersten Blick total überflüssig erscheint, auch bei Progressivmaterial Vorteile hat:

Zum einen scheint die Rauschunterdrückung effektiver zu sein, besonders in bewegten und detailreichen Bildausschnitten. Und zum anderen scheinen scharfe Kanten, die sich in Schneller Bewegung befinden, nicht mehr so stark auszufransen, sondern behalten recht gut ihre Kontur.

edit2:

Hab das Skript mal auf Gleitz/Doom9 gepostet.

S. hier

Das eigentliche ReInterlacing kann einfacher bewerkstelligt werden:

statt zwei Clips einfach:

SeparateFields()
SelectEvery(4,0,3) oder SelectEvery(4,1,2)
Weave()

auf den Gebobbten Clip anwenden

__________________
"Der größte Trick, den der Teufel je gebracht hat, war die Menschheit glauben zu lassen, es gäbe ihn gar nicht."

Roger "Verbal" Kint, Die üblichen Verdächtigen

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von EthanoliX: 19.08.2004 12:17.

07.08.2004 00:36 E-Mail an EthanoliX senden Beiträge von EthanoliX suchen Nehmen Sie EthanoliX in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
*offizielles deutsches flaskmpeg & dvdtoogm board* » *virtualdub(mod) & avisynth* » Wie ReInterlace ich richtig ?

WBB, entwickelt von WoltLab GmBH