Wissen Was ist eigentlich eine LUT?

Was ist eigentlich eine LUT?

Wer keinen tiefen Einblick in Video- und Filmtechnologie hat, versteht vielleicht gar nicht, was eine LUT eigentlich ist. Dem wollen wir mit etwas Grundlagenwissen nachhelfen...

// 13:35 Fr, 6. Aug 2021von

Man liest (und wir schreiben ja auch) an vielen Stellen von LUTs. Doch wer nicht schon einen gewissen Einblick in Video- und Filmtechnologie hat, versteht vielleicht bis heute gar nicht, was eine LUT eigentlich ist. Dem wollen wir mit etwas Grundlagenwissen nachhelfen...




Was ist eine LUT?

Also mal ganz von Anfang an: Was ist eigentlich eine LUT. Die Abkürzung steht für "Look Up Table" - was frei übersetzt soviel bedeutet wie eine Tabelle zum Nachschlagen. LUTs gibt es nicht es erst seit der Erfindung der digitalen Farbkorrektur, sondern sie finden sich schon seit Jahrzehnten in der Informatik als trickreiche Abkürzung bei komplexen Berechnungen.



Die zugrunde liegende Idee ist dabei recht einfach zu verstehen. Anstatt eine Berechnung millionenfach aufs Neue auszuführen, speichert man die Rechenergebnisse in Tabellen. Anschließend kann man das Ergebnis "einfach" in der Tabelle nachschlagen, anstatt es aufwändig berechnen zu müssen. Man tauscht bei einer LUT also gesparte Rechenzeit gegen zusätzlichen Speicherplatz.





Zusätzliche Interpolation

Ist der Lösungsraum (also die Anzahl der möglichen Rechnungen und Ergebnisse) dabei sehr groß, dann lässt sich nicht jedes Ergebnis jeder prinzipiell möglichen Rechnung effizient speichern. Spielt jedoch die absolute Genauigkeit des Ergebnisses keine essentielle Rolle, nützt ein weiterer typischer LUT-Trick: Man speichert nur eine kleine Anzahl an exakten Ergebnissen und interpoliert anschließend zwischen den Punkten in der LUT-Tabelle, um dem korrekten Ergebnis möglichst nahe zu kommen.



Was ist eigentlich eine LUT? : LUT-head


Je mehr Ergebnisse man speichert, desto mehr Speicher braucht die Tabelle. Dafür werden auch die interpolierten Schätzungen exakter. Einen signifikanten Vorteil bringen LUTs vor allem, wenn sie komplett in den Cache des Prozessors passen. Dies ist ein relativ kleiner, aber sehr schneller Speicher, der direkt an den Rechenwerken des Rechners sitzt. Auf diesen Speicher kann der Prozessor blitzschnell zugreifen, so dass kleine LUTs hier deutlich schnellere Ergebnisse liefern können als lange Rechenoperationen.



Überschlägt man, wie oft eine Farbkorrektur für jeden Pixel eines 4K-Frames bis zu 60 mal in der Sekunde eine Farbtransformation berechnen muss, sind das ca. 442.368.000 RGB-Transformationen - pro Sekunde! Gerade auf älteren Rechnern ließe sich ohne LUTs somit keine Echtzeit-Farbtransformation erzielen.







1D-LUTs

Je nach Anwendungsfall gibt es 1D- sowie 3D-LUTs. Eine 1D-LUT kennt nur einen Input-Wert, der in einen Output-Wert konvertiert wird. Ein Beispiel hierfür ist eine nichtlineare Gamma-Korrektur, die nur die Helligkeit eines Signals beeinflusst. Da hierfür nur ein Farbkanal (bei Gamma eben die Helligkeit) verändert wird, benötigt man hierfür auch nur eine 1D-LUT.



Das Besondere an 1D LUTs ist, dass diese selbst bei 10 Bit Signalen noch so kompakt ausfallen, dass sie alle möglichen Ergebnisse der Transformation (256 bei 8 Bit, 1024 bei 10 Bit) in einer Tabelle komplett speichern und auch exakt wieder reproduzieren können.





3D-LUTs

