Matplotlib
Matplotlib是Python的一个很常用的绘图库,有兴趣的可以去官网学习更多内容。
显示灰度图
1 | import cv2 |
结果如下:
显示彩色图
OpenCV中的图像是以BGR的通道顺序存储的,但Matplotlib是以RGB模式显示的,所以直接在Matplotlib中显示OpenCV图像会出现问题,因此需要转换一下
1 | import cv2 |
img[:,:,0]
表示图片的蓝色通道,img[:,:,::-1]
就表示BGR翻转,变成RGB,说明一下:
熟悉Python的童鞋应该知道,对一个字符串s翻转可以这样写:s[::-1]
,’abc’变成’cba’,-1表示逆序。图片是二维的,所以完整地复制一副图像就是:
1 | img2 = img[:,:] # 写全就是:img2 = img[0:height,0:width] |
而图片是有三个通道,相当于一个长度为3的字符串,所以通道翻转与图片复制组合起来便是img[:,:,::-1]
。
结果如下:
加载和保存图片
不使用OpenCV,Matplotlib也可以加载和保存图片:
1 | import matplotlib.image as plt |