您的位置:首页 > 编程语言 > Python开发

《python+opencv学习》一、Gui Features in Opencv(2)Matplotlib显示图片

2016-04-27 09:46 573 查看
本文主要实现用Matplotlib显示灰度图像和彩色图像。

有些同学在使用Matplotlib显示彩色图像时,会得到不理想的效果,具体原因和解决办法请看下文!

1. Matplotlib显示灰度图像

import cv2
from matplotlib import pyplot as plt

img = cv2.imread('test.jpg', 0)
plt.imshow(img, cmap = 'gray')
#plt.xticks([]), plt.yticks([])#去除横纵坐标
plt.show()



2. Matplotlib显示彩色图像

有时候用Matplotlib显示彩色图像时,得到的结果并不令人满意,是因为:

Matplotlib是RGB,而Opnecv是BGR,所有我们需要先将Opencv读入的彩色图像拆分成B、G、R三个通道,然后再按R、G、B顺序合并三个通道,代码如下

img = cv2.imread('test.jpg')
b, g, r = cv2.split(img)
img2 = cv2.merge([r, g, b])
plt.subplot(121);plt.imshow(img)
plt.subplot(122);plt.imshow(img2)
plt.show()



再看看以下代码:

import cv2
from matplotlib import pyplot as plt

img = cv2.imread('test.png')
b, g, r = cv2.split(img)
img2 = cv2.merge([r, g, b])
cv2.imshow('bgr image', img)
cv2.imshow('rgb image', img2)
cv2.waitKey(0)
cv2.destroyAllWindows()





知道哪里不同了吧!!!!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: