Pillow,一个强大的Python图像处理库!

腼腆牵手阿 2024-12-05 15:44:15

今天咱们来聊聊一个特别实用的Python库——Pillow。Pillow是Python Imaging Library(PIL)的一个分支,提供了丰富的图像处理功能。无论是图片裁剪、滤镜处理,还是图像识别、格式转换,Pillow都能轻松应对。那么,废话不多说,咱们直接开搞!

安装Pillow

要使用Pillow,首先需要安装它。在命令行中输入以下命令:

pip install Pillow

就是这么简单,一行命令搞定!

打开和显示图像

既然是要处理图像,那肯定得先把图像打开。Pillow提供了一个特别方便的函数Image.open,可以用来打开图像文件。

fromPILimportImage# 打开图像文件img = Image.open('your_image.jpg')# 显示图像img.show()

运行这段代码,你将会看到你指定的图像被打开并显示出来。Image.open支持多种图像格式,比如JPEG、PNG、BMP等。

温馨提示

• 确保图像文件的路径和文件名正确哦,不然可能会找不到文件。

• 如果图像文件比较大,显示时可能会有点慢,耐心等待一下就好啦。

图像裁剪

有时候我们只需要图像的某一部分,这时候就可以用到裁剪功能。

# 裁剪图像,左上角坐标(100, 100),右下角坐标(400, 400)cropped_img = img.crop((100,100,400,400))# 显示裁剪后的图像cropped_img.show()

运行这段代码,你会看到裁剪后的图像。裁剪区域由一个四元组(left, upper, right, lower)指定,分别表示裁剪区域的左、上、右、下边界。

温馨提示

• 裁剪区域不能超出原始图像的边界哦,否则会报错。

• 裁剪后的图像是一个新的图像对象,不会改变原始图像。

图像缩放

有时候我们需要调整图像的大小,比如把图像缩小以便在网页上显示,或者把图像放大以便看得更清楚。这时候就可以用到缩放功能。

# 缩放图像,新的大小为(200, 200)resized_img = img.resize((200,200))# 显示缩放后的图像resized_img.show()

运行这段代码,你会看到缩放后的图像。resize方法接受一个二元组作为参数,表示新的图像大小。

温馨提示

• 缩放后的图像可能会失真,特别是当缩放比例比较大时。

• 缩放后的图像也是一个新的图像对象,不会改变原始图像。

图像旋转

有时候我们需要把图像旋转一定的角度,比如校正拍摄时倾斜的照片。这时候就可以用到旋转功能。

# 旋转图像,角度为45度rotated_img = img.rotate(45)# 显示旋转后的图像rotated_img.show()

运行这段代码,你会看到旋转后的图像。rotate方法接受一个角度作为参数,表示旋转的角度。顺时针旋转为正,逆时针旋转为负。

温馨提示

• 旋转后的图像可能会超出原始图像的边界,这时候Pillow会自动填充空白区域,默认填充黑色。

• 可以通过设置expand=True参数来避免自动填充空白区域,这样旋转后的图像大小会自适应。

图像滤镜

Pillow还提供了一些内置的滤镜,可以用来处理图像效果,比如模糊、锐化、边缘增强等。

# 应用模糊滤镜blurred_img = img.filter(ImageFilter.BLUR)# 应用锐化滤镜sharpened_img = img.filter(ImageFilter.SHARPEN)# 显示滤镜处理后的图像blurred_img.show()sharpened_img.show()

运行这段代码,你会看到模糊和锐化后的图像。filter方法接受一个滤镜对象作为参数,Pillow提供了多种滤镜对象,比如ImageFilter.BLUR、ImageFilter.SHARPEN等。

温馨提示

• 滤镜处理后的图像也是一个新的图像对象,不会改变原始图像。

• 滤镜处理可能会消耗较多的时间和内存,特别是当图像比较大时。

图像格式转换

有时候我们需要把图像转换成不同的格式,比如把JPEG转换成PNG。这时候就可以用到保存功能。

# 保存图像为PNG格式img.save('your_image.png')

运行这段代码,你会在当前目录下看到一个名为your_image.png的PNG格式图像文件。save方法接受一个文件名作为参数,文件名的扩展名决定了图像的保存格式。

温馨提示

• 确保保存路径和文件名正确哦,不然可能会保存失败。

• 不同格式的图像可能具有不同的特性和压缩方式,选择合适的格式可以节省存储空间和提高加载速度。

总结

好啦,今天的Pillow学习之旅就到这里啦!我们学习了如何安装Pillow、打开和显示图像、裁剪图像、缩放图像、旋转图像、应用滤镜以及转换图像格式。这些知识已经足够你开始处理各种图像任务啦!不过,这只是冰山一角哦,Pillow还有很多强大的功能等待你去发掘。比如,你可以学习如何绘制图像、处理图像颜色、进行图像识别等等。加油吧,未来的图像处理大师们!

0 阅读:1

腼腆牵手阿

简介:越来越舍不得收手