首頁  >  文章  >  後端開發  >  如何在Matplotlib中正確顯示灰階影像?

如何在Matplotlib中正確顯示灰階影像?

Barbara Streisand
Barbara Streisand原創
2024-10-31 04:41:01768瀏覽

How to Display Grayscale Images Correctly in Matplotlib?

將影像顯示為灰階

許多影像處理任務通常需要灰階影像以便於處理。當影像意外渲染為色彩圖時,使用 Matplotlib 的 imshow() 函數顯示灰階影像可能會很困難。

要解決此問題並正確顯示灰階影像,請按照以下步驟操作:

  1. 匯入必要的庫:載入重要的函式庫,例如用於影像處理的NumPy、用於繪圖的Matplotlib 和用於影像操作的PIL。
  2. 讀取影像並將其轉換為灰階: 使用PIL的Image.open()函數從檔案中讀取影像。隨後,使用convert("L")將影像轉換為灰階。
  3. 將影像轉換為矩陣:使用SciPy的scipy.misc.fromimage()將灰階影像轉換為數值矩陣。
  4. 指定灰階顯示:使用 matplotlib.pyplot.imshow() 顯示矩陣時,明確指定顏色圖為「灰色」以灰階渲染影像。調整“vmin”和“vmax”參數來設定灰階強度的值範圍。
<code class="python">import numpy as np
import matplotlib.pyplot as plt
from PIL import Image

fname = 'image.png'
image = Image.open(fname).convert("L")
arr = np.asarray(image)
plt.imshow(arr, cmap='gray', vmin=0, vmax=255)
plt.show()</code>

或者,要顯示反灰度,只需將 cmap 參數變更為「gray_r」即可。

以上是如何在Matplotlib中正確顯示灰階影像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn