Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from PIL import Image
- import copy
- def mirror(name):
- im = Image.open(name)
- pixels = im.load() # список пикселов
- x, y = im.size # ширина и высота изображения
- p = Image.open(name)
- p1 = p.load()
- for i in range(x):
- for j in range(y):
- pixels[j, i] = p1[i, j]
- for i in range(x):
- for j in range(y):
- a = x - i - 1
- b = y - j - 1
- p1[i, j] = pixels[a, b]
- p.save(name)
- def twist_image(input_file_name, output_file_name):
- im = Image.open(input_file_name)
- pixels = im.load()
- x, y = im.size
- x1 = x // 2
- y1 = y // 2
- im2 = copy.deepcopy(im)
- p2 = im2.crop((x1 + 1, y1 + 1, x, y))
- p2.save('p2.jpg')
- im1 = copy.deepcopy(im)
- p1 = im1.crop((0, 0, x1, y1))
- p1.save('p1.jpg')
- mirror('p1.jpg')
- p1 = Image.open('p1.jpg')
- pix1 = p1.load()
- mirror('p2.jpg')
- p2 = Image.open('p2.jpg')
- pix2 = p2.load()
- for i in range(x1):
- for j in range(y1):
- pixels[x1 - i - 1, y1 - j - 1] = pix2[i, j]
- for i in range(x1 + 1, x):
- for j in range(y1 + 1, x):
- pixels[i, j] = pix1[x - i - 1, y - j - 1]
- im.save(output_file_name)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement