]> granicus.if.org Git - imagemagick/blob - www/api/effect.html
(no commit message)
[imagemagick] / www / api / effect.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" \r
2   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
3 <html version="-//W3C//DTD XHTML 1.1//EN"\r
4       xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"\r
5       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
6       xsi:schemaLocation="http://www.w3.org/1999/xhtml\r
7                           http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">\r
8 <head>\r
9   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\r
10   <meta name="google-site-verification" content="MxsMq6bdLOx0KSuz1MY6yG9ZTIJ7_7DVRfl5NCAT5Yg"/>\r
11   <title>ImageMagick: MagickCore, C API for ImageMagick: Add an Effect</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="Application-name" content="ImageMagick"/>
16   <meta name="Description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats.  In addition resize, rotate, shear, distort and transform images automagically."/>
17   <meta name="Application-url" content="http://www.imagemagick.org"/>
18   <meta name="Generator" content="PHP"/>
19   <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, add, an, effect, ImageMagick, PerlMagick, image processing, OpenMP, software development library, image, photo, software, Magick++, MagickWand"/>
20   <meta name="Rating" content="GENERAL"/>
21   <meta name="Robots" content="INDEX, FOLLOW"/>
22   <meta name="Generator" content="ImageMagick Studio LLC"/>
23   <meta name="Author" content="ImageMagick Studio LLC"/>
24   <meta name="Revisit-after" content="2 DAYS"/>
25   <meta name="Resource-type" content="document"/>
26   <meta name="Copyright" content="Copyright (c) 1999-2012 ImageMagick Studio LLC"/>
27   <meta name="Distribution" content="Global"/>
28   <link rel="icon" href="../../images/wand.png"/>
29   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/x-icon"/>
30   <link rel="canonical" href="http://www.imagemagick.org" />\r
31   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>\r
32   <!-- Add jQuery library -->\r
33   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>\r
34   \r
35   <!-- Optionaly include easing and/or mousewheel plugins -->\r
36   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.easing-1.3.pack.js"></script>\r
37   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.mousewheel-3.0.6.pack.js"></script>\r
38   \r
39   <!-- Add fancyBox -->\r
40   <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/jquery.fancybox.css?v=2.0.3" type="text/css" media="screen" />\r
41   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.fancybox.pack.js?v=2.0.3"></script>\r
42   \r
43   <!-- Optionaly include button and/or thumbnail helpers -->\r
44   <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-buttons.css?v=2.0.3" type="text/css" media="screen" />\r
45   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-buttons.js?v=2.0.3"></script>\r
46   \r
47   <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-thumbs.css?v=2.0.3" type="text/css" media="screen" />\r
48   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-thumbs.js?v=2.0.3"></script>\r
49   <script type="text/javascript">\r
50         $(document).ready(function() {\r
51                 $(".fancybox").fancybox();\r
52         });\r
53   </script>\r
54   <!-- ImageMagick style -->\r
55   <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />\r
56   <style type="text/css" media="all">\r
57     @import url("../../www/magick.css");\r
58   </style>\r
59 </head>\r
60 \r
61 <body id="www-imagemagick-org">\r
62 <div class="titlebar">\r
63 <div style="margin: 17px auto; float: left;">\r
64   <script type="text/javascript">\r
65   <!--\r
66     google_ad_client = "pub-3129977114552745";\r
67     google_ad_slot = "5439289906";\r
68     google_ad_width = 728;\r
69     google_ad_height = 90;\r
70   //-->\r
71   </script>\r
72   <script type="text/javascript"\r
73     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
74   </script>\r
75 </div>\r
76 <a href="http://www.imagemagick.org/discourse-server/">\r
77   <img src="../../images/logo.jpg"\r
78   alt="ImageMagick Logo"\r
79   style="width: 123px; height: 118px; border: 0px; float: right;" /></a>\r
80 <a href="../../index.html">\r
81   <img src="../../images/sprite.jpg"\r
82   alt="ImageMagick Sprite"\r
83   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
84 </div>\r
85 \r
86 <div class="westbar">\r
87 \r
88 <div class="menu">
89   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
90 </div>
91 <div class="menu">
92   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
93 </div>
94 <div class="sub">
95     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
96 </div>
97 <div class="sub">
98     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
99 </div>
100 <div class="sub">
101     <a title="Binary Release: iOS" href="../../www/binary-releases.html#iOS">iOS</a>
102 </div>
103 <div class="sub">
104     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
105 </div>
106 <div class="sep"></div>\r
107 <div class="menu">
108   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
109 </div>
110 <div class="sub">
111     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
112 </div>
113 <div class="sub">
114     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
115 </div>
116 <div class="sub">
117     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
118 </div>
119 <div class="menu">
120   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
121 </div>
122 <div class="sub">
123     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
124 </div>
125 <div class="sub">
126     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
127 </div>
128 <div class="sub">
129     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
130 </div>
131 <div class="sub">
132     <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
133 </div>
134 <div class="sep"></div>\r
135 <div  class="menu">
136    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
137 </div>
138 <div class="sub">
139     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
140 </div>
141 <div class="sub">
142     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
143  </div>
144 <div class="menu">
145   <a title="Resources" href="../../www/resources.html">Resources</a>
146 </div>
147 <div class="menu">
148   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
149 </div>
150 <div class="menu">
151   <a title="Download" href="../../www/download.html">Download</a>
152 </div>
153 <div class="sep"></div>\r
154 <div class="menu">
155   <a title="Search" href="../../www/search.html">Search</a>
156 </div>
157 <div class="sep"></div>\r
158 <div class="menu">
159   <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
160 </div>
161 <div  class="sub">
162   <a title="Site Map: Links" href="../../www/links.html">Links</a>
163 </div>
164 <div class="sep"></div>\r
165 <div class="menu">
166   <a rel="follow" title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
167
168   <a href="http://www.networkredux.com"> <img src="../../images/networkredux.png" width="140" height="31" alt="[sponsor]" style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a>
169   <a href="http://www.dinodirect.com/ipads-tablets/"> <img src="../../images/dino-direct.jpg" width="140" height="90" alt="[sponsor]" style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a><!-- 201204010120 mickey@163... -->
170 <div class="sponsbox">
171 <div class="sponsor">
172   <a rel="follow" title="Android Tablet" href="http://www.dinodirect.com/ipads-tablets/">Android Tablet</a><!-- 201204010120 mickey@163... -->
173 </div>
174 <div class="sponsor">
175   <a rel="follow" title="Sponsor: Web Hosting" href="http://www.micfo.com">Web Hosting</a><!-- 209901010090s golestan -->
176 </div>
177 <div class="sponsor">
178   <a rel="follow" title="Sponsor: Autos Part" href="http://www.pkwteile.de/autoteile">Autos Part</a><!-- 201203010270 info@pkwte... -->
179 </div>
180 <div class="sponsor">
181   <a rel="follow" title="Sponsor: Web Site Hosting" href="http://webhostinggeeks.com">Web Site Hosting</a><!-- 201302010900 funds@enmob... -->
182 </div>
183 <div class="sponsor">
184   <a rel="follow" title="Sponsor: Tenant Check" href="http://www.rentmethod.com/">Tenant Check</a><!-- 201203010090 chris@rentm... -->
185 </div>
186 <div class="sponsor">
187   <a rel="follow" title="Sponsor: VPS" href="http://www.interdominios.com/vps">VPS</a><!-- 201204010090 barsh@inter... -->
188 </div>
189 <div class="sponsor">
190    <a rel="follow" title="Sponsor: Premium Quality Stock Photos" href="http://www.f1online.pro/en/">Premium Quality Stock Photos</a><!-- 2012080100540 ... -->
191 </div>
192 <div class="sponsor">
193   <a rel="follow" title="Sponsor: Search engine optimisation" href="http://www.seomoves.com.au">Search engine optimisation</a><!-- 201301010090s jen@seo lowprofilelinks -->
194 </div>
195 <div class="sponsor">
196    <a rel="follow" title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 2012070100250 ... -->
197 </div>
198 <div class="sponsor">
199   <a rel="follow" title="Sponsor: Managed Server" href="http://www.robhost.de">Managed Server</a><!-- 201210010720 klikics... -->
200 </div>
201 <div class="sponsor">
202    <a rel="follow" title="Sponsor: Stock Photography" href="http://www.fotosearch.com/">Stock Photography</a><!-- 2012040100250 ... -->
203 </div>
204 <div class="sponsor">
205   <a rel="follow" title="Sponsor: Autoteile" href="http://www.q11-shop.de">Autoteile</a><!-- 201205010540 suvalj -->
206 </div>
207 <div class="sponsor">
208    <a rel="follow" title="Sponsor: Royalty Free Stock Images" href="http://www.canstockphoto.com/">Royalty Free Stock Images</a><!-- 2012050100360 support@can -->
209 </div>
210 <div class="sponsor">
211   <a rel="follow" title="Sponsor: Web Hosting Reviews" href="http://www.webhostingsecretrevealed.com">Web Hosting Secret Revealed</a><!-- 201204010540 iamchee jerry -->
212 </div>
213 <div class="sponsor">
214   <a rel="follow" title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201303011500 r.leo -->
215 </div>
216 <div class="sponsor">
217    <a rel="follow" title="Sponsor: Notebook Reparatur" href="http://www.notebook-reparaturen-berlin.de">Notebook Reparatur</a><!-- 2012050100300 atlas.multimedia-->
218 </div>
219 <div class="sponsor">
220    <a rel="follow" title="Sponsor: Best Web Hosting" href="http://www.webhostingclue.com">Best Web Hosting</a><!-- 2012030100300 accounting@webhostingclue -->
221 </div>
222 </div>
223 </div>
224 </div>\r
225 \r
226 <div class="eastbar">\r
227   <div class="g-plusone" data-size="standard" data-count="false"></div>\r
228   <script type="text/javascript">\r
229     window.___gcfg = {\r
230       lang: 'en-US'\r
231     };\r
232 \r
233     (function() {\r
234       var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;\r
235       po.src = 'https://apis.google.com/js/plusone.js';\r
236       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);\r
237     })();\r
238   </script>\r
239 </div>\r
240 \r
241 <div class="main">\r
242 \r
243 <h1>Module effect Methods</h1>
244 <p class="navigation-index">[<a href="#AdaptiveBlurImage">AdaptiveBlurImage</a> &bull; <a href="#AdaptiveSharpenImage">AdaptiveSharpenImage</a> &bull; <a href="#BlurImage">BlurImage</a> &bull; <a href="#ConvolveImage">ConvolveImage</a> &bull; <a href="#DespeckleImage">DespeckleImage</a> &bull; <a href="#EdgeImage">EdgeImage</a> &bull; <a href="#EmbossImage">EmbossImage</a> &bull; <a href="#FilterImage">FilterImage</a> &bull; <a href="#GaussianBlurImage">GaussianBlurImage</a> &bull; <a href="#MotionBlurImage">MotionBlurImage</a> &bull; <a href="#PreviewImage">PreviewImage</a> &bull; <a href="#RadialBlurImage">RadialBlurImage</a> &bull; <a href="#SelectiveBlurImage">SelectiveBlurImage</a> &bull; <a href="#ShadeImage">ShadeImage</a> &bull; <a href="#SharpenImage">SharpenImage</a> &bull; <a href="#SpreadImage">SpreadImage</a> &bull; <a href="#UnsharpMaskImage">UnsharpMaskImage</a>]</p>
245
246 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
247 <div class="doc-section">
248
249 <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>
250
251 <p>The format of the AdaptiveBlurImage method is:</p>
252
253 <pre class="code">
254   Image *AdaptiveBlurImage(const Image *image,const double radius,
255     const double sigma,ExceptionInfo *exception)
256   Image *AdaptiveBlurImageChannel(const Image *image,
257     const ChannelType channel,double radius,const double sigma,
258     ExceptionInfo *exception)
259 </pre>
260
261 <p>A description of each parameter follows:</p>
262
263 <h5>image</h5>
264 <p>the image.</p>
265
266 <h5>channel</h5>
267 <p>the channel type.</p>
268
269 <h5>radius</h5>
270 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
271
272 <h5>sigma</h5>
273 <p>the standard deviation of the Laplacian, in pixels.</p>
274
275 <h5>exception</h5>
276 <p>return any errors or warnings in this structure.</p>
277
278  </div>
279 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
280 <div class="doc-section">
281
282 <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>
283
284 <p>The format of the AdaptiveSharpenImage method is:</p>
285
286 <pre class="code">
287   Image *AdaptiveSharpenImage(const Image *image,const double radius,
288     const double sigma,ExceptionInfo *exception)
289   Image *AdaptiveSharpenImageChannel(const Image *image,
290     const ChannelType channel,double radius,const double sigma,
291     ExceptionInfo *exception)
292 </pre>
293
294 <p>A description of each parameter follows:</p>
295
296 <h5>image</h5>
297 <p>the image.</p>
298
299 <h5>channel</h5>
300 <p>the channel type.</p>
301
302 <h5>radius</h5>
303 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
304
305 <h5>sigma</h5>
306 <p>the standard deviation of the Laplacian, in pixels.</p>
307
308 <h5>exception</h5>
309 <p>return any errors or warnings in this structure.</p>
310
311  </div>
312 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="BlurImage">BlurImage</a></h2>
313 <div class="doc-section">
314
315 <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>
316
317 <p>BlurImage() differs from GaussianBlurImage() in that it uses a separable kernel which is faster but mathematically equivalent to the non-separable kernel.</p>
318
319 <p>The format of the BlurImage method is:</p>
320
321 <pre class="code">
322   Image *BlurImage(const Image *image,const double radius,
323     const double sigma,ExceptionInfo *exception)
324   Image *BlurImageChannel(const Image *image,const ChannelType channel,
325     const double radius,const double sigma,ExceptionInfo *exception)
326 </pre>
327
328 <p>A description of each parameter follows:</p>
329
330 <h5>image</h5>
331 <p>the image.</p>
332
333 <h5>channel</h5>
334 <p>the channel type.</p>
335
336 <h5>radius</h5>
337 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
338
339 <h5>sigma</h5>
340 <p>the standard deviation of the Gaussian, in pixels.</p>
341
342 <h5>exception</h5>
343 <p>return any errors or warnings in this structure.</p>
344
345  </div>
346 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ConvolveImage">ConvolveImage</a></h2>
347 <div class="doc-section">
348
349 <p>ConvolveImage() applies a custom convolution kernel to the image.</p>
350
351 <p>The format of the ConvolveImage method is:</p>
352
353 <pre class="code">
354   Image *ConvolveImage(const Image *image,const size_t order,
355     const double *kernel,ExceptionInfo *exception)
356   Image *ConvolveImageChannel(const Image *image,const ChannelType channel,
357     const size_t order,const double *kernel,ExceptionInfo *exception)
358 </pre>
359
360 <p>A description of each parameter follows:</p>
361
362 <h5>image</h5>
363 <p>the image.</p>
364
365 <h5>channel</h5>
366 <p>the channel type.</p>
367
368 <h5>order</h5>
369 <p>the number of columns and rows in the filter kernel.</p>
370
371 <h5>kernel</h5>
372 <p>An array of double representing the convolution kernel.</p>
373
374 <h5>exception</h5>
375 <p>return any errors or warnings in this structure.</p>
376
377  </div>
378 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="DespeckleImage">DespeckleImage</a></h2>
379 <div class="doc-section">
380
381 <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>
382
383 <p>The format of the DespeckleImage method is:</p>
384
385 <pre class="code">
386   Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
387 </pre>
388
389 <p>A description of each parameter follows:</p>
390
391 <h5>image</h5>
392 <p>the image.</p>
393
394 <h5>exception</h5>
395 <p>return any errors or warnings in this structure.</p>
396
397  </div>
398 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EdgeImage">EdgeImage</a></h2>
399 <div class="doc-section">
400
401 <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>
402
403 <p>The format of the EdgeImage method is:</p>
404
405 <pre class="code">
406   Image *EdgeImage(const Image *image,const double radius,
407     ExceptionInfo *exception)
408 </pre>
409
410 <p>A description of each parameter follows:</p>
411
412 <h5>image</h5>
413 <p>the image.</p>
414
415 <h5>radius</h5>
416 <p>the radius of the pixel neighborhood.</p>
417
418 <h5>exception</h5>
419 <p>return any errors or warnings in this structure.</p>
420
421  </div>
422 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EmbossImage">EmbossImage</a></h2>
423 <div class="doc-section">
424
425 <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>
426
427 <p>The format of the EmbossImage method is:</p>
428
429 <pre class="code">
430   Image *EmbossImage(const Image *image,const double radius,
431     const double sigma,ExceptionInfo *exception)
432 </pre>
433
434 <p>A description of each parameter follows:</p>
435
436 <h5>image</h5>
437 <p>the image.</p>
438
439 <h5>radius</h5>
440 <p>the radius of the pixel neighborhood.</p>
441
442 <h5>sigma</h5>
443 <p>the standard deviation of the Gaussian, in pixels.</p>
444
445 <h5>exception</h5>
446 <p>return any errors or warnings in this structure.</p>
447
448  </div>
449 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="FilterImage">FilterImage</a></h2>
450 <div class="doc-section">
451
452 <p>FilterImage() applies a custom convolution kernel to the image.</p>
453
454 <p>The format of the FilterImage method is:</p>
455
456 <pre class="code">
457   Image *FilterImage(const Image *image,const KernelInfo *kernel,
458     ExceptionInfo *exception)
459   Image *FilterImageChannel(const Image *image,const ChannelType channel,
460     const KernelInfo *kernel,ExceptionInfo *exception)
461 </pre>
462
463 <p>A description of each parameter follows:</p>
464
465 <h5>image</h5>
466 <p>the image.</p>
467
468 <h5>channel</h5>
469 <p>the channel type.</p>
470
471 <h5>kernel</h5>
472 <p>the filtering kernel.</p>
473
474 <h5>exception</h5>
475 <p>return any errors or warnings in this structure.</p>
476
477  </div>
478 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="GaussianBlurImage">GaussianBlurImage</a></h2>
479 <div class="doc-section">
480
481 <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>
482
483 <p>The format of the GaussianBlurImage method is:</p>
484
485 <pre class="code">
486   Image *GaussianBlurImage(const Image *image,onst double radius,
487     const double sigma,ExceptionInfo *exception)
488   Image *GaussianBlurImageChannel(const Image *image,
489     const ChannelType channel,const double radius,const double sigma,
490     ExceptionInfo *exception)
491 </pre>
492
493 <p>A description of each parameter follows:</p>
494
495 <h5>image</h5>
496 <p>the image.</p>
497
498 <h5>channel</h5>
499 <p>the channel type.</p>
500
501 <h5>radius</h5>
502 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
503
504 <h5>sigma</h5>
505 <p>the standard deviation of the Gaussian, in pixels.</p>
506
507 <h5>exception</h5>
508 <p>return any errors or warnings in this structure.</p>
509
510  </div>
511 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="MotionBlurImage">MotionBlurImage</a></h2>
512 <div class="doc-section">
513
514 <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>
515
516 <p>Andrew Protano contributed this effect.</p>
517
518 <p>The format of the MotionBlurImage method is:</p>
519
520 <pre class="code">
521       Image *MotionBlurImage(const Image *image,const double radius,
522   const double sigma,const double angle,ExceptionInfo *exception)
523       Image *MotionBlurImageChannel(const Image *image,const ChannelType channel,
524   const double radius,const double sigma,const double angle,
525   ExceptionInfo *exception)
526 </pre>
527
528 <p>A description of each parameter follows:</p>
529
530 <h5>image</h5>
531 <p>the image.</p>
532
533 <h5>channel</h5>
534 <p>the channel type.</p>
535
536 <h5>radius</h5>
537 <p>the radius of the Gaussian, in pixels, not counting the center</p>
538 <h5>radius</h5>
539 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
540
541 <h5>sigma</h5>
542 <p>the standard deviation of the Gaussian, in pixels.</p>
543
544 <h5>angle</h5>
545 <p>Apply the effect along this angle.</p>
546
547 <h5>exception</h5>
548 <p>return any errors or warnings in this structure.</p>
549
550  </div>
551 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="PreviewImage">PreviewImage</a></h2>
552 <div class="doc-section">
553
554 <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>
555
556 <p>The format of the PreviewImages method is:</p>
557
558 <pre class="code">
559   Image *PreviewImages(const Image *image,const PreviewType preview,
560     ExceptionInfo *exception)
561 </pre>
562
563 <p>A description of each parameter follows:</p>
564
565 <h5>image</h5>
566 <p>the image.</p>
567
568 <h5>preview</h5>
569 <p>the image processing operation.</p>
570
571 <h5>exception</h5>
572 <p>return any errors or warnings in this structure.</p>
573
574  </div>
575 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="RadialBlurImage">RadialBlurImage</a></h2>
576 <div class="doc-section">
577
578 <p>RadialBlurImage() applies a radial blur to the image.</p>
579
580 <p>Andrew Protano contributed this effect.</p>
581
582 <p>The format of the RadialBlurImage method is:</p>
583
584 <pre class="code">
585       Image *RadialBlurImage(const Image *image,const double angle,
586   ExceptionInfo *exception)
587       Image *RadialBlurImageChannel(const Image *image,const ChannelType channel,
588   const double angle,ExceptionInfo *exception)
589 </pre>
590
591 <p>A description of each parameter follows:</p>
592
593 <h5>image</h5>
594 <p>the image.</p>
595
596 <h5>channel</h5>
597 <p>the channel type.</p>
598
599 <h5>angle</h5>
600 <p>the angle of the radial blur.</p>
601
602 <h5>exception</h5>
603 <p>return any errors or warnings in this structure.</p>
604
605  </div>
606 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SelectiveBlurImage">SelectiveBlurImage</a></h2>
607 <div class="doc-section">
608
609 <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>
610
611 <p>The format of the SelectiveBlurImage method is:</p>
612
613 <pre class="code">
614   Image *SelectiveBlurImage(const Image *image,const double radius,
615     const double sigma,const double threshold,ExceptionInfo *exception)
616   Image *SelectiveBlurImageChannel(const Image *image,
617     const ChannelType channel,const double radius,const double sigma,
618     const double threshold,ExceptionInfo *exception)
619 </pre>
620
621 <p>A description of each parameter follows:</p>
622
623 <h5>image</h5>
624 <p>the image.</p>
625
626 <h5>channel</h5>
627 <p>the channel type.</p>
628
629 <h5>radius</h5>
630 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
631
632 <h5>sigma</h5>
633 <p>the standard deviation of the Gaussian, in pixels.</p>
634
635 <h5>threshold</h5>
636 <p>only pixels within this contrast threshold are included in the blur operation.</p>
637
638 <h5>exception</h5>
639 <p>return any errors or warnings in this structure.</p>
640
641  </div>
642 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ShadeImage">ShadeImage</a></h2>
643 <div class="doc-section">
644
645 <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>
646
647 <p>The format of the ShadeImage method is:</p>
648
649 <pre class="code">
650   Image *ShadeImage(const Image *image,const MagickBooleanType gray,
651     const double azimuth,const double elevation,ExceptionInfo *exception)
652 </pre>
653
654 <p>A description of each parameter follows:</p>
655
656 <h5>image</h5>
657 <p>the image.</p>
658
659 <h5>gray</h5>
660 <p>A value other than zero shades the intensity of each pixel.</p>
661
662 <h5>azimuth, elevation</h5>
663 <p>Define the light source direction.</p>
664
665 <h5>exception</h5>
666 <p>return any errors or warnings in this structure.</p>
667
668  </div>
669 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SharpenImage">SharpenImage</a></h2>
670 <div class="doc-section">
671
672 <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>
673
674 <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>
675
676 <p>The format of the SharpenImage method is:</p>
677
678 <pre class="code">
679       Image *SharpenImage(const Image *image,const double radius,
680   const double sigma,ExceptionInfo *exception)
681       Image *SharpenImageChannel(const Image *image,const ChannelType channel,
682   const double radius,const double sigma,ExceptionInfo *exception)
683 </pre>
684
685 <p>A description of each parameter follows:</p>
686
687 <h5>image</h5>
688 <p>the image.</p>
689
690 <h5>channel</h5>
691 <p>the channel type.</p>
692
693 <h5>radius</h5>
694 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
695
696 <h5>sigma</h5>
697 <p>the standard deviation of the Laplacian, in pixels.</p>
698
699 <h5>exception</h5>
700 <p>return any errors or warnings in this structure.</p>
701
702  </div>
703 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SpreadImage">SpreadImage</a></h2>
704 <div class="doc-section">
705
706 <p>SpreadImage() is a special effects method that randomly displaces each pixel in a block defined by the radius parameter.</p>
707
708 <p>The format of the SpreadImage method is:</p>
709
710 <pre class="code">
711   Image *SpreadImage(const Image *image,const double radius,
712     ExceptionInfo *exception)
713 </pre>
714
715 <p>A description of each parameter follows:</p>
716
717 <h5>image</h5>
718 <p>the image.</p>
719
720 <h5>radius</h5>
721 <p>Choose a random pixel in a neighborhood of this extent.</p>
722
723 <h5>exception</h5>
724 <p>return any errors or warnings in this structure.</p>
725
726  </div>
727 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="UnsharpMaskImage">UnsharpMaskImage</a></h2>
728 <div class="doc-section">
729
730 <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>
731
732 <p>The format of the UnsharpMaskImage method is:</p>
733
734 <pre class="code">
735       Image *UnsharpMaskImage(const Image *image,const double radius,
736   const double sigma,const double amount,const double threshold,
737   ExceptionInfo *exception)
738       Image *UnsharpMaskImageChannel(const Image *image,
739   const ChannelType channel,const double radius,const double sigma,
740   const double amount,const double threshold,ExceptionInfo *exception)
741 </pre>
742
743 <p>A description of each parameter follows:</p>
744
745 <h5>image</h5>
746 <p>the image.</p>
747
748 <h5>channel</h5>
749 <p>the channel type.</p>
750
751 <h5>radius</h5>
752 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
753
754 <h5>sigma</h5>
755 <p>the standard deviation of the Gaussian, in pixels.</p>
756
757 <h5>amount</h5>
758 <p>the percentage of the difference between the original and the blur image that is added back into the original.</p>
759
760 <h5>threshold</h5>
761 <p>the threshold in pixels needed to apply the diffence amount.</p>
762
763 <h5>exception</h5>
764 <p>return any errors or warnings in this structure.</p>
765
766  </div>
767 \r
768 </div>\r
769 \r
770 <div id="linkbar">\r
771     <span id="linkbar-west">&nbsp;</span>\r
772     <span id="linkbar-center">\r
773       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
774       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
775     </span>\r
776     <span id="linkbar-east">&nbsp;</span>\r
777   </div>\r
778   <div class="footer">\r
779     <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>\r
780     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
781   </div>\r
782   <div style="clear: both; margin: 0; width: 100%; "></div>\r
783   <script type="text/javascript">\r
784     var _gaq = _gaq || [];\r
785     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
786     _gaq.push(['_trackPageview']);\r
787 \r
788     (function() {\r
789       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
790       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
791       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
792     })();\r
793   </script>\r
794 </body>\r
795 </html>\r