⚠️ Este es un sitio de traducción no oficial, sin relación con ImageMagick Studio LLC. Para información autorizada, consulte la página original (https://imagemagick.org/compare/).

compare

Ejemplos de uso • Resumen de opciones

Utilice el programa compare para anotar matemática y visualmente la diferencia entre una imagen y su reconstrucción. Consulte Command Line Processing para obtener consejos sobre cómo estructurar su comando compare, o vea más abajo ejemplos de uso del comando.

Ejemplos de uso

Aquí listamos algunos ejemplos del comando compare para ilustrar su utilidad y facilidad de uso. Para empezar, comparemos una imagen con otra que ha sido enfocada:

magick rose.jpg -sharpen 0x1 reconstruct.jpg
magick compare rose.jpg reconstruct.jpg difference.png
magick compare -compose src rose.jpg reconstruct.jpg difference.png

rose rose ==> rose

Las áreas rojas de la imagen de diferencia enfatizan (resaltan) los píxeles afectados por el enfoque de la imagen, mientras que el blanco resta énfasis (atenúa) a los píxeles no tocados por el proceso de enfoque.

Además de la interpretación visual de la diferencia entre una imagen y su reconstrucción, informamos de una medida matemática de la diferencia:

$ magick compare -verbose -metric rmse rose.jpg reconstruct.jpg difference.png
Image: rose.jpg
 Channel distortion: RMSE
   red: 2833.91 (0.0432427)
   green: 2401.45 (0.0366438)
   blue: 2560.43 (0.0390696)
   all: 2604.73 (0.0397456)

O bien, si solo desea la distorsión del canal rojo, utilice este comando:

$ magick compare -channel red -metric PSNR rose.jpg reconstruct.jpg difference.png
27.2817 (0.227348)

O bien, si solo desea la distorsión global de la imagen, utilice este comando:

$ magick compare -metric PSNR rose.jpg reconstruct.jpg difference.png
28.0142 (0.233452)

Si la imagen reconstruida es una subimagen de la imagen, el programa compare devuelve el desplazamiento de la mejor coincidencia. Además, devuelve una imagen de similitud en la que una ubicación de coincidencia exacta es completamente blanca y, si ninguno de los píxeles coincide, negra; en caso contrario, algún nivel de gris intermedio:

$ magick compare -metric NCC -subimage-search logo.png hat.png similarity.pfm
0 (0) @ 417,44 [0]
$ magick identify -define identify:locate=maximum -define identify:limit=1 similarity.pfm
Channel maximum locations:
  Gray: 65532.9 (0.999967) 417,44

El valor entre corchetes es la métrica de similitud normalizada.

Tenga en cuenta que la búsqueda de similitud respeta el desplazamiento de página virtual. Para garantizar los resultados esperados, asegúrese de que el desplazamiento de página de su imagen sea +0+0.

La función de búsqueda de subimagen en ImageMagick puede ser bastante lenta debido a su naturaleza iterativa. Sin embargo, si su versión de ImageMagick incluye soporte para FFTW (Fastest Fourier Transform in the West) y su métrica es DPC, MSE, NCC, RMSE, PHASE o PSNR, puede esperar una mejora de un orden de magnitud en el tiempo de procesamiento. Para más información, consulte Accelerated Subimage-search Compare.

Si la opción -subimage-search no está habilitada, ImageMagick realiza una comparación directa píxel a píxel entre las dos imágenes, comenzando desde su desplazamiento de página, normalmente las esquinas superiores izquierdas. En los casos en que las imágenes difieren en tamaño, la imagen más pequeña se alinea con la más grande. Las áreas adicionales de la imagen más pequeña se tratan como píxeles virtuales. Estos píxeles virtuales pueden procesarse según el método de píxel virtual elegido, que influye en cómo se manejan las regiones no coincidentes en la comparación. En consecuencia, las métricas de comparación pueden verse afectadas por estas áreas adicionales, lo que potencialmente repercute en la evaluación global de similitud. Para comparar únicamente los píxeles auténticos, utilice -define compare:virtual-pixels=false.

Puede encontrar ejemplos adicionales del uso de compare en Examples of ImageMagick Usage.

Dos imágenes se consideran similares si su diferencia según la métrica y el valor de fuzz especificados es 0, con la excepción de la métrica de correlación cruzada normalizada (NCC), donde dos imágenes se consideran similares cuando su correlación cruzada normalizada es 1. La métrica predeterminada es NCC.

El programa compare devuelve 2 en caso de error, 0 si las imágenes son similares, o un valor entre 0 y 1 si no son similares.

Resumen de opciones

El comando compare reconoce estas opciones. Haga clic en una opción para obtener más detalles sobre su funcionamiento.

Opción Descripción
-adjoin unir imágenes en un único archivo multiimagen
-alpha on, activate, off, deactivate, set, opaque, copy, transparent, extract, background o shape del canal alfa
-authenticate value descifrar la imagen con esta contraseña
-auto-orient orientar la imagen automágicamente
-background color color de fondo
-brightness-contrast geometry mejorar el brillo / contraste de la imagen
-channel type aplicar la opción a los canales de imagen seleccionados
-colorspace type establecer el espacio de color de la imagen
-compose operator establecer el operador de composición de la imagen
-crop geometry recortar la imagen
-decipher filename convertir píxeles cifrados en texto plano
-debug events mostrar abundante información de depuración
-define format:option definir una o más opciones de formato de imagen
-density geometry densidad horizontal y vertical de la imagen
-depth value profundidad de bits de la imagen
-dissimilarity-threshold value distorsión máxima para la coincidencia de (sub)imagen (predeterminado 0.2)
-distort type coefficients distorsionar la imagen
-encipher filename convertir píxeles en texto plano en píxeles cifrados
-extract geometry extraer un área de la imagen
-fuzz distance los colores dentro de esta distancia se consideran iguales
-gravity type colocación horizontal y vertical del texto
-help imprimir las opciones del programa
-highlight-color color enfatizar las diferencias de píxeles con este color
-identify identificar el formato y las características de la imagen
-interlace type tipo de esquema de entrelazado de la imagen
-level value ajustar el nivel de contraste de la imagen
-limit type value límite de recursos de la caché de píxeles
-log format formato de la información de depuración
-lowlight-color color restar énfasis a las diferencias de píxeles con este color
-metric type medir las diferencias entre imágenes con esta métrica. La métrica predeterminada es RMSE.
-negate reemplazar cada píxel por su color complementario
-profile filename añadir, eliminar o aplicar un perfil de imagen
-quality value nivel de compresión JPEG/MIFF/PNG
-quantize colorspace reducir los colores de la imagen en este espacio de color
-quiet suprimir todos los mensajes de advertencia
-read-mask filename asociar una máscara de lectura con la imagen
-regard-warnings prestar atención a los mensajes de advertencia
-repage geometry tamaño y ubicación del lienzo de la imagen
-resize geometry redimensionar la imagen
-respect-parentheses los ajustes permanecen vigentes hasta el límite del paréntesis
-rotate degrees aplicar la rotación de Paeth a la imagen
-sampling-factor geometry factor de muestreo horizontal y vertical
-seed value sembrar una nueva secuencia de números pseudoaleatorios
-separate separar un canal de imagen en una imagen en escala de grises
-set attribute value establecer un atributo de la imagen
-sigmoidal-contrast geometry aumentar el contraste sin saturar las luces ni las sombras
-similarity-threshold value distorsión mínima para la coincidencia de (sub)imagen (predeterminado 0.0)
-size geometry ancho y alto de la imagen
-subimage-search buscar una subimagen
-synchronize sincronizar la imagen con el dispositivo de almacenamiento
-taint marcar la imagen como modificada
-transparent-color color color transparente
-trim recortar los bordes de la imagen
-verbose imprimir información detallada sobre la imagen
-version imprimir información de la versión
-virtual-pixel method método de acceso para los píxeles fuera de los límites de la imagen
-write-mask filename asociar una máscara de escritura con la imagen