8-bit color

Last updated

8-bit color graphics are a method of storing image information in a computer's memory or in an image file, so that each pixel is represented by 8 bits (1 byte). The maximum number of colors that can be displayed at any one time is 256 per pixel or 28. [1]

Contents

Color quantization

8-bit color, with three bits of red, three bits of green, and two bits of blue. 256colour.png
8-bit color, with three bits of red, three bits of green, and two bits of blue.

In order to turn a true color 24-bit image into an 8-bit image, the image must go through a process called color quantization. Color quantization is the process of creating a color map for a less color dense image from a more dense image. [2]

The simplest form of quantization is to simply assign 3 bits to red, 3 bits to green and 2 bits to blue, as the human eye is less sensitive to blue light. This creates a so called 3-3-2 8-bit color image, arranged like on the following table:

Bit    7  6  5  4  3  2  1  0 Data   R  R  R  G  G  G  B  B

This process is sub optimal. There could be different groupings of colors that make evenly spreading the colors out inefficient and likely to misrepresent the actual image. An alternative approach is to use a palette, with each of the 256 possible indexes pointing towards a larger color space (ex: 256 colors chosen from 4096). Because the color map doesn't need to have every color in it and just needs to accurately represent the more color dense image, an arbitrary color can be assigned to each of the 256 available color indexes on the map.

Popular approaches for creating these maps (also known as palettes) include the popularity algorithm which chooses the 256 most common colors and creates a map from them. The more accurate median cut algorithm resorts and divides colors to find the median of different color groups resulting in a more accurate final color map. [3]

Usage

Because of the low amount of memory and resultant higher speeds of 8-bit color images, 8-bit color was a common ground among computer graphics development until more memory and higher CPU speeds became readily available to consumers. 8-bit color was used in many different applications including: [4] [ failed verification ]

The VGA standard for graphical interface used a redefinable 256 color (8-bit) color palette, although these were selected from an 18-bit (6-bit per RGB channel, 262,144 colors) gamut. [5] [6] [7] [8] Developed in 1987 by IBM, the VGA interface supported a maximum resolution of 640x480 pixels. Due to this legacy, some image types such as GIF and TIFF use an 8-bit color palette system to store data.

Even though it is now outdated for most consumer applications, 8-bit color encoding can still be useful in imaging systems with limited data bandwidth or memory capacity. For example, both Mars Exploration Rovers used an 8-bit grayscale format for navigation imaging. [9]

Issues

Due to the nature of the 8-bit system, most images have different color maps. Since an 8-bit color display can not display two images with different color maps at the same time, it is usually impossible to display two different 8-bit images on the same such display at the same time. In practice, in order to avoid this problem, most images do not use the full range of 256 colors. Another problem comes when doing image processing: whenever two images with different color maps are added to each other, the resulting image has to have a new color map created, meaning another quantization operation has to occur, making the resulting image an imperfect version of the expected result. [1]

8-bit color today

Currently, most graphics hardware runs in 24-bit truecolor or 32-bit truecolor (24-bit truecolor and an 8-bit alpha channel). However, some remote desktop software (Virtual Network Computing, Remote Desktop Protocol) can switch to 8-bit color to conserve bandwidth. With the comparative low cost and high speeds of modern computers, some image editing is even done in a raw format with anywhere from 12 to 14 bits from each of the camera's image sensor pixels in order to avoid image quality reduction while editing. [10]

See also

Related Research Articles

PCX, standing for PiCture eXchange, is an image file format developed by the now-defunct ZSoft Corporation of Marietta, Georgia, United States. It was the native file format for PC Paintbrush and became one of the first widely accepted DOS imaging standards, although it has since been succeeded by more sophisticated image formats, such as BMP, JPEG, and PNG. PCX files commonly store palette-indexed images ranging from 2 or 4 colors to 16 and 256 colors, although the format has been extended to record true-color (24-bit) images as well.

<span class="mw-page-title-main">RGB color model</span> Color model based on red, green, and blue

The RGB color model is an additive color model in which the red, green and blue primary colors of light are added together in various ways to reproduce a broad array of colors. The name of the model comes from the initials of the three additive primary colors, red, green, and blue.

<span class="mw-page-title-main">Video Graphics Array</span> Computer display standard and resolution

Video Graphics Array (VGA) is a video display controller and accompanying de facto graphics standard, first introduced with the IBM PS/2 line of computers in 1987, which became ubiquitous in the IBM PC compatible industry within three years. The term can now refer to the computer display standard, the 15-pin D-subminiature VGA connector, or the 640 × 480 resolution characteristic of the VGA hardware.

In computer graphics, planar is the method of arranging pixel data into several bitplanes of RAM. Each bit in a bitplane is related to one pixel on the screen. Unlike packed, high color, or true color graphics, the whole dataset for an individual pixel is not in one specific location in RAM, but spread across the bitplanes that make up the display. Planar arrangement determines how pixel data is laid out in memory, not how the data for a pixel is interpreted; pixel data in a planar arrangement could encode either indexed or direct color.

<span class="mw-page-title-main">Enhanced Graphics Adapter</span> IBM PC graphic adapter and display standard

The Enhanced Graphics Adapter (EGA) is an IBM PC graphics adapter and de facto computer display standard from 1984 that superseded the CGA standard introduced with the original IBM PC, and was itself superseded by the VGA standard in 1987. In addition to the original EGA card manufactured by IBM, many compatible third-party cards were manufactured, and EGA graphics modes continued to be supported by VGA and later standards.

