1

以下内容将 png 读入数组:

import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import numpy as np

img=mpimg.imread('example.png')

结果是数组img,例如 1024 x 1024 元组数组(参见http://matplotlib.org/1.3.1/users/image_tutorial.html):

我如何强制执行,我的结果是 nx n 数组(元组)而不是 1024 x 1024 数组(n<1024)?我需要明确定义该数组的维度(例如设置 400x400)。

提前致谢

4

1 回答 1

2

我建议安装pillow(最好使用Anaconda)。它使图像处理变得容易 - 比将图像视为原始图像更容易ndarray

安装pillow后,这个答案应该会有所帮助:如何使用 PIL 调整图像大小并保持其纵横比?

如果您真的想将其保留为数组,则可以使用scipy.misc.imresize.

编辑添加实际工作的东西,以防其他人错过它:

import scipy.misc
img_rescaled = scipy.misc.imresize(img, size=[400,400], interp='bilinear')
于 2015-12-16T00:31:50.577 回答