Colour depth, also known as bit depth, is either the number of bits used to indicate the colour of a single pixel, in a bitmapped image or video frame buffer, or the number of bits used for each colour component of a single pixel. For consumer video standards, such as High Efficiency Video Coding (H.265), the bit depth specifies the number of bits used for each colour component. When referring to a pixel the concept can be defined as bits per pixel (bpp), which specifies the number of bits used. When referring to a colour component the concept can be defined as bits per channel (bpc), bits per colour (bpc), or bits per sample (bps). Colour depth is only one aspect of colour representation, expressing how finely levels of colour can be expressed (a.k.a. colour precision); the other aspect is how broad a range of colours can be expressed (the gamut). The definition of both colour precision and gamut is accomplished with a colour encoding specification which assigns a digital code value to a location in a colour space.
With relatively low colour depth, the stored value is typically a number representing the index into a colour map or palette. The colours available in the palette itself may be fixed by the hardware or modifiable within the limits of the hardware (for instance, both colour Macintosh systems and VGA-equipped IBM-PCs typically ran at 8-bit due to limited VRAM, but while the best VGA systems only offered an 18-bit (262,144 colour) palette from which colours could be chosen, all colour Macintosh video hardware offered a 24-bit (16 million colour) palette). Modifiable palettes are sometimes referred to as pseudocolour palettes.
- 1-bit colour (21 = 2 colours): monochrome, often black and white, compact Macintoshes, Atari ST.
- 2-bit colour (22 = 4 colours): CGA, gray-scale early NeXTstation, colour Macintoshes, Atari ST.
- 3-bit colour (23 = 8 colours): many early home computers with TV displays, including the ZX Spectrum and BBC Micro
- 4-bit colour (24 = 16 colours): as used by EGA and by the least common denominator VGA standard at higher resolution, colour Macintoshes, Atari ST, Commodore 64, Amstrad CPC.
- 5-bit colour (25 = 32 colours): Original Amiga chipset
- 6-bit colour (26 = 64 colours): Original Amiga chipset
- 8-bit colour (28 = 256 colours): most early colour Unix workstations, VGA at low resolution, Super VGA, colour Macintoshes, Atari TT, AGA, Falcon030.
- 12-bit colour (212 = 4096 colours): some Silicon Graphics systems, Color NeXTstation systems, and Amiga systems in HAM mode.
Old graphics chips, particularly those used in home computers and video game consoles, often feature an additional level of palette mapping in order to increase the maximum number of simultaneously displayed colours. For example, in the ZX Spectrum, the picture is stored in a two-colour format, but these two colours can be separately defined for each rectangular block of 8x8 pixels.
As the number of bits increases, the number of possible colours becomes impractically large for a colour map. So in higher colour depths, the colour value typically directly encodes relative brightnesses of red, green, and blue to specify a colour in the RGB colour model. Other colour spaces can also be used.
A typical computer monitor and video card may offer 8 bits of colour precision (256 output levels) per R/G/B colour channel, for an overall 24-bit colour space (or 32-bit space, with alpha transparency bits, which have little bearing on the colour precision), though earlier standards offered 6 bits per channel (64 levels) or less; the DVD-Video and Blu-ray Disc standards support video with a bit depth of 8-bits per colour YCbCr with 4:2:0 chroma subsampling.
A very limited but true direct colour system, there are 3 bits (8 possible levels) for each of the R and G components, and the two remaining bits in the byte pixel to the B component (four levels), enabling 256 (8 × 8 × 4) different colours. The normal human eye is less sensitive to the blue component than to the red or green (two thirds of the eye's receptors process the longer wavelengths), so it is assigned one bit less than the others. Used, amongst others, in the MSX2 system series of computers in the early to mid 1990s.
Do not confuse with an indexed colour depth of 8bpp (although it can be simulated in such systems by selecting the adequate table).
High colour (15/16-bit)
High colour supports 15/16-bit for three RGB colours. In 16-bit direct colour, there can be 4 bits (16 possible levels) for each of the R, G, and B components, plus optionally 4 bits for alpha (transparency), enabling 4,096 (16 × 16 × 16) different colours with 16 levels of transparency. Or in some systems there can be 5 bits per colour component and 1 bit of alpha (32768 colours, just fully transparent or not); or there can be 5 bits for red, 6 bits for green, and 5 bits for blue, for 65536 colours with no transparency. These colour depths are sometimes used in small devices with a colour display, such as mobile telephones.
Variants with 5 or more bits per colour component are sometimes called high colour, which is sometimes considered sufficient to display photographic images.
Almost all of the least expensive LCD displays (such as typical twisted nematic types) provide 18-bit colour (64 × 64 × 64 = 262,144 combinations) to achieve faster colour transition times, and use either dithering or frame rate control to approximate 24-bit-per-pixel true colour, or throw away 6 bits of colour information entirely. More expensive LCD displays (typically IPS) can display 24-bit or greater colour depth.
True colour (24-bit)
True colour supports 24-bit for three RGB colours. It provides a method of representing and storing graphical-image information (especially in computer processing) in an RGB colour space such that a very large number of colours, shades, and hues can be displayed in an image, such as in high-quality photographic images or complex graphics. Usually, true colour is defined to mean at least 256 shades of red, green, and blue, for a total of at least 16,777,216 colour variations. The human eye can discriminate up to ten million colours.
"True colour" can also refer to an RGB display-mode that does not need a colour look-up table (CLUT).
For each pixel, generally one byte is used for each channel while the fourth byte (if present) is being used either as an alpha channel, data, or simply ignored. Byte order is usually either RGB or BGR. Some systems exist with more than 8 bits per channel, and these are often also referred to as true colour (for example a 48-bit true-colour scanner).
Even with true colour, monochromatic images, which are restricted to 256 levels, owing to their single channel, can sometimes still reveal visible banding artifacts.
Macintosh systems refer to 24-bit colour as "millions of colours".
RGBA colour space, or 32-bit colour, is a variant of true colour in which the additional 8-bit is allocated to transparency and indicates how transparent is the element to which the colour is assigned, when overlaid on other elements.
Deep colour (30/36/48-bit)
Deep colour supports 30/36/48-bit for three RGB colours. Video cards with 10 bits per one colour (30-bit colour RGB), started coming into the market in the late 1990s. An early example was the Radius ThunderPower card for the Macintosh, which included extensions for QuickDraw and Adobe Photoshop plugins to support editing 30-bit images.
Systems using more than 24 bits in a 32-bit pixel for actual colour data exist, but most of them opt for a 30-bit implementation with two bits of padding so that they can have an even 10 bits of colour for each channel, similar to many HiColor systems. 10-bit professional video displays are actually providing 10 bits per colour channel, and use a value of 95 for black and 685 for white; the values from 685 to 1023 are used for "whiter than white" images like glare, specular highlights, and similar details.
While some high-end graphics workstation systems and the accessories marketed toward use with such systems, as from SGI, have always used more than 8 bits per channel, such as 12 or 16 (36-bit or 48-bit colour), such colour depths have only worked their way into the general market more recently.
Images can have 64-bit pixels with 48-bit colour and a 16-bit alpha channel.
As bit depths climb above 8 bits per channel, some systems use the extra bits to store more intensity range than can be displayed all at once, as in high dynamic range imaging (HDRI). Floating point numbers are numbers in excess of 'full' white and black. This allows an image to accurately depict the intensity of the sun and deep shadows in the same colour space for less distortion after intensive editing. Various models describe these ranges, many employing 32-bit accuracy per channel. In 1999 Industrial Light & Magic released the OpenEXR image file format as an open standard that supports 16-bit-per-channel half-precision floating-point numbers.
High Efficiency Video Coding (HEVC) defines the Main 10 profile which allows for a bit depth of 8-bits to 10-bits per sample with 4:2:0 chroma subsampling. 8-bits per sample allows for 256 shades per primary colour (a total of 16.78 million colours) while 10-bits per sample allows for 1024 shades per primary colour (a total of 1.07 billion colours). The Main 10 profile was added at the October 2012 HEVC meeting based on proposal JCTVC-K0109 which proposed that a 10-bit profile be added to HEVC for consumer applications. The proposal stated that this was to allow for improved video quality and to support the Rec. 2020 colour space that will be used by UHDTV. The second version of HEVC has five profiles that allow for a bit depth of 8-bits to 16-bits per sample.
The HDMI 1.3 specification defines bit depths of 30 bits (1.073 billion colours), 36 bits (68.71 billion colours), and 48 bits (281.5 trillion colours). In that regard, the Nvidia Quadro graphics cards manufactured after 2006 support 30-bit deep colour as do some models of the Radeon HD 5900 series such as the HD 5970. The ATI FireGL V7350 graphics card supports 40-bit and 48-bit colour.
The DisplayPort specification also supports colour depths greater than 24 bpp.
Virtually all television displays and computer displays form images by varying the strength of just three primary colours: red, green, and blue. For example, bright yellow is formed by roughly equal red and green contributions, with little or no blue contribution.
Increasing the number of colour primaries can increase the colour gamut that a display can reproduce. Recent technologies such as Texas Instruments's BrilliantColor augment the typical red, green, and blue channels with up to three other primaries: cyan, magenta and yellow. Mitsubishi and Samsung, among others, use this technology in some TV sets to extend the range of displayable colours. The Sharp Aquos line of televisions has introduced Quattron technology, which augments the usual RGB pixel components with a yellow subpixel. See also list of colour palettes.
Analog CRTs, whether colour or monochrome, use continuous voltage signals which do not have a fixed number of intensities. The signals are subject to noise introduced in transmission.