2
\$\begingroup\$

Img 1 This is just academic:
I want to find a cyclical way to convert from sRGB to ProPhoto and vice-versa on Photoshop.

  1. I notice that no matter that the images from Is Your Browser Color-Managed? looks different inside of PS...

  2. the browser renders both identical and that's the goal of the ICC profile, I know.

  3. But, when I try to change the color profile of the proPhoto one to sRGB on PS (with "convert to profile..." and "assign profile") that doesn't work and actually looks the same on PS and of course renders different on the browser.

  4. And with the same resultant image I tried to convert it back to proPhoto and that doesn't work either.

  5. There is a cyclical way to convert a image between sRGB and Prophoto and making them to looks the same on the browser?

Edit

To consider:

  • My main display is a Huion Kamvas 13 with 120% sRGB according to the manufacturer.
  • Because of that the image on the ProPhoto space won't look the same as the sRGB one without proofing colors.
  • The original image tagged with sRGB doesn't have a ICC profile, but by default the browser will assume it as sRGB. That's useless with mostly all the screens (100%-sRGB) but for my 120%-sRGB screen is useful because thanks to that my browser won't over-saturate the image. Not the same with Photoshop, actually, PS will over-saturate the non-profiled image.

enter image description here

Regardless of my browser shows them the same, Photoshop show them different without proofing colors and also different with sRGB internet proofing colors. They only look the same if I only set the unprofiled one (sRGB tagged) to sRGB proof colors. enter image description here

  • For the unmanaged image with no proof colors I guess that PS stretch the RGB colors (oversaturating them) to my larger 120% sRGB space right?
  • For the ProPhoto with sRGB proof colors I guess is like to have double conversion first from ProPhoto to 120% sRGB and than to 100% rgb. That implies that in a 100% rgb that image will look right Isn't it?

After a kind of laboratory a realized (I think) that my 120% sRGB screen (or driver) tells to PS to operates the transformations with that space when converting color profiles as you can see in the "sRGB Converted to ProPhoto" (1st row, 2nd col) resulting in wrong colors. But if I tell to PS that the unmanaged image is on the sRGB space assigning it a sRGB profile before I convert to the ProPhoto space, PS do the works correcly enter image description here

Now I want to go back from ProPhoto to sRGB enter image description here Here you an see that if I just assign a sRGB profile to the ProPhoto (sRGB, sRGB assigned, Converted to ProPhoto) image the colors get borked as @Tetsujin mentioned. But if a converted to sRGB and then remove the color management I'm able to get back a image virtualy equal to the original sRGB one

2nd Edit

As mentioned by @Tetsujin my RGB Working Space was wrong all this time, it was ProPhoto (I was moving things over here and over there) and after a set my RGB working space as sRGB I could convert directly from the non-profiled image to ProPhoto.

enter image description here

So yeah because I set the RGB working space to ProPhoto all my profile convertions from non-profiled to ProPhoto got the colors wrong (I still wonder the reason). I had to assign a sRGB profile to the non-profiled image before to convert to ProPhoto in order to get the correct colors. Not a problem in a sRGB working space

enter image description here

Consedirations

You will be able to calculate the RGB values that PS calculates with this calculator. First go from sRGB to XYZ and then to ProPhoto (white D65, gamma 1.8). Then for the example of @Steven Kersting, sRGB(0,255,25) is XYZ(0.359330, 0.715854, 0.128430) and ProPhoto(138.0695, 236.5775 80.7067), but with a 8-bit depth we dont have that precision, actually, we don't have decimals, so for PS to get back, it will be ProPhoto(138, 236, 80) that is XYZ(0.358508, 0.712998, 0.126304) and is sRGB(9.1773, 254.4782, 21.9759) and of course this will be rounded. But this scenario is idealistic because as mention @doug if you set the dither option you will have some kind variation to maintain the average and reducing the error, and even better results if you have a 16-bit color depth

