📜  plt.imshow grayscale - Python (1)

📅  最后修改于: 2023-12-03 15:03:47.859000             🧑  作者: Mango

以'plt.imshow grayscale - Python '作主题的介绍

概述

在Python的matplotlib库中,有一个函数plt.imshow()可以用来显示图片。该函数支持多种颜色空间的图片显示,并且可以将图片保存为多种格式。其中,plt.imshow()配合cmap参数可以很方便地将彩色图片转换为灰度图片显示。

使用方法

使用plt.imshow()函数将一个图片显示出来,很简单,只需要传入图片数组即可:

import matplotlib.pyplot as plt
import numpy as np

img = np.random.rand(512, 512)  # 随机生成一张512x512的图片
plt.imshow(img)
plt.show()

上述代码将生成一张随机的灰度图片并显示出来。

如果想要将一张彩色图片转换为灰度图片显示,只需要在plt.imshow()函数中使用gray colormap即可:

import matplotlib.pyplot as plt
from skimage import io, color

img_color = io.imread('lena.tiff')  # 读取彩色图片
img_gray = color.rgb2gray(img_color)  # 将彩色图片转换为灰度图片

plt.imshow(img_gray, cmap='gray')  # 使用gray colormap
plt.show()

上述代码将读取一张彩色lena图片,将其转换为灰度图片并使用gray colormap显示。

可选参数

plt.imshow函数还有很多可选参数,比较常用的有:

  • cmap: colormap,用来将图片转换为不同的颜色空间,常用的有'gray'、'hot'、'cool'等等。默认值是'viridis'。
  • vmin: 设置数据最小值。
  • vmax: 设置数据最大值。
  • interpolation: 图片插值方法,常用的有'nearest'、'bilinear'、'bicubic'、'spline16'等等。默认值是'None'。
  • alpha: 图片透明度。
结语

plt.imshow()可以很方便地将彩色图片转换为灰度图片显示,使用起来很简单。但是,在实际应用中,我们可能需要对图片进行一些处理和调整,比如裁剪、缩放和旋转等等。此时,我们可以使用一些图像处理库,如Pillow、OpenCV和scikit-image等。