Benutzer-Werkzeuge

Webseiten-Werkzeuge


led:media_correction

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
led:media_correction [2023/02/17 20:31] bh067led:media_correction [2023/02/17 20:41] (aktuell) – [Wie geht man dabei vor?] sb279
Zeile 13: Zeile 13:
  
  
-====== Aber warum ist die Farbtreue denn überhaupt ein Problem? ======+====== Warum ist die Farbe denn überhaupt ein Problem? ======
  
 Das hat mit der menschlichen Wahrnehmung, der Historie der Displaytechnolgien und den daraus folgenden Kameracharakteristiken digitaler Kameras zu tun.
 Das hat mit der menschlichen Wahrnehmung, der Historie der Displaytechnolgien und den daraus folgenden Kameracharakteristiken digitaler Kameras zu tun.

  
-Allgemein wird zwischen Scene-refered-Farbräumen und Display-Referred-Farbräumen unterschieden. +Allgemein wird zwischen Scene-refered-Farbräumen und Display-referred-Farbräumen unterschieden. 
 Scene-referred Farbräume sind linear und stellen eine 1:1 Relation zum Licht der Szene dar. Display-referred Farbräume sind auf Monitore angepasst. Zu diesen gehören die Standards ITU-R BT.709 (Rec 709) oder auch sRGB.

 Scene-referred Farbräume sind linear und stellen eine 1:1 Relation zum Licht der Szene dar. Display-referred Farbräume sind auf Monitore angepasst. Zu diesen gehören die Standards ITU-R BT.709 (Rec 709) oder auch sRGB.


  
Zeile 30: Zeile 30:
  
 Ziel ist es, dass eine 3D-Asset genauso wirkt wie dasselbe Element in der Realität. Man könnte überlegen besondere OETF in den Kameras oder andere Colorscience/anderes Demosaicing zu entwickeln.  Ziel ist es, dass eine 3D-Asset genauso wirkt wie dasselbe Element in der Realität. Man könnte überlegen besondere OETF in den Kameras oder andere Colorscience/anderes Demosaicing zu entwickeln. 
-Das ist nicht sinnvoll, da viel zu aufwändig und VP ist eine zu große Nische im Bereich der Kameraeinsatzmöglichkeiten, außerdem würden Vorteile für die Realitätsabbilding verloren gehen.+Das ist nicht sinnvoll, da viel zu aufwändig und VP eine zu große Nische im Bereich der Kameraeinsatzmöglichkeiten ist. Außerdem würden Vorteile für die Realitätsabbilding verloren gehen.
  
 Es könnte auch ein Ansatz sein, die Ausgabe in der Gameengine entsprechend anzupassen, um den doppelten Kurven zu entkommen. Doch könnte eine solche Umrechnung gegebenenfalls schwierig zu implementieren sein, oder die Performance beeinflussen. Es ist aber eine gute Möglichkeit.  Es könnte auch ein Ansatz sein, die Ausgabe in der Gameengine entsprechend anzupassen, um den doppelten Kurven zu entkommen. Doch könnte eine solche Umrechnung gegebenenfalls schwierig zu implementieren sein, oder die Performance beeinflussen. Es ist aber eine gute Möglichkeit. 
Zeile 36: Zeile 36:
 Des weiteren, könnte die LED Wand entsprechend kalibriert werden:  Des weiteren, könnte die LED Wand entsprechend kalibriert werden: 
  
-Zum Einen hinsichtlich einer korrekten Farbraumdarstellung (Dynamikumfang, Primärvalenzen, Gammakurve), mittels physikalischem Messgerät (Spektrometer; Colorimeter). Beispielhaftes Ziel: Ein LIDAR-gescanntes Objekt, soll die gleiche Spektrale Reflektanz aufweisen wie das echte. Das ist schwer möglich, da die spektrale Verteilung der LED-Technologie nicht denen der realen Ausleuchtung entspricht. +Zum Einen hinsichtlich einer korrekten Farbraumdarstellung (Dynamikumfang, Primärvalenzen, Gammakurve), mittels physikalischem Messgerät (Spektrometer; Colorimeter). Beispielhaftes Ziel: Ein LIDAR-gescanntes Objekt, soll die gleiche Spektrale Reflektanz aufweisen wie das Reale Objekt. Das ist schwer möglich, da die spektrale Verteilung der LED-Technologie nicht denen der realen Ausleuchtung entspricht. 
  
 Zum Anderen kann die LED-Wand mit einer Korrekturmatrix korrigiert werden, dass sie perfekt zur OETF, dem Gammut und der Farbempfindlichkeit der Kamera passt. Dieser Ansatz wurde verfolgt.
 Zum Anderen kann die LED-Wand mit einer Korrekturmatrix korrigiert werden, dass sie perfekt zur OETF, dem Gammut und der Farbempfindlichkeit der Kamera passt. Dieser Ansatz wurde verfolgt.