3D-LUTs sind daneben weitaus komplexer - aber in der Regel auch nützlicher. Komplexer, weil die LUT als Eingabe drei Farbkanäle erwartet und auch drei transformierte Farbkanäle ausspuckt. Eine 3D-LUT wandelt in der Regel drei Input-Farbkanäle (RGB) in drei Output-Farbkanäle (RGB). Prinzipiell kann sie jedoch auch zwischen anderen Farbräumen wie YUV oder HSL/V konvertieren.



Da eine 3D-LUT bei 8 Bit-Genauigkeit bereits 256 x 256 x 256 (ca. 16 Millionen) mögliche Input-Kombinationen besitzt, erkennt man sofort, dass 3D-LUTs mit 10 Bit oder noch größerer Genauigkeit zu viel Speicher benötigen, um effizient zu sein. Und darum kommt hier immer die Reduktion auf ein paar Kernpunkte zum Einsatz. Wie exakt dabei eine 3D-LUT arbeitet, wird meistens mit der Anzahl ihrer Knotenpunkte angegeben:



Typische Werte sind hier oft 17x17x17, 33x33x33 oder 65x65x65. Das bedeutet, in der LUT sind wirklich "nur" 17x17x17 (= 4913), 33 x 33 x 33 (=35.937) oder 65x65x65 (=274.625) RGB-Eingabe-Ausgabe-Werte gespeichert, dafür aber dann in recht hoher Genauigkeit. Anschließend interpoliert das eingesetzte Programm die Werte zwischen den Punkten.





Interpolation: Trilinear oder tetraedrisch

Üblicher Interpolations-Standard war hier übrigens über lange Zeit eine trilineare Interpolation, neuerdings kann man aufgrund schnellerer Rechner oft auch optional eine tetraedrische Interpolation nutzen. Diese neigt u.a. zu weniger Posterisation, ist aber rechenaufwendiger.



Was ist eigentlich eine LUT? : LUTinterpolation


Wer es noch exakter liebt, kann in manchen Programmen auch statt LUTs direkt exakte Formeln benutzen (zB. DCTLs in Resolve oder CTLs in ACES), die auf schnellen GPUs ebenfalls in Echtzeit berechnet werden können. Allerdings erlauben LUTs auch sehr "unstetige" Bildtransformationen, die mit Formeln in manchen Fällen gar nicht so einfach zu realisieren wären.




Wofür LUTS?

In der Video- und Filmbearbeitung kommen LUTs an diversen Stellen zum Einsatz. Wir wollen deswegen einmal die wichtigsten Einsatzgebiete kurz erläutern:





De-Logging

Ein sehr typischer Fall ist die Log-Konvertierung, bzw. das De-Logging. Um die hohe Dynamik eines Sensors mit wenig Verlusten aufzuzeichnen, kann es Sinn machen das Videosignal in einem logarithmischen Farbraum aufzuzeichnen. Die Idee dahinter: In hellen Bereichen ist der Sprung von einer Blendenstufe zur nächsten viel größer als in dunklen Bereichen, weshalb man mit einer linearen Speicherung in den hellen Bereichen unnötig viele Daten speichert. Bei der logarithmischen Speicherung wird dagegen jede Blendenstufe mit gleich viel Quantisierungsstufen aufgezeichnet.



Was ist eigentlich eine LUT? : LOG-Lin


Das erhält nützliche Reserven für die Nachbearbeitung - jedoch ist ein solches Log-Signal nicht sehr schön anzusehen. Mehr zum Hintergrund der Log-Aufzeichnung könnt ihr hier bei uns lesen.



Um das Log-Signal auf einem Monitor (oder in der Timeline) wieder so sichtbar zu machen, wie es der Filmer eigentlich sehen wollte/sollte, muss man es in einen Farbraum konvertieren, der unseren typischen Sehgewohnheiten entspricht. Dies ist in den meisten Fällen immer noch Rec709, der "klassische" HD-Farbraum. Viele Kamerahersteller bieten darum für ihre Log-fähigen Kameras LUTs an, die das firmeneigene LOG in das gewohnte Rec709 wandeln können.





