Digital Media Dr. Jim Rowan ITEC 2110 Color COLOR • Is a mess • It’s a subjective sensation PRODUCED in the brain • Color differs for light and paint/ink • Printing is different than viewing a monitor – a monitor EMITS light of a specific wavelength (or a combination of them) – print is like paint... it absorbs all the colors EXCEPT the color that you see which is reflected by the paint – a ball that is painted yellow and is viewed in a room that is lit by a light that is completely blue will look black... Why? Light • Is electromagnetic radiation (just like microwaves and radio signals... just different wavelengths) • Visible light has a wavelength that is between 400 and 700 nanoMeters • A nanoMeter is 1 billionth of a meter... – HINT: It’s a very short wave http://en.wikipedia.org /wiki/Electromagnetic_ spectrum http://en.wikipedia.org/wiki/Electromagnetic_spectrum Light • Visible light is a mix of different wavelengths of light at different intensities • The sun has one Spectral Power Distribution, fluorescent light another, a camera flash another and an LED light another Color • To reproduce it electronically or manipulate it digitally we need a way to model color. • i.e. we need a way to convert a subjective sensation to a reproducible physical phenomenon A model of color: roughly based on the eye • Rods(night vision, B&W) • Cones (3 kinds, one for red, one for blue and one for green) • RGB – tri-stimulus theory: the theory that states any color can be completely specified with just 3 values RGB • Color is specified by 3 numbers – one for red – one for green – one for blue • Color is displayed on a monitor by 3 different colored things – one for red – one for green – one for blue The 3 colored things • Phosphor for a CRT and Flat panel displays (aka SED or surface conductor electron emitter display) • Pockets of fluorescent gas for Plasma • a bunch of other stuff too... • All of them have the ability to adjust the intensity of each of the three things resulting in the display of most of the visible colors http://en.wikipedia.org/wiki/Computer_display RGB... Good but not all visible colors • In truth, the 3 different cones in the eye are cross connected in very complex ways • This keeps the model, which assumes (wrongly) that each is strictly sensing R or G or B, from being able to completely reproduce the visual stimulus RGB • Pure red – (100%, 0%, 0%) – (255,0,0) • Pure green – (0%, 100%, ,0%) – (0,255,0) • Pure blue – (0%, 0%, 100%) – (0,0,255) Mixing the Color of Light • Is an additive process – monitors emit light • Is not like mixing paint which is a subtractive process – paint absorbs light How many colors? • Different cultures have different ideas about when 2 colors differ • People individually differ in their ability to distinguish between two colors • With the range of 0-255 (which can be encoded in one byte) for each of the Red, Green and Blue there are 16.8 million possibilities Color Depth • Usually expressed in bits • One byte for each of the RGB => 24 bits • Back to binary... – – – – 1 bit => 21 => 2 choices 2 bits => 22 => 4 choices 4 bits => 24 => 16 choices 8 bits => 28 => 256 choices Color and Grey • RGB (0, 0, 0) is black • RGB (255, 255, 255) is white • When R = G = B you get grey – RGB (25, 25, 25) is dark grey – RGB (200, 200, 200) is light grey Color at 16 bit Color Depth • RGB at 24 bits – 24 bits => 3 bytes – 3 bytes, 3 colors => one byte per color • RGB at 16 bits – – – – – 16 bits => 2 bytes 2 bytes, 3 colors... 16/3 = 5 bits with one left over... HMMMmmmm... What to do? 16 bit color • 16/3 = 5 bits with one left over... • What to do with the extra bit? • Go back to human perception – Humans do not discriminate Blue as well as they do Green vision – Evolutionary roots? • Lots of blue light in daylight • Lots of green to discriminate • Assign 5 bits to R & B, and 6 bits to G – allows twice as many greens as blues Why more than 16.8 million? • 24 bits is plenty for human vision... • 30 and 48 bits are WAY more than needed for human vision... • If you scan at 48 bit color there is a lot of information buried in the image than we can distinguish BUT... • This information can be used by the program to make extremely fine distinctions during image manipulation (edge finding for example) • (Failed rocket engine example) Why worry about color depth? • One reason: file size • Any reduction in color depth has a 3-fold effect on the final image size • A 100X100 RGB image – at 24 bit color => 30,000 bytes uncompressed – at 16 bit color => 20,000 bytes uncompressed – 1 byte => 1/3 reduction of size Why is too big bad? • It wastes valuable computer resources – hard drive disk space – vram space – data transit time • Sure, computers are really fast and big now BUT... • Consider Video... internet main memory monitor VRAM hard drive Indexed color • We’ve seen this before... the color table • Used by a number of file formats – tiff, png, bmp, gif, • Use a table (color palete) to store colors • Use a map of logical colors to reference the color map Indexed color vs. 8 bit color • 8 bit color defines only 256 colors • Indexed color allows 256 different colors • What’s the difference? – 8 bit defines 256 colors---whether they are used or not – Indexed color allows 256 different colors that exist in the image Indexed color vs. 8 bit color • 8 bit direct color... an example – suppose... • • • • Red gets 3 bits ==> 000, 001, 010, 011... 111 ==> 8 values Green gets 3 bits ==> 000, 001, 010, 011... 111 ==> 8 values Blue gets 2 bits ==> 00, 01, 10, 11 ==> 4 values total different colors ==> 8 x 8 x 4 = 256 different colors • But images in nature have a narrower range of colors... a palete • With indirect color you can store 256 different colors that are actually found in the image – results in an image that more closely mimics the image Indexed color • Even though it allows for a closer-toreal-life image, some colors must be modified • How to do this? – use the nearest color – optical mixing... dithering Nearest color • Loss of some detail • Distorted color • Generates artifacts – Banding or posterization Optical mixing: Dithering • Dithering uses a group of colors to approximate the desired color • Works well for high resolution images • Works poorly for low resolution images • See figure 6.8, p169 for dithering effects Questions?