Мой вариант использования : я хочу добавить 10-пиксельную границу к изображению, используя метод ImageOps.expand в PIL.Он запрашивает значение заливки, по умолчанию черное.Я исследовал и обнаружил, что для того, чтобы найти значение цвета пикселя, вам нужно сделать
pix = im.load() im = ImageOps.expand(im, border=10, fill=pix[0,0])
Issue : я не могу пройти этоpix[x,y] значение для метода расширения.Я прошел определение метода и не могу найти точную причину, по которой это не удается. Это - официальная документация PIL, в которой вас просят отправить значение заполнения.
pix[x,y]
Я могу получить этот вид изображения.Единственное, что не так, это раздражающая белая граница, хотя я использую значение заливки как пиксель [0,0].
У меня работает следующее:
from PIL import Image, ImageOps img = Image.open('skooter.png') x, y = 0, 0 pix = img.load() img2 = ImageOps.expand(img, border=10, fill=pix[x,y]) img2.show()
Результат: