1
\$\begingroup\$

I read this:

https://therefractedlight.blogspot.com/2010/09/imaginary-and-impossible-colors.html

"there are no green colors whatsoever which do not also stimulate your red or blue cells, or even both."

In regards to camera sensors:

"you'll never get a green signal without significant amounts of either red or blue or both."

Basically, is it true that there is no such green value that does not also have red or blue values? Or would you say this is more so referring to the unlikely nature of finding such a green in the natural world? Or am I misunderstanding something?

We are assuming the sensor is operating normally.

\$\endgroup\$
1

3 Answers 3

5
\$\begingroup\$

Camera sensors are designed to mimic the way the human eye/brain system perceives a portion of the electromagnetic spectrum as light. Our brains create the perception of color when stimulated by various wavelengths of the electromagnetic spectrum that we call "visible light". There are no colors intrinsic to any wavelength in the electromagnetic spectrum, there are only colors created by the perception of certain wavelengths by vision systems. What the human eye perceives as "blue" may not be perceivable at all by an insect. That same insect, however, can perceive infrared wavelengths that human eyes can't see at all.

There's no fundamental difference between other wavelengths in the electromagnetic spectrum and what we call "visible light" except the fact that our retinas react biologically to the wavelengths we refer to as visible light and do not react in the same way to other wavelengths of electromagnetic radiation. In other words, we call it visible light because properties of our vision system cause a biological reaction to those certain wavelengths, not because any unique properties of those wavelengths make them visible. X-rays, ultraviolet, infrared, etc. are all fundamentally the same as visible light, but our eyes do not react to those wavelengths.

The degree of the responses of each of the the three types of cones in the human retina depend on the specific wavelength(s) included in the light falling on the retinal cones. Our S-cones ("S" is for short wavelengths) have a higher response to shorter wavelengths of visible light, our L-cones ("L" is for long wavelengths) have a higher response to longer wavelengths of visible light, and our M-cones ("M" is for medium wavelengths) have a higher response to medium wavelengths of visible light. But all three types of cones have some reaction to a wide range of the visible spectrum. There's a LOT of overlap between the response of our "red" cones (which are actually most sensitive to lime-green light) and our "green" cones (which are actually most sensitive to a slightly yellow shade of green light). There's also some overlap between the "red" and "green" cones and the "blue" cones (which are most sensitive to light that is somewhere between blue and violet).

The sensitivities of the three types of human retinal cones with the response curve for each type of cone drawn in the color that we perceive for each of the wavelengths to which each, respectively, is most sensitive:

enter image description here

We didn't actually nail down the exact sensitivity curves for each type of retinal cone until the 1990s, long after we had discovered that we could create the perception of a wide variety of colors by mixing red, green, and blue light in various proportions (or also by mixing cyan, yellow, and magenta ink in various proportions on reflective surfaces such as paper).

Our camera sensors usually have a color filter array in front of them that mimic the different sensitivities to various wavelengths of light that our retinal cones demonstrate.

enter image description here

As you can see from the illustration, there's less overlap between the "green" and "red" filters than there is between our M (medium wavelength) cones and L (long wavelength) cones, but there's still plenty of overlap. You can also see that there is no singular wavelength of light that can pass through the "green" filter that won't also pass through the "red" and "blue" filters at a lower attenuation.

There's no hard cutoff between the filter colors, such as with a filter used on a scientific instrument that only lets a very narrow band of wavelengths through. It's more like the color filters we use on B&W film. If we use a red filter with B&W film all of the green objects don't disappear or look totally black, as they would with a hard cutoff. Rather, the green objects will look a darker shade of grey than red objects that are similarly bright in the actual scene.

We may call the three colors of the filter array "red", "green", and "blue", but those aren't the actual colors used in the CFAs of our digital cameras, all of the cute little RGB checkerboards plastered all over the internet notwithstanding.

enter image description here

