Niemand erwartet Spielfilmqualität von Handyvideos. Dank Software und KI lassen sich verwackelte, verrauschte oder schmalspurige Aufnahmen aber so weit aufpeppen, dass sie am Bildschirm ansprechend aussehen.
Mit dem Handy erstellte Videos liegen im Trend. Ärgerlich nur, dass die ohne Stativ gedrehten Filmchen meist verwackelt sind und der kleine Bildsensor des Handys an dunklen Drehorten an seine Grenzen stößt. Aufnahmen, die schon einige Jahre auf dem Buckel haben, liefern in der Regel eine für heutige Bildschirme zu geringe Auflösung.
In professionelle Filmaufnahmen verwandeln die hier vorgestellten Tipps die aus der Hüfte geschossenen Handyvideos zwar nicht, doch mit der richtigen Software erfährt ihre Qualität eine spürbare Verbesserung. Das Hochrechnen der Auflösung gelingt mit künstlicher Intelligenz, dem sogenannten KI-Upscaling, ohne dass ein störender Treppeneffekt auftritt (Abbildung 1). Eine Videostabilisierung per Software gleicht ein Verwackeln aus.

Abbildung 1: KI-Upscaling (links) liefert bei einer vierfachen Vergrößerung glatte Linien ohne Kompressionsartefakte. Das Ergebnis wirkt präsentabler als beim Hochskalieren mit bilinearer Interpolation (rechts).
Intelligent erkannt
Es hilft wenig, ein digitales Bild durch Verdoppeln der Bildpunkte zu vergrößern. Selbst traditionelle Upscale-Algorithmen wie bilineare und bikubische Vergrößerung oder das Lanczos-Verfahren berechnen zumindest einen Mittelwert aus umgebenden Pixeln, wobei sie nur den reinen Farbwert registrieren.
KI-Upscaling dagegen versucht, konkrete Formen zu erkennen und sie glatt und scharf darzustellen. Damit verbessert es die Bildqualität bei zu geringer Auflösung und eliminiert daneben noch Rauschen und Kompressionsartefakte. Zwar wirkt die KI keine Wunder, denn nur in US-Krimiserien entstehen aus stecknadelkopfgroßen Gesichtern wie durch Zauberhand deutlich erkennbare Personen. Sie erzeugt aber immerhin visuell ansprechendere Ergebnisse als klassische Verfahren (Abbildung 1).
Upscale-Algorithmen vergrößern einzelne Bilder. Wer sich nicht damit auseinandersetzen möchte, eine Videodatei in eine Bildfolge zu zerlegen, diese dann per Batchjob zu skalieren und wieder zusammenzusetzen, sollte ein Programm wie Video2x [1] verwenden, das diese Arbeitsschritte automatisiert. Für OpenSuse existiert zwar kein Video2x-Paket, aber es gibt immerhin ein generisches Appimage [2]. Unter Leap benötigt es die Bibliothek Freetype6. Die Installation eines RPMs vom OpenSuse-Build-Service [3] genügt dafür (Listing 1, erste Zeile).
Damit KI-Algorithmen in vernünftiger Geschwindigkeit ablaufen, sind sie auf die Beschleunigung durch die Grafikkarte angewiesen. Video2x nutzt dabei die Abstraktionsschicht Vulkan, die für Intel- und AMD-Karten unter OpenSuse direkt einsatzbereit ist. Nvidia-Anwender benötigen eine funktionierende 3D-Beschleunigung [4] und installieren das Paket libvulkan1. Ob Video2x verwendbare Karten findet, zeigt der Aufruf aus der zweiten Zeile von Listing 1.
Die Appimage-Version für Linux enthält nur das Kommandozeilenprogramm video2x. Zum Hochskalieren eines Videos rufen Sie den Befehl aus der letzten Zeile von Listing 1 auf. Das Kommando wählt das für das Vergrößern von Videoaufnahmen optimierte KI-Modell aus. Die Option -s 4 setzt den dafür einzig möglichen KI-Skalierungsfaktor, während -w und -h die Auflösung des endgültigen Videos festlegen. Die Dokumentation des Programms erläutert die verfügbaren Parameter und Modelle inklusive der Möglichkeit, die Bewegungsabläufe von mit zu geringer Framerate aufgenommenen Videos durch Frame-Interpolation flüssiger wirken zu lassen.
Listing 1
Video2x
$ sudo zypper in libfreetype6-2.13.3-lp156.233.1.x86_64.rpm $ Video2X-x86_64.AppImage -l $ Video2X-x86_64.AppImage -i test.mp4 -o up.mp4 -p realesrgan --realesrgan-model realesrgan-plus -s 4 -w 3840 -h 2160
Vielfach vereinfacht
Beim Real Video Enhancer [5] handelt es sich um einen KI-Upscaler mit einer grafischen Oberfläche (Abbildung 2). Mit dem obsoleten Realvideo-Dateiformat hat das Programm nichts zu tun, es unterstützt die gängigen Formate und Codecs. Die Software ist als Paket über das Flatpak-Standard-Repository verfügbar, das Sie mit dem Befehl aus der ersten Zeile von Listing 2 einrichten. Mit den beiden folgenden Kommandos installieren Sie das Programm. Flatpak-typisch fällt dabei 1 Gigabyte Download-Volumen an, da neben den umfangreichen KI-Modellen noch eine Laufzeitumgebung eingerichtet wird.

