Erhöht eure Video-Framerate! - Mit Flowframes

video framerate flowframes.jpg

Hiho und schönen Sonntag, ihr lieben Hive-Menschen! Heute möchte ich euch eine kleine Software namens Flowframes vorstellen, welche dank der Verwendung von künstlicher Intelligenz, Video-Interpolation auf ein neues Level hebt. Keine Sorge, dass klingt nun wahrscheinlich komplizierter als es tatsächlich ist. Selbst wenn ihr keine Bewegtbild-Nerds, VFX-Artists oder Video-Editoren seid, könnte diese Software dennoch von Nutzen für euch sein. Aber fangen mir mal bei den Basics an:

Framerate – Bildfrequenz

Jegliches Bewegtbildformat, egal ob digital oder analog, hat eine bestimmte Framerate (übersetzt Bildfrequenz). Diese definiert wie viele Bilder wir pro Sekunde sehen und wird fast immer mit FPS (Frames per second) abgekürzt.

Im Kino erleben wir 24fps, im europäischen Fernsehen 25fps und in Nordamerika 30fps[1]. Klassische PC-Bildschirme haben 60fps (meist aber in Herz angegeben), Gaming Monitore gibt es mittlerweile mit 360fps / 360Hz[2]. Ich möchte jetzt nicht zu tief in die Materie eintauchen, aber als Faustregel kann man sagen: Umso mehr fps, umso „flüssiger“ empfinden wir eine Bewegung. Deswegen haben wir im Kinosaal unsere cineastischen 24fps, Profi-Gamer haben jedoch gern das zehnfache mit 240Hz Monitoren.

Umkehrt funktioniert es auch nicht. Ein klassisches Videospiel, welches mit 24fps läuft, fühlt sich träge und mühsam an. Ebenso empfinden viele Menschen Kinofilme, welche mit einer höheren Framerate abgespielt werden, als befremdlich. Ein sehr gutes Beispiel ist „Der Hobbit“, welcher in machen Kinos mit 48fps zu sehen war. Der sogenannte „Seifenopern“-Effekt[3] war für viele Zuschauer störend.
Man muss es tatsächlich gesehen haben, um zu verstehen, was Kinogänger unter dem „Seifenopern“-Effekt verstehen. Die Figuren, aber auch Gegenstände sind scharf gezeichnet, heben sich dadurch aber wie ausgeschnittene Pappkartons oftmals vom Hintergrund ab. Statt der versprochenen Tiefe und des realistischen Bildes wirkt alles seltsamerweise flacher und künstlicher als jeder 2D-Film, den ich bisher gesehen habe.
Quelle: https://futurezone.at/meinung/hobbit-in-48fps-noch-nie-war-kino-so-flach/24.589.161

Frame Interpolation

Möchte man nun in seinem 24fps Kinofilm eine Zeitlupe einbauen, muss die entsprechende Sequenz zuvor mit einer höheren Framerate gefilmt werden. Also zum Beispiel für eine vierfache Verlangsamung ist es sinnvoll, eine Szene mit 96fps zu filmen. Verlangsamt man Bewegtbildmaterial, welches keine höhere Framerate besitzt entsteht ein unschönes Ruckeln. Selbst in teuren Kinofilmen ist dies, leider, öfters zu sehen. Zum Beispiel weil der Regisseur erst im Schnitt beschließt, eine Szene in Zeitlupe zu zeigen, welche zuvor nicht dafür vorgesehen war.


Eindeutiges Ruckeln der Tischkante im Hintergrund

Und hier kommt nun Frame Interpolation ins Spiel. Dabei werden mit Hilfe von Algorithmen künstliche Zwischenbilder berechnet.
Motion_interpolation_example.jpg
Quelle: https://de.wikipedia.org/wiki/Motion-Interpolation

Dabei wird ermittelt, welche Bereiche im Bild sich wohin bewegt haben. Dafür kann es sein, dass der Algorithmus nicht nur zwei Bilder miteinander vergleicht, sondern eine Vielzahl von Einzelbildern betrachtet, um die Bewegung besser zu bestimmen. Je nach Videoquelle kann dieser Vorgang zu sehr guten, bis zu furchtbaren Ergebnissen führen. Diese sind dann als störhafte Artefakte oder unnatürlich aussehende Bewegungen sichtbar.

artifacts.jpg
Quelle: Artifacts from conventional motion interpolation

Video-Interpolation wird heutzutage von so ziemlich jeden Videoschnitt bzw. Compositing-Programm unterstützt, und ist meist mit ein paar Mausklicks erledigt. Oft stößt man dabei leider an die Grenzen klassischer Algorithmen. Das mussten auch ich und @ninki.vienna zuletzt bei einem Video-Projekt feststellen. Deswegen entschieden wir uns einen neuartigeren Ansatz zu wählen.

Flowframes – Video-Interpolation mit KI (künstlicher Intelligenz)

Während meiner Diplomarbeit bin ich, als ich nach Beispielen für KI-Anwendungen im Videobereich suchte, auf FlowFrames gestoßen. Tatsächlich las ich zuerst ihre Forschungsarbeit bevor ich bemerkte, dass sie ihre Algorithmen auch in einem gratis OpenSource-Projekt zu Verfügung stellen. Hier ist ein Link zur Forschungsarbeit: RIFE: Real-Time Intermediate Flow Estimation for Video Frame Interpolation Dort ist auch ersichtlich, dass die Ergebnisse mit ihrem Algorithmus weit bessere Ergebnisse liefert als klassische Methoden.


