Gennaio 31, 2022
Come confrontare due immagini usando la libreria Java OpenCV?
Per confrontare due immagini−
-
Leggi entrambi usando il metodo Image. IO. read ().
-
Ottieni l’altezza e la larghezza di entrambi per assicurarti che siano uguali.
-
Ottieni i valori dei pixel e, ottieni i valori RGB di entrambe le immagini.
-
Ottieni la somma delle differenze tra i valori RGB di queste due immagini.
-
Calcola la percentuale della differenza usando la seguente formula−
Average = difference/weight*height*3;Percentage = (Average/255)*100;
Esempio
importa java.oh.Colore; importa java.oh.immagine.BufferedImage; importa javax.imageio.ImageIO; importa java.io. File; public class ComparingImages { public static void main (String args) genera Exception { BufferedImage img1 = ImageIO.leggi(nuovo file("D:\\Images\\test1.jpg")); BufferedImage img2 = ImageIO.leggi(nuovo file("D:\\Images\\test2.jpg")); int w1 = img1.getWidth(); int w2 = img2.getWidth(); int h1 = img1.getHeight (); int h2 = img2.getHeight (); se ((w1!= w2) / / (h1!= h2)) { Sistema.fuori.println ("Entrambe le immagini dovrebbero avere le stesse dimwnsions");} else { long diff = 0; for (int j = 0; j < h1; j++) {for (int i = 0; i < w1; i++) {//Ottenere i valori RGB di un pixel int pixel1 = img1.getRGB( i, j); Colore color1 = nuovo colore(pixel1, vero); int r1 = color1.getRed (); int g1 = color1.getGreen (); int b1 = color1.GetBlue (); int pixel2 = img2.getRGB( i, j); Colore color2 = nuovo colore(pixel2, vero); int r2 = color2.getRed (); int g2 = color2.getGreen (); int b2 = color2.GetBlue (); / / somma delle differenze dei valori RGB delle due immagini long data = Math.abs (r1-r2) + Matematica.abs (g1-g2) + Matematica.abs (b1-b2); diff = diff+dati;}} doppio avg = diff/(w1*h1*3); doppia percentuale = (avg/255)*100; Sistema.fuori.println("Differenza: "+percentuale); } }}
Input1
Input2
Uscita
Difference: 92.54901960784314
Pubblicato il 09-Apr-2020 07:25:58
- Le Domande relative a & Risponde
- Come abbinare i punti chiave delle due immagini utilizzando la libreria OpenCV libreria Java?
- Come fondere le immagini usando OpenCV Java?
- Come eseguire bit a bit e il funzionamento su due immagini utilizzando Java OpenCV?
- Come eseguire l’operazione XOR bit a bit su due immagini usando Java OpenCV?
- Come eseguire bit a bit O operazioni su due immagini utilizzando Java OpenCV?
- Come trovare i contorni delle immagini usando la libreria Java OpenCV?
- Come capovolgere un’immagine usando la libreria Java OpenCV?
- Come disegnare i contorni delle immagini usando la libreria Java OpenCV?
- Come leggere un’immagine usando la libreria Java OpenCV?
- Come scrivere un’immagine usando la libreria Java OpenCV?
- Come creare un’immagine speculare usando la libreria Java OpenCV?
- Come eseguire operazioni bit a bit su immagini utilizzando Java OpenCV?
- Come convertire l’immagine RGB in HSV usando la libreria Java OpenCV?
- Come convertire HSV in immagine colorata usando la libreria Java OpenCV?
- Come convertire l’immagine HSV in BGR usando la libreria Java OpenCV?
Pubblicità