Image storage Most computer images are stored in
raster graphics formats or compressed variations, including
GIF,
JPEG, and
PNG, which are popular on the
World Wide Web. A
raster data structure is based on a (usually rectangular, square-based)
tessellation of the 2D
plane into cells, each containing a single value. To store the data in a file, the two-dimensional array must be serialized. The most common way to do this is a
row-major format, in which the cells along the first (usually top) row are listed left to right, followed immediately by those of the second row, and so on. In the example at right, the cells of tessellation A are overlaid on the point pattern B resulting in an array C of quadrant counts representing the number of points in each cell. For purposes of visualization a
lookup table has been used to color each of the cells in an image D. Here are the numbers as a serial row-major array: 1 3 0 0 1 12 8 0 1 4 3 3 0 2 0 2 1 7 4 1 5 4 2 2 0 3 1 2 2 2 2 3 0 5 1 9 3 3 3 4 5 0 8 0 2 4 3 2 8 4 3 2 2 7 2 3 2 10 1 5 2 1 3 7 To reconstruct the two-dimensional grid, the file must include a
header section at the beginning that contains at least the number of columns, and the pixel datatype (especially the number of bits or bytes per value) so the reader knows where each value ends to start reading the next one. Headers may also include the number of rows,
georeferencing parameters for geographic data, or other
metadata tags, such as those specified in the
Exif standard.
Compression High-resolution raster grids contain a large number of pixels, and thus consume a large amount of storage. This has led to multiple approaches to compressing the data volume into smaller files. The most common strategy is to look for patterns or trends in the pixel values, then store a parameterized form of the pattern instead of the original data. Common raster compression algorithms include
run-length encoding (RLE),
JPEG,
LZ (the basis for
PNG and
ZIP),
Lempel–Ziv–Welch (LZW) (the basis for
GIF), and others. For example, Run length encoding looks for repeated values in the array, and replaces them with the value and the number of times it appears. Thus, the raster above would be represented as: This technique is very efficient when there are large areas of identical values, such as a line drawing, but in a photograph where pixels are usually slightly different from their neighbors, the RLE file would be up to twice the size of the original. Some compression algorithms, such as RLE and LZW, are
lossless, where the original pixel values can be perfectly regenerated from the compressed data. Other algorithms, such as JPEG, are
lossy, because the parameterized patterns are only an approximation of the original pixel values, so the latter can only be estimated from the compressed data.
Raster–vector conversion Vector images (line work) can be
rasterized (converted into pixels), and raster images
vectorized (raster images converted into vector graphics), by software. In both cases, some information is lost, although certain vectorization operations can recreate salient information, as in the case of
optical character recognition.
Displays Early
mechanical televisions developed in the 1920s employed rasterization principles.
Electronic television based on
cathode-ray tube displays are
raster scanned with horizontal rasters painted left to right, and the raster lines painted top to bottom. Modern flat-panel displays such as LED monitors still use a raster approach. Each on-screen pixel directly corresponds to a small number of bits in memory. The screen is refreshed simply by scanning through pixels and coloring them according to each set of bits. The refresh procedure, being speed critical, is often implemented by dedicated circuitry, often as a part of a
graphics processing unit. Using this approach, the computer contains an area of memory that holds all the data that are to be displayed. The central processor writes data into this region of memory and the video controller collects them from there. The bits of data stored in this block of memory are related to the eventual pattern of pixels that will be used to construct an image on the display. An early scanned display with raster computer graphics was invented in the late 1960s by A. Michael Noll at
Bell Labs, but its patent application filed February 5, 1970, was abandoned at the Supreme Court in 1977 over the issue of the patentability of computer software.
Printing During the 1970s and 1980s,
pen plotters, using
vector graphics, were common for creating precise drawings, especially on large format paper. However, since then almost all printers create the printed image as a raster grid, including both
laser and
inkjet printers. When the source information is vector, rendering specifications and software such as
PostScript are used to create the raster image.
Three-dimensional rasters Three-dimensional
voxel raster graphics are employed in video games and are also used in medical imaging such as
MRI scanners.
Geographic information systems Geographic phenomena are commonly represented in a raster format in
GIS. The raster grid is
georeferenced, so that each pixel (commonly called a
cell in GIS because the "picture" part of "pixel" is not relevant) represents a square region of geographic space. The value of each cell then represents some measurable (
qualitative or quantitative) property of that region, typically conceptualized as a
field. Examples of fields commonly represented in rasters include: temperature, population density, soil moisture, land cover, surface elevation, etc. Two sampling models are used to derive cell values from the field: in a
lattice, the value is measured at the center point of each cell; in a
grid, the value is a summary (usually a mean or mode) of the value over the entire cell. ==Resolution==