Computer images are made up of grids containing individual image elements - pixels. Each pixel can be one of a finite number of different colours depending on the amount of memory allocated to it.
The simplest computer images are black or white. Each pixel on the screen is represented by a single bit (binary digit) in memory. Since each bit can be either on or off, the pixel can be either black or white - there are no shades of grey.
By allocating more memory to each pixel we can increase the number of colours supported. For example, by allocating 2 bits of memory to each pixel we get 22 colour values, or 4 different colours. Heres a table of common bit depths used by computers.
Bits per pixel (bpp) Bit depth Number of colours 1 21 = 2 2 2 22 = 4 4 4 24 = 16 16 8 28 = 256 256 16 216 = 65 536 Thousands 24 224 = 16 777 216 Millions or true colour
When it comes to representing photographs accurately, the more colours you have at your disposal the better, of course. Banding or posterizing occurs when there arent enough data values to specify a smooth range of colours - a problem when taking photos of the sky, for example.
One would think that millions of colours are sufficient, but theres an additional complication. Colour images are formed by combining varying proportions of three basic additive colours - red, green and blue. So in the case of 24 bit colour there are actually three channels - one red, one green, one blue - of 8 bits each. And 8 bit colour is often insufficient to convey accurately highlight or shadow detail. For that reason some systems support 36 bit colour - 12 bits of colour per channel.
Some systems also support 32-bit colour, but those generally are 24 bit systems (3 channels for red, green and blue) plus a fourth 8-bit channel called the alpha channel used for compositing and so on. The alpha channel does not increase the number of colours available.
cf. alpha channel transparency, banding, black and white, pixel, RGB.
Entry last updated 2002-05-07. Term 124 of 1487.
Previous term: bit.
Next term: bitmap.