python读取图像
原图:
import cv2 # 利用opencv读取图像 import numpy as np # 利用matplotlib显示图像 import matplotlib.pyplot as plt img = cv2.imread("./lena.png") #读取图像 # 显示图像 plt.imshow(img) plt.axis('off') 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] for i in range(3)] img_gray = r*0.299+g*0.587+b*0.114
再次显示图像
plt.imshow(img_gray) plt.axis('off') plt.show()
问:为什么她绿了?
答:因为我们还是直接使用plt显示图像,它默认使用三通道显示图像。
解决方案:在plt.imshow()添加参数
plt.imshow(img_gray,cmap="gray") plt.axis('off') plt.show()
效果:
标签:
Python,灰度图
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
内蒙古资源网 Copyright www.nmgbbs.com
暂无“Python读取图像并显示灰度图的实现”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。