詳解python如何通過numpy數(shù)組處理圖像
如圖,以該貓咪圖片為例(忽略水?。⒃撐募麨閏at.jpg,并對(duì)其展開以下操作。

使用PIL庫(kù)進(jìn)行灰度處理
PIL庫(kù)適合圖像歸檔和圖像批量處理,你可以使用它建立縮略圖,轉(zhuǎn)換格式,打印圖片等。
現(xiàn)在的版本可以識(shí)別和讀取大量的圖片格式,寫入常用的轉(zhuǎn)換和表示格式
它支持多個(gè)其他工具包的展示,提供了show()方法,可以保存圖像到磁盤并調(diào)用外顯示。它將圖像保存到磁盤,并調(diào)用外部顯示工具
并且包含了基本的圖像處理功能,包括點(diǎn)操作,使用內(nèi)置卷積內(nèi)核過濾,色彩空間轉(zhuǎn)換。
支持更改圖像大小、旋轉(zhuǎn)、任意仿射變換
from PIL import Image
import numpy as np
# 讀取圖像,并轉(zhuǎn)化為數(shù)組
im = np.array(Image.open("cat.jpg"))
# 灰度處理公式
gray_narry = np.array([0.299, 0.587, 0.114])
x = np.dot(im, gray_narry)
# 數(shù)組轉(zhuǎn)圖片
gray_cat = Image.fromarray(x.astype('uint8'))
# 保存圖片
gray_cat.save('gray_cat.jpg')
# 展示查看
gray_cat.show()處理成功!

旋轉(zhuǎn)180度
所謂旋轉(zhuǎn)操作,即 將三維數(shù)組中的數(shù)據(jù),以每一行(三個(gè))為單位 倒序排列。
from PIL import Image
import numpy as np
# 讀取圖像,并轉(zhuǎn)化為數(shù)組
im = np.array(Image.open("cat.jpg"))
# 旋轉(zhuǎn)
x = im[::-1]
# 數(shù)組轉(zhuǎn)圖片
cat2 = Image.fromarray(x.astype('uint8'))
# 保存圖片
cat2.save('cat2.jpg')
# 展示查看
cat2.show()程序執(zhí)行結(jié)果:

使用matplotlib庫(kù)完成灰度處理
import numpy as np
import matplotlib.pyplot as plt
n1 = plt.imread("cat.jpg") # 讀取了圖片,轉(zhuǎn)化為數(shù)組,三維的
plt.imshow(n1)
n2 = np.array([0.299, 0.587, 0.114])
x = np.dot(n1, n2)
plt.imshow(x, cmap="gray")
plt.show()
到此這篇關(guān)于詳解python如何通過numpy數(shù)組處理圖像的文章就介紹到這了,更多相關(guān)python 處理圖像內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python數(shù)據(jù)分析numpy數(shù)組的3種創(chuàng)建方式
- python中的Numpy二維數(shù)組遍歷與二維數(shù)組切片后遍歷效率比較
- Python中numpy數(shù)組的計(jì)算與轉(zhuǎn)置詳解
- python 將numpy維度不同的數(shù)組相加相乘操作
- Python 用NumPy創(chuàng)建二維數(shù)組的案例
- Python數(shù)據(jù)分析Numpy中常用相關(guān)性函數(shù)
- Python數(shù)據(jù)分析之NumPy常用函數(shù)使用詳解
- python數(shù)據(jù)分析Numpy庫(kù)的常用操作
- Python?Numpy布爾數(shù)組在數(shù)據(jù)分析中的應(yīng)用小結(jié)
相關(guān)文章
淺談Pytorch 定義的網(wǎng)絡(luò)結(jié)構(gòu)層能否重復(fù)使用
這篇文章主要介紹了Pytorch定義的網(wǎng)絡(luò)結(jié)構(gòu)層能否重復(fù)使用的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06
python之生產(chǎn)者消費(fèi)者模型實(shí)現(xiàn)詳解
這篇文章主要介紹了python之生產(chǎn)者消費(fèi)者模型實(shí)現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
2025最新版Python3.13.1安裝使用指南(超詳細(xì))
Python編程語言自誕生以來,已經(jīng)成為全球最受歡迎的編程語言之一,它簡(jiǎn)單易學(xué)易用,以標(biāo)準(zhǔn)庫(kù)和功能強(qiáng)大且廣泛外 掛的擴(kuò)展庫(kù),為用戶提供包羅萬象、強(qiáng)大全面的功能,此次給大家介紹了2025年最新版Python 3.13.1安裝使用指南全面更新,需要的朋友可以參考下2025-03-03
python簡(jiǎn)單實(shí)現(xiàn)操作Mysql數(shù)據(jù)庫(kù)
本文給大家分享的是在python中使用webpy實(shí)現(xiàn)簡(jiǎn)單的數(shù)據(jù)庫(kù)增刪改查操作的方法,非常的簡(jiǎn)單,有需要的小伙伴可以參考下2018-01-01
python實(shí)現(xiàn)可下載音樂的音樂播放器
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)可下載音樂的音樂播放器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02
跟老齊學(xué)Python之用while來循環(huán)
while,翻譯成中文是“當(dāng)...的時(shí)候”,這個(gè)單詞在英語中,常常用來做為時(shí)間狀語,while ... someone do somthing,這種類型的說法是有的。2014-10-10

