python显示灰度图像,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读取图像并显示灰度图的实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DDMS(DalvikDebugMoni
- 下一篇: 基于Labview的双函数曲线