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")
View Code

 

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) #垂直翻转
View Code
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 #元信息
View Code

 

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)
View Code
import numpy as np
image_data_2d_3 = np.array(image)
numpy->二维数据

 

6分离颜色通道

R, G, B = image.split()
R.show()
G.show()
B.show()
View Code

 

 

 

 

 

posted @ 2022-02-10 01:15  风hua  阅读(304)  评论(0)    收藏  举报