janvier 31, 2022
Comment comparer deux images à l’aide de la bibliothèque Java OpenCV?
Pour comparer deux images −
-
Lisez les deux en utilisant la méthode Image.IO.read().
-
Obtenez la hauteur et la largeur des deux pour vous assurer qu’ils sont égaux.
-
Obtenez les valeurs de pixels et les valeurs RVB des deux images.
-
Obtenez la somme des différences entre les valeurs RVB de ces deux images.
-
Calculez le pourcentage de la différence en utilisant la formule suivante −
Average = difference/weight*height*3;Percentage = (Average/255)*100;
Exemple
importer java.aut.Couleur; importer java.aut.image.BufferedImage; importer javax.imageio.ImageIO; importer java.io.File; ComparingImages de classe publique { main vide statique publique (arguments de chaîne) lève une exception {BufferedImage img1 = ImageIO.lire (nouveau fichier("D:\\Images\\test1 .jpg")); Image tampon img2 = Image.lire (nouveau fichier("D:\\Images\\test2 .jpg")); int w1 = img1.getWidth(); int w2 = img2.getWidth(); int h1 = img1.getHeight(); int h2 = img2.J'ai besoin de la même chose.= w2) // (h1!= h2)) { Système.hors.println("Les deux images doivent avoir les mêmes dimwnsions"); } else {long diff = 0; for(int j = 0; j < h1; j++) { for(int i = 0; i < w1; i++) { // Obtenir les valeurs RVB d'un pixel int pixel1 = img1.getRGB(i, j); Couleur color1 = nouvelle couleur (pixel1, true); int r1 = color1.getRed(); int g1 = color1.getGreen(); int b1 = color1.getBlue(); int pixel2 = img2.getRGB(i, j); Couleur color2 = nouvelle couleur (pixel2, true); int r2 = color2.getRed(); int g2 = color2.getGreen(); int b2 = color2.getBlue(); // somme des différences de valeurs RVB des deux images long data=Math.abs (r1-r2) + Mathématiques.abs (g1-g2) + Mathématiques.abs(b1-b2); diff = diff + données; } } double moyenne = diff /(w1 * h1 * 3); double pourcentage = (moyenne / 255) * 100; Système.hors.println("Différence:" + pourcentage); } }}
Entrée 1
Entrée2
Sortie
Difference: 92.54901960784314
Publié le 09-Avr-2020 07:25:58
- Questions connexes & Réponses
- Comment faire correspondre les points clés de deux images à l’aide de la bibliothèque Java OpenCV?
- Comment fusionner des images en utilisant OpenCV Java?
- Comment effectuer des opérations au niveau du bit et sur deux images en utilisant Java OpenCV?
- Comment effectuer une opération XOR au niveau du bit sur deux images en utilisant Java OpenCV?
- Comment effectuer une opération au niveau du bit OU sur deux images en utilisant Java OpenCV?
- Comment trouver des contours d’image à l’aide de la bibliothèque Java OpenCV?
- Comment retourner une image à l’aide de la bibliothèque Java OpenCV?
- Comment dessiner des contours d’image à l’aide de la bibliothèque Java OpenCV?
- Comment lire une image en utilisant la bibliothèque Java OpenCV?
- Comment écrire une image en utilisant la bibliothèque Java OpenCV?
- Comment créer une image miroir à l’aide de la bibliothèque Java OpenCV?
- Comment effectuer une opération Non binaire sur des images à l’aide de Java OpenCV?
- Comment convertir une image RVB en HSV à l’aide de la bibliothèque Java OpenCV?
- Comment convertir HSV en image colorée à l’aide de la bibliothèque Java OpenCV?
- Comment convertir une image HSV en image BGR à l’aide de la bibliothèque Java OpenCV?
Annonces