]> 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.0 Strict//EN"\r
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">\r
4 <head>\r
5   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\r
6   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>\r
7   <title>ImageMagick: MagickCore, C API for ImageMagick: Add an Effect</title/>
8   <meta http-equiv="Content-Language" content="en-US"/>
9   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
10   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
11   <meta name="Application-name" content="ImageMagick"/>
12   <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.  ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.  The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
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, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
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-2010 ImageMagick Studio LLC"/>
23   <meta name="Distribution" content="Global"/>
24   <link rel="icon" href="../../images/wand.png"  sizes="32x32"/>
25   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/x-icon"/>
26   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>\r
27   <style type="text/css" media="all">\r
28     @import url("../../www/magick.css");\r
29   </style>\r
30 </head>\r
31 \r
32 <body id="www-imagemagick-org">\r
33 <div class="titlebar">\r
34 <a href="../../index.html">\r
35   <img src="../../images/script.png" alt="[ImageMagick]"\r
36   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
37 <a href="http://www.networkredux.com">\r
38   <img src="../../images/networkredux.png" alt="[sponsor]"\r
39   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
40 <a href="http://www.imagemagick.org/discourse-server/">\r
41   <img src="../../images/logo.jpg" alt=""\r
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
43 <a href="../../index.html">\r
44   <img src="../../images/sprite.jpg" alt=""\r
45   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
46 </div>\r
47 \r
48 <div class="westbar">\r
49 \r
50 <div class="menu">
51   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
52 </div>
53 <div class="sep"></div>\r
54 <div class="menu">
55   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
56 </div>
57 <div class="sub">
58     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
59 </div>
60 <div class="sub">
61     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
62 </div>
63 <div class="sub">
64     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
65 </div>
66 <div class="sep"></div>\r
67 <div class="menu">
68   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
69 </div>
70 <div class="sub">
71     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
72 </div>
73 <div class="sub">
74     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
75 </div>
76 <div class="sub">
77     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
78 </div>
79 <div class="menu">
80   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
81 </div>
82 <div class="sub">
83     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
84 </div>
85 <div class="sub">
86     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
87 </div>
88 <div class="sub">
89     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
90 </div>
91 <div class="sub">
92     <a title="Program Interface: Magick++" href="../../Magick++/">Magick++</a>
93 </div>
94 <div class="sep"></div>\r
95 <div  class="menu">
96    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
97 </div>
98 <div class="sub">
99     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
100 </div>
101 <div class="sub">
102     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
103  </div>
104 <div class="menu">
105   <a title="Resources" href="../../www/resources.html">Resources</a>
106 </div>
107 <div class="menu">
108   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
109 </div>
110 <div class="menu">
111   <a title="Download" href="../../www/download.html">Download</a>
112 </div>
113 <div class="sep"></div>\r
114 <div class="menu">
115   <a title="Search" href="../http://www.imagemagick.org/script/search.php">Search</a>
116 </div>
117 <div class="sep"></div>\r
118 <div class="menu">
119   <a title="Site Map"href="../../www/sitemap.html">Site Map</a>
120 </div>
121 <div  class="sub">
122     <a title="Site Map: Links"href="../../www/links.html">Links</a>
123 </div>
124 <div class="sep"></div>\r
125 <div  class="menu">
126   <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
127
128 <div class="sponsbox">
129 <div  class="sponsor">
130    <a title="Sponsor: Free Catalogs" href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 20120801000600 -->
131 </div>
132 <div  class="sponsor">
133   <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
134 </div>
135 <div  class="sponsor">
136   <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
137 </div>
138 <div  class="sponsor">
139   <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
140 </div>
141 <div  class="sponsor">
142   <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
143 </div>
144 <div  class="sponsor">
145   <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
146 </div>
147 <div  class="sponsor">
148   <a title="Sponsor: Diamonds are a Girls Best Friend" href="http://www.schmuck.org">Diamonds are a Girls Best Friend</a><!-- 201101010600 Peterssen-->
149 </div>
150 <div  class="sponsor">
151    <a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
152 </div>
153 </div>
154 </div>
155 </div>\r
156 \r
157 <div class="eastbar">\r
158   <script type="text/javascript">\r
159   <!--\r
160     google_ad_client = "pub-3129977114552745";\r
161     google_ad_slot = "0574824969";\r
162     google_ad_width = 160;\r
163     google_ad_height = 600;\r
164   //-->\r
165   </script>\r
166   <script type="text/javascript"\r
167     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
168   </script>\r
169 </div>\r
170 \r
171 <div class="main">\r
172 \r
173 <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="#MedianFilterImage">MedianFilterImage</a> &bull; <a href="#MotionBlurImage">MotionBlurImage</a> &bull; <a href="#PreviewImage">PreviewImage</a> &bull; <a href="#RadialBlurImage">RadialBlurImage</a> &bull; <a href="#ReduceNoiseImage">ReduceNoiseImage</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>
174
175 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
176 _8c.html" target="source" name="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
177 <div class="doc-section">
178
179 <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></ol>
180
181 <p>The format of the AdaptiveBlurImage method is:</p>
182
183 <pre class="code">
184   Image *AdaptiveBlurImage(const Image *image,const double radius,
185     const double sigma,ExceptionInfo *exception)
186   Image *AdaptiveBlurImageChannel(const Image *image,
187     const ChannelType channel,double radius,const double sigma,
188     ExceptionInfo *exception)
189 </pre>
190
191 <p>A description of each parameter follows:</p></ol>
192
193 <h5>image</h5>
194 <ol><p>the image.</p></ol>
195
196 <h5>channel</h5>
197 <ol><p>the channel type.</p></ol>
198
199 <h5>radius</h5>
200 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
201
202 <h5>sigma</h5>
203 <ol><p>the standard deviation of the Laplacian, in pixels.</p></ol>
204
205 <h5>exception</h5>
206 <ol><p>return any errors or warnings in this structure.</p></ol>
207
208  </div>
209 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
210 _8c.html" target="source" name="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
211 <div class="doc-section">
212
213 <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></ol>
214
215 <p>The format of the AdaptiveSharpenImage method is:</p>
216
217 <pre class="code">
218   Image *AdaptiveSharpenImage(const Image *image,const double radius,
219     const double sigma,ExceptionInfo *exception)
220   Image *AdaptiveSharpenImageChannel(const Image *image,
221     const ChannelType channel,double radius,const double sigma,
222     ExceptionInfo *exception)
223 </pre>
224
225 <p>A description of each parameter follows:</p></ol>
226
227 <h5>image</h5>
228 <ol><p>the image.</p></ol>
229
230 <h5>channel</h5>
231 <ol><p>the channel type.</p></ol>
232
233 <h5>radius</h5>
234 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
235
236 <h5>sigma</h5>
237 <ol><p>the standard deviation of the Laplacian, in pixels.</p></ol>
238
239 <h5>exception</h5>
240 <ol><p>return any errors or warnings in this structure.</p></ol>
241
242  </div>
243 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
244 _8c.html" target="source" name="BlurImage">BlurImage</a></h2>
245 <div class="doc-section">
246
247 <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></ol>
248
249 <p>BlurImage() differs from GaussianBlurImage() in that it uses a separable kernel which is faster but mathematically equivalent to the non-separable kernel.</p></ol>
250
251 <p>The format of the BlurImage method is:</p>
252
253 <pre class="code">
254   Image *BlurImage(const Image *image,const double radius,
255     const double sigma,ExceptionInfo *exception)
256   Image *BlurImageChannel(const Image *image,const ChannelType channel,
257     const double radius,const double sigma,ExceptionInfo *exception)
258 </pre>
259
260 <p>A description of each parameter follows:</p></ol>
261
262 <h5>image</h5>
263 <ol><p>the image.</p></ol>
264
265 <h5>channel</h5>
266 <ol><p>the channel type.</p></ol>
267
268 <h5>radius</h5>
269 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
270
271 <h5>sigma</h5>
272 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
273
274 <h5>exception</h5>
275 <ol><p>return any errors or warnings in this structure.</p></ol>
276
277  </div>
278 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
279 _8c.html" target="source" name="ConvolveImage">ConvolveImage</a></h2>
280 <div class="doc-section">
281
282 <p>ConvolveImage() applies a custom convolution kernel to the image.</p></ol>
283
284 <p>The format of the ConvolveImage method is:</p>
285
286 <pre class="code">
287   Image *ConvolveImage(const Image *image,const size_t order,
288     const double *kernel,ExceptionInfo *exception)
289   Image *ConvolveImageChannel(const Image *image,const ChannelType channel,
290     const size_t order,const double *kernel,ExceptionInfo *exception)
291 </pre>
292
293 <p>A description of each parameter follows:</p></ol>
294
295 <h5>image</h5>
296 <ol><p>the image.</p></ol>
297
298 <h5>channel</h5>
299 <ol><p>the channel type.</p></ol>
300
301 <h5>order</h5>
302 <ol><p>the number of columns and rows in the filter kernel.</p></ol>
303
304 <h5>kernel</h5>
305 <ol><p>An array of double representing the convolution kernel.</p></ol>
306
307 <h5>exception</h5>
308 <ol><p>return any errors or warnings in this structure.</p></ol>
309
310  </div>
311 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
312 _8c.html" target="source" name="DespeckleImage">DespeckleImage</a></h2>
313 <div class="doc-section">
314
315 <p>DespeckleImage() reduces the speckle noise in an image while perserving the edges of the original image.</p></ol>
316
317 <p>The format of the DespeckleImage method is:</p>
318
319 <pre class="code">
320   Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
321 </pre>
322
323 <p>A description of each parameter follows:</p></ol>
324
325 <h5>image</h5>
326 <ol><p>the image.</p></ol>
327
328 <h5>exception</h5>
329 <ol><p>return any errors or warnings in this structure.</p></ol>
330
331  </div>
332 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
333 _8c.html" target="source" name="EdgeImage">EdgeImage</a></h2>
334 <div class="doc-section">
335
336 <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></ol>
337
338 <p>The format of the EdgeImage method is:</p>
339
340 <pre class="code">
341   Image *EdgeImage(const Image *image,const double radius,
342     ExceptionInfo *exception)
343 </pre>
344
345 <p>A description of each parameter follows:</p></ol>
346
347 <h5>image</h5>
348 <ol><p>the image.</p></ol>
349
350 <h5>radius</h5>
351 <ol><p>the radius of the pixel neighborhood.</p></ol>
352
353 <h5>exception</h5>
354 <ol><p>return any errors or warnings in this structure.</p></ol>
355
356  </div>
357 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
358 _8c.html" target="source" name="EmbossImage">EmbossImage</a></h2>
359 <div class="doc-section">
360
361 <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></ol>
362
363 <p>The format of the EmbossImage method is:</p>
364
365 <pre class="code">
366   Image *EmbossImage(const Image *image,const double radius,
367     const double sigma,ExceptionInfo *exception)
368 </pre>
369
370 <p>A description of each parameter follows:</p></ol>
371
372 <h5>image</h5>
373 <ol><p>the image.</p></ol>
374
375 <h5>radius</h5>
376 <ol><p>the radius of the pixel neighborhood.</p></ol>
377
378 <h5>sigma</h5>
379 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
380
381 <h5>exception</h5>
382 <ol><p>return any errors or warnings in this structure.</p></ol>
383
384  </div>
385 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
386 _8c.html" target="source" name="FilterImage">FilterImage</a></h2>
387 <div class="doc-section">
388
389 <p>FilterImage() applies a custom convolution kernel to the image.</p></ol>
390
391 <p>The format of the FilterImage method is:</p>
392
393 <pre class="code">
394   Image *FilterImage(const Image *image,const KernelInfo *kernel,
395     ExceptionInfo *exception)
396   Image *FilterImageChannel(const Image *image,const ChannelType channel,
397     const KernelInfo *kernel,ExceptionInfo *exception)
398 </pre>
399
400 <p>A description of each parameter follows:</p></ol>
401
402 <h5>image</h5>
403 <ol><p>the image.</p></ol>
404
405 <h5>channel</h5>
406 <ol><p>the channel type.</p></ol>
407
408 <h5>kernel</h5>
409 <ol><p>the filtering kernel.</p></ol>
410
411 <h5>exception</h5>
412 <ol><p>return any errors or warnings in this structure.</p></ol>
413
414  </div>
415 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
416 _8c.html" target="source" name="GaussianBlurImage">GaussianBlurImage</a></h2>
417 <div class="doc-section">
418
419 <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></ol>
420
421 <p>The format of the GaussianBlurImage method is:</p>
422
423 <pre class="code">
424   Image *GaussianBlurImage(const Image *image,onst double radius,
425     const double sigma,ExceptionInfo *exception)
426   Image *GaussianBlurImageChannel(const Image *image,
427     const ChannelType channel,const double radius,const double sigma,
428     ExceptionInfo *exception)
429 </pre>
430
431 <p>A description of each parameter follows:</p></ol>
432
433 <h5>image</h5>
434 <ol><p>the image.</p></ol>
435
436 <h5>channel</h5>
437 <ol><p>the channel type.</p></ol>
438
439 <h5>radius</h5>
440 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
441
442 <h5>sigma</h5>
443 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
444
445 <h5>exception</h5>
446 <ol><p>return any errors or warnings in this structure.</p></ol>
447
448  </div>
449 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
450 _8c.html" target="source" name="MedianFilterImage">MedianFilterImage</a></h2>
451 <div class="doc-section">
452
453 <p>MedianFilterImage() applies a digital filter that improves the quality of a noisy image.  Each pixel is replaced by the median in a set of neighboring pixels as defined by radius.</p></ol>
454
455 <p>The algorithm was contributed by Mike Edmonds and implements an insertion sort for selecting median color-channel values.  For more on this algorithm see "Skip Lists: A probabilistic Alternative to Balanced Trees" by William Pugh in the June 1990 of Communications of the ACM.</p></ol>
456
457 <p>The format of the MedianFilterImage method is:</p>
458
459 <pre class="code">
460   Image *MedianFilterImage(const Image *image,const double radius,
461     ExceptionInfo *exception)
462 </pre>
463
464 <p>A description of each parameter follows:</p></ol>
465
466 <h5>image</h5>
467 <ol><p>the image.</p></ol>
468
469 <h5>radius</h5>
470 <ol><p>the radius of the pixel neighborhood.</p></ol>
471
472 <h5>exception</h5>
473 <ol><p>return any errors or warnings in this structure.</p></ol>
474
475  </div>
476 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
477 _8c.html" target="source" name="MotionBlurImage">MotionBlurImage</a></h2>
478 <div class="doc-section">
479
480 <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></ol>
481
482 <p>Andrew Protano contributed this effect.</p></ol>
483
484 <p>The format of the MotionBlurImage method is:</p>
485
486 <pre class="code">
487       Image *MotionBlurImage(const Image *image,const double radius,
488   const double sigma,const double angle,ExceptionInfo *exception)
489       Image *MotionBlurImageChannel(const Image *image,const ChannelType channel,
490   const double radius,const double sigma,const double angle,
491   ExceptionInfo *exception)
492 </pre>
493
494 <p>A description of each parameter follows:</p></ol>
495
496 <h5>image</h5>
497 <ol><p>the image.</p></ol>
498
499 <h5>channel</h5>
500 <ol><p>the channel type.</p></ol>
501
502 <h5>radius</h5>
503 <ol><p>the radius of the Gaussian, in pixels, not counting the center</p>
504 <h5>radius</h5>
505 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
506
507 <h5>sigma</h5>
508 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
509
510 <h5>angle</h5>
511 <ol><p>Apply the effect along this angle.</p></ol>
512
513 <h5>exception</h5>
514 <ol><p>return any errors or warnings in this structure.</p></ol>
515
516  </div>
517 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
518 _8c.html" target="source" name="PreviewImage">PreviewImage</a></h2>
519 <div class="doc-section">
520
521 <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></ol>
522
523 <p>The format of the PreviewImages method is:</p>
524
525 <pre class="code">
526   Image *PreviewImages(const Image *image,const PreviewType preview,
527     ExceptionInfo *exception)
528 </pre>
529
530 <p>A description of each parameter follows:</p></ol>
531
532 <h5>image</h5>
533 <ol><p>the image.</p></ol>
534
535 <h5>preview</h5>
536 <ol><p>the image processing operation.</p></ol>
537
538 <h5>exception</h5>
539 <ol><p>return any errors or warnings in this structure.</p></ol>
540
541  </div>
542 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
543 _8c.html" target="source" name="RadialBlurImage">RadialBlurImage</a></h2>
544 <div class="doc-section">
545
546 <p>RadialBlurImage() applies a radial blur to the image.</p></ol>
547
548 <p>Andrew Protano contributed this effect.</p></ol>
549
550 <p>The format of the RadialBlurImage method is:</p>
551
552 <pre class="code">
553       Image *RadialBlurImage(const Image *image,const double angle,
554   ExceptionInfo *exception)
555       Image *RadialBlurImageChannel(const Image *image,const ChannelType channel,
556   const double angle,ExceptionInfo *exception)
557 </pre>
558
559 <p>A description of each parameter follows:</p></ol>
560
561 <h5>image</h5>
562 <ol><p>the image.</p></ol>
563
564 <h5>channel</h5>
565 <ol><p>the channel type.</p></ol>
566
567 <h5>angle</h5>
568 <ol><p>the angle of the radial blur.</p></ol>
569
570 <h5>exception</h5>
571 <ol><p>return any errors or warnings in this structure.</p></ol>
572
573  </div>
574 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
575 _8c.html" target="source" name="ReduceNoiseImage">ReduceNoiseImage</a></h2>
576 <div class="doc-section">
577
578 <p>ReduceNoiseImage() smooths the contours of an image while still preserving edge information.  The algorithm works by replacing each pixel with its neighbor closest in value.  A neighbor is defined by radius.  Use a radius of 0 and ReduceNoise() selects a suitable radius for you.</p></ol>
579
580 <p>The format of the ReduceNoiseImage method is:</p>
581
582 <pre class="code">
583   Image *ReduceNoiseImage(const Image *image,const double radius,
584     ExceptionInfo *exception)
585 </pre>
586
587 <p>A description of each parameter follows:</p></ol>
588
589 <h5>image</h5>
590 <ol><p>the image.</p></ol>
591
592 <h5>radius</h5>
593 <ol><p>the radius of the pixel neighborhood.</p></ol>
594
595 <h5>exception</h5>
596 <ol><p>return any errors or warnings in this structure.</p></ol>
597
598  </div>
599 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
600 _8c.html" target="source" name="SelectiveBlurImage">SelectiveBlurImage</a></h2>
601 <div class="doc-section">
602
603 <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></ol>
604
605 <p>The format of the SelectiveBlurImage method is:</p>
606
607 <pre class="code">
608   Image *SelectiveBlurImage(const Image *image,const double radius,
609     const double sigma,const double threshold,ExceptionInfo *exception)
610   Image *SelectiveBlurImageChannel(const Image *image,
611     const ChannelType channel,const double radius,const double sigma,
612     const double threshold,ExceptionInfo *exception)
613 </pre>
614
615 <p>A description of each parameter follows:</p></ol>
616
617 <h5>image</h5>
618 <ol><p>the image.</p></ol>
619
620 <h5>channel</h5>
621 <ol><p>the channel type.</p></ol>
622
623 <h5>radius</h5>
624 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
625
626 <h5>sigma</h5>
627 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
628
629 <h5>threshold</h5>
630 <ol><p>only pixels within this contrast threshold are included in the blur operation.</p></ol>
631
632 <h5>exception</h5>
633 <ol><p>return any errors or warnings in this structure.</p></ol>
634
635  </div>
636 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
637 _8c.html" target="source" name="ShadeImage">ShadeImage</a></h2>
638 <div class="doc-section">
639
640 <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></ol>
641
642 <p>The format of the ShadeImage method is:</p>
643
644 <pre class="code">
645   Image *ShadeImage(const Image *image,const MagickBooleanType gray,
646     const double azimuth,const double elevation,ExceptionInfo *exception)
647 </pre>
648
649 <p>A description of each parameter follows:</p></ol>
650
651 <h5>image</h5>
652 <ol><p>the image.</p></ol>
653
654 <h5>gray</h5>
655 <ol><p>A value other than zero shades the intensity of each pixel.</p></ol>
656
657 <h5>azimuth, elevation</h5>
658 <ol><p>Define the light source direction.</p></ol>
659
660 <h5>exception</h5>
661 <ol><p>return any errors or warnings in this structure.</p></ol>
662
663  </div>
664 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
665 _8c.html" target="source" name="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></ol>
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></ol>
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></ol>
682
683 <h5>image</h5>
684 <ol><p>the image.</p></ol>
685
686 <h5>channel</h5>
687 <ol><p>the channel type.</p></ol>
688
689 <h5>radius</h5>
690 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
691
692 <h5>sigma</h5>
693 <ol><p>the standard deviation of the Laplacian, in pixels.</p></ol>
694
695 <h5>exception</h5>
696 <ol><p>return any errors or warnings in this structure.</p></ol>
697
698  </div>
699 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
700 _8c.html" target="source" name="SpreadImage">SpreadImage</a></h2>
701 <div class="doc-section">
702
703 <p>SpreadImage() is a special effects method that randomly displaces each pixel in a block defined by the radius parameter.</p></ol>
704
705 <p>The format of the SpreadImage method is:</p>
706
707 <pre class="code">
708   Image *SpreadImage(const Image *image,const double radius,
709     ExceptionInfo *exception)
710 </pre>
711
712 <p>A description of each parameter follows:</p></ol>
713
714 <h5>image</h5>
715 <ol><p>the image.</p></ol>
716
717 <h5>radius</h5>
718 <ol><p>Choose a random pixel in a neighborhood of this extent.</p></ol>
719
720 <h5>exception</h5>
721 <ol><p>return any errors or warnings in this structure.</p></ol>
722
723  </div>
724 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
725 _8c.html" target="source" name="UnsharpMaskImage">UnsharpMaskImage</a></h2>
726 <div class="doc-section">
727
728 <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></ol>
729
730 <p>The format of the UnsharpMaskImage method is:</p>
731
732 <pre class="code">
733       Image *UnsharpMaskImage(const Image *image,const double radius,
734   const double sigma,const double amount,const double threshold,
735   ExceptionInfo *exception)
736       Image *UnsharpMaskImageChannel(const Image *image,
737   const ChannelType channel,const double radius,const double sigma,
738   const double amount,const double threshold,ExceptionInfo *exception)
739 </pre>
740
741 <p>A description of each parameter follows:</p></ol>
742
743 <h5>image</h5>
744 <ol><p>the image.</p></ol>
745
746 <h5>channel</h5>
747 <ol><p>the channel type.</p></ol>
748
749 <h5>radius</h5>
750 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
751
752 <h5>sigma</h5>
753 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
754
755 <h5>amount</h5>
756 <ol><p>the percentage of the difference between the original and the blur image that is added back into the original.</p></ol>
757
758 <h5>threshold</h5>
759 <ol><p>the threshold in pixels needed to apply the diffence amount.</p></ol>
760
761 <h5>exception</h5>
762 <ol><p>return any errors or warnings in this structure.</p></ol>
763
764  </div>
765 \r
766 </div>\r
767 \r
768 <div id="linkbar">\r
769     <span id="linkbar-west">&nbsp;</span>\r
770     <span id="linkbar-center">\r
771       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
772       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
773     </span>\r
774     <span id="linkbar-east">&nbsp;</span>\r
775   </div>\r
776   <div class="footer">\r
777     <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>\r
778     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
779   </div>\r
780   <div style="clear: both; margin: 0; width: 100%; "></div>\r
781   <script type="text/javascript">\r
782     var _gaq = _gaq || [];\r
783     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
784     _gaq.push(['_trackPageview']);\r
785 \r
786     (function() {\r
787       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
788       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
789       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
790     })();\r
791   </script>\r
792 </body>\r
793 </html>\r