Home | History | Annotate | Download | only in api
      1 
      2 
      3 
      4 
      5 <!DOCTYPE html>
      6 <html lang="en">
      7 <head>
      8   <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
      9     <title>ImageMagick: MagickCore, C API for ImageMagick: Add an Effect</title>
     10   <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
     11   <meta name="application-name" content="ImageMagick"/>
     12   <meta name="description" content="ImageMagick is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, JPEG-2000, GIF, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bzier curves."/>
     13   <meta name="application-url" content="http://www.imagemagick.org"/>
     14   <meta name="generator" content="PHP"/>
     15   <meta name="keywords" content="magickcore, c, api, for, imagemagick:, add, an, effect, ImageMagick, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert"/>
     16   <meta name="rating" content="GENERAL"/>
     17   <meta name="robots" content="INDEX, FOLLOW"/>
     18   <meta name="generator" content="ImageMagick Studio LLC"/>
     19   <meta name="author" content="ImageMagick Studio LLC"/>
     20   <meta name="revisit-after" content="2 DAYS"/>
     21   <meta name="resource-type" content="document"/>
     22   <meta name="copyright" content="Copyright (c) 1999-2015 ImageMagick Studio LLC"/>
     23   <meta name="distribution" content="Global"/>
     24   <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1"/>
     25   <link rel="icon" href="../image/wand.png"/>
     26   <link rel="shortcut icon" href="../image/wand.ico"/>
     27   <link rel="stylesheet" href="../css/magick.php"/>
     28 </head>
     29 <body>
     30 <div class="main">
     31 <div class="magick-masthead">
     32   <div class="container">
     33     <script async="async" src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>    <ins class="adsbygoogle"
     34          style="display:block"
     35          data-ad-client="ca-pub-3129977114552745"
     36          data-ad-slot="6345125851"
     37          data-ad-format="auto"></ins>
     38     <script>
     39       (adsbygoogle = window.adsbygoogle || []).push({});
     40     </script>
     41     <nav class="magick-nav">
     42       <a class="magick-nav-item " href="../index.php">Home</a>
     43       <a class="magick-nav-item " href="../script/binary-releases.php">Download</a>
     44       <a class="magick-nav-item " href="../script/command-line-tools.php">Tools</a>
     45       <a class="magick-nav-item " href="../script/command-line-processing.php">Command-line</a>
     46       <a class="magick-nav-item " href="../script/resources.php">Resources</a>
     47       <a class="magick-nav-item " href="../script/api.php">Develop</a>
     48       <a class="magick-nav-item " href="../script/search.php">Search</a>
     49       <a class="magick-nav-item pull-right" href="http://www.imagemagick.org/discourse-server/">Community</a>
     50     </nav>
     51   </div>
     52 </div>
     53 <div class="container">
     54 <div class="magick-header">
     55 <p class="text-center"><a href="effect.php#AdaptiveBlurImage">AdaptiveBlurImage</a> &bull; <a href="effect.php#AdaptiveSharpenImage">AdaptiveSharpenImage</a> &bull; <a href="effect.php#BlurImage">BlurImage</a> &bull; <a href="effect.php#ConvolveImage">ConvolveImage</a> &bull; <a href="effect.php#DespeckleImage">DespeckleImage</a> &bull; <a href="effect.php#EdgeImage">EdgeImage</a> &bull; <a href="effect.php#EmbossImage">EmbossImage</a> &bull; <a href="effect.php#GaussianBlurImage">GaussianBlurImage</a> &bull; <a href="effect.php#KuwaharaImage">KuwaharaImage</a> &bull; <a href="effect.php#LocalContrastImage">LocalContrastImage</a> &bull; <a href="effect.php#MotionBlurImage">MotionBlurImage</a> &bull; <a href="effect.php#PreviewImage">PreviewImage</a> &bull; <a href="effect.php#RotationalBlurImage">RotationalBlurImage</a> &bull; <a href="effect.php#SelectiveBlurImage">SelectiveBlurImage</a> &bull; <a href="effect.php#ShadeImage">ShadeImage</a> &bull; <a href="effect.php#SharpenImage">SharpenImage</a> &bull; <a href="effect.php#SpreadImage">SpreadImage</a> &bull; <a href="effect.php#UnsharpMaskImage">UnsharpMaskImage</a></p>
     56 
     57 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
     58 
     59 <p>AdaptiveBlurImage() adaptively blurs the image by blurring less intensely near image edges and more intensely far from edges.  We blur the image with a Gaussian operator of the given radius and standard deviation (sigma).  For reasonable results, radius should be larger than sigma.  Use a radius of 0 and AdaptiveBlurImage() selects a suitable radius for you.</p>
     60 
     61 <p>The format of the AdaptiveBlurImage method is:</p>
     62 
     63 <pre class="text">
     64 Image *AdaptiveBlurImage(const Image *image,const double radius,
     65   const double sigma,ExceptionInfo *exception)
     66 </pre>
     67 
     68 <p>A description of each parameter follows:</p>
     69 
     70 <dd>
     71 </dd>
     72 
     73 <dd> </dd>
     74 <dl class="dl-horizontal">
     75 <dt>image</dt>
     76 <dd>the image. </dd>
     77 
     78 <dd> </dd>
     79 <dt>radius</dt>
     80 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
     81 
     82 <dd> </dd>
     83 <dt>sigma</dt>
     84 <dd>the standard deviation of the Laplacian, in pixels. </dd>
     85 
     86 <dd> </dd>
     87 <dt>exception</dt>
     88 <dd>return any errors or warnings in this structure. </dd>
     89 
     90 <dd>  </dd>
     91 </dl>
     92 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
     93 
     94 <p>AdaptiveSharpenImage() adaptively sharpens the image by sharpening more intensely near image edges and less intensely far from edges. We sharpen the image with a Gaussian operator of the given radius and standard deviation (sigma).  For reasonable results, radius should be larger than sigma.  Use a radius of 0 and AdaptiveSharpenImage() selects a suitable radius for you.</p>
     95 
     96 <p>The format of the AdaptiveSharpenImage method is:</p>
     97 
     98 <pre class="text">
     99 Image *AdaptiveSharpenImage(const Image *image,const double radius,
    100   const double sigma,ExceptionInfo *exception)
    101 </pre>
    102 
    103 <p>A description of each parameter follows:</p>
    104 
    105 <dd>
    106 </dd>
    107 
    108 <dd> </dd>
    109 <dl class="dl-horizontal">
    110 <dt>image</dt>
    111 <dd>the image. </dd>
    112 
    113 <dd> </dd>
    114 <dt>radius</dt>
    115 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    116 
    117 <dd> </dd>
    118 <dt>sigma</dt>
    119 <dd>the standard deviation of the Laplacian, in pixels. </dd>
    120 
    121 <dd> </dd>
    122 <dt>exception</dt>
    123 <dd>return any errors or warnings in this structure. </dd>
    124 
    125 <dd>  </dd>
    126 </dl>
    127 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="BlurImage">BlurImage</a></h2>
    128 
    129 <p>BlurImage() blurs an image.  We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma).  For reasonable results, the radius should be larger than sigma.  Use a radius of 0 and BlurImage() selects a suitable radius for you.</p>
    130 
    131 <p>The format of the BlurImage method is:</p>
    132 
    133 <pre class="text">
    134 Image *BlurImage(const Image *image,const double radius,
    135   const double sigma,ExceptionInfo *exception)
    136 </pre>
    137 
    138 <p>A description of each parameter follows:</p>
    139 
    140 <dd>
    141 </dd>
    142 
    143 <dd> </dd>
    144 <dl class="dl-horizontal">
    145 <dt>image</dt>
    146 <dd>the image. </dd>
    147 
    148 <dd> </dd>
    149 <dt>radius</dt>
    150 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    151 
    152 <dd> </dd>
    153 <dt>sigma</dt>
    154 <dd>the standard deviation of the Gaussian, in pixels. </dd>
    155 
    156 <dd> </dd>
    157 <dt>exception</dt>
    158 <dd>return any errors or warnings in this structure. </dd>
    159 
    160 <dd>  </dd>
    161 </dl>
    162 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ConvolveImage">ConvolveImage</a></h2>
    163 
    164 <p>ConvolveImage() applies a custom convolution kernel to the image.</p>
    165 
    166 <p>The format of the ConvolveImage method is:</p>
    167 
    168 <pre class="text">
    169 Image *ConvolveImage(const Image *image,const KernelInfo *kernel,
    170   ExceptionInfo *exception)
    171 </pre>
    172 
    173 <p>A description of each parameter follows:</p>
    174 
    175 <dd>
    176 </dd>
    177 
    178 <dd> </dd>
    179 <dl class="dl-horizontal">
    180 <dt>image</dt>
    181 <dd>the image. </dd>
    182 
    183 <dd> </dd>
    184 <dt>kernel</dt>
    185 <dd>the filtering kernel. </dd>
    186 
    187 <dd> </dd>
    188 <dt>exception</dt>
    189 <dd>return any errors or warnings in this structure. </dd>
    190 
    191 <dd>  </dd>
    192 </dl>
    193 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="DespeckleImage">DespeckleImage</a></h2>
    194 
    195 <p>DespeckleImage() reduces the speckle noise in an image while perserving the edges of the original image.  A speckle removing filter uses a complementary hulling technique (raising pixels that are darker than their surrounding neighbors, then complementarily lowering pixels that are brighter than their surrounding neighbors) to reduce the speckle index of that image (reference Crimmins speckle removal).</p>
    196 
    197 <p>The format of the DespeckleImage method is:</p>
    198 
    199 <pre class="text">
    200 Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
    201 </pre>
    202 
    203 <p>A description of each parameter follows:</p>
    204 
    205 <dd>
    206 </dd>
    207 
    208 <dd> </dd>
    209 <dl class="dl-horizontal">
    210 <dt>image</dt>
    211 <dd>the image. </dd>
    212 
    213 <dd> </dd>
    214 <dt>exception</dt>
    215 <dd>return any errors or warnings in this structure. </dd>
    216 
    217 <dd>  </dd>
    218 </dl>
    219 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EdgeImage">EdgeImage</a></h2>
    220 
    221 <p>EdgeImage() finds edges in an image.  Radius defines the radius of the convolution filter.  Use a radius of 0 and EdgeImage() selects a suitable radius for you.</p>
    222 
    223 <p>The format of the EdgeImage method is:</p>
    224 
    225 <pre class="text">
    226 Image *EdgeImage(const Image *image,const double radius,
    227   ExceptionInfo *exception)
    228 </pre>
    229 
    230 <p>A description of each parameter follows:</p>
    231 
    232 <dd>
    233 </dd>
    234 
    235 <dd> </dd>
    236 <dl class="dl-horizontal">
    237 <dt>image</dt>
    238 <dd>the image. </dd>
    239 
    240 <dd> </dd>
    241 <dt>radius</dt>
    242 <dd>the radius of the pixel neighborhood. </dd>
    243 
    244 <dd> </dd>
    245 <dt>exception</dt>
    246 <dd>return any errors or warnings in this structure. </dd>
    247 
    248 <dd>  </dd>
    249 </dl>
    250 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EmbossImage">EmbossImage</a></h2>
    251 
    252 <p>EmbossImage() returns a grayscale image with a three-dimensional effect. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma).  For reasonable results, radius should be larger than sigma.  Use a radius of 0 and Emboss() selects a suitable radius for you.</p>
    253 
    254 <p>The format of the EmbossImage method is:</p>
    255 
    256 <pre class="text">
    257 Image *EmbossImage(const Image *image,const double radius,
    258   const double sigma,ExceptionInfo *exception)
    259 </pre>
    260 
    261 <p>A description of each parameter follows:</p>
    262 
    263 <dd>
    264 </dd>
    265 
    266 <dd> </dd>
    267 <dl class="dl-horizontal">
    268 <dt>image</dt>
    269 <dd>the image. </dd>
    270 
    271 <dd> </dd>
    272 <dt>radius</dt>
    273 <dd>the radius of the pixel neighborhood. </dd>
    274 
    275 <dd> </dd>
    276 <dt>sigma</dt>
    277 <dd>the standard deviation of the Gaussian, in pixels. </dd>
    278 
    279 <dd> </dd>
    280 <dt>exception</dt>
    281 <dd>return any errors or warnings in this structure. </dd>
    282 
    283 <dd>  </dd>
    284 </dl>
    285 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="GaussianBlurImage">GaussianBlurImage</a></h2>
    286 
    287 <p>GaussianBlurImage() blurs an image.  We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, the radius should be larger than sigma.  Use a radius of 0 and GaussianBlurImage() selects a suitable radius for you</p>
    288 
    289 <p>The format of the GaussianBlurImage method is:</p>
    290 
    291 <pre class="text">
    292 Image *GaussianBlurImage(const Image *image,onst double radius,
    293   const double sigma,ExceptionInfo *exception)
    294 </pre>
    295 
    296 <p>A description of each parameter follows:</p>
    297 
    298 <dd>
    299 </dd>
    300 
    301 <dd> </dd>
    302 <dl class="dl-horizontal">
    303 <dt>image</dt>
    304 <dd>the image. </dd>
    305 
    306 <dd> </dd>
    307 <dt>radius</dt>
    308 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    309 
    310 <dd> </dd>
    311 <dt>sigma</dt>
    312 <dd>the standard deviation of the Gaussian, in pixels. </dd>
    313 
    314 <dd> </dd>
    315 <dt>exception</dt>
    316 <dd>return any errors or warnings in this structure. </dd>
    317 
    318 <dd>  </dd>
    319 </dl>
    320 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="KuwaharaImage">KuwaharaImage</a></h2>
    321 
    322 <p>KuwaharaImage() is an edge preserving noise reduction filter.</p>
    323 
    324 <p>The format of the KuwaharaImage method is:</p>
    325 
    326 <pre class="text">
    327 Image *KuwaharaImage(const Image *image,const double radius,
    328   const double sigma,ExceptionInfo *exception)
    329 </pre>
    330 
    331 <p>A description of each parameter follows:</p>
    332 
    333 <dd>
    334 </dd>
    335 
    336 <dd> </dd>
    337 <dl class="dl-horizontal">
    338 <dt>image</dt>
    339 <dd>the image. </dd>
    340 
    341 <dd> </dd>
    342 <dt>radius</dt>
    343 <dd>the square window radius. </dd>
    344 
    345 <dd> </dd>
    346 <dt>sigma</dt>
    347 <dd>the standard deviation of the Gaussian, in pixels. </dd>
    348 
    349 <dd> </dd>
    350 <dt>exception</dt>
    351 <dd>return any errors or warnings in this structure. </dd>
    352 
    353 <dd>  </dd>
    354 </dl>
    355 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="LocalContrastImage">LocalContrastImage</a></h2>
    356 
    357 <p>LocalContrastImage() attempts to increase the appearance of large-scale light-dark transitions. Local contrast enhancement works similarly to sharpening with an unsharp mask, however the mask is instead created using an image with a greater blur distance.</p>
    358 
    359 <p>The format of the LocalContrastImage method is:</p>
    360 
    361 <pre class="text">
    362 Image *LocalContrastImage(const Image *image, const double radius,
    363   const double strength, ExceptionInfo *exception)
    364 </pre>
    365 
    366 <p>A description of each parameter follows:</p>
    367 
    368 <dd>
    369 </dd>
    370 
    371 <dd> </dd>
    372 <dl class="dl-horizontal">
    373 <dt>image</dt>
    374 <dd>the image. </dd>
    375 
    376 <dd> </dd>
    377 <dt>radius</dt>
    378 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    379 
    380 <dd> </dd>
    381 <dt>strength</dt>
    382 <dd>the strength of the blur mask in percentage. </dd>
    383 
    384 <dd> </dd>
    385 <dt>exception</dt>
    386 <dd>return any errors or warnings in this structure. </dd>
    387 
    388 <dd>  </dd>
    389 </dl>
    390 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="MotionBlurImage">MotionBlurImage</a></h2>
    391 
    392 <p>MotionBlurImage() simulates motion blur.  We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma.  Use a radius of 0 and MotionBlurImage() selects a suitable radius for you. Angle gives the angle of the blurring motion.</p>
    393 
    394 <p>Andrew Protano contributed this effect.</p>
    395 
    396 <p>The format of the MotionBlurImage method is:</p>
    397 
    398 <pre class="text">
    399     Image *MotionBlurImage(const Image *image,const double radius,
    400 const double sigma,const double angle,ExceptionInfo *exception)
    401 </pre>
    402 
    403 <p>A description of each parameter follows:</p>
    404 
    405 <dd>
    406 </dd>
    407 
    408 <dd> </dd>
    409 <dl class="dl-horizontal">
    410 <dt>image</dt>
    411 <dd>the image. </dd>
    412 
    413 <dd> </dd>
    414 <dt>radius</dt>
    415 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    416 
    417 <dd> </dd>
    418 <dt>sigma</dt>
    419 <dd>the standard deviation of the Gaussian, in pixels. </dd>
    420 
    421 <dd> </dd>
    422 <dt>angle</dt>
    423 <dd>Apply the effect along this angle. </dd>
    424 
    425 <dd> </dd>
    426 <dt>exception</dt>
    427 <dd>return any errors or warnings in this structure. </dd>
    428 
    429 <dd>  </dd>
    430 </dl>
    431 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="PreviewImage">PreviewImage</a></h2>
    432 
    433 <p>PreviewImage() tiles 9 thumbnails of the specified image with an image processing operation applied with varying parameters.  This may be helpful pin-pointing an appropriate parameter for a particular image processing operation.</p>
    434 
    435 <p>The format of the PreviewImages method is:</p>
    436 
    437 <pre class="text">
    438 Image *PreviewImages(const Image *image,const PreviewType preview,
    439   ExceptionInfo *exception)
    440 </pre>
    441 
    442 <p>A description of each parameter follows:</p>
    443 
    444 <dd>
    445 </dd>
    446 
    447 <dd> </dd>
    448 <dl class="dl-horizontal">
    449 <dt>image</dt>
    450 <dd>the image. </dd>
    451 
    452 <dd> </dd>
    453 <dt>preview</dt>
    454 <dd>the image processing operation. </dd>
    455 
    456 <dd> </dd>
    457 <dt>exception</dt>
    458 <dd>return any errors or warnings in this structure. </dd>
    459 
    460 <dd>  </dd>
    461 </dl>
    462 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="RotationalBlurImage">RotationalBlurImage</a></h2>
    463 
    464 <p>RotationalBlurImage() applies a radial blur to the image.</p>
    465 
    466 <p>Andrew Protano contributed this effect.</p>
    467 
    468 <p>The format of the RotationalBlurImage method is:</p>
    469 
    470 <pre class="text">
    471     Image *RotationalBlurImage(const Image *image,const double angle,
    472 ExceptionInfo *exception)
    473 </pre>
    474 
    475 <p>A description of each parameter follows:</p>
    476 
    477 <dd>
    478 </dd>
    479 
    480 <dd> </dd>
    481 <dl class="dl-horizontal">
    482 <dt>image</dt>
    483 <dd>the image. </dd>
    484 
    485 <dd> </dd>
    486 <dt>angle</dt>
    487 <dd>the angle of the radial blur. </dd>
    488 
    489 <dd> </dd>
    490 <dt>blur</dt>
    491 <dd>the blur. </dd>
    492 
    493 <dd> </dd>
    494 <dt>exception</dt>
    495 <dd>return any errors or warnings in this structure. </dd>
    496 
    497 <dd>  </dd>
    498 </dl>
    499 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SelectiveBlurImage">SelectiveBlurImage</a></h2>
    500 
    501 <p>SelectiveBlurImage() selectively blur pixels within a contrast threshold. It is similar to the unsharpen mask that sharpens everything with contrast above a certain threshold.</p>
    502 
    503 <p>The format of the SelectiveBlurImage method is:</p>
    504 
    505 <pre class="text">
    506 Image *SelectiveBlurImage(const Image *image,const double radius,
    507   const double sigma,const double threshold,ExceptionInfo *exception)
    508 </pre>
    509 
    510 <p>A description of each parameter follows:</p>
    511 
    512 <dd>
    513 </dd>
    514 
    515 <dd> </dd>
    516 <dl class="dl-horizontal">
    517 <dt>image</dt>
    518 <dd>the image. </dd>
    519 
    520 <dd> </dd>
    521 <dt>radius</dt>
    522 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    523 
    524 <dd> </dd>
    525 <dt>sigma</dt>
    526 <dd>the standard deviation of the Gaussian, in pixels. </dd>
    527 
    528 <dd> </dd>
    529 <dt>threshold</dt>
    530 <dd>only pixels within this contrast threshold are included in the blur operation. </dd>
    531 
    532 <dd> </dd>
    533 <dt>exception</dt>
    534 <dd>return any errors or warnings in this structure. </dd>
    535 
    536 <dd>  </dd>
    537 </dl>
    538 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ShadeImage">ShadeImage</a></h2>
    539 
    540 <p>ShadeImage() shines a distant light on an image to create a three-dimensional effect. You control the positioning of the light with azimuth and elevation; azimuth is measured in degrees off the x axis and elevation is measured in pixels above the Z axis.</p>
    541 
    542 <p>The format of the ShadeImage method is:</p>
    543 
    544 <pre class="text">
    545 Image *ShadeImage(const Image *image,const MagickBooleanType gray,
    546   const double azimuth,const double elevation,ExceptionInfo *exception)
    547 </pre>
    548 
    549 <p>A description of each parameter follows:</p>
    550 
    551 <dd>
    552 </dd>
    553 
    554 <dd> </dd>
    555 <dl class="dl-horizontal">
    556 <dt>image</dt>
    557 <dd>the image. </dd>
    558 
    559 <dd> </dd>
    560 <dt>gray</dt>
    561 <dd>A value other than zero shades the intensity of each pixel. </dd>
    562 
    563 <dd> </dd>
    564 <dt>azimuth, elevation</dt>
    565 <dd> Define the light source direction. </dd>
    566 
    567 <dd> </dd>
    568 <dt>exception</dt>
    569 <dd>return any errors or warnings in this structure. </dd>
    570 
    571 <dd>  </dd>
    572 </dl>
    573 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SharpenImage">SharpenImage</a></h2>
    574 
    575 <p>SharpenImage() sharpens the image.  We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma).  For reasonable results, radius should be larger than sigma.  Use a radius of 0 and SharpenImage() selects a suitable radius for you.</p>
    576 
    577 <p>Using a separable kernel would be faster, but the negative weights cancel out on the corners of the kernel producing often undesirable ringing in the filtered result; this can be avoided by using a 2D gaussian shaped image sharpening kernel instead.</p>
    578 
    579 <p>The format of the SharpenImage method is:</p>
    580 
    581 <pre class="text">
    582     Image *SharpenImage(const Image *image,const double radius,
    583 const double sigma,ExceptionInfo *exception)
    584 </pre>
    585 
    586 <p>A description of each parameter follows:</p>
    587 
    588 <dd>
    589 </dd>
    590 
    591 <dd> </dd>
    592 <dl class="dl-horizontal">
    593 <dt>image</dt>
    594 <dd>the image. </dd>
    595 
    596 <dd> </dd>
    597 <dt>radius</dt>
    598 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    599 
    600 <dd> </dd>
    601 <dt>sigma</dt>
    602 <dd>the standard deviation of the Laplacian, in pixels. </dd>
    603 
    604 <dd> </dd>
    605 <dt>exception</dt>
    606 <dd>return any errors or warnings in this structure. </dd>
    607 
    608 <dd>  </dd>
    609 </dl>
    610 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SpreadImage">SpreadImage</a></h2>
    611 
    612 <p>SpreadImage() is a special effects method that randomly displaces each pixel in a square area defined by the radius parameter.</p>
    613 
    614 <p>The format of the SpreadImage method is:</p>
    615 
    616 <pre class="text">
    617 Image *SpreadImage(const Image *image,
    618   const PixelInterpolateMethod method,const double radius,
    619   ExceptionInfo *exception)
    620 </pre>
    621 
    622 <p>A description of each parameter follows:</p>
    623 
    624 <dd>
    625 </dd>
    626 
    627 <dd> </dd>
    628 <dl class="dl-horizontal">
    629 <dt>image</dt>
    630 <dd>the image. </dd>
    631 
    632 <dd> </dd>
    633 <dt>method</dt>
    634 <dd> intepolation method. </dd>
    635 
    636 <dd> </dd>
    637 <dt>radius</dt>
    638 <dd> choose a random pixel in a neighborhood of this extent. </dd>
    639 
    640 <dd> </dd>
    641 <dt>exception</dt>
    642 <dd>return any errors or warnings in this structure. </dd>
    643 
    644 <dd>  </dd>
    645 </dl>
    646 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="UnsharpMaskImage">UnsharpMaskImage</a></h2>
    647 
    648 <p>UnsharpMaskImage() sharpens one or more image channels.  We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma).  For reasonable results, radius should be larger than sigma.  Use a radius of 0 and UnsharpMaskImage() selects a suitable radius for you.</p>
    649 
    650 <p>The format of the UnsharpMaskImage method is:</p>
    651 
    652 <pre class="text">
    653     Image *UnsharpMaskImage(const Image *image,const double radius,
    654 const double sigma,const double amount,const double threshold,
    655 ExceptionInfo *exception)
    656 </pre>
    657 
    658 <p>A description of each parameter follows:</p>
    659 
    660 <dd>
    661 </dd>
    662 
    663 <dd> </dd>
    664 <dl class="dl-horizontal">
    665 <dt>image</dt>
    666 <dd>the image. </dd>
    667 
    668 <dd> </dd>
    669 <dt>radius</dt>
    670 <dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
    671 
    672 <dd> </dd>
    673 <dt>sigma</dt>
    674 <dd>the standard deviation of the Gaussian, in pixels. </dd>
    675 
    676 <dd> </dd>
    677 <dt>gain</dt>
    678 <dd>the percentage of the difference between the original and the blur image that is added back into the original. </dd>
    679 
    680 <dd> </dd>
    681 <dt>threshold</dt>
    682 <dd>the threshold in pixels needed to apply the diffence gain. </dd>
    683 
    684 <dd> </dd>
    685 <dt>exception</dt>
    686 <dd>return any errors or warnings in this structure. </dd>
    687 
    688 <dd>  </dd>
    689 </dl>
    690 </div>
    691   <footer class="magick-footer">
    692     <p><a href="../script/support.php">Donate</a> 
    693      <a href="../script/sitemap.php">Sitemap</a> 
    694     <a href="../script/links.php">Related</a> 
    695     <a href="../script/architecture.php">Architecture</a>
    696 </p>
    697     <p><a href="effect.php#">Back to top</a> 
    698     <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x89AB63D48277377A">Public Key</a> 
    699     <a href="../script/contact.php">Contact Us</a></p>
    700         <p><small>  1999-2016 ImageMagick Studio LLC</small></p>
    701   </footer>
    702 </div><!-- /.container -->
    703 
    704   <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    705   <script src="http://nextgen.imagemagick.org/js/magick.php"></script>
    706 </div>
    707 </body>
    708 </html>
    709