blob: b0e3e5271184f8785b1ccb7f2c7db7af6b4f8b5d [file] [log] [blame]
Cristy594d2772015-11-15 10:47:42 -05001
2
3
4
cristy29dc8652015-05-12 16:26:21 +00005<!DOCTYPE html>
cristy44443b92015-05-05 00:06:07 +00006<html lang="en">
cristy06f63f22012-10-31 00:50:07 +00007<head>
Cristy594d2772015-11-15 10:47:42 -05008 <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
cristy29f2c972015-07-28 13:37:46 +00009 <title>ImageMagick: MagickCore, C API for ImageMagick: Add an Effect</title>
Cristy594d2772015-11-15 10:47:42 -050010 <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
11 <meta name="application-name" content="ImageMagick"/>
12 <meta name="description" content="ImageMagick® is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, JPEG-2000, GIF, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves."/>
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, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert"/>
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"/>
Cristyce4a3552015-12-14 13:53:35 -050022 <meta name="copyright" content="Copyright (c) 1999-2015 ImageMagick Studio LLC"/>
Cristy594d2772015-11-15 10:47:42 -050023 <meta name="distribution" content="Global"/>
24 <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1"/>
25 <link rel="icon" href="../images/wand.png"/>
26 <link rel="shortcut icon" href="../images/wand.ico"/>
27 <link rel="stylesheet" href="../css/magick.html"/>
cristy06f63f22012-10-31 00:50:07 +000028</head>
cristy44443b92015-05-05 00:06:07 +000029<body>
cristy06f63f22012-10-31 00:50:07 +000030<div class="main">
cristy44443b92015-05-05 00:06:07 +000031<div class="magick-masthead">
32 <div class="container">
Cristye93be682015-11-26 09:07:51 -050033 <script async="async" src="http://localhost/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle"
Cristy594d2772015-11-15 10:47:42 -050034 style="display:block"
35 data-ad-client="ca-pub-3129977114552745"
36 data-ad-slot="6345125851"
37 data-ad-format="auto"></ins>
cristy29f2c972015-07-28 13:37:46 +000038 <script>
Cristy542697a2015-10-12 20:10:32 -040039 (adsbygoogle = window.adsbygoogle || []).push({});
cristy44443b92015-05-05 00:06:07 +000040 </script>
cristy44443b92015-05-05 00:06:07 +000041 <nav class="magick-nav">
cristy2f563d42015-05-06 23:36:51 +000042 <a class="magick-nav-item " href="../index.html">Home</a>
cristyea2793e2015-05-31 16:52:26 +000043 <a class="magick-nav-item " href="../binary-releases.html">Download</a>
cristy38185362015-05-07 20:09:56 +000044 <a class="magick-nav-item " href="../command-line-tools.html">Tools</a>
Cristye93be682015-11-26 09:07:51 -050045 <a class="magick-nav-item " href="../command-line-processing.html">Command-line</a>
cristyea2793e2015-05-31 16:52:26 +000046 <a class="magick-nav-item " href="../resources.html">Resources</a>
47 <a class="magick-nav-item " href="api.html">Develop</a>
cristy5b8fe762015-06-09 16:24:03 +000048 <a class="magick-nav-item " href="http://nextgen.imagemagick.org/script/search.php">Search</a>
cristya1890f02015-05-15 23:32:44 +000049 <a class="magick-nav-item pull-right" href="http://www.imagemagick.org/discourse-server/">Community</a>
cristy44443b92015-05-05 00:06:07 +000050 </nav>
51 </div>
52</div>
53<div class="container">
cristy4e638cd2015-05-07 16:47:40 +000054<div class="magick-header">
Cristye93be682015-11-26 09:07:51 -050055<p class="text-center"><a href="effect.html#AdaptiveBlurImage">AdaptiveBlurImage</a> &#8226; <a href="effect.html#AdaptiveSharpenImage">AdaptiveSharpenImage</a> &#8226; <a href="effect.html#BlurImage">BlurImage</a> &#8226; <a href="effect.html#ConvolveImage">ConvolveImage</a> &#8226; <a href="effect.html#DespeckleImage">DespeckleImage</a> &#8226; <a href="effect.html#EdgeImage">EdgeImage</a> &#8226; <a href="effect.html#EmbossImage">EmbossImage</a> &#8226; <a href="effect.html#GaussianBlurImage">GaussianBlurImage</a> &#8226; <a href="effect.html#KuwaharaImage">KuwaharaImage</a> &#8226; <a href="effect.html#LocalContrastImage">LocalContrastImage</a> &#8226; <a href="effect.html#MotionBlurImage">MotionBlurImage</a> &#8226; <a href="effect.html#PreviewImage">PreviewImage</a> &#8226; <a href="effect.html#RotationalBlurImage">RotationalBlurImage</a> &#8226; <a href="effect.html#SelectiveBlurImage">SelectiveBlurImage</a> &#8226; <a href="effect.html#ShadeImage">ShadeImage</a> &#8226; <a href="effect.html#SharpenImage">SharpenImage</a> &#8226; <a href="effect.html#SpreadImage">SpreadImage</a> &#8226; <a href="effect.html#UnsharpMaskImage">UnsharpMaskImage</a></p>
cristy20398432011-08-11 01:31:50 +000056
Cristye93be682015-11-26 09:07:51 -050057<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
cristycecc9492015-06-09 16:53:50 +000058
59<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>
60
61<p>The format of the AdaptiveBlurImage method is:</p>
62
63<pre class="text">
64Image *AdaptiveBlurImage(const Image *image,const double radius,
65 const double sigma,ExceptionInfo *exception)
66</pre>
67
68<p>A description of each parameter follows:</p>
69
70<dd>
71</dd>
72
73<dd> </dd>
74<dl class="dl-horizontal">
75<dt>image</dt>
76<dd>the image. </dd>
77
78<dd> </dd>
79<dt>radius</dt>
80<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
81
82<dd> </dd>
83<dt>sigma</dt>
84<dd>the standard deviation of the Laplacian, in pixels. </dd>
85
86<dd> </dd>
87<dt>exception</dt>
88<dd>return any errors or warnings in this structure. </dd>
89
90<dd> </dd>
91</dl>
Cristye93be682015-11-26 09:07:51 -050092<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
cristycecc9492015-06-09 16:53:50 +000093
94<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>
95
96<p>The format of the AdaptiveSharpenImage method is:</p>
97
98<pre class="text">
99Image *AdaptiveSharpenImage(const Image *image,const double radius,
100 const double sigma,ExceptionInfo *exception)
101</pre>
102
103<p>A description of each parameter follows:</p>
104
105<dd>
106</dd>
107
108<dd> </dd>
109<dl class="dl-horizontal">
110<dt>image</dt>
111<dd>the image. </dd>
112
113<dd> </dd>
114<dt>radius</dt>
115<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
116
117<dd> </dd>
118<dt>sigma</dt>
119<dd>the standard deviation of the Laplacian, in pixels. </dd>
120
121<dd> </dd>
122<dt>exception</dt>
123<dd>return any errors or warnings in this structure. </dd>
124
125<dd> </dd>
126</dl>
Cristye93be682015-11-26 09:07:51 -0500127<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="BlurImage">BlurImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000128
129<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>
130
131<p>The format of the BlurImage method is:</p>
132
133<pre class="text">
134Image *BlurImage(const Image *image,const double radius,
135 const double sigma,ExceptionInfo *exception)
136</pre>
137
138<p>A description of each parameter follows:</p>
139
140<dd>
141</dd>
142
143<dd> </dd>
144<dl class="dl-horizontal">
145<dt>image</dt>
146<dd>the image. </dd>
147
148<dd> </dd>
149<dt>radius</dt>
150<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
151
152<dd> </dd>
153<dt>sigma</dt>
154<dd>the standard deviation of the Gaussian, in pixels. </dd>
155
156<dd> </dd>
157<dt>exception</dt>
158<dd>return any errors or warnings in this structure. </dd>
159
160<dd> </dd>
161</dl>
Cristye93be682015-11-26 09:07:51 -0500162<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ConvolveImage">ConvolveImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000163
164<p>ConvolveImage() applies a custom convolution kernel to the image.</p>
165
166<p>The format of the ConvolveImage method is:</p>
167
168<pre class="text">
169Image *ConvolveImage(const Image *image,const KernelInfo *kernel,
170 ExceptionInfo *exception)
171</pre>
172
173<p>A description of each parameter follows:</p>
174
175<dd>
176</dd>
177
178<dd> </dd>
179<dl class="dl-horizontal">
180<dt>image</dt>
181<dd>the image. </dd>
182
183<dd> </dd>
184<dt>kernel</dt>
185<dd>the filtering kernel. </dd>
186
187<dd> </dd>
188<dt>exception</dt>
189<dd>return any errors or warnings in this structure. </dd>
190
191<dd> </dd>
192</dl>
Cristye93be682015-11-26 09:07:51 -0500193<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="DespeckleImage">DespeckleImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000194
Cristyce4a3552015-12-14 13:53:35 -0500195<p>DespeckleImage() reduces the speckle noise in an image while perserving the edges of the original image. A speckle removing filter uses a complementary hulling technique (raising pixels that are darker than their surrounding neighbors, then complementarily lowering pixels that are brighter than their surrounding neighbors) to reduce the speckle index of that image (reference Crimmins speckle removal).</p>
cristycecc9492015-06-09 16:53:50 +0000196
197<p>The format of the DespeckleImage method is:</p>
198
199<pre class="text">
200Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
201</pre>
202
203<p>A description of each parameter follows:</p>
204
205<dd>
206</dd>
207
208<dd> </dd>
209<dl class="dl-horizontal">
210<dt>image</dt>
211<dd>the image. </dd>
212
213<dd> </dd>
214<dt>exception</dt>
215<dd>return any errors or warnings in this structure. </dd>
216
217<dd> </dd>
218</dl>
Cristye93be682015-11-26 09:07:51 -0500219<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EdgeImage">EdgeImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000220
221<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>
222
223<p>The format of the EdgeImage method is:</p>
224
225<pre class="text">
226Image *EdgeImage(const Image *image,const double radius,
227 ExceptionInfo *exception)
228</pre>
229
230<p>A description of each parameter follows:</p>
231
232<dd>
233</dd>
234
235<dd> </dd>
236<dl class="dl-horizontal">
237<dt>image</dt>
238<dd>the image. </dd>
239
240<dd> </dd>
241<dt>radius</dt>
242<dd>the radius of the pixel neighborhood. </dd>
243
244<dd> </dd>
245<dt>exception</dt>
246<dd>return any errors or warnings in this structure. </dd>
247
248<dd> </dd>
249</dl>
Cristye93be682015-11-26 09:07:51 -0500250<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="EmbossImage">EmbossImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000251
252<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>
253
254<p>The format of the EmbossImage method is:</p>
255
256<pre class="text">
257Image *EmbossImage(const Image *image,const double radius,
258 const double sigma,ExceptionInfo *exception)
259</pre>
260
261<p>A description of each parameter follows:</p>
262
263<dd>
264</dd>
265
266<dd> </dd>
267<dl class="dl-horizontal">
268<dt>image</dt>
269<dd>the image. </dd>
270
271<dd> </dd>
272<dt>radius</dt>
273<dd>the radius of the pixel neighborhood. </dd>
274
275<dd> </dd>
276<dt>sigma</dt>
277<dd>the standard deviation of the Gaussian, in pixels. </dd>
278
279<dd> </dd>
280<dt>exception</dt>
281<dd>return any errors or warnings in this structure. </dd>
282
283<dd> </dd>
284</dl>
Cristye93be682015-11-26 09:07:51 -0500285<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="GaussianBlurImage">GaussianBlurImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000286
287<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>
288
289<p>The format of the GaussianBlurImage method is:</p>
290
291<pre class="text">
292Image *GaussianBlurImage(const Image *image,onst double radius,
293 const double sigma,ExceptionInfo *exception)
294</pre>
295
296<p>A description of each parameter follows:</p>
297
298<dd>
299</dd>
300
301<dd> </dd>
302<dl class="dl-horizontal">
303<dt>image</dt>
304<dd>the image. </dd>
305
306<dd> </dd>
307<dt>radius</dt>
308<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
309
310<dd> </dd>
311<dt>sigma</dt>
312<dd>the standard deviation of the Gaussian, in pixels. </dd>
313
314<dd> </dd>
315<dt>exception</dt>
316<dd>return any errors or warnings in this structure. </dd>
317
318<dd> </dd>
319</dl>
Cristye93be682015-11-26 09:07:51 -0500320<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="KuwaharaImage">KuwaharaImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000321
322<p>KuwaharaImage() is an edge preserving noise reduction filter.</p>
323
324<p>The format of the KuwaharaImage method is:</p>
325
326<pre class="text">
327Image *KuwaharaImage(const Image *image,const double radius,
328 const double sigma,ExceptionInfo *exception)
329</pre>
330
331<p>A description of each parameter follows:</p>
332
333<dd>
334</dd>
335
336<dd> </dd>
337<dl class="dl-horizontal">
338<dt>image</dt>
339<dd>the image. </dd>
340
341<dd> </dd>
342<dt>radius</dt>
343<dd>the square window radius. </dd>
344
345<dd> </dd>
346<dt>sigma</dt>
347<dd>the standard deviation of the Gaussian, in pixels. </dd>
348
349<dd> </dd>
350<dt>exception</dt>
351<dd>return any errors or warnings in this structure. </dd>
352
353<dd> </dd>
354</dl>
Cristye93be682015-11-26 09:07:51 -0500355<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="LocalContrastImage">LocalContrastImage</a></h2>
356
357<p>LocalContrastImage() attempts to increase the appearance of large-scale light-dark transitions. Local contrast enhancement works similarly to sharpening with an unsharp mask, however the mask is instead created using an image with a greater blur distance.</p>
358
359<p>The format of the LocalContrastImage method is:</p>
360
361<pre class="text">
362Image *LocalContrastImage(const Image *image, const double radius,
363 const double strength, ExceptionInfo *exception)
364</pre>
365
366<p>A description of each parameter follows:</p>
367
368<dd>
369</dd>
370
371<dd> </dd>
372<dl class="dl-horizontal">
373<dt>image</dt>
374<dd>the image. </dd>
375
376<dd> </dd>
377<dt>radius</dt>
378<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
379
380<dd> </dd>
381<dt>strength</dt>
382<dd>the strength of the blur mask in percentage. </dd>
383
384<dd> </dd>
385<dt>exception</dt>
386<dd>return any errors or warnings in this structure. </dd>
387
388<dd> </dd>
389</dl>
390<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="MotionBlurImage">MotionBlurImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000391
392<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>
393
394<p>Andrew Protano contributed this effect.</p>
395
396<p>The format of the MotionBlurImage method is:</p>
397
398<pre class="text">
399 Image *MotionBlurImage(const Image *image,const double radius,
400const double sigma,const double angle,ExceptionInfo *exception)
401</pre>
402
403<p>A description of each parameter follows:</p>
404
405<dd>
406</dd>
407
408<dd> </dd>
409<dl class="dl-horizontal">
410<dt>image</dt>
411<dd>the image. </dd>
412
413<dd> </dd>
414<dt>radius</dt>
415<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
416
417<dd> </dd>
418<dt>sigma</dt>
419<dd>the standard deviation of the Gaussian, in pixels. </dd>
420
421<dd> </dd>
422<dt>angle</dt>
423<dd>Apply the effect along this angle. </dd>
424
425<dd> </dd>
426<dt>exception</dt>
427<dd>return any errors or warnings in this structure. </dd>
428
429<dd> </dd>
430</dl>
Cristye93be682015-11-26 09:07:51 -0500431<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="PreviewImage">PreviewImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000432
433<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>
434
435<p>The format of the PreviewImages method is:</p>
436
437<pre class="text">
438Image *PreviewImages(const Image *image,const PreviewType preview,
439 ExceptionInfo *exception)
440</pre>
441
442<p>A description of each parameter follows:</p>
443
444<dd>
445</dd>
446
447<dd> </dd>
448<dl class="dl-horizontal">
449<dt>image</dt>
450<dd>the image. </dd>
451
452<dd> </dd>
453<dt>preview</dt>
454<dd>the image processing operation. </dd>
455
456<dd> </dd>
457<dt>exception</dt>
458<dd>return any errors or warnings in this structure. </dd>
459
460<dd> </dd>
461</dl>
Cristye93be682015-11-26 09:07:51 -0500462<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="RotationalBlurImage">RotationalBlurImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000463
464<p>RotationalBlurImage() applies a radial blur to the image.</p>
465
466<p>Andrew Protano contributed this effect.</p>
467
468<p>The format of the RotationalBlurImage method is:</p>
469
470<pre class="text">
471 Image *RotationalBlurImage(const Image *image,const double angle,
472ExceptionInfo *exception)
473</pre>
474
475<p>A description of each parameter follows:</p>
476
477<dd>
478</dd>
479
480<dd> </dd>
481<dl class="dl-horizontal">
482<dt>image</dt>
483<dd>the image. </dd>
484
485<dd> </dd>
486<dt>angle</dt>
487<dd>the angle of the radial blur. </dd>
488
489<dd> </dd>
490<dt>blur</dt>
491<dd>the blur. </dd>
492
493<dd> </dd>
494<dt>exception</dt>
495<dd>return any errors or warnings in this structure. </dd>
496
497<dd> </dd>
498</dl>
Cristye93be682015-11-26 09:07:51 -0500499<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SelectiveBlurImage">SelectiveBlurImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000500
501<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>
502
503<p>The format of the SelectiveBlurImage method is:</p>
504
505<pre class="text">
506Image *SelectiveBlurImage(const Image *image,const double radius,
507 const double sigma,const double threshold,ExceptionInfo *exception)
508</pre>
509
510<p>A description of each parameter follows:</p>
511
512<dd>
513</dd>
514
515<dd> </dd>
516<dl class="dl-horizontal">
517<dt>image</dt>
518<dd>the image. </dd>
519
520<dd> </dd>
521<dt>radius</dt>
522<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
523
524<dd> </dd>
525<dt>sigma</dt>
526<dd>the standard deviation of the Gaussian, in pixels. </dd>
527
528<dd> </dd>
529<dt>threshold</dt>
530<dd>only pixels within this contrast threshold are included in the blur operation. </dd>
531
532<dd> </dd>
533<dt>exception</dt>
534<dd>return any errors or warnings in this structure. </dd>
535
536<dd> </dd>
537</dl>
Cristye93be682015-11-26 09:07:51 -0500538<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="ShadeImage">ShadeImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000539
540<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>
541
542<p>The format of the ShadeImage method is:</p>
543
544<pre class="text">
545Image *ShadeImage(const Image *image,const MagickBooleanType gray,
546 const double azimuth,const double elevation,ExceptionInfo *exception)
547</pre>
548
549<p>A description of each parameter follows:</p>
550
551<dd>
552</dd>
553
554<dd> </dd>
555<dl class="dl-horizontal">
556<dt>image</dt>
557<dd>the image. </dd>
558
559<dd> </dd>
560<dt>gray</dt>
561<dd>A value other than zero shades the intensity of each pixel. </dd>
562
563<dd> </dd>
564<dt>azimuth, elevation</dt>
565<dd> Define the light source direction. </dd>
566
567<dd> </dd>
568<dt>exception</dt>
569<dd>return any errors or warnings in this structure. </dd>
570
571<dd> </dd>
572</dl>
Cristye93be682015-11-26 09:07:51 -0500573<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SharpenImage">SharpenImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000574
575<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>
576
577<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>
578
579<p>The format of the SharpenImage method is:</p>
580
581<pre class="text">
582 Image *SharpenImage(const Image *image,const double radius,
583const double sigma,ExceptionInfo *exception)
584</pre>
585
586<p>A description of each parameter follows:</p>
587
588<dd>
589</dd>
590
591<dd> </dd>
592<dl class="dl-horizontal">
593<dt>image</dt>
594<dd>the image. </dd>
595
596<dd> </dd>
597<dt>radius</dt>
598<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
599
600<dd> </dd>
601<dt>sigma</dt>
602<dd>the standard deviation of the Laplacian, in pixels. </dd>
603
604<dd> </dd>
605<dt>exception</dt>
606<dd>return any errors or warnings in this structure. </dd>
607
608<dd> </dd>
609</dl>
Cristye93be682015-11-26 09:07:51 -0500610<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="SpreadImage">SpreadImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000611
Cristy4de4f202015-09-16 16:50:53 -0400612<p>SpreadImage() is a special effects method that randomly displaces each pixel in a square area defined by the radius parameter.</p>
cristycecc9492015-06-09 16:53:50 +0000613
614<p>The format of the SpreadImage method is:</p>
615
616<pre class="text">
Cristy4de4f202015-09-16 16:50:53 -0400617Image *SpreadImage(const Image *image,
618 const PixelInterpolateMethod method,const double radius,
Cristy36421ee2015-08-28 11:58:20 -0400619 ExceptionInfo *exception)
cristycecc9492015-06-09 16:53:50 +0000620</pre>
621
622<p>A description of each parameter follows:</p>
623
624<dd>
625</dd>
626
627<dd> </dd>
628<dl class="dl-horizontal">
629<dt>image</dt>
630<dd>the image. </dd>
631
632<dd> </dd>
Cristy4de4f202015-09-16 16:50:53 -0400633<dt>method</dt>
634<dd> intepolation method. </dd>
635
636<dd> </dd>
cristycecc9492015-06-09 16:53:50 +0000637<dt>radius</dt>
638<dd> choose a random pixel in a neighborhood of this extent. </dd>
639
640<dd> </dd>
cristycecc9492015-06-09 16:53:50 +0000641<dt>exception</dt>
642<dd>return any errors or warnings in this structure. </dd>
643
644<dd> </dd>
645</dl>
Cristye93be682015-11-26 09:07:51 -0500646<h2><a href="http://www.imagemagick.org/api/MagickCore/effect_8c.html" id="UnsharpMaskImage">UnsharpMaskImage</a></h2>
cristycecc9492015-06-09 16:53:50 +0000647
648<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>
649
650<p>The format of the UnsharpMaskImage method is:</p>
651
652<pre class="text">
653 Image *UnsharpMaskImage(const Image *image,const double radius,
654const double sigma,const double amount,const double threshold,
655ExceptionInfo *exception)
656</pre>
657
658<p>A description of each parameter follows:</p>
659
660<dd>
661</dd>
662
663<dd> </dd>
664<dl class="dl-horizontal">
665<dt>image</dt>
666<dd>the image. </dd>
667
668<dd> </dd>
669<dt>radius</dt>
670<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
671
672<dd> </dd>
673<dt>sigma</dt>
674<dd>the standard deviation of the Gaussian, in pixels. </dd>
675
676<dd> </dd>
677<dt>gain</dt>
678<dd>the percentage of the difference between the original and the blur image that is added back into the original. </dd>
679
680<dd> </dd>
681<dt>threshold</dt>
682<dd>the threshold in pixels needed to apply the diffence gain. </dd>
683
684<dd> </dd>
685<dt>exception</dt>
686<dd>return any errors or warnings in this structure. </dd>
687
688<dd> </dd>
689</dl>
cristy06f63f22012-10-31 00:50:07 +0000690</div>
cristy44443b92015-05-05 00:06:07 +0000691 <footer class="magick-footer">
cristy29f2c972015-07-28 13:37:46 +0000692 <p><a href="../support.html">Donate</a>
693 <a href="../sitemap.html">Sitemap</a>
cristy38185362015-05-07 20:09:56 +0000694 <a href="../links.html">Related</a>
cristy29f2c972015-07-28 13:37:46 +0000695 <a href="../architecture.html">Architecture</a>
cristy44443b92015-05-05 00:06:07 +0000696</p>
697 <p><a href="effect.html#">Back to top</a>
cristyea2793e2015-05-31 16:52:26 +0000698 <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a>
cristy5b8fe762015-06-09 16:24:03 +0000699 <a href="http://nextgen.imagemagick.org/script/contact.php">Contact Us</a></p>
Cristyce4a3552015-12-14 13:53:35 -0500700 <p><small>© 1999-2015 ImageMagick Studio LLC</small></p>
cristy44443b92015-05-05 00:06:07 +0000701 </footer>
702</div><!-- /.container -->
cristy06f63f22012-10-31 00:50:07 +0000703
Cristye93be682015-11-26 09:07:51 -0500704 <script src="https://localhost/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
cristy29f2c972015-07-28 13:37:46 +0000705 <script src="http://nextgen.imagemagick.org/js/magick.html"></script>
cristy44cbd482013-08-04 20:53:36 +0000706</div>
cristy06f63f22012-10-31 00:50:07 +0000707</body>
cristy5a367e42015-05-05 12:39:18 +0000708</html>