本文主要實現(xiàn)用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顯示彩色圖像時,得到的結(jié)果并不令人滿意,是因為:
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()
知道哪里不同了吧!?。。。?!
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。