利用Python將彩色圖像轉(zhuǎn)為灰度圖像的兩種方法
第一種方法
Python的cv2庫中自帶彩色轉(zhuǎn)灰度的方法,而且非常簡單,代碼就9行,核心代碼就1行。
大題思路就是先讀取一張彩色圖片,然后在窗口中顯示出來,再然后就讓cv2處理一下,轉(zhuǎn)換成灰度圖像,這時候它是個二維的灰度矩陣,所以,我們想保存得先將它從array轉(zhuǎn)成image,最后在另一個窗口中顯示出來,為了避免窗口一閃而過,我們需要加上waitKey(0)這一句。
import cv2 from PIL import Image #讀取彩色圖像 color_img = cv2.imread(r'dataset3/beauty.jpg') #在窗口中顯示圖像,該窗口和圖像的原始大小自適應(yīng) cv2.imshow('original image',color_img) #cvtColor的第一個參數(shù)是處理的圖像,第二個是RGB2GRAY gray_img=cv2.cvtColor(color_img,cv2.COLOR_RGB2GRAY) #gray_img此時還是二維矩陣表示,所以要實現(xiàn)array到image的轉(zhuǎn)換 gray=Image.fromarray(gray_img) #將圖片保存到當(dāng)前路徑下,參數(shù)為保存的文件名 gray.save('gray.jpg') cv2.imshow('Gray Image',gray_img) #如果想讓窗口持久停留,需要使用該函數(shù) cv2.waitKey(0)
第二種方法
PIL中的Image庫也自帶轉(zhuǎn)灰度圖像的方法,然后再用pyplot顯示在畫布上就行了。一共8行代碼,核心代碼就1行。
from PIL import Image from matplotlib import pyplot as plt color_img=Image.open('dataset3/beauty.jpg') gray_img=color_img.convert('L') plt.figure('beauty') plt.imshow(gray_img,cmap='gray') plt.axis('off') plt.show()
python 批量將圖片轉(zhuǎn)為灰度圖
from PIL import Image import os path = 'F:/QUEXIANJIANCESHIYAN/posdata' file_list = os.listdir(path) for file in file_list: I = Image.open(path+"/"+file) L = I.convert('L') L.save(path+"/"+file) #print(file)
總結(jié)
到此這篇關(guān)于利用Python將彩色圖像轉(zhuǎn)為灰度圖像的文章就介紹到這了,更多相關(guān)Python彩色圖像轉(zhuǎn)為灰度圖像內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)telnet服務(wù)器的方法
這篇文章主要介紹了Python實現(xiàn)telnet服務(wù)器的方法,涉及Python通過Telnet連接服務(wù)器的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-07-07Pytorch中如何調(diào)用forward()函數(shù)
這篇文章主要介紹了Pytorch中如何調(diào)用forward()函數(shù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02Python機器學(xué)習(xí)入門(三)之Python數(shù)據(jù)準(zhǔn)備
這篇文章主要介紹了Python機器學(xué)習(xí)入門知識,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-08-08