Abbildung 2: Die Video-Upscaling-Software Real Video Enhancer erledigt die Installation für gängige Grafikkarten per Mausklick. Auch sonst fällt die GUI des Programms handlich aus.
Listing 2
Real Video Enhancer
$ sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo $ sudo flatpak update $ sudo flatpak install flathub io.github.tntwise.REAL-Video-Enhancer $ flatpak run io.github.tntwise.REAL-Video-Enhancer
Real Video Enhancer lässt sich anschließend via Startmenü oder auf der Konsole mit dem Aufruf aus der letzten Zeile des Listings starten. Beim ersten Start öffnet sich die Download- und Installationsseite der Software (zweiter Reiter in der Auswahlleiste ganz rechts). Hier gilt es erst einmal, ein Backend herunterzuladen und zu kompilieren, sprich eine Lösung für die Einbindung der Grafikkarte, was die Software per Knopfdruck erledigt. Zur Wahl steht unter anderem ein Vulkan-Backend, das immer dann funktionieren sollte, wenn Vulkan wie für Video2x beschrieben auf dem System eingerichtet ist.
Leistungsfähiger ist das Backend auf der Basis des Machine-Learning-Frameworks PyTorch. Hier wählen Sie zunächst die passende Version und das richtige PyTorch-Backend aus: CUDA für Nvidia-GPUs, ROCm für AMD-Boards und xpu für Intel-Karten. Besitzer von Nvidia-Karten aus der Geforce-20-Serie ab dem Jahr 2019 installieren das noch schnellere Backend TensorRT.
Die KI-Modelle (Models) lädt das Programm bei der ersten Benutzung herunter, sie sind nur einige Megabytes groß. Wer diese Machine-Learning-Frameworks schon einmal in einer aktuellen Version von Hand installiert hat, weiß zu schätzen, wie viel Arbeit ihm das Programm hier abnimmt.
Im zweiten Reiter Input wählen Sie eine Eingabedatei aus und legen einen Ordner für die Ausgabe fest. Bei letzterem drohen für das Flatpak-Programm unter Umständen Probleme beim Schreibzugriff. Um eine in langwieriger Rechenzeit erstellte hochskalierte Videodatei dennoch zu finden, falls sie nicht wie erwartet im Ausgabeverzeichnis erscheint, genügt ein Wechsel in den Reiter Render Queue. Dort erscheint unter Finished Output Files ein mit /run/user/ beginnender Dateipfad. Das Video bleibt dort bis zum nächsten Reboot erhalten.
Nach der Auswahl von Eingabedatei und Ausgabeverzeichnis aktivieren Sie die Kontrollkästchen Upscale oder Interpolate oder zumindest eines davon. Die Interpolation erhöht die Bildrate pro Sekunde von mit niedriger Bildfrequenz aufgenommenen Videos und sorgt für flüssigere Bewegungsabläufe. Wählen Sie für Videoaufnahmen ein mit Realistic gekennzeichnetes Upscale– und Interpolate-Modell.
Real Video Enhancer liefert drei Modelle für Videoaufnahmen und einige weitere für animierte Comics mit. Für Kameraaufnahmen optimiert sind OpenProteus, Nomos8k in Spielarten für qualitativ hochwertige, mittelmäßige und schlechte Aufnahmen sowie ein RealisticVideo genanntes Modell. Die Nomos8k-Fassungen unterscheiden sich darin, wie viel Bildrauschen und Kompressionsartefakte sie ignorieren, und liefern unterschiedlich scharfe Ergebnisse.
Es ist schwierig, die Qualitätsunterschiede der Modelle im Druck darzustellen (Abbildung 3), doch auf dem Bildschirm ergab sich im Test für das Video eines Gesichts vor einem blauen Hintergrund ein recht klarer Sieger: Das von 1024 x 576 auf das Vierfache skalierte Video liefert in der OpenProteus-Version die überzeugendste Bildschärfe. Das Ergebnis mit Nomos8k wirkt leicht unscharf, während RealisticVideo ein artifiziell überzeichnetes Resultat berechnet. Allerdings bleibt diese Wertung subjektiv, zudem kann die Qualität für Videos mit anderen Bildinhalten anders ausfallen.

