使用Numpy将图像作为数组添加到更大的数组中

Mrspiky4

我正在尝试使用Numpy创建图像数组,以将其馈入图像分类神经网络。当我将图像放入数组时,它具有3个尺寸,但是当我使用np.append将其附加到所有图像的数组中时,形状为631800003。为什么会发生这种情况,我该如何解决?还是应该以其他方式加载图像?

这是我的变量定义单元格的代码:

normal = np.array([])
normalSet = np.array([])
badSet = np.array([])

Labels = np.array([])
Training_data = np.array([])
validationSet = []

process_data = True
ramCheck = 0

和图像加载:

if process_data:

    for image in os.listdir('train/NORMAL/'):

        normal = imread('train/NORMAL/'+image)        
        normalSet = np.append(normal, normalSet)
        Labels = np.append(Labels, 0)

        validationSet.append(normal)

    for image in os.listdir('train/PNEUMONIA/'):

        bad = imread('train/PNEUMONIA/'+image)
        badSet = np.append(badSet, bad)
        Labels = np.append(Labels, 1)

        validationSet.append(bad)

    print("done!")

    Training_Data = np.append(badSet, normalSet)

    np.save("TrainingData.npy", Training_data)
    np.save("TrainingLabels.npy", Labels)

else:
    Training_data = np.load("TrainingData.npy")
    Labels = np.load("TrainingLabels.npy")

易卜拉欣·谢里夫·亚希亚

您可以比将列表更改为一个numpy数组更容易地追加到列表中,该数组具有将其馈送到神经网络所需的正确尺寸。

normalSet = []
labels = []

for image in os.listdir('train/NORMAL/'):

    normal = imread('train/NORMAL/'+ image)

    normalSet.append(normal)
    validationSet.append(normal)
    labels.append(0)

normalSet = np.array(normalSet)
labels = np.array(labels)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章