PIL ValueError: Изображения не совпадают - PullRequest
0 голосов
/ 12 мая 2018

Я поиграл в python с PIL, и я работаю над функцией, которая зеркально отображает изображение в 4-х квадрантах.Очевидно, я получил ошибку, и я не могу понять это.Моя функция выглядит следующим образом:

def mirror_four(image):
x = image.size[0]
y = image.size[1]

temp = Image.new("RGB", (image.size[0], image.size[1]), "black")

tl = image
tr = mirror_left(image)
bl = mirror_verticle(image)
br = mirror_verticle(tr)

image.paste(temp,(0,0,int(x/2),int(y/2)),tl)
image.paste(temp,(int(x/2),0,0,int(y/2)),tr)
image.paste(temp,(0,int(y/2),int(x/2),0),bl)
image.paste(temp,(x/2,y/2,x,y),br)

return temp

Это возвращает ошибку: ValueError: Изображения не совпадают

Я немного растерялся, и документация PIL мне не сильно помогает.Заранее спасибо за помощь!

1 Ответ

0 голосов
/ 21 июля 2018

Используя вашу первую строку вставки в качестве примера - для аргумента 'вставки' ​​'вставки' ​​вы указали (0,0, int (x / 2), int (y / 2) - половину размераimage. Однако изображение, которое пытаются вставить, не соответствует размеру блока. Изменение аргумента 'box' на (0,0, int (x), int (y)) решит вашу непосредственную проблему, хотя я подозреваю,Вы действительно хотите обрезать вставляемое изображение.

Я также отмечу, что вам не нужно указывать размер вставляемого изображения, если вы не хотите - (0,0) какх и у тоже работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...