如何在Python中移动图像的列
我想通过一种方法来调整图像中的斜线。这个方法是先生成一张比原图大、全黑的图像,然后把原图的列移到这张黑图上。具体来说,就是把原图的第一列移动一个像素,第二列移动两个像素,第三列移动三个像素,依此类推。不过,我在用Python实现这个方法时遇到了问题。
请帮帮我,我该怎么做呢?
1 个回答
0
我写了一个程序,这个程序会生成一张新图片,每一列的偏移量比上一列多一个像素。我是用PIL这个模块来实现的。只需要把第3行中的"image.png"
改成你自己图片的名字就可以了。
下面是代码:
from PIL import Image
img = Image.open("image.png")
new_height = sum(img.size)
new_img = Image.new(mode="RGB", size=(img.size[0], new_height))
y_offset = 0
for column in range(img.size[0]):
for pix in range(img.size[1]):
col = img.getpixel((column, pix))
new_img.putpixel((column, pix + y_offset), col)
y_offset += 1
new_img.save("new_img.png")