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.com/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
广告