Python讀取圖像并顯示灰度圖的實(shí)現(xiàn)
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的位置調(diào)換一下
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顯示圖像,它默認(rèn)使用三通道顯示圖像。解決方案:在plt.imshow()添加參數(shù)
plt.imshow(img_gray,cmap='gray')plt.axis(’off’)plt.show()
效果:
到此這篇關(guān)于Python讀取圖像并顯示灰度圖的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Python 灰度圖內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. python爬蟲實(shí)戰(zhàn)之制作屬于自己的一個IP代理模塊2. python實(shí)現(xiàn)在內(nèi)存中讀寫str和二進(jìn)制數(shù)據(jù)代碼3. .Net Core和RabbitMQ限制循環(huán)消費(fèi)的方法4. Python編寫nmap掃描工具5. python實(shí)現(xiàn)PolynomialFeatures多項式的方法6. .NET6打包部署到Windows Service的全過程7. python 寫函數(shù)在一定條件下需要調(diào)用自身時的寫法說明8. HTML 絕對路徑與相對路徑概念詳細(xì)9. 解決ajax請求后臺,有時收不到返回值的問題10. python 利用toapi庫自動生成api
