图片处理基础

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()                # 垂直翻转
相关推荐
乘云数字DATABUFF3 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--5 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森5 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜6 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB7 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
zzzzzz3108 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode8 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220709 天前
如何搭建本地yum源(上)
运维
大树8812 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠12 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql