ianuarie 31, 2022
Cum se compară două imagini folosind biblioteca Java OpenCV?
pentru a compara două imagini−
-
citiți ambele folosind metoda Image. IO.read ().
-
obțineți înălțimea și lățimea ambelor pentru a vă asigura că sunt egale.
-
obțineți valorile pixelilor și obțineți valorile RGB ale ambelor imagini.
-
obțineți suma diferențelor dintre valorile RGB ale acestor două imagini.
-
calculați procentul diferenței folosind următoarea formulă−
Average = difference/weight*height*3;Percentage = (Average/255)*100;
exemplu
import java.AAA.Culoare; import java.AAA.imagine.BufferedImage; import javax.imageio.ImageIO; import java. io. File; public class ComparingImages { public static void main(string args) aruncă excepție { BufferedImage img1 = ImageIO.citește (fișier nou("D:\\Images\\test1.jpg")); BufferedImage img2 = ImageIO.citește (fișier nou("D:\\Images\\test2.jpg")); int w1 = img1.getWidth (); int w2 = img2.getWidth (); int h1 = img1.getHeight (); int h2 = img2.getHeight (); dacă ((w1!= w2) / / (h1!= h2)) {sistem.afară.println ("ambele imagini ar trebui să aibă aceleași dimwnsions");} else { long diff = 0; pentru (Int j = 0; j < h1; j++) {Pentru (int i = 0; I < w1; i++) {//obținerea valorilor RGB ale unui pixel int pixel1 = img1.getRGB(eu, j); culoare color1 = culoare nouă (pixel1, adevărat); int r1 = color1.getRed (); int g1 = color1.getGreen (); int b1 = color1.getBlue (); int pixel2 = img2 . getRGB(i, j); culoare color2 = culoare nouă (pixel2, adevărat); int r2 = color2.getRed (); int g2 = color2.getGreen (); int b2= color2.getBlue (); / / suma diferențelor de valori RGB ale celor două imagini date lungi = Math.abs (r1-r2) + matematică.abs( g1-g2) + matematică.abs (b1-b2); dif = dif+date;}} dublu avg = dif/(w1*h1*3); procent dublu = (avg/255)*100; Sistem.afară.println ("diferență:" + procent); } }}
intrare1
Input2
ieșire
Difference: 92.54901960784314
publicat pe 09-Apr-2020 07:25:58
- întrebări înrudite & răspunsuri
- cum se potrivesc punctele cheie ale două imagini folosind OpenCV Java library?
- cum să se amestece la imagini folosind OpenCV Java?
- cum se efectuează Bitwise și funcționarea pe două imagini folosind Java OpenCV?
- cum se efectuează operația XOR pe două imagini utilizând Java OpenCV?
- cum se efectuează Bitwise sau operație pe două imagini folosind Java OpenCV?
- cum să găsiți contururile imaginii folosind biblioteca Java OpenCV?
- cum să flip o imagine folosind biblioteca Java OpenCV?
- Cum de a desena contururi de imagine folosind biblioteca Java OpenCV?
- cum se citește o imagine folosind biblioteca Java OpenCV?
- cum se scrie o imagine folosind biblioteca Java OpenCV?
- cum se creează o imagine în oglindă folosind biblioteca Java OpenCV?
- cum se efectuează Bitwise nu funcționează pe imagini folosind Java OpenCV?
- cum se convertește imaginea RGB în HSV folosind biblioteca Java OpenCV?
- cum se convertește HSV în imagine colorată folosind biblioteca Java OpenCV?
- cum se convertește HSV în imaginea BGR folosind biblioteca Java OpenCV?
reclame