15

我有 8 位灰度 TIFF 图像,我想使用 75% 白色(十进制 190)阈值将其转换为单色。在 Image.convert(mode) 方法部分,PIL 手册说:

“将灰度图像转换为位级图像(模式“1”)时,所有非零值都设置为 255(白色)。要使用其他阈值,请使用点法。”

Image.point(table) 方法表示它将每个像素映射到给定的表中。

im.point(table, mode) => image
im.point(function, mode) => image

“通过表格映射图像,并即时转换。在当前版本的 PIL 中,这只能用于一步将'L'和'P'图像转换为'1',例如对图像进行阈值处理。”

如何创建与我需要的 75% 阈值对应的表(或函数)?

4

2 回答 2

18

我在这个答案“ Write TIFF file in python from String ”中找到了完整的解决方案。该函数必须包含“和255”

threshold = 191  
im = im.point(lambda p: p > threshold and 255)  
于 2011-06-27T09:19:43.960 回答
2

尝试im.point(lambda p: p > 190)并发布结果。

于 2011-06-26T16:48:20.423 回答