]> granicus.if.org Git - imagemagick/blob - www/compare.html
(no commit message)
[imagemagick] / www / compare.html
1
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5 <head>
6   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />
7   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />
8   <style type="text/css" media="screen,projection"><!--
9     @import url("../www/magick.css");
10   --></style>
11   <link rel="shortcut icon" href="../images/wand.ico"  type="images/vnd.microsoft.icon"/>
12   <title>ImageMagick: Command-line Tools: Compare</title>
13   <meta http-equiv="Content-Language" content="en-US"/>
14   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
15   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
16   <meta name="Generator" content="PHP"/>
17   <meta name="Keywords" content="command-line, tools:, compare, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
18   <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.  ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.  The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
19   <meta name="Rating" content="GENERAL"/>
20   <meta name="Robots" content="INDEX, FOLLOW"/>
21   <meta name="Generator" content="ImageMagick Studio LLC"/>
22   <meta name="Author" content="ImageMagick Studio LLC"/>
23   <meta name="Revisit-after" content="2 DAYS"/>
24   <meta name="Resource-type" content="document"/>
25   <meta name="Copyright" content="Copyright (c) 1999-2009 ImageMagick Studio LLC"/>
26   <meta name="Distribution" content="Global"/>
27 </head>
28
29 <body id="www-imagemagick-org">
30 <div class="titlebar">
31 <a href="../index.html">
32   <img src="../images/script.png" alt="[ImageMagick]"
33   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
34 <a href="http://www.networkredux.com">
35   <img src="../images/networkredux.png" alt="[sponsor]"
36   style="margin: 45px auto; border: 0px; float: left;" /></a>
37 <a href="http://www.imagemagick.org/discourse-server/">
38   <img src="../images/logo.jpg" alt=""
39   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
40 <a href="../index.html">
41   <img src="../images/sprite.jpg" alt=""
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
43 </div>
44
45 <div class="eastbar">
46
47 <div class="menu">
48   <a href="../index.html">About ImageMagick</a>
49 </div>
50 <div class="sep"></div>
51 <div class="menu">
52   <a href="../www/command-line-tools.html">Command-line Tools</a>
53 </div>
54 <div class="sub">
55     <a href="../www/command-line-processing.html">Processing</a>
56 </div>
57 <div class="sub">
58     <a href="../www/command-line-options.html">Options</a>
59 </div>
60 <div class="sub">
61     <a href="http://www.imagemagick.org/Usage/">Usage</a>
62 </div>
63 <div class="menu">
64   <a href="../www/api.html">Program Interfaces</a>
65 </div>
66 <div class="sub">
67     <a href="../www/magick-wand.html">MagickWand</a>
68 </div>
69 <div class="sub">
70     <a href="../www/magick-core.html">MagickCore</a>
71 </div>
72 <div class="sub">
73     <a href="../www/perl-magick.html">PerlMagick</a>
74 </div>
75 <div class="sub">
76     <a href="../Magick++/">Magick++</a>
77 </div>
78 <div class="menu">
79   <a href="../www/architecture.html">Architecture</a>
80 </div>
81 <div class="sep"></div>
82 <div  class="menu">
83    <a href="../www/install-source.html">Install from Source</a>
84 </div>
85 <div class="sub">
86     <a href="../www/install-source.html#unix">Unix</a>
87 </div>
88 <div class="sub">
89     <a href="../www/install-source.html#windows">Windows</a>
90  </div>
91 <div class="menu">
92   <a href="../www/binary-releases.html">Binary Releases</a>
93 </div>
94 <div class="sub">
95     <a href="../www/binary-releases.html#unix">Unix</a>
96 </div>
97 <div class="sub">
98     <a href="../www/binary-releases.html#macosx">Mac OS X</a>
99 </div>
100 <div class="sub">
101     <a href="../www/binary-releases.html#windows">Windows</a>
102 </div>
103 <div class="menu">
104   <a href="../www/resources.html">Resources</a>
105 </div>
106 <div class="sep"></div>
107 <div class="menu">
108   <a href="../www/download.html">Download</a>
109 </div>
110 <div class="sep"></div>
111 <div class="menu">
112   <a href="http://www.imagemagick.org/script/search.php">Search</a>
113 </div>
114 <div class="sep"></div>
115 <div class="menu">
116   <a href="../www/sitemap.html">Site Map</a>
117 </div>
118 <div  class="sub">
119     <a href="../www/links.html">Links</a>
120 </div>
121 <div class="sep"></div>
122 <div  class="menu">
123   <a href="../www/sponsors.html">Sponsors:</a>
124
125 <div class="sponsbox">
126 <div  class="sponsor">
127    <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012001200 allesdruck.de-->
128 </div>
129 <div  class="sponsor">
130   <a href="http://www.blumenversender.com">Blumenversand</a><!-- 200911010120 -->
131 </div>
132 <div  class="sponsor">
133   <a href="http://www.print24.de/">Druckerei</a><!-- 200911010480 -->
134 </div>
135 <div  class="sponsor">
136   <a href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 201002010000 -->
137 </div>
138 <div  class="sponsor">
139   <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201001010120 Buchhorn -->
140 </div>
141 </div>
142 </div>
143
144
145 </div>
146
147 <div class="main">
148
149 <p class="navigation-index">[<a href="#usage">Example Usage</a> &bull; <a href="#options">Option Summary</a>]</p>
150
151 <p>Use the <kbd>compare</kbd> program to mathematically and visually annotate the difference between an image and its reconstruction.  See <a href="../www/command-line-processing.html">Command Line Processing</a> for advice on how to structure your <kbd>compare</kbd> command or see below for example usages of the command.</p>
152
153 <div style="margin: auto;">
154   <h2><a name="usage"></a>Example Usage</h2>
155 </div>
156
157 <p>We list a few examples of the <kbd>compare</kbd> command here to illustrate its usefulness and ease of use. To get started, lets compare an image to one thats been sharpened:</p>
158
159 <p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>convert rose.jpg -sharpen 0x1 reconstruct.jpg</span><span class='crtout'></span><span class="crtprompt"> $magick&gt; </span><span class='crtin'>compare rose.jpg reconstruct.jpg difference.png</span><span class='crtout'></span><span class="crtprompt"> $magick&gt; </span><span class='crtin'>compare -compose src rose.jpg reconstruct.jpg difference.png</span></p>
160 <div class="image">
161 <p>
162   <a href="../images/rose.jpg"><img src="../images/rose.jpg" width="70" height="46" alt="rose" /></a>
163   <a href="../images/reconstruct.jpg"><img src="../images/reconstruct.jpg" width="70" height="46" alt="rose" /></a>
164   <img style="margin:13px 0;" src="../images/right.gif" width="20" height="20" alt="==>" />
165   <a href="../images/difference.png"><img src="../images/difference.png" width="70" height="46" alt="rose" /></a>
166 </p>
167 </div>
168
169 <p>The red areas of the difference image emphasizes (highlight) pixels that are affected by the image sharpening, whereas white de-emphasizes (lowlight) pixels that are untouched by the sharpening process.</p>
170
171 <p>In addition to the visual interpretation of the difference in an image and its reconstruction, we report a mathematical measure of the difference:</p>
172
173 <p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>compare -verbose -metric mae rose.jpg reconstruct.jpg difference.png</span><span class='crtout'>Image: rose.jpg     <br/>
174     Channel distortion: MAE     <br/>
175       red: 2282.91 (0.034835)     <br/>
176       green: 1853.99 (0.0282901)     <br/>
177       blue: 2008.67 (0.0306503)     <br/>
178       all: 1536.39 (0.0234439)     <br/></span></p><p>Or, if you just want the red channel distortion, use this command:</p>
179
180 <p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>compare -channel red -metric PSNR rose.jpg reconstruct.jpg difference.png</span><span class='crtout'>19.63</span></p>
181 <p>Or, if you just want the overall image distortion, use this command:</p>
182
183 <p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>compare -metric PSNR rose.jpg reconstruct.jpg difference.png</span><span class='crtout'>28.31</span></p>
184 <p>If the reconstructed image is a subimage of the image, the compare program returns the best match offset.  In addition, it returns a similarity image such that an exact match location is completely white and if none of the pixels match, black, otherwise some gray level in-between:</p>
185
186 <p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>compare -metric RMSE logo.png wizard.jpg similarity.gif</span><span class='crtout'>85.05 (0.00129778) @ 353,157</span></p>
187 <p>You can find additional examples of using <kbd>compare</kbd> in <a href="http://www-106.ibm.com/developerworks/library/l-graf/?ca=dnt-428">Graphics from the Command Line</a>.  Further discussion is available in <a href="http://www-106.ibm.com/developerworks/library/l-graf2/?ca=dgr-lnxw15GraphicsLine">More Graphics from the Command Line</a> and <a href="http://www.imagemagick.org/Usage/">Examples of ImageMagick Usage</a>.</p>
188
189 <div style="margin: auto;">
190   <h2><a name="options"></a>Option Summary</h2>
191 </div>
192
193 <p>The <kbd>compare</kbd> command recognizes these options.  Click on an option to get more details about how that option works.</p>
194
195 <table class="doc">
196   <tbody>
197   <tr>
198     <th align="left">Option</th>
199     <th align="left">Description</th>
200   </tr>
201
202   <tr>
203     <td valign="top"><a href="../www/command-line-options.html#alpha">-alpha</a></td>
204     <td valign="top">on, activate, off, deactivate, set, opaque, copy",
205 transparent, extract, background, or shape the alpha channel</td>
206   </tr>
207
208   <tr>
209     <td valign="top"><a href="../www/command-line-options.html#authenticate">-authenticate <em class="option">value</em></a></td>
210     <td valign="top">decrypt image with this password</td>
211   </tr>
212
213   <tr>
214     <td valign="top"><a href="../www/command-line-options.html#channel">-channel <em class="option">type</em></a></td>
215     <td valign="top">apply option to select image channels</td>
216   </tr>
217
218   <tr>
219     <td valign="top"><a href="../www/command-line-options.html#colorspace">-colorspace <em class="option">type</em></a></td>
220     <td valign="top">set image colorspace</td>
221   </tr>
222
223   <tr>
224     <td valign="top"><a href="../www/command-line-options.html#compose">-compose <em class="option">operator</em></a></td>
225     <td valign="top">set image composite operator</td>
226   </tr>
227
228   <tr>
229     <td valign="top"><a href="../www/command-line-options.html#decipher">-decipher <em class="option">filename</em></a></td>
230     <td valign="top">convert cipher pixels to plain</td>
231   </tr>
232
233   <tr>
234     <td valign="top"><a href="../www/command-line-options.html#debug">-debug <em class="option">events</em></a></td>
235     <td valign="top">display copious debugging information</td>
236   </tr>
237
238   <tr>
239     <td valign="top"><a href="../www/command-line-options.html#define">-define <em class="option">format:option</em></a></td>
240     <td valign="top">define one or more image format options</td>
241   </tr>
242
243   <tr>
244     <td valign="top"><a href="../www/command-line-options.html#density">-density <em class="option">geometry</em></a></td>
245     <td valign="top">horizontal and vertical density of the image</td>
246   </tr>
247
248   <tr>
249     <td valign="top"><a href="../www/command-line-options.html#depth">-depth <em class="option">value</em></a></td>
250     <td valign="top">image depth</td>
251   </tr>
252
253   <tr>
254     <td valign="top"><a href="../www/command-line-options.html#disimilarity-threshold">-disimilarity-threshold <em class="option">value</em></a></td>
255     <td valign="top">maximum RMSE for (sub)image match (default 0.2)</td>
256   </tr>
257
258   <tr>
259     <td valign="top"><a href="../www/command-line-options.html#encipher">-encipher <em class="option">filename</em></a></td>
260     <td valign="top">convert plain pixels to cipher pixels</td>
261   </tr>
262
263   <tr>
264     <td valign="top"><a href="../www/command-line-options.html#extract">-extract <em class="option">geometry</em></a></td>
265     <td valign="top">extract area from image</td>
266   </tr>
267
268   <tr>
269     <td valign="top"><a href="../www/command-line-options.html#fuzz">-fuzz <em class="option">distance</em></a></td>
270     <td valign="top">colors within this distance are considered equal</td>
271   </tr>
272
273   <tr>
274     <td valign="top"><a href="../www/command-line-options.html#help">-help</a></td>
275     <td valign="top">print program options</td>
276   </tr>
277
278   <tr>
279     <td valign="top"><a href="../www/command-line-options.html#highlight-color">-highlight-color <em class="option">color</em></a></td>
280     <td valign="top">emphasize pixel differences with this color</td>
281   </tr>
282
283   <tr>
284     <td valign="top"><a href="../www/command-line-options.html#identify">-identify</a></td>
285     <td valign="top">identify the format and characteristics of the image</td>
286   </tr>
287
288   <tr>
289     <td valign="top"><a href="../www/command-line-options.html#interlace">-interlace <em class="option">type</em></a></td>
290     <td valign="top">type of image interlacing scheme</td>
291   </tr>
292
293   <tr>
294     <td valign="top"><a href="../www/command-line-options.html#limit">-limit <em class="option">type value</em></a></td>
295     <td valign="top">pixel cache resource limit</td>
296   </tr>
297
298   <tr>
299     <td valign="top"><a href="../www/command-line-options.html#log">-log <em class="option">format</em></a></td>
300     <td valign="top">format of debugging information</td>
301   </tr>
302
303   <tr>
304     <td valign="top"><a href="../www/command-line-options.html#lowlight-color">-lowlight-color <em class="option">color</em></a></td>
305     <td valign="top">de-emphasize pixel differences with this color</td>
306   </tr>
307
308   <tr>
309     <td valign="top"><a href="../www/command-line-options.html#metric">-metric <em class="option">type</em></a></td>
310     <td valign="top">measure differences between images with this metric</td>
311   </tr>
312
313   <tr>
314     <td valign="top"><a href="../www/command-line-options.html#profile">-profile <em class="option">filename</em></a></td>
315     <td valign="top">add, delete, or apply an image profile</td>
316   </tr>
317
318   <tr>
319     <td valign="top"><a href="../www/command-line-options.html#quality">-quality <em class="option">value</em></a></td>
320     <td valign="top">JPEG/MIFF/PNG compression level</td>
321   </tr>
322
323   <tr>
324     <td valign="top"><a href="../www/command-line-options.html#quantize">-quantize <em class="option">colorspace</em></a></td>
325     <td valign="top">reduce image colors in this colorspace</td>
326   </tr>
327
328   <tr>
329     <td valign="top"><a href="../www/command-line-options.html#quiet">-quiet</a></td>
330     <td valign="top">suppress all warning messages</td>
331   </tr>
332
333   <tr>
334     <td valign="top"><a href="../www/command-line-options.html#regard-warnings">-regard-warnings</a></td>
335     <td valign="top">pay attention to warning messages.</td>
336   </tr>
337
338   <tr>
339     <td valign="top"><a href="../www/command-line-options.html#respect-parentheses">-respect-parentheses</a></td>
340     <td valign="top">settings remain in effect until parenthesis boundary.</td>
341   </tr>
342
343   <tr>
344     <td valign="top"><a href="../www/command-line-options.html#sampling-factor">-sampling-factor <em class="option">geometry</em></a></td>
345     <td valign="top">horizontal and vertical sampling factor</td>
346   </tr>
347
348   <tr>
349     <td valign="top"><a href="../www/command-line-options.html#seed">-seed <em class="option">value</em></a></td>
350     <td valign="top">seed a new sequence of pseudo-random numbers</td>
351   </tr>
352
353   <tr>
354     <td valign="top"><a href="../www/command-line-options.html#set">-set <em class="option">attribute value</em></a></td>
355     <td valign="top">set an image attribute</td>
356   </tr>
357
358   <tr>
359     <td valign="top"><a href="../www/command-line-options.html#size">-size <em class="option">geometry</em></a></td>
360     <td valign="top">width and height of image</td>
361   </tr>
362
363   <tr>
364     <td valign="top"><a href="../www/command-line-options.html#transparent-color">-transparent-color <em class="option">color</em></a></td>
365     <td valign="top">transparent color</td>
366   </tr>
367
368   <tr>
369     <td valign="top"><a href="../www/command-line-options.html#verbose">-verbose</a></td>
370     <td valign="top">print detailed information about the image</td>
371   </tr>
372
373   <tr>
374     <td valign="top"><a href="../www/command-line-options.html#version">-version</a></td>
375     <td valign="top">print version information</td>
376   </tr>
377
378   <tr>
379     <td valign="top"><a href="../www/command-line-options.html#virtual-pixel">-virtual-pixel <em class="option">method</em></a></td>
380     <td valign="top">access method for pixels outside the boundaries of the image</td>
381   </tr>
382
383   </tbody>
384 </table>
385
386 </div>
387
388 <div id="linkbar">
389  <!--    <span id="linkbar-west">&nbsp;</span>  -->
390     <span id="linkbar-center">
391       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
392       <a href="../www/mailing-list.html">Mailing Lists</a> &bull;
393     <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
394     </span>
395     <span id="linkbar-east">&nbsp;</span>
396   </div>
397   <div class="footer">
398     <span id="footer-west">&copy; 1999-2009 ImageMagick Studio LLC</span>
399     <span id="footer-east"> <a href="http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
400   </div>
401   <div style="clear: both; margin: 0; width: 100%; "></div>
402 </body>
403 </html>