\$\endgroup\$
4
  • 1
    \$\begingroup\$ Hi, welcome to Photography Stack Exchange. Please don't edit your question to include an answer in it; instead, simply answer the question in the "Your Answer" box at the bottom of the page. Please edit your question, cut the added-in answer material, and post it into an Answer. Thanks! =) \$\endgroup\$
    – scottbb
    Commented Apr 4, 2021 at 5:57
  • 1
    \$\begingroup\$ I think, for all this extra work you've done, we have not moved on from the initial misconceptions. That your screen can do 120% sRGB is not important [basically it's advertiser speak for "can't do Adobe RGB", nothing more]. Have you checked your colour setup in Ps? i still think that's where most of this springs from. tbh, looking at numbers isn't going to help. When you're set up correctly you can ignore the numbers because it's all pretty seamless visually. [That you lose something from ProPhoto to sRGB is not something you can see on an sRGB screen, so for this exercise you can ignore it.] \$\endgroup\$
    – Tetsujin
    Commented Apr 4, 2021 at 9:03
  • 1
    \$\begingroup\$ @Tetsujin Yeah man as you said I checked my working space and it was ProPhoto. On my first attempts I was changing everything so that's how made the mistake. The workaround of assign a sRGB profile before the conversion is pretty useless because in first place the working space was wrong. A bunch a work and reading for a simple wrong setup I guess that's the price of learnig somethign new. Thanks man! A last thing I was wondering if you in your Adobe RGB Screen had to set the working space to Adobe RGB or add a sRGB profile before any conversion to non-profiled images? \$\endgroup\$ Commented Apr 4, 2021 at 18:25
  • 1
    \$\begingroup\$ My working space is set to sRGB - but I never convert on import, so my own photos go right through on an Adobe RGB profile directly from my camera, converted only at final export to sRGB for web. The orig PSD files stay forever with the camera profile attached. I use sRGB only as a 'place-holder' default, though I don't really ever use it for my own work. I'd go so far as to say if your screen cannot do Adobe RGB, then take your photos in sRGB so you can always see what's going on. sRGB is not 'bad' it's just a lowest common denominator that most screens aim for [whether or not they hit it] \$\endgroup\$
    – Tetsujin
    Commented Apr 4, 2021 at 18:37

3 Answers 3

2
\$\begingroup\$

I think there's a broad misconception here, but I'm not sure where to start to 'fix' that, so here are some rambling thoughts so far…
Bullet points in the question have been edited since I answered this, so my numbers no longer match the question. The broad scope is still the same.

  1. I tested the images from the linked website in four browsers, Left to right in the screenshot below, Safari & Chrome on Mac, Edge & Chrome on Windows. They all look pretty close. Both computers are colour profiled, though my Windows computer is never used for anything mission-critical so it's likely to have drifted over time. The Windows half of the screenshot is also over RDC, so that's another potential pitfall. Allowing for that, I think they're 'close enough'.

enter image description here
Click for full size

