Jump to content
You must now use your email address to sign in [click for more info] ×

Convert from Linear space to another profile


Recommended Posts

I create my 3D renderings in Cinema 4D and I usually work in Linear Space.
So, when I open the resulting image in Affinity Photo, I get this:

Screen_Shot_2017_03_06_at_19_37_40.jpg

 

I can't seem to convert it to an RGB profile and get the correct color.
The same image, opened in Photoshop appears line this:

 

Screen_Shot_2017_03_06_at_20_42_43.jpg

 

And this is what I expect. I can easily convert it to another profile in Photoshop and, once that is done, I can open it in Affinity Photo and get the expected color.
Is there a way to work in Linear Space in Affinily Photo?
If not, will there be, in the future?

Link to comment
Share on other sites

What viewer LUTs do you use in either? Affinity looks almost like linear-raw while Photoshop looks like some viewer LUT is applied.

 

In Affinity you have the option of using ICC, OCIO and Raw(Unmanaged) to view linear light. Also, don't use PSDs for linear light, you can't really use them outside of Adobe. Multi-channel EXR is what you want to save your renders to.

 

The reason why the Photoshop file looks right to you in Photoshop likely has to do with the close relationship with Maxon and Adobe.

 

Use the 32-bit Preview panel in Affinity and see if any of the settings get you closer. I'd start with setting the viewer gamma from 1.0 to 2.2 and see how that goes. It could be that C4D rendered to a gamma of 2.2 instead of 1.0. 

Link to comment
Share on other sites

Setting the 32-bit Preview to a gamma of 2.2 does show the image as expected.
But, how can I set it to an 8 bit image with, lets say, the sRGB profile and keep it looking as it should?
 

Also, I already created a Linear profile inside Photoshop, following the instructions provided in the site that v_kyr posted.

How can I add it to Affinity Photo? Will it work?

Link to comment
Share on other sites

ICC-profiles are usually installed on a system level for general access by applications, so when on a Mac just place an ICC-profile into HD\Library\ColorSync\Profiles (on Windows copy profiles into c:\Windows\system32\spool\drivers\color).

☛ Affinity Designer 1.10.8 ◆ Affinity Photo 1.10.8 ◆ Affinity Publisher 1.10.8 ◆ OSX El Capitan
☛ Affinity V2.3 apps ◆ MacOS Sonoma 14.2 ◆ iPad OS 17.2

Link to comment
Share on other sites

The problem is that I created the profile in Photoshop and that is a .csf file.
I would like to have a .icc file that would simply changed the display color of the image from a gamma of 2.2 to a gamma of 1.0

And I can't seem to find an .icc file that does that.

Link to comment
Share on other sites

See Elle Stone's Well-Behaved ICC Profiles and Code and his GitHub icc-profiles for some gamma 1.0 ones (*-g10.icc files)!

 

An interesting read there on that site is also "In Quest of Well Behaved Working Spaces", especially here the subcategory "Quantization from hexadecimal conversion" which seems to be related to LittleCMS too (that library is also used by the Affinity products here for color management).

☛ Affinity Designer 1.10.8 ◆ Affinity Photo 1.10.8 ◆ Affinity Publisher 1.10.8 ◆ OSX El Capitan
☛ Affinity V2.3 apps ◆ MacOS Sonoma 14.2 ◆ iPad OS 17.2

Link to comment
Share on other sites

You attached an 8-Bit file. Linear space requires 32-Bit.

 

I opened it in Affinity Photo and it did the right thing (unlike Preview which) and applied the embedded profile to the file. 

And as I suspected it's a 2.2 gamma set to 1.0 so you essentially have a gamma of 0.45454545… (1.0/2.2)

 

To get the right-ish colours in Affinity, you need to go to the correct bit depth for linear space, which is 32-Bit.

I converted it from 8-Bit to 32-Bit and in the 32Bit Preview panel set my viewing gamma to 2.2 and voila, got the same colours more or less that you get in Photoshop. And that's using your provided profile as ICC Display Profile. When I go to Unmanaged (Raw) and set the viewer to a Gamma 3.741 I get what you see in Photoshop pretty much exactly.

 

 

 

Attached is the .psd image with the Linear profile.

And the color it should show, in Affinity Photo is the following:

 

3_D_Fish_tank_Linear.png

Link to comment
Share on other sites

I asked about this in a previous post somewhere (I called it a bug I believe ).

 

Affinity photo does not support ICC profiles with a linear gamma,while in 8bit / 16 bit. They appear and work fine if working with 32 bit files.

 