Doch das ist nicht notwendigerweise die beste Wahl. Will man sein Material noch nachbearbeiten, kann es lohnenswerter sein, das LOG-Material in einem linearen Arbeitsfarbraum zu bearbeiten. Erst bei der Ausspielung wird dann mit einer weiteren LUT das Material auf den sogenannten Zielfarbraum abgestimmt. Beispielsweise mit einer einer LUT, die den linearen Farbraum der Timeline nach Rec 709 wandelt.





Limiting bzw. Broadcast-Safe

Hierbei kann es zu einem weiteren speziellen LUT-Anwendungsfall kommen. Im Broadcast-Bereich setzt man gelegentlich auch noch LUTs ein, um spezielle Sendenormen zu erfüllen. So kann man mit einer LUT auch die Einhaltung bzw. Limitierung des Signals auf Studio-Leveln erzwingen. "Illegale" Level und Farben können eine solche LUT nicht passieren.



Was ist eigentlich eine LUT? : video data level


Auch lassen sich LUTs für diesen Zweck kombinieren. Man kann also beispielsweise eine Ausgabe-LUT erstellen, die nach Rec709 wandelt und zugleich das Signal auf legale Normen limitiert.





Filmsimulation

Ein weiterer typischer Anwendungfall von LUTs ist die Simulation von altem Filmmaterial. In der analogen Zeit hatte tatsächlich das Filmmaterial von Kodak, Fuji und Co. unterschiedliche Farbcharakteristiken, die heute teils von den originalen Herstellern selbst, meistens aber mittlerweile von Drittfirmen als LUTs angeboten werden. In der Praxis kann eine solche Filmsimulation der LUT natürlich nur funktionieren, denn auch der Input normiert ist. Nachdem jedoch fast jede Kamera in der Praxis eine andere Farbcharakteristik aufweist, fließt diese bei einer unbedachten LUT-Konvertierung sichtbar ins Endergebnis ein. Oft zählt allerdings sowieso vielmehr das subjektive Ergebnis (das man meist durch Ausprobieren und Durchsteppen diverser LUTs findet).



Was ist eigentlich eine LUT? : filmlooks






Looks

In ähnlichen Bereichen versuchen sich auch sogenannte Look-LUTs im allgemeinen. Diese versprechen, mit der Anwendung einer speziellen LUT einen typischen Look zu generieren. Beispielsweise den vielzitierten, aber schwer zu fassenden Film-Look ;). Ebenfalls relevante Zutaten wie beispielsweise eine Filmgrain-Simulation lassen sich allerdings nicht mit LUTs erzielen. Wohl aber mit DCTLs.





Monitor-LUTs

Ein ebenfalls wichtiger Anwendungsfall ist der Einsatz von Vorschau- bzw. Monitoring-LUTs. Diese können sich immer dann als praktisch erweisen, wenn der Vorschau-Monitor einen eigenen, definierten Farbraum besitzt. Ist dieser Farbraum ein anderer als der Projekt-Farbraum, so lässt sich (im Idealfall) die Vorschau durch eine entsprechende LUT korrekt anpassen.





Ausgabe-LUTs

Nicht zuletzt spielen auch bei der Ausgabe des fertigen Projekts LUTs oft eine entscheidende Rolle. Denn nicht selten ist der Projekt-Farbraum nicht der gleiche wie der Farbraum des ausgerenderten Clips. Oftmals (und gerade in HDR-Zeiten) werden für verschiedene Ausgabeoptionen auch verschiedene Master mit verschiedenen Farbräumen erwartet. In diesen Fällen können entsprechende Output-LUTs helfen, schnell unterschiedliche Versionen eines Projekts bereitzustellen.



Ähnliche Artikel //
Umfrage
    Welche Streaming-Dienste nutzt Du?













    Ergebnis ansehen

slashCAM nutzt Cookies zur Optimierung des Angebots, auch Cookies Dritter. Die Speicherung von Cookies kann in den Browsereinstellungen unterbunden werden. Mehr Informationen erhalten Sie in unserer Datenschutzerklärung. Mehr Infos Verstanden!
RSS Suche YouTube Facebook Twitter slashCAM-Slash