Revision as of 13:07, 1 December 2009 editFull-date unlinking bot (talk | contribs)324,022 editsm Unlinking full-dates. Details here. Codes: AMreg(×1)← Previous edit | Revision as of 23:39, 29 January 2010 edit undoNbarth (talk | contribs)Autopatrolled, Extended confirmed users, Pending changes reviewers, Rollbackers35,153 edits refNext edit → | ||
Line 21: | Line 21: | ||
Adam7 uses seven passes and operates in both dimensions, compared to only four passes in the vertical dimension used by ]. This means the whole image can be perceived much more quickly in the early passes, particularly if interpolation algorithms such as ] are used.<ref></ref> | Adam7 uses seven passes and operates in both dimensions, compared to only four passes in the vertical dimension used by ]. This means the whole image can be perceived much more quickly in the early passes, particularly if interpolation algorithms such as ] are used.<ref></ref> | ||
Adam7 is named after Adam M. Costello, who suggested the method on January 30, 1995, based on this five-pass scheme that had earlier been proposed by Lee Daniel Crocker: | Adam7 is named after Adam M. Costello, who suggested the method on January 30, 1995, based on this five-pass scheme that had earlier been proposed by ]:<ref>{{cite mailing list |url= |title= Re: CRC |date= 30 Jan 1995 |accessdate=2010-01-29 |mailinglist= png-list |last= Costello |first= Adam M. |quote= By the way, what would folks think of a Lee-style 7-pass scheme? Just | ||
the same thing, but starting with a 1/64 image? That would make the | |||
initial large pixels 8x8. |archiveurl= http://pmt.sourceforge.net/mailing-lists/png-list/png-list.199501.gz |archivedate= ?|ref= }}</ref> | |||
<center> | <center> | ||
Line 33: | Line 35: | ||
</pre> | </pre> | ||
|}</center> | |}</center> | ||
Alternative speculative proposals at the time included square spiral interlacing and using ]s, but these were rejected as over-complicated. | |||
== Related algorithms == | == Related algorithms == |
Revision as of 23:39, 29 January 2010
Adam7 is the interlacing algorithm specified for use in PNG images. An interlaced PNG image is broken into seven subimages, which are defined by replicating this 8×8 pattern across the full image.
1 6 4 6 2 6 4 6 7 7 7 7 7 7 7 7 5 6 5 6 5 6 5 6 7 7 7 7 7 7 7 7 3 6 4 6 3 6 4 6 7 7 7 7 7 7 7 7 5 6 5 6 5 6 5 6 7 7 7 7 7 7 7 7 |
The subimages are then stored in the PNG file in numerical order.
Adam7 uses seven passes and operates in both dimensions, compared to only four passes in the vertical dimension used by GIF. This means the whole image can be perceived much more quickly in the early passes, particularly if interpolation algorithms such as bicubic interpolation are used.
Adam7 is named after Adam M. Costello, who suggested the method on January 30, 1995, based on this five-pass scheme that had earlier been proposed by Lee Daniel Crocker:
1 4 2 4 5 5 5 5 3 4 3 4 5 5 5 5 |
Alternative speculative proposals at the time included square spiral interlacing and using Peano curves, but these were rejected as over-complicated.
Related algorithms
Adam7 is a multiscale model of the data, similar to a discrete wavelet transform with Haar wavelets, though it starts from an 8×8 block, and downsamples the image, rather than decimating (low-pass filtering, then downsampling). It thus offers worse frequency behavior, showing artifacts (pixelation) at the early stages, in return for simpler implementation.
References
- Introduction to PNG - nuwen.net
- Costello, Adam M. (30 Jan 1995). "Re: CRC". png-list (Mailing list).
By the way, what would folks think of a Lee-style 7-pass scheme? Just the same thing, but starting with a 1/64 image? That would make the initial large pixels 8x8.
{{cite mailing list}}
:|access-date=
requires|url=
(help);|archive-url=
requires|url=
(help); Check date values in:|archivedate=
(help); Missing or empty|url=
(help); Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help); line feed character in|quote=
at position 71 (help)