PIL
PIL
说明:PIL(Python Imaging Library,图像处理类库) 提供了通用的图像处理功能,以及大量有用的基本图像操作,比如:打开显示,灰度转换,图像缩放,旋转,裁剪等。
1安装
pip install Pillow #安装 from PIL import Image #导入
2基本使用
image = Image.open("dog.jp eg") #读取图片 image.show() #展示图片 image_gray = image.convert("L") #灰度变换 #缩略图 width = 80 height = 80 size = (width, height) image.thumbnail(size) #改变原图 #保存图片 image_gray.save("dog_gray.jpeg") image.save("dog_thumb.jpeg")
3 几何变换
应用:训练 CNN 图像分类,对有限的训练集数据进行扩充增强,以提高模型的范化能力,获得更佳的模型表现
image_gray_resize = image_gray.resize((80, 80)) #缩放 image_gray_rotate = image_gray.rotate(90) #旋转 image_gray_flip_h =image_gray.transpose(Image.FLIP_LEFT_RIGHT) #水平翻转 image_gray_flip_v = image_gray.transpose(Image.FLIP_TOP_BOTTOM) #垂直翻转
img = Image.open("dog.jpeg") print("origin image size\nwidth: {}\nheight: {}".format(*img.size)) crop_box = (80, 80, 240, 240) img_crop = img.crop(crop_box) print("cropped image size\nwidth: {}\nheight: {}".format(*img_crop.size)) img_crop.save("dog_crop.jpeg") 输出: origin image size width: 320 height: 320 cropped image size width: 160 height: 160
4 获取图片属性
from PIL import Image image = Image.open("dog.jpeg") width, height = image.size #图片尺寸 print("width: {} pixels\nheight: {} pixels".format(width, height)) #width: 320 pixels #height: 320 pixels mode = image.mode #色彩模式 print("color mode: ", mode) #color mode: RGB format = image.format #存储格式 print("image format: ", format) image.info #元信息
5读取图片数据
pix = image.load() x = image.size[0] // 2 y = image.size[1] // 2 pixdata = pix[x, y] print("pixel at ({},{}) is {}.".format(x, y, pixdata)) #pixel at (160,160) is (184, 171, 155)
import numpy as np image_data_2d_3 = np.array(image)
6分离颜色通道
R, G, B = image.split()
R.show()
G.show()
B.show()
作者:华王
博客:https://www.cnblogs.com/huahuawang/
浙公网安备 33010602011771号