图像数据读取与扩增
一、图像数据的读取
1.matplotlib库
import matplotlib.pyplot as plt
img=plt.imread('.../1.png')
print(img.shape)
print(img.dtype)
print(type(img))
plt.imshow(img)
plt.show()
imread读取的图片为numpy.ndarry的数组,数组的大小排列为:高×宽×通道数,数组的类型是uint8,即每个数据的大小为[0,255]
2.pillow库
pillow库的概述
PIL库可以完成图像归档和图像处理两方面功能需求:
- 图像归档:对图像进行批处理、生成图像预览、图像格式转换等;
- 图像处理:图像基本处理、像素处理、颜色处理等。
读取图像及图像属性代码如下:
from PIL import Image
im=Image.open('.../1.png')
print(im.format) #图像格式
print(im.mode) #图像色彩模式
print(im.size) #宽度和高度
可以查看特定颜色的RGBA/RGB值
from PIL import ImageColor
print(ImageColor.getcolor('red','RGBA'))
print(ImageColor.getcolor('black','RGB'))
图像储存:
im.save('im.jpg',quality=95,subsampling=0)
其中quality是质量参数,1最差,95最好。subsampling参数通过实现色度信息的分辨率低于亮度信息来对图像进行编码的实践。 可能的子采样值是0,1和2,正常0可以满足图片大小增大的需求。
pillow库进行图像处理
图像裁剪:
cropedim=im.crop((150,10,500,300))
cropedim
#裁剪范围横坐标为(150,500),纵坐标为(10,300)