január 31, 2022

Hogyan lehet összehasonlítani két képet a Java OpenCV könyvtár használatával?

két kép összehasonlítása−

  • olvassa el mindkettőt az Image.IO.read() módszerrel.

  • szerezze be mindkettő magasságát és szélességét, hogy megbizonyosodjon arról, hogy egyenlőek-e.

  • szerezze be a képpontok értékeit, és szerezze be mindkét kép RGB értékeit.

  • Szerezd meg a két kép RGB értékei közötti különbségek összegét.

  • Számítsa ki a különbség százalékát a következő képlet segítségével−

Average = difference/weight*height*3;Percentage = (Average/255)*100;

példa

 java importálása.ááá.Szín; Java importálása.ááá.kép.BufferedImage; import javax.imageio.ImageIO; import java. io. File; nyilvános osztály összehasonlító képek { nyilvános statikus void main (String args) kivételt dob { BufferedImage img1 = ImageIO.read (új fájl ("D:\\Images\\test1.jpg")); BufferedImage img2 = ImageIO.read (új fájl ("D:\\Images\\test2.jpg")); int w1 = img1.getWidth (); int w2 = img2.getWidth (); int h1 = img1.getHeight (); int h2 = img2.getHeight (); ha ((w1!= w2) / / (h1!= h2)) { rendszer.kifelé.println ("mindkét képnek azonos dimwnsionnak kell lennie");} else { long diff = 0; for (int j = 0; j < h1; j++) {for (int i = 0; i < w1; i++) {//egy pixel RGB értékeinek megszerzése int pixel1 = img1.getRGB (én, j); szín szín1 = új szín(pixel1, igaz); int r1 = szín1.getRed (); int g1 = szín1.getGreen (); int b1 = szín1.getBlue (); int pixel2 = img2.getRGB (én, j); szín color2 = új szín(pixel2, igaz); int r2 = color2.getRed (); int g2 = szín2.getGreen (); int b2= szín2.getBlue (); //a két kép RGB értékeinek különbségeinek összege long data = Math.abs (r1-r2) + matematika.abs (g1-g2) + matematika.abs (b1-b2); diff = diff+adatok;}} dupla avg = diff/(w1*h1*3); dupla százalék = (átlag/255)*100; rendszer.kifelé.println ("különbség:" +százalék); } }}

Bemenet1

Bemenet2

kimenet

Difference: 92.54901960784314
raja

megjelent 09-április-2020 07:25:58

  • kapcsolódó kérdések & válaszok
  • hogyan lehet egyeztetni két kép legfontosabb pontjait az OpenCV Java könyvtár használatával?
  • hogyan keverjük össze a képeket az OpenCV Java használatával?
  • hogyan lehet bitenként végrehajtani és működtetni két képet a Java OpenCV használatával?
  • hogyan lehet bitenként XOR műveletet végrehajtani két képen a Java OpenCV használatával?
  • hogyan lehet bitenként vagy műveletként végrehajtani két képet a Java OpenCV használatával?
  • hogyan lehet megtalálni a kép kontúrjait a Java OpenCV könyvtár használatával?
  • hogyan flip egy képet Java OpenCV könyvtár?
  • Hogyan rajzoljunk Képkontúrokat a Java OpenCV könyvtár segítségével?
  • hogyan lehet képet olvasni a Java OpenCV könyvtár használatával?
  • hogyan lehet képet írni a Java OpenCV könyvtár használatával?
  • Hogyan hozzunk létre egy tükörkép segítségével Java OpenCV könyvtár?
  • hogyan hajthatunk végre bitenként nem műveletet a képeken a Java OpenCV használatával?
  • hogyan lehet átalakítani az RGB képet HSV-re a Java OpenCV könyvtár használatával?
  • hogyan lehet átalakítani a HSV-t színes képpé a Java OpenCV könyvtár használatával?
  • hogyan lehet átalakítani a HSV-t BGR-képpé a Java OpenCV könyvtár használatával?
reklámok

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.