]> granicus.if.org Git - imagemagick/blob - www/api/compare.html
(no commit message)
[imagemagick] / www / api / compare.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\r
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">\r
4 <head>\r
5   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />\r
6   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />\r
7   <style type="text/css" media="screen,projection"><!--\r
8     @import url("../../www/magick.css");\r
9   --></style>\r
10   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/vnd.microsoft.icon"/>
11   <title>ImageMagick: MagickCore, C API for ImageMagick: Compare an Image to a Reconstructed Image</title>
12   <meta http-equiv="Content-Language" content="en-US"/>
13   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
14   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
15   <meta name="Generator" content="PHP"/>
16   <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, compare, an, image, to, a, reconstructed, image, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
17   <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."/>
18   <meta name="Rating" content="GENERAL"/>
19   <meta name="Robots" content="INDEX, FOLLOW"/>
20   <meta name="Generator" content="ImageMagick Studio LLC"/>
21   <meta name="Author" content="ImageMagick Studio LLC"/>
22   <meta name="Revisit-after" content="2 DAYS"/>
23   <meta name="Resource-type" content="document"/>
24   <meta name="Copyright" content="Copyright (c) 1999-2009 ImageMagick Studio LLC"/>
25   <meta name="Distribution" content="Global"/>
26 </head>\r
27 \r
28 <body id="www-imagemagick-org">\r
29 <div class="titlebar">\r
30 <a href="../../index.html">\r
31   <img src="../../images/script.png" alt="[ImageMagick]"\r
32   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
33 <a href="http://www.networkredux.com">\r
34   <img src="../../images/networkredux.png" alt="[sponsor]"\r
35   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
36 <a href="http://www.imagemagick.org/discourse-server/">\r
37   <img src="../../images/logo.jpg" alt=""\r
38   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
39 <a href="../../index.html">\r
40   <img src="../../images/sprite.jpg" alt=""\r
41   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
42 </div>\r
43 \r
44 <div class="eastbar">\r
45 \r
46 <div class="menu">
47   <a href="../../index.html">About ImageMagick</a>
48 </div>
49 <div class="sep"></div>\r
50 <div class="menu">
51   <a href="../../www/command-line-tools.html">Command-line Tools</a>
52 </div>
53 <div class="sub">
54     <a href="../../www/command-line-processing.html">Processing</a>
55 </div>
56 <div class="sub">
57     <a href="../../www/command-line-options.html">Options</a>
58 </div>
59 <div class="sub">
60     <a href="http://www.imagemagick.org/Usage/">Usage</a>
61 </div>
62 <div class="menu">
63   <a href="../../www/api.html">Program Interfaces</a>
64 </div>
65 <div class="sub">
66     <a href="../../www/magick-wand.html">MagickWand</a>
67 </div>
68 <div class="sub">
69     <a href="../../www/magick-core.html">MagickCore</a>
70 </div>
71 <div class="sub">
72     <a href="../../www/perl-magick.html">PerlMagick</a>
73 </div>
74 <div class="sub">
75     <a href="../../Magick++/">Magick++</a>
76 </div>
77 <div class="menu">
78   <a href="../../www/architecture.html">Architecture</a>
79 </div>
80 <div class="sep"></div>\r
81 <div  class="menu">
82    <a href="../../www/install-source.html">Install from Source</a>
83 </div>
84 <div class="sub">
85     <a href="../../www/install-source.html#unix">Unix</a>
86 </div>
87 <div class="sub">
88     <a href="../../www/install-source.html#windows">Windows</a>
89  </div>
90 <div class="menu">
91   <a href="../../www/binary-releases.html">Binary Releases</a>
92 </div>
93 <div class="sub">
94     <a href="../../www/binary-releases.html#unix">Unix</a>
95 </div>
96 <div class="sub">
97     <a href="../../www/binary-releases.html#macosx">Mac OS X</a>
98 </div>
99 <div class="sub">
100     <a href="../../www/binary-releases.html#windows">Windows</a>
101 </div>
102 <div class="menu">
103   <a href="../../www/resources.html">Resources</a>
104 </div>
105 <div class="sep"></div>\r
106 <div class="menu">
107   <a href="../../www/download.html">Download</a>
108 </div>
109 <div class="sep"></div>\r
110 <div class="menu">
111   <a href="../http://www.imagemagick.org/script/search.php">Search</a>
112 </div>
113 <div class="sep"></div>\r
114 <div class="menu">
115   <a href="../../www/sitemap.html">Site Map</a>
116 </div>
117 <div  class="sub">
118     <a href="../../www/links.html">Links</a>
119 </div>
120 <div class="sep"></div>\r
121 <div  class="menu">
122   <a href="../../www/sponsors.html">Sponsors:</a>
123
124 <div class="sponsbox">
125 <div  class="sponsor">
126    <a href="http://www.abi-stoff.de/abizeitung/" title="Abibuch">Abizeitung</a><!-- 20090501000200 -->
127 </div>
128 <div  class="sponsor">
129   <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201003010120 Buchhorn -->
130 </div>
131 <div  class="sponsor">
132   <a href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
133 </div>
134 <div  class="sponsor">
135    <a href="http://www.goyax.de">Börse</a><!-- 201001000240 Gewiese digital-finance.de -->
136 </div>
137 <div  class="sponsor">
138    <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012001200 allesdruck.de-->
139 </div>
140 <div  class="sponsor">
141   <a href="http://www.blumenversender.com">Blumenversand</a><!-- 200911010120 -->
142 </div>
143 <div  class="sponsor">
144   <a href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 201002010000 -->
145 </div>
146 </div>
147 </div>
148 \r
149 \r
150 </div>\r
151 \r
152 <div class="main">\r
153 \r
154 <p class="navigation-index">[<a href="#CompareImageChannels">CompareImageChannels</a> &bull; <a href="#GetImageChannelDistortion">GetImageChannelDistortion</a> &bull; <a href="#GetImageChannelDistrortion">GetImageChannelDistrortion</a> &bull; <a href="#IsImagesEqual">IsImagesEqual</a> &bull; <a href="#SimilarityImage">SimilarityImage</a>]</p>
155
156 <h2><a href="http://www.imagemagick.org/api/MagickCore/compare
157 _8c.html" target="source" name="CompareImageChannels">CompareImageChannels</a></h2>
158 <div class="doc-section">
159
160 <p>CompareImageChannels() compares one or more image channels of an image to a reconstructed image and returns the difference image.</p></ol>
161
162 <p>The format of the CompareImageChannels method is:</p>
163
164 <pre class="code">
165   Image *CompareImageChannels(const Image *image,
166     const Image *reconstruct_image,const ChannelType channel,
167     const MetricType metric,double *distortion,ExceptionInfo *exception)
168 </pre>
169
170 <p>A description of each parameter follows:</p></ol>
171
172 <h5>image</h5>
173 <ol><p>the image.</p></ol>
174
175 <h5>reconstruct_image</h5>
176 <ol><p>the reconstruct image.</p></ol>
177
178 <h5>channel</h5>
179 <ol><p>the channel.</p></ol>
180
181 <h5>metric</h5>
182 <ol><p>the metric.</p></ol>
183
184 <h5>distortion</h5>
185 <ol><p>the computed distortion between the images.</p></ol>
186
187 <h5>exception</h5>
188 <ol><p>return any errors or warnings in this structure.</p></ol>
189
190  </div>
191 <h2><a href="http://www.imagemagick.org/api/MagickCore/compare
192 _8c.html" target="source" name="GetImageChannelDistortion">GetImageChannelDistortion</a></h2>
193 <div class="doc-section">
194
195 <p>GetImageChannelDistortion() compares one or more image channels of an image to a reconstructed image and returns the specified distortion metric.</p></ol>
196
197 <p>The format of the CompareImageChannels method is:</p>
198
199 <pre class="code">
200   MagickBooleanType GetImageChannelDistortion(const Image *image,
201     const Image *reconstruct_image,const ChannelType channel,
202     const MetricType metric,double *distortion,ExceptionInfo *exception)
203 </pre>
204
205 <p>A description of each parameter follows:</p></ol>
206
207 <h5>image</h5>
208 <ol><p>the image.</p></ol>
209
210 <h5>reconstruct_image</h5>
211 <ol><p>the reconstruct image.</p></ol>
212
213 <h5>channel</h5>
214 <ol><p>the channel.</p></ol>
215
216 <h5>metric</h5>
217 <ol><p>the metric.</p></ol>
218
219 <h5>distortion</h5>
220 <ol><p>the computed distortion between the images.</p></ol>
221
222 <h5>exception</h5>
223 <ol><p>return any errors or warnings in this structure.</p></ol>
224
225  </div>
226 <h2><a href="http://www.imagemagick.org/api/MagickCore/compare
227 _8c.html" target="source" name="GetImageChannelDistrortion">GetImageChannelDistrortion</a></h2>
228 <div class="doc-section">
229
230 <p>GetImageChannelDistrortion() compares the image channels of an image to a reconstructed image and returns the specified distortion metric for each channel.</p></ol>
231
232 <p>The format of the CompareImageChannels method is:</p>
233
234 <pre class="code">
235   double *GetImageChannelDistortions(const Image *image,
236     const Image *reconstruct_image,const MetricType metric,
237     ExceptionInfo *exception)
238 </pre>
239
240 <p>A description of each parameter follows:</p></ol>
241
242 <h5>image</h5>
243 <ol><p>the image.</p></ol>
244
245 <h5>reconstruct_image</h5>
246 <ol><p>the reconstruct image.</p></ol>
247
248 <h5>metric</h5>
249 <ol><p>the metric.</p></ol>
250
251 <h5>exception</h5>
252 <ol><p>return any errors or warnings in this structure.</p></ol>
253
254  </div>
255 <h2><a href="http://www.imagemagick.org/api/MagickCore/compare
256 _8c.html" target="source" name="IsImagesEqual">IsImagesEqual</a></h2>
257 <div class="doc-section">
258
259 <p>IsImagesEqual() measures the difference between colors at each pixel location of two images.  A value other than 0 means the colors match exactly.  Otherwise an error measure is computed by summing over all pixels in an image the distance squared in RGB space between each image pixel and its corresponding pixel in the reconstruct image.  The error measure is assigned to these image members:</p>
260
261 <pre class="text">
262       o mean_error_per_pixel:  The mean error for any single pixel in
263   the image.
264 </pre>
265
266 <h5>normalized_mean_error</h5>
267 <ol><p>The normalized mean quantization error for any single pixel in the image.  This distance measure is normalized to a range between 0 and 1.  It is independent of the range of red, green, and blue values in the image.</p></ol>
268
269 <h5>normalized_maximum_error</h5>
270 <ol><p>The normalized maximum quantization error for any single pixel in the image.  This distance measure is normalized to a range between 0 and 1.  It is independent of the range of red, green, and blue values in your image.</p></ol>
271
272 <p>A small normalized mean square error, accessed as image->normalized_mean_error, suggests the images are very similar in spatial layout and color.</p></ol>
273
274 <p>The format of the IsImagesEqual method is:</p>
275
276 <pre class="code">
277   MagickBooleanType IsImagesEqual(Image *image,
278     const Image *reconstruct_image)
279 </pre>
280
281 <p>A description of each parameter follows.</p></ol>
282
283 <h5>image</h5>
284 <ol><p>the image.</p></ol>
285
286 <h5>reconstruct_image</h5>
287 <ol><p>the reconstruct image.</p></ol>
288
289  </div>
290 <h2><a href="http://www.imagemagick.org/api/MagickCore/compare
291 _8c.html" target="source" name="SimilarityImage">SimilarityImage</a></h2>
292 <div class="doc-section">
293
294 <p>SimilarityImage() compares the reference image of the image and 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></ol>
295
296 <p>The format of the SimilarityImageImage method is:</p>
297
298 <pre class="code">
299   Image *SimilarityImage(const Image *image,const Image *reference,
300     RectangleInfo *offset,double *similarity,ExceptionInfo *exception)
301 </pre>
302
303 <p>A description of each parameter follows:</p></ol>
304
305 <h5>image</h5>
306 <ol><p>the image.</p></ol>
307
308 <h5>reference</h5>
309 <ol><p>find an area of the image that closely resembles this image.</p></ol>
310
311 <p>o the best match offset of the reference image within the image.</p></ol>
312
313 <h5>similarity</h5>
314 <ol><p>the computed similarity between the images.</p></ol>
315
316 <h5>exception</h5>
317 <ol><p>return any errors or warnings in this structure.</p></ol>
318
319  </div>
320 \r
321 </div>\r
322 \r
323 <div id="linkbar">\r
324  <!--    <span id="linkbar-west">&nbsp;</span>  -->\r
325     <span id="linkbar-center">\r
326       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
327       <a href="../../www/mailing-list.html">Mailing Lists</a> &bull;\r
328     <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
329     </span>\r
330     <span id="linkbar-east">&nbsp;</span>\r
331   </div>\r
332   <div class="footer">\r
333     <span id="footer-west">&copy; 1999-2009 ImageMagick Studio LLC</span>\r
334     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
335   </div>\r
336   <div style="clear: both; margin: 0; width: 100%; "></div>\r
337 </body>\r
338 </html>\r