ImageMagick® é um conjunto de software gratuito e de código aberto, usado para editar e manipular imagens digitais. Pode ser usado para criar, editar, compor ou converter imagens bitmap, e oferece suporte a uma ampla variedade de formatos de arquivo, incluindo JPEG, PNG, GIF, TIFF e Ultra HDR.
O ImageMagick é amplamente utilizado em setores como desenvolvimento web, design gráfico e edição de vídeo, bem como em pesquisa científica, imagens médicas e astronomia. Sua natureza versátil e personalizável, aliada a robustas capacidades de processamento de imagens, faz dele uma escolha popular para uma ampla variedade de tarefas relacionadas a imagens.
O ImageMagick inclui uma interface de linha de comando para executar tarefas complexas de processamento de imagens, além de APIs para integrar seus recursos a aplicações de software. É escrito em C e pode ser usado em diversos sistemas operacionais, incluindo Linux, Windows e macOS.
O site principal do ImageMagick pode ser encontrado em https://imagemagick.org. A versão mais recente disponível é o ImageMagick 7.1.2-25. O código-fonte deste software pode ser acessado através de um repositório. Além disso, mantemos uma versão legada do ImageMagick, a versão 6. Leia nosso guia de migração (porting) para obter detalhes abrangentes sobre a transição da versão 6 para a versão 7.
É altamente recomendável criar uma política de segurança adequada ao seu ambiente local específico antes de utilizar o ImageMagick. Você pode encontrar orientações sobre como configurar essa política. Além disso, é importante verificar sua política usando a ferramenta de validação.
Recursos e capacidades
Um dos principais recursos do ImageMagick é o suporte a scripts e automação. Isso permite que os usuários criem pipelines complexos de manipulação de imagens que podem ser executados automaticamente, sem a necessidade de intervenção manual. Isso pode ser especialmente útil para tarefas que exigem o processamento de grandes quantidades de imagens, ou para tarefas que precisam ser realizadas regularmente.
Além de suas capacidades fundamentais de manipulação de imagens, o ImageMagick também inclui vários outros recursos, como suporte a animação, gerenciamento de cores e renderização de imagens. Esses recursos fazem dele uma ferramenta versátil para uma ampla variedade de tarefas relacionadas a imagens, incluindo design gráfico, visualização científica e arte digital.
De modo geral, o ImageMagick é um conjunto de software poderoso e versátil para exibir, converter e editar arquivos de imagem. Seu suporte a scripts e automação, juntamente com seus outros recursos, faz dele uma ferramenta valiosa para uma ampla variedade de tarefas relacionadas a imagens.
A seguir, alguns exemplos do que o ImageMagick pode fazer por você:
| Animação | cria uma sequência de animação GIF a partir de um grupo de imagens. |
|---|---|
| Desfoque bilateral | filtro de suavização não linear, que preserva bordas e reduz ruído. |
| Gerenciamento de cores | gerenciamento de cores preciso com perfis de cor ou, na ausência deles, compressão ou expansão de gama integrada conforme exigido pelo espaço de cor. |
| Limiarização de cor | força todos os pixels na faixa de cor para branco e os demais para preto. |
| Processamento por linha de comando | utilize o ImageMagick a partir da linha de comando. |
| Layout de texto complexo | suporte a texto bidirecional e moldagem (shaping). |
| Composite | sobrepõe uma imagem a outra. |
| Rotulagem de componentes conexos | rotula de forma única as regiões conexas em uma imagem. |
| Fecho convexo | menor polígono convexo em área que contém os objetos do primeiro plano da imagem. Além disso, também são gerados o retângulo delimitador mínimo e o ângulo de correção de rotação. |
| Decorar | adiciona uma borda ou moldura a uma imagem. |
| Delinear características da imagem | detecção de bordas Canny, linhas de Hough. |
| Transformada discreta de Fourier | implementa a DFT direta e inversa. |
| Cache de pixels distribuído | transfere o armazenamento intermediário de pixels para um ou mais servidores remotos. |
| Desenhar | adiciona formas ou texto a uma imagem. |
| Cifrar ou decifrar uma imagem | converte imagens comuns em dados ininteligíveis e depois de volta ao original. |
| Conversão de formato | converte uma imagem de um formato para outro (por exemplo, PNG para JPEG). |
| Distorção generalizada de pixels | corrige ou induz distorções na imagem, incluindo perspectiva. |
| Processamento distribuído heterogêneo | certos algoritmos têm suporte a OpenCL para aproveitar os ganhos de velocidade oferecidos pela execução conjunta em plataformas heterogêneas compostas por CPUs, GPUs e outros processadores. |
| Imagens de alto alcance dinâmico | representa com precisão a ampla faixa de níveis de intensidade encontrada em cenas reais, desde a luz solar direta mais intensa até as sombras mais escuras e profundas. |
| Equalização de histograma | usa equalização de histograma adaptativa para melhorar o contraste das imagens. |
| Cache de imagens | métodos e ferramentas seguros para armazenar em cache imagens, sequências de imagens, vídeo, áudio ou metadados em uma pasta local.. |
| Calculadora de imagens | aplica uma expressão matemática a uma imagem, sequência de imagens ou canais de imagem. |
| Gradientes de imagem | cria uma mistura gradual de duas cores cujo formato é horizontal, vertical, circular ou elíptico. |
| Identificação de imagens | descreve o formato e os atributos de uma imagem. |
| ImageMagick no iPhone | converta, edite ou componha imagens no seu dispositivo iOS, como o iPhone ou iPad. |
| Suporte a imagens grandes | leia, processe ou grave imagens com tamanhos de mega, giga ou terapixels. |
| Montage | justapõe miniaturas de imagens em uma tela de imagem. |
| Morfologia de formas | extrai características, descreve formas e reconhece padrões em imagens. |
| Suporte a cinema | lê e grava os formatos de imagem comuns usados em trabalhos de cinema digital. |
| Imagens multiespectrais | oferece suporte a imagens multiespectrais de até 32 bandas, 22 delas sendo metacanais. |
| Redução de ruído e cores | filtro de Kuwahara, mean-shift. |
| Hash perceptual | mapeia imagens visualmente idênticas para o mesmo hash ou para hashes semelhantes—útil em recuperação de imagens, autenticação, indexação ou detecção de cópias, bem como em marca d'água digital. |
| Efeitos especiais | desfoca, aguça, limiariza ou tinge uma imagem. |
| Texto e comentários | insere texto descritivo ou artístico em uma imagem. |
| Suporte a threads de execução | o ImageMagick é thread-safe e a maioria dos algoritmos internos é executada em paralelo para aproveitar os ganhos de velocidade oferecidos por chips de processadores multinúcleo. |
| Transformar | redimensiona, rotaciona, corrige a inclinação, recorta, inverte ou apara uma imagem. |
| Transparência | torna partes de uma imagem invisíveis. |
| Suporte a pixels virtuais | acesso conveniente a pixels fora dos limites da imagem. |
Exemplos de uso do ImageMagick demonstram como usar o software a partir da linha de comando para obter diversos efeitos. Há também vários scripts disponíveis nos sites Fred's ImageMagick Scripts e Snibgo's ImageMagick Scripts, que podem ser usados para aplicar transformações geométricas, desfocar e aguçar imagens, remover ruído e realizar outras operações. Além disso, existe uma ferramenta chamada Magick.NET que permite aos usuários acessar a funcionalidade do ImageMagick sem precisar instalar o software em seus próprios sistemas. Por fim, o site também inclui um Cookbook com dicas e exemplos de uso do ImageMagick em sistemas Windows.
Comunidade
Junte-se à comunidade do ImageMagick participando do serviço de discussão. Lá, você pode encontrar respostas a perguntas feitas por outros usuários do ImageMagick ou fazer suas próprias perguntas. Se tiver uma dúvida técnica, uma sugestão de melhoria ou uma correção para um bug, você também pode abrir uma issue para obter ajuda da comunidade.