1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>compare - Compare an Image to a Reconstructed Image</title>
<link rel="stylesheet" type="text/css" href="../magick.css">
</head>
<body marginheight="1" marginwidth="1" topmargin="1" leftmargin="1">
<a name="top"></a>
<table border="0" cellpadding="0" cellspacing="0" summary="Masthead" width="100%">
<tbody>
<tr>
<td bgcolor="#003399" width="25%" height="118" background="../../images/background.gif"><a href="http://www.imagemagick.org/"><img src="../../images/script.gif" width="278" height="118" border="0" alt="" /></a></td>
<td bgcolor="#003399" width="60%" height="118" background="../../images/background.gif"><a href="http://www.networkeleven.com/direct.php?magick_all"><img src="../../images/promote.png" border="0" width="186" height="52" vspace="29" alt="Powered by NetworkEleven" /></a></td>
<td bgcolor="#003399" width="114" height="118" align="right"><img src="../../images/sprite.png" width="114" height="118" alt="" /></td>
<td bgcolor="#003399" width="114" height="118" align="right"><a href="http://www.imagemagick.net"><img src="../../images/logo.png" width="114" height="118" border="0" alt="ImageMagick logo" /></a></td>
</tr></tbody></table>
<table align="left" border="0" cellpadding="2" cellspacing="2" summary="Navigation buttons" width="20%">
<tr>
<td>
<form target="_self" action="../../index.html"><input type="submit" title="ImageMagick Home" value=" Home" style="background-color: #1947A3; background-image:url('../../../images/background.gif'); color:#fbc713; font-weight:bold"></form></td>
<td>
<form target="_self" action="../../www/apis.html"><input type="submit" title="ImageMagick API" value=" API " style="background-color: #1947A3; background-image:url('../../../images/background.gif'); color:#fbc713; font-weight:bold"></form></td>
<td>
<form target="_self" action="../../www/archives.html"><input type="submit" title="ImageMagick Download" value="Download" style="background-color: #1947A3; background-image:url('../../../images/background.gif'); color:#fbc713; font-weight:bold"></form></td></tr></table>
<div align="right" style="margin-top:3px; padding-right:4px">
<form action="http://studio.imagemagick.org/Sage/scripts/Sage.cgi"><input type="TEXT" name="query" size="32" maxlength="255"> <input type="SUBMIT" name="sa" value="Search" style="background-color: #1947A3; background-image:url('../../../images/background.gif'); bgcolor:#003399; color:#fbc713; font-weight:bold"></form></div>
<table align="left" border="0" cellpadding="10" cellspacing="0" style="margin-top:-17px" width="100%">
<tr>
<td>
<P><a name="__index__"></a></P>
<!-- INDEX BEGIN -->
<ul>
<li><a href="#name">NAME</a></li>
<li><a href="#synopsis">SYNOPSIS</a></li>
<li><a href="#function_descriptions">FUNCTION DESCRIPTIONS</a></li>
<ul>
<li><a href="#compareimagechannels">CompareImageChannels</a></li>
<li><a href="#compareimagecommand">CompareImageCommand</a></li>
<li><a href="#isimagesequal">IsImagesEqual</a></li>
</ul>
</ul>
<!-- INDEX END -->
<hr />
<P>
</P>
<h1><a name="name">NAME</a></h1>
<P>compare - Compare an Image to a Reconstructed Image</P>
<P>
</P>
<hr />
<h1><a name="synopsis">SYNOPSIS</a></h1>
<P>Image * <strong>CompareImageChannels</strong>( const Image *image, const Image *reconstruct_image, const ChannelType channel, const MetricType metric, double *distortion, ExceptionInfo *exception );</P>
<P>MagickBooleanType <strong>CompareImageCommand</strong>( ImageInfo *image_info, int argc, char ** argv, char ** metadata, ExceptionInfo *exception );</P>
<P>MagickBooleanType <strong>IsImagesEqual</strong>( Image *image, const Image *reconstruct_image );</P>
<P>
</P>
<hr />
<h1><a name="function_descriptions">FUNCTION DESCRIPTIONS</a></h1>
<P>
</P>
<h2><a name="compareimagechannels">CompareImageChannels</a></h2>
<blockquote>CompareImageChannels() compares one or more image channels and returns the specified distortion metric. </blockquote><P>The format of the CompareImageChannels method is:</P>
<blockquote><A HREF="types.html#Image">Image</A> *CompareImageChannels ( const <A HREF="types.html#Image">Image</A> *image, const <A HREF="types.html#Image">Image</A> *reconstruct_image, const <A HREF="types.html#ChannelType">ChannelType</A> channel, const MetricType metric, double *distortion, <A HREF="types.html#ExceptionInfo">ExceptionInfo</A> *exception ); </blockquote><P>A description of each parameter follows:</P>
<dl>
<dt><strong><a name="item_o_image_3a">image:</a></strong><br />
</dt>
<DD>
The image.
</dd>
<P></P>
<dt><strong><a name="item_o_reconstruct_image_3a">reconstruct_image:</a></strong><br />
</dt>
<DD>
The reconstruct image.
</dd>
<P></P>
<dt><strong><a name="item_o_channel_3a">channel:</a></strong><br />
</dt>
<DD>
The channel.
</dd>
<P></P>
<dt><strong><a name="item_o_metric_3a">metric:</a></strong><br />
</dt>
<DD>
The metric.
</dd>
<P></P>
<dt><strong><a name="item_o_distortion_3a">distortion:</a></strong><br />
</dt>
<DD>
The computed distortion between the images.
</dd>
<P></P>
<dt><strong><a name="item_o_exception_3a">exception:</a></strong><br />
</dt>
<DD>
Return any errors or warnings in this structure.
</dd>
<P></P></dl>
<P>
</P>
<h2><a name="compareimagecommand">CompareImageCommand</a></h2>
<blockquote>CompareImageCommand() compares two images and returns the difference between them as a distortion metric and as a new image visually annotating their differences. </blockquote><P>The format of the CompareImageCommand method is:</P>
<blockquote>MagickBooleanType CompareImageCommand ( <A HREF="types.html#ImageInfo">ImageInfo</A> *image_info, int argc, char **argv, char **metadata, <A HREF="types.html#ExceptionInfo">ExceptionInfo</A> *exception ); </blockquote><P>A description of each parameter follows:</P>
<dl>
<dt><strong><a name="item_o_image_info_3a">image_info:</a></strong><br />
</dt>
<DD>
The image info.
</dd>
<P></P>
<dt><strong><a name="item_o_argc_3a">argc:</a></strong><br />
</dt>
<DD>
The number of elements in the argument vector.
</dd>
<P></P>
<dt><strong><a name="item_o_argv_3a">argv:</a></strong><br />
</dt>
<DD>
A text array containing the command line arguments.
</dd>
<P></P>
<dt><strong><a name="item_o_metadata_3a">metadata:</a></strong><br />
</dt>
<DD>
any metadata is returned here.
</dd>
<P></P>
<dt><strong>exception:</strong><br />
</dt>
<DD>
Return any errors or warnings in this structure.
</dd>
<P></P></dl>
<P>
</P>
<h2><a name="isimagesequal">IsImagesEqual</a></h2>
<blockquote>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: </blockquote><dl>
<dt><strong><a name="item_o_mean_error_per_pixel_3a">mean_error_per_pixel:</a></strong><br />
</dt>
<DD>
The mean error for any single pixel in the image.
</dd>
<P></P>
<dt><strong><a name="item_o_normalized_mean_error_3a">normalized_mean_error:</a></strong><br />
</dt>
<DD>
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.
</dd>
<P></P>
<dt><strong><a name="item_o_normalized_maximum_error_3a">normalized_maximum_error:</a></strong><br />
</dt>
<DD>
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.
</dd>
<P></P></dl>
<P>A small normalized mean square error, accessed as image->normalized_mean_error, suggests the images are very similiar in spatial layout and color.</P>
<P>The format of the IsImagesEqual method is:</P>
<blockquote>MagickBooleanType IsImagesEqual ( <A HREF="types.html#Image">Image</A> *image, const <A HREF="types.html#Image">Image</A> *reconstruct_image ); </blockquote><P>A description of each parameter follows.</P>
<dl>
<dt><strong>image:</strong><br />
</dt>
<DD>
The image.
</dd>
<P></P>
<dt><strong>reconstruct_image:</strong><br />
</dt>
<DD>
The reconstruct image.
</dd>
</dl>
<HR>
<a href="#top"><img src="../../../images/top.gif" border=0 width=42 height=42 align="right" alt="Top of page"></a>
<form action="http://studio.imagemagick.org/magick/" style="margin-top:5px">
<input type="submit" title="Help!" value="Help!" style="background-image:url('../../../images/background.gif'); color:#fbc713; font-weight:bold">
<small>"Image manipulation software that works like magick"</small>
</form></td>
</tr></table>
</body>
</html>
|