- 摘要
- 代码
- 看看结果:
- 原因:
- 解决方法:
- 看看结果
摘要
使用opecv过程中经常需要使用plt输出图片作为前后对比,方便观察。但是会出现plt显示时,颜色偏差严重的情况。这是因为plt和imread二者颜色通道不同导致。先看看图片
代码
首先通过imread读入源图并显示。
import cv2 as cvimport numpy as npimport copyimport randomfrom matplotlib import pyplot as plt# cv.imread 读取图像格式为b,g,rimg = cv.imread('1.jpg')
然后 采用plt方法进行显示。把imread生成的img使用plt输出。
plt.imshow(img)plt.show()
看看结果:
出现了色差
原因:
cv.imread 读取图像格式为b,g,r但是 plt显示按照 rgb次序!因此要转换一下。
解决方法:
加入下面的代码
b,g,r = cv.split(img)img_rgb = cv.merge([r,g,b])
import cv2 as cvimport numpy as npimport copyimport randomfrom matplotlib import pyplot as plt# cv.imread 读取图像格式为b,g,rimg = cv.imread('1.jpg')#如果本身是彩图 似乎也没什么影响!#plt显示按照 rgb次序!因此要转换b,g,r = cv.split(img)img_rgb = cv.merge([r,g,b])plt.imshow(img_rgb)plt.show()
看看结果

https://blog.csdn.net/whiffeyf/article/details/104756062
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论