Python PIL-可能的类似于油漆桶的工具?

时间:2018-08-29 00:56:56

标签: python

我有一个尝试使用PIL Python图像库进行编辑的图像。我正在尝试通过将透明像素替换为具有特定RGBA代码的像素来使浅褐色背景透明。我一直在研究Python: PIL replace a single RGBA color,并对其进行了编辑,以允许缓冲区拾取颜色不完全相同的像素。这是我当前的代码:

data = numpy.array(im)
red, green, blue, alpha = data.T

for r in range(245, 256):
    for g in range(245, 256):
        for b in range(210, 230):
            white_areas = (red == r) & (green == g) & (blue == b) & (alpha == 255)
            if len(data[...][white_areas.T]) != 0:
                data[...][white_areas.T] = (0, 0, 0, 0)

但是,我发现在图像周围,由于一些颜色模糊,还有一些像素在周围徘徊,在图像边框的外部边缘也有一些像素。当添加到深色背景时,这是清晰可见的。我发现,当我为RGB代码增加缓冲区时,像素模糊变少了,除非我增加太多,否则图像中的白色经常会被意外拾取。

在不增加耗时的情况下,如何消除模糊(例如具有高公差的油漆桶工具)?

0 个答案:

没有答案