Java - 从图像中获取像素值矩阵



晚上好,

我正在使用BufferedImage在Java中加载图像。我会在一个简单的 2D 矩阵中转换这个对象,其中每个单元格都是 8 位像素值(从 0 到 255(。 这需要处理灰度图像,也可以处理RGB图像(在这种情况下,输出需要是3个矩阵,每个通道一个,或单个3D矩阵(。 这类似于 MatLab 处理图像的方式。

有人可以帮助我吗?

谢谢

你可以尝试这样的事情:

BufferedImage bf = //Assuming you have a buffered image
int[][] R = new int[bf.getWidth()][bf.getHeight()];
int[][] G = //Same as for R
int[][] B = //Same as for R
for(int r = 0; r < bf.getWidth(); r++)
{
for(int c = 0; c < bf.getHeight() c++)
{
//Uses the Java color class to do the conversion from int to RGB
Color temp = new Color(bf.getRGB(r, c));
R[r][c] = temp.getRed();
G[r][c] = temp.getGreen();
B[r][c] = temp.getBlue();
}
}

最新更新