[sci.electronics] Perceptual Color

awpaeth@watcgl.waterloo.edu (Alan Wm Paeth) (10/01/88)

In article <870@dlhpedg.co.uk> cl@datlog.co.uk (Charles Lambert) writes:
>
>I guess that a yellow LED is really a red and a green LED in the same capsule:
>correct?

Nope, most yellow LEDs give a fairly spectrally pure yellow; this is not the
same as the yellow formed by mixing red and green -- but they "look" the same.

Now to really complicate matters: there *ARE* "yellow" LEDs in the sense that
you can buy one of those "two LEDS, wired back to back, one red and one green,
potted in a clear compound" and then drive them with alternating polarity at a
high perceptual rate, and you'll get the "blended" version of yellow, which
looks like (has the same CIE chromaticity coordinates/provides the same
"detector response" to the eye as) the spectral yellow LED.


A BRIEF OVERVIEW OF "COLOR"

You (I'm assuming that you not color blind) have three cone types which give
rise to color vision. One is sensitive to short wavelengths, one to medium and
one to long, but their coverages overlap somewhat [the audiophiles might wish
to think of a 3-way speaker with crossovers :-)]. Spectral red light (eg, from
a red LED or HeNe laser) stimulates mainly your long wavelength (low frequency)
cone. This gives a psycophysical response/feeling we call "red". Ditto for a
spectral green light and your mid-range cone (I refuse to call the other two
cones "tweeters" and "woofers"). Now spectral yellow light happens to trigger
both the long and mid-range cones simultaneously; we call this sensation
"yellow". If you mix spectral red and green light in just the right amount
so that the cones generate the same signals, then you have an identical cone
response and therefore identical sensation -- the color is indistinguisable.
When the color sensation is the same but the spectral response of the light is
not, the colors are called "metamers".

To prove that the spectral curves are clearly not the same, hold a narrow-
bandpass "spectral green" transmission filter before the yellow LED and you
get black -- all light is blocked. On the other hand, this same filter will
pass the green light of the metameric yellow from the combined source (such as
the yellow formed on a TV when both the green and red phosphors are excited).

In practice one can compute the three values which represent the cone response
to any light source (to within a linear change of basis). These are called
"chromaticity coordinates". The tristimulus tables used to calculate these
were published by the CIE in 1931 and form the basis of modern colorimetry.

The deeper truth is much more elusive: this explanation is simplistic in that
it doesn't take the observer's accomodation into account -- a bright yellow
shirt under sunset illumination reflects orange light, if you were to pick a
close match to a spectral color. However, the human perceptual system (brain)
nicely hides this fact from us, and we conclude "nice yellow shirt; wow, nice
sunset, too". Color film lacks such brains and this helps explain the need for
"Tungsten-indoor" vs "outdoor-daylight" balanced color films. Similarly, most
chocolate bars are quite "orange", but at illumination levels that make them
appear "brown". This can be demonstrated scientifically by using a colorimeter
or spectroradiometer. Less scientific but a lot more fun: view the chocolate
bar from within a darkened room using spot illumination and it will be orange.
Then make *sure* to eat the sample before it melts all over the floor.

Another perceptual shortcut here is that the red and green cones in the LED
example are NOT being stimulated simultaneously -- the colors are presented
alternately at fast enough perceptual rate to stop flicker and fuse the colors,
giving rise to "yellow". This property cannot be treated as self-evident: as a
non-intuitive counterexample, a flashing b/w light can take on the appearance
of color.

Clearly our understanding of color is incomplete: we cannot model all the
processes which take place in the brain, let alone fit a unified theory to
all the optical illusions and other "anomalous" perceptual phenomena that
have been discovered, but we're getting there.

    /Alan Paeth
    Computer Graphics Laboratory
    University of Waterloo

cook@stout.ucar.edu (Forrest Cook) (10/03/88)

