我有一个用黑线绘制的相对复杂的图像,我想将背景颜色从白色更改为随机颜色。
使用PIL,我将所有非黑色像素替换为颜色:
pixels = output.getdata()
newPixels = []
for pixel in pixels:
if pixel[0] != 0 and pixel[1] != 0 and pixel[2] != 0:
newPixels.append(color)
else:
newPixels.append(pixel)
output.putdata(newPixels)
当我替换边缘平滑时,这使得线条都参差不齐,而不是完全黑色的像素。有什么解决方案吗?
发布于 2014-10-07 15:57:38
看起来你想保留纯黑色而替换纯白色。其他的都需要混合在一起。
下面是进行混合的最简单方法:
newPixels.append([pixel[i] * color[i] // 255 for i in (0,1,2)])
https://stackoverflow.com/questions/26239906
复制相似问题