python 显示图片matplotlib_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输出:

原文:http://www.cnblogs.com/buzhizhitong/p/5918472.html

你可能感兴趣的:(python,显示图片matplotlib)