enero 31, 2022
¿Cómo comparar dos imágenes usando la biblioteca Java OpenCV?
Para comparar dos imágenes−
-
Lea ambos usando el método Image.IO.read ().
-
Obtenga la altura y el ancho de ambos para asegurarse de que sean iguales.
-
Obtenga los valores de píxeles y los valores RGB de ambas imágenes.
-
Obtenga la suma de las diferencias entre los valores RGB de estas dos imágenes.
-
Calcule el porcentaje de la diferencia utilizando la siguiente fórmula−
Average = difference/weight*height*3;Percentage = (Average/255)*100;
Ejemplo
importar java.awt.Color; importar java.awt.imagen.BufferedImage; importar javax.imageio.ImageIO; importar java. io. File; ComparingImages de clases públicas { public static void main (String args) lanza Excepción { BufferedImage img1 = ImageIO.leer (nuevo archivo ("D:\\Images\\test1.jpg")); BufferedImage img2 = ImageIO.leer (nuevo archivo ("D:\\Images\\test2.jpg")); int w1 = img1.getWidth (); int w2 = img2.getWidth (); int h1 = img1.getHeight (); int h2 = img2.getHeight (); if ((w1!= w2) / / (h1!= h2)) {Sistema.fuera.println ("Ambas imágenes deben tener las mismas dimensiones");} else { long diff = 0; for (int j = 0; j < h1; j++) {for (int i = 0; i < w1; i++) {//Obtener los valores RGB de un píxel int pixel1 = img1.getRGB( i, j); Color color1 = nuevo color(pixel1, verdadero); int r1 = color1.getRed (); int g1 = color1.getGreen (); int b1 = color1.GetBlue (); int pixel2 = img2.getRGB( i, j); Color color2 = nuevo color(pixel2, verdadero); int r2 = color2.getRed (); int g2 = color2.getGreen (); int b2 = color2.GetBlue (); / / suma de diferencias de valores RGB de las dos imágenes datos largos = Matemáticas . abs (r1-r2)+Matemáticas.abs (g1-g2)+ Matemáticas.abs (b1-b2); diff = diff+datos;}} doble avg = diff/(w1*h1*3); doble porcentaje = (avg/255)*100; Sistema.fuera.println ("Diferencia:" + porcentaje); } }}
Ingreso1
Ingreso2
Producto
Difference: 92.54901960784314
Publicado el 09-Abr-2020 07:25:58
- Preguntas relacionadas & Respuestas
- ¿Cómo hacer coincidir los puntos clave de dos imágenes con la biblioteca java de OpenCV?
- ¿Cómo combinar imágenes con OpenCV Java?
- ¿Cómo realizar operaciones y bits en dos imágenes usando Java OpenCV?
- ¿Cómo realizar operaciones XOR bit a Bit en dos imágenes usando Java OpenCV?
- ¿Cómo realizar operaciones de bits en dos imágenes usando Java OpenCV?
- ¿Cómo encontrar Contornos de imágenes usando la biblioteca Java OpenCV?
- ¿Cómo voltear una imagen usando la biblioteca Java OpenCV?
- ¿Cómo dibujar Contornos de imágenes usando la biblioteca Java OpenCV?
- ¿Cómo leer una imagen usando la biblioteca Java OpenCV?
- ¿Cómo escribir una imagen usando la biblioteca Java OpenCV?
- ¿Cómo crear una imagen espejo usando la biblioteca Java OpenCV?
- ¿Cómo realizar operaciones no bit a Bit en imágenes usando Java OpenCV?
- ¿Cómo convertir imágenes RGB a HSV usando la biblioteca Java OpenCV?
- ¿Cómo convertir HSV a imagen en color usando la biblioteca Java OpenCV?
- ¿Cómo convertir imágenes HSV a BGR usando la biblioteca Java OpenCV?
Anuncios