Wie erstellt man ein abstraktes Farbprofil, um eine bestimmte Farbtransformation zu codieren?

Ich habe eine Reihe von Bildern (48-Bit-TIFF), die in ProPhoto RGB kodiert sind.

Ich habe eine Reihe alternativer Eingangsfarbprofile (bezogen auf ProPhoto RGB, aber etwas anders), die ich den Bildern zuweisen kann, um verschiedene Farbtransformationen zu erhalten.

Dies ist jedoch nicht die richtige Art, Farbprofile zu verwenden. Wenn Sie eine Farbtransformation benötigen, möchten Sie entweder ein 3DLUT (funktionsfarbraumabhängig, eher wie ein Device-Link-Profil) oder ein abstraktes Profil (Lab->Lab-Mapping, farbraumunabhängig).

Photoshop unterstützt sowohl 3DLUTs als auch abstrakte Profile.

Ich möchte entweder ein 3DLUT- oder ein abstraktes Profil erstellen, das dieselbe Transformation codiert wie diejenige, die durch Ändern des Eingabeprofils erreicht wird. Ich weiß nicht wie ich weiter vorgehen soll. Ich bin Programmierer und kann Code schreiben, wenn das hilfreich ist.

In mathematischer Notation haben wir diese Funktionen:

ProPhotoRGB: RGB->XYZ
ProPhotoRGBModified: RGB->XYZ
XYZ2Lab: XYZ->Lab
Lab2XYZ: Lab->XYZ

Und wir wollen diese Funktion finden:

UnknownAbstract: Lab->Lab

Damit diese Gleichheit gilt:

ProPhotoRGBModified(input) == Lab2XYZ(UnknownAbstract(XYZ2Lab(ProPhotoRGB(input))))
Was ist die fotografische Anwendung für das, was Sie hier zu tun versuchen?
Ändern der Sättigung mit den Farbprofilen von James Holmes .
Ich habe keine Antwort, aber Sie werden es mit ArgyllCMS erledigen. Genauer gesagt sollten Sie sich wahrscheinlich LUT-Tabellen ansehen A->B, B->Ada dies die einzige Möglichkeit ist, diesen Effekt zu erzielen, indem Sie einfach in ein Profil konvertieren, das Sie erstellen möchten.
Dies scheint eine x→y-Frage zu sein. Warum fragen Sie nicht einfach, wie Sie die Sättigung mit den Farbprofilen von James Holmes ändern können?
Ich weiß, wie man die Sättigung mit diesen Profilen ändert, das ist nicht das Problem, die Frage ist die Erstellung abstrakter Farbprofile (im Allgemeinen) zur Verwendung in Photoshop und anderen Anwendungen. Die Tatsache, dass ich in diesem speziellen Szenario die Sättigung ändere, ist nebensächlich, Sie könnten Profile erstellen, um den Effekt der Kreuzentwicklung zu simulieren, oder Profile, die das Aussehen eines bestimmten Filmmaterials emulieren. Es gibt viele Anwendungsmöglichkeiten für diese Art von Profilen.

Antworten (1)

Sie können dies tun, indem Sie einen RGB-Farbwürfel als .tif (oder in einem anderen verlustfreien Format, das Sie bevorzugen) erstellen, ihn in Photoshop übernehmen, die Transformation auf das Bild anwenden und es dann wieder speichern. Ich habe eine, die 64 x 64 x 64 ist:

Farbwürfel

Öffnen Sie das also in Photoshop und teilen Sie ihm mit, dass es sich im Quellfarbraum befindet, aus dem Sie transformieren möchten. (Möglicherweise müssen Sie ihm mitteilen, dass es das angehängte Profil ignorieren soll, falls vorhanden. Ich bin mir nicht sicher, was das Hochladen hier mit dem Bild bewirkt.) Führen Sie dann alles aus, was Sie getan haben, um in den neuen Farbraum zu konvertieren. Speichern Sie es wieder in einem verlustfreien, einfach zu lesenden Code-Format. Entfernen Sie dann die Farbprofilinformationen, falls vorhanden, da dies dazu führt, dass sie in Zukunft anders gerendert werden. Sie können es jetzt als 3D-LUT verwenden.

Faszinierend. Ich habe die benötigte PNG-Datei erstellt, aber Photoshop kann nur .3dl-, .cube- und .look-3D-LUTs verwenden. Es kann .png nicht direkt verwenden. Es scheint einfach zu sein, von .cube zu .png zu wechseln, aber ich bin mir nicht sicher, wie ich das Gegenteil machen soll. Oder schlagen Sie vor, dass ich die .png-Datei selbst parse und daraus die .cube-Datei erstelle?
Ok, ich habe noch etwas damit gespielt, es scheint, dass die 3D-LUT-Formate wirklich trivial sind. Es scheint zu funktionieren, aber ich muss einige gründlichere Tests durchführen, um sicherzustellen, dass ich genau das gleiche Ergebnis erhalte, das ich erwarte. Ich halte die Frage vorerst noch offen, da ich immer noch nach einer Möglichkeit suche, diese Transformationen als abstrakte ICC-Profile und nicht als 3D-LUTs zu codieren, aber diese beschriebene Methode ist eine großartige Problemumgehung, wenn Sie mit einer bestimmten Arbeitsfarbraumabhängigkeit leben können . Wenn niemand in angemessener Zeit antwortet, werde ich Ihre Antwort akzeptieren.