0

我正在使用 OpenCV for java 拍摄图像并将其保存为 .png 文件(如果有任何区别,也可以另存为 .jpg )。我正在尝试在某些点检测已保存图像中的颜色(即“点 (50, 10) 处图像“Screenshot1”中的颜色是什么”)。有没有办法使用 OpenCV 或任何其他相当容易使用的 java 库来做到这一点?下面是一些代码,显示了我如何捕获 + 保存图像。

public static void main(String[] args) {
    System.loadLibrary("opencv_java246");
    VideoCapture cap = new VideoCapture(0);
    Mat frame = new Mat();
    cap.retrieve(frame);
    Highgui.imwrite("Screenshot.png", frame);
    cap.release();
}
4

2 回答 2

2

可能您可以使用 ImageIo 来获取 BufferedImage:

BufferedImage img = ImageIO.read(new File("strawberry.jpg"));
int color = img.getRGB(x,y)
于 2013-08-29T15:31:10.147 回答
0

这是一些代码:

       BufferedImage img = ImageIO.read(new File("E:/milleycyrus.jpg"));
       int height = bfImage.getHeight();
       int width = bfImage.getWidth();
       for(int i=0; i<width; i++){
          for(int j=0; j<height; j++){
                Color c = new Color(bfImage.getRGB(i,j));
                int red = c.getRed();
                int green = c.getGreen();
                int blue = c.getBlue();
          }
       }
于 2013-09-12T13:49:32.130 回答