Also, both images taken from the site & opened in Photoshop look identical. The sRGB picture is actually an untagged RGB, so will be assumed to be sRGB. The ProPhoto seems to contain the correct profile.
That they appear identical is to be expected on a calibrated machine using an image originally from an sRGB source which I can only guess that was. My displays can display Adobe RGB but not full ProPhoto, so I wouldn't be able to see what may have been lost outside that gamut.

  1. This all depends on how you "change" the profile…

  2. Convert to profile will attempt to preserve a "visual match", even though ProPhoto can encompass a larger gamut [actually larger than any monitor can display or any eye can see].
    Assign profile never works visually, because it doesn't attempt any compensation. It would be more useful to re-attach a known profile lost from an image.
    Example of assigning sRGB to a ProPhoto image - colour is completely borked.
    enter image description here
    This may indeed be similar to the description from the linked site - "[If it] appears to have a dark blue/magenta sky with yellowish sand, then your browser is not color-managed."

  3. Once you have done your first conversion down from ProPhoto to sRGB, you ought then to be able to cycle round from one to the other seeing no change [you might get drift over time, this is not something I've ever needed to test].

So as this all ought to work in theory… we have to try figure out where you went wrong.
That you see different colours in Photoshop tells me Ps is set up wrongly.
The most common mistake is that people assign their screen icc profile as their working space.
Secondly, that on import, automatic profile conversion is done… to that wrong working space.
This leads to multiple erroneous compensations, one in Ps, the other as the image is displayed to your screen

You first need to make sure you don't have this set up in your workflow.

Aside from that, all this is going to be far more accurate if your screen is first accurately profiled - otherwise everything is just guesswork. Just dialling in the manufacturer's profile is not accurate enough for colour work.
However, no matter whether your profiling is correct or not, having it correctly assigned in your workflow should prevent this apparent drift between images.

\$\endgroup\$
3
  • \$\begingroup\$ As I mention on the edit I was converting the profile, and that wasn't the problem. I forgot to mention that my screen is 120% sRGB and that was the problem (I didn't know that was crucial). The solution was assigning a sRGB color profile before the ProPhoto conversion because if not my system will take de 120% sRGB space resulting in over-saturated colors, and that was the cause of getting rendered different colors with color managment of the browser, I always got a over-saturated ProPhoto image. \$\endgroup\$ Commented Apr 4, 2021 at 4:09
  • 2
    \$\begingroup\$ This "120% sRGB" is a red herring. My screens are about 140% sRGB ie they can achieve Adobe RGB. That's still only 50% CIE XYZ. So… let's not get caught up in all the numbers & let's check your profiling & workflow setup, as already mentioned. \$\endgroup\$
    – Tetsujin
    Commented Apr 4, 2021 at 9:10
  • 1
    \$\begingroup\$ well you were right all this time \$\endgroup\$ Commented Apr 4, 2021 at 18:16
2
\$\begingroup\$

Just because Photoshop uses the ProPhoto color space internally, it doesn't mean what you see on your screen is rendered using ProPhoto color space. It's almost certainly being converted to sRGB when sent to your screen. So what you see on your screen when working in the ProPhoto color space is the results of your processing instructions applied in ProPhoto and then converted to sRGB to be sent to your screen.

This is because your screen is very unlikely to be able to reproduce the entirety of the ProPhoto color space. Most screens are limited to most or all of sRGB. A few more capable screens can render AdobeRGB, but screens that can render ProPhoto are currently nonexistent and will be for the foreseeable future. You computer's graphics card knows this and converts the image sent to it to the color space it detects the monitor is capable of rendering before sending that image on to the monitor.

Think of it like your primitive scientific calculator back in the 1970s. It had an eight digit display, but the internal processor kept track of numbers up to a much higher number of significant digits. What you saw on the calculator's display was the internal number rounded to the nearest number using eight significant digits. But when you multiplied that number by π (pi), it multiplied the internal number by π out to, say, 64 significant digits and preserved the outcome internally out to 64 significant digits to reduce rounding errors in the final answer at the end of all calculations, which was then displayed on the screen to eight significant digits. If you then punched in that number into another calculator, you limited the accuracy of the calculations using the second calculator to the initial number that was entered rounded to eight significant digits. The information in the 9th to 64th significant digits was irretrievably lost when you converted the internal 64-digit number to an 8-digit number and entered it on another calculator.

Beyond that, once an image has been converted and exported using a more restrictive color space, such as from ProPhoto to sRGB, if one converts it to another larger color space the image will only use the portion of the larger color space that also fits within the smaller color space. Any values in the original image that are outside of the more restrictive color space are irretrievably lost once the image has been squeezed into the smaller color space.

The way to make your images look the same in all browsers is to:

  • Include the color space profile used when you export an image in the metadata of the exported image file
  • Use properly color managed browsers that pay attention to the metadata with regard to color space profiles and are capable of rendering an image in the color space used to export the image

Alternatively, you can always export images intended for viewing using browsers in the sRGB color space so that even browsers with poorly implemented or no color management which tend to always use sRGB, regardless of what the color space profile tag in the EXIF info says, will render them correctly in sRGB. This is generally a good practice for any images you plan to share via web services since many image hosting sites, including pretty much almost all social media hosting sites, strip the EXIF data from images anyway.

