1-Getting Started with Images

import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt

1、读写图像

cv.imread()函数第一个参数为图像路径,第二个参数可以为-1,1,0,其中1为彩色图,0为灰度图,-1为alpha channel。
cv.nameWindow()函数第一个参数为生成窗口的标题,第二个参数可以为WINDOW_AUTOSIZE(自动设置)或者WINDOW_NORMAL(可手动设置)。
cv.imshow()函数第一个参数也为生成窗口的标题,第二个参数为图像的对象。
cv.waitKey()函数为键盘绑定函数,如果参数为0则等待任何键,也可以设定指定的键。
cv.destoryALLWindows()函数关闭任何窗口。cv.destoryWindow()可以关闭指定的窗口(利用参数)。
cv.imwrite()函数保存图片,第一个参数为保存的路径和名称,第二个参数为保存的图片对象。

img = cv.imread('./images/wolf.jpg',0)
#如果图像载入出错,会输入None
#print(img)
#cv.namedWindow('image', cv.WINDOW_AUTOSIZE)
cv.imshow('image', img)
cv.waitKey(0)
cv.destroyAllWindows()
#cv.imwrite('test.png',img)

键盘输入ESC键,则退出图像窗口;如果按键‘s’,另存图片。

img = cv.imread('./images/wolf.jpg',0)
cv.imshow('image', img)
k = cv.waitKey(0)
if k == 27:
    cv.destroyAllWindows()
elif k == ord('s'):
    cv.imwrite('./image/wolfimwrite.jpg', img)
    cv.destroyAllWindows()

2、OpenCV与Matplotlib显示图片

使用matplotlib进行显示opencv读入的图像。matplotlib使用RGB显示,opencv使用BGR读入,所以可能会有误差

img = cv.imread('./images/wolf.jpg', 0)
plt.imshow(img, cmap='gray', interpolation= 'bicubic')
plt.xticks([])  #隐藏x轴的坐标
plt.yticks([])
plt.show()

png

体验OpenCV和Matplotlib显示图像的不同之处

img = cv.imread('./images/wolf.jpg', 1)
b, g, r = cv.split(img)
img2 = cv.merge([r, g, b])
plt.subplot(121)
plt.imshow(img)
plt.subplot(122)
plt.imshow(img2)
plt.show()
cv.imshow("bgr", img)
cv.imshow("rgb", img2)
cv.waitKey(0)
cv.destroyAllWindows()

png

猜你喜欢

转载自blog.csdn.net/Yeah_snow/article/details/79705245