In article <6101@watcgl.waterloo.edu> awpaeth@watcgl.waterloo.edu (Alan Wm Paeth) writes:
>a flashing b/w light can take on the appearance of color.

This reminds me of one of those toys that consists of a spinning shutter over
a mask: you spin the shutter, close your eyes, stare towards a bright light
source such as the sun, and VOILA: colored stripes.
Some kind of aliasing I imagine.

So, if you take a fast response white light source and modulate its duty
cycle and frequency, will you fake the eyes into seeing colors?
Incandescent's probably switch too slow, that leaves such things as
Xenon strobes and LEDs.

White LEDs are probably possible: red, green and BLUE LEDs could be
put in close proximity and ~mixed~ with a diffuser to yield what would be
percieved as white light.  The three LED currents would probably need tweaking
to get true white.

[Adrift in a sea of ideas.]

u-jmolse%sunset.utah.edu@utah-gr.UUCP (John M. Olsen) (10/04/88)

In article <790@ncar.ucar.edu> cook@stout.UCAR.EDU (Forrest Cook) writes:
>awpaeth@watcgl.waterloo.edu (Alan Wm Paeth) writes:
>>a flashing b/w light can take on the appearance of color.

>...
>White LEDs are probably possible: red, green and BLUE LEDs could be
>put in close proximity and ~mixed~ with a diffuser to yield what would be
>percieved as white light.  The three LED currents would probably need tweaking
>to get true white.

Interesting.  Use RGB LED's to generate white light with which to trick the
eye into seeing color.  There seems to be an unnecessary step in there if
you want to generate color with LED's.  (Sorry, but .... well, no I'm not.)
:^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) 

/\/\ /|  |    /||| /\|       | John M. Olsen, 1547 Jamestown Drive  /\/\
\/\/ \|()|\|\_ |||.\/|/)@|\_ | Salt Lake City, UT  84121-2051       \/\/
/\/\  |  u-jmolse%ug@cs.utah.edu or ...!utah-cs!utah-ug!u-jmolse    /\/\
 "Really stupid people use comptuer programs every day."  Chuck McManis

cook@stout.ucar.edu (Forrest Cook) (10/04/88)

In article <2903@utah-gr.UUCP> u-jmolse%sunset.utah.edu.UUCP@utah-gr.UUCP (John M. Olsen) writes:
>Interesting.  Use RGB LED's to generate white light with which to trick the
>eye into seeing color.  There seems to be an unnecessary step in there if
>you want to generate color with LED's.  (Sorry, but .... well, no I'm not.)
>:^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) :^) 

Sorry, I did not miss the obvious, I just forgot to mention it.

Consider the possible advantage of this approach:
ALL DIGITAL (I.E. Pulse Width/Frequency) color modulation.
No messy DACs or analog amps needed.

While we're on the subject, would someone out there in LED manufacturing land
please hurry up and make a simple color pixel consisting of RGB LEDs in one
diffuse package?  I could find quite a few uses for such a device! :-)
An imbedded controller would be nice, but I can wait for that.

Forrest Cook

{husc6 | rutgers | ames | gatech}!ncar!stout!cook
{uunet | ucbvax | allegra | cbosgd}!nbires!stout!cook

henry@utzoo.uucp (Henry Spencer) (10/04/88)

In article <790@ncar.ucar.edu> cook@stout.UCAR.EDU (Forrest Cook) writes:
>>a flashing b/w light can take on the appearance of color.
>
>So, if you take a fast response white light source and modulate its duty
>cycle and frequency, will you fake the eyes into seeing colors?

It helps if you can modulate not only the duty cycle but the repetition
pattern, since my recollection of this stuff is that simple periodic
flashes are not quite right for the job.  But yes, you can fake colors
this way.  It's not spectacular, and I think it doesn't work on everyone,
but it does work.  Last I heard, it's not clear exactly why.
-- 
The meek can have the Earth;    |    Henry Spencer at U of Toronto Zoology
the rest of us have other plans.|uunet!attcan!utzoo!henry henry@zoo.toronto.edu

