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