Wir sind in UltraHD Morty! Wie man einen Film in 4K sieht

Sie haben wahrscheinlich von Yandex 'DeepHD-Technologie gehört , mit der einst die Qualität alter sowjetischer Cartoons verbessert wurde. Leider ist es noch nicht öffentlich und wir, reguläre Programmierer, haben nicht die Hingabe, unsere eigene Lösung zu schreiben. Aber ich persönlich wollte Rick und Morty unbedingt auf meinem 2880x1880 Retina-Display sehen. Und ich war zutiefst enttäuscht, da selbst 1080p- Videos (das höchste für diese Serie verfügbare) auf einem Retina-Display wirklich verschwommen aussehen! Versteh mich nicht falsch, 1080p ist oft gut genug, aber Retina ist so konzipiert, dass eine Animation mit ihren ausgeprägten Umrissen in 1080p furchtbar verschwommen aussieht, wie 480p auf einem FullHD-Monitor.

Ich habe beschlossen, Rick und Morty in 4K zu sehen, obwohl ich keine neuronalen Netze schreiben kann. Und erstaunlicherweise habe ich eine Lösung gefunden. Sie müssen nicht einmal Code schreiben: Sie benötigen lediglich etwa 100 GB freien Speicherplatz und ein wenig Geduld. Das Ergebnis ist ein scharfes 4K-Bild, das besser aussieht als jede Interpolation.



Vorbereitungen


Zunächst müssen wir verstehen, dass es keine Technologie zum Hochskalieren von Videos mithilfe neuronaler Netze gibt. Oder zumindest ist es nicht öffentlich verfügbar. Und da dies der Fall ist, müssen wir unser Video in eine Reihe von Standbildern verwandeln!

Adobe Premiere Pro oder eine andere Videobearbeitungssuite kann dies, aber da es wahrscheinlich nicht auf vielen PCs installiert ist, habe ich das Konsolendienstprogramm ffmpeg verwendet . Nahm die erste Folge der ersten Serie und ging ich weg:

$ ffmpeg -i RiM01x01_4K.mp4 -q:v 1 IM/01x01_%05d.jpg 

Warum JPG und nicht PNG?
Eine faire Frage. Die Sache ist, 31.000 resultierende PNGs hätten wahnsinnig viel Platz in Anspruch genommen. So sehr, dass sich ein kleines Qualitätsopfer lohnt. Außerdem bedeutet der Parameter = q: v 1, dass wir JPGs in der höchstmöglichen Qualität ausgeben.

Ungefähr 10 Minuten später erhalten wir einen riesigen Ordner mit Bildern. Für mich dauerte es alle 26 GB .

Jetzt müssen wir nur noch jeden einzelnen davon verarbeiten!

Wie?


Ich fand drei Optionen, die einigermaßen gut funktionierten - ziemlich berühmte Let's Enhance , anime-orientierte waifu2x und Mail.ru Vision.

Ich werde die Beispiele später zeigen.

Mail.ru Vision und Let's Enhance machen einen guten Job, aber leider sind sie nicht Open Source, was bedeutet, dass ich 31.000 Bilder verarbeiten muss, um eine E-Mail an ihre Ersteller zu schreiben und wahrscheinlich einiges zu bezahlen. Waifu2x ist Open Source, aber das Ergebnis war eher schlecht - viele Geräusche und Artefakte. Immerhin ist Rick und Morty kein Anime.

Ich hätte mich fast damit abgefunden, GitHub und aktuelle Foren zu graben, aber ... ein Retter erschien! Ich habe eine Lösung gefunden, die lokal auf der Maschine funktioniert, 1 Bild in weniger als einer Sekunde verarbeitet und in Qualität liefert. Sie werden nicht glauben, wer uns noch einmal zu Hilfe gekommen ist!

Adobe Photoshop!

Und nein, ich werde keine Geschichte darüber erzählen, wie Sie ein Bild mit ein paar Filtern verbessern können. Adobe hat tatsächlich ein geeignetes neuronales Netzwerk trainiert, das ein Bild „vervollständigen“ kann, wenn Sie es in der Anwendung hochskalieren!

Zu Beginn müssen wir das Quellbild öffnen, zum Hauptmenü und dann zu Bild - Bildgröße gehen und die Resampling-Option „Details beibehalten 2.0“ auswählen.



Das Ergebnis war überraschend gut! Wahrscheinlich nur nachlaufend Let's Enhance. Hier ist der Vergleich (mit einem um 800% vergrößerten Bild):



Und was jetzt? Jedes Bild manuell verarbeiten?
Natürlich nicht! Photoshop verfügt über das Aktionswerkzeug, mit dem Sie zuerst eine Folge von Aktionen aufzeichnen und dann auf einen gesamten Ordner mit Bildern anwenden können. Der Vorgang ist eine flüchtige Google-Suche entfernt.

Ich verließ meinen Laptop, um 31.000 Bilder durch die Nacht mit einer einfachen Anweisung zu verarbeiten: „2x hochskalieren und speichern“. Am nächsten Morgen war alles fertig. Ich hatte einen anderen Ordner voller Bilder, aber jetzt in 4K und mit 82 GB Speicherplatz .

Zurück zum Video


Ffmpeg wieder zur Rettung.

Zuerst erinnern wir uns, dass wir die Audiospur vergessen und aus der Originaldatei extrahiert haben:

 ffmpeg -i RiM01x01_1080p.mp4 -vn -ar 44100 -ac 2 -ab 320K -f mp3 sound.mp3 

Dann legen wir die Audiodatei in den Ordner mit allen 4K-Bildern. Wir sind jetzt bereit für die endgültige Montage!

 ffmpeg -i 01x01_%05d.jpg -i sn.mp3 -vcodec libx264 -preset veryslow -crf 10 -r 23.976 RiM_01x01_4K.mp4 

Seien Sie vorsichtig : Geben Sie nach -r die genaue Framerate des Originals an , da sonst die Audiospur nicht mit dem Video übereinstimmt!

Es ist geschafft!


Wir haben jetzt die erste Folge von Rick und Morty in 4K. Hier ist das Beispielvideo . Natürlich war der gesamte Prozess etwas amateurhaft, aber dieser Ansatz hat einen ernsthaften Vorteil. Beim Importieren der Bilder in Photoshop können wir sie manuell basteln, um sie genau richtig zu machen. Passen Sie den Fokus und die Farbbalance basierend auf einigen Bildern an, schreiben Sie sie in eine Aktion, wenden Sie sie auf das gesamte Video an und - voila! Ein perfektes Ergebnis ohne zu viele mathematische Tricks. Dies bringt die „Wunder-Hochskalierung“ einem durchschnittlichen Benutzer ein Stück näher. Die komplexesten Technologien, die seit Jahrhunderten entwickelt werden, können nicht schnell und ohne besondere Kenntnisse eingesetzt werden - was ist das, wenn nicht die Zukunft?

Source: https://habr.com/ru/post/de441918/


All Articles