首页 工具集 命令行 开发接口 图像格式 下载

ImageMagick 命令行选项

以下是ImageMagick 命令行工具可识别的命令行选项的列表。如果需要特定选项的描述,请单击上方导航栏中的选项名称,然后将其转到该名称。除非另有说明,否则每个选项均由命令识别:convert和mogrify。

 -adaptive-blur  -adaptive-resize  -adaptive-sharpen  -adjoin  -affine  -alpha  -annotate  -antialias  -append  -attenuate  -authenticate  -auto-gamma  -auto-level  -auto-orient  -auto-threshold  -backdrop  -background  -bench  -bias  -black-point-compensation  -black-threshold  -blend  -blue-primary  -blue-shift  -blur  -border  -bordercolor  -borderwidth  -brightness-contrast  -cache  -canny  -caption  -cdl  -channel  -charcoal  -channel-fx  -chop  -clahe  -clamp  -clip  -clip-mask  -clip-path  -clone  -clut  -coalesce  -colorize  -colormap  -color-matrix  -colors  -colorspace  -combine  -comment  -compare  -complex  -compose  -composite  -compress  -connected-components  -contrast  -contrast-stretch  -convolve  -copy  -crop  -cycle  -debug  -decipher  -deconstruct  -define  -delay  -delete  -density  -depth  -descend  -deskew  -despeckle  -direction  -displace  -display  -dispose  -dissimilarity-threshold  -dissolve  -distort  -distribute-cache  -dither  -draw  -duplicate  -edge  -emboss  -encipher  -encoding  -endian  -enhance  -equalize  -evaluate  -evaluate-sequence  -extent  -extract  -family  -features  -fft  -fill  -filter  -flatten  -flip  -floodfill  -flop  -font  -foreground  -format  -format[identify]  -frame  -frame[import]  -function  -fuzz  -fx  -gamma  -gaussian-blur  -geometry  -gravity  -grayscale  -green-primary  -hald-clut  -help  -highlight-color  -hough-lines  -iconGeometry  -iconic  -identify  -ift  -immutable  -implode  -insert  -intensity  -intent  -interlace  -interpolate  -interline-spacing  -interword-spacing  -kerning  -kuwahara  -label  -lat  -layers  -level  -level-colors  -limit  -linear-stretch  -linewidth  -liquid-rescale  -list  -log  -loop  -lowlight-color  -magnify  -map  -map[stream]  -mattecolor  -median  -mean-shift  -metric  -mode  -modulate  -moments  -monitor  -monochrome  -morph  -morphology  -mosaic  -motion-blur  -name  -negate  -noise  -normalize  -opaque  -ordered-dither  -orient  -page  -paint  -path  -pause[animate]  -pause[import]  -perceptible  -ping  -pointsize  -polaroid  -poly  -posterize  -precision  -preview  -print  -process  -profile  -quality  -quantize  -quiet  -radial-blur  -raise  -random-threshold  -range-threshold  -read-mask  -red-primary  -regard-warnings  -region  -remap  -remote  -render  -repage  -resample  -resize  -respect-parentheses  -reverse  -roll  -rotate  -sample  -sampling-factor  -scale  -scene  -screen  -seed  -segment  -selective-blur  -separate  -sepia-tone  -set  -shade  -shadow  -shared-memory  -sharpen  -shave  -shear  -sigmoidal-contrast  -silent  -similarity-threshold  -size  -sketch  -smush  -snaps  -solarize  -sparse-color  -splice  -spread  -statistic  -stegano  -stereo  -storage-type  -stretch  -strip  -stroke  -strokewidth  -style  -subimage-search  -swap  -swirl  -synchronize  -taint  -text-font  -texture  -threshold  -thumbnail  -tile  -tile-offset  -tint  -title  -transform  -transparent  -transparent-color  -transpose  -transverse  -treedepth  -trim  -type  -undercolor  -unique-colors  -units  -unsharp  -update  -verbose  -version  -view  -vignette  -virtual-pixel  -visual  -watermark  -wave  -wavelet-denoise  -weight  -white-point  -white-threshold  -window  -window-group  -write  -write-mask

-adaptive-blur radius[xsigma]

自适应模糊像素,减少边缘附近的影响。

使用给定半径和标准偏差(sigma)的高斯算子。如果未提供sigma,则默认为1。

-adaptive-resize geometry

使用依赖于数据的三角测量来调整图像大小。

有关-geometry参数的完整详细信息,请参见-geometry。该-adaptive-resize选项默认为数据依赖的三角测量。 使用-filter选择其他重采样算法。如果几何字符串中存在偏移,则将忽略这些偏移,并且-gravity选项无效。

-adaptive-sharpen radius[xsigma]

自适应地锐化像素,增加边缘附近的效果。

使用给定半径和标准偏差(sigma)的高斯算子。如果未提供sigma,则默认为1。

-adjoin

将图像合并到一个多图像文件中。

默认情况下启用此选项。尝试将图像序列的所有图像保存到给定的输出文件中。但是,某些格式(例如JPEG和PNG)不支持每个文件一个以上的图像,在这种情况下,ImageMagick被迫将每个图像写为一个单独的文件。这样,如果需要写入多个图像,则通过在后缀之前添加-scene编号来修改给定的文件名,以便为每个图像指定不同的名称。

无论文件格式是否允许每个文件多个图像(例如GIF,MIFF和TIFF),请使用-adjoin强制将每个图像写入单独的文件。

在输出文件名中包含C样式的整数格式字符串将自动启用-adjoin -scene,并用于指定-scene数字在文件名中的位置。这些字符串,例如' %d'或' %03d',对于使用标准printf()'C库函数的用户来说是熟悉的。例如,命令

convert logo: rose: -morph 15 my%02dmorph.jpg

将创建一个由17张图像组成的序列(给定的两个图像以及由-morph创建的15张图像 ),分别为:my00morph.jpg,my01morph.jpg,my02morph.jpg,...,my16morph.jpg。

总而言之,ImageMagick尝试将所有图像写入一个文件,但是如果存在以下任何情况,则将保存到多个文件...

  • 输出图像的文件格式不允许多图像文件,
  • 给出了-adjoin选项,或者
  • 输出文件名中包含一个printf()整数格式字符串(例如:“%d”)。

-affine sx,rx,ry,sy[,tx,ty]

设置图形转换矩阵以组合旋转和缩放。

该选项设置一个转换矩阵,供后续的-draw-transform选项使用。

矩阵条目以逗号分隔的数字值输入,要么用引号引起来,要么没有空格。

在内部,转换矩阵具有3x3的元素,但是由于它们是恒定的,因此从输入中省略了其中的三个。使用以下矩阵方程计算原始图像中位置(xy)上像素的新(转换)坐标(x'y')。

仿射变换

所得图像的大小是包含转换后的源图像的最小矩形的大小。参数 txty 随后移动图像像素,以便将移出图像区域的图像像素切除。

变换矩阵符合左手像素坐标系统:正和负的xy方向分别是向右和向下。正旋转为顺时针方向。

如果省略平移系数 txty 则默认为0,0。因此,四个参数足以进行旋转和缩放而无需平移。

通过以下步骤分别在 xy 方向上按因子 sxsy 进行缩放。

有关更多信息,请参见-transform-distort方法'Affineprojection

-affine sx,0,0,sy

位移(t xt y)的平移是这样完成的:

-affine 1,0,0,1,tx,ty

c = cos(a),s = sin(a),并使用以下指令,绕原点(左上角)顺时针旋转角度 a

-affine c,s,-s,c

-affine 变换序列的累积效果可以通过使用等于各个变换矩阵乘积的矩阵的单个-affine运算来实现。

试图检测接近奇异的变换矩阵。如果矩阵行列式的绝对值足够小,则将其拒绝。

-alpha type

控制图像的Alpha /遮罩通道。

用于在图像上设置标志,指​​示是否使用现有的Alpha通道数据,创建Alpha通道或对Alpha通道执行其他操作。从下面的列表中选择参数类型

Activate
启用图像的透明度通道。请注意,通常应使用Set代替此设置,除非您特别需要保留现有(但特别是已关闭)的透明通道。
Associate
将Alpha通道与图像相关联。
Deactivate
禁用图像的透明通道。不删除或更改现有数据,仅关闭对这些数据的使用。
Disassociate
取消Alpha通道与图像的关联。
Set
激活Alpha /遮罩通道。如果先前已将其关闭,则它还会将通道重置为不透明。如果图像已经打开了Alpha通道,则将无效。
Opaque
启用Alpha /遮罩通道并强制其完全不透明。
Transparent
激活Alpha /遮罩通道并强制其完全透明。这样可以有效地创建与原始大小相同的完全透明的图像,并且其所有原始RGB数据仍保持完整,但完全透明。
Extract
将Alpha通道值复制到所有颜色通道中,并“关闭”图像的透明度,以生成图像形状的灰度蒙版。阿尔法通道数据保持不变,只是被禁用。这是“复制”的逆过程。
Copy
将“alpha /遮罩”通道“打开”,然后将图像的灰度强度复制到alpha通道中,将灰度蒙版转换为准备好进行适当着色的透明形状的蒙版。颜色通道未修改。
Shape
按照“复制”,还使用当前背景色对生成的形状蒙版进行着色。即用适当的alpha形状替换了RGB颜色通道。
Remove
在背景颜色上合成图像。
Background
将任何完全透明的像素设置为背景色,同时使其保持完全透明。由于透明像素的RGB值更均匀,因此可以使某些图像文件格式(例如PNG)更小,从而可以更好地压缩。

请注意,虽然过时的+matte操作与“-alpha Off” 相同,但>-matte操作与“-alphaSet” 相同,而不是“-alpha On”。

-annotate degrees text
-annotate XdegreesxYdegrees text
-annotate XdegreesxYdegrees {+-}tx{+-}ty text
-annotate {+-}tx{+-}ty text

用文字注释图像

这是用文本注释图像的方便。要更精确地控制文本注释,请使用-draw

XdegreesYdegrees 控制施加到文本的剪,而 txty 是偏移,让相对于文本的任何的位置-gravity设置,缺省值为所述图像的左上角。

使用-annotate degrees-annotate degrees x degrees 可产生文本的无剪切旋转。旋转方向为正,如果degrees为正,则表示顺时针旋转。(一旦意识到通常将正y方向视为图像的向下方向,则这符合通常的数学约定。)

使用以下矩阵方程式计算图像中位置(x, y)上像素的新(转换)坐标(x', y')。

注释转换

如果 txty 被省略,则默认为0。这使文本的左下角成为图像,这可能是不期望的左上角。在这种情况下,添加-gravity选项-gravity可得到不错的结果。

文本是任何UTF-8编码的字符序列。如果文本 的格式为“@mytext.txt”,则从文件中读取文本 mytext.txt。文件中的文字是按字面意义获取的;无法识别嵌入的格式字符。

-antialias

绘制字体和线条时启用/禁用抗锯齿像素的呈现。

默认情况下,绘制对象时(例如文本,线条,多边形等)会消除锯齿。使用-antialias禁用添加抗锯齿边缘像素。然后,这会将添加到图像的颜色数量减少为仅直接绘制的颜色。即,绘制此类对象时不会添加任何混合颜色。

-append

垂直或水平合并当前图像。

通过从上到下依次加入所有当前图像,此选项可创建一个更长的图像。使用-append可以从左到右堆叠图像。

如果它们的宽度不同,则使用当前背景颜色设置填充较窄的图像,并且可以通过当前-gravity设置控制它们之间的相对位置。

-attenuate value

向图像添加噪点时减少(或增强)。

如果未设置,则该值等于1.0或最大噪声加法

-authenticate password

用密码解密PDF。

使用此选项可提供用于解密使用Microsoft Crypto API(MSC API)加密的PDF 的密码。不支持使用MSC API进行加密。

有关其他加密方法,请参见-encipher-decipher

-auto-gamma

自动调整图像的灰度等级。

这将计算图像的平均值,然后应用计算出的 -gamma调整,以便图像中的平均颜色将获得50%的值。

这意味着任何纯色“灰色”图像都会变为50%灰色。

这对于具有很少或没有极端暗和亮区域的现实图像效果很好,但是对于具有大量明亮天空或暗影的图像往往会失败。它也不适用于图表或卡通图像。

它使用-channel设置(包括用于通道同步的' sync '标志)来确定使用和修改的颜色值。由于默认的-channel设置为' RGB,sync ',因此将使用相同的gamma值一起修改通道,以保留颜色。

-auto-level

自动调整图像的色彩等级。

这是一个“完美的”图像归一化运算符。它在图像中找到确切的最小和最大颜色值,然后应用-level运算符将这些值拉伸到整个值范围。

该运算符通常不用于现实图像,图像扫描或JPEG格式的图像,因为单个“边缘”像素可能会为-level操作设置错误的最小/最大值。另一方面,使用颜色拉伸渐变图像来生成颜色查找表,失真图或其他“数学上”定义的图像是正确的运算符。

运营商是非常相似的-normalize-contrast拉伸,以及-linear-stretch运营商,但没有“直方图分级”或“剪切”的问题,这些运营商可能有。也就是说-auto-level是这些运算符的完美或理想版本。

它使用-channel设置(包括用于通道同步的特殊“sync ”标志)来确定使用和修改了哪些颜色值。由于默认的-channel设置为' RGB,sync ',因此' sync '确保通过相同的Gamma值一起修改颜色通道,保留颜色,并忽略透明度。

-auto-orient

调整图像,使其方向适合观看(即左上角方向)。

该操作符读取并重置EXIF图像配置文件设置“方向”,然后对图像执行适当的90度旋转以对图像进行方向调整,以便正确观看。

通常使用数码相机中的重力传感器来设置此EXIF配置文件设置,但是直接向下或向上拍摄的照片可能没有合适的值。同样,在未重置此设置的情况下经过“纠正”方向的图像可能会再次被“纠正”,从而导致结果不正确。如果先前删除了EXIF配置文件,则-auto-orient运算符将不执行任何操作。

-auto-threshold method

自动执行图像阈值处理。

这是有效的方法:

Undefined
0:未指定方法(等效于' OTSU')。
Kapur
最大熵阈值。
OTSU
基于群集的图像阈值。
Triangle
几何阈值法。

计算出的阈值作为auto-threshold:threshold图像属性返回。

-average

平均一组图像。

如果图像尺寸不同,将导致错误。

-backdrop

以背景为中心显示图像。

该背景幕覆盖了整个工作站屏幕,对于在查看图像时隐藏其他X窗口活动非常有用。将背景色指定为背景色。使用-fill选项下描述的格式指定颜色。

-background color

设置背景色。

使用-fill选项下描述的格式指定颜色。默认背景颜色(如果未指定或在图像中找不到)为白色。

-bench iterations

衡量效果。

对给定的迭代次数重复整个命令,并报告用户时间和经过时间。例如,考虑以下命令及其输出。使用-duration修改基准以运行基准固定的秒数,并使用-concurrent修改以并行运行基准(需要OpenMP功能)。

-> convert logo: -resize 200% -bench 5 logo.png
Performance[1]: 5i 1.344ips 1.000e 3.710u 0:03.720
Performance[2]: 5i 1.634ips 0.549e 3.890u 0:03.060
Performance[3]: 5i 2.174ips 0.618e 3.190u 0:02.300
Performance[4]: 5i 1.678ips 0.555e 3.810u 0:02.980
Performance[4]: 5i 0.875657ips 6.880u 0:05.710

在此示例中,使用3个线程和用户分配的时间3.190秒,以每秒2.174次迭代完成了5次迭代,总经过时间为2.300秒。

-bias value{%}

卷积图像时增加偏见。

此选项可移动-convolved的输出,-convolved使正和负结果相对于指定的偏差值。

当处理包含负值和正值的卷积时,这对于ImageMagick的非HDRI编译非常重要。对于卷积涉及高通滤波器或边缘检测的情况尤其如此。如果没有输出偏置,则负值将被裁剪为零。

当将ImageMagick与HDRI编译时设置一起使用时,不需要-bias,因为ImageMagick能够存储/处理任何负结果,而不会剪切到颜色值范围(0..QuantumRange)。

请参阅“高动态范围图像 ”页面上有关ImageMagick的HDRI实现的讨论。有关HDRI的更多信息,请转到ImageMagick 用法页面或此 Wikipedia 条目。

-black-point-compensation

使用黑点补偿。

-black-threshold value{%}

强制将阈值以下的所有像素涂成黑色,同时使阈值或阈值以上的所有像素保持不变。

阈值可以被给定为百分比或内的绝对整数值[0,QuantumRange ]对应于期望的声道值。见门限为上阈值和结果值的更多细节。

-blend geometry

按给定的绝对值或百分比将图像混合到另一个图像中。

Blend将根据给定的百分比和每个像素的透明度将图像平均在一起(“加”)。如果仅给出一个百分比值,它将设置合成图像或“源”图像的权重,而背景图像的权重则恰好相反。那是 -blend 30%将“源”图像的30%与“目标”图像的70%合并。因此,它等效于-blend 30x70%

-blue-primary x,y

设置蓝色色度基点。

-blue-shift factor

在夜间在月光下模拟场景。从1.5开始

-blur radius
-blur radiusxsigma

减少图像噪点并降低细节水平。

使用给定的Sigma值对图像进行高斯或正态分布卷积。公式为:

高斯分布

Sigma值是重要的参数,并且确定模糊处理将发生的实际量。

Radius仅用于确定将保持所计算出的高斯分布的阵列的大小。它应该是一个整数。如果未给出或设置为零,则IM将计算可能的最大半径,这将为高斯分布提供有意义的结果。

Radius越大,操作速度越慢。但是,Radius太小,可能会导致严重的混叠效果。作为准则,Radius 应至少为Sigma值的两倍,但三倍会产生更准确的结果。

该选项与-gaussian-blur的不同之处仅在于利用了分布的可分离性。在这里,我们在水平方向上应用一维高斯矩阵,然后在垂直方向上重复该过程。

-virtual-pixel设定将确定它们是图像之外的像素如何正确模糊成最终结果。

-border geometry

用彩色边框包围图像。

使用geometry参数的size部分设置宽度和高度。有关geometry参数的完整详细信息,请参见Image Geometry。偏移量将被忽略。

从IM 6.7.8-8开始,geometry参数的行为如下:

value
值被同时添加到左/右和上/下
value-xx
值-x仅添加到左/右和上/下不变
xvalue-y
值y仅添加到顶部/底部,并且左侧/右侧未更改
value-xxvalue-y
将value-x添加到左侧/右侧,将value-y添加到顶部/底部
value-xx0
值-x仅添加到左/右和上/下不变
0xvalue-y
值y仅添加到顶部/底部,并且左侧/右侧未更改
value%
宽度的%值添加到左侧/右侧,高度的%值添加到顶部/底部
value-xx%
值-x宽度的%添加到左侧/右侧和顶部/底部
xvalue-y%
值y高度的%添加到顶部/底部和左侧/右侧
value-x%xvalue-y%
值x宽度的%添加到左侧/右侧,值y高度的%添加到顶部/底部
value-x%x0%
值x宽度的%添加到左侧/右侧,顶部/底部不变
0%xvalue-y%
值y高度的%添加到顶部/底部,并且左侧/右侧未更改

通过在-bordercolor设置之前设置边框颜色。

所述-border操作是由电流的影响-compose设置并假定这是使用默认的“Over”组合物的方法。在将原始图像叠加到该网络图像的中心之前,它会通过当前-bordercolor生成适当大小的颜色的图像。这意味着使用默认的compose方法' Over',任何透明部分都可以被当前的-bordercolor设置替换。

另请参见-frame选项,该选项具有更多功能。

-bordercolor color

设置边框颜色。

使用-fill选项下描述的格式指定颜色。

默认的边框颜色#DFDFDF这个灯罩的灰色

-borderwidth geometry

设置边框宽度。

-brightness-contrast brightness
-brightness-contrast brightness{xcontrast}{%}

调整图像的亮度和/或对比度。

亮度和对比度值将更改应用于输入图像。它们不是绝对设置。亮度或对比度值为零表示没有变化。每个值的范围是-100到+100。正值增加亮度或对比度,负值减少亮度或对比度。要仅控制对比度,请将亮度设置为= 0。要仅控制亮度,请将对比度设为0或将其关闭。

您也可以使用-channel控制要应用亮度和/或对比度更改的通道。默认是对所有通道应用相同的转换。

亮度和对比度自变量被转换为线性变换的偏移量和斜率,并使用-函数多项式“slope,offset”进行应用

斜率从对比度= -100时的0到对比度= + 100时的几乎垂直变化。对于亮度= 0和对比度= -100,结果完全是灰色。对于亮度= 0和对比度= + 100,结果将接近但不完全达到中灰的阈值;那就是线性变换是一条中间灰色的非常陡峭的垂直线。

使用此功能无法实现负斜率,即图像负像。所有可实现的斜率为零或正。

偏移量从亮度= -100时的-0.5到亮度= 0时的0到亮度= + 100时的+0.5不等。因此,当对比度= 0且亮度= 100时,结果是完全白色的。类似地,当对比度= 0且亮度= -100时,结果为全黑。

由于参数的值范围是-100到+100,因此添加'%'符号与将其保留不变。

-cache threshold

(此选项已由-limit选项代替)。

-canny radius
-canny radiusxsigma{+lower-percent}{+upper-percent}

Canny边缘检测器使用多阶段算法来检测图像中的宽范围边缘。

阈值的范围为0到100%(例如-canny 0x1 + 10%+ 30%),其中{ + lower-percent } <{ + upper-percent }。如果{ + upper-percent }增加但{ + lower-percent }保持不变,则将检测到较小的边缘分量,但它们的长度将相同。如果增加{ + lower-percent }但相同的{ + upper-percent },则将检测到相同数量的边缘分量,但长度会更短。显示默认阈值。的半径 X 西格玛控制施加到输入图像的高斯模糊来减少噪声,平滑的边缘。

-caption string

为图像分配标题。

此选项设置在给出此选项后读入的图像的标题元数据。要修改内存中已有图像的标题,请使用“-set caption”。

标题可以包含格式和打印图像属性中列出的特殊格式字符。当标题最终分配给各个图像时,将扩展这些属性。

如果string的第一个字符是@,则从该字符串中其余字符标题的文件中读取图像标题。从文件读入的注释是文字的;无法识别嵌入的格式字符。

字幕元数据在图像本身上不可见。为此,请使用 -annotate-draw选项。

例如,

-caption "%m:%f %wx%h" bird.miff

