图片处理基础

​

1图像混合与遮罩

1.1 线性混合(Blend)

python 复制代码
from PIL import Image
​
im1 = Image.open("kfc-1.jpg").convert("RGB")
im2 = Image.new("RGB", im1.size, color="green")  # 纯绿色图
​
blend = Image.blend(im1, im2, alpha=0.5)         # alpha=0.0--1.0
blend.show()

1.2 遮罩合成(Composite)

python 复制代码
from PIL import Image
​
im1 = Image.open("kfc-1.jpg").convert("RGB")
im2 = Image.open("kfc-2.jpg").convert("RGB").resize(im1.size)
构造掩膜:这里用 im1 的 R 通道做掩膜
r, g, b = im1.split()
composite = Image.composite(im2, im1, mask=r)  # mask:灰度图
composite.show()

2 缩放、裁剪、旋转与镜像

python 复制代码
from PIL import Image
​
im = Image.open("kfc-1.jpg")
​
# 缩放 (保持比例)
im.thumbnail((200, 200))  
im.show()
​
# 裁剪 (左、上、右、下)
crop = im.crop((10, 10, 110, 110))
crop.show()
​
# 旋转与镜像
im.rotate(90, expand=True).show()                         # 顺时针90°,expand=True 保持完整
im.transpose(Image.FLIP_LEFT_RIGHT).show()                # 水平翻转
im.transpose(Image.FLIP_TOP_BOTTOM).show()                # 垂直翻转
相关推荐
甜到心里的蛋糕3 分钟前
Playwright 无头浏览器自动发布 CSDN 图文草稿的实践(持久化 profile + 图床直传)
运维·python·playwright·爬虫自动化·博客运营
fei_sun1 小时前
RIB、FIB、MAC 、ARP 表
服务器·网络·macos
凌云若寒1 小时前
BarTender提示#807错误:无法在拥有其他许可证的Licensing Service上激活节点锁定的 Professional 版许可证 的解决办法
运维·服务器·前端·学习·软件需求
Julien20041 小时前
管理 Ansible 配置文件
linux·运维·服务器·ssh·学习方法
逐米时代1 小时前
远程运维诊断减少到场率
java·服务器·前端
pt10431 小时前
CML网络仿真入门-6(结):Cisco Modeling Labs 示例拓扑
服务器·网络
MicrosoftCloud2 小时前
性能排查 01|free 显示内存用了 90% 就是快满了吗?buff/cache 与 available 一次讲清
linux·运维·内存·free·buff/cache
灯澜忆梦2 小时前
【docker】#1 | Docker 初识
运维·docker·容器
风寄巴山秋2 小时前
OpenBMC:Web 页面功能异常排查
运维·服务器·前端·架构
小鹿的周先生3 小时前
第18章-MCP
服务器·网络·人工智能