首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于im4java的图像比较

基于im4java的图像比较
EN

Stack Overflow用户
提问于 2016-02-04 12:45:43
回答 1查看 1.4K关注 0票数 3
代码语言:javascript
复制
public class im4jav extends test{

public static void main(String[] args) throws IOException {

    WebDriver driver = new FirefoxDriver();
    driver.get("https://www.google.co.in/?gfe_rd=cr&ei=fkKzVqasB8yl8wefrraoCg&gws_rd=ssl");

    File scrFile = ((TakesScreenshot)driver).
    getScreenshotAs(OutputType.FILE);

    String current = "c:/temp/image.png";
    FileUtils.copyFile(scrFile, new File(current));


    boolean compareSuccess = compareImages("c:/temp/expected.png", current, "c:/temp/difference.png");

    System.out.println("run ok ? :"+compareSuccess);

    driver.close();


}}class test{

static boolean compareImages (String exp, String cur, String diff) {
      // 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");

      // Add the expected image
      cmpOp.addImage(exp);

      // Add the current image
      cmpOp.addImage(cur);

      // This stores the difference
      cmpOp.addImage(diff);

      try {
        // Do the compare
        compare.run(cmpOp);
        return true;
      }
      catch (Exception ex) {
        return false;
      }
    }

}

大家好,

在上面的代码中,我试图获取一个页面的屏幕截图,并使用im4java将其与预期的屏幕快照进行比较,但是,即使实际的和预期的图像相似,它仍然抛出错误,并且也没有生成不同的图像。

我在临时文件夹中添加了预期的屏幕截图。

有人能告诉我我做错了什么吗。提前感谢

EN

回答 1

Stack Overflow用户

发布于 2016-08-14 02:46:09

我花了太多时间来解决这个问题。解决办法是:

  1. 您应该完全安装ImageMagick,并选择所有复选框。
  2. 应该将其安装路径设置为环境变量系统路径。
  3. 可选:重新启动您的电脑,因为这些设置将正确工作。

我用这些步骤解决了我的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35201396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档