Python OpenCV ——Matplotlib顯示圖片


   Color image loaded by OpenCV is in BGR mode.But Matplotlib displays in RGB mode.So color images will not be displayed correctly in Matplotlib if image is read with OpenCV.Please see the exercises for more details.(引自文檔)

import numpy as np
import cv2
from matplotlib import pyplot as plt
'''
img = cv2.imread('cute.jpg',0)
plt.imshow(img,cmap='gray',interpolation='bicubic')
plt.xticks([],plt.yticks([]))  # to hide tick values on X and Y axis
plt.show()
'''

'''
Color image loaded by OpenCV is in BGR mode.
But Matplotlib displays in RGB mode.
So color images will not be displayed correctly in Matplotlib if image is read with OpenCV.
Please see the exercises for more details.
'''
img = cv2.imread('cute.jpg')
b, g, r = cv2.split(img)
img2 = cv2.merge([r,g,b])
# img2 = img[:,:,::-1]    this can be faster
plt.subplot(121);plt.imshow(img)  # expects distorted color
plt.subplot(122);plt.imshow(img2)  # expects true color
plt.show()

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

  圖像輸出:

Matlpotlib輸出:

OpenCV輸出:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM