为什么分配的RGB值会自动更改?

时间:2018-06-10 16:18:46

标签: python-3.x image-processing

首先,请考虑以下代码:

f <- function(.x, cumsum) eval.parent(do.call("substitute", list(.x)))

# test
f(expr(cumsum(1:4)), prod)
## [1] 24

f(expr(cumsum(1:4)), cumprod)
## [1]  1  2  6 24

我正在做的只是从每个像素中移除 RED 组件(黑色像素除外: if 语句检查看起来是黑色的像素)< / i>的。换句话说,我将给定图像转换为黄色比例(因为G + B = Y)。

这样,每个像素都应该有一个RGB值,如(0,G,B)。

但是,新图像的某些像素返回的值如下:

  • (1,255,203)
  • (3,205,243)
  • (16,242,47)

虽然有些红色成分为0。

什么原因导致任意调整RGB值?

1 个答案:

答案 0 :(得分:2)

save()函数将类型确定为jpeg,其默认压缩质量为75.文件编码和压缩的方式可能会在事后更改值。

请参阅以下save()的PIL文档: https://pillow.readthedocs.io/en/3.1.x/handbook/image-file-formats.html