]> granicus.if.org Git - imagemagick/blob - www/api/histogram.html
(no commit message)
[imagemagick] / www / api / histogram.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" \r
2   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
3 <html version="-//W3C//DTD XHTML 1.1//EN"\r
4       xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"\r
5       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
6       xsi:schemaLocation="http://www.w3.org/1999/xhtml\r
7                           http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">\r
8 <head>\r
9   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\r
10   <meta name="google-site-verification" content="MxsMq6bdLOx0KSuz1MY6yG9ZTIJ7_7DVRfl5NCAT5Yg"/>\r
11   <title>ImageMagick: MagickCore, C API for ImageMagick: Image Histograms</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="Application-name" content="ImageMagick"/>
16   <meta name="Description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats.  In addition resize, rotate, shear, distort and transform images automagically."/>
17   <meta name="Application-url" content="http://www.imagemagick.org"/>
18   <meta name="Generator" content="PHP"/>
19   <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, image, histograms, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Image, Processing, Automagically"/>
20   <meta name="Rating" content="GENERAL"/>
21   <meta name="Robots" content="INDEX, FOLLOW"/>
22   <meta name="Generator" content="ImageMagick Studio LLC"/>
23   <meta name="Author" content="ImageMagick Studio LLC"/>
24   <meta name="Revisit-after" content="2 DAYS"/>
25   <meta name="Resource-type" content="document"/>
26   <meta name="Copyright" content="Copyright (c) 1999-2011 ImageMagick Studio LLC"/>
27   <meta name="Distribution" content="Global"/>
28   <link rel="icon" href="../../images/wand.png"/>
29   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/x-icon"/>
30   <link rel="canonical" href="http://www.imagemagick.org" />\r
31   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>\r
32   <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />\r
33   <link rel="stylesheet" type="text/css" href="http://www.imagemagick.org/fancybox/jquery.fancybox-1.3.4.css" media="screen" />\r
34   <style type="text/css" media="all">\r
35     @import url("../../www/magick.css");\r
36   </style>\r
37   <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>\r
38   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>\r
39   <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.fancybox-1.3.4.pack.js"></script>\r
40   <script type="text/javascript">\r
41     $(document).ready(function() {\r
42       $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({\r
43         'transitionIn'  : 'elastic',\r
44         'transitionOut' : 'elastic',\r
45         'overlayShow'   : false,\r
46         'opacity'       : true\r
47       });\r
48     });\r
49   </script>\r
50 </head>\r
51 \r
52 <body id="www-imagemagick-org">\r
53 <div class="titlebar">\r
54 <div style="margin: 17px auto; float: left;">\r
55   <script type="text/javascript">\r
56   <!--\r
57     google_ad_client = "pub-3129977114552745";\r
58     google_ad_slot = "5439289906";\r
59     google_ad_width = 728;\r
60     google_ad_height = 90;\r
61   //-->\r
62   </script>\r
63   <script type="text/javascript"\r
64     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
65   </script>\r
66 </div>\r
67 <a href="http://www.imagemagick.org/discourse-server/">\r
68   <img src="../../images/logo.jpg"\r
69   alt="ImageMagick Logo"\r
70   style="width: 123px; height: 118px; border: 0px; float: right;" /></a>\r
71 <a href="../../index.html">\r
72   <img src="../../images/sprite.jpg"\r
73   alt="ImageMagick Sprite"\r
74   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
75 </div>\r
76 \r
77 <div class="westbar">\r
78 \r
79 <div class="menu">
80   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
81 </div>
82 <div class="menu">
83   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
84 </div>
85 <div class="sub">
86     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
87 </div>
88 <div class="sub">
89     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
90 </div>
91 <div class="sub">
92     <a title="Binary Release: iOS" href="../../www/binary-releases.html#iOS">iOS</a>
93 </div>
94 <div class="sub">
95     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
96 </div>
97 <div class="sep"></div>\r
98 <div class="menu">
99   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
100 </div>
101 <div class="sub">
102     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
103 </div>
104 <div class="sub">
105     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
106 </div>
107 <div class="sub">
108     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
109 </div>
110 <div class="menu">
111   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
112 </div>
113 <div class="sub">
114     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
115 </div>
116 <div class="sub">
117     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
118 </div>
119 <div class="sub">
120     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
121 </div>
122 <div class="sub">
123     <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
124 </div>
125 <div class="sep"></div>\r
126 <div  class="menu">
127    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
128 </div>
129 <div class="sub">
130     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
131 </div>
132 <div class="sub">
133     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
134  </div>
135 <div class="menu">
136   <a title="Resources" href="../../www/resources.html">Resources</a>
137 </div>
138 <div class="menu">
139   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
140 </div>
141 <div class="menu">
142   <a title="Download" href="../../www/download.html">Download</a>
143 </div>
144 <div class="sep"></div>\r
145 <div class="menu">
146   <a title="Search" href="../../www/search.html">Search</a>
147 </div>
148 <div class="sep"></div>\r
149 <div class="menu">
150   <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
151 </div>
152 <div  class="sub">
153   <a title="Site Map: Links" href="../../www/links.html">Links</a>
154 </div>
155 <div class="sep"></div>\r
156 <div  class="menu">
157   <a rel="follow" title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
158
159 <a href="http://www.networkredux.com">
160   <img src="../../images/networkredux.png" alt="[sponsor]"
161   style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a>
162 <div class="sponsbox">
163 <div  class="sponsor">
164   <a rel="follow" title="Sponsor: Web Hosting" href="http://www.micfo.com">Web Hosting</a><!-- 209901010090s golestan -->
165 </div>
166 <div  class="sponsor">
167   <a rel="follow" title="Sponsor: Autos part" href="http://www.pkwteile.de/autoteile">Autos part</a><!-- 201112010090s jr@pkwte... -->
168 </div>
169 <div  class="sponsor">
170   <a rel="follow" title="Sponsor: Search engine optimisation" href="http://www.seomoves.com.au">Search engine optimisation</a><!-- 201110010090s jen@seo lowprofilelinks -->
171 </div>
172 <div  class="sponsor">
173   <a rel="follow" title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
174 </div>
175 <div  class="sponsor">
176   <a rel="follow" title="Sponsor: Web Hosting Deals" href="http://www.webhostingdeals.org">Web Hosting Deals</a><!-- 201111010270 chee.hoa darin -->
177 </div>
178 <div  class="sponsor">
179   <a rel="follow" title="Sponsor: Web Hosting Reviews" href="http://www.webhostingsecretrevealed.com">Web Hosting Secret Revealed</a><!-- 201204010540 iamchee jerry -->
180 </div>
181 <div  class="sponsor">
182   <a rel="follow" title="Sponsor: Web Hosting Break" href="http://www.webhostingbreak.com">Web Hosting Break</a><!-- 201109010090 ian@ian-m... -->
183 </div>
184 <div  class="sponsor">
185   <a rel="follow" title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201303011500 r.leo -->
186 </div>
187 <div  class="sponsor">
188   <a rel="follow" title="Sponsor: Website Hosting" href="http://www.hostreviewgeeks.com">Website Hosting</a><!-- 201110010090 alexanian media -->
189 </div>
190 <div  class="sponsor">
191   <a rel="follow" title="Sponsor: Hotel München" href="http://www.messehotel-erb-muenchen.de">Hotel München</a><!-- 201111010450 cerb -->
192 </div>
193 <div  class="sponsor">
194   <a rel="follow" title="Sponsor: Best Web Hosting" href="http://webhostinggeeks.com">Best Web Hosting</a><!-- 201110010720 -->
195 </div>
196 <div  class="sponsor">
197   <a rel="follow" title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
198 </div>
199 <div  class="sponsor">
200   <a rel="follow" title="Sponsor: Web Hosting Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
201 </div>
202 <div  class="sponsor">
203    <a rel="follow" title="Sponsor: Brand shopping" href="http://brandport.net">Brand shopping</a><!-- 20120201000150 gyaku@gyaku... -->
204 </div>
205 </div>
206 </div>
207 </div>\r
208 \r
209 <div class="eastbar">\r
210   <div class="g-plusone" data-size="standard" data-count="false"></div>\r
211 </div>\r
212 \r
213 <div class="main">\r
214 \r
215 <h1>Module histogram Methods</h1>
216 <p class="navigation-index">[<a href="#GetImageHistogram">GetImageHistogram</a> &bull; <a href="#IsHistogramImage">IsHistogramImage</a> &bull; <a href="#IsPaletteImage">IsPaletteImage</a> &bull; <a href="#MinMaxStretchImage">MinMaxStretchImage</a> &bull; <a href="#GetNumberColors">GetNumberColors</a> &bull; <a href="#UniqueImageColors">UniqueImageColors</a>]</p>
217
218 <h2><a href="http://www.imagemagick.org/api/MagickCore/histogram_8c.html" id="GetImageHistogram">GetImageHistogram</a></h2>
219 <div class="doc-section">
220
221 <p>GetImageHistogram() returns the unique colors in an image.</p>
222
223 <p>The format of the GetImageHistogram method is:</p>
224
225 <pre class="code">
226   size_t GetImageHistogram(const Image *image,
227     size_t *number_colors,ExceptionInfo *exception)
228 </pre>
229
230 <p>A description of each parameter follows.</p>
231
232 <h5>image</h5>
233 <p>the image.</p>
234
235 <h5>file</h5>
236 <p>Write a histogram of the color distribution to this file handle.</p>
237
238 <h5>exception</h5>
239 <p>return any errors or warnings in this structure.</p>
240
241  </div>
242 <h2><a href="http://www.imagemagick.org/api/MagickCore/histogram_8c.html" id="IsHistogramImage">IsHistogramImage</a></h2>
243 <div class="doc-section">
244
245 <p>IsHistogramImage() returns MagickTrue if the image has 1024 unique colors or less.</p>
246
247 <p>The format of the IsHistogramImage method is:</p>
248
249 <pre class="code">
250   MagickBooleanType IsHistogramImage(const Image *image,
251     ExceptionInfo *exception)
252 </pre>
253
254 <p>A description of each parameter follows.</p>
255
256 <h5>image</h5>
257 <p>the image.</p>
258
259 <h5>exception</h5>
260 <p>return any errors or warnings in this structure.</p>
261
262  </div>
263 <h2><a href="http://www.imagemagick.org/api/MagickCore/histogram_8c.html" id="IsPaletteImage">IsPaletteImage</a></h2>
264 <div class="doc-section">
265
266 <p>IsPaletteImage() returns MagickTrue if the image is PseudoClass and has 256 unique colors or less.</p>
267
268 <p>The format of the IsPaletteImage method is:</p>
269
270 <pre class="code">
271   MagickBooleanType IsPaletteImage(const Image *image,
272     ExceptionInfo *exception)
273 </pre>
274
275 <p>A description of each parameter follows.</p>
276
277 <h5>image</h5>
278 <p>the image.</p>
279
280 <h5>exception</h5>
281 <p>return any errors or warnings in this structure.</p>
282
283  </div>
284 <h2><a href="http://www.imagemagick.org/api/MagickCore/histogram_8c.html" id="MinMaxStretchImage">MinMaxStretchImage</a></h2>
285 <div class="doc-section">
286
287 <p>MinMaxStretchImage() uses the exact minimum and maximum values found in each of the channels given, as the BlackPoint and WhitePoint to linearly stretch the colors (and histogram) of the image.  The stretch points are also moved further inward by the adjustment values given.</p>
288
289 <p>If the adjustment values are both zero this function is equivalent to a perfect normalization (or autolevel) of the image.</p>
290
291 <p>Each channel is stretched independantally of each other (producing color distortion) unless the special 'SyncChannels' flag is also provided in the channels setting. If this flag is present the minimum and maximum point will be extracted from all the given channels, and those channels will be stretched by exactly the same amount (preventing color distortion).</p>
292
293 <p>In the special case that only ONE value is found in a channel of the image that value is not stretched, that value is left as is.</p>
294
295 <p>The 'SyncChannels' is turned on in the 'DefaultChannels' setting by default.</p>
296
297 <p>The format of the MinMaxStretchImage method is:</p>
298
299 <pre class="code">
300   MagickBooleanType MinMaxStretchImage(Image *image,const double black,
301     const double white)
302 </pre>
303
304 <p>A description of each parameter follows:</p>
305
306 <h5>image</h5>
307 <p>The image to auto-level</p>
308
309 <h5>black, white</h5>
310 <p>move the black / white point inward from the minimum and maximum points by this color value.</p>
311
312  </div>
313 <h2><a href="http://www.imagemagick.org/api/MagickCore/histogram_8c.html" id="GetNumberColors">GetNumberColors</a></h2>
314 <div class="doc-section">
315
316 <p>GetNumberColors() returns the number of unique colors in an image.</p>
317
318 <p>The format of the GetNumberColors method is:</p>
319
320 <pre class="code">
321   size_t GetNumberColors(const Image *image,FILE *file,
322     ExceptionInfo *exception)
323 </pre>
324
325 <p>A description of each parameter follows.</p>
326
327 <h5>image</h5>
328 <p>the image.</p>
329
330 <h5>file</h5>
331 <p>Write a histogram of the color distribution to this file handle.</p>
332
333 <h5>exception</h5>
334 <p>return any errors or warnings in this structure.</p>
335
336  </div>
337 <h2><a href="http://www.imagemagick.org/api/MagickCore/histogram_8c.html" id="UniqueImageColors">UniqueImageColors</a></h2>
338 <div class="doc-section">
339
340 <p>UniqueImageColors() returns the unique colors of an image.</p>
341
342 <p>The format of the UniqueImageColors method is:</p>
343
344 <pre class="code">
345   Image *UniqueImageColors(const Image *image,ExceptionInfo *exception)
346 </pre>
347
348 <p>A description of each parameter follows.</p>
349
350 <h5>image</h5>
351 <p>the image.</p>
352
353 <h5>exception</h5>
354 <p>return any errors or warnings in this structure.</p>
355
356  </div>
357 \r
358 </div>\r
359 \r
360 <div id="linkbar">\r
361     <span id="linkbar-west">&nbsp;</span>\r
362     <span id="linkbar-center">\r
363       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
364       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
365     </span>\r
366     <span id="linkbar-east">&nbsp;</span>\r
367   </div>\r
368   <div class="footer">\r
369     <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>\r
370     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
371   </div>\r
372   <div style="clear: both; margin: 0; width: 100%; "></div>\r
373   <script type="text/javascript">\r
374     var _gaq = _gaq || [];\r
375     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
376     _gaq.push(['_trackPageview']);\r
377 \r
378     (function() {\r
379       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
380       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
381       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
382     })();\r
383   </script>\r
384 </body>\r
385 </html>\r