Zeile 42: Zeile 42:
 ====== Wie geht man dabei vor? ====== ====== Wie geht man dabei vor? ======
 //Am Beispiel der Kalibrierung in Unreal Engine// //Am Beispiel der Kalibrierung in Unreal Engine//
 +
 +Detailierter nachzulesen in der Unreal-Dokumentation:
 +https://docs.unrealengine.com/4.27/en-US/WorkingWithMedia/IntegratingMedia/InCameraVFX/InCameraVFXCameraCalibration/
  
 Zunächst wird über die Gameengine ein Color-Checker Test-Setting geladen. In diesem Setup wird ein synthetischer Color-Checker integriert. Dort sind durch den verwendeten Farbraum die Farbwerte genau definiert und somit bekannt. Unreal nutzt standardmäßig "linear rec.709" als Farbraum. Also einen linearen Scene-referred Farbraum mit den Rec.709 Farbprimärvalenzen. Der Industriestandard für einen Arbeitsfarbraum ist aber oftmals z.B. ACEScg, der ermöglicht, die Arbeitsfarbräume verschiedener Software über OCIO configs zu organisieren. Zunächst wird über die Gameengine ein Color-Checker Test-Setting geladen. In diesem Setup wird ein synthetischer Color-Checker integriert. Dort sind durch den verwendeten Farbraum die Farbwerte genau definiert und somit bekannt. Unreal nutzt standardmäßig "linear rec.709" als Farbraum. Also einen linearen Scene-referred Farbraum mit den Rec.709 Farbprimärvalenzen. Der Industriestandard für einen Arbeitsfarbraum ist aber oftmals z.B. ACEScg, der ermöglicht, die Arbeitsfarbräume verschiedener Software über OCIO configs zu organisieren.
Zeile 55: Zeile 58:
 Die RGB-Werte der abgelichteten Testpatches Rot, Grün und Blau werden in die Matrix geschrieben Die RGB-Werte der abgelichteten Testpatches Rot, Grün und Blau werden in die Matrix geschrieben
  
-{{:led:patchmatrix.png?nolink&200 |}}+{{ :led:patchmatrix.png?nolink&200 |}} 
  
 Die inverse dieser Matrix wird mit dem höchsten Weißwert (W), auf 1.0 normalisiert Multipliziert. Das ist der Skalierungsfaktor. Die inverse dieser Matrix wird mit dem höchsten Weißwert (W), auf 1.0 normalisiert Multipliziert. Das ist der Skalierungsfaktor.
  
 ** **
-I = F-1  ->  S = I × W/max(W//RGB//)**+I = F^-1  ->  S = I × W/max(W//RGB//)**
  
 Dieser wird benutzt um um die Faktoren der Matrix zu skalieren. Danach muss diese Matrix invertiert werden: Dieser wird benutzt um um die Faktoren der Matrix zu skalieren. Danach muss diese Matrix invertiert werden:
  
-{{:led:inversematrix.png?nolink&200|}}+{{ :led:inversematrix.png?nolink&200 |}} 
  
-**Kalibrations-Matrix = F-1**+**Kalibrations-Matrix = F^-1**
  
 Mit dieser Matrix kann die Ausspielung auf der LED-Wand belegt werden.  Mit dieser Matrix kann die Ausspielung auf der LED-Wand belegt werden. 
led/media_correction.1676662294.txt.gz · Zuletzt geändert: 2023/02/17 20:31 von bh067