如何获取灰度图像中的像素值

che*_*uck 5 java image pixel grayscale

我有一个TYPE_BYTE_GRAY的BufferedImage,我需要得到x,y的像素值.我知道我不能使用getRGB,因为它返回错误的颜色模型,所以我该怎么办呢?非常感谢!

msi*_*msi 2

通过调用方法获取java.awt.image.RasterBufferedImagegetData()

然后使用

int getSample(int x, int y, int b)
Run Code Online (Sandbox Code Playgroud)

在接收到的对象上,其中 b 是颜色通道(其中每种颜色由 8 位表示)。

对于灰度级

b = 0.
Run Code Online (Sandbox Code Playgroud)

对于 RGB 图像

b = 0 ==>> R channel,
b = 1 ==>> G channel,
b = 2 ==>> B channel.
Run Code Online (Sandbox Code Playgroud)