• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Problem with gradient banding in the newest version(s) of Photoshop CC

Explorer ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

I prepared a pattern of +/-2ev gray in the previous version of Photoshop. There is illustrotion of this:

Exposure profile.jpg - Google Drive

This pattern is in 16bit Lab color mode. Each of rectagles has very precisely calculated gray values and then refined with X-Rite devices on prints . Because the Photoshop didn't allow to enter decimals into the Lab color values, I created gradient at the top and then used eyedropper tool to select fractional values such as Lab(47.2, 0, 0). It worked perfectly. Today I need to print and refine this pattern again. What was my surprise when this pattern stopped to be editable with fractional precision in the newest version of Photoshop CC (2018). Eye dropper tool reads only integer values from gradient (1% accuracy). All of my work got useless. Please help, how to bring back linear gradients without 1% banding (I mean values eg L= 50.7, 51.2, 51.9 instead of L=50, 51, 52... )

Views

1.5K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Community Expert , Jan 09, 2018 Jan 09, 2018

I use CC2018 here

The eyedropper reads exact values from the gradient in 16 bit Lab. Just switch the info panel to display 32 bit values (it will then show L as 0 to 100) to confirm.

If you click - the value at that point becomes the foreground colour and can be used to paint or fill

See below read from a 16 bit gradient in Lab mode

Dave

Votes

Translate

Translate
Adobe
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

I use CC2018 here

The eyedropper reads exact values from the gradient in 16 bit Lab. Just switch the info panel to display 32 bit values (it will then show L as 0 to 100) to confirm.

If you click - the value at that point becomes the foreground colour and can be used to paint or fill

See below read from a 16 bit gradient in Lab mode

Dave

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Set your Info eye dropper to 32-bit from the dropper's flyout menu:

Screen Shot 4.png

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Hi,

Thanks a lot! It works! 🙂

BTW - I have a question to you both. Do you know better method to enter particular Lab / HSB / whichever color values with decimals than using gradients and eyedropper?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

I think the reason the color picker will only take an integer is that not all real numbers would work, and there would have to be some kind of rounding to the next gray level representation. If the dialog took real numbers it would imply the chosen number was accurate, but that might not be the case—there would be gaps between the real number representation even with 16-bit.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Hi Rob,

It works.  For example if 50% gray produces 50% gray on prints but 51% gray produces 54% gray on prints, then 50.5% gray can produce eg. 52% gray. I'm using this trick for adjusting printed gray pattern to calibrate camera.

So the problem is that Photoshop doesn't allow  to enter by hand decimals of numbers but supports them if they are entered other way.

BTW I have just created "feature request".

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Hi

Can you post a link to your feature request, in this thread, please. That way anyone else who comes across this thread has a chance to vote it up.

Dave

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

InDesign (ironically) lets you define swatches (including Lab) with real numbers.

Here I've set up Lab swatches with L values at 49.5, 50.0, and 50.5:

Screen Shot 8.png

I can then export the page as a PDF/X-4, which will leave the Lab color unchanged and open the PDF in PS as Lab 16-bit

Screen Shot 9.png