\$\endgroup\$
3
  • \$\begingroup\$ "just because Photoshop uses the ProPhoto color space internally," It doesn't. Were you thinking of Lightroom? \$\endgroup\$
    – doug
    Commented Apr 3, 2021 at 17:22
  • \$\begingroup\$ I was reading you and a couple of articles and I found this calculator and I think that in a TIFF image with a 16-bit color depth the margin of error is negligible. Not the same history with a 8-bit compressed JPEG. You may find interesting the algorithm to convert from sRGB to XYZ and then to ProPhoto. My problem was the way a was replicating the ProPhoto image. I had to assign a sRGB profile because my screen is 120% sRGB before converting to avoid oversatu \$\endgroup\$ Commented Apr 4, 2021 at 4:24
  • \$\begingroup\$ @doug Yes, I was thinking of LR. \$\endgroup\$
    – Michael C
    Commented Apr 4, 2021 at 5:45
1
\$\begingroup\$

on PS (with "convert to profile..." and "assign profile") that doesn't work and actually looks the same on PS and of course renders different on the browser. And with the same resultant image I tried to convert it back to proPhoto

Actually, convert to profile is working correctly. It should look the same in a program that recognizes and correctly interprets the color space. Rendering differently in the browser is either because the browser is not fully color managed (doesn't recognize the tags) or you did not export the images with the tags (they don't exist to be recognized). Assign to profile can only look correct in the program doing the assignment/interpolation.

You should not repeatedly change color spaces in practice; because the same RGB numbers are a different color in the different spaces. E.g. a green that is 0/255/25 in sRGB is 138/236/80 in ProPhoto, but 138/236/80 in ProPhoto is 8/255/21 in sRGB. Because the spaces are of different dimensions there are rounding errors/shifts when switching back/forth. You can easily test this yourself starting with a 0/255/25 circle in sRGB. So, even if you are doing it correctly there will be color shifts/errors.

\$\endgroup\$
12
  • 1
    \$\begingroup\$ No no no. Assign profile will completely bork the image. It does no conversion. See - i.sstatic.net/xQR0N.png \$\endgroup\$
    – Tetsujin
    Commented Apr 3, 2021 at 14:40
  • 2
    \$\begingroup\$ some good info in this answer, but yes, as stated, if an image has an embedded profile, and "Assign profile" is used to assign a different profile to the image, then the colours will take an immediate skew away from what they were intended to be. \$\endgroup\$
    – osullic
    Commented Apr 3, 2021 at 17:55
  • 1
    \$\begingroup\$ @Tetsujin, edited... I overlook the "and assign". \$\endgroup\$ Commented Apr 3, 2021 at 21:32
  • 1
    \$\begingroup\$ Ah, I think I see what's happening. You are looking at jpeg images. These are compressed and the compression amount depends on settings when saved. When loaded in Photoshop they are decoded to 8 bits per channel. But when saved how accurate the colors are depends on the jpeg compression setting. That's where the difference is coming from. It's not from conversion in Photoshop but the compression when saving. I absolutely agree that conversion to ProPhoto and saving jpegs then loading and reconverting to sRGB can alter colors somewhat. But if you use tifs this will not produce significant diffs \$\endgroup\$
    – doug
    Commented Apr 3, 2021 at 22:52
  • 1
    \$\begingroup\$ Just ran a check with a 16 bit Photoshop image with RGB (0,255,25). Converting to ProPhoto RGB then back to sRGB produced exactly the same RGB(0,255,25). Running the same test with the Microsoft ICM instead of the Adobe ACE produced RGB(28,255,28). ICM dates back well over 2 decades ago. It incorrectly implements Absolute Colorimetric conversion not in conformance with the later ICC spec. I suppose for compatibility they retained the behavior. I've also found areas where there are significant conversion errors and this appears to be one of them too. \$\endgroup\$
    – doug
    Commented Apr 4, 2021 at 4:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.