progressive coding definition graphics, file format, algorithm
(Or "interlacing") An aspect of a graphics
storage format or transmission algorithm
that treats bitmap image
data non-sequentially in such a way that later data adds progressively greater resolution
to an already full-size image. This contrasts with sequential coding
Progressive coding is useful when an image is being sent across a slow communications channel, such as the Internet
, as the low-resolution image may be sufficient to allow the user to decide not to wait for the rest of the file to be received.
In an interlaced GIF89
image, the pixels
in a row are stored sequentially but the rows are stored in interlaced order, e.g. 0, 8, 4, 12, 2, 6, 8, 10, 14, 1, 3, 5, 7, 9, 11, 13, 15. Each vertical scan adds rows in the middle of the gaps left by the previous one. PNG
interlaces both horizontally and vertically using the "Adam7
" method, a seven pass process named after Adam M. Costello.
Interlacing is also supported by other formats. JPEG
supports a functionally similar concept known as Progressive JPEG
. [How does the algorithm differ?] JBIG
uses progressive coding
See also progressive/sequential coding
["Progressive Bi-level Image Compression, Revision 4.1", ISO/IEC JTC1/SC2/WG9, CD 11544, 1991-09-16].