Pillow操控图像,Python必备神器全面解析!

news2024/11/18 20:36:17

更多资料获取

📚 个人网站:ipengtao.com


Pillow 是一个强大的 Python 图像处理库,它提供了丰富的功能,能够处理图像的加载、编辑、处理和保存。这个库建立在 Python Imaging Library (PIL) 的基础上,并延续了 PIL 的开发,提供了更多的功能和支持。

1. 导入Pillow库并加载图像

Pillow 是一个功能强大的图像处理库,在使用前需要确保已经安装。

from PIL import Image

# 加载图像
img = Image.open('example.jpg')
img.show()

2. 图像基本操作

修改图像尺寸

resized_img = img.resize((300, 200))
resized_img.show()

旋转和翻转图像

rotated_img = img.rotate(90)
rotated_img.show()

flipped_img = img.transpose(Image.FLIP_LEFT_RIGHT)
flipped_img.show()

3. 图像滤镜和效果

应用滤镜

from PIL import ImageFilter

blurred_img = img.filter(ImageFilter.BLUR)
blurred_img.show()

sharpened_img = img.filter(ImageFilter.SHARPEN)
sharpened_img.show()

4. 图像保存

resized_img.save('resized_example.jpg')
rotated_img.save('rotated_example.jpg')
blurred_img.save('blurred_example.jpg')

5. 图像合成

overlay = Image.open('overlay.png')
img.paste(overlay, (0, 0), overlay)
img.show()

6. 其他功能

合并图像

Pillow 允许合并不同的图像,创建新的图像或者将图像叠加在一起。

from PIL import Image

# 加载两个图像
img1 = Image.open('image1.jpg')
img2 = Image.open('image2.jpg')

# 合并图像
img1.paste(img2, (50, 50))  # 将 img2 合并到 img1 上

img1.show()

调整颜色

可以调整图像的色彩和颜色平衡,使图像看起来更加生动。

from PIL import ImageEnhance

# 提高图像亮度
enhancer = ImageEnhance.Brightness(img)
brightened_img = enhancer.enhance(1.5)  # 增加亮度1.5倍

brightened_img.show()

创建缩略图

Pillow 能够创建图像的缩略图,用于生成较小尺寸的图像。

# 创建缩略图
img.thumbnail((100, 100))  # 将图像缩放至 100x100
img.show()

添加文字

Pillow 允许在图像上添加文字,包括自定义字体、颜色和位置。

from PIL import ImageFont, ImageDraw

# 加载字体
font = ImageFont.truetype("arial.ttf", 36)

# 创建 ImageDraw 对象
draw = ImageDraw.Draw(img)

# 添加文字
draw.text((10, 10), "Hello, Pillow!", font=font, fill=(255, 255, 255))

img.show()

总结

Pillow 提供了多种图像处理功能,包括基本操作、滤镜效果、合成和其他增强功能。这些功能能够帮助你处理和修改图像,根据需求进行各种操作。结合官方文档和实践,能够更好地掌握 Pillow 图像处理库的使用。


Python学习路线

在这里插入图片描述

更多资料获取

📚 个人网站:ipengtao.com

如果还想要领取更多更丰富的资料,可以点击文章下方名片,回复【优质资料】,即可获取 全方位学习资料包。

在这里插入图片描述
点击文章下方链接卡片,回复【优质资料】,可直接领取资料大礼包。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1283256.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

芯擎科技与芯华章深度合作,软硬件协同开发加速车规级芯片创新

12月4日,系统级验证EDA解决方案提供商芯华章,与国产高端车规芯片设计公司芯擎科技正式建立战略合作。双方强强联手,芯擎科技导入芯华章相关EDA验证工具,赋能车规级芯片和应用软件的协同开发,助力大规模缩短产品上市周期…

预测胶质瘤预后的铜结合蛋白的转录组学特征

今天给同学们分享一篇生信文章“Transcriptomic Characterization of Copper-Binding Proteins for Predicting Prognosis in Glioma”,这篇文章发表在Brain Sci期刊上,影响因子为3.3。 结果解读: 铜结合蛋白的转录组表达 共有85种蛋白质被确…

【驾校管理系统源码】基于Springboot+Vue个人驾校预约管理系统

🍅 简介:500精品计算机源码学习 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 文末获取源码 目录 一、以下学习内容欢迎领取: Eclipse运行教学: Idea运行项目教学: Pycharm调试项目教学&#…

嵌入式rk3399系统问题

1、修改分辨率 修改4k分辨率: 1. 执行命令:cvt 3840 2160 50获得返回结果(2k分辨率为cvt 1920 1080 50),如图中所示: 2.修改文件:sudo vim /usr/share/X11/xorg.conf.d/20-modesetting.conf将获取到的Modeline如图中所…

二值图像分割统一项目

1. 项目文件介绍 本章为二值图像的分割任务做统一实现,下面是项目的实现目录 项目和文章绑定了,之前没用过,不知道行不行 data 文件夹下负责摆放数据的训练集测试集inference 负责放待推理的图片(支持多张图片预测分割)run_results 是网络训…

业务场景中Hive解析Json常用案例

