📅  最后修改于: 2023-12-03 15:03:47.859000             🧑  作者: Mango
在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函数还有很多可选参数,比较常用的有:
plt.imshow()可以很方便地将彩色图片转换为灰度图片显示,使用起来很简单。但是,在实际应用中,我们可能需要对图片进行一些处理和调整,比如裁剪、缩放和旋转等等。此时,我们可以使用一些图像处理库,如Pillow、OpenCV和scikit-image等。