sleat@ardent.UUCP (Michael Sleator) (10/05/88)

In article <801@ncar.ucar.edu> cook@stout.UCAR.EDU (Forrest Cook) writes:
>Consider the possible advantage of this approach:
>ALL DIGITAL (I.E. Pulse Width/Frequency) color modulation.
>No messy DACs or analog amps needed.

I've lost the trail leading up to this, but the discussion was about
apparent color due to flashing white light.  If that's what the above
is suggesting, then I think there's a problem.  I believe that the
phenomenon of perceived color from flashing white light does not give
anything like the range of color that you can get with mixed primaries.
Also, I think it's very dependent on the particular observer.  In sum,
I don't think it's really a viable general purpose technique.

There is another interpretation, though, which leads me to the following
question:

	Suppose you have three LED's, red, green, and blue; the light
	from all three being combined by some diffuser.  If you control
	the current through each one (in an analog fashion), you can control
	the brightness of each, and hence the resulting perceived color.

	Now, for a single LED, you can also control the apparent brightness
	by varying the duty cycle (the pulse width modulation referred to
	above).  However, it's not obvious to me that varying the apparent
	brightness of each LED in this manner would result in the same
	control of color as would the analog method.

	Let's say that the outputs of the three LEDs are normalized such
	that when all three are on, you see white.  If you want to make
	a color that's comprised of, say, 33% of full red, 66% full green,
	and 100% full blue, you would in effect be producing three flashes
	of equal length: white, followed by cyan, followed by blue.  (Note
	that this sequence assumes the drives are synchronized and all
	turn on at the same time.)  So the question is, what will this
	look like?  What happens if the drives are phased differently,
	or asynchronous?

Here's what I *think* will happen:  If you do this at a high enough
frequency (a couple of MHz oughtta be safe :-) ), it will probably work
pretty well.  But as you decrease the frequency, things will start to get
weird somewhere, possibly well above the nominal flicker fusion frequency
for a constant-spectrum source.

Either control technique will give you reasonably precise control over the
energy output of the LED (integrated over some reasonable time period).
However, almost nothing in nature is linear.  The human eye is decidedly not.
I have the impression that a pulsed source (e.g., multiplexed LED displays)
appears brighter, at the same average power, than a DC source.  This
suggests that at the very least a different linearity correction function
might have to be applied to the raw color values for the PWM vs. the analog
technique.

Much of this is just speculation (bad pun) on my part.  Does anyone out
there have any other thoughts?


>While we're on the subject, would someone out there in LED manufacturing land
>please hurry up and make a simple color pixel consisting of RGB LEDs in one
>diffuse package?  I could find quite a few uses for such a device! :-)
>An imbedded controller would be nice, but I can wait for that.

I could use a few hundred thousand of such devices (or even a few thousand,
actually).  I can't think what I'd do with just one. :-) :-)  The interesting
question is just what would you have the imbedded controller do?  (I can
see it now:  PixelPlanes with a trio of LED's per processor!!!  Quick!
Someone call Henry Fuchs!  (you could make some pretty amazing billboards))


Michael Sleator
Ardent Computer
...!{decwrl | hplabs | ubvax | uunet}!ardent!sleat

tso@rocky2.rockefeller.edu (Daniels Tso(Wiesel)) (10/05/88)