业务场景中Hive解析Json常用案例 json在线工具 json格式转换在线工具 https://tool.lu/json/format格式互转: // 格式化可以合并整行显示 {"name":"John Doe","age":35,"email":"johnexample.com"}// 格式化…

vm net 方式 静态ip配置访问主机IP和外网

1、win 11 安装vm,镜像文件 F:\software\VMwork\CentOS-7-x86_64-Everything-1804.iso 2、配置网络 net 方式 3、右击网络--》属性---》更改适配器设置--》vmnet8 属性 如果没有vm1、vm8 虚拟机编辑---》虚拟机网络编辑器-->还原默认设置 注意:这…

ONLYOFFICE 协作空间 2.0 现已发布:新增公共房间、插件、重新分配数据、RTL 界面等功能

更新后的 ONLYOFFICE 协作空间新增诸多实用功能,全平台实现多项优化功能。请继续阅读,了解所有更新。 ONLYOFFICE 协作空间是什么 ONLYOFFICE 协作空间是一款开源效率平台,让您与同事、团队成员、客户、合作伙伴、承包商、赞助商和其他第三方…

大学生如何搭建自己的网站

这篇是我在大一的时候,写过的一篇文章。 前言 作为一名大学生,我觉得搭建个人网站很有意义。 这篇博客讲述的是这个寒假,我是如何从零到搭建好个人网站的过程。我提供的主要是具体的思路,也附带了一些零零散散的细节。时间跨度…

GVIM 配置 for begin/end class/endclass 等配对

有时候我们的代码很长,或者结构比较复杂,多个if/else 或者begin/end 快嵌套,为了阅读方便,利用gvim插件实现块跳转还是很有实用性的,下面的.vimrc的配置,简单方便。 使用方式: 将光标定位到块头…

全球与中国汽车电力电子市场:增长趋势、竞争格局与前景展望

目前,世界各国都致力于转向更环保、更永续的传统交通替代方案。 电动车满足所有要求,因为它们具有零废气排放、改善空气品质、减少温室气体排放并创造更清洁、更健康的环境。此外,电动车的运作成本比传统内燃机驱动的汽车低,因为…

HTML5+CSS3+Vue小实例:饮料瓶造型文字旋转特效

实例:饮料瓶造型文字旋转特效 技术栈:HTML+CSS+Vue 效果: 源码: 【HTML】【JS】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" …

linux 内核regulator

问题 在sys文件系统下没有生成cpu 调频的相关节点。 日志对比 [ 3.588745] cpu cpu4: Looking up cpu-supply from device tree [ 3.588753] cpu cpu4: Failed to get reg [ 3.588791] cpu cpu4: Looking up cpu-supply from device tree [ 3.588808] Failed to i…

React 笔记 jsx

严格约定&#xff1a;React 组件必须以大写字母开头&#xff0c;而 HTML 标签则必须是小写字母。 React JSX JSX 是由 React 推广的 JavaScript 语法扩展。 用于表达组件的 特殊语法的 js 函数 要求标签必须闭合&#xff1b;返回的组件必须包裹在一个父标签内&#xff1b; …

Python使用cURL库下载文件

Python使用cURL库下载文件 cURL库是一个功能强大的工具&#xff0c;可以用于在Python中下载文件。以下是一个简单的Python程序&#xff0c;使用cURL库实现文件下载功能&#xff1a; import subprocess def download_file(url, output_path): command [curl, -o, …

开启全新消费革命——消费增值,让每一笔消费变成财富!

你是否厌倦了仅仅购买物品或享受服务后便一无所有的消费方式&#xff1f;现在&#xff0c;消费增值的概念将彻底改变你的消费观念&#xff01;通过参与消费增值&#xff0c;你的每一笔消费都将变得更有价值&#xff01; 消费增值是一种全新的消费理念&#xff0c;它让你在购物的…

前后端验证码分析(字母计算)

样式&#xff1a; 前端&#xff1a; login.vue <template> <view class"normal-login-container"> <view class"login-form-content"> <view class"input-item flex align-center"> <view class"iconfont ic…

SpringBootApplication注解保姆级带你如何应对面试官

SpringBootApplication注解保姆级带你如何应对面试官 一介绍 在Java Spring Boot框架中&#xff0c;SpringBootApplication注解是一个组合注解&#xff0c;它由以下三个注解组成&#xff1a;SpringBootConfiguration&#xff0c;EnableAutoConfiguration和ComponentScan。 这…

绿色建筑革新,气膜球馆成为城市锻炼新热点

近年来&#xff0c;全民健身设施蓬勃发展&#xff0c;个性化球场设计逐渐取代了传统模式&#xff0c;其中备受欢迎的是新潮的绿色建筑——气膜室内球馆。这种创新的建筑形式不仅适用于传统的篮球、足球、羽毛球等常规运动&#xff0c;还可以容纳冰壶、滑雪等更为复杂的活动&…

MySQL入门实战:安装与配置基础

MySQL是一个开源的关系型数据库管理系统&#xff0c;由瑞典MySQL AB公司开发&#xff0c;目前已经被Sun Microsystems公司收购。MySQL是一个非常流行的数据库管理系统&#xff0c;它的特点是轻量级、高性能、易于使用和高度可扩展。 MySQL是一个基于客户端/服务器的系统&#…