Adjustment layers bit depth

Here everybody can post his problems with PhotoLine
Juan
Mitglied
Posts: 615
Joined: Thu 06 Oct 2011 08:08

Adjustment layers bit depth

Post by Juan »

Hello, Is there a way to know what adjustment layers work in fully 32-bit and which one will "convert down" the bit depth?
Martin Huber
Entwickler
Entwickler
Posts: 4192
Joined: Tue 19 Nov 2002 15:49

Re: Adjustment layers bit depth

Post by Martin Huber »

The easiest way is to ask about the ones that interest you.
Juan
Mitglied
Posts: 615
Joined: Thu 06 Oct 2011 08:08

Re: Adjustment layers bit depth

Post by Juan »

I would like to have a chart with each adjusment layer bit depth support. I created one with what I believe is the bit depth support of each one.
bitdepth.jpg
Juan
You do not have the required permissions to view the files attached to this post.
User avatar
shijan
Mitglied
Posts: 1604
Joined: Mon 23 Dec 2019 15:21
Location: Ukraine

Re: Adjustment layers bit depth

Post by shijan »

Levels works in true 32 bit if don't touch Gamma slider. (As it was explained by Martin Huber: Gamma is a exponentiation and therefore need a base larger than or equal to 0. Therefore some values are clipped before exponentiation.)
PhotoLine UI Icons Customization Project: https://www.pl32.com/forum3/viewtopic.php?f=3&t=6302
User avatar
shijan
Mitglied
Posts: 1604
Joined: Mon 23 Dec 2019 15:21
Location: Ukraine

Re: Adjustment layers bit depth

Post by shijan »

Guess 32-bit float support is easy to check if apply filter to some HDR EXR CG image. You need real 32-bit float sample image without build-in tone mapping. Some sample EXR test image from AMD ProRender should be great. If filter don't support 32 bit you will see some clipping artifacts. For additional check you can apply Optimize HDR filter on top, Enable checkbox "Automatic" and see if it tone maps image correctly. If output is 16 bit, Optimize HDR will not tone map filtered image in expected way.

For example from my quick test seems HUE Editor don't support 32-bit float in HIS mode, but works well in HSV and RGB modes.
Lab mode HUE Editor is strange. It generates a lot of artifacts if use Apple CMS, but looks ok with very small amount of artifacts if use Little CMS.
PhotoLine UI Icons Customization Project: https://www.pl32.com/forum3/viewtopic.php?f=3&t=6302
User avatar
russellcottrell
Mitglied
Posts: 254
Joined: Sat 26 Jul 2014 10:13
Location: California

Re: Adjustment layers bit depth

Post by russellcottrell »

Scripting can generate a gradient of 32-bit colors that are one bit apart (I think); but no application I know of has a color picker that actually reads 32-bit colors (increment would be 1/4294967296 or 0.000000000232831), and I do not know how to get the color of a pixel with scripting (in PhotoLine, that is). If it were possible, adjustments could be applied to a gradient and the colors read to see if they were still one bit apart.
User avatar
shijan
Mitglied
Posts: 1604
Joined: Mon 23 Dec 2019 15:21
Location: Ukraine

Re: Adjustment layers bit depth

Post by shijan »

No need any scripting. Color Editor allow to set color values in float format that is less than 0% and more that 100%.
So instead of looking some abstract and not too scientific 32-bit 3D render example, you can create black and white gradient and type in Color Editor for black color something like -200%, and for white color 200%. Instead of typing it is also possible to use middle mouse button drag to set values beyond 0-100%.

In 32-bit if you apply Optimize HDR filter to this gradient and Enable checkbox "Automatic" - it will tone map negative values back to 0% and 100% and gradient will change it's look.
Image
Image

In 16-bit If you apply Optimize HDR filter and Enable checkbox "Automatic" - gradient will remain unchanged.
PhotoLine UI Icons Customization Project: https://www.pl32.com/forum3/viewtopic.php?f=3&t=6302
Martin Huber
Entwickler
Entwickler
Posts: 4192
Joined: Tue 19 Nov 2002 15:49

