Including a C-style integer format string in the output filename willautomagically enable +adjoin and are used to specifywhere the -scene number is placed in the filenames. Thesestrings, such as '%d' or '%03d', are familiar to thosewho have used the standard printf()' C-library function. As anexample, the command
The operator is not typically used for real-life images, image scans, orJPEG format images, as a single 'out-rider' pixel can set a bad min/max valuesfor the -level operation. On the other hand it is theright operator to use for color stretching gradient images being used togenerate Color lookup tables, distortion maps, or other 'mathematically'defined images.
The operator is very similar to the -normalize, -contrast-stretch, and -linear-stretch operators, but without 'histogram binning' or 'clipping'problems that these operators may have. That is -auto-level is the perfect or ideal version these operators.
This EXIF profile setting is usually set using a gravity sensor in digitalcamera, however photos taken directly downward or upward may not have anappropriate value. Also images that have been orientation 'corrected' withoutreseting this setting, may be 'corrected' again resulting in a incorrectresult. If the EXIF profile was previously stripped, the -auto-orient operator will do nothing.
For example for operators such as -auto-level and-auto-gamma the color channels are modifiedtogether in exactly the same way so that colors will remain in-sync. Withoutit being set, then each channel is modified separately andindependently, which may produce color distortion.
Options that are affected by the -channel settinginclude the following.-auto-gamma,-auto-level,-black-threshold,-blur,-clamp,-clut,-combine,-composite (Mathematical compose methods only),-convolve,-contrast-stretch,-evaluate,-function,-fx,-gaussian-blur,-hald-clut,-motion-blur,-morphology,-negate,-normalize,-ordered-dither,-rotational-blur,-random-threshold,-range-threshold,-separate,-threshold, and-white-threshold.
The lookup is further controlled by the -interpolate setting, which is especially handy for anLUT which is not the full length needed by the ImageMagick installed Quality(Q) level. Good settings for this are 'bilinear' and'catrom'. Catom can return a useful second-order continuity.
Use the -quality option to set the compression levelto be used by JPEG, PNG, MIFF, and MPEG encoders.Use the -sampling-factor option to set thesampling factor to be used by JPEG, MPEG, and YUV encoders for down-samplingthe chroma channels.
Dithering places two or more colors in neighboring pixels so that to theeye a closer approximation of the images original color is reproduced. Thisreduces the number of colors needed to reproduce the image but at the cost ofa lower level pattern of colors. Error diffusion dithers can use any set ofcolors (generated or user defined) to an image.
The color reduction operators -colors, -monochrome, -remap, and -posterize, apply dithering to images using the reducedcolor set they created. These operators are also used as part of automaticcolor reduction when saving images to formats with limited color support, suchas GIF:, XBM:, and others, so dithering may also be usedin these cases.
The results of the Add, Subtract andMultiply methods can also be achieved using either the -level or the +level operator, withappropriate argument, to linearly modify the overall range of color values.Please note, however, that -level treats transparency as'matte' values (0 = opaque), while -evaluate works with'alpha' values.
A single image name is provided as output for this option. However, theoutput result will have two components. It is either a two-frame image or twoseparate images, depending upon whether the image format specified supportsmulti-frame images. The reason that we get a dual output result is because thefrequency domain represents an image using complex numbers, which cannot bevisualized directly. Therefore, the complex values are automagically separatedinto a two-component image representation. The first component is themagnitude of the complex number and the second is the phase of the complexnumber. See for example, Complex Numbers.
The input image can be any size, but if not square and even-dimensioned, itis padded automagically to the larger of the width or height of the inputimage and to an even number of pixels. The padding will occur at the bottomand/or right sides of the input image. The resulting output magnitude andphase images is square at this size. The kind of padding relies on the -virtual-pixel setting.
where either -contrast-stretch 0 or -auto-level is used to scale the image to full dynamicrange, first. The argument to the -evaluate logtypically is specified between 100 and 10,000, depending upon the amount ofdetail that one wants to bring out in the spectrum. Larger values produce morevisible detail. Too much detail, however, may hide the important features.
The Polynomial function can be used in place of Set(the constant polynomial) and Add, Divide,Multiply, and Subtract (some linearpolynomials) of the -evaluate operator. The -level operator also affects channels linearly. Somecorrespondences follow.
A number of algorithms search for a target color. By default the color mustbe exact. Use this option to match colors that are close to the target colorin RGB space. For example, if you want to automagically trim the edges of animage with -trim but the image was scanned and the targetbackground color may differ by a small amount. This option can account forthese differences.
Use +gamma value to set theimage gamma level without actually adjusting the image pixels. This optionis useful if the image is of a known gamma but not set as an image attribute(e.g. PNG images). Write the "file gamma" which is the reciprocal of thedisplay gamma; e.g., if your image is sRGB and you want to write a PNG gAMAchunk, use
In normal usage (-level) the image values are stretched so thatthe given 'black_point' value in the original image is set to zero(or black), while the given 'white_point' value is set to QuantumRange (or white). This provides you with directcontrast adjustments to the image. The 'gamma' of the resultingimage will then be adjusted.
From ImageMagick v6.4.1-9 using the plus form of the operator(+level) or adding the special '!' flag anywhere in the argumentlist, will cause the operator to do the reverse of the level adjustment. Thatis a zero, or QuantumRange value (black, and white, resp.)in the original image, is adjusted to the given level values, allowing you tode-contrast, or compress the channel values within the image. The'gamma' is adjusted before the level adjustment to de-contrast theimage is made.
This effectively means the colors provided to -level-colorsis mapped to become 'black' and 'white' respectively, with all the othercolors linearly adjusted (or clipped) to match that change. Each channel isadjusted separately using the channel values of the colors specified.
On the other hand the plus form of the operator (+level-colors)will map the image color 'black' and 'white' to the given colorsrespectively, resulting in a gradient (de-contrasting) tint of the image tothose colors. This can also be used to convert a plain grayscale image into aone using the gradient of colors specified.
Requests for pixel storage to keep intermediate images are satisfied by oneof three resource categories: in-memory pool, memory-mapped files pool, anddisk pool (in that order) depending on the -limit settingsand whether the system honors a resource request. If the total size ofallocated pixel storage in the given pool reaches the corresponding limit, therequest is passed to the next pool. Additionally, requests that exceed thearea limit automagically are allocated on disk.
To illustrate how ImageMagick utilizes resource limits, consider a typicalimage resource request. First, ImageMagick tries to allocate the pixels inmemory. The request might be denied if the resource request exceeds thememory limit or if the system does not honor the request. Ifa memory request is not honored, the pixels are allocated to disk and the fileis memory-mapped. However, if the allocation request exceeds themap limit, the resource allocation goes to disk. In all cases, ifthe resource request exceeds the area limit, the pixels areautomagically cached to disk. If the disk has a hard limit, the programfails.
Now whenever a large image is processed, the pixels are automagicallycached to disk instead of memory. This of course implies that large imagestypically process very slowly, simply because pixel processing in memory canbe an order of magnitude faster than on disk. Because your web site usersmight inadvertently upload a huge image to process, you should set a disklimit as well:
This is very similar to -contrast-stretch,and uses a 'histogram bin' to determine the range of color values that needs tobe stretched. However it then stretches those colors using the -level operator.
The checks pattern produces a 3 level checkerboard ditherpattern. That is a grayscale will become a pattern of solid black, solidwhite, and mid-tone colors into a checkerboard pattern of black and white.
Note that at this time the same threshold dithering map is used for allcolor channels, no attempt is made to offset or rotate the map for differentchannels is made, to create an offset printing effect. Also as the maps aresimple threshold levels, the halftone and circle maps will create incompletecircles along the edges of a colored area. Also all the effects are purelyon/off boolean effects, without anti-aliasing to make the circles smoothlooking. Large dots can be made to look better with a small amount of blurringafter being created.
For the MNG and PNG image formats, the quality value sets the zlibcompression level (quality / 10) and filter-type (quality % 10). The defaultPNG "quality" is 75, which means compression level 7 with adaptive PNGfiltering, unless the image has a color map, in which case it meanscompression level 7 with no PNG filtering. 041b061a72