Как сравнить изображения разных размеров, используя 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

Другие вопросы по тегам