from PIL import Image
img = Image.open(’img’)
#读取当前目录下的图片’img’
#读取当前目录文件下的图片'./file/img'
import cv2
img = cv2.imread(’img’)
plt.imshow(img)
cv2.imshow('img',img)
#设置图片展示时间
cv2.waitKey()
#释放内存
cv2.destroyAllWindows()
#以jpg格式进行存储,名字为img
img.save('img.jpg')
img.save('save.jpg')
#还可以指定图片保存的质量
img.save('new1.jpg',quality=95),默认值为75
cv2.imwrite('im_8.jpg',im8)
#保存图片,命名为im8
# 调整大小为(300,300)
img2 = cv2.resize(img2,(300,300))
matplotlib.pyplot.figure(num=None,
figsize=None,
dpi=None,
facecolor=None,
edgecolor=None,
frameon=True,
FigureClass=<class 'matplotlib.figure.Figure'>,
clear=False,
**kwargs)
这个后面的函数一般都用不上主要是figsize=(x,y)设置窗口大小
subplot(nrows,
ncols,
sharex,
sharey,
subplot_kw,
**fig_kw)
shape函数的功能是读取矩阵或数组的长度
#通常有三种使用方法:shape[0],shape[1],shape
shape[0] #读取行数
shape[1]#读取列数
img.shape#行列数组成元组直接输出
zeros(shape, dtype=float, order=‘C’)
flatten()是对多维数据的降维函数
flatten(),默认缺省参数为0
适用:numpy对象,即数组array或者矩阵MAT,普通的list列表不可以
# flatten可将二维数组转化为一维
image.flatten()
hist(image.flatten(), 128)
show()#展示
img.convert(mode=None, matrix=None, dither=None, palette=0, colors=256)
NONE
或:data:FLOYDSTEINBERG
(默认)。请注意,在提供``matrix’'时不使用此选项。 img.convert(‘1’)
为二值图像,非黑即白。每个像素用8个bit表示,0表示黑,255表示白。
img.convert(‘L’)
为灰度图像,每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度。
def image_compose():
# 创建一个新图
to_image = Image.new('RGB', (IMAGE_COLUMN * IMAGE_SIZE, IMAGE_ROW * IMAGE_SIZE))
# 循环遍历,把每张图片按顺序粘贴到对应位置上
for y in range(1, IMAGE_ROW + 1):
for x in range(1, IMAGE_COLUMN + 1):
from_image = Image.open(IMAGES_PATH + image_names[IMAGE_COLUMN * (y - 1) + x - 1]).resize(
(IMAGE_SIZE, IMAGE_SIZE), Image.ANTIALIAS)
to_image.paste(from_image, ((x - 1) * IMAGE_SIZE, (y - 1) * IMAGE_SIZE))
plt.imshow(to_image)
return to_image.save("拼接结果.jpg") # 保存拼接之后的结果图
img1 = cv2.cvtColor(img1,cv2.COLOR_BGR2GRAY)
dst1 = img1.copy()#对原图像复制
这些是我自己对上一篇图像处理总结的一些函数,以后不会了就回来看看,虽然比较简单,但是好记性不如烂笔头嘛。