• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2
3
4
5<!DOCTYPE html>
6<html lang="en">
7<head>
8  <meta charset="utf-8"  />
9  <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1,shrink-to-fit=no"  />
10  <title>ImageMagick - MagickCore, C API: Add an Effect</title>
11  <meta name="application-name" content="ImageMagick" />
12  <meta name="description" content="Use ImageMagick® to create, edit, compose, and convert bitmap images. Resize an image, crop it, change its shades and colors, add captions, and more." />
13  <meta name="application-url" content="https://imagemagick.org" />
14  <meta name="generator" content="PHP" />
15  <meta name="keywords" content="magickcore, c, api:, 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" />
22  <meta name="copyright" content="Copyright (c) 1999-2020 ImageMagick Studio LLC" />
23  <meta name="distribution" content="Global" />
24  <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1" />
25  <meta property='og:url' content='../../' />
26  <meta property='og:title' content='ImageMagick' />
27  <meta property='og:image' content='../../images/logo.png' />
28  <meta property='og:type' content='website' />
29  <meta property='og:site_name' content='ImageMagick' />
30  <meta property='og:description' content="Convert, Edit, or Compose Bitmap Images" />
31  <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
32  <link href="effect.html" rel="canonical" />
33  <link href="../../images/wand.png" rel="icon" />
34  <link href="../../images/wand.ico" rel="shortcut icon" />
35  <link href="../assets/magick.css" rel="stylesheet" />
36</head>
37<body>
38  <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark">
39    <a class="navbar-brand" href="../../"><img class="d-block" id="icon" alt="ImageMagick" width="32" height="32" src="../../images/wand.ico"/></a>
40    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsMagick" aria-controls="navbarsMagick" aria-expanded="false" aria-label="Toggle navigation">
41      <span class="navbar-toggler-icon"></span>
42    </button>
43
44    <div class="navbar-collapse collapse" id="navbarsMagick" style="">
45    <ul class="navbar-nav mr-auto">
46      <li class="nav-item ">
47        <a class="nav-link" href="../../">Home <span class="sr-only">(current)</span></a>
48      </li>
49      <li class="nav-item ">
50        <a class="nav-link" href="../../www/download.html">Download</a>
51      </li>
52      <li class="nav-item ">
53        <a class="nav-link" href="../../www/command-line-tools.html">Tools</a>
54      </li>
55      <li class="nav-item ">
56        <a class="nav-link" href="../../www/command-line-processing.html">Command-line</a>
57      </li>
58      <li class="nav-item ">
59        <a class="nav-link" href="../../www/resources.html">Resources</a>
60      </li>
61      <li class="nav-item ">
62        <a class="nav-link" href="../../www/develop.html">Develop</a>
63      </li>
64      <li class="nav-item">
65        <a class="nav-link" target="_blank" href="https://imagemagick.org/discourse-server/">Community</a>
66      </li>
67    </ul>
68    <form class="form-inline my-2 my-lg-0" action="../https://imagemagick.org/script/search.php">
69      <input class="form-control mr-sm-2" type="text" name="q" placeholder="Search" aria-label="Search">
70      <button class="btn btn-outline-success my-2 my-sm-0" type="submit" name="sa">Search</button>
71    </form>
72    </div>
73  </nav>
74  <div class="container">
75   <script async="async" src="https://localhost/pagead/js/adsbygoogle.js"></script>    <ins class="adsbygoogle"
76         style="display:block"
77         data-ad-client="ca-pub-3129977114552745"
78         data-ad-slot="6345125851"
79         data-full-width-responsive="true"
80         data-ad-format="horizontal"></ins>
81    <script>
82      (adsbygoogle = window.adsbygoogle || []).push({});
83    </script>
84
85  </div>
86
87  <main class="container">
88    <div class="magick-template">
89<div class="magick-header">
90<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>
91
92<h2><a href="../../api/MagickCore/effect_8c.html" id="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
93
94<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>
95
96<p>The format of the AdaptiveBlurImage method is:</p>
97
98<pre class="text">
99Image *AdaptiveBlurImage(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>
127<h2><a href="../../api/MagickCore/effect_8c.html" id="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
128
129<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>
130
131<p>The format of the AdaptiveSharpenImage method is:</p>
132
133<pre class="text">
134Image *AdaptiveSharpenImage(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 Laplacian, 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>
162<h2><a href="../../api/MagickCore/effect_8c.html" id="BlurImage">BlurImage</a></h2>
163
164<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>
165
166<p>The format of the BlurImage method is:</p>
167
168<pre class="text">
169Image *BlurImage(const Image *image,const double radius,
170  const double sigma,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>radius</dt>
185<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
186
187<dd> </dd>
188<dt>sigma</dt>
189<dd>the standard deviation of the Gaussian, in pixels. </dd>
190
191<dd> </dd>
192<dt>exception</dt>
193<dd>return any errors or warnings in this structure. </dd>
194
195<dd>  </dd>
196</dl>
197<h2><a href="../../api/MagickCore/effect_8c.html" id="ConvolveImage">ConvolveImage</a></h2>
198
199<p>ConvolveImage() applies a custom convolution kernel to the image.</p>
200
201<p>The format of the ConvolveImage method is:</p>
202
203<pre class="text">
204Image *ConvolveImage(const Image *image,const KernelInfo *kernel,
205  ExceptionInfo *exception)
206</pre>
207
208<p>A description of each parameter follows:</p>
209
210<dd>
211</dd>
212
213<dd> </dd>
214<dl class="dl-horizontal">
215<dt>image</dt>
216<dd>the image. </dd>
217
218<dd> </dd>
219<dt>kernel</dt>
220<dd>the filtering kernel. </dd>
221
222<dd> </dd>
223<dt>exception</dt>
224<dd>return any errors or warnings in this structure. </dd>
225
226<dd>  </dd>
227</dl>
228<h2><a href="../../api/MagickCore/effect_8c.html" id="DespeckleImage">DespeckleImage</a></h2>
229
230<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>
231
232<p>The format of the DespeckleImage method is:</p>
233
234<pre class="text">
235Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
236</pre>
237
238<p>A description of each parameter follows:</p>
239
240<dd>
241</dd>
242
243<dd> </dd>
244<dl class="dl-horizontal">
245<dt>image</dt>
246<dd>the image. </dd>
247
248<dd> </dd>
249<dt>exception</dt>
250<dd>return any errors or warnings in this structure. </dd>
251
252<dd>  </dd>
253</dl>
254<h2><a href="../../api/MagickCore/effect_8c.html" id="EdgeImage">EdgeImage</a></h2>
255
256<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>
257
258<p>The format of the EdgeImage method is:</p>
259
260<pre class="text">
261Image *EdgeImage(const Image *image,const double radius,
262  ExceptionInfo *exception)
263</pre>
264
265<p>A description of each parameter follows:</p>
266
267<dd>
268</dd>
269
270<dd> </dd>
271<dl class="dl-horizontal">
272<dt>image</dt>
273<dd>the image. </dd>
274
275<dd> </dd>
276<dt>radius</dt>
277<dd>the radius of the pixel neighborhood. </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>
285<h2><a href="../../api/MagickCore/effect_8c.html" id="EmbossImage">EmbossImage</a></h2>
286
287<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>
288
289<p>The format of the EmbossImage method is:</p>
290
291<pre class="text">
292Image *EmbossImage(const Image *image,const 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 pixel neighborhood. </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>
320<h2><a href="../../api/MagickCore/effect_8c.html" id="GaussianBlurImage">GaussianBlurImage</a></h2>
321
322<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>
323
324<p>The format of the GaussianBlurImage method is:</p>
325
326<pre class="text">
327Image *GaussianBlurImage(const Image *image,onst 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 radius of the Gaussian, in pixels, not counting the center pixel. </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>
355<h2><a href="../../api/MagickCore/effect_8c.html" id="KuwaharaImage">KuwaharaImage</a></h2>
356
357<p>KuwaharaImage() is an edge preserving noise reduction filter.</p>
358
359<p>The format of the KuwaharaImage method is:</p>
360
361<pre class="text">
362Image *KuwaharaImage(const Image *image,const double radius,
363  const double sigma,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 square window radius. </dd>
379
380<dd> </dd>
381<dt>sigma</dt>
382<dd>the standard deviation of the Gaussian, in pixels. </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="../../api/MagickCore/effect_8c.html" id="LocalContrastImage">LocalContrastImage</a></h2>
391
392<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>
393
394<p>The format of the LocalContrastImage method is:</p>
395
396<pre class="text">
397Image *LocalContrastImage(const Image *image, const double radius,
398  const double strength,ExceptionInfo *exception)
399</pre>
400
401<p>A description of each parameter follows:</p>
402
403<dd>
404</dd>
405
406<dd> </dd>
407<dl class="dl-horizontal">
408<dt>image</dt>
409<dd>the image. </dd>
410
411<dd> </dd>
412<dt>radius</dt>
413<dd>the radius of the Gaussian blur, in percentage with 100 resulting in a blur radius of 20 of largest dimension. </dd>
414
415<dd> </dd>
416<dt>strength</dt>
417<dd>the strength of the blur mask in percentage. </dd>
418
419<dd> </dd>
420<dt>exception</dt>
421<dd>return any errors or warnings in this structure. </dd>
422
423<dd>  </dd>
424</dl>
425<h2><a href="../../api/MagickCore/effect_8c.html" id="MotionBlurImage">MotionBlurImage</a></h2>
426
427<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>
428
429<p>Andrew Protano contributed this effect.</p>
430
431<p>The format of the MotionBlurImage method is:</p>
432
433<pre class="text">
434    Image *MotionBlurImage(const Image *image,const double radius,
435const double sigma,const double angle,ExceptionInfo *exception)
436</pre>
437
438<p>A description of each parameter follows:</p>
439
440<dd>
441</dd>
442
443<dd> </dd>
444<dl class="dl-horizontal">
445<dt>image</dt>
446<dd>the image. </dd>
447
448<dd> </dd>
449<dt>radius</dt>
450<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
451
452<dd> </dd>
453<dt>sigma</dt>
454<dd>the standard deviation of the Gaussian, in pixels. </dd>
455
456<dd> </dd>
457<dt>angle</dt>
458<dd>Apply the effect along this angle. </dd>
459
460<dd> </dd>
461<dt>exception</dt>
462<dd>return any errors or warnings in this structure. </dd>
463
464<dd>  </dd>
465</dl>
466<h2><a href="../../api/MagickCore/effect_8c.html" id="PreviewImage">PreviewImage</a></h2>
467
468<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>
469
470<p>The format of the PreviewImages method is:</p>
471
472<pre class="text">
473Image *PreviewImages(const Image *image,const PreviewType preview,
474  ExceptionInfo *exception)
475</pre>
476
477<p>A description of each parameter follows:</p>
478
479<dd>
480</dd>
481
482<dd> </dd>
483<dl class="dl-horizontal">
484<dt>image</dt>
485<dd>the image. </dd>
486
487<dd> </dd>
488<dt>preview</dt>
489<dd>the image processing operation. </dd>
490
491<dd> </dd>
492<dt>exception</dt>
493<dd>return any errors or warnings in this structure. </dd>
494
495<dd>  </dd>
496</dl>
497<h2><a href="../../api/MagickCore/effect_8c.html" id="RotationalBlurImage">RotationalBlurImage</a></h2>
498
499<p>RotationalBlurImage() applies a radial blur to the image.</p>
500
501<p>Andrew Protano contributed this effect.</p>
502
503<p>The format of the RotationalBlurImage method is:</p>
504
505<pre class="text">
506    Image *RotationalBlurImage(const Image *image,const double angle,
507ExceptionInfo *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>angle</dt>
522<dd>the angle of the radial blur. </dd>
523
524<dd> </dd>
525<dt>blur</dt>
526<dd>the blur. </dd>
527
528<dd> </dd>
529<dt>exception</dt>
530<dd>return any errors or warnings in this structure. </dd>
531
532<dd>  </dd>
533</dl>
534<h2><a href="../../api/MagickCore/effect_8c.html" id="SelectiveBlurImage">SelectiveBlurImage</a></h2>
535
536<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>
537
538<p>The format of the SelectiveBlurImage method is:</p>
539
540<pre class="text">
541Image *SelectiveBlurImage(const Image *image,const double radius,
542  const double sigma,const double threshold,ExceptionInfo *exception)
543</pre>
544
545<p>A description of each parameter follows:</p>
546
547<dd>
548</dd>
549
550<dd> </dd>
551<dl class="dl-horizontal">
552<dt>image</dt>
553<dd>the image. </dd>
554
555<dd> </dd>
556<dt>radius</dt>
557<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
558
559<dd> </dd>
560<dt>sigma</dt>
561<dd>the standard deviation of the Gaussian, in pixels. </dd>
562
563<dd> </dd>
564<dt>threshold</dt>
565<dd>only pixels within this contrast threshold are included in the blur operation. </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>
573<h2><a href="../../api/MagickCore/effect_8c.html" id="ShadeImage">ShadeImage</a></h2>
574
575<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>
576
577<p>The format of the ShadeImage method is:</p>
578
579<pre class="text">
580Image *ShadeImage(const Image *image,const MagickBooleanType gray,
581  const double azimuth,const double elevation,ExceptionInfo *exception)
582</pre>
583
584<p>A description of each parameter follows:</p>
585
586<dd>
587</dd>
588
589<dd> </dd>
590<dl class="dl-horizontal">
591<dt>image</dt>
592<dd>the image. </dd>
593
594<dd> </dd>
595<dt>gray</dt>
596<dd>A value other than zero shades the intensity of each pixel. </dd>
597
598<dd> </dd>
599<dt>azimuth, elevation</dt>
600<dd> Define the light source direction. </dd>
601
602<dd> </dd>
603<dt>exception</dt>
604<dd>return any errors or warnings in this structure. </dd>
605
606<dd>  </dd>
607</dl>
608<h2><a href="../../api/MagickCore/effect_8c.html" id="SharpenImage">SharpenImage</a></h2>
609
610<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>
611
612<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>
613
614<p>The format of the SharpenImage method is:</p>
615
616<pre class="text">
617    Image *SharpenImage(const Image *image,const double radius,
618const double sigma,ExceptionInfo *exception)
619</pre>
620
621<p>A description of each parameter follows:</p>
622
623<dd>
624</dd>
625
626<dd> </dd>
627<dl class="dl-horizontal">
628<dt>image</dt>
629<dd>the image. </dd>
630
631<dd> </dd>
632<dt>radius</dt>
633<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
634
635<dd> </dd>
636<dt>sigma</dt>
637<dd>the standard deviation of the Laplacian, in pixels. </dd>
638
639<dd> </dd>
640<dt>exception</dt>
641<dd>return any errors or warnings in this structure. </dd>
642
643<dd>  </dd>
644</dl>
645<h2><a href="../../api/MagickCore/effect_8c.html" id="SpreadImage">SpreadImage</a></h2>
646
647<p>SpreadImage() is a special effects method that randomly displaces each pixel in a square area defined by the radius parameter.</p>
648
649<p>The format of the SpreadImage method is:</p>
650
651<pre class="text">
652Image *SpreadImage(const Image *image,
653  const PixelInterpolateMethod method,const double radius,
654  ExceptionInfo *exception)
655</pre>
656
657<p>A description of each parameter follows:</p>
658
659<dd>
660</dd>
661
662<dd> </dd>
663<dl class="dl-horizontal">
664<dt>image</dt>
665<dd>the image. </dd>
666
667<dd> </dd>
668<dt>method</dt>
669<dd> intepolation method. </dd>
670
671<dd> </dd>
672<dt>radius</dt>
673<dd> choose a random pixel in a neighborhood of this extent. </dd>
674
675<dd> </dd>
676<dt>exception</dt>
677<dd>return any errors or warnings in this structure. </dd>
678
679<dd>  </dd>
680</dl>
681<h2><a href="../../api/MagickCore/effect_8c.html" id="UnsharpMaskImage">UnsharpMaskImage</a></h2>
682
683<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>
684
685<p>The format of the UnsharpMaskImage method is:</p>
686
687<pre class="text">
688    Image *UnsharpMaskImage(const Image *image,const double radius,
689const double sigma,const double amount,const double threshold,
690ExceptionInfo *exception)
691</pre>
692
693<p>A description of each parameter follows:</p>
694
695<dd>
696</dd>
697
698<dd> </dd>
699<dl class="dl-horizontal">
700<dt>image</dt>
701<dd>the image. </dd>
702
703<dd> </dd>
704<dt>radius</dt>
705<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
706
707<dd> </dd>
708<dt>sigma</dt>
709<dd>the standard deviation of the Gaussian, in pixels. </dd>
710
711<dd> </dd>
712<dt>gain</dt>
713<dd>the percentage of the difference between the original and the blur image that is added back into the original. </dd>
714
715<dd> </dd>
716<dt>threshold</dt>
717<dd>the threshold in pixels needed to apply the diffence gain. </dd>
718
719<dd> </dd>
720<dt>exception</dt>
721<dd>return any errors or warnings in this structure. </dd>
722
723<dd>  </dd>
724</dl>
725</div>
726    </div>
727  </main><!-- /.container -->
728  <footer class="magick-footer">
729    <p><a href="../../www/security-policy.html">Security</a> •
730    <a href="../../www/architecture.html">Architecture</a>
731
732    <a href="effect.html#"><img class="d-inline" id="wand" alt="And Now a Touch of Magick" width="16" height="16" src="../../images/wand.ico"/></a>
733
734    <a href="../../www/links.html">Related</a> •
735     <a href="../../www/sitemap.html">Sitemap</a>
736    <br/>
737    <a href="../../www/support.html">Donate</a> •
738    <a href="http://pgp.mit.edu/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
739    <a href="../../www/contact.html">Contact Us</a>
740    <br/>
741    <small>© 1999-2020 ImageMagick Studio LLC</small></p>
742  </footer>
743
744  <!-- Javascript assets -->
745  <script src="../assets/magick.js" crossorigin="anonymous"></script>
746  <script>window.jQuery || document.write('<script src="https://localhost/ajax/libs/jquery/3.4.1/jquery.min.js"><\/script>')</script>
747</body>
748</html>
749<!-- Magick Cache 5th January 2020 00:27 -->