In article <6101@watcgl.waterloo.edu> awpaeth@watcgl.waterloo.edu (Alan Wm Paeth) writes:
>A BRIEF OVERVIEW OF "COLOR"
>
>You (I'm assuming that you not color blind) have three cone types which give
>rise to color vision. One is sensitive to short wavelengths, one to medium and
>one to long, but their coverages overlap somewhat.

	Actually the overlap is very significant.

>Spectral red light (eg, from
>a red LED or HeNe laser) stimulates mainly your long wavelength (low frequency)
>cone. This gives a psycophysical response/feeling we call "red". Ditto for a
>spectral green light and your mid-range cone (I refuse to call the other two
>cones "tweeters" and "woofers"). Now spectral yellow light happens to trigger
>both the long and mid-range cones simultaneously; we call this sensation
>"yellow". If you mix spectral red and green light in just the right amount
>so that the cones generate the same signals, then you have an identical cone
>response and therefore identical sensation -- the color is indistinguisable.

	This discussion neglects color opponency. Basically, (perhaps) since
the overlap of the cone spectral sensivitites is large, the "brain" (actually
the process begins in the retina), encodes wavelength (as opposed to color)
by the DIFFERENTIAL responses of cones. The two color opponency systems are
red vs. green and blue vs. yellow. Thus cells in the retina are excited by
input from the red cones and inhibited by input from the green cones, or
vice versa, and are a part of the red vs. green system. Similarly, another
class of cells are excited by the blue cones and inhibited by a combination
of input from the red and green cones. (This neglects the contribution of the
rods to color).
	Thus, wavelength sensitivity is only relative. We only know yellow
by what isn't blue and what is red by what isn't green. That is why, except
for unusual circumstances, it doesn't generally make sense to talk about a
"reddish-green" color, or a "bluish-yellow" color, although a reddish
yellow color seems perfectly reasonable.

>The deeper truth is much more elusive: this explanation is simplistic in that
>it doesn't take the observer's accomodation into account -- a bright yellow
>shirt under sunset illumination reflects orange light, if you were to pick a
>close match to a spectral color. However, the human perceptual system (brain)
>nicely hides this fact from us, and we conclude "nice yellow shirt; wow, nice
>sunset, too". Color film lacks such brains and this helps explain the need for
>"Tungsten-indoor" vs "outdoor-daylight" balanced color films.

	Indeed, this is the major difference between wavelength sensitivity
and color perception. This properties you refer to is termed "color constancy".

>Clearly our understanding of color is incomplete: we cannot model all the
>processes which take place in the brain, let alone fit a unified theory to
>all the optical illusions and other "anomalous" perceptual phenomena that
>have been discovered, but we're getting there.

	Maybe we are... For a real "eye-opener" (teehee), try hunting down an
example of the McCollough effect. It is similar in idea to the standard color
afterimages, but with the surprising feature that this afterimags can last
for days, weeks or months!

u-jmolse%sunset.utah.edu@utah-gr.UUCP (John M. Olsen) (10/06/88)

tso@rocky2.rockefeller.edu (Daniels Tso(Wiesel)) writes:
>awpaeth@watcgl.waterloo.edu (Alan Wm Paeth) writes:
>>A BRIEF OVERVIEW OF "COLOR"
>>
>For a real "eye-opener" (teehee), try hunting down an
>example of the McCollough effect. It is similar in idea to the standard color
>afterimages, but with the surprising feature that this afterimags can last
>for days, weeks or months!

This could lead to a new crib-sheet test cheating method!  Just burn the
key into your retina, then just copy down the afterimage answers. :^)

Back to a more comp.graphics related topic, I seem to recall reading about 
a new manufacturing technique that will be used to make large color LED
screens.  Current models are about 5 inches, but the new ones can be much
larger, and could be used for way-high-res screens.  I can't remember which
tech mag I read it in, though.  Maybe EDN?  I don't recall it mentioning
whether they were analog or pulse driven.

/\/\ /|  |    /||| /\|       | John M. Olsen, 1547 Jamestown Drive  /\/\
\/\/ \|()|\|\_ |||.\/|/)@|\_ | Salt Lake City, UT  84121-2051       \/\/
/\/\  |  u-jmolse%ug@cs.utah.edu or ...!utah-cs!utah-ug!u-jmolse    /\/\
 "Really stupid people use computer programs every day."  Chuck McManis

jbm@eos.UUCP (Jeffrey Mulligan) (10/06/88)