Abbildung 3: Ein Einzelbild eines vierfach hochskalierten Videos in vierfacher Vergrößerung zeigt, dass der Clip beim Modell Nomos8k (Mitte) etwas unscharf und bei Realvideo (rechts) überzeichnet scharf ausfällt. Bei OpenProteus (links) wirken Bild und Farben am natürlichsten.
Auch bei der Rechenzeit gibt es Unterschiede. Im Test skalierten wir einen Clip mit 11 Sekunden Dauer in der Auflösung 1024 x 576 auf das Vierfache hoch. Auf einer halbwegs aktuellen Nvidia-RTX-4070-Karte aus dem Leistungsmittelfeld dauerte dieser Vorgang unter Einsatz des schnellsten TensorRT-Backends mit dem Nomos8k-Modell (hohe Qualität) 7,44 Sekunden. Für dieselbe Arbeit vergingen mit dem OpenProteus 12,48 Sekunden, RealisticVideo lag mit 11,4 Sekunden nicht weit darunter.
Generell wirken per KI stark hochskalierte Videos unnatürlich glatt, denn bei der resultierenden Auflösung eigentlich erkennbare Details wie die Hautstruktur fügen die simplen Modelle in Real Video Enhancer und Video2x dem Bild nicht hinzu. Natürlich wirkende, um das Vierfache vergrößerte Aufnahmen mit Personen im Vordergrund gelingen daher nicht. Bei verdoppelter Auflösung fällt der Effekt weniger auf.
Abmildern lässt die unnatürliche Glätte durch Hinzufügen eines für sich genommen kaum sichtbaren Rauschens, wie es der Ffmpeg-Aufruf aus Listing 3 erzeugt.
Listing 3
Rauschen erzeugen
$ ffmpeg -i input.mp4 -vf noise=c0s=15:c0f=t+u output.mp4
Stabile Verhältnisse
Selbst bei bester Bildqualität bleibt ein verwackeltes Video unansehnlich. Es fällt schwer, ein unbequem zu greifendes Smartphone mit ruhiger Hand zu drehen oder auszurichten, ganz zu schweigen von Clips, die beim Laufen, Radfahren oder aus Fahrzeugen heraus entstehen. Nicht umsonst setzen Profis auf ergonomische Kameragriffe, oft in Kombination mit einer drehbaren Lagerung (Gimbal). Doch solche Vorrichtungen passen nicht in die Hosentasche.
Es gibt jedoch zwei technische Möglichkeiten, um Videos nachträglich zu stabilisieren. Um Verwackeln über reine Bildanalyse zu glätten, brauchen Sie nichts als das Video selbst und Ffmpeg, das Schweizer Taschenmesser der Konsolenvideobearbeitung, allerdings in der Version aus dem Community-Repository Packman [6].
Der zweite, leistungsfähigere Ansatz besteht darin, die Gyroskopdaten des Handys parallel zum Video aufzunehmen und auf deren Basis die Bewegungen des Objektivs zu kompensieren. Dieses Verfahren verwenden auch sogenannte Action-Cams. Ein gewöhnliches Android-Smartphone und freie Software genügen jedoch schon. Da beide Verfahren zur Bewegungskompensation den Bildausschnitt verschieben, gehen zwangsläufig Bilddaten an den Rändern verloren.
Für die Bewegungskompensation mit Ffmpeg sind während der Aufnahme keine besonderen Vorkehrungen nötig. Aktivieren Sie auf Ihrem OpenSuse-System gegebenenfalls das Packman-Repository für die Vollversion von Ffmpeg mit dem Aufruf aus der ersten Zeile von Listing 4. Nach einem Update (Zeile 2) installieren Sie die korrekte Ffmpeg-Version (Zeile 3).
Listing 4
Ffmpeg
$ sudo zypper addrepo -cfp 90 'https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_$releasever/' packman $ sudo zypper update $ sudo zypper in ffmpeg-7 $ ffmpeg -i original.mp4 -vf vidstabdetect=result="video1.trf" -f null - $ ffmpeg -i original.mp4 -vf vidstabtransform=input="video1.trf",unsharp=5:5:0.8:3:3:0.4 out_stabilized.mp4 $ ffmpeg -i original.mp4 -vf vidstabdetect=shakiness=10:result="video1.trf" -f null - $ ffmpeg -i original.mp4 -vf vidstabtransform=input="video1.trf:smoothing=20",unsharp=5:5:0.8:3:3:0.4 out_stabilized.mp4
Die Stabilisierung erfordert zwei Durchläufe. Den ersten Analyseschritt startet das Kommando aus Zeile 4. Er erzeugt kein neues Video, sondern lediglich die Datei video1.trf mit den Ergebnissen der Bewegungsanalyse. Der Befehl aus Zeile 5 erstellt das stabilisierte Video out_stabilized.mp4. Außer dem Vidstab-Filter fügt dieser Aufruf noch eine leichte Unschärfe hinzu, wie es die Anleitung für Vidstab auf der Github-Seite der Software [7] empfiehlt.
Die Standardeinstellungen eignen sich für typische aus der Hand geschossene Handy-Videos. Hat die Kamera beim Radfahren oder im Bus besonders stark gezittert, dann hilft es, im Analyseschritt den Parameter shakiness vom Standardwert 5 auf den Höchstwert 10 zu setzen (Zeile 6). Dabei ist das Grundmuster der Parameterangabe bei Ffmpeg zu beachten: Auf den Basisparameter vidstabdetect folgen nach einem Gleichheitszeichen weitere Einstellungen in der Form a=x:b=y. Wichtig ist die smoothing-Einstellung beim zweiten Render-Schritt. Die Videostabilisierung wirkt wie ein Öldämpfer für Kamerabewegungen und filtert schnelle Spitzen heraus. Ein höherer smoothing-Faktor dämpft stärker, schneidet jedoch einen breiteren Randbereich ab. Die Eingabe aus Zeile 7 verdoppelt den Standarddämpfungsfaktor von 10.
In Zusammenhang damit steht der Parameter optzoom. In seiner Standardeinstellung 1 sorgt er für einen Kompromiss zwischen der Größe des durch ausgleichende Verschiebung des Ausschnitts verlorenen Bildrands und dem Erscheinen störender schwarzer Ränder. Lediglich bei den stärksten Ausschlägen kann kurz ein Rand im Bild sichtbar werden. Die Einstellung optzoom=2 verhindert das auf Kosten eines breiter abgeschnittenen Bereichs.
Kreiselinstrument
Die Vidstab-Funktion von Ffmpeg per Vidstab ist eine simple und wirkungsvolle Methode, um verwackelte Videos präsentabel aufzubereiten. Stärkere Schwingungen verschwinden in der Regel nicht ganz. Exakter und verlässlicher arbeitet die Videostabilisierung auf Basis der Gyroskop-Daten des Smartphones. Dieses Verfahren beherrscht die PC-Anwendung Gyroflow [8] (Abbildung 4). Sie installieren sie unter Leap aus dem OpenSuse-Build-Service (Listing 5).

