OpenCV-python 图像的读取显示和保存

导入一些必要的库

import numpy as np

import cv2

1、图片的读取

    cv2.imread(文件名,标记)#读入图片

      第二个参数有如下三种形式:

  • cv2.IMREAD_COLOR  #加载一个彩色图片,图片的透明度会被忽律,也是缺省参数。
  • cv2.IMREAD_GRAYSCALE  #加载黑白图片
  • cv2.IMREAD_UNCHANGED  #加载包含alpha通道的图片

      上面三个参数可以用1、0、-1表示

    例如:img = cv2.imread('test.jpg',0),如果图片路径错误,不会抛出错误,什么也不输出

2、显示图片

    cv2.nameWindow('image',cv2.WINDOW_NORMAL)  #调整窗口大小,第二个参数函数默认为cv2.WINDOW_AUTOSIZE,自适应大小;当改为WINDOW_NORMAL时可以调整窗口大小

    cv2.imshow('窗口名',img)  #在窗口中显示图片,第一个参数为窗口名称,第二个参数为加载图片,可以设置不同窗口名,来创建多个窗口

    cv2.waitKey( )  #绑定键盘,参数为毫秒,该函数等待指定的毫秒来接受键盘输入,当参数为0时,一直等待状态

    cv2.destroyAllWindows()  #销毁所有窗口

3、保存图片

    cv2.imwrite('文件名',图片)  #保存图片

    例如:cv2.imwrite('test.jpg',img)

4、练习加载一个灰度图,显示图片,按下‘s’键保存后退出,或者按下ESC键退出不保存

    

import numpy as np
import cv2

img = cv2.imread('test.jpg',0)
cv2.imshow('image',img)
if cv2.waitKey(0) & 0xFF == 27
    cv2.destroyAllWindows()  #wait for ESC key to exit
elif cv2.waitKey(0) & 0xFF == ord('s'):
	cv2.imwrite('test1.png',img)  #wait for 's' key to save and exit
    cv2.destoryAllWindows()

5、与matplotlib库:

    彩色图片使用opencv加载是使用BGR模式,但是使用Matplotlib库是用RGB模式,所以如果使用opencv读取图片,彩色图片不会在Matplotlib中正确的显示。 

你可能感兴趣的:(python,OpenCV)