垂直翻转图像,原始图像和新图像之间的关系.[蟒蛇]

Wob*_*ter 3 python image

我试图在其垂直轴上翻转图片,我在python中执行此操作,并使用Media模块.

像这样: 在此输入图像描述

我试图找到原始和翻转之间的关系.因为我不能去python中的负坐标,我决定做的是使用图片的中间作为参考.

所以我将图片分成两半,这就是我要做的事情:

[注意我创建一个新的空白图片并将每个(x,y)像素复制到对应于(-x,y),如果原始像素在中间之后.

如果它在中间之前,我将像素(-x,y)复制到(x,y)

在此输入图像描述

所以我在python中编码,这就是结果.

原版的: 在此输入图像描述

我懂了:

import media

pic=media.load_picture(media.choose_file())


height=media.get_height(pic)
width=media.get_width(pic)
new_pic=media.create_picture(width,height)

for pixel in pic:
   x_org=media.get_x(pixel)
   y_org=media.get_y(pixel)
   colour=media.get_color(pixel)
   new_pixel_0=media.get_pixel(new_pic,x_org+mid_width,y_org) #replace with suggested     
                                                              #answer below
   media.set_color( new_pixel_0,colour)


media.show(new_pic)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这不是我想要的,但我很困惑,我试图找到原始像素位置与其变换(x,y) - >( - x,y)之间的关系.但我认为那是错的.如果有人能用这种方法帮助我,那就太棒了.

在一天结束时,我想要一张这样的照片:

在此输入图像描述

http://www.misterteacher.com/alphabetgeometry/transformations.html#Flip

kin*_*all 36

为什么不使用Python Imaging Library?水平翻转图像是一行的,并且启动速度更快.

from PIL import Image
img = Image.open("AFLAC.jpg").transpose(Image.FLIP_LEFT_RIGHT)
Run Code Online (Sandbox Code Playgroud)