1 图像的读取、显示以及保存
# -*- coding: utf-8 -*-
# Author : Masofish
# Time : 2021/9/12 15:06
# File Name: opencv-python.PY
# Ide : PyCharm
# https://www.kancloud.cn/aollo/aolloopencv/259610
import cv2
from matplotlib import pyplot as plt
'''
#流程1:读图——显示——设置显示时间——保存图片
#cv2.imread()——cv2.imshow()——cv2.waitKey()——cv2.imwrite()
#流程1:读图——brg转rgb——plt.imshow(image),plt.show()显示——
#cv2.imread()——b,r,g=cv2.split(test_image) test_image_src = cv2.merge([r,g,b])——plt.imshow(test_img_src),plt.show()
'''
test_img = cv2.imread(r'C:\Users\Maso\Desktop\test_img.png',cv2.IMREAD_COLOR)
# test_img = cv2.imread(r'C:\Users\Maso\Desktop\test_img.png',cv2.IMREAD_GRAYSCALE)
# print(test_img.shape) #color:(508, 234, 3) gray:(508, 234)
# cv2.imshow('test_img',test_img)
# cv2.waitKey(0) #等待键盘输入,大致意思就是不加这句,前面的imshow()会瞬时打开,瞬时关闭;加完敲击下次键盘才会关闭
# cv2.imwrite('test_imwrite_img.png',test_img) #cv2.imwrite('文件名.图片格式',上面的文件名)#这里要注意的一点是,保存的图片名字要带图片的格式
# 显示也可以用matplotlin的库,即不用cv2.imshow,用plt.imshow
#plt.imshow(),plt.show()要配合使用才会显示出来
#grb颜色的转化
'''
注意的点:OpenCV的接口使用的是BGR,而matplotlib.pyplot是RGB模式
通俗意思就是OpenCV的颜色通道不符合常理,而matplotlib.pyplot符合常理,而一开始读的是不合常理的,那么在plt.imshow前,显示的时候要将和常理的转换一下
'''
b,g,r = cv2.split(test_img)
test_img_src = cv2.merge([r,g,b])
plt.imshow(test_img) #接受一张图像,只是画出该图,并不会立刻显示出来
plt.show() #所有画完后使用plt.show才能进行结果的显示