python读取图像
原图:
基于importcv2#opencv的图像读取
import numpy as np
基于matplotlib的图像显示
import matplotlib.pyplot as plt
img=cv2.imread('./Lena.png ) #读取图像
#显示图像
PLT.imshow(img ) )。
PLT.axis (关闭) ) )。
plt.show () )
效果:
问:为什么画的图像和原画有色差呢?
答: opencv的颜色通道顺序为[B,g,R],而matplotlib的颜色通道顺序为[R,g,B]。
解决方案:请调换r和b的位置
img=img [ :2,1,0 ]。
重新显示图像
效果:(自己做了就知道了) )
图像灰度化算法
Gray=0.299R 0.587G 0.114*B
r、g、b=[ img [ :I]forIinrange(3])
img_gray=r*0.299 g*0.587 b*0.114
重新显示图像
PLT.imshow(img_gray ) )。
PLT.axis (关闭) ) )。
plt.show () )
问:她为什么变绿了?
a )我们仍然直接用plt显示图像,所以默认情况下用3通道显示图像。
解决方案:将参数添加到plt.imshow ()
PLT.imshow(img_gray,cmap='gray ' ) ) ) )。
PLT.axis (关闭) ) )。
plt.show () )
效果:
到此为止,我们已经看到了有关Python实现读取图像并显示灰度的文章。 有关更多相关的Python灰度内容,请搜索脚本存储中的以前文章或继续查看以下相关文章。 今后也想继续支持脚本房屋。