Python图像处理,如何将图像量化为16位深度?

5 投票
1 回答
4903 浏览
提问于 2025-04-16 07:58

我想用Python的图像处理库把一张24位的图片转换成16位的颜色深度。

PIL(Python Imaging Library)以前有一个方法叫im.quantize(colors, **options),不过这个方法现在已经不推荐使用了。现在可以用out = im.convert("P", palette=Image.ADAPTIVE, colors=256)来替代。

可惜的是,im.convert()最多只能把颜色数量减少到256种(也就是8位颜色)。

我该如何用PIL(或者类似的库)把24位的图片转换成16位呢?

谢谢!

1 个回答

3

你可能想把你的图片转换成一个numpy数组,进行量化处理后,再转换回PIL格式。

numpy里面有一些模块可以用来在PIL图片和numpy数组之间转换。

撰写回答