pillow库——使用图像类Image

pillow是python中的处理图像的一个库。

首先我们需要了解以下PIL,它是python2中非常强大的图像处理标准库,但只支持到python2.7。
Pillow是在PIL的基础上创建了兼容的版本,支持最新Python3.x,又加入了许多新特性。

  • 安装
pip install pillow
  • 导入
from PIL import Image
  • Image模块的函数及用法
    im = Image.open(‘文件’)
函数 说明
Image.new() 创建新图片,例如:im = Image.new(‘RGB’, (160, 90), (23, 123, 223))
open(‘文件’) 从文件加载图像
im.format 标识图像的来源
im.size 包含宽度和高度(以像素为单位)的 2 元组
im.mode 图像中波段的数量和名称,以及像素类型和深度
im.show() 显示图像
im.save(‘文件名’) 保存图像
im.crop() 控制图像区域,例如:im2 = im.crop(box=(0, 0, 1000, 2000))
im.paste() 粘贴()内到()外上
im.resize() 根据元组给出新的大小
im.rotate() 逆时针旋转
im.transpose() 围绕其水平或垂直轴翻转图像
im.convert() 颜色变换,例如:im_l = im.convert(‘L’)

典型的图像模式

模式 解释
1 1位像素,黑白,每字节存储一个像素
L 8位像素,黑白
P 8位像素,使用调色板映射到任何其他模式
RGB 3x8位像素,真彩
RGBA 4x8位像素,带透明蒙版的真彩
CMYK 4x8位像素,分色
YCbCr 3x8位像素,彩色视频格式
LAB 3x8位像素,L* a* b颜色空间
HSV 3x8位像素,色相,饱和度,值颜色空间
T 32位有符号整数像素
F 32位浮点像素
# 创建一张新图片
from PIL import Image

image = Image.new('RGB', (160, 90), (23, 123, 223))
image.show()

新建

# 加载图片
image = Image.open('static/蒲公英.png')

# 打开图片
image.show()

图片会自动打开:

# 查看图片大小
>>> print(image.size)
(1920, 1200)

# 获取模式
>>> print(image.mode)
RGB

模式转换

print(image.mode)
image.show()

image1 = image.convert('1')
print(image1.mode)
image1.show()

RGB
pillow库——使用图像类Image_第1张图片
1
pillow库——使用图像类Image_第2张图片

blog.csdnimg.cn/ec80f75d51f541ffb15770da6ab6d6ba.png)

# 文件格式
>>> print(image.format)
PNG

#详细信息
>>> print(image.info)
{}
# 修改图片尺寸
image1 = image.resize((image.size[0] // 7, image.size[1] // 7))
image1.show()

pillow库——使用图像类Image_第3张图片

# 裁剪图片
image2 = image.crop(box=(0, 0, 1000, 2000))    # 左、上、右、下
image2.show()

pillow库——使用图像类Image_第4张图片

# 旋转图片
image2 = image.rotate(45)    # 逆时针
image2.show()

# 添加水印
paste_image = Image.open('static/二维码.png')
paste_image = paste_image.resize((image.size[0] // 7, image.size[1] // 5))
image.paste(paste_image)       # 默认左上角
image.show()

pillow库——使用图像类Image_第5张图片

position = (image.size[0] - paste_image.size[0], image.size[1] - paste_image.size[1])
image.paste(paste_image,position)
image.show()                  # 右下

pillow库——使用图像类Image_第6张图片

你可能感兴趣的:(pillow,python)