Scikit-Image 影像顯示



顯示或視覺化影像在影像處理和計算機視覺任務中起著至關重要的作用。在執行影像處理操作(例如裁剪、調整大小、旋轉或應用各種濾鏡)時,需要視覺化影像。

顯示影像是指在螢幕或其他輸出裝置上視覺化或呈現數字影像的過程。它允許我們以視覺化的格式檢視和解釋影像內容。

在 scikit-image 庫中,io 模組提供了諸如imshow() 和 show()之類的函式,用於在螢幕上顯示影像。這些函式對於顯示影像處理操作的結果非常有用。

使用 io.imshow() 方法

skimage.io.imshow() 方法用於顯示影像。它開啟一個視窗,並使用指定的或預設的影像外掛顯示影像。以下是此方法的語法和引數:

skimage.io.imshow(arr, plugin=None, **plugin_args)

以下是此函式的引數:

  • arr − 一個ndarray 或表示影像資料或影像檔名字串。
  • plugin − 指定要使用的外掛名稱的字串。如果沒有提供,該函式將嘗試從可用選項中查詢合適的外掛,從“imageio”開始。
  • **plugin_args − 傳遞給所選外掛的其他關鍵字引數。

示例

以下示例將使用預設影像外掛顯示影像。

from skimage import io

# Displaying image using the image name
io.imshow('Images/logo-w.png')

輸出

執行以上程式碼將得到以下結果:

<matplotlib.image.AxesImage at 0x20980099d30 >
Dispaly Images

使用 io.show() 方法

skimage.io.show() 函式用於在 scikit-image 中顯示掛起的影像。它啟動當前 GUI 外掛的事件迴圈,並顯示所有已使用 imshow() 函式排隊顯示的影像。這在處理非互動式指令碼時尤其有用。以下是此方法的語法:

skimage.io.show()

注意,如果您在互動式環境(例如 Jupyter Notebook 或互動式 Python shell)中工作,您可以簡單地使用 imshow() 來顯示影像。但是,如果您正在執行非互動式指令碼,最好在末尾包含 show() 以確保在指令碼終止之前顯示所有影像。

示例 1

以下示例將使用 imshow() 和 show() 方法顯示影像。

from skimage import io

# Read the image from an URL
image = io.imread('https://tutorialspoint.tw/images/logo.png') 
# Display an image
io.imshow(image)
io.show()

輸出

執行以上程式碼將得到以下結果:

Dispaly Images

示例 2

以下示例將使用 imshow() 和 show() 方法顯示兩張影像。

from skimage import io
import numpy as np
import time

image1 = np.random.randint(0, 256, size=(50, 50, 3), dtype=np.uint8)
image2 = np.random.randint(0, 256, size=(50, 50), dtype=np.uint8)
# Displaying the image1
io.imshow(image1)
io.show()
# Displaying the image2
io.imshow(image2)
io.show()

輸出

以上程式生成以下輸出:

Dispaly Images

以下是第二張影像:

Dispaly Images
廣告
© . All rights reserved.