GNU.WIKI: The GNU/Linux Knowledge Base

  [HOME] [PHP Manual] [HowTo] [ABS] [MAN1] [MAN2] [MAN3] [MAN4] [MAN5] [MAN6] [MAN7] [MAN8] [MAN9]

  [0-9] [Aa] [Bb] [Cc] [Dd] [Ee] [Ff] [Gg] [Hh] [Ii] [Jj] [Kk] [Ll] [Mm] [Nn] [Oo] [Pp] [Qq] [Rr] [Ss] [Tt] [Uu] [Vv] [Ww] [Xx] [Yy] [Zz]


NAME

       gmic  -  Perform generic image processing operations, through the G'MIC
       language interpreter.

HELP

        gmic: GREYC´s Magic for Image Computing.

               Version 1.5.7.1, Copyright (C) 2008-2013, David Tschumperle.
               (http://gmic.sourceforge.net)

        1. Usage
           -----

        gmic [command1 [arg1_1,arg1_2,..]] .. [commandN [argN_1,argN_2,..]]

        ´gmic´  is  an  open-source  interpreter  of  the  G´MIC  language,  a
       script-based programming
         language  dedicated  to  design image processing pipelines. It can be
       used to convert,
         manipulate, filter and visualize datasets  made  of  one  or  several
       1d/2d or 3d multi-
         spectral images.

        This  documentation  proposes  a  complete  description  of  the G´MIC
       language basics and rules.

        2. Overall context
           ---------------

         - At any time, G´MIC manages one list  of  numbered  (and  optionally
       named) pixel-based
            images, entirely stored in computer memory.
         - The first image of the list has indice ´0´ and is denoted by ´[0]´.
       The second image of
            the list is denoted by ´[1]´, the third by ´[2]´ and so on.
         - Negative indices are treated in a cyclic way: ´[-1]´ refers to  the
       last image of the
            list,  ´[-2]´ to the penultimate one, etc. Thus, if the list has 4
       images, ´[1]´ and ´[-3]´
            both designate the second image of the list.
         - A named image may be denoted by ´[name]´ if ´name´ uses  characters
       set [a-zA-Z0-9_] and
            does not start with a number. Image names can be set or reassigned
       at any moment during
            the processing pipeline (see commands ´-name´ and ´-input´).
         - G´MIC defines a set of various commands and substitution mechanisms
       to allow the design
            of  complex  pipelines  managing  this  list  of images, in a very
       flexible way:
            You can insert or remove  images  in  the  list,  rearrange  image
       indices, process images
            (individually or as a group), merge image data together and output
       image files.
         - Such a pipeline can be written itself as  a  custom  G´MIC  command
       storable in a custom
            commands  file,  which can be re-used afterwards in another bigger
       pipeline if necessary.

        3. Image definition and terminology
           --------------------------------

         - In G´MIC, an image is modeled as a 1d, 2d, 3d or 4d array of scalar
       values, uniformly
            discretized on a rectangular/parallelepipedic domain.
         - The four dimensions of these arrays are respectively denoted by:
           . ´width´, the number of image columns (size along the ´x´-axis).
           . ´height´, the number of image rows (size along the ´y´-axis).
           . ´depth´, the number of image slices (size along the ´z´-axis).
               The depth is equal to 1 for usual 2d color or grayscale images.
           .  ´spectrum´,  the  number  of  image  channels  (size  along  the
       ´c´-axis).
               The spectrum is respectively equal to 3 and 4 for usual RGB and
       RGBA color images.
         -   There   are   no  size  limitations  on  each  image  dimensions.
       Particularly, the number of image
            slices or channels can be of arbitrary size within the  limits  of
       available memory.
         - The width, height and depth of an image are considered as ´spatial´
       dimensions, while the
            spectrum has a ´multi-spectral´ meaning. Thus, a 4d image in G´MIC
       should be most often
            regarded  as  a  3d  dataset of multi-spectral voxels. Most of the
       G´MIC commands will stick
            with this idea (e.g. command ´-blur´ will blur images  only  along
       the ´xyz´ axes).
         -  All pixel values of all images of the list have the same datatype.
       It can be one among:
           . ´bool´: Stands for ´boolean´. Value range is { 0=false  |  1=true
       }.
           .  ´uchar´:  Stands  for  ´unsigned  char´.  Value range is [0,255]
       (8bits).
               This  type  of  pixel  coding  is  commonly   used   to   store
       8bits/channels RGB[A] images.
           . ´char´: Value range is [-128,127] (8bits).
           .  ´ushort´:  Stands for ´unsigned short´. Value range is [0,65535]
       (16bits).
               This  type  of  pixel  coding  is  commonly   used   to   store
       16bits/channels RGB[A] images.
           . ´short´: Value range is [-32768,32767] (16bits).
           .  ´uint´:  Stands  for  ´unsigned  int´. Value range is [0,2^32-1]
       (32bits).
           . ´int´: Value range is [-2^31,2^31-1] (32 bits).
           . ´float´: Value range is [-3.4E38,+3.4E38] (32bits).
               This type of  coding  is  able  to  store  pixels  as  32  bits
       float-valued numbers. This is
               the default datatype used by G´MIC image processing operations.
           . ´double´: Value range is [-1.7E308,1.7E308] (64bits).
               This  type  of  coding  is  able  to  store  pixels  as 64 bits
       float-valued numbers.
         - Considering pixel datatypes different  than  ´float´  is  generally
       useless, except to force
            the  input/output  of  image  data  to a prescribed binary format.
       Hence, most G´MIC image
            image processing commands  are  available  only  for  the  default
       ´float´ pixel datatype
            (see  command  ´-type´  if  you  need  to  switch to another pixel
       datatype).

        4. Items of a processing pipeline
           ------------------------------

         - In G´MIC, an image processing pipeline is described as  a  sequence
       of items separated by
            the  space  character ´ ´. Such items are interpreted and executed
       from the left to the
            right. For instance, the expression:
              ´input.jpg -blur  3,0  -sharpen  10  -resize  200%,200%  -output
       output.jpg´
            defines a valid pipeline composed of nine G´MIC items.
         -  A  G´MIC item is a string which represents either a command, a set
       of command arguments,
            a filename, or a special input string.
         - Escape characters ´\´ and double quotes ´
            containing spaces, or any other character sequences. For instance,
       the strings
            ´single\ item´ and ´

        5. Input data items
           ----------------

         -  If  a specified G´MIC item appears to be an existing filename, the
       corresponding image
            data are loaded and inserted at the end of the image list.
         -  Special  filenames  ´-´  and  ´-.ext´  stand  for   the   standard
       input/output streams, optionally
            forced  to  be  in  a  specific ´ext´ file format (e.g. ´-.jpg´ or
       ´-.png´).
         - The following special input strings may be used as G´MIC  items  to
       create and insert new
            images with prescribed values, at the end of the image list:
           .  ´[selection]´  or  ´[selection]xN´:  Insert  1  or  N  copies of
       selected existing images.
              ´selection´ may contain one or several images (see next  section
       for details).
           .  ´width[%],_height[%],_depth[%],_spectrum[%],_values´:  Insert  a
       new image with
              specified size and values  (adding  ´%´  to  a  dimension  means
       ´percentage of the size
              along  the  same  axis,  taken from the last image ´[-1]´´). Any
       specified dimension
              can be also written as ´[image]´, and is then set  to  the  size
       (along the same axis)
              of  the existing specified image [image]. ´values´ can be either
       a sequence of numbers
              separated by commas ´,´, or a mathematical expression,  as  e.g.
       in input item
              ´256,256,1,3,if(c==0,x,if(c==1,y,0))´  which  creates  a 256x256
       RGB color image with a
              spatial shading on the red and green channels.
           . ´(v1,v2,..)´:  Insert  a  new  image  from  specified  prescribed
       values.
              Value   separator   inside   parentheses   can  be  ´,´  (column
       separator.), ´;´ (row sep.),
              ´/´ (slice sep.) or ´^´ (channel sep.). For instance, expression
              ´(1,2,3;4,5,6;7,8,9)´ creates a 3x3 matrix (scalar image),  with
       values from 1 to 9.
           .  ´0´: Insert a new ´empty´ image, containing no pixel data. Empty
       images are used only
              in rare occasions.
         - Input item ´name=value´ declares a new  local  or  global  variable
       ´name´, or assign a new
            value  to  an existing variable. Variable names use characters set
       [a-zA-Z0-9_] and cannot
            start with a number. A variable definition is always local to  the
       current command except
            when  it  starts by the underscore character ´_´. In that case, it
       becomes also accessible
            by any command invoked outside the current command scope.

        6. Command items and selections
           ----------------------------

         - A G´MIC item starting by ´-´ designates  a  command,  most  of  the
       time. Generally, commands
            perform  image  processing  operations on one or several available
       images of the list.
         - Common commands have two equivalent names (regular and short).  For
       instance, command
            names ´-resize´ and ´-r´ refer to the same image resizing action.
         -  A  G´MIC command may have mandatory or optional arguments. Command
       arguments must be
            specified in the next item on the command  line.  Commas  ´,´  are
       used to separate multiple
            arguments, if any required.
         - The execution of a G´MIC command may be restricted only to a subset
       of the image list, by
            appending ´[subset]´  to  the  command  name.  Examples  of  valid
       syntaxes for ´subset´ are:
           . ´-com[0,1,3]´: Apply command only on images [0],[1] and [3].
           .  ´-com[3-5]´:  Apply  command  only  on  images  [3] to [5] (i.e,
       [3],[4] and [5]).
           . ´-com[50%-100%]´: Apply command only on the second  half  of  the
       image list.
           .  ´-com[0,-4--1]´:  Apply  command  only on the first and the four
       latest images.
           . ´-com[0-9:3]´: Apply command only on images [0] to  [9],  with  a
       step of 3
                             (i.e. on images [0], [3], [6] and [9]).
           .  ´-com[0--1:2]´:  Apply  command  only on images of the list with
       even indices.
           . ´-com[0,2-4,50%--1]´: Apply command on images [0],[2],[3],[4] and
       on the second half
                                    of the image list.
           . ´-com[^0,1]´: Apply command on all images except the first two.
           .  ´-com[name1,name2]´:  Apply  command on named images ´name1´ and
       ´name2´.
         - Indices in selections are always sorted in  increasing  order,  and
       duplicate indices are
            discarded.  For instance, selections ´[3-1,1-3]´ and ´[1,1,1,3,2]´
       are both equivalent to
            ´[1-3]´. If you want to repeat a single command multiple times  on
       an image, use a
            ´-repeat..-done´   loop.  Inverting  the  order  of  images  in  a
       selection can be achieved by
            inverting first the order of the images in the list, with  command
       ´-reverse[selection]´.
         - G´MIC commands invoked without ´[subset]´ are applied on all images
       of the list.
         - A G´MIC command starting with ´--´ instead  of  ´-´  does  not  act
       ´in-place´ but inserts its
            result as one or several new images at the end of the image list.
         -  There  are  two different types of commands that can be run by the
       G´MIC interpreter:
           .  Native  commands,  are   hard-coded   functionalities   in   the
       interpreter core.
              They  are thus compiled as machine code and run quickly, most of
       the time.
              Omitting an argument when  invoking  a  native  command  is  not
       permitted, except if all
              following  arguments  are  also  omitted.  For instance, call to
       ´-plasma 10,,5´ is invalid
              but ´-plasma 10´ is correct.
           . Custom commands, are defined as  G´MIC  pipelines  of  native  or
       custom commands.
              They  are  interpreted  by the G´MIC interpreter, and run slower
       than native commands.
              But  omitting  arguments  when  invoking  a  custom  command  is
       permitted. For instance,
              expressions ´-flower ,,,100,,2´ or ´-flower ,´ are correct.
         -  A  user  may  easily  add  its  own  custom  commands to the G´MIC
       interpreter (see section
            ´Adding custom commands´). Native commands cannot be added  unless
       you modify the G´MIC
            interpreter source code.

        7. Inputs / outputs properties
           ---------------------------

         -  G´MIC  is  able  to  read/write  most  of the classical image file
       formats, including:
           . 2d grayscale/color files: .png, .jpeg, .gif, .pnm, .tif, .bmp, ..
           . 3d volumetric files: .dcm, .hdr, .nii, .pan, .inr, .pnk, ..
           . Image sequences: .mpeg, .avi, .mov, .ogg, .flv, ..
           . Generic ascii or binary data files: .cimg,  .cimgz,  .dlm,  .asc,
       .pfm, .raw, .txt, .h.
           . 3d object files: .off.
         -  When  dealing with color images, G´MIC generally reads, writes and
       displays data using the
            usual RGB color space.
         - G´MIC is able to manage 3d objects that may be read from  files  or
       generated by G´MIC
            commands.  They  are stored as one-column scalar images containing
       the object data, in the
            following order:  {  magic_number;  sizes;  vertices;  primitives;
       colors; opacities }.
            These  3d representations can be processed as regular float-valued
       images.
            (see command ´-split3d´ for accessing each of these 3d object data
       separately).
         -  Be  aware  that usual file formats may be sometimes not adapted to
       store all the available
            image data, since G´MIC uses float-valued coding of image  pixels.
       For instance, saving
            an image that was initially loaded as a 16bits/channel image, as a
       .jpg file will result
            in loss of information. Use the .cimg file extension  (or  .cimgz,
       its compressed
            version)  to ensure that all data precision will be preserved when
       saving images.
         - File options can/must be set for these specific file formats:
           . Video files: Only sub-frames of an image sequence may be  loaded,
       using the input
              expression
       ´filename.ext,[first_frame[%][,last_frame[%][,step]]]´.
              Output framerate and bitrate (in Kb/s) can be also set by  using
       the output expression
              ´file.mpg,_fps,_bitrate´.
           .  .raw  binary files: Image dimensions and input pixel type may be
       specified when loading
              .raw        files         with         input         expresssion
       ´filename.raw[,type][,width][,height[,depth[,dim]]]]´.
              If  no  dimensions  are  specified,  the  resulting  image  is a
       one-column vector with
              maximum possible height. Pixel type can also be  specified  with
       the output
              expression ´file.raw[,type]´.
              ´type´  can  be  { bool | uchar | char | ushort | short | uint |
       int | float | double }.
           .  .yuv  files:  Image  dimensions  must  be  specified,  and  only
       sub-frames of an image
              sequence may be loaded, using the input expression
             ´filename.yuv,width,height[,first_frame[,last_frame[,step]]]´.
           .  tiff  files:  Only  sub-images  of multi-pages tiff files can be
       loaded, using the input
              expression ´filename.tif,[first_frame,[last_frame,[step]]]´.
           . .gif files: Animated gif files can  be  saved,  using  the  input
       expression
             ´filename.gif,fps,nb_loops´.
             Specify  ´nb_loops=0´  to  get  an  infinite  number of animation
       loops.
           . .jpeg files: The output quality may be specified  (in  %),  using
       the output expression
              ´filename.jpg,30´ (here, to get a 30% quality output).
           .  .mnc  files:  The output header can set from another file, using
       the output expression
              ´filename.mnc,header_template.mnc´.
           . Filenames with extension ´.gmic´ are assumed to be  G´MIC  custom
       commands files. Loading
              such a file will add the commands it defines to the interpreter.
           .   Inserting   ´ext:´   on  the  beginning  of  a  filename  (e.g.
       ´jpg:filename´) forces G´MIC to
              read/write the file as it would have been done  if  it  had  the
       specified extension.
         -  Some input/output formats and options may not be supported by your
       current version of
            ´gmic´, depending on the configuration flags set for the build  of
       the ´gmic´ binaries.

        8. Substitution rules
           ------------------

         -  G´MIC  items containing ´@´, ´$´ or ´{}´ may be substituted before
       being interpreted. Use
            the  substituting  expressions  below  to  access  data  from  the
       interpreter environment:
           . ´@#´ is substituted by the current number of images in the list.
           . ´@*´ is substituted by the number of available cpus.
           .  ´@.´  is  substituted by the current version number of the G´MIC
       interpreter
           . ´@^´ is substituted by the current verbosity level.
           . ´@%´ is substituted by the pid of the current process.
           . ´@|´ is substituted by the current value (expressed  in  seconds)
       of a millisecond
              precision timer.
           . ´@?´ is substituted by the current data type of image pixels.
           .  ´@/´  is  substituted  by  the  current  number of levels in the
       command scope.
           . ´@{/}´ or ´@{/,subset}´ are substituted by  the  content  of  the
       global scope, or a
              subset  of  it.  If  specified  subset  refers to multiple scope
       items, they are separated
              by slashes ´/´.
           . ´@>´ and ´@<´ are equivalent. They are both  substituted  by  the
       number of nested
              ´repeat-done´ loops that are currently running.
           .  ´@{>}´ or ´@{>,subset}´ are substituted by the indice values (or
       a subset of them) of
              the running ´repeat-done´  loops,  expressed  in  the  ascending
       order, starting from 0.
              If  specified  subset  refers  to  multiple  indices,  they  are
       separated by commas ´,´.
           . ´@{<}´ or ´@{<,subset}´ do the same but in descending order.
           . ´@indice´ or ´@{indice,feature}´ are substituted by the  list  of
       pixel values of the
              image  [indice]  (separated by commas), or by a specific feature
       (or subset) of it.
              ´indice´ can be an indice or an image name. Requested ´featured´
       can be one of:
                . ´w´: image width (number of image columns).
                . ´h´: image height (number of image rows).
                . ´d´: image depth (number of image slices).
                . ´s´: image spectrum (number of image channels).
                . ´wh´: image width x image height.
                . ´whd´: image width x image height x image depth.
                .  ´whds´:  image  width  x image height x image depth x image
       spectrum.
                          (i.e. number of values in the specified  image,  eq.
       to ´#´).
                . ´r´: image shared state (1, if the pixel buffer is shared, 0
       otherwise).
                . ´n´: image name or filename (if the image has been read from
       a file).
                .  ´b´:  image basename (i.e. filename without the folder path
       nor extension).
                . ´x´: image extension (i.e last characters after the last ´.´
       in the filename).
                . ´f´: image folder name.
                .  ´#´:  number of image values (i.e. width x height x depth x
       spectrum).
                . ´+´: sum of all pixel values.
                . ´-´: difference of all pixel values.
                . ´*´: product of all pixel values.
                . ´/´: quotient of all pixel values.
                . ´m´: minimum pixel value.
                . ´M´: maximum pixel value.
                . ´a´: average pixel value.
                . ´v´: variance of pixel values.
                . ´t´: text string built from the image  values,  regarded  as
       ascii codes.
                .  ´c´:  (x,y,z,c) coordinates of the minimum value, separated
       by commas ´,´.
                . ´C´: (x,y,z,c) coordinates of the maximum  value,  separated
       by commas ´,´.
                .   ´(x[%],_y[%],_z[%],_c[%],_boundary)´:   pixel   value   at
       (x[%],y[%],z[%],c[%]), with
                   specified boundary conditions { 0=dirichlet |  1=neumann  |
       2=cyclic }.
                .  Any  other  ´feature´  is  considered either as a specified
       subset of image values, or
                   as a mathematical expression  to  evaluate  (associated  to
       selected image).
                   For  instance, ´@{-1,0-50%}´ is substituted by the sequence
       of numerical values
                   coming  from  the  first  half  data  of  the  last  image,
       separated by commas ´,´.
                   Expression  ´@{0,w+h}´  is  substituted  by  the sum of the
       width and height of the
                   first image.
           . ´@!´ is substituted  by  the  visibility  state  of  the  instant
       display window [0]
              (can be { 0=closed | 1=visible }).
           .  ´@{!,feature}´  or  ´@{!indice,feature}´  is  substituted  by  a
       specific feature of the
              instant  display  window  [0]  (or  [indice],   if   specified).
       Requested ´feature´ can be:
                .  ´w´:  display width (i.e. width of the display area managed
       by the window).
                . ´h´: display height (i.e. height of the display area managed
       by the window).
                . ´wh´: display width x display height.
                . ´d´: window width (i.e. width of the window widget).
                . ´e´: window height (i.e. height of the window widget).
                . ´de´: window width x window height.
                . ´u´: screen width (actually independent on the window size).
                .´  v´:  screen  height  (actually  independent  on the window
       size).
                . ´uv´: screen width x screen height.
                . ´x´: X-coordinate of the mouse position (or -1,  if  outside
       the display area).
                .  ´y´:  Y-coordinate of the mouse position (or -1, if outside
       the display area).
                . ´b´: state of the mouse buttons { 1=left-but. | 2=right-but.
       | 4=middle-but. }.
                . ´o´: state of the mouse wheel.
                . ´k´: decimal code of the pressed key if any, 0 otherwise.
                . ´n´: current normalization type of the instant display.
                .  ´c´:  boolean  (0  or 1) telling if the instant display has
       been closed recently.
                . ´r´: boolean telling if the instant display has been resized
       recently.
                .  ´m´:  boolean telling if the instant display has been moved
       recently.
                . Any other ´feature´ stands for a  keycode  name  in  capital
       letters, and is substi-
                   tuted  by  a  boolean  describing  the  current key state {
       0=pressed | 1=released }.
           . ´@{
              specified command line (see command ´-status´).
           . Expression ´@{}´ stands thus for the current status value.
         - ´$name´ and ´${name}´ are both substituted  by  the  value  of  the
       specified named variable
            (set  previously by item ´name=value´), or by the current positive
       indice of the named
            image ´[name]´, or by  the  value  of  the  named  OS  environment
       variable (in this order).
         -  ´$>´ and ´$<´ (resp. ´${>}´ and ´${<}´) are shortcuts respectively
       for ´@{>,-1}´ and
            ´@{<,-1}´. They refer to the increasing/decreasing indice  of  the
       latest (currently
            running) ´repeat..done´ loop.
         -  Any  other  expression  inside  braces  (as  in ´{expression}´) is
       considered as a mathematical
            expression, and is  evaluated,  except  for  the  three  following
       cases:
           . If expression starts and ends by single quotes, it is substituted
       by the sequence of
              ascii codes that composes the  specified  string,  separated  by
       commas ´,´. For instance,
              item ´{´foo´}´ is substituted by ´102,111,111´.
           .  If  expression  starts  and  ends  with  backquotes  ´`´,  it is
       substituted by the string
              whose ascii codes are given by the list of values in between the
       backquotes.
              For instance, item ´{`102,111,111`}´ is substituted by ´foo´.
           .   If  expression  contains  operator  ´´==´´  or  ´´!=´´,  it  is
       substituted by 0 or 1, whether
              the  strings  beside  the  operator  are   the   same   or   not
       (case-sensitive). For instance,
              both  items ´{foo´==´foo}´ and ´{foo´!=´FOO}´ are substituted by
       ´1´.
           . If expression starts with an underscore ´_´, it is substituted by
       the mathematical
              evaluation of the expression, truncated to a readable format.
         - Item substitution is never done in items between double quotes. One
       must break the quotes
           to enable substitution if needed, as in
           is then a convenient way to disable the substitutions mechanism  in
       items, when necessary.
         -  One  can  also disable the substitution mechanism on items outside
       double quotes, by
            escaping the  ´@´,´{´,´}´  or  ´$´  characters,  as  in  ´\{3+4\}\
       doesn´t\ evaluate´.

        9. Mathematical expressions
           ------------------------

         -  G´MIC  has an embedded mathematical parser. It is used to evaluate
       expressions inside
            braces ´{}´, or formulas in commands  that  may  take  one  as  an
       argument (e.g. ´-fill´).
         - When used in commands, a formula is evaluated for each pixel of the
       selected images.
         - The  math  parser  understands  the  following  set  of  functions,
       operators and variables:
           _  Usual  operators:  || (logical or), && (logical and), | (bitwise
       or), & (bitwise and),
              !=, ==, <=, >=, <, >, << (left bitwise shift), >> (right bitwise
       shift), -, +, *, /,
              % (modulo), ^ (power), ! (logical not), ~ (bitwise not).
           _  Usual  functions:  sin(),  cos(), tan(), asin(), acos(), atan(),
       sinh(), cosh(), tanh(),
              log(), log2(), log10(), exp(), sign(), abs(), atan2(),  round(),
       narg(), arg(),
              isval(),  isnan(),  isinf(),  isint(), isbool(), rol() (left bit
       rotation),
              ror() (right bit rotation), min(), max(), sinc(), int().
              Function ´atan2()´ is the version of atan() with  two  arguments
       ´y,x´ (as in C/C++).
              Function ´narg()´ returns the number of specified arguments.
              Function ´arg(i,a_1,..,a_n)´ returns the ith argument a_i.
              Functions  ´min()´  and  ´max()´ can be called with an arbitrary
       number of arguments.
              Functions ´isval()´, ´isnan()´,  ´isinf()´,  ´isbool()´  can  be
       used to test the type of
              a given number or expression.
           _  The  variable  names  below  are  pre-defined.  They  cannot  be
       overloaded:
                . ´w´: width of the associated image, if any (0 otherwise).
                . ´h´: height of the associated image, if any (0 otherwise).
                . ´d´: depth of the associated image, if any (0 otherwise).
                . ´s´: spectrum of the associated image, if any (0 otherwise).
                . ´x´: current processed column of the  associated  image,  if
       any (0 otherwise).
                .  ´y´:  current processed row of the associated image, if any
       (0 otherwise).
                . ´z´: current processed slice of the associated image, if any
       (0 otherwise).
                .  ´c´:  current processed channel of the associated image, if
       any (0 otherwise).
                . ´i´: current processed pixel value (i.e.  value  located  at
       (x,y,z,c)) of the
                   associated image, if any (0 otherwise).
                .  ´im´,´iM´,´ia´,´iv´:  Respectively  the  minimum,  maximum,
       average values and
                   variance of the associated image, if any (0 otherwise).
                . ´xm´,´ym´,´zm´,´cm´: The pixel coordinates  of  the  minimum
       value in the associated
                   image, if any (0 otherwise).
                .  ´xM´,´yM´,´zM´,´cM´:  The  pixel coordinates of the maximum
       value in the
                   associated image, if any (0 otherwise).
                . ´pi´: value of pi, i.e. 3.1415926..
                . ´e´: value of e, i.e. 2.71828..
                . ´?´ or ´u´:  a  random  value  between  [0,1],  following  a
       uniform distribution.
                .  ´g´:  a  random value, following a gaussian distribution of
       variance 1
                   (roughly in [-5,5]).
           _ These special operators can be used:
                . ´;´: expression separator. The returned value is always  the
       last encountered
                   expression.  For  instance expression ´1;2;pi´ is evaluated
       as ´pi´.
                . ´=´: variable assignment. Variables in  mathematical  parser
       can only refer to.
                   numerical  values.  Variable  names are case-sensitive. Use
       this operator in
                   conjunction  with   ´;´   to   define   complex   evaluable
       expressions, such as
                    ´t=cos(x);3*t^2+2*t+1´.
                   These variables remain local to the mathematical parser and
       cannot be accessed
                   outside the evaluated expression.
           _ The following specific functions are also defined:
                .   ´if(expr_cond,expr_then,expr_else)´:   return   value   of
       ´expr_then´ or ´expr_else´,
                   depending   on   the   value   of   ´expr_cond´   (0=false,
       other=true). For instance,
                   G´MIC command ´-fill  if(x%10==0,255,i)´  will  draw  blank
       vertical lines on every
                   10th column of an image.
                .  ´?(max)´  or  ´?(min,max)´:  return  a random value between
       [0,max] or [min,max],
                   following a uniform distribution. ´u(max)´  and  ´u(0,max)´
       mean the same.
                .  ´i(_a,_b,_c,_d,_interpolation,_boundary)´: return the value
       of the pixel located
                   at position (a,b,c,d) in the associated image,  if  any  (0
       otherwise).
                   Interpolation  parameter  can  be  {  0=nearest  neighbor |
       other=linear }.
                   Boundary conditions can be  {  0=dirichlet  |  1=neumann  |
       2=cyclic }.
                   Omitted  coordinates  are  replaced by their default values
       which are respectively
                   x, y, z, c and 0.
                . ´j(_dx,_dy,_dz,_dc,_interpolation,_boundary)´: does the same
       for the pixel located
                   at position (x+dx,y+dy,z+dz,c+dc).
                   For   instance  command  ´-fill  0.5*(i(x+1)-i(x-1))´  will
       estimate the X-derivative
                   of an image with a classical finite difference scheme.
                . If specified formula starts with ´>´ or ´<´,  the  operators
       ´i(..)´ and ´j(..)´ will return
                   values  of  the  image currently being modified, in forward
       (´>´) or backward (´<´) order.
         - The last image of the list is always associated to the  evaluations
       of ´{expressions}´,
            e.g.  G´MIC  sequence ´256,128 -f {w}´ will create a 256x128 image
       filled with value 256.

        10. Image and data viewers
            ----------------------

         - G´MIC has some very handy embedded visualization  modules,  for  1d
       signals
            (command  ´-plot´),  1d/2d/3d  images  (command ´-display´) and 3d
       objects
            (command ´-display3d´). It enables  an  interactive  view  of  the
       selected image data.
         -  The  following keyboard shortcuts are available in the interactive
       viewers:
           . CTRL+D: Increase window size.
           . CTRL+C: Decrease window size.
           . CTRL+R: Reset window size.
           . CTRL+F: Toggle fullscreen mode.
           .  CTRL+S:  Save  current  window   snapshot   as   numbered   file
       ´gmic_xxxx.bmp´.
           .  CTRL+O:  Save  current  instance of the viewed data, as numbered
       file ´gmic_xxxx.cimgz´.
         - Shortcuts specific to the 1d/2d/3d image viewer are:
           . CTRL+P: Play z-stack of frames as  a  movie  (for  volumetric  3d
       images).
           . CTRL+V: Enable/disable 3D view (for volumetric 3d images).
           . CTRL+(mousewheel): Zoom in/out.
           . SHIFT+(mousewheel): Go left/right.
           . ALT+(mousewheel): Go up/down.
           .  Numeric  PAD:  Zoom  in/out  (+/-) and move through zoomed image
       (digits).
           . BACKSPACE: Reset zoom scale.
         - Shortcuts specific to the 3d object viewer are:
           . (mouse)+(left mouse button): Rotate 3d object.
           . (mouse)+(right mouse button): Zoom 3d object.
           . (mouse)+(middle mouse button): Shift 3d object.
           . (mousewheel): Zoom in/out.
           . CTRL+F1 .. CTRL+F6: Switch between different 3d rendering modes.
           . CTRL+Z: Enable/disable z-buffered rendering.
           . CTRL+A: Show/hide 3d axes.
           . CTRL+G: Save 3d object, as numbered file ´gmic_xxxx.off´.
           . CTRL+T: Switch between single/double-sided 3d modes.

        11. Adding custom commands
            ----------------------

         - Custom commands can be defined by a user, through the use of  G´MIC
       custom commands files.
         -  A command file is a simple ascii text file, where each line starts
       either by
            ´command_name:    command_definition´    or    ´command_definition
       (continuation)´.
         -  Custom  command  names must use characters [a-zA-Z0-9_] and cannot
       start with a number.
         - Any ´ # comment´ expression found in  a  custom  commands  file  is
       discarded by the G´MIC
            interpreter, wherever it is located in a line.
         - In custom commands, the following $-expressions are substituted:
           . ´$*´ is substituted by a verbatim copy of the specified arguments
       string.
           . ´$#´ is substituted by the  maximum  indice  of  known  arguments
       (either specified by the
              user or set to a default value in the custom command).
           .  ´$?´ is substituted by a string telling about the command subset
       restriction (only
              useful  when  custom  commands  need   to   output   descriptive
       messages).
           .  ´$i´  and  ´${i}´  are  both  substituted  by the i-th specified
       argument. Negative indices
              such as ´${-j}´  are  allowed  and  refer  to  the  j^th  latest
       argument. ´$0´ is substituted
              by the custom command name.
           .  ´${i=default}´ is substituted by the value of $i (if defined) or
       by its new value set
               to ´default´ otherwise (´default´  may  be  a  $-expression  as
       well).
           .  ´${subset}´ is substituted by the arguments values (separated by
       commas ´,´) of a
              specified argument subset. For instance expression ´${2--2}´  is
       substitued by all
              specified   arguments   except  the  first  and  the  last  one.
       Expression ´${^0}´ is then
              substituted by all arguments of the invoked command (eq. to ´$*´
       if all specified
              arguments have indeed a value).
           .  ´$=var´  is  substituted  by  the  set of instructions that will
       assign each argument $i
              to the named variable  ´var$i´  (for  i  in  [0..$#]).  This  is
       particularly useful when a
              custom  command  want  to  manage variable numbers of arguments.
       Variables names must
              use characters [a-zA-Z0-9_] and cannot start with a number.
         - These particular $-expressions  are  always  substituted,  even  in
       double quoted items or
            when the dollar sign ´$´ is escaped with a backslash ´\´. To avoid
       substitution, place
            an empty double quoted string just after the ´$´ (as in ´$
         - Specifying arguments may be skipped when invoking a custom command,
       by replacing them by
            commas  ´,´  as in expression ´-flower ,,3´. Omitted arguments are
       set to their default
            values, which must be thus explicitly defined in the code  of  the
       corresponding custom
            command (using default argument expressions as ´${1=default}´).
         -  If  one  numbered  argument  requested  in a custom command has no
       value, an error is thrown
            by the interpreter.

        12. List of commands
            ----------------

        All available G´MIC commands are listed below, classified by themes.
        When several choices of command arguments are  possible,  they  appear
       separated by ´|´.
        An  argument  specified  inside  ´[]´  or  starting by ´_´ is optional
       except when standing for an
        existing image [image], where ´image´ can be either an  indice  number
       or an image name.
        In this case, the ´[]´ characters are mandatory when writing the item.
       A command marked with
        ´(*)´ or ´(+)´ is  a  native  command.  ´(*)´  means  the  command  is
       available for all pixel types,
        otherwise only for the default ´float´ pixel type.
        Remember  that native commands run faster than custom commands, so use
       then when possible.
        Note  also  that  all  images  in  this  reference  documentation  are
       normalized in [0,255] before
        being displayed. You may need to do this manually (command ´-normalize
       0,255´) if you want
        save image files having the same aspect than those displayed.

        ** Global options:

           -debug (*):

               Activate debug mode.
               When activated, the G´MIC interpreter becomes very verbose  and
       outputs additionnal log
               messages  about  its  internal  state  on  the  standard output
       (stdout).
               This option can be useful when debugging  the  execution  of  a
       custom command.

           -help (*):
                               _command |
                               (no args)

               Display help (optionally for specified command only) and exit.
               (eq. to ´-h´).

           -version:

               Display current version number and exit.

        ** Inputs / outputs:

           -apply_camera:
                               _command,_camera_index>=0,_skip_frames>=0,_output_filename

               Apply specified command on live camera stream, and  display  it
       on display window [0].
               Default values: ´command=
                 ´.

           -camera (*):
                               _camera_index>=0,_nb_frames>0,_skip_frames>=0,release_camera={
       0 | 1 },_capture_\
                                 width>=0,_capture_height>=0

               Insert one or several frames from specified camera, with custom
       delay between frames (in ms).
               When ´release_camera==1´, the camera stream is released instead
       of capturing new images.
               Default    values:    ´camera_index=0´    (default     camera),
       ´nb_frames=1´, ´skip_frames=0´, ´release_came\
                 ra=0´ and ´capture_width=capture_height=0´ (default size).

           -command (*):
                               filename |
                               http[s]://URL |

               Import  G´MIC  custom  commands  from  specified  file,  URL or
       string.
               (eq. to ´-m´).
               Imported commands are available directly after  the  ´-command´
       invocation.

           -display (+):
                               _X,_Y,_Z

               Display  selected  images  in  an  interactive  viewer (use the
       instant window [0] if opened).
               Arguments ´X´,´Y´,´Z´ determine the initial selection view, for
       3d volumetric images.
               (eq. to ´-d´).

           -display0:

               Display selected images without value normalization.
               (eq. to ´-d0´).

           -display3d (+):

               Display  selected  3d objects in an interactive viewer (use the
       instant window [0] if opened).
               (eq. to ´-d3d´).

           -display_array:
                               _width>0,_height>0

               Display images in interactive windows where pixel neighborhoods
       can be explored.
               Default values: ´width=13´ and ´height=width´.

           -display_fft:

               Display  fourier  transform  of  selected images, with centered
       log-module and argument.
               (eq. to ´-dfft´).

           -display_graph:
                               _width>32,_height>32,_plot_type,_vertex_type,_xmin,_xmax,_ymin,_ymax,_xlabel,_yl\
                                 abel

               Render graph plot from selected image data.
               Default   values:   ´width=640´,  ´height=480´,  ´plot_type=1´,
       ´vertex_type=1´, ´xmin=xmax=ymin=ymax=\
                 0´, ´xlabel=

           -display_histogram:
                               _width>0,_height>0,_clusters>0,_min_value[%],_max_value[%],_show_axes={
       0 | 1 }

               Render a channel-by-channel histogram.
               (eq. to ´-dh´).
               Default   values:  ´width=512´,  ´height=300´,  ´clusters=256´,
       ´min_value=0%´, ´max_value=100%´ and \
                 ´show_axes=1´.

           -display_polar:
                               _width>32,_height>32,_outline_type,_fill_R,_fill_G,_fill_B,_theta_start,_theta_e\
                                 nd

               Render polar curve from selected image data.
               (eq. to ´-dp´).
               ´outline_type´  can be { r<0=dots with radius -r | 0=no outline
       | r>0=lines+dots with radius r }.
               ´fill_color´ can be { -1=no fill |  R,G,B=fill  with  specified
       color }.
               Default  values: ´width=500´, ´height=width´, ´outline_type=1´,
       ´fill_R=fill_G=fill_B=200´, ´thet\
                 a_start=0´ and ´theta_end=360´.

           -display_rgba:

               Render selected RGBA images over a checkerboard background.
               (eq. to ´-drgba´).

           -display_tensors:
                               _size_factor>0,_ellipse_factor>=0,_colored_mode={
       0 | 1 }

               Render selected mask field of 2x2 tensors with ellipses.
               (eq. to ´-dt´).
               Default    values:   ´size_factor=16´,   ´ellipse_factor=0.92´,
       ´color_mode=1´.

           -display_warp:
                               _cell_size>0

               Render selected 2d warping fields.
               (eq. to ´-dw´).
               Default value: ´cell_size=15´.

           -document_gmic:
                               _format={ ascii | html | latex | xml |  bash  |
       images },_image_path,_write_wrappe\
                                 r={ 0 | 1 }

               Create  documentation  of  .gmic  command  files (loaded as raw
       ´uchar´ images), in specified format.
               Default values: ´format=ascii´, ´image_path=

               Example(s) : raw:file.gmic,uchar -document_gmic html,img

           -echo (*):
                               message

               Output specified message, on the error output.
               (eq. to ´-e´).
               Command subset (if any)  stands  for  displayed  scope  indices
       instead of image indices.

           -echo_file:
                               filename,message

               Output  specified  message,  appending  it  to specified output
       file.
               (similar to ´-echo´ for specified output file stream).

           -echo_stdout:
                               message

               Output specified message, on the standard output (stdout).
               (similar to ´-echo´ for output on standard  output  instead  of
       standard error).

           -function1d:
                               0<=smoothness<=1,x0>=0,y0,x1>=0,y1,...,xn>=0,yn

               Input  continuous  1d function from specified list of keypoints
       (xk,yk)
               in range [0,max(xk)] (xk are positive integers).
               Default values: ´smoothness=1´ and ´x0=y0=0´.

           -gmicky:

               Load a new image of the G´MIC mascot ´Gmicky´.

           -gmicky_wilber:

               Load a new image of the G´MIC  mascot  ´Gmicky´  together  with
       GIMP mascot ´Wilber´.

           -input (*):
                               [type:]filename |
                               [type:]http://URL |
                               [selection]x_nb_copies>0 |
                               {  width>0[%]  |  [image_w]  },{ _height>0[%] |
       [image_h] },{ _depth>0[%] | [image_d\
                                 ]  },{  _spectrum>0[%]   |   [image_s]   },_{
       value1,_value2,.. | ´formula´ } |
                               (value1{,|;|/|^}value2{,|;|/|^}..) |
                               0

               Insert  a  new image taken from a filename or from a copy of an
       existing image [´indice´],
               or insert new  image  with  specified  dimensions  and  values.
       Single quotes may be omitted in
               ´formula´. Specifying argument ´0´ inserts an ´empty´ image.
               (eq. to ´-i´ | (no args)).
               Default  values:  ´nb_copies=1´,  ´height=depth=spectrum=1´ and
       ´value1=0´.

           -output (*):
                               [type:]filename,_format_options

               Output selected images as one or several numbered file(s).
               (eq. to ´-o´).
               Default value: ´format_options´=(undefined).

           -outputn:
                               filename

               Output selected images as automatically numbered  filenames  in
       repeat..done loops.
               (eq. to ´-on´).

           -outputp:
                               prefix

               Output  selected  images as prefixed versions of their original
       filenames.
               (eq. to ´-op´).
               Default value: ´prefix=_´.

           -outputw:

               Output selected images by overwritting their original location.
               (eq. to ´-ow´).

           -plot (+):
                               _plot_type,_vertex_type,_xmin,_xmax,_ymin,_ymax
       |
                               ´formula´,_resolution>=0,_plot_type,_vertex_type,_xmin,xmax,_ymin,_ymax

               Display selected image or formula in an interactive viewer (use
       the instant window [0] if opened\
                 ).
               ´plot_type´ can be { 0=none | 1=lines | 2=splines | 3=bar }.
               ´vertex_type´  can  be  {  0=none  |  1=points  | 2,3=crosses |
       4,5=circles | 6,7=squares }.
               ´xmin´,´xmax´,´ymin´,´ymax´  set   the   coordinates   of   the
       displayed xy-axes.
               Default     values:    ´plot_type=1´,    ´vertex_type=1´    and
       ´xmin=xmax=ymin=ymax=0 (auto)´.

           -print (*):

               Output information on selected images, on  the  standard  error
       (stderr).
               (eq. to ´-p´).

           -rainbow_lut:

               Input a 256-entries RGB colormap of rainbow colors.

           -roddy:

               Load a new image of the G´MIC Rodilius mascot ´Roddy´.

           -remove_duplicates:

               Remove duplicates images in the selected images list.

           -remove_empty:

               Remove empty images in the selected image list.

           -select (+):
                               feature_type,_X,_Y,_Z

               Interactively  select  a  feature from selected images (use the
       instant window [0] if opened).
               ´feature_type´ can be { 0=point |  1=segment  |  2=rectangle  |
       3=ellipse }.
               Arguments ´X´,´Y´,´Z´ determine the initial selection view, for
       3d volumetric images.
               The retrieved  feature  is  returned  as  a  3d  or  6d  vector
       containing the feature coordinates.

           -shared (*):
                               x0[%],x1[%],y[%],z[%],v[%] |
                               y0[%],y1[%],z[%],v[%] |
                               z0[%],z1[%],v[%] |
                               v0[%],v1[%] |
                               (no args)

               Insert  shared  buffers  from (opt. points/rows/planes/channels
       of) selected images.
               (eq. to ´-sh´).

           -srand (*):
                               value |
                               (no args)

               Set random generator seed.
               If no argument is specified, a random  value  is  used  as  the
       random generator seed.

           -testimage2d:
                               _width>0,_height>0,_spectrum>0

               Input a 2d synthetic image.
               Default values: ´width=512´, ´height=width´ and ´spectrum=3´.

           -text2img:
                               text,_line_separator

               Input a 2d image whose values are ASCII characters of specified
       input text.
               Default value: ´line_separator= ´.

           -type (*):
                               datatype

               Set pixel datatype for all images of the list.
               ´datatype´ can be { bool | uchar | char | ushort | short | uint
       | int | float | double }.

           -uncommand (*):
                               command_name |
                               *

               Discard last definition of specified custom command.
               Set   argument  to  ´*´  for  discarding  all  existing  custom
       commands.

           -uniform_distribution:
                               nb_levels>=1,spectrum>=1

               Input set of uniformly distributed N-d points in [0,1]^N.

           -update:

               Update commands from the latest definition file  on  the  G´MIC
       server.
               This  requires  an  active Internet connection and an access to
       the external
               tools ´curl´ or ´wget´.
               (eq. to ´-up´).

           -verbose (*):
                               level |
                               { + | - }

               Set or increment/decrement the verbosity level.
               (eq. to ´-v´).
               When ´level´>=0,  G´MIC  log  messages  are  displayed  on  the
       standard error (stderr).
               Default value for the verbosity level is 0.

           -wait (+):
                               delay |
                               (no args)

               Wait  for a given delay (in ms) or for a user event occuring on
       the selected instant window.
               ´delay´ can be { <0=delay+flush |  0=event | >0=delay }.
               Command subset (if  any)  stands  for  instant  window  indices
       instead of image indices.

           -warn (*):
                               message

               Print   specified   warning  message,  on  the  standard  error
       (stderr).
               Command subset (if any)  stands  for  displayed  scope  indices
       instead of image indices.

           -window (+):
                               _width[%]>=-1,_height[%]>=-1,_normalization,_fullscreen,_title

               Display selected images into an instant window  with  specified
       size, normalization type,
               fullscreen mode and title.
               (eq. to ´-w´).
               If  ´width´  or  ´height´  is  set  to  -1,  the  corresponding
       dimension is adjusted to the window
               or image size.
               ´width´=0 or ´height´=0 closes the instant window.
               ´normalization´ can be { -1=keep same |  0=none  |  1=always  |
       2=1st-time | 3=auto }.
               ´fullscreen´ can be { -1=keep same | 0=no | 1=yes }.
               You  can manage up to 10 different instant windows by using the
       numbered variants
               ´-w0´ (default, eq.  to  ´-w´),´-w1´,..,´-w9´  of  the  command
       ´-w´.
               Default  values: ´width=height=normalization=fullscreen=-1´ and
       ´title=(undefined)´.

        ** List manipulation:

           -keep (*):

               Keep only selected images.
               (eq. to ´-k´).

           -move (*):
                               position[%]

               Move selected images at specified position.
               (eq. to ´-mv´).

           -name (*):
                               name,_is_modified={ 0 | 1 }

               Set name of selected images.
               (eq. to ´-nm´).
               Argument  ´is_modified´  tells  about  the  modified  state  of
       selected images.
               Default value: ´is_modified=0´.

           -remove (*):

               Remove selected images.
               (eq. to ´-rm´).

           -reverse (*):

               Reverse positions of selected images.
               (eq. to ´-rv´).

           -sort_list:
                               _ordering={ + | - },_criterion

               Sort  list  of selected images according to the specified image
       criterion.
               Default values: ´ordering=+´, ´criterion=i´.

           -sort_str:

               Sort  selected  images  (viewed  as  a  list  of  strings)   in
       lexicographic order.

        ** Mathematical operators:

           -abs (+):

               Compute the pointwise absolute values of selected images.

           -acos (+):

               Compute the pointwise arc-cosine of selected images.

           -add (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Add  specified  value,  image  or  mathematical  expression  to
       selected images,
               or compute the pointwise sum of selected images.
               (eq. to ´-+´).

           -and (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the bitwise  AND  of  selected  images  with  specified
       value, image or mathematical
               expression,  or compute the pointwise sequential bitwise AND of
       selected images.

           -asin (+):

               Compute the pointwise arc-sine of selected images.

           -atan (+):

               Compute the pointwise arc-tangent of selected images.

           -atan2 (+):
                               [x_argument]

               Compute the pointwise oriented arc-tangent of selected images.
               Each selected image  is  regarded  as  the  y-argument  of  the
       arc-tangent function, while the
               specified image gives the corresponding x-argument.

           -bsl (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute   the  bitwise  left  shift  of  selected  images  with
       specified value, image or
               mathematical expression, or compute  the  pointwise  sequential
       bitwise left shift of
               selected images.
               (eq. to ´-<<´).

           -bsr (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute  the  bitwise  right  shift  of  selected  images  with
       specified value, image or
               mathematical expression, or compute  the  pointwise  sequential
       bitwise right shift of
               selected images.
               (eq. to ´->>´).

           -cos (+):

               Compute the pointwise cosine of selected images.

           -cosh (+):

               Compute the pointwise hyperbolic cosine of selected images.

           -div (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Divide selected image by specified value, image or mathematical
       expression,
               or compute the pointwise quotient of selected images.
               (eq. to ´-/´).

           -eq (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the boolean equality of selected images with  specified
       value, image or
               mathematical  expression,  or  compute  the boolean equality of
       selected images.
               (eq. to ´-==´).

           -exp (+):

               Compute the pointwise exponential of selected images.

           -ge (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the boolean ´greater or equal than´ of selected  images
       with specified value, image
               or  mathematical expression, or compute the boolean ´greater or
       equal than´ of selected images.
               (eq. to ´->=´).

           -gt (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the boolean ´greater  than´  of  selected  images  with
       specified value, image or
               mathematical  expression, or compute the boolean ´greater than´
       of selected images.
               (eq. to ´->´).

           -le (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the boolean ´less or equal  than´  of  selected  images
       with specified value, image or
               mathematical  expression, or compute the boolean ´less or equal
       than´ of selected images.
               (eq. to ´-<=´).

           -lt (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute  the  boolean  ´less  than´  of  selected  images  with
       specified value, image or
               mathematical  expression, or compute the boolean ´less than´ of
       selected images.
               (eq. to ´-<´).

           -log (+):

               Compute the pointwise base-e logarithm of selected images.

           -log10 (+):

               Compute the pointwise base-10 logarithm of selected images.

           -log2 (+):

               Compute the pointwise base-2 logarithm of selected images

           -max (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the  maximum  between  selected  images  and  specified
       value, image or
               mathematical   expression,  or  compute  the  pointwise  maxima
       between selected images.

           -mdiv (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the matrix division  of  selected  matrices/vectors  by
       specified value, image or
               mathematical  expression,  or  compute  the  matrix division of
       selected images.
               (eq. to ´-//´).

           -min (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the  minimum  between  selected  images  and  specified
       value, image or
               mathematical   expression,  or  compute  the  pointwise  minima
       between selected images.

           -mod (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the modulo of selected  images  with  specified  value,
       image or mathematical
               expression,  or  compute  the  pointwise  sequential  modulo of
       selected images.
               (eq. to ´-%´).

           -mmul (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute   the   matrix   right   multiplication   of   selected
       matrices/vectors by specified value, image o\
                 r
               mathematical   expression,   or   compute   the   matrix  right
       multiplication of selected images.
               (eq. to ´-**´).

           -mul (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Multiply  selected  images  by  specified   value,   image   or
       mathematical expression,
               or compute the pointwise product of selected images.
               (eq. to ´-*´).

           -neq (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute   the   boolean  inequality  of  selected  images  with
       specified value, image or
               mathematical expression, or compute the boolean  inequality  of
       selected images.
               (eq. to ´-!=´).

           -or (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the bitwise OR of selected images with specified value,
       image or mathematical
               expression, or compute the pointwise sequential bitwise  OR  of
       selected images.

           -pow (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Raise  selected image to the power of specified value, image or
       mathematical
               expression, or  compute  the  pointwise  sequential  powers  of
       selected images.
               (eq. to ´-^´).

           -rol (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute  the  bitwise  left  rotation  of  selected images with
       specified value, image or
               mathematical expression, or compute  the  pointwise  sequential
       bitwise left rotation of
               selected images.

           -ror (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute  the  bitwise  right  rotation  of selected images with
       specified value, image or
               mathematical expression, or compute  the  pointwise  sequential
       bitwise right rotation of
               selected images.

           -sign (+):

               Compute the pointwise sign of selected images.

           -sin (+):

               Compute the pointwise sine of selected images.

           -sinc (+):

               Compute the pointwise sinc function of selected images.

           -sinh (+):

               Compute the pointwise hyperbolic sine of selected images.

           -sqr (+):

               Compute the pointwise square function of selected images.

           -sqrt (+):

               Compute the pointwise square root of selected images.

           -sub (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Subtract  specified  value, image or mathematical expression to
       selected images,
               or compute the pointwise difference of selected images.
               (eq. to ´--´).

           -tan (+):

               Compute the pointwise tangent of selected images.

           -tanh (+):

               Compute the pointwise hyperbolic tangent of selected images.

           -xor (+):
                               value[%] |
                               [image] |
                               ´formula´ |
                               (no args)

               Compute the bitwise  XOR  of  selected  images  with  specified
       value, image or mathematical
               expression,  or compute the pointwise sequential bitwise XOR of
       selected images.

        ** Values manipulation:

           -apply_curve:
                               0<=smoothness<=1,x0,y0,x1,y1,x2,y2,...,xN,yN

               Apply curve transformation to image values.
               Default values: ´smoothness=1´, ´x0=0´, ´y0=100´.

           -apply_gamma:
                               gamma>=0

               Apply gamma correction to selected images.

           -balance_gamma:
                               _ref_color1,...

               Apply color balance  transformation  on  selected  image,  with
       respect to specified reference color.
               Default values: ´ref_color1=128´.

           -complex2polar:

               Compute complex to polar transforms of selected images.

           -cumul:

               Compute the cumulative function of specified image data.

           -cut (+):
                               { value0[%] | [image0] },{ value1[%] | [image1]
       } |
                               [image] |
                               (no args)

               Cut values of selected images in specified range.
               (eq. to ´-c´).
               (noargs) runs interactive mode (uses the instant window [0]  if
       opened).

           -discard:
                               value,_remove_if_not_found = { 0 | 1 }.

               Remove specified value in selected images and return results as
       single-column vector.
               Default value: ´remove_if_not_found=0´.

           -eigen2tensor:

               Recompose selected pairs of eigenvalues/eigenvectors as 2x2  or
       3x3 tensor fields.

           -endian (*):

               Reverse data endianness of selected images.

           -equalize:
                               _nb_levels>0[%],_value_min[%],_value_max[%]

               Equalize histograms of selected images.
               If  value range is specified, the equalization is done only for
       pixels in the specified
               value range.
               Default values: ´value_min=0%´ and ´value_max=100%´.

           -fill (+):
                               value1,_value2,.. |
                               [image] |
                               ´formula´

               Fill selected images with values read from the specified  value
       list, existing image
               or  mathematical  expression.  Single  quotes may be omitted in
       ´formula´.
               (eq. to ´-f´).

           -float2int8:

               Convert  selected  float-valued   images   to   8bits   integer
       representations.

           -int82float:

               Convert  selected 8bits integer representations to float-valued
       images.

           -index (+):
                               {      [palette]      |      predefined_palette
       },0<=_dithering<=1,_map_palette={ 0 | 1 }

               Index  selected vector-valued images by specified vector-valued
       palette.
               ´predefined_palette´ can be { 0=default |  1=HSV  |  2=lines  |
       3=hot | 4=cool | 5=jet | 6=flag | 7=\
                 cube }.
               Default values: ´dithering=0´ and ´map_palette=0´.

           -image_integral:

               Compute  the  image  integral  (summed  area table) of selected
       images.

           -map (+):
                               [palette] |
                               predefined_palette

               Map specified vector-valued palette to selected indexed  scalar
       images.
               ´predefined_palette´  can  be  {  0=default | 1=HSV | 2=lines |
       3=hot | 4=cool | 5=jet | 6=flag | 7=\
                 cube }.

           -map_clut:

               Map RGB color LUT image (regarded as the  last  image)  to  all
       other selected images.

           -mix_channels:
                               (a00,...,aMN)

               Apply specified matrix to channels of selected images.

           -negative:

               Compute negative of selected images.

           -noise (+):
                               std_variation>=0[%],_noise_type

               Add random noise to selected images.
               ´noise_type´  can be { 0=gaussian | 1=uniform | 2=salt&pepper |
       3=poisson | 4=rice }.
               Default value: ´noise_type=0´.

           -norm:

               Compute the pointwise euclidean norm of vector-valued pixels in
       selected images.

           -normalize (+):
                               { value0[%] | [image0] },{ value1[%] | [image1]
       } |
                               [image]

               Linearly normalize  values  of  selected  images  in  specified
       range.
               (eq. to ´-n´).

           -normalize_sum:

               Normalize selected images with a unitary sum.

           -orientation:

               Compute  the  pointwise  orientation of vector-valued pixels in
       selected images.

           -otsu:
                               _nb_levels>0

               Hard-threshold image using Otsu´s method.
               Default value: ´nb_levels=256´.

           -polar2complex:

               Compute polar to complex transforms of selected images.

           -quantize:
                               nb_levels>=1,_keep_values={     0      |      1
       },_is_uniform={ 0 | 1 }

               Quantize selected images.
               Default value: ´keep_values=1´ and ´is_uniform=0´.

           -rand (+):
                               { value0[%] | [image0] },{ value1[%] | [image1]
       } |
                               [image]

               Fill selected images with random values  uniformly  distributed
       in the specified range.

           -replace:
                               value_src,value_dest

               Replace pixel values in selected images.

           -replace_inf:
                               _expression

               Replace  all  infinite  values  in selected images by specified
       expression.

           -replace_nan:
                               _expression

               Replace  all  NaN  values  in  selected  images  by   specified
       expression.

           -replace_seq:

               Search and replace a sequence of values in selected images.

           -round (+):
                               rounding_value>=0,_rounding_type |
                               (no args)

               Round values of selected images.
               ´rounding_type´ can be { -1=backward | 0=nearest | 1=forward }.
               Default value: ´rounding_type=0´.

           -roundify:
                               gamma>=0

               Apply   roundify  transformation  on  float-valued  data,  with
       specified gamma.
               Default value: ´gamma=0´.

           -set (*):
                               value,_x[%],_y[%],_z[%],_c[%]

               Set pixel value in selected images, at specified coordinates.
               (eq. to ´-=´).
               If specified coordinates  are  outside  the  image  bounds,  no
       action is performed.
               Default values: ´x=y=z=c=0´.

           -threshold (+):
                               value[%],_is_soft |
                               (no args)

               Threshold values of selected images.
               ´soft´ can be { 0=hard-thresholding | 1=soft-thresholding }.
               (noargs)  runs interactive mode (uses the instant window [0] if
       opened).
               Default value: ´is_soft=0´.

           -threshold2:
                               min[%],max[%]

               Threshold selected images between the two given values.
               (eq. to ´-t2´).

           -vector2tensor:

               Convert  selected  vector  fields  to  corresponding  diffusion
       tensor fields.

        ** Colors manipulation:

           -apply_channels:

                                 |  ab=8  |  a=9 | b=10 | h=11 | s=12 | v=13 |
       k=14 | cg=15 | ch=16 | c=17 | H=18 | \
                                 r=19 | g=20 | b=21 | alpha==22 },_normalize={
       0=cut | 1=normalize }

               Apply  specified  command on chosen normalized channels of each
       selected images.
               Default value: ´normalize=0´.

           -autoindex:
                               nb_colors>0,0<=_dithering<=1,_method={
       0=median-cut | 1=k-means }

               Index selected vector-valued images by adapted colormaps.
               Default values: ´dithering=0´ and ´method=0´.

           -bayer2rgb:
                               _GM_smoothness,_RB_smoothness1,_RB_smoothness2

               Transform selected RGB-Bayer sampled images to color images.
               Default     values:     ´GM_smoothness=RB_smoothness=1´     and
       ´RB_smoothness2=0.5´.

           -cmy2rgb:

               Convert selected images from CMY to RGB colorbases.

           -cmyk2rgb:

               Convert selected images from CMYK to RGB colorbases.

           -colormap:
                               nb_levels>=1,_method={ 0=median-cut | 1=k-means
       },_sort_vectors={ 0 | 1 }

               Estimate  best-fitting  colormap  with  ´nb_colors´ entries, to
       index selected images.
               Default value: ´method=0´ and ´sort_vectors=1´.

           -compose_channels:

               Compose all channels of each selected  image,  using  specified
       arithmetic operator (+,-,or,min,...\
                 ).
               Default value: ´1=+´.

           -direction2rgb:

               Compute RGB representation of selected 2d direction fields.

           -ditheredbw:

               Create dithered B&W version of selected images.

           -fill_color:
                               col1,...,colN

               Fill selected images with specified color.
               (eq. to ´-fc´).

           -gradient2rgb:
                               _is_orientation={ 0 | 1 }

               Compute RGB representation of 2d gradient of selected images.
               Default value: ´is_orientation=0´.

           -hsi2rgb (+):

               Convert selected images from HSI to RGB colorbases.

           -hsi82rgb:

               Convert selected images from HSI8 to RGB color bases.

           -hsl2rgb (+):

               Convert selected images from HSL to RGB colorbases.

           -hsl82rgb:

               Convert selected images from HSL8 to RGB color bases.

           -hsv2rgb (+):

               Convert selected images from HSV to RGB colorbases.

           -hsv82rgb:

               Convert selected images from HSV8 to RGB color bases.

           -lab2lch:

               Convert selected images from Lab to Lch color bases.

           -lab2rgb (+):

               Convert selected images from Lab to RGB colorbases.

           -lab82rgb:

               Convert selected images from Lab8 to RGB color bases.

           -lch2lab:

               Convert selected images from Lch to Lab color bases.

           -lch2rgb:

               Convert selected images from Lch to RGB color bases.

           -lch82rgb:

               Convert selected images from Lch8 to RGB color bases.

           -luminance:

               Compute luminance of selected sRGB images.

           -mix_rgb:
                               a11,a12,a13,a21,a22,a23,a31,a32,a33

               Apply 3x3 specified matrix to RGB colors of selected images.
               Default     values:    ´a11=1´,    ´a12=a13=a21=0´,    ´a22=1´,
       ´a23=a31=a32=0´ and ´a33=1´.

           -pseudogray:
                               _max_increment>=0,_JND_threshold>=0,_bits_depth>0

               Generate  pseudogray  colormap  with  specified  increment  and
       perceptual threshold.
               If ´JND_threshold´ is 0, no perceptual constraints are applied.
               Default  values:  ´max_increment=5´,  ´JND_threshold=2.3´   and
       ´bits_depth=8´.

           -replace_color:
                               tolerance[%]>=0,smoothness[%]>=0,src1,src2,...,dest1,dest2,...

               Replace pixels from/to specified colors in selected images.

           -rgb2bayer:
                               _start_pattern=0,_color_grid=0

               Transform selected color images to RGB-Bayer sampled images.
               Default values: ´start_pattern=0´ and ´color_grid=0´.

           -rgb2cmy:

               Convert selected images from RGB to CMY colorbases.

           -rgb2cmyk:

               Convert selected images from RGB to CMYK colorbases.

           -rgb2hsi (+):

               Convert selected images from RGB to HSI colorbases.

           -rgb2hsi8:

               Convert selected images from RGB to HSI8 color bases.

           -rgb2hsl (+):

               Convert selected images from RGB to HSL colorbases.

           -rgb2hsl8:

               Convert selected images from RGB to HSL8 color bases.

           -rgb2hsv (+):

               Convert selected images from RGB to HSV colorbases.

           -rgb2hsv8:

               Convert selected images from RGB to HSV8 color bases.

           -rgb2lab (+):

               Convert selected images from RGB to Lab colorbases.

           -rgb2lab8:

               Convert selected images from RGB to Lab8 color bases.

           -rgb2lch:

               Convert selected images from RGB to Lch color bases.

           -rgb2lch8:

               Convert selected images from RGB to Lch8 color bases.

           -rgb2luv:

               Convert selected images from RGB to LUV color bases.

           -rgb2srgb (+):

               Convert selected images from RGB to sRGB colorbases.

           -rgb2xyz:

               Convert selected images from RGB to XYZ colorbases.
               the D65 illuminant is used as the white point).

           -rgb2xyz8:

               Convert selected images from RGB to XYZ8 color bases.

           -rgb2ycbcr:

               Convert selected images from RGB to YCbCr colorbases.

           -rgb2yuv:

               Convert selected images from RGB to YUV colorbases.

           -rgb2yuv8:

               Convert selected images from RGB to YUV8 color bases.

           -remove_opacity:

               Remove opacity channel of selected images.

           -select_color:
                               tolerance[%]>=0,col1,..,colN

               Select pixels with specified color in selected images.

           -sepia:

               Apply sepia tones effect on selected images.

           -solarize:

               Solarize selected images.

           -split_opacity:

               Split color and opacity parts of selected images.

           -srgb2rgb (+):

               Convert selected images from sRGB to RGB colorbases.

           -to_a:

               Force selected images to have an alpha channel.

           -to_color:

               Force selected images to be in color mode (RGB or RGBA).

           -to_colormode:
                               mode={ 0=adaptive | 1=G | 2=GA | 3=RGB | 4=RGBA
       }

               Force selected images to be in a given color mode.
               Default value: ´mode=0´.

           -to_gray:

               Force selected images to be in GRAY mode.

           -to_graya:

               Force selected images to be in GRAYA mode.

           -to_pseudogray:
                               _max_step>=0,_is_perceptual_constraint={  0 | 1
       },_bits_depth>0

               Convert selected scalar images ([0-255]-valued) to  pseudo-gray
       color images.
               Default parameters : ´max_step=5´, ´is_perceptual_constraint=1´
       and ´bits_depth=8´.
               The original pseudo-gray technique has been introduced by  Rich
       Franzen [http://r0k.us/graphics/p\
                 seudoGrey.php].
               Extension  of  this  technique to arbitrary increments for more
       tones, has been done by David Tschu\
                 mperle.

           -to_rgb:

               Force selected images to be in RGB mode.

           -to_rgba:

               Force selected images to be in RGBA mode.

           -transfer_colors:
                               _transfer_brightness={ 0 | 1 }

               Transfer colors of the first selected image to the other ones.
               Default value: ´transfer_brightness=0´.

           -xyz2rgb:

               Convert selected images from XYZ to RGB colorbases.

           -xyz82rgb:

               Convert selected images from XYZ8 to RGB color bases.

           -ycbcr2rgb:

               Convert selected images from YCbCr to RGB colorbases.

           -yuv2rgb:

               Convert selected images from YUV to RGB colorbases.

           -yuv82rgb:

               Convert selected images from YUV8 to RGB color bases.

        ** Geometry manipulation:

           -append (*):
                               [image],axis,_alignment |
                               axis,_alignment

               Append specified image to  selected  images,  or  all  selected
       images together, along specified axis\
                 .
               (eq. to ´-a´).
               ´axis´ can be { x | y | z | c }.
               Usual  ´alignment´ values are { 0=left-justified | 0.5=centered
       | 1=right-justified }.
               Default value: ´alignment=0´.

           -append_tiles:
                               _M>=0,_N>=0,0<=_x_alignment<=1,0<=_y_alignment<=1

               Append MxN selected tiles as new images.
               If ´N´ is set to 0, number of rows is estimated automatically.
               If   ´M´   is   set  to  0,  number  of  columns  is  estimated
       automatically.
               If ´M´ and ´N´ are both set to ´0´, auto-mode is used.
               If ´M´ or ´N´ is set to 0, only a single image is produced.
               ´x_alignment´ and ´y_aligment´ tells  about  the  alignment  of
       tiles when they have different sizes\
                 .
               Default values: ´M=0´, ´N=0´, ´x_alignment=y_alignment=0.5´.

           -autocrop (*):
                               value1,value2,... |
                               (no args)

               Autocrop selected images by specified vector-valued intensity.
               If no arguments are provided, cropping value is guessed.

           -autocrop_components:
                               _threshold[%],_min_area[%]>=0,_is_high_connectivity={
       0 | 1 },_output_type={ 0=c\
                                 rop | 1=segmentation | 2=coordinates }

               Autocrop and extract connected components in  selected  images,
       according to a mask given as the l\
                 ast channel of
               each of the selected image (e.g. alpha-channel).
               Default      values:      ´threshold=0%´,      ´min_area=0.1%´,
       ´is_high_connectivity=0´ and ´output_type=1´.

           -autocrop_seq:
                               value1,value2,... | auto

               Autocrop selected images using the crop geometry  of  the  last
       one by specified vector-valued inte\
                 nsity,
               or by automatic guessing the cropping value.
               Default value: auto mode.

           -channels (*):
                               { [image0] | c0[%] },_{ [image1] | c1[%] }

               Keep only specified channels of selected images.
               Dirichlet  boundary  is used when specified channels are out of
       range.

           -columns (*):
                               { [image0] | x0[%] },_{ [image1] | x1[%] }

               Keep only specified columns of selected images.
               Dirichlet boundary is used when specified columns  are  out  of
       range.

           -crop (*):
                               x0[%],x1[%],_boundary |
                               x0[%],y0[%],x1[%],y1[%],_boundary |
                               x0[%],y0[%],z0[%],x1[%],y1[%],z1[%],_boundary |
                               x0[%],y0[%],z0[%],c0[%],x1[%],y1[%],z1[%],c1[%],_boundary
       |
                               (noargs)

               Crop selected images with specified region coordinates.
               (eq. to ´-z´).
               ´boundary´ can be { 0=dirichlet | 1=neumann }.
               (noargs) runs interactive mode (uses the instant window [0]  if
       opened).
               Default value: ´boundary=0´.

           -diagonal:

               Transform selected vectors as diagonal matrices.

           -elevate:
                               _depth,_is_plain,_is_colored

               Elevate selected 2d images into 3d volumes.
               Default values: ´depth=64´, ´is_plain=1´ and ´is_colored=1´.

           -expand_x:
                               size_x>=0,_boundary={ 0=dirichlet | 1=neumann |
       2=cyclic }

               Expand selected images along the x-axis.
               Default value: ´border=1´.

           -expand_xy:
                               size>=0,_boundary={ 0=dirichlet |  1=neumann  |
       2=cyclic }

               Expand selected images along the xy-axes.
               Default value: ´border=1´.

           -expand_xyz:
                               size>=0,_boundary={  0=dirichlet  | 1=neumann |
       2=cyclic }

               Expand selected images along the xyz-axes.
               Default value: ´border=1´.

           -expand_y:
                               size_y>=0,_boundary={ 0=dirichlet | 1=neumann |
       2=cyclic }

               Expand selected images along the y-axis.
               Default value: ´border=1´.

           -expand_z:
                               size_z>=0,_boundary={ 0=dirichlet | 1=neumann |
       2=cyclic }

               Expand selected images along the z-axis.
               Default value: ´border=1´.

           -mirror (*):
                               { x | y | z }..{ x | y | z }

               Mirror selected images along specified axes.

           -permute (*):
                               permutation_string

               Permute selected image axes by specified permutation.
               ´permutation´ is a combination of the character set {x|y|z|c},
               e.g. ´xycz´, ´cxyz´, ..

           -resize (*):
                               [image],_interpolation,_boundary,_ax,_ay,_az,_ac
       |
                               {[image_w]    |    width>0[%]},_{[image_h]    |
       height>0[%]},_{[image_d] | depth>0[%]},_{\
                                 [image_s]                                   |
       spectrum>0[%]},_interpolation,_boundary,_ax,_ay,_az,_ac |
                               (noargs)

               Resize selected images with specified geometry.
               (eq. to ´-r´).
               ´interpolation´  can  be  { -1=none (memory content) | 0=none |
       1=nearest | 2=average | 3=linear | \
                 4=grid | 5=bicubic | 6=lanczos }.
               ´boundary´ has different  meanings,  according  to  the  chosen
       ´interpolation´ mode :
               .  When  ´interpolation=={  -1  |  1  | 2 | 4 }´, ´boundary´ is
       meaningless.
               . When ´interpolation==0´, ´boundary´ can be  {  0=dirichlet  |
       1=neumann | 2=cyclic }.
               .  When  ´interpolation=={  3  |  5 | 6 }´, ´boundary´ can be {
       0=none | 1=neumann }.
               ´ax,ay,az,ac´ set the  alignment  mode  along  each  axis  when
       ´interpolation=0 or 4´
               (set to ´0´ by default, must be defined in range [0,1]).
               (noargs)  runs interactive mode (uses the instant window [0] if
       opened).
               Default    values:    ´interpolation=1´,    ´boundary=0´    and
       ´ax=ay=az=ac=0´.

           -pow2:
                               _interpolation,_boundary,_ax,_ay,_az,_ac

               Resize selected images so that each dimension is a power of 2.
               ´interpolation´  can  be  { -1=none (memory content) | 0=none |
       1=nearest | 2=average | 3=linear | \
                 4=grid | 5=bicubic | 6=lanczos }.
               ´boundary´ has different  meanings,  according  to  the  chosen
       ´interpolation´ mode :
               .  When  ´interpolation=={  -1  |  1  | 2 | 4 }´, ´boundary´ is
       meaningless.
               . When ´interpolation==0´, ´boundary´ can be  {  0=dirichlet  |
       1=neumann | 2=cyclic }.
               .  When  ´interpolation=={  3  |  5 | 6 }´, ´boundary´ can be {
       0=none | 1=neumann }.
               ´ax,ay,az,ac´ set the  alignment  mode  along  each  axis  when
       ´interpolation=0´
               (set to ´0´ by default, must be defined in range [0,1]).
               Default    values:    ´interpolation=0´,    ´boundary=0´    and
       ´ax=ay=az=ac=0´.

           -resize_ratio2d:
                               width>0,height>0,_mode={ 0=inside | 1=outside |
       2=padded },0=<_interpolation<=6

               Resize selected images while preserving their aspect ratio.
               (eq. to ´-rr2d´).
               Default values: ´mode=0´ and ´interpolation=6´.

           -resize2dx:
                               width>0,_interpolation,_boundary,_ax,_ay,_az,_ac

               Resize selected images along the x-axis, preserving 2d ratio.
               (eq. to ´-r2dx´).
               ´interpolation´ can be { -1=none (memory content)  |  0=none  |
       1=nearest | 2=average | 3=linear | \
                 4=grid | 5=bicubic | 6=lanczos }.
               ´boundary´  has  different  meanings,  according  to the chosen
       ´interpolation´ mode :
               . When ´interpolation=={ -1 | 1 |  2  |  4  }´,  ´boundary´  is
       meaningless.
               .  When  ´interpolation==0´,  ´boundary´ can be { 0=dirichlet |
       1=neumann | 2=cyclic }.
               . When ´interpolation=={ 3 | 5 | 6  }´,  ´boundary´  can  be  {
       0=none | 1=neumann }.
               ´ax,ay,az,ac´  set  the  alignment  mode  along  each axis when
       ´interpolation=0´
               (set to ´0´ by default, must be defined in range [0,1]).
               Default    values:    ´interpolation=3´,    ´boundary=0´    and
       ´ax=ay=az=ac=0´.

           -resize2dy:
                               height>0,_interpolation,_boundary,_ax,_ay,_az,_ac

               Resize selected images along the y-axis, preserving 2d ratio.
               (eq. to ´-r2dy´).
               ´interpolation´ can be { -1=none (memory content)  |  0=none  |
       1=nearest | 2=average | 3=linear | \
                 4=grid | 5=bicubic | 6=lanczos }.
               ´boundary´  has  different  meanings,  according  to the chosen
       ´interpolation´ mode :
               . When ´interpolation=={ -1 | 1 |  2  |  4  }´,  ´boundary´  is
       meaningless.
               .  When  ´interpolation==0´,  ´boundary´ can be { 0=dirichlet |
       1=neumann | 2=cyclic }.
               . When ´interpolation=={ 3 | 5 | 6  }´,  ´boundary´  can  be  {
       0=none | 1=neumann }.
               ´ax,ay,az,ac´  set  the  alignment  mode  along  each axis when
       ´interpolation=0´
               (set to ´0´ by default, must be defined in range [0,1]).
               Default    values:    ´interpolation=3´,    ´boundary=0´    and
       ´ax=ay=az=ac=0´.

           -resize3dx:
                               width>0,_interpolation,_boundary,_ax,_ay,_az,_ac

               Resize selected images along the x-axis, preserving 3d ratio.
               (eq. to ´-r3dx´).
               ´interpolation´ can be { -1=none (memory content)  |  0=none  |
       1=nearest | 2=average | 3=linear | \
                 4=grid | 5=bicubic | 6=lanczos }.
               ´boundary´  has  different  meanings,  according  to the chosen
       ´interpolation´ mode :
               . When ´interpolation=={ -1 | 1 |  2  |  4  }´,  ´boundary´  is
       meaningless.
               .  When  ´interpolation==0´,  ´boundary´ can be { 0=dirichlet |
       1=neumann | 2=cyclic }.
               . When ´interpolation=={ 3 | 5 | 6  }´,  ´boundary´  can  be  {
       0=none | 1=neumann }.
               ´ax,ay,az,ac´  set  the  alignment  mode  along  each axis when
       ´interpolation=0´
               (set to ´0´ by default, must be defined in range [0,1]).
               Default    values:    ´interpolation=3´,    ´boundary=0´    and
       ´ax=ay=az=ac=0´.

           -resize3dy:
                               height>0,_interpolation,_boundary,_ax,_ay,_az,_ac

               Resize selected images along the y-axis, preserving 3d ratio.
               (eq. to ´-r3dy´).
               ´interpolation´ can be { -1=none (memory content)  |  0=none  |
       1=nearest | 2=average | 3=linear | \
                 4=grid | 5=bicubic | 6=lanczos }.
               ´boundary´  has  different  meanings,  according  to the chosen
       ´interpolation´ mode :
               . When ´interpolation=={ -1 | 1 |  2  |  4  }´,  ´boundary´  is
       meaningless.
               .  When  ´interpolation==0´,  ´boundary´ can be { 0=dirichlet |
       1=neumann | 2=cyclic }.
               . When ´interpolation=={ 3 | 5 | 6  }´,  ´boundary´  can  be  {
       0=none | 1=neumann }.
               ´ax,ay,az,ac´  set  the  alignment  mode  along  each axis when
       ´interpolation=0´
               (set to ´0´ by default, must be defined in range [0,1]).
               Default    values:    ´interpolation=3´,    ´boundary=0´    and
       ´ax=ay=az=ac=0´.

           -resize3dz:
                               depth>0,_interpolation,_boundary,_ax,_ay,_az,_ac

               Resize selected images along the z-axis, preserving 3d ratio.
               (eq. to ´-r3dz´).
               ´interpolation´ can be { -1=none (memory content)  |  0=none  |
       1=nearest | 2=average | 3=linear | \
                 4=grid | 5=bicubic | 6=lanczos }.
               ´boundary´  has  different  meanings,  according  to the chosen
       ´interpolation´ mode :
               . When ´interpolation=={ -1 | 1 |  2  |  4  }´,  ´boundary´  is
       meaningless.
               .  When  ´interpolation==0´,  ´boundary´ can be { 0=dirichlet |
       1=neumann | 2=cyclic }.
               . When ´interpolation=={ 3 | 5 | 6  }´,  ´boundary´  can  be  {
       0=none | 1=neumann }.
               ´ax,ay,az,ac´  set  the  alignment  mode  along  each axis when
       ´interpolation=0´
               (set to ´0´ by default, must be defined in range [0,1]).
               Default    values:    ´interpolation=3´,    ´boundary=0´    and
       ´ax=ay=az=ac=0´.

           -rotate (*):
                               angle,_interpolation,_boundary,_cx[%],_cy[%],_zoom

               Rotate selected images with specified angle (in deg.).
               ´interpolation´ can be { 0=none | 1=linear | 2=bicubic }.
               ´boundary´ can be { 0=dirichlet | 1=neumann | 2=cyclic }.
               When rotation center (´cx´,´cy´) is specified, the size of  the
       image is preserved.
               Default      values:      ´boundary=0´,      ´interpolation=1´,
       ´cx=cy=(undefined)´ and ´zoom=1´.

           -rotate_tileable:
                               angle,_max_size_factor>=0

               Rotate  selected  images  by  specified  angle  and  make  them
       tileable.
               If resulting size of an image is too big, the image is replaced
       by a 1x1 image.
               Default values: ´max_size_factor=8´.

           -rows (*):
                               { [image0] | y0[%] },_{ [image1] | y1[%] }

               Keep only specified rows of selected images.
               Dirichlet boundary is used  when  specified  rows  are  out  of
       range.

           -scale2x:

               Resize selected images using the Scale2x algorithm.

           -scale3x:

               Resize selected images using the Scale3x algorithm.

           -shift (*):
                               vx[%],_vy[%],_vz[%],_vc[%],_boundary

               Shift selected images by specified displacement vector.
               ´boundary´ can be { 0=dirichlet | 1=neumann | 2=cyclic }.
               Default value: ´boundary=0´.

           -shrink_x:
                               size_x>=0

               Shrink selected images along the x-axis.

           -shrink_xy:
                               size>=0

               Shrink selected images along the xy-axes.

           -shrink_xyz:
                               size>=0

               Shrink selected images along the xyz-axes.

           -shrink_y:
                               size_y>=0

               Shrink selected images along the y-axis.

           -shrink_z:
                               size_z>=0

               Shrink selected images along the z-axis.

           -slices (*):
                               { [image0] | z0[%] },_{ [image1] | z1[%] }

               Keep only specified slices of selected images.
               Dirichlet  boundary  is  used  when specified slices are out of
       range.

           -sort (+):
                               _ordering={ + | - },_axis={ x | y | z | c }

               Sort pixel values of selected images.
               If ´axis´ is specified, the sorting is done  according  to  the
       data of the first column/row/slice/\
                 channel
               of selected images.
               Default values: ´ordering=+´ and ´axis=(undefined)´.

           -split (*):
                               {  x | y | z | c }..{ x | y | z | c },_nb_parts
       |
                               keep_splitting_values={       +       |       -
       },value1,value2,...

               Split  selected  images  along  specified  axis, or sequence of
       scalar values.
               (eq. to ´-s´).
               ´nb_parts´ can be { 0=maximum split | >0=split  in  N  parts  |
       <0=split in parts of size -N }.
               Default value: ´nb_parts=0´.

           -split_tiles:
                               M!=0,_N!=0,_is_homogeneous={ 0 | 1 }

               Split selected images as a MxN array of tiles.
               If M or N is negative, it stands for the tile size instead.
               Default values: ´N=M´ and ´is_homogeneous=0´.

           -unroll (*):
                               axis={ x | y | z | c }

               Unroll selected images along specified axis.
               (eq. to ´-y´).

           -upscale_smart:
                               width,_height,_depth,_smoothness>=0,_anisotropy=[0,1],sharpening>=0

               Upscale selected images with an edge-preserving algorithm.
               Default values:  ´height=100%´,  ´depth=100%´,  ´smoothness=2´,
       ´anisotropy=0.4´ and ´sharpening=10\
                 ´.

           -warp (+):
                               [warping_field],_is_relative={     0     |    1
       },_interpolation,_boundary,_nb_frames>0

               Warp selected image with specified displacement field.
               ´interpolation´  can  be  {  0=nearest-neighbor  |  1=linear  |
       2=cubic }.
               ´boundary´ can be { 0=dirichlet | 1=neumann | 2=cyclic }.
               Default     values:     ´is_relative=0´,     ´interpolation=1´,
       ´boundary=1´ and ´nb_frames=1´.

        ** Filtering:

           -bandpass:
                               _min_freq[%],_max_freq[%]

               Apply bandpass filter to selected images.
               Default values: ´min_freq=0´ and ´max_freq=20%´.

           -bilateral (+):
                               [guide],std_variation_s>0[%],std_variation_r>0
       |
                               std_variation_s>0[%],std_variation_r>0

               Blur  selected  images  by anisotropic (eventually joint/cross)
       bilateral filtering.
               If a guide image is provided, it  is  used  for  computing  the
       smoothing geometry in the cross bilat\
                 eral filter.
               A  guide  image  must  be  of the same xyz-size as the selected
       images.

           -blur (+):
                               std_variation>=0[%],_boundary={  0=dirichlet  |
       1=neumann },_kernel={ 0=quasi-gaus\
                                 sian (faster) | 1=gaussian }

               Blur  selected  images  by  a quasi-gaussian or gaussian filter
       (recursive implementation).
               (eq. to ´-b´).
               Default value: ´boundary=1´ and ´kernel=0´.

           -blur_angular:
                               amplitude[%],_cx,_cy

               Apply angular blur on selected images.
               Default values: ´cx=cy=0.5´.

           -blur_linear:
                               amplitude1[%],_amplitude2[%],_angle,_boundary={
       0=dirichlet | 1=neumann }

               Apply  linear blur on selected images, with specified angle and
       amplitudes.
               Default values: ´amplitude2=0´, ´angle=0´ and ´boundary=1´.

           -blur_radial:
                               amplitude[%],_cx,_cy

               Apply radial blur on selected images.
               Default values: ´cx=cy=0.5´.

           -blur_selective:
                               sigma>=0,_edges>0,_nb_scales>0

               Blur selected images using selective gaussian scales.
               Default values: ´sigma=5´, ´edges=0.5´ and ´nb_scales=5´.

           -blur_x:
                               amplitude[%]>=0,_boundary={    0=dirichlet    |
       1=neumann }

               Blur selected images along the x-axis.
               Default value: ´boundary=1´.

           -blur_xy:
                               amplitude_x[%],amplitude_y[%],_boundary={
       0=dirichlet | 1=neumann }

               Blur selected images along the X and Y axes.
               Default value: ´boundary=1´.

           -blur_xyz:
                               amplitude_x[%],amplitude_y[%],amplitude_z,_boundary={
       0=dirichlet | 1=neumann }

               Blur selected images along the X, Y and Z axes.
               Default value: ´boundary=1´.

           -blur_y:
                               amplitude[%]>=0,_boundary={    0=dirichlet    |
       1=neumann }

               Blur selected images along the y-axis.
               Default value: ´boundary=1´.

           -blur_z:
                               amplitude[%]>=0,_boundary={    0=dirichlet    |
       1=neumann }

               Blur selected images along the z-axis.
               Default value: ´boundary=1´.

           -bokeh:
                               _amplitude>=0,_smoothness>=0,0<=_density<=100,_bokeh_size>0,0<=_bokeh_outline_si\
                                 ze<=100,_bokeh_outline_amplitude>=0,_bokeh_smoothness>=0

               Create a Bokeh effect from selected images.
               Default values: ´amplitude=200´, ´smoothness=2´, ´density=0.2´,
       ´bokeh_size=24´, ´bokeh_outline_\
                 size=10´,           ´bokeh_outline_amplitude=1´           and
       ´bokeh_smoothness=0.1´.

           -compose_freq:

               Compose selected low and high frequency parts into new images.

           -convolve (+):
                               [mask],_boundary,_is_normalized={ 0 | 1 }

               Convolve selected images by specified mask.
               ´boundary´ can be { 0=dirichlet | 1=neumann }.
               Default values: ´boundary=1´ and ´is_normalized=0´.

           -convolve_fft:

               Convolve selected images two-by-two through fourier transforms.

           -correlate (+):
                               [mask],_boundary,_is_normalized={ 0 | 1 }

               Correlate selected images by specified mask.
               ´boundary´ can be { 0=dirichlet | 1=neumann }.
               Default values: ´boundary=1´ and ´is_normalized=0´.

           -cross_correlation:

               Compute cross-correlation using two-by-two selected images.

           -curvature:

               Compute isophote curvatures on selected images.

           -deblur:
                               amplitude[%]>=0,_nb_iter>=0,_dt>=0,_regul>=0,_regul_type={
       0=Tikhonov | 1=meancu\
                                 rv. | 2=TV }

               Deblur image using a regularized Jansson-Van Cittert algorithm.
               Default  values:   ´nb_iter=10´,   ´dt=20´,   ´regul=0.7´   and
       ´regul_type=1´.

           -deblur_goldmeinel:
                               sigma>=0,     _nb_iter>=0,    _acceleration>=0,
       _kernel_type={ 0=quasi-gaussian (faster\
                                 ) | 1=gaussian }.

               Deblur selected images using Gold-Meinel algorithm
               Default    values:    ´nb_iter=8´,     ´acceleration=1´     and
       ´kernel_type=1´.

           -deblur_richardsonlucy:
                               sigma>=0,       nb_iter>=0,      _kernel_type={
       0=quasi-gaussian (faster) | 1=gaussian }.

               Deblur selected images using Richardson-Lucy algorithm.
               Default values: ´nb_iter=50´ and ´kernel_type=1´.

           -deconvolve_fft:

               Deconvolve   selected   images   two-by-two   through   fourier
       transforms.

           -deinterlace:
                               _method={ 0 | 1 }

               Deinterlace  selected  images  (´method´ can be { 0=standard or
       1=motion-compensated }).
               Default value: ´method=0´.

           -denoise (+):
                               std_variation_s>=0,_std_variation_p>=0,_patch_size>=0,_lookup_size>=0,_smoothnes\
                                 s,_fast_approx={ 0 | 1 }

               Denoise selected images by non-local patch averaging.
               Default     values:    ´std_variation_p=10´,    ´patch_size=5´,
       ´lookup_size=6´ and ´smoothness=1´.

           -denoise_haar:
                               _threshold>=0,_nb_scales>=0,_cycle_spinning>0

               Denoise selected image  using  haar-wavelet  thresholding  with
       cycle spinning.
               Set  ´nb_scales==0´  to  automatically  determine  the  optimal
       number of scales.
               Default    values:    ´threshold=1.4´,     ´nb_scale=0´     and
       ´cycle_spinning=10´.

           -deriche (+):
                               std_variation>=0[%],order={  0 | 1 | 2 },axis={
       x | y | z | c },_boundary

               Apply  Deriche  recursive  filter   with   specified   standard
       deviation, order, axis and border
               conditions on selected images.
               ´boundary´ can be { 0=dirichlet | 1=neumann }.
               Default value: ´boundary=1´.

           -dilate (+):
                               size>=0 |
                               size_x>=0,size_y>=0,size_z>=0 |
                               [mask],_boundary,_is_normalized={ 0 | 1 }

               Dilate  selected  images  by  a  rectangular  or  the specified
       structuring element.
               ´boundary´ can be { 0=dirichlet | 1=neumann }.
               Default values: ´size_z=1´, ´boundary=1´ and ´is_normalized=0´.

           -dilate_circ:
                               _size>=0,_boundary,_is_normalized={ 0 | 1 }

               Apply circular dilation of selected image by specified size.
               Default values: ´boundary=1´ and ´is_normalized=0´.

           -dilate_oct:
                               _size>=0,_boundary,_is_normalized={ 0 | 1 }

               Apply octagonal dilation of selected image by specified size.
               Default values: ´boundary=1´ and ´is_normalized=0´.

           -divergence:

               Compute divergence of selected vector fields.

           -dog:
                               _sigma1>=0[%],_sigma2>=0[%]

               Compute difference of gaussian on selected images.
               Default values: ´sigma1=2%´ and ´sigma2=3%´.

           -diffusiontensors:
                               _sharpness>=0,0<=_anisotropy<=1,_alpha[%],_sigma[%],is_sqrt={
       0 | 1 }

               Compute   the   diffusion   tensors   of  selected  images  for
       edge-preserving smoothing algorithms.
               Default values: ´sharpness=0.7´, ´anisotropy=0.3´, ´alpha=0.6´,
       ´sigma=1.1´ and ´is_sqrt=0´.

           -edges:
                               _threshold[%]>=0

               Estimate contours of selected images.
               Default value: ´edges=15%´

           -eikonal (+):
                               nb_iterations>=0,_band_size>=0

               Compute  iterations  of  the  eikonal equation (signed distance
       function) on selected images.
               When  ´band_size==0´,  the  algorithm  performs  on  all  image
       pixels.
               Default value: ´band_size=0´.

           -erode (+):
                               size>=0 |
                               size_x>=0,size_y>=0,_size_z>=0 |
                               [mask],_boundary,_is_normalized={ 0 | 1 }

               Erode  selected  images  by  a  rectangular  or  the  specified
       structuring element.
               boundary´ can be { 0=dirichlet | 1=neumann }.
               Default values: ´size_z=1´, ´boundary=1´ and ´is_normalized=0´.

           -erode_circ:
                               _size>=0,_boundary,_is_normalized={ 0 | 1 }

               Apply circular erosion of selected images by specified size.
               Default values: ´boundary=1´ and ´is_normalized=0´.

           -erode_oct:
                               _size>=0,_boundary,_is_normalized={ 0 | 1 }

               Apply octagonal erosion of selected images by specified size.
               Default values: ´boundary=1´ and ´is_normalized=0´.

           -fft (+):

               Compute the direct fourier transform (real and imaginary parts)
       of selected images.

           -gradient (+):
                               { x | y | z }..{ x | y | z },_scheme |
                               (no args)

               Compute the gradient components (first derivatives) of selected
       images.
               (eq. to ´-g´).
               ´scheme´ can be  {  -1=backward  |  0=centered  |  1=forward  |
       2=sobel | 3=rotation-invariant (default\
                 ) | 4=deriche | 5=vanvliet }.
               (no args) compute all significant 2d/3d components.
               Default value: ´scheme=3´.

           -gradient_orientation:
                               _dimension={1,2,3}

               Compute N-d gradient orientation of selected images.
               Default value: ´dimension=3´.

           -gradient_norm:

               Compute gradient norm of selected images.

           -haar:
                               scale>0

               Compute   the  direct  haar  multiscale  wavelet  transform  of
       selected images.

           -heat_flow:
                               _nb_iter>=0,_dt,_keep_sequence={ 0 | 1 }

               Apply iterations of the heat flow on selected images.
               Default values: ´nb_iter=10´, ´dt=30´ and ´keep_sequence=0´.

           -hessian (+):
                               { xx | xy | xz | yy | yz | zz }..{ xx | xy | xz
       | yy | yz | zz } |
                               (no args)

               Compute the hessian components (second derivatives) of selected
       images.
               (no args) compute all significant components.

           -iee:

               Compute   gradient-orthogonal-directed   2nd   derivative    of
       image(s).

           -ifft (+):

               Compute  the  inverse  fourier  transform  (real  and imaginary
       parts) of selected images.

           -ihaar:
                               scale>0

               Compute  the  inverse  haar  multiscale  wavelet  transform  of
       selected images.

           -inn:

               Compute gradient-directed 2nd derivative of image(s).

           -inpaint (+):
                               [mask]

               Inpaint selected images by specified mask.

           -inpaint_flow:
                               _nb_iter1>=0,_nb_iter2>=0,_dt>=0,_alpha,_sigma

               Apply iteration of the inpainting flow on selected images.
               Default values: ´nb_iter1=4´, ´nb_iter2=15´, ´dt=15´, ´alpha=1´
       and ´sigma=3´.

           -kuwahara:
                               size>0

               Apply Kuwahara filter of specified size on selected images.

           -laplacian:

               Compute Laplacian of selected images.

           -lic:
                               _amplitude>0,_channels>0

               Render LIC representation of selected vector fields.
               Default values: ´amplitude=30´ and ´channels=1´.

           -map_tones:
                               _threshold>=0,_gamma>=0,_smoothness>=0,nb_iter>=0

               Apply  tone  mapping  operator  on  selected  images,  based on
       Poisson equation.
               Default values: ´threshold=0.1´, ´gamma=0.8´,  ´smoothness=0.5´
       and ´nb_iter=30´.

           -map_tones_fast:
                               _radius[%]>=0,_power>=0

               Apply fast tone mapping operator on selected images.
               Default values: ´radius=3%´ and ´power=0.3´.

           -meancurvature_flow:
                               _nb_iter>=0,_dt,_sequence_flag={ 0 | 1 }

               Apply iterations of the mean curvature flow on selected images.
               Default values: ´nb_iter=10´, ´dt=30´ and ´keep_sequence=0´.

           -median (+):
                               radius>=0

               Apply median filter of specified radius on selected images.

           -normalize_local:
                               _amplitude>=0,_radius>0,_n_smooth>=0[%],_a_smooth>=0[%],_is_cut={
       0 | 1 },_min=0\
                                 ,_max=255

               Normalize selected images locally.
               Default  values:  ´amplitude=3´,  ´radius=16´,   ´n_smooth=4%´,
       ´a_smooth=2%´, ´is_cut=1´, ´min=0´ an\
                 d ´max=255´.

           -normalized_cross_correlation:

               Compute  normalized cross-correlation using two-by-two selected
       images.

           -phase_correlation:

               Estimate translation vector using two-by-two selected images.

           -pde_flow:
                               _nb_iter>=0,_dt,_velocity_command,_keep_sequence={
       0 | 1 }

               Apply iterations of a generic PDE flow on selected images.
               Default          values:         ´nb_iter=10´,         ´dt=30´,
       ´velocity_command=laplacian´ and ´keep_sequence=0´.

           -red_eye:
                               0<=_threshold<=100,_smoothness>=0,0<=attenuation<=1

               Attenuate red-eye effect in selected images.
               Default    values:    ´threshold=75´,    ´smoothness=3.5´   and
       ´attenuation=0.1´.

           -remove_hotpixels:
                               _mask_size>0, _threshold[%]>0

               Remove hot pixels in selected images.
               Default values: ´mask_size=3´ and ´threshold=10%´.

           -remove_pixels:
                               density>=0,_pixel_sum>=0

               Remove (i.e. set  to  0)  specified  density  (in  percent)  of
       non-zero pixels to 0.
               Specified  density is regarded against ´pixel_sum´ except if it
       is set to ´0´
               (in this case, ´pixel_sum´ has default value ´width*height´).
               Default value: ´density=10´, ´pixel_sum=0´.

           -repair (+):
                               [mask],_patch_size>=1,_lookup_size>=1,_lookup_increment>=1,_blend_size>=0,0<=_bl\
                                 end_threshold<=1,_blend_decay>=0,_blend_scales>=1,_is_blend_outer={
       0 | 1 }

               Repair masked image pixels in selected images,  by  patch-based
       inpainting.
               Beware, this is a very time consuming command.
               Default    values    :    ´patch_size=11´,    ´lookup_size=22´,
       ´lookup_increment=1´, ´blend_size=0´, ´blend\
                 _threshold=0´,  ´blend_decay=0.05´,   ´blend_scales=10´   and
       ´is_blend_outer=0´.

           -sharpen (+):
                               amplitude>=0 |
                               amplitude>=0,edge>=0,_alpha,_sigma

               Sharpen  selected  images by inverse diffusion or shock filters
       methods.
               ´edge´ must be specified to enable shock-filter method.
               Default values: ´alpha=0´ and ´sigma=0´.

           -smooth (+):
                               amplitude>=0,_sharpness>=0,_anisotropy,_alpha,_sigma,_dl>0,_da>0,_precision>0,in\
                                 terpolation,_fast_approx={ 0 | 1 } |
                               nb_iterations>=0,_sharpness>=0,_anisotropy,_alpha,_sigma,_dt>0,0
       |
                               [tensor_field],_amplitude>=0,_dl>0,_da>0,_precision>0,_interpolation,_fast_appro\
                                 x={ 0 | 1 } |
                               [tensor_field],_nb_iters>=0,_dt>0,0

               Smooth  selected  images anisotropically using diffusion PDE´s,
       with specified field of
               diffusion tensors.
               ´anisotropy´ must be in [0,1].
               ´interpolation´ can be { 0=nearest | 1=linear  |  2=runge-kutta
       }.
               Default values: ´sharpness=0.7´, ´anisotropy=0.3´, ´alpha=0.6´,
       ´sigma=1.1´, ´dl=0.8´, ´da=30´, \
                 ´precision=2´, ´interpolation=0´ and ´fast_approx=1´.

           -split_freq:
                               smoothness>0[%]

               Split selected images into low and high frequency parts.

           -solidify:

               Replace transparent regions of a RGBA image by  morphologically
       interpolated color.

           -solidify_linear:
                               _sigma>=1,_dsigma>=1,0<=_precision<=1

               Replace  transparent  regions  of  a  RGBA  image  by  linearly
       interpolated color.
               Default values: ´sigma=1.5´, ´dsigma=1´ and ´precision=0.5´.

           -solve_poisson:

               Solve Poisson equation  so  that  applying  ´-laplacian[n]´  is
       close to the result of ´-laplacian_co\
                 mmand[n]´.
               Solving  is  performed  using  a  multi-scale  gradient descent
       algorithm.
               If  ´nb_scales=0´,  the  number  of  scales  is   automatically
       determined.
               Default values: ´nb_iterations=60´, ´dt=5´ and ´nb_scales=0´.

           -structuretensors (+):
                               _scheme

               Compute the structure tensor field of selected images.
               ´scheme´   can   be   {   0=centered  |  1=forward-backward1  |
       2=forward-backward2 }.
               Default value: ´scheme=2´.

           -tv_flow:
                               _nb_iter>=0,_dt,_sequence_flag={ 0 | 1 }

               Apply iterations  of  the  total  variation  flow  on  selected
       images.
               Default values: ´nb_iter=10´, ´dt=30´ and ´keep_sequence=0´.

           -unsharp:
                               radius[%]>=0,_amount>=0,_threshold[%]>=0

               Apply unsharp mask on selected images.
               Default values: ´amount=2´ and ´threshold=0´.

           -unsharp_octave:
                               _nb_scales>0,_radius[%]>=0,_amount>=0,threshold[%]>=0

               Apply octave sharpening on selected images.
               Default  values:  ´nb_scales=4´,  ´radius=1´,  ´amount=2´   and
       ´threshold=0´.

           -vanvliet (+):
                               std_variation>=0[%],order={  0  |  1  |  2  | 3
       },axis={ x | y | z | c },_boundary

               Apply  Vanvliet  recursive  filter  with   specified   standard
       deviation, order, axis and border
               conditions on selected images.
               ´boundary´ can be { 0=dirichlet | 1=neumann }.
               Default value: ´boundary=1´.

           -watermark_fourier:
                               text,_size>0

               Add  a  textual  watermark  in the frequency domain of selected
       images.
               Default value: ´size=32´.

           -watershed (+):
                               [priority_image],_fill_lines={ 0 | 1 }

               Compute the watershed transform of selected images.
               Default value: ´fill_lines=1´.

        ** Features extraction:

           -area:
                               tolerance>=0,is_high_connectivity={ 0 | 1 }

               Compute area of connected components in selected images.
               Default values: ´is_high_connectivity=0´.

           -area_fg:
                               tolerance>=0,is_high_connectivity={ 0 | 1 }

               Compute area of connected components  for  non-zero  values  in
       selected images.
               Similar   to  ´-area´  except  that  0-valued  pixels  are  not
       considered.
               Default values: ´is_high_connectivity=0´.

           -barycenter:

               Compute the barycenter vector of pixel values.

           -displacement (+):
                               [source_image],_smoothness,_precision>=0,_nb_scales>=0,iteration_max>=0,is_backw\
                                 ard={ 0 | 1 }

               Estimate   displacement  field  between  specified  source  and
       selected images.
               If ´smoothness>=0´, regularization type is  set  to  isotropic,
       else to anisotropic.
               If ´nbscales==0´, the number of needed scales is estimated from
       the image size.
               Default values: ´smoothness=0.1´, ´precision=5´, ´nb_scales=0´,
       ´iteration_max=10000´ and ´is_ba\
                 ckward=1´.

           -distance (+):
                               isovalue[%],_metric |
                               isovalue[%],[custom_metric] |
                               x[%]>=0,y[%]>=0,z[%]>=0

               Compute the unsigned distance function to specified isovalue or
       coordinates.
               ´metric´ can be { 0=chebyshev |  1=manhattan  |  2=euclidean  |
       3=squared-euclidean }.
               A  custom metric for chamfer distances can be specified as a 2d
       or 3d image.
               If arguments ´x´,´y´,´z´ are provided, the image stands  for  a
       potential map used to
               determine the distance map to specified point (x,y,z).
               Default value: ´metric=2´.

           -float2fft8:

               Convert   selected   float-valued   images   to  8bits  fourier
       representations.

           -fft82float:

               Convert selected 8bits fourier representations to  float-valued
       images.

           -fftpolar:

               Compute  fourier  transform  of  selected  images,  as centered
       magnitude/phase images.

           -histogram (+):
                               nb_levels>0[%],_value0[%],_value1[%]

               Compute the histogram of selected images.
               If value range is set, the  histogram  is  estimated  only  for
       pixels in the specified
               value range. Argument ´value1´ must be specified if ´value0´ is
       set.
               Default values: ´value0=0%´ and ´value1=100%´.

           -histogram_cumul:
                               _nb_levels>0,_is_normalized={     0     |     1
       },_val0[%],_val1[%]

               Compute cumulative histogram of selected images.
               Default    values:   ´nb_levels=256´,   ´is_normalized=0´   and
       ´val0=val1=0´.

           -histogram_pointwise:
                               nb_levels>0[%],_value0[%],_value1[%]

               Compute the histogram of each vector-valued point  of  selected
       images.
               If  value  range  is  set,  the histogram is estimated only for
       values in the specified
               value range.
               Default values: ´value0=0%´ and ´value1=100%´.

           -hough:
                               _width>0,_height>0,gradient_norm_voting={ 0 | 1
       }

               Compute hough transform (theta,rho) of selected images.
               Default     values:     ´width=512´,     ´height=width´     and
       ´gradient_norm_voting=1´.

           -ifftpolar:

               Compute inverse fourier  transform  of  selected  images,  from
       centered magnitude/phase images.

           -isophotes:
                               _nb_levels>0

               Render   isophotes   of   selected   images  on  a  transparent
       background.
               Default value: ´nb_levels=64´

           -label (+):
                               tolerance>=0,is_high_connectivity={ 0 | 1 }

               Label connected components in selected images.
               Default values: ´tolerance=0´ and ´is_high_connectivity=0´.

           -label_fg:
                               tolerance>=0,is_high_connectivity={ 0 | 1 }

               Label connected components for non-zero values (foreground)  in
       selected images.
               Similar  to  ´-label´  except  that  0-valued  pixels  are  not
       labeled.
               Default value: ´is_high_connectivity=0´.

           -max_patch:
                               _patch_size>=1

               Return  locations  of  maximal  values  in  local   patch-based
       neighborhood of given size for selected \
                 images.
               Default value: ´patch_size=16´.

           -min_patch:
                               _patch_size>=1

               Return   locations  of  minimal  values  in  local  patch-based
       neighborhood of given size for selected \
                 images.
               Default value: ´patch_size=16´.

           -minimal_path:
                               x0[%]>=0,y0[%]>=0,z0[%]>=0,x1[%]>=0,y1[%]>=0,z1[%]>=0

               Compute  minimal  path between two points on selected potential
       maps.

           -mse (*):

               Compute  MSE  (Mean-Squared  Error)  matrix  between   selected
       images.

           -patches:
                               patch_width>0,patch_height>0,patch_depth>0,x0,y0,z0,_x1,_y1,_z1,...,_xN,_yN,_zN

               Extract N+1 patches from selected images, centered at specified
       locations.

           -plot2value:

               Retrieve values from selected 2d graph plots.

           -pointcloud:
                               _type   =   {   -X=-X-opacity   |   0=binary  |
       1=cumulative | 2=label }

               Convert a Nx1, Nx2, Nx3 or NxM image as  a  point  cloud  in  a
       1d/2d or 3d binary image.
               If  ´M´>3, the 3-to-M lines sets the (M-3)-dimensional color at
       each point.
               Default value: ´type=0´.

           -psnr (+):
                               _max_value

               Compute  PSNR  (Peak  Signal-to-Noise  Ratio)  matrix   between
       selected images.
               Default value: ´max_value=255´.

           -segment_watershed:
                               _threshold>=0,_fill_lines={ 0 | 1 }

               Apply watershed segmentation on selected images.
               Default values: ´threshold=2´ and ´fill_lines=1´.

           -skeleton:
                               _smoothness[%]>=0

               Compute skeleton of binary shapes using distance transform.
               Default value: ´smoothness=0´.

           -ssd_patch:
                               _use_fourier={  0  | 1 },_boundary_conditions={
       0=dirichlet | 1=neumann }

               Compute field of SSD between an image and  a  patch,  taken  as
       consecutive selected images.
               Argument    ´boundary_conditions´    is    valid    only   when
       ´use_fourier=0´.
               Default value: ´use_fourier=0´ and ´boundary_conditions=0´.

           -thinning:

               Compute skeleton of binary shapes using morphological thinning
               (This is a quite slow iterative proces)

           -tones:
                               N>0

               Get N tones masks from selected images.

           -topographic_map:
                               _nb_levels>0,_smoothness

               Render selected images as topographic maps.
               Default values: ´nb_levels=16´ and ´smoothness=2´.

        ** Image drawing:

           -axes (+):
                               x0,x1,y0,y1,_font_height>=0,_opacity,_pattern,_color1,..

               Draw xy-axes on selected images.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even if a color is specified.
               To draw only one x-axis at row Y, set both ´y0´ and ´y1´ to Y.
               To draw only one y-axis at column X, set both ´x0´ and ´x1´  to
       X.
               Default       values:       ´font_height=13´,      ´opacity=1´,
       ´pattern=(undefined)´ and ´color1=0´.

           -ball:
                               _R,_G,_B

               Draw a colored RGBA ball sprite on selected images.
               Default values: ´R=255´, ´G=R´ and ´B=R´.

           -chessboard:
                               size1>0,_size2>0,_offset1,_offset2,_angle,_opacity,_color1,..,_color2,..

               Draw chessboard on selected images.
               Default  values: ´size2=size1´, ´offset1=offset2=0´, ´angle=0´,
       ´opacity=1´, ´color1=0´ and ´colo\
                 r2=255´.

           -cie1931:

               Draw CIE-1931 chromaticity diagram on selected images.

           -circle:
                               x[%],y[%],R[%],_opacity,_pattern,_color1,..

               Draw specified colored circle on selected images.
               A radius of ´100%´ stands for ´sqrt(width^2+height^2)´.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even  if  a  color is specified. If a pattern is specified, the
       circle is
               drawn outlined instead of filled.
               Default   values:   ´opacity=1´,   ´pattern=(undefined)´    and
       ´color1=0´.

           -ellipse (+):
                               x[%],y[%],R[%],r[%],_angle,_opacity,_pattern,_color1,..

               Draw specified colored ellipse on selected images.
               A radius of ´100%´ stands for ´sqrt(width^2+height^2)´.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even  if  a  color is specified. If a pattern is specified, the
       ellipse is
               drawn outlined instead of filled.
               Default   values:   ´opacity=1´,   ´pattern=(undefined)´    and
       ´color1=0´.

           -flood (+):
                               x[%],_y[%],_z[%],_tolerance>=0,_is_high_connectivity={
       0 | 1 },_opacity,_color1,\
                                 ..

               Flood-fill selected images using specified value and tolerance.
               Default         values:         ´y=z=0´,         ´tolerance=0´,
       ´is_high_connectivity=0´, ´opacity=1´ and ´color1=0´.

           -gaussian:
                               _sigma1[%],_sigma2[%],_angle

               Draw  a  centered  gaussian  on selected images, with specified
       standard deviations and orientation.
               Default values: ´sigma1=3´, ´sigma2=sigma1´ and ´angle=0´.

           -graph (+):
                               [function_image],_plot_type,_vertex_type,_ymin,_ymax,_opacity,_pattern,_color1,.\
                                 . |
                               ´formula´,_resolution>=0,_plot_type,_vertex_type,_xmin,xmax,_ymin,_ymax,_opacity\
                                 ,_pattern,_color1,..

               Draw specified function graph on selected images.
               ´plot_type´ can be { 0=none | 1=lines | 2=splines | 3=bar }.
               ´vertex_type´ can be  {  0=none  |  1=points  |  2,3=crosses  |
       4,5=circles | 6,7=squares }.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even if a color is specified.
               Default values:  ´plot_type=1´,  ´vertex_type=1´,  ´ymin=ymax=0
       (auto)´, ´opacity=1´, ´pattern=(und\
                 efined)´
               and ´color1=0´.

           -grid:
                               size_x[%]>=0,size_y[%]>=0,_offset_x[%],_offset_y[%],_opacity,_pattern,_color1,..

               Draw xy-grid on selected images.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even if a color is specified.
               Default     values:     ´offset_x=offset_y=0´,     ´opacity=1´,
       ´pattern=(undefined)´ and ´color1=0´.

           -image (+):
                               [sprite],_x[%],_y[%],_z[%],_c[%],_opacity,_[sprite_mask],_max_opacity_mask

               Draw specified sprite image on selected images.
               (eq. to ´-j´).
               Default         values:        ´x=y=z=c=0´,        ´opacity=1´,
       ´sprite_mask=(undefined)´ and ´max_opacity_mask=1´.

           -line (+):
                               x0[%],y0[%],x1[%],y1[%],_opacity,_pattern,_color1,..

               Draw specified colored line on selected images.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even if a color is specified.
               Default   values:   ´opacity=1´,   ´pattern=(undefined)´    and
       ´color1=0´.

           -mandelbrot (+):
                               z0r,z0i,z1r,z1i,_iteration_max>=0,_is_julia={ 0
       | 1 },_c0r,_c0i,_opacity

               Draw mandelbrot/julia fractal on selected images.
               Default values: ´iteration_max=100´, ´is_julia=0´,  ´c0r=c0i=0´
       and ´opacity=1´.

           -marble:
                               _image_weight,_pattern_weight,_angle,_amplitude,_sharpness>=0,_anisotropy>=0,_al\
                                 pha,_sigma,_cut_low>=0,_cut_high>=0

               Render marble like pattern on selected images.
               Default   values:   ´image_weight=0.2´,   ´pattern_weight=0.1´,
       ´angle=45´, ´amplitude=0´, ´sharpness=\
                 0.4´, ´anisotropy=0.8´,
               ´alpha=0.6´, ´sigma=1.1´ and ´cut_low=cut_high=0´.

           -maze:
                               _width>0,_height>0,_cell_size>0

               Input maze with specified size.

           -maze_mask:
                               _cellsize>0

               Input maze according to size and shape of selected mask images.
               Mask may contain disconnected shapes.

           -object3d (+):
                               [object3d],_x[%],_y[%],_z,_opacity,_rendering_mode,_is_double3d={
       0 | 1 },_is_zb\
                                 uffer={           0            |            1
       },_focale,_light_x,_light_y,_light_z,_specular_lightness,_specular\
                                 _shininess

               Draw specified 3d object on selected images.
               ´rendering_mode´  can  be  {  0=dots  |  1=wireframe | 2=flat |
       3=flat-shaded | 4=gouraud-shaded | 5=p\
                 hong-shaded }.
               Default values: ´x=y=z=0´, ´opacity=1´ and ´is_zbuffer=1´.  All
       other arguments take their defaul\
                 t values from the 3d environment variables.

           -pack_sprites:
                               _nb_scales>=0,0<=_min_scale<=100,_allow_rotation={
       0=0° | 1=180° | 2=90° | 3=\
                                 any
       },_spacing,_precision>=0,,max_iterations>=0

               Try  to  randomly  pack  as  much  sprites as possible onto the
       ´empty´ areas of an image.
               Sprites can be eventually rotated and scaled during the packing
       process.
               First selected image is the canvas that will be filled with the
       sprites.
               Its last channel must  be  a  binary  mask  whose  zero  values
       represent potential locations for drawi\
                 ng the sprites.
               All  other selected images represent the sprites considered for
       packing.
               Their last channel must be a binary mask  that  represents  the
       sprite shape (i.e. a 8-connected co\
                 mponent).
               The  order  of  sprite  packing  follows the order of specified
       sprites in the image list.
               Sprite packing is done on random locations and iteratively with
       decreasing scales.
               ´nb_scales´ sets the number of decreasing scales considered for
       all specified sprites to be pack\
                 ed.
               ´min_scale´ (in %) sets the minimal size considered for packing
       (specified as a percentage of th\
                 e original sprite size).
               ´spacing´ can be positive or negative.
               ´precision´  tells  about  the  desired number of failed trials
       before ending the filling process.
               Default      values:       ´nb_scales=5´,       ´min_scale=25´,
       ´allow_rotation=3´, ´spacing=1´, ´precision=7´ an\
                 d ´max_iterations=256´.

           -piechart:
                               label_height>=0,label_R,label_G,label_B,
                                 lueN,RN,GN,BN

               Draw pie chart on selected (RGB) images.

           -plasma (+):
                               alpha,_beta,_scale>=0

               Draw a random colored plasma on selected images.
               Default values: ´beta=1´ and ´scale=8´.

           -point (+):
                               x[%],y[%],_z[%],_opacity,_color1,..

               Set specified colored pixel on selected images.
               Default values: ´z=0´, ´opacity=1´ and ´color1=0´.

           -polka_dots:
                               diameter>=0,_density,_offset1,_offset2,_angle,_aliasing,_shading,_opacity,_color\
                                 ,...

               Draw dots pattern on selected images.
               Default values: ´density=20´, ´offset1=offset2=50´,  ´angle=0´,
       ´aliasing=10´, ´shading=1´, ´opac\
                 ity=1´ and ´color=255´.

           -polygon (+):
                               N>=1,x1[%],y1[%],..,xN[%],yN[%],_opacity,_pattern,_color1,..

               Draw specified colored N-vertices polygon on selected images.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even  if  a  color is specified. If a pattern is specified, the
       polygon is
               drawn outlined instead of filled.
               Default   values:   ´opacity=1´,   ´pattern=(undefined)´    and
       ´color1=0´.

           -quiver (+):
                               [function_image],_sampling>0,_factor,_is_arrow={
       0 | 1 },_opacity,_pattern,_colo\
                                 r1,..

               Draw specified 2d vector/orientation field on selected images.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even if a color is specified.
               Default   values:  ´sampling=25´,  ´factor=-20´,  ´is_arrow=1´,
       ´opacity=1´, ´pattern=(undefined)´
               and ´color1=0´.

           -rectangle:
                               x0[%],y0[%],x1[%],y1[%],_opacity,_pattern,_color1,..

               Draw specified colored rectangle on selected images.
               ´pattern´ is an hexadecimal number starting with ´0x´ which can
       be omitted
               even if a color is specified. If a pattern  is  specified,  the
       rectangle is
               drawn outlined instead of filled.
               Default    values:   ´opacity=1´,   ´pattern=(undefined)´   and
       ´color1=0´.

           -rorschach:
                               ´smoothness[%]>=0´,´mirroring={ 0=none | 1=x  |
       2=y | 3=xy }

               Render rorschach-like inkblots on selected images.
               Default values: ´smoothness=5%´ and ´mirroring=1´.

           -sierpinski:
                               recursion_level>=0

               Draw Sierpinski triangle on selected images.
               Default value: ´recursion_level=7´.

           -snowflake:
                               _recursion>=0,_x0,_y0,_x1,_y1,_x2,_y2,_opacity,_col1,..._colN

               Draw a Koch snowflake on selected images.
               Default  values:  ´recursion=4´,  ´x0=20´,  ´y0=70´,   ´x1=80´,
       ´y1=70´, ´x2=50´, ´y2=10´, ´opacity=1´\
                  and ´col1=255´.

           -spiralbw:

               Draw (squared) spiral on selected images.

           -spline:
                               x0[%],y0[%],u0[%],v0[%],x1[%],y1[%],u1[%],v1[%],_nb_vertices>=2,_opacity,_color1\
                                 ,..

               Draw specified colored spline curve on selected images.
               Default values: ´nb_vertices=256´, ´opacity=1´ and ´color1=0´.

           -text (+):
                               text,_x[%],_y[%],_font_height>=0,_opacity,_color1,..

               Draw specified colored text string on selected images.
               (eq. to ´-t´).
               Exact  pre-defined sizes are ´13´,´24´,´32´ and ´57´. Any other
       size is interpolated.
               Specifying an empty target image resizes it to  new  dimensions
       such that the image contains
               the entire text string.
               Default values: ´opacity=1´ and ´color1=0´.

           -text_outline:
                               text,_x[%],_y[%],_font_height>0,_outline>=0,_opacity,_color1,..

               Draw specified colored and outlined  text  string  on  selected
       images.
               Default   values:   ´x=y=2´,   ´font_height=13´,   ´outline=2´,
       ´opacity=1´ and ´color1=255´.

           -triangle_shade:
                               x0,y0,x1,y0,x2,y2,R0,G0,B0,...,R1,G1,B1,...,R2,G2,B2,....

               Draw triangle with interpolated colors on selected images.

           -truchet:
                               _scale>0,_radius>=0,_pattern_type={  0=straight
       | 1=curved }

               Fill selected images with random truchet patterns.
               Default values: ´scale=32´, ´radius=5´ and ´pattern_type=1´.

           -turbulence:
                               _radius>0,_octaves={1,2,3...,12},_alpha>0,_difference={-10,10},_mode={0,1,2,3}

               Render fractal noise or turbulence on selected images.
               Default    values:    ´radius=32´,    ´octaves=6´,   ´alpha=3´,
       ´difference=0´ and ´mode=0´.

           -yinyang:

               Draw a yin-yang symbol on selected images.

        ** Matrix computation:

           -dijkstra (+):
                               starting_node>=0,ending_node>=0

               Compute minimal distances and pathes from  specified  adjacency
       matrices by the Dijkstra algorithm\
                 .

           -eigen (+):

               Compute  the eigenvalues and eigenvectors of selected symmetric
       matrices or matrix fields.
               If one selected image has 3 or 6 channels, it is regarded as  a
       field of 2x2 or 3x3 symmetric mat\
                 rices,
               whose eigen elements are computed at each point of the field.

           -invert (+):

               Compute the inverse of the selected matrices.

           -solve (+):
                               [image]

               Solve linear system AX = B for selected B-vectors and specified
       A-matrix.
               If the  system  is  under-  or  over-determined,  least  square
       solution is returned.

           -svd (+):

               Compute SVD decomposition of selected matrices.

           -transpose:

               Transpose selected matrices.

           -trisolve (+):
                               [image]

               Solve  tridiagonal  system  AX  =  B for selected B-vectors and
       specified tridiagonal A-matrix.
               Tridiagonal matrix must be stored as a 3 column  vector,  where
       2nd column contains the
               diagonal  coefficients,  while  1st and 3rd columns contain the
       left and right coefficients.

        ** 3d rendering:

           -add3d (+):
                               tx,_ty,_tz |
                               [object3d] |
                               (noargs)

               Shift selected 3d objects with specified  displacement  vector,
       or merge them with specified
               3d object, or merge all selected 3d objects together.
               (eq. to ´-+3d´).
               Default values: ´ty=tz=0´.

           -animate3d:
                               _width>0,_height>0,_dx,_dy,_dz,_zoom>=0,_filename

               Animate selected 3d objects in a window.

           -apply_camera3d:
                               pos_x,pos_y,pos_z,target_x,target_y,target_z,up_x,up_y,up_z

               Apply 3d camera matrix to selected 3d objects.
               Default   values:   ´target_x=0´,  ´target_y=0´,  ´target_z=0´,
       ´up_x=0´, ´up_y=-1´ and ´up_z=0´.

           -apply_pose3d:
                               p1,..,p12

               Apply 3d pose matrix to selected 3d objects.

           -axes3d:
                               _size_x,_size_y,_size_z,_font_size>0,_label_x,_label_y,_label_z

               Input  3d  axes  with  specified  sizes  along  the  x,y  and z
       orientations.
               Default   values:   ´size_x=size_y=size_z=1´,   ´font_size=24´,
       ´label_x=X´, ´label_y=Y´ and ´label_z=\
                 Z´.

           -background3d (+):
                               R,_G,_B |
                               [image] |
                               (no args)

               Define  background  from  specified color or existing image for
       interactive 3d viewer.
               (eq. to ´-b3d´).
               (no args) resets the background to default.

           -box3d:
                               _size_x,_size_y,_size_z

               Input 3d box at (0,0,0), with specified geometry.
               Default values: ´size_x=1´ and ´size_z=size_y=size_x´.

           -center3d:

               Center selected 3d objects at (0,0,0).
               (eq. to ´-c3d´).

           -circle3d:
                               _x0,_y0,_z0,_radius>=0

               Input 3d circle at specified coordinates.
               Default values: ´x0=y0=z0=0´ and ´radius=1´.

           -circles3d:
                               _radius>=0

               Convert specified  3d  objects  to  sets  of  3d  circles  with
       specified radius.

           -color3d (+):
                               R,_G,_B,_opacity

               Set color and opacity of selected 3d objects.
               (eq. to ´-col3d´).
               Default value: ´opacity=(undefined)´.

           -colorcube3d:

               Input 3d color cube.

           -cone3d:
                               _radius,_height,_nb_subdivisions>0

               Input 3d cone at (0,0,0), with specified geometry.
               Default value: ´radius=1´,´height=1´ and ´nb_subdivisions=24´.

           -cup3d:
                               _resolution>0

               Input 3d cup object.

           -cylinder3d:
                               _radius,_height,_nb_subdivisions>0

               Input 3d cylinder at (0,0,0), with specified geometry.
               Default value: ´radius=1´,´height=1´ and ´nb_subdivisions=24´.

           -distribution3d:

               Get 3d color distribution of selected images.

           -div3d (+):
                               factor |
                               factor_x,factor_y,_factor_z

               Scale  selected  3d  objects  isotropically or anisotropically,
       with the inverse of specified
               factors.
               (eq. to ´-/3d´).
               Default value: ´factor_z=0´.

           -double3d (+):
                               is_doubled={ 0 | 1 }

               Enable/disable double-sided mode for 3d rendering.
               (eq. to ´-db3d´).

           -elevation3d (+):
                               z-factor |
                               [elevation_map] |
                               ´formula´ |
                               (no args)

               Build  3d  elevation  of  selected  images,  with  a  specified
       elevation map.
               When invoked with (no args) or ´z-factor´, the elevation map is
       computed as the pointwise L2 nor\
                 m of the
               pixel values. Otherwise, the elevation map is  taken  from  the
       specified image or formula.

           -empty3d:

               Input empty 3d object.

           -extrude3d:
                               _depth>0,_resolution>0,_smoothness[%]>=0

               Generate extruded 3d object from selected binary XY-profiles.
               Default     values:     ´depth=16´,    ´resolution=1024´    and
       ´smoothness=0.5%´.

           -focale3d (+):
                               focale

               Set 3d focale.
               (eq. to ´-f3d´).
               Set ´focale´ to 0 to enable  parallel  projection  (instead  of
       perspective).
               Set negative ´focale´ will disable 3d sprite zooming.
               Default value: ´focale=700´.

           -gaussians3d:
                               _size>0,_opacity

               Convert  selected  3d  objects  into  set of 3d gaussian-shaped
       sprites.

           -gmic3d:

               Input a 3d G´MIC logo.

           -gyroid3d:
                               _resolution>0,_zoom

               Input 3d gyroid at (0,0,0), with specified resolution.
               Default values: ´resolution=32´ and ´zoom=5´.

           -histogram3d:

               Get 3d color histogram of selected images.

           -image6cube3d:

               Generate 3d mapped cubes from 6-sets of selected images.

           -imagecube3d:

               Generate 3d mapped cubes from selected images.

           -imageplane3d:

               Generate 3d mapped planes from selected images.

           -imagepyramid3d:

               Generate 3d mapped pyramides from selected images.

           -imagerubik3d:
                               _xy_tiles>=1,0<=xy_shift<=100,0<=z_shift<=100

               Generate 3d mapped rubik´s cubes from selected images.
               Default values: ´xy_tiles=3´, ´xy_shift=5´ and ´z_shift=5´.

           -imagesphere3d:
                               _resolution1>=3,_resolution2>=3

               Generate 3d mapped sphere from selected images.
               Default values: ´resolution1=32´ and ´resolutions2=16´.

           -isoline3d (+):
                               isovalue[%] |
                               ´formula´,value,_x0,_y0,_x1,_y1,_size_x>0[%],_size_y>0[%]

               Extract  3d  isolines with specified value from selected images
       or from specified formula.
               Default values: ´x0=y0=-3´, ´x1=y1=3´ and ´size_x=size_y=256´.

           -isosurface3d (+):
                               isovalue[%] |
                               ´formula´,value,_x0,_y0,_z0,_x1,_y1,_z1,_size_x>0[%],_size_y>0[%],_size_z>0[%]

               Extract  3d  isosurfaces  with  specified  value  from selected
       images or from specified formula.
               Default     values:     ´x0=y0=z0=-3´,     ´x1=y1=z1=3´     and
       ´size_x=size_y=size_z=32´.

           -label_points3d:
                               _label_size>0,_opacity

               Add a numbered label to all vertices of selected 3d objects.
               Default values: ´label_size=13´ and ´opacity=0.8´.

           -lathe3d:
                               _resolution>0,_smoothness[%]>=0,_max_angle>=0

               Generate 3d object from selected binary XY-profiles.
               Default   values:   ´resolution=128´,   ´smoothness=0.5%´   and
       ´max_angle=361´.

           -light3d (+):
                               position_x,position_y,position_z |
                               [texture] |
                               (no args)

               Set  the  light  coordinates  or  the  light  texture  for   3d
       rendering.
               (eq. to ´-l3d´).
               (noargs) resets the 3d light to default.

           -line3d:
                               x0,y0,z0,x1,y1,z1

               Input 3d line at specified coordinates.

           -lissajous3d:
                               resolution>1,a,A,b,B,c,C

               Input              3d              lissajous             curves
       (x(t)=sin(a*t+A*2*pi),y(t)=sin(b*t+B*2*pi),z(t)=sin(c*t+C*2*pi)).
               Default values: ´resolution=1024´, ´a=2´, ´A=0´, ´b=1´,  ´B=0´,
       ´c=0´ and ´C=0´.

           -mode3d (+):
                               mode

               Set static 3d rendering mode.
               (eq. to ´-m3d´).
               ´mode´ can be { -1=bounding-box | 0=dots | 1=wireframe | 2=flat
       | 3=flat-shaded | 4=gouraud-shad\
                 ed | 5=phong-shaded }.
               Bounding-box  mode  (´mode==1´)  is   active   only   for   the
       interactive 3d viewer.

           -moded3d (+):
                               mode

               Set dynamic 3d rendering mode for interactive 3d viewer.
               (eq. to ´-md3d´).
               ´mode´ can be { -1=bounding-box | 0=dots | 1=wireframe | 2=flat
       | 3=flat-shaded | 4=gouraud-shad\
                 ed | 5=phong-shaded }.

           -mul3d (+):
                               factor |
                               factor_x,factor_y,_factor_z

               Scale selected 3d  objects  isotropically  or  anisotropically,
       with specified factors.
               (eq. to ´-*3d´).
               Default value: ´factor_z=0´.

           -normalize3d:

               Normalize selected 3d objects to unit size.
               (eq. to ´-n3d´).

           -opacity3d (+):
                               opacity

               Set opacity of selected 3d objects.
               (eq. to ´-o3d´).

           -parametric3d:
                               _x(a,b),_y(a,b),_z(a,b),_amin,_amax,_bmin,_bmax,_res_a>0,_res_b>0,_res_x>0,_res_\
                                 y>0,_res_z>0,_smoothness>=0,_isovalue>=0

               Input   3d   object   from   specified    parametric    surface
       (x(a,b),y(a,b),z(a,b)).
               Default  values:  ´x=(2+cos(b))*sin(a)´, ´y=(2+cos(b))*cos(a)´,
       ´c=sin(b)´, ´amin=-pi´, ´amax=´pi´\
                 , ´bmin=-pi´, ´bmax=´pi´,
               ´res_a=512´,    ´res_b=res_a´,    ´res_x=64´,    ´res_y=res_x´,
       ´res_z=res_y´, ´smoothness=2%´ and ´isova\
                 lue=10%´.

           -pca_patch3d:
                               _patch_size>0,_M>0,_N>0,_normalize_input={  0 |
       1 },_normalize_output={ 0 | 1 },_\
                                 lambda_xy

               Get 3d patch-pca representation of selected images.
               The 3d patch-pca is estimated  from  M  patches  on  the  input
       image, and displayed as a cloud of N 3\
                 d points.
               Default    values:    ´patch_size=7´,    ´M=1000´,    ´N=3000´,
       ´normalize_input=1´, ´normalize_output=0´, a\
                 nd ´lambda_xy=0´.

           -plane3d:
                               _size_x,_size_y,_nb_subdivisions_x>0,_nb_subdisivions_y>0

               Input 3d plane at (0,0,0), with specified geometry.
               Default     values:     ´size_x=1´,     ´size_y=size_x´     and
       ´nb_subdivisions_x=nb_subdivisions_y=24´.

           -point3d:
                               x0,y0,z0

               Input 3d point at specified coordinates.

           -pointcloud3d:

               Convert selected  planar  or  volumetric  images  to  3d  point
       clouds.

           -pose3d (+):
                               value1,..,value16 |
                               (noargs)

               Set the coefficients of the 3d pose matrix.
               (noargs) resets the 3d pose matrix to default.

           -primitives3d (+):
                               mode

               Convert primitives of selected 3d objects.
               (eq. to ´-p3d´).
               ´mode´ can be { 0=points | 1=segments | 2=non-textured }.

           -projections3d:
                               _x[%],_y[%],_z[%],_is_bounding_box={ 0 | 1 }

               Generate   3d   xy,xz,yz   projection   planes  from  specified
       volumetric images.

           -pyramid3d:
                               width,height

               Input 3d pyramid at (0,0,0), with specified geometry.

           -quadrangle3d:
                               x0,y0,z0,x1,y1,z1,x2,y2,z2,x3,y3,z3

               Input 3d quadrangle at specified coordinates.

           -reverse3d (+):

               Reverse primitive orientations of selected 3d objects.
               (eq. to ´-rv3d´).

           -rotate3d (+):
                               u,v,w,angle

               Rotate selected 3d objects around specified axis with specified
       angle (in deg.).
               (eq. to ´-r3d´).

           -rotation3d:
                               u,v,w,angle

               Input  3x3  rotation  matrix  with specified axis and angle (in
       deg).

           -sierpinski3d:
                               _recursion_level>=0,_width,_height

               Input 3d Sierpinski pyramid.

           -snapshot3d:
                               _size>0,_zoom>=0,_backgroundR,_backgroundG,_backgroundB

               Take 2d snapshots of selected 3d objects.
               Set ´zoom´ to 0 to disable object auto-scaling.
               Default       values:       ´size=512´,       ´zoom=1´      and
       ´backgroundR=backgroundG=backgroundB=(undefined)´.

           -specl3d (+):
                               value>=0

               Set lightness of 3d specular light.
               (eq. to ´-sl3d´).

           -specs3d (+):
                               value>=0

               Set shininess of 3d specular light.
               (eq. to ´-ss3d´).

           -sphere3d (+):
                               radius,_nb_recursions>=0

               Input 3d sphere at (0,0,0), with specified geometry.
               Default value: ´nb_recursions=3´.

           -spherical3d:
                               _nb_azimuth>=3,_nb_zenith>=3,_radius_function(phi,theta)

               Input 3d spherical object at (0,0,0), with specified geometry.
               Default values: ´nb_zenith=nb_azimut=64´ and ´radius_function=
                 )

           -spline3d:
                               x0[%],y0[%],z0[%],u0[%],v0[%],w0[%],x1[%],y1[%],z1[%],u1[%],v1[%],w1[%],_nb_vert\
                                 ices>=2

               Input 3d spline with specified geometry.
               Default values: ´nb_vertices=128´.

           -split3d (+):

               Split selected 3d objects into 6 feature vectors :
               { header, sizes, vertices, primitives, colors, opacities }.
               (eq. to ´-s3d´).
               To recreate the 3d object, append  these  6  images  along  the
       y-axis.

           -sprite3d:

               Convert selected images as 3d sprites.
               Selected image with alpha channels are managed.

           -sprites3d:

               Convert  selected  3d  objects  as  sprites  clouds,  where the
       specified 2d sprite is the last selecte\
                 d image.
               If the selected sprite has a 4th channel,  it  stands  for  the
       sprite alpha-channel (in [0,255]).

           -star3d:
                               nb_branches>0,0<=thickness<=1

               Input 3d star at (0,0,0), with specified geometry.
               Default values: ´nb_branches=5´ and ´thickness=0.38´.

           -streamline3d (+):
                               x[%],y[%],z[%],_L>=0,_dl>0,_interpolation,_is_backward={
       0 | 1 },_is_oriented={ \
                                 0 | 1 } |
                               ´formula´,x,y,z,_L>=0,_dl>0,_interpolation,_is_backward={
       0 | 1 },_is_oriented={\
                                  0 | 1 }

               Extract  3d  streamlines  from  selected  vector fields or from
       specified formula.
               ´interpolation´ can be {  0=nearest  integer  |  1=1st-order  |
       2=2nd-order | 3=4th-order }.
               Default  values:  ´dl=0.1´,  ´interpolation=2´, ´is_backward=0´
       and ´is_oriented=0´.

           -sub3d (+):
                               tx,_ty,_tz

               Shift selected  3d  objects  with  the  opposite  of  specified
       displacement vector.
               (eq. to ´--3d´).
               Default values: ´ty=tz=0´.

           -superformula3d:
                               resolution>1,m>=1,n1,n2,n3

               Input 2d superformula curve as a 3d object.
               Default  values:  ´resolution=1024´,  ´m=8´, ´n1=1´, ´n2=5´ and
       ´n3=8´.

           -text_pointcloud3d:
                               _

               Input 3d text pointcloud from the two specified strings.
               Default values: ´text1=

           -text3d:
                               text,_font_height>0,_depth>0,_smoothness

               Input a 3d text object from specified text.
               Default    values:     ´font_height=57´,     ´depth=10´     and
       ´smoothness=1.5´.

           -texturize3d (+):
                               [ind_texture],_[ind_coords]

               Texturize  selected  3d  objects  with  specified  texture  and
       coordinates.
               (eq. to ´-t3d´).
               When ´[ind_coords]´ is omitted, default XY  texture  projection
       is performed.
               Default value: ´ind_coords=(undefined)´.

           -torus3d:
                               _radius1,_radius2,_nb_subdivisions1>2,_nb_subdivisions2>2

               Input 3d torus at (0,0,0), with specified geometry.
               Default       values:        ´radius1=1´,        ´radius2=0.3´,
       ´nb_subdivisions1=24´ and ´nb_subdivisions2=12´.

           -triangle3d:
                               x0,y0,z0,x1,y1,z1,x2,y2,z2

               Input 3d triangle at specified coordinates.

           -volume3d:

               Transform  selected 3d volumetric images as 3d parallelepipedic
       objects.

           -weird3d:
                               _resolution>0

               Input 3d weird object at (0,0,0), with specified resolution.
               Default value: ´resolution=32´.

        ** Program controls:

           -apply_parallel (*):

               Apply specified command on each  of  the  selected  images,  by
       parallelizing it for all image of the\
                  list.

           -apply_parallel_overlap:

               Apply  specified  command  on  each  of the selected images, by
       parallelizing it on ´nb_threads´ over\
                 lapped sub-images.
               ´nb_threads´ must be a power of 2.
               Default values: ´overlap=0´,´nb_threads=0´.

           -check (*):
                               expression

               Evaluate specified expression and display an error  message  if
       evaluated to false.
               If  ´expression´ is not evaluable, it is regarded as a filename
       and checked if it exists.

           -continue (*):

               Go to end  of  current  block  ´repeat..done´,  ´do..while´  or
       ´local..endlocal´.

           -break (*):

               Break  current ´repeat..done´, ´do..while´ or ´local..endlocal´
       block.

           -do (*):

               Start a ´do..while´ block.

           -done (*):

               End a ´repeat..done´ block,  and  go  to  associated  ´-repeat´
       position, if iterations remain.

           -elif (*):
                               boolean |
                               filename

               Start  a  ´elif..[else]..endif´ block if previous ´-if´ was not
       verified
               and test if specified boolean is true, or if specified filename
       exists.
               ´boolean´  can  be  a  float  number  standing  for { 0=false |
       other=true }.

           -else (*):

               Execute  following  commands  if  previous  ´-if´  or   ´-elif´
       conditions failed.

           -endif (*):

               End a ´if..[elif]..[else]..endif´ block.

           -endlocal (*):

               End a ´local..endlocal´ block.
               (eq. to ´-endl´).

           -error (*):
                               message

               Print  specified  error  message on the standard error (stderr)
       and exit interpreter, except
               if error is caught by a ´-onfail´ command.
               Command subset (if any)  stands  for  displayed  scope  indices
       instead of image indices.

           -exec (*):
                               command

               Execute external command using a system call.
               The  status value is then set to the error code returned by the
       system call.
               (eq. to ´-x´).

           -if (*):
                               boolean |
                               filename

               Start a ´if..[elif]..[else]..endif´ block and test if specified
       boolean is true,
               or if specified filename exists.
               ´boolean´  can  be  a  float  number  standing  for { 0=false |
       other=true }.

           -local (*):

               Start  a  ´local..[onfail]..endlocal´  block,   with   selected
       images.
               (eq. to ´-l´).

           -onfail (*):

               Execute  following commands when an error is encountered in the
       body of the ´local..endlocal´ blo\
                 ck.
               The status value is set with the corresponding error message.

           -parallel (*):

               Execute specified commands in parallel,  each  in  a  different
       thread.
               All running threads share the current list of images.

           -progress (*):
                               0<=value<=100 |
                               -1

               Set the progress indice of the current processing pipeline.
               This  command is useful only when G´MIC is used by an embedding
       application.

           -quit (*):

               Quit interpreter.
               (eq. to ´-q´).

           -repeat (*):
                               nb_iterations

               Start iterations of a ´repeat..done´ block.

           -return (*):

               Return from current custom command.

           -rprogress:
                               0<=value<=100 | -1 |

               Set the progress indice  of  the  current  processing  pipeline
       (relatively to
               previously  defined  progress  bounds),  or  call the specified
       command with
               specified progress bounds.

           -skip (*):
                               item

               Do nothing but skip specified item.

           -status (*):
                               value

               Set current status value. Used to define a returning value in a
       function.
               (eq. to ´-u´).

           -while (*):
                               boolean |
                               filename

               End a ´do..while´ block and go back to associated ´-do´
               if specified boolean is true or if specified filename exists.
               ´boolean´  can  be  a  float  number  standing  for { 0=false |
       other=true }.

        ** Arrays, tiles and frames:

           -array:
                               M>0,_N>0,_expand_type={ 0=min | 1=max | 2=all }

               Create MxN array from selected images.
               Default values: ´N=M´ and ´expand_type=0´.

           -array_fade:
                               M>0,_N>0,0<=_fade_start<=100,0<=_fade_end<=100,_expand_type={0=min
       | 1=max | 2=a\
                                 ll}

               Create MxN array from selected images.
               Default   values:  ´N=M´,  ´fade_start=60´,  ´fade_end=90´  and
       ´expand_type=1´.

           -array_mirror:
                               N>=0,_dir={  0=x  |  1=y  |  2=xy  |   3=tri-xy
       },_expand_type={ 0 | 1 }

               Create 2^Nx2^N array from selected images.
               Default values: ´dir=2´ and ´expand_type=0´.

           -array_random:
                               Ms>0,_Ns>0,_Md>0,_Nd>0

               Create MdxNd array of tiles from selected MsxNs source arrays.
               Default values: ´Ns=Ms´, ´Md=Ms´ and ´Nd=Ns´.

           -frame_blur:
                               _sharpness>0,_size>=0,_smoothness,_shading,_blur

               Draw RGBA-colored round frame in selected images.
               Default  values:  ´sharpness=10´,  ´size=30´,   ´smoothness=0´,
       ´shading=1´ and ´blur=3%´.

           -frame_cube:
                               _depth>=0,_x_center,_y_center,_left_side={0=normal
       | 1=mirror-x | 2=mirror-y | 3\
                                 =mirror-xy},_right_side,_lower_side,_upper_side

               Insert 3d frames in selected images.
               Default    values:    ´depth=1´,    ´x_center=y_center=0´   and
       ´left_side=right_side,lower_side=upper_side\
                 =0´.

           -frame_fuzzy:
                               size_x>=0,_size_y>=0,_fuzzyness>=0,_smoothness>=0,_R,_G,_B,_A

               Draw RGBA-colored fuzzy frame in selected images.
               Default  values: ´size_y=size_x´, ´fuzzyness=5´, ´smoothness=1´
       and ´R=G=B=A=255´.

           -frame_painting:
                               _size[%]>=0,0<=_contrast<=1,_profile_smoothness[%]>=0,_R,_G,_B,_vignette_size[%]\
                                 >=0,_vignette_contrast>=0,_defects_contrast>=0,0<=_defects_density<=100,_defects\
                                 _size>=0,_defects_smoothness[%]>=0,_serial_number

               Add a painting frame to selected images.
               Default        values:        ´size=10%´,       ´contrast=0.4´,
       ´profile_smoothness=6%´, ´R=225´, ´G=200´, ´B=120´, \
                 ´vignette_size=2%´,                  ´vignette_contrast=400´,
       ´defects_contrast=50´, ´defects_density=10´, ´defec\
                 ts_size=1´,           ´defects_smoothness=0.5%´           and
       ´serial_number=123456789´.

           -frame_pattern:
                               M>=3,_pattern  =  {  0=first  image  |   1=self
       },_constrain_size = { 0 | 1 }

               Insert selected pattern frame in selected images.
               Default values: ´pattern=0´ and ´constrain_size=0´.

           -frame_round:
                               _sharpness>0,_size>=0,_smoothness,_shading,_R,_G,_B,_A

               Draw RGBA-colored round frame in selected images.
               Default  values:  ´sharpness=10´,  ´size=10´,   ´smoothness=0´,
       ´shading=0´ and ´R=G=B=A=255´.

           -frame_x:
                               size_x[%]>=0,_col1,...,_colN

               Insert colored frame along the x-axis in selected images.
               Default values: ´col1=col2=col3=255´ and ´col4=255´.

           -frame_xy:
                               size_x[%]>=0,_size_y[%]>=0,_col1,...,_colN

               Insert colored frame along the x-axis in selected images.
               Default   values:   ´size_y=size_x´,  ´col1=col2=col3=255´  and
       ´col4=255´.
               (eq. to ´-frame´).

           -frame_xyz:
                               size_x[%]>=0,_size_y[%]>=0,_size_z[%]>=0_col1,...,_colN

               Insert colored frame along the x-axis in selected images.
               Default  values:  ´size_y=size_x=size_z´,  ´col1=col2=col3=255´
       and ´col4=255´.

           -frame_y:
                               size_y[%]>=0,_col1,...,_colN

               Insert colored frame along the y-axis in selected images.
               Default values: ´col1=col2=col3=255´ and ´col4=255´.

           -imagegrid:
                               M>0,_N>0

               Create MxN image grid from selected images.
               Default value: ´N=M´.

           -linearize_tiles:
                               M>0,_N>0

               Linearize MxN tiles on selected images.
               Default value: ´N=M´.

           -quadratize_tiles:
                               M>0,_N>0

               Quadratize MxN tiles on selected images.
               Default value: ´N=M´.

           -rotate_tiles:
                               angle,_M>0,N>0

               Apply MxN tiled-rotation effect on selected images.
               Default values: ´M=8´ and ´N=M´.

           -shift_tiles:
                               M>0,_N>0,_amplitude

               Apply MxN tiled-shift effect on selected images.
               Default values: ´N=M´ and ´amplitude=20´.

           -taquin:
                               M>0,_N>0

               Create MxN taquin puzzle from selected images.
               Default value: ´N=M´.

           -tunnel:
                               _level>=0,_factor>0,_cx,_cy,_opacity,_angle

               Apply tunnel effect on selected images.
               Default   values:   ´level=9´,    ´factor=80%´,    ´cx=cy=0.5´,
       ´opacity=1´ and ´angle=0´

        ** Artistic:

           -boxfitting:
                               _min_box_size>=1,_max_box_size>=0,_initial_density>=0,_nb_attempts>=1

               Apply box fitting effect on selected images, as  displayed  the
       web page:
               [http://www.complexification.net/gallery/machines/boxFittingImg/]
               Default     values:     ´min_box_size=1´,     ´max_box_size=0´,
       ´initial_density=0.1´ and ´nb_tries=3´.

           -cartoon:
                               _smoothness,_sharpening,_threshold>=0,_thickness>=0,_color>=0,quantization>0

               Apply cartoon effect on selected images.
               Default     values:      ´smoothness=3´,      ´sharpening=150´,
       ´threshold=20´, ´thickness=0.25´, ´color=1.5´ \
                 and ´quantization=8´.

           -circlism:
                               _radius_min>0,_radius_max>0,_smoothness[%]>=0,_radius_linearity>=0,_location_lin\
                                 earity>=0,_shape={0=squares  |  1=diamonds  |
       2=circle }

               Apply  circlism  effect  on selected images (effect inspired by
       Ben Heine).
               Default      values:      ´radius_min=2´,      ´radius_max=20´,
       ´smoothness=1´, ´radius_linearity=0.4´, ´locati\
                 on_linearity=3´ and ´shape=1´.

           -color_ellipses:
                               _count>0,_radius>=0,_opacity>=0

               Add random color ellipses to selected images.
               Default values: ´count=400´, ´radius=5´ and ´opacity=0.1´.

           -cubism:
                               _density>=0,0<=_thickness<=50,_max_angle,_opacity,_smoothness>=0

               Apply cubism effect on selected images.
               Default values: ´density=50´,  ´thickness=10´,  ´max_angle=75´,
       ´opacity=0.7´ and ´smoothness=0´.

           -dotsbw:
                               _nb_scales>0,0<=_resolution<=100,_radius_factor>=0

               Apply B&W dots effect on selected images.
               Default    values:    ´nb_scales=16´,    ´resolution=10´    and
       ´radius_factor=1´.

           -draw_whirl:
                               _amplitude>=0

               Apply whirl drawing effect on selected images.
               Default value: ´amplitude=100´.

           -drawing:
                               _amplitude>=0

               Apply drawing effect on selected images.
               Default value: ´amplitude=200´.

           -drop_shadow:
                               _offset_x[%],_offset_y[%],_smoothness[%]>=0,0<=_curvature<=1,_expand_size={
       0 | \
                                 1 }

               Drop shadow behind selected images.
               Default     values:     ´offset_x=20´,     ´offset_y=offset_x´,
       ´smoothness=5´, ´curvature=0´ and ´expand_si\
                 ze=1´.

           -ellipsionism:
                               _R>0[%],_r>0[%],_smoothness>=0[%],_opacity,_outline>0,_density>0

               Apply ellipsionism filter to selected images.
               Default values: ´R=10´, ´r=3´, ´smoothness=1%´,  ´opacity=0.7´,
       ´outlise=8´ and ´density=0.6´.

           -fire_edges:
                               _edges>=0,0<=_attenuation<=1,_smoothness>=0,_threshold>=0,_nb_frames>0,_starting\
                                 _frame>=0,frame_skip>=0

               Generate fire effect from edges of selected images.
               Default      values:      ´edges=0.7´,      ´attenuation=0.25´,
       ´smoothness=0.5´, ´threshold=25´, ´nb_frames=1´\
                 , ´starting_frame=20´ and ´frame_skip=0´.

           -glow:
                               _amplitude>=0

               Add soft glow on selected images.
               Default value: ´amplitude=1%´.

           -halftone:
                               nb_levels>=2,_size_dark>=2,_size_bright>=2,_shape={
       0=square | 1=diamond | 2=cir\
                                 cle  |   3=inv-square   |   4=inv-diamond   |
       5=inv-circle },_smoothness[%]>=0

               Apply halftone dithering to selected images.
               Default  values: ´nb_levels=5´, ´size_dark=8´, ´size_bright=8´,
       ´shape=5´ and ´smoothnesss=0´.

           -hardsketchbw:
                               _amplitude>=0,_density>=0,_opacity,0<=_edge_threshold<=100,_is_fast={
       0 | 1 }

               Apply hard B&W sketch effect on selected images.
               Default  values: ´amplitude=1000´, ´sampling=3´, ´opacity=0.1´,
       ´edge_threshold=20´ and ´is_fast=\
                 0´.

           -hearts:
                               _density>=0

               Apply heart effect on selected images.
               Default value: ´density=10´.

           -houghsketchbw:
                               _density>=0,_radius>0,0<=_threshold<=100,0<=_opacity<=1,_votesize[%]>0

               Apply hough B&W sketch effect on selected images.
               Default   values:   ´density=8´,   ´radius=5´,  ´threshold=80´,
       ´opacity=0.1´ and ´votesize=100%´.

           -lightrays:
                               100<=_density<=0,_cx,_cy,_ray_length>=0,_ray_attenuation>=0

               Generate ray lights from the edges of selected images.
               Defaults    values   :   ´density=50%´,   ´cx=0.5´,   ´cy=0.5´,
       ´ray_length=0.9´ and ´ray_attenuation=0.5´.

           -light_relief:
                               _ambient_light,_specular_lightness,_specular_size,_light_smoothness,_darkness,_x\
                                 l,_yl,_zl,_zscale,_opacity_bumpmap={ 0 | 1 }

               Apply relief light to selected images.
               Default         values(s)         :        ´ambient_light=0.3´,
       ´specular_lightness=0.5´, ´specular_size=0.2´, ´darknes\
                 s=0´, ´xl=0.2´, ´yl=zl=0.5´,
               ´zscale=1´, ´opacity=1´ and ´opacity_bumpmap=0´.

           -mosaic:
                               _density>=0,_edges={ 0 | 1 }

               Create random mosaic from selected images.
               Default values: ´density=0.8´ and ´edges=1´.

           -old_photo:

               Apply old photo effect on selected images.

           -pencilbw:
                               _size>=0,_amplitude>=0

               Apply B&W pencil effect on selected images.
               Default values: ´size=0.3´ and ´amplitude=60´.

           -polaroid:
                               _size1>=0,_size2>=0

               Create polaroid effect in selected images.
               Default values: ´size1=10´ and ´size2=20´.

           -poster_edges:
                               0<=_edge_threshold<=100,0<=_edge_shade<=100,_edge_thickness>=0,_edge_antialiasin\
                                 g>=0,0<=_posterization_level<=15,_posterization_antialiasing>=0

               Apply poster edges effect on selected images.
               Default    values:     ´edge_threshold=40´,     ´edge_shade=5´,
       ´edge_thickness=0.5´, ´edge_antialiasing=10\
                 ´,                ´posterization_level=12´                and
       ´posterization_antialiasing=0´.

           -rodilius:
                               0<=_amplitude<=100,_0<=thickness<=100,_sharpness>=0,_nb_orientations>0,_offset,_\
                                 color_mode={ 0=darker | 1=brighter }

               Apply rodilius (fractalius-like) filter on selected images.
               Default       values:      ´amplitude=10´,      ´thickness=10´,
       ´sharpness=400´, ´nb_orientations=7´, ´offset=0´\
                  and ´color_mode=1´.

           -stained_glass:
                               _edges[%]>=0, shading>=0,  is_thin_separators={
       0 | 1 }

               Generate stained glass from selected images.
               Default values: ´edges=40%´, ´shading=0.2´ and ´is_precise=0´.

           -stars:
                               _density[%]>=0,_depth>=0,_size>0,_nb_branches>=1,0<=_thickness<=1,_smoothness[%]\
                                 >=0,_R,_G,_B,_opacity

               Add random stars to selected images.
               Default   values:    ´density=10%´,    ´depth=1´,    ´size=32´,
       ´nb_branches=5´, ´thickness=0.38´, ´smoothn\
                 ess=0.5´, ´R=G=B=200´ and ´opacity=1´.

           -sketchbw:

               _nb_orients>0,_start_angle,_angle_range>=0,_length>=0,_threshold>=0,
               _opacity,_bgfactor>=0,_density>0,_sharpness>=0,
               _anisotropy>=0,_smoothness>=0,_coherence>=0,_is_boost={ 0  |  1
       },_is_curved={ 0 | 1 }

               Apply sketch effect to selected images.
               Default      values:      ´nb_orients=2´,     ´start_angle=45´,
       ´angle_range=180´, ´length=30´, ´threshold=1´,\
                  ´opacity=0.03´,
               ´bgfactor=0´, ´density=0.6´, ´sharpness=0.1´, ´anisotropy=0.6´,
       ´smoothness=0.25´, ´coherence=1´\
                 , ´is_boost=0´ and ´is_curved=1´.

           -sponge:
                               _size>0

               Apply sponge effect on selected images.
               Default value: ´size=13´.

           -stencil:
                               _radius[%]>=0,_smoothness>=0,_iterations>=0

               Apply stencil filter on selected images.
               Default values: ´radius=3´, ´smoothness=1´ and ´iterations=8´.

           -stencilbw:
                               _edges>=0,_smoothness>=0

               Apply B&W stencil effect on selected images.
               Default values: ´edges=15´ and ´smoothness=10´.

           -tetris:
                               _scale>0

               Apply tetris effect on selected images.
               Default value: ´scale=10´.

           -warhol:
                               _M>0,_N>0,_smoothness>=0,_color>=0

               Create MxN Andy Warhol-like artwork from selected images.
               Default values: ´M=3´, ´N=M´, ´smoothness=2´ and ´color=20´.

           -weave:
                               _density>=0,0<=_thickness<=100,0<=_shadow<=100,_shading>=0,_fibers_amplitude>=0,\
                                 _fibers_smoothness>=0,_angle,-1<=_x_curvature<=1,-1<=_y_curvature<=1

               Apply weave effect to the selected images.
               ´angle´ can be { 0=0° | 1=22.5° | 2=45° | 3=67.5° }.
               Default   values:   ´density=6´,  ´thickness=65´,  ´shadow=40´,
       ´shading=0.5´, ´fibers_amplitude=0´, ´\
                 fibers_smoothness=0´,              ´angle=0´              and
       ´curvature_x=curvature_y=0´

           -whirls:
                               _texture>=0,_smoothness>=0,_darkness>=0,_lightness>=0

               Add random whirl texture to selected images.
               Default values: ´texture=3´, ´smoothness=6´, ´darkness=0.5´ and
       ´lightness=1.8´.

        ** Warpings:

           -euclidean2polar:
                               _cx,_cy,_n>0,_boundary={      0=dirichlet     |
       1=neumann | 2=cyclic }

               Apply euclidean to polar transform on selected images.
               Default values: ´cx=cy=0.5´, ´n=1´ and ´boundary=1´.

           -deform:
                               _amplitude>=0

               Apply random smooth deformation on selected images.
               Default value: ´amplitude=10´.

           -fisheye:
                               _x,_y,0<=_radius<=100,_amplitude>=0

               Apply fish-eye deformation on selected images.
               Default values: ´x=y=50´, ´radius=50´ and ´amplitude=1.2´.

           -flower:
                               _amplitude,_frequency,_offset_r[%],_angle,_cx,_cy,_boundary={
       0=dirichlet | 1=ne\
                                 umann | 2=cyclic }

               Apply flower deformation on selected images.
               Default  values:  ´amplitude=30´,  ´frequency=6´, ´offset_r=0´,
       ´angle=0´, ´cx=cy=0.5´ and ´boundar\
                 y=2´.

           -kaleidoscope:
                               _cx,_cy,_radius,_angle,_boundary={  0=dirichlet
       | 1=neumann | 2=cyclic }

               Create kaleidoscope effect from selected images.
               Default   values:  ´cx=cy=0.5´,  ´radius=100´,  ´angle=30´  and
       ´boundary=1´.

           -map_sphere:
                               _width>0,_height>0,_radius,_dilation>0,_fading>=0,_fading_power>=0

               Map selected images on a sphere.
               Default      values:      ´width=height=512´,     ´radius=100´,
       ´dilation=0.5´, ´fading=0´ and ´fading_power=0\
                 .5´.

           -polar2euclidean:
                               _cx,_cy,_n>0,_boundary={     0=dirichlet      |
       1=neumann | 2=cyclic }

               Apply polar to euclidean transform on selected images.
               Default values: ´cx=cy=0.5´, ´n=1´ and ´boundary=1´.

           -raindrops:
                               _amplitude,_density>=0,_wavelength>=0,_merging_steps>=0

               Apply raindrops deformation on selected images.
               Default values :  ´amplitude=80´,´density=0.1´,  ´wavelength=1´
       and ´merging_steps=0´.

           -ripple:
                               _amplitude,_frequency,_shape={     0=bloc     |
       1=triangle | 2=sine | 3=sine+ | 4=random\
                                  },_angle,_offset

               Apply ripple deformation on selected images.
               Default  values:  ´amplitude=10´,  ´frequency=10´,   ´shape=2´,
       ´angle=0´ and ´offset=0´.

           -rotoidoscope:
                               _cx,_cy,_tiles>0,_smoothness[%]>=0,_boundary={
       0=dirichlet | 1=neumann | 2=cycli\
                                 c }

               Create rotational kaleidoscope effect from selected images.
               Default values:  ´cx=cy=50%´,  ´tiles=10´,  ´smoothness=1´  and
       ´boundary=1´.

           -symmetrize:
                               _x[%],_y[%],_angle,_boundary={   0=dirichlet  |
       1=neumann | 2=cyclic },_is_antisymm\
                                 etry={ 0 | 1 },_swap_sides={ 0 | 1 }

               Symmetrize selected image regarding specified axis.
               Default   values:    ´x=y=50%´,    ´angle=90´,    ´boundary=1´,
       ´is_antisymmetry=0´ and ´swap_sides=0´.

           -transform_polar:

                                 ann }

               Apply   user-defined   transform  on  polar  representation  of
       selected images.
               Default     values:     ´expr_radius=R-r´,     ´expr_rangle=a´,
       ´x_center=y_center=50´ and ´boundary=1´.

           -twirl:
                               _amplitude,_cx,_cy,_boundary={   0=dirichlet  |
       1=neumann | 2=cyclic }

               Apply twirl deformation on selected images.
               Default values: ´amplitude=1´, ´cx=cy=0.5´ and ´boundary=1´.

           -warp_perspective:
                               _x-angle,_y-angle,_zoom>0,_x-center,_y-center,_boundary={
       0=dirichlet | 1=neuman\
                                 n | 2=cyclic }

               Warp selected images with perspective deformation.
               Default    values:    ´x-angle=1.5´,   ´y-angle=0´,   ´zoom=1´,
       ´x-center=y-center=50´ and ´boundary=2´.

           -water:
                               _amplitude>=0,_smoothness>=0

               Apply water deformation on selected images.
               Default values: ´amplitude=30´ and ´smoothness=1.5´.

           -wave:
                               _amplitude>=0,_frequency>=0,_center_x,_center_y

               Apply wave deformation on selected images.
               Default    values:    ´amplitude=4´,    ´frequency=0.4´     and
       ´center_x=center_y=50´.

           -wind:
                               _amplitude>=0,_angle,0<=_attenuation<=1,_threshold

               Apply wind effect on selected images.
               Default values:  ´amplitude=20´,  ´angle=0´,  ´attenuation=0.7´
       and ´threshold=20´.

           -zoom:
                               _factor,_cx,_cy,_cz,_boundary={  0=dirichlet  |
       1=neumann | 2=cyclic }

               Apply zoom factor to selected images.
               Default values: ´factor=1´, ´cx=cy=cz=0.5´ and ´boundary=0´.

        ** Degradations:

           -cracks:
                               _density>=0,_amplitude,_relief={ 0 | 1 }

               Add random cracks to selected images.
               Default values: ´density=0.2´, ´amplitude=40´ and ´relief=0´.

           -light_patch:
                               _density>0,_darkness>=0,_lightness>=0

               Add light patches to selected images.
               Default    values:     ´density=10´,     ´darkness=0.9´     and
       ´lightness=1.7´.

           -noise_hurl:
                               _amplitude>=0

               Add hurl noise to selected images.
               Default value: ´amplitude=10´.

           -pixelize:
                               _scale_x>0,_scale_y>0,_scale_z>0

               Pixelize selected images with specified scales.
               Default values: ´scale_x=20´ and ´scale_y=scale_z=scale_x´.

           -shade_stripes:
                               _frequency>=0,_direction={    0=horizontal    |
       1=vertical },_darkness>=0,_lightness>=\
                                 0

               Add shade stripes to selected images.
               Default values:  ´frequency=5´,  ´direction=1´,  ´darkness=0.8´
       and ´lightness=2´.

           -shadow_patch:
                               _opacity>=0

               Add shadow patches to selected images.
               Default value: ´opacity=0.7´.

           -spread:
                               _dx>=0,_dy>=0,_dz>=0

               Spread  pixel  values of selected images randomly along x,y and
       z.
               Default values: ´dx=3´, ´dy=dx´ and ´dz=0´.

           -stripes_y:
                               _frequency>=0

               Add vertical stripes to selected images.
               Default value: ´frequency=10´.

           -texturize_canvas:
                               _amplitude>=0,_fibrousness>=0,_emboss_level>=0

               Add paint canvas texture to selected images.
               Default    values:    ´amplitude=20´,    ´fibrousness=3´    and
       ´emboss_level=0.6´.

           -texturize_paper:

               Add paper texture to selected images.

           -vignette:
                               _strength>=0,0<=_radius_min<=100,0<=_radius_max<=100

               Add vignette effect to selected images.
               Default    values:    ´strength=100´,    ´radius_min=70´    and
       ´radius_max=90´.

           -watermark_visible:
                               _text,0<_opacity<1,_size>0,_angle,_mode={
       0=remove | 1=add },_smoothness>=0

               Add or remove a visible watermark  on  selected  images  (value
       range must be [0,255]).
               Default  values:  ´text=(C)  G´MIC´,  ´opacity=0.3´, ´size=57´,
       ´angle=25´, ´mode=1´ and ´smoothness\
                 =0´.

        ** Blending and fading:

           -blend:
                               blending_mode,0<=_opacity<=1,_revert_layer_order={
       0 | 1 }

               Blend  selected  G,GA,RGB  or  RGBA  images,  two-by-two, using
       specified mode.
               ´blending_mode´ can be { add | alpha | and | average |  blue  |
       burn | darken | difference |
               divide | dodge | exclusion | freeze | grainextract | grainmerge
       | green | hardlight |
               hardmix  |  hue  |  interpolation  |  lighten  |  lightness   |
       linearburn | linearlight | luminance |
               multiply | negation | or | overlay | pinlight | red | reflect |
       saturation |
               screen | shapeaverage | shapeaverage0 | softburn | softdodge  |
       softlight | stamp | subtract | va\
                 lue |
               vividlight | xor }.
               Default    values:   ´blending_mode=alpha´,   ´opacity=1´   and
       ´revert_layers=0´.

           -blend_edges:
                               smoothness[%]>=0

               Blend selected images togethers using ´edges´ mode.

           -blend_fade:

               Blend selected images togethers using a  given  fading  pattern
       (defined as the latest image).

           -blend_median:

               Blend selected images together using ´median´ mode.

           -fade_diamond:
                               0<=_start<=100,0<=_end<=100

               Create diamond fading from selected images.
               Default values: ´start=80´ and ´end=90´.

           -fade_linear:
                               _angle,0<=_start<=100,0<=_end<=100

               Create linear fading from selected images.
               Default values: ´angle=45´, ´start=30´ and ´end=70´.

           -fade_radial:
                               0<=_start<=100,0<=_end<=100

               Create radial fading from selected images.
               Default values: ´start=30´ and ´end=70´.

           -fade_x:
                               0<=_start<=100,0<=_end<=100

               Create horizontal fading from selected images.
               Default values: ´start=30´ and ´end=70´.

           -fade_y:
                               0<=_start<=100,0<=_end<=100

               Create vertical fading from selected images.
               Default values: ´start=30´ and ´end=70´.

           -fade_z:
                               0<=_start<=100,0<=_end<=100

               Create transversal fading from selected images.
               Default values: ´start=30´ and ´end=70´.

        ** Image sequences:

           -animate:
                               filter_name,
                                 =0,_output_frames={  0 | 1 },_output_filename
       |
                               delay>0

               Animate filter from starting parameters to ending parameters or
       animate selected images
               in a display window.
               Default value: ´delay=30´.

           -morph:
                               nb_frames>0,_smoothness>=0,_precision>0

               Create morphing sequence between selected images.
               Default values: ´smoothness=0.1´ and ´precision=5´.

           -register_nonrigid:
                               _smoothness>=0,_precision>0,_nb_scale>=0

               Register selected images with non-rigid warp.
               Default    values:    ´smoothness=0.2´,    ´precision=6´    and
       ´nb_scale=0(auto)´.

           -register_rigid:
                               _smoothness>=0

               Register selected images with rigid warp.
               Default value: ´smoothness=1´.

           -transition_plasma:
                               _nb_frames>=2,_scale>=0,_smoothness[%]>=0

               Create plasma transition sequence between consecutive images.
               Default     values:     ´nb_frames=10´,      ´scale=5´      and
       ´smoothness=0.5%´.

           -transition3d:
                               _nb_frames>=2,_nb_xtiles>0,_nb_ytiles>0,_axis_x,_axis_y,_axis_z,_is_antialias

               Create 3d  transition  sequence  between  selected  consecutive
       images.
               ´axis_x´,  ´axis_y´  and  ´axis_z´  can  be set as mathematical
       expressions, depending on ´x´ and ´y´\
                 .
               Default   values:   ´nb_frames=10´,    ´nb_xtiles=nb_ytiles=3´,
       ´axis_x=1´, ´axis_y=1´, ´axis_z=0´ and \
                 ´is_antialias=1´.

        ** Interactive demos:

           -x_blobs:

               Launch the blobs editor.

           -x_fire:

               Launch the fire demo.

           -x_fireworks:

               Launch the fireworks demo.

           -x_fisheye:

               Launch fish-eye demo.

           -x_fourier:

               Launch fourier filtering demo.

           -x_histogram:

               Launch histogram demo.

           -x_hough:

               Launch hough transform demo.

           -x_jawbreaker:
                               0<_width<20,0<_height<20,0<_balls<=8

               Launch the Jawbreaker game.

           -x_life:

               Launch the game of life.

           -x_light:

               Launch the light demo.

           -x_mandelbrot:
                               _julia={ 0 | 1 },_c0r,_c0i

               Launch Mandelbrot/Julia explorer.

           -x_minesweeper:
                               8<=_width=<20,8<=_height<=20

               Launch the Minesweeper game.

           -x_minimal_path:

               Launch the minimal path demo.

           -x_pacman:

               Launch pacman game.

           -x_paint:

               Launch the interactive painter.

           -x_plasma:

               Launch the plasma demo.

           -x_quantize_rgb:
                               _nbcolors>=2

               Launch RGB colors quantization demo.

           -x_reflection3d:

               Launch the 3d reflection demo.

           -x_rubber3d:

               Launch the 3d rubber demo.

           -x_shadebobs:

               Launch the shade bobs demo.

           -x_spline:

               Launch spline curve editor.

           -x_tetris:

               Launch tetris game.

           -x_tictactoe:

               Launch tic-tac-toe game.

           -x_whirl:
                               _opacity>=0

               Launch fractal whirl demo.
               Default values: ´opacity=0.2´.

        ** PINK-library operators:

           -output_pink3d:
                               filename

               Save  selected images as P5-coded PPM files (PINK extension for
       3d volumetric images).

           -pink:

               Pink wrapper name,p1, .. ,pn (requires the PINK library  to  be
       installed).
               (http://pinkhq.com/)
               prepares input, calls external

           -pink_grayskel:
                               _connectivity={ 4 | 8 | 6 | 26 }, _lambda=0

               (http://pinkhq.com/grayskel_8c.php)
               Grayscale  homotopic  skeleton (requires the PINK library to be
       installed).
               Default values: ´connectivity=4´ and ´lambda=0´.

           -pink_heightmaxima:
                               _connectivity={ 4 | 8 | 6 | 26 },_height=1

               (http://pinkhq.com/heightmaxima_8c.php)
               Heightmaxima  filtering  (requires  the  PINK  library  to   be
       installed).
               Default values: ´connectivity=4´ and ´height=1´.

           -pink_heightminima:
                               _connectivity={ 4 | 8 | 6 | 26 },_height=1

               (http://pinkhq.com/heightminima_8c.php)
               Heightminima   filtering  (requires  the  PINK  library  to  be
       installed).
               Default values: ´connectivity=4´ and ´height=1´.

           -pink_htkern:
                               _connectivity={ 4 | 8 | 6 | 26 }, _type={

               (http://pinkhq.com/htkern_8c.php)
               (http://pinkhq.com/htkernu_8c.php)
               Grayscale  ultimate   homotopic   thinning/thickening   without
       condition (requires the PINK library to\
                  be installed).
               Default values: ´connectivity=4´ and ´type=

           -pink_lvkern:
                               _connectivity={ 4 | 8 | 6 | 26 }, _type={

               (http://pinkhq.com/lvkern_8c.php)
               (http://pinkhq.com/lvkernu_8c.php)
               Grayscale   ultimate   leveling   thinning/thickening   without
       condition (requires the PINK library to \
                 be installed).
               Default values: ´connectivity=4´ and ´type=

           -pink_reg_minima:
                               _connectivity={ 4 | 8 | 6 | 26 }

               (http://pinkhq.com/minima_8c.php)
               Regional minima (requires the PINK library to be installed).
               Default values: ´connectivity=4´.

           -pink_skelcurv:
                               _prio={0|1|2|3|4|8|6|26},_connectivity={ 4 |  8
       | 6 | 26 },_inhibit={

               (http://pinkhq.com/skelcurv_8c.php)
               Curvilinear  binary  skeleton  guided by a priority function or
       image (requires the PINK library to\
                  be installed).
               Default values: ´prio=0´, ´connectivity=4´ and ´inhibit=

           -pink_skelend:
                               _connectivity={ 4 | 8 | 6 | 26 },_n=0

               (http://pinkhq.com/skelend_8c.php)
               Homotopic skeleton of a 2d or  3d  binary  image  with  dynamic
       detection of end points (requires the\
                  PINK library to be installed).
               Default values: ´connectivity=4´ and ´n=0´.

           -pink_skeleton:
                               _prio={0|1|2|3|4|8|6|26},_connectivity={  4 | 8
       | 6 | 26 },_inhibit={

               (http://pinkhq.com/skeleton_8c.php)
               Ultimate binary skeleton guided by a priority  image  (requires
       the PINK library to be installed).
               Default values: ´prio=0´, ´connectivity=4´ and ´inhibit=

           -pink_skelpar:
                               _algorithm={0..29},_nsteps=_1,_inhibit=

               (http://pinkhq.com/skelpar_8c.php)
               Parallel  binary  skeleton  (requires  the  PINK  library to be
       installed).
               Default values: ´algorithm=4´, ´nsteps=-1´ and ´inhibit=

           -pink_wshed:
                               _connectivity={ 4 | 8 | 6 | 26 },_inverse={ 0 |
       1 },_height=0

               (http://pinkhq.com/wshedtopo_8c.php)
               Watershed (requires the PINK library to be installed).
               Default values: ´connectivity=4´, ´inverse=0´ and ´height=0´.

        ** Convenience functions:

           -alert:
                               _title,_message,_label_button1,_label_button2,...

               Display an alert box and wait for user´s choice.
               If a single image is in the selection, it is used  as  an  icon
       for the alert box.
               Default  values:  ´title=[G´MIC Alert]´ and ´message=This is an
       alert box.´.

           -arg:
                               n,_arg1,...,_argN

               Return the n-th argument of the specified argument list.
               ´n´ can be an expression.

           -at:
                               _x,_y,_z

               Return a specified vector-valued point (x,y,z) from the  latest
       of the selected images.

           -autocrop_coords:
                               value1,value2,... | auto

               Return  coordinates  (x0,y0,z0,x1,y1,z1)  of  the autocrop that
       could be performed on the latest of \
                 the selected images.
               Default value: ´auto´

           -average_color:

               Return the average color of the latest of the selected images.

           -basename:
                               file_path,_variable_name_for_folder

               Return the basename  of  a  file  path,  and  opt.  its  folder
       location.
               When  specified  ´variable_name_for_folder´  must  starts by an
       underscore
               (global variable accessible from calling function).

           -bin:
                               binary_int1,...

               Print specified binary  integers  into  their  octal,  decimal,
       hexadecimal and string representation\
                 s.

           -bin2dec:
                               binary_int1,...

               Convert   specified   binary   integers   into   their  decimal
       representations.

           -dec:
                               decimal_int1,...

               Print specified decimal  integers  into  their  binary,  octal,
       hexadecimal and string representation\
                 s.

           -dec2str:
                               decimal_int1,...

               Convert    specifial   decimal   integers   into   its   string
       representation.

           -dec2bin:
                               decimal_int1,...

               Convert  specified   decimal   integers   into   their   binary
       representations.

           -dec2hex:
                               decimal_int1,...

               Convert  specified  decimal  integers  into  their  hexadecimal
       representations.

           -dec2oct:
                               decimal_int1,...

               Convert   specified   decimal   integers   into   their   octal
       representations.

           -fact:
                               value

               Return the factorial of the specified value.

           -file_mv:
                               filename_src,filename_dest

               Rename  or  move  a file from a location $1 to another location
       $2.

           -file_rand:

               Return a random filename for storing temporary data.

           -file_rm:
                               filename

               Delete a file.

           -file_slash:

               Return ´/´ or ´´ as a path separator for filenames.

           -filename:
                               filename,_number1,_number2,...,_numberN

               Return a filename numbered with specified indices.

           -fitratio_wh:
                               min_width,min_height,ratio_wh

               Return  a  2d  size  ´width,height´  which   is   bigger   than
       ´min_width,min_height´ and has the specifie\
                 d w/h ratio.

           -fitscreen:
                               width,height,_depth

               Return the ´ideal´ size WxH for a window intended to display an
       image of specified size on scree\
                 n.

           -gcd:
                               a,b

               Return the GCD (greatest common divisor) between a and b.

           -hex:
                               hexadecimal_int1,...

               Print specified hexadecimal integers into their binary,  octal,
       decimal and string representation\
                 s.

           -hex2dec:
                               hexadecimal_int1,...

               Convert  specified  hexadecimal  integers  into  their  decimal
       representations.

           -hex2str:
                               hexadecimal_string

               Convert specified hexadecimal string into a string.

           -img2str:

               Return the content of the latest of the  selected  image  as  a
       special G´MIC input string.

           -img2text:
                               _line_separator

               Return text contained in a multi-line image.
               Default value: ´line_separator= ´.

           -img82hex:

               Convert  selected  8bits-valued  vectors into their hexadecimal
       representations (ascii-encoded).

           -hex2img8:

               Convert selected  hexadecimal  representations  (ascii-encoded)
       into 8bits-valued vectors.

           -is_3d:

               Return  1  if  all  of  the  selected  image  are 3d objects, 0
       otherwise.

           -is_percent:
                               string

               Return 1 if specified string ends with a ´%´, 0 otherwise.

           -is_windows:

               Return 1 if current computer OS is Windows, 0 otherwise.

           -mad:

               Return  the  MAD  (Maximum  Absolute  Deviation)  of  the  last
       selected image.
               The MAD is defined as MAD = med_i|x_i-med_j(x_j)|

           -max_w:

               Return the maximal width between selected images.

           -max_h:

               Return the maximal height between selected images.

           -max_d:

               Return the maximal depth between selected images.

           -max_s:

               Return the maximal spectrum between selected images.

           -max_wh:

               Return the maximal wxh size of selected images.

           -max_whd:

               Return the maximal wxhxd size of selected images.

           -max_whds:

               Return the maximal wxhxdxs size of selected images.

           -med:

               Return the median value of the last selected image.

           -min_w:

               Return the minimal width between selected images.

           -min_h:

               Return the minimal height between selected images.

           -min_d:

               Return the minimal depth between selected images.

           -min_s:

               Return the minimal s size of selected images.

           -min_wh:

               Return the minimal wxh size of selected images.

           -min_whd:

               Return the minimal wxhxd size of selected images.

           -min_whds:

               Return the minimal wxhxdxs size of selected images.

           -oct:
                               octal_int1,...

               Print  specified  octal  integers  into  their binary, decimal,
       hexadecimal and string representation\
                 s.

           -oct2dec:
                               octal_int1,...

               Convert   specified   octal   integers   into   their   decimal
       representations.

           -padint:
                               number,_size>0

               Return  a  integer  with  ´size´ digits (eventually left-padded
       with ´0´).

           -path_tmp:

               Return  a  path  to  store  temporary  files  (whose  value  is
       OS-dependent).

           -path_user:

               Return  a  path to store persistent configuration files for one
       user (whose value is OS-dependent)\
                 .

           -quote:
                               string

               Return a

           -region_feature:
                               region_label,feature,_default_value

               Return feature for a specified region.
               This function requires two  images  [img,region_label]  in  the
       selection.
               Argument  ´feature´ is a string that corresponds to the way the
       feature would
               be asked for the entire image.
               Default value: ´default_value=0´.

           -reset:

               Reset global parameters of the interpreter environment.

           -RGB:

               Return a random int-valued RGB color.

           -RGBA:

               Return a random int-valued RGBA color.

           -str:
                               string

               Print specified string into  its  binary,  octal,  decimal  and
       hexadecimal representations.

           -str2hex:
                               string

               Convert specified string into a sequence of hexadecimal values.

           -stresc:
                               val1,...,valN

               Return escaped string from specified ascii codes.

           -strcat:
                               string1,string2,...

               Return the concatenation of all strings passed as arguments.

           -strcmp:
                               string1,string2

               Return 1 if the two strings are equal, 0 otherwise.

           -strlen:
                               string1

               Return the length of specified string argument.

           -strreplace:
                               string,search,replace

               Search and replace substrings in an input string.

           -struncase:
                               string

               Return a lower-case version of the specified string.

           -strver:

               Return  the current version number of the G´MIC interpreter, as
       a string.

           -tic:

               Initialize tic-toc timer.
               Use it in conjunction with ´-toc´.

           -toc:

               Display elapsed time of the tic-toc timer since the  last  call
       to ´-tic´.
               Use it in conjunction with ´-tic´.

           -variance_noise:

               Return the estimated noise variance of the last selected image.

        ** Others:

           -gpt:
                               _scorefile,_number_of_sessions>=0

               Generate  score  board  for  the  GPT championship (GREYC Poker
       Tour).

        ** Commands shortcuts:

           -h  (*): eq. to ´-help´.
           -m  (*): eq. to ´-command´.
           -d  (+): eq. to ´-display´.
           -d0 : eq. to ´-display0´.
           -d3d  (+): eq. to ´-display3d´.
           -da : eq. to ´-display_array´.
           -dfft : eq. to ´-display_fft´.
           -dg : eq. to ´-display_graph´.
           -dh : eq. to ´-display_histogram´.
           -dp : eq. to ´-display_polar´.
           -drgba : eq. to ´-display_rgba´.
           -dt : eq. to ´-display_tensors´.
           -dw : eq. to ´-display_warp´.
           -e  (*): eq. to ´-echo´.
           -i  (*): eq. to ´-input´.
           -o  (*): eq. to ´-output´.
           -on : eq. to ´-outputn´.
           -op : eq. to ´-outputp´.
           -ow : eq. to ´-outputw´.
           -p  (*): eq. to ´-print´.
           -sh  (*): eq. to ´-shared´.
           -up : eq. to ´-update´.
           -v  (*): eq. to ´-verbose.´.
           -w  (+): eq. to ´-window´.
           -k  (*): eq. to ´-keep´.
           -mv  (*): eq. to ´-move´.
           -nm  (*): eq. to ´-name´.
           -rm  (*): eq. to ´-remove´.
           -rv  (*): eq. to ´-reverse´.
           -+  (+): eq. to ´-add´.
           -<<  (+): eq. to ´-bsl´.
           ->>  (+): eq. to ´-bsr´.
           -/  (+): eq. to ´-div´.
           -==  (+): eq. to ´-eq´.
           ->=  (+): eq. to ´-ge´.
           ->  (+): eq. to ´-gt´.
           -<=  (+): eq. to ´-le´.
           -<  (+): eq. to ´-lt´.
           -//  (+): eq. to ´-mdiv´.
           -%  (+): eq. to ´-mod´.
           -**  (+): eq. to ´-mmul´.
           -*  (+): eq. to ´-mul´.
           -!=  (+): eq. to ´-neq´.
           -^  (+): eq. to ´-pow´.
           --  (+): eq. to ´-sub´.
           -c  (+): eq. to ´-cut´.
           -f  (+): eq. to ´-fill´.
           -n  (+): eq. to ´-normalize´.
           -=  (+): eq. to ´-set´.
           -t2 : eq. to ´-threshold2´.
           -fc : eq. to ´-fill_color´.
           -a  (*): eq. to ´-append´.
           -z  (*): eq. to ´-crop´.
           -r  (*): eq. to ´-resize´.
           -rr2d : eq. to ´-resize_ratio2d´.
           -r2dx : eq. to ´-resize2dx´.
           -r2dy : eq. to ´-resize2dy´.
           -r3dx : eq. to ´-resize3dx´.
           -r3dy : eq. to ´-resize3dy´.
           -r3dz : eq. to ´-resize3dz´.
           -s  (*): eq. to ´-split´.
           -y  (*): eq. to ´-unroll´.
           -b  (+): eq. to ´-blur´.
           -g  (+): eq. to ´-gradient´.
           -j  (+): eq. to ´-image´.
           -t  (+): eq. to ´-text´.
           -+3d  (+): eq. to ´-add3d´.
           -b3d  (+): eq. to ´-background3d´.
           -c3d : eq. to ´-center3d´.
           -col3d  (+): eq. to ´-color3d´.
           -/3d  (+): eq. to ´-div3d´.
           -db3d  (+): eq. to ´-double3d´.
           -f3d  (+): eq. to ´-focale3d´.
           -l3d  (+): eq. to ´-light3d´.
           -m3d  (+): eq. to ´-mode3d´.
           -md3d  (+): eq. to ´-moded3d´.
           -*3d  (+): eq. to ´-mul3d´.
           -n3d : eq. to ´-normalize3d´.
           -o3d  (+): eq. to ´-opacity3d´.
           -p3d  (+): eq. to ´-primitives3d´.
           -rv3d  (+): eq. to ´-reverse3d´.
           -r3d  (+): eq. to ´-rotate3d´.
           -sl3d  (+): eq. to ´-specl3d´.
           -ss3d  (+): eq. to ´-specs3d´.
           -s3d  (+): eq. to ´-split3d´.
           --3d  (+): eq. to ´-sub3d´.
           -t3d  (+): eq. to ´-texturize3d´.
           -endl  (*): eq. to ´-endlocal´.
           -x  (*): eq. to ´-exec´.
           -l  (*): eq. to ´-local´.
           -q  (*): eq. to ´-quit´.
           -u  (*): eq. to ´-status´.
           -frame : eq. to ´-frame_xy´.

          [ Total number of commands: 802 ]

        13. Examples of use
            ---------------

        ´gmic´ is a generic image processing tool which can be used in a  wide
       variety of situations.
        The few examples below illustrate possible uses of this tool:

         - View a list of images:
            gmic file1.bmp file2.jpeg

         - Convert an image file:
            gmic input.bmp -o output.jpg

         - Create a volumetric image from a movie sequence:
            gmic input.mpg -a z -o output.hdr

         - Compute image gradient norm:
            gmic input.bmp -gradient_norm

         - Denoise a color image:
            gmic image.jpg -denoise 30,10 -o denoised.jpg

         - Compose two images using overlay layer blending:
            gmic image1.jpg image2.jpg -blend overlay -o blended.jpg

         - Evaluate a mathematical expression:
            gmic -e

         - Plot a 2d function:
            gmic 1000,1,1,2 -f

         - Plot a 3d elevated function in random colors:
            gmic 128,128,1,3,
             -elevation3d[-1]

         - Plot the isosurface of a 3d volume:
            gmic -m3d 5 -md3d 5 -db3d 0 -isosurface3d

         - Render a G´MIC 3d logo:
            gmic  1  -text  G\´MIC,0,0,57,1,1,1,1  -expand_xy  10,0 -blur 2 -n
       0,100 --plasma 0.4 -+ \
             -blur 1 -elevation3d -0.1 -md3d 4

         - Generate a 3d ring of torii:
            gmic -repeat 20 -torus3d 15,2 -col3d[-1]
             -*3d[-1] 0.5,1 -if
             -r3d 0,0,1,18 -done -md3d 3 -m3d 5 -db3d 0

         - Create a vase from a 3d isosurface:
            gmic -md3d 4 -isosurface3d
             --3d[-1] 0,5 -plane3d 15,15 -r3d[-1] 1,0,0,90  -c3d[-1]  -+3d[-1]
       0,3.2 \
             -col3d[-1]  180,150,255 -col3d[-2] 128,255,0 -col3d[-3] 255,128,0
       -+3d

         - Display filtered webcam stream:
            gmic -apply_camera \

         - Launch a set of G´MIC interactive demos:
            gmic  -x_fisheye  -x_fire  G\´MIC   -x_tictactoe   -rm   -x_spline
       -x_mandelbrot 0 -x_light \
                 -x_whirl , -x_life -x_jawbreaker , -x_blobs -x_tetris

        **  G´MIC  comes  with  ABSOLUTELY  NO  WARRANTY;  for  details  visit
       http://gmic.sourceforge.net **

                         Wed Sep 18 12:28:18 CEST 2013                G'MIC(1)



  All copyrights belong to their respective owners. Other content (c) 2014-2018, GNU.WIKI. Please report site errors to webmaster@gnu.wiki.
Page load time: 0.119 seconds. Last modified: November 04 2018 12:49:43.