处理二哈帅气的图片

梓逸
2021-07-01 / 0 评论 / 7 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年11月18日,已超过13天没有更新,若内容或图片失效,请留言反馈。

用Pillow处理哈士奇图像

[RainBowText]不知道要是被哈士奇知道了会怎么想的,反正我是听音乐的[/RainBowText] 表情
Pillow是由从著名的Python图像处理库PIL发展出来的一个分支,通过Pillow可以实现图像压缩和图像处理等各种操作。可以使用下面的命令来安装Pillow。

pip install pillow

Pillow中最为重要的是Image类,可以通过Image模块的open函数来读取图像并获得Image类型的对象。

1.读取和显示图像

from PIL import Image

# 读取图像获得Image对象
image = Image.open('pytest.jpg')
# 通过Image对象的format属性获得图像的格式
print(image.format) # JPEG
# 通过Image对象的size属性获得图像的尺寸
print(image.size)   # (500, 750)
# 通过Image对象的mode属性获取图像的模式
print(image.mode)   # RGB
# 通过Image对象的show方法显示图像
image.show()

1

2.剪裁图像

# 通过Image对象的crop方法指定剪裁区域剪裁图像
image.crop((80, 20, 310, 360)).show()

2

3.生成缩略图

# 通过Image对象的thumbnail方法生成指定尺寸的缩略图
image.thumbnail((128, 128))
image.show()

3

4.缩放和黏贴图像

# 读取照片获得Image对象
luohao_image = Image.open('pytest.jpg')
# 读取照片获得Image对象
guido_image = Image.open('pytest2.jpg')
# 从照片上剪裁出
guido_head = guido_image.crop((80, 20, 310, 360))
width, height = guido_head.size
# 使用Image对象的resize方法修改图像的尺寸
# 使用Image对象的paste方法
luohao_image.paste(guido_head.resize((int(width / 1.5), int(height / 1.5))), (172, 40))
luohao_image.show()

4

5.旋转和翻转

image = Image.open('pytest.jpg')
# 使用Image对象的rotate方法实现图像的旋转
image.rotate(45).show()
# 使用Image对象的transpose方法实现图像翻转
# Image.FLIP_LEFT_RIGHT - 水平翻转
# Image.FLIP_TOP_BOTTOM - 垂直翻转
image.transpose(Image.FLIP_TOP_BOTTOM).show()

5

6.操作像素

for x in range(80, 310):
    for y in range(20, 360):
        # 通过Image对象的putpixel方法修改图像指定像素点
        image.putpixel((x, y), (128, 128, 128))
image.show()

6

7.滤镜效果

from PIL import ImageFilter

# 使用Image对象的filter方法对图像进行滤镜处理
# ImageFilter模块包含了诸多预设的滤镜也可以自定义滤镜
image.filter(ImageFilter.CONTOUR).show()

7

0

评论

博主关闭了所有页面的评论