图像
读入图像
全英文路径下图像的读取:
- retval = cv2.imread(文件名[,显示控制参数])
含中文路径下图像的读取:
- retval = cv2.imdecode(np.fromfile(文件名, np.uint8), -1)
-
文件名
完整文件名
-
参数(默认是cv2.IMREAD_UNCHANGED)
- cv2.IMREAD_UNCHANGED:不改变显示方式
- cv2.IMREAD_GRAYSCALE:灰度显示
- cv2.IMREAD_COLOR:彩色显示
# 读取全英文路径下的图像
test = cv2.imread("image/test.jpg", )
# 读取含中文路径下的图像
image = cv2.imdecode(np.fromfile("image/张良.jpg", np.uint8), -1)
显示图像
None = cv2.imshow(窗口名, 图像名)
cv2.imshow("demo", image) # 窗口名自定义,但是不能是中文
retval = cv2.waitKey( [, delay]) # 如没有此步骤,图像会一闪而过
- delay(可选参数)
- delay > 0 等待delay毫秒
- delay < 0 等待键盘单击
- delay = 0 无限等待
cv2.waitKey(0)
cv2.destroyAllWindows() # 删除所有窗口,无该步骤,图像显示会出现问题
cv2.destroyAllWindows()
保存图像
若保存成功,返回True
retval = cv2.imwrite(路径, 需要保存的图像)
cv2.imwrite("d:\\test.jpg", img)
应用
import cv2
import numpy as np
# 读取全英文路径下的图像
test = cv2.imread("image/test.jpg", cv2.IMREAD_UNCHANGED)
cv2.imshow("test", test)
cv2.waitKey(0)
# 读取含中文路径下的图像
image = cv2.imdecode(np.fromfile("image/姬如千泷.jpg", np.uint8), -1)
cv2.imshow("JiRuQianLong", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 写入图像
cv2.imwrite("image/test1.jpg", test)
图像显示结果如下:
图像保存结果如下: