ImageMagick® es un conjunto de software gratuito y de código abierto, utilizado para editar y manipular imágenes digitales. Puede usarse para crear, editar, componer o convertir imágenes de mapa de bits, y admite una amplia variedad de formatos de archivo, incluidos JPEG, PNG, GIF, TIFF y Ultra HDR.
ImageMagick se utiliza ampliamente en sectores como el desarrollo web, el diseño gráfico y la edición de vídeo, así como en la investigación científica, las imágenes médicas y la astronomía. Su naturaleza versátil y personalizable, junto con sus robustas capacidades de procesamiento de imágenes, lo convierten en una opción popular para una amplia variedad de tareas relacionadas con imágenes.
ImageMagick incluye una interfaz de línea de comandos para ejecutar tareas complejas de procesamiento de imágenes, así como API para integrar sus funciones en aplicaciones de software. Está escrito en C y puede usarse en una gran variedad de sistemas operativos, incluidos Linux, Windows y macOS.
El sitio web principal de ImageMagick se encuentra en https://imagemagick.org. La versión más reciente disponible es ImageMagick 7.1.2-25. Se puede acceder al código fuente de este software a través de un repositorio. Además, mantenemos una versión heredada de ImageMagick, la versión 6. Consulta nuestra guía de migración (porting) para obtener todos los detalles sobre la transición de la versión 6 a la versión 7.
Se recomienda encarecidamente crear una política de seguridad que se ajuste a tu entorno local específico antes de utilizar ImageMagick. Puedes encontrar orientación sobre cómo configurar esta política. Asimismo, es importante verificar tu política con la herramienta de validación.
Funciones y capacidades
Una de las funciones clave de ImageMagick es su compatibilidad con los scripts y la automatización. Esto permite a los usuarios crear complejas canalizaciones de manipulación de imágenes que pueden ejecutarse automáticamente, sin necesidad de intervención manual. Esto puede resultar especialmente útil para tareas que requieren procesar grandes cantidades de imágenes, o para tareas que deben realizarse de forma periódica.
Además de sus capacidades básicas de manipulación de imágenes, ImageMagick también incluye otras funciones, como compatibilidad con animación, gestión del color y renderizado de imágenes. Estas funciones lo convierten en una herramienta versátil para una amplia variedad de tareas relacionadas con imágenes, incluidos el diseño gráfico, la visualización científica y el arte digital.
En general, ImageMagick es un conjunto de software potente y versátil para mostrar, convertir y editar archivos de imagen. Su compatibilidad con los scripts y la automatización, junto con sus demás funciones, lo convierten en una herramienta valiosa para una amplia variedad de tareas relacionadas con imágenes.
Estos son solo algunos ejemplos de lo que ImageMagick puede hacer por ti:
| Animación | crea una secuencia de animación GIF a partir de un grupo de imágenes. |
|---|---|
| Desenfoque bilateral | filtro de suavizado no lineal que preserva los bordes y reduce el ruido. |
| Gestión del color | gestión precisa del color con perfiles de color o, en su defecto, compresión o expansión de gamma integrada según lo exija el espacio de color. |
| Umbralización por color | fuerza a blanco todos los píxeles dentro del rango de color y a negro el resto. |
| Procesamiento por línea de comandos | utiliza ImageMagick desde la línea de comandos. |
| Disposición de texto complejo | compatibilidad con texto bidireccional y conformación (shaping). |
| Composición | superpone una imagen sobre otra. |
| Etiquetado de componentes conectados | etiqueta de forma única las regiones conectadas de una imagen. |
| Envolvente convexa | el polígono convexo de área mínima que contiene los objetos del primer plano de la imagen. Además, también se generan el rectángulo delimitador mínimo y el ángulo de corrección de rotación. |
| Decorar | añade un borde o marco a una imagen. |
| Delinear características de la imagen | detección de bordes de Canny, líneas de Hough. |
| Transformada discreta de Fourier | implementa la DFT directa e inversa. |
| Caché de píxeles distribuida | descarga el almacenamiento intermedio de píxeles a uno o varios servidores remotos. |
| Dibujar | añade formas o texto a una imagen. |
| Cifrar o descifrar una imagen | convierte imágenes ordinarias en datos ininteligibles y de nuevo a su estado original. |
| Conversión de formato | convierte una imagen de un formato a otro (p. ej., de PNG a JPEG). |
| Distorsión generalizada de píxeles | corrige o induce distorsiones de imagen, incluida la perspectiva. |
| Procesamiento distribuido heterogéneo | ciertos algoritmos son compatibles con OpenCL para aprovechar las aceleraciones que ofrece la ejecución conjunta en plataformas heterogéneas formadas por CPU, GPU y otros procesadores. |
| Imágenes de alto rango dinámico | representa con precisión el amplio rango de niveles de intensidad presentes en escenas reales, desde la luz solar directa más brillante hasta las sombras más profundas y oscuras. |
| Ecualización del histograma | utiliza la ecualización adaptativa del histograma para mejorar el contraste de las imágenes. |
| Caché de imágenes | métodos y herramientas seguros para almacenar en caché imágenes, secuencias de imágenes, vídeo, audio o metadatos en una carpeta local.. |
| Calculadora de imágenes | aplica una expresión matemática a una imagen, secuencia de imágenes o canales de imagen. |
| Degradados de imagen | crea una mezcla gradual de dos colores cuya forma es horizontal, vertical, circular o elíptica. |
| Identificación de imágenes | describe el formato y los atributos de una imagen. |
| ImageMagick en el iPhone | convierte, edita o compone imágenes en tu dispositivo iOS, como el iPhone o el iPad. |
| Compatibilidad con imágenes grandes | lee, procesa o escribe imágenes de tamaños de mega-, giga- o tera-píxeles. |
| Montaje | yuxtapone miniaturas de imágenes en un lienzo de imagen. |
| Morfología de formas | extrae características, describe formas y reconoce patrones en las imágenes. |
| Compatibilidad con cine | lee y escribe los formatos de imagen comunes utilizados en el trabajo de cine digital. |
| Imágenes multiespectrales | admite imágenes multiespectrales de hasta 32 bandas, 22 de ellas metacanales. |
| Reducción de ruido y de color | filtro de Kuwahara, desplazamiento de la media (mean-shift). |
| Hash perceptual | asigna imágenes visualmente idénticas al mismo hash o a uno similar; útil en la recuperación, autenticación, indexación o detección de copias de imágenes, así como en las marcas de agua digitales. |
| Efectos especiales | desenfoca, enfoca, umbraliza o tiñe una imagen. |
| Texto y comentarios | inserta texto descriptivo o artístico en una imagen. |
| Compatibilidad con hilos de ejecución | ImageMagick es seguro para hilos (thread safe) y la mayoría de sus algoritmos internos se ejecutan en paralelo para aprovechar las aceleraciones que ofrecen los chips de procesador multinúcleo. |
| Transformar | redimensiona, rota, corrige la inclinación, recorta, voltea o recorta los márgenes de una imagen. |
| Transparencia | hace invisibles partes de una imagen. |
| Compatibilidad con píxeles virtuales | acceso cómodo a los píxeles situados fuera de los límites de la imagen. |
Ejemplos de uso de ImageMagick muestra cómo usar el software desde la línea de comandos para lograr distintos efectos. También hay varios scripts disponibles en los sitios web Fred's ImageMagick Scripts y Snibgo's ImageMagick Scripts, que pueden usarse para aplicar transformaciones geométricas, desenfocar y enfocar imágenes, eliminar ruido y realizar otras operaciones. Además, existe una herramienta llamada Magick.NET que permite a los usuarios acceder a la funcionalidad de ImageMagick sin tener que instalar el software en sus propios sistemas. Por último, el sitio web también incluye un Cookbook con consejos y ejemplos para usar ImageMagick en sistemas Windows.
Comunidad
Únete a la comunidad de ImageMagick participando en el servicio de debate. Aquí puedes encontrar respuestas a preguntas formuladas por otros usuarios de ImageMagick o plantear las tuyas propias. Si tienes una pregunta técnica, una sugerencia de mejora o una corrección para un error, también puedes abrir un issue para obtener ayuda de la comunidad.