如何在Java中快速获得屏幕像素颜色?

如何在Java中快速获得屏幕像素颜色?,java,performance,colors,get,pixel,Java,Performance,Colors,Get,Pixel,我想检查整个1366*768屏幕上的一个像素是否有特定的颜色,所以我做了如下: for(int i=0;i<1366;i++) for(int j=0;j<768;j++) if (robot.getPixelColor(i, j).equals(couleur)) System.out.println("couleur trouvée en ("+i+","+j+")"); 这是可行的,但太慢了 有没有像getPixelColor这样的功能,但速度更快,或

我想检查整个1366*768屏幕上的一个像素是否有特定的颜色,所以我做了如下:

for(int i=0;i<1366;i++)
  for(int j=0;j<768;j++)
    if (robot.getPixelColor(i, j).equals(couleur))
      System.out.println("couleur trouvée en ("+i+","+j+")");
这是可行的,但太慢了

有没有像getPixelColor这样的功能,但速度更快,或者其他方法


谢谢。

你到底为什么要这么做?您是否正在尝试拍摄屏幕截图?如果是这样的话,有一个机器人功能可以将一个作为缓冲图像。另一个建议是,拍一张屏幕截图,并使用一个单独的线程来处理BuffereImage。你可以使用JNA。我认为你应该用robot获取BuffereImage,然后扫描缓冲图像的颜色。你可以将其放入for循环,速度应该更快。Matt Clark的观点很好。谢谢你,我会尝试这样做。你尝试过多线程吗?