plt.imsave的用法
时间: 2023-12-20 20:05:28 浏览: 30
`plt.imsave`是Matplotlib库中的一个函数,用于将numpy数组或PIL图像保存为图像文件。
以下是`plt.imsave`的用法:
```python
import matplotlib.pyplot as plt
# 读取图像
img = plt.imread('example.jpg')
# 将图像保存为PNG格式
plt.imsave('example.png', img)
# 将图像保存为JPG格式,设置质量为90
plt.imsave('example.jpg', img, quality=90)
```
`plt.imsave`的第一个参数是保存的文件路径和文件名,第二个参数是要保存的图像数据,可以是numpy数组或PIL图像对象。
`plt.imsave`还支持一些可选参数,包括:
- `format`:保存的图像格式,默认为None,根据文件名的后缀判断。也可以设置为'png'、'jpg'等格式。
- `dpi`:设置图像的分辨率,默认为'figure',表示与当前图像的dpi相同。
- `quality`:仅在保存为JPG格式时有效,表示图像的压缩质量,取值范围为0-100,默认为95。
如果要保存的图像数据是浮点类型的数组,则需要将像素值范围限定在0-1之间,例如:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建一张随机的灰度图像
img = np.random.rand(256, 256)
# 将图像保存为PNG格式
plt.imsave('random_gray.png', img, cmap='gray', vmin=0, vmax=1)
```
在这个例子中,我们创建了一张256x256的随机灰度图像,像素值范围在0-1之间。使用`cmap='gray'`参数可以将图像显示为灰度图像,`vmin`和`vmax`参数用于设置像素值范围,保证像素值在0-1之间。
然后调用`plt.imsave`函数将图像保存为PNG格式,保存的文件名为'random_gray.png'。
阅读全文