Python 用10像素填充图像,颜色为0像素

Python 用10像素填充图像,颜色为0像素,python,image,image-processing,python-imaging-library,Python,Image,Image Processing,Python Imaging Library,我的用例: 我想使用PIL中的ImageOps.expand方法向图像添加10像素的边框。它要求一个默认为黑色的填充值。 我研究发现为了找到像素的颜色值, 你需要做什么 pix=im.load() im=ImageOps.expand(im,border=10,fill=pix[0,0]) 问题: 我无法将此pix[x,y]值传递给expand方法。我看了一遍,找不到失败的确切原因。是要求您发送填充值的PIL的官方文档 以下内容对我很有用: from PIL import Image, Imag

我的用例: 我想使用PIL中的ImageOps.expand方法向图像添加10像素的边框。它要求一个默认为黑色的填充值。 我研究发现为了找到像素的颜色值, 你需要做什么

pix=im.load()
im=ImageOps.expand(im,border=10,fill=pix[0,0])

问题: 我无法将此
pix[x,y]
值传递给expand方法。我看了一遍,找不到失败的确切原因。是要求您发送填充值的PIL的官方文档


以下内容对我很有用:

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()
结果:


您遇到的错误是什么?请回答您的问题并提供一个白色边框。请提供您的实际输入图像,而不是结果图像旁边的图像。通常问题是图像本身的结果。我们可以使用其他库吗?谢谢您的及时回复。边框的颜色值与背景不同。边框需要是背景的延续。
pix[0,0]
在我的测试图像中是
(0,0,0)
,因此显示的结果是正确的。如果我硬编码
ImageOps.expand(img,border=10,fill=(255,0,0))
结果会像预期的那样有一个红色边框。如果没有实际的代码和使用的实际图像,很难判断发生了什么。