From article <619@ardent.UUCP>, by sleat@ardent.UUCP (Michael Sleator):
 
> I've lost the trail leading up to this, but the discussion was about
> apparent color due to flashing white light.  If that's what the above
> is suggesting, then I think there's a problem.  I believe that the
> phenomenon of perceived color from flashing white light does not give
> anything like the range of color that you can get with mixed primaries.

Damn straight.  Let's drop it.

> 	Suppose you have three LED's, red, green, and blue; the light
> 	from all three being combined by some diffuser.  If you control
> 	the current through each one (in an analog fashion), you can control
> 	the brightness of each, and hence the resulting perceived color.
 
> 	Now, for a single LED, you can also control the apparent brightness
> 	by varying the duty cycle (the pulse width modulation referred to
> 	above).  However, it's not obvious to me that varying the apparent
> 	brightness of each LED in this manner would result in the same
> 	control of color as would the analog method.

Above the critical frequency for flicker fusion (CFF), all that
matters is total light flux.  CFF for humans is around 60 Hz;
this is why movies, which are exposed at 24 frames/sec (an adequate
sampling rate for the perception of smooth motion) are projected
through a chopping shutter which causes each frame to be flashed
three times, upping the flicker rate to 72 Hz.

> Here's what I *think* will happen:  If you do this at a high enough
> frequency (a couple of MHz oughtta be safe :-) ), it will probably work
> pretty well.  But as you decrease the frequency, things will start to get
> weird somewhere, possibly well above the nominal flicker fusion frequency
> for a constant-spectrum source.
 
> Either control technique will give you reasonably precise control over the
> energy output of the LED (integrated over some reasonable time period).
> However, almost nothing in nature is linear.  The human eye is decidedly not.

The eye is an excellent linear integrator for durations less than 16 ms.

PWM techniques were used by John Krauskopf in the laser colorimeter
he built at Bell Labs (he moved to at NYU shortly after the divestiture).
Same idea:  three lasers, red (HeNe), green and blue (both argon),
controlled digitally by acousto-optic modulators.  As I remember,
pulse widths were controlled by dedicated 12 bit counters; I forget whether
the controller had it's own memory or fetched data over a DMA interface.
The clock for the counters probably ran at a few MHz, making the pulse rate
about 1 KHz.  This pulse rate is more than an order of magnitude larger
than needed to eliminate flicker, but it does allow you to make nice
smooth sinusoidal waveforms up to 60 Hz, as long as you can afford the
memory.

-- 

	Jeff Mulligan (jbm@aurora.arc.nasa.gov)
	NASA/Ames Research Ctr., Mail Stop 239-3, Moffet Field CA, 94035
	(415) 694-6290

hwt@leibniz.UUCP (Henry Troup) (10/06/88)

I remember, long years ago (over 20, awright), seeing 'colour' on a B&W
TV.  One of the standard optical illusions is a black and white rotating
disk that shows visual brown and green.  Fascinatingly enough, this came
over very well on a British (25-frame? 400 line (the old British system))
TV.
-- 
Henry Troup
Bell Northern Research - not their opinions, however

utgpu!bnr-vpa!bnr-di!leibniz!hwt

ellswort@unc.cs.unc.edu (David Ellsworth) (10/07/88)

In article <619@ardent.UUCP>, sleat@ardent.UUCP (Michael Sleator) writes about
using trios of red, green and blue LEDS to make a big screen:
> 
> I could use a few hundred thousand of such devices (or even a few thousand,
> actually).  I can't think what I'd do with just one. :-) :-)  The interesting
> question is just what would you have the imbedded controller do?  (I can
> see it now:  PixelPlanes with a trio of LED's per processor!!!  Quick!
> Someone call Henry Fuchs!  (you could make some pretty amazing billboards))
> 