产生图片标题MIFF:bird.miff 512x480(假设图片bird.miff的宽度为512,高度为480。

-cdl filename

颜色与颜色决定列表正确。

这是一个颜色校正集合示例:

<?xml version="1.0" encoding="UTF-8"?>
<ColorCorrectionCollection xmlns="urn:ASC:CDL:v1.2">
<ColorCorrection id="cc06668">
<SOPNode>
<Slope> 0.9 1.2 0.5 </Slope>
<Offset> 0.4 -0.5 0.6 </Offset>
<Power> 1.0 0.8 1.5 </Power>
</SOPNode>
<SATNode>
<Saturation> 0.85 </Saturation>
</SATNode>
</ColorCorrection>
</ColorCorrectionCollection>

-channel type

指定那些后继运算符受限的图像色彩通道。

选择:Red, Green, Blue, Alpha, Gray, Cyan, Magenta, Yellow, Black, Opacity, Index, RGB, RGBA, CMYK, CMYKA.

上面的通道也可以指定为以逗号分隔的列表,也可以缩写为字母 'R', 'G', 'B', 'A', 'O', 'C', 'M', 'Y', 'K' 的串联。

数字0到31也可用于指定频道,其中0到5是:
'0'等于RedCyan
'1'等于GreenMagenta
'2'等于BlueYellow
'3'等于Black
'4'等于AlphaOpacity
'5'等于Index

例如,要仅选择RedBlue频道,可以使用以下任意一种方式:

-channel Red,Blue
-channel R,B
-channel RB
-channel 0,2

可以使用特殊通道类型指定图像中存在的所有通道All。并非所有操作符都具有“通道功能”,但是通常任何通常是“灰度”图像操作符的操作符都可以理解此设置。请参阅各个操作符文档。

除了正常的频道选择外,还可以指定一个额外的标志“Sync”。默认情况下,此功能是打开的;如果设置,则意味着理解此标志的操作符应执行:通道的跨通道同步。如果未指定,则大多数灰度级运算符将彼此完全独立地将其图像处理操作应用于每个单独的通道(由-channel设置的其余部分指定)。

例如,对于-auto-level-auto-gamma之类的运算符,auto-level将以完全相同的方式一起修改颜色通道,以使颜色保持同步。如果不设置它,则每个通道将被单独且独立地修改,这可能会产生颜色失真。

所述-morphologyConvolve”方法和-compose数学方法,也明白“Sync”标志根据α信道(如果存在的话)来修改的像素颜色的行为。就是说,它将以完全透明的颜色不应有助于最终结果的理解来修改图像处理。

基本上,默认情况下,操作符默认使用同步方式处理颜色通道,并将透明度视为特殊值,除非修改-channel设置以消除' Sync'标志的影响。每个操作符如何执行此操作取决于该操作符当前的实现。并不是所有的操作符现在都了解此标志,但是这种情况正在改变。

要打印通道类型的完整列表,请使用-list channel

默认情况下,ImageMagick将-channel设置为值' RGBK,sync',该值指定操作符对除透明通道之外的所有颜色通道进行操作,并且所有颜色通道都应以完全相同的方式进行修改,并了解透明性(取决于在执行的操作上)。+channel会将值重置为该默认值。

-channel设置影响的选项包括以下内容。 -auto-gamma, -auto-level, -black-threshold, -blur, -clamp, -clut, -combine, -composite(数学撰写方法只), -convolve, -contrast-stretch, -evaluate, -function, -fx, -gaussian-blur, -hald-clut, -motion-blur, -morphology, -negate, -normalize, -ordered-dither, -radial-blur, -random-threshold, -range-threshold, -separate, -threshold, -white-threshold

警告,一些操作符在+channel默认设置生效时的行为与任何用户定义的-channel设置(包括等效的默认设置)不同。尚未使这些运算符了解较新的“同步”标志。

例如,如果未定义-channel设置,默认情况下-threshold将对阈值进行灰度处理。这还不是“同步标志”控制的。

另外,如果alpha通道启用了-channel,则某些运算符(例如-blur-gaussian-blur)将修改其对颜色通道的处理。通常,这样做是为了确保将完全透明的颜色视为完全透明的,因此任何潜在的“隐藏”颜色都不会影响最终结果。通常会导致“光晕”效果。但是,较新的-morphology卷积等效项确实了解'Sync'标志,因此默认情况下将正确处理透明度。

由于图像中的Alpha通道是可选的,因此当图像中不存在Alpha通道时,某些操作符会将图像的颜色通道读取为灰度Alpha蒙版,并且-channel设置告诉操作符使用Alpha通道进行操作。该-clut运营商是一个很好的例子。

-channel-fx expression

交换,提取或复制一个或多个图像通道。

该表达式由一个或多个通道(助记符或数字通道)组成(例如,红色或0,绿色或1等),由某些操作符号隔开,如下所示:

<=> exchange two channels (e.g. red<=>blue)
=> copy one channel to another channel (e.g. red=>green)
= assign a constant value to a channel (e.g. red=50%)
, write new image with channels in the specified order (e.g. red, green)
; add a new output image for the next set of channel operations (e.g. red; green; blue)
| move to the next input image for the source of channel data (e.g. | gray=>alpha)

例如,要从图像的红色,绿色和蓝色通道创建3个灰度图像,请使用:

-channel-fx "red; green; blue"

没有操作符号的通道表示单独的(即分号)。

在这里,我们拍摄一个sRGB图像和一个灰度图像,然后将灰度图像注入到alpha通道中:

convert wizard.png mask.pgm -channel-fx '| gray=>alpha' wizard-alpha.png

使用类似的命令定义读取掩码:

convert wizard.png mask.pgm -channel-fx '| gray=>read-mask' wizard-mask.png

-debug pixel-channel-fx选项之前添加以跟踪通道形态。

-charcoal factor

模拟一张木炭画。

-chop geometry

去除图像内部的像素。

有关geometry参数的完整详细信息,请参见-geometrygeometry参数的size部分的给出的widthheight给出了要删除的行数。geometry参数的offset部分受-gravity设置(如果存在)的影响。

所述-chop选项删除整个行和列,并且移动剩余角块向左,向上以填补缺口。

虽然它可以删除像素的内部行和列,但通常与-gravity设置和零偏移量结合使用,以便从图像中删除单个边缘。将此与“剃须刀”进行比较,该剃须刀会从图像的相对两侧删除相等数量的像素。

使用-chop有效撤掉一个结果剪接是被赋予了相同的geometry形状-gravity设置。

-clahe widthxheight{%}{+}number-bins{+}clip-limit{!}

对比度受限的自适应直方图均衡化。

图像分为widthheight像素的图块。追加%将宽度和高度定义为图像尺寸的百分比。切片大小应大于要保留的特征的大小,并应尊重图像的纵横比。添加!以强制确切的图块宽度和高度。number-bins是每个图块的直方图bin的数量(最小2,最大65536)。直方图块的数量应小于单个图块中的像素数量。夹限制是局部对比度变化的对比度极限。限制范围为2到3是一个很好的起点(例如-clahe 50x50%+ 128 + 3)。很大的值将使直方图均衡做它想做的任何事情,这将导致最大的局部对比度。值1将产生原始图像。请注意,如果省略了bin的数量和clip-limit,则它们的默认值分别为128和无裁剪。

-clamp

将值小于零的每个像素设置为零,将值大于量子范围的任何像素设置为量子范围(例如65535),否则像素值保持不变。

-clip

如果存在剪切路径,请应用剪切路径。

如果存在剪切路径,则将其应用于后续操作。

例如,在命令中

convert cockatoo.tif -clip -negate negated.tif

仅剪切路径内的像素被取反。

-clip功能需要SVG的支持。如果不存在SVG委托库,则该选项将被忽略。

使用+ clip禁用后续操作的剪切。

-clip-mask

裁剪此蒙版定义的图像。

使用当前图像的Alpha通道作为遮罩。直到移除遮罩,后续的任何“图像处理操作符”都不会修改任何白色区域。根据操作符的要求修改剪贴蒙版黑色区域中的像素。

在一些方面,这是类似于(尽管不是相同)限定的矩形-region,或者使用掩模(第三)的图像的负的三个图像-composite,操作。

使用+clip-mask禁用后续操作的剪切。

-clip-path id

从8BIM配置文件中剪切命名路径。

这与-clip相同,除了在图像具有多个可用路径的情况下选择特定的剪切路径。

使用-clip-path禁用后续操作的剪切。

-clone index(s)

克隆一个或多个图像。

在圆括号内(通常使用运算符),它将从最后一个“推送”图像序列中克隆图像,并将其添加到当前图像序列的末尾。在圆括号外(不建议),它从当前图像序列中克隆图像。

通过序列中的索引指定图像。第一张图片的索引为0。负索引是相对于序列的结尾;例如,?1代表序列的最后一个图像。用短划线指定图像范围(例如0?4)。用逗号分隔多个索引,但不要使用空格(例如0,2,5)。值' 0??1将有效克隆所有图像。

+克隆只会使最后图像的图像序列中的一个副本,因此相当于使用的“参数?1”。

-clut

使用所述第二图像作为在每个相应的信道替换第一图像中的通道值?的olor OOK ü p 能。

第二个(LUT)图像通常是一个渐变图像,其中包含应如何修改每个通道的直方图映射。通常,它是替换颜色值的单行或列图像。如果大于单个行或一列,则从左上角到右下角的对角线获取值。

通过-interpolate设置进一步控制查找,这对于LUT尤其方便,它不是ImageMagick安装的质量(Q)级别所需的全长。良好的设置是' bilinear'和' bicubic'插值设置(可提供平滑的颜色渐变),以及' integer'设置可直接,平滑地查找颜色值。

该运算符特别适合用CLUT图像中的特定颜色渐变替换灰度图像。

-channel设置所定义的通道值将被替换。特别是,由于默认的-channel设置为RGB,这意味着透明度(alpha /遮罩通道)不会受到影响,除非修改了-channel设置。设置Alpha通道后,-clut运算符将以与其他通道相同的方式对其进行处理,这意味着使用原始图像的Alpha /遮罩值替换了Alpha /遮罩值。

如果要修改的图像或查找图像不包含透明度(即-alpha被“关闭”),但是-channel设置包括alpha替换,则假定该图像表示用于替换的灰度梯度字母值。也就是说,您可以使用灰度CLUT图像来调整现有图像的alpha通道,也可以使用包含所需颜色(包括透明度)的CLUT颜色窗体对灰度图像进行着色。

另请参见-hald-clut,它根据从3D彩色立方体的2D表示中查找全彩色RGB值来替换颜色。

-coalesce

完全定义GIF动画序列每一帧的外观,以形成“电影胶片”动画。

根据其处理元数据在图像序列中覆盖每个图像,以在动画序列中的每个点重现动画的外观。所有图像均应具有相同的尺寸,并为动画分配了适当的GIF处理设置,以继续按预期作为GIF动画工作。与高度优化的GIF叠加图像相比,此类帧更易于查看和处理。

尽管不能保证还原的GIF动画优化比原始效果更好,但是可以在使用-layers方法' optimize' 处理后重新优化动画。

-colorize value

使用最新的-fill设置指定的颜色按value指定的数量为图像着色。

将着色量指定为百分比。可以使用逗号分隔的着色值列表(例如-colorize 0,0,50)将单独的着色值应用于图像的红色,绿色和蓝色通道。

-colormap type

定义颜色图类型。

所述类型可以是 sharedprivate

仅当默认X服务器视觉效果为PseudoColor或时,此选项才适用GrayScale。有关更多详细信息,请参考-visual。默认情况下,分配一个共享的颜色图。图像与其他X客户端共享颜色。某些图像颜色可能是近似值,因此您的图像看起来可能与预期的非常不同。如果private选择,则图像颜色将完全按照定义的颜色显示。但是,安装图像颜色图后,其他客户端可能会变成彩色

-colors value

设置图像中的首选颜色数量。

图像中的实际颜色数量可能少于您的要求,但决不会超过您的要求。请注意,这是一种颜色减少选项。唯一颜色比值指定少的图像将删除任何重复或未使用的颜色。现有调色板的顺序可以更改。将图像从彩色转换为灰度时,在减少颜色数量之前将图像转换为灰色色彩空间更为有效。有关更多详细信息,请参阅色彩还原算法

-color-matrix matrix

对图像进行色彩校正。

此选项允许进行饱和度更改,色相旋转,亮度为alpha以及各种其他效果。尽管可以使用可变大小的转换矩阵,但通常将5x5矩阵用于RGBA图像,将6x6矩阵用于CMYKA(或带偏移的RGBA)。该矩阵与Adobe Flash所使用的矩阵相似,除了偏移量位于第6列而不是第5列(支持CMYKA图像)中,并且对偏移量进行了标准化(将Flash偏移量除以255)。

例如,要为具有偏移量的图像添加对比度,请尝试以下命令:

convert kittens.jpg -color-matrix \
" 1.5 0.0 0.0 0.0, 0.0, -0.157 \
0.0 1.5 0.0 0.0, 0.0, -0.157 \
0.0 0.0 1.5 0.0, 0.0, -0.157 \
0.0 0.0 0.0 1.0, 0.0, 0.0 \
0.0 0.0 0.0 0.0, 1.0, 0.0 \
0.0 0.0 0.0 0.0, 0.0, 1.0" kittens.png

-colorspace value

设置图像色彩空间。

选项是:

要打印色彩空间的完整列表,请使用-list colorspace

为了更准确地与线性RGB,CMYK或灰度色空间进行颜色转换,请使用-profile选项。请注意,如果图像格式没有另外说明,则ImageMagick假定为sRGB色彩空间。对于色彩空间转换,首先要删除伽玛函数以产生线性RGB。

RGB到其他色彩空间的转换

    CMY
    C=QuantumRange-R
    M=QuantumRange-G
    Y=QuantumRange-B
    CMYK — starts with CMY from above
    K=min(C,Y,M)
    C=QuantumRange*(C-K)/(QuantumRange-K)
    M=QuantumRange*(M-K)/(QuantumRange-K)
    Y=QuantumRange*(Y-K)/(QuantumRange-K)
    Gray
    Gray = 0.212656*R+0.715158*G+0.072186*B
    HSB — Hue, Saturation, Brightness; like a cone peak downward
    H=angle around perimeter (0 to 360 deg); H=0 is red; increasing angles toward green
    S=distance from axis outward
    B=distance along axis from bottom upward; B=max(R,G,B); intensity-like
    HSL — Hue, Saturation, Lightness; like a double cone end-to-end with peaks at very top and bottom
    H=angle around perimeter (0 to 360 deg); H=0 is red; increasing angles toward green
    S=distance from axis outward
    L=distance along axis from bottom upward; L=0.5*max(R,G,B) + 0.5*min(R,G,B); intensity-like
    HWB — Hue, Whiteness, Blackness
    Hue (complicated equation)
    Whiteness (complicated equation)
    Blackness (complicated equation)
    LAB
    L (complicated equation relating X,Y,Z)
    A (complicated equation relating X,Y,Z)
    B (complicated equation relating X,Y,Z)
    LinearGray
    LinearGray = 0.298839*R+0.586811*G+0.114350*B
    LOG
    I1 (complicated equation involving logarithm of R)
    I2 (complicated equation involving logarithm of G)
    I3 (complicated equation involving logarithm of B)
    OHTA — approximates principal components transformation
    I1=0.33333*R+0.33334*G+0.33333*B; intensity-like
    I2=(0.50000*R+0.00000*G-0.50000*B)*(QuantumRange+1)/2
    I3=(-0.25000*R+0.50000*G-0.25000*B)*(QuantumRange+1)/2
    Rec601Luma
    Gray = 0.298839*R+0.586811*G+0.114350*B
    Rec601YCbCr
    Y=0.2988390*R+0.5868110*G+0.1143500*B; intensity-like
    Cb=(-0.168736*R-0.331264*G+0.500000*B)*(QuantumRange+1)/2
    Cr=(0.500000*R-0.418688*G-0.081312*B)*(QuantumRange+1)/2
    Rec709Luma
    Gray=0.212656*R+0.715158*G+0.072186*B
    Rec709YCbCr
    Y=0.212656*R+0.715158*G+0.072186*B; intensity-like
    Cb=(-0.114572*R-0.385428*G+0.500000*B)+(QuantumRange+1)/2
    Cr=(0.500000*R-0.454153*G-0.045847*B)+(QuantumRange+1)/2
    sRGB
    if R ≤ .0.0031308 then Rs=R/12.92 else Rs=1.055 R ^ (1.0 / 2.4) - 0.055
    if G ≤ .0.0031308 then Gs=B/12.92 else Gs=1.055 R ^ (1.0 / 2.4) - 0.055
    if B ≤ .0.0031308 then Bs=B/12.92 else Bs=1.055 R ^ (1.0 / 2.4) - 0.055
    XYZ
    X=0.4124564*R+0.3575761*G+0.1804375*B
    Y=0.2126729*R+0.7151522*G+0.0721750*B
    Z=0.0193339*R+0.1191920*G+0.9503041*B
    YCC
    Y=(0.298839*R+0.586811*G+0.114350*B) (with complicated scaling); intensity-like
    C1=(-0.298839*R-0.586811*G+0.88600*B) (with complicated scaling)
    C2=(0.70100*R-0.586811*G-0.114350*B) (with complicated scaling)
    YCbCr
    Y=0.2988390*R+0.5868110*G+0.1143500*B; intensity-like
    Cb=(-0.168736*R-0.331264*G+0.500000*B)*(QuantumRange+1)/2
    Cr=(0.500000*R-0.418688*G-0.081312*B)*(QuantumRange+1)/2
    YIQ
    Y=0.298839*R+0.586811*G+0.114350*B; intensity-like
    I=(0.59600*R-0.27400*G-0.32200*B)*(QuantumRange+1)/2
    Q=(0.21100*R-0.52300*G+0.31200*B)*(QuantumRange+1)/2
    YPbPr
    Y=0.2988390*R+0.5868110*G+0.1143500*B; intensity-like
    Pb=(-0.168736*R-0.331264*G+0.500000*B)*(QuantumRange+1)/2
    Pr=(0.500000*R-0.418688*G-0.081312*B)*(QuantumRange+1)/2
    YUV
    Y=0.298839*R+0.586811*G+0.114350*B; intensity-like
    U=(-0.14740*R-0.28950*G+0.43690*B)*(QuantumRange+1)/2
    V=(0.61500*R-0.51500*G-0.10000*B)*(QuantumRange+1)/2

请注意,scRGB色彩空间需要HDRI支持,否则它的行为就像线性RGB。

使用Undefined色彩空间识别多光谱图像。

-combine

+combine colorspace

将一个或多个图像合并为一个图像。

从序列中每个图像的灰度值中依次获取组合图像的通道(以前由-channel设置)。对于默认频道设置RGB,这意味着第一个图像分配给该Red通道,第二个图像分配给该通道,Green第三个图像分配给Blue

只要通道设置相同,就可以将该选项视为-separate的反函数。因此,在以下示例中,最终图像应为原始图像的副本。

convert original.png -channel RGB -separate sepimage.png
convert sepimage-0.png sepimage-1.png sepimage-2.png -channel RGB \
-combine imagecopy.png

-comment string

在图像中嵌入评论。

该选项设置给出该选项后读入的图像的注释元数据。要修改内存中已有图像的注释,请使用“-set comment”。

注释可以包含格式和打印图像属性中列出的特殊格式字符。当注释最终分配给单个图像时,将扩展这些属性。

如果string的第一个字符是@,则从以字符串中其余字符为标题的文件中读取图像注释。从文件读入的注释是文字的;无法识别嵌入的格式字符。

评论元数据在图像本身上不可见。为此,请使用 -annotate-draw选项。

例如,

-comment "%m:%f %wx%h" bird.miff

产生图片注释MIFF:bird.miff 512x480(假设图片bird.miff的宽度为512,高度为480。

-compare

从数学和视觉上注释图像与其重建之间的差异

这是compare两个相同尺寸图像的转换版本。语法如下,但是允许其他度量。

convert image.png reference.png -metric RMSE -compare \
difference.png

要获取指标值,请使用字符串格式“%[distortion]”。

convert image.png reference.png -metric RMSE -compare -format \
"%[distortion]" info:

-complex operator

对图像序列执行复杂的数学运算

从以下运算符中选择:

add
conjugate
divide
magnitude-phase
multiply
real-imaginary
subtract

(可选)使用指定divide运营商SNR -define complex:snr=float

-compose operator

设置图像合成的类型。

有关alpha合成的详细讨论,请参见Alpha合成

此设置影响以某种方式将两个(或多个)图像合并在一起的图像处理运算符。这包括操作符, -compare, -composite, -layers composite, -flatten, -mosaic, -layers marge, -border, -frame, 和-extent

它也是“composite”命令的主要选项之一。

-composite

对两个图像和一个可选的蒙版执行Alpha合成

根据当前的合成设置,拍摄第一张图像“目标”,并覆盖第二张“源”图像。“源”或“叠加”图像的位置根据-gravity-geometry设置进行控制。

如果给出了第三张图像,则将其视为相对于第一张“目标”图像的灰度混合“蒙版”图像。此蒙版与源图像混合在一起。但是,对于“displace”合成方法,可使用遮罩来提供单独的Y位移图像。

如果-compose方法需要额外的数字参数或标志,可以通过为compose方法设置适当的-set ' option:compose:args' 来提供这些参数。

一些compose方法可以修改覆盖区域之外的“目标”图像。默认情况下禁用。您可以通过设置定义来启用此功能:-define ' compose:clip-to-self=true'。

SVG合成规范要求颜色和不透明度值的范围在零到QuantumRange(含)之间。您可以使用以下选项允许超出此范围的值:-set 'option:compose:clamp=false

-compress type

写入图像时,请使用按类型指定的像素压缩。

选项有:NoneBZipFaxGroup4JPEGJPEG2000LosslessLZWRLEZip

要显示压缩类型的完整列表,请使用-list compress

指定+ compress以未压缩的格式存储二进制图像。默认值为指定图像文件的压缩类型。

如果LZW指定了压缩但尚未启用LZW压缩,则将以未压缩的LZW格式写入图像数据,该格式可以由LZW解码器读取。这可能会导致GIF文件大于预期。

Lossless指无损JPEG,仅在修补了JPEG库以支持该格式后才可用。通常不建议使用无损JPEG。

编写ICO文件时,可以通过指定Zip压缩要求将图像编码为PNG格式。

编写JNG文件时,指定Zip压缩以请求将Alpha通道以PNG“IDAT”格式编码,或者JPEG请求将其以JPG“JDAA”格式编码。

使用-quality选项可以设置JPEG,PNG,MIFF和MPEG编码器要使用的压缩级别。使用-sampling-factor选项可以设置JPEG,MPEG和YUV编码器用于对色度通道进行下采样的采样因子。

-connected-components connectivity

连接组件标签可检测图像中的连接区域,从4或8路连接中选择。

使用-define connected-components:verbose=true与每个独特标签相关的输出统计。

-contrast

增强或降低图像对比度。

此选项可增强图像较亮和较暗元素之间的强度差异。使用-contrast增强图像或使用+ contrast降低图像对比度。

要获得更明显的效果,您可以重复以下选项:

convert rose: -contrast -contrast rose_c2.png

-contrast-stretch black-point
-contrast-stretch black-point{xwhite-point}{%}

通过扩展强度值的范围来增加图像的对比度。

进行拉伸时,最多将黑点像素涂黑,最多将白点像素涂白。或者,如果使用百分比,则最多 黑点%的像素会变黑,而最多白点%的像素会变白

在ImageMagick 6.4.7-0之前,-contrast -stretch将在最多黑点像素处涂黑,而在总像素减去白点像素处涂白。或者,如果使用百分比,则最多黑点%的像素会变黑,最多100%的白点会减去白点%像素。

请注意,这-contrast-stretch 0将修改图像,以使图像的最小值和最大值分别拉伸到0和QuantumRange,而不会由于端部的烧坏或剪切而造成任何数据丢失。这与-normalize不同,后者等效于-contrast-stretch 0.15x0.05%(或在ImageMagick 6.4.7-0,之前-contrast-stretch 2%x99%)。

在内部,operator通过创建直方图bin进行工作,然后使用该bin修改图像。因此,某些颜色最初落入同一“容器”时可能会合并在一起。

当使用默认+channel设置时,所有通道均以相同的数量进行标准化,以保持色彩完整性。指定任何其他-channel设置将独立标准化RGB通道。

另请参阅 -auto-level以获取数学图像的“完美”规范化。

该运营商正在接受重新开发的审查。

-convolve kernel

使用用户提供的卷积内核对图像进行卷积。

内核是指定为整数的逗号分隔的列表(无空格)矩阵,下令左到右,从最上面一行。当前仅支持奇数维内核,因此指定内核中的条目数必须为3 2 = 9、5 2 = 25、7 2 = 49等。

需要注意的是-convolve运营商支持的偏倚设置。此选项可移动卷积,以使正和负结果相对于用户指定的偏差值。当处理包含负值和正值的卷积时,这对于ImageMagick的非HDRI编译非常重要。对于卷积涉及高通滤波器或边缘检测的情况尤其如此。如果没有输出偏置,则负值将被裁剪为零。

当将ImageMagick与HDRI编译时设置一起使用时,不需要-bias,因为ImageMagick能够存储/处理任何负结果,而不会剪切到颜色值范围(0..QuantumRange)。请参阅“高动态范围图像 ”页面上有关ImageMagick的HDRI实现的讨论。有关HDRI的更多信息,请转到ImageMagick 用法页面或此 Wikipedia条目。

-copy geometry offset

将像素从图像的一个区域复制到另一区域。

-crop geometry{@}{!}

切出图像的一个或多个矩形区域。

有关geometry参数的完整详细信息,请参见geometry image

widthheight的的geometry参数得到残留裁剪后的图像的尺寸,和Xyoffset(如果存在的话)给出的剪切图像的左上角相对于原始图像的位置。要指定要删除的数量,请改用-shave

如果存在xy偏移,则生成单个图像,其中包括来自裁剪区域的像素。偏移量指定裁剪区域的左上角相对于图像的左上角向下和向右测量的位置。如果-gravity选项与NorthEastEastSouthEast重力一起出现,它将给出从图像的右边缘到裁剪区域的右边缘的向左距离。同样,如果-gravity选项与SouthWestSouthSouthEast重力一起出现,则距离在底边之间向上测量。

如果省略xy偏移,则将生成一组指定几何形状的图块,这些图块覆盖整​​个输入图像。如果指定的几何形状超出输入图像的尺寸,则最右边的图块和底部的图块会较小。

您可以在几何参数中添加@,以将图像平均划分为生成的图块数量。

通过将惊叹号标志添加到几何参数,可以将裁剪后的图像虚拟画布页面大小和偏移设置为几何参数是视口还是窗口。这意味着画布页面大小设置为与您指定的大小完全相同,图像偏移设置为裁剪区域的相对左上角。

如果裁剪后的图像在其虚拟画布上“丢失”了实际图像,则会返回一个特殊的单像素透明“丢失”图像,并发出“裁剪丢失”警告。

在裁剪图像之前,可能需要+重新裁剪图像,以确保将裁剪坐标框重定位到可见图像的左上角。同样,您可能希望在裁剪后使用+ repage来删除将遗留的页面偏移。当您要写入支持图像偏移量的图像格式(例如PNG)时,尤其如此。

-cycle amount

按数量替换图像颜色图。

数量定义每个色图条目要移动的位置数。

-debug events

启用调试打印输出。

events参数指定要记录的事件。它可以是NoneAllTrace,或逗号分隔的列表由一个或多个以下结构域的的: AccelerateAnnotateBlobCacheCoderConfigureDeprecateExceptionLocaleRenderResourceSecurityTemporaryFileTransformX11,或User

例如,要记录缓存和Blob事件,请使用。

convert -debug "Cache,Blob" rose: rose.png

User域通常是空的,但是开发人员可以在其ImageMagick的专用副本中记录用户事件。

要打印调试方法的完整列表,请使用-list debug

使用-log选项可以指定调试输出的格式。

使用+ debug关闭所有日志记录。

调试也可以使用MAGICK_DEBUG 环境变量进行设置。MAGICK_DEBUG环境变量的允许值与-debug选项的允许值相同。

-decipher filename

解密并恢复以前由-encipher转换的像素

filename指定的文件中获取密码。

有关更多信息,请参见网页ImageMagick:加密或解密图像

-deconstruct

查找图像之间已更改的区域

给定所有相同大小的图像序列(例如,由-coalesce生成),请使用较小的图像(仅相对于先前图像变化的区域)替换第二个图像和以后的图像。

生成的图像序列可用于优化动画序列,但是当动画的一部分可以从不透明变为透明时,对于GIF动画将无法正常工作。

该选项实际上等效于 -layers方法' compare-any'。

-define key{=value}...

添加通常用于控制编码器和图像处理操作的特定全局设置。

此选项为编码器和解码器创建一个或多个定义,以供读写图像数据时使用。定义通常用于控制图像文件格式编码器模块和图像处理操作,这是常规方法无法提供的。定义的设置在-verbose信息(info:“输出格式”)中以“工件”的形式列出

如果value缺少一个定义,标志的空值的定义与命名的。这用于控制开/关选项。使用+ define键删除以前创建的定义。使用+ define“*”删除所有现有定义。

也可以使用-set“option:key ”“value选项来定义相同的“工件”设置,该选项还允许在定义的值中使用“格式”和“打印图像属性 ”。

选项关键是区分独立的(它们被转换为小写的解码器内使用),而value是区分依赖。

此类设置是全局范围的,并且会影响所有图像和操作。

以下定义只是一些可用的工件:

  • bmp3:alpha=true|false
  • 以BMP图像格式写入时,请包括任何alpha通道。
  • bmp:format=value
  • 有效值为bmp2,bmp3和bmp4。当在输出文件名前添加“BMP2:”的方法不方便或不可用时(例如,使用mogrify 实用程序时),此选项很有用。
  • bmp:subtype=RGB555|RGB565|ARGB4444|ARGB1555
  • BMP通道深度子类型。仅在BMP(BMP4)中支持。BMP3和BMP2不包含标头字段来支持这些选项。
  • colorspace:auto-grayscale=on|off
  • 防止在支持灰度的编码器内部自动转换为灰度。这应该伴有-type truecolor。PNG和TIF不需要此定义。对于PNG,只需使用PNG24:image。对于TIF,只需使用-type truecolor。JPG和PSD将需要此定义。
  • complex:snr=value
  • 设置SNR常数复数。
  • compose:args=arguments
  • 在使用convert ... -compose ... -composite时设置某些组合参数值。
  • compose:clip-to-self=true|false
  • 一些组合方法可以修改覆盖区域之外的“目标”图像。默认情况下禁用。
  • compose:clamp=on|off
  • 将值小于零的每个像素设置为零,将值大于量子范围的任何像素设置为量子范围(例如65535),否则像素值保持不变。在ImageMagick 6.9.1-3及更高版本中定义支持
  • connected-components:area-threshold=value
  • 将面积小于值的任何区域合并到其周围区域或最大邻居中。
  • connected-components:keep=list-of-ids
  • ID值的逗号和/或带连字符的列表,以保留在输出中。在Imagemagick 6.9.3-0中受支持。
  • connected-components:mean-color=true
  • 将输出图像从id值更改为平均颜色值。在Imagemagick 6.9.2-8中受支持。
  • connected-components:remove=list-of-ids
  • 要从输出中删除的ID值的逗号和/或带连字符的列表。在Imagemagick 6.9.2-9中受支持。
  • connected-components:verbose=true
  • 列出每个区域的id,边界框,质心,区域,平均颜色。
  • convolve:scale={kernel_scale}[!^] [,{origin_addition}] [%]
  • 定义内核缩放。特殊标志!自动缩放到整个动态范围。!标记可以与因子或百分比结合使用。然后在自动缩放后应用因子或百分比。一个例子是50%!。这样产生的结果比完整的动态范围缩放要暗50%。^标志可确保内核为“零和”,例如在边缘检测内核中某些值为正而某些值为负时。原点加法将该值添加到内核的中心像素。这产生的效果类似于将图像多次添加到已过滤图像的结果中。典型值为1,因此会将原始图像添加到卷积的结果中。默认值为0。
  • dcm:display-range=reset
  • 将显示范围设置为DCM图像格式的最小和最大像素值。
  • dds:cluster-fit=true|false
  • 启用dds群集拟合。
  • dds:compression=dxt1|dxt5|none
  • 设置dds压缩。
  • dds:mipmaps=value
  • 设置Mipmap的dds数。
  • dds:weight-by-alpha=true|false
  • 启用dds alpha加权。
  • deskew:auto-crop=true
  • 偏斜后自动裁剪图像。
  • delegate:bimodal=true
  • 指定从Postscript直接转换为PDF。
  • distort:scale=value
  • 设置与-distort一起使用的输出比例因子。
  • distort:viewport=WxH+X+Y
  • 设置视口以与-distort一起使用。
  • dither:diffusion-amount=X%
  • 设置要与Floyd-Steinberg扩散一起使用的扩散量
  • dot:layout-engine=value
  • 指定DOT图像格式的布局引擎(例如neato)。
  • exr:color-type=value
  • 指定EXR格式的颜色类型:RGB,RGBA,YC,YCA,Y,YA,R,G,B,A)。
  • filter:option=value
  • 设置与使用过滤器选项调整大小。见
  • fourier:normalize=inverse
  • 设置FFT / IFT归一化的位置,以供。默认是
  • h:format=value
  • 设置在编写C样式标头时使用的图像编码格式。 可以是ImageMagick支持的任何输出格式,但 。如果省略此选项,则默认为 对于PseudoClassimages和 用于DirectClass图片。
  • hough-lines:accumulator=true
  • 除行图像外,还返回累加器图像。
  • heic:preserve-orientation=true
  • 在HEIC解码过程中保留原始EXIF方向并相应旋转像素。默认情况下,EXIF方向会重置为“ 1”以匹配HEIC中像素的实际方向。
  • icon:auto-resize
  • 写入ico图像时自动存储多种尺寸(需要256x256输入图像)。
  • identify:locate=minimum|maximum
  • 找到一幅或多幅图像的最小值或最大值的坐标。
  • identify:limit=number
  • 找到指定的最小值或最大值的坐标。
  • jp2:layer-number=value
  • 设置要解码的最大质量层数。JPT,JC2和J2K相同。
  • jp2:number-resolutions=value
  • 设置要编码的分辨率数。与JPT,JC2和J2K相同。
  • jp2:progression-order=value
  • 从LRCP,RLCP,RPCL,PCRL或CPRL中选择。与JPT,JC2和J2K相同。
  • jp2:quality=value,value...
  • 设置质量层PSNR,以dB为单位。顺序是从左到右以升序排列。默认值为单个无损质量层。JPT,JC2和J2K相同。
  • jp2:rate=value
  • 指定在写入JPEG-2000文件时要使用的压缩系数。压缩系数是压缩比的倒数。有效范围是0.0到1.0,其中1.0表示无损压缩。如果定义,此值将覆盖-quality设置。质量设置为75会得出速率值为0.06641。JPT,JC2和J2K相同。
  • jp2:reduce-factor=value
  • 设置要丢弃的最高分辨率级别的数目。与JPT,JC2和J2K相同。
  • jpeg:block-smoothing=on|off
  • jpeg:colors=value
  • 设置所需的颜色数量,然后让JPEG编码器进行量化。
  • jpeg:dct-method=value
  • 选择defaultfastestfloatifast,和islow
  • jpeg:extent=value
  • 限制最大JPEG文件大小,例如-definejpeg:extent=400KB。JPEG编码器将搜索最高的压缩质量级别,从而导致输出文件的值不超过该值。从-quality版本6.9.2-5开始,还将尊重该选项。在6.9.1-0和6.9.2-4之间,添加-quality 100以便jpeg:extent正常工作。在6.9.1-0之前,忽略质量设置。
  • jpeg:fancy-upsampling=on|off
  • jpeg:optimize-coding=on|off
  • jpeg:q-table=table
  • jpeg:sampling-factor=sampling-factor-string
  • jpeg:size=geometry
  • 设置JPEG图像的大小提示,例如。-define jpeg:size=128x128当减小大JPEG图像的大小时,它对于提高性能和减少内存需求最有用。
  • json:features
  • 包括详细信息中的功能。
  • json:limit
  • json:locate
  • json:moments
  • 在详细信息中包含图像时刻。
  • magick:format=value
  • 设置编写C样式标题时使用的图像编码格式。这与上述“ h:format = format”相同。
  • mng:need-cacheoff
  • 关闭用于播放MNG的播放缓存。
  • morphology:compose=compose-method
  • 指定如何合并由多个形态内核生成的结果。默认为无。一个典型的值是例如与sobel edgekernels一起使用的“变亮”。
  • morphology:showKernel=1
  • 输出(生成“标准错误”)有关生成的形态内核的所有信息。
  • pcl:fit-to-page=true
  • pdf:fit-page=geometry
  • 几何体指定了缩放尺寸,以便在读取PDF时调整大小。几何形状为WxH {%}或页面大小。不允许偏移量。(在IM 6.8.8-8中引入)
  • pdf:fit-to-page=true
  • pdf:use-cropbox=true
  • pdf:use-trimbox=true
  • pdf:stop-on-error=true
  • pdf:pdf:page-direction=right-to-left
  • phash:colorspaces=colorspace,colorspace,...
  • 感知哈希默认为sRGB和HCLp颜色空间。使用此定义时,您最多可以指定六个替代色彩空间。(自IM 7.0.3-8起)
  • phash:normalize=true
  • 通过-define phash:colorspaces使用比较度量phash时指定的通道数除以归一化phash度量。(自IM 7.0.3-8起)
  • png:bit-depth=value
  • png:color-type=value
  • PNG输出所需的位深度和颜色类型。您可以强制PNGencoder使用与通常选择的位深和颜色类型不同的位深和颜色类型,但前提是这不会造成任何图像质量损失。任何降低图像质量的尝试都将被视为错误,并且不会写入noPNG文件。例如,如果您有一个1位的黑白图像,则可以使用这些“定义”将其写为8位灰度,索引甚至64位RGBA。但是,如果您有1600万个彩色图像,则不能强制将其写为灰度或索引PNG。如果要这样做,则必须使用适当的-depth-colors-type指令可降低使用PNG编码器之前的图像质量。请注意,在未索引的PNG文件中,“位深度”是指每个索引的位数,可以为1、2、4或8。在此类文件中,颜色样本始终具有8位深度。
  • png:compression-filter=value
  • 有效值为0到9。0-4是对应的PNG过滤器,5表示除带有彩色图的图像以外的自适应过滤,6表示对所有图像的自适应过滤,7表示MNG“局部”压缩,8表示具有自适应过滤的Z_RLE策略,以及9表示不过滤的Z_RLE策略。
  • png:compression-level=value
  • 有效值是0到9,0表示最小但最快的压缩,而9则通常表示最佳,但总是最慢。
  • png:compression-strategy=value
  • 有效值为0到4,表示默认,已过滤,huffman_only,rle和固定的ZLIB压缩策略。如果使用的旧zlib不支持Z_RLE(在1.2.0之前)或Z_FIXED(在1.2.2.2之前),则值3和4将分别使用zlib默认策略。
  • png:format=value
  • 有效值是png8png24png32png48png64png00。当在格式名称前添加输出文件名的常规方法不方便时,例如编写PNG时,此属性对于指定要使用的特定PNG格式很有用。编码的ICO文件或使用mogrify时。Value= png8会将颜色数量减少到256,必要时只有其中一种可以是完全透明的。其他值不强制降低质量。请求不能代表图像数据而不会丢失的格式是错误的(除了允许将所有格式的位深度从16减小到8)。png24png48仅在单色是完全透明且该颜色也不出现在不透明像素中时才允许透明;在PNG iswritten这种透明度tRNSchunk.Value = png00使图像从输入图像继承itscolor型和比特深度,如果输入是alsoa PNG。
  • png:exclude-chunk=value
  • png:include-chunk=value
  • 从PNG输出中排除或包含的辅助块。

    可以是PNG块类型的名称,例如bKGD,以逗号分隔的块名称列表(可以包括单词date,单词all或单词none)。尽管PNG块名称是case-依赖,可以根据需要使用所有小写字母。

    “包含块”和“排除块”列表仅影响PNG编码器的行为,而对PNG解码器没有影响。

    作为一种特殊情况,如果sRGB排除了gAMA块并包括了gAMA块,则仅当gamma不是1 / 2.2时才写入块,因为大多数解码器在PNG文件中不包含色彩空间信息时都假定RGB和gamma = 1 / 2.2。因为列表是从左到右处理的,所以可以使用一个定义来实现:

    -define png:include-chunk=none,gAMA

    作为一种特殊情况,如果sRGB不排除该块并且PNG编码器识别出图像包含sRGB ICC配置文件,则PNG编码器将写入该sRGB块而不是整个ICC配置文件。要强制PNG编码器将sRGBprofile作为iCCP输出PNG中的sRGB块而不是块写入,请排除该sRGB块。

    关键PNG块IHDRPLTEIDAT,并IEND不能排除。列表中出现的所有此类条目都将被忽略。

    如果tRNS排除了辅助PNG 块并且图像具有透明度,则PNG颜色类型将强制为4或6(GRAY_ALPHA或RGBA)。如果图像不是透明的,则tRNS无论如何都不会写入块,并且对输出图像的PNG颜色类型没有影响。

    -strip选项确实为以下几部件PNG输出相当于:

    -define png:exclude-chunk=EXIF,iCCP,iTXt,sRGB,tEXt,zCCP,zTXt,date

    默认行为是包括所有已知的PNG辅助块以及ImageMagick的私有vpAg(“虚拟页面”)块,并排除ImageMagick未知的所有PNG块,无论其PNG规范中描述的PNG的“复制安全”状态如何。

    那些不知道ImageMagick的任何块名称是ignoredif它们出现在无论是“包括组块”或“排除-块” list.The配套目前已知ImageMagick的块是bKGDcHRMgAMAiCCPoFFspHYssRGBtEXttRNSvpAg,和zTXt

    您还可以date在列表中放入以包括或排除ImageMagick通常插入到输出PNG中的“日期:创建”和“日期:修改”文本块。

  • png:ignore-crc[=true]
  • 当您知道图像没有CRC或ADLER32错误时,可以加快解码速度。它也有助于调试来自“模糊器”的错误报告。
  • png:preserve-colormap[=true]
  • 使用现有的图像->颜色图。通常,PNG编码器将尝试优化调色板,消除未使用的条目并将透明色放在第一位。如果设置了此标志,则该行为被抑制。
  • png:preserve-iCCP[=true]
  • 默认情况下,PNG译码器和编码器检查任何ICC profilethat存在时,无论是从一个iCCP在PNGinput块或经由一个选项提供,并且如果配置文件是recognizedto是sRGB模式,将其转换为sRGBchunk.You可以使用-define png:preserve-iCCP到preventthis从发生 在这种情况下,iCCP将读取或写入该sRGB块,并且不会写入任何块。有一些ICC配置文件声称是sRGB,但是有各种错误导致它们被libpng16拒绝;这样的配置文件无论如何都会被识别并转换为sRGB块,但是如果-define png:preserve-iCCP存在则被拒绝。请注意,并非所有“ sRGB” ICC配置文件都已被识别;我们会在遇到它们时将它们添加到列表中。
  • png:swap-bytes[=true]
  • PNG规范要求以网络字节顺序(MSB-LSB字节序)存储任何多字节整数。使用此选项,您可以修复所有以16位样本(little-endian)顺序错误存储的无效PNG文件(LSB-MSB)。“ -define png:swap-bytes”选项必须出现在命令行的输入文件名之前。交换是在libpng解码操作期间完成的。
  • profile:skip=name1,name2,...
  • 读取图像时跳过命名的配置文件。使用skip =“ *”跳过图像中所有已命名的配置文件。存在许多命名的配置文件,包括ICC,EXIF,APP1,IPTC,XMP等。
  • ps:imagemask
  • 如果定义了ps:imagemask标志,则PS3和EPS3编码器将创建Postscript文件,这些文件使用Postscriptimagemask运算符而不是image运算符来呈现双层图像。
  • psd:additional-info=all|selective
  • 仅当从PSD文件转换为另一个PSD文件时,才应使用此选项。在读取图像后,应将其放置。这两个选项是“全部”和“选择性”。“选择性”选项将保留与图像几何形状无关的所有其他信息。“所有”选项仅应在图像的几何形状未更改时使用。当将非简单图层(例如,调整图层)从输入PSD文件传输到输出PSD文件时,此选项很有用。如果不使用此选项,则不会保留其他信息。从Imagemagick版本6.9.5-8开始,此定义可用。
  • psd:alpha-unblend=off
  • 在将Alpha通道添加到输出图像之前,对平整图层0的基础图像禁用新的自动取消透明性混合功能。此定义必须放在输入psd图像之前。(自IM 6.9.2.5起可用)。自动取消混合是IM 6.9.2.5的新增功能,可防止在输出图像中两次应用透明度。在读取图像之前,应先设置此选项。
  • psd:preserve-opacity-mask=true
  • 仅当从PSD文件转换为另一个PSD文件时,才应使用此选项。保存图像时,它将保留图层的不透明蒙版并将其重新添加到图层中。将此设置为“ true”将启用此功能。该定义自Imagemagick 6.9.5-10版本起可用。
  • preserve-timestamp={True, False}
  • 保留文件时间戳(mogrify仅)。
  • q-table=quantization-table.xml
  • 自定义JPEG量化表。
  • quantum:format=type
  • 设置类型floating-point以为原始文件(例如GREY :)或HDRI模式下的MIFF和TIFF图像指定浮点格式,以保留负值。如果包含-depth 16,则结果为单精度浮点格式; 如果包含-depth 32,则结果为双精度浮点格式。
  • quantum:polarity=photometric-interpretation
  • 将图像的光度学解释(通常用于TIFF图像文件格式)设置为min-is-black(默认)或min-is-white
  • sample:offset=geometry
  • 采样点在要采样的子区域内的位置,以百分比表示(请参阅-sample)。
  • morphology:showKernel=1
  • 输出(生成“标准错误”)有关生成的形态内核的所有信息。
  • stream:buffer-size=value
  • 设置流缓冲区大小。选择0作为未缓冲的I / O。
  • tiff:alpha=associated|unassociated|unspecified
  • 将Alpha额外样本指定为关联,未关联或未指定。
  • tiff:endian=msb|lsb
  • tiff:exif-properties=true
  • 启用读取EXIF属性。
  • tiff:fill-order=msb|lsb
  • tiff:ignore-layers=true
  • 忽略photoshop图层。
  • tiff:ignore-tags=comma-separate-list-of-tag-IDs
  • 允许忽略一个或多个标签ID值。
  • tiff:predictor=[1, 2 or 3]
  • 在应用编码方案之前应用于图像数据的数学运算符。一般的想法是图像的后续像素彼此相似。因此,从已经包含在先前像素中的像素中减去信息可能会大大降低其信息密度并有助于后续压缩。1 =编码前未使用预测方案。2 =水平差分。3 =浮点水平微分。
  • tiff:rows-per-strip=value
  • 设置每个条带的行数。
  • tiff:tile-geometry=WxH
  • 设置金字塔tiff的平铺大小。在输出名称之前需要后缀PTIF :。
  • type:features=string
  • type:hinting=off
  • txt:compliance=css
  • hsl()颜色的第一个参数是整数,而不是百分比。
  • x:screen=true
  • 从根窗口获取图像。
  • x:silent=true
  • 导入图像时关闭提示音。

例如,要创建一个仅渲染两级图像黑色像素的后记文件,请使用:

convert bilevel.tif -define ps:imagemask eps3:stencil.ps

通过使用前缀为图像注册表设置属性 registry:。例如,要设置放置工作文件的临时路径,请使用:

-define registry:temporary-path=/data/tmp

-delay ticks
-delay ticksxticks-per-second {<} {>}

暂停后显示下一张图像。

此选项对于调节图像序列的动画很有用,每秒的滴答/滴答声必须在显示下一幅图像之前到期。默认值是每次显示图像序列之间没有延迟。默认的每秒滴答数是100。

使用>改变图像延迟只有当其电流值超过给定的延迟。当当前值小于给定延迟时,<更改图像延迟。例如,如果您指定并且图像延迟为20,则图像延迟不会改变。但是,如果映像延迟为40或50,则将其更改为30。将给定的延迟括在引号中,以防止Shell 将该 or 解释为文件重定向。30><>

-delete indexes

从图像序列中删除索引指定的图像。

通过序列中的索引指定图像。第一个图像是索引0。负索引相对于序列的结尾,例如-1表示序列的最后一个图像。用短划线指定图像范围(例如0-4)。用逗号分隔索引(例如0,2)。使用 +delete删除当前图像序列中的最后一个图像。使用-delete 0--1删除整个图像序列。

-density width
-density widthxheight

设置图像的水平和垂直分辨率,以渲染到设备。

此选项指定在对光栅图像进行编码时要存储的图像分辨率,或在将Postscript,PDF,WMF和SVG等矢量格式渲染(读取)为光栅图像时指定要存储的图像分辨率。图像分辨率提供了渲染到输出设备或光栅图像时要应用的度量单位。默认的度量单位是每英寸点数(DPI)。该-units选项可用于选择每厘米点数来代替。

默认分辨率为每英寸72点,相当于每像素一个点(Macintosh和Postscript标准)。计算机屏幕通常为每英寸72或96点,而打印机通常支持每英寸150、300、600或1200点。要确定显示器的分辨率,请使用标尺测量屏幕的宽度(以英寸为单位),然后除以水平像素数(在1024x768显示器上为1024)。

如果文件格式支持,则此选项可用于更新存储的图像分辨率。请注意,Photoshop存储并从专有的嵌入式配置文件中获取图像分辨率。如果未从图像中删除此配置文件,则Photoshop将继续使用其以前的分辨率来处理图像,而忽略标准文件头中指定的图像分辨率。

-density选项设置的属性,并不会改变基本的光栅图像。它可用于通过调整应用于像素的比例来调整渲染大小以用于桌面发布。要调整图像的大小,使其具有相同的大小,但分辨率不同,请使用-resample选项。

-depth value

图像的深度。

这是像素内颜色样本中的位数。使用此选项可以指定深度未知的原始图像的深度,例如GREY,RGB或CMYK,或在读取任何图像后更改其深度。

使用+ depth将深度恢复为默认值。

-descend

通过递减窗口层次获取图像。

-deskew threshold{%}

拉直图像。40%的阈值适用于大多数图像。

使用-set 自动裁剪图像。option:deskew:auto-croptrue | false

-despeckle

减少图像中的斑点。

-direction type

从右到左或从左到右呈现文本。需要RAQM委托库和复杂的文本布局

-displace horizontal-scale{%}{!}
-displace horizontal-scalexvertical-scale{%}{!}

按照位移图定义的图像像素移位。

使用此选项,“覆盖”图像以及可选的“蒙版”图像将用作置换图,用于置换在覆盖区域的每个点上看到“背景”图像的哪一部分的查找。就像置换图一样,是一个“透镜”,可以重定向通过它的光,从而在其后方呈现原始“背景”图像的失真视图。

位移图的任何理想灰色区域都会产生图像的零位移。黑色区域产生给定的查找点最大负位移,而白色区域产生最大的查找正位移。

请注意,移位的是“背景”的查找,而不是图像本身的移位。这样,包含“白色”的位移图区域将使查找点“偏移”一个正值,从而生成目标图像从正确位置向右/向下的副本。那就是图像看起来好像已经沿负的左/上方向“移动”了。了解这一点对于理解位移图的工作方式非常重要。

给定的参数定义了特定贴图可以产生的最大像素位移量。如果位移比例足够大,则还可以查找“背景”图像中位于位移图自身边界之外的部分。也就是说,您可以非常轻松地将原始图像的一部分从覆盖区域之外复制到覆盖区域中。

'%'标志使位移比例相对于覆盖图像的大小(100%=图像的一半宽度/高度)。使用“!” 切换百分比参数以引用目标图像尺寸。这些标记是从IM v6.5.3-5开始添加的。

通常,会提供单个灰度级位移图,该图具有给定的缩放值将确定可能发生位移(正向或负向)的单个方向(矢量)。然而,如果还指定其通常用作第三图像掩模,所述合成图像是用于水平的X位移,而掩模图像被用于垂直Y位移。这使您可以为X和Y方向定义完全不同的位移值,并允许您在比例尺范围内查找任何点 。换句话说,每个像素可以查找附近的任何其他像素,从而产生复杂的2维位移,而不是简单的1维矢量位移。

从IM v6.4.4-0开始,也可以不提供两个单独的图像,而可以使用覆盖图像的“红色”通道指定水平或X位移,并使用“绿色”通道指定垂直或Y位移。

从IM v6.5.3-5开始,覆盖图像中的任何alpha通道均用作蒙版目标图像的透明度。但是,覆盖区域之外的区域将不受影响。

-display host:display[.screen]

指定要联系的X服务器。

此选项与convert一起使用,用于从此X服务器获取图像或字体。参见X(1)

-dispose method

为正在创建或读取的图像定义GIF处理图像设置。

层分配方法定义了在动画的当前“帧”显示完成之后(在其“延迟”时间段之后)但在动画的下一帧覆盖之前要修改每个显示图像的方式。显示器。

这是有效的方法:

Undefined
0:未指定处置方式(等同于“none”)。
None
1:请勿丢弃,仅覆盖下一张图像。
Background
2:用背景色清除边框区域。
Previous
3:在此帧叠加之前,请清除图像。

您还可以使用上面给出的数字,这是GIF格式在内部用来表示上述设置的数字。

要打印处理方法的完整列表,请使用-list dispose

使用+ dispose,关闭设置并防止重置正在读取的图像的层处理方法。

使用-set ' dispose'方法为内存中已存在的图像设置图像处理方法。

-dissimilarity-threshold value

子图像匹配的最大RMSE(默认值为0.2)。

-dissolve src_percent[xdst_percent]

按给定百分比将图像溶解到另一个图像中。

将合成图像的不透明度乘以给定的百分比,然后将其“合成”在主图像上。如果src_percent大于100,则开始溶解主图像,使其以' 200' 值透明。如果给出两个百分比,则将每个图像溶解到给出的百分比。

请注意,不添加溶解百分比,两个不透明的图像溶解为“50,50”,产生75%的透明度。对于两个图像的50%+ 50%融合,您需要使用'50,100'的溶解值。

-distort method arguments

使用给定的方法及其必需的参数使图像失真。

参数是包含浮动由逗号或空格分隔点号码的列表的单个串。浮点值的数量和含义取决于所使用的失真方法

从以下失真类型中进行选择:

  • 方法
  • 描述
  • ScaleRotateTranslate
    SRT
  • 首先按比例缩放并围绕给定的“中心”旋转以使图像失真,然后再将“中心”以该顺序转换为新位置。它是指定“仿射”类型失真的替代方法,但没有剪切效果。它还提供了一种旋转和置换较小图像以平铺到较大背景上的好方法(IE 2维动画)。
    自变量的数量决定了每个自变量在缩放,旋转和平移操作中的特定含义。
    2:     标度角
    3:     X,Y角
    4:     X,Y刻度角
    5:     X,Y ScaleX,ScaleY Angle
    6:     X,Y比例角NewX,NewY
    7:     X,Y ScaleX,ScaleY Angle NewX,NewY
    实际上,这是指定二维线性“仿射”或“仿射投影”失真的另一种方法。
  • Affine
  • 通过移动至少3组或更多组控制点(定义如下)的列表,线性失真图像。理想情况下,给出3组或12个浮点值,从而可以根据这三个点对图像进行线性缩放,旋转,剪切和平移。另请参见相关的“AffineProjection”和“SRT”变形。
    超过3组给定的控制点对(12个数字)是最适合拟合线性仿射失真的最小二乘法。如果仅给出2个控制点对(8个数字),则进行两点图像平移旋转和缩放,而不会对结果图像进行任何可能的剪切,翻转或改变宽高比。如果仅提供一个控制点对,则仅翻译图像(可能是浮点非整数翻译)。
    此变形不包括任何形式的透视变形。



Affine
AffineProjection 使用给定的6个预先计算的系数的仿射矩阵对图像进行线性失真,形成一组仿射方程,以将源图像映射到目标图像。 s x,r x,r y,s y,t x,t y

有关更多详细信息以及这些系数的含义,请参见-affine设置。
失真“仿射”和“SRT”提供了定义此失真的替代方法,ImageMagick进行了生成所需系数所需的计算。通过将-verbose设置与其他变量一起使用,可以查看内部生成的系数。
BilinearForward
BilinearReverse
双线性失真,给定至少4组坐标对或16个值(请参见下文)。尽管坐标之间的距离将保持一致,但并不是在变形后直线可能不会直线出现。
“BilinearForward”用于将矩形映射到任何四边形,而“BilinearReverse”形式将任何四边形映射到矩形,同时在每种情况下都保留直线边缘。
请注意,“BilinearForward”会生成无效的像素,这些像素将使用-mattecolor 颜色设置进行着色。同样,如果四边形变得“翻转”,图像可能会消失。
未来有计划产生一个真正的双线性失真,它将尝试将任何四边形映射到任何其他四边形,同时保留边缘(和边缘距离比)。
Perspective 透视图使用4组或更多组控制点(定义如下)的列表使图像失真。超过4组(16个数字)控制点可提供最小二乘拟合,以实现更准确的失真(出于图像配准和全景效果的目的)。少于4组将退回到“仿射”线性失真。
透视图扭曲的图像可确保直线保持笔直,但是扭曲的图像的比例会有所不同。地平线已消除锯齿,可以使用-mattecolor设置来设置“天空”颜色 。
PerspectiveProjection 对一组8个预先计算的系数进行“透视”失真处理。您可以通过观察得到这些系数-verbose一个“透视”失真的输出,或通过自己计算它们。如果最后两个透视图缩放系数为零,则其余6个代表转置的“仿射矩阵”。
Polynomial 使用一组相应的控制点进行N阶2D“多项式”失真。多项式的阶数决定了所需控制点的最小数量。顺序1与-distort Affine相同。1.5阶与-distort BilinearReverse相同。通常用于二阶失真。没有+变形多项式。
Arc 在圆周围给定的角度上将图像圆弧化(极坐标映射的变化)。
arc_angle
左右弯曲图像的角度
rotate_angle
从垂直中心旋转结果图像的角度
top_radius
将源图像的上边缘设置为此半径
bottom_radius
将底边设置为此半径(径向缩放)
总是调整结果图像的大小以使其最适合结果图像(就像使用+ distort一样),同时尝试使用用户给出的参数尽可能地保留原始图像的比例和宽高比。更改“弧形”图像的整体纵横比将需要所有四个参数。
极坐标变形的一种变体,旨在保留图像的长宽比,而不是将笛卡尔直接转换为极坐标。
Polar 类似于“弧”,但对图像进行了完整的笛卡尔到极坐标的映射。即输入图像的高度映射到半径限制,而宽度缠绕在角度限制之间。
参数:Rmax,Rmin CenterX,CenterY,start,end_angle
所有参数都是可选的。用Rmin的缺省值为零,中心到图像的中心,并且所述角度从-180(顶部)将180(顶部)。如果Rmax如果给定特殊值“0”,则将中心到最近边缘的距离用作输出图像的半径,这将确保整个图像可见(尽管缩放比例较小)。但是,特殊值“-1”将使用从中心到最远角的距离。这可能会“剪切”输入矩形图像的角,但是会生成带有相同参数的“DePolar”的正相反。
如果使用distort(+ distort)的加号形式,则输出图像中心将默认为虚拟画布的0,0,并调整图像大小以确保整个输入图像在虚拟画布上的输出图像中可见。
DePolar 使用与“极性”变形相同的论点和含义,但生成与“笛卡尔”变形相反的“极性”。
但是,特殊的Rmax设置为'0'可能会剪切输入图像的角。但是使用特殊的 Rmax设置为“-1”(最大中心到拐角距离)将确保在生成的结果中保留整个失真的图像,因此与“Polar”相同的参数将使失真再现原始图像。请注意,由于这种失真需要对圆弧进行面积重新采样,因此内置的EWA重新采样功能无法处理。因此,正常的EWA过滤器将关闭。建议使用某种形式的“超级采样”图像处理技术来产生高质量的结果。
Barrel 给定Helmut Dersch定义的四个系数(A,B,C,D),执行适合校正径向镜头畸变的镜筒或枕形畸变。即在照片中,使直线再次笔直。

参数:ABC [ D [ XY ]]
A x B x C x D x A y B y C y D y [ XY ]

这样就形成了功能

Rsrc = r *(A * r 3 + B * r 2 + C * r + D

其中XY是变形的可选中心(默认为图像的中心)。
第二种形式通常用于使图像变形,而不是校正镜头畸变。
BarrelInverse 这与具有相同参数集和参数处理功能的“桶”非常相似。但是,它使用径向多项式的逆,因此形成函数

Rsrc = r /(A * r 3 + B * r 2 + C * r + D

请注意,这与“桶形”变形不是相反的,只是一种不同的桶形径向变形方法。
Shepards 使用平方反距离内插法(Shepards方法)扭曲给定的列表控制点(任意数量)。实际上,控制点会在给定的控制点周围进行图像的“局部”移位(保留外观和控制点附近区域的旋转。为获得最佳效果,应添加额外的控制点以“锁定”图像的位置)。图像的角落,边缘和其他不变的部分,以防止其移动,
这种失真被比喻为用钉子“拉太妃糖”,或将钉子钉在“果冻”块中,然后将其移动到新位置,从而变形果冻的表面。
在内部,这等效于使用同名的-sparse-color方法为源图像颜色查找生成位移图(请参见-displace)。

要打印变形方法的完整列表,请使用-list distort

上面的许多失真方法(例如“Affine”,“Perspective”和“Shepards”)使用列表控制点来定义给定图像中的这些点应如何在目标图像中失真。每组四个浮点值代表一个源图像坐标,紧随其后的是目标图像坐标。这将产生值列表,例如...

U 1,V 1 X 1,Y 1 U 2,V 2 X 2,Y 2 U 3,V 3 X 3,Y 3 ... U n,V n X n,Y n

其中源图像上的U,V映射到目标图像上的X,Y

例如,要使用' perspective'变形对图像进行扭曲,需要至少4组坐标或16个数字的列表。这是内置的“rose:”图像的透视变形。请注意如何使用空格对4组坐标对进行分组,以使其更易于阅读和理解。

convert rose: -virtual-pixel black \
-distort Perspective '0,0,0,0 0,45,0,45 69,0,60,10 69,45,60,35' \
rose_3d_rotated.gif"

如果给出了一个畸变所需的坐标对数量多于该数量,则采用“最小二乘”法对所有给定的坐标对产生最佳结果。如果给定的点数少于理想数目,则畸变通常会退回到更简单的变形形式,可以处理较少数量的坐标(通常是线性' Affine'变形)。

通过使用更多的坐标,您可以使用图像配准工具在重叠的图像中找到匹配的坐标对,从而改善失真的“拟合”度。当然,不好的坐标对也会使“拟合”变差。始终建议注意。

使用称为EWA重采样的特殊技术,根据圆柱形重采样滤镜从源图像获取颜色。这会产生非常高质量的结果,尤其是当图像在输出中变小(最小化)时,这在使用' perspective'失真时很常见。例如,在这里,我们一直观察到一直延伸到地平线的无限平铺的“平面”。

convert -size 90x90 pattern:checkerboard -normalize -virtual-pixel tile \
-distort perspective '0,0,5,45 89,0,45,46 0,89,0,89 89,89,89,89' \
checks_tiled.jpg

请注意,由于被压缩以生成接近“水平”的每个像素的像素数量,涉及地平线的无限平铺透视图图像可能会非常慢。您可以通过指定特殊的-filter设置' point' 来关闭EWA重采样(如果您打算使用超级采样,则建议使用)。

如果图像生成无效像素,如在最后一个例子的“天空”,-distort将使用当前-mattecolor这些象素设置。如果看不到这些像素,则将颜色设置为与地面的其余部分匹配。

默认情况下,输出图像大小将与输入图像相同。这意味着,如果变形图像的一部分落在“变形空间”的可视区域之外,那么这些部分将被裁剪并丢失。但是,如果使用运算符的加号形式(+ distort),则运算符将尝试(如果可能)显示整个失真的图像,同时保留正确的“虚拟画布”偏移量以进行图像分层。可能需要使用+ repage删除此偏移量,如果不需要,请删除。

设置-verbose设置将导致-distort尝试输出内部系数,并且-fx等效于失真,以供专家研究和调试之用。这并非适用于所有失真。

您也可以指定一个特殊的“-define distort:viewport={geometry_string}”设置,该设置将指定扭曲的图像空间的生成的“视口”图像的大小和偏移量。

设置“”将按该比例缩放输出图像(视口或其他),而不更改扭曲图像的观看内容。这可以用于“超级采样”图像以获得更高质量的结果,也可以用于在图像周围平移和缩放(具有适当的视口更改,或后失真裁剪和调整大小)。-define distort:scale=scale_factor

设置“-define resample:verbose=1”将输出由EWA(椭圆加权平均)重采样算法创建的圆柱滤波器查找表。请注意,此表使用平方半径查找值。通常仅用于调试EWA重采样。

-distribute-cache port

启动分布式像素缓存服务器。

-dither method

当通过选件应用一般色彩还原时,对图像应用Riemersma或Floyd-Steinberg误差扩散抖动,或者在保存为特定格式时自动应用。默认情况下启用。

抖动会在相邻像素中放置两种或更多种颜色,以便使眼睛看到与原始颜色更接近的图像。这减少了再现图像所需的颜色数量,但以较低级别的颜色模式为代价。误差扩散抖动可以对图像使用任何颜色集(生成的或用户定义的)。

默认情况下,抖动是打开的,要禁用它,请使用设置的加号形式+ dither。这也将在没有文本或图形别名的情况下呈现PostScript。经常(但并非总是)禁用抖动会导致更快的处理速度,更少的颜色数量,但会产生更多类似图像着色的卡通效果。通常会在具有颜色渐变的区域中产生“色带”效果。

颜色减少运算符-colors-monochrome-remap-posterize,使用它们创建的减少颜色集将抖动应用于图像。保存图像时到具有有限色支持格式,例如这些操作符也被用作自动减少颜色的一部分GIF:XBM:和其他,所以抖动也可以在这些情况下使用。

另外,您可以使用-random-threshold 生成纯随机抖动。或使用-ordered-dither,使用统一的颜色图而不是特定的颜色图来应用阈值映射的抖动模式。

-define dither:diffusion-amount=35%例如,使用“来控制Floyd-Steinberg抖动的数量。

-draw string

用一个或多个图形基元注释图像。

使用此选项可以用一个或多个图形基元注释或装饰图像。图元包括形状,文本,转换和像素操作。

形状图元:

point
X,Y
line
x0,y0 x1,y1
rectangle
x0,y0 x1,y1
roundRectangle
x0,y0 x1,y1 wc,hc
arc
x0,y0 x1,y1 a0,a1
ellipse
x0,y0 rx,ry a0,a1
circle
x0,y0 x1,y1
polyline
x0,y0 ... xn,yn
polygon
x0,y0 ... xn,yn
bezier
x0,y0 ... xn,yn
path
规格
image
运算符x0,y0 w,h文件名

文本原语:

text
x0,y0字符串

文字重力原语:

gravity
西北,北部,东北,西部,中心,东部,西南,南部或东南

文本重力图元仅影响文本的位置,并且不与其他图元交互。它等效于使用-gravity命令行选项,除了它在范围上限于显示它的-draw选项。

转换原语:

rotate
translate
DX,DY
scale
SX,SY
skewX
skewY

像素操作原语:

color
x0,y0方法
matte
x0,y0方法

形状图元以前面的-fill设置指定的颜色绘制。对于未填充的形状,请使用-fill none。您可以选择控制与行程(在形状的“纲要”)-stroke-strokewidth设置。

point原语是由一个单一指定在像素平面,即,由一个有序对整数坐标,的 Xy。(由于涉及仅单个像素,point 原始不受-stroke-strokewidth。)

一个line基本要求起点和终点。

rectangle原始通过在左上角的一对点和右下角指定。

roundRectangle原始采用相同的角点作为rectangle随后圆角的宽度和高度将被删除。

circle图元制作了一个磁盘(填充的)或一个圆(未填充的)。给出中心和周长(边界)上的任何点。

arc图元用于将椭圆段内切到给定的矩形中。An arc需要用于rectangle(参见上文)的两个角 ,然后是线段弧段的弧的起始角和终止角(例如130,30 200,100 45,90)。然后将产生的起点和终点与线段连接,并填充椭圆的所得线段。

使用ellipse绘制的部分(或全部)的椭圆。给出中心点,水平和垂直“半径”(椭圆的半轴)以及起点和终点角度(以度为单位)(例如100,100 100,150 0,360)。

polylinepolygon原语需要三个或更多点,以确定它们的周边。A polyline只是a polygon,其中终点没有被描画到起点。未填充时,这是一条折线。如果-stroke设置为none(默认设置),则a polyline与a相同polygon

坐标是一对由空间或可选的逗号分隔的整数。

例如,要定义以100,100为中心并延伸到150,150的圆,请使用:

-draw 'circle 100,100 150,150'

Bezier元创建样条曲线,并需要三个或三个点来定义其形状。第一个和最后一个点是 ,这些点是通过曲线获得的,而任何中间坐标都是控制点。如果指定了两个控制点,则每个结点及其顺序对应的控制点之间的线将确定曲线在该端的切线方向。如果指定了一个控制点,则从端点结到一个控制点的直线将确定曲线在每一端的切线方向。如果指定了两个以上的控制点,则附加控制点将共同作用以确定曲线的中间形状。为了绘制复杂的曲线,强烈建议您使用 path基本或绘制多个四点贝塞尔曲线片段,并重复每个连续片段的起点和终点。例如:

-draw 'bezier 20,50 45,100 45,0 70,50'
-draw 'bezier 70,50 95,100 95,0 120,50'

A path表示对象的轮廓,根据移动到(设置新的当前点),线到(绘制直线),曲线到(绘制贝塞尔曲线),弧线(椭圆或圆弧)和闭合路径(闭合电流)定义通过在最后一个moveto元素上画一条线来绘制形状。复合路径(即具有子路径的路径,每个路径都由单个moveto组成,后跟一个或多个直线或曲线操作)可能会产生诸如对象中的甜甜圈孔之类的效果 。(请参阅路径。)

用于image将一个图像与另一个图像合成。在image关键字后加上复合运算符,图像位置,图像大小和文件名:

-draw 'image SrcOver 100,100 225,225 image.jpg'

您可以将0,0用作图像尺寸,这意味着要使用图像标题中的实际尺寸。否则,它将缩放到给定的尺寸。有关可用的Alpha合成方法的详细讨论,请参见Alpha合成

需要参数的“特殊增强组合运算符”(例如“dissolve”)目前无法与该-draw image选项一起使用。

用于text用文本注释图像。用字符串跟随文本坐标。如果字符串具有嵌入空格,则将其用单引号或双引号引起来。

例如,以下内容用Works like magick!标题为的图像注释该图像bird.miff

-draw "text 100,100 'Works like magick!' "

请参阅-annotate选项,以获取另一种方便的方法来用文本注释图像。

rotate元围绕主图像的原点旋转后续的形状图元和文本图元。

translate元转换后续的形状和文本图元。

scale原始鳞他们。

skewXskewY相对于所述主图像或该区域的原点原语歪斜它们。

转换会修改当前仿射矩阵,该仿射矩阵是从-affine 选项定义的初始仿射矩阵初始化的。转换是在-draw 选项中累积的。初始仿射矩阵不受影响;该矩阵只能通过另一个-affine选项的出现来更改。如果出现另一个 -draw选项,则会从初始仿射矩阵重新初始化当前仿射矩阵。

使用color原语将像素的颜色更改为填充颜色(请参见-fill)。使用方法跟踪像素坐标:

point
replace
floodfill
filltoborder
reset

将目标像素视为坐标指定的像素。该 point方法为目标像素重新着色。该replace 方法为与目标像素颜色匹配的任何像素重新着色。 Floodfill对与目标像素的颜色匹配并且是filltoborder相邻像素的任何像素重新着色,而对不是边框颜色的任何相邻像素重新着色。最后,reset为所有像素重新着色。

用于matte将像素遮罩值更改为透明。用方法跟随像素坐标(color有关方法的说明,请参见原语)。该point方法更改目标像素的遮罩值。该replace方法更改与目标像素颜色匹配的任何像素的遮罩值。 Floodfill更改与目标像素的颜色匹配并且是邻居filltoborder 的任何像素的遮罩值,而更改不是边界颜色(-bordercolor)的任何邻居像素的遮罩值。最后reset更改所有像素的遮罩值。

您可以 分别使用-fill-font-box设置原始颜色,字体和字体边界框颜色。选项按命令行顺序处理,因此请确保在-draw选项之前使用这些选项。

以数字开头的字符串必须加引号(例如,使用“1.png”而不是1.png)。

绘图图元符合Magick矢量图形格式。

注意,绘图需要Alpha通道。如果没有可用的通道,则隐式创建所有不透明的Alpha通道。

-duplicate count,indexes

复制图像一次或多次。

指定计数和要通过序列中的索引复制的图像。第一个图像是索引0。负索引相对于序列的结尾,例如-1表示序列的最后一个图像。用短划线指定图像范围(例如0-4)。用逗号分隔索引(例如0,2)。使用+duplicate复制当前图像序列中的最后一个图像。

-edge radius

检测图像中的边缘。

-emboss radius

浮雕图像。

-encipher filename

加密像素,以便以后通过-解密进行解密

filename指定的文件中获取密码。

有关更多信息,请参见网页ImageMagick:加密或解密图像

-encoding type

指定文本编码。

从中选择

AdobeCustom AdobeExpert
AdobeStandard AppleRoman
BIG5 GB2312
Latin 2 None
SJIScode Symbol
Unicode Wansung

-endian type

指定图像的字节序(MSBLSB)。

要打印字节序类型的完整列表,请使用-list endian选项。

使用+ endian恢复为未指定的字节序。

-enhance

应用数字滤波器以增强噪点图像。

-equalize

对每个通道的图像执行直方图均衡化。

要一致地对所有通道执行直方图均衡,请将图像转换为其他颜色空间,例如HSL,OHTA,YIQ或YUV,然后均衡合适的强度类似通道,然后转换回RGB。

例如,使用HSL,我们可以:... -colorspace HSL -channel lightness -equalize -colorspace sRGB...

对于YIQ,YUV和OHTA,请使用红色通道。例如,OHTA是一种主要成分转换,可将大多数信息放入第一个通道。这里我们有-colorspace OHTA -channel red -equalize -colorspace sRGB……

-evaluate operator value

通过评估算术,关系或逻辑表达式来更改通道像素。

(见-函数操作对于一些多参数的功能。参见-fx运营商如果需要更复杂的计算。)

下表总结了每个操作符的行为。为简便起见,下面提到的“像素”的数值是该像素相应通道的值,而“规格化像素”是该数值除以最大(取决于安装量)值QuantumRange的值。(如果使用归一化的像素,则在进行其他计算之后,通过将其乘以QuantumRange可以将它们恢复到整个范围。)

operator Summary (see further below for details)
Abs Add value to pixels and return absolute value.
Add Add value to pixels.
AddModulus Add value to pixels modulo QuantumRange.
And Binary AND of pixels with value.
Cos, Cosine Apply cosine to pixels with frequency value with 50% bias added.
Divide Divide pixels by value.
Exp base-e exponential function
Exponential base-e exponential function
LeftShift Shift the pixel values left by value bits (i.e., multiply pixels by 2value).
Log Apply scaled logarithm to normalized pixels.
Max Set pixels to maximum of value and current pixel value (i.e. set any pixels currently less than value to value).
Mean Add the value and divide by 2.
Median Choose the median value from an image sequence.
Min Set pixels to minimum of value and current pixel value (i.e. set any pixels currently greater than value to value).
Multiply Multiply pixels by value.
Or Binary OR of pixels with value.
Pow Raise normalized pixels to the power value.
RightShift Shift the pixel values right by value bits (i.e., divide pixels by 2value).
RMS Square the pixel and add the value.
RootMeanSquare Square the pixel and add the value.
Set Set pixel equal to value.
Sin, Sine Apply sine to pixels with frequency value with 50% bias added.
Subtract Subtract value from pixels.
Xor Binary XOR of pixels with value.
Gaussian-noise
Impulse-noise
Laplacian-noise
Multiplicative-noise (These are equivalent to the corresponding -noise operators.)
PoissonNoise
Uniform-noise
Threshold Threshold pixels larger than value.
ThresholdBlack Threshold pixels to zero values equal to or below value.
ThresholdWhite Threshold pixels to maximum values above value.

指定的功能仅应用于图像中每个先前设置的-channel。如有必要,将计算结果截断(剪切)以适合间隔[0,QuantumRange ]。图像的透明通道表示为“alpha”值(0 =完全透明),因此,例如,Divideα通道的 乘以2将使图像变为半透明。附加百分比符号' %'以指定一个值作为QuantumRange的百分比。

要打印-evaluate运算符的完整列表,请使用 -list validate

的结果AddSubtractMultiply方法也可以使用任一实现-电平+水平操作,用适当的参数,线性修改的颜色值的整体范围。但是请注意,-level将透明度视为“遮罩”值(0 =不透明),而-evaluate与“alpha”值一起使用。

AddModulus已被添加为ImageMagick的6.4.8-4的,并提供加法模的QuantumRange。因此,这等效于Add除非所得像素值在间隔[0,QuantumRange ]之外。

Exp or Exponential已从ImageMagick 6.6.5-1开始添加,并且可以处理归一化的像素值。与一起使用 的valueExp应为负,以产生衰减的指数函数。非负值将始终产生更大的单位,因此在区间[0,QuantumRange ]之外。公式表示如下。

exp(value × u

如果输入图像是平方的,例如,使用-函数多项式“2 0 0”,那么结果将是衰减的高斯函数。

Log已从ImageMagick 6.4.2-1开始添加,并且可以处理归一化的像素值。这是一个缩放的日志功能。与一起使用的valueLog提供了比例因子,可调整对数函数图中的曲率。应用于归一化值u的公式如下。

log(value × u + 1)/ log(value +1)

Pow从ImageMagick 6.4.1-9开始已添加,并且适用于归一化的像素值。请注意,这Pow-gamma运算符有关。例如,-gamma 2等效于-evaluate pow 0.5,即“平方根”函数。与-gamma一起使用的值只是与一起使用的值的倒数Pow

CosineSine加入作为IM v6.4.8-8和图像值转换成根据(共)正弦波函数的值。同义词CosSin也可以使用。输出偏置50%,并标准化50%,以适合各个颜色值范围。函数周期(其频率)的value缩放,从而确定在输入颜色范围内将生成的“波”数。例如,如果值为 1,则有效期就是QuantumRange;但是,如果value是2,则有效周期是一半QuantumRange

0.5 + 0.5×cos(2π ú × value)。

另请参见-function运算符,它是评估的多值版本。

-evaluate-sequence operator

通过评估图像序列上的算术,关系或逻辑表达式来更改通道像素。确保序列中的所有图像都在相同的色彩空间中,否则您可能会得到意想不到的结果,例如,将-colorspace sRGB添加到命令行中。

要打印-evaluate-sequence运算符的完整列表,请使用-listvaluate

-extent geometry

设置图像尺寸和偏移量。

如果图像放大,则将未填充区域设置为背景色。要定位图像,请在几何体 规范中使用偏移量,或在其前面加上-gravity设置。要指定如何用背景构图,请使用-compose

此命令可缩小或扩展JPEG图像以适合800x600显示屏。如果输入图像的宽高比不完全是4:3,则图像将以800x600黑色画布为中心:

convert input.jpg -resize 800x600 -background black -compose Copy \
-gravity center -extent 800x600 -quality 92 output.jpg

有关-geometry参数的完整详细信息,请参见-geometry

-extract geometry

从图像中提取指定区域。

此选项对于提取非常大的原始图像的子区域最有用。请注意,这两个命令是等效的:

convert -size 16000x16000 -depth 8 -extract 640x480+1280+960 \
image.rgb image.png",
convert -size 16000x16000 -depth 8 'image.rgb[640x480+1280+960]' \
image.rgb image.png"

如果省略偏移量,则如下所示

convert -size 16000x16000 -depth 8 -extract 640x480 \
image.rgb image.png

图像将被调整为指定的尺寸,等效于:

convert -size 16000x16000 -depth 8 -resize 640x480 image.rgb image.png

有关-geometry参数的完整详细信息,请参见图像几何

-family fontFamily

设置文本的字体系列。

此设置建议ImageMagick应该尝试使用的字体系列来呈现文本。如果可以找到该家庭,则使用该家庭;如果不是,则替换默认字体(例如,“Arial”)或已知相似的系列(例如,如果请求但未找到“System”,则可以使用“Courier”)。

有关影响字体的其他设置,请参见-font-stretch-style-weight选项

-features distance

在指定距离内,在四个方向(水平,垂直,左和右对角线)中的每个方向上显示图像中每个通道的显示(同现矩阵)纹理测量特征。

Angular Second Moment Sum Entropy
Contrast Entropy
Correlation Difference Variance
Sum of Squares Variance Difference Entropy
Inverse Difference Moment Information Measure of Correlation 1
Sum Average Information Measure of Correlation 2
Sum Variance Maximum Correlation Coefficient

-fft

实现前向离散傅里叶变换(DFT)。

此选项是ImageMagick 6.5.4-3的新增功能(现在适用于ImageMagick 6.6.0-9中的Windows用户)。它将图像从正常(空间)域转换到频域。在频域中,图像表示为振幅变化的复杂正弦波的叠加。图像x和y坐标分别是沿x和y方向的可能频率,并且像素强度值是与正弦波振幅相对应的复数。例如,参见傅立叶变换离散傅立叶变换快速傅立叶变换

提供单个图像名称作为此选项的输出。但是,输出结果将包含两个部分。根据指定的图像格式是否支持多帧图像,它可以是两帧图像或两个单独的图像。我们获得双重输出结果的原因是因为频域使用复数表示图像,无法直接对其进行可视化。因此,复数值自动地分离为两部分图像表示。第一个成分是复数的大小,第二个成分是复数的相位。参见,例如,复数

必须使用不限制颜色或压缩图像的图像格式指定幅度和相位分量图像。因此,推荐使用MIFF,TIF,PFM,EXR和PNG。所有这些格式(PNG除外)都支持多帧图像。例如

convert image.png -fft fft_image.miff

生成幅值图像为fft_image.miff[0]和相位图像为fft_image.miff[1]。同样的,

convert image.png -fft fft_image.png

生成幅值图像为fft_image-0.png和相位图像为fft_image-1.png。如果您喜欢这种表示形式,则可以通过在命令行中在-fft之后加上+ adjoin 来强制其他任何格式产生两个输出图像。

输入图像可以是任何大小,但如果不是正方形且尺寸均匀,则自动将其填充为输入图像的宽度或高度中的较大者和偶数个像素。填充将出现在输入图像的底部和/或右侧。在此大小下,所得的输出幅度和相位图像为正方形。填充的类型取决于-virtual-pixel设置。

两个输出组件的动态范围都将适合[0,QuantumRange ],因此不需要启用HDRI。相位值的标称范围为0到2 *π,但会缩放以覆盖整个动态范围。(前几个版本具有未缩放的HDRI,但未缩放的HDRI)。幅度图像未按比例缩放,因此通常将包含非常小的值。这样,图像通常会显得全黑。为了查看任何细节,通常使用对数函数将幅度图像增强为通常所说的频谱。与较亮的值相比,使用对数功能可进一步增强较暗的值。例如,可以这样做,如下所示:

convert fft_image.miff[0] -contrast-stretch 0 \
-evaluate log 1000 fft_image_spectrum.png"

其中或者-contrast拉伸 0或-auto级被用来将图像扩展到全动态范围,第一。-evaluate日志的参数通常在100到10,000之间指定,具体取决于人们希望在频谱中显示的细节量。值越大,产生的可见细节越多。但是,太多的细节可能会隐藏重要的功能。

需要使用-fftFFTW委托库。

使用+ fft生成两个输出图像,它们是复数值傅里叶变换的实部和虚部。

但是,由于实部和虚部可能包含负值,因此需要在IM启用HDRI的情况下配置IM。在这种情况下,对于实数和虚数结果,必须使用MIFF,TIF,PFM或MPC格式,因为它们是既保留负值又保留小数而不裁剪或截断小数部分的格式。使用MIFF或TIF时,应添加-define quantum:format=32,以允许这些图像类型在HDRI模式下正常工作而不会剪切。

+ fft产生的实部和虚部分量图像也是正方形的,甚至是尺寸确定的图像,这是由于与上面针对幅度和相位分量图像讨论的填充相同。

请参阅“高动态范围图像 ”页面上有关ImageMagick的HDRI实现的讨论。有关HDRI的更多信息,请访问ImageMagick 用法页面,Fred的ImageMagick傅立叶处理页面或此Wikipedia 条目。

默认情况下,FFT被归一化(而IFT未归一化)。使用“” -define fourier:normalize=forward可显式标准化FFT,并非标准化IFT。

-fill color

填充图形基元时使用的颜色。

此选项接受颜色名称,十六进制颜色或数字RGB,RGBA,HSL,HSLA,CMYK或CMYKA规范。有关如何正确指定color参数的说明,请参见颜色名称

将颜色规范括在引号中,以防止外壳解释“#”或括号。

例如,

-fill blue
-fill "#ddddff"
-fill "rgb(255,255,255)"

有关更多详细信息,请参见-draw

要打印颜色名称的完整列表,请使用-list color选项。

-filter type

调整图像大小或使图像变形时,请使用这种类型的滤镜。

使用此选项,如操作过程中影响图像的调整操作调整大小-distort。例如,您可以使用简单的调整大小过滤器,例如:

Point Hermite Cubic
Box Gaussian Catrom
Triangle Quadratic Mitchell
CubicSpline

使用-define filter:lobes={2,3,4}指定支持大小的过滤CubicSpline的过滤器。

BesselSinc过滤器还设置(以及更快的SincFast等效形式)。但是,这些过滤器通常是无用的,因为它们是被限制为过滤器支持大小的无限过滤器。不建议直接使用它们,除非通过专家设置(请参阅下文)。

取而代之的是,这些特殊的过滤器功能通常由-filter设置所定义的窗口功能来窗口化。也就是说,使用这些函数将定义一个“Windowed”过滤器,适合所涉及的运算符。窗口过滤器包括:

Lanczos Hamming Parzen
Blackman Kaiser Welsh
Hanning Bartlett Bohman

还提供了一个特殊的自动窗口过滤器 Lagrange,它将根据当前的“支持”或“波瓣”专家设置自动调整其功能(见下文)。

如果未使用此选项选择滤镜,则该滤镜默认 Mitchell用于有色映射的图像,具有遮罩通道的图像或放大的图像。否则,过滤器默认为 Lanczos

要打印调整大小过滤器的完整列表,请使用-list过滤器选项。

您可以使用以下专家设置来修改滤镜在缩放图像时的行为(另请参见-define-set):

-定义filter:blur = factor 缩放过滤器(及其窗口)的X轴。使用> 1.0表示模糊,使用<1.0表示清晰。这仅应与高斯滤波器和类似高斯滤波器的简单滤波器一起使用,否则可能无法获得预期的结果。
-定义过滤器:支持= 半径 设置过滤器支撑半径。定义滤波器应该有多大,从而直接定义滤波后的重采样过程有多慢。所有过滤器均具有默认的“首选”支持大小。有些过滤器(如 Lagrange和窗口式过滤器)会根据此值进行自我调整。对于简单的过滤器,此值要么不执行任何操作(但会降低重采样速度),要么将以有害的方式限制过滤器功能。
-define filter:lobes = count 设置用于Sinc / Bessel滤波器的波瓣数。这是指定滤镜“支持”范围的另一种方法,旨在更适合于窗口滤镜,尤其是在用于图像失真时。
-定义filter:sigma = value 用于定义Gaussian过滤器的“sigma”值。默认的sigma值为' 0.5'。它仅影响Gaussian但不会缩小(但可能会放大)过滤器的“支撑”。它可用于产生非常小的模糊,但不会由于使用小的支持设置而使滤镜“丢失”像素。另一个较大的值是' 0.707'(值为'1 / sqrt(2)')。
-定义过滤器:b = b-spline_factor
-定义过滤器:c = keys_alpha_factor 重新定义用于立方滤波器等的值CubicCatromMitchel,和Hermite,以及所述Parzen立方窗函数。如果仅定义了一个值,则设置另一个值,以生成“立方键”过滤器。值的含义由Mitchell-Netravali的研究论文定义。
-定义过滤器:kaiser-beta = value 用作Kaiser窗口函数一部分的'alpha'值。默认值为“6.5”。它仅影响Kaiser窗口功能,不影响任何其他属性。在ImageMagick v6.7.6-10之前,此选项称为“filter:alpha”(从非常老的“zoom”程序继承而来)。对其进行了更改,以使该功能与更现代的学术研究用途相一致,并更好地赋予它更明确的定义。
-define filter:kaiser-alpha = value 乘以“PI”时,此值等于“kaiser-beta”,并将覆盖该设置。它仅影响Kaiser窗口功能,不影响任何其他属性。
-定义filter:filter = filter_function 将此功能直接用作加权过滤器。这将允许您直接使用诸如的窗口函数作为Blackman重采样过滤器,而不是将其作为窗口函数的常规用法。如果已定义,则也未定义任何窗口函数,窗口函数将设置为Box。直接指定SincJinc 作为过滤器也可以做到这一点。
-定义filter:window = filter_function IIR(无限冲激响应)滤波器,SincJinc使用给定的滤波器加窗(在定义的支持范围内降至零)。这使您可以指定一个过滤器功能,以用作这些IIR过滤器的窗口功能。实际上,许多定义的滤波器是这些IIR滤波器的开窗函数。一个典型的选择是Box,(它实际上关闭了窗口功能)。
-define filter:win-support = radius 将开窗功能缩放到此大小。如果支持窗口大于实际提供给调用操作符的窗口,则这将使窗口(或自窗口拉格朗日过滤器)起作用。但是,过滤器仍会裁剪到给定的实际支撑尺寸。如果未设置,则将等于正常的过滤器支撑尺寸。
-define filter:verbose = 1 这使IM将有关最终内部过滤器选择的信息打印到标准输出。这包括正在使用的过滤器设置上的带注释的标题,以及使过滤器权重易于绘制的数据。但是请注意,某些过滤器是根据其他过滤器内部定义的。的Lanczos例如过滤器在一来定义SincFast窗口SincFast滤波器,而 Mitchell被定义为一般Cubic与特定的“B”家庭滤波器和“C”的设置。

例如,要获得一个8瓣金窗式Sinc滤波器(Genseng滤波器?):

convert image.png \
-filter sinc \
-set filter:window=jinc \
-set filter:lobes=8 \
-resize 150% image.jpg"

或原始的无窗Sinc过滤器有4个瓣:

convert image.png \
-set filter:filter=sinc \
-set filter:lobes=4 \
-resize 150% image.jpg"

要提取原始窗口功能的数据,请将其与' Box'过滤器组合。例如' Welch抛物线窗函数。

convert null: -define filter:filter=Box \
-define filter:window=Welch \
-define filter:support=1.0 \
-define filter:verbose=1 \
-resize 2 null: > window_welch.dat
gnuplot
set grid
plot \"window_welch.dat\" with lines

请注意,已为研究并了解调整大小滤镜工作原理的图像处理专家提供了专家选项的使用。如果没有这些知识,并且不了解所涉及的实际滤镜的定义,则使用专家设置很可能会损害图像的大小。

-flatten

这是-layers方法“flatten” 的简单别名。

-flip

创建一个镜像

沿垂直方向反射扫描线。图像将上下倒置。

-floodfill {+-}x{+-}y color

使用指定偏移量的颜色填充图像。

洪水填充从给定的“种子点”开始,不受重力影响。在给定颜色 参数的-fuzz颜色距离内匹配连接到该“种子点”的任何颜色都将替换为当前的-fill颜色。

请注意,如果“种子点”处的像素本身与给定的颜色不匹配 (根据-fuzz),则不会采取任何措施。

该运算符的工作方式更像-opaque选项,而不是更普通的泛洪填充,后者直接在“种子点”读取匹配的颜色。对于这种形式的泛洪填充,请查看-draw 及其“颜色泛洪”绘制方法。

-flop

创建镜像

像水平反射镜中的图像一样,沿水平方向反射扫描线。

-font name

设置使用文本注释图像或创建标签时使用的字体。

要打印字体的完整列表,请使用-list font 选项(对于6.3.6之前的版本,请使用“type”而不是“font”)。

除了上述预定义列表指定的字体外,您还可以从特定来源指定字体。例如Arial.ttf ,TrueType字体文件,ps:helveticaPostScript字体和 x:fixedX11字体。

有关影响字体的其他设置,请参见-family-stretch-style-weight选项

-foreground color

定义菜单的前景色。“,”显示

使用-fill选项下描述的格式指定颜色。

默认的前景色是黑色。

-format type

图像格式类型。

与该mogrify实用程序一起使用时,此选项会将任何图像转换为您指定的图像格式。有关ImageMagick支持的图像格式类型的列表,请使用-list format

默认情况下,文件被写入其原始名称。但是,如果文件扩展名匹配支持的格式,则该扩展名将替换为-format指定的图像格式类型。例如,如果您将tiff指定为格式类型,并且输入图像文件名是image.gif,则输出图像文件名将变成image.tiff

-format string

输出格式化的图像特征。

有关如何为该选项指定参数的说明,请参见格式化和打印图像属性

-frame geometry

用边框或斜角框包围图像。

边框的颜色是通过-mattecolor命令行选项指定的。

有关-geometry参数的完整详细信息,请参见图像几何geometry参数的size部分指示添加到图像尺寸的额外宽度和高度。如果几何参数中未提供偏移量,则添加的边框为纯色。偏移xy(如果存在)指定将边框的宽度和高度分开以形成厚度x像素的外部斜角和厚度y像素的内部斜角 。负偏移量作为框架参数没有意义。

-frame选项由电流的影响-compose设置并假定这是使用默认的“Over”组合物的方法。它使用current -bordercolor设置生成适当大小的图像,然后绘制接近当前-mattecolor的四种不同颜色的帧。然后将原始图像叠加到该图像的中心。这意味着使用默认的compose方法' Over',任何透明部分都可以被当前的-bordercolor设置替换。

图像构图不受-gravity选项的影响。

-frame

在导入的图像中包括X窗口框架。

-function function parameters

将函数应用于通道值。

该运算符根据给定的参数执行计算,以修改图像中每个先前设置的通道的每个颜色值。有关如何处理计算结果的详细信息,请参见-evaluate

可以将其视为-evaluate运算符的多参数版本。(在ImageMagick 6.4.8?8中添加。)

在这里, 参数是逗号分隔的数值列表。值的数量取决于选择的功能。从以下功能中选择:

Polynomial
Sinusoid
Arcsin
Arctan

要打印-function运算符的完整列表,请使用-list function。说明如下。

Polynomial

Polynomial函数采用降序的任意数量的参数,这些参数是多项式的系数。也就是说,进入

-function Polynomial an,an-1,...a1,a0

将调用由给出的多项式函数

an un + an-1 un-1 + ··· a1 u + a0,

其中u是像素的原始归一化通道值。

Polynomial功能可以代替使用Set (在恒定多项式)和AddDivideMultiply,和Subtract(一些线性 的的多项式)-evaluate运算符。该-level操作也影响通道线性。随后是一些对应关系。

- 评估设定value 函数多项式value (恒定功能;当通道为RGB时,设置值为 ×100%灰色。)
- 评估增值 函数多项式1,value
- 评估减值 函数多项式1,? value
- 评估数值 函数多项式value,0
+等级黑色%x白色% 函数多项式A,B (降低对比度。这里,A =(白黑)/ 100,B =黑/ 100。)

Polynomial函数具有极大的通用性,因为可以使用多项式将任意连续曲线拟合到所需的任何精度。

Sinusoid

Sinusoid功能可用于通过设置频率,相移,幅度和偏置来正弦变化通道值。这些值由一到四个参数给出,如下所示:

-function Sinusoid freq,[phase,[amp,[bias]]]

其中是在度。(函数的域[0,1]对应于0到频率 ×360度。)结果是,如果像素的归一化通道值最初为 u,则得到的归一化值由下式给出:

amp * sin(2*π* (freq * u + phase / 360)) + bias

例如,以下代码生成一条曲线,该曲线在0.9(当u = 0和1时,分别为0.9)处开始和结束,在.7-.2 = .5和.7 + .2 = .9之间振荡三次。

-function Sinusoid 3,-90,.2,.7

ampbias的默认值均为0.5。阶段的默认 值为0。

Sinusoid功能概括SinCos所述的-evaluate通过允许不同的幅度,相位和偏置运算符。对应关系如下。

-评估罪恶频率 函数正弦曲线频率,0
评估Cos 频率 函数正弦频率,90
ArcSin

ArcSin函数生成正弦曲线的反曲线,并可以用于生成圆柱变形和位移图。可以相对于输入值和输出值范围调整曲线。

-function ArcSin width,[center,[range,[bias]]]

所有值均以归一化颜色值(黑色为0.0,白色为1.0)给出。默认值覆盖bout输入(width)和输出(width)值的0.0到1.0的整个范围。' 1.0,0.5,1.0,0.5'

range/π * asin( 2/width * ( u - center ) ) + bias

ArcTan

ArcTan函数将生成一条曲线,该曲线可以平滑无穷大的极限值,即使中心使用给定的斜率值也可以使该极限平滑。所有这些值都可以通过参数进行调整。

-function ArcTan slope,[center,[range,[bias]]]

默认为“1.0,0.5,1.0,0.5”。

range/π * atan( slope*π * ( u - center ) ) + bias

-fuzz distance{%}

在此距离内的颜色视为相等。

许多算法搜索目标颜色。默认情况下,颜色必须准确。使用此选项可以匹配接近RGB空间中目标颜色的颜色。例如,如果要使用-trim自动修剪图像的边缘,但是扫描了图像并且目标背景色可能会有少量差异。此选项可以解决这些差异。

距离可以是在绝对强度单位或,通过附加%以最大可能强度(255,65535,或4294967295)的百分比。

使用+ fuzz将模糊值重置为0。

-fx expression

将数学表达式应用于图像或图像通道。

如果expression的第一个字符是@,则从以字符串中其余字符为标题的文件中读取表达式。

有关此选项的详细讨论,请参见FX,特殊效果图像运算符

-gamma value

伽玛校正水平。

由于显示监视器的差异,在两个不同的工作站上显示的同一彩色图像可能看起来有所不同。使用伽玛校正来调整此色差。合理的值从扩展 0.82.3。小于1.0的Gamma会使图像变暗,大于1.0的Gamma会使图像变暗。如果像素量子大小仅为8位(量子范围0到255),则对图像伽玛值的较大调整可能会导致某些图像信息丢失。

Gamma根据幂定律逐像素调整图像的通道值,即pow(pixel,1 / gamma)或pixel ^(1 / gamma),其中pixel是归一化或0到1的颜色值。例如,使用gamma = 2的值与获取图像的平方根相同。

使用+伽玛value设置图像伽玛等级,而无需实际调整图像像素。如果图像具有已知的伽玛值但未设置为图像属性(例如PNG图像),则此选项很有用。编写“文件伽玛”,它是显示伽玛的倒数;例如,如果您的图像是sRGB,并且您想编写一个PNG gAMA块,请使用

convert input.png +gamma .45455 output.png

(0.45455是1 / 2.2)

请注意,也可以通过-level运算符进行伽玛调整。

-gaussian-blur radius
-gaussian-blur radiusxsigma

用高斯算子模糊图像。

使用给定的Sigma值对图像进行高斯或正态分布卷积 。公式为:

高斯分布

西格玛值是重要的参数,并且确定模糊处理将发生的实际量。

半径仅用于确定将保持所计算出的高斯分布的阵列的大小。它应该是一个整数。如果未给出或设置为零,则IM将计算可能的最大半径,这将为高斯分布提供有意义的结果。

半径越大,操作越慢。但是,Radius太小,可能会导致严重的混叠效果。作为准则,半径 应至少为Sigma值的两倍,但三倍会产生更准确的结果。

这与快速模糊运算符的不同之处在于,使用完整的二维卷积生成相邻像素的加权平均值。

-虚拟像素设定将确定它们是图像之外的像素如何正确模糊成最终结果。

-geometry geometry

设置图像的首选尺寸和位置。

有关-geometry参数的完整详细信息,请参见图像几何

-gravity type

为其他各种设置和选项设置当前重力建议。

选项包括:NorthWestNorthNorthEastWestCenterEastSouthWestSouthSouthEast。使用-list重力可以获取ImageMagick安装中可用的-gravity设置的完整列表。

您选择的方向指定了放置文本或子图像的位置。例如,重力会Center迫使文本在图像内居中。默认情况下,图像重力为undefined。有关图形基元的更多详细信息,请参见-draw-gravity选项仅影响-draw的文本基元。

-gravity选项也被用在演唱会与 -geometry设置和其他设置,或者采取选择几何作为参数,如-crop选项。

如果-gravity设置发生在另一个选项或具有指定偏移量的几何参数的设置之前,则通常将偏移量应用于-gravity参数建议的图像中的点。因此,例如,在以下命令中,假设文件的image.png尺寸为200x100。-region参数指定的偏移量 是(?40,+ 20)。-gravity的参数是 Center,它表示图像的中点(100,50)。将偏移(?40,20)应用于该点,得到(100?40,50 + 20)=(60,70),因此指定的10x10区域位于该点。(此外,-gravity影响区域本身,即像素坐标(60,70)为中心。(有关-geometry参数的完整详细信息,请参见“图像几何 ” 。)

convert image.png -gravity Center -region 10x10-40+20 \
-negate output.png

当用作合成的选项时,-gravity给出图像在合成内引力的方向。

当用作蒙太奇的选项时,-gravity给出图像在瓷砖内引力的方向。默认重力Center为此目的。

使用+ gravity将重力恢复为其默认值。

-grayscale method

将图像转换为灰度。

这将使用-intensity方法之一将给定的图像转换为灰度图像。

例如,要将图像转换为(线性)Rec709Luminance灰度,请键入:

convert in.png -grayscale Rec709Luminance out.png

等效于:

convert in.png -colorspace RGB -colorspace Gray out.png
要么
convert in.png -colorspace LinearGray out.png

请注意,LinearGray是Imagemagick 6.9.9-29和7.0.7-17的新功能。

同样,要将图像转换为(非线性)Rec709Luma灰度,请键入:

convert in.png -grayscale Rec709Luma out.png

等效于:

convert in.png -colorspace Gray out.png

请注意,“颜色空间”强度方法将产生相同的结果,而不管图像当前的色度如何。但是“数学”强度方法取决于图像当前使用的当前色彩空间。

尽管此操作使用-intensity方法,但是它不使用或设置-intensity设置,因此不会影响可能使用该设置的其他操作。

-green-primary x,y

绿色色度主要点。

-hald-clut

将Hald颜色查找表应用于图像。

Hald颜色查找表是映射到2维的3维颜色立方体。使用HALD:前缀创建它(例如HALD:8)。您可以将任何颜色转换应用到Hald图像,然后使用此选项将转换应用到图像。

convert image.png hald.png -hald-clut transform.png

此选项为您提供了一种方便的方法,使您可以使用Gimp或Photoshop对Hald CLUT图像进行色彩校正,然后使用ImageMagick脚本将其应用于多个图像。

注意,该表示仅是正常RGB颜色空间的表示,并且整个颜色值三元组用于所表示的Hald彩色立方体图像的插值查找。因此,该操作不受-channel设置的影响,也无法调整或修改图像透明度或alpha / matte通道。

另请参见-clut,它提供了各个颜色通道的颜色值替换,通常涉及更简单的灰度图像。例如:从灰度到颜色替换,或通过直方图映射进行修改。

-help

打印使用说明。

-highlight-color color

比较图像时,请强调此颜色的像素差异。

-hough-lines widthxheight{+threshold}

标识图像中的直线(例如-hough-lines 9x9 + 195)。

将霍夫线检测器与任何二进制边缘提取的图像一起使用,以找到并绘制找到的任何直线。

该过程针对每个可能的方向(以1度为增量从0到179的角度)和从图像中心到拐角的距离(以1 px为增量)累积二进制边缘图像中每个白色像素的计数。它将计数存储在角度与距离的累加器矩阵中。累加器的大小将为180x(对角线/ 2)。接下来,它在累加器中搜索计数的峰值,并将峰值的位置转换为在正常的x,y输入图像空间中倾斜并截取的位置。该算法使用斜率/截距来查找裁剪到图像边界的端点。线是从给定的端点绘制的。计数是行长度的度量。

WxH参数指定用于在霍夫累加器中定位峰的滤波器大小。阈值不包括计数小于阈值的行。

使用-background指定到该线将绘制的背景颜色。默认为黑色。

使用-fill指定线的颜色。默认为黑色。

使用-stroke-strokewidth指定线条的粗细。默认值为黑色,无笔触宽度。

列出端点和计数的文本文件可以通过使用后缀.mvg创建,用于输出图像。

-define hough-lines:accumulator=true在除了线图像返回累加器图像。

-iconGeometry geometry

指定图标的几何形状。

如果偏移量存在于几何图形规范中,则使用与-geometry选项相同的方式进行处理,使用X11样式处理负偏移量。

有关-geometry参数的完整详细信息,请参见图像几何

-iconic

在X Windows中以图标模式启动”,“动画”,“显示

-identify

识别图像的格式和特征。

打印此信息:图像场景编号;图片名称;图片大小; 图像类(DirectClassPseudoClass);独特颜色的总数;以及读取和转换图像的秒数。有关图像类的描述,请参考MIFF

如果还指定了-colors,则将打印图像中的总唯一颜色和颜色减少错误值。有关这些值的说明,请参阅减色算法

如果-verbose在此选项之前,则显示大量图像属性,包括图像统计信息,配置文件,图像直方图等。

-ift

实现离散傅立叶反变换(DFT)。

此选项是ImageMagick 6.5.4-3的新增功能(现在适用于ImageMagick 6.6.0-9中的Windows用户)。它将一对幅度和相位图像从频域转换为正常或空间域中的单个图像。例如,参见傅立叶变换离散傅立叶变换快速傅立叶变换

例如,根据用于存储-fft结果的图像格式,可以使用其中一种

convert fft_image.miff -ift fft_image_ift.png

要么

convert fft_image-0.png fft_image-1.png -ift fft_image_ift.png

由于在-fft+ fft之前的原始图像不是正方形甚至没有尺寸的情况下引入了填充,因此可能需要裁剪生成的图像。任何填充都在图像的右侧和/或底部。

FFTW委托库需要使用-ift

使用+ ift(启用HDRI)可将一对真实和虚像图像从频域转换为法向(空间)域中的单个图像。

默认情况下,IFT未标准化(FFT是)。使用“” -define fourier:normalize=inverse可显式标准化IFT并使FFT非标准化。

-immutable

使图像不可变。

-implode factor

围绕中心放置图像像素。

-insert index

将最后一张图像插入图像序列。

此选项获取当前图像序列中的最后一张图像,并将其插入给定索引。如果使用负索引,则在从序列中删除最后一张图像之前计算插入位置。因此, -insert -1将不会更改图像序列。

+insert选项等效于-insert -1。换句话说,在当前图像序列的末尾插入最后一个图像。因此,这对图像序列顺序没有影响。

-intensity method

从像素生成强度值的方法。

ImageMagick提供了许多方法,用于操作符出于某种目的需要从具有红色,绿色和蓝色像素分量的图像中确定单个灰度值的情况。通常使用 Rec709Luma公式,该公式与将图像转换为时使用的公式相同-colorspace gray

当前提供以下公式,这些公式将首先将像素值转换为线性RGB或非线性sRGB色彩空间,然后再将其应用于计算最终灰度值。

Rec601Luma
0.298839R'+ 0.586811G'+ 0.114350B'
Rec601Luminance
0.298839R + 0.586811G + 0.114350B
Rec709Luma
0.212656R'+ 0.715158G'+ 0.072186B'
Rec709Luminance
0.212656R + 0.715158G + 0.072186B
Brightness
最大(R',G',B')
Lightness
(min(R',G',B')+ max(R',G',B'))/ 2.0

请注意,上述R,G,B值是图像的线性RGB值,而R',G',B'是sRGB非线性值。

这些强度方法本质上是数学的,并且将使用图像中相应的R,G,B通道中的当前值,而不管图像当前正在使用什么颜色空间或当前使用什么颜色空间。

Average
(R'+ G'+ B')/ 3.0
MS
(R'^ 2 + G'^ 2 + B'^ 2)/ 3.0
RMS
sqrt((R'^ 2 + G'^ 2 + B'^ 2)/ 3.0)

这些方法通常用于其他目的,例如在两个彩色图像之间生成灰度差异图像(使用-compose ' Difference'合成)。

例如,“MS”(均方)设置可以最大程度地减少颜色误差比较。同时...例如,“RMS”(均方根)方法适用于根据色差图像计算颜色矢量距离。这等效于-fuzz因子颜色比较设置的仅颜色组件。

另请参见-grayscale,它无需设置-intensity设置即可将上述灰度缩放公式之一直接应用于图像。

所述-colorspace灰色图像转换也使用电流强度设置,但将底肥上述功能之前的图像总是转换为适当的sRGB或线性RGB色彩。

要打印可能的像素强度设置方法的完整列表,请使用-list strength

-intensity设置影响的操作符包括:

-adaptive-blur
-adaptive-sharpen
-black-threshold
-clut (when mapping greyscale CLUT image to alpha channel if set by -channels)
-colors for gray colorspace
-compose {LightenIntensity, DarkenIntensity, CopyOpacity, CopyBlack}
-contrast-stretch
-distort {ErodeIntensity, DilateIntensity}
-normalize
-random-threshold
-range-threshold
-selective-blur
-shade
-threshold
-tint
-white-threshold

-intent type

在管理图像颜色时使用这种类型的渲染方法。

使用此选项可以影响图像的颜色管理操作(请参见 -profile)。从以下意图中进行选择:Absolute, Perceptual, Relative, Saturation

对于sRGB色彩空间,默认意图是Perceptual,对于RGB和灰色色彩空间,默认意图是undefined。

要打印渲染意图的完整列表,请使用-list intent

-interlace type

隔行扫描方案的类型。

从中选择:

none
line
plane
partition
JPEG
GIF
PNG

此选项用于为诸如RGB或的原始图像格式指定隔行扫描方案的类型YUV

None 表示不要隔行扫描(RGBRGBRGBRGBRGBRGB ...),

Line 使用扫描线隔行扫描(RRR ... GGG ... BBB ... RRR ... GGG ... BBB ...)

Plane 使用平面隔行扫描(RRRRRR ... GGGGGG ... BBBBBB ...)。

Partition 除了将不同的平面保存到单独的文件(例如image.R,image.G和image.B)之外,它就像飞机。

使用LinePlane创建一个interlaced PNGGIFprogressive JPEG图像。

要打印隔行扫描方案的完整列表,请使用-list interlace

-interpolate type

设置在基于浮点或实数值查找颜色时要使用的像素颜色插值方法。

使用非整数浮点值查找像素的颜色时,通常会介于源图像定义的像素颜色之间。此设置确定如何根据该点周围像素的颜色确定颜色。这就是如何确定落在两个甚至四个不同颜色像素之间的点的颜色。

average
周围四个像素的平均颜色
average4
周围四个像素的平均颜色
average9
周围九个像素的平均颜色
average16
周围十六个像素的平均颜色
background
 
bilinear
像素的双线性插值(默认)
blend
 
catrom
拟合的16像素双三次脊柱
integer
左上像素的颜色(下标功能)
mesh
将区域分为两个平面三角形插值
nearest-neighbor
距查找点最近的像素(四舍五入函数)
spline
直接样条曲线(颜色模糊)

失真等运营商这个最重要的-distort-implode-transform-fx

要打印插值方法的完整列表,请使用-list interpolate

另请参见-virtual-pixel,以控制对图像边界之外位置的查找。

-interline-spacing value

两行文字之间的间隔。

-interword-spacing value

两个词之间的空格。

-kerning value

两个字母之间的空格。

-kuwahara radius
-kuwahara radiusxsigma

边缘保留降噪滤波器。

半径比更重要西格玛。如果不使用sigma,它将自动根据sigma = radius -0.5 的半径进行计算。该西格玛提供了位附加平滑的控制。

-label name

为图像分配标签。

使用此选项,可以在读取或创建图像时为图像分配特定的标签。您可以使用-set操作来重新分配已读取的图像的标签。TIFF,PNG,MIFF等图像格式支持将标签信息与图像一起保存。

将图像保存到PostScript文件时,分配给图像的任何标签都用作标题字符串,以在后记图像上方打印。

您可以通过嵌入特殊格式字符来包含图像文件名,类型,宽度,高度或其他图像属性。有关转义百分比代码的详细信息,请参见格式化和打印图像属性

例如,

-label "%m:%f %wx%h" bird.miff

为读入MIFF:bird.miff 512x480的“bird.miff”图像分配一个图像标签,其宽度为512,高度为480。如果 改用+ label选项,则将使用图像中存在的任何现有标签。您可以通过分配空字符串来删除图像中的所有标签。

标签没有绘制在图像上,而是通过Label标签或类似机制嵌入到图像数据流中。如果希望标签在图像本身上可见,请使用-draw选项,或者在创建图像蒙太奇的最后处理过程中使用。

如果string的第一个字符为@,则从文件中读取图像标签,该文件以字符串中的其余字符作为标题。文件中的标签为文字,不能识别嵌入的格式字符。

-lat width
-lat widthxheight{+-}offset{%}

执行本地自适应阈值。

根据周围窗口中像素的值自适应地对每个像素进行阈值处理。如果当前像素比此平均值加上可选像素要浅offset,则将其设置为白色,否则将设置为黑色。如果偏移为正,则可以忽略像素值的细微变化(例如在扫描的文档中发现)。负偏移将使其对那些小的变化更加敏感。

这通常用于对背景不均匀的图像进行阈值处理。它基于以下假设:小窗口的平均颜色是局部背景色,从中可以分离出前景色。

-layers method

处理多个图像,形成一组图像层或动画帧。

对有序的图像序列执行各种图像操作方法,这些序列可以表示一组重叠的“图像层”,GIF处理动画或完全“合并”的动画序列。

方法 描述
比较-任何 将第二帧和以后的帧裁剪为包含两个图像之间所有差异的最小矩形。没有考虑GIF 处理方法。
这与-deconstruct运算符完全相同,并且不会保留动画的正常工作,尤其是当动画使用诸如“Previous”或“Background”之类的图层处理方法时。
比较清晰 为' compare-any',但裁剪到在第二帧中变得透明的所有不透明像素的边界。那是遮盖或擦除下一帧像素所需的最小图像。
比较叠加 为' compare-any',但由于覆盖彩色像素,裁剪到为下一张图像添加额外颜色的像素。那是添加或更改颜色的最小的单个重叠图像。
可以与-compose alpha composition method' change-mask'一起使用,以将图像缩小为仅需要覆盖的像素。
合并 等效于-coalesce运算符的调用。应用在当前图像序列中设置的图层处理方法以形成应定义的完整动画序列,因为它应该显示出来。有效地将GIF动画转换为类似“电影地带”的动画。
综合 Alpha组成的两个图像列表,以“null:”图像分隔,首先是目标图像列表,最后是源图像。将每个列表中的图像合成在一起,直到完成一个列表。分隔符图像和源图像列表将被删除。
所述-geometry偏移根据调整-gravity根据在每个列表中的第一图像的虚拟画布的大小。不同于正常-复合操作中,画布偏移也被添加到每个图像的最终复合材料的定位。
如果其中一个图像列表仅包含一个图像,则该图像将应用于另一个图像列表中的所有图像,而不管它是哪个列表。在这种情况下,将保留列表的图像元数据。
部署 类似于“coalesce”,但显示了在应用了图层处理方法之后,在覆盖下一个子帧图像之前动画的外观。那就是应用GIF -dispose方法产生的“dispose”图像。这使您可以检查可能正在开发的特定动画出了什么问题。
弄平 创建画布使用当前第一图像虚拟画布的大小-background颜色和-compose依次在每个图像到该画布。属于该画布的图像将被剪切。最终图像的虚拟画布偏移为零。
这通常用作最终的“图像分层”操作之一,将所有准备好的图像层覆盖到最终图像中。
对于单个图像,该方法还可以用于用真实像素填充虚拟画布,或为不透明颜色加底以从图像中去除透明度。
合并 作为“扁平化”方法,但是合并所有给定的图像图层以创建一个新的图层图像,该图像刚好足以容纳所有图像而不会剪切或多余空间。新图像虚拟偏移量将保留新图层的位置,即使该偏移量为负。保留第一个图像的虚拟画布大小。
处理负偏移的图像层时应谨慎,因为很少有图像文件格式可以正确处理它们。在此带有+ repage的操作方法之后, 将删除图层偏移,并创建一个图像,在该图像中,相对于彼此的所有重叠图像位置都将保留,尽管不一定精确地指定它们的位置。
另请参见下面的“修剪边界”,它们紧密相关,但没有进行“展平”以将图像合并在一起。
镶嵌 作为“展平”方法,但仅在正方向上扩展第一张图像的初始画布大小,以便保留所有图像层。但是,当虚拟画布“锁定”到原点时,按照其自己的定义,具有负偏移的图像层仍会被顶部和左侧边缘剪裁。如果可能会出现问题,请参阅“合并”或“修剪界限”。
此方法通常用于使用各种偏移量布局单个图像,但不知道最终的画布大小。生成的图像将像“展平”一样没有任何虚拟偏移,因此可以保存为任何图像文件格式。
优化 使用多种常规技术将合并的动画优化为GIF动画。目前这是同时应用“optimize-frame”和“optimize-transparency”方法的捷径,但在开发时可能会扩展为包括其他优化方法。
优化帧 通过尝试选择要使用的最佳图层处理方法来尽可能减少每帧像素的数量,将合并的动画优化为GIF动画,同时确保结果将继续正确地进行动画处理。
不能保证找到最佳的优化。但是,没有合理快速的GIF优化算法可以做到这一点。但是,这似乎比大多数其他GIF帧优化器要好。
优化加 为' optimize-frame,但尝试通过向动画添加额外的帧来改善整体优化,而不更改动画的最终外观或时间。添加这些帧以尝试从一个动画帧到下一个动画帧中,清除像素与清除新的其他像素。如果这不能改善优化效果(仅适用于下一帧),它将退回到先前的正常optimize-frame技术的结果。
处置方式的改变可能会导致后期帧的优化恶化,尽管这种可能性不大。换句话说,不能保证它比普通的“optimize-frame”技术更好。但是,对于某些动画,您可以在最终动画大小上获得巨大的改进。
优化透明度 给定一个GIF动画,如果子帧覆盖图像中的任何像素对当前动画的改变不超过当前的-fuzz因子,则将其替换为透明度。
由于较大的一种(透明)颜色区域,而不是重复上一帧的当前已放置图像的多种颜色模式,这应该允许现有的经过帧优化的GIF动画压缩为较小的文件大小。
除去-的DUP 删除重复的连续图像(并合并延时),以简化合并动画的图层叠加。
通常,这是在整个动画中使用恒定时间延迟的结果,或者是将较大的动画拆分为较小的子动画之后的结果。重复的帧也可以用作某些帧优化方法的一部分。
除去零 删除任何延迟时间为零的图像,除非所有图像的延迟时间为零(并且不是正确的定时动画,然后会发出警告)。
在GIF动画中,此类图像通常是帧,在实际显示给用户的帧之间提供部分中间更新。通常添加这些帧是为了改善GIF动画中的帧优化。
修剪界 找到当前图像序列中所有图像的边界,然后调整偏移量,以便将所有图像包含在最小的正画布上。没有图像数据被修改或合并,只有单个图像虚拟画布的大小和偏移量被修改或合并。所有图像都具有相同的画布大小,并且将具有正偏移,但彼此之间将保持在相同的位置。由于最小的画布大小,至少一个图像将接触该画布的每个边缘。然而,触摸那些边缘的图像数据可以是透明的。
其结果与您使用“合并”后跟+ repage选项的效果非常相似 ,不同之处在于所有图像均保持分开。如果在使用“修剪界限”之后使用“展平”,您将得到相同的结果。

要打印层类型的完整列表,请使用-listlayers

运算符-coalesce-deconstruct-flatten-mosaic只是上述方法的别名,以后可能会贬值。另请参见 -page-repage运算符,-compose设置以及GIF -dispose-delay 设置。

-level black_point{,white_point}{%}{,gamma}

调整图像通道的水平。

给定一个,两个或三个用逗号分隔的值:黑点,白点,伽玛(例如:10,250,1.0或2%,98%,0.5)。黑白点的范围是0到QuantumRange或0到100%;如果省略白点,则将其设置为(QuantumRange -black_point),以使中心对比度发生变化。如果%字符串中的任何位置都存在符号,则黑白点均为全色范围的百分比。Gamma将对值进行-gamma调整。如果省略,则默认为1.0(无伽玛校正)。

在正常使用(-level)中,将拉伸图像值,以便black_point将原始图像中的给定值设置为零(或黑色),而给定white_point的值设置为QuantumRange(或白色)。这样可以直接调整图像的对比度。gamma然后将调整结果图像的“”。

从ImageMagick v6.4.1-9开始,使用运算符(+level)的加号形式或添加特殊的“!” 标记在参数列表中的任何位置,将使操作符进行电平调整的相反操作。这是原始图像中的零值或QuantumRange值(分别是黑色和白色),已调整为给定的电平值,从而可以进行反对比度或压缩图像中的通道值。gamma在进行电平调整以对图像进行反衬之前先对“”进行调整。

仅 调整由当前-channel设置定义的通道(仅默认为RGB颜色通道),从而可以限制此操作符的效果。

请注意,透明度通道被视为“遮罩”值(0为不透明),而不是“alpha”值(0为透明)。

-level-colors {black_color}{,}{white_color}

使用提供的破折号分隔的颜色调整图像的级别。

此功能与-level完全一样,除了每个颜色通道的值由给定的' black_color'和' white_color'颜色确定(如-fill选项所述)。

这实际上意味着提供给它们的颜色分别-level-colors 映射为“黑色”和“白色”,而所有其他颜色都进行了线性调整(或修剪)以匹配该更改。使用指定颜色的通道值分别调整每个通道。

另一方面,运算符(+level-colors)的加号形式会将图像颜色“黑色”和“白色”分别映射到给定的颜色,从而导致图像与这些颜色的渐变(反对比度)。也可以使用指定的颜色渐变将普通的灰度图像转换为一个灰度图像。

通过在该颜色之前或之后为该颜色提供逗号分隔符,将仅分别替换相应的“黑色”或“白色”点。但是,如果未提供逗号分隔符,则给定的颜色将同时用于黑色和白色色点,从而使操作符可以阈值该颜色附近的图像(-形式)或将所有颜色设置为该颜色(+形式)。

-limit type value

设置像素缓存资源限制。

选择:widthheightareamemorymapdiskfilethreadthrottle,或time

的值以file文件数为单位。其他限制以字节为单位。使用SI前缀(例如100MB)为内存,映射,区域和磁盘资源限制定义参数。

默认情况下,限制为768个文件,3GB的图像区域,1.5GiB内存,3GiB内存映射和18.45EB的磁盘。如果有此信息,则会根据计算机上的可用资源来调整这些限制。当达到任何限制时,ImageMagick都会以某种方式失败,但会尝试采取补偿措施(如果可能)。例如,以下限制了内存:

-limit memory 32MiB -limit map 64MiB

使用-list资源列出当前限制。例如,我们的系统显示以下限制:

-> identify -list resource
Resource limits:
Width: 100MP
Height: 100MP
Area: 25.181GB
Memory: 11.726GiB
Map: 23.452GiB
Disk: unlimited
File: 768
Thread: 12
Throttle: 0
Time: unlimited

像素存储以保留中间图像的请求由以下三种资源类别之一满足:内存池,内存映射文件池和磁盘池(按此顺序),具体取决于限制设置以及系统是否遵循资源请求。如果给定池中分配的像素存储的总大小达到相应的限制,则请求将传递到下一个池。此外,超出area限制的请求会 自动分配到磁盘上。

为了说明ImageMagick如何利用资源限制,请考虑典型的图像资源请求。首先,ImageMagick尝试分配内存中的像素。如果资源请求超出memory限制,或者系统不接受该请求,则该请求可能会被拒绝 。如果不满足内存请求,则将像素分配给磁盘,并对该文件进行内存映射。但是,如果分配请求超出 map限制,则资源分配将进入磁盘。在所有情况下,如果资源请求超出area限制,像素将自动缓存到磁盘。如果磁盘有硬限制,则程序将失败。

在大多数情况下,您根本不需要担心资源限制。ImageMagick选择合理的默认值,并且大多数图像不会占用您的计算机资源。在处理大型图像或在共享系统上使用ImageMagick可以消耗全部或大部分可用内存的限制时,使用限制确实有用。在这种情况下,ImageMagick工作流程会减慢其他过程的速度,或者在极端情况下会使系统停止运行。在这种情况下,设置限制可以确保ImageMagick工作流不会干扰计算机的其他并发使用。例如,假设您具有处理从Internet上传的图像的Web界面。为了确保ImageMagick不会超过10MiB的内存,您可以简单地将区域限制设置为10MiB:

-limit area 10MB

现在,无论何时处理大图像,像素都会自动缓存到磁盘而不是内存中。当然,这意味着大图像的处理速度通常非常慢,这仅仅是因为内存中的像素处理可能比磁盘上的像素处理快一个数量级。因为您的网站用户可能会无意中上传一个巨大的图像进行处理,所以您还应该设置磁盘限制:

-limit area 10MB -limit disk 500MB

如果图像需要500MB以上的磁盘存储,则ImageMagick会在此处停止处理。

除了命令行资源限制选项外,还可以使用环境变量来设置资源。设置的环境变量MAGICK_AREA_LIMITMAGICK_DISK_LIMITMAGICK_FILE_LIMITMAGICK_MEMORY_LIMITMAGICK_MAP_LIMITMAGICK_THREAD_LIMITMAGICK_TIME_LIMIT对图像区域,磁盘空间,打开文件,堆内存,存储器映射,执行的线程的数目,并分别以秒最大经过的时间的限制。

好奇的用户可以尝试在命令中添加-debug缓存,然后在生成的输出中搜索像素缓存的引用,以确定像素缓存的分配方式和资源消耗方式。高级Unix / Linux用户可以通过管道grep memory|open|destroy|disk传输输出,以提高可读性。

有关ImageMagick使用资源的更多信息,请参见“体系结构”页面上的“缓存存储和资源要求 ”部分。

-linear-stretch black-point
-linear-stretch black-point{xwhite-point}{%}

具有饱和拉伸的线性。

这与-contrast-stretch非常相似,并使用“直方图bin”来确定需要拉伸的颜色值的范围。但是,它随后使用-level运算符拉伸了这些颜色。

这样,尽管初始确定可能具有“合并”舍入效果,但可以通过数学方式拉伸图像颜色,而不是使用直方图合并。这使操作符更加准确。

但是请注意,'- ' 的-linear-stretch0不会执行任何操作,而' 1' 的值则会执行几乎完美的颜色范围扩展。

另请参阅-auto-level以获取数学图像的“完美”规范化。

该运营商正在接受重新开发的审查。

-linewidth

后续绘制操作的线宽。

-liquid-rescale geometry

用缝雕刻重新缩放图像。

有关-geometry参数的完整详细信息,请参见图像几何

-list type

打印各种选项或设置支持的参数列表。从以下列表类型中选择:


Align
Alpha
Boolean
Cache
Channel
Class
ClipPath
Coder
Color
Colorspace
Command
Complex
Compose
Compress
Configure
DataType
Debug
Decoration
Delegate
Direction
Dispose
Distort
Dither
Endian
Evaluate
FillRule
Filter
Font
Format
Function
Gravity
Intensity
Intent
Interlace
Interpolate
Kernel
Layers
LineCap
LineJoin
List
Locale
LogEvent
Log
Magic
Method
Metric
Mime
Mode
Morphology
Module
Noise
Orientation
PixelIntensity
Policy
PolicyDomain
PolicyRights
Preview
Primitive
QuantumFormat
Resource
SparseColor
Statistic
Storage
Stretch
Style
Threshold
Type
Units
Validate
VirtualPixel

这些列表取决于您的ImageMagick版本。使用“-list list”获取所有-list可用的“”参数的完整列表:

identify -list list

-log string

指定调试日志的格式。

该选项指定-debug选项处于活动状态时打印的日志的格式。

您可以通过嵌入特殊格式的字符来显示以下组件:

%d
%e
事件
%f
功能
%l
线
%m
%p
进程ID
%r
实际CPU时间
%t
挂钟时间
%u
用户CPU时间
%%
百分号
\n
新队
\r
回车

例如:

convert -debug coder -log "%u %m:%l %e" in.gif out.png

默认行为是打印所有组件。

-loop iterations

将Netscape循环扩展名添加到GIF动画中。

将迭代次数设置为零可重复动画无限次,否则动画将自身重复最多迭代 次数。

-lowlight-color color

比较图像时,请不要再强调这种颜色的像素差异。

-magnify

使用像素缩放比例将图像大小增加一倍或三倍。使用从以下方法中选择来指定替代缩放方法:。默认值为scale2X。-define magnify:method=methodeagle2X, eagle3X, eagle3XB, epb2X, fish2X, hq2X, scale2X, scale3X, xbr2X

-map type

使用此类型显示图像。

从以下标准颜色图类型中选择:

best
default
gray
red
green
blue

X服务器必须支持的标准颜色表您选择,否则会出现错误。使用list的类型和display搜索色彩表类型的列表 top-to-bottom顺序,直到一个的位置。有关创建标准色图的一种方法,请参见xstdcmap(1)

-map components

像素图。

这是地图的有效组成部分:

r
红色像素成分
g
绿色像素分量
b
蓝色像素分量
a
alpha像素分量(0是透明的)
o
不透明度像素分量(0是不透明的)
i
灰度强度像素分量
c
青色像素分量
m
洋红色像素分量
y
黄色像素分量
k
黑色像素成分
p
打击垫组件(始终为0)

您可以按需要按任意顺序指定任意数量的这些组件(例如bgr)。这些组件也可以重复(例如rgbr)。

-mattecolor color

-frame选项指定要使用的颜色。

使用-fill选项下描述的格式指定颜色。

默认的亚光色是#BDBDBD这种色度的灰色

-maximum

返回图像序列的最大强度。

从所有周围的像素中选择“最大值”值。

这是同名方法的旧选项。

-median geometry

对图像应用中值滤镜。

从所有周围的像素中选择“中间”值。

这是同名方法的旧选项。

-mean-shift widthxheight{+distance{%}

图像噪点消除和色彩减少/细分(例如-平均偏移7x7 + 10%)。

width x height是窗口大小,而distance是在0到1或0到100%范围内测得的颜色距离

均值平移算法是迭代的,因此窗口大小越大,速度越慢。对于每个像素,它将获取窗口中所有以像素为中心的像素,并排除在radius = sqrt((width-1)(height-1)/ 4)之外的像素围绕像素。从这些像素中,可以找到其中哪些像素在距当前平均值指定的平方颜色距离内。然后,根据这些坐标和新的平均值计算出一个新的x,y重心。这个新的x,y重心用作新窗口的中心。重复此过程,直到收敛为止,然后使用最终均值替换原始像素值。它将对下一个像素等重复此过程,直到处理图像中的所有像素为止。使用其他色彩空间而不是RGB时,效果会更好。推荐YIQ,YUV或YCbCr,它们似乎能给出相同的结果。

-metric type

根据给定类型的度量,将测量图像之间差异的度量输出到STDERR 。

从中选择:

AE
绝对错误计数,不同像素数(-fuzz影响)
DSSIM
结构差异指数
FUZZ
平均色距
MAE
平均绝对误差(标准化),平均通道误差距离
MEPP
每个像素的平均误差(归一化平均误差,归一化峰值误差)
MSE
平均误差平方,信道误差平方的平均值
NCC
归一化互相关
PAE
绝对峰值(归一化绝对峰值)
PHASH
sRGB和HCLp颜色空间的感知哈希。使用以下指定替代色彩空间-define phash:colorspaces=colorspace,colorspace,...
PSNR
峰值信噪比
RMSE
均方根(归一化均方根)
SSIM
结构相似指数

AE-fuzz因子控制' ',或不同像素的绝对计数(忽略仅变化很小的像素)。使用“PAE”查找使所有像素“相似”所需的-fuzz因子的大小,而“MAE”确定使大约一半像素相似所需的因子。

MEPP度量返回三种不同的指标(” MAE”,‘ MAE’归一化,和‘ PAE’归一化)来自单个比较运行。

SSIMDSSIM度量尊重这些定义: -define compare:ssim-radius-define compare:ssim-sigma-define compare:ssim-k1,和-define compare:ssim-k2

要打印度量标准的完整列表,请使用-list metric选项。

-minimum

返回图像序列的最小强度。

从所有周围的像素中选择“最小”值。

这是同名方法的旧选项。

-mode geometry

将每个像素设为邻域的“主要颜色”。

-mode value

操作模式。

从以下样式中选择valueFrame, Unframe, or Concatenate

-list选项与' Mode'参数一起使用,可用于ImageMagick安装中可用的-mode参数列表。

-modulate brightness[,saturation,hue]

改变图像的亮度饱和度色调

参数以变化百分比给出。值100表示​​没有变化,任何缺失值都表示为100。

亮度是图像的整体亮度的乘数,所以0表示纯黑色,50是半亮,200是两倍亮。要反转其含义- 前后对图像进行反。

所述饱和度控制颜色的图像中的量。例如,0产生灰度图像,而较大的值(例如200)产生非常彩色的“卡通”颜色。

色调参数通过指定的量使得图像内的颜色的“旋转”。例如,50导致逆时针旋转90,将红色阴影映射为紫色,依此类推。值为0或200会导致图像完整旋转180度。使用值300表示360度旋转,不会更改原始图像。

例如,要将颜色亮度提高20%,将颜色饱和度降低10%,并使色调保持不变,请使用-modulate 120,90

使用' '的-set属性option:modulate:colorspace来指定要调制的色彩空间。选择HCLHCLpHSBHSIHSL(默认), ,HSVHWBLCH(LCHuv)。例如,

convert image.png -set option:modulate:colorspace hsb -modulate 120,90 modulate.png

-moments

报告图像时刻和感知哈希。

-monitor

监控进度。

-monochrome

将图像转换为黑白图像。

-morph frames

变形图像序列。

在当前图像列表中的所有图像上,图像像素和大小均进行线性插值,以呈现从一个图像到另一个图像的变形。添加的图像等效于-blend合成。的 参数确定多少图像的每个图像之间进行内插。

-morphology

-morphology method kernel

对图像应用形态学方法。

在开始撰写有关此内容的选项摘要之前,请参阅《IM使用示例,形态》

-mosaic

-layers方法“mosaic” 的简单别名

-motion-blur radius
-motion-blur radiusxsigma+angle

模拟运动模糊。

使用给定的半径,标准偏差(sigma)和角度模糊。给定的角度是图像模糊所朝向的角度。这就是人们认为对象来自的方向。

请注意,模糊不是均匀分布,从而使运动具有明确的运动方向感。

-虚拟像素设定将确定它们是图像之外的像素如何正确模糊成最终结果。

-name

为图片命名。

-negate

用其互补色替换每个像素。

图像的红色,绿色和蓝色强度被否定。白色变成黑色,黄色变成蓝色,等等。使用+否定键只能否定图像的灰度像素。

-noise geometry
+noise type

添加或减少图像中的噪点。

噪声峰值消除滤波器的主要功能是平滑图像中的对象,而不会丢失边缘信息,也不会创建不希望的结构。该算法的中心思想是,如果发现某个像素为噪声,则用像素窗口中的下一个相邻像素替换该像素。当且仅当此像素在像素窗口内达到最大值或最小值时,该像素才被定义为噪声。

使用指定降低噪音,当附近的宽度。这等效于使用操作,应该优先使用该操作。-noise radius-statistic NonPeak

使用+噪声,后跟噪声类型可将噪声添加到图像。从以下噪声类型中进行选择:

Gaussian
Impulse
Laplacian
Multiplicative
Poisson
Random
Uniform

可以通过该-attenuate设置控制添加的噪音量。如果未设置,则该值等于1.0或最大噪声附加值。

请注意,“随机”将用噪点代替图像,而不是增加噪点。如果要向图像添加随机噪点,请使用“均匀”。

要打印噪声的完整列表,请使用-list noise选项。

另请参见-evaluate噪声函数,该函数允许使用控制值来指定应添加到图像的噪声量。

-normalize

通过扩展强度值的范围来增加图像的对比度。

拉伸强度值以覆盖可能值的整个范围。虽然这样做,遮光至多2%的像素和白出最多的1%的像素。

请注意,自ImageMagick 6.4.7-0起,-normalize 等效于-contrast -stretch 2%x1%。(在此版本之前,它等效于-contrast-stretch 2%x99%)。

当使用默认+通道 设置时,所有通道均以相同的数量进行标准化,以保持色彩完整性。指定任何其他-channel 设置将独立标准化RGB通道。

有关更多详细信息,请参见 -contrast-stretch。另请参阅-auto-level以获取更适合数学生成的图像的“完美”归一化。

该运营商正在接受重新开发的审查。

-opaque color

将此颜色更改为图像内的填充颜色。

颜色参数是使用下所描述的格式定义-fill选项。该-fuzz设置可以用来匹配和替换类似给定的一个的颜色。

使用+ opaque绘制与目标颜色不匹配的任何像素。

-transparent 操作是完全一样的-opaque但与透明度,而不是目前的替换匹配的颜色-填充颜色设置。为了确保它可以执行此操作,还应确保图像已-alpha set针对新的透明颜色按照“” 启用了Alpha通道,并且不需要您修改-channel即可启用Alpha通道处理。

-ordered-dither threshold_map{,level...}

使用指定的预定义有序抖动阈值图和每个颜色通道具有给定数量的级别的统一颜色图对图像进行抖动。

您可以从以下标准阈值图中选择:


threshold 1x1 Threshold 1x1 (non-dither)
checks 2x1 Checkerboard 2x1 (dither)
o2x2 2x2 Ordered 2x2 (dispersed)
o3x3 3x3 Ordered 3x3 (dispersed)
o4x4 4x4 Ordered 4x4 (dispersed)
o8x8 8x8 Ordered 8x8 (dispersed)
h3x4a 4x1 Halftone 4x4 (angled)
h6x6a 6x1 Halftone 6x6 (angled)
h8x8a 8x1 Halftone 8x8 (angled)
h3x4o Halftone 4x4 (orthogonal)
h6x6o Halftone 6x6 (orthogonal)
h8x8o Halftone 8x8 (orthogonal)
h36x16o Halftone 16x16 (orthogonal)
c5x5b c5x5 Circles 5x5 (black)
c5x5w Circles 5x5 (white)
c6x6b c6x6 Circles 6x6 (black)
c6x6w Circles 6x6 (white)
c7x7b c7x7 Circles 7x7 (black)
c7x7w Circles 7x7 (white)

threshold所生成的图像的一个简单的50%阈值。可以将它与level一起使用,以等效于-posterize来将图像缩小为基本原色。

checks图案产生3级棋盘抖动图案。也就是说,灰度将变成纯黑色,纯白色和中间色调颜色的图案,变成黑白棋盘图案。

您可以在个人或系统XML文件中定义自己的阈值图,以对图像进行有序抖动和半色调处理 thresholds.xml。有关 配置文件的更多详细信息,请参见参考资料

要打印已定义阈值的完整列表,请使用 -list threshold选项。

请注意,此时,所有颜色通道均使用相同的阈值抖动映射,因此未尝试偏移或旋转不同通道的映射以创建胶版印刷效果。同样,由于贴图是简单的阈值级别,因此半色调和圆形贴图会在彩色区域的边缘创建不完整的圆形。同样,所有效果都是纯开/关布尔值效果,而没有使用抗锯齿使圆环看起来平滑的效果。创建大点后,可以使其具有较小的模糊度,使其看起来更好。

-orient image orientation

指定数码相机图像的方向。

从以下方向中选择:

bottom-left right-top
bottom-right top-left
left-bottom top-right
left-top undefined
right-bottom

要打印方向的完整列表,请使用-list方向选项。

-page geometry
-page media[offset][{^!<>}]
+page

在较大的虚拟画布上设置图像的大小和位置。

有关-geometry参数的完整详细信息,请参见图像几何

为了方便起见,您可以使用介质指定页面大小(请参见下文)。然后可以与其他几何参数(例如-page Letter+43+43)一样添加偏移量 。

使用媒体作为简写形式来指定PostScript页面的尺寸(width x height)(以每英寸点数为单位)或TEXT页面(以像素为单位)。PostScript页面的选择是:

11x17
792 x 1224
Ledger
1224 x 792
Legal
612 x 1008
Letter
612 x 792
LetterSmall
612 x 792
ArchE
2592 x 3456
ArchD
1728 x 2592
ArchC
1296 x 1728
ArchB
864 x 1296
ArchA
648 x 864
A0
2380 x 3368
A1
1684 x 2380
A2
1190 x 1684
A3
842 x 1190
A4
595 x 842
A4Small
595 x 842
A5
421 x 595
A6
297 x 421
A7
210 x 297
A8
148 x 210
A9
105 x 148
A10
74 x 105
B0
2836 x 4008
B1
2004 x 2836
B2
1418 x 2004
B3
1002 x 1418
B4
709 x 1002
B5
501 x 709
C0
2600 x 3677
C1
1837 x 2600
C2
1298 x 1837
C3
918 x 1298
C4
649 x 918
C5
459 x 649
C6
323 x 459
Flsa
612 x 936
Flse
612 x 936
HalfLetter
396 x 612

当写入支持偏移的多图像格式(例如GIF89和MNG)时,此选项还用于放置子图像。用于此目的时,偏移量始终从画布的左上角开始测量,并且不受-gravity选项的影响。要放置GIF或MNG图像,请使用-page {+-} x {+-} y(例如-page + 100 + 200)。写入MNG文件时,-page选项出现在序列中第一张图像的前面,且宽度和高度非零,定义了写入到MNG文件中的宽度和高度值。MHDR块。否则,将从包含序列中所有图像的边界框中计算出MNG的宽度和高度。编写GIF89文件时,仅使用边界框方法确定其尺寸。

对于PostScript页面,图像的大小按-geometry设置,但相对于页面左下角的位置为{+-} xoffset {+-} y offset。例如,使用-page 612x792将图像在页面内居中。如果图像大小超出PostScript页面,则会缩小以适合页面大小。-page选项的默认重力为NorthWest,即,从页面左上角向右和向下测量正值xy 偏移量,除非-gravity选项的值不是NorthWest

TEXT图像的默认页面尺寸为612x792。

此选项与-density一起使用

使用+页面删除图像的页面设置。

-paint radius

模拟油画。

每个像素都用圆形邻域中最常见的颜色替换,该邻域的宽度由radius指定。

-path path

将映像写入磁盘上的此路径。

-pause seconds

动画循环之间暂停

在重复动画之前,暂停指定的秒数。

-pause seconds

在快照之间暂停。

在拍摄下一个快照之前,暂停指定的秒数。

-perceptible epsilon

设置值小于|的每个像素 epsilon | 到-epsilonepsilon(以较近者为准),否则像素值保持不变。

-ping

有效地确定图像特征。

-pointsize value

PostScript,OPTION1或TrueType字体的磅值。

-polaroid angle

模拟宝丽来照片。

用于+polaroid以-15至+15度之间的任意角度旋转图像。

-poly "wt,exp ..."

根据多项式的加权和组合多个图像;对于每个表示为逗号分隔对的图像,一个浮点权重(系数)和一个浮点多项式指数(幂)。

权重通常应为-1与1之间的分数。但是权重的总和应为1或至少为0与1之间,以避免在非hdr模式下对黑白进行钳制。

指数可以为正,负或零。负指数等于1除以提升为相应正指数的图像。无论图像是什么,零指数总是产生1,按量子范围缩放为白色,即wt * white。

格式为:输出= wt1 * image1 ^ exp1 + wt2 * image2 ^ exp2 ...

一些简单的用法是:

  • 假设所有权重加在一起且所有指数均为1,则每个图像的加权和。如果权重都等于1 /(图像数),则这等于-evaluate-sequence mean
  • 假设权重相等(并且总和为1,以避免钳位)并且指数等于2,则两个或多个图像的平方和。

请注意,只要为其中一张图片使用xc:somecolor并指定所需的权重和指数等于0,就可以为表达式添加恒定的颜色。

类似地,可以通过对具有适当权重和指数等于0的图像之一简单地使用null :(或xc:white)来向表达式添加白色。

-posterize levels

将图像减少到每个通道有限数量的颜色级别。

极低的级别值(例如2、3、4)具有最明显的效果。

-precision value

设置要打印的最大有效位数。

-preview type

图像预览类型。

使用此选项可以影响图像的预览操作(例如 convert file.png -preview Gamma Preview:gamma.png)。从这些预览中选择:


AddNoise
Blur
Brightness
Charcoal
Despeckle
Dull
EdgeDetect
Gamma
Grayscale
Hue
Implode
JPEG
OilPaint
Quantize
Raise
ReduceNoise
Roll
Rotate
Saturation
Segment
Shade
Sharpen
Shear
Solarize
Spiff
Spread
Swirl
Threshold
Wave

要打印预览的完整列表,请使用-list预览选项。

默认预览为JPEG

-print string

解释字符串并打印到控制台。

-process command

使用自定义图像滤镜处理图像。

命令参数的形式为"module arg1 arg2 arg3 ... argN"where module是要调用的模块的名称(例如,“Analyze”),而arg1 arg2 arg3 ... argN是传递给处理模块的任意数量的参数。

-profile filename
+profile profile_name

管理映像中的ICM,IPTC或通用配置文件。

使用-profile 文件名会将ICM(ICC颜色管理),IPTC(新闻专线信息)或通用配置文件添加到图像。

使用+ profile profile_name删除指示的配置文件。ImageMagick使用标准的文件名遍历,因此通配符表达式可用于删除多个配置文件。在这里,我们从映像中删除了所有配置文件,除了XMP配置文件: +profile "!xmp,*"

使用identify -verbose找出哪些profile图像文件英寸 使用-strip删除所有配置文件(和注释)。

要提取配置文件,不使用-profile选项。相反,只需将文件写入图像格式,例如APP1、8BIM,ICMIPTC即可

例如,要提取Exif数据(存储在APP1配置文件的JPEG文件中 ),请使用。

convert cockatoo.jpg profile.exif

重要的是要注意,结果可能取决于原始图像是否已包含配置文件。另外,请记住,-profile是“操作符”(与“设置”相对),因此每次在命令行中按顺序遇到它时,都会进行一次转换。例如,在以下示例中,如果原始图像是带有配置文件的CMYK,则将生成CMYK-CMYK-RGB转换。

convert CMYK.tif -profile "CMYK.icc" -profile "RGB.icc" RGB.tiff

此外,由于ICC配置文件不一定是对称的,因此额外的转换步骤可能会产生不需要的结果。CMYK配置文件通常非常不对称,因为它们涉及3-> 4和4-> 3通道映射。

-quality value

JPEG / MIFF / PNG压缩级别。

对于JPEG和MPEG图像格式,质量为1(最低图像质量和最高压缩率)到100(最佳质量但有效压缩率最低)。默认值是如果可以确定,则使用输入图像的估计质量,否则为92。如果质量大于90,则不会对色度通道进行下采样。使用-sampling-factor选项可以指定色度下采样的因子。

对于JPEG-2000图像格式,质量使用非线性方程式映射到Jasper库所需的压缩率。该非线性方程式旨在粗略估计JPEG v1格式提供的质量。默认质量值100,要求无损压缩。75的质量要求进行16:1压缩。

对于MNG和PNG图像格式,质量值设置zlib压缩级别(质量/ 10)和过滤器类型(质量%10)。默认的PNG“质量”为75,这意味着具有自适应PNG过滤的压缩级别7,除非图像具有颜色图,在这种情况下,这意味着没有PNG过滤的压缩级别7。

对于压缩级别0(质量值小于10),使用仅霍夫曼策略,这是最快的,但不一定是最差的压缩。

如果filter-type为4或更小,则指定的PNG过滤器类型将用于所有扫描线:

0
没有
1
2
向上
3
平均
4
Paeth

如果filter-type为5,则当质量大于50并且图像没有颜色图时,将使用自适应滤波,否则不使用滤波。

如果filter-type为6,则使用具有最小绝对值之和的自适应滤波。

仅当输出为MNG时,如果滤镜类型为7,则使用LOCO颜色转换(像素内差分)和具有最小绝对值之和的自适应滤镜。

如果过滤器类型为8,则将zlib Z_RLE压缩策略(或当压缩级别为0时为Z_HUFFMAN_ONLY策略)与自适应PNG过滤一起使用。

如果filter-type为9,则使用zlib Z_RLE压缩策略(或Z_HUFFMAN_ONLY策略,当压缩级别为0时),不使用PNG过滤。

由于压缩始终是无损的,因此质量设置对PNG和MNG图像的外观或签名没有影响。

使用-quality选项无法获得压缩级别,策略和PNG过滤器类型的所有组合。为了进行更精确的控制,可以分别使用PNG:compression-level = N,PNG:compression-strategy = N和PNG:compression-filter = N定义。请参阅-define。定义中的值优先于-quality选项中的值。

有关更多信息,请参见PNG规范。

对于MIFF和TIFF图像格式,quality / 10是Zip / BZip压缩级别,它是0(最坏但最快的压缩)到9(最好但最慢的压缩)。由于压缩始终是无损的,因此它对图像外观没有影响。

对于BPG图像格式,quality / 2是实际的BPG压缩级别(范围为0到51)。

-quantize colorspace

使用此色彩空间减少色彩。

此设置定义了色彩空间,该色彩空间用于通过-colors等操作符来分类和减少图像所需的颜色数量(以供以后进行抖动),请注意,将图像保存为颜色受限的图像文件格式时,颜色也会自动减少。作为GIF和PNG8。

-quiet

禁止显示所有警告消息。仍然报告错误消息。

-radial-blur angle

围绕图像的中心模糊。

请注意,这实际上是旋转模糊而不是径向模糊,因此实际上是错误命名。

-虚拟像素设定将确定它们是图像之外的像素如何正确模糊成最终结果。

-raise thickness

使图像边缘变亮或变暗。

这将创建一个3D效果。使用-raise产生凸起效果,否则使用+ raise

不同于类似-frame选项,-raise不会改变图像的尺寸。

-random-threshold lowxhigh

对图像应用随机阈值。

-range-threshold low-black,low-white,high-white,high-black

在图像的某些值范围内执行硬阈值或软阈值。

-read-mask filename

禁止更新由遮罩指定的图像像素。

这与使用用于复合蒙版操作的蒙版相同,灰度值导致蒙版附着的图像的混合更新。

使用+ read- mask从图像中删除蒙版。

另请参见-clip-mask,该方法以相同的方式工作,但具有严格的布尔掩码。

-red-primary x,y

设置红色色度基点。

-regard-warnings

注意警告信息。

此选项导致某些图像格式的某些警告被视为错误。

-remap filename

将图像中的颜色数量减少到该图像使用的颜色。

如果启用了-dither设置(默认设置),则将根据需要在图像上抖动给定的颜色,否则将选择最接近的颜色(在RGB色彩空间中)替换图像中的该像素。

作为在当前图像序列中的所有图像上应用-remap颜色的副作用,所有图像将具有相同的色表。这意味着,当保存为GIF之类的文件格式时,它将对所有图像使用该颜色表作为单个通用或全局颜色表,而无需额外的本地颜色表。

使用+ remap缩小当前图像序列中的所有图像,以对所有图像使用通用的颜色映射。这等效于将所有图像附加在一起(没有额外的背景颜色),并使用-colors(具有256个颜色限制)对这些图像进行颜色还原,然后将-colors重新映射到原始图像列表中。这样可以确保所有图像遵循单一的颜色图。

如果所有图像上的颜色数少于256,则+ remap不应执行任何颜色减少或抖动处理,因为不需要颜色更改。在这种情况下,其唯一作用是强制使用全局色表。建议在使用-colors-ordered-dither减少动画图像序列中的颜色数量之后使用。

请注意,重映射图像颜色图最多具有8位精度。较深的颜色图会自动与其他颜色合并,以满足此要求。

-region geometry

设置后续操作将应用的区域。

Xy偏移中相同的方式处理为-crop

有关-geometry参数的完整详细信息,请参见图像几何

使用+region删除任何先前设置的区域。

-remote

执行远程操作。

唯一识别的命令是要加载的图像文件的名称。

如果同时运行多个显示应用程序,请使用window选项指定要控制的应用程序。

-render

渲染矢量操作。

使用+ render关闭渲染矢量操作。将结果保存为MVG或SVG等矢量格式时,此功能很有用。

-repage geometry

调整图像的画布和偏移信息。

此选项类似于-page,但用作图像运算符而不是设置。您可以通过仅提供那些组件来分别设置画布大小或该画布上图像的偏移量。

有关-geometry参数的完整详细信息,请参见图像几何

如果!给定了标志,则将给定的偏移量添加到现有偏移量中,以相对于图像的先前位置移动图像。这对于动画序列很有用。

给定画布大小为零(例如' 0x0),将强制其重新计算画布大小,以便图像(以其当前偏移量)将完全显示在该画布上(除非它具有负偏移量)。

使用+ repage可以从图像中完全删除/重置虚拟画布元数据。

所述-setpage”选项可以用于直接分配虚拟画布元数据。

-resample horizontalxvertical

将图像重新采样到指定的水平和垂直分辨率。

调整图像大小,以便在指定的目标分辨率下,其渲染大小与原始大小相同。例如,如果300 DPI图像在300 DPI设备上以3英寸乘2英寸渲染,则在将图像重新采样到72 DPI后,它将在72 DPI设备上以3英寸乘2英寸进行渲染。请注意,只有少量的图像格式(例如JPEG,PNG和TIFF)能够存储图像分辨率。对于不支持图像分辨率的格式,必须在指定重采样分辨率之前通过命令行上的-density指定图像的原始分辨率。

请注意,Photoshop存储并从专有的嵌入式配置文件中获取图像分辨率。如果图像中存在此配置文件,则Photoshop将继续使用其以前的分辨率来处理图像,而忽略在标准文件头中指定的图像分辨率。

-resize geometry

调整图像大小。

有关-geometry参数的完整详细信息,请参见图像几何。如果几何字符串中存在偏移,则将忽略这些偏移,并且-gravity选项无效。

如果-filter选项或-define filter:option=value先于调整大小选项,则图像的尺寸与指定的过滤器。

许多图像处理算法都假定您的图像采用线性光编码。如果您的图像经过伽玛校正,则可以删除非线性伽玛校正,应用变换,然后按如下所示恢复它:

convert portrait.jpg -gamma .45455 -resize 25% -gamma 2.2 \
-quality 92 passport.jpg

注意,一些重采样函数是近似于Sinc函数的阻尼振荡。因此,如果您的ImageMagick版本启用了HDRI,则可能会出现负瓣。要消除它们,请在命令行中添加-clamp

-respect-parentheses

设置将一直有效直到括号边界。

-reverse

颠倒当前图像列表中图像的顺序。

-roll {+-}x{+-}y

垂直或水平滚动图像给定的数量。

x偏移量使图像从右向左滚动。负y偏移会使图像从下到上滚动。

-rotate degrees{<}{>}

对图像应用Paeth图像旋转(使用剪切操作)。

使用>旋转只有当它的宽度超过高度的图像。<图像的宽度小于高度时才旋转图像。例如,如果您指定-rotate "-90>"并且图像尺寸为480x640,则图像不会旋转。但是,如果图像为640x480,则会旋转-90度。如果使用><,请用引号引起来,以防止将其误解为文件重定向。

旋转图像留下的角落中的空三角形被background颜色填充。

另请参见-distort运算符,尤其是' ScaleRotateTranslate'distort方法。

-sample geometry

分别通过像素子采样和像素复制来缩小/放大图像。

只需直接从图像中采样原始像素即可更改图像尺寸。放大时,像素以块的形式复制。缩小时,对像素进行二次采样(即,跳过了某些行和列)。

因此,结果与使用-resize-filter设置point(最近邻居)的效果相同,尽管-sample的速度要快得多,因为它避免了图像的所有过滤处理。因此,它完全忽略了当前的-filter设置。

-sample的关键特征是,尽管某些颜色可能会消失,但不会将新颜色添加到结果图像中。

有关-geometry参数的完整详细信息,请参见图像几何。与几何图形字符串不同的是,偏移量(如果存在于几何字符串中)与-resize不同。

实际采样点位于被采样子区域的中间。这样,对图像的单个像素采样将采用中间像素(如果图像具有偶数尺寸,则为左上中间)。但是,可以将-define ' sample:offset'设置为将该位置修改为要采样的每个子区域内的其他位置,以百分比偏移量表示。

默认情况下,该值50的中点是' ',但0对于左上角可以设置为' ',100对于右下角可以设置为' ' ,或者将X和Y偏移分开设置,例如,0x50对于采样子的左中边缘,则设置为' '区域。

-sampling-factor horizontal-factorxvertical-factor

JPEG或MPEG-2编码器和YUV解码器/编码器使用的采样因子。

此选项指定JPEG编码器用于色度下采样的采样因子。如果省略此选项,则JPEG库将使用其自己的默认值。在读取或写入YUV格式以及写入M2V(MPEG-2)格式时,请使用-sampling-factor 2x1-sampling-factor 4:2:2指定4:2:2下采样方法。

-scale geometry

分别通过像素块平均和像素复制来缩小/放大图像。

只需通过在缩小时将像素平均在一起来替换像素,或在放大时替换像素即可更改图像尺寸。

因此,结果等同于将-resize-filter设置一起使用box。尽管它要快得多,但它避免了图像的所有滤波处理。因此,它完全忽略了当前的-filter设置。

如果在缩小(缩小)图像时原始图像是新图像尺寸的某个整数倍,则在整个图像上,平均在一起以产生新像素颜色的像素数量是相同的。这是一种特殊的情况,称为“合并”,通常用作减少图像噪声(如数码相机产生的图像)的方法,尤其是在弱光条件下。

-scene value

设置场景编号。

此选项设置图像或图像序列中第一张图像的场景编号。

-screen

指定要捕获的屏幕。

此选项指示用于获取图像的GetImage请求应在根窗口上完成,而不是直接在指定窗口上完成。这样,您可以获得与指定窗口重叠的其他窗口,并且更重要的是,您可以捕获菜单或其他弹出窗口,它们是独立窗口但出现在指定窗口上方。

-seed

播种新的伪随机数序列

-segment cluster-thresholdxsmoothing-threshold

分割图像的颜色。

通过分析颜色成分的直方图并识别与模糊c均值技术一致的单位来对图像进行分割。这是ImageMagick颜色量化例程的一部分。

群集阈值指定为每个群集中必须超过群集阈值才能被视为有效的像素数。 平滑阈值可消除直方图二阶导数中的噪声。随着值的增加,您可以期望得到平滑的二阶导数。默认值为1.5。

如果定义了-verbose设置,则返回有关颜色群集的详细报告。

-selective-blur radius
-selective-blur radiusxsigma{+threshold}

选择性模糊对比度阈值内的像素。

相比之下,模糊那些小于或等于阈值的像素。该阈值可以表示为QuantumRange的分数或百分比。

-separate

将图像通道分离为灰度图像。用-channel指定通道

-sepia-tone percent-threshold

模拟棕褐色照片。

阈值指定为强度的百分比阈值(0-99.9%)。

该选项对图像施加特殊效果,类似于通过棕褐色调在照片暗室中​​获得的效果。阈值的范围是0到QuantumRange,是棕褐色色调程度的度量。80%的阈值是合理音调的良好起点。

-set key value

+set key

设置当前图像序列中图像的图像属性和属性。

这将分配(或修改)附加到当前图像序列中所有图像的特定设置。使用选项的+ set形式将删除或将该设置重置为默认状态(视情况而定)。

例如,它将修改特定的众所周知的图像元数据“属性”,例如通常被以下对象覆盖的属性:-delay-dispose-page-colorspace选项;通常在读入图像之前使用相同名称的分配。

如果给定密钥与特定的已知“属性”不匹配(例如,如上所示),则该设置将以自由格式的“属性”字符串存储。这样的设置在-verbose信息(info:“输出格式”)中列为“属性”。

这包括使用选项-comment-label-caption由图像设置并分配给图像的字符串“属性” 。这些选项实际上分配了一个全局“工件”,该对象在读入图像时会自动分配给图像(并扩展了“格式百分率”)。例如:

-> convert rose: -set comment 'Rose is a rose is a rose is a rose' rose.png
identify -format %c rose.png
Rose is a rose is a rose is a rose

设置值还可以在定义的值中使用“格式”和“打印图像属性 ”。例如:

-> convert rose: -set origsize '%wx%h' -resize 50% \
-format 'Old size = %[origsize] New size = %wx%h' info:
Old size = 70x46 New size = 35x23

可用的其他众所周知的“属性”包括:“date:create”,“date:modify”和“signature”。

-repage运营商也将允许你修改“page图像”属性对于已经在内存中的图像(见页随机)。但是,它旨在提供对该“属性”子部分的更好控制。该-set页面 选项将只提供“直接的,未经修改分配page”属性。

此选项还可以将色彩空间或配置文件与图像相关联。例如,

convert image.psd -set profile ISOcoated_v2_eci.icc image-icc.psd

必须以特定的方式定义某些“属性”才能使用。例如,只有带有“filename:” 前缀的“属性”可用于修改图像的输出文件名。例如

convert rose: -set filename:mysize '%wx%h' 'rose_%[filename:mysize].png'

如果设置值以“option:” 为前缀,则设置将被保存为全局“工件”,就像使用-define选项进行设置一样。由于此类设置在全局范围内,因此它们可以用于传递一个特定图像的“属性”和“属性”,从而使您可以在完全不同的图像中使用它们,即使原始图像已经存在很长时间了。修改或销毁。例如:

convert rose: -set option:rosesize '%wx%h' -delete 0 \
label:'%[rosesize]' label_size_of_rose.gif"

请注意,如果给定与现有的“属性”或“属性”不匹配,则格式百分比转义符将仅与“工件” 匹配。

您可以通过在值前面加上来设置映像注册表的属性registry:

所述-set轮廓选项也可用于使用命令行选项到预先已被格式化的辅助数据块注入到输出PNG文件,如下面的或通过经由编程接口设置简档:

convert in.png -set profile PNG-chunk-x:<filename> out.png

其中x是位置标志, 文件名是一个文件,文件的前4个字节中包含组块名称,然后是冒号(“:”),后跟组块数据。该编码器将计算块长度和CRC,因此这些长度和CRC不得包含在文件中。

“x”可以是“b”(在PLTE之前),“m”(在中间,即在PLTE和IDAT之间)或“e”(在结尾,即在IDAT之后)。如果要写入多个相同类型的块,请在“x”后面添加一个短的唯一字符串,以防止后续配置文件覆盖先前的配置文件,例如,

convert in.png -set profile PNG-chunk-b01:file01 \
-profile PNG-chunk-b02:file02 out.png

-shade azimuthxelevation

使用远光源遮挡图像。

指定方位角仰角作为光源的位置。使用+ shade将阴影结果返回为灰度图像。

-shadow percent-opacity{xsigma}{+-}x{+-}y{%}

模拟图像阴影。

-shared-memory

使用共享内存。

此选项指定实用程序是否应尝试对像素图使用共享内存。必须使用共享内存支持来编译ImageMagick,并且显示器必须支持MIT-SHM扩展。否则,将忽略此选项。默认值为True

-sharpen radius
-sharpen radiusxsigma

锐化图像。

使用给定半径和标准偏差(sigma)的高斯运算符。

-shave geometry

从图像边缘刮除像素。

geometry 参数的size部分指定要从图像两面去除的区域的宽度以及要从顶部和底部去除的区域的高度。偏移量将被忽略。

有关-geometry参数的完整详细信息,请参见图像几何

-shear Xdegrees[xYdegrees]

沿x轴和/或y轴剪切图像。

剪切角可以是正,负或零。如果省略Ydegrees,则默认为Xdegrees。当给出两个角度时,剪切的水平分量在垂直分量之前执行。

剪切使图像的一个边缘沿x轴或y轴(即分别为水平或垂直)滑动,从而创建平行四边形。每种的量由各自的剪切角控制。对于水平剪切, X度是相对于“上”(负y轴)顺时针测量的,当0°< Xdegrees <90° 时,将上边缘向右滑动,而当90°< Xdegrees <180° 时,则将其上边缘向左滑动。对于垂直剪切,Y度是相对于“右”(正x轴)顺时针测量的,当0°< Ydegrees <90° 时,将右边缘向下滑动,而当90°< Ydegrees <180° 时,则将右边缘向上滑动。

剪切图像后剩下的空三角形将填充由-background选项定义的颜色。使用-fill选项下描述的格式指定颜色。

水平剪切在垂直部分之前执行。请注意这一点,因为水平和垂直剪切不会上 下班,也就是说,顺序在剪切序列中很重要。例如,以下两个命令不等效。

convert logo: -shear 20x0 -shear 0x60 logo-sheared.png
convert logo: -shear 0x60 -shear 20x0 logo-sheared.png

上面两个命令中的第一个与下面的命令等效,但所创建的空白空间数量除外。后面的命令会生成较小的图像,因此在时间和空间方面是更好的选择。

convert logo: -shear 20x60 logo-sheared.png

-sigmoidal-contrast contrastxmid-point

在不使高光或阴影饱和的情况下增加对比度。

使用S形传递函数增加图像的对比度,而不会使高光或阴影饱和。对比度 指示增加对比度的程度。例如,0为无,典型值为3,很多为20。

中点指示了相反的最大变化“斜率”,均应包含在所得的图像中的(0为白色; 50%是中等灰色; 100%是黑色)。

默认情况下,图像对比度增加,请使用+ S形对比度降低对比度。

要获得相当于S形亮度变化(类似于伽玛调整)的效果,可以使用-sig-contrast对比度{brightness} x0%来增加亮度,使用+ sigmoidal-contrast {brightness} x0%来降低亮度。请注意,在S型曲线的中点使用“0”。

使用非常高的对比度会产生某种图像的“平滑阈值”。不像真实阈值那样清晰(具有高混叠效果),但是在阈值中点附近具有渐缩的灰度级 。

-silent

安静地操作。此选项仅由导入工具使用。

-similarity-threshold value

子图像匹配的最小RMSE。

如果使用此设置,则一旦发现度量值小于或等于该值的匹配项,搜索就会立即停止。将产生部分填充的第二个输出图像。使用零值将导致搜索在找到的第一个完美匹配处停止。如果保留此设置,则搜索将继续完成或受-dissimilarity-threshold限制。

-size width[xheight][+offset]

设置图像的宽度和高度。

使用这个选项来指定原始图像,其尺寸是未知的,例如宽度和高度GRAYRGBCMYK。除了宽度和高度以外,还可以使用-size和偏移量来跳过图像中的所有标题信息,或者告诉MAP图像文件中的颜色数量(例如-size 640x512 + 256)。

对于Photo CD图像,请从以下尺寸中选择:

192x128
384x256
768x512
1536x1024
3072x2048

-sketch radius
-sketch radiusxsigma+angle

模拟铅笔素描。

以给定的半径,标准偏差(sigma)和角度绘制草图。给定的角度是图像绘制所朝向的角度。这就是人们认为对象来自的方向。

-smush offset

将图像序列附加在一起,忽略透明度。

斯马什是更灵活的版本-append,加入序列中的图像顶部至底部(-smush)或左到右(+斯马什根据指定的偏移量),与图像之间的间隙。

如果偏移为负,则图像将重叠该量。

-尊重- 重力。任何空白区域都将填充-background颜色。

对于零偏移量和透明图像,两个图像的非透明部分将尽可能对齐而不重叠。

-snaps value

设置屏幕快照的数量。

使用此选项可从X服务器屏幕上捕获多个图像,以创建动画序列。

-solarize percent-threshold

否定高于阈值水平的所有像素。

因子指定为强度的百分比阈值(0-99.9%)。

当在显影过程中将胶卷曝光时,此选项会产生日晒效果。

-sparse-color method 'x,y color ...'

使用指定的颜色点为给定的图像着色,并使用给定的方法填充其他中间颜色。

barycentric
三点三角形的颜色给出3点。仅给出2个点将在这些点之间形成线性梯度。生成的梯度超出了由这三个点创建的三角形。
bilinear
像重心一样,但得4分。少于4分回到重心。
voronoi
只需将每个像素映射到给定的最近色点即可。结果是纯色的多边形“单元”。
manhattan
与voronoi一样,但是生成的多边形“像元”被映射到固定坐标系。
shepards
色点偏向于反距离平方的比值。在平均颜色的海洋中生成颜色斑点。
inverse
颜色点在反距离的比例上有偏差。这会生成更清晰的颜色点,而不是' shepards'的圆点。在平均颜色的海洋中生成颜色点。

这些点是根据虚拟画布上的图像位置(-page-repage 偏移量)放置的,实际上并不一定要存在于给定图像上,而是可以超出图像边缘的某个点。所有点都是浮点值。

仅修改了-channel定义的颜色通道,这意味着默认情况下,遮罩/ alpha透明通道不受影响。通常,在操作之前或之后关闭透明通道。

当然,如果某些色点是透明的以生成透明的渐变,则图像还需要启用透明度来存储值。

当给定单个颜色点时,上述所有方法将用给定的颜色替换图像中的所有颜色,而与该点无关。这是合乎逻辑的,并提供了另一种技术来将图像重新着色为某些默认值。

-splice geometry

将当前背景色拼接到图像中。

这将根据给定的-gravity几何设置将当前背景色的行和列添加到给定的图像 中。有关-geometry参数的完整详细信息,请参见图像几何。本质上,-splice将图像划分为四个象限,并通过插入的行和列将它们分开。

如果几何尺寸为零,则不会为该尺寸添加行或列。类似地,将零偏移量与适当的-gravity设置一起使用会将行和列添加到图像的边缘,仅沿该边缘填充图像。边缘填充是最常用的-splice

如果以后将完全相同的 几何形状-gravity-chop一起使用,则添加的添加将删除所有拼接。

-spread amount

将图像像素随机移位。

参数定义了每个像素周围的邻域大小,从中可以选择要混合的候选像素。

查找由-interpolate设置控制。

-statistic type geometry

用附近的相应统计信息替换每个像素。

从以下统计类型中进行选择:

Gradient
邻域中的最大差异(最大值-最小值)值
Maximum
邻域中每个通道的最大值
Minimum
邻域中每个通道的最小值
Mean
邻域中每个通道的平均值
Median
邻域中每个通道的中值
Mode
邻域中每个通道的模式(最频繁)值
Nonpeak
邻域中每个通道的中值之前或之后的值
RMS
邻域中每个通道的均方根值
StandardDeviation
邻域中每个通道的标准偏差值

-stegano offset

隐藏图像中的水印。

使用偏移量开始图像,使其从图像开始处隐藏一些像素。注意此偏移量和图像尺寸。您将需要此信息来恢复隐写图像(例如,显示-size 320x256 + 35 stegano:image.png)。

-stereo +x{+y}

合成两个图像以创建红色/青色立体浮雕。

立体声对(第二张图像)的左侧被保存为输出图像的红色通道。右侧(第一张图像)保存为绿色和蓝色通道。需要红绿色立体眼镜才能正确查看立体图像。

-storage-type type

像素存储类型。有效的类型如下:

char
无符号字符
double
双打
float
彩车
integer
整数
long
多头
quantum
ImageMagick分布的本机深度中的像素
short
无符号短裤

浮点型和双精度型从0.0标准化为1.0,否则像素值的范围从0到存储类型可以支持的最大值。

-stretch fontStretch

设置字体的拉伸样式类型。

此设置建议ImageMagick应该尝试将其应用于当前选定的字体系列。从下面选择fontStretch

Any
Condensed
Expanded
ExtraCondensed
ExtraExpanded
Normal
SemiCondensed
SemiExpanded
UltraCondensed
UltraExpanded

要打印拉伸类型的完整列表,请使用-list Stretch

有关影响字体的其他设置,请参见-font-family-style-weight选项

-strip

删除任何配置文件,注释或以下PNG块的图像:bKGD,cHRM,EXIF,gAMA,iCCP,iTXt,sRGB,tEXt,zCCP,zTXt,日期。

-stroke color

抚摸图形图元时要使用的颜色。

使用-fill选项下描述的格式指定颜色。

有关更多详细信息,请参见-draw

-strokewidth value

设置笔划宽度。

有关更多详细信息,请参见-draw

-style fontStyle

设置文本的字体样式。

此设置建议ImageMagick应该尝试将其应用于当前选定的字体系列的字体样式。从下面选择fontStyle

Any
Italic
Normal
Oblique

有关影响字体的其他设置,请参见-font-family-stretch-weight选项

-subimage-search

搜索子图像。

要在大图像中比较搜索小图像的最佳匹配位置,需要使用此选项。该搜索将产生两个图像(或两个帧)。第一个是“差异”图像,第二个是“匹配分数”图像。

“匹配分数”图像较小,其中包含给定子图像左上角的任何可能位置的像素。也就是说,它的大小将是large_image-sub_image + 1的大小。此图像中最亮的位置是也报告了最佳匹配的位置。请注意,这可能是完美的匹配,也可能不是完美的匹配,实际亮度将反映出这一点。其他明亮的“峰值”可用于定位其他可能的匹配位置。

请注意,搜索将尝试比较较大图像中每个可能位置的子图像,因为这样可能会非常慢。子图像越小,搜索速度越快。

-swap index,index

交换图像序列中两个图像的位置。

例如,-swap 0,2交换当前图像序列中的第一张和第三张图像。使用+ swap切换序列中的最后两个图像。

-swirl degrees

围绕中心旋转图像像素。

度数定义了旋流的紧密度。

-synchronize

将图像同步到存储设备。

设置为“true”以确保所有图像数据都已完全刷新并同步到磁盘。这会降低性能,但好处包括在系统崩溃时确保有效的图像文件,并在没有足够的磁盘空间用于图像像素缓存的情况下尽早报告。

-taint

将图像标记为已修改。

-text-font name

用于写固定宽度文本的字体。

指定在固定(打字机样式)格式化文本中使用的首选字体的名称。默认值为14点Courier

您可以标记字体以指定它是PostScript,TrueType还是OPTION1字体。例如,Courier.ttf是TrueType字体, x:fixed是OPTION1。

-texture filename

要平铺在图像背景上的纹理的名称。

-threshold value{%}

对图像同时应用黑白阈值。

超过指定阈值的所有像素值(更具体地说,是使用?channel设置的那些像素)将重新分配为最大通道值,而所有其他值均分配为最小值。

阈值可以给出为百分比或对应于期望信道值的绝对整数值。当以整数形式给出时,最小可获得值是0(当所有通道都受影响时对应于黑色),但是最大值(对应于白色)是 quantum depthImageMagick特定版本的,因此取决于安装。因此,对于大多数应用程序,合理的建议是将阈值指定为百分比。

以下操作将使红色值高于50%的像素具有100%的红色值,而在红色通道中等于或低于50%的红色将被设置为0。绿色,蓝色和Alpha通道(如果存在)将保持不变。

convert in.png -channel red -threshold 50% out.png

作为(可能)不切实际但有启发性的示例,以下示例将生成与输入图像具有相同尺寸的全黑和全白图像。

convert in.png -channel RGB -threshold 100% black.png
convert in.png -channel RGB -threshold -1 white.png

另请参见“黑阈值”和“白阈值”

-thumbnail geometry

创建图像的缩略图。

这与-resize相似,不同之处在于它已针对速度进行了优化,并且删除了除颜色配置文件之外的所有图像配置文件以减小缩略图大小。要同时去除颜色配置文件,请在此选项之前或之后添加-strip

有关-geometry参数的完整详细信息,请参见图像几何

-tile filename

设置用于填充后续图形图元的平铺图像。

-tile geometry

指定图像的布局。

有关-geometry参数的完整详细信息,请参见图像几何

-tile

指定在整个图像和向下的图像上重复后续的合成操作。

-tile-offset {+-}x{+-}y

指定平铺图像相对于平铺背景图像的偏移量。

前的平铺图像通过设置此应设置-tile-纹理,或直接施加用于使用创建平铺帆布TILE:PATTERN:输入格式。

在内部,ImageMagick根据设置贴图像时给定的参数对贴图像进行-roll

-tint value

用填充色为图像着色。

用填充色为图像着色。

以百分比指定着色量。-tint不会影响黑色,白色红色,黄色等纯色。仅中等颜色,例如各种深浅的灰色。

-title string

为显示的图像分配标题。”,“动画”,“显示”,“蒙太奇”

使用此选项可以为图像分配特定的标题。这分配给图像窗口,通常显示在窗口标题栏中。(可选)您可以通过嵌入-format选项下描述的特殊格式字符来包含图像文件名,类型,宽度,高度,Exif数据或其他图像属性。

例如,

-title "%m:%f %wx%h"

MIFF:bird.miff 512x480为标题为bird.miff,宽度为512,高度为480 的图像生成图像标题。

-transform

变换图像。

此选项应用来自先前-affine选项的转换矩阵。

convert -affine 2,2,-2,2,0,0 -transform bird.ppm bird.jpg

现在,该运算符已被-distort ' AffineProjection'方法所取代 。

-transparent color

使该颜色在图像内透明。

颜色参数是使用下所描述的格式定义-fill选项。该-fuzz设置可以用来匹配和替换类似给定的一个的颜色。

使用 + transparent反转匹配的像素。即使所有不匹配的颜色透明。

所述-opaque 操作是完全一样-transparent但与当前替换匹配颜色-fill颜色设置,而不是透明的。但是,-transparent运算符还可以确保图像按照“-alpha set” 启用了Alpha通道,并且不需要您修改-channel即可启用Alpha通道处理。

请注意,这并未将颜色定义为用于颜色映射的图像格式(例如GIF)的“透明色”。为此使用-transparent-color

-transparent-color color

设置透明颜色。

有时,这用于保存为GIF和PNG8等图像格式,该格式使用此颜色表示布尔透明度。这不会使颜色透明,它仅定义透明颜色在已保存图像的调色板中是什么颜色。使用-transparent使不透明的颜色透明。

此选项使您既可以具有不透明的可见颜色,又可以具有相同颜色值的透明颜色而不会发生冲突。也就是说,您可以为图像中的透明和不透明颜色区域使用相同的颜色。反过来,这使您可以自由选择一种透明颜色,该颜色在不处理透明颜色索引的应用程序显示图像时适用,同时允许ImageMagick正确处理此类型的图像。

默认的透明颜色是#00000000,它是完全透明的黑色。

-transpose

沿左上角到右下角对角线镜像图像。

此选项在数学上转置像素阵列。它等效于序列-flip -rotate 90

-transverse

沿图像左下角,右上角和右上角镜像图像。等同于操作-flop -rotate 90

-treedepth value

颜色减少算法的树深度。

通常,此整数值为零或一。值为零或一会导致将最佳树深度用于颜色减少算法。

最佳深度通常允许以最快的计算速度和最少的内存来最佳表示源图像。但是,默认深度不适用于某些图像。为了确保最好的表示,请为此参数尝试2到8之间的值。有关更多详细信息,请参阅色彩还原算法

要使 该选项生效,必须使用-colors-monochrome选项,或者写入需要减少颜色的图像格式。

-trim

修剪图像。

此选项将删除与角像素颜色完全相同的所有边缘。使用-fuzz使-trim删除与角像素颜色几乎相同的边缘。

保留图像的页面或虚拟画布信息,使您可以从图像中提取-trim操作的结果。如果不需要,请使用+ repage删除虚拟画布页面信息。

如果修剪的图像“消失”,则会发出警告,并返回特殊的单像素透明的“缺失”图像,其方式与 -crop操作“缺失”适当图像的方式相同。

用于-define trim:percent-background=0%从图像中删除所有背景。指定为百分比的边缘中可容忍的背景数量。0%表示不容许背景。50%表示边缘最多可以包含50%的像素,每个像素都是背景。

-type type

图像类型。

选择:BilevelGrayscaleGrayscaleAlphaPalettePaletteAlphaTrueColorTrueColorAlphaColorSeparation,或ColorSeparationAlpha

通常,当一种格式支持不同的子格式(例如灰度和真彩色)时,编码器将尝试选择一种有效的子格式。该选项可用于覆盖此行为。例如,即使仅存在灰色像素,也要防止以灰度格式写入JPEG,请使用。

convert bird.png -type TrueColor bird.jpg

同样,如果输出格式支持透明性,则即使图像不透明,也可以使用-type TrueColorAlpha强制编码器写入一个Alpha通道。

使用-type优化可确保以最小的文件大小写入图像。

-undercolor color

设置注释边界框的颜色。

使用-fill选项下描述的格式指定颜色。

有关更多详细信息,请参见-draw

-update seconds

检测何时修改图像文件并重新显示。

假设在显示图像时,当前显示的文件被覆盖。 display将自动检测到输入文件已更改,并相应地更新显示的图像。

-unique-colors

丢弃任何一种像素颜色,但只丢弃一种。

-units type

图像分辨率的单位。

选择:UndefinedPixelsPerInch,或 PixelsPerCentimeter。该选项通常与-density选项一起使用。

-unsharp radius
-unsharp radiusxsigma{+gain}{+threshold}

使用不清晰的蒙版运算符锐化图像。

-unsharp选项锐化图像。使用给定半径和标准偏差(sigma)的高斯算子对图像进行卷积。为了获得合理的结果,半径应大于sigma。使用半径0可以使方法选择合适的半径。

参数为:

radius
高斯半径,以像素为单位,不计算中心像素(默认为0)。
sigma
高斯的标准偏差,以像素为单位(默认为1.0)。
gain
原始图像和模糊图像之间的差异(返回1.0)的分数。
threshold
该阈值是QuantumRange的一部分,需要应用差异量(默认值为 0.05)。

-verbose

当此选项位于-identify选项或之前时,将打印有关图像的详细信息info:

-version

打印ImageMagick版本字符串并退出。

-view string

FlashPix查看参数。

-vignette radius{xsigma}{+-}x{+-}y{%}

以晕影样式柔化图像的边缘。

晕影效果滚降由radiusxsigma控制。对于标称滚降,应将其设置为0xsigma。值0x0将产生没有滚降的圆/椭圆。参数x和y控制圆的大小。较大的值会减小半径,较小的值会增大半径。值+ 0 + 0将生成与图像相同的圆形/椭圆形。x和y的默认值是相应图像尺寸的10%。因此,半径将减小10%,即,圆/椭圆的直径将为相应图像尺寸的80%。

-virtual-pixel method

指定虚拟像素的内容。

此选项定义在颜色查找完全“丢失”源图像时以及何时出现颜色查找时应使用的颜色源。似乎包围源图像的颜色。通常,此颜色是从源图像派生的,但也可以设置为指定的背景色。

从以下方法中选择:

background
图像周围的区域是背景色
black
图像周围的区域为黑色
checker-tile
具有图像和背景色的备用正方形
dither
非随机32x32抖动模式
edge
将边缘像素延伸到无穷大
gray
图像周围的区域为灰色
horizontal-tile
水平平铺图像,背景颜色在上/下
horizontal-tile-edge
水平平铺图像并复制侧边缘像素
mirror
镜像平铺图像
random
从图像中选择一个随机像素
tile
平铺图像(默认)
transparent
图像周围的区域是透明的黑色
vertical-tile
垂直平铺图像,侧面为背景色
vertical-tile-edge
垂直平铺图像并复制侧边缘像素
white
图像周围的区域为白色

默认值为“edge”。

失真等运营商这个最重要的-distort-implode-fx。然而,它也影响可能访问只是图像的适当外部的像素操作,如-convolve-blur-sharpen

要打印虚拟像素类型的完整列表,请使用-list virtual-pixel选项。

-visual type

使用此X视觉类型对图像进行动画处理。”,“动画”,“显示”

从这些视觉类中选择:

StaticGray TrueColor
GrayScale DirectColor
StaticColor default
PseudoColor visual id

X服务器必须支持您选择的视觉效果,否则会发生错误。如果未指定视觉效果,则选择可以在默认屏幕上同时显示最多颜色的视觉效果类。

-watermark brightnessxsaturation

使用给定的亮度和饱和度百分比为图像加水印。

拍摄灰度图像(带有Alpha蒙版),然后根据水印图像的灰度值和亮度百分比修改目标图像的亮度 。目的地颜色饱和度属性仅由饱和度 百分比直接修改,该百分比默认为100%(不更改颜色)。

-wave amplitude
-wave amplitudexwavelength

将图像的列剪切为正弦波。

-wavelet-denoise threshold
-wavelet-denoise thresholdxsoftness

使用小波变换从图像中去除噪声。阈值是低于该值的所有东西都被认为是噪声,范围是0.0(无)到QuantumRange或使用百分比(例如5%)。柔软度会使阈值衰减,通常在0.0(无)到1.0之间。值越高,图像中残留的噪点越多。

-weight fontWeight

设置文本的字体粗细。

此设置建议ImageMagick应该尝试将其应用于当前所选字体系列的字体粗细。为fontWeight使用正整数 或从以下选项中选择。

Thin
fontWeight = 100 相同。
ExtraLight
fontWeight = 200 相同。
Light
fontWeight = 300 相同。
Normal
fontWeight = 400 相同。
Medium
fontWeight = 500 相同。
DemiBold
fontWeight = 600 相同。
Bold
fontWeight = 700 相同。
ExtraBold
fontWeight = 800 相同。
Heavy
fontWeight = 900 相同。

要打印重量类型的完整列表,请使用-list weight

有关影响字体的其他设置,请参见-font-family-stretch-style选项

-white-point x,y

色度白点。

-white-threshold value{%}

强制白色高于阈值的所有像素,同时保持等于或低于阈值的所有像素不变。

阈值可以被给定为百分比或内的绝对整数值[0,QuantumRange ]对应于期望的声道值。见门限为上阈值和结果值的更多细节。

-window id

将图像设为窗口背景。”,“动画”,“显示”

id可以是窗口ID或名称。指定root 选择X的根窗口作为目标窗口。

默认情况下,图像被平铺到目标窗口的背景上。如果 指定backdrop-resize,则图像将被背景色包围。X RESOURCES 有关详情,请参阅。

如果图像具有比目标窗口颜色图允许的唯一颜色更多的颜色,则该图像将不会显示在根窗口上。使用-colors减少颜色数量。

-window-group

指定窗口组。

-write filename

写一个图像序列。

-write filename选项之前的图像序列被写出,并且如果有其他选项,则以当前状态下的同一图像继续处理。要将图像写入后恢复到原始状态,请使用+ write filename选项。

使用-compress指定图像压缩的类型。

-write-mask filename

禁止更新由遮罩指定的图像像素。

这与使用用于复合蒙版操作的蒙版相同,灰度值导致蒙版附着的图像的混合更新。

使用+ write- mask从图像中删除蒙版。

另请参见-clip-mask,该方法以相同的方式工作,但具有严格的布尔掩码。


京ICP备11031891号-3