我有一堆图像要存储到数组中。
问题在于我的所有图像尺寸都不同,我不想一定要改变它们的尺寸,因为有些图像会是正方形而有些则不是。
我尝试使用np.concatenate
,但网上有人说最好构建一个零矩阵并填充它。
然而,使用
image = misc.imread(filename)
来自scipy库的。图像作为三维数组返回。如果我想将所有图像存储在其中,我应该如何构建我的numpy ndarray?
答案 0 :(得分:1)
如果我正确理解了这个问题,你会尝试存储一堆不同大小的图像,每个图像都存储为单独的numpy数组。如果您的图像是灰度级(意味着2D,而不是RGB,它是3D - R,G和B的通道),您可以将图像存储为第三维,用0填充缺少的像素。但最好的方法是使用一个python列表(或者可能是tupple)来存储你的numpy数组图像列表。这样他们可以是不同的大小。即:img_list = img1,img2,img3等
答案 1 :(得分:0)
将它们存储在列表中可能更容易,列表将它们存储为array()对象和大小无关紧要,当您对它们进行操作时,只需引用列表元素。