Use ImageMagick para comparar imágenes


10

Quiero comparar un archivo png de origen con un archivo comprimido.

Estoy usando imagemagicky este comando:

convert image1 image2 -compose Difference -composite \
       -colorspace gray -format '%[fx:mean*100]' info:

Pero lo que obtengo es un número muy extraño. Estoy mirando desde un número del 0-100%.

Cuando comparé dos imágenes totalmente diferentes, todavía obtengo un 8.37885.

Entonces, buena gente de Ask Ubuntu, ¿puede proporcionarme un comando que mida la diferencia entre los archivos correctamente y me dé un número de 0 a 100?

Respuestas:


11

El problema es con la colorspace grayparte del comando. Esta opción verifica solo la diferencia entre el color gris de las imágenes.

Entonces el comando correcto debería ser

convert image1 image2 -compose Difference -composite  -format '%[fx:mean*100]' info:

Esto debería darte una respuesta más apropiada.


1
Podrías probar otros métodos como este script de Python . Use el método que mejor se adapte a su propósito.
Usuario registrado

Muchas gracias por su ayuda, lo investigaré, gracias también por el comando
Levan

@RegisteredUser Warning : ese código parece encontrar el error RMS entre los histogramas de las imágenes, NO entre las imágenes mismas. Es mejor hacer primero la diferencia de las 2 imágenes (si también desea en una nueva imagen), y luego hacer la suma al cuadrado de los contenedores de histograma normalizados.
Hastur

@hastur, ¿puedes explicarlo proporcionando el comando? Quizás como otra respuesta.
Usuario registrado
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.