Как сравнить изображения разных размеров, используя im4java
У меня есть два изображения I-1 и I-2, я смог сравнить эти два изображения, используя im4java успешно. Однако теперь I-1 и I-2 имеют разный размер, и поэтому, когда я пытаюсь сравнить эти два изображения, он не сравнивает их и выдает сообщение
Например: org.im4java.core.CommandException: org.im4java.core.CommandException: compare.exe: ширина или высота изображения различаются. `C:\Users\hp\workspace-getlinks-multiurpose\links_extractor/snapshots/actuals/id-панель мониторинга.jpg' @ error/compare.c/CompareImageCommand/990.
Ниже приведен мой код:
public static boolean compareImages(String exp, String cur,String output) {
// This instance wraps the compare command
CompareCmd compare = new CompareCmd();
// For metric-output
//compare.setErrorConsumer(StandardStream.STDERR);
IMOperation cmpOp = new IMOperation();
// Set the compare metric
cmpOp.metric("mae");
// cmpOp.addSubOperation(subimageSearch());
// Add the expected image
cmpOp.addImage(exp);
// Add the current image
cmpOp.addImage(cur);
// This stores the difference
cmpOp.addImage(output);
try {
// Do the compare
compare.run(cmpOp);
return true;
} catch (Exception ex) {
System.out.println("ex: "+ex);
return false;
}
}
1 ответ
В дополнение к Pawan, можно также использовать метрику phash: сравнить -metric phash image2.png image1.png cmp.png