在Python中选择Image的一部分(不使用imcrop)

时间:2017-12-08 15:24:14

标签: python image python-2.7 image-processing crop

我想选择图像的一部分并将其保存为图像文件,但我不想使用imcrop()函数。有很多答案,但我不想使用crop function。还有其他方法吗?

1 个答案:

答案 0 :(得分:0)

您可以将其转换为数组并且"裁剪"它通过索引,然后转换回图像。

from PIL import Image
import numpy as np

# Create an image for example
w, h = 512, 512 
data = np.zeros((h, w, 3), dtype=np.uint8)
data[:, :, :] = 100  # Grey image
img = Image.fromarray(data, 'RGB')
img.save('my.png')
img.show()  # View the original image

img_array = np.asarray(img)  # Convert image to an array
cropped = img_array[:100, :100, :]  # Select portion to keep

img = Image.fromarray(cropped, 'RGB')  # Convert back to image
img.save('my.png')
img.show()  # View the cropped image