"Fossies" - the Fresh Open Source Software Archive

Member "sip-0.12.1/help/en_US/mogrify.xml" (9 Apr 2012, 47785 Bytes) of package /linux/privat/sip-0.12.1.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) XML source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "mogrify.xml": 0.5.6_vs_0.12.1.

    1 <?xml version="1.0" encoding="ISO-8859-1"?>
    2 <refentry xmlns="http://docbook.org/ns/docbook"
    3 xmlns:xlink="http://www.w3.org/1999/xlink"
    4 xmlns:svg="http://www.w3.org/2000/svg"
    5 xmlns:mml="http://www.w3.org/1998/Math/MathML"
    6 xmlns:db="http://docbook.org/ns/docbook" version="5.0-subset Scilab"
    7 xml:lang="en" xml:id="mogrify">
    8 <info><pubdate>February 2004</pubdate>
    9 </info>
   10 <refnamediv>
   11   <refname>mogrify</refname>
   12   <refpurpose>
   13    Filter, rotate, zoom, equalize, and much more image manipulation.
   14   </refpurpose>
   15 </refnamediv>
   16 
   17 <refsynopsisdiv>
   18   <title>Calling Sequence</title>
   19   <synopsis>[imout (,map)] = mogrify(im, argv)</synopsis>
   20   <synopsis>[imout (,map)] = mogrify(imRGB, argv)</synopsis>
   21   <synopsis>[imout (,map)] = mogrify(index, colormap, argv)</synopsis>
   22 </refsynopsisdiv>
   23 
   24 <refsection><title>Input Parameters</title>
   25 <variablelist>
   26    <varlistentry>
   27      <term>im</term>
   28      <listitem>
   29         binary or grayscale image in the 0-1 range
   30      </listitem>
   31    </varlistentry>
   32 
   33    <varlistentry>
   34      <term>imRGB</term>
   35      <listitem>
   36         truecolor image represented as a 3D array, in the 0-1 range.
   37      </listitem>
   38    </varlistentry>
   39 
   40    <varlistentry>
   41      <term>index</term>
   42      <listitem>
   43     MxN matrix containing the indexes to a colormap (for indexed images). Indices start at 1.
   44      </listitem>
   45    </varlistentry>
   46 
   47    <varlistentry>
   48      <term>colormap</term>
   49      <listitem>
   50     <para>
   51       an (NCx3) matrix in the 0-1 range.
   52     </para>
   53      </listitem>
   54    </varlistentry>
   55 
   56    <varlistentry>
   57      <term>argv</term>
   58      <listitem>
   59       <para>
   60        (argument vector), a string vector, row or column, containing image processing commands. See the section "Argv Argument" bellow for a listing of the available options. The "Example" bellow demonstrates how to use this argument.
   61        </para>
   62      </listitem>
   63    </varlistentry>
   64 </variablelist>
   65 </refsection>
   66 
   67 <refsection><title>Output Parameters</title>
   68 <variablelist>
   69    <varlistentry>
   70      <term>imout</term>
   71      <listitem>
   72       For truecolor images, this is a MxNx3 matrix in the 0-1 range. For binary
   73       images, image is a MxNx1 matrix (0=black and 1=white). For grayscale images,
   74       this is an MxN matrix in the 0-1 range. For indexed images, this is an MxN
   75       matrix in the 1-NC range, where NC is the number of colors.
   76      </listitem>
   77    </varlistentry>
   78 
   79    <varlistentry>
   80      <term>map</term>
   81      <listitem>
   82       NCx3 matrix containing the image colormap, where Nc is the number of colors. Entries range from 0 to 1.
   83      </listitem>
   84    </varlistentry>
   85 </variablelist>
   86 </refsection>
   87 <refsection>
   88 
   89 <title>Description</title>
   90 
   91 <para> 
   92    <literal>mogrify</literal> does many image processing operations. It  is a
   93    direct C-language interface to ImageMagick, providing  the same
   94    functinality as the commandline "mogrify" utilty. The difference
   95    is that SIP&apos;s mogrify acts upon scilab  matrices instead of
   96    image files, and, therefore, is considerably faster. Please
   97    see the section "ARGV ARGUMENT"  bellow for details on how the
   98    parameter argv is built.
   99 </para>
  100 </refsection>
  101 
  102 <refsection>
  103   <title>Examples</title>
  104   <programlisting role="example"><![CDATA[
  105 Please follow the TransMogrify demo using the following command:
  106      exec(SIPDEMO);
  107 ]]></programlisting>
  108 </refsection>
  109 
  110     <para><emphasis role="bold">An image from a plate, and an histogram-equalized image:</emphasis></para>
  111     <para><imagedata fileref="../../images/plate.gif" /> <imagedata fileref="../images/plate-equalized.jpg" /></para>
  112 
  113     <para><emphasis role="bold">A noisy image with salt-and-peper noise and the result of median-filtering:</emphasis></para>
  114     <para><imagedata fileref="../images/onca-median_noisy.jpg" /> <imagedata fileref="../images/onca-median_filtered.jpg" /></para>
  115     
  116     <para><emphasis role="bold">Scaling and rotation(interpolated):</emphasis></para>
  117     <para><imagedata fileref="../images/onca-scaled.jpg" /> <imagedata fileref="../images/onca-rotated.jpg" /> </para>
  118 
  119     <para><emphasis role="bold">Original bird image, raster drawings, and color segmentation:</emphasis></para>
  120     <para><imagedata fileref="../../images/ararauna.jpg" /> <imagedata fileref="../images/ararauna-drawings.jpg" /> 
  121     <imagedata fileref="../images/ararauna-segmented.jpg" /> </para>
  122 
  123     <para><emphasis role="bold">The original photo of various indian craft, the emboss effect, and the swril effect:</emphasis></para>
  124     <para><imagedata fileref="../../images/indian.bmp" /> <imagedata fileref="../images/indian-emboss.jpg" /> 
  125     <imagedata fileref="../images/indian-swirl.jpg" /> </para>
  126 
  127 <refsection>
  128   <title>The ARGV parameter</title>
  129    <para>
  130      In this section, angle brackets ("&lt;&gt;") enclose variables and
  131   curly brackets ("{}") enclose optional parameters. For example,
  132   <literal>"-fuzz &lt;distance&gt;{%}"</literal> means you can use the option
  133   <literal>['-fuzz','10']</literal> or <literal>['-fuzz', '2%']</literal>.
  134   </para>
  135 <variablelist>
  136 <varlistentry>
  137    <term>-affine &lt;matrix&gt;</term>
  138    <listitem>
  139       drawing transform matrix.
  140       This option provides a transform matrix {sx,rx,ry,sy,tx,ty} for
  141       use by subsequent 
  142       <emphasis>-draw</emphasis> or 
  143       <emphasis>-transform</emphasis> option.
  144    </listitem>
  145 </varlistentry>
  146       <varlistentry>
  147 <term>-antialias</term>
  148    <listitem>
  149       remove pixel aliasing
  150       By default antialiasing algorithms are used when drawing objects (e.g. lines)
  151       or rendering vector formats (e.g. WMF and Postscript). Use +antialias to
  152       disable use of antialiasing algorithms. Reasons to disable antialiasing
  153       include avoiding increasing colors in the image, or improving rendering speed.
  154    </listitem>
  155    </varlistentry>
  156       <varlistentry>
  157 <term>-background &lt;color&gt;</term>
  158    <listitem>
  159       the background color
  160       The color is specified using the format described in the "Color Names"
  161       section of X(1).
  162    </listitem>
  163    </varlistentry>
  164       <varlistentry>
  165 <term>-blur &lt;radius&gt;x&lt;sigma&gt;</term>
  166    <listitem>
  167       blur the image with a Gaussian operator
  168 
  169       Blur with the given radius and standard deviation (sigma). It is
  170       better if the radius be greater than sigma, but the larger it is,
  171       the slower is the processing.  If a radius equal to 0 is passed,
  172       then mogrify uses the optimal radius.
  173    </listitem>
  174    </varlistentry>
  175       <varlistentry>
  176 <term>-border &lt;width&gt;x&lt;height&gt;</term>
  177    <listitem>
  178       surround the image with a border of color
  179 
  180       See <emphasis>-geometry</emphasis> for details
  181       about the geometry specification.
  182    </listitem>
  183    </varlistentry>
  184       <varlistentry>
  185 <term>-bordercolor &lt;color&gt;</term>
  186    <listitem>
  187       the border color
  188 
  189       The color is specified using the format described in the "Color Names"
  190       section of X(1).
  191    </listitem>
  192    </varlistentry>
  193       <varlistentry>
  194 <term>-channel &lt;type&gt;</term>
  195    <listitem><para>
  196       the type of channel
  197 
  198       Choose from: <emphasis>Red</emphasis>, <emphasis>Green</emphasis>, <emphasis>Blue</emphasis>, 
  199       <emphasis>Cyan</emphasis>, <emphasis>Magenta</emphasis>, <emphasis>Yellow</emphasis>, or <emphasis>Black</emphasis>.
  200    </para><para>
  201       Use this option to extract a particular channel from the image.
  202       </para>
  203    </listitem>
  204    </varlistentry>
  205 
  206       <varlistentry>
  207 <term>-charcoal &lt;factor&gt;</term>
  208       <listitem>
  209       simulate a charcoal drawing
  210       </listitem>
  211    </varlistentry>
  212 
  213       <varlistentry>
  214 <term>-colorize &lt;value&gt;</term>
  215    <listitem>
  216       colorize the image with the pen color
  217 
  218       Specify the amount of colorization as a percentage. You can apply separate
  219       colorization values to the red, green, and blue channels of the image with
  220       a colorization value list delineated with slashes (e.g. 0/0/50).
  221    </listitem>
  222    </varlistentry>
  223       <varlistentry>
  224 <term>-colorspace &lt;value&gt;</term>
  225    <listitem><para>
  226       the type of colorspace
  227 
  228       Choices are: <emphasis>GRAY</emphasis>, <emphasis>OHTA</emphasis>, <emphasis>RGB</emphasis>,
  229       <emphasis>Transparent</emphasis>,
  230       <emphasis>XYZ</emphasis>,
  231       <emphasis>YCbCr</emphasis>, <emphasis>YIQ</emphasis>, <emphasis>YPbPr</emphasis>,
  232       <emphasis>YUV</emphasis>, or <emphasis>CMYK</emphasis>.
  233    </para><para>
  234       Color reduction, by default, takes place in the RGB color space. Empirical
  235       evidence suggests that distances in color spaces such as YUV or YIQ correspond
  236       to perceptual color differences more closely than do distances in RGB space.
  237       These color spaces may give better results when color reducing an image.
  238       Refer to quantize for more details.
  239    </para><para>
  240       The <emphasis>Transparent</emphasis> color space behaves uniquely in that it preserves
  241       the matte channel of the image if it exists.
  242    </para><para>
  243       The <emphasis>-colors</emphasis> or <emphasis>-monochrome</emphasis> option is required for this
  244       option to take effect.
  245       </para>
  246    </listitem>
  247    </varlistentry>
  248       <varlistentry>
  249 <term>-contrast</term>
  250    <listitem>
  251       enhance or reduce the image contrast
  252 
  253       This option enhances the intensity differences between the lighter and
  254       darker elements of the image. Use <emphasis>-contrast</emphasis> to enhance
  255       the image
  256       or <emphasis>+contrast</emphasis> to reduce the image contrast.
  257    </listitem>
  258    </varlistentry>
  259       <varlistentry>
  260 <term>-crop &lt;width&gt;x&lt;height&gt;{+-}&lt;x&gt;{+-}&lt;y&gt;{%}</term>
  261    <listitem>
  262       <para>
  263       preferred size and location of the cropped image
  264 
  265       See <emphasis>-geometry</emphasis> for details
  266       about the geometry specification.
  267    </para><para>
  268       The width and height give the size of the image that remains after cropping,
  269       and x and y are offsets that give the location of the top left
  270       corner of the cropped
  271       image with respect to the original image.  To specify the amount to be
  272       removed, use <emphasis>-shave</emphasis> instead.
  273    </para><para>
  274       To specify a percentage width or height to be removed instead, append
  275       <emphasis>%</emphasis>. For example
  276       to crop the image by ten percent (five percent on each side of the image),
  277       use <emphasis>-crop 10%</emphasis>.
  278    </para><para>
  279       If the x and y offsets are present, a single image is
  280       generated, consisting of the pixels from the cropping region.
  281       The offsets specify the location of the upper left corner of
  282       the cropping region measured downward and rightward with respect to the
  283       upper left corner of the image.
  284       If the <emphasis>-gravity</emphasis> option is present with NorthEast, East,
  285       or SouthEast
  286       gravity, it gives the distance leftward from the right edge
  287       of the image to the right edge of the cropping region.  Similarly, if
  288       the <emphasis>-gravity</emphasis> option is present with SouthWest, South,
  289       or SouthEast
  290       gravity, the distance is measured upward between the bottom
  291       edges.
  292    </para><para>
  293       If the x and y offsets are omitted, a set of tiles of the
  294       specified geometry, covering the entire input image, is generated.  The
  295       rightmost tiles and the bottom tiles are smaller if the
  296       specified geometry extends beyond the dimensions of the input image.
  297       </para>
  298    </listitem>
  299    </varlistentry>
  300       <varlistentry>
  301 <term>-cycle &lt;amount&gt;</term>
  302    <listitem>
  303       displace image colormap by amount
  304 
  305       Amount defines the number of positions each colormap entry is
  306       shifted.
  307    </listitem>
  308    </varlistentry>
  309       <varlistentry>
  310 <term>-debug</term>
  311       enable debug printout
  312       </varlistentry>
  313       <varlistentry>
  314 <term>-despeckle</term>
  315       reduce the speckles within an image
  316       </varlistentry>
  317       <varlistentry>
  318 <term>-dither</term>
  319    <listitem><para>
  320       apply Floyd/Steinberg error diffusion to the image
  321 
  322       The basic strategy of dithering is to trade intensity resolution for spatial
  323       resolution by averaging the intensities of several neighboring pixels.
  324       Images which suffer from severe contouring when reducing colors can be
  325       improved with this option.
  326    </para><para>
  327       The <emphasis>-colors</emphasis> or <emphasis>-monochrome</emphasis> option is required for this option
  328       to take effect.
  329    </para><para>
  330       Use <emphasis>+dither</emphasis> to turn off dithering and to render PostScript without
  331       text or graphic aliasing.
  332    </para>
  333    </listitem>
  334    </varlistentry>
  335       <varlistentry>
  336 <term>-draw &lt;string&gt;</term>
  337    <listitem><para>
  338       annotate an image with one or more graphic primitives
  339 
  340       Use this option to annotate an image with one or more graphic primitives.
  341       The primitives include shapes, text, transformations,
  342       and pixel operations.  The shape primitives are
  343    </para><literal>
  344            point           x,y
  345            line            x0,y0 x1,y1
  346            rectangle       x0,y0 x1,y1
  347            roundRectangle  x0,y0 x1,y1 wc,hc
  348            arc             x0,y0 x1,y1 a0,a1
  349            ellipse         x0,y0 rx,ry a0,a1
  350            circle          x0,y0 x1,y1
  351            polyline        x0,y0  ...  xn,yn
  352            polygon         x0,y0  ...  xn,yn
  353            Bezier          x0,y0  ...  xn,yn
  354            path            path specification
  355            image           operator x0,y0 w,h filename
  356    </literal><para>
  357       The text primitive is
  358    </para><literal>
  359            text            x0,y0 string
  360    </literal><para>
  361       The transformation primitives are
  362    </para><literal>
  363            rotate          degrees
  364            translate       dx,dy
  365            scale           sx,sy
  366            skewX           degrees
  367            skewY           degrees
  368    </literal><para>
  369       The pixel operation primitives are
  370    </para><para>
  371            color           x0,y0 method
  372    </para><para>
  373       The shape primitives are drawn in the color specified in the preceding
  374       <emphasis>-stroke</emphasis> option. Except for the <emphasis>line</emphasis> and <emphasis>point</emphasis>
  375       primitives, they are filled with the color specified in the preceding
  376       <emphasis>-fill</emphasis> option.  For unfilled shapes, use -fill none.
  377    </para><para>
  378       <emphasis>Point</emphasis> requires a single coordinate.
  379    </para><para>
  380       <emphasis>Line</emphasis> requires a start and end coordinate.
  381    </para><para>
  382       <emphasis>Rectangle</emphasis>
  383       expects an upper left and lower right coordinate.
  384    </para><para>
  385       <emphasis>RoundRectangle</emphasis> has the upper left and lower right coordinates
  386       and the width and height of the corners.
  387    </para><para>
  388       <emphasis>Circle</emphasis> has a center coordinate and a coordinate for
  389       the outer edge.
  390    </para><para>
  391       Use <emphasis>Arc</emphasis> to circumscribe an arc within
  392       a rectangle.  Arcs require a start and end point as well as the degree
  393       of rotation (e.g. 130,30 200,100 45,90).
  394    </para><para>
  395       Use <emphasis>Ellipse</emphasis> to draw a partial ellipse
  396       centered at the given point with the x-axis and y-axis radius
  397       and start and end of arc in degrees (e.g. 100,100 100,150 0,360).
  398    </para><para>
  399       Finally, <emphasis>polyline</emphasis> and <emphasis>polygon</emphasis> require
  400       three or more coordinates to define its boundaries.
  401       Coordinates are integers separated by an optional comma.  For example,
  402       to define a circle centered at 100,100
  403       that extends to 150,150 use:
  404    </para><para>
  405            ['-draw'; 'circle 100,100 150,150']
  406    </para><para>
  407       <emphasis>Paths</emphasis>
  408       (See Paths)
  409       represent an outline of an object which is defined in terms of
  410       moveto (set a new current point), lineto (draw a straight line),
  411       curveto (draw a curve using a cubic Bezier), arc (elliptical or
  412       circular arc) and closepath (close the current shape by drawing a line
  413       to the last moveto) elements. Compound paths (i.e., a path with
  414       subpaths, each consisting of a single moveto followed by one or more
  415       line or curve operations) are possible to allow effects such as
  416       "donut holes" in objects.
  417    </para><para>
  418       Use <emphasis>image</emphasis> to composite an image with another image. Follow the
  419       image keyword with the composite operator, image location, image size,
  420       and filename:
  421    </para><para>
  422            ['-draw'; 'image Over 100,100 225,225 image.jpg']
  423    </para><para>
  424       You can use 0,0 for the image size, which means to use the actual
  425       dimensions found in the image header. Otherwise, it will
  426       be scaled to the given dimensions.
  427    </para><para>
  428       Use <emphasis>text</emphasis> to annotate an image with text. Follow the text coordinates
  429       with a string. If the string has embedded spaces, enclose it in double
  430       quotes. Optionally you can include the image filename, type, width, height,
  431       or other image attribute by embedding special format character.
  432       See <emphasis>-comment</emphasis> for details.
  433    </para><para>
  434       For example,
  435    </para><para>
  436            ['-draw'; 'text 100,100 ""%wx%h""']
  437    </para><para>
  438       annotates the image with 512x480 for an image whose width
  439       is 512 and height is 480.
  440    </para><para>
  441       If the first character of string is @, the text is read from
  442       a file titled by the remaining characters in the string.
  443    </para><para>
  444       <emphasis>Rotate</emphasis> rotates subsequent shape primitives and text primitives about
  445       the origin of the main image. If the <emphasis>-region</emphasis> option precedes the
  446       <emphasis>-draw</emphasis> option, the origen for transformations is the upper left
  447       corner of the region.
  448    </para><para>
  449       <emphasis>Translate</emphasis> translates them.
  450    </para><para>
  451       <emphasis>Scale</emphasis> scales them.
  452    </para><para>
  453       <emphasis>SkewX</emphasis> and <emphasis>SkewY</emphasis> skew them with respect to the origen of
  454       the main image or the region.
  455    </para><para>
  456       The transformations modify the current affine matrix, which is initialized
  457       from the initial affine matrix defined by the <emphasis>-affine</emphasis> option.
  458       Transformations are cumulative within the <emphasis>-draw</emphasis> option.
  459       The initial affine matrix is not affected; that matrix is only changed by the
  460       appearance of another <emphasis>-affine</emphasis> option.  If another <emphasis>-draw</emphasis>
  461       option appears, the current affine matrix is reinitialized from
  462       the initial affine matrix.
  463    </para><para>
  464       Use <emphasis>color</emphasis> to change the color of a pixel to the fill color (see
  465       <emphasis>-fill</emphasis>). Follow the pixel coordinate
  466       with a method:
  467    </para><literal>
  468            point
  469            replace
  470            floodfill
  471            filltoborder
  472            reset
  473    </literal><para>
  474       Consider the target pixel as that specified by your coordinate. The
  475       <emphasis>point</emphasis>
  476       method recolors the target pixel. The <emphasis>replace</emphasis> method recolors any
  477       pixel that matches the color of the target pixel.
  478       <emphasis>Floodfill</emphasis> recolors
  479       any pixel that matches the color of the target pixel and is a neighbor,
  480       whereas <emphasis>filltoborder</emphasis> recolors any neighbor pixel that is not the
  481       border color. Finally, <emphasis>reset</emphasis> recolors all pixels.
  482    </para><para>
  483    </para><para>
  484       You can set the primitive color, font, and font bounding box
  485       color with
  486       <emphasis>-fill</emphasis>, <emphasis>-font</emphasis>, and <emphasis>-box</emphasis> respectively. Options
  487       are processed in the <emphasis>argv</emphasis> order so be sure to use these
  488       options before the <emphasis>-draw</emphasis> option.
  489    </para>
  490    </listitem>
  491    </varlistentry>
  492       <varlistentry>
  493 <term>-edge &lt;radius&gt;</term>
  494       detect edges within an image
  495       </varlistentry>
  496       <varlistentry>
  497 <term>-emboss</term>
  498       emboss an image
  499       </varlistentry>
  500       <varlistentry>
  501 <term>-encoding &lt;type&gt;</term>
  502    <listitem>
  503       specify the text encoding
  504 
  505       Choose from AdobeCustom, AdobeExpert, AdobeStandard, AppleRoman,
  506       BIG5, GB2312, Latin 2, None, SJIScode, Symbol, Unicode, Wansung.
  507    </listitem>
  508    </varlistentry>
  509       <varlistentry>
  510 <term>-enhance</term>
  511       apply a digital filter to enhance a noisy image
  512       </varlistentry>
  513       <varlistentry>
  514 <term>-equalize</term>
  515       perform histogram equalization to the image
  516       </varlistentry>
  517       <varlistentry>
  518 <term>-fill &lt;color&gt;</term>
  519    <listitem><para>
  520       color to use when filling a graphic primitive
  521 
  522       The color is specified using the format described in the "Color Names"
  523       section of X(1).
  524    </para><para>
  525       See <emphasis>-draw</emphasis> for further
  526       details.
  527       </para>
  528    </listitem>
  529    </varlistentry>
  530       <varlistentry>
  531 <term>-filter &lt;type&gt;</term>
  532    <listitem>
  533       <para>
  534       use this type of filter when resizing an image
  535 
  536       Use this option to affect the resizing operation of an image (see
  537       <emphasis>-geometry</emphasis>).
  538       Choose from these filters:
  539       </para><literal>
  540            Point
  541            Box
  542            Triangle
  543            Hermite
  544            Hanning
  545            Hamming
  546            Blackman
  547            Gaussian
  548            Quadratic
  549            Cubic
  550            Catrom
  551            Mitchell
  552            Lanczos
  553            Bessel
  554            Sinc
  555    </literal><para>
  556       The default filter is <emphasis>Lanczos</emphasis>
  557       </para>
  558 
  559    </listitem>
  560    </varlistentry>
  561       <varlistentry>
  562 <term>-flip</term>
  563    <listitem>
  564       create a "mirror image"
  565 
  566       reflect the scanlines in the vertical direction.
  567    </listitem>
  568    </varlistentry>
  569       <varlistentry>
  570 <term>-flop</term>
  571    <listitem>
  572       create a "mirror image"
  573 
  574       reflect the scanlines in the horizontal direction.
  575    </listitem>
  576    </varlistentry>
  577       <varlistentry>
  578 <term>-font &lt;name&gt;</term>
  579    <listitem>
  580       use this font when annotating the image with text
  581 
  582       You can tag a font to specify whether it is a PostScript, TrueType, or OPTION1
  583       font.  For example, Arial.ttf is a TrueType font, ps:helvetica
  584       is PostScript, and x:fixed is OPTION1.
  585    </listitem>
  586    </varlistentry>
  587       <varlistentry>
  588 <term>-foreground &lt;color&gt;</term>
  589    <listitem>
  590       define the foreground color
  591 
  592       The color is specified using the format described in the "Color Names"
  593       section of X(1).
  594    </listitem>
  595    </varlistentry>
  596       <varlistentry>
  597 <term>-frame &lt;width&gt;x&lt;height&gt;+&lt;outer bevel width&gt;+&lt;inner bevel width&gt;</term>
  598    <listitem><para>
  599       surround the image with an ornamental border
  600 
  601       See <emphasis>-geometry</emphasis> for details
  602       about the geometry specification.
  603       The <emphasis>-frame</emphasis> option is not affected by the <emphasis>-gravity</emphasis> option.
  604    </para><para>
  605       The color of the border is specified with the
  606       <emphasis>-mattecolor</emphasis> command
  607       line option.
  608       </para>
  609    </listitem>
  610    </varlistentry>
  611       <varlistentry>
  612 <term>-frame</term>
  613       include the X window frame in the imported image
  614       </varlistentry>
  615       <varlistentry>
  616 <term>-fuzz &lt;distance&gt;{%}</term>
  617    <listitem><para>
  618       colors within this distance are considered equal
  619 
  620       A number of algorithms search for a target color. By default the color
  621       must be exact. Use this option to match colors that are close to the target
  622       color in RGB space. For example, if you want to automatically trim the
  623       edges of an image with <emphasis>-trim</emphasis> but the image was scanned and the
  624       target background color may differ by a small amount. This option can account
  625       for these differences.
  626    </para><para>
  627       The distance can be in absolute intensity units or, by appending
  628       "%", as a percentage of the maximum possible intensity.
  629    </para>
  630    </listitem>
  631    </varlistentry>
  632       <varlistentry>
  633 <term>-gamma &lt;value&gt;</term>
  634    <listitem><para>
  635       level of gamma correction
  636 
  637       The same color image displayed on two different workstations may look different
  638       due to differences in the display monitor. Use gamma correction to adjust
  639       for this color difference. Reasonable values extend from <emphasis>0.8</emphasis> to
  640       <emphasis>2.3</emphasis>.
  641    </para><para>
  642       You can apply separate gamma values to the red, green, and blue channels
  643       of the image with a gamma value list delineated with slashes
  644       (e.g., <emphasis>1.7</emphasis>/<emphasis>2.3</emphasis>/<emphasis>1.2</emphasis>).
  645   </para>
  646    </listitem>
  647    </varlistentry>
  648       <varlistentry>
  649 <term>-Gaussian &lt;radius&gt;x&lt;sigma&gt;</term>
  650    <listitem>
  651       blur the image with a Gaussian operator
  652 
  653       Use the given radius and standard deviation (sigma).
  654    </listitem>
  655    </varlistentry>
  656       <varlistentry>
  657 <term>-geometry &lt;width&gt;x&lt;height&gt;{+-}&lt;x&gt;{+-}&lt;y&gt;{%}{@} {!}{&lt;}{&gt;}</term>
  658    <listitem><para>
  659       preferred size and location of the Image window.
  660 
  661       By default, the window size is the image
  662       size and the location is chosen by you when it is mapped.
  663    </para><para>
  664       By default, the width and height are maximum values. That is, the image
  665       is expanded or contracted to fit the width and height value while maintaining
  666       the aspect ratio of the image. Append an exclamation point to the geometry
  667       to force the image size to exactly the size you specify. For example,
  668       if you specify 640x480! the image width is set to 640 pixels and
  669       height to 480.
  670    </para><para>
  671       If only the width is specified, the width assumes the
  672       value and the height is chosen to maintain the aspect ratio of the image.
  673       Similarly, if only the height is specified (e.g., -geometry x256),
  674       the width is chosen to maintain the aspect ratio.
  675    </para><para>
  676       To specify a percentage width or height instead, append %. The image size
  677       is multiplied by the width and height percentages to obtain the final image
  678       dimensions. To increase the size of an image, use a value greater than
  679       100 (e.g. 125%). To decrease an image's size, use a percentage less than
  680       100.
  681    </para><para>
  682       Use @ to specify the maximum area in pixels of an image.
  683    </para><para>
  684       Use &gt; to change the dimensions of the image only if
  685       its width or height exceeds the geometry specification. &lt; resizes
  686       the image only if both of its dimensions are less than the geometry
  687       specification. For Example,
  688       if you specify '640x480&gt;' and the image size is 256x256, the image
  689       size does not change. However, if the image is 512x512 or 1024x1024, it is
  690       resized to 480x480.  Enclose the geometry specification in quotation marks to
  691       prevent the &lt; or &gt; from being interpreted by your shell
  692       as a file redirection.
  693    </para><para>
  694       <emphasis>-geometry</emphasis> is synonymous with <emphasis>-resize</emphasis> and
  695       specifies the size of the output image.  The offsets, if present, are ignored.
  696       </para>
  697    </listitem>
  698    </varlistentry>
  699       <varlistentry>
  700 <term>-gravity &lt;type&gt;</term>
  701    <listitem><para>
  702       direction primitive  gravitates to when annotating the image.
  703 
  704       Choices are: NorthWest, North,
  705       NorthEast, West, Center, East, SouthWest, South, SouthEast.
  706    </para><para>
  707       The direction you choose specifies where to position the text or other
  708       graphic primitive when annotating
  709       the image. For example Center gravity forces the text to be centered
  710       within the image. By default, the image gravity is NorthWest.
  711       See <emphasis>-draw</emphasis> for more details about graphic primitives.
  712    </para><para>
  713       The <emphasis>-gravity</emphasis> option is also used in concert with the <emphasis>-geometry</emphasis>
  714       option and other options that take <emphasis>&lt;geometry&gt;</emphasis> as a parameter, such
  715       as the <emphasis>-crop</emphasis> option.  See <emphasis>-geometry</emphasis> for details of how the
  716       <emphasis>-gravity</emphasis> option interacts with the
  717       <emphasis>&lt;x&gt;</emphasis> and <emphasis>&lt;y&gt;</emphasis> parameters of a geometry
  718       specification.
  719    </para>
  720    </listitem>
  721    </varlistentry>
  722       <varlistentry>
  723 <term>-implode &lt;factor&gt;</term>
  724       <listitem>
  725       implode image pixels about the center. It is a real number.
  726       </listitem>
  727       </varlistentry>
  728       <varlistentry>
  729 <term>-lat &lt;radius&gt;x&lt;sigma&gt;{+-}&lt;offset&gt;{%}</term>
  730    <listitem>
  731       perform local adaptive thresholding
  732 
  733       Perform local adaptive thresholding using the specified radius, sigma,
  734       and offset.  The offset is a distance in sample space from the mean,
  735       as an absolute integer ranging from 0 to the maximum sample value or
  736       as a percentage.
  737       For reasonable results, radius should be larger than sigma.  Use a radius
  738       of 0 to have the method select a suitable radius.
  739    </listitem>
  740    </varlistentry>
  741       <varlistentry>
  742 <term>-level &lt;value&gt;</term>
  743    <listitem>
  744       adjust the level of image contrast
  745 
  746       Give three point values delineated with commas: black, mid, and white
  747       (e.g. 10,1.0,65000).  The white and black points range from 0 to MaxRGB
  748       and mid ranges from 0 to 10.
  749    </listitem>
  750    </varlistentry>
  751       <varlistentry>
  752 <term>-linewidth</term>
  753       <listitem>
  754       the line width for subsequent draw operations
  755       </listitem>
  756    </varlistentry>
  757       <varlistentry>
  758 <term>-map &lt;filename&gt;</term>
  759       </varlistentry>
  760       <varlistentry>
  761 <term>-mask &lt;filename&gt;</term>
  762    <listitem><para>
  763       Specify a clipping mask
  764 
  765       The image read from the file is used as a clipping mask.  It must have
  766       the same dimensions as the image being masked.
  767    </para><para>
  768       If the mask image contains an opacity channel, the opacity of each pixel is
  769       used to define the mask.  Otherwise, the intensity (gray level) of each
  770       pixel is used.
  771    </para><para>
  772       Use <emphasis>+mask</emphasis> to remove the clipping mask.
  773    </para><para>
  774       It is not necessary to use <emphasis>-clip</emphasis> to activate the mask; <emphasis>-clip</emphasis>
  775       is implied by <emphasis>-mask</emphasis>.
  776    </para>
  777    </listitem>
  778    </varlistentry>   
  779 
  780       <varlistentry>
  781 <term>-matte</term>
  782    </varlistentry>
  783       <varlistentry>
  784 <term>-mattecolor &lt;color&gt;</term>
  785       </varlistentry>
  786       <varlistentry>
  787 <term>-median &lt;radius&gt;</term>
  788       <listitem>
  789       apply a median filter to the image
  790       </listitem>
  791       </varlistentry>
  792       <varlistentry>
  793 <term>-monochrome</term>
  794       <listitem>
  795       transform the image to black and white
  796       </listitem>
  797       </varlistentry>
  798       <varlistentry>
  799 <term>-negate</term>
  800    <listitem>
  801       replace every pixel with its complementary color
  802 
  803       The red, green, and blue intensities of an image are negated.
  804       White becomes black,
  805       yellow becomes blue, etc.
  806       Use <emphasis>+negate</emphasis>
  807       to only negate the grayscale pixels of the image.
  808    </listitem>
  809    </varlistentry>
  810       <varlistentry>
  811 <term>-noise &lt;radius|type&gt;</term>
  812    <listitem><para>
  813       add or reduce noise in an image
  814 
  815       The principal function of noise peak elimination filter is to smooth the
  816       objects within an image without losing edge information and without creating
  817       undesired structures. The central idea of the algorithm is to replace a
  818       pixel with its next neighbor in value within a pixel window, if this pixel
  819       has been found to be noise. A pixel is defined as noise if and only if
  820       this pixel is a maximum or minimum within the pixel window.
  821    </para><para>
  822       Use <emphasis>radius</emphasis> to specify the width of the neighborhood.
  823    </para><para>
  824       Use <emphasis>+noise</emphasis> followed by a noise type to add noise to an image. Choose
  825       from these noise types:
  826    </para><literal>
  827            Uniform
  828            Gaussian
  829            Multiplicative
  830            Impulse
  831            Laplacian
  832            Poisson
  833    </literal>
  834    </listitem>
  835    </varlistentry>
  836       <varlistentry>
  837 <term>-normalize</term>
  838    <listitem>
  839       transform image to span the full range of color values
  840 
  841       This is a contrast enhancement technique.
  842    </listitem>
  843    </varlistentry>
  844       <varlistentry>
  845 <term>-opaque &lt;color&gt;</term>
  846    <listitem>
  847       change this color to the pen color within the image
  848 
  849       The color is specified using the format described in the "Color Names"
  850       section of X(1).
  851 
  852 
  853    </listitem>
  854    </varlistentry>
  855       <varlistentry>
  856 <term>-paint &lt;radius&gt;</term>
  857    <listitem>
  858       simulate an oil painting
  859 
  860       Each pixel is replaced by the most frequent color in a circular neighborhood
  861       whose width is specified with radius.
  862    </listitem>
  863    </varlistentry>
  864       <varlistentry>
  865 <term>-raise &lt;width&gt;x&lt;height&gt;</term>
  866    <listitem><para>
  867       lighten or darken image edges
  868 
  869       This will create a 3-D effect.
  870       See <emphasis>-geometry</emphasis> for details
  871       details about the geometry specification.
  872       Offsets are not used.
  873    </para><para>
  874       Use <emphasis>-raise</emphasis> to create a raised effect, otherwise use <emphasis>+raise</emphasis>.
  875       </para>
  876    </listitem>
  877    </varlistentry>
  878       <varlistentry>
  879 <term>-region &lt;width&gt;x&lt;height&gt;{+-}&lt;x&gt;{+-}&lt;y&gt;</term>
  880    <listitem>
  881       apply options to a portion of the image
  882 
  883       The x and y offsets are treated in the same manner as in <emphasis>-crop</emphasis>.
  884    </listitem>
  885    </varlistentry>
  886       <varlistentry>
  887 <term>-resize &lt;width&gt;x&lt;height&gt;{%}{@}{!}{&lt;}{&gt;}</term>
  888    <listitem><para>
  889       resize an image
  890 
  891       This is an alias for the <emphasis>-geometry</emphasis> option and it behaves in the
  892       same manner. If the <emphasis>-filter</emphasis> option precedes the <emphasis>-resize</emphasis>
  893       option, the specified filter is used.
  894    </para><para>
  895       There are some exceptions:
  896    </para><para>
  897       When used as a composite option, <emphasis>-resize</emphasis> conveys the preferred
  898       size of the output image, while <emphasis>-geometry</emphasis> conveys
  899       the size and placement of the composite image within the main
  900       image.
  901    </para><para>
  902       When used as a montage option, <emphasis>-resize</emphasis> conveys the preferred
  903       size of the montage, while <emphasis>-geometry</emphasis> conveys
  904       information about the tiles.
  905    </para>
  906    </listitem>
  907    </varlistentry>
  908       <varlistentry>
  909 <term>-roll {+-}&lt;x&gt;{+-}&lt;y&gt;</term>
  910    <listitem><para>
  911       roll an image vertically or horizontally
  912 
  913       See <emphasis>-geometry</emphasis> for details
  914       the geometry specification.
  915       The x and y offsets are not affected
  916       by the <emphasis>-gravity</emphasis> option.
  917    </para><para>
  918       A negative x  offset rolls the image left-to-right. A negative y
  919       offset rolls the image top-to-bottom.
  920    </para>
  921    </listitem>
  922    </varlistentry>
  923       <varlistentry>
  924 <term>-rotate &lt;degrees&gt;{&lt;}{&gt;}</term>
  925    <listitem><para>
  926       apply Paeth image rotation to the image
  927 
  928       Use &gt; to rotate the image only if its width exceeds the height.
  929       &lt; rotates the image only if its width is less than the
  930       height. For example, if you specify -rotate "-90&gt;" and the image
  931       size is 480x640, the image is not rotated.  However, if the
  932       image is 640x480, it is rotated by -90 degrees.  If you use &gt; or
  933       &lt;, enclose it in quotation marks to prevent it from being
  934       misinterpreted as a file redirection.
  935    </para><para>
  936 
  937       Empty triangles left over from rotating the image are filled with the color
  938       defined as <emphasis>background</emphasis> (class <emphasis>backgroundColor</emphasis>). See X(1)
  939       for details.
  940    </para>
  941    </listitem>
  942    </varlistentry>
  943       <varlistentry>
  944 <term>-sample &lt;geometry&gt;</term>
  945    <listitem>
  946       scale image with pixel sampling
  947 
  948       See <emphasis>-geometry</emphasis> for details about
  949       the geometry specification.
  950       <emphasis>-sample</emphasis> ignores the <emphasis>-filter</emphasis> selection if the <emphasis>-filter</emphasis> option
  951       is present.  Offsets, if present in the geometry string, are ignored, and
  952       the <emphasis>-gravity</emphasis> option has no effect.
  953    </listitem>
  954    </varlistentry>
  955       <varlistentry>
  956 <term>-sampling_factor &lt;horizontal_factor&gt;x&lt;vertical_factor&gt;</term>
  957    <listitem>
  958       sampling factors used by JPEG or MPEG-2 encoder and YUV decoder/encoder.
  959 
  960       This option specifies the sampling factors to be used by the JPEG encoder for
  961       chroma downsampling.  If this option is omitted, the JPEG library
  962       will use its own default values.  When reading or writing the YUV format
  963       and when writing the M2V (MPEG-2) format, use
  964       <emphasis>-sampling_factor 2x1</emphasis> to specify the 4:2:2 downsampling method.
  965    </listitem>
  966    </varlistentry>
  967       <varlistentry>
  968 <term>-scale &lt;geometry&gt;</term>
  969    <listitem>
  970       scale the image.
  971 
  972       See <emphasis>-geometry</emphasis> for details about
  973       the geometry specification.  <emphasis>-scale</emphasis> uses a simpler, faster algorithm,
  974       and it ignores the <emphasis>-filter</emphasis> selection if the <emphasis>-filter</emphasis> option
  975       is present.  Offsets, if present in the geometry string, are ignored, and
  976       the <emphasis>-gravity</emphasis> option has no effect.
  977    </listitem>
  978    </varlistentry>
  979       <varlistentry>
  980 <term>-seed &lt;value&gt;</term>
  981       pseudo-random number generator seed value
  982       </varlistentry>
  983       <varlistentry>
  984 <term>-segment &lt;cluster threshold&gt;x&lt;smoothing threshold&gt;</term>
  985    <listitem><para>
  986       segment an image
  987 
  988       Segment an image by analyzing the histograms of the color components and
  989       identifying units that are homogeneous with the fuzzy c-means technique.
  990    </para><para>
  991       Specify cluster threshold as the number of pixels in each cluster
  992       must exceed the the cluster threshold to be considered valid. Smoothing
  993       threshold eliminates noise in the second derivative of the histogram.
  994       As the value is increased, you can expect a smoother second derivative.
  995       The default is 1.5. See
  996       "Image Segmentation", below,
  997       for details.
  998    </para>
  999    </listitem>
 1000    </varlistentry>
 1001       <varlistentry>
 1002 <term>-shade &lt;azimuth&gt;x&lt;elevation&gt;</term>
 1003    <listitem>
 1004       shade the image using a distant light source
 1005 
 1006       Specify azimuth and elevation as the position of the light
 1007       source. Use <emphasis>+shade</emphasis> to return the shading results as a grayscale
 1008       image.
 1009    </listitem>
 1010    </varlistentry>
 1011       <varlistentry>
 1012 <term>-sharpen &lt;radius&gt;x&lt;sigma&gt;</term>
 1013    <listitem>
 1014       sharpen the image
 1015 
 1016       Use a Gaussian operator of the given radius and
 1017       standard deviation (sigma).
 1018    </listitem>
 1019    </varlistentry>
 1020       <varlistentry>
 1021 <term>-shave &lt;width&gt;x&lt;height&gt;</term>
 1022    <listitem>
 1023       shave pixels from the image edges
 1024 
 1025       Specify the width of the region to be removed from both
 1026       sides of the image and the height of the regions to be removed from
 1027       top and bottom.
 1028    </listitem>
 1029    </varlistentry>
 1030       <varlistentry>
 1031 <term>-shear &lt;x degrees&gt;x&lt;y degrees&gt;</term>
 1032    <listitem><para>
 1033       shear the image along the X or Y axis
 1034 
 1035       Use the specified positive or negative shear angle.
 1036    </para><para>
 1037       Shearing slides one edge of an image along the X or Y axis, creating a
 1038       parallelogram. An X direction shear slides an edge along the X axis, while
 1039       a Y direction shear slides an edge along the Y axis. The amount of the
 1040       shear is controlled by a shear angle. For X direction shears, x degrees
 1041       is measured relative to the Y axis, and similarly, for Y direction shears
 1042       y
 1043       degrees is measured relative to the X axis.
 1044    </para><para>
 1045       Empty triangles left over from shearing the image are filled with the color
 1046       defined as <emphasis>background</emphasis> (class <emphasis>backgroundColor</emphasis>). See X(1)
 1047       for details.
 1048       </para>
 1049    </listitem>
 1050    </varlistentry>
 1051       <varlistentry>
 1052 <term>-solarize &lt;factor&gt;</term>
 1053    <listitem><para>
 1054       negate all pixels above the threshold level
 1055 
 1056       Specify factor as the
 1057       percent threshold of the intensity (0 - 99.9%).
 1058    </para><para>
 1059       This option produces a solarization effect seen when exposing a
 1060       photographic film to light during the development process.
 1061       </para>
 1062    </listitem>
 1063    </varlistentry>
 1064       <varlistentry>
 1065 <term>-spread &lt;amount&gt;</term>
 1066    <listitem>
 1067       displace image pixels by a random amount
 1068 
 1069       Amount defines the size of the neighborhood around each pixel to
 1070       choose a candidate pixel to swap.
 1071    </listitem>
 1072    </varlistentry>
 1073       <varlistentry>
 1074 <term>-stroke &lt;color&gt;</term>
 1075    <listitem><para>
 1076       color to use when stroking a graphic primitive
 1077 
 1078       The color is specified using the format described in the "Color Names"
 1079       section of X(1).
 1080    </para><para>
 1081       See <emphasis>-draw</emphasis> for further
 1082       details.
 1083     </para>
 1084    </listitem>
 1085    </varlistentry>
 1086       <varlistentry>
 1087 <term>-strokewidth &lt;value&gt;</term>
 1088    <listitem>
 1089       set the stroke width
 1090 
 1091       See <emphasis>-draw</emphasis> for further details.
 1092    </listitem>
 1093    </varlistentry>
 1094       <varlistentry>
 1095 <term>-swirl &lt;degrees&gt;</term>
 1096    <listitem><para>
 1097       swirl image pixels about the center
 1098 
 1099       Degrees defines the tightness of the swirl.
 1100    </para>
 1101    </listitem>
 1102    </varlistentry>
 1103       <varlistentry>
 1104 <term>-texture &lt;filename&gt;</term>
 1105       </varlistentry>
 1106       <varlistentry>
 1107 <term>-threshold &lt;value&gt;</term>
 1108       <listitem><para>
 1109       threshold the image
 1110 
 1111       Create a bi-level image such that any pixel intensity that is equal or
 1112       exceeds the threshold is reassigned the maximum intensity otherwise the
 1113       minimum intensity.
 1114       </para>
 1115       </listitem>
 1116       </varlistentry>
 1117       <varlistentry>
 1118 <term>-tile &lt;filename&gt;</term>
 1119       </varlistentry>
 1120       <varlistentry>
 1121 <term>-tile &lt;geometry&gt;</term>
 1122       <listitem>layout of images [montage]</listitem>
 1123       </varlistentry>
 1124       <varlistentry>
 1125 <term>-transform</term>
 1126    <listitem><para>
 1127       transform the image
 1128 
 1129       This option applies the transformation matrix from a previous
 1130       <emphasis>-affine</emphasis> option.
 1131    </para><para>
 1132           mogrify(img, '-affine 2,2,-2,2,0,0 -transform bird.ppm');
 1133       </para>
 1134       </listitem>
 1135       </varlistentry>
 1136       <varlistentry>
 1137 <term>-transparent &lt;color&gt;</term>
 1138       </varlistentry>
 1139       <varlistentry>
 1140 <term>-treedepth &lt;value&gt;</term>
 1141    <listitem><para>
 1142       tree depth for the color reduction algorithm
 1143 
 1144       Normally, this integer value is zero or one. A zero or one tells display
 1145       to choose an optimal tree depth for the color reduction algorithm
 1146    </para><para>
 1147       An optimal depth generally allows the best representation of the source
 1148       image with the fastest computational speed and the least amount of memory.
 1149       However, the default depth is inappropriate for some images. To assure
 1150       the best representation, try values between 2 and 8 for this parameter.
 1151       Refer to
 1152       quantize for more details.
 1153    </para><para>
 1154       The <emphasis>-colors</emphasis> or <emphasis>-monochrome</emphasis> option is required for this option
 1155       to take effect.
 1156    </para>
 1157    </listitem>
 1158    </varlistentry>
 1159       <varlistentry>
 1160 <term>-trim</term>
 1161    <listitem>
 1162       trim an image
 1163 
 1164       This option removes any edges that are exactly the same color as the
 1165       corner pixels.  Use <emphasis>-fuzz</emphasis> to make <emphasis>-trim</emphasis> remove edges that
 1166       are nearly the same color as the corner pixels.
 1167    </listitem>
 1168    </varlistentry>
 1169       <varlistentry>
 1170 <term>-type &lt;type&gt;</term>
 1171       </varlistentry>
 1172       <varlistentry>
 1173 <term>-unsharp &lt;radius&gt;x&lt;sigma&gt;</term>
 1174    <listitem>
 1175       sharpen the image with an unsharp mask operator
 1176 
 1177       Use the given radius and standard deviation (sigma).
 1178 
 1179    </listitem>
 1180    </varlistentry>
 1181       <varlistentry>
 1182 <term>-wave &lt;amplitude&gt;x&lt;wavelength&gt;</term>
 1183    <listitem>
 1184       alter an image along a sine wave
 1185 
 1186       Specify amplitude and wavelength
 1187       of the wave.
 1188    </listitem>
 1189    </varlistentry>
 1190 </variablelist>
 1191 </refsection>
 1192 
 1193 
 1194 <refsection>
 1195 <title>Image Segmentation</title>
 1196 <para>
 1197 Use <emphasis>-segment</emphasis> to segment an image by analyzing the histograms of
 1198 the color components and identifying units that are homogeneous with the
 1199 fuzzy c-means technique. The scale-space filter analyzes the histograms
 1200 of the three color components of the image and identifies a set of classes.
 1201 The extents of each class is used to coarsely segment the image with thresholding.
 1202 The color associated with each class is determined by the mean color of
 1203 all pixels within the extents of a particular class. Finally, any unclassified
 1204 pixels are assigned to the closest class with the fuzzy c-means technique.
 1205 </para><para>   
 1206 The fuzzy c-Means algorithm can be summarized as follows:
 1207 </para><para>   
 1208 Build a histogram, one for each color component of the image.
 1209 </para><para>   
 1210 For each histogram, successively apply the scale-space filter and build
 1211 an interval tree of zero crossings in the second derivative at each scale.
 1212 Analyze this scale-space "fingerprint" to determine which peaks or valleys
 1213 in the histogram are most predominant.
 1214 </para><para>   
 1215 The fingerprint defines intervals on the axis of the histogram. Each interval
 1216 contains either a minima or a maxima in the original signal. If each color
 1217 component lies within the maxima interval, that pixel is considered "classified"
 1218 and is assigned an unique class number.
 1219 </para><para>   
 1220 Any pixel that fails to be classified in the above thresholding pass is
 1221 classified using the fuzzy c-Means technique. It is assigned to one of
 1222 the classes discovered in the histogram analysis phase.
 1223 </para><para>   
 1224 The fuzzy c-Means technique attempts to cluster a pixel by finding the
 1225 local minima of the generalized within group sum of squared error objective
 1226 function. A pixel is assigned to the closest class of which the fuzzy membership
 1227 has a maximum value.
 1228 </para><para>   
 1229 For additional information see:
 1230 Young Won Lim, Sang Uk Lee, "On The Color Image Segmentation
 1231 Algorithm Based on the Thresholding and the Fuzzy c-Means Techniques",
 1232 Pattern Recognition, Volume 23, Number 9, pages 935-952, 1990.
 1233 </para>
 1234 </refsection>
 1235 
 1236 
 1237 <refsection><title>Authors</title><simplelist type="vert">
 1238   <member>Ricardo Fabbri &lt;ricardofabbri[at]users.sf.net&gt;</member>
 1239 </simplelist></refsection>
 1240 
 1241 <refsection><title>Availability</title>
 1242 The latest version of SIP can be found at
 1243 <para>http://siptoolbox.sf.net </para>
 1244 </refsection>
 1245 
 1246    <refsection><title>See Also</title><simplelist type="inline">
 1247       <member> <link linkend="imread">imread</link> </member>
 1248       <member> <link linkend="imshow">imshow</link> </member>
 1249       <member> <link linkend="imfinfo">imfinfo</link> </member>
 1250    </simplelist></refsection>
 1251 </refentry>
 1252 <!-- =================================================== 
 1253            SIP - Scilab Image Processing toolbox
 1254            Copyright (C) 2002-2004  Ricardo Fabbri
 1255 
 1256        See the file COPYING for license-related issues
 1257      =================================================== -->