(Note: Our emissive displays, however, do attempt to emit colors very close to the "red", "green", and "blue" used in those 'RGB' checkerboards. Thus the "red", "green", and "blue" filters in our digital cameras' filter arrays are not the same three colors as the "red", "green", and "blue" light emitted by our RGB display devices! Nor are they the "cyan", "magenta", and "yellow" used by our subtractive color printing systems.)

Though the exact shades used varies from one sensor design to the next, they all actually use similar shades of violet-blue, a slightly yellow shade of green, and a shade that is somewhere between yellow and orange. This last color seems to be the one that can vary the most from one sensor design to another.

Below is a microscopic view of a sensor that has had part of the color filter array scrapped off. Notice the colors of the filter array are not what we usually mean when we say "red", "green", and "blue".

enter image description here

In summary, here's the conclusion from this answer to Why do pure colors (red/green/blue) become a mixture of colors when converting raw?

For a camera to create "pure" colors when pointed at an RGB display, one would need a sensor that has a "red" channel that does not respond at all to Green or Blue light emitted by the RGB display, a "green channel" that does not respond at all to Red or Blue light, and a "blue" channel that does not respond at all to Green or Red light. But such a camera would not be able to construct any colors other than pure Red, pure Green, and pure Blue. There would be no way to synthesize other colors using overlapping sensitivities of "red", "green" and "blue" filtered photosites that mimic the way our retinal cones and our brains combine to synthesize colors based on the overlapping sensitivities of our S, L, and M cones.

Related questions/answers here at Photography SE for further reading:

How can a camera pick up and process colors?
Why don't mainstream sensors use CYM filters instead of RGB?
What would happen if a camera used entirely different primary colors?
How does a modern digital camera process to jpg?
Why is it that when the green channel clips, it turns into blue?
Why are Red, Green, and Blue the primary colors of light?

For a rather lengthy explanation of how we use RGB emissive displays to recreate perceptions of various colors in the human eye/brain system, please see this answer to a tangentially related question. The answer draws quite a bit from this color theory tutorial hosted on Memcode.

\$\endgroup\$
1
\$\begingroup\$

There is no negative stimulus that could offset a positive stimulus, and there is no wavelength of light that would only pass through a single Bayer filter color (or stimulate a single eye receptor, particularly since receptors are not actually RGB) since they have quite a lot of overlap in sensitivity curves.

A rainbow has pure monochromatic colors and yet you see more than three different bands of chromaticity.

\$\endgroup\$
1
\$\begingroup\$

I'm pretty sure the only completely correct answer to the precise question asked is "it depends". As Michael C pointed out above, there probably isn't any wavelength of light that produces zero red and zero blue analog output from the sensor, though if I'm reading the chart right, 560-ish nanometers comes pretty close.

But the original question itself asked if the specific 24-bit value 0, 255, 0 can ever be produced. The answer to that question depends on how the camera converts the analog levels from the sensor into a 24-bit color digital value.

The actual sensor is getting an analog signal and amplifying it by some amount that depends on ISO, etc., turning it into probably 12 to 14 bits per colored subpixel, typically. If the final output has only eight bits of color, six bits of precision have to be thrown away in that conversion process.

A camera could decide that the lightest portions of the photo are most important, in which case it could elect to throw away the least significant bits (compressing the shadows), or it could decide that the dark parts are more important and throw away the most significant bits (blowing out the brightest areas), or it could do some of each. Or it could compress the dynamic range in some linear or nonlinear fashion.

The converted image also maps the raw color values into a particular color space, and the choice of color space can further affect what portion of the input values end up being in-gamut for the final 8-bit signal. I'm not entirely sure which gamut would be more likely to make weak red or blue signals go away in the presence of a strong green signal, but I could easily see that making a difference.

And if you're doing lossy image compression, that can further complicate the question, because bright green areas surrounded by black areas could potentially converge towards the average red/blue value during the DCT quantizing phase, if I'm thinking about that correctly.

And heaven help you if you introduce video into the mix, where chroma subsampling effectively gives green greater bandwidth than red or blue, potentially diminishing small red/blue values even further when next to a black pixel. But at this point, I think I'm getting into the weeds. :-)

The point of all this is that for most sensors, the answer to whether you can get 0, 255, 0 depends on not just the sensor, but also all of the conversion that happens afterwards, because most sensors aren't 8-bit sensors.

And the details of that conversion process vary considerably based on the camera and its settings. For example, Canon cameras tend to produce output with a lot more red, while Panasonic cameras tend to produce output with a lot more blue. So a small blue signal might be more likely to disappear on Canon, and a small red signal might be more likely to disappear on a Panasonic camera.

So there probably exists some combination of white balance setting, picture style, ISO setting, target color space, etc. in some camera somewhere in the world in which the tiny red and blue signal at or around 560 nm rounds down to zero in an 8-bit-per-color JPEG image. Could I guess which one? No. Are you likely to encounter that value in practice? I'm not sure. Try it and see. My guess is no, for the same reason that you won't see 0,0,0 nearly as often as you might expect (shot noise, etc.). But you might.

Finally, I would add that in one degenerate case, it is definitely possible to get {0, [maxscale], 0} even in raw data from the sensor itself. If you have a green hot pixel and absolutely no light input at a cool enough temperature for thermal noise to disappear, you'll get that value. That's a seriously degenerate edge case (because it's a defect in the sensor), but it does occur in the real world more often than you might think, or at least all my hot pixels always seem to be green. :-)

\$\endgroup\$
2
  • \$\begingroup\$ "Or it could compress the dynamic range in some linear or nonlinear fashion." Pretty much every digital camera on the planet used for creative/artistic/documentary photography within the scope of this community does it this way. That's essentially what gamma conversion during the raw conversion process is. (Not to be confused with gamma correction during the GPU output stage much later in the image processing pipeline.) \$\endgroup\$
    – Michael C
    Aug 30, 2022 at 3:14
  • \$\begingroup\$ I get more than a few magenta hot pixels (close to [255,0,255]) with one of my older cameras. \$\endgroup\$
    – Michael C
    Aug 30, 2022 at 3:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.