Sorry, but someone in the Pixel-Planes group already came up with
something like this. I remember reading a grant proposal a while back
saying that we should deposit the Pixel-Planes processors on the back
of a color LCD screen, with the processors directly controlling the
liquid crystal. It is an interesting idea: a color graphics display
that does all the pixel processing. All you add is a floating point
engine to generate linear coefficients from polygons, and you have a
graphics system.

The process of depositing VLSI circuits on the back of a glass sheet
was (and still is) too far off in the future for serious consideration,
so that idea was dropped. The billboard idea could be done today if you
could find someone to pay for it.

David Ellsworth
Pixel-Planes Project at the University of North Carolina
ellswort@unc.cs.unc.edu

julian@riacs.edu (Julian E Gomez) (10/12/88)

In article <175@leibniz.UUCP>, hwt@leibniz.UUCP (Henry Troup) writes:
> I remember, long years ago (over 20, awright), seeing 'colour' on a B&W
> TV.  One of the standard optical illusions is a black and white rotating
> disk that shows visual brown and green.  Fascinatingly enough, this came
> over very well on a British (25-frame? 400 line (the old British system)) TV.

What you saw is known as a Fechner wheel.

Bay Area SIGGRAPH had a meeting on color recently; this was one of the
items discussed.  Email me if you want more info.

-- 
"Have you ever wondered if taxation without representation was cheaper?"

	Julian "a tribble took it" Gomez
	julian@riacs.edu

jbm@eos.UUCP (Jeffrey Mulligan) (10/12/88)

From article <987@hydra.riacs.edu>, by julian@riacs.edu (Julian E Gomez):
> In article <175@leibniz.UUCP>, hwt@leibniz.UUCP (Henry Troup) writes:
>> I remember, long years ago (over 20, awright), seeing 'colour' on a B&W
>> TV.  One of the standard optical illusions is a black and white rotating
>> disk that shows visual brown and green.  Fascinatingly enough, this came
>> over very well on a British (25-frame? 400 line (the old British system)) TV.
 
> What you saw is known as a Fechner wheel.
 
 Is this another name for "Benham's top?"  This one is a disk
 half white and half black, with some black tangential arcs on the
 white half.  One point that is illustrated by this particular
 demonstration is that the (weak) hues evoked depend on the spatial
 context, not just to temporal pattern at the "colored" area.

-- 

	Jeff Mulligan (jbm@aurora.arc.nasa.gov)
	NASA/Ames Research Ctr., Mail Stop 239-3, Moffet Field CA, 94035
	(415) 694-6290

phd@speech1.cs.cmu.edu (Paul Dietz) (10/20/88)

In article <1692@eos.UUCP> jbm@eos.UUCP (Jeffrey Mulligan) writes:
>From article <987@hydra.riacs.edu>, by julian@riacs.edu (Julian E Gomez):
>> What you saw is known as a Fechner wheel.
> Is this another name for "Benham's top?"  This one is a disk
> half white and half black, with some black tangential arcs on the
> white half.  One point that is illustrated by this particular
> demonstration is that the (weak) hues evoked depend on the spatial
> context, not just to temporal pattern at the "colored" area.

Actually, some people refer to it as the Fechner-Benham Subjective
Color Phenomena. For you folks anxious to try programing this
on your favorite graphics machine 6 Hz is about the magic number
you need, and make the black strips very thin. I did this on a Mac
several years ago with good results. The hardest part is making
sure that you're synced with the vertical retrace. Contrary to
popular belief you do not need a moving edge! I used just three
frames: one all black, one with two thin black lines in the top
half, and the last with two thin black lines in the bottom half.

Paul H. Dietz                                        ____          ____
Dept. of Electrical and Computer Engineering        / oo \        <_<\\\
Carnegie Mellon University                        /|  \/  |\        \\ \\
--------------------------------------------     | | (  ) | |       | ||\\
"If God had meant for penguins to fly,             -->--<--        / / |\\\  /
he would have given them wings."            _________^__^_________/ / / \\\\-