如何用Python实现读取并展示图像的灰度版本?

2026-05-05 14:581阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计384个文字,预计阅读时间需要2分钟。

如何用Python实现读取并展示图像的灰度版本?

Python读取图像+原图:使用`cv2.imread()`函数读取图像,原图保持不变。示例代码如下:

pythonimport cv2

读取图像image=cv2.imread('image_path')

显示原图cv2.imshow('Original Image', image)cv2.waitKey(0)cv2.destroyAllWindows()

python读取图像

如何用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读取图像并显示灰度图的实现的文章就介绍到这了,更多相关Python 灰度图内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

标签:实现

本文共计384个文字,预计阅读时间需要2分钟。

如何用Python实现读取并展示图像的灰度版本?

Python读取图像+原图:使用`cv2.imread()`函数读取图像,原图保持不变。示例代码如下:

pythonimport cv2

读取图像image=cv2.imread('image_path')

显示原图cv2.imshow('Original Image', image)cv2.waitKey(0)cv2.destroyAllWindows()

python读取图像

如何用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读取图像并显示灰度图的实现的文章就介绍到这了,更多相关Python 灰度图内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

标签:实现