ffmpeg: Kontrast adaptiv strecken

ffmpeg: Kontrast adaptiv strecken

Stellen Sie sich ein (Farb-)Video vor, das unter schlechten Bedingungen aufgenommen wurde. Die hellsten Pixel der Einzelbilder liegen deutlich unter reinem Weiß, die dunkelsten deutlich über reinem Schwarz. Kann der Kontrast jedes Einzelbilds näher an den vollen Helligkeitsbereich herangeführt werden, wie bei einem Audiokompressor/-limiter? Kann dies in ffmpeg mithilfe einiger der zahlreichen Filter erfolgen?

Wenn man natürlich einfach den hellsten Wert eines Bildes auf Weiß und den dunkelsten auf Schwarz setzt, ruckelt die Belichtung wie bei einer Aufnahme aus dem Jahr 1910. Wie stark muss manjedeDer Kontrast des Rahmens sollte von den hellsten und dunkelsten Werten desUmgebungFrames, wahrscheinlich +-10 Sekunden.

Man könnte alle Frames extrahieren, die Weiß- und Schwarzpunkte jedes Frames mit ImageMagick abrufen, sie in einem Array speichern, das Array glätten, den Kontrast jedes Frames mit ImageMagick erneut strecken und das Video neu erstellen. Aber das erscheint geradezu mittelalterlich.

Antwort1

DerAbonnierenkommt dem nahe, was Sie wollen. Sie können sich aber auch die verschiedenen Varianten von LUT-Filtern und auch lut3d ansehen.

Die Lut-Filter sind anpassbarer, da Sie sich tatsächlich ein Bild ansehen und bestimmen können, welche Werte verwendet werden sollen. Wenn es außerdem große Unterschiede in den Luminanzpegeln des Eingangsmaterials gibt, kann die Ausgabe bei einer „Einzelbild“-Korrektur ruckeln. Die Anwendung einer einheitlichen Korrekturstärke auf alle Bilder würde ein glatteres Ergebnis ergeben.

verwandte Informationen