opencv-python教程学习系列2-读取/显示/保存图像

前言

opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的读取、显示以及保存,坚持学习,共同进步。

系列教程参照OpenCV-Python中文教程

系统环境

系统:win_x64;

python版本:python3.5.2;

opencv版本:opencv3.3.1;

内容安排

1.知识点介绍;

2.测试代码;

具体内容

1.知识点介绍;

1.1 读取图像;

cv2.imread(文件名, 标记),其中cv2.IMREAD_COLOR/1读取彩色图像,cv2.IMREAD_GRAYSCALE/0以灰度模式读取图像;

import cv2
import numpy as np
#读入图像,cv2.IMREAD_COLOR/1或者cv2.IMREAD_GRAYSCALE/0;
img = cv2.imread('test.jpg',cv2.IMREAD_GRAYSCALE)

1.2 显示图像cv2.imshow();
* cv2.waitKey()等待键盘输入,为毫秒级;
* cv2.destroyAllWindows()可以轻易删除任何我们建立的窗口,括号内输入想删除的窗口名;

其中,可以先创建一个窗口,再加载图像,这种情况可以决定窗口是否可以调整大小,使用到cv2.namedWindow()函数。初始设定函数标签是cv2.WINDOW_AUTOSIZE,调整窗口大小的标签是cv2.WINDOW_NORMAL。当图像维度太大或者需要添加轨迹条时,调整窗口大小将会非常有用。

1.3 保存图像cv2.imwrite(保存的文件名,要保存的图像变量 );

2.测试代码;

import cv2
import numpy as np
img = cv2.imread('test.jpg',cv2.IMREAD_GRAYSCALE)#读入图像,cv2.IMREAD_COLOR/1或者cv2.IMREAD_GRAYSCALE/0;
#可先创建窗口再加载图像,其中cv2.WINDOW_NORMAL可调整窗口大小,cv2.WINDOW_AUTOSIZE是初始设定函数标签;
cv2.namedWindow('image', cv2.WINDOW_NORMAL)
cv2.imshow('image',img)#显示图像
k = cv2.waitKey(0)#等待键盘输入,为毫秒级
if k == 27:
    #wait for ESC key to exit
    cv2.destroyAllWindows()#可以轻易删除任何建立的窗口,括号内输入项删除的窗口名
elif k == ord('s'):#wait for 's' key to save and exit.
    cv2.imwrite('test_gray.png', img)#保存图像
    cv2.destroyAllWindows()
    
#matplotlib绘图库显示图像
from matplotlib import pyplot as plt
plt.imshow(img, cmap='gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])#to hide tick values on X and Y axis
plt.show() 

参考

1.opencv-python教程-读取/显示/保存图像

原文地址:https://www.cnblogs.com/happyamyhope/p/8109338.html