Color RGB/HSV values are different in Image Editor compared to any other UI Color field #117023
Labels
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset System
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Code Documentation
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Viewport & EEVEE
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Asset Browser Project
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Module
Viewport & EEVEE
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Severity
High
Severity
Low
Severity
Normal
Severity
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender#117023
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
System Information
Operating system: Windows-10-10.0.19045-SP0 64 Bits
Graphics card: AMD Radeon RX 7900 XT ATI Technologies Inc. 4.6.0 Core Profile Context 23.12.1.231124
Blender Version
Broken: version: 4.0.1, branch: blender-v4.0-release, commit date: 2023-11-16 16:40, hash:
d0dd92834a08
Worked: (newest version of Blender that worked as expected)
Short description of error
In Image Editor with Sample Pipette I get for the Color other RGB/HSV Values (probably this are right ones) as if I copy this exact color to Object Color or Material Color field or to any other Python Add-on color field which uses FloatVectorProperty.
The Color is actually the same but the single values R G B, H S V are different from the Image Editor to the Color Field.
Color Management is set so sRGB, Standard, Exposure 0.0, Gamma 1.0, Look None
Steps to reproduce the issue
Load any Texture in the Image Editor, zoom to any pixel,
set this specific color with the Color Picker Window - Eyedropper for Object Color or Material Color,
sample color with Sample Pipette in Image Editor.
Compare with values in the Color window of UI. The values are different.
BTW: Would be nice if the Sample Pipette can copy the Color to Clipboard with an Shortcut maybe +Ctrl
Color RGB/HVS values are different in Image Editor compared to any other UI Color fieldto Color RGB/HSV values are different in Image Editor compared to any other UI Color fieldThank you for the report but the issue is unclear, as there is no "steps to reproduce the issue".
Without clear steps, it is difficult to determine the exact cause and provide a solution.
However, I can provide some general information that might be helpful.
The color picker in Blender for RGB values is in the scene linear color space (hence the value are in the 0.0 to 1.0 range).
Blender follows a scene-referred workflow, whereas applications like Photoshop use a display-referred workflow.
If you want to input colors in the sRGB color space with "gamma correction" applied, you can use the Hex input. This will ensure that the values are interpreted correctly in the sRGB color space.
For more information on this topic, I recommend consulting the Blender manual:
A guideline for making a good bug report can be found at https://wiki.blender.org/wiki/Process/Bug_Reports
I didn't post any steps because its already explained in description. But I had added them + screenshot. Hope this makes it clear.
This seems to be, because image colorspace is sRGB, while object color is in linear space, so color conversion happens. If you set image colorspace to Linear, you get the same color in color picker. Can you check what is colorspace of the image you are using?
The Image PNG file is in sRGB, ofc. With not any other ColorSpace of Image I get the same values. The values in the Object Color field are 0.0XX, that is pretty small.
If you slide all R G B Values you see a curve like an e-function. I dont think this is linear.
for the #2f342e:
So Photoshop value (transfered to float) and ImageE Sample is same value, also the position in the Color Square, hence the correct one.
Hence Color Picker Window shows correct Color, but wrong values!
@Dominique-Herrmann I am not sure if I understand your last comment. I am not sure, what ImageE is. Colors you perceive as same color have different values in various colorspaces. I guess, that you assume, that color you see in UI, is linearly distributed from 0 to 1(255). That is true in sRGB space, but in linear space there this is non linear distribution.
In any case, I have looked in the code - it converts the sampled pixel from image color space to scene linear color space. This works as expected, so will close the report.
@iss Richard Antalik Hello, excuse me. But you are wrong. sRGB is transfered ColorSpace with gamma for displays to human eye perception. So sRGB is NON- linear.
and Linear space IS linear, so it has much more differentiation on high and low values. Instead sRGB is gamma-corrected, so it is a steep curve.
https://docs.krita.org/en/general_concepts/colors/linear_and_gamma.html
ImageE. means "Image Editor", ofc. There is also the "Sample Tool". Have you actually looked into the interfaces I mentioned?
But you know what, it's okay, its working and I found a solution to work with this. Just had to know that the Image Editor Sampling are the right sRGB values. But If I set sRGB in Color Management I assume I get everywhere in UI the same values.
EDIT: Sry you can close,
I know that, what I meant is that if you transform linear progression (of numbers incrementyng by a constant) in sRGB to linear colorspace, you will end up in non-linear progression.
In any case I am not that familiar with conversion from one space to another, that I can just see, that it is wrong. But I have walked the code step by step and it has changed the sample value from 0.149019614 (sRGB) to 0.0193821695 by function
IMB_colormanagement_colorspace_to_scene_linear_v3
with colorspace argument beingsRGB
. This conversion is done by OIIO library. Plugging numbers you provided to random online color converter also suggests that this behavior is correct.In https://docs.blender.org/manual/en/latest/interface/controls/buttons/eyedropper.html they say, that this conversion is further influenced by view transform, which could explain your case, but that does not seem to be the case with my test case.
If you can provide sample .blend file so we are both looking at same colors, and the conversion is wrong I can reopen the report.
Okay, attached the file for comparison.
Okay, then it is not a bug. It converts correctly the values to "Linear sRGB", the Online Converter suggests.
Didn't know or forgot that Blender is always internal in "scene_linear".
I thought if I change in ColorManagement Display Device: sRGB & View Transform: Standard, the whole system works with this. But that actually doesn't change any values of the Colors in UI. Even you set another Display Device.
Excuse me this Information is Noted in the Manual for Color Picker, that the values are always as "scene_linear" respectively "Linear sRGB".
But maybe in ColorWindow an QoL option would be nice, to just show the Display Device e.g. sRGB values in the ColorWindows, even when they are converted internaly to "scene_linear". Otherwise you would need to think in two ColorSpaces.