Re: Adjustment layers bit depth

Post by Martin Huber »

Juan wrote: Tue 13 Sep 2022 12:06 I would like to have a chart with each adjusment layer bit depth support.
The answer is not that simple.
Some functions internally use color management (CM) and depending on the color management system (CMS) used that may or may not support 32 bit (float). Windows CMS only uses 16 bit, LittleCMS and Apple CMS also support float.
Other functions have to clip float values to a [0;1] range for mathematical reasons.

So here are the adjustments that currently support float. Some are listed as "uses CM". These are the ones that always use CM. Other adjustments might use CM when you set the working mode to "Lab".
- Levels
- Optimize HDR
- Hue/Saturation (not in Colorize mode)
- Hue Editor
- Vibrance
- Selective Color Correction
- Threshold (but that always just generates 0 or 1)
- Color to Transparency
- Color Lookup (16 bit with 1D LUTs, float with 3D LUTs (uses CM))
- Match Colors (uses CM)
- Channel Mixer
- Gray Mixer
- Unsharp Masking
- Sharpen
- Adaptive Sharpen
- Gaussian Blur
- Soften
- Adaptive Soften
- Motion Blur
- Variable Blur
- Wipe Effect
- Exposure
- Sponge
- High Pass
- Minimum
- Maximum
- Perturbation
- Relief
- Light/Shadow
- Color Temperature (current version is 16 bit, next version will be 32 bit (uses CM))
- Chromatic Aberration
- Denoise
Juan
Mitglied
Posts: 615
Joined: Thu 06 Oct 2011 08:08

Re: Adjustment layers bit depth

Post by Juan »

Thank you all for your replies :)

On my tests I noticed that these adjustment layers clips the values:
- Hue/Saturation
- Selective Color Correction
- Gray Mixer

The way I made a test is rendering an image in blender and saving it as full float color depth. Afterwards, I added a color position on a bright area in the picture and started checking what adjustment layer turns the picker value to 255 or lower.
color position.JPG

If anyone wants to give it a try, here is the original exr file.
https://www.transfernow.net/dl/20220917pgTj96Md
You do not have the required permissions to view the files attached to this post.
User avatar
shijan
Mitglied
Posts: 1604
Joined: Mon 23 Dec 2019 15:21
Location: Ukraine

Re: Adjustment layers bit depth

Post by shijan »

Nice test with Color Picker!
I can confirm. From Gradient test seems Hue/Saturation, Selective Color Correction and Gray Mixer are not 32-bit.
Hue/Saturation by default works in HIS mode, so same as Hue Editor in HIS mode it don't support 32-bit float.
HIS is very nice mode because it changes saturation without brightness shift.
PhotoLine UI Icons Customization Project: https://www.pl32.com/forum3/viewtopic.php?f=3&t=6302
Martin Huber
Entwickler
Entwickler
Posts: 4192
Joined: Tue 19 Nov 2002 15:49

Re: Adjustment layers bit depth

Post by Martin Huber »

Juan wrote: Sat 17 Sep 2022 11:48 On my tests I noticed that these adjustment layers clips the values:
- Hue/Saturation
- Selective Color Correction
- Gray Mixer
Hue/Saturation uses HIS and that is restricted to [0;1].
Selective Color Correction also clips its result to [0;1].
Gray Mixer uses Lab and is therefore restricted to the properties of the CM.

Martin
Martin Huber
Entwickler
Entwickler
Posts: 4192
Joined: Tue 19 Nov 2002 15:49

Re: Adjustment layers bit depth

Post by Martin Huber »

shijan wrote: Sat 17 Sep 2022 12:53 I can confirm. From Gradient test seems Hue/Saturation, Selective Color Correction and Gray Mixer are not 32-bit.
They are 32 bits, but are limited to a certain range of values for inherent reasons.

Martin