Abbildung 4: Gyroflow nutzt die auf dem Smartphone aufgezeichneten Daten des Gyroskopsensors (Kurven unten), um Kamerabewegungen herauszurechnen.
Listing 5
Gyroflow
$ zypper addrepo https://download.opensuse.org/repositories/home:adrianSuSE/15.6/home:adrianSuSE.repo $ zypper update $ sudo zypper in gyroflow gyroflow-lens_profiles
Auf dem Smartphone brauchen Sie zusätzlich eine App zum Aufzeichnen der Bewegungsdaten parallel zum Video. Am besten eignet sich dafür unter Android OpenCamera-Sensors [9], eine Spielart der Open-Camera-App (Abbildung 5). Zwar dümpelt das Programm schon seit drei Jahren ohne Update vor sich hin, bietet aber dennoch mehr für die Videoaufzeichnung als die meisten bei Smartphones mitgelieferten Kamera-Apps. Außerdem ist bei ihr die bereits auf dem Smartphone stattfindende Bewegungskompensation ausgeschaltet, die eine Korrektur in Gyroflow sabotieren würde.

Abbildung 5: Die App OpenCamera-Sensors zeichnet die Daten des Bewegungssensors im Smartphone parallel zur Videoaufnahme auf.
Standardmäßig legt OpenCamera-Sensors die Daten im Verzeichnis DCIM/OpenCamera/ ab. Parallel zu einer Videodatei erstellt es einen gleichnamigen Ordner, in dem es die Bewegungsdaten speichert. Damit Gyroflow sie lädt, genügt es, die Videodatei und den zugehörigen Ordner auf den PC zu übertragen (Abbildung 6).

