首頁  >  文章  >  後端開發  >  如何使用 Matplotlib.pyplot.imshow() 正確顯示灰階影像?

如何使用 Matplotlib.pyplot.imshow() 正確顯示灰階影像?

Barbara Streisand
Barbara Streisand原創
2024-11-04 06:44:29165瀏覽

How do I Display a Grayscale Image Correctly with Matplotlib.pyplot.imshow()?

使用Matplotlib 實作灰階影像顯示

嘗試使用matplotlib.pyplot.imshow() 顯示灰階影像時,使用者可能會遇到困難導致影像顯示為色彩圖。要解決這個問題,了解灰階影像轉換的正確步驟至關重要。

在本例中,使用者已載入影像並使用 PIL 的 Image.open().convert("L “) 功能。但是,隨後使用 scipy.misc.fromimage() 轉換為矩陣引入了不必要的步驟,並可能損壞影像的灰階表示。

要正確顯示灰階影像,請依照下列步驟操作:

  1. 匯入必要的函式庫:用於數值運算的 numpy 和用於影像繪製的 matplotlib.pyplot。
  2. 使用 PIL 的 Image.open() 載入映像。
  3. 使用下列指令將影像轉換為灰階Convert("L").
  4. 使用 np.asarray() 將灰階影像轉換為 NumPy 陣列。
  5. 使用 matplotlib.pyplot.imshow() 顯示灰階影像。確保指定 cmap='gray' 以強制執行灰階表示。

以下是範例程式碼:

<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.pyplot.imshow() 正確顯示灰階影像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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