能否放大呢
时间: 2023-07-31 13:05:19 浏览: 80
实现图片放大
将一个(28,28)的数组放大到60*60的图像后,图像中的数字可能会变得模糊或失真。但是,你可以使用PIL库中的Image类的resize()方法来放大或缩小图像。具体步骤如下:
1. 首先导入PIL库:`from PIL import Image`
2. 创建一个28*28的随机数组或者从文件中读取,例如:`array = np.random.rand(28, 28)`
3. 将28*28的数组复制到60*60的图像中央:`img.paste(array, (16, 16))`。其中,(16, 16)是指要将数组放置在60*60图像的中央,因为60-28=32,32/2=16。
4. 使用resize()方法将图像放大到任意大小,例如放大到200*200像素:`img = img.resize((200, 200), resample=Image.BILINEAR)`。其中,Image.BILINEAR是指使用双线性插值算法进行放大,可以得到比较平滑的图像。
5. 保存图像:`img.save('image.png')`。这里的'image.png'是保存图像的文件名,可以根据需要更改。
完整代码如下:
```python
from PIL import Image
import numpy as np
# 创建一个28*28的随机数组
array = np.random.rand(28, 28)
# 创建一个60*60像素的空白图像
img = Image.new('RGB', (60, 60), color = 'white')
# 将28*28的数组复制到60*60的图像中央
img.paste(array, (16, 16))
# 将图像放大到200*200像素
img = img.resize((200, 200), resample=Image.BILINEAR)
# 保存图像
img.save('image.png')
```
运行完这段代码后,当前目录下会生成一个名为'image.png'的200*200像素的图像文件。
阅读全文