欢迎访问宙启技术站
智能推送

Python图像处理函数:裁剪、旋转和缩放图像

发布时间:2023-06-25 07:32:19

Python是一种强大的编程语言,可以用于图像处理以及许多其他应用。在本文中,我们将探讨如何使用Python中的一些图像处理函数来裁剪、旋转和缩放图像。

图片处理经常需要这三种功能。Python可以通过第三方库,也可以使用内置函数加NumPy来处理图片,今天我们就来介绍一下。

1. 裁剪图像

裁剪图像是指从原始图像中截取一部分,以便缩小图像的尺寸或更改图像的内容。在Python中,我们可以使用Pillow库中的crop()函数来完成裁剪图像的操作。该函数需要输入一个四元组,表示矩形的左上角和右下角的坐标,也就是(x1, y1, x2, y2)。

首先需要引入Pillow库,并导入需要使用的模块Image:

from PIL import Image

然后我们可以打开一张图片:

img = Image.open("test.jpg")

接下来,可以调用crop()函数来裁剪图像:

cropped_img = img.crop((100, 100, 400, 400))

这样就会从原始图像中裁剪出一个矩形,左上角坐标是(100, 100),右下角坐标是(400, 400)。最后,可以保存裁剪后的图像:

cropped_img.save("cropped.jpg")

2. 旋转图像

旋转图像是指将原始图像围绕中心点或其他点旋转一定角度,以改变图像的方向或视角。在Python中,我们可以使用Pillow库中的rotate()函数来实现旋转功能。该函数需要输入旋转角度,以度为单位。

还是先把图片打开:

img = Image.open("test.jpg")

然后我们调用rotate()函数来旋转图像:

rotated_img = img.rotate(45)

这样就可以将原始图像逆时针旋转45度。最后,可以保存旋转后的图像:

rotated_img.save("rotated.jpg")

3. 缩放图像

缩放图像是指改变图像的大小,以便适应显示设备或其他需要。在Python中,我们可以使用Pillow库中的resize()函数来实现缩放功能。该函数需要输入缩放的尺寸,以及采用的缩放方法。

打开图片:

img = Image.open("test.jpg")

然后我们可以调用resize()函数来缩放图像:

resized_img = img.resize((800, 600))

这样就可以将原始图像缩放到指定的尺寸。最后,可以保存缩放后的图像:

resized_img.save("resized.jpg")

需要注意的是,缩放图像可能会导致图像失真或像素化,因此应该谨慎使用。如果需要调整图像大小而又不希望失真,可以使用Pillow库中的thumbnail()函数。

Conclusion

在Python中,我们可以使用Pillow库中的裁剪、旋转和缩放函数来处理图像。这些函数简单易用,可以帮助我们快速地完成图像处理任务。当然,还有很多其他的图像处理函数可以使用,我们可以根据需要进行选择和学习。