⚠️ Este é um site de tradução não oficial, sem relação com a ImageMagick Studio LLC. Para informações oficiais, consulte a página original (https://imagemagick.org/command-line-options/).

Abaixo está a lista de opções de linha de comando reconhecidas pelas ferramentas de linha de comando do ImageMagick. Se você quiser a descrição de uma opção específica, clique no nome da opção na barra de navegação acima e irá direto até ela. Salvo indicação em contrário, cada opção é reconhecida pelos comandos: magick e mogrify.

-adaptive-blur radius[xsigma]

Desfoca pixels de forma adaptativa, com efeito decrescente próximo às bordas.

É utilizado um operador Gaussiano com o raio e o desvio padrão (sigma) fornecidos. Se sigma não for informado, o padrão é 1.

O valor de sigma é o argumento importante e determina a quantidade real de desfoque que ocorrerá.

O raio é usado apenas para determinar o tamanho do array que contém a distribuição Gaussiana calculada. Deve ser um número inteiro. Se não for informado, ou definido como zero, o IM calculará o maior raio possível que forneça resultados significativos para a distribuição Gaussiana.

-adaptive-resize geometry

Redimensiona a imagem usando triangulação dependente dos dados.

Veja Image Geometry para detalhes completos sobre o argumento geometry. A opção -adaptive-resize tem como padrão a triangulação dependente dos dados. Use -filter para escolher um algoritmo de reamostragem diferente. Deslocamentos, se presentes na string de geometria, são ignorados, e a opção -gravity não tem efeito.

-adaptive-sharpen radius[xsigma]

Realça (sharpen) pixels de forma adaptativa, com efeito crescente próximo às bordas.

É utilizado um operador Gaussiano com o raio e o desvio padrão (sigma) fornecidos. Se sigma não for informado, o padrão é 1.

O valor de sigma é o argumento importante e determina a quantidade real de desfoque que ocorrerá.

O raio é usado apenas para determinar o tamanho do array que contém a distribuição Gaussiana calculada. Deve ser um número inteiro. Se não for informado, ou definido como zero, o IM calculará o maior raio possível que forneça resultados significativos para a distribuição Gaussiana.

-adjoin

Une imagens em um único arquivo com múltiplas imagens.

Esta opção está ativada por padrão. É feita uma tentativa de salvar todas as imagens de uma sequência de imagens no arquivo de saída fornecido. No entanto, alguns formatos, como JPEG e PNG, não suportam mais de uma imagem por arquivo e, nesse caso, o ImageMagick é forçado a gravar cada imagem como um arquivo separado. Assim, se mais de uma imagem precisar ser gravada, o nome de arquivo fornecido é modificado adicionando um número -scene antes do sufixo, a fim de criar nomes distintos para cada imagem.

Use +adjoin para forçar cada imagem a ser gravada em arquivos separados, independentemente de o formato do arquivo permitir ou não múltiplas imagens por arquivo (por exemplo, GIF, MIFF e TIFF).

Incluir uma string de formato de inteiro no estilo C no nome de arquivo de saída ativará automagicamente o +adjoin e é usada para especificar onde o número -scene é colocado nos nomes de arquivo. Essas strings, como '%d' ou '%03d', são familiares para quem já usou a função padrão da biblioteca C printf()'. Como exemplo, o comando

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

criará uma sequência de 17 imagens (as duas fornecidas mais 15 criadas por -morph), nomeadas: my00morph.jpg, my01morph.jpg, my02morph.jpg, ..., my16morph.jpg.

Em resumo, o ImageMagick tenta gravar todas as imagens em um único arquivo, mas salvará em múltiplos arquivos se qualquer uma das seguintes condições existir...

  1. o formato de arquivo da imagem de saída não permite arquivos com múltiplas imagens,
  2. a opção +adjoin é fornecida, ou
  3. uma string de formato de inteiro printf() (ex.: "%d") está presente no nome de arquivo de saída.

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

Define a matriz de transformação de desenho para rotação e escala combinadas.

Esta opção define uma matriz de transformação, para uso pelas opções -draw ou -transform subsequentes.

As entradas da matriz são informadas como valores numéricos separados por vírgula, entre aspas ou sem espaços.

Internamente, a matriz de transformação tem 3x3 elementos, mas três deles são omitidos da entrada porque são constantes. As novas coordenadas (transformadas) (x', y') de um pixel na posição (x, y) na imagem original são calculadas usando a seguinte equação matricial.

affine transformation

O tamanho da imagem resultante é o do menor retângulo que contém a imagem de origem transformada. Os parâmetros tx e ty deslocam, em seguida, os pixels da imagem, de modo que aqueles que são movidos para fora da área da imagem são cortados.

A matriz de transformação está em conformidade com o sistema de coordenadas de pixels de mão esquerda: as direções positivas de x e y são para a direita e para baixo, respectivamente; a rotação positiva é no sentido horário.

Se os coeficientes de translação tx e ty forem omitidos, o padrão é 0,0. Portanto, quatro parâmetros são suficientes para rotação e escala sem translação.

A escala pelos fatores sx e sy nas direções x e y, respectivamente, é realizada da seguinte forma.

Veja -transform e o método 'Affineprojection do -distort para mais informações

-affine sx,0,0,sy

A translação por um deslocamento (tx, ty) é realizada assim:

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

Rotacionar no sentido horário em torno da origem (o canto superior esquerdo) por um ângulo a, fazendo c = cos(a), s = sin(a), e usando o seguinte.

-affine c,s,-s,c

O efeito cumulativo de uma sequência de transformações -affine pode ser realizado, em vez disso, por uma única operação -affine usando a matriz igual ao produto das matrizes das transformações individuais.

É feita uma tentativa de detectar matrizes de transformação quase singulares. Se o determinante da matriz tiver um valor absoluto suficientemente pequeno, ela é rejeitada.

-alpha type

Fornece controle sobre o canal alfa/matte de uma imagem.

Usado para definir um sinalizador em uma imagem indicando se deve ou não usar os dados existentes do canal alfa, criar um canal alfa ou realizar outras operações sobre o canal alfa. Escolha o tipo de argumento na lista abaixo.

activate
Ativa o canal de transparência da imagem. Observe que normalmente Set deve ser usado em vez deste, a menos que você precise especificamente preservar um canal de transparência existente (mas especificamente desativado).
associate
associa o canal alfa à imagem.
background
Define qualquer pixel totalmente transparente como a cor de fundo, mantendo-o totalmente transparente. Isso pode tornar alguns formatos de arquivo de imagem, como PNG, menores, pois os valores RGB dos pixels transparentes ficam mais uniformes e, assim, comprimem melhor.
copy
Liga ('On') o canal alfa/matte e, então, copia a intensidade em escala de cinza da imagem para o canal alfa, convertendo uma máscara em escala de cinza em uma máscara transparente com forma definida, pronta para ser colorida adequadamente. Os canais de cor não são modificados.
deactivate
Desativa o canal de transparência da imagem. Não exclui nem altera os dados existentes, apenas desliga o uso desses dados.
disassociate
desassocia o canal alfa da imagem.
extract
Copia os valores do canal alfa para todos os canais de cor e desliga ('Off') a transparência da imagem, de modo a gerar uma máscara em escala de cinza da forma da imagem. Os dados do canal alfa são mantidos intactos, apenas desativados. Este é o inverso de 'Copy'.
off
desativa o canal alfa.
off-if-opaque
desativa o canal alfa se e somente se ele for totalmente opaco.
on
ativa o canal alfa.
opaque
Ativa o canal alfa/matte e o força a ficar totalmente opaco.
remove
Compõe a imagem sobre a cor de fundo.
set
Ativa o canal alfa/matte. Se ele estava previamente desligado, também redefine o canal para opaco. Se a imagem já tinha o canal alfa ligado, não terá efeito.
shape
Como em 'Copy', mas também colore a máscara de forma resultante com a cor de fundo atual. Ou seja, os canais de cor RGB são substituídos, com a forma alfa apropriada.
transparent
Ativa o canal alfa/matte e o força a ficar totalmente transparente. Isso efetivamente cria uma imagem totalmente transparente do mesmo tamanho que a original e com todos os seus dados RGB originais ainda intactos, mas totalmente transparente.

Observe que, embora a operação obsoleta +matte fosse a mesma que "-alpha Off", a operação >-matte era a mesma que "-alpha Set" e não "-alpha On".

-annotate degrees text

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

Anota uma imagem com texto

Esta é uma conveniência para anotar uma imagem com texto. Para um controle mais preciso sobre anotações de texto, use -draw.

Os valores Xdegrees e Ydegrees controlam os cisalhamentos aplicados ao texto, enquanto tx e ty são deslocamentos que indicam a localização do texto em relação a qualquer ajuste de -gravity e têm como padrão o canto superior esquerdo da imagem.

Usar -annotate degrees ou -annotate degreesxdegrees produz uma rotação não cisalhada do texto. A direção da rotação é positiva, o que significa uma rotação no sentido horário se degrees for positivo. (Isso está de acordo com a convenção matemática usual, uma vez compreendido que a direção positiva de y é convencionalmente considerada para baixo no caso de imagens.)

As novas coordenadas (transformadas) (x', y') de um pixel na posição (x, y) na imagem são calculadas usando a seguinte equação matricial.

annotate transformation

Se tx e ty forem omitidos, o padrão é 0. Isso faz com que a parte inferior esquerda do texto se torne o canto superior esquerdo da imagem, o que provavelmente é indesejável. Adicionar uma opção -gravity neste caso leva a bons resultados.

Text é qualquer sequência de caracteres codificada em UTF-8. Se text tiver a forma '@mytext.txt', o texto é lido do arquivo mytext.txt. O texto em um arquivo é tomado literalmente; nenhum caractere de formatação embutido é reconhecido.

-antialias

Ativa/Desativa a renderização de pixels de anti-aliasing ao desenhar fontes e linhas.

Por padrão, os objetos (por exemplo, texto, linhas, polígonos, etc.) são suavizados (antialiased) ao serem desenhados. Use +antialias para desativar a adição de pixels de borda de anti-aliasing. Isso então reduzirá o número de cores adicionadas a uma imagem apenas às cores que estão sendo desenhadas diretamente. Ou seja, nenhuma cor mista é adicionada ao desenhar tais objetos.

-append

Une as imagens atuais vertical ou horizontalmente.

Esta opção cria uma única imagem mais longa, unindo todas as imagens atuais em sequência de cima para baixo. Use +append para empilhar as imagens da esquerda para a direita.

Se elas não tiverem a mesma largura, as imagens mais estreitas são preenchidas com o ajuste atual da cor de -background, e a posição relativa entre elas pode ser controlada pelo ajuste atual de -gravity.

Para opções mais flexíveis, incluindo a capacidade de adicionar espaço entre as imagens, use -smush.

-attenuate value

Diminui (ou intensifica) ao adicionar ruído a uma imagem.

Se não for definido, o valor equivale a 1.0, ou uma adição máxima de ruído

-authenticate password

Descriptografa um PDF com uma senha.

Use esta opção para fornecer uma senha para descriptografar um PDF que tenha sido criptografado usando a Microsoft Crypto API (MSC API). A criptografia usando a MSC API não é suportada.

Para um método de criptografia diferente, veja -encipher e -decipher.

-auto-gamma

Ajusta automagicamente o nível de gama da imagem.

Isso calcula os valores médios de uma imagem e, então, aplica um ajuste de -gamma calculado para que a cor média na imagem obtenha um valor de 50%.

Isso significa que qualquer imagem 'cinza' sólida se torna 50% cinza.

Funciona bem para imagens da vida real com pouca ou nenhuma área extremamente escura ou clara, mas tende a falhar para imagens com grandes quantidades de céu claro ou sombras escuras. Também não funciona bem para diagramas ou imagens semelhantes a desenhos animados.

Usa o ajuste de -channel (incluindo o sinalizador 'sync' para sincronização de canais), para determinar quais valores de cor são usados e modificados. Como o ajuste padrão de -channel é 'RGB,sync', os canais são modificados em conjunto pelo mesmo valor de gama, preservando as cores.

-auto-level

Ajusta automagicamente os níveis de cor da imagem.

Este é um operador de normalização de imagem 'perfeito'. Ele encontra os valores mínimo e máximo exatos de cor na imagem e, então, aplica um operador -level para esticar os valores até a faixa completa de valores.

O operador normalmente não é usado para imagens da vida real, digitalizações de imagens ou imagens no formato JPEG, pois um único pixel 'fora da curva' pode definir valores mínimo/máximo ruins para a operação -level. Por outro lado, é o operador certo a usar para imagens de gradiente em estiramento de cor, usadas para gerar tabelas de busca de cor (Color lookup tables), mapas de distorção ou outras imagens definidas 'matematicamente'.

O operador é muito semelhante aos operadores -normalize, -contrast-stretch e -linear-stretch, mas sem os problemas de 'agrupamento em histograma' (histogram binning) ou 'recorte' (clipping) que esses operadores podem ter. Ou seja, -auto-level é a versão perfeita ou ideal desses operadores.

Usa o ajuste de -channel (incluindo o sinalizador especial 'sync' para sincronização de canais), para determinar quais valores de cor são usados e modificados. Como o ajuste padrão de +channel é 'RGB,sync', o 'sync' garante que os canais de cor sejam modificados em conjunto pelo mesmo valor de gama, preservando as cores e ignorando a transparência.

-auto-orient

Ajusta uma imagem de modo que sua orientação seja adequada para visualização (ou seja, orientação superior esquerda).

Este operador lê e redefine o ajuste 'Orientation' do perfil de imagem EXIF e, então, realiza a rotação apropriada de 90 graus na imagem para orientá-la, para a correta visualização.

Este ajuste do perfil EXIF normalmente é definido usando um sensor de gravidade na câmera digital; no entanto, fotos tiradas diretamente para baixo ou para cima podem não ter um valor apropriado. Além disso, imagens que foram 'corrigidas' quanto à orientação sem redefinir este ajuste podem ser 'corrigidas' novamente, resultando em um resultado incorreto. Se o perfil EXIF tiver sido previamente removido, o operador -auto-orient não fará nada.

-auto-threshold method

Realiza automaticamente o limiar (thresholding) da imagem.

Aqui estão os métodos válidos:

Undefined
0: Nenhum método especificado (equivalente a 'OTSU').
Kapur
limiar por máxima entropia.
OTSU
limiar de imagem baseado em agrupamentos (cluster).
Triangle
um método de limiar geométrico.

O limiar calculado é retornado como a propriedade de imagem auto-threshold:verbose. Para, em vez disso, imprimir no seu dispositivo, use -define auto-threshold:verbose=true.

-average

Calcula a média de um conjunto de imagens.

Ocorre um erro se as imagens não tiverem tamanhos idênticos.

-backdrop

Exibe a imagem centralizada sobre um fundo (backdrop).

Este fundo cobre toda a tela da estação de trabalho e é útil para ocultar outras atividades de janelas X enquanto se visualiza a imagem. A cor do fundo é especificada como a cor de fundo. A cor é especificada usando o formato descrito na opção -fill.

-background color

Define a cor de fundo.

A cor é especificada usando o formato descrito na opção -fill. A cor de fundo padrão (se nenhuma for especificada ou encontrada na imagem) é branca.

-bench iterations

Mede o desempenho.

Repete o comando inteiro pelo número de iterações fornecido e relata o tempo de usuário e o tempo decorrido. Por exemplo, considere o comando a seguir e sua saída. Modifique o benchmark com -duration para executar o benchmark por um número fixo de segundos e -concurrent para executar o benchmark em paralelo (requer o recurso OpenMP).

$ magick 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

Neste exemplo, 5 iterações foram concluídas a 2.174 iterações por segundo, usando 3 threads e 3.190 segundos do tempo de usuário alocado, para um tempo total decorrido de 2.300 segundos.

-bias value{%}

Adiciona um viés ao convolver uma imagem.

Esta opção desloca a saída de -convolve de modo que os resultados positivos e negativos sejam relativos ao valor de viés especificado.

Isso é importante para compilações não-HDRI do ImageMagick ao lidar com convoluções que contêm valores tanto negativos quanto positivos. Esse é especialmente o caso de convoluções que envolvem filtros passa-alta ou detecção de bordas. Sem um viés na saída, os valores negativos são cortados em zero.

Ao usar um ImageMagick com a configuração HDRI definida em tempo de compilação, -bias não é necessário, pois o ImageMagick é capaz de armazenar/tratar quaisquer resultados negativos sem cortá-los para o intervalo de valores de cor (0..QuantumRange).

Veja a discussão sobre as implementações HDRI do ImageMagick na página High Dynamic-Range Images. Para saber mais sobre HDRI, vá às páginas de Usage do ImageMagick ou a este verbete da Wikipedia.

-bilateral-blur width{xheight}{+intensity-sigma}{+spatial-sigma}

Um filtro de suavização não linear, que preserva bordas e reduz ruído nas imagens. Ele substitui a intensidade de cada pixel por uma média ponderada dos valores de intensidade dos pixels próximos. Esse peso é baseado em uma distribuição gaussiana. Os pesos dependem não apenas da distância euclidiana dos pixels, mas também das diferenças radiométricas (por exemplo, diferenças de faixa, como intensidade de cor, distância de profundidade etc.). Isso preserva as bordas nítidas.

O intensity sigma está no espaço de intensidade. Um valor maior significa que cores mais distantes dentro da vizinhança do pixel (veja spatial-sigma) serão misturadas, resultando em áreas maiores de cor semi-uniforme.

O spatial sigma está no espaço de coordenadas. Um valor maior significa que pixels mais distantes influenciam uns aos outros desde que suas cores sejam próximas o suficiente (veja intensity-sigma). Quando o diâmetro da vizinhança é maior que zero, ele especifica o tamanho da vizinhança independentemente do spatial-sigma. Caso contrário, o diâmetro da vizinhança é proporcional ao spatial-sigma.

Os valores padrão para os sigmas de intensidade e espacial são 0.75diameter e 0.25diameter, respectivamente.

-black-point-compensation

Usa compensação de ponto preto.

-black-threshold value{%}

Força a preto todos os pixels abaixo do limiar, deixando inalterados todos os pixels iguais ou acima do limiar.

O valor de limiar pode ser dado como porcentagem ou como um valor inteiro absoluto dentro de [0, QuantumRange] correspondente ao valor de canal desejado. Veja -threshold para mais detalhes sobre limiares e os valores resultantes.

-blend geometry

Mescla uma imagem em outra pelo valor absoluto ou porcentagem fornecido.

A mesclagem fará a média das imagens em conjunto ('plus') de acordo com as porcentagens fornecidas e a transparência de cada pixel. Se apenas um único valor de porcentagem for fornecido, ele define o peso da imagem de composição ou 'source', enquanto a imagem de fundo é ponderada pela quantidade exatamente oposta. Ou seja, um -blend 30% mescla 30% da imagem 'source' com 70% da imagem 'destination'. Assim, é equivalente a -blend 30x70%.

-blue-primary x,y

Define o ponto primário de cromaticidade azul.

-blue-shift factor

Simula uma cena à noite sob o luar. Comece com um fator de 1.5

-blur radius

-blur radius{xsigma}

Reduz o ruído da imagem e reduz os níveis de detalhe.

Convolve a imagem com uma distribuição gaussiana ou normal usando o valor de Sigma fornecido. A fórmula é:

gaussian distribution

O valor de sigma é o argumento importante e determina a quantidade real de desfoque que ocorrerá.

O radius é usado apenas para determinar o tamanho do array que contém a distribuição gaussiana calculada. Ele deve ser um inteiro. Se não for fornecido, ou definido como zero, o IM calculará o maior radius possível que fornecerá resultados significativos para a distribuição gaussiana.

Quanto maior o Radius, mais lenta é a operação. No entanto, um Radius pequeno demais pode resultar em graves efeitos de aliasing. Como diretriz, o Radius deve ser pelo menos o dobro do valor de Sigma, embora três vezes produza um resultado mais preciso.

Esta opção difere de -gaussian-blur simplesmente por tirar proveito das propriedades de separabilidade da distribuição. Aqui aplicamos uma matriz gaussiana unidimensional na direção horizontal e depois repetimos o processo na direção vertical.

A configuração -virtual-pixel determinará como os pixels que estão fora da imagem propriamente dita são desfocados no resultado final.

-border geometry

Cerca a imagem com uma borda de cor.

Defina a largura e a altura usando a parte de tamanho do argumento de geometria. Veja Image Geometry para detalhes completos sobre o argumento geometry. Os deslocamentos são ignorados.

A partir do IM 6.7.8-8, os argumentos de geometria se comportam da seguinte forma:

value
value é adicionado tanto à esquerda/direita quanto ao topo/base
value-xx
value-x é adicionado apenas à esquerda/direita e o topo/base permanecem inalterados
xvalue-y
value-y é adicionado apenas ao topo/base e a esquerda/direita permanecem inalteradas
value-xxvalue-y
value-x é adicionado à esquerda/direita e value-y é adicionado ao topo/base
value-xx0
value-x é adicionado apenas à esquerda/direita e o topo/base permanecem inalterados
0xvalue-y
value-y é adicionado apenas ao topo/base e a esquerda/direita permanecem inalteradas
value%
value % da largura é adicionado à esquerda/direita e value % da altura é adicionado ao topo/base
value-xx%
value-x % da largura é adicionado à esquerda/direita e ao topo/base
xvalue-y%
value-y % da altura é adicionado ao topo/base e à esquerda/direita
value-x%xvalue-y%
value-x % da largura é adicionado à esquerda/direita e value-y % da altura é adicionado ao topo/base
value-x%x0%
value-x % da largura é adicionado à esquerda/direita e o topo/base permanecem inalterados
0%xvalue-y%
value-y % da altura é adicionado ao topo/base e a esquerda/direita permanecem inalteradas

Defina a cor da borda precedendo-a com a configuração -bordercolor.

A operação -border é afetada pela configuração -compose atual e pressupõe que esta esteja usando o método de composição padrão 'Over'. Ela gera uma imagem do tamanho apropriado, colorida pelo -bordercolor atual, antes de sobrepor a imagem original no centro desta imagem resultante. Isso significa que, com o método de composição padrão 'Over', quaisquer partes transparentes podem ser substituídas pela configuração -bordercolor atual.

Veja também a opção -frame, que tem mais funcionalidades.

-bordercolor color

Define a cor da borda.

A cor é especificada usando o formato descrito na opção -fill.

A cor de borda padrão é #DFDFDF, esse tom de cinza.

-borderwidth geometry

Define a largura da borda.

-brightness-contrast brightness

-brightness-contrast brightness{xcontrast}{%}

Ajusta o brilho e/ou o contraste da imagem.

Os valores de Brilho e Contraste aplicam alterações à imagem de entrada. Eles não são configurações absolutas. Um valor de brilho ou contraste igual a zero significa nenhuma alteração. A faixa de valores é de -100 a +100 em cada um. Valores positivos aumentam o brilho ou o contraste e valores negativos diminuem o brilho ou o contraste. Para controlar apenas o contraste, defina brightness=0. Para controlar apenas o brilho, defina contrast=0 ou simplesmente omita-o.

Você também pode usar -channel para controlar a quais canais aplicar a alteração de brilho e/ou contraste. O padrão é aplicar a mesma transformação a todos os canais.

Os argumentos de Brilho e Contraste são convertidos em deslocamento (offset) e inclinação (slope) de uma transformação linear e aplicados usando -function polynomial "slope,offset".

A inclinação varia de 0 em contrast=-100 até quase vertical em contrast=+100. Para brightness=0 e contrast=-100, o resultado é totalmente cinza-médio. Para brightness=0 e contrast=+100, o resultado se aproximará, mas não chegará exatamente a um limiar em cinza-médio; ou seja, a transformação linear é uma linha vertical muito íngreme no cinza-médio.

Inclinações negativas, isto é, negativar a imagem, não são possíveis com esta função. Todas as inclinações alcançáveis são zero ou positivas.

O deslocamento varia de -0.5 em brightness=-100 a 0 em brightness=0 a +0.5 em brightness=+100. Assim, quando contrast=0 e brightness=100, o resultado é totalmente branco. Da mesma forma, quando contrast=0 e brightness=-100, o resultado é totalmente preto.

Como a faixa de valores para os argumentos é de -100 a +100, adicionar o símbolo '%' não faz diferença em relação a omiti-lo.

-cache threshold

(Esta opção foi substituída pela opção -limit).

-canny radius

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

O detector de bordas Canny usa um algoritmo de múltiplos estágios para detectar uma ampla gama de bordas na imagem.

Os limiares variam de 0 a 100% (por exemplo, -canny 0x1+10%+30%) com {+lower-percent} < {+upper-percent}. Se {+upper-percent} for aumentado mas {+lower-percent} permanecer o mesmo, serão detectados menos componentes de borda, mas seus comprimentos serão os mesmos. Se {+lower-percent} for aumentado mas {+upper-percent} permanecer o mesmo, será detectado o mesmo número de componentes de borda, mas seus comprimentos serão mais curtos. Os limiares padrão são mostrados.

O radius{xsigma} controla um desfoque gaussiano aplicado à imagem de entrada para reduzir o ruído e suavizar as bordas.

O valor de sigma é o argumento importante e determina a quantidade real de desfoque que ocorrerá.

O radius é usado apenas para determinar o tamanho do array que contém a distribuição gaussiana calculada. Ele deve ser um inteiro. Se não for fornecido, ou definido como zero, o IM calculará o maior radius possível que fornecerá resultados significativos para a distribuição gaussiana.

-caption string

Atribui uma legenda a uma imagem.

Esta opção define os metadados de legenda de uma imagem lida após esta opção ter sido fornecida. Para modificar a legenda de imagens já em memória, use "-set caption".

A legenda pode conter caracteres de formato especiais listados em Format and Print Image Properties. Esses atributos são expandidos quando a legenda é finalmente atribuída às imagens individuais.

Se o primeiro caractere de string for @, a legenda da imagem é lida de um arquivo cujo nome são os caracteres restantes da string. Comentários lidos de um arquivo são literais; nenhum caractere de formatação embutido é reconhecido.

Os metadados de legenda não são visíveis na própria imagem. Para isso, use as opções -annotate ou -draw em vez disso.

Por exemplo,

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

produz uma legenda de imagem de MIFF:bird.miff 512x480 (presumindo que a imagem bird.miff tenha largura de 512 e altura de 480).

-cdl filename

Faz correção de cor com uma color decision list.

Aqui está um exemplo de coleção de correção de cor:

<?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

Especifica os canais de cor da imagem aos quais os operadores subsequentes ficam limitados.

Escolha entre: Red, Green, Blue, Alpha, Gray, Cyan, Magenta, Yellow, Black, Opacity, Index, RGB, RGBA, CMYK ou CMYKA.

Os canais acima também podem ser especificados como uma lista separada por vírgulas ou podem ser abreviados como uma concatenação das letras 'R', 'G', 'B', 'A', 'O', 'C', 'M', 'Y', 'K'.

Os numerais de 0 a 31 também podem ser usados para especificar canais, onde 0 a 5 são:

'0' equivale a Red ou Cyan
'1' equivale a Green ou Magenta
'2' equivale a Blue ou Yellow
'3' equivale a Black
'4' equivale a Alpha ou Opacity
'5' equivale a Index

Por exemplo, para selecionar apenas os canais Red e Blue você pode usar qualquer um dos seguintes:

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

Todos os canais presentes em uma imagem podem ser especificados usando o tipo de canal especial All. Nem todos os operadores são 'capazes de operar por canal', mas geralmente quaisquer operadores que são, em geral, operadores de imagem em 'escala de cinza' entenderão essa configuração. Consulte a documentação de cada operador.

Além da seleção normal de canais, uma flag extra pode ser especificada, 'Sync'. Ela está ativada por padrão e, quando definida, significa que os operadores que entendem essa flag devem realizar: sincronização entre canais dos canais. Se não for especificada, então a maioria dos operadores de escala de cinza aplicará suas operações de processamento de imagem a cada canal individual (conforme especificado pelo restante da configuração de -channel) de forma completamente independente entre si.

Por exemplo, para operadores como -auto-level e -auto-gamma os canais de cor são modificados em conjunto exatamente da mesma maneira, de modo que as cores permaneçam sincronizadas. Sem isso definido, cada canal é modificado separada e independentemente, o que pode produzir distorção de cor.

O método 'Convolve' de -morphology e os métodos matemáticos de -compose também entendem a flag 'Sync' para modificar o comportamento das cores dos pixels de acordo com o canal alfa (se presente). Ou seja, ele modificará o processamento de imagem com a compreensão de que cores totalmente transparentes não devem contribuir para o resultado final.

Basicamente, por padrão, os operadores trabalham com os canais de cor de forma síncrona e tratam a transparência como especial, a menos que a configuração de -channel seja modificada de modo a remover o efeito da flag 'Sync'. Como cada operador faz isso depende da implementação atual desse operador. Nem todos os operadores entendem essa flag no momento, mas isso está mudando.

Para imprimir uma lista completa dos tipos de canal, use -list channel.

Por padrão, o ImageMagick define -channel com o valor 'RGBK,sync', que especifica que os operadores atuam em todos os canais de cor exceto o canal de transparência, e que todos os canais de cor devem ser modificados exatamente da mesma maneira, com uma compreensão da transparência (dependendo da operação aplicada). A forma 'plus' +channel redefinirá o valor de volta a esse padrão.

As opções afetadas pela configuração de -channel incluem as seguintes. -auto-gamma, -auto-level, -black-threshold, -blur, -clamp, -clut, -combine, -composite (apenas métodos matemáticos de composição), -convolve, -contrast-stretch, -evaluate, -function, -fx, -gaussian-blur, -hald-clut, -motion-blur, -morphology, -negate, -normalize, -ordered-dither, -rotational-blur, -random-threshold, -range-threshold, -separate, -threshold e -white-threshold.

Atenção, alguns operadores se comportam de forma diferente quando a configuração padrão +channel está em vigor, em comparação com QUALQUER configuração de -channel definida pelo usuário (incluindo o equivalente ao padrão). Esses operadores ainda não foram adaptados para entender a nova flag 'Sync'.

Por exemplo, -threshold por padrão converterá a imagem em escala de cinza antes de aplicar o limiar, se nenhuma configuração de -channel tiver sido definida. Isso ainda não é controlado pela flag 'Sync'.

Além disso, alguns operadores como -blur, -gaussian-blur modificarão seu tratamento dos canais de cor se o canal 'alpha' também estiver habilitado por -channel. Geralmente isso é feito para garantir que cores totalmente transparentes sejam tratadas como totalmente transparentes e, assim, que qualquer cor 'oculta' subjacente não tenha efeito sobre os resultados finais. Tipicamente resultando em efeitos de 'halo'. Os equivalentes mais recentes de convolução por -morphology, no entanto, têm compreensão da flag 'Sync' e, portanto, tratarão a transparência corretamente por padrão.

Como o canal alfa é opcional dentro das imagens, alguns operadores lerão os canais de cor de uma imagem como uma máscara alfa em escala de cinza, quando a imagem não tiver um canal alfa presente, e a configuração de -channel disser ao operador para aplicar a operação usando canais alfa. O operador -clut é um bom exemplo disso.

-channel-fx expression

Troca, extrai ou copia um ou mais canais de imagem.

A expressão consiste em um ou mais canais, mnemônicos ou numéricos (por exemplo, red ou 0, green ou 1, etc.), separados por certos símbolos de operação, da seguinte forma:

<=>  troca dois canais (por exemplo, red<=>blue)
=>   copia um canal para outro canal (por exemplo, red=>green)
=    atribui um valor constante a um canal (por exemplo, red=50%)
,    grava nova imagem com os canais na ordem especificada (por exemplo, red, green)
;    adiciona uma nova imagem de saída para o próximo conjunto de operações de canal (por exemplo, red; green; blue)
|    move para a próxima imagem de entrada como fonte dos dados de canal (por exemplo, | gray=>alpha)

Por exemplo, para criar 3 imagens em escala de cinza a partir dos canais red, green e blue de uma imagem, use:

-channel-fx "red; green; blue"

Um canal sem um símbolo de operação implica separação (ou seja, ponto e vírgula).

Aqui pegamos uma imagem sRGB e uma imagem em escala de cinza e injetamos a imagem em escala de cinza no canal alfa:

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

Use um comando semelhante para definir uma máscara de leitura:

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

Neste exemplo, calculamos o valor médio de RGB para todos os pixels opacos de uma imagem:

magick wizard-alpha.png -channel-fx "alpha=>read-mask" -channel rgb -format "%[fx:mean]\n" info:

Vamos criar dois meta canais e populá-los com uma cópia dos pixels cinza:

magick gray.pgm -channel-fx "gray=>meta, gray=>meta1" gray.tif

Observe que salvamos os resultados em um arquivo de imagem TIFF. Nem todos os formatos suportam imagens multiespectrais. TIFF, MIFF, MPC e FTXT suportam.

Adicione -debug pixel antes da opção -channel-fx para rastrear a morfologia dos canais.

-charcoal factor

Simula um desenho a carvão.

-chop geometry

Remove pixels do interior de uma imagem.

Consulte Image Geometry para detalhes completos sobre o argumento geometry. A largura e a altura fornecidas na porção de tamanho do argumento de geometria indicam o número de colunas e linhas a serem removidas. A porção de deslocamento do argumento de geometria é influenciada por uma configuração de -gravity, se presente.

A opção -chop remove linhas e colunas inteiras e move os blocos de canto restantes para a esquerda e para cima para fechar as lacunas.

Embora possa remover linhas e colunas internas de pixels, é mais comumente usada com uma configuração de -gravity e deslocamentos zero, de modo a remover uma única borda de uma imagem. Compare isso com -shave, que remove números iguais de pixels de lados opostos da imagem.

Usar -chop efetivamente desfaz os resultados de um -splice que recebeu as mesmas configurações de geometria e -gravity.

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

Equalização de histograma adaptativa com limite de contraste.

A imagem é dividida em ladrilhos de largura e altura em pixels. Acrescente % para definir a largura e a altura como porcentagens das dimensões da imagem. O tamanho do ladrilho deve ser maior que o tamanho das características a serem preservadas e respeita a proporção da imagem. Adicione ! para forçar uma largura e altura de ladrilho exatas. number-bins é o número de compartimentos de histograma por ladrilho (mín 2, máx 65536). O número de compartimentos de histograma deve ser menor que o número de pixels em um único ladrilho. clip-limit é o limite de contraste para mudanças localizadas no contraste. Um clip-limit de 2 a 3 é um bom ponto de partida (por exemplo, -clahe 50x50%+128+3). Valores muito grandes permitirão que a equalização de histograma faça o que quiser, ou seja, resultará em contraste local máximo. O valor 1 resultará na imagem original. Observe que, se o número de compartimentos e o clip-limit forem omitidos, eles assumem como padrão 128 e nenhum recorte, respectivamente.

-clamp

Define cada pixel cujo valor está abaixo de zero como zero e qualquer pixel cujo valor está acima do intervalo quantum como o intervalo quantum (por exemplo, 65535); caso contrário, o valor do pixel permanece inalterado.

-clip

Aplica o caminho de recorte, se houver um presente.

Se um caminho de recorte estiver presente, ele é aplicado às operações subsequentes.

Por exemplo, no comando

magick cockatoo.tif -clip -negate negated.tif

apenas os pixels dentro do caminho de recorte são negados.

O recurso -clip requer suporte a SVG. Se a biblioteca delegada de SVG não estiver presente, a opção é ignorada.

Use +clip para desabilitar o recorte nas operações subsequentes.

-clip-mask

Recorta a imagem conforme definido por esta máscara.

Usa o canal alfa da imagem atual como uma máscara. Quaisquer áreas que sejam brancas não são modificadas por nenhum dos 'operadores de processamento de imagem' que seguem, até que a máscara seja removida. Os pixels nas áreas pretas da máscara de recorte são modificados conforme os requisitos do operador.

De certa forma, isso é semelhante (embora não seja igual) a definir uma -region retangular, ou a usar o negativo da imagem de máscara (a terceira) em uma operação de -composite com três imagens.

Use +clip-mask para desabilitar o recorte nas operações subsequentes.

-clip-path id

Recorta ao longo de um caminho nomeado do perfil 8BIM.

Isto é idêntico a -clip, exceto que escolhe um caminho de recorte específico no caso de a imagem ter mais de um caminho disponível. O ImageMagick suporta codificação UTF-8. Se o seu caminho nomeado estiver em uma codificação diferente, use iconv para converter o nome do caminho de recorte para essa codificação; caso contrário, o nome do caminho não corresponderá.

Use +clip-path para desabilitar o recorte nas operações subsequentes.

-clone index(s)

Faz um clone de uma imagem (ou imagens).

Dentro de parênteses (onde o operador é normalmente usado), ele fará um clone das imagens da última sequência de imagens 'enviada' (pushed) e as adiciona ao final da sequência de imagens atual. Se usado fora de parênteses, um erro é gerado.

Especifique a imagem por seu índice na sequência. A primeira imagem é o índice 0. Índices negativos são relativos ao final da sequência; por exemplo, −1 representa a última imagem da sequência. Especifique um intervalo de imagens com um traço (por exemplo, 0−4). Separe múltiplos índices com vírgulas, mas sem espaços (por exemplo, 0,2,5). Um valor de '0−−1 efetivamente clonará todas as imagens.

O +clone simplesmente fará uma cópia da última imagem na sequência de imagens e é, portanto, equivalente a usar um argumento de '−1'.

-clut

Substitui os valores de canal na primeira imagem usando cada canal correspondente na segunda imagem como uma tabela de consulta de cores (color lookup table).

A segunda imagem (LUT) é normalmente uma imagem de gradiente contendo o mapeamento de histograma de como cada canal deve ser modificado. Tipicamente é uma imagem de uma única linha ou coluna de valores de cor de substituição. Se for maior que uma única linha ou coluna, os valores são tomados de uma linha diagonal dos cantos superior-esquerdo para inferior-direito.

A consulta é ainda controlada pela configuração de -interpolate, que é especialmente útil para uma LUT que não tem o comprimento total necessário para o nível de Qualidade (Q) instalado do ImageMagick. Boas configurações para isso são 'bilinear' e 'catrom'. Catrom pode retornar uma continuidade útil de segunda ordem.

Este operador é especialmente adequado para substituir uma imagem em escala de cinza por um gradiente de cor específico a partir da imagem CLUT.

Apenas os valores de canal definidos pela configuração de -channel terão seus valores substituídos. Em particular, como a configuração padrão de -channel é RGBA, isso significa que a transparência (canal alfa/matte) é afetada, a menos que a configuração de -channel seja modificada, por exemplo, RGB. Quando o canal alfa não está definido, ele é ignorado pelo operador -clut.

Se a imagem que está sendo modificada, ou a imagem de consulta, não contiver transparência (ou seja, -alpha está 'off'), mas a configuração de -channel incluir substituição de alfa, então assume-se que a imagem representa um gradiente em escala de cinza que é usado para os valores alfa de substituição. Ou seja, você pode usar uma imagem CLUT em escala de cinza para ajustar o canal alfa de uma imagem existente, ou pode colorir uma imagem em escala de cinza usando cores de uma CLUT contendo as cores desejadas, incluindo transparência.

Veja também -hald-clut, que substitui cores de acordo com a consulta do valor RGB de cor completa a partir de uma representação 2D de um cubo de cores 3D.

-coalesce

Define totalmente a aparência de cada quadro de uma sequência de animação GIF, para formar uma animação em 'tira de filme'.

Sobrepõe cada imagem em uma sequência de imagens de acordo com seus metadados de -dispose, para reproduzir a aparência de uma animação em cada ponto da sequência de animação. Todas as imagens devem ter o mesmo tamanho e recebem configurações apropriadas de descarte GIF para que a animação continue funcionando como esperado como uma animação GIF. Tais quadros são mais facilmente visualizados e processados do que as imagens de sobreposição GIF altamente otimizadas.

A animação pode ser reotimizada após o processamento usando o método 'optimize' de -layers, embora não haja garantia de que a otimização da animação GIF restaurada seja melhor que a original.

-colorize value

Coloriza a imagem por uma quantia especificada por value usando a cor especificada pela configuração de -fill mais recente.

Especifique a quantidade de colorização como uma porcentagem. Valores de colorização separados podem ser aplicados aos canais red, green e blue da imagem com uma lista de valores de colorização delimitada por vírgulas (por exemplo, -colorize 0,0,50).

-colormap type

Define o tipo de mapa de cores.

O type pode ser shared ou private.

Esta opção só se aplica quando o visual padrão do servidor X é PseudoColor ou GrayScale. Consulte -visual para mais detalhes. Por padrão, um mapa de cores compartilhado (shared) é alocado. A imagem compartilha cores com outros clientes X. Algumas cores da imagem podem ser aproximadas, portanto sua imagem pode parecer muito diferente do pretendido. Se private for escolhido, as cores da imagem aparecem exatamente como são definidas. No entanto, outros clientes podem ficar com cores distorcidas (technicolor) quando o mapa de cores da imagem é instalado.

-colors value

Define o número preferencial de cores na imagem.

O número real de cores na imagem pode ser menor que o solicitado, mas nunca maior. Observe que esta é uma opção de redução de cores. Imagens com menos cores únicas do que o especificado por value terão quaisquer cores duplicadas ou não utilizadas removidas. A ordenação de uma paleta de cores existente pode ser alterada. Ao converter uma imagem de colorida para escala de cinza, é mais eficiente converter a imagem para o espaço de cor gray antes de reduzir o número de cores. Consulte o algoritmo de redução de cores para mais detalhes.

-color-matrix matrix

Aplica correção de cor à imagem.

Esta opção permite alterações de saturação, rotação de matiz, conversão de luminância para alfa e diversos outros efeitos. Embora seja possível usar matrizes de transformação de tamanho variável, normalmente utiliza-se uma matriz 5x5 para uma imagem RGBA e uma 6x6 para CMYKA (ou RGBA com deslocamentos). A matriz é semelhante àquela usada pelo Adobe Flash, exceto que os deslocamentos do Imagemagick ficam na coluna 6 em vez da 5 (para dar suporte a imagens CMYKA) e os deslocamentos do Imagemagick são normalizados (divida os deslocamentos do Flash por 255).

Como exemplo, para adicionar contraste a uma imagem com deslocamentos, experimente este comando:

magick 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

Define o espaço de cor da imagem.

As opções são:

Adobe98 CIELab DisplayP3 HSL
CAT02LMS CMY CMYK Gray
HCL HCLp HSB HSI
HSV HWB Jzazbz Lab
LCH LCHab LCHuv LinearGray
LMS Log Luv OHTA
Oklab Oklch ProPhoto Rec601YCbCr
Rec709YCbCr RGB scRGB sRGB
Transparent xyY XYZ YCbCr
YDbDr YCC YIQ YPbPr
YUV

Para imprimir uma lista completa de espaços de cor, use -list colorspace.

Para uma conversão de cor mais precisa de ou para os espaços de cor RGB linear, CMYK ou tons de cinza, use a opção -profile. Observe que o ImageMagick assume o espaço de cor sRGB se o formato da imagem não indicar o contrário. Para a conversão de espaço de cor, a função gama é primeiro removida para produzir RGB linear.

Conversão de RGB para Outros Espaços de Cor CMY

C=QuantumRange−R
M=QuantumRange−G
Y=QuantumRange−B
CMYK — começa com o CMY acima
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.715158G+0.072186B
HSB — Matiz, Saturação, Brilho; como um cone com o pico apontando para baixo
H=ângulo ao redor do perímetro (0 a 360 graus); H=0 é vermelho; ângulos crescentes em direção ao verde
S=distância a partir do eixo para fora
B=distância ao longo do eixo de baixo para cima; B=max(R,G,B); semelhante à intensidade
HSL — Matiz, Saturação, Luminosidade; como um cone duplo unido pelas pontas, com picos no topo e na base
H=ângulo ao redor do perímetro (0 a 360 graus); H=0 é vermelho; ângulos crescentes em direção ao verde
S=distância a partir do eixo para fora
L=distância ao longo do eixo de baixo para cima; L=0.5max(R,G,B) + 0.5min(R,G,B); semelhante à intensidade
HWB — Matiz, Brancura, Negrura
Matiz (equação complicada)
Brancura (equação complicada)
Negrura (equação complicada)
LAB
L (equação complicada relacionando X,Y,Z)
A (equação complicada relacionando X,Y,Z)
B (equação complicada relacionando X,Y,Z)
LinearGray
LinearGray = 0.298839R+0.586811G+0.114350B
LOG
I1 (equação complicada envolvendo o logaritmo de R)
I2 (equação complicada envolvendo o logaritmo de G)
I3 (equação complicada envolvendo o logaritmo de B)
OHTA — aproxima a transformação de componentes principais
I1=0.33333
R+0.33334G+0.33333B; semelhante à intensidade
I2=(0.50000R+0.00000G−0.50000B)(QuantumRange+1)/2
I3=(−0.25000R+0.50000G−0.25000B)(QuantumRange+1)/2
Rec601Luma
Gray = 0.298839R+0.586811G+0.114350B
Rec601YCbCr
Y=0.2988390
R+0.5868110G+0.1143500B; semelhante à intensidade
Cb=(−0.168736R-0.331264G+0.500000B)(QuantumRange+1)/2
Cr=(0.500000R−0.418688G−0.081312B)(QuantumRange+1)/2
Rec709Luma
Gray=0.212656R+0.715158G+0.072186B
Rec709YCbCr
Y=0.212656
R+0.715158G+0.072186B; semelhante à intensidade
Cb=(−0.114572R−0.385428G+0.500000B)+(QuantumRange+1)/2
Cr=(0.500000
R−0.454153G−0.045847B)+(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.4124564R+0.3575761G+0.1804375B
Y=0.2126729
R+0.7151522G+0.0721750B
Z=0.0193339R+0.1191920G+0.9503041B
YCC
Y=(0.298839
R+0.586811G+0.114350B) (com escalonamento complicado); semelhante à intensidade
C1=(−0.298839R−0.586811G+0.88600B) (com escalonamento complicado)
C2=(0.70100
R−0.586811G−0.114350B) (com escalonamento complicado)
YCbCr
Y=0.2988390R+0.5868110G+0.1143500B; semelhante à intensidade
Cb=(−0.168736
R−0.331264G+0.500000B)(QuantumRange+1)/2
Cr=(0.500000
R−0.418688G−0.081312B)(QuantumRange+1)/2
YIQ
Y=0.298839
R+0.586811G+0.114350B; semelhante à intensidade
I=(0.59600R−0.27400G−0.32200B)(QuantumRange+1)/2
Q=(0.21100R−0.52300G+0.31200B)(QuantumRange+1)/2
YPbPr
Y=0.2988390R+0.5868110G+0.1143500B; semelhante à intensidade
Pb=(−0.168736
R−0.331264G+0.500000B)(QuantumRange+1)/2
Pr=(0.500000
R−0.418688G−0.081312B)(QuantumRange+1)/2
YUV
Y=0.298839
R+0.586811G+0.114350B; semelhante à intensidade
U=(−0.14740R−0.28950G+0.43690B)(QuantumRange+1)/2
V=(0.61500R−0.51500G−0.10000B)(QuantumRange+1)/2

Observe que o espaço de cor scRGB requer suporte a HDRI; caso contrário, ele se comporta exatamente como RGB linear.

Use o espaço de cor Undefined para identificar imagens multiespectrais.

-color-threshold start-color-stop-color

Retorna uma imagem binária em que todas as cores dentro do intervalo especificado são alteradas para branco. Todas as outras cores são alteradas para preto.

-combine

+combine colorspace

Combina uma ou mais imagens em uma única imagem.

Os canais (previamente definidos por -channel) da imagem combinada são tomados dos valores em tons de cinza de cada imagem na sequência, em ordem. Para a configuração padrão de -channel igual a RGB, isso significa que a primeira imagem é atribuída ao canal Vermelho, a segunda ao canal Verde e a terceira ao Azul.

Esta opção pode ser pensada como a inversa de -separate, desde que as configurações de canal sejam as mesmas. Assim, no exemplo a seguir, a imagem final deve ser uma cópia da original.

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

-comment string

Incorpora um comentário em uma imagem.

Esta opção define os metadados de comentário de uma imagem lida após esta opção ter sido fornecida. Para modificar um comentário de imagens já em memória, use "-set comment".

O comentário pode conter caracteres de formato especiais listados em Formatar e Imprimir Propriedades da Imagem. Esses atributos são expandidos quando o comentário é finalmente atribuído às imagens individuais.

Se o primeiro caractere de string for @, o comentário da imagem é lido de um arquivo cujo título são os caracteres restantes da string. Comentários lidos de um arquivo são literais; nenhum caractere de formatação incorporado é reconhecido.

Os metadados de comentário não são visíveis na imagem em si. Para isso, use as opções -annotate ou -draw em vez disso.

Por exemplo,

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

produz um comentário de imagem igual a MIFF:bird.miff 512x480 (supondo que a imagem bird.miff tenha uma largura de 512 e uma altura de 480.

-compare

Anota matematicamente e visualmente a diferença entre uma imagem e sua reconstrução

Esta é uma versão para convert do "compare" para duas imagens de mesmo tamanho. A sintaxe é a seguinte, mas outras métricas são permitidas.

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

Para obter o valor da métrica, use o formato de string "%[distortion]".

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

-complex operator

Realiza matemática complexa em uma sequência de imagens

Escolha entre estes operadores:

add
conjugate
divide
magnitude-phase
multiply
real-imaginary
subtract

Opcionalmente, especifique a SNR do operador divide com -define complex:snr=float.

-compose operator

Define o tipo de composição de imagem.

Veja Composição Alfa para uma discussão detalhada sobre composição alfa.

Esta configuração afeta os operadores de processamento de imagem que mesclam duas (ou mais) imagens de alguma forma. Isso inclui os operadores -compare, -composite, -layers composite, -flatten, -mosaic, -layers merge, -border, -frame e -extent.

Ela também é uma das principais opções do comando "composite".

-composite

Realiza composição alfa em duas imagens e uma máscara opcional

Toma a primeira imagem, o 'destino', e sobrepõe a segunda imagem, a 'origem', de acordo com a configuração atual de -compose. A localização da imagem de 'origem' ou de 'sobreposição' é controlada de acordo com as configurações de -gravity e -geometry.

Se uma terceira imagem for fornecida, ela é tratada como uma imagem de 'máscara' de mesclagem em tons de cinza relativa à primeira imagem de 'destino'. Essa máscara é mesclada com a imagem de origem. Entretanto, para o método de composição 'displace', a máscara é usada para fornecer uma imagem separada de deslocamento em Y.

Se um método de -compose exigir argumentos numéricos ou sinalizadores adicionais, estes podem ser fornecidos definindo apropriadamente o -set 'option:compose:args' para o método de composição.

Alguns métodos de -compose podem modificar a imagem de 'destino' fora da área de sobreposição. Isso é desativado por padrão. Você pode ativá-lo definindo o define: -define 'compose:clip-to-self=true'.

A especificação de composição SVG exige que os valores de cor e opacidade variem entre zero e QuantumRange, inclusive. Você pode permitir valores fora desse intervalo com esta opção: -set 'option:compose:clamp=false

-compress type

Usa a compressão de pixel especificada por type ao escrever a imagem.

As opções são: None, BZip, Fax, Group4, JPEG, JPEG2000, Lossless, LZW, RLE ou Zip.

Para imprimir uma lista completa de tipos de compressão, use -list compress.

Especifique +compress para armazenar a imagem binária em um formato não comprimido. O padrão é o tipo de compressão do arquivo de imagem especificado.

Se a compressão LZW for especificada mas a compressão LZW não tiver sido habilitada, os dados da imagem são escritos em um formato LZW não comprimido que pode ser lido por decodificadores LZW. Isso pode resultar em arquivos GIF maiores do que o esperado.

Lossless refere-se ao JPEG sem perdas, que só está disponível se a biblioteca JPEG tiver sido corrigida para suportá-lo. O uso de JPEG sem perdas geralmente não é recomendado.

Ao escrever um arquivo ICO, você pode solicitar que as imagens sejam codificadas no formato PNG especificando a compressão Zip.

Ao escrever um arquivo JNG, especifique a compressão Zip para solicitar que o canal alfa seja codificado no formato PNG "IDAT", ou JPEG para solicitar que ele seja codificado no formato JPG "JDAA".

Use a opção -quality para definir o nível de compressão a ser usado pelos codificadores JPEG, PNG, MIFF e MPEG. Use a opção -sampling-factor para definir o fator de amostragem a ser usado pelos codificadores JPEG, MPEG e YUV para a subamostragem dos canais de crominância.

-connected-components connectivity

A rotulagem de componentes conexos detecta regiões conexas em uma imagem; escolha entre conectividade de 4 ou 8 vias.

Use -define connected-components:verbose=true para gerar as estatísticas associadas a cada rótulo único.

-contrast

Realça ou reduz o contraste da imagem.

Esta opção realça as diferenças de intensidade entre os elementos mais claros e mais escuros da imagem. Use -contrast para realçar a imagem ou +contrast para reduzir o contraste da imagem.

Para um efeito mais pronunciado, você pode repetir a opção:

magick rose: -contrast -contrast rose_c2.png

-contrast-stretch black-point

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

Aumenta o contraste em uma imagem esticando o intervalo de valores de intensidade.

Ao realizar o esticamento, escurece no máximo black-point pixels e clareia no máximo white-point pixels. Ou, se for usado percentual, escurece no máximo black-point % dos pixels e clareia no máximo white-point % dos pixels.

Antes do ImageMagick 6.4.7-0, -contrast-stretch escurecia no máximo black-point pixels e clareava no máximo o total de pixels menos white-point pixels. Ou, se fosse usado percentual, escurecia no máximo black-point % dos pixels e clareava no máximo 100% menos white-point % dos pixels.

Observe que -contrast-stretch 0 modificará a imagem de tal forma que os valores mínimo e máximo da imagem sejam esticados para 0 e QuantumRange, respectivamente, sem qualquer perda de dados por saturação ou recorte em qualquer das extremidades. Isso não é o mesmo que -normalize, que é equivalente a -contrast-stretch 2%x1% (ou, antes do ImageMagick 6.4.7-0, -contrast-stretch 2%x99%).

Internamente, o operador funciona criando uma caixa de histograma e, em seguida, usa essa caixa para modificar a imagem. Assim, algumas cores podem ser mescladas quando originalmente caíram na mesma 'caixa'.

Todos os canais são normalizados em conjunto pela mesma quantidade, de modo a preservar a integridade das cores, quando a configuração padrão +channel está em uso. Especificar qualquer outra configuração de -channel normalizará os canais RGB de forma independente.

Veja também -auto-level para uma normalização 'perfeita' de imagens matemáticas.

Este operador está em revisão para reformulação.

-convolve kernel

Convolui uma imagem com um núcleo de convolução fornecido pelo usuário.

O núcleo é uma matriz especificada como uma lista de inteiros separados por vírgula (sem espaços), ordenados da esquerda para a direita, começando pela linha superior. Atualmente, apenas núcleos de dimensão ímpar são suportados e, portanto, o número de entradas no núcleo especificado deve ser 32=9, 52=25, 72=49, etc.

Observe que o operador -convolve suporta a configuração -bias. Esta opção desloca a convolução de modo que os resultados positivos e negativos sejam relativos a um valor de viés especificado pelo usuário. Isso é importante para compilações não-HDRI do ImageMagick ao lidar com convoluções que contêm valores negativos e positivos. Esse é especialmente o caso de convoluções envolvendo filtros passa-alta ou detecção de bordas. Sem um viés de saída, os valores negativos são recortados em zero.

Ao usar um ImageMagick com a configuração de compilação HDRI, -bias não é necessário, pois o ImageMagick é capaz de armazenar/manipular quaisquer resultados negativos sem recortar para o intervalo de valores de cor (0..QuantumRange). Veja a discussão sobre implementações HDRI do ImageMagick na página Imagens de Alta Faixa Dinâmica. Para mais informações sobre HDRI, acesse as páginas de Uso do ImageMagick ou este verbete da Wikipédia.

-copy geometry offset

Copia pixels de uma área de uma imagem para outra.

-crop geometry{@}{!}

Recorta uma ou mais regiões retangulares da imagem.

Veja Geometria da Imagem para detalhes completos sobre o argumento geometry.

A largura e a altura do argumento geometry definem o tamanho da imagem que permanece após o recorte, e x e y no deslocamento (se presentes) dão a localização do canto superior esquerdo da imagem recortada em relação à imagem original. Para especificar a quantidade a ser removida, use -shave em vez disso.

Se os deslocamentos x e y estiverem presentes, uma única imagem é gerada, consistindo nos pixels da região de recorte. Os deslocamentos especificam a localização do canto superior esquerdo da região de recorte, medida para baixo e para a direita em relação ao canto superior esquerdo da imagem. Se a opção -gravity estiver presente com gravidade NorthEast, East ou SouthEast, ela fornece a distância para a esquerda a partir da borda direita da imagem até a borda direita da região de recorte. De modo semelhante, se a opção -gravity estiver presente com gravidade SouthWest, South ou SouthEast, a distância é medida para cima entre as bordas inferiores.

Se os deslocamentos x e y forem omitidos, um conjunto de ladrilhos com a geometria especificada, cobrindo toda a imagem de entrada, é gerado. Os ladrilhos mais à direita e os ladrilhos inferiores são menores se a geometria especificada se estender além das dimensões da imagem de entrada.

Você pode adicionar o @ ao argumento geometry para dividir igualmente a imagem no número de ladrilhos gerados.

Ao adicionar um sinalizador de caractere de exclamação ao argumento geometry, o tamanho e o deslocamento da página da tela virtual das imagens recortadas são definidos como se o argumento geometry fosse uma viewport ou janela. Isso significa que o tamanho da página da tela é definido exatamente com o mesmo tamanho que você especificou, e o deslocamento da imagem é definido em relação ao canto superior esquerdo da região recortada.

Se a imagem recortada 'não acertou' a imagem real em sua tela virtual, uma imagem especial de um único pixel transparente 'não acertada' é retornada, e um aviso de 'recorte não acertado' é dado.

Pode ser necessário aplicar +repage à imagem antes de recortá-la para garantir que o quadro de coordenadas do recorte seja realocado para o canto superior esquerdo da imagem visível. De modo semelhante, você pode querer usar +repage após o recorte para remover o deslocamento de página que será deixado para trás. Isso é especialmente verdadeiro quando você vai gravar em um formato de imagem como o PNG, que suporta deslocamento de imagem.

-cycle amount

Desloca o mapa de cores da imagem por amount.

Amount define o número de posições em que cada entrada do mapa de cores é deslocada.

-debug events

Habilita a impressão de depuração.

O parâmetro events especifica quais eventos devem ser registrados. Pode ser None, All, Trace, ou uma lista separada por vírgulas consistindo em um ou mais dos seguintes domínios: Accelerate, Annotate, Blob, Cache, Coder, Configure, Deprecate, Exception, Locale, Render, Resource, Security, TemporaryFile, Transform, X11 ou User.

Por exemplo, para registrar eventos de cache e blob, use.

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

O domínio User normalmente está vazio, mas os desenvolvedores podem registrar eventos de usuário em sua cópia privada do ImageMagick.

Para imprimir a lista completa de métodos de depuração, use -list debug.

Use a opção -log para especificar o formato da saída de depuração.

Use +debug para desativar todo o registro.

A depuração também pode ser definida usando a variável de ambiente MAGICK_DEBUG. Os valores permitidos para a variável de ambiente MAGICK_DEBUG são os mesmos que para a opção -debug.

-decipher filename

Decifra e restaura pixels que foram previamente transformados por -encipher.

Obtém a senha do arquivo especificado por filename.

Para mais informações, veja a página web ImageMagick: Encipher or Decipher an Image.

-deconstruct

Encontra áreas que mudaram entre imagens

Dada uma sequência de imagens, todas do mesmo tamanho, como as produzidas por -coalesce, substitui a segunda e as imagens posteriores por uma imagem menor contendo apenas a área que mudou em relação à imagem anterior.

A sequência de imagens resultante pode ser usada para otimizar uma sequência de animação, embora não funcione corretamente para animações GIF quando partes da animação podem passar de opaco para transparente.

Esta opção é, na verdade, equivalente ao método 'compare-any' de -layers.

-define key{=value}...

Adiciona configurações globais específicas geralmente usadas para controlar codificadores e operações de processamento de imagem.

Esta opção cria uma ou mais definições para codificadores e decodificadores usarem ao ler e gravar dados de imagem. As definições são geralmente usadas para controlar os módulos codificadores de formato de arquivo de imagem e as operações de processamento de imagem, além do que é fornecido por meios normais. As configurações definidas são listadas nas informações de -verbose (formato de saída "info:") como "Artifacts".

Se value estiver ausente em uma definição, uma definição de valor vazio de um sinalizador é criada com esse nome. Isso é usado para controlar opções de liga/desliga. Use +define key para remover definições criadas anteriormente. Use +define "*" para remover todas as definições existentes.

As mesmas configurações de 'artifact' também podem ser definidas usando a opção -set "option:key" "value", que também permite o uso de Format and Print Image Properties no valor definido.

A option e a key são independentes de maiúsculas e minúsculas (são convertidas para minúsculas para uso dentro dos decodificadores), enquanto o value é dependente de maiúsculas e minúsculas.

Tais configurações têm escopo global e afetam todas as imagens e operações.

Veja ImageMagick Defines para uma lista de defines reconhecidos. Por exemplo:

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

Defina atributos do registro de imagem prefixando o valor com registry:. Por exemplo, para definir um caminho temporário onde colocar arquivos de trabalho, use:

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

-delay ticks

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

Exibe a próxima imagem após uma pausa.

Esta opção é útil para regular a animação de sequências de imagens; ticks/ticks-per-second segundos devem transcorrer antes da exibição da próxima imagem. O padrão é nenhum atraso entre cada exibição da sequência de imagens. O padrão de ticks-per-second é 100.

Use > para alterar o atraso da imagem somente se seu valor atual exceder o atraso fornecido. < altera o atraso da imagem somente se o valor atual for menor que o atraso fornecido. Por exemplo, se você especificar 30> e o atraso da imagem for 20, o atraso da imagem não muda. No entanto, se o atraso da imagem for 40 ou 50, o atraso é alterado para 30. Coloque o atraso fornecido entre aspas para evitar que o < ou > seja interpretado pelo seu shell como um redirecionamento de arquivo.

-delete indexes

Exclui as imagens especificadas pelo índice, da sequência de imagens.

Especifique a imagem pelo seu índice na sequência. A primeira imagem tem índice 0. Índices negativos são relativos ao final da sequência; por exemplo, -1 representa a última imagem da sequência. Especifique um intervalo de imagens com um traço (por exemplo, 0-4). Separe índices com uma vírgula (por exemplo, 0,2). Use +delete para excluir a última imagem na sequência de imagens atual. Use -delete 0--1 para excluir toda a sequência de imagens.

Você também pode excluir imagens do registro persistente, por exemplo, -delete registry:checkers

-density width

-density widthxheight

Define a resolução horizontal e vertical de uma imagem para renderização em dispositivos.

Esta opção especifica a resolução da imagem a ser armazenada ao codificar uma imagem rasterizada ou a resolução da tela ao renderizar (ler) formatos vetoriais como Postscript, PDF, WMF e SVG em uma imagem rasterizada. A resolução da imagem fornece a unidade de medida a ser aplicada ao renderizar em um dispositivo de saída ou imagem rasterizada. A unidade de medida padrão é em pontos por polegada (DPI). A opção -units pode ser usada para selecionar pontos por centímetro em vez disso.

A resolução padrão é 72 pontos por polegada, o que equivale a um ponto por pixel (padrão Macintosh e Postscript). As telas de computador normalmente têm 72 ou 96 pontos por polegada, enquanto as impressoras geralmente suportam 150, 300, 600 ou 1200 pontos por polegada.

Se o formato do arquivo suportar, esta opção pode ser usada para atualizar a resolução da imagem armazenada. Observe que o Photoshop armazena e obtém a resolução da imagem a partir de um perfil incorporado proprietário. Se esse perfil não for removido da imagem, o Photoshop continuará a tratar a imagem usando sua resolução anterior, ignorando a resolução da imagem especificada no cabeçalho de arquivo padrão.

A opção -density define um atributo e não altera a imagem rasterizada subjacente. Ela pode ser usada para ajustar o tamanho renderizado para fins de editoração eletrônica, ajustando a escala aplicada aos pixels. Para alterar o número de pixels na imagem de modo que ela tenha as mesmas dimensões físicas (em polegadas ou centímetros), use a opção -resample.

-depth value

Profundidade da imagem.

A profundidade de cor é o número de bits por canal para cada pixel. Por exemplo, para uma profundidade de 16 usando RGB, cada canal de Vermelho, Verde e Azul pode variar de 0 a 2^16-1 (65535). Use esta opção para especificar a profundidade de formatos de imagem brutos cuja profundidade é desconhecida, como GRAY, RGB ou CMYK, ou para alterar a profundidade de qualquer imagem após ela ter sido lida. Por padrão, ao reduzir a profundidade do pixel, os bits de ordem mais alta são descartados. Use -dither FloydSteinberg para, em vez disso, distribuir o erro de quantização para os pixels vizinhos.

Use +depth para retornar a profundidade ao seu valor padrão.

-descend

Obtém a imagem descendo a hierarquia de janelas.

-deskew threshold{%}

Endireita uma imagem. Um limiar de 40% funciona para a maioria das imagens.

Use -set option:deskew:auto-crop true | false para recortar a imagem automaticamente.

-despeckle

Reduz os pontilhados dentro de uma imagem.

-direction type

Renderiza texto da direita para a esquerda ou da esquerda para a direita. Requer a biblioteca delegada RAQM e layout de texto complexo.

-displace horizontal-scale{%}{!}

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

Desloca os pixels da imagem conforme definido por um mapa de deslocamento.

Com esta opção, a imagem de 'sobreposição', e opcionalmente a imagem de 'máscara', é usada como mapa de deslocamento, que é usado para deslocar a busca de qual parte da imagem de 'fundo' é vista em cada ponto da área sobreposta. Muito parecido com o mapa de deslocamento ser uma 'lente' que redireciona a luz que passa por ele de modo a apresentar uma visão distorcida da imagem de 'fundo' original atrás dele.

Quaisquer áreas perfeitamente cinzas do mapa de deslocamento produzem um deslocamento zero da imagem. Áreas pretas produzem o deslocamento negativo máximo fornecido do ponto de busca, enquanto as brancas produzem um deslocamento positivo máximo da busca.

Observe que é a busca do 'fundo' que é deslocada, não um deslocamento da própria imagem. Assim, uma área do mapa de deslocamento contendo 'branco' terá o ponto de busca 'deslocado' por uma quantidade positiva e, portanto, gerará uma cópia da imagem de destino para a direita/para baixo a partir da posição correta. Ou seja, a imagem parecerá ter sido 'deslocada' em uma direção negativa para a esquerda/para cima. Compreender isso é muito importante para entender como os mapas de deslocamento funcionam.

Os argumentos fornecidos definem a quantidade máxima de deslocamento em pixels que um determinado mapa pode produzir. Se a escala de deslocamento for grande o suficiente, também é possível buscar partes da imagem de 'fundo' que estão bem fora dos limites do próprio mapa de deslocamento. Ou seja, você poderia muito facilmente copiar uma seção da imagem original de fora da área de sobreposição para dentro da área de sobreposição.

O sinalizador '%' torna a escala de deslocamento relativa ao tamanho da imagem de sobreposição (100% = metade da largura/altura da imagem). Usar '!' faz com que os argumentos de porcentagem se refiram ao tamanho da imagem de destino em vez disso. Esses sinalizadores foram adicionados a partir do IM v6.5.3-5.

Normalmente, um único mapa de deslocamento em tons de cinza é fornecido, o qual, com os valores de escala fornecidos, determinará uma única direção (vetor) na qual os deslocamentos podem ocorrer (positiva ou negativamente). No entanto, se você também especificar uma terceira imagem, que normalmente é usada como máscara, a imagem composta é usada para o deslocamento horizontal X, enquanto a imagem de máscara é usada para o deslocamento vertical Y. Isso permite que você defina valores de deslocamento completamente diferentes para as direções X e Y, e permite buscar qualquer ponto dentro dos limites da escala. Em outras palavras, cada pixel pode buscar qualquer outro pixel próximo, produzindo deslocamentos bidimensionais complexos, em vez de simples deslocamentos vetoriais unidimensionais.

Alternativamente, em vez de fornecer duas imagens separadas, a partir do IM v6.4.4-0, você pode usar o canal 'vermelho' da imagem de sobreposição para especificar o deslocamento horizontal ou X, e o canal 'verde' para o deslocamento vertical ou Y.

A partir do IM v6.5.3-5, qualquer canal alfa na imagem de sobreposição é usado como máscara da transparência da imagem de destino. No entanto, as áreas fora das áreas sobrepostas não serão afetadas.

-display host:display[.screen]

Especifica o servidor X a ser contatado.

Esta opção é usada com convert para obter imagem ou fonte deste servidor X. Veja X(1).

-dispose method

Define a configuração de descarte de imagem GIF para imagens que estão sendo criadas ou lidas.

O método de descarte de camada define a maneira como cada imagem exibida deve ser modificada após o 'quadro' atual de uma animação terminar de ser exibido (após seu período de 'delay'), mas antes que o próximo quadro de uma animação seja sobreposto à exibição.

Aqui estão os métodos válidos:

Undefined
0: Nenhum descarte especificado (equivalente a 'none').
None
1: Não descartar, apenas sobrepor a imagem do próximo quadro.
Background
2: Limpar a área do quadro com a cor de fundo.
Previous
3: Limpar para a imagem anterior à sobreposição deste quadro.

Você também pode usar os números fornecidos acima, que é o que o formato GIF usa internamente para representar as configurações acima.

Para imprimir uma lista completa de métodos de descarte, use -list dispose.

Use +dispose para desativar a configuração e impedir a redefinição dos métodos de descarte de camada das imagens que estão sendo lidas.

Use -set 'dispose' method para definir o método de descarte de imagem para imagens já em memória.

-dissimilarity-threshold value

RMSE máximo para correspondência de subimagem (padrão 0.2).

-dissolve src_percent[xdst_percent]

Dissolve uma imagem em outra pela porcentagem fornecida.

A opacidade da imagem composta é multiplicada pela porcentagem fornecida e, em seguida, ela é composta 'sobre' a imagem principal. Se src_percent for maior que 100, começa a dissolver a imagem principal de modo que ela se torne transparente em um valor de '200'. Se ambas as porcentagens forem fornecidas, cada imagem é dissolvida nas porcentagens fornecidas.

Observe que as porcentagens de dissolução não se somam; duas imagens opacas dissolvidas em '50,50' produzem uma transparência de 75%. Para uma mesclagem de 50% + 50% das duas imagens, você precisaria usar valores de dissolução de '50,100'.

-distort method arguments

Distorce uma imagem, usando o método informado e seus argumentos obrigatórios.

O argumento é uma única string contendo uma lista de números de ponto flutuante separados por vírgulas ou espaços. A quantidade e o significado dos valores de ponto flutuante dependem do método de distorção utilizado.

Escolha entre estes tipos de distorção:

Method Description
ScaleRotateTranslate
SRT Distorce a imagem primeiro escalonando e rotacionando em torno de um 'center' informado, antes de transladar esse 'center' para a nova localização, nessa ordem. É um método alternativo de especificar uma distorção do tipo 'Affine', porém sem efeitos de cisalhamento. Também oferece uma boa maneira de rotacionar e deslocar uma imagem menor para ladrilhar sobre um fundo maior (ou seja, animações bidimensionais).
A quantidade de argumentos determina o significado específico de cada argumento para as operações de escala, rotação e translação.
2: Scale Angle
3: X,Y Angle
4: X,Y Scale Angle
5: X,Y ScaleX,ScaleY Angle
6: X,Y Scale Angle NewX,NewY
7: X,Y ScaleX,ScaleY Angle NewX,NewY
Esta é na verdade uma forma alternativa de especificar uma distorção linear bidimensional 'Affine' ou 'AffineProjection'.
Affine Distorce a imagem linearmente movendo uma lista de pelo menos 3 ou mais conjuntos de pontos de controle (conforme definido abaixo). O ideal é fornecer 3 conjuntos ou 12 valores de ponto flutuante, permitindo que a imagem seja linearmente escalonada, rotacionada, cisalhada e transladada, de acordo com esses três pontos. Veja também as distorções relacionadas 'AffineProjection' e 'SRT'.
Quando são fornecidos mais de 3 conjuntos de pares de pontos de controle (12 números), realiza-se um ajuste por mínimos quadrados para melhor corresponder a uma distorção afim linear. Se apenas 2 pares de pontos de controle (8 números) forem fornecidos, realiza-se uma translação, rotação e escalonamento de imagem por dois pontos, sem qualquer possível cisalhamento, espelhamento ou alteração na proporção da imagem resultante. Se apenas um par de ponto de controle for fornecido, a imagem é apenas transladada (o que pode ser uma translação de ponto flutuante não inteira).
Esta distorção não inclui nenhuma forma de distorção de perspectiva.
RigidAffine Uma afim rígida (também conhecida como transformação Euclidiana) é semelhante à Affine, mas restringe a distorção a 4 argumentos (S, R, Tx, Ty) com Sy = Sx e Ry = -Rx, de modo que a distorção tenha apenas escala, rotação e translação. Sem inclinação. É necessário um mínimo de dois pares de pontos de controle.
AffineProjection Distorce uma imagem linearmente usando a Matriz Afim informada com 6 coeficientes pré-calculados que formam um conjunto de Equações Afins para mapear a imagem de origem na imagem de destino. sx, rx, ry, sy, tx, ty Veja a configuração -affine para mais detalhes e os significados desses coeficientes.
As distorções 'Affine' e 'SRT' oferecem métodos alternativos de definir esta distorção, com o ImageMagick fazendo os cálculos necessários para gerar os coeficientes exigidos. Você pode ver os coeficientes gerados internamente usando uma configuração -verbose com essas outras variantes.
BilinearForward
BilinearReverse Distorção bilinear, dado um mínimo de 4 conjuntos de pares de coordenadas, ou 16 valores (veja abaixo). Observe que as linhas podem não aparecer retas após a distorção, embora a distância entre as coordenadas permaneça consistente.
O 'BilinearForward' é usado para mapear retângulos em qualquer quadrilátero, enquanto a forma 'BilinearReverse' mapeia qualquer quadrilátero em um retângulo, preservando em cada caso as bordas em linha reta.
Observe que 'BilinearForward' pode gerar pixels inválidos, que serão coloridos usando a configuração de cor -mattecolor. Além disso, se o quadrilátero ficar 'invertido', a imagem pode desaparecer.
Há planos futuros de produzir uma verdadeira distorção bilinear que tentará mapear qualquer quadrilátero em qualquer outro quadrilátero, preservando as bordas (e as proporções de distância das bordas).
Perspective Distorce as imagens em perspectiva, usando uma lista de 4 ou mais conjuntos de pontos de controle (conforme definido abaixo). Mais de 4 conjuntos (16 números) de pontos de controle proporcionam ajuste por mínimos quadrados para distorções mais precisas (para fins de registro de imagem e efeitos de panorama). Menos de 4 conjuntos recairão sobre uma distorção linear 'Affine'.
Imagens distorcidas em perspectiva garantem que as linhas retas permaneçam retas, mas a escala da imagem distorcida varia. O horizonte recebe anti-aliasing, e a cor do 'céu' pode ser definida usando a configuração -mattecolor.
PerspectiveProjection Realiza uma distorção 'Perspective' baseada em um conjunto de 8 coeficientes pré-calculados. Você pode obter esses coeficientes observando a saída -verbose de uma distorção 'Perspective', ou calculando-os você mesmo. Se os dois últimos coeficientes de escala de perspectiva forem zero, os 6 restantes representam uma 'Matriz Afim' transposta.
Polynomial Realiza uma distorção 'Polynomial' 2D de ordem N usando um conjunto de pontos de controle correspondentes. A ordem do polinômio determina o número mínimo de pontos de controle necessários. A ordem 1 é igual a -distort Affine. A ordem 1.5 é igual a -distort BilinearReverse. O uso típico é para uma distorção de 2ª ordem. Não existe +distort polynomial.
Arc Arqueia a imagem (variação do mapeamento polar) sobre o ângulo informado ao redor de um círculo.
arc_angle: O ângulo sobre o qual arquear a imagem de lado a lado
rotate_angle: Ângulo para rotacionar a imagem resultante a partir do centro vertical
top_radius: Define a borda superior da imagem de origem neste raio
bottom_radius: Define a borda inferior neste raio (escalonamento radial)
A imagem resultante é sempre redimensionada para melhor se ajustar à imagem resultante (como se usasse +distort), enquanto tenta preservar ao máximo a escala e a proporção da imagem original com os argumentos fornecidos pelo usuário. Todos os quatro argumentos serão necessários para alterar a proporção geral de uma imagem com 'Arc'.
Esta é uma variação de uma distorção polar projetada para tentar preservar a proporção da imagem em vez de uma conversão direta de Cartesiano para Polar.
Polar Como 'Arc', mas realiza um mapeamento completo de Cartesiano para Polar da imagem. Ou seja, a altura da imagem de entrada é mapeada para os limites de raio, enquanto a largura é envolvida entre os limites de ângulo.
Argumentos: Rmax,Rmin CenterX,CenterY, start,end_angle
Todos os argumentos são opcionais. Com Rmin assumindo zero por padrão, o centro como o centro da imagem, e os ângulos indo de -180 (topo) a +180 (topo). Se Rmax receber o valor especial '0', a distância do centro até a borda mais próxima é usada para o raio da imagem de saída, o que garantirá que a imagem inteira fique visível (embora escalonada para menor). Contudo, um valor especial de '-1' usará a distância do centro até o canto mais distante. Isso pode 'recortar' os cantos da imagem retangular de entrada, mas gerará exatamente o inverso de um 'DePolar' com os mesmos argumentos.
Se a forma com mais (+distort) do distort for usada, o centro da imagem de saída assumirá por padrão 0,0 da tela virtual, e o tamanho da imagem será ajustado para garantir que a imagem de entrada inteira fique visível na imagem de saída sobre a tela virtual.
DePolar Usa os mesmos argumentos e significados de uma distorção 'Polar', mas gera a distorção reversa de Polar para Cartesiano.
A configuração especial Rmax de '0' pode, porém, recortar os cantos da imagem de entrada. Contudo, usar a configuração especial Rmax de '-1' (distância máxima do centro ao canto) garantirá que a imagem distorcida inteira seja preservada no resultado gerado, de modo que o mesmo argumento para 'Polar' reverterá a distorção, reproduzindo a original. Observe que, como esta distorção requer a reamostragem de área de um arco circular, que não pode ser tratada pela função interna de reamostragem EWA, os filtros EWA normais são desativados. Recomenda-se que alguma forma de técnica de processamento de imagem por 'super-amostragem' seja usada para produzir um resultado de alta qualidade.
Barrel Dados os quatro coeficientes (A,B,C,D) conforme definidos por Helmut Dersch, realiza uma distorção de barril ou de almofada apropriada para corrigir distorções radiais de lente. Isto é, em fotografias, torna as linhas retas novamente retas.
Argumentos: A B C [ D [ X , Y ] ]
ou Ax Bx Cx Dx Ay By Cy Dy [ X , Y ] De modo que forme a função Rsrc = r * ( Ar3 + Br2 + C*r + D ) Onde X,Y é o centro opcional da distorção (assumindo por padrão o centro da imagem).
A segunda forma é tipicamente usada para distorcer imagens, em vez de corrigir distorções de lente.
BarrelInverse Este é muito semelhante a 'Barrel', com o mesmo conjunto de argumentos e tratamento de argumentos. Contudo, usa o inverso do polinômio radial, de modo que forma a função Rsrc = r / ( Ar3 + Br2 + C*r + D ) Observe que este não é o reverso da distorção 'Barrel', apenas um método de distorção radial diferente, semelhante ao de barril.
Shepards Distorce a lista informada de pontos de controle (em qualquer quantidade) usando um Método de Interpolação por Distância Quadrática Inversa (Método de Shepard). Os pontos de controle, na prática, realizam um deslocamento 'localizado' da imagem ao redor do ponto de controle informado (preservando a aparência e a rotação da área próxima aos pontos de controle). Para melhores resultados, pontos de controle adicionais devem ser acrescentados para 'travar' as posições dos cantos, bordas e outras partes invariáveis da imagem, a fim de impedir seu movimento.
A distorção foi comparada a 'puxar um caramelo' usando pregos, ou alfinetes espetados em um bloco de 'gelatina' que é então movido para a nova posição, distorcendo a superfície da gelatina.
Internamente, é equivalente a gerar um mapa de deslocamento (veja -displace) para a consulta de cores da imagem de origem usando o método -sparse-color de mesmo nome.
Para imprimir uma lista completa de métodos de distorção, use -list distort.

Muitos dos métodos de distorção acima, como 'Affine', 'Perspective' e 'Shepards', usam uma lista de pontos de controle que define como esses pontos na imagem informada devem ser distorcidos na imagem de destino. Cada conjunto de quatro valores de ponto flutuante representa uma coordenada da imagem de origem, seguida imediatamente pela coordenada da imagem de destino. Isso produz uma lista de valores como...

U1,V1 X1,Y1 U2,V2 X2,Y2 U3,V3 X3,Y3 ... Un,Vn Xn,Yn

onde U,V na imagem de origem é mapeado para X,Y na imagem de destino.

Por exemplo, para deformar uma imagem usando a distorção 'perspective', é necessária uma lista de pelo menos 4 conjuntos de coordenadas, ou 16 números. Aqui está a distorção em perspectiva da imagem "rose:" embutida. Observe como espaços foram usados para agrupar os 4 conjuntos de pares de coordenadas, a fim de torná-los mais fáceis de ler e entender.

magick 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"

Se for fornecido mais do que o número exigido de pares de coordenadas para uma distorção, o método de distorção é ajustado por 'mínimos quadrados' para produzir o melhor resultado para todos os pares de coordenadas fornecidos. Se for fornecido menos do que o número ideal de pontos, a distorção geralmente recairá sobre uma forma mais simples de distorção, capaz de lidar com a quantidade menor de coordenadas (normalmente uma distorção linear 'Affine').

Ao usar mais coordenadas, você pode aproveitar uma ferramenta de registro de imagem para encontrar pares de coordenadas correspondentes em imagens sobrepostas, de modo a melhorar o 'ajuste' da distorção. É claro que um par de coordenadas ruim também pode piorar o 'ajuste'. Cautela é sempre recomendada.

As cores são adquiridas da imagem de origem de acordo com um -filter de reamostragem cilíndrico, usando uma técnica especial conhecida como reamostragem EWA. Isso produz resultados de altíssima qualidade, especialmente quando as imagens se tornam menores (reduzidas) na saída, o que é muito comum ao usar a distorção 'perspective'. Por exemplo, aqui visualizamos um 'plano' ladrilhado infinitamente até o horizonte.

magick -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

Observe que imagens em perspectiva ladrilhadas infinitamente envolvendo o horizonte podem ser muito lentas, por causa da quantidade de pixels que são comprimidos para gerar cada pixel individual próximo ao 'horizonte'. Você pode desativar a reamostragem EWA especificando a configuração especial de -filter como 'point' (recomendado se você planeja usar super-amostragem no lugar).

Se uma imagem gerar pixels inválidos , como o 'céu' no último exemplo, o -distort usará a configuração atual de -mattecolor para esses pixels. Se você não quiser que esses pixels fiquem visíveis, defina a cor para corresponder ao restante do solo.

O tamanho da imagem de saída será, por padrão, o mesmo da imagem de entrada. Isso significa que, se a parte da imagem distorcida ficar fora da área visível do 'espaço distorcido', essas partes são recortadas e perdidas. Contudo, se você usar a forma com mais do operador (+distort), o operador tentará (se possível) mostrar a totalidade da imagem distorcida, mantendo um deslocamento correto de 'tela virtual' para a sobreposição de imagens. Esse deslocamento pode precisar ser removido usando +repage, caso seja indesejado.

A configuração -verbose fará com que o -distort tente exibir os coeficientes internos e o equivalente em -fx da distorção, para estudo de especialistas e fins de depuração. Isso pode não estar disponível para todas as distorções.

Você pode, alternativamente, especificar uma configuração especial "-define distort:viewport={geometry_string}", que definirá o tamanho e o deslocamento da imagem de 'viewport' gerada do espaço de imagem distorcido.

Definir um "-define distort:scale=scale_factor" escalonará a imagem de saída (viewport ou não) por esse fator sem alterar o conteúdo visível do espaço de imagem distorcido. Isso pode ser usado tanto para 'super-amostrar' a imagem para um resultado de maior qualidade, quanto para deslocar e ampliar pela imagem (com as alterações apropriadas de viewport, ou recorte e redimensionamento pós-distorção).

Definir "-define resample:verbose=1" exibirá a tabela de consulta do filtro cilíndrico criada pelo algoritmo de reamostragem EWA (Elliptical Weighted Average — Média Ponderada Elíptica). Observe que esta tabela usa um valor de consulta de raio ao quadrado. Isso normalmente é usado apenas para depurar a reamostragem EWA.

-distribute-cache port

Inicia um servidor de cache de pixels distribuído.

-dither method

Aplica um pontilhamento por difusão de erro de Riemersma ou Floyd-Steinberg às imagens quando uma redução geral de cores é aplicada por meio de uma opção, ou automagicamente ao salvar em formatos específicos. Isto está habilitado por padrão.

O pontilhamento posiciona duas ou mais cores em pixels vizinhos de modo que, ao olho, seja reproduzida uma aproximação mais próxima da cor original da imagem. Isto reduz o número de cores necessárias para reproduzir a imagem, mas ao custo de um padrão de cores de nível inferior. Os pontilhamentos por difusão de erro podem usar qualquer conjunto de cores (gerado ou definido pelo usuário) em uma imagem.

O pontilhamento é ativado por padrão; para desativá-lo, use a forma com mais (plus) da configuração, +dither. Isto também renderizará PostScript sem suavização (aliasing) de texto ou gráficos. Desabilitar o pontilhamento frequentemente (mas nem sempre) leva a um processamento mais rápido, um número menor de cores, porém a uma coloração de imagem mais semelhante a um desenho animado. Geralmente resulta em efeitos de 'faixas de cor' (color banding) em áreas com gradientes de cor.

Os operadores de redução de cores -colors, -monochrome, -remap e -posterize aplicam pontilhamento às imagens usando o conjunto reduzido de cores que criaram. Esses operadores também são usados como parte da redução automática de cores ao salvar imagens em formatos com suporte limitado de cores, como GIF:, XBM: e outros, de modo que o pontilhamento também pode ser usado nesses casos.

Alternativamente, você pode usar -random-threshold para gerar um pontilhamento puramente aleatório. Ou usar -ordered-dither para aplicar padrões de pontilhamento mapeados por limiar, usando mapas de cores uniformes em vez de mapas de cores específicos.

Use "-define dither:diffusion-amount=35%, por exemplo, para controlar a quantidade de pontilhamento de Floyd-Steinberg.

-draw string

Anota uma imagem com uma ou mais primitivas gráficas.

Use esta opção para anotar ou decorar uma imagem com uma ou mais primitivas gráficas. As primitivas incluem formas, texto, transformações e operações de pixel.

As primitivas de forma:

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
specification
image
operator x0,y0 w,h filename

A primitiva de texto:

text
x0,y0 string

A primitiva de gravidade de texto:

gravity
NorthWest, North, NorthEast, West, Center, East, SouthWest, South, or SouthEast

A primitiva de gravidade de texto afeta apenas o posicionamento do texto e não interage com as outras primitivas. É equivalente a usar a opção de linha de comando -gravity, exceto que seu escopo é limitado à opção -draw na qual aparece.

As primitivas de transformação:

rotate
degrees
translate
dx,dy
scale
sx,sy
skewX
degrees
skewY
degrees

As primitivas de operação de pixel:

color
x0,y0 method
matte
x0,y0 method

As primitivas de forma são desenhadas na cor especificada pela configuração -fill precedente. Para formas não preenchidas, use -fill none. Você pode opcionalmente controlar o traço (o "contorno" de uma forma) com as configurações -stroke e -strokewidth.

Uma primitiva point é especificada por um único ponto no plano de pixels, isto é, por um par ordenado de coordenadas inteiras, x,y. (Como envolve apenas um único pixel, uma primitiva point não é afetada por -stroke ou -strokewidth.)

Uma primitiva line requer um ponto inicial e um ponto final.

Uma primitiva rectangle é especificada pelo par de pontos nos cantos superior esquerdo e inferior direito.

Uma primitiva roundRectangle recebe os mesmos pontos de canto que um rectangle, seguidos pela largura e altura dos cantos arredondados a serem removidos.

A primitiva circle cria um disco (preenchido) ou um círculo (não preenchido). Forneça o centro e qualquer ponto no perímetro (limite). Observe que, ao usar uma translação, você pode eliminar a necessidade de calcular a coordenada da borda do círculo, podendo simplesmente fornecer o raio diretamente:

magick -size 100x60 xc: -stroke SeaGreen  -fill PaleGreen -strokewidth 2 -draw 'translate 50,30 circle 0,0 25,0' circle.gif

A primitiva arc é usada para inscrever um segmento elíptico em um dado retângulo. Um arc requer os dois cantos usados para o rectangle (veja acima), seguidos pelos ângulos inicial e final do arco do segmento (por exemplo, 130,30 200,100 45,90). Os pontos inicial e final produzidos são então unidos por um segmento de reta e o segmento resultante de uma elipse é preenchido.

Use ellipse para desenhar uma elipse parcial (ou inteira). Forneça o ponto central, os "raios" horizontal e vertical (os semieixos da elipse) e os ângulos inicial e final em graus (por exemplo, 100,100 100,150 0,360).

As primitivas polyline e polygon requerem três ou mais pontos para definir seus perímetros. Um polyline é simplesmente um polygon no qual o ponto final não é traçado de volta ao ponto inicial. Quando não preenchido, isto é uma linha poligonal. Se a configuração -stroke for none (o padrão), então um polyline é idêntico a um polygon.

Uma coordenada é um par de inteiros separados por um espaço ou, opcionalmente, por uma vírgula.

Como exemplo, para definir um círculo centrado em 100,100 que se estende até 150,150, use:

-draw 'circle 100,100 150,150'

A primitiva Bezier cria uma curva spline e requer três ou mais pontos para definir seu formato. O primeiro e o último pontos são os nós (knots) e esses pontos são atingidos pela curva, enquanto quaisquer coordenadas intermediárias são pontos de controle. Se dois pontos de controle forem especificados, a linha entre cada nó terminal e seu respectivo ponto de controle sequencial determina a direção tangente da curva naquela extremidade. Se um ponto de controle for especificado, as linhas dos nós terminais até o único ponto de controle determinam as direções tangentes da curva em cada extremidade. Se mais de dois pontos de controle forem especificados, então os pontos de controle adicionais agem em combinação para determinar o formato intermediário da curva. Para desenhar curvas complexas, é altamente recomendável usar a primitiva path ou desenhar múltiplos segmentos bezier de quatro pontos com os nós inicial e final de cada segmento sucessivo repetidos. Por exemplo:

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

Um path representa um contorno de um objeto, definido em termos de elementos moveto (definir um novo ponto atual), lineto (desenhar uma linha reta), curveto (desenhar uma curva de Bézier), arc (arco elíptico ou circular) e closepath (fechar a forma atual desenhando uma linha até o último moveto). Caminhos compostos (isto é, um path com subcaminhos, cada um consistindo de um único moveto seguido por uma ou mais operações de linha ou curva) são possíveis para permitir efeitos como buracos de rosquinha em objetos. (Veja Paths.)

Use image para compor uma imagem com outra imagem. Siga a palavra-chave image com o operador de composição, a localização da imagem, o tamanho da imagem e o nome do arquivo:

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

Você pode usar 0,0 para o tamanho da imagem, o que significa usar as dimensões reais encontradas no cabeçalho da imagem. Caso contrário, ela é escalonada para as dimensões fornecidas. Veja Alpha Compositing para uma discussão detalhada dos métodos de composição de alfa disponíveis.

Os "operadores de composição aumentados especiais", como "dissolve", que requerem argumentos, não podem ser usados no momento com a opção -draw image.

Use text para anotar uma imagem com texto. Siga as coordenadas do texto com uma string. Se a string contiver espaços embutidos, coloque-a entre aspas simples ou duplas.

Por exemplo, o seguinte anota a imagem com Works like magick! para uma imagem intitulada bird.miff.

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

Veja a opção -annotate para outra maneira conveniente de anotar uma imagem com texto.

A primitiva rotate rotaciona as primitivas de forma e de texto subsequentes em torno da origem da imagem principal:

-draw "rotate 45 text 10,10 'Works like magick!'"

A primitiva translate transla as primitivas de forma e de texto subsequentes.

A primitiva scale as escalona.

As primitivas skewX e skewY as inclinam em relação à origem da imagem principal ou da região.

As transformações modificam a matriz afim atual, que é inicializada a partir da matriz afim inicial definida pela opção -affine. As transformações são cumulativas dentro da opção -draw. A matriz afim inicial não é afetada; essa matriz só é alterada pelo aparecimento de outra opção -affine. Se outra opção -draw aparecer, a matriz afim atual é reinicializada a partir da matriz afim inicial.

Use a primitiva color para alterar a cor de um pixel para a cor de preenchimento (veja -fill). Siga a coordenada do pixel com um método:

point
replace
floodfill
filltoborder
reset

Considere o pixel-alvo como aquele especificado pela sua coordenada. O método point recolore o pixel-alvo. O método replace recolore qualquer pixel que corresponda à cor do pixel-alvo. Floodfill recolore qualquer pixel que corresponda à cor do pixel-alvo e seja vizinho, enquanto filltoborder recolore qualquer pixel vizinho que não seja a cor da borda. Por fim, reset recolore todos os pixels.

Use matte para alterar o valor matte do pixel para transparente. Siga a coordenada do pixel com um método (veja a primitiva color para uma descrição dos métodos). O método point altera o valor matte do pixel-alvo. O método replace altera o valor matte de qualquer pixel que corresponda à cor do pixel-alvo. Floodfill altera o valor matte de qualquer pixel que corresponda à cor do pixel-alvo e seja vizinho, enquanto filltoborder altera o valor matte de qualquer pixel vizinho que não seja a cor da borda (-bordercolor). Por fim, reset altera o valor matte de todos os pixels.

Você pode definir a cor da primitiva, a fonte e a cor da caixa delimitadora da fonte com -fill, -font e -box, respectivamente. As opções são processadas na ordem da linha de comando, então certifique-se de usar essas opções antes da opção -draw.

Strings que começam com um número devem estar entre aspas (por exemplo, use '1.png' em vez de 1.png).

As primitivas de desenho estão em conformidade com o formato Magick Vector Graphics.

Observe que o desenho requer um canal alfa. Se nenhum estiver disponível, um canal alfa totalmente opaco é criado implicitamente.

-duplicate count,indexes

Duplica uma imagem uma ou mais vezes.

Especifique a contagem (count) e a imagem a duplicar pelo seu índice na sequência. A primeira imagem é o índice 0. Índices negativos são relativos ao fim da sequência; por exemplo, -1 representa a última imagem da sequência. Especifique um intervalo de imagens com um traço (por exemplo, 0-4). Separe os índices com uma vírgula (por exemplo, 0,2). Use +duplicate para duplicar a última imagem na sequência de imagens atual.

-edge radius

Detecta bordas dentro de uma imagem.

-emboss radius{xsigma

Aplica relevo (emboss) a uma imagem.

-encipher filename

Cifra os pixels para decifragem posterior por -decipher.

Obtenha a frase-senha (passphrase) do arquivo especificado por filename.

Para mais informações, veja a página web, ImageMagick: Encipher or Decipher an Image.

-encoding type

Especifica a codificação de texto.

Escolha entre

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

-endian type

Especifica a ordem de bytes (endianness) (MSB ou LSB) da imagem.

Para imprimir uma lista completa dos tipos de ordem de bytes, use a opção -list endian.

Use +endian para reverter para uma ordem de bytes não especificada.

-enhance

Aplica um filtro digital para realçar uma imagem ruidosa.

-equalize

Realiza a equalização de histograma na imagem canal por canal.

Para realizar a equalização de histograma em todos os canais em conjunto, transforme a imagem em algum outro espaço de cor, como HSL, OHTA, YIQ ou YUV, depois equalize o canal apropriado semelhante à intensidade e, em seguida, converta de volta para RGB.

Por exemplo, usando HSL, temos: ... -colorspace HSL -channel lightness -equalize -colorspace sRGB ...

Para YIQ, YUV e OHTA, use o canal vermelho. Por exemplo, OHTA é uma transformação de componentes principais que coloca a maior parte da informação no primeiro canal. Aqui temos ... -colorspace OHTA -channel red -equalize -colorspace sRGB ...

-evaluate operator value

Altera os pixels do canal avaliando uma expressão aritmética, relacional ou lógica.

(Veja o operador -function para algumas funções com múltiplos parâmetros. Veja o operador -fx se forem necessários cálculos mais elaborados.)

Os comportamentos de cada operador estão resumidos na lista a seguir. Por brevidade, o valor numérico de um "pixel" referido abaixo é o valor do canal correspondente daquele pixel, enquanto um "pixel normalizado" é esse número dividido pelo valor máximo (dependente da instalação) QuantumRange. (Se forem usados pixels normalizados, eles são restaurados, após os outros cálculos, à faixa completa multiplicando por QuantumRange.)

Operador Resumo (veja mais abaixo para detalhes)
Abs Soma o valor aos pixels e retorna o valor absoluto.
Add Soma o valor aos pixels.
AddModulus Soma o valor aos pixels módulo QuantumRange.
And AND binário dos pixels com o valor.
Cos, Cosine Aplica cosseno aos pixels com o valor de frequência, com 50% de bias adicionado.
Divide Divide os pixels pelo valor.
Exp função exponencial de base e
Exponential função exponencial de base e
Gaussian-noise
Impulse-noise
InverseLog Aplica o logaritmo escalonado inverso aos pixels normalizados.
Laplacian-noise
LeftShift Desloca os valores dos pixels para a esquerda em value bits (ou seja, multiplica os pixels por 2value).
Log Aplica o logaritmo escalonado aos pixels normalizados.
Max Define os pixels para o máximo entre o valor e o valor atual do pixel (ou seja, define quaisquer pixels atualmente menores que o valor para o valor).
Mean Soma o valor e divide por 2.
Median Escolhe o valor mediano de uma sequência de imagens.
Min Define os pixels para o mínimo entre o valor e o valor atual do pixel (ou seja, define quaisquer pixels atualmente maiores que o valor para o valor).
Multiplicative-noise (Estes são equivalentes aos operadores -noise correspondentes.)
Multiply Multiplica os pixels pelo valor.
Or OR binário dos pixels com o valor.
Poisson-noise
Pow Eleva os pixels normalizados à potência value.
RightShift Desloca os valores dos pixels para a direita em value bits (ou seja, divide os pixels por 2value).
RMS Eleva o pixel ao quadrado e soma o valor.
RootMeanSquare Eleva o pixel ao quadrado e soma o valor.
Set Define o pixel igual ao valor.
Sin, Sine Aplica seno aos pixels com o valor de frequência, com 50% de bias adicionado.
Subtract Subtrai o valor dos pixels.
Sum
Threshold Aplica limiar aos pixels maiores que o valor.
ThresholdBlack Aplica limiar zerando os pixels iguais ou abaixo do valor.
ThresholdWhite Aplica limiar definindo os pixels acima do valor para o máximo.
Uniform-noise
Xor XOR binário dos pixels com o valor.

As funções especificadas são aplicadas somente a cada -channel previamente definido na imagem. Se necessário, os resultados dos cálculos são truncados (recortados) para caber no intervalo [0, QuantumRange]. O canal de transparência da imagem é representado como valores 'alpha' (0 = totalmente transparente), portanto, por exemplo, uma divisão por 2 do canal alfa tornará a imagem semitransparente. Acrescente o símbolo de porcentagem '%' para especificar um valor como uma porcentagem do QuantumRange.

Para imprimir uma lista completa dos operadores -evaluate, use -list evaluate.

Os resultados dos métodos Add, Subtract e Multiply também podem ser obtidos usando o operador -level ou +level, com o argumento apropriado, para modificar linearmente a faixa geral dos valores de cor. Observe, no entanto, que -level trata a transparência como valores 'matte' (0 = opaco), enquanto -evaluate trabalha com valores 'alpha'.

AddModulus foi adicionado a partir do ImageMagick 6.4.8-4 e fornece adição módulo QuantumRange. Portanto, é equivalente a Add a menos que o valor de pixel resultante esteja fora do intervalo [0, QuantumRange].

Exp ou Exponential foi adicionado a partir do ImageMagick 6.6.5-1 e funciona com valores de pixel normalizados. O valor usado com Exp deve ser negativo para produzir uma função exponencial decrescente. Valores não negativos sempre produzirão resultados maiores que a unidade e, portanto, fora do intervalo [0, QuantumRange]. A fórmula é expressa abaixo.

exp(value × u)

Se a imagem de entrada for elevada ao quadrado, por exemplo, usando -function polynomial "2 0 0", então o resultado será uma função gaussiana decrescente.

Log foi adicionado a partir do ImageMagick 6.4.2-1 e funciona com valores de pixel normalizados. Esta é uma função logarítmica escalonada. O valor usado com Log fornece um fator de escala que ajusta a curvatura no gráfico da função logarítmica. A fórmula aplicada a um valor normalizado u está abaixo.

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

Pow foi adicionado a partir do ImageMagick 6.4.1-9 e funciona com valores de pixel normalizados. Observe que Pow está relacionado ao operador -gamma. Por exemplo, -gamma 2 é equivalente a -evaluate pow 0.5 , ou seja, uma função de 'raiz quadrada'. O valor usado com -gamma é simplesmente o recíproco do valor usado com Pow.

Cosine e Sine foram adicionados a partir do IM v6.4.8-8 e convertem os valores da imagem em um valor de acordo com uma função de onda (co)seno. Os sinônimos Cos e Sin também podem ser usados. A saída tem 50% de bias e é normalizada em 50% para caber na respectiva faixa de valores de cor. O valor escalona o período da função (sua frequência) e, assim, determina o número de 'ondas' que serão geradas sobre a faixa de cor de entrada. Por exemplo, se o valor for 1, o período efetivo é simplesmente o QuantumRange; mas se o valor for 2, então o período efetivo é metade do QuantumRange.

0.5 + 0.5 × cos(2 π u × value).

Use -set 'option:evaluate:clamp=true para fixar (clamp) o valor de avaliação.

Veja também o operador -function, que é uma versão de múltiplos valores de evaluate.

-evaluate-sequence operator

Altera os pixels do canal avaliando uma expressão aritmética, relacional ou lógica sobre uma sequência de imagens. Garanta que todas as imagens na sequência estejam no mesmo espaço de cor, caso contrário você pode obter resultados inesperados, por exemplo, adicione -colorspace sRGB à sua linha de comando.

Para imprimir uma lista completa dos operadores -evaluate-sequence, use -list evaluate.

-exit

Interrompe o processamento neste ponto.

Nenhuma opção adicional é processada após esta opção. Útil em um script para forçar o comando magick a sair sem realmente fechar o pipeline a partir do qual ele está processando opções. Você também pode usar a opção como uma opção final na linha de comando do magick em vez de uma imagem de saída implícita, para impedir completamente qualquer escrita de imagem. Observe que até mesmo o coder NULL: requer pelo menos uma imagem para 'não escrever'! Esta opção não requer nenhuma imagem.

-extent geometry

Define o tamanho e o deslocamento da imagem.

Se a imagem for ampliada, as áreas não preenchidas são definidas com a cor de fundo. Para posicionar a imagem, use deslocamentos na especificação de geometria ou preceda com uma configuração -gravity. Para especificar como compor a imagem com o fundo, use -compose.

O comando a seguir reduz ou expande uma imagem JPEG para caber em uma tela de 800x600. Se a proporção da imagem de entrada não for exatamente 4:3, então a imagem é centralizada em uma tela preta de 800x600:

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

O comando também pode ser usado com uma proporção. Se a imagem ainda não estiver nessa proporção, ela será recortada para se ajustar. A configuração -gravity tem os efeitos esperados.

O comando a seguir recorta uma imagem JPEG para que ela tenha uma proporção de 4:3:

magick input.jpg -extent 4:3 -quality 92 output.jpg

Acrescente < para preencher somente se a imagem for menor que o tamanho especificado e não recortar se a imagem for maior (ou seja, sem operação). Acrescente > para recortar somente se a imagem for maior que o tamanho especificado e não estender se a imagem for menor (ou seja, sem operação).

Veja Image Geometry para detalhes completos sobre o argumento geometry.

-extract geometry

Extrai a área especificada da imagem.

Esta opção é mais útil para extrair uma sub-região de uma imagem bruta muito grande. Observe que estes dois comandos são equivalentes:

magick -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"

Se você omitir os deslocamentos, como em

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

a imagem é redimensionada para as dimensões especificadas, equivalente a:

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

Veja Image Geometry para detalhes completos sobre o argumento geometry.

-family fontFamily

Define uma família de fontes para o texto.

Esta configuração sugere uma família de fontes que o ImageMagick deve tentar usar para renderizar texto. Se a família puder ser encontrada, ela é usada; se não, uma fonte padrão (por exemplo, "Arial") ou uma família conhecida por ser similar é substituída (por exemplo, "Courier" pode ser usada se "System" for solicitada mas não encontrada). Observe que a família pode ser uma lista de fontes no estilo CSS.

Para outras configurações que afetam fontes, veja as opções -font, -pointsize, -stretch, -style e -weight.

-features distance

Exibe características de medida de textura (matriz de co-ocorrência) para cada canal da imagem em cada uma de quatro direções (horizontal, vertical, diagonais esquerda e direita) para a distância especificada.

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

Implementa a transformada discreta de Fourier direta (DFT).

Esta opção é nova a partir do ImageMagick 6.5.4-3 (e agora funciona para usuários Windows no ImageMagick 6.6.0-9). Ela transforma uma imagem do domínio normal (espacial) para o domínio da frequência. No domínio da frequência, uma imagem é representada como uma superposição de ondas senoidais complexas de amplitudes variáveis. As coordenadas x e y da imagem são as frequências possíveis ao longo das direções x e y, respectivamente, e os valores de intensidade dos pixels são números complexos que correspondem às amplitudes das ondas senoidais. Veja, por exemplo, Fourier Transform, Discrete Fourier Transform e Fast Fourier Transform.

Um único nome de imagem é fornecido como saída para esta opção. No entanto, o resultado de saída terá dois componentes. É uma imagem de dois quadros ou duas imagens separadas, dependendo de o formato de imagem especificado suportar imagens de múltiplos quadros. A razão pela qual obtemos um resultado de saída dual é porque o domínio da frequência representa uma imagem usando números complexos, que não podem ser visualizados diretamente. Portanto, os valores complexos são automagicamente separados em uma representação de imagem de dois componentes. O primeiro componente é a magnitude do número complexo e o segundo é a fase do número complexo. Veja, por exemplo, Complex Numbers.

As imagens dos componentes de magnitude e fase devem ser especificadas usando formatos de imagem que não limitem a cor nem comprimam a imagem. Assim, MIFF, TIF, PFM, EXR e PNG são os formatos de imagem recomendados a usar. Todos esses formatos, exceto PNG, suportam imagens de múltiplos quadros. Então, por exemplo,

magick image.png -fft fft_image.miff

gera uma imagem de magnitude como fft_image.miff[0] e uma imagem de fase como fft_image.miff[1]. Da mesma forma,

magick image.png -fft fft_image.png

gera uma imagem de magnitude como fft_image-0.png e uma imagem de fase como fft_image-1.png. Se você preferir essa representação, então pode forçar qualquer um dos outros formatos a produzir duas imagens de saída incluindo +adjoin após -fft na linha de comando.

A imagem de entrada pode ter qualquer tamanho, mas se não for quadrada e com dimensões pares, ela é preenchida automagicamente para o maior valor entre a largura ou a altura da imagem de entrada e para um número par de pixels. O preenchimento ocorrerá na parte inferior e/ou no lado direito da imagem de entrada. As imagens de magnitude e fase resultantes são quadradas com esse tamanho. O tipo de preenchimento depende da configuração -virtual-pixel.

Ambos os componentes de saída terão faixas dinâmicas que se ajustam dentro de [0, QuantumRange], de modo que o HDRI não precisa estar habilitado. Os valores de fase variam nominalmente de 0 a 2*π, mas são escalonados para abranger toda a faixa dinâmica. (As primeiras versões tinham o não-HDRI escalonado mas o HDRI não escalonado). A imagem de magnitude não é escalonada e, portanto, geralmente conterá valores muito pequenos. Como tal, a imagem normalmente aparecerá totalmente preta. Para visualizar qualquer detalhe, a imagem de magnitude tipicamente é realçada com uma função logarítmica no que normalmente é chamado de espectro. Uma função logarítmica é usada para realçar mais os valores mais escuros em comparação com os valores mais claros. Isso pode ser feito, por exemplo, da seguinte forma:

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

onde -contrast-stretch 0 ou -auto-level é usado para escalonar a imagem para a faixa dinâmica completa, primeiro. O argumento para -evaluate log normalmente é especificado entre 100 e 10.000, dependendo da quantidade de detalhe que se deseja revelar no espectro. Valores maiores produzem detalhes mais visíveis. Detalhe demais, no entanto, pode ocultar as características importantes.

A biblioteca delegate FFTW é necessária para usar -fft.

Use +fft para produzir duas imagens de saída que são os componentes real e imaginário da transformada de Fourier de valor complexo.

No entanto, como os componentes real e imaginário podem conter valores negativos, isso requer que o IM seja configurado com HDRI habilitado. Nesse caso, você deve usar os formatos MIFF, TIF, PFM ou MPC para os resultados dos componentes real e imaginário, já que são formatos que preservam tanto valores negativos quanto fracionários sem recortá-los ou truncar a parte fracionária. Com MIFF ou TIF, deve-se adicionar -define quantum:format=32, para permitir que esses tipos de imagem funcionem corretamente no modo HDRI sem recorte.

As imagens dos componentes real e imaginário resultantes de +fft também são quadradas, com dimensões pares, devido ao mesmo preenchimento que foi discutido acima para as imagens dos componentes de magnitude e fase.

Veja a discussão sobre as implementações HDRI do ImageMagick na página High Dynamic-Range Images. Para mais sobre HDRI, acesse as páginas de Usage do ImageMagick, a página Fred's Fourier Processing With ImageMagick ou esta entrada da Wikipedia.

Por padrão, a FFT é normalizada (e a IFT não é). Use "-define fourier:normalize=forward para normalizar explicitamente a FFT e desnormalizar a IFT.

-fill color

Cor a usar ao preencher uma primitiva gráfica.

Esta opção aceita um nome de cor, uma cor hexadecimal ou uma especificação numérica RGB, RGBA, HSL, HSLA, CMYK ou CMYKA. Veja Nomes de Cores para uma descrição de como especificar corretamente o argumento de cor.

Coloque a especificação de cor entre aspas para evitar que o "#" ou os parênteses sejam interpretados pelo seu shell.

Por exemplo,

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

Veja -draw para mais detalhes.

Para imprimir uma lista completa de nomes de cores, use a opção -list color.

-filter type

Use este tipo de filtro ao redimensionar ou distorcer uma imagem.

Use esta opção para afetar a operação de redimensionamento de uma imagem durante operações como -resize e -distort. Por exemplo, você pode usar um filtro de redimensionamento simples como:

Point       Hermite       Cubic
Box         Gaussian      Catrom
Triangle    Quadratic     Mitchell
CubicSpline

Use -define filter:lobes={2,3,4} para especificar o tamanho de suporte para a filtragem do filtro CubicSpline.

Os filtros Bessel e Sinc também são fornecidos (assim como uma forma equivalente mais rápida, SincFast). No entanto, esses filtros geralmente são inúteis por conta própria, pois são filtros infinitos que são recortados ao tamanho de suporte do filtro. Seu uso direto não é recomendado, exceto por meio de configurações avançadas (veja abaixo).

Em vez disso, essas funções de filtro especiais são tipicamente "janeladas" (windowed) por uma função de janelamento que a configuração -filter define. Ou seja, usar essas funções definirá um filtro "Janelado" (Windowed), apropriado ao operador envolvido. Os filtros janelados incluem:

Lanczos       Hamming       Parzen
Blackman      Kaiser        Welsh
Hanning       Bartlett      Bohman

Também é fornecido um filtro especial auto-janelado, Lagrange, que reajustará automagicamente sua função dependendo das configurações avançadas atuais de 'support' ou 'lobes' (veja abaixo).

Se você não selecionar um filtro com esta opção, o filtro assume como padrão Mitchell para uma imagem com mapa de cores, uma imagem com canal de máscara (matte), ou se a imagem for ampliada. Caso contrário, o filtro assume como padrão Lanczos.

Para imprimir uma lista completa de filtros de redimensionamento, use a opção -list filter.

Você pode modificar como o filtro se comporta ao escalar sua imagem por meio do uso destas configurações avançadas (veja também -define e -set):-

-define filter:blur=factor Escala o eixo X do filtro (e sua janela). Use > 1.0 para mais embaçado ou < 1.0 para mais nítido. Isso só deve ser usado com filtros Gaussian e filtros simples semelhantes ao Gaussian, ou você pode não obter os resultados esperados.
-define filter:support=radius Define o raio de suporte do filtro. Define quão grande o filtro deve ser e, portanto, define diretamente quão lento é o processo de reamostragem filtrada. Todos os filtros têm um tamanho de suporte 'preferencial' padrão. Alguns filtros, como Lagrange e filtros janelados, se ajustam dependendo desse valor. Com filtros simples, esse valor ou não faz nada (apenas deixa a reamostragem mais lenta) ou recorta a função do filtro de uma forma prejudicial.
-define filter:lobes=count Define o número de lóbulos a usar para o filtro Sinc/Bessel. Esta é uma forma alternativa de especificar a faixa de 'support' do filtro, projetada para ser mais adequada a filtros janelados, especialmente quando usada em distorções de imagem.
-define filter:sigma=value O valor 'sigma' usado para definir o filtro Gaussian. O valor sigma padrão é '0.5'. Ele afeta apenas o Gaussian, mas não encolhe (embora possa ampliar) o 'support' do filtro. Pode ser usado para gerar borrões muito pequenos, mas sem que o filtro 'perca' pixels devido ao uso de uma configuração de suporte pequena. Um valor maior, '0.707' (um valor de '1/sqrt(2)'), é outra configuração comum.
-define filter:b=b-spline_factor
-define filter:c=keys_alpha_factor Redefine os valores usados para filtros cúbicos como Cubic, Catrom, Mitchel e Hermite, bem como a função de janelamento cúbica Parzen. Se apenas um dos valores for definido, o outro é ajustado de modo a gerar um filtro 'Cubic-Keys'. O significado dos valores foi definido por um artigo de pesquisa de Mitchell-Netravali.
-define filter:kaiser-beta=value O valor 'alpha' usado como parte da função de janelamento Kaiser. O valor padrão é '6.5'. Ele afeta apenas a função de janelamento Kaiser e não afeta nenhum outro atributo. Antes do ImageMagick v6.7.6-10, esta opção era conhecida como "filter:alpha" (uma herança do antigo programa "zoom"). Foi alterada para alinhar a função ao uso mais moderno da pesquisa acadêmica e para defini-la melhor de forma mais definitiva.
-define filter:kaiser-alpha=value Este valor, quando multiplicado por 'PI', é equivalente a "kaiser-beta" e substituirá essa configuração. Ele afeta apenas a função de janelamento Kaiser e não afeta nenhum outro atributo.
-define filter:filter=filter_function Use esta função diretamente como o filtro de ponderação. Isso permitirá que você use diretamente uma função de janelamento como Blackman como um filtro de reamostragem, em vez de seu uso normal como função de janelamento. Se definida, e nenhuma função de janelamento também for definida, a função de janela é definida como Box). Especificar diretamente Sinc ou Jinc como filtro também fará isso.
-define filter:window=filter_function Os filtros IIR (resposta ao impulso infinita) Sinc e Jinc são janelados (reduzidos a zero ao longo da faixa de suporte definida) com o filtro informado. Isso permite que você especifique uma função de filtro a ser usada como função de janelamento para esses filtros IIR. Muitos dos filtros definidos são na verdade funções de janelamento para esses filtros IIR. Uma escolha típica é Box (que efetivamente desativa a função de janelamento).
-define filter:win-support=radius Escala a função de janelamento para este tamanho em vez do padrão. Isso faz com que o janelamento (ou o filtro auto-janelado Lagrange) aja como se a janela de suporte fosse maior do que a realmente fornecida ao operador chamador. O filtro, no entanto, ainda é recortado ao tamanho de suporte real informado. Se não definido, isso será igual ao tamanho de suporte normal do filtro.
-define filter:verbose=1 Isso faz com que o IM imprima informações sobre a seleção final do filtro interno na saída padrão. Isso inclui um cabeçalho comentado sobre as configurações de filtro em uso e dados que permitem que os pesos do filtro sejam facilmente plotados em gráfico. Note, porém, que alguns filtros são internamente definidos em termos de outros filtros. O filtro Lanczos, por exemplo, é definido em termos de um filtro SincFast janelado por SincFast, enquanto o Mitchell é definido como um filtro da família Cubic geral com configurações 'B' e 'C' específicas.

Por exemplo, para obter um filtro sinc janelado por jinc de 8 lóbulos (filtro Genseng?):

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

Ou um filtro Sinc bruto, sem janelamento, com 4 lóbulos:

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

Para extrair os dados de uma função de janelamento bruta, combine-a com um filtro 'Box'. Por exemplo, a função de janelamento parabólica 'Welch'.

magick 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

Note que o uso de opções avançadas é fornecido para especialistas em processamento de imagem que estudaram e compreendem como os filtros de redimensionamento funcionam. Sem esse conhecimento, e uma compreensão da definição dos filtros realmente envolvidos, usar configurações avançadas tem maior probabilidade de ser prejudicial ao redimensionamento da sua imagem.

-flatten

Este é um simples alias para o método -layers "flatten".

-flip

Cria uma imagem espelhada

reflete as linhas de varredura (scanlines) na direção vertical. A imagem será espelhada de cabeça para baixo.

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

Preenche a imagem com a cor no deslocamento especificado (floodfill).

O preenchimento por inundação (flood fill) começa a partir do 'ponto-semente' (seed point) informado, que não é afetado pela gravidade. Qualquer cor que corresponda dentro da distância de cor de -fuzz do argumento de cor informado, conectada a esse 'ponto-semente', será substituída pela cor de -fill atual.

Note que, se o pixel no 'ponto-semente' não corresponder, ele próprio, à cor informada (de acordo com -fuzz), então nenhuma ação será tomada.

Este operador funciona mais como a opção -opaque do que como um preenchimento por inundação mais geral que lê a cor correspondente diretamente no 'ponto-semente'. Para essa forma de preenchimento por inundação, veja -draw e seu método de desenho 'color floodfill'.

-flop

Cria uma imagem espelhada.

Reflete as linhas de varredura (scanlines) na direção horizontal, exatamente como a imagem em um espelho vertical.

-font name

Define a fonte a usar ao anotar imagens com texto, ou ao criar rótulos.

Para imprimir uma lista completa de fontes, use a opção -list font (para versões anteriores à 6.3.6, use 'type' em vez de 'font').

Além das fontes especificadas pela lista predefinida acima, você também pode especificar uma fonte de uma origem específica. Por exemplo, Arial.ttf é um arquivo de fonte TrueType, ps:helvetica é uma fonte PostScript e x:fixed é uma fonte X11.

Para outras configurações que afetam as fontes, veja as opções -family, -stretch, -style e -weight.

Para especificar um nome de arquivo de fonte explícito ou uma coleção, especifique o caminho da fonte precedido por @, por exemplo, @arial.ttf. Você pode especificar o índice da face da fonte para coleções de fontes, por exemplo, @msgothic.ttc[1].

-foreground color

Define a cor de primeiro plano para menus.", "display

A cor é especificada usando o formato descrito na opção -fill.

A cor de primeiro plano padrão é preto.

-format type

O tipo de formato da imagem.

Quando usada com o utilitário mogrify, esta opção converte qualquer imagem para o formato de imagem que você especificar. Para uma lista dos tipos de formato de imagem suportados pelo ImageMagick, use -list format.

Por padrão, o arquivo é escrito com seu nome original. No entanto, se a extensão do nome do arquivo corresponder a um formato suportado, a extensão é substituída pelo tipo de formato de imagem especificado com -format. Por exemplo, se você especificar tiff como tipo de formato e o nome do arquivo da imagem de entrada for image.gif, o nome do arquivo da imagem de saída se tornará image.tiff.

-format expression

Gera características formatadas da imagem.

Veja Formatar e Imprimir Propriedades da Imagem para uma explicação de como especificar o argumento desta opção.

-frame geometry

Envolve a imagem com uma borda ou um quadro biselado.

A cor da borda é especificada com a opção de linha de comando -mattecolor.

Veja Geometria da Imagem para detalhes completos sobre o argumento geometry. A parte de tamanho do argumento de geometria indica a quantidade de largura e altura extras adicionadas às dimensões da imagem. Se nenhum deslocamento for fornecido no argumento de geometria, então a borda adicionada é de cor sólida. Os deslocamentos x e y, se presentes, especificam que a largura e a altura da borda são particionadas para formar um bisel externo de espessura x pixels e um bisel interno de espessura y pixels. Deslocamentos negativos não fazem sentido como argumentos de quadro.

A opção -frame é afetada pela configuração atual de -compose e assume que está usando o método de composição padrão 'Over'. Ela gera uma imagem do tamanho apropriado com a configuração atual de -bordercolor e, em seguida, desenha o quadro de quatro cores distintas próximas à -mattecolor atual. A imagem original é então sobreposta ao centro dessa imagem. Isso significa que, com o método de composição padrão 'Over', quaisquer partes transparentes podem ser substituídas pela configuração atual de -bordercolor.

A composição da imagem não é afetada pela opção -gravity.

-frame

Inclui o quadro da janela X na imagem importada.

-function function parameters

Aplica uma função aos valores de canal.

Este operador realiza cálculos com base nos argumentos fornecidos para modificar cada um dos valores de cor de cada -channel previamente definido na imagem. Veja -evaluate para detalhes sobre como os resultados dos cálculos são tratados.

Isto pode ser considerado uma versão de múltiplos argumentos do operador -evaluate. (Adicionado no ImageMagick 6.4.8−8.)

Aqui, parameters é uma lista de valores numéricos separados por vírgula. O número de valores varia dependendo de qual função é selecionada. Escolha a função entre:

Polynomial
Sinusoid
Arcsin
Arctan

Para imprimir uma lista completa dos operadores -function, use -list function. Seguem as descrições.

Polynomial

A função Polynomial recebe um número arbitrário de parâmetros, que são os coeficientes de um polinômio, em ordem decrescente de grau. Ou seja, inserir

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

invocará uma função polinomial dada por

a_n u^n + a_(n-1) u^(n-1) + ··· a_1 u + a_0,

onde u é o valor de canal normalizado original do pixel.

A função Polynomial pode ser usada no lugar de Set (o polinômio constante) e Add, Divide, Multiply e Subtract (alguns polinômios lineares) do operador -evaluate. O operador -level também afeta os canais linearmente. Seguem algumas correspondências.

-evaluate Set value -function Polynomial value (Funções constantes; define cinza value×100% quando os canais são RGB.)
-evaluate Add value -function Polynomial 1,value
-evaluate Subtract value -function Polynomial 1,−value
-evaluate Multiply value -function Polynomial value,0
+level black% x white% -function Polynomial A,B (Reduz o contraste. Aqui, A=(white-black)/100 e B=black/100.)

A função Polynomial oferece grande versatilidade, já que polinômios podem ser usados para ajustar qualquer curva contínua com qualquer grau de precisão desejado.

Sinusoid

A função Sinusoid pode ser usada para variar os valores de canal de forma senoidal, definindo frequência, deslocamento de fase, amplitude e um viés. Esses valores são fornecidos como um a quatro parâmetros, da seguinte forma,

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

onde phase está em graus. (O domínio [0,1] da função corresponde a 0 até freq×360 graus.) O resultado é que, se o valor de canal normalizado de um pixel for originalmente u , seu valor normalizado resultante é dado por

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

Por exemplo, o seguinte gera uma curva que começa e termina em 0,9 (quando u =0 e 1, respectivamente), oscilando três vezes entre .7−.2=.5 e .7+.2=.9.

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

Os valores padrão de amp e bias são ambos .5. O padrão para phase é 0.

A função Sinusoid generaliza Sin e Cos do operador -evaluate ao permitir variar amplitude, fase e viés. A correspondência é a seguinte.

-evaluate Sin freq -function Sinusoid freq,0
-evaluate Cos freq -function Sinusoid freq,90

ArcSin

A função ArcSin gera a curva inversa de um Sinusoid, e pode ser usada para gerar distorção cilíndrica e mapas de deslocamento. A curva pode ser ajustada em relação tanto aos valores de entrada quanto ao intervalo de valores de saída.

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

com todos os valores fornecidos em termos de valores de cor normalizados (0.0 para preto, 1.0 para branco). Por padrão, os valores cobrem o intervalo completo de 0.0 a 1.0 tanto para entrada (width) quanto para saída (width). '1.0,0.5,1.0,0.5'

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

ArcTan

A função ArcTan gera uma curva que cruza suavemente a partir de valores-limite nos infinitos, passando por um centro usando o valor de inclinação fornecido. Todos esses valores podem ser ajustados por meio dos argumentos.

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

Por padrão '1.0,0.5,1.0,0.5'.

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

-fuzz distance{%}

Cores dentro desta distância são consideradas iguais.

Vários algoritmos buscam por uma cor-alvo. Por padrão, a cor deve ser exata. Use esta opção para corresponder cores que estão próximas da cor-alvo no espaço RGB. Por exemplo, se você quiser aparar automaticamente as bordas de uma imagem com -trim, mas a imagem foi digitalizada e a cor de fundo-alvo pode diferir por uma pequena quantidade. Esta opção pode levar em conta essas diferenças.

A distância pode estar em unidades absolutas de intensidade ou, ao acrescentar %, como uma porcentagem da intensidade máxima possível (255, 65535 ou 4294967295).

Use +fuzz para redefinir o valor de fuzz para 0.

-fx expression

Aplica uma expressão matemática a uma imagem ou aos canais da imagem.

Se o primeiro caractere de expression for @, a expressão é lida de um arquivo cujo nome é dado pelos caracteres restantes na string.

Veja FX, The Special Effects Image Operator para uma discussão detalhada desta opção.

-gamma value

Nível de correção de gama.

A mesma imagem colorida exibida em duas estações de trabalho diferentes pode parecer diferente devido a diferenças no monitor de exibição. Use a correção de gama para ajustar essa diferença de cor. Valores razoáveis vão de 0.8 a 2.3. Gama menor que 1.0 escurece a imagem e gama maior que 1.0 a clareia. Grandes ajustes na gama da imagem podem resultar na perda de algumas informações da imagem se o tamanho do quantum de pixel for de apenas oito bits (intervalo de quantum de 0 a 255).

A gama ajusta os valores de canal da imagem pixel por pixel de acordo com uma lei de potência, a saber, pow(pixel,1/gamma) ou pixel^(1/gamma), onde pixel é o valor de cor normalizado ou de 0 a 1. Por exemplo, usar um valor de gamma=2 é o mesmo que tirar a raiz quadrada da imagem.

Use +gamma value para definir o nível de gama da imagem sem realmente ajustar os pixels da imagem. Esta opção é útil se a imagem tem uma gama conhecida, mas não definida como atributo de imagem (por exemplo, imagens PNG). Escreva o "file gamma", que é o recíproco da gama de exibição; por exemplo, se sua imagem é sRGB e você quer escrever um chunk gAMA de PNG, use

magick input.png +gamma .45455 output.png

(0.45455 é 1/2.2)

Observe que os ajustes de gama também estão disponíveis por meio do operador -level.

-gaussian-blur radius

-gaussian-blur radius{xsigma}

Desfoca a imagem com um operador Gaussiano.

Convolui a imagem com uma distribuição Gaussiana ou normal usando o valor Sigma fornecido. A fórmula é:

gaussian distribution

O valor sigma é o argumento importante e determina a quantidade real de desfoque que ocorrerá.

O radius é usado apenas para determinar o tamanho do array que conterá a distribuição Gaussiana calculada. Deve ser um inteiro. Se não for fornecido, ou definido como zero, o IM calculará o maior raio possível que forneça resultados significativos para a distribuição Gaussiana.

Quanto maior o Radius, o raio, mais lenta é a operação. No entanto, um Radius muito pequeno pode resultar em efeitos severos de aliasing. Como diretriz, o Radius deve ser pelo menos o dobro do valor Sigma, embora três vezes produza um resultado mais preciso.

Isto difere do operador -blur, mais rápido, no sentido de que uma convolução bidimensional completa é usada para gerar a média ponderada dos pixels vizinhos.

A configuração -virtual-pixel determinará como os pixels que estão fora da imagem propriamente dita são desfocados no resultado final.

-geometry geometry

Define o tamanho e a localização preferidos da imagem.

Veja Image Geometry para detalhes completos sobre o argumento geometry.

-gravity type

Define a sugestão de gravidade atual para várias outras configurações e opções.

As opções incluem: NorthWest, North, NorthEast, West, Center, East, SouthWest, South, SouthEast. Use -list gravity para obter uma lista completa das configurações de -gravity disponíveis na sua instalação do ImageMagick.

A direção que você escolhe especifica onde posicionar o texto ou subimagens. Por exemplo, uma gravidade Center força o texto a ser centralizado dentro da imagem. Por padrão, a gravidade da imagem é indefinida. Veja -draw para mais detalhes sobre primitivas gráficas. Apenas a primitiva text de -draw é afetada pela opção -gravity.

A opção -gravity também é usada em conjunto com a configuração -geometry e outras configurações ou opções que recebem geometria como argumento, como a opção -crop.

Se uma configuração -gravity ocorre antes de outra opção ou configuração que tenha um argumento de geometria especificando um deslocamento, o deslocamento normalmente é aplicado ao ponto dentro da imagem sugerido pelo argumento -gravity. Assim, no comando a seguir, por exemplo, suponha que o arquivo image.png tenha dimensões 200x100. O deslocamento especificado pelo argumento de -region é (−40,+20). O argumento de -gravity é Center, que sugere o ponto médio da imagem, no ponto (100,50). O deslocamento (−40,20) é aplicado a esse ponto, resultando em (100−40,50+20)=(60,70), de modo que a região 10x10 especificada fica localizada nesse ponto. (Além disso, o -gravity afeta a própria região, que é centralizada na coordenada de pixel (60,70). (Veja Image Geometry para detalhes completos sobre o argumento geometry.)

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

Quando usada como opção do composite, -gravity dá a direção na qual a imagem gravita dentro do composto.

Quando usada como opção do montage, -gravity dá a direção na qual uma imagem gravita dentro de um bloco. A gravidade padrão é Center para esse propósito.

Use +gravity para retornar a gravidade ao seu valor padrão.

-grayscale method

Converte a imagem para tons de cinza.

Isto usará um dos métodos de -intensity para converter a imagem fornecida em uma imagem em tons de cinza.

Por exemplo, para converter uma imagem para tons de cinza (linear) Rec709Luminance, digite:

magick in.png -grayscale Rec709Luminance out.png

que é equivalente a:

magick in.png -colorspace LinearGray out.png

De forma semelhante, para converter uma imagem para tons de cinza (não linear) Rec709Luma, digite:

magick in.png -grayscale Rec709Luma out.png

que é equivalente a:

magick in.png -colorspace Gray out.png

Observe que um método de intensidade do tipo 'colorspace' produzirá o mesmo resultado independentemente do espaço de cor atual da imagem. Mas um método de intensidade do tipo 'mathematical' depende do espaço de cor que a imagem está usando atualmente.

Embora esta operação use um método de -intensity, ela não usa nem define a configuração -intensity, portanto não afetará outras operações que possam usar essa configuração.

-green-primary x,y

Ponto primário de cromaticidade verde.

-hald-clut

Aplica uma tabela de consulta de cores Hald à imagem.

Uma tabela de consulta de cores Hald é um cubo de cor tridimensional mapeado para 2 dimensões. Crie-a com o prefixo HALD: (por exemplo, HALD:8). Você pode aplicar qualquer transformação de cor à imagem Hald e então usar esta opção para aplicar a transformação à imagem.

magick image.png hald.png -hald-clut transform.png

Esta opção oferece um método conveniente para você usar o Gimp ou o Photoshop para fazer correções de cor na imagem do Hald CLUT e, em seguida, aplicá-las a múltiplas imagens usando um script do ImageMagick.

Observe que a representação é apenas do espaço de cor RGB normal e que o tripleto completo de valores de cor é usado para a consulta interpolada da imagem do cubo de cor Hald representada. Por causa disso, a operação não é afetada pela configuração -channel, nem pode ajustar ou modificar a transparência de uma imagem ou o canal alfa/matte.

Veja também -clut, que oferece a substituição de valores de cor dos canais de cor individuais, geralmente envolvendo uma imagem em tons de cinza mais simples. Por exemplo: substituição de tons de cinza por cor, ou modificação por um mapeamento de histograma.

-help

Imprime as instruções de uso.

-highlight-color color

Ao comparar imagens, destaca as diferenças de pixel com esta cor.

-hough-lines widthxheight{+threshold}

Identifica linhas retas na imagem (por exemplo, -hough-lines 9x9+195).

Use o detector de linhas de Hough com qualquer imagem binária de bordas extraídas para localizar e desenhar quaisquer linhas retas que ele encontrar.

O processo acumula contagens para cada pixel branco na imagem binária de bordas para cada orientação possível (para ângulos de 0 a 179 em incrementos de 1 grau) e distância do centro da imagem até os cantos (em incrementos de 1 px). Ele armazena as contagens em uma matriz acumuladora de ângulo versus distância. O tamanho do acumulador será 180x(diagonal/2). Em seguida, ele busca no acumulador por picos nas contagens e converte as localizações dos picos em inclinação e intercepto no espaço normal x,y da imagem de entrada. O algoritmo usa inclinações/interceptos para encontrar os pontos finais recortados aos limites da imagem. As linhas são desenhadas a partir dos pontos finais fornecidos. As contagens são uma medida do comprimento das linhas.

.

Os argumentos WxH especificam o tamanho do filtro para localizar os picos no acumulador de Hough. O threshold exclui linhas cujas contagens são menores que o valor de limiar.

Use -background para especificar a cor do fundo sobre o qual as linhas serão desenhadas. O padrão é preto.

Use -fill para especificar a cor das linhas. O padrão é preto.

Use -stroke e -strokewidth para especificar a espessura das linhas. O padrão é preto e sem strokewidth.

Um arquivo de texto listando os pontos finais e as contagens pode ser criado usando o sufixo .mvg para a imagem de saída.

Use -define hough-lines:accumulator=true para retornar a imagem do acumulador além da imagem das linhas.

-iconGeometry geometry

Especifica a geometria do ícone.

Os deslocamentos, se presentes na especificação de geometria, são tratados da mesma maneira que na opção -geometry, usando o estilo X11 para lidar com deslocamentos negativos.

Veja Image Geometry para detalhes completos sobre o argumento geometry.

-iconic

Start in icon mode in X Windows", 'animate', 'display

-identify

Identifica o formato e as características da imagem.

Estas informações são impressas por padrão:

  • número da cena da imagem (se não for zero)
  • nome da imagem
  • formato da imagem
  • tamanho da imagem
  • deslocamento da página virtual
  • profundidade de cor
  • espaço de cor
  • tamanho do arquivo em bytes
  • tempo de usuário consumido para identificar a imagem
  • tempo decorrido para identificar a imagem

Para personalizar os atributos que você quer identificar, use -format.

Se -colors também for especificado, o total de cores únicas na imagem e os valores de erro de redução de cor são impressos. Consulte o algoritmo de redução de cor para uma descrição desses valores.

Se -verbose preceder esta opção, quantidades abundantes de propriedades da imagem são exibidas, incluindo estatísticas da imagem, perfis, histograma da imagem e outras.

-ift

Implementa a transformada discreta de Fourier inversa (DFT).

Esta opção é nova a partir do ImageMagick 6.5.4-3 (e agora funciona para usuários do Windows no ImageMagick 6.6.0-9). Ela transforma um par de imagens de magnitude e fase do domínio da frequência em uma única imagem no domínio normal ou espacial. Veja, por exemplo, Transformada de Fourier, Transformada Discreta de Fourier e Transformada Rápida de Fourier.

Por exemplo, dependendo do formato de imagem usado para armazenar o resultado do -fft, usaria-se

magick fft_image.miff -ift fft_image_ift.png

ou

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

A imagem resultante pode precisar ser recortada devido ao preenchimento introduzido quando a imagem original, antes do -fft ou +fft, não era quadrada ou tinha dimensões pares. Qualquer preenchimento fica nos lados direito e/ou inferior da imagem.

A biblioteca delegada FFTW é necessária para usar -ift.

Use +ift (com HDRI habilitado) para transformar um par de imagens reais e imaginárias do domínio da frequência em uma única imagem no domínio normal (espacial).

Por padrão, a IFT não é normalizada (e a FFT é). Use "-define fourier:normalize=inverse para normalizar explicitamente a IFT e desnormalizar a FFT.

-illuminant method

iluminante de referência. Escolha entre A, B, C, D50, D55, D65, E, F2, F7 ou F11.

-immutable

Torna a imagem imutável.

-implode factor

Implode os pixels da imagem em torno do centro.

-insert index

Insere a última imagem na sequência de imagens.

Esta opção pega a última imagem na sequência de imagens atual e a insere no índice fornecido. Se um índice negativo for usado, a posição de inserção é calculada antes da última imagem ser removida da sequência. Assim, -insert -1 não resultará em nenhuma alteração na sequência de imagens.

A opção +insert é equivalente a -insert -1. Em outras palavras, insere a última imagem no final da sequência de imagens atual. Consequentemente, isso não tem efeito sobre a ordem da sequência de imagens.

-intensity method

Método para gerar o valor de intensidade a partir do pixel.

O ImageMagick fornece vários métodos usados em situações em que um operador precisa determinar um único valor em escala de cinza para algum propósito, a partir de uma imagem com componentes de pixel vermelho, verde e azul. Tipicamente é usada a fórmula Rec709Luma, que é a mesma fórmula usada ao converter imagens para -colorspace gray.

As seguintes fórmulas são fornecidas atualmente e primeiro converterão os valores de pixel para o espaço de cor linear-RGB ou sRGB não linear antes de serem aplicadas para calcular o valor final em escala de cinza.

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
max(R', G', B')
Lightness
(min(R', G', B') + max(R', G', B')) / 2.0

Observe que os valores R,G,B acima são os valores linear-RGB da imagem, enquanto R',G',B' são valores sRGB não lineares.

Esses métodos de intensidade são de natureza matemática e usarão o valor atual no respectivo canal R,G,B das imagens, independentemente de qual seja esse valor ou de qual espaço de cor a imagem esteja usando atualmente.

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 )

Esses métodos são frequentemente usados para outros propósitos, como gerar uma imagem de diferença em escala de cinza entre duas imagens coloridas (usando a composição -compose 'Difference'.

Por exemplo, a configuração 'MS' (Mean Squared) é boa para minimizar comparações de erro de cor. Já... O método 'RMS' (Root Mean Squared), por exemplo, é apropriado para calcular a distância vetorial de cor, a partir de uma imagem de diferença de cor. Isso é equivalente ao componente apenas de cor da configuração de comparação de cor do fator -fuzz.

Veja também -grayscale, que aplica uma das fórmulas de escala de cinza acima diretamente a uma imagem sem definir a configuração -intensity.

A conversão de imagem -colorspace gray também usa a configuração de intensidade atual, mas sempre converterá a imagem para o espaço de cor sRGB ou linear-RGB apropriado antes de aplicar a função acima.

Para imprimir uma lista completa dos possíveis métodos de configuração de intensidade de pixel, use -list intensity.

Os operadores afetados pela configuração -intensity incluem:

-adaptive-blur
-adaptive-sharpen
-black-threshold
-clut (ao mapear uma imagem CLUT em escala de cinza para o canal alfa se definido por -channels)
-colors para o espaço de cor gray
-compose {LightenIntensity, DarkenIntensity, CopyOpacity, CopyBlack}
-contrast-stretch
-distort {ErodeIntensity, DilateIntensity}
-normalize
-random-threshold
-range-threshold
-selective-blur
-shade
-threshold
-tint
-white-threshold

-intent type

Use este tipo de intenção de renderização ao gerenciar a cor da imagem.

Use esta opção para afetar a operação de gerenciamento de cores de uma imagem (veja -profile). Escolha entre estas intenções: Absolute, Perceptual, Relative, Saturation.

A intenção padrão é Perceptual para o espaço de cor sRGB e indefinida para os espaços de cor RGB e gray.

Para imprimir uma lista completa de intenções de renderização, use -list intent.

-interlace type

O tipo de esquema de entrelaçamento.

Escolha entre:

none
line
plane
partition
JPEG
GIF
PNG

Esta opção é usada para especificar o tipo de esquema de entrelaçamento para formatos de imagem brutos, como RGB ou YUV.

None significa não entrelaçar (RGBRGBRGBRGBRGBRGB...),

Line usa entrelaçamento por linha de varredura (RRR...GGG...BBB...RRR...GGG...BBB...), e.

Plane usa entrelaçamento por plano (RRRRRR...GGGGGG...BBBBBB...).

Partition é como plane, exceto que os diferentes planos são salvos em arquivos individuais (por exemplo, image.R, image.G e image.B).

Use Line ou Plane para criar uma imagem PNG ou GIF entrelaçada ou uma imagem JPEG progressiva.

Para imprimir uma lista completa de esquemas de entrelaçamento, use -list interlace.

-interline-spacing value

O espaço entre duas linhas de texto.

-interpolate type

Define o método de interpolação de cor de pixel a ser usado ao procurar uma cor com base em um valor de ponto flutuante ou real.

Ao procurar a cor de um pixel usando um valor de ponto flutuante não inteiro, você normalmente cai entre as cores de pixel definidas pela imagem de origem. Esta configuração determina como a cor é determinada a partir das cores dos pixels que cercam aquele ponto. Ou seja, como determinar a cor de um ponto que cai entre dois, ou até quatro pixels de cores diferentes.

average
A cor média dos quatro pixels circundantes
average4
A cor média dos quatro pixels circundantes
average9
A cor média dos nove pixels circundantes
average16
A cor média dos dezesseis pixels circundantes

background

bilinear
Uma interpolação linear dupla de pixels (o padrão)

blend

catrom
Splines bicúbicas ajustadas dos 16 pixels circundantes
integer
A cor do pixel superior esquerdo (função piso)
mesh
Divide a área em duas interpolações triangulares planas
nearest-neighbor
O pixel mais próximo do ponto de busca (função de arredondamento)
spline
Curvas spline diretas (as cores ficam borradas)

Isso é mais importante para operadores de distorção como -distort, -implode, -transform e -fx.

Para imprimir uma lista completa de métodos de interpolação, use -list interpolate.

Veja também -virtual-pixel, para controle da busca de posições fora dos limites da imagem.

-interpolative-resize geometry

Redimensiona com interpolação. Veja a configuração -interpolate.

-interword-spacing value

O espaço entre duas palavras.

-integral

Calcula a soma dos valores (valores de pixel) na imagem.

-kerning value

O espaço entre duas letras.

-kmeans colors{xiterations}{+tolerance}

Redução de cores Kmeans (iterativa) (por exemplo, -kmeans 5x300+0.0001). Colors é o número desejado de cores. As cores iniciais são encontradas usando quantização de cores. Iterations é o número de iterações de parada (padrão=300). Convergence é o limiar de parada sobre a mudança de cor entre iterações (padrão=0.0001). O processamento termina se iterations ou tolerance forem atingidos. Use -define kmeans:seed-colors=color-list para inicializar as cores, onde color-list é uma lista de cores semente delimitada por ponto e vírgula (por exemplo, -define kmeans:seed-colors="red;sRGB(19,167,254);#00ffff). Uma lista de cores sobrepõe-se à quantização de cores. Uma lista de cores não vazia sobrepõe-se ao número de cores. Quaisquer cores iniciais não atribuídas recebem cores aleatórias da imagem.

-kuwahara radius

-kuwahara radius{xsigma}

Filtro de redução de ruído que preserva bordas.

O radius é mais importante que o sigma. Se o sigma for omitido, ele será calculado automaticamente a partir do radius como sigma=radius-0.5. O sigma fornece um pouco de controle adicional de suavização.

-label name

Atribui um rótulo a uma imagem.

Use esta opção para atribuir um rótulo específico à imagem, conforme ela é lida ou criada. Você pode usar a operação -set para reatribuir os rótulos de imagens já lidas. Formatos de imagem como TIFF, PNG, MIFF suportam salvar a informação de rótulo com a imagem.

Ao salvar uma imagem em um arquivo PostScript, qualquer rótulo atribuído a uma imagem é usado como uma string de cabeçalho a ser impressa acima da imagem postscript.

Você pode incluir o nome do arquivo, tipo, largura, altura ou outro atributo da imagem incorporando um caractere de formato especial. Veja Formatar e Imprimir Propriedades de Imagem para detalhes dos códigos de escape de porcentagem.

Por exemplo,

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

atribui um rótulo de imagem MIFF:bird.miff 512x480 à imagem "bird.miff", cuja largura é 512 e altura é 480, conforme ela é lida. Se a opção +label fosse usada em vez disso, qualquer rótulo existente presente na imagem seria utilizado. Você pode remover todos os rótulos de uma imagem atribuindo a string vazia.

Um rótulo não é desenhado sobre a imagem, mas é incorporado ao fluxo de dados da imagem por meio da tag Label ou mecanismo similar. Se você quiser que o rótulo seja visível na própria imagem, use a opção -draw, ou durante o processamento final na criação de uma montagem de imagem.

Se o primeiro caractere da string for @, o rótulo da imagem é lido de um arquivo cujo título são os caracteres restantes da string. Os rótulos em um arquivo são literais, nenhum caractere de formatação incorporado é reconhecido.

-lat width

-lat widthxheight{+-}offset{%}

Realiza limiarização adaptativa local.

Aplica um limiar adaptativo a cada pixel com base no valor dos pixels em uma janela circundante. Se o pixel atual for mais claro do que essa média mais o offset opcional, então ele é tornado branco, caso contrário é tornado preto. Pequenas variações nos valores de pixel, como as encontradas em documentos digitalizados, podem ser ignoradas se o offset for positivo. Um offset negativo o tornará mais sensível a essas pequenas variações.

Isso é comumente usado para limiarizar imagens com um fundo irregular. Baseia-se na suposição de que a cor média da pequena janela é a cor de fundo local, a partir da qual se separa a cor de primeiro plano.

-layers method

Manipula múltiplas imagens que formam um conjunto de camadas de imagem ou quadros de animação.

Executa diversos métodos de operação de imagem sobre uma sequência ordenada de imagens que pode representar tanto um conjunto de 'camadas de imagem' sobrepostas, quanto uma animação de descarte GIF, ou ainda uma sequência de animação totalmente 'fundida' (coalesced).

Method Description
compare-any Recorta o segundo quadro e os posteriores ao menor retângulo que contém todas as diferenças entre as duas imagens. Nenhum método -dispose de GIF é levado em conta.
Isto é exatamente igual ao operador -deconstruct, e não preserva o funcionamento normal das animações, especialmente quando a animação usa métodos de descarte de camada como 'Previous' ou 'Background'.
compare-clear Como 'compare-any', mas recorta aos limites de quaisquer pixels opacos que se tornam transparentes no segundo quadro. Ou seja, a menor imagem necessária para mascarar ou apagar pixels para o próximo quadro.
compare-overlay Como 'compare-any', mas recorta aos pixels que adicionam cor extra à próxima imagem, como resultado da sobreposição de pixels coloridos. Ou seja, a menor imagem sobreposta única para adicionar ou alterar cores.
Isto pode ser usado com o método de composição alfa -compose 'change-mask', para reduzir a imagem apenas aos pixels que precisam ser sobrepostos.
coalesce Equivalente a uma chamada ao operador -coalesce. Aplica os métodos de descarte de camada definidos na sequência de imagens atual para formar uma sequência de animação totalmente definida, tal como deve ser exibida. Efetivamente converte uma animação GIF em uma animação semelhante a uma 'tira de filme'.
composite Composição Alfa de duas listas de imagens, separadas por uma imagem "null:", com a lista de imagens de destino primeiro, e as imagens de origem por último. Uma imagem de cada lista é composta junto até que uma das listas termine. A imagem separadora e as listas de imagens de origem são removidas.
O deslocamento de -geometry é ajustado de acordo com -gravity, em conformidade com o tamanho da tela virtual da primeira imagem em cada lista. Diferentemente de uma operação -composite normal, o deslocamento da tela também é adicionado ao posicionamento final de composição de cada imagem.
Se uma das listas de imagens contiver apenas uma imagem, essa imagem é aplicada a todas as imagens da outra lista de imagens, independentemente de qual lista seja. Neste caso, são os metadados de imagem da lista que são preservados.
dispose Isto é como 'coalesce', mas mostra a aparência da animação depois que o método de descarte de camada foi aplicado, antes que a próxima imagem de subquadro seja sobreposta. Ou seja, a imagem de 'descarte' que resulta da aplicação do método -dispose do GIF. Isto permite verificar o que está dando errado em uma animação específica que você possa estar desenvolvendo.
flatten Cria uma tela do tamanho da tela virtual da primeira imagem usando a cor de -background atual, e faz -compose de cada imagem por sua vez sobre essa tela. As imagens que ficam fora dessa tela são recortadas. A imagem final terá um deslocamento de tela virtual igual a zero.
Isto geralmente é usado como uma das operações finais de 'camadas de imagem', sobrepondo todas as camadas de imagem preparadas em uma imagem final.
Para uma única imagem, este método também pode ser usado para preencher uma tela virtual com pixels reais, ou para sobrepor por baixo uma cor opaca a fim de remover a transparência de uma imagem.
merge Como o método 'flatten', mas mesclando todas as camadas de imagem fornecidas para criar uma nova imagem de camada apenas grande o suficiente para conter toda a imagem sem recorte ou espaço extra. O deslocamento virtual das novas imagens preservará a posição da nova camada, mesmo que esse deslocamento seja negativo. O tamanho da tela virtual da primeira imagem é preservado.
Recomenda-se cautela ao manipular camadas de imagem com deslocamentos negativos, pois poucos formatos de arquivo de imagem os tratam corretamente. Seguir este método de operação com +repage removerá o deslocamento da camada, e criará uma imagem na qual todas as posições das imagens sobrepostas em relação umas às outras são preservadas, embora não necessariamente exatamente onde você as especificou.
Veja também 'trim-bounds' abaixo, que é intimamente relacionado, mas sem fazer o 'flatten' para mesclar as imagens.
mosaic Como o método 'flatten', mas expandindo o tamanho inicial da tela da primeira imagem apenas em uma direção positiva, de modo a conter todas as camadas de imagem. No entanto, como uma tela virtual está 'travada' na origem, por sua própria definição, as camadas de imagem com deslocamentos negativos ainda serão recortadas pelas bordas superior e esquerda. Veja 'merge' ou 'trim-bounds' se isso puder ser um problema.
Este método é comumente usado para dispor imagens individuais usando vários deslocamentos, mas sem conhecer o tamanho final da tela. A imagem resultante, assim como 'flatten', não terá nenhum deslocamento virtual, então pode ser salva em qualquer formato de arquivo de imagem.
optimize Otimiza uma animação fundida (coalesced), transformando-a em animação GIF usando uma série de técnicas gerais. Atualmente, isto é um atalho para aplicar tanto o método 'optimize-frame' quanto o 'optimize-transparency', mas pode ser expandido para incluir outros métodos de otimização à medida que forem desenvolvidos.
optimize-frame Otimiza uma animação fundida (coalesced), transformando-a em animação GIF reduzindo o número de pixels por quadro o máximo possível, tentando escolher o melhor método de descarte de camada a ser usado, ao mesmo tempo em que garante que o resultado continuará a animar corretamente.
Não há garantia de que a melhor otimização seja encontrada. Mas, por outro lado, nenhum algoritmo de otimização de GIF razoavelmente rápido consegue fazê-lo. No entanto, este parece se sair melhor do que a maioria dos outros otimizadores de quadros GIF observados.
optimize-plus Como 'optimize-frame', mas tenta melhorar a otimização geral adicionando quadros extras à animação, sem alterar a aparência final ou o tempo da animação. Os quadros são adicionados para tentar separar a limpeza de pixels da sobreposição de novos pixels adicionais de um quadro de animação para o próximo. Se isso não melhorar a otimização (apenas para o próximo quadro), ele recorrerá aos resultados da técnica 'optimize-frame' normal anterior.
Há a possibilidade de que a mudança no estilo de descarte resulte em uma piora na otimização de quadros posteriores, embora isso seja improvável. Em outras palavras, não há garantia de que seja melhor do que a técnica 'optimize-frame' normal. Para algumas animações, no entanto, você pode obter uma vasta melhoria no tamanho final da animação.
optimize-transparency Dada uma animação GIF, substitui por transparência qualquer pixel nas imagens de sobreposição de subquadro, se isso não alterar a animação resultante por mais do que o fator -fuzz atual.
Isto deve permitir que uma animação GIF existente, otimizada por quadro, seja compactada em um arquivo de tamanho menor devido a áreas maiores de uma única cor (transparente) em vez de um padrão de múltiplas cores repetindo a imagem descartada atual do último quadro.
remove-dups Remove (e mescla os atrasos de tempo) imagens consecutivas duplicadas, de modo a simplificar as sobreposições de camada de animações fundidas (coalesced).
Geralmente isto é resultado do uso de um atraso de tempo constante em toda a animação, ou após uma animação maior ter sido dividida em subanimações menores. Os quadros duplicados também podem ter sido usados como parte de alguns métodos de otimização de quadros.
remove-zero Remove qualquer imagem com atraso de tempo igual a zero, a menos que TODAS as imagens tenham atraso de tempo igual a zero (e não seja uma animação propriamente cronometrada, sendo então emitido um aviso).
Em uma animação GIF, tais imagens geralmente são quadros que fornecem atualizações intermediárias parciais entre os quadros que são de fato exibidos aos usuários. Esses quadros geralmente são adicionados para melhorar a otimização de quadros em animações GIF.
trim-bounds Encontra os limites de todas as imagens na sequência de imagens atual, então ajusta os deslocamentos para que todas as imagens fiquem contidas em uma tela positiva mínima. Nenhum dos dados de imagem é modificado ou mesclado, apenas o tamanho da tela virtual individual e o deslocamento de cada imagem. A todas as imagens é dado o mesmo tamanho de tela, e terão um deslocamento positivo, mas permanecerão na mesma posição relativa umas às outras. Como resultado do tamanho mínimo de tela, ao menos uma imagem tocará cada borda dessa tela. Os dados de imagem que tocam essas bordas, no entanto, podem ser transparentes.
O resultado é muito parecido com o uso de 'merge' seguido por uma opção +repage, exceto que todas as imagens foram mantidas separadas. Se 'flatten' for usado após o uso de 'trim-bounds', você obterá o mesmo resultado.

Para imprimir uma lista completa de tipos de camada, use -list layers.

Os operadores -coalesce, -deconstruct, -flatten e -mosaic são apenas apelidos (aliases) para os métodos acima e podem ser descontinuados no futuro. Veja também os operadores -page, -repage, a configuração -compose, e as configurações -dispose e -delay do GIF.

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

Ajusta o nível dos canais da imagem.

Dados um, dois ou três valores delimitados por vírgulas: black-point, white-point, gamma (por exemplo: 10,250,1.0 ou 2%,98%,0.5). Os pontos preto e branco variam de 0 a QuantumRange, ou de 0 a 100%; se o ponto branco for omitido, ele é definido como (QuantumRange - black_point), de modo a centralizar as mudanças de contraste. Se um sinal de % estiver presente em qualquer lugar da string, tanto o ponto preto quanto o branco são percentuais da faixa de cor completa. Gamma fará um ajuste de -gamma dos valores. Se for omitido, o padrão de 1.0 (sem correção de gamma) é assumido.

No uso normal (-level), os valores da imagem são esticados de modo que o valor 'black_point' fornecido na imagem original seja definido como zero (ou preto), enquanto o valor 'white_point' fornecido seja definido como QuantumRange (ou branco). Isto lhe fornece ajustes diretos de contraste na imagem. O 'gamma' da imagem resultante será então ajustado.

A partir do ImageMagick v6.4.1-9, usar a forma com sinal de mais do operador (+level) ou adicionar o sinalizador especial '!' em qualquer lugar da lista de argumentos fará com que o operador realize o inverso do ajuste de nível. Ou seja, um valor zero ou QuantumRange (preto e branco, respectivamente) na imagem original é ajustado para os valores de nível fornecidos, permitindo que você reduza o contraste, ou comprima os valores do canal dentro da imagem. O 'gamma' é ajustado antes de o ajuste de nível para reduzir o contraste da imagem ser feito.

Apenas os canais definidos pela configuração -channel atual são ajustados (o padrão são somente os canais de cor RGB), permitindo que você limite o efeito deste operador.

Observe que o canal de transparência é tratado como valores 'matte' (0 é opaco) e não como valores 'alpha' (0 é transparente).

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

Ajusta o nível de uma imagem usando as cores separadas por traço fornecidas.

Esta função é exatamente como -level, exceto que o valor para cada canal de cor é determinado pelas cores 'black_color' e 'white_color' fornecidas (conforme descrito na opção -fill).

Isto efetivamente significa que as cores fornecidas a -level-colors são mapeadas para se tornarem 'preto' e 'branco', respectivamente, com todas as outras cores ajustadas linearmente (ou recortadas) para corresponder a essa mudança. Cada canal é ajustado separadamente usando os valores de canal das cores especificadas.

Por outro lado, a forma com sinal de mais do operador (+level-colors) mapeará as cores 'preto' e 'branco' da imagem para as cores fornecidas, respectivamente, resultando em um tom de gradiente (de redução de contraste) da imagem para essas cores. Isto também pode ser usado para converter uma imagem simples em tons de cinza em uma que use o gradiente de cores especificado.

Ao fornecer uma única cor com um separador de vírgula antes ou depois dessa cor, apenas o respectivo ponto 'preto' ou 'branco', respectivamente, será substituído. Mas se nenhum separador de vírgula for fornecido, a cor fornecida é usada tanto para o ponto de cor preto quanto branco, fazendo com que o operador ou aplique um limiar à imagem em torno dessa cor (forma -) ou defina todas as cores para essa cor (forma +).

-limit type value

Define o limite de recursos do cache de pixels.

Escolha entre: width, height, area, memory, map, disk, file, thread, throttle ou time.

O valor para file é em número de arquivos. Os demais limites são em bytes. Defina os argumentos para os limites de recurso memory, map, area e disk com prefixos SI (por exemplo, 100MB).

Por padrão os limites são 768 arquivos, 3GB de área de imagem, 1.5GiB de memória, 3GiB de mapa de memória e 18.45EB de disco. Esses limites são ajustados em relação aos recursos disponíveis no seu computador, se essa informação estiver disponível. Quando qualquer limite é atingido, o ImageMagick falha de alguma forma, mas tenta tomar ações compensatórias, se possível. Por exemplo, o seguinte limita a memória:

-limit memory 32MiB -limit map 64MiB

Use -list resource para listar os limites atuais. Por exemplo, nosso sistema mostra estes limites:

-> 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

As solicitações de armazenamento de pixels para manter imagens intermediárias são atendidas por uma de três categorias de recurso: pool em memória, pool de arquivos mapeados em memória e pool em disco (nessa ordem), dependendo das configurações de -limit e de o sistema honrar ou não uma solicitação de recurso. Se o tamanho total do armazenamento de pixels alocado no pool dado atinge o limite correspondente, a solicitação é passada para o próximo pool. Adicionalmente, solicitações que excedem o limite de area são automagicamente alocadas em disco.

Para ilustrar como o ImageMagick utiliza os limites de recursos, considere uma solicitação típica de recurso de imagem. Primeiro, o ImageMagick tenta alocar os pixels em memória. A solicitação pode ser negada se a solicitação de recurso exceder o limite de memória ou se o sistema não honrar a solicitação. Se uma solicitação de memória não for honrada, os pixels são alocados em disco e o arquivo é mapeado em memória. No entanto, se a solicitação de alocação exceder o limite de map, a alocação de recurso vai para o disco. Em todos os casos, se a solicitação de recurso exceder o limite de area, os pixels são automagicamente armazenados em cache no disco. Se o disco tem um limite rígido, o programa falha.

Na maioria dos casos você simplesmente não precisa se preocupar com os limites de recursos. O ImageMagick escolhe padrões razoáveis e a maioria das imagens não sobrecarrega os recursos do seu computador. Onde os limites são úteis é quando você processa imagens grandes ou em sistemas compartilhados onde o ImageMagick pode consumir toda ou a maior parte da memória disponível. Nesse caso, o fluxo de trabalho do ImageMagick deixa outros processos lentos ou, em casos extremos, paralisa o sistema. Sob essas circunstâncias, definir limites dá algumas garantias de que o fluxo de trabalho do ImageMagick não interferirá com outros usos concorrentes do computador. Por exemplo, suponha que você tenha uma interface web que processa imagens enviadas pela Internet. Para garantir que o ImageMagick não exceda 10MiB de memória, você pode simplesmente definir o limite de area para 10MiB:

-limit area 10MB

Agora, sempre que uma imagem grande é processada, os pixels são automagicamente armazenados em cache em disco em vez de em memória. Isso, é claro, implica que imagens grandes normalmente são processadas muito lentamente, simplesmente porque o processamento de pixels em memória pode ser uma ordem de magnitude mais rápido do que em disco. Como os usuários do seu site podem inadvertidamente enviar uma imagem enorme para processar, você também deve definir um limite de disco:

-limit area 10MB -limit disk 500MB

Aqui o ImageMagick interrompe o processamento se uma imagem requer mais de 500MB de armazenamento em disco.

Além da opção de limite de recursos na linha de comando, os recursos podem ser definidos com variáveis de ambiente. Defina as variáveis de ambiente MAGICK_AREA_LIMIT, MAGICK_DISK_LIMIT, MAGICK_FILE_LIMIT, MAGICK_MEMORY_LIMIT, MAGICK_MAP_LIMIT, MAGICK_THREAD_LIMIT, MAGICK_TIME_LIMIT para os limites de área de imagem, espaço em disco, arquivos abertos, memória heap, mapa de memória, número de threads de execução e tempo máximo decorrido em segundos, respectivamente.

Note que você pode restringir os limites em relação a quaisquer políticas de segurança, mas não pode relaxá-los.

Usuários curiosos podem tentar adicionar -debug cache aos seus comandos e então vasculhar a saída gerada em busca de referências ao cache de pixels, a fim de determinar como o cache de pixels foi alocado e como os recursos foram consumidos. Usuários avançados de Linux/Linux podem canalizar essa saída através de grep memory|open|destroy|disk para uma filtragem mais legível.

Para saber mais sobre o uso de recursos do ImageMagick, consulte a seção Cache Storage and Resource Requirements na página Architecture.

-linear-stretch black-point

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

Linear com esticamento de saturação.

Isto é muito semelhante a -contrast-stretch, e usa um 'bin de histograma' para determinar o intervalo de valores de cor que precisa ser esticado. No entanto, em seguida estica essas cores usando o operador -level.

Assim, embora a determinação inicial possa ter efeitos de arredondamento de 'binning', as cores da imagem são esticadas matematicamente, em vez de usar os bins do histograma. Isso torna o operador mais preciso.

note, porém, que um -linear-stretch de '0' não faz nada, enquanto um valor de '1' faz um esticamento quase perfeito do intervalo de cores.

Veja também -auto-level para uma normalização 'perfeita' de imagens matemáticas.

Este operador está sob revisão para reformulação.

-linewidth

A largura da linha para operações de desenho subsequentes.

-liquid-rescale geometry

Redimensiona a imagem com seam-carving.

Veja Image Geometry para detalhes completos sobre o argumento geometry.

-list type

Imprime uma lista dos argumentos suportados para várias opções ou configurações. Escolha entre estes tipos de lista:

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

Essas listas variam dependendo da sua versão do ImageMagick. Use "-list list" para obter uma listagem completa de todos os argumentos "-list" disponíveis:

magick identify -list list

-log string

Especifica o formato para o log de depuração.

Esta opção especifica o formato para o log impresso quando a opção -debug está ativa.

Você pode exibir os seguintes componentes incorporando caracteres de formato especiais:

%d
domínio
%e
evento
%f
função
%l
linha
%m
módulo
%p
ID do processo
%r
tempo real de CPU
%t
tempo de relógio de parede
%u
tempo de CPU do usuário
%%
sinal de porcentagem
\n
nova linha
\r
retorno de carro

Por exemplo:

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

O comportamento padrão é imprimir todos os componentes.

-loop iterations

Adiciona a extensão de loop Netscape à sua animação GIF.

Defina iterations como zero para repetir a animação um número infinito de vezes, caso contrário a animação se repete até iterations vezes.

-lowlight-color color

Ao comparar imagens, desenfatiza as diferenças de pixels com esta cor.

-magnify

Dobra ou triplica o tamanho da imagem com escalonamento de pixel art. Especifique um método de escalonamento alternativo com -define magnify:method=method Escolha entre estes métodos: eagle2X, eagle3X, eagle3XB, epb2X, fish2X, hq2X, scale2X, scale3X, xbr2X. O padrão é scale2X.

-map type

Exibe a imagem usando este tipo.

Escolha entre estes tipos de Standard Colormap:

best
default
gray
red
green
blue

O servidor X deve suportar o Standard Colormap que você escolher, caso contrário ocorre um erro. Use list como o tipo e o display pesquisa a lista de tipos de colormap em ordem de cima para baixo até localizar um. Veja xstdcmap(1) para uma forma de criar Standard Colormaps.

-map components

Mapa de pixels.

Aqui estão os componentes válidos de um mapa:

r
componente de pixel vermelho
g
componente de pixel verde
b
componente de pixel azul
a
componente de pixel alpha (0 é transparente)
o
componente de pixel de opacidade (0 é opaco)
i
componente de pixel de intensidade em tons de cinza
c
componente de pixel ciano
m
componente de pixel magenta
y
componente de pixel amarelo
k
componente de pixel preto
p
componente de preenchimento (sempre 0)

Você pode especificar quantos desses componentes forem necessários em qualquer ordem (por exemplo, bgr). Os componentes também podem se repetir (por exemplo, rgbr).

-mattecolor color

Especifica a cor a ser usada com a opção -frame.

A cor é especificada usando o formato descrito na opção -fill.

A cor de matte padrão é #BDBDBD, este tom de cinza.

-maximum

Retorna a intensidade máxima de uma sequência de imagens.

Seleciona o valor 'máximo' de todos os pixels circundantes.

Esta é uma opção legada do método de mesmo nome.

-median geometry

Aplica um filtro de mediana à imagem.

Seleciona o valor 'do meio' de todos os pixels circundantes.

Esta é uma opção legada do método de mesmo nome.

-mean-shift widthxheight{+distance{%}

Remoção de ruído de imagem e redução/segmentação de cor (por exemplo, -mean-shift 7x7+10%).

widthxheight é o tamanho da janela e distance é a distância de cor medida no intervalo de 0 a 1 ou de 0 a 100%

O algoritmo de mean shift é iterativo e, portanto, mais lento quanto maior o tamanho da janela. Para cada pixel, ele obtém todos os pixels na janela centrada no pixel e exclui aqueles que estão fora do raio=sqrt((width-1)(height-1)/4) circundando o pixel. Desses pixels, ele encontra quais estão dentro da distância de cor ao quadrado especificada em relação à média atual. Em seguida, ele calcula um novo centroide x,y a partir dessas coordenadas e uma nova média. Esse novo centroide x,y é usado como o centro para uma nova janela. Esse processo é iterado até convergir e a média final é então usada para substituir o valor original do pixel. Ele repete esse processo para o próximo pixel, e assim por diante, até processar todos os pixels da imagem. Os resultados são melhores ao usar outros espaços de cor em vez de RGB. Recomenda-se YIQ, YUV ou YCbCr, que parecem dar resultados equivalentes.

-metric type

Envia para STDERR uma medida das diferenças entre imagens de acordo com a métrica do tipo dado.

Escolha entre:

AE
a magnitude das diferenças de pixels entre duas imagens (afetada por -fuzz)
DPC
correlação de fase discreta
DSSIM
índice de dissimilaridade estrutural
FUZZ
distância média de cor
MAE
erro absoluto médio (normalizado), distância média de erro de canal
MEPP
erro médio por pixel (erro médio normalizado, erro de pico normalizado)
MSE
erro médio ao quadrado, média do erro de canal ao quadrado
NCC
correlação cruzada normalizada
PAE
absoluto de pico (absoluto de pico normalizado)
PDC
o número total de pixels cujos valores diferem entre duas imagens (afetado por -fuzz)
PHASE
correlação de fase
PHASH
hash perceptual para os espaços de cor sRGB e HCLp. Especifique um espaço de cor alternativo com -define phash:colorspaces=colorspace,colorspace,...
PSNR
relação sinal-ruído de pico
RMSE
raiz quadrada média (raiz quadrada média normalizada)
SSIM
índice de similaridade estrutural

Controle o 'AE' (quanto os pixels diferem)) e o 'PDC' (quantos pixels diferem) com o fator -fuzz (ignore os pixels que mudaram apenas em uma pequena quantidade). Use 'PAE' para encontrar o tamanho do fator -fuzz necessário para tornar todos os pixels 'similares', enquanto 'MAE' determina o fator necessário para que cerca de metade dos pixels sejam similares.

A métrica MEPP retorna três métricas diferentes ('MAE', 'MAE' normalizado e 'PAE' normalizado) a partir de uma única execução de comparação.

As métricas SSIM e DSSIM respeitam estes defines: -define compare:ssim-radius, -define compare:ssim-sigma, -define compare:ssim-k1 e -define compare:ssim-k2.

Para imprimir uma lista completa de métricas, use a opção -list metric.

-minimum

Retorna a intensidade mínima de uma sequência de imagens.

Seleciona o valor 'mínimo' de todos os pixels circundantes.

Esta é uma opção legada do método de mesmo nome.

-mode geometry

Torna cada pixel a \'cor predominante\' da vizinhança.'

-mode value

Modo de operação.

Escolha o valor entre estes estilos: Frame, Unframe ou Concatenate

Use a opção -list com um argumento 'Mode' para obter uma lista dos argumentos de -mode disponíveis na sua instalação do ImageMagick.

-modulate brightness[,saturation,hue]

Varia o brilho, a saturação e a matiz de uma imagem.

Os argumentos são dados como percentagens de variação. Um valor de 100 significa nenhuma alteração, e quaisquer valores ausentes são considerados como 100.

O brilho é um multiplicador do brilho geral da imagem, então 0 significa preto puro, 50 é metade do brilho, 200 é o dobro do brilho. Para inverter seu significado, use -negate na imagem antes e depois.

A saturação controla a quantidade de cor em uma imagem. Por exemplo, 0 produz uma imagem em tons de cinza, enquanto um valor grande como 200 produz uma cor muito colorida, de 'desenho animado'.

O argumento hue causa uma "rotação" das cores dentro da imagem na quantidade especificada. Por exemplo, 50 resulta em uma rotação anti-horária de 90, mapeando tons de vermelho para roxo, e assim por diante. Um valor de 0 ou 200 resulta em uma rotação completa de 180 graus da imagem. Usar um valor de 300 é uma rotação de 360 graus, não resultando em nenhuma alteração na imagem original.

Por exemplo, para aumentar o brilho da cor em 20% e diminuir a saturação da cor em 10% e deixar a matiz inalterada, use -modulate 120,90.

Use -set attribute de 'option:modulate:colorspace' para especificar qual espaço de cor modular. Escolha entre HCL, HCLp, HSB, HSI, HSL (o padrão), HSV, HWB ou LCH (LCHab). Por exemplo,

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

-moments

Reporta os momentos da imagem e o hash perceptual.

-monitor

Monitora o progresso.

-monochrome

Transforma a imagem em preto e branco.

-morph frames

Faz a metamorfose de uma sequência de imagens.

Tanto os pixels da imagem quanto o tamanho são interpolados linearmente para dar a aparência de uma metamorfose de uma imagem para a próxima, ao longo de todas as imagens na lista de imagens atual. As imagens adicionadas são o equivalente a uma composição -blend. O argumento frames determina quantas imagens interpolar entre cada imagem.

-morphology

-morphology method kernel

Aplica um método de morfologia à imagem.

Veja IM Usage Examples, Morphology.

-mosaic

Um simples alias para o método "mosaic" de -layers

-motion-blur radius

-motion-blur radius{xsigma}+angle

Simula o desfoque de movimento.

Desfoca com o raio, o desvio padrão (sigma) e o ângulo fornecidos. O ângulo fornecido é o ângulo na direção do qual a imagem é desfocada. Ou seja, a direção de onde as pessoas considerariam que o objeto está vindo.

Observe que o desfoque não tem distribuição uniforme, conferindo ao movimento um nítido sentido de direção de deslocamento.

A configuração -virtual-pixel determinará como os pixels que estão fora da imagem propriamente dita são desfocados no resultado final.

-name

Atribui um nome a uma imagem.

-negate

Substitui cada pixel por sua cor complementar.

As intensidades de vermelho, verde e azul de uma imagem são negadas. O branco torna-se preto, o amarelo torna-se azul, etc. Use +negate para negar apenas os pixels em tons de cinza da imagem.

-noise geometry

+noise type

Adiciona ou reduz ruído em uma imagem.

A principal função do filtro de eliminação de picos de ruído é suavizar os objetos dentro de uma imagem sem perder informações de borda e sem criar estruturas indesejadas. A ideia central do algoritmo é substituir um pixel pelo seu vizinho mais próximo em valor dentro de uma janela de pixels, se esse pixel tiver sido identificado como ruído. Um pixel é definido como ruído se e somente se esse pixel for um máximo ou um mínimo dentro da janela de pixels.

Use -noise radius para especificar a largura da vizinhança ao reduzir ruído. Isso é equivalente a usar uma operação -statistic NonPeak, que deve ser usada preferencialmente.

Use +noise seguido de um tipo de ruído para adicionar ruído a uma imagem. Escolha entre estes tipos de ruído:

Gaussian
Impulse
Laplacian
Multiplicative
Poisson
Random
Uniform

A quantidade de ruído adicionada pode ser controlada pela configuração -attenuate. Se não for definida, o valor equivale a 1.0, ou uma adição máxima de ruído.

Observe que Random substituirá a imagem por ruído em vez de adicionar ruído à imagem. Use Uniform, se desejar adicionar ruído aleatório à imagem.

Para imprimir uma lista completa de ruídos, use a opção -list noise.

Veja também as funções de ruído de -evaluate, que permitem o uso de um valor de controle para especificar a quantidade de ruído que deve ser adicionada a uma imagem.

-normalize

Aumenta o contraste de uma imagem esticando o intervalo de valores de intensidade.

Os valores de intensidade são esticados para cobrir todo o intervalo de valores possíveis. Ao fazê-lo, escurece no máximo 2% dos pixels e clareia no máximo 1% dos pixels.

Observe que, a partir do ImageMagick 6.4.7-0, -normalize é equivalente a -contrast-stretch 2%x1%. (Antes desta versão, era equivalente a -contrast-stretch 2%x99%).

Todos os canais são normalizados em conjunto pela mesma quantidade de modo a preservar a integridade da cor, quando a configuração padrão +channel está em uso. Especificar qualquer outra configuração de -channel normalizará os canais RGB de forma independente.

Veja -contrast-stretch para mais detalhes. Veja também -auto-level para uma normalização "perfeita" mais adequada a imagens geradas matematicamente.

Este operador está em revisão para reformulação.

-opaque color

Altera esta cor para a cor de preenchimento dentro da imagem.

O argumento color é definido usando o formato descrito na opção -fill. A configuração -fuzz pode ser usada para corresponder e substituir cores semelhantes à fornecida.

Use +opaque para pintar qualquer pixel que não corresponda à cor alvo.

O operador -transparent é exatamente igual a -opaque, mas substitui a cor correspondente por transparência em vez da configuração atual da cor de -fill. Para garantir que possa fazer isso, ele também assegura que a imagem tenha um canal alfa habilitado, conforme "-alpha set", para as novas cores transparentes, e não exige que você modifique o -channel para habilitar o tratamento do canal alfa.

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

Aplica pontilhamento à imagem usando um mapa de limiar de pontilhamento ordenado predefinido, especificado, e um mapa de cores uniforme com o número fornecido de níveis por canal de cor.

Você pode escolher entre estes mapas de limiar padrão:

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)
h4x4a       4x1   Halftone 4x4 (angled)
h6x6a       6x1   Halftone 6x6 (angled)
h8x8a       8x1   Halftone 8x8 (angled)
h4x4o             Halftone 4x4 (orthogonal)
h6x6o             Halftone 6x6 (orthogonal)
h8x8o             Halftone 8x8 (orthogonal)
h16x16o           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)

O threshold gerou um simples limiar de 50% da imagem. Isso poderia ser usado com level para fazer o equivalente a -posterize para reduzir uma imagem a cores primárias básicas.

O padrão checks produz um padrão de pontilhamento em tabuleiro de xadrez de 3 níveis. Ou seja, uma escala de cinza tornar-se-á um padrão de preto sólido, branco sólido e cores de meio-tom em um padrão de tabuleiro de xadrez de preto e branco.

Você pode definir seu próprio mapa de limiar para pontilhamento ordenado e meio-tom de suas imagens, em um arquivo XML thresholds.xml pessoal ou do sistema. Veja Resources para mais detalhes sobre os arquivos de configuração.

Para imprimir uma lista completa dos limiares que foram definidos, use a opção -list threshold.

Observe que, no momento, o mesmo mapa de limiar de pontilhamento é usado para todos os canais de cor; nenhuma tentativa é feita de deslocar ou rotacionar o mapa para canais diferentes, para criar um efeito de impressão deslocada. Além disso, como os mapas são níveis de limiar simples, os mapas de meio-tom e de círculos criarão círculos incompletos ao longo das bordas de uma área colorida. Além disso, todos os efeitos são puramente efeitos booleanos liga/desliga, sem anti-aliasing para deixar os círculos com aparência suave. Pontos grandes podem ter melhor aparência com uma pequena quantidade de desfoque após serem criados.

-orient image orientation

Especifica a orientação de uma imagem de câmera digital.

Observe que isto é uma configuração. Apenas define os metadados de orientação e não altera a imagem.

Aqui estão as orientações permitidas e os códigos EXIF e descrições de como reorientar a imagem:

Undefined
sem tag: Indefinido
top-left
1: Não fazer nada
top-right
2: Inverter horizontalmente
bottom-right
3: Rotacionar 180 graus
bottom-left
4: Inverter verticalmente
left-top
5: Rotacionar 90 graus e inverter horizontalmente (transpor)
right-top
6: Rotacionar 90 graus
right-bottom
7: Rotacionar 90 graus e inverter verticalmente (transversal)
left-bottom
8: Rotacionar 270 graus

Para imprimir uma lista completa de orientações, use a opção -list orientation.

-page geometry

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

Define o tamanho e a localização de uma imagem na tela virtual maior.

Veja Image Geometry para detalhes completos sobre o argumento geometry.

Por conveniência, você pode especificar o tamanho da página usando media (veja abaixo). Deslocamentos podem então ser adicionados como com outros argumentos de geometria (por exemplo, -page Letter+43+43).

Use media como abreviação para especificar as dimensões (largura x altura) da página PostScript em pontos por polegada ou de uma página TEXT em pixels. As opções de tamanhos de papel são: 4x6, 5x7, 7x9, 8x10, 9x11, 9x12, 10x13, 10x14, 11x17, 4A0, 2A0, a0, a1, a2, a3, a4, a4small, a5, a6, a7, a8, a9, a10, archa, archb, archC, archd, arche, b0, b1, b10, b2, b3, b4, b5, b6, b7, b8, b9, c0, c1, c2, c3, c4, c5, c6, c7, csheet, dsheet, esheet, executive, flsa, flse, folio, halfletter, isob0, isob1, isob10, isob2, isob3, isob4, isob5, isob6, isob7, isob8, isob9, jisb0, jisb1, jisb2, jisb3, jisb4, jisb5, jisb6, ledger, legal, letter, lettersmall, monarch, quarto, statement, tabloid. Para determinar o tamanho correspondente em pixels a 72DPI, use este comando, por exemplo:

magick xc: -format "%[papersize:a4]" info:

Esta opção também é usada para posicionar subimagens ao gravar em um formato multi-imagem que suporte deslocamentos, como GIF89 e MNG. Quando usada para esse fim, os deslocamentos são sempre medidos a partir do canto superior esquerdo da tela e não são afetados pela opção -gravity. Para posicionar uma imagem GIF ou MNG, use -page{+-}x{+-}y (por exemplo, -page +100+200). Ao gravar em um arquivo MNG, uma opção -page que apareça antes da primeira imagem na sequência com largura e altura diferentes de zero define os valores de largura e altura que são gravados no bloco MHDR. Caso contrário, a largura e a altura do MNG são calculadas a partir da caixa delimitadora que contém todas as imagens da sequência. Ao gravar um arquivo GIF89, apenas o método da caixa delimitadora é usado para determinar suas dimensões.

Para uma página PostScript, a imagem é dimensionada como em -geometry, mas posicionada em relação ao canto inferior esquerdo da página por {+-}xoffset{+-}y offset. Use -page 612x792, por exemplo, para centralizar a imagem na página. Se o tamanho da imagem exceder o da página PostScript, ela é reduzida para caber na página. A gravidade padrão para a opção -page é NorthWest, ou seja, deslocamentos x e y positivos são medidos para a direita e para baixo a partir do canto superior esquerdo da página, a menos que a opção -gravity esteja presente com um valor diferente de NorthWest.

As dimensões de página padrão para uma imagem TEXT são 612x792.

Esta opção é usada em conjunto com -density.

Use +page para remover as configurações de página de uma imagem.

Para imprimir uma lista completa de tamanhos de página, use a opção -list pagesize.

-paint radius

Simula uma pintura a óleo.

Cada pixel é substituído pela cor mais frequente em uma vizinhança circular cuja largura é especificada com radius.

-path path

Grava imagens neste caminho no disco.

-pause seconds

Pausa entre os ciclos de animação

Pausa pelo número especificado de segundos antes de repetir a animação.

-pause seconds

Pausa entre as capturas.

Pausa pelo número especificado de segundos antes de fazer a próxima captura.

-perceptible epsilon

Define cada pixel cujo valor seja menor que |epsilon| para -epsilon ou epsilon (o que for mais próximo); caso contrário, o valor do pixel permanece inalterado.

-ping

Determina de forma eficiente estas características da imagem: número da imagem, o nome do arquivo, a largura e a altura da imagem, se a imagem é mapeada por cores ou não, o número de cores na imagem, o número de bytes na imagem, o formato da imagem (JPEG, PNM, etc.). Use +ping para garantir propriedades precisas da imagem.

-pointsize value

Tamanho em pontos da fonte PostScript, X11 ou TrueType.

-polaroid angle

Simula uma fotografia Polaroid.

Use +polaroid para rotacionar a imagem em um ângulo aleatório entre -15 e +15 graus.

-poly "wt,exp ..."

Combina múltiplas imagens de acordo com uma soma ponderada de polinômios; um peso de ponto flutuante (coeficiente) e um expoente polinomial de ponto flutuante (potência) para cada imagem, expressos como pares separados por vírgula.

Os pesos devem ser tipicamente frações entre -1 e 1. Mas a soma dos pesos deve ser 1 ou pelo menos entre 0 e 1 para evitar limitação (clamping) no modo não-hdri em preto e branco.

Os expoentes podem ser positivos, negativos ou zero. Um expoente negativo é equivalente a 1 dividido pela imagem elevada ao expoente positivo correspondente. Um expoente zero sempre produz 1 escalonado por quantumrange para o branco, ou seja, wt*white, independentemente da imagem.

O formato é: output = wt1image1^exp1 + wt2image2^exp2 ...

Alguns usos simples são:

  • Uma soma ponderada de cada imagem, desde que todos os pesos somem a unidade e todos os expoentes=1. Se os pesos forem todos iguais a 1/(número de imagens), então isso é equivalente a -evaluate-sequence mean.
  • A soma dos quadrados de duas ou mais imagens, desde que os pesos sejam iguais (e somem 1 para evitar limitação) e os expoentes sejam iguais a 2.

Observe que se pode adicionar uma cor constante à expressão simplesmente usando xc:somecolor para uma das imagens e especificando o peso desejado e o expoente igual a 0.

Da mesma forma, pode-se adicionar branco à expressão usando simplesmente null: (ou xc:white) para uma das imagens com o peso apropriado e o expoente igual a 0.

-posterize levels

Reduz a imagem a um número limitado de níveis de cor por canal.

Valores muito baixos de levels, por exemplo, 2, 3, 4, têm o efeito mais visível.

-precision value

Define o número máximo de dígitos significativos a serem impressos.

-preview type

Tipo de pré-visualização de imagem.

Use esta opção para afetar a operação de pré-visualização de uma imagem (por exemplo, magick file.png -preview Gamma Preview:gamma.png). Escolha entre estas pré-visualizações:

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

Para imprimir uma lista completa de pré-visualizações, use a opção -list preview.

A pré-visualização padrão é JPEG.

-print string

Interpreta string e imprime no console.

-process command

Processa a imagem com um filtro de imagem personalizado.

Os argumentos de command têm a forma "module arg1 arg2 arg3 ... argN", onde module é o nome do módulo a invocar (por exemplo, "Analyze") e arg1 arg2 arg3 ... argN são um número arbitrário de argumentos a passar para o módulo de processamento.

-profile filename

+profile profile_name

Gerencia perfis ICM, IPTC ou genéricos em uma imagem.

Usar -profile filename adiciona um perfil ICM (gerenciamento de cor ICC), IPTC (informações de agências de notícias) ou um perfil genérico à imagem.

Use +profile profile_name para remover o perfil indicado. O ImageMagick usa globbing de nomes de arquivo padrão, então expressões curinga podem ser usadas para remover mais de um perfil. Aqui removemos todos os perfis da imagem exceto o perfil XMP: +profile "!xmp,*".

Use magick identify -verbose para descobrir quais perfis estão no arquivo de imagem. Use -strip para remover todos os perfis (e comentários).

Para extrair um perfil, a opção -profile não é usada. Em vez disso, basta escrever o arquivo em um formato de imagem como APP1, 8BIM, ICM ou IPTC.

Por exemplo, para extrair os dados Exif (que são armazenados em arquivos JPEG no perfil APP1), use.

Defina -define precision:highres-transform=true para aumentar a precisão da transformação. Observe que há uma leve penalidade de desempenho, já que a transformação de alta precisão é de ponto flutuante em vez de inteiro sem sinal.

magick cockatoo.jpg profile.exif

É importante notar que os resultados podem depender de a imagem original já ter ou não um perfil incluído. Além disso, tenha em mente que -profile é um "operador" (ao contrário de uma "configuração") e, portanto, uma conversão é feita cada vez que é encontrado, em ordem, na linha de comando. Por exemplo, no seguinte caso, se a imagem original for CMYK com perfil, resulta uma conversão CMYK-CMYK-RGB.

magick CMYK.tif -profile "CMYK.icc" -profile "RGB.icc" RGB.tiff

Além disso, como os perfis ICC não são necessariamente simétricos, etapas extras de conversão podem produzir resultados indesejados. Os perfis CMYK são frequentemente muito assimétricos, pois envolvem mapeamento de canais 3−>4 e 4−>3.

-quality value

controla a qualidade de compressão de arquivos de imagem JPEG, PNG, HEIC e WebP quando você os está criando ou salvando. Esta opção é importante para gerenciar o equilíbrio entre a qualidade da imagem e o tamanho do arquivo.

Para os formatos de imagem JPEG e MPEG, a qualidade vai de 1 (menor qualidade de imagem e maior compressão) a 100 (melhor qualidade, mas compressão menos eficaz). O padrão é usar a qualidade estimada da sua imagem de entrada, se ela puder ser determinada, caso contrário 92. Quando a qualidade é 90 ou maior, os canais de croma não são subamostrados. Use a opção -sampling-factor para especificar os fatores para a subamostragem de croma.

Para o formato de imagem JPEG-2000, a qualidade é mapeada usando uma equação não linear para a razão de compressão exigida pela biblioteca Jasper. Esta equação não linear destina-se a aproximar de forma aproximada a qualidade fornecida pelo formato JPEG v1. O valor de qualidade padrão é 100, uma solicitação de compressão sem perdas. Uma qualidade de 75 resulta em uma solicitação de compressão 16:1.

Para os formatos de imagem MNG e PNG, o valor de qualidade define o nível de compressão do zlib (quality / 10) e o tipo de filtro (quality % 10). A "qualidade" PNG padrão é 75, o que significa nível de compressão 7 com filtragem PNG adaptativa, a menos que a imagem tenha um mapa de cores, caso em que significa nível de compressão 7 sem filtragem PNG.

Para o nível de compressão 0 (valor de qualidade menor que 10), é usada a estratégia somente Huffman, que é a mais rápida, mas não necessariamente a pior compressão.

Se o tipo de filtro for 4 ou menos, o tipo de filtro PNG especificado é usado para todas as linhas de varredura:

0
none
1
sub
2
up
3
average
4
Paeth

Se o tipo de filtro for 5, a filtragem adaptativa é usada quando a qualidade é maior que 50 e a imagem não tem um mapa de cores, caso contrário nenhuma filtragem é usada.

Se o tipo de filtro for 6, é usada a filtragem adaptativa com soma mínima de valores absolutos.

Somente se a saída for MNG, se o tipo de filtro for 7, são usadas a transformação de cor LOCO (diferenciação intrapixel) e a filtragem adaptativa com soma mínima de valores absolutos.

Se o tipo de filtro for 8, a estratégia de compressão zlib Z_RLE (ou a estratégia Z_HUFFMAN_ONLY, quando o nível de compressão é 0) é usada com filtragem PNG adaptativa.

Se o tipo de filtro for 9, a estratégia de compressão zlib Z_RLE (ou a estratégia Z_HUFFMAN_ONLY, quando o nível de compressão é 0) é usada sem filtragem PNG.

A configuração de qualidade não tem efeito sobre a aparência ou a assinatura das imagens PNG e MNG, já que a compressão é sempre sem perdas.

Nem todas as combinações de nível de compressão, estratégia e tipo de filtro PNG podem ser obtidas usando a opção -quality. Para um controle mais preciso, você pode usar os defines PNG:compression-level=N, PNG:compression-strategy=N e PNG:compression-filter=N, respectivamente, em vez disso. Veja -define. Os valores dos defines têm precedência sobre os valores da opção -quality.

Para mais informações, veja a especificação PNG.

Para os formatos de imagem MIFF e TIFF, quality/10 é o nível de compressão Zip/BZip, que vai de 0 (pior, mas mais rápida compressão) a 9 (melhor, mas mais lenta). Não tem efeito sobre a aparência da imagem, já que a compressão é sempre sem perdas.

Para o formato de imagem BPG, quality/2 é o nível real de compressão BPG (intervalo de 0 a 51).

-quantize colorspace

Reduz cores usando este espaço de cor.

Esta configuração define o espaço de cor usado para organizar e reduzir o número de cores necessárias por uma imagem (para pontilhamento posterior) por operadores como -colors. Observe que a redução de cores também acontece automaticamente ao salvar imagens em formatos de arquivo de imagem com cores limitadas, como GIF e PNG8.

-quiet

Suprime todas as mensagens de aviso. As mensagens de erro ainda são reportadas.

A configuração -virtual-pixel determinará como os pixels que estão fora da imagem propriamente dita são esfumados no resultado final.

-raise thickness

Clareia ou escurece as bordas da imagem.

Isso criará um efeito 3-D. Use -raise para criar um efeito elevado, caso contrário use +raise.

Ao contrário da opção semelhante -frame, -raise não altera as dimensões da imagem.

-random-threshold lowxhigh

Aplica um limiar aleatório à imagem.

-range-threshold low-black,low-white,high-white,high-black

Realiza limiarização rígida ou suave dentro de algum intervalo de valores em uma imagem.

-read filename

Leitura explícita de uma imagem em vez de uma leitura implícita.

Esta opção permite que você leia de nomes de arquivo que começam com um caractere de 'opção', e que de outra forma poderiam ser confundidos com uma opção (desconhecida ou não).

-read-mask filename

Impede atualizações nos pixels da imagem especificados pela máscara.

Isso é o mesmo que usar uma máscara usada para operações de mascaramento de composição, com valores em tons de cinza causando atualizações combinadas da imagem à qual a máscara está anexada.

Use +read-mask para remover a máscara das imagens.

Veja também -clip-mask, que funciona da mesma forma, mas com mascaramento booleano estrito.

-red-primary x,y

Define o ponto primário de cromaticidade vermelho.

-regard-warnings

Presta atenção às mensagens de aviso.

Esta opção faz com que alguns avisos em alguns formatos de imagem sejam tratados como erros.

-remap filename

Reduz o número de cores em uma imagem para as cores usadas por esta imagem.

Se a configuração -dither estiver habilitada (o padrão), então as cores fornecidas são pontilhadas sobre a imagem conforme necessário, caso contrário, a cor mais próxima (no espaço de cor RGB) é selecionada para substituir aquele pixel na imagem.

Como efeito colateral de aplicar um -remap de cores em todas as imagens na sequência de imagens atual, todas as imagens terão a mesma tabela de cores. Isso significa que, quando salvas em um formato de arquivo como GIF, ele usará essa tabela de cores como uma única tabela de cores comum ou global, para todas as imagens, sem exigir tabelas de cores locais extras.

Use +remap para reduzir todas as imagens na sequência de imagens atual para usar um mapa de cores comum sobre todas as imagens. Isso é equivalente a anexar todas as imagens juntas (sem cores de fundo extras) e reduzir as cores dessas imagens usando -colors com um limite de 256 cores, e então aplicar -remap dessas cores sobre a lista original de imagens. Isso garante que todas as imagens sigam um único mapa de cores.

Se o número de cores em todas as imagens for menor que 256, então +remap não deve realizar nenhuma redução de cores ou pontilhamento, pois nenhuma alteração de cor é necessária. Nesse caso, seu único efeito é forçar o uso de uma tabela de cores global. Isso é recomendado após usar -colors ou -ordered-dither para reduzir o número de cores em uma sequência de imagens animada.

Observe que o mapa de cores da imagem de remapeamento tem no máximo 8 bits de precisão. Mapas de cores mais profundos são automagicamente unidos a outras cores para atender a esse requisito.

-region geometry

Define uma região na qual as operações subsequentes se aplicam.

Os deslocamentos x e y são tratados da mesma maneira que em -crop.

Veja Image Geometry para detalhes completos sobre o argumento geometry.

Use +region para remover quaisquer regiões definidas anteriormente.

-remote

Realiza uma operação remota.

O único comando reconhecido é o nome de um arquivo de imagem a carregar.

Se você tiver mais de um aplicativo display em execução simultaneamente, use a opção window para especificar qual aplicativo controlar.

-render

Renderiza operações vetoriais.

Use +render para desativar a renderização de operações vetoriais. Isso é útil ao salvar o resultado em formatos vetoriais como MVG ou SVG.

-repage geometry

Ajusta as informações de tela e deslocamento da imagem.

Esta opção é como -page, mas atua como um operador de imagem em vez de uma configuração. Você pode definir separadamente o tamanho da tela ou o deslocamento da imagem nessa tela fornecendo apenas esses componentes.

Veja Image Geometry para detalhes completos sobre o argumento geometry.

Se uma flag ! for fornecida, o deslocamento dado é adicionado ao deslocamento existente para mover a imagem em relação à sua posição anterior. Isso é útil para sequências de animação.

Um tamanho de tela igual a zero, como '0x0', força o recálculo do tamanho da tela para que a imagem (em seu deslocamento atual) apareça completamente nessa tela (a menos que tenha um deslocamento negativo).

Use +repage para remover/redefinir completamente os metadados da tela virtual das imagens.

A opção -set 'page' pode ser usada para atribuir diretamente os metadados da tela virtual.

-resample horizontalxvertical

Reamostra a imagem para a resolução horizontal e vertical especificada.

Redimensiona a imagem de modo que seu tamanho renderizado permaneça o mesmo que o original na resolução alvo especificada. Por exemplo, se uma imagem de 300 DPI é renderizada com 3 polegadas por 2 polegadas em um dispositivo de 300 DPI, quando a imagem for reamostrada para 72 DPI, ela será renderizada com 3 polegadas por 2 polegadas em um dispositivo de 72 DPI. Observe que apenas um pequeno número de formatos de imagem (por exemplo, JPEG, PNG e TIFF) são capazes de armazenar a resolução da imagem. Para formatos que não suportam uma resolução de imagem, a resolução original da imagem deve ser especificada via -density na linha de comando antes de especificar a resolução de reamostragem.

Observe que o Photoshop armazena e obtém a resolução da imagem a partir de um perfil embutido proprietário. Se esse perfil existir na imagem, então o Photoshop continuará a tratar a imagem usando sua resolução anterior, ignorando a resolução de imagem especificada no cabeçalho padrão do arquivo.

-reshape geometry

Remodela uma imagem.

-resize geometry

Redimensiona uma imagem.

Veja Image Geometry para detalhes completos sobre o argumento geometry. Os deslocamentos, se presentes na string de geometria, são ignorados, e a opção -gravity não tem efeito.

Se a opção -filter ou -define filter:option=value preceder a opção -resize, a imagem é redimensionada com o filtro ortogonal especificado.

Muitos algoritmos de processamento de imagem assumem que sua imagem está em uma codificação de luz linear. Se sua imagem for corrigida por gama, você pode remover a correção de gama não linear, aplicar a transformação e então restaurá-la assim:

magick portrait.jpg -gamma .45455 -resize 25% -gamma 2.2  \
  -quality 92 passport.jpg

Observe que algumas funções de reamostragem são oscilações amortecidas em aproximação de uma função Sinc. Como tal, você pode obter lóbulos negativos se sua versão do ImageMagick tiver o HDRI habilitado. Para eliminá-los, adicione -clamp à sua linha de comando.

-respect-parentheses

As configurações permanecem em efeito até o limite do parêntese.

-reverse

Inverte a ordem das imagens na lista de imagens atual.

-roll {+-}x{+-}y

Rola uma imagem vertical ou horizontalmente pela quantidade dada.

Um deslocamento x negativo rola a imagem da direita para a esquerda. Um deslocamento y negativo rola a imagem de baixo para cima.

-rotate degrees{<}{>}

Aplica a rotação de imagem Paeth (usando operações de cisalhamento) à imagem.

Use > para rotacionar a imagem apenas se sua largura exceder a altura. < rotaciona a imagem apenas se sua largura for menor que a altura. Por exemplo, se você especificar -rotate "-90>" e o tamanho da imagem for 480x640, a imagem não é rotacionada. No entanto, se a imagem for 640x480, ela é rotacionada em -90 graus. Se você usar > ou <, coloque-o entre aspas para evitar que seja mal interpretado como um redirecionamento de arquivo.

Triângulos vazios nos cantos, remanescentes da rotação da imagem, são preenchidos com a cor de fundo.

Veja também o operador -distort e, especificamente, o método de distorção 'ScaleRotateTranslate'.

As informações de página ou tela virtual da imagem também são rotacionadas. Use um +repage para remover as informações de página da tela virtual se elas não forem desejadas.

-rotational-blur angle

Desfoca ao redor do centro da imagem.

Esta operação costumava ser chamada de "-radial-blur".

-sample geometry

Reduz / amplia a imagem com subamostragem de pixels e replicação de pixels, respectivamente.

Altera o tamanho da imagem simplesmente amostrando diretamente os pixels originais da imagem. Ao ampliar, os pixels são replicados em blocos. Ao reduzir, os pixels são subamostrados (ou seja, algumas linhas e colunas são puladas).

Os resultados são, portanto, equivalentes a usar -resize com uma configuração de -filter de point (vizinho mais próximo), embora -sample seja muito mais rápido, pois evita todo o processamento de filtro da imagem. Como tal, ele ignora completamente a configuração atual de -filter.

A principal característica do -sample é que nenhuma nova cor será adicionada à imagem resultante, embora algumas cores possam desaparecer.

Veja Image Geometry para detalhes completos sobre o argumento geometry. Os deslocamentos, se presentes na string de geometria, são ignorados, ao contrário de -resize.

O ponto de amostragem real é o meio da sub-região que está sendo amostrada. Como tal, uma amostragem de um único pixel de uma imagem pegará o pixel do meio (ou o do canto superior esquerdo-meio se a imagem tiver dimensões pares). No entanto, o -define 'sample:offset' pode ser definido para modificar essa posição para algum outro local dentro de cada sub-região que está sendo amostrada, como um deslocamento percentual.

Por padrão, esse valor é '50' para o ponto médio, mas poderia ser definido como '0' para o canto superior esquerdo, '100' para o canto inferior direito, ou com deslocamentos X e Y separados, como '0x50' para a borda esquerda-meio da sub-região de amostragem.

-sampling-factor horizontal-factorxvertical-factor

Fatores de amostragem usados pelo codificador JPEG ou MPEG-2 e pelo decodificador/codificador YUV.

Esta opção especifica os fatores de amostragem a serem usados pelo codificador JPEG para a subamostragem de croma. Se esta opção for omitida, a biblioteca JPEG usará seus próprios valores padrão. Ao ler ou gravar o formato YUV e ao gravar o formato M2V (MPEG-2), use -sampling-factor 2x1 ou -sampling-factor 4:2:2 para especificar o método de subamostragem 4:2:2.

-scale geometry

Reduz / amplia a imagem com média de blocos de pixels e replicação de pixels, respectivamente.

Altera o tamanho da imagem simplesmente substituindo os pixels pela média de pixels agrupados ao reduzir, ou substituindo os pixels ao ampliar.

Os resultados são, portanto, equivalentes ao uso de -resize com uma configuração de -filter igual a box. Embora seja muito mais rápido, pois evita todo o processamento de filtro da imagem. Como tal, ignora completamente a configuração atual de -filter.

Se, ao encolher (reduzir) imagens, a imagem original for algum múltiplo inteiro do novo tamanho da imagem, o número de pixels agrupados na média para produzir a nova cor de pixel é o mesmo em toda a imagem. Este é um caso especial conhecido como 'binning' e é frequentemente usado como um método de redução de ruído em imagens, como as geradas por câmeras digitais, especialmente em condições de pouca luz.

-scene value

Define o número da cena.

Esta opção define o número da cena de uma imagem ou da primeira imagem em uma sequência de imagens.

-screen

Especifica a tela a ser capturada.

Esta opção indica que a requisição GetImage usada para obter a imagem deve ser feita na janela raiz, em vez de diretamente na janela especificada. Dessa forma, você pode obter partes de outras janelas que se sobrepõem à janela especificada e, mais importante, pode capturar menus ou outros pop-ups que são janelas independentes, mas aparecem sobre a janela especificada.

-script filename

Transfere o controle para o arquivo nomeado.

-seed

Inicializa uma nova sequência de números pseudoaleatórios

-segment cluster-thresholdxsmoothing-threshold

Segmenta as cores de uma imagem.

Segmenta uma imagem analisando os histogramas dos componentes de cor e identificando unidades que são homogêneas com a técnica fuzzy c-means. Isto faz parte das rotinas de quantização de cores do ImageMagick.

Especifique o limiar de cluster como o número de pixels em cada cluster que deve exceder o limiar de cluster para ser considerado válido. O limiar de suavização elimina o ruído na segunda derivada do histograma. À medida que o valor é aumentado, você pode esperar uma segunda derivada mais suave. O padrão é 1.5.

Se a configuração -verbose estiver definida, um relatório detalhado dos clusters de cores é retornado.

-selective-blur radius

-selective-blur radius{xsigma}{+threshold}

Desfoca seletivamente os pixels dentro de um limiar de contraste.

Desfoca os pixels que estão abaixo ou iguais ao limiar de contraste. O limiar pode ser expresso como uma fração de QuantumRange ou como uma porcentagem.

O valor sigma é o argumento importante e determina a quantidade real de desfoque que ocorrerá.

O radius é usado apenas para determinar o tamanho da matriz que contém a distribuição gaussiana calculada. Deve ser um inteiro. Se não for fornecido, ou definido como zero, o IM calculará o maior radius possível que fornecerá resultados significativos para a distribuição gaussiana.

-separate

Separa um canal de imagem em uma imagem em tons de cinza. Especifique o canal com -channel.

-sepia-tone percent-threshold

Simula uma foto em tom sépia.

Especifique o limiar como o limiar percentual da intensidade (0 - 99,9%).

Esta opção aplica um efeito especial à imagem, similar ao efeito obtido em um quarto escuro fotográfico pela tonalização sépia. O limiar varia de 0 a QuantumRange e é uma medida da extensão da tonalização sépia. Um limiar de 80% é um bom ponto de partida para um tom razoável.

-set key value

+set key

Define atributos e propriedades de imagem para as imagens na sequência de imagens atual.

Isto atribuirá (ou modificará) configurações específicas anexadas a todas as imagens na sequência de imagens atual. Usar a forma +set da opção removerá ou redefinirá essa configuração para um estado padrão, conforme apropriado.

Por exemplo, isto modificará 'atributos' específicos e bem conhecidos de metadados de imagem, como aqueles normalmente substituídos por: as opções -delay, -dispose e -page, -colorspace; geralmente atribuídos antes de a imagem ser lida, usando uma chave de mesmo nome.

Se a chave fornecida não corresponder a um 'atributo' conhecido específico, como mostrado acima, a configuração é armazenada como uma string de 'propriedade' de forma livre. Tais configurações são listadas nas informações de -verbose (formato de saída "info:") como "Properties".

Isto inclui 'propriedades' de string que são definidas por e atribuídas a imagens usando as opções -comment, -label, -caption. Estas opções na verdade atribuem um 'artifact' global que é automaticamente atribuído (e quaisquer Escapes Percentuais de Formato expandidos) às imagens à medida que são lidas. Por exemplo:

$ magick rose: -set Comment 'Rose is a rose is a rose is a rose' rose.jpg
identify -format %c rose.jpg
Rose is a rose is a rose is a rose

O valor definido também pode fazer uso de Formatar e Imprimir Propriedades de Imagem no valor definido. Por exemplo:

$ magick rose: -set origsize '%wx%h' -resize 50% \
  -format 'Old size = %[origsize]  New size = %wx%h' info:
Old size = 70x46  New size = 35x23

Outras 'propriedades' bem conhecidas que estão disponíveis incluem: date:timestamp, date:create, date:modify e signature.

O operador -repage também permitirá que você modifique o atributo 'page' de uma imagem para imagens já em memória (veja também -page). No entanto, ele foi projetado para fornecer um controle mais refinado das subpartes deste 'atributo'. A opção -set page fornecerá apenas uma atribuição direta e não modificada do atributo 'page'.

Esta opção também pode associar um espaço de cor ou perfil à sua imagem. Por exemplo,

magick image.psd -set profile ISOcoated_v2_eci.icc image-icc.psd

Algumas 'propriedades' devem ser definidas de uma forma específica para serem usadas. Por exemplo, apenas 'propriedades' prefixadas com "filename:" podem ser usadas para modificar o nome do arquivo de saída de uma imagem. Por exemplo

magick rose: -set filename:mysize '%wx%h' 'rose_%[filename:mysize].png'

Se o valor da configuração for prefixado com "option:", a configuração será salva como um "Artifact" global exatamente como se tivesse sido definida usando a opção -define. Como tais configurações são de escopo global, elas podem ser usadas para passar 'atributos' e 'propriedades' de uma imagem específica, de uma forma que permite que você as use em uma imagem completamente diferente, mesmo que a imagem original já tenha sido há muito modificada ou destruída. Por exemplo:

magick rose:  -set option:rosesize '%wx%h' -delete 0 \
  label:'%[rosesize]'   label_size_of_rose.gif"

Observe que os Escapes Percentuais de Formato só corresponderão a um 'artifact' se a chave fornecida não corresponder a um 'atributo' ou 'propriedade' existente.

Você pode definir os atributos do registro de imagem prefixando o valor com registry:.

A opção -set profile também pode ser usada para injetar chunks auxiliares previamente formatados no arquivo PNG de saída, usando a opção de linha de comando como mostrado abaixo ou definindo o perfil por meio de uma interface de programação:

magick in.png -set profile PNG-chunk-x:<filename> out.png

onde x é uma flag de localização e filename é um arquivo contendo o nome do chunk nos primeiros 4 bytes, depois dois-pontos (":"), seguido pelos dados do chunk. Este codificador calculará o comprimento e o CRC do chunk, portanto estes não devem ser incluídos no arquivo.

"x" pode ser "b" (antes do PLTE), "m" (meio, ou seja, entre PLTE e IDAT) ou "e" (fim, ou seja, após IDAT). Se você quiser gravar vários chunks do mesmo tipo, adicione uma string curta e única após o "x" para evitar que perfis subsequentes sobrescrevam os anteriores, por exemplo,

magick in.png -set profile PNG-chunk-b01:file01 \
  -profile PNG-chunk-b02:file02 out.png

-shade azimuthxelevation

Sombreia a imagem usando uma fonte de luz distante.

Especifique o azimute e a elevação como a posição da fonte de luz. Use +shade para retornar os resultados do sombreamento como uma imagem em tons de cinza.

-shadow percent-opacity{xsigma}{+-}x{+-}y{%}

Simula a sombra de uma imagem.

-shared-memory

Usa memória compartilhada.

Esta opção especifica se o utilitário deve tentar usar memória compartilhada para pixmaps. O ImageMagick deve ser compilado com suporte a memória compartilhada, e o display deve suportar a extensão MIT-SHM. Caso contrário, esta opção é ignorada. O padrão é True.

-sharpen radius

-sharpen radius{xsigma}

Aguça a imagem.

Usa um operador gaussiano do radius e desvio padrão (sigma) fornecidos.

O valor sigma é o argumento importante e determina a quantidade real de aguçamento que ocorrerá.

O radius é usado apenas para determinar o tamanho da matriz que contém a distribuição gaussiana calculada. Deve ser um inteiro. Se não for fornecido, ou definido como zero, o IM calculará o maior radius possível que fornecerá resultados significativos para a distribuição gaussiana.

-shave geometry

Remove pixels das bordas da imagem.

A parte de tamanho do argumento de geometria especifica a largura da região a ser removida de ambos os lados da imagem e a altura das regiões a serem removidas do topo e da base. Os deslocamentos são ignorados.

Consulte Geometria de Imagem para detalhes completos sobre o argumento geometry.

-shear Xdegrees[xYdegrees]

Cisalha a imagem ao longo do eixo x e/ou do eixo y.

Os ângulos de cisalhamento podem ser positivos, negativos ou zero. Quando Ydegrees é omitido, ele assume como padrão o valor de Xdegrees. Quando ambos os ângulos são fornecidos, o componente horizontal do cisalhamento é executado antes do componente vertical.

O cisalhamento desliza uma borda de uma imagem ao longo do eixo x ou do eixo y (ou seja, horizontalmente ou verticalmente, respectivamente), criando um paralelogramo. A quantidade de cada um é controlada pelo respectivo ângulo de cisalhamento. Para cisalhamentos horizontais, Xdegrees é medido no sentido horário em relação a "cima" (o eixo y negativo), deslizando a borda superior para a direita quando 0°<Xdegrees<90° e para a esquerda quando 90°<Xdegrees<180°. Para cisalhamentos verticais, Ydegrees é medido no sentido horário em relação à "direita" (o eixo x positivo), deslizando a borda direita para baixo quando 0°<Ydegrees<90° e para cima quando 90°<Ydegrees<180°.

Os triângulos vazios que sobram do cisalhamento da imagem são preenchidos com a cor definida pela opção -background. A cor é especificada usando o formato descrito na opção -fill.

O cisalhamento horizontal é executado antes da parte vertical. Isto é importante observar, pois os cisalhamentos horizontal e vertical não comutam, ou seja, a ordem importa em uma sequência de cisalhamentos. Por exemplo, os dois comandos a seguir não são equivalentes.

magick logo: -shear 20x0 -shear 0x60 logo-sheared.png
convert logo: -shear 0x60 -shear 20x0 logo-sheared.png

O primeiro dos dois comandos acima é equivalente ao seguinte, exceto pela quantidade de espaço vazio criado; o comando que segue gera uma imagem menor e, portanto, é uma escolha melhor em termos de tempo e espaço.

magick logo: -shear 20x60 logo-sheared.png

-sigmoidal-contrast contrastxmid-point

Aumenta o contraste sem saturar realces ou sombras.

Aumenta o contraste da imagem usando uma função de transferência sigmoidal sem saturar realces ou sombras. Contrast indica o quanto aumentar o contraste. Por exemplo, 0 é nenhum, 3 é típico e 20 é bastante.

O mid-point indica onde a maior mudança de 'inclinação' no contraste deve cair na imagem resultante (0 é branco; 50% é cinza médio; 100% é preto).

Por padrão, o contraste da imagem é aumentado; use +sigmoidal-contrast para diminuir o contraste.

Para obter o equivalente a uma mudança de brilho sigmoidal (similar a um ajuste de gama), você usaria -sigmoidal-contrast {brightness}x0% para aumentar o brilho e +sigmoidal-contrast {brightness}x0% para diminuir o brilho. Observe o uso de '0' para o mid-point da curva sigmoidal.

Usar um contraste muito alto produzirá uma espécie de 'limiarização suavizada' da imagem. Não tão nítida (com altos efeitos de aliasing) quanto um limiar verdadeiro, mas com níveis de cinza afunilados em torno do mid-point do limiar.

-silent

Opera silenciosamente. Esta opção é usada apenas pela ferramenta import.

-similarity-threshold value

RMSE mínimo para correspondência de subimagem.

Se esta configuração for usada, a busca será interrompida assim que encontrar uma correspondência cuja métrica seja menor ou igual ao valor. Resultará em uma segunda imagem de saída parcialmente preenchida. Usar um valor de zero fará com que a busca pare na primeira correspondência perfeita que encontrar. Se esta configuração for deixada de fora, a busca prosseguirá até a conclusão ou conforme limitado por -dissimilarity-threshold.

-size width[xheight][+offset]

Define a largura e a altura da imagem.

Use esta opção para especificar a largura e a altura de imagens brutas cujas dimensões são desconhecidas, como GRAY, RGB ou CMYK. Além da largura e da altura, use -size com um deslocamento para pular qualquer informação de cabeçalho na imagem ou para indicar o número de cores em um arquivo de imagem MAP (por exemplo, -size 640x512+256).

Para imagens Photo CD, escolha entre estes tamanhos:

192x128
384x256
768x512
1536x1024
3072x2048

-sketch radius

-sketch radius{xsigma}+angle

Simula um desenho a lápis.

Esboça com o radius, o desvio padrão (sigma) e o ângulo fornecidos. O ângulo fornecido é o ângulo em direção ao qual a imagem é esboçada. Essa é a direção de onde as pessoas considerariam que o objeto está vindo.

-smush offset

Anexa uma sequência de imagens ignorando a transparência.

Smush é uma versão mais flexível de -append, unindo as imagens na sequência de cima para baixo (-smush) ou da esquerda para a direita (+smush), com um espaço entre as imagens de acordo com o deslocamento especificado.

Se o deslocamento for negativo, as imagens se sobreporão por essa quantidade.

-smush respeita -gravity. Qualquer espaço vazio será preenchido com a cor de -background.

Para deslocamento zero e imagens transparentes, as partes não transparentes das duas imagens serão alinhadas o mais próximo possível sem sobreposição.

-snaps value

Define o número de capturas de tela.

Use esta opção para capturar mais de uma imagem da tela do servidor X, para criar uma sequência de animação.

-solarize percent-threshold

Negativa todos os pixels acima do nível de limiar.

Especifique o fator como o limiar percentual da intensidade (0 - 99,9%).

Esta opção produz um efeito de solarização visto ao expor um filme fotográfico à luz durante o processo de revelação.

-sort-pixels

ordena os pixels dentro de cada linha de varredura em ordem crescente de intensidade.

-sparse-color method 'x,y color ...'

colore a imagem dada usando os pontos de cor especificados, preenchendo as demais cores intermediárias usando os métodos fornecidos.

barycentric
triângulo de três pontos de cor dados 3 pontos. Fornecer apenas 2 pontos formará um gradiente linear entre esses pontos. O gradiente gerado se estende além do triângulo criado por esses 3 pontos.
bilinear
Como barycentric, mas para 4 pontos. Menos de 4 pontos recaem para barycentric.
voronoi
Simplesmente mapeia cada pixel para o ponto de cor mais próximo dado. O resultado são 'células' poligonais de cor sólida.
manhattan
Como voronoi, mas as 'células' poligonais resultantes são mapeadas para um sistema de coordenadas fixo.
shepards
Pontos de cor enviesados pela razão do inverso da distância ao quadrado. Gerando manchas de cor em um mar da média das cores.
inverse
Pontos de cor enviesados pela razão do inverso da distância. Isso gera pontos de cor mais nítidos em vez das manchas arredondadas de 'shepards'. Gerando manchas de cor em um mar da média das cores.

Os pontos são posicionados de acordo com a localização da imagem na tela virtual (deslocamento de -page ou -repage) e não precisam de fato existir na imagem dada, mas podem ser algum ponto além da borda da imagem. Todos os pontos são valores de ponto flutuante.

Apenas os canais de cor definidos por -channel são modificados, o que significa que, por padrão, o canal de transparência matte/alfa não é afetado. Normalmente o canal de transparência é desligado antes ou depois da operação.

É claro que, se alguns pontos de cor forem transparentes para gerar um gradiente transparente, então a imagem também requer transparência habilitada para armazenar os valores.

Todos os métodos acima, quando dado um único ponto de cor, substituirão todas as cores da imagem pela cor dada, independentemente do ponto. Isso é lógico e fornece uma técnica alternativa para recolorir uma imagem para algum valor padrão.

-splice geometry

Insere a cor de fundo atual na imagem.

Isso adicionará linhas e colunas da cor de -background atual à imagem dada de acordo com a configuração de geometria de -gravity dada. Consulte Geometria de Imagem para detalhes completos sobre o argumento geometry. Essencialmente, -splice dividirá a imagem em quatro quadrantes, separando-os pelas linhas e colunas inseridas.

Se uma dimensão da geometria for zero, nenhuma linha ou coluna será adicionada para essa dimensão. Da mesma forma, usar um deslocamento zero com a configuração de -gravity apropriada adicionará linhas e colunas às bordas da imagem, preenchendo a imagem apenas ao longo daquela única borda. O preenchimento de borda é o uso mais comum de -splice.

Se exatamente a mesma geometria e -gravity for usada posteriormente com -chop, todos os splices adicionados serão removidos.

-spread amount

Desloca os pixels da imagem por uma quantidade aleatória.

O argumento amount define o tamanho da vizinhança em torno de cada pixel a partir da qual escolher um pixel candidato para mesclar.

A busca é controlada pela configuração de -interpolate.

-statistic type geometry

Substitui cada pixel pela estatística correspondente da vizinhança.

Escolha entre estes tipos de estatística:

Contrast
diferença máxima (max - min) dividida pelo valor (max + min) na vizinhança
Maximum
valor máximo por canal na vizinhança
Gradient
diferença máxima (max - min) na vizinhança
Maximum
valor máximo por canal na vizinhança
Minimum
valor mínimo por canal na vizinhança
Mean
valor médio por canal na vizinhança
Median
valor mediano por canal na vizinhança
Mode
valor de moda (mais frequente) por canal na vizinhança
Nonpeak
valor logo antes ou depois do valor mediano por canal na vizinhança
RMS
valor da raiz quadrada média por canal na vizinhança
StandardDeviation
valor do desvio padrão por canal na vizinhança

-stegano offset

Oculta uma marca d'água dentro de uma imagem.

Use um offset para começar a ocultar a imagem a algum número de pixels a partir do início da imagem. Anote esse offset e o tamanho da imagem. Você precisará dessa informação para recuperar a imagem esteganográfica (por exemplo, display -size 320x256+35 stegano:image.png).

-stereo +x{+y}

Compõe duas imagens para criar um anáglifo estéreo vermelho / ciano.

O lado esquerdo do par estéreo (segunda imagem) é salvo como o canal vermelho da imagem de saída. O lado direito (primeira imagem) é salvo como os canais verde e azul. Óculos estéreo vermelho-verde são necessários para visualizar corretamente a imagem estéreo.

-storage-type type

Tipo de armazenamento de pixel. Aqui estão os tipos válidos:

char
caracteres sem sinal
double
doubles
float
floats
integer
inteiros
long
longs
quantum
pixels na profundidade nativa da sua distribuição do ImageMagick
short
shorts sem sinal

Os tipos float e double são normalizados de 0.0 a 1.0; caso contrário, os valores dos pixels variam de 0 ao valor máximo que o tipo de armazenamento pode suportar.

-stretch fontStretch

Define um tipo de estilo de esticamento para fontes.

Esta configuração sugere um tipo de esticamento que o ImageMagick deve tentar aplicar à família de fontes atualmente selecionada. Selecione fontStretch entre os seguintes.

Any
Condensed
Expanded
ExtraCondensed
ExtraExpanded
Normal
SemiCondensed
SemiExpanded
UltraCondensed
UltraExpanded

Para imprimir uma lista completa de tipos de esticamento, use -list stretch.

Para outras configurações que afetam as fontes, consulte as opções -font, -family, -style e -weight.

-strip

Remove da imagem quaisquer perfis, comentários ou estes chunks PNG: bKGD,cHRM,EXIF,gAMA,iCCP,iTXt,sRGB,tEXt,zCCP,zTXt,date. Para remover o chunk de orientação, orNT, defina a orientação como undefined, por exemplo, -orient Undefined.

-stroke color

Cor a ser usada ao traçar uma primitiva gráfica.

A cor é especificada usando o formato descrito na opção -fill.

Consulte -draw para mais detalhes.

-strokewidth value

Define a largura do traço.

Consulte -draw para mais detalhes.

-style fontStyle

Define um estilo de fonte para texto.

Esta configuração sugere um estilo de fonte que o ImageMagick deve tentar aplicar à família de fontes atualmente selecionada. Selecione fontStyle entre os seguintes.

Any
Italic
Normal
Oblique

Para outras configurações que afetam as fontes, consulte as opções -font, -family, -stretch e -weight.

Busca por uma subimagem.

Esta opção habilita a função compare a buscar a melhor localização de correspondência de uma imagem pequena dentro de uma imagem maior. O processo de busca gera uma ou duas imagens de saída (ou quadros), dependendo de a métrica ser acelerada.

  • A primeira saída é a imagem de diferença.
  • A segunda saída, se presente, é a imagem de pontuação de similaridade.

Ao utilizar a compilação do ImageMagick habilitada para HDRI com o delegado FFTW instalado, métricas específicas—NCC , MSE , RMSE , PSNR , PHASE e DPC —são automaticamente aceleradas usando processamento FFT (Transformada Rápida de Fourier). Este é o comportamento padrão. No entanto, ao usar a flag -define compare:frequency-domain=false, você pode desabilitar a aceleração FFT e optar pelo processamento mais lento no domínio espacial, se desejar.

A imagem de pontuação de similaridade corresponde às dimensões da imagem maior. Cada pixel nesta saída representa uma posição potencial para o canto superior esquerdo da imagem pequena dentro da maior. O ponto mais brilhante na imagem de similaridade corresponde à melhor localização de correspondência. Para métricas aceleradas por FFT, a pontuação de similaridade nessa posição também é exibida entre colchetes ao lado das coordenadas da correspondência.

É importante notar que a melhor correspondência na imagem de similaridade não implica necessariamente uma correspondência perfeita. O brilho real do pico reflete a qualidade da correspondência. Além disso, outros picos brilhantes na imagem de similaridade podem indicar localizações de correspondência potenciais alternativas.

As métricas diferem em sua definição de uma correspondência perfeita. Para métricas como MSE , RMSE , PSNR (MAE , FUZZ , DSIM e PHASH), uma correspondência perfeita tem valor 0. Por outro lado, métricas como NCC , PHASE , DPC , AE , PDC , PAE , MEPP e SSIM definem uma correspondência perfeita como 1. Para manter a consistência, para métricas em que a correspondência perfeita é 0, a imagem de similaridade é invertida, garantindo que a melhor localização de correspondência apareça como o ponto mais brilhante, assim como ocorre com as métricas cuja correspondência perfeita é 1.

-swap index,index

Troca as posições de duas imagens na sequência de imagens.

Por exemplo, -swap 0,2 troca a primeira e a terceira imagens na sequência de imagens atual. Use +swap para alternar as duas últimas imagens da sequência.

-swirl degrees

Gira os pixels da imagem em redemoinho em torno do centro.

Degrees define a intensidade do redemoinho.

-synchronize

Sincroniza a imagem com o dispositivo de armazenamento.

Defina como "true" para garantir que todos os dados da imagem sejam totalmente descarregados e sincronizados para o disco. Há uma penalidade de desempenho, mas os benefícios incluem garantir um arquivo de imagem válido em caso de falha do sistema e a notificação antecipada caso não haja espaço em disco suficiente para o cache de pixels da imagem.

-taint

Marca a imagem como modificada.

-text-font name

Fonte para escrever texto de largura fixa.

Especifica o nome da fonte preferida a ser usada em texto formatado de largura fixa (estilo máquina de escrever). O padrão é Courier de 14 pontos.

Você pode marcar uma fonte para especificar se ela é uma fonte PostScript, TrueType ou X11. Por exemplo, Courier.ttf é uma fonte TrueType e x:fixed é X11.

-texture filename

Nome da textura a ser repetida em mosaico sobre o fundo da imagem.

-threshold value{%}

Aplica simultaneamente um limiar preto/branco à imagem.

Quaisquer valores de pixel (mais especificamente, aqueles canais definidos usando -channel) que excedam o limiar especificado são reatribuídos ao valor máximo do canal, enquanto todos os outros valores recebem o mínimo.

O valor do limiar pode ser dado como uma porcentagem ou como um valor inteiro absoluto correspondente ao valor de canal desejado. Quando dado como inteiro, o valor mínimo atingível é 0 (correspondente ao preto quando todos os canais são afetados), mas o valor máximo (correspondente ao branco) é o da profundidade de quantum da compilação específica do ImageMagick e, portanto, depende da instalação. Por essa razão, uma recomendação razoável para a maioria das aplicações é especificar os valores de limiar como uma porcentagem.

O exemplo a seguir forçaria os pixels com valores de vermelho acima de 50% a terem valores de vermelho de 100%, enquanto aqueles em ou abaixo de 50% de vermelho seriam definidos como 0 no canal vermelho. Os canais verde, azul e alfa (se presentes) permaneceriam inalterados.

magick in.png -channel red -threshold 50% out.png

Como exemplos (possivelmente) impraticáveis mas instrutivos, o seguinte geraria uma imagem toda preta e uma toda branca com as mesmas dimensões da imagem de entrada.

magick in.png -channel RGB -threshold 100% black.png
convert in.png -channel RGB -threshold -1 white.png

Consulte também -black-threshold e -white-threshold.

-thumbnail geometry

Cria uma miniatura da imagem.

Isso é similar a -resize, exceto que é otimizado para desempenho. Além disso, comentários e perfis de cor são removidos, e as propriedades Thumb são definidas. Esta opção respeita -filter, por exemplo, para desempenho adicional, mas com uma leve degradação na qualidade, use -filter box.

Consulte Geometria de Imagem para detalhes completos sobre o argumento geometry.

-tile filename

Define a imagem de mosaico usada para preencher uma primitiva gráfica subsequente.

-tile geometry

Especifica o layout das imagens.

Consulte Geometria de Imagem para detalhes completos sobre o argumento geometry.

-tile

Especifica que uma operação de composição subsequente é repetida ao longo e abaixo da imagem.

-tile-offset {+-}x{+-}y

Especifica o deslocamento para as imagens de mosaico, relativo à imagem de fundo sobre a qual é repetida.

Isso deve ser definido antes de a imagem de mosaico ser definida por -tile ou -texture, ou aplicado diretamente para criar uma tela em mosaico usando os formatos de entrada TILE: ou PATTERN:.

Internamente, o ImageMagick faz um -roll da imagem de mosaico pelos argumentos dados quando a imagem de mosaico é definida.

-tint value

Aplica um tom à imagem com a cor de preenchimento.

Aplica um tom à imagem com a cor de preenchimento.

Especifique a quantidade de tonalização como uma porcentagem. Cores puras como preto, branco, vermelho, amarelo não serão afetadas por -tint. Apenas as cores de faixa média, como os diversos tons de cinza.

-title string

Atribui um título à imagem exibida.", "animate", "display", "montage

Use esta opção para atribuir um título específico à imagem. Isso é atribuído à janela da imagem e normalmente é exibido na barra de título da janela. Opcionalmente, você pode incluir o nome do arquivo da imagem, tipo, largura, altura, dados Exif ou outro atributo de imagem incorporando os caracteres de formato especiais descritos na opção -format.

Por exemplo,

-title "%m:%f %wx%h"

produz um título de imagem MIFF:bird.miff 512x480 para uma imagem chamada bird.miff cuja largura é 512 e altura é 480.

-transform

Transforma a imagem.

Esta opção aplica a matriz de transformação de uma opção -affine anterior.

magick -affine 2,2,-2,2,0,0 -transform bird.ppm bird.jpg

Este operador foi agora substituído pelo método 'AffineProjection' de -distort.

-transparent color

Torna esta cor transparente dentro da imagem.

O argumento color é definido usando o formato descrito na opção -fill. A configuração -fuzz pode ser usada para corresponder e substituir cores similares à dada.

Use +transparent para inverter os pixels correspondidos, ou seja, tornar todas as cores não correspondentes transparentes.

O operador -opaque é exatamente igual a -transparent, mas substitui a cor correspondente pela cor de -fill atual, em vez de transparente. No entanto, o operador -transparent também garante que a imagem tenha um canal alfa habilitado, conforme "-alpha set", e não exige que você modifique -channel para habilitar o tratamento do canal alfa.

Observe que isso não define a cor como sendo a 'cor de transparência' usada para formatos de imagem com mapa de cores, como GIF. Para isso, use -transparent-color

-transparent-color color

Define a cor transparente.

Às vezes isso é usado ao salvar em formatos de imagem como GIF e PNG8, que usam essa cor para representar a transparência booleana. Isso não torna uma cor transparente, apenas define qual cor é a cor transparente na paleta de cores da imagem salva. Use -transparent para tornar transparente uma cor opaca.

Esta opção permite que você tenha tanto uma cor opaca visível quanto uma cor transparente com o mesmo valor de cor, sem conflito. Ou seja, você pode usar a mesma cor tanto para as áreas de cor transparente quanto para as opacas dentro de uma imagem. Isso, por sua vez, lhe dá liberdade para selecionar uma cor transparente que seja apropriada quando uma imagem é exibida por um aplicativo que não trata um índice de cor transparente, permitindo ao mesmo tempo que o ImageMagick trate corretamente imagens desse tipo.

A cor transparente padrão é #00000000, que é preto totalmente transparente.

-transpose

Espelha a imagem ao longo da diagonal do canto superior esquerdo ao inferior direito.

Esta opção transpõe matematicamente o array de pixels. É equivalente à sequência -flip -rotate 90.

-transverse

Espelha a imagem ao longo da diagonal do canto inferior esquerdo ao superior direito da imagem. Equivalente às operações -flop -rotate 90.

-treedepth value

Profundidade da árvore para o algoritmo de redução de cores.

Normalmente, esse valor inteiro é zero ou um. Um valor de zero ou um faz com que se use uma profundidade de árvore ótima para o algoritmo de redução de cores.

Uma profundidade ótima geralmente permite a melhor representação da imagem de origem com a maior velocidade computacional e a menor quantidade de memória. No entanto, a profundidade padrão é inadequada para algumas imagens. Para garantir a melhor representação, experimente valores entre 2 e 8 para esse parâmetro. Consulte o algoritmo de redução de cores para mais detalhes.

A opção -colors ou -monochrome, ou a gravação em um formato de imagem que exija redução de cores, é necessária para que esta opção tenha efeito.

-trim

Apara uma imagem.

Esta opção remove quaisquer bordas que sejam exatamente da mesma cor que os pixels dos cantos. Use -fuzz para fazer com que -trim remova bordas que sejam de cor quase igual à dos pixels dos cantos.

As informações de página ou de tela virtual da imagem são preservadas, permitindo que você extraia o resultado da operação -trim da imagem. Use +repage para remover as informações de página da tela virtual se elas forem indesejadas.

Se a imagem aparada 'desaparecer', um aviso é produzido, e uma imagem especial de um único pixel transparente, do tipo 'errou', é retornada, da mesma forma que ocorre quando uma operação -crop 'erra' a imagem propriamente dita.

Use -define trim:percent-background=0% para remover todo o fundo da imagem. A quantidade de fundo tolerada em uma borda é especificada como uma porcentagem. 0% significa que nenhum fundo é tolerado. 50% significa que uma borda pode conter até 50% de pixels que são fundo, conforme o fator de fuzz.

Use -define trim:edges={north,east,south,west} separados por vírgulas para aparar apenas as bordas especificadas da imagem, por exemplo, -define trim:edges=north,south -fuzz 5% -trim.

Use -define trim:minSize=geometry para limitar a aparagem ao tamanho especificado.

Use -background background-color para identificar a cor de fundo que circunda a região de interesse.

Pixels totalmente transparentes são normalmente tratados como se não tivessem cor ou como se sua cor fosse irrelevante. Ao comparar dois pixels que são ambos totalmente transparentes, eles costumam ser considerados iguais. Isso significa que quaisquer atributos relacionados à sua cor são desconsiderados no processo de avaliação.

-type type

O tipo de imagem.

Escolha entre: Bilevel, Grayscale, GrayscaleAlpha, Palette, PaletteAlpha, TrueColor, TrueColorAlpha, ColorSeparation ou ColorSeparationAlpha.

Normalmente, quando um formato suporta diferentes subformatos, como escala de cinza e true color, o codificador tentará escolher um subformato eficiente. A opção -type pode ser usada para sobrescrever esse comportamento. Por exemplo, para impedir que um JPEG seja gravado em formato de escala de cinza mesmo que apenas pixels cinza estejam presentes, use.

magick bird.png -type TrueColor bird.jpg

Da mesma forma, use -type TrueColorAlpha para forçar o codificador a gravar um canal alfa mesmo que a imagem seja opaca, se o formato de saída suportar transparência.

Use -type optimize para garantir que a imagem seja gravada no menor tamanho de arquivo possível.

-undercolor color

Define a cor da caixa delimitadora da anotação.

A cor é especificada usando o formato descrito na opção -fill.

Consulte -draw para mais detalhes.

-update seconds

Detecta quando o arquivo de imagem é modificado e o reexibe.

Suponha que, enquanto você está exibindo uma imagem, o arquivo atualmente exibido seja sobrescrito. O display detectará automagicamente que o arquivo de entrada foi alterado e atualizará a imagem exibida de acordo.

-unique-colors

Descarta todos os pixels de uma cor, exceto um.

-units type

As unidades de resolução da imagem.

Escolha entre: Undefined, PixelsPerInch ou PixelsPerCentimeter. Esta opção é normalmente usada em conjunto com a opção -density.

-unsharp radius

-unsharp radius{xsigma}{+gain}{+threshold}

Aguça a imagem com um operador de máscara de nitidez (unsharp mask).

A opção -unsharp aguça uma imagem. A imagem é convoluída com um operador gaussiano do raio e do desvio padrão (sigma) fornecidos. Para resultados razoáveis, o raio deve ser maior que o sigma. Use um raio de 0 para que o método selecione um raio adequado.

O valor de sigma é o argumento importante e determina a quantidade real de aguçamento que ocorrerá.

O raio é usado apenas para determinar o tamanho do array que contém a distribuição gaussiana calculada. Deve ser um inteiro. Se não for fornecido, ou for definido como zero, o IM calculará o maior raio possível que forneça resultados significativos para a distribuição gaussiana.

Os parâmetros são:

radius
O raio da gaussiana, em pixels, sem contar o pixel central (padrão 0).
sigma
O desvio padrão da gaussiana, em pixels (padrão 1.0).
gain
A fração da diferença entre a imagem original e a imagem borrada que é adicionada de volta à original (padrão 1.0).
threshold
O limiar, como uma fração de QuantumRange, necessário para aplicar a quantidade da diferença (padrão 0.05).

-verbose

Imprime informações detalhadas sobre a imagem quando esta opção precede a opção -identify ou info:.

-version

Imprime a string de versão do ImageMagick e sai.

-view string

Parâmetros de visualização do FlashPix.

-vignette radius{xsigma}{+-}x{+-}y{%}

Suaviza as bordas da imagem em estilo vinheta.

O decaimento (rolloff) do efeito de vinheta é controlado por radiusxsigma. Para um decaimento nominal, isso seria definido como 0xsigma. Um valor de 0x0 produzirá um círculo/elipse sem decaimento. Os argumentos x e y controlam o tamanho do círculo. Valores maiores diminuem os raios e valores menores aumentam os raios. Valores de +0+0 gerarão um círculo/elipse do mesmo tamanho que a imagem. Os valores padrão para x e y são 10% da dimensão correspondente da imagem. Assim, os raios serão diminuídos em 10%, ou seja, os diâmetros do círculo/elipse serão 80% da dimensão correspondente da imagem. Observe que o símbolo de porcentagem em uma geometria afeta x e y, enquanto raio e sigma são absolutos (por exemplo, -vignette "0x2+10%+10%").

-virtual-pixel method

Especifica o conteúdo dos pixels virtuais.

Esta opção define qual fonte de cor deve ser usada se e quando uma busca de cor 'errar' completamente a imagem de origem. A(s) cor(es) que parecem circundar a imagem de origem. Geralmente essa cor é derivada da imagem de origem, mas também pode ser definida como uma cor de fundo específica.

Escolha entre estes métodos:

background
a área que circunda a imagem é a cor de fundo
black
a área que circunda a imagem é preta
checker-tile
quadrados alternados com a imagem e a cor de fundo
dither
padrão pontilhado não aleatório de 32x32
edge
estende o pixel da borda em direção ao infinito
gray
a área que circunda a imagem é cinza
horizontal-tile
ladrilha a imagem horizontalmente, com a cor de fundo acima/abaixo
horizontal-tile-edge
ladrilha a imagem horizontalmente e replica os pixels da borda lateral
mirror
ladrilha a imagem em espelho
random
escolhe um pixel aleatório da imagem
tile
ladrilha a imagem (padrão)
transparent
a área que circunda a imagem é negrura transparente
vertical-tile
ladrilha a imagem verticalmente, as laterais são da cor de fundo
vertical-tile-edge
ladrilha a imagem verticalmente e replica os pixels da borda lateral
white
a área que circunda a imagem é branca

O valor padrão é "edge".

Isso é mais importante para operadores de distorção como -distort, -implode e -fx. No entanto, também afeta operações que podem acessar pixels logo fora da imagem propriamente dita, como -convolve, -blur e -sharpen.

Para imprimir uma lista completa dos tipos de pixel virtual, use a opção -list virtual-pixel.

-visual type

Anima imagens usando este tipo de visual X.", 'animate', 'display'

Escolha entre estas classes de visual:

StaticGray    TrueColor
GrayScale     DirectColor
StaticColor   default
PseudoColor   visual id

O servidor X deve suportar o visual que você escolher, caso contrário ocorre um erro. Se um visual não for especificado, é escolhida a classe de visual que pode exibir o maior número de cores simultâneas na tela padrão.

-watermark brightnessxsaturation

Aplica marca d'água a uma imagem usando as porcentagens fornecidas de brilho e saturação.

Pega uma imagem em escala de cinza (com máscara alfa) e modifica o brilho da imagem de destino de acordo com o valor de escala de cinza da imagem de marca d'água e a porcentagem de brilho. O atributo de saturação de cor do destino é apenas modificado diretamente pela porcentagem de saturação, que tem como padrão 100 por cento (nenhuma alteração de cor).

-wave amplitude

-wave amplitudexwavelength

Cisalha as colunas de uma imagem em uma onda senoidal.

-wavelet-denoise threshold

-wavelet-denoise thresholdxsoftness

Remove ruído da imagem usando uma transformada wavelet. O threshold é o valor abaixo do qual tudo é considerado ruído e varia de 0.0 (nenhum) até QuantumRange, ou use porcentagem (por exemplo, 5%). A softness atenua o limiar e normalmente varia de 0.0 (nenhuma, padrão) a 1.0. Quanto maior o valor, mais ruído permanece na imagem.

-weight fontWeight

Define um peso de fonte para o texto.

Esta configuração sugere um peso de fonte que o ImageMagick deve tentar aplicar à família de fontes atualmente selecionada. Use um inteiro positivo para fontWeight ou selecione entre os seguintes.

Thin
O mesmo que fontWeight = 100.
ExtraLight
O mesmo que fontWeight = 200.
Light
O mesmo que fontWeight = 300.
Normal
O mesmo que fontWeight = 400.
Medium
O mesmo que fontWeight = 500.
DemiBold
O mesmo que fontWeight = 600.
Bold
O mesmo que fontWeight = 700.
ExtraBold
O mesmo que fontWeight = 800.
Heavy
O mesmo que fontWeight = 900.

Para imprimir uma lista completa dos tipos de peso, use -list weight.

Para outras configurações que afetam fontes, consulte as opções -font, -family, -stretch e -style.

-white-balance

Aplica o balanço de branco a uma imagem de acordo com uma suposição de mundo cinza (grayworld) no espaço de cor LAB.

Use -define white-balance:vibrance=value{%} para alterar a vibração de cor dos canais a e b.

-white-point x,y

Ponto branco de cromaticidade.

-white-threshold value{%}

Força a branco todos os pixels acima do limiar, deixando inalterados todos os pixels iguais ou abaixo do limiar.

O valor do limiar pode ser dado como uma porcentagem ou como um valor inteiro absoluto dentro de [0, QuantumRange] correspondente ao valor de -channel desejado. Consulte -threshold para mais detalhes sobre limiares e os valores resultantes.

-window id

Torna a imagem o fundo de uma janela.", 'animate', 'display'

id pode ser um id ou nome de janela. Especifique root para selecionar a janela raiz do X como a janela de destino.

Por padrão, a imagem é ladrilhada no fundo da janela de destino. Se backdrop ou -resize forem especificados, a imagem é cercada pela cor de fundo. Consulte X RESOURCES para detalhes.

A imagem não será exibida na janela raiz se a imagem tiver mais cores únicas do que o mapa de cores da janela de destino permite. Use -colors para reduzir o número de cores.

-window-group

Especifica o grupo de janelas.

-word-break type

Define se as quebras de linha aparecem onde quer que o texto, de outra forma, transbordaria sua caixa de conteúdo. Escolha entre normal, o padrão, ou break-word.

-write filename

Grava uma sequência de imagens.

A sequência de imagens que precede a opção -write filename é gravada, e o processamento continua com a mesma imagem em seu estado atual, caso haja opções adicionais. Para restaurar a imagem ao seu estado original após gravá-la, use a opção +write filename.

Use -compress para especificar o tipo de compressão da imagem.

-write-mask filename

Impede atualizações nos pixels da imagem especificados pela máscara.

Isso é o mesmo que usar uma máscara empregada em operações de mascaramento de composição, com valores de escala de cinza causando atualizações mescladas na imagem à qual a máscara está anexada.

Use +write-mask para remover a máscara das imagens.

Veja também -clip-mask, que funciona da mesma forma, mas com mascaramento booleano estrito.