小编제갈묘*_*제갈묘的帖子

将矩形图像重塑为正方形

我想将矩形图像转换为正方形图像。但是,我有问题。

我的试用Python代码在这里:

from PIL import Image
import numpy as np

im = Image.open('aa.png')
pixMap = im.load()

img = Image.new( im.mode, im.size)
sqrWidth = np.ceil(np.sqrt(im.size[0]*im.size[1])

pixNew = Image.new(im.mode, (im.size[0]*im.size[1], 1))
pixSave = Image.new(im.mode, (sqrWidth, sqrWidth))

k=0
for i in range(img.size[0]):
    for j in range(img.size[1]):
        pixNew[k] = pixMap[i, j]
        k=k+1

k=0
for i in range(sqrWidth):
    for j in range(sqrWidth):
        pixSave[i, j] = pixNew[k]
        k=k+1

im.close()
img.show()       
img.save("out.png") 
img.close()
Run Code Online (Sandbox Code Playgroud)

我的错误在这里:

Traceback (most recent call last):
  File "rect2square.py", line 13, in <module>
    pixNew[k] = …
Run Code Online (Sandbox Code Playgroud)

python image python-imaging-library

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

image ×1

python ×1

python-imaging-library ×1