I do gamma correction with imagemagick or Photoshop and then work with Affinity photo. OR I load the file in Photoshop, save it as 32bit and then open that in Affinity Photo. Then you can do all the editing you want in linear space (while actually seeing it gamma corrected for your monitor ) and save it back. But you do have a 32 bit file. If you ever want to go back to a linear 16bit file you'd have to use Photoshop or something else again.

 

Another way they explained it to me is that you can open your linear file in Affinity photo , and then add a LUT layer with a 3d LUT loaded to view the file normally on your monitor. Keep that LUT layer always on top, to use as a proofing layer. When saving, remember to disable the LUT layer so you actually save linear data again.

Which LUT to use and where to get it depends on your colour profile that you want to work in.

 

My files are linear-adobergb so I use a lut that converts it to normal Adobe RGB while working.

 

A gamma of 2.2 is never exactly correct, but it's often 'close enough'.

(sRGB isnt entirely 2.2, there are parts in the shadows there the gamma is different. So not a constant gamma.

Adobe RGB is 'constant' but it's more 2.19 than 2.2 (2 + 51/256).

 

I don't know why linear ICC profiles are ignored / removed with 16 bit files. On 8bit I understand (you don't want linear space in 8bit, it will posterize like crazy) but 16 bit is used a lot. Scanner output as a simple example.

Link to comment
Share on other sites

You cannot. It's technically wrong since linear space is directly incompatible with integer space. Linear space represent the light in the real world, not the light leaving your screen. That's why we use viewing transforms to view a specified portion of the linear space. Either rec709 (broadcast) or sRGB as working views.

 

Scene linear space is a floating point space from 0 to 1 while 8-bit goes from 0 to 255 in integer steps. 8-bit is not a work format but a final output format as everything you touch will almost immediately clip.

 

Adobe (and Preview) are quite likely doing some profile emulation to display. Could be there is a matrix in the PSD that shifts the primaries around and pushes the gamma to nudge the embedded profile into integer 8-bit space.

 

I attached you the profile I extracted from your image so you can see for yourself. Install it, go up the bit depths and see when the profile becomes available to assign. In 32-Bit. It's not even intended for non-floating point colour.

 

In short, that profile does not belong with an 8-Bit file at all. When you do that, all the apps in your pipeline have to compensate for that error. Which more or less fences you in to Adobe island. 

 

 

Edit: Attached AP file with inverted gamma as an adjustment layer to show what's going on with your file.

 

 

Yes, I could get it to show nicely in 32 bits in Affinity Photo.
However, it shows correctly in Photoshop, in 8 bit. And this is an 8 bit image.

So, how can I keep it in 8 bits and show correctly in Affinity Photo?

 

Linear Color Space.icc.zip

3D_Fish_tank_notLinearAtAll.afphoto.zip

Link to comment
Share on other sites

Sort of what I said : linear space in 8 bit is wrong and should never be used.

 

But.. linear space in 16 bit is used a lot and completely ignored by Affinity Photo.

 

In 32 bit floating point, linear space is even the standard / norm :).

Link to comment
Share on other sites

I understand all that, really.
But shouldn't we have a way to, at least, preview an 8 bit image that has a Linear profile, using the Soft Proof adjustment layer?
Yes, it should have been saved in 32 bit in the first place. But since it is possible (although not advisable nor correct) to save an 8 bit image with a Linear profile, Affinity Photo should be able to provide a way to visualize the color corrected image.

Link to comment
Share on other sites

It's possible only due to ignorance really. I don't think Affinity should support something like this.

You're basically saying: Software X makes mistakes, please also make them.

If you want to keep with these errors, the AP file I attached earlier shows how you can.

 

As for the 16-bit, not having linear space in AP that's easy to answer even as a user. 

There is no linear space in integer 16-bit which is the 16-bit space Affinity uses. There is however a linear space in 16-bit half-float which is the lowest option in ACES. You can export an EXR file in 16-Bit half-float from your 32-bit space in Affinity, so there's that route, but for working you currently have to stick with 32-bit and flatten down to 16-bit float for normal and height maps for use in game engines.

 

When you read an EXR from Substance Painter for example it'll have a maximum of 16-bit half-float but Affinity opens it to 32-bit. It's a bit like Nuke where you're always in 32-bit float and pick what you want on export. 

Link to comment
Share on other sites

And display a warning: "This file will not work correctly in linear space, please consider degamma-ing and flatten it to 8-Bit space"?

 

 

I think it is best to load files in a way that makes working with them easy and fast.

So maybe the best option is to translate them (even 8 Bit Ines) into 32bit like Nike dies it.

Link to comment
Share on other sites

  • 1 year later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.