Meeting Summaries 

ACES Output Transforms VWG 

← Use sidebar to navigate to a particular meeting.
Use Cmd+F or Ctrl+F to search this page.

Meeting #86, January 25th, 2023, 1pm PT


Alex Fry
Kevin Wheatley
Scott Dyer
Nick Shaw

Lars Borg
Daniel Brylka
Alex Forsythe
Luke Hellwig
Jeffrey D Mathias
Joshua Pines
Pekka Riikonen
Simon Yahn

Meeting Notes

  • Kevin Wheatley: Nick and Pekka have been working on a tool for interactively examining the gamut boundary and intersection.
  • Pekka Riikonen: Nick created this tool and I added the gamut mapper. It shows a cross section of a hue slice and the projection line of a selected color when gamut mapped. It shows a dot at the intersection of the projection line with the gamut boundary, found using the same iterative method used in the DRT. It also shows the position of the compressed color. There is no smoothing of the cusp, which creates lines in gradients. The plot has an option to use an approximation to the gamut, using a triangle to the cusp. But that cuts a big slice off the gamut, which significantly affects images. Nick then added a gamma to add curvature, and with a gamma of 1.15 it tracks the boundary well. With real images I found a mismatch and had to use a gamma of 1.33 to get a match [this subsequently turned out to be due to a mismatch between the Python and Blink surround settings].
  • Nick Shaw: What is the result in the upper part, where we use a straight line with no gamma?
  • Pekka Riikonen: There is some concavity with some colors, particularly reds. But that may not be a bad thing. For some hues the straight line cuts slightly inside the true boundary, so we need to investigate the effect of that.
  • Nick Shaw: We don't actually clip in JMh to the boundary, so you can still "push through" it.
  • Pekka Riikonen: You need pretty "out there" colors though. I'm not too worried about it though. I've also experimented with a signed distance function (SDF). This gives the nearest point on the boundary to a color. So perpendicular to the boundary. I added that as an approximation option. As a test I use the SDF distance but with the current projection line. The SDF has smoothing inherent in the function, giving a smoothed triangle. I think we need smoothing around the cusp, but one that makes the shape larger rather than eating ito the gamut.
  • Kevin Wheatley: The tool is also interesting to visualize where the other end of the projection line is, on the other side of the plot. It might also be interesting to see a plot along a different axis such as equal M. The 1.15 gamma value appears to come from the surround coefficients.
  • Nick Shaw: In the code of the J calculation there is an exponent of z * surround.c, which comes to 1.137 with our coefficients for dim. So close to 1.15. And it tracks with the boundary at dark and average too. It's good to have a formula fort exponent, rather than magic numbers.
  • Kevin Wheatley: We need to let people play with the interactive plot.
  • Nick Shaw: It's a shame I can't make an interactive plot work in a Colab. So people need to download it and run it locally. It needs Colour Science for Python installed too.
  • Kevin Wheatley: Near the cusp it's quite flat, but cusp J changes with hue.
  • Nick Shaw: A gradient changing in hue but with constant M could go from above to below the cusp, and therefore maybe change direction sharply.
  • Kevin Wheatley: Alex has done some 3D visualizations.
  • Alex Fry: Anton posted some images showing a dark band in a gradient as you lower exposure. I've made some visualizations [see recording from 36:30] showing the source JMh values, then tone-mapped and finally gamut mapped, and lines joining the two.
  • Pekka Riikonen: Could the band be caused by the final clipping?
  • Alex Fry: I don't think the clipping here is enough to cause a dramatic change.
  • Luke Hellwig: I have an idea that the dark line is where the gamut compression is stopping, and everything beyond that is being desaturated.
  • Alex Fry: They are being brightened here, but I can reduce that by increasing focus distance. That helps a bit. But horizontal projection gives undesirable results.
  • Joshua Pines: Maybe horizontal projection works for dark stuff, but don't use it on bright stuff.
  • Luke Hellwig: The main thing is that part of the gradient is being compressed, and part isn't so no matter what you do it will look weird.
  • Kevin Wheatley: We need a softer inner portion.
  • Nick Shaw: If you set compression threshold to zero it begins softly all the way from achromatic. That might not do nice things to images. I just tried dropping it from 0.75 to 0.5 and the effect is not as dramatic as you might expect. Not even if you drop it to zero.
  • Pekka Riikonen: I would say it has a pretty big impact! I hope once we have a smooth cusp and larger intersection it will reduce these artifacts.
  • Alex Fry: I'm unsure about the smooth cusp, because we need to hit the corners.
  • Pekka Riikonen: If the intersection is larger than the boundary it doesn't eat into it.
  • Nick Shaw: But you still have to clip to the actual gamut for display, so your sharp cusps come back.
  • Alex Fry: And that may introduce hie skews. I found synthetic images designed to show it up had a problem with the sharp cusps, but with real images it wasn't such a problem.