The PS Info readouts show the real number values rounded down to the nearest 8-bit number (InDesign doesn't support 16-bit):

Screen Shot 10.png

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

So the problem is that Photoshop doesn't allow  to enter by hand decimals of numbers but supports them if they are entered other way.

It works via the eyedropper because the true pixel gray level has been defined in the document.

So this 8-bit example shows the problem. RGB 128|128|128 and 127|127|127 both round to L:54. When I apply the color to an 8-bit Lab doc I can see the readout for the 128 version is 54.16 and the readout for the 127 version is 53.78. In 8-bit there's not an in between gray level so if real numbers were allowed I would be able to enter 53.95, but that gray level doesn't exist in my document, so when I apply it the number would have to be changed either down to 53.78 or up to 54.16.

You might say what's a few thousandths between friends?, but I'm guessing you won't get your request.

128.png

127.png

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Of course 8-bit representation is much less precise than 16-bit. I don't take it into consideration. In 16-bit mode which I use, it makes the difference, especially in case of printed medias where dependence between inner representation of color in PS is not linear with printed color. Difference of 0.5% of luminance can sometimes result with 2-3% on printed media. Even if they are calibrated properly.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

You can't print Lab values, there has to be a conversion into the print space so the change in output values would depend on the destination profile. You can see that if you convert Lab into an output gray space, changing the destination gray space will change the K numbers for the same L value.

InDesign doesn't support 16-bit because no printer halftone screen is capable of reproducing more than 256 gray levels. You might argue that an inkjet stochastic screen can do somewhat better, but the printer resolution would still limit the number of possible gray levels.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Yes, this conversion has place between Photoshop and printer driver obviously. On the other hand I'm using Epson SC-P600 which has additional inks (CMYK+4) to achieve much more grey levels than typical printer. I don't know what exactly happens between PS and driver but 0.5% of luminance in 16bit Lab color mode makes the difference. Hard to discuss with the results of measurements  done by X-Rite spectrofotometer  The measurement results are very repeatable. I'm far from considering them as error.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Sorry if I'm misunderstanding, but are you saying a spread of .5% between two input Lab values turns into a 3% spread in the output? That would appear as a very obvious visual jump in the output. If you were to print a gradient with a 3% value jump between two of the gray levels there would be obvious banding in the print.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

I meant banding at source side: Photoshop. If I use Lab color model then I have only 100 steps from white to black and consequences of that. This is what I'm calling as banding. I'm sure that my English is far from to be clear 😞 If you draw in Photoshop 100 rectangles, 1px width, each with next closest possible color (Lab: [0,0,0], [1,0,0], [2,0,0]...) then all neighbours will have 1% difference between them.

If you expect better smoothness you can't type in color values because they have to be integers.

Please look at the consequences of that fact. I must print and refine this pattern:

Exposure profile.jpg

The biggest rectangle has 18% gray represented by Lab(50,0,0). Every next rectangle differs by 1/6ev from its predecessor . This is extremly important. Let assume that rectangle to the right from the biggest has calculated value Lab(48,0,0). I don't remember real values now. Next I print this template on calibrated printer and measure color. Let's assume that color value I got is Lab(47,0,0) - it is a little bit too dark. What I need to do? Just go back to the Photoshop and change color to Lab(49.5,0,0) and.... I can't! This is because of built-in Photoshop's 1% banding. I don't know how to better name this problem: color resolution? Probably you know what I mean.

Fortunately there is a workaround: using eyedropper tool  to select color  impossible to type in from helper gradient and fill this rectangle with it.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 09, 2018 Jan 09, 2018

Copy link to clipboard

Copied

Let's assume that color value I got is Lab(47,0,0) - it is a little bit too dark. What I need to do? Just go back to the Photoshop and change color to Lab(49.5,0,0) and.... I can't! This is because of built-in Photoshop's 1% banding.

You wouldn't need 16-bits to make that adjustment, in 8-bit the gray level changes can be in .390625% increments (100/256). It's only the color picker entry that's limited to rounded integers and not the actual input gray levels. Because the digital gray levels are always in discrete intervals (even with 16-bit) I'll be surprised if the color picker manual entry changes after 30 years and 19 versions, but it's worth a request.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 10, 2018 Jan 10, 2018

Copy link to clipboard

Copied

LATEST

Yes Rob, sure. 8 bit Lab can produce decimals as well but not enough precise. I have just checked rectangles in mentioned template. Some followin values are: 49.50, 47.02, 44.64, 42.33, 40.13 etc  So resolution of color ceorrections are between 0 till 0.7 So 16 bit mode is required to be able to set values very precisely  Especially for dark shades small change can produce big deviation, which is expected.

Regarding to you second post.

There is no problem. Nothing will change. If we use 8 bit color mode, maximum allowed precision is 1/256. In 16bit mode: 1/65536. So if L=50% = RGB(128,128,128) then L=50.5% = RGB(129,129,129) instead of RGB(128.775, 128.775, 128.775).

Notice, we have currently exactly the same problem. What value of L=51% is in RGB / 8 bit mode? RGB(130.56...) ? Or vice versa: what value of RGB(150,150,150) is Lab/8bit mode?   If we allow to using decimals - nothing will change but the life will be easier. Using of tricks just stop to be a necessity. Nothing more, nothing less.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Jan 10, 2018 Jan 10, 2018

Copy link to clipboard

Copied

It is an interesting interface design problem.

If the interface allowed real numbers in the fields that are 0-100% what would happen to the RGB 0-255 fields as you changed the decimal number in the L field? I don't see how you could allow something like 128.6, would the RGB fields change to 0-65536?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines