java - 如何从 BufferedImage 的 java 中的 R、G、B 值获取 rgb 像素值

标签 java image-processing

我可以使用以下函数获取 r、g、b 值。

int rgb=bImg.getRGB(i, j);
int r=(rgb>>16) & 0xff; 
int g=(rgb>>8) & 0xff;
int b=(rgb) & 0xff;

现在我对这些值进行一些操作,并想使用以下函数设置 rgb 值

bImg.setRgb(int x,int y,int rgb)

但我不知道如何从 R、G、B 值计算 rgb。

最佳答案

int rgb = (r<<16) + (g<<8) + b;

或者

int rgb = (r<<16)  | (g<<8)  | b;

将执行逆运算并将 rgb 存储为您已解码的单个整数。

关于java - 如何从 BufferedImage 的 java 中的 R、G、B 值获取 rgb 像素值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8954723/

相关文章:

java - new relic支持socks5代理类型吗?

java - 使用 JSF 的自定义 500 错误页面 - 是否提供完整的错误消息?

java - 无法在被映射的枚举的初始值设定项内构造 EnumMap

php - Imagick::paintOpaqueImage 忽略半透明像素

c++ - 如何改进opencv中的特征检测

image - OpenCv:在for循环中旋转图像时应用程序挂起

java - 进行持续交付时,自动项目版本的 Maven 方式是什么?

java - Getter正确返回,然后变为null

java - Web 服务器上的文本到图像

image-processing - 在 Keras ImageDataGenerator 或 flow_from_directory 中裁剪图像的中心