Links: Original, rechts mit Frame Interpolation durch Flowframes

Glücklicherweise ist FlowFrames, obwohl die darunterliegenden Algorithmen hochkomplex sind, in der Anwendung kinderleicht. Dies wird schon durch das minimalistische Interface verdeutlicht:

flowframes ui.jpg

Über den Button „Browse (Video)“ wählt man die gewünschte Videodatei aus, im Feld darunter definiert man wo das neu erstellte File dann gespeichert werden soll. Bei „Set FPS / Interpolation Factor“ definiert man wie stark man die Framerate erhöhen möchte. Dies ist eine große Stärke von Flowframes, viele klassische Softwareprodukte ermöglichen nur maximal eine Verdoppelung. Als „AI Model“ verwendet man das standardmäßig ausgewählte Modell. Diesen Reiter sollte man nur justieren, falls man fehlerhafte Ergebnisse bekommt. Beim „Output Mode“ stellt man je nach Wunsch das bevorzugte Videoformat ein. Danach muss man nur noch auf den Button „Interpolate!“ drücken.

Und schon beginnt der Computer zu arbeiten, und zwar ordentlich. Wie so ziemlich alle klassischen KI-Anwendungen benötigt Flowframes eine ordentliche Grafikkarte. Als Mindestanforderung würde ich 4GB VRAM empfehlen, 6GB oder mehr sind jedoch optimal. Falls ihr diesbezüglich überfragt seid, was ihr für eine Grafikkarte habt, könnt ihr das unter Windows 10 einfach über den Task-Manager ansehen.

taskmanager.jpg

Wer keine Nvidia Grafikkarte hat, muss auf das „RIFF – Vulkan“ im Reiter „Interpolation AI“ zurückgreifen. Umso größer die Bildauflösung des Inputvideos ist, umso enormer ist die benötigte Rechenleistung. Bis FullHD (1920x1080) ist die Interpolation auch noch mit klassischen Gaming-Grafikkarten problemlos machbar, ab 4K (3840x2160) wird wirklich enorm viel Leistung notwendig.

Falls ihr keine entsprechende Hardware habt, jedoch gerne Flowframes für einen Clip ausprobiert hättet, schreibt mir einfach und ich kann euch das gerne mit meinen Computer berechnen.

Einsatzzwecke

Die klassischen Fälle sind natürlich Personen, die Videoschnitt betreiben oder einfach regelmäßig Videos publizieren(vllt. etwas für dich @for91days ?). Ich weiß gar nicht wie oft es mir schon passiert ist, dass ich gerne in einer Szene Zeitlupe verwendet hätte, jedoch das entsprechende Quellmaterial dies verhinderte. Jedoch gibt es, meiner Meinung nach, noch einen anderen offensichtlichen Einsatzzweck: Restaurieren von altem Material.

Vielleicht habt ihr, eure Eltern oder Großeltern noch richtig altes Bildmaterial. Zum Beispiel von Familienfeiern oder ersten Reisen. Super8 Film, welcher früher sehr verbreitet war, wurde meist mit 18fps gefilmt[4]. Diese ruckeligen Aufnahmen können durch Frameinterpolation neues Leben erhalten. Hier ist ein Beispiel:

Fazit

Ich als Video-Editor, finde es spannend, wie immer mehr und mehr KI-Softwareanwendungen in mein Fachgebiet eintauchen. Erst heute hat ja auch @altobee einen Post veröffentlicht wo es um Tool ging, welches einen KI-Ansatz verwendet. Oft sind diese jedoch für so spezielle Anwendungsfälle gedacht, dass sie für Personen, die nicht in diesen Fachbereich tätig sind, keinen Nutzen haben. Ich denke, dies ist mit Flowframes, schon ein wenig anders und deswegen wollte ich es euch nicht vorenthalten. Vor allem der Restaurierungsansatz ist einen Blick wert. Denn ihr könnt ja nicht nur die Framerate erhöhen, sondern auch die Bildauflösung dramatisch erhöhen (zum Beispiel mit der Testversion von Video Enhance AI


Und selbst wenn ihr den Nutzen der Restaurierung (noch) nicht sieht, habe ich eine Aufgabe für euch: Fragt in eurer Familie nach alten Aufnahmen und digitalisiert sie, damit diese wertvollen Erinnerungen nicht verloren gehen. Außerdem werdet ihr damit vor allem der älteren Generation ein Lächeln aufs Gesicht zaubern, wenn die Jahrzehnte alten Videos plötzlich auf dem großen TV im Wohnzimmer wieder zu sehen sind.



Falls ihr irgendwelche Fragen zum Thema habt, dann nur her damit!

Quellen

[1] https://flauntdigital.com/blog/video-frame-rates/
[2]https://www.nvidia.com/de-at/geforce/technologies/360-hz/
[3]https://de.wikipedia.org/wiki/Soap-Opera-Effekt
[4]https://www.straight8.net/cheat-sheet

H2
H3
H4
3 columns
2 columns
1 column
14 Comments
Ecency