]> 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" 
2   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html version="-//W3C//DTD XHTML 1.1//EN"
4       xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
5       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6       xsi:schemaLocation="http://www.w3.org/1999/xhtml
7                           http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">
8 <head>
9   <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
10   <meta name="google-site-verification" content="MxsMq6bdLOx0KSuz1MY6yG9ZTIJ7_7DVRfl5NCAT5Yg"/>
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-2013 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" />
31   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
32   <!-- Add jQuery library -->
33   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
34   
35   <!-- Optionaly include easing and/or mousewheel plugins -->
36   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.easing-1.3.pack.js"></script>
37   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.mousewheel-3.0.6.pack.js"></script>
38   
39   <!-- Add fancyBox -->
40   <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/jquery.fancybox.css?v=2.0.4" type="text/css" media="screen" />
41   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.fancybox.pack.js?v=2.0.4"></script>
42   
43   <!-- Optionaly include button and/or thumbnail helpers -->
44   <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-buttons.css?v=2.0.4" type="text/css" media="screen" />
45   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-buttons.js?v=2.0.4"></script>
46   
47   <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-thumbs.css?v=2.0.4" type="text/css" media="screen" />
48   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-thumbs.js?v=2.0.4"></script>
49   <script type="text/javascript">
50         $(document).ready(function() {
51                 $(".fancybox").fancybox();
52         });
53   </script>
54   <!-- ImageMagick style -->
55   <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
56   <style type="text/css" media="all">
57     @import url("../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../www/magick.css");
58   </style>
59 </head>
60
61 <body id="www-imagemagick-org">
62 <div class="titlebar">
63 <div style="margin: 17px auto; float: left;">
64   <script type="text/javascript">
65   <!--
66     google_ad_client = "pub-3129977114552745";
67     google_ad_slot = "5439289906";
68     google_ad_width = 728;
69     google_ad_height = 90;
70   //-->
71   </script>
72   <script type="text/javascript"
73     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
74   </script>
75 </div>
76 <a href="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../discourse-server">
77   <img src="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../images/logo.jpg"
78   alt="ImageMagick Logo"
79   style="width: 123px; height: 118px; border: 0px; float: right;" /></a>
80 <a href="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../index.html">
81   <img src="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../images/sprite.jpg"
82   alt="ImageMagick Sprite"
83   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
84 </div>
85
86 <div class="westbar">
87
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>
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>
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>
154 <div class="menu">
155   <a title="Search" href="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../www/search.html">Search</a>
156 </div>
157 <div class="sep"></div>
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>
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><!-- 201208010120 mickey@163... -->
170 <div class="sponsbox">
171 <div class="sponsor">
172   <a rel="follow" title="Sponsor: The Fastest &amp; Easiest Way to Find Images" href="http://www.graphicsfactory.com">The Fastest &amp; Easiest Way to Find Images</a><!-- 201210010270 graphicsfac... -->
173 </div>
174 <div class="sponsor">
175   <a rel="follow" title="Sponsor: VPS" href="http://www.interdominios.com/vps">VPS</a><!-- 201209010090 barsh@inter... -->
176 </div>
177 <div class="sponsor">
178   <a rel="follow" title="Werbebanner Werbeplane" href="http://www.allesbanner.de">Werbebanner Werbeplane</a><!-- 201212010450 info@druck... -->
179 </div>
180 <div class="sponsor">
181   <a rel="follow" title="Entertainment News &amp; Photos" href="http://www.zimbio.com">Entertainment News &amp; Photos</a><!-- 201211010540 bd@zimb... -->
182 </div>
183 <div class="sponsor">
184   <a rel="follow" title="Sponsor: LED24" href="http://led24.de/">LED24</a><!-- 201207010270 info@led24... -->
185 </div>
186 <div class="sponsor">
187   <a rel="follow" title="Sponsor: Best Website Hosting" href="http://www.top-cheap-web-hosting.com">Best Website Hosting</a><!-- 201304010090 eunge.liu-->
188 </div>
189 <div class="sponsor">
190   <a rel="follow" title="Android Tablet" href="http://www.dinodirect.com/ipads-tablets/">Android Tablet</a><!-- 201208010120 mickey@163... -->
191 </div>
192 <div class="sponsor">
193   <a rel="follow" title="Sponsor: Web Site Hosting" href="http://webhostinggeeks.com">Web Site Hosting</a><!-- 201302010900 funds@enmob... -->
194 </div>
195 <div class="sponsor">
196    <a rel="follow" title="Sponsor: Premium Quality Stock Photos" href="http://www.f1online.pro/en/">Premium Quality Stock Photos</a><!-- 2012080100540 ... -->
197 </div>
198 <div class="sponsor">
199    <a rel="follow" title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 2012070100250 ... -->
200 </div>
201 <div class="sponsor">
202   <a rel="follow" title="Sponsor: Managed Server" href="http://www.robhost.de">Managed Server</a><!-- 201210010720 klikics... -->
203 </div>
204 <div class="sponsor">
205   <a rel="follow" title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201303011500 r.leo -->
206 </div>
207 <div class="sponsor">
208    <a rel="follow" title="Sponsor: Free Catalogs" href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 20120801000600 -->
209 </div>
210 <div class="sponsor">
211    <a rel="follow" title="Sponsor: Waschmaschinen Reparatur Berlin" href="http://www.waschmaschinen-reparaturen-berlin.de">Waschmaschinen Reparatur Berlin</a><!-- 2012070100030 Temurbas@autoteile-->
212 </div>
213 </div>
214 </div>
215 </div>
216
217 <div class="eastbar">
218   <div class="g-plusone" id="gplusone"></div>
219   <script type="text/javascript">
220     window.___gcfg = {
221       lang: 'en-US'
222     };
223
224     (function() {
225       var po = document.createElement('script');
226       po.type = 'text/javascript'; po.async = true;
227       po.src = 'https://apis.google.com/js/plusone.js';
228       var script = document.getElementsByTagName('script')[0];
229       script.parentNode.insertBefore(po, script);
230     })();
231     var gplusone = document.getElementById("gplusone");
232     gplusone.setAttribute("data-size","medium");
233     gplusone.setAttribute("data-count","false");
234   </script>
235 </div>
236
237 <div class="main">
238
239 <h1>Module effect Methods</h1>
240 <p class="navigation-index">[<a href="effect.html#AdaptiveBlurImage">AdaptiveBlurImage</a> &bull; <a href="effect.html#AdaptiveSharpenImage">AdaptiveSharpenImage</a> &bull; <a href="effect.html#BlurImage">BlurImage</a> &bull; <a href="effect.html#ConvolveImage">ConvolveImage</a> &bull; <a href="effect.html#DespeckleImage">DespeckleImage</a> &bull; <a href="effect.html#EdgeImage">EdgeImage</a> &bull; <a href="effect.html#EmbossImage">EmbossImage</a> &bull; <a href="effect.html#FilterImage">FilterImage</a> &bull; <a href="effect.html#GaussianBlurImage">GaussianBlurImage</a> &bull; <a href="effect.html#MotionBlurImage">MotionBlurImage</a> &bull; <a href="effect.html#PreviewImage">PreviewImage</a> &bull; <a href="effect.html#RadialBlurImage">RadialBlurImage</a> &bull; <a href="effect.html#SelectiveBlurImage">SelectiveBlurImage</a> &bull; <a href="effect.html#ShadeImage">ShadeImage</a> &bull; <a href="effect.html#SharpenImage">SharpenImage</a> &bull; <a href="effect.html#SpreadImage">SpreadImage</a> &bull; <a href="effect.html#UnsharpMaskImage">UnsharpMaskImage</a>]</p>
241
242 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
243 <div class="doc-section">
244
245 <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>
246
247 <p>The format of the AdaptiveBlurImage method is:</p>
248
249 <pre class="code">
250   Image *AdaptiveBlurImage(const Image *image,const double radius,
251     const double sigma,ExceptionInfo *exception)
252   Image *AdaptiveBlurImageChannel(const Image *image,
253     const ChannelType channel,double radius,const double sigma,
254     ExceptionInfo *exception)
255 </pre>
256
257 <p>A description of each parameter follows:</p>
258
259 <h5>image</h5>
260 <p>the image.</p>
261
262 <h5>channel</h5>
263 <p>the channel type.</p>
264
265 <h5>radius</h5>
266 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
267
268 <h5>sigma</h5>
269 <p>the standard deviation of the Laplacian, in pixels.</p>
270
271 <h5>exception</h5>
272 <p>return any errors or warnings in this structure.</p>
273
274  </div>
275 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
276 <div class="doc-section">
277
278 <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>
279
280 <p>The format of the AdaptiveSharpenImage method is:</p>
281
282 <pre class="code">
283   Image *AdaptiveSharpenImage(const Image *image,const double radius,
284     const double sigma,ExceptionInfo *exception)
285   Image *AdaptiveSharpenImageChannel(const Image *image,
286     const ChannelType channel,double radius,const double sigma,
287     ExceptionInfo *exception)
288 </pre>
289
290 <p>A description of each parameter follows:</p>
291
292 <h5>image</h5>
293 <p>the image.</p>
294
295 <h5>channel</h5>
296 <p>the channel type.</p>
297
298 <h5>radius</h5>
299 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
300
301 <h5>sigma</h5>
302 <p>the standard deviation of the Laplacian, in pixels.</p>
303
304 <h5>exception</h5>
305 <p>return any errors or warnings in this structure.</p>
306
307  </div>
308 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="BlurImage">BlurImage</a></h2>
309 <div class="doc-section">
310
311 <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>
312
313 <p>BlurImage() differs from GaussianBlurImage() in that it uses a separable kernel which is faster but mathematically equivalent to the non-separable kernel.</p>
314
315 <p>The format of the BlurImage method is:</p>
316
317 <pre class="code">
318   Image *BlurImage(const Image *image,const double radius,
319     const double sigma,ExceptionInfo *exception)
320   Image *BlurImageChannel(const Image *image,const ChannelType channel,
321     const double radius,const double sigma,ExceptionInfo *exception)
322 </pre>
323
324 <p>A description of each parameter follows:</p>
325
326 <h5>image</h5>
327 <p>the image.</p>
328
329 <h5>channel</h5>
330 <p>the channel type.</p>
331
332 <h5>radius</h5>
333 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
334
335 <h5>sigma</h5>
336 <p>the standard deviation of the Gaussian, in pixels.</p>
337
338 <h5>exception</h5>
339 <p>return any errors or warnings in this structure.</p>
340
341  </div>
342 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ConvolveImage">ConvolveImage</a></h2>
343 <div class="doc-section">
344
345 <p>ConvolveImage() applies a custom convolution kernel to the image.</p>
346
347 <p>The format of the ConvolveImage method is:</p>
348
349 <pre class="code">
350   Image *ConvolveImage(const Image *image,const size_t order,
351     const double *kernel,ExceptionInfo *exception)
352   Image *ConvolveImageChannel(const Image *image,const ChannelType channel,
353     const size_t order,const double *kernel,ExceptionInfo *exception)
354 </pre>
355
356 <p>A description of each parameter follows:</p>
357
358 <h5>image</h5>
359 <p>the image.</p>
360
361 <h5>channel</h5>
362 <p>the channel type.</p>
363
364 <h5>order</h5>
365 <p>the number of columns and rows in the filter kernel.</p>
366
367 <h5>kernel</h5>
368 <p>An array of double representing the convolution kernel.</p>
369
370 <h5>exception</h5>
371 <p>return any errors or warnings in this structure.</p>
372
373  </div>
374 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="DespeckleImage">DespeckleImage</a></h2>
375 <div class="doc-section">
376
377 <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>
378
379 <p>The format of the DespeckleImage method is:</p>
380
381 <pre class="code">
382   Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
383 </pre>
384
385 <p>A description of each parameter follows:</p>
386
387 <h5>image</h5>
388 <p>the image.</p>
389
390 <h5>exception</h5>
391 <p>return any errors or warnings in this structure.</p>
392
393  </div>
394 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EdgeImage">EdgeImage</a></h2>
395 <div class="doc-section">
396
397 <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>
398
399 <p>The format of the EdgeImage method is:</p>
400
401 <pre class="code">
402   Image *EdgeImage(const Image *image,const double radius,
403     ExceptionInfo *exception)
404 </pre>
405
406 <p>A description of each parameter follows:</p>
407
408 <h5>image</h5>
409 <p>the image.</p>
410
411 <h5>radius</h5>
412 <p>the radius of the pixel neighborhood.</p>
413
414 <h5>exception</h5>
415 <p>return any errors or warnings in this structure.</p>
416
417  </div>
418 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EmbossImage">EmbossImage</a></h2>
419 <div class="doc-section">
420
421 <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>
422
423 <p>The format of the EmbossImage method is:</p>
424
425 <pre class="code">
426   Image *EmbossImage(const Image *image,const double radius,
427     const double sigma,ExceptionInfo *exception)
428 </pre>
429
430 <p>A description of each parameter follows:</p>
431
432 <h5>image</h5>
433 <p>the image.</p>
434
435 <h5>radius</h5>
436 <p>the radius of the pixel neighborhood.</p>
437
438 <h5>sigma</h5>
439 <p>the standard deviation of the Gaussian, in pixels.</p>
440
441 <h5>exception</h5>
442 <p>return any errors or warnings in this structure.</p>
443
444  </div>
445 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="FilterImage">FilterImage</a></h2>
446 <div class="doc-section">
447
448 <p>FilterImage() applies a custom convolution kernel to the image.</p>
449
450 <p>The format of the FilterImage method is:</p>
451
452 <pre class="code">
453   Image *FilterImage(const Image *image,const KernelInfo *kernel,
454     ExceptionInfo *exception)
455   Image *FilterImageChannel(const Image *image,const ChannelType channel,
456     const KernelInfo *kernel,ExceptionInfo *exception)
457 </pre>
458
459 <p>A description of each parameter follows:</p>
460
461 <h5>image</h5>
462 <p>the image.</p>
463
464 <h5>channel</h5>
465 <p>the channel type.</p>
466
467 <h5>kernel</h5>
468 <p>the filtering kernel.</p>
469
470 <h5>exception</h5>
471 <p>return any errors or warnings in this structure.</p>
472
473  </div>
474 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="GaussianBlurImage">GaussianBlurImage</a></h2>
475 <div class="doc-section">
476
477 <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>
478
479 <p>The format of the GaussianBlurImage method is:</p>
480
481 <pre class="code">
482   Image *GaussianBlurImage(const Image *image,onst double radius,
483     const double sigma,ExceptionInfo *exception)
484   Image *GaussianBlurImageChannel(const Image *image,
485     const ChannelType channel,const double radius,const double sigma,
486     ExceptionInfo *exception)
487 </pre>
488
489 <p>A description of each parameter follows:</p>
490
491 <h5>image</h5>
492 <p>the image.</p>
493
494 <h5>channel</h5>
495 <p>the channel type.</p>
496
497 <h5>radius</h5>
498 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
499
500 <h5>sigma</h5>
501 <p>the standard deviation of the Gaussian, in pixels.</p>
502
503 <h5>exception</h5>
504 <p>return any errors or warnings in this structure.</p>
505
506  </div>
507 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="MotionBlurImage">MotionBlurImage</a></h2>
508 <div class="doc-section">
509
510 <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>
511
512 <p>Andrew Protano contributed this effect.</p>
513
514 <p>The format of the MotionBlurImage method is:</p>
515
516 <pre class="code">
517       Image *MotionBlurImage(const Image *image,const double radius,
518   const double sigma,const double angle,ExceptionInfo *exception)
519       Image *MotionBlurImageChannel(const Image *image,const ChannelType channel,
520   const double radius,const double sigma,const double angle,
521   ExceptionInfo *exception)
522 </pre>
523
524 <p>A description of each parameter follows:</p>
525
526 <h5>image</h5>
527 <p>the image.</p>
528
529 <h5>channel</h5>
530 <p>the channel type.</p>
531
532 <h5>radius</h5>
533 <p>the radius of the Gaussian, in pixels, not counting the center</p>
534 <h5>radius</h5>
535 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
536
537 <h5>sigma</h5>
538 <p>the standard deviation of the Gaussian, in pixels.</p>
539
540 <h5>angle</h5>
541 <p>Apply the effect along this angle.</p>
542
543 <h5>exception</h5>
544 <p>return any errors or warnings in this structure.</p>
545
546  </div>
547 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="PreviewImage">PreviewImage</a></h2>
548 <div class="doc-section">
549
550 <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>
551
552 <p>The format of the PreviewImages method is:</p>
553
554 <pre class="code">
555   Image *PreviewImages(const Image *image,const PreviewType preview,
556     ExceptionInfo *exception)
557 </pre>
558
559 <p>A description of each parameter follows:</p>
560
561 <h5>image</h5>
562 <p>the image.</p>
563
564 <h5>preview</h5>
565 <p>the image processing operation.</p>
566
567 <h5>exception</h5>
568 <p>return any errors or warnings in this structure.</p>
569
570  </div>
571 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="RadialBlurImage">RadialBlurImage</a></h2>
572 <div class="doc-section">
573
574 <p>RadialBlurImage() applies a radial blur to the image.</p>
575
576 <p>Andrew Protano contributed this effect.</p>
577
578 <p>The format of the RadialBlurImage method is:</p>
579
580 <pre class="code">
581       Image *RadialBlurImage(const Image *image,const double angle,
582   ExceptionInfo *exception)
583       Image *RadialBlurImageChannel(const Image *image,const ChannelType channel,
584   const double angle,ExceptionInfo *exception)
585 </pre>
586
587 <p>A description of each parameter follows:</p>
588
589 <h5>image</h5>
590 <p>the image.</p>
591
592 <h5>channel</h5>
593 <p>the channel type.</p>
594
595 <h5>angle</h5>
596 <p>the angle of the radial blur.</p>
597
598 <h5>exception</h5>
599 <p>return any errors or warnings in this structure.</p>
600
601  </div>
602 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SelectiveBlurImage">SelectiveBlurImage</a></h2>
603 <div class="doc-section">
604
605 <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>
606
607 <p>The format of the SelectiveBlurImage method is:</p>
608
609 <pre class="code">
610   Image *SelectiveBlurImage(const Image *image,const double radius,
611     const double sigma,const double threshold,ExceptionInfo *exception)
612   Image *SelectiveBlurImageChannel(const Image *image,
613     const ChannelType channel,const double radius,const double sigma,
614     const double threshold,ExceptionInfo *exception)
615 </pre>
616
617 <p>A description of each parameter follows:</p>
618
619 <h5>image</h5>
620 <p>the image.</p>
621
622 <h5>channel</h5>
623 <p>the channel type.</p>
624
625 <h5>radius</h5>
626 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
627
628 <h5>sigma</h5>
629 <p>the standard deviation of the Gaussian, in pixels.</p>
630
631 <h5>threshold</h5>
632 <p>only pixels within this contrast threshold are included in the blur operation.</p>
633
634 <h5>exception</h5>
635 <p>return any errors or warnings in this structure.</p>
636
637  </div>
638 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ShadeImage">ShadeImage</a></h2>
639 <div class="doc-section">
640
641 <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>
642
643 <p>The format of the ShadeImage method is:</p>
644
645 <pre class="code">
646   Image *ShadeImage(const Image *image,const MagickBooleanType gray,
647     const double azimuth,const double elevation,ExceptionInfo *exception)
648 </pre>
649
650 <p>A description of each parameter follows:</p>
651
652 <h5>image</h5>
653 <p>the image.</p>
654
655 <h5>gray</h5>
656 <p>A value other than zero shades the intensity of each pixel.</p>
657
658 <h5>azimuth, elevation</h5>
659 <p>Define the light source direction.</p>
660
661 <h5>exception</h5>
662 <p>return any errors or warnings in this structure.</p>
663
664  </div>
665 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SharpenImage">SharpenImage</a></h2>
666 <div class="doc-section">
667
668 <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>
669
670 <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>
671
672 <p>The format of the SharpenImage method is:</p>
673
674 <pre class="code">
675       Image *SharpenImage(const Image *image,const double radius,
676   const double sigma,ExceptionInfo *exception)
677       Image *SharpenImageChannel(const Image *image,const ChannelType channel,
678   const double radius,const double sigma,ExceptionInfo *exception)
679 </pre>
680
681 <p>A description of each parameter follows:</p>
682
683 <h5>image</h5>
684 <p>the image.</p>
685
686 <h5>channel</h5>
687 <p>the channel type.</p>
688
689 <h5>radius</h5>
690 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
691
692 <h5>sigma</h5>
693 <p>the standard deviation of the Laplacian, in pixels.</p>
694
695 <h5>exception</h5>
696 <p>return any errors or warnings in this structure.</p>
697
698  </div>
699 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SpreadImage">SpreadImage</a></h2>
700 <div class="doc-section">
701
702 <p>SpreadImage() is a special effects method that randomly displaces each pixel in a block defined by the radius parameter.</p>
703
704 <p>The format of the SpreadImage method is:</p>
705
706 <pre class="code">
707   Image *SpreadImage(const Image *image,const double radius,
708     ExceptionInfo *exception)
709 </pre>
710
711 <p>A description of each parameter follows:</p>
712
713 <h5>image</h5>
714 <p>the image.</p>
715
716 <h5>radius</h5>
717 <p>Choose a random pixel in a neighborhood of this extent.</p>
718
719 <h5>exception</h5>
720 <p>return any errors or warnings in this structure.</p>
721
722  </div>
723 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="UnsharpMaskImage">UnsharpMaskImage</a></h2>
724 <div class="doc-section">
725
726 <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>
727
728 <p>The format of the UnsharpMaskImage method is:</p>
729
730 <pre class="code">
731       Image *UnsharpMaskImage(const Image *image,const double radius,
732   const double sigma,const double amount,const double threshold,
733   ExceptionInfo *exception)
734       Image *UnsharpMaskImageChannel(const Image *image,
735   const ChannelType channel,const double radius,const double sigma,
736   const double amount,const double threshold,ExceptionInfo *exception)
737 </pre>
738
739 <p>A description of each parameter follows:</p>
740
741 <h5>image</h5>
742 <p>the image.</p>
743
744 <h5>channel</h5>
745 <p>the channel type.</p>
746
747 <h5>radius</h5>
748 <p>the radius of the Gaussian, in pixels, not counting the center pixel.</p>
749
750 <h5>sigma</h5>
751 <p>the standard deviation of the Gaussian, in pixels.</p>
752
753 <h5>amount</h5>
754 <p>the percentage of the difference between the original and the blur image that is added back into the original.</p>
755
756 <h5>threshold</h5>
757 <p>the threshold in pixels needed to apply the diffence amount.</p>
758
759 <h5>exception</h5>
760 <p>return any errors or warnings in this structure.</p>
761
762  </div>
763
764 </div>
765
766 <div id="linkbar">
767     <span id="linkbar-west">&nbsp;</span>
768     <span id="linkbar-center">
769       <a href="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../discourse-server">Discourse Server</a> &bull;
770       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
771     </span>
772     <span id="linkbar-east">&nbsp;</span>
773   </div>
774   <div class="footer">
775     <span id="footer-west">&copy; 1999-2013 ImageMagick Studio LLC</span>
776     <span id="footer-east"> <a href="http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
777   </div>
778   <div style="clear: both; margin: 0; width: 100%; "></div>
779   <script type="text/javascript">
780     var _gaq = _gaq || [];
781     _gaq.push(['_setAccount', 'UA-17690367-1']);
782     _gaq.push(['_trackPageview']);
783
784     (function() {
785       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
786       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
787       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
788     })();
789   </script>
790 </body>
791 </html>