This question already has answers here:
OpenCV giving wrong color to colored images on loading

(2个答案)


去年关闭。




我尝试使用matplotlib.pyplot中的imshow函数,它非常适合显示灰度图像。当我尝试表示rgb图像时,它会更改颜色,显示出更蓝的颜色。

看一个例子:
import cv2
import matplotlib.pyplot as plt
lena=cv2.imread("lena.jpg")
plt.imshow(lena)
plt.show()

生成的图像类似于this

虽然原始图像是this

如果它与颜色图有关,有什么方法可以使其与rgb图像一起使用?

最佳答案

这对我有用:

plt.imshow(lena[:,:,::-1]) # RGB-> BGR

相同的想法,但是更好和更健壮的方法是使用"ellipsis"提出的@rayryeng:
plt.imshow(lena[...,::-1])

07-28 02:29
查看更多