- From: Phil Green <green@colourspace.demon.co.uk>
- Date: Fri, 8 Jun 2018 23:16:34 +0100
- To: Leonard Rosenthol <lrosenth@adobe.com>, Max Derhak <Max.Derhak@onyxgfx.com>, Simon Thompson-NM <Simon.Thompson2@bbc.co.uk>, "public-colorweb@w3.org" <public-colorweb@w3.org>
- Message-ID: <39eee445-9a99-1978-5fe8-e7b3ce1dfe54@colourspace.demon.co.uk>
In my understanding yes, but you would not be able to pass in the max and min luminance so would need a different profile for each condition supported. Phil On 08/06/2018 16:28, Leonard Rosenthol wrote: > > Can this profile be defined WITHOUT the calculator? > > Leonard > > *From: *Max Derhak <Max.Derhak@onyxgfx.com> > *Date: *Wednesday, June 6, 2018 at 2:43 PM > *To: *Simon Thompson-NM <Simon.Thompson2@bbc.co.uk>, > "public-colorweb@w3.org" <public-colorweb@w3.org> > *Subject: *RE: Help with HLG profile > *Resent-From: *<public-colorweb@w3.org> > *Resent-Date: *Wednesday, June 6, 2018 at 2:43 PM > > Simon has indeed helped me, and I’m very grateful for his assistance. > As it turns out there was a small bug in my matlab/octave code. > > Based on my matlab/octave code I have been able to create iccMAX > profiles for both narrow range and full range encoding of Rec 2100 > using Hgl curves. I created XML representations of the profiles and > used the iccFromXML tool from the reference implementation to create > the profiles for testing using the iccMAX reference implementation CMM. > > Significant features of these prototype profiles include: > > * Full floating point based algorithmic encoding of RGB to XYZ and > XYZ to RGB tags using calculator processing elements > * Uses a D65 based PCS > * Max and min luminances can be passed in as CMM environment > variables to adjust Hlg curves > * The profiles use display relative Y=100 for max white for default > relative intent processing > * Scene relative luminances can be supported with CMM luminance > matching using the spectral viewing conditions tag (part of > Profile Connection Conditions – PCC) illuminant white point > luminance. (Note: Using CMM control options for luminance based > matching by CMM allows for scene relative luminances to be used > and adjusted for. The PCC can be externally substituted to define > an alternate white point luminance for luminance scaling, but > matching values for CMM environment variables are also needed to > ensure that the corresponding Hlg curves are used). > > An Interoperability Conformance Specification (ICS) is needed to help > define specific profile and CMM requirements for this type of > profile. That is something that the ICC display working group will > work on. > > None of this can be directly accomplished using a single V4 profile. > V4 uses display relative with a D50 PCS (with chromatic adaptation > applied). By playing around with defining the media white point one > can achieve a level of luminance scaling using absolute intent with > some possible interoperability issues to contend with. The Hlg > algorithm cannot be directly encoded in v4, and LUTs and inverse LUTs > using interpolation need to be populated for a fixed scene luminance > condition with different profiles created for different scene luminances. > > Regards, > > *Max Derhak (PhD)* > /Principal Scientist/ > > *From:*Simon Thompson-NM [mailto:Simon.Thompson2@bbc.co.uk] > *Sent:* Tuesday, May 29, 2018 8:52 AM > *To:* public-colorweb@w3.org > *Subject:* Re: Help with HLG profile > > Hi Chris, all, > > I’ve already sent a code correction to Max, so hopefully that will fix > the issue he was seeing. > > I’ll comment further inline, below. > > *From:*Chris Lilley [mailto:chris@w3.org] > > On 17-May-18 23:25, Max Derhak wrote: > > Hi, > > I have an action item in the ICC Display Working group to develop > an HLG based iccMAX display profile. In order to understand how > to go about it I’ve first prototyped functionality in Matlab/Octave. > > The attached zip file has my code along with the BT2100 document > that I’m using to implement.. The problem is that for a display > profile you need to have both device to PCS as well as PCS to > device transforms. > > The device to PCS transform is conceptually implemented in > HLG_FullToXYZ.m, and the PCS to device is conceptually implemented > in HLG_XYZToFull.m (I’m using full 0.0 to 1.0 range encoding in > this case). Alternatively one could use the HLG_Narrow12ToXYZ.m > and HLG_XYZToNarrow12.m to use the narrow 12-bit integer encoding. > > The problem is that the OOTF (implemented in HLG_EOTF.m) and > inverse OOTF (implemented in HLG_invEOTF) functions are not > logical inverses of each other (from what I can tell from the docs). > > I recall hearing that these are not round-trippable. > > The equations for HLG are reversible and we have used the reverse > transforms for converting other HDR formats to HLG, converting SDR > camera feeds to HLG and converting HLG to SDR. An example use case is > given in: > https://www.bbc.co.uk/rd/blog/2018-05-ultra-high-definition-dynamic-range-royal-wedding-uhd-hdr > <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.bbc.co.uk%2Frd%2Fblog%2F2018-05-ultra-high-definition-dynamic-range-royal-wedding-uhd-hdr&data=02%7C01%7Clrosenth%40adobe.com%7Cb810dc2b06c24735603308d5cbdd749e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C636639074360711277&sdata=R%2BFSqmXWBTIxF8EfODM8ZR83S4jkiC8YwMpWTlFzi4Q%3D&reserved=0> > > On the other hand the BBC claim that the transcode looks "identical" > > A more complete description of the process of transcoding between HDR > formats is given in ITU-R BT.2390 section 7: > https://www.itu.int/dms_pub/itu-r/opb/rep/R-REP-BT.2390-4-2018-PDF-E.pdf > <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.itu.int%2Fdms_pub%2Fitu-r%2Fopb%2Frep%2FR-REP-BT.2390-4-2018-PDF-E.pdf&data=02%7C01%7Clrosenth%40adobe.com%7Cb810dc2b06c24735603308d5cbdd749e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C636639074360711277&sdata=cXEstDUoMa2r2vIP1fmlx57urfV5uyxbR2hOEjEFbQc%3D&reserved=0> > > > *Also it would be incredibly helpful to better understand what is > the purpose of having an HLG ICC profile? > > There are a few general use cases that we’ve thought of so far which > apply equally to all HDR variants: > > ·Storage of subtitles and other still images – currently still formats > like PNG can only store a gamma value in the header files – the only > way to store non-gamma encoded images is to embed an ICC Profile. > Currently for PQ HDR, there’s a draft proposal that looks for a given > ICC Profile filename in the header which then over-rides both the > header and profile. We would prefer to have the correct ICC profiles > available. > > ·Allowing operating systems to correctly display images on non-gamma > displays. > > ·IP disptribution platforms (both PC based and Set-top box will need > to display video and background images) – e.g. a video embedded in a > webpage, you may have a video box in HDR and a surrounding webpage in > sRGB, both of which need to be correctly displayed and need an ICC > profile description. > > Any transforms from SDR to HDR will need to place the SDR diffuse > white at the correct signal level (given in ITU-R BT.2408) – I’m not > sure how this is encoded in to the transforms. > > Best Regards > > Simon > > -- > > *Simon Thompson MEng CEng MIET* > Project R&D Engineer > > *BBC Research and Development South Laboratory* >
Received on Friday, 8 June 2018 22:17:29 UTC