Re: HTML Canvas - Transforms for HDR and WCG

In the discussion on Monday there was the question of "what happens when an anonymous PNG such as this image is drawn to an SDR display or into an SDR canvas?".

These are anonymous PNG images. 

It’s just a coincidence that the names in this case tell you the media color space.

 

In all browsers today, for "Colorbars in HLG 203 display.png", any signal value above 0.75 is clamped to SDR-white.

Is this the expected behavior when the image is displayed on an SDR display using an <img> tag?
Is this the expected behavior when it is drawn to an SDR <canvas> element?

Yes.

Keep in mind that clamping is desired, when the image doesn’t contain stuff outside the display space.

For example, the Rec 2020 container gamut is much bigger than the mastering P3 display. During mastering the content is fitted to P3, and to preserve creative intent, Rec2020 content should not be gamut compressed in a target P3 display. 

 

Going back to the <img> tag situation, should 0.75 in this image always match sRGB-white on HDR displays (even if sRGB-white is 80, 100, or 400 nits)?

Yes. 

Consider this:

Every known brightness slider scales the brightness of the entire tonal range, including the shadows. This applies to both SDR and HDR displays.

No known brightness slider controls the brightness by clipping the diffuse white level and leaving the shadow part unchanged.

Same logic applies here, so sRGB white <-> 0.75 HLG.

 

Lars

 

From: Christopher Cameron <ccameron@google.com>
Date: Wednesday, April 28, 2021 at 9:23 AM
To: Lars Borg <borg@adobe.com>
Cc: Simon Thompson <Simon.Thompson2@bbc.co.uk>, "public-colorweb@w3.org" <public-colorweb@w3.org>
Subject: Re: HTML Canvas - Transforms for HDR and WCG

 

Thanks for the images.

 

In the discussion on Monday there was the question of "what happens when an anonymous PNG such as this image is drawn to an SDR display or into an SDR canvas?".

 

In all browsers today, for "Colorbars in HLG 203 display.png", any signal value above 0.75 is clamped to SDR-white.

 

Is this the expected behavior when the image is displayed on an SDR display using an <img> tag?


Is this the expected behavior when it is drawn to an SDR <canvas> element?

 

Going back to the <img> tag situation, should 0.75 in this image always match sRGB-white on HDR displays (even if sRGB-white is 80, 100, or 400 nits)?

 

 

 

On Wed, Apr 28, 2021 at 9:32 AM Lars Borg <borg@adobe.com> wrote:

Enclosed is a set of images in various color spaces, including HDR, with ICC profiles.

They all look the same in today’s browsers (tested Safari, Chrome, Firefox)

 

These images can be used for validating Chris Cameron’s concepts.

Color matching without ICC profiles will require display-referred conversions for HLG.

Please try.

 

Lars

 

From: Lars Borg <borg@adobe.com>
Date: Thursday, April 1, 2021 at 11:52 AM
To: Christopher Cameron <ccameron@google.com>, Simon Thompson <Simon.Thompson2@bbc.co.uk>
Cc: "public-colorweb@w3.org" <public-colorweb@w3.org>
Subject: Re: HTML Canvas - Transforms for HDR and WCG
Resent-From: <public-colorweb@w3.org>
Resent-Date: Thu, 01 Apr 2021 21:51:37 +0000

 

If you are doing an image browser for arbitrary images and thus arbitrary color spaces it would be awkward to have to locate a proper image-specific color transform. 

Can’t we just use the info that comes with the image?

If blending with text “Buy Now” the blending should be in the same color space for all images, or else we would need unique text color values for each image.

 

Lars

 

From: Christopher Cameron <ccameron@google.com>
Date: Thursday, April 1, 2021 at 8:13 AM
To: Simon Thompson <Simon.Thompson2@bbc.co.uk>
Cc: Lars Borg <borg@adobe.com>, "public-colorweb@w3.org" <public-colorweb@w3.org>
Subject: Re: HTML Canvas - Transforms for HDR and WCG

 

 

 

On Thu, Apr 1, 2021 at 3:35 AM Simon Thompson-NM <Simon.Thompson2@bbc.co.uk> wrote:

Hi,

 

One further thought from me, the proposal last night depended on using a certain image import function which allowed the user to dictate a target colour space and transform set.  Does a similar video import function exist?

 

Yes! It's the same function, createImageBitmap, and it takes as input: images, SVG, video, canvas (so you can draw your canvas into your canvas), and blob (not-yet-decoded image). The options include a "colorSpaceConversion" option, which is currently "none" or "default". This is where I think we should consider adding a well-defined perceptual colorimetric intent (and this intent wouldn't be path-independent).

 

When the input is a blob (a not-yet-decoded image), the color space conversion can happen simultaneously with image decode.

 

 

Received on Wednesday, 28 April 2021 21:26:40 UTC