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

标签 java image pixel grayscale

我有一个 TYPE_BYTE_GRAY 类型的 BufferedImage,我需要获取 x、y 处的像素值。我知道我不能使用 getRGB,因为它会返回错误的颜色模型,那么我该怎么做呢?非常感谢!

最佳答案

通过调用 getData() 方法从 BufferedImage 获取 java.awt.image.Raster

然后使用

int getSample(int x, int y, int b)

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

对于灰度

b = 0.

对于RGB图像

b = 0 ==>> R channel,
b = 1 ==>> G channel,
b = 2 ==>> B channel.

关于java - 如何获取灰度图像中的像素值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8216153/

相关文章:

android - DP、PX、SP如何相互转换,尤其是DP和SP?

java - Apache PDFBox - PDFont 类型之间的差异

java - 如何在java中使用for循环显示图像

java - 如何在 Windows 上使用 Java 在默认图像查看器中打开图像?

image - 包含像素和体素的词

php - 自定义跨域度量跟踪系统在 php 中的实现

java - LocateRegistry.createRegistry() 返回什么对象?

java - 在 Java 中修补对象更新属性的智能方法

java - 批量插入数据到 PostgreSQL

php - 像素绘制算法