200 |
- |
1 |
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
|
2 |
<!DOCTYPE quantization-tables [
|
|
|
3 |
<!ELEMENT quantization-tables (table)>
|
|
|
4 |
<!ATTLIST quantization-tables xmlns CDATA #FIXED "">
|
|
|
5 |
<!ELEMENT table (description , levels)>
|
|
|
6 |
<!ATTLIST table xmlns CDATA #FIXED "">
|
|
|
7 |
<!ATTLIST table alias NMTOKEN #REQUIRED>
|
|
|
8 |
<!ATTLIST table slot CDATA #REQUIRED>
|
|
|
9 |
<!ELEMENT description (#PCDATA)>
|
|
|
10 |
<!ATTLIST description xmlns CDATA #FIXED "">
|
|
|
11 |
<!ELEMENT levels (#PCDATA)>
|
|
|
12 |
<!ATTLIST levels xmlns CDATA #FIXED "">
|
|
|
13 |
<!ATTLIST levels divisor CDATA #REQUIRED>
|
|
|
14 |
<!ATTLIST levels height CDATA #REQUIRED>
|
|
|
15 |
<!ATTLIST levels width CDATA #REQUIRED>
|
|
|
16 |
]>
|
|
|
17 |
<!--
|
|
|
18 |
JPEG quantization table created by Dr. Nicolas Robidoux, Senior Research
|
|
|
19 |
Scientist at Phase One (www.phaseone.com) for use with 2x2 Chroma
|
|
|
20 |
subsampling and (IJG-style, hence ImageMagick-style) quality level
|
|
|
21 |
around 75.
|
|
|
22 |
|
|
|
23 |
It is based on the one recommended in
|
|
|
24 |
|
|
|
25 |
Relevance of human vision to JPEG-DCT compression by Stanley A. Klein,
|
|
|
26 |
Amnon D. Silverstein and Thom Carney. In Human Vision, Visual
|
|
|
27 |
Processing and Digital Display III, 1992.
|
|
|
28 |
|
|
|
29 |
for 1 minute per pixel viewing.
|
|
|
30 |
|
|
|
31 |
Specifying only one table in this xml file has two effects when used with
|
|
|
32 |
the ImageMagick option
|
|
|
33 |
|
|
|
34 |
-define jpeg:q-table=PATH/TO/THIS/FILE
|
|
|
35 |
|
|
|
36 |
1) This quantization table is automatically used for all three channels;
|
|
|
37 |
|
|
|
38 |
2) Only one copy is embedded in the JPG file, which saves a few bits
|
|
|
39 |
(only worthwhile for very small thumbnails).
|
|
|
40 |
-->
|
|
|
41 |
<quantization-tables>
|
|
|
42 |
<table slot="0" alias="luma">
|
|
|
43 |
<description>Luma Quantization Table</description>
|
|
|
44 |
<levels width="8" height="8" divisor="1">
|
|
|
45 |
16, 16, 16, 18, 25, 37, 56, 85,
|
|
|
46 |
16, 17, 20, 27, 34, 40, 53, 75,
|
|
|
47 |
16, 20, 24, 31, 43, 62, 91, 135,
|
|
|
48 |
18, 27, 31, 40, 53, 74, 106, 156,
|
|
|
49 |
25, 34, 43, 53, 69, 94, 131, 189,
|
|
|
50 |
37, 40, 62, 74, 94, 124, 169, 238,
|
|
|
51 |
56, 53, 91, 106, 131, 169, 226, 311,
|
|
|
52 |
85, 75, 135, 156, 189, 238, 311, 418
|
|
|
53 |
</levels>
|
|
|
54 |
</table>
|
|
|
55 |
<!--
|
|
|
56 |
If you want to use a different quantization table for Chroma, for example,
|
|
|
57 |
just add:
|
|
|
58 |
|
|
|
59 |
<table slot="1" alias="chroma">
|
|
|
60 |
<description>Chroma Quantization Table</description>
|
|
|
61 |
INSERT 64 POSITIVE INTEGERS HERE, COMMA-SEPARATED
|
|
|
62 |
</levels>
|
|
|
63 |
</table>
|
|
|
64 |
|
|
|
65 |
here (but outside of these comments).
|
|
|
66 |
-->
|
|
|
67 |
</quantization-tables>
|
|
|
68 |
|