Java 手动将图像像素从颜色ARGB转换为灰度ARGB
因此,我有一个项目,通过使用算法改变argb值,手动将图像转换为黑白。我试着平均RGB值,得到了一幅几乎完全灰度化的图像,但仍然有颜色的暗示。有人有算法示例可以手动将aRGB中的像素转换为灰度吗 到目前为止,我一直在这样做:Java 手动将图像像素从颜色ARGB转换为灰度ARGB,java,algorithm,grayscale,argb,Java,Algorithm,Grayscale,Argb,因此,我有一个项目,通过使用算法改变argb值,手动将图像转换为黑白。我试着平均RGB值,得到了一幅几乎完全灰度化的图像,但仍然有颜色的暗示。有人有算法示例可以手动将aRGB中的像素转换为灰度吗 到目前为止,我一直在这样做: //Apply the filter reds = ((reds+greens+blues)/3); greens = ((reds+greens+blues)/3); blue
//Apply the filter
reds = ((reds+greens+blues)/3);
greens = ((reds+greens+blues)/3);
blues = ((reds+greens+blues)/3);
看起来您正在更改右侧的输入,同时希望其值保持不变。为什么不用这个
reds = (reds + greens + blues) / 3;
greens = reds;
blues = reds;
看起来您正在更改右侧的输入,同时希望其值保持不变。为什么不用这个
reds = (reds + greens + blues) / 3;
greens = reds;
blues = reds;
我一直认为,由于我们的眼睛对红色、绿色和蓝色波长的敏感度不同,灰度应该使用以下公式计算:
(int) (0.299 * red + 0.587 * green + 0.114 * blue)
几年前,这曾经是很容易找到的信息,但现在我找不到太多的来源。是一个。我一直认为,由于我们的眼睛对红色、绿色和蓝色波长的敏感度不同,灰度应该使用以下公式计算:
(int) (0.299 * red + 0.587 * green + 0.114 * blue)
几年前,这曾经是很容易找到的信息,但现在我找不到太多的来源。是一个。@user1088595别难过,我只是混淆了左和右:)我认为把这个答案标记为正确是个好主意。@user1088595别难过,我只是混淆了左和右:)我认为把这个答案标记为正确是个好主意。值得注意的是,由于人类眼睛的生物学特性,红色,绿色,当图像转换为灰度时,蓝色不应均匀加权。值得注意的是,由于人眼的生物学特性,当图像转换为灰度时,红色、绿色和蓝色不应均匀加权。