Color depth or colour depth, also known as bit depth, is either the number of bits used to indicate the color of a single pixel, or the number of bits used for each color component of a single pixel. When referring to a pixel, the concept can be defined as bits per pixel (bpp). When referring to a color component, the concept can be defined as bits per component, bits per channel, bits per color, and also bits per pixel component, bits per color channel or bits per sample (bps). Modern standards tend to use bits per component, but historical lower-depth systems used bits per pixel more often.

The Multi-Color Graphics Array or MCGA is a video subsystem built into the motherboard of the IBM PS/2 Model 30, introduced on September 2, 1986, and Model 25, introduced later on August 11, 1987; no standalone MCGA cards were ever made.

<span class="mw-page-title-main">Atari Falcon</span> 1992 personal computer

The Atari Falcon030, released in 1992, is the final personal computer from Atari Corporation. A high-end model of the Atari ST line, the machine is based on a Motorola 68030 CPU and a Motorola 56001 digital signal processor, which distinguishes it from most other microcomputers of the era. It includes a new VIDEL programmable graphics system which greatly improves graphics capabilities.

<span class="mw-page-title-main">Hold-And-Modify</span> Display mode used in Commodore Amiga computers

Hold-And-Modify, usually abbreviated as HAM, is a display mode of the Commodore Amiga computer. It uses a highly unusual technique to express the color of pixels, allowing many more colors to appear on screen than would otherwise be possible. HAM mode was commonly used to display digitized photographs or video frames, bitmap art and occasionally animation. At the time of the Amiga's launch in 1985, this near-photorealistic display was unprecedented for a home computer and it was widely used to demonstrate the Amiga's graphical capability. However, HAM has significant technical limitations which prevent it from being used as a general purpose display mode.

<span class="mw-page-title-main">Professional Graphics Controller</span> Graphics adapter and display standard for early IBM PCs

Professional Graphics Controller is a graphics card manufactured by IBM for PCs. It consists of three interconnected PCBs, and contains its own processor and memory. The PGC was, at the time of its release, the most advanced graphics card for the IBM XT and aimed for tasks such as CAD.

<span class="mw-page-title-main">Palette (computing)</span> In computer graphics, a finite set of available colors

In computer graphics, a palette is the set of available colors from which an image can be made. In some systems, the palette is fixed by the hardware design, and in others it is dynamic, typically implemented via a color lookup table (CLUT), a correspondence table in which selected colors from a certain color space's color reproduction range are assigned an index, by which they can be referenced. By referencing the colors via an index, which takes less information than needed to describe the actual colors in the color space, this technique aims to reduce data usage, including processing, transfer bandwidth, RAM usage, and storage. Images in which colors are indicated by references to a CLUT are called indexed color images.

In computing, indexed color is a technique to manage digital images' colors in a limited fashion, in order to save computer memory and file storage, while speeding up display refresh and file transfers. It is a form of vector quantization compression.

<span class="mw-page-title-main">Color quantization</span>

In computer graphics, color quantization or color image quantization is quantization applied to color spaces; it is a process that reduces the number of distinct colors used in an image, usually with the intention that the new image should be as visually similar as possible to the original image. Computer algorithms to perform color quantization on bitmaps have been studied since the 1970s. Color quantization is critical for displaying images with many colors on devices that can only display a limited number of colors, usually due to memory limitations, and enables efficient compression of certain types of images.

Composite artifact colors is a designation commonly used to address several graphic modes of some 1970s and 1980s home computers. With some machines, when connected to an NTSC TV or monitor over composite video outputs, the video signal encoding allowed for extra colors to be displayed, by manipulating the pixel position on screen, not being limited by each machine's hardware color palette.

References

  1. 1 2 Fisher, Robert; Perkins, Simon; Ashley, Walker; Wolfart, Erik. "8-bit Color Images". Hypermedia Image Processing Reference. University of Edinburgh. Retrieved 14 November 2019.
  2. Fisher, Robert; Perkins, Simon; Walker, Ashley; Wolfart, Erik. "Color Quantization". Hypermedia Image Processing Reference. University of Edinburgh. Retrieved 14 November 2019.
  3. Spring, Kenneth R.; Russ, John C. "Color Reduction and Image Dithering". Molecular Expressions Optical Microscopy Primer Digital Image Processing. Michael W. Davidson and The Florida State University. Archived from the original on 2 December 2020. Retrieved 14 November 2019.
  4. "When Atari Ruled the World". PCMAG. Retrieved 2021-09-17.
  5. US5574478A,Bril, Vlad&Pett, Boyd G.,"VGA color system for personal computers",issued 1996-11-12
  6. "Reading and writing 18-bit RGB VGA Palette (pal) files with C#". The Cyotek Blog. 2017-12-26. Retrieved 2023-03-27.
  7. "VGA/SVGA Video Programming--Color Regsters". www.osdever.net. Retrieved 2023-03-27.
  8. "VGA Palette Conversion \ VOGONS". www.vogons.org. Retrieved 2023-03-27.
  9. A. Kiely; M. Klimesh. The ICER Progressive Wavelet Image Compressor (PDF) (Report).
  10. Patterson, Steve. "The Benefits Of Working With 16-Bit Images In Photoshop". Photoshop Essentials. Photoshop Essentials. Retrieved 14 November 2019.