]> 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">\r
4 <head>\r
5   <meta http-equiv="Content-Type" value="application/xhtml+xml" />\r
6   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />\r
7   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />\r
8   <style type="text/css" media="screen,projection"><!--\r
9     @import url("../../www/magick.css");\r
10   --></style>\r
11   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/vnd.microsoft.icon"/>
12   <title>ImageMagick: MagickCore, C API for ImageMagick: Add an Effect</title>
13   <meta http-equiv="Content-Language" content="en-US"/>
14   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
15   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
16   <meta name="Generator" content="PHP"/>
17   <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"/>
18   <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."/>
19   <meta name="Rating" content="GENERAL"/>
20   <meta name="Robots" content="INDEX, FOLLOW"/>
21   <meta name="Generator" content="ImageMagick Studio LLC"/>
22   <meta name="Author" content="ImageMagick Studio LLC"/>
23   <meta name="Revisit-after" content="2 DAYS"/>
24   <meta name="Resource-type" content="document"/>
25   <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
26   <meta name="Distribution" content="Global"/>
27 </head>\r
28 \r
29 <body id="www-imagemagick-org">\r
30 <div class="titlebar">\r
31 <a href="../../index.html">\r
32   <img src="../../images/script.png" alt="[ImageMagick]"\r
33   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
34 <a href="http://www.networkredux.com">\r
35   <img src="../../images/networkredux.png" alt="[sponsor]"\r
36   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
37 <a href="http://www.imagemagick.org/discourse-server/">\r
38   <img src="../../images/logo.jpg" alt=""\r
39   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
40 <a href="../../index.html">\r
41   <img src="../../images/sprite.jpg" alt=""\r
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
43 </div>\r
44 \r
45 <div class="eastbar">\r
46 \r
47 <div class="menu">
48   <a href="../../index.html">About ImageMagick</a>
49 </div>
50 <div class="sep"></div>\r
51 <div class="menu">
52   <a href="../../www/command-line-tools.html">Command-line Tools</a>
53 </div>
54 <div class="sub">
55     <a href="../../www/command-line-processing.html">Processing</a>
56 </div>
57 <div class="sub">
58     <a href="../../www/command-line-options.html">Options</a>
59 </div>
60 <div class="sub">
61     <a href="http://www.imagemagick.org/Usage/">Usage</a>
62 </div>
63 <div class="menu">
64   <a href="../../www/api.html">Program Interfaces</a>
65 </div>
66 <div class="sub">
67     <a href="../../www/magick-wand.html">MagickWand</a>
68 </div>
69 <div class="sub">
70     <a href="../../www/magick-core.html">MagickCore</a>
71 </div>
72 <div class="sub">
73     <a href="../../www/perl-magick.html">PerlMagick</a>
74 </div>
75 <div class="sub">
76     <a href="../../Magick++/">Magick++</a>
77 </div>
78 <div class="menu">
79   <a href="../../www/architecture.html">Architecture</a>
80 </div>
81 <div class="sep"></div>\r
82 <div  class="menu">
83    <a href="../../www/install-source.html">Install from Source</a>
84 </div>
85 <div class="sub">
86     <a href="../../www/install-source.html#unix">Unix</a>
87 </div>
88 <div class="sub">
89     <a href="../../www/install-source.html#windows">Windows</a>
90  </div>
91 <div class="menu">
92   <a href="../../www/binary-releases.html">Binary Releases</a>
93 </div>
94 <div class="sub">
95     <a href="../../www/binary-releases.html#unix">Unix</a>
96 </div>
97 <div class="sub">
98     <a href="../../www/binary-releases.html#macosx">Mac OS X</a>
99 </div>
100 <div class="sub">
101     <a href="../../www/binary-releases.html#windows">Windows</a>
102 </div>
103 <div class="menu">
104   <a href="../../www/resources.html">Resources</a>
105 </div>
106 <div class="sep"></div>\r
107 <div class="menu">
108   <a href="../../www/download.html">Download</a>
109 </div>
110 <div class="sep"></div>\r
111 <div class="menu">
112   <a href="../http://www.imagemagick.org/script/search.php">Search</a>
113 </div>
114 <div class="sep"></div>\r
115 <div class="menu">
116   <a href="../../www/sitemap.html">Site Map</a>
117 </div>
118 <div  class="sub">
119     <a href="../../www/links.html">Links</a>
120 </div>
121 <div class="sep"></div>\r
122 <div  class="menu">
123   <a href="../../www/sponsors.html">Sponsors:</a>
124
125 <div class="sponsbox">
126 <div  class="sponsor">
127    <a href="http://www.abi-stoff.de/abizeitung/" title="Abibuch">Abizeitung</a><!-- 20101101000200 -->
128 </div>
129 <div  class="sponsor">
130   <a href="http://www.deko.net">Deko.net</a><!-- 201101010600 Peterssen-->
131 </div>
132 <div  class="sponsor">
133   <a href="http://www.tomsgutscheine.de">Tom's Gutscheine</a><!-- 201005010360 invendio.de-->
134 </div>
135 <div  class="sponsor">
136   <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201007010120 Buchhorn -->
137 </div>
138 <div  class="sponsor">
139   <a href="http://www.blumenversender.com">Blumenversand</a><!-- 201005010120 -->
140 </div>
141 <div  class="sponsor">
142   <a href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
143 </div>
144 <div  class="sponsor">
145    <a href="http://www.goyax.de">Börse</a><!-- 201004010240 Gewiese digital-finance.de -->
146 </div>
147 <div  class="sponsor">
148    <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
149 </div>
150 </div>
151 </div>
152 \r
153 \r
154 </div>\r
155 \r
156 <div class="main">\r
157 \r
158 <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>
159
160 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
161 _8c.html" target="source" name="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
162 <div class="doc-section">
163
164 <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>
165
166 <p>The format of the AdaptiveBlurImage method is:</p>
167
168 <pre class="code">
169   Image *AdaptiveBlurImage(const Image *image,const double radius,
170     const double sigma,ExceptionInfo *exception)
171   Image *AdaptiveBlurImageChannel(const Image *image,
172     const ChannelType channel,double radius,const double sigma,
173     ExceptionInfo *exception)
174 </pre>
175
176 <p>A description of each parameter follows:</p></ol>
177
178 <h5>image</h5>
179 <ol><p>the image.</p></ol>
180
181 <h5>channel</h5>
182 <ol><p>the channel type.</p></ol>
183
184 <h5>radius</h5>
185 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
186
187 <h5>sigma</h5>
188 <ol><p>the standard deviation of the Laplacian, in pixels.</p></ol>
189
190 <h5>exception</h5>
191 <ol><p>return any errors or warnings in this structure.</p></ol>
192
193  </div>
194 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
195 _8c.html" target="source" name="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
196 <div class="doc-section">
197
198 <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>
199
200 <p>The format of the AdaptiveSharpenImage method is:</p>
201
202 <pre class="code">
203   Image *AdaptiveSharpenImage(const Image *image,const double radius,
204     const double sigma,ExceptionInfo *exception)
205   Image *AdaptiveSharpenImageChannel(const Image *image,
206     const ChannelType channel,double radius,const double sigma,
207     ExceptionInfo *exception)
208 </pre>
209
210 <p>A description of each parameter follows:</p></ol>
211
212 <h5>image</h5>
213 <ol><p>the image.</p></ol>
214
215 <h5>channel</h5>
216 <ol><p>the channel type.</p></ol>
217
218 <h5>radius</h5>
219 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
220
221 <h5>sigma</h5>
222 <ol><p>the standard deviation of the Laplacian, in pixels.</p></ol>
223
224 <h5>exception</h5>
225 <ol><p>return any errors or warnings in this structure.</p></ol>
226
227  </div>
228 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
229 _8c.html" target="source" name="BlurImage">BlurImage</a></h2>
230 <div class="doc-section">
231
232 <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>
233
234 <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>
235
236 <p>The format of the BlurImage method is:</p>
237
238 <pre class="code">
239   Image *BlurImage(const Image *image,const double radius,
240     const double sigma,ExceptionInfo *exception)
241   Image *BlurImageChannel(const Image *image,const ChannelType channel,
242     const double radius,const double sigma,ExceptionInfo *exception)
243 </pre>
244
245 <p>A description of each parameter follows:</p></ol>
246
247 <h5>image</h5>
248 <ol><p>the image.</p></ol>
249
250 <h5>channel</h5>
251 <ol><p>the channel type.</p></ol>
252
253 <h5>radius</h5>
254 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
255
256 <h5>sigma</h5>
257 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
258
259 <h5>exception</h5>
260 <ol><p>return any errors or warnings in this structure.</p></ol>
261
262  </div>
263 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
264 _8c.html" target="source" name="ConvolveImage">ConvolveImage</a></h2>
265 <div class="doc-section">
266
267 <p>ConvolveImage() applies a custom convolution kernel to the image.</p></ol>
268
269 <p>The format of the ConvolveImage method is:</p>
270
271 <pre class="code">
272   Image *ConvolveImage(const Image *image,const unsigned long order,
273     const double *kernel,ExceptionInfo *exception)
274   Image *ConvolveImageChannel(const Image *image,const ChannelType channel,
275     const unsigned long order,const double *kernel,
276     ExceptionInfo *exception)
277 </pre>
278
279 <p>A description of each parameter follows:</p></ol>
280
281 <h5>image</h5>
282 <ol><p>the image.</p></ol>
283
284 <h5>channel</h5>
285 <ol><p>the channel type.</p></ol>
286
287 <h5>order</h5>
288 <ol><p>the number of columns and rows in the filter kernel.</p></ol>
289
290 <h5>kernel</h5>
291 <ol><p>An array of double representing the convolution kernel.</p></ol>
292
293 <h5>exception</h5>
294 <ol><p>return any errors or warnings in this structure.</p></ol>
295
296  </div>
297 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
298 _8c.html" target="source" name="DespeckleImage">DespeckleImage</a></h2>
299 <div class="doc-section">
300
301 <p>DespeckleImage() reduces the speckle noise in an image while perserving the edges of the original image.</p></ol>
302
303 <p>The format of the DespeckleImage method is:</p>
304
305 <pre class="code">
306   Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
307 </pre>
308
309 <p>A description of each parameter follows:</p></ol>
310
311 <h5>image</h5>
312 <ol><p>the image.</p></ol>
313
314 <h5>exception</h5>
315 <ol><p>return any errors or warnings in this structure.</p></ol>
316
317  </div>
318 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
319 _8c.html" target="source" name="EdgeImage">EdgeImage</a></h2>
320 <div class="doc-section">
321
322 <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>
323
324 <p>The format of the EdgeImage method is:</p>
325
326 <pre class="code">
327   Image *EdgeImage(const Image *image,const double radius,
328     ExceptionInfo *exception)
329 </pre>
330
331 <p>A description of each parameter follows:</p></ol>
332
333 <h5>image</h5>
334 <ol><p>the image.</p></ol>
335
336 <h5>radius</h5>
337 <ol><p>the radius of the pixel neighborhood.</p></ol>
338
339 <h5>exception</h5>
340 <ol><p>return any errors or warnings in this structure.</p></ol>
341
342  </div>
343 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
344 _8c.html" target="source" name="EmbossImage">EmbossImage</a></h2>
345 <div class="doc-section">
346
347 <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>
348
349 <p>The format of the EmbossImage method is:</p>
350
351 <pre class="code">
352   Image *EmbossImage(const Image *image,const double radius,
353     const double sigma,ExceptionInfo *exception)
354 </pre>
355
356 <p>A description of each parameter follows:</p></ol>
357
358 <h5>image</h5>
359 <ol><p>the image.</p></ol>
360
361 <h5>radius</h5>
362 <ol><p>the radius of the pixel neighborhood.</p></ol>
363
364 <h5>sigma</h5>
365 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
366
367 <h5>exception</h5>
368 <ol><p>return any errors or warnings in this structure.</p></ol>
369
370  </div>
371 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
372 _8c.html" target="source" name="FilterImage">FilterImage</a></h2>
373 <div class="doc-section">
374
375 <p>FilterImage() applies a custom convolution kernel to the image.</p></ol>
376
377 <p>The format of the FilterImage method is:</p>
378
379 <pre class="code">
380   Image *FilterImage(const Image *image,const KernelInfo *kernel,
381     ExceptionInfo *exception)
382   Image *FilterImageChannel(const Image *image,const ChannelType channel,
383     const KernelInfo *kernel,ExceptionInfo *exception)
384 </pre>
385
386 <p>A description of each parameter follows:</p></ol>
387
388 <h5>image</h5>
389 <ol><p>the image.</p></ol>
390
391 <h5>channel</h5>
392 <ol><p>the channel type.</p></ol>
393
394 <h5>kernel</h5>
395 <ol><p>the filtering kernel.</p></ol>
396
397 <h5>exception</h5>
398 <ol><p>return any errors or warnings in this structure.</p></ol>
399
400  </div>
401 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
402 _8c.html" target="source" name="GaussianBlurImage">GaussianBlurImage</a></h2>
403 <div class="doc-section">
404
405 <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>
406
407 <p>The format of the GaussianBlurImage method is:</p>
408
409 <pre class="code">
410   Image *GaussianBlurImage(const Image *image,onst double radius,
411     const double sigma,ExceptionInfo *exception)
412   Image *GaussianBlurImageChannel(const Image *image,
413     const ChannelType channel,const double radius,const double sigma,
414     ExceptionInfo *exception)
415 </pre>
416
417 <p>A description of each parameter follows:</p></ol>
418
419 <h5>image</h5>
420 <ol><p>the image.</p></ol>
421
422 <h5>channel</h5>
423 <ol><p>the channel type.</p></ol>
424
425 <h5>radius</h5>
426 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
427
428 <h5>sigma</h5>
429 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
430
431 <h5>exception</h5>
432 <ol><p>return any errors or warnings in this structure.</p></ol>
433
434  </div>
435 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
436 _8c.html" target="source" name="MedianFilterImage">MedianFilterImage</a></h2>
437 <div class="doc-section">
438
439 <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>
440
441 <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>
442
443 <p>The format of the MedianFilterImage method is:</p>
444
445 <pre class="code">
446   Image *MedianFilterImage(const Image *image,const double radius,
447     ExceptionInfo *exception)
448 </pre>
449
450 <p>A description of each parameter follows:</p></ol>
451
452 <h5>image</h5>
453 <ol><p>the image.</p></ol>
454
455 <h5>radius</h5>
456 <ol><p>the radius of the pixel neighborhood.</p></ol>
457
458 <h5>exception</h5>
459 <ol><p>return any errors or warnings in this structure.</p></ol>
460
461  </div>
462 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
463 _8c.html" target="source" name="MotionBlurImage">MotionBlurImage</a></h2>
464 <div class="doc-section">
465
466 <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>
467
468 <p>Andrew Protano contributed this effect.</p></ol>
469
470 <p>The format of the MotionBlurImage method is:</p>
471
472 <pre class="code">
473       Image *MotionBlurImage(const Image *image,const double radius,
474   const double sigma,const double angle,ExceptionInfo *exception)
475       Image *MotionBlurImageChannel(const Image *image,const ChannelType channel,
476   const double radius,const double sigma,const double angle,
477   ExceptionInfo *exception)
478 </pre>
479
480 <p>A description of each parameter follows:</p></ol>
481
482 <h5>image</h5>
483 <ol><p>the image.</p></ol>
484
485 <h5>channel</h5>
486 <ol><p>the channel type.</p></ol>
487
488 <h5>radius</h5>
489 <ol><p>the radius of the Gaussian, in pixels, not counting the center</p>
490 <h5>radius</h5>
491 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
492
493 <h5>sigma</h5>
494 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
495
496 <h5>angle</h5>
497 <ol><p>Apply the effect along this angle.</p></ol>
498
499 <h5>exception</h5>
500 <ol><p>return any errors or warnings in this structure.</p></ol>
501
502  </div>
503 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
504 _8c.html" target="source" name="PreviewImage">PreviewImage</a></h2>
505 <div class="doc-section">
506
507 <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>
508
509 <p>The format of the PreviewImages method is:</p>
510
511 <pre class="code">
512   Image *PreviewImages(const Image *image,const PreviewType preview,
513     ExceptionInfo *exception)
514 </pre>
515
516 <p>A description of each parameter follows:</p></ol>
517
518 <h5>image</h5>
519 <ol><p>the image.</p></ol>
520
521 <h5>preview</h5>
522 <ol><p>the image processing operation.</p></ol>
523
524 <h5>exception</h5>
525 <ol><p>return any errors or warnings in this structure.</p></ol>
526
527  </div>
528 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
529 _8c.html" target="source" name="RadialBlurImage">RadialBlurImage</a></h2>
530 <div class="doc-section">
531
532 <p>RadialBlurImage() applies a radial blur to the image.</p></ol>
533
534 <p>Andrew Protano contributed this effect.</p></ol>
535
536 <p>The format of the RadialBlurImage method is:</p>
537
538 <pre class="code">
539       Image *RadialBlurImage(const Image *image,const double angle,
540   ExceptionInfo *exception)
541       Image *RadialBlurImageChannel(const Image *image,const ChannelType channel,
542   const double angle,ExceptionInfo *exception)
543 </pre>
544
545 <p>A description of each parameter follows:</p></ol>
546
547 <h5>image</h5>
548 <ol><p>the image.</p></ol>
549
550 <h5>channel</h5>
551 <ol><p>the channel type.</p></ol>
552
553 <h5>angle</h5>
554 <ol><p>the angle of the radial blur.</p></ol>
555
556 <h5>exception</h5>
557 <ol><p>return any errors or warnings in this structure.</p></ol>
558
559  </div>
560 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
561 _8c.html" target="source" name="ReduceNoiseImage">ReduceNoiseImage</a></h2>
562 <div class="doc-section">
563
564 <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>
565
566 <p>The format of the ReduceNoiseImage method is:</p>
567
568 <pre class="code">
569   Image *ReduceNoiseImage(const Image *image,const double radius,
570     ExceptionInfo *exception)
571 </pre>
572
573 <p>A description of each parameter follows:</p></ol>
574
575 <h5>image</h5>
576 <ol><p>the image.</p></ol>
577
578 <h5>radius</h5>
579 <ol><p>the radius of the pixel neighborhood.</p></ol>
580
581 <h5>exception</h5>
582 <ol><p>return any errors or warnings in this structure.</p></ol>
583
584  </div>
585 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
586 _8c.html" target="source" name="SelectiveBlurImage">SelectiveBlurImage</a></h2>
587 <div class="doc-section">
588
589 <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>
590
591 <p>The format of the SelectiveBlurImage method is:</p>
592
593 <pre class="code">
594   Image *SelectiveBlurImage(const Image *image,const double radius,
595     const double sigma,const double threshold,ExceptionInfo *exception)
596   Image *SelectiveBlurImageChannel(const Image *image,
597     const ChannelType channel,const double radius,const double sigma,
598     const double threshold,ExceptionInfo *exception)
599 </pre>
600
601 <p>A description of each parameter follows:</p></ol>
602
603 <h5>image</h5>
604 <ol><p>the image.</p></ol>
605
606 <h5>channel</h5>
607 <ol><p>the channel type.</p></ol>
608
609 <h5>radius</h5>
610 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
611
612 <h5>sigma</h5>
613 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
614
615 <h5>threshold</h5>
616 <ol><p>only pixels within this contrast threshold are included in the blur operation.</p></ol>
617
618 <h5>exception</h5>
619 <ol><p>return any errors or warnings in this structure.</p></ol>
620
621  </div>
622 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
623 _8c.html" target="source" name="ShadeImage">ShadeImage</a></h2>
624 <div class="doc-section">
625
626 <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>
627
628 <p>The format of the ShadeImage method is:</p>
629
630 <pre class="code">
631   Image *ShadeImage(const Image *image,const MagickBooleanType gray,
632     const double azimuth,const double elevation,ExceptionInfo *exception)
633 </pre>
634
635 <p>A description of each parameter follows:</p></ol>
636
637 <h5>image</h5>
638 <ol><p>the image.</p></ol>
639
640 <h5>gray</h5>
641 <ol><p>A value other than zero shades the intensity of each pixel.</p></ol>
642
643 <h5>azimuth, elevation</h5>
644 <ol><p>Define the light source direction.</p></ol>
645
646 <h5>exception</h5>
647 <ol><p>return any errors or warnings in this structure.</p></ol>
648
649  </div>
650 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
651 _8c.html" target="source" name="SharpenImage">SharpenImage</a></h2>
652 <div class="doc-section">
653
654 <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>
655
656 <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>
657
658 <p>The format of the SharpenImage method is:</p>
659
660 <pre class="code">
661       Image *SharpenImage(const Image *image,const double radius,
662   const double sigma,ExceptionInfo *exception)
663       Image *SharpenImageChannel(const Image *image,const ChannelType channel,
664   const double radius,const double sigma,ExceptionInfo *exception)
665 </pre>
666
667 <p>A description of each parameter follows:</p></ol>
668
669 <h5>image</h5>
670 <ol><p>the image.</p></ol>
671
672 <h5>channel</h5>
673 <ol><p>the channel type.</p></ol>
674
675 <h5>radius</h5>
676 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
677
678 <h5>sigma</h5>
679 <ol><p>the standard deviation of the Laplacian, in pixels.</p></ol>
680
681 <h5>exception</h5>
682 <ol><p>return any errors or warnings in this structure.</p></ol>
683
684  </div>
685 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
686 _8c.html" target="source" name="SpreadImage">SpreadImage</a></h2>
687 <div class="doc-section">
688
689 <p>SpreadImage() is a special effects method that randomly displaces each pixel in a block defined by the radius parameter.</p></ol>
690
691 <p>The format of the SpreadImage method is:</p>
692
693 <pre class="code">
694   Image *SpreadImage(const Image *image,const double radius,
695     ExceptionInfo *exception)
696 </pre>
697
698 <p>A description of each parameter follows:</p></ol>
699
700 <h5>image</h5>
701 <ol><p>the image.</p></ol>
702
703 <h5>radius</h5>
704 <ol><p>Choose a random pixel in a neighborhood of this extent.</p></ol>
705
706 <h5>exception</h5>
707 <ol><p>return any errors or warnings in this structure.</p></ol>
708
709  </div>
710 <h2><a href="http://www.imagemagick.org/api/MagickCore/effect
711 _8c.html" target="source" name="UnsharpMaskImage">UnsharpMaskImage</a></h2>
712 <div class="doc-section">
713
714 <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>
715
716 <p>The format of the UnsharpMaskImage method is:</p>
717
718 <pre class="code">
719       Image *UnsharpMaskImage(const Image *image,const double radius,
720   const double sigma,const double amount,const double threshold,
721   ExceptionInfo *exception)
722       Image *UnsharpMaskImageChannel(const Image *image,
723   const ChannelType channel,const double radius,const double sigma,
724   const double amount,const double threshold,ExceptionInfo *exception)
725 </pre>
726
727 <p>A description of each parameter follows:</p></ol>
728
729 <h5>image</h5>
730 <ol><p>the image.</p></ol>
731
732 <h5>channel</h5>
733 <ol><p>the channel type.</p></ol>
734
735 <h5>radius</h5>
736 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
737
738 <h5>sigma</h5>
739 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
740
741 <h5>amount</h5>
742 <ol><p>the percentage of the difference between the original and the blur image that is added back into the original.</p></ol>
743
744 <h5>threshold</h5>
745 <ol><p>the threshold in pixels needed to apply the diffence amount.</p></ol>
746
747 <h5>exception</h5>
748 <ol><p>return any errors or warnings in this structure.</p></ol>
749
750  </div>
751 \r
752 </div>\r
753 \r
754 <div id="linkbar">\r
755  <!--    <span id="linkbar-west">&nbsp;</span>  -->\r
756     <span id="linkbar-center">\r
757       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
758     <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
759     </span>\r
760     <span id="linkbar-east">&nbsp;</span>\r
761   </div>\r
762   <div class="footer">\r
763     <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>\r
764     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
765   </div>\r
766   <div style="clear: both; margin: 0; width: 100%; "></div>\r
767 </body>\r
768 </html>\r