- Scikit-Image 教程
- Scikit-Image 简介
- Scikit-Image 图像处理
- Scikit-Image NumPy图像
- Scikit-Image 图像数据类型
- Scikit-Image 使用插件
- Scikit-Image 图像处理
- Scikit-Image 读取图像
- Scikit-Image 写入图像
- Scikit-Image 显示图像
- Scikit-Image 图像集合
- Scikit-Image 图像堆栈
- Scikit-Image 多图像
Scikit-Image 读取图像
读取图像是在执行诸如裁剪、调整大小、旋转或使用图像处理工具应用滤镜等操作时的基本步骤。读取图像的过程包括捕获图像文件中的像素值和元数据,并将其表示为合适的 数据结构,例如 NumPy 数组或矩阵。
在 Scikit-image 库中,io 模块提供了一个 imread() 函数,用于将图像文件加载到内存中作为 NumPy 数组。一旦图像作为 NumPy 数组加载到内存中,我们就可以访问 Scikit-image 中提供的各种图像处理函数来执行诸如滤波、分割、特征提取等任务。
imread() 方法
Scikit-image 中的 **io.imread()** 方法能够读取各种格式的图像,包括 JPEG、PNG、TIFF、BMP 等。该函数内部根据具体的图像格式使用不同的库,例如 imageio、PIL 或 tifffile。
语法
以下是此方法的语法和参数:
skimage.io.imread(fname, as_gray=False, plugin=None, **plugin_args)
- **Fname** - 表示图像文件名或路径或 URL 的字符串。
- **as_gray (可选)** - 如果设置为 True,则将彩色图像转换为表示为 64 位浮点数的灰度图像。已经是灰度格式的图像不会被转换。
- **plugin (可选)** - 指定用于读取图像的插件的字符串。如果未提供 plugin 参数,则该函数将自动尝试不同的插件,从 imageio 开始,直到找到合适的插件。但是,如果文件名 (fname) 具有“.tiff”扩展名,则默认情况下将使用 tifffile 插件。
- **plugin_args (可选)** - 传递给指定插件的其他关键字参数。
返回值
该方法返回一个表示图像的 NumPy 数组。该数组包含像素值,其形状对应于图像的尺寸。图像的颜色带或通道存储在数组的第三维中。
例如,灰度图像的尺寸为 **MxN**,RGB 图像的尺寸为 **MxNx3**,RGBA 图像的尺寸为 **MxNx4**。
示例 1
以下示例演示如何使用文件名加载图像。
import skimage from skimage import io # Read an image image = io.imread('Images/logo.png') # Display image properties from the image array print('The following are the properties of the loaded image:') print("Image shape:", image.shape) print("Image data type:", image.dtype) print("Number of color channels:", image.shape[2])
输入图像
输出
The following are the properties of the loaded image: Image shape: (225, 225, 4) Image data type: uint8 Number of color channels: 4
示例 2
以下示例演示如何使用图像 URL 加载图像。
import skimage from skimage import io # Read an image image = io.imread('https://tutorialspoint.com/images/logo.png') # Display image properties from the image array print('The following are the properties of the loaded image:') print("Image shape:", image.shape) print("Image data type:", image.dtype) print("Number of color channels:", image.shape[2])
输入图像
输出
The following are the properties of the loaded image: Image shape: (140, 568, 3) Image data type: uint8 Number of color channels: 3
示例 3
以下示例演示如何通过使用 imread() 方法的 as_gray 参数将彩色图像转换为灰度图像。
import skimage from skimage import io # Read an image image = io.imread('https://tutorialspoint.com/images/logo.png', as_gray=True) # Display image properties from the image array print('The following are the properties of the loaded image:') print("Image shape:", image.shape) print("Image data type:", image.dtype)
输出
The following are the properties of the loaded image: Image shape: (140, 568) Image data type: float64
广告