在 CNN 实现的 numpy 数组中堆叠多个 RGB 图像

Stacking multiple RGB images in numpy array for CNN implementation

我有 1000 张 RGB 图像,我想从当前目录中读取它们并将其存储在形状为 (1000,3,32,32) 的 numpy 数组中,以便在 CNN 中使用。

出于这个原因,我阅读了示例图像,将其大小调整为 32 * 32。然后将其附加到数组 'a',该数组是我使用零作为形状 (1000,3,32, 32).但是我收到一个名为“'numpy.ndarray' 对象没有属性 'append'”的错误。如何解决?如果它需要任何不同的方法,我也愿意接受。

import matplotlib.pyplot as plt

import numpy as np

reshapedimage =cv2.resize(cv2.imread("0 (1).png", 1), (32, 32))


a = np.zeros((1000,3,32,32))

a.append(reshapedimage)

我想你是这个意思:

import numpy as np

# Create dummy image-like thing
w, h = 32, 32
im=np.arange(h*w*3).reshape((3,h,w))                                                       

# Create empty list
stack=[]                                                                                   

# Append the image to the stack 5 times
stack.append(im)
stack.append(im)
stack.append(im)
stack.append(im)
stack.append(im)                                                                          

# Make Numpy array and check size                                                        
v = np.array(stack)                                                                        
print(v.shape)                                                                                    

输出

(5, 3, 32, 32)