Abbildung 6: Um die Daten aus der App OpenCamera-Sensors in Gyroflow zu nutzen, genügt es, das Video und den gleichnamigen Ordner auf den PC zu kopieren.
Gyroflow steht für OpenSuse in einer aktuellen Version in einem Community-Repository zur Verfügung. Unter Wayland bleibt das Anwendungsfenster allerdings leer, es sei denn, der Start erfolgt auf der Konsole unter Angabe des Parameters QT_QPA_PLATFORM=xcb gyroflow.
Bevor die Software Bildkorrekturdaten errechnet, ist eine Kalibrierung erforderlich, weil die Relation zwischen Bewegungsdaten und Bildschwenk von der Brennweite der Optik und weiteren Faktoren abhängt. Diese Daten nennt Gyroflow Linsenprofil. Profile für gängige Mobiltelefone fördert die Suchfunktion im Linsenprofil-Unterfenster links in der Mitte des Programmfensters zutage.
Findet sich kein Linsenprofil für Ihr Smartphone, dann erstellt es der Button Erzeugen. Der Dialog Linsen-Kalibrierung enthält den Link auf eine Internetseite, die das Vorgehen detailliert und verständlich erläutert. Dazu müssen Sie ein Schachbrettmuster filmen, das der Dialog anzeigt, und genau wie später die zu stabilisierenden Videodateien in das Gyroflow-Fenster ziehen. Das Kalibrieren dauert nur wenige Minuten. Die Profile funktionieren auch für Aufnahmen mit anderen Auflösungen, solange das Seitenverhältnis übereinstimmt.
Haben Sie die mit OpenCamera-Sensors angefertigten Videoaufnahme samt zugehörigem Unterordner mit den Bewegungsdaten auf den PC kopiert, genügt es, sie auf den Hauptschirm des Gyroflow-Fensters zu ziehen. Das Programm lädt die Bewegungsdaten automatisch. Nun fehlt nur noch ein Klick auf den Button Auto Sync, der die Bewegungsdaten und die Videoaufnahmen anhand von markanten Punkten im Video zeitlich korreliert. Die Dokumentation nennt weitere Apps für iPhones sowie Kameras mit eingebauten Sensoren.
Dann können Sie das Video bereits mit den Player-Buttons unten abspielen. Die Standardeinstellung zeigt dabei das stabilisierte Video. Die Schaltfläche Stabilisierungsansicht Umschalten ganz links in der rechts unter dem Player angeordneten Schalterleiste blendet die bei der Bewegungskompensation abgeschnittenen Randbereiche ein und zeigt so das Stabilisierungsverfahren.
Die Videostabilisierung mit Gyroflow erfordert mit ihrer Kalibrierung und der zum Aufzeichnen der Bewegungsdaten erforderlichen Smartphone-App mehr Aufwand als die Stabilisierung mit Ffmpeg, liefert aber bessere Ergebnisse und bietet mehr Möglichkeiten. So dämpft das Programm nicht bloß ein Verwackeln, sondern stabilisiert auf Basis der Daten des Mobiltelefons den Horizont. Dabei rechnet Gyroflow ein seitliches Kippen des Bilds vollständig heraus, statt die Drehung nur zu glätten. So gelingen Aufnahmen, wie sie sonst nur mit einer drehbar aufgehängten Kamera möglich sind.
Mit seiner Autosync-Funktion arbeitet Gyroflow auch mit Digitalkameras ohne eigenen Bewegungssensor zusammen. Ein an der Kamera befestigtes Smartphone übernimmt die Aufzeichnung der Gyroskopdaten. Es ist kein Problem, wenn die Aufzeichnung der Bewegungsdaten und des Videos nicht synchron startet. Die Software kommt nach einer Kalibrierung sogar damit klar, dass die Smartphone-Linse nicht in dieselbe Richtung zeigt wie die Videokamera. Die Gyroflow-Dokumentation [10] nennt Apps für Android und iOS, die Bewegungsdaten mitschreiben.
Fazit
Verwackelte, in niedriger Auflösung oder Framerate vorliegende, durch Sensorrauschen oder Kompressionsartefakte verunstaltete Videos lassen sich mit KI-basierter Upscale-Software oder einer Videostabilisierung oft retten. Die hier vorgestellten Werkzeuge gefallen in der Anwendung und nehmen dem Anwender mühsame Handarbeit ab. (uba)
Infos
-
Video2x: https://github.com/k4yt3x/video2x
-
Video2x-Appimage: https://github.com/k4yt3x/video2x/releases/download/6.4.0/Video2X-x86_64.AppImage
-
Freetype-Upgrade: https://software.opensuse.org/download/package?package=libfreetype6&project=home%3ASauerland
-
Nvidia-Grafiktreiber: https://en.opensuse.org/SDB:NVIDIA_drivers
-
Real Video Enhancer: https://github.com/TNTwise/REAL-Video-Enhancer
-
Gyroflow: https://gyroflow.xyz
-
OpenCamera-Sensors: https://github.com/MobileRoboticsSkoltech/OpenCamera-Sensors
-
Gyroflow-Dokumentation: https://docs.gyroflow.xyz/app/advanced-usage/using-external-gyro-source/action-camera-as-a-logger






Flatpaks werden ohne sudo installiert denn das ist eine Sicherheitslücke…
Wenn man Flatpaks mit sudo installiert, verliert der Container seinen Sinn.
Das sagt dir auch der Flatpak befehl wenn man probiert ihn mit sudo auszuführen…
Wenn ihr beim Flatpak Programme installieren solche Fehler habt, wie schaut’s dann im Rest aus, wenn das ein grundlegendes Basic ist…
und hört mal auf Kommentare nicht zuzulassen nur weil die eine Kritik sind…. das ist nämlich mit sehr großem Abstand von dem was die wahre Linux Community ausmacht….
Hi Bryan,
wir lassen durchaus kritische Kommentare zu, wie du an diesem Beispiel siehst. Es kommt aber immer wieder vor, dass wir aufgrund von Urlaub, Krankheit oder anderen Ereignissen die Kommentare etwas verzögert freischalten.
Beste Grüße
Tim Schürmann