OpenCV基本操(IO操作,读取、显示、保存)

图像的IO操作,读取和保存方法

1.1 API

cv.imread()

参数:

要读取的图像

读取图像的方式:

cv.IMREAD*COLOR:以彩色模式加载图像,任何图像的图像的透明度都将被忽略。这是默认参数 标志: 1

cv.IMREAD*GRAYSCALE :以灰度模式加载图像 标志: 0

cv.IMREAD_UNCHANGED :包括alpha通道(透明通道)的加载图像模式。 标志: -1

可以使用1、0或者-1来替代上面三个标志

1.2显示图像

cv.imshow()

参数:

  1. 显示图像窗口名称,以字符串类型表示
  2. 要加载的图像
    OpenCV基本操(IO操作,读取、显示、保存)_第1张图片

注意:在调用图像API后,要调用cv.waitKey()给图像绘制留下时间,否则窗口会出现无响应的情况,并且图像无法显示出来

另外我们也可以使用matplotlib对图像进行展示

  1. 如果读取的是彩色图像(三个通道·)
'''
读取图像的方式:

**cv.IMREAD*COLOR**:以彩色模式加载图像,任何图像的图像的透明度都将被忽略。这是默认参数                    标志:  1

**cv.IMREAD*GRAYSCALE**   :以灰度模式加载图像                            标志:  0

**cv.IMREAD_UNCHANGED**   :包括alpha通道(透明度通道)的加载图像模式。         标志: -1

可以使用**1、0或者-1**来替代上面三个标志
'''
import cv2
import numpy as np
import cv2 as cv

import matplotlib.pyplot as plt

#以灰度图的形式读取图像


img = cv.imread('lena.png')

cv.imshow('image1',img)

cv2.waitKey(0)


#在matplotlib中显示

plt.imshow(img[:,:,::-1])  #图像按BGR顺序存储,显示的时候顺序是RGB通道,所以需要翻转成RGB

plt.show()

OpenCV基本操(IO操作,读取、显示、保存)_第2张图片

  1. 如果读取的是灰度图(一个通道)
plt.imshow(img,cmap='gray')   #使用灰度色彩映射显示灰度图像
plt.show()  #显示图像

1.3保存图像

cv.imwrite()

参数:

  1. 文件名,要保存在哪里(注意:要具体到文件名)
  2. 要保存的图像
#保存图像
cv.imwrite(r"E:\All_in\opencv\lena_saved.png",img)

你可能感兴趣的:(OpenCV从入门到精通,python,opencv)