opencv python 1 读写图像
读入图像
cv2.imread()实现了从文件读取图像,支持jpg、bmp、png等多种图像格式。
retval = cv.imread(filename[, flags])
- filename:文件路径
- flags:读取方式,包括:
- cv2.IMREAD_COLOR: 读取彩色图像,忽略透明度,默认,1
- cv2.IMREAD_GRAYSCALE: 读取灰度图像,0
- cv2.IMREAD_UNCHANGED: 读取时包含阿尔法通道,-1
import cv2
img = cv2.imread('a.jpg', 1)
若文件路径有误,imread()函数不会抛出错误,print(img)会打印出None。
读取后的图像数据以BGR方式存储。
显示图像
None = cv.imshow(winname, mat)
- winname:显示窗口名
- mat:显示的图像
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
cv2.waitKey()函数为等待键盘输入,参数为毫秒数,若为0则无限等待直到获得输入。
cv2.destroyAllWindows()函数摧毁所有打开的窗口。
写入图像
cv2.imwrite()将图像写至文件。
retval = cv.imwrite(filename, img[, params])
- filename:文件名
- img:写入的图像
- params:写入时的参数,默认为空
cv2.imwrite('b.png', img)
通过numpy创建图像
import cv2
import numpy as np
img = np.zeros((100, 100), dtype = np.uint8)
cv2.imshow('img', img)
cv2.waitKey()