漳州網站優(yōu)化下載百度導航app
Python學習筆記第七十二天
- Matplotlib imread
- 讀取圖像數據
- 修改圖像
- 裁剪圖像
- 圖像顏色
- 后記
Matplotlib imread
imread() 方法是 Matplotlib 庫中的一個函數,用于從圖像文件中讀取圖像數據。
imread() 方法返回一個 numpy.ndarray 對象,其形狀是 (nrows, ncols, nchannels),表示讀取的圖像的行數、列數和通道數:
如果圖像是灰度圖像,則 nchannels 為 1。
如果是彩色圖像,則 nchannels 為 3 或 4,分別表示紅、綠、藍三個顏色通道和一個 alpha 通道。
imread() 方法的語法如下:
matplotlib.pyplot.imread(fname, format=None)
參數說明:
- fname:指定了要讀取的圖像文件的文件名或文件路徑,可以是相對路徑或絕對路徑。
- format :參數指定了圖像文件的格式,如果不指定,則默認根據文件后綴名來自動識別格式。
讀取圖像數據
以下實例演示了如何使用 imread 函數從一張圖像文件中讀取圖像數據,并將其顯示出來
# 實例 1
import matplotlib.pyplot as plt# 讀取圖像文件 圖片任意即可,這里拿地圖舉例
img = plt.imread('map.jpeg')# 顯示圖像
plt.imshow(img)
plt.show()
以上實例中我們首先使用 imread() 方法從名為 map.jpeg 的圖像文件中讀取了圖像數據,并將其存儲在 img 變量中。
然后我們使用imshow() 方法顯示了這張圖像。
注意:我們在顯示圖像時沒有指定顏色映射,這是因為 imread() 方法已經將圖像數據按照正確的顏色映射轉換成了 RGB 格式,因此我們可以直接使用默認的顏色映射來顯示圖像。
修改圖像
我們可以通過更改 numpy 數組來修改圖像。
例如,如果我們將數組乘以一個數 0≤≤1,我們將圖像變暗
# 實例 2
import matplotlib.pyplot as plt# 讀取圖像文件 圖片任意即可,這里拿老虎舉例
img_array = plt.imread('tiger.jpeg')
tiger = img_array/255
#print(tiger)# 顯示圖像
plt.figure(figsize=(10,6))for i in range(1,5):plt.subplot(2,2,i)x = 1 - 0.2*(i-1)plt.axis('off') #hide coordinate axesplt.title('x={:.1f}'.format(x))plt.imshow(tiger*x)plt.show()
裁剪圖像
以下實例用于裁剪圖像
# 實例 3
import matplotlib.pyplot as plt# 讀取圖像文件
img_array = plt.imread('tiger.jpeg')
tiger = img_array/255
#print(tiger)# 顯示圖像
plt.figure(figsize=(6,6))
plt.imshow(tiger[:300,100:400,:])
plt.axis('off')
plt.show()
圖像顏色
如果我們將 RGB 顏色的綠色和藍色坐標的數組元素設置為 0,我們將得到紅色的圖像:
# 實例 3
import matplotlib.pyplot as plt# 讀取圖像文件
img_array = plt.imread('tiger.jpeg')
tiger = img_array/255
#print(tiger)# 顯示圖像
red_tiger = tiger.copy()red_tiger[:, :,[1,2]] = 0plt.figure(figsize=(10,10))
plt.imshow(red_tiger)
plt.axis('off')
plt.show()
后記
今天學習的是Python Matplotlib imread學會了嗎。 今天學習內容總結一下: