gpt4 book ai didi

java - Robot.createScreenCapture 正在改变颜色

转载 作者:行者123 更新时间:2023-11-30 11:49:07 24 4
gpt4 key购买 nike

这是我写的截屏类:

public class imagemanipulation {

Dimension screenResolution;
Rectangle screenRectangle;
Robot robot;

imagemanipulation() {
try {
screenResolution = Toolkit.getDefaultToolkit().getScreenSize();
screenRectangle = new Rectangle(screenResolution);
robot = new Robot();
} catch (AWTException ex) {
Logger.getLogger(imagemanipulation.class.getName()).log(Level.SEVERE, null, ex);
}
}

public BufferedImage newScreenshot() {
BufferedImage image = robot.createScreenCapture(screenRectangle);
return image;
}

}

我正在做的是在从上面截取的屏幕截图上使用 BufferedImagewhatever.getRGB(x,y),并将它的坐标用于另一幅图像的一部分,然后返回 x和找到匹配项的 y 位置。这适用于黑白图像,但不适用于彩色图像。我遇到的问题是 createScreenCapture 正在更改屏幕截图的原始颜色,因此当我将使用 createScreenCapture 拍摄的图像与另一张图像进行比较时从不工作。

我认为 createScreenCapture 必须减少屏幕截图中的颜色数量才能提高效率,但有什么办法可以阻止它这样做吗?

最佳答案

作为引用,这个example允许人们单击并拖动到桌面上的一个点,显示周围屏幕的放大图像。捕获后,当鼠标在捕获的图像上移动时,颜色会显示在工具提示中。我已经使用我平台上的实用程序验证了结果是正确的。您可以将其与您的程序和结果进行比较。

关于java - Robot.createScreenCapture 正在改变颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8542054/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com