0
点赞
收藏
分享

微信扫一扫

OpenCV和matplotlib中的imshow

你带来了我的快乐 2022-03-22 阅读 124
pythonopencv

记录OpenCV中要注意的问题

文章目录

imshow()


RGB用plt.imshow()显示,BGR用cv2.imshow()显示


import cv2
import matplotlib.pyplot as plt
# 采用cv2.imshow()显示的是BGR的图片,采用plt.imshow显示的是RGB的图片

# BGR转化为RGB
img = cv2.imread('MyLove.jpg')
b, g, r = cv2.split(img)  # 将通道拆分为BGR单通道,各个通道对应的是灰度值
img2 = cv2.merge([r, g, b])  # 将单通道合并为RGB多通道
# img2 = cv2.cvtColor(img , cv2.COLOR_BGR2RGB) # 能够达到相同的效果

# plt显示
plt.subplot(121)
plt.imshow(img)  # expects distorted color
plt.subplot(122)
plt.imshow(img2)  # expect true color
plt.show()

# cv2显示
cv2.imshow('bgr image', img)  # expects true color
cv2.imshow('rgb image', img2)  # expects distorted color
cv2.waitKey(0)
cv2.destroyAllWindows()

plt.imshow() 显示的BGR和RGB

在这里插入图片描述

cv2.imshow() 显示的BGR为彩色(上图右边的),RGB为上图左边的图像


cv2.imshow()必须要有第一个窗口名称的参数,且与cv2.waitKey(0)组合使用,否则将无法显示